ToolBox::ToolBox(QWidget *parentWidget) : Utils::StyledBar(parentWidget), m_leftToolBar(new QToolBar(QLatin1String("LeftSidebar"), this)), m_rightToolBar(new QToolBar(QLatin1String("RightSidebar"), this)) { setMaximumHeight(22); m_leftToolBar->setFloatable(true); m_leftToolBar->setMovable(true); m_leftToolBar->setOrientation(Qt::Horizontal); m_leftToolBar->setIconSize(QSize(24, 24)); QHBoxLayout *horizontalLayout = new QHBoxLayout(this); horizontalLayout->setMargin(0); horizontalLayout->setSpacing(0); QToolBar *stretchToolbar = new QToolBar(this); m_leftToolBar->setProperty("panelwidget", true); m_leftToolBar->setProperty("panelwidget_singlerow", false); m_rightToolBar->setProperty("panelwidget", true); m_rightToolBar->setProperty("panelwidget_singlerow", false); stretchToolbar->setProperty("panelwidget", true); stretchToolbar->setProperty("panelwidget_singlerow", false); stretchToolbar->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); m_rightToolBar->setOrientation(Qt::Horizontal); m_rightToolBar->setIconSize(QSize(24, 24)); horizontalLayout->addWidget(m_leftToolBar); horizontalLayout->addWidget(stretchToolbar); horizontalLayout->addWidget(m_rightToolBar); }
EditWidget::EditWidget(IMessageWidgets *AMessageWidgets, IMessageWindow *AWindow, QWidget *AParent) : QWidget(AParent) { ui.setupUi(this); ui.medEditor->setWordWrapMode(QTextOption::WrapAtWordBoundaryOrAnywhere); FWindow = AWindow; FMessageWidgets = AMessageWidgets; FBufferPos = -1; FSendEnabled = true; FEditEnabled = true; setRichTextEnabled(false); QToolBar *toolBar = new QToolBar; toolBar->setMovable(false); toolBar->setFloatable(false); toolBar->setIconSize(QSize(16,16)); toolBar->layout()->setMargin(0); toolBar->setStyleSheet("QToolBar { border: none; }"); toolBar->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred); FEditToolBar = new ToolBarChanger(toolBar); FEditToolBar->setMinimizeWidth(true); FEditToolBar->setSeparatorsVisible(false); connect(FEditToolBar,SIGNAL(itemRemoved(QAction *)),SLOT(onUpdateEditToolBarVisibility())); connect(FEditToolBar,SIGNAL(itemInserted(QAction *, QAction *, Action *, QWidget *, int)),SLOT(onUpdateEditToolBarVisibility())); ui.wdtSendToolBar->setLayout(new QHBoxLayout); ui.wdtSendToolBar->layout()->setMargin(0); ui.wdtSendToolBar->layout()->addWidget(toolBar); FSendAction = new Action(toolBar); FSendAction->setToolTip(tr("Send")); FSendAction->setIcon(RSR_STORAGE_MENUICONS,MNI_MESSAGEWIDGETS_SEND); connect(FSendAction,SIGNAL(triggered(bool)),SLOT(onSendActionTriggered(bool))); FEditToolBar->insertAction(FSendAction,TBG_MWEWTB_SENDMESSAGE); ui.medEditor->installEventFilter(this); ui.medEditor->setContextMenuPolicy(Qt::CustomContextMenu); Shortcuts::insertWidgetShortcut(SCT_MESSAGEWINDOWS_EDITNEXTMESSAGE,ui.medEditor); Shortcuts::insertWidgetShortcut(SCT_MESSAGEWINDOWS_EDITPREVMESSAGE,ui.medEditor); connect(ui.medEditor,SIGNAL(createDataRequest(QMimeData *)),SLOT(onEditorCreateDataRequest(QMimeData *))); connect(ui.medEditor,SIGNAL(canInsertDataRequest(const QMimeData *, bool &)), SLOT(onEditorCanInsertDataRequest(const QMimeData *, bool &))); connect(ui.medEditor,SIGNAL(insertDataRequest(const QMimeData *, QTextDocument *)), SLOT(onEditorInsertDataRequest(const QMimeData *, QTextDocument *))); connect(ui.medEditor->document(),SIGNAL(contentsChange(int,int,int)),SLOT(onEditorContentsChanged(int,int,int))); connect(ui.medEditor,SIGNAL(customContextMenuRequested(const QPoint &)),SLOT(onEditorCustomContextMenuRequested(const QPoint &))); onOptionsChanged(Options::node(OPV_MESSAGES_EDITORAUTORESIZE)); onOptionsChanged(Options::node(OPV_MESSAGES_EDITORMINIMUMLINES)); connect(Options::instance(),SIGNAL(optionsChanged(const OptionsNode &)),SLOT(onOptionsChanged(const OptionsNode &))); connect(Shortcuts::instance(),SIGNAL(shortcutUpdated(const QString &)),SLOT(onShortcutUpdated(const QString &))); connect(Shortcuts::instance(),SIGNAL(shortcutActivated(const QString &, QWidget *)),SLOT(onShortcutActivated(const QString &, QWidget *))); onUpdateEditToolBarVisibility(); }
ToolBox::ToolBox(QWidget *parentWidget) : Utils::StyledBar(parentWidget), m_leftToolBar(new QToolBar("LeftSidebar", this)), m_rightToolBar(new QToolBar("RightSidebar", this)) { setMaximumHeight(44); setSingleRow(false); QFrame *frame = new QFrame(this); m_crumblePath = new Utils::CrumblePath(frame); frame->setStyleSheet("background-color: #4e4e4e;"); frame->setFrameShape(QFrame::NoFrame); QHBoxLayout *layout = new QHBoxLayout(frame); layout->setMargin(0); layout->setSpacing(0); frame->setLayout(layout); layout->addWidget(m_crumblePath); frame->setProperty("panelwidget", true); frame->setProperty("panelwidget_singlerow", false); QVBoxLayout *verticalLayout = new QVBoxLayout(this); verticalLayout->setMargin(0); verticalLayout->setSpacing(0); QHBoxLayout *horizontalLayout = new QHBoxLayout(); verticalLayout->addLayout(horizontalLayout); verticalLayout->addWidget(frame); horizontalLayout->setMargin(0); horizontalLayout->setSpacing(0); m_leftToolBar->setFloatable(true); m_leftToolBar->setMovable(true); m_leftToolBar->setOrientation(Qt::Horizontal); m_leftToolBar->setIconSize(QSize(24, 24)); QToolBar *stretchToolbar = new QToolBar(this); setSingleRow(false); m_leftToolBar->setProperty("panelwidget", true); m_leftToolBar->setProperty("panelwidget_singlerow", false); m_rightToolBar->setProperty("panelwidget", true); m_rightToolBar->setProperty("panelwidget_singlerow", false); stretchToolbar->setProperty("panelwidget", true); stretchToolbar->setProperty("panelwidget_singlerow", false); stretchToolbar->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); m_rightToolBar->setOrientation(Qt::Horizontal); m_rightToolBar->setIconSize(QSize(24, 24)); horizontalLayout->addWidget(m_leftToolBar); horizontalLayout->addWidget(stretchToolbar); horizontalLayout->addWidget(m_rightToolBar); }
QToolBar * DesignNetFormManager::createEditorToolBar() const { QToolBar *editorToolBar = new QToolBar; const QList<Core::Id>::const_iterator cend = d->m_toolActionIds.constEnd(); for (QList<Core::Id>::const_iterator it = d->m_toolActionIds.constBegin(); it != cend; ++it) { Core::Command *cmd = Core::ActionManager::instance()->command(*it); QAction *action = cmd->action(); if (!action->icon().isNull()) editorToolBar->addAction(action); } const int size = editorToolBar->style()->pixelMetric(QStyle::PM_SmallIconSize); editorToolBar->setIconSize(QSize(size, size)); editorToolBar->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); return editorToolBar; }
QToolBar *FormEditorW::createEditorToolBar() const { QToolBar *editorToolBar = new QToolBar; const QList<Id>::const_iterator cend = m_toolActionIds.constEnd(); for (QList<Id>::const_iterator it = m_toolActionIds.constBegin(); it != cend; ++it) { Command *cmd = ActionManager::command(*it); QTC_ASSERT(cmd, continue); QAction *action = cmd->action(); if (!action->icon().isNull()) // Simplify grid has no action yet editorToolBar->addAction(action); } const int size = editorToolBar->style()->pixelMetric(QStyle::PM_SmallIconSize); editorToolBar->setIconSize(QSize(size, size)); editorToolBar->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); return editorToolBar; }
Test4Window::Test4Window(const QString &sql) : Ui::Test4Window() { Ui::Test4Window::setupUi(this); QToolBar *toolBar = QMainWindow::addToolBar("TB"); toolBar->setSizePolicy(QSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed)); toolBar->setFocusPolicy(Qt::NoFocus); pushButton = new QPushButton("Oracle", toolBar); pushButton->setFlat(true); toolBar->addWidget(pushButton); connect(pushButton, SIGNAL(released()), this, SLOT(setLexer())); QAction *oracle = new QAction("Oracle", this); QAction *mysql = new QAction("MySQL", this); oracle->setCheckable(true); oracle->setChecked(true); mysql->setCheckable(true); mysql->setChecked(false); QActionGroup* group = new QActionGroup(this); oracle->setActionGroup(group); mysql->setActionGroup(group); menuGrammar->addAction(oracle); menuGrammar->addAction(mysql); editorLeft = new toSqlText(this); leftVerticalLayout->addWidget(editorLeft); editorLeft->setText(sql); editorLeft->enableToolTips(); editorRight = new toSqlText(this); editorRight->setHighlighter(toSqlText::Oracle); rightVerticalLayout->addWidget(editorRight); editorRight->setText(sql); editorRight->setMarginType(2, QsciScintilla::TextMarginRightJustified); editorRight->setMarginWidth(2, QString::fromLatin1("009")); editorRight->enableToolTips(); connect(oracle, SIGNAL(triggered()), this, SLOT(setOracle())); connect(mysql, SIGNAL(triggered()), this, SLOT(setMySQL())); connect(actionLoad, SIGNAL(triggered()), this, SLOT(load())); connect(actionQuit, SIGNAL(triggered()), this, SLOT(close())); QMainWindow::show(); }
BookmarkList::BookmarkList( Okular::Document *document, QWidget *parent ) : QWidget( parent ), m_document( document ), m_currentDocumentItem( 0 ) { QVBoxLayout *mainlay = new QVBoxLayout( this ); mainlay->setMargin( 0 ); mainlay->setSpacing( 6 ); m_searchLine = new KTreeWidgetSearchLine( this ); mainlay->addWidget( m_searchLine ); m_tree = new QTreeWidget( this ); mainlay->addWidget( m_tree ); QStringList cols; cols.append( "Bookmarks" ); m_tree->setContextMenuPolicy( Qt::CustomContextMenu ); m_tree->setHeaderLabels( cols ); m_tree->setSortingEnabled( false ); m_tree->setRootIsDecorated( true ); m_tree->setAlternatingRowColors( true ); m_tree->setItemDelegate( new PageItemDelegate( m_tree ) ); m_tree->header()->hide(); m_tree->setSelectionBehavior( QAbstractItemView::SelectRows ); m_tree->setEditTriggers( QAbstractItemView::EditKeyPressed ); connect( m_tree, SIGNAL(itemActivated(QTreeWidgetItem*,int)), this, SLOT(slotExecuted(QTreeWidgetItem*)) ); connect( m_tree, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(slotContextMenu(QPoint)) ); m_searchLine->addTreeWidget( m_tree ); QToolBar * bookmarkController = new QToolBar( this ); mainlay->addWidget( bookmarkController ); bookmarkController->setObjectName( QLatin1String( "BookmarkControlBar" ) ); // change toolbar appearance bookmarkController->setIconSize( QSize( 16, 16 ) ); bookmarkController->setMovable( false ); QSizePolicy sp = bookmarkController->sizePolicy(); sp.setVerticalPolicy( QSizePolicy::Minimum ); bookmarkController->setSizePolicy( sp ); // insert a togglebutton [show only bookmarks in the current document] m_showBoomarkOnlyAction = bookmarkController->addAction( KIcon( "bookmarks" ), i18n( "Current document only" ) ); m_showBoomarkOnlyAction->setCheckable( true ); connect( m_showBoomarkOnlyAction, SIGNAL(toggled(bool)), this, SLOT(slotFilterBookmarks(bool)) ); connect( m_document->bookmarkManager(), SIGNAL(bookmarksChanged(KUrl)), this, SLOT(slotBookmarksChanged(KUrl)) ); rebuildTree( m_showBoomarkOnlyAction->isChecked() ); }
QToolBar *toAllocBar(QWidget *parent, const QString &str) { QString db; try { db = toConnection::currentConnection(parent).description(false); } catch (QString const& e) { TLOG(1, toDecorator, __HERE__) << " Ignored exception: " << e << std::endl; } catch (...) { TLOG(1, toDecorator, __HERE__) << " Ignored exception." << std::endl; } QString name = str; if (!db.isEmpty() && toConfigurationNewSingle::Instance().option(ToConfiguration::Global::IncludeDbCaptionBool).toBool()) { name += QString::fromLatin1(" "); name += db; } QToolBar *tool; QMainWindow *main = dynamic_cast<QMainWindow *>(parent); if (main) tool = toMainWindow::lookup()->addToolBar(name); else tool = new QToolBar(parent); // Enforce smaller toolbars on mac tool->setIconSize(QSize(16, 16)); tool->setSizePolicy(QSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed)); tool->setFocusPolicy(Qt::NoFocus); return tool; }
void MainWindow::createToolbar() { // // Main toolbar // QToolBar* toolbar = new QToolBar("File Toolbar"); toolbar->addAction(QIcon(":/icons/new.png"), "New", this, SLOT(newFile())); toolbar->addAction(QIcon(":/icons/open.png"), "Open", this, SLOT(openFile())); mActionsRequiringFiles.append(toolbar->addAction(QIcon(":/icons/save.png"), "Save", this, SLOT(saveFile()))); toolbar->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred); addToolBar(toolbar); registerContextMenuItem(toolbar); toolbar->setObjectName("File Toolbar"); QWidget* spacer = new QWidget(); spacer->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Expanding); toolbar->addWidget(spacer); toolbar->setStyleSheet("QToolBar { margin: 0px; padding: 0px; spacing: 3px; }"); toolbar->setStyleSheet("QToolButton { margin: 0px; padding: 0px; width:22px; height:22px }"); // // View toolbar // toolbar = new QToolBar("View Toolbar"); mActionsRequiringFiles.append(toolbar->addAction(QIcon(":/icons/verticalsplit.png"), "Split View Vertically", gWindowManager, SLOT(splitVertically()))); mActionsRequiringFiles.append(toolbar->addAction(QIcon(":/icons/horizontalsplit.png"), "Split View Horizontally", gWindowManager, SLOT(splitHorizontally()))); mActionsRequiringSplitViews.append(toolbar->addAction(QIcon(":/icons/removesplit.png"), "Remove Split", gWindowManager, SLOT(removeSplit()))); addToolBar(toolbar); registerContextMenuItem(toolbar); toolbar->setObjectName("View Toolbar"); toolbar->setStyleSheet("QToolBar { margin: 0px; padding: 0px; spacing: 3px; }"); toolbar->setStyleSheet("QToolButton { margin: 0px; padding: 0px; width:22px; height:22px }"); }
/** * When all dependent plugins are initialized, start the second initialization: * - setup ui * - start update checker * - read settings */ void MainWindow::extensionsInitialized() { // Creating MainWindow UI ui = new Internal::Ui::MainWindow(); ui->setupUi(this); if (layout()) layout()->setMargin(0); QWidget *header = new QWidget(this); _headerWidget = new Internal::Ui::HeaderWidget(); _headerWidget->setupUi(header); _headerWidget->edrcVersion->setText(edrcCore().currentDatabaseVersion()); _headerWidget->patientName->setPlaceholderText(tkTr(Trans::Constants::PATIENT_NAME)); ui->crListViewer->addHeaderWidget(header); // Creating ToolBar QToolBar *bar = new QToolBar(this); bar->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); bar->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); bar->setIconSize(QSize(32, 32)); QStringList uids; uids << Core::Constants::A_FILE_OPEN << Core::Constants::A_FILE_SAVE << Core::Constants::A_FILE_SAVEAS << "--" << Core::Constants::A_FILE_PRINT << "->" << eDRC::Constants::A_SHOW_DBINFO << eDRC::Constants::A_ABOUT_SFMG ; foreach(const QString &uid, uids) { if (uid=="--") { bar->addSeparator(); continue; } else if (uid=="->") { QWidget *w = new QWidget(bar); w->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); w->setLayout(new QHBoxLayout(w)); w->layout()->addItem(new QSpacerItem(10,10, QSizePolicy::Expanding, QSizePolicy::Expanding)); bar->addWidget(w); continue; } else { Core::Command *cmd = actionManager()->command(Core::Id(uid)); if (cmd) bar->addAction(cmd->action()); } } bar->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred); setUnifiedTitleAndToolBarOnMac(true); addToolBar(bar); // Create models _crTreeModel = new CrTreeModel(this); ui->crListViewer->setConsultResultTreeModel(_crTreeModel); // Disable some actions when starting as medintux plugin // if (commandLine()->value(Core::Constants::CL_MedinTux).toBool()) { // this->aNew->setEnabled(false); // this->aSave->setEnabled(false); // this->aMedinTux->setEnabled(false); // } // If needed read exchange out file // const QString &exfile = commandLine()->value(Core::Constants::CL_ExchangeOutFile).toString(); // if (!exfile.isEmpty()) { // messageSplash(tr("Reading exchange file...")); // if (commandLine()->value(Core::Internal::CommandLine::CL_MedinTux).toBool()) { // Utils::Log::addMessage(this, tr("Reading a MedinTux exchange file.")); // QString tmp = Utils::readTextFile(exfile, Utils::DontWarnUser); // Utils::Log::addMessage(this, "Content of the exchange file : " + tmp); // if (tmp.contains(DrugsDB::Constants::ENCODEDHTML_FREEDIAMSTAG)) { // int begin = tmp.indexOf(DrugsDB::Constants::ENCODEDHTML_FREEDIAMSTAG) + QString(DrugsDB::Constants::ENCODEDHTML_FREEDIAMSTAG).length(); // int end = tmp.indexOf("\"", begin); // QString encoded = tmp.mid( begin, end - begin ); // DrugsDB::DrugsIO::instance()->prescriptionFromXml(drugModel(), QByteArray::fromBase64(encoded.toAscii())); // } else if (tmp.contains("DrugsInteractionsEncodedPrescription:")) { // // TODO: Manage wrong file encoding */ // int begin = tmp.indexOf("DrugsInteractionsEncodedPrescription:") + QString("DrugsInteractionsEncodedPrescription:").length(); // int end = tmp.indexOf("\"", begin); // QString encoded = tmp.mid( begin, end - begin ); // DrugsDB::DrugsIO::instance()->prescriptionFromXml(drugModel(), QByteArray::fromBase64(encoded.toAscii())); // } // } else { // QString extras; // DrugsDB::DrugsIO::loadPrescription(drugModel(), exfile, extras); // patient()->fromXml(extras); // } // } // Start the update checker if (updateChecker()->needsUpdateChecking(settings()->getQSettings())) { settings()->setPath(Core::ISettings::UpdateUrl, Utils::Constants::FREEDRC_UPDATE_URL); if (checkUpdate()) settings()->setValue(Utils::Constants::S_LAST_CHECKUPDATE, QDate::currentDate()); } createDockWindows(); setWindowTitle(QString("%1 %2 - (c) %3").arg(qApp->applicationName()).arg(qApp->applicationVersion()).arg(tkTr(Trans::Constants::THE_FREEMEDFORMS_COMMUNITY))); setWindowIcon(theme()->icon(Core::Constants::ICONFREEDRC)); connect(Core::ICore::instance(), SIGNAL(coreOpened()), this, SLOT(postCoreOpened())); }
void BitcoinGUI::createToolBars() { QToolBar *homeToolBar = new QToolBar(this); QToolBar *menuToolBar = new QToolBar(this); homeToolBar->setObjectName("homeToolBar"); menuToolBar->setObjectName("menuToolBar"); // homeToolBar->setFixedWidth(300); // homeToolBar->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); menuToolBar->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); homeToolBar->setMovable(false); menuToolBar->setMovable(false); homeToolBar->setFloatable(false); menuToolBar->setFloatable(false); homeToolBar->setContextMenuPolicy(Qt::PreventContextMenu); menuToolBar->setContextMenuPolicy(Qt::PreventContextMenu); homeToolBar->setToolButtonStyle(Qt::ToolButtonTextBesideIcon); menuToolBar->setToolButtonStyle(Qt::ToolButtonTextOnly); homeToolBar->addAction(bitstarAction); homeToolBar->setIconSize(QSize(24, 24)); menuToolBar->layout()->setSpacing(0); // Add a spacer, so all menuToolBar items are right aligned... QWidget* spacer = new QWidget(); spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); menuToolBar->addWidget(spacer); QToolButton *overviewButton = new QToolButton; overviewButton->setDefaultAction(overviewAction); overviewButton->setObjectName("overviewMenu"); menuToolBar->addWidget(overviewButton); QToolButton *sendCoinsButton = new QToolButton; sendCoinsButton->setDefaultAction(sendCoinsAction); sendCoinsButton->setObjectName("sendcoinsMenu"); menuToolBar->addWidget(sendCoinsButton); QToolButton *receiveCoinsButton = new QToolButton; receiveCoinsButton->setDefaultAction(receiveCoinsAction); receiveCoinsButton->setObjectName("receivecoinsMenu"); menuToolBar->addWidget(receiveCoinsButton); QToolButton *historyButton = new QToolButton; historyButton->setDefaultAction(historyAction); historyButton->setObjectName("historyMenu"); menuToolBar->addWidget(historyButton); QToolButton *addressBookButton = new QToolButton; addressBookButton->setDefaultAction(addressBookAction); addressBookButton->setObjectName("addressBookMenu"); menuToolBar->addWidget(addressBookButton); lockToggleButton = new QToolButton; lockToggleButton->setDefaultAction(lockWalletToggleAction); lockToggleButton->setObjectName("lockToggleMenu"); lockToggleAction = menuToolBar->addWidget(lockToggleButton); addToolBar(homeToolBar); addToolBar(menuToolBar); }
void Player::setupUi() { // QTextStream out(stderr,QIODevice::WriteOnly); QToolBar *bar = new QToolBar; bar->setStyleSheet("QToolBar { border: 0px }"); bar->addAction(previousAction); bar->addAction(playAction); bar->addAction(pauseAction); bar->addAction(stopAction); bar->addAction(nextAction); bar->setSizePolicy(QSizePolicy::Minimum,QSizePolicy::Minimum); m_seekSlider = new QSlider(this); m_pictureLabel = new QLabel(); m_pictureLabel->setMaximumHeight(150); m_pictureLabel->setMaximumWidth(150); m_pictureLabel->setScaledContents(true); QHBoxLayout* m_horizonLayout = new QHBoxLayout(); m_horizonLayout->addWidget(m_pictureLabel); m_seekSlider->setOrientation(Qt::Horizontal); connect(this,SIGNAL(positionTime(int)),m_seekSlider,SLOT(setValue(int))); connect(m_mediaPlayer,SIGNAL(positionChanged(qint64)),this,SLOT(tick(qint64))); connect(m_seekSlider,SIGNAL(sliderMoved(int)),this,SLOT(setTime(int))); connect(m_mediaPlayer,SIGNAL(durationChanged(qint64)),this,SLOT(setDuration(qint64))); QToolBar *bar2 = new QToolBar; bar2->addWidget(randomly); bar2->setStyleSheet("QToolBar { border: 0px }"); m_volumeSlider = new QSlider(this); m_volumeSlider->setOrientation(Qt::Horizontal); m_volumeSlider->setRange(0,100); connect(m_volumeSlider,SIGNAL(valueChanged(int)),m_mediaPlayer,SLOT(setVolume(int))); m_volumeSlider->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum); QPalette palette; palette.setBrush(QPalette::Light, Qt::darkGray); m_timeLcd = new QLCDNumber; m_timeLcd->setPalette(palette); m_timeLcd->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); title = new QLineEdit; title->setReadOnly(true); #ifdef REPEAT m_repeatCheck = new QCheckBox(tr("Repeat:"),this); connect(m_repeatCheck,SIGNAL(clicked()),this,SLOT(setRepeat())); m_repeatCheck->setChecked(m_repeatState); #endif QHBoxLayout *seekerLayout = new QHBoxLayout; seekerLayout->setMargin(0); //seekerLayout->setPadding(0); seekerLayout->addWidget(m_seekSlider); seekerLayout->addWidget(m_timeLcd); QHBoxLayout *playbackLayout = new QHBoxLayout; playbackLayout->setMargin(0); // playbackLayout->setPadding(0); playbackLayout->addWidget(bar); playbackLayout->addWidget(title); playbackLayout->addWidget(bar2); #ifdef REPEAT playbackLayout->addWidget(m_repeatCheck); #endif playbackLayout->addStretch(); playbackLayout->addWidget(m_volumeSlider); QVBoxLayout *mainLayout = new QVBoxLayout; mainLayout->setMargin(0); // mainLayout->setPadding(0); mainLayout->addLayout(seekerLayout); mainLayout->addLayout(playbackLayout); m_horizonLayout->addLayout(mainLayout); setLayout(m_horizonLayout); }
TabDeckEditor::TabDeckEditor(TabSupervisor *_tabSupervisor, QWidget *parent) : Tab(_tabSupervisor, parent), modified(false) { aClearFilterAll = new QAction(QString(), this); aClearFilterAll->setIcon(QIcon(":/resources/icon_clearsearch.svg")); connect(aClearFilterAll, SIGNAL(triggered()), this, SLOT(actClearFilterAll())); aClearFilterOne = new QAction(QString(), this); aClearFilterOne->setIcon(QIcon(":/resources/decrement.svg")); connect(aClearFilterOne, SIGNAL(triggered()), this, SLOT(actClearFilterOne())); searchEdit = new SearchLineEdit; #if QT_VERSION >= 0x050300 searchEdit->addAction(QIcon(":/resources/icon_search_black.svg"), QLineEdit::LeadingPosition); #endif searchEdit->setObjectName("searchEdit"); setFocusProxy(searchEdit); setFocusPolicy(Qt::ClickFocus); searchEdit->installEventFilter(&searchKeySignals); connect(searchEdit, SIGNAL(textChanged(const QString &)), this, SLOT(updateSearch(const QString &))); connect(&searchKeySignals, SIGNAL(onEnter()), this, SLOT(actAddCard())); connect(&searchKeySignals, SIGNAL(onCtrlAltEqual()), this, SLOT(actAddCard())); connect(&searchKeySignals, SIGNAL(onCtrlAltRBracket()), this, SLOT(actAddCardToSideboard())); connect(&searchKeySignals, SIGNAL(onCtrlAltMinus()), this, SLOT(actDecrementCard())); connect(&searchKeySignals, SIGNAL(onCtrlAltLBracket()), this, SLOT(actDecrementCardFromSideboard())); connect(&searchKeySignals, SIGNAL(onCtrlAltEnter()), this, SLOT(actAddCardToSideboard())); connect(&searchKeySignals, SIGNAL(onCtrlEnter()), this, SLOT(actAddCardToSideboard())); QToolBar *deckEditToolBar = new QToolBar; deckEditToolBar->setOrientation(Qt::Horizontal); deckEditToolBar->setIconSize(QSize(24, 24)); QHBoxLayout *searchLayout = new QHBoxLayout; searchLayout->addWidget(deckEditToolBar); searchLayout->addWidget(searchEdit); databaseModel = new CardDatabaseModel(db, this); databaseDisplayModel = new CardDatabaseDisplayModel(this); databaseDisplayModel->setSourceModel(databaseModel); databaseDisplayModel->setFilterKeyColumn(0); databaseDisplayModel->sort(0, Qt::AscendingOrder); databaseView = new QTreeView(); databaseView->setFocusProxy(searchEdit); databaseView->setModel(databaseDisplayModel); databaseView->setUniformRowHeights(true); databaseView->setRootIsDecorated(false); databaseView->setAlternatingRowColors(true); databaseView->setSortingEnabled(true); databaseView->sortByColumn(0, Qt::AscendingOrder); databaseView->resizeColumnToContents(0); connect(databaseView->selectionModel(), SIGNAL(currentRowChanged(const QModelIndex &, const QModelIndex &)), this, SLOT(updateCardInfoLeft(const QModelIndex &, const QModelIndex &))); connect(databaseView, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(actAddCard())); searchEdit->setTreeView(databaseView); QVBoxLayout *leftFrame = new QVBoxLayout; leftFrame->addLayout(searchLayout); leftFrame->addWidget(databaseView); cardInfo = new CardFrame(250, 372); filterModel = new FilterTreeModel(); databaseDisplayModel->setFilterTree(filterModel->filterTree()); filterView = new QTreeView; filterView->setModel(filterModel); filterView->setMaximumWidth(250); filterView->setUniformRowHeights(true); filterView->setHeaderHidden(true); filterView->setContextMenuPolicy(Qt::CustomContextMenu); connect(filterModel, SIGNAL(layoutChanged()), filterView, SLOT(expandAll())); connect(filterView, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(filterViewCustomContextMenu(const QPoint &))); FilterBuilder *filterBuilder = new FilterBuilder; connect(filterBuilder, SIGNAL(add(const CardFilter *)), filterModel, SLOT(addFilter(const CardFilter *))); QToolButton *filterDelOne = new QToolButton(); filterDelOne->setDefaultAction(aClearFilterOne); filterDelOne->setToolButtonStyle(Qt::ToolButtonTextBesideIcon); QToolButton *filterDelAll = new QToolButton(); filterDelAll->setDefaultAction(aClearFilterAll); filterDelAll->setToolButtonStyle(Qt::ToolButtonTextBesideIcon); QGridLayout *filterLayout = new QGridLayout; filterLayout->addWidget(filterBuilder, 0, 0, 1, 2); filterLayout->addWidget(filterView, 1, 0, 1, 2); filterLayout->addWidget(filterDelOne, 2, 0); filterLayout->addWidget(filterDelAll, 2, 1); filterBox = new QGroupBox(); filterBox->setMaximumWidth(250); filterBox->setLayout(filterLayout); QVBoxLayout *middleFrame = new QVBoxLayout; middleFrame->addWidget(cardInfo, 1, Qt::AlignTop); middleFrame->addWidget(filterBox, 0); deckModel = new DeckListModel(this); connect(deckModel, SIGNAL(deckHashChanged()), this, SLOT(updateHash())); deckView = new QTreeView(); deckView->setModel(deckModel); deckView->setUniformRowHeights(true); deckView->setSortingEnabled(true); deckView->sortByColumn(1, Qt::AscendingOrder); #if QT_VERSION < 0x050000 deckView->header()->setResizeMode(QHeaderView::ResizeToContents); #else deckView->header()->setSectionResizeMode(QHeaderView::ResizeToContents); #endif deckView->installEventFilter(&deckViewKeySignals); connect(deckView->selectionModel(), SIGNAL(currentRowChanged(const QModelIndex &, const QModelIndex &)), this, SLOT(updateCardInfoRight(const QModelIndex &, const QModelIndex &))); connect(deckView, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(actSwapCard())); connect(&deckViewKeySignals, SIGNAL(onS()), this, SLOT(actSwapCard())); connect(&deckViewKeySignals, SIGNAL(onEnter()), this, SLOT(actIncrement())); connect(&deckViewKeySignals, SIGNAL(onCtrlAltEqual()), this, SLOT(actIncrement())); connect(&deckViewKeySignals, SIGNAL(onCtrlAltMinus()), this, SLOT(actDecrement())); connect(&deckViewKeySignals, SIGNAL(onRight()), this, SLOT(actIncrement())); connect(&deckViewKeySignals, SIGNAL(onLeft()), this, SLOT(actDecrement())); connect(&deckViewKeySignals, SIGNAL(onDelete()), this, SLOT(actRemoveCard())); nameLabel = new QLabel(); nameEdit = new QLineEdit; nameLabel->setBuddy(nameEdit); connect(nameEdit, SIGNAL(textChanged(const QString &)), this, SLOT(updateName(const QString &))); commentsLabel = new QLabel(); commentsEdit = new QTextEdit; commentsEdit->setMaximumHeight(70); commentsLabel->setBuddy(commentsEdit); connect(commentsEdit, SIGNAL(textChanged()), this, SLOT(updateComments())); hashLabel1 = new QLabel(); hashLabel = new QLabel; QGridLayout *grid = new QGridLayout; grid->addWidget(nameLabel, 0, 0); grid->addWidget(nameEdit, 0, 1); grid->addWidget(commentsLabel, 1, 0); grid->addWidget(commentsEdit, 1, 1); grid->addWidget(hashLabel1, 2, 0); grid->addWidget(hashLabel, 2, 1); /* Update price aUpdatePrices = new QAction(QString(), this); aUpdatePrices->setIcon(QIcon(":/resources/icon_update.png")); connect(aUpdatePrices, SIGNAL(triggered()), this, SLOT(actUpdatePrices())); if (!settingsCache->getPriceTagFeature()) aUpdatePrices->setVisible(false); connect(settingsCache, SIGNAL(priceTagFeatureChanged(int)), this, SLOT(setPriceTagFeatureEnabled(int))); */ QToolBar *deckToolBar = new QToolBar; deckToolBar->setOrientation(Qt::Vertical); deckToolBar->setToolButtonStyle(Qt::ToolButtonTextBesideIcon); deckToolBar->setIconSize(QSize(24, 24)); //deckToolBar->addAction(aUpdatePrices); QHBoxLayout *deckToolbarLayout = new QHBoxLayout; deckToolbarLayout->addStretch(); deckToolbarLayout->addWidget(deckToolBar); deckToolbarLayout->addStretch(); QVBoxLayout *rightFrame = new QVBoxLayout; rightFrame->addLayout(grid); rightFrame->addWidget(deckView, 10); rightFrame->addLayout(deckToolbarLayout); QHBoxLayout *mainLayout = new QHBoxLayout; mainLayout->addLayout(leftFrame, 10); mainLayout->addLayout(middleFrame); mainLayout->addLayout(rightFrame); setLayout(mainLayout); aNewDeck = new QAction(QString(), this); aNewDeck->setShortcuts(QKeySequence::New); connect(aNewDeck, SIGNAL(triggered()), this, SLOT(actNewDeck())); aLoadDeck = new QAction(QString(), this); aLoadDeck->setShortcuts(QKeySequence::Open); connect(aLoadDeck, SIGNAL(triggered()), this, SLOT(actLoadDeck())); aSaveDeck = new QAction(QString(), this); aSaveDeck->setShortcuts(QKeySequence::Save); connect(aSaveDeck, SIGNAL(triggered()), this, SLOT(actSaveDeck())); aSaveDeckAs = new QAction(QString(), this); // aSaveDeckAs->setShortcuts(QKeySequence::SaveAs); connect(aSaveDeckAs, SIGNAL(triggered()), this, SLOT(actSaveDeckAs())); aLoadDeckFromClipboard = new QAction(QString(), this); connect(aLoadDeckFromClipboard, SIGNAL(triggered()), this, SLOT(actLoadDeckFromClipboard())); aLoadDeckFromClipboard->setShortcuts(QKeySequence::Paste); aSaveDeckToClipboard = new QAction(QString(), this); connect(aSaveDeckToClipboard, SIGNAL(triggered()), this, SLOT(actSaveDeckToClipboard())); aSaveDeckToClipboard->setShortcuts(QKeySequence::Copy); aPrintDeck = new QAction(QString(), this); aPrintDeck->setShortcuts(QKeySequence::Print); connect(aPrintDeck, SIGNAL(triggered()), this, SLOT(actPrintDeck())); aAnalyzeDeck = new QAction(QString(), this); connect(aAnalyzeDeck, SIGNAL(triggered()), this, SLOT(actAnalyzeDeck())); aClose = new QAction(QString(), this); connect(aClose, SIGNAL(triggered()), this, SLOT(closeRequest())); aOpenCustomFolder = new QAction(QString(), this); connect(aOpenCustomFolder, SIGNAL(triggered()), this, SLOT(actOpenCustomFolder())); aEditSets = new QAction(QString(), this); connect(aEditSets, SIGNAL(triggered()), this, SLOT(actEditSets())); aEditTokens = new QAction(QString(), this); connect(aEditTokens, SIGNAL(triggered()), this, SLOT(actEditTokens())); deckMenu = new QMenu(this); deckMenu->addAction(aNewDeck); deckMenu->addAction(aLoadDeck); deckMenu->addAction(aSaveDeck); deckMenu->addAction(aSaveDeckAs); deckMenu->addSeparator(); deckMenu->addAction(aLoadDeckFromClipboard); deckMenu->addAction(aSaveDeckToClipboard); deckMenu->addSeparator(); deckMenu->addAction(aPrintDeck); deckMenu->addSeparator(); deckMenu->addAction(aAnalyzeDeck); deckMenu->addSeparator(); deckMenu->addAction(aClose); addTabMenu(deckMenu); dbMenu = new QMenu(this); dbMenu->addAction(aEditSets); dbMenu->addAction(aEditTokens); dbMenu->addSeparator(); dbMenu->addAction(aClearFilterAll); #if defined(Q_OS_WIN) || defined(Q_OS_MAC) dbMenu->addSeparator(); dbMenu->addAction(aOpenCustomFolder); #endif addTabMenu(dbMenu); aAddCard = new QAction(QString(), this); aAddCard->setIcon(QIcon(":/resources/arrow_right_green.svg")); connect(aAddCard, SIGNAL(triggered()), this, SLOT(actAddCard())); aAddCardToSideboard = new QAction(QString(), this); aAddCardToSideboard->setIcon(QIcon(":/resources/add_to_sideboard.svg")); connect(aAddCardToSideboard, SIGNAL(triggered()), this, SLOT(actAddCardToSideboard())); aRemoveCard = new QAction(QString(), this); aRemoveCard->setIcon(QIcon(":/resources/remove_row.svg")); connect(aRemoveCard, SIGNAL(triggered()), this, SLOT(actRemoveCard())); aIncrement = new QAction(QString(), this); aIncrement->setIcon(QIcon(":/resources/increment.svg")); connect(aIncrement, SIGNAL(triggered()), this, SLOT(actIncrement())); aDecrement = new QAction(QString(), this); aDecrement->setIcon(QIcon(":/resources/decrement.svg")); connect(aDecrement, SIGNAL(triggered()), this, SLOT(actDecrement())); deckEditToolBar->addAction(aAddCard); deckEditToolBar->addAction(aAddCardToSideboard); deckEditToolBar->addAction(aRemoveCard); deckEditToolBar->addAction(aDecrement); deckEditToolBar->addAction(aIncrement); deckEditToolBar->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); retranslateUi(); resize(950, 700); QTimer::singleShot(0, this, SLOT(checkFirstRunDetected())); }
dtkPlotViewToolBar::dtkPlotViewToolBar(dtkPlotView *parent) : QFrame(parent->widget()), d(new dtkPlotViewToolBarPrivate()) { QToolBar *bar = new QToolBar(this); d->view = parent; d->defaultViewAction = new QAction("Default", this); d->defaultViewAction->setToolTip("Show default view"); d->defaultViewAction->setIcon(QPixmap(":dtkPlot/pixmaps/dtkPlotAxis.png")); d->gridAction = new QAction("Grid", this); d->gridAction->setCheckable(true); d->gridAction->setChecked(false); d->gridAction->setToolTip("Draw grid coodinates"); d->gridAction->setIcon(QPixmap(":dtkPlot/pixmaps/dtkPlotGrid.png")); d->pickingAction = new QAction("Picking", this); d->pickingAction->setCheckable(true); d->pickingAction->setChecked(false); d->pickingAction->setToolTip("Activate picking"); d->pickingAction->setIcon(QPixmap(":dtkPlot/pixmaps/dtkPlotPicking.png")); d->zoomAction = new QAction("Zoom", this); d->zoomAction->setCheckable(true); d->zoomAction->setChecked(false); d->zoomAction->setToolTip("Activate zoom"); d->zoomAction->setIcon(QPixmap(":dtkPlot/pixmaps/dtkPlotZoom.png")); d->legendAction = new QAction("Legend", this); d->legendAction->setCheckable(true); d->legendAction->setChecked(false); d->legendAction->setToolTip("Activate legend"); d->legendAction->setIcon(QPixmap(":dtkPlot/pixmaps/dtkPlotLegend.png")); d->exportAction = new QAction("Export", this); d->exportAction->setToolTip("Export view"); d->exportAction->setIcon(QPixmap(":dtkPlot/pixmaps/dtkPlotSupportExport.png")); bar->addAction(d->defaultViewAction); bar->addAction(d->zoomAction); bar->addAction(d->gridAction); bar->addAction(d->pickingAction); bar->addAction(d->legendAction); bar->addWidget(new dtkSpacer); bar->addAction(d->exportAction); bar->setFloatable(false); bar->setIconSize(QSize(18, 18)); bar->setMovable(false); bar->setOrientation(Qt::Horizontal); bar->setFixedHeight(25); bar->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); QVBoxLayout *layout = new QVBoxLayout(this); layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); layout->addWidget(bar); connect(d->defaultViewAction, SIGNAL(triggered(bool)), this, SLOT(onDefaultView())); connect(d->zoomAction, SIGNAL(triggered(bool)), this, SLOT(onZoomActivated(bool))); connect(d->gridAction, SIGNAL(triggered(bool)), this, SLOT(onGridActivated(bool))); connect(d->pickingAction, SIGNAL(triggered(bool)), this, SLOT(onPickingActivated(bool))); connect(d->legendAction, SIGNAL(triggered(bool)), this, SLOT(onLegendActivated(bool))); connect(d->exportAction, SIGNAL(triggered()), this, SLOT(onExport())); }
void TabDeckEditor::createCentralFrame() { searchEdit = new SearchLineEdit; searchEdit->setObjectName("searchEdit"); #if QT_VERSION >= 0x050300 searchEdit->addAction(QPixmap("theme:icons/search"), QLineEdit::LeadingPosition); #endif setFocusProxy(searchEdit); setFocusPolicy(Qt::ClickFocus); searchEdit->installEventFilter(&searchKeySignals); searchKeySignals.setObjectName("searchKeySignals"); connect(searchEdit, SIGNAL(textChanged(const QString &)), this, SLOT(updateSearch(const QString &))); connect(&searchKeySignals, SIGNAL(onEnter()), this, SLOT(actAddCard())); connect(&searchKeySignals, SIGNAL(onCtrlAltEqual()), this, SLOT(actAddCard())); connect(&searchKeySignals, SIGNAL(onCtrlAltRBracket()), this, SLOT(actAddCardToSideboard())); connect(&searchKeySignals, SIGNAL(onCtrlAltMinus()), this, SLOT(actDecrementCard())); connect(&searchKeySignals, SIGNAL(onCtrlAltLBracket()), this, SLOT(actDecrementCardFromSideboard())); connect(&searchKeySignals, SIGNAL(onCtrlAltEnter()), this, SLOT(actAddCardToSideboard())); connect(&searchKeySignals, SIGNAL(onCtrlEnter()), this, SLOT(actAddCardToSideboard())); databaseModel = new CardDatabaseModel(db, this); databaseModel->setObjectName("databaseModel"); databaseDisplayModel = new CardDatabaseDisplayModel(this); databaseDisplayModel->setSourceModel(databaseModel); databaseDisplayModel->setFilterKeyColumn(0); databaseDisplayModel->sort(0, Qt::AscendingOrder); databaseView = new QTreeView(); databaseView->setObjectName("databaseView"); databaseView->setFocusProxy(searchEdit); databaseView->setModel(databaseDisplayModel); databaseView->setUniformRowHeights(true); databaseView->setRootIsDecorated(false); databaseView->setAlternatingRowColors(true); databaseView->setSortingEnabled(true); databaseView->sortByColumn(0, Qt::AscendingOrder); databaseView->resizeColumnToContents(0); connect(databaseView->selectionModel(), SIGNAL(currentRowChanged(const QModelIndex &, const QModelIndex &)), this, SLOT(updateCardInfoLeft(const QModelIndex &, const QModelIndex &))); connect(databaseView, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(actAddCard())); searchEdit->setTreeView(databaseView); aAddCard = new QAction(QString(), this); aAddCard->setIcon(QPixmap("theme:icons/arrow_right_green")); connect(aAddCard, SIGNAL(triggered()), this, SLOT(actAddCard())); aAddCardToSideboard = new QAction(QString(), this); aAddCardToSideboard->setIcon(QPixmap("theme:icons/arrow_right_blue")); connect(aAddCardToSideboard, SIGNAL(triggered()), this, SLOT(actAddCardToSideboard())); aRemoveCard = new QAction(QString(), this); aRemoveCard->setIcon(QPixmap("theme:icons/remove_row")); connect(aRemoveCard, SIGNAL(triggered()), this, SLOT(actRemoveCard())); aIncrement = new QAction(QString(), this); aIncrement->setIcon(QPixmap("theme:icons/increment")); connect(aIncrement, SIGNAL(triggered()), this, SLOT(actIncrement())); aDecrement = new QAction(QString(), this); aDecrement->setIcon(QPixmap("theme:icons/decrement")); connect(aDecrement, SIGNAL(triggered()), this, SLOT(actDecrement())); QToolBar *deckEditToolBar = new QToolBar; deckEditToolBar->setObjectName("deckEditToolBar"); deckEditToolBar->setOrientation(Qt::Horizontal); deckEditToolBar->setIconSize(QSize(24, 24)); deckEditToolBar->addAction(aAddCard); deckEditToolBar->addAction(aAddCardToSideboard); deckEditToolBar->addAction(aRemoveCard); deckEditToolBar->addAction(aDecrement); deckEditToolBar->addAction(aIncrement); deckEditToolBar->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); searchLayout = new QHBoxLayout; searchLayout->setObjectName("searchLayout"); searchLayout->addWidget(deckEditToolBar); searchLayout->addWidget(searchEdit); createShowHideDocksButtons(); centralFrame = new QVBoxLayout; centralFrame->setObjectName("centralFrame"); centralFrame->addLayout(searchLayout); centralFrame->addWidget(databaseView); centralWidget = new QWidget(MainWindow); centralWidget->setObjectName("centralWidget"); centralWidget->setLayout(centralFrame); MainWindow->setCentralWidget(centralWidget); MainWindow->setDockOptions(QMainWindow::AnimatedDocks|QMainWindow::AllowNestedDocks|QMainWindow::AllowTabbedDocks); QHBoxLayout *mainLayout = new QHBoxLayout; mainLayout->setObjectName("mainLayout"); mainLayout->addWidget(MainWindow); setLayout(mainLayout); }
void Widgets::createToolbar() { QToolBar* standardBar = new QToolBar(tr("StandardBar"), this); standardBar->setAllowedAreas(Qt::AllToolBarAreas); standardBar->addAction(m_actNew); standardBar->addAction(m_actOpen); standardBar->addAction(m_actSave); standardBar->addSeparator(); standardBar->addAction(m_actPrint); standardBar->addAction(m_actPrintPreview); addToolBar(standardBar); QToolBar* customBar = new QToolBar(tr("CustomStyle"), this); customBar->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); customBar->setAllowedAreas(Qt::AllToolBarAreas); customBar->addAction(m_actDefaultStyle); customBar->addAction(m_actOffice2007Style); customBar->addAction(m_actRibbonStyle); customBar->addSeparator(); QAction* actTheme = new QAction(QIcon(":/res/customthemes.png"), tr("Custom Themes"), this); actTheme->setMenu(m_menuTheme); customBar->addAction(actTheme); if (QToolButton* button = qobject_cast<QToolButton*>(customBar->widgetForAction(actTheme))) { button->setPopupMode(QToolButton::InstantPopup); button->setToolButtonStyle(Qt::ToolButtonTextBesideIcon); } addToolBar(customBar); QToolBar* explorerBar = new QToolBar(tr("Explorer"), this); explorerBar->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); explorerBar->setAllowedAreas(Qt::AllToolBarAreas); QAction* act = explorerBar->addAction(QIcon(":/res/back.png"), tr("Back")); act->setStatusTip(tr("Back")); act = explorerBar->addAction(QIcon(":/res/forward.png"), tr("Forward")); act->setStatusTip(tr("Forward")); explorerBar->addSeparator(); act = explorerBar->addAction(QIcon(":/res/up.png"), tr("Up")); act->setStatusTip(tr("Up")); act = explorerBar->addAction(QIcon(":/res/viewsearch.png"), tr("Search")); act->setStatusTip(tr("Search")); act = explorerBar->addAction(QIcon(":/res/viewfolders.png"), tr("Folders")); act->setStatusTip(tr("Folders")); act = explorerBar->addAction(QIcon(":/res/viewhistory.png"), tr("History")); act->setStatusTip(tr("History")); explorerBar->addSeparator(); act = explorerBar->addAction(QIcon(":/res/moveto.png"), tr("Move To")); act->setStatusTip(tr("Move To")); act = explorerBar->addAction(QIcon(":/res/copyto.png"), tr("Copy To")); act->setStatusTip(tr("Copy To")); act = explorerBar->addAction(QIcon(":/res/delete.png"), tr("Delete")); act->setStatusTip(tr("Delete")); act = explorerBar->addAction(QIcon(":/res/undo.png"), tr("Undo")); act->setStatusTip(tr("Undo")); explorerBar->addSeparator(); act = explorerBar->addAction(QIcon(":/res/views.png"), tr("Views")); act->setStatusTip(tr("Views")); addToolBar(explorerBar); }
ToolbarMenu::ToolbarMenu(QWidget *parent) : QMenu(parent) { MainWindow *w = MainWindow::instance(); addAction(w->getAction("stopafterthis")); addSeparator(); #ifdef APP_SNAPSHOT addAction(w->getAction("snapshot")); #endif addAction(w->getAction("findVideoParts")); addSeparator(); addAction(w->getAction("webpage")); addAction(w->getAction("videolink")); addAction(w->getAction("openInBrowser")); addAction(w->getAction("download")); addSeparator(); QWidgetAction *widgetAction = new QWidgetAction(this); ShareToolbar *shareToolbar = new ShareToolbar(); connect(this, &ToolbarMenu::leftMarginChanged, shareToolbar, &ShareToolbar::setLeftMargin); widgetAction->setDefaultWidget(shareToolbar); addAction(widgetAction); addSeparator(); addAction(w->getAction("compactView")); addAction(w->getAction("ontop")); addSeparator(); QToolBar *definitionToolbar = new QToolBar(); definitionToolbar->setStyleSheet("QToolButton { padding: 0}"); definitionToolbar->setToolButtonStyle(Qt::ToolButtonTextOnly); definitionToolbar->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); QActionGroup *definitionGroup = new QActionGroup(this); const VideoDefinition &preferredDefinition = YT3::instance().maxVideoDefinition(); int counter = 0; for (auto defName : VideoDefinition::getDefinitionNames()) { QAction *a = new QAction(defName); a->setCheckable(true); a->setChecked(preferredDefinition.getName() == defName); connect(a, &QAction::triggered, this, [this, defName] { MainWindow::instance()->setDefinitionMode(defName); close(); }); definitionGroup->addAction(a); definitionToolbar->addAction(a); if (counter == 0) { QWidget *w = definitionToolbar->widgetForAction(a); w->setProperty("first", true); counter++; } } QWidgetAction *definitionAction = new QWidgetAction(this); definitionAction->setDefaultWidget(definitionToolbar); addAction(definitionAction); addSeparator(); addAction(w->getAction("clearRecentKeywords")); #ifndef APP_MAC addSeparator(); addAction(w->getAction("toggleMenu")); addSeparator(); addMenu(w->getMenu("help")); #endif }
EditorView::EditorView(EditorModel *model, QWidget *parent) : QWidget(parent), m_toolBar(new QWidget), m_container(new QStackedWidget(this)), m_editorList(new QComboBox), m_closeButton(new QToolButton), m_lockButton(new QToolButton), m_defaultToolBar(new QToolBar(this)), m_infoWidget(new QFrame(this)), m_editorForInfoWidget(0), m_statusHLine(new QFrame(this)), m_statusWidget(new QFrame(this)) { QVBoxLayout *tl = new QVBoxLayout(this); tl->setSpacing(0); tl->setMargin(0); { m_editorList->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); m_editorList->setMinimumContentsLength(20); m_editorList->setModel(model); m_editorList->setMaxVisibleItems(40); QToolBar *editorListToolBar = new QToolBar; editorListToolBar->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Ignored); editorListToolBar->addWidget(m_editorList); m_defaultToolBar->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); m_activeToolBar = m_defaultToolBar; QHBoxLayout *toolBarLayout = new QHBoxLayout; toolBarLayout->setMargin(0); toolBarLayout->setSpacing(0); toolBarLayout->addWidget(m_defaultToolBar); m_toolBar->setLayout(toolBarLayout); m_lockButton->setAutoRaise(true); m_lockButton->setProperty("type", QLatin1String("dockbutton")); m_closeButton->setAutoRaise(true); m_closeButton->setIcon(QIcon(":/core/images/closebutton.png")); m_closeButton->setProperty("type", QLatin1String("dockbutton")); QToolBar *rightToolBar = new QToolBar; rightToolBar->setLayoutDirection(Qt::RightToLeft); rightToolBar->addWidget(m_closeButton); rightToolBar->addWidget(m_lockButton); QHBoxLayout *toplayout = new QHBoxLayout; toplayout->setSpacing(0); toplayout->setMargin(0); toplayout->addWidget(editorListToolBar); toplayout->addWidget(m_toolBar, 1); // Custom toolbar stretches toplayout->addWidget(rightToolBar); QWidget *top = new QWidget; QVBoxLayout *vlayout = new QVBoxLayout(top); vlayout->setSpacing(0); vlayout->setMargin(0); vlayout->addLayout(toplayout); tl->addWidget(top); connect(m_editorList, SIGNAL(activated(int)), this, SLOT(listSelectionActivated(int))); connect(m_lockButton, SIGNAL(clicked()), this, SLOT(makeEditorWritable())); connect(m_closeButton, SIGNAL(clicked()), this, SLOT(closeView()), Qt::QueuedConnection); } { m_infoWidget->setFrameStyle(QFrame::Panel | QFrame::Raised); m_infoWidget->setLineWidth(1); m_infoWidget->setForegroundRole(QPalette::ToolTipText); m_infoWidget->setBackgroundRole(QPalette::ToolTipBase); m_infoWidget->setAutoFillBackground(true); QHBoxLayout *hbox = new QHBoxLayout(m_infoWidget); hbox->setMargin(2); m_infoWidgetLabel = new QLabel("Placeholder"); m_infoWidgetLabel->setForegroundRole(QPalette::ToolTipText); hbox->addWidget(m_infoWidgetLabel); hbox->addStretch(1); m_infoWidgetButton = new QToolButton; m_infoWidgetButton->setText(tr("Placeholder")); hbox->addWidget(m_infoWidgetButton); QToolButton *closeButton = new QToolButton; closeButton->setAutoRaise(true); closeButton->setIcon(QIcon(":/core/images/clear.png")); closeButton->setToolTip(tr("Close")); connect(closeButton, SIGNAL(clicked()), m_infoWidget, SLOT(hide())); hbox->addWidget(closeButton); m_infoWidget->setVisible(false); tl->addWidget(m_infoWidget); } tl->addWidget(m_container); { m_statusHLine->setFrameStyle(QFrame::HLine); m_statusWidget->setFrameStyle(QFrame::Panel | QFrame::Raised); m_statusWidget->setLineWidth(1); //m_statusWidget->setForegroundRole(QPalette::ToolTipText); //m_statusWidget->setBackgroundRole(QPalette::ToolTipBase); m_statusWidget->setAutoFillBackground(true); QHBoxLayout *hbox = new QHBoxLayout(m_statusWidget); hbox->setMargin(2); m_statusWidgetLabel = new QLabel("Placeholder"); m_statusWidgetLabel->setForegroundRole(QPalette::ToolTipText); hbox->addWidget(m_statusWidgetLabel); hbox->addStretch(1); m_statusWidgetButton = new QToolButton; m_statusWidgetButton->setText(tr("Placeholder")); hbox->addWidget(m_statusWidgetButton); m_statusHLine->setVisible(false); m_statusWidget->setVisible(false); tl->addWidget(m_statusHLine); tl->addWidget(m_statusWidget); } }
WndSets::WndSets(QWidget *parent) : QMainWindow(parent) { // left toolbar QToolBar *setsEditToolBar = new QToolBar; setsEditToolBar->setOrientation(Qt::Vertical); setsEditToolBar->setIconSize(QSize(24, 24)); setsEditToolBar->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); aTop = new QAction(QString(), this); aTop->setIcon(QPixmap("theme:icons/arrow_top_green")); aTop->setToolTip(tr("Move selected set to the top")); aTop->setEnabled(false); connect(aTop, SIGNAL(triggered()), this, SLOT(actTop())); setsEditToolBar->addAction(aTop); aUp = new QAction(QString(), this); aUp->setIcon(QPixmap("theme:icons/arrow_up_green")); aUp->setToolTip(tr("Move selected set up")); aUp->setEnabled(false); connect(aUp, SIGNAL(triggered()), this, SLOT(actUp())); setsEditToolBar->addAction(aUp); aDown = new QAction(QString(), this); aDown->setIcon(QPixmap("theme:icons/arrow_down_green")); aDown->setToolTip(tr("Move selected set down")); aDown->setEnabled(false); connect(aDown, SIGNAL(triggered()), this, SLOT(actDown())); setsEditToolBar->addAction(aDown); aBottom = new QAction(QString(), this); aBottom->setIcon(QPixmap("theme:icons/arrow_bottom_green")); aBottom->setToolTip(tr("Move selected set to the bottom")); aBottom->setEnabled(false); connect(aBottom, SIGNAL(triggered()), this, SLOT(actBottom())); setsEditToolBar->addAction(aBottom); // view model = new SetsModel(db, this); view = new QTreeView; view->setModel(model); view->setAlternatingRowColors(true); view->setUniformRowHeights(true); view->setAllColumnsShowFocus(true); view->setSortingEnabled(true); view->setSelectionMode(QAbstractItemView::SingleSelection); view->setSelectionBehavior(QAbstractItemView::SelectRows); view->setDragEnabled(true); view->setAcceptDrops(true); view->setDropIndicatorShown(true); view->setDragDropMode(QAbstractItemView::InternalMove); view->header()->setSectionResizeMode(QHeaderView::Stretch); view->header()->setSectionResizeMode(SetsModel::LongNameCol, QHeaderView::ResizeToContents); view->sortByColumn(SetsModel::SortKeyCol, Qt::AscendingOrder); view->setColumnHidden(SetsModel::SortKeyCol, true); view->setColumnHidden(SetsModel::IsKnownCol, true); view->setRootIsDecorated(false); connect(view->selectionModel(), SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)), this, SLOT(actToggleButtons(const QItemSelection &, const QItemSelection &))); // bottom buttons enableAllButton = new QPushButton(tr("Enable all sets")); connect(enableAllButton, SIGNAL(clicked()), this, SLOT(actEnableAll())); disableAllButton = new QPushButton(tr("Disable all sets")); connect(disableAllButton, SIGNAL(clicked()), this, SLOT(actDisableAll())); QLabel *labNotes = new QLabel; labNotes->setText("<b>" + tr("hints:") + "</b>" + "<ul><li>" + tr("Enable the sets that you want to have available in the deck editor") + "</li><li>" + tr("Move sets around to change their order, or click on a column header to sort sets on that field") + "</li><li>" + tr("Sets order decides the source that will be used when loading images for a specific card") + "</li><li>" + tr("Disabled sets will be used for loading images only if all the enabled sets failed") + "</li></ul>"); QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); connect(buttonBox, SIGNAL(accepted()), this, SLOT(actSave())); connect(buttonBox, SIGNAL(rejected()), this, SLOT(actRestore())); QGridLayout *mainLayout = new QGridLayout; mainLayout->addWidget(setsEditToolBar, 0, 0, 1, 1); mainLayout->addWidget(view, 0, 1, 1, 2); mainLayout->addWidget(enableAllButton, 1, 1, 1, 1); mainLayout->addWidget(disableAllButton, 1, 2, 1, 1); mainLayout->addWidget(labNotes, 2, 1, 1, 2); mainLayout->addWidget(buttonBox, 3, 1, 1, 2); mainLayout->setColumnStretch(1, 1); mainLayout->setColumnStretch(2, 1); QWidget *centralWidget = new QWidget; centralWidget->setLayout(mainLayout); setCentralWidget(centralWidget); setWindowTitle(tr("Edit sets")); resize(700, 400); }
Reviews::Reviews( QWidget * parent, Okular::Document * document ) : QWidget( parent ), m_document( document ) { // create widgets and layout them vertically QVBoxLayout * vLayout = new QVBoxLayout( this ); vLayout->setMargin( 0 ); vLayout->setSpacing( 6 ); m_view = new TreeView( m_document, this ); m_view->setAlternatingRowColors( true ); m_view->setSelectionMode( QAbstractItemView::ExtendedSelection ); m_view->header()->hide(); QToolBar *toolBar = new QToolBar( this ); toolBar->setObjectName( QLatin1String( "reviewOptsBar" ) ); QSizePolicy sp = toolBar->sizePolicy(); sp.setVerticalPolicy( QSizePolicy::Minimum ); toolBar->setSizePolicy( sp ); m_model = new AnnotationModel( m_document, m_view ); m_filterProxy = new PageFilterProxyModel( m_view ); m_groupProxy = new PageGroupProxyModel( m_view ); m_authorProxy = new AuthorGroupProxyModel( m_view ); m_filterProxy->setSourceModel( m_model ); m_groupProxy->setSourceModel( m_filterProxy ); m_authorProxy->setSourceModel( m_groupProxy ); m_view->setModel( m_authorProxy ); m_searchLine = new KTreeViewSearchLine( this, m_view ); m_searchLine->setCaseSensitivity( Okular::Settings::self()->reviewsSearchCaseSensitive() ? Qt::CaseSensitive : Qt::CaseInsensitive ); m_searchLine->setRegularExpression( Okular::Settings::self()->reviewsSearchRegularExpression() ); connect( m_searchLine, SIGNAL(searchOptionsChanged()), this, SLOT(saveSearchOptions()) ); vLayout->addWidget( m_searchLine ); vLayout->addWidget( m_view ); vLayout->addWidget( toolBar ); toolBar->setIconSize( QSize( 16, 16 ) ); toolBar->setMovable( false ); // - add Page button QAction * groupByPageAction = toolBar->addAction( KIcon( "text-x-generic" ), i18n( "Group by Page Hello World!" ) ); groupByPageAction->setCheckable( true ); connect( groupByPageAction, SIGNAL(toggled(bool)), this, SLOT(slotPageEnabled(bool)) ); groupByPageAction->setChecked( Okular::Settings::groupByPage() ); // - add Author button QAction * groupByAuthorAction = toolBar->addAction( KIcon( "user-identity" ), i18n( "Group by Author Hello World!" ) ); groupByAuthorAction->setCheckable( true ); connect( groupByAuthorAction, SIGNAL(toggled(bool)), this, SLOT(slotAuthorEnabled(bool)) ); groupByAuthorAction->setChecked( Okular::Settings::groupByAuthor() ); // - add separator toolBar->addSeparator(); // - add Current Page Only button QAction * curPageOnlyAction = toolBar->addAction( KIcon( "arrow-down" ), i18n( "Show reviews for current page only" ) ); curPageOnlyAction->setCheckable( true ); connect( curPageOnlyAction, SIGNAL(toggled(bool)), this, SLOT(slotCurrentPageOnly(bool)) ); curPageOnlyAction->setChecked( Okular::Settings::currentPageOnly() ); connect( m_view, SIGNAL(activated(QModelIndex)), this, SLOT(activated(QModelIndex)) ); m_view->setContextMenuPolicy( Qt::CustomContextMenu ); connect( m_view, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuRequested(QPoint)) ); }