Revision: 17691
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17691
Author:   ton
Date:     2008-12-03 14:44:16 +0100 (Wed, 03 Dec 2008)

Log Message:
-----------
2.5

- Made view2d manipulations redraw on area level
- simplified call to send Notifiers:

  WM_event_add_notifier(bContext *C, int type, int value, void *data)

  This brings back more control to WM, no context messing within
  operators. :) Handlers that execute operators will be responsible
  for delivering correct contextes.

  In general: should lead to making context not exposed, but only 
  readable via some callbacks. 

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/editors/interface/interface_ops.c
    
branches/blender2.5/blender/source/blender/editors/interface/interface_regions.c
    branches/blender2.5/blender/source/blender/editors/interface/view2d_ops.c
    branches/blender2.5/blender/source/blender/editors/screen/screen_ops.c
    branches/blender2.5/blender/source/blender/editors/space_time/ed_markers.c
    branches/blender2.5/blender/source/blender/editors/space_time/time_ops.c
    branches/blender2.5/blender/source/blender/windowmanager/WM_api.h
    
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c
    
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_operators.c
    branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c

Modified: 
branches/blender2.5/blender/source/blender/editors/interface/interface_ops.c
===================================================================
--- 
branches/blender2.5/blender/source/blender/editors/interface/interface_ops.c    
    2008-12-03 13:14:01 UTC (rev 17690)
+++ 
branches/blender2.5/blender/source/blender/editors/interface/interface_ops.c    
    2008-12-03 13:44:16 UTC (rev 17691)
@@ -1183,7 +1183,7 @@
        }
 
        if(changed || handled)
-               WM_event_add_notifier(C->wm, C->window, 0, 
WM_NOTE_WINDOW_REDRAW, 0, NULL);
+               WM_event_add_notifier(C, WM_NOTE_WINDOW_REDRAW, 0, NULL);
 }
 
 static void ui_do_but_textedit_select(bContext *C, uiBlock *block, uiBut *but, 
uiActivateBut *data, wmEvent *event)
@@ -1209,7 +1209,7 @@
 
        if(handled) {
                ui_check_but(but);
-               WM_event_add_notifier(C->wm, C->window, 0, 
WM_NOTE_WINDOW_REDRAW, 0, NULL);
+               WM_event_add_notifier(C, WM_NOTE_WINDOW_REDRAW, 0, NULL);
        }
 }
 
@@ -1265,7 +1265,7 @@
        if(data->interactive) ui_apply_button(block, but, data, 1);
        else ui_check_but(but);
 
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_WINDOW_REDRAW, 0, NULL);
 }
 
 /* ****************** block opening for various types **************** */
@@ -2647,7 +2647,7 @@
        }
 
        data->state= state;
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_WINDOW_REDRAW, 0, NULL);
 }
 
 static void button_activate_init(bContext *C, ARegion *ar, wmOperator *op, 
uiBut *but, uiBut *lastbut)
@@ -2746,7 +2746,7 @@
        }
 
        /* redraw */
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_WINDOW_REDRAW, 0, NULL);
 
        /* clean up */
        button_disable_timers(C, data);
@@ -2863,7 +2863,7 @@
                                if(event->customdata == data->tooltiptimer) {
                                        if(!data->tooltip) {
                                                data->tooltip= 
ui_tooltip_create(C, data->region, but);
-                                               WM_event_add_notifier(C->wm, 
C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, NULL);
+                                               WM_event_add_notifier(C, 
WM_NOTE_WINDOW_REDRAW, 0, NULL);
                                        }
 
                                        WM_event_remove_window_timer(C->window, 
data->tooltiptimer);
@@ -2891,14 +2891,14 @@
                                if(but && but->activate == data) {
                                        if(!(but->flag & UI_SELECT)) {
                                                but->flag |= UI_SELECT;
-                                               WM_event_add_notifier(C->wm, 
C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, NULL);
+                                               WM_event_add_notifier(C, 
WM_NOTE_WINDOW_REDRAW, 0, NULL);
                                        }
                                }
                                else {
                                        but= 
ui_but_find_activated(data->region, data, &block);
                                        if(but->flag & UI_SELECT) {
                                                but->flag &= ~UI_SELECT;
-                                               WM_event_add_notifier(C->wm, 
C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, NULL);
+                                               WM_event_add_notifier(C, 
WM_NOTE_WINDOW_REDRAW, 0, NULL);
                                        }
                                }
                                break;

Modified: 
branches/blender2.5/blender/source/blender/editors/interface/interface_regions.c
===================================================================
--- 
branches/blender2.5/blender/source/blender/editors/interface/interface_regions.c
    2008-12-03 13:14:01 UTC (rev 17690)
+++ 
branches/blender2.5/blender/source/blender/editors/interface/interface_regions.c
    2008-12-03 13:44:16 UTC (rev 17691)
@@ -332,8 +332,8 @@
        ar->winrct.ymax= y2;
 
        /* notify change and redraw */
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_SCREEN_CHANGED, 0, 
NULL);
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_SCREEN_CHANGED, 0, NULL);
+       WM_event_add_notifier(C, WM_NOTE_WINDOW_REDRAW, 0, NULL);
 
        return ar;
 }
