diff --git a/Fltk/GUI.cpp b/Fltk/GUI.cpp index f374b368fa832d8e9eca39e79bb40ef0acb5c0e8..b12e2a4d6b1bee5ccf35889bc58bcdd28afbd7b3 100644 --- a/Fltk/GUI.cpp +++ b/Fltk/GUI.cpp @@ -1,4 +1,4 @@ -// $Id: GUI.cpp,v 1.175 2002-05-18 23:07:42 geuzaine Exp $ +// $Id: GUI.cpp,v 1.176 2002-05-19 08:31:13 geuzaine Exp $ // // Copyright (C) 1997 - 2002 C. Geuzaine, J.-F. Remacle // @@ -691,23 +691,36 @@ void GUI::create_menu_window(int argc, char **argv){ } int width = 13*CTX.fontsize-CTX.fontsize/2-2 ; - MH = BH + BH+6 ; // this is the initial height: no dynamic button is shown! - + + // this is the initial height: no dynamic button is shown! +#if defined(__APPLE__) && defined(APPLE_USE_SYS_MENU) + MH = BH+6 ; // the menu bar is not in the application! +#else + MH = BH + BH+6 ; +#endif + m_window = new Fl_Window(width,MH); m_window->box(WINDOW_BOX); m_window->label("Gmsh"); m_window->callback(file_quit_cb); +#if defined(__APPLE__) && defined(APPLE_USE_SYS_MENU) + m_menu_bar = new Fl_Sys_Menu_Bar(); + m_menu_bar->menu(m_menubar_table); + m_menu_bar->global(); + Fl_Box *o = new Fl_Box(0,0,width,BH+6); + o->box(FL_UP_BOX); + y = 3; +#else m_menu_bar = new Fl_Menu_Bar(0,0,width,BH); m_menu_bar->menu(m_menubar_table); m_menu_bar->box(FL_UP_BOX); m_menu_bar->global(); - Fl_Box *o = new Fl_Box(0,BH,width,BH+6); o->box(FL_UP_BOX); - y = BH + 3; - +#endif + m_navig_butt[0] = new Fl_Button(1,y,18,BH/2,"@<"); m_navig_butt[0]->labeltype(FL_SYMBOL_LABEL); m_navig_butt[0]->labelsize(11); diff --git a/Fltk/GUI.h b/Fltk/GUI.h index 90989f508b506630f673ce086e0746173fea89a6..2f4f574ba2c4fb26e586bc43192d0b84d9582263 100644 --- a/Fltk/GUI.h +++ b/Fltk/GUI.h @@ -44,6 +44,7 @@ #if !((FL_MAJOR_VERSION == 1) && (FL_MINOR_VERSION == 0)) #include <FL/Fl_Tooltip.H> +#include <FL/Fl_Sys_Menu_Bar.H> #endif #include "Opengl_Window.h" @@ -52,6 +53,9 @@ #define NB_BUTT_MAX 100 #define NB_HISTORY_MAX 1000 +// Undefine this to get the menu inside Gmsh (like in Window/Unix) +#define APPLE_USE_SYS_MENU + // The dynamic contexts typedef struct{ @@ -124,7 +128,11 @@ public: // menu window Fl_Window *m_window ; +#if defined(__APPLE__) && defined(APPLE_USE_SYS_MENU) + Fl_Sys_Menu_Bar *m_menu_bar ; +#else Fl_Menu_Bar *m_menu_bar ; +#endif Fl_Choice *m_module_butt ; Fl_Button *m_navig_butt [2] ; Fl_Button *m_push_butt [NB_BUTT_MAX] ;