void HelpBrowser::createActions() { QAction * action; OverridingAction *ovrAction; mActions[GoHome] = action = new QAction(tr("Home"), this); connect( action, SIGNAL(triggered()), this, SLOT(goHome()) ); mActions[ZoomIn] = ovrAction = new OverridingAction(tr("Zoom In"), this); connect(ovrAction, SIGNAL(triggered()), this, SLOT(zoomIn())); ovrAction->addToWidget(mWebView); mActions[ZoomOut] = ovrAction = new OverridingAction(tr("Zoom Out"), this); connect(ovrAction, SIGNAL(triggered()), this, SLOT(zoomOut())); ovrAction->addToWidget(mWebView); mActions[ResetZoom] = ovrAction = new OverridingAction(tr("Reset Zoom"), this); connect(ovrAction, SIGNAL(triggered()), this, SLOT(resetZoom())); ovrAction->addToWidget(mWebView); mActions[Evaluate] = ovrAction = new OverridingAction(tr("Evaluate as Code"), this); connect(ovrAction, SIGNAL(triggered()), this, SLOT(evaluateSelection())); ovrAction->addToWidget(mWebView); // For the sake of display: mWebView->pageAction(QWebPage::Copy)->setShortcut( QKeySequence::Copy ); mWebView->pageAction(QWebPage::Paste)->setShortcut( QKeySequence::Paste ); }
HelpBrowserDocklet::HelpBrowserDocklet( QWidget *parent ): Docklet(tr("Help browser"), parent) { mHelpBrowser = new HelpBrowser; setAllowedAreas(Qt::AllDockWidgetAreas); setWidget(mHelpBrowser); mFindBox = new HelpBrowserFindBox(); toolBar()->addWidget( mHelpBrowser->loadProgressIndicator(), 1 ); toolBar()->addAction( mHelpBrowser->mActions[HelpBrowser::GoHome] ); toolBar()->addAction( mHelpBrowser->mWebView->pageAction(QWebPage::Back) ); toolBar()->addAction( mHelpBrowser->mWebView->pageAction(QWebPage::Forward) ); toolBar()->addAction( mHelpBrowser->mWebView->pageAction(QWebPage::Reload) ); toolBar()->addWidget( mFindBox ); connect( mFindBox, SIGNAL(query(QString, bool)), mHelpBrowser, SLOT(findText(QString, bool)) ); connect(Main::scProcess(), SIGNAL(started()), this, SLOT(onInterpreterStart())); OverridingAction * action; action = new OverridingAction(this); action->setShortcut(QKeySequence::Find); action->addToWidget(mHelpBrowser); action->addToWidget(toolBar()); connect( action, SIGNAL(triggered(bool)), mFindBox, SLOT(setFocus()) ); connect( action, SIGNAL(triggered(bool)), mFindBox, SLOT(selectAll()) ); }
void PostWindow::createActions( Settings::Manager * settings ) { QAction * action; OverridingAction * ovrAction; QString postCategory(tr("Post Window")); mActions[Copy] = action = new QAction(tr("Copy"), this); action->setShortcut( QKeySequence::Copy ); action->setShortcutContext( Qt::WidgetShortcut ); action->setEnabled( false ); connect(action, SIGNAL(triggered()), this, SLOT(copy())); connect( this, SIGNAL(copyAvailable(bool)), action, SLOT(setEnabled(bool)) ); addAction(action); mActions[Clear] = action = new QAction(tr("Clear"), this); action->setStatusTip(tr("Clear post window")); action->setShortcutContext(Qt::ApplicationShortcut); action->setShortcut(tr("Ctrl+Shift+P", "Clear post window")); settings->addAction( action, "post-clear", postCategory ); connect(action, SIGNAL(triggered()), this, SLOT(clear())); addAction(action); action = new QAction(this); action->setSeparator(true); addAction(action); mActions[DocClose] = ovrAction = new OverridingAction(tr("Close"), this); action->setStatusTip(tr("Close the current document")); connect( ovrAction, SIGNAL(triggered()), this, SLOT(closeDocument()) ); ovrAction->addToWidget(this); mActions[ZoomIn] = ovrAction = new OverridingAction(tr("Enlarge Font"), this); ovrAction->setIconText("+"); ovrAction->setStatusTip(tr("Enlarge post window font")); connect(ovrAction, SIGNAL(triggered()), this, SLOT(zoomIn())); ovrAction->addToWidget(this); mActions[ZoomOut] = ovrAction = new OverridingAction(tr("Shrink Font"), this); ovrAction->setIconText("-"); ovrAction->setStatusTip(tr("Shrink post window font")); connect(ovrAction, SIGNAL(triggered()), this, SLOT(zoomOut())); ovrAction->addToWidget(this); mActions[ResetZoom] = ovrAction = new OverridingAction(tr("Reset Font Size"), this); connect(ovrAction, SIGNAL(triggered()), this, SLOT(resetZoom())); ovrAction->addToWidget(this); action = new QAction(this); action->setSeparator(true); addAction(action); mActions[LineWrap] = action = new QAction(tr("Wrap Text"), this); action->setStatusTip(tr("Wrap lines wider than the post window")); action->setCheckable(true); addAction(action); connect( action, SIGNAL(triggered(bool)), this, SLOT(setLineWrap(bool)) ); settings->addAction( action, "post-line-wrap", postCategory ); mActions[AutoScroll] = action = new QAction(tr("Auto Scroll"), this); action->setStatusTip(tr("Scroll to bottom on new posts")); action->setCheckable(true); action->setChecked(true); connect(action, SIGNAL(triggered(bool)), this, SLOT(onAutoScrollTriggered(bool))); addAction(action); settings->addAction( action, "post-auto-scroll", postCategory ); }