diff options
Diffstat (limited to 'src/fluxbox.hh')
-rw-r--r-- | src/fluxbox.hh | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/src/fluxbox.hh b/src/fluxbox.hh index ae51e35..412d796 100644 --- a/src/fluxbox.hh +++ b/src/fluxbox.hh | |||
@@ -22,13 +22,13 @@ | |||
22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
23 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
24 | 24 | ||
25 | // $Id: fluxbox.hh,v 1.53 2003/05/04 23:38:06 rathnor Exp $ | 25 | // $Id: fluxbox.hh,v 1.54 2003/05/10 14:01:07 fluxgen Exp $ |
26 | 26 | ||
27 | #ifndef FLUXBOX_HH | 27 | #ifndef FLUXBOX_HH |
28 | #define FLUXBOX_HH | 28 | #define FLUXBOX_HH |
29 | 29 | ||
30 | #include "App.hh" | ||
30 | #include "Resource.hh" | 31 | #include "Resource.hh" |
31 | #include "BaseDisplay.hh" | ||
32 | #include "Timer.hh" | 32 | #include "Timer.hh" |
33 | #include "Observer.hh" | 33 | #include "Observer.hh" |
34 | #include "SignalHandler.hh" | 34 | #include "SignalHandler.hh" |
@@ -65,11 +65,12 @@ class Keys; | |||
65 | class BScreen; | 65 | class BScreen; |
66 | class FbAtoms; | 66 | class FbAtoms; |
67 | 67 | ||
68 | |||
69 | /// main class for the window manager. | ||
68 | /** | 70 | /** |
69 | main class for the window manager. | ||
70 | singleton type | 71 | singleton type |
71 | */ | 72 | */ |
72 | class Fluxbox : public BaseDisplay, public FbTk::TimeoutHandler, | 73 | class Fluxbox : public FbTk::App, public FbTk::TimeoutHandler, |
73 | public FbTk::SignalEventHandler, | 74 | public FbTk::SignalEventHandler, |
74 | public FbTk::Observer { | 75 | public FbTk::Observer { |
75 | public: | 76 | public: |
@@ -78,7 +79,12 @@ public: | |||
78 | virtual ~Fluxbox(); | 79 | virtual ~Fluxbox(); |
79 | 80 | ||
80 | static Fluxbox *instance() { return s_singleton; } | 81 | static Fluxbox *instance() { return s_singleton; } |
81 | 82 | /// main event loop | |
83 | void eventLoop(); | ||
84 | bool validateWindow(Window win) const; | ||
85 | void grab(); | ||
86 | void ungrab(); | ||
87 | |||
82 | inline Atom getFluxboxPidAtom() const { return m_fluxbox_pid; } | 88 | inline Atom getFluxboxPidAtom() const { return m_fluxbox_pid; } |
83 | 89 | ||
84 | FluxboxWindow *searchGroup(Window, FluxboxWindow *); | 90 | FluxboxWindow *searchGroup(Window, FluxboxWindow *); |
@@ -140,7 +146,7 @@ public: | |||
140 | inline void maskWindowEvents(Window w, FluxboxWindow *bw) | 146 | inline void maskWindowEvents(Window w, FluxboxWindow *bw) |
141 | { m_masked = w; m_masked_window = bw; } | 147 | { m_masked = w; m_masked_window = bw; } |
142 | 148 | ||
143 | void watchKeyRelease(BScreen *screen, unsigned int mods); | 149 | void watchKeyRelease(BScreen &screen, unsigned int mods); |
144 | 150 | ||
145 | void setFocusedWindow(FluxboxWindow *w); | 151 | void setFocusedWindow(FluxboxWindow *w); |
146 | void revertFocus(BScreen *screen); | 152 | void revertFocus(BScreen *screen); |
@@ -175,11 +181,11 @@ public: | |||
175 | inline const Cursor &getLowerLeftAngleCursor() const { return cursor.ll_angle; } | 181 | inline const Cursor &getLowerLeftAngleCursor() const { return cursor.ll_angle; } |
176 | inline const Cursor &getLowerRightAngleCursor() const { return cursor.lr_angle; } | 182 | inline const Cursor &getLowerRightAngleCursor() const { return cursor.lr_angle; } |
177 | 183 | ||
178 | 184 | bool isStartup() const { return m_starting; } | |
179 | enum { B_AMERICANDATE = 1, B_EUROPEANDATE }; | 185 | enum { B_AMERICANDATE = 1, B_EUROPEANDATE }; |
180 | 186 | ||
181 | typedef std::vector<Fluxbox::Titlebar> TitlebarList; | 187 | typedef std::vector<Fluxbox::Titlebar> TitlebarList; |
182 | 188 | ||
183 | private: | 189 | private: |
184 | struct cursor { | 190 | struct cursor { |
185 | Cursor session, move, ll_angle, lr_angle; | 191 | Cursor session, move, ll_angle, lr_angle; |
@@ -259,7 +265,9 @@ private: | |||
259 | 265 | ||
260 | static Fluxbox *s_singleton; | 266 | static Fluxbox *s_singleton; |
261 | std::vector<AtomHandler *> m_atomhandler; | 267 | std::vector<AtomHandler *> m_atomhandler; |
262 | 268 | bool m_starting; | |
269 | bool m_shutdown; | ||
270 | int m_server_grabs; | ||
263 | }; | 271 | }; |
264 | 272 | ||
265 | 273 | ||