summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2011-01-20 13:22:30 +0000
committerManolo Gouy <Manolo>2011-01-20 13:22:30 +0000
commita306fe46d39e5c54f90f288846da7b9a0e762cb5 (patch)
tree5173a649518e6048e3dbe40f5d3d512f02670a83
parent30c1eed80b89dcf9ec17d2adbad2b867df57adf8 (diff)
Redefined fl_xid() as an inline function when used inside the FLTK library.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8295 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
-rw-r--r--FL/win32.H6
-rw-r--r--FL/x.H9
-rw-r--r--src/Fl_win32.cxx2
-rw-r--r--src/Fl_x.cxx2
4 files changed, 14 insertions, 5 deletions
diff --git a/FL/win32.H b/FL/win32.H
index 4a95b32de..27cfdc25e 100644
--- a/FL/win32.H
+++ b/FL/win32.H
@@ -101,9 +101,13 @@ extern FL_EXPORT HPALETTE fl_palette; // non-zero only on 8-bit displays!
extern FL_EXPORT void fl_release_dc(HWND w, HDC dc);
extern FL_EXPORT void fl_save_dc( HWND w, HDC dc);
+inline Window fl_xid(const Fl_Window* w) { Fl_X *temp = Fl_X::i(w); return temp ? temp->xid : 0; }
+
+#else
+FL_EXPORT Window fl_xid_(const Fl_Window* w);
+#define fl_xid(w) fl_xid_(w)
#endif // FL_LIBRARY || FL_INTERNALS
-extern FL_EXPORT Window fl_xid(const Fl_Window*w);
FL_EXPORT Fl_Window* fl_find(Window xid);
FL_EXPORT void fl_clip_region(Fl_Region);
diff --git a/FL/x.H b/FL/x.H
index ce0cdd736..c022246eb 100644
--- a/FL/x.H
+++ b/FL/x.H
@@ -163,10 +163,15 @@ public:
extern FL_EXPORT char fl_override_redirect; // hack into Fl_X::make_xid()
extern FL_EXPORT int fl_background_pixel; // hack into Fl_X::make_xid()
+inline Window fl_xid(const Fl_Window* w) { return Fl_X::i(w)->xid; }
+
+#else
+
+extern Window fl_xid_(const Fl_Window* w);
+#define fl_xid(w) fl_xid_(w)
+
#endif // FL_LIBRARY || FL_INTERNALS
-// convert xid <-> Fl_Window:
-Window fl_xid(const Fl_Window*w);
FL_EXPORT Fl_Window* fl_find(Window xid);
diff --git a/src/Fl_win32.cxx b/src/Fl_win32.cxx
index 0c276636d..717a07e1e 100644
--- a/src/Fl_win32.cxx
+++ b/src/Fl_win32.cxx
@@ -1933,7 +1933,7 @@ Fl_Region XRectangleRegion(int x, int y, int w, int h) {
return CreatePolygonRgn(pt, 4, ALTERNATE);
}
-Window fl_xid(const Fl_Window *w) {
+Window fl_xid_(const Fl_Window *w) {
Fl_X *temp = Fl_X::i(w);
return temp ? temp->xid : 0;
}
diff --git a/src/Fl_x.cxx b/src/Fl_x.cxx
index 47c93619b..81e1bcf0c 100644
--- a/src/Fl_x.cxx
+++ b/src/Fl_x.cxx
@@ -1880,7 +1880,7 @@ void Fl_Window::make_current() {
#endif
}
-Window fl_xid(const Fl_Window* w)
+Window fl_xid_(const Fl_Window* w)
{
return Fl_X::i(w)->xid;
}