Sequencer
- Draw a verticle line for markers - Added an option to transform selected markers in the sequencer - useful for Extending time
This commit is contained in:
@@ -54,7 +54,7 @@ int find_nearest_marker_time(float dx);
|
|||||||
void add_marker_to_cfra_elem(struct ListBase *lb, struct TimeMarker *marker, short only_sel);
|
void add_marker_to_cfra_elem(struct ListBase *lb, struct TimeMarker *marker, short only_sel);
|
||||||
void make_marker_cfra_list(struct ListBase *lb, short only_sel);
|
void make_marker_cfra_list(struct ListBase *lb, short only_sel);
|
||||||
|
|
||||||
void draw_markers_timespace(void);
|
void draw_markers_timespace(int lines);
|
||||||
|
|
||||||
/* ******** Animation - Preview Range ************* */
|
/* ******** Animation - Preview Range ************* */
|
||||||
void anim_previewrange_set(void);
|
void anim_previewrange_set(void);
|
||||||
|
|||||||
@@ -621,6 +621,7 @@ typedef struct SpaceImaSel {
|
|||||||
|
|
||||||
/* sseq->flag */
|
/* sseq->flag */
|
||||||
#define SEQ_DRAWFRAMES 1
|
#define SEQ_DRAWFRAMES 1
|
||||||
|
#define SEQ_MARKER_TRANS 2
|
||||||
|
|
||||||
/* space types, moved from DNA_screen_types.h */
|
/* space types, moved from DNA_screen_types.h */
|
||||||
enum {
|
enum {
|
||||||
|
|||||||
@@ -928,7 +928,7 @@ void drawactionspace(ScrArea *sa, void *spacedata)
|
|||||||
draw_cfra_action();
|
draw_cfra_action();
|
||||||
|
|
||||||
/* Draw markers */
|
/* Draw markers */
|
||||||
draw_markers_timespace();
|
draw_markers_timespace(0);
|
||||||
|
|
||||||
/* Draw 'curtains' for preview */
|
/* Draw 'curtains' for preview */
|
||||||
draw_anim_preview_timespace();
|
draw_anim_preview_timespace();
|
||||||
|
|||||||
@@ -2240,7 +2240,7 @@ void drawipospace(ScrArea *sa, void *spacedata)
|
|||||||
draw_anim_preview_timespace();
|
draw_anim_preview_timespace();
|
||||||
|
|
||||||
/* draw markers */
|
/* draw markers */
|
||||||
draw_markers_timespace();
|
draw_markers_timespace(0);
|
||||||
|
|
||||||
/* restore viewport */
|
/* restore viewport */
|
||||||
mywinset(sa->win);
|
mywinset(sa->win);
|
||||||
|
|||||||
@@ -754,7 +754,7 @@ void drawnlaspace(ScrArea *sa, void *spacedata)
|
|||||||
draw_cfra_action();
|
draw_cfra_action();
|
||||||
|
|
||||||
/* draw markers */
|
/* draw markers */
|
||||||
draw_markers_timespace();
|
draw_markers_timespace(0);
|
||||||
|
|
||||||
/* Draw preview 'curtains' */
|
/* Draw preview 'curtains' */
|
||||||
draw_anim_preview_timespace();
|
draw_anim_preview_timespace();
|
||||||
|
|||||||
@@ -76,6 +76,7 @@
|
|||||||
#include "BSE_seqeffects.h"
|
#include "BSE_seqeffects.h"
|
||||||
#include "BSE_seqscopes.h"
|
#include "BSE_seqscopes.h"
|
||||||
#include "BSE_seqaudio.h"
|
#include "BSE_seqaudio.h"
|
||||||
|
#include "BSE_time.h"
|
||||||
|
|
||||||
#include "IMB_imbuf_types.h"
|
#include "IMB_imbuf_types.h"
|
||||||
#include "IMB_imbuf.h"
|
#include "IMB_imbuf.h"
|
||||||
@@ -883,7 +884,7 @@ static void draw_extra_seqinfo(void)
|
|||||||
|
|
||||||
yfac= G.v2d->cur.ymax - G.v2d->cur.ymin;
|
yfac= G.v2d->cur.ymax - G.v2d->cur.ymin;
|
||||||
yfac/= (float)(G.v2d->mask.ymax-G.v2d->mask.ymin);
|
yfac/= (float)(G.v2d->mask.ymax-G.v2d->mask.ymin);
|
||||||
yco= G.v2d->cur.ymin+10*yfac;
|
yco= G.v2d->cur.ymin+40*yfac;
|
||||||
|
|
||||||
BIF_ThemeColor(TH_TEXT_HI);
|
BIF_ThemeColor(TH_TEXT_HI);
|
||||||
|
|
||||||
@@ -1230,10 +1231,10 @@ static void seq_panel_properties(short cntrl) // SEQ_HANDLER_PROPERTIES
|
|||||||
uiDefButI(block, ROW, SEQ_BUT_EFFECT, "Percent", 10, 30, 150, 19, &transform->percent, 0.0, 1.0, 0.0, 0.0, "Percent Translate");
|
uiDefButI(block, ROW, SEQ_BUT_EFFECT, "Percent", 10, 30, 150, 19, &transform->percent, 0.0, 1.0, 0.0, 0.0, "Percent Translate");
|
||||||
uiDefButI(block, ROW, SEQ_BUT_EFFECT, "Pixels", 160, 30, 150, 19, &transform->percent, 0.0, 0.0, 0.0, 0.0, "Pixels Translate");
|
uiDefButI(block, ROW, SEQ_BUT_EFFECT, "Pixels", 160, 30, 150, 19, &transform->percent, 0.0, 0.0, 0.0, 0.0, "Pixels Translate");
|
||||||
if(transform->percent==1){
|
if(transform->percent==1){
|
||||||
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "x Start:", 10,10,150,19, &transform->xIni, -100.0, 100.0, 0, 0, "X Position Start");
|
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "x Start:", 10,10,150,19, &transform->xIni, -500.0, 500.0, 0, 0, "X Position Start");
|
||||||
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "x End:", 160,10,150,19, &transform->xFin, -100.0, 100.0, 0, 0, "X Position End");
|
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "x End:", 160,10,150,19, &transform->xFin, -500.0, 500.0, 0, 0, "X Position End");
|
||||||
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "y Start:", 10,-10,150,19, &transform->yIni, -100.0, 100.0, 0, 0, "Y Position Start");
|
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "y Start:", 10,-10,150,19, &transform->yIni, -500.0, 500.0, 0, 0, "Y Position Start");
|
||||||
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "y End:", 160,-10,150,19, &transform->yFin, -100.0, 100.0, 0, 0, "Y Position End");
|
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "y End:", 160,-10,150,19, &transform->yFin, -500.0, 500.0, 0, 0, "Y Position End");
|
||||||
}else{
|
}else{
|
||||||
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "x Start:", 10,10,150,19, &transform->xIni, -10000.0, 10000.0, 0, 0, "X Position Start");
|
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "x Start:", 10,10,150,19, &transform->xIni, -10000.0, 10000.0, 0, 0, "X Position Start");
|
||||||
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "x End:", 160,10,150,19, &transform->xFin, -10000.0, 10000.0, 0, 0, "X Position End");
|
uiDefButF(block, NUM, SEQ_BUT_EFFECT, "x End:", 160,10,150,19, &transform->xFin, -10000.0, 10000.0, 0, 0, "X Position End");
|
||||||
@@ -1444,7 +1445,7 @@ void drawseqspace(ScrArea *sa, void *spacedata)
|
|||||||
draw_extra_seqinfo();
|
draw_extra_seqinfo();
|
||||||
|
|
||||||
/* Draw markers */
|
/* Draw markers */
|
||||||
draw_markers_timespace();
|
draw_markers_timespace(1);
|
||||||
|
|
||||||
/* restore viewport */
|
/* restore viewport */
|
||||||
mywinset(sa->win);
|
mywinset(sa->win);
|
||||||
|
|||||||
@@ -219,7 +219,7 @@ void drawsoundspace(ScrArea *sa, void *spacedata)
|
|||||||
}
|
}
|
||||||
|
|
||||||
draw_cfra_sound(spacedata);
|
draw_cfra_sound(spacedata);
|
||||||
draw_markers_timespace();
|
draw_markers_timespace(0);
|
||||||
|
|
||||||
/* restore viewport */
|
/* restore viewport */
|
||||||
mywinset(curarea->win);
|
mywinset(curarea->win);
|
||||||
|
|||||||
@@ -133,7 +133,7 @@ static void draw_cfra_time(SpaceTime *stime)
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void draw_marker(TimeMarker *marker)
|
static void draw_marker(TimeMarker *marker, int lines)
|
||||||
{
|
{
|
||||||
float xpos, ypixels, xscale, yscale;
|
float xpos, ypixels, xscale, yscale;
|
||||||
|
|
||||||
@@ -149,6 +149,21 @@ static void draw_marker(TimeMarker *marker)
|
|||||||
glEnable(GL_BLEND);
|
glEnable(GL_BLEND);
|
||||||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||||
|
|
||||||
|
/* verticle line */
|
||||||
|
if (lines) {
|
||||||
|
setlinestyle(3);
|
||||||
|
if(marker->flag & SELECT)
|
||||||
|
glColor4ub(255,255,255, 96);
|
||||||
|
else
|
||||||
|
glColor4ub(0,0,0, 96);
|
||||||
|
|
||||||
|
glBegin(GL_LINES);
|
||||||
|
glVertex2f((xpos*xscale)+0.5, 12);
|
||||||
|
glVertex2f((xpos*xscale)+0.5, 34*yscale); /* a bit lazy but we know it cant be greater then 34 strips high*/
|
||||||
|
glEnd();
|
||||||
|
setlinestyle(0);
|
||||||
|
}
|
||||||
|
|
||||||
/* 5 px to offset icon to align properly, space / pixels corrects for zoom */
|
/* 5 px to offset icon to align properly, space / pixels corrects for zoom */
|
||||||
if(marker->flag & SELECT)
|
if(marker->flag & SELECT)
|
||||||
BIF_icon_draw(xpos*xscale-5.0, 12.0, ICON_MARKER_HLT);
|
BIF_icon_draw(xpos*xscale-5.0, 12.0, ICON_MARKER_HLT);
|
||||||
@@ -176,24 +191,24 @@ static void draw_marker(TimeMarker *marker)
|
|||||||
glScalef(xscale, yscale, 1.0);
|
glScalef(xscale, yscale, 1.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void draw_markers_time(void)
|
static void draw_markers_time(int lines)
|
||||||
{
|
{
|
||||||
TimeMarker *marker;
|
TimeMarker *marker;
|
||||||
|
|
||||||
/* unselected markers are drawn at the first time */
|
/* unselected markers are drawn at the first time */
|
||||||
for(marker= G.scene->markers.first; marker; marker= marker->next) {
|
for(marker= G.scene->markers.first; marker; marker= marker->next) {
|
||||||
if(!(marker->flag & SELECT)) draw_marker(marker);
|
if(!(marker->flag & SELECT)) draw_marker(marker, lines);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* selected markers are drawn later ... selected markers have to cover unselected
|
/* selected markers are drawn later ... selected markers have to cover unselected
|
||||||
* markers laying at the same position as selected markers
|
* markers laying at the same position as selected markers
|
||||||
* (jiri: it is hack, it could be solved better) */
|
* (jiri: it is hack, it could be solved better) */
|
||||||
for(marker= G.scene->markers.first; marker; marker= marker->next) {
|
for(marker= G.scene->markers.first; marker; marker= marker->next) {
|
||||||
if(marker->flag & SELECT) draw_marker(marker);
|
if(marker->flag & SELECT) draw_marker(marker, lines);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void draw_markers_timespace()
|
void draw_markers_timespace(int lines)
|
||||||
{
|
{
|
||||||
TimeMarker *marker;
|
TimeMarker *marker;
|
||||||
float yspace, ypixels;
|
float yspace, ypixels;
|
||||||
@@ -208,13 +223,13 @@ void draw_markers_timespace()
|
|||||||
|
|
||||||
/* unselected markers are drawn at the first time */
|
/* unselected markers are drawn at the first time */
|
||||||
for(marker= G.scene->markers.first; marker; marker= marker->next) {
|
for(marker= G.scene->markers.first; marker; marker= marker->next) {
|
||||||
if(!(marker->flag & SELECT)) draw_marker(marker);
|
if(!(marker->flag & SELECT)) draw_marker(marker, lines);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* selected markers are drawn later ... selected markers have to cover unselected
|
/* selected markers are drawn later ... selected markers have to cover unselected
|
||||||
* markers laying at the same position as selected markers */
|
* markers laying at the same position as selected markers */
|
||||||
for(marker= G.scene->markers.first; marker; marker= marker->next) {
|
for(marker= G.scene->markers.first; marker; marker= marker->next) {
|
||||||
if(marker->flag & SELECT) draw_marker(marker);
|
if(marker->flag & SELECT) draw_marker(marker, lines);
|
||||||
}
|
}
|
||||||
|
|
||||||
glTranslatef(0.0f, -G.v2d->cur.ymin, 0.0f);
|
glTranslatef(0.0f, -G.v2d->cur.ymin, 0.0f);
|
||||||
@@ -386,7 +401,7 @@ void drawtimespace(ScrArea *sa, void *spacedata)
|
|||||||
|
|
||||||
draw_cfra_time(spacedata);
|
draw_cfra_time(spacedata);
|
||||||
draw_ob_keys();
|
draw_ob_keys();
|
||||||
draw_markers_time();
|
draw_markers_time(0);
|
||||||
|
|
||||||
/* restore viewport */
|
/* restore viewport */
|
||||||
mywinset(curarea->win);
|
mywinset(curarea->win);
|
||||||
|
|||||||
@@ -2625,6 +2625,7 @@ static void transform_grab_xlimits(Sequence *seq, int leftflag, int rightflag)
|
|||||||
|
|
||||||
void transform_seq(int mode, int context)
|
void transform_seq(int mode, int context)
|
||||||
{
|
{
|
||||||
|
SpaceSeq *sseq= curarea->spacedata.first;
|
||||||
Sequence *seq;
|
Sequence *seq;
|
||||||
Editing *ed;
|
Editing *ed;
|
||||||
float dx, dy, dvec[2], div;
|
float dx, dy, dvec[2], div;
|
||||||
@@ -2636,6 +2637,11 @@ void transform_seq(int mode, int context)
|
|||||||
char str[32];
|
char str[32];
|
||||||
char side; /* for extend mode only - use to know which side to extend on */
|
char side; /* for extend mode only - use to know which side to extend on */
|
||||||
|
|
||||||
|
/* for markers */
|
||||||
|
int *oldframe, totmark, a;
|
||||||
|
TimeMarker *marker;
|
||||||
|
|
||||||
|
|
||||||
if(mode!='g' && mode!='e') return; /* from gesture */
|
if(mode!='g' && mode!='e') return; /* from gesture */
|
||||||
|
|
||||||
/* which seqs are involved */
|
/* which seqs are involved */
|
||||||
@@ -2682,6 +2688,31 @@ void transform_seq(int mode, int context)
|
|||||||
side = (xmouse > CFRA) ? 'R' : 'L';
|
side = (xmouse > CFRA) ? 'R' : 'L';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Markers */
|
||||||
|
if (sseq->flag & SEQ_MARKER_TRANS) {
|
||||||
|
for(marker= G.scene->markers.first; marker; marker= marker->next) {
|
||||||
|
if(marker->flag & SELECT) totmark++;
|
||||||
|
}
|
||||||
|
|
||||||
|
oldframe= MEM_mallocN(totmark*sizeof(int), "marker array");
|
||||||
|
for(a=0, marker= G.scene->markers.first; marker; marker= marker->next) {
|
||||||
|
if(marker->flag & SELECT) {
|
||||||
|
if (mode=='e') {
|
||||||
|
|
||||||
|
/* when extending, invalidate markers on the other side by using an invalid frame value */
|
||||||
|
if ((side == 'L' && marker->frame > CFRA) || (side == 'R' && marker->frame < CFRA)) {
|
||||||
|
oldframe[a] = MAXFRAME+1;
|
||||||
|
} else {
|
||||||
|
oldframe[a]= marker->frame;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
oldframe[a]= marker->frame;
|
||||||
|
}
|
||||||
|
a++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
xo=xn= mval[0];
|
xo=xn= mval[0];
|
||||||
yo=yn= mval[1];
|
yo=yn= mval[1];
|
||||||
dvec[0]= dvec[1]= 0.0;
|
dvec[0]= dvec[1]= 0.0;
|
||||||
@@ -2747,6 +2778,16 @@ void transform_seq(int mode, int context)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
END_SEQ
|
END_SEQ
|
||||||
|
|
||||||
|
/* Markers */
|
||||||
|
if (sseq->flag & SEQ_MARKER_TRANS) {
|
||||||
|
for(a=0, marker= G.scene->markers.first; marker; marker= marker->next) {
|
||||||
|
if(marker->flag & SELECT) {
|
||||||
|
marker->frame= oldframe[a] + ix;
|
||||||
|
a++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
/* Extend, grabs one side of the current frame */
|
/* Extend, grabs one side of the current frame */
|
||||||
} else if (mode=='e') {
|
} else if (mode=='e') {
|
||||||
int cfra = CFRA;
|
int cfra = CFRA;
|
||||||
@@ -2840,6 +2881,16 @@ void transform_seq(int mode, int context)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
END_SEQ
|
END_SEQ
|
||||||
|
|
||||||
|
/* markers */
|
||||||
|
if (sseq->flag & SEQ_MARKER_TRANS) {
|
||||||
|
for(a=0, marker= G.scene->markers.first; marker; marker= marker->next) {
|
||||||
|
if(marker->flag & SELECT && (oldframe[a] != MAXFRAME+1)) {
|
||||||
|
marker->frame= oldframe[a] + ix;
|
||||||
|
}
|
||||||
|
a++;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sprintf(str, "X: %d Y: %d ", ix, iy);
|
sprintf(str, "X: %d Y: %d ", ix, iy);
|
||||||
@@ -2919,9 +2970,19 @@ void transform_seq(int mode, int context)
|
|||||||
else if(seq->seq2 && seq->seq2->flag & SELECT) calc_sequence(seq);
|
else if(seq->seq2 && seq->seq2->flag & SELECT) calc_sequence(seq);
|
||||||
else if(seq->seq3 && seq->seq3->flag & SELECT) calc_sequence(seq);
|
else if(seq->seq3 && seq->seq3->flag & SELECT) calc_sequence(seq);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
END_SEQ
|
END_SEQ
|
||||||
|
|
||||||
|
|
||||||
|
/* Markers */
|
||||||
|
if (sseq->flag & SEQ_MARKER_TRANS) {
|
||||||
|
for(a=0, marker= G.scene->markers.first; marker; marker= marker->next) {
|
||||||
|
if(marker->flag & SELECT && (oldframe[a] != MAXFRAME+1)) {
|
||||||
|
marker->frame= oldframe[a];
|
||||||
|
}
|
||||||
|
a++;
|
||||||
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
/* images, effects and overlap */
|
/* images, effects and overlap */
|
||||||
@@ -2953,6 +3014,9 @@ void transform_seq(int mode, int context)
|
|||||||
G.moving= 0;
|
G.moving= 0;
|
||||||
MEM_freeN(transmain);
|
MEM_freeN(transmain);
|
||||||
|
|
||||||
|
if (sseq->flag & SEQ_MARKER_TRANS)
|
||||||
|
MEM_freeN(transmain);
|
||||||
|
|
||||||
if (mode=='g')
|
if (mode=='g')
|
||||||
BIF_undo_push("Transform Grab, Sequencer");
|
BIF_undo_push("Transform Grab, Sequencer");
|
||||||
else if (mode=='e')
|
else if (mode=='e')
|
||||||
|
|||||||
@@ -509,6 +509,8 @@ static uiBlock *seq_editmenu(void *arg_unused)
|
|||||||
|
|
||||||
static void do_seq_markermenu(void *arg, int event)
|
static void do_seq_markermenu(void *arg, int event)
|
||||||
{
|
{
|
||||||
|
SpaceSeq *sseq= curarea->spacedata.first;
|
||||||
|
|
||||||
switch(event)
|
switch(event)
|
||||||
{
|
{
|
||||||
case 1:
|
case 1:
|
||||||
@@ -526,6 +528,10 @@ static void do_seq_markermenu(void *arg, int event)
|
|||||||
case 5:
|
case 5:
|
||||||
transform_markers('g', 0);
|
transform_markers('g', 0);
|
||||||
break;
|
break;
|
||||||
|
case 6:
|
||||||
|
sseq->flag ^= SEQ_MARKER_TRANS;
|
||||||
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
allqueue(REDRAWMARKER, 0);
|
allqueue(REDRAWMARKER, 0);
|
||||||
@@ -536,6 +542,8 @@ static uiBlock *seq_markermenu(void *arg_unused)
|
|||||||
uiBlock *block;
|
uiBlock *block;
|
||||||
short yco= 0, menuwidth=120;
|
short yco= 0, menuwidth=120;
|
||||||
|
|
||||||
|
SpaceSeq *sseq= curarea->spacedata.first;
|
||||||
|
|
||||||
block= uiNewBlock(&curarea->uiblocks, "ipo_markermenu",
|
block= uiNewBlock(&curarea->uiblocks, "ipo_markermenu",
|
||||||
UI_EMBOSSP, UI_HELV, curarea->headwin);
|
UI_EMBOSSP, UI_HELV, curarea->headwin);
|
||||||
uiBlockSetButmFunc(block, do_seq_markermenu, NULL);
|
uiBlockSetButmFunc(block, do_seq_markermenu, NULL);
|
||||||
@@ -554,10 +562,15 @@ static uiBlock *seq_markermenu(void *arg_unused)
|
|||||||
uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Grab/Move Marker|Ctrl G", 0, yco-=20,
|
uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Grab/Move Marker|Ctrl G", 0, yco-=20,
|
||||||
menuwidth, 19, NULL, 0.0, 0.0, 1, 5, "");
|
menuwidth, 19, NULL, 0.0, 0.0, 1, 5, "");
|
||||||
|
|
||||||
|
uiDefBut(block, SEPR, 0, "", 0, yco-=6, menuwidth, 6, NULL, 0.0, 0.0, 0, 0, "");
|
||||||
|
|
||||||
|
uiDefIconTextBut(block, BUTM, 1, (sseq->flag & SEQ_MARKER_TRANS)?ICON_CHECKBOX_HLT:ICON_CHECKBOX_DEHLT,
|
||||||
|
"Transform Markers", 0, yco-=20,
|
||||||
|
menuwidth, 19, NULL, 0.0, 0.0, 1, 6, "");
|
||||||
|
|
||||||
if(curarea->headertype==HEADERTOP) {
|
if(curarea->headertype==HEADERTOP) {
|
||||||
uiBlockSetDirection(block, UI_DOWN);
|
uiBlockSetDirection(block, UI_DOWN);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
uiBlockSetDirection(block, UI_TOP);
|
uiBlockSetDirection(block, UI_TOP);
|
||||||
uiBlockFlipOrder(block);
|
uiBlockFlipOrder(block);
|
||||||
}
|
}
|
||||||
@@ -693,6 +706,8 @@ void seq_buttons()
|
|||||||
uiDefIconBut(block, BUT, B_IPOBORDER, ICON_BORDERMOVE, xco+=XIC,0,XIC,YIC, 0, 0, 0, 0, 0, "Zooms view to fit area");
|
uiDefIconBut(block, BUT, B_IPOBORDER, ICON_BORDERMOVE, xco+=XIC,0,XIC,YIC, 0, 0, 0, 0, 0, "Zooms view to fit area");
|
||||||
uiBlockEndAlign(block);
|
uiBlockEndAlign(block);
|
||||||
|
|
||||||
|
/* CLEAR MEM */
|
||||||
|
xco+= 8;
|
||||||
|
|
||||||
/* CLEAR MEM */
|
/* CLEAR MEM */
|
||||||
xco+= 8;
|
xco+= 8;
|
||||||
|
|||||||
@@ -4506,12 +4506,17 @@ static void winqreadseqspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case AKEY:
|
case AKEY:
|
||||||
|
if (G.qual == LR_CTRLKEY) {
|
||||||
|
deselect_markers(1, 0);
|
||||||
|
allqueue(REDRAWMARKER, 0);
|
||||||
|
} else {
|
||||||
if(sseq->mainb) break;
|
if(sseq->mainb) break;
|
||||||
if((G.qual==LR_SHIFTKEY)) {
|
if((G.qual==LR_SHIFTKEY)) {
|
||||||
add_sequence(-1);
|
add_sequence(-1);
|
||||||
}
|
} else if((G.qual==0)) {
|
||||||
else if((G.qual==0))
|
|
||||||
swap_select_seq();
|
swap_select_seq();
|
||||||
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case SPACEKEY:
|
case SPACEKEY:
|
||||||
if (G.qual==0) {
|
if (G.qual==0) {
|
||||||
|
|||||||
Reference in New Issue
Block a user