summaryrefslogtreecommitdiffstats
path: root/sigmodr/widgets/MapUI.cpp
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2009-02-24 22:46:09 -0500
committerBen Boeckel <MathStuf@gmail.com>2009-02-24 22:46:09 -0500
commitf8d9605077a6ed100a915c064adab76da5d240a6 (patch)
treec9703c97f4093059068fb2eb6ad1afbfa285dd6f /sigmodr/widgets/MapUI.cpp
parent4acab35a099e9f6834432e7e89dee716c41549ba (diff)
Fixed up more widgets to load at runtime
Diffstat (limited to 'sigmodr/widgets/MapUI.cpp')
-rw-r--r--sigmodr/widgets/MapUI.cpp45
1 files changed, 27 insertions, 18 deletions
diff --git a/sigmodr/widgets/MapUI.cpp b/sigmodr/widgets/MapUI.cpp
index 799c4da8..d78bce10 100644
--- a/sigmodr/widgets/MapUI.cpp
+++ b/sigmodr/widgets/MapUI.cpp
@@ -25,6 +25,14 @@
#include <sigmod/Sprite.h>
#include <sigmod/Tile.h>
+// KDE includes
+#include <KComboBox>
+#include <KLineEdit>
+
+// Qt includes
+#include <QtCore/QFile>
+#include <QtUiTools/QUiLoader>
+
// FIXME: Update map editing to new collage map
using namespace Sigmod;
@@ -33,28 +41,29 @@ using namespace Sigmodr::Widgets;
MapUI::MapUI(Map* map, QWidget* parent) :
ObjectUI(parent)
{
- setupUi(this);
setObjects(map, new Map(*map));
- varMap->setMap(map);
- connect(varMap, SIGNAL(changed()), this, SIGNAL(changed()));
-}
-
-MapUI::~MapUI()
-{
+// varMap->setMap(map);
+// connect(varMap, SIGNAL(changed()), this, SIGNAL(changed()));
}
void MapUI::initGui()
{
- varType->addItem(Map::TypeStr[Map::Outdoor], QVariant::fromValue(Map::Outdoor));
- varType->addItem(Map::TypeStr[Map::Dungeon], QVariant::fromValue(Map::Dungeon));
- varType->addItem(Map::TypeStr[Map::Building], QVariant::fromValue(Map::Building));
+ QFile file(":/gui/map.ui");
+ file.open(QFile::ReadOnly);
+ QWidget *formWidget = QUiLoader().load(&file, this);
+ file.close();
+ ui_name = formWidget->findChild<KLineEdit*>("varName");
+ ui_type = formWidget->findChild<KComboBox*>("varType");
+ connect(ui_name, SIGNAL(textChanged(QString)), this, SLOT(nameChanged(QString)));
+ connect(ui_type, SIGNAL(currentIndexChanged(int)), this, SLOT(typeChanged(int)));
+ ui_type->addItems(Map::TypeStr);
}
void MapUI::setGui()
{
- varName->setText(qobject_cast<Map*>(modified())->name());
- varType->setCurrentIndex(qobject_cast<Map*>(modified())->type());
- varMap->reset();
+ ui_name->setText(qobject_cast<Map*>(modified())->name());
+ ui_type->setCurrentIndex(qobject_cast<Map*>(modified())->type());
+// varMap->reset();
}
void MapUI::apply()
@@ -70,14 +79,14 @@ void MapUI::discard()
emit(changed(false));
}
-void MapUI::on_varName_textChanged(const QString& name)
+void MapUI::nameChanged(const QString& name)
{
- const int cursor = varName->cursorPosition();
+ const int cursor = ui_name->cursorPosition();
qobject_cast<Map*>(modified())->setName(name);
- varName->setCursorPosition(cursor);
+ ui_name->setCursorPosition(cursor);
}
-void MapUI::on_varType_activated(const int type)
+void MapUI::typeChanged(const int type)
{
- qobject_cast<Map*>(modified())->setType(varType->itemData(type).value<Map::Type>());
+ qobject_cast<Map*>(modified())->setType(static_cast<Map::Type>(type));
}