CMS 3D CMS Logo

IgQtAppHelpService.cc

Go to the documentation of this file.
00001 #include "Iguana/Studio/interface/IgQtAppHelpService.h"
00002 #include "Iguana/Studio/interface/IgQtAppHelp.h"
00003 #include "Iguana/Studio/interface/IgQtAppMenuService.h"
00004 #include "Iguana/Studio/interface/iguana-small.xpm"
00005 #include <qmenubar.h>
00006 #include <qpopupmenu.h>
00007 
00008 IG_DEFINE_STATE_ELEMENT (IgQtAppHelpService, "Services/Qt/App Help");
00009 
00010 IgQtAppHelpService::IgQtAppHelpService (IgState *state,
00011                                         QWidget *mainWindow)
00012     : m_state (state),
00013       m_mainWindow (mainWindow),
00014       m_about (new IgQtAppHelp (state, mainWindow))
00015 {
00016     ASSERT (state);
00017     ASSERT (mainWindow);
00018     state->put (s_key, this);
00019 
00020     ASSERT (IgQtAppMenuService::get (state));
00021     QMenuBar    *menu = IgQtAppMenuService::get (state)->menuBar ();
00022     QPopupMenu  *help = new QPopupMenu (mainWindow);
00023 
00024     help->setCaption ("Help");
00025     help->insertTearOffHandle ();
00026     help->insertItem
00027         ("IGUANA &Web site", m_about, SLOT (iguanaWebSite ()), Qt::Key_F1,
00028          MENU_ID_HELP_IGUANA_WEB, IgQtAppMenuService::index
00029          (help, MENU_ID_HELP_IGUANA_WEB));
00030     help->insertSeparator ();  
00031     help->insertItem
00032         ("&Report Bug...", m_about, SLOT (reportBugDialog ()), 0,
00033          MENU_ID_HELP_REPORT_BUG, IgQtAppMenuService::index
00034          (help, MENU_ID_HELP_REPORT_BUG));
00035     help->insertSeparator ();  
00036     help->insertItem
00037         ("What's &This", m_about, SLOT (whatsThis ()), Qt::SHIFT+Qt::Key_F1,
00038          MENU_ID_HELP_WHATSTHIS, IgQtAppMenuService::index
00039          (help, MENU_ID_HELP_WHATSTHIS));
00040     help->insertItem
00041         ("Viewer &Buttons", m_about, SLOT (buttons ()), 0,
00042          MENU_ID_HELP_BUTTONS, IgQtAppMenuService::index
00043          (help, MENU_ID_HELP_BUTTONS));
00044     help->insertSeparator ();  
00045     help->insertItem
00046         ("About Qt", m_about, SLOT (aboutQt ()), 0,
00047          MENU_ID_HELP_ABOUT_QT, IgQtAppMenuService::index
00048          (help, MENU_ID_HELP_ABOUT_QT));
00049     help->insertItem
00050         (QPixmap (iguana_small_xpm), "&About IGUANA", m_about, SLOT (about ()), 0,
00051          MENU_ID_HELP_ABOUT, IgQtAppMenuService::index
00052          (help, MENU_ID_HELP_ABOUT));
00053 
00054     menu->insertItem ("&Help", help, MENU_ID_HELP,
00055                       IgQtAppMenuService::index (menu, MENU_ID_HELP));
00056 }
00057 
00058 IgQtAppHelpService::~IgQtAppHelpService (void)
00059 {
00060     ASSERT (m_state);
00061     ASSERT (m_mainWindow);
00062     m_state->detach (s_key);
00063 }
00064 

Generated on Tue Jun 9 17:38:49 2009 for CMSSW by  doxygen 1.5.4