f5b3ffbd687ee4b5b83465601c9a724bbf1a3431
[blender-staging.git] / source / blender / makesdna / DNA_space_types.h
1 /**
2  * blenlib/DNA_space_types.h (mar-2001 nzc)
3  *      
4  * $Id$ 
5  *
6  * ***** BEGIN GPL LICENSE BLOCK *****
7  *
8  * This program is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License
10  * as published by the Free Software Foundation; either version 2
11  * of the License, or (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software Foundation,
20  * Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
21  *
22  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
23  * All rights reserved.
24  *
25  * The Original Code is: all of this file.
26  *
27  * Contributor(s): none yet.
28  *
29  * ***** END GPL LICENSE BLOCK *****
30  */
31 #ifndef DNA_SPACE_TYPES_H
32 #define DNA_SPACE_TYPES_H
33
34 #include "DNA_listBase.h"
35 #include "DNA_vec_types.h"
36 #include "DNA_oops_types.h"             /* for TreeStoreElem */
37 #include "DNA_image_types.h"    /* ImageUser */
38 /* Hum ... Not really nice... but needed for spacebuts. */
39 #include "DNA_view2d_types.h"
40
41 struct Ipo;
42 struct ID;
43 struct Text;
44 struct Script;
45 struct ImBuf;
46 struct Image;
47 struct SpaceIpo;
48 struct BlendHandle;
49 struct RenderInfo;
50 struct bNodeTree;
51 struct uiBlock;
52 struct FileList;
53 struct bGPdata;
54
55         /**
56          * The base structure all the other spaces
57          * are derived (implicitly) from. Would be
58          * good to make this explicit.
59          */
60
61 typedef struct SpaceLink {
62         struct SpaceLink *next, *prev;
63         ListBase regionbase;            /* storage of regions for inactive spaces */
64         int spacetype;
65         float blockscale;                       /* XXX depricate this */
66         short blockhandler[8];          /* XXX depricate this */
67 } SpaceLink;
68
69 typedef struct SpaceInfo {
70         SpaceLink *next, *prev;
71         ListBase regionbase;            /* storage of regions for inactive spaces */
72         int spacetype;
73         float blockscale;
74
75         short blockhandler[8];
76 } SpaceInfo;
77
78 typedef struct SpaceIpo {
79         SpaceLink *next, *prev;
80         ListBase regionbase;            /* storage of regions for inactive spaces */
81         int spacetype;
82         float blockscale;
83
84         short blockhandler[8];
85         
86         unsigned int rowbut, pad2; 
87         View2D v2d; /* depricated, copied to region */
88         
89         void *editipo;
90         ListBase ipokey;
91         
92         /* the ipo context we need to store */
93         struct Ipo *ipo;
94         struct ID *from;
95         char actname[32], constname[32], bonename[32];
96
97         short totipo, pin;
98         short butofs, channel;
99         short showkey, blocktype;
100         short menunr, lock;
101         short flag, autosnap;
102         float median[3];
103         rctf tot;
104 } SpaceIpo;
105
106 typedef struct SpaceButs {
107         SpaceLink *next, *prev;
108         ListBase regionbase;            /* storage of regions for inactive spaces */
109         int spacetype;
110         float blockscale;
111         
112         short blockhandler[8];
113         
114         struct RenderInfo *ri;
115
116         short cursens, curact;
117         short align, tabo;              /* align for panels, tab is old tab */
118         View2D v2d; /* depricated, copied to region */
119         
120         short mainb, menunr;    /* texnr and menunr have to remain shorts */
121         short pin, mainbo;      
122         void *lockpoin;
123         
124         short texnr;
125         char texfrom, showgroup;
126         
127         short modeltype;
128         short scriptblock;
129         short scaflag;
130         short re_align;
131         
132         short oldkeypress;              /* for keeping track of the sub tab key cycling */
133         char pad, flag;
134         
135         char texact, tab[7];    /* storing tabs for each context */
136                 
137 } SpaceButs;
138
139 typedef struct SpaceSeq {
140         SpaceLink *next, *prev;
141         ListBase regionbase;            /* storage of regions for inactive spaces */
142         int spacetype;
143         float blockscale;
144
145         short blockhandler[8];
146
147         View2D v2d; /* depricated, copied to region */
148         
149         float xof, yof; /* offset for drawing the image preview */
150         short mainb, pad;
151         short chanshown;
152         short zebra;
153         int flag;
154         float zoom;
155         
156         struct bGPdata *gpd;            /* grease-pencil data */
157 } SpaceSeq;
158
159 typedef struct SpaceFile {
160         SpaceLink *next, *prev;
161         ListBase regionbase;            /* storage of regions for inactive spaces */
162         int spacetype;
163         float blockscale;
164         
165         short blockhandler[8];
166
167         struct direntry *filelist;
168         int totfile;
169         
170         char title[24];
171         char dir[240];
172         char file[80];
173         
174         short type, ofs, flag, sort;
175         short maxnamelen, collums, f_fp, pad1;
176         int pad2;
177         char fp_str[8];
178
179         struct BlendHandle *libfiledata;
180         
181         unsigned short retval;          /* event */
182         short menu, act, ipotype;
183         
184         /* one day we'll add unions to dna */
185         void (*returnfunc)(char *);
186         void (*returnfunc_event)(unsigned short);
187         void (*returnfunc_args)(char *, void *, void *);
188         
189         void *arg1, *arg2;
190         short *menup;   /* pointer to menu result or ID browsing */
191         char *pupmenu;  /* optional menu in header */
192 } SpaceFile;
193
194 typedef struct SpaceOops {
195         SpaceLink *next, *prev;
196         ListBase regionbase;            /* storage of regions for inactive spaces */
197         int spacetype;
198         float blockscale;
199
200         short blockhandler[8];
201
202         View2D v2d; /* depricated, copied to region */
203         
204         ListBase oops;
205         short pin, visiflag, flag, rt;
206         void *lockpoin;
207         
208         ListBase tree;
209         struct TreeStore *treestore;
210         
211         /* search stuff */
212         char search_string[32];
213         struct TreeStoreElem search_tse;
214         int search_flags, do_;
215         
216         short type, outlinevis, storeflag;
217         short deps_flags;
218
219         /* RNA */
220         char *rnapath;
221         
222 } SpaceOops;
223
224 typedef struct SpaceImage {
225         SpaceLink *next, *prev;
226         ListBase regionbase;            /* storage of regions for inactive spaces */
227         int spacetype;
228         float blockscale;
229
230         short blockhandler[8];
231
232         View2D v2d; /* depricated, copied to region */
233         
234         struct Image *image;
235         struct ImageUser iuser;
236         
237         struct CurveMapping *cumap;
238         short mode, menunr;
239         short imanr;
240         short curtile; /* the currently active tile of the image when tile is enabled, is kept in sync with the active faces tile */
241         int flag;
242         short selectmode;
243         short imtypenr, lock;
244         short pin;
245         float zoom;
246         char dt_uv; /* UV draw type */
247         char sticky; /* sticky selection type */
248         char dt_uvstretch;
249         char pad[5];
250         
251         float xof, yof;                                 /* user defined offset, image is centered */
252         float centx, centy;                             /* storage for offset while render drawing */
253         
254         struct bGPdata *gpd;                    /* grease pencil data */
255 } SpaceImage;
256
257 typedef struct SpaceNla {
258         struct SpaceLink *next, *prev;
259         ListBase regionbase;            /* storage of regions for inactive spaces */
260         int spacetype;
261         float blockscale;
262
263         short blockhandler[8];
264
265         short menunr, lock;
266         short autosnap;                 /* this uses the same settings as autosnap for Action Editor */
267         short flag;
268         
269         View2D v2d;      /* depricated, copied to region */
270 } SpaceNla;
271
272 typedef struct SpaceText {
273         SpaceLink *next, *prev;
274         ListBase regionbase;            /* storage of regions for inactive spaces */
275         int spacetype;
276         float blockscale;
277
278         short blockhandler[8];
279
280         struct Text *text;      
281
282         int top, viewlines;
283         short flags, menunr;    
284         int font_id;
285
286         int lheight;
287         int left;
288         int showlinenrs;
289         int tabnumber;
290
291         int currtab_set; 
292         int showsyntax;
293         int overwrite;
294         float pix_per_line;
295
296         struct rcti txtscroll, txtbar;
297
298         int wordwrap, doplugins;
299
300 } SpaceText;
301
302 typedef struct Script {
303         ID id;
304
305         void *py_draw;
306         void *py_event;
307         void *py_button;
308         void *py_browsercallback;
309         void *py_globaldict;
310
311         int flags, lastspace;
312         char scriptname[256]; /* store the script file here so we can re-run it on loading blender, if "Enable Scripts" is on */
313         char scriptarg[256];
314 } Script;
315 #define SCRIPT_SET_NULL(_script) _script->py_draw = _script->py_event = _script->py_button = _script->py_browsercallback = _script->py_globaldict = NULL; _script->flags = 0;
316 #define SCRIPT_RUNNING  0x01
317 #define SCRIPT_GUI              0x02
318 #define SCRIPT_FILESEL  0x04
319
320 typedef struct SpaceScript {
321         SpaceLink *next, *prev;
322         ListBase regionbase;            /* storage of regions for inactive spaces */
323         int spacetype;
324         float blockscale;
325         struct Script *script;
326
327         short flags, menunr;
328         int pad1;
329         
330         void *but_refs;
331 } SpaceScript;
332
333 typedef struct SpaceTime {
334         SpaceLink *next, *prev;
335         ListBase regionbase;            /* storage of regions for inactive spaces */
336         int spacetype;
337         float blockscale;
338         
339         View2D v2d; /* depricated, copied to region */
340         
341         int flag, redraws;
342         
343 } SpaceTime;
344
345 typedef struct SpaceNode {
346         SpaceLink *next, *prev;
347         ListBase regionbase;            /* storage of regions for inactive spaces */
348         int spacetype;
349         float blockscale;
350         
351         short blockhandler[8];
352         
353         View2D v2d; /* depricated, copied to region */
354         
355         struct ID *id, *from;           /* context, no need to save in file? well... pinning... */
356         short flag, menunr;                     /* menunr: browse id block in header */
357         float aspect;
358         void *curfont;
359         
360         float xof, yof; /* offset for drawing the backdrop */
361         
362         struct bNodeTree *nodetree, *edittree;
363         int treetype, pad;                      /* treetype: as same nodetree->type */
364         
365         struct bGPdata *gpd;            /* grease-pencil data */
366 } SpaceNode;
367
368 /* snode->flag */
369 #define SNODE_DO_PREVIEW        1
370 #define SNODE_BACKDRAW          2
371 #define SNODE_DISPGP            4
372
373 typedef struct SpaceImaSel {
374         SpaceLink *next, *prev;
375         ListBase regionbase;            /* storage of regions for inactive spaces */
376         int spacetype;
377         float blockscale;
378         
379         short blockhandler[8];
380
381         View2D v2d; /* depricated, copied to region */
382
383         struct FileList *files;
384
385         /* specific stuff for drawing */
386         char title[24];
387         char dir[240];
388         char file[80];
389
390         short type, menu, flag, sort;
391
392         void *curfont;
393         int     active_file;
394
395         int numtilesx;
396         int numtilesy;
397
398         int selstate;
399
400         struct rcti viewrect;
401         struct rcti bookmarkrect;
402
403         float scrollpos; /* current position of scrollhandle */
404         float scrollheight; /* height of the scrollhandle */
405         float scrollarea; /* scroll region, scrollpos is from 0 to scrollarea */
406
407         float aspect;
408         unsigned short retval;          /* event */
409
410         short ipotype;
411         
412         short filter;
413         short active_bookmark;
414         short pad, pad1;
415
416         /* view settings */
417         short prv_w;
418         short prv_h;
419
420         /* one day we'll add unions to dna */
421         void (*returnfunc)(char *);
422         void (*returnfunc_event)(unsigned short);
423         void (*returnfunc_args)(char *, void *, void *);
424         
425         void *arg1, *arg2;
426         short *menup;   /* pointer to menu result or ID browsing */
427         char *pupmenu;  /* optional menu in header */
428
429         struct ImBuf *img;
430 } SpaceImaSel;
431
432
433 /* view3d  Now in DNA_view3d_types.h */
434
435
436
437 /* **************** SPACE DEFINES ********************* */
438
439 /* button defines  */
440 /* warning: the values of these defines are used in sbuts->tabs[7] */
441 /* sbuts->mainb new */
442 #define CONTEXT_SCENE   0
443 #define CONTEXT_OBJECT  1
444 #define CONTEXT_TYPES   2
445 #define CONTEXT_SHADING 3
446 #define CONTEXT_EDITING 4
447 #define CONTEXT_SCRIPT  5
448 #define CONTEXT_LOGIC   6
449
450 /* sbuts->mainb old */
451 #define BUTS_VIEW                       0
452 #define BUTS_LAMP                       1
453 #define BUTS_MAT                        2
454 #define BUTS_TEX                        3
455 #define BUTS_ANIM                       4
456 #define BUTS_WORLD                      5
457 #define BUTS_RENDER                     6
458 #define BUTS_EDIT                       7
459 #define BUTS_GAME                       8
460 #define BUTS_FPAINT                     9
461 #define BUTS_RADIO                      10
462 #define BUTS_SCRIPT                     11
463 #define BUTS_SOUND                      12
464 #define BUTS_CONSTRAINT         13
465 #define BUTS_EFFECTS            14
466
467 /* sbuts->tab new */
468 #define TAB_SHADING_MAT         0
469 #define TAB_SHADING_TEX         1
470 #define TAB_SHADING_RAD         2
471 #define TAB_SHADING_WORLD       3
472 #define TAB_SHADING_LAMP        4
473
474 #define TAB_OBJECT_OBJECT       0
475 #define TAB_OBJECT_PHYSICS      1
476 #define TAB_OBJECT_PARTICLE     2
477
478 #define TAB_SCENE_RENDER        0
479 #define TAB_SCENE_WORLD         1
480 #define TAB_SCENE_ANIM          2
481 #define TAB_SCENE_SOUND         3
482 #define TAB_SCENE_SEQUENCER     4
483
484 /* sbuts->flag */
485 #define SB_PRV_OSA                      1
486
487 /* sbuts->align */
488 #define BUT_HORIZONTAL  1
489 #define BUT_VERTICAL    2
490
491 /* sbuts->scaflag */            
492 #define BUTS_SENS_SEL           1
493 #define BUTS_SENS_ACT           2
494 #define BUTS_SENS_LINK          4
495 #define BUTS_CONT_SEL           8
496 #define BUTS_CONT_ACT           16
497 #define BUTS_CONT_LINK          32
498 #define BUTS_ACT_SEL            64
499 #define BUTS_ACT_ACT            128
500 #define BUTS_ACT_LINK           256
501 #define BUTS_SENS_STATE         512
502 #define BUTS_ACT_STATE          1024
503
504 /* these values need to be hardcoded in structs, dna does not recognize defines */
505 /* also defined in BKE */
506 #define FILE_MAXDIR                     160
507 #define FILE_MAXFILE            80
508 #define FILE_MAX                        240
509
510 /* filesel types */
511 #define FILE_UNIX                       8
512 #define FILE_BLENDER            8 /* dont display relative paths */
513 #define FILE_SPECIAL            9
514
515 #define FILE_LOADLIB            1
516 #define FILE_MAIN                       2
517 #define FILE_LOADFONT           3
518
519 /* sfile->flag and simasel->flag */
520 #define FILE_SHOWSHORT          1
521 #define FILE_STRINGCODE         2
522 #define FILE_LINK                       4
523 #define FILE_HIDE_DOT           8
524 #define FILE_AUTOSELECT         16
525 #define FILE_ACTIVELAY          32
526 #define FILE_ATCURSOR           64
527 #define FILE_SYNCPOSE           128
528 #define FILE_FILTER                     256
529 #define FILE_BOOKMARKS          512
530
531 /* sfile->sort */
532 #define FILE_SORTALPHA          0
533 #define FILE_SORTDATE           1
534 #define FILE_SORTSIZE           2
535 #define FILE_SORTEXTENS         3
536
537 /* files in filesel list: 2=ACTIVE  */
538 #define HILITE                          1
539 #define BLENDERFILE                     4
540 #define PSXFILE                         8
541 #define IMAGEFILE                       16
542 #define MOVIEFILE                       32
543 #define PYSCRIPTFILE            64
544 #define FTFONTFILE                      128
545 #define SOUNDFILE                       256
546 #define TEXTFILE                        512
547 #define MOVIEFILE_ICON          1024 /* movie file that preview can't load */
548 #define FOLDERFILE                      2048 /* represents folders for filtering */
549
550 /* SpaceImage->mode */
551 #define SI_TEXTURE              0
552 #define SI_SHOW                 1
553
554 /* SpaceImage->dt_uv */
555 #define SI_UVDT_OUTLINE 0
556 #define SI_UVDT_DASH    1
557 #define SI_UVDT_BLACK   2
558 #define SI_UVDT_WHITE   3
559
560 /* SpaceImage->dt_uvstretch */
561 #define SI_UVDT_STRETCH_ANGLE   0
562 #define SI_UVDT_STRETCH_AREA    1
563
564 /* SpaceImage->sticky
565  * Note DISABLE should be 0, however would also need to re-arrange icon order,
566  * also, sticky loc is the default mode so this means we dont need to 'do_versons' */
567 #define SI_STICKY_LOC           0
568 #define SI_STICKY_DISABLE       1
569 #define SI_STICKY_VERTEX        2
570
571 /* SpaceImage->selectmode */
572 #define SI_SELECT_VERTEX        0
573 #define SI_SELECT_EDGE          1 /* not implemented */
574 #define SI_SELECT_FACE          2
575 #define SI_SELECT_ISLAND        3
576
577 /* SpaceImage->flag */
578 #define SI_BE_SQUARE    1<<0
579 #define SI_EDITTILE             1<<1
580 #define SI_CLIP_UV              1<<2
581 #define SI_DRAWTOOL             1<<3
582 #define SI_DEPRECATED1  1<<4    /* stick UVs to others in the same location */
583 #define SI_DRAWSHADOW   1<<5
584 #define SI_SELACTFACE   1<<6    /* deprecated */
585 #define SI_DEPRECATED2  1<<7
586 #define SI_DEPRECATED3  1<<8    /* stick UV selection to mesh vertex (UVs wont always be touching) */
587 #define SI_COORDFLOATS  1<<9
588 #define SI_PIXELSNAP    1<<10
589 #define SI_LIVE_UNWRAP  1<<11
590 #define SI_USE_ALPHA    1<<12
591 #define SI_SHOW_ALPHA   1<<13
592 #define SI_SHOW_ZBUF    1<<14
593                 /* next two for render window dislay */
594 #define SI_PREVSPACE    1<<15
595 #define SI_FULLWINDOW   1<<16
596 #define SI_SYNC_UVSEL   1<<17
597 #define SI_LOCAL_UV             1<<18
598                 /* this means that the image is drawn until it reaches the view edge,
599                  * in the image view, its unrelated to the 'tile' mode for texface */
600 #define SI_DRAW_TILE    1<<19 
601 #define SI_SMOOTH_UV    1<<20
602 #define SI_DRAW_STRETCH 1<<21
603 #define SI_DISPGP               1<<22
604
605 /* SpaceIpo->flag */
606 #define SIPO_LOCK_VIEW                  (1<<0)
607 #define SIPO_NOTRANSKEYCULL             (1<<1)
608 #define SIPO_NOHANDLES                  (1<<2)
609 #define SIPO_NODRAWCFRANUM              (1<<3)
610 #define SIPO_DRAWTIME                   (1<<4)
611
612 /* SpaceText flags (moved from DNA_text_types.h) */
613
614 #define ST_SCROLL_SELECT        0x0001 // scrollable
615 #define ST_CLEAR_NAMESPACE      0x0010 // clear namespace after script
616                                        // execution (see BPY_main.c)
617
618 /* SpaceOops->type */
619 #define SO_OOPS                 0
620 #define SO_OUTLINER             1
621 #define SO_DEPSGRAPH    2
622 #define SO_RNA                  3
623
624 /* SpaceOops->flag */
625 #define SO_TESTBLOCKS   1
626 #define SO_NEWSELECTED  2
627 #define SO_HIDE_RESTRICTCOLS            4
628
629 /* SpaceOops->visiflag */
630 #define OOPS_SCE        1
631 #define OOPS_OB         2
632 #define OOPS_ME         4
633 #define OOPS_CU         8
634 #define OOPS_MB         16
635 #define OOPS_LT         32
636 #define OOPS_LA         64
637 #define OOPS_MA         128
638 #define OOPS_TE         256
639 #define OOPS_IP         512
640 #define OOPS_LAY        1024
641 #define OOPS_LI         2048
642 #define OOPS_IM         4096
643 #define OOPS_AR         8192
644 #define OOPS_GR         16384
645 #define OOPS_CA         32768
646
647 /* SpaceOops->outlinevis */
648 #define SO_ALL_SCENES   0
649 #define SO_CUR_SCENE    1
650 #define SO_VISIBLE              2
651 #define SO_SELECTED             3
652 #define SO_ACTIVE               4
653 #define SO_SAME_TYPE    5
654 #define SO_GROUPS               6
655 #define SO_LIBRARIES    7
656 #define SO_VERSE_SESSION        8
657 #define SO_VERSE_MS             9
658 #define SO_SEQUENCE             10
659
660 /* SpaceOops->storeflag */
661 #define SO_TREESTORE_CLEANUP    1
662                 /* if set, it allows redraws. gets set for some allqueue events */
663 #define SO_TREESTORE_REDRAW             2
664
665 /* headerbuttons: 450-499 */
666
667 #define B_IMASELHOME            451
668 #define B_IMASELREMOVEBIP       452
669
670 #define C_BACK  0xBAAAAA
671 #define C_DARK  0x665656
672 #define C_DERK  0x766666
673 #define C_HI    0xCBBBBB
674 #define C_LO    0x544444
675
676 /* queue settings */
677 #define IMS_KNOW_WIN        1
678 #define IMS_KNOW_BIP        2
679 #define IMS_KNOW_DIR        4
680 #define IMS_DOTHE_INF           8
681 #define IMS_KNOW_INF       16
682 #define IMS_DOTHE_IMA      32
683 #define IMS_KNOW_IMA       64
684 #define IMS_FOUND_BIP     128
685 #define IMS_DOTHE_BIP     256
686 #define IMS_WRITE_NO_BIP  512
687
688 /* imasel->mode */
689 #define IMS_NOIMA                       0
690 #define IMS_IMA                         1
691 #define IMS_ANIM                        2
692 #define IMS_DIR                         4
693 #define IMS_FILE                        8
694 #define IMS_STRINGCODE          16
695
696 #define IMS_INDIR                       1
697 #define IMS_INDIRSLI            2
698 #define IMS_INFILE                      3
699 #define IMS_INFILESLI           4
700
701 /* nla->flag */
702 #define SNLA_ALLKEYED           (1<<0)
703 #define SNLA_ACTIVELAYERS       (1<<1)
704 #define SNLA_DRAWTIME           (1<<2)
705 #define SNLA_NOTRANSKEYCULL     (1<<3)
706 #define SNLA_NODRAWCFRANUM      (1<<4)
707
708 /* time->flag */
709         /* show timing in frames instead of in seconds */
710 #define TIME_DRAWFRAMES         1
711         /* temporary flag set when scrubbing time */
712 #define TIME_CFRA_NUM           2
713         /* only keyframes from active/selected channels get shown */
714 #define TIME_ONLYACTSEL         4
715
716 /* time->redraws */
717 #define TIME_LEFTMOST_3D_WIN    1
718 #define TIME_ALL_3D_WIN                 2
719 #define TIME_ALL_ANIM_WIN               4
720 #define TIME_ALL_BUTS_WIN               8
721 #define TIME_WITH_SEQ_AUDIO             16
722 #define TIME_SEQ                                32
723 #define TIME_ALL_IMAGE_WIN              64
724 #define TIME_CONTINUE_PHYSICS   128
725
726 /* sseq->mainb */
727 #define SEQ_DRAW_SEQUENCE         0
728 #define SEQ_DRAW_IMG_IMBUF        1
729 #define SEQ_DRAW_IMG_WAVEFORM     2
730 #define SEQ_DRAW_IMG_VECTORSCOPE  3
731 #define SEQ_DRAW_IMG_HISTOGRAM    4
732
733 /* sseq->flag */
734 #define SEQ_DRAWFRAMES   1
735 #define SEQ_MARKER_TRANS 2
736 #define SEQ_DRAW_COLOR_SEPERATED     4
737 #define SEQ_DRAW_SAFE_MARGINS        8
738 #define SEQ_DRAW_GPENCIL                        16
739
740 /* space types, moved from DNA_screen_types.h */
741 enum {
742         SPACE_EMPTY,
743         SPACE_VIEW3D,
744         SPACE_IPO,
745         SPACE_OOPS,
746         SPACE_BUTS,
747         SPACE_FILE,
748         SPACE_IMAGE,            
749         SPACE_INFO,
750         SPACE_SEQ,
751         SPACE_TEXT,
752         SPACE_IMASEL,
753         SPACE_SOUND,
754         SPACE_ACTION,
755         SPACE_NLA,
756         SPACE_SCRIPT,
757         SPACE_TIME,
758         SPACE_NODE,
759         SPACEICONMAX = SPACE_NODE
760 /*      SPACE_LOGIC     */
761 };
762
763 #endif