aboutsummaryrefslogtreecommitdiff
path: root/src/Slit.hh
diff options
context:
space:
mode:
authorrathnor <rathnor>2003-02-18 15:11:12 (GMT)
committerrathnor <rathnor>2003-02-18 15:11:12 (GMT)
commitb4ffe4fe21699c7123728aeeb99576a540b3694e (patch)
treef8a133be750f844f3c48f5a631fb8bf088544549 /src/Slit.hh
parentaa602770fbbd4e84154028d3181d275b81ea914d (diff)
downloadfluxbox-b4ffe4fe21699c7123728aeeb99576a540b3694e.zip
fluxbox-b4ffe4fe21699c7123728aeeb99576a540b3694e.tar.bz2
Added layer menus for windows, toolbar, and slit, plus associated
resources. Cleaned up some cruft from the previous layering setup.
Diffstat (limited to 'src/Slit.hh')
-rw-r--r--src/Slit.hh16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/Slit.hh b/src/Slit.hh
index 3a7c437..f39642f 100644
--- a/src/Slit.hh
+++ b/src/Slit.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: Slit.hh,v 1.18 2003/01/12 17:53:10 fluxgen Exp $ 25/// $Id: Slit.hh,v 1.19 2003/02/18 15:11:08 rathnor Exp $
26 26
27#ifndef SLIT_HH 27#ifndef SLIT_HH
28#define SLIT_HH 28#define SLIT_HH
@@ -30,6 +30,8 @@
30#include "Menu.hh" 30#include "Menu.hh"
31#include "FbWindow.hh" 31#include "FbWindow.hh"
32#include "Timer.hh" 32#include "Timer.hh"
33#include "XLayerItem.hh"
34#include "LayerMenu.hh"
33 35
34#include <X11/Xlib.h> 36#include <X11/Xlib.h>
35#include <X11/Xutil.h> 37#include <X11/Xutil.h>
@@ -54,10 +56,9 @@ public:
54 enum Placement { TOPLEFT = 1, CENTERLEFT, BOTTOMLEFT, TOPCENTER, BOTTOMCENTER, 56 enum Placement { TOPLEFT = 1, CENTERLEFT, BOTTOMLEFT, TOPCENTER, BOTTOMCENTER,
55 TOPRIGHT, CENTERRIGHT, BOTTOMRIGHT }; 57 TOPRIGHT, CENTERRIGHT, BOTTOMRIGHT };
56 58
57 explicit Slit(BScreen &screen, const char *filename = 0); 59 explicit Slit(BScreen &screen, FbTk::XLayer &layer, const char *filename = 0);
58 virtual ~Slit(); 60 virtual ~Slit();
59 61
60 inline bool isOnTop() const { return on_top; }
61 inline bool isHidden() const { return hidden; } 62 inline bool isHidden() const { return hidden; }
62 inline bool doAutoHide() const { return do_auto_hide; } 63 inline bool doAutoHide() const { return do_auto_hide; }
63 inline Direction direction() const { return m_direction; } 64 inline Direction direction() const { return m_direction; }
@@ -74,7 +75,6 @@ public:
74 75
75 void setDirection(Direction dir); 76 void setDirection(Direction dir);
76 void setPlacement(Placement place); 77 void setPlacement(Placement place);
77 void setOnTop(bool val);
78 void setAutoHide(bool val); 78 void setAutoHide(bool val);
79 void addClient(Window clientwin); 79 void addClient(Window clientwin);
80 void removeClient(Window clientwin, bool = true); 80 void removeClient(Window clientwin, bool = true);
@@ -101,6 +101,9 @@ public:
101 void configureRequestEvent(XConfigureRequestEvent &event); 101 void configureRequestEvent(XConfigureRequestEvent &event);
102 //@} 102 //@}
103 103
104 void moveToLayer(int layernum) { m_layeritem->moveToLayer(layernum); }
105 FbTk::XLayerItem &getLayerItem() { return *m_layeritem; }
106
104 virtual void timeout(); 107 virtual void timeout();
105 108
106 109
@@ -111,7 +114,7 @@ private:
111 void loadClientList(const char *filename); 114 void loadClientList(const char *filename);
112 void updateClientmenu(); 115 void updateClientmenu();
113 116
114 bool on_top, hidden, do_auto_hide; 117 bool hidden, do_auto_hide;
115 Direction m_direction; 118 Direction m_direction;
116 Placement m_placement; 119 Placement m_placement;
117 120
@@ -122,6 +125,7 @@ private:
122 125
123 SlitClients clientList; 126 SlitClients clientList;
124 FbTk::Menu slitmenu, placement_menu, clientlist_menu; 127 FbTk::Menu slitmenu, placement_menu, clientlist_menu;
128 LayerMenu<Slit> *slit_layermenu;
125 std::string clientListPath; 129 std::string clientListPath;
126 std::string m_filename; 130 std::string m_filename;
127 131
@@ -134,6 +138,8 @@ private:
134 } frame; 138 } frame;
135 // for KDE 139 // for KDE
136 Atom kwm1_dockwindow, kwm2_dockwindow; 140 Atom kwm1_dockwindow, kwm2_dockwindow;
141
142 FbTk::XLayerItem *m_layeritem;
137}; 143};
138 144
139 145