]> Dogcows Code - chaz/openbox/blobdiff - src/Configmenu.cc
add configmenu option for workspace warping
[chaz/openbox] / src / Configmenu.cc
index 1c18387c84fea0e950ac4ed40e380829d298a206..37967092bb5b9a0456d09262fe060f485050408c 100644 (file)
@@ -64,28 +64,35 @@ Configmenu::Configmenu(BScreen *scr) : Basemenu(scr) {
               "Window-To-Window Snapping"), 6);
   insert(i18n(ConfigmenuSet, ConfigmenuWindowCornerSnap,
               "Window Corner Snapping"), 7);
+  insert(i18n(ConfigmenuSet, ConfigmenuWorkspaceWarping,
+              "Workspace Warping"), 8);
   insert(i18n(ConfigmenuSet, ConfigmenuDisableBindings,
-              "Disable Mouse with Scroll Lock"), 8);
+              "Disable Mouse with Scroll Lock"), 9);
   insert(i18n(ConfigmenuSet, ConfigmenuHideToolbar,
-              "Hide Toolbar"), 9);
+              "Hide Toolbar"), 10);
   update();
   setValues();
 }
 
 
 void Configmenu::setValues(void) {
-  setItemSelected(3, getScreen()->doImageDither());
-  setItemSelected(4, getScreen()->doOpaqueMove());
-  setItemSelected(5, getScreen()->doFullMax());
-  setItemSelected(6, getScreen()->doFocusNew());
-  setItemSelected(7, getScreen()->doFocusLast());
-  setItemSelected(8, getScreen()->getWindowToWindowSnap());
-
-  setItemSelected(9, getScreen()->getWindowCornerSnap());
-  setItemEnabled(9, getScreen()->getWindowToWindowSnap());
+  int index = 2;
+#ifdef    XINERAMA
+  ++index;
+#endif // XINERAMA
+  setItemSelected(index++, getScreen()->doImageDither());
+  setItemSelected(index++, getScreen()->doOpaqueMove());
+  setItemSelected(index++, getScreen()->doFullMax());
+  setItemSelected(index++, getScreen()->doFocusNew());
+  setItemSelected(index++, getScreen()->doFocusLast());
+  setItemSelected(index++, getScreen()->getWindowToWindowSnap());
+
+  setItemSelected(index, getScreen()->getWindowCornerSnap());
+  setItemEnabled(index++, getScreen()->getWindowToWindowSnap());
   
-  setItemSelected(10, getScreen()->allowScrollLock());
-  setItemSelected(11, getScreen()->doHideToolbar());
+  setItemSelected(index++, getScreen()->doWorkspaceWarping());
+  setItemSelected(index++, getScreen()->allowScrollLock());
+  setItemSelected(index++, getScreen()->doHideToolbar());
 }
 
 
@@ -144,13 +151,18 @@ void Configmenu::itemSelected(int button, unsigned int index) {
     setItemSelected(index, getScreen()->getWindowCornerSnap());
     break;
 
-  case 8: // disable mouse bindings with Scroll Lock
+  case 8: // workspace wrapping
+    getScreen()->saveWorkspaceWarping(! getScreen()->doWorkspaceWarping());
+    setItemSelected(index, getScreen()->doWorkspaceWarping());
+    break;
+
+  case 9: // disable mouse bindings with Scroll Lock
     getScreen()->saveAllowScrollLock(! getScreen()->allowScrollLock());
     setItemSelected(index, getScreen()->allowScrollLock());
     getScreen()->reconfigure();
     break;
 
-  case 9: // hide toolbar
+  case 10: // hide toolbar
     getScreen()->saveHideToolbar(! getScreen()->doHideToolbar());
     setItemSelected(index, getScreen()->doHideToolbar());
     break;
@@ -162,7 +174,9 @@ void Configmenu::reconfigure(void) {
   setValues();
   focusmenu->reconfigure();
   placementmenu->reconfigure();
+#ifdef    XINERAMA
   xineramamenu->reconfigure();
+#endif // XINERAMA
 
   Basemenu::reconfigure();
 }
This page took 0.029452 seconds and 4 git commands to generate.