]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/defs.h
Listctrl updates
[wxWidgets.git] / include / wx / defs.h
index b57ca708429d07b7a6400f6e14fd02f9159d6726..06da9d41aab181ea1789a2cfe0607108f95f2090 100644 (file)
@@ -21,6 +21,7 @@
 #include "glib.h"
 #include "gdk/gdk.h"
 #include "gtk/gtk.h"
 #include "glib.h"
 #include "gdk/gdk.h"
 #include "gtk/gtk.h"
+#include "wx/gtk/win_gtk.h"
 
 #endif
 
 
 #endif
 
 #include "wx/version.h"
 
 // Helps SGI compilation, apparently
 #include "wx/version.h"
 
 // Helps SGI compilation, apparently
-#if defined(__SGI__) 
+#if defined(__SGI__)
 #if defined(__GNUG__)
 #define __need_wchar_t
 #else
 #if defined(__GNUG__)
 #define __need_wchar_t
 #else
-/* Note I use the term __SGI_CC__ for both cc and CC, its not a good idea to 
+/* Note I use the term __SGI_CC__ for both cc and CC, its not a good idea to
  * mix gcc and cc/CC, the name mangling is different */
 #define __SGI_CC__
 #endif
 #endif
 
  * mix gcc and cc/CC, the name mangling is different */
 #define __SGI_CC__
 #endif
 #endif
 
-// Eliminate double/float warnings
+// suppress some Visual C++ warnings
 #ifdef _MSC_VER
 #ifdef _MSC_VER
-# pragma warning(disable:4244)
+#   pragma warning(disable:4244)    // cobversion from double to float
+#   pragma warning(disable:4100)    // unreferenced formal parameter
 #endif
 
 #endif
 
-
 //////////////////////////////////////////////////////////////////////////////////
 // Currently Only MS-Windows/NT, XView and Motif are supported
 //
 //////////////////////////////////////////////////////////////////////////////////
 // Currently Only MS-Windows/NT, XView and Motif are supported
 //
@@ -56,6 +57,7 @@
 # define __X__
 #endif
 
 # define __X__
 #endif
 
+#ifdef __WXMSW__
 // wxWindows checks for WIN32, not __WIN32__
 #if ((defined(WIN32) || defined(__NT__)) && !defined(__WIN32__) && !defined(__WXSTUBS__))
 #define __WIN32__
 // wxWindows checks for WIN32, not __WIN32__
 #if ((defined(WIN32) || defined(__NT__)) && !defined(__WIN32__) && !defined(__WXSTUBS__))
 #define __WIN32__
@@ -69,6 +71,8 @@
 #define __WIN95__
 #endif
 
 #define __WIN95__
 #endif
 
+#endif // wxMSW
+
 // Make sure the environment is set correctly
 #if defined(__WXMSW__) && defined(__X__)
 # error "Target can't be both X and Windows"
 // Make sure the environment is set correctly
 #if defined(__WXMSW__) && defined(__X__)
 # error "Target can't be both X and Windows"
 typedef unsigned int bool;
 #endif
 
 typedef unsigned int bool;
 #endif
 
+#if defined(_MSC_VER) && (_MSC_VER == 1020)
+#define bool unsigned int
+#endif
+
 #if ( defined(_MSC_VER) && (_MSC_VER <= 800) ) || defined(__GNUWIN32__)
 #define byte unsigned char
 #endif
 #if ( defined(_MSC_VER) && (_MSC_VER <= 800) ) || defined(__GNUWIN32__)
 #define byte unsigned char
 #endif
@@ -145,7 +153,7 @@ typedef int wxWindowID;
 #  ifdef WXMAKINGDLL
 #    define WXDLLEXPORT __declspec( dllexport )
 #    define WXDLLEXPORT_DATA(type) __declspec( dllexport ) type
 #  ifdef WXMAKINGDLL
 #    define WXDLLEXPORT __declspec( dllexport )
 #    define WXDLLEXPORT_DATA(type) __declspec( dllexport ) type
-#    define WXDLLEXPORT_CTORFN __declspec( dllexport )
+#    define WXDLLEXPORT_CTORFN // __declspec( dllexport )
 #  elif defined(WXUSINGDLL)
 #    define WXDLLEXPORT __declspec( dllimport )
 #    define WXDLLEXPORT_DATA(type) __declspec( dllimport ) type
 #  elif defined(WXUSINGDLL)
 #    define WXDLLEXPORT __declspec( dllimport )
 #    define WXDLLEXPORT_DATA(type) __declspec( dllimport ) type
