summaryrefslogtreecommitdiff
path: root/libopie/odevice.cpp
Side-by-side diff
Diffstat (limited to 'libopie/odevice.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/odevice.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/libopie/odevice.cpp b/libopie/odevice.cpp
index 9931684..bc8014a 100644
--- a/libopie/odevice.cpp
+++ b/libopie/odevice.cpp
@@ -32,16 +32,18 @@ public:
OVendor m_vendor;
QString m_modelstr;
OModel m_model;
QString m_systemstr;
OSystem m_system;
+ QString m_sysverstr;
+
OLedState m_leds [4]; // just for convenience ...
};
class ODeviceIPAQ : public ODevice {
protected:
virtual void init ( );
public:
@@ -94,16 +96,17 @@ ODevice::ODevice ( )
d = new ODeviceData;
d-> m_modelstr = "Unknown";
d-> m_model = OMODEL_Unknown;
d-> m_vendorstr = "Unkown";
d-> m_vendor = OVENDOR_Unknown;
d-> m_systemstr = "Unkown";
d-> m_system = OSYSTEM_Unknown;
+ d-> m_sysverstr = "0.0";
}
void ODevice::init ( )
{
}
ODevice::~ODevice ( )
{
@@ -135,16 +138,21 @@ QString ODevice::systemString ( )
return d-> m_systemstr;
}
OSystem ODevice::system ( )
{
return d-> m_system;
}
+QString ODevice::systemVersionString ( )
+{
+ return d-> m_sysverstr;
+}
+
void ODevice::alarmSound ( )
{
#ifndef QT_QWS_EBX
#ifndef QT_NO_SOUND
static Sound snd ( "alarm" );
if ( snd. isFinished ( ))
snd. play ( );
@@ -221,19 +229,25 @@ void ODeviceIPAQ::init ( )
else if ( d-> m_modelstr == "H3800" )
d-> m_model = OMODEL_iPAQ_H38xx;
else
d-> m_model = OMODEL_Unknown;
f. close ( );
}
- if ( QFile::exists ( "/etc/familiar-version" )) {
+ f. setName ( "/etc/familiar-version" );
+ if ( f. open ( IO_ReadOnly )) {
d-> m_systemstr = "Familiar";
d-> m_system = OSYSTEM_Familiar;
+
+ QTextStream ts ( &f );
+ d-> m_sysverstr = ts. readLine ( ). mid ( 10 );
+
+ f. close ( );
}
d-> m_leds [0] = OLED_Off;
}
#include <unistd.h>
#include <fcntl.h>
#include <sys/ioctl.h>