Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
May 19, 2008, 2:33:09 AM (17 years ago)
Author:
landauf
Message:

The InGameConsole is now using the new Shell. There's a clear separation between the two classes: InGameConsole implements all graphical parts of the console (and has a tick), while Shell handles the internal actions (like listening on input and output changes). That's why InGameConsole has no longer it's own InputBuffer and doesn't care about command-executing or anything else.

There are currently three new features:

  • Every output through COUT(level) is now visible in the InGameConsole, provided the configured output-level for the shell matches. default: 1 (only forced output and errors)
  • The cursor in the input-line is movable with the left and right arrow keys (home and end works too)
  • You can scroll through all output-lines by pressing page up and page down

There's another feature to come, providing a command history, accessible with up and down arrow keys, but I couldn't finish it yet, because there's still a bug, causing Orxonox to scroll through the entire memory - that's maybe a bit too much history ;)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/console/src/core/OutputBuffer.h

    r1313 r1322  
    3232#include <list>
    3333#include <sstream>
     34#include <iostream>
    3435
    3536#include "CorePrereqs.h"
     
    5758                return *this;
    5859            }
     60
     61            OutputBuffer& operator<<(std::ostream& (*manipulator)(std::ostream&));
     62            OutputBuffer& operator<<(std::ios& (*manipulator)(std::ios&));
     63            OutputBuffer& operator<<(std::ios_base& (*manipulator)(std::ios_base&));
    5964
    6065            template <class T>
     
    8893            void unregisterListener(OutputBufferListener* listener);
    8994
    90             inline operator std::stringstream&()
    91             {
    92                 return this->stream_;
    93             }
    94 
    9595        private:
    9696            void callListeners();
Note: See TracChangeset for help on using the changeset viewer.