aboutsummaryrefslogtreecommitdiff
path: root/src/IconbarTool.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/IconbarTool.hh')
-rw-r--r--src/IconbarTool.hh23
1 files changed, 22 insertions, 1 deletions
diff --git a/src/IconbarTool.hh b/src/IconbarTool.hh
index af1ba37..278bf21 100644
--- a/src/IconbarTool.hh
+++ b/src/IconbarTool.hh
@@ -20,7 +20,7 @@
20// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 20// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21// DEALINGS IN THE SOFTWARE. 21// DEALINGS IN THE SOFTWARE.
22 22
23// $Id: IconbarTool.hh,v 1.17 2004/10/10 16:11:25 akir Exp $ 23// $Id: IconbarTool.hh,v 1.18 2004/10/22 00:35:29 akir Exp $
24 24
25#ifndef ICONBARTOOL_HH 25#ifndef ICONBARTOOL_HH
26#define ICONBARTOOL_HH 26#define ICONBARTOOL_HH
@@ -54,6 +54,20 @@ public:
54 ALLWINDOWS ///< all windows and all icons from all workspaces 54 ALLWINDOWS ///< all windows and all icons from all workspaces
55 }; 55 };
56 56
57 /// deiconfiy mode for iconbuttons
58 enum DeiconifyMode {
59 CURRENT, ///< raise the window on the current workspace
60 FOLLOW, ///< raise the window on the workspace it was iconified from
61 SEMIFOLLOW, ///< like current for iconified windows, and like follow for others
62 };
63
64 /// wheeling on iconbutton
65 enum WheelMode {
66 OFF, ///< no wheeling, default mode
67 ON, ///< enabled wheeling
68 SCREEN ///< in perfect harmony with desktopwheeling-value
69 };
70
57 IconbarTool(const FbTk::FbWindow &parent, IconbarTheme &theme, 71 IconbarTool(const FbTk::FbWindow &parent, IconbarTheme &theme,
58 BScreen &screen, FbTk::Menu &menu); 72 BScreen &screen, FbTk::Menu &menu);
59 ~IconbarTool(); 73 ~IconbarTool();
@@ -68,12 +82,17 @@ public:
68 void hide(); 82 void hide();
69 void setAlignment(Container::Alignment a); 83 void setAlignment(Container::Alignment a);
70 void setMode(Mode mode); 84 void setMode(Mode mode);
85 void setDeiconifyMode(DeiconifyMode mode);
86 void setWheelMode(WheelMode mode);
71 87
72 unsigned int width() const; 88 unsigned int width() const;
73 unsigned int height() const; 89 unsigned int height() const;
74 unsigned int borderWidth() const; 90 unsigned int borderWidth() const;
75 91
76 Mode mode() const { return *m_rc_mode; } 92 Mode mode() const { return *m_rc_mode; }
93 DeiconifyMode deiconifyMode() const { return *m_deiconify_mode; }
94 WheelMode wheelMode() const { return *m_wheel_mode; }
95
77 Container::Alignment alignment() const { return m_icon_container.alignment(); } 96 Container::Alignment alignment() const { return m_icon_container.alignment(); }
78private: 97private:
79 /// @return button associated with window 98 /// @return button associated with window
@@ -117,6 +136,8 @@ private:
117 136
118 IconList m_icon_list; 137 IconList m_icon_list;
119 FbTk::Resource<Mode> m_rc_mode; 138 FbTk::Resource<Mode> m_rc_mode;
139 FbTk::Resource<DeiconifyMode> m_deiconify_mode;
140 FbTk::Resource<WheelMode> m_wheel_mode;
120 FbTk::Resource<Container::Alignment> m_rc_alignment; ///< alignment of buttons 141 FbTk::Resource<Container::Alignment> m_rc_alignment; ///< alignment of buttons
121 FbTk::Resource<int> m_rc_client_width; ///< size of client button in LEFT/RIGHT mode 142 FbTk::Resource<int> m_rc_client_width; ///< size of client button in LEFT/RIGHT mode
122 FbTk::Resource<unsigned int> m_rc_client_padding; ///< padding of the text 143 FbTk::Resource<unsigned int> m_rc_client_padding; ///< padding of the text