Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTon Roosendaal <ton@blender.org>2011-01-22 21:00:11 +0300
committerTon Roosendaal <ton@blender.org>2011-01-22 21:00:11 +0300
commit29bee35112bcbcdbd40b37f6ddf33a785967602c (patch)
tree86705960b741c302b175d4509346baa496480f07 /source/blender/windowmanager/intern/wm_cursors.c
parentc0e4c7bbc6c498f601e2748b05126835c84ee352 (diff)
Small fix from the todo:
"Modal cursors" now remain visible, until reset. These cursors were reset already on edges. Example: 3d view toolbar, grease pencil. Do note, only use WM_cursor_modal() on real modal tools, and restore it at end.
Diffstat (limited to 'source/blender/windowmanager/intern/wm_cursors.c')
-rw-r--r--source/blender/windowmanager/intern/wm_cursors.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/windowmanager/intern/wm_cursors.c b/source/blender/windowmanager/intern/wm_cursors.c
index 6034ddce1b5..f0a416e1c6e 100644
--- a/source/blender/windowmanager/intern/wm_cursors.c
+++ b/source/blender/windowmanager/intern/wm_cursors.c
@@ -116,6 +116,9 @@ void WM_cursor_set(wmWindow *win, int curs)
GHOST_SetCursorVisibility(win->ghostwin, 1);
+ if(curs == CURSOR_STD && win->modalcursor)
+ curs= win->modalcursor;
+
win->cursor= curs;
/* detect if we use system cursor or Blender cursor */
@@ -141,11 +144,13 @@ void WM_cursor_modal(wmWindow *win, int val)
{
if(win->lastcursor == 0)
win->lastcursor = win->cursor;
+ win->modalcursor = val;
WM_cursor_set(win, val);
}
void WM_cursor_restore(wmWindow *win)
{
+ win->modalcursor = 0;
if(win->lastcursor)
WM_cursor_set(win, win->lastcursor);
win->lastcursor = 0;