1 /*******************************************************************
3 * Copyright 2006-2007 Dmitry Suzdalev <dimsuz@gmail.com>
5 * This file is part of the KDE project "KReversi"
7 * KReversi is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2, or (at your option)
12 * KReversi is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with KReversi; see the file COPYING. If not, write to
19 * the Free Software Foundation, 51 Franklin Street, Fifth Floor,
20 * Boston, MA 02110-1301, USA.
22 ********************************************************************/
23 #ifndef KREVERSI_RENDERER_H
24 #define KREVERSI_RENDERER_H
31 class KReversiRenderer
34 static KReversiRenderer
* self();
36 void renderBackground( QPainter
*p
, const QRectF
& r
) const;
37 void renderBoard( QPainter
*p
, const QRectF
& r
) const;
38 void renderBoardLabels( QPainter
*p
, const QRectF
& r
) const;
39 void renderPossibleMove( QPainter
*p
, const QRectF
& r
) const;
40 void renderElement (QPainter
*p
, const QString
& elementid
, const QRectF
& r
) const;
41 QSize
defaultBoardSize() const;
42 QSize
defaultChipSize() const;
44 // disable copy - it's singleton
46 KReversiRenderer( const KReversiRenderer
& );
47 KReversiRenderer
& operator=( const KReversiRenderer
& );
51 * Svg renderer instance
53 KSvgRenderer
*m_renderer
;
54 KPixmapCache
*m_cache
;