From 78c8a22cd16bef3ca0efc1479b8ceb777aac77af Mon Sep 17 00:00:00 2001 From: gugus Date: Sun, 15 Apr 2012 19:32:41 +0200 Subject: [PATCH] more clean up. The container GUI shows up now --- apps/openmw/mwgui/container.cpp | 95 ++++++++++++-------------- apps/openmw/mwgui/mode.hpp | 1 + apps/openmw/mwgui/window_manager.cpp | 5 ++ apps/openmw/mwworld/actionopen.cpp | 1 + apps/openmw/mwworld/containerstore.cpp | 2 +- 5 files changed, 52 insertions(+), 52 deletions(-) diff --git a/apps/openmw/mwgui/container.cpp b/apps/openmw/mwgui/container.cpp index c09a1bf58..7a3d5b240 100644 --- a/apps/openmw/mwgui/container.cpp +++ b/apps/openmw/mwgui/container.cpp @@ -27,7 +27,7 @@ ContainerWindow::ContainerWindow(WindowManager& parWindowManager,MWWorld::Enviro mEnvironment(environment) { setText("_Main", "Name of Container"); - setVisible(false); + center(); getWidget(containerWidget, "Items"); getWidget(takeButton, "TakeButton"); @@ -35,17 +35,10 @@ ContainerWindow::ContainerWindow(WindowManager& parWindowManager,MWWorld::Enviro setText("CloseButton","Close"); setText("TakeButton","Take All"); - - //ctor } ContainerWindow::~ContainerWindow() { - //dtor - - - - } void ContainerWindow::setName(std::string contName) @@ -108,49 +101,49 @@ void ContainerWindow::open(MWWorld::Ptr& container) std::string path = std::string("icons\\"); - path += iter.getInventoryIcon(); -// switch (iter.getType()) -// { -// -// case MWWorld::ContainerStore::Type_Potion: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Apparatus: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Armor: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Book: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Clothing: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Ingredient: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Light: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Lockpick: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Miscellaneous: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Probe: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Repair: -// path += iter->get()->base->icon; -// break; -// case MWWorld::ContainerStore::Type_Weapon: -// path += iter->get()->base->icon; -// break; -// -// -// } + //path += iter.getInventoryIcon(); + switch (iter.getType()) + { + + case MWWorld::ContainerStore::Type_Potion: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Apparatus: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Armor: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Book: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Clothing: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Ingredient: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Light: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Lockpick: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Miscellaneous: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Probe: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Repair: + path += iter->get()->base->icon; + break; + case MWWorld::ContainerStore::Type_Weapon: + path += iter->get()->base->icon; + break; + + + } count++; if(count % 8 == 0) diff --git a/apps/openmw/mwgui/mode.hpp b/apps/openmw/mwgui/mode.hpp index 55f0952ce..48670e9a5 100644 --- a/apps/openmw/mwgui/mode.hpp +++ b/apps/openmw/mwgui/mode.hpp @@ -7,6 +7,7 @@ namespace MWGui { GM_Game, // Game mode, only HUD GM_Inventory, // Inventory mode + GM_Container, GM_MainMenu, // Main menu mode GM_Console, // Console mode diff --git a/apps/openmw/mwgui/window_manager.cpp b/apps/openmw/mwgui/window_manager.cpp index 06bbb3a30..34048c935 100644 --- a/apps/openmw/mwgui/window_manager.cpp +++ b/apps/openmw/mwgui/window_manager.cpp @@ -181,6 +181,7 @@ void WindowManager::updateVisible() console->disable(); mJournal->setVisible(false); dialogueWindow->setVisible(false); + containerWindow->setVisible(false); // Mouse is visible whenever we're not in game mode MyGUI::PointerManager::getInstance().setVisible(isGuiMode()); @@ -216,8 +217,12 @@ void WindowManager::updateVisible() // Show the windows we want map -> setVisible( (eff & GW_Map) != 0 ); stats -> setVisible( (eff & GW_Stats) != 0 ); + break; } + case GM_Container: + containerWindow->setVisible(true); + break; case GM_Dialogue: dialogueWindow->open(); break; diff --git a/apps/openmw/mwworld/actionopen.cpp b/apps/openmw/mwworld/actionopen.cpp index c7b066d8e..aa4a67b2b 100644 --- a/apps/openmw/mwworld/actionopen.cpp +++ b/apps/openmw/mwworld/actionopen.cpp @@ -16,6 +16,7 @@ namespace MWWorld void ActionOpen::execute (Environment& environment) { + environment.mWindowManager->setGuiMode(MWGui::GuiMode::GM_Container); environment.mWindowManager->getContainerWindow()->open(mContainer); } } diff --git a/apps/openmw/mwworld/containerstore.cpp b/apps/openmw/mwworld/containerstore.cpp index 16de93332..3f1b7ea2c 100644 --- a/apps/openmw/mwworld/containerstore.cpp +++ b/apps/openmw/mwworld/containerstore.cpp @@ -483,7 +483,7 @@ std::string MWWorld::ContainerStoreIterator::getInventoryIcon() throw std::runtime_error ("invalid iterator"); - std::string s = ptr.getInventoryIcon(); + std::string s = "";//ptr.getInventoryIcon(); return s; }