-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmain.cpp
75 lines (67 loc) · 2.11 KB
/
main.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/****************************************************************************
** Copyright (C) 2008 Petar Toushkov <peter dot toushkov at gmail.com>
** Copyright (C) 2008 Omer Bahri Gordebak <gordebak at gmail.com>
**
** Additional help, code and insights by:
** adamvert - from http://ubuntuforums.org/
** zebulon M - from http://ubuntuforums.org/
**
** Artwork by Edward Solorukhin <[email protected]>
**
** Parts of the following code are from the Phrasis project:
**
** http://code.google.com/p/phrasis/
**
** and are
**
** Copyright (C) 2006 Jacob R Rideout <[email protected]>
** All rights reserved.
**
** This file may be used under the terms of the GNU General Public
** License version 2.0 as published by the Free Software Foundation
** and appearing in the file LICENSE.GPL included in the packaging of
** this file.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
****************************************************************************/
#include <QApplication>
#include <QSplashScreen>
#include <QTimer>
#include <QtGui>
#include "textroom.h"
int main(int argc, char ** argv)
{
QApplication app(argc, argv);
app.setQuitOnLastWindowClosed(true);
app.setApplicationName("TextRoom");
// show splashscreen
#ifdef Q_OS_WIN32
QSettings settings(QDir::homePath()+QObject::tr("/Application Data/")+qApp->applicationName()+".ini", QSettings::IniFormat);
#else
QSettings settings;
#endif
QSplashScreen *splash = NULL;
if ( settings.value( "WindowState/ShowSplashScreen", true ).toBool() )
{
QPixmap splashpix(":/images/splash.jpg");
if (!splashpix.isNull())
{
splash = new QSplashScreen(splashpix);
splash->show();
splash->showMessage(QObject::tr("Loading... "), Qt::AlignBottom+Qt::AlignRight, QColor(128,128,128));
}
}
TextRoom *win = new TextRoom(NULL);
win->show();
if (splash)
{
QTimer *timer = new QTimer(win);
QObject::connect(timer, SIGNAL(timeout()), splash, SLOT(close()));
timer->start(2000);
timer->setSingleShot(true);
//splash->finish(win);
}
return app.exec();
}