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
diff options
context:
space:
mode:
authorTon Roosendaal <ton@blender.org>2003-10-15 16:26:26 +0400
committerTon Roosendaal <ton@blender.org>2003-10-15 16:26:26 +0400
commit6480956c5854cb8bcd21c76b57f3d9287fe0d430 (patch)
tree3c7a5f7ec316b800f6ea70d0f848445f4d948639 /source/blender/makesdna
parent0c1bad34c76443bcf254fdc8d1f807af097f0902 (diff)
- expanded internal windowmanager that it allows button panels in any
window (type) - each SpaceData struct (not the window!) can get 'block handlers' assigned, basically event codes that invoke drawing button panels. - this is saved in files, and Panels behave in any window like it does now in buttonswindow - it also means that a 'space window' should leave with a matrix set for buttons level - try it in view3d header menu, 'view'->'backdrop'. this opens the old viewbuttons - it all works non blocking! instant updates of viewbuttons visible in 3d window now. Not done yet: - checking and fixing frontbuffer drawing (select a wireframe draws over) - temporally vertices cannot be selected, is my next project - closing or hiding Panels... - styling stuff... i committed for others to review as well. Have fun. this is certainly a huge improvement over the old viewbuttons!
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r--source/blender/makesdna/DNA_screen_types.h2
-rw-r--r--source/blender/makesdna/DNA_space_types.h55
-rw-r--r--source/blender/makesdna/DNA_view3d_types.h5
3 files changed, 49 insertions, 13 deletions
diff --git a/source/blender/makesdna/DNA_screen_types.h b/source/blender/makesdna/DNA_screen_types.h
index 85aebbcd5b9..5618b8e40d4 100644
--- a/source/blender/makesdna/DNA_screen_types.h
+++ b/source/blender/makesdna/DNA_screen_types.h
@@ -85,7 +85,7 @@ typedef struct Panel { /* the part from uiBlock that needs saved in file */
char panelname[64], tabname[64]; /* defined as UI_MAX_NAME_STR */
short ofsx, ofsy, sizex, sizey;
short flag, active; /* active= used currently by a uiBlock */
- int pad2;
+ short style, pad2;
struct Panel *paneltab; /* this panel is tabbed in *paneltab */
} Panel;
diff --git a/source/blender/makesdna/DNA_space_types.h b/source/blender/makesdna/DNA_space_types.h
index 8674eb3fb4c..5ec7892add8 100644
--- a/source/blender/makesdna/DNA_space_types.h
+++ b/source/blender/makesdna/DNA_space_types.h
@@ -55,21 +55,29 @@ struct BlendHandle;
typedef struct SpaceLink SpaceLink;
struct SpaceLink {
SpaceLink *next, *prev;
- int spacetype, pad;
+ int spacetype;
+ float blockscale;
struct ScrArea *area;
+ short blockhandler[8];
};
typedef struct SpaceInfo {
SpaceLink *next, *prev;
- int spacetype, pad1;
+ int spacetype;
+ float blockscale;
struct ScrArea *area;
+
+ short blockhandler[8];
} SpaceInfo;
typedef struct SpaceIpo {
SpaceLink *next, *prev;
- int spacetype, pad1;
+ int spacetype;
+ float blockscale;
struct ScrArea *area;
+ short blockhandler[8];
+
unsigned int rowbut, pad2;
View2D v2d;
@@ -90,9 +98,11 @@ typedef struct SpaceIpo {
typedef struct SpaceButs {
SpaceLink *next, *prev;
int spacetype;
- short re_align, pad1;
+ float blockscale;
struct ScrArea *area;
+ short blockhandler[8];
+
short cursens, curact;
short align, tabo; /* align for panels, tab is old tab */
View2D v2d;
@@ -110,6 +120,8 @@ typedef struct SpaceButs {
short scriptblock;
short scaflag;
+ short re_align, pad1;
+ int pad2;
char texact, tab[7]; /* storing tabs for each context */
@@ -117,9 +129,12 @@ typedef struct SpaceButs {
typedef struct SpaceSeq {
SpaceLink *next, *prev;
- int spacetype, pad;
+ int spacetype;
+ float blockscale;
struct ScrArea *area;
+ short blockhandler[8];
+
View2D v2d;
short mainb, zoom;
@@ -129,9 +144,12 @@ typedef struct SpaceSeq {
typedef struct SpaceFile {
SpaceLink *next, *prev;
- int spacetype, pad;
+ int spacetype;
+ float blockscale;
struct ScrArea *area;
+ short blockhandler[8];
+
struct direntry *filelist;
int totfile;
char title[24];
@@ -163,9 +181,12 @@ typedef struct SpaceFile {
typedef struct SpaceOops {
SpaceLink *next, *prev;
- int spacetype, pad;
+ int spacetype;
+ float blockscale;
struct ScrArea *area;
+ short blockhandler[8];
+
View2D v2d;
ListBase oops;
@@ -176,9 +197,12 @@ typedef struct SpaceOops {
typedef struct SpaceImage {
SpaceLink *next, *prev;
- int spacetype, pad;
+ int spacetype;
+ float blockscale;
struct ScrArea *area;
+ short blockhandler[8];
+
View2D v2d;
struct Image *image;
@@ -194,17 +218,25 @@ typedef struct SpaceImage {
typedef struct SpaceNla{
struct SpaceLink *next, *prev;
int spacetype;
- short menunr, lock;
+ float blockscale;
struct ScrArea *area;
+ short blockhandler[8];
+
+ short menunr, lock;
+ int pad;
+
View2D v2d;
} SpaceNla;
typedef struct SpaceText {
SpaceLink *next, *prev;
- int spacetype, pad;
+ int spacetype;
+ float blockscale;
struct ScrArea *area;
+ short blockhandler[8];
+
struct Text *text;
int top, viewlines;
@@ -259,7 +291,8 @@ typedef struct ImaDir {
typedef struct SpaceImaSel {
SpaceLink *next, *prev;
- int spacetype, pad1;
+ int spacetype;
+ float blockscale;
struct ScrArea *area;
char title[28];
diff --git a/source/blender/makesdna/DNA_view3d_types.h b/source/blender/makesdna/DNA_view3d_types.h
index 8f1956a36b8..cf19e79f3a3 100644
--- a/source/blender/makesdna/DNA_view3d_types.h
+++ b/source/blender/makesdna/DNA_view3d_types.h
@@ -61,9 +61,12 @@ typedef struct BGpic {
typedef struct View3D {
struct SpaceLink *next, *prev;
- int spacetype, pad;
+ int spacetype;
+ float blockscale;
struct ScrArea *area;
+ short blockhandler[8];
+
float viewmat[4][4];
float viewinv[4][4];
float persmat[4][4];