Diffstat (limited to 'noncore/graphics/drawpad/thumbnailview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/graphics/drawpad/thumbnailview.cpp | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/noncore/graphics/drawpad/thumbnailview.cpp b/noncore/graphics/drawpad/thumbnailview.cpp index 1754ce9..476b7b9 100644 --- a/noncore/graphics/drawpad/thumbnailview.cpp +++ b/noncore/graphics/drawpad/thumbnailview.cpp | |||
@@ -97,22 +97,40 @@ void PageListView::updateView() | |||
97 | QList<Page> pageList = m_pDrawPadCanvas->pages(); | 97 | QList<Page> pageList = m_pDrawPadCanvas->pages(); |
98 | QListIterator<Page> it(pageList); | 98 | QListIterator<Page> it(pageList); |
99 | 99 | ||
100 | for (; it.current(); ++it) { | 100 | for (; it.current(); ++it) { |
101 | new PageListViewItem(it.current(), this); | 101 | new PageListViewItem(it.current(), this); |
102 | } | 102 | } |
103 | |||
104 | setSorting(0, false); | ||
105 | select(m_pDrawPadCanvas->currentPage()); | ||
103 | } | 106 | } |
104 | } | 107 | } |
105 | 108 | ||
106 | void PageListView::resizeEvent(QResizeEvent* e) | 109 | void PageListView::resizeEvent(QResizeEvent* e) |
107 | { | 110 | { |
108 | Q_UNUSED(e); | 111 | Q_UNUSED(e); |
109 | 112 | ||
110 | setColumnWidth(1, contentsRect().width() - columnWidth(0) - verticalScrollBar()->width()); | 113 | setColumnWidth(1, contentsRect().width() - columnWidth(0) - verticalScrollBar()->width()); |
111 | } | 114 | } |
112 | 115 | ||
116 | void PageListView::select(Page* page) | ||
117 | { | ||
118 | PageListViewItem* item = (PageListViewItem*)firstChild(); | ||
119 | |||
120 | while (item) { | ||
121 | if (item->page() == page) { | ||
122 | setSelected(item, true); | ||
123 | ensureItemVisible(item); | ||
124 | break; | ||
125 | } | ||
126 | |||
127 | item = (PageListViewItem*)(item->nextSibling()); | ||
128 | } | ||
129 | } | ||
130 | |||
113 | Page* PageListView::selected() const | 131 | Page* PageListView::selected() const |
114 | { | 132 | { |
115 | Page* page; | 133 | Page* page; |
116 | 134 | ||
117 | PageListViewItem* item = (PageListViewItem*)selectedItem(); | 135 | PageListViewItem* item = (PageListViewItem*)selectedItem(); |
118 | 136 | ||
@@ -122,13 +140,12 @@ Page* PageListView::selected() const | |||
122 | page = NULL; | 140 | page = NULL; |
123 | } | 141 | } |
124 | 142 | ||
125 | return page; | 143 | return page; |
126 | } | 144 | } |
127 | 145 | ||
128 | |||
129 | ThumbnailView::ThumbnailView(DrawPadCanvas* drawPadCanvas, QWidget* parent, const char* name) | 146 | ThumbnailView::ThumbnailView(DrawPadCanvas* drawPadCanvas, QWidget* parent, const char* name) |
130 | : QWidget(parent, name, Qt::WType_Modal | Qt::WType_TopLevel) | 147 | : QWidget(parent, name, Qt::WType_Modal | Qt::WType_TopLevel) |
131 | { | 148 | { |
132 | inLoop = false; | 149 | inLoop = false; |
133 | m_pDrawPadCanvas = drawPadCanvas; | 150 | m_pDrawPadCanvas = drawPadCanvas; |
134 | 151 | ||
@@ -142,22 +159,24 @@ ThumbnailView::ThumbnailView(DrawPadCanvas* drawPadCanvas, QWidget* parent, cons | |||
142 | clearPageButton->setIconSet(Resource::loadIconSet("drawpad/clear")); | 159 | clearPageButton->setIconSet(Resource::loadIconSet("drawpad/clear")); |
143 | clearPageButton->setAutoRaise(true); | 160 | clearPageButton->setAutoRaise(true); |
144 | 161 | ||
145 | QToolButton* deletePageButton = new QToolButton(this); | 162 | QToolButton* deletePageButton = new QToolButton(this); |
146 | deletePageButton->setIconSet(Resource::loadIconSet("trash")); | 163 | deletePageButton->setIconSet(Resource::loadIconSet("trash")); |
147 | deletePageButton->setAutoRaise(true); | 164 | deletePageButton->setAutoRaise(true); |
165 | connect(deletePageButton, SIGNAL(clicked()), this, SLOT(deletePage())); | ||
148 | 166 | ||
149 | QToolButton* movePageUpButton = new QToolButton(this); | 167 | QToolButton* movePageUpButton = new QToolButton(this); |
150 | movePageUpButton->setIconSet(Resource::loadIconSet("up")); | 168 | movePageUpButton->setIconSet(Resource::loadIconSet("up")); |
151 | movePageUpButton->setAutoRaise(true); | 169 | movePageUpButton->setAutoRaise(true); |
152 | 170 | ||
153 | QToolButton* movePageDownButton = new QToolButton(this); | 171 | QToolButton* movePageDownButton = new QToolButton(this); |
154 | movePageDownButton->setIconSet(Resource::loadIconSet("down")); | 172 | movePageDownButton->setIconSet(Resource::loadIconSet("down")); |
155 | movePageDownButton->setAutoRaise(true); | 173 | movePageDownButton->setAutoRaise(true); |
156 | 174 | ||
157 | m_pPageListView = new PageListView(m_pDrawPadCanvas, this); | 175 | m_pPageListView = new PageListView(m_pDrawPadCanvas, this); |
176 | connect(m_pPageListView, SIGNAL(selectionChanged()), this, SLOT(changePage())); | ||
158 | 177 | ||
159 | QVBoxLayout* mainLayout = new QVBoxLayout(this, 4, 4); | 178 | QVBoxLayout* mainLayout = new QVBoxLayout(this, 4, 4); |
160 | QHBoxLayout* buttonLayout = new QHBoxLayout(0); | 179 | QHBoxLayout* buttonLayout = new QHBoxLayout(0); |
161 | 180 | ||
162 | buttonLayout->addWidget(newPageButton); | 181 | buttonLayout->addWidget(newPageButton); |
163 | buttonLayout->addWidget(clearPageButton); | 182 | buttonLayout->addWidget(clearPageButton); |
@@ -204,8 +223,14 @@ void ThumbnailView::deletePage() | |||
204 | 223 | ||
205 | messageBox.setButtonText(QMessageBox::Yes, tr("Yes")); | 224 | messageBox.setButtonText(QMessageBox::Yes, tr("Yes")); |
206 | messageBox.setButtonText(QMessageBox::No, tr("No")); | 225 | messageBox.setButtonText(QMessageBox::No, tr("No")); |
207 | 226 | ||
208 | if (messageBox.exec() == QMessageBox::Yes) { | 227 | if (messageBox.exec() == QMessageBox::Yes) { |
209 | m_pDrawPadCanvas->deletePage(); | 228 | m_pDrawPadCanvas->deletePage(); |
229 | m_pPageListView->updateView(); | ||
210 | } | 230 | } |
211 | } | 231 | } |
232 | |||
233 | void ThumbnailView::changePage() | ||
234 | { | ||
235 | m_pDrawPadCanvas->selectPage(m_pPageListView->selected()); | ||
236 | } | ||