CMS 3D CMS Logo

IgQtAppHelp Class Reference

#include <Iguana/Studio/interface/IgQtAppHelp.h>

List of all members.

Public Member Functions

 IgQtAppHelp (IgState *state, QWidget *parent=0)
 ~IgQtAppHelp (void)

Static Public Member Functions

static void netscape (const QString &url)
 Tries to open the url in running netscape.

Private Slots

void about (void)
 Tell us about yourself.
void aboutQt (void)
 Tell us about Qt.
void buttons (void)
 Requests 3D buttons description to be shown in a web browser.
void iguanaWebSite (void)
 Requests IGUANA web page to be shown in a web browser.
void reportBugDialog (void)
 Pop-up a dialog to report a bug.
void whatsThis (void)
 Enters "What's this?" mode and returns immediately.

Private Member Functions

void init (void)

Private Attributes

QWidget * m_parent
IgStatem_state


Detailed Description

Definition at line 9 of file IgQtAppHelp.h.


Constructor & Destructor Documentation

IgQtAppHelp::IgQtAppHelp ( IgState state,
QWidget *  parent = 0 
)

Definition at line 7 of file IgQtAppHelp.cc.

References init().

00008     : m_state (state),
00009       m_parent (parent)
00010 {
00011     init ();
00012 }

IgQtAppHelp::~IgQtAppHelp ( void   ) 

Definition at line 14 of file IgQtAppHelp.cc.

00015 {
00016 }


Member Function Documentation

void IgQtAppHelp::about ( void   )  [private, slot]

Tell us about yourself.

Definition at line 36 of file IgQtAppHelp.cc.

References m_parent, and translatedTextAboutIguana.

00037 {    
00038     QMessageBox *mb = new QMessageBox (m_parent, "About IGUANA");
00039     mb->setCaption (QString::fromLatin1 ("About IGUANA"));
00040     mb->setText (*translatedTextAboutIguana);
00041     mb->setIconPixmap (QPixmap (iguana_medium_xpm));
00042     mb->exec ();
00043 }

void IgQtAppHelp::aboutQt ( void   )  [private, slot]

Tell us about Qt.

Definition at line 46 of file IgQtAppHelp.cc.

References m_parent.

00047 {    
00048     QMessageBox::aboutQt (m_parent, "IGUANA");
00049 }

void IgQtAppHelp::buttons ( void   )  [private, slot]

Requests 3D buttons description to be shown in a web browser.

Definition at line 58 of file IgQtAppHelp.cc.

References netscape().

00059 {
00060     netscape ("https://iguana.web.cern.ch/iguana/snapshot/help/buttons.html");
00061 }

void IgQtAppHelp::iguanaWebSite ( void   )  [private, slot]

Requests IGUANA web page to be shown in a web browser.

Definition at line 64 of file IgQtAppHelp.cc.

References netscape().

00065 {
00066     netscape ("https://iguana.cern.ch");
00067 }

void IgQtAppHelp::init ( void   )  [private]

Definition at line 21 of file IgQtAppHelp.cc.

References IGUANA_VERSION, and translatedTextAboutIguana.

Referenced by IgQtAppHelp().

00022 {    
00023     if (!translatedTextAboutIguana) 
00024     {
00025         translatedTextAboutIguana = new QString;
00026         *translatedTextAboutIguana = 
00027             tr ("<h3>About IGUANA</h3>"
00028                 "<p>Version %1.</p>"
00029                 "<p>See <tt>https://iguana.cern.ch</tt> "
00030                 "for more information.</p>"
00031                 ).arg (IGUANA_VERSION);
00032     }
00033 }

void IgQtAppHelp::netscape ( const QString &  url  )  [static]

Tries to open the url in running netscape.

Definition at line 76 of file IgQtAppHelp.cc.

References hlt_scaler_cfg::critical, and NULL.

Referenced by buttons(), IgControlCentre::help(), iguanaWebSite(), and reportBugDialog().

00077 {
00078 #ifdef _WS_WIN_
00079 
00080     //FIXME replace with less buggy ShellExecuteEx?
00081 
00082     if ((unsigned int)::ShellExecute (qApp->mainWidget ()->winId (), 
00083                                       NULL, url, NULL, NULL, SW_SHOW) <= 32)
00084     {
00085         QMessageBox::critical (0, "IGUANA",
00086                               tr ("Unable to display a web browser. "
00087                                   "Ensure that you have a web browser installed."),
00088                               tr ("&OK"));
00089     }
00090     
00091 #else
00092 
00093     // on Linux: It tries to open the url in running netscape
00094     // or starts netscape if there is no netscape running.
00095     // If netscape is not installed, pops up a message box. 
00096     //
00097     // system( "netscape -rise -remote 'openURL(https://iguana.web.cern.ch/iguana/)'"
00098     //         " || netscape 'https://iguana.web.cern.ch/iguana/'");
00099     
00100     QString aCommand ("mozilla -rise -remote 'openURL(");
00101     aCommand += url;
00102     aCommand += ")' || mozilla '";
00103     aCommand += url;
00104     aCommand += "' &";
00105     if (system (aCommand) != 0)
00106     {
00107         QMessageBox::critical (0, "IGUANA",
00108                               tr ("Unable to display a mozilla browser. "
00109                                   "You need to have mozilla installed and in the path."),
00110                               tr ("&OK"));
00111     }
00112 
00113 #endif
00114 }

void IgQtAppHelp::reportBugDialog ( void   )  [private, slot]

Pop-up a dialog to report a bug.

Definition at line 70 of file IgQtAppHelp.cc.

References netscape().

00071 {
00072     netscape ("https://savannah.cern.ch/bugs/?func=addbug&group=iguana");
00073 }

void IgQtAppHelp::whatsThis ( void   )  [private, slot]

Enters "What's this?" mode and returns immediately.

Definition at line 52 of file IgQtAppHelp.cc.

00053 {
00054     QWhatsThis::enterWhatsThisMode ();
00055 }


Member Data Documentation

QWidget* IgQtAppHelp::m_parent [private]

Definition at line 39 of file IgQtAppHelp.h.

Referenced by about(), and aboutQt().

IgState* IgQtAppHelp::m_state [private]

Definition at line 38 of file IgQtAppHelp.h.


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:25:26 2009 for CMSSW by  doxygen 1.5.4