00001 /*********************************************************************** 00002 filename: CEGUIConfig.h 00003 created: 1/10/2004 00004 author: Paul D Turner 00005 *************************************************************************/ 00006 /*************************************************************************** 00007 * Copyright (C) 2004 - 2006 Paul D Turner & The CEGUI Development Team 00008 * 00009 * Permission is hereby granted, free of charge, to any person obtaining 00010 * a copy of this software and associated documentation files (the 00011 * "Software"), to deal in the Software without restriction, including 00012 * without limitation the rights to use, copy, modify, merge, publish, 00013 * distribute, sublicense, and/or sell copies of the Software, and to 00014 * permit persons to whom the Software is furnished to do so, subject to 00015 * the following conditions: 00016 * 00017 * The above copyright notice and this permission notice shall be 00018 * included in all copies or substantial portions of the Software. 00019 * 00020 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 00021 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 00022 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 00023 * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR 00024 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 00025 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 00026 * OTHER DEALINGS IN THE SOFTWARE. 00027 ***************************************************************************/ 00029 /************************************************************************* 00030 00031 This file can be used to set certain configuration options which are used 00032 when compiling Crazy Eddie's GUI System and associated components. 00033 00034 Each item in here has a comment to describe what it's for. 00035 00036 *************************************************************************/ 00038 #ifndef _CEGUIConfig_h_ 00039 #define _CEGUIConfig_h_ 00040 00042 // The following are intended for X-Code users. 00043 // 00044 // The Linux build can both auto-configure itself, and also take 00045 // configure parameters which control the settings presented below. 00046 // 00047 // The Premake solution will generate these for you according to the 00048 // config.lua script. 00050 #if defined(__APPLE__) 00051 00053 // Set this to the default XMLParser to be used. 00054 // (XercesParser, ExpatParser, LibxmlParser or TinyXMLParser). 00056 #ifndef CEGUI_DEFAULT_XMLPARSER 00057 # define CEGUI_DEFAULT_XMLPARSER ExpatParser 00058 #endif 00059 00061 // Set this to the default ImageCodec to be used. 00062 // CoronaImageCodec, DevILImageCodec, FreeImageImageCodec, 00063 // SILLYImageCodec, TGAImageCodec or STBImageCodec 00065 #ifndef CEGUI_DEFAULT_IMAGE_CODEC 00066 # define CEGUI_DEFAULT_IMAGE_CODEC SILLYImageCodec 00067 #endif 00068 00070 // The following are required to build the integrated copy of TinyXML. 00071 // If for some reason you decide you need to use an external version of 00072 // TinyXML, you can change these defines as required (you will also likely 00073 // need to set up some linker stuff as well). 00075 // Main tiny xml header file 00076 #ifndef CEGUI_TINYXML_H 00077 # define CEGUI_TINYXML_H "ceguitinyxml/tinyxml.h" 00078 #endif 00079 // Namespace that contains TinyXML. 00080 #ifndef CEGUI_TINYXML_NAMESPACE 00081 # define CEGUI_TINYXML_NAMESPACE CEGUITinyXML 00082 #endif 00083 00085 // The following controls the version of Lua that is going to be used. 00086 // Note that from 0.7.0 and up, Lua 5.0 is no longer supported. 00087 // 51 is for Lua 5.1.x versions (and above?) 00089 #ifndef CEGUI_LUA_VER 00090 # define CEGUI_LUA_VER 51 00091 #endif 00092 00094 // The following controls whether freetype based font support will be 00095 // compiled in (default). If you want to build CEGUI /without/ freetype 00096 // support, comment the following line. 00098 #define CEGUI_HAS_FREETYPE 00099 00101 // PCRE library 00102 // CEGUI uses the pcre library for it's regular expression based string 00103 // validation as used in the Editbox (and derived classes, such as Spinner). 00104 // To disable the use of PCRE (and therefore the validation factilities), 00105 // comment the following line. (Attempts to set validation string will throw). 00107 #define CEGUI_HAS_PCRE_REGEX 00108 00110 // The following controls whether the default logger be (possibly) used. 00111 // If you want to build CEGUI so that it does not use the default logger, 00112 // comment the following line. 00113 // 00114 // Note: If you disable the default logger you MUST provide an alternative 00115 // CEGUI::Logger based class and instantiate it before creating the main 00116 // CEGUI::System object. 00118 #define CEGUI_HAS_DEFAULT_LOGGER 00119 00121 // The following defines control bidirectional text support. 00122 // 00123 // Uncomment the CEGUI_BIDI_SUPPORT definition to enable bidirectional 00124 // text in CEGUI. 00125 // 00126 // With bidirectional text support enabled, you must then choose to uncomment 00127 // either the CEGUI_USE_MINIBIDI or CEGUI_USE_FRIBIDI definitions (but you 00128 // should not uncomment both!) 00129 // 00130 // Uncommenting CEGUI_USE_MINIBIDI uses an integrated copy of minibidi to 00131 // provide the bidirectional support. 00132 // 00133 // Uncommenting CEGUI_USE_FRIBIDI uses an external copy of fribidi to 00134 // provide the bidirectional support (not supplied). 00136 //#define CEGUI_BIDI_SUPPORT 00137 00138 // Uncomment this to use the embedded minibidi library. 00139 //#define CEGUI_USE_MINIBIDI 00140 // - or - 00141 // Uncomment this to use an external fribidi library. 00142 //#define CEGUI_USE_FRIBIDI 00143 00145 // The following controls whether the MinizipResourceProvider will be 00146 // built into the CEGUIBase library. You can uncomment the following line 00147 // to include this code (and it's dependency code). 00148 // 00149 // The MinizipResourceProvider provides the ability to load resource files 00150 // from locations within .zip files. 00152 //#define CEGUI_HAS_MINIZIP_RESOURCE_PROVIDER 00153 00154 #endif // defined(__APPLE__) 00155 00156 #endif // end of guard _CEGUIConfig_h_