|
00001 /* ///////////////////////////////////////////////////////////////////////// 00002 * File: pantheios/internal/winlean.h 00003 * 00004 * Purpose: Suppresses as much as possible of the Windows headers, to 00005 * decrease compilation times. 00006 * 00007 * Created: 22nd April 2008 00008 * Updated: 15th February 2010 00009 * 00010 * Home: http://www.pantheios.org/ 00011 * 00012 * Copyright (c) 2008-2010, Matthew Wilson and Synesis Software 00013 * All rights reserved. 00014 * 00015 * Redistribution and use in source and binary forms, with or without 00016 * modification, are permitted provided that the following conditions are 00017 * met: 00018 * 00019 * - Redistributions of source code must retain the above copyright notice, 00020 * this list of conditions and the following disclaimer. 00021 * - Redistributions in binary form must reproduce the above copyright 00022 * notice, this list of conditions and the following disclaimer in the 00023 * documentation and/or other materials provided with the distribution. 00024 * - Neither the names of Matthew Wilson and Synesis Software nor the names 00025 * of any contributors may be used to endorse or promote products derived 00026 * from this software without specific prior written permission. 00027 * 00028 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS 00029 * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 00030 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 00031 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 00032 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 00033 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 00034 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 00035 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 00036 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 00037 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 00038 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00039 * 00040 * ////////////////////////////////////////////////////////////////////// */ 00041 00042 00049 #ifndef PANTHEIOS_INCL_PANTHEIOS_INTERNAL_H_WINLEAN 00050 #define PANTHEIOS_INCL_PANTHEIOS_INTERNAL_H_WINLEAN 00051 00052 /* ///////////////////////////////////////////////////////////////////////// 00053 * Compatility 00054 */ 00055 00056 #if !defined(_WIN32) && \ 00057 !defined(_WIN64) 00058 # error This file can only be used when compiling for Windows platforms 00059 #endif /* _WIN32 && _WIN64 */ 00060 00061 #if defined(_WINDOWS_) || \ 00062 defined(_WINDOWS_H) 00063 # error Cannot include after windows.h 00064 #endif /* _WINDOWS_ */ 00065 00066 /* ///////////////////////////////////////////////////////////////////////// 00067 * Feature suppression 00068 */ 00069 00070 #if !defined(__MINGW32__) 00071 #define WIN32_LEAN_AND_MEAN 00072 #define NOGDICAPMASKS /* CC_*, LC_*, PC_*, CP_*, TC_*, RC_ */ 00073 #define NOVIRTUALKEYCODES /* VK_* */ 00074 #define NOWINMESSAGES /* WM_*, EM_*, LB_*, CB_* */ 00075 #define NOWINSTYLES /* WS_*, CS_*, ES_*, LBS_*, SBS_*, CBS_* */ 00076 #define NOSYSMETRICS /* SM_* */ 00077 #define NOMENUS /* MF_* */ 00078 #define NOICONS /* IDI_* */ 00079 #define NOKEYSTATES /* MK_* */ 00080 #define NOSYSCOMMANDS /* SC_* */ 00081 #define NORASTEROPS /* Binary and Tertiary raster ops */ 00082 #define NOSHOWWINDOW /* SW_* */ 00083 #define OEMRESOURCE /* OEM Resource values */ 00084 #define NOATOM /* Atom Manager routines */ 00085 #define NOCLIPBOARD /* Clipboard routines */ 00086 #define NOCOLOR /* Screen colors */ 00087 #define NOCTLMGR /* Control and Dialog routines */ 00088 #define NODRAWTEXT /* DrawText() and DT_* */ 00089 /* #define NOGDI */ /* All GDI defines and routines */ 00090 #define NOKERNEL /* All KERNEL defines and routines */ 00091 /* #define NOUSER */ /* All USER defines and routines */ 00092 /* #define NONLS */ /* All NLS defines and routines */ 00093 /* #define NOMB */ /* MB_* and MessageBox() */ 00094 #define NOMEMMGR /* GMEM_*, LMEM_*, GHND, LHND, associated routines */ 00095 #define NOMETAFILE /* typedef METAFILEPICT */ 00096 #define NOMINMAX /* Macros min(a,b) and max(a,b) */ 00097 /* #define NOMSG */ /* typedef MSG and associated routines */ 00098 #define NOOPENFILE /* OpenFile(), OemToAnsi, AnsiToOem, and OF_* */ 00099 #define NOSCROLL /* SB_* and scrolling routines */ 00100 #define NOSERVICE /* All Service Controller routines, SERVICE_ equates, etc. */ 00101 #define NOSOUND /* Sound driver routines */ 00102 #define NOTEXTMETRIC /* typedef TEXTMETRIC and associated routines */ 00103 #define NOWH /* SetWindowsHook and WH_* */ 00104 #define NOWINOFFSETS /* GWL_*, GCL_*, associated routines */ 00105 #define NOCOMM /* COMM driver routines */ 00106 #define NOKANJI /* Kanji support stuff. */ 00107 #define NOHELP /* Help engine interface. */ 00108 #define NOPROFILER /* Profiler interface. */ 00109 #define NODEFERWINDOWPOS /* DeferWindowPos routines */ 00110 #define NOMCX /* Modem Configuration Extensions */ 00111 #endif /* 0 */ 00112 00113 /* ////////////////////////////////////////////////////////////////////// */ 00114 00115 #endif /* PANTHEIOS_INCL_PANTHEIOS_INTERNAL_H_WINLEAN */ 00116 00117 /* ///////////////////////////// end of file //////////////////////////// */
|
|
pantheios Library documentation © Matthew Wilson & Synesis Software, 2006-2011 |