5 #if defined(Q_OS_UNIX) && !defined(Q_OS_SYMBIAN)
11 #if defined(Q_OS_WIN32) || defined(Q_OS_SYMBIAN)
12 # define DORIAN_BASE "dorian"
14 # define DORIAN_BASE ".dorian"
18 # define DORIAN_ICON_PREFIX ":/icons/mac/"
19 #elif defined(Q_OS_SYMBIAN)
20 # define DORIAN_ICON_PREFIX ":/icons/symbian/"
22 # define DORIAN_ICON_PREFIX ":/icons/"
25 static const char *DORIAN_VERSION =
26 #include "pkg/version.txt"
29 #define DORIAN_LOG "dorian.txt"
32 # include <QtMaemo5/QMaemo5InformationBox>
34 # include <QMessageBox>
37 static Platform *theInstance;
39 Platform *Platform::instance()
42 theInstance = new Platform();
47 void Platform::close()
53 QString Platform::dbPath()
55 QString base(QDir::home().absoluteFilePath(DORIAN_BASE));
56 return QDir(base).absoluteFilePath("books.db");
59 QString Platform::icon(const QString &name)
61 QString iconName = QString(DORIAN_ICON_PREFIX) + name + ".png";
62 if (QFile(iconName).exists()) {
65 return QString(":/icons/") + name + ".png";
69 void Platform::restart(char *argv[])
71 #if defined(Q_OS_UNIX) && !defined(Q_OS_SYMBIAN)
72 extern char **environ;
73 execve(argv[0], argv, environ);
79 QString Platform::version()
81 return QString(DORIAN_VERSION);
84 QString Platform::downloadDir()
87 if (QDir("E:/").exists()) {
92 return QDir::home().absoluteFilePath("Books");
96 QString Platform::defaultFont()
98 #if defined(Q_WS_MAEMO_5) || defined(Q_WS_X11)
99 return QString("Serif");
100 #elif defined(Q_WS_MAC)
101 return QString("Hoefler Text");
102 #elif defined Q_WS_S60
103 return QString("Nokia Sans S60");
105 return QString("Times New Roman");
109 void Platform::information(const QString &label, QWidget *parent)
112 QMaemo5InformationBox::information(parent, label,
113 QMaemo5InformationBox::DefaultTimeout);
115 (void)QMessageBox::information(parent, QObject::tr("Dorian"), label,
120 void Platform::showBusy(QWidget *w, bool isBusy)
123 w->setAttribute(Qt::WA_Maemo5ShowProgressIndicator, isBusy);
130 QString Platform::traceFileName()
132 return QDir::home().absoluteFilePath(DORIAN_LOG);
135 int Platform::defaultZoom()
140 QString Platform::defaultOrientation()
143 return QString("portrait");
145 return QString("landscape");