]> Dogcows Code - chaz/openbox/blobdiff - util/epist/window.hh
gets a whole lotta window information now, and updtes when it changes!
[chaz/openbox] / util / epist / window.hh
index 01cb2a8046985942524c497d77946a27f00f3cea..c83f020c2f64fd712e0eae3376a2e1c2514b70bb 100644 (file)
@@ -28,31 +28,52 @@ extern "C" {
 }
 
 #include <list>
+#include <string>
 
 class XWindow;
 
-typedef std::list<XWindow> WindowList;
+typedef std::list<XWindow *> 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; }
 };
This page took 0.02369 seconds and 4 git commands to generate.