]> Dogcows Code - chaz/openbox/blobdiff - util/epist/screen.hh
adding buttons for styles
[chaz/openbox] / util / epist / screen.hh
index 1a669bf93fce08aaddf4e048339cecaa27d1278e..f0f3de079d87a654eaa608a541040dfde9646be1 100644 (file)
@@ -1,5 +1,5 @@
-// -*- mode: C++; indent-tabs-mode: nil; -*-
-// screen.hh for Epistophy - a key handler for NETWM/EWMH window managers.
+// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
+// screen.hh for Epistrophy - a key handler for NETWM/EWMH window managers.
 // Copyright (c) 2002 - 2002 Ben Jansens <ben at orodu.net>
 //
 // Permission is hereby granted, free of charge, to any person obtaining a
@@ -31,6 +31,7 @@ extern "C" {
 #include <string>
 
 #include "window.hh"
+#include "config.hh"
 
 class epist;
 class screen;
@@ -45,14 +46,20 @@ class screen {
   const ScreenInfo *_info;
 
   std::string _wm_name;
-  
+
   WindowList &_clients;
   WindowList::iterator &_active;
   WindowList::iterator _last_active;
   unsigned int _active_desktop;
   unsigned int _num_desktops;
 
+  const Config *_config;
+
   bool _managed;
+  bool _grabbed; // used for keygrab toggle function
+  bool _cycling; // used for stacked cycling
+  bool _stacked_cycling;
+  bool _stacked_raise;
 
   XWindow *findWindow(const XEvent &e) const;
   void updateNumDesktops();
@@ -61,6 +68,8 @@ class screen {
   void updateActiveWindow();
   bool doAddWindow(Window window) const;
   bool findSupportingWM();
+  bool isModifier(const KeyCode kc) const;
+  bool nothingIsPressed(void) const;
 
 public:
   screen(epist *epist, int number);
@@ -74,20 +83,28 @@ public:
   
   void processEvent(const XEvent &e);
   void handleKeypress(const XEvent &e);
+  void handleKeyrelease(const XEvent &e);
   void updateEverything();
 
-  void cycleWindow(const bool forward, const bool allscreens = false,
+  void cycleWindow(unsigned int state, const bool forward, const int increment,
+                   const bool allscreens = false,
                    const bool alldesktops = false,
                    const bool sameclass = false,
-                   const std::string &classname = "") const;
-  void cycleWorkspace(const bool forward, const bool loop = true) const;
+                   const std::string &classname = "");
+  void cycleWorkspace(const bool forward, const int increment,
+                      const bool loop = true) const;
   void changeWorkspace(const int num) const;
+  void changeWorkspaceVert(const int num) const;
+  void changeWorkspaceHorz(const int num) const;
+
   void toggleShaded(const Window win) const;
   void execCommand(const std::string &cmd) const;
 
   void grabKey(const KeyCode keyCode, const int modifierMask) const;
   void ungrabKey(const KeyCode keyCode, const int modifierMask) const;
+
+  void grabModifiers(void) const;
+  void ungrabModifiers(void) const;
 };
 
 #endif // __screen_hh
-
This page took 0.021264 seconds and 4 git commands to generate.