From e08464124d53a622f836f981234e4401dc4ef425 Mon Sep 17 00:00:00 2001 From: Tobias Doerffel Date: Tue, 14 Apr 2009 16:30:27 +0200 Subject: [PATCH] Reverted accidently commited stuff by Skiessi That's it. --- plugins/zynaddsubfx/fltk/FL/Fl_Menu_Item.H | 2 +- plugins/zynaddsubfx/fltk/FL/x.H | 26 +++++++++++++++++++++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/plugins/zynaddsubfx/fltk/FL/Fl_Menu_Item.H b/plugins/zynaddsubfx/fltk/FL/Fl_Menu_Item.H index 80ee5b272..33e520a67 100644 --- a/plugins/zynaddsubfx/fltk/FL/Fl_Menu_Item.H +++ b/plugins/zynaddsubfx/fltk/FL/Fl_Menu_Item.H @@ -88,7 +88,7 @@ struct FL_EXPORT Fl_Menu_Item { void callback(Fl_Callback1*c, long p=0) {callback_=(Fl_Callback*)c; user_data_=(void*)p;} void* user_data() const {return user_data_;} void user_data(void* v) {user_data_ = v;} - long argument() const {return (long long)user_data_;} + long argument() const {return (long)user_data_;} void argument(long v) {user_data_ = (void*)v;} int shortcut() const {return shortcut_;} void shortcut(int s) {shortcut_ = s;} diff --git a/plugins/zynaddsubfx/fltk/FL/x.H b/plugins/zynaddsubfx/fltk/FL/x.H index 88802b98b..3a3139317 100644 --- a/plugins/zynaddsubfx/fltk/FL/x.H +++ b/plugins/zynaddsubfx/fltk/FL/x.H @@ -65,10 +65,34 @@ extern FL_EXPORT int fl_screen; extern FL_EXPORT XVisualInfo *fl_visual; extern FL_EXPORT Colormap fl_colormap; +#if USE_XFT +// access to core fonts +FL_EXPORT XFontStruct* fl_xxfont(); +class Fl_XFont_On_Demand +{ +public: + Fl_XFont_On_Demand(XFontStruct* p = NULL) : ptr(p) { } + Fl_XFont_On_Demand& operator=(const Fl_XFont_On_Demand& x) + { ptr = x.ptr; return *this; } + Fl_XFont_On_Demand& operator=(XFontStruct* p) + { ptr = p; return *this; } + XFontStruct* value() { if (!ptr) { ptr = fl_xxfont(); } return ptr; } + operator XFontStruct*() { return value(); } + XFontStruct& operator*() { return *value(); } + XFontStruct* operator->() { return value(); } + bool operator==(const Fl_XFont_On_Demand& x) { return ptr == x.ptr; } + bool operator!=(const Fl_XFont_On_Demand& x) { return ptr != x.ptr; } +private: + XFontStruct* ptr; +}; +extern FL_EXPORT Fl_XFont_On_Demand fl_xfont; +#else +extern FL_EXPORT XFontStruct* fl_xfont; +#endif + // drawing functions: extern FL_EXPORT GC fl_gc; extern FL_EXPORT Window fl_window; -extern FL_EXPORT XFontStruct* fl_xfont; extern FL_EXPORT void *fl_xftfont; FL_EXPORT ulong fl_xpixel(Fl_Color i); FL_EXPORT ulong fl_xpixel(uchar r, uchar g, uchar b);