diff options
author | Michele Calgaro <michele.calgaro@yahoo.it> | 2025-02-10 15:10:13 +0900 |
---|---|---|
committer | Michele Calgaro <michele.calgaro@yahoo.it> | 2025-02-13 11:44:42 +0900 |
commit | 8f8f84410cc591c85c5e83e0b3efdcda5fdbe42e (patch) | |
tree | f273a932ce048ef22ea9d9888b77ea8a2b8f3e33 /src/sq_thumbnailsize.h | |
parent | 424635023ee423826de12514b2fec7834b8deb7b (diff) | |
download | ksquirrel-8f8f8441.tar.gz ksquirrel-8f8f8441.zip |
Rename 'ksquirrel' folder to 'src'
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
(cherry picked from commit 203fcb8d90752b546c672c625927a136b959fcfb)
Diffstat (limited to 'src/sq_thumbnailsize.h')
-rw-r--r-- | src/sq_thumbnailsize.h | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/src/sq_thumbnailsize.h b/src/sq_thumbnailsize.h new file mode 100644 index 0000000..587ae39 --- /dev/null +++ b/src/sq_thumbnailsize.h @@ -0,0 +1,145 @@ +/* + copyright : (C) 2004 by Baryshev Dmitry + KSquirrel - image viewer for KDE +*/ + +/* +Gwenview - A simple image viewer for KDE +Copyright (c) 2000-2003 Aur?lien G?teau + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +*/ +#ifndef SQ_THUMBNAILSIZE_H +#define SQ_THUMBNAILSIZE_H + +#include <tqstring.h> +#include <tqobject.h> +#include <tqsize.h> + +/** + * This is an "enum-like" class : an enum with cast operators to convert + * from/to string and a few other methods + */ +class SQ_ThumbnailSize : public TQObject +{ + public: + enum Size { Medium, Large, Huge }; + + SQ_ThumbnailSize(TQObject *parent, Size value); + SQ_ThumbnailSize(TQObject *parent, const TQString& str); + + void setExtended(bool); + bool extended() const; + + void setMargin(int); + int margin() const; + + void setPixelSize(const TQString &size); + + TQString pixelSizeString() const; + int pixelSize() const; + + TQSize extendedSize() const; + + int value() const; + TQString stringValue() const; + + static int biggest() { return 128; } + static int smallest() { return 48; } + + static SQ_ThumbnailSize* instance() { return m_instance; } + + private: + Size mValue; + bool m_extended; + int m_margin; + + static SQ_ThumbnailSize *m_instance; +}; + +inline +int SQ_ThumbnailSize::value() const +{ + return (int)mValue; +} + +inline +void SQ_ThumbnailSize::setExtended(bool ex) +{ + m_extended = ex; +} + +inline +bool SQ_ThumbnailSize::extended() const +{ + return m_extended; +} + +inline +void SQ_ThumbnailSize::setMargin(int m) +{ + m_margin = m; +} + +inline +int SQ_ThumbnailSize::margin() const +{ + return m_margin; +} + +inline +int SQ_ThumbnailSize::pixelSize() const +{ + switch (mValue) + { + case Medium: + return 64; + case Large: + return 96; + default: + return 128; + } +} + +inline +TQSize SQ_ThumbnailSize::extendedSize() const +{ + switch (mValue) + { + case Medium: + return TQSize(76, 108); + case Large: + return TQSize(108, 139); + default: + return TQSize(140, 170); + } +} + +inline +TQString SQ_ThumbnailSize::pixelSizeString() const +{ + switch (mValue) + { + case Medium: + return "medium"; + case Large: + return "large"; + default: + return "huge"; + } +} + +#endif |