//------------------------------------------------------------------------ // create all stuff for the menubar //------------------------------------------------------------------------ void ApplicationWindow::createMenubar() { QPixmap newIcon(filenew); QPixmap openIcon(fileopen); QPixmap quitIcon(quit); QFont boldfont; boldfont.setWeight(QFont::Bold); // File menu QMenu *file = new QMenu(tr("&File"), this); file->setFont(QFont("Helvetica", 8)); file->addAction(newIcon, "&New", this, SLOT(newDoc()), Qt::CTRL + Qt::Key_N); file->addAction(openIcon, "&Open", this, SLOT(choose()), Qt::CTRL + Qt::Key_O); file->addSeparator(); file->addAction(quitIcon, "&Quit", qApp, SLOT(closeAllWindows()), Qt::CTRL + Qt::Key_Q); // Preference menu QMenu *pref = new QMenu(tr("&Preference"), this); pref->setFont(QFont("Helvetica", 8)); showMessageAreaAction = pref->addAction("Show MessageArea", this, SLOT(showMsg())); showMessageAreaAction->setChecked(false); // Style menu QMenu *styleMenu = new QMenu(tr("&Style"), this); styleMenu->setFont(QFont("Helvetica", 8)); QActionGroup *ag = new QActionGroup(this); ag->setExclusive(true); QSignalMapper *styleMapper = new QSignalMapper(this); connect(styleMapper, SIGNAL(mapped(const QString &)), this, SLOT(setStyle(const QString &))); // Help menu QMenu *help = new QMenu(tr("&Help"), this); help->setFont(QFont("Helvetica", 8)); help->addAction("&About", this, SLOT(about()), Qt::Key_F1); help->addSeparator(); help->addAction("What's &This", this, SLOT(whatsThis()), Qt::SHIFT + Qt::Key_F1); menuBar()->setFont(boldfont); menuBar()->addMenu(file); menuBar()->addMenu(pref); menuBar()->addMenu(styleMenu); menuBar()->addMenu(help); }
void favorites2::setOptionMenu( QMenu& m,bool addCancel ) { m.setFont( this->font() ) ; connect( m.addAction( tr( "Toggle AutoMount" ) ),&QAction::triggered,[ this ](){ this->toggleAutoMount() ; } ) ; m.addSeparator() ; connect( m.addAction( tr( "Edit" ) ),&QAction::triggered,[ this ](){ this->edit() ; } ) ; m.addSeparator() ; connect( m.addAction( tr( "Remove Selected Entry" ) ),&QAction::triggered,[ this ](){ this->removeEntryFromFavoriteList() ; } ) ; m.addSeparator() ; if( addCancel ){ m.addSeparator() ; m.addAction( tr( "Cancel" ) ) ; } }
QMenu* SpinBox::getRightClickMenu() { QMenu* menu = createStandardContextMenu(); menu->setFont(QApplication::font()); // necessary return menu; }
void AudioItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *) { QMenu menu; QFont menuFont = qApp->font(); menuFont.setPixelSize(14); menu.setFont(menuFont); if (m_audio->getAudioDecoder() != NULL) { AudioDecoder *ad = m_audio->getAudioDecoder(); AudioParameters ap = ad->audioParameters(); if (ap.channels() == 1) m_previewLeftAction->setText(tr("Preview Mono")); menu.addAction(m_previewLeftAction); if (ap.channels() == 2) { m_previewLeftAction->setText(tr("Preview Left Channel")); menu.addAction(m_previewRightAction); menu.addAction(m_previewStereoAction); } menu.addSeparator(); } foreach(QAction *action, getDefaultActions()) menu.addAction(action); menu.exec(QCursor::pos()); }
void NMainMenuBar::createThemeMenu(QMenu *parentMenu) { QMenu *menu = parentMenu->addMenu(tr("Theme")); QStringList list = global.getThemeNames(); QFont f = global.getGuiFont(QFont()); global.settings->beginGroup(INI_GROUP_APPEARANCE); QString userTheme = global.settings->value("themeName", DEFAULT_THEME_NAME).toString(); global.settings->endGroup(); // Setup themes (we expect to find the DEFAULT_THEME_NAME theme as first one) for (int i = 0; i < list.size(); i++) { QString themeName(list[i]); if ((i == 0) && (QString::compare(themeName, DEFAULT_THEME_NAME, Qt::CaseInsensitive) != 0)) { QLOG_ERROR() << "First theme is expected to be " << DEFAULT_THEME_NAME; } QAction *themeAction = new QAction(themeName, this); themeAction->setData(themeName); themeAction->setCheckable(true); themeAction->setFont(f); connect(themeAction, SIGNAL(triggered()), parent, SLOT(reloadIcons())); if (themeName == userTheme) { themeAction->setChecked(true); } themeActions.append(themeAction); } menu->addActions(themeActions); menu->setFont(f); }
void ConfigLabel::mousePressEvent(QMouseEvent *ev) { if (QGuiApplication::mouseButtons() == Qt::RightButton) { QRect rect = this->rect(); auto CIDlg = new ConfigInfoDlg(this, DevThr); int ret = CIDlg->exec(); setDevice(Last_StoreData.DeviceType); } else if (QGuiApplication::mouseButtons() == Qt::LeftButton) { QMenu *ChooseMenu = new QMenu(this); QAction *Choose801Action = new QAction("TR801", this); QAction *Choose802Action = new QAction("TR802", this); QAction *Choose805Action = new QAction("TR805", this); connect(Choose801Action, &QAction::triggered, [&](){ setDevice(TR801, true); }); connect(Choose802Action, &QAction::triggered, [&](){ setDevice(TR802, true); }); connect(Choose805Action, &QAction::triggered, [&](){ setDevice(TR805, true); }); QFont font; font.setPointSize(10); ChooseMenu->setFont(font); ChooseMenu->addAction(Choose801Action); ChooseMenu->addAction(Choose802Action); ChooseMenu->addAction(Choose805Action); ChooseMenu->exec(QCursor::pos()); } }
// Search through the list of known stack menu items & find the menu for // this notebook's stack. If one doesn't exist we add it. QMenu* NotebookMenuButton::findStack(Notebook n) { if (!n.__isset.stack || QString::fromStdString(n.stack).trimmed() == "") return &rootMenu; QString stack = QString::fromStdString(n.stack).trimmed(); for (int i=0; i<stackMenus.size(); i++) { if (stackMenus.at(i)->title().toLower() == stack.toLower()) return stackMenus.at(i); } // Create a new stack. We add a dummy action item to the // menu so we know where to add the menu later. This // keeps things in sorted order QMenu *newMenu = new QMenu(this); newMenu->setTitle(stack); QFont f = newMenu->font(); f.setPointSize(10); f.setBold(false); newMenu->setFont(f); stackMenus.append(newMenu); QAction *placeHolder = new QAction(this); placeHolder->setVisible(false); placeHolder->setText(stack); addNotebookMenuItem(&rootMenu, placeHolder); addStackMenuItem(newMenu); return newMenu; }
QMenu* ActionCollection::createCompactMenu( QWidget* parent ) { QMenu* compactMenu = new QMenu( tr( "Main Menu" ), parent ); compactMenu->setFont( TomahawkUtils::systemFont() ); compactMenu->addAction( m_actionCollection[ "playPause" ] ); compactMenu->addAction( m_actionCollection[ "previousTrack" ] ); compactMenu->addAction( m_actionCollection[ "nextTrack" ] ); compactMenu->addSeparator(); compactMenu->addAction( m_actionCollection[ "togglePrivacy" ] ); compactMenu->addAction( m_actionCollection[ "showOfflineSources" ] ); compactMenu->addSeparator(); compactMenu->addAction( m_actionCollection[ "importPlaylist" ] ); compactMenu->addAction( m_actionCollection[ "updateCollection" ] ); compactMenu->addAction( m_actionCollection[ "rescanCollection" ] ); compactMenu->addSeparator(); #ifdef Q_OS_MAC // This should never happen anyway compactMenu->addAction( m_actionCollection[ "minimize" ] ); compactMenu->addAction( m_actionCollection[ "zoom" ] ); #else compactMenu->addAction( m_actionCollection[ "toggleMenuBar" ] ); #endif compactMenu->addAction( m_actionCollection[ "preferences" ] ); compactMenu->addSeparator(); compactMenu->addAction( m_actionCollection[ "diagnostics" ] ); compactMenu->addAction( m_actionCollection[ "openLogfile" ] ); compactMenu->addAction( m_actionCollection[ "legalInfo" ] ); QMenu* whatsNew = compactMenu->addMenu( ImageRegistry::instance()->icon( RESPATH "images/whatsnew.svg" ), tr( "What's New in ..." ) ); whatsNew->addAction( m_actionCollection[ "whatsnew_0_8" ] ); compactMenu->addAction( m_actionCollection[ "aboutTomahawk" ] ); // Setup update check #ifndef Q_OS_MAC compactMenu->insertSeparator( m_actionCollection[ "legalInfo" ] ); #endif #if defined( Q_OS_MAC ) && defined( HAVE_SPARKLE ) compactMenu->addAction( m_actionCollection[ "checkForUpdates" ] ); #elif defined( Q_OS_WIN ) compactMenu->addSeparator(); compactMenu->addAction( m_actionCollection[ "checkForUpdates" ] ); #endif if ( qApp->arguments().contains( "--debug" ) ) { compactMenu->addSeparator(); compactMenu->addAction( m_actionCollection[ "crashNow" ] ); } compactMenu->addSeparator(); compactMenu->addAction( m_actionCollection["getSupport"] ); compactMenu->addAction( m_actionCollection["reportBug"] ); compactMenu->addAction( m_actionCollection["helpTranslate"] ); compactMenu->addSeparator(); compactMenu->addAction( m_actionCollection[ "quit" ] ); return compactMenu; }
void RGBMatrixItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *) { QMenu menu; QFont menuFont = qApp->font(); menuFont.setPixelSize(14); menu.setFont(menuFont); foreach(QAction *action, getDefaultActions()) menu.addAction(action); menu.exec(QCursor::pos()); }
void favorites::itemClicked( QTableWidgetItem * current,bool clicked ) { QMenu m ; m.setFont( this->font() ) ; connect( m.addAction( tr( "Remove Selected Entry" ) ),SIGNAL( triggered() ),this,SLOT( removeEntryFromFavoriteList() ) ) ; m.addSeparator() ; m.addAction( tr( "Cancel" ) ) ; if( clicked ){ m.exec( QCursor::pos() ) ; }else{ int x = m_ui->tableWidget->columnWidth( 0 ) ; int y = m_ui->tableWidget->rowHeight( current->row() ) * current->row() + 20 ; m.exec( m_ui->tableWidget->mapToGlobal( QPoint( x,y ) ) ) ; } }
void manageSystemVolumes::itemClicked( QTableWidgetItem * current,bool clicked ) { if( current ){ QMenu m ; m.setFont( this->font() ) ; connect( m.addAction( tr( "remove selected entry" ) ),SIGNAL( triggered() ),this,SLOT( removeCurrentRow() ) ) ; m.addSeparator() ; m.addAction( tr( "cancel" ) ) ; if( clicked ){ m.exec( QCursor::pos() ) ; }else{ int x = m_ui->tableWidget->columnWidth( 0 ) / 2 ; int y = m_ui->tableWidget->rowHeight( current->row() ) * current->row() + 20 ; m.exec( m_ui->tableWidget->mapToGlobal( QPoint( x,y ) ) ) ; } } }
void RGBMatrixItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *) { QMenu menu; QFont menuFont = qApp->font(); menuFont.setPixelSize(14); menu.setFont(menuFont); menu.addAction(m_alignToCursor); if (isLocked()) { m_lockAction->setText(tr("Unlock item")); m_lockAction->setIcon(QIcon(":/unlock.png")); } else { m_lockAction->setText(tr("Lock item")); m_lockAction->setIcon(QIcon(":/lock.png")); } menu.addAction(m_lockAction); menu.exec(QCursor::pos()); }
void VideoItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *) { QMenu menu; QFont menuFont = qApp->font(); menuFont.setPixelSize(14); menu.setFont(menuFont); int screenCount = m_video->getScreenCount(); if (screenCount > 0) { for (int i = 0; i < screenCount; i++) { QAction *scrAction = new QAction(tr("Screen %1").arg(i + 1), this); scrAction->setCheckable(true); if (m_video->screen() == i) scrAction->setChecked(true); scrAction->setData(i); connect(scrAction, SIGNAL(triggered()), this, SLOT(slotScreenChanged())); menu.addAction(scrAction); } } menu.addAction(m_fullscreenAction); menu.addAction(m_alignToCursor); if (isLocked()) { m_lockAction->setText(tr("Unlock item")); m_lockAction->setIcon(QIcon(":/unlock.png")); } else { m_lockAction->setText(tr("Lock item")); m_lockAction->setIcon(QIcon(":/lock.png")); } menu.addAction(m_lockAction); menu.exec(QCursor::pos()); }
void AudioItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *) { QMenu menu; QFont menuFont = qApp->font(); menuFont.setPixelSize(14); menu.setFont(menuFont); if (m_audio->getAudioDecoder() != NULL) { AudioDecoder *ad = m_audio->getAudioDecoder(); AudioParameters ap = ad->audioParameters(); if (ap.channels() == 1) m_previewLeftAction->setText(tr("Preview Mono")); menu.addAction(m_previewLeftAction); if (ap.channels() == 2) { m_previewLeftAction->setText(tr("Preview Left Channel")); menu.addAction(m_previewRightAction); menu.addAction(m_previewStereoAction); } menu.addSeparator(); } menu.addAction(m_alignToCursor); if (isLocked()) { m_lockAction->setText(tr("Unlock item")); m_lockAction->setIcon(QIcon(":/unlock.png")); } else { m_lockAction->setText(tr("Lock item")); m_lockAction->setIcon(QIcon(":/lock.png")); } menu.addAction(m_lockAction); menu.exec(QCursor::pos()); }
void MainWindow::showContextMenu( QTableWidgetItem * item,bool itemClicked ) { QMenu m ; m.setFont( this->font() ) ; int row = item->row() ; QString mt = m_ui->tableWidget->item( row,1 )->text() ; QString device = m_ui->tableWidget->item( row,0 )->text() ; if( mt == "Nil" ){ connect( m.addAction( tr( "Mount" ) ),SIGNAL( triggered() ),this,SLOT( slotMount() ) ) ; }else{ QString mp = QString( "/run/media/private/%1/" ).arg( utility::userName() ) ; QString mp_1 = QString( "/home/%1/" ).arg( utility::userName() ) ; if( mt.startsWith( mp ) || mt.startsWith( mp_1 ) ){ connect( m.addAction( tr( "Unmount" ) ),SIGNAL( triggered() ),this,SLOT( pbUmount() ) ) ; m.addSeparator() ; QString fs = m_ui->tableWidget->item( row,2 )->text() ; if( fs != "encfs" ){ connect( m.addAction( tr( "Properties" ) ),SIGNAL( triggered() ),this,SLOT( volumeProperties() ) ) ; m.addSeparator() ; } m_sharedFolderPath = utility::sharedMountPointPath( mt ) ; if( m_sharedFolderPath.isEmpty() ){ connect( m.addAction( tr( "Open Folder" ) ),SIGNAL( triggered() ), this,SLOT( slotOpenFolder() ) ) ; }else{ connect( m.addAction( tr( "Open Private Folder" ) ),SIGNAL( triggered() ), this,SLOT( slotOpenFolder() ) ) ; connect( m.addAction( tr( "Open Shared Folder" ) ),SIGNAL( triggered() ), this,SLOT( slotOpenSharedFolder() ) ) ; } }else{ m_sharedFolderPath = utility::sharedMountPointPath( mt ) ; if( m_sharedFolderPath.isEmpty() ){ if( utility::pathIsReadable( mt ) ){ connect( m.addAction( tr( "Properties" ) ),SIGNAL( triggered() ),this,SLOT( volumeProperties() ) ) ; m.addSeparator() ; connect( m.addAction( tr( "Open Folder" ) ),SIGNAL( triggered() ), this,SLOT( slotOpenFolder() ) ) ; }else{ connect( m.addAction( tr( "Properties" ) ),SIGNAL( triggered() ),this,SLOT( volumeProperties() ) ) ; } }else{ connect( m.addAction( tr( "Properties" ) ),SIGNAL( triggered() ),this,SLOT( volumeProperties() ) ) ; m.addSeparator() ; connect( m.addAction( tr( "Open Shared Folder" ) ),SIGNAL( triggered() ), this,SLOT( slotOpenSharedFolder() ) ) ; } } } m.addSeparator() ; m.addAction( tr( "Close Menu" ) ) ; if( itemClicked ){ m.exec( QCursor::pos() ) ; }else{ QPoint p = this->pos() ; int x = p.x() + 100 + m_ui->tableWidget->columnWidth( 0 ) ; int y = p.y() + 50 + m_ui->tableWidget->rowHeight( 0 ) * item->row() ; p.setX( x ) ; p.setY( y ) ; m.exec( p ) ; } }
void MidiInstrument::populatePatchPopup(QMenu* menu, int chan, MidiType songType) { menu->clear(); int mask = 0; bool drumchan = chan == 9; switch (songType) { case MIDI_TYPE_XG: mask = 4; break; case MIDI_TYPE_GS: mask = 2; break; case MIDI_TYPE_GM: if (drumchan) return; mask = 1; break; case MIDI_TYPE_NULL: mask = 7; break; } if (pg.size() > 1) { for (ciPatchGroup i = pg.begin(); i != pg.end(); ++i) { PatchGroup* pgp = *i; QMenu* pm = menu->addMenu(pgp->name); pm->setFont(config.fonts[0]); const PatchList& pl = pgp->patches; QString& gname = pgp->name; for (ciPatch ipl = pl.begin(); ipl != pl.end(); ++ipl) { const Patch* mp = *ipl; if (mp->typ & mask) { int id = ((mp->hbank & 0xff) << 16) + ((mp->lbank & 0xff) << 8) + (mp->prog & 0xff); QAction* act = pm->addAction(mp->name); //act->setCheckable(true); QString strId = QString::number(id); QStringList _data = (QStringList() << strId << gname); //_data->append(strId); //_data->append(gname); //act->setData(id); act->setData(_data); } } } } else if (pg.size() == 1) { // no groups const PatchList& pl = pg.front()->patches; for (ciPatch ipl = pl.begin(); ipl != pl.end(); ++ipl) { const Patch* mp = *ipl; if (mp->typ & mask) { int id = ((mp->hbank & 0xff) << 16) + ((mp->lbank & 0xff) << 8) + (mp->prog & 0xff); QAction* act = menu->addAction(mp->name); //act->setCheckable(true); QString strId = QString::number(id); QStringList _data = (QStringList() << strId); //_data->append(strId); //act->setData(id); act->setData(_data); } } } }
// Override the constructor so we always use a NWebPage // rather than a QWebPage NWebView::NWebView(NBrowserWindow *parent) : QWebView(parent) { this->parent = parent; editorPage = new NWebPage(this); setPage(editorPage); isDirty = false; this->setFont(global.getGuiFont(font())); contextMenu = new QMenu(this); openAction = new QAction(tr("Open"), this); contextMenu->addAction(openAction); contextMenu->addSeparator(); contextMenu->setFont(global.getGuiFont(font())); cutAction = new QAction(tr("Cut"), this); this->setupShortcut(cutAction, "Edit_Cut"); contextMenu->addAction(cutAction); connect(cutAction, SIGNAL(triggered()), parent, SLOT(cutButtonPressed())); copyAction = new QAction(tr("Copy"), this); this->setupShortcut(copyAction, "Edit_Copy"); contextMenu->addAction(copyAction); connect(copyAction, SIGNAL(triggered()), parent, SLOT(copyButtonPressed())); pasteAction = new QAction(tr("Paste"), this); setupShortcut(pasteAction, "Edit_Paste"); contextMenu->addAction(pasteAction); connect(pasteAction, SIGNAL(triggered()), parent, SLOT(pasteButtonPressed())); pasteWithoutFormatAction = new QAction(tr("Paste as Unformatted Text"), this); this->setupShortcut(pasteWithoutFormatAction, "Edit_Paste_Without_Formatting"); contextMenu->addAction(pasteWithoutFormatAction); connect(pasteWithoutFormatAction, SIGNAL(triggered()), parent, SLOT(pasteWithoutFormatButtonPressed())); removeFormattingAction = new QAction(tr("Remove Formatting"), this); this->setupShortcut(removeFormattingAction, "Edit_Remove_Formatting"); contextMenu->addAction(removeFormattingAction); connect(removeFormattingAction, SIGNAL(triggered()), parent, SLOT(removeFormatButtonPressed())); contextMenu->addSeparator(); QMenu *colorMenu = new QMenu(tr("Background Color"), this); colorMenu->setFont(global.getGuiFont(font())); QAction *action = setupColorMenuOption(tr("White")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundWhite())); action = setupColorMenuOption(tr("Red")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundRed())); action = setupColorMenuOption(tr("Blue")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundBlue())); action = setupColorMenuOption(tr("Green")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundGreen())); action = setupColorMenuOption(tr("Yellow")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundYellow())); action = setupColorMenuOption(tr("Black")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundBlack())); action = setupColorMenuOption(tr("Grey")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundGrey())); action = setupColorMenuOption(tr("Purple")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundPurple())); action = setupColorMenuOption(tr("Brown")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundBrown())); action = setupColorMenuOption(tr("Orange")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundOrange())); action = setupColorMenuOption(tr("Powder Blue")); colorMenu->addAction(action); connect(action, SIGNAL(triggered()), this, SLOT(setBackgroundPowderBlue())); contextMenu->addMenu(colorMenu); contextMenu->addSeparator(); todoAction = new QAction(tr("To-do"), this); contextMenu->addAction(todoAction); this->setupShortcut(todoAction, "Edit_Insert_Todo"); connect(todoAction, SIGNAL(triggered()), parent, SLOT(todoButtonPressed())); contextMenu->addSeparator(); insertHtmlEntitiesAction = new QAction(tr("HTML Entities"),this); contextMenu->addAction(insertHtmlEntitiesAction); this->setupShortcut(insertHtmlEntitiesAction, "Edit_Insert_Html_Entities"); connect(insertHtmlEntitiesAction, SIGNAL(triggered()), parent, SLOT(insertHtmlEntities())); contextMenu->addSeparator(); encryptAction = new QAction(tr("Encrypted Selected Text"), this); contextMenu->addAction(encryptAction); this->setupShortcut(encryptAction, "Edit_EncryptText"); connect(encryptAction, SIGNAL(triggered()), parent, SLOT(encryptButtonPressed())); insertLinkAction = new QAction(tr("Insert Hyperlink"), this); contextMenu->addAction(insertLinkAction); this->setupShortcut(insertLinkAction, "Edit_InsertHyperlink"); connect(insertLinkAction, SIGNAL(triggered()),parent, SLOT(insertLinkButtonPressed())); insertQuickLinkAction = new QAction(tr("Quick Link"), this); contextMenu->addAction(insertQuickLinkAction); this->setupShortcut(insertQuickLinkAction, "Edit_InsertQuickLink"); connect(insertQuickLinkAction, SIGNAL(triggered()),parent, SLOT(insertQuickLinkButtonPressed())); removeLinkAction = new QAction(tr("Remove Hyperlink"), this); contextMenu->addAction(removeLinkAction); this->setupShortcut(removeLinkAction, "Edit_RemoveHyperlink"); connect(removeLinkAction, SIGNAL(triggered()),parent, SLOT(removeLinkButtonPressed())); attachFileAction = new QAction(tr("Attach File"), this); contextMenu->addAction(attachFileAction); this->setupShortcut(attachFileAction, "Edit_Attach_File"); connect(attachFileAction, SIGNAL(triggered()),parent, SLOT(attachFile())); contextMenu->addSeparator(); insertLatexAction = new QAction(tr("Insert LaTeX Formula"), this); contextMenu->addAction(insertLatexAction); this->setupShortcut(insertLatexAction, "Edit_Insert_Latex"); connect(insertLatexAction, SIGNAL(triggered()),parent, SLOT(insertLatexButtonPressed())); contextMenu->addSeparator(); tableMenu = new QMenu(tr("Table"), this); tableMenu->setFont(global.getGuiFont(font())); contextMenu->addMenu(tableMenu); insertTableAction = new QAction(tr("Insert Table"), this); this->setupShortcut(insertTableAction, "Edit_Insert_Table"); tableMenu->addAction(insertTableAction); connect(insertTableAction, SIGNAL(triggered()), parent, SLOT(insertTableButtonPressed())); tableMenu->addSeparator(); insertTableRowAction = new QAction(tr("Insert Row"), this); this->setupShortcut(insertTableRowAction, "Edit_Insert_Table_Row"); tableMenu->addAction(insertTableRowAction); connect(insertTableRowAction, SIGNAL(triggered()), parent, SLOT(insertTableRowButtonPressed())); insertTableColumnAction = new QAction(tr("Insert Column"), this); this->setupShortcut(insertTableColumnAction, "Edit_Insert_Table_Column"); tableMenu->addAction(insertTableColumnAction); connect(insertTableColumnAction, SIGNAL(triggered()), parent, SLOT(insertTableColumnButtonPressed())); tableMenu->addSeparator(); deleteTableRowAction = new QAction(tr("Delete Row"), this); tableMenu->addAction(deleteTableRowAction); this->setupShortcut(deleteTableRowAction, "Edit_Delete_Table_Row"); connect(deleteTableRowAction, SIGNAL(triggered()), parent, SLOT(deleteTableRowButtonPressed())); deleteTableColumnAction = new QAction(tr("Delete Column"), this); tableMenu->addAction(deleteTableColumnAction); this->setupShortcut(deleteTableColumnAction, "Edit_Delete_Table_Column"); connect(deleteTableColumnAction, SIGNAL(triggered()), parent, SLOT(deleteTableColumnButtonPressed())); contextMenu->addSeparator(); imageMenu = new QMenu(tr("Image"), this); imageMenu->setFont(global.getGuiFont(font())); contextMenu->addMenu(imageMenu); downloadImageAction()->setText(tr("Save Image")); imageMenu->addAction(downloadImageAction()); // Don't connect this signal. The download attachmen signal will handle it. Otherwise // the signal fires twice. //connect(editorPage, SIGNAL(downloadRequested(QNetworkRequest)), this, SLOT(downloadRequested(QNetworkRequest))); imageMenu->addSeparator(); rotateImageLeftAction = new QAction(tr("Rotate Left"), this); imageMenu->addAction(rotateImageLeftAction); this->setupShortcut(rotateImageLeftAction, "Edit_Image_Rotate_Left"); connect(rotateImageLeftAction, SIGNAL(triggered()), parent, SLOT(rotateImageLeftButtonPressed())); rotateImageRightAction = new QAction(tr("Rotate Right"), this); this->setupShortcut(rotateImageRightAction, "Edit_Image_Rotate_Right"); imageMenu->addAction(rotateImageRightAction); connect(rotateImageRightAction, SIGNAL(triggered()), parent, SLOT(rotateImageRightButtonPressed())); contextMenu->addSeparator(); downloadAttachmentAction()->setText(tr("Save Attachment")); contextMenu->addAction(downloadAttachmentAction()); connect(editorPage, SIGNAL(downloadRequested(QNetworkRequest)), this, SLOT(downloadRequested(QNetworkRequest))); connect(editorPage, SIGNAL(contentsChanged()), this, SLOT(editAlert())); editorPage->setContentEditable(true); // Set some of the menus as disabled until a user selects an image or attachment downloadAttachmentAction()->setEnabled(false); rotateImageRightAction->setEnabled(false); rotateImageLeftAction->setEnabled(false); openAction->setEnabled(false); downloadImageAction()->setEnabled(false); connect(this->page()->mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), this, SLOT(exposeToJavascript())); //this->setStyleSheet("QWebView,html,body { background-color : red; foreground-color : white; }"); QString qss = global.fileManager.getQssDirPathUser(""); if (qss == "") qss = global.fileManager.getQssDirPath(""); this->settings()->setUserStyleSheetUrl(QUrl("file://"+qss+"editor.css")); }
/////////////US_Win US_Win::US_Win( QWidget* parent, Qt::WindowFlags flags ) : QMainWindow( parent, flags ) { // We need to handle US_Global::g here becuse US_Widgets is not a parent if ( ! g.isValid() ) { // Do something for invalid global memory qDebug( "US_Win: invalid global memory" ); } g.set_global_position( QPoint( 50, 50 ) ); // Ensure initialization QPoint p = g.global_position(); setGeometry( QRect( p, p + QPoint( 710, 532 ) ) ); g.set_global_position( p + QPoint( 30, 30 ) ); setWindowTitle( "UltraScan III" ); QIcon us3_icon = US_Images::getIcon( US_Images::US3_ICON ); setWindowIcon( us3_icon ); procs = QList<procData*>(); // Initialize to an empty list //////////// QMenu* file = new QMenu( tr( "&File" ), this ); //addMenu( P_CONFIG, tr( "&Configuration" ), file ); //addMenu( P_ADMIN , tr( "&Administrator" ), file ); //file->addSeparator(); addMenu( P_EXIT, tr( "E&xit" ), file ); //QMenu* type1 = new QMenu( tr( "&Velocity Data" ), file ); //addMenu( 21, tr( "&Absorbance Data" ), type1 ); //addMenu( 22, tr( "&Interference Data" ), type1 ); //addMenu( 23, tr( "&Fluorescense Data" ), type1 ); //addMenu( 24, tr( "&Edit Cell ID's Data" ), type1 ); /////////////// QMenu* edit = new QMenu( tr( "&Edit" ), this ); //addMenu( 12, tr( "&Equilibrium Data" ) , edit ); //addMenu( 13, tr( "Edit &Wavelength Data" ), edit ); //addMenu( 14, tr( "View/Edit &Multiwavelength Data" ), edit ); addMenu( P_EDIT, tr( "&Edit Data" ) , edit ); edit->addSeparator(); addMenu( P_CONFIG, tr( "&Preferences" ) , edit ); ///////////// QMenu* velocity = new QMenu( tr( "&Velocity" ), this ); addMenu( P_VHWE , tr( "&Enhanced van Holde - Weischet" ), velocity ); addMenu( P_GRIDEDIT , tr( "C&ustom 2-D Grid Editor" ), velocity ); addMenu( P_2DSA , tr( "&2-D Spectrum Analysis" ), velocity ); addMenu( P_PCSA , tr( "&Parametrically Constrained Spectrum Analysis" ), velocity ); addMenu( P_GAINIT , tr( "&Initialize Genetic Algorithm" ), velocity ); addMenu( P_DMGAINIT , tr( "Initialize Discrete Model &Genetic Algorithm" ), velocity ); addMenu( P_SECOND , tr( "Second &Moment" ), velocity ); addMenu( P_DCDT , tr( "&Time Derivative" ), velocity ); addMenu( P_FEMA , tr( "&FE Model Viewer" ), velocity ); addMenu( P_FEMSTAT , tr( "FE Model &Statistics" ), velocity ); addMenu( P_PSEUDO3D , tr( "&Combine Pseudo-3D Distributions" ), velocity ); addMenu( P_RAMP , tr( "Speed &Ramp Analysis" ), velocity ); #ifdef EQUI_MENU QMenu* equilibrium = new QMenu( tr( "E&quilibrium" ), this ); addMenu( P_EQGLOBFIT, tr( "&Global Fit" ), equilibrium ); //addMenu( P_EQTIMEEST, tr( "Estimate Equilibrium &Times", equilibrium ); #endif // QMenu* fit = new QMenu( tr( "&Global Fit" ), this ); // addMenu( P_GLOBFITEQ, tr( "Global &Equilibrium Fit" ), fit ); //addMenu( P_GLOBFITEX, tr( "Global E&xtinction Fit" ), fit ); //addMenu( P_GLOBFITSP, tr( "Global &Spectrum Fit" ), fit ); QMenu* utilities = new QMenu( tr( "&Utilities" ), this ); QMenu* multiwave = new QMenu( tr( "&Multiwavelength" ), this ); QMenu* spectrum = new QMenu( tr( "Spectral &Analysis" ), this ); addMenu( P_SPECFIT , tr( "&Spectrum Fitter" ), spectrum); addMenu( P_SPECDEC , tr( "Spectrum &Decomposition" ), spectrum); addMenu( P_CONVERT , tr( "&Import Experimental Data" ), utilities ); addMenu( P_EXPORT , tr( "&Export OpenAUC Data" ), utilities ); #if 0 // temporarily disable Create Experiment until truly ready addMenu( P_CEXPERI , tr( "Create E&xperiment" ), utilities ); #endif addMenu( P_FDSMAN , tr( "FDS File &Manager" ), utilities ); addMenu( P_FITMEN , tr( "&Fit Meniscus" ), utilities ); utilities->addMenu(spectrum); addMenu( P_COLORGRAD, tr( "Color &Gradient Generator" ), utilities ); addMenu( P_RPTGEN , tr( "&Report Generator" ), utilities ); addMenu( P_ROTORCAL , tr( "Rotor &Calibration" ), utilities ); addMenu( P_LICENSE , tr( "&License Manager" ), utilities ); addMenu( P_VHWCOMB , tr( "Combine Distribution &Plots (vHW)" ), utilities ); addMenu( P_DDCOMB , tr( "Combine &Discrete Distributions" ), utilities ); addMenu( P_GLOMODL , tr( "Create Global &Model" ), utilities ); addMenu( P_VIEWCFA , tr( "View Raw C&FA Data" ), utilities ); addMenu( P_VIEWXPN , tr( "View Raw &Optima Data" ), utilities ); addMenu( P_VIEWTMST, tr( "View &TimeState" ), utilities ); addMenu( P_VIEWMWL , tr( "&View Multiwavelength Data" ), multiwave ); addMenu( P_VIEWMSS , tr( "View MWL &S-Spectra" ), multiwave ); addMenu( P_MWSPECF , tr( "MWL Species Fit" ), multiwave ); addMenu( P_MWFSIMU , tr( "Optima MWL Fit Simulation" ), multiwave ); QMenu* simulation = new QMenu( tr( "S&imulation" ), this ); addMenu( P_ASTFEM, tr( "&Finite Element Simulation (ASTFEM)" ), simulation ); addMenu( P_EQUILTIMESIM, tr( "Estimate Equilibrium &Times" ), simulation ); addMenu( P_SASSOC, tr( "&Self-Association Equilibrium" ), simulation ); addMenu( P_MODEL1, tr( "&Model s, D and f from MW for 4 basic shapes" ), simulation ); addMenu( P_MODEL2, tr( "&Predict f and axial ratios for 4 basic shapes" ), simulation ); addMenu( P_SOMO, tr( "S&OMO Bead Modeling" ), simulation ); addMenu( P_SOMOCONFIG, tr( "S&OMO Configuration" ), simulation ); QMenu* database = new QMenu( tr( "&Database" ), this ); addMenu( P_INVESTIGATOR , tr( "Manage &Investigator Data" ), database ); addMenu( P_BUFFER , tr( "Manage &Buffer Data" ), database ); addMenu( P_VBAR , tr( "Manage &Analytes" ), database ); addMenu( P_MODEL , tr( "Manage &Models" ), database ); addMenu( P_MANAGEDATA , tr( "Manage &Data" ), database ); addMenu( P_MANAGESOLN , tr( "Manage &Solutions" ), database ); addMenu( P_MANAGEPROJ , tr( "Manage &Projects" ), database ); addMenu( P_MANAGEROTOR , tr( "Manage &Rotors" ), database ); /////////////// QMenu* help = new QMenu( tr( "&Help" ), this ); addMenu( HELP_HOME , tr("UltraScan &Home" ), help ); addMenu( HELP , tr("UltraScan &Manual" ), help ); addMenu( HELP_REG , tr("&Register Software" ), help ); addMenu( HELP_UPGRADE, tr("&Upgrade UltraScan" ), help ); addMenu( HELP_LICENSE, tr("UltraScan &License" ), help ); addMenu( HELP_ABOUT , tr("&About" ), help ); addMenu( HELP_CREDITS, tr("&Credits" ), help ); addMenu( HELP_NOTICES, tr("Show &Notices" ), help ); #ifndef Q_OS_MAC QFont bfont = QFont( US_GuiSettings::fontFamily(), US_GuiSettings::fontSize() - 1, QFont::Bold ); menuBar()->setFont( bfont ); #endif menuBar()->addMenu( file ); menuBar()->addMenu( edit ); menuBar()->addMenu( velocity ); #ifdef EQUI_MENU menuBar()->addMenu( equilibrium ); // menuBar()->addMenu( fit ); #endif menuBar()->addMenu( utilities ); menuBar()->addMenu( multiwave ); menuBar()->addMenu( simulation ); menuBar()->addMenu( database ); menuBar()->addMenu( help ); #ifndef Q_OS_MAC QFont mfont = QFont( US_GuiSettings::fontFamily(), US_GuiSettings::fontSize() - 1, QFont::Normal ); file ->setFont( mfont ); edit ->setFont( mfont ); velocity ->setFont( mfont ); #ifdef EQUI_MENU equilibrium->setFont( mfont ); // fit ->setFont( mfont ); #endif utilities ->setFont( mfont ); multiwave ->setFont( mfont ); simulation ->setFont( mfont ); database ->setFont( mfont ); help ->setFont( mfont ); #endif splash(); statusBar()->showMessage( tr( "Ready" ) ); notice_check(); // Check for any notices pending }
QMenuBar* ActionCollection::createMenuBar( QWidget *parent ) { QMenuBar* menuBar = new QMenuBar( parent ); menuBar->setFont( TomahawkUtils::systemFont() ); QMenu* controlsMenu = new QMenu( tr( "&Controls" ), menuBar ); controlsMenu->setFont( TomahawkUtils::systemFont() ); controlsMenu->addAction( m_actionCollection[ "playPause" ] ); controlsMenu->addAction( m_actionCollection[ "previousTrack" ] ); controlsMenu->addAction( m_actionCollection[ "nextTrack" ] ); controlsMenu->addSeparator(); controlsMenu->addAction( m_actionCollection[ "togglePrivacy" ] ); controlsMenu->addAction( m_actionCollection[ "showOfflineSources" ] ); controlsMenu->addSeparator(); controlsMenu->addAction( m_actionCollection[ "importPlaylist" ] ); controlsMenu->addAction( m_actionCollection[ "updateCollection" ] ); controlsMenu->addAction( m_actionCollection[ "rescanCollection" ] ); controlsMenu->addSeparator(); controlsMenu->addAction( m_actionCollection[ "quit" ] ); QMenu* settingsMenu = new QMenu( tr( "&Settings" ), menuBar ); settingsMenu->setFont( TomahawkUtils::systemFont() ); #ifndef Q_OS_MAC settingsMenu->addAction( m_actionCollection[ "toggleMenuBar" ] ); #endif settingsMenu->addAction( m_actionCollection[ "preferences" ] ); QMenu* helpMenu = new QMenu( tr( "&Help" ), menuBar ); helpMenu->setFont( TomahawkUtils::systemFont() ); helpMenu->addAction( m_actionCollection[ "diagnostics" ] ); helpMenu->addAction( m_actionCollection[ "openLogfile" ] ); helpMenu->addAction( m_actionCollection[ "legalInfo" ] ); helpMenu->addAction( m_actionCollection["getSupport"] ); helpMenu->addAction( m_actionCollection["reportBug"] ); helpMenu->addAction( m_actionCollection["helpTranslate"] ); helpMenu->addSeparator(); QMenu* whatsNew = helpMenu->addMenu( ImageRegistry::instance()->icon( RESPATH "images/whatsnew.svg" ), tr( "What's New in ..." ) ); whatsNew->setFont( TomahawkUtils::systemFont() ); whatsNew->addAction( m_actionCollection[ "whatsnew_0_8" ] ); helpMenu->addAction( m_actionCollection[ "aboutTomahawk" ] ); // Setup update check #ifndef Q_OS_MAC helpMenu->insertSeparator( m_actionCollection[ "legalInfo" ] ); #endif #if defined( Q_OS_MAC ) && defined( HAVE_SPARKLE ) helpMenu->addAction( m_actionCollection[ "checkForUpdates" ] ); #elif defined( Q_OS_WIN ) helpMenu->addSeparator(); helpMenu->addAction( m_actionCollection[ "checkForUpdates" ] ); #endif if ( qApp->arguments().contains( "--debug" ) ) { helpMenu->addSeparator(); helpMenu->addAction( m_actionCollection[ "crashNow" ] ); } menuBar->addMenu( controlsMenu ); menuBar->addMenu( settingsMenu ); #if defined( Q_OS_MAC ) QMenu* windowMenu = new QMenu( tr( "&Window" ), menuBar ); windowMenu->setFont( TomahawkUtils::systemFont() ); windowMenu->addAction( m_actionCollection[ "minimize" ] ); windowMenu->addAction( m_actionCollection[ "zoom" ] ); windowMenu->addAction( m_actionCollection[ "fullscreen" ] ); menuBar->addMenu( windowMenu ); #endif menuBar->addMenu( helpMenu ); return menuBar; }