aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Workspace.hh90
1 files changed, 42 insertions, 48 deletions
diff --git a/src/Workspace.hh b/src/Workspace.hh
index 9ca8326..dd41281 100644
--- a/src/Workspace.hh
+++ b/src/Workspace.hh
@@ -19,8 +19,10 @@
19// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 19// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20// DEALINGS IN THE SOFTWARE. 20// DEALINGS IN THE SOFTWARE.
21 21
22#ifndef WORKSPACE_HH 22#ifndef WORKSPACE_HH
23#define WORKSPACE_HH 23#define WORKSPACE_HH
24
25#include "Window.hh"
24 26
25#include <X11/Xlib.h> 27#include <X11/Xlib.h>
26#include <string> 28#include <string>
@@ -30,66 +32,58 @@
30class BScreen; 32class BScreen;
31class Clientmenu; 33class Clientmenu;
32class Workspace; 34class Workspace;
33class FluxboxWindow; 35
34 36
35 37
36class Workspace { 38class Workspace {
37public: 39public:
38 typedef std::vector<FluxboxWindow *> Windows; 40 typedef std::vector<FluxboxWindow *> Windows;
39 41
40 Workspace(BScreen *, int = 0); 42 Workspace(BScreen *, int = 0);
41 ~Workspace(void); 43 ~Workspace(void);
42 44
43 inline BScreen *getScreen(void) { return screen; } 45 inline BScreen *getScreen(void) { return screen; }
44 46 inline FluxboxWindow *getLastFocusedWindow(void) { return lastfocus; }
45 inline FluxboxWindow *getLastFocusedWindow(void) { return lastfocus; } 47 inline Clientmenu *getMenu(void) { return clientmenu; }
46 48 inline const char *getName(void) const { return name.c_str(); }
47 inline Clientmenu *getMenu(void) { return clientmenu; } 49 inline const int &getWorkspaceID(void) const { return id; }
48 50 inline void setLastFocusedWindow(FluxboxWindow *w) { lastfocus = w; }
49 inline const char *getName(void) const { return name.c_str(); } 51 FluxboxWindow *getWindow(int);
50 52 inline Windows &getWindowList() { return windowList; }
51 inline const int &getWorkspaceID(void) const { return id; } 53 bool isCurrent(void);
52 54 bool isLastWindow(FluxboxWindow *);
53 inline void setLastFocusedWindow(FluxboxWindow *w) { lastfocus = w; } 55 const int addWindow(FluxboxWindow *, Bool = False);
54 56 const int removeWindow(FluxboxWindow *);
55 FluxboxWindow *getWindow(int); 57 const int getCount(void);
56 inline Windows &getWindowList() { return windowList; }
57
58 bool isCurrent(void);
59 bool isLastWindow(FluxboxWindow *);
60
61 const int addWindow(FluxboxWindow *, Bool = False);
62 const int removeWindow(FluxboxWindow *);
63 const int getCount(void);
64 58
65 void showAll(void); 59 void showAll(void);
66 void hideAll(void); 60 void hideAll(void);
67 void removeAll(void); 61 void removeAll(void);
68 void raiseWindow(FluxboxWindow *); 62 void raiseWindow(FluxboxWindow *);
69 void lowerWindow(FluxboxWindow *); 63 void lowerWindow(FluxboxWindow *);
70 void reconfigure(); 64 void reconfigure();
71 void update(); 65 void update();
72 void setCurrent(void); 66 void setCurrent(void);
73 void setName(char *); 67 void setName(char *);
74 void shutdown(void); 68 void shutdown(void);
75 69
76private: 70private:
77 BScreen *screen; 71 BScreen *screen;
78 FluxboxWindow *lastfocus; 72 FluxboxWindow *lastfocus;
79 Clientmenu *clientmenu; 73 Clientmenu *clientmenu;
80 74
81 typedef std::list<FluxboxWindow *> WindowStack; 75 typedef std::list<FluxboxWindow *> WindowStack;
82 76
83 77
84 WindowStack stackingList; 78 WindowStack stackingList;
85 Windows windowList; 79 Windows windowList;
86 80
87 std::string name; 81 std::string name;
88 int id, cascade_x, cascade_y; 82 int id, cascade_x, cascade_y;
89 83
90 84
91protected: 85protected:
92 void placeWindow(FluxboxWindow *); 86 void placeWindow(FluxboxWindow *);
93 87
94 88
95 89