Cleanup: avoid function call for pointer compare
[blender.git] / source / blender / windowmanager / wm_cursors.h
1 /*
2  * ***** BEGIN GPL LICENSE BLOCK *****
3  *
4  * This program is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU General Public License
6  * as published by the Free Software Foundation; either version 2
7  * of the License, or (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software Foundation,
16  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17  *
18  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
19  * All rights reserved.
20  *
21  * The Original Code is: all of this file.
22  *
23  * Contributor(s): none yet.
24  *
25  * ***** END GPL LICENSE BLOCK *****
26  */
27
28 /** \file blender/windowmanager/wm_cursors.h
29  *  \ingroup wm
30  */
31
32 #ifndef __WM_CURSORS_H__
33 #define __WM_CURSORS_H__
34
35 void wm_init_cursor_data(void);
36
37 #define BC_GHOST_CURSORS 1000
38
39 /* old cursors */
40 enum {
41         CURSOR_FACESEL = BC_GHOST_CURSORS,
42         CURSOR_WAIT,
43         CURSOR_EDIT,
44         CURSOR_X_MOVE,
45         CURSOR_Y_MOVE,
46         CURSOR_HELP,
47         CURSOR_STD,
48         CURSOR_NONE,
49         CURSOR_PENCIL,
50         CURSOR_COPY
51 };
52
53
54 //typedef struct BCursor_s BCursor;
55 typedef struct BCursor {
56
57         char *small_bm;
58         char *small_mask;
59
60         char small_sizex;
61         char small_sizey;
62         char small_hotx;
63         char small_hoty;
64
65         char *big_bm;
66         char *big_mask;
67
68         char big_sizex;
69         char big_sizey;
70         char big_hotx;
71         char big_hoty;
72
73         char fg_color;
74         char bg_color;
75
76 } BCursor;
77
78 #define SYSCURSOR 1
79 enum {
80         BC_NW_ARROWCURSOR = 2,
81         BC_NS_ARROWCURSOR,
82         BC_EW_ARROWCURSOR,
83         BC_WAITCURSOR,
84         BC_CROSSCURSOR,
85         BC_EDITCROSSCURSOR,
86         BC_BOXSELCURSOR,
87         BC_KNIFECURSOR,
88         BC_VLOOPCURSOR,
89         BC_TEXTEDITCURSOR,
90         BC_PAINTBRUSHCURSOR,
91         BC_HANDCURSOR,
92         BC_NSEW_SCROLLCURSOR,
93         BC_NS_SCROLLCURSOR,
94         BC_EW_SCROLLCURSOR,
95         BC_EYEDROPPER_CURSOR,
96         BC_SWAPAREA_CURSOR,
97 /* --- ALWAYS LAST ----- */
98         BC_NUMCURSORS,
99 };
100
101
102 enum {
103         BC_BLACK = 0,
104         BC_WHITE,
105         BC_RED,
106         BC_BLUE,
107         BC_GREEN,
108         BC_YELLOW
109 };
110
111 struct wmWindow;
112 struct wmEvent;
113
114 bool wm_cursor_arrow_move(struct wmWindow *win, const struct wmEvent *event);
115
116
117 #endif /* __WM_CURSORS_H__ */