From 56e145a1c8cafea814f03cec951bde2753d234f5 Mon Sep 17 00:00:00 2001 From: Manolo Gouy Date: Thu, 31 Mar 2016 11:01:07 +0000 Subject: Complete removing platform-dependent code from the Fl.H header file. Type FL_SOCKET is now declared in Fl_System_Driver.H with all other platform-dependent public types. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11484 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- FL/Fl.H | 18 +----------------- FL/Fl_System_Driver.H | 13 +++++++++++-- src/Fl_System_Driver.cxx | 5 +++++ src/drivers/Darwin/Fl_Darwin_System_Driver.H | 1 + src/drivers/Posix/Fl_Posix_System_Driver.H | 1 + 5 files changed, 19 insertions(+), 19 deletions(-) diff --git a/FL/Fl.H b/FL/Fl.H index 44546427b..24e9ec458 100644 --- a/FL/Fl.H +++ b/FL/Fl.H @@ -23,6 +23,7 @@ #ifndef Fl_H # define Fl_H +#include #ifdef FLTK_HAVE_CAIRO # include #endif @@ -48,23 +49,6 @@ class Fl_Image; struct Fl_Label; class Fl_Screen_Driver; -// Keep avoiding having the socket deps at that level but mke sure it will work in both 32 & 64 bit builds -#if defined(WIN32) && !defined(__CYGWIN__) -# if defined(_WIN64) -# define FL_SOCKET unsigned __int64 -# else -# define FL_SOCKET int -# endif -#elif defined(__APPLE__) // PORTME: Fl_System_Driver - socket types -# define FL_SOCKET int -#elif defined(FL_PORTING) -# pragma message "FL_PORTING: define a type for FL_SOCKET" -# define FL_SOCKET int // default if not ported -# undef check -#else -# define FL_SOCKET int -#endif - // Pointers you can use to change FLTK to a foreign language. // Note: Similar pointers are defined in FL/fl_ask.H and src/fl_ask.cxx diff --git a/FL/Fl_System_Driver.H b/FL/Fl_System_Driver.H index 902e8bc70..9d6bf3220 100644 --- a/FL/Fl_System_Driver.H +++ b/FL/Fl_System_Driver.H @@ -25,30 +25,39 @@ #define FL_SYSTEM_DRIVER_H #include -#include +#include #include +// platform-dependent types are declared here #ifdef __APPLE__ typedef struct CGContext* Fl_Offscreen; typedef struct CGImage* Fl_Bitmask; typedef struct flCocoaRegion* Fl_Region; +typedef int FL_SOCKET; #elif defined(WIN32) typedef struct HBITMAP__ *HBITMAP; typedef HBITMAP Fl_Offscreen; typedef HBITMAP Fl_Bitmask; typedef struct HRGN__ *Fl_Region; +# if defined(_WIN64) +typedef unsigned __int64 FL_SOCKET; +# else +typedef int FL_SOCKET; +# endif #elif defined(FL_PORTING) # pragma message "FL_PORTING: define OS-dependent types" typedef void* Fl_Offscreen; typedef void* Fl_Bitmask; typedef void *Fl_Region; +typedef int FL_SOCKET; #else typedef unsigned long Fl_Offscreen; typedef unsigned long Fl_Bitmask; typedef struct _XRegion *Fl_Region; +typedef int FL_SOCKET; #endif // __APPLE__ @@ -91,7 +100,7 @@ public: // implement so text-editing widgets support dead keys virtual int compose(int &del) {del = 0; return 0;} // default implementation may be enough - virtual void compose_reset() { Fl::compose_state = 0; } + virtual void compose_reset(); // implement to support drag-n-drop. use_selection = 1 means the GUI is welcome to display // the selected text during the D&D operation virtual int dnd(int use_selection = 0) {return 0;} diff --git a/src/Fl_System_Driver.cxx b/src/Fl_System_Driver.cxx index 686d03ecb..60406bc09 100644 --- a/src/Fl_System_Driver.cxx +++ b/src/Fl_System_Driver.cxx @@ -18,6 +18,7 @@ #include +#include #include #include #include @@ -371,6 +372,10 @@ int Fl_System_Driver::clocale_printf(FILE *output, const char *format, va_list a return vfprintf(output, format, args); } +void Fl_System_Driver::compose_reset() { + Fl::compose_state = 0; +} + // // End of "$Id$". // diff --git a/src/drivers/Darwin/Fl_Darwin_System_Driver.H b/src/drivers/Darwin/Fl_Darwin_System_Driver.H index 29a658d5f..6926487ba 100644 --- a/src/drivers/Darwin/Fl_Darwin_System_Driver.H +++ b/src/drivers/Darwin/Fl_Darwin_System_Driver.H @@ -26,6 +26,7 @@ #define FL_DARWIN_SYSTEM_DRIVER_H #include +#include #include #include #include diff --git a/src/drivers/Posix/Fl_Posix_System_Driver.H b/src/drivers/Posix/Fl_Posix_System_Driver.H index dc5fe83a2..c1f9988f5 100644 --- a/src/drivers/Posix/Fl_Posix_System_Driver.H +++ b/src/drivers/Posix/Fl_Posix_System_Driver.H @@ -26,6 +26,7 @@ #define FL_POSIX_SYSTEM_DRIVER_H #include +#include #include #include #include -- cgit v1.2.3