2.5 filebrowser WIP commit
[blender-staging.git] / source / blender / editors / include / UI_resources.h
1 /**
2  * $Id: UI_resources.h 13057 2007-12-30 12:08:28Z aligorith $
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 UI_RESOURCES_H
34 #define UI_RESOURCES_H
35
36 /* elubie: TODO: move the typedef for icons to UI_interface_icons.h */
37 /* and add/replace include of UI_resources.h by UI_interface_icons.h */
38
39 typedef enum {
40 #define BIFICONID_FIRST         (ICON_BLENDER)
41         /* ui */
42         ICON_BLENDER,
43         ICON_HELP,
44         ICON_ERROR,
45         ICON_BLANK1,    // XXX this is used lots, it's not actually 'blank'
46         ICON_TRIA_RIGHT,
47         ICON_TRIA_DOWN,
48         ICON_TRIA_LEFT,
49         ICON_TRIA_UP,
50         ICON_BLANK002,
51         ICON_PLUS,
52         ICON_DISCLOSURE_TRI_DOWN,
53         ICON_DISCLOSURE_TRI_RIGHT,
54         ICON_RADIOBUT_OFF,
55         ICON_RADIOBUT_ON,
56         ICON_MENU_PANEL,
57         ICON_PYTHON,
58         ICON_BLANK003,
59         ICON_DOT,
60         ICON_BLANK004,
61         ICON_X,
62         ICON_BLANK005,
63         ICON_GO_LEFT,
64         ICON_BLANK006,
65         ICON_BLANK007,
66         ICON_BLANK008,
67         ICON_BLANK008b,
68         
69         /* ui */
70         ICON_FULLSCREEN,
71         ICON_SPLITSCREEN,
72         ICON_RIGHTARROW_THIN,
73         ICON_BORDERMOVE,
74         ICON_VIEWZOOM,
75         ICON_ZOOMIN,
76         ICON_ZOOMOUT,
77         ICON_PANEL_CLOSE,
78         ICON_BLANK009,
79         ICON_EYEDROPPER,
80         ICON_BLANK010,
81         ICON_AUTO,
82         ICON_CHECKBOX_DEHLT,
83         ICON_CHECKBOX_HLT,
84         ICON_UNLOCKED,
85         ICON_LOCKED,
86         ICON_BLANK013,
87         ICON_BLANK014,
88         ICON_BLANK015,
89         ICON_RIGHTARROW,
90         ICON_DOWNARROW_HLT,
91         ICON_DOTSUP,
92         ICON_DOTSDOWN,
93         ICON_LINK,
94         ICON_INLINK,
95         ICON_BLANK012b,
96         
97         /* available */ 
98         ICON_BLANK016,
99         ICON_BLANK017,
100         ICON_BLANK018,
101         ICON_BLANK019,
102         ICON_BLANK020,
103         ICON_BLANK021,
104         ICON_BLANK022,
105         ICON_BLANK023,
106         ICON_BLANK024,
107         ICON_BLANK025,
108         ICON_BLANK026,
109         ICON_BLANK027,
110         ICON_BLANK028,
111         ICON_BLANK029,
112         ICON_BLANK030,
113         ICON_BLANK031,
114         ICON_BLANK032,
115         ICON_BLANK033,
116         ICON_BLANK034,
117         ICON_BLANK035,
118         ICON_BLANK036,
119         ICON_BLANK037,
120         ICON_BLANK038,
121         ICON_BLANK039,
122         ICON_BLANK040,
123         ICON_BLANK040b,
124         
125         /* BUTTONS */
126         ICON_LAMP,
127         ICON_MATERIAL,
128         ICON_TEXTURE,
129         ICON_ANIM,
130         ICON_WORLD,
131         ICON_SCENE,
132         ICON_EDIT,
133         ICON_GAME,
134         ICON_RADIO,
135         ICON_SCRIPT,
136         ICON_PARTICLES,
137         ICON_PHYSICS,
138         ICON_SPEAKER,
139         ICON_BLANK041,
140         ICON_BLANK042,
141         ICON_BLANK043,
142         ICON_BLANK044,
143         ICON_BLANK045,
144         ICON_BLANK046,
145         ICON_BLANK047,
146         ICON_BLANK048,
147         ICON_BLANK049,
148         ICON_BLANK050,
149         ICON_BLANK051,
150         ICON_BLANK052,
151         ICON_BLANK052b,
152         
153         /* EDITORS */
154         ICON_VIEW3D,
155         ICON_IPO,
156         ICON_OOPS,
157         ICON_BUTS,
158         ICON_FILESEL,
159         ICON_IMAGE_COL,
160         ICON_INFO,
161         ICON_SEQUENCE,
162         ICON_TEXT,
163         ICON_IMASEL,
164         ICON_SOUND,
165         ICON_ACTION,
166         ICON_NLA,
167         ICON_SCRIPTWIN,
168         ICON_TIME,
169         ICON_NODE,
170         ICON_BLANK053,
171         ICON_BLANK054,
172         ICON_BLANK055,
173         ICON_BLANK056,
174         ICON_BLANK057,
175         ICON_BLANK058,
176         ICON_BLANK059,
177         ICON_BLANK060,
178         ICON_BLANK061,
179         ICON_BLANK061b,
180         
181         /* MODES */
182         ICON_OBJECT_DATAMODE,   // XXX fix this up
183         ICON_EDITMODE_HLT,
184         ICON_FACESEL_HLT,
185         ICON_VPAINT_HLT,
186         ICON_TPAINT_HLT,
187         ICON_WPAINT_HLT,
188         ICON_SCULPTMODE_HLT,
189         ICON_POSE_HLT,
190         ICON_PARTICLEMODE,
191         ICON_BLANK062,
192         ICON_BLANK063,
193         ICON_BLANK064,
194         ICON_BLANK065,
195         ICON_BLANK066,
196         ICON_BLANK067,
197         ICON_BLANK068,
198         ICON_BLANK069,
199         ICON_BLANK070,
200         ICON_BLANK071,
201         ICON_BLANK072,
202         ICON_BLANK073,
203         ICON_BLANK074,
204         ICON_BLANK075,
205         ICON_BLANK076,
206         ICON_BLANK077,
207         ICON_BLANK077b,
208         
209         /* DATA */
210         ICON_SCENE_DATA,
211         ICON_RENDERLAYERS,
212         ICON_WORLD_DATA,
213         ICON_OBJECT_DATA,
214         ICON_MESH_DATA,
215         ICON_CURVE_DATA,
216         ICON_MBALL_DATA,
217         ICON_LATTICE_DATA,
218         ICON_LAMP_DATA,
219         ICON_MATERIAL_DATA,
220         ICON_TEXTURE_DATA,
221         ICON_ANIM_DATA,
222         ICON_CAMERA_DATA,
223         ICON_PARTICLE_DATA,
224         ICON_LIBRARY_DATA_DIRECT,
225         ICON_GROUP,
226         ICON_ARMATURE_DATA,
227         ICON_POSE_DATA,
228         ICON_BONE_DATA,
229         ICON_CONSTRAINT,
230         ICON_SHAPEKEY_DATA,
231         ICON_VGROUP,
232         ICON_BLANK079,
233         ICON_PACKAGE,
234         ICON_UGLYPACKAGE,
235         ICON_BLANK079b,
236         
237         /* DATA */
238         ICON_BRUSH_DATA,
239         ICON_IMAGE_DATA,
240         ICON_FILE,
241         ICON_FCURVE,
242         ICON_FONT,
243         ICON_RENDER_RESULT,
244         ICON_BLANK080A,
245         ICON_BLANK080B,
246         ICON_BLANK080C,
247         ICON_BLANK080D,
248         ICON_BLANK080E,
249         ICON_BLANK080F,
250         ICON_BLANK080,
251         ICON_BLANK081,
252         ICON_LIBRARY_DATA_INDIRECT,
253         ICON_BLANK082,
254         ICON_BLANK083,
255         ICON_BLANK084,
256         ICON_BLANK085,
257         ICON_BLANK086,
258         ICON_BLANK087,
259         ICON_BLANK088,
260         ICON_BLANK089,
261         ICON_BLANK090,
262         ICON_RNA,
263         ICON_BLANK090b,
264         
265         /* available */
266         ICON_BLANK092,
267         ICON_BLANK093,
268         ICON_BLANK094,
269         ICON_BLANK095,
270         ICON_BLANK096,
271         ICON_BLANK097,
272         ICON_BLANK098,
273         ICON_BLANK099,
274         ICON_BLANK100,
275         ICON_BLANK101,
276         ICON_BLANK102,
277         ICON_BLANK103,
278         ICON_BLANK104,
279         ICON_BLANK105,
280         ICON_BLANK106,
281         ICON_BLANK107,
282         ICON_BLANK108,
283         ICON_BLANK109,
284         ICON_BLANK110,
285         ICON_BLANK111,
286         ICON_BLANK112,
287         ICON_BLANK113,
288         ICON_BLANK114,
289         ICON_BLANK115,
290         ICON_BLANK116,
291         ICON_BLANK116b,
292         
293         /* OUTLINER */
294         ICON_OUTLINER_OB_EMPTY,
295         ICON_OUTLINER_OB_MESH,
296         ICON_OUTLINER_OB_CURVE,
297         ICON_OUTLINER_OB_LATTICE,
298         ICON_OUTLINER_OB_META,
299         ICON_OUTLINER_OB_LAMP,
300         ICON_OUTLINER_OB_CAMERA,
301         ICON_OUTLINER_OB_ARMATURE,
302         ICON_OUTLINER_OB_FONT,
303         ICON_OUTLINER_OB_SURFACE,
304         ICON_BLANK119,
305         ICON_BLANK120,
306         ICON_BLANK121,
307         ICON_BLANK122,
308         ICON_BLANK123,
309         ICON_BLANK124,
310         ICON_BLANK125,
311         ICON_BLANK126,
312         ICON_BLANK127,
313         ICON_RESTRICT_VIEW_OFF,
314         ICON_RESTRICT_VIEW_ON,
315         ICON_RESTRICT_SELECT_OFF,
316         ICON_RESTRICT_SELECT_ON,
317         ICON_RESTRICT_RENDER_OFF,
318         ICON_RESTRICT_RENDER_ON,
319         ICON_BLANK127b,
320         
321         /* OUTLINER */
322         ICON_BLANK128,
323         ICON_OUTLINER_DATA_MESH,
324         ICON_OUTLINER_DATA_CURVE,
325         ICON_OUTLINER_DATA_LATTICE,
326         ICON_OUTLINER_DATA_META,
327         ICON_OUTLINER_DATA_LAMP,
328         ICON_OUTLINER_DATA_CAMERA,
329         ICON_OUTLINER_DATA_ARMATURE,
330         ICON_OUTLINER_DATA_POSE,
331         ICON_OUTLINER_DATA_GENERIC,
332         ICON_BLANK128b,
333         ICON_BLANK129,
334         ICON_BLANK130,
335         ICON_BLANK131,
336         ICON_BLANK132,
337         ICON_BLANK133,
338         ICON_BLANK134,
339         ICON_BLANK135,
340         ICON_BLANK136,
341         ICON_BLANK137,
342         ICON_BLANK138,
343         ICON_BLANK139,
344         ICON_BLANK140,
345         ICON_BLANK141,
346         ICON_BLANK142,
347         ICON_BLANK142b,
348         
349         /* MODIFIERS */
350         ICON_MODIFIER,
351         ICON_MOD_WAVE,
352         ICON_MOD_BUILD,
353         ICON_MOD_DECIM,
354         ICON_MOD_MIRROR,
355         ICON_MOD_SOFT,
356         ICON_MOD_SUBSURF,
357         ICON_HOOK,
358         ICON_MOD_PARTICLEINSTANCE,
359         ICON_MOD_PARTICLES,
360         ICON_MOD_BOOLEAN,
361         ICON_MOD_EDGESPLIT,
362         ICON_MOD_ARRAY,
363         ICON_MOD_UVPROJECT,
364         ICON_MOD_DISPLACE,
365         ICON_MOD_CURVE,
366         ICON_MOD_LATTICE,
367         ICON_BLANK143,
368         ICON_MOD_ARMATURE,
369         ICON_BLANK147,
370         ICON_BLANK148,
371         ICON_BLANK149,
372         ICON_BLANK150,
373         ICON_BLANK151,
374         ICON_BLANK152,
375         ICON_BLANK152b,
376         
377         /* available */
378         ICON_BLANK153,
379         ICON_BLANK154,
380         ICON_BLANK155,
381         ICON_BLANK156,
382         ICON_BLANK157,
383         ICON_BLANK158,
384         ICON_BLANK159,
385         ICON_BLANK160,
386         ICON_BLANK161,
387         ICON_BLANK162,
388         ICON_BLANK163,
389         ICON_BLANK164,
390         ICON_BLANK165,
391         ICON_BLANK166,
392         ICON_BLANK167,
393         ICON_BLANK168,
394         ICON_BLANK169,
395         ICON_BLANK170,
396         ICON_BLANK171,
397         ICON_BLANK172,
398         ICON_BLANK173,
399         ICON_BLANK174,
400         ICON_BLANK175,
401         ICON_BLANK176,
402         ICON_BLANK177,
403         ICON_BLANK177b,
404         
405         /* ANIMATION */
406         ICON_REC,
407         ICON_PLAY,
408         ICON_FF,
409         ICON_REW,
410         ICON_PAUSE,
411         ICON_PREV_KEYFRAME,
412         ICON_NEXT_KEYFRAME,
413         ICON_PLAY_AUDIO,
414         ICON_BLANK178,
415         ICON_BLANK179,
416         ICON_BLANK180,
417         ICON_PMARKER_ACT,
418         ICON_PMARKER_SEL,
419         ICON_PMARKER,
420         ICON_MARKER_HLT,
421         ICON_MARKER,
422         ICON_SPACE2,    // XXX
423         ICON_SPACE3,    // XXX
424         ICON_BLANK181,
425         ICON_KEY_DEHLT,
426         ICON_KEY_HLT,
427         ICON_MUTE_IPO_OFF,
428         ICON_MUTE_IPO_ON,
429         ICON_BLANK182,
430         ICON_BLANK183,
431         ICON_BLANK183b,
432         
433         /* available */
434         ICON_BLANK184,
435         ICON_BLANK185,
436         ICON_BLANK186,
437         ICON_BLANK187,
438         ICON_BLANK188,
439         ICON_BLANK189,
440         ICON_BLANK190,
441         ICON_BLANK191,
442         ICON_BLANK192,
443         ICON_BLANK193,
444         ICON_BLANK194,
445         ICON_BLANK195,
446         ICON_BLANK196,
447         ICON_BLANK197,
448         ICON_BLANK198,
449         ICON_BLANK199,
450         ICON_BLANK200,
451         ICON_BLANK201,
452         ICON_BLANK202,
453         ICON_BLANK203,
454         ICON_BLANK204,
455         ICON_BLANK205,
456         ICON_BLANK206,
457         ICON_BLANK207,
458         ICON_BLANK208,
459         ICON_BLANK208b,
460         
461         /* EDITING */
462         ICON_VERTEXSEL,
463         ICON_EDGESEL,
464         ICON_FACESEL,
465         ICON_LINKEDSEL,
466         ICON_BLANK210,
467         ICON_ROTATE,
468         ICON_CURSOR,
469         ICON_ROTATECOLLECTION,
470         ICON_ROTATECENTER,
471         ICON_ROTACTIVE,
472         ICON_ALIGN,
473         ICON_BLANK211,
474         ICON_SMOOTHCURVE,
475         ICON_SPHERECURVE,
476         ICON_ROOTCURVE,
477         ICON_SHARPCURVE,
478         ICON_LINCURVE,
479         ICON_NOCURVE,
480         ICON_RNDCURVE,
481         ICON_PROP_OFF,
482         ICON_PROP_ON,
483         ICON_PROP_CON,
484         ICON_BLANK212,
485         ICON_BLANK213,
486         ICON_BLANK214,
487         ICON_BLANK214b,
488         
489         /* EDITING */
490         ICON_MAN_TRANS,
491         ICON_MAN_ROT,
492         ICON_MAN_SCALE,
493         ICON_MANIPUL,
494         ICON_BLANK215,
495         ICON_SNAP_GEAR,
496         ICON_SNAP_GEO,
497         ICON_SNAP_NORMAL,
498         ICON_SNAP_VERTEX,
499         ICON_SNAP_EDGE,
500         ICON_SNAP_FACE,
501         ICON_BLANK218b,
502         ICON_STICKY_UVS_LOC,
503         ICON_STICKY_UVS_DISABLE,
504         ICON_STICKY_UVS_VERT,
505         ICON_CLIPUV_DEHLT,
506         ICON_CLIPUV_HLT,
507         ICON_BLANK219,
508         ICON_BLANK220,
509         ICON_BLANK221,
510         ICON_BLANK222,
511         ICON_BLANK223,
512         ICON_BLANK224,
513         ICON_BLANK225,
514         ICON_BLANK226,
515         ICON_BLANK226b,
516         
517         /* EDITING */
518         ICON_PASTEDOWN,
519         ICON_COPYDOWN,
520         ICON_PASTEFLIPUP,
521         ICON_PASTEFLIPDOWN,
522         ICON_BLANK227,
523         ICON_BLANK228,
524         ICON_BLANK229,
525         ICON_BLANK230,
526         ICON_BLANK231,
527         ICON_BLANK232,
528         ICON_BLANK233,
529         ICON_BLANK234,
530         ICON_BLANK235,
531         ICON_BLANK236,
532         ICON_BLANK237,
533         ICON_BLANK238,
534         ICON_BLANK239,
535         ICON_BLANK240,
536         ICON_BLANK241,
537         ICON_BLANK242,
538         ICON_BLANK243,
539         ICON_BLANK244,
540         ICON_BLANK245,
541         ICON_BLANK246,
542         ICON_BLANK247,
543         ICON_BLANK247b,
544         
545         /* 3D VIEW */
546         ICON_BBOX,
547         ICON_WIRE,
548         ICON_SOLID,
549         ICON_SMOOTH,
550         ICON_POTATO,
551         ICON_BLANK248,
552         ICON_ORTHO,
553         ICON_BLANK249,
554         ICON_CAMERA,
555         ICON_LOCKVIEW_OFF,
556         ICON_LOCKVIEW_ON,
557         ICON_BLANK250,
558         ICON_AXIS_SIDE,
559         ICON_AXIS_FRONT,
560         ICON_AXIS_TOP,
561         ICON_NDOF_DOM,
562         ICON_NDOF_TURN,
563         ICON_NDOF_FLY,
564         ICON_NDOF_TRANS,
565         ICON_LAYER_USED,
566         ICON_LAYER_ACTIVE,
567         ICON_BLANK254,
568         ICON_BLANK255,
569         ICON_BLANK256,
570         ICON_BLANK257,
571         ICON_BLANK257b,
572         
573         /* available */
574         ICON_BLANK258,
575         ICON_BLANK259,
576         ICON_BLANK260,
577         ICON_BLANK261,
578         ICON_BLANK262,
579         ICON_BLANK263,
580         ICON_BLANK264,
581         ICON_BLANK265,
582         ICON_BLANK266,
583         ICON_BLANK267,
584         ICON_BLANK268,
585         ICON_BLANK269,
586         ICON_BLANK270,
587         ICON_BLANK271,
588         ICON_BLANK272,
589         ICON_BLANK273,
590         ICON_BLANK274,
591         ICON_BLANK275,
592         ICON_BLANK276,
593         ICON_BLANK277,
594         ICON_BLANK278,
595         ICON_BLANK279,
596         ICON_BLANK280,
597         ICON_BLANK281,
598         ICON_BLANK282,
599         ICON_BLANK282b,
600         
601         /* FILE SELECT */
602         ICON_SORTALPHA,
603         ICON_SORTBYEXT,
604         ICON_SORTTIME,
605         ICON_SORTSIZE,
606         ICON_LONGDISPLAY,
607         ICON_SHORTDISPLAY,
608         ICON_GHOST,
609         ICON_IMGDISPLAY,
610         ICON_BLANK284,
611         ICON_BLANK285,
612         ICON_BOOKMARKS,
613         ICON_FONTPREVIEW,
614         ICON_FILTER,
615         ICON_BLANK285E,
616         ICON_BLANK285F,
617         ICON_FILE_PARENT,
618         ICON_FILE_REFRESH,
619         ICON_FILE_FOLDER,
620         ICON_FILE_BLANK,
621         ICON_FILE_BLEND,
622         ICON_FILE_IMAGE,
623         ICON_FILE_MOVIE,
624         ICON_FILE_SCRIPT,
625         ICON_FILE_SOUND,
626         ICON_FILE_FONT,
627         ICON_BLANK291b,
628
629         /* available */
630         ICON_BLANK292,
631         ICON_BLANK293,
632         ICON_BLANK294,
633         ICON_BLANK295,
634         ICON_BLANK296,
635         ICON_BLANK297,
636         ICON_BLANK298,
637         ICON_BLANK299,
638         ICON_BLANK300,
639         ICON_BLANK301,
640         ICON_BLANK302,
641         ICON_BLANK303,
642         ICON_BLANK304,
643         ICON_BLANK305,
644         ICON_BLANK306,
645         ICON_BLANK307,
646         ICON_BLANK308,
647         ICON_BLANK309,
648         ICON_BLANK310,
649         ICON_BLANK311,
650         ICON_BLANK312,
651         ICON_BLANK313,
652         ICON_BLANK314,
653         ICON_BLANK315,
654         ICON_BLANK316,
655         ICON_BLANK316b,
656         
657         /* SHADING / TEXT */
658         ICON_MATPLANE,
659         ICON_MATSPHERE,
660         ICON_MATCUBE,
661         ICON_MONKEY,
662         ICON_HAIR,
663         ICON_RING,
664         ICON_BLANK317,
665         ICON_BLANK318,
666         ICON_BLANK319,
667         ICON_BLANK320,
668         ICON_BLANK321,
669         ICON_BLANK322,
670         ICON_WORDWRAP_OFF,
671         ICON_WORDWRAP_ON,
672         ICON_SYNTAX_OFF,
673         ICON_SYNTAX_ON,
674         ICON_LINENUMBERS_OFF,
675         ICON_LINENUMBERS_ON,
676         ICON_SCRIPTPLUGINS,             // XXX CREATE NEW
677         ICON_BLANK323,
678         ICON_BLANK324,
679         ICON_BLANK325,
680         ICON_BLANK326,
681         ICON_BLANK327,
682         ICON_BLANK328,
683         ICON_BLANK328b,
684         
685         /* SEQUENCE / IMAGE EDITOR */
686         ICON_SEQ_SEQUENCER,
687         ICON_SEQ_PREVIEW,
688         ICON_SEQ_LUMA_WAVEFORM,
689         ICON_SEQ_CHROMA_SCOPE,
690         ICON_SEQ_HISTOGRAM,
691         ICON_BLANK330,
692         ICON_BLANK331,
693         ICON_BLANK332,
694         ICON_BLANK333,
695         ICON_IMAGE_RGB, // XXX CHANGE TO STRAIGHT ALPHA, Z ETC
696         ICON_IMAGE_RGB_ALPHA,
697         ICON_IMAGE_ALPHA,
698         ICON_IMAGE_ZDEPTH,
699         ICON_IMAGEFILE,
700         ICON_BLANK336,
701         ICON_BLANK337,
702         ICON_BLANK338,
703         ICON_BLANK339,
704         ICON_BLANK340,
705         ICON_BLANK341,
706         ICON_BLANK342,
707         ICON_BLANK343,
708         ICON_BLANK344,
709         ICON_BLANK345,
710         ICON_BLANK346,
711         ICON_BLANK346b,
712         
713         /* vector icons */
714         
715         VICON_VIEW3D,
716         VICON_EDIT,
717         VICON_EDITMODE_DEHLT,
718         VICON_EDITMODE_HLT,
719         VICON_DISCLOSURE_TRI_RIGHT,
720         VICON_DISCLOSURE_TRI_DOWN,
721         VICON_MOVE_UP,
722         VICON_MOVE_DOWN,
723         VICON_X
724
725 #define BIFICONID_LAST          (VICON_X)
726 #define BIFNICONIDS                     (BIFICONID_LAST-BIFICONID_FIRST + 1)
727 } BIFIconID;
728
729
730 typedef enum {
731 #define BIFCOLORSHADE_FIRST     (COLORSHADE_DARK)
732         COLORSHADE_DARK,
733         COLORSHADE_GREY,
734         COLORSHADE_MEDIUM,
735         COLORSHADE_HILITE,
736         COLORSHADE_LIGHT,
737         COLORSHADE_WHITE
738 #define BIFCOLORSHADE_LAST      (COLORSHADE_WHITE)
739 #define BIFNCOLORSHADES         (BIFCOLORSHADE_LAST-BIFCOLORSHADE_FIRST + 1)
740 } BIFColorShade;
741
742 typedef enum {
743 #define BIFCOLORID_FIRST        (BUTGREY)
744         BUTGREY = 0,
745         BUTGREEN,
746         BUTBLUE,
747         BUTSALMON,
748         MIDGREY,
749         BUTPURPLE,
750         BUTYELLOW,
751         REDALERT,
752         BUTRUST,
753         BUTWHITE,
754         BUTDBLUE,
755         BUTPINK,
756         BUTDPINK,
757         BUTMACTIVE,
758
759         BUTIPO,
760         BUTAUDIO,
761         BUTCAMERA,
762         BUTRANDOM,
763         BUTEDITOBJECT,
764         BUTPROPERTY,
765         BUTSCENE,
766         BUTMOTION,
767         BUTMESSAGE,
768         BUTACTION,
769         BUTCD,
770         BUTGAME,
771         BUTVISIBILITY,
772         BUTYUCK,
773         BUTSEASICK,
774         BUTCHOKE,
775         BUTIMPERIAL,
776
777         BUTTEXTCOLOR,
778         BUTTEXTPRESSED,
779         BUTSBACKGROUND,
780         
781         VIEWPORTBACKCOLOR,
782         VIEWPORTGRIDCOLOR,
783         VIEWPORTACTIVECOLOR,
784         VIEWPORTSELECTEDCOLOR,
785         VIEWPORTUNSELCOLOR,
786         
787         EDITVERTSEL, 
788         EDITVERTUNSEL, 
789         EDITEDGESEL, 
790         EDITEDGEUNSEL
791         
792 #define BIFCOLORID_LAST         (EDITEDGEUNSEL)
793 #define BIFNCOLORIDS            (BIFCOLORID_LAST-BIFCOLORID_FIRST + 1)
794
795 } BIFColorID;
796
797 /* XXX WARNING: this is saved in file, so do not change order! */
798 enum {
799         TH_AUTO,        /* for buttons, to signal automatic color assignment */
800         
801 // uibutton colors
802         TH_BUT_OUTLINE,
803         TH_BUT_NEUTRAL,
804         TH_BUT_ACTION,
805         TH_BUT_SETTING,
806         TH_BUT_SETTING1,
807         TH_BUT_SETTING2,
808         TH_BUT_NUM,
809         TH_BUT_TEXTFIELD,
810         TH_BUT_POPUP,
811         TH_BUT_TEXT,
812         TH_BUT_TEXT_HI,
813         TH_MENU_BACK,
814         TH_MENU_ITEM,
815         TH_MENU_HILITE,
816         TH_MENU_TEXT,
817         TH_MENU_TEXT_HI,
818         
819         TH_BUT_DRAWTYPE,
820         
821         TH_REDALERT,
822         TH_CUSTOM,
823         
824         TH_BUT_TEXTFIELD_HI,
825         TH_ICONFILE,
826         
827         TH_THEMEUI,
828 // common colors among spaces
829         
830         TH_BACK,
831         TH_TEXT,
832         TH_TEXT_HI,
833         TH_HEADER,
834         TH_HEADERDESEL,
835         TH_PANEL,
836         TH_SHADE1,
837         TH_SHADE2,
838         TH_HILITE,
839
840         TH_GRID,
841         TH_WIRE,
842         TH_SELECT,
843         TH_ACTIVE,
844         TH_GROUP,
845         TH_GROUP_ACTIVE,
846         TH_TRANSFORM,
847         TH_VERTEX,
848         TH_VERTEX_SELECT,
849         TH_VERTEX_SIZE,
850         TH_EDGE,
851         TH_EDGE_SELECT,
852         TH_EDGE_SEAM,
853         TH_EDGE_FACESEL,
854         TH_FACE,
855         TH_FACE_SELECT,
856         TH_NORMAL,
857         TH_FACE_DOT,
858         TH_FACEDOT_SIZE,
859         TH_CFRAME,
860
861         TH_SYNTAX_B,
862         TH_SYNTAX_V,
863         TH_SYNTAX_C,
864         TH_SYNTAX_L,
865         TH_SYNTAX_N,
866         
867         TH_BONE_SOLID,
868         TH_BONE_POSE,
869         
870         TH_STRIP,
871         TH_STRIP_SELECT,
872         
873         TH_LAMP,
874         
875         TH_NODE,
876         TH_NODE_IN_OUT,
877         TH_NODE_OPERATOR,
878         TH_NODE_CONVERTOR,
879         TH_NODE_GROUP,
880         
881         TH_SEQ_MOVIE,
882         TH_SEQ_IMAGE,
883         TH_SEQ_SCENE,
884         TH_SEQ_AUDIO,
885         TH_SEQ_EFFECT,
886         TH_SEQ_PLUGIN,
887         TH_SEQ_TRANSITION,
888         TH_SEQ_META,
889         
890         TH_EDGE_SHARP,
891         TH_EDITMESH_ACTIVE,
892         
893         TH_HANDLE_VERTEX,
894         TH_HANDLE_VERTEX_SELECT,
895         TH_HANDLE_VERTEX_SIZE,
896         
897         TH_DOPESHEET_CHANNELOB,
898         TH_DOPESHEET_CHANNELSUBOB,
899 };
900 /* XXX WARNING: previous is saved in file, so do not change order! */
901
902 /* specific defines per space should have higher define values */
903
904 struct bTheme;
905 struct PointerRNA;
906
907 // THE CODERS API FOR THEMES:
908
909 // sets the color
910 void    UI_ThemeColor(int colorid);
911
912 // sets the color plus alpha
913 void    UI_ThemeColor4(int colorid);
914
915 // sets color plus offset for shade
916 void    UI_ThemeColorShade(int colorid, int offset);
917
918 // sets color plus offset for alpha
919 void    UI_ThemeColorShadeAlpha(int colorid, int coloffset, int alphaoffset);
920
921 // sets color, which is blend between two theme colors
922 void    UI_ThemeColorBlend(int colorid1, int colorid2, float fac);
923 // same, with shade offset
924 void    UI_ThemeColorBlendShade(int colorid1, int colorid2, float fac, int offset);
925 void    UI_ThemeColorBlendShadeAlpha(int colorid1, int colorid2, float fac, int offset, int alphaoffset);
926
927 // returns one value, not scaled
928 float   UI_GetThemeValuef(int colorid);
929 int     UI_GetThemeValue(int colorid);
930
931 // get three color values, scaled to 0.0-1.0 range
932 void    UI_GetThemeColor3fv(int colorid, float *col);
933
934 // get the 3 or 4 byte values
935 void    UI_GetThemeColor3ubv(int colorid, char *col);
936 void    UI_GetThemeColor4ubv(int colorid, char *col);
937
938 // get a theme color from specified space type
939 void    UI_GetThemeColorType4ubv(int colorid, int spacetype, char *col);
940
941 // blends and shades between two color pointers
942 void    UI_ColorPtrBlendShade3ubv(char *cp1, char *cp2, float fac, int offset);
943
944 // get a 3 byte color, blended and shaded between two other char color pointers
945 void    UI_GetColorPtrBlendShade3ubv(char *cp1, char *cp2, char *col, float fac, int offset);
946
947 // get pointer from RNA pointer
948 int             UI_GetIconRNA(struct PointerRNA *ptr);
949
950 struct ScrArea;
951
952 // internal (blender) usage only, for init and set active
953 void    UI_SetTheme(struct ScrArea *sa);
954 void    ui_theme_init_userdef           (void);
955 void    ui_resources_init               (void);
956 void    ui_resources_free               (void);
957
958 /* only for buttons in theme editor! */
959 char    *UI_ThemeGetColorPtr(struct bTheme *btheme, int spacetype, int colorid);
960 char    *UI_ThemeColorsPup(int spacetype);
961
962 #endif /*  UI_ICONS_H */