]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
Dynamic menus in Python:
authorvsr <vsr@opencascade.com>
Mon, 27 Feb 2006 15:01:54 +0000 (15:01 +0000)
committervsr <vsr@opencascade.com>
Mon, 27 Feb 2006 15:01:54 +0000 (15:01 +0000)
* hardcode standard main menu IDs

src/LightApp/LightApp_Application.cxx
src/LightApp/LightApp_Application.h
src/STD/STD_Application.cxx
src/STD/STD_Application.h
src/STD/STD_MDIDesktop.cxx
src/STD/STD_MDIDesktop.h
src/STD/STD_TabDesktop.cxx
src/STD/STD_TabDesktop.h

index c63f918bc0e048362a3f880e24bf922da83293c9..8e2614edb44bd0576c339902f93d812ac5303cb4 100644 (file)
@@ -451,7 +451,7 @@ void LightApp_Application::createActions()
   SUIT_Tools::simplifySeparators( modTBar );
 
   // New window
-  int windowMenu = createMenu( tr( "MEN_DESK_WINDOW" ), -1, 100 );
+  int windowMenu = createMenu( tr( "MEN_DESK_WINDOW" ), -1, MenuWindowId, 100 );
   int newWinMenu = createMenu( tr( "MEN_DESK_NEWWINDOW" ), windowMenu, -1, 0 );
   createMenu( separator(), windowMenu, -1, 1 );
 
index 6af7ef7676250ac796a9b3e675455401e3d7158f..35d9f070c0fe038f1ccfb6caaf66fb3931880aa4 100644 (file)
@@ -44,6 +44,7 @@ class LIGHTAPP_EXPORT LightApp_Application : public CAM_Application
 public:
   typedef enum { WT_ObjectBrowser, WT_PyConsole, WT_LogWindow, WT_User } WindowTypes;
 
+  enum { MenuWindowId = 6 };
   enum { NewGLViewId = CAM_Application::UserID, NewPlot2dId, NewOCCViewId, NewVTKViewId,
          PreferencesId, MRUId, RenameId, UserID };
 public:
index a3ab1739eb2fd06afa0b4dec4ebd6e2700d6c67e..68b7b1a066ea646c32b846fa24a6fbc60340ee63 100755 (executable)
@@ -199,32 +199,32 @@ void STD_Application::createActions()
 
   // Create menus
 
-  int fileMenu = createMenu( tr( "MEN_DESK_FILE" ), -1, -1, 0 );
-  int editMenu = createMenu( tr( "MEN_DESK_EDIT" ), -1, -1, 10 );
-  int viewMenu = createMenu( tr( "MEN_DESK_VIEW" ), -1, -1, 10 );
-  int helpMenu = createMenu( tr( "MEN_DESK_HELP" ), -1, -1, 1000 );
+  int fileMenu = createMenu( tr( "MEN_DESK_FILE" ), -1, MenuFileId, 0 );
+  int editMenu = createMenu( tr( "MEN_DESK_EDIT" ), -1, MenuEditId, 10 );
+  int viewMenu = createMenu( tr( "MEN_DESK_VIEW" ), -1, MenuViewId, 10 );
+  int helpMenu = createMenu( tr( "MEN_DESK_HELP" ), -1, MenuHelpId, 1000 );
 
   // Create menu items
 
-  createMenu( FileNewId, fileMenu, 0 );
-  createMenu( FileOpenId, fileMenu, 0 );
-  createMenu( FileLoadId, fileMenu, 0 );  //SRN: BugID IPAL9021, add a menu item "Load"
-  createMenu( FileCloseId, fileMenu, 0 );
-  createMenu( separator(), fileMenu, -1, 0 );
-  createMenu( FileSaveId, fileMenu, 0 );
+  createMenu( FileNewId,    fileMenu, 0 );
+  createMenu( FileOpenId,   fileMenu, 0 );
+  createMenu( FileLoadId,   fileMenu, 0 );  //SRN: BugID IPAL9021, add a menu item "Load"
+  createMenu( FileCloseId,  fileMenu, 0 );
+  createMenu( separator(),  fileMenu, -1, 0 );
+  createMenu( FileSaveId,   fileMenu, 0 );
   createMenu( FileSaveAsId, fileMenu, 0 );
-  createMenu( separator(), fileMenu, -1, 0 );
+  createMenu( separator(),  fileMenu, -1, 0 );
 
-  createMenu( separator(), fileMenu );
-  createMenu( FileExitId, fileMenu );
+  createMenu( separator(),  fileMenu );
+  createMenu( FileExitId,   fileMenu );
 
