X-Git-Url: https://vcs.maemo.org/git/?a=blobdiff_plain;f=colorflood%2Fsrc%2Fwindow.cpp;fp=colorflood%2Fsrc%2Fwindow.cpp;h=63b485b148a76eea9bd2cdab2403bfacd4725dca;hb=9b18c910c4298b3f2a3667bd6fa16ca7231dfc04;hp=625022b78c5609475979efdcf6677bb3939369f2;hpb=7fad5c68e4b5b62c8bd69778758bf0f0d7edfc94;p=colorflood diff --git a/colorflood/src/window.cpp b/colorflood/src/window.cpp index 625022b..63b485b 100644 --- a/colorflood/src/window.cpp +++ b/colorflood/src/window.cpp @@ -15,6 +15,7 @@ #include #include #include +#include #include "window.hpp" #include "colorbuttons.hpp" #include "field.hpp" @@ -26,12 +27,6 @@ Window::Window () setWindowTitle("Color Flood"); setWindowIcon(QIcon(":/images/icon_48x48.png")); -#if defined(Q_WS_HILDON) || defined(Q_WS_MAEMO_5) - setWindowState(windowState() | Qt::WindowFullScreen); -#else - setFixedSize(800, 480); -#endif - //new FullScreenExitButton(this); int turns; @@ -53,11 +48,22 @@ Window::Window () updateTurns(turns); + QHBoxLayout *secondary = new QHBoxLayout; + QPushButton *toggleFS = new QPushButton(QIcon("/usr/share/icons/hicolor/64x64/hildon/general_fullsize.png"), tr("Toggle fullscreen"), this); + QObject::connect(toggleFS, SIGNAL(pressed()), this, SLOT(toggleFullscreen())); + QPushButton *newGame = new QPushButton(tr("New game"), this); + QObject::connect(newGame, SIGNAL(pressed()), field, SLOT(randomize())); + + secondary->addWidget(newGame); + secondary->addWidget(toggleFS); + QVBoxLayout *vl = new QVBoxLayout; vl->addWidget(colorButtons); vl->setAlignment(colorButtons, Qt::AlignRight | Qt::AlignTop); vl->addWidget(turnsLabel); vl->setAlignment(turnsLabel, Qt::AlignRight | Qt::AlignTop); + vl->addLayout(secondary); + vl->setAlignment(secondary, Qt::AlignRight | Qt::AlignBottom); QHBoxLayout *hl = new QHBoxLayout; hl->addWidget(field); @@ -65,6 +71,11 @@ Window::Window () hl->addLayout(vl); setLayout(hl); + + QSettings settings; + + if (settings.value("fullscreen", true).toBool()) + showFullScreen(); } void Window::updateTurns (int turns) @@ -74,3 +85,16 @@ void Window::updateTurns (int turns) .arg(turns) .arg(field->getNumTurnsOfSize(field->getSize()))); } + +void Window::toggleFullscreen () +{ + bool isFullscreen = windowState() & Qt::WindowFullScreen; + + QSettings settings; + settings.setValue("fullscreen", !isFullscreen); + + if (isFullscreen) + showNormal(); + else + showFullScreen(); +}