Blender  V2.93
DNA_space_types.h
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public License
4  * as published by the Free Software Foundation; either version 2
5  * of the License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program; if not, write to the Free Software Foundation,
14  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15  *
16  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
17  * All rights reserved.
18  */
25 #pragma once
26 
27 #include "DNA_color_types.h" /* for Histogram */
28 #include "DNA_defs.h"
29 #include "DNA_image_types.h" /* ImageUser */
30 #include "DNA_listBase.h"
31 #include "DNA_movieclip_types.h" /* MovieClipUser */
32 #include "DNA_node_types.h" /* for bNodeInstanceKey */
33 #include "DNA_outliner_types.h" /* for TreeStoreElem */
34 #include "DNA_sequence_types.h" /* SequencerScopes */
35 #include "DNA_vec_types.h"
36 /* Hum ... Not really nice... but needed for spacebuts. */
37 #include "DNA_view2d_types.h"
38 
39 #ifdef __cplusplus
40 extern "C" {
41 #endif
42 
43 struct BLI_mempool;
44 struct FileLayout;
45 struct FileList;
46 struct FileSelectParams;
47 struct Histogram;
48 struct ID;
49 struct Image;
50 struct Mask;
51 struct MovieClip;
52 struct MovieClipScopes;
53 struct Scopes;
54 struct Script;
55 struct SpaceGraph;
56 struct Text;
57 struct bDopeSheet;
58 struct bGPdata;
59 struct bNodeTree;
60 struct wmOperator;
61 struct wmTimer;
62 
63 /* Defined in `buttons_intern.h`. */
65 
66 /* Defined in `node_intern.h`. */
68 
69 /* Defined in `file_intern.h`. */
71 
72 /* Defined in `spreadsheet_intern.hh`. */
74 
75 /* -------------------------------------------------------------------- */
84 typedef struct SpaceLink {
85  struct SpaceLink *next, *prev;
88  char spacetype;
89  char link_flag;
90  char _pad0[6];
92 
93 /* SpaceLink.link_flag */
94 enum {
107 };
108 
111 /* -------------------------------------------------------------------- */
115 /* Info Header */
116 typedef struct SpaceInfo {
120  char spacetype;
121  char link_flag;
122  char _pad0[6];
123  /* End 'SpaceLink' header. */
124 
125  char rpt_mask;
126  char _pad[7];
128 
129 /* SpaceInfo.rpt_mask */
130 typedef enum eSpaceInfo_RptMask {
131  INFO_RPT_DEBUG = (1 << 0),
132  INFO_RPT_INFO = (1 << 1),
133  INFO_RPT_OP = (1 << 2),
134  INFO_RPT_WARN = (1 << 3),
135  INFO_RPT_ERR = (1 << 4),
137 
140 /* -------------------------------------------------------------------- */
144 /* Properties Editor */
145 typedef struct SpaceProperties {
149  char spacetype;
150  char link_flag;
151  char _pad0[6];
152  /* End 'SpaceLink' header. */
153 
156 
157  /* For different kinds of property editors (exposed in the space type selector). */
159 
163  short preview;
164  char _pad[4];
165  char flag;
166 
167  /* eSpaceButtons_OutlinerSync */
169 
171  void *path;
175 
176  void *texuser;
177 
178  /* Doesn't necessarily need to be a pointer, but runtime structs are still written to files. */
181 
182 /* button defines (deprecated) */
183 #ifdef DNA_DEPRECATED_ALLOW
184 /* warning: the values of these defines are used in SpaceProperties.tabs[8] */
185 /* SpaceProperties.mainb new */
186 # define CONTEXT_SCENE 0
187 # define CONTEXT_OBJECT 1
188 // #define CONTEXT_TYPES 2
189 # define CONTEXT_SHADING 3
190 # define CONTEXT_EDITING 4
191 // #define CONTEXT_SCRIPT 5
192 // #define CONTEXT_LOGIC 6
193 
194 /* SpaceProperties.mainb old (deprecated) */
195 // #define BUTS_VIEW 0
196 # define BUTS_LAMP 1
197 # define BUTS_MAT 2
198 # define BUTS_TEX 3
199 # define BUTS_ANIM 4
200 # define BUTS_WORLD 5
201 # define BUTS_RENDER 6
202 # define BUTS_EDIT 7
203 // #define BUTS_GAME 8
204 # define BUTS_FPAINT 9
205 # define BUTS_RADIO 10
206 # define BUTS_SCRIPT 11
207 // #define BUTS_SOUND 12
208 # define BUTS_CONSTRAINT 13
209 // #define BUTS_EFFECTS 14
210 #endif /* DNA_DEPRECATED_ALLOW */
211 
212 /* SpaceProperties.mainb new */
213 typedef enum eSpaceButtons_Context {
232 
233  /* Keep last. */
236 
237 /* SpaceProperties.flag */
238 typedef enum eSpaceButtons_Flag {
239  /* SB_PRV_OSA = (1 << 0), */ /* UNUSED */
240  SB_PIN_CONTEXT = (1 << 1),
241  SB_FLAG_UNUSED_2 = (1 << 2),
242  SB_FLAG_UNUSED_3 = (1 << 3),
245  SB_SHADING_CONTEXT = (1 << 4),
247 
248 /* SpaceProperties.outliner_sync */
254 
257 /* -------------------------------------------------------------------- */
261 /* Defined in `outliner_intern.h`. */
263 
264 /* Outliner */
265 typedef struct SpaceOutliner {
269  char spacetype;
270  char link_flag;
271  char _pad0[6];
272  /* End 'SpaceLink' header. */
273 
276 
278 
279  /* treestore is an ordered list of TreeStoreElem's from outliner tree;
280  * Note that treestore may contain duplicate elements if element
281  * is used multiple times in outliner tree (e. g. linked objects)
282  * Also note that BLI_mempool can not be read/written in DNA directly,
283  * therefore readfile.c/writefile.c linearize treestore into TreeStore structure
284  */
286 
287  /* search stuff */
288  char search_string[64];
289  struct TreeStoreElem search_tse;
290 
293 
296 
297  int filter;
301 
304 
305 /* SpaceOutliner.flag */
306 typedef enum eSpaceOutliner_Flag {
307  /* SO_TESTBLOCKS = (1 << 0), */ /* UNUSED */
308  /* SO_NEWSELECTED = (1 << 1), */ /* UNUSED */
309  SO_FLAG_UNUSED_1 = (1 << 2), /* cleared */
310  /* SO_HIDE_KEYINGSETINFO = (1 << 3), */ /* UNUSED */
311  SO_SKIP_SORT_ALPHA = (1 << 4),
312  SO_SYNC_SELECT = (1 << 5),
313  SO_MODE_COLUMN = (1 << 6),
315 
316 /* SpaceOutliner.filter */
317 typedef enum eSpaceOutliner_Filter {
318  SO_FILTER_SEARCH = (1 << 0), /* Run-time flag. */
322  SO_FILTER_NO_OB_CONTENT = (1 << 3), /* Not only mesh, but modifiers, constraints, ... */
324 
325  SO_FILTER_UNUSED_5 = (1 << 5), /* cleared */
334 
335  SO_FILTER_OB_STATE_SELECTABLE = (1 << 12), /* Not set via DNA. */
336  SO_FILTER_OB_STATE_VISIBLE = (1 << 13), /* Not set via DNA. */
338  SO_FILTER_OB_STATE_SELECTED = (1 << 15), /* Not set via DNA. */
339  SO_FILTER_OB_STATE_ACTIVE = (1 << 16), /* Not set via DNA. */
341 
342  SO_FILTER_ID_TYPE = (1 << 18),
344 
345 #define SO_FILTER_OB_TYPE \
346  (SO_FILTER_NO_OB_MESH | SO_FILTER_NO_OB_ARMATURE | SO_FILTER_NO_OB_EMPTY | \
347  SO_FILTER_NO_OB_LAMP | SO_FILTER_NO_OB_CAMERA | SO_FILTER_NO_OB_OTHERS)
348 
349 #define SO_FILTER_OB_STATE \
350  (SO_FILTER_OB_STATE_VISIBLE | SO_FILTER_OB_STATE_SELECTED | SO_FILTER_OB_STATE_ACTIVE | \
351  SO_FILTER_OB_STATE_SELECTABLE)
352 
353 #define SO_FILTER_ANY \
354  (SO_FILTER_NO_OB_CONTENT | SO_FILTER_NO_CHILDREN | SO_FILTER_OB_TYPE | SO_FILTER_OB_STATE | \
355  SO_FILTER_NO_COLLECTION | SO_FILTER_NO_LIB_OVERRIDE)
356 
357 /* SpaceOutliner.filter_state */
361  SO_FILTER_OB_HIDDEN = 2, /* deprecated */
366 
367 /* SpaceOutliner.show_restrict_flags */
369  SO_RESTRICT_ENABLE = (1 << 0),
370  SO_RESTRICT_SELECT = (1 << 1),
371  SO_RESTRICT_HIDE = (1 << 2),
373  SO_RESTRICT_RENDER = (1 << 4),
377 
378 /* SpaceOutliner.outlinevis */
379 typedef enum eSpaceOutliner_Mode {
381  /* SO_CUR_SCENE = 1, */ /* deprecated! */
382  /* SO_VISIBLE = 2, */ /* deprecated! */
383  /* SO_SELECTED = 3, */ /* deprecated! */
384  /* SO_ACTIVE = 4, */ /* deprecated! */
385  /* SO_SAME_TYPE = 5, */ /* deprecated! */
386  /* SO_GROUPS = 6, */ /* deprecated! */
388  /* SO_VERSE_SESSION = 8, */ /* deprecated! */
389  /* SO_VERSE_MS = 9, */ /* deprecated! */
392  /* SO_USERDEF = 12, */ /* deprecated! */
393  /* SO_KEYMAP = 13, */ /* deprecated! */
398 
399 /* SpaceOutliner.storeflag */
401  /* cleanup tree */
403  SO_TREESTORE_UNUSED_1 = (1 << 1), /* cleared */
404  /* rebuild the tree, similar to cleanup,
405  * but defer a call to BKE_outliner_treehash_rebuild_from_treestore instead */
408 
409 /* outliner search flags (SpaceOutliner.search_flags) */
412  SO_FIND_COMPLETE = (1 << 1),
415 
418 /* -------------------------------------------------------------------- */
422 typedef struct SpaceGraph_Runtime {
424  char flag;
425  char _pad[7];
429 
430 /* 'Graph' Editor (formerly known as the IPO Editor) */
431 typedef struct SpaceGraph {
435  char spacetype;
436  char link_flag;
437  char _pad0[6];
438  /* End 'SpaceLink' header. */
439 
442 
445  struct bDopeSheet *ads;
446 
448  short mode;
453  short autosnap;
455  int flag;
456 
458  float cursorTime;
460  float cursorVal;
462  int around;
463  char _pad[4];
464 
467 
468 /* SpaceGraph.flag (Graph Editor Settings) */
469 typedef enum eGraphEdit_Flag {
470  /* OLD DEPRECATED SETTING */
471  /* SIPO_LOCK_VIEW = (1 << 0), */
472 
473  /* don't merge keyframes on the same frame after a transform */
475  /* don't show any keyframe handles at all */
476  SIPO_NOHANDLES = (1 << 2),
477  /* SIPO_NODRAWCFRANUM = (1 << 3), DEPRECATED */
478  /* show timing in seconds instead of frames */
479  SIPO_DRAWTIME = (1 << 4),
480  /* only show keyframes for selected F-Curves */
482  /* draw names of F-Curves beside the respective curves */
483  /* NOTE: currently not used */
484  /* SIPO_DRAWNAMES = (1 << 6), */ /* UNUSED */
485  /* show sliders in channels list */
486  SIPO_SLIDERS = (1 << 7),
487  /* don't show the horizontal component of the cursor */
488  SIPO_NODRAWCURSOR = (1 << 8),
489  /* only show handles of selected keyframes */
491  /* don't perform realtime updates */
493  /* don't draw curves with AA ("beauty-draw") for performance */
494  SIPO_BEAUTYDRAW_OFF = (1 << 12),
495  /* draw grouped channels with colors set in group */
496  /* SIPO_NODRAWGCOLORS = (1 << 13), DEPRECATED */
497  /* normalize curves on display */
498  SIPO_NORMALIZE = (1 << 14),
500  /* show markers region */
501  SIPO_SHOW_MARKERS = (1 << 16),
504 
505 /* SpaceGraph.mode (Graph Editor Mode) */
506 typedef enum eGraphEdit_Mode {
507  /* all animation curves (from all over Blender) */
509  /* drivers only */
512 
518 
526 
529 /* -------------------------------------------------------------------- */
533 /* NLA Editor */
534 typedef struct SpaceNla {
535  struct SpaceLink *next, *prev;
538  char spacetype;
539  char link_flag;
540  char _pad0[6];
541  /* End 'SpaceLink' header. */
542 
544  short autosnap;
545  short flag;
546  char _pad[4];
547 
548  struct bDopeSheet *ads;
552 
553 /* SpaceNla.flag */
554 typedef enum eSpaceNla_Flag {
555  SNLA_FLAG_UNUSED_0 = (1 << 0),
556  SNLA_FLAG_UNUSED_1 = (1 << 1),
557  /* draw timing in seconds instead of frames */
558  SNLA_DRAWTIME = (1 << 2),
559  SNLA_FLAG_UNUSED_3 = (1 << 3),
560  /* SNLA_NODRAWCFRANUM = (1 << 4), DEPRECATED */
561  /* don't draw influence curves on strips */
562  SNLA_NOSTRIPCURVES = (1 << 5),
563  /* don't perform realtime updates */
565  /* don't show local strip marker indications */
567  /* show markers region */
568  SNLA_SHOW_MARKERS = (1 << 8),
570 
573 /* -------------------------------------------------------------------- */
577 /* Sequencer */
578 typedef struct SpaceSeq {
582  char spacetype;
583  char link_flag;
584  char _pad0[6];
585  /* End 'SpaceLink' header. */
586 
589 
593  short mainb;
595  short render_size;
596  short chanshown;
597  short zebra;
598  int flag;
600  float zoom DNA_DEPRECATED;
602  int view;
606  char _pad[4];
607 
609  struct bGPdata *gpd;
610 
612  struct SequencerScopes scopes;
613 
616  char _pad2[7];
618 
619 /* SpaceSeq.mainb */
620 typedef enum eSpaceSeq_RegionType {
627 
628 /* SpaceSeq.draw_flag */
629 typedef enum eSpaceSeq_DrawFlag {
630  SEQ_DRAW_BACKDROP = (1 << 0),
634 
635 /* SpaceSeq.flag */
636 typedef enum eSpaceSeq_Flag {
637  SEQ_DRAWFRAMES = (1 << 0),
638  SEQ_MARKER_TRANS = (1 << 1),
641  SEQ_SHOW_GPENCIL = (1 << 4),
642  SEQ_SHOW_FCURVES = (1 << 5),
643  SEQ_USE_ALPHA = (1 << 6), /* use RGBA display mode for preview */
644  SEQ_ALL_WAVEFORMS = (1 << 7), /* draw all waveforms */
645  SEQ_NO_WAVEFORMS = (1 << 8), /* draw no waveforms */
647  SEQ_SHOW_METADATA = (1 << 10),
648  SEQ_SHOW_MARKERS = (1 << 11), /* show markers region */
649  SEQ_ZOOM_TO_FIT = (1 << 12),
651  SEQ_SHOW_STRIP_NAME = (1 << 14),
654  SEQ_USE_PROXIES = (1 << 17),
656 
657 /* SpaceSeq.view */
658 typedef enum eSpaceSeq_Displays {
663 
664 /* SpaceSeq.render_size */
674 
675 typedef struct MaskSpaceInfo {
676  /* **** mask editing **** */
677  struct Mask *mask;
678  /* draw options */
679  char draw_flag;
680  char draw_type;
682  char _pad3[5];
684 
685 /* SpaceSeq.mainb */
686 typedef enum eSpaceSeq_OverlayType {
691 
694 /* -------------------------------------------------------------------- */
706  short type; /* eFileAssetLibrary_Type */
707  char _pad[2];
715 
716 /* Config and Input for File Selector */
717 typedef struct FileSelectParams {
719  char title[96];
724  char dir[1090];
725  char file[256];
726 
727  char renamefile[256];
728  short rename_flag;
729 
731  char filter_glob[256];
732 
734  char filter_search[64];
736  int _pad0;
738 
744  int sel_last;
745  unsigned short thumbnail_size;
746  char _pad1[2];
747 
748  /* short */
750  short type; /* eFileSelectType */
752  short flag;
754  short sort;
756  short display;
759  char _pad2[3];
760 
762  int filter;
763 
766 
767  /* XXX --- still unused -- */
769  short f_fp;
771  char fp_str[8];
772 
773  /* XXX --- end unused -- */
775 
779 typedef struct FileAssetSelectParams {
781 
784 
789 typedef struct FileFolderHistory {
790  struct FileFolderLists *next, *prev;
791 
793  char browse_mode; /* eFileBrowse_Mode */
794  char _pad[7];
795 
801 
802 /* File Browser */
803 typedef struct SpaceFile {
807  char spacetype;
808  char link_flag;
809  char _pad0[6];
810  /* End 'SpaceLink' header. */
811 
813  char browse_mode; /* eFileBrowse_Mode */
814  char _pad1[1];
815 
816  short tags;
817 
819 
823 
824  void *_pad2;
825 
830  struct FileList *files;
831 
841 
846  ListBase folder_histories; /* FileFolderHistory */
847 
848  /* operator that is invoking fileselect
849  * op->exec() will be called on the 'Load' button.
850  * if operator provides op->cancel(), then this will be invoked
851  * on the cancel button.
852  */
853  struct wmOperator *op;
854 
857 
859 
862 
865 
866 /* SpaceFile.browse_mode (File Space Browsing Mode) */
867 typedef enum eFileBrowse_Mode {
868  /* Regular Blender File Browser */
870  /* Asset Browser */
873 
875  /* For the future. Display assets bundled with Blender by default. */
876  // FILE_ASSET_LIBRARY_BUNDLED = 0,
879  /* For the future. Display assets for the current project. */
880  // FILE_ASSET_LIBRARY_PROJECT = 2,
881 
889 
890 /* FileSelectParams.display */
896 
897  /* User selectable choices. */
898 
902 };
903 
904 /* FileSelectParams.sort */
910 
911  /* User selectable choices. */
912 
917 };
918 
919 /* SpaceFile.tags */
920 enum eFileTags {
924 };
925 
926 /* FileSelectParams.details_flags */
928  FILE_DETAILS_SIZE = (1 << 0),
930 };
931 
932 /* these values need to be hardcoded in structs, dna does not recognize defines */
933 /* also defined in BKE */
934 #define FILE_MAXDIR 768
935 #define FILE_MAXFILE 256
936 #define FILE_MAX 1024
937 
938 #define FILE_MAX_LIBEXTRA (FILE_MAX + MAX_ID_NAME)
939 
940 /* filesel types */
941 typedef enum eFileSelectType {
945 
947  FILE_BLENDER = 8, /* don't display relative paths */
950 
951 /* filesel op property -> action */
952 typedef enum eFileSel_Action {
956 
957 /* sfile->params->flag */
962 typedef enum eFileSel_Params_Flag {
963  FILE_PARAMS_FLAG_UNUSED_1 = (1 << 0), /* cleared */
964  FILE_RELPATH = (1 << 1),
965  FILE_LINK = (1 << 2),
966  FILE_HIDE_DOT = (1 << 3),
967  FILE_AUTOSELECT = (1 << 4),
969  FILE_PARAMS_FLAG_UNUSED_6 = (1 << 6), /* cleared */
970  FILE_DIRSEL_ONLY = (1 << 7),
971  FILE_FILTER = (1 << 8),
974  FILE_SORT_INVERT = (1 << 11),
975  FILE_HIDE_TOOL_PROPS = (1 << 12),
976  FILE_CHECK_EXISTING = (1 << 13),
977  FILE_ASSETS_ONLY = (1 << 14),
979 
980 /* sfile->params->rename_flag */
981 /* Note: short flag. Defined as bitflags, but currently only used as exclusive status markers... */
992 
998 typedef enum eFileSel_File_Types {
999  FILE_TYPE_BLENDER = (1 << 2),
1001  FILE_TYPE_IMAGE = (1 << 4),
1002  FILE_TYPE_MOVIE = (1 << 5),
1004  FILE_TYPE_FTFONT = (1 << 7),
1005  FILE_TYPE_SOUND = (1 << 8),
1006  FILE_TYPE_TEXT = (1 << 9),
1007  FILE_TYPE_ARCHIVE = (1 << 10),
1009  FILE_TYPE_FOLDER = (1 << 11),
1010  FILE_TYPE_BTX = (1 << 12),
1011  FILE_TYPE_COLLADA = (1 << 13),
1013  FILE_TYPE_OPERATOR = (1 << 14),
1015  FILE_TYPE_ALEMBIC = (1 << 16),
1017  FILE_TYPE_OBJECT_IO = (1 << 17),
1018  FILE_TYPE_USD = (1 << 18),
1019  FILE_TYPE_VOLUME = (1 << 19),
1020 
1021  FILE_TYPE_ASSET = (1 << 28),
1023  FILE_TYPE_DIR = (1 << 30),
1024  FILE_TYPE_BLENDERLIB = (1u << 31),
1026 
1027 /* Selection Flags in filesel: struct direntry, unsigned char selflag */
1028 typedef enum eDirEntry_SelectFlag {
1029  /* FILE_SEL_ACTIVE = (1 << 1), */ /* UNUSED */
1031  FILE_SEL_SELECTED = (1 << 3),
1032  FILE_SEL_EDITING = (1 << 4),
1034 
1035 /* ***** Related to file browser, but never saved in DNA, only here to help with RNA. ***** */
1036 
1045 #define ASSET_UUID_LENGTH 16
1046 
1047 /* Used to communicate with asset engines outside of 'import' context. */
1048 #
1049 #
1050 typedef struct AssetUUID {
1051  int uuid_asset[4];
1055 
1056 #
1057 #
1058 typedef struct AssetUUIDList {
1061  char _pad[4];
1063 
1064 /* Container for a revision, only relevant in asset context. */
1065 #
1066 #
1067 typedef struct FileDirEntryRevision {
1069 
1070  char *comment;
1071  void *_pad;
1072 
1073  int uuid[4];
1074 
1077  /* Temp caching of UI-generated strings... */
1078  char size_str[16];
1079  char datetime_str[16 + 8];
1081 
1082 /* Container for a variant, only relevant in asset context.
1083  * In case there are no variants, a single one shall exist, with NULL name/description. */
1084 #
1085 #
1086 typedef struct FileDirEntryVariant {
1088 
1089  int uuid[4];
1090  char *name;
1092 
1097 
1098 /* Container for mere direntry, with additional asset-related data. */
1099 #
1100 #
1101 typedef struct FileDirEntry {
1103 
1104  int uuid[4];
1105  /* Name needs freeing if FILE_ENTRY_NAME_FREE is set. Otherwise this is a direct pointer to a
1106  * name buffer. */
1107  char *name;
1109 
1110  /* Either point to active variant/revision if available, or own entry
1111  * (in mere filebrowser case). */
1113 
1118 
1119  /* Path to item that is relative to current folder root. */
1120  char *relpath;
1123 
1126  ID *id;
1131 
1132  /* The icon_id for the preview image. */
1134 
1135  /* Tags are for info only, most of filtering is done in asset engine. */
1136  char **tags;
1138 
1139  short status;
1140  short flags;
1141  /* eFileAttributes defined in BLI_fileops.h */
1143 
1148 
1162 #
1163 #
1164 typedef struct FileDirEntryArr {
1169 
1171  char root[1024];
1173 
1174 #if 0 /* UNUSED */
1175 /* FileDirEntry.status */
1176 enum {
1177  ASSET_STATUS_LOCAL = 1 << 0, /* If active uuid is available locally/immediately. */
1178  ASSET_STATUS_LATEST = 1 << 1, /* If active uuid is latest available version. */
1179 };
1180 #endif
1181 
1182 /* FileDirEntry.flags */
1183 enum {
1184  FILE_ENTRY_INVALID_PREVIEW = 1 << 0, /* The preview for this entry could not be generated. */
1186 };
1187 
1190 /* -------------------------------------------------------------------- */
1194 /* Image/UV Editor */
1195 
1196 typedef struct SpaceImageOverlay {
1197  int flag;
1198  char _pad[4];
1200 
1201 typedef struct SpaceImage {
1207  char _pad0[6];
1208  /* End 'SpaceLink' header. */
1209 
1210  struct Image *image;
1211  struct ImageUser iuser;
1212 
1214  struct Scopes scopes;
1216  struct Histogram sample_line_hist;
1217 
1219  struct bGPdata *gpd;
1220 
1222  float cursor[2];
1224  float xof, yof;
1226  float zoom;
1228  float centx, centy;
1229 
1231  char mode;
1232  /* Storage for sub-space types. */
1234 
1235  char pin;
1236  char _pad1;
1241  short curtile;
1242  short lock;
1244  char dt_uv;
1246  char sticky;
1248  char around;
1249 
1250  int flag;
1251 
1253  char _pad2[7];
1254 
1255  float uv_opacity;
1256 
1258 
1262 
1263 /* SpaceImage.dt_uv */
1264 typedef enum eSpaceImage_UVDT {
1270 
1271 /* SpaceImage.dt_uvstretch */
1276 
1277 /* SpaceImage.pixel_snap_mode */
1283 
1284 /* SpaceImage.mode */
1285 typedef enum eSpaceImage_Mode {
1291 
1292 /* SpaceImage.sticky
1293  * Note DISABLE should be 0, however would also need to re-arrange icon order,
1294  * also, sticky loc is the default mode so this means we don't need to 'do_versions' */
1295 typedef enum eSpaceImage_Sticky {
1300 
1301 /* SpaceImage.flag */
1302 typedef enum eSpaceImage_Flag {
1303  SI_FLAG_UNUSED_0 = (1 << 0), /* cleared */
1304  SI_FLAG_UNUSED_1 = (1 << 1), /* cleared */
1305  SI_CLIP_UV = (1 << 2),
1306  SI_FLAG_UNUSED_3 = (1 << 3), /* cleared */
1307  SI_NO_DRAWFACES = (1 << 4),
1308  SI_DRAWSHADOW = (1 << 5),
1309  SI_FLAG_UNUSED_6 = (1 << 6), /* cleared */
1310  SI_FLAG_UNUSED_7 = (1 << 7), /* cleared */
1311  SI_FLAG_UNUSED_8 = (1 << 8), /* cleared */
1312  SI_COORDFLOATS = (1 << 9),
1313  SI_FLAG_UNUSED_10 = (1 << 10),
1314  SI_LIVE_UNWRAP = (1 << 11),
1315  SI_USE_ALPHA = (1 << 12),
1316  SI_SHOW_ALPHA = (1 << 13),
1317  SI_SHOW_ZBUF = (1 << 14),
1318 
1319  /* next two for render window display */
1320  SI_PREVSPACE = (1 << 15),
1321  SI_FULLWINDOW = (1 << 16),
1322 
1323  SI_FLAG_UNUSED_17 = (1 << 17),
1324  SI_FLAG_UNUSED_18 = (1 << 18), /* cleared */
1325 
1330  SI_DRAW_TILE = (1 << 19),
1331  SI_FLAG_UNUSED_20 = (1 << 20), /* cleared */
1332  SI_DRAW_STRETCH = (1 << 21),
1333  SI_SHOW_GPENCIL = (1 << 22),
1334  SI_FLAG_UNUSED_23 = (1 << 23), /* cleared */
1335 
1336  SI_FLAG_UNUSED_24 = (1 << 24),
1337 
1338  SI_NO_DRAW_TEXPAINT = (1 << 25),
1339  SI_DRAW_METADATA = (1 << 26),
1340 
1341  SI_SHOW_R = (1 << 27),
1342  SI_SHOW_G = (1 << 28),
1343  SI_SHOW_B = (1 << 29),
1345 
1349 
1352 /* -------------------------------------------------------------------- */
1356 typedef struct SpaceText_Runtime {
1357 
1360 
1363 
1365  struct rcti scroll_region_handle;
1367  struct rcti scroll_region_select;
1368 
1371 
1374 
1377 
1383 
1384  char _pad1[4];
1385 
1387  void *drawcache;
1388 
1390 
1391 /* Text Editor */
1392 typedef struct SpaceText {
1398  char _pad0[6];
1399  /* End 'SpaceLink' header. */
1400 
1401  struct Text *text;
1402 
1404  int top;
1405 
1407  int left;
1408  char _pad1[4];
1409 
1410  short flags;
1411 
1413  short lheight;
1414 
1416 
1417  /* Booleans */
1418  char wordwrap;
1426  char _pad2[1];
1427 
1429  char findstr[256];
1431  char replacestr[256];
1432 
1435  char _pad3[2];
1436 
1440 
1441 /* SpaceText flags (moved from DNA_text_types.h) */
1442 typedef enum eSpaceText_Flags {
1443  /* scrollable */
1444  ST_SCROLL_SELECT = (1 << 0),
1445 
1446  ST_FLAG_UNUSED_4 = (1 << 4), /* dirty */
1447 
1448  ST_FIND_WRAP = (1 << 5),
1449  ST_FIND_ALL = (1 << 6),
1450  ST_SHOW_MARGIN = (1 << 7),
1451  ST_MATCH_CASE = (1 << 8),
1452 
1453  ST_FIND_ACTIVATE = (1 << 9),
1455 
1456 /* SpaceText.findstr/replacestr */
1457 #define ST_MAX_FIND_STR 256
1458 
1461 /* -------------------------------------------------------------------- */
1465 /* Script Runtime Data - Obsolete (pre 2.5) */
1466 typedef struct Script {
1468 
1469  void *py_draw;
1470  void *py_event;
1471  void *py_button;
1474 
1481  char scriptname[1024];
1483  char scriptarg[256];
1485 #define SCRIPT_SET_NULL(_script) \
1486  _script->py_draw = _script->py_event = _script->py_button = _script->py_browsercallback = \
1487  _script->py_globaldict = NULL; \
1488  _script->flags = 0
1489 
1490 /* Script View - Obsolete (pre 2.5) */
1491 typedef struct SpaceScript {
1497  char _pad0[6];
1498  /* End 'SpaceLink' header. */
1499 
1500  struct Script *script;
1501 
1502  short flags, menunr;
1503  char _pad1[4];
1504 
1505  void *but_refs;
1507 
1510 /* -------------------------------------------------------------------- */
1514 typedef struct bNodeTreePath {
1516 
1520  char _pad[4];
1522  float view_center[2];
1523 
1525  char node_name[64];
1526  char display_name[64];
1528 
1529 typedef struct SpaceNode {
1535  char _pad0[6];
1536  /* End 'SpaceLink' header. */
1537 
1540 
1542  struct ID *id, *from;
1543 
1544  short flag;
1545 
1548  char _pad1;
1549 
1551  float xof, yof;
1553  float zoom;
1554 
1563 
1564  /* The tree farthest down in the group hierarchy. */
1566 
1568 
1569  /* tree type for the current node tree */
1570  char tree_idname[64];
1572  int treetype DNA_DEPRECATED;
1573 
1575  short texfrom;
1577  short shaderfrom;
1578 
1580  struct bGPdata *gpd;
1581 
1584 
1585 /* SpaceNode.flag */
1586 typedef enum eSpaceNode_Flag {
1587  SNODE_BACKDRAW = (1 << 1),
1589  SNODE_USE_ALPHA = (1 << 3),
1590  SNODE_SHOW_ALPHA = (1 << 4),
1591  SNODE_SHOW_R = (1 << 7),
1592  SNODE_SHOW_G = (1 << 8),
1593  SNODE_SHOW_B = (1 << 9),
1594  SNODE_AUTO_RENDER = (1 << 5),
1595  SNODE_FLAG_UNUSED_6 = (1 << 6), /* cleared */
1596  SNODE_FLAG_UNUSED_10 = (1 << 10), /* cleared */
1597  SNODE_FLAG_UNUSED_11 = (1 << 11), /* cleared */
1598  SNODE_PIN = (1 << 12),
1602 
1603 /* SpaceNode.texfrom */
1604 typedef enum eSpaceNode_TexFrom {
1605  /* SNODE_TEX_OBJECT = 0, */
1610 
1611 /* SpaceNode.shaderfrom */
1617 
1618 /* SpaceNode.insert_ofs_dir */
1619 enum {
1622 };
1623 
1626 /* -------------------------------------------------------------------- */
1630 /* Console content */
1631 typedef struct ConsoleLine {
1632  struct ConsoleLine *next, *prev;
1633 
1634  /* keep these 3 vars so as to share free, realloc funcs */
1638  int len;
1639  char *line;
1640 
1641  int cursor;
1643  int type;
1645 
1646 /* ConsoleLine.type */
1647 typedef enum eConsoleLine_Type {
1650  CONSOLE_LINE_INFO = 2, /* autocomp feedback */
1653 
1654 /* Console View */
1655 typedef struct SpaceConsole {
1661  char _pad0[6];
1662  /* End 'SpaceLink' header. */
1663 
1664  /* space vars */
1665  int lheight;
1666  char _pad[4];
1667 
1672  char prompt[256];
1674  char language[32];
1675 
1678  int sel_end;
1680 
1683 /* -------------------------------------------------------------------- */
1687 typedef struct SpaceUserPref {
1693  char _pad0[6];
1694  /* End 'SpaceLink' header. */
1695 
1696  char _pad1[7];
1699  char filter[64];
1701 
1704 /* -------------------------------------------------------------------- */
1708 /* Clip Editor */
1709 typedef struct SpaceClip {
1715  char _pad0[6];
1716  /* End 'SpaceLink' header. */
1717 
1718  char _pad1[4];
1719 
1721  float xof, yof;
1725  float zoom;
1726 
1728  struct MovieClipUser user;
1730  struct MovieClip *clip;
1732  struct MovieClipScopes scopes;
1733 
1735  int flag;
1737  short mode;
1739  short view;
1740 
1743 
1744  /* current stabilization data */
1746  float loc[2], scale, angle;
1747  char _pad[4];
1752  float stabmat[4][4], unistabmat[4][4];
1753 
1754  /* movie postprocessing */
1756 
1757  /* grease pencil */
1759  char _pad2[2];
1760 
1762  int around;
1763  char _pad4[4];
1764 
1766  float cursor[2];
1767 
1770 
1771 /* SpaceClip.flag */
1772 typedef enum eSpaceClip_Flag {
1775  SC_LOCK_SELECTION = (1 << 2),
1778  SC_SHOW_BUNDLES = (1 << 5),
1779  SC_MUTE_FOOTAGE = (1 << 6),
1780  SC_HIDE_DISABLED = (1 << 7),
1781  SC_SHOW_NAMES = (1 << 8),
1782  SC_SHOW_GRID = (1 << 9),
1783  SC_SHOW_STABLE = (1 << 10),
1785  SC_SHOW_ANNOTATION = (1 << 12),
1786  SC_SHOW_FILTERS = (1 << 13),
1789  /* SC_SHOW_PYRAMID_LEVELS = (1 << 16), */ /* UNUSED */
1790  SC_LOCK_TIMECURSOR = (1 << 17),
1791  SC_SHOW_SECONDS = (1 << 18),
1795  SC_SHOW_METADATA = (1 << 22),
1797 
1798 /* SpaceClip.mode */
1799 typedef enum eSpaceClip_Mode {
1801  /*SC_MODE_RECONSTRUCTION = 1,*/ /* DEPRECATED */
1802  /*SC_MODE_DISTORTION = 2,*/ /* DEPRECATED */
1805 
1806 /* SpaceClip.view */
1807 typedef enum eSpaceClip_View {
1812 
1813 /* SpaceClip.gpencil_src */
1818 
1821 /* -------------------------------------------------------------------- */
1825 typedef struct SpaceTopBar {
1831  char _pad0[6];
1832  /* End 'SpaceLink' header. */
1834 
1837 /* -------------------------------------------------------------------- */
1841 typedef struct SpaceStatusBar {
1847  char _pad0[6];
1848  /* End 'SpaceLink' header. */
1850 
1853 /* -------------------------------------------------------------------- */
1857 typedef struct SpreadsheetColumnID {
1858  char *name;
1860 
1861 typedef struct SpreadsheetColumn {
1870 
1875 typedef struct SpreadsheetContext {
1877  /* eSpaceSpreadsheet_ContextType. */
1878  int type;
1879  char _pad[4];
1881 
1884  struct Object *object;
1886 
1891 
1892 typedef struct SpreadsheetContextNode {
1894  char *node_name;
1896 
1897 typedef struct SpaceSpreadsheet {
1903  char _pad0[6];
1904  /* End 'SpaceLink' header. */
1905 
1906  /* List of #SpreadsheetColumn. */
1908 
1916 
1917  /* eSpaceSpreadsheet_FilterFlag. */
1919 
1920  /* #GeometryComponentType. */
1922  /* #AttributeDomain. */
1924  /* eSpaceSpreadsheet_ObjectContext. */
1926 
1927  /* eSpaceSpreadsheet_Flag. */
1929 
1932 
1937 
1941 
1946 
1952 
1957 #define SPREADSHEET_WIDTH_UNIT \
1958  (UI_UNIT_X * UI_style_get_dpi()->widget.points / (float)UI_DEFAULT_TEXT_POINTS)
1959 
1962 /* -------------------------------------------------------------------- */
1966 /* space types, moved from DNA_screen_types.h */
1967 /* Do NOT change order, append on end. types are hardcoded needed */
1968 typedef enum eSpace_Type {
1979 #ifdef DNA_DEPRECATED_ALLOW
1980  SPACE_IMASEL = 10, /* Deprecated */
1981  SPACE_SOUND = 11, /* Deprecated */
1982 #endif
1985  /* TODO: fully deprecate */
1986  SPACE_SCRIPT = 14, /* Deprecated */
1987 #ifdef DNA_DEPRECATED_ALLOW
1988  SPACE_TIME = 15, /* Deprecated */
1989 #endif
1991 #ifdef DNA_DEPRECATED_ALLOW
1992  SPACE_LOGIC = 17, /* Deprecated */
1993 #endif
1999  SPACE_SPREADSHEET = 23
2000 
2001 #define SPACE_TYPE_LAST SPACE_SPREADSHEET
2003 
2004 /* use for function args */
2005 #define SPACE_TYPE_ANY -1
2006 
2007 #define IMG_SIZE_FALLBACK 256
2008 
2011 #ifdef __cplusplus
2012 }
2013 #endif
These structs are the foundation for all linked lists in the library system.
enum eSpaceImage_PixelSnapMode eSpaceImage_Snap_Mode
eSpaceImage_Flag
@ SI_FLAG_UNUSED_8
@ SI_DRAW_TILE
@ SI_SHOW_ZBUF
@ SI_FLAG_UNUSED_0
@ SI_FLAG_UNUSED_7
@ SI_FLAG_UNUSED_17
@ SI_FLAG_UNUSED_23
@ SI_FULLWINDOW
@ SI_NO_DRAW_TEXPAINT
@ SI_SHOW_R
@ SI_FLAG_UNUSED_10
@ SI_DRAW_STRETCH
@ SI_FLAG_UNUSED_3
@ SI_SHOW_GPENCIL
@ SI_FLAG_UNUSED_20
@ SI_FLAG_UNUSED_24
@ SI_FLAG_UNUSED_1
@ SI_DRAW_METADATA
@ SI_PREVSPACE
@ SI_CLIP_UV
@ SI_USE_ALPHA
@ SI_COORDFLOATS
@ SI_SHOW_G
@ SI_SHOW_B
@ SI_FLAG_UNUSED_18
@ SI_SHOW_ALPHA
@ SI_LIVE_UNWRAP
@ SI_FLAG_UNUSED_6
@ SI_NO_DRAWFACES
@ SI_DRAWSHADOW
struct FileDirEntryRevision FileDirEntryRevision
eSpaceNode_Flag
@ SNODE_PIN
@ SNODE_USE_ALPHA
@ SNODE_SHOW_B
@ SNODE_AUTO_RENDER
@ SNODE_FLAG_UNUSED_6
@ SNODE_SHOW_G
@ SNODE_SHOW_R
@ SNODE_FLAG_UNUSED_11
@ SNODE_BACKDRAW
@ SNODE_FLAG_UNUSED_10
@ SNODE_SKIP_INSOFFSET
@ SNODE_SHOW_ALPHA
@ SNODE_SHOW_GPENCIL
struct FileDirEntryArr FileDirEntryArr
eSpaceSeq_OverlayType
@ SEQ_DRAW_OVERLAY_CURRENT
@ SEQ_DRAW_OVERLAY_REFERENCE
@ SEQ_DRAW_OVERLAY_RECT
eFileSortType
@ FILE_SORT_DEFAULT
@ FILE_SORT_ALPHA
@ FILE_SORT_TIME
@ FILE_SORT_EXTENSION
@ FILE_SORT_SIZE
struct SpaceNode SpaceNode
eSpaceImageOverlay_Flag
@ SI_OVERLAY_SHOW_OVERLAYS
eFileSelectType
@ FILE_LOADLIB
@ FILE_SPECIAL
@ FILE_BLENDER
@ FILE_UNIX
@ FILE_MAIN_ASSET
@ FILE_MAIN
eSpaceSpreadsheet_ContextType
@ SPREADSHEET_CONTEXT_OBJECT
@ SPREADSHEET_CONTEXT_MODIFIER
@ SPREADSHEET_CONTEXT_NODE
struct bNodeTreePath bNodeTreePath
eSpaceSeq_Proxy_RenderSize
@ SEQ_RENDER_SIZE_PROXY_25
@ SEQ_RENDER_SIZE_PROXY_75
@ SEQ_RENDER_SIZE_PROXY_50
@ SEQ_RENDER_SIZE_FULL
@ SEQ_RENDER_SIZE_SCENE
@ SEQ_RENDER_SIZE_PROXY_100
@ SEQ_RENDER_SIZE_NONE
struct SpaceUserPref SpaceUserPref
eFileSel_File_Types
@ FILE_TYPE_BTX
@ FILE_TYPE_BLENDER
@ FILE_TYPE_ASSET
@ FILE_TYPE_ALEMBIC
@ FILE_TYPE_ARCHIVE
@ FILE_TYPE_TEXT
@ FILE_TYPE_COLLADA
@ FILE_TYPE_PYSCRIPT
@ FILE_TYPE_BLENDER_BACKUP
@ FILE_TYPE_VOLUME
@ FILE_TYPE_APPLICATIONBUNDLE
@ FILE_TYPE_MOVIE
@ FILE_TYPE_SOUND
@ FILE_TYPE_OBJECT_IO
@ FILE_TYPE_FOLDER
@ FILE_TYPE_FTFONT
@ FILE_TYPE_BLENDERLIB
@ FILE_TYPE_OPERATOR
@ FILE_TYPE_USD
@ FILE_TYPE_IMAGE
@ FILE_TYPE_DIR
struct SpaceGraph_Runtime SpaceGraph_Runtime
eSpace_Type
@ SPACE_TEXT
@ SPACE_CLIP
@ SPACE_ACTION
@ SPACE_CONSOLE
@ SPACE_OUTLINER
@ SPACE_STATUSBAR
@ SPACE_TOPBAR
@ SPACE_NODE
@ SPACE_SPREADSHEET
@ SPACE_USERPREF
@ SPACE_FILE
@ SPACE_PROPERTIES
@ SPACE_NLA
@ SPACE_SEQ
@ SPACE_EMPTY
@ SPACE_SCRIPT
@ SPACE_IMAGE
@ SPACE_GRAPH
@ SPACE_VIEW3D
@ SPACE_INFO
struct SpreadsheetColumn SpreadsheetColumn
eSpaceImage_UVDT
@ SI_UVDT_BLACK
@ SI_UVDT_DASH
@ SI_UVDT_WHITE
@ SI_UVDT_OUTLINE
eSpaceClip_View
@ SC_VIEW_GRAPH
@ SC_VIEW_CLIP
@ SC_VIEW_DOPESHEET
eFileSel_Params_RenameFlag
@ FILE_PARAMS_RENAME_POSTSCROLL_PENDING
@ FILE_PARAMS_RENAME_ACTIVE
@ FILE_PARAMS_RENAME_POSTSCROLL_ACTIVE
@ FILE_PARAMS_RENAME_PENDING
enum eSpaceSpreadsheet_ObjectEvalState eSpaceSpreadsheet_Context
struct SpaceStatusBar SpaceStatusBar
eFileDetails
@ FILE_DETAILS_DATETIME
@ FILE_DETAILS_SIZE
enum eSpaceOutliner_ShowRestrictFlag eSpaceOutliner_Restrict
struct FileSelectParams FileSelectParams
eSpaceOutliner_Search_Flags
@ SO_FIND_COMPLETE
@ SO_SEARCH_RECURSIVE
@ SO_FIND_CASE_SENSITIVE
struct SpaceTopBar SpaceTopBar
struct ConsoleLine ConsoleLine
@ FILE_ENTRY_NAME_FREE
@ FILE_ENTRY_INVALID_PREVIEW
eSpaceSeq_Displays
@ SEQ_VIEW_SEQUENCE_PREVIEW
@ SEQ_VIEW_SEQUENCE
@ SEQ_VIEW_PREVIEW
struct SpreadsheetContextNode SpreadsheetContextNode
eSpaceImage_UVDT_Stretch
@ SI_UVDT_STRETCH_AREA
@ SI_UVDT_STRETCH_ANGLE
eGraphEdit_Mode
@ SIPO_MODE_DRIVERS
@ SIPO_MODE_ANIMATION
eSpaceImage_Sticky
@ SI_STICKY_VERTEX
@ SI_STICKY_LOC
@ SI_STICKY_DISABLE
struct SpaceNla SpaceNla
eGraphEdit_Flag
@ SIPO_DRAWTIME
@ SIPO_NODRAWCURSOR
@ SIPO_SELCUVERTSONLY
@ SIPO_SELVHANDLESONLY
@ SIPO_NORMALIZE_FREEZE
@ SIPO_NO_DRAW_EXTRAPOLATION
@ SIPO_NOREALTIMEUPDATES
@ SIPO_NOTRANSKEYCULL
@ SIPO_SHOW_MARKERS
@ SIPO_NOHANDLES
@ SIPO_NORMALIZE
@ SIPO_SLIDERS
@ SIPO_BEAUTYDRAW_OFF
eFileTags
@ FILE_TAG_REBUILD_MAIN_FILES
eConsoleLine_Type
@ CONSOLE_LINE_INFO
@ CONSOLE_LINE_ERROR
@ CONSOLE_LINE_INPUT
@ CONSOLE_LINE_OUTPUT
@ SPACE_FLAG_TYPE_WAS_ACTIVE
@ SPACE_FLAG_TYPE_TEMPORARY
eSpaceInfo_RptMask
@ INFO_RPT_INFO
@ INFO_RPT_WARN
@ INFO_RPT_ERR
@ INFO_RPT_OP
@ INFO_RPT_DEBUG
struct SpaceText_Runtime SpaceText_Runtime
eFileBrowse_Mode
@ FILE_BROWSE_MODE_ASSETS
@ FILE_BROWSE_MODE_FILES
struct SpreadsheetColumnID SpreadsheetColumnID
struct SpreadsheetContextObject SpreadsheetContextObject
struct SpaceFile SpaceFile
struct SpaceImageOverlay SpaceImageOverlay
eDirEntry_SelectFlag
@ FILE_SEL_EDITING
@ FILE_SEL_HIGHLIGHTED
@ FILE_SEL_SELECTED
struct AssetUUID AssetUUID
eSpaceOutliner_ShowRestrictFlag
@ SO_RESTRICT_HIDE
@ SO_RESTRICT_RENDER
@ SO_RESTRICT_INDIRECT_ONLY
@ SO_RESTRICT_VIEWPORT
@ SO_RESTRICT_ENABLE
@ SO_RESTRICT_HOLDOUT
@ SO_RESTRICT_SELECT
eSpaceClip_Mode
@ SC_MODE_TRACKING
@ SC_MODE_MASKEDIT
eSpaceOutliner_Filter
@ SO_FILTER_NO_LIB_OVERRIDE
@ SO_FILTER_OB_STATE_ACTIVE
@ SO_FILTER_NO_OB_MESH
@ SO_FILTER_SHOW_SYSTEM_OVERRIDES
@ SO_FILTER_CLEARED_1
@ SO_FILTER_NO_OB_CAMERA
@ SO_FILTER_NO_CHILDREN
@ SO_FILTER_SEARCH
@ SO_FILTER_NO_OB_CONTENT
@ SO_FILTER_NO_OB_LAMP
@ SO_FILTER_ID_TYPE
@ SO_FILTER_OB_STATE_SELECTABLE
@ SO_FILTER_OB_STATE_INVERSE
@ SO_FILTER_OB_STATE_SELECTED
@ SO_FILTER_OB_STATE_VISIBLE
@ SO_FILTER_NO_OBJECT
@ SO_FILTER_UNUSED_5
@ SO_FILTER_NO_OB_OTHERS
@ SO_FILTER_NO_OB_EMPTY
@ SO_FILTER_NO_COLLECTION
@ SO_FILTER_NO_OB_ARMATURE
eSpaceSpreadsheet_FilterFlag
@ SPREADSHEET_FILTER_SELECTED_ONLY
struct SpaceInfo SpaceInfo
struct Script Script
struct SpaceImage SpaceImage
struct SpaceLink SpaceLink
eSpaceNla_Flag
@ SNLA_FLAG_UNUSED_0
@ SNLA_FLAG_UNUSED_1
@ SNLA_DRAWTIME
@ SNLA_NOSTRIPCURVES
@ SNLA_FLAG_UNUSED_3
@ SNLA_NOLOCALMARKERS
@ SNLA_SHOW_MARKERS
@ SNLA_NOREALTIMEUPDATES
struct SpaceGraph SpaceGraph
@ SNODE_INSERTOFS_DIR_RIGHT
@ SNODE_INSERTOFS_DIR_LEFT
struct FileFolderHistory FileFolderHistory
eSpaceOutliner_Flag
@ SO_SYNC_SELECT
@ SO_FLAG_UNUSED_1
@ SO_MODE_COLUMN
@ SO_SKIP_SORT_ALPHA
eSpaceSeq_DrawFlag
@ SEQ_DRAW_TRANSFORM_PREVIEW
@ SEQ_DRAW_BACKDROP
@ SEQ_DRAW_OFFSET_EXT
struct FileAssetSelectParams FileAssetSelectParams
eSpaceOutliner_StateFilter
@ SO_FILTER_OB_SELECTABLE
@ SO_FILTER_OB_SELECTED
@ SO_FILTER_OB_VISIBLE
@ SO_FILTER_OB_HIDDEN
@ SO_FILTER_OB_ALL
@ SO_FILTER_OB_ACTIVE
eSpaceClip_Flag
@ SC_HIDE_DISABLED
@ SC_SHOW_SECONDS
@ SC_SHOW_MARKER_SEARCH
@ SC_SHOW_GRAPH_HIDDEN
@ SC_SHOW_NAMES
@ SC_SHOW_TINY_MARKER
@ SC_SHOW_GRAPH_FRAMES
@ SC_LOCK_SELECTION
@ SC_SHOW_METADATA
@ SC_SHOW_ANNOTATION
@ SC_SHOW_GRAPH_SEL_ONLY
@ SC_SHOW_GRID
@ SC_SHOW_STABLE
@ SC_SHOW_GRAPH_TRACKS_MOTION
@ SC_MUTE_FOOTAGE
@ SC_SHOW_BUNDLES
@ SC_LOCK_TIMECURSOR
@ SC_SHOW_MARKER_PATTERN
@ SC_MANUAL_CALIBRATION
@ SC_SHOW_TRACK_PATH
@ SC_SHOW_GRAPH_TRACKS_ERROR
@ SC_SHOW_FILTERS
struct SpaceSeq SpaceSeq
eSpaceButtons_Flag
@ SB_SHADING_CONTEXT
@ SB_TEX_USER_LIMITED
@ SB_FLAG_UNUSED_3
@ SB_PIN_CONTEXT
@ SB_FLAG_UNUSED_2
struct SpaceProperties SpaceProperties
eFileSel_Action
@ FILE_OPENFILE
@ FILE_SAVE
eFileDisplayType
@ FILE_VERTICALDISPLAY
@ FILE_IMGDISPLAY
@ FILE_HORIZONTALDISPLAY
@ FILE_DEFAULTDISPLAY
eGraphEdit_Runtime_Flag
@ SIPO_RUNTIME_FLAG_NEED_CHAN_SYNC
@ SIPO_RUNTIME_FLAG_NEED_CHAN_SYNC_COLOR
@ SIPO_RUNTIME_FLAG_TWEAK_HANDLES_RIGHT
@ SIPO_RUNTIME_FLAG_TWEAK_HANDLES_LEFT
struct SpreadsheetContextModifier SpreadsheetContextModifier
eSpaceText_Flags
@ ST_FIND_WRAP
@ ST_SCROLL_SELECT
@ ST_SHOW_MARGIN
@ ST_FLAG_UNUSED_4
@ ST_MATCH_CASE
@ ST_FIND_ALL
@ ST_FIND_ACTIVATE
eSpaceSpreadsheet_ObjectEvalState
@ SPREADSHEET_OBJECT_EVAL_STATE_EVALUATED
@ SPREADSHEET_OBJECT_EVAL_STATE_ORIGINAL
eSpaceOutliner_StoreFlag
@ SO_TREESTORE_CLEANUP
@ SO_TREESTORE_REBUILD
@ SO_TREESTORE_UNUSED_1
eFileAssetLibrary_Type
@ FILE_ASSET_LIBRARY_LOCAL
@ FILE_ASSET_LIBRARY_CUSTOM
eFileSel_Params_Flag
@ FILE_ACTIVE_COLLECTION
@ FILE_HIDE_TOOL_PROPS
@ FILE_PARAMS_FLAG_UNUSED_6
@ FILE_CHECK_EXISTING
@ FILE_RELPATH
@ FILE_PARAMS_FLAG_UNUSED_1
@ FILE_AUTOSELECT
@ FILE_FILTER
@ FILE_OBDATA_INSTANCE
@ FILE_SORT_INVERT
@ FILE_DIRSEL_ONLY
@ FILE_LINK
@ FILE_COLLECTION_INSTANCE
@ FILE_ASSETS_ONLY
@ FILE_HIDE_DOT
struct SpaceOutliner SpaceOutliner
struct FileSelectAssetLibraryUID FileSelectAssetLibraryUID
struct FileDirEntry FileDirEntry
struct AssetUUIDList AssetUUIDList
struct MaskSpaceInfo MaskSpaceInfo
eSpaceSeq_RegionType
@ SEQ_DRAW_IMG_VECTORSCOPE
@ SEQ_DRAW_SEQUENCE
@ SEQ_DRAW_IMG_HISTOGRAM
@ SEQ_DRAW_IMG_IMBUF
@ SEQ_DRAW_IMG_WAVEFORM
struct SpaceScript SpaceScript
struct SpaceClip SpaceClip
eSpaceSeq_Flag
@ SEQ_DRAWFRAMES
@ SEQ_SHOW_MARKERS
@ SEQ_SHOW_GPENCIL
@ SEQ_USE_ALPHA
@ SEQ_SHOW_STRIP_DURATION
@ SEQ_SHOW_FCURVES
@ SEQ_MARKER_TRANS
@ SEQ_USE_PROXIES
@ SEQ_SHOW_STRIP_NAME
@ SEQ_DRAW_COLOR_SEPARATED
@ SEQ_ZOOM_TO_FIT
@ SEQ_SHOW_METADATA
@ SEQ_ALL_WAVEFORMS
@ SEQ_NO_WAVEFORMS
@ SEQ_SHOW_STRIP_SOURCE
@ SEQ_SHOW_SAFE_MARGINS
@ SEQ_SHOW_SAFE_CENTER
@ SEQ_SHOW_STRIP_OVERLAY
eSpaceClip_GPencil_Source
@ SC_GPENCIL_SRC_CLIP
@ SC_GPENCIL_SRC_TRACK
struct SpaceText SpaceText
eSpaceImage_PixelSnapMode
@ SI_PIXEL_SNAP_CORNER
@ SI_PIXEL_SNAP_CENTER
@ SI_PIXEL_SNAP_DISABLED
struct SpaceConsole SpaceConsole
eSpaceButtons_OutlinerSync
@ PROPERTIES_SYNC_NEVER
@ PROPERTIES_SYNC_ALWAYS
@ PROPERTIES_SYNC_AUTO
eSpaceImage_Mode
@ SI_MODE_PAINT
@ SI_MODE_VIEW
@ SI_MODE_MASK
@ SI_MODE_UV
eSpaceOutliner_Mode
@ SO_OVERRIDES_LIBRARY
@ SO_SEQUENCE
@ SO_DATA_API
@ SO_LIBRARIES
@ SO_VIEW_LAYER
@ SO_SCENES
@ SO_ID_ORPHANS
eSpaceNode_TexFrom
@ SNODE_TEX_BRUSH
@ SNODE_TEX_WORLD
@ SNODE_TEX_LINESTYLE
struct FileDirEntryVariant FileDirEntryVariant
eSpaceNode_ShaderFrom
@ SNODE_SHADER_WORLD
@ SNODE_SHADER_LINESTYLE
@ SNODE_SHADER_OBJECT
struct SpaceSpreadsheet SpaceSpreadsheet
eSpaceSpreadsheet_Flag
@ SPREADSHEET_FLAG_CONTEXT_PATH_COLLAPSED
@ SPREADSHEET_FLAG_PINNED
struct SpreadsheetContext SpreadsheetContext
enum eSpaceSeq_Displays eSpaceSeq_Dispays
eSpaceButtons_Context
@ BCONTEXT_CONSTRAINT
@ BCONTEXT_COLLECTION
@ BCONTEXT_OUTPUT
@ BCONTEXT_VIEW_LAYER
@ BCONTEXT_MATERIAL
@ BCONTEXT_TOT
@ BCONTEXT_SHADERFX
@ BCONTEXT_MODIFIER
@ BCONTEXT_BONE
@ BCONTEXT_DATA
@ BCONTEXT_OBJECT
@ BCONTEXT_BONE_CONSTRAINT
@ BCONTEXT_PHYSICS
@ BCONTEXT_SCENE
@ BCONTEXT_WORLD
@ BCONTEXT_RENDER
@ BCONTEXT_TEXTURE
@ BCONTEXT_TOOL
@ BCONTEXT_PARTICLE
unsigned int uint32_t
Definition: stdint.h:83
__int64 int64_t
Definition: stdint.h:92
unsigned char uint8_t
Definition: stdint.h:81
unsigned __int64 uint64_t
Definition: stdint.h:93
The meta-data of an asset. By creating and giving this for a data-block (ID.asset_data),...
AssetUUID * uuids
int uuid_revision[4]
int uuid_asset[4]
int uuid_variant[4]
struct ConsoleLine * next
struct ConsoleLine * prev
FileSelectAssetLibraryUID asset_library
FileSelectParams base_params
struct FileDirEntryRevision * next
struct FileDirEntryRevision * prev
struct FileDirEntryVariant * prev
struct FileDirEntryVariant * next
struct FileDirEntry * next
char * redirection_path
struct AssetMetaData * asset_data
FileDirEntryRevision * entry
struct FileDirEntry * prev
struct FileFolderLists * prev
struct FileFolderLists * next
unsigned short thumbnail_size
Definition: DNA_ID.h:273
struct Mask * mask
void * py_button
void * py_event
void * py_globaldict
char scriptarg[256]
char scriptname[1024]
void * py_browsercallback
void * py_draw
ListBase regionbase
SpaceLink * prev
struct MovieClipUser user
float cursor[2]
float stabmat[4][4]
struct MovieClipScopes scopes
float unistabmat[4][4]
float loc[2]
SpaceLink * next
struct MovieClip * clip
MaskSpaceInfo mask_info
char prompt[256]
SpaceLink * prev
ListBase regionbase
ListBase scrollback
SpaceLink * next
SpaceLink * prev
char _pad0[6]
struct wmTimer * smoothscroll_timer
short bookmarknr
struct FileLayout * layout
ListBase regionbase
struct wmOperator * op
ListBase * folders_prev
short system_bookmarknr
struct FileList * files
char _pad1[1]
FileSelectParams * params
struct wmTimer * previews_timer
FileAssetSelectParams * asset_params
ListBase * folders_next
ListBase folder_histories
SpaceFile_Runtime * runtime
SpaceLink * next
struct bDopeSheet * ads
SpaceLink * prev
SpaceLink * next
SpaceGraph_Runtime runtime
ListBase regionbase
View2D v2d DNA_DEPRECATED
struct Scopes scopes
SpaceLink * next
float cursor[2]
int tile_grid_shape[2]
SpaceImageOverlay overlay
MaskSpaceInfo mask_info
struct Histogram sample_line_hist
struct ImageUser iuser
struct bGPdata * gpd
struct Image * image
SpaceLink * prev
ListBase regionbase
ListBase regionbase
SpaceLink * prev
char _pad[7]
char _pad0[6]
SpaceLink * next
View2D v2d DNA_DEPRECATED
short autosnap
char _pad0[6]
struct SpaceLink * prev
struct SpaceLink * next
ListBase regionbase
char _pad[4]
struct bDopeSheet * ads
char tree_idname[64]
SpaceNode_Runtime * runtime
struct ID * from
ListBase regionbase
struct bGPdata * gpd
SpaceLink * next
ListBase treepath
struct bNodeTree * edittree
struct ID * id
struct bNodeTree * nodetree
View2D v2d DNA_DEPRECATED
int treetype DNA_DEPRECATED
SpaceLink * prev
struct TreeStoreElem search_tse
char search_string[64]
SpaceLink * prev
View2D v2d DNA_DEPRECATED
ListBase regionbase
SpaceOutliner_Runtime * runtime
struct BLI_mempool * treestore
SpaceLink * next
SpaceLink * next
SpaceLink * prev
struct SpaceProperties_Runtime * runtime
View2D v2d DNA_DEPRECATED
SpaceLink * prev
struct Script * script
SpaceLink * next
ListBase regionbase
short chanshown
struct SequencerScopes scopes
View2D v2d DNA_DEPRECATED
float zoom DNA_DEPRECATED
struct bGPdata * gpd
char _pad0[6]
SpaceLink * next
char _pad[4]
char multiview_eye
SpaceLink * prev
ListBase regionbase
float xof DNA_DEPRECATED
short render_size
char _pad2[7]
uint8_t geometry_component_type
SpaceSpreadsheet_Runtime * runtime
SpaceLink * prev
SpaceLink * next
struct rcti scroll_region_select
struct rcti scroll_region_handle
char replacestr[256]
ListBase regionbase
SpaceLink * next
SpaceText_Runtime runtime
short margin_column
SpaceLink * prev
struct Text * text
char findstr[256]
SpaceLink * next
ListBase regionbase
SpaceLink * prev
SpaceLink * prev
SpaceLink * next
SpreadsheetColumnID * id
struct SpreadsheetColumn * next
struct SpreadsheetColumn * prev
SpreadsheetContext base
SpreadsheetContext base
struct SpreadsheetContext * next
struct SpreadsheetContext * prev
struct bNodeTree * nodetree
struct bNodeTreePath * next
struct bNodeTreePath * prev
bNodeInstanceKey parent_key
float view_center[2]
char display_name[64]