-  createMenu( EditCopyId, editMenu );
+  createMenu( EditCopyId,  editMenu );
   createMenu( EditPasteId, editMenu );
   createMenu( separator(), editMenu );
 
-  createMenu( ViewWindowsId, viewMenu );
+  createMenu( ViewWindowsId,   viewMenu );
   createMenu( ViewStatusBarId, viewMenu );
-  createMenu( separator(), viewMenu );
+  createMenu( separator(),     viewMenu );
 
   createMenu( HelpAboutId, helpMenu );
   createMenu( separator(), helpMenu );
@@ -547,8 +547,8 @@ void STD_Application::setEditEnabled( bool theEnable )
 
   for ( int i = EditCopyId; i <= EditPasteId; i++ )
   {
-    mMgr->setShown( i, myEditEnabled );
-    tMgr->setShown( i, myEditEnabled );
+    mMgr->setShown( mMgr->actionId(action(i)), myEditEnabled );
+    tMgr->setShown( tMgr->actionId(action(i)), myEditEnabled );
   }
 }
 
index c8e3b4ad59d0c844bca607902f3b4b62c1966c77..cd63268bdb54863fd9b114455f03aa632806e549 100755 (executable)
@@ -120,9 +120,19 @@ private slots:
   virtual void          onViewManagerActivated( SUIT_ViewManager* );
 
 protected:
-  enum {  FileNewId, FileOpenId, FileCloseId, FileSaveId, FileSaveAsId,
-          FileExitId, EditCutId, EditCopyId, EditPasteId, ViewStatusBarId,
-          NewWindowId, HelpAboutId, ViewWindowsId, FileLoadId, UserID };
+  enum {  MenuFileId = 1,
+          MenuViewId = 2,
+          MenuEditId = 3,
+          MenuHelpId = 7
+       };
+
+  enum {  FileNewId,   FileOpenId,   FileLoadId, FileCloseId,
+         FileSaveId,  FileSaveAsId, FileExitId, 
+         ViewStatusBarId, ViewWindowsId, NewWindowId,
+          EditCutId, EditCopyId, EditPasteId,
+          HelpAboutId,
+         UserID
+       };
  
 protected:
   virtual void          createActions();
index aec25bb597857eaf9ac523da10171d3e9d0ab418..214e8a767f3d2b01e7c6d223766f416ad5570170 100755 (executable)
@@ -183,7 +183,7 @@ void STD_MDIDesktop::createActions()
   if ( !mMgr )
     return;
 
-  int winMenuId = mMgr->insert( tr( "MEN_DESK_WINDOW" ), -1, 100 );
+  int winMenuId = mMgr->insert( tr( "MEN_DESK_WINDOW" ), -1, 100, MenuWindowId );
   mMgr->insert( myWorkspaceAction, winMenuId, -1 );
   mMgr->insert( QtxActionMenuMgr::separator(), winMenuId, -1 );
 }
index 25ec9cb0800c8252815e098f0af0ae5833e4eaa9..e61f5c3d58cdc5c80e475beb450d0bbbb04e8d2e 100755 (executable)
@@ -37,6 +37,7 @@ class STD_EXPORT STD_MDIDesktop: public SUIT_Desktop
   Q_OBJECT
 
 public:
+  enum { MenuWindowId = 6 };
   enum { Cascade, Tile, HTile, VTile };
 
 public:
index 24dfd5ccf27a321ceb42002a9c6ecac05c578fde..5fdfce584e2caf280acb134d9b39e18ef1f7e25d 100644 (file)
@@ -177,7 +177,7 @@ void STD_TabDesktop::createActions()
   if ( !mMgr )
     return;
 
-  int winMenuId = mMgr->insert( tr( "MEN_DESK_WINDOW" ), -1, 100 );
+  int winMenuId = mMgr->insert( tr( "MEN_DESK_WINDOW" ), -1, 100, MenuWindowId );
   mMgr->insert( myWorkstackAction, winMenuId, -1 );
   mMgr->insert( QtxActionMenuMgr::separator(), winMenuId, -1 );
 }
index f3b1d1282606fd44bf044d764800b4b997df7e52..c91b6e08e60da473fe9ab26c292e6e1971a60221 100644 (file)
@@ -38,6 +38,7 @@ class STD_EXPORT STD_TabDesktop: public SUIT_Desktop
   Q_OBJECT
 
 public:
+  enum { MenuWindowId = 6 };
   enum { VSplit, HSplit };
 
 public: