Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2003-03-24 04:46:05 +0300
committerDaniel Dunbar <daniel@zuster.org>2003-03-24 04:46:05 +0300
commit1f3f52f5e4eb8b55a7ba1d7bc1d656b6a12f0df0 (patch)
treeb57723c590e41321824bc4a7ce31260f1031b32e /source
parenta6a50cc27f9f961ac78ae63aea75a5931f3bd333 (diff)
Update space dispatch:
- drawXXXspace, changeXXXspace, and winqreadXXXspace now receive the area and spacedata as explicit arguments, allowing them to access private data w/o going through globals. - pass the new BWinEvent through to the winqreadXXXspace, allowing future access to extended event data. Removed direct calls to winqreadXXXspace to simulate user actions, replaced by calls to action functions in edit.c or the appropriate handler.
Diffstat (limited to 'source')
-rw-r--r--source/blender/include/BIF_drawimage.h3
-rw-r--r--source/blender/include/BIF_drawseq.h4
-rw-r--r--source/blender/include/BIF_space.h23
-rw-r--r--source/blender/include/BIF_spacetypes.h7
-rw-r--r--source/blender/include/BSE_drawimasel.h3
-rw-r--r--source/blender/include/BSE_drawipo.h4
-rw-r--r--source/blender/include/BSE_drawnla.h4
-rw-r--r--source/blender/include/BSE_drawoops.h3
-rw-r--r--source/blender/include/BSE_drawview.h3
-rw-r--r--source/blender/include/BSE_edit.h4
-rw-r--r--source/blender/include/BSE_editaction.h2
-rw-r--r--source/blender/include/BSE_editipo.h1
-rw-r--r--source/blender/include/BSE_filesel.h5
-rw-r--r--source/blender/src/buttons.c2
-rw-r--r--source/blender/src/drawaction.c4
-rw-r--r--source/blender/src/drawimage.c2
-rw-r--r--source/blender/src/drawimasel.c2
-rw-r--r--source/blender/src/drawipo.c12
-rw-r--r--source/blender/src/drawnla.c2
-rw-r--r--source/blender/src/drawoops.c2
-rw-r--r--source/blender/src/drawseq.c2
-rw-r--r--source/blender/src/drawsound.c4
-rw-r--r--source/blender/src/drawtext.c11
-rw-r--r--source/blender/src/drawview.c3
-rw-r--r--source/blender/src/edit.c46
-rw-r--r--source/blender/src/editaction.c5
-rw-r--r--source/blender/src/editimasel.c6
-rw-r--r--source/blender/src/editipo.c10
-rw-r--r--source/blender/src/editnla.c5
-rw-r--r--source/blender/src/editscreen.c2
-rw-r--r--source/blender/src/editseq.c4
-rw-r--r--source/blender/src/editsound.c10
-rw-r--r--source/blender/src/filesel.c7
-rw-r--r--source/blender/src/headerbuttons.c25
-rw-r--r--source/blender/src/renderwin.c8
-rw-r--r--source/blender/src/space.c173
-rw-r--r--source/blender/src/spacetypes.c6
-rw-r--r--source/blender/src/usiblender.c1
-rw-r--r--source/blender/src/writeavicodec.c1
39 files changed, 239 insertions, 182 deletions
diff --git a/source/blender/include/BIF_drawimage.h b/source/blender/include/BIF_drawimage.h
index 5c862dc0e31..fdf4afd029a 100644
--- a/source/blender/include/BIF_drawimage.h
+++ b/source/blender/include/BIF_drawimage.h
@@ -33,10 +33,11 @@
#ifndef BIF_DRAWIMAGE_H
#define BIF_DRAWIMAGE_H
+struct ScrArea;
struct SpaceImage;
void calc_image_view(struct SpaceImage *sima, char mode);
-void drawimagespace(void);
+void drawimagespace(struct ScrArea *sa, void *spacedata);
void draw_tfaces(void);
void image_changed(struct SpaceImage *sima, int dotile);
void image_home(void);
diff --git a/source/blender/include/BIF_drawseq.h b/source/blender/include/BIF_drawseq.h
index d122aeb071e..336fd54bd1e 100644
--- a/source/blender/include/BIF_drawseq.h
+++ b/source/blender/include/BIF_drawseq.h
@@ -33,8 +33,10 @@
#ifndef BIF_DRAWSEQ_H
#define BIF_DRAWSEQ_H
+struct ScrArea;
struct Sequence;
-void drawseqspace(void);
+
+void drawseqspace(struct ScrArea *sa, void *spacedata);
void drawseq(struct Sequence *seq);
void set_special_seq_update(int val);
diff --git a/source/blender/include/BIF_space.h b/source/blender/include/BIF_space.h
index 33add3085a6..2c6f6f1ecee 100644
--- a/source/blender/include/BIF_space.h
+++ b/source/blender/include/BIF_space.h
@@ -53,12 +53,9 @@ void scrarea_do_headchange (struct ScrArea *sa);
extern void space_set_commmandline_options(void);
extern void allqueue(unsigned short event, short val);
extern void allspace(unsigned short event, short val);
-extern void changebutspace(void);
-extern void changeview2d(void);
-extern void changeview3d(void);
extern void copy_view3d_lock(short val);
-extern void drawemptyspace(void);
-extern void drawinfospace(void);
+extern void drawemptyspace(struct ScrArea *sa, void *spacedata);
+extern void drawinfospace(struct ScrArea *sa, void *spacedata);
extern void duplicatespacelist(struct ScrArea *area, struct ListBase *lb1, struct ListBase *lb2);
extern void extern_set_butspace(int fkey);
extern void force_draw(void);
@@ -77,14 +74,14 @@ extern void initipo(struct ScrArea *sa);
extern void initview3d(struct ScrArea *sa);
extern void newspace(struct ScrArea *sa, int type);
extern void set_rects_butspace(struct SpaceButs *buts);
-extern void winqreadview3dspace(unsigned short event, short val, char ascii);
-extern void winqreadbutspace(unsigned short event, short val, char ascii);
-extern void winqreadimagespace(unsigned short event, short val, char ascii);
-extern void winqreadinfospace(unsigned short event, short val, char ascii);
-extern void winqreadipospace(unsigned short event, short val, char ascii);
-extern void winqreadoopsspace(unsigned short event, short val, char ascii);
-extern void winqreadnlaspace(unsigned short event, short val, char ascii);
-extern void winqreadseqspace(unsigned short event, short val, char ascii);
+extern void winqreadview3dspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
+extern void winqreadbutspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
+extern void winqreadimagespace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
+extern void winqreadinfospace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
+extern void winqreadipospace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
+extern void winqreadoopsspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
+extern void winqreadnlaspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
+extern void winqreadseqspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
extern void test_butspace(void);
extern void start_game(void);
diff --git a/source/blender/include/BIF_spacetypes.h b/source/blender/include/BIF_spacetypes.h
index 9ce075fd917..469ddf24354 100644
--- a/source/blender/include/BIF_spacetypes.h
+++ b/source/blender/include/BIF_spacetypes.h
@@ -31,12 +31,13 @@
*/
struct ScrArea;
+struct BWinEvent;
typedef struct _SpaceType SpaceType;
-typedef void (*SpaceDrawFP) (void);
-typedef void (*SpaceChangeFP) (void);
-typedef void (*SpaceHandleFP) (unsigned short evt, short val, char ascii);
+typedef void (*SpaceDrawFP) (struct ScrArea *sa, void *spacedata);
+typedef void (*SpaceChangeFP) (struct ScrArea *sa, void *spacedata);
+typedef void (*SpaceHandleFP) (struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
/***/
diff --git a/source/blender/include/BSE_drawimasel.h b/source/blender/include/BSE_drawimasel.h
index 3eef9faec46..f412ca08584 100644
--- a/source/blender/include/BSE_drawimasel.h
+++ b/source/blender/include/BSE_drawimasel.h
@@ -33,6 +33,7 @@
#ifndef BSE_DRAWIMASEL_H
#define BSE_DRAWIMASEL_H
+struct ScrArea;
struct SpaceImaSel;
void viewgate(short sx, short sy, short ex, short ey);
@@ -45,7 +46,7 @@ void move_imadir_sli(struct SpaceImaSel *simasel);
void move_imafile_sli(struct SpaceImaSel *simasel);
void ima_select_all(struct SpaceImaSel *simasel);
void pibplay(struct SpaceImaSel *simasel);
-void drawimaselspace(void);
+void drawimaselspace(struct ScrArea *sa, void *spacedata);
/* void calc_hilite(SpaceImaSel *simasel); */
/* void ima_select_all(SpaceImaSel *simasel); */
diff --git a/source/blender/include/BSE_drawipo.h b/source/blender/include/BSE_drawipo.h
index b1f92668be5..298d15c19ba 100644
--- a/source/blender/include/BSE_drawipo.h
+++ b/source/blender/include/BSE_drawipo.h
@@ -41,6 +41,7 @@
#define SELECT_SUBTRACT 4
#define SELECT_INVERT 16
+struct ScrArea;
struct EditIpo;
struct View2D;
struct rctf;
@@ -52,12 +53,13 @@ void areamouseco_to_ipoco (struct View2D *v2d, short *mval, float *x, float *y);
void ipoco_to_areaco (struct View2D *v2d, float *vec, short *mval);
void ipoco_to_areaco_noclip (struct View2D *v2d, float *vec, short *mval);
+void view2d_zoom (struct View2D *v2d, float factor, int winx, int winy);
void test_view2d (struct View2D *v2d, int winx, int winy);
void calc_scrollrcts (struct View2D *v2d, int winx, int winy);
int in_ipo_buttons(void);
void drawscroll(int disptype);
-void drawipospace(void);
+void drawipospace(struct ScrArea *sa, void *spacedata);
void center_currframe(void);
void scroll_ipobuts(void);
diff --git a/source/blender/include/BSE_drawnla.h b/source/blender/include/BSE_drawnla.h
index b71c604acfe..d9d27204e28 100644
--- a/source/blender/include/BSE_drawnla.h
+++ b/source/blender/include/BSE_drawnla.h
@@ -33,7 +33,9 @@
#ifndef BSE_DRAWNLA_H
#define BSE_DRAWNLA_H
-void drawnlaspace(void);
+struct ScrArea;
+
+void drawnlaspace(struct ScrArea *sa, void *spacedata);
#endif /* BSE_DRAWNLA */
diff --git a/source/blender/include/BSE_drawoops.h b/source/blender/include/BSE_drawoops.h
index ef52d9e2c92..b042fc097fa 100644
--- a/source/blender/include/BSE_drawoops.h
+++ b/source/blender/include/BSE_drawoops.h
@@ -33,6 +33,7 @@
#ifndef BSE_DRAWOOPS_H
#define BSE_DRAWOOPS_H
+struct ScrArea;
struct Oops;
struct uiBlock;
@@ -44,7 +45,7 @@ void mysbox(float x1, float y1, float x2, float y2);
unsigned int give_oops_color(short type, short sel, unsigned int *border);
void calc_oopstext(char *str, float *v1);
void draw_oops(struct Oops *oops, struct uiBlock *block);
-void drawoopsspace(void);
+void drawoopsspace(struct ScrArea *sa, void *spacedata);
#endif /* BSE_DRAWOOPS */
diff --git a/source/blender/include/BSE_drawview.h b/source/blender/include/BSE_drawview.h
index f0cba1eeb64..299c697a30f 100644
--- a/source/blender/include/BSE_drawview.h
+++ b/source/blender/include/BSE_drawview.h
@@ -36,6 +36,7 @@
struct Object;
struct BGpic;
struct rcti;
+struct ScrArea;
void setalpha_bgpic(struct BGpic *bgpic);
void default_gl_light(void);
@@ -44,7 +45,7 @@ void two_sided(int val);
void circf(float x, float y, float rad);
void circ(float x, float y, float rad);
void backdrawview3d(int test);
-void drawview3dspace(void);
+void drawview3dspace(struct ScrArea *sa, void *spacedata);
void drawview3d_render(struct View3D *v3d);
int update_time(void);
void calc_viewborder(struct View3D *v3d, struct rcti *viewborder_r);
diff --git a/source/blender/include/BSE_edit.h b/source/blender/include/BSE_edit.h
index cb76517fe56..e776f99ad28 100644
--- a/source/blender/include/BSE_edit.h
+++ b/source/blender/include/BSE_edit.h
@@ -40,6 +40,10 @@ int get_border(struct rcti *rect, short col);
void count_object(struct Object *ob, int sel);
void countall(void);
void snapmenu(void);
+void mergemenu(void);
+void delete_context_selected(void);
+void duplicate_context_selected(void);
+void toggle_shading(void);
#endif /* BSE_EDIT_H */
diff --git a/source/blender/include/BSE_editaction.h b/source/blender/include/BSE_editaction.h
index 841549de260..2a9878adb11 100644
--- a/source/blender/include/BSE_editaction.h
+++ b/source/blender/include/BSE_editaction.h
@@ -48,7 +48,7 @@ void set_action_key (struct bAction *act, struct bPoseChannel *chan, int adrcode
struct bAction *add_empty_action(void);
void deselect_actionchannel_keys (struct bAction *act, int test);
void deselect_actionchannels (struct bAction *act, int test);
-void winqreadactionspace(unsigned short event, short val, char ascii);
+void winqreadactionspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
void remake_action_ipos(struct bAction *act);
void select_actionchannel_by_name (struct bAction *act, char *name, int select);
struct bAction *bake_action_with_client (struct bAction *act, struct Object *arm, float tolerance);
diff --git a/source/blender/include/BSE_editipo.h b/source/blender/include/BSE_editipo.h
index 40650b6f27f..3522056f21e 100644
--- a/source/blender/include/BSE_editipo.h
+++ b/source/blender/include/BSE_editipo.h
@@ -81,6 +81,7 @@ void test_editipo(void);
void get_status_editipo(void);
void update_editipo_flags(void);
void set_editflag_editipo(void);
+void ipo_toggle_showkey(void);
void swap_selectall_editipo(void);
void swap_visible_editipo(void);
void deselectall_editipo(void);
diff --git a/source/blender/include/BSE_filesel.h b/source/blender/include/BSE_filesel.h
index 87daea87bf2..960708d4010 100644
--- a/source/blender/include/BSE_filesel.h
+++ b/source/blender/include/BSE_filesel.h
@@ -37,6 +37,7 @@
struct SpaceFile;
struct direntry;
struct ID;
+struct ScrArea;
void clear_global_filesel_vars(void);
void filesel_statistics(struct SpaceFile *sfile, int *totfile, int *selfile, float *totlen, float *sellen);
@@ -47,13 +48,13 @@ void read_dir(struct SpaceFile *sfile);
void freefilelist(struct SpaceFile *sfile);
void parent(struct SpaceFile *sfile);
void swapselect_file(struct SpaceFile *sfile);
-void drawfilespace(void);
+void drawfilespace(struct ScrArea *sa, void *spacedata);
void activate_fileselect(int type, char *title, char *file, void (*func)(char *));
void activate_imageselect(int type, char *title, char *file, void (*func)(char *));
void activate_databrowse(struct ID *id, int idcode, int fromcode, int retval, short *menup, void (*func)(unsigned short));
void filesel_prevspace(void);
void free_filesel_spec(char *dir);
-void winqreadfilespace(unsigned short event, short val, char ascii);
+void winqreadfilespace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
void main_to_filelist(struct SpaceFile *sfile);
#endif
diff --git a/source/blender/src/buttons.c b/source/blender/src/buttons.c
index c4256b9cc4f..5d782eb4c59 100644
--- a/source/blender/src/buttons.c
+++ b/source/blender/src/buttons.c
@@ -6981,7 +6981,7 @@ static void do_constraintbuts(unsigned short event)
/* ***************************<>******************************** */
-void drawbutspace(void)
+void drawbutspace(ScrArea *sa, void *spacedata)
{
SpaceButs *sbuts= curarea->spacedata.first;
View2D *v2d= &sbuts->v2d;
diff --git a/source/blender/src/drawaction.c b/source/blender/src/drawaction.c
index ed57a595076..80af4d27676 100644
--- a/source/blender/src/drawaction.c
+++ b/source/blender/src/drawaction.c
@@ -84,7 +84,7 @@
#include "blendef.h"
/* local functions ----------------------------------------------------- */
-void drawactionspace(void);
+void drawactionspace(ScrArea *sa, void *spacedata);
static void draw_channel_names(void);
static void draw_channel_strips(SpaceAction *saction);
int count_action_levels(bAction *act);
@@ -345,7 +345,7 @@ static void draw_channel_strips(SpaceAction *saction)
glaEnd2DDraw(di);
}
-void drawactionspace(void)
+void drawactionspace(ScrArea *sa, void *spacedata)
{
short ofsx = 0, ofsy = 0;
diff --git a/source/blender/src/drawimage.c b/source/blender/src/drawimage.c
index efe75fc4586..281eec09cda 100644
--- a/source/blender/src/drawimage.c
+++ b/source/blender/src/drawimage.c
@@ -410,7 +410,7 @@ static unsigned int *get_part_from_ibuf(ImBuf *ibuf, short startx, short starty,
return rectmain;
}
-void drawimagespace(void)
+void drawimagespace(ScrArea *sa, void *spacedata)
{
ImBuf *ibuf= NULL;
unsigned int *rect;
diff --git a/source/blender/src/drawimasel.c b/source/blender/src/drawimasel.c
index 451eff81437..a4e439fc246 100644
--- a/source/blender/src/drawimasel.c
+++ b/source/blender/src/drawimasel.c
@@ -853,7 +853,7 @@ void pibplay(SpaceImaSel *simasel)
/* ************** hoofdtekenfunktie ************** */
-void drawimaselspace() /* hoofdtekenfunktie */
+void drawimaselspace(ScrArea *sa, void *spacedata) /* hoofdtekenfunktie */
{
SpaceImaSel *simasel;
simasel= curarea->spacedata.first;
diff --git a/source/blender/src/drawipo.c b/source/blender/src/drawipo.c
index a8fdabe5069..ce7ed5507c5 100644
--- a/source/blender/src/drawipo.c
+++ b/source/blender/src/drawipo.c
@@ -358,6 +358,16 @@ int in_ipo_buttons(void)
}
+void view2d_zoom(View2D *v2d, float factor, int winx, int winy) {
+ float dx= factor*(v2d->cur.xmax-v2d->cur.xmin);
+ float dy= factor*(v2d->cur.ymax-v2d->cur.ymin);
+ v2d->cur.xmin+= dx;
+ v2d->cur.xmax-= dx;
+ v2d->cur.ymin+= dy;
+ v2d->cur.ymax-= dy;
+ test_view2d(v2d, winx, winy);
+}
+
void test_view2d(View2D *v2d, int winx, int winy)
{
/* cur mag niet groter dan max, kleiner dan min of buiten tot vallen */
@@ -1316,7 +1326,7 @@ static void draw_key(SpaceIpo *sipo, int visible)
setlinestyle(0);
}
-void drawipospace(void)
+void drawipospace(ScrArea *sa, void *spacedata)
{
SpaceIpo *sipo= curarea->spacedata.first;
View2D *v2d= &sipo->v2d;
diff --git a/source/blender/src/drawnla.c b/source/blender/src/drawnla.c
index 62d897b0d93..b43f8c8d713 100644
--- a/source/blender/src/drawnla.c
+++ b/source/blender/src/drawnla.c
@@ -427,7 +427,7 @@ static void draw_nlastrips(SpaceNla *snla)
}
-void drawnlaspace(void)
+void drawnlaspace(ScrArea *sa, void *spacedata)
{
short ofsx = 0, ofsy = 0;
diff --git a/source/blender/src/drawoops.c b/source/blender/src/drawoops.c
index bee15ccc7e5..6c8fb4d7edb 100644
--- a/source/blender/src/drawoops.c
+++ b/source/blender/src/drawoops.c
@@ -367,7 +367,7 @@ void draw_oops(Oops *oops, uiBlock *block)
}
}
-void drawoopsspace()
+void drawoopsspace(ScrArea *sa, void *spacedata)
{
uiBlock *block;
Oops *oops;
diff --git a/source/blender/src/drawseq.c b/source/blender/src/drawseq.c
index 7598eaa8637..63907ec2c9e 100644
--- a/source/blender/src/drawseq.c
+++ b/source/blender/src/drawseq.c
@@ -538,7 +538,7 @@ static void draw_extra_seqinfo(void)
}
}
-void drawseqspace(void)
+void drawseqspace(ScrArea *sa, void *spacedata)
{
SpaceSeq *sseq;
Editing *ed;
diff --git a/source/blender/src/drawsound.c b/source/blender/src/drawsound.c
index d4ec8b705eb..12f29d1054a 100644
--- a/source/blender/src/drawsound.c
+++ b/source/blender/src/drawsound.c
@@ -60,7 +60,7 @@
#include "BSE_drawipo.h"
/* local */
-void drawsoundspace(void);
+void drawsoundspace(ScrArea *sa, void *spacedata);
/*implementation */
static void draw_wave(int startsamp, int endsamp, short sampdx, short offset, short *sp, float sampfac, float y)
@@ -163,7 +163,7 @@ static void draw_cfra_sound(void)
}
-void drawsoundspace(void)
+void drawsoundspace(ScrArea *sa, void *spacedata)
{
short ofsx, ofsy;
diff --git a/source/blender/src/drawtext.c b/source/blender/src/drawtext.c
index 42caba1c3f6..c41b9d8abaa 100644
--- a/source/blender/src/drawtext.c
+++ b/source/blender/src/drawtext.c
@@ -84,8 +84,8 @@
#define TEXTXLOC 38
/* locals */
-void drawtextspace(void);
-void winqreadtextspace(unsigned short event, short val, char ascii);
+void drawtextspace(ScrArea *sa, void *spacedata);
+void winqreadtextspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
static void *last_txt_find_string= NULL;
@@ -532,7 +532,7 @@ static void do_selection(SpaceText *st, int selecting)
txt_undo_add_toop(st->text, UNDO_STO, sell, selc, linep2, charp2);
}
-void drawtextspace(void)
+void drawtextspace(ScrArea *sa, void *spacedata)
{
SpaceText *st= curarea->spacedata.first;
Text *text;
@@ -742,8 +742,11 @@ static int jumptoline_interactive(SpaceText *st) {
}
}
-void winqreadtextspace(unsigned short event, short val, char ascii)
+void winqreadtextspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
SpaceText *st= curarea->spacedata.first;
Text *text= st->text;
char *py_filename;
diff --git a/source/blender/src/drawview.c b/source/blender/src/drawview.c
index 0199f3865c9..79ce9164300 100644
--- a/source/blender/src/drawview.c
+++ b/source/blender/src/drawview.c
@@ -784,7 +784,7 @@ static void draw_view_icon(void)
glDisable(GL_BLEND);
}
-void drawview3dspace(void)
+void drawview3dspace(ScrArea *sa, void *spacedata)
{
Base *base;
Object *ob;
@@ -996,6 +996,7 @@ void drawview3dspace(void)
*/
void drawview3d_render(struct View3D *v3d)
{
+ extern void mywindow_build_and_set_renderwin(void);
extern short v3d_windowmode;
Base *base;
Object *ob;
diff --git a/source/blender/src/edit.c b/source/blender/src/edit.c
index 58956ed9b37..eaeba18879d 100644
--- a/source/blender/src/edit.c
+++ b/source/blender/src/edit.c
@@ -86,6 +86,8 @@
#include "BSE_drawview.h"
#include "BDR_editobject.h"
+#include "BDR_editmball.h"
+#include "BDR_editcurve.h"
/* old stuff */
#include "blendertimer.h"
@@ -1171,7 +1173,7 @@ void snapmenu()
}
-void mergemenu()
+void mergemenu(void)
{
extern float doublimit;
short event;
@@ -1193,3 +1195,45 @@ void mergemenu()
}
}
+
+void delete_context_selected(void) {
+ if(G.obedit) {
+ if(G.obedit->type==OB_MESH) delete_mesh();
+ else if ELEM(G.obedit->type, OB_CURVE, OB_SURF) delNurb();
+ else if(G.obedit->type==OB_MBALL) delete_mball();
+ else if (G.obedit->type==OB_ARMATURE) delete_armature();
+ }
+ else delete_obj(0);
+}
+
+void duplicate_context_selected(void) {
+ if(G.obedit) {
+ if(G.obedit->type==OB_MESH) adduplicate_mesh();
+ else if(G.obedit->type==OB_ARMATURE) adduplicate_armature();
+ else if(G.obedit->type==OB_MBALL) adduplicate_mball();
+ else if ELEM(G.obedit->type, OB_CURVE, OB_SURF) adduplicate_nurb();
+ }
+ else if(G.obpose){
+ error ("Duplicate not possible in posemode.");
+ }
+ else adduplicate(0);
+}
+
+void toggle_shading(void) {
+ if(G.qual & LR_CTRLKEY) {
+ reshadeall_displist();
+ G.vd->drawtype= OB_SHADED;
+ }
+ else if(G.qual & LR_SHIFTKEY) {
+ if(G.vd->drawtype== OB_SHADED) G.vd->drawtype= OB_WIRE;
+ else G.vd->drawtype= OB_SHADED;
+ }
+ else if(G.qual & LR_ALTKEY) {
+ if(G.vd->drawtype== OB_TEXTURE) G.vd->drawtype= OB_SOLID;
+ else G.vd->drawtype= OB_TEXTURE;
+ }
+ else {
+ if(G.vd->drawtype==OB_SOLID || G.vd->drawtype==OB_SHADED) G.vd->drawtype= OB_WIRE;
+ else G.vd->drawtype= OB_SOLID;
+ }
+}
diff --git a/source/blender/src/editaction.c b/source/blender/src/editaction.c
index 1eb06c398f4..63b42531f67 100644
--- a/source/blender/src/editaction.c
+++ b/source/blender/src/editaction.c
@@ -1650,8 +1650,11 @@ static void borderselect_function(void (*select_func)(bAction *act,
}
-void winqreadactionspace(unsigned short event, short val, char ascii)
+void winqreadactionspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
SpaceAction *saction;
bAction *act;
int doredraw= 0;
diff --git a/source/blender/src/editimasel.c b/source/blender/src/editimasel.c
index 8052de6b64c..c4da07e4c7c 100644
--- a/source/blender/src/editimasel.c
+++ b/source/blender/src/editimasel.c
@@ -61,6 +61,7 @@
#include "BIF_screen.h"
#include "BIF_interface.h"
#include "BIF_imasel.h"
+#include "BIF_mywindow.h"
#include "BSE_filesel.h"
#include "BSE_drawimasel.h"
@@ -83,8 +84,11 @@ static void draw_icon_imasel(void)
scrarea_queue_winredraw(curarea);
}
-void winqreadimaselspace(unsigned short event, short val, char ascii)
+void winqreadimaselspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
SpaceImaSel *simasel;
short mval[2];
diff --git a/source/blender/src/editipo.c b/source/blender/src/editipo.c
index d1b5585824a..9e14858b875 100644
--- a/source/blender/src/editipo.c
+++ b/source/blender/src/editipo.c
@@ -1478,6 +1478,16 @@ void set_editflag_editipo()
scrarea_queue_winredraw(curarea);
}
+void ipo_toggle_showkey(void) {
+ if(G.sipo->showkey) {
+ G.sipo->showkey= 0;
+ swap_selectall_editipo(); /* sel all */
+ }
+ else G.sipo->showkey= 1;
+ free_ipokey(&G.sipo->ipokey);
+ if(G.sipo->ipo) G.sipo->ipo->showkey= G.sipo->showkey;
+}
+
void swap_selectall_editipo()
{
Object *ob;
diff --git a/source/blender/src/editnla.c b/source/blender/src/editnla.c
index 34522a80959..c74fb7892f6 100644
--- a/source/blender/src/editnla.c
+++ b/source/blender/src/editnla.c
@@ -111,8 +111,11 @@ extern int nla_filter (Base* base, int flags); /* From drawnla.c */
/* ******************** SPACE: NLA ********************** */
-void winqreadnlaspace(unsigned short event, short val, char ascii)
+void winqreadnlaspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
SpaceNla *snla = curarea->spacedata.first;
int doredraw= 0;
short mval[2];
diff --git a/source/blender/src/editscreen.c b/source/blender/src/editscreen.c
index 0672a3f7977..c8b00d2f5d7 100644
--- a/source/blender/src/editscreen.c
+++ b/source/blender/src/editscreen.c
@@ -887,7 +887,7 @@ void screenmain(void)
flush_extqd_events();
if (nafterqitems && !qtest()) {
append_afterqueue();
- event= 0;
+ event= val= ascii= 0;
} else {
event= screen_qread(&val, &ascii);
}
diff --git a/source/blender/src/editseq.c b/source/blender/src/editseq.c
index 6afdffcf317..637c0efc8af 100644
--- a/source/blender/src/editseq.c
+++ b/source/blender/src/editseq.c
@@ -556,7 +556,7 @@ static void add_image_strips(char *name)
/* is voor restore windowmatrices */
areawinset(curarea->win);
- drawseqspace();
+ drawseqspace(curarea, curarea->spacedata.first);
/* sfile zoeken */
sfile= scrarea_find_space_of_type(curarea, SPACE_FILE);
@@ -616,7 +616,7 @@ static void add_movie_strip(char *name)
/* is voor restore windowmatrices */
areawinset(curarea->win);
- drawseqspace();
+ drawseqspace(curarea, curarea->spacedata.first);
/* sfile zoeken */
sfile= scrarea_find_space_of_type(curarea, SPACE_FILE);
diff --git a/source/blender/src/editsound.c b/source/blender/src/editsound.c
index a3ae24d4a40..4099e665d7a 100644
--- a/source/blender/src/editsound.c
+++ b/source/blender/src/editsound.c
@@ -91,14 +91,17 @@ static SND_AudioDeviceInterfaceHandle ghAudioDeviceInterface;
bSound *sound_find_sound(char *id_name);
void sound_read_wav_data(bSound * sound, PackedFile * pf);
void sound_stop_sound(void *object, bSound *sound);
-void winqreadsoundspace(unsigned short event, short val, char ascii);
+void winqreadsoundspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
/* void sound_stop_all_sounds(void); already in BIF_editsound.h */
/* Right. Now for some implementation: */
-void winqreadsoundspace(unsigned short event, short val, char ascii)
+void winqreadsoundspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
float dx, dy;
int doredraw= 0, cfra, first = 0;
short mval[2];
@@ -430,8 +433,9 @@ void sound_read_wav_data(bSound* sound, PackedFile* pf)
/* ugly, but it works (for now) */
int sound_get_filetype_from_header(bSound* sound, PackedFile* pf)
{
- int i, filetype = SAMPLE_INVALID;
+ int filetype = SAMPLE_INVALID;
#if GAMEBLENDER == 1
+ int i;
char buffer[25];
short shortbuf;
diff --git a/source/blender/src/filesel.c b/source/blender/src/filesel.c
index 34e0ea8d68c..62edd0e34e8 100644
--- a/source/blender/src/filesel.c
+++ b/source/blender/src/filesel.c
@@ -1049,7 +1049,7 @@ static void draw_filetext(SpaceFile *sfile)
glRecti(textrct.xmax+2, textrct.ymin, textrct.xmax+10, textrct.ymax);
}
-void drawfilespace()
+void drawfilespace(ScrArea *sa, void *spacedata)
{
SpaceFile *sfile;
uiBlock *block;
@@ -1706,8 +1706,11 @@ static void fs_fake_users(SpaceFile *sfile)
scrarea_queue_winredraw(curarea);
}
-void winqreadfilespace(unsigned short event, short val, char ascii)
+void winqreadfilespace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
static int acto=0;
SpaceFile *sfile;
int act, do_draw= 0, i, test, ret = 0;
diff --git a/source/blender/src/headerbuttons.c b/source/blender/src/headerbuttons.c
index e4f02b92a19..c73c9ca9de9 100644
--- a/source/blender/src/headerbuttons.c
+++ b/source/blender/src/headerbuttons.c
@@ -2462,23 +2462,19 @@ static void do_info_editmenu(void *arg, int event)
case 2:
/* Circle Select */
/*if(select_area(SPACE_VIEW3D)) {
- winqreadview3dspace(BKEY, 1, 0); // XXX - kill me
- winqreadview3dspace(BKEY, 1, 0); // XXX - kill me
+ ;
}*/
break;
case 3:
/* Duplicate */
if(select_area(SPACE_VIEW3D)) {
- oldqual = G.qual;
- G.qual = LR_SHIFTKEY;
- winqreadview3dspace(DKEY, 1, 0); // XXX - kill me
- G.qual = oldqual;
+ duplicate_context_selected();
}
break;
case 4:
/* Delete */
if(select_area(SPACE_VIEW3D)) {
- winqreadview3dspace(XKEY, 1, 0); // XXX - kill me
+ delete_context_selected();
}
break;
case 5:
@@ -2532,19 +2528,13 @@ static void do_info_editmenu(void *arg, int event)
/* ### */
}
if(select_area(SPACE_VIEW3D)) {
- oldqual = G.qual;
- G.qual = LR_SHIFTKEY;
- winqreadview3dspace(WKEY, 1, 0); // XXX - kill me
- G.qual = oldqual;
+ transform('w');
}
break;
case 11:
/* Snap */
if(select_area(SPACE_VIEW3D)) {
- oldqual = G.qual;
- G.qual = LR_SHIFTKEY;
- winqreadview3dspace(SKEY, 1, 0); // XXX - kill me
- G.qual = oldqual;
+ snapmenu();
}
break;
}
@@ -3930,7 +3920,10 @@ void do_ipo_buttons(short event)
case B_IPOSHOWKEY:
/* waarde omkeren vanwege winqread */
G.sipo->showkey= 1-G.sipo->showkey;
- winqreadipospace(KKEY, 1, 0); // XXX - kill me
+ ipo_toggle_showkey();
+ scrarea_queue_headredraw(curarea);
+ scrarea_queue_winredraw(curarea);
+ allqueue(REDRAWVIEW3D, 0);
break;
case B_VIEW2DZOOM:
viewmovetemp= 0;
diff --git a/source/blender/src/renderwin.c b/source/blender/src/renderwin.c
index dbc6bd03719..b344c748344 100644
--- a/source/blender/src/renderwin.c
+++ b/source/blender/src/renderwin.c
@@ -180,8 +180,8 @@ static int renderwin_win_to_image_co(RenderWin *rw, int winco[2], int imgco_r[2]
renderwin_get_disprect(rw, disprect);
- imgco_r[0]= (winco[0]-disprect[0][0])/rw->zoom;
- imgco_r[1]= (winco[1]-disprect[0][1])/rw->zoom;
+ imgco_r[0]= (int) ((winco[0]-disprect[0][0])/rw->zoom);
+ imgco_r[1]= (int) ((winco[1]-disprect[0][1])/rw->zoom);
return (imgco_r[0]>=0 && imgco_r[1]>=0 && imgco_r[0]<R.rectx && imgco_r[1]<R.recty);
}
@@ -196,8 +196,8 @@ static int renderwin_win_to_ndc(RenderWin *rw, int win_co[2], float ndc_r[2])
window_get_size(rw->win, &w, &h);
- ndc_r[0]= (float) (win_co[0]*2)/(w-1) - 1.0;
- ndc_r[1]= (float) (win_co[1]*2)/(h-1) - 1.0;
+ ndc_r[0]= (float) ((win_co[0]*2)/(w-1) - 1.0);
+ ndc_r[1]= (float) ((win_co[1]*2)/(h-1) - 1.0);
return (fabs(ndc_r[0])<=1.0 && fabs(ndc_r[1])<=1.0);
}
diff --git a/source/blender/src/space.c b/source/blender/src/space.c
index 03e7416e179..c35e616ace3 100644
--- a/source/blender/src/space.c
+++ b/source/blender/src/space.c
@@ -153,7 +153,7 @@ void free_soundspace(SpaceSound *ssound);
/* ************* SPACE: VIEW3D ************* */
-/* extern void drawview3dspace(); BSE_drawview.h */
+/* extern void drawview3dspace(ScrArea *sa, void *spacedata); BSE_drawview.h */
void copy_view3d_lock(short val)
@@ -384,11 +384,9 @@ void start_game(void)
#endif
}
-void changeview3d()
+static void changeview3dspace(ScrArea *sa, void *spacedata)
{
-
setwinmatrixview3d(0); /* 0= geen pick rect */
-
}
/* Callable from editmode and faceselect mode from the
@@ -419,8 +417,11 @@ static void align_view_to_selected(View3D *v3d)
}
}
-void winqreadview3dspace(unsigned short event, short val, char ascii)
+void winqreadview3dspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
View3D *v3d= curarea->spacedata.first;
Object *ob;
float *curs;
@@ -676,16 +677,7 @@ void winqreadview3dspace(unsigned short event, short val, char ascii)
break;
case DKEY:
if(G.qual & LR_SHIFTKEY) {
- if(G.obedit) {
- if(G.obedit->type==OB_MESH) adduplicate_mesh();
- else if(G.obedit->type==OB_ARMATURE) adduplicate_armature();
- else if(G.obedit->type==OB_MBALL) adduplicate_mball();
- else if ELEM(G.obedit->type, OB_CURVE, OB_SURF) adduplicate_nurb();
- }
- else if(G.obpose){
- error ("Duplicate not possible in posemode.");
- }
- else adduplicate(0);
+ duplicate_context_selected();
}
else if(G.qual & LR_ALTKEY) {
if(G.obpose) error ("Duplicate not possible in posemode.");
@@ -958,13 +950,7 @@ void winqreadview3dspace(unsigned short event, short val, char ascii)
break;
case XKEY:
case DELKEY:
- if(G.obedit) {
- if(G.obedit->type==OB_MESH) delete_mesh();
- else if ELEM(G.obedit->type, OB_CURVE, OB_SURF) delNurb();
- else if(G.obedit->type==OB_MBALL) delete_mball();
- else if (G.obedit->type==OB_ARMATURE) delete_armature();
- }
- else delete_obj(0);
+ delete_context_selected();
break;
case YKEY:
if(G.obedit) {
@@ -972,23 +958,7 @@ void winqreadview3dspace(unsigned short event, short val, char ascii)
}
break;
case ZKEY:
- if(G.qual & LR_CTRLKEY) {
- reshadeall_displist();
- G.vd->drawtype= OB_SHADED;
- }
- else if(G.qual & LR_SHIFTKEY) {
- if(G.vd->drawtype== OB_SHADED) G.vd->drawtype= OB_WIRE;
- else G.vd->drawtype= OB_SHADED;
- }
- else if(G.qual & LR_ALTKEY) {
- if(G.vd->drawtype== OB_TEXTURE) G.vd->drawtype= OB_SOLID;
- else G.vd->drawtype= OB_TEXTURE;
- }
- else {
- if(G.vd->drawtype==OB_SOLID || G.vd->drawtype==OB_SHADED) G.vd->drawtype= OB_WIRE;
- else G.vd->drawtype= OB_SOLID;
- }
-
+ toggle_shading();
scrarea_queue_headredraw(curarea);
scrarea_queue_winredraw(curarea);
@@ -1094,7 +1064,7 @@ void initview3d(ScrArea *sa)
/* ******************** SPACE: IPO ********************** */
-void changeview2d()
+static void changeview2dspace(ScrArea *sa, void *spacedata)
{
if(G.v2d==0) return;
@@ -1102,8 +1072,11 @@ void changeview2d()
myortho2(G.v2d->cur.xmin, G.v2d->cur.xmax, G.v2d->cur.ymin, G.v2d->cur.ymax);
}
-void winqreadipospace(unsigned short event, short val, char ascii)
+void winqreadipospace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
SpaceIpo *sipo= curarea->spacedata.first;
View2D *v2d= &sipo->v2d;
float dx, dy;
@@ -1163,30 +1136,11 @@ void winqreadipospace(unsigned short event, short val, char ascii)
allqueue(REDRAWNLA, 0);
break;
case PADPLUSKEY:
-
- dx= 0.1154*(v2d->cur.xmax-v2d->cur.xmin);
- dy= 0.1154*(v2d->cur.ymax-v2d->cur.ymin);
- if(val==SPACE_BUTS) {
- dx/=2.0; dy/= 2.0;
- }
- v2d->cur.xmin+= dx;
- v2d->cur.xmax-= dx;
- v2d->cur.ymin+= dy;
- v2d->cur.ymax-= dy;
- test_view2d(G.v2d, curarea->winx, curarea->winy);
+ view2d_zoom(v2d, 0.1154, curarea->winx, curarea->winy);
doredraw= 1;
break;
case PADMINUS:
- dx= 0.15*(v2d->cur.xmax-v2d->cur.xmin);
- dy= 0.15*(v2d->cur.ymax-v2d->cur.ymin);
- if(val==SPACE_BUTS) {
- dx/=2.0; dy/= 2.0;
- }
- v2d->cur.xmin-= dx;
- v2d->cur.xmax+= dx;
- v2d->cur.ymin-= dy;
- v2d->cur.ymax+= dy;
- test_view2d(G.v2d, curarea->winx, curarea->winy);
+ view2d_zoom(v2d, -0.15, curarea->winx, curarea->winy);
doredraw= 1;
break;
case PAGEUPKEY:
@@ -1230,14 +1184,7 @@ void winqreadipospace(unsigned short event, short val, char ascii)
join_ipo();
break;
case KKEY:
- if(G.sipo->showkey) {
- G.sipo->showkey= 0;
- swap_selectall_editipo(); /* sel all */
- }
- else G.sipo->showkey= 1;
- free_ipokey(&G.sipo->ipokey);
- if(G.sipo->ipo) G.sipo->ipo->showkey= G.sipo->showkey;
-
+ ipo_toggle_showkey();
scrarea_queue_headredraw(curarea);
allqueue(REDRAWVIEW3D, 0);
doredraw= 1;
@@ -1314,7 +1261,7 @@ void space_sound_button_function(int event)
}
}
-void drawinfospace(void)
+void drawinfospace(ScrArea *sa, void *spacedata)
{
uiBlock *block;
float fac;
@@ -1448,8 +1395,11 @@ void drawinfospace(void)
uiDrawBlock(block);
}
-void winqreadinfospace(unsigned short event, short val, char ascii)
+void winqreadinfospace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
if(val) {
if( uiDoBlocks(&curarea->uiblocks, event)!=UI_NOTHING ) event= 0;
@@ -1472,9 +1422,9 @@ void init_infospace(ScrArea *sa)
/* ******************** SPACE: BUTS ********************** */
-extern void drawbutspace(void); /* buttons.c */
+extern void drawbutspace(ScrArea *sa, void *spacedata); /* buttons.c */
-void changebutspace(void)
+static void changebutspace(ScrArea *sa, void *spacedata)
{
if(G.v2d==0) return;
@@ -1482,10 +1432,13 @@ void changebutspace(void)
myortho2(G.v2d->cur.xmin, G.v2d->cur.xmax, G.v2d->cur.ymin, G.v2d->cur.ymax);
}
-void winqreadbutspace(unsigned short event, short val, char ascii)
+void winqreadbutspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
SpaceButs *sbuts= curarea->spacedata.first;
- ScrArea *sa, *sa3d;
+ ScrArea *sa2, *sa3d;
int doredraw= 0;
if(val) {
@@ -1504,9 +1457,12 @@ void winqreadbutspace(unsigned short event, short val, char ascii)
break;
case PADPLUSKEY:
+ view2d_zoom(&sbuts->v2d, 0.06, curarea->winx, curarea->winy);
+ scrarea_queue_winredraw(curarea);
+ break;
case PADMINUS:
- val= SPACE_BUTS;
- winqreadipospace(event, val, 0); // XXX - kill me
+ view2d_zoom(&sbuts->v2d, -0.075, curarea->winx, curarea->winy);
+ scrarea_queue_winredraw(curarea);
break;
case RENDERPREVIEW:
BIF_previewrender(sbuts);
@@ -1522,20 +1478,20 @@ void winqreadbutspace(unsigned short event, short val, char ascii)
case PAD5: case PAD7: case PAD9:
case PADENTER: case ZKEY: case PKEY:
sa3d= 0;
- sa= G.curscreen->areabase.first;
- while(sa) {
- if(sa->spacetype==SPACE_VIEW3D) {
+ sa2= G.curscreen->areabase.first;
+ while(sa2) {
+ if(sa2->spacetype==SPACE_VIEW3D) {
if(sa3d) return;
- sa3d= sa;
+ sa3d= sa2;
}
- sa= sa->next;
+ sa2= sa2->next;
}
if(sa3d) {
sa= curarea;
areawinset(sa3d->win);
if(event==PKEY) start_game();
- else if(event==ZKEY) winqreadview3dspace(event, val, 0); // XXX - kill me
+ else if(event==ZKEY) toggle_shading();
else persptoetsen(event);
scrarea_queue_winredraw(sa3d);
@@ -1633,10 +1589,13 @@ void extern_set_butspace(int fkey)
/* ******************** SPACE: SEQUENCE ********************** */
-/* extern void drawseqspace(); BIF_drawseq.h */
+/* extern void drawseqspace(ScrArea *sa, void *spacedata); BIF_drawseq.h */
-void winqreadseqspace(unsigned short event, short val, char ascii)
+void winqreadseqspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
SpaceSeq *sseq= curarea->spacedata.first;
View2D *v2d= &sseq->v2d;
extern Sequence *last_seq;
@@ -1832,8 +1791,8 @@ void init_seqspace(ScrArea *sa)
}
/* ******************** SPACE: ACTION ********************** */
-extern void drawactionspace(void);
-extern void winqreadactionspace(unsigned short, short, char ascii);
+extern void drawactionspace(ScrArea *sa, void *spacedata);
+extern void winqreadactionspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
void init_actionspace(ScrArea *sa)
{
@@ -1954,8 +1913,8 @@ void init_imaselspace(ScrArea *sa)
/* ******************** SPACE: SOUND ********************** */
-extern void drawsoundspace(void);
-extern void winqreadsoundspace(unsigned short, short, char ascii);
+extern void drawsoundspace(ScrArea *sa, void *spacedata);
+extern void winqreadsoundspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
void init_soundspace(ScrArea *sa)
{
@@ -2003,10 +1962,13 @@ void free_soundspace(SpaceSound *ssound)
/* ******************** SPACE: IMAGE ********************** */
-/* extern void drawimagespace(); BIF_drawimage.h */
+/* extern void drawimagespace(ScrArea *sa, void *spacedata); BIF_drawimage.h */
-void winqreadimagespace(unsigned short event, short val, char ascii)
+void winqreadimagespace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
SpaceImage *sima= curarea->spacedata.first;
View2D *v2d= &sima->v2d;
#ifdef NAN_TPT
@@ -2145,8 +2107,8 @@ void init_imagespace(ScrArea *sa)
/* ******************** SPACE: IMASEL ********************** */
-extern void drawimaselspace(void);
-extern void winqreadimaselspace(unsigned short, short, char ascii);
+extern void drawimaselspace(ScrArea *sa, void *spacedata);
+extern void winqreadimaselspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
/* alles naar imasel.c */
@@ -2154,10 +2116,13 @@ extern void winqreadimaselspace(unsigned short, short, char ascii);
/* ******************** SPACE: OOPS ********************** */
-extern void drawoopsspace(void);
+extern void drawoopsspace(ScrArea *sa, void *spacedata);
-void winqreadoopsspace(unsigned short event, short val, char ascii)
+void winqreadoopsspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
{
+ unsigned short event= evt->event;
+ short val= evt->val;
+ char ascii= evt->ascii;
SpaceOops *soops= curarea->spacedata.first;
View2D *v2d= &soops->v2d;
float dx, dy;
@@ -2301,8 +2266,8 @@ void init_oopsspace(ScrArea *sa)
/* ******************** SPACE: Text ********************** */
-extern void drawtextspace(void);
-extern void winqreadtextspace(unsigned short, short, char ascii);
+extern void drawtextspace(ScrArea *sa, void *spacedata);
+extern void winqreadtextspace(struct ScrArea *sa, void *spacedata, struct BWinEvent *evt);
/* ******************** SPACE: ALGEMEEN ********************** */
@@ -2918,7 +2883,7 @@ SpaceType *spaceaction_get_type(void)
if (!st) {
st= spacetype_new("Action");
- spacetype_set_winfuncs(st, drawactionspace, changeview2d, winqreadactionspace);
+ spacetype_set_winfuncs(st, drawactionspace, changeview2dspace, winqreadactionspace);
}
return st;
@@ -2984,7 +2949,7 @@ SpaceType *spaceipo_get_type(void)
if (!st) {
st= spacetype_new("Ipo");
- spacetype_set_winfuncs(st, drawipospace, changeview2d, winqreadipospace);
+ spacetype_set_winfuncs(st, drawipospace, changeview2dspace, winqreadipospace);
}
return st;
@@ -2995,7 +2960,7 @@ SpaceType *spacenla_get_type(void)
if (!st) {
st= spacetype_new("Nla");
- spacetype_set_winfuncs(st, drawnlaspace, changeview2d, winqreadnlaspace);
+ spacetype_set_winfuncs(st, drawnlaspace, changeview2dspace, winqreadnlaspace);
}
return st;
@@ -3006,7 +2971,7 @@ SpaceType *spaceoops_get_type(void)
if (!st) {
st= spacetype_new("Oops");
- spacetype_set_winfuncs(st, drawoopsspace, changeview2d, winqreadoopsspace);
+ spacetype_set_winfuncs(st, drawoopsspace, changeview2dspace, winqreadoopsspace);
}
return st;
@@ -3017,7 +2982,7 @@ SpaceType *spaceseq_get_type(void)
if (!st) {
st= spacetype_new("Sequence");
- spacetype_set_winfuncs(st, drawseqspace, changeview2d, winqreadseqspace);
+ spacetype_set_winfuncs(st, drawseqspace, changeview2dspace, winqreadseqspace);
}
return st;
@@ -3050,7 +3015,7 @@ SpaceType *spaceview3d_get_type(void)
if (!st) {
st= spacetype_new("View3D");
- spacetype_set_winfuncs(st, drawview3dspace, changeview3d, winqreadview3dspace);
+ spacetype_set_winfuncs(st, drawview3dspace, changeview3dspace, winqreadview3dspace);
}
return st;
diff --git a/source/blender/src/spacetypes.c b/source/blender/src/spacetypes.c
index 2eb923896d2..8a0ba57f373 100644
--- a/source/blender/src/spacetypes.c
+++ b/source/blender/src/spacetypes.c
@@ -105,7 +105,7 @@ void scrarea_do_windraw(ScrArea *area)
areawinset(area->win);
if(area->win && st->windraw) {
- st->windraw();
+ st->windraw(area, area->spacedata.first);
}
else {
glClearColor(0.4375, 0.4375, 0.4375, 0.0);
@@ -121,7 +121,7 @@ void scrarea_do_winchange(ScrArea *area)
areawinset(area->win);
if (st->winchange) {
- st->winchange();
+ st->winchange(area, area->spacedata.first);
} else {
if (!BLI_rcti_is_empty(&area->winrct)) {
bwin_ortho2(area->win, -0.5, area->winrct.xmax-area->winrct.xmin-0.5, -0.5, area->winrct.ymax-area->winrct.ymin-0.5);
@@ -136,6 +136,6 @@ void scrarea_do_winhandle(ScrArea *area, BWinEvent *evt)
areawinset(area->win);
if (st->winhandle) {
- st->winhandle(evt->event, evt->val, evt->ascii);
+ st->winhandle(area, area->spacedata.first, evt);
}
}
diff --git a/source/blender/src/usiblender.c b/source/blender/src/usiblender.c
index e5350142acd..4d8dfc46b61 100644
--- a/source/blender/src/usiblender.c
+++ b/source/blender/src/usiblender.c
@@ -45,6 +45,7 @@
#ifdef WIN32
#include "BLI_winstuff.h"
+#include <process.h> /* getpid */
#else
#include <unistd.h> /* getpid */
#endif
diff --git a/source/blender/src/writeavicodec.c b/source/blender/src/writeavicodec.c
index 002d1615803..0cca17ac676 100644
--- a/source/blender/src/writeavicodec.c
+++ b/source/blender/src/writeavicodec.c
@@ -763,7 +763,6 @@ void append_avi_codec(int frame)
int get_codec_settings(void)
{
- char name[2048];
int ret_val = 0;
AVICOMPRESSOPTIONS *aopts[1] = {&opts};
AviCodecData *acd = G.scene->r.avicodecdata;