summaryrefslogtreecommitdiff
path: root/libopie2/opiecore
Side-by-side diff
Diffstat (limited to 'libopie2/opiecore') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/opiecore/device/odevice.cpp17
-rw-r--r--libopie2/opiecore/device/odevice.h9
-rw-r--r--libopie2/opiecore/device/odevice_ipaq.cpp4
-rw-r--r--libopie2/opiecore/device/odevice_ipaq.h8
-rw-r--r--libopie2/opiecore/device/odevice_jornada.cpp2
-rw-r--r--libopie2/opiecore/device/odevice_jornada.h9
-rw-r--r--libopie2/opiecore/device/odevice_ramses.cpp3
-rw-r--r--libopie2/opiecore/device/odevice_ramses.h7
-rw-r--r--libopie2/opiecore/device/odevice_simpad.cpp3
-rw-r--r--libopie2/opiecore/device/odevice_simpad.h8
-rw-r--r--libopie2/opiecore/device/odevice_yopy.cpp3
-rw-r--r--libopie2/opiecore/device/odevice_yopy.h9
-rw-r--r--libopie2/opiecore/device/odevice_zaurus.cpp3
-rw-r--r--libopie2/opiecore/device/odevice_zaurus.h8
-rw-r--r--libopie2/opiecore/device/odevicebutton.cpp15
-rw-r--r--libopie2/opiecore/device/odevicebutton.h11
-rw-r--r--libopie2/opiecore/oapplication.cpp11
-rw-r--r--libopie2/opiecore/oapplication.h13
-rw-r--r--libopie2/opiecore/oconfig.cpp2
-rw-r--r--libopie2/opiecore/oconfig.h13
-rw-r--r--libopie2/opiecore/odebug.cpp7
-rw-r--r--libopie2/opiecore/odebug.h9
-rw-r--r--libopie2/opiecore/oglobal.cpp6
-rw-r--r--libopie2/opiecore/oglobal.h10
-rw-r--r--libopie2/opiecore/oglobalsettings.cpp3
-rw-r--r--libopie2/opiecore/oglobalsettings.h12
-rw-r--r--libopie2/opiecore/opiecore.pro8
-rw-r--r--libopie2/opiecore/oprocctrl.cpp2
-rw-r--r--libopie2/opiecore/oprocctrl.h10
-rw-r--r--libopie2/opiecore/oprocess.cpp10
-rw-r--r--libopie2/opiecore/oprocess.h13
-rw-r--r--libopie2/opiecore/osmartpointer.h2
-rw-r--r--libopie2/opiecore/ostorageinfo.cpp2
-rw-r--r--libopie2/opiecore/ostorageinfo.h8
-rw-r--r--libopie2/opiecore/xmltree.cc323
-rw-r--r--libopie2/opiecore/xmltree.h119
36 files changed, 212 insertions, 490 deletions
diff --git a/libopie2/opiecore/device/odevice.cpp b/libopie2/opiecore/device/odevice.cpp
index 27b0e53..f3e2cfb 100644
--- a/libopie2/opiecore/device/odevice.cpp
+++ b/libopie2/opiecore/device/odevice.cpp
@@ -57,13 +57,13 @@ _;:, .> :=|. This program is free software; you can
#ifndef QT_NO_SOUND
#include <linux/soundcard.h>
#endif
const char* PATH_PROC_CPUINFO = "/proc/cpuinfo";
-using namespace Opie;
+using namespace Opie::Core;
ODevice *ODevice::inst()
{
static ODevice *dev = 0;
// rewrite this to only use /proc/cpuinfo or so
@@ -78,17 +78,17 @@ ODevice *ODevice::inst()
{
QString line;
line = s.readLine();
if ( line.startsWith( "Hardware" ) )
{
qDebug( "ODevice() - found '%s'", (const char*) line );
- if ( line.contains( "sharp", false ) ) dev = new Zaurus();
- else if ( line.contains( "ipaq", false ) ) dev = new iPAQ();
- else if ( line.contains( "simpad", false ) ) dev = new SIMpad();
- else if ( line.contains( "jornada", false ) ) dev = new Jornada();
- else if ( line.contains( "ramses", false ) ) dev = new Ramses();
+ if ( line.contains( "sharp", false ) ) dev = new Private::Zaurus();
+ else if ( line.contains( "ipaq", false ) ) dev = new Private::iPAQ();
+ else if ( line.contains( "simpad", false ) ) dev = new Private::SIMpad();
+ else if ( line.contains( "jornada", false ) ) dev = new Private::Jornada();
+ else if ( line.contains( "ramses", false ) ) dev = new Private::Ramses();
else qWarning( "ODevice() - unknown hardware - using default." );
break;
}
}
}
else
@@ -184,13 +184,13 @@ bool ODevice::suspend()
if ( d->m_model == Model_Unknown ) // better don't suspend in qvfb / on unkown devices
return false;
bool res = false;
ODevice::sendSuspendmsg();
-
+
struct timeval tvs, tvn;
::gettimeofday ( &tvs, 0 );
::sync(); // flush fs caches
res = ( ::system ( "apm --suspend" ) == 0 );
@@ -621,8 +621,11 @@ void ODevice::remapHeldAction ( int button, const OQCopMessage &action )
void ODevice::virtual_hook(int, void* ){
}
void ODevice::sendSuspendmsg()
{
+ if ( isQWS() )
+ return;
+
QCopEnvelope ( "QPE/System", "aboutToSuspend()" );
}
diff --git a/libopie2/opiecore/device/odevice.h b/libopie2/opiecore/device/odevice.h
index bccb449..5ee9cca 100644
--- a/libopie2/opiecore/device/odevice.h
+++ b/libopie2/opiecore/device/odevice.h
@@ -37,14 +37,15 @@ _;:, .> :=|. This program is free software; you can
/* QT */
#include <qnamespace.h>
#include <qobject.h>
#include <qstring.h>
#include <qstrlist.h>
-namespace Opie
-{
+namespace Opie{
+namespace Core{
+
class ODeviceData;
/**
* The available devices
*/
enum OModel {
Model_Unknown, // = 0
@@ -247,13 +248,13 @@ public:
/**
* Returns the available buttons on this device. The number and location
* of buttons will vary depending on the device. Button numbers will be assigned
* by the device manufacturer and will be from most preferred button to least preffered
* button. Note that this list only contains "user mappable" buttons.
- *
+ *
* @todo Make method const and take care of calling initButtons or make that const too
*
*/
const QValueList<ODeviceButton> &buttons();
/**
@@ -311,12 +312,13 @@ class ODeviceData {
QValueList <ODeviceButton> *m_buttons;
uint m_holdtime;
QStrList *m_cpu_frequencies;
};
}
+}
static inline bool isQWS()
{
return qApp ? ( qApp->type() == QApplication::GuiServer ) : false;
}
@@ -325,8 +327,9 @@ static QCString makeChannel ( const char *str )
if ( str && !::strchr ( str, '/' ))
return QCString ( "QPE/Application/" ) + str;
else
return str;
}
+
#endif
diff --git a/libopie2/opiecore/device/odevice_ipaq.cpp b/libopie2/opiecore/device/odevice_ipaq.cpp
index 8ecea1b..177fd4c 100644
--- a/libopie2/opiecore/device/odevice_ipaq.cpp
+++ b/libopie2/opiecore/device/odevice_ipaq.cpp
@@ -50,12 +50,16 @@
#include <sys/time.h>
#include <unistd.h>
#ifndef QT_NO_SOUND
#include <linux/soundcard.h>
#endif
+
+using namespace Opie::Core;
+using namespace Opie::Core::Private;
+
/* KERNEL */
#define OD_IOC(dir,type,number,size) (( dir << 30 ) | ( type << 8 ) | ( number ) | ( size << 16 ))
#define OD_IO(type,number) OD_IOC(0,type,number,0)
#define OD_IOW(type,number,size) OD_IOC(1,type,number,sizeof(size))
#define OD_IOR(type,number,size) OD_IOC(2,type,number,sizeof(size))
diff --git a/libopie2/opiecore/device/odevice_ipaq.h b/libopie2/opiecore/device/odevice_ipaq.h
index f512344..4f4af46 100644
--- a/libopie2/opiecore/device/odevice_ipaq.h
+++ b/libopie2/opiecore/device/odevice_ipaq.h
@@ -32,13 +32,15 @@
#include "odevice.h"
/* QT */
#include <qwindowsystem_qws.h>
-using namespace Opie;
+namespace Opie {
+namespace Core {
+namespace Private {
class iPAQ : public ODevice, public QWSServer::KeyboardFilter
{
protected:
virtual void init();
@@ -78,7 +80,11 @@ struct i_button {
char *fpressedservice;
char *fpressedaction;
char *fheldservice;
char *fheldaction;
};
+}
+}
+}
+
#endif
diff --git a/libopie2/opiecore/device/odevice_jornada.cpp b/libopie2/opiecore/device/odevice_jornada.cpp
index 37bd6e9..b79b0b5 100644
--- a/libopie2/opiecore/device/odevice_jornada.cpp
+++ b/libopie2/opiecore/device/odevice_jornada.cpp
@@ -74,13 +74,13 @@ typedef struct {
unsigned char brightness;
} FLITE_IN;
#define LED_ON OD_IOW( 'f', 5, LED_IN )
#define FLITE_ON OD_IOW( 'f', 7, FLITE_IN )
-using namespace Opie;
+using namespace Opie::Core::Private;
void Jornada::init()
{
d->m_vendorstr = "HP";
d->m_vendor = Vendor_HP;
d->m_modelstr = "Jornada 56x";
diff --git a/libopie2/opiecore/device/odevice_jornada.h b/libopie2/opiecore/device/odevice_jornada.h
index 59be8da..c37d75e 100644
--- a/libopie2/opiecore/device/odevice_jornada.h
+++ b/libopie2/opiecore/device/odevice_jornada.h
@@ -29,22 +29,25 @@
#ifndef ODEVICE_JORNADA
#define ODEVICE_JORNADA
#include <opie2/odevice.h>
-using namespace Opie;
-
+namespace Opie {
+namespace Core {
+namespace Private {
class Jornada : public ODevice
{
protected:
virtual void init();
public:
virtual bool setSoftSuspend ( bool soft );
virtual bool setDisplayBrightness ( int b );
virtual int displayBrightnessResolution() const;
};
-
+}
+}
+}
#endif
diff --git a/libopie2/opiecore/device/odevice_ramses.cpp b/libopie2/opiecore/device/odevice_ramses.cpp
index 5bcf6a9..77de8c5 100644
--- a/libopie2/opiecore/device/odevice_ramses.cpp
+++ b/libopie2/opiecore/device/odevice_ramses.cpp
@@ -50,12 +50,15 @@
#include <sys/time.h>
#include <unistd.h>
#ifndef QT_NO_SOUND
#include <linux/soundcard.h>
#endif
+using namespace Opie::Core;
+using namespace Opie::Core::Private;
+
struct r_button ramses_buttons [] = {
{ Model_Ramses_MNCI,
Qt::Key_F11, QT_TRANSLATE_NOOP("Button", "Menu Button"),
"devicebuttons/z_menu",
"QPE/TaskBar", "toggleMenu()",
"QPE/TaskBar", "toggleStartMenu()" },
diff --git a/libopie2/opiecore/device/odevice_ramses.h b/libopie2/opiecore/device/odevice_ramses.h
index 1b660ab..e673b1a 100644
--- a/libopie2/opiecore/device/odevice_ramses.h
+++ b/libopie2/opiecore/device/odevice_ramses.h
@@ -31,13 +31,15 @@
#define ODEVICE_RAMSES
#include <opie2/odevice.h>
/* QT */
#include <qwindowsystem_qws.h>
-using namespace Opie;
+namespace Opie {
+namespace Core {
+namespace Private {
class Ramses : public ODevice, public QWSServer::KeyboardFilter
{
protected:
virtual void init();
@@ -65,8 +67,11 @@ struct r_button {
char *pix;
char *fpressedservice;
char *fpressedaction;
char *fheldservice;
char *fheldaction;
};
+}
+}
+}
#endif
diff --git a/libopie2/opiecore/device/odevice_simpad.cpp b/libopie2/opiecore/device/odevice_simpad.cpp
index 90aca2f..80d40a3 100644
--- a/libopie2/opiecore/device/odevice_simpad.cpp
+++ b/libopie2/opiecore/device/odevice_simpad.cpp
@@ -50,13 +50,14 @@ _;:, .> :=|. This program is free software; you can
#include <sys/time.h>
#include <unistd.h>
#ifndef QT_NO_SOUND
#include <linux/soundcard.h>
#endif
-using namespace Opie;
+using namespace Opie::Core;
+using namespace Opie::Core::Private;
struct s_button simpad_buttons [] = {
{ Model_SIMpad_CL4 | Model_SIMpad_SL4 | Model_SIMpad_SLC | Model_SIMpad_TSinus,
Qt::Key_F9, QT_TRANSLATE_NOOP("Button", "Lower+Up"),
"devicebuttons/simpad_lower_up",
"datebook", "nextView()",
diff --git a/libopie2/opiecore/device/odevice_simpad.h b/libopie2/opiecore/device/odevice_simpad.h
index 3287ee8..1848151 100644
--- a/libopie2/opiecore/device/odevice_simpad.h
+++ b/libopie2/opiecore/device/odevice_simpad.h
@@ -32,13 +32,15 @@
#include <opie2/odevice.h>
/* QT */
#include <qwindowsystem_qws.h>
-using namespace Opie;
+namespace Opie {
+namespace Core {
+namespace Private {
class SIMpad : public ODevice, public QWSServer::KeyboardFilter
{
protected:
virtual void init();
virtual void initButtons();
@@ -75,7 +77,11 @@ struct s_button {
char *fpressedservice;
char *fpressedaction;
char *fheldservice;
char *fheldaction;
};
+}
+}
+}
+
#endif
diff --git a/libopie2/opiecore/device/odevice_yopy.cpp b/libopie2/opiecore/device/odevice_yopy.cpp
index d241db8..f7a4025 100644
--- a/libopie2/opiecore/device/odevice_yopy.cpp
+++ b/libopie2/opiecore/device/odevice_yopy.cpp
@@ -50,13 +50,14 @@ _;:,     .>    :=|. This program is free software; you can
#include <sys/time.h>
#include <unistd.h>
#ifndef QT_NO_SOUND
#include <linux/soundcard.h>
#endif
-using namespace Opie;
+using namespace Opie::Core;
+using namespace Opie::Core::Private;
struct yopy_button yopy_buttons [] = {
{ Qt::Key_F10, QT_TRANSLATE_NOOP( "Button", "Action Button" ),
"devicebuttons/yopy_action",
"datebook", "nextView()",
"today", "raise()" },
diff --git a/libopie2/opiecore/device/odevice_yopy.h b/libopie2/opiecore/device/odevice_yopy.h
index be8f62c..7d85479 100644
--- a/libopie2/opiecore/device/odevice_yopy.h
+++ b/libopie2/opiecore/device/odevice_yopy.h
@@ -29,14 +29,15 @@ _;:,     .>    :=|. This program is free software; you can
#ifndef ODEVICE_YOPY
#define ODEVICE_YOPY
#include <opie2/odevice.h>
-using namespace Opie;
-
+namespace Opie {
+namespace Core {
+namespace Private {
class Yopy : public ODevice
{
protected:
virtual void init();
virtual void initButtons();
@@ -56,7 +57,11 @@ struct yopy_button
char *fpressedservice;
char *fpressedaction;
char *fheldservice;
char *fheldaction;
};
+}
+}
+}
+
#endif
diff --git a/libopie2/opiecore/device/odevice_zaurus.cpp b/libopie2/opiecore/device/odevice_zaurus.cpp
index 8ab3cbe..0d21f26 100644
--- a/libopie2/opiecore/device/odevice_zaurus.cpp
+++ b/libopie2/opiecore/device/odevice_zaurus.cpp
@@ -50,13 +50,14 @@ _;:, .> :=|. This program is free software; you can
#include <sys/time.h>
#include <unistd.h>
#ifndef QT_NO_SOUND
#include <linux/soundcard.h>
#endif
-using namespace Opie;
+using namespace Opie::Core;
+using namespace Opie::Core::Private;
struct z_button z_buttons [] = {
{ Qt::Key_F9, QT_TRANSLATE_NOOP("Button", "Calendar Button"),
"devicebuttons/z_calendar",
"datebook", "nextView()",
"today", "raise()" },
diff --git a/libopie2/opiecore/device/odevice_zaurus.h b/libopie2/opiecore/device/odevice_zaurus.h
index f5c5172..ffb648f 100644
--- a/libopie2/opiecore/device/odevice_zaurus.h
+++ b/libopie2/opiecore/device/odevice_zaurus.h
@@ -42,14 +42,16 @@
#define OD_IO(type,number) OD_IOC(0,type,number,0)
#define OD_IOW(type,number,size) OD_IOC(1,type,number,sizeof(size))
#define OD_IOR(type,number,size) OD_IOC(2,type,number,sizeof(size))
#define OD_IORW(type,number,size) OD_IOC(3,type,number,sizeof(size))
-using namespace Opie;
+namespace Opie {
+namespace Core {
+namespace Private {
class Zaurus : public ODevice
{
protected:
virtual void init();
virtual void initButtons();
@@ -89,8 +91,10 @@ struct z_button {
char *pix;
char *fpressedservice;
char *fpressedaction;
char *fheldservice;
char *fheldaction;
};
-
+}
+}
+}
#endif
diff --git a/libopie2/opiecore/device/odevicebutton.cpp b/libopie2/opiecore/device/odevicebutton.cpp
index 0b593d5..a081b7f 100644
--- a/libopie2/opiecore/device/odevicebutton.cpp
+++ b/libopie2/opiecore/device/odevicebutton.cpp
@@ -30,22 +30,28 @@
#include <qpixmap.h>
#include <qstring.h>
#include <qpe/qcopenvelope_qws.h>
#include <opie2/odevicebutton.h>
-using namespace Opie;
+
+namespace Opie {
+namespace Core {
+namespace Private {
class OQCopMessageData
{
public:
QCString m_channel;
QCString m_message;
QByteArray m_data;
};
+}
+using namespace Opie::Core;
+using namespace Opie::Core::Private;
OQCopMessage::OQCopMessage()
: d ( 0 )
{
init ( QCString(), QCString(), QByteArray());
}
@@ -121,14 +127,14 @@ void OQCopMessage::setMessage ( const QCString &m )
void OQCopMessage::setData ( const QByteArray &data )
{
d->m_data = data;
}
-/*! \class Opie::ODeviceButton
- \brief The Opie::ODeviceButton class represents a physical user mappable button on a Qtopia device.
+/*! \class Opie::Core::ODeviceButton
+ \brief The Opie::Core::ODeviceButton class represents a physical user mappable button on a Qtopia device.
This class represents a physical button on a Qtopia device. A
device may have "user programmable" buttons.
The location and number of buttons will vary from device to
device. userText() and pixmap() may be used to describe this button
to the user in help documentation.
@@ -241,6 +247,9 @@ void ODeviceButton::setFactoryPresetHeldAction(const OQCopMessage& action)
}
void ODeviceButton::setHeldAction(const OQCopMessage& action)
{
m_HeldAction = action;
}
+
+}
+}
diff --git a/libopie2/opiecore/device/odevicebutton.h b/libopie2/opiecore/device/odevicebutton.h
index a66b88f..4000144 100644
--- a/libopie2/opiecore/device/odevicebutton.h
+++ b/libopie2/opiecore/device/odevicebutton.h
@@ -20,16 +20,18 @@
#ifndef DEVICE_BUTTON_H
#define DEVICE_BUTTON_H
#include <qpixmap.h>
#include <qstring.h>
-class OQCopMessageData;
-namespace Opie
-{
+namespace Opie{
+namespace Core{
+namespace Private {
+class OQCopMessageData;
+}
class OQCopMessage
{
public:
OQCopMessage ( );
OQCopMessage ( const OQCopMessage &copy );
@@ -49,13 +51,13 @@ public:
bool send ( );
private:
void init ( const QCString &m_channel, const QCString &message, const QByteArray &args );
- OQCopMessageData *d;
+ Private::OQCopMessageData *d;
class Private;
Private* m_data;
};
/**
@@ -101,8 +103,9 @@ class ODeviceButton
OQCopMessage m_HeldAction;
class Private;
Private *d;
};
}
+}
#endif
diff --git a/libopie2/opiecore/oapplication.cpp b/libopie2/opiecore/oapplication.cpp
index d340c0e..e2f6e82 100644
--- a/libopie2/opiecore/oapplication.cpp
+++ b/libopie2/opiecore/oapplication.cpp
@@ -31,24 +31,31 @@
#include <opie2/oconfig.h>
#include <opie2/odebug.h>
#include <signal.h>
#include <stdio.h>
+using namespace Opie::Core;
+
+
OApplication* OApplication::_instance = 0;
/**************************************************************************************************
* OApplicationPrivate
**************************************************************************************************/
+namespace Opie {
+namespace Core {
+namespace Private {
class OApplicationPrivate
{
public:
OApplicationPrivate() {};
~OApplicationPrivate() {};
};
+}
/**************************************************************************************************
* OApplication
**************************************************************************************************/
@@ -81,13 +88,13 @@ OConfig* OApplication::config()
return _config;
}
void OApplication::init()
{
- d = new OApplicationPrivate();
+ d = new Private::OApplicationPrivate();
if ( !OApplication::_instance )
{
OApplication::_instance = this;
/* register SIGSEGV handler to give programs an option
* to exit gracefully, e.g. save or close devices or files.
@@ -122,6 +129,8 @@ void OApplication::setTitle( const QString& title ) const
mainWidget()->setCaption( QString(_appname) + QString( " - " ) + title );
else
mainWidget()->setCaption( _appname );
}
}
+}
+}
diff --git a/libopie2/opiecore/oapplication.h b/libopie2/opiecore/oapplication.h
index cc506a2..c1e32a6 100644
--- a/libopie2/opiecore/oapplication.h
+++ b/libopie2/opiecore/oapplication.h
@@ -27,19 +27,23 @@
Boston, MA 02111-1307, USA.
*/
#ifndef OAPPLICATION_H
#define OAPPLICATION_H
-#define oApp OApplication::oApplication()
+#define oApp Opie::Core::OApplication::oApplication()
#include <qpe/qpeapplication.h>
-
+namespace Opie {
+namespace Core {
+namespace Private {
class OApplicationPrivate;
+} // private class
+
class OConfig;
class OApplication : public QPEApplication
{
Q_OBJECT
@@ -95,10 +99,13 @@ class OApplication : public QPEApplication
void init();
private:
const QCString _appname;
static OApplication* _instance;
OConfig* _config;
- OApplicationPrivate* d;
+ Private::OApplicationPrivate* d;
};
+} // Core
+} // Opie
+
#endif // OAPPLICATION_H
diff --git a/libopie2/opiecore/oconfig.cpp b/libopie2/opiecore/oconfig.cpp
index fb5eabb..05d8070 100644
--- a/libopie2/opiecore/oconfig.cpp
+++ b/libopie2/opiecore/oconfig.cpp
@@ -35,12 +35,14 @@
#include <qcolor.h>
/* OPIE */
#include <opie2/oconfig.h>
+using namespace Opie::Core;
+
OConfig::OConfig( const QString &name, Domain domain )
:Config( name, domain )
{
qDebug( "OConfig::OConfig()" );
}
diff --git a/libopie2/opiecore/oconfig.h b/libopie2/opiecore/oconfig.h
index becf70d..29c1f86 100644
--- a/libopie2/opiecore/oconfig.h
+++ b/libopie2/opiecore/oconfig.h
@@ -37,12 +37,15 @@
#include <qpe/config.h>
class QColor;
class QFont;
+namespace Opie {
+namespace Core {
+
/**
* A Configuration class based on the Qtopia @ref Config class
* featuring additional handling of color and font entries
*/
class OConfig : public Config
@@ -59,22 +62,27 @@ class OConfig : public Config
* dynamically created objects.
*/
virtual ~OConfig();
/**
* @returns the name of the current group.
* The current group is used for searching keys and accessing entries.
+ * @todo make const
*/
const QString& group() { return git.key(); };
/**
* @returns a @ref QColor entry or a @a default value if the key is not found.
*/
QColor readColorEntry( const QString& key, const QColor* pDefault ) const;
/**
* @returns a @ref QFont value or a @a default value if the key is not found.
*/
QFont readFontEntry( const QString& key, const QFont* pDefault ) const;
+
+private:
+ class Private;
+ Private *d;
};
/**
* @brief Helper class for easier use of OConfig groups.
*
* Careful programmers always set the group of a
@@ -133,9 +141,14 @@ class OConfigGroupSaver
private:
OConfig* _config;
QString _oldgroup;
OConfigGroupSaver( const OConfigGroupSaver& );
OConfigGroupSaver& operator=( const OConfigGroupSaver& );
+
+ class Private;
+ Private *d;
};
+}
+}
#endif // OCONFIG_H
diff --git a/libopie2/opiecore/odebug.cpp b/libopie2/opiecore/odebug.cpp
index a40ef53..cac985b 100644
--- a/libopie2/opiecore/odebug.cpp
+++ b/libopie2/opiecore/odebug.cpp
@@ -62,13 +62,14 @@
#include <string.h>
#ifndef OPIE_NO_BACKTRACE
#include <execinfo.h>
#endif
-
+namespace Opie {
+namespace Core {
/*======================================================================================
* debug levels
*======================================================================================*/
enum DebugLevels {
ODEBUG_INFO = 0,
@@ -611,10 +612,14 @@ void odClearDebugConfig()
/*
delete oDebug_data->config;
oDebug_data->config = 0;
*/
}
+
#ifdef OPIE_NO_DEBUG
#define odDebug ondDebug
#define odBacktrace ondBacktrace
#endif
+
+}
+} \ No newline at end of file
diff --git a/libopie2/opiecore/odebug.h b/libopie2/opiecore/odebug.h
index 85941fd..a5c9ded 100644
--- a/libopie2/opiecore/odebug.h
+++ b/libopie2/opiecore/odebug.h
@@ -44,12 +44,15 @@ class QSize;
class QRect;
class QRegion;
class QStringList;
class QColor;
class QBrush;
+namespace Opie {
+namespace Core {
+
class odbgstream;
class ondbgstream;
#ifdef __GNUC__
#define o_funcinfo "[" << __PRETTY_FUNCTION__ << "] "
#else
@@ -391,12 +394,16 @@ class ondbgstream {
ondbgstream& operator<<( const QSize & ) { return *this; }
ondbgstream& operator<<( const QRect & ) { return *this; }
ondbgstream& operator<<( const QRegion & ) { return *this; }
ondbgstream& operator<<( const QStringList & ) { return *this; }
ondbgstream& operator<<( const QColor & ) { return *this; }
ondbgstream& operator<<( const QBrush & ) { return *this; }
+
+private:
+ class Private;
+ Private *d;
};
/*======================================================================================
* related functions
*======================================================================================*/
@@ -469,6 +476,8 @@ void odClearDebugConfig();
#define odDebug ondDebug
#define odBacktrace ondBacktrace
#endif
#endif
+}
+}
diff --git a/libopie2/opiecore/oglobal.cpp b/libopie2/opiecore/oglobal.cpp
index 1aa206e..ea02058 100644
--- a/libopie2/opiecore/oglobal.cpp
+++ b/libopie2/opiecore/oglobal.cpp
@@ -35,12 +35,14 @@
#include <qpe/qpeapplication.h>
#include <qpe/storage.h>
#include <unistd.h>
#include <sys/types.h>
+using namespace Opie::Core;
+
static const char Base64EncMap[64] =
{
0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48,
0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50,
0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,
0x59, 0x5A, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66,
@@ -309,24 +311,24 @@ QByteArray OGlobal::decodeBase64( const QByteArray& in) {
return out;
}
bool OGlobal::isAppLnkFileName( const QString& str )
{
- if (str.length()==0||str.at(str.length()-1)==QDir::separator()) return false;
+ if (str.isEmpty()||str.at(str.length()-1)==QDir::separator()) return false;
return str.startsWith(MimeType::appsFolderName()+QDir::separator());
}
/* ToDo:
* This fun should check the document-path value for the mounted media
* which has to be implemented later. this moment we just check for a
* mounted media name.
*/
bool OGlobal::isDocumentFileName( const QString& file )
{
- if (file.length()==0||file.at(file.length()-1)==QDir::separator()) return false;
+ if (file.isEmpty()||file.at(file.length()-1)==QDir::separator()) return false;
if (file.startsWith(QPEApplication::documentDir()+QDir::separator())) return true;
StorageInfo si;
QList< FileSystem > fl = si.fileSystems();
FileSystem*fs;
for (fs = fl.first();fs!=0;fs=fl.next()) {
if (fs->isRemovable()&&file.startsWith(fs->name()+QDir::separator()))
diff --git a/libopie2/opiecore/oglobal.h b/libopie2/opiecore/oglobal.h
index aeee75e..e6a6c46 100644
--- a/libopie2/opiecore/oglobal.h
+++ b/libopie2/opiecore/oglobal.h
@@ -49,12 +49,17 @@
// You're right. I deleted global as the base class. -mickeyl
class QFile;
class QString;
class DateFormat;
+
+
+
+namespace Opie {
+namespace Core {
/**
*\brief OGlobal contains a list of generic functions
*
* The class OGlobal contains small utility functions
* which might be useful for other applications to use. It features access
* to the global device config and specialized functions to get information
@@ -143,9 +148,12 @@ public:
static QGuardedPtr<QWidget>* builtinRunning();
//@}
private:
static OConfig* _config;
static OConfig* _qpe_config;
+ class Private;
+ Private *d;
};
-
+}
+}
#endif // OGLOBAL_H
diff --git a/libopie2/opiecore/oglobalsettings.cpp b/libopie2/opiecore/oglobalsettings.cpp
index 192e55b..f34c531 100644
--- a/libopie2/opiecore/oglobalsettings.cpp
+++ b/libopie2/opiecore/oglobalsettings.cpp
@@ -41,12 +41,15 @@
#include <qdir.h>
/* UNIX */
#include <stdlib.h>
+
+using namespace Opie::Core;
+
QString* OGlobalSettings::s_desktopPath = 0;
QString* OGlobalSettings::s_autostartPath = 0;
QString* OGlobalSettings::s_trashPath = 0;
QString* OGlobalSettings::s_documentPath = 0;
QFont *OGlobalSettings::_generalFont = 0;
QFont *OGlobalSettings::_fixedFont = 0;
diff --git a/libopie2/opiecore/oglobalsettings.h b/libopie2/opiecore/oglobalsettings.h
index e3ac148..8eea709 100644
--- a/libopie2/opiecore/oglobalsettings.h
+++ b/libopie2/opiecore/oglobalsettings.h
@@ -33,12 +33,15 @@
#define OGLOBALSETTINGS_H
#include <qstring.h>
#include <qcolor.h>
#include <qfont.h>
+/**
+ * \todo make real const values
+ */
#define OPIE_DEFAULT_SINGLECLICK true
#define OPIE_DEFAULT_INSERTTEAROFFHANDLES true
#define OPIE_DEFAULT_AUTOSELECTDELAY -1
#define OPIE_DEFAULT_CHANGECURSOR true
#define OPIE_DEFAULT_LARGE_CURSOR false
#define OPIE_DEFAULT_VISUAL_ACTIVATE true
@@ -46,12 +49,15 @@
//FIXME: There's still a whole lot of stuff in here which has to be revised
//FIXME: before public usage... lack of time to do it at once - so it will
//FIXME: happen step-by-step. ML.
// we should not habe too much configure options!!!!!! -zecke
+namespace Opie {
+namespace Core {
+
/**
* Access the OPIE global configuration settings.
*
*/
class OGlobalSettings
{
@@ -365,9 +371,15 @@ private:
static QColor * OpieGray;
static QColor * OpieBlue;
static QColor * OpieAlternate;
static QColor * OpieHighlight;
friend class OApplication;
+private:
+ class Private;
+ Private *d;
};
+}
+}
+
#endif
diff --git a/libopie2/opiecore/opiecore.pro b/libopie2/opiecore/opiecore.pro
index 523d6a7..ff3c036 100644
--- a/libopie2/opiecore/opiecore.pro
+++ b/libopie2/opiecore/opiecore.pro
@@ -6,30 +6,28 @@ HEADERS = oapplication.h \
odebug.h \
oglobal.h \
oglobalsettings.h \
oprocess.h \
oprocctrl.h \
osmartpointer.h \
- ostorageinfo.h \
- xmltree.h
+ ostorageinfo.h
SOURCES = oapplication.cpp \
oconfig.cpp \
odebug.cpp \
oglobal.cpp \
oglobalsettings.cpp \
oprocess.cpp \
oprocctrl.cpp \
- ostorageinfo.cpp \
- xmltree.cc
+ ostorageinfo.cpp
include ( device/device.pro )
INTERFACES =
TARGET = opiecore2
-VERSION = 1.8.5
+VERSION = 1.9.0
INCLUDEPATH += $(OPIEDIR)/include
DEPENDPATH += $(OPIEDIR)/include
!contains( platform, x11 ) {
LIBS = -lqpe
include ( $(OPIEDIR)/include.pro )
diff --git a/libopie2/opiecore/oprocctrl.cpp b/libopie2/opiecore/oprocctrl.cpp
index 0403526..46708ba 100644
--- a/libopie2/opiecore/oprocctrl.cpp
+++ b/libopie2/opiecore/oprocctrl.cpp
@@ -38,12 +38,14 @@
#include <unistd.h>
#include <assert.h>
#include <qsocketnotifier.h>
#include "oprocctrl.h"
+using namespace Opie::Core::Private;
+
OProcessController *OProcessController::theOProcessController = 0;
struct sigaction OProcessController::oldChildHandlerData;
bool OProcessController::handlerSet = false;
OProcessController::OProcessController()
diff --git a/libopie2/opiecore/oprocctrl.h b/libopie2/opiecore/oprocctrl.h
index 44b8a48..4922ba2 100644
--- a/libopie2/opiecore/oprocctrl.h
+++ b/libopie2/opiecore/oprocctrl.h
@@ -31,15 +31,20 @@
#include <qvaluelist.h>
#include <qtimer.h>
#include "oprocess.h"
-class OProcessControllerPrivate;
class QSocketNotifier;
+
+namespace Opie {
+namespace Core {
+namespace Private {
+class OProcessControllerPrivate;
+
/**
* @short Used internally by @ref OProcess
* @internal
* @author Christian Czezakte <e9025461@student.tuwien.ac.at>
*
* A class for internal use by OProcess only. -- Exactly one instance
@@ -112,10 +117,13 @@ private:
OProcessController( const OProcessController& );
OProcessController& operator= ( const OProcessController& );
OProcessControllerPrivate *d;
};
+}
+}
+}
#endif
diff --git a/libopie2/opiecore/oprocess.cpp b/libopie2/opiecore/oprocess.cpp
index 6349c83..dfde74a 100644
--- a/libopie2/opiecore/oprocess.cpp
+++ b/libopie2/opiecore/oprocess.cpp
@@ -58,24 +58,29 @@ _;:,     .>    :=|. This program is free software; you can
#include <sys/select.h>
#endif
#ifdef HAVE_INITGROUPS
#include <grp.h>
#endif
+using namespace Opie::Core::Private;
+
+namespace Opie {
+namespace Core {
+namespace Private {
class OProcessPrivate
{
public:
OProcessPrivate() : useShell( false )
{ }
bool useShell;
QMap<QString, QString> env;
QString wd;
QCString shell;
};
-
+}
OProcess::OProcess( QObject *parent, const char *name )
: QObject( parent, name )
{
init ( );
}
@@ -938,6 +943,9 @@ int OProcess::processPID( const QString& process )
else
{
//qDebug( "process '%s' not found", (const char*) process );
return 0;
}
}
+
+}
+}
diff --git a/libopie2/opiecore/oprocess.h b/libopie2/opiecore/oprocess.h
index 1a2472d..eb56b03 100644
--- a/libopie2/opiecore/oprocess.h
+++ b/libopie2/opiecore/oprocess.h
@@ -40,13 +40,19 @@ _;:,     .>    :=|. This program is free software; you can
#include <sys/types.h> // for pid_t
#include <sys/wait.h>
#include <signal.h>
#include <unistd.h>
class QSocketNotifier;
+
+namespace Opie {
+namespace Core {
+namespace Private {
+class OProcessController;
class OProcessPrivate;
+}
/**
* Child process invocation, monitoring and control.
*
* @sect General usage and features
*
@@ -394,12 +400,13 @@ public:
* had been specified in the call to @ref start().
*/
bool closeStderr();
/**
* Lets you see what your arguments are for debugging.
+ * \todo make const
*/
const QValueList<QCString> &args()
{
return arguments;
}
@@ -713,13 +720,13 @@ protected:
int input_total; // total length of input_data
/**
* @ref OProcessController is a friend of OProcess because it has to have
* access to various data members.
*/
- friend class OProcessController;
+ friend class Private::OProcessController;
private:
/**
* Searches for a valid shell.
* Here is the algorithm used for finding an executable shell:
*
@@ -742,11 +749,13 @@ private:
// Disallow assignment and copy-construction
OProcess( const OProcess& );
OProcess& operator= ( const OProcess& );
private:
void init ( );
- OProcessPrivate *d;
+ Private::OProcessPrivate *d;
};
+}
+}
#endif
diff --git a/libopie2/opiecore/osmartpointer.h b/libopie2/opiecore/osmartpointer.h
index 9000e71..8f9da7f 100644
--- a/libopie2/opiecore/osmartpointer.h
+++ b/libopie2/opiecore/osmartpointer.h
@@ -37,12 +37,13 @@ _;:, .> :=|. This program is free software; you can
* \brief smart pointer and reference counter
* \author Rajko Albrecht
*
*/
namespace Opie {
+namespace Core {
//! simple reference counter class
class ORefCount {
protected:
//! reference count member
long m_RefCount;
@@ -137,9 +138,10 @@ public:
bool operator! () const { return (ptr == NULL); }
//! support if (!pointer)" as non const
bool operator! () { return (ptr == NULL); }
};
}
+}
#endif
diff --git a/libopie2/opiecore/ostorageinfo.cpp b/libopie2/opiecore/ostorageinfo.cpp
index aa8d2fc..8fcf5fc 100644
--- a/libopie2/opiecore/ostorageinfo.cpp
+++ b/libopie2/opiecore/ostorageinfo.cpp
@@ -26,12 +26,14 @@
Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
*/
#include <opie2/ostorageinfo.h>
+using namespace Opie::Core;
+
OStorageInfo::OStorageInfo( QObject *parent )
: StorageInfo( parent )
{
}
OStorageInfo::~OStorageInfo()
diff --git a/libopie2/opiecore/ostorageinfo.h b/libopie2/opiecore/ostorageinfo.h
index 740fa85..4e1097f 100644
--- a/libopie2/opiecore/ostorageinfo.h
+++ b/libopie2/opiecore/ostorageinfo.h
@@ -29,12 +29,15 @@
#ifndef OSTORAGE_H
#define OSTORAGE_H
#include <qpe/storage.h>
+namespace Opie {
+namespace Core {
+
class OStorageInfo : public StorageInfo
{
Q_OBJECT
public:
@@ -53,10 +56,15 @@ class OStorageInfo : public StorageInfo
QString sdPath() const;
/**
* @returns the mount path of the MMC (MultiMedia) card
*
**/
QString mmcPath() const;
+private:
+ class Private;
+ Private *d;
};
+}
+}
#endif // OSTORAGE_H
diff --git a/libopie2/opiecore/xmltree.cc b/libopie2/opiecore/xmltree.cc
deleted file mode 100644
index 059791b..0000000
--- a/libopie2/opiecore/xmltree.cc
+++ b/dev/null
@@ -1,323 +0,0 @@
-/* This file is part of the KDE project
- Copyright (C) 2001 Simon Hausmann <hausmann@kde.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
- the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
-*/
-
-#include <opie2/xmltree.h>
-
-#include <qpe/stringutil.h>
-
-#include <qxml.h>
-
-#include <assert.h>
-
-using namespace Opie;
-
-XMLElement::XMLElement()
- : m_parent( 0 ), m_next( 0 ), m_prev( 0 ), m_first( 0 ), m_last( 0 )
-{
-}
-
-XMLElement::~XMLElement()
-{
- XMLElement *n = m_first;
-
- while ( n )
- {
- XMLElement *tmp = n;
- n = n->m_next;
- delete tmp;
- }
-}
-
-void XMLElement::appendChild( XMLElement *child )
-{
- if ( child->m_parent )
- child->m_parent->removeChild( child );
-
- child->m_parent = this;
-
- if ( m_last )
- m_last->m_next = child;
-
- child->m_prev = m_last;
-
- if ( !m_first )
- m_first = child;
-
- m_last = child;
-}
-
-void XMLElement::insertAfter( XMLElement *newChild, XMLElement *refChild )
-{
- assert( newChild != refChild );
-
- if ( refChild == m_last )
- {
- appendChild( newChild );
- return;
- }
-
- assert( refChild );
- assert( refChild->m_parent );
- assert( refChild->m_parent == this );
-
- if ( newChild->m_parent && newChild != refChild )
- newChild->m_parent->removeChild( newChild );
-
- newChild->m_parent = this;
-
- XMLElement *next = refChild->m_next;
-
- refChild->m_next = newChild;
-
- newChild->m_prev = refChild;
- newChild->m_next = next;
-
- if ( next )
- next->m_prev = newChild;
-}
-
-QString XMLElement::attribute( const QString &attr ) const
-{
- AttributeMap::ConstIterator it = m_attributes.find( attr );
- if ( it == m_attributes.end() )
- return QString::null;
- return it.data();
-}
-
-void XMLElement::setAttribute( const QString &attr, const QString &value )
-{
- m_attributes.replace( attr, value );
-}
-
-void XMLElement::insertBefore( XMLElement *newChild, XMLElement *refChild )
-{
- assert( refChild );
- assert( refChild->m_parent );
- assert( refChild->m_parent == this );
- assert( newChild != refChild );
-
- if ( newChild->m_parent && newChild != refChild )
- newChild->m_parent->removeChild( newChild );
-
- newChild->m_parent = this;
-
- XMLElement *prev = refChild->m_prev;
-
- refChild->m_prev = newChild;
-
- newChild->m_prev = prev;
- newChild->m_next = refChild;
-
- if ( prev )
- prev->m_next = newChild;
-
- if ( refChild == m_first )
- m_first = newChild;
-}
-
-void XMLElement::removeChild( XMLElement *child )
-{
- if ( child->m_parent != this )
- return;
-
- if ( m_first == child )
- m_first = child->m_next;
-
- if ( m_last == child )
- m_last = child->m_prev;
-
- if ( child->m_prev )
- child->m_prev->m_next = child->m_next;
-
- if ( child->m_next )
- child->m_next->m_prev = child->m_prev;
-
- child->m_parent = 0;
- child->m_prev = 0;
- child->m_next = 0;
-}
-
-void XMLElement::save( QTextStream &s, uint indent )
-{
- if ( !m_value.isEmpty() )
- {
- s << Qtopia::escapeString( m_value );
- return;
- }
-
- for ( uint i = 0; i < indent; ++i )
- s << " ";
-
- s << "<" << m_tag;
-
- if ( !m_attributes.isEmpty() )
- {
- s << " ";
- AttributeMap::ConstIterator it = m_attributes.begin();
- AttributeMap::ConstIterator end = m_attributes.end();
- for (; it != end; ++it )
- {
- s << it.key() << "=\"" << Qtopia::escapeString( it.data() ) << "\"";
- s << " ";
- }
- }
-
- if ( m_last )
- {
- if ( ( m_first && !m_first->value().isEmpty() ) || !m_parent )
- s << ">";
- else
- s << ">" << endl;
-
- int newIndent = indent;
- if ( m_parent )
- newIndent++;
-
- XMLElement *n = m_first;
- while ( n )
- {
- n->save( s, newIndent );
- n = n->nextChild();
- }
-
- if ( m_last && m_last->value().isEmpty() && m_parent )
- for ( uint i = 0; i < indent; ++i )
- s << " ";
-
- if ( m_parent )
- s << "</" << m_tag << ">" << endl;
- }
- else
- s << "/>" << endl;
-}
-
-class Handler : public QXmlDefaultHandler
-{
-public:
- Handler() : m_node( 0 ), m_root( 0 ) {}
-
- XMLElement *root() const { return m_root; }
-
- virtual bool startDocument();
- virtual bool endDocument();
- virtual bool startElement( const QString &ns, const QString &ln, const QString &qName,
- const QXmlAttributes &attr );
- virtual bool endElement( const QString &ns, const QString &ln, const QString &qName );
- virtual bool characters( const QString &ch );
-
-private:
- XMLElement *m_node;
- XMLElement *m_root;
-};
-
-bool Handler::startDocument()
-{
- m_root = m_node = new XMLElement;
-
- return true;
-}
-
-bool Handler::endDocument()
-{
- return m_root == m_node;
-}
-
-bool Handler::startElement( const QString &, const QString &, const QString &qName,
- const QXmlAttributes &attr )
-{
- XMLElement *bm = new XMLElement;
-
- XMLElement::AttributeMap attributes;
- for ( int i = 0; i < attr.length(); ++i )
- attributes[ attr.qName( i ) ] = attr.value( i );
-
- bm->setAttributes( attributes );
-
- bm->setTagName( qName );
-
- m_node->appendChild( bm );
- m_node = bm;
-
- return true;
-}
-
-bool Handler::endElement( const QString &, const QString &, const QString & )
-{
- if ( m_node == m_root )
- return false;
-
- m_node = m_node->parent();
- return true;
-}
-
-bool Handler::characters( const QString &ch )
-{
- XMLElement *textNode = new XMLElement;
- textNode->setValue( ch );
- m_node->appendChild( textNode );
- return true;
-}
-
-XMLElement *XMLElement::namedItem( const QString &name )
-{
- XMLElement *e = m_first;
-
- for (; e; e = e->nextChild() )
- if ( e->tagName() == name )
- return e;
-
- return 0;
-}
-
-XMLElement *XMLElement::clone() const
-{
- XMLElement *res = new XMLElement;
-
- res->setTagName( m_tag );
- res->setValue( m_value );
- res->setAttributes( m_attributes );
-
- XMLElement *e = m_first;
- for (; e; e = e->m_next )
- res->appendChild( e->clone() );
-
- return res;
-}
-
-XMLElement *XMLElement::load( const QString &fileName )
-{
- QFile f( fileName );
- if ( !f.open( IO_ReadOnly ) )
- return 0;
-
- QTextStream stream( &f );
- stream.setEncoding( QTextStream::UnicodeUTF8 );
- QXmlInputSource src( stream );
- QXmlSimpleReader reader;
- Handler handler;
-
- reader.setFeature( "http://trolltech.com/xml/features/report-whitespace-only-CharData", false );
- reader.setContentHandler( &handler );
- reader.parse( src );
-
- return handler.root();;
-}
-
-/* vim: et sw=4
- */
diff --git a/libopie2/opiecore/xmltree.h b/libopie2/opiecore/xmltree.h
deleted file mode 100644
index 4b6bdfa..0000000
--- a/libopie2/opiecore/xmltree.h
+++ b/dev/null
@@ -1,119 +0,0 @@
-/* This file is part of the KDE project
- Copyright (C) 2000,2001 Simon Hausmann <hausmann@kde.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
- the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
-*/
-
-
-#ifndef __bookmarks_h__
-#define __bookmarks_h__
-
-#include <qstring.h>
-#include <qmap.h>
-#include <qtextstream.h>
-
-namespace Opie
-{
-
-/**
- * A small xml lib written by Simon Hausmann.
- */
-class XMLElement
-{
-public:
- typedef QMap<QString, QString> AttributeMap;
-
- /**
- * The constructor of XMLElement
- */
- XMLElement();
- ~XMLElement();
-
- /** appendChild appends a child to the XMLElement behind the last element.
- * The ownership of the child get's transfered to the
- * this XMLElement.
- * If child is already the child of another parent
- * it's get removed from the other parent first.
- */
- void appendChild( XMLElement *child );
-
- /** inserts newChild after refChild. If newChild is the child
- * of another parent the child will get removed.
- * The ownership of child gets transfered.
- *
- */
- void insertAfter( XMLElement *newChild, XMLElement *refChild );
-
- /** same as insertAfter but the element get's inserted before refChild.
- *
- */
- void insertBefore( XMLElement *newChild, XMLElement *refChild );
-
- /** removeChild removes the child from the XMLElement.
- * The ownership gets dropped. You need to delete the
- * child yourself.
- */
- void removeChild( XMLElement *child );
-
- /** parent() returns the parent of this XMLElement
- * If there is no parent 0l gets returned
- */
- XMLElement *parent() const { return m_parent; }
- XMLElement *firstChild() const { return m_first; }
- XMLElement *nextChild() const { return m_next; }
- XMLElement *prevChild() const { return m_prev; }
- XMLElement *lastChild() const { return m_last; }
-
- void setTagName( const QString &tag ) { m_tag = tag; }
- QString tagName() const { return m_tag; }
-
- void setValue( const QString &val ) { m_value = val; }
- QString value() const { return m_value; }
-
- void setAttributes( const AttributeMap &attrs ) { m_attributes = attrs; }
- AttributeMap attributes() const { return m_attributes; }
- AttributeMap &attributes() { return m_attributes; }
-
- QString attribute( const QString & ) const;
- void setAttribute( const QString &attr, const QString &value );
- void save( QTextStream &stream, uint indent = 0 );
-
- XMLElement *namedItem( const QString &name );
-
- XMLElement *clone() const;
-
- static XMLElement *load( const QString &fileName );
-
-private:
- QString m_tag;
- QString m_value;
- AttributeMap m_attributes;
-
- XMLElement *m_parent;
- XMLElement *m_next;
- XMLElement *m_prev;
- XMLElement *m_first;
- XMLElement *m_last;
-
- XMLElement( const XMLElement &rhs );
- XMLElement &operator=( const XMLElement &rhs );
- class Private;
- Private* d;
-};
-
-} // namespace Opie
-
-#endif