summaryrefslogtreecommitdiff
path: root/noncore/multimedia/showimg/ImageFileSelector.h
Unidiff
Diffstat (limited to 'noncore/multimedia/showimg/ImageFileSelector.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/showimg/ImageFileSelector.h65
1 files changed, 32 insertions, 33 deletions
diff --git a/noncore/multimedia/showimg/ImageFileSelector.h b/noncore/multimedia/showimg/ImageFileSelector.h
index 2c346c4..798ebcc 100644
--- a/noncore/multimedia/showimg/ImageFileSelector.h
+++ b/noncore/multimedia/showimg/ImageFileSelector.h
@@ -1,135 +1,134 @@
1#ifndef IMAGEFILE_SELECTOR_H 1#ifndef IMAGEFILE_SELECTOR_H
2#define IMAGEFILE_SELECTOR_H 2#define IMAGEFILE_SELECTOR_H
3 3
4 4
5#include <qtoolbutton.h> 5#include <qtoolbutton.h>
6#include <qlistview.h> 6#include <qlistview.h>
7#include <qwidgetstack.h> 7#include <qwidgetstack.h>
8#include <qlayout.h> 8#include <qlayout.h>
9 9
10#include "qpe/filemanager.h" 10#include "qpe/filemanager.h"
11#include "qpe/applnk.h" 11#include "qpe/applnk.h"
12 12
13class QScrollView; 13class QScrollView;
14class QLabel; 14class QLabel;
15//class QValueList;
15 16
16class ThumbWidget : public QWidget 17class ThumbWidget : public QWidget
17{ 18{
18 Q_OBJECT 19 Q_OBJECT
19 public: 20public:
20 ThumbWidget(QPixmap p,QString text,const DocLnk& f,QWidget *parent=0,int width=-1); 21 ThumbWidget(QPixmap p,QString text,const DocLnk& f,QWidget *parent=0,int width=-1);
21 ~ThumbWidget() 22 ~ThumbWidget() { }
22 {
23
24 }
25 23
26 DocLnk file() const 24 DocLnk file() const {
27 {
28 return fl; 25 return fl;
29 } 26 }
30 27
31 28
32 signals: 29 signals:
33 void clicked(const DocLnk &); 30 void clicked(const DocLnk &);
34 31
35protected: 32protected:
36 void paintEvent( QPaintEvent * ); 33 void paintEvent( QPaintEvent * );
37 void resizeEvent(QResizeEvent *); 34 void resizeEvent(QResizeEvent *);
38 35
39 void mouseReleaseEvent(QMouseEvent* event); 36 void mouseReleaseEvent(QMouseEvent* event);
40 37
41private: 38private:
42 QPixmap pixmap; 39 QPixmap pixmap;
43 QLabel *description; 40 QLabel *description;
44 DocLnk fl; 41 DocLnk fl;
45}; 42};
46 43
47 44
45
46
47class ImageFileSelectorItem : public QListViewItem
48{
49public:
50 ImageFileSelectorItem( QListView *parent, const DocLnk& f );
51 ~ImageFileSelectorItem();
52
53 DocLnk file() const {
54 return fl;
55 }
56private:
57 DocLnk fl;
58};
59
48class ImageFileSelector : public QWidgetStack 60class ImageFileSelector : public QWidgetStack
49{ 61{
50 Q_OBJECT 62 Q_OBJECT
51 63
52 public: 64public:
53 65
54 enum CURRENT_VIEW 66 enum CURRENT_VIEW {
55 {
56 THUMBNAIL, 67 THUMBNAIL,
57 DETAILED, 68 DETAILED,
58 UNKNOWN 69 UNKNOWN
59 }; 70 };
60 71
61 72
62 ImageFileSelector(CURRENT_VIEW scv=DETAILED, QWidget *parent=0, const char *name=0 ); 73 ImageFileSelector(CURRENT_VIEW scv=DETAILED, QWidget *parent=0, const char *name=0 );
63 ~ImageFileSelector(); 74 ~ImageFileSelector();
64 75
65 void reread(bool purgeCache=false); 76 void reread(bool purgeCache=false);
66 int fileCount(); 77 int fileCount();
67 const DocLnk *selected(); 78 const DocLnk *selected();
68 79
69 void setView(CURRENT_VIEW v); 80 void setView(CURRENT_VIEW v);
70 81
71 CURRENT_VIEW view() 82 CURRENT_VIEW view() {
72 {
73 return cView; 83 return cView;
74 } 84 }
75 85
86 QValueList<DocLnk> fileList() const {
87 ((ImageFileSelector*)this)->fileCount(); // ensure all loaded when this is extended
88 QValueList<DocLnk> list;
89 ImageFileSelectorItem *item = (ImageFileSelectorItem *)detailed->firstChild();
90 while (item) {
91 list.append(item->file());
92 item = (ImageFileSelectorItem *)item->nextSibling();
93 }
94 return list;
95 }
76 96
77public slots: 97public slots:
78 98
79 void switchView(); 99 void switchView();
80 100
81signals: 101signals:
82 void fileSelected( const DocLnk & ); 102 void fileSelected( const DocLnk & );
83 void closeMe(); 103 void closeMe();
84 104
85protected: 105protected:
86 106
87 void resizeEvent(QResizeEvent *); 107 void resizeEvent(QResizeEvent *);
88 108
89 109
90private slots: 110private slots:
91 void fileClicked( int, QListViewItem *, const QPoint &, int ); 111 void fileClicked( int, QListViewItem *, const QPoint &, int );
92 // pressed to get 'right down' 112 // pressed to get 'right down'
93 void filePressed( int, QListViewItem *, const QPoint &, int ); 113 void filePressed( int, QListViewItem *, const QPoint &, int );
94 void fileClicked( QListViewItem *); 114 void fileClicked( QListViewItem *);
95 void thumbClicked(const DocLnk &); 115 void thumbClicked(const DocLnk &);
96 116
97private: 117private:
98 118
99 void updateSizes(); 119 void updateSizes();
100 120
101 121
102 CURRENT_VIEW cView; 122 CURRENT_VIEW cView;
103 int count; 123 int count;
104 124
105 QListView *detailed; 125 QListView *detailed;
106 QScrollView *thumb; 126 QScrollView *thumb;
107 QList<ThumbWidget> tList; 127 QList<ThumbWidget> tList;
108 QWidget *background; 128 QWidget *background;
109 QGridLayout *gl; 129 QGridLayout *gl;
110 130
111}; 131};
112
113
114class ImageFileSelectorItem : public QListViewItem
115{
116public:
117 ImageFileSelectorItem( QListView *parent, const DocLnk& f );
118 ~ImageFileSelectorItem();
119
120 DocLnk file() const
121 {
122 return fl;
123 }
124
125
126private:
127 DocLnk fl;
128};
129
130
131
132
133#endif // IMAGEFILE_SELECTOR_H 132#endif // IMAGEFILE_SELECTOR_H
134 133
135 134