SVN_SILENT made messages (.desktop file)
[kdegames.git] / bovo / gui / view.cc
blob43fd80128c432a3b5bc0749f116ff89a184f1a1e
1 /*******************************************************************
3 * This file is part of the KDE project "Bovo"
5 * Bovo is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2, or (at your option)
8 * any later version.
10 * Bovo is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with Bovo; see the file COPYING. If not, write to
17 * the Free Software Foundation, 51 Franklin Street, Fifth Floor,
18 * Boston, MA 02110-1301, USA.
20 ********************************************************************/
22 // Declaration include
23 #include "view.h"
25 // Qt Includes
26 #include <QtGui/QColor>
27 #include <QtGui/QGraphicsScene>
28 #include <QtGui/QPalette>
29 #include <QResizeEvent>
31 // Bovo includes
32 #include "scene.h"
34 namespace gui {
36 View::View(Scene* scene, const QColor& bgColor, QWidget *parent) : QGraphicsView(scene, parent),
37 m_scene(scene) {
38 // setCacheMode(QGraphicsView::CacheBackground);
39 QPalette bgPal;
40 bgPal.setColor(backgroundRole(), bgColor);
41 setPalette(bgPal);
42 setAutoFillBackground(true);
43 setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
44 setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
45 setMinimumSize(sizeHint());
46 resize(sizeHint());
47 setAlignment(Qt::AlignLeft | Qt::AlignTop);
50 void View::resizeEvent( QResizeEvent* ev ) {
51 fitInView(sceneRect(), Qt::KeepAspectRatio);
52 QGraphicsView::resizeEvent(ev);
55 QSize View::sizeHint() const {
56 return QSize(static_cast<int>(m_scene->width()),
57 static_cast<int>(m_scene->height()));
60 } /* namespace gui */