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>2009-02-02 19:30:03 +0300
committerTon Roosendaal <ton@blender.org>2009-02-02 19:30:03 +0300
commitc29030245064fbd25d95fda2275533f8ce6c6f23 (patch)
tree1be3dfafb527651262364448ae898c7ce6a3005d /source/blender
parenta18f623ed28afde740c6f27e1747fec98bf29499 (diff)
2.5
Bugfix: mouse key checks should use KM_PRESS checks now. Interface toggle button didnt work for that reason. :)
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/editors/interface/interface_handlers.c64
-rw-r--r--source/blender/editors/interface/interface_panel.c4
-rw-r--r--source/blender/windowmanager/intern/wm_operators.c6
3 files changed, 35 insertions, 39 deletions
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index 61ea1b1b8e3..f2275a18db4 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -1239,7 +1239,7 @@ static void ui_do_but_textedit(bContext *C, uiBlock *block, uiBut *but, uiHandle
retval= WM_UI_HANDLER_BREAK;
break;
case LEFTMOUSE: {
- if(event->val) {
+ if(event->val==KM_PRESS) {
mx= event->x;
my= event->y;
ui_window_to_block(data->region, block, &mx, &my);
@@ -1261,7 +1261,7 @@ static void ui_do_but_textedit(bContext *C, uiBlock *block, uiBut *but, uiHandle
}
}
- if(event->val) {
+ if(event->val==KM_PRESS) {
switch (event->type) {
case VKEY:
case XKEY:
@@ -1506,7 +1506,7 @@ static void ui_blockopen_end(bContext *C, uiBut *but, uiHandleButtonData *data)
static int ui_do_but_BUT(bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
{
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(event->type == LEFTMOUSE && event->val) {
+ if(event->type == LEFTMOUSE && event->val==KM_PRESS) {
button_activate_state(C, but, BUTTON_STATE_WAIT_RELEASE);
return WM_UI_HANDLER_BREAK;
}
@@ -1514,13 +1514,13 @@ static int ui_do_but_BUT(bContext *C, uiBut *but, uiHandleButtonData *data, wmEv
button_activate_state(C, but, BUTTON_STATE_EXIT);
return WM_UI_HANDLER_BREAK;
}
- else if(ELEM(event->type, PADENTER, RETKEY) && event->val) {
+ else if(ELEM(event->type, PADENTER, RETKEY) && event->val==KM_PRESS) {
button_activate_state(C, but, BUTTON_STATE_WAIT_FLASH);
return WM_UI_HANDLER_BREAK;
}
}
else if(data->state == BUTTON_STATE_WAIT_RELEASE) {
- if(event->type == LEFTMOUSE && event->val==0) {
+ if(event->type == LEFTMOUSE && event->val!=KM_PRESS) {
if(!(but->flag & UI_SELECT))
data->cancel= 1;
button_activate_state(C, but, BUTTON_STATE_EXIT);
@@ -1534,7 +1534,7 @@ static int ui_do_but_BUT(bContext *C, uiBut *but, uiHandleButtonData *data, wmEv
static int ui_do_but_KEYEVT(bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
{
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val) {
+ if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) {
button_activate_state(C, but, BUTTON_STATE_WAIT_KEY_EVENT);
return WM_UI_HANDLER_BREAK;
}
@@ -1543,7 +1543,7 @@ static int ui_do_but_KEYEVT(bContext *C, uiBut *but, uiHandleButtonData *data, w
if(event->type == MOUSEMOVE)
return WM_UI_HANDLER_CONTINUE;
- if(event->val) {
+ if(event->val==KM_PRESS) {
if(WM_key_event_string(event->type)[0])
ui_set_but_val(but, event->type);
else
@@ -1559,7 +1559,7 @@ static int ui_do_but_KEYEVT(bContext *C, uiBut *but, uiHandleButtonData *data, w
static int ui_do_but_TEX(bContext *C, uiBlock *block, uiBut *but, uiHandleButtonData *data, wmEvent *event)
{
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val) {
+ if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) {
button_activate_state(C, but, BUTTON_STATE_TEXT_EDITING);
return WM_UI_HANDLER_BREAK;
}
@@ -1579,7 +1579,7 @@ static int ui_do_but_TEX(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
static int ui_do_but_TOG(bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
{
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val) {
+ if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) {
data->togdual= event->ctrl;
data->togonly= !event->shift;
button_activate_state(C, but, BUTTON_STATE_EXIT);
@@ -1592,7 +1592,7 @@ static int ui_do_but_TOG(bContext *C, uiBut *but, uiHandleButtonData *data, wmEv
static int ui_do_but_EXIT(bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
{
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val) {
+ if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) {
button_activate_state(C, but, BUTTON_STATE_EXIT);
return WM_UI_HANDLER_BREAK;
}
@@ -1701,7 +1701,7 @@ static int ui_do_but_NUM(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
ui_window_to_block(data->region, block, &mx, &my);
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(event->val) {
+ if(event->val==KM_PRESS) {
if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->shift) {
button_activate_state(C, but, BUTTON_STATE_TEXT_EDITING);
retval= WM_UI_HANDLER_BREAK;
@@ -1712,12 +1712,12 @@ static int ui_do_but_NUM(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
button_activate_state(C, but, BUTTON_STATE_NUM_EDITING);
retval= WM_UI_HANDLER_BREAK;
}
- else if(ELEM(event->type, PADENTER, RETKEY) && event->val)
+ else if(ELEM(event->type, PADENTER, RETKEY) && event->val==KM_PRESS)
click= 1;
}
}
else if(data->state == BUTTON_STATE_NUM_EDITING) {
- if(event->type == LEFTMOUSE && event->val==0) {
+ if(event->type == LEFTMOUSE && event->val!=KM_PRESS) {
if(data->dragchange)
button_activate_state(C, but, BUTTON_STATE_EXIT);
else
@@ -1886,7 +1886,7 @@ static int ui_do_but_SLI(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
ui_window_to_block(data->region, block, &mx, &my);
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val) {
+ if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) {
/* start either dragging as slider, or editing as text */
if(mx>= -6+(but->x1+but->x2)/2) {
if(event->type == LEFTMOUSE) {
@@ -1904,7 +1904,7 @@ static int ui_do_but_SLI(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
}
}
else if(data->state == BUTTON_STATE_NUM_EDITING) {
- if(event->type == LEFTMOUSE && event->val==0) {
+ if(event->type == LEFTMOUSE && event->val!=KM_PRESS) {
if(data->dragchange)
button_activate_state(C, but, BUTTON_STATE_EXIT);
else
@@ -1971,7 +1971,7 @@ static int ui_do_but_SLI(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
static int ui_do_but_BLOCK(bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
{
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val) {
+ if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) {
button_activate_state(C, but, BUTTON_STATE_MENU_OPEN);
return WM_UI_HANDLER_BREAK;
}
@@ -2045,7 +2045,7 @@ static int ui_do_but_NORMAL(bContext *C, uiBlock *block, uiBut *but, uiHandleBut
ui_window_to_block(data->region, block, &mx, &my);
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(event->type==LEFTMOUSE && event->val) {
+ if(event->type==LEFTMOUSE && event->val==KM_PRESS) {
data->dragstartx= mx;
data->dragstarty= my;
data->draglastx= mx;
@@ -2066,7 +2066,7 @@ static int ui_do_but_NORMAL(bContext *C, uiBlock *block, uiBut *but, uiHandleBut
ui_numedit_apply(C, block, but, data);
}
}
- else if(event->type==LEFTMOUSE && event->val==0)
+ else if(event->type==LEFTMOUSE && event->val!=KM_PRESS)
button_activate_state(C, but, BUTTON_STATE_EXIT);
return WM_UI_HANDLER_BREAK;
@@ -2121,7 +2121,7 @@ static int ui_do_but_HSVCUBE(bContext *C, uiBlock *block, uiBut *but, uiHandleBu
ui_window_to_block(data->region, block, &mx, &my);
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(event->type==LEFTMOUSE && event->val) {
+ if(event->type==LEFTMOUSE && event->val==KM_PRESS) {
data->dragstartx= mx;
data->dragstarty= my;
data->draglastx= mx;
@@ -2142,7 +2142,7 @@ static int ui_do_but_HSVCUBE(bContext *C, uiBlock *block, uiBut *but, uiHandleBu
ui_numedit_apply(C, block, but, data);
}
}
- else if(event->type==LEFTMOUSE && event->val==0)
+ else if(event->type==LEFTMOUSE && event->val!=KM_PRESS)
button_activate_state(C, but, BUTTON_STATE_EXIT);
return WM_UI_HANDLER_BREAK;
@@ -2208,7 +2208,7 @@ static int ui_do_but_COLORBAND(bContext *C, uiBlock *block, uiBut *but, uiHandle
ui_window_to_block(data->region, block, &mx, &my);
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(event->type==LEFTMOUSE && event->val) {
+ if(event->type==LEFTMOUSE && event->val==KM_PRESS) {
coba= (ColorBand*)but->poin;
if(event->ctrl) {
@@ -2264,7 +2264,7 @@ static int ui_do_but_COLORBAND(bContext *C, uiBlock *block, uiBut *but, uiHandle
ui_numedit_apply(C, block, but, data);
}
}
- else if(event->type==LEFTMOUSE && event->val==0)
+ else if(event->type==LEFTMOUSE && event->val!=KM_PRESS)
button_activate_state(C, but, BUTTON_STATE_EXIT);
return WM_UI_HANDLER_BREAK;
@@ -2354,7 +2354,7 @@ static int ui_do_but_CURVE(bContext *C, uiBlock *block, uiBut *but, uiHandleButt
ui_window_to_block(data->region, block, &mx, &my);
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(event->type==LEFTMOUSE && event->val) {
+ if(event->type==LEFTMOUSE && event->val==KM_PRESS) {
CurveMapping *cumap= (CurveMapping*)but->poin;
CurveMap *cuma= cumap->cm+cumap->cur;
CurveMapPoint *cmp= cuma->curve;
@@ -2450,7 +2450,7 @@ static int ui_do_but_CURVE(bContext *C, uiBlock *block, uiBut *but, uiHandleButt
ui_numedit_apply(C, block, but, data);
}
}
- else if(event->type==LEFTMOUSE && event->val==0) {
+ else if(event->type==LEFTMOUSE && event->val!=KM_PRESS) {
if(data->dragsel != -1) {
CurveMapping *cumap= data->cumap;
CurveMap *cuma= cumap->cm+cumap->cur;
@@ -2492,7 +2492,7 @@ static int ui_do_but_CHARTAB(bContext *C, uiBlock *block, uiBut *but, uiHandleBu
ui_window_to_block(data->region, block, &mx, &my);
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val) {
+ if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) {
/* Calculate the size of the button */
width = abs(but->x2 - but->x1);
height = abs(but->y2 - but->y1);
@@ -2595,7 +2595,7 @@ static int ui_do_button(bContext *C, uiBlock *block, uiBut *but, wmEvent *event)
/* handle copy-paste */
if(data->state == BUTTON_STATE_HIGHLIGHT) {
- if(ELEM(event->type, CKEY, VKEY) && event->val && (event->ctrl || event->oskey)) {
+ if(ELEM(event->type, CKEY, VKEY) && event->val==KM_PRESS && (event->ctrl || event->oskey)) {
ui_but_copy_paste(C, but, data, (event->type == CKEY)? 'c': 'v');
return WM_UI_HANDLER_BREAK;
}
@@ -3334,7 +3334,7 @@ int ui_handle_menu_event(bContext *C, wmEvent *event, uiPopupBlockHandle *menu,
switch(event->type) {
/* closing sublevels of pulldowns */
case LEFTARROWKEY:
- if(event->val && (block->flag & UI_BLOCK_LOOP))
+ if(event->val==KM_PRESS && (block->flag & UI_BLOCK_LOOP))
if(BLI_countlist(&block->saferct) > 0)
menu->menuretval= UI_RETURN_OUT;
@@ -3343,7 +3343,7 @@ int ui_handle_menu_event(bContext *C, wmEvent *event, uiPopupBlockHandle *menu,
/* opening sublevels of pulldowns */
case RIGHTARROWKEY:
- if(event->val && (block->flag & UI_BLOCK_LOOP)) {
+ if(event->val==KM_PRESS && (block->flag & UI_BLOCK_LOOP)) {
but= ui_but_find_activated(ar);
if(!but) {
@@ -3365,7 +3365,7 @@ int ui_handle_menu_event(bContext *C, wmEvent *event, uiPopupBlockHandle *menu,
case WHEELDOWNMOUSE:
/* arrowkeys: only handle for block_loop blocks */
if(inside || (block->flag & UI_BLOCK_LOOP)) {
- if(event->val) {
+ if(event->val==KM_PRESS) {
but= ui_but_find_activated(ar);
if(but) {
if(ELEM(event->type, DOWNARROWKEY, WHEELDOWNMOUSE)) {
@@ -3457,17 +3457,17 @@ int ui_handle_menu_event(bContext *C, wmEvent *event, uiPopupBlockHandle *menu,
if(inside==0) {
uiSafetyRct *saferct= block->saferct.first;
- if(ELEM3(event->type, LEFTMOUSE, MIDDLEMOUSE, RIGHTMOUSE) && event->val)
+ if(ELEM3(event->type, LEFTMOUSE, MIDDLEMOUSE, RIGHTMOUSE) && event->val==KM_PRESS)
if(saferct && !BLI_in_rctf(&saferct->parent, event->x, event->y))
menu->menuretval= UI_RETURN_OK;
}
if(menu->menuretval);
- else if(event->type==ESCKEY && event->val) {
+ else if(event->type==ESCKEY && event->val==KM_PRESS) {
/* esc cancels this and all preceding menus */
menu->menuretval= UI_RETURN_CANCEL;
}
- else if(ELEM(event->type, RETKEY, PADENTER) && event->val) {
+ else if(ELEM(event->type, RETKEY, PADENTER) && event->val==KM_PRESS) {
/* enter will always close this block, but we let the event
* get handled by the button if it is activated */
if(!ui_but_find_activated(ar))
diff --git a/source/blender/editors/interface/interface_panel.c b/source/blender/editors/interface/interface_panel.c
index 74cd888df26..fb12ebcde7d 100644
--- a/source/blender/editors/interface/interface_panel.c
+++ b/source/blender/editors/interface/interface_panel.c
@@ -1459,7 +1459,7 @@ int ui_handler_panel_region(bContext *C, wmEvent *event)
inside_scale= 1;
}
- if(!event->val)
+ if(event->val!=KM_PRESS)
return retval;
if(event->type == LEFTMOUSE) {
@@ -1513,7 +1513,7 @@ static int ui_handler_panel(bContext *C, wmEvent *event, void *userdata)
uiHandlePanelData *data= panel->activedata;
/* verify if we can stop */
- if(event->type == LEFTMOUSE && !event->val) {
+ if(event->type == LEFTMOUSE && event->val!=KM_PRESS) {
panel_activate_state(C, panel, PANEL_STATE_ANIMATION);
return WM_UI_HANDLER_BREAK;
}
diff --git a/source/blender/windowmanager/intern/wm_operators.c b/source/blender/windowmanager/intern/wm_operators.c
index 4141851e96c..5c286e06324 100644
--- a/source/blender/windowmanager/intern/wm_operators.c
+++ b/source/blender/windowmanager/intern/wm_operators.c
@@ -771,12 +771,8 @@ static void tweak_gesture_modal(bContext *C, wmEvent *event)
WM_gesture_end(C, gesture);
window->tweak= NULL;
- /* when tweak fails we should give the other keymap entries a chance
- * those then won't react to km_press, but km_release
- * it sets hidden event value where tweak maps fail on, to prevent loops */
+ /* when tweak fails we should give the other keymap entries a chance */
event->val= KM_RELEASE;
- //event->val= 1;
- //event->no_tweak= 1;
}
break;
default: