summaryrefslogtreecommitdiff
path: root/utils/themeeditor/graphics/rbalbumart.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'utils/themeeditor/graphics/rbalbumart.cpp')
-rw-r--r--utils/themeeditor/graphics/rbalbumart.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/utils/themeeditor/graphics/rbalbumart.cpp b/utils/themeeditor/graphics/rbalbumart.cpp
index 1dbe2855f8..40c6f05605 100644
--- a/utils/themeeditor/graphics/rbalbumart.cpp
+++ b/utils/themeeditor/graphics/rbalbumart.cpp
@@ -23,15 +23,19 @@
#include <QPainter>
+#include "parsetreenode.h"
+
RBAlbumArt::RBAlbumArt(QGraphicsItem *parent, int x, int y, int maxWidth,
- int maxHeight, int artWidth, int artHeight, char hAlign,
- char vAlign)
+ int maxHeight, int artWidth, int artHeight,
+ ParseTreeNode* node, char hAlign, char vAlign)
: RBMovable(parent), size(0, 0, maxWidth,
maxHeight),
artWidth(artWidth), artHeight(artHeight),
hAlign(hAlign), vAlign(vAlign),
- texture(":/render/albumart.png")
+ texture(":/render/albumart.png"), node(node)
{
+ setFlag(ItemSendsGeometryChanges, false);
+
setPos(x, y);
hide();
}
@@ -99,4 +103,11 @@ void RBAlbumArt::paint(QPainter *painter,
void RBAlbumArt::saveGeometry()
{
+ QPointF origin = pos();
+ QRectF bounds = boundingRect();
+
+ node->modParam(static_cast<int>(origin.x()), 0);
+ node->modParam(static_cast<int>(origin.y()), 1);
+ node->modParam(static_cast<int>(bounds.width()), 2);
+ node->modParam(static_cast<int>(bounds.height()), 3);
}