diff options
| author | Dana Jansens <danakj@orodu.net> | 2002-05-26 20:25:38 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2002-05-26 20:25:38 +0000 |
| commit | 0305cbdc3ae8525c74b2bb9b23884035549e3407 (patch) | |
| tree | b7eafbfbc759adeed8731227bd7f6cedd3f5ed05 /src/Slit.hh | |
| parent | 60b2990e397faccd6a2f4f1cf7f2285e45fb1876 (diff) | |
add Configuration class for generic configuration data load/save-ing.
use Configuration class throughout code. no longer save rc file on exit, save when any options are changed.
Diffstat (limited to 'src/Slit.hh')
| -rw-r--r-- | src/Slit.hh | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/src/Slit.hh b/src/Slit.hh index c0484c2f..85b49d7d 100644 --- a/src/Slit.hh +++ b/src/Slit.hh @@ -30,6 +30,7 @@ extern "C" { } #include <list> +#include <string> #include "Screen.hh" #include "Basemenu.hh" @@ -44,24 +45,30 @@ private: private: Directionmenu(const Directionmenu&); Directionmenu& operator=(const Directionmenu&); + Slit *slit; protected: virtual void itemSelected(int button, unsigned int index); - + virtual void setValues(void); + public: Directionmenu(Slitmenu *sm); + virtual void reconfigure(void); }; class Placementmenu : public Basemenu { private: Placementmenu(const Placementmenu&); Placementmenu& operator=(const Placementmenu&); + Slit *slit; protected: virtual void itemSelected(int buton, unsigned int index); + virtual void setValues(void); public: Placementmenu(Slitmenu *sm); + virtual void reconfigure(void); }; Directionmenu *directionmenu; @@ -103,10 +110,13 @@ private: typedef std::list<SlitClient*> SlitClientList; bool on_top, hidden, do_auto_hide; + int direction, placement; + std::string slitstr; Display *display; Blackbox *blackbox; BScreen *screen; + Configuration *config; BTimer *timer; Strut strut; @@ -137,6 +147,13 @@ public: inline bool isOnTop(void) const { return on_top; } inline bool isHidden(void) const { return hidden; } inline bool doAutoHide(void) const { return do_auto_hide; } + inline int getPlacement(void) const { return placement; } + inline int getDirection(void) const { return direction; } + + void saveOnTop(bool); + void saveAutoHide(bool); + void savePlacement(int); + void saveDirection(int); inline Slitmenu *getMenu(void) { return slitmenu; } @@ -149,13 +166,13 @@ public: inline unsigned int getWidth(void) const { return frame.rect.width(); } inline unsigned int getExposedWidth(void) const { - if (screen->getSlitDirection() == Vertical && do_auto_hide) + if (direction == Vertical && do_auto_hide) return screen->getBevelWidth(); return frame.rect.width(); } inline unsigned int getHeight(void) const { return frame.rect.height(); } inline unsigned int getExposedHeight(void) const { - if (screen->getSlitDirection() == Horizontal && do_auto_hide) + if (direction == Horizontal && do_auto_hide) return screen->getBevelWidth(); return frame.rect.height(); } @@ -163,6 +180,8 @@ public: void addClient(Window w); void removeClient(SlitClient *client, bool remap = True); void removeClient(Window w, bool remap = True); + void load_rc(void); + void save_rc(void); void reconfigure(void); void updateSlit(void); void reposition(void); |
