[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [12270] trunk/blender/source/blender: markers in the sequencer
Campbell Barton
cbarton at metavr.com
Wed Oct 17 17:27:38 CEST 2007
Revision: 12270
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=12270
Author: campbellbarton
Date: 2007-10-17 17:27:38 +0200 (Wed, 17 Oct 2007)
Log Message:
-----------
markers in the sequencer
- added a new redraw type - REDRAWMARKER, at the moment this draws the same windows as REDRAWANIM, but this may not always be true, and it is more explicit whats
happening, This replaced 5 or so draw calls in quite a few places.
Modified Paths:
--------------
trunk/blender/source/blender/include/mydevice.h
trunk/blender/source/blender/src/drawseq.c
trunk/blender/source/blender/src/drawtime.c
trunk/blender/source/blender/src/editaction.c
trunk/blender/source/blender/src/editnla.c
trunk/blender/source/blender/src/editseq.c
trunk/blender/source/blender/src/editsound.c
trunk/blender/source/blender/src/edittime.c
trunk/blender/source/blender/src/header_action.c
trunk/blender/source/blender/src/header_ipo.c
trunk/blender/source/blender/src/header_nla.c
trunk/blender/source/blender/src/header_seq.c
trunk/blender/source/blender/src/header_sound.c
trunk/blender/source/blender/src/space.c
trunk/blender/source/blender/src/transform_conversions.c
Modified: trunk/blender/source/blender/include/mydevice.h
===================================================================
--- trunk/blender/source/blender/include/mydevice.h 2007-10-17 12:33:13 UTC (rev 12269)
+++ trunk/blender/source/blender/include/mydevice.h 2007-10-17 15:27:38 UTC (rev 12270)
@@ -253,6 +253,8 @@
#define REDRAWANIM 0x4037
#define REDRAWNODE 0x4038
#define RECALC_COMPOSITE 0x4039
+#define REDRAWMARKER 0x4040 /* all views that display markers */
+
#endif /* !__MYDEVICE_H__ */
Modified: trunk/blender/source/blender/src/drawseq.c
===================================================================
--- trunk/blender/source/blender/src/drawseq.c 2007-10-17 12:33:13 UTC (rev 12269)
+++ trunk/blender/source/blender/src/drawseq.c 2007-10-17 15:27:38 UTC (rev 12270)
@@ -945,7 +945,7 @@
}
} else { /* single image */
if (last_seq->strip) {
- sprintf(str, "Single: %s", last_seq->strip->stripdata->name);
+ sprintf(str, "Single: %s len: %d", last_seq->strip->stripdata->name, last_seq->enddisp-last_seq->startdisp);
glRasterPos3f(xco, yco, 0.0);
BMF_DrawString(G.font, str);
xco += xfac*BMF_GetStringWidth(G.font, str) +30.0*xfac;
@@ -1443,6 +1443,9 @@
draw_extra_seqinfo();
+ /* Draw markers */
+ draw_markers_timespace();
+
/* restore viewport */
mywinset(sa->win);
Modified: trunk/blender/source/blender/src/drawtime.c
===================================================================
--- trunk/blender/source/blender/src/drawtime.c 2007-10-17 12:33:13 UTC (rev 12269)
+++ trunk/blender/source/blender/src/drawtime.c 2007-10-17 15:27:38 UTC (rev 12270)
@@ -127,7 +127,7 @@
ui_rasterpos_safe(x * xscale, y * yscale, 1.0);
BIF_DrawString(G.fonts, str, 0);
-
+ printf("%f -- %f\n", xscale, yscale);
glScalef(xscale, yscale, 1.0);
}
Modified: trunk/blender/source/blender/src/editaction.c
===================================================================
--- trunk/blender/source/blender/src/editaction.c 2007-10-17 12:33:13 UTC (rev 12269)
+++ trunk/blender/source/blender/src/editaction.c 2007-10-17 15:27:38 UTC (rev 12270)
@@ -2253,11 +2253,7 @@
std_rmouse_transform(transform_markers);
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWIPO, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWSOUND, 0);
+ allqueue(REDRAWMARKER, 0);
}
}
@@ -2680,10 +2676,7 @@
column_select_action_keys(val);
}
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWIPO, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
+ allqueue(REDRAWMARKER, 0);
break;
case MKEY:
@@ -2706,11 +2699,7 @@
rename_marker();
else
break;
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWIPO, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWSOUND, 0);
+ allqueue(REDRAWMARKER, 0);
}
break;
@@ -2734,11 +2723,8 @@
else if (G.qual & LR_ALTKEY) /* clear preview range */
anim_previewrange_clear();
- allqueue(REDRAWTIME, 0);
+ allqueue(REDRAWMARKER, 0);
allqueue(REDRAWBUTSALL, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWIPO, 0);
break;
case SKEY:
Modified: trunk/blender/source/blender/src/editnla.c
===================================================================
--- trunk/blender/source/blender/src/editnla.c 2007-10-17 12:33:13 UTC (rev 12269)
+++ trunk/blender/source/blender/src/editnla.c 2007-10-17 15:27:38 UTC (rev 12270)
@@ -1203,11 +1203,7 @@
}
}
BIF_undo_push("Border select NLA");
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWIPO, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWSOUND, 0);
+ allqueue(REDRAWMARKER, 0);
}
}
@@ -1262,11 +1258,7 @@
std_rmouse_transform(transform_markers);
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWIPO, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWSOUND, 0);
+ allqueue(REDRAWMARKER, 0);
}
else {
/* Try action ipo selection */
@@ -1725,11 +1717,7 @@
shift_nlastrips_up();
else {
nextprev_marker(1);
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWIPO, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWSOUND, 0);
+ allqueue(REDRAWMARKER, 0);
}
break;
@@ -1742,11 +1730,7 @@
shift_nlastrips_down();
else {
nextprev_marker(-1);
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWIPO, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWSOUND, 0);
+ allqueue(REDRAWMARKER, 0);
}
break;
@@ -1758,11 +1742,7 @@
}
else if (G.qual & LR_CTRLKEY) {
deselect_markers(1, 0);
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWIPO, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWSOUND, 0);
+ allqueue(REDRAWMARKER, 0);
}
else{
if (mval[0]>=NLAWIDTH)
@@ -1831,11 +1811,7 @@
rename_marker();
else
break;
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWIPO, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWSOUND, 0);
+ allqueue(REDRAWMARKER, 0);
break;
case NKEY:
@@ -1856,11 +1832,7 @@
anim_previewrange_set();
else if (G.qual & LR_ALTKEY) /* clear preview range */
anim_previewrange_clear();
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWBUTSALL, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWIPO, 0);
+ allqueue(REDRAWMARKER, 0);
break;
case SKEY:
@@ -1908,11 +1880,7 @@
remove_marker();
- allqueue(REDRAWTIME, 0);
- allqueue(REDRAWIPO, 0);
- allqueue(REDRAWACTION, 0);
- allqueue(REDRAWNLA, 0);
- allqueue(REDRAWSOUND, 0);
+ allqueue(REDRAWMARKER, 0);
}
}
break;
Modified: trunk/blender/source/blender/src/editseq.c
===================================================================
--- trunk/blender/source/blender/src/editseq.c 2007-10-17 12:33:13 UTC (rev 12269)
+++ trunk/blender/source/blender/src/editseq.c 2007-10-17 15:27:38 UTC (rev 12270)
@@ -83,6 +83,7 @@
#include "BIF_editview.h"
#include "BIF_scrarea.h"
#include "BIF_editsound.h"
+#include "BIF_imasel.h"
#include "BSE_edit.h"
#include "BSE_sequence.h"
@@ -90,6 +91,7 @@
#include "BSE_filesel.h"
#include "BSE_drawipo.h"
#include "BSE_seqaudio.h"
+#include "BSE_time.h"
#include "BDR_editobject.h"
@@ -144,7 +146,6 @@
}
-
/* seq funcs's for transforming internally
notice the difference between start/end and left/right.
@@ -664,99 +665,141 @@
{
Sequence *seq,*neighbor;
int hand,seldir;
+ TimeMarker *marker;
+
+ marker=find_nearest_marker(1);
+
+ if (marker) {
+ int oldflag;
+ /* select timeline marker */
+ if ((G.qual & LR_SHIFTKEY)==0) {
+ oldflag= marker->flag;
+ deselect_markers(0, 0);
+
+ if (oldflag & SELECT)
+ marker->flag &= ~SELECT;
+ else
+ marker->flag |= SELECT;
+ }
+ else {
+ marker->flag |= SELECT;
+ }
+ allqueue(REDRAWMARKER, 0);
+ force_draw(0);
- seq= find_nearest_seq(&hand);
-
- if(!(G.qual & LR_SHIFTKEY)&&!(G.qual & LR_ALTKEY)&&!(G.qual & LR_CTRLKEY)) deselect_all_seq();
-
- if(seq) {
- set_last_seq(seq);
-
- if ((seq->type == SEQ_IMAGE) || (seq->type == SEQ_MOVIE)) {
- if(seq->strip) {
- strncpy(last_imagename, seq->strip->dir, FILE_MAXDIR-1);
+ BIF_undo_push("Select Strips, Sequencer");
+
+ } else {
+
+ seq= find_nearest_seq(&hand);
+ if(!(G.qual & LR_SHIFTKEY)&&!(G.qual & LR_ALTKEY)&&!(G.qual & LR_CTRLKEY)) deselect_all_seq();
+
+ if(seq) {
+ set_last_seq(seq);
+
+ if ((seq->type == SEQ_IMAGE) || (seq->type == SEQ_MOVIE)) {
+ if(seq->strip) {
+ strncpy(last_imagename, seq->strip->dir, FILE_MAXDIR-1);
+ }
+ } else
+ if (seq->type == SEQ_HD_SOUND || seq->type == SEQ_RAM_SOUND) {
+ if(seq->strip) {
+ strncpy(last_sounddir, seq->strip->dir, FILE_MAXDIR-1);
+ }
}
- } else
- if (seq->type == SEQ_HD_SOUND || seq->type == SEQ_RAM_SOUND) {
- if(seq->strip) {
- strncpy(last_sounddir, seq->strip->dir, FILE_MAXDIR-1);
+
+ if((G.qual & LR_SHIFTKEY) && (seq->flag & SELECT)) {
+ if(hand==0) seq->flag &= SEQ_DESEL;
+ else if(hand==1) {
+ if(seq->flag & SEQ_LEFTSEL)
+ seq->flag &= ~SEQ_LEFTSEL;
+ else seq->flag |= SEQ_LEFTSEL;
+ }
+ else if(hand==2) {
+ if(seq->flag & SEQ_RIGHTSEL)
+ seq->flag &= ~SEQ_RIGHTSEL;
+ else seq->flag |= SEQ_RIGHTSEL;
+ }
}
- }
-
- if((G.qual & LR_SHIFTKEY) && (seq->flag & SELECT)) {
- if(hand==0) seq->flag &= SEQ_DESEL;
- else if(hand==1) {
- if(seq->flag & SEQ_LEFTSEL)
- seq->flag &= ~SEQ_LEFTSEL;
- else seq->flag |= SEQ_LEFTSEL;
+ else {
+ seq->flag |= SELECT;
+ if(hand==1) seq->flag |= SEQ_LEFTSEL;
+ if(hand==2) seq->flag |= SEQ_RIGHTSEL;
}
- else if(hand==2) {
- if(seq->flag & SEQ_RIGHTSEL)
- seq->flag &= ~SEQ_RIGHTSEL;
- else seq->flag |= SEQ_RIGHTSEL;
- }
- }
- else {
- seq->flag |= SELECT;
- if(hand==1) seq->flag |= SEQ_LEFTSEL;
- if(hand==2) seq->flag |= SEQ_RIGHTSEL;
- }
+
+ /* On Ctrl-Alt selection, select the strip and bordering handles */
+ if ((G.qual & LR_CTRLKEY) && (G.qual & LR_ALTKEY)) {
+ if (!(G.qual & LR_SHIFTKEY)) deselect_all_seq();
+ seq->flag |= SELECT;
+ select_surrounding_handles(seq);
+
+ /* Ctrl signals Left, Alt signals Right
+ First click selects adjacent handles on that side.
+ Second click selects all strips in that direction.
+ If there are no adjacent strips, it just selects all in that direction. */
+ } else if (((G.qual & LR_CTRLKEY) || (G.qual & LR_ALTKEY)) && (seq->flag & SELECT)) {
- /* On Ctrl-Alt selection, select the strip and bordering handles */
- if ((G.qual & LR_CTRLKEY) && (G.qual & LR_ALTKEY)) {
- if (!(G.qual & LR_SHIFTKEY)) deselect_all_seq();
- seq->flag |= SELECT;
- select_surrounding_handles(seq);
-
- /* Ctrl signals Left, Alt signals Right
- First click selects adjacent handles on that side.
- Second click selects all strips in that direction.
- If there are no adjacent strips, it just selects all in that direction. */
- } else if (((G.qual & LR_CTRLKEY) || (G.qual & LR_ALTKEY)) && (seq->flag & SELECT)) {
-
- if (G.qual & LR_CTRLKEY) seldir=1;
- else seldir=2;
- neighbor=find_neighboring_sequence(seq, seldir);
- if (neighbor) {
- switch (seldir) {
- case 1:
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list