File indexing completed on 2025-04-27 03:58:10
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2004-09-07 0007 * Description : thumbnails size interface 0008 * 0009 * SPDX-FileCopyrightText: 2005-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0010 * 0011 * SPDX-License-Identifier: GPL-2.0-or-later 0012 * 0013 * ============================================================ */ 0014 0015 #include "thumbnailsize.h" 0016 0017 // KDE includes 0018 0019 #include <kconfiggroup.h> 0020 0021 namespace Digikam 0022 { 0023 0024 static const QString s_configUseLargeThumbsEntry(QLatin1String("Use Large Thumbs")); 0025 static bool s_useLargeThumbs = false; 0026 0027 ThumbnailSize::ThumbnailSize() 0028 { 0029 m_Size = Medium; 0030 } 0031 0032 ThumbnailSize::ThumbnailSize(int size) 0033 { 0034 m_Size = size; 0035 } 0036 0037 ThumbnailSize::ThumbnailSize(const ThumbnailSize& thumbsize) 0038 { 0039 m_Size = thumbsize.m_Size; 0040 } 0041 0042 ThumbnailSize::~ThumbnailSize() 0043 { 0044 } 0045 0046 ThumbnailSize& ThumbnailSize::operator=(const ThumbnailSize& thumbsize) 0047 { 0048 m_Size = thumbsize.m_Size; 0049 0050 return *this; 0051 } 0052 0053 bool ThumbnailSize::operator==(const ThumbnailSize& thumbsize) const 0054 { 0055 return (m_Size == thumbsize.m_Size); 0056 } 0057 0058 bool ThumbnailSize::operator!=(const ThumbnailSize& thumbsize) const 0059 { 0060 return (m_Size != thumbsize.m_Size); 0061 } 0062 0063 int ThumbnailSize::size() const 0064 { 0065 return m_Size; 0066 } 0067 0068 // -- Static methods --------------------------------------------------------- 0069 0070 void ThumbnailSize::setUseLargeThumbs(bool val) 0071 { 0072 s_useLargeThumbs = val; 0073 } 0074 0075 bool ThumbnailSize::getUseLargeThumbs() 0076 { 0077 return s_useLargeThumbs; 0078 } 0079 0080 void ThumbnailSize::readSettings(const KConfigGroup& group) 0081 { 0082 setUseLargeThumbs(group.readEntry(s_configUseLargeThumbsEntry, false)); 0083 } 0084 0085 void ThumbnailSize::saveSettings(KConfigGroup& group, bool val) 0086 { 0087 group.writeEntry(s_configUseLargeThumbsEntry, val); 0088 } 0089 0090 int ThumbnailSize::maxThumbsSize() 0091 { 0092 if (s_useLargeThumbs) 0093 { 0094 return ThumbnailSize::HD; 0095 } 0096 0097 return ThumbnailSize::Huge; 0098 } 0099 0100 } // namespace Digikam