void K3b::MediaCopyDialog::loadSettings( const KConfigGroup& c ) { m_writerSelectionWidget->loadConfig( c ); m_comboSourceDevice->setSelectedDevice( k3bcore->deviceManager()->findDevice( c.readEntry( "source_device" ) ) ); m_writingModeWidget->loadConfig( c ); m_checkSimulate->setChecked( c.readEntry( "simulate", false ) ); m_checkCacheImage->setChecked( !c.readEntry( "on_the_fly", false ) ); m_checkDeleteImages->setChecked( c.readEntry( "delete_images", true ) ); m_checkOnlyCreateImage->setChecked( c.readEntry( "only_create_image", false ) ); m_comboParanoiaMode->setCurrentIndex( c.readEntry( "paranoia_mode", 0 ) ); m_checkVerifyData->setChecked( c.readEntry( "verify data", false ) ); m_spinCopies->setValue( c.readEntry( "copies", 1 ) ); m_tempDirSelectionWidget->readConfig( c ); if( c.readEntry( "copy mode", "normal" ) == "normal" ) m_comboCopyMode->setCurrentIndex( 0 ); else m_comboCopyMode->setCurrentIndex( 1 ); m_checkReadCdText->setChecked( c.readEntry( "copy cdtext", true ) ); m_checkIgnoreDataReadErrors->setChecked( c.readEntry( "ignore data read errors", false ) ); m_checkIgnoreAudioReadErrors->setChecked( c.readEntry( "ignore audio read errors", true ) ); m_checkNoCorrection->setChecked( c.readEntry( "no correction", false ) ); m_spinDataRetries->setValue( c.readEntry( "data retries", 128 ) ); m_spinAudioRetries->setValue( c.readEntry( "audio retries", 5 ) ); slotToggleAll(); }
K3b::ImageWritingDialog::ImageWritingDialog( QWidget* parent ) : K3b::InteractionDialog( parent, i18n("Burn Image"), "iso cue toc", START_BUTTON|CANCEL_BUTTON, START_BUTTON, "image writing" ) // config group { d = new Private(); const KColorScheme colorScheme( QPalette::Normal, KColorScheme::View ); d->infoTextColor = palette().color( QPalette::Disabled, QPalette::Text ); d->negativeTextColor = colorScheme.foreground( KColorScheme::NegativeText ).color(); d->normalTextColor = colorScheme.foreground( KColorScheme::NormalText ).color(); setAcceptDrops( true ); setupGui(); d->md5Job = new K3b::Md5Job( 0, this ); connect( d->md5Job, SIGNAL(finished(bool)), this, SLOT(slotMd5JobFinished(bool)) ); connect( d->md5Job, SIGNAL(percent(int)), this, SLOT(slotMd5JobPercent(int)) ); connect( d->writerSelectionWidget, SIGNAL(writerChanged()), this, SLOT(slotToggleAll()) ); connect( d->writerSelectionWidget, SIGNAL(writingAppChanged(K3b::WritingApp)), this, SLOT(slotToggleAll()) ); connect( d->writerSelectionWidget, SIGNAL(writerChanged(K3b::Device::Device*)), d->writingModeWidget, SLOT(setDevice(K3b::Device::Device*)) ); connect( d->comboImageType, SIGNAL(activated(int)), this, SLOT(slotToggleAll()) ); connect( d->writingModeWidget, SIGNAL(writingModeChanged(WritingMode)), this, SLOT(slotToggleAll()) ); connect( d->editImagePath, SIGNAL(textChanged(QString)), this, SLOT(slotUpdateImage(QString)) ); connect( d->checkDummy, SIGNAL(toggled(bool)), this, SLOT(slotToggleAll()) ); connect( d->checkCacheImage, SIGNAL(toggled(bool)), this, SLOT(slotToggleAll()) ); }
void K3b::ImageWritingDialog::loadSettings( const KConfigGroup& c ) { d->writingModeWidget->loadConfig( c ); d->checkDummy->setChecked( c.readEntry("simulate", false ) ); d->checkNoFix->setChecked( c.readEntry("multisession", false ) ); d->checkCacheImage->setChecked( !c.readEntry("on_the_fly", true ) ); d->dataModeWidget->loadConfig(c); d->spinCopies->setValue( c.readEntry( "copies", 1 ) ); d->checkVerify->setChecked( c.readEntry( "verify_data", false ) ); d->writerSelectionWidget->loadConfig( c ); if( !d->imageForced ) { QString image = c.readPathEntry( "image path", c.readPathEntry( "last written image", QString() ) ); if( QFile::exists( image ) ) d->editImagePath->setUrl( image ); } QString imageType = c.readEntry( "image type", "auto" ); int x = 0; if( imageType == "iso9660" ) x = d->imageTypeSelectionMapRev[IMAGE_ISO]; else if( imageType == "cue-bin" ) x = d->imageTypeSelectionMapRev[IMAGE_CUE_BIN]; else if( imageType == "audio-cue" ) x = d->imageTypeSelectionMapRev[IMAGE_AUDIO_CUE]; else if( imageType == "cdrecord-clone" ) x = d->imageTypeSelectionMapRev[IMAGE_CDRECORD_CLONE]; else if( imageType == "cdrdao-toc" ) x = d->imageTypeSelectionMapRev[IMAGE_CDRDAO_TOC]; d->comboImageType->setCurrentIndex( x ); d->tempDirSelectionWidget->setTempPath( K3b::defaultTempPath() ); slotToggleAll(); }
void EventFilterDialog::initDialog() { setModal(true); setWindowTitle(tr("Event Filter")); QGridLayout *metagrid = new QGridLayout; setLayout(metagrid); QWidget *mainWidget = new QWidget(this); QVBoxLayout *mainWidgetLayout = new QVBoxLayout; metagrid->addWidget(mainWidget, 0, 0); //----------[ Note Filter Widgets ]------------------------- // Frame QGroupBox* noteFrame = new QGroupBox(tr("Note Events")); noteFrame->setContentsMargins(20, 20, 20, 20); QGridLayout* noteFrameLayout = new QGridLayout; noteFrameLayout->setSpacing(6); mainWidgetLayout->addWidget(noteFrame); // Labels QLabel* pitchFromLabel = new QLabel(tr("lowest:"), noteFrame); noteFrameLayout->addWidget(pitchFromLabel, 0, 2); QLabel* pitchToLabel = new QLabel(tr("highest:"), noteFrame); noteFrameLayout->addWidget(pitchToLabel, 0, 4); QLabel* pitchLabel = new QLabel(tr("Pitch:"), noteFrame); noteFrameLayout->addWidget(pitchLabel, 1, 1); QLabel* velocityLabel = new QLabel(tr("Velocity:"), noteFrame); noteFrameLayout->addWidget(velocityLabel, 2, 1); QLabel* durationLabel = new QLabel(tr("Duration:"), noteFrame); noteFrameLayout->addWidget(durationLabel, 3, 1); m_useNotationDuration = new QCheckBox(); noteFrameLayout->addWidget(m_useNotationDuration, 4, 1); m_selectRests = new QCheckBox(); noteFrameLayout->addWidget(m_selectRests, 5, 1); // Include Boxes m_notePitchIncludeComboBox = new QComboBox(noteFrame); m_notePitchIncludeComboBox->setEditable(false); m_notePitchIncludeComboBox->addItem(tr("include")); m_notePitchIncludeComboBox->addItem(tr("exclude")); QSettings settings; settings.beginGroup( EventFilterDialogConfigGroup ); m_notePitchIncludeComboBox->setCurrentIndex( qStrToBool( settings.value("pitchinclude", "0" ) ) ); noteFrameLayout->addWidget(m_notePitchIncludeComboBox, 1, 0); m_noteVelocityIncludeComboBox = new QComboBox(noteFrame); m_noteVelocityIncludeComboBox->setEditable(false); m_noteVelocityIncludeComboBox->addItem(tr("include")); m_noteVelocityIncludeComboBox->addItem(tr("exclude")); m_noteVelocityIncludeComboBox->setCurrentIndex( qStrToBool( settings.value("velocityinclude", "0" ) ) ); noteFrameLayout->addWidget(m_noteVelocityIncludeComboBox, 2, 0); m_noteDurationIncludeComboBox = new QComboBox(noteFrame); m_noteDurationIncludeComboBox->setEditable(false); m_noteDurationIncludeComboBox->addItem(tr("include")); m_noteDurationIncludeComboBox->addItem(tr("exclude")); m_noteDurationIncludeComboBox->setCurrentIndex( qStrToBool( settings.value("durationinclude", "0" ) ) ); noteFrameLayout->addWidget(m_noteDurationIncludeComboBox, 3, 0); QLabel* durationCheckBoxLabel = new QLabel(tr("Use notation duration")); noteFrameLayout->addWidget(durationCheckBoxLabel, 4, 2); m_useNotationDuration->setChecked(settings.value("usenotationduration", "0").toBool()); QLabel* useRestsLabel = new QLabel(tr("Select rests")); noteFrameLayout->addWidget(useRestsLabel, 5, 2); m_selectRests->setChecked(settings.value("selectrests", "0").toBool()); // Pitch From m_pitchFromSpinBox = new QSpinBox(noteFrame); m_pitchFromSpinBox->setMaximum(127); m_pitchFromSpinBox->setValue( settings.value("pitchfrom", 0).toUInt() ); noteFrameLayout->addWidget(m_pitchFromSpinBox, 1, 2); connect(m_pitchFromSpinBox, SIGNAL(valueChanged(int)), SLOT(slotPitchFromChanged(int))); m_pitchFromChooserButton = new QPushButton(tr("edit"), noteFrame); m_pitchFromChooserButton->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed, QSizePolicy::PushButton)); m_pitchFromChooserButton->setToolTip(tr("choose a pitch using a staff")); noteFrameLayout->addWidget(m_pitchFromChooserButton, 1, 3); connect(m_pitchFromChooserButton, SIGNAL(clicked()), SLOT(slotPitchFromChooser())); // Pitch To m_pitchToSpinBox = new QSpinBox(noteFrame); m_pitchToSpinBox->setMaximum(127); m_pitchToSpinBox->setValue( settings.value("pitchto", 127).toUInt() ); noteFrameLayout->addWidget(m_pitchToSpinBox, 1, 4); connect(m_pitchToSpinBox, SIGNAL(valueChanged(int)), SLOT(slotPitchToChanged(int))); m_pitchToChooserButton = new QPushButton(tr("edit"), noteFrame); m_pitchToChooserButton->setToolTip(tr("choose a pitch using a staff")); noteFrameLayout->addWidget(m_pitchToChooserButton, 1, 5); connect(m_pitchToChooserButton, SIGNAL(clicked()), SLOT(slotPitchToChooser())); // Velocity From/To m_velocityFromSpinBox = new QSpinBox(noteFrame); m_velocityFromSpinBox->setMaximum(127); m_velocityFromSpinBox->setValue( settings.value("velocityfrom", 0).toUInt() ); noteFrameLayout->addWidget(m_velocityFromSpinBox, 2, 2); connect(m_velocityFromSpinBox, SIGNAL(valueChanged(int)), SLOT(slotVelocityFromChanged(int))); m_velocityToSpinBox = new QSpinBox(noteFrame); m_velocityToSpinBox->setMaximum(127); m_velocityToSpinBox->setValue( settings.value("velocityto", 127).toUInt() ); noteFrameLayout->addWidget( m_velocityToSpinBox, 2, 4 ); connect(m_velocityToSpinBox, SIGNAL(valueChanged(int)), SLOT(slotVelocityToChanged(int))); // Duration From/To m_noteDurationFromComboBox = new QComboBox(noteFrame); m_noteDurationFromComboBox->setEditable(false); m_noteDurationFromComboBox->addItem(tr("longest")); noteFrameLayout->addWidget(m_noteDurationFromComboBox, 3, 2); connect(m_noteDurationFromComboBox, SIGNAL(activated(int)), SLOT(slotDurationFromChanged(int))); m_noteDurationToComboBox = new QComboBox(noteFrame); m_noteDurationToComboBox->setEditable(false); m_noteDurationToComboBox->addItem(tr("longest")); noteFrameLayout->addWidget(m_noteDurationToComboBox, 3, 4); connect(m_noteDurationToComboBox, SIGNAL(activated(int)), SLOT(slotDurationToChanged(int))); populateDurationCombos(); //---------[ Buttons ]-------------------------------------- QFrame* privateLayoutWidget = new QFrame(mainWidget); privateLayoutWidget->setContentsMargins(20, 20, 20, 20); QGridLayout* buttonLayout = new QGridLayout; buttonLayout->setSpacing(6); mainWidgetLayout->addWidget(privateLayoutWidget); m_buttonAll = new QPushButton(tr("Include all"), privateLayoutWidget); m_buttonAll->setAutoDefault(true); m_buttonAll->setToolTip(tr("Include entire range of values")); buttonLayout->addWidget( m_buttonAll, 0, 0 ); m_buttonNone = new QPushButton(tr("Exclude all"), privateLayoutWidget); m_buttonNone->setAutoDefault(true); m_buttonNone->setToolTip(tr("Exclude entire range of values")); buttonLayout->addWidget( m_buttonNone, 0, 1 ); connect(m_buttonAll, SIGNAL(clicked()), this, SLOT(slotToggleAll())); connect(m_buttonNone, SIGNAL(clicked()), this, SLOT(slotToggleNone())); settings.endGroup(); privateLayoutWidget->setLayout(buttonLayout); noteFrame->setLayout(noteFrameLayout); mainWidget->setLayout(mainWidgetLayout); QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); metagrid->addWidget(buttonBox, 1, 0); metagrid->setRowStretch(0, 10); connect(buttonBox, SIGNAL(accepted()), this, SLOT(accept())); connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject())); }
void K3b::ImageWritingDialog::slotUpdateImage( const QString& ) { QString path = d->imagePath(); // check the image types d->haveMd5Sum = false; d->md5Job->cancel(); d->infoView->clear(); //d->infoView->header()->resizeSection( 0, 20 ); d->md5SumItem = 0; d->foundImageType = IMAGE_UNKNOWN; d->tocFile.truncate(0); d->imageFile.truncate(0); QFileInfo info( path ); if( info.isFile() ) { // ------------------------------------------------ // Test for iso9660 image // ------------------------------------------------ K3b::Iso9660 isoF( path ); if( isoF.open() ) { #ifdef K3B_DEBUG isoF.debug(); #endif d->createIso9660InfoItems( &isoF ); isoF.close(); calculateMd5Sum( path ); d->foundImageType = IMAGE_ISO; d->imageFile = path; } if( d->foundImageType == IMAGE_UNKNOWN ) { // check for cdrecord clone image // try both path and path.toc as tocfiles K3b::CloneTocReader cr; if( path.right(4) == ".toc" ) { cr.openFile( path ); if( cr.isValid() ) { d->tocFile = path; d->imageFile = cr.imageFilename(); } } if( d->imageFile.isEmpty() ) { cr.openFile( path + ".toc" ); if( cr.isValid() ) { d->tocFile = cr.filename(); d->imageFile = cr.imageFilename(); } } if( !d->imageFile.isEmpty() ) { // we have a cdrecord clone image d->createCdrecordCloneItems( d->tocFile, d->imageFile ); calculateMd5Sum( d->imageFile ); d->foundImageType = IMAGE_CDRECORD_CLONE; } } if( d->foundImageType == IMAGE_UNKNOWN ) { // check for cue/bin stuff // once again we try both path and path.cue K3b::CueFileParser cp; if( path.right(4).toLower() == ".cue" ) cp.openFile( path ); else if( path.right(4).toLower() == ".bin" ) cp.openFile( path.left( path.length()-3) + "cue" ); if( cp.isValid() ) { d->tocFile = cp.filename(); d->imageFile = cp.imageFilename(); } if( d->imageFile.isEmpty() ) { cp.openFile( path + ".cue" ); if( cp.isValid() ) { d->tocFile = cp.filename(); d->imageFile = cp.imageFilename(); } } if( !d->imageFile.isEmpty() ) { // we have a cue file if( cp.toc().contentType() == K3b::Device::AUDIO ) { d->foundImageType = IMAGE_AUDIO_CUE; d->createAudioCueItems( cp ); } else { d->foundImageType = IMAGE_CUE_BIN; // we cannot be sure if writing will work... :( d->createCueBinItems( d->tocFile, d->imageFile ); calculateMd5Sum( d->imageFile ); } } } if( d->foundImageType == IMAGE_UNKNOWN ) { // TODO: check for cdrdao tocfile } if( d->foundImageType == IMAGE_UNKNOWN ) { QTreeWidgetItem* item = new QTreeWidgetItem( d->infoView ); if ( !info.isReadable() ) { item->setText( 0, i18n("Unable to read image file") ); } else { item->setText( 0, i18n("Seems not to be a usable image") ); } item->setForeground( 0, d->negativeTextColor ); item->setIcon( 0, KIcon( "dialog-error") ); } else { // remember as recent image int i = 0; while ( i < d->comboRecentImages->count() && d->comboRecentImages->itemText(i) != path ) ++i; if ( i == d->comboRecentImages->count() ) d->comboRecentImages->insertItem( 0, path ); } } else { QTreeWidgetItem* item = new QTreeWidgetItem( d->infoView ); item->setText( 0, i18n("File not found") ); item->setForeground( 0, d->negativeTextColor ); item->setIcon( 0, KIcon( "dialog-error") ); } slotToggleAll(); }
K3b::MediaCopyDialog::MediaCopyDialog( QWidget *parent ) : K3b::InteractionDialog( parent, i18n("Disk Copy"), i18n("and CD Cloning"), START_BUTTON|CANCEL_BUTTON, START_BUTTON, "Disk Copy" ) { QWidget* main = mainWidget(); QGridLayout* mainGrid = new QGridLayout( main ); mainGrid->setContentsMargins( 0, 0, 0, 0 ); QGroupBox* groupSource = new QGroupBox( i18n("Source Medium"), main ); m_comboSourceDevice = new K3b::MediaSelectionComboBox( groupSource ); m_comboSourceDevice->setWantedMediumType( K3b::Device::MEDIA_ALL ); m_comboSourceDevice->setWantedMediumState( K3b::Device::STATE_COMPLETE|K3b::Device::STATE_INCOMPLETE ); QHBoxLayout* groupSourceLayout = new QHBoxLayout( groupSource ); groupSourceLayout->addWidget( m_comboSourceDevice ); m_writerSelectionWidget = new K3b::WriterSelectionWidget( main ); m_writerSelectionWidget->setWantedMediumState( K3b::Device::STATE_EMPTY ); // tab widget -------------------- QTabWidget* tabWidget = new QTabWidget( main ); // // option tab -------------------- // QWidget* optionTab = new QWidget( tabWidget ); QGridLayout* optionTabGrid = new QGridLayout( optionTab ); QGroupBox* groupCopyMode = new QGroupBox( i18n("Copy Mode"), optionTab ); m_comboCopyMode = new QComboBox( groupCopyMode ); m_comboCopyMode->addItem( i18n("Normal Copy") ); m_comboCopyMode->addItem( i18n("Clone Copy") ); QHBoxLayout* groupCopyModeLayout = new QHBoxLayout( groupCopyMode ); groupCopyModeLayout->addWidget( m_comboCopyMode ); QGroupBox* groupWritingMode = new QGroupBox( i18n("Writing Mode"), optionTab ); m_writingModeWidget = new K3b::WritingModeWidget( groupWritingMode ); QHBoxLayout* groupWritingModeLayout = new QHBoxLayout( groupWritingMode ); groupWritingModeLayout->addWidget( m_writingModeWidget ); QGroupBox* groupCopies = new QGroupBox( i18n("Copies"), optionTab ); QLabel* pixLabel = new QLabel( groupCopies ); pixLabel->setPixmap( SmallIcon( "tools-media-optical-copy", KIconLoader::SizeMedium ) ); pixLabel->setScaledContents( false ); m_spinCopies = new QSpinBox( groupCopies ); m_spinCopies->setRange( 1, 999 ); QHBoxLayout* groupCopiesLayout = new QHBoxLayout( groupCopies ); groupCopiesLayout->addWidget( pixLabel ); groupCopiesLayout->addWidget( m_spinCopies ); QGroupBox* groupOptions = new QGroupBox( i18n("Settings"), optionTab ); m_checkSimulate = K3b::StdGuiItems::simulateCheckbox( groupOptions ); m_checkCacheImage = K3b::StdGuiItems::createCacheImageCheckbox( groupOptions ); m_checkOnlyCreateImage = K3b::StdGuiItems::onlyCreateImagesCheckbox( groupOptions ); m_checkDeleteImages = K3b::StdGuiItems::removeImagesCheckbox( groupOptions ); m_checkVerifyData = K3b::StdGuiItems::verifyCheckBox( groupOptions ); QVBoxLayout* groupOptionsLayout = new QVBoxLayout( groupOptions ); groupOptionsLayout->addWidget( m_checkSimulate ); groupOptionsLayout->addWidget( m_checkCacheImage ); groupOptionsLayout->addWidget( m_checkOnlyCreateImage ); groupOptionsLayout->addWidget( m_checkDeleteImages ); groupOptionsLayout->addWidget( m_checkVerifyData ); groupOptionsLayout->addStretch( 1 ); optionTabGrid->addWidget( groupCopyMode, 0, 0 ); optionTabGrid->addWidget( groupWritingMode, 1, 0 ); optionTabGrid->addWidget( groupOptions, 0, 1, 3, 1 ); optionTabGrid->addWidget( groupCopies, 2, 0 ); optionTabGrid->setRowStretch( 2, 1 ); optionTabGrid->setColumnStretch( 1, 1 ); tabWidget->addTab( optionTab, i18n("&Options") ); // // image tab ------------------ // QWidget* imageTab = new QWidget( tabWidget ); QGridLayout* imageTabGrid = new QGridLayout( imageTab ); m_tempDirSelectionWidget = new K3b::TempDirSelectionWidget( imageTab ); imageTabGrid->addWidget( m_tempDirSelectionWidget, 0, 0 ); tabWidget->addTab( imageTab, i18n("&Image") ); // // advanced tab ------------------ // QWidget* advancedTab = new QWidget( tabWidget ); QGridLayout* advancedTabGrid = new QGridLayout( advancedTab ); m_groupAdvancedDataOptions = new QGroupBox( i18n("Data"), advancedTab ); QGridLayout* groupAdvancedDataOptionsLayout = new QGridLayout( m_groupAdvancedDataOptions ); m_spinDataRetries = new QSpinBox( m_groupAdvancedDataOptions ); m_spinDataRetries->setRange( 1, 128 ); m_checkIgnoreDataReadErrors = K3b::StdGuiItems::ignoreAudioReadErrorsCheckBox( m_groupAdvancedDataOptions ); m_checkNoCorrection = new QCheckBox( i18n("No error correction"), m_groupAdvancedDataOptions ); groupAdvancedDataOptionsLayout->addWidget( new QLabel( i18n("Read retries:"), m_groupAdvancedDataOptions ), 0, 0 ); groupAdvancedDataOptionsLayout->addWidget( m_spinDataRetries, 0, 1 ); groupAdvancedDataOptionsLayout->addWidget( m_checkIgnoreDataReadErrors, 1, 0, 1, 2 ); groupAdvancedDataOptionsLayout->addWidget( m_checkNoCorrection, 2, 0, 1, 2 ); groupAdvancedDataOptionsLayout->setRowStretch( 4, 1 ); m_groupAdvancedAudioOptions = new QGroupBox( i18n("Audio"), advancedTab ); QGridLayout* groupAdvancedAudioOptionsLayout = new QGridLayout( m_groupAdvancedAudioOptions ); m_spinAudioRetries = new QSpinBox( m_groupAdvancedAudioOptions ); m_spinAudioRetries->setRange( 1, 128 ); m_checkIgnoreAudioReadErrors = K3b::StdGuiItems::ignoreAudioReadErrorsCheckBox( m_groupAdvancedAudioOptions ); m_comboParanoiaMode = K3b::StdGuiItems::paranoiaModeComboBox( m_groupAdvancedAudioOptions ); m_checkReadCdText = new QCheckBox( i18n("Copy CD-Text"), m_groupAdvancedAudioOptions ); groupAdvancedAudioOptionsLayout->addWidget( new QLabel( i18n("Read retries:"), m_groupAdvancedAudioOptions ), 0, 0 ); groupAdvancedAudioOptionsLayout->addWidget( m_spinAudioRetries, 0, 1 ); groupAdvancedAudioOptionsLayout->addWidget( m_checkIgnoreAudioReadErrors, 1, 0, 1, 2 ); groupAdvancedAudioOptionsLayout->addWidget( new QLabel( i18n("Paranoia mode:"), m_groupAdvancedAudioOptions ), 2, 0 ); groupAdvancedAudioOptionsLayout->addWidget( m_comboParanoiaMode, 2, 1 ); groupAdvancedAudioOptionsLayout->addWidget( m_checkReadCdText, 3, 0, 1, 2 ); groupAdvancedAudioOptionsLayout->setRowStretch( 4, 1 ); advancedTabGrid->addWidget( m_groupAdvancedDataOptions, 0, 1 ); advancedTabGrid->addWidget( m_groupAdvancedAudioOptions, 0, 0 ); tabWidget->addTab( advancedTab, i18n("&Advanced") ); mainGrid->addWidget( groupSource, 0, 0 ); mainGrid->addWidget( m_writerSelectionWidget, 1, 0 ); mainGrid->addWidget( tabWidget, 2, 0 ); mainGrid->setRowStretch( 2, 1 ); connect( m_comboSourceDevice, SIGNAL(selectionChanged(K3b::Device::Device*)), this, SLOT(slotToggleAll()) ); connect( m_comboSourceDevice, SIGNAL(selectionChanged(K3b::Device::Device*)), this, SLOT(slotToggleAll()) ); connect( m_writerSelectionWidget, SIGNAL(writerChanged()), this, SLOT(slotToggleAll()) ); connect( m_writerSelectionWidget, SIGNAL(writerChanged(K3b::Device::Device*)), m_writingModeWidget, SLOT(setDevice(K3b::Device::Device*)) ); connect( m_writingModeWidget, SIGNAL(writingModeChanged(WritingMode)), this, SLOT(slotToggleAll()) ); connect( m_checkCacheImage, SIGNAL(toggled(bool)), this, SLOT(slotToggleAll()) ); connect( m_checkSimulate, SIGNAL(toggled(bool)), this, SLOT(slotToggleAll()) ); connect( m_checkOnlyCreateImage, SIGNAL(toggled(bool)), this, SLOT(slotToggleAll()) ); connect( m_comboCopyMode, SIGNAL(activated(int)), this, SLOT(slotToggleAll()) ); connect( m_checkReadCdText, SIGNAL(toggled(bool)), this, SLOT(slotToggleAll()) ); m_checkIgnoreDataReadErrors->setToolTip( i18n("Skip unreadable data sectors") ); m_checkNoCorrection->setToolTip( i18n("Disable the source drive's error correction") ); m_checkReadCdText->setToolTip( i18n("Copy CD-Text from the source CD if available.") ); m_checkNoCorrection->setWhatsThis( i18n("<p>If this option is checked K3b will disable the " "source drive's ECC/EDC error correction. This way sectors " "that are unreadable by intention can be read." "<p>This may be useful for cloning CDs with copy " "protection based on corrupted sectors.") ); m_checkReadCdText->setWhatsThis( i18n("<p>If this option is checked K3b will search for CD-Text on the source CD. " "Disable it if your CD drive has problems with reading CD-Text or you want " "to stick to CDDB info.") ); m_checkIgnoreDataReadErrors->setWhatsThis( i18n("<p>If this option is checked and K3b is not able to read a data sector from the " "source medium it will be replaced with zeros on the resulting copy.") ); m_comboCopyMode->setWhatsThis( "<p><b>" + i18n("Normal Copy") + "</b>" + i18n("<p>This is the normal copy mode for DVD, Blu-ray, and most CD media types. " "It allows copying Audio CDs, multi and single session Data Media, and " "Enhanced Audio CDs (an Audio CD containing an additional data session)." "<p>For Video CDs please use the CD Cloning mode.") + "<p><b>" + i18n("Clone Copy") + "</b>" + i18n("<p>In CD Cloning mode K3b performs a raw copy of the CD. That means it does " "not care about the content but simply copies the CD bit by bit. It may be used " "to copy Video CDs or CDs which contain erroneous sectors." "<p><b>Caution:</b> Only single session CDs can be cloned.") ); }
void K3b::MediaCopyDialog::init() { slotToggleAll(); }
void K3b::InteractionDialog::slotInternalInit() { init(); slotToggleAll(); }
K3b::MixedBurnDialog::MixedBurnDialog( K3b::MixedDoc* doc, QWidget *parent ) : K3b::ProjectBurnDialog( doc, parent ), m_doc(doc) { prepareGui(); setTitle( i18n("Mixed Project"), i18np("1 track (%2 minutes)", "%1 tracks (%2 minutes)", m_doc->numOfTracks(),m_doc->length().toString()) ); m_checkOnlyCreateImage->hide(); // create cd-text page m_cdtextWidget = new K3b::AudioCdTextWidget( this ); addPage( m_cdtextWidget, i18n("CD-Text") ); // create image settings tab m_imageSettingsWidget = new K3b::DataImageSettingsWidget( this ); addPage( m_imageSettingsWidget, i18n("Filesystem") ); setupSettingsPage(); QSpacerItem* spacer = new QSpacerItem( 20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding ); m_optionGroupLayout->addItem( spacer ); connect( m_checkNormalize, SIGNAL(toggled(bool)), this, SLOT(slotNormalizeToggled(bool)) ); connect( m_checkCacheImage, SIGNAL(toggled(bool)), this, SLOT(slotCacheImageToggled(bool)) ); connect( m_writerSelectionWidget, SIGNAL(writingAppChanged(K3b::WritingApp)), this, SLOT(slotToggleAll()) ); connect( m_writingModeWidget, SIGNAL(writingModeChanged(WritingMode)), this, SLOT(slotToggleAll()) ); }