summaryrefslogtreecommitdiff
path: root/library
Side-by-side diff
Diffstat (limited to 'library') (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.cpp155
1 files changed, 108 insertions, 47 deletions
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index c41dd06..852671a 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -96,5 +96,5 @@ public:
rightpressed( FALSE ), kbregrab( FALSE ), notbusysent( FALSE ), preloaded( FALSE ),
forceshow( FALSE ), nomaximize( FALSE ), keep_running( TRUE ), qpe_main_widget( 0 )
-
+
{
qcopq.setAutoDelete( TRUE );
@@ -128,5 +128,5 @@ public:
QWidget* qpe_main_widget;
QList<QCopRec> qcopq;
-
+
void enqueueQCop( const QCString &ch, const QCString &msg,
const QByteArray &data )
@@ -179,5 +179,5 @@ public:
}
}
- */
+ */
return FALSE;
}
@@ -331,9 +331,51 @@ static void setMic( int t = 0, int percent = -1 )
+static void setBass( int t = 0, int percent = -1 )
+{
+ switch ( t ) {
+ case 0: {
+ Config cfg( "qpe" );
+ cfg.setGroup( "Volume" );
+ if ( percent < 0 )
+ percent = cfg.readNumEntry( "BassPercent", 50 );
+
+ int fd = 0;
+ int bass = percent;
+ if ( ( fd = open( "/dev/mixer", O_RDWR ) ) >= 0 ) {
+ ioctl( fd, MIXER_WRITE( SOUND_MIXER_BASS ), &bass );
+ ::close( fd );
+ }
+ }
+ break;
+ }
+}
+
+
+static void setTreble( int t = 0, int percent = -1 )
+{
+ switch ( t ) {
+ case 0: {
+ Config cfg( "qpe" );
+ cfg.setGroup( "Volume" );
+ if ( percent < 0 )
+ percent = cfg.readNumEntry( "TreblePercent", 50 );
+
+ int fd = 0;
+ int treble = percent;
+ if ( ( fd = open( "/dev/mixer", O_RDWR ) ) >= 0 ) {
+ ioctl( fd, MIXER_WRITE( SOUND_MIXER_TREBLE ), &treble );
+ ::close( fd );
+ }
+ }
+ break;
+ }
+}
+
+
/*!
\class QPEApplication qpeapplication.h
\brief The QPEApplication class implements various system services
that are available to all Qtopia applications.
-
+
Simply by using QPEApplication instead of QApplication, a standard Qt
application becomes a Qtopia application. It automatically follows
@@ -341,5 +383,5 @@ static void setMic( int t = 0, int percent = -1 )
case of \link docwidget.html document-oriented\endlink applications,
changes the currently displayed document in response to the environment.
-
+
To create a \link docwidget.html document-oriented\endlink
application use showMainDocumentWidget(); to create a
@@ -348,5 +390,5 @@ static void setMic( int t = 0, int percent = -1 )
continue running after it's processed the last \link qcop.html
QCop\endlink message. This can be changed using setKeepRunning().
-
+
A variety of signals are emitted when certain events occur, for
example, timeChanged(), clockChanged(), weekChanged(),
@@ -359,5 +401,5 @@ static void setMic( int t = 0, int percent = -1 )
files that are involved in synching. Most of these signals will initially
be received and unfiltered through the appMessage() signal.
-
+
This class also provides a set of useful static functions. The
qpeDir() and documentDir() functions return the respective paths.
@@ -368,5 +410,5 @@ static void setMic( int t = 0, int percent = -1 )
stylusOperation(). There are also setInputMethodHint() and
inputMethodHint() functions.
-
+
\ingroup qtopiaemb
*/
@@ -374,5 +416,5 @@ static void setMic( int t = 0, int percent = -1 )
/*!
\fn void QPEApplication::clientMoused()
-
+
\internal
*/
@@ -386,5 +428,5 @@ static void setMic( int t = 0, int percent = -1 )
/*!
\fn void QPEApplication::clockChanged( bool ampm );
-
+
This signal is emitted when the user changes the clock's style. If
\a ampm is TRUE, the user wants a 12-hour AM/PM clock, otherwise,
@@ -394,5 +436,5 @@ static void setMic( int t = 0, int percent = -1 )
/*!
\fn void QPEApplication::volumeChanged( bool muted )
-
+
This signal is emitted whenever the mute state is changed. If \a
muted is TRUE, then sound output has been muted.
@@ -401,5 +443,5 @@ static void setMic( int t = 0, int percent = -1 )
/*!
\fn void QPEApplication::weekChanged( bool startOnMonday )
-
+
This signal is emitted if the week start day is changed. If \a
startOnMonday is TRUE then the first day of the week is Monday; if
@@ -410,5 +452,5 @@ static void setMic( int t = 0, int percent = -1 )
/*!
\fn void QPEApplication::dateFormatChanged()
-
+
This signal is emitted whenever the date format is changed.
*/
@@ -416,5 +458,5 @@ static void setMic( int t = 0, int percent = -1 )
/*!
\fn void QPEApplication::flush()
-
+
###
*/
@@ -422,17 +464,17 @@ static void setMic( int t = 0, int percent = -1 )
/*!
\fn void QPEApplication::reload()
-
+
*/
/*!
\fn void QPEApplication::appMessage( const QCString& msg, const QByteArray& data )
-
+
This signal is emitted when a message is received on this
application's QPE/Application/<i>appname</i> \link qcop.html
QCop\endlink channel.
-
+
The slot to which you connect this signal uses \a msg and \a data
in the following way:
-
+
\code
void MyWidget::receive( const QCString& msg, const QByteArray& data )
@@ -448,5 +490,5 @@ static void setMic( int t = 0, int percent = -1 )
}
\endcode
-
+
\sa qcop.html
Note that messages received here may be processed by qpe application
@@ -457,5 +499,5 @@ static void setMic( int t = 0, int percent = -1 )
Constructs a QPEApplication just as you would construct
a QApplication, passing \a argc, \a argv, and \a t.
-
+
For applications, \a t should be the default, GuiClient. Only
the Qtopia server passes GuiServer.
@@ -610,6 +652,6 @@ static void createInputMethodDict()
Returns the currently set hint to the system as to whether
widget \a w has any use for text input methods.
-
-
+
+
\sa setInputMethodHint() InputMethodHint
*/
@@ -623,5 +665,5 @@ QPEApplication::InputMethodHint QPEApplication::inputMethodHint( QWidget * w )
/*!
\enum QPEApplication::InputMethodHint
-
+
\value Normal the application sometimes needs text input (the default).
\value AlwaysOff the application never needs text input.
@@ -632,5 +674,5 @@ QPEApplication::InputMethodHint QPEApplication::inputMethodHint( QWidget * w )
Hints to the system that widget \a w has use for text input methods
as specified by \a mode.
-
+
\sa inputMethodHint() InputMethodHint
*/
@@ -909,10 +951,10 @@ void QPEApplication::applyStyle()
Config config( "qpe" );
config.setGroup( "Appearance" );
-
+
// don't block ourselves ...
Opie::force_appearance = 0;
-
+
static QString appname = Opie::binaryName ( );
-
+
QStringList ex = config. readListEntry ( "NoStyle", ';' );
int nostyle = 0;
@@ -923,12 +965,12 @@ void QPEApplication::applyStyle()
}
}
-
+
// Widget style
QString style = config.readEntry( "Style", "Light" );
-
+
// don't set a custom style
if ( nostyle & Opie::Force_Style )
style = "Light";
-
+
internalSetStyle ( style );
@@ -955,11 +997,11 @@ void QPEApplication::applyStyle()
// Window Decoration
QString dec = config.readEntry( "Decoration", "Qtopia" );
-
+
// don't set a custom deco
if ( nostyle & Opie::Force_Decoration )
dec = "";
-
+
//qDebug ( "Setting Deco: %s -- old %s (%d)", dec.latin1(), d-> decorationName.latin1(), nostyle);
-
+
if ( dec != d->decorationName ) {
qwsSetDecoration( new QPEDecoration( dec ) );
@@ -971,12 +1013,12 @@ void QPEApplication::applyStyle()
int fs = config.readNumEntry( "FontSize", font().pointSize() );
- // don't set a custom font
+ // don't set a custom font
if ( nostyle & Opie::Force_Font ) {
ff = "Helvetica";
fs = 10;
}
-
+
setFont ( QFont ( ff, fs ), true );
-
+
// revert to global blocking policy ...
Opie::force_appearance = config. readBoolEntry ( "ForceStyle", false ) ? Opie::Force_All : Opie::Force_None;
@@ -1117,4 +1159,23 @@ void QPEApplication::systemMessage( const QCString& msg, const QByteArray& data
emit micChanged( micMuted );
}
+ else if ( msg == "setBass(int,int)" ) { // Added: 2002-12-13 by Maximilian Reiss <harlekin@handhelds.org>
+ int t, v;
+ stream >> t >> v;
+ setBass( t, v );
+ }
+ else if ( msg == "bassChange(bool)" ) { // Added: 2002-12-13 by Maximilian Reiss <harlekin@handhelds.org>
+ setBass();
+ }
+ else if ( msg == "setTreble(int,int)" ) { // Added: 2002-12-13 by Maximilian Reiss <harlekin@handhelds.org>
+ int t, v;
+ stream >> t >> v;
+ setTreble( t, v );
+ }
+ else if ( msg == "trebleChange(bool)" ) { // Added: 2002-12-13 by Maximilian Reiss <harlekin@handhelds.org>
+ setTreble();
+ }
+
+
+
#endif
}
@@ -1230,5 +1291,5 @@ void QPEApplication::pidMessage( const QCString& msg, const QByteArray& data)
Sets widget \a mw as the mainWidget() and shows it. For small windows,
consider passing TRUE for \a nomaximize rather than the default FALSE.
-
+
\sa showMainDocumentWidget()
*/
@@ -1241,10 +1302,10 @@ void QPEApplication::showMainWidget( QWidget* mw, bool nomaximize )
Sets widget \a mw as the mainWidget() and shows it. For small windows,
consider passing TRUE for \a nomaximize rather than the default FALSE.
-
+
This calls designates the application as
a \link docwidget.html document-oriented\endlink application.
-
+
The \a mw widget \e must have this slot: setDocument(const QString&).
-
+
\sa showMainWidget()
*/
@@ -1265,5 +1326,5 @@ void QPEApplication::showMainDocumentWidget( QWidget* mw, bool nomaximize )
after processing its outstanding \link qcop.html QCop\endlink
messages the application will start 'properly' and show itself.
-
+
\sa keepRunning()
*/
@@ -1279,5 +1340,5 @@ void QPEApplication::setKeepRunning()
Returns TRUE if the application will quit after processing the
current list of qcop messages; otherwise returns FALSE.
-
+
\sa setKeepRunning()
*/
@@ -1420,5 +1481,5 @@ static void createDict()
/*!
Returns the current StylusMode for widget \a w.
-
+
\sa setStylusOperation() StylusMode
*/
@@ -1432,10 +1493,10 @@ QPEApplication::StylusMode QPEApplication::stylusOperation( QWidget* w )
/*!
\enum QPEApplication::StylusMode
-
+
\value LeftOnly the stylus only generates LeftButton
events (the default).
\value RightOnHold the stylus generates RightButton events
if the user uses the press-and-hold gesture.
-
+
\sa setStylusOperation() stylusOperation()
*/
@@ -1444,5 +1505,5 @@ QPEApplication::StylusMode QPEApplication::stylusOperation( QWidget* w )
Causes widget \a w to receive mouse events according to the stylus
\a mode.
-
+
\sa stylusOperation() StylusMode
*/
@@ -1589,5 +1650,5 @@ void QPEApplication::ungrabKeyboard()
programs take over the launch keys in this way to make interaction
easier.
-
+
\sa ungrabKeyboard()
*/