summaryrefslogtreecommitdiff
authorchicken <chicken>2003-11-02 20:12:26 (UTC)
committer chicken <chicken>2003-11-02 20:12:26 (UTC)
commit559f4034cd483845b107aa7180f56e701c1444e6 (patch) (side-by-side diff)
treece5ed970a0cb49429b39d72173953adb24280a4e
parent1b73bc0cb5c1d6fe7363d7bf30d8ca1a467e3e8d (diff)
downloadopie-559f4034cd483845b107aa7180f56e701c1444e6.zip
opie-559f4034cd483845b107aa7180f56e701c1444e6.tar.gz
opie-559f4034cd483845b107aa7180f56e701c1444e6.tar.bz2
add iPAQ H5xxx support
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/odevice.cpp27
-rw-r--r--libopie/odevice.h1
2 files changed, 18 insertions, 10 deletions
diff --git a/libopie/odevice.cpp b/libopie/odevice.cpp
index 13b4330..3edf8e7 100644
--- a/libopie/odevice.cpp
+++ b/libopie/odevice.cpp
@@ -104,17 +104,17 @@ protected:
int m_power_timer;
OLedState m_leds [2];
};
class Jornada : public ODevice {
protected:
virtual void init ( );
- virtual void initButtons ( );
+ //virtual void initButtons ( );
public:
virtual bool setSoftSuspend ( bool soft );
virtual bool setDisplayBrightness ( int b );
virtual int displayBrightnessResolution ( ) const;
static bool isJornada();
};
@@ -202,42 +202,42 @@ struct i_button {
Qt::Key code;
char *utext;
char *pix;
char *fpressedservice;
char *fpressedaction;
char *fheldservice;
char *fheldaction;
} ipaq_buttons [] = {
- { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx,
+ { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx | Model_iPAQ_H5xxx,
Qt::Key_F9, QT_TRANSLATE_NOOP("Button", "Calendar Button"),
"devicebuttons/ipaq_calendar",
"datebook", "nextView()",
"today", "raise()" },
- { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx,
+ { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx | Model_iPAQ_H5xxx,
Qt::Key_F10, QT_TRANSLATE_NOOP("Button", "Contacts Button"),
"devicebuttons/ipaq_contact",
"addressbook", "raise()",
"addressbook", "beamBusinessCard()" },
{ Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx,
Qt::Key_F11, QT_TRANSLATE_NOOP("Button", "Menu Button"),
"devicebuttons/ipaq_menu",
"QPE/TaskBar", "toggleMenu()",
"QPE/TaskBar", "toggleStartMenu()" },
- { Model_iPAQ_H38xx | Model_iPAQ_H39xx,
+ { Model_iPAQ_H38xx | Model_iPAQ_H39xx | Model_iPAQ_H5xxx,
Qt::Key_F13, QT_TRANSLATE_NOOP("Button", "Mail Button"),
"devicebuttons/ipaq_mail",
"mail", "raise()",
"mail", "newMail()" },
- { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx,
+ { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx | Model_iPAQ_H5xxx,
Qt::Key_F12, QT_TRANSLATE_NOOP("Button", "Home Button"),
"devicebuttons/ipaq_home",
"QPE/Launcher", "home()",
"buttonsettings", "raise()" },
- { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx,
+ { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx | Model_iPAQ_H5xxx,
Qt::Key_F24, QT_TRANSLATE_NOOP("Button", "Record Button"),
"devicebuttons/ipaq_record",
"QPE/VMemo", "toggleRecord()",
"sound", "raise()" },
};
struct z_button {
Qt::Key code;
@@ -1113,16 +1113,18 @@ void iPAQ::init ( )
else if ( d-> m_modelstr == "H3600" )
d-> m_model = Model_iPAQ_H36xx;
else if ( d-> m_modelstr == "H3700" )
d-> m_model = Model_iPAQ_H37xx;
else if ( d-> m_modelstr == "H3800" )
d-> m_model = Model_iPAQ_H38xx;
else if ( d-> m_modelstr == "H3900" )
d-> m_model = Model_iPAQ_H39xx;
+ else if ( d-> m_modelstr == "H5400" )
+ d-> m_model = Model_iPAQ_H5xxx;
else
d-> m_model = Model_Unknown;
f. close ( );
}
switch ( d-> m_model ) {
case Model_iPAQ_H31xx:
@@ -1130,17 +1132,19 @@ void iPAQ::init ( )
d-> m_rotation = Rot90;
break;
case Model_iPAQ_H36xx:
case Model_iPAQ_H37xx:
case Model_iPAQ_H39xx:
default:
d-> m_rotation = Rot270;
break;
- }
+ case Model_iPAQ_H5xxx:
+ d-> m_rotation = Rot0;
+ }
f. setName ( "/etc/familiar-version" );
if ( f. open ( IO_ReadOnly )) {
d-> m_systemstr = "Familiar";
d-> m_system = System_Familiar;
QTextStream ts ( &f );
d-> m_sysverstr = ts. readLine ( ). mid ( 10 );
@@ -1287,17 +1291,18 @@ bool iPAQ::setLedState ( OLed l, OLedState st )
bool iPAQ::filter ( int /*unicode*/, int keycode, int modifiers, bool isPress, bool autoRepeat )
{
int newkeycode = keycode;
switch ( keycode ) {
// H38xx/H39xx have no "Q" key anymore - this is now the Mail key
case HardKey_Menu: {
if (( d-> m_model == Model_iPAQ_H38xx ) ||
- ( d-> m_model == Model_iPAQ_H39xx )) {
+ ( d-> m_model == Model_iPAQ_H39xx ) ||
+ ( d-> m_model == Model_iPAQ_H5xxx)) {
newkeycode = HardKey_Mail;
}
break;
}
// Rotate cursor keys 180°
case Key_Left :
case Key_Right:
@@ -1431,16 +1436,18 @@ int iPAQ::displayBrightnessResolution ( ) const
case Model_iPAQ_H31xx:
case Model_iPAQ_H36xx:
case Model_iPAQ_H37xx:
return 128; // really 256, but >128 could damage the LCD
case Model_iPAQ_H38xx:
case Model_iPAQ_H39xx:
return 64;
+ case Model_iPAQ_H5xxx:
+ return 255;
default:
return 2;
}
}
bool iPAQ::hasLightSensor ( ) const
@@ -2511,17 +2518,17 @@ void Jornada::init ( )
QTextStream ts ( &f );
d-> m_sysverstr = ts. readLine ( ). mid ( 10 );
f. close ( );
}
}
-
+#if 0
void Jornada::initButtons ( )
{
if ( d-> m_buttons )
return;
// Simulation uses iPAQ 3660 device buttons
qDebug ( "init Buttons" );
@@ -2540,17 +2547,17 @@ void Jornada::initButtons ( )
d-> m_buttons-> append ( b );
}
}
reloadButtonMapping ( );
QCopChannel *sysch = new QCopChannel ( "QPE/System", this );
connect ( sysch, SIGNAL( received( const QCString &, const QByteArray & )), this, SLOT( systemMessage ( const QCString &, const QByteArray & )));
}
-
+#endif
int Jornada::displayBrightnessResolution ( ) const
{
}
bool Jornada::setDisplayBrightness ( int bright )
{
bool res = false;
int fd;
diff --git a/libopie/odevice.h b/libopie/odevice.h
index 35e3eff..46f1614 100644
--- a/libopie/odevice.h
+++ b/libopie/odevice.h
@@ -45,16 +45,17 @@ enum OModel {
Model_iPAQ = ( 1 << 24 ),
Model_iPAQ_All = ( Model_iPAQ | 0xffffff ),
Model_iPAQ_H31xx = ( Model_iPAQ | 0x000001 ),
Model_iPAQ_H36xx = ( Model_iPAQ | 0x000002 ),
Model_iPAQ_H37xx = ( Model_iPAQ | 0x000004 ),
Model_iPAQ_H38xx = ( Model_iPAQ | 0x000008 ),
Model_iPAQ_H39xx = ( Model_iPAQ | 0x000010 ),
+ Model_iPAQ_H5xxx = ( Model_iPAQ | 0x000011 ),
Model_Jornada = ( 6 << 24 ),
Model_Jornada_56x = ( Model_Jornada | 0x000001 ),
Model_Zaurus = ( 2 << 24 ),
Model_Zaurus_SL5000 = ( Model_Zaurus | 0x000001 ),
Model_Zaurus_SL5500 = ( Model_Zaurus | 0x000002 ),