made sticky UV editing options more accessible by adding them to a popup in the header.
[blender.git] / source / blender / include / BIF_space.h
1 /**
2  * $Id$
3  *
4  * ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version 2
9  * of the License, or (at your option) any later version. The Blender
10  * Foundation also sells licenses for use in proprietary software under
11  * the Blender License.  See http://www.blender.org/BL/ for information
12  * about this.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program; if not, write to the Free Software Foundation,
21  * Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
22  *
23  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
24  * All rights reserved.
25  *
26  * The Original Code is: all of this file.
27  *
28  * Contributor(s): none yet.
29  *
30  * ***** END GPL/BL DUAL LICENSE BLOCK *****
31  */
32
33 #ifndef BIF_SPACE_H
34 #define BIF_SPACE_H
35
36 struct ListBase;
37 struct ScrArea;
38 struct SpaceButs;
39 struct View2D;
40 struct BWinEvent;
41 struct SpaceOops;
42
43 #define REMAKEIPO               1
44 #define OOPS_TEST               2
45
46 #define BUT_HORIZONTAL  1
47 #define BUT_VERTICAL    2
48
49 /* is hardcoded in DNA_space_types.h */
50 #define SPACE_MAXHANDLER        8
51
52 /* view3d handler codes */
53 #define VIEW3D_HANDLER_BACKGROUND       1
54 #define VIEW3D_HANDLER_PROPERTIES       2
55 #define VIEW3D_HANDLER_OBJECT           3
56 #define VIEW3D_HANDLER_PREVIEW          4
57 #define VIEW3D_HANDLER_MULTIRES         5
58
59 /* ipo handler codes */
60 #define IPO_HANDLER_PROPERTIES  20
61
62 /* image handler codes */
63 #define IMAGE_HANDLER_PROPERTIES        30
64 #define IMAGE_HANDLER_PAINT                     31
65 #define IMAGE_HANDLER_CURVES            32
66 #define IMAGE_HANDLER_PREVIEW           33
67 #define IMAGE_HANDLER_GAME_PROPERTIES   34
68 #define IMAGE_HANDLER_VIEW_PROPERTIES   35
69 /*#define IMAGE_HANDLER_TRANSFORM_PROPERTIES    36*/
70
71 /* action handler codes */
72 #define ACTION_HANDLER_PROPERTIES       40
73
74 /* nla handler codes */
75 #define NLA_HANDLER_PROPERTIES  50
76
77 /* sequence handler codes */
78 #define SEQ_HANDLER_PROPERTIES  60
79
80 /* imasel handler codes */
81 #define IMASEL_HANDLER_IMAGE    70
82
83 /* theme codes */
84 #define B_ADD_THEME     3301
85 #define B_DEL_THEME     3302
86 #define B_NAME_THEME    3303
87 #define B_THEMECOL              3304
88 #define B_UPDATE_THEME  3305
89 #define B_CHANGE_THEME  3306
90 #define B_THEME_COPY    3307
91 #define B_THEME_PASTE   3308
92 #define B_UPDATE_THEME_ICONS    3309
93
94 #define B_RECALCLIGHT   3310
95
96
97 void    scrarea_do_windraw              (struct ScrArea *sa);
98 void    scrarea_do_winchange    (struct ScrArea *sa);
99 void    scrarea_do_winhandle    (struct ScrArea *sa, struct BWinEvent *evt);
100 void    scrarea_do_headdraw             (struct ScrArea *sa);
101 void    scrarea_do_headchange   (struct ScrArea *sa);
102
103 /* space.c */
104 extern          void add_blockhandler(struct ScrArea *sa, short eventcode, short action);
105 extern          void rem_blockhandler(struct ScrArea *sa, short eventcode);
106 extern          void toggle_blockhandler(struct ScrArea *sa, short eventcode, short action);
107
108 extern           void space_set_commmandline_options(void);
109 extern       void allqueue(unsigned short event, short val);
110 extern       void allspace(unsigned short event, short val);
111 extern       void copy_view3d_lock(short val);
112 extern       void drawemptyspace(struct ScrArea *sa, void *spacedata);
113 extern       void drawinfospace(struct ScrArea *sa, void *spacedata);
114 extern       void duplicatespacelist(struct ScrArea *area, struct ListBase *lb1, struct ListBase *lb2);
115 extern       void extern_set_butspace(int fkey, int do_cycle);
116 extern       void force_draw(int header);
117 extern           void force_draw_all(int header);
118 extern           void force_draw_plus(int type, int header);
119 extern       void freespacelist(struct ScrArea *sa);
120 extern       void handle_view3d_around(void);
121 extern       void handle_view3d_lock(void);
122 extern       void init_v2d_oops(struct ScrArea *, struct SpaceOops *);
123 extern       void initipo(struct ScrArea *sa);
124 extern       void newspace(struct ScrArea *sa, int type);
125 extern       void set_rects_butspace(struct SpaceButs *buts);
126 extern       void test_butspace(void);
127 extern       void start_game(void);
128 extern           void select_object_grouped(short nr);
129 extern           void join_menu(void);
130
131 extern          void BIF_undo_push(char *str);
132 extern          void BIF_undo(void);
133 extern          void BIF_redo(void);
134 extern          void BIF_undo_menu(void);
135
136 #if 0
137 //#ifdef _WIN32 // FULLSCREEN
138 extern           void mainwindow_toggle_fullscreen(int fullscreen);
139 #endif
140
141 extern           void mainwindow_set_filename_to_title(char *title);
142 extern           void mainwindow_raise(void);
143 extern           void mainwindow_make_active(void);
144 extern           void mainwindow_close(void);
145
146 #endif
147