Commit: 27ce492edbb13757cb824a3a6be52d13e9c63f9c
Author: Antonio Vazquez
Date:   Tue Feb 13 17:38:38 2018 +0100
Branches: greasepencil-object
https://developer.blender.org/rB27ce492edbb13757cb824a3a6be52d13e9c63f9c

Merge branch 'blender2.8' into greasepencil-object

 Conflicts:
        source/blender/editors/space_outliner/outliner_select.c
        source/blender/editors/space_view3d/view3d_draw_legacy.c
        source/blender/makesrna/intern/rna_sculpt_paint.c

===================================================================



===================================================================

diff --cc source/blender/editors/space_outliner/outliner_select.c
index 10b47a003f4,16f3aeaf110..ce51d1936b2
--- a/source/blender/editors/space_outliner/outliner_select.c
+++ b/source/blender/editors/space_outliner/outliner_select.c
@@@ -197,38 -193,10 +197,38 @@@ static eOLDrawState tree_element_set_ac
                        WM_event_add_notifier(C, NC_SCENE | ND_OB_SELECT, 
scene);
                }
        }
 +      
 +      /* set special grease pencil modes */
 +      if (ob->type == OB_GPENCIL) {
 +              WorkSpace *workspace = CTX_wm_workspace(C);
 +              wmWindow *win = CTX_wm_window(C);
 +              
 +              /* set cursor */
 +              if (workspace->object_mode == OB_MODE_GPENCIL_PAINT) {
 +                      WM_cursor_modal_set(win, BC_PAINTBRUSHCURSOR);
 +                      ED_gpencil_toggle_brush_cursor(C, false, NULL);
 +              }
 +              else if (workspace->object_mode == OB_MODE_GPENCIL_SCULPT) {
 +                      WM_cursor_modal_set(win, BC_CROSSCURSOR);
 +                      ED_gpencil_toggle_brush_cursor(C, true, NULL);
 +              }
 +              else if (workspace->object_mode == OB_MODE_GPENCIL_WEIGHT) {
 +                      WM_cursor_modal_set(win, BC_CROSSCURSOR);
 +                      ED_gpencil_toggle_brush_cursor(C, true, NULL);
 +              }
 +              else {
 +                      WM_cursor_modal_set(win, CURSOR_STD);
 +                      ED_gpencil_toggle_brush_cursor(C, false, NULL);
 +              }
 +              /* set workspace mode */
 +              workspace->object_mode_restore = workspace->object_mode;
 +              workspace->object_mode = OB_MODE_GPENCIL_PAINT;
 +              ED_object_base_activate(C, view_layer->basact); // XXX
 +      }
  
-       if (ob != scene->obedit)
+       if (CTX_data_edit_object(C)) {
                ED_object_editmode_exit(C, EM_FREEDATA | EM_FREEUNDO | 
EM_WAITCURSOR | EM_DO_UNDO);
-               
+       }
        return OL_DRAWSEL_NORMAL;
  }
  
diff --cc source/blender/editors/space_view3d/view3d_draw_legacy.c
index c835b798817,aeb2cd11e39..0e70a589ae0
--- a/source/blender/editors/space_view3d/view3d_draw_legacy.c
+++ b/source/blender/editors/space_view3d/view3d_draw_legacy.c
@@@ -1671,17 -1602,8 +1672,17 @@@ static void view3d_draw_objects
                                        draw_dupli_objects(eval_ctx, scene, 
view_layer, ar, v3d, base);
                                }
                                if ((base->flag & BASE_SELECTED) == 0) {
-                                       if (base->object != scene->obedit) {
+                                       if (base->object != obedit)
                                                draw_object(eval_ctx, scene, 
view_layer, ar, v3d, base, 0);
 +
 +                                              /* draw grease pencil */
 +                                              if (base->object->type == 
OB_GPENCIL) {
 +                                                      /* allocate memory for 
saving gp objects */
 +                                                      gp_cache = 
ED_gpencil_allocate_cache(gp_cache, &gp_cache_size, gp_cache_used);
 +                                                      /* add for drawing 
later */
 +                                                      
ED_gpencil_add_to_cache(gp_cache, rv3d, base, &gp_cache_used);
 +                                              }
 +                                      }
                                }
                        }
                }
@@@ -1692,16 -1614,8 +1693,16 @@@
                /* draw selected and editmode */
                for (base = view_layer->object_bases.first; base; base = 
base->next) {
                        if ((base->flag & BASE_VISIBLED) != 0) {
-                               if (base->object == scene->obedit || 
(base->flag & BASE_SELECTED)) {
+                               if (base->object == obedit || (base->flag & 
BASE_SELECTED)) {
                                        draw_object(eval_ctx, scene, 
view_layer, ar, v3d, base, 0);
 +
 +                                      /* draw grease pencil */
 +                                      if (base->object->type == OB_GPENCIL) {
 +                                              /* allocate memory for saving 
gp objects */
 +                                              gp_cache = 
ED_gpencil_allocate_cache(gp_cache, &gp_cache_size, gp_cache_used);
 +                                              /* add for drawing later */
 +                                              
ED_gpencil_add_to_cache(gp_cache, rv3d, base, &gp_cache_used);
 +                                      }
                                }
                        }
                }
diff --cc source/blender/makesrna/intern/rna_sculpt_paint.c
index 497d05d17b3,06c0260d08f..32b9ba1a218
--- a/source/blender/makesrna/intern/rna_sculpt_paint.c
+++ b/source/blender/makesrna/intern/rna_sculpt_paint.c
@@@ -110,8 -108,7 +111,9 @@@ const EnumPropertyItem rna_enum_symmetr
  #include "BKE_pointcache.h"
  #include "BKE_particle.h"
  #include "BKE_pbvh.h"
+ #include "BKE_object.h"
 +#include "BKE_gpencil.h"
 +
  
  #include "DEG_depsgraph.h"

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

Reply via email to