diff options
Diffstat (limited to 'src/BaseDisplay.hh')
-rw-r--r-- | src/BaseDisplay.hh | 63 |
1 files changed, 32 insertions, 31 deletions
diff --git a/src/BaseDisplay.hh b/src/BaseDisplay.hh index c25860e..8513699 100644 --- a/src/BaseDisplay.hh +++ b/src/BaseDisplay.hh | |||
@@ -1,3 +1,6 @@ | |||
1 | // BaseDisplay.hh for Fluxbox Window Manager | ||
2 | // Copyright (c) 2001 - 2002 Henrik Kinnunen (fluxgen@linuxmail.org) | ||
3 | // | ||
1 | // BaseDisplay.hh for Blackbox - an X11 Window manager | 4 | // BaseDisplay.hh for Blackbox - an X11 Window manager |
2 | // Copyright (c) 1997 - 2000 Brad Hughes (bhughes@tcac.net) | 5 | // Copyright (c) 1997 - 2000 Brad Hughes (bhughes@tcac.net) |
3 | // | 6 | // |
@@ -19,6 +22,8 @@ | |||
19 | // 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 |
20 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
21 | 24 | ||
25 | // $Id: BaseDisplay.hh,v 1.6 2002/01/10 12:52:51 fluxgen Exp $ | ||
26 | |||
22 | #ifndef _BASEDISPLAY_HH_ | 27 | #ifndef _BASEDISPLAY_HH_ |
23 | #define _BASEDISPLAY_HH_ | 28 | #define _BASEDISPLAY_HH_ |
24 | 29 | ||
@@ -32,32 +37,6 @@ class ScreenInfo; | |||
32 | #include "LinkedList.hh" | 37 | #include "LinkedList.hh" |
33 | #include "Timer.hh" | 38 | #include "Timer.hh" |
34 | 39 | ||
35 | #define AttribShaded (1l << 0) | ||
36 | #define AttribMaxHoriz (1l << 1) | ||
37 | #define AttribMaxVert (1l << 2) | ||
38 | #define AttribOmnipresent (1l << 3) | ||
39 | #define AttribWorkspace (1l << 4) | ||
40 | #define AttribStack (1l << 5) | ||
41 | #define AttribDecoration (1l << 6) | ||
42 | |||
43 | #define StackTop (0) | ||
44 | #define StackNormal (1) | ||
45 | #define StackBottom (2) | ||
46 | |||
47 | #define DecorNone (0) | ||
48 | #define DecorNormal (1) | ||
49 | #define DecorTiny (2) | ||
50 | #define DecorTool (3) | ||
51 | |||
52 | typedef struct _blackbox_hints { | ||
53 | unsigned long flags, attrib, workspace, stack, decoration; | ||
54 | } BlackboxHints; | ||
55 | |||
56 | typedef struct _blackbox_attributes { | ||
57 | unsigned long flags, attrib, workspace, stack; | ||
58 | int premax_x, premax_y; | ||
59 | unsigned int premax_w, premax_h; | ||
60 | } BlackboxAttributes; | ||
61 | 40 | ||
62 | #define PropBlackboxHintsElements (5) | 41 | #define PropBlackboxHintsElements (5) |
63 | #define PropBlackboxAttributesElements (8) | 42 | #define PropBlackboxAttributesElements (8) |
@@ -66,7 +45,6 @@ typedef struct _blackbox_attributes { | |||
66 | void bexec(const char *, char *); | 45 | void bexec(const char *, char *); |
67 | #endif // !__EMX__ | 46 | #endif // !__EMX__ |
68 | 47 | ||
69 | char *bstrdup(const char *); | ||
70 | template <typename Z> inline Z min(Z a, Z b) { return ((a < b) ? a : b); } | 48 | template <typename Z> inline Z min(Z a, Z b) { return ((a < b) ? a : b); } |
71 | template <typename Z> inline Z max(Z a, Z b) { return ((a > b) ? a : b); } | 49 | template <typename Z> inline Z max(Z a, Z b) { return ((a > b) ? a : b); } |
72 | 50 | ||
@@ -75,9 +53,32 @@ class BaseDisplay { | |||
75 | public: | 53 | public: |
76 | BaseDisplay(char *, char * = 0); | 54 | BaseDisplay(char *, char * = 0); |
77 | virtual ~BaseDisplay(void); | 55 | virtual ~BaseDisplay(void); |
56 | |||
57 | enum Attrib { | ||
58 | ATTRIB_SHADED = 0x01, | ||
59 | ATTRIB_MAXHORIZ = 0x02, | ||
60 | ATTRIB_MAXVERT = 0x04, | ||
61 | ATTRIB_OMNIPRESENT = 0x08, | ||
62 | ATTRIB_WORKSPACE = 0x10, | ||
63 | ATTRIB_STACK = 0x20, | ||
64 | ATTRIB_DECORATION = 0x40 | ||
65 | }; | ||
66 | enum Decor {DECOR_NONE=0, DECOR_NORMAL, DECOR_TINY, DECOR_TOOL}; | ||
67 | enum Stack {STACK_TOP=0, STACK_NORMAL, STACK_BOTTOM}; | ||
68 | |||
69 | typedef struct _blackbox_hints { | ||
70 | unsigned long flags, attrib, workspace, stack; | ||
71 | Decor decoration; | ||
72 | } BlackboxHints; | ||
73 | |||
74 | typedef struct _blackbox_attributes { | ||
75 | unsigned long flags, attrib, workspace, stack; | ||
76 | int premax_x, premax_y; | ||
77 | unsigned int premax_w, premax_h; | ||
78 | } BlackboxAttributes; | ||
78 | 79 | ||
79 | #ifdef GNOME | 80 | #ifdef GNOME |
80 | inline Atom *getGnomeListAtoms() { return gnome_atom_list; } | 81 | // inline Atom *getGnomeListAtoms() { return gnome_atom_list; } |
81 | inline Atom &getGnomeProtAtom() { return gnome_wm_prot; } | 82 | inline Atom &getGnomeProtAtom() { return gnome_wm_prot; } |
82 | inline Atom &getGnomeClientListAtom() { return gnome_wm_win_client_list; } | 83 | inline Atom &getGnomeClientListAtom() { return gnome_wm_win_client_list; } |
83 | inline Atom &getGnomeSupportingWMCheckAtom() { return gnome_wm_supporting_wm_check; } | 84 | inline Atom &getGnomeSupportingWMCheckAtom() { return gnome_wm_supporting_wm_check; } |
@@ -307,14 +308,14 @@ private: | |||
307 | #endif // NEWWMSPEC | 308 | #endif // NEWWMSPEC |
308 | 309 | ||
309 | #ifdef GNOME | 310 | #ifdef GNOME |
310 | union { | 311 | // union { |
311 | Atom gnome_wm_win_layer, gnome_wm_win_state, gnome_wm_win_hints, | 312 | Atom gnome_wm_win_layer, gnome_wm_win_state, gnome_wm_win_hints, |
312 | gnome_wm_win_app_state, gnome_wm_win_expanded_size, | 313 | gnome_wm_win_app_state, gnome_wm_win_expanded_size, |
313 | gnome_wm_win_icons, gnome_wm_win_workspace, | 314 | gnome_wm_win_icons, gnome_wm_win_workspace, |
314 | gnome_wm_win_workspace_count, gnome_wm_win_workspace_names, | 315 | gnome_wm_win_workspace_count, gnome_wm_win_workspace_names, |
315 | gnome_wm_win_client_list; | 316 | gnome_wm_win_client_list; |
316 | Atom gnome_atom_list[10]; | 317 | // Atom gnome_atom_list[10]; |
317 | }; | 318 | // }; |
318 | Atom gnome_wm_prot; | 319 | Atom gnome_wm_prot; |
319 | Atom gnome_wm_supporting_wm_check; | 320 | Atom gnome_wm_supporting_wm_check; |
320 | #endif // GNOME | 321 | #endif // GNOME |