diff options
Diffstat (limited to 'src/fluxbox.hh')
-rw-r--r-- | src/fluxbox.hh | 43 |
1 files changed, 13 insertions, 30 deletions
diff --git a/src/fluxbox.hh b/src/fluxbox.hh index 361b1f8..c73429a 100644 --- a/src/fluxbox.hh +++ b/src/fluxbox.hh | |||
@@ -22,7 +22,7 @@ | |||
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.14 2002/03/19 00:16:44 fluxgen Exp $ | 25 | // $Id: fluxbox.hh,v 1.15 2002/04/09 12:09:03 cout Exp $ |
26 | 26 | ||
27 | #ifndef FLUXBOX_HH | 27 | #ifndef FLUXBOX_HH |
28 | #define FLUXBOX_HH | 28 | #define FLUXBOX_HH |
@@ -49,7 +49,6 @@ | |||
49 | #include "Keys.hh" | 49 | #include "Keys.hh" |
50 | #include "BaseDisplay.hh" | 50 | #include "BaseDisplay.hh" |
51 | #include "Image.hh" | 51 | #include "Image.hh" |
52 | #include "LinkedList.hh" | ||
53 | #include "Timer.hh" | 52 | #include "Timer.hh" |
54 | #include "Window.hh" | 53 | #include "Window.hh" |
55 | #include "Tab.hh" | 54 | #include "Tab.hh" |
@@ -60,6 +59,8 @@ | |||
60 | 59 | ||
61 | #include <string> | 60 | #include <string> |
62 | #include <vector> | 61 | #include <vector> |
62 | #include <map> | ||
63 | #include <list> | ||
63 | 64 | ||
64 | class Fluxbox : public BaseDisplay, public TimeoutHandler { | 65 | class Fluxbox : public BaseDisplay, public TimeoutHandler { |
65 | public: | 66 | public: |
@@ -161,20 +162,6 @@ public: | |||
161 | enum { B_AMERICANDATE = 1, B_EUROPEANDATE }; | 162 | enum { B_AMERICANDATE = 1, B_EUROPEANDATE }; |
162 | #endif // HAVE_STRFTIME | 163 | #endif // HAVE_STRFTIME |
163 | 164 | ||
164 | template <class Z> | ||
165 | class DataSearch { | ||
166 | private: | ||
167 | Window window; | ||
168 | Z *data; | ||
169 | |||
170 | |||
171 | public: | ||
172 | DataSearch(Window w, Z *d) { window = w; data = d; } | ||
173 | |||
174 | inline const Window &getWindow(void) const { return window; } | ||
175 | inline Z *getData(void) { return data; } | ||
176 | }; | ||
177 | |||
178 | typedef std::vector<Fluxbox::Titlebar> TitlebarList; | 165 | typedef std::vector<Fluxbox::Titlebar> TitlebarList; |
179 | 166 | ||
180 | private: | 167 | private: |
@@ -214,27 +201,23 @@ private: | |||
214 | //std::vector<std::string> parseTitleArgs(const char *arg); | 201 | //std::vector<std::string> parseTitleArgs(const char *arg); |
215 | void setTitlebar(std::vector<Fluxbox::Titlebar>& dir, const char *arg); | 202 | void setTitlebar(std::vector<Fluxbox::Titlebar>& dir, const char *arg); |
216 | 203 | ||
217 | typedef DataSearch<FluxboxWindow> WindowSearch; | 204 | std::map<Window, FluxboxWindow *> windowSearch; |
218 | LinkedList<WindowSearch> *windowSearchList, *groupSearchList; | 205 | std::map<Window, FluxboxWindow *> groupSearch; |
219 | typedef DataSearch<Basemenu> MenuSearch; | 206 | std::map<Window, Basemenu *> menuSearch; |
220 | LinkedList<MenuSearch> *menuSearchList; | 207 | std::map<Window, Toolbar *> toolbarSearch; |
221 | typedef DataSearch<Toolbar> ToolbarSearch; | 208 | std::map<Window, Tab *> tabSearch; |
222 | LinkedList<ToolbarSearch> *toolbarSearchList; | ||
223 | typedef DataSearch<Tab> TabSearch; | ||
224 | LinkedList<TabSearch> *tabSearchList; | ||
225 | 209 | ||
226 | #ifdef SLIT | 210 | #ifdef SLIT |
227 | typedef DataSearch<Slit> SlitSearch; | 211 | std::map<Window, Slit *> slitSearch; |
228 | LinkedList<SlitSearch> *slitSearchList; | 212 | # ifdef KDE |
229 | #ifdef KDE | ||
230 | //For KDE dock applets | 213 | //For KDE dock applets |
231 | Atom kwm1_dockwindow; //KDE v1.x | 214 | Atom kwm1_dockwindow; //KDE v1.x |
232 | Atom kwm2_dockwindow; //KDE v2.x | 215 | Atom kwm2_dockwindow; //KDE v2.x |
233 | #endif//KDE | 216 | # endif//KDE |
234 | #endif // SLIT | 217 | #endif // SLIT |
235 | 218 | ||
236 | LinkedList<MenuTimestamp> *menuTimestamps; | 219 | std::list<MenuTimestamp *> menuTimestamps; |
237 | LinkedList<BScreen> *screenList; | 220 | std::list<BScreen *> screenList; |
238 | 221 | ||
239 | FluxboxWindow *focused_window, *masked_window; | 222 | FluxboxWindow *focused_window, *masked_window; |
240 | BTimer timer; | 223 | BTimer timer; |