diff options
Diffstat (limited to 'utils/themeeditor/gui/skinviewer.cpp')
-rw-r--r-- | utils/themeeditor/gui/skinviewer.cpp | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/utils/themeeditor/gui/skinviewer.cpp b/utils/themeeditor/gui/skinviewer.cpp index 1d5c84c519..f1f3af9c8c 100644 --- a/utils/themeeditor/gui/skinviewer.cpp +++ b/utils/themeeditor/gui/skinviewer.cpp | |||
@@ -54,9 +54,38 @@ void SkinViewer::changeEvent(QEvent *e) | |||
54 | } | 54 | } |
55 | } | 55 | } |
56 | 56 | ||
57 | void SkinViewer::setScene(QGraphicsScene *scene) | 57 | void SkinViewer::connectSkin(SkinDocument *skin) |
58 | { | 58 | { |
59 | ui->viewer->setScene(scene); | 59 | if(skin) |
60 | { | ||
61 | ui->viewer->setScene(skin->scene()); | ||
62 | QObject::connect(skin, SIGNAL(antiSync(bool)), | ||
63 | ui->codeGenButton, SLOT(setEnabled(bool))); | ||
64 | QObject::connect(skin, SIGNAL(antiSync(bool)), | ||
65 | ui->codeUndoButton, SLOT(setEnabled(bool))); | ||
66 | |||
67 | QObject::connect(ui->codeGenButton, SIGNAL(pressed()), | ||
68 | skin, SLOT(genCode())); | ||
69 | QObject::connect(ui->codeUndoButton, SIGNAL(pressed()), | ||
70 | skin, SLOT(parseCode())); | ||
71 | |||
72 | doc = skin; | ||
73 | } | ||
74 | else | ||
75 | { | ||
76 | ui->viewer->setScene(0); | ||
77 | |||
78 | doc = 0; | ||
79 | } | ||
80 | |||
81 | bool antiSync; | ||
82 | if(skin && !skin->isSynced()) | ||
83 | antiSync = true; | ||
84 | else | ||
85 | antiSync = false; | ||
86 | |||
87 | ui->codeGenButton->setEnabled(antiSync); | ||
88 | ui->codeUndoButton->setEnabled(antiSync); | ||
60 | } | 89 | } |
61 | 90 | ||
62 | void SkinViewer::zoomIn() | 91 | void SkinViewer::zoomIn() |