You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
k3b/src/k3bdatamodewidget.cpp

107 lines
2.9 KiB

/*
*
* $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"