Initial revision
[blender.git] / source / blender / include / BIF_toolbox.h
1 /* toolbox (SPACEKEY) related
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         /* TBOXX: breedte in pixels */
34 #define TBOXXL  80
35 #define TBOXXR  170
36 #define TBOXX   (TBOXXL+TBOXXR)
37         /* TBOXEL: aantal elementen onder elkaar */
38 #define TBOXEL  14
39         /* TBOXH: hoogte van 1 element */
40 #define TBOXH   20
41 #define TBOXY   TBOXH*TBOXEL
42
43 #define TBOXBLACK       1
44 #define TBOXDGREY       2
45 #define TBOXWHITE       3
46 #define TBOXGREY        4
47 #define TBOXLGREY       5
48
49 /* toolbox menu code defines
50    -> SPACE->(MAIN_ENTRY) */
51 #ifdef MAART
52 enum {
53         TBOX_MAIN_FILE,
54         TBOX_MAIN_ADD,
55         TBOX_MAIN_EDIT,
56         TBOX_MAIN_OBJECT1,
57         TBOX_MAIN_OBJECT2,
58         TBOX_MAIN_MESH,
59         TBOX_MAIN_CURVE,
60         TBOX_MAIN_KEY,
61         TBOX_MAIN_RENDER,
62         TBOX_MAIN_VIEW,
63         TBOX_MAIN_PYTOOL = 13
64 };
65
66 #else
67 enum {
68         TBOX_MAIN_ADD,
69         TBOX_MAIN_FILE,
70         TBOX_MAIN_EDIT,
71         TBOX_MAIN_OBJECT1,
72         TBOX_MAIN_OBJECT2,
73         TBOX_MAIN_MESH,
74         TBOX_MAIN_CURVE,
75         TBOX_MAIN_KEY,
76         TBOX_MAIN_RENDER,
77         TBOX_MAIN_VIEW,
78         TBOX_MAIN_PYTOOL = 13
79 };
80 #endif
81
82 /* protos */
83
84 /* toolbox.c */
85 void ColorFunc (int i);
86 void mygetcursor (short int *index);
87 void tbox_setinfo (int x, int y);
88 void dummy (void);
89 void bgnpupdraw (int startx, int starty, int endx, int endy);
90 void endpupdraw (void);
91 void asciitoraw (int ch, short unsigned int *event, short unsigned int *qual);
92 void tbox_execute (void);
93 void tbox_getmouse (short int *mval);
94 void tbox_setmain (int val);
95 void bgntoolbox (void);
96 void endtoolbox (void);
97 void tbox_embossbox (short int x1, short int y1, short int x2, short int y2, short int type);
98 void tbox_drawelem_body (int x, int y, int type);
99 void tbox_drawelem_text (int x, int y, int type);
100 void tbox_drawelem (int x, int y, int type);
101 void tbox_getactive (int *x, int *y);
102 void drawtoolbox (void);
103 void toolbox (void);
104
105 void notice (char *str, ...);
106 void error (char *fmt, ...);
107
108 int saveover (char *filename);
109 int okee (char *fmt, ...);
110
111 short button (short *var, short min, short max, char *str);
112 short fbutton (float *var, float min, float max, char *str);
113 short sbutton (char *var, float min, float max, char *str);     /* __NLA */
114 int movetolayer_buts (unsigned int *lay);
115 void draw_numbuts_tip (char *str, int x1, int y1, int x2, int y2);
116 int do_clever_numbuts (char *name, int tot, int winevent);
117 void add_numbut (int nr, int type, char *str, float min, float max, void *poin, char *tip);
118 void clever_numbuts (void);
119 void replace_names_but (void);
120
121 void BIF_screendump(void);
122 void write_screendump(char *name);