[haiku-commits] r39508 - haiku/trunk/src/apps/terminal

  • From: ingo_weinhold@xxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 19 Nov 2010 15:30:43 +0100 (CET)

Author: bonefish
Date: 2010-11-19 15:30:42 +0100 (Fri, 19 Nov 2010)
New Revision: 39508
Changeset: http://dev.haiku-os.org/changeset/39508

Modified:
   haiku/trunk/src/apps/terminal/TermWindow.cpp
   haiku/trunk/src/apps/terminal/TermWindow.h
Log:
Use the new menu layout builder.


Modified: haiku/trunk/src/apps/terminal/TermWindow.cpp
===================================================================
--- haiku/trunk/src/apps/terminal/TermWindow.cpp        2010-11-19 14:29:37 UTC 
(rev 39507)
+++ haiku/trunk/src/apps/terminal/TermWindow.cpp        2010-11-19 14:30:42 UTC 
(rev 39508)
@@ -19,6 +19,7 @@
 #include <Catalog.h>
 #include <Clipboard.h>
 #include <Dragger.h>
+#include <LayoutBuilder.h>
 #include <LayoutUtils.h>
 #include <Locale.h>
 #include <Menu.h>
@@ -155,11 +156,7 @@
        fNextSessionID(0),
        fTabView(NULL),
        fMenuBar(NULL),
-       fFileMenu(NULL),
-       fEditMenu(NULL),
        fEncodingMenu(NULL),
-       fSettingsMenu(NULL),
-       fWindowSizeMenu(NULL),
        fPrintSettings(NULL),
        fPrefWindow(NULL),
        fFindPanel(NULL),
