4 #if defined(Q_OS_UNIX) && !defined(Q_OS_SYMBIAN)
10 #if defined(Q_OS_WIN32) || defined(Q_OS_SYMBIAN)
11 # define DORIAN_BASE "dorian"
13 # define DORIAN_BASE ".dorian"
17 # define DORIAN_ICON_PREFIX ":/icons/mac/"
18 #elif defined(Q_OS_SYMBIAN)
19 # define DORIAN_ICON_PREFIX ":/icons/symbian/"
21 # define DORIAN_ICON_PREFIX ":/icons/"
24 static const char *DORIAN_VERSION =
25 #include "pkg/version.txt"
28 #define DORIAN_LOG "dorian.txt"
31 # include <QtMaemo5/QMaemo5InformationBox>
33 # include <QMessageBox>
36 static Platform *theInstance;
38 Platform *Platform::instance()
41 theInstance = new Platform();
46 void Platform::close()
52 QString Platform::dbPath()
54 QString base(QDir::home().absoluteFilePath(DORIAN_BASE));
55 return QDir(base).absoluteFilePath("books.db");
58 QString Platform::icon(const QString &name)
60 QString iconName = QString(DORIAN_ICON_PREFIX) + name + ".png";
61 if (QFile(iconName).exists()) {
64 return QString(":/icons/") + name + ".png";
68 void Platform::restart(char *argv[])
70 #if defined(Q_OS_UNIX) && !defined(Q_OS_SYMBIAN)
71 extern char **environ;
72 execve(argv[0], argv, environ);
78 QString Platform::version()
80 return QString(DORIAN_VERSION);
83 QString Platform::downloadDir()
85 return QDir::home().absoluteFilePath("Books");
88 QString Platform::defaultFont()
90 #if defined(Q_WS_MAEMO_5) || defined(Q_WS_X11)
91 return QString("Serif");
92 #elif defined(Q_WS_MAC)
93 return QString("Hoefler Text");
94 #elif defined Q_WS_S60
95 return QString("Nokia Sans S60");
97 return QString("Times New Roman");
101 void Platform::information(const QString &label, QWidget *parent)
104 QMaemo5InformationBox::information(parent, label,
105 QMaemo5InformationBox::DefaultTimeout);
107 (void)QMessageBox::information(parent, QObject::tr("Dorian"), label,
112 void Platform::showBusy(QWidget *w, bool isBusy)
115 w->setAttribute(Qt::WA_Maemo5ShowProgressIndicator, isBusy);
122 QString Platform::traceFileName()
124 return QDir::home().absoluteFilePath(DORIAN_LOG);
127 int Platform::defaultZoom()
132 QString Platform::defaultOrientation()
135 return QString("portrait");
137 return QString("landscape");