diff options
Diffstat (limited to 'src/SystemTray.hh')
-rw-r--r-- | src/SystemTray.hh | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/SystemTray.hh b/src/SystemTray.hh index cceb434..f165856 100644 --- a/src/SystemTray.hh +++ b/src/SystemTray.hh | |||
@@ -1,5 +1,5 @@ | |||
1 | // SystemTray.hh | 1 | // SystemTray.hh |
2 | // Copyright (c) 2003 Henrik Kinnunen (fluxgen at users.sourceforge.net) | 2 | // Copyright (c) 2003-2005 Henrik Kinnunen (fluxgen at users.sourceforge.net) |
3 | // | 3 | // |
4 | // Permission is hereby granted, free of charge, to any person obtaining a | 4 | // Permission is hereby granted, free of charge, to any person obtaining a |
5 | // copy of this software and associated documentation files (the "Software"), | 5 | // copy of this software and associated documentation files (the "Software"), |
@@ -27,8 +27,11 @@ | |||
27 | 27 | ||
28 | #include "FbTk/FbWindow.hh" | 28 | #include "FbTk/FbWindow.hh" |
29 | #include "FbTk/EventHandler.hh" | 29 | #include "FbTk/EventHandler.hh" |
30 | #include "FbTk/Observer.hh" | ||
30 | 31 | ||
31 | #include "ToolbarItem.hh" | 32 | #include "ToolbarItem.hh" |
33 | #include "ButtonTheme.hh" | ||
34 | #include "Screen.hh" | ||
32 | 35 | ||
33 | #include <X11/Xlib.h> | 36 | #include <X11/Xlib.h> |
34 | 37 | ||
@@ -36,10 +39,10 @@ | |||
36 | 39 | ||
37 | class AtomHandler; | 40 | class AtomHandler; |
38 | 41 | ||
39 | class SystemTray: public ToolbarItem, public FbTk::EventHandler { | 42 | class SystemTray: public ToolbarItem, public FbTk::EventHandler, public FbTk::Observer { |
40 | public: | 43 | public: |
41 | 44 | ||
42 | explicit SystemTray(const FbTk::FbWindow &parent); | 45 | explicit SystemTray(const FbTk::FbWindow &parent, ButtonTheme &theme, BScreen& screen); |
43 | virtual ~SystemTray(); | 46 | virtual ~SystemTray(); |
44 | 47 | ||
45 | void move(int x, int y); | 48 | void move(int x, int y); |
@@ -69,6 +72,9 @@ public: | |||
69 | inline void updateSizing() {} | 72 | inline void updateSizing() {} |
70 | 73 | ||
71 | private: | 74 | private: |
75 | |||
76 | void update(FbTk::Subject *subj); | ||
77 | |||
72 | typedef std::list<FbTk::FbWindow *> ClientList; | 78 | typedef std::list<FbTk::FbWindow *> ClientList; |
73 | ClientList::iterator findClient(Window win); | 79 | ClientList::iterator findClient(Window win); |
74 | 80 | ||
@@ -76,6 +82,9 @@ private: | |||
76 | void removeAllClients(); | 82 | void removeAllClients(); |
77 | 83 | ||
78 | FbTk::FbWindow m_window; | 84 | FbTk::FbWindow m_window; |
85 | ButtonTheme& m_theme; | ||
86 | BScreen& m_screen; | ||
87 | Pixmap m_pixmap; | ||
79 | 88 | ||
80 | std::auto_ptr<AtomHandler> m_handler; | 89 | std::auto_ptr<AtomHandler> m_handler; |
81 | 90 | ||