diff options
-rw-r--r-- | src/ClientMenu.hh | 20 | ||||
-rw-r--r-- | src/WorkspaceMenu.hh | 9 |
2 files changed, 24 insertions, 5 deletions
diff --git a/src/ClientMenu.hh b/src/ClientMenu.hh index ca01e43..8a1878b 100644 --- a/src/ClientMenu.hh +++ b/src/ClientMenu.hh | |||
@@ -30,21 +30,31 @@ | |||
30 | 30 | ||
31 | class BScreen; | 31 | class BScreen; |
32 | class FluxboxWindow; | 32 | class FluxboxWindow; |
33 | 33 | /** | |
34 | * A menu holding a set of client menus. | ||
35 | * @see WorkspaceMenu | ||
36 | */ | ||
34 | class ClientMenu: public FbMenu { | 37 | class ClientMenu: public FbMenu { |
35 | public: | 38 | public: |
36 | 39 | ||
37 | typedef std::list<FluxboxWindow *> Focusables; | 40 | typedef std::list<FluxboxWindow *> Focusables; |
38 | 41 | ||
39 | ClientMenu(BScreen &screen, Focusables &clients, FbTk::Subject *refresh); | 42 | /** |
43 | * @param screen the screen to show this menu on | ||
44 | * @param client a list of clients to show in this menu | ||
45 | * @param refresh the refresh subject to listen to | ||
46 | */ | ||
47 | ClientMenu(BScreen &screen, | ||
48 | Focusables &clients, FbTk::Subject *refresh); | ||
40 | 49 | ||
41 | private: | 50 | private: |
42 | 51 | /// refresh the entire menu | |
43 | void refreshMenu(); | 52 | void refreshMenu(); |
53 | /// called when receiving a subject signal | ||
44 | void update(FbTk::Subject *subj); | 54 | void update(FbTk::Subject *subj); |
45 | 55 | ||
46 | Focusables &m_list; | 56 | Focusables &m_list; ///< clients |
47 | FbTk::Subject *m_refresh_sig; | 57 | FbTk::Subject *m_refresh_sig; ///< signal to listen to |
48 | }; | 58 | }; |
49 | 59 | ||
50 | #endif // CLIENTMENU_HH | 60 | #endif // CLIENTMENU_HH |
diff --git a/src/WorkspaceMenu.hh b/src/WorkspaceMenu.hh index 2a425a3..1b06dc6 100644 --- a/src/WorkspaceMenu.hh +++ b/src/WorkspaceMenu.hh | |||
@@ -28,12 +28,21 @@ | |||
28 | 28 | ||
29 | class BScreen; | 29 | class BScreen; |
30 | 30 | ||
31 | /** | ||
32 | * A menu specific for workspace. | ||
33 | * Contains some simple workspace commands | ||
34 | * such as new/delete workspace and edit | ||
35 | * workspace name. | ||
36 | * It also contains client menus for all clients. | ||
37 | */ | ||
31 | class WorkspaceMenu: public FbMenu { | 38 | class WorkspaceMenu: public FbMenu { |
32 | public: | 39 | public: |
33 | explicit WorkspaceMenu(BScreen &screen); | 40 | explicit WorkspaceMenu(BScreen &screen); |
34 | virtual ~WorkspaceMenu() { } | 41 | virtual ~WorkspaceMenu() { } |
42 | /// called when a subject is sending a signal | ||
35 | void update(FbTk::Subject *subj); | 43 | void update(FbTk::Subject *subj); |
36 | private: | 44 | private: |
45 | /// initialize menu for the screen | ||
37 | void init(BScreen &screen); | 46 | void init(BScreen &screen); |
38 | }; | 47 | }; |
39 | 48 | ||