BView: add methods for affine translation/scaling/rotation

* BView::TranslateBy(), BView::ScaleBy() and BView::RotateBy()
  allow to conveniently modify the current affine transformation.
  This makes it unnecessary to first read the current transform,
  modify it, and then set it again.
  Uses the new Pre...() methods of BAffineTransform.

* Also, remove setting the transform "through" to the BView even
  while recording a BPicture, as this now results in transforms
  being applied more than once.
This commit is contained in:
Julian Harnath
2015-11-10 23:34:08 +01:00
parent 4721524cb5
commit 25dbf74b8e
13 changed files with 301 additions and 4 deletions
+4
View File
@@ -343,6 +343,10 @@ enum {
AS_VIEW_SET_TRANSFORM,
AS_VIEW_GET_TRANSFORM,
AS_VIEW_AFFINE_TRANSLATE,
AS_VIEW_AFFINE_SCALE,
AS_VIEW_AFFINE_ROTATE,
// Polygon filling rules
AS_VIEW_SET_FILL_RULE,
AS_VIEW_GET_FILL_RULE,