OrganizeCollectionDialog::OrganizeCollectionDialog( const Meta::TrackList &tracks, const QStringList &folders, const QString &targetExtension, QWidget *parent, const char *name, bool modal, const QString &caption, QFlags<KDialog::ButtonCode> buttonMask ) : KDialog( parent ) , ui( new Ui::OrganizeCollectionDialogBase ) , m_detailed( true ) , m_schemeModified( false ) , m_conflict( false ) { Q_UNUSED( name ) setCaption( caption ); setModal( modal ); setButtons( buttonMask ); showButtonSeparator( true ); m_targetFileExtension = targetExtension; if( tracks.size() > 0 ) m_allTracks = tracks; KVBox *mainVBox = new KVBox( this ); setMainWidget( mainVBox ); QWidget *mainContainer = new QWidget( mainVBox ); ui->setupUi( mainContainer ); m_trackOrganizer = new TrackOrganizer( m_allTracks, this ); ui->folderCombo->insertItems( 0, folders ); if( ui->folderCombo->contains( AmarokConfig::organizeDirectory() ) ) ui->folderCombo->setCurrentItem( AmarokConfig::organizeDirectory() ); else ui->folderCombo->setCurrentIndex( 0 ); //TODO possible bug: assumes folder list is not empty. ui->overwriteCheck->setChecked( AmarokConfig::overwriteFiles() ); ui->optionsWidget->setReplaceSpaces( AmarokConfig::replaceSpace() ); ui->optionsWidget->setPostfixThe( AmarokConfig::ignoreThe() ); ui->optionsWidget->setVfatCompatible( AmarokConfig::vfatCompatible() ); ui->optionsWidget->setAsciiOnly( AmarokConfig::asciiOnly() ); ui->optionsWidget->setRegexpText( AmarokConfig::replacementRegexp() ); ui->optionsWidget->setReplaceText( AmarokConfig::replacementString() ); ui->previewTableWidget->horizontalHeader()->setResizeMode( QHeaderView::ResizeToContents ); ui->conflictLabel->setText(""); QPalette p = ui->conflictLabel->palette(); KColorScheme::adjustForeground( p, KColorScheme::NegativeText ); // TODO this isn't working, the color is still normal ui->conflictLabel->setPalette( p ); ui->previewTableWidget->sortItems( 0, Qt::AscendingOrder ); // only show the options when the Options button is checked connect( ui->optionsButton, SIGNAL(toggled(bool)), ui->organizeCollectionWidget, SLOT(setVisible(bool)) ); connect( ui->optionsButton, SIGNAL(toggled(bool)), ui->optionsWidget, SLOT(setVisible(bool)) ); ui->organizeCollectionWidget->hide(); ui->optionsWidget->hide(); connect( ui->folderCombo, SIGNAL(currentIndexChanged(QString)), SLOT(slotUpdatePreview()) ); connect( ui->organizeCollectionWidget, SIGNAL(schemeChanged()), SLOT(slotUpdatePreview()) ); connect( ui->optionsWidget, SIGNAL(optionsChanged()), SLOT(slotUpdatePreview())); // to show the conflict error connect( ui->overwriteCheck, SIGNAL(stateChanged(int)), SLOT(slotOverwriteModeChanged()) ); connect( this, SIGNAL(finished(int)), ui->organizeCollectionWidget, SLOT(slotSaveFormatList()) ); connect( this, SIGNAL(accepted()), ui->organizeCollectionWidget, SLOT(onAccept()) ); connect( this, SIGNAL(accepted()), SLOT(slotDialogAccepted()) ); connect( ui->folderCombo, SIGNAL(currentIndexChanged(QString)), SLOT(slotEnableOk(QString)) ); slotEnableOk( ui->folderCombo->currentText() ); restoreDialogSize( Amarok::config( "OrganizeCollectionDialog" ) ); QTimer::singleShot( 0, this, SLOT(slotUpdatePreview()) ); }
KSelectTransactionsDlg::KSelectTransactionsDlg(const MyMoneyAccount& _account, QWidget* parent) : KSelectTransactionsDlgDecl(parent), m_account(_account) { // setup descriptive texts setWindowTitle(i18n("Select Transaction")); m_description->setText(i18n("Select a transaction and press the OK button or use Cancel to select none.")); // clear current register contents m_register->clear(); // no selection possible m_register->setSelectionMode(QTableWidget::SingleSelection); // setup header font QFont font = KMyMoneyGlobalSettings::listHeaderFont(); QFontMetrics fm(font); int height = fm.lineSpacing() + 6; m_register->horizontalHeader()->setMinimumHeight(height); m_register->horizontalHeader()->setMaximumHeight(height); m_register->horizontalHeader()->setFont(font); // setup cell font font = KMyMoneyGlobalSettings::listCellFont(); m_register->setFont(font); // ... setup the register columns ... m_register->setupRegister(m_account); // setup buttons m_helpButton->setGuiItem(KStandardGuiItem::help()); buttonOk->setGuiItem(KStandardGuiItem::ok()); buttonCancel->setGuiItem(KStandardGuiItem::cancel()); // default is to need at least one transaction selected buttonOk->setDisabled(true); // catch some events from the register m_register->installEventFilter(this); connect(m_register, SIGNAL(transactionsSelected(KMyMoneyRegister::SelectedTransactions)), this, SLOT(slotEnableOk(KMyMoneyRegister::SelectedTransactions))); connect(m_register, SIGNAL(editTransaction()), this, SLOT(accept())); connect(m_helpButton, SIGNAL(clicked()), this, SLOT(slotHelp())); }