2 * This file has a different license to the rest of the uGFX system.
3 * You can copy, modify and distribute this file as you see fit.
4 * You do not need to publish your source modifications to this file.
5 * The only thing you are not permitted to do is to relicense it
6 * under a different license.
10 * Copy this file into your project directory and rename it as gfxconf.h
11 * Edit your copy to turn on the uGFX features you want to use.
12 * The values below are the defaults.
14 * Only remove the comments from lines where you want to change the
15 * default value. This allows definitions to be included from
16 * driver makefiles when required and provides the best future
17 * compatibility for your project.
19 * Please use spaces instead of tabs in this file.
22 #ifndef COMMON_GFXCONF_H
23 #define COMMON_GFXCONF_H
26 ///////////////////////////////////////////////////////////////////////////
27 // GOS - One of these must be defined, preferably in your Makefile //
28 ///////////////////////////////////////////////////////////////////////////
29 //#define GFX_USE_OS_CHIBIOS TRUE
30 //#define GFX_USE_OS_FREERTOS FALSE
31 // #define GFX_FREERTOS_USE_TRACE FALSE
32 //#define GFX_USE_OS_WIN32 FALSE
33 //#define GFX_USE_OS_LINUX FALSE
34 //#define GFX_USE_OS_OSX FALSE
35 //#define GFX_USE_OS_ECOS FALSE
36 //#define GFX_USE_OS_RAWRTOS FALSE
37 //#define GFX_USE_OS_ARDUINO FALSE
38 //#define GFX_USE_OS_KEIL FALSE
39 //#define GFX_USE_OS_CMSIS FALSE
40 //#define GFX_USE_OS_RAW32 FALSE
41 // #define INTERRUPTS_OFF() optional_code
42 // #define INTERRUPTS_ON() optional_code
43 // These are not defined by default for some reason
44 #define GOS_NEED_X_THREADS FALSE
45 #define GOS_NEED_X_HEAP FALSE
47 // Options that (should where relevant) apply to all operating systems
48 #define GFX_NO_INLINE FALSE
49 // #define GFX_COMPILER GFX_COMPILER_UNKNOWN
50 // #define GFX_CPU GFX_CPU_UNKNOWN
51 // #define GFX_OS_HEAP_SIZE 0
52 // #define GFX_OS_NO_INIT FALSE
53 // #define GFX_OS_INIT_NO_WARNING FALSE
54 // #define GFX_OS_PRE_INIT_FUNCTION myHardwareInitRoutine
55 // #define GFX_OS_EXTRA_INIT_FUNCTION myOSInitRoutine
56 // #define GFX_OS_EXTRA_DEINIT_FUNCTION myOSDeInitRoutine
59 ///////////////////////////////////////////////////////////////////////////
61 ///////////////////////////////////////////////////////////////////////////
62 #define GFX_USE_GDISP TRUE
64 //#define GDISP_NEED_AUTOFLUSH FALSE
65 //#define GDISP_NEED_TIMERFLUSH FALSE
66 //#define GDISP_NEED_VALIDATION TRUE
67 //#define GDISP_NEED_CLIP TRUE
68 #define GDISP_NEED_CIRCLE TRUE
69 #define GDISP_NEED_ELLIPSE TRUE
70 #define GDISP_NEED_ARC TRUE
71 #define GDISP_NEED_ARCSECTORS TRUE
72 #define GDISP_NEED_CONVEX_POLYGON TRUE
73 //#define GDISP_NEED_SCROLL FALSE
74 #define GDISP_NEED_PIXELREAD TRUE
75 #define GDISP_NEED_CONTROL TRUE
76 //#define GDISP_NEED_QUERY FALSE
77 //#define GDISP_NEED_MULTITHREAD FALSE
78 //#define GDISP_NEED_STREAMING FALSE
79 #define GDISP_NEED_TEXT TRUE
80 // #define GDISP_NEED_TEXT_WORDWRAP FALSE
81 // #define GDISP_NEED_ANTIALIAS FALSE
82 // #define GDISP_NEED_UTF8 FALSE
83 #define GDISP_NEED_TEXT_KERNING TRUE
84 // #define GDISP_INCLUDE_FONT_UI1 FALSE
85 // #define GDISP_INCLUDE_FONT_UI2 FALSE // The smallest preferred font.
86 // #define GDISP_INCLUDE_FONT_LARGENUMBERS FALSE
87 // #define GDISP_INCLUDE_FONT_DEJAVUSANS10 FALSE
88 // #define GDISP_INCLUDE_FONT_DEJAVUSANS12 FALSE
89 // #define GDISP_INCLUDE_FONT_DEJAVUSANS16 FALSE
90 // #define GDISP_INCLUDE_FONT_DEJAVUSANS20 FALSE
91 // #define GDISP_INCLUDE_FONT_DEJAVUSANS24 FALSE
92 // #define GDISP_INCLUDE_FONT_DEJAVUSANS32 FALSE
93 #define GDISP_INCLUDE_FONT_DEJAVUSANSBOLD12 TRUE
94 // #define GDISP_INCLUDE_FONT_FIXED_10X20 FALSE
95 // #define GDISP_INCLUDE_FONT_FIXED_7X14 FALSE
96 #define GDISP_INCLUDE_FONT_FIXED_5X8 TRUE
97 // #define GDISP_INCLUDE_FONT_DEJAVUSANS12_AA FALSE
98 // #define GDISP_INCLUDE_FONT_DEJAVUSANS16_AA FALSE
99 // #define GDISP_INCLUDE_FONT_DEJAVUSANS20_AA FALSE
100 // #define GDISP_INCLUDE_FONT_DEJAVUSANS24_AA FALSE
101 // #define GDISP_INCLUDE_FONT_DEJAVUSANS32_AA FALSE
102 // #define GDISP_INCLUDE_FONT_DEJAVUSANSBOLD12_AA FALSE
103 // #define GDISP_INCLUDE_USER_FONTS FALSE
105 //#define GDISP_NEED_IMAGE FALSE
106 // #define GDISP_NEED_IMAGE_NATIVE FALSE
107 // #define GDISP_NEED_IMAGE_GIF FALSE
108 // #define GDISP_NEED_IMAGE_BMP FALSE
109 // #define GDISP_NEED_IMAGE_BMP_1 FALSE
110 // #define GDISP_NEED_IMAGE_BMP_4 FALSE
111 // #define GDISP_NEED_IMAGE_BMP_4_RLE FALSE
112 // #define GDISP_NEED_IMAGE_BMP_8 FALSE
113 // #define GDISP_NEED_IMAGE_BMP_8_RLE FALSE
114 // #define GDISP_NEED_IMAGE_BMP_16 FALSE
115 // #define GDISP_NEED_IMAGE_BMP_24 FALSE
116 // #define GDISP_NEED_IMAGE_BMP_32 FALSE
117 // #define GDISP_NEED_IMAGE_JPG FALSE
118 // #define GDISP_NEED_IMAGE_PNG FALSE
119 // #define GDISP_NEED_IMAGE_ACCOUNTING FALSE
121 #define GDISP_NEED_PIXMAP TRUE
123 // #define GDISP_NEED_PIXMAP_IMAGE FALSE
125 //#define GDISP_DEFAULT_ORIENTATION GDISP_ROTATE_LANDSCAPE // If not defined the native hardware orientation is used.
126 //#define GDISP_LINEBUF_SIZE 128
127 //#define GDISP_STARTUP_COLOR Black
128 #define GDISP_NEED_STARTUP_LOGO FALSE
130 //#define GDISP_TOTAL_DISPLAYS 2
132 #ifdef GDISP_DRIVER_LIST
133 // For code and speed optimization define as TRUE or FALSE if all controllers have the same capability
134 #define GDISP_HARDWARE_STREAM_WRITE FALSE
135 #define GDISP_HARDWARE_STREAM_READ FALSE
136 #define GDISP_HARDWARE_STREAM_POS FALSE
137 #define GDISP_HARDWARE_DRAWPIXEL TRUE
138 #define GDISP_HARDWARE_CLEARS FALSE
139 #define GDISP_HARDWARE_FILLS FALSE
140 //#define GDISP_HARDWARE_BITFILLS FALSE
141 #define GDISP_HARDWARE_SCROLL FALSE
142 #define GDISP_HARDWARE_PIXELREAD TRUE
143 #define GDISP_HARDWARE_CONTROL TRUE
144 #define GDISP_HARDWARE_QUERY FALSE
145 #define GDISP_HARDWARE_CLIP FALSE
147 #define GDISP_PIXELFORMAT GDISP_PIXELFORMAT_RGB888
150 // The custom format is not defined for some reason, so define it as error
151 // so we don't get compiler warnings
152 #define GDISP_PIXELFORMAT_CUSTOM GDISP_PIXELFORMAT_ERROR
154 #define GDISP_USE_GFXNET FALSE
155 // #define GDISP_GFXNET_PORT 13001
156 // #define GDISP_GFXNET_CUSTOM_LWIP_STARTUP FALSE
157 // #define GDISP_DONT_WAIT_FOR_NET_DISPLAY FALSE
158 // #define GDISP_GFXNET_UNSAFE_SOCKETS FALSE
161 ///////////////////////////////////////////////////////////////////////////
163 ///////////////////////////////////////////////////////////////////////////
164 #define GFX_USE_GWIN FALSE
166 //#define GWIN_NEED_WINDOWMANAGER FALSE
167 // #define GWIN_REDRAW_IMMEDIATE FALSE
168 // #define GWIN_REDRAW_SINGLEOP FALSE
169 // #define GWIN_NEED_FLASHING FALSE
170 // #define GWIN_FLASHING_PERIOD 250
172 //#define GWIN_NEED_CONSOLE FALSE
173 // #define GWIN_CONSOLE_USE_HISTORY FALSE
174 // #define GWIN_CONSOLE_HISTORY_AVERAGING FALSE
175 // #define GWIN_CONSOLE_HISTORY_ATCREATE FALSE
176 // #define GWIN_CONSOLE_ESCSEQ FALSE
177 // #define GWIN_CONSOLE_USE_BASESTREAM FALSE
178 // #define GWIN_CONSOLE_USE_FLOAT FALSE
179 //#define GWIN_NEED_GRAPH FALSE
180 //#define GWIN_NEED_GL3D FALSE
182 //#define GWIN_NEED_WIDGET FALSE
183 //#define GWIN_FOCUS_HIGHLIGHT_WIDTH 1
184 // #define GWIN_NEED_LABEL FALSE
185 // #define GWIN_LABEL_ATTRIBUTE FALSE
186 // #define GWIN_NEED_BUTTON FALSE
187 // #define GWIN_BUTTON_LAZY_RELEASE FALSE
188 // #define GWIN_NEED_SLIDER FALSE
189 // #define GWIN_SLIDER_NOSNAP FALSE
190 // #define GWIN_SLIDER_DEAD_BAND 5
191 // #define GWIN_SLIDER_TOGGLE_INC 20
192 // #define GWIN_NEED_CHECKBOX FALSE
193 // #define GWIN_NEED_IMAGE FALSE
194 // #define GWIN_NEED_IMAGE_ANIMATION FALSE
195 // #define GWIN_NEED_RADIO FALSE
196 // #define GWIN_NEED_LIST FALSE
197 // #define GWIN_NEED_LIST_IMAGES FALSE
198 // #define GWIN_NEED_PROGRESSBAR FALSE
199 // #define GWIN_PROGRESSBAR_AUTO FALSE
200 // #define GWIN_NEED_KEYBOARD FALSE
201 // #define GWIN_KEYBOARD_DEFAULT_LAYOUT VirtualKeyboard_English1
202 // #define GWIN_NEED_KEYBOARD_ENGLISH1 TRUE
203 // #define GWIN_NEED_TEXTEDIT FALSE
204 // #define GWIN_FLAT_STYLING FALSE
205 // #define GWIN_WIDGET_TAGS FALSE
207 //#define GWIN_NEED_CONTAINERS FALSE
208 // #define GWIN_NEED_CONTAINER FALSE
209 // #define GWIN_NEED_FRAME FALSE
210 // #define GWIN_NEED_TABSET FALSE
211 // #define GWIN_TABSET_TABHEIGHT 18
214 ///////////////////////////////////////////////////////////////////////////
216 ///////////////////////////////////////////////////////////////////////////
217 #define GFX_USE_GEVENT TRUE
219 //#define GEVENT_ASSERT_NO_RESOURCE FALSE
220 //#define GEVENT_MAXIMUM_SIZE 32
221 //#define GEVENT_MAX_SOURCE_LISTENERS 32
224 ///////////////////////////////////////////////////////////////////////////
226 ///////////////////////////////////////////////////////////////////////////
227 #define GFX_USE_GTIMER FALSE
229 //#define GTIMER_THREAD_PRIORITY HIGH_PRIORITY
230 //#define GTIMER_THREAD_WORKAREA_SIZE 2048
233 ///////////////////////////////////////////////////////////////////////////
235 ///////////////////////////////////////////////////////////////////////////
236 #define GFX_USE_GQUEUE FALSE
238 //#define GQUEUE_NEED_ASYNC FALSE
239 //#define GQUEUE_NEED_GSYNC FALSE
240 //#define GQUEUE_NEED_FSYNC FALSE
241 //#define GQUEUE_NEED_BUFFERS FALSE
243 ///////////////////////////////////////////////////////////////////////////
245 ///////////////////////////////////////////////////////////////////////////
246 #define GFX_USE_GINPUT FALSE
248 //#define GINPUT_NEED_MOUSE FALSE
249 // #define GINPUT_TOUCH_STARTRAW FALSE
250 // #define GINPUT_TOUCH_NOTOUCH FALSE
251 // #define GINPUT_TOUCH_NOCALIBRATE FALSE
252 // #define GINPUT_TOUCH_NOCALIBRATE_GUI FALSE
253 // #define GINPUT_MOUSE_POLL_PERIOD 25
254 // #define GINPUT_MOUSE_CLICK_TIME 300
255 // #define GINPUT_TOUCH_CXTCLICK_TIME 700
256 // #define GINPUT_TOUCH_USER_CALIBRATION_LOAD FALSE
257 // #define GINPUT_TOUCH_USER_CALIBRATION_SAVE FALSE
258 // #define GMOUSE_DRIVER_LIST GMOUSEVMT_Win32, GMOUSEVMT_Win32
259 //#define GINPUT_NEED_KEYBOARD FALSE
260 // #define GINPUT_KEYBOARD_POLL_PERIOD 200
261 // #define GKEYBOARD_DRIVER_LIST GKEYBOARDVMT_Win32, GKEYBOARDVMT_Win32
262 // #define GKEYBOARD_LAYOUT_OFF FALSE
263 // #define GKEYBOARD_LAYOUT_SCANCODE2_US FALSE
264 //#define GINPUT_NEED_TOGGLE FALSE
265 //#define GINPUT_NEED_DIAL FALSE
268 ///////////////////////////////////////////////////////////////////////////
270 ///////////////////////////////////////////////////////////////////////////
271 #define GFX_USE_GFILE FALSE
273 //#define GFILE_NEED_PRINTG FALSE
274 //#define GFILE_NEED_SCANG FALSE
275 //#define GFILE_NEED_STRINGS FALSE
276 //#define GFILE_NEED_FILELISTS FALSE
277 //#define GFILE_NEED_STDIO FALSE
278 //#define GFILE_NEED_NOAUTOMOUNT FALSE
279 //#define GFILE_NEED_NOAUTOSYNC FALSE
281 //#define GFILE_NEED_MEMFS FALSE
282 //#define GFILE_NEED_ROMFS FALSE
283 //#define GFILE_NEED_RAMFS FALSE
284 //#define GFILE_NEED_FATFS FALSE
285 //#define GFILE_NEED_NATIVEFS FALSE
286 //#define GFILE_NEED_CHBIOSFS FALSE
288 //#define GFILE_ALLOW_FLOATS FALSE
289 //#define GFILE_ALLOW_DEVICESPECIFIC FALSE
290 //#define GFILE_MAX_GFILES 3
292 ///////////////////////////////////////////////////////////////////////////
294 ///////////////////////////////////////////////////////////////////////////
295 #define GFX_USE_GADC FALSE
297 //#define GADC_MAX_LOWSPEED_DEVICES 4
300 ///////////////////////////////////////////////////////////////////////////
302 ///////////////////////////////////////////////////////////////////////////
303 #define GFX_USE_GAUDIO FALSE
304 // There seems to be a bug in the ugfx code, the wrong define is used
305 // So define it in order to avoid warnings
306 #define GFX_USE_GAUDIN GFX_USE_GAUDIO
307 // #define GAUDIO_NEED_PLAY FALSE
308 // #define GAUDIO_NEED_RECORD FALSE
311 ///////////////////////////////////////////////////////////////////////////
313 ///////////////////////////////////////////////////////////////////////////
314 #define GFX_USE_GMISC TRUE
316 //#define GMISC_NEED_ARRAYOPS FALSE
317 //#define GMISC_NEED_FASTTRIG FALSE
318 //#define GMISC_NEED_FIXEDTRIG FALSE
319 //#define GMISC_NEED_INVSQRT FALSE
320 // #define GMISC_INVSQRT_MIXED_ENDIAN FALSE
321 // #define GMISC_INVSQRT_REAL_SLOW FALSE
322 #define GMISC_NEED_MATRIXFLOAT2D TRUE
323 #define GMISC_NEED_MATRIXFIXED2D FALSE
325 #endif /* COMMON_GFXCONF_H */