@@ -349,89 +346,62 @@
 void
 TermWindow::_SetupMenu()
 {
-       // Menu bar object.
-       fMenuBar = new BMenuBar(Bounds(), "mbar");
+       BLayoutBuilder::Menu<>(fMenuBar = new BMenuBar(Bounds(), "mbar"))
+               // Terminal
+               .AddMenu(B_TRANSLATE("Terminal"))
+                       .AddItem(B_TRANSLATE("Switch Terminals"), 
MENU_SWITCH_TERM, B_TAB)
+                       .AddItem(B_TRANSLATE("New Terminal"), MENU_NEW_TERM, 
'N')
+                       .AddItem(B_TRANSLATE("New tab"), kNewTab, 'T')
+                       .AddSeparator()
+                       .AddItem(B_TRANSLATE("Page setup" B_UTF8_ELLIPSIS), 
MENU_PAGE_SETUP)
+                       .AddItem(B_TRANSLATE("Print"), MENU_PRINT,'P')
+                       .AddSeparator()
+                       .AddItem(B_TRANSLATE("About Terminal" B_UTF8_ELLIPSIS),
+                               B_ABOUT_REQUESTED)
+                       .AddSeparator()
+                       .AddItem(B_TRANSLATE("Close window"), B_QUIT_REQUESTED, 
'W',
+                               B_SHIFT_KEY)
+                       .AddItem(B_TRANSLATE("Close active tab"), kCloseView, 
'W')
+                       .AddItem(B_TRANSLATE("Quit"), B_QUIT_REQUESTED, 'Q')
+               .End()
 
-       // Make File Menu.
-       fFileMenu = new BMenu(B_TRANSLATE("Terminal"));
-       fFileMenu->AddItem(new BMenuItem(B_TRANSLATE("Switch Terminals"),
-               new BMessage(MENU_SWITCH_TERM), B_TAB));
-       fFileMenu->AddItem(new BMenuItem(B_TRANSLATE("New Terminal"),
-               new BMessage(MENU_NEW_TERM), 'N'));
-       fFileMenu->AddItem(new BMenuItem(B_TRANSLATE("New tab"),
-               new BMessage(kNewTab), 'T'));
+               // Edit
+               .AddMenu(B_TRANSLATE("Edit"))
+                       .AddItem(B_TRANSLATE("Copy"), B_COPY,'C')
+                       .AddItem(B_TRANSLATE("Paste"), B_PASTE,'V')
+                       .AddSeparator()
+                       .AddItem(B_TRANSLATE("Select all"), B_SELECT_ALL, 'A')
+                       .AddItem(B_TRANSLATE("Clear all"), MENU_CLEAR_ALL, 'L')
+                       .AddSeparator()
+                       .AddItem(B_TRANSLATE("Find" B_UTF8_ELLIPSIS), 
MENU_FIND_STRING,'F')
+                       .AddItem(B_TRANSLATE("Find previous"), 
MENU_FIND_PREVIOUS, 'G',
+                                       B_SHIFT_KEY)
+                               .GetItem(fFindPreviousMenuItem)
+                               .SetEnabled(false)
+                       .AddItem(B_TRANSLATE("Find next"), MENU_FIND_NEXT, 'G')
+                               .GetItem(fFindNextMenuItem)
+                               .SetEnabled(false)
+               .End()
 
-       fFileMenu->AddSeparatorItem();
-       fFileMenu->AddItem(new BMenuItem(B_TRANSLATE("Page setup" 
B_UTF8_ELLIPSIS),
-               new BMessage(MENU_PAGE_SETUP)));
-       fFileMenu->AddItem(new BMenuItem(B_TRANSLATE("Print"),
-               new BMessage(MENU_PRINT),'P'));
-       fFileMenu->AddSeparatorItem();
-       fFileMenu->AddItem(new BMenuItem(
-               B_TRANSLATE("About Terminal" B_UTF8_ELLIPSIS),
-               new BMessage(B_ABOUT_REQUESTED)));
-       fFileMenu->AddSeparatorItem();
-       fFileMenu->AddItem(new BMenuItem(B_TRANSLATE("Close window"),
-               new BMessage(B_QUIT_REQUESTED), 'W', B_SHIFT_KEY));
-       fFileMenu->AddItem(new BMenuItem(B_TRANSLATE("Close active tab"),
-               new BMessage(kCloseView), 'W'));
-       fFileMenu->AddItem(new BMenuItem(B_TRANSLATE("Quit"),
-               new BMessage(B_QUIT_REQUESTED), 'Q'));
-       fMenuBar->AddItem(fFileMenu);
+               // Settings
+               .AddMenu(B_TRANSLATE("Settings"))
+                       .AddItem(_MakeWindowSizeMenu())
+                       .AddItem(fEncodingMenu = _MakeEncodingMenu())
+                       .AddMenu(B_TRANSLATE("Text size"))
+                               .AddItem(B_TRANSLATE("Increase"), 
kIncreaseFontSize, '+',
+                                               B_COMMAND_KEY)
+                                       .GetItem(fIncreaseFontSizeMenuItem)
+                               .AddItem(B_TRANSLATE("Decrease"), 
kDecreaseFontSize, '-',
+                                               B_COMMAND_KEY)
+                                       .GetItem(fDecreaseFontSizeMenuItem)
+                       .End()
+                       .AddSeparator()
+                       .AddItem(B_TRANSLATE("Settings" B_UTF8_ELLIPSIS), 
MENU_PREF_OPEN)
+                       .AddSeparator()
+                       .AddItem(B_TRANSLATE("Save as default"), 
SAVE_AS_DEFAULT)
+               .End()
+       ;
 
-       // Make Edit Menu.
-       fEditMenu = new BMenu(B_TRANSLATE("Edit"));
-       fEditMenu->AddItem(new BMenuItem(B_TRANSLATE("Copy"),
-               new BMessage(B_COPY),'C'));
-       fEditMenu->AddItem(new BMenuItem(B_TRANSLATE("Paste"),
-               new BMessage(B_PASTE),'V'));
-       fEditMenu->AddSeparatorItem();
-       fEditMenu->AddItem(new BMenuItem(B_TRANSLATE("Select all"),
-               new BMessage(B_SELECT_ALL), 'A'));
-       fEditMenu->AddItem(new BMenuItem(B_TRANSLATE("Clear all"),
-               new BMessage(MENU_CLEAR_ALL), 'L'));
-       fEditMenu->AddSeparatorItem();
-       fEditMenu->AddItem(new BMenuItem(B_TRANSLATE("Find" B_UTF8_ELLIPSIS),
-               new BMessage(MENU_FIND_STRING),'F'));
-       fFindPreviousMenuItem = new BMenuItem(B_TRANSLATE("Find previous"),
-               new BMessage(MENU_FIND_PREVIOUS), 'G', B_SHIFT_KEY);
-       fEditMenu->AddItem(fFindPreviousMenuItem);
-       fFindPreviousMenuItem->SetEnabled(false);
-       fFindNextMenuItem = new BMenuItem(B_TRANSLATE("Find next"),
-               new BMessage(MENU_FIND_NEXT), 'G');
-       fEditMenu->AddItem(fFindNextMenuItem);
-       fFindNextMenuItem->SetEnabled(false);
-
-       fMenuBar->AddItem(fEditMenu);
-
-       // Make Help Menu.
-       fSettingsMenu = new BMenu(B_TRANSLATE("Settings"));
-       fWindowSizeMenu = _MakeWindowSizeMenu();
-
-       fEncodingMenu = _MakeEncodingMenu();
-
-       fSizeMenu = new BMenu(B_TRANSLATE("Text size"));
-
-       fIncreaseFontSizeMenuItem = new BMenuItem(B_TRANSLATE("Increase"),
-               new BMessage(kIncreaseFontSize), '+', B_COMMAND_KEY);
-
-       fDecreaseFontSizeMenuItem = new BMenuItem(B_TRANSLATE("Decrease"),
-               new BMessage(kDecreaseFontSize), '-', B_COMMAND_KEY);
-
-       fSizeMenu->AddItem(fIncreaseFontSizeMenuItem);
-       fSizeMenu->AddItem(fDecreaseFontSizeMenuItem);
-
-       fSettingsMenu->AddItem(fWindowSizeMenu);
-       fSettingsMenu->AddItem(fEncodingMenu);
-       fSettingsMenu->AddItem(fSizeMenu);
-       fSettingsMenu->AddSeparatorItem();
-       fSettingsMenu->AddItem(new BMenuItem(
-               B_TRANSLATE("Settings" B_UTF8_ELLIPSIS), new 
BMessage(MENU_PREF_OPEN)));
-       fSettingsMenu->AddSeparatorItem();
-       fSettingsMenu->AddItem(new BMenuItem(B_TRANSLATE("Save as default"),
-               new BMessage(SAVE_AS_DEFAULT)));
-       fMenuBar->AddItem(fSettingsMenu);
-
        AddChild(fMenuBar);
 }
 

Modified: haiku/trunk/src/apps/terminal/TermWindow.h
===================================================================
--- haiku/trunk/src/apps/terminal/TermWindow.h  2010-11-19 14:29:37 UTC (rev 
39507)
+++ haiku/trunk/src/apps/terminal/TermWindow.h  2010-11-19 14:30:42 UTC (rev 
39508)
@@ -172,12 +172,7 @@
                        SmartTabView*           fTabView;
 
                        BMenuBar*                       fMenuBar;
-                       BMenu*                          fFileMenu;
-                       BMenu*                          fEditMenu;
                        BMenu*                          fEncodingMenu;
-                       BMenu*                          fSettingsMenu;
-                       BMenu*                          fWindowSizeMenu;
-                       BMenu*                          fSizeMenu;
 
                        BMessage*                       fPrintSettings;
                        PrefWindow*                     fPrefWindow;


Other related posts:

  • » [haiku-commits] r39508 - haiku/trunk/src/apps/terminal - ingo_weinhold