1 #include "mainwindow.h"
2 #include "thumbnaildelegate.h"
3 #include "thumbnailview.h"
5 #include <QApplication>
11 ///////////////////////////////////////////////////////////////////////////////
12 /// \brief ThumbnailView::ThumbnailView
13 /// \param parent 親ウィジェット
17 ThumbnailView::ThumbnailView(QWidget *parent) :
21 setItemDelegate(new ThumbnailDelegate(this));
25 ///////////////////////////////////////////////////////////////////////////////
26 /// \brief ThumbnailView::initialize
27 /// \param w メインウィンドウオブジェクト
31 void ThumbnailView::initialize(MainWindow *w)
33 qDebug() << "ThumbnailView::initialize()";
35 connect(this, SIGNAL(doubleClicked(QModelIndex)), w, SLOT(onOpen(QModelIndex)));
36 connect(&m_p, SIGNAL(copyItems(QStringList,QString)), w, SLOT(copyItems(QStringList,QString)));
37 connect(&m_p, SIGNAL(moveItems(QStringList,QString)), w, SLOT(moveItems(QStringList,QString)));
39 installEventFilter(w);
40 viewport()->installEventFilter(&m_p);
41 viewport()->installEventFilter(w);
44 void ThumbnailView::scaleDown()
46 qDebug() << "ThumbnailView::scaleDown()";
48 static_cast<ThumbnailDelegate*>(itemDelegate())->scaleDown();
49 folderModel()->clearPixmapCache();
52 void ThumbnailView::scaleUp()
54 qDebug() << "ThumbnailView::scaleUp()";
56 static_cast<ThumbnailDelegate*>(itemDelegate())->scaleUp();
57 folderModel()->clearPixmapCache();
60 void ThumbnailView::setModel(QAbstractItemModel *model)
63 this->model()->disconnect(this);
66 QListView::setModel(model);
69 connect(this->model(), SIGNAL(modelAboutToBeReset()), &m_p, SLOT(model_PreReset()));
70 connect(this->model(), SIGNAL(modelReset()), &m_p, SLOT(model_PostReset()));
74 void ThumbnailView::setVisible(bool visible)
77 static_cast<ThumbnailDelegate*>(itemDelegate())->resetScale();
78 folderModel()->clearPixmapCache();
81 QListView::setVisible(visible);