summaryrefslogtreecommitdiff
authorzecke <zecke>2004-02-20 14:01:52 (UTC)
committer zecke <zecke>2004-02-20 14:01:52 (UTC)
commit7d53a7812716011023e3d1242d0503f4fcaadc26 (patch) (side-by-side diff)
treed0d905332a766ab11d78e58ed8c27ed28cc126f4
parent132f53a7c9cdc3e14a040558f80bb45ceb3ca9b5 (diff)
downloadopie-7d53a7812716011023e3d1242d0503f4fcaadc26.zip
opie-7d53a7812716011023e3d1242d0503f4fcaadc26.tar.gz
opie-7d53a7812716011023e3d1242d0503f4fcaadc26.tar.bz2
some more global functions for ODP
Alwin will do a clean room implementation on most of the content
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/opiecore/oglobal.h77
1 files changed, 75 insertions, 2 deletions
diff --git a/libopie2/opiecore/oglobal.h b/libopie2/opiecore/oglobal.h
index 2dc4f9e..012f240 100644
--- a/libopie2/opiecore/oglobal.h
+++ b/libopie2/opiecore/oglobal.h
@@ -9,41 +9,114 @@
:`=1 )Y*s>-.--   : the terms of the GNU Library General Public
.="- .-=="i,     .._ License as published by the Free Software
 - .   .-<_>     .<> Foundation; either version 2 of the License,
     ._= =}       : or (at your option) any later version.
    .%`+i>       _;_.
    .i_,=:_.      -<s. This program 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 OGLOBAL_H
#define OGLOBAL_H
+#include <qpe/global.h>
+#include <qpe/timestring.h>
+
#include <opie2/oconfig.h>
+#include <static.h>
//FIXME Is it wise or even necessary to inherit OGlobal from Global?
// once we totally skip libqpe it should ideally swallow Global -zecke
// You're right. I deleted global as the base class. -mickeyl
-class OGlobal
+
+class QFile;
+class QString;
+/**
+ *\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
+ * out of this config like Weekstart or Owner name.
+ *
+ * @todo ODP implement the things from Global which are good
+ */
+class OGlobal : public Global
{
- public:
+public:
+
+ // how do they relate to our Document Idea
+ /** @name Document System related functions
+ *
+ */
+ //@{
+ static bool isAppLnkFileName( const QString& str );
+ static bool isDocumentFileName( const QString& file );
+ //@}
+
+ /** @name File Operations
+ * File operations provided by OGlobal
+ */
+ //@{
+ static QString tempDirPath();
+ static QString homeDirPath();
+ static QString tempFileName( const QString& );
+ static bool renameFile( const QString& from, const QString& to );
+ static bool truncateFile( QFile &f, off_t size );
+ //@}
+
+
+ static QString generateUuid();
+
+ /** @name Convert Content
+ * Convert Content of a QByteArray
+ */
+ //@{
+ static QByteArray encodeBase64(const QByteArray& );
+ static QByteArray decodeBase64(const QByteArray& );
+ //@}
+
//FIXME Do we want to put that into OApplication as in KApplication? -zecke
// We already have a per-application config in OApplication
// ( accessed through oApp->config() ), but this one is the global one! -mickeyl
+ /** @name Config and Owner related Information
+ *
+ */
+ //@{
static OConfig* config();
+ static QString ownerName();
+ static bool weekStartsOnMonday();
+ static bool useAMPM();
+#ifdef ODP
+#error "Fix dateFormat"
+ /**
+ * For Qt3/Qt4 we can use QDate::toString(OGlobal::dateFormat)
+ * See if we need to use the function with String in it
+ * Anyway this is the future
+ * for now still use TimeString!
+ */
+ static DateFormat dateFormat();
+#endif
+
+ static void setWeekStartsOnMonday( bool );
+ static void setUseAMPM( bool );
+ static void setDateFormat( const DateFormat& );
+ //@}
+
+private:
static OConfig* _config;
};
#endif // OGLOBAL_H