File indexing completed on 2024-05-05 16:39:03

0001 /* This file is part of the KDE project
0002    Copyright (C) 1998-2003 Carsten Pfeiffer <pfeiffer@kde.org>
0003 
0004    This program is free software; you can redistribute it and/or
0005    modify it under the terms of the GNU General Public
0006    License as published by the Free Software Foundation, version 2.
0007 
0008    This program is distributed in the hope that it will be useful,
0009    but WITHOUT ANY WARRANTY; without even the implied warranty of
0010    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0011     General Public License for more details.
0012 
0013    You should have received a copy of the GNU General Public License
0014    along with this program; see the file COPYING.  If not, write to
0015    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0016    Boston, MA 02110-1301, USA.
0017 */
0018 
0019 #ifndef KUICKDATA_H
0020 #define KUICKDATA_H
0021 
0022 #include <QColor>
0023 #include <QString>
0024 
0025 #include "imdata.h"
0026 
0027 
0028 // values are also used as combobox index defaultswidget.*
0029 enum Rotation { ROT_0=0, ROT_90=1, ROT_180=2, ROT_270=3 };
0030 
0031 // hmm, global declaration for now
0032 enum FlipMode { FlipNone = 0, FlipHorizontal = 1, FlipVertical = 2 };
0033 
0034 class KuickData
0035 {
0036 public:
0037     KuickData();
0038     ~KuickData();
0039 
0040     void    load();
0041     void    save();
0042 
0043 
0044     ImData  *idata;
0045 
0046     QString     fileFilter;
0047     uint    slideDelay;
0048     uint        slideshowCycles;
0049     bool        slideshowFullscreen :1;
0050     bool        slideshowStartAtFirst :1;
0051 
0052     int     brightnessSteps;
0053     int     contrastSteps;
0054     int     gammaSteps;
0055 
0056     int     scrollSteps;
0057     float   zoomSteps;
0058     int     modificationCacheSize;
0059 
0060     bool startInLastDir      :1;
0061 
0062     bool    preloadImage     :1;
0063     bool    autoRotation     :1;
0064     bool    fullScreen       :1;
0065 
0066     // default image modifications
0067     bool    isModsEnabled :1;
0068 
0069     bool    flipVertically   :1;
0070     bool    flipHorizontally :1;
0071     bool    downScale        :1;
0072     bool    upScale          :1;
0073     int     maxUpScale;
0074     int     maxWidth;
0075     int     maxHeight;
0076     float   maxZoomFactor;
0077     uint        maxCachedImages;
0078     Rotation    rotation;
0079 
0080     QColor      backgroundColor;
0081 
0082 
0083 };
0084 
0085 
0086 extern KuickData* kdata;
0087 
0088 #endif