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()
86 return QDir::home().absoluteFilePath("Books");
89 QString Platform::defaultFont()
91 #if defined(Q_WS_MAEMO_5) || defined(Q_WS_X11)
92 return QString("Serif");
93 #elif defined(Q_WS_MAC)
94 return QString("Hoefler Text");
95 #elif defined Q_WS_S60
96 return QString("Nokia Sans S60");
98 return QString("Times New Roman");
102 void Platform::information(const QString &label, QWidget *parent)
105 QMaemo5InformationBox::information(parent, label,
106 QMaemo5InformationBox::DefaultTimeout);
108 (void)QMessageBox::information(parent, QObject::tr("Dorian"), label,
113 void Platform::showBusy(QWidget *w, bool isBusy)
116 w->setAttribute(Qt::WA_Maemo5ShowProgressIndicator, isBusy);
123 QString Platform::traceFileName()
125 return QDir::home().absoluteFilePath(DORIAN_LOG);
128 int Platform::defaultZoom()
133 QString Platform::defaultOrientation()
136 return QString("portrait");
138 return QString("landscape");