diff options
| author | Ben Boeckel <MathStuf@gmail.com> | 2009-04-01 01:28:16 -0400 |
|---|---|---|
| committer | Ben Boeckel <MathStuf@gmail.com> | 2009-04-01 01:28:16 -0400 |
| commit | ec8965ffdfc9a1c7a9411c37add4f4bef7f33786 (patch) | |
| tree | f6f9f97f13adf9f0c323f769fdccbe3eee7cd681 | |
| parent | 15e4f5c1cad7572e06d1f485640c657b29556747 (diff) | |
Connect the zoom widget to the actual zoom
| -rw-r--r-- | sigmodr/widgets/gui/mapeditor.ui | 3 | ||||
| -rw-r--r-- | sigmodr/widgets/mapeditor/MapEditor.cpp | 10 | ||||
| -rw-r--r-- | sigmodr/widgets/mapeditor/MapEditor.h | 3 |
3 files changed, 13 insertions, 3 deletions
diff --git a/sigmodr/widgets/gui/mapeditor.ui b/sigmodr/widgets/gui/mapeditor.ui index 66dfd6e2..551e84c9 100644 --- a/sigmodr/widgets/gui/mapeditor.ui +++ b/sigmodr/widgets/gui/mapeditor.ui @@ -93,9 +93,6 @@ <property name="label"> <string>Zoom</string> </property> - <property name="value"> - <double>1</double> - </property> </widget> </item> <item row="4" column="4"> diff --git a/sigmodr/widgets/mapeditor/MapEditor.cpp b/sigmodr/widgets/mapeditor/MapEditor.cpp index d6098b72..d80459d9 100644 --- a/sigmodr/widgets/mapeditor/MapEditor.cpp +++ b/sigmodr/widgets/mapeditor/MapEditor.cpp @@ -28,6 +28,7 @@ // KDE includes #include <KAction> #include <KIcon> +#include <KDoubleNumInput> #include <KIntNumInput> #include <KMenu> #include <KPushButton> @@ -57,6 +58,7 @@ MapEditor::MapEditor(Map* map, QWidget* parent) : ui_view = formWidget->findChild<QGraphicsView*>("varView"); ui_width = formWidget->findChild<KIntNumInput*>("varWidth"); ui_gridSize = formWidget->findChild<KIntNumInput*>("varGridSize"); + ui_zoom = formWidget->findChild<KDoubleNumInput*>("varZoom"); ui_height = formWidget->findChild<KIntNumInput*>("varHeight"); ui_buttonAdd = formWidget->findChild<KPushButton*>("buttonAdd"); ui_buttonRemove = formWidget->findChild<KPushButton*>("buttonRemove"); @@ -69,6 +71,7 @@ MapEditor::MapEditor(Map* map, QWidget* parent) : ui_showTrainers = formWidget->findChild<QCheckBox*>("varShowTrainers"); ui_showWarps = formWidget->findChild<QCheckBox*>("varShowWarps"); ui_drawMask = formWidget->findChild<QCheckBox*>("varDrawMask"); + ui_zoom->setRange(.1, 10, .1); ui_buttonAdd->setIcon(KIcon("list-add")); ui_buttonRemove->setIcon(KIcon("list-remove")); ui_buttonTop->setIcon(KIcon("arrow-up-double")); @@ -83,6 +86,7 @@ MapEditor::MapEditor(Map* map, QWidget* parent) : connect(ui_width, SIGNAL(valueChanged(int)), this, SLOT(setMapWidth(int))); connect(ui_height, SIGNAL(valueChanged(int)), this, SLOT(setMapHeight(int))); connect(ui_gridSize, SIGNAL(valueChanged(int)), this, SLOT(setGridSize(int))); + connect(ui_zoom, SIGNAL(valueChanged(double)), this, SLOT(setZoom(double))); reset(); QVBoxLayout* layout = new QVBoxLayout; layout->addWidget(formWidget); @@ -107,6 +111,7 @@ void MapEditor::reset() ui_width->setValue(m_map->width()); ui_height->setValue(m_map->height()); m_rect->setGridSize(ui_gridSize->value()); + ui_zoom->setValue(1); ui_drawMask->setChecked(false); makeConnections(); } @@ -128,6 +133,11 @@ void MapEditor::setGridSize(const int gridSize) m_rect->setGridSize(gridSize); } +void MapEditor::setZoom(const double zoom) +{ + ui_view->setMatrix(QMatrix().scale(zoom, zoom)); +} + void MapEditor::makeConnections() { connect(m_scene, SIGNAL(changed()), this, SIGNAL(changed())); diff --git a/sigmodr/widgets/mapeditor/MapEditor.h b/sigmodr/widgets/mapeditor/MapEditor.h index 436ea501..fa5d7322 100644 --- a/sigmodr/widgets/mapeditor/MapEditor.h +++ b/sigmodr/widgets/mapeditor/MapEditor.h @@ -28,6 +28,7 @@ class QCheckBox; class QGraphicsView; class KComboBox; +class KDoubleNumInput; class KIntNumInput; class KPushButton; namespace Sigmod @@ -64,6 +65,7 @@ class SIGMODRWIDGETS_NO_EXPORT MapEditor : public QWidget void setMapHeight(const int height); void setGridSize(const int gridSize); + void setZoom(const double zoom); protected: void makeConnections(); private: @@ -74,6 +76,7 @@ class SIGMODRWIDGETS_NO_EXPORT MapEditor : public QWidget KIntNumInput* ui_width; KIntNumInput* ui_height; KIntNumInput* ui_gridSize; + KDoubleNumInput* ui_zoom; KPushButton* ui_buttonAdd; KPushButton* ui_buttonRemove; KPushButton* ui_buttonTop; |
