1 /* ============================================================ 2 * 3 * This file is a part of digiKam project 4 * https://www.digikam.org 5 * 6 * Date : 2004-09-07 7 * Description : thumbnails size interface 8 * 9 * Copyright (C) 2005-2021 by Gilles Caulier <caulier dot gilles at gmail dot com> 10 * 11 * This program is free software; you can redistribute it 12 * and/or modify it under the terms of the GNU General 13 * Public License as published by the Free Software Foundation; 14 * either version 2, or (at your option) 15 * any later version. 16 * 17 * This program is distributed in the hope that it will be useful, 18 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 * GNU General Public License for more details. 21 * 22 * ============================================================ */ 23 24 #include "thumbnailsize.h" 25 26 // KDE includes 27 28 #include <kconfiggroup.h> 29 30 namespace Digikam 31 { 32 33 static const QString s_configUseLargeThumbsEntry(QLatin1String("Use Large Thumbs")); 34 static bool s_useLargeThumbs = false; 35 ThumbnailSize()36ThumbnailSize::ThumbnailSize() 37 { 38 m_Size = Medium; 39 } 40 ThumbnailSize(int size)41ThumbnailSize::ThumbnailSize(int size) 42 { 43 m_Size = size; 44 } 45 ThumbnailSize(const ThumbnailSize & thumbsize)46ThumbnailSize::ThumbnailSize(const ThumbnailSize& thumbsize) 47 { 48 m_Size = thumbsize.m_Size; 49 } 50 ~ThumbnailSize()51ThumbnailSize::~ThumbnailSize() 52 { 53 } 54 operator =(const ThumbnailSize & thumbsize)55ThumbnailSize& ThumbnailSize::operator=(const ThumbnailSize& thumbsize) 56 { 57 m_Size = thumbsize.m_Size; 58 59 return *this; 60 } 61 operator ==(const ThumbnailSize & thumbsize) const62bool ThumbnailSize::operator==(const ThumbnailSize& thumbsize) const 63 { 64 return (m_Size == thumbsize.m_Size); 65 } 66 operator !=(const ThumbnailSize & thumbsize) const67bool ThumbnailSize::operator!=(const ThumbnailSize& thumbsize) const 68 { 69 return (m_Size != thumbsize.m_Size); 70 } 71 size() const72int ThumbnailSize::size() const 73 { 74 return m_Size; 75 } 76 77 // -- Static methods --------------------------------------------------------- 78 setUseLargeThumbs(bool val)79void ThumbnailSize::setUseLargeThumbs(bool val) 80 { 81 s_useLargeThumbs = val; 82 } 83 getUseLargeThumbs()84bool ThumbnailSize::getUseLargeThumbs() 85 { 86 return s_useLargeThumbs; 87 } 88 readSettings(const KConfigGroup & group)89void ThumbnailSize::readSettings(const KConfigGroup& group) 90 { 91 setUseLargeThumbs(group.readEntry(s_configUseLargeThumbsEntry, false)); 92 } 93 saveSettings(KConfigGroup & group,bool val)94void ThumbnailSize::saveSettings(KConfigGroup& group, bool val) 95 { 96 group.writeEntry(s_configUseLargeThumbsEntry, val); 97 } 98 maxThumbsSize()99int ThumbnailSize::maxThumbsSize() 100 { 101 if (s_useLargeThumbs) 102 { 103 return ThumbnailSize::HD; 104 } 105 106 return ThumbnailSize::Huge; 107 } 108 109 } // namespace Digikam 110