summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/sound/opie-sound.control2
-rw-r--r--noncore/settings/sound/soundsettings.cpp44
-rw-r--r--noncore/settings/sound/soundsettings.h20
3 files changed, 54 insertions, 12 deletions
diff --git a/noncore/settings/sound/opie-sound.control b/noncore/settings/sound/opie-sound.control
index a1fe50f..a03c834 100644
--- a/noncore/settings/sound/opie-sound.control
+++ b/noncore/settings/sound/opie-sound.control
@@ -1,10 +1,10 @@
Files: bin/sound apps/Settings/Sound.desktop
Priority: optional
Section: opie/settings
Maintainer: Warwick Allison <warwick@trolltech.com>
Architecture: arm
Arch: iPAQ
-Version: $QPE_VERSION-$SUB_VERSION
+Version: $QPE_VERSION-$SUB_VERSION.1
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 92281f8..1143e82 100644
--- a/noncore/settings/sound/soundsettings.cpp
+++ b/noncore/settings/sound/soundsettings.cpp
@@ -1,64 +1,102 @@
/**********************************************************************
** 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.
**
**********************************************************************/
#include "soundsettings.h"
#include <qpe/config.h>
#include <qpe/qcopenvelope_qws.h>
-
+#include <qapplication.h>
#include <qslider.h>
#include <qcheckbox.h>
+#include <qlineedit.h>
SoundSettings::SoundSettings( QWidget* parent, const char* name, WFlags fl )
: SoundSettingsBase( parent, name, TRUE, fl )
{
Config config( "Sound" );
-
config.setGroup( "System" );
volume->setValue(100-config.readNumEntry("Volume"));
+ mic->setValue(100-config.readNumEntry("Mic"));
touchsound->setChecked(config.readBoolEntry("Touch"));
keysound->setChecked(config.readBoolEntry("Key"));
+ dblClickRuns->setText(config.readEntry("DblClickVolumeRuns",
+ "/opt/QtPalmtop/bin/vmemomanager"));
connect(volume, SIGNAL(valueChanged(int)), this, SLOT(setVolume(int)));
+ connect(mic, SIGNAL(valueChanged(int)), this, SLOT(setMic(int)));
+ connect(qApp, SIGNAL( volumeChanged(bool) ), this, SLOT( volumeChanged(bool) ) );
+ connect(qApp, SIGNAL( micChanged(bool) ), this, SLOT ( micChanged(bool) ) );
}
void SoundSettings::reject()
{
Config config( "Sound" );
config.setGroup( "System" );
setVolume(100-config.readNumEntry("Volume"));
+ setMic(100-config.readNumEntry("Mic"));
QDialog::reject();
}
void SoundSettings::accept()
{
Config config( "Sound" );
config.setGroup( "System" );
config.writeEntry("Volume",100-volume->value());
+ config.writeEntry("Mic",100-mic->value());
config.writeEntry("Touch",touchsound->isChecked());
config.writeEntry("Key",keysound->isChecked());
+ config.writeEntry("DblClickVolumeRuns", dblClickRuns->text());
setVolume(volume->value());
QDialog::accept();
}
void SoundSettings::setVolume(int v)
{
- QCopEnvelope( "QPE/System", "setVolume(int,int)" ) << 0 << 100-v;
+ Config config( "Sound" );
+ config.setGroup( "System" );
+ config.writeEntry("Volume",100-v);
+#if ( defined Q_WS_QWS || defined(_WS_QWS_) ) && !defined(QT_NO_COP)
+ QCopEnvelope( "QPE/System", "volumeChange(bool)" ) << FALSE;
+#endif
+}
+
+void SoundSettings::setMic(int m)
+{
+ Config config( "Sound" );
+ config.setGroup( "System" );
+ config.writeEntry("Mic",100-m);
+#if ( defined Q_WS_QWS || defined(_WS_QWS_) ) && !defined(QT_NO_COP)
+ QCopEnvelope( "QPE/System", "micChange(bool)" ) << FALSE;
+#endif
+}
+
+void SoundSettings::volumeChanged( bool )
+{
+ Config config( "Sound" );
+ config.setGroup( "System" );
+ volume->setValue(100-config.readNumEntry("Volume"));
+}
+
+void SoundSettings::micChanged( bool )
+{
+ Config config( "Sound" );
+ config.setGroup( "System" );
+ mic->setValue(100-config.readNumEntry("Mic"));
}
diff --git a/noncore/settings/sound/soundsettings.h b/noncore/settings/sound/soundsettings.h
index b5c8cee..7679c1e 100644
--- a/noncore/settings/sound/soundsettings.h
+++ b/noncore/settings/sound/soundsettings.h
@@ -1,44 +1,48 @@
/**********************************************************************
** 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
-
+Q_OBJECT
+
public:
- SoundSettings( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
-
+ SoundSettings( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
+
protected:
- void accept();
- void reject();
-
+ void accept();
+ void reject();
+
private slots:
- void setVolume(int);
+ void setVolume(int);
+ void setMic(int);
+
+ void volumeChanged( bool muted );
+ void micChanged( bool muted );
};
#endif // SOUNDSETTINGS_H