aboutsummaryrefslogtreecommitdiff
path: root/src/Screen.hh
diff options
context:
space:
mode:
authorrathnor <rathnor>2003-05-19 15:32:47 (GMT)
committerrathnor <rathnor>2003-05-19 15:32:47 (GMT)
commitb68b1c7623be09100bb1e6a0d3923d6e1c86a91a (patch)
treeee8c1f69ab45b29943565384c877df15f3a9634d /src/Screen.hh
parent3b2afa5a305f0106baef32068066b7d41eeab777 (diff)
downloadfluxbox_pavel-b68b1c7623be09100bb1e6a0d3923d6e1c86a91a.zip
fluxbox_pavel-b68b1c7623be09100bb1e6a0d3923d6e1c86a91a.tar.bz2
xinerama updates
Diffstat (limited to 'src/Screen.hh')
-rw-r--r--src/Screen.hh27
1 files changed, 12 insertions, 15 deletions
diff --git a/src/Screen.hh b/src/Screen.hh
index f5585c7..59a26c1 100644
--- a/src/Screen.hh
+++ b/src/Screen.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: Screen.hh,v 1.100 2003/05/19 14:26:30 rathnor Exp $ 25// $Id: Screen.hh,v 1.101 2003/05/19 15:32:46 rathnor Exp $
26 26
27#ifndef SCREEN_HH 27#ifndef SCREEN_HH
28#define SCREEN_HH 28#define SCREEN_HH
@@ -58,6 +58,7 @@ class MenuTheme;
58class Menu; 58class Menu;
59class ImageControl; 59class ImageControl;
60class XLayerItem; 60class XLayerItem;
61class FbWindow;
61}; 62};
62 63
63/// Handles screen connection, screen clients and workspaces 64/// Handles screen connection, screen clients and workspaces
@@ -134,12 +135,12 @@ public:
134 unsigned int currentWorkspaceID() const; 135 unsigned int currentWorkspaceID() const;
135 Pixmap rootPixmap() const; 136 Pixmap rootPixmap() const;
136 /* 137 /*
137 maximum screen surface 138 maximum screen bounds for given window
138 */ 139 */
139 unsigned int maxLeft() const; 140 unsigned int maxLeft(FbTk::FbWindow &win) const;
140 unsigned int maxRight() const; 141 unsigned int maxRight(FbTk::FbWindow &win) const;
141 unsigned int maxTop() const; 142 unsigned int maxTop(FbTk::FbWindow &win) const;
142 unsigned int maxBottom() const; 143 unsigned int maxBottom(FbTk::FbWindow &win) const;
143 144
144 inline unsigned int width() const { return rootWindow().width(); } 145 inline unsigned int width() const { return rootWindow().width(); }
145 inline unsigned int height() const { return rootWindow().height(); } 146 inline unsigned int height() const { return rootWindow().height(); }
@@ -296,12 +297,11 @@ public:
296 /// (and maximized windows?) 297 /// (and maximized windows?)
297 void updateSize(); 298 void updateSize();
298 299
299#ifdef XINERAMA
300 // Xinerama-related functions 300 // Xinerama-related functions
301 inline bool hasXinerama() const { return m_xinerama_avail; } 301 inline bool hasXinerama() const { return m_xinerama_avail; }
302 inline int numHeads() const { return m_xinerama_num_heads; } 302 inline int numHeads() const { return m_xinerama_num_heads; }
303 303
304 void initXinerama(Display *display); 304 void initXinerama();
305 305
306 int getHead(int x, int y) const; 306 int getHead(int x, int y) const;
307 int getCurrHead() const; 307 int getCurrHead() const;
@@ -310,14 +310,13 @@ public:
310 int getHeadWidth(int head) const; 310 int getHeadWidth(int head) const;
311 int getHeadHeight(int head) const; 311 int getHeadHeight(int head) const;
312 312
313 // magic to allow us to have "on head" placement without 313 // magic to allow us to have "on head" placement (menu) without
314 // the object really knowing about it. 314 // the object really knowing about it.
315 template <typename OnHeadObject> 315 template <typename OnHeadObject>
316 int getOnHead(OnHeadObject &obj); 316 int getOnHead(OnHeadObject &obj);
317 317
318 template <typename OnHeadObject> 318 template <typename OnHeadObject>
319 void setOnHead(OnHeadObject &obj, int head); 319 void setOnHead(OnHeadObject &obj, int head);
320#endif // XINERAMA
321 320
322 // notify netizens 321 // notify netizens
323 void updateNetizenCurrentWorkspace(); 322 void updateNetizenCurrentWorkspace();
@@ -447,19 +446,17 @@ private:
447 446
448 std::auto_ptr<ToolbarHandler> m_toolbarhandler; 447 std::auto_ptr<ToolbarHandler> m_toolbarhandler;
449 448
450#ifdef XINERAMA
451 // Xinerama related private data
452 bool m_xinerama_avail; 449 bool m_xinerama_avail;
453 int m_xinerama_num_heads; 450 int m_xinerama_num_heads;
451
452#ifdef XINERAMA
453 // Xinerama related private data
454 454
455 int m_xinerama_center_x, m_xinerama_center_y; 455 int m_xinerama_center_x, m_xinerama_center_y;
456 456
457 struct XineramaHeadInfo { 457 struct XineramaHeadInfo {
458 int x, y, width, height; 458 int x, y, width, height;
459 } *m_xinerama_headinfo; 459 } *m_xinerama_headinfo;
460
461
462
463#endif 460#endif
464}; 461};
465 462