X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=util%2Fepist%2Fwindow.hh;h=c83f020c2f64fd712e0eae3376a2e1c2514b70bb;hb=5112b6270431cf1fe288d63e15bfbe689c0624bf;hp=140d63bc174c008b1883f2703364f62e658a38d4;hpb=0a9130b6c76bafb553e954feafa197897e6ecbdd;p=chaz%2Fopenbox diff --git a/util/epist/window.hh b/util/epist/window.hh index 140d63bc..c83f020c 100644 --- a/util/epist/window.hh +++ b/util/epist/window.hh @@ -28,32 +28,51 @@ extern "C" { } #include +#include class XWindow; -typedef std::list WindowList; +typedef std::list WindowList; class XWindow { private: Window _window; + unsigned int _desktop; + std::string _title; + std::string _app_name; + std::string _app_class; + + // states bool _shaded; bool _iconic; bool _max_vert; bool _max_horz; + bool _unmapped; + public: XWindow(Window window); virtual ~XWindow(); inline Window window() const { return _window; } + inline unsigned int desktop() const { return _desktop; } + inline const std::string &title() const { return _title; } + inline const std::string &appName() const { return _app_name; } + inline const std::string &appClass() const { return _app_name; } + inline bool shaded() const { return _shaded; } inline bool iconic() const { return _iconic; } inline bool maxVert() const { return _max_vert; } inline bool maxHorz() const { return _max_horz; } + inline void setUnmapped(bool u) { _unmapped = u; } + void updateState(); + void updateDesktop(); + void updateTitle(); + void updateClass(); bool operator == (const XWindow &w) const { return w._window == _window; } bool operator == (const Window &w) const { return w == _window; }