]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/defs.h
compilation fix
[wxWidgets.git] / include / wx / defs.h
index 741f43dc98ac33ad647f3b2072083ece33070d39..f04c766d6d3c85a3d5e3376300185e6caddce2bf 100644 (file)
@@ -12,7 +12,7 @@
 #ifndef _WX_DEFS_H_
 #define _WX_DEFS_H_
 
-#if defined(__GNUG__) && !defined(__APPLE__)
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 #pragma interface "defs.h"
 #endif
 
 #   pragma suppress 571             // Virtual function hiding
 #endif // __SALFORDC__
 
+// suppress some Borland C++ warnings
+#ifdef __BORLANDC__
+#   pragma warn -inl                // Functions containing reserved words and certain constructs are not expanded inline
+#endif // __BORLANDC__
+
 // ----------------------------------------------------------------------------
 // wxWindows version and compatibility defines
 // ----------------------------------------------------------------------------
     #elif defined(__WATCOMC__) && (__WATCOMC__ >= 1100)
         // Watcom 11+ supports bool
         #define HAVE_BOOL
-    #elif defined(__DIGITALMARS__) 
+    #elif defined(__DIGITALMARS__)
         // DigitalMars supports bool
         #define HAVE_BOOL
     #elif defined(__GNUWIN32__) || defined(__MINGW32__) || defined(__CYGWIN__)
@@ -291,7 +296,7 @@ typedef int wxWindowID;
         #define HAVE_STD_STRING_COMPARE
     #elif ( defined(__MINGW32__) || defined(__CYGWIN32__) ) \
           && wxCHECK_GCC_VERSION(3, 1)
-        // GCC 3.1 has std::string::compare; 
+        // GCC 3.1 has std::string::compare;
         // 3.0 never was in MinGW, 2.95 hasn't it
         #define HAVE_STD_STRING_COMPARE
     #endif
@@ -399,6 +404,9 @@ typedef int wxWindowID;
 
     #define WXMAKINGDLL_NET
     #define WXMAKINGDLL_CORE
+    #define WXMAKINGDLL_ADV
+    #define WXMAKINGDLL_ODBC
+    #define WXMAKINGDLL_DBGRID
     #define WXMAKINGDLL_HTML
     #define WXMAKINGDLL_XML
 #endif // WXMAKINGDLL
@@ -438,6 +446,39 @@ typedef int wxWindowID;
     #define WXDLLIMPEXP_DATA_CORE(type) type
 #endif
 
+#ifdef WXMAKINGDLL_ADV
+    #define WXDLLIMPEXP_ADV WXEXPORT
+    #define WXDLLIMPEXP_DATA_ADV(type) WXEXPORT type
+#elif defined(WXUSINGDLL)
+    #define WXDLLIMPEXP_ADV WXIMPORT
+    #define WXDLLIMPEXP_DATA_ADV(type) WXIMPORT type
+#else // not making nor using DLL
+    #define WXDLLIMPEXP_ADV
+    #define WXDLLIMPEXP_DATA_ADV(type) type
+#endif
+
+#ifdef WXMAKINGDLL_ODBC
+    #define WXDLLIMPEXP_ODBC WXEXPORT
+    #define WXDLLIMPEXP_DATA_ODBC(type) WXEXPORT type
+#elif defined(WXUSINGDLL)
+    #define WXDLLIMPEXP_ODBC WXIMPORT
+    #define WXDLLIMPEXP_DATA_ODBC(type) WXIMPORT type
+#else // not making nor using DLL
+    #define WXDLLIMPEXP_ODBC
+    #define WXDLLIMPEXP_DATA_ODBC(type) type
+#endif
+
+#ifdef WXMAKINGDLL_DBGRID
+    #define WXDLLIMPEXP_DBGRID WXEXPORT
+    #define WXDLLIMPEXP_DATA_DBGRID(type) WXEXPORT type
+#elif defined(WXUSINGDLL)
+    #define WXDLLIMPEXP_DBGRID WXIMPORT
+    #define WXDLLIMPEXP_DATA_DBGRID(type) WXIMPORT type
+#else // not making nor using DLL
+    #define WXDLLIMPEXP_DBGRID
+    #define WXDLLIMPEXP_DATA_DBGRID(type) type
+#endif
+
 #ifdef WXMAKINGDLL_HTML
     #define WXDLLIMPEXP_HTML WXEXPORT
     #define WXDLLIMPEXP_DATA_HTML(type) WXEXPORT type
@@ -1138,10 +1179,6 @@ enum wxBorder
 
 #define wxFRAME_NO_WINDOW_MENU  0x0100
 
-#if WXWIN_COMPATIBILITY
-#define wxDEFAULT_FRAME wxDEFAULT_FRAME_STYLE
-#endif
-
 #define wxDEFAULT_FRAME_STYLE \
   (wxSYSTEM_MENU | wxRESIZE_BORDER | \
    wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxCLOSE_BOX | \
@@ -1409,6 +1446,7 @@ enum
     wxID_HELP_PROCEDURES,
     wxID_HELP_CONTEXT,
     wxID_CLOSE_ALL,
+    wxID_PREFERENCES ,
 
     wxID_CUT = 5030,
     wxID_COPY,
@@ -1776,7 +1814,8 @@ enum wxKeyCode
 
     WXK_WINDOWS_LEFT,
     WXK_WINDOWS_RIGHT,
-    WXK_WINDOWS_MENU
+    WXK_WINDOWS_MENU ,
+    WXK_COMMAND
 };
 
 #if wxUSE_HOTKEY
@@ -2013,7 +2052,7 @@ typedef ControlHandle   WXWidget;
 #ifdef __WXCOCOA__
 
 // NOTE: This ought to work with other compilers too, but I'm being cautious
-#if defined(__GNUC__) && defined(__APPLE__)
+#if (defined(__GNUC__) && defined(__APPLE__)) || defined(__MWERKS__)
 /* It's desirable to have type safety for Objective-C(++) code as it does
 at least catch typos of method names among other things.  However, it
 is not possible to declare an Objective-C class from plain old C or C++
@@ -2033,7 +2072,7 @@ typedef klass *WX_##klass
 typedef struct klass *WX_##klass
 #endif // defined(__OBJC__)
 
-#else // not GNU
+#else // not Apple's GNU or CodeWarrior
 #warning "Objective-C types will not be checked by the compiler."
 // NOTE: typedef struct objc_object *id;
 // IOW, we're declaring these using the id type without using that name,
@@ -2043,7 +2082,7 @@ typedef struct klass *WX_##klass
 #define DECLARE_WXCOCOA_OBJC_CLASS(klass) \
 typedef struct objc_object *WX_##klass
 
-#endif // defined(__GNUC__) && defined(__APPLE__)
+#endif // (defined(__GNUC__) && defined(__APPLE__)) || defined(__MWERKS__)
 
 DECLARE_WXCOCOA_OBJC_CLASS(NSApplication);
 DECLARE_WXCOCOA_OBJC_CLASS(NSBitmapImageRep);
@@ -2056,11 +2095,16 @@ DECLARE_WXCOCOA_OBJC_CLASS(NSImage);
 DECLARE_WXCOCOA_OBJC_CLASS(NSLayoutManager);
 DECLARE_WXCOCOA_OBJC_CLASS(NSMenu);
 DECLARE_WXCOCOA_OBJC_CLASS(NSMenuItem);
+DECLARE_WXCOCOA_OBJC_CLASS(NSMutableArray);
+DECLARE_WXCOCOA_OBJC_CLASS(NSNotification);
 DECLARE_WXCOCOA_OBJC_CLASS(NSPanel);
+DECLARE_WXCOCOA_OBJC_CLASS(NSScrollView);
+DECLARE_WXCOCOA_OBJC_CLASS(NSTableColumn);
 DECLARE_WXCOCOA_OBJC_CLASS(NSTableView);
 DECLARE_WXCOCOA_OBJC_CLASS(NSTextContainer);
 DECLARE_WXCOCOA_OBJC_CLASS(NSTextField);
 DECLARE_WXCOCOA_OBJC_CLASS(NSTextStorage);
+DECLARE_WXCOCOA_OBJC_CLASS(NSThread);
 DECLARE_WXCOCOA_OBJC_CLASS(NSWindow);
 DECLARE_WXCOCOA_OBJC_CLASS(NSView);
 typedef WX_NSView WXWidget; // wxWindows BASE definition
@@ -2130,7 +2174,7 @@ typedef int             (__stdcall *WXFARPROC)();
 #endif // __WXMSW__
 
 
-#if defined(__WXPM__)
+#if defined(__WXPM__) || defined(__EMX__)
 #ifdef __EMX__
 /* Need a well-known type for WXFARPROC
    below. MPARAM is typedef'ed too late. */
@@ -2163,7 +2207,9 @@ typedef unsigned long   HIMAGELIST;
 typedef unsigned long   HGLOBAL;
 typedef unsigned long   DWORD;
 typedef unsigned short  WORD;
+#endif // WXPM || EMX
 
+#if defined (__WXPM__)
 // WIN32 graphics types for OS/2 GPI
 
 // RGB under OS2 is more like a PALETTEENTRY struct under Windows so we need a real RGB def