@@ -342,8 +342,8 @@
 {
        ui_remove_temporary_region(C, C->window->screen, ar);
 
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_SCREEN_CHANGED, 0, 
NULL);
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_SCREEN_CHANGED, 0, NULL);
+       WM_event_add_notifier(C, WM_NOTE_WINDOW_REDRAW, 0, NULL);
 }
 
 /************************* Creating Menu Blocks **********************/
@@ -650,8 +650,8 @@
        block->flag |= UI_BLOCK_LOOP|UI_BLOCK_MOVEMOUSE_QUIT;
 
        /* notify change and redraw */
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_SCREEN_CHANGED, 0, 
NULL);
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_SCREEN_CHANGED, 0, NULL);
+       WM_event_add_notifier(C, WM_NOTE_WINDOW_REDRAW, 0, NULL);
 
        SWAP(ARegion*, C->region, ar); /* XXX 2.50 bad context swapping */
        WM_operator_invoke(C, 
WM_operatortype_find("ED_UI_OT_menu_block_handle"), NULL);
@@ -665,8 +665,8 @@
        ui_remove_temporary_region(C, C->window->screen, handle->region);
        MEM_freeN(handle);
 
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_SCREEN_CHANGED, 0, 
NULL);
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_SCREEN_CHANGED, 0, NULL);
+       WM_event_add_notifier(C, WM_NOTE_WINDOW_REDRAW, 0, NULL);
 }
 
 /***************************** Menu Button ***************************/
@@ -1757,7 +1757,7 @@
                13+50+5+80+5+100+5+100+5+200+5+150+5+100+5, 3, 100, 20, 
testcol, 0, 0, 0, 0 /*B_BANDCOL*/, "");
 
        xco = 13+50+5+80+5+100+5+100+5+200+5+150+5+100+5+100+5;
-       uiDefIconButBitS(block, ICONTOG, 1 /*AUTOKEY_ON*/, REDRAWINFO, 
ICON_PYTHON,
+       uiDefIconButBitS(block, ICONTOG, 1 /*AUTOKEY_ON*/, REDRAWINFO, 
ICON_PYTHON,
                        xco, 3, 20, 20, &testicontog, 0, 0, 0, 0, "Automatic 
keyframe insertion for Objects and Bones");
        xco += 5;
 

Modified: 
branches/blender2.5/blender/source/blender/editors/interface/view2d_ops.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/interface/view2d_ops.c   
2008-12-03 13:14:01 UTC (rev 17690)
+++ branches/blender2.5/blender/source/blender/editors/interface/view2d_ops.c   
2008-12-03 13:44:16 UTC (rev 17691)
@@ -34,6 +34,8 @@
 #include "DNA_space_types.h"
 #include "DNA_view2d_types.h"
 
+#include "BLI_blenlib.h"
+
 #include "BKE_global.h"
 #include "BKE_utildefines.h"
 
@@ -157,7 +159,7 @@
        }
        
        /* request updates to be done... */
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_AREA_REDRAW, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_AREA_REDRAW, 0, NULL);
        /* XXX: add WM_NOTE_TIME_CHANGED? */
 }
 
@@ -480,7 +482,7 @@
        }
        
        /* request updates to be done... */
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_AREA_REDRAW, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_AREA_REDRAW, 0, NULL);
        /* XXX: add WM_NOTE_TIME_CHANGED? */
 }
 

Modified: branches/blender2.5/blender/source/blender/editors/screen/screen_ops.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/screen/screen_ops.c      
2008-12-03 13:14:01 UTC (rev 17690)
+++ branches/blender2.5/blender/source/blender/editors/screen/screen_ops.c      
2008-12-03 13:44:16 UTC (rev 17691)
@@ -335,7 +335,7 @@
        area_copy_data((ScrArea *)newsc->areabase.first, C->area, 0);
        
        /* screen, areas init */
-       WM_event_add_notifier(C->wm, win, 0, WM_NOTE_SCREEN_CHANGED, 0, NULL);
+       WM_event_add_notifier(C, WM_NOTE_SCREEN_CHANGED, 0, NULL);
        
        return OPERATOR_FINISHED;
 }
