Am 04.03.2013 um 05:14 schrieb leavengood@xxxxxxxxx: > hrev45335 adds 1 changeset to branch 'master' > old head: dca92a6c75716c3572e1a37c8a96947c6c3188b3 > new head: f44a56ca9a15c0ec2f1fb8c778e30871888499a6 > overview: http://cgit.haiku-os.org/haiku/log/?qt=range&q=f44a56c+%5Edca92a6 > > ---------------------------------------------------------------------------- > > f44a56c: Add back moving the pen to origin in BControlLook arrow drawing. > > Removing this did not affect scrollbar arrow buttons, but made the > arrows disappear on the Deskbar. > > Clearly, BControlLook cannot be changed without extensive testing. Thanks for cleaning up some of these messy parts. As you found out yourself, changes in this code can have unintended side effects in other apps, so the status quo is always a bit of a work in progress towards more clean and sane code and there is always room for more cleanup... BShape has the completely unintuitive property of rendering at the current pen position. No other drawing call has this effect other than certain forms of DrawString(), DrawChar() and StrokeLine(). Directly comparable would be StrokeRect() and FillRect() which take BRects much in the same way as StrokeShape() and FillShape() take BShapes, yet only BShape uses the current pen position. Obviously we inherited that from BeOS. To be honest, I think the whole concept of the "current pen position" is completely useless. But there is lots of other stuff in the drawing API that deserves cleaning up. Best regards, -Stephan