X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=util%2Fepist%2Fepist.hh;h=1932902db45918bec99c83ac61fc9a5f9f892c71;hb=d6cc0b6193d27f9086df1a699adfe1829ae16ff4;hp=6da3818188283a9c16bbde93e9eaec6c3c7dcce5;hpb=fc792813a24d22330b49eda8b3ef7054eadf20d3;p=chaz%2Fopenbox diff --git a/util/epist/epist.hh b/util/epist/epist.hh index 6da38181..1932902d 100644 --- a/util/epist/epist.hh +++ b/util/epist/epist.hh @@ -31,27 +31,30 @@ extern "C" { #include #include "actions.hh" +#include "window.hh" #include "../../src/BaseDisplay.hh" class XAtom; class screen; -class XWindow; class epist : public BaseDisplay { private: - std::string _rc_file; - XAtom *_xatom; - char **_argv; + std::string _rc_file; + XAtom *_xatom; + char **_argv; typedef std::vector ScreenList; - ScreenList _screens; + ScreenList _screens; typedef std::map WindowLookup; typedef WindowLookup::value_type WindowLookupPair; WindowLookup _windows; + + WindowList _clients; + WindowList::iterator _active; - ActionList _actions; + ActionList _actions; virtual void process_event(XEvent *e); virtual bool handleSignal(int sig); @@ -72,12 +75,17 @@ public: void removeWindow(XWindow *window); XWindow *findWindow(Window window) const; + void cycleScreen(int current, bool forward) const; + void getLockModifiers(int &numlockMask, int &scrolllockMask) const { numlockMask = NumLockMask; scrolllockMask = ScrollLockMask; } const ActionList &actions(void) { return _actions; } + + WindowList& clientsList() { return _clients; } + WindowList::iterator& activeWindow() { return _active; } }; #endif // __epist_hh