X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=util%2Fepist%2Fwindow.hh;h=406efe09487c343c01c2bc35649b5a3a8772c4ea;hb=a0cf45a0ef5f7e2cbf0833f4d8655131912400cc;hp=e7f382808cc56de23ca33221166067ef7ae75208;hpb=4aeca296e895bfe74d59d4732e740c2d49c10080;p=chaz%2Fopenbox diff --git a/util/epist/window.hh b/util/epist/window.hh index e7f38280..406efe09 100644 --- a/util/epist/window.hh +++ b/util/epist/window.hh @@ -30,13 +30,12 @@ extern "C" { #include #include +#include "../../src/Util.hh" + class epist; class screen; -class XWindow; class XAtom; -typedef std::list WindowList; - class XWindow { public: enum Max { @@ -47,15 +46,20 @@ public: }; private: - epist *_epist; + epist *_epist; screen *_screen; - XAtom *_xatom; + XAtom *_xatom; + Window _window; - + unsigned int _desktop; std::string _title; std::string _app_name; std::string _app_class; + Rect _rect; + int _inc_x, _inc_y; // resize increments + int _base_x, _base_y; // base size + int _gravity; // states bool _shaded; @@ -65,6 +69,8 @@ private: bool _unmapped; + void updateDimentions(); + void updateHints(); void updateState(); void updateDesktop(); void updateTitle(); @@ -87,6 +93,11 @@ public: inline bool iconic() const { return _iconic; } inline bool maxVert() const { return _max_vert; } inline bool maxHorz() const { return _max_horz; } + inline const Rect &area() const { return _rect; } + inline unsigned int x() const { return _rect.x(); } + inline unsigned int y() const { return _rect.y(); } + inline unsigned int width() const { return _rect.width(); } + inline unsigned int height() const { return _rect.height(); } void processEvent(const XEvent &e); @@ -98,6 +109,7 @@ public: void focus() const; void sendTo(unsigned int dest) const; void move(int x, int y) const; + void resize(unsigned int width, unsigned int height) const; void toggleMaximize(Max max) const; // i hate toggle functions void maximize(Max max) const; @@ -105,4 +117,6 @@ public: bool operator == (const Window &w) const { return w == _window; } }; +typedef std::list WindowList; + #endif // __window_hh