summaryrefslogtreecommitdiff
path: root/libopie2/opiecore/device/odevice_htc.cpp
authorerik <erik>2007-02-08 23:11:26 (UTC)
committer erik <erik>2007-02-08 23:11:26 (UTC)
commit98353ac16bb90ee4b5df18945acf4fa7f05f9a85 (patch) (side-by-side diff)
tree67ccd74ecfcc9006bece74089b6739736d78243f /libopie2/opiecore/device/odevice_htc.cpp
parent497621fb3ba39ea511842a30cddfcdbda090e7ba (diff)
downloadopie-98353ac16bb90ee4b5df18945acf4fa7f05f9a85.zip
opie-98353ac16bb90ee4b5df18945acf4fa7f05f9a85.tar.gz
opie-98353ac16bb90ee4b5df18945acf4fa7f05f9a85.tar.bz2
This commit provides fixes that quiet warnings associated to device
information. It should cause no change in behavior.
Diffstat (limited to 'libopie2/opiecore/device/odevice_htc.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/opiecore/device/odevice_htc.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/libopie2/opiecore/device/odevice_htc.cpp b/libopie2/opiecore/device/odevice_htc.cpp
index a6ade11..44b33c0 100644
--- a/libopie2/opiecore/device/odevice_htc.cpp
+++ b/libopie2/opiecore/device/odevice_htc.cpp
@@ -62,103 +62,103 @@ using namespace Opie::Core::Internal;
struct htc_button htc_buttons [] = {
{ Qt::Key_F9, QT_TRANSLATE_NOOP("Button", "Calendar Button"),
"devicebuttons/z_calendar",
"datebook", "nextView()",
"today", "raise()" },
{ Qt::Key_F10, QT_TRANSLATE_NOOP("Button", "Contacts Button"),
"devicebuttons/z_contact",
"addressbook", "raise()",
"addressbook", "beamBusinessCard()" },
{ Qt::Key_F12, QT_TRANSLATE_NOOP("Button", "Home Button"),
"devicebuttons/z_home",
"QPE/Launcher", "home()",
"buttonsettings", "raise()" },
{ Qt::Key_F11, QT_TRANSLATE_NOOP("Button", "Menu Button"),
"devicebuttons/z_menu",
"QPE/TaskBar", "toggleMenu()",
"QPE/TaskBar", "toggleStartMenu()" },
{ Qt::Key_F13, QT_TRANSLATE_NOOP("Button", "Mail Button"),
"devicebuttons/z_mail",
"opiemail", "raise()",
"opiemail", "newMail()" },
};
struct htc_button htc_buttons_universal [] = {
{ Qt::Key_F9, QT_TRANSLATE_NOOP("Button", "Calendar Button"),
"devicebuttons/z_calendar",
"datebook", "nextView()",
"today", "raise()" },
{ Qt::Key_F10, QT_TRANSLATE_NOOP("Button", "Contacts Button"),
"devicebuttons/z_contact",
"addressbook", "raise()",
"addressbook", "beamBusinessCard()" },
{ Qt::Key_F12, QT_TRANSLATE_NOOP("Button", "Home Button"),
"devicebuttons/z_home",
"QPE/Launcher", "home()",
"buttonsettings", "raise()" },
{ Qt::Key_F11, QT_TRANSLATE_NOOP("Button", "Menu Button"),
"devicebuttons/z_menu",
"QPE/TaskBar", "toggleMenu()",
"QPE/TaskBar", "toggleStartMenu()" },
{ Qt::Key_F13, QT_TRANSLATE_NOOP("Button", "Mail Button"),
"devicebuttons/z_mail",
"opiemail", "raise()",
"opiemail", "newMail()" },
{ Qt::Key_F15, QT_TRANSLATE_NOOP("Button", "Hinge1"),
"devicebuttons/z_hinge1",
- "QPE/Rotation", "rotateDefault()",0},
+ "QPE/Rotation", "rotateDefault()",0,0},
{ Qt::Key_F16, QT_TRANSLATE_NOOP("Button", "Hinge2"),
"devicebuttons/z_hinge2",
- "QPE/Rotation", "rotateDefault()",0},
+ "QPE/Rotation", "rotateDefault()",0,0},
{ Qt::Key_F17, QT_TRANSLATE_NOOP("Button", "Hinge3"),
"devicebuttons/z_hinge3",
- "QPE/Rotation", "rotateDefault()",0},
+ "QPE/Rotation", "rotateDefault()",0,0},
};
//
// HTC-Universal (PXA-model w/ 480x640 3.6" lcd)
// HTC-Alpine (PXA-model w/ 240x320 3.5" lcd)
// HTC-Apache (PXA-model w/ 240x320 2.8" lcd)
// HTC-Beetles (PXA-model w/ 240x240 3.0" lcd)
// HTC-Blueangel (PXA-model w/ 240x320 3.5" lcd)
// HTC-Himalaya (PXA-model w/ 240x320 3.5" lcd)
// HTC-Magician (PXA-model w/ 240x320 2.8" lcd)
void HTC::init(const QString& cpu_info)
{
qDebug( "HTC::init()" );
// Set the time to wait until the system is really suspended
// the delta between apm --suspend and sleeping
setAPMTimeOut( 15000 );
d->m_vendorstr = "Xanadux Team";
d->m_systemstr = "Familiar";
d->m_system = System_Familiar;
// check the HTC model
QString model;
int loc = cpu_info.find( ":" );
if ( loc != -1 )
model = cpu_info.mid( loc+2 ).simplifyWhiteSpace();
else
model = cpu_info;
d->m_model = Model_HTC_Universal;
d->m_modelstr = "Unknown HTC";
if ( model == "HTC Universal" ) {
d->m_model = Model_HTC_Universal;
d->m_modelstr = "HTC Universal";
}
if ( model == "HTC Alpine" ) {
d->m_model = Model_HTC_Alpine;
d->m_modelstr = "HTC Alpine";
}
if ( model == "HTC Apache" ) {
d->m_model = Model_HTC_Apache;
d->m_modelstr = "HTC Apache";
}
if ( model == "HTC Beetles" ) {
d->m_model = Model_HTC_Beetles;
@@ -310,172 +310,174 @@ void HTC::buzzer( int sound )
::close ( fd );
}
}
#endif
}
void HTC::playAlarmSound()
{
buzzer( SHARP_BUZ_SCHEDULE_ALARM );
}
void HTC::playTouchSound()
{
buzzer( SHARP_BUZ_TOUCHSOUND );
}
void HTC::playKeySound()
{
buzzer( SHARP_BUZ_KEYSOUND );
}
QValueList <OLed> HTC::ledList() const
{
QValueList <OLed> vl;
vl << Led_Mail;
return vl;
}
QValueList <OLedState> HTC::ledStateList( OLed l ) const
{
QValueList <OLedState> vl;
if ( l == Led_Mail )
vl << Led_Off << Led_On << Led_BlinkSlow;
return vl;
}
OLedState HTC::ledState( OLed which ) const
{
if ( which == Led_Mail )
return m_leds [0];
else
return Led_Off;
}
-bool HTC::setLedState( OLed which, OLedState st )
+bool HTC::setLedState( OLed, OLedState )
{
qDebug( "HTC::setLedState: ODevice handling not yet implemented" );
return false;
}
int HTC::displayBrightnessResolution() const
{
int res = 1;
int fd = ::open( m_backlightdev + "max_brightness", O_RDONLY|O_NONBLOCK );
if ( fd )
{
char buf[100];
if ( ::read( fd, &buf[0], sizeof buf ) ) ::sscanf( &buf[0], "%d", &res );
::close( fd );
}
return res;
}
bool HTC::setDisplayBrightness( int bright )
{
//qDebug( "HTC::setDisplayBrightness( %d )", bright );
bool res = false;
if ( bright > 255 ) bright = 255;
if ( bright < 0 ) bright = 0;
int numberOfSteps = displayBrightnessResolution();
int val = ( bright == 1 ) ? 1 : ( bright * numberOfSteps ) / 255;
int fd = ::open( m_backlightdev + "brightness", O_WRONLY|O_NONBLOCK );
if ( fd )
{
char buf[100];
int len = ::snprintf( &buf[0], sizeof buf, "%d", val );
res = ( ::write( fd, &buf[0], len ) == 0 );
::close( fd );
}
return res;
}
bool HTC::setDisplayStatus( bool on )
{
bool res = false;
int fd = ::open( m_backlightdev + "power", O_WRONLY|O_NONBLOCK );
if ( fd )
{
char buf[10];
buf[0] = on ? FB_BLANK_UNBLANK : FB_BLANK_POWERDOWN;
buf[1] = '\0';
res = ( ::write( fd, &buf[0], 2 ) == 0 );
::close( fd );
}
return res;
}
Transformation HTC::rotation() const
{
qDebug( "HTC::rotation()" );
Transformation rot = Rot270;
switch ( d->m_model ) {
case Model_HTC_Universal:
{
OHingeStatus hs = readHingeSensor();
qDebug( "HTC::rotation() - hinge sensor = %d", (int) hs );
if ( hs == CASE_PORTRAIT ) rot = Rot0;
else if ( hs == CASE_UNKNOWN ) rot = Rot270;
}
break;
+ default:
+ break;
}
qDebug( "HTC::rotation() - returning '%d'", rot );
return rot;
}
ODirection HTC::direction() const
{
ODirection dir;
switch ( d->m_model ) {
case Model_HTC_Universal: {
OHingeStatus hs = readHingeSensor();
if ( hs == CASE_PORTRAIT ) dir = CCW;
else if ( hs == CASE_UNKNOWN ) dir = CCW;
else dir = CW;
}
break;
default: dir = d->m_direction;
break;
}
return dir;
}
bool HTC::hasHingeSensor() const
{
return d->m_model == Model_HTC_Universal;
}
OHingeStatus HTC::readHingeSensor() const
{
/*
* The HTC Universal keyboard is event source 1 in kernel 2.6.
* Hinge status is reported via Input System Switchs 0 and 1 like that:
*
* -------------------------
* | SW0 | SW1 | CASE |
* |-----|-----|-----------|
* | 0 0 Unknown |
* | 1 0 Portrait |
* | 0 1 Closed |
* | 1 1 Landscape |
* -------------------------
*/
OInputDevice* keyboard = OInputSystem::instance()->device( "event1" );
bool switch0 = true;
bool switch1 = false;
if ( keyboard )