summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/odevice.cpp107
1 files changed, 73 insertions, 34 deletions
diff --git a/libopie/odevice.cpp b/libopie/odevice.cpp
index 61c24f4..dea24a8 100644
--- a/libopie/odevice.cpp
+++ b/libopie/odevice.cpp
@@ -1,15 +1,15 @@
/* This file is part of the OPIE libraries
Copyright (C) 2002 Robert Griebl (sandman@handhelds.org)
-
+
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
-
+
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
-
+
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
@@ -54,5 +54,5 @@ public:
class ODeviceZaurus : public ODevice {
-protected:
+protected:
virtual void init ( );
@@ -61,5 +61,5 @@ public:
virtual void keySound ( );
virtual void touchSound ( );
-
+
virtual uint hasLeds ( ) const;
virtual OLedState led ( uint which ) const;
@@ -93,5 +93,5 @@ ODevice::ODevice ( )
{
d = new ODeviceData;
-
+
d-> m_modelstr = "Unknown";
d-> m_model = OMODEL_Unknown;
@@ -99,5 +99,5 @@ ODevice::ODevice ( )
d-> m_vendor = OVENDOR_Unknown;
d-> m_systemstr = "Unkown";
- d-> m_system = OSYSTEM_Unknown;
+ d-> m_system = OSYSTEM_Unknown;
}
@@ -143,4 +143,5 @@ OSystem ODevice::system ( )
void ODevice::alarmSound ( )
{
+#ifndef QT_QWS_EBX
#ifndef QT_NO_SOUND
static Sound snd ( "alarm" );
@@ -149,8 +150,10 @@ void ODevice::alarmSound ( )
snd. play ( );
#endif
+#endif
}
void ODevice::keySound ( )
{
+#ifndef QT_QWS_EBX
#ifndef QT_NO_SOUND
static Sound snd ( "keysound" );
@@ -159,13 +162,19 @@ void ODevice::keySound ( )
snd. play ( );
#endif
+#endif
}
void ODevice::touchSound ( )
{
+
+#ifndef QT_QWS_EBX
#ifndef QT_NO_SOUND
static Sound snd ( "touchsound" );
-
- if ( snd. isFinished ( ))
+qDebug("touchSound");
+ if ( snd. isFinished ( )) {
snd. play ( );
+ qDebug("sound should play");
+ }
+#endif
#endif
}
@@ -195,13 +204,13 @@ void ODeviceIPAQ::init ( )
{
d-> m_vendorstr = "HP";
- d-> m_vendor = OVENDOR_HP;
-
+ d-> m_vendor = OVENDOR_HP;
+
QFile f ( "/proc/hal/model" );
-
+
if ( f. open ( IO_ReadOnly )) {
QTextStream ts ( &f );
-
+
d-> m_modelstr = "H" + ts. readLine ( );
-
+
if ( d-> m_modelstr == "H3100" )
d-> m_model = OMODEL_iPAQ_H31xx;
@@ -214,5 +223,5 @@ void ODeviceIPAQ::init ( )
else
d-> m_model = OMODEL_Unknown;
-
+
f. close ( );
}
@@ -222,5 +231,5 @@ void ODeviceIPAQ::init ( )
d-> m_system = OSYSTEM_Familiar;
}
-
+
d-> m_leds [0] = OLED_Off;
}
@@ -233,5 +242,5 @@ void ODeviceIPAQ::init ( )
#include <qpe/config.h>
-//#include <linux/h3600_ts.h> // including kernel headers is evil ...
+//#include <linux/h3600_ts.h> // including kernel headers is evil ...
typedef struct h3600_ts_led {
@@ -243,11 +252,12 @@ typedef struct h3600_ts_led {
-// #define IOC_H3600_TS_MAGIC 'f'
+// #define IOC_H3600_TS_MAGIC 'f'
// #define LED_ON _IOW(IOC_H3600_TS_MAGIC, 5, struct h3600_ts_led)
#define LED_ON (( 1<<30 ) | ( 'f'<<8 ) | ( 5 ) | ( sizeof(struct h3600_ts_led)<<16 )) // _IOW only defined in kernel headers :(
-
+
void ODeviceIPAQ::alarmSound ( )
{
+#if defined( QT_QWS_IPAQ ) // IPAQ
#ifndef QT_NO_SOUND
static Sound snd ( "alarm" );
@@ -267,7 +277,7 @@ void ODeviceIPAQ::alarmSound ( )
volalarm = 0;
else if ( volalarm > 100 )
- volalarm = 100;
+ volalarm = 100;
volalarm |= ( volalarm << 8 );
-
+
if (( volalarm & 0xff ) > ( vol & 0xff )) {
if ( ::ioctl ( fd, MIXER_WRITE( 0 ), &volalarm ) >= 0 )
@@ -287,4 +297,5 @@ void ODeviceIPAQ::alarmSound ( )
}
#endif
+#endif
}
@@ -299,13 +310,13 @@ OLedState ODeviceIPAQ::led ( uint which ) const
return d-> m_leds [0];
else
- return OLED_Off;
+ return OLED_Off;
}
bool ODeviceIPAQ::setLed ( uint which, OLedState st )
{
- static int fd = ::open ( "/dev/touchscreen/0", O_RDWR|O_NONBLOCK );
+ static int fd = ::open ( "/dev/touchscreen/0", O_RDWR|O_NONBLOCK );
if ( which == 0 ) {
- if ( fd >= 0 ) {
+ if ( fd >= 0 ) {
struct h3600_ts_led leds;
::memset ( &leds, 0, sizeof( leds ));
@@ -314,5 +325,5 @@ bool ODeviceIPAQ::setLed ( uint which, OLedState st )
leds. OffTime = 1;
leds. OffOnBlink = 2;
-
+
switch ( st ) {
case OLED_Off : leds. OffOnBlink = 0; break;
@@ -321,5 +332,5 @@ bool ODeviceIPAQ::setLed ( uint which, OLedState st )
case OLED_BlinkFast: leds. OnTime = 5; leds. OffTime = 5; break;
}
-
+
if ( ::ioctl ( fd, LED_ON, &leds ) >= 0 ) {
d-> m_leds [0] = st;
@@ -338,8 +349,8 @@ bool ODeviceIPAQ::setLed ( uint which, OLedState st )
-//#if defined( QT_QWS_CUSTOM ) // Zaurus
+//#if defined( QT_QWS_EBX ) // Zaurus
void ODeviceZaurus::init ( )
-{
+{
d-> m_modelstr = "Zaurus SL5000";
d-> m_model = OMODEL_Zaurus_SL5000;
@@ -348,11 +359,11 @@ void ODeviceZaurus::init ( )
QFile f ( "/proc/filesystems" );
-
+
if ( f. open ( IO_ReadOnly ) && ( QTextStream ( &f ). read ( ). find ( "\tjffs2\n" ) >= 0 )) {
d-> m_systemstr = "OpenZaurus";
d-> m_system = OSYSTEM_OpenZaurus;
-
+
f. close ( );
- }
+ }
else {
d-> m_systemstr = "Zaurus";
@@ -373,9 +384,37 @@ void ODeviceZaurus::init ( )
#define SHARP_BUZZER_IOCTL_START (SHARP_DEV_IOCTL_COMMAND_START)
#define SHARP_BUZZER_MAKESOUND (SHARP_BUZZER_IOCTL_START)
-
+
#define SHARP_BUZ_TOUCHSOUND 1 /* touch panel sound */
#define SHARP_BUZ_KEYSOUND 2 /* key sound */
#define SHARP_BUZ_SCHEDULE_ALARM 11 /* schedule alarm */
-
+
+/* --- for SHARP_BUZZER device --- */
+
+//#define SHARP_BUZZER_IOCTL_START (SHARP_DEV_IOCTL_COMMAND_START)
+//#define SHARP_BUZZER_MAKESOUND (SHARP_BUZZER_IOCTL_START)
+
+#define SHARP_BUZZER_SETVOLUME (SHARP_BUZZER_IOCTL_START+1)
+#define SHARP_BUZZER_GETVOLUME (SHARP_BUZZER_IOCTL_START+2)
+#define SHARP_BUZZER_ISSUPPORTED (SHARP_BUZZER_IOCTL_START+3)
+#define SHARP_BUZZER_SETMUTE (SHARP_BUZZER_IOCTL_START+4)
+#define SHARP_BUZZER_STOPSOUND (SHARP_BUZZER_IOCTL_START+5)
+
+//#define SHARP_BUZ_TOUCHSOUND 1 /* touch panel sound */
+//#define SHARP_BUZ_KEYSOUND 2 /* key sound */
+
+//#define SHARP_PDA_ILLCLICKSOUND 3 /* illegal click */
+//#define SHARP_PDA_WARNSOUND 4 /* warning occurred */
+//#define SHARP_PDA_ERRORSOUND 5 /* error occurred */
+//#define SHARP_PDA_CRITICALSOUND 6 /* critical error occurred */
+//#define SHARP_PDA_SYSSTARTSOUND 7 /* system start */
+//#define SHARP_PDA_SYSTEMENDSOUND 8 /* system shutdown */
+//#define SHARP_PDA_APPSTART 9 /* application start */
+//#define SHARP_PDA_APPQUIT 10 /* application ends */
+
+//#define SHARP_BUZ_SCHEDULE_ALARM 11 /* schedule alarm */
+//#define SHARP_BUZ_DAILY_ALARM 12 /* daily alarm */
+//#define SHARP_BUZ_GOT_PHONE_CALL 13 /* phone call sound */
+//#define SHARP_BUZ_GOT_MAIL 14 /* mail sound */
+//
#define SHARP_LED_IOCTL_START (SHARP_DEV_IOCTL_COMMAND_START)
@@ -386,5 +425,5 @@ typedef struct sharp_led_status {
int status; /* set new led status if you call SHARP_LED_SETSTATUS */
} sharp_led_status;
-
+
#define SHARP_LED_MAIL_EXISTS 9 /* mail status (exists or not) */