本文整理汇总了C++中QToolBar::setWindowTitle方法的典型用法代码示例。如果您正苦于以下问题:C++ QToolBar::setWindowTitle方法的具体用法?C++ QToolBar::setWindowTitle怎么用?C++ QToolBar::setWindowTitle使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QToolBar
的用法示例。
在下文中一共展示了QToolBar::setWindowTitle方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: setupCompiler
void DevGUI::setupCompiler()
{
QAction *a;
QToolBar *tb = new QToolBar(this);
tb->setAllowedAreas(Qt::TopToolBarArea | Qt::BottomToolBarArea);
tb->setWindowTitle(tr("Compiler Actions"));
addToolBar(tb);
QMenu *menu = new QMenu(tr("&Compile"), this);
menuBar()->addMenu(menu);
actionCompile = a = new QAction(QIcon(":/compile.png"), tr("&Compile..."), this);
a->setShortcut(Qt::CTRL + Qt::ALT + Qt::Key_C);
//connect(a, SIGNAL(triggered()), this, SLOT(projComp()));
a->setEnabled(false);
tb->addAction(a);
menu->addAction(a);
actionCompile = a = new QAction(QIcon(":/rebuild.png"), tr("&Rebuild..."), this);
a->setShortcut(Qt::CTRL + Qt::ALT + Qt::Key_A);
//connect(a, SIGNAL(triggered()), this, SLOT(projRebuild()));
a->setEnabled(false);
tb->addAction(a);
menu->addAction(a);
Compiler = new DevDock(tr("Compiler"), Qt::BottomDockWidgetArea, this);
tabCompiler = Compiler->Tab();
}
示例2: createFormatToolBar
QToolBar* MainWindow::createFormatToolBar()
{
QToolBar *pFormatBar = new QToolBar();
pFormatBar->setWindowTitle( "Format Bar" );
m_pCmbFont = new QFontComboBox;
m_pCmbFont->setEditable( false );
m_pCmbFont->setFocusPolicy( Qt::NoFocus );
m_pCmbFontPointSize = new QComboBox;
updateFontPointSize( m_pCmbFont->currentText() );
m_pCmbFontPointSize->setFocusPolicy( Qt::NoFocus );
QToolButton *pBtnMoreOptions = new QToolButton;
pBtnMoreOptions->setText( "More..." );
pBtnMoreOptions->setStyleSheet( "border: 1px solid #000000" );
pBtnMoreOptions->setFixedHeight( 20 );
pBtnMoreOptions->setFocusPolicy( Qt::NoFocus );
pFormatBar->addWidget( m_pCmbFont );
pFormatBar->addWidget( m_pCmbFontPointSize );
pFormatBar->addWidget( pBtnMoreOptions );
connect( m_pCmbFont, SIGNAL(currentIndexChanged(int)), this, SLOT(onFontFamilyChanged()) );
connect( m_pCmbFontPointSize, SIGNAL(currentIndexChanged(int)), this, SLOT(onFontPointSizeChanged()) );
connect( pBtnMoreOptions, SIGNAL(clicked()), this, SLOT(onFormatMoreBtnClicked()) );
return pFormatBar;
}
示例3: setupEditActions
void TextEdit::setupEditActions()
{
QToolBar *tb = new QToolBar(this);
tb->setWindowTitle(tr("Edit Actions"));
toolBar1.addWidget(tb);
QAction *a;
a = new QAction(QIcon(rsrcPath + "/fileopen.png"), tr("&Open image"), this);
a->setShortcut(QKeySequence::Open);
connect(a, SIGNAL(triggered()), this, SLOT(imageOpen()));
tb->addAction(a);
a = actionUndo = new QAction(QIcon(rsrcPath + "/editundo.png"), tr("Undo"), this);
a->setShortcut(QKeySequence::Undo);
tb->addAction(a);
a = actionRedo = new QAction(QIcon(rsrcPath + "/editredo.png"), tr("&Redo"), this);
a->setShortcut(QKeySequence::Redo);
tb->addAction(a);
a = actionCut = new QAction(QIcon(rsrcPath + "/editcut.png"), tr("Cu&t"), this);
a->setShortcut(QKeySequence::Cut);
tb->addAction(a);
a = actionCopy = new QAction(QIcon(rsrcPath + "/editcopy.png"), tr("&Copy"), this);
a->setShortcut(QKeySequence::Copy);
tb->addAction(a);
a = actionPaste = new QAction(QIcon(rsrcPath + "/editpaste.png"), tr("&Paste"), this);
a->setShortcut(QKeySequence::Paste);
tb->addAction(a);
actionPaste->setEnabled(!QApplication::clipboard()->text().isEmpty());
}
示例4: setupTextActions
void DevGUI::setupTextActions()
{
QToolBar *tb = new QToolBar(this);
tb->setAllowedAreas(Qt::TopToolBarArea | Qt::BottomToolBarArea);
tb->setWindowTitle(tr("Format Actions"));
addToolBarBreak(Qt::TopToolBarArea);
addToolBar(tb);
Font = new QComboBox(tb);
tb->addWidget(Font);
Font->setEditable(true);
QFontDatabase db;
Font->addItems(db.families());
connect(Font, SIGNAL(activated(const QString &)),
this, SLOT(textFamily(const QString &)));
Font->setCurrentIndex(Font->findText(DevApp::font().family()));
Size = new QComboBox(tb);
Size->setObjectName("Size");
tb->addWidget(Size);
Size->setEditable(true);
foreach(int size, db.standardSizes())
Size->addItem(QString::number(size));
connect(Size, SIGNAL(activated(const QString &)),
this, SLOT(textSize(const QString &)));
Size->setCurrentIndex(Size->findText(QString::number(DevApp::font().pointSize())));
}
示例5: addView
void IdealController::addView(Qt::DockWidgetArea area, View* view)
{
IdealDockWidget *dock = new IdealDockWidget(this, m_mainWindow);
// dock object name is used to store toolview settings
QString dockObjectName = view->document()->title();
// support different configuration for same docks opened in different areas
if (m_mainWindow->area())
dockObjectName += '_' + m_mainWindow->area()->objectName();
dock->setObjectName(dockObjectName);
KAcceleratorManager::setNoAccel(dock);
QWidget *w = view->widget(dock);
if (w->parent() == 0)
{
/* Could happen when we're moving the widget from
one IdealDockWidget to another. See moveView below.
In this case, we need to reparent the widget. */
w->setParent(dock);
}
QList<QAction *> toolBarActions = view->toolBarActions();
if (toolBarActions.isEmpty()) {
dock->setWidget(w);
} else {
QMainWindow *toolView = new QMainWindow();
QToolBar *toolBar = new QToolBar(toolView);
int iconSize = m_mainWindow->style()->pixelMetric(QStyle::PM_SmallIconSize);
toolBar->setIconSize(QSize(iconSize, iconSize));
toolBar->setToolButtonStyle(Qt::ToolButtonIconOnly);
toolBar->setWindowTitle(i18n("%1 Tool Bar", w->windowTitle()));
toolBar->setFloatable(false);
toolBar->setMovable(false);
toolBar->addActions(toolBarActions);
toolView->setCentralWidget(w);
toolView->addToolBar(toolBar);
dock->setWidget(toolView);
}
dock->setWindowTitle(view->widget()->windowTitle());
dock->setWindowIcon(view->widget()->windowIcon());
dock->setFocusProxy(dock->widget());
if (IdealButtonBarWidget* bar = barForDockArea(area)) {
QAction* action = bar->addWidget(
view->document()->title(), dock,
static_cast<MainWindow*>(parent())->area(), view);
m_dockwidget_to_action[dock] = m_view_to_action[view] = action;
m_docks->addAction(action);
connect(dock, &IdealDockWidget::closeRequested, action, &QAction::toggle);
}
connect(dock, &IdealDockWidget::dockLocationChanged, this, &IdealController::dockLocationChanged);
dock->hide();
docks.insert(dock);
}
示例6: addActionsToToolBar
static QToolBar *createToolBar(const QString &title, const QString &objectName, const ActionList &actions)
{
QToolBar *rc = new QToolBar;
rc->setObjectName(objectName);
rc->setWindowTitle(title);
addActionsToToolBar(actions, rc);
return rc;
}
示例7: setup
void ToolBoxManager::setup( ToolBarItem* toolBar ) const
{
if ( !toolBar || !_toolBox )
return; // empty tool bar
int ct = _toolBox->count();
for ( int i=0; i<ct; i++ )
{
// get always the first item widget
QWidget* w = _toolBox->widget(0);
_toolBox->removeItem(0);
delete w;
}
CommandManager& mgr = Application::Instance->commandManager();
QList<ToolBarItem*> items = toolBar->getItems();
for ( QList<ToolBarItem*>::ConstIterator item = items.begin(); item != items.end(); ++item )
{
QToolBar* bar = new QToolBar();
bar->setOrientation(Qt::Vertical);
bar->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
std::string toolbarName = (*item)->command();
bar->setObjectName(QString::fromLatin1((*item)->command().c_str()));
bar->setWindowTitle(QObject::trUtf8(toolbarName.c_str())); // i18n
_toolBox->addItem( bar, bar->windowTitle() );
QList<ToolBarItem*> subitems = (*item)->getItems();
for ( QList<ToolBarItem*>::ConstIterator subitem = subitems.begin(); subitem != subitems.end(); ++subitem )
{
if ( (*subitem)->command() == "Separator" ) {
//bar->addSeparator();
} else {
mgr.addTo((*subitem)->command().c_str(), bar);
}
}
// Now set the right size policy for each tool button
QList<QToolButton*> tool = bar->findChildren<QToolButton*>();
for (QList<QToolButton*>::Iterator it = tool.begin(); it != tool.end(); ++it) {
(*it)->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
// When setting the horizontal size policy but no icon is set we use the following trick
// to make the button text left aligned.
QIcon icon = (*it)->icon();
if (icon.isNull())
{
// Create an icon filled with the button color
int size = QApplication::style()->pixelMetric(QStyle::PM_SmallIconSize);
QPixmap p(size, size);
p.fill(Qt::transparent);
(*it)->setIcon(p);
}
}
}
}
示例8: renameCustomToolbar
void DlgCustomToolbarsImp::renameCustomToolbar(const QString& old_name, const QString& new_name)
{
QVariant data = workbenchBox->itemData(workbenchBox->currentIndex(), Qt::UserRole);
Workbench* w = WorkbenchManager::instance()->active();
if (w && w->name() == std::string((const char*)data.toByteArray())) {
QList<QToolBar*> bars = getMainWindow()->findChildren<QToolBar*>(old_name);
if (bars.size() != 1)
return;
QToolBar* tb = bars.front();
tb->setObjectName(new_name);
tb->setWindowTitle(new_name);
}
}
示例9: setupEditActions
void TextEdit::setupEditActions()
{
QToolBar *tb = new QToolBar(this);
tb->setWindowTitle(tr("Edit Actions"));
addToolBar(tb);
QMenu *menu = new QMenu(tr("&Edit"), this);
menuBar()->addMenu(menu);
QAction *a;
a = actionUndo = new QAction(QIcon::fromTheme("edit-undo", QIcon(rsrcPath + "/editundo.png")),
tr("&Undo"), this);
a->setShortcut(QKeySequence::Undo);
tb->addAction(a);
menu->addAction(a);
a = actionRedo = new QAction(QIcon::fromTheme("edit-redo", QIcon(rsrcPath + "/editredo.png")),
tr("&Redo"), this);
a->setPriority(QAction::LowPriority);
a->setShortcut(QKeySequence::Redo);
tb->addAction(a);
menu->addAction(a);
menu->addSeparator();
a = actionCut = new QAction(QIcon::fromTheme("edit-cut", QIcon(rsrcPath + "/editcut.png")),
tr("Cu&t"), this);
a->setPriority(QAction::LowPriority);
a->setShortcut(QKeySequence::Cut);
tb->addAction(a);
menu->addAction(a);
a = actionCopy = new QAction(QIcon::fromTheme("edit-copy", QIcon(rsrcPath + "/editcopy.png")),
tr("&Copy"), this);
a->setPriority(QAction::LowPriority);
a->setShortcut(QKeySequence::Copy);
tb->addAction(a);
menu->addAction(a);
a = actionPaste = new QAction(QIcon::fromTheme("edit-paste", QIcon(rsrcPath + "/editpaste.png")),
tr("&Paste"), this);
a->setPriority(QAction::LowPriority);
a->setShortcut(QKeySequence::Paste);
tb->addAction(a);
menu->addAction(a);
#ifndef QT_NO_CLIPBOARD
if (const QMimeData *md = QApplication::clipboard()->mimeData())
actionPaste->setEnabled(md->hasText());
#endif
}
示例10: setupEditActions
void DevGUI::setupEditActions()
{
QToolBar *tb = new QToolBar(this);
tb->setWindowTitle(tr("Edit Actions"));
addToolBar(tb);
QMenu *menu = new QMenu(tr("&Edit"), this);
menuBar()->addMenu(menu);
QAction *a;
a = actionUndo = new QAction(QIcon(":/undo.png"), tr("&Undo"), this);
a->setShortcut(Qt::CTRL + Qt::Key_Z);
tb->addAction(a);
menu->addAction(a);
a = actionRedo = new QAction(QIcon(":/redo.png"), tr("&Redo"), this);
a->setShortcut(Qt::CTRL + Qt::Key_Y);
tb->addAction(a);
menu->addAction(a);
menu->addSeparator();
a = actionCut = new QAction(QIcon(":/cut.png"), tr("Cu&t"), this);
a->setShortcut(Qt::CTRL + Qt::Key_X);
tb->addAction(a);
menu->addAction(a);
a = actionCopy = new QAction(QIcon(":/copy.png"), tr("&Copy"), this);
a->setShortcut(Qt::CTRL + Qt::Key_C);
tb->addAction(a);
menu->addAction(a);
a = actionPaste = new QAction(QIcon(":/paste.png"), tr("&Paste"), this);
a->setShortcut(Qt::CTRL + Qt::Key_V);
tb->addAction(a);
menu->addAction(a);
actionPaste->setEnabled(!DevApp::clipboard()->text().isEmpty());
}
示例11: setupEditActions
void TextEdit::setupEditActions()
{
QToolBar *tb = new QToolBar(this);
tb->setWindowTitle(tr("Edit Actions"));
addToolBar(tb);
QMenu *menu = new QMenu(tr("&Edit"), this);
menuBar()->addMenu(menu);
QAction *a;
a = actionUndo = new QAction(QIcon(":/res/smallUndo.png"),tr("&Undo"), this);
a->setShortcut(QKeySequence::Undo);
tb->addAction(a);
menu->addAction(a);
a = actionRedo = new QAction(QIcon(":/res/smallRedo.png"), tr("&Redo"), this);
a->setPriority(QAction::LowPriority);
a->setShortcut(QKeySequence::Redo);
tb->addAction(a);
menu->addAction(a);
menu->addSeparator();
a = actionCut = new QAction(QIcon(":/res/smallcut.png"),tr("Cu&t"), this);
a->setPriority(QAction::LowPriority);
a->setShortcut(QKeySequence::Cut);
tb->addAction(a);
menu->addAction(a);
a = actionCopy = new QAction(QIcon(":/res/smallcopy.png"), tr("&Copy"), this);
a->setPriority(QAction::LowPriority);
a->setShortcut(QKeySequence::Copy);
tb->addAction(a);
menu->addAction(a);
a = actionPaste = new QAction(QIcon(":/res/smallpaste.png"), tr("&Paste"), this);
a->setPriority(QAction::LowPriority);
a->setShortcut(QKeySequence::Paste);
tb->addAction(a);
menu->addAction(a);
#ifndef QT_NO_CLIPBOARD
actionPaste->setEnabled(!QApplication::clipboard()->text().isEmpty());
#endif
}
示例12: setupTextActions
void TextEdit::setupTextActions()
{
QToolBar *tb = new QToolBar(this);
tb->setWindowTitle(tr("Format Actions"));
addToolBar(tb);
QMenu *menu = new QMenu(tr("F&ormat"), this);
menuBar()->addMenu(menu);
actionTextBold = new QAction(QIcon::fromTheme("format-text-bold", QIcon(rsrcPath + "/textbold.png")),
tr("&Bold"), this);
actionTextBold->setShortcut(Qt::CTRL + Qt::Key_B);
actionTextBold->setPriority(QAction::LowPriority);
QFont bold;
bold.setBold(true);
actionTextBold->setFont(bold);
connect(actionTextBold, SIGNAL(triggered()), this, SLOT(textBold()));
tb->addAction(actionTextBold);
menu->addAction(actionTextBold);
actionTextBold->setCheckable(true);
actionTextItalic = new QAction(QIcon::fromTheme("format-text-italic", QIcon(rsrcPath + "/textitalic.png")),
tr("&Italic"), this);
actionTextItalic->setPriority(QAction::LowPriority);
actionTextItalic->setShortcut(Qt::CTRL + Qt::Key_I);
QFont italic;
italic.setItalic(true);
actionTextItalic->setFont(italic);
connect(actionTextItalic, SIGNAL(triggered()), this, SLOT(textItalic()));
tb->addAction(actionTextItalic);
menu->addAction(actionTextItalic);
actionTextItalic->setCheckable(true);
actionTextUnderline = new QAction(QIcon::fromTheme("format-text-underline", QIcon(rsrcPath + "/textunder.png")),
tr("&Underline"), this);
actionTextUnderline->setShortcut(Qt::CTRL + Qt::Key_U);
actionTextUnderline->setPriority(QAction::LowPriority);
QFont underline;
underline.setUnderline(true);
actionTextUnderline->setFont(underline);
connect(actionTextUnderline, SIGNAL(triggered()), this, SLOT(textUnderline()));
tb->addAction(actionTextUnderline);
menu->addAction(actionTextUnderline);
actionTextUnderline->setCheckable(true);
menu->addSeparator();
QActionGroup *grp = new QActionGroup(this);
connect(grp, SIGNAL(triggered(QAction*)), this, SLOT(textAlign(QAction*)));
// Make sure the alignLeft is always left of the alignRight
if (QApplication::isLeftToRight()) {
actionAlignLeft = new QAction(QIcon::fromTheme("format-justify-left", QIcon(rsrcPath + "/textleft.png")),
tr("&Left"), grp);
actionAlignCenter = new QAction(QIcon::fromTheme("format-justify-center", QIcon(rsrcPath + "/textcenter.png")), tr("C&enter"), grp);
actionAlignRight = new QAction(QIcon::fromTheme("format-justify-right", QIcon(rsrcPath + "/textright.png")), tr("&Right"), grp);
} else {
actionAlignRight = new QAction(QIcon::fromTheme("format-justify-right", QIcon(rsrcPath + "/textright.png")), tr("&Right"), grp);
actionAlignCenter = new QAction(QIcon::fromTheme("format-justify-center", QIcon(rsrcPath + "/textcenter.png")), tr("C&enter"), grp);
actionAlignLeft = new QAction(QIcon::fromTheme("format-justify-left", QIcon(rsrcPath + "/textleft.png")), tr("&Left"), grp);
}
actionAlignJustify = new QAction(QIcon::fromTheme("format-justify-fill", QIcon(rsrcPath + "/textjustify.png")), tr("&Justify"), grp);
actionAlignLeft->setShortcut(Qt::CTRL + Qt::Key_L);
actionAlignLeft->setCheckable(true);
actionAlignLeft->setPriority(QAction::LowPriority);
actionAlignCenter->setShortcut(Qt::CTRL + Qt::Key_E);
actionAlignCenter->setCheckable(true);
actionAlignCenter->setPriority(QAction::LowPriority);
actionAlignRight->setShortcut(Qt::CTRL + Qt::Key_R);
actionAlignRight->setCheckable(true);
actionAlignRight->setPriority(QAction::LowPriority);
actionAlignJustify->setShortcut(Qt::CTRL + Qt::Key_J);
actionAlignJustify->setCheckable(true);
actionAlignJustify->setPriority(QAction::LowPriority);
tb->addActions(grp->actions());
menu->addActions(grp->actions());
menu->addSeparator();
QPixmap pix(24, 24);
pix.fill(Qt::black);
actionTextColor = new QAction(QIcon::fromTheme("text-color", QIcon(rsrcPath + "/textcolor.png")),
tr("&Text Color..."), this);
connect(actionTextColor, SIGNAL(triggered()), this, SLOT(textColor()));
tb->addAction(actionTextColor);
menu->addAction(actionTextColor);
pix.fill(Qt::green);
actionHighlightedTextColor = new QAction(QIcon::fromTheme("text-highlight-color", QIcon(rsrcPath + "/texthighlight.png")),
tr("&Text Highlight Color..."), this);
connect(actionHighlightedTextColor, SIGNAL(triggered()), this, SLOT(HighlightedText()));
tb->addAction(actionHighlightedTextColor);
menu->addAction(actionHighlightedTextColor);
//pix.fill(Qt::white);
actionBackgroundColor = new QAction(QIcon::fromTheme("bg-color", QIcon(rsrcPath + "/bgfill.png")),
//.........这里部分代码省略.........
示例13: setupFileActions
void TextEdit::setupFileActions()
{
QToolBar *tb = new QToolBar(this);
tb->setWindowTitle(tr("File Actions"));
addToolBar(tb);
QMenu *menu = new QMenu(tr("&File"), this);
menuBar()->addMenu(menu);
QAction *a;
QIcon newIcon = QIcon::fromTheme("document-new", QIcon(rsrcPath + "/filenew.png"));
a = new QAction( newIcon, tr("&New"), this);
a->setPriority(QAction::LowPriority);
a->setShortcut(QKeySequence::New);
connect(a, SIGNAL(triggered()), this, SLOT(fileNew()));
tb->addAction(a);
menu->addAction(a);
a = new QAction(QIcon::fromTheme("document-open", QIcon(rsrcPath + "/fileopen.png")),
tr("&Open..."), this);
a->setShortcut(QKeySequence::Open);
connect(a, SIGNAL(triggered()), this, SLOT(fileOpen()));
tb->addAction(a);
menu->addAction(a);
menu->addSeparator();
actionSave = a = new QAction(QIcon::fromTheme("document-save", QIcon(rsrcPath + "/filesave.png")),
tr("&Save"), this);
a->setShortcut(QKeySequence::Save);
connect(a, SIGNAL(triggered()), this, SLOT(fileSave()));
a->setEnabled(false);
tb->addAction(a);
menu->addAction(a);
menu->addSeparator();
a = new QAction(tr("Save &As ODT..."), this);
a->setPriority(QAction::LowPriority);
connect(a, SIGNAL(triggered()), this, SLOT(fileSaveAsOdt()));
menu->addAction(a);
a = new QAction(tr("Save &As HTML..."), this);
a->setPriority(QAction::LowPriority);
connect(a, SIGNAL(triggered()), this, SLOT(fileSaveAsHtml()));
menu->addAction(a);
menu->addSeparator();
#ifndef QT_NO_PRINTER
//a = new QAction(QIcon::fromTheme("document-print", QIcon(rsrcPath + "/fileprint.png")),
// tr("&Print..."), this);
//a->setPriority(QAction::LowPriority);
//a->setShortcut(QKeySequence::Print);
//connect(a, SIGNAL(triggered()), this, SLOT(filePrint()));
//tb->addAction(a);
//menu->addAction(a);
//a = new QAction(QIcon::fromTheme("fileprint", QIcon(rsrcPath + "/fileprint.png")),
// tr("Print Preview..."), this);
//connect(a, SIGNAL(triggered()), this, SLOT(filePrintPreview()));
//menu->addAction(a);
a = new QAction(QIcon::fromTheme("exportpdf", QIcon(rsrcPath + "/exportpdf.png")),
tr("&Export PDF..."), this);
a->setPriority(QAction::LowPriority);
a->setShortcut(Qt::CTRL + Qt::Key_D);
connect(a, SIGNAL(triggered()), this, SLOT(filePrintPdf()));
tb->addAction(a);
menu->addAction(a);
menu->addSeparator();
#endif
a = new QAction(tr("&Quit"), this);
a->setShortcut(Qt::CTRL + Qt::Key_Q);
connect(a, SIGNAL(triggered()), this, SLOT(close()));
menu->addAction(a);
}
示例14: toolBar
QToolBar* specActionLibrary::toolBar(QWidget* target)
{
QToolBar* bar = new QToolBar(target) ;
bar->setContentsMargins(0, 0, 0, 0) ;
bar->setIconSize(QSize(20, 20)) ;
specView* view = dynamic_cast<specView*>(target) ;
specDataView* dataView = dynamic_cast<specDataView*>(target) ;
specMetaView* metaView = dynamic_cast<specMetaView*>(target) ;
specLogView* logView = dynamic_cast<specLogView*>(target) ;
specPlot* plot = dynamic_cast<specPlot*>(target) ;
specPlotWidget* plotWidget = dynamic_cast<specPlotWidget*>(target) ;
if(view && view->model())
{
addParent(view) ;
addParent(view->model()) ;
addNewAction(bar, new specAddFolderAction(target)) ;
if(metaView)
addNewAction(bar, new specNewMetaItemAction(target));
else
{
addNewAction(bar, new specImportSpecAction(target)) ;
addNewAction(bar, new specTreeAction(target)) ;
addNewAction(bar, new specFlattenTreeAction(target)) ;
}
if(dataView || metaView)
addNewAction(bar, new specAddSVGItemAction(target)) ;
addNewAction(bar, new genericExportAction(target)) ;
bar->addSeparator() ;
addNewAction(bar, new specCopyAction(target)) ;
if(dataView || metaView)
addNewAction(bar, new matrixExportAction(target)) ;
addNewAction(bar, new specCutAction(target)) ;
addNewAction(bar, new specPasteAction(target)) ;
addNewAction(bar, new specDeleteAction(target)) ;
bar->addSeparator() ;
if(metaView || logView)
{
bar->addAction(undoAction(view)) ;
bar->addAction(redoAction(view)) ;
bar->addSeparator() ;
}
if(dataView)
{
addNewAction(bar, new toggle3DPlotAction(target)) ;
addNewAction(bar, new specMergeAction(target)) ;
addNewAction(bar, new specTiltMatrixAction(target)) ;
addNewAction(bar, new specDescriptorEditAction(target)) ;
bar->addSeparator() ;
addNewAction(bar, new specRemoveDataAction(target)) ;
addNewAction(bar, new specAverageDataAction(target)) ;
addNewAction(bar, new specSpectrumCalculatorAction(target)) ;
addNewAction(bar, new specNormalizeAction(target)) ;
}
addNewAction(bar, new specItemPropertiesAction(target)) ;
addNewAction(bar, new specSetMultilineAction(target)) ;
if(metaView)
{
addNewAction(bar, new specAddConnectionsAction(target)) ;
addNewAction(bar, new specSelectConnectedAction(target)) ;
addNewAction(bar, new specAddFitAction(target)) ;
addNewAction(bar, new specRemoveFitAction(target)) ;
addNewAction(bar, new specToggleFitStyleAction(target));
addNewAction(bar, new specConductFitAction(target)) ;
}
if(logView)
addNewAction(bar, new specDescriptorEditAction(target)) ;
bar->addSeparator() ;
if(dataView || metaView)
addNewAction(bar, new changePlotStyleAction(target)) ;
bar->setWindowTitle(tr("Items toolbar"));
}
if(plot)
{
addParent(plot);
addNewAction(bar, new specTitleAction(target)) ;
addNewAction(bar, new specXLabelAction(target)) ;
addNewAction(bar, new specYLabelAction(target)) ;
bar->addActions(plot->actions());
bar->setWindowTitle(tr("Plot toolbar"));
}
if(plotWidget)
{
delete bar ;
bar = plotWidget->createToolbar() ;
bar-> addSeparator() ;
bar-> addAction(purgeUndoAction) ;
bar-> addSeparator() ;
bar-> addAction(undoAction(this)) ;
bar-> addAction(redoAction(this)) ;
bar->setWindowTitle(tr("Main toolbar"));
}
return bar ;
}
示例15: SetupUI
void EditorMainWindow::SetupUI(QMainWindow *MainWindow) {
setWindowIcon(*QtConfig::GetIcon("colorwheel.png"));
MainWindow->setWindowTitle("Sound Engine v0.2.3");
MainWindow->resize(1280, 720);
MainWindow->setDockOptions(QMainWindow::AnimatedDocks |
QMainWindow::AllowNestedDocks |
QMainWindow::AllowTabbedDocks);
MainWindow->setTabPosition(Qt::AllDockWidgetAreas, QTabWidget::TabPosition::North);
// ************************************************************************
// Load styling
ReloadStyleSheets();
// ************************************************************************
// File Picker
auto *picker = new FilePicker();
picker->setNameFilter("*.xml");
GUI::Set(QT_INSTACE::FILE_PICKER, (void*) picker);
// ************************************************************************
// Menu Bar
QMenuBar *menuBar = new QMenuBar(MainWindow);
menuBar->setObjectName(QStringLiteral("menuBar"));
menuBar->setGeometry(QRect(0, 0, 1051, 21));
MainWindow->setMenuBar(menuBar);
// Menu Entry
{
QMenu *menuEngine = new QMenu(menuBar);
menuEngine->setObjectName(QStringLiteral("menuEngine"));
menuEngine->setTitle("File");
menuBar->addAction(menuEngine->menuAction());
{
QAction *action = new QAction(MainWindow);
action->setText("Exit");
action->setIcon(*QtConfig::GetIcon("power.png"));
menuEngine->addAction(action);
QObject::connect(action, &QAction::triggered, this, &EditorMainWindow::close);
}
{
QAction *action = new QAction(MainWindow);
action->setText("Save As...");
action->setIcon(*QtConfig::GetIcon("memorycard.png"));
menuEngine->addAction(action);
QObject::connect(action, &QAction::triggered, this, [picker]() {
picker->OpenForSave();
});
QObject::connect(picker, &QFileDialog::fileSelected, this, [picker] (const QString & file) {
if (picker->IsSaving()) {
CSoundEditor::GetScene()->SaveSceneAs(file.toStdString().c_str());
}
});
}
}
// Menu Entry
{
QMenu *menu = new QMenu(menuBar);
menu->setTitle("Scene");
menuBar->addAction(menu->menuAction());
// Submenu buttons
QAction *action = new QAction(MainWindow);
action->setText("Clear Scene");
action->setIcon(*QtConfig::GetIcon("denied.png"));
menu->addAction(action);
QObject::connect(action, &QAction::triggered, this, []() {
CSoundEditor::GetScene()->Clear();
GUI::Get<SceneWindow>(QT_INSTACE::SCENE_EDITOR)->Clear();
});
}
// Menu Entry
{
QMenu *menu = new QMenu(menuBar);
menu->setTitle("Tools");
menuBar->addAction(menu->menuAction());
// Submenu buttons
{
QAction *action = new QAction(MainWindow);
action->setText("Reload StyleSheets");
action->setIcon(*QtConfig::GetIcon("cmyk.png"));
menu->addAction(action);
QObject::connect(action, &QAction::triggered, this, &EditorMainWindow::ReloadStyleSheets);
}
//.........这里部分代码省略.........