FLTK 1.3.3
Fl_Sys_Menu_Bar.H
1 //
2 // "$Id: Fl_Sys_Menu_Bar.H 10102 2014-02-11 17:59:20Z manolo $"
3 //
4 // MacOS system menu bar header file for the Fast Light Tool Kit (FLTK).
5 //
6 // Copyright 1998-2010 by Bill Spitzak and others.
7 //
8 // This library is free software. Distribution and use rights are outlined in
9 // the file "COPYING" which should have been included with this file. If this
10 // file is missing or damaged, see the license at:
11 //
12 // http://www.fltk.org/COPYING.php
13 //
14 // Please report all bugs and problems on the following page:
15 //
16 // http://www.fltk.org/str.php
17 //
18 
19 #ifndef Fl_Sys_Menu_Bar_H
20 #define Fl_Sys_Menu_Bar_H
21 
22 #include "Fl_Menu_Bar.H"
23 #include "x.H"
24 
25 #if defined(__APPLE__) || defined(FL_DOXYGEN)
26 
41 class FL_EXPORT Fl_Sys_Menu_Bar : public Fl_Menu_Bar {
42 protected:
43  void update();
44  void draw();
45 public:
46  Fl_Sys_Menu_Bar(int x,int y,int w,int h,const char *l=0);
47  ~Fl_Sys_Menu_Bar();
50  const Fl_Menu_Item *menu() const {return Fl_Menu_::menu();}
51  void menu(const Fl_Menu_Item *m);
52  int add(const char* label, int shortcut, Fl_Callback*, void *user_data=0, int flags=0);
56  int add(const char* label, const char* shortcut, Fl_Callback* cb, void *user_data=0, int flags=0) {
57  return add(label, fl_old_shortcut(shortcut), cb, user_data, flags);
58  }
59  int add(const char* str);
60  int insert(int index, const char* label, int shortcut, Fl_Callback *cb, void *user_data=0, int flags=0);
64  int insert(int index, const char* label, const char* shortcut, Fl_Callback *cb, void *user_data=0, int flags=0) {
65  return insert(index, label, fl_old_shortcut(shortcut), cb, user_data, flags);
66  }
67  void remove(int n);
68  void replace(int rank, const char *name);
72  void clear();
76  int clear_submenu(int index);
79  void global() {};
82  void mode (int i, int fl) {
83  Fl_Menu_::mode(i, fl);
84  update();
85  }
88  int mode(int i) const { return Fl_Menu_::mode(i); }
91  void shortcut (int i, int s) { Fl_Menu_::shortcut(i, s); update(); };
92 };
93 
94 #else
95 
97 
98 #endif // defined(__APPLE__) || defined(FL_DOXYGEN)
99 
100 #endif // Fl_Sys_Menu_Bar_H
101 
102 //
103 // End of "$Id: Fl_Sys_Menu_Bar.H 10102 2014-02-11 17:59:20Z manolo $".
104 //
void global()
Make the shortcuts for this menu work no matter what window has the focus when you type it...
Definition: Fl_Sys_Menu_Bar.H:79
void mode(int i, int fl)
Sets the flags of item i.
Definition: Fl_Sys_Menu_Bar.H:82
FL_EXPORT unsigned int fl_old_shortcut(const char *s)
Emulation of XForms named shortcuts.
Definition: fl_shortcut.cxx:331
void draw()
Draws the widget.
Definition: Fl_Menu_Bar.cxx:23
This widget provides a standard menubar interface.
Definition: Fl_Menu_Bar.H:53
int mode(int i) const
Gets the flags of item i.
Definition: Fl_Sys_Menu_Bar.H:88
void clear()
Same as menu(NULL), set the array pointer to null, indicating a zero-length menu. ...
Definition: Fl_Menu_.cxx:370
int insert(int index, const char *, int shortcut, Fl_Callback *, void *=0, int=0)
Inserts a new menu item at the specified index position.
Definition: Fl_Menu_add.cxx:356
int insert(int index, const char *label, const char *shortcut, Fl_Callback *cb, void *user_data=0, int flags=0)
Insert a new menu item.
Definition: Fl_Sys_Menu_Bar.H:64
void( Fl_Callback)(Fl_Widget *, void *)
Default callback type definition for all fltk widgets (by far the most used)
Definition: Fl_Widget.H:49
int add(const char *label, const char *shortcut, Fl_Callback *cb, void *user_data=0, int flags=0)
Adds a new menu item.
Definition: Fl_Sys_Menu_Bar.H:56
A class to create, modify and delete menus that appear on Mac OS X in the menu bar at the top of the ...
Definition: Fl_Sys_Menu_Bar.H:41
void shortcut(int i, int s)
Changes the shortcut of item i to n.
Definition: Fl_Menu_.H:117
const Fl_Menu_Item * menu() const
Return the system menu's array of Fl_Menu_Item's.
Definition: Fl_Sys_Menu_Bar.H:50
void shortcut(int i, int s)
Changes the shortcut of item i to n.
Definition: Fl_Sys_Menu_Bar.H:91
int clear_submenu(int index)
Clears the specified submenu pointed to by index of all menu items.
Definition: Fl_Menu_.cxx:414
The Fl_Menu_Item structure defines a single menu item that is used by the Fl_Menu_ class...
Definition: Fl_Menu_Item.H:109
int add(const char *, int shortcut, Fl_Callback *, void *=0, int=0)
Adds a new menu item.
Definition: Fl_Menu_add.cxx:319
void mode(int i, int fl)
Sets the flags of item i.
Definition: Fl_Menu_.H:119
void replace(int, const char *)
Changes the text of item i.
Definition: Fl_Menu_add.cxx:450
const Fl_Menu_Item * menu() const
Returns a pointer to the array of Fl_Menu_Items.
Definition: Fl_Menu_.H:96