]> git.decadent.org.uk Git - ion3.git/blobdiff - ioncore/screen.h
Imported Upstream version 20090110
[ion3.git] / ioncore / screen.h
index 11c83faaac04d85be06e7ddf6135a44a25936a92..36c3c5407c2caa7d6b2d6ceb169f9223ebbe9349 100644 (file)
@@ -1,12 +1,9 @@
 /*
  * ion/ioncore/screen.h
  *
- * Copyright (c) Tuomo Valkonen 1999-2006
+ * Copyright (c) Tuomo Valkonen 1999-2009
  *
- * Ion is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2.1 of the License, or
- * (at your option) any later version.
+ * See the included file LICENSE for details.
  */
 
 #ifndef ION_IONCORE_SCREEN_H
@@ -17,7 +14,6 @@
 #include "common.h"
 #include "mplex.h"
 #include "rectangle.h"
-#include "rootwin.h"
 #include "pholder.h"
 
 #define FOR_ALL_SCREENS(SCR)   \
@@ -43,16 +39,21 @@ DECLCLASS(WScreen){
     int id;
     Atom atom_workspace;
     bool uses_root;
-    int rotation;
     WRectangle managed_off;
     WScreen *next_scr, *prev_scr;
     Watch notifywin_watch;
     Watch infowin_watch;
 };
 
-extern WScreen *create_screen(WRootWin *rootwin, int id, 
-                              const WFitParams *fp,
-                              bool useroot);
+/* rootwin should only be set if parent is NULL, and this WScreen is
+ * actually a root window.
+ */
+extern bool screen_init(WScreen *scr, WRootWin *parent, 
+                        const WFitParams *fp, int id, Window rootwin);
+
+extern WScreen *create_screen(WRootWin *parent, const WFitParams *fp, int id);
+
+extern void screen_deinit(WScreen *scr);
 
 extern int screen_id(WScreen *scr);
 
@@ -60,18 +61,6 @@ extern void screen_set_managed_offset(WScreen *scr, const WRectangle *off);
 
 extern bool screen_init_layout(WScreen *scr, ExtlTab tab);
 
-extern void screen_notify(WScreen *scr, const char *notstr);
-extern void screen_unnotify(WScreen *scr);
-extern void screen_windowinfo(WScreen *scr, const char *name, const char *attr);
-extern void screen_nowindowinfo(WScreen *scr);
-
-extern WPHolder *screen_get_rescue_pholder_for(WScreen *scr, WRegion *mgd);
-
-/* For viewports corresponding to Xinerama rootwins <id> is initially set
- * to the Xinerama screen number. When Xinerama is not enabled, <id> is
- * the X screen number (which is the same for all Xinerama rootwins).
- * For all other viewports <id> is undefined.
- */
 extern WScreen *ioncore_find_screen_id(int id);
 extern WScreen *ioncore_goto_screen_id(int id);
 extern WScreen *ioncore_goto_next_screen();