diff options
author | Campbell Barton <ideasman42@gmail.com> | 2012-06-08 18:46:17 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2012-06-08 18:46:17 +0400 |
commit | 5f2409e5ec94fd180206879f9d3dc030bca8f6b8 (patch) | |
tree | ccfbcc6233132c1560e150968620a999bbd4ee4c /source | |
parent | b33c5168f4070e30f5ef66dcca76d1ad3c4aaa38 (diff) |
add listener in action space for mask changes so dopesheet redraws + other minor changes.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/editors/include/ED_gpencil.h | 2 | ||||
-rw-r--r-- | source/blender/editors/space_action/space_action.c | 14 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_mask.c | 6 |
3 files changed, 20 insertions, 2 deletions
diff --git a/source/blender/editors/include/ED_gpencil.h b/source/blender/editors/include/ED_gpencil.h index ad686588f17..80f7fb9d1ed 100644 --- a/source/blender/editors/include/ED_gpencil.h +++ b/source/blender/editors/include/ED_gpencil.h @@ -94,7 +94,7 @@ void select_gpencil_frame(struct bGPDlayer *gpl, int selx, short select_mode); void borderselect_gplayer_frames(struct bGPDlayer *gpl, float min, float max, short select_mode); void delete_gplayer_frames(struct bGPDlayer *gpl); -void duplicate_gplayer_frames(struct bGPDlayer *gpd); +void duplicate_gplayer_frames(struct bGPDlayer *gpl); void free_gpcopybuf(void); void copy_gpdata(void); diff --git a/source/blender/editors/space_action/space_action.c b/source/blender/editors/space_action/space_action.c index ae4020aaaba..c8660179945 100644 --- a/source/blender/editors/space_action/space_action.c +++ b/source/blender/editors/space_action/space_action.c @@ -361,7 +361,7 @@ static void action_listener(ScrArea *sa, wmNotifier *wmn) case NC_SCREEN: if (wmn->data == ND_GPENCIL) { /* only handle this event in GPencil mode for performance considerations */ - if (saction->mode == SACTCONT_GPENCIL) + if (saction->mode == SACTCONT_GPENCIL) ED_area_tag_redraw(sa); } break; @@ -405,6 +405,18 @@ static void action_listener(ScrArea *sa, wmNotifier *wmn) break; } break; + case NC_MASK: + if (saction->mode == SACTCONT_MASK) { + switch (wmn->data) { + case ND_DATA: + ED_area_tag_refresh(sa); + break; + default: /* just redrawing the view will do */ + ED_area_tag_redraw(sa); + break; + } + } + break; case NC_NODE: if (wmn->action == NA_SELECTED) { /* selection changed, so force refresh to flush (needs flag set to do syncing) */ diff --git a/source/blender/makesrna/intern/rna_mask.c b/source/blender/makesrna/intern/rna_mask.c index 42c893eca16..64f1663a524 100644 --- a/source/blender/makesrna/intern/rna_mask.c +++ b/source/blender/makesrna/intern/rna_mask.c @@ -582,6 +582,12 @@ static void rna_def_mask_layer(BlenderRNA *brna) RNA_def_property_ui_icon(prop, ICON_RESTRICT_RENDER_OFF, 1); RNA_def_property_update(prop, NC_MASK | NA_EDITED, NULL); + /* select (for dopesheet)*/ + prop = RNA_def_property(srna, "select", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", MASK_LAYERFLAG_SELECT); + RNA_def_property_ui_text(prop, "Select", "Layer is selected for editing in the DopeSheet"); +// RNA_def_property_update(prop, NC_SCREEN | ND_MASK, NULL); + /* render settings */ prop = RNA_def_property(srna, "alpha", PROP_FLOAT, PROP_NONE); RNA_def_property_float_sdna(prop, NULL, "alpha"); |