Line data Source code
1 : /* Copyright (C) 2021 Wildfire Games.
2 : * This file is part of 0 A.D.
3 : *
4 : * 0 A.D. is free software: you can redistribute it and/or modify
5 : * it under the terms of the GNU General Public License as published by
6 : * the Free Software Foundation, either version 2 of the License, or
7 : * (at your option) any later version.
8 : *
9 : * 0 A.D. 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 0 A.D. If not, see <http://www.gnu.org/licenses/>.
16 : */
17 :
18 : /*
19 : This file is used by all bits of GUI code that need to repeat some code
20 : for a variety of types (to avoid repeating the list of types in half a dozen
21 : places, and to make it much easier to add a new type). Just do
22 : #define TYPE(T) your_code_involving_T;
23 : #include "gui/SettingTypes/GUISettingTypes.h"
24 : #undef TYPE
25 : to handle every possible type.
26 : */
27 :
28 : #ifndef GUITYPE_IGNORE_COPYABLE
29 : #include "gui/SettingTypes/EAlign.h"
30 : TYPE(bool)
31 : TYPE(i32)
32 : TYPE(u32)
33 : TYPE(float)
34 : TYPE(EAlign)
35 : TYPE(EVAlign)
36 0 : TYPE(CVector2D)
37 : #endif
38 :
39 : #ifndef GUITYPE_IGNORE_NONCOPYABLE
40 : #include "gui/SettingTypes/CGUIList.h"
41 : #include "gui/SettingTypes/CGUISeries.h"
42 : TYPE(CGUISize)
43 : TYPE(CGUIColor)
44 : TYPE(CGUIList)
45 : TYPE(CGUISeries)
46 : TYPE(CGUISpriteInstance)
47 : TYPE(CGUIString)
48 : TYPE(CStr)
49 : TYPE(CStrW)
50 : #endif
|