EditBookmarksDialog::EditBookmarksDialog(IBookmarks *ABookmarks, const Jid &AStreamJid, const QList<IBookmark> &AList, QWidget *AParent) : QDialog(AParent) { REPORT_VIEW; ui.setupUi(this); setAttribute(Qt::WA_DeleteOnClose,true); setWindowTitle(tr("Edit bookmarks - %1").arg(AStreamJid.uBare())); IconStorage::staticStorage(RSR_STORAGE_MENUICONS)->insertAutoIcon(this,MNI_BOOKMARKS_EDIT,0,0,"windowIcon"); FBookmarks = ABookmarks; FStreamJid = AStreamJid; ui.tbwBookmarks->setRowCount(AList.count()); for (int row=0; row<AList.count(); ++row) { IBookmark bookmark = AList.at(row); setBookmarkToRow(row,bookmark); } QHeaderView *header = ui.tbwBookmarks->horizontalHeader(); header->setSectionsClickable(true); header->setSectionResizeMode(COL_NAME,QHeaderView::ResizeToContents); header->setSectionResizeMode(COL_VALUE,QHeaderView::Stretch); header->setSectionResizeMode(COL_NICK,QHeaderView::ResizeToContents); header->hideSection(COL_SORT); connect(header,SIGNAL(sectionClicked(int)),SLOT(onSortingStateChange(int))); connect(ui.pbtAdd,SIGNAL(clicked()),SLOT(onEditButtonClicked())); connect(ui.pbtEdit,SIGNAL(clicked()),SLOT(onEditButtonClicked())); connect(ui.pbtDelete,SIGNAL(clicked()),SLOT(onEditButtonClicked())); connect(ui.pbtMoveUp,SIGNAL(clicked()),SLOT(onEditButtonClicked())); connect(ui.pbtMoveDown,SIGNAL(clicked()),SLOT(onEditButtonClicked())); connect(ui.bbxButtons,SIGNAL(accepted()),SLOT(onDialogAccepted())); connect(ui.tbwBookmarks,SIGNAL(itemDoubleClicked(QTableWidgetItem *)),SLOT(onTableItemDoubleClicked(QTableWidgetItem *))); }
RemoteMachineMonitorDialogImpl::RemoteMachineMonitorDialogImpl( QWidget * p, RemoteMachineMonitor* monitor, bool runTaskMode ) : QDialog( p ), PING_YES( ":core/images/remote_machine_ping_yes.png" ), PING_NO( ":core/images/remote_machine_ping_no.png" ), PING_WAIT_FOR_RESPONSE( ":core/images/remote_machine_ping_waiting_response.png" ), PING_QUESTION(":core/images/question.png"), rmm(monitor), getPublicMachinesTask( NULL ) { setupUi( this ); // add log-view widget QVBoxLayout* logLayout = new QVBoxLayout(); logViewHolder->setLayout(logLayout); LogViewWidget* logView = new LogViewWidget(prepareLogFilter()); logView->setSearchBoxMode(LogViewSearchBox_Hidden); logLayout->addWidget(logView); currentlySelectedItemIndex = -1; assert(rmm != NULL); QList< RemoteMachineSettingsPtr > monitorItems = rmm->getRemoteMachineMonitorItems(); int sz = monitorItems.size(); for( int i = 0; i < sz; ++i ) { const RemoteMachineSettingsPtr& item = monitorItems.at( i ); addMachineSettings( item, false ); } rsLog.details(tr("Found %1 remote machine records").arg(sz)); connect( okPushButton, SIGNAL( clicked() ), SLOT( sl_okPushButtonClicked() ) ); connect( cancelPushButton, SIGNAL( clicked() ), SLOT( sl_cancelPushButtonClicked() ) ); connect( addPushButton, SIGNAL( clicked() ), SLOT( sl_addPushButtonClicked() ) ); connect( removePushButton, SIGNAL( clicked() ), SLOT( sl_removePushButtonClicked() ) ); connect( modifyPushButton, SIGNAL( clicked() ), SLOT( sl_modifyPushButtonClicked() ) ); connect( showTasksButton, SIGNAL(clicked()), SLOT(sl_showUserTasksButtonClicked()) ); connect( machinesTreeWidget, SIGNAL( itemSelectionChanged() ), SLOT( sl_selectionChanged() ) ); connect( pingPushButton, SIGNAL( clicked() ), SLOT( sl_pingPushButtonClicked() ) ); connect( getPublicMachinesButton, SIGNAL( clicked() ), SLOT( sl_getPublicMachinesButtonClicked() ) ); okPushButton->setDefault( true ); QHeaderView * header = machinesTreeWidget->header(); header->setStretchLastSection( false ); #if (QT_VERSION < 0x050000) //Qt 5 header->setClickable( false ); header->setResizeMode( 1, QHeaderView::Stretch ); #else header->setSectionsClickable( false ); header->setSectionResizeMode( 1, QHeaderView::Stretch ); #endif if( runTaskMode ) { okPushButton->setText( OK_BUTTON_RUN ); } initMachineActionsMenu(); updateState(); }
BoardView::BoardView(QWidget *parent) :QTableView(parent) { QHeaderView *hHeader = horizontalHeader(); #ifdef HAVE_QT5 hHeader->setSectionResizeMode(QHeaderView::Fixed); hHeader->setSectionsMovable(false); hHeader->setSectionsClickable(false); #else hHeader->setMovable(false); hHeader->setResizeMode(QHeaderView::Fixed); hHeader->setClickable(false); #endif hHeader->setDefaultAlignment( Qt::AlignHCenter ); hHeader->setDefaultSectionSize(50); QHeaderView *vHeader = verticalHeader(); #ifdef HAVE_QT5 vHeader->setSectionResizeMode(QHeaderView::Fixed); vHeader->setSectionsClickable(false); vHeader->setSectionsMovable(false); #else vHeader->setResizeMode(QHeaderView::Fixed); vHeader->setClickable(false); vHeader->setMovable(false); #endif vHeader->setDefaultAlignment( Qt::AlignVCenter ); vHeader->setDefaultSectionSize(50); setSelectionMode(QAbstractItemView::SingleSelection); setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setItemDelegate(new BoardDelegate(this)); setStyleSheet("QHeaderView::section {background-color: #ffffe7; border: 1px solid #74440e; color: black; }" "QTableCornerButton::section { background-color: #ffffe7; border: 1px solid #74440e; color: black; }" "QToolTip { background-color: #ffeeaf; padding: 2px; border: 1px solid #74440e; }"); }
Prefs_Fonts::Prefs_Fonts(QWidget* parent, ScribusDoc* doc) : Prefs_Pane(parent), m_doc(doc) { setupUi(this); RList = PrefsManager::instance()->appPrefs.fontPrefs.GFontSub; UsedFonts.clear(); CurrentPath = ""; m_askBeforeSubstitute = true; setMinimumSize(fontMetrics().width( tr( "Available Fonts" )+ tr( "Font Substitutions" )+ tr( "Additional Paths" ))+180, 200); fontListTableView->setModel(new FontListModel(fontListTableView, m_doc)); fontSubstitutionsTableWidget->setRowCount(RList.count()); fontSubstitutionsTableWidget->setColumnCount(2); fontSubstitutionsTableWidget->setHorizontalHeaderItem(0, new QTableWidgetItem( tr("Font Name"))); fontSubstitutionsTableWidget->setHorizontalHeaderItem(1, new QTableWidgetItem( tr("Replacement"))); fontSubstitutionsTableWidget->setSortingEnabled(false); fontSubstitutionsTableWidget->setSelectionBehavior( QAbstractItemView::SelectRows ); QHeaderView *header = fontSubstitutionsTableWidget->horizontalHeader(); header->setSectionsMovable(false); header->setSectionsClickable(false); header->setSectionResizeMode(QHeaderView::Stretch); fontSubstitutionsTableWidget->verticalHeader()->hide(); fontSubstitutionsTableWidget->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); // If we're being called for global application preferences, not document // preferences, we let the user customize font search paths. Because things // go rather badly if paths are changed/removed while a doc is open, the // control is also not displayed if there is a document open. if (m_doc==0 && !ScCore->primaryMainWindow()->HaveDoc) { whyBlankLabel->resize(0,0); whyBlankLabel->hide(); readPaths(); changeButton->setEnabled(false); removeButton->setEnabled(false); connect(pathListWidget, SIGNAL(itemClicked(QListWidgetItem*)), this, SLOT(SelectPath(QListWidgetItem*))); connect(addButton, SIGNAL(clicked()), this, SLOT(AddPath())); connect(changeButton, SIGNAL(clicked()), this, SLOT(ChangePath())); connect(removeButton, SIGNAL(clicked()), this, SLOT(DelPath())); }
FontReplaceDialog::FontReplaceDialog( QWidget* parent, QMap<QString, QString> *RList) : QDialog( parent ) { setModal(true); setWindowTitle( tr( "Font Substitution" ) ); setWindowIcon(IconManager::instance()->loadIcon("AppIcon.png")); ReplaceList = RList; FontReplaceDialogLayout = new QVBoxLayout( this ); FontReplaceDialogLayout->setMargin(10); FontReplaceDialogLayout->setSpacing(5); textLabel1 = new QLabel(this); textLabel1->setAlignment(Qt::AlignVCenter); textLabel1->setWordWrap(true); textLabel1->setText( "<qt>" + tr("This document contains some fonts that are not installed on your system, please choose a suitable replacement for them. Cancel will stop the document from loading.") + "</qt>" ); FontReplaceDialogLayout->addWidget( textLabel1 ); replacementTable = new QTableWidget(0, 2, this ); replacementTable->setHorizontalHeaderItem(0, new QTableWidgetItem( tr("Original Font"))); replacementTable->setHorizontalHeaderItem(1, new QTableWidgetItem( tr("Substitution Font"))); replacementTable->setSortingEnabled(false); replacementTable->setSelectionBehavior( QAbstractItemView::SelectRows ); QHeaderView *header = replacementTable->horizontalHeader(); header->setSectionsClickable(false ); header->setSectionsMovable( false ); header->setSectionResizeMode(QHeaderView::Stretch); replacementTable->verticalHeader()->hide(); replacementTable->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); replacementTable->setRowCount(RList->count()); int a = 0; QMap<QString,QString>::Iterator itfsu; for (itfsu = RList->begin(); itfsu != RList->end(); ++itfsu) { replacementTable->setItem(a, 0, new QTableWidgetItem(itfsu.key())); FontCombo* item = new FontCombo(this); setCurrentComboItem(item, itfsu.value()); replacementTable->setCellWidget(a, 1, item); a++; } FontReplaceDialogLayout->addWidget( replacementTable ); layout1 = new QHBoxLayout; layout1->setMargin(0); layout1->setSpacing(5); stickyReplacements = new QCheckBox( this ); stickyReplacements->setText( tr( "Make these substitutions permanent" ) ); layout1->addWidget( stickyReplacements ); QSpacerItem* spacer1 = new QSpacerItem( 2, 2, QSizePolicy::Expanding, QSizePolicy::Minimum ); layout1->addItem( spacer1 ); okButton = new QPushButton( CommonStrings::tr_OK, this ); layout1->addWidget( okButton ); cancelButton = new QPushButton( CommonStrings::tr_Cancel, this ); layout1->addWidget( cancelButton ); FontReplaceDialogLayout->addLayout( layout1 ); resize( QSize(450, 250) ); cancelButton->setToolTip( "<qt>" + tr( "Cancels these font substitutions and stops loading the document.") + "</qt>" ); stickyReplacements->setToolTip( "<qt>" + tr( "Enabling this tells Scribus to use these replacements for missing fonts permanently in all future layouts. This can be reverted or changed in File > Preferences > Fonts.") + "</qt>" ); okButton->setToolTip( "<qt>" + tr( "If you select OK, then save, these substitutions are made permanent in the document.") + "</qt>" ); connect(okButton, SIGNAL(clicked()), this, SLOT(leaveOK())); connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject())); }
/** * Constructor */ FlarmAliasList::FlarmAliasList( QWidget *parent ) : QWidget( parent ), list(0), m_enableScroller(0) { setAttribute( Qt::WA_DeleteOnClose ); QHBoxLayout *topLayout = new QHBoxLayout( this ); topLayout->setSpacing(5); list = new QTableWidget( 0, 2, this ); list->setSelectionBehavior( QAbstractItemView::SelectRows ); // list->setSelectionMode( QAbstractItemView::SingleSelection ); list->setAlternatingRowColors( true ); list->setVerticalScrollMode( QAbstractItemView::ScrollPerPixel ); list->setHorizontalScrollMode( QAbstractItemView::ScrollPerPixel ); #ifdef ANDROID QScrollBar* lvsb = list->verticalScrollBar(); lvsb->setStyleSheet( Layout::getCbSbStyle() ); #endif #ifdef QSCROLLER QScroller::grabGesture( list->viewport(), QScroller::LeftMouseButtonGesture ); #endif #ifdef QTSCROLLER QtScroller::grabGesture( list->viewport(), QtScroller::LeftMouseButtonGesture ); #endif QString style = "QTableView QTableCornerButton::section { background: gray }"; list->setStyleSheet( style ); QHeaderView *vHeader = list->verticalHeader(); style = "QHeaderView::section { width: 2em }"; vHeader->setStyleSheet( style ); // set new row height from configuration int afMargin = GeneralConfig::instance()->getListDisplayAFMargin(); rowDelegate = new RowDelegate( list, afMargin ); list->setItemDelegate( rowDelegate ); // hide vertical headers // QHeaderView *vHeader = list->verticalHeader(); // vHeader->setVisible(false); QHeaderView* hHeader = list->horizontalHeader(); hHeader->setStretchLastSection( true ); #if QT_VERSION >= 0x050000 hHeader->setSectionsClickable( true ); #else hHeader->setClickable( true ); #endif connect( hHeader, SIGNAL(sectionClicked(int)), this, SLOT(slot_HeaderClicked(int)) ); QTableWidgetItem *item = new QTableWidgetItem( tr(" Flarm ID ") ); list->setHorizontalHeaderItem( 0, item ); item = new QTableWidgetItem( tr(" Alias (15) ") ); list->setHorizontalHeaderItem( 1, item ); connect( list, SIGNAL(cellChanged( int, int )), this, SLOT(slot_CellChanged( int, int )) ); connect( list, SIGNAL(cellClicked( int, int )), this, SLOT(slot_CellClicked( int, int )) ); connect( list, SIGNAL(itemSelectionChanged()), this, SLOT(slot_ItemSelectionChanged()) ); topLayout->addWidget( list, 2 ); QGroupBox* buttonBox = new QGroupBox( this ); int buttonSize = Layout::getButtonSize(); int iconSize = buttonSize - 5; QPushButton *addButton = new QPushButton; addButton->setIcon( QIcon( GeneralConfig::instance()->loadPixmap( "add.png" ) ) ); addButton->setIconSize(QSize(iconSize, iconSize)); // addButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::QSizePolicy::Preferred); addButton->setMinimumSize(buttonSize, buttonSize); addButton->setMaximumSize(buttonSize, buttonSize); deleteButton = new QPushButton; deleteButton->setIcon( QIcon( GeneralConfig::instance()->loadPixmap( "delete.png" ) ) ); deleteButton->setIconSize(QSize(iconSize, iconSize)); // deleteButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::QSizePolicy::Preferred); deleteButton->setMinimumSize(buttonSize, buttonSize); deleteButton->setMaximumSize(buttonSize, buttonSize); deleteButton->setEnabled(false); #if defined(QSCROLLER) || defined(QTSCROLLER) m_enableScroller = new QCheckBox("]["); m_enableScroller->setCheckState( Qt::Checked ); m_enableScroller->setMinimumHeight( Layout::getButtonSize(12) ); connect( m_enableScroller, SIGNAL(stateChanged(int)), this, SLOT(slot_scrollerBoxToggled(int)) ); #endif QPushButton *okButton = new QPushButton; okButton->setIcon(QIcon(GeneralConfig::instance()->loadPixmap("ok.png"))); okButton->setIconSize(QSize(iconSize, iconSize)); // okButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::QSizePolicy::Preferred); okButton->setMinimumSize(buttonSize, buttonSize); okButton->setMaximumSize(buttonSize, buttonSize); QPushButton *closeButton = new QPushButton; closeButton->setIcon(QIcon(GeneralConfig::instance()->loadPixmap("cancel.png"))); closeButton->setIconSize(QSize(iconSize, iconSize)); // closeButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::QSizePolicy::Preferred); closeButton->setMinimumSize(buttonSize, buttonSize); closeButton->setMaximumSize(buttonSize, buttonSize); connect( addButton, SIGNAL(clicked() ), this, SLOT(slot_AddRow()) ); connect( deleteButton, SIGNAL(clicked() ), this, SLOT(slot_DeleteRows()) ); connect( okButton, SIGNAL(clicked() ), this, SLOT(slot_Ok()) ); connect( closeButton, SIGNAL(clicked() ), this, SLOT(slot_Close()) ); // vertical box with operator buttons QVBoxLayout *vbox = new QVBoxLayout; vbox->setSpacing(0); vbox->addWidget( addButton ); vbox->addSpacing(32); vbox->addWidget( deleteButton ); vbox->addStretch(2); #if defined(QSCROLLER) || defined(QTSCROLLER) vbox->addWidget( m_enableScroller, 0, Qt::AlignCenter ); vbox->addStretch(2); #endif vbox->addWidget( okButton ); vbox->addSpacing(32); vbox->addWidget( closeButton ); buttonBox->setLayout( vbox ); topLayout->addWidget( buttonBox ); // load alias data into table if( ! aliasHash.isEmpty() ) { QMutableHashIterator<QString, QString> it(aliasHash); while( it.hasNext() ) { it.next(); slot_AddRow( it.key(), it.value() ); } list->sortByColumn( 1, Qt::AscendingOrder ); } }
/** * Constructor */ Logbook::Logbook( QWidget *parent ) : QWidget( parent ), m_tableModified(false) { setObjectName("Logbook"); setWindowFlags(Qt::Tool); setWindowTitle( tr("Logbook")); setWindowModality( Qt::WindowModal ); setAttribute(Qt::WA_DeleteOnClose); // Resize the window to the same size as the main window has. That will // completely hide the parent window. resize( MainWindow::mainWindow()->size() ); QHBoxLayout *topLayout = new QHBoxLayout( this ); topLayout->setSpacing(5); m_table = new QTableWidget( 0, 8, this ); m_table->setVerticalScrollMode( QAbstractItemView::ScrollPerPixel ); m_table->setHorizontalScrollMode( QAbstractItemView::ScrollPerPixel ); #ifdef ANDROID QScrollBar* lvsb = m_table->verticalScrollBar(); lvsb->setStyleSheet( Layout::getCbSbStyle() ); #endif #ifdef QSCROLLER QScroller::grabGesture( m_table->viewport(), QScroller::LeftMouseButtonGesture ); #endif #ifdef QTSCROLLER QtScroller::grabGesture( m_table->viewport(), QtScroller::LeftMouseButtonGesture ); #endif m_table->setSelectionBehavior( QAbstractItemView::SelectRows ); m_table->setAlternatingRowColors( true ); QHeaderView* hHeader = m_table->horizontalHeader(); // that makes trouble on N810 // hHeader->setStretchLastSection( true ); #if QT_VERSION >= 0x050000 hHeader->setSectionsClickable( true ); #else hHeader->setClickable( true ); #endif connect( hHeader, SIGNAL(sectionClicked(int)), this, SLOT(slot_HeaderClicked(int)) ); setTableHeader(); topLayout->addWidget( m_table, 2 ); QGroupBox* buttonBox = new QGroupBox( this ); int buttonSize = Layout::getButtonSize(); int iconSize = buttonSize - 5; m_deleteAllButton = new QPushButton; m_deleteAllButton->setIcon( QIcon( GeneralConfig::instance()->loadPixmap( "clear.png" ) ) ); m_deleteAllButton->setIconSize(QSize(iconSize, iconSize)); m_deleteAllButton->setMinimumSize(buttonSize, buttonSize); m_deleteAllButton->setMaximumSize(buttonSize, buttonSize); m_deleteButton = new QPushButton; m_deleteButton->setIcon( QIcon( GeneralConfig::instance()->loadPixmap( "delete.png" ) ) ); m_deleteButton->setIconSize(QSize(iconSize, iconSize)); m_deleteButton->setMinimumSize(buttonSize, buttonSize); m_deleteButton->setMaximumSize(buttonSize, buttonSize); m_deleteButton->setEnabled(false); m_okButton = new QPushButton; m_okButton->setIcon(QIcon(GeneralConfig::instance()->loadPixmap("ok.png"))); m_okButton->setIconSize(QSize(iconSize, iconSize)); m_okButton->setMinimumSize(buttonSize, buttonSize); m_okButton->setMaximumSize(buttonSize, buttonSize); QPushButton *closeButton = new QPushButton; closeButton->setIcon(QIcon(GeneralConfig::instance()->loadPixmap("cancel.png"))); closeButton->setIconSize(QSize(iconSize, iconSize)); closeButton->setMinimumSize(buttonSize, buttonSize); closeButton->setMaximumSize(buttonSize, buttonSize); connect( m_deleteAllButton, SIGNAL(clicked() ), this, SLOT(slot_DeleteAllRows()) ); connect( m_deleteButton, SIGNAL(clicked() ), this, SLOT(slot_DeleteRows()) ); connect( m_okButton, SIGNAL(clicked() ), this, SLOT(slot_Ok()) ); connect( closeButton, SIGNAL(clicked() ), this, SLOT(slot_Close()) ); // vertical box with operator buttons QVBoxLayout *vbox = new QVBoxLayout; vbox->setSpacing(0); vbox->addWidget( m_deleteAllButton ); vbox->addSpacing(32); vbox->addWidget( m_deleteButton ); vbox->addStretch(2); vbox->addWidget( m_okButton ); vbox->addSpacing(32); vbox->addWidget( closeButton ); buttonBox->setLayout( vbox ); topLayout->addWidget( buttonBox ); QString style = "QTableView QTableCornerButton::section { background: gray }"; m_table->setStyleSheet( style ); QHeaderView *vHeader = m_table->verticalHeader(); style = "QHeaderView::section { width: 2em }"; vHeader->setStyleSheet( style ); // set new row height from configuration int afMargin = GeneralConfig::instance()->getListDisplayAFMargin(); rowDelegate = new RowDelegate( m_table, afMargin ); m_table->setItemDelegate( rowDelegate ); loadLogbookData(); }
DlRawfileDescTab::DlRawfileDescTab(QWidget* parent, DlProject* dlProject) : QWidget(parent), dlProject_(dlProject), rawSettingsDialog(nullptr), fieldSepTOB1Flag_(false) { DEBUG_FUNC_NAME variableView_ = new VariableView(this); variableModel_ = new VariableModel(variableView_, dlProject_->variables()); variableDelegate_ = new VariableDelegate(variableView_); variableView_->setModel(variableModel_); variableView_->setItemDelegate(variableDelegate_); variableView_->setSelectionMode(QAbstractItemView::SingleSelection); variableView_->setSelectionBehavior(QAbstractItemView::SelectColumns); variableView_->setCornerButtonEnabled(false); variableView_->setWordWrap(false); QHeaderView *hHeaderView = variableView_->horizontalHeader(); hHeaderView->setDefaultSectionSize(175); hHeaderView->setSectionResizeMode(QHeaderView::Fixed); hHeaderView->setSectionsClickable(true); hHeaderView->setHighlightSections(true); hHeaderView->setSectionsMovable(false); variableView_->setMinimumHeight(298); variableView_->resizeRowsToContents(); variableView_->resizeColumnsToContents(); for (int i = 0; i < variableModel_->rowCount(); i++) { variableView_->verticalHeader()->resizeSection(i, 20); } auto addButton = new QToolButton; addButton->setObjectName(QStringLiteral("plusButton")); addButton->setToolTip(tr("<b>+</b> Add a variable.")); auto removeButton = new QToolButton; removeButton->setObjectName(QStringLiteral("minusButton")); removeButton->setToolTip(tr("<b>-</b> Remove a variable.")); auto buttonsLayout = new QVBoxLayout; buttonsLayout->addWidget(addButton); buttonsLayout->addWidget(removeButton); buttonsLayout->addStretch(); rawSettingsButton = new QPushButton(tr("Raw File Settings...")); rawSettingsButton->setProperty("mdButton", true); rawSettingsButton->setStyleSheet(QStringLiteral("QPushButton {margin-top: 15px}")); clearCustomVarsButton = new QPushButton(tr("Clear Custom Variables")); clearCustomVarsButton->setProperty("mdButton", true); clearCustomVarsButton->setStyleSheet(QStringLiteral("QPushButton {margin-top: 15px}")); auto varLayout = new QGridLayout; varLayout->addWidget(variableView_, 0, 0, -1, 1); varLayout->addLayout(buttonsLayout, 0, 1, 1, 1); varLayout->setColumnStretch(0, 1); varLayout->setColumnStretch(1, 0); varLayout->setRowStretch(2, 0); varLayout->setSizeConstraint(QLayout::SetNoConstraint); auto varGroup = new QGroupBox(tr("Data Columns Info")); varGroup->setObjectName(QStringLiteral("simpleGroupBox")); varGroup->setFlat(true); varGroup->setLayout(varLayout); auto varScrollArea = new QScrollArea; varScrollArea->setWidget(varGroup); varScrollArea->setWidgetResizable(true); auto mainlayout = new QGridLayout(this); mainlayout->setRowMinimumHeight(0, 18); mainlayout->addWidget(rawSettingsButton, 1, 0, 1, 1, Qt::AlignTop); mainlayout->addWidget(clearCustomVarsButton, 2, 0, 1, 1, Qt::AlignTop); mainlayout->addWidget(varScrollArea, 0, 1, -1, -1); mainlayout->setRowStretch(3, 1); mainlayout->setColumnStretch(1, 1); mainlayout->setSizeConstraint(QLayout::SetNoConstraint); setLayout(mainlayout); connect(variableModel_, &VariableModel::modified, [=]() { dlProject_->setModified(true); }); connect(dlProject, &DlProject::projectModified, this, &DlRawfileDescTab::updateModels); connect(dlProject, &DlProject::projectChanged, this, &DlRawfileDescTab::updateModels); connect(addButton, &QToolButton::clicked, variableView_, &VariableView::addVar); connect(removeButton, &QToolButton::clicked, variableView_, &VariableView::removeVar); connect(rawSettingsButton, &QPushButton::clicked, this, &DlRawfileDescTab::showRawSettingsDialog); connect(clearCustomVarsButton, &QPushButton::clicked,[=]() { variableDelegate_->clearCustomVariableBuffer(); }); // to trigger table editing with single click without altering the // editTriggers property, because that way the column selection // clicking on the header trigger the first cell editor connect(variableView_, SIGNAL(clicked(const QModelIndex &)), variableView_, SLOT(edit(const QModelIndex &))); }
ExtImageProps::ExtImageProps( QWidget* parent, ImageInfoRecord *info, PageItem *item, ScribusView *view ) : QDialog( parent ) { setModal(true); setWindowTitle( tr( "Extended Image Properties" ) ); setWindowIcon(IconManager::instance()->loadIcon("AppIcon.png")); ExtImagePropsLayout = new QVBoxLayout( this ); ExtImagePropsLayout->setMargin(6); ExtImagePropsLayout->setSpacing(6); m_view = view; m_timer = 0; if (info->layerInfo.count() != 0) { m_timer = new QTimer(this); m_timer->setSingleShot(true); m_timer->setInterval(350); } m_item = item; currentLayer = 0; originalInfo = *info; originalImageClip = item->imageClip.copy(); blendModes.clear(); blendModes.insert("norm", tr("Normal")); blendModes.insert("dark", tr("Darken")); blendModes.insert("lite", tr("Lighten")); blendModes.insert("hue ", tr("Hue")); blendModes.insert("sat ", tr("Saturation")); blendModes.insert("colr", tr("Color")); blendModes.insert("lum ", tr("Luminosity")); blendModes.insert("mul ", tr("Multiply")); blendModes.insert("scrn", tr("Screen")); blendModes.insert("diss", tr("Dissolve")); blendModes.insert("over", tr("Overlay")); blendModes.insert("hLit", tr("Hard Light")); blendModes.insert("sLit", tr("Soft Light")); blendModes.insert("diff", tr("Difference")); blendModes.insert("smud", tr("Exclusion")); blendModes.insert("div ", tr("Color Dodge")); blendModes.insert("idiv", tr("Color Burn")); blendModes.insert("plus", tr("Plus")); blendModes.insert("dsti", tr("Destination In")); blendModes.insert("dsto", tr("Destination Out")); blendModesRev.clear(); blendModesRev.insert( tr("Normal"), "norm"); blendModesRev.insert( tr("Darken"), "dark"); blendModesRev.insert( tr("Lighten"), "lite"); blendModesRev.insert( tr("Hue"), "hue "); blendModesRev.insert( tr("Saturation"), "sat "); blendModesRev.insert( tr("Color"), "colr"); blendModesRev.insert( tr("Luminosity"), "lum "); blendModesRev.insert( tr("Multiply"), "mul "); blendModesRev.insert( tr("Screen"), "scrn"); blendModesRev.insert( tr("Dissolve"), "diss"); blendModesRev.insert( tr("Overlay"), "over"); blendModesRev.insert( tr("Hard Light"), "hLit"); blendModesRev.insert( tr("Soft Light"), "sLit"); blendModesRev.insert( tr("Difference"), "diff"); blendModesRev.insert( tr("Exclusion"), "smud"); blendModesRev.insert( tr("Color Dodge"), "div "); blendModesRev.insert( tr("Color Burn"), "idiv"); blendModesRev.insert( tr("Plus"), "plus"); blendModesRev.insert( tr("Destination In"), "dsti"); blendModesRev.insert( tr("Destination Out"), "dsto"); propsTab = new QTabWidget( this ); QPalette palette; palette.setColor(backgroundRole(), Qt::white); if (info->layerInfo.count() != 0) { tab = new QWidget( propsTab ); tabLayout = new QVBoxLayout( tab ); tabLayout->setMargin(6); tabLayout->setSpacing(6); layout1 = new QHBoxLayout; layout1->setMargin(0); layout1->setSpacing(6); textLabel1 = new QLabel( tab ); textLabel1->setText( tr( "Blend Mode:" ) ); layout1->addWidget( textLabel1 ); blendMode = new ScComboBox( tab ); blendMode->clear(); blendMode->addItem( tr("Normal")); blendMode->addItem( tr("Darken")); blendMode->addItem( tr("Lighten")); blendMode->addItem( tr("Hue")); blendMode->addItem( tr("Saturation")); blendMode->addItem( tr("Color")); blendMode->addItem( tr("Luminosity")); blendMode->addItem( tr("Multiply")); blendMode->addItem( tr("Screen")); blendMode->addItem( tr("Dissolve")); blendMode->addItem( tr("Overlay")); blendMode->addItem( tr("Hard Light")); blendMode->addItem( tr("Soft Light")); blendMode->addItem( tr("Difference")); blendMode->addItem( tr("Exclusion")); blendMode->addItem( tr("Color Dodge")); blendMode->addItem( tr("Color Burn")); blendMode->addItem( tr("Plus")); blendMode->addItem( tr("Destination In")); blendMode->addItem( tr("Destination Out")); layout1->addWidget( blendMode ); textLabel2 = new QLabel( tab ); textLabel2->setText( tr( "Opacity:" ) ); layout1->addWidget( textLabel2 ); opacitySpinBox = new ScrSpinBox( tab ); opacitySpinBox->setMinimum(0); opacitySpinBox->setDecimals(0); opacitySpinBox->setMaximum(100); opacitySpinBox->setSingleStep(10); opacitySpinBox->setSuffix( tr(" %")); layout1->addWidget( opacitySpinBox ); tabLayout->addLayout( layout1 ); layerTable = new QTableWidget(info->layerInfo.count(), 3, tab ); layerTable->setHorizontalHeaderItem(0, new QTableWidgetItem(IconManager::instance()->loadIcon("16/show-object.png"), "")); layerTable->setHorizontalHeaderItem(1, new QTableWidgetItem("")); layerTable->setHorizontalHeaderItem(2, new QTableWidgetItem( tr("Name"))); QHeaderView* headerH = layerTable->horizontalHeader(); headerH->setStretchLastSection(true); headerH->setSectionsClickable(false ); headerH->setSectionsMovable( false ); if (info->layerInfo.count() == 1) { layerTable->setColumnWidth(1, 40); layerTable->setColumnWidth(0, 24); } layerTable->setSortingEnabled(false); layerTable->setSelectionBehavior(QTableWidget::SelectRows); QHeaderView *Header = layerTable->verticalHeader(); Header->setSectionsMovable( false ); Header->setSectionResizeMode(QHeaderView::Fixed); Header->hide(); FlagsSicht.clear(); int col2Width = 0; int col1Width = 0; if ((info->isRequest) && (info->RequestProps.contains(0))) { opacitySpinBox->setValue(qRound(info->RequestProps[0].opacity / 255.0 * 100)); setCurrentComboItem(blendMode, blendModes[info->RequestProps[0].blend]); } else { opacitySpinBox->setValue(qRound(info->layerInfo[0].opacity / 255.0 * 100)); setCurrentComboItem(blendMode, blendModes[info->layerInfo[0].blend]); } opacitySpinBox->setEnabled(true); blendMode->setEnabled(true); QString tmp; QList<PSDLayer>::iterator it2; uint counter = 0; for (it2 = info->layerInfo.begin(); it2 != info->layerInfo.end(); ++it2) { QCheckBox *cp = new QCheckBox(it2->layerName, this); cp->setPalette(palette); QPixmap pm; pm=QPixmap::fromImage(it2->thumb); col1Width = qMax(col1Width, pm.width()); cp->setIcon(pm); FlagsSicht.append(cp); connect(cp, SIGNAL(clicked()), this, SLOT(changedLayer())); layerTable->setCellWidget(info->layerInfo.count()-counter-1, 0, cp); if ((info->isRequest) && (info->RequestProps.contains(counter))) cp->setChecked(info->RequestProps[counter].visible); else cp->setChecked(!(it2->flags & 2)); if (!it2->thumb_mask.isNull()) { QCheckBox *cp2 = new QCheckBox(it2->layerName, this); cp2->setPalette(palette); QPixmap pm2; pm2=QPixmap::fromImage(it2->thumb_mask); col2Width = qMax(col2Width, pm2.width()); cp2->setIcon(pm2); connect(cp2, SIGNAL(clicked()), this, SLOT(changedLayer())); layerTable->setCellWidget(info->layerInfo.count()-counter-1, 1, cp2); if ((info->isRequest) && (info->RequestProps.contains(counter))) cp2->setChecked(info->RequestProps[counter].useMask); else cp2->setChecked(true); FlagsMask.append(cp2); } else FlagsMask.append(0); QTableWidgetItem *tW = new QTableWidgetItem(it2->layerName); tW->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled); layerTable->setItem(info->layerInfo.count()-counter-1, 2, tW); layerTable->setRowHeight(info->layerInfo.count()-counter-1, 40); counter++; } tabLayout->addWidget( layerTable ); layerTable->setColumnWidth(1, 24 + col2Width); layerTable->setColumnWidth(0, 24 + col1Width); blendMode->setCurrentIndex(0); // headerH->setResizeMode(QHeaderView::Fixed); propsTab->addTab( tab, tr( "Layers" ) ); } tab_2 = new QWidget( propsTab ); tabLayout_2 = new QVBoxLayout( tab_2 ); tabLayout_2->setMargin(6); tabLayout_2->setSpacing(6); pathList = new QListWidget( tab_2 ); pathList->clear(); pathList->setIconSize(QSize(40, 40)); QMap<QString, FPointArray>::Iterator it; if (info->PDSpathData.count() != 0) { for (it = info->PDSpathData.begin(); it != info->PDSpathData.end(); ++it) { QImage pixm(40, 40, QImage::Format_ARGB32_Premultiplied); ScPainter *p = new ScPainter(&pixm, 40, 40); p->clear(); p->translate(3.0, 3.0); if (it.key() == info->clipPath) { pixm.fill(Qt::green); p->clear(Qt::green); } else pixm.fill(Qt::white); FPointArray Path; Path.resize(0); Path = info->PDSpathData[it.key()].copy(); FPoint min = getMinClipF(&Path); Path.translate(-min.x(), -min.y()); FPoint max = Path.WidthHeight(); QTransform mm; mm.scale(34.0 / qMax(max.x(), max.y()), 34.0 / qMax(max.x(), max.y())); Path.map(mm); p->setupPolygon(&Path); p->setPen(Qt::black, 1, Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin); p->setBrush(Qt::white); p->setFillMode(ScPainter::None); p->setStrokeMode(ScPainter::Solid); p->strokePath(); p->end(); delete p; QPixmap pm; pm=QPixmap::fromImage(pixm); new QListWidgetItem(QIcon(pm), it.key(), pathList); if (it.key() == info->usedPath) { pathList->setCurrentRow(pathList->count()-1); pathList->currentItem()->setSelected(true); } } } tabLayout_2->addWidget( pathList ); resetPath = new QPushButton( tr("Don't use any Path"), tab_2); tabLayout_2->addWidget( resetPath ); propsTab->addTab( tab_2, tr( "Paths" ) ); ExtImagePropsLayout->addWidget( propsTab ); layoutBottom = new QHBoxLayout; layoutBottom->setMargin(0); layoutBottom->setSpacing(6); livePreview = new QCheckBox( this ); livePreview->setText( tr( "Live Preview" ) ); livePreview->setChecked(true); doPreview = true; layoutBottom->addWidget( livePreview ); QSpacerItem* spacer = new QSpacerItem( 2, 2, QSizePolicy::Expanding, QSizePolicy::Minimum ); layoutBottom->addItem( spacer ); okButton = new QPushButton( CommonStrings::tr_OK, this ); layoutBottom->addWidget( okButton ); cancelButton = new QPushButton( CommonStrings::tr_Cancel, this ); cancelButton->setDefault( true ); layoutBottom->addWidget( cancelButton ); ExtImagePropsLayout->addLayout( layoutBottom ); resize(330, 320); connect(pathList, SIGNAL( itemClicked(QListWidgetItem*) ), this, SLOT( selPath(QListWidgetItem*) ) ); connect(resetPath, SIGNAL(clicked()), this, SLOT(noPath())); connect(livePreview, SIGNAL(clicked()), this, SLOT(changePreview())); connect(okButton, SIGNAL(clicked()), this, SLOT(leaveOK())); connect(cancelButton, SIGNAL(clicked()), this, SLOT(leaveCancel())); if (info->layerInfo.count() != 0) { layerTable->selectionModel()->clearSelection(); opacitySpinBox->setEnabled(false); blendMode->setEnabled(false); connect(m_timer, SIGNAL(timeout()), this, SLOT(changedLayer())); connect(layerTable, SIGNAL(itemSelectionChanged()), this, SLOT(selLayer())); connect(opacitySpinBox, SIGNAL(valueChanged(double)), this, SLOT(delayedLayerChange())); connect(blendMode, SIGNAL(activated(int)), this, SLOT(changedLayer())); }
// Constructor. qjackctlClientListView::qjackctlClientListView ( qjackctlConnectView *pConnectView, bool bReadable ) : QTreeWidget(pConnectView) { m_pConnectView = pConnectView; m_pAutoOpenTimer = 0; m_iAutoOpenTimeout = 0; m_pDragItem = NULL; m_pDragItem = NULL; m_pAliases = NULL; m_bRenameEnabled = false; QHeaderView *pHeader = QTreeWidget::header(); pHeader->setDefaultAlignment(Qt::AlignLeft); // pHeader->setDefaultSectionSize(120); #if QT_VERSION >= 0x050000 // pHeader->setSectionResizeMode(QHeaderView::Custom); pHeader->setSectionsMovable(false); pHeader->setSectionsClickable(true); #else // pHeader->setResizeMode(QHeaderView::Custom); pHeader->setMovable(false); pHeader->setClickable(true); #endif pHeader->setSortIndicatorShown(true); pHeader->setStretchLastSection(true); QTreeWidget::setRootIsDecorated(true); QTreeWidget::setUniformRowHeights(true); // QTreeWidget::setDragEnabled(true); QTreeWidget::setAcceptDrops(true); QTreeWidget::setDropIndicatorShown(true); QTreeWidget::setAutoScroll(true); QTreeWidget::setSelectionMode(QAbstractItemView::SingleSelection); QTreeWidget::setSizePolicy( QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); QTreeWidget::setSortingEnabled(true); QTreeWidget::setMinimumWidth(120); QTreeWidget::setColumnCount(1); QString sText; if (bReadable) sText = tr("Readable Clients / Output Ports"); else sText = tr("Writable Clients / Input Ports"); QTreeWidget::headerItem()->setText(0, sText); QTreeWidget::sortItems(0, Qt::AscendingOrder); QTreeWidget::setToolTip(sText); // Trap for help/tool-tips events. QTreeWidget::viewport()->installEventFilter(this); QObject::connect(QTreeWidget::itemDelegate(), SIGNAL(commitData(QWidget*)), SLOT(renamedSlot())); setAutoOpenTimeout(800); }