/* * * $Id: k3bdatamodewidget.cpp 619556 2007-01-03 17:38:12Z trueg $ * Copyright (C) 2003 Sebastian Trueg <trueg@k3b.org> * * This file is part of the K3b project. * Copyright (C) 1998-2007 Sebastian Trueg <trueg@k3b.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * See the file "COPYING" for the exact licensing terms. */ #include "k3bdatamodewidget.h" #include <k3bglobals.h> #include <klocale.h> #include <tdeconfig.h> #include <tqwhatsthis.h> #include <tqtooltip.h> static const int s_autoIndex = 0; static const int s_mode1Index = 1; static const int s_mode2Index = 2; K3bDataModeWidget::K3bDataModeWidget( TQWidget* parent, const char* name ) : TQComboBox( false, parent, name ) { insertItem( i18n("Auto"), s_autoIndex ); insertItem( i18n("Mode1"), s_mode1Index ); insertItem( i18n("Mode2"), s_mode2Index ); TQToolTip::add( this,i18n("Select the mode for the data-track") ); TQWhatsThis::add( this, i18n("<p><b>Data Mode</b>" "<p>Data tracks may be written in two different modes:</p>" "<p><b>Auto</b><br>" "Let K3b select the best suited data mode.</p>" "<p><b>Mode 1</b><br>" "This is the <em>original</em> writing mode as introduced in the " "<em>Yellow Book</em> standard. It is the preferred mode when writing " "pure data CDs.</p>" "<p><b>Mode 2</b><br>" "To be exact <em>XA Mode 2 Form 1</em>, but since the " "other modes are rarely used it is common to refer to it as <em>Mode 2</em>.</p>" "<p><b>Be aware:</b> Do not mix different modes on one CD. " "Some older drives may have problems reading mode 1 multisession CDs.") ); } K3bDataModeWidget::~K3bDataModeWidget() { } int K3bDataModeWidget::dataMode() const { if( currentItem() == s_autoIndex ) return K3b::DATA_MODE_AUTO; else if( currentItem() == s_mode1Index ) return K3b::MODE1; else return K3b::MODE2; } void K3bDataModeWidget::setDataMode( int mode ) { if( mode == K3b::MODE1 ) setCurrentItem( s_mode1Index ); else if( mode == K3b::MODE2 ) setCurrentItem( s_mode2Index ); else setCurrentItem( s_autoIndex ); } void K3bDataModeWidget::saveConfig( TDEConfigBase* c ) { TQString datamode; if( dataMode() == K3b::MODE1 ) datamode = "mode1"; else if( dataMode() == K3b::MODE2 ) datamode = "mode2"; else datamode = "auto"; c->writeEntry( "data_track_mode", datamode ); } void K3bDataModeWidget::loadConfig( TDEConfigBase* c ) { TQString datamode = c->readEntry( "data_track_mode" ); if( datamode == "mode1" ) setDataMode( K3b::MODE1 ); else if( datamode == "mode2" ) setDataMode( K3b::MODE2 ); else setDataMode( K3b::DATA_MODE_AUTO ); } #include "k3bdatamodewidget.moc"