KVIrc 5.2.6
Developer APIs
KviImageDialog.h
Go to the documentation of this file.
1#ifndef _KVI_IMAGEDIALOG_H_
2#define _KVI_IMAGEDIALOG_H_
3//=============================================================================
4//
5// File : KviImageDialog.h
6// Creation date : Sun Dec 22 2002 19:42 by Szymon Stefanek
7//
8// This file is part of the KVIrc IRC client distribution
9// Copyright (C) 2002-2010 Szymon Stefanek (pragma at kvirc dot net)
10//
11// This program is FREE software. You can redistribute it and/or
12// modify it under the terms of the GNU General Public License
13// as published by the Free Software Foundation; either version 2
14// of the License, or (at your option) any later version.
15//
16// This program is distributed in the HOPE that it will be USEFUL,
17// but WITHOUT ANY WARRANTY; without even the implied warranty of
18// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19// See the GNU General Public License for more details.
20//
21// You should have received a copy of the GNU General Public License
22// along with this program. If not, write to the Free Software Foundation,
23// Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
24//
25//=============================================================================
26
27#include "kvi_settings.h"
28#include "KviDynamicToolTip.h"
29#include "KviTalListWidget.h"
30
31#include <QDialog>
32#include <QComboBox>
33#include <QTimer>
34#include <QStringList>
35#include <QList>
36
38{
39public:
41 QString m_szImageId;
42 QString m_szTipText;
43
44public:
45 KviImageDialogItem(KviTalListWidget * b, const QPixmap & thumb, const QString & szFile, const QString & image_id, const QString & szTipText = QString(), bool bIsFolder = false)
46 : KviTalListWidgetPixmap(b, thumb, szFile), m_bIsFolder(bIsFolder), m_szImageId(image_id), m_szTipText(szTipText){};
48
49public:
50 bool isFolder() { return m_bIsFolder; };
51 const QString & imageId() { return m_szImageId; };
52 const QString & tipText() { return m_szTipText; };
53 virtual int height(const KviTalListWidget *) const;
54 virtual int width(const KviTalListWidget *) const;
55 void paint(QPainter * p) override;
56};
57
58#define KID_TYPE_BUILTIN_IMAGES_SMALL 1
59#define KID_TYPE_FULL_PATH 2
60
61#define KID_TYPE_ALL 3
62
63class KVIRC_API KviImageDialog : public QDialog
64{
65 Q_OBJECT
66public:
67 KviImageDialog(QWidget * par,
68 const QString & szCaption = QString(),
69 int types = KID_TYPE_ALL,
70 int initialType = 0,
71 const QString & szInitialDir = QString(),
72 int maxPreviewFileSize = 256000, bool modal = false);
74
75protected:
76 QComboBox * m_pTypeComboBox;
77 QList<int> * m_pTypeList;
79 QTimer * m_pTimer;
81
83
84 QString m_szJobPath;
85 QStringList m_lJobFileList;
86
88
90
92
94
95public:
96 const QString & selectedImage() { return m_szSelectedImage; };
97protected:
98 void startJob(int type, const QString & szInitialPath = QString());
99 void jobTerminated();
100 void closeEvent(QCloseEvent * e) override;
101protected slots:
102 void okClicked();
103 void cancelClicked();
104 void heartbeat();
105 void jobTypeSelected(int index);
106 void itemDoubleClicked(QListWidgetItem * it);
107 void tipRequest(KviDynamicToolTip *, const QPoint & pnt);
108};
109
110#endif //_KVI_IMAGEDIALOG_H_
#define KID_TYPE_ALL
Definition KviImageDialog.h:61
Definition KviDynamicToolTip.h:50
void paint(QPainter *p) override
Definition KviImageDialog.cpp:54
virtual int height(const KviTalListWidget *) const
Definition KviImageDialog.cpp:39
QString m_szTipText
Definition KviImageDialog.h:42
bool isFolder()
Definition KviImageDialog.h:50
bool m_bIsFolder
Definition KviImageDialog.h:40
~KviImageDialogItem()
Definition KviImageDialog.h:47
const QString & imageId()
Definition KviImageDialog.h:51
QString m_szImageId
Definition KviImageDialog.h:41
const QString & tipText()
Definition KviImageDialog.h:52
virtual int width(const KviTalListWidget *) const
Definition KviImageDialog.cpp:44
KviImageDialogItem(KviTalListWidget *b, const QPixmap &thumb, const QString &szFile, const QString &image_id, const QString &szTipText=QString(), bool bIsFolder=false)
Definition KviImageDialog.h:45
QStringList m_lJobFileList
Definition KviImageDialog.h:85
const QString & selectedImage()
Definition KviImageDialog.h:96
QComboBox * m_pTypeComboBox
Definition KviImageDialog.h:76
QTimer * m_pTimer
Definition KviImageDialog.h:79
QString m_szJobPath
Definition KviImageDialog.h:84
int m_iJobIndexHelper
Definition KviImageDialog.h:87
KviDynamicToolTip * m_pTip
Definition KviImageDialog.h:93
QList< int > * m_pTypeList
Definition KviImageDialog.h:77
QString m_szInitialPath
Definition KviImageDialog.h:91
int m_iMaxPreviewFileSize
Definition KviImageDialog.h:82
int m_iJobType
Definition KviImageDialog.h:80
QString m_szSelectedImage
Definition KviImageDialog.h:89
KviImageDialog(QWidget *par, const QString &szCaption=QString(), int types=KID_TYPE_ALL, int initialType=0, const QString &szInitialDir=QString(), int maxPreviewFileSize=256000, bool modal=false)
Definition KviImageDialog.cpp:93
KviTalListWidget * m_pListBox
Definition KviImageDialog.h:78
KviTalListWidgetPixmap(KviTalListWidget *listbox, const QPixmap &)
Definition KviTalListWidget.cpp:120
Definition KviTalListWidget.h:35
#define e
Definition detector.cpp:70
#define p
Definition detector.cpp:81
This file contains compile time settings.
#define KVIRC_API
Definition kvi_settings.h:127