b51d844403c80878143bf854ccc017055a928e2f
[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
57 /* ipo handler codes */
58 #define IPO_HANDLER_PROPERTIES  20
59
60 /* image handler codes */
61 #define IMAGE_HANDLER_PROPERTIES        30
62 #define IMAGE_HANDLER_PAINT                     31
63
64 /* action handler codes */
65 #define ACTION_HANDLER_PROPERTIES       40
66
67 /* nla handler codes */
68 #define NLA_HANDLER_PROPERTIES  50
69
70 /* sequence handler codes */
71 #define SEQ_HANDLER_PROPERTIES  60
72
73 /* theme codes */
74 #define B_ADD_THEME     3301
75 #define B_DEL_THEME     3302
76 #define B_NAME_THEME    3303
77 #define B_THEMECOL              3304
78 #define B_UPDATE_THEME  3305
79 #define B_CHANGE_THEME  3306
80 #define B_THEME_COPY    3307
81 #define B_THEME_PASTE   3308
82
83 #define B_RECALCLIGHT   3310
84
85
86 void    scrarea_do_windraw              (struct ScrArea *sa);
87 void    scrarea_do_winchange    (struct ScrArea *sa);
88 void    scrarea_do_winhandle    (struct ScrArea *sa, struct BWinEvent *evt);
89 void    scrarea_do_headdraw             (struct ScrArea *sa);
90 void    scrarea_do_headchange   (struct ScrArea *sa);
91
92 /* space.c */
93 extern          void add_blockhandler(struct ScrArea *sa, short eventcode, short action);
94 extern          void rem_blockhandler(struct ScrArea *sa, short eventcode);
95 extern          void toggle_blockhandler(struct ScrArea *sa, short eventcode, short action);
96
97 extern           void space_set_commmandline_options(void);
98 extern       void allqueue(unsigned short event, short val);
99 extern       void allspace(unsigned short event, short val);
100 extern       void copy_view3d_lock(short val);
101 extern       void drawemptyspace(struct ScrArea *sa, void *spacedata);
102 extern       void drawinfospace(struct ScrArea *sa, void *spacedata);
103 extern       void duplicatespacelist(struct ScrArea *area, struct ListBase *lb1, struct ListBase *lb2);
104 extern       void extern_set_butspace(int fkey);
105 extern       void force_draw(int header);
106 extern           void force_draw_all(int header);
107 extern           void force_draw_plus(int type, int header);
108 extern       void freespacelist(struct ListBase *lb);
109 extern       void handle_view3d_around(void);
110 extern       void handle_view3d_lock(void);
111 extern       void init_v2d_oops(struct ScrArea *, struct SpaceOops *);
112 extern       void initipo(struct ScrArea *sa);
113 extern       void newspace(struct ScrArea *sa, int type);
114 extern       void set_rects_butspace(struct SpaceButs *buts);
115 extern       void test_butspace(void);
116 extern       void start_game(void);
117 extern           void select_group_menu(void);
118 extern           void select_group(short nr);
119
120 extern          void BIF_undo_push(char *str);
121 extern          void BIF_undo(void);
122 extern          void BIF_redo(void);
123 extern          void BIF_undo_menu(void);
124
125 #if 0
126 //#ifdef _WIN32 // FULLSCREEN
127 extern           void mainwindow_toggle_fullscreen(int fullscreen);
128 #endif
129
130 extern           void mainwindow_set_filename_to_title(char *title);
131 extern           void mainwindow_raise(void);
132 extern           void mainwindow_make_active(void);
133 extern           void mainwindow_close(void);
134
135 #endif
136