aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Configmenu.hh69
1 files changed, 26 insertions, 43 deletions
diff --git a/src/Configmenu.hh b/src/Configmenu.hh
index 2e25860..8f97d0a 100644
--- a/src/Configmenu.hh
+++ b/src/Configmenu.hh
@@ -22,78 +22,61 @@
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: Configmenu.hh,v 1.5 2002/04/28 16:58:36 fluxgen Exp $ 25// $Id: Configmenu.hh,v 1.6 2002/10/15 09:50:38 fluxgen Exp $
26 26
27#ifndef CONFIGMENU_HH 27#ifndef CONFIGMENU_HH
28#define CONFIGMENU_HH 28#define CONFIGMENU_HH
29 29
30// forward declaration
31class Configmenu;
32
33#include "Basemenu.hh" 30#include "Basemenu.hh"
34#include "Screen.hh" 31
35#include "fluxbox.hh" 32class BScreen;
36 33
37class Configmenu : public Basemenu { 34class Configmenu : public Basemenu {
35public:
36 explicit Configmenu(BScreen *scr);
37 virtual ~Configmenu();
38
39 Basemenu &focusmenu() { return m_focusmenu; }
40 Basemenu &getPlacementmenu() { return m_placementmenu; }
41 Basemenu &getTabmenu() { return m_tabmenu; }
42
43 const Basemenu &focusmenu() const { return m_focusmenu; }
44 const Basemenu &placementmenu() const { return m_placementmenu; }
45 const Basemenu &tabmenu() const { return m_tabmenu; }
46
47 void reconfigure();
48
49protected:
50 virtual void itemSelected(int button, unsigned int index);
51
38private: 52private:
39 class Focusmenu : public Basemenu { 53 class Focusmenu : public Basemenu {
40 public: 54 public:
41 Focusmenu(Configmenu *); 55 explicit Focusmenu(BScreen *scr);
42 protected: 56 protected:
43 virtual void itemSelected(int button, unsigned int index); 57 virtual void itemSelected(int button, unsigned int index);
44
45 private:
46 Configmenu *configmenu;
47
48 }; 58 };
49 59
50 class Placementmenu : public Basemenu { 60 class Placementmenu : public Basemenu {
51 public: 61 public:
52 Placementmenu(Configmenu *); 62 explicit Placementmenu(BScreen *scr);
53 63
54 protected: 64 protected:
55 virtual void itemSelected(int button, unsigned int index); 65 virtual void itemSelected(int button, unsigned int index);
56
57 private:
58 Configmenu *configmenu;
59 }; 66 };
60 67
61 class Tabmenu : public Basemenu { 68 class Tabmenu : public Basemenu {
62 public: 69 public:
63 Tabmenu(Configmenu *); 70 explicit Tabmenu(BScreen *scr);
64 protected: 71 protected:
65 virtual void itemSelected(int button, unsigned int index); 72 virtual void itemSelected(int button, unsigned int index);
66 private: 73 private:
67 Configmenu *configmenu;
68 void setSelected(); 74 void setSelected();
69 }; 75 };
70 76
71 BScreen *screen; 77 Focusmenu m_focusmenu;
72 Focusmenu *focusmenu; 78 Placementmenu m_placementmenu;
73 Placementmenu *placementmenu; 79 Tabmenu m_tabmenu;
74 Tabmenu *tabmenu;
75
76 friend class Focusmenu;
77 friend class Placementmenu;
78 friend class Tabmenu;
79
80
81protected:
82 virtual void itemSelected(int button, unsigned int index);
83
84
85public:
86 Configmenu(BScreen *);
87 virtual ~Configmenu();
88 inline Basemenu *getFocusmenu() { return focusmenu; }
89 inline Basemenu *getPlacementmenu() { return placementmenu; }
90 inline Basemenu *getTabmenu() { return tabmenu; }
91
92 inline const Basemenu *getFocusmenu() const { return focusmenu; }
93 inline const Basemenu *getPlacementmenu() const { return placementmenu; }
94 inline const Basemenu *getTabmenu() const { return tabmenu; }
95
96 void reconfigure();
97}; 80};
98 81
99 82