summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/sound/opie-vmemo-settings.control10
-rw-r--r--noncore/settings/sound/soundsettings.cpp113
-rw-r--r--noncore/settings/sound/soundsettingsbase.cpp5
3 files changed, 73 insertions, 55 deletions
diff --git a/noncore/settings/sound/opie-vmemo-settings.control b/noncore/settings/sound/opie-vmemo-settings.control
new file mode 100644
index 0000000..3d42ca0
--- a/dev/null
+++ b/noncore/settings/sound/opie-vmemo-settings.control
@@ -0,0 +1,10 @@
+Files: bin/sound apps/Settings/Sound.desktop
+Priority: optional
+Section: opie/settings
+Maintainer: L.J. Potter
+Architecture: arm
+Arch: iPAQ
+Version: $QPE_VERSION-$SUB_VERSION.2
+Depends: opie-base ($QPE_VERSION)
+Description: Sound settings dialog
+ For the Opie environment.
diff --git a/noncore/settings/sound/soundsettings.cpp b/noncore/settings/sound/soundsettings.cpp
index cddb478..8b97e4d 100644
--- a/noncore/settings/sound/soundsettings.cpp
+++ b/noncore/settings/sound/soundsettings.cpp
@@ -1,66 +1,67 @@
/**********************************************************************
-** 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.
-**
-**********************************************************************/
+ ** 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.
+ **
+ **********************************************************************/
+// 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 <qapplication.h>
#include <qslider.h>
#include <qcheckbox.h>
#include <qlineedit.h>
#include <qcombobox.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 )
+ : SoundSettingsBase( parent, objname, TRUE, fl )
{
keyReset=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
@@ -88,104 +89,112 @@ SoundSettings::SoundSettings( QWidget* parent, const char* objname, WFlags fl )
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();
connect( LocationComboBox,SIGNAL(activated(const QString &)),this,SLOT( setLocation(const QString &)));
connect( keyComboBox,SIGNAL(activated(const QString &)),this,SLOT( setKeyButton(const QString &)));
connect( timeLimitComboBox,SIGNAL(activated( const QString &)),this,SLOT( setSizeLimitButton(const QString &)));
// 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();
+ 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;
+ 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++;
- }
+ i++;
+ }
- LocationComboBox->insertStringList(list);
- qDebug("set item %d", set);
- LocationComboBox->setCurrentItem(set);
+ 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();
+ 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) QCopEnvelope ("QPE/System", "restart()");
-
+ if(keyReset) {
+ switch ( QMessageBox::warning(this,tr("Restart"),
+ tr("To implement a new key switch\nOpie will have to be restarted./n<B>Restart</B> Opie now?"),
+ tr("Yes"),tr("No"),0,1,1) ) {
+ case 0:
+ QCopEnvelope ("QPE/System", "restart()");
+ break;
+ };
+ }
}
void SoundSettings::setKeyButton(const QString &name) {
Config cfg("Vmemo");
cfg.setGroup("Defaults");
cfg.writeEntry( "toggleKey", keyComboBox->currentItem() );
keyReset = TRUE;
if(keyComboBox->currentItem() == 1)
cfg.writeEntry( "hideIcon", 0 );
else
cfg.writeEntry( "hideIcon", 1);
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);
+ cfg.writeEntry("SizeLimit", -1);
else
- cfg.writeEntry("SizeLimit", index);
+ cfg.writeEntry("SizeLimit", index);
cfg.write();
}
diff --git a/noncore/settings/sound/soundsettingsbase.cpp b/noncore/settings/sound/soundsettingsbase.cpp
index 3c98362..05b4b7e 100644
--- a/noncore/settings/sound/soundsettingsbase.cpp
+++ b/noncore/settings/sound/soundsettingsbase.cpp
@@ -141,36 +141,35 @@ SoundSettingsBase::SoundSettingsBase( QWidget* parent, const char* name, bool m
keyComboBox->insertItem( tr( "Key_Escape" ) );
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);
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);
-
- QSpacerItem* spacer4 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Expanding );
- SoundSettingsBaseLayout->addItem( spacer4, 9, 0 );
+ QSpacerItem* spacer4 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Expanding );
+ SoundSettingsBaseLayout->addItem( spacer4, 9, 0 );
}
/*
* Destroys the object and frees any allocated resources
*/
SoundSettingsBase::~SoundSettingsBase()
{
// no need to delete child widgets, Qt does it all for us
}