author | chicken <chicken> | 2003-11-02 20:12:26 (UTC) |
---|---|---|
committer | chicken <chicken> | 2003-11-02 20:12:26 (UTC) |
commit | 559f4034cd483845b107aa7180f56e701c1444e6 (patch) (unidiff) | |
tree | ce5ed970a0cb49429b39d72173953adb24280a4e | |
parent | 1b73bc0cb5c1d6fe7363d7bf30d8ca1a467e3e8d (diff) | |
download | opie-559f4034cd483845b107aa7180f56e701c1444e6.zip opie-559f4034cd483845b107aa7180f56e701c1444e6.tar.gz opie-559f4034cd483845b107aa7180f56e701c1444e6.tar.bz2 |
add iPAQ H5xxx support
-rw-r--r-- | libopie/odevice.cpp | 27 | ||||
-rw-r--r-- | libopie/odevice.h | 1 |
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 | |||
@@ -106,13 +106,13 @@ protected: | |||
106 | OLedState m_leds [2]; | 106 | OLedState m_leds [2]; |
107 | }; | 107 | }; |
108 | 108 | ||
109 | class Jornada : public ODevice { | 109 | class Jornada : public ODevice { |
110 | protected: | 110 | protected: |
111 | virtual void init ( ); | 111 | virtual void init ( ); |
112 | virtual void initButtons ( ); | 112 | //virtual void initButtons ( ); |
113 | public: | 113 | public: |
114 | virtual bool setSoftSuspend ( bool soft ); | 114 | virtual bool setSoftSuspend ( bool soft ); |
115 | virtual bool setDisplayBrightness ( int b ); | 115 | virtual bool setDisplayBrightness ( int b ); |
116 | virtual int displayBrightnessResolution ( ) const; | 116 | virtual int displayBrightnessResolution ( ) const; |
117 | static bool isJornada(); | 117 | static bool isJornada(); |
118 | 118 | ||
@@ -204,38 +204,38 @@ struct i_button { | |||
204 | char *pix; | 204 | char *pix; |
205 | char *fpressedservice; | 205 | char *fpressedservice; |
206 | char *fpressedaction; | 206 | char *fpressedaction; |
207 | char *fheldservice; | 207 | char *fheldservice; |
208 | char *fheldaction; | 208 | char *fheldaction; |
209 | } ipaq_buttons [] = { | 209 | } ipaq_buttons [] = { |
210 | { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx, | 210 | { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx | Model_iPAQ_H5xxx, |
211 | Qt::Key_F9, QT_TRANSLATE_NOOP("Button", "Calendar Button"), | 211 | Qt::Key_F9, QT_TRANSLATE_NOOP("Button", "Calendar Button"), |
212 | "devicebuttons/ipaq_calendar", | 212 | "devicebuttons/ipaq_calendar", |
213 | "datebook", "nextView()", | 213 | "datebook", "nextView()", |
214 | "today", "raise()" }, | 214 | "today", "raise()" }, |
215 | { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx, | 215 | { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx | Model_iPAQ_H5xxx, |
216 | Qt::Key_F10, QT_TRANSLATE_NOOP("Button", "Contacts Button"), | 216 | Qt::Key_F10, QT_TRANSLATE_NOOP("Button", "Contacts Button"), |
217 | "devicebuttons/ipaq_contact", | 217 | "devicebuttons/ipaq_contact", |
218 | "addressbook", "raise()", | 218 | "addressbook", "raise()", |
219 | "addressbook", "beamBusinessCard()" }, | 219 | "addressbook", "beamBusinessCard()" }, |
220 | { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx, | 220 | { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx, |
221 | Qt::Key_F11, QT_TRANSLATE_NOOP("Button", "Menu Button"), | 221 | Qt::Key_F11, QT_TRANSLATE_NOOP("Button", "Menu Button"), |
222 | "devicebuttons/ipaq_menu", | 222 | "devicebuttons/ipaq_menu", |
223 | "QPE/TaskBar", "toggleMenu()", | 223 | "QPE/TaskBar", "toggleMenu()", |
224 | "QPE/TaskBar", "toggleStartMenu()" }, | 224 | "QPE/TaskBar", "toggleStartMenu()" }, |
225 | { Model_iPAQ_H38xx | Model_iPAQ_H39xx, | 225 | { Model_iPAQ_H38xx | Model_iPAQ_H39xx | Model_iPAQ_H5xxx, |
226 | Qt::Key_F13, QT_TRANSLATE_NOOP("Button", "Mail Button"), | 226 | Qt::Key_F13, QT_TRANSLATE_NOOP("Button", "Mail Button"), |
227 | "devicebuttons/ipaq_mail", | 227 | "devicebuttons/ipaq_mail", |
228 | "mail", "raise()", | 228 | "mail", "raise()", |
229 | "mail", "newMail()" }, | 229 | "mail", "newMail()" }, |
230 | { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx, | 230 | { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx | Model_iPAQ_H5xxx, |
231 | Qt::Key_F12, QT_TRANSLATE_NOOP("Button", "Home Button"), | 231 | Qt::Key_F12, QT_TRANSLATE_NOOP("Button", "Home Button"), |
232 | "devicebuttons/ipaq_home", | 232 | "devicebuttons/ipaq_home", |
233 | "QPE/Launcher", "home()", | 233 | "QPE/Launcher", "home()", |
234 | "buttonsettings", "raise()" }, | 234 | "buttonsettings", "raise()" }, |
235 | { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx, | 235 | { Model_iPAQ_H31xx | Model_iPAQ_H36xx | Model_iPAQ_H37xx | Model_iPAQ_H38xx | Model_iPAQ_H39xx | Model_iPAQ_H5xxx, |
236 | Qt::Key_F24, QT_TRANSLATE_NOOP("Button", "Record Button"), | 236 | Qt::Key_F24, QT_TRANSLATE_NOOP("Button", "Record Button"), |
237 | "devicebuttons/ipaq_record", | 237 | "devicebuttons/ipaq_record", |
238 | "QPE/VMemo", "toggleRecord()", | 238 | "QPE/VMemo", "toggleRecord()", |
239 | "sound", "raise()" }, | 239 | "sound", "raise()" }, |
240 | }; | 240 | }; |
241 | 241 | ||
@@ -1115,12 +1115,14 @@ void iPAQ::init ( ) | |||
1115 | else if ( d-> m_modelstr == "H3700" ) | 1115 | else if ( d-> m_modelstr == "H3700" ) |
1116 | d-> m_model = Model_iPAQ_H37xx; | 1116 | d-> m_model = Model_iPAQ_H37xx; |
1117 | else if ( d-> m_modelstr == "H3800" ) | 1117 | else if ( d-> m_modelstr == "H3800" ) |
1118 | d-> m_model = Model_iPAQ_H38xx; | 1118 | d-> m_model = Model_iPAQ_H38xx; |
1119 | else if ( d-> m_modelstr == "H3900" ) | 1119 | else if ( d-> m_modelstr == "H3900" ) |
1120 | d-> m_model = Model_iPAQ_H39xx; | 1120 | d-> m_model = Model_iPAQ_H39xx; |
1121 | else if ( d-> m_modelstr == "H5400" ) | ||
1122 | d-> m_model = Model_iPAQ_H5xxx; | ||
1121 | else | 1123 | else |
1122 | d-> m_model = Model_Unknown; | 1124 | d-> m_model = Model_Unknown; |
1123 | 1125 | ||
1124 | f. close ( ); | 1126 | f. close ( ); |
1125 | } | 1127 | } |
1126 | 1128 | ||
@@ -1132,13 +1134,15 @@ void iPAQ::init ( ) | |||
1132 | case Model_iPAQ_H36xx: | 1134 | case Model_iPAQ_H36xx: |
1133 | case Model_iPAQ_H37xx: | 1135 | case Model_iPAQ_H37xx: |
1134 | case Model_iPAQ_H39xx: | 1136 | case Model_iPAQ_H39xx: |
1135 | default: | 1137 | default: |
1136 | d-> m_rotation = Rot270; | 1138 | d-> m_rotation = Rot270; |
1137 | break; | 1139 | break; |
1138 | } | 1140 | case Model_iPAQ_H5xxx: |
1141 | d-> m_rotation = Rot0; | ||
1142 | } | ||
1139 | 1143 | ||
1140 | f. setName ( "/etc/familiar-version" ); | 1144 | f. setName ( "/etc/familiar-version" ); |
1141 | if ( f. open ( IO_ReadOnly )) { | 1145 | if ( f. open ( IO_ReadOnly )) { |
1142 | d-> m_systemstr = "Familiar"; | 1146 | d-> m_systemstr = "Familiar"; |
1143 | d-> m_system = System_Familiar; | 1147 | d-> m_system = System_Familiar; |
1144 | 1148 | ||
@@ -1289,13 +1293,14 @@ bool iPAQ::filter ( int /*unicode*/, int keycode, int modifiers, bool isPress, b | |||
1289 | int newkeycode = keycode; | 1293 | int newkeycode = keycode; |
1290 | 1294 | ||
1291 | switch ( keycode ) { | 1295 | switch ( keycode ) { |
1292 | // H38xx/H39xx have no "Q" key anymore - this is now the Mail key | 1296 | // H38xx/H39xx have no "Q" key anymore - this is now the Mail key |
1293 | case HardKey_Menu: { | 1297 | case HardKey_Menu: { |
1294 | if (( d-> m_model == Model_iPAQ_H38xx ) || | 1298 | if (( d-> m_model == Model_iPAQ_H38xx ) || |
1295 | ( d-> m_model == Model_iPAQ_H39xx )) { | 1299 | ( d-> m_model == Model_iPAQ_H39xx ) || |
1300 | ( d-> m_model == Model_iPAQ_H5xxx)) { | ||
1296 | newkeycode = HardKey_Mail; | 1301 | newkeycode = HardKey_Mail; |
1297 | } | 1302 | } |
1298 | break; | 1303 | break; |
1299 | } | 1304 | } |
1300 | 1305 | ||
1301 | // Rotate cursor keys 180° | 1306 | // Rotate cursor keys 180° |
@@ -1433,12 +1438,14 @@ int iPAQ::displayBrightnessResolution ( ) const | |||
1433 | case Model_iPAQ_H37xx: | 1438 | case Model_iPAQ_H37xx: |
1434 | return 128; // really 256, but >128 could damage the LCD | 1439 | return 128; // really 256, but >128 could damage the LCD |
1435 | 1440 | ||
1436 | case Model_iPAQ_H38xx: | 1441 | case Model_iPAQ_H38xx: |
1437 | case Model_iPAQ_H39xx: | 1442 | case Model_iPAQ_H39xx: |
1438 | return 64; | 1443 | return 64; |
1444 | case Model_iPAQ_H5xxx: | ||
1445 | return 255; | ||
1439 | 1446 | ||
1440 | default: | 1447 | default: |
1441 | return 2; | 1448 | return 2; |
1442 | } | 1449 | } |
1443 | } | 1450 | } |
1444 | 1451 | ||
@@ -2513,13 +2520,13 @@ void Jornada::init ( ) | |||
2513 | d-> m_sysverstr = ts. readLine ( ). mid ( 10 ); | 2520 | d-> m_sysverstr = ts. readLine ( ). mid ( 10 ); |
2514 | 2521 | ||
2515 | f. close ( ); | 2522 | f. close ( ); |
2516 | } | 2523 | } |
2517 | } | 2524 | } |
2518 | 2525 | ||
2519 | 2526 | #if 0 | |
2520 | void Jornada::initButtons ( ) | 2527 | void Jornada::initButtons ( ) |
2521 | { | 2528 | { |
2522 | if ( d-> m_buttons ) | 2529 | if ( d-> m_buttons ) |
2523 | return; | 2530 | return; |
2524 | 2531 | ||
2525 | // Simulation uses iPAQ 3660 device buttons | 2532 | // Simulation uses iPAQ 3660 device buttons |
@@ -2542,13 +2549,13 @@ void Jornada::initButtons ( ) | |||
2542 | } | 2549 | } |
2543 | reloadButtonMapping ( ); | 2550 | reloadButtonMapping ( ); |
2544 | 2551 | ||
2545 | QCopChannel *sysch = new QCopChannel ( "QPE/System", this ); | 2552 | QCopChannel *sysch = new QCopChannel ( "QPE/System", this ); |
2546 | connect ( sysch, SIGNAL( received( const QCString &, const QByteArray & )), this, SLOT( systemMessage ( const QCString &, const QByteArray & ))); | 2553 | connect ( sysch, SIGNAL( received( const QCString &, const QByteArray & )), this, SLOT( systemMessage ( const QCString &, const QByteArray & ))); |
2547 | } | 2554 | } |
2548 | 2555 | #endif | |
2549 | int Jornada::displayBrightnessResolution ( ) const | 2556 | int Jornada::displayBrightnessResolution ( ) const |
2550 | { | 2557 | { |
2551 | } | 2558 | } |
2552 | 2559 | ||
2553 | bool Jornada::setDisplayBrightness ( int bright ) | 2560 | bool Jornada::setDisplayBrightness ( int bright ) |
2554 | { | 2561 | { |
diff --git a/libopie/odevice.h b/libopie/odevice.h index 35e3eff..46f1614 100644 --- a/libopie/odevice.h +++ b/libopie/odevice.h | |||
@@ -47,12 +47,13 @@ enum OModel { | |||
47 | Model_iPAQ_All = ( Model_iPAQ | 0xffffff ), | 47 | Model_iPAQ_All = ( Model_iPAQ | 0xffffff ), |
48 | Model_iPAQ_H31xx = ( Model_iPAQ | 0x000001 ), | 48 | Model_iPAQ_H31xx = ( Model_iPAQ | 0x000001 ), |
49 | Model_iPAQ_H36xx = ( Model_iPAQ | 0x000002 ), | 49 | Model_iPAQ_H36xx = ( Model_iPAQ | 0x000002 ), |
50 | Model_iPAQ_H37xx = ( Model_iPAQ | 0x000004 ), | 50 | Model_iPAQ_H37xx = ( Model_iPAQ | 0x000004 ), |
51 | Model_iPAQ_H38xx = ( Model_iPAQ | 0x000008 ), | 51 | Model_iPAQ_H38xx = ( Model_iPAQ | 0x000008 ), |
52 | Model_iPAQ_H39xx = ( Model_iPAQ | 0x000010 ), | 52 | Model_iPAQ_H39xx = ( Model_iPAQ | 0x000010 ), |
53 | Model_iPAQ_H5xxx = ( Model_iPAQ | 0x000011 ), | ||
53 | 54 | ||
54 | Model_Jornada = ( 6 << 24 ), | 55 | Model_Jornada = ( 6 << 24 ), |
55 | Model_Jornada_56x = ( Model_Jornada | 0x000001 ), | 56 | Model_Jornada_56x = ( Model_Jornada | 0x000001 ), |
56 | 57 | ||
57 | Model_Zaurus = ( 2 << 24 ), | 58 | Model_Zaurus = ( 2 << 24 ), |
58 | 59 | ||