@@ -517,7 +517,7 @@
                }
        }
 
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_SCREEN_CHANGED, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_SCREEN_CHANGED, 0, NULL);
 }
 
 static void area_move_apply(bContext *C, wmOperator *op)
@@ -766,7 +766,7 @@
                if(dir=='h') sd->origval= sd->nedge->v1->vec.y;
                else sd->origval= sd->nedge->v1->vec.x;
 
-               WM_event_add_notifier(C->wm, C->window, 0, 
WM_NOTE_SCREEN_CHANGED, 0, NULL);
+               WM_event_add_notifier(C, WM_NOTE_SCREEN_CHANGED, 0, NULL);
                
                return 1;
        }               
@@ -781,7 +781,7 @@
                op->customdata = NULL;
        }
        
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_SCREEN_CHANGED, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_SCREEN_CHANGED, 0, NULL);
 
        /* this makes sure aligned edges will result in aligned grabbing */
        removedouble_scrverts(C->screen);
@@ -887,7 +887,7 @@
                        sd->delta= (dir == 'v')? event->x - sd->origval: 
event->y - sd->origval;
                        area_move_apply_do(C, sd->origval, sd->delta, dir, 
sd->bigger, sd->smaller);
                        
-                       WM_event_add_notifier(C->wm, C->window, 0, 
WM_NOTE_SCREEN_CHANGED, 0, NULL);
+                       WM_event_add_notifier(C, WM_NOTE_SCREEN_CHANGED, 0, 
NULL);
                        break;
                        
                case LEFTMOUSE:
@@ -1090,7 +1090,7 @@
                jd->sa2->flag &= ~AREA_FLAG_DRAWJOINTO;
        }
 
-       WM_event_add_notifier(C->wm, C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, 
NULL);
+       WM_event_add_notifier(C, WM_NOTE_WINDOW_REDRAW, 0, NULL);
        
        area_join_exit(C, op);
 
@@ -1137,7 +1137,7 @@
                                                                jd->sa2 = NULL;
                                                        }
                                                }
-                                               WM_event_add_notifier(C->wm, 
C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, NULL);
+                                               WM_event_add_notifier(C, 
WM_NOTE_WINDOW_REDRAW, 0, NULL);
                                        } 
                                        else {
                                                /* we are back in the area 
previously selected for keeping 
@@ -1162,7 +1162,7 @@
                                                                jd->sa2->flag 
|= AREA_FLAG_DRAWJOINTO;
                                                        }
                                                }
-                                               WM_event_add_notifier(C->wm, 
C->window, 0, WM_NOTE_WINDOW_REDRAW, 0, NULL);
+                                               WM_event_add_notifier(C, 
WM_NOTE_WINDOW_REDRAW, 0, NULL);
                                        }
                                }
                        }
@@ -1170,7 +1170,7 @@
                case LEFTMOUSE:
                        if(event->val==0) {
                                area_join_apply(C, op);
-                               WM_event_add_notifier(C->wm, C->window, 0, 
WM_NOTE_SCREEN_CHANGED, 0, NULL);
+                               WM_event_add_notifier(C, 
WM_NOTE_SCREEN_CHANGED, 0, NULL);
                                area_join_exit(C, op);
                                return OPERATOR_FINISHED;
                        }

Modified: 
branches/blender2.5/blender/source/blender/editors/space_time/ed_markers.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/space_time/ed_markers.c  
2008-12-03 13:14:01 UTC (rev 17690)
+++ branches/blender2.5/blender/source/blender/editors/space_time/ed_markers.c  
2008-12-03 13:44:16 UTC (rev 17691)
@@ -56,6 +56,7 @@
 #include "UI_interface_icons.h"
 #include "UI_view2d.h"
 #include "UI_resources.h"
+#include "UI_text.h"
 
 #include "ED_markers.h"
 #include "ED_screen.h"
@@ -244,7 +245,6 @@
        ListBase *markers;
        int event_type;         /* store invoke-event, to verify */
        int *oldframe, evtx, firstx;
-       short swinid;
 } MarkerMove;
 
 /* copy selection to temp buffer */
@@ -293,7 +293,6 @@
                
                mm->evtx= evt->x;
                mm->firstx= evt->x;
-               mm->swinid= C->region->swinid;
                mm->event_type= evt->type;
                
                /* add temp handler */
@@ -327,13 +326,12 @@
 /* only for modal */
 static void ed_marker_move_cancel(bContext *C, wmOperator *op)
 {
-       MarkerMove *mm= op->customdata;
        
        RNA_int_set(op->ptr, "frs", 0);

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to