added mousewheel support part 2

This commit is contained in:
2003-01-28 11:14:38 +00:00
parent 9ca562765b
commit e785342319
12 changed files with 294 additions and 62 deletions

View File

@@ -33,11 +33,18 @@
#ifndef BSE_DRAWIPO_H #ifndef BSE_DRAWIPO_H
#define BSE_DRAWIPO_H #define BSE_DRAWIPO_H
#define IN_2D_VERT_SCROLL(A) (BLI_in_rcti(&G.v2d->vert, A[0], A[1]))
#define IN_2D_HORIZ_SCROLL(A) (BLI_in_rcti(&G.v2d->hor, A[0], A[1]))
#define SELECT_REPLACE 1
#define SELECT_ADD 2
#define SELECT_SUBTRACT 4
#define SELECT_INVERT 16
struct EditIpo; struct EditIpo;
struct View2D; struct View2D;
struct rctf; struct rctf;
void calc_ipogrid(void); void calc_ipogrid(void);
void draw_ipogrid(void); void draw_ipogrid(void);
@@ -53,7 +60,7 @@ void drawscroll(int disptype);
void drawipo(void); void drawipo(void);
void scroll_ipobuts(void); void scroll_ipobuts(void);
void view2dzoom(void); int view2dzoom(unsigned short event);
int view2dmove(void); int view2dmove(void);
void view2dborder(void); void view2dborder(void);

View File

@@ -48,7 +48,8 @@ typedef struct UserDef {
char sounddir[64]; char sounddir[64];
short versions, vrmlflag; // tmp for export, will be replaced by strubi short versions, vrmlflag; // tmp for export, will be replaced by strubi
int gameflags; int gameflags;
int dummy_1; int wheellinescroll;
short uiflag, pad2;
} UserDef; } UserDef;
extern UserDef U; /* from usiblender.c !!!! */ extern UserDef U; /* from usiblender.c !!!! */
@@ -71,6 +72,13 @@ extern UserDef U; /* from usiblender.c !!!! */
#define TWOBUTTONMOUSE 4096 #define TWOBUTTONMOUSE 4096
#define NONUMPAD 8192 #define NONUMPAD 8192
/* uiflag */
#define KEYINSERTACT 1
#define KEYINSERTOBJ 2
#define WHEELZOOMDIR 4
#define FILTERFILEEXTS 8
/* dupflag */ /* dupflag */
#define DUPMESH 1 #define DUPMESH 1
#define DUPCURVE 2 #define DUPCURVE 2

View File

@@ -56,6 +56,7 @@
#include "DNA_screen_types.h" #include "DNA_screen_types.h"
#include "DNA_space_types.h" #include "DNA_space_types.h"
#include "DNA_sequence_types.h" #include "DNA_sequence_types.h"
#include "DNA_userdef_types.h"
#include "BKE_utildefines.h" #include "BKE_utildefines.h"
#include "BKE_curve.h" #include "BKE_curve.h"
@@ -1440,24 +1441,77 @@ void scroll_ipobuts()
void view2dzoom() int view2dzoom(unsigned short event)
{ {
float fac, dx, dy; float fac, dx, dy, wtemp;
short mval[2], mvalo[2]; short mval[2], mvalo[2];
areawinset(curarea->win); /* vanuit buttons */ areawinset(curarea->win); /* vanuit buttons */
curarea->head_swap= 0; curarea->head_swap= 0;
getmouseco_areawin(mvalo); getmouseco_areawin(mvalo);
while(get_mbut()&(L_MOUSE|M_MOUSE)) { while( (get_mbut()&(L_MOUSE|M_MOUSE)) ||
(event==WHEELUPMOUSE) ||
(event==WHEELDOWNMOUSE) ) {
/* regular mousewheel: zoom regular
* alt-shift mousewheel: zoom y only
* alt-ctrl mousewheel: zoom x only
*/
if (event==WHEELUPMOUSE) {
if(U.uiflag & WHEELZOOMDIR)
wtemp = -0.1154;
else
wtemp = 0.1154;
dx= (float)(wtemp*(G.v2d->cur.xmax-G.v2d->cur.xmin));
dy= (float)(wtemp*(G.v2d->cur.ymax-G.v2d->cur.ymin));
switch (G.qual & (LR_CTRLKEY|LR_SHIFTKEY|LR_ALTKEY)) {
case 0:
break;
case (LR_SHIFTKEY|LR_ALTKEY):
dx = 0;
break;
case (LR_CTRLKEY|LR_ALTKEY):
dy = 0;
break;
default:
return 0;
break;
}
}
else if (event==WHEELDOWNMOUSE) {
if(U.uiflag & WHEELZOOMDIR)
wtemp = 0.1154;
else
wtemp = -0.1154;
dx= (float)(wtemp*(G.v2d->cur.xmax-G.v2d->cur.xmin));
dy= (float)(wtemp*(G.v2d->cur.ymax-G.v2d->cur.ymin));
switch (G.qual & (LR_CTRLKEY|LR_SHIFTKEY|LR_ALTKEY)) {
case 0:
break;
case (LR_SHIFTKEY|LR_ALTKEY):
dx = 0;
break;
case (LR_CTRLKEY|LR_ALTKEY):
dy = 0;
break;
default:
return 0;
break;
}
}
else {
getmouseco_areawin(mval); getmouseco_areawin(mval);
if(mval[0]!=mvalo[0] || mval[1]!=mvalo[1]) {
fac= 0.001*(mval[0]-mvalo[0]); fac= 0.001*(mval[0]-mvalo[0]);
dx= fac*(G.v2d->cur.xmax-G.v2d->cur.xmin); dx= fac*(G.v2d->cur.xmax-G.v2d->cur.xmin);
fac= 0.001*(mval[1]-mvalo[1]); fac= 0.001*(mval[1]-mvalo[1]);
dy= fac*(G.v2d->cur.ymax-G.v2d->cur.ymin); dy= fac*(G.v2d->cur.ymax-G.v2d->cur.ymin);
}
if(mval[0]!=mvalo[0] || mval[1]!=mvalo[1]) {
G.v2d->cur.xmin+= dx; G.v2d->cur.xmin+= dx;
G.v2d->cur.xmax-= dx; G.v2d->cur.xmax-= dx;
@@ -1471,10 +1525,14 @@ void view2dzoom()
screen_swapbuffers(); screen_swapbuffers();
} }
else BIF_wait_for_statechange(); else BIF_wait_for_statechange();
/* return if we were using the mousewheel
*/
if ( (event==WHEELUPMOUSE) || (event==WHEELDOWNMOUSE) ) return 1;
} }
return 1;
} }
int view2dmove() int view2dmove(unsigned short event)
{ {
/* return 1 als er iets gedaan is */ /* return 1 als er iets gedaan is */
float facx=0.0, facy=0.0, dx, dy, left=1.0, right=1.0; float facx=0.0, facy=0.0, dx, dy, left=1.0, right=1.0;
@@ -1484,12 +1542,19 @@ int view2dmove()
scrarea_do_windraw(curarea); scrarea_do_windraw(curarea);
curarea->head_swap= 0; curarea->head_swap= 0;
/* try to do some zooming if the
if(G.qual & LR_CTRLKEY) { * middlemouse and ctrl are pressed
view2dzoom(); * or if the mousewheel is being used.
* Return if zooming was done.
*/
if ( (G.qual & LR_CTRLKEY) ||
(event==WHEELUPMOUSE) ||
(event==WHEELDOWNMOUSE) ) {
if (view2dzoom(event)) {
curarea->head_swap= 0; curarea->head_swap= 0;
return 0; return 0;
} }
}
/* testen waar muis is */ /* testen waar muis is */
getmouseco_areawin(mvalo); getmouseco_areawin(mvalo);
@@ -1500,7 +1565,7 @@ int view2dmove()
facx= (G.v2d->cur.xmax-G.v2d->cur.xmin)/(float)(G.v2d->mask.xmax-G.v2d->mask.xmin); facx= (G.v2d->cur.xmax-G.v2d->cur.xmin)/(float)(G.v2d->mask.xmax-G.v2d->mask.xmin);
facy= (G.v2d->cur.ymax-G.v2d->cur.ymin)/(float)(G.v2d->mask.ymax-G.v2d->mask.ymin); facy= (G.v2d->cur.ymax-G.v2d->cur.ymin)/(float)(G.v2d->mask.ymax-G.v2d->mask.ymin);
} }
else if(BLI_in_rcti(&G.v2d->vert, (int)mvalo[0], (int)mvalo[1])) { else if(IN_2D_VERT_SCROLL((int)mvalo)) {
facy= -(G.v2d->tot.ymax-G.v2d->tot.ymin)/(float)(G.v2d->mask.ymax-G.v2d->mask.ymin); facy= -(G.v2d->tot.ymax-G.v2d->tot.ymin)/(float)(G.v2d->mask.ymax-G.v2d->mask.ymin);
if(get_mbut()&L_MOUSE) { if(get_mbut()&L_MOUSE) {
/* welk deel van de scrollbar moet bewegen? */ /* welk deel van de scrollbar moet bewegen? */
@@ -1509,7 +1574,7 @@ int view2dmove()
leftret= 0; leftret= 0;
} }
} }
else if(BLI_in_rcti(&G.v2d->hor, (int)mvalo[0], (int)mvalo[1])) { else if(IN_2D_HORIZ_SCROLL((int)mvalo)) {
facx= -(G.v2d->tot.xmax-G.v2d->tot.xmin)/(float)(G.v2d->mask.xmax-G.v2d->mask.xmin); facx= -(G.v2d->tot.xmax-G.v2d->tot.xmin)/(float)(G.v2d->mask.xmax-G.v2d->mask.xmin);
if(get_mbut()&L_MOUSE) { if(get_mbut()&L_MOUSE) {
/* welk deel van de scrollbar moet bewegen? */ /* welk deel van de scrollbar moet bewegen? */
@@ -1531,11 +1596,53 @@ int view2dmove()
if(get_mbut()&L_MOUSE && leftret) return 0; if(get_mbut()&L_MOUSE && leftret) return 0;
if(facx==0.0 && facy==0.0) return 1; if(facx==0.0 && facy==0.0) return 1;
while(get_mbut()&(L_MOUSE|M_MOUSE)) { while( (get_mbut()&(L_MOUSE|M_MOUSE)) ||
(event==WHEELUPMOUSE) ||
(event==WHEELDOWNMOUSE) ) {
/* If the mousewheel is used with shift key
* the scroll up and down. If the mousewheel
* is used with the ctrl key then scroll left
* and right.
*/
if (event==WHEELUPMOUSE) {
switch (G.qual & (LR_CTRLKEY|LR_SHIFTKEY|LR_ALTKEY)) {
case (LR_SHIFTKEY):
dx = 0.0;
dy= facy*10.0;
break;
case (LR_CTRLKEY):
dx= facx*10.0;
dy = 0.0;
break;
default:
return 0;
break;
}
}
else if (event==WHEELDOWNMOUSE) {
switch (G.qual & (LR_CTRLKEY|LR_SHIFTKEY|LR_ALTKEY)) {
case (LR_SHIFTKEY):
dx = 0.0;
dy= -facy*10.0;
break;
case (LR_CTRLKEY):
dx= -facx*10.0;
dy = 0.0;
break;
default:
return 0;
break;
}
}
else {
getmouseco_areawin(mval); getmouseco_areawin(mval);
if(mval[0]!=mvalo[0] || mval[1]!=mvalo[1]) {
dx= facx*(mvalo[0]-mval[0]); dx= facx*(mvalo[0]-mval[0]);
dy= facy*(mvalo[1]-mval[1]); dy= facy*(mvalo[1]-mval[1]);
}
if(mval[0]!=mvalo[0] || mval[1]!=mvalo[1]) {
G.v2d->cur.xmin+= left*dx; G.v2d->cur.xmin+= left*dx;
G.v2d->cur.xmax+= right*dx; G.v2d->cur.xmax+= right*dx;
G.v2d->cur.ymin+= left*dy; G.v2d->cur.ymin+= left*dy;
@@ -1551,12 +1658,15 @@ int view2dmove()
} }
else BIF_wait_for_statechange(); else BIF_wait_for_statechange();
/* return if we were using the mousewheel
*/
if ( (event==WHEELUPMOUSE) || (event==WHEELDOWNMOUSE) ) return 1;
} }
curarea->head_swap= 0; curarea->head_swap= 0;
return 1; return 1;
} }
void view2dborder(void) void view2dborder(void)
{ {

View File

@@ -55,6 +55,7 @@
#include "DNA_text_types.h" #include "DNA_text_types.h"
#include "DNA_space_types.h" #include "DNA_space_types.h"
#include "DNA_screen_types.h" #include "DNA_screen_types.h"
#include "DNA_userdef_types.h"
#include "BKE_utildefines.h" #include "BKE_utildefines.h"
#include "BKE_text.h" #include "BKE_text.h"
@@ -1142,12 +1143,12 @@ void winqreadtextspace(unsigned short event, short val, char ascii)
break; break;
case WHEELUPMOUSE: case WHEELUPMOUSE:
screen_skip(st, -3); screen_skip(st, -U.wheellinescroll);
do_draw= 1; do_draw= 1;
break; break;
case WHEELDOWNMOUSE: case WHEELDOWNMOUSE:
screen_skip(st, 3); screen_skip(st, U.wheellinescroll);
do_draw= 1; do_draw= 1;
break; break;
} }

View File

@@ -673,7 +673,7 @@ void paste_posebuf (int flip){
/* Safely merge all of the channels in this pose into /* Safely merge all of the channels in this pose into
any existing pose */ any existing pose */
if (ob->pose){ if (ob->pose){
if (U.flag & 0x01<<14){ if (U.uiflag & KEYINSERTACT){
/* Display "Avail, all" dialog */ /* Display "Avail, all" dialog */
} }
for (chan=g_posebuf->chanbase.first; chan; chan=chan->next){ for (chan=g_posebuf->chanbase.first; chan; chan=chan->next){
@@ -691,7 +691,7 @@ void paste_posebuf (int flip){
temp = set_pose_channel (ob->pose, temp); temp = set_pose_channel (ob->pose, temp);
if (U.flag & 0x01<<14){ if (U.uiflag & KEYINSERTACT){
/* Set keys on pose */ /* Set keys on pose */
if (chan->flag & POSE_ROT){ if (chan->flag & POSE_ROT){
set_action_key(ob->action, temp, AC_QUAT_X, newchan); set_action_key(ob->action, temp, AC_QUAT_X, newchan);
@@ -713,7 +713,7 @@ void paste_posebuf (int flip){
} }
} }
if (U.flag & 0x01<<14){ if (U.uiflag & KEYINSERTACT){
remake_action_ipos(ob->action); remake_action_ipos(ob->action);
allqueue (REDRAWIPO, 0); allqueue (REDRAWIPO, 0);
allqueue (REDRAWVIEW3D, 0); allqueue (REDRAWVIEW3D, 0);
@@ -1488,6 +1488,8 @@ void winqreadactionspace(unsigned short event, short val, char ascii)
break; break;
case MIDDLEMOUSE: case MIDDLEMOUSE:
case WHEELUPMOUSE:
case WHEELDOWNMOUSE:
view2dmove(); /* in drawipo.c */ view2dmove(); /* in drawipo.c */
break; break;
} }

View File

@@ -53,6 +53,7 @@
#include "DNA_screen_types.h" #include "DNA_screen_types.h"
#include "DNA_space_types.h" #include "DNA_space_types.h"
#include "DNA_userdef_types.h"
#include "BKE_global.h" #include "BKE_global.h"
@@ -273,8 +274,8 @@ void winqreadimasel(unsigned short event, short val, char ascii)
case IMS_INDIRSLI: case IMS_INDIRSLI:
case IMS_INDIR: case IMS_INDIR:
if (simasel->dirsli){ if (simasel->dirsli){
if (event == WHEELUPMOUSE) simasel->topdir -= 1; if (event == WHEELUPMOUSE) simasel->topdir -= U.wheellinescroll;
if (event == WHEELDOWNMOUSE) simasel->topdir += 1; if (event == WHEELDOWNMOUSE) simasel->topdir += U.wheellinescroll;
queredraw = 1; queredraw = 1;
} }
break; break;

View File

@@ -227,6 +227,8 @@ int calc_memleak (void* ptr){
break; break;
case MIDDLEMOUSE: case MIDDLEMOUSE:
case WHEELUPMOUSE:
case WHEELDOWNMOUSE:
view2dmove(); /* in drawipo.c */ view2dmove(); /* in drawipo.c */
break; break;
} }

View File

@@ -3249,7 +3249,7 @@ void special_aftertrans_update(char mode, int flip, short canceled, int keyflags
bPose *pose; bPose *pose;
bPoseChannel *pchan; bPoseChannel *pchan;
if (U.flag & (0x01<<14) && !canceled){ if (U.uiflag & KEYINSERTACT && !canceled){
act=G.obpose->action; act=G.obpose->action;
pose=G.obpose->pose; pose=G.obpose->pose;
@@ -3339,7 +3339,7 @@ void special_aftertrans_update(char mode, int flip, short canceled, int keyflags
where_is_object(ob); /* altijd ivm track eytc */ where_is_object(ob); /* altijd ivm track eytc */
/* Set autokey if necessary */ /* Set autokey if necessary */
if ((U.flag & (0x01<<15)) && (!canceled) && (base->flag & SELECT)){ if ((U.uiflag & KEYINSERTOBJ) && (!canceled) && (base->flag & SELECT)){
if (keyflags & KEYFLAG_ROT){ if (keyflags & KEYFLAG_ROT){
insertkey(&base->object->id, OB_ROT_X); insertkey(&base->object->id, OB_ROT_X);
insertkey(&base->object->id, OB_ROT_Y); insertkey(&base->object->id, OB_ROT_Y);
@@ -4632,12 +4632,31 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
prop_size*= 1.1; prop_size*= 1.1;
firsttime= 1; firsttime= 1;
} }
else {
persptoetsen(PADPLUSKEY);
firsttime= 1;
}
break; break;
case WHEELUPMOUSE:
persptoetsen(PADPLUSKEY);
firsttime= 1;
break;
case PADMINUS: case PADMINUS:
if(G.f & G_PROPORTIONAL) { if(G.f & G_PROPORTIONAL) {
prop_size*= 0.90909090; prop_size*= 0.90909090;
firsttime= 1; firsttime= 1;
} }
else {
persptoetsen(PADMINUS);
firsttime= 1;
}
break;
case WHEELDOWNMOUSE:
persptoetsen(PADMINUS);
firsttime= 1;
break; break;
case LEFTSHIFTKEY: case LEFTSHIFTKEY:

View File

@@ -135,12 +135,13 @@ void winqreadsoundspace(unsigned short event, short val, char ascii)
} }
break; break;
case MIDDLEMOUSE: case MIDDLEMOUSE:
case WHEELUPMOUSE:
case WHEELDOWNMOUSE:
view2dmove(); /* in drawipo.c */ view2dmove(); /* in drawipo.c */
break; break;
case RIGHTMOUSE: case RIGHTMOUSE:
/* mouse_select_seq(); */ /* mouse_select_seq(); */
break; break;
case WHEELDOWNMOUSE:
case PADPLUSKEY: case PADPLUSKEY:
dx= (float)(0.1154*(G.v2d->cur.xmax-G.v2d->cur.xmin)); dx= (float)(0.1154*(G.v2d->cur.xmax-G.v2d->cur.xmin));
G.v2d->cur.xmin+= dx; G.v2d->cur.xmin+= dx;
@@ -149,7 +150,6 @@ void winqreadsoundspace(unsigned short event, short val, char ascii)
doredraw= 1; doredraw= 1;
break; break;
case WHEELUPMOUSE:
case PADMINUS: case PADMINUS:
dx= (float)(0.15*(G.v2d->cur.xmax-G.v2d->cur.xmin)); dx= (float)(0.15*(G.v2d->cur.xmax-G.v2d->cur.xmin));
G.v2d->cur.xmin-= dx; G.v2d->cur.xmin-= dx;

View File

@@ -1737,13 +1737,13 @@ void winqreadfilespace(unsigned short event, short val, char ascii)
break; break;
case WHEELDOWNMOUSE: case WHEELDOWNMOUSE:
do_filescrollwheel(sfile, 3); //U.wheellinescroll); do_filescrollwheel(sfile, U.wheellinescroll);
act= find_active_file(sfile, mval[0], mval[1]); act= find_active_file(sfile, mval[0], mval[1]);
set_active_file(sfile, act); set_active_file(sfile, act);
do_draw= 1; do_draw= 1;
break; break;
case WHEELUPMOUSE: case WHEELUPMOUSE:
do_filescrollwheel(sfile, -3); //U.wheellinescroll); do_filescrollwheel(sfile, -U.wheellinescroll);
act= find_active_file(sfile, mval[0], mval[1]); act= find_active_file(sfile, mval[0], mval[1]);
set_active_file(sfile, act); set_active_file(sfile, act);
do_draw= 1; do_draw= 1;

View File

@@ -3934,7 +3934,7 @@ void do_ipo_buttons(short event)
break; break;
case B_VIEW2DZOOM: case B_VIEW2DZOOM:
viewmovetemp= 0; viewmovetemp= 0;
view2dzoom(); view2dzoom(event);
scrarea_queue_headredraw(curarea); scrarea_queue_headredraw(curarea);
break; break;

View File

@@ -520,6 +520,67 @@ void winqread3d(unsigned short event, short val, char ascii)
mouse_select(); mouse_select();
break; break;
case WHEELUPMOUSE:
/* Regular: Zoom in */
/* Shift: Scroll up */
/* Ctrl: Scroll right */
/* Alt-Shift: Rotate up */
/* Alt-Ctrl: Rotate right */
if( G.qual & LR_SHIFTKEY ) {
if( G.qual & LR_ALTKEY ) {
G.qual &= ~LR_SHIFTKEY;
persptoetsen(PAD2);
G.qual |= LR_SHIFTKEY;
} else {
persptoetsen(PAD2);
}
} else if( G.qual & LR_CTRLKEY ) {
if( G.qual & LR_ALTKEY ) {
G.qual &= ~LR_CTRLKEY;
persptoetsen(PAD4);
G.qual |= LR_CTRLKEY;
} else {
persptoetsen(PAD4);
}
} else if(U.uiflag & WHEELZOOMDIR)
persptoetsen(PADMINUS);
else
persptoetsen(PADPLUSKEY);
doredraw= 1;
break;
case WHEELDOWNMOUSE:
/* Regular: Zoom out */
/* Shift: Scroll down */
/* Ctrl: Scroll left */
/* Alt-Shift: Rotate down */
/* Alt-Ctrl: Rotate left */
if( G.qual & LR_SHIFTKEY ) {
if( G.qual & LR_ALTKEY ) {
G.qual &= ~LR_SHIFTKEY;
persptoetsen(PAD8);
G.qual |= LR_SHIFTKEY;
} else {
persptoetsen(PAD8);
}
} else if( G.qual & LR_CTRLKEY ) {
if( G.qual & LR_ALTKEY ) {
G.qual &= ~LR_CTRLKEY;
persptoetsen(PAD6);
G.qual |= LR_CTRLKEY;
} else {
persptoetsen(PAD6);
}
} else if(U.uiflag & WHEELZOOMDIR)
persptoetsen(PADPLUSKEY);
else
persptoetsen(PADMINUS);
doredraw= 1;
break;
case ONEKEY: case ONEKEY:
do_layer_buttons(0); break; do_layer_buttons(0); break;
case TWOKEY: case TWOKEY:
@@ -1080,6 +1141,12 @@ void winqreadipo(unsigned short event, short val, char ascii)
} }
else view2dmove(); /* in drawipo.c */ else view2dmove(); /* in drawipo.c */
break; break;
case WHEELUPMOUSE:
case WHEELDOWNMOUSE:
view2dmove(event); /* in drawipo.c */
break;
case RIGHTMOUSE: case RIGHTMOUSE:
mouse_select_ipo(); mouse_select_ipo();
allqueue (REDRAWACTION, 0); allqueue (REDRAWACTION, 0);
@@ -1306,8 +1373,8 @@ void drawinfospace(void)
"Enables/Disables tooltips"); "Enables/Disables tooltips");
// uiDefButS(block, ICONTOG|BIT|14, 0, ICON(), 733,10,50,42, &(U.flag), 0, 0, 0, 0, "Automatic keyframe insertion"); // uiDefButS(block, ICONTOG|BIT|14, 0, ICON(), 733,10,50,42, &(U.flag), 0, 0, 0, 0, "Automatic keyframe insertion");
uiDefButS(block, TOG|BIT|14, 0, "KeyAC", 733,32,50,20, &(U.flag), 0, 0, 0, 0, "Automatic keyframe insertion for actions"); uiDefButS(block, TOG|BIT|0, 0, "KeyAC", 733,32,50,20, &(U.uiflag), 0, 0, 0, 0, "Automatic keyframe insertion for actions");
uiDefButS(block, TOG|BIT|15, 0, "KeyOB", 733,10,50,20, &(U.flag), 0, 0, 0, 0, "Automatic keyframe insertion for objects"); uiDefButS(block, TOG|BIT|1, 0, "KeyOB", 733,10,50,20, &(U.uiflag), 0, 0, 0, 0, "Automatic keyframe insertion for objects");
uiDefButS(block, TOG|BIT|1, 0, "Grab Grid", 788,32,106,20, &(U.flag), 0, 0, 0, 0, "Changes default step mode for grabbing"); uiDefButS(block, TOG|BIT|1, 0, "Grab Grid", 788,32,106,20, &(U.flag), 0, 0, 0, 0, "Changes default step mode for grabbing");
uiDefButS(block, TOG|BIT|2, 0, "Rot", 842,10,52,20, &(U.flag), 0, 0, 0, 0, "Changes default step mode for rotation"); uiDefButS(block, TOG|BIT|2, 0, "Rot", 842,10,52,20, &(U.flag), 0, 0, 0, 0, "Changes default step mode for rotation");
@@ -1326,8 +1393,16 @@ void drawinfospace(void)
uiDefButS(block, TOG|BIT|8, 0, "Texture", 1153,10,70,20, &(U.dupflag), 0, 0, 0, 0, "Causes Texture data to be duplicated with Shift+D"); uiDefButS(block, TOG|BIT|8, 0, "Texture", 1153,10,70,20, &(U.dupflag), 0, 0, 0, 0, "Causes Texture data to be duplicated with Shift+D");
uiBlockSetCol(block, BUTGREY); uiBlockSetCol(block, BUTGREY);
uiDefButS(block, NUM, 0, "WLines",
1153,54,70,20, &U.wheellinescroll,
0.0, 32.0, 0, 0,
"Mousewheel: The number of lines that get skipped");
uiDefButS(block, TOG|BIT|2, 0, "WZoom",
1081,54,70,20, &(U.uiflag), 0, 0, 0, 0,
"Mousewheel: Swaps mousewheel zoom direction");
dx= (1280-90)/6; dx= (1280-90)/6;
@@ -1413,8 +1488,11 @@ void winqreadbutspace(unsigned short event, short val, char ascii)
break; break;
case MIDDLEMOUSE: case MIDDLEMOUSE:
view2dmove(); /* in drawipo.c */ case WHEELUPMOUSE:
case WHEELDOWNMOUSE:
view2dmove(event); /* in drawipo.c */
break; break;
case PADPLUSKEY: case PADPLUSKEY:
case PADMINUS: case PADMINUS:
val= SPACE_BUTS; val= SPACE_BUTS;
@@ -1592,6 +1670,8 @@ void winqreadsequence(unsigned short event, short val, char ascii)
} }
break; break;
case MIDDLEMOUSE: case MIDDLEMOUSE:
case WHEELUPMOUSE:
case WHEELDOWNMOUSE:
if(sseq->mainb) break; if(sseq->mainb) break;
view2dmove(); /* in drawipo.c */ view2dmove(); /* in drawipo.c */
break; break;
@@ -2097,6 +2177,8 @@ void winqreadoopsspace(unsigned short event, short val, char ascii)
gesture(); gesture();
break; break;
case MIDDLEMOUSE: case MIDDLEMOUSE:
case WHEELUPMOUSE:
case WHEELDOWNMOUSE:
view2dmove(); /* in drawipo.c */ view2dmove(); /* in drawipo.c */
break; break;
case RIGHTMOUSE: case RIGHTMOUSE: