diff options
| author | Matthias Melcher <fltk@matthiasm.com> | 2009-12-12 18:06:49 +0000 |
|---|---|---|
| committer | Matthias Melcher <fltk@matthiasm.com> | 2009-12-12 18:06:49 +0000 |
| commit | 0d99b353a4785d932c56901a6bce5672bccd2bf9 (patch) | |
| tree | f5d1e7a978a9a0085e5df01036cef8ffe274e071 /src/Fl_Sys_Menu_Bar.cxx | |
| parent | a85efbce2612dde7942d3d2c3ad3b3d844b27427 (diff) | |
Sorted Xcode source files (somewhat). Added Manolos patches to fix the Sys_Menu widget pointer.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6962 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/Fl_Sys_Menu_Bar.cxx')
| -rw-r--r-- | src/Fl_Sys_Menu_Bar.cxx | 89 |
1 files changed, 44 insertions, 45 deletions
diff --git a/src/Fl_Sys_Menu_Bar.cxx b/src/Fl_Sys_Menu_Bar.cxx index da0451582..59ca6d4f8 100644 --- a/src/Fl_Sys_Menu_Bar.cxx +++ b/src/Fl_Sys_Menu_Bar.cxx @@ -77,7 +77,7 @@ typedef const Fl_Menu_Item *pFl_Menu_Item; */ #ifndef __APPLE_COCOA__ - static void catMenuText( const char *src, char *dst ) +static void catMenuText( const char *src, char *dst ) { char c; while ( *dst ) @@ -103,7 +103,7 @@ static void catMenuFont( const Fl_Menu_Item *m, char *dst ) return; while ( *dst ) dst++; - + if ( m->labelfont_ & FL_BOLD ) strcat( dst, "<B" ); if ( m->labelfont_ & FL_ITALIC ) @@ -112,28 +112,28 @@ static void catMenuFont( const Fl_Menu_Item *m, char *dst ) // strcat( dst, "<U" ); if ( m->labeltype_ == FL_EMBOSSED_LABEL ) - strcat( dst, "<U" ); + strcat( dst, "<U" ); else if ( m->labeltype_ == FL_ENGRAVED_LABEL ) - strcat( dst, "<O" ); + strcat( dst, "<O" ); else if ( m->labeltype_ == FL_SHADOW_LABEL ) - strcat( dst, "<S" ); + strcat( dst, "<S" ); //else if ( m->labeltype_ == FL_SYMBOL_LABEL ) - ; // not supported + ; // not supported } /** * append a marker to identify the menu shortcut * <B, I, U, O, and S -enum { - kMenuNoModifiers = 0, - kMenuShiftModifier = (1 << 0), - kMenuOptionModifier = (1 << 1), - kMenuControlModifier = (1 << 2), - kMenuNoCommandModifier = (1 << 3) -}; -*/ + enum { + kMenuNoModifiers = 0, + kMenuShiftModifier = (1 << 0), + kMenuOptionModifier = (1 << 1), + kMenuControlModifier = (1 << 2), + kMenuNoCommandModifier = (1 << 3) + }; + */ #endif - + static void setMenuShortcut( MenuHandle mh, int miCnt, const Fl_Menu_Item *m ) { if ( !m->shortcut_ ) @@ -190,15 +190,15 @@ static void setMenuFlags( MenuHandle mh, int miCnt, const Fl_Menu_Item *m ) if ( m->flags & FL_MENU_TOGGLE ) { #ifdef __APPLE_COCOA__ - void *menuItem = MACMenuOrItemOperation("itemAtIndex", mh, miCnt); - MACMenuOrItemOperation("setState", menuItem, m->flags & FL_MENU_VALUE ); + void *menuItem = MACMenuOrItemOperation("itemAtIndex", mh, miCnt); + MACMenuOrItemOperation("setState", menuItem, m->flags & FL_MENU_VALUE ); #else - SetItemMark( mh, miCnt, ( m->flags & FL_MENU_VALUE ) ? 0x12 : 0 ); + SetItemMark( mh, miCnt, ( m->flags & FL_MENU_VALUE ) ? 0x12 : 0 ); #endif } else if ( m->flags & FL_MENU_RADIO ) { #ifndef __APPLE_COCOA__ - SetItemMark( mh, miCnt, ( m->flags & FL_MENU_VALUE ) ? 0x13 : 0 ); + SetItemMark( mh, miCnt, ( m->flags & FL_MENU_VALUE ) ? 0x13 : 0 ); #endif } } @@ -222,20 +222,20 @@ static void createSubMenu( void * mh, pFl_Menu_Item &mm ) menuItem = MACMenuOrItemOperation("itemAtIndex", mh, cnt); MACMenuOrItemOperation("setSubmenu", menuItem, submenu); if ( mm->flags & FL_MENU_INACTIVE ) { - MACMenuOrItemOperation("setEnabled", menuItem, 0); + MACMenuOrItemOperation("setEnabled", menuItem, 0); } mm++; while ( mm->text ) { - MACMenuOrItemOperation("addNewItem", submenu, mm->text, mm->callback_, mm->user_data_, &miCnt); + MACMenuOrItemOperation("addNewItem", submenu, mm, &miCnt); setMenuFlags( submenu, miCnt, mm ); setMenuShortcut( submenu, miCnt, mm ); - if ( mm->flags & FL_MENU_INACTIVE ) { - void *item = MACMenuOrItemOperation("itemAtIndex", submenu, miCnt); - MACMenuOrItemOperation("setEnabled", item, 0); - } - flags = mm->flags; + if ( mm->flags & FL_MENU_INACTIVE ) { + void *item = MACMenuOrItemOperation("itemAtIndex", submenu, miCnt); + MACMenuOrItemOperation("setEnabled", item, 0); + } + flags = mm->flags; if ( mm->flags & FL_SUBMENU ) { createSubMenu( submenu, mm ); @@ -246,12 +246,12 @@ static void createSubMenu( void * mh, pFl_Menu_Item &mm ) createSubMenu( submenu, smm ); } if ( flags & FL_MENU_DIVIDER ) { - MACMenuOrItemOperation("addSeparatorItem", submenu); - } + MACMenuOrItemOperation("addSeparatorItem", submenu); + } mm++; } } - + /** * create a system menu bar using the given list of menu structs @@ -266,16 +266,15 @@ void Fl_Sys_Menu_Bar::menu(const Fl_Menu_Item *m) fl_open_display(); Fl_Menu_Bar::menu( m ); fl_sys_menu_bar = this; - - + + const Fl_Menu_Item *mm = m; for (;;) { if ( !mm || !mm->text ) break; char visible = mm->visible() ? 1 : 0; - MACMenuOrItemOperation("addNewItem", MACmainMenu(), mm->text, NULL, NULL, NULL); - + MACMenuOrItemOperation("addNewItem", MACmainMenu(), mm, NULL); if ( mm->flags & FL_SUBMENU ) createSubMenu( MACmainMenu(), mm ); else if ( mm->flags & FL_SUBMENU_POINTER ) { @@ -283,7 +282,7 @@ void Fl_Sys_Menu_Bar::menu(const Fl_Menu_Item *m) createSubMenu( MACmainMenu(), smm ); } if ( visible ) { -// InsertMenu( mh, 0 ); + // InsertMenu( mh, 0 ); } mm++; } @@ -395,17 +394,17 @@ void Fl_Sys_Menu_Bar::menu(const Fl_Menu_Item *m) #endif //__APPLE_COCOA__ /* -const Fl_Menu_Item* Fl_Sys_Menu_Bar::picked(const Fl_Menu_Item* v) { - Fl_menu_Item *ret = Fl_Menu_Bar::picked( v ); - - if ( m->flags & FL_MENU_TOGGLE ) - { - SetItemMark( mh, miCnt, ( m->flags & FL_MENU_VALUE ) ? 0x12 : 0 ); - } - - return ret; -} -*/ + const Fl_Menu_Item* Fl_Sys_Menu_Bar::picked(const Fl_Menu_Item* v) { + Fl_menu_Item *ret = Fl_Menu_Bar::picked( v ); + + if ( m->flags & FL_MENU_TOGGLE ) + { + SetItemMark( mh, miCnt, ( m->flags & FL_MENU_VALUE ) ? 0x12 : 0 ); + } + + return ret; + } + */ void Fl_Sys_Menu_Bar::draw() { } |