@@ -206,13 +214,13 @@ enum  ErrCode
 //  be considered as an error by some overzealous debugging implementations of
 //  the library, so we do it ourselves)
 #if defined(__SGI_CC__)
 //  be considered as an error by some overzealous debugging implementations of
 //  the library, so we do it ourselves)
 #if defined(__SGI_CC__)
-// Okay this is bad styling, but the native SGI compiler is very picky, it 
+// Okay this is bad styling, but the native SGI compiler is very picky, it
 // wont let you compare/assign between a NULL (void *) and another pointer
 // wont let you compare/assign between a NULL (void *) and another pointer
-// type. To be really clean we'd need to pass in another argument, the type 
-// of p. 
-// Also note the use of 0L, this would allow future possible 64bit support 
-// (as yet untested) by ensuring that we zero all the bits in a pointer 
-// (which is always the same length as a long (at least with the LP64 standard) 
+// type. To be really clean we'd need to pass in another argument, the type
+// of p.
+// Also note the use of 0L, this would allow future possible 64bit support
+// (as yet untested) by ensuring that we zero all the bits in a pointer
+// (which is always the same length as a long (at least with the LP64 standard)
 // --- offer aug 98
 #define wxDELETE(p)      if ( (p) ) { delete (p); p = 0L; }
 #else
 // --- offer aug 98
 #define wxDELETE(p)      if ( (p) ) { delete (p); p = 0L; }
 #else
@@ -239,7 +247,7 @@ WXDLLEXPORT_DATA(extern const bool) wxFalse;
 // ----------------------------------------------------------------------------
 
 // OS
 // ----------------------------------------------------------------------------
 
 // OS
-#if     defined(__HPUX__) || defined(____SVR4____) || defined(__LINUX__) || defined(__sgi )
+#if     defined(__HPUX__) || defined(____SVR4____) || defined(__LINUX__) || defined(__sgi ) || defined(__unix__)
   #ifndef __UNIX__
     #define __UNIX__
   #endif
   #ifndef __UNIX__
     #define __UNIX__
   #endif
@@ -266,7 +274,7 @@ WXDLLEXPORT_DATA(extern const bool) wxFalse;
 // warnings just must be disabled
 #ifdef  __VISUALC__
   #pragma warning(disable: 4514) // unreferenced inline func has been removed
 // warnings just must be disabled
 #ifdef  __VISUALC__
   #pragma warning(disable: 4514) // unreferenced inline func has been removed
-/* 
+/*
   you might be tempted to disable this one also: triggered by CHECK and FAIL
   macros in debug.h, but it's, overall, is a rather useful one, so I leave it
   and will try to find some way to disable this warning just for CHECK/FAIL.
   you might be tempted to disable this one also: triggered by CHECK and FAIL
   macros in debug.h, but it's, overall, is a rather useful one, so I leave it
   and will try to find some way to disable this warning just for CHECK/FAIL.
@@ -276,6 +284,19 @@ WXDLLEXPORT_DATA(extern const bool) wxFalse;
 
 #endif  // VC++
 
 
 #endif  // VC++
 
+#if _MSC_VER > 1010
+#undef try
+#undef except
+#undef finally
+#define except(x) catch(...)
+#endif
+
+// where should i put this? we need to make sure of this as it breaks
+// the <iostream> code.
+#if !wxUSE_IOSTREAMH && defined(__WXDEBUG__)
+#undef __WXDEBUG__
+#endif
+
 // Callback function type definition
 typedef void (*wxFunction) (wxObject&, wxEvent&);
 
 // Callback function type definition
 typedef void (*wxFunction) (wxObject&, wxEvent&);
 
@@ -290,7 +311,7 @@ typedef void (*wxFunction) (wxObject&, wxEvent&);
  * Window (cross-group) styles now take up the first half
  * of the flag, and control-specific styles the
  * second half.
  * Window (cross-group) styles now take up the first half
  * of the flag, and control-specific styles the
  * second half.
- * 
+ *
  */
 
 /*
  */
 
 /*
@@ -369,7 +390,7 @@ typedef void (*wxFunction) (wxObject&, wxEvent&);
 /*
  * wxToolBar style flags
  */
 /*
  * wxToolBar style flags
  */
+
 #define wxTB_3DBUTTONS      0x8000
 #define wxTB_HORIZONTAL     0x0002
 #define wxTB_VERTICAL       0x0004
 #define wxTB_3DBUTTONS      0x8000
 #define wxTB_HORIZONTAL     0x0002
 #define wxTB_VERTICAL       0x0004
@@ -379,7 +400,7 @@ typedef void (*wxFunction) (wxObject&, wxEvent&);
 /*
  * Apply to all panel items
  */
 /*
  * Apply to all panel items
  */
+
 #define wxCOLOURED          0x0800
 // Alignment for panel item labels: replaces characters with zeros
 // when creating label, so spaces can be included in string for alignment.
 #define wxCOLOURED          0x0800
 // Alignment for panel item labels: replaces characters with zeros
 // when creating label, so spaces can be included in string for alignment.
@@ -441,7 +462,7 @@ typedef void (*wxFunction) (wxObject&, wxEvent&);
 /*
  * wxSlider flags
  */
 /*
  * wxSlider flags
  */
+
 #define wxSL_HORIZONTAL      wxHORIZONTAL
 #define wxSL_VERTICAL        wxVERTICAL
 // The next one is obsolete - use scroll events instead
 #define wxSL_HORIZONTAL      wxHORIZONTAL
 #define wxSL_VERTICAL        wxVERTICAL
 // The next one is obsolete - use scroll events instead
@@ -459,7 +480,7 @@ typedef void (*wxFunction) (wxObject&, wxEvent&);
 /*
  * wxScrollBar flags
  */
 /*
  * wxScrollBar flags
  */
+
 #define wxSB_HORIZONTAL      wxHORIZONTAL
 #define wxSB_VERTICAL        wxVERTICAL
 
 #define wxSB_HORIZONTAL      wxHORIZONTAL
 #define wxSB_VERTICAL        wxVERTICAL
 
@@ -825,6 +846,7 @@ enum {
 #define wxID_CLEAR              5033
 #define wxID_FIND               5034
 #define wxID_DUPLICATE          5035
 #define wxID_CLEAR              5033
 #define wxID_FIND               5034
 #define wxID_DUPLICATE          5035
+#define wxID_SELECTALL          5036
 
 #define wxID_FILE1              5050
 #define wxID_FILE2              5051
 
 #define wxID_FILE1              5050
 #define wxID_FILE2              5051
@@ -843,6 +865,11 @@ enum {
 #define wxID_NO                 5104
 #define wxID_STATIC             5105
 
 #define wxID_NO                 5104
 #define wxID_STATIC             5105
 
+#define wxID_HIGHEST            5999
+
+// Shortcut for easier dialog-unit-to-pixel conversion
+#define wxDLG_UNIT(parent, pt) parent->ConvertDialogToPixels(pt)
+
 #ifdef __WXMSW__
 // Stand-ins for Windows types, to avoid
 // #including all of windows.h
 #ifdef __WXMSW__
 // Stand-ins for Windows types, to avoid
 // #including all of windows.h
@@ -873,6 +900,7 @@ typedef void *          WXRGNDATA;
 typedef void *          WXMSG;
 typedef unsigned long   WXHCONV;
 typedef unsigned long   WXHKEY;
 typedef void *          WXMSG;
 typedef unsigned long   WXHCONV;
 typedef unsigned long   WXHKEY;
+typedef unsigned long   WXHTREEITEM;
 typedef void *          WXDRAWITEMSTRUCT;
 typedef void *          WXMEASUREITEMSTRUCT;
 typedef void *          WXLPCREATESTRUCT;
 typedef void *          WXDRAWITEMSTRUCT;
 typedef void *          WXMEASUREITEMSTRUCT;
 typedef void *          WXLPCREATESTRUCT;
@@ -893,6 +921,14 @@ typedef void*           WXColormap;
 typedef void            WXDisplay;
 typedef void            WXEvent;
 typedef void*           WXCursor;
 typedef void            WXDisplay;
 typedef void            WXEvent;
 typedef void*           WXCursor;
+typedef void*           WXPixmap;
+typedef void*           WXFontStructPtr;
+typedef void*           WXGC;
+typedef void*           WXRegion;
+typedef void*           WXFont;
+typedef void*           WXImage;
+typedef void*           WXCursor;
+typedef void*           WXFontList;
 #endif
 
 #endif
 #endif
 
 #endif