aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Windowmenu.hh72
1 files changed, 33 insertions, 39 deletions
diff --git a/src/Windowmenu.hh b/src/Windowmenu.hh
index 6ed6852..9c82832 100644
--- a/src/Windowmenu.hh
+++ b/src/Windowmenu.hh
@@ -22,67 +22,61 @@
22#ifndef WINDOWMENU_HH 22#ifndef WINDOWMENU_HH
23#define WINDOWMENU_HH 23#define WINDOWMENU_HH
24 24
25// forward declaration 25#include "Basemenu.hh"
26class Windowmenu;
27class SendtoWorkspaceMenu;
28 26
29class Fluxbox;
30class FluxboxWindow; 27class FluxboxWindow;
31class Toolbar;
32
33#include "Basemenu.hh"
34 28
35 29
36class Windowmenu : public Basemenu { 30class Windowmenu : public Basemenu {
31public:
32 Windowmenu(FluxboxWindow &fbwin);
33 virtual ~Windowmenu();
34
35 const Basemenu &getSendToMenu() const { return sendToMenu; }
36 Basemenu &getSendToMenu() { return sendToMenu; }
37 const Basemenu &getSendGroupToMenu() const { return sendGroupToMenu; }
38 Basemenu &getSendGroupToMenu() { return sendGroupToMenu; }
39
40 void reconfigure();
41 void setClosable();
42
43 virtual void show();
44
45protected:
46 virtual void itemSelected(int button, unsigned int index);
47
37private: 48private:
38 FluxboxWindow *window; 49 FluxboxWindow &window;
39 BScreen *screen; 50 BScreen *screen;
40 51
41 52
42 class SendtoWorkspacemenu : public Basemenu { 53 class SendtoWorkspacemenu : public Basemenu {
43 private:
44 Windowmenu *windowmenu;
45
46 protected:
47 virtual void itemSelected(int button, unsigned int index);
48
49 public: 54 public:
50 SendtoWorkspacemenu(Windowmenu *); 55 SendtoWorkspacemenu(Windowmenu *);
51 inline Windowmenu *getWindowMenu() const { return windowmenu; } 56 inline Windowmenu *getWindowMenu() const { return windowmenu; }
52 void update(void); 57 void update();
58
59 virtual void show();
60 protected:
61 virtual void itemSelected(int button, unsigned int index);
53 62
54 virtual void show(void); 63 private:
64 Windowmenu *windowmenu;
65
55 }; 66 };
56 67
57 class SendGroupToWorkspacemenu : public SendtoWorkspacemenu { 68 class SendGroupToWorkspacemenu : public SendtoWorkspacemenu {
58 protected:
59 virtual void itemSelected(int button, unsigned int index);
60 public: 69 public:
61 SendGroupToWorkspacemenu(Windowmenu *winmenu); 70 SendGroupToWorkspacemenu(Windowmenu *winmenu);
62 71
72 protected:
73 virtual void itemSelected(int button, unsigned int index);
63 }; 74 };
64 75
65 SendtoWorkspacemenu *sendToMenu; 76 SendtoWorkspacemenu sendToMenu;
66 SendGroupToWorkspacemenu *sendGroupToMenu; 77 SendGroupToWorkspacemenu sendGroupToMenu;
67
68 friend class SendtoWorkspacemenu;
69 friend class SendGroupToWorkspacemenu;
70
71protected:
72 virtual void itemSelected(int button, unsigned int index);
73
74
75public:
76 Windowmenu(FluxboxWindow *);
77 virtual ~Windowmenu(void);
78
79 inline Basemenu *getSendToMenu(void) { return static_cast<Basemenu *>(sendToMenu); }
80 inline Basemenu *getSendGroupToMenu(void) { return static_cast<Basemenu *>(sendGroupToMenu); }
81 void reconfigure(void);
82 void setClosable(void);
83 78
84 virtual void show(void);
85}; 79};
86 80
87 81
88#endif // __Windowmenu_hh 82#endif // WINDOWMENU_HH