Changeset 1638 for code/branches/gui/src/orxonox/overlays/console
- Timestamp:
- Jul 20, 2008, 7:49:26 PM (16 years ago)
- Location:
- code/branches/gui
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/gui
-
Property
svn:mergeinfo
set to
/code/branches/input merged eligible
-
Property
svn:mergeinfo
set to
-
code/branches/gui/src/orxonox/overlays/console/InGameConsole.cc
r1633 r1638 59 59 @brief Constructor: Creates and initializes the InGameConsole. 60 60 */ 61 InGameConsole::InGameConsole() : 62 consoleOverlay_(0), consoleOverlayContainer_(0), 63 consoleOverlayNoise_(0), consoleOverlayCursor_(0), consoleOverlayBorder_(0), 64 consoleOverlayTextAreas_(0) 61 InGameConsole::InGameConsole() 62 : consoleOverlay_(0) 63 , consoleOverlayContainer_(0) 64 , consoleOverlayNoise_(0) 65 , consoleOverlayCursor_(0) 66 , consoleOverlayBorder_(0) 67 , consoleOverlayTextAreas_(0) 68 , emptySceneManager_(0) 69 , emptyCamera_(0) 70 , viewport_(0) 65 71 { 66 72 RegisterObject(InGameConsole); … … 188 194 189 195 Shell::getInstance().addOutputLevel(true); 196 197 // create a sceneManager in order to render in our own viewport 198 this->emptySceneManager_ = Ogre::Root::getSingleton() 199 .createSceneManager(Ogre::ST_GENERIC, "Console/EmptySceneManager"); 200 this->emptyCamera_ = this->emptySceneManager_->createCamera("Console/EmptyCamera"); 201 this->viewport_ = GraphicsEngine::getSingleton().getRenderWindow()->addViewport(emptyCamera_, 10); 202 this->viewport_->setOverlaysEnabled(true); 203 this->viewport_->setClearEveryFrame(false); 190 204 191 205 COUT(4) << "Info: InGameConsole initialized" << std::endl; … … 476 490 { 477 491 this->bActive_ = true; 478 InputManager:: setInputState(InputManager::IS_CONSOLE);492 InputManager::requestEnterState("console"); 479 493 Shell::getInstance().registerListener(this); 480 494 … … 498 512 { 499 513 this->bActive_ = false; 500 InputManager:: setInputState(InputManager::IS_NORMAL);514 InputManager::requestLeaveState("console"); 501 515 Shell::getInstance().unregisterListener(this); 502 516 -
code/branches/gui/src/orxonox/overlays/console/InGameConsole.h
r1625 r1638 45 45 class _OrxonoxExport InGameConsole : public TickableReal, public ShellListener, public WindowEventListener 46 46 { 47 48 49 50 47 public: // functions 48 void initialise(); 49 void destroy(); 50 void setConfigValues(); 51 51 52 52 void tick(float dt); 53 53 54 54 static InGameConsole& getInstance(); 55 55 56 57 56 static void openConsole(); 57 static void closeConsole(); 58 58 59 60 61 62 59 private: // functions 60 InGameConsole(); 61 InGameConsole(const InGameConsole& other) {} 62 ~InGameConsole(); 63 63 64 65 64 void activate(); 65 void deactivate(); 66 66 67 68 69 70 71 72 67 void linesChanged(); 68 void onlyLastLineChanged(); 69 void lineAdded(); 70 void inputChanged(); 71 void cursorChanged(); 72 void exit(); 73 73 74 75 76 77 74 void shiftLines(); 75 void colourLine(int colourcode, int index); 76 void setCursorPosition(unsigned int pos); 77 void print(const std::string& text, int index, bool alwaysShift = false); 78 78 79 79 void windowResized(int newWidth, int newHeight); 80 80 81 81 static Ogre::UTFString convert2UTF(std::string s); 82 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 83 private: // variables 84 bool bActive_; 85 int windowW_; 86 int windowH_; 87 int desiredTextWidth_; 88 unsigned int maxCharsPerLine_; 89 unsigned int numLinesShifted_; 90 int scroll_; 91 float cursor_; 92 unsigned int inputWindowStart_; 93 bool bShowCursor_; 94 std::string displayedText_; 95 Ogre::Overlay* consoleOverlay_; 96 Ogre::OverlayContainer* consoleOverlayContainer_; 97 Ogre::PanelOverlayElement* consoleOverlayNoise_; 98 Ogre::TextAreaOverlayElement* consoleOverlayCursor_; 99 Ogre::BorderPanelOverlayElement* consoleOverlayBorder_; 100 Ogre::TextAreaOverlayElement** consoleOverlayTextAreas_; 101 101 102 // config values 103 float relativeWidth; 104 float relativeHeight; 105 float blinkTime; 106 float scrollSpeed_; 107 float noiseSize_; 108 char cursorSymbol_; 102 Ogre::SceneManager* emptySceneManager_; //!< dummy SceneManager to render overlays in empty windows 103 Ogre::Camera* emptyCamera_; //!< dummy camera to render overlays in empty windows 104 Ogre::Viewport* viewport_; 105 106 // config values 107 float relativeWidth; 108 float relativeHeight; 109 float blinkTime; 110 float scrollSpeed_; 111 float noiseSize_; 112 char cursorSymbol_; 109 113 }; 110 114 }
Note: See TracChangeset
for help on using the changeset viewer.