From 0fa52c1f61c457c9b68bec53bcce3af858e5eb44 Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Sun, 27 Apr 2008 17:57:32 +0000 Subject: [FIX] More header cleanliness [FIX] UI classes now just use the ObjectUI pointers [FIX] Some miscellaneous qmake options git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@112 6ecfd1a5-f3ed-3746-8530-beee90d26b22 --- pokemodr/MapUI.cpp | 46 ++++++++++++++++++++++++++++------------------ 1 file changed, 28 insertions(+), 18 deletions(-) (limited to 'pokemodr/MapUI.cpp') diff --git a/pokemodr/MapUI.cpp b/pokemodr/MapUI.cpp index 36a2cc3e..fd23d637 100644 --- a/pokemodr/MapUI.cpp +++ b/pokemodr/MapUI.cpp @@ -18,32 +18,42 @@ // Header include #include "MapUI.h" +// PokeModr includes +#include "TileDelegate.h" +#include "TilemapModel.h" + // Pokemod includes +#include "../pokemod/Map.h" #include "../pokemod/MapWarp.h" #include "../pokemod/Pokemod.h" // General includes #include "../general/BugCatcher.h" -#include "../general/Exception.h" // Qt includes #include -#include + +// KDE includes +#include MapUI::MapUI(Map* map, QWidget* parent) : ObjectUI(parent), - m_map(map), - m_map_mod(new Map(*map)), - m_model(new TilemapModel(this, m_map_mod->map(), static_cast(m_map->pokemod()))), m_delegate(new TileDelegate(this)) { setupUi(this); QMetaObject::connectSlotsByName(this); - setObjects(m_map, m_map_mod); + setObjects(map, new Map(*map)); + m_model = new TilemapModel(this, static_cast(modified())->map(), static_cast(static_cast(original())->pokemod())); connect(this, SIGNAL(changed(bool)), boxButtons, SLOT(setEnabled(bool))); init(); } +MapUI::~MapUI() +{ + delete m_model; + delete m_delegate; +} + void MapUI::initGui() { varType->addItems(Map::TypeStr); @@ -58,9 +68,9 @@ void MapUI::initGui() void MapUI::refreshGui() { varFlyWarp->clear(); - for (int i = 0; i < m_map->warpCount(); ++i) + for (int i = 0; i < static_cast(original())->warpCount(); ++i) { - const MapWarp* warp = m_map->warp(i); + const MapWarp* warp = static_cast(original())->warp(i); varFlyWarp->addItem(warp->name()); varFlyWarp->setItemData(i, warp->id()); } @@ -68,36 +78,36 @@ void MapUI::refreshGui() void MapUI::setGui() { - varName->setText(m_map_mod->name()); - boxFlyWarp->setChecked((m_map_mod->flyWarp() == INT_MAX) ? Qt::Unchecked : Qt::Checked); - varFlyWarp->setCurrentIndex(varFlyWarp->findData(m_map_mod->flyWarp())); - varType->setCurrentIndex(m_map_mod->type()); + varName->setText(static_cast(modified())->name()); + boxFlyWarp->setChecked((static_cast(modified())->flyWarp() == INT_MAX) ? Qt::Unchecked : Qt::Checked); + varFlyWarp->setCurrentIndex(varFlyWarp->findData(static_cast(modified())->flyWarp())); + varType->setCurrentIndex(static_cast(modified())->type()); buttonDeleteColumn->setEnabled(0 < m_model->columnCount()); buttonDeleteRow->setEnabled(0 < m_model->rowCount()); } void MapUI::on_buttonApply_clicked() { - *m_map = *m_map_mod; + *static_cast(original()) = *static_cast(modified()); emit(changed(false)); } void MapUI::on_buttonDiscard_clicked() { - *m_map_mod = *m_map; + *static_cast(modified()) = *static_cast(original()); setGui(); emit(changed(false)); } void MapUI::on_varName_textChanged(const QString& name) { - m_map_mod->setName(name); + static_cast(modified())->setName(name); emit(changed(true)); } void MapUI::on_boxFlyWarp_toggled() { - m_map_mod->setFlyWarp(-1); + static_cast(modified())->setFlyWarp(-1); emit(changed(true)); } @@ -105,7 +115,7 @@ void MapUI::on_varFlyWarp_currentIndexChanged(const int flyWarp) { try { - m_map_mod->setFlyWarp(varFlyWarp->itemData(flyWarp).toInt()); + static_cast(modified())->setFlyWarp(varFlyWarp->itemData(flyWarp).toInt()); emit(changed(true)); } catch (BoundsException& exception) @@ -119,7 +129,7 @@ void MapUI::on_varType_currentIndexChanged(const int type) { try { - m_map_mod->setType(type); + static_cast(modified())->setType(type); emit(changed(true)); } catch (BoundsException& exception) -- cgit