summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/settings/sound/soundsettings.cpp15
-rw-r--r--noncore/settings/sound/soundsettings.h1
-rw-r--r--noncore/settings/sound/soundsettingsbase.cpp6
-rw-r--r--noncore/settings/sound/soundsettingsbase.h2
4 files changed, 22 insertions, 2 deletions
diff --git a/noncore/settings/sound/soundsettings.cpp b/noncore/settings/sound/soundsettings.cpp
index 09d2e92..4bc86fa 100644
--- a/noncore/settings/sound/soundsettings.cpp
+++ b/noncore/settings/sound/soundsettings.cpp
@@ -13,195 +13,208 @@
**
** See http://www.trolltech.com/gpl/ for GPL licensing information.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
// parts copyright 2002 L.J. Potter
#include "soundsettings.h"
#include <qpe/qpeapplication.h>
#include <qpe/config.h>
#include <qpe/qcopenvelope_qws.h>
#include <qpe/storage.h>
#include <qcheckbox.h>
#include <qcombobox.h>
#include <qlabel.h>
#include <sys/utsname.h>
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <sys/stat.h>
SoundSettings::SoundSettings( QWidget* parent, const char* objname, WFlags fl )
: SoundSettingsBase( parent, objname, TRUE, fl )
{
keyReset=FALSE;
noWarning=false;
Config config( "qpe");
config.setGroup( "Volume" );
Config cfg("Vmemo");
connect( qApp,SIGNAL( aboutToQuit()),SLOT( cleanUp()) );
AlertCheckBox->setChecked(cfg.readBoolEntry("Alert"));
cfg.setGroup("Record");
int rate=config.readNumEntry("SampleRate", 22050);
if(rate == 8000)
sampleRate->setCurrentItem(0);
else if(rate == 11025)
sampleRate->setCurrentItem(1);
else if(rate == 22050)
sampleRate->setCurrentItem(2);
else if(rate == 33075)
sampleRate->setCurrentItem(3);
else if(rate==44100)
sampleRate->setCurrentItem(4);
stereoCheckBox->setChecked(cfg.readNumEntry("Stereo", 0));
//TODO hide if zaurus- mono only
#if defined(QT_QWS_IPAQ) || defined(QT_QWS_SL5XXX)
//since ipaq and zaurus have particular
//devices
bool systemZaurus=FALSE;
struct utsname name; /* check for embedix kernel running on the zaurus*/
if (uname(&name) != -1) {// TODO change this here,...
QString release=name.release;
if( release.find("embedix",0,TRUE) != -1) {
qDebug("IS System Zaurus");
systemZaurus=TRUE;
}
}
if(!systemZaurus) {
stereoCheckBox->setChecked(TRUE);
}
stereoCheckBox->setEnabled(FALSE);
sixteenBitCheckBox->setEnabled(FALSE);
#else
#endif
int sRate=cfg.readNumEntry("SizeLimit", 30);
qDebug("%d",sRate);
if(sRate ==30)
timeLimitComboBox->setCurrentItem(0);
else if(sRate==20)
timeLimitComboBox->setCurrentItem(1);
else if(sRate == 15)
timeLimitComboBox->setCurrentItem(2);
else if(sRate == 10)
timeLimitComboBox->setCurrentItem(3);
else if(sRate == 5)
timeLimitComboBox->setCurrentItem(4);
else
timeLimitComboBox->setCurrentItem(5);
sixteenBitCheckBox->setChecked(cfg.readNumEntry("SixteenBit", 1));
cfg.setGroup("Defaults");
keyComboBox->setCurrentItem(cfg.readNumEntry("toggleKey") );
updateStorageCombo();
+
+ Config vmCfg("Vmemo");
+ vmCfg.setGroup("Defaults");
+ adpcmCheckBox->setChecked( vmCfg.readBoolEntry("use_ADPCM", 0));
+
connect( LocationComboBox,SIGNAL(activated(const QString &)), this,
SLOT( setLocation(const QString &)));
connect( keyComboBox,SIGNAL(activated( int)), this,
SLOT( setKeyButton( int)));
connect( timeLimitComboBox,SIGNAL(activated( const QString &)), this,
SLOT( setSizeLimitButton(const QString &)));
connect( restartCheckBox,SIGNAL( toggled( bool)), this,
SLOT( restartOpie( bool)));
+ connect( adpcmCheckBox,SIGNAL( toggled( bool)), this,
+ SLOT( slotAdpcm( bool)));
+
// connect( qApp,SIGNAL( aboutToQuit()),SLOT( cleanUp()) );
}
void SoundSettings::updateStorageCombo() {
Config config( "Vmemo" );
config.setGroup( "System" );
QString loc = config.readEntry("RecLocation","/");
int i=0;
int set=0;
StorageInfo storageInfo;
QString sName, sPath;
QStringList list;
list << "Documents : "+QPEApplication::documentDir();
list << "tmp : /tmp";
const QList<FileSystem> &fs = storageInfo.fileSystems();
QListIterator<FileSystem> it ( fs );
for( ; it.current(); ++it ){
const QString name = (*it)->name();
const QString path = (*it)->path();
qDebug("storage name "+name +" storage path is "+path);
list << name + ": " +path;
if( loc.find( path,0,TRUE) != -1)
set = i;
// if(dit.current()->file().find(path) != -1 ) storage=name;
i++;
}
LocationComboBox->insertStringList(list);
qDebug("set item %d", set);
LocationComboBox->setCurrentItem(set);
}
void SoundSettings::setLocation(const QString & string) {
Config config( "Vmemo" );
config.setGroup( "System" );
config.writeEntry("RecLocation",string);
qDebug("set location "+string);
config.write();
}
void SoundSettings::cleanUp() {
Config cfg("Vmemo");
cfg.writeEntry("Alert",AlertCheckBox->isChecked());
cfg.setGroup("Record");
cfg.writeEntry("SampleRate",sampleRate->currentText());
cfg.writeEntry("Stereo",stereoCheckBox->isChecked());
cfg.writeEntry("SixteenBit",sixteenBitCheckBox->isChecked());
-
if(keyReset && noWarning) {
QCopEnvelope ("QPE/System", "restart()");
}
}
void SoundSettings::setKeyButton( int index) {
Config cfg("Vmemo");
cfg.setGroup("Defaults");
cfg.writeEntry( "toggleKey", index );
keyReset = TRUE;
if( index == 1) {
cfg.writeEntry( "hideIcon", 0 );
keyLabel->setText(tr("Shows icon"));
}
else {
cfg.writeEntry( "hideIcon", 1);
keyLabel->setText(tr("Hides icon"));
}
cfg.write();
}
void SoundSettings::updateLocationCombo() {
}
void SoundSettings::setSizeLimitButton(const QString &index) {
Config cfg("Vmemo");
cfg.setGroup("Record");
if(index.find("Unlimited",0,TRUE) != -1)
cfg.writeEntry("SizeLimit", -1);
else
cfg.writeEntry("SizeLimit", index);
cfg.write();
}
void SoundSettings::restartOpie(bool b) {
noWarning=b;
}
+void SoundSettings::slotAdpcm(bool b) {
+ Config vmCfg("Vmemo");
+ vmCfg.setGroup("Defaults");
+ vmCfg.writeEntry("use_ADPCM", b);
+ vmCfg.write();
+}
diff --git a/noncore/settings/sound/soundsettings.h b/noncore/settings/sound/soundsettings.h
index 0f3605e..71ce6f5 100644
--- a/noncore/settings/sound/soundsettings.h
+++ b/noncore/settings/sound/soundsettings.h
@@ -1,51 +1,52 @@
/**********************************************************************
** Copyright (C) 2000 Trolltech AS. All rights reserved.
**
** This file is part of Qtopia Environment.
**
** This file may be distributed and/or modified under the terms of the
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
** packaging of this file.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
** See http://www.trolltech.com/gpl/ for GPL licensing information.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
#ifndef SOUNDSETTINGS_H
#define SOUNDSETTINGS_H
#include "soundsettingsbase.h"
class SoundSettings : public SoundSettingsBase
{
Q_OBJECT
public:
SoundSettings( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
protected:
bool noWarning;
/* void accept(); */
/* void reject(); */
void updateStorageCombo();
void updateLocationCombo();
private slots:
void setKeyButton( int);
void setSizeLimitButton(const QString &);
void setLocation(const QString &);
void cleanUp();
void restartOpie(bool);
+ void slotAdpcm(bool);
};
#endif // SOUNDSETTINGS_H
diff --git a/noncore/settings/sound/soundsettingsbase.cpp b/noncore/settings/sound/soundsettingsbase.cpp
index af794ba..f283119 100644
--- a/noncore/settings/sound/soundsettingsbase.cpp
+++ b/noncore/settings/sound/soundsettingsbase.cpp
@@ -69,108 +69,112 @@ static const char* const image1_data[] = {
*/
SoundSettingsBase::SoundSettingsBase( QWidget* parent, const char* name, bool modal, WFlags fl )
: QMainWindow( parent, name, fl )
{
QPixmap image0( ( const char** ) image0_data );
QPixmap image1( ( const char** ) image1_data );
if ( !name )
setName( "SoundSettingsBase" );
// resize(255,301);
setCaption( tr( "Vmemo Settings" ) );
SoundSettingsBaseLayout = new QGridLayout( this );
SoundSettingsBaseLayout->setSpacing( 4 );
SoundSettingsBaseLayout->setMargin( 4 );
QHBoxLayout *Layout11;
Layout11 = new QHBoxLayout;
Layout11->setSpacing( 4 );
Layout11->setMargin( 0 );
stereoCheckBox = new QCheckBox( this, "stereoCheckBox" );
stereoCheckBox->setText( tr( "Stereo" ) );
Layout11->addWidget( stereoCheckBox );
sixteenBitCheckBox = new QCheckBox( this, "sixteenBitCheckBox" );
sixteenBitCheckBox->setText( tr( "16 bit" ) );
Layout11->addWidget( sixteenBitCheckBox );
AlertCheckBox = new QCheckBox( this, "AlertCheckBox" );
AlertCheckBox->setText( tr( "Visual Alerts" ) );
Layout11->addWidget( AlertCheckBox );
SoundSettingsBaseLayout->addLayout( Layout11, 0, 0);
sampleRateLabel = new QLabel(this, "sampleRateLabel" );
sampleRateLabel->setText( tr( "Sample Rate:" ) );
SoundSettingsBaseLayout->addMultiCellWidget( sampleRateLabel , 1, 1, 0, 0, 1);
sampleRate = new QComboBox( FALSE,this, "sampleRate" );
sampleRate->insertItem( tr( "8000" ) );
sampleRate->insertItem( tr( "11025" ) );
sampleRate->insertItem( tr( "22050" ) );
sampleRate->insertItem( tr( "33075" ) );
sampleRate->insertItem( tr( "44100" ) );
SoundSettingsBaseLayout->addMultiCellWidget( sampleRate, 2, 2, 0, 0, 1 );
TextLabel1 = new QLabel( this, "TextLabel1" );
TextLabel1->setText( tr( "Recording Directory:" ) );
SoundSettingsBaseLayout->addMultiCellWidget( TextLabel1, 3, 3, 0, 0, 1);
LocationComboBox = new QComboBox( FALSE, this, "LocationComboBox" );
SoundSettingsBaseLayout->addMultiCellWidget( LocationComboBox, 4, 4, 0, 8, 1);
QLabel *TextLabelKey;
TextLabelKey = new QLabel( this, "TextLabelKey" );
TextLabelKey->setText( tr( "Recording Key:" ) );
SoundSettingsBaseLayout->addMultiCellWidget(TextLabelKey , 5, 5, 0, 0, 1);
keyComboBox = new QComboBox( FALSE, this, "keyComboBox" );
keyComboBox->insertItem( tr( "" ) );
keyComboBox->insertItem( tr( "Taskbar Icon" ) );
keyComboBox->insertItem( tr( "Key_Record" ) );
keyComboBox->insertItem( tr( "Key_Space" ) );
keyComboBox->insertItem( tr( "Key_Home" ) );
keyComboBox->insertItem( tr( "Key_Calender" ) );
keyComboBox->insertItem( tr( "Key_Contacts" ) );
keyComboBox->insertItem( tr( "Key_Menu" ) );
keyComboBox->insertItem( tr( "Key_Mail" ) );
SoundSettingsBaseLayout->addMultiCellWidget( keyComboBox , 6, 6, 0, 0 ,1);
keyLabel= new QLabel( this, "keyLabel" );
SoundSettingsBaseLayout->addMultiCellWidget( keyLabel , 6, 6, 0, 2, 3);
QLabel *timeLimitLabel;
timeLimitLabel= new QLabel( this, "timeLimitLabel" );
timeLimitLabel->setText( tr( "Recording Limit in seconds:" ) );
SoundSettingsBaseLayout->addMultiCellWidget( timeLimitLabel , 7, 7, 0, 0, 1);
timeLimitComboBox = new QComboBox( FALSE, this, "timeLimitComboBox" );
timeLimitComboBox->insertItem( tr( "30" ) );
timeLimitComboBox->insertItem( tr( "20" ) );
timeLimitComboBox->insertItem( tr( "15" ) );
timeLimitComboBox->insertItem( tr( "10" ) );
timeLimitComboBox->insertItem( tr( "5" ) );
timeLimitComboBox->insertItem( tr( "Unlimited" ) );
SoundSettingsBaseLayout->addMultiCellWidget(timeLimitComboBox , 8, 8, 0, 0, 1);
restartCheckBox= new QCheckBox( this, "restartCheck" );
restartCheckBox->setText( tr( "Restart Opie if needed" ) );
SoundSettingsBaseLayout->addMultiCellWidget( restartCheckBox , 9, 9, 0, 0, 1);
+ adpcmCheckBox = new QCheckBox( this, "adpcmCheck" );
+ adpcmCheckBox->setText( tr( "Use ADPCM compression" ) );
+
+ SoundSettingsBaseLayout->addMultiCellWidget( adpcmCheckBox , 10, 10, 0, 0, 1);
QSpacerItem* spacer4 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Expanding );
- SoundSettingsBaseLayout->addItem( spacer4, 9, 0 );
+ SoundSettingsBaseLayout->addItem( spacer4, 10, 0 );
}
/*
* Destroys the object and frees any allocated resources
*/
SoundSettingsBase::~SoundSettingsBase()
{
// no need to delete child widgets, Qt does it all for us
}
diff --git a/noncore/settings/sound/soundsettingsbase.h b/noncore/settings/sound/soundsettingsbase.h
index e6bc186..48c31e8 100644
--- a/noncore/settings/sound/soundsettingsbase.h
+++ b/noncore/settings/sound/soundsettingsbase.h
@@ -1,60 +1,62 @@
/****************************************************************************
** Form interface generated from reading ui file 'soundsettingsbase.ui'
**
** Created: Thu May 23 11:23:38 2002
** by: The User Interface Compiler (uic)
**
** WARNING! All changes made in this file will be lost!
****************************************************************************/
#ifndef SOUNDSETTINGSBASE_H
#define SOUNDSETTINGSBASE_H
#include <qvariant.h>
#include <qdialog.h>
#include <qmainwindow.h>
class QVBoxLayout;
class QHBoxLayout;
class QGridLayout;
class QCheckBox;
class QComboBox;
class QGroupBox;
class QLabel;
class QSlider;
class SoundSettingsBase : public QMainWindow
{
Q_OBJECT
public:
SoundSettingsBase( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 );
~SoundSettingsBase();
QLabel* PixmapLabel1_2;
QLabel* TextLabel1_2;
QLabel *keyLabel;
/* QLabel* volLabel; */
/* QLabel* micLabel; */
/* QSlider* volume; */
/* QSlider* mic; */
/* QLabel* PixmapLabel2_2; */
/* QLabel* TextLabel2_2; */
/* QGroupBox* GroupBox1; */
QLabel* sampleRateLabel;
QComboBox* sampleRate;
QCheckBox* stereoCheckBox;
QCheckBox* sixteenBitCheckBox;
QCheckBox* AlertCheckBox;
QLabel* TextLabel1;
QComboBox* LocationComboBox;
QComboBox* keyComboBox;
QComboBox* timeLimitComboBox;
QCheckBox *restartCheckBox;
+ QCheckBox *adpcmCheckBox;
+
bool keyReset;
protected:
QGridLayout* SoundSettingsBaseLayout;
protected slots:
};
#endif // SOUNDSETTINGSBASE_H