qcolumnview.cpp

Absolute File Name:/home/qt/qt5_coco/qt5/qtbase/src/widgets/itemviews/qcolumnview.cpp
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7QColumnView::QColumnView(QWidget * parent)-
8: QAbstractItemView(*new QColumnViewPrivate, parent)-
9{-
10 QColumnViewPrivate * const d = d_func();-
11 d->initialize();-
12}
never executed: end of block
0
13-
14-
15-
16-
17QColumnView::QColumnView(QColumnViewPrivate & dd, QWidget * parent)-
18: QAbstractItemView(dd, parent)-
19{-
20 QColumnViewPrivate * const d = d_func();-
21 d->initialize();-
22}
never executed: end of block
0
23-
24void QColumnViewPrivate::initialize()-
25{-
26 QColumnView * const q = q_func();-
27 q->setTextElideMode(Qt::ElideMiddle);-
28-
29 QObject::connect(&currentAnimation, qFlagLocation("2""finished()" "\0" __FILE__ ":" "103"), q, qFlagLocation("1""_q_changeCurrentColumn()" "\0" __FILE__ ":" "103"));-
30 currentAnimation.setDuration(150);-
31 currentAnimation.setTargetObject(hbar);-
32 currentAnimation.setPropertyName("value");-
33 currentAnimation.setEasingCurve(QEasingCurve::InOutQuad);-
34-
35 delete itemDelegate;-
36 q->setItemDelegate(new QColumnViewDelegate(q));-
37}
never executed: end of block
0
38-
39-
40-
41-
42QColumnView::~QColumnView()-
43{-
44}-
45void QColumnView::setResizeGripsVisible(bool visible)-
46{-
47 QColumnViewPrivate * const d = d_func();-
48 if (d->showResizeGrips == visible
d->showResizeGrips == visibleDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
49 return;
never executed: return;
0
50 d->showResizeGrips = visible;-
51 for (int i = 0; i < d->columns.count()
i < d->columns.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
52 QAbstractItemView *view = d->columns[i];-
53 if (visible
visibleDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
54 QColumnViewGrip *grip = new QColumnViewGrip(view);-
55 view->setCornerWidget(grip);-
56 connect(grip, qFlagLocation("2""gripMoved(int)" "\0" __FILE__ ":" "139"), this, qFlagLocation("1""_q_gripMoved(int)" "\0" __FILE__ ":" "139"));-
57 }
never executed: end of block
else {
0
58 QWidget *widget = view->cornerWidget();-
59 view->setCornerWidget(0);-
60 widget->deleteLater();-
61 }
never executed: end of block
0
62 }-
63}
never executed: end of block
0
64-
65bool QColumnView::resizeGripsVisible() const-
66{-
67 const QColumnViewPrivate * const d = d_func();-
68 return
never executed: return d->showResizeGrips;
d->showResizeGrips;
never executed: return d->showResizeGrips;
0
69}-
70-
71-
72-
73-
74void QColumnView::setModel(QAbstractItemModel *model)-
75{-
76 QColumnViewPrivate * const d = d_func();-
77 if (model == d->model
model == d->modelDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
78 return;
never executed: return;
0
79 d->closeColumns();-
80 QAbstractItemView::setModel(model);-
81}
never executed: end of block
0
82-
83-
84-
85-
86void QColumnView::setRootIndex(const QModelIndex &index)-
87{-
88 QColumnViewPrivate * const d = d_func();-
89 if (!model()
!model()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
90 return;
never executed: return;
0
91-
92 d->closeColumns();-
93 ((!(d->columns.count() == 0)) ? qt_assert("d->columns.count() == 0",__FILE__,176) : qt_noop());-
94-
95 QAbstractItemView *view = d->createColumn(index, true);-
96 if (view->selectionModel()
view->selectionModel()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
97 view->selectionModel()->deleteLater();
never executed: view->selectionModel()->deleteLater();
0
98 if (view->model()
view->model()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
99 view->setSelectionModel(selectionModel());
never executed: view->setSelectionModel(selectionModel());
0
100-
101 QAbstractItemView::setRootIndex(index);-
102 d->updateScrollbars();-
103}
never executed: end of block
0
104-
105-
106-
107-
108bool QColumnView::isIndexHidden(const QModelIndex &index) const-
109{-
110 (void)index;;-
111 return
never executed: return false;
false;
never executed: return false;
0
112}-
113-
114-
115-
116-
117QModelIndex QColumnView::indexAt(const QPoint &point) const-
118{-
119 const QColumnViewPrivate * const d = d_func();-
120 for (int i = 0; i < d->columns.size()
i < d->columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
121 QPoint topLeft = d->columns.at(i)->frameGeometry().topLeft();-
122 QPoint adjustedPoint(point.x() - topLeft.x(), point.y() - topLeft.y());-
123 QModelIndex index = d->columns.at(i)->indexAt(adjustedPoint);-
124 if (index.isValid()
index.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
125 return
never executed: return index;
index;
never executed: return index;
0
126 }
never executed: end of block
0
127 return
never executed: return QModelIndex();
QModelIndex();
never executed: return QModelIndex();
0
128}-
129-
130-
131-
132-
133QRect QColumnView::visualRect(const QModelIndex &index) const-
134{-
135 if (!index.isValid()
!index.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
136 return
never executed: return QRect();
QRect();
never executed: return QRect();
0
137-
138 const QColumnViewPrivate * const d = d_func();-
139 for (int i = 0; i < d->columns.size()
i < d->columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
140 QRect rect = d->columns.at(i)->visualRect(index);-
141 if (!rect.isNull()
!rect.isNull()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
142 rect.translate(d->columns.at(i)->frameGeometry().topLeft());-
143 return
never executed: return rect;
rect;
never executed: return rect;
0
144 }-
145 }
never executed: end of block
0
146 return
never executed: return QRect();
QRect();
never executed: return QRect();
0
147}-
148-
149-
150-
151-
152void QColumnView::scrollContentsBy(int dx, int dy)-
153{-
154 QColumnViewPrivate * const d = d_func();-
155 if (d->columns.isEmpty()
d->columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
|| dx == 0
dx == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
156 return;
never executed: return;
0
157-
158 dx = isRightToLeft()
isRightToLeft()Description
TRUEnever evaluated
FALSEnever evaluated
? -dx : dx;
0
159 for (int i = 0; i < d->columns.count()
i < d->columns.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i)
0
160 d->columns.at(i)->move(d->columns.at(i)->x() + dx, 0);
never executed: d->columns.at(i)->move(d->columns.at(i)->x() + dx, 0);
0
161 d->offset += dx;-
162 QAbstractItemView::scrollContentsBy(dx, dy);-
163}
never executed: end of block
0
164-
165-
166-
167-
168void QColumnView::scrollTo(const QModelIndex &index, ScrollHint hint)-
169{-
170 QColumnViewPrivate * const d = d_func();-
171 (void)hint;;-
172 if (!index.isValid()
!index.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
|| d->columns.isEmpty()
d->columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
173 return;
never executed: return;
0
174-
175-
176 if (d->currentAnimation.state() == QPropertyAnimation::Running
d->currentAnim...ation::RunningDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
177 return;
never executed: return;
0
178-
179 d->currentAnimation.stop();-
180-
181-
182-
183 d->closeColumns(index, true);-
184-
185 QModelIndex indexParent = index.parent();-
186-
187 int currentColumn = 0;-
188 int leftEdge = 0;-
189 while (currentColumn < d->columns.size()
currentColumn ...columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
190 if (indexParent == d->columns.at(currentColumn)->rootIndex()
indexParent ==...)->rootIndex()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
191 break;
never executed: break;
0
192 leftEdge += d->columns.at(currentColumn)->width();-
193 ++currentColumn;-
194 }
never executed: end of block
0
195-
196-
197 if (currentColumn == d->columns.size()
currentColumn ...columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
198 return;
never executed: return;
0
199-
200 int indexColumn = currentColumn;-
201-
202 int visibleWidth = d->columns.at(currentColumn)->width();-
203-
204 if (currentColumn + 1 < d->columns.size()
currentColumn ...columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
205 ++currentColumn;-
206 visibleWidth += d->columns.at(currentColumn)->width();-
207 }
never executed: end of block
0
208-
209 int rightEdge = leftEdge + visibleWidth;-
210 if (isRightToLeft()
isRightToLeft()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
211 leftEdge = viewport()->width() - leftEdge;-
212 rightEdge = leftEdge - visibleWidth;-
213 qSwap(rightEdge, leftEdge);-
214 }
never executed: end of block
0
215-
216-
217 if (leftEdge > -horizontalOffset()
leftEdge > -horizontalOffset()Description
TRUEnever evaluated
FALSEnever evaluated
0
218 && rightEdge <= ( -horizontalOffset() + viewport()->size().width())
rightEdge <= (...ize().width())Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
219 d->columns.at(indexColumn)->scrollTo(index);-
220 d->_q_changeCurrentColumn();-
221 return;
never executed: return;
0
222 }-
223-
224 int newScrollbarValue = 0;-
225 if (isRightToLeft()
isRightToLeft()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
226 if (leftEdge < 0
leftEdge < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
227-
228 newScrollbarValue = viewport()->size().width() - leftEdge;-
229 }
never executed: end of block
else {
0
230-
231 newScrollbarValue = rightEdge + horizontalOffset();-
232 }
never executed: end of block
0
233 } else {-
234 if (leftEdge > -horizontalOffset()
leftEdge > -horizontalOffset()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
235-
236 newScrollbarValue = rightEdge - viewport()->size().width();-
237 }
never executed: end of block
else {
0
238-
239 newScrollbarValue = leftEdge;-
240 }
never executed: end of block
0
241 }-
242-
243-
244 if (style()->styleHint(QStyle::SH_Widget_Animate, 0, this)
style()->style...mate, 0, this)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
245 d->currentAnimation.setEndValue(newScrollbarValue);-
246 d->currentAnimation.start();-
247 }
never executed: end of block
else
0
248-
249 {-
250 horizontalScrollBar()->setValue(newScrollbarValue);-
251 }
never executed: end of block
0
252}-
253-
254-
255-
256-
257-
258-
259QModelIndex QColumnView::moveCursor(CursorAction cursorAction, Qt::KeyboardModifiers modifiers)-
260{-
261-
262-
263 (void)modifiers;;-
264 if (!model()
!model()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
265 return
never executed: return QModelIndex();
QModelIndex();
never executed: return QModelIndex();
0
266-
267 QModelIndex current = currentIndex();-
268 if (isRightToLeft()
isRightToLeft()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
269 if (cursorAction == MoveLeft
cursorAction == MoveLeftDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
270 cursorAction = MoveRight;
never executed: cursorAction = MoveRight;
0
271 else if (cursorAction == MoveRight
cursorAction == MoveRightDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
272 cursorAction = MoveLeft;
never executed: cursorAction = MoveLeft;
0
273 }
never executed: end of block
0
274 switch (cursorAction) {-
275 case
never executed: case MoveLeft:
MoveLeft:
never executed: case MoveLeft:
0
276 if (current.parent().isValid()
current.parent().isValid()Description
TRUEnever evaluated
FALSEnever evaluated
&& current.parent() != rootIndex()
current.parent...!= rootIndex()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
277 return
never executed: return (current.parent());
(current.parent());
never executed: return (current.parent());
0
278 else-
279 return
never executed: return current;
current;
never executed: return current;
0
280-
281 case
never executed: case MoveRight:
MoveRight:
never executed: case MoveRight:
0
282 if (model()->hasChildren(current)
model()->hasChildren(current)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
283 return
never executed: return model()->index(0, 0, current);
model()->index(0, 0, current);
never executed: return model()->index(0, 0, current);
0
284 else-
285 return
never executed: return current.sibling(current.row() + 1, current.column());
current.sibling(current.row() + 1, current.column());
never executed: return current.sibling(current.row() + 1, current.column());
0
286-
287 default
never executed: default:
:
never executed: default:
0
288 break;
never executed: break;
0
289 }-
290-
291 return
never executed: return QModelIndex();
QModelIndex();
never executed: return QModelIndex();
0
292}-
293-
294-
295-
296-
297void QColumnView::resizeEvent(QResizeEvent *event)-
298{-
299 QColumnViewPrivate * const d = d_func();-
300 d->doLayout();-
301 d->updateScrollbars();-
302 if (!isRightToLeft()
!isRightToLeft()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
303 int diff = event->oldSize().width() - event->size().width();-
304 if (diff < 0
diff < 0Description
TRUEnever evaluated
FALSEnever evaluated
&& horizontalScrollBar()->isVisible()
horizontalScro...)->isVisible()Description
TRUEnever evaluated
FALSEnever evaluated
0
305 && horizontalScrollBar()->value() == horizontalScrollBar()->maximum()
horizontalScro...r()->maximum()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
306 horizontalScrollBar()->setMaximum(horizontalScrollBar()->maximum() + diff);-
307 }
never executed: end of block
0
308 }
never executed: end of block
0
309 QAbstractItemView::resizeEvent(event);-
310}
never executed: end of block
0
311-
312-
313-
314-
315void QColumnViewPrivate::updateScrollbars()-
316{-
317 QColumnView * const q = q_func();-
318-
319 if (currentAnimation.state() == QPropertyAnimation::Running
currentAnimati...ation::RunningDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
320 return;
never executed: return;
0
321-
322-
323-
324 int horizontalLength = 0;-
325 if (!columns.isEmpty()
!columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
326 horizontalLength = (columns.last()->x() + columns.last()->width()) - columns.first()->x();-
327 if (horizontalLength <= 0
horizontalLength <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
328 horizontalLength = (columns.first()->x() + columns.first()->width()) - columns.last()->x();
never executed: horizontalLength = (columns.first()->x() + columns.first()->width()) - columns.last()->x();
0
329 }
never executed: end of block
0
330-
331 QSize viewportSize = viewport->size();-
332 if (horizontalLength < viewportSize.width()
horizontalLeng...rtSize.width()Description
TRUEnever evaluated
FALSEnever evaluated
&& hbar->value() == 0
hbar->value() == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
333 hbar->setRange(0, 0);-
334 }
never executed: end of block
else {
0
335 int visibleLength = qMin(horizontalLength + q->horizontalOffset(), viewportSize.width());-
336 int hiddenLength = horizontalLength - visibleLength;-
337 if (hiddenLength != hbar->maximum()
hiddenLength !...bar->maximum()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
338 hbar->setRange(0, hiddenLength);
never executed: hbar->setRange(0, hiddenLength);
0
339 }
never executed: end of block
0
340 if (!columns.isEmpty()
!columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
341 int pageStepSize = columns.at(0)->width();-
342 if (pageStepSize != hbar->pageStep()
pageStepSize !...ar->pageStep()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
343 hbar->setPageStep(pageStepSize);
never executed: hbar->setPageStep(pageStepSize);
0
344 }
never executed: end of block
0
345 bool visible = (hbar->maximum() > 0);-
346 if (visible != hbar->isVisible()
visible != hbar->isVisible()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
347 hbar->setVisible(visible);
never executed: hbar->setVisible(visible);
0
348}
never executed: end of block
0
349-
350-
351-
352-
353int QColumnView::horizontalOffset() const-
354{-
355 const QColumnViewPrivate * const d = d_func();-
356 return
never executed: return d->offset;
d->offset;
never executed: return d->offset;
0
357}-
358-
359-
360-
361-
362int QColumnView::verticalOffset() const-
363{-
364 return
never executed: return 0;
0;
never executed: return 0;
0
365}-
366-
367-
368-
369-
370QRegion QColumnView::visualRegionForSelection(const QItemSelection &selection) const-
371{-
372 int ranges = selection.count();-
373-
374 if (ranges == 0
ranges == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
375 return
never executed: return QRect();
QRect();
never executed: return QRect();
0
376-
377-
378-
379 int firstRow = selection.at(0).top();-
380 int lastRow = selection.at(0).top();-
381 for (int i = 0; i < ranges
i < rangesDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
382 firstRow = qMin(firstRow, selection.at(i).top());-
383 lastRow = qMax(lastRow, selection.at(i).bottom());-
384 }
never executed: end of block
0
385-
386 QModelIndex firstIdx = model()->index(qMin(firstRow, lastRow), 0, rootIndex());-
387 QModelIndex lastIdx = model()->index(qMax(firstRow, lastRow), 0, rootIndex());-
388-
389 if (firstIdx == lastIdx
firstIdx == lastIdxDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
390 return
never executed: return visualRect(firstIdx);
visualRect(firstIdx);
never executed: return visualRect(firstIdx);
0
391-
392 QRegion firstRegion = visualRect(firstIdx);-
393 QRegion lastRegion = visualRect(lastIdx);-
394 return
never executed: return firstRegion.united(lastRegion);
firstRegion.united(lastRegion);
never executed: return firstRegion.united(lastRegion);
0
395}-
396-
397-
398-
399-
400void QColumnView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command)-
401{-
402 (void)rect;;-
403 (void)command;;-
404}
never executed: end of block
0
405-
406-
407-
408-
409void QColumnView::setSelectionModel(QItemSelectionModel *newSelectionModel)-
410{-
411 const QColumnViewPrivate * const d = d_func();-
412 for (int i = 0; i < d->columns.size()
i < d->columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
413 if (d->columns.at(i)->selectionModel() == selectionModel()
d->columns.at(...lectionModel()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
414 d->columns.at(i)->setSelectionModel(newSelectionModel);-
415 break;
never executed: break;
0
416 }-
417 }
never executed: end of block
0
418 QAbstractItemView::setSelectionModel(newSelectionModel);-
419}
never executed: end of block
0
420-
421-
422-
423-
424QSize QColumnView::sizeHint() const-
425{-
426 const QColumnViewPrivate * const d = d_func();-
427 QSize sizeHint;-
428 for (int i = 0; i < d->columns.size()
i < d->columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
429 sizeHint += d->columns.at(i)->sizeHint();-
430 }
never executed: end of block
0
431 return
never executed: return sizeHint.expandedTo(QAbstractItemView::sizeHint());
sizeHint.expandedTo(QAbstractItemView::sizeHint());
never executed: return sizeHint.expandedTo(QAbstractItemView::sizeHint());
0
432}-
433-
434-
435-
436-
437-
438void QColumnViewPrivate::_q_gripMoved(int offset)-
439{-
440 QColumnView * const q = q_func();-
441-
442 QObject *grip = q->sender();-
443 ((!(grip)) ? qt_assert("grip",__FILE__,526) : qt_noop());-
444-
445 if (q->isRightToLeft()
q->isRightToLeft()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
446 offset = -1 * offset;
never executed: offset = -1 * offset;
0
447-
448 bool found = false;-
449 for (int i = 0; i < columns.size()
i < columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
450 if (!found
!foundDescription
TRUEnever evaluated
FALSEnever evaluated
&& columns.at(i)->cornerWidget() == grip
columns.at(i)-...dget() == gripDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
451 found = true;-
452 columnSizes[i] = columns.at(i)->width();-
453 if (q->isRightToLeft()
q->isRightToLeft()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
454 columns.at(i)->move(columns.at(i)->x() + offset, 0);
never executed: columns.at(i)->move(columns.at(i)->x() + offset, 0);
0
455 continue;
never executed: continue;
0
456 }-
457 if (!found
!foundDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
458 continue;
never executed: continue;
0
459-
460 int currentX = columns.at(i)->x();-
461 columns.at(i)->move(currentX + offset, 0);-
462 }
never executed: end of block
0
463-
464 updateScrollbars();-
465}
never executed: end of block
0
466void QColumnViewPrivate::closeColumns(const QModelIndex &parent, bool build)-
467{-
468 if (columns.isEmpty()
columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
469 return;
never executed: return;
0
470-
471 bool clearAll = !parent.isValid();-
472 bool passThroughRoot = false;-
473-
474 QList<QModelIndex> dirsToAppend;-
475-
476-
477 int currentColumn = -1;-
478 QModelIndex parentIndex = parent;-
479 while (currentColumn == -1
currentColumn == -1Description
TRUEnever evaluated
FALSEnever evaluated
&& parentIndex.isValid()
parentIndex.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
480 if (columns.isEmpty()
columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
481 break;
never executed: break;
0
482 parentIndex = parentIndex.parent();-
483 if (root == parentIndex
root == parentIndexDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
484 passThroughRoot = true;
never executed: passThroughRoot = true;
0
485 if (!parentIndex.isValid()
!parentIndex.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
486 break;
never executed: break;
0
487 for (int i = columns.size() - 1; i >= 0
i >= 0Description
TRUEnever evaluated
FALSEnever evaluated
; --i) {
0
488 if (columns.at(i)->rootIndex() == parentIndex
columns.at(i)-...== parentIndexDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
489 currentColumn = i;-
490 break;
never executed: break;
0
491 }-
492 }
never executed: end of block
0
493 if (currentColumn == -1
currentColumn == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
494 dirsToAppend.append(parentIndex);
never executed: dirsToAppend.append(parentIndex);
0
495 }
never executed: end of block
0
496-
497-
498-
499 if (!clearAll
!clearAllDescription
TRUEnever evaluated
FALSEnever evaluated
&& !passThroughRoot
!passThroughRootDescription
TRUEnever evaluated
FALSEnever evaluated
&& currentColumn == -1
currentColumn == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
500 return;
never executed: return;
0
501-
502 if (currentColumn == -1
currentColumn == -1Description
TRUEnever evaluated
FALSEnever evaluated
&& parent.isValid()
parent.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
503 currentColumn = 0;
never executed: currentColumn = 0;
0
504-
505-
506 bool alreadyExists = false;-
507 if (build
buildDescription
TRUEnever evaluated
FALSEnever evaluated
&& columns.size() > currentColumn + 1
columns.size()...rentColumn + 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
508 bool viewingParent = (columns.at(currentColumn + 1)->rootIndex() == parent);-
509 bool viewingChild = (!model->hasChildren(parent)
!model->hasChildren(parent)Description
TRUEnever evaluated
FALSEnever evaluated
0
510 && !columns.at(currentColumn + 1)->rootIndex().isValid()
!columns.at(cu...ex().isValid()Description
TRUEnever evaluated
FALSEnever evaluated
);
0
511 if (viewingParent
viewingParentDescription
TRUEnever evaluated
FALSEnever evaluated
|| viewingChild
viewingChildDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
512 currentColumn++;-
513 alreadyExists = true;-
514 }
never executed: end of block
0
515 }
never executed: end of block
0
516-
517-
518 for (int i = columns.size() - 1; i > currentColumn
i > currentColumnDescription
TRUEnever evaluated
FALSEnever evaluated
; --i) {
0
519 QAbstractItemView* notShownAnymore = columns.at(i);-
520 columns.removeAt(i);-
521 notShownAnymore->setVisible(false);-
522 if (notShownAnymore != previewColumn
notShownAnymor... previewColumnDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
523 notShownAnymore->deleteLater();
never executed: notShownAnymore->deleteLater();
0
524 }
never executed: end of block
0
525-
526 if (columns.isEmpty()
columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
527 offset = 0;-
528 updateScrollbars();-
529 }
never executed: end of block
0
530-
531-
532 while (!dirsToAppend.isEmpty()
!dirsToAppend.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
533 QAbstractItemView *newView = createColumn(dirsToAppend.takeLast(), true);-
534 if (!dirsToAppend.isEmpty()
!dirsToAppend.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
535 newView->setCurrentIndex(dirsToAppend.last());
never executed: newView->setCurrentIndex(dirsToAppend.last());
0
536 }
never executed: end of block
0
537-
538 if (build
buildDescription
TRUEnever evaluated
FALSEnever evaluated
&& !alreadyExists
!alreadyExistsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
539 createColumn(parent, false);
never executed: createColumn(parent, false);
0
540}
never executed: end of block
0
541-
542void QColumnViewPrivate::_q_clicked(const QModelIndex &index)-
543{-
544 QColumnView * const q = q_func();-
545 QModelIndex parent = index.parent();-
546 QAbstractItemView *columnClicked = 0;-
547 for (int column = 0; column < columns.count()
column < columns.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++column) {
0
548 if (columns.at(column)->rootIndex() == parent
columns.at(col...ex() == parentDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
549 columnClicked = columns[column];-
550 break;
never executed: break;
0
551 }-
552 }
never executed: end of block
0
553 if (q->selectionModel()
q->selectionModel()Description
TRUEnever evaluated
FALSEnever evaluated
&& columnClicked
columnClickedDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
554 QItemSelectionModel::SelectionFlags flags = QItemSelectionModel::Current;-
555 if (columnClicked->selectionModel()->isSelected(index)
columnClicked-...elected(index)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
556 flags |= QItemSelectionModel::Select;
never executed: flags |= QItemSelectionModel::Select;
0
557 q->selectionModel()->setCurrentIndex(index, flags);-
558 }
never executed: end of block
0
559}
never executed: end of block
0
560QAbstractItemView *QColumnViewPrivate::createColumn(const QModelIndex &index, bool show)-
561{-
562 QColumnView * const q = q_func();-
563 QAbstractItemView *view = 0;-
564 if (model->hasChildren(index)
model->hasChildren(index)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
565 view = q->createColumn(index);-
566 q->connect(view, qFlagLocation("2""clicked(QModelIndex)" "\0" __FILE__ ":" "668"),-
567 q, qFlagLocation("1""_q_clicked(QModelIndex)" "\0" __FILE__ ":" "669"));-
568 }
never executed: end of block
else {
0
569 if (!previewColumn
!previewColumnDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
570 setPreviewWidget(new QWidget(q));
never executed: setPreviewWidget(new QWidget(q));
0
571 view = previewColumn;-
572 view->setMinimumWidth(qMax(view->minimumWidth(), previewWidget->minimumWidth()));-
573 }
never executed: end of block
0
574-
575 q->connect(view, qFlagLocation("2""activated(QModelIndex)" "\0" __FILE__ ":" "677"),-
576 q, qFlagLocation("2""activated(QModelIndex)" "\0" __FILE__ ":" "678"));-
577 q->connect(view, qFlagLocation("2""clicked(QModelIndex)" "\0" __FILE__ ":" "679"),-
578 q, qFlagLocation("2""clicked(QModelIndex)" "\0" __FILE__ ":" "680"));-
579 q->connect(view, qFlagLocation("2""doubleClicked(QModelIndex)" "\0" __FILE__ ":" "681"),-
580 q, qFlagLocation("2""doubleClicked(QModelIndex)" "\0" __FILE__ ":" "682"));-
581 q->connect(view, qFlagLocation("2""entered(QModelIndex)" "\0" __FILE__ ":" "683"),-
582 q, qFlagLocation("2""entered(QModelIndex)" "\0" __FILE__ ":" "684"));-
583 q->connect(view, qFlagLocation("2""pressed(QModelIndex)" "\0" __FILE__ ":" "685"),-
584 q, qFlagLocation("2""pressed(QModelIndex)" "\0" __FILE__ ":" "686"));-
585-
586 view->setFocusPolicy(Qt::NoFocus);-
587 view->setParent(viewport);-
588 ((!(view)) ? qt_assert("view",__FILE__,690) : qt_noop());-
589-
590-
591 if (showResizeGrips
showResizeGripsDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
592 QColumnViewGrip *grip = new QColumnViewGrip(view);-
593 view->setCornerWidget(grip);-
594 q->connect(grip, qFlagLocation("2""gripMoved(int)" "\0" __FILE__ ":" "696"), q, qFlagLocation("1""_q_gripMoved(int)" "\0" __FILE__ ":" "696"));-
595 }
never executed: end of block
0
596-
597 if (columnSizes.count() > columns.count()
columnSizes.co...olumns.count()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
598 view->setGeometry(0, 0, columnSizes.at(columns.count()), viewport->height());-
599 }
never executed: end of block
else {
0
600 int initialWidth = view->sizeHint().width();-
601 if (q->isRightToLeft()
q->isRightToLeft()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
602 view->setGeometry(viewport->width() - initialWidth, 0, initialWidth, viewport->height());
never executed: view->setGeometry(viewport->width() - initialWidth, 0, initialWidth, viewport->height());
0
603 else-
604 view->setGeometry(0, 0, initialWidth, viewport->height());
never executed: view->setGeometry(0, 0, initialWidth, viewport->height());
0
605 columnSizes.resize(qMax(columnSizes.count(), columns.count() + 1));-
606 columnSizes[columns.count()] = initialWidth;-
607 }
never executed: end of block
0
608 if (!columns.isEmpty()
!columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
&& columns.last()->isHidden()
columns.last()->isHidden()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
609 columns.last()->setVisible(true);
never executed: columns.last()->setVisible(true);
0
610-
611 columns.append(view);-
612 doLayout();-
613 updateScrollbars();-
614 if (show
showDescription
TRUEnever evaluated
FALSEnever evaluated
&& view->isHidden()
view->isHidden()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
615 view->setVisible(true);
never executed: view->setVisible(true);
0
616 return
never executed: return view;
view;
never executed: return view;
0
617}-
618QAbstractItemView *QColumnView::createColumn(const QModelIndex &index)-
619{-
620 QListView *view = new QListView(viewport());-
621-
622 initializeColumn(view);-
623-
624 view->setRootIndex(index);-
625 if (model()->canFetchMore(index)
model()->canFetchMore(index)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
626 model()->fetchMore(index);
never executed: model()->fetchMore(index);
0
627-
628 return
never executed: return view;
view;
never executed: return view;
0
629}-
630void QColumnView::initializeColumn(QAbstractItemView *column) const-
631{-
632 const QColumnViewPrivate * const d = d_func();-
633-
634 column->setFrameShape(QFrame::NoFrame);-
635 column->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);-
636 column->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);-
637 column->setMinimumWidth(100);-
638 column->setAttribute(Qt::WA_MacShowFocusRect, false);-
639-
640-
641 column->setDragDropMode(dragDropMode());-
642 column->setDragDropOverwriteMode(dragDropOverwriteMode());-
643 column->setDropIndicatorShown(showDropIndicator());-
644-
645 column->setAlternatingRowColors(alternatingRowColors());-
646 column->setAutoScroll(hasAutoScroll());-
647 column->setEditTriggers(editTriggers());-
648 column->setHorizontalScrollMode(horizontalScrollMode());-
649 column->setIconSize(iconSize());-
650 column->setSelectionBehavior(selectionBehavior());-
651 column->setSelectionMode(selectionMode());-
652 column->setTabKeyNavigation(tabKeyNavigation());-
653 column->setTextElideMode(textElideMode());-
654 column->setVerticalScrollMode(verticalScrollMode());-
655-
656 column->setModel(model());-
657-
658-
659 QMapIterator<int, QPointer<QAbstractItemDelegate> > i(d->rowDelegates);-
660 while (i.hasNext()
i.hasNext()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
661 i.next();-
662 column->setItemDelegateForRow(i.key(), i.value());-
663 }
never executed: end of block
0
664-
665-
666 QAbstractItemDelegate *delegate = column->itemDelegate();-
667 column->setItemDelegate(d->itemDelegate);-
668 delete delegate;-
669}
never executed: end of block
0
670-
671-
672-
673-
674-
675-
676QWidget *QColumnView::previewWidget() const-
677{-
678 const QColumnViewPrivate * const d = d_func();-
679 return
never executed: return d->previewWidget;
d->previewWidget;
never executed: return d->previewWidget;
0
680}-
681void QColumnView::setPreviewWidget(QWidget *widget)-
682{-
683 QColumnViewPrivate * const d = d_func();-
684 d->setPreviewWidget(widget);-
685}
never executed: end of block
0
686-
687-
688-
689-
690void QColumnViewPrivate::setPreviewWidget(QWidget *widget)-
691{-
692 QColumnView * const q = q_func();-
693 if (previewColumn
previewColumnDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
694 if (!columns.isEmpty()
!columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
&& columns.last() == previewColumn
columns.last()... previewColumnDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
695 columns.removeLast();
never executed: columns.removeLast();
0
696 previewColumn->deleteLater();-
697 }
never executed: end of block
0
698 QColumnViewPreviewColumn *column = new QColumnViewPreviewColumn(q);-
699 column->setPreviewWidget(widget);-
700 previewColumn = column;-
701 previewColumn->hide();-
702 previewColumn->setFrameShape(QFrame::NoFrame);-
703 previewColumn->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);-
704 previewColumn->setSelectionMode(QAbstractItemView::NoSelection);-
705 previewColumn->setMinimumWidth(qMax(previewColumn->verticalScrollBar()->width(),-
706 previewColumn->minimumWidth()));-
707 previewWidget = widget;-
708 previewWidget->setParent(previewColumn->viewport());-
709}
never executed: end of block
0
710void QColumnView::setColumnWidths(const QList<int> &list)-
711{-
712 QColumnViewPrivate * const d = d_func();-
713 int i = 0;-
714 const int listCount = list.count();-
715 const int count = qMin(listCount, d->columns.count());-
716 for (; i < count
i < countDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
717 d->columns.at(i)->resize(list.at(i), d->columns.at(i)->height());-
718 d->columnSizes[i] = list.at(i);-
719 }
never executed: end of block
0
720-
721 d->columnSizes.reserve(listCount);-
722 for (; i < listCount
i < listCountDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i)
0
723 d->columnSizes.append(list.at(i));
never executed: d->columnSizes.append(list.at(i));
0
724}
never executed: end of block
0
725-
726-
727-
728-
729-
730-
731QList<int> QColumnView::columnWidths() const-
732{-
733 const QColumnViewPrivate * const d = d_func();-
734 QList<int> list;-
735 const int columnCount = d->columns.count();-
736 list.reserve(columnCount);-
737 for (int i = 0; i < columnCount
i < columnCountDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i)
0
738 list.append(d->columnSizes.at(i));
never executed: list.append(d->columnSizes.at(i));
0
739 return
never executed: return list;
list;
never executed: return list;
0
740}-
741-
742-
743-
744-
745void QColumnView::rowsInserted(const QModelIndex &parent, int start, int end)-
746{-
747 QAbstractItemView::rowsInserted(parent, start, end);-
748 d_func()->checkColumnCreation(parent);-
749}
never executed: end of block
0
750-
751-
752-
753-
754void QColumnView::currentChanged(const QModelIndex &current, const QModelIndex &previous)-
755{-
756 QColumnViewPrivate * const d = d_func();-
757 if (!current.isValid()
!current.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
758 QAbstractItemView::currentChanged(current, previous);-
759 return;
never executed: return;
0
760 }-
761-
762 QModelIndex currentParent = current.parent();-
763-
764 if (currentParent == previous.parent()
currentParent ...vious.parent()Description
TRUEnever evaluated
FALSEnever evaluated
0
765 && model()->hasChildren(current)
model()->hasChildren(current)Description
TRUEnever evaluated
FALSEnever evaluated
&& model()->hasChildren(previous)
model()->hasChildren(previous)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
766 for (int i = 0; i < d->columns.size()
i < d->columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
767 if (currentParent == d->columns.at(i)->rootIndex()
currentParent ...)->rootIndex()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
768 if (d->columns.size() > i + 1
d->columns.size() > i + 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
769 QAbstractItemView::currentChanged(current, previous);-
770 return;
never executed: return;
0
771 }-
772 break;
never executed: break;
0
773 }-
774 }
never executed: end of block
0
775 }
never executed: end of block
0
776-
777-
778 bool found = false;-
779 if (currentParent == previous
currentParent == previousDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
780 for (int i = 0; i < d->columns.size()
i < d->columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
781 if (currentParent == d->columns.at(i)->rootIndex()
currentParent ...)->rootIndex()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
782 found = true;-
783 if (d->columns.size() < i + 2
d->columns.size() < i + 2Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
784 d->createColumn(current, false);-
785 }
never executed: end of block
0
786 break;
never executed: break;
0
787 }-
788 }
never executed: end of block
0
789 }
never executed: end of block
0
790 if (!found
!foundDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
791 d->closeColumns(current, true);
never executed: d->closeColumns(current, true);
0
792-
793 if (!model()->hasChildren(current)
!model()->hasChildren(current)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
794 updatePreviewWidget(current);
never executed: updatePreviewWidget(current);
0
795-
796 QAbstractItemView::currentChanged(current, previous);-
797}
never executed: end of block
0
798-
799-
800-
801-
802-
803void QColumnViewPrivate::_q_changeCurrentColumn()-
804{-
805 QColumnView * const q = q_func();-
806 if (columns.isEmpty()
columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
807 return;
never executed: return;
0
808-
809 QModelIndex current = q->currentIndex();-
810 if (!current.isValid()
!current.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
811 return;
never executed: return;
0
812-
813-
814 closeColumns(current, true);-
815-
816-
817 int currentColumn = qMax(0, columns.size() - 2);-
818 QAbstractItemView *parentColumn = columns.at(currentColumn);-
819 if (q->hasFocus()
q->hasFocus()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
820 parentColumn->setFocus(Qt::OtherFocusReason);
never executed: parentColumn->setFocus(Qt::OtherFocusReason);
0
821 q->setFocusProxy(parentColumn);-
822-
823-
824 for (int i = 0; i < columns.size()
i < columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
825 if (columns.at(i)->selectionModel() == q->selectionModel()
columns.at(i)-...lectionModel()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
826 QItemSelectionModel *replacementSelectionModel =-
827 new QItemSelectionModel(parentColumn->model());-
828 replacementSelectionModel->setCurrentIndex(-
829 q->selectionModel()->currentIndex(), QItemSelectionModel::Current);-
830 replacementSelectionModel->select(-
831 q->selectionModel()->selection(), QItemSelectionModel::Select);-
832 QAbstractItemView *view = columns.at(i);-
833 view->setSelectionModel(replacementSelectionModel);-
834 view->setFocusPolicy(Qt::NoFocus);-
835 if (columns.size() > i + 1
columns.size() > i + 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
836 const QModelIndex newRootIndex = columns.at(i + 1)->rootIndex();-
837 if (newRootIndex.isValid()
newRootIndex.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
838 view->setCurrentIndex(newRootIndex);
never executed: view->setCurrentIndex(newRootIndex);
0
839 }
never executed: end of block
0
840 break;
never executed: break;
0
841 }-
842 }
never executed: end of block
0
843 parentColumn->selectionModel()->deleteLater();-
844 parentColumn->setFocusPolicy(Qt::StrongFocus);-
845 parentColumn->setSelectionModel(q->selectionModel());-
846-
847 if (currentColumn > 0
currentColumn > 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
848 parentColumn = columns.at(currentColumn - 1);-
849 if (parentColumn->currentIndex() != current.parent()
parentColumn->...rrent.parent()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
850 parentColumn->setCurrentIndex(current.parent());
never executed: parentColumn->setCurrentIndex(current.parent());
0
851 }
never executed: end of block
0
852-
853 if (columns.last()->isHidden()
columns.last()->isHidden()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
854 columns.last()->setVisible(true);-
855 }
never executed: end of block
0
856 if (columns.last()->selectionModel()
columns.last()...lectionModel()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
857 columns.last()->selectionModel()->clear();
never executed: columns.last()->selectionModel()->clear();
0
858 updateScrollbars();-
859}
never executed: end of block
0
860-
861-
862-
863-
864void QColumnView::selectAll()-
865{-
866 if (!model()
!model()Description
TRUEnever evaluated
FALSEnever evaluated
|| !selectionModel()
!selectionModel()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
867 return;
never executed: return;
0
868-
869 QModelIndexList indexList = selectionModel()->selectedIndexes();-
870 QModelIndex parent = rootIndex();-
871 QItemSelection selection;-
872 if (indexList.count() >= 1
indexList.count() >= 1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
873 parent = indexList.at(0).parent();
never executed: parent = indexList.at(0).parent();
0
874 if (indexList.count() == 1
indexList.count() == 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
875 parent = indexList.at(0);-
876 if (!model()->hasChildren(parent)
!model()->hasChildren(parent)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
877 parent = parent.parent();
never executed: parent = parent.parent();
0
878 else-
879 selection.append(QItemSelectionRange(parent, parent));
never executed: selection.append(QItemSelectionRange(parent, parent));
0
880 }-
881-
882 QModelIndex tl = model()->index(0, 0, parent);-
883 QModelIndex br = model()->index(model()->rowCount(parent) - 1,-
884 model()->columnCount(parent) - 1,-
885 parent);-
886 selection.append(QItemSelectionRange(tl, br));-
887 selectionModel()->select(selection, QItemSelectionModel::ClearAndSelect);-
888}
never executed: end of block
0
889-
890-
891-
892-
893QColumnViewPrivate::QColumnViewPrivate()-
894: QAbstractItemViewPrivate()-
895,showResizeGrips(true)-
896,offset(0)-
897,previewWidget(0)-
898,previewColumn(0)-
899{-
900}
never executed: end of block
0
901-
902QColumnViewPrivate::~QColumnViewPrivate()-
903{-
904}-
905-
906-
907-
908-
909-
910void QColumnViewPrivate::_q_columnsInserted(const QModelIndex &parent, int start, int end)-
911{-
912 QAbstractItemViewPrivate::_q_columnsInserted(parent, start, end);-
913 checkColumnCreation(parent);-
914}
never executed: end of block
0
915-
916-
917-
918-
919-
920-
921-
922void QColumnViewPrivate::checkColumnCreation(const QModelIndex &parent)-
923{-
924 if (parent == q_func()->currentIndex()
parent == q_fu...currentIndex()Description
TRUEnever evaluated
FALSEnever evaluated
&& model->hasChildren(parent)
model->hasChildren(parent)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
925-
926-
927 for (int i = 0; i < columns.count()
i < columns.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
928 QAbstractItemView *view = columns.at(i);-
929 if (view->rootIndex() == parent
view->rootIndex() == parentDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
930 if (view == previewColumn
view == previewColumnDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
931-
932 closeColumns(parent, false);-
933 createColumn(parent, true );-
934 }
never executed: end of block
0
935 break;
never executed: break;
0
936 }-
937 }
never executed: end of block
0
938 }
never executed: end of block
0
939}
never executed: end of block
0
940-
941-
942-
943-
944-
945void QColumnViewPrivate::doLayout()-
946{-
947 QColumnView * const q = q_func();-
948 if (!model
!modelDescription
TRUEnever evaluated
FALSEnever evaluated
|| columns.isEmpty()
columns.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
949 return;
never executed: return;
0
950-
951 int viewportHeight = viewport->height();-
952 int x = columns.at(0)->x();-
953-
954 if (q->isRightToLeft()
q->isRightToLeft()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
955 x = viewport->width() + q->horizontalOffset();-
956 for (int i = 0; i < columns.size()
i < columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
957 QAbstractItemView *view = columns.at(i);-
958 x -= view->width();-
959 if (x != view->x()
x != view->x()Description
TRUEnever evaluated
FALSEnever evaluated
|| viewportHeight != view->height()
viewportHeight...view->height()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
960 view->setGeometry(x, 0, view->width(), viewportHeight);
never executed: view->setGeometry(x, 0, view->width(), viewportHeight);
0
961 }
never executed: end of block
0
962 }
never executed: end of block
else {
0
963 for (int i = 0; i < columns.size()
i < columns.size()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
964 QAbstractItemView *view = columns.at(i);-
965 int currentColumnWidth = view->width();-
966 if (x != view->x()
x != view->x()Description
TRUEnever evaluated
FALSEnever evaluated
|| viewportHeight != view->height()
viewportHeight...view->height()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
967 view->setGeometry(x, 0, currentColumnWidth, viewportHeight);
never executed: view->setGeometry(x, 0, currentColumnWidth, viewportHeight);
0
968 x += currentColumnWidth;-
969 }
never executed: end of block
0
970 }
never executed: end of block
0
971}-
972void QColumnViewDelegate::paint(QPainter *painter,-
973 const QStyleOptionViewItem &option,-
974 const QModelIndex &index) const-
975{-
976 drawBackground(painter, option, index );-
977-
978 bool reverse = (option.direction == Qt::RightToLeft);-
979 int width = ((option.rect.height() * 2) / 3);-
980-
981 QStyleOptionViewItem opt = option;-
982 if (reverse
reverseDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
983 opt.rect.adjust(width,0,0,0);
never executed: opt.rect.adjust(width,0,0,0);
0
984 else-
985 opt.rect.adjust(0,0,-width,0);
never executed: opt.rect.adjust(0,0,-width,0);
0
986-
987 if (!(index.model()->flags(index) & Qt::ItemIsEnabled)
!(index.model(...ItemIsEnabled)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
988 opt.showDecorationSelected = true;-
989 opt.state |= QStyle::State_Selected;-
990 }
never executed: end of block
0
991-
992 QItemDelegate::paint(painter, opt, index);-
993-
994 if (reverse
reverseDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
995 opt.rect = QRect(option.rect.x(), option.rect.y(), width, option.rect.height());
never executed: opt.rect = QRect(option.rect.x(), option.rect.y(), width, option.rect.height());
0
996 else-
997 opt.rect = QRect(option.rect.x() + option.rect.width() - width, option.rect.y(),
never executed: opt.rect = QRect(option.rect.x() + option.rect.width() - width, option.rect.y(), width, option.rect.height());
0
998 width, option.rect.height());
never executed: opt.rect = QRect(option.rect.x() + option.rect.width() - width, option.rect.y(), width, option.rect.height());
0
999-
1000-
1001 if (index.model()->hasChildren(index)
index.model()-...hildren(index)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1002 const QWidget *view = opt.widget;-
1003 QStyle *style = view
viewDescription
TRUEnever evaluated
FALSEnever evaluated
? view->style() : QApplication::style();
0
1004 style->drawPrimitive(QStyle::PE_IndicatorColumnViewArrow, &opt, painter, view);-
1005 }
never executed: end of block
0
1006}
never executed: end of block
0
1007-
1008-
1009-
Switch to Source codePreprocessed file

Generated by Squish Coco Non-Commercial 4.3.0-BETA-master-30-08-2018-4cb69e9