diff options
| author | Manolo Gouy <Manolo> | 2010-03-16 14:47:40 +0000 |
|---|---|---|
| committer | Manolo Gouy <Manolo> | 2010-03-16 14:47:40 +0000 |
| commit | b5e2d38b2fbabcf37637cd857fc70d8567978b17 (patch) | |
| tree | fe547af80bda351e7ae0f14e1389a5bfc2d7cd68 | |
| parent | b20ef0bdeb4f9b98d67c189005c98cbed2b6ebb6 (diff) | |
Have class Fl_Sys_Menu_Bar and function fl_mac_set_about appear in Doxygen doc.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7276 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
| -rw-r--r-- | FL/Fl_Sys_Menu_Bar.H | 20 | ||||
| -rw-r--r-- | FL/mac.H | 20 | ||||
| -rw-r--r-- | src/Fl_Sys_Menu_Bar.cxx | 28 | ||||
| -rw-r--r-- | src/Fl_cocoa.mm | 16 |
4 files changed, 49 insertions, 35 deletions
diff --git a/FL/Fl_Sys_Menu_Bar.H b/FL/Fl_Sys_Menu_Bar.H index 79275c7a4..87a4db8e3 100644 --- a/FL/Fl_Sys_Menu_Bar.H +++ b/FL/Fl_Sys_Menu_Bar.H @@ -31,36 +31,48 @@ #include "Fl_Menu_Bar.H" #include "x.H" -#ifdef __APPLE__ +#if defined(__APPLE__) || defined(FL_DOXYGEN) +/** + @brief A class to create, modify and delete menus that appear on Mac OS X in the menu bar at the top of the screen. + * + * On other than Mac OS X platforms, Fl_Sys_Menu_Bar is a synonym of class Fl_Menu_Bar. + */ class FL_EXPORT Fl_Sys_Menu_Bar : public Fl_Menu_Bar { protected: void draw(); public: + /** + @brief The constructor. + * + * On Mac OS X, all arguments are unused. On other platforms they are used as by Fl_Menu_Bar::Fl_Menu_Bar(). + */ Fl_Sys_Menu_Bar(int x,int y,int w,int h,const char *l=0) : Fl_Menu_Bar(x,y,w,h,l) { deactivate(); // don't let the old area take events fl_sys_menu_bar = this; } void menu(const Fl_Menu_Item *m); -#ifdef __APPLE_COCOA__ +#if defined(__APPLE_COCOA__) || defined(FL_DOXYGEN) int add(const char* label, int shortcut, Fl_Callback*, void *user_data=0, int flags=0); void remove(int n); void replace(int rank, const char *name); +#if ! defined(FL_DOXYGEN) enum menuOrItemOperation { itemAtIndex, setKeyEquivalent, setKeyEquivalentModifierMask, setState, initWithTitle, numberOfItems, setSubmenu, setEnabled, addSeparatorItem, setTitle, removeItem, addNewItem, renameItem }; // function doMenuOrItemOperation is in file Fl_cocoa.mm because it contains objective-c code static void *doMenuOrItemOperation( menuOrItemOperation operation, ...); #endif +#endif }; #else typedef Fl_Menu_Bar Fl_Sys_Menu_Bar; -#endif +#endif // defined(__APPLE__) || defined(FL_DOXYGEN) -#endif +#endif // Fl_Sys_Menu_Bar_H // // End of "$Id$". @@ -161,7 +161,6 @@ extern void MacUnmapWindow(Fl_Window*,void *); extern WindowRef MACwindowRef(Fl_Window *w); extern Fl_Region MacRectRegionIntersect(Fl_Region current, int x,int y,int w, int h); extern void MacCollapseWindow(Window w); -extern void fl_mac_set_about( Fl_Callback *cb, void *user_data, int shortcut = 0); #else extern void MacDestroyWindow(Fl_Window*,WindowPtr); extern void MacMapWindow(Fl_Window*,WindowPtr); @@ -169,7 +168,6 @@ extern void MacUnmapWindow(Fl_Window*,WindowPtr); #endif extern int MacUnlinkWindow(Fl_X*,Fl_X*start=0L); -extern void fl_open_callback(void (*cb)(const char *)); inline Window fl_xid(const Fl_Window*w) { @@ -205,6 +203,24 @@ extern void fl_open_callback(void (*cb)(const char *)); extern FL_EXPORT int fl_parse_color(const char* p, uchar& r, uchar& g, uchar& b); #endif // FL_DOXYGEN + +#if defined(__APPLE_COCOA__) || defined(FL_DOXYGEN) +/** \defgroup group_macosx Mac OS X-specific functions + @{ */ + +/** + * \brief Mac OS X: attaches a callback to the "About myprog" item of the system application menu. + * \note #include <FL/x.H> + * + * \param cb a callback that will be called by "About myprog" menu item + * with NULL 1st argument. + * \param user_data a pointer transmitted as 2nd argument to the callback. + * \param shortcut optional shortcut to attach to the "About myprog" menu item (e.g., FL_META+'a') + */ +extern void fl_mac_set_about( Fl_Callback *cb, void *user_data, int shortcut = 0); +/** @} */ +#endif + // // End of "$Id$". // diff --git a/src/Fl_Sys_Menu_Bar.cxx b/src/Fl_Sys_Menu_Bar.cxx index 48920ef83..515f724eb 100644 --- a/src/Fl_Sys_Menu_Bar.cxx +++ b/src/Fl_Sys_Menu_Bar.cxx @@ -42,7 +42,7 @@ * - Shortcut Characters should be English alphanumeric only, no modifiers yet * - no disable main menus * - changes to menubar in run-time don't update! - * (disable, etc. - toggle and readio button do!) + * (disable, etc. - toggle and radio button do!) * * No care was taken to clean up the menu bar after destruction! * ::menu(bar) should only be called once! @@ -52,7 +52,7 @@ * a bundle for the System Menu Bar (and maybe other features) to work! */ -#if defined(__APPLE__) +#if defined(__APPLE__) || defined(FL_DOXYGEN) #include <FL/x.H> #include <FL/Fl.H> @@ -69,7 +69,7 @@ typedef const Fl_Menu_Item *pFl_Menu_Item; -/** +/* * copy the text of a menuitem into a buffer. * Skip all '&' which would mark the shortcut in FLTK * Skip all Mac control characters ('(', '<', ';', '^', '!' ) @@ -91,7 +91,7 @@ typedef const Fl_Menu_Item *pFl_Menu_Item; *dst = 0; } -/** +/* * append a marker to identify the menu font style * <B, I, U, O, and S */ @@ -120,7 +120,7 @@ static void catMenuFont( const Fl_Menu_Item *m, char *dst ) ; // not supported } -/** +/* * append a marker to identify the menu shortcut * <B, I, U, O, and S enum { @@ -206,9 +206,9 @@ static void setMenuFlags( MenuHandle mh, int miCnt, const Fl_Menu_Item *m ) } -#ifdef __APPLE_COCOA__ +#if defined(__APPLE_COCOA__) || defined(FL_DOXYGEN) -/** +/* * create a sub menu for a specific menu handle */ static void createSubMenu( void * mh, pFl_Menu_Item &mm ) @@ -288,7 +288,7 @@ static void convertToMenuBar(const Fl_Menu_Item *mm) } /** - * create a system menu bar using the given list of menu structs + * @brief create a system menu bar using the given list of menu structs * * \author Matthias Melcher * @@ -302,7 +302,9 @@ void Fl_Sys_Menu_Bar::menu(const Fl_Menu_Item *m) } /** - * Adds to the system menu bar a new menu item, with a title string, shortcut int, + * @brief add to the system menu bar a new menu item + * + * add to the system menu bar a new menu item, with a title string, shortcut int, * callback, argument to the callback, and flags. * * @see Fl_Menu_::add(const char* label, int shortcut, Fl_Callback *cb, void *user_data, int flags) @@ -316,7 +318,7 @@ int Fl_Sys_Menu_Bar::add(const char* label, int shortcut, Fl_Callback *cb, void } /** - * remove an item from the system menu bar + * @brief remove an item from the system menu bar * * @param rank the rank of the item to remove */ @@ -328,7 +330,7 @@ void Fl_Sys_Menu_Bar::remove(int rank) /** - * rename an item from the system menu bar + * @brief rename an item from the system menu bar * * @param rank the rank of the item to rename * @param name the new item name as a UTF8 string @@ -349,7 +351,7 @@ static void catMenuFlags( const Fl_Menu_Item *m, char *dst ) strcat( dst, "(" ); } - /** + /* * create a sub menu for a specific menu handle */ static void createSubMenu( MenuHandle mh, int &cnt, pFl_Menu_Item &mm ) @@ -396,7 +398,7 @@ static void createSubMenu( MenuHandle mh, int &cnt, pFl_Menu_Item &mm ) } -/** +/* * create a system menu bar using the given list of menu structs * * \author Matthias Melcher diff --git a/src/Fl_cocoa.mm b/src/Fl_cocoa.mm index 69d7eb47e..136926f07 100644 --- a/src/Fl_cocoa.mm +++ b/src/Fl_cocoa.mm @@ -78,10 +78,6 @@ */ - -// we don't need the following definition because we deliver only -// true mouse moves. On very slow systems however, this flag may -// still be useful. #ifndef FL_DOXYGEN #define CONSOLIDATE_MOTION 0 @@ -3118,18 +3114,6 @@ static void createAppleMenu(void) } @end - -/** - * Mac OS: attaches a callback to the "About myprog" item of the system application menu. - * \note #include <FL/x.H> - * - * \author Manolo Gouy - * - * \param[in] cb a callback that will be called by "About myprog" menu item - * with NULL 1st argument. - * \param[in] user_data a pointer transmitted as 2nd argument to the callback. - * \param[in] shortcut optional shortcut to attach to the "About myprog" menu item (e.g., FL_META+'a') - */ void fl_mac_set_about( Fl_Callback *cb, void *user_data, int shortcut) { NSAutoreleasePool *localPool; |
