comparison main/main.cpp @ 231:e8a7a935128e

* add splash screen
author Chris Cannam
date Wed, 23 Jan 2008 11:38:34 +0000
parents a3011df6ddad
children 99fa3387dfef
comparison
equal deleted inserted replaced
230:1000222cd8f1 231:e8a7a935128e
30 #include <QLocale> 30 #include <QLocale>
31 #include <QSettings> 31 #include <QSettings>
32 #include <QIcon> 32 #include <QIcon>
33 #include <QSessionManager> 33 #include <QSessionManager>
34 #include <QDir> 34 #include <QDir>
35 #include <QSplashScreen>
35 36
36 #include <iostream> 37 #include <iostream>
37 #include <signal.h> 38 #include <signal.h>
38 39
39 #ifdef HAVE_FFTW3F 40 #ifdef HAVE_FFTW3F
227 228
228 QApplication::setOrganizationName("sonic-visualiser"); 229 QApplication::setOrganizationName("sonic-visualiser");
229 QApplication::setOrganizationDomain("sonicvisualiser.org"); 230 QApplication::setOrganizationDomain("sonicvisualiser.org");
230 QApplication::setApplicationName(QApplication::tr("Sonic Visualiser")); 231 QApplication::setApplicationName(QApplication::tr("Sonic Visualiser"));
231 232
233 QPixmap pixmap(":/icons/sv-splash.png");
234 QSplashScreen splash(pixmap);
235
236 QSettings settings;
237 settings.beginGroup("MainWindow");
238
239 if (settings.value("showsplash", true).toBool()) {
240 splash.show();
241 application.processEvents();
242 }
243
232 QIcon icon; 244 QIcon icon;
233 int sizes[] = { 16, 22, 24, 32, 48, 64, 128 }; 245 int sizes[] = { 16, 22, 24, 32, 48, 64, 128 };
234 for (int i = 0; i < sizeof(sizes)/sizeof(sizes[0]); ++i) { 246 for (int i = 0; i < sizeof(sizes)/sizeof(sizes[0]); ++i) {
235 icon.addFile(QString(":icons/sv-%1x%2.png").arg(sizes[i]).arg(sizes[i])); 247 icon.addFile(QString(":icons/sv-%1x%2.png").arg(sizes[i]).arg(sizes[i]));
236 } 248 }
275 int width = available.width() * 2 / 3; 287 int width = available.width() * 2 / 3;
276 int height = available.height() / 2; 288 int height = available.height() / 2;
277 if (height < 450) height = available.height() * 2 / 3; 289 if (height < 450) height = available.height() * 2 / 3;
278 if (width > height * 2) width = height * 2; 290 if (width > height * 2) width = height * 2;
279 291
280 QSettings settings;
281 settings.beginGroup("MainWindow");
282 QSize size = settings.value("size", QSize(width, height)).toSize(); 292 QSize size = settings.value("size", QSize(width, height)).toSize();
283 gui->resize(size); 293 gui->resize(size);
284 if (settings.contains("position")) { 294 if (settings.contains("position")) {
285 gui->move(settings.value("position").toPoint()); 295 gui->move(settings.value("position").toPoint());
286 } 296 }
349 fftwf_import_wisdom_from_string(wisdom.toLocal8Bit().data()); 359 fftwf_import_wisdom_from_string(wisdom.toLocal8Bit().data());
350 } 360 }
351 settings.endGroup(); 361 settings.endGroup();
352 #endif 362 #endif
353 363
364 splash.finish(gui);
354 365
355 /* 366 /*
356 TipDialog tipDialog; 367 TipDialog tipDialog;
357 if (tipDialog.isOK()) { 368 if (tipDialog.isOK()) {
358 tipDialog.exec(); 369 tipDialog.exec();