diff options
Diffstat (limited to 'src/libs/dialogs/imagedialog.h')
-rw-r--r-- | src/libs/dialogs/imagedialog.h | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/src/libs/dialogs/imagedialog.h b/src/libs/dialogs/imagedialog.h new file mode 100644 index 00000000..275765cd --- /dev/null +++ b/src/libs/dialogs/imagedialog.h @@ -0,0 +1,100 @@ +/* ============================================================ + * + * This file is a part of digiKam project + * http://www.digikam.org + * + * Date : 2008-03-13 + * Description : image files selector dialog. + * + * Copyright (C) 2008 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 IMAGEDIALOG_H +#define IMAGEDIALOG_H + +// KDE includes. + +#include <kurl.h> +#include <kpreviewwidgetbase.h> + +// Local includes. + +#include "digikam_export.h" + +namespace Digikam +{ + +class ImageDialogPrivate; +class ImageDialogPreviewPrivate; + +class DIGIKAM_EXPORT ImageDialogPreview : public KPreviewWidgetBase +{ + TQ_OBJECT + + +public: + + ImageDialogPreview(TQWidget *parent=0); + ~ImageDialogPreview(); + + TQSize sizeHint() const; + +public slots: + + void showPreview(const KURL &url); + +private slots: + + void showPreview(); + void slotGotThumbnail(const KURL& url, const TQPixmap& pix); + void slotFailedThumbnail(const KURL& url); + void clearPreview(); + +private: + + void resizeEvent(TQResizeEvent *e); + +private: + + class ImageDialogPreviewPrivate *d; +}; + +// ------------------------------------------------------------------------ + +class DIGIKAM_EXPORT ImageDialog +{ + +public: + + ImageDialog(TQWidget* parent, const KURL &url, bool singleSelect=false, const TQString& caption=TQString()); + ~ImageDialog(); + + KURL url() const; + KURL::List urls() const; + + bool singleSelect() const; + TQString fileformats() const; + + static KURL::List getImageURLs(TQWidget* parent, const KURL& url, const TQString& caption=TQString()); + static KURL getImageURL(TQWidget* parent, const KURL& url, const TQString& caption=TQString()); + +private: + + ImageDialogPrivate* d; +}; + +} // namespace Digikam + +#endif /* IMAGEDIALOG_H */ |