Changeset 8035 for code/branches/usability/src/libraries
- Timestamp:
- Mar 6, 2011, 4:32:05 PM (14 years ago)
- Location:
- code/branches/usability/src/libraries/core
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/usability/src/libraries/core/GUIManager.cc
r8033 r8035 103 103 /*static*/ const std::string GUIManager::defaultScheme_ = "TaharezGreen"; 104 104 105 static const std::string __CC_navigateGUI_name = "navigateGUI"; 106 105 107 SetConsoleCommand("showGUI", &GUIManager::showGUI).defaultValue(1, false).defaultValue(2, false); 106 108 SetConsoleCommand("hideGUI", &GUIManager::hideGUI); 107 109 SetConsoleCommand("toggleGUI", &GUIManager::toggleGUI).defaultValue(1, false).defaultValue(2, false); 110 SetConsoleCommand(__CC_navigateGUI_name, &GUIManager::navigateGUI).deactivate(); 111 112 //! Strings that specify modes for the GUI navigation. 113 /*static*/ const std::string GUIManager::NAVIGATE_UP = "up"; 114 /*static*/ const std::string GUIManager::NAVIGATE_DOWN = "down"; 115 /*static*/ const std::string GUIManager::NAVIGATE_LEFT = "left"; 116 /*static*/ const std::string GUIManager::NAVIGATE_RIGHT = "right"; 117 /*static*/ const std::string GUIManager::NAVIGATE_ENTER = "enter"; 108 118 109 119 /** … … 364 374 this->rootWindow_->setProperty("Alpha", "1.0"); 365 375 this->rootWindow_->setProperty("Image", image); 376 } 377 378 /** 379 @brief 380 Method to navigate the GUI, by specifying the mode of navigation. 381 @param mode 382 The mode of navigation, at this point can be either 'up', 'down', 'left', 'right' or 'enter'. 383 */ 384 /*static*/ void GUIManager::navigateGUI(const std::string& mode) 385 { 386 if(mode == NAVIGATE_UP) 387 GUIManager::getInstance().executeCode("navigateGUI(\"" + NAVIGATE_UP + "\")"); 388 else if(mode == NAVIGATE_DOWN) 389 GUIManager::getInstance().executeCode("navigateGUI(\"" + NAVIGATE_DOWN + "\")"); 390 else if(mode == NAVIGATE_LEFT) 391 GUIManager::getInstance().executeCode("navigateGUI(\"" + NAVIGATE_LEFT + "\")"); 392 else if(mode == NAVIGATE_RIGHT) 393 GUIManager::getInstance().executeCode("navigateGUI(\"" + NAVIGATE_RIGHT + "\")"); 394 else if(mode == NAVIGATE_ENTER) 395 GUIManager::getInstance().executeCode("navigateGUI(\"" + NAVIGATE_ENTER + "\")"); 396 } 397 398 /** 399 @brief 400 Is called by lua to change whether there are any GUIs active at the moment. 401 @param active 402 Whether GUIs are active. 403 */ 404 void GUIManager::guisActiveChanged(bool active) 405 { 406 if(this->GUIsActive_ == active) 407 return; 408 this->GUIsActive_ = active; 409 if(this->GUIsActive_) 410 ModifyConsoleCommand(__CC_navigateGUI_name).activate(); 411 else 412 ModifyConsoleCommand(__CC_navigateGUI_name).deactivate(); 366 413 } 367 414 -
code/branches/usability/src/libraries/core/GUIManager.h
r8033 r8035 94 94 void setBackgroundImage(const std::string& image); 95 95 96 static void navigateGUI(const std::string& mode); 97 void guisActiveChanged(bool active); // tolua_export 98 96 99 //! Creates a new InputState to be used with a GUI Sheet 97 100 const std::string& createInputState(const std::string& name, TriBool::Value showCursor = TriBool::True, TriBool::Value useKeyboard = TriBool::True, bool bBlockJoyStick = false); // tolua_export … … 124 127 template <typename FunctionType> 125 128 bool protectedCall(FunctionType function); 129 130 static const std::string NAVIGATE_UP; 131 static const std::string NAVIGATE_DOWN; 132 static const std::string NAVIGATE_LEFT; 133 static const std::string NAVIGATE_RIGHT; 134 static const std::string NAVIGATE_ENTER; 135 136 bool GUIsActive_; //!< Whether there are any GUIs active at a given moment. 126 137 127 138 // keyHandler functions
Note: See TracChangeset
for help on using the changeset viewer.