4
#include <qscrollview.h>
13
class ThumbViewPrivate;
15
class ThumbView : public QScrollView {
19
friend class ThumbItem;
23
ThumbView(QWidget* parent=0, const char* name=0,
27
ThumbItem* firstItem();
28
ThumbItem* lastItem();
29
ThumbItem* findItem(const QPoint& pos);
30
ThumbItem* findItem(const QString& text);
33
int index(ThumbItem* item);
35
virtual void clear(bool update=true);
36
void rearrangeItems(bool update=true);
40
void clearSelection();
42
void invertSelection();
44
void selectItem(ThumbItem* item, bool select);
46
virtual void insertItem(ThumbItem *item);
47
virtual void takeItem(ThumbItem *item);
48
void updateItemContainer(ThumbItem *item);
49
QRect contentsRectToViewport(const QRect& r);
51
void ensureItemVisible(ThumbItem *item);
52
ThumbItem *findFirstVisibleItem(const QRect &r ) const;
53
ThumbItem *findLastVisibleItem(const QRect &r ) const;
59
virtual void contentsMousePressEvent(QMouseEvent *e);
60
virtual void contentsMouseMoveEvent(QMouseEvent *e);
61
virtual void contentsMouseReleaseEvent(QMouseEvent *e);
62
virtual void contentsMouseDoubleClickEvent(QMouseEvent *e);
64
virtual void viewportPaintEvent(QPaintEvent *pe);
65
virtual void resizeEvent(QResizeEvent* e);
67
virtual void keyPressEvent(QKeyEvent *e);
69
virtual void calcBanner();
70
virtual void paintBanner(QPainter *p);
71
virtual void setBannerRect(const QRect& r);
74
virtual void startDrag();
75
virtual void contentsDropEvent(QDropEvent *e);
79
void drawRubber(QPainter *p);
81
void rebuildContainers();
82
void appendContainer();
83
void deleteContainers();
87
ThumbItem* makeRow(ThumbItem *begin, int &y, bool &changed);
88
void emitRenamed(ThumbItem *item);
94
ThumbItem *renamingItem;
98
void signalSelectionChanged();
99
void signalRightButtonClicked(const QPoint &pos);
100
void signalRightButtonClicked(ThumbItem *item, const QPoint &pos);
101
void signalDoubleClicked(ThumbItem *item);
102
void signalReturnPressed(ThumbItem *item);
103
void signalItemRenamed(ThumbItem *item);