Experimental option to allow moving the mouse outside the view, "Continuous Grab...
[blender.git] / intern / ghost / GHOST_IWindow.h
index 5f6bbe553c60e244bf4c6ceeac36e48bbb8bfddd..44ddf9a7cfb651a9e457009385a918fc0e4b055e 100644 (file)
@@ -1,14 +1,11 @@
 /**
  * $Id$
- * ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
+ * ***** BEGIN GPL LICENSE BLOCK *****
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License
  * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version. The Blender
- * Foundation also sells licenses for use in proprietary software under
- * the Blender License.  See http://www.blender.org/BL/ for information
- * about this.
+ * of the License, or (at your option) any later version.
  *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -26,7 +23,7 @@
  *
  * Contributor(s): none yet.
  *
- * ***** END GPL/BL DUAL LICENSE BLOCK *****
+ * ***** END GPL LICENSE BLOCK *****
  */
 /**
  * @file       GHOST_IWindow.h
@@ -164,6 +161,19 @@ public:
         */
        virtual GHOST_TSuccess setState(GHOST_TWindowState state) = 0;
 
+       /**
+        * Sets the window "modified" status, indicating unsaved changes
+        * @param isUnsavedChanges Unsaved changes or not
+        * @return Indication of success.
+        */
+       virtual GHOST_TSuccess setModifiedState(bool isUnsavedChanges) = 0;
+       
+       /**
+        * Gets the window "modified" status, indicating unsaved changes
+        * @return True if there are unsaved changes
+        */
+       virtual bool getModifiedState() = 0;
+       
        /**
         * Sets the order of the window (bottom, top).
         * @param order The order of the window.
@@ -255,6 +265,14 @@ public:
         * @return      Indication of success.
         */
        virtual GHOST_TSuccess setCursorVisibility(bool visible) = 0;
+
+       /**
+        * Grabs the cursor for a modal operation.
+        * @param       grab The new grab state of the cursor.
+        * @return      Indication of success.
+        */
+       virtual GHOST_TSuccess setCursorGrab(bool grab, bool warp) { return GHOST_kSuccess; };
+
 };
 
 #endif // _GHOST_IWINDOW_H_