-rw-r--r-- | noncore/settings/sound/opie-vmemo-settings.control | 10 | ||||
-rw-r--r-- | noncore/settings/sound/soundsettings.cpp | 113 | ||||
-rw-r--r-- | noncore/settings/sound/soundsettingsbase.cpp | 5 |
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 } |