void KBugReportPrivate::_k_appChanged(int i) { QString appName = appcombo->itemText(i); int index = appName.indexOf( '/' ); if ( index > 0 ) appName = appName.left( index ); kDebug() << "appName " << appName; QString strDisplayVersion; //Version string to show in the UI if (appname == appName && m_aboutData) { m_strVersion = m_aboutData->version(); strDisplayVersion = m_strVersion; } else { m_strVersion = QLatin1String("unknown"); //English string to put in the bug report strDisplayVersion = i18nc("unknown program name", "unknown"); } if ( !submitBugWeb ) { m_strVersion += ' ' + kde_version; strDisplayVersion += ' ' + kde_version; } m_version->setText(strDisplayVersion); if ( submitBugWeb ) _k_updateUrl(); }
void KSelectAction_UnitTest::testSetToolTipBeforeRequestingComboBoxWidget() { KSelectAction selectAction("selectAction", 0); selectAction.setToolBarMode(KSelectAction::ComboBoxMode); selectAction.setToolTip("Test"); selectAction.setEnabled(false); // also test disabling the action QWidget parent; QWidget* widget = selectAction.requestWidget(&parent); QVERIFY(widget); KComboBox* comboBox = qobject_cast<KComboBox*>(widget); QVERIFY(comboBox); QCOMPARE(comboBox->toolTip(), QString("Test")); QCOMPARE(comboBox->isEnabled(), false); }
void RuleDelegate::setEditorData(QWidget *editor, const QModelIndex &index) const { const QString rule = index.data(Qt::EditRole).toString(); if (rule.isEmpty()) { return; } KLineEdit *ruleLineEdit = static_cast<KLineEdit*>(editor->layout()->itemAt(0)->widget()); ruleLineEdit->setText(rule.mid(rule.indexOf('+', 3) + 1)); KComboBox *matchComboBox = static_cast<KComboBox*>(editor->layout()->itemAt(1)->widget()); matchComboBox->setCurrentIndex(rule.mid(2, (rule.indexOf('+', 3) - 2)).toInt()); QCheckBox *requiredCheckBox = static_cast<QCheckBox*>(editor->layout()->itemAt(2)->widget()); requiredCheckBox->setChecked(rule.at(0) == '1'); }
void KSelectAction_UnitTest::testRequestWidgetComboBoxModeWidgetParentSeveralActions() { KSelectAction selectAction("selectAction", 0); selectAction.setToolBarMode(KSelectAction::ComboBoxMode); selectAction.addAction(new QAction("action1", &selectAction)); selectAction.addAction(new QAction("action2", &selectAction)); selectAction.addAction(new QAction("action3", &selectAction)); QToolBar toolBar; toolBar.addAction(&selectAction); QWidget* widget = toolBar.widgetForAction(&selectAction); QVERIFY(widget); KComboBox* comboBox = qobject_cast<KComboBox*>(widget); QVERIFY(comboBox); QVERIFY(comboBox->isEnabled()); }
void KBugReportPrivate::_k_updateUrl() { url = KUrl( "https://bugs.kde.org/wizard.cgi" ); url.addQueryItem( "os", os ); url.addQueryItem( "compiler", KDE_COMPILER_VERSION ); url.addQueryItem( "kdeVersion", kde_version ); url.addQueryItem( "appVersion", m_strVersion ); url.addQueryItem( "package", appcombo->currentText() ); url.addQueryItem( "kbugreport", "1" ); }
void MetaQueryWidget::makeFormatComboSelection() { KComboBox* combo = new KComboBox( this ); combo->setSizePolicy( QSizePolicy::Ignored, QSizePolicy::Preferred ); QStringList filetypes = Amarok::FileTypeSupport::possibleFileTypes(); for (int listpos=0;listpos<filetypes.size();listpos++) { combo->addItem(filetypes.at(listpos),listpos); } int index = m_fieldSelection->findData( (int)m_filter.numValue ); combo->setCurrentIndex( index == -1 ? 0 : index ); connect( combo, SIGNAL( currentIndexChanged(int) ), SLOT( numValueFormatChanged(int) ) ); m_valueSelection1 = combo; }
void CharactersViewDelegate::setEditorData(QWidget* editor, const QModelIndex& index) const { switch (index.column()) { case 0: case 1: { KLineEdit* lineEdit = static_cast<KLineEdit*>(editor); lineEdit->setText(index.data(Qt::EditRole).toString()); break; } case 2: { KComboBox* comboBox = static_cast<KComboBox*>(editor); comboBox->setCurrentIndex(index.data(Qt::EditRole).toInt()); break; } default: QStyledItemDelegate::setEditorData(editor, index); } }
void KSelectAction_UnitTest::testChildActionStateChangeComboMode() { KSelectAction selectAction("selectAction", 0); selectAction.setToolBarMode(KSelectAction::ComboBoxMode); QWidget parent; QWidget* widget = selectAction.requestWidget(&parent); KComboBox* comboBox = qobject_cast<KComboBox*>(widget); QVERIFY(comboBox); const QString itemText = "foo"; KAction* childAction = selectAction.addAction(itemText); QCOMPARE(comboBox->itemText(0), itemText); childAction->setEnabled(false); // There's no API for item-is-enabled, need to go via the internal model like kselectaction does... QStandardItemModel *model = qobject_cast<QStandardItemModel *>(comboBox->model()); QVERIFY(model); QVERIFY(!model->item(0)->isEnabled()); // Now remove the action selectAction.removeAction(childAction); QCOMPARE(comboBox->count(), 0); }
void CharactersViewDelegate::setModelData(QWidget* editor, QAbstractItemModel* model, const QModelIndex& index) const { switch (index.column()) { case 0: case 1: { KLineEdit* lineEdit = static_cast<KLineEdit*>(editor); model->setData(index, lineEdit->text()); break; } case 2: { KComboBox* comboBox = static_cast<KComboBox*>(editor); model->setData(index, comboBox->currentIndex()); break; } default: QStyledItemDelegate::setModelData(editor, model, index); } }
void PrinterBehavior::currentIndexChangedCB(int index) { KComboBox *comboBox = qobject_cast<KComboBox*>(sender()); bool isDifferent = comboBox->property("defaultChoice").toInt() != index; if (isDifferent != comboBox->property("different").toBool()) { // it's different from the last time so add or remove changes isDifferent ? m_changes++ : m_changes--; comboBox->setProperty("different", isDifferent); emit changed(m_changes); } QString attribute = comboBox->property("AttributeName").toString(); QVariant value; // job-sheets-default has always two values if (attribute == "job-sheets-default") { QStringList values; values << ui->startingBannerCB->itemData(ui->startingBannerCB->currentIndex()).toString(); values << ui->endingBannerCB->itemData(ui->endingBannerCB->currentIndex()).toString(); value = values; } else { value = comboBox->itemData(index).toString(); } // store the new values if (isDifferent) { m_changedValues[attribute] = value; } else { m_changedValues.remove(attribute); } }
QWidget* RuleDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const { Q_UNUSED(option) QWidget *editor = new QWidget(parent); KLineEdit *ruleLineEdit = new KLineEdit(editor); ruleLineEdit->setToolTip(i18n("Expression")); KComboBox *matchComboBox = new KComboBox(editor); matchComboBox->setToolTip(i18n("Match Mode")); matchComboBox->addItem(i18n("Ignore")); matchComboBox->addItem(i18n("Regular expression")); matchComboBox->addItem(i18n("Partial match")); matchComboBox->addItem(i18n("Exact match")); QCheckBox *requiredCheckBox = new QCheckBox(editor); requiredCheckBox->setToolTip(i18n("Required")); QHBoxLayout *layout = new QHBoxLayout(editor); layout->addWidget(ruleLineEdit); layout->addWidget(matchComboBox); layout->addWidget(requiredCheckBox); layout->setMargin(0); setEditorData(editor, index); return editor; }
void MetaQueryWidget::makeGenericComboSelection( bool editable, Collections::QueryMaker* populateQuery ) { KComboBox* combo = new KComboBox( this ); combo->setEditable( editable ); if( populateQuery != 0 ) { m_runningQueries.insert(populateQuery, QWeakPointer<KComboBox>(combo)); connect( populateQuery, SIGNAL(newResultReady(QStringList)), SLOT(populateComboBox(QStringList)) ); connect( populateQuery, SIGNAL(queryDone()), SLOT(comboBoxPopulated()) ); populateQuery->run(); } combo->setEditText( m_filter.value ); connect( combo, SIGNAL(editTextChanged( const QString& ) ), SLOT(valueChanged(const QString&)) ); combo->completionObject()->setIgnoreCase( true ); combo->setCompletionMode( KGlobalSettings::CompletionPopup ); combo->setInsertPolicy( QComboBox::InsertAtTop ); m_valueSelection1 = combo; }
void IngredientNameDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const { KComboBox *comboBox = static_cast<KComboBox*>( editor ); QString text = comboBox->currentText(); model->setData( index, text, Qt::EditRole ); if ( index.data(IngredientsEditor::IsHeaderRole).toBool() ) { //The edited item is a header if ( m_headerNameToIdMap.contains(text) ) { model->setData( index, m_headerNameToIdMap.values(text).first(), IngredientsEditor::IdRole ); } else { model->setData( index, RecipeDB::InvalidId, IngredientsEditor::IdRole ); } } else { //The edited item is an ingredient if ( m_ingredientNameToIdMap.contains(text) ) { model->setData( index, m_ingredientNameToIdMap.values(text).first(), IngredientsEditor::IdRole ); } else { model->setData( index, RecipeDB::InvalidId, IngredientsEditor::IdRole ); } } }
QStringList CMakeBuildDirChooser::extraArgumentsHistory() const { QStringList list; KComboBox* extraArguments = m_chooserUi->extraArguments; if (!extraArguments->currentText().isEmpty()) { list << extraArguments->currentText(); } for (int i = 0; i < qMin(maxExtraArgumentsInHistory, extraArguments->count()); ++i) { if (!extraArguments->itemText(i).isEmpty() && (extraArguments->currentText() != extraArguments->itemText(i))) { list << extraArguments->itemText(i); } } return list; }
//// A dialog to load a KDE icon by its name LoadIconDialog::LoadIconDialog(QWidget *parent) : KDialog(parent, "loadicon_dialog", true, i18n("Load KDE Icon by Name"), Ok | Cancel, Ok, false) { QFrame *frame = makeMainWidget(); QGridLayout *l = new QGridLayout(frame); // Name input QLabel *name = new QLabel(i18n("&Name:"), frame); l->addWidget(name, 0, 0); name->setAlignment(Qt::AlignRight | Qt::AlignVCenter); m_nameInput = new KLineEdit("kexi", frame); l->addWidget(m_nameInput, 0, 1); name->setBuddy(m_nameInput); // Choose size QLabel *size = new QLabel(i18n("&Size:"), frame); l->addWidget(size, 1, 0); size->setAlignment(Qt::AlignRight | Qt::AlignVCenter); KComboBox *combo = new KComboBox(frame); l->addWidget(combo, 1, 1); size->setBuddy(combo); QStringList list; list << i18n("Small") << i18n("Medium") << i18n("Large") << i18n("Huge"); combo->insertStringList(list); combo->setCurrentItem(2); connect(combo, SIGNAL(activated(int)), this, SLOT(changeIconSize(int))); // Icon chooser button m_button = new KIconButton(frame); m_button->setIcon(koIconName("calligrakexi")); m_button->setIconSize(KIconLoader::SizeMedium); l->addWidget(m_button, 0, 2, 2, 1); connect(m_button, SIGNAL(iconChanged(QString)), this, SLOT(updateIconName(QString))); connect(m_nameInput, SIGNAL(textChanged(QString)), this, SLOT(setIcon(QString))); }
QWidget* CharactersViewDelegate::createEditor(QWidget* parent, const QStyleOptionViewItem& option, const QModelIndex& index) const { switch (index.column()) { case 0: { KLineEdit* lineEdit = new KLineEdit(parent); lineEdit->setFrame(false); lineEdit->setMaxLength(1); return lineEdit; } case 1: { KLineEdit* lineEdit = new KLineEdit(parent); lineEdit->setFrame(false); QStringList wordList; for (int i = 0; i < m_keyboardLayout->keyCount(); i++) { if (SpecialKey* key = qobject_cast<SpecialKey*>(m_keyboardLayout->key(i))) { wordList << key->modifierId(); } } QCompleter* completer = new QCompleter(wordList, lineEdit); lineEdit->setCompleter(completer); return lineEdit; } case 2: { KComboBox* comboBox = new KComboBox(parent); comboBox->setEditable(false); comboBox->addItem(i18n("Hidden"), KeyChar::Hidden); comboBox->addItem(i18n("Top left"), KeyChar::TopLeft); comboBox->addItem(i18n("Top right"), KeyChar::TopRight); comboBox->addItem(i18n("Bottom left"), KeyChar::BottomLeft); comboBox->addItem(i18n("Bottom right"), KeyChar::BottomRight); return comboBox; } default: return QStyledItemDelegate::createEditor(parent, option, index); } }
QWidget *KOTodoPriorityDelegate::createEditor( QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index ) const { Q_UNUSED( option ); Q_UNUSED( index ); KComboBox *combo = new KComboBox( parent ); combo->addItem( i18nc( "@action:inmenu Unspecified priority", "unspecified" ) ); combo->addItem( i18nc( "@action:inmenu highest priority", "1 (highest)" ) ); combo->addItem( i18nc( "@action:inmenu", "2" ) ); combo->addItem( i18nc( "@action:inmenu", "3" ) ); combo->addItem( i18nc( "@action:inmenu", "4" ) ); combo->addItem( i18nc( "@action:inmenu medium priority", "5 (medium)" ) ); combo->addItem( i18nc( "@action:inmenu", "6" ) ); combo->addItem( i18nc( "@action:inmenu", "7" ) ); combo->addItem( i18nc( "@action:inmenu", "8" ) ); combo->addItem( i18nc( "@action:inmenu lowest priority", "9 (lowest)" ) ); return combo; }
void HolidayRegionSelector::Private::initItem( QTreeWidgetItem *listItem, HolidayRegion *region ) { m_ui.regionTreeWidget->blockSignals( true ); QString languageName = KGlobal::locale()->languageCodeToName( region->languageCode() ); listItem->setCheckState( Private::SelectColumn, Qt::Unchecked ); QString text = i18n( "<p>Select to use Holiday Region</p>" ); listItem->setToolTip( Private::SelectColumn, text ); listItem->setToolTip( Private::ComboColumn, text ); text = i18n( "<p>Select to use Holiday Region</p>" ); listItem->setToolTip( Private::SelectColumn, text ); listItem->setToolTip( Private::ComboColumn, text ); listItem->setText( Private::RegionColumn, region->name() ); QString toolTip = i18n( "<p><b>Region:</b> %1<br/>" "<b>Language:</b> %2<br/>" "<b>Description:</b> %3</p>", region->name(), languageName, region->description() ); listItem->setToolTip( Private::RegionColumn, toolTip ); listItem->setData( Private::RegionColumn, Qt::UserRole, region->regionCode() ); listItem->setText( Private::LanguageColumn, languageName ); listItem->setData( Private::LanguageColumn, Qt::UserRole, region->languageCode() ); listItem->setText( Private::DescriptionColumn, region->description() ); listItem->setToolTip( Private::DescriptionColumn, region->description() ); KComboBox *combo = new KComboBox(); combo->setAutoFillBackground( true ); QString comboText = i18n( "<p>You can choose to display the Holiday Region for information only, " "or to use the Holiday Region when displaying or calculating days off " "such as Public Holidays. If you choose to use the Holiday Region for " "Days Off, then only those Holiday Events marked in the Holiday Region " "as Days Off will be used for non-work days, Holiday Events that are " "not marked in the Holiday Region as Days Off will continue to be " "work days.</p>" ); combo->setToolTip( comboText ); comboText = i18nc( "Combobox label, Holiday Region not used", "Not Used" ); combo->addItem( comboText, QVariant( NotUsed ) ); comboText = i18nc( "Combobox label, use Holiday Region for information only", "Information" ); combo->addItem( comboText, QVariant( UseInformationOnly ) ); comboText = i18nc( "Combobox label, use Holiday Region for days off", "Days Off" ); combo->addItem( comboText, QVariant( UseDaysOff ) ); combo->setCurrentIndex( 0 ); listItem->setData( Private::ComboColumn, Qt::UserRole, NotUsed ); m_ui.regionTreeWidget->setItemWidget( listItem, ComboColumn, combo ); connect( combo, SIGNAL(currentIndexChanged(int)), q, SLOT(itemChanged(int)) ); m_ui.regionTreeWidget->blockSignals( false ); }
QWidget * IngredientNameDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &/* option */, const QModelIndex & index ) const { //Set up the combo box KComboBox * editor = new KComboBox( parent ); editor->setAutoFillBackground( true ); editor->setEditable( true ); editor->setCompletionMode( KGlobalSettings::CompletionPopup ); //Set the models and the completion objects if ( !index.data(IngredientsEditor::IsHeaderRole).toBool() ) { editor->setModel( m_database->allIngredientsModels()->ingredientNameModel() ); editor->setCompletionObject( m_database->allIngredientsModels()->ingredientNameCompletion() ); } else { editor->setModel( m_database->allIngHeadersModels()->ingHeaderNameModel() ); editor->setCompletionObject( m_database->allIngHeadersModels()->ingHeaderNameCompletion() ); } return editor; }
void setupGUI() { QBoxLayout *layout = new QVBoxLayout(p); tabWidget = new QTabWidget(p); layout->addWidget(tabWidget); QWidget *container = new QWidget(tabWidget); tabWidget->addTab(container, QIcon::fromTheme(QStringLiteral("preferences-web-browser-identification")), i18n("Library")); connect(tabWidget, &QTabWidget::currentChanged, p, &ZoteroBrowser::tabChanged); QBoxLayout *containerLayout = new QVBoxLayout(container); /// Personal or Group Library QGridLayout *gridLayout = new QGridLayout(); containerLayout->addLayout(gridLayout); gridLayout->setMargin(0); gridLayout->setColumnMinimumWidth(0, 16); // TODO determine size of a radio button radioPersonalLibrary = new QRadioButton(i18n("Personal library"), container); gridLayout->addWidget(radioPersonalLibrary, 0, 0, 1, 2); radioGroupLibrary = new QRadioButton(i18n("Group library"), container); gridLayout->addWidget(radioGroupLibrary, 1, 0, 1, 2); comboBoxGroupList = new KComboBox(false, container); gridLayout->addWidget(comboBoxGroupList, 2, 1, 1, 1); QSizePolicy sizePolicy = comboBoxGroupList->sizePolicy(); sizePolicy.setHorizontalPolicy(QSizePolicy::MinimumExpanding); comboBoxGroupList->setSizePolicy(sizePolicy); radioPersonalLibrary->setChecked(true); comboBoxGroupList->setEnabled(false); comboBoxGroupList->addItem(i18n("No groups available")); connect(radioGroupLibrary, &QRadioButton::toggled, p, &ZoteroBrowser::radioButtonsToggled); connect(radioPersonalLibrary, &QRadioButton::toggled, p, &ZoteroBrowser::radioButtonsToggled); connect(comboBoxGroupList, static_cast<void (KComboBox::*)(int)>(&KComboBox::currentIndexChanged), p, &ZoteroBrowser::groupListChanged); containerLayout->addStretch(10); /// Credentials QFormLayout *containerForm = new QFormLayout(); containerLayout->addLayout(containerForm, 1); containerForm->setMargin(0); lineEditNumericUserId = new KLineEdit(container); lineEditNumericUserId->setSizePolicy(sizePolicy); lineEditNumericUserId->setReadOnly(true); containerForm->addRow(i18n("Numeric user id:"), lineEditNumericUserId); connect(lineEditNumericUserId, &KLineEdit::textChanged, p, &ZoteroBrowser::invalidateGroupList); lineEditApiKey = new KLineEdit(container); lineEditApiKey->setSizePolicy(sizePolicy); lineEditApiKey->setReadOnly(true); containerForm->addRow(i18n("API key:"), lineEditApiKey); connect(lineEditApiKey, &KLineEdit::textChanged, p, &ZoteroBrowser::invalidateGroupList); QBoxLayout *containerButtonLayout = new QHBoxLayout(); containerLayout->addLayout(containerButtonLayout, 0); containerButtonLayout->setMargin(0); QPushButton *buttonGetOAuthCredentials = new QPushButton(QIcon::fromTheme(QStringLiteral("preferences-web-browser-identification")), i18n("Get New Credentials"), container); containerButtonLayout->addWidget(buttonGetOAuthCredentials, 0); connect(buttonGetOAuthCredentials, &QPushButton::clicked, p, &ZoteroBrowser::getOAuthCredentials); containerButtonLayout->addStretch(1); /// Collection browser collectionBrowser = new QTreeView(tabWidget); tabWidget->addTab(collectionBrowser, QIcon::fromTheme(QStringLiteral("folder-yellow")), i18n("Collections")); collectionBrowser->setHeaderHidden(true); collectionBrowser->setExpandsOnDoubleClick(false); connect(collectionBrowser, &QTreeView::doubleClicked, p, &ZoteroBrowser::collectionDoubleClicked); /// Tag browser tagBrowser = new QListView(tabWidget); tabWidget->addTab(tagBrowser, QIcon::fromTheme(QStringLiteral("mail-tagged")), i18n("Tags")); connect(tagBrowser, &QListView::doubleClicked, p, &ZoteroBrowser::tagDoubleClicked); }
void ConditionalDialog::init(KCConditional const & tmp, int numCondition) { kDebug() << "Adding" << numCondition; KComboBox * cb = 0; KComboBox * sb = 0; KLineEdit * kl1 = 0; KLineEdit * kl2 = 0; QString value; KCMap *const map = m_selection->activeSheet()->map(); KCValueConverter *const converter = map->converter(); switch (numCondition) { case 0: cb = m_dlg->m_condition_1; sb = m_dlg->m_style_1; kl1 = m_dlg->m_firstValue_1; kl2 = m_dlg->m_secondValue_1; break; case 1: cb = m_dlg->m_condition_2; sb = m_dlg->m_style_2; kl1 = m_dlg->m_firstValue_2; kl2 = m_dlg->m_secondValue_2; break; case 2: cb = m_dlg->m_condition_3; sb = m_dlg->m_style_3; kl1 = m_dlg->m_firstValue_3; kl2 = m_dlg->m_secondValue_3; break; default: return; } if (!tmp.styleName.isEmpty()) { sb->setCurrentIndex(sb->findText(tmp.styleName)); sb->setEnabled(true); } switch (tmp.cond) { case KCConditional::None : case KCConditional::IsTrueFormula: // was unhandled break; case KCConditional::Equal : cb->setCurrentIndex(1); break; case KCConditional::Superior : cb->setCurrentIndex(2); break; case KCConditional::Inferior : cb->setCurrentIndex(3); break; case KCConditional::SuperiorEqual : cb->setCurrentIndex(4); break; case KCConditional::InferiorEqual : cb->setCurrentIndex(5); break; case KCConditional::Between : cb->setCurrentIndex(6); kl2->setText(converter->asString(tmp.value2).asString()); break; case KCConditional::Different : cb->setCurrentIndex(7); kl2->setText(converter->asString(tmp.value2).asString()); break; case KCConditional::DifferentTo : cb->setCurrentIndex(8); break; } if (tmp.cond != KCConditional::None) { kl1->setEnabled(true); kl1->setText(converter->asString(tmp.value1).asString()); } }
CreateChecksumDlg::CreateChecksumDlg(const QStringList& files, bool containFolders, const QString& path) : QDialog(krApp) { setWindowModality(Qt::WindowModal); setWindowTitle(i18n("Create Checksum")); QVBoxLayout *mainLayout = new QVBoxLayout; setLayout(mainLayout); QList<CS_Tool *> tools = getTools(containFolders); if (tools.count() == 0) { // nothing was suggested?! QString error = i18n("<qt>Cannot calculate checksum since no supported tool was found. " "Please check the <b>Dependencies</b> page in Krusader's settings.</qt>"); if (containFolders) error += i18n("<qt><b>Note</b>: you have selected folders, and probably have no recursive checksum tool installed." " Krusader currently supports <i>md5deep, sha1deep, sha256deep, tigerdeep and cfv</i></qt>"); KMessageBox::error(0, error); return; } QWidget * widget = new QWidget(this); QGridLayout *layout = new QGridLayout(widget); int row = 0; // title (icon+text) QHBoxLayout *hlayout = new QHBoxLayout; QLabel *p = new QLabel(widget); p->setPixmap(krLoader->loadIcon("document-edit-sign", KIconLoader::Desktop, 32)); hlayout->addWidget(p); QLabel *l1 = new QLabel(widget); if (containFolders) l1->setText(i18n("About to calculate checksum for the following files and folders:")); else l1->setText(i18n("About to calculate checksum for the following files:")); hlayout->addWidget(l1); layout->addLayout(hlayout, row, 0, 1, 2, Qt::AlignLeft); ++row; // file list KrListWidget *lb = new KrListWidget(widget); lb->addItems(files); layout->addWidget(lb, row, 0, 1, 2); ++row; // checksum method QHBoxLayout *hlayout2 = new QHBoxLayout; QLabel *l2 = new QLabel(i18n("Select the checksum method:"), widget); hlayout2->addWidget(l2); KComboBox *method = new KComboBox(widget); // -- fill the combo with available methods int i; for (i = 0; i < tools.count(); ++i) method->addItem(cs_typeToText[tools.at(i)->type], i); method->setFocus(); hlayout2->addWidget(method); layout->addLayout(hlayout2, row, 0, 1, 2, Qt::AlignLeft); ++row; mainLayout->addWidget(widget); QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok|QDialogButtonBox::Cancel); mainLayout->addWidget(buttonBox); QPushButton *okButton = buttonBox->button(QDialogButtonBox::Ok); okButton->setDefault(true); okButton->setShortcut(Qt::CTRL | Qt::Key_Return); connect(buttonBox, SIGNAL(accepted()), this, SLOT(accept())); connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject())); if (exec() != Accepted) return; // else implied: run the process QTemporaryFile tmpOut(QDir::tempPath() + QLatin1String("/krusader_XXXXXX.stdout")); tmpOut.open(); // necessary to create the filename QTemporaryFile tmpErr(QDir::tempPath() + QLatin1String("/krusader_XXXXXX.stderr")); tmpErr.open(); // necessary to create the filename KProcess proc; CS_Tool *mytool = tools.at(method->currentIndex()); mytool->create(proc, mytool, files, QString(), containFolders, method->currentText()); proc.setOutputChannelMode(KProcess::SeparateChannels); // without this the next 2 lines have no effect! proc.setStandardOutputFile(tmpOut.fileName()); proc.setStandardErrorFile(tmpErr.fileName()); proc.setWorkingDirectory(path); krApp->startWaiting(i18n("Calculating checksums..."), 0, true); QApplication::setOverrideCursor(Qt::WaitCursor); proc.start(); // TODO make use of asynchronous process starting. waitForStarted(int msec = 30000) is blocking // it would be better to connect to started(), error() and finished() if (proc.waitForStarted()) while (proc.state() == QProcess::Running) { usleep(500); qApp->processEvents(); if (krApp->wasWaitingCancelled()) { // user cancelled proc.kill(); QApplication::restoreOverrideCursor(); return; } }; krApp->stopWait(); QApplication::restoreOverrideCursor(); if (proc.exitStatus() != QProcess::NormalExit) { KMessageBox::error(0, i18n("<qt>There was an error while running <b>%1</b>.</qt>", mytool->binary)); return; } // suggest a filename QString suggestedFilename = path + '/'; if (files.count() > 1) suggestedFilename += ("checksum." + cs_typeToText[mytool->type]); else suggestedFilename += (files[0] + '.' + cs_typeToText[mytool->type]); // send both stdout and stderr QStringList stdOut, stdErr; if (!KrServices::fileToStringList(&tmpOut, stdOut) || !KrServices::fileToStringList(&tmpErr, stdErr)) { KMessageBox::error(krApp, i18n("Error reading stdout or stderr")); return; } ChecksumResultsDlg dlg(stdOut, stdErr, suggestedFilename, mytool->standardFormat); }
/** * Fills the list box with the objects associations. */ void AssocTab::fillListBox() { m_List.clear(); m_pAssocTW->clear(); setupCols(); m_pAssocTW->setRowCount(0); m_pView->getWidgetAssocs(m_pObject, m_List); int i = 0; foreach( AssociationWidget* assocwidget, m_List ) { if( assocwidget->associationType() != Uml::at_Anchor) { m_pAssocTW->setRowCount(m_pAssocTW->rowCount()+1); QTableWidgetItem* nameWidget = new QTableWidgetItem(""); nameWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); nameWidget->setText(assocwidget->getName()); m_pAssocTW->setItem(m_pAssocTW->rowCount()-1,0,nameWidget); /*QTableWidgetItem* newItem = new QTableWidgetItem(assocwidget->toString()); m_pAssocTW->setItem(m_pAssocTW->rowCount()-1,1,newItem);*/ KComboBox *typeCB = new KComboBox(this); m_pAssocTW->setCellWidget(m_pAssocTW->rowCount()-1,3,typeCB); Uml::Association_Type currentType = assocwidget->associationType(); int found=-1; QStringList assocTypeStrings; QList<Uml::Association_Type> assocType; // dynamically load all allowed associations for ( int i = Uml::at_Generalization; i<= Uml::at_Relationship ; ++i ) { // we don't need to check for current type if ( ( Uml::Association_Type )i == currentType ) continue; if ( AssocRules::allowAssociation( ( Uml::Association_Type )i, assocwidget->getWidget( Uml::A ), assocwidget->getWidget( Uml::B )) ) { assocType << (Uml::Association_Type)i; assocTypeStrings << UMLAssociation::toString((Uml::Association_Type)i); if ((Uml::Association_Type)i == currentType) found=true; } } if (found == -1) { assocType.insert(0, currentType); assocTypeStrings.insert(0,UMLAssociation::toString(currentType)); } else { typeCB->setCurrentIndex(found); } typeCB->addItems(assocTypeStrings); QTableWidgetItem* newItem2 = new QTableWidgetItem(assocwidget->getWidget(Uml::A)->name()); m_pAssocTW->setItem(m_pAssocTW->rowCount()-1,1,newItem2); QTableWidgetItem* newItem3 = new QTableWidgetItem(assocwidget->getWidget(Uml::B)->name()); m_pAssocTW->setItem(m_pAssocTW->rowCount()-1,2,newItem3); QPushButton* morePb = new QPushButton(this); morePb->setText("Doc"); m_pAssocTW->setCellWidget(m_pAssocTW->rowCount()-1,4,morePb); QPushButton* docPb = new QPushButton(this); docPb->setText("Doc"); m_pAssocTW->setCellWidget(m_pAssocTW->rowCount()-1,5,docPb); i++; } } }
bool getServerInfo( KWindow* pkwndO, PSERVERINFO psi, bool fSet ) { KDialog kdlg; ULONG ulReply = DID_CANCEL; if( kdlg.LoadDlg( KWND_DESKTOP, pkwndO, 0, IDD_OPEN )) { KComboBox kcbAddr; KEntryField kefUserName; KEntryField kefPassword; KEntryField kefDir; KComboBox kcbAuth; kdlg.WindowFromID( IDCB_OPEN_ADDR, kcbAddr ); kdlg.WindowFromID( IDEF_OPEN_USERNAME, kefUserName ); kdlg.WindowFromID( IDEF_OPEN_PASSWORD, kefPassword ); kdlg.WindowFromID( IDEF_OPEN_DIRECTORY, kefDir ); kdlg.WindowFromID( IDCB_OPEN_AUTHENTICATION, kcbAuth ); kefUserName.SetTextLimit( MAX_USERNAME_LEN ); kefPassword.SetTextLimit( MAX_PASSWORD_LEN ); kefDir.SetTextLimit( MAX_DIR_LEN ); kcbAuth.LmInsertItem( LIT_END, "Password"); kcbAuth.LmInsertItem( LIT_END, "Public key(RSA)"); kcbAuth.LmInsertItem( LIT_END, "Public key(DSA)"); kcbAuth.LmSelectItem( 0, TRUE ); if( fSet ) { kcbAddr.SetWindowText( psi->strAddress ); kefUserName.SetWindowText( psi->strUserName ); kefPassword.SetWindowText( psi->strPassword ); kefDir.SetWindowText( psi->strDir ); kcbAuth.LmSelectItem( psi->iAuth, TRUE ); } kdlg.ProcessDlg(); ulReply = kdlg.GetResult(); if( ulReply == DID_OK ) { kcbAddr.QueryWindowText( psi->strAddress ); kefUserName.QueryWindowText( psi->strUserName ); kefPassword.QueryWindowText( psi->strPassword ); kefDir.QueryWindowText( psi->strDir ); if( psi->strDir.empty() || psi->strDir[ psi->strDir.length() - 1 ] != '/') psi->strDir.append("/"); psi->iAuth = kcbAuth.LmQuerySelection( LIT_FIRST ); if( !psi->strAddress[ 0 ]) ulReply = DID_CANCEL; } kdlg.DestroyWindow(); } return ( ulReply == DID_OK ) ? true : false; }
// // Linux // void Smb4KConfigPageMounting::setupWidget() { QVBoxLayout *mount_layout = new QVBoxLayout(this); mount_layout->setSpacing(5); mount_layout->setMargin(0); // Common Options QGroupBox *common_options = new QGroupBox(i18n("Common Options"), this); QGridLayout *common_layout = new QGridLayout(common_options); common_layout->setSpacing(5); QLabel *user_id_label = new QLabel(Smb4KMountSettings::self()->userIDItem()->label(), common_options); QWidget *user_widget = new QWidget(common_options); QGridLayout *user_layout = new QGridLayout(user_widget); user_layout->setSpacing(5); user_layout->setMargin(0); KLineEdit *user_id = new KLineEdit(user_widget); user_id->setObjectName("kcfg_UserID"); user_id->setAlignment(Qt::AlignRight); user_id->setReadOnly(true); QToolButton *user_chooser = new QToolButton(user_widget); user_chooser->setIcon(KDE::icon("edit-find-user")); user_chooser->setToolTip(i18n("Choose a different user")); user_chooser->setPopupMode(QToolButton::InstantPopup); user_id_label->setBuddy(user_chooser); QMenu *user_menu = new QMenu(user_chooser); user_chooser->setMenu(user_menu); QList<KUser> user_list = KUser::allUsers(); QMap<QString,QString> users; for (int i = 0; i < user_list.size(); ++i) { users.insert(QString("%1 (%2)").arg(user_list.at(i).loginName()).arg(user_list.at(i).userId().nativeId()), QString("%1").arg(user_list.at(i).userId().nativeId())); } QMap<QString,QString>::const_iterator u_it = users.constBegin(); while (u_it != users.constEnd()) { QAction *user_action = user_menu->addAction(u_it.key()); user_action->setData(u_it.value()); ++u_it; } user_layout->addWidget(user_id, 0, 0, 0); user_layout->addWidget(user_chooser, 0, 1, Qt::AlignCenter); QLabel *group_id_label = new QLabel(Smb4KMountSettings::self()->groupIDItem()->label(), common_options); QWidget *group_widget = new QWidget(common_options); QGridLayout *group_layout = new QGridLayout(group_widget); group_layout->setSpacing(5); group_layout->setMargin(0); KLineEdit *group_id = new KLineEdit(group_widget); group_id->setObjectName("kcfg_GroupID"); group_id->setAlignment(Qt::AlignRight); group_id->setReadOnly(true); QToolButton *group_chooser = new QToolButton(group_widget); group_chooser->setIcon(KDE::icon("edit-find-user")); group_chooser->setToolTip(i18n("Choose a different group")); group_chooser->setPopupMode(QToolButton::InstantPopup); group_id_label->setBuddy(group_chooser); QMenu *group_menu = new QMenu(group_chooser); group_chooser->setMenu(group_menu); QList<KUserGroup> group_list = KUserGroup::allGroups(); QMap<QString,QString> groups; for (int i = 0; i < group_list.size(); ++i) { groups.insert(QString("%1 (%2)").arg(group_list.at(i).name()).arg(group_list.at(i).groupId().nativeId()), QString("%1").arg(group_list.at(i).groupId().nativeId())); } QMap<QString,QString>::const_iterator g_it = groups.constBegin(); while (g_it != groups.constEnd()) { QAction *group_action = group_menu->addAction(g_it.key()); group_action->setData(g_it.value()); ++g_it; } group_layout->addWidget(group_id, 0, 0, 0); group_layout->addWidget(group_chooser, 0, 1, Qt::AlignCenter); QLabel *fmask_label = new QLabel(Smb4KMountSettings::self()->fileMaskItem()->label(), common_options); KLineEdit *fmask = new KLineEdit(common_options); fmask->setObjectName("kcfg_FileMask"); fmask->setAlignment(Qt::AlignRight); fmask_label->setBuddy(fmask); QLabel *dmask_label = new QLabel(Smb4KMountSettings::self()->directoryMaskItem()->label(), common_options); KLineEdit *dmask = new KLineEdit(common_options); dmask->setObjectName("kcfg_DirectoryMask"); dmask->setAlignment(Qt::AlignRight); dmask_label->setBuddy(dmask); QLabel *write_access_label = new QLabel(Smb4KMountSettings::self()->writeAccessItem()->label(), common_options); KComboBox *write_access = new KComboBox(common_options); write_access->setObjectName("kcfg_WriteAccess"); write_access->insertItem(Smb4KMountSettings::EnumWriteAccess::ReadWrite, Smb4KMountSettings::self()->writeAccessItem()->choices().value(Smb4KMountSettings::EnumWriteAccess::ReadWrite).label); write_access->insertItem(Smb4KMountSettings::EnumWriteAccess::ReadOnly, Smb4KMountSettings::self()->writeAccessItem()->choices().value(Smb4KMountSettings::EnumWriteAccess::ReadOnly).label); write_access_label->setBuddy(write_access); QLabel *charset_label = new QLabel(Smb4KMountSettings::self()->clientCharsetItem()->label(), common_options); KComboBox *charset = new KComboBox(common_options); charset->setObjectName("kcfg_ClientCharset"); charset->insertItem(Smb4KMountSettings::EnumClientCharset::default_charset, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::default_charset).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_1, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_1).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_2, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_2).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_3, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_3).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_4, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_4).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_5, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_5).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_6, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_6).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_7, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_7).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_8, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset:: iso8859_8).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_9, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_9).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_13, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_13).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_14, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_14).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_15, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_15).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::utf8, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::utf8).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::koi8_r, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::koi8_r).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::koi8_u, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::koi8_u).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::koi8_ru, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::koi8_ru).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::cp1251, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::cp1251).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::gb2312, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::gb2312).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::big5, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::big5).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::euc_jp, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::euc_jp).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::euc_kr, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::euc_kr).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::tis_620, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::tis_620).label); charset_label->setBuddy(charset); QLabel *remote_fs_port_label = new QLabel(Smb4KMountSettings::self()->remoteFileSystemPortItem()->label(), common_options); QSpinBox *remote_fs_port = new QSpinBox(common_options); remote_fs_port->setObjectName("kcfg_RemoteFileSystemPort"); // remote_fs_port->setSliderEnabled(true); common_layout->addWidget(user_id_label, 0, 0, 0); common_layout->addWidget(user_widget, 0, 1, 0); common_layout->addWidget(group_id_label, 1, 0, 0); common_layout->addWidget(group_widget, 1, 1, 0); common_layout->addWidget(fmask_label, 2, 0, 0); common_layout->addWidget(fmask, 2, 1, 0); common_layout->addWidget(dmask_label, 3, 0, 0); common_layout->addWidget(dmask, 3, 1, 0); common_layout->addWidget(write_access_label, 4, 0, 0); common_layout->addWidget(write_access, 4, 1, 0); common_layout->addWidget(charset_label, 5, 0, 0); common_layout->addWidget(charset, 5, 1, 0); common_layout->addWidget(remote_fs_port_label, 6, 0, 0); common_layout->addWidget(remote_fs_port, 6, 1, 0); // Advanced CIFS options QGroupBox *advanced_options = new QGroupBox(i18n("Advanced Options"), this); QGridLayout *advanced_layout = new QGridLayout(advanced_options); advanced_layout->setSpacing(5); QCheckBox *force_uid = new QCheckBox(Smb4KMountSettings::self()->forceUIDItem()->label(), advanced_options); force_uid->setObjectName("kcfg_ForceUID"); QCheckBox *force_gid = new QCheckBox(Smb4KMountSettings::self()->forceGIDItem()->label(), advanced_options); force_gid->setObjectName("kcfg_ForceGID"); QCheckBox *permission_checks = new QCheckBox(Smb4KMountSettings::self()->permissionChecksItem()->label(), advanced_options); permission_checks->setObjectName("kcfg_PermissionChecks"); QCheckBox *client_controls = new QCheckBox(Smb4KMountSettings::self()->clientControlsIDsItem()->label(), advanced_options); client_controls->setObjectName("kcfg_ClientControlsIDs"); QCheckBox *server_inodes = new QCheckBox(Smb4KMountSettings::self()->serverInodeNumbersItem()->label(), advanced_options); server_inodes->setObjectName("kcfg_ServerInodeNumbers"); QCheckBox *reserved_chars = new QCheckBox(Smb4KMountSettings::self()->translateReservedCharsItem()->label(), advanced_options); reserved_chars->setObjectName("kcfg_TranslateReservedChars"); QCheckBox *no_locking = new QCheckBox(Smb4KMountSettings::self()->noLockingItem()->label(), advanced_options); no_locking->setObjectName("kcfg_NoLocking"); QWidget *c_extra_widget = new QWidget(advanced_options); QGridLayout *c_extra_layout = new QGridLayout(c_extra_widget); c_extra_layout->setSpacing(5); c_extra_layout->setMargin(0); QLabel *smbProtocol_label = new QLabel(Smb4KMountSettings::self()->smbProtocolVersionItem()->label(), c_extra_widget); KComboBox *smbProtocol_box = new KComboBox(c_extra_widget); smbProtocol_box->setObjectName("kcfg_SmbProtocolVersion"); smbProtocol_box->insertItem(Smb4KMountSettings::EnumSmbProtocolVersion::OnePointZero, Smb4KMountSettings::self()->smbProtocolVersionItem()->choices().value(Smb4KMountSettings::EnumSmbProtocolVersion::OnePointZero).label); smbProtocol_box->insertItem(Smb4KMountSettings::EnumSmbProtocolVersion::TwoPointZero, Smb4KMountSettings::self()->smbProtocolVersionItem()->choices().value(Smb4KMountSettings::EnumSmbProtocolVersion::TwoPointZero).label); smbProtocol_box->insertItem(Smb4KMountSettings::EnumSmbProtocolVersion::TwoPointOne, Smb4KMountSettings::self()->smbProtocolVersionItem()->choices().value(Smb4KMountSettings::EnumSmbProtocolVersion::TwoPointOne).label); smbProtocol_box->insertItem(Smb4KMountSettings::EnumSmbProtocolVersion::ThreePointZero, Smb4KMountSettings::self()->smbProtocolVersionItem()->choices().value(Smb4KMountSettings::EnumSmbProtocolVersion::ThreePointZero).label); QLabel *cache_label = new QLabel(Smb4KMountSettings::self()->cacheModeItem()->label(), c_extra_widget); KComboBox *cache_box = new KComboBox(c_extra_widget); cache_box->setObjectName("kcfg_CacheMode"); cache_box->insertItem(Smb4KMountSettings::EnumCacheMode::None, Smb4KMountSettings::self()->cacheModeItem()->choices().value(Smb4KMountSettings::EnumCacheMode::None).label); cache_box->insertItem(Smb4KMountSettings::EnumCacheMode::Strict, Smb4KMountSettings::self()->cacheModeItem()->choices().value(Smb4KMountSettings::EnumCacheMode::Strict).label); cache_box->insertItem(Smb4KMountSettings::EnumCacheMode::Loose, Smb4KMountSettings::self()->cacheModeItem()->choices().value(Smb4KMountSettings::EnumCacheMode::Loose).label); cache_label->setBuddy(cache_box); QLabel *security_label = new QLabel(Smb4KMountSettings::self()->securityModeItem()->label(), c_extra_widget); KComboBox *security_box = new KComboBox(c_extra_widget); security_box->setObjectName("kcfg_SecurityMode"); security_box->insertItem(Smb4KMountSettings::EnumSecurityMode::None, Smb4KMountSettings::self()->securityModeItem()->choices().value(Smb4KMountSettings::EnumSecurityMode::None).label); security_box->insertItem(Smb4KMountSettings::EnumSecurityMode::Krb5, Smb4KMountSettings::self()->securityModeItem()->choices().value(Smb4KMountSettings::EnumSecurityMode::Krb5).label); security_box->insertItem(Smb4KMountSettings::EnumSecurityMode::Krb5i, Smb4KMountSettings::self()->securityModeItem()->choices().value(Smb4KMountSettings::EnumSecurityMode::Krb5i).label); security_box->insertItem(Smb4KMountSettings::EnumSecurityMode::Ntlm, Smb4KMountSettings::self()->securityModeItem()->choices().value(Smb4KMountSettings::EnumSecurityMode::Ntlm).label); security_box->insertItem(Smb4KMountSettings::EnumSecurityMode::Ntlmi, Smb4KMountSettings::self()->securityModeItem()->choices().value(Smb4KMountSettings::EnumSecurityMode::Ntlmi).label); security_box->insertItem(Smb4KMountSettings::EnumSecurityMode::Ntlmv2, Smb4KMountSettings::self()->securityModeItem()->choices().value(Smb4KMountSettings::EnumSecurityMode::Ntlmv2).label); security_box->insertItem(Smb4KMountSettings::EnumSecurityMode::Ntlmv2i, Smb4KMountSettings::self()->securityModeItem()->choices().value(Smb4KMountSettings::EnumSecurityMode::Ntlmv2i).label); security_box->insertItem(Smb4KMountSettings::EnumSecurityMode::Ntlmssp, Smb4KMountSettings::self()->securityModeItem()->choices().value(Smb4KMountSettings::EnumSecurityMode::Ntlmssp).label); security_box->insertItem(Smb4KMountSettings::EnumSecurityMode::Ntlmsspi, Smb4KMountSettings::self()->securityModeItem()->choices().value(Smb4KMountSettings::EnumSecurityMode::Ntlmsspi).label); security_label->setBuddy(security_box); QLabel *add_options_label = new QLabel(Smb4KMountSettings::self()->customCIFSOptionsItem()->label(), c_extra_widget); KLineEdit *additional_opts = new KLineEdit(c_extra_widget); additional_opts->setObjectName("kcfg_CustomCIFSOptions"); additional_opts->setReadOnly(true); additional_opts->setClearButtonShown(true); add_options_label->setBuddy(additional_opts); QToolButton *additional_opts_edit = new QToolButton(c_extra_widget); additional_opts_edit->setIcon(KDE::icon("document-edit")); additional_opts_edit->setToolTip(i18n("Edit the additional CIFS options.")); c_extra_layout->addWidget(smbProtocol_label, 0, 0, 0); c_extra_layout->addWidget(smbProtocol_box, 0, 1, 1, 2, 0); c_extra_layout->addWidget(cache_label, 1, 0, 0); c_extra_layout->addWidget(cache_box, 1, 1, 1, 2, 0); c_extra_layout->addWidget(security_label, 2, 0, 0); c_extra_layout->addWidget(security_box, 2, 1, 1, 2, 0); c_extra_layout->addWidget(add_options_label, 3, 0, 0); c_extra_layout->addWidget(additional_opts, 3, 1, 0); c_extra_layout->addWidget(additional_opts_edit, 3, 2, 0); advanced_layout->addWidget(force_uid, 0, 0, 0); advanced_layout->addWidget(force_gid, 0, 1, 0); advanced_layout->addWidget(permission_checks, 1, 0, 0); advanced_layout->addWidget(client_controls, 1, 1, 0); advanced_layout->addWidget(server_inodes, 2, 0, 0); advanced_layout->addWidget(reserved_chars, 2, 1, 0); advanced_layout->addWidget(no_locking, 3, 0, 0); advanced_layout->addWidget(c_extra_widget, 4, 0, 1, 2, 0); mount_layout->addWidget(common_options); mount_layout->addWidget(advanced_options); mount_layout->addStretch(100); // // Connections // connect(user_menu, SIGNAL(triggered(QAction*)), this, SLOT(slotNewUserTriggered(QAction*))); connect(group_menu, SIGNAL(triggered(QAction*)), this, SLOT(slotNewGroupTriggered(QAction*))); connect(additional_opts_edit, SIGNAL(clicked(bool)), this, SLOT(slotAdditionalCIFSOptions())); }
DialogCreateTag::DialogCreateTag(QWidget *parent, TagTreeNode* parentNode, const char *name) : KDialogBase(parent, name, true, "", KDialogBase::Ok|KDialogBase::Cancel, KDialogBase::Ok, false ) , m_parentNode(parentNode) { if (parentNode) { this->setCaption(i18n("Create tag")); } else { this->setCaption(i18n("Create toplevel tag")); } QWidget* mainPanel = new QWidget(this, "mainPanel"); setMainWidget(mainPanel); QVBoxLayout* mainPanelLayout = new QVBoxLayout(mainPanel, 0, 5, "mainPanelLayout"); mainPanelLayout->setAutoAdd(true); // parent if (parentNode) { // newTagGroup QGroupBox* parentTagGroup = new QGroupBox(i18n("Parent tag"), mainPanel, "parentTagGroup"); QGridLayout* parentTagGroupLayout = new QGridLayout(parentTagGroup, 4, 4, 20, 5, "parentTagGroupLayout"); parentTagGroupLayout->setRowSpacing(0, 10); // type QLabel* typeLabel = new QLabel(i18n("Type"), parentTagGroup, "typeLabel"); parentTagGroupLayout->addWidget(typeLabel, 1, 0); KComboBox* typeComboBox = new KComboBox(false, parentTagGroup, "typeComboBox"); typeComboBox->insertItem(parentNode->tagNode()->typeName()); typeComboBox->setEnabled(false); parentTagGroupLayout->addMultiCellWidget(typeComboBox, 1, 1, 1, 2); // name QLabel* nameLabel = new QLabel(i18n("Name"), parentTagGroup, "nameLabel"); parentTagGroupLayout->addWidget(nameLabel, 2, 0); KLineEdit* nameLineEdit = new KLineEdit(parentTagGroup, "nameLineEdit"); nameLineEdit->setText(*parentNode->tagNode()->text()); nameLineEdit->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); nameLineEdit->setReadOnly(true); parentTagGroupLayout->addMultiCellWidget(nameLineEdit, 2, 2, 1, 2); // icon QLabel* iconLabel = new QLabel(i18n("Icon"), parentTagGroup, "iconLabel"); parentTagGroupLayout->addWidget(iconLabel, 3, 0); KLineEdit* iconLineEdit = new KLineEdit(parentTagGroup, "iconLineEdit"); iconLineEdit->setText(*parentNode->tagNode()->iconName()); iconLineEdit->setMinimumWidth(300); iconLineEdit->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); iconLineEdit->setReadOnly(true); parentTagGroupLayout->addWidget(iconLineEdit, 3, 1); QPushButton* iconButton = new QPushButton(i18n("Icon"), parentTagGroup, "iconButton"); QIconSet iconSet = KGlobal::iconLoader()->loadIconSet(iconLineEdit->text(), KIcon::Small, Configuration::getInstance()->tagtreeIconSize(), true); iconButton->setIconSet(iconSet); iconButton->setText(QString::null); iconButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); iconButton->setEnabled(true); parentTagGroupLayout->addWidget(iconButton, 3, 2); } // newTagGroup QGroupBox* newTagGroup = new QGroupBox(i18n("New tag"), mainPanel, "newTagGroup"); QGridLayout* newTagGroupLayout = new QGridLayout(newTagGroup, 4, 4, 20, 5, "newTagGroupLayout"); newTagGroupLayout->setRowSpacing(0, 10); // type QLabel* typeLabel = new QLabel(i18n("Type"), newTagGroup, "typeLabel"); newTagGroupLayout->addWidget(typeLabel, 1, 0); m_typeComboBox = new KComboBox(false, newTagGroup, "typeComboBox"); m_typeComboBoxEntries = new QValueList<int>; if (!parentNode) { m_typeComboBox->insertItem(TagNode::tagNodeTypeName(TagNode::TYPE_TITLE)); m_typeComboBoxEntries->append(TagNode::tagNodeTypeId(TagNode::TYPE_TITLE)); } m_typeComboBox->insertItem(TagNode::tagNodeTypeName(TagNode::TYPE_BOOLEAN)); m_typeComboBoxEntries->append(TagNode::tagNodeTypeId(TagNode::TYPE_BOOLEAN)); newTagGroupLayout->addMultiCellWidget(m_typeComboBox, 1, 1, 1, 2); // name QLabel* nameLabel = new QLabel(i18n("Name"), newTagGroup, "nameLabel"); newTagGroupLayout->addWidget(nameLabel, 2, 0); m_nameLineEdit = new KLineEdit(newTagGroup, "nameLineEdit"); m_nameLineEdit->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); QObject::connect(m_nameLineEdit, SIGNAL(textChanged(const QString&)), this, SLOT(slotNameChanged(const QString&))); newTagGroupLayout->addMultiCellWidget(m_nameLineEdit, 2, 2, 1, 2); // icon QLabel* iconLabel = new QLabel(i18n("Icon"), newTagGroup, "iconLabel"); newTagGroupLayout->addWidget(iconLabel, 3, 0); m_iconLineEdit = new KLineEdit(newTagGroup, "iconLineEdit"); m_iconLineEdit->setMinimumWidth(300); m_iconLineEdit->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); QObject::connect(m_iconLineEdit, SIGNAL(textChanged(const QString&)), this, SLOT(slotIconTextChanged(const QString&))); newTagGroupLayout->addWidget(m_iconLineEdit, 3, 1); m_iconButton = new QPushButton(i18n("Icon"), newTagGroup, "iconButton"); m_iconButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); newTagGroupLayout->addWidget(m_iconButton, 3, 2); QObject::connect(m_iconButton, SIGNAL(clicked()), this, SLOT(slotIconButtonClicked())); // spacer QWidget* spacer = new QWidget(mainPanel, "spacer"); spacer->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Expanding); // disable ok button validate(); // set the focus m_nameLineEdit->setFocus(); }
/** * Add a new Row */ RowWidgetController* ClassifierListTab::addRow(bool ignoreModified) { m_centralTableTW->setRowCount(m_centralTableTW->rowCount()+1); QString typeName; QString newItemType; RowWidgetController* aRow = new RowWidgetController(m_itemType, m_pClassifier, ignoreModified); switch (m_itemType) { case ot_Attribute: { QTableWidgetItem* nameWidget = new QTableWidgetItem(""); nameWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,0,nameWidget); aRow->setName(nameWidget); //connect(nameWidget,SIGNAL(destroyed(QObject*)),aRow,SLOT(destroyTableItem(QObject*))); RowWidgetController::linker[nameWidget] = aRow; TypeCombo* typeCbb = new TypeCombo(this); m_centralTableTW->setCellWidget(m_rowCount,1,typeCbb); aRow->setType(typeCbb); QTableWidgetItem* inititalWidget = new QTableWidgetItem(""); inititalWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,2,inititalWidget); aRow->setInitial(inititalWidget); //connect(inititalWidget,SIGNAL(destroyed(QObject*)),aRow,SLOT(destroyTableItem(QObject*))); RowWidgetController::linker[inititalWidget] = aRow; KComboBox* visibilityCbb = new KComboBox(this); QStringList availableVisibilities; availableVisibilities << "Public" << "Private" << "Protected" << "Implementation"; visibilityCbb->addItems(availableVisibilities); m_centralTableTW->setCellWidget(m_rowCount,3,visibilityCbb); aRow->setVisibility(visibilityCbb); QTableWidgetItem* stereotypeWidget = new QTableWidgetItem(""); stereotypeWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,4,stereotypeWidget); aRow->setStereotype(stereotypeWidget); //connect(stereotypeWidget,SIGNAL(destroyed(QObject*)),aRow,SLOT(destroyTableItem(QObject*))); RowWidgetController::linker[stereotypeWidget] = aRow; QCheckBox* staticCb = new QCheckBox(this); m_centralTableTW->setCellWidget(m_rowCount,5,staticCb); aRow->setStaticV(staticCb); PopupButton* docPb = new PopupButton(this); docPb->setText("Doc"); m_centralTableTW->setCellWidget(m_rowCount,6,docPb); aRow->setDocumentation(docPb); } break; case ot_Operation: { typeName = i18n("Operations"); QTableWidgetItem* nameWidget = new QTableWidgetItem(""); nameWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,0,nameWidget); aRow->setName(nameWidget); //connect(nameWidget,SIGNAL(destroyed(QObject*)),aRow,SLOT(destroyTableItem(QObject*))); RowWidgetController::linker[nameWidget] = aRow; ParamWidget* paramWdg = new ParamWidget(this); m_centralTableTW->setCellWidget(m_rowCount,1,paramWdg); aRow->setParameters(paramWdg); TypeCombo* typeCbb = new TypeCombo(this); typeCbb->setEditable(true); m_centralTableTW->setCellWidget(m_rowCount,2,typeCbb); aRow->setType(typeCbb); KComboBox* visibilityCbb = new KComboBox(this); QStringList availableVisibilities; availableVisibilities << "Public" << "Private" << "Protected" << "Implementation"; //TODO anything better? visibilityCbb->addItems(availableVisibilities); m_centralTableTW->setCellWidget(m_rowCount,3,visibilityCbb); aRow->setVisibility(visibilityCbb); QTableWidgetItem* stereotypeWidget = new QTableWidgetItem(""); stereotypeWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,4,stereotypeWidget); aRow->setStereotype(stereotypeWidget); //connect(stereotypeWidget,SIGNAL(destroyed(QObject*)),aRow,SLOT(destroyTableItem(QObject*))); RowWidgetController::linker[stereotypeWidget] = aRow; QCheckBox* staticCb = new QCheckBox(this); m_centralTableTW->setCellWidget(m_rowCount,5,staticCb); aRow->setStaticV(staticCb); QCheckBox* abstractCb = new QCheckBox(this); m_centralTableTW->setCellWidget(m_rowCount,6,abstractCb); aRow->setAbstract(abstractCb); QCheckBox* constCb = new QCheckBox(this); m_centralTableTW->setCellWidget(m_rowCount,7,constCb); aRow->setConstV(constCb); PopupButton* docPb = new PopupButton(this); docPb->setText("Doc"); m_centralTableTW->setCellWidget(m_rowCount,8,docPb); aRow->setDocumentation(docPb); PopupButton* sourcePb = new PopupButton(this); sourcePb->setText("Source"); m_centralTableTW->setCellWidget(m_rowCount,9,sourcePb); aRow->setSource(sourcePb); } break; case ot_Template: { typeName = i18n("Templates"); QTableWidgetItem* nameWidget = new QTableWidgetItem(""); nameWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,0,nameWidget); aRow->setName(nameWidget); //connect(nameWidget,SIGNAL(destroyed(QObject*)),aRow,SLOT(destroyTableItem(QObject*))); RowWidgetController::linker[nameWidget] = aRow; TypeCombo* typeCbb = new TypeCombo(this); typeCbb->setEditable(true); m_centralTableTW->setCellWidget(m_rowCount,1,typeCbb); aRow->setType(typeCbb); QTableWidgetItem* stereotypeWidget = new QTableWidgetItem(""); stereotypeWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,2,stereotypeWidget); aRow->setStereotype(stereotypeWidget); //connect(stereotypeWidget,SIGNAL(destroyed(QObject*)),aRow,SLOT(destroyTableItem(QObject*))); RowWidgetController::linker[stereotypeWidget] = aRow; } break; case ot_EnumLiteral: { typeName = i18n("Enum Literals"); QTableWidgetItem* nameWidget = new QTableWidgetItem(""); nameWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,0,nameWidget); aRow->setName(nameWidget); RowWidgetController::linker[nameWidget] = aRow; QTableWidgetItem* valWidget = new QTableWidgetItem(""); valWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,1,valWidget); aRow->setDefaultValue(valWidget); //connect(valWidget,SIGNAL(destroyed(QObject*)),aRow,SLOT(destroyTableItem(QObject*))); RowWidgetController::linker[valWidget] = aRow; } break; case ot_EntityAttribute: { typeName = i18n("Entity Attributes"); newItemType = i18n("N&ew Entity Attribute..."); QTableWidgetItem* nameWidget = new QTableWidgetItem(""); nameWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,0,nameWidget); aRow->setName(nameWidget); RowWidgetController::linker[nameWidget] = aRow; TypeCombo* typeCbb = new TypeCombo(this); m_centralTableTW->setCellWidget(m_rowCount,1,typeCbb); aRow->setType(typeCbb); QTableWidgetItem* valWidget = new QTableWidgetItem(""); valWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,2,valWidget); aRow->setDefaultValue(valWidget); RowWidgetController::linker[nameWidget] = aRow; QTableWidgetItem* stereotypeWidget = new QTableWidgetItem(""); stereotypeWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,3,stereotypeWidget); aRow->setStereotype(stereotypeWidget); RowWidgetController::linker[nameWidget] = aRow; QTableWidgetItem* lengthWidget = new QTableWidgetItem(""); lengthWidget->setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); m_centralTableTW->setItem(m_rowCount,4,lengthWidget); aRow->setLength(lengthWidget); RowWidgetController::linker[nameWidget] = aRow; KComboBox* attributesCbb = new KComboBox(this); //QStringList availableVisibilities; //availableVisibilities << "Public" << "Private" << "Protected" << "Implementation"; //attributesCbb->addItems(availableVisibilities); m_centralTableTW->setCellWidget(m_rowCount,5,attributesCbb); aRow->setAttributes(attributesCbb); QCheckBox* autoI = new QCheckBox(this); m_centralTableTW->setCellWidget(m_rowCount,6,autoI); aRow->setAutoIncrement(autoI); QCheckBox* allowNull = new QCheckBox(this); m_centralTableTW->setCellWidget(m_rowCount,7,allowNull); aRow->setAllowNull(allowNull); QCheckBox* indexed = new QCheckBox(this); m_centralTableTW->setCellWidget(m_rowCount,8,indexed); aRow->setIndexed(indexed); PopupButton* docPb = new PopupButton(this); docPb->setText("Doc"); m_centralTableTW->setCellWidget(m_rowCount,9,docPb); aRow->setDocumentation(docPb); } break; case ot_EntityConstraint: typeName = i18n( "Constraints" ); newItemType = i18n( "N&ew Constraint..." ); delete aRow; aRow=0; break; default: uWarning() << "unknown listItem type in ClassifierListTab"; delete aRow; aRow=0; break; } m_rowCount++; if (aRow) { aRow->connectSlots(); rowList << aRow; } return aRow; }
TransferDialog::TransferDialog( MediaDevice *mdev ) : KDialogBase( Pana::mainWindow(), "transferdialog", true, QString::null, Ok|Cancel, Ok ) { m_dev = mdev; m_accepted = false; m_sort1LastIndex = m_sort2LastIndex = -1; kapp->setTopWidget( this ); setCaption( kapp->makeStdCaption( i18n( "Transfer Queue to Device" ) ) ); QVBox* vbox = makeVBoxMainWidget(); vbox->setSpacing( KDialog::spacingHint() ); QString transferDir = mdev->getTransferDir(); QGroupBox *location = new QGroupBox( 1, Qt::Vertical, i18n( "Music Location" ), vbox ); new QLabel( i18n( "Your music will be transferred to:\n%1" ) .arg( transferDir ), location ); QVBox *vbox2 = new QVBox( vbox ); QSpacerItem *spacer = new QSpacerItem( 0, 25 ); QLayout *vlayout = vbox2->layout(); if( vlayout ) vlayout->addItem( spacer ); new QLabel( i18n( "You can have your music automatically grouped in\n" "a variety of ways. Each grouping will create\n" "directories based upon the specified criteria.\n"), vbox ); QGroupBox *sorting = new QGroupBox( 6, Qt::Vertical, i18n( "Groupings" ), vbox ); m_label1 = new QLabel( i18n( "Select first grouping:\n" ), sorting ); m_sort1 = new KComboBox( sorting ); m_label2 = new QLabel( i18n( "Select second grouping:\n" ), sorting ); m_sort2 = new KComboBox( sorting ); m_label3 = new QLabel( i18n( "Select third grouping:\n" ), sorting ); m_sort3 = new KComboBox( sorting ); m_combolist = new QPtrList<KComboBox>(); m_combolist->append( m_sort1 ); m_combolist->append( m_sort2 ); m_combolist->append( m_sort3 ); KComboBox * comboTemp; for( comboTemp = m_combolist->first(); comboTemp; comboTemp = m_combolist->next() ) { comboTemp->insertItem( i18n("None") ); comboTemp->insertItem( i18n("Artist") ); comboTemp->insertItem( i18n("Album") ); comboTemp->insertItem( i18n("Genre") ); comboTemp->setCurrentItem( 0 ); } m_sort1->setCurrentItem( mdev->m_firstSort ); m_sort2->setCurrentItem( mdev->m_secondSort ); m_sort3->setCurrentItem( mdev->m_thirdSort ); m_label2->setDisabled( m_sort1->currentItem() == 0 ); m_sort2->setDisabled( m_sort1->currentItem() == 0 ); m_label3->setDisabled( m_sort2->currentItem() == 0 ); m_sort3->setDisabled( m_sort2->currentItem() == 0 ); connect( m_sort1, SIGNAL( activated(int) ), SLOT( sort1_activated(int)) ); connect( m_sort2, SIGNAL( activated(int) ), SLOT( sort2_activated(int)) ); QVBox *vbox3 = new QVBox( vbox ); QSpacerItem *spacer2 = new QSpacerItem( 0, 25 ); QLayout *vlayout2 = vbox3->layout(); if( vlayout2 ) vlayout2->addItem( spacer2 ); QGroupBox *options = new QGroupBox( 6, Qt::Vertical, i18n( "Options" ), vbox ); QCheckBox *convertSpaces = new QCheckBox( i18n( "Convert spaces to underscores" ), options ); convertSpaces->setChecked( mdev->getSpacesToUnderscores() ); connect( convertSpaces, SIGNAL( toggled(bool) ), this, SLOT( convertSpaces_toggled(bool) ) ); }
// // FreeBSD and NetBSD // void Smb4KConfigPageMounting::setupWidget() { QVBoxLayout *mount_layout = new QVBoxLayout(this); mount_layout->setSpacing(5); mount_layout->setMargin(0); // Common Options QGroupBox *common_options = new QGroupBox(i18n("Common Options"), this); QGridLayout *common_layout = new QGridLayout(common_options); common_layout->setSpacing(5); QLabel *user_id_label = new QLabel(Smb4KMountSettings::self()->userIDItem()->label(), common_options); QWidget *user_widget = new QWidget(common_options); QGridLayout *user_layout = new QGridLayout(user_widget); user_layout->setSpacing(5); user_layout->setMargin(0); KLineEdit *user_id = new KLineEdit(user_widget); user_id->setObjectName("kcfg_UserID"); user_id->setAlignment(Qt::AlignRight); user_id->setReadOnly(true); QToolButton *user_chooser = new QToolButton(user_widget); user_chooser->setIcon(KDE::icon("edit-find-user")); user_chooser->setToolTip(i18n("Choose a different user")); user_chooser->setPopupMode(QToolButton::InstantPopup); user_id_label->setBuddy(user_chooser); QMenu *user_menu = new QMenu(user_chooser); user_chooser->setMenu(user_menu); QList<KUser> user_list = KUser::allUsers(); QMap<QString,QString> users; for (int i = 0; i < user_list.size(); ++i) { users.insert(QString("%1 (%2)").arg(user_list.at(i).loginName()).arg(user_list.at(i).userId().nativeId()), QString("%1").arg(user_list.at(i).userId().nativeId())); } QMap<QString,QString>::const_iterator u_it = users.constBegin(); while (u_it != users.constEnd()) { QAction *user_action = user_menu->addAction(u_it.key()); user_action->setData(u_it.value()); ++u_it; } user_layout->addWidget(user_id, 0, 0, 0); user_layout->addWidget(user_chooser, 0, 1, Qt::AlignCenter); QLabel *group_id_label = new QLabel(Smb4KMountSettings::self()->groupIDItem()->label(), common_options); QWidget *group_widget = new QWidget(common_options); QGridLayout *group_layout = new QGridLayout(group_widget); group_layout->setSpacing(5); group_layout->setMargin(0); KLineEdit *group_id = new KLineEdit(group_widget); group_id->setObjectName("kcfg_GroupID"); group_id->setAlignment(Qt::AlignRight); group_id->setReadOnly(true); QToolButton *group_chooser = new QToolButton(group_widget); group_chooser->setIcon(KDE::icon("edit-find-user")); group_chooser->setToolTip(i18n("Choose a different group")); group_chooser->setPopupMode(QToolButton::InstantPopup); group_id_label->setBuddy(group_chooser); QMenu *group_menu = new QMenu(group_chooser); group_chooser->setMenu(group_menu); QList<KUserGroup> group_list = KUserGroup::allGroups(); QMap<QString,QString> groups; for (int i = 0; i < group_list.size(); ++i) { groups.insert(QString("%1 (%2)").arg(group_list.at(i).name()).arg(group_list.at(i).groupId().nativeId()), QString("%1").arg(group_list.at(i).groupId().nativeId())); } QMap<QString,QString>::const_iterator g_it = groups.constBegin(); while (g_it != groups.constEnd()) { QAction *group_action = group_menu->addAction(g_it.key()); group_action->setData(g_it.value()); ++g_it; } group_layout->addWidget(group_id, 0, 0, 0); group_layout->addWidget(group_chooser, 0, 1, Qt::AlignCenter); QLabel *fmask_label = new QLabel(Smb4KMountSettings::self()->fileMaskItem()->label(), common_options); KLineEdit *fmask = new KLineEdit(common_options); fmask->setObjectName("kcfg_FileMask"); fmask->setAlignment(Qt::AlignRight); fmask_label->setBuddy(fmask); QLabel *dmask_label = new QLabel(Smb4KMountSettings::self()->directoryMaskItem()->label(), common_options); KLineEdit *dmask = new KLineEdit(common_options); dmask->setObjectName("kcfg_DirectoryMask"); dmask->setAlignment(Qt::AlignRight); dmask_label->setBuddy(dmask); QLabel *charset_label = new QLabel(Smb4KMountSettings::self()->clientCharsetItem()->label(), common_options); KComboBox *charset = new KComboBox(common_options); charset->setObjectName("kcfg_ClientCharset"); charset->insertItem(Smb4KMountSettings::EnumClientCharset::default_charset, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::default_charset).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_1, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_1).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_2, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_2).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_3, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_3).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_4, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_4).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_5, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_5).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_6, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_6).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_7, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_7).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_8, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset:: iso8859_8).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_9, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_9).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_13, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_13).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_14, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_14).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::iso8859_15, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::iso8859_15).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::utf8, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::utf8).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::koi8_r, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::koi8_r).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::koi8_u, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::koi8_u).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::koi8_ru, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::koi8_ru).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::cp1251, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::cp1251).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::gb2312, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::gb2312).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::big5, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::big5).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::euc_jp, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::euc_jp).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::euc_kr, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::euc_kr).label); charset->insertItem(Smb4KMountSettings::EnumClientCharset::tis_620, Smb4KMountSettings::self()->clientCharsetItem()->choices().value(Smb4KMountSettings::EnumClientCharset::tis_620).label); charset_label->setBuddy(charset); QLabel *codepage_label = new QLabel(Smb4KMountSettings::self()->serverCodepageItem()->label(), common_options); codepage_label->setObjectName("CodepageLabel"); KComboBox *codepage = new KComboBox(common_options); codepage->setObjectName("kcfg_ServerCodepage"); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::default_codepage, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::default_codepage).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp437, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp437).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp720, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp720).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp737, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp737).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp775, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp775).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp850, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp850).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp852, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp852).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp855, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp855).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp857, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp857).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp858, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp858).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp860, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp860).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp861, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp861).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp862, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp862).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp863, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp863).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp864, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp864).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp865, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp865).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp866, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp866).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp869, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp869).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp874, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp874).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp932, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp932).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp936, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp936).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp949, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp949).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp950, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp950).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp1250, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp1250).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp1251, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp1251).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp1252, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp1252).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp1253, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp1253).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp1254, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp1254).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp1255, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp1255).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp1256, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp1256).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp1257, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp1257).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::cp1258, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::cp1258).label); codepage->insertItem(Smb4KMountSettings::EnumServerCodepage::unicode, Smb4KMountSettings::self()->serverCodepageItem()->choices().value(Smb4KMountSettings::EnumServerCodepage::unicode).label); codepage_label->setBuddy(codepage); common_layout->addWidget(user_id_label, 0, 0, 0); common_layout->addWidget(user_widget, 0, 1, 0); common_layout->addWidget(group_id_label, 1, 0, 0); common_layout->addWidget(group_widget, 1, 1, 0); common_layout->addWidget(fmask_label, 2, 0, 0); common_layout->addWidget(fmask, 2, 1, 0); common_layout->addWidget(dmask_label, 3, 0, 0); common_layout->addWidget(dmask, 3, 1, 0); common_layout->addWidget(charset_label, 4, 0, 0); common_layout->addWidget(charset, 4, 1, 0); common_layout->addWidget(codepage_label, 5, 0, 0); common_layout->addWidget(codepage, 5, 1, 0); mount_layout->addWidget(common_options); mount_layout->addStretch(100); // // Connections // connect(user_menu, SIGNAL(triggered(QAction*)), this, SLOT(slotNewUserTriggered(QAction*))); connect(group_menu, SIGNAL(triggered(QAction*)), this, SLOT(slotNewGroupTriggered(QAction*))); }
LinkDialog::LinkDialog(QWidget* parent, Selection* selection) : KPageDialog(parent) , d(new Private) { setCaption(i18n("Insert Link")); setButtons(Ok | Cancel); setFaceType(List); // link for web or ftp d->internetPage = new QWidget(); d->p1 = addPage(d->internetPage, i18n("Internet")); d->p1->setHeader(i18n("Link to Internet Address")); d->p1->setIcon(KIcon("internet-web-browser")); QVBoxLayout* iLayout = new QVBoxLayout(d->internetPage); iLayout->addWidget(new QLabel(i18n("Text to display:"), d->internetPage)); d->internetText = new KLineEdit(d->internetPage); iLayout->addWidget(d->internetText); iLayout->addWidget(new QLabel(i18n("Internet address:"), d->internetPage)); d->internetLink = new KLineEdit(d->internetPage); iLayout->addWidget(d->internetLink); iLayout->addItem(new QSpacerItem(0, 0, QSizePolicy::Minimum, QSizePolicy::Expanding)); connect(d->internetText, SIGNAL(textChanged(const QString&)), this, SLOT(setText(const QString&))); // link for e-mail d->mailPage = new QWidget(); d->p2 = addPage(d->mailPage, i18n("Mail")); d->p2->setHeader(i18n("Link to Mail Address")); d->p2->setIcon(KIcon("mail-message")); QVBoxLayout* mLayout = new QVBoxLayout(d->mailPage); mLayout->addWidget(new QLabel(i18n("Text to display:"), d->mailPage)); d->mailText = new KLineEdit(d->mailPage); mLayout->addWidget(d->mailText); mLayout->addWidget(new QLabel(i18n("Email:"), d->mailPage)); d->mailLink = new KLineEdit(d->mailPage); mLayout->addWidget(d->mailLink); connect(d->mailText, SIGNAL(textChanged(const QString&)), this, SLOT(setText(const QString&))); mLayout->addWidget(new QLabel(i18n("Subject:"), d->mailPage)); d->mailSubject = new KLineEdit(d->mailPage); mLayout->addWidget(d->mailSubject); mLayout->addItem(new QSpacerItem(0, 0, QSizePolicy::Minimum, QSizePolicy::Expanding)); // link for external file d->filePage = new QWidget(); d->p3 = addPage(d->filePage, i18n("File")); d->p3->setHeader(i18n("Link to File")); d->p3->setIcon(KIcon("system-file-manager")); QVBoxLayout* fLayout = new QVBoxLayout(d->filePage); fLayout->addWidget(new QLabel(i18n("Text to display:"), d->filePage)); d->fileText = new KLineEdit(d->filePage); fLayout->addWidget(d->fileText); fLayout->addWidget(new QLabel(i18n("File location:"), d->filePage)); d->fileLink = new KUrlRequester(d->filePage); d->fileLink->completionObject()->setReplaceHome(true); d->fileLink->completionObject()->setReplaceEnv(true); fLayout->addWidget(d->fileLink); fLayout->addWidget(new QLabel(i18n("Recent file:"), d->filePage)); KComboBox* recentFile = new KComboBox(d->filePage); recentFile->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); recentFile->setMinimumContentsLength(40); fLayout->addWidget(recentFile); fLayout->addItem(new QSpacerItem(0, 40, QSizePolicy::Minimum, QSizePolicy::MinimumExpanding)); connect(d->fileText, SIGNAL(textChanged(const QString&)), this, SLOT(setText(const QString&))); QObject::connect(recentFile, SIGNAL(highlighted(const QString &)), d->fileLink->lineEdit(), SLOT(setText(const QString &))); // populate recent files int index = 0; const QStringList fileList = KRecentDocument::recentDocuments(); for (QStringList::ConstIterator it = fileList.constBegin(); it != fileList.constEnd(); ++it) { KDesktopFile f(*it); if (!f.readUrl().isEmpty()) recentFile->insertItem(index++, f.readUrl()); } if (recentFile->count() == 0) { recentFile->insertItem(0, i18n("No Entries")); recentFile->setEnabled(false); } // link to another cell d->cellPage = new QWidget(); d->p4 = addPage(d->cellPage, i18n("Cell")); d->p4->setHeader(i18n("Link to Cell")); d->p4->setIcon(KIcon("table")); QVBoxLayout* cLayout = new QVBoxLayout(d->cellPage); cLayout->addWidget(new QLabel(i18n("Text to display:"), d->cellPage)); d->cellText = new KLineEdit(d->cellPage); cLayout->addWidget(d->cellText); cLayout->addWidget(new QLabel(i18n("Cell or Named Area:"), d->cellPage)); d->cellLink = new KComboBox(d->cellPage); d->cellLink->setEditable(true); const Sheet *sheet = selection->activeSheet(); if (sheet && selection) { Cell cell(sheet, selection->cursor()); d->cellLink->addItem(cell.fullName()); } const NamedAreaManager *manager = selection->activeSheet()->map()->namedAreaManager(); d->cellLink->addItems(manager->areaNames()); d->cellLink->setItemText(d->cellLink->currentIndex(), ""); cLayout->addWidget(d->cellLink); cLayout->addItem(new QSpacerItem(0, 0, QSizePolicy::Minimum, QSizePolicy::Expanding)); connect(d->cellText, SIGNAL(textChanged(const QString&)), this, SLOT(setText(const QString&))); showButtonSeparator(true); d->internetText->setFocus(); resize(400, 300); connect(this, SIGNAL(okClicked()), this, SLOT(slotOk())); }