File indexing completed on 2023-12-03 07:53:50
0001 /* 0002 SPDX-FileCopyrightText: 2007 Paolo Capriotti <p.capriotti@gmail.com> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "kbsrenderer.h" 0008 #include "coord.h" 0009 // KDEGames 0010 #include <kdegames_version.h> 0011 #include <KgThemeProvider> 0012 #include <KGameRenderedItem> 0013 0014 static KgThemeProvider *provider() 0015 { 0016 KgThemeProvider *prov = new KgThemeProvider; 0017 #if KDEGAMES_VERSION >= QT_VERSION_CHECK(7, 4, 0) 0018 prov->discoverThemes(QStringLiteral("pictures")); 0019 #else 0020 prov->discoverThemes("appdata", QStringLiteral("pictures")); 0021 #endif 0022 return prov; 0023 } 0024 0025 KBSRenderer::KBSRenderer() 0026 : KGameRenderer(provider()) 0027 { 0028 } 0029 0030 KBSRenderer::~KBSRenderer() 0031 { 0032 } 0033 0034 void KBSRenderer::resize(int sz) 0035 { 0036 resize(QSize(sz, sz)); 0037 } 0038 0039 void KBSRenderer::resize(const QSize& sz) 0040 { 0041 if (m_size != sz) { 0042 m_size = sz; 0043 } 0044 } 0045 0046 QSize KBSRenderer::size() const 0047 { 0048 return m_size; 0049 } 0050 0051 Coord KBSRenderer::toLogical(const QPointF& p) const 0052 { 0053 int x = static_cast<int>(p.x() / m_size.width()); 0054 int y = static_cast<int>(p.y() / m_size.height()); 0055 0056 return Coord(x, y); 0057 } 0058 0059 QPointF KBSRenderer::toReal(const Coord& c) const 0060 { 0061 return QPointF(c.x * m_size.width(), c.y * m_size.height()); 0062 }