summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2018-06-26 07:38:54 +0000
committerManolo Gouy <Manolo>2018-06-26 07:38:54 +0000
commit82c7a1baa77c7a618098ada84841494a8b3d24ad (patch)
tree796c33583242784dd3559d291374a064b6e65cec /src
parentca4601031cd7540b1a0e8108cb2939b40d8ad57d (diff)
Move Fl_Sys_Menu_Bar_Driver.H from FL/ to src/
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12972 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
-rw-r--r--src/Fl_MacOS_Sys_Menu_Bar.mm3
-rw-r--r--src/Fl_Sys_Menu_Bar.cxx2
-rw-r--r--src/Fl_Sys_Menu_Bar_Driver.H63
-rw-r--r--src/drivers/Cocoa/Fl_MacOS_Sys_Menu_Bar_Driver.H2
4 files changed, 66 insertions, 4 deletions
diff --git a/src/Fl_MacOS_Sys_Menu_Bar.mm b/src/Fl_MacOS_Sys_Menu_Bar.mm
index a73caa3b1..8b2987d58 100644
--- a/src/Fl_MacOS_Sys_Menu_Bar.mm
+++ b/src/Fl_MacOS_Sys_Menu_Bar.mm
@@ -18,7 +18,6 @@
#if defined(__APPLE__)
-#include <FL/Fl_Sys_Menu_Bar_Driver.H>
#include <FL/platform.H>
#include "drivers/Cocoa/Fl_MacOS_Sys_Menu_Bar_Driver.H"
#include "flstring.h"
@@ -26,7 +25,7 @@
#include <ctype.h>
#include <stdarg.h>
-#import <Cocoa/Cocoa.h> // keep this after include of Fl_Sys_Menu_Bar_Driver.H because of check() conflict
+#import <Cocoa/Cocoa.h> // keep this after include of Fl_MacOS_Sys_Menu_Bar_Driver.H because of check() conflict
typedef const Fl_Menu_Item *pFl_Menu_Item;
diff --git a/src/Fl_Sys_Menu_Bar.cxx b/src/Fl_Sys_Menu_Bar.cxx
index 5c9800908..c93f26b2e 100644
--- a/src/Fl_Sys_Menu_Bar.cxx
+++ b/src/Fl_Sys_Menu_Bar.cxx
@@ -17,7 +17,7 @@
//
-#include <FL/Fl_Sys_Menu_Bar_Driver.H>
+#include "Fl_Sys_Menu_Bar_Driver.H"
#include <FL/platform.H>
diff --git a/src/Fl_Sys_Menu_Bar_Driver.H b/src/Fl_Sys_Menu_Bar_Driver.H
new file mode 100644
index 000000000..7d869ae64
--- /dev/null
+++ b/src/Fl_Sys_Menu_Bar_Driver.H
@@ -0,0 +1,63 @@
+//
+// "$Id$"
+//
+// system menu bar widget for the Fast Light Tool Kit (FLTK).
+//
+// Copyright 1998-2017 by Bill Spitzak and others.
+//
+// This library is free software. Distribution and use rights are outlined in
+// the file "COPYING" which should have been included with this file. If this
+// file is missing or damaged, see the license at:
+//
+// http://www.fltk.org/COPYING.php
+//
+// Please report all bugs and problems on the following page:
+//
+// http://www.fltk.org/str.php
+//
+
+#ifndef Fl_Sys_Menu_Bar_Driver_H
+#define Fl_Sys_Menu_Bar_Driver_H
+
+#if !defined(FL_DOXYGEN)
+
+#include <FL/Fl_Sys_Menu_Bar.H>
+
+class Fl_Sys_Menu_Bar_Driver {
+ friend class Fl_Sys_Menu_Bar;
+public:
+ static Fl_Sys_Menu_Bar::window_menu_style_enum window_menu_style_;
+ static Fl_Sys_Menu_Bar_Driver *driver_; // to be assigned with a unique object of this class or of a derived class
+ Fl_Sys_Menu_Bar *bar;
+ Fl_Sys_Menu_Bar_Driver();
+ virtual ~Fl_Sys_Menu_Bar_Driver();
+ virtual void update() {}
+ virtual void draw() { bar->Fl_Menu_Bar::draw();}
+ virtual void about(Fl_Callback *cb, void *data) {}
+ virtual int add(const char* label, int shortcut, Fl_Callback *cb, void *user_data, int flags) {
+ return bar->Fl_Menu_Bar::add(label, shortcut, cb, user_data, flags);
+ }
+ virtual int add(const char* str) { return bar->Fl_Menu_Bar::add(str); }
+ virtual int insert(int index, const char* label, int shortcut, Fl_Callback *cb, void *user_data, int flags) {
+ return bar->Fl_Menu_Bar::insert(index, label, shortcut, cb, user_data, flags);
+ }
+ virtual void menu(const Fl_Menu_Item *m) { bar->Fl_Menu_Bar::menu(m); }
+ virtual void shortcut(int i, int s) { bar->Fl_Menu_Bar::shortcut(i, s); }
+ virtual void setonly(Fl_Menu_Item *item) { bar->Fl_Menu_Bar::setonly(item); }
+ virtual void clear() { bar->Fl_Menu_Bar::clear(); }
+ virtual int clear_submenu(int index) { return bar->Fl_Menu_Bar::clear_submenu(index);}
+ virtual void remove(int index) { bar->Fl_Menu_Bar::remove(index); }
+ virtual void replace(int index, const char *name) { bar->Fl_Menu_Bar::replace(index, name); }
+ virtual void mode(int i, int fl) { bar->Fl_Menu_Bar::mode(i, fl); }
+ virtual void create_window_menu() {}
+ static Fl_Sys_Menu_Bar::window_menu_style_enum window_menu_style() { return window_menu_style_; }
+ static void window_menu_style(Fl_Sys_Menu_Bar::window_menu_style_enum style) { window_menu_style_ = style; }
+};
+
+#endif // !defined(FL_DOXYGEN)
+
+#endif // Fl_Sys_Menu_Bar_Driver_H
+
+//
+// End of "$Id$".
+//
diff --git a/src/drivers/Cocoa/Fl_MacOS_Sys_Menu_Bar_Driver.H b/src/drivers/Cocoa/Fl_MacOS_Sys_Menu_Bar_Driver.H
index d3c06a3da..7502947d2 100644
--- a/src/drivers/Cocoa/Fl_MacOS_Sys_Menu_Bar_Driver.H
+++ b/src/drivers/Cocoa/Fl_MacOS_Sys_Menu_Bar_Driver.H
@@ -19,7 +19,7 @@
#ifndef Fl_MacOS_Sys_Menu_Bar_Driver_H
#define Fl_MacOS_Sys_Menu_Bar_Driver_H
-#include <FL/Fl_Sys_Menu_Bar_Driver.H>
+#include "../../Fl_Sys_Menu_Bar_Driver.H"
class Fl_MacOS_Sys_Menu_Bar_Driver : public Fl_Sys_Menu_Bar_Driver {
public: