• Skip to content
  • Skip to link menu
KDE 4.2 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

digikam

albumwidgetstack.h

Go to the documentation of this file.
00001 /* ============================================================
00002  *
00003  * This file is a part of digiKam project
00004  * http://www.digikam.org
00005  *
00006  * Date        : 2006-06-13
00007  * Description : A widget stack to embedded album content view
00008  *               or the current image preview.
00009  *
00010  * Copyright (C) 2006-2008 by Gilles Caulier <caulier dot gilles at gmail dot com>
00011  *
00012  * This program is free software; you can redistribute it
00013  * and/or modify it under the terms of the GNU General
00014  * Public License as published by the Free Software Foundation;
00015  * either version 2, or (at your option)
00016  * any later version.
00017  *
00018  * This program is distributed in the hope that it will be useful,
00019  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00020  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00021  * GNU General Public License for more details.
00022  *
00023  * ============================================================ */
00024 
00025 #ifndef ALBUMWIDGETSTACK_H
00026 #define ALBUMWIDGETSTACK_H
00027 
00028 // Qt includes.
00029 
00030 #include <QStackedWidget>
00031 #include <QByteArray>
00032 #include <QString>
00033 
00034 // KDE includes.
00035 
00036 #include <kurl.h>
00037 
00038 // Local includes.
00039 
00040 #include "digikam_export.h"
00041 #include "imageinfo.h"
00042 
00043 namespace Digikam
00044 {
00045 
00046 class AlbumIconView;
00047 class ImagePreviewView;
00048 class AlbumWidgetStackPriv;
00049 
00050 class DIGIKAM_EXPORT AlbumWidgetStack : public QStackedWidget
00051 {
00052 Q_OBJECT
00053 
00054 public:
00055 
00056     enum AlbumWidgetStackMode
00057     {
00058         PreviewAlbumMode=0,
00059         PreviewImageMode,
00060         WelcomePageMode,
00061         MediaPlayerMode
00062     };
00063 
00064 public:
00065 
00066     AlbumWidgetStack(QWidget *parent=0);
00067     ~AlbumWidgetStack();
00068 
00069     AlbumIconView    *albumIconView();
00070     ImagePreviewView *imagePreviewView();
00071 
00072     void setPreviewItem(const ImageInfo &info = ImageInfo(),
00073                         const ImageInfo &previous = ImageInfo(),
00074                         const ImageInfo &next = ImageInfo());
00075     int  previewMode();
00076     void setPreviewMode(int mode);
00077     void previewLoaded();
00078 
00079     void   increaseZoom();
00080     void   decreaseZoom();
00081     void   fitToWindow();
00082     void   toggleFitToWindowOr100();
00083     void   zoomTo100Percents();
00084     bool   maxZoom();
00085     bool   minZoom();
00086     void   setZoomFactor(double z);
00087     void   setZoomFactorSnapped(double z);
00088     double zoomFactor();
00089     double zoomMin();
00090     double zoomMax();
00091 
00092     void toggleShowBar(bool b);
00093 
00094 signals:
00095 
00096     void signalNextItem();
00097     void signalPrevItem();
00098     void signalEditItem();
00099     void signalDeleteItem();
00100     void signalToggledToPreviewMode(bool);
00101     void signalBack2Album();
00102     void signalSlideShow();
00103     void signalZoomFactorChanged(double);
00104     void signalInsert2LightTable();
00105     void signalUrlSelected(const KUrl&);
00106 
00107 public slots:
00108 
00109     void slotEscapePreview();
00110     void slotItemsUpdated(const KUrl::List&);
00111     void slotItemsAdded();
00112 
00113 private slots: 
00114 
00115     void slotZoomFactorChanged(double);
00116 
00117 private:
00118 
00119     void readSettings();
00120     void saveSettings();
00121     void updateThumbbar();
00122 
00123 private:
00124 
00125     AlbumWidgetStackPriv* d;
00126 };
00127 
00128 }  // namespace Digikam
00129 
00130 #endif /* ALBUMWIDGETSTACK_H */

digikam

Skip menu "digikam"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members

API Reference

Skip menu "API Reference"
  • digikam
Generated for API Reference by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal