[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53071] trunk/blender/source/blender/ editors: don' t draw the sequencer grease pencil panel when in the channel view or scopes .

Campbell Barton ideasman42 at gmail.com
Mon Dec 17 05:44:48 CET 2012


Revision: 53071
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53071
Author:   campbellbarton
Date:     2012-12-17 04:44:39 +0000 (Mon, 17 Dec 2012)
Log Message:
-----------
don't draw the sequencer grease pencil panel when in the channel view or scopes.

also don't draw grease pencil over scopes.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/include/ED_sequencer.h
    trunk/blender/source/blender/editors/space_sequencer/sequencer_buttons.c
    trunk/blender/source/blender/editors/space_sequencer/sequencer_draw.c
    trunk/blender/source/blender/editors/space_sequencer/sequencer_edit.c

Modified: trunk/blender/source/blender/editors/include/ED_sequencer.h
===================================================================
--- trunk/blender/source/blender/editors/include/ED_sequencer.h	2012-12-17 03:59:55 UTC (rev 53070)
+++ trunk/blender/source/blender/editors/include/ED_sequencer.h	2012-12-17 04:44:39 UTC (rev 53071)
@@ -38,6 +38,8 @@
 int ED_space_sequencer_check_show_maskedit(struct SpaceSeq *sseq, struct Scene *scene);
 int ED_space_sequencer_maskedit_poll(struct bContext *C);
 
+int ED_space_sequencer_check_show_imbuf(struct SpaceSeq *sseq);
+
 void ED_operatormacros_sequencer(void);
 
 #endif /*  __ED_SEQUENCER_H__ */

Modified: trunk/blender/source/blender/editors/space_sequencer/sequencer_buttons.c
===================================================================
--- trunk/blender/source/blender/editors/space_sequencer/sequencer_buttons.c	2012-12-17 03:59:55 UTC (rev 53070)
+++ trunk/blender/source/blender/editors/space_sequencer/sequencer_buttons.c	2012-12-17 04:44:39 UTC (rev 53071)
@@ -41,6 +41,7 @@
 
 #include "ED_screen.h"
 #include "ED_gpencil.h"
+#include "ED_sequencer.h"
 
 #include "WM_api.h"
 #include "WM_types.h"
@@ -51,6 +52,14 @@
 
 /* **************************** buttons ********************************* */
 
+static int sequencer_grease_pencil_panel_poll(const bContext *C, PanelType *UNUSED(pt))
+{
+	SpaceSeq *sseq = CTX_wm_space_seq(C);
+
+	/* don't show the gpencil if we are not showing the image */
+	return ED_space_sequencer_check_show_imbuf(sseq);
+}
+
 void sequencer_buttons_register(ARegionType *art)
 {
 	PanelType *pt;
@@ -60,6 +69,7 @@
 	strcpy(pt->label, N_("Grease Pencil"));
 	pt->draw_header = gpencil_panel_standard_header;
 	pt->draw = gpencil_panel_standard;
+	pt->poll = sequencer_grease_pencil_panel_poll;
 	BLI_addtail(&art->paneltypes, pt);
 }
 

Modified: trunk/blender/source/blender/editors/space_sequencer/sequencer_draw.c
===================================================================
--- trunk/blender/source/blender/editors/space_sequencer/sequencer_draw.c	2012-12-17 03:59:55 UTC (rev 53070)
+++ trunk/blender/source/blender/editors/space_sequencer/sequencer_draw.c	2012-12-17 04:44:39 UTC (rev 53071)
@@ -62,6 +62,7 @@
 #include "ED_gpencil.h"
 #include "ED_markers.h"
 #include "ED_mask.h"
+#include "ED_sequencer.h"
 #include "ED_types.h"
 #include "ED_space_api.h"
 
@@ -921,6 +922,7 @@
 	GLuint last_texid;
 	unsigned char *display_buffer;
 	void *cache_handle = NULL;
+	const int is_imbuf = ED_space_sequencer_check_show_imbuf(sseq);
 
 	if (G.is_rendering == FALSE) {
 		/* stop all running jobs, except screen one. currently previews frustrate Render
@@ -1126,8 +1128,10 @@
 	}
 	
 	if (sseq->flag & SEQ_SHOW_GPENCIL) {
-		/* draw grease-pencil (image aligned) */
-		draw_gpencil_2dimage(C);
+		if (is_imbuf) {
+			/* draw grease-pencil (image aligned) */
+			draw_gpencil_2dimage(C);
+		}
 	}
 
 	if (!scope)
@@ -1137,8 +1141,10 @@
 	UI_view2d_view_restore(C);
 	
 	if (sseq->flag & SEQ_SHOW_GPENCIL) {
-		/* draw grease-pencil (screen aligned) */
-		draw_gpencil_view2d(C, 0);
+		if (is_imbuf) {
+			/* draw grease-pencil (screen aligned) */
+			draw_gpencil_view2d(C, 0);
+		}
 	}
 
 

Modified: trunk/blender/source/blender/editors/space_sequencer/sequencer_edit.c
===================================================================
--- trunk/blender/source/blender/editors/space_sequencer/sequencer_edit.c	2012-12-17 03:59:55 UTC (rev 53070)
+++ trunk/blender/source/blender/editors/space_sequencer/sequencer_edit.c	2012-12-17 04:44:39 UTC (rev 53071)
@@ -496,6 +496,13 @@
 	return FALSE;
 }
 
+/* are we displaying the seq output (not channels or histogram)*/
+int ED_space_sequencer_check_show_imbuf(SpaceSeq *sseq)
+{
+	return (ELEM(sseq->view, SEQ_VIEW_PREVIEW, SEQ_VIEW_SEQUENCE_PREVIEW) &&
+	        ELEM(sseq->mainb, SEQ_DRAW_SEQUENCE, SEQ_DRAW_IMG_IMBUF));
+}
+
 int seq_effect_find_selected(Scene *scene, Sequence *activeseq, int type, Sequence **selseq1, Sequence **selseq2, Sequence **selseq3, const char **error_str)
 {
 	Editing *ed = BKE_sequencer_editing_get(scene, FALSE);




More information about the Bf-blender-cvs mailing list