2.5
[blender.git] / source / blender / makesdna / DNA_oops_types.h
1 /**
2  * blenlib/DNA_oops_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_OOPS_TYPES_H
32 #define DNA_OOPS_TYPES_H
33
34 #define OOPSX   5.0
35 #define OOPSY   1.8
36
37 #include "DNA_listBase.h"
38
39 struct ID;
40
41 typedef struct TreeStoreElem {
42         short type, nr, flag, used;
43         struct ID *id;
44 } TreeStoreElem;
45
46 typedef struct TreeStore {
47         int totelem, usedelem;
48         TreeStoreElem *data;
49 } TreeStore;
50
51 typedef struct Oops {
52         struct Oops *next, *prev;
53         short type, flag, dt, hide;
54         float x, y;             /* left - bottom */
55         float dx, dy;   /* shuffle */
56         struct ID *id;
57         ListBase link;
58 } Oops;
59
60 #
61 #
62 typedef struct OopsLink {
63         struct OopsLink *next, *prev;
64         short type, flag;
65         struct ID **idfrom;
66         Oops *to, *from;        /* from is for temp */
67         float xof, yof;
68         char name[12];
69 } OopsLink;
70
71 /* oops->flag  (1==SELECT) */
72 #define OOPS_DOSELECT   2
73 #define OOPS_REFER              4
74
75 /* TreeStoreElem->flag */
76 #define TSE_CLOSED              1
77 #define TSE_SELECTED    2
78 #define TSE_TEXTBUT             4
79
80 /* TreeStoreElem types in BIF_outliner.h */
81
82 #endif
83