You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
digikam/digikam/digikam/digikamview.h

195 lines
5.2 KiB

/* ============================================================
*
* This file is a part of digiKam project
* http://www.digikam.org
*
* Date : 2002-16-10
* Description : implementation of album view interface.
*
* Copyright (C) 2002-2005 by Renchi Raju <renchi@pooh.tam.uiuc.edu>
* Copyright (C) 2002-2009 by Gilles Caulier <caulier dot gilles at gmail dot com>
*
* 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, 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.
*
* ============================================================ */
#ifndef DIGIKAMVIEW_H
#define DIGIKAMVIEW_H
// TQt includes.
#include <tqhbox.h>
#include <tqstringlist.h>
#include <tqmap.h>
// Local includes.
#include "imageinfo.h"
class KURL;
namespace Digikam
{
class AlbumIconItem;
class AlbumSettings;
class Album;
class DigikamViewPriv;
class DigikamView : public TQHBox
{
TQ_OBJECT
public:
DigikamView(TQWidget *parent);
~DigikamView();
void applySettings();
void refreshView();
void clearHistory();
void getForwardHistory(TQStringList &titles);
void getBackwardHistory(TQStringList &titles);
void showSideBars();
void hideSideBars();
void setThumbSize(int size);
signals:
void signalAlbumSelected(bool val);
void signalTagSelected(bool val);
void signalImageSelected(const TQPtrList<ImageInfo>& list, bool, bool,
const KURL::List& listAll);
void signalNoCurrentItem();
void signalProgressBarMode(int, const TQString&);
void signalProgressValue(int);
void signalThumbSizeChanged(int);
void signalZoomChanged(double, int);
void signalTogglePreview(bool);
void signalGotoAlbumAndItem(AlbumIconItem *);
void signalGotoDateAndItem(AlbumIconItem *);
void signalGotoTagAndItem(int tagID);
void signalChangedTab(TQWidget*);
public slots:
// View Action slots
void slotZoomIn();
void slotZoomOut();
void slotZoomTo100Percents();
void slotFitToWindow();
void slotSlideShowAll();
void slotSlideShowSelection();
void slotSlideShowRecursive();
// Album action slots
void slotNewAlbum();
void slotSortAlbums(int order);
void slotDeleteAlbum();
void slotSelectAlbum(const KURL &url);
void slotAlbumPropsEdit();
void slotAlbumOpenInKonqui();
void slotAlbumRefresh();
void slotAlbumImportFolder();
void slotAlbumHistoryBack(int steps=1);
void slotAlbumHistoryForward(int steps=1);
void slotAlbumAdded(Album *album);
void slotAlbumDeleted(Album *album);
void slotAlbumRenamed(Album *album);
void slotAlbumSyncPicturesMetadata();
void slotAlbumSyncPicturesMetadataDone();
void slotAlbumSelected(Album* album);
void slotGotoAlbumAndItem(AlbumIconItem* iconItem);
void slotGotoDateAndItem(AlbumIconItem* iconItem);
void slotGotoTagAndItem(int tagID);
// Tag action slots
void slotNewTag();
void slotDeleteTag();
void slotEditTag();
// Search action slots
void slotNewQuickSearch();
void slotNewAdvancedSearch();
// Image action slots
void slotImageLightTable();
void slotImageAddToLightTable();
void slotImagePreview();
void slotImageEdit();
void slotImageExifOrientation(int orientation);
void slotImageRename(AlbumIconItem* iconItem=0);
void slotImageDelete();
void slotImageDeletePermanently();
void slotImageDeletePermanentlyDirectly();
void slotImageTrashDirectly();
void slotSelectAll();
void slotSelectNone();
void slotSelectInvert();
void slotSortImages(int order);
// Image Rating slots
void slotAssignRating(int rating);
void slotAssignRatingNoStar();
void slotAssignRatingOneStar();
void slotAssignRatingTwoStar();
void slotAssignRatingThreeStar();
void slotAssignRatingFourStar();
void slotAssignRatingFiveStar();
// Tools action slots.
void slotLightTable();
private:
void toggleZoomActions();
void setupConnections();
void loadViewState();
void saveViewState();
void changeAlbumFromHistory(Album *album, TQWidget *widget);
void imageEdit(AlbumIconItem* iconItem=0);
void slideShow(ImageInfoList &infoList);
private slots:
void slotAllAlbumsLoaded();
void slotAlbumsCleared();
void slotAlbumHighlight();
void slotImageSelected();
void slotTogglePreviewMode(AlbumIconItem *iconItem=0);
void slotDispatchImageSelected();
void slotItemsInfoFromAlbums(const ImageInfoList&);
void slotLeftSidebarChangedTab(TQWidget* w);
void slotFirstItem(void);
void slotPrevItem(void);
void slotNextItem(void);
void slotLastItem(void);
void slotToggledToPreviewMode(bool);
void slotEscapePreview();
void slotCancelSlideShow();
void slotThumbSizeEffect();
void slotZoomFactorChanged(double);
private:
DigikamViewPriv* d;
};
} // namespace Digikam
#endif // DIGIKAMVIEW_H