X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Fdisplay.hh;h=e8613a04bf928273badc3699b8c1dc87da5f450e;hb=5face4c6f35172761367f63ac0b6eaf62d84e532;hp=9402a8e7c1f79481481791673142cc623820fa3b;hpb=9b6e5f9cf49df78be25720f9c4b33a733b856c9b;p=chaz%2Fopenbox diff --git a/otk/display.hh b/otk/display.hh index 9402a8e7..e8613a04 100644 --- a/otk/display.hh +++ b/otk/display.hh @@ -6,12 +6,9 @@ extern "C" { #include } -#include - namespace otk { class ScreenInfo; -class GCCache; class RenderControl; class Display; @@ -50,25 +47,18 @@ private: //! The value of the mask for the ScrollLock modifier unsigned int _scroll_lock_mask; + //! The key codes for the modifier keys + XModifierKeymap *_modmap; + //! The number of requested grabs on the display int _grab_count; //! A list of information for all screens on the display - std::vector _screenInfoList; + ScreenInfo** _screeninfo_list; //! A list of RenderControl objects, which are used for all graphics on a //! screen - std::vector _renderControlList; - - //! A cache for re-using GCs, used by the drawing objects - /*! - @see Pen - @see Font - @see Image - @see ImageControl - @see Texture - */ - GCCache *_gccache; + RenderControl** _rendercontrol_list; // Handles X errors on the display /* @@ -86,9 +76,6 @@ public: //! Destroys the class, closes the X display ~Display(); - //! Returns the GC cache for the application - inline GCCache *gcCache() const { return _gccache; } - //! Gets information on a specific screen /*! Returns a ScreenInfo class, which contains information for a screen on the @@ -96,13 +83,13 @@ public: @param snum The screen number of the screen to retrieve info on @return Info on the requested screen, in a ScreenInfo class */ - const ScreenInfo* screenInfo(int snum); + const ScreenInfo* screenInfo(int snum) const; //! Find a ScreenInfo based on a root window - const ScreenInfo* findScreen(Window root); + const ScreenInfo* findScreen(Window root) const; //! Gets the RenderControl for a screen - const RenderControl *renderControl(int snum); + const RenderControl *renderControl(int snum) const; //! Returns if the display has the xkb extension available inline bool xkb() const { return _xkb; } @@ -118,6 +105,7 @@ public: inline unsigned int numLockMask() const { return _num_lock_mask; } inline unsigned int scrollLockMask() const { return _scroll_lock_mask; } + const XModifierKeymap *modifierMap() const { return _modmap; } inline ::Display* operator*() const { return _display; }