qheaderview.cpp

Absolute File Name:/home/qt/qt5_coco/qt5/qtbase/src/widgets/itemviews/qheaderview.cpp
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8-
9-
10QDataStream &operator<<(QDataStream &out, const QHeaderViewPrivate::SectionItem &section)-
11{-
12 section.write(out);-
13 return
never executed: return out;
out;
never executed: return out;
0
14}-
15-
16QDataStream &operator>>(QDataStream &in, QHeaderViewPrivate::SectionItem &section)-
17{-
18 section.read(in);-
19 return
never executed: return in;
in;
never executed: return in;
0
20}-
21-
22-
23static const int maxSizeSection = 1048575;-
24QHeaderView::QHeaderView(Qt::Orientation orientation, QWidget *parent)-
25 : QAbstractItemView(*new QHeaderViewPrivate, parent)-
26{-
27 QHeaderViewPrivate * const d = d_func();-
28 d->setDefaultValues(orientation);-
29 initialize();-
30}
never executed: end of block
0
31-
32-
33-
34-
35QHeaderView::QHeaderView(QHeaderViewPrivate &dd,-
36 Qt::Orientation orientation, QWidget *parent)-
37 : QAbstractItemView(dd, parent)-
38{-
39 QHeaderViewPrivate * const d = d_func();-
40 d->setDefaultValues(orientation);-
41 initialize();-
42}
never executed: end of block
0
43-
44-
45-
46-
47-
48QHeaderView::~QHeaderView()-
49{-
50}-
51-
52-
53-
54-
55void QHeaderView::initialize()-
56{-
57 QHeaderViewPrivate * const d = d_func();-
58 setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);-
59 setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);-
60 setFrameStyle(NoFrame);-
61 setFocusPolicy(Qt::NoFocus);-
62 d->viewport->setMouseTracking(true);-
63 d->viewport->setBackgroundRole(QPalette::Button);-
64 d->textElideMode = Qt::ElideNone;-
65 delete d->itemDelegate;-
66}
never executed: end of block
0
67-
68-
69-
70-
71void QHeaderView::setModel(QAbstractItemModel *model)-
72{-
73 if (model == this->model()
model == this->model()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
74 return;
never executed: return;
0
75 QHeaderViewPrivate * const d = d_func();-
76 d->persistentHiddenSections.clear();-
77 if (d->model
d->modelDescription
TRUEnever evaluated
FALSEnever evaluated
&& d->model != QAbstractItemModelPrivate::staticEmptyModel()
d->model != QA...icEmptyModel()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
78 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
79 QObject::disconnect(d->model, qFlagLocation("2""columnsInserted(QModelIndex,int,int)" "\0" __FILE__ ":" "350"),-
80 this, qFlagLocation("1""sectionsInserted(QModelIndex,int,int)" "\0" __FILE__ ":" "351"));-
81 QObject::disconnect(d->model, qFlagLocation("2""columnsAboutToBeRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "352"),-
82 this, qFlagLocation("1""sectionsAboutToBeRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "353"));-
83 QObject::disconnect(d->model, qFlagLocation("2""columnsRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "354"),-
84 this, qFlagLocation("1""_q_sectionsRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "355"));-
85 QObject::disconnect(d->model, qFlagLocation("2""columnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)" "\0" __FILE__ ":" "356"),-
86 this, qFlagLocation("1""_q_layoutAboutToBeChanged()" "\0" __FILE__ ":" "357"));-
87 }
never executed: end of block
else {
0
88 QObject::disconnect(d->model, qFlagLocation("2""rowsInserted(QModelIndex,int,int)" "\0" __FILE__ ":" "359"),-
89 this, qFlagLocation("1""sectionsInserted(QModelIndex,int,int)" "\0" __FILE__ ":" "360"));-
90 QObject::disconnect(d->model, qFlagLocation("2""rowsAboutToBeRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "361"),-
91 this, qFlagLocation("1""sectionsAboutToBeRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "362"));-
92 QObject::disconnect(d->model, qFlagLocation("2""rowsRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "363"),-
93 this, qFlagLocation("1""_q_sectionsRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "364"));-
94 QObject::disconnect(d->model, qFlagLocation("2""rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)" "\0" __FILE__ ":" "365"),-
95 this, qFlagLocation("1""_q_layoutAboutToBeChanged()" "\0" __FILE__ ":" "366"));-
96 }
never executed: end of block
0
97 QObject::disconnect(d->model, qFlagLocation("2""headerDataChanged(Qt::Orientation,int,int)" "\0" __FILE__ ":" "368"),-
98 this, qFlagLocation("1""headerDataChanged(Qt::Orientation,int,int)" "\0" __FILE__ ":" "369"));-
99 QObject::disconnect(d->model, qFlagLocation("2""layoutAboutToBeChanged()" "\0" __FILE__ ":" "370"),-
100 this, qFlagLocation("1""_q_layoutAboutToBeChanged()" "\0" __FILE__ ":" "371"));-
101 }
never executed: end of block
0
102-
103 if (model
modelDescription
TRUEnever evaluated
FALSEnever evaluated
&& model != QAbstractItemModelPrivate::staticEmptyModel()
model != QAbst...icEmptyModel()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
104 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
105 QObject::connect(model, qFlagLocation("2""columnsInserted(QModelIndex,int,int)" "\0" __FILE__ ":" "376"),-
106 this, qFlagLocation("1""sectionsInserted(QModelIndex,int,int)" "\0" __FILE__ ":" "377"));-
107 QObject::connect(model, qFlagLocation("2""columnsAboutToBeRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "378"),-
108 this, qFlagLocation("1""sectionsAboutToBeRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "379"));-
109 QObject::connect(model, qFlagLocation("2""columnsRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "380"),-
110 this, qFlagLocation("1""_q_sectionsRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "381"));-
111 QObject::connect(model, qFlagLocation("2""columnsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)" "\0" __FILE__ ":" "382"),-
112 this, qFlagLocation("1""_q_layoutAboutToBeChanged()" "\0" __FILE__ ":" "383"));-
113 }
never executed: end of block
else {
0
114 QObject::connect(model, qFlagLocation("2""rowsInserted(QModelIndex,int,int)" "\0" __FILE__ ":" "385"),-
115 this, qFlagLocation("1""sectionsInserted(QModelIndex,int,int)" "\0" __FILE__ ":" "386"));-
116 QObject::connect(model, qFlagLocation("2""rowsAboutToBeRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "387"),-
117 this, qFlagLocation("1""sectionsAboutToBeRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "388"));-
118 QObject::connect(model, qFlagLocation("2""rowsRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "389"),-
119 this, qFlagLocation("1""_q_sectionsRemoved(QModelIndex,int,int)" "\0" __FILE__ ":" "390"));-
120 QObject::connect(model, qFlagLocation("2""rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int)" "\0" __FILE__ ":" "391"),-
121 this, qFlagLocation("1""_q_layoutAboutToBeChanged()" "\0" __FILE__ ":" "392"));-
122 }
never executed: end of block
0
123 QObject::connect(model, qFlagLocation("2""headerDataChanged(Qt::Orientation,int,int)" "\0" __FILE__ ":" "394"),-
124 this, qFlagLocation("1""headerDataChanged(Qt::Orientation,int,int)" "\0" __FILE__ ":" "395"));-
125 QObject::connect(model, qFlagLocation("2""layoutAboutToBeChanged()" "\0" __FILE__ ":" "396"),-
126 this, qFlagLocation("1""_q_layoutAboutToBeChanged()" "\0" __FILE__ ":" "397"));-
127 }
never executed: end of block
0
128-
129 d->state = QHeaderViewPrivate::NoClear;-
130 QAbstractItemView::setModel(model);-
131 d->state = QHeaderViewPrivate::NoState;-
132-
133-
134-
135-
136 initializeSections();-
137}
never executed: end of block
0
138-
139-
140-
141-
142-
143-
144-
145Qt::Orientation QHeaderView::orientation() const-
146{-
147 const QHeaderViewPrivate * const d = d_func();-
148 return
never executed: return d->orientation;
d->orientation;
never executed: return d->orientation;
0
149}-
150int QHeaderView::offset() const-
151{-
152 const QHeaderViewPrivate * const d = d_func();-
153 return
never executed: return d->offset;
d->offset;
never executed: return d->offset;
0
154}-
155void QHeaderView::setOffset(int newOffset)-
156{-
157 QHeaderViewPrivate * const d = d_func();-
158 if (d->offset == (int)newOffset
d->offset == (int)newOffsetDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
159 return;
never executed: return;
0
160 int ndelta = d->offset - newOffset;-
161 d->offset = newOffset;-
162 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
163 d->viewport->scroll(isRightToLeft() ? -ndelta : ndelta, 0);
never executed: d->viewport->scroll(isRightToLeft() ? -ndelta : ndelta, 0);
0
164 else-
165 d->viewport->scroll(0, ndelta);
never executed: d->viewport->scroll(0, ndelta);
0
166 if (d->state == QHeaderViewPrivate::ResizeSection
d->state == QH...:ResizeSectionDescription
TRUEnever evaluated
FALSEnever evaluated
&& !d->preventCursorChangeInSetOffset
!d->preventCur...ngeInSetOffsetDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
167 QPoint cursorPos = QCursor::pos();-
168 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
169 QCursor::setPos(cursorPos.x() + ndelta, cursorPos.y());
never executed: QCursor::setPos(cursorPos.x() + ndelta, cursorPos.y());
0
170 else-
171 QCursor::setPos(cursorPos.x(), cursorPos.y() + ndelta);
never executed: QCursor::setPos(cursorPos.x(), cursorPos.y() + ndelta);
0
172 d->firstPos += ndelta;-
173 d->lastPos += ndelta;-
174 }
never executed: end of block
0
175}
never executed: end of block
0
176void QHeaderView::setOffsetToSectionPosition(int visualSectionNumber)-
177{-
178 QHeaderViewPrivate * const d = d_func();-
179 if (visualSectionNumber > -1
visualSectionNumber > -1Description
TRUEnever evaluated
FALSEnever evaluated
&& visualSectionNumber < d->sectionCount()
visualSectionN...sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
180 int position = d->headerSectionPosition(d->adjustedVisualIndex(visualSectionNumber));-
181 setOffset(position);-
182 }
never executed: end of block
0
183}
never executed: end of block
0
184-
185-
186-
187-
188-
189-
190-
191void QHeaderView::setOffsetToLastSection()-
192{-
193 const QHeaderViewPrivate * const d = d_func();-
194 int size = (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
? viewport()->width() : viewport()->height());
0
195 int position = length() - size;-
196 setOffset(position);-
197}
never executed: end of block
0
198-
199-
200-
201-
202-
203-
204-
205int QHeaderView::length() const-
206{-
207 const QHeaderViewPrivate * const d = d_func();-
208 d->executePostedLayout();-
209 d->executePostedResize();-
210-
211 return
never executed: return d->length;
d->length;
never executed: return d->length;
0
212}-
213-
214-
215-
216-
217-
218-
219-
220QSize QHeaderView::sizeHint() const-
221{-
222 const QHeaderViewPrivate * const d = d_func();-
223 if (d->cachedSizeHint.isValid()
d->cachedSizeHint.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
224 return
never executed: return d->cachedSizeHint;
d->cachedSizeHint;
never executed: return d->cachedSizeHint;
0
225 d->cachedSizeHint = QSize(0, 0);-
226 const int sectionCount = count();-
227-
228-
229 int i = 0;-
230 for (int checked = 0; checked
checked < 100Description
TRUEnever evaluated
FALSEnever evaluated
< 100
checked < 100Description
TRUEnever evaluated
FALSEnever evaluated
&& i < sectionCount
i < sectionCountDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
231 if (isSectionHidden(i)
isSectionHidden(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
232 continue;
never executed: continue;
0
233 checked++;-
234 QSize hint = sectionSizeFromContents(i);-
235 d->cachedSizeHint = d->cachedSizeHint.expandedTo(hint);-
236 }
never executed: end of block
0
237-
238 i = qMax(i, sectionCount - 100 );-
239 for (int j = sectionCount - 1, checked = 0; j >= i
j >= iDescription
TRUEnever evaluated
FALSEnever evaluated
&& checked
checked < 100Description
TRUEnever evaluated
FALSEnever evaluated
< 100
checked < 100Description
TRUEnever evaluated
FALSEnever evaluated
; --j) {
0
240 if (isSectionHidden(j)
isSectionHidden(j)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
241 continue;
never executed: continue;
0
242 checked++;-
243 QSize hint = sectionSizeFromContents(j);-
244 d->cachedSizeHint = d->cachedSizeHint.expandedTo(hint);-
245 }
never executed: end of block
0
246 return
never executed: return d->cachedSizeHint;
d->cachedSizeHint;
never executed: return d->cachedSizeHint;
0
247}-
248-
249-
250-
251-
252-
253void QHeaderView::setVisible(bool v)-
254{-
255 bool actualChange = (v != isVisible());-
256 QAbstractItemView::setVisible(v);-
257 if (actualChange
actualChangeDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
258 QAbstractScrollArea *parent = qobject_cast<QAbstractScrollArea*>(parentWidget());-
259 if (parent
parentDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
260 parent->updateGeometry();
never executed: parent->updateGeometry();
0
261 }
never executed: end of block
0
262}
never executed: end of block
0
263int QHeaderView::sectionSizeHint(int logicalIndex) const-
264{-
265 const QHeaderViewPrivate * const d = d_func();-
266 if (isSectionHidden(logicalIndex)
isSectionHidden(logicalIndex)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
267 return
never executed: return 0;
0;
never executed: return 0;
0
268 if (logicalIndex < 0
logicalIndex < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalIndex >= count()
logicalIndex >= count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
269 return
never executed: return -1;
-1;
never executed: return -1;
0
270 QSize size;-
271 QVariant value = d->model->headerData(logicalIndex, d->orientation, Qt::SizeHintRole);-
272 if (value.isValid()
value.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
273 size = qvariant_cast<QSize>(value);
never executed: size = qvariant_cast<QSize>(value);
0
274 else-
275 size = sectionSizeFromContents(logicalIndex);
never executed: size = sectionSizeFromContents(logicalIndex);
0
276 int hint = d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
? size.width() : size.height();
0
277 return
never executed: return qBound(minimumSectionSize(), hint, maximumSectionSize());
qBound(minimumSectionSize(), hint, maximumSectionSize());
never executed: return qBound(minimumSectionSize(), hint, maximumSectionSize());
0
278}-
279int QHeaderView::visualIndexAt(int position) const-
280{-
281 const QHeaderViewPrivate * const d = d_func();-
282 int vposition = position;-
283 d->executePostedLayout();-
284 d->executePostedResize();-
285 const int count = d->sectionCount();-
286 if (count < 1
count < 1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
287 return
never executed: return -1;
-1;
never executed: return -1;
0
288-
289 if (d->reverse()
d->reverse()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
290 vposition = d->viewport->width() - vposition;
never executed: vposition = d->viewport->width() - vposition;
0
291 vposition += d->offset;-
292-
293 if (vposition > d->length
vposition > d->lengthDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
294 return
never executed: return -1;
-1;
never executed: return -1;
0
295 int visual = d->headerVisualIndexAt(vposition);-
296 if (visual < 0
visual < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
297 return
never executed: return -1;
-1;
never executed: return -1;
0
298-
299 while (d->isVisualIndexHidden(visual)
d->isVisualIndexHidden(visual)Description
TRUEnever evaluated
FALSEnever evaluated
){
0
300 ++visual;-
301 if (visual >= count
visual >= countDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
302 return
never executed: return -1;
-1;
never executed: return -1;
0
303 }
never executed: end of block
0
304 return
never executed: return visual;
visual;
never executed: return visual;
0
305}-
306-
307-
308-
309-
310-
311-
312-
313int QHeaderView::logicalIndexAt(int position) const-
314{-
315 const int visual = visualIndexAt(position);-
316 if (visual > -1
visual > -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
317 return
never executed: return logicalIndex(visual);
logicalIndex(visual);
never executed: return logicalIndex(visual);
0
318 return
never executed: return -1;
-1;
never executed: return -1;
0
319}-
320int QHeaderView::sectionSize(int logicalIndex) const-
321{-
322 const QHeaderViewPrivate * const d = d_func();-
323 if (isSectionHidden(logicalIndex)
isSectionHidden(logicalIndex)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
324 return
never executed: return 0;
0;
never executed: return 0;
0
325 if (logicalIndex < 0
logicalIndex < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalIndex >= count()
logicalIndex >= count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
326 return
never executed: return 0;
0;
never executed: return 0;
0
327 int visual = visualIndex(logicalIndex);-
328 if (visual == -1
visual == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
329 return
never executed: return 0;
0;
never executed: return 0;
0
330 d->executePostedResize();-
331 return
never executed: return d->headerSectionSize(visual);
d->headerSectionSize(visual);
never executed: return d->headerSectionSize(visual);
0
332}-
333int QHeaderView::sectionPosition(int logicalIndex) const-
334{-
335 const QHeaderViewPrivate * const d = d_func();-
336 int visual = visualIndex(logicalIndex);-
337-
338-
339 if (visual == -1
visual == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
340 return
never executed: return -1;
-1;
never executed: return -1;
0
341 d->executePostedResize();-
342 return
never executed: return d->headerSectionPosition(visual);
d->headerSectionPosition(visual);
never executed: return d->headerSectionPosition(visual);
0
343}-
344int QHeaderView::sectionViewportPosition(int logicalIndex) const-
345{-
346 const QHeaderViewPrivate * const d = d_func();-
347 if (logicalIndex >= count()
logicalIndex >= count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
348 return
never executed: return -1;
-1;
never executed: return -1;
0
349 int position = sectionPosition(logicalIndex);-
350 if (position < 0
position < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
351 return
never executed: return position;
position;
never executed: return position;
0
352 int offsetPosition = position - d->offset;-
353 if (d->reverse()
d->reverse()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
354 return
never executed: return d->viewport->width() - (offsetPosition + sectionSize(logicalIndex));
d->viewport->width() - (offsetPosition + sectionSize(logicalIndex));
never executed: return d->viewport->width() - (offsetPosition + sectionSize(logicalIndex));
0
355 return
never executed: return offsetPosition;
offsetPosition;
never executed: return offsetPosition;
0
356}-
357template<typename Container>-
358static void qMoveRange(Container& c,-
359 typename Container::size_type rangeStart,-
360 typename Container::size_type rangeEnd,-
361 typename Container::size_type targetPosition)-
362{-
363 ((!(targetPosition <= c.size())) ? qt_assert("targetPosition <= c.size()",__FILE__,725) : qt_noop());-
364 ((!(targetPosition < rangeStart || targetPosition >= rangeEnd)) ? qt_assert("targetPosition < rangeStart || targetPosition >= rangeEnd",__FILE__,726) : qt_noop());-
365-
366 const bool forwardMove = targetPosition > rangeStart;-
367 typename Container::size_type first = std::min(rangeStart, targetPosition);-
368 typename Container::size_type mid = forwardMove
forwardMoveDescription
TRUEnever evaluated
FALSEnever evaluated
? rangeEnd : rangeStart;
0
369 typename Container::size_type last = forwardMove
forwardMoveDescription
TRUEnever evaluated
FALSEnever evaluated
? targetPosition + 1 : rangeEnd;
0
370 std::rotate(c.begin() + first, c.begin() + mid, c.begin() + last);-
371}
never executed: end of block
0
372-
373-
374-
375-
376-
377-
378-
379void QHeaderView::moveSection(int from, int to)-
380{-
381 QHeaderViewPrivate * const d = d_func();-
382-
383 d->executePostedLayout();-
384 if (from < 0
from < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| from >= d->sectionCount()
from >= d->sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
|| to < 0
to < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| to >= d->sectionCount()
to >= d->sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
385 return;
never executed: return;
0
386-
387 if (from == to
from == toDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
388 int logical = logicalIndex(from);-
389 ((!(logical != -1)) ? qt_assert("logical != -1",__FILE__,751) : qt_noop());-
390 updateSection(logical);-
391 return;
never executed: return;
0
392 }-
393-
394 if (stretchLastSection()
stretchLastSection()Description
TRUEnever evaluated
FALSEnever evaluated
&& to == d->lastVisibleVisualIndex()
to == d->lastV...eVisualIndex()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
395 d->lastSectionSize = sectionSize(from);
never executed: d->lastSectionSize = sectionSize(from);
0
396-
397 d->initializeIndexMapping();-
398-
399 int *visualIndices = d->visualIndices.data();-
400 int *logicalIndices = d->logicalIndices.data();-
401 int logical = logicalIndices[from];-
402 int visual = from;-
403-
404 if (to > from
to > fromDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
405 while (visual < to
visual < toDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
406 visualIndices[logicalIndices[visual + 1]] = visual;-
407 logicalIndices[visual] = logicalIndices[visual + 1];-
408 ++visual;-
409 }
never executed: end of block
0
410 }
never executed: end of block
else {
0
411 while (visual > to
visual > toDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
412 visualIndices[logicalIndices[visual - 1]] = visual;-
413 logicalIndices[visual] = logicalIndices[visual - 1];-
414 --visual;-
415 }
never executed: end of block
0
416 }
never executed: end of block
0
417 visualIndices[logical] = to;-
418 logicalIndices[to] = logical;-
419-
420 qMoveRange(d->sectionItems, from, from + 1, to);-
421-
422 d->sectionStartposRecalc = true;-
423-
424 if (d->hasAutoResizeSections()
d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
425 d->doDelayedResizeSections();
never executed: d->doDelayedResizeSections();
0
426 d->viewport->update();-
427-
428 sectionMoved(logical, from, to);-
429}
never executed: end of block
0
430void QHeaderView::swapSections(int first, int second)-
431{-
432 QHeaderViewPrivate * const d = d_func();-
433-
434 if (first == second
first == secondDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
435 return;
never executed: return;
0
436 d->executePostedLayout();-
437 if (first < 0
first < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| first >= d->sectionCount()
first >= d->sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
|| second < 0
second < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| second >= d->sectionCount()
second >= d->sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
438 return;
never executed: return;
0
439-
440 int firstSize = d->headerSectionSize(first);-
441 ResizeMode firstMode = d->headerSectionResizeMode(first);-
442 int firstLogical = d->logicalIndex(first);-
443-
444 int secondSize = d->headerSectionSize(second);-
445 ResizeMode secondMode = d->headerSectionResizeMode(second);-
446 int secondLogical = d->logicalIndex(second);-
447-
448 if (d->state == QHeaderViewPrivate::ResizeSection
d->state == QH...:ResizeSectionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
449 d->preventCursorChangeInSetOffset = true;
never executed: d->preventCursorChangeInSetOffset = true;
0
450-
451 d->createSectionItems(second, second, firstSize, firstMode);-
452 d->createSectionItems(first, first, secondSize, secondMode);-
453-
454 d->initializeIndexMapping();-
455-
456 d->visualIndices[firstLogical] = second;-
457 d->logicalIndices[second] = firstLogical;-
458-
459 d->visualIndices[secondLogical] = first;-
460 d->logicalIndices[first] = secondLogical;-
461-
462 if (!d->hiddenSectionSize.isEmpty()
!d->hiddenSect...Size.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
463 bool firstHidden = d->isVisualIndexHidden(first);-
464 bool secondHidden = d->isVisualIndexHidden(second);-
465 d->setVisualIndexHidden(first, secondHidden);-
466 d->setVisualIndexHidden(second, firstHidden);-
467 }
never executed: end of block
0
468-
469 d->viewport->update();-
470 sectionMoved(firstLogical, first, second);-
471 sectionMoved(secondLogical, second, first);-
472}
never executed: end of block
0
473void QHeaderView::resizeSection(int logical, int size)-
474{-
475 QHeaderViewPrivate * const d = d_func();-
476 if (logical < 0
logical < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logical >= count()
logical >= count()Description
TRUEnever evaluated
FALSEnever evaluated
|| size < 0
size < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| size > maxSizeSection
size > maxSizeSectionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
477 return;
never executed: return;
0
478-
479 if (isSectionHidden(logical)
isSectionHidden(logical)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
480 d->hiddenSectionSize.insert(logical, size);-
481 return;
never executed: return;
0
482 }-
483-
484 int visual = visualIndex(logical);-
485 if (visual == -1
visual == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
486 return;
never executed: return;
0
487-
488 if (d->state == QHeaderViewPrivate::ResizeSection
d->state == QH...:ResizeSectionDescription
TRUEnever evaluated
FALSEnever evaluated
&& !d->cascadingResizing
!d->cascadingResizingDescription
TRUEnever evaluated
FALSEnever evaluated
&& logical != d->section
logical != d->sectionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
489 d->preventCursorChangeInSetOffset = true;
never executed: d->preventCursorChangeInSetOffset = true;
0
490-
491 int oldSize = d->headerSectionSize(visual);-
492 if (oldSize == size
oldSize == sizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
493 return;
never executed: return;
0
494-
495 d->executePostedLayout();-
496 d->invalidateCachedSizeHint();-
497-
498 if (stretchLastSection()
stretchLastSection()Description
TRUEnever evaluated
FALSEnever evaluated
&& visual == d->lastVisibleVisualIndex()
visual == d->l...eVisualIndex()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
499 d->lastSectionSize = size;
never executed: d->lastSectionSize = size;
0
500-
501 d->createSectionItems(visual, visual, size, d->headerSectionResizeMode(visual));-
502-
503 if (!updatesEnabled()
!updatesEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
504 if (d->hasAutoResizeSections()
d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
505 d->doDelayedResizeSections();
never executed: d->doDelayedResizeSections();
0
506 sectionResized(logical, oldSize, size);-
507 return;
never executed: return;
0
508 }-
509-
510 int w = d->viewport->width();-
511 int h = d->viewport->height();-
512 int pos = sectionViewportPosition(logical);-
513 QRect r;-
514 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
515 if (isRightToLeft()
isRightToLeft()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
516 r.setRect(0, 0, pos + size, h);
never executed: r.setRect(0, 0, pos + size, h);
0
517 else-
518 r.setRect(pos, 0, w - pos, h);
never executed: r.setRect(pos, 0, w - pos, h);
0
519 else-
520 r.setRect(0, pos, w, h - pos);
never executed: r.setRect(0, pos, w, h - pos);
0
521-
522 if (d->hasAutoResizeSections()
d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
523 d->doDelayedResizeSections();-
524 r = d->viewport->rect();-
525 }
never executed: end of block
0
526 QAbstractScrollArea *parent = qobject_cast<QAbstractScrollArea *>(parentWidget());-
527 if (parent
parentDescription
TRUEnever evaluated
FALSEnever evaluated
&& parent->sizeAdjustPolicy() == QAbstractScrollArea::AdjustToContents
parent->sizeAd...justToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
528 parent->updateGeometry();
never executed: parent->updateGeometry();
0
529-
530 d->viewport->update(r.normalized());-
531 sectionResized(logical, oldSize, size);-
532}
never executed: end of block
0
533void QHeaderView::resizeSections(QHeaderView::ResizeMode mode)-
534{-
535 QHeaderViewPrivate * const d = d_func();-
536 d->resizeSections(mode, true);-
537}
never executed: end of block
0
538bool QHeaderView::isSectionHidden(int logicalIndex) const-
539{-
540 const QHeaderViewPrivate * const d = d_func();-
541 d->executePostedLayout();-
542 if (d->hiddenSectionSize.isEmpty()
d->hiddenSectionSize.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalIndex < 0
logicalIndex < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalIndex >= d->sectionCount()
logicalIndex >...sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
543 return
never executed: return false;
false;
never executed: return false;
0
544 int visual = visualIndex(logicalIndex);-
545 ((!(visual != -1)) ? qt_assert("visual != -1",__FILE__,967) : qt_noop());-
546 return
never executed: return d->isVisualIndexHidden(visual);
d->isVisualIndexHidden(visual);
never executed: return d->isVisualIndexHidden(visual);
0
547}-
548int QHeaderView::hiddenSectionCount() const-
549{-
550 const QHeaderViewPrivate * const d = d_func();-
551 return
never executed: return d->hiddenSectionSize.count();
d->hiddenSectionSize.count();
never executed: return d->hiddenSectionSize.count();
0
552}-
553void QHeaderView::setSectionHidden(int logicalIndex, bool hide)-
554{-
555 QHeaderViewPrivate * const d = d_func();-
556 if (logicalIndex < 0
logicalIndex < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalIndex >= count()
logicalIndex >= count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
557 return;
never executed: return;
0
558-
559 d->executePostedLayout();-
560 int visual = visualIndex(logicalIndex);-
561 ((!(visual != -1)) ? qt_assert("visual != -1",__FILE__,999) : qt_noop());-
562 if (hide == d->isVisualIndexHidden(visual)
hide == d->isV...Hidden(visual)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
563 return;
never executed: return;
0
564 if (hide
hideDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
565 int size = d->headerSectionSize(visual);-
566 if (!d->hasAutoResizeSections()
!d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
567 resizeSection(logicalIndex, 0);
never executed: resizeSection(logicalIndex, 0);
0
568 d->hiddenSectionSize.insert(logicalIndex, size);-
569 d->setVisualIndexHidden(visual, true);-
570 if (d->hasAutoResizeSections()
d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
571 d->doDelayedResizeSections();
never executed: d->doDelayedResizeSections();
0
572 }
never executed: end of block
else {
0
573 int size = d->hiddenSectionSize.value(logicalIndex, d->defaultSectionSize);-
574 d->hiddenSectionSize.remove(logicalIndex);-
575 d->setVisualIndexHidden(visual, false);-
576 resizeSection(logicalIndex, size);-
577 }
never executed: end of block
0
578}-
579-
580-
581-
582-
583-
584-
585-
586int QHeaderView::count() const-
587{-
588 const QHeaderViewPrivate * const d = d_func();-
589-
590-
591 d->executePostedLayout();-
592 return
never executed: return d->sectionCount();
d->sectionCount();
never executed: return d->sectionCount();
0
593}-
594int QHeaderView::visualIndex(int logicalIndex) const-
595{-
596 const QHeaderViewPrivate * const d = d_func();-
597 if (logicalIndex < 0
logicalIndex < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
598 return
never executed: return -1;
-1;
never executed: return -1;
0
599 d->executePostedLayout();-
600 if (d->visualIndices.isEmpty()
d->visualIndices.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
601 if (logicalIndex < d->sectionCount()
logicalIndex <...sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
602 return
never executed: return logicalIndex;
logicalIndex;
never executed: return logicalIndex;
0
603 }
never executed: end of block
else if (logicalIndex < d->visualIndices.count()
logicalIndex <...ndices.count()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
604 int visual = d->visualIndices.at(logicalIndex);-
605 ((!(visual < d->sectionCount())) ? qt_assert("visual < d->sectionCount()",__FILE__,1053) : qt_noop());-
606 return
never executed: return visual;
visual;
never executed: return visual;
0
607 }-
608 return
never executed: return -1;
-1;
never executed: return -1;
0
609}-
610int QHeaderView::logicalIndex(int visualIndex) const-
611{-
612 const QHeaderViewPrivate * const d = d_func();-
613 if (visualIndex < 0
visualIndex < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| visualIndex >= d->sectionCount()
visualIndex >=...sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
614 return
never executed: return -1;
-1;
never executed: return -1;
0
615 return
never executed: return d->logicalIndex(visualIndex);
d->logicalIndex(visualIndex);
never executed: return d->logicalIndex(visualIndex);
0
616}-
617void QHeaderView::setSectionsMovable(bool movable)-
618{-
619 QHeaderViewPrivate * const d = d_func();-
620 d->movableSections = movable;-
621}
never executed: end of block
0
622bool QHeaderView::sectionsMovable() const-
623{-
624 const QHeaderViewPrivate * const d = d_func();-
625 return
never executed: return d->movableSections;
d->movableSections;
never executed: return d->movableSections;
0
626}-
627void QHeaderView::setSectionsClickable(bool clickable)-
628{-
629 QHeaderViewPrivate * const d = d_func();-
630 d->clickableSections = clickable;-
631}
never executed: end of block
0
632bool QHeaderView::sectionsClickable() const-
633{-
634 const QHeaderViewPrivate * const d = d_func();-
635 return
never executed: return d->clickableSections;
d->clickableSections;
never executed: return d->clickableSections;
0
636}-
637void QHeaderView::setHighlightSections(bool highlight)-
638{-
639 QHeaderViewPrivate * const d = d_func();-
640 d->highlightSelected = highlight;-
641}
never executed: end of block
0
642-
643bool QHeaderView::highlightSections() const-
644{-
645 const QHeaderViewPrivate * const d = d_func();-
646 return
never executed: return d->highlightSelected;
d->highlightSelected;
never executed: return d->highlightSelected;
0
647}-
648void QHeaderView::setSectionResizeMode(ResizeMode mode)-
649{-
650 QHeaderViewPrivate * const d = d_func();-
651 initializeSections();-
652 d->stretchSections = (mode == Stretch
mode == StretchDescription
TRUEnever evaluated
FALSEnever evaluated
? count() : 0);
0
653 d->contentsSections = (mode == ResizeToContents
mode == ResizeToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
? count() : 0);
0
654 d->setGlobalHeaderResizeMode(mode);-
655 if (d->hasAutoResizeSections()
d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
656 d->doDelayedResizeSections();
never executed: d->doDelayedResizeSections();
0
657}
never executed: end of block
0
658void QHeaderView::setSectionResizeMode(int logicalIndex, ResizeMode mode)-
659{-
660 QHeaderViewPrivate * const d = d_func();-
661 int visual = visualIndex(logicalIndex);-
662 ((!(visual != -1)) ? qt_assert("visual != -1",__FILE__,1227) : qt_noop());-
663-
664 ResizeMode old = d->headerSectionResizeMode(visual);-
665 d->setHeaderSectionResizeMode(visual, mode);-
666-
667 if (mode == Stretch
mode == StretchDescription
TRUEnever evaluated
FALSEnever evaluated
&& old != Stretch
old != StretchDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
668 ++
never executed: ++d->stretchSections;
d->stretchSections;
never executed: ++d->stretchSections;
0
669 else if (mode == ResizeToContents
mode == ResizeToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
&& old != ResizeToContents
old != ResizeToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
670 ++
never executed: ++d->contentsSections;
d->contentsSections;
never executed: ++d->contentsSections;
0
671 else if (mode != Stretch
mode != StretchDescription
TRUEnever evaluated
FALSEnever evaluated
&& old == Stretch
old == StretchDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
672 --
never executed: --d->stretchSections;
d->stretchSections;
never executed: --d->stretchSections;
0
673 else if (mode != ResizeToContents
mode != ResizeToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
&& old == ResizeToContents
old == ResizeToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
674 --
never executed: --d->contentsSections;
d->contentsSections;
never executed: --d->contentsSections;
0
675-
676 if (d->hasAutoResizeSections()
d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
&& d->state == QHeaderViewPrivate::NoState
d->state == QH...ivate::NoStateDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
677 d->doDelayedResizeSections();
never executed: d->doDelayedResizeSections();
0
678}
never executed: end of block
0
679QHeaderView::ResizeMode QHeaderView::sectionResizeMode(int logicalIndex) const-
680{-
681 const QHeaderViewPrivate * const d = d_func();-
682 int visual = visualIndex(logicalIndex);-
683 if (visual == -1
visual == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
684 return
never executed: return Fixed;
Fixed;
never executed: return Fixed;
0
685 return
never executed: return d->headerSectionResizeMode(visual);
d->headerSectionResizeMode(visual);
never executed: return d->headerSectionResizeMode(visual);
0
686}-
687void QHeaderView::setResizeContentsPrecision(int precision)-
688{-
689 QHeaderViewPrivate * const d = d_func();-
690 d->resizeContentsPrecision = precision;-
691}
never executed: end of block
0
692int QHeaderView::resizeContentsPrecision() const-
693{-
694 const QHeaderViewPrivate * const d = d_func();-
695 return
never executed: return d->resizeContentsPrecision;
d->resizeContentsPrecision;
never executed: return d->resizeContentsPrecision;
0
696}-
697int QHeaderView::stretchSectionCount() const-
698{-
699 const QHeaderViewPrivate * const d = d_func();-
700 return
never executed: return d->stretchSections;
d->stretchSections;
never executed: return d->stretchSections;
0
701}-
702void QHeaderView::setSortIndicatorShown(bool show)-
703{-
704 QHeaderViewPrivate * const d = d_func();-
705 if (d->sortIndicatorShown == show
d->sortIndicatorShown == showDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
706 return;
never executed: return;
0
707-
708 d->sortIndicatorShown = show;-
709-
710 if (sortIndicatorSection() < 0
sortIndicatorSection() < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| sortIndicatorSection() > count()
sortIndicatorS...on() > count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
711 return;
never executed: return;
0
712-
713 if (d->headerSectionResizeMode(sortIndicatorSection()) == ResizeToContents
d->headerSecti...sizeToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
714 resizeSections();
never executed: resizeSections();
0
715-
716 d->viewport->update();-
717}
never executed: end of block
0
718-
719bool QHeaderView::isSortIndicatorShown() const-
720{-
721 const QHeaderViewPrivate * const d = d_func();-
722 return
never executed: return d->sortIndicatorShown;
d->sortIndicatorShown;
never executed: return d->sortIndicatorShown;
0
723}-
724void QHeaderView::setSortIndicator(int logicalIndex, Qt::SortOrder order)-
725{-
726 QHeaderViewPrivate * const d = d_func();-
727-
728-
729 int old = d->sortIndicatorSection;-
730 if (old == logicalIndex
old == logicalIndexDescription
TRUEnever evaluated
FALSEnever evaluated
&& order == d->sortIndicatorOrder
order == d->sortIndicatorOrderDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
731 return;
never executed: return;
0
732 d->sortIndicatorSection = logicalIndex;-
733 d->sortIndicatorOrder = order;-
734-
735 if (logicalIndex >= d->sectionCount()
logicalIndex >...sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
736 sortIndicatorChanged(logicalIndex, order);-
737 return;
never executed: return;
0
738 }-
739-
740 if (old != logicalIndex
old != logicalIndexDescription
TRUEnever evaluated
FALSEnever evaluated
0
741 && ((logicalIndex >= 0
logicalIndex >= 0Description
TRUEnever evaluated
FALSEnever evaluated
&& sectionResizeMode(logicalIndex) == ResizeToContents
sectionResizeM...sizeToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
742 || old >= d->sectionCount()
old >= d->sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
|| (old >= 0
old >= 0Description
TRUEnever evaluated
FALSEnever evaluated
&& sectionResizeMode(old) == ResizeToContents
sectionResizeM...sizeToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
))) {
0
743 resizeSections();-
744 d->viewport->update();-
745 }
never executed: end of block
else {
0
746 if (old >= 0
old >= 0Description
TRUEnever evaluated
FALSEnever evaluated
&& old != logicalIndex
old != logicalIndexDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
747 updateSection(old);
never executed: updateSection(old);
0
748 if (logicalIndex >= 0
logicalIndex >= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
749 updateSection(logicalIndex);
never executed: updateSection(logicalIndex);
0
750 }
never executed: end of block
0
751-
752 sortIndicatorChanged(logicalIndex, order);-
753}
never executed: end of block
0
754int QHeaderView::sortIndicatorSection() const-
755{-
756 const QHeaderViewPrivate * const d = d_func();-
757 return
never executed: return d->sortIndicatorSection;
d->sortIndicatorSection;
never executed: return d->sortIndicatorSection;
0
758}-
759Qt::SortOrder QHeaderView::sortIndicatorOrder() const-
760{-
761 const QHeaderViewPrivate * const d = d_func();-
762 return
never executed: return d->sortIndicatorOrder;
d->sortIndicatorOrder;
never executed: return d->sortIndicatorOrder;
0
763}-
764bool QHeaderView::stretchLastSection() const-
765{-
766 const QHeaderViewPrivate * const d = d_func();-
767 return
never executed: return d->stretchLastSection;
d->stretchLastSection;
never executed: return d->stretchLastSection;
0
768}-
769-
770void QHeaderView::setStretchLastSection(bool stretch)-
771{-
772 QHeaderViewPrivate * const d = d_func();-
773 if (d->stretchLastSection == stretch
d->stretchLast...ion == stretchDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
774 return;
never executed: return;
0
775 d->stretchLastSection = stretch;-
776 if (d->state != QHeaderViewPrivate::NoState
d->state != QH...ivate::NoStateDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
777 return;
never executed: return;
0
778 if (stretch
stretchDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
779 resizeSections();
never executed: resizeSections();
0
780 else if (count()
count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
781 resizeSection(count() - 1, d->defaultSectionSize);
never executed: resizeSection(count() - 1, d->defaultSectionSize);
0
782}
never executed: end of block
0
783bool QHeaderView::cascadingSectionResizes() const-
784{-
785 const QHeaderViewPrivate * const d = d_func();-
786 return
never executed: return d->cascadingResizing;
d->cascadingResizing;
never executed: return d->cascadingResizing;
0
787}-
788-
789void QHeaderView::setCascadingSectionResizes(bool enable)-
790{-
791 QHeaderViewPrivate * const d = d_func();-
792 d->cascadingResizing = enable;-
793}
never executed: end of block
0
794int QHeaderView::defaultSectionSize() const-
795{-
796 const QHeaderViewPrivate * const d = d_func();-
797 return
never executed: return d->defaultSectionSize;
d->defaultSectionSize;
never executed: return d->defaultSectionSize;
0
798}-
799-
800void QHeaderView::setDefaultSectionSize(int size)-
801{-
802 QHeaderViewPrivate * const d = d_func();-
803 if (size < 0
size < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| size > maxSizeSection
size > maxSizeSectionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
804 return;
never executed: return;
0
805 d->setDefaultSectionSize(size);-
806}
never executed: end of block
0
807-
808void QHeaderView::resetDefaultSectionSize()-
809{-
810 QHeaderViewPrivate * const d = d_func();-
811 if (d->customDefaultSectionSize
d->customDefaultSectionSizeDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
812 d->updateDefaultSectionSizeFromStyle();-
813 d->customDefaultSectionSize = false;-
814 }
never executed: end of block
0
815}
never executed: end of block
0
816int QHeaderView::minimumSectionSize() const-
817{-
818 const QHeaderViewPrivate * const d = d_func();-
819 if (d->minimumSectionSize == -1
d->minimumSectionSize == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
820 QSize strut = QApplication::globalStrut();-
821 int margin = 2 * style()->pixelMetric(QStyle::PM_HeaderMargin, 0, this);-
822 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
823 return
never executed: return qMax(strut.width(), (fontMetrics().maxWidth() + margin));
qMax(strut.width(), (fontMetrics().maxWidth() + margin));
never executed: return qMax(strut.width(), (fontMetrics().maxWidth() + margin));
0
824 return
never executed: return qMax(strut.height(), (fontMetrics().height() + margin));
qMax(strut.height(), (fontMetrics().height() + margin));
never executed: return qMax(strut.height(), (fontMetrics().height() + margin));
0
825 }-
826 return
never executed: return d->minimumSectionSize;
d->minimumSectionSize;
never executed: return d->minimumSectionSize;
0
827}-
828-
829void QHeaderView::setMinimumSectionSize(int size)-
830{-
831 QHeaderViewPrivate * const d = d_func();-
832 if (size < -1
size < -1Description
TRUEnever evaluated
FALSEnever evaluated
|| size > maxSizeSection
size > maxSizeSectionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
833 return;
never executed: return;
0
834 d->minimumSectionSize = size;-
835 if (d->minimumSectionSize > maximumSectionSize()
d->minimumSect...mSectionSize()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
836 d->maximumSectionSize = size;
never executed: d->maximumSectionSize = size;
0
837}
never executed: end of block
0
838int QHeaderView::maximumSectionSize() const-
839{-
840 const QHeaderViewPrivate * const d = d_func();-
841 if (d->maximumSectionSize == -1
d->maximumSectionSize == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
842 return
never executed: return maxSizeSection;
maxSizeSection;
never executed: return maxSizeSection;
0
843 return
never executed: return d->maximumSectionSize;
d->maximumSectionSize;
never executed: return d->maximumSectionSize;
0
844}-
845-
846void QHeaderView::setMaximumSectionSize(int size)-
847{-
848 QHeaderViewPrivate * const d = d_func();-
849 if (size == -1
size == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
850 d->maximumSectionSize = maxSizeSection;-
851 return;
never executed: return;
0
852 }-
853 if (size < 0
size < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| size > maxSizeSection
size > maxSizeSectionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
854 return;
never executed: return;
0
855 if (minimumSectionSize() > size
minimumSectionSize() > sizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
856 d->minimumSectionSize = size;
never executed: d->minimumSectionSize = size;
0
857-
858 d->maximumSectionSize = size;-
859}
never executed: end of block
0
860Qt::Alignment QHeaderView::defaultAlignment() const-
861{-
862 const QHeaderViewPrivate * const d = d_func();-
863 return
never executed: return d->defaultAlignment;
d->defaultAlignment;
never executed: return d->defaultAlignment;
0
864}-
865-
866void QHeaderView::setDefaultAlignment(Qt::Alignment alignment)-
867{-
868 QHeaderViewPrivate * const d = d_func();-
869 if (d->defaultAlignment == alignment
d->defaultAlig...t == alignmentDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
870 return;
never executed: return;
0
871-
872 d->defaultAlignment = alignment;-
873 d->viewport->update();-
874}
never executed: end of block
0
875-
876-
877-
878-
879void QHeaderView::doItemsLayout()-
880{-
881 initializeSections();-
882 QAbstractItemView::doItemsLayout();-
883}
never executed: end of block
0
884-
885-
886-
887-
888-
889-
890-
891bool QHeaderView::sectionsMoved() const-
892{-
893 const QHeaderViewPrivate * const d = d_func();-
894 return
never executed: return !d->visualIndices.isEmpty();
!d->visualIndices.isEmpty();
never executed: return !d->visualIndices.isEmpty();
0
895}-
896bool QHeaderView::sectionsHidden() const-
897{-
898 const QHeaderViewPrivate * const d = d_func();-
899 return
never executed: return !d->hiddenSectionSize.isEmpty();
!d->hiddenSectionSize.isEmpty();
never executed: return !d->hiddenSectionSize.isEmpty();
0
900}-
901QByteArray QHeaderView::saveState() const-
902{-
903 const QHeaderViewPrivate * const d = d_func();-
904 QByteArray data;-
905 QDataStream stream(&data, QIODevice::WriteOnly);-
906 stream << QHeaderViewPrivate::VersionMarker;-
907 stream << 0;-
908 d->write(stream);-
909 return
never executed: return data;
data;
never executed: return data;
0
910}-
911bool QHeaderView::restoreState(const QByteArray &state)-
912{-
913 QHeaderViewPrivate * const d = d_func();-
914 if (state.isEmpty()
state.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
915 return
never executed: return false;
false;
never executed: return false;
0
916 QByteArray data = state;-
917 QDataStream stream(&data, QIODevice::ReadOnly);-
918 int marker;-
919 int ver;-
920 stream >> marker;-
921 stream >> ver;-
922 if (stream.status() != QDataStream::Ok
stream.status(...DataStream::OkDescription
TRUEnever evaluated
FALSEnever evaluated
0
923 || marker != QHeaderViewPrivate::VersionMarker
marker != QHea...:VersionMarkerDescription
TRUEnever evaluated
FALSEnever evaluated
0
924 || ver != 0
ver != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
925 return
never executed: return false;
false;
never executed: return false;
0
926-
927 if (d->read(stream)
d->read(stream)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
928 sortIndicatorChanged(d->sortIndicatorSection, d->sortIndicatorOrder );-
929 d->viewport->update();-
930 return
never executed: return true;
true;
never executed: return true;
0
931 }-
932 return
never executed: return false;
false;
never executed: return false;
0
933}-
934-
935-
936-
937-
938-
939void QHeaderView::reset()-
940{-
941 QAbstractItemView::reset();-
942-
943-
944-
945 initializeSections();-
946}
never executed: end of block
0
947-
948-
949-
950-
951-
952void QHeaderView::headerDataChanged(Qt::Orientation orientation, int logicalFirst, int logicalLast)-
953{-
954 QHeaderViewPrivate * const d = d_func();-
955 if (d->orientation != orientation
d->orientation != orientationDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
956 return;
never executed: return;
0
957-
958 if (logicalFirst < 0
logicalFirst < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalLast < 0
logicalLast < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalFirst >= count()
logicalFirst >= count()Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalLast >= count()
logicalLast >= count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
959 return;
never executed: return;
0
960-
961 d->invalidateCachedSizeHint();-
962-
963 int firstVisualIndex = 2147483647, lastVisualIndex = -1;-
964-
965 for (int section = logicalFirst; section <= logicalLast
section <= logicalLastDescription
TRUEnever evaluated
FALSEnever evaluated
; ++section) {
0
966 const int visual = visualIndex(section);-
967 firstVisualIndex = qMin(firstVisualIndex, visual);-
968 lastVisualIndex = qMax(lastVisualIndex, visual);-
969 }
never executed: end of block
0
970-
971 d->executePostedResize();-
972 const int first = d->headerSectionPosition(firstVisualIndex),-
973 last = d->headerSectionPosition(lastVisualIndex)-
974 + d->headerSectionSize(lastVisualIndex);-
975-
976 if (orientation == Qt::Horizontal
orientation == Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
977 d->viewport->update(first, 0, last - first, d->viewport->height());-
978 }
never executed: end of block
else {
0
979 d->viewport->update(0, first, d->viewport->width(), last - first);-
980 }
never executed: end of block
0
981}-
982void QHeaderView::updateSection(int logicalIndex)-
983{-
984 QHeaderViewPrivate * const d = d_func();-
985 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
986 d->viewport->update(QRect(sectionViewportPosition(logicalIndex),
never executed: d->viewport->update(QRect(sectionViewportPosition(logicalIndex), 0, sectionSize(logicalIndex), d->viewport->height()));
0
987 0, sectionSize(logicalIndex), d->viewport->height()));
never executed: d->viewport->update(QRect(sectionViewportPosition(logicalIndex), 0, sectionSize(logicalIndex), d->viewport->height()));
0
988 else-
989 d->viewport->update(QRect(0, sectionViewportPosition(logicalIndex),
never executed: d->viewport->update(QRect(0, sectionViewportPosition(logicalIndex), d->viewport->width(), sectionSize(logicalIndex)));
0
990 d->viewport->width(), sectionSize(logicalIndex)));
never executed: d->viewport->update(QRect(0, sectionViewportPosition(logicalIndex), d->viewport->width(), sectionSize(logicalIndex)));
0
991}-
992-
993-
994-
995-
996-
997-
998void QHeaderView::resizeSections()-
999{-
1000 QHeaderViewPrivate * const d = d_func();-
1001 if (d->hasAutoResizeSections()
d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1002 d->resizeSections(Interactive, false);
never executed: d->resizeSections(Interactive, false);
0
1003}
never executed: end of block
0
1004void QHeaderView::sectionsInserted(const QModelIndex &parent,-
1005 int logicalFirst, int logicalLast)-
1006{-
1007 QHeaderViewPrivate * const d = d_func();-
1008 if (parent != d->root
parent != d->rootDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1009 return;
never executed: return;
0
1010 int oldCount = d->sectionCount();-
1011-
1012 d->invalidateCachedSizeHint();-
1013-
1014 if (d->state == QHeaderViewPrivate::ResizeSection
d->state == QH...:ResizeSectionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1015 d->preventCursorChangeInSetOffset = true;
never executed: d->preventCursorChangeInSetOffset = true;
0
1016-
1017-
1018 int insertAt = logicalFirst;-
1019 int insertCount = logicalLast - logicalFirst + 1;-
1020-
1021 QHeaderViewPrivate::SectionItem section(d->defaultSectionSize, d->globalResizeMode);-
1022 d->sectionStartposRecalc = true;-
1023-
1024 if (d->sectionItems.isEmpty()
d->sectionItems.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
|| insertAt >= d->sectionItems.count()
insertAt >= d-...nItems.count()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1025 int insertLength = d->defaultSectionSize * insertCount;-
1026 d->length += insertLength;-
1027 d->sectionItems.insert(d->sectionItems.count(), insertCount, section);-
1028 }
never executed: end of block
else {
0
1029-
1030 int insertLength = d->defaultSectionSize * insertCount;-
1031 d->length += insertLength;-
1032 d->sectionItems.insert(insertAt, insertCount, section);-
1033 }
never executed: end of block
0
1034-
1035-
1036 if (d->sortIndicatorSection >= logicalFirst
d->sortIndicat...= logicalFirstDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1037 d->sortIndicatorSection += insertCount;
never executed: d->sortIndicatorSection += insertCount;
0
1038-
1039-
1040 if (d->globalResizeMode == Stretch
d->globalResizeMode == StretchDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1041 d->stretchSections = d->sectionCount();
never executed: d->stretchSections = d->sectionCount();
0
1042 else if (d->globalResizeMode == ResizeToContents
d->globalResiz...sizeToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1043 d->contentsSections = d->sectionCount();
never executed: d->contentsSections = d->sectionCount();
0
1044-
1045-
1046 d->sectionSelected.clear();-
1047-
1048-
1049 if (!d->visualIndices.isEmpty()
!d->visualIndices.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
&& !d->logicalIndices.isEmpty()
!d->logicalIndices.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1050 ((!(d->visualIndices.count() == d->logicalIndices.count())) ? qt_assert("d->visualIndices.count() == d->logicalIndices.count()",__FILE__,1868) : qt_noop());-
1051 int mappingCount = d->visualIndices.count();-
1052 for (int i = 0; i < mappingCount
i < mappingCountDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
1053 if (d->visualIndices.at(i) >= logicalFirst
d->visualIndic...= logicalFirstDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1054 d->visualIndices[i] += insertCount;
never executed: d->visualIndices[i] += insertCount;
0
1055 if (d->logicalIndices.at(i) >= logicalFirst
d->logicalIndi...= logicalFirstDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1056 d->logicalIndices[i] += insertCount;
never executed: d->logicalIndices[i] += insertCount;
0
1057 }
never executed: end of block
0
1058 for (int j = logicalFirst; j <= logicalLast
j <= logicalLastDescription
TRUEnever evaluated
FALSEnever evaluated
; ++j) {
0
1059 d->visualIndices.insert(j, j);-
1060 d->logicalIndices.insert(j, j);-
1061 }
never executed: end of block
0
1062 }
never executed: end of block
0
1063-
1064-
1065 QHash<int, int> newHiddenSectionSize;-
1066 for (QHash<int, int>::const_iterator it = d->hiddenSectionSize.cbegin(),-
1067 end = d->hiddenSectionSize.cend(); it != end
it != endDescription
TRUEnever evaluated
FALSEnever evaluated
; ++it) {
0
1068 const int oldIndex = it.key();-
1069 const int newIndex = (
(oldIndex < logicalFirst)Description
TRUEnever evaluated
FALSEnever evaluated
oldIndex < logicalFirst)
(oldIndex < logicalFirst)Description
TRUEnever evaluated
FALSEnever evaluated
? oldIndex : oldIndex + insertCount;
0
1070 newHiddenSectionSize[newIndex] = it.value();-
1071 }
never executed: end of block
0
1072 d->hiddenSectionSize.swap(newHiddenSectionSize);-
1073-
1074 d->doDelayedResizeSections();-
1075 sectionCountChanged(oldCount, count());-
1076-
1077-
1078 if (!d->hasAutoResizeSections()
!d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1079 d->viewport->update();
never executed: d->viewport->update();
0
1080}
never executed: end of block
0
1081void QHeaderView::sectionsAboutToBeRemoved(const QModelIndex &parent,-
1082 int logicalFirst, int logicalLast)-
1083{-
1084 (void)parent;;-
1085 (void)logicalFirst;;-
1086 (void)logicalLast;;-
1087}
never executed: end of block
0
1088-
1089void QHeaderViewPrivate::updateHiddenSections(int logicalFirst, int logicalLast)-
1090{-
1091 QHeaderView * const q = q_func();-
1092 const int changeCount = logicalLast - logicalFirst + 1;-
1093-
1094-
1095 QHash<int, int> newHiddenSectionSize;-
1096 for (int i = 0; i < logicalFirst
i < logicalFirstDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i)
0
1097 if (q->isSectionHidden(i)
q->isSectionHidden(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1098 newHiddenSectionSize[i] = hiddenSectionSize[i];
never executed: newHiddenSectionSize[i] = hiddenSectionSize[i];
0
1099 for (int j = logicalLast + 1; j < sectionCount()
j < sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
; ++j)
0
1100 if (q->isSectionHidden(j)
q->isSectionHidden(j)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1101 newHiddenSectionSize[j - changeCount] = hiddenSectionSize[j];
never executed: newHiddenSectionSize[j - changeCount] = hiddenSectionSize[j];
0
1102 hiddenSectionSize = newHiddenSectionSize;-
1103}
never executed: end of block
0
1104-
1105void QHeaderViewPrivate::_q_sectionsRemoved(const QModelIndex &parent,-
1106 int logicalFirst, int logicalLast)-
1107{-
1108 QHeaderView * const q = q_func();-
1109 if (parent != root
parent != rootDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1110 return;
never executed: return;
0
1111 if (qMin(logicalFirst, logicalLast) < 0
qMin(logicalFi...gicalLast) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1112 || qMax(logicalLast, logicalFirst) >= sectionCount()
qMax(logicalLa...sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1113 return;
never executed: return;
0
1114 int oldCount = q->count();-
1115 int changeCount = logicalLast - logicalFirst + 1;-
1116-
1117 if (state == QHeaderViewPrivate::ResizeSection
state == QHead...:ResizeSectionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1118 preventCursorChangeInSetOffset = true;
never executed: preventCursorChangeInSetOffset = true;
0
1119-
1120 updateHiddenSections(logicalFirst, logicalLast);-
1121-
1122 if (visualIndices.isEmpty()
visualIndices.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
&& logicalIndices.isEmpty()
logicalIndices.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1123-
1124 removeSectionsFromSectionItems(logicalFirst, logicalLast);-
1125 }
never executed: end of block
else {
0
1126 if (logicalFirst == logicalLast
logicalFirst == logicalLastDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1127 int l = logicalFirst;-
1128 int visual = visualIndices.at(l);-
1129 ((!(sectionCount() == logicalIndices.count())) ? qt_assert("sectionCount() == logicalIndices.count()",__FILE__,1956) : qt_noop());-
1130 for (int v = 0; v < sectionCount()
v < sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
; ++v) {
0
1131 if (v > visual
v > visualDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1132 int logical = logicalIndices.at(v);-
1133 --(visualIndices[logical]);-
1134 }
never executed: end of block
0
1135 if (logicalIndex(v) > l
logicalIndex(v) > lDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1136 --(
never executed: --(logicalIndices[v]);
logicalIndices[v]);
never executed: --(logicalIndices[v]);
0
1137 }
never executed: end of block
0
1138 logicalIndices.remove(visual);-
1139 visualIndices.remove(l);-
1140-
1141 removeSectionsFromSectionItems(visual, visual);-
1142 }
never executed: end of block
else {
0
1143 sectionStartposRecalc = true;-
1144 for (int u = 0; u < sectionItems.count()
u < sectionItems.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++u)
0
1145 sectionItems.at(u).tmpLogIdx = logicalIndices.at(u);
never executed: sectionItems.at(u).tmpLogIdx = logicalIndices.at(u);
0
1146 for (int v = sectionItems.count() - 1; v >= 0
v >= 0Description
TRUEnever evaluated
FALSEnever evaluated
; --v) {
0
1147 if (logicalFirst <= sectionItems.at(v).tmpLogIdx
logicalFirst <...t(v).tmpLogIdxDescription
TRUEnever evaluated
FALSEnever evaluated
&& sectionItems.at(v).tmpLogIdx <= logicalLast
sectionItems.a...<= logicalLastDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1148 removeSectionsFromSectionItems(v, v);
never executed: removeSectionsFromSectionItems(v, v);
0
1149 }
never executed: end of block
0
1150 visualIndices.resize(sectionItems.count());-
1151 logicalIndices.resize(sectionItems.count());-
1152 int* visual_data = visualIndices.data();-
1153 int* logical_data = logicalIndices.data();-
1154 for (int w = 0; w < sectionItems.count()
w < sectionItems.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++w) {
0
1155 int logindex = sectionItems.at(w).tmpLogIdx;-
1156 if (logindex > logicalFirst
logindex > logicalFirstDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1157 logindex -= changeCount;
never executed: logindex -= changeCount;
0
1158 visual_data[logindex] = w;-
1159 logical_data[w] = logindex;-
1160 }
never executed: end of block
0
1161 }
never executed: end of block
0
1162-
1163 }-
1164-
1165-
1166 if (sortIndicatorSection >= logicalFirst
sortIndicatorS...= logicalFirstDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1167 if (sortIndicatorSection <= logicalLast
sortIndicatorS...<= logicalLastDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1168 sortIndicatorSection = -1;
never executed: sortIndicatorSection = -1;
0
1169 else-
1170 sortIndicatorSection -= changeCount;
never executed: sortIndicatorSection -= changeCount;
0
1171 }-
1172-
1173-
1174 if (sectionCount() <= 0
sectionCount() <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1175 clear();
never executed: clear();
0
1176 invalidateCachedSizeHint();-
1177 q->sectionCountChanged(oldCount, q->count());-
1178 viewport->update();-
1179}
never executed: end of block
0
1180-
1181void QHeaderViewPrivate::_q_layoutAboutToBeChanged()-
1182{-
1183-
1184-
1185-
1186-
1187 if ((orientation == Qt::Horizontal
orientation == Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
&& model->rowCount(root) == 0
model->rowCount(root) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1188 || model->columnCount(root) == 0
model->columnCount(root) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1189 return;
never executed: return;
0
1190-
1191 if (hiddenSectionSize.count() == 0
hiddenSectionSize.count() == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1192 return;
never executed: return;
0
1193-
1194 for (int i = 0; i < sectionItems.count()
i < sectionItems.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i)
0
1195 if (isVisualIndexHidden(i)
isVisualIndexHidden(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1196 persistentHiddenSections.append(orientation == Qt::Horizontal
never executed: persistentHiddenSections.append(orientation == Qt::Horizontal ? model->index(0, logicalIndex(i), root) : model->index(logicalIndex(i), 0, root));
0
1197 ? model->index(0, logicalIndex(i), root)
never executed: persistentHiddenSections.append(orientation == Qt::Horizontal ? model->index(0, logicalIndex(i), root) : model->index(logicalIndex(i), 0, root));
0
1198 : model->index(logicalIndex(i), 0, root));
never executed: persistentHiddenSections.append(orientation == Qt::Horizontal ? model->index(0, logicalIndex(i), root) : model->index(logicalIndex(i), 0, root));
0
1199}
never executed: end of block
0
1200-
1201void QHeaderViewPrivate::_q_layoutChanged()-
1202{-
1203 QHeaderView * const q = q_func();-
1204 viewport->update();-
1205 if (persistentHiddenSections.isEmpty()
persistentHidd...ions.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
|| modelIsEmpty()
modelIsEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1206 if (modelSectionCount() != sectionCount()
modelSectionCo...sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1207 q->initializeSections();
never executed: q->initializeSections();
0
1208 persistentHiddenSections.clear();-
1209 return;
never executed: return;
0
1210 }-
1211-
1212 QBitArray oldSectionHidden = sectionsHiddenToBitVector();-
1213 oldSectionHidden.resize(sectionItems.size());-
1214 bool sectionCountChanged = false;-
1215-
1216 for (int i = 0; i < persistentHiddenSections.count()
i < persistent...ctions.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
1217 QModelIndex index = persistentHiddenSections.at(i);-
1218 if (index.isValid()
index.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1219 const int logical = (orientation == Qt::Horizontal
orientation == Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
0
1220 ? index.column()-
1221 : index.row());-
1222 q->setSectionHidden(logical, true);-
1223 oldSectionHidden.setBit(logical, false);-
1224 }
never executed: end of block
else if (!sectionCountChanged
!sectionCountChangedDescription
TRUEnever evaluated
FALSEnever evaluated
&& (
(modelSectionC...ectionCount())Description
TRUEnever evaluated
FALSEnever evaluated
modelSectionCount() != sectionCount())
(modelSectionC...ectionCount())Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1225 sectionCountChanged = true;-
1226 break;
never executed: break;
0
1227 }-
1228 }
never executed: end of block
0
1229 persistentHiddenSections.clear();-
1230-
1231 for (int i = 0; i < oldSectionHidden.count()
i < oldSectionHidden.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
1232 if (oldSectionHidden.testBit(i)
oldSectionHidden.testBit(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1233 q->setSectionHidden(i, false);
never executed: q->setSectionHidden(i, false);
0
1234 }
never executed: end of block
0
1235-
1236-
1237 if (sectionCountChanged
sectionCountChangedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1238 q->initializeSections();
never executed: q->initializeSections();
0
1239}
never executed: end of block
0
1240-
1241-
1242-
1243-
1244-
1245void QHeaderView::initializeSections()-
1246{-
1247 QHeaderViewPrivate * const d = d_func();-
1248 const int oldCount = d->sectionCount();-
1249 const int newCount = d->modelSectionCount();-
1250 if (newCount <= 0
newCount <= 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1251 d->clear();-
1252 sectionCountChanged(oldCount, 0);-
1253 }
never executed: end of block
else if (newCount != oldCount
newCount != oldCountDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1254 const int min = qBound(0, oldCount, newCount - 1);-
1255 initializeSections(min, newCount - 1);-
1256 if (stretchLastSection()
stretchLastSection()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1257 d->lastSectionSize = sectionSize(logicalIndex(d->sectionCount() - 1));
never executed: d->lastSectionSize = sectionSize(logicalIndex(d->sectionCount() - 1));
0
1258-
1259-
1260 if (newCount < oldCount
newCount < oldCountDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1261 d->updateHiddenSections(0, newCount-1);
never executed: d->updateHiddenSections(0, newCount-1);
0
1262 }
never executed: end of block
0
1263}
never executed: end of block
0
1264-
1265-
1266-
1267-
1268-
1269void QHeaderView::initializeSections(int start, int end)-
1270{-
1271 QHeaderViewPrivate * const d = d_func();-
1272-
1273 ((!(start >= 0)) ? qt_assert("start >= 0",__FILE__,2100) : qt_noop());-
1274 ((!(end >= 0)) ? qt_assert("end >= 0",__FILE__,2101) : qt_noop());-
1275-
1276 d->invalidateCachedSizeHint();-
1277 int oldCount = d->sectionCount();-
1278-
1279 if (end + 1 < d->sectionCount()
end + 1 < d->sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1280 int newCount = end + 1;-
1281 d->removeSectionsFromSectionItems(newCount, d->sectionCount() - 1);-
1282 if (!d->hiddenSectionSize.isEmpty()
!d->hiddenSect...Size.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1283 if (oldCount - newCount > d->hiddenSectionSize.count()
oldCount - new...onSize.count()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1284 for (int i = end + 1; i < d->sectionCount()
i < d->sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i)
0
1285 d->hiddenSectionSize.remove(i);
never executed: d->hiddenSectionSize.remove(i);
0
1286 }
never executed: end of block
else {
0
1287 QHash<int, int>::iterator it = d->hiddenSectionSize.begin();-
1288 while (it != d->hiddenSectionSize.end()
it != d->hidde...tionSize.end()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1289 if (it.key() > end
it.key() > endDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1290 it = d->hiddenSectionSize.erase(it);
never executed: it = d->hiddenSectionSize.erase(it);
0
1291 else-
1292 ++
never executed: ++it;
it;
never executed: ++it;
0
1293 }-
1294 }
never executed: end of block
0
1295 }-
1296 }
never executed: end of block
0
1297-
1298 int newSectionCount = end + 1;-
1299-
1300 if (!d->logicalIndices.isEmpty()
!d->logicalIndices.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1301 if (oldCount <= newSectionCount
oldCount <= newSectionCountDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1302 d->logicalIndices.resize(newSectionCount);-
1303 d->visualIndices.resize(newSectionCount);-
1304 for (int i = oldCount; i < newSectionCount
i < newSectionCountDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
1305 d->logicalIndices[i] = i;-
1306 d->visualIndices[i] = i;-
1307 }
never executed: end of block
0
1308 }
never executed: end of block
else {
0
1309 int j = 0;-
1310 for (int i = 0; i < oldCount
i < oldCountDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
1311 int v = d->logicalIndices.at(i);-
1312 if (v < newSectionCount
v < newSectionCountDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1313 d->logicalIndices[j] = v;-
1314 d->visualIndices[v] = j;-
1315 j++;-
1316 }
never executed: end of block
0
1317 }
never executed: end of block
0
1318 d->logicalIndices.resize(newSectionCount);-
1319 d->visualIndices.resize(newSectionCount);-
1320 }
never executed: end of block
0
1321 }-
1322-
1323 if (d->globalResizeMode == Stretch
d->globalResizeMode == StretchDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1324 d->stretchSections = newSectionCount;
never executed: d->stretchSections = newSectionCount;
0
1325 else if (d->globalResizeMode == ResizeToContents
d->globalResiz...sizeToContentsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1326 d->contentsSections = newSectionCount;
never executed: d->contentsSections = newSectionCount;
0
1327-
1328 if (newSectionCount > oldCount
newSectionCount > oldCountDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1329 d->createSectionItems(start, end, (end - start + 1) * d->defaultSectionSize, d->globalResizeMode);
never executed: d->createSectionItems(start, end, (end - start + 1) * d->defaultSectionSize, d->globalResizeMode);
0
1330-
1331-
1332 if (d->sectionCount() != oldCount
d->sectionCount() != oldCountDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1333 sectionCountChanged(oldCount, d->sectionCount());
never executed: sectionCountChanged(oldCount, d->sectionCount());
0
1334 d->viewport->update();-
1335}
never executed: end of block
0
1336-
1337-
1338-
1339-
1340-
1341void QHeaderView::currentChanged(const QModelIndex &current, const QModelIndex &old)-
1342{-
1343 QHeaderViewPrivate * const d = d_func();-
1344-
1345 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
&& current.column() != old.column()
current.column...= old.column()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1346 if (old.isValid()
old.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
&& old.parent() == d->root
old.parent() == d->rootDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1347 d->viewport->update(QRect(sectionViewportPosition(old.column()), 0,
never executed: d->viewport->update(QRect(sectionViewportPosition(old.column()), 0, sectionSize(old.column()), d->viewport->height()));
0
1348 sectionSize(old.column()), d->viewport->height()));
never executed: d->viewport->update(QRect(sectionViewportPosition(old.column()), 0, sectionSize(old.column()), d->viewport->height()));
0
1349 if (current.isValid()
current.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
&& current.parent() == d->root
current.parent() == d->rootDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1350 d->viewport->update(QRect(sectionViewportPosition(current.column()), 0,
never executed: d->viewport->update(QRect(sectionViewportPosition(current.column()), 0, sectionSize(current.column()), d->viewport->height()));
0
1351 sectionSize(current.column()), d->viewport->height()));
never executed: d->viewport->update(QRect(sectionViewportPosition(current.column()), 0, sectionSize(current.column()), d->viewport->height()));
0
1352 }
never executed: end of block
else if (d->orientation == Qt::Vertical
d->orientation == Qt::VerticalDescription
TRUEnever evaluated
FALSEnever evaluated
&& current.row() != old.row()
current.row() != old.row()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1353 if (old.isValid()
old.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
&& old.parent() == d->root
old.parent() == d->rootDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1354 d->viewport->update(QRect(0, sectionViewportPosition(old.row()),
never executed: d->viewport->update(QRect(0, sectionViewportPosition(old.row()), d->viewport->width(), sectionSize(old.row())));
0
1355 d->viewport->width(), sectionSize(old.row())));
never executed: d->viewport->update(QRect(0, sectionViewportPosition(old.row()), d->viewport->width(), sectionSize(old.row())));
0
1356 if (current.isValid()
current.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
&& current.parent() == d->root
current.parent() == d->rootDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1357 d->viewport->update(QRect(0, sectionViewportPosition(current.row()),
never executed: d->viewport->update(QRect(0, sectionViewportPosition(current.row()), d->viewport->width(), sectionSize(current.row())));
0
1358 d->viewport->width(), sectionSize(current.row())));
never executed: d->viewport->update(QRect(0, sectionViewportPosition(current.row()), d->viewport->width(), sectionSize(current.row())));
0
1359 }
never executed: end of block
0
1360}
never executed: end of block
0
1361-
1362-
1363-
1364-
1365-
1366-
1367bool QHeaderView::event(QEvent *e)-
1368{-
1369 QHeaderViewPrivate * const d = d_func();-
1370 switch (e->type()) {-
1371 case
never executed: case QEvent::HoverEnter:
QEvent::HoverEnter:
never executed: case QEvent::HoverEnter:
{
0
1372 QHoverEvent *he = static_cast<QHoverEvent*>(e);-
1373 d->hover = logicalIndexAt(he->pos());-
1374 if (d->hover != -1
d->hover != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1375 updateSection(d->hover);
never executed: updateSection(d->hover);
0
1376 break;
never executed: break;
}
0
1377 case
never executed: case QEvent::Leave:
QEvent::Leave:
never executed: case QEvent::Leave:
0
1378 case
never executed: case QEvent::HoverLeave:
QEvent::HoverLeave:
never executed: case QEvent::HoverLeave:
{
0
1379 if (d->hover != -1
d->hover != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1380 updateSection(d->hover);
never executed: updateSection(d->hover);
0
1381 d->hover = -1;-
1382 break;
never executed: break;
}
0
1383 case
never executed: case QEvent::HoverMove:
QEvent::HoverMove:
never executed: case QEvent::HoverMove:
{
0
1384 QHoverEvent *he = static_cast<QHoverEvent*>(e);-
1385 int oldHover = d->hover;-
1386 d->hover = logicalIndexAt(he->pos());-
1387 if (d->hover != oldHover
d->hover != oldHoverDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1388 if (oldHover != -1
oldHover != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1389 updateSection(oldHover);
never executed: updateSection(oldHover);
0
1390 if (d->hover != -1
d->hover != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1391 updateSection(d->hover);
never executed: updateSection(d->hover);
0
1392 }
never executed: end of block
0
1393 break;
never executed: break;
}
0
1394 case
never executed: case QEvent::Timer:
QEvent::Timer:
never executed: case QEvent::Timer:
{
0
1395 QTimerEvent *te = static_cast<QTimerEvent*>(e);-
1396 if (te->timerId() == d->delayedResize.timerId()
te->timerId() ...size.timerId()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1397 d->delayedResize.stop();-
1398 resizeSections();-
1399 }
never executed: end of block
0
1400 break;
never executed: break;
}
0
1401 case
never executed: case QEvent::StyleChange:
QEvent::StyleChange:
never executed: case QEvent::StyleChange:
0
1402 if (!d->customDefaultSectionSize
!d->customDefaultSectionSizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1403 d->updateDefaultSectionSizeFromStyle();
never executed: d->updateDefaultSectionSizeFromStyle();
0
1404 break;
never executed: break;
0
1405 default
never executed: default:
:
never executed: default:
0
1406 break;
never executed: break;
0
1407 }-
1408 return
never executed: return QAbstractItemView::event(e);
QAbstractItemView::event(e);
never executed: return QAbstractItemView::event(e);
0
1409}-
1410-
1411-
1412-
1413-
1414-
1415void QHeaderView::paintEvent(QPaintEvent *e)-
1416{-
1417 QHeaderViewPrivate * const d = d_func();-
1418-
1419 if (count() == 0
count() == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1420 return;
never executed: return;
0
1421-
1422 QPainter painter(d->viewport);-
1423 const QPoint offset = d->scrollDelayOffset;-
1424 QRect translatedEventRect = e->rect();-
1425 translatedEventRect.translate(offset);-
1426-
1427 int start = -1;-
1428 int end = -1;-
1429 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1430 start = visualIndexAt(translatedEventRect.left());-
1431 end = visualIndexAt(translatedEventRect.right());-
1432 }
never executed: end of block
else {
0
1433 start = visualIndexAt(translatedEventRect.top());-
1434 end = visualIndexAt(translatedEventRect.bottom());-
1435 }
never executed: end of block
0
1436-
1437 if (d->reverse()
d->reverse()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1438 start = (start == -1
start == -1Description
TRUEnever evaluated
FALSEnever evaluated
? count() - 1 : start);
0
1439 end = (end == -1
end == -1Description
TRUEnever evaluated
FALSEnever evaluated
? 0 : end);
0
1440 }
never executed: end of block
else {
0
1441 start = (start == -1
start == -1Description
TRUEnever evaluated
FALSEnever evaluated
? 0 : start);
0
1442 end = (end == -1
end == -1Description
TRUEnever evaluated
FALSEnever evaluated
? count() - 1 : end);
0
1443 }
never executed: end of block
0
1444-
1445 int tmp = start;-
1446 start = qMin(start, end);-
1447 end = qMax(tmp, end);-
1448-
1449 d->prepareSectionSelected();-
1450-
1451 QRect currentSectionRect;-
1452 int logical;-
1453 const int width = d->viewport->width();-
1454 const int height = d->viewport->height();-
1455 for (int i = start; i <= end
i <= endDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
1456 if (d->isVisualIndexHidden(i)
d->isVisualIndexHidden(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1457 continue;
never executed: continue;
0
1458 painter.save();-
1459 logical = logicalIndex(i);-
1460 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1461 currentSectionRect.setRect(sectionViewportPosition(logical), 0, sectionSize(logical), height);-
1462 }
never executed: end of block
else {
0
1463 currentSectionRect.setRect(0, sectionViewportPosition(logical), width, sectionSize(logical));-
1464 }
never executed: end of block
0
1465 currentSectionRect.translate(offset);-
1466-
1467 QVariant variant = d->model->headerData(logical, d->orientation,-
1468 Qt::FontRole);-
1469 if (variant.isValid()
variant.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
&& variant.canConvert<QFont>()
variant.canConvert<QFont>()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1470 QFont sectionFont = qvariant_cast<QFont>(variant);-
1471 painter.setFont(sectionFont);-
1472 }
never executed: end of block
0
1473 paintSection(&painter, currentSectionRect, logical);-
1474 painter.restore();-
1475 }
never executed: end of block
0
1476-
1477 QStyleOption opt;-
1478 opt.init(this);-
1479-
1480 if (d->reverse()
d->reverse()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1481 opt.state |= QStyle::State_Horizontal;-
1482 if (currentSectionRect.left() > translatedEventRect.left()
currentSection...entRect.left()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1483 opt.rect = QRect(translatedEventRect.left(), 0,-
1484 currentSectionRect.left() - translatedEventRect.left(), height);-
1485 style()->drawControl(QStyle::CE_HeaderEmptyArea, &opt, &painter, this);-
1486 }
never executed: end of block
0
1487 }
never executed: end of block
else if (currentSectionRect.right() < translatedEventRect.right()
currentSection...ntRect.right()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1488-
1489 opt.state |= QStyle::State_Horizontal;-
1490 opt.rect = QRect(currentSectionRect.right() + 1, 0,-
1491 translatedEventRect.right() - currentSectionRect.right(), height);-
1492 style()->drawControl(QStyle::CE_HeaderEmptyArea, &opt, &painter, this);-
1493 }
never executed: end of block
else if (currentSectionRect.bottom() < translatedEventRect.bottom()
currentSection...tRect.bottom()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1494-
1495 opt.state &= ~QStyle::State_Horizontal;-
1496 opt.rect = QRect(0, currentSectionRect.bottom() + 1,-
1497 width, height - currentSectionRect.bottom() - 1);-
1498 style()->drawControl(QStyle::CE_HeaderEmptyArea, &opt, &painter, this);-
1499 }
never executed: end of block
0
1500}
never executed: end of block
0
1501-
1502-
1503-
1504-
1505-
1506void QHeaderView::mousePressEvent(QMouseEvent *e)-
1507{-
1508 QHeaderViewPrivate * const d = d_func();-
1509 if (d->state != QHeaderViewPrivate::NoState
d->state != QH...ivate::NoStateDescription
TRUEnever evaluated
FALSEnever evaluated
|| e->button() != Qt::LeftButton
e->button() != Qt::LeftButtonDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1510 return;
never executed: return;
0
1511 int pos = d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
? e->x() : e->y();
0
1512 int handle = d->sectionHandleAt(pos);-
1513 d->originalSize = -1;-
1514 if (handle == -1
handle == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1515 d->pressed = logicalIndexAt(pos);-
1516 if (d->clickableSections
d->clickableSectionsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1517 sectionPressed(d->pressed);
never executed: sectionPressed(d->pressed);
0
1518-
1519 bool acceptMoveSection = d->movableSections;-
1520 if (acceptMoveSection
acceptMoveSectionDescription
TRUEnever evaluated
FALSEnever evaluated
&& d->pressed == 0
d->pressed == 0Description
TRUEnever evaluated
FALSEnever evaluated
&& !d->allowUserMoveOfSection0
!d->allowUserMoveOfSection0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1521 acceptMoveSection = false;
never executed: acceptMoveSection = false;
0
1522-
1523 if (acceptMoveSection
acceptMoveSectionDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1524 d->section = d->target = d->pressed;-
1525 if (d->section == -1
d->section == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1526 return;
never executed: return;
0
1527 d->state = QHeaderViewPrivate::MoveSection;-
1528 d->setupSectionIndicator(d->section, pos);-
1529 }
never executed: end of block
else if (d->clickableSections
d->clickableSectionsDescription
TRUEnever evaluated
FALSEnever evaluated
&& d->pressed != -1
d->pressed != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1530 updateSection(d->pressed);-
1531 d->state = QHeaderViewPrivate::SelectSections;-
1532 }
never executed: end of block
0
1533 }
never executed: end of block
else if (sectionResizeMode(handle) == Interactive
sectionResizeM...== InteractiveDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1534 d->originalSize = sectionSize(handle);-
1535 d->state = QHeaderViewPrivate::ResizeSection;-
1536 d->section = handle;-
1537 d->preventCursorChangeInSetOffset = false;-
1538 }
never executed: end of block
0
1539-
1540 d->firstPos = pos;-
1541 d->lastPos = pos;-
1542-
1543 d->clearCascadingSections();-
1544}
never executed: end of block
0
1545-
1546-
1547-
1548-
1549-
1550void QHeaderView::mouseMoveEvent(QMouseEvent *e)-
1551{-
1552 QHeaderViewPrivate * const d = d_func();-
1553 int pos = d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
? e->x() : e->y();
0
1554 if (pos < 0
pos < 0Description
TRUEnever evaluated
FALSEnever evaluated
&& d->state != QHeaderViewPrivate::SelectSections
d->state != QH...SelectSectionsDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1555 return;
never executed: return;
0
1556 if (e->buttons() == Qt::NoButton
e->buttons() == Qt::NoButtonDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1557-
1558-
1559-
1560-
1561-
1562-
1563 d->state = QHeaderViewPrivate::NoState;-
1564 d->pressed = -1;-
1565-
1566 }
never executed: end of block
0
1567 switch (d->state) {-
1568 case
never executed: case QHeaderViewPrivate::ResizeSection:
QHeaderViewPrivate::ResizeSection:
never executed: case QHeaderViewPrivate::ResizeSection:
{
0
1569 ((!(d->originalSize != -1)) ? qt_assert("d->originalSize != -1",__FILE__,2409) : qt_noop());-
1570 if (d->cascadingResizing
d->cascadingResizingDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1571 int delta = d->reverse()
d->reverse()Description
TRUEnever evaluated
FALSEnever evaluated
? d->lastPos - pos : pos - d->lastPos;
0
1572 int visual = visualIndex(d->section);-
1573 d->cascadingResize(visual, d->headerSectionSize(visual) + delta);-
1574 }
never executed: end of block
else {
0
1575 int delta = d->reverse()
d->reverse()Description
TRUEnever evaluated
FALSEnever evaluated
? d->firstPos - pos : pos - d->firstPos;
0
1576 int newsize = qBound(minimumSectionSize(), d->originalSize + delta, maximumSectionSize());-
1577 resizeSection(d->section, newsize);-
1578 }
never executed: end of block
0
1579 d->lastPos = pos;-
1580 return;
never executed: return;
0
1581 }-
1582 case
never executed: case QHeaderViewPrivate::MoveSection:
QHeaderViewPrivate::MoveSection:
never executed: case QHeaderViewPrivate::MoveSection:
{
0
1583 if (d->shouldAutoScroll(e->pos())
d->shouldAutoScroll(e->pos())Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1584 d->startAutoScroll();
never executed: d->startAutoScroll();
0
1585 if (qAbs(pos - d->firstPos) >= QApplication::startDragDistance()
qAbs(pos - d->...DragDistance()Description
TRUEnever evaluated
FALSEnever evaluated
0
1586 || !d->sectionIndicator->isHidden()
!d->sectionInd...or->isHidden()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1587 int visual = visualIndexAt(pos);-
1588 if (visual == -1
visual == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1589 return;
never executed: return;
0
1590 if (visual == 0
visual == 0Description
TRUEnever evaluated
FALSEnever evaluated
&& logicalIndex(0) == 0
logicalIndex(0) == 0Description
TRUEnever evaluated
FALSEnever evaluated
&& !d->allowUserMoveOfSection0
!d->allowUserMoveOfSection0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1591 return;
never executed: return;
0
1592-
1593 int posThreshold = d->headerSectionPosition(visual) - d->offset + d->headerSectionSize(visual) / 2;-
1594 int moving = visualIndex(d->section);-
1595 if (visual < moving
visual < movingDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1596 if (pos < posThreshold
pos < posThresholdDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1597 d->target = d->logicalIndex(visual);
never executed: d->target = d->logicalIndex(visual);
0
1598 else-
1599 d->target = d->logicalIndex(visual + 1);
never executed: d->target = d->logicalIndex(visual + 1);
0
1600 } else if (visual > moving
visual > movingDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1601 if (pos > posThreshold
pos > posThresholdDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1602 d->target = d->logicalIndex(visual);
never executed: d->target = d->logicalIndex(visual);
0
1603 else-
1604 d->target = d->logicalIndex(visual - 1);
never executed: d->target = d->logicalIndex(visual - 1);
0
1605 } else {-
1606 d->target = d->section;-
1607 }
never executed: end of block
0
1608 d->updateSectionIndicator(d->section, pos);-
1609 }
never executed: end of block
0
1610 return;
never executed: return;
0
1611 }-
1612 case
never executed: case QHeaderViewPrivate::SelectSections:
QHeaderViewPrivate::SelectSections:
never executed: case QHeaderViewPrivate::SelectSections:
{
0
1613 int logical = logicalIndexAt(qMax(-d->offset, pos));-
1614 if (logical == -1
logical == -1Description
TRUEnever evaluated
FALSEnever evaluated
&& pos > 0
pos > 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1615 logical = logicalIndex(d->lastVisibleVisualIndex());
never executed: logical = logicalIndex(d->lastVisibleVisualIndex());
0
1616 if (logical == d->pressed
logical == d->pressedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1617 return;
never executed: return;
0
1618 else if (d->pressed != -1
d->pressed != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1619 updateSection(d->pressed);
never executed: updateSection(d->pressed);
0
1620 d->pressed = logical;-
1621 if (d->clickableSections
d->clickableSectionsDescription
TRUEnever evaluated
FALSEnever evaluated
&& logical != -1
logical != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1622 sectionEntered(d->pressed);-
1623 updateSection(d->pressed);-
1624 }
never executed: end of block
0
1625 return;
never executed: return;
0
1626 }-
1627 case
never executed: case QHeaderViewPrivate::NoState:
QHeaderViewPrivate::NoState:
never executed: case QHeaderViewPrivate::NoState:
{
0
1628-
1629 int handle = d->sectionHandleAt(pos);-
1630 bool hasCursor = testAttribute(Qt::WA_SetCursor);-
1631 if (handle != -1
handle != -1Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(sectionResize...= Interactive)Description
TRUEnever evaluated
FALSEnever evaluated
sectionResizeMode(handle) == Interactive)
(sectionResize...= Interactive)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1632 if (!hasCursor
!hasCursorDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1633 setCursor(d->orientation == Qt::Horizontal ? Qt::SplitHCursor : Qt::SplitVCursor);
never executed: setCursor(d->orientation == Qt::Horizontal ? Qt::SplitHCursor : Qt::SplitVCursor);
0
1634 }
never executed: end of block
else if (hasCursor
hasCursorDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1635 unsetCursor();-
1636 }
never executed: end of block
0
1637-
1638 return;
never executed: return;
0
1639 }-
1640 default
never executed: default:
:
never executed: default:
0
1641 break;
never executed: break;
0
1642 }-
1643}-
1644-
1645-
1646-
1647-
1648-
1649void QHeaderView::mouseReleaseEvent(QMouseEvent *e)-
1650{-
1651 QHeaderViewPrivate * const d = d_func();-
1652 int pos = d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
? e->x() : e->y();
0
1653 switch (d->state) {-
1654 case
never executed: case QHeaderViewPrivate::MoveSection:
QHeaderViewPrivate::MoveSection:
never executed: case QHeaderViewPrivate::MoveSection:
0
1655 if (!d->sectionIndicator->isHidden()
!d->sectionInd...or->isHidden()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1656 int from = visualIndex(d->section);-
1657 ((!(from != -1)) ? qt_assert("from != -1",__FILE__,2497) : qt_noop());-
1658 int to = visualIndex(d->target);-
1659 ((!(to != -1)) ? qt_assert("to != -1",__FILE__,2499) : qt_noop());-
1660 moveSection(from, to);-
1661 d->section = d->target = -1;-
1662 d->updateSectionIndicator(d->section, pos);-
1663 break;
never executed: break;
0
1664 }-
1665 case
never executed: case QHeaderViewPrivate::SelectSections:
QHeaderViewPrivate::SelectSections:
never executed: case QHeaderViewPrivate::SelectSections:
code before this statement never executed: case QHeaderViewPrivate::SelectSections:
0
1666 if (!d->clickableSections
!d->clickableSectionsDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1667 int section = logicalIndexAt(pos);-
1668 updateSection(section);-
1669 }
never executed: end of block
0
1670-
1671 case
never executed: case QHeaderViewPrivate::NoState:
QHeaderViewPrivate::NoState:
never executed: case QHeaderViewPrivate::NoState:
code before this statement never executed: case QHeaderViewPrivate::NoState:
0
1672 if (d->clickableSections
d->clickableSectionsDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1673 int section = logicalIndexAt(pos);-
1674 if (section != -1
section != -1Description
TRUEnever evaluated
FALSEnever evaluated
&& section == d->pressed
section == d->pressedDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1675 d->flipSortIndicator(section);-
1676 sectionClicked(section);-
1677 }
never executed: end of block
0
1678 if (d->pressed != -1
d->pressed != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1679 updateSection(d->pressed);
never executed: updateSection(d->pressed);
0
1680 }
never executed: end of block
0
1681 break;
never executed: break;
0
1682 case
never executed: case QHeaderViewPrivate::ResizeSection:
QHeaderViewPrivate::ResizeSection:
never executed: case QHeaderViewPrivate::ResizeSection:
0
1683 d->originalSize = -1;-
1684 d->clearCascadingSections();-
1685 break;
never executed: break;
0
1686 default
never executed: default:
:
never executed: default:
0
1687 break;
never executed: break;
0
1688 }-
1689 d->state = QHeaderViewPrivate::NoState;-
1690 d->pressed = -1;-
1691}
never executed: end of block
0
1692-
1693-
1694-
1695-
1696-
1697void QHeaderView::mouseDoubleClickEvent(QMouseEvent *e)-
1698{-
1699 QHeaderViewPrivate * const d = d_func();-
1700 int pos = d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
? e->x() : e->y();
0
1701 int handle = d->sectionHandleAt(pos);-
1702 if (handle > -1
handle > -1Description
TRUEnever evaluated
FALSEnever evaluated
&& sectionResizeMode(handle) == Interactive
sectionResizeM...== InteractiveDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1703 sectionHandleDoubleClicked(handle);-
1704-
1705 Qt::CursorShape splitCursor = (
(d->orientatio...t::Horizontal)Description
TRUEnever evaluated
FALSEnever evaluated
d->orientation == Qt::Horizontal)
(d->orientatio...t::Horizontal)Description
TRUEnever evaluated
FALSEnever evaluated
0
1706 ? Qt::SplitHCursor : Qt::SplitVCursor;-
1707 if (cursor().shape() == splitCursor
cursor().shape...== splitCursorDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1708-
1709 handle = d->sectionHandleAt(pos);-
1710 if (!(handle > -1
handle > -1Description
TRUEnever evaluated
FALSEnever evaluated
&& sectionResizeMode(handle) == Interactive
sectionResizeM...== InteractiveDescription
TRUEnever evaluated
FALSEnever evaluated
))
0
1711 setCursor(Qt::ArrowCursor);
never executed: setCursor(Qt::ArrowCursor);
0
1712 }
never executed: end of block
0
1713-
1714 }
never executed: end of block
else {
0
1715 sectionDoubleClicked(logicalIndexAt(e->pos()));-
1716 }
never executed: end of block
0
1717}-
1718-
1719-
1720-
1721-
1722-
1723bool QHeaderView::viewportEvent(QEvent *e)-
1724{-
1725 QHeaderViewPrivate * const d = d_func();-
1726 switch (e->type()) {-
1727-
1728 case
never executed: case QEvent::ToolTip:
QEvent::ToolTip:
never executed: case QEvent::ToolTip:
{
0
1729 QHelpEvent *he = static_cast<QHelpEvent*>(e);-
1730 int logical = logicalIndexAt(he->pos());-
1731 if (logical != -1
logical != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1732 QVariant variant = d->model->headerData(logical, d->orientation, Qt::ToolTipRole);-
1733 if (variant.isValid()
variant.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1734 QToolTip::showText(he->globalPos(), variant.toString(), this);-
1735 return
never executed: return true;
true;
never executed: return true;
0
1736 }-
1737 }
never executed: end of block
0
1738 break;
never executed: break;
}
0
1739-
1740-
1741 case
never executed: case QEvent::QueryWhatsThis:
QEvent::QueryWhatsThis:
never executed: case QEvent::QueryWhatsThis:
{
0
1742 QHelpEvent *he = static_cast<QHelpEvent*>(e);-
1743 int logical = logicalIndexAt(he->pos());-
1744 if (logical != -1
logical != -1Description
TRUEnever evaluated
FALSEnever evaluated
0
1745 && d->model->headerData(logical, d->orientation, Qt::WhatsThisRole).isValid()
d->model->head...ole).isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1746 return
never executed: return true;
true;
never executed: return true;
0
1747 break;
never executed: break;
}
0
1748 case
never executed: case QEvent::WhatsThis:
QEvent::WhatsThis:
never executed: case QEvent::WhatsThis:
{
0
1749 QHelpEvent *he = static_cast<QHelpEvent*>(e);-
1750 int logical = logicalIndexAt(he->pos());-
1751 if (logical != -1
logical != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1752 QVariant whatsthis = d->model->headerData(logical, d->orientation,-
1753 Qt::WhatsThisRole);-
1754 if (whatsthis.isValid()
whatsthis.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1755 QWhatsThis::showText(he->globalPos(), whatsthis.toString(), this);-
1756 return
never executed: return true;
true;
never executed: return true;
0
1757 }-
1758 }
never executed: end of block
0
1759 break;
never executed: break;
}
0
1760-
1761-
1762 case
never executed: case QEvent::StatusTip:
QEvent::StatusTip:
never executed: case QEvent::StatusTip:
{
0
1763 QHelpEvent *he = static_cast<QHelpEvent*>(e);-
1764 int logical = logicalIndexAt(he->pos());-
1765 if (logical != -1
logical != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1766 QString statustip = d->model->headerData(logical, d->orientation,-
1767 Qt::StatusTipRole).toString();-
1768 if (!statustip.isEmpty()
!statustip.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1769 setStatusTip(statustip);
never executed: setStatusTip(statustip);
0
1770 }
never executed: end of block
0
1771 return
never executed: return true;
true;
never executed: return true;
}
0
1772-
1773 case
never executed: case QEvent::FontChange:
QEvent::FontChange:
never executed: case QEvent::FontChange:
0
1774 case
never executed: case QEvent::StyleChange:
QEvent::StyleChange:
never executed: case QEvent::StyleChange:
0
1775 d->invalidateCachedSizeHint();-
1776-
1777 case
never executed: case QEvent::Hide:
QEvent::Hide:
never executed: case QEvent::Hide:
code before this statement never executed: case QEvent::Hide:
0
1778 case
never executed: case QEvent::Show:
QEvent::Show:
never executed: case QEvent::Show:
{
0
1779 QAbstractScrollArea *parent = qobject_cast<QAbstractScrollArea *>(parentWidget());-
1780 if (parent
parentDescription
TRUEnever evaluated
FALSEnever evaluated
&& parent->isVisible()
parent->isVisible()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1781 resizeSections();
never executed: resizeSections();
0
1782 geometriesChanged();-
1783 break;
never executed: break;
}
0
1784 case
never executed: case QEvent::ContextMenu:
QEvent::ContextMenu:
never executed: case QEvent::ContextMenu:
{
0
1785 d->state = QHeaderViewPrivate::NoState;-
1786 d->pressed = d->section = d->target = -1;-
1787 d->updateSectionIndicator(d->section, -1);-
1788 break;
never executed: break;
}
0
1789 case
never executed: case QEvent::Wheel:
QEvent::Wheel:
never executed: case QEvent::Wheel:
{
0
1790 QAbstractScrollArea *asa = qobject_cast<QAbstractScrollArea *>(parentWidget());-
1791 if (asa
asaDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1792 return
never executed: return QApplication::sendEvent(asa->viewport(), e);
QApplication::sendEvent(asa->viewport(), e);
never executed: return QApplication::sendEvent(asa->viewport(), e);
0
1793 break;
never executed: break;
}
0
1794 default
never executed: default:
:
never executed: default:
0
1795 break;
never executed: break;
0
1796 }-
1797 return
never executed: return QAbstractItemView::viewportEvent(e);
QAbstractItemView::viewportEvent(e);
never executed: return QAbstractItemView::viewportEvent(e);
0
1798}-
1799void QHeaderView::paintSection(QPainter *painter, const QRect &rect, int logicalIndex) const-
1800{-
1801 const QHeaderViewPrivate * const d = d_func();-
1802 if (!rect.isValid()
!rect.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1803 return;
never executed: return;
0
1804-
1805 QStyleOptionHeader opt;-
1806 initStyleOption(&opt);-
1807 QStyle::State state = QStyle::State_None;-
1808 if (isEnabled()
isEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1809 state |= QStyle::State_Enabled;
never executed: state |= QStyle::State_Enabled;
0
1810 if (window()->isActiveWindow()
window()->isActiveWindow()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1811 state |= QStyle::State_Active;
never executed: state |= QStyle::State_Active;
0
1812 if (d->clickableSections
d->clickableSectionsDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1813 if (logicalIndex == d->hover
logicalIndex == d->hoverDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1814 state |= QStyle::State_MouseOver;
never executed: state |= QStyle::State_MouseOver;
0
1815 if (logicalIndex == d->pressed
logicalIndex == d->pressedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1816 state |= QStyle::State_Sunken;
never executed: state |= QStyle::State_Sunken;
0
1817 else if (d->highlightSelected
d->highlightSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1818 if (d->sectionIntersectsSelection(logicalIndex)
d->sectionInte...(logicalIndex)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1819 state |= QStyle::State_On;
never executed: state |= QStyle::State_On;
0
1820 if (d->isSectionSelected(logicalIndex)
d->isSectionSe...(logicalIndex)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1821 state |= QStyle::State_Sunken;
never executed: state |= QStyle::State_Sunken;
0
1822 }
never executed: end of block
0
1823-
1824 }
never executed: end of block
0
1825 if (isSortIndicatorShown()
isSortIndicatorShown()Description
TRUEnever evaluated
FALSEnever evaluated
&& sortIndicatorSection() == logicalIndex
sortIndicatorS...= logicalIndexDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1826 opt.sortIndicator = (
(sortIndicator...scendingOrder)Description
TRUEnever evaluated
FALSEnever evaluated
sortIndicatorOrder() == Qt::AscendingOrder)
(sortIndicator...scendingOrder)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: opt.sortIndicator = (sortIndicatorOrder() == Qt::AscendingOrder) ? QStyleOptionHeader::SortDown : QStyleOptionHeader::SortUp;
0
1827 ? QStyleOptionHeader::SortDown : QStyleOptionHeader::SortUp;
never executed: opt.sortIndicator = (sortIndicatorOrder() == Qt::AscendingOrder) ? QStyleOptionHeader::SortDown : QStyleOptionHeader::SortUp;
0
1828-
1829-
1830 QVariant textAlignment = d->model->headerData(logicalIndex, d->orientation,-
1831 Qt::TextAlignmentRole);-
1832 opt.rect = rect;-
1833 opt.section = logicalIndex;-
1834 opt.state |= state;-
1835 opt.textAlignment = Qt::Alignment(textAlignment.isValid()-
1836 ? Qt::Alignment(textAlignment.toInt())-
1837 : d->defaultAlignment);-
1838-
1839 opt.iconAlignment = Qt::AlignVCenter;-
1840 opt.text = d->model->headerData(logicalIndex, d->orientation,-
1841 Qt::DisplayRole).toString();-
1842-
1843 int margin = 2 * style()->pixelMetric(QStyle::PM_HeaderMargin, 0, this);-
1844-
1845 const Qt::Alignment headerArrowAlignment = static_cast<Qt::Alignment>(style()->styleHint(QStyle::SH_Header_ArrowAlignment, 0, this));-
1846 const bool isHeaderArrowOnTheSide = headerArrowAlignment & Qt::AlignVCenter;-
1847 if (isSortIndicatorShown()
isSortIndicatorShown()Description
TRUEnever evaluated
FALSEnever evaluated
&& sortIndicatorSection() == logicalIndex
sortIndicatorS...= logicalIndexDescription
TRUEnever evaluated
FALSEnever evaluated
&& isHeaderArrowOnTheSide
isHeaderArrowOnTheSideDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1848 margin += style()->pixelMetric(QStyle::PM_HeaderMarkSize, 0, this);
never executed: margin += style()->pixelMetric(QStyle::PM_HeaderMarkSize, 0, this);
0
1849-
1850 if (d->textElideMode != Qt::ElideNone
d->textElideMo... Qt::ElideNoneDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1851 opt.text = opt.fontMetrics.elidedText(opt.text, d->textElideMode , rect.width() - margin);
never executed: opt.text = opt.fontMetrics.elidedText(opt.text, d->textElideMode , rect.width() - margin);
0
1852-
1853 QVariant variant = d->model->headerData(logicalIndex, d->orientation,-
1854 Qt::DecorationRole);-
1855 opt.icon = qvariant_cast<QIcon>(variant);-
1856 if (opt.icon.isNull()
opt.icon.isNull()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1857 opt.icon = qvariant_cast<QPixmap>(variant);
never executed: opt.icon = qvariant_cast<QPixmap>(variant);
0
1858 QVariant foregroundBrush = d->model->headerData(logicalIndex, d->orientation,-
1859 Qt::ForegroundRole);-
1860 if (foregroundBrush.canConvert<QBrush>()
foregroundBrus...vert<QBrush>()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1861 opt.palette.setBrush(QPalette::ButtonText, qvariant_cast<QBrush>(foregroundBrush));
never executed: opt.palette.setBrush(QPalette::ButtonText, qvariant_cast<QBrush>(foregroundBrush));
0
1862-
1863 QPointF oldBO = painter->brushOrigin();-
1864 QVariant backgroundBrush = d->model->headerData(logicalIndex, d->orientation,-
1865 Qt::BackgroundRole);-
1866 if (backgroundBrush.canConvert<QBrush>()
backgroundBrus...vert<QBrush>()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1867 opt.palette.setBrush(QPalette::Button, qvariant_cast<QBrush>(backgroundBrush));-
1868 opt.palette.setBrush(QPalette::Window, qvariant_cast<QBrush>(backgroundBrush));-
1869 painter->setBrushOrigin(opt.rect.topLeft());-
1870 }
never executed: end of block
0
1871-
1872-
1873 int visual = visualIndex(logicalIndex);-
1874 ((!(visual != -1)) ? qt_assert("visual != -1",__FILE__,2722) : qt_noop());-
1875 bool first = d->isFirstVisibleSection(visual);-
1876 bool last = d->isLastVisibleSection(visual);-
1877 if (first
firstDescription
TRUEnever evaluated
FALSEnever evaluated
&& last
lastDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1878 opt.position = QStyleOptionHeader::OnlyOneSection;
never executed: opt.position = QStyleOptionHeader::OnlyOneSection;
0
1879 else if (first
firstDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1880 opt.position = QStyleOptionHeader::Beginning;
never executed: opt.position = QStyleOptionHeader::Beginning;
0
1881 else if (last
lastDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1882 opt.position = QStyleOptionHeader::End;
never executed: opt.position = QStyleOptionHeader::End;
0
1883 else-
1884 opt.position = QStyleOptionHeader::Middle;
never executed: opt.position = QStyleOptionHeader::Middle;
0
1885 opt.orientation = d->orientation;-
1886-
1887 bool previousSelected = d->isSectionSelected(this->logicalIndex(visual - 1));-
1888 bool nextSelected = d->isSectionSelected(this->logicalIndex(visual + 1));-
1889 if (previousSelected
previousSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
&& nextSelected
nextSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1890 opt.selectedPosition = QStyleOptionHeader::NextAndPreviousAreSelected;
never executed: opt.selectedPosition = QStyleOptionHeader::NextAndPreviousAreSelected;
0
1891 else if (previousSelected
previousSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1892 opt.selectedPosition = QStyleOptionHeader::PreviousIsSelected;
never executed: opt.selectedPosition = QStyleOptionHeader::PreviousIsSelected;
0
1893 else if (nextSelected
nextSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1894 opt.selectedPosition = QStyleOptionHeader::NextIsSelected;
never executed: opt.selectedPosition = QStyleOptionHeader::NextIsSelected;
0
1895 else-
1896 opt.selectedPosition = QStyleOptionHeader::NotAdjacent;
never executed: opt.selectedPosition = QStyleOptionHeader::NotAdjacent;
0
1897-
1898 style()->drawControl(QStyle::CE_Header, &opt, painter, this);-
1899-
1900 painter->setBrushOrigin(oldBO);-
1901}
never executed: end of block
0
1902QSize QHeaderView::sectionSizeFromContents(int logicalIndex) const-
1903{-
1904 const QHeaderViewPrivate * const d = d_func();-
1905 ((!(logicalIndex >= 0)) ? qt_assert("logicalIndex >= 0",__FILE__,2761) : qt_noop());-
1906-
1907 ensurePolished();-
1908-
1909-
1910 QVariant variant = d->model->headerData(logicalIndex, d->orientation, Qt::SizeHintRole);-
1911 if (variant.isValid()
variant.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1912 return
never executed: return qvariant_cast<QSize>(variant);
qvariant_cast<QSize>(variant);
never executed: return qvariant_cast<QSize>(variant);
0
1913-
1914-
1915 QStyleOptionHeader opt;-
1916 initStyleOption(&opt);-
1917 opt.section = logicalIndex;-
1918 QVariant var = d->model->headerData(logicalIndex, d->orientation,-
1919 Qt::FontRole);-
1920 QFont fnt;-
1921 if (var.isValid()
var.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
&& var.canConvert<QFont>()
var.canConvert<QFont>()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1922 fnt = qvariant_cast<QFont>(var);
never executed: fnt = qvariant_cast<QFont>(var);
0
1923 else-
1924 fnt = font();
never executed: fnt = font();
0
1925 fnt.setBold(true);-
1926 opt.fontMetrics = QFontMetrics(fnt);-
1927 opt.text = d->model->headerData(logicalIndex, d->orientation,-
1928 Qt::DisplayRole).toString();-
1929 variant = d->model->headerData(logicalIndex, d->orientation, Qt::DecorationRole);-
1930 opt.icon = qvariant_cast<QIcon>(variant);-
1931 if (opt.icon.isNull()
opt.icon.isNull()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1932 opt.icon = qvariant_cast<QPixmap>(variant);
never executed: opt.icon = qvariant_cast<QPixmap>(variant);
0
1933 if (isSortIndicatorShown()
isSortIndicatorShown()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1934 opt.sortIndicator = QStyleOptionHeader::SortDown;
never executed: opt.sortIndicator = QStyleOptionHeader::SortDown;
0
1935 return
never executed: return style()->sizeFromContents(QStyle::CT_HeaderSection, &opt, QSize(), this);
style()->sizeFromContents(QStyle::CT_HeaderSection, &opt, QSize(), this);
never executed: return style()->sizeFromContents(QStyle::CT_HeaderSection, &opt, QSize(), this);
0
1936}-
1937int QHeaderView::horizontalOffset() const-
1938{-
1939 const QHeaderViewPrivate * const d = d_func();-
1940 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1941 return
never executed: return d->offset;
d->offset;
never executed: return d->offset;
0
1942 return
never executed: return 0;
0;
never executed: return 0;
0
1943}-
1944int QHeaderView::verticalOffset() const-
1945{-
1946 const QHeaderViewPrivate * const d = d_func();-
1947 if (d->orientation == Qt::Vertical
d->orientation == Qt::VerticalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1948 return
never executed: return d->offset;
d->offset;
never executed: return d->offset;
0
1949 return
never executed: return 0;
0;
never executed: return 0;
0
1950}-
1951-
1952-
1953-
1954-
1955-
1956-
1957void QHeaderView::updateGeometries()-
1958{-
1959 QHeaderViewPrivate * const d = d_func();-
1960 d->layoutChildren();-
1961 if (d->hasAutoResizeSections()
d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1962 d->doDelayedResizeSections();
never executed: d->doDelayedResizeSections();
0
1963}
never executed: end of block
0
1964-
1965-
1966-
1967-
1968-
1969-
1970void QHeaderView::scrollContentsBy(int dx, int dy)-
1971{-
1972 QHeaderViewPrivate * const d = d_func();-
1973 d->scrollDirtyRegion(dx, dy);-
1974}
never executed: end of block
0
1975-
1976-
1977-
1978-
1979-
1980void QHeaderView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &)-
1981{-
1982 QHeaderViewPrivate * const d = d_func();-
1983 d->invalidateCachedSizeHint();-
1984 if (d->hasAutoResizeSections()
d->hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1985 bool resizeRequired = d->globalResizeMode == ResizeToContents;-
1986 int first = orientation() == Qt::Horizontal
orientation() ...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
? topLeft.column() : topLeft.row();
0
1987 int last = orientation() == Qt::Horizontal
orientation() ...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
? bottomRight.column() : bottomRight.row();
0
1988 for (int i = first; i <= last
i <= lastDescription
TRUEnever evaluated
FALSEnever evaluated
&& !resizeRequired
!resizeRequiredDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i)
0
1989 resizeRequired = (sectionResizeMode(i) == ResizeToContents);
never executed: resizeRequired = (sectionResizeMode(i) == ResizeToContents);
0
1990 if (resizeRequired
resizeRequiredDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1991 d->doDelayedResizeSections();
never executed: d->doDelayedResizeSections();
0
1992 }
never executed: end of block
0
1993}
never executed: end of block
0
1994-
1995-
1996-
1997-
1998-
1999-
2000-
2001void QHeaderView::rowsInserted(const QModelIndex &, int, int)-
2002{-
2003-
2004}-
2005QRect QHeaderView::visualRect(const QModelIndex &) const-
2006{-
2007 return
never executed: return QRect();
QRect();
never executed: return QRect();
0
2008}-
2009void QHeaderView::scrollTo(const QModelIndex &, ScrollHint)-
2010{-
2011-
2012}-
2013QModelIndex QHeaderView::indexAt(const QPoint &) const-
2014{-
2015 return
never executed: return QModelIndex();
QModelIndex();
never executed: return QModelIndex();
0
2016}-
2017bool QHeaderView::isIndexHidden(const QModelIndex &) const-
2018{-
2019 return
never executed: return true;
true;
never executed: return true;
0
2020}-
2021QModelIndex QHeaderView::moveCursor(CursorAction, Qt::KeyboardModifiers)-
2022{-
2023 return
never executed: return QModelIndex();
QModelIndex();
never executed: return QModelIndex();
0
2024}-
2025void QHeaderView::setSelection(const QRect&, QItemSelectionModel::SelectionFlags)-
2026{-
2027-
2028}-
2029-
2030-
2031-
2032-
2033-
2034QRegion QHeaderView::visualRegionForSelection(const QItemSelection &selection) const-
2035{-
2036 const QHeaderViewPrivate * const d = d_func();-
2037 const int max = d->modelSectionCount();-
2038-
2039 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2040 int logicalLeft = max;-
2041 int logicalRight = 0;-
2042-
2043 if (d->visualIndices.empty()
d->visualIndices.empty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2044-
2045 for (int i = 0; i < selection.count()
i < selection.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2046 const QItemSelectionRange &r = selection.at(i);-
2047 if (r.parent().isValid()
r.parent().isValid()Description
TRUEnever evaluated
FALSEnever evaluated
|| !r.isValid()
!r.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2048 continue;
never executed: continue;
0
2049 if (r.left() < logicalLeft
r.left() < logicalLeftDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2050 logicalLeft = r.left();
never executed: logicalLeft = r.left();
0
2051 if (r.right() > logicalRight
r.right() > logicalRightDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2052 logicalRight = r.right();
never executed: logicalRight = r.right();
0
2053 }
never executed: end of block
0
2054 }
never executed: end of block
else {
0
2055 int left = max;-
2056 int right = 0;-
2057 for (int i = 0; i < selection.count()
i < selection.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2058 const QItemSelectionRange &r = selection.at(i);-
2059 if (r.parent().isValid()
r.parent().isValid()Description
TRUEnever evaluated
FALSEnever evaluated
|| !r.isValid()
!r.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2060 continue;
never executed: continue;
0
2061 for (int k = r.left(); k <= r.right()
k <= r.right()Description
TRUEnever evaluated
FALSEnever evaluated
; ++k) {
0
2062 int visual = visualIndex(k);-
2063 if (visual == -1
visual == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2064 continue;
never executed: continue;
0
2065 if (visual < left
visual < leftDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2066 left = visual;
never executed: left = visual;
0
2067 if (visual > right
visual > rightDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2068 right = visual;
never executed: right = visual;
0
2069 }
never executed: end of block
0
2070 }
never executed: end of block
0
2071 logicalLeft = logicalIndex(left);-
2072 logicalRight = logicalIndex(right);-
2073 }
never executed: end of block
0
2074-
2075 if (logicalLeft < 0
logicalLeft < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalLeft >= count()
logicalLeft >= count()Description
TRUEnever evaluated
FALSEnever evaluated
||
0
2076 logicalRight < 0
logicalRight < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalRight >= count()
logicalRight >= count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2077 return
never executed: return QRegion();
QRegion();
never executed: return QRegion();
0
2078-
2079 int leftPos = sectionViewportPosition(logicalLeft);-
2080 int rightPos = sectionViewportPosition(logicalRight);-
2081 rightPos += sectionSize(logicalRight);-
2082 return
never executed: return QRect(leftPos, 0, rightPos - leftPos, height());
QRect(leftPos, 0, rightPos - leftPos, height());
never executed: return QRect(leftPos, 0, rightPos - leftPos, height());
0
2083 }-
2084-
2085 int logicalTop = max;-
2086 int logicalBottom = 0;-
2087-
2088 if (d->visualIndices.empty()
d->visualIndices.empty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2089-
2090 for (int i = 0; i < selection.count()
i < selection.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2091 const QItemSelectionRange &r = selection.at(i);-
2092 if (r.parent().isValid()
r.parent().isValid()Description
TRUEnever evaluated
FALSEnever evaluated
|| !r.isValid()
!r.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2093 continue;
never executed: continue;
0
2094 if (r.top() < logicalTop
r.top() < logicalTopDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2095 logicalTop = r.top();
never executed: logicalTop = r.top();
0
2096 if (r.bottom() > logicalBottom
r.bottom() > logicalBottomDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2097 logicalBottom = r.bottom();
never executed: logicalBottom = r.bottom();
0
2098 }
never executed: end of block
0
2099 }
never executed: end of block
else {
0
2100 int top = max;-
2101 int bottom = 0;-
2102-
2103 for (int i = 0; i < selection.count()
i < selection.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2104 const QItemSelectionRange &r = selection.at(i);-
2105 if (r.parent().isValid()
r.parent().isValid()Description
TRUEnever evaluated
FALSEnever evaluated
|| !r.isValid()
!r.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2106 continue;
never executed: continue;
0
2107 for (int k = r.top(); k <= r.bottom()
k <= r.bottom()Description
TRUEnever evaluated
FALSEnever evaluated
; ++k) {
0
2108 int visual = visualIndex(k);-
2109 if (visual == -1
visual == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2110 continue;
never executed: continue;
0
2111 if (visual < top
visual < topDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2112 top = visual;
never executed: top = visual;
0
2113 if (visual > bottom
visual > bottomDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2114 bottom = visual;
never executed: bottom = visual;
0
2115 }
never executed: end of block
0
2116 }
never executed: end of block
0
2117-
2118 logicalTop = logicalIndex(top);-
2119 logicalBottom = logicalIndex(bottom);-
2120 }
never executed: end of block
0
2121-
2122 if (logicalTop < 0
logicalTop < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalTop >= count()
logicalTop >= count()Description
TRUEnever evaluated
FALSEnever evaluated
||
0
2123 logicalBottom < 0
logicalBottom < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| logicalBottom >= count()
logicalBottom >= count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2124 return
never executed: return QRegion();
QRegion();
never executed: return QRegion();
0
2125-
2126 int topPos = sectionViewportPosition(logicalTop);-
2127 int bottomPos = sectionViewportPosition(logicalBottom) + sectionSize(logicalBottom);-
2128-
2129 return
never executed: return QRect(0, topPos, width(), bottomPos - topPos);
QRect(0, topPos, width(), bottomPos - topPos);
never executed: return QRect(0, topPos, width(), bottomPos - topPos);
0
2130}-
2131-
2132-
2133-
2134-
2135int QHeaderViewPrivate::sectionHandleAt(int position)-
2136{-
2137 QHeaderView * const q = q_func();-
2138 int visual = q->visualIndexAt(position);-
2139 if (visual == -1
visual == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2140 return
never executed: return -1;
-1;
never executed: return -1;
0
2141 int log = logicalIndex(visual);-
2142 int pos = q->sectionViewportPosition(log);-
2143 int grip = q->style()->pixelMetric(QStyle::PM_HeaderGripMargin, 0, q);-
2144-
2145 bool atLeft = position < pos + grip;-
2146 bool atRight = (position > pos + q->sectionSize(log) - grip);-
2147 if (reverse()
reverse()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2148 qSwap(atLeft, atRight);
never executed: qSwap(atLeft, atRight);
0
2149-
2150 if (atLeft
atLeftDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2151-
2152 while(visual > -1
visual > -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2153 int logical = q->logicalIndex(--visual);-
2154 if (!q->isSectionHidden(logical)
!q->isSectionHidden(logical)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2155 return
never executed: return logical;
logical;
never executed: return logical;
0
2156 }
never executed: end of block
0
2157 }
never executed: end of block
else if (atRight
atRightDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2158-
2159 return
never executed: return log;
log;
never executed: return log;
0
2160 }-
2161 return
never executed: return -1;
-1;
never executed: return -1;
0
2162}-
2163-
2164void QHeaderViewPrivate::setupSectionIndicator(int section, int position)-
2165{-
2166 QHeaderView * const q = q_func();-
2167 if (!sectionIndicator
!sectionIndicatorDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2168 sectionIndicator = new QLabel(viewport);-
2169 }
never executed: end of block
0
2170-
2171 int w, h;-
2172 int p = q->sectionViewportPosition(section);-
2173 if (orientation == Qt::Horizontal
orientation == Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2174 w = q->sectionSize(section);-
2175 h = viewport->height();-
2176 }
never executed: end of block
else {
0
2177 w = viewport->width();-
2178 h = q->sectionSize(section);-
2179 }
never executed: end of block
0
2180 sectionIndicator->resize(w, h);-
2181-
2182 QPixmap pm(w, h);-
2183 pm.fill(QColor(0, 0, 0, 45));-
2184 QRect rect(0, 0, w, h);-
2185-
2186 QPainter painter(&pm);-
2187 painter.setOpacity(0.75);-
2188 q->paintSection(&painter, rect, section);-
2189 painter.end();-
2190-
2191 sectionIndicator->setPixmap(pm);-
2192 sectionIndicatorOffset = position - qMax(p, 0);-
2193}
never executed: end of block
0
2194-
2195void QHeaderViewPrivate::updateSectionIndicator(int section, int position)-
2196{-
2197 if (!sectionIndicator
!sectionIndicatorDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2198 return;
never executed: return;
0
2199-
2200 if (section == -1
section == -1Description
TRUEnever evaluated
FALSEnever evaluated
|| target == -1
target == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2201 sectionIndicator->hide();-
2202 return;
never executed: return;
0
2203 }-
2204-
2205 if (orientation == Qt::Horizontal
orientation == Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2206 sectionIndicator->move(position - sectionIndicatorOffset, 0);
never executed: sectionIndicator->move(position - sectionIndicatorOffset, 0);
0
2207 else-
2208 sectionIndicator->move(0, position - sectionIndicatorOffset);
never executed: sectionIndicator->move(0, position - sectionIndicatorOffset);
0
2209-
2210 sectionIndicator->show();-
2211}
never executed: end of block
0
2212void QHeaderView::initStyleOption(QStyleOptionHeader *option) const-
2213{-
2214 const QHeaderViewPrivate * const d = d_func();-
2215 option->initFrom(this);-
2216 option->state = QStyle::State_None | QStyle::State_Raised;-
2217 option->orientation = d->orientation;-
2218 if (d->orientation == Qt::Horizontal
d->orientation...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2219 option->state |= QStyle::State_Horizontal;
never executed: option->state |= QStyle::State_Horizontal;
0
2220 if (isEnabled()
isEnabled()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2221 option->state |= QStyle::State_Enabled;
never executed: option->state |= QStyle::State_Enabled;
0
2222 option->section = 0;-
2223}
never executed: end of block
0
2224-
2225bool QHeaderViewPrivate::isSectionSelected(int section) const-
2226{-
2227 int i = section * 2;-
2228 if (i < 0
i < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| i >= sectionSelected.count()
i >= sectionSelected.count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2229 return
never executed: return false;
false;
never executed: return false;
0
2230 if (sectionSelected.testBit(i)
sectionSelected.testBit(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2231 return
never executed: return sectionSelected.testBit(i + 1);
sectionSelected.testBit(i + 1);
never executed: return sectionSelected.testBit(i + 1);
0
2232 bool s = false;-
2233 if (orientation == Qt::Horizontal
orientation == Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2234 s = isColumnSelected(section);
never executed: s = isColumnSelected(section);
0
2235 else-
2236 s = isRowSelected(section);
never executed: s = isRowSelected(section);
0
2237 sectionSelected.setBit(i + 1, s);-
2238 sectionSelected.setBit(i, true);-
2239 return
never executed: return s;
s;
never executed: return s;
0
2240}-
2241-
2242bool QHeaderViewPrivate::isFirstVisibleSection(int section) const-
2243{-
2244 if (sectionStartposRecalc
sectionStartposRecalcDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2245 recalcSectionStartPos();
never executed: recalcSectionStartPos();
0
2246 const SectionItem &item = sectionItems.at(section);-
2247 return
never executed: return item.size > 0 && item.calculated_startpos == 0;
item.size > 0
item.size > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& item.calculated_startpos == 0
item.calculated_startpos == 0Description
TRUEnever evaluated
FALSEnever evaluated
;
never executed: return item.size > 0 && item.calculated_startpos == 0;
0
2248}-
2249-
2250bool QHeaderViewPrivate::isLastVisibleSection(int section) const-
2251{-
2252 if (sectionStartposRecalc
sectionStartposRecalcDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2253 recalcSectionStartPos();
never executed: recalcSectionStartPos();
0
2254 const SectionItem &item = sectionItems.at(section);-
2255 return
never executed: return item.size > 0 && item.calculatedEndPos() == length;
item.size > 0
item.size > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& item.calculatedEndPos() == length
item.calculate...os() == lengthDescription
TRUEnever evaluated
FALSEnever evaluated
;
never executed: return item.size > 0 && item.calculatedEndPos() == length;
0
2256}-
2257-
2258-
2259-
2260-
2261-
2262int QHeaderViewPrivate::lastVisibleVisualIndex() const-
2263{-
2264 const QHeaderView * const q = q_func();-
2265 for (int visual = q->count()-1; visual >= 0
visual >= 0Description
TRUEnever evaluated
FALSEnever evaluated
; --visual) {
0
2266 if (!q->isSectionHidden(q->logicalIndex(visual))
!q->isSectionH...Index(visual))Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2267 return
never executed: return visual;
visual;
never executed: return visual;
0
2268 }
never executed: end of block
0
2269-
2270-
2271 return
never executed: return -1;
-1;
never executed: return -1;
0
2272}-
2273void QHeaderViewPrivate::resizeSections(QHeaderView::ResizeMode globalMode, bool useGlobalMode)-
2274{-
2275 QHeaderView * const q = q_func();-
2276-
2277 delayedResize.stop();-
2278-
2279 executePostedLayout();-
2280 if (sectionCount() == 0
sectionCount() == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2281 return;
never executed: return;
0
2282-
2283 if (resizeRecursionBlock
resizeRecursionBlockDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2284 return;
never executed: return;
0
2285 resizeRecursionBlock = true;-
2286-
2287 invalidateCachedSizeHint();-
2288-
2289 const int lastVisibleSection = lastVisibleVisualIndex();-
2290-
2291-
2292 int stretchSection = -1;-
2293 if (stretchLastSection
stretchLastSectionDescription
TRUEnever evaluated
FALSEnever evaluated
&& !useGlobalMode
!useGlobalModeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2294 stretchSection = lastVisibleVisualIndex();
never executed: stretchSection = lastVisibleVisualIndex();
0
2295-
2296-
2297 int lengthToStretch = (orientation == Qt::Horizontal
orientation == Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
? viewport->width() : viewport->height());
0
2298 int numberOfStretchedSections = 0;-
2299 QList<int> section_sizes;-
2300 for (int i = 0; i < sectionCount()
i < sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2301 if (isVisualIndexHidden(i)
isVisualIndexHidden(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2302 continue;
never executed: continue;
0
2303-
2304 QHeaderView::ResizeMode resizeMode;-
2305 if (useGlobalMode
useGlobalModeDescription
TRUEnever evaluated
FALSEnever evaluated
&& (
(i != stretchSection)Description
TRUEnever evaluated
FALSEnever evaluated
i != stretchSection)
(i != stretchSection)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2306 resizeMode = globalMode;
never executed: resizeMode = globalMode;
0
2307 else-
2308 resizeMode = (i == stretchSection
i == stretchSectionDescription
TRUEnever evaluated
FALSEnever evaluated
? QHeaderView::Stretch : headerSectionResizeMode(i));
never executed: resizeMode = (i == stretchSection ? QHeaderView::Stretch : headerSectionResizeMode(i));
0
2309-
2310 if (resizeMode == QHeaderView::Stretch
resizeMode == ...rView::StretchDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2311 ++numberOfStretchedSections;-
2312 section_sizes.append(headerSectionSize(i));-
2313 continue;
never executed: continue;
0
2314 }-
2315-
2316-
2317 int sectionSize = 0;-
2318 if (resizeMode == QHeaderView::Interactive
resizeMode == ...w::InteractiveDescription
TRUEnever evaluated
FALSEnever evaluated
|| resizeMode == QHeaderView::Fixed
resizeMode == ...derView::FixedDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2319 sectionSize = headerSectionSize(i);-
2320 }
never executed: end of block
else {
0
2321 int logicalIndex = q->logicalIndex(i);-
2322 sectionSize = qMax(viewSectionSizeHint(logicalIndex),-
2323 q->sectionSizeHint(logicalIndex));-
2324 if (sectionSize > q->maximumSectionSize()
sectionSize > ...mSectionSize()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2325 sectionSize = q->maximumSectionSize();
never executed: sectionSize = q->maximumSectionSize();
0
2326 }
never executed: end of block
0
2327 section_sizes.append(sectionSize);-
2328 lengthToStretch -= sectionSize;-
2329 }
never executed: end of block
0
2330-
2331-
2332 int stretchSectionLength = -1;-
2333 int pixelReminder = 0;-
2334 if (numberOfStretchedSections > 0
numberOfStretchedSections > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& lengthToStretch > 0
lengthToStretch > 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2335 int hintLengthForEveryStretchedSection = lengthToStretch / numberOfStretchedSections;-
2336 stretchSectionLength = qMax(hintLengthForEveryStretchedSection, q->minimumSectionSize());-
2337 pixelReminder = lengthToStretch % numberOfStretchedSections;-
2338 }
never executed: end of block
0
2339-
2340-
2341 int spanStartSection = 0;-
2342 int previousSectionLength = 0;-
2343-
2344 QHeaderView::ResizeMode previousSectionResizeMode = QHeaderView::Interactive;-
2345-
2346-
2347 for (int i = 0; i < sectionCount()
i < sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2348 int oldSectionLength = headerSectionSize(i);-
2349 int newSectionLength = -1;-
2350 QHeaderView::ResizeMode newSectionResizeMode = headerSectionResizeMode(i);-
2351-
2352 if (isVisualIndexHidden(i)
isVisualIndexHidden(i)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2353 newSectionLength = 0;-
2354 }
never executed: end of block
else {
0
2355 QHeaderView::ResizeMode resizeMode;-
2356 if (useGlobalMode
useGlobalModeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2357 resizeMode = globalMode;
never executed: resizeMode = globalMode;
0
2358 else-
2359 resizeMode = (i == stretchSection
i == stretchSectionDescription
TRUEnever evaluated
FALSEnever evaluated
never executed: resizeMode = (i == stretchSection ? QHeaderView::Stretch : newSectionResizeMode);
0
2360 ? QHeaderView::Stretch
never executed: resizeMode = (i == stretchSection ? QHeaderView::Stretch : newSectionResizeMode);
0
2361 : newSectionResizeMode);
never executed: resizeMode = (i == stretchSection ? QHeaderView::Stretch : newSectionResizeMode);
0
2362 if (resizeMode == QHeaderView::Stretch
resizeMode == ...rView::StretchDescription
TRUEnever evaluated
FALSEnever evaluated
&& stretchSectionLength != -1
stretchSectionLength != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2363 if (i == lastVisibleSection
i == lastVisibleSectionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2364 newSectionLength = qMax(stretchSectionLength, lastSectionSize);
never executed: newSectionLength = qMax(stretchSectionLength, lastSectionSize);
0
2365 else-
2366 newSectionLength = stretchSectionLength;
never executed: newSectionLength = stretchSectionLength;
0
2367 if (pixelReminder > 0
pixelReminder > 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2368 newSectionLength += 1;-
2369 --pixelReminder;-
2370 }
never executed: end of block
0
2371 section_sizes.removeFirst();-
2372 }
never executed: end of block
else {
0
2373 newSectionLength = section_sizes.front();-
2374 section_sizes.removeFirst();-
2375 }
never executed: end of block
0
2376 }-
2377-
2378-
2379 if ((previousSectionResizeMode != newSectionResizeMode
previousSectio...tionResizeModeDescription
TRUEnever evaluated
FALSEnever evaluated
0
2380 || previousSectionLength != newSectionLength
previousSectio...wSectionLengthDescription
TRUEnever evaluated
FALSEnever evaluated
) && i > 0
i > 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2381 int spanLength = (i - spanStartSection) * previousSectionLength;-
2382 createSectionItems(spanStartSection, i - 1, spanLength, previousSectionResizeMode);-
2383-
2384 spanStartSection = i;-
2385 }
never executed: end of block
0
2386-
2387 if (newSectionLength != oldSectionLength
newSectionLeng...dSectionLengthDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2388 q->sectionResized(logicalIndex(i), oldSectionLength, newSectionLength);
never executed: q->sectionResized(logicalIndex(i), oldSectionLength, newSectionLength);
0
2389-
2390 previousSectionLength = newSectionLength;-
2391 previousSectionResizeMode = newSectionResizeMode;-
2392 }
never executed: end of block
0
2393-
2394 createSectionItems(spanStartSection, sectionCount() - 1,-
2395 (sectionCount() - spanStartSection) * previousSectionLength,-
2396 previousSectionResizeMode);-
2397-
2398 resizeRecursionBlock = false;-
2399 viewport->update();-
2400}
never executed: end of block
0
2401-
2402void QHeaderViewPrivate::createSectionItems(int start, int end, int size, QHeaderView::ResizeMode mode)-
2403{-
2404 int sizePerSection = size / (end - start + 1);-
2405 if (end >= sectionItems.count()
end >= sectionItems.count()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2406 sectionItems.resize(end + 1);-
2407 sectionStartposRecalc = true;-
2408 }
never executed: end of block
0
2409 SectionItem *sectiondata = sectionItems.data();-
2410 for (int i = start; i <= end
i <= endDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2411 length += (sizePerSection - sectiondata[i].size);-
2412 sectionStartposRecalc |= (sectiondata[i].size != sizePerSection);-
2413 sectiondata[i].size = sizePerSection;-
2414 sectiondata[i].resizeMode = mode;-
2415 }
never executed: end of block
0
2416}
never executed: end of block
0
2417-
2418void QHeaderViewPrivate::removeSectionsFromSectionItems(int start, int end)-
2419{-
2420-
2421 sectionStartposRecalc |= (end != sectionItems.count() - 1);-
2422 int removedlength = 0;-
2423 for (int u = start; u <= end
u <= endDescription
TRUEnever evaluated
FALSEnever evaluated
; ++u)
0
2424 removedlength += sectionItems.at(u).size;
never executed: removedlength += sectionItems.at(u).size;
0
2425 length -= removedlength;-
2426 sectionItems.remove(start, end - start + 1);-
2427}
never executed: end of block
0
2428-
2429void QHeaderViewPrivate::clear()-
2430{-
2431 if (state != NoClear
state != NoClearDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2432 length = 0;-
2433 visualIndices.clear();-
2434 logicalIndices.clear();-
2435 sectionSelected.clear();-
2436 hiddenSectionSize.clear();-
2437 sectionItems.clear();-
2438 invalidateCachedSizeHint();-
2439 }
never executed: end of block
0
2440}
never executed: end of block
0
2441-
2442void QHeaderViewPrivate::flipSortIndicator(int section)-
2443{-
2444 QHeaderView * const q = q_func();-
2445 Qt::SortOrder sortOrder;-
2446 if (sortIndicatorSection == section
sortIndicatorS...ion == sectionDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2447 sortOrder = (
(sortIndicator...scendingOrder)Description
TRUEnever evaluated
FALSEnever evaluated
sortIndicatorOrder == Qt::DescendingOrder)
(sortIndicator...scendingOrder)Description
TRUEnever evaluated
FALSEnever evaluated
? Qt::AscendingOrder : Qt::DescendingOrder;
0
2448 }
never executed: end of block
else {
0
2449 const QVariant value = model->headerData(section, orientation, Qt::InitialSortOrderRole);-
2450 if (value.canConvert(QVariant::Int)
value.canConve...QVariant::Int)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2451 sortOrder = static_cast<Qt::SortOrder>(value.toInt());
never executed: sortOrder = static_cast<Qt::SortOrder>(value.toInt());
0
2452 else-
2453 sortOrder = Qt::AscendingOrder;
never executed: sortOrder = Qt::AscendingOrder;
0
2454 }-
2455 q->setSortIndicator(section, sortOrder);-
2456}
never executed: end of block
0
2457-
2458void QHeaderViewPrivate::cascadingResize(int visual, int newSize)-
2459{-
2460 QHeaderView * const q = q_func();-
2461 const int minimumSize = q->minimumSectionSize();-
2462 const int oldSize = headerSectionSize(visual);-
2463 int delta = newSize - oldSize;-
2464-
2465 if (delta > 0
delta > 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2466 bool sectionResized = false;-
2467-
2468-
2469 for (int i = firstCascadingSection; i < visual
i < visualDescription
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2470 if (cascadingSectionSize.contains(i)
cascadingSecti...ze.contains(i)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2471 int currentSectionSize = headerSectionSize(i);-
2472 int originalSectionSize = cascadingSectionSize.value(i);-
2473 if (currentSectionSize < originalSectionSize
currentSection...nalSectionSizeDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2474 int newSectionSize = currentSectionSize + delta;-
2475 resizeSectionItem(i, currentSectionSize, newSectionSize);-
2476 if (newSectionSize >= originalSectionSize
newSectionSize...nalSectionSizeDescription
TRUEnever evaluated
FALSEnever evaluated
&& false
falseDescription
TRUEnever evaluated
FALSEnever evaluated
)
-
2477 cascadingSectionSize.remove(i);
dead code: cascadingSectionSize.remove(i);
-
2478 sectionResized = true;-
2479 break;
never executed: break;
0
2480 }-
2481 }
never executed: end of block
0
2482-
2483 }
never executed: end of block
0
2484-
2485-
2486 if (!sectionResized
!sectionResizedDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2487 newSize = qMax(newSize, minimumSize);-
2488 if (oldSize != newSize
oldSize != newSizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2489 resizeSectionItem(visual, oldSize, newSize);
never executed: resizeSectionItem(visual, oldSize, newSize);
0
2490 }
never executed: end of block
0
2491-
2492-
2493 for (int i = visual + 1; i < sectionCount()
i < sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2494 if (!sectionIsCascadable(i)
!sectionIsCascadable(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2495 continue;
never executed: continue;
0
2496 int currentSectionSize = headerSectionSize(i);-
2497 if (currentSectionSize <= minimumSize
currentSection...<= minimumSizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2498 continue;
never executed: continue;
0
2499 int newSectionSize = qMax(currentSectionSize - delta, minimumSize);-
2500-
2501 resizeSectionItem(i, currentSectionSize, newSectionSize);-
2502 saveCascadingSectionSize(i, currentSectionSize);-
2503 delta = delta - (currentSectionSize - newSectionSize);-
2504-
2505-
2506 if (delta <= 0
delta <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2507 break;
never executed: break;
0
2508 }
never executed: end of block
0
2509 }
never executed: end of block
else {
0
2510 bool sectionResized = false;-
2511-
2512-
2513 for (int i = lastCascadingSection; i > visual
i > visualDescription
TRUEnever evaluated
FALSEnever evaluated
; --i) {
0
2514 if (!cascadingSectionSize.contains(i)
!cascadingSect...ze.contains(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2515 continue;
never executed: continue;
0
2516 int currentSectionSize = headerSectionSize(i);-
2517 int originalSectionSize = cascadingSectionSize.value(i);-
2518 if (currentSectionSize >= originalSectionSize
currentSection...nalSectionSizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2519 continue;
never executed: continue;
0
2520 int newSectionSize = currentSectionSize - delta;-
2521 resizeSectionItem(i, currentSectionSize, newSectionSize);-
2522 if (newSectionSize >= originalSectionSize
newSectionSize...nalSectionSizeDescription
TRUEnever evaluated
FALSEnever evaluated
&& false
falseDescription
TRUEnever evaluated
FALSEnever evaluated
) {
dead code: { cascadingSectionSize.remove(i); }
-
2523-
2524 cascadingSectionSize.remove(i);
dead code: { cascadingSectionSize.remove(i); }
-
2525 }
dead code: { cascadingSectionSize.remove(i); }
-
2526 sectionResized = true;-
2527 break;
never executed: break;
0
2528 }-
2529-
2530-
2531 resizeSectionItem(visual, oldSize, qMax(newSize, minimumSize));-
2532-
2533-
2534 if (delta < 0
delta < 0Description
TRUEnever evaluated
FALSEnever evaluated
&& newSize < minimumSize
newSize < minimumSizeDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2535 for (int i = visual - 1; i >= 0
i >= 0Description
TRUEnever evaluated
FALSEnever evaluated
; --i) {
0
2536 if (!sectionIsCascadable(i)
!sectionIsCascadable(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2537 continue;
never executed: continue;
0
2538 int sectionSize = headerSectionSize(i);-
2539 if (sectionSize <= minimumSize
sectionSize <= minimumSizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2540 continue;
never executed: continue;
0
2541 resizeSectionItem(i, sectionSize, qMax(sectionSize + delta, minimumSize));-
2542 saveCascadingSectionSize(i, sectionSize);-
2543 break;
never executed: break;
0
2544 }-
2545 }
never executed: end of block
0
2546-
2547-
2548 if (!sectionResized
!sectionResizedDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2549 for (int i = visual + 1; i < sectionCount()
i < sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2550 if (!sectionIsCascadable(i)
!sectionIsCascadable(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2551 continue;
never executed: continue;
0
2552 int currentSectionSize = headerSectionSize(i);-
2553 int newSectionSize = qMax(currentSectionSize - delta, minimumSize);-
2554 resizeSectionItem(i, currentSectionSize, newSectionSize);-
2555 break;
never executed: break;
0
2556 }-
2557 }
never executed: end of block
0
2558 }
never executed: end of block
0
2559-
2560 if (hasAutoResizeSections()
hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2561 doDelayedResizeSections();
never executed: doDelayedResizeSections();
0
2562-
2563 viewport->update();-
2564}
never executed: end of block
0
2565-
2566void QHeaderViewPrivate::setDefaultSectionSize(int size)-
2567{-
2568 QHeaderView * const q = q_func();-
2569 executePostedLayout();-
2570 invalidateCachedSizeHint();-
2571 defaultSectionSize = size;-
2572 customDefaultSectionSize = true;-
2573 if (state == QHeaderViewPrivate::ResizeSection
state == QHead...:ResizeSectionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2574 preventCursorChangeInSetOffset = true;
never executed: preventCursorChangeInSetOffset = true;
0
2575 for (int i = 0; i < sectionItems.count()
i < sectionItems.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2576 QHeaderViewPrivate::SectionItem &section = sectionItems[i];-
2577 if (hiddenSectionSize.isEmpty()
hiddenSectionSize.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
|| !isVisualIndexHidden(i)
!isVisualIndexHidden(i)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2578 const int newSize = size;-
2579 if (newSize != section.size
newSize != section.sizeDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2580 length += newSize - section.size;-
2581 const int oldSectionSize = section.sectionSize();-
2582 section.size = size;-
2583 q->sectionResized(logicalIndex(i), oldSectionSize, size);-
2584 }
never executed: end of block
0
2585 }
never executed: end of block
0
2586 }
never executed: end of block
0
2587 sectionStartposRecalc = true;-
2588 if (hasAutoResizeSections()
hasAutoResizeSections()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2589 doDelayedResizeSections();
never executed: doDelayedResizeSections();
0
2590 viewport->update();-
2591}
never executed: end of block
0
2592-
2593void QHeaderViewPrivate::updateDefaultSectionSizeFromStyle()-
2594{-
2595 QHeaderView * const q = q_func();-
2596 if (orientation == Qt::Horizontal
orientation == Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2597 defaultSectionSize = q->style()->pixelMetric(QStyle::PM_HeaderDefaultSectionSizeHorizontal, 0, q);-
2598 }
never executed: end of block
else {
0
2599 defaultSectionSize = qMax(q->minimumSectionSize(),-
2600 q->style()->pixelMetric(QStyle::PM_HeaderDefaultSectionSizeVertical, 0, q));-
2601 }
never executed: end of block
0
2602}-
2603-
2604void QHeaderViewPrivate::recalcSectionStartPos() const-
2605{-
2606 int pixelpos = 0;-
2607 for (QVector<SectionItem>::const_iterator i = sectionItems.constBegin(); i != sectionItems.constEnd()
i != sectionItems.constEnd()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2608 i->calculated_startpos = pixelpos;-
2609 pixelpos += i->size;-
2610 }
never executed: end of block
0
2611 sectionStartposRecalc = false;-
2612}
never executed: end of block
0
2613-
2614void QHeaderViewPrivate::resizeSectionItem(int visualIndex, int oldSize, int newSize)-
2615{-
2616 QHeaderView * const q = q_func();-
2617 QHeaderView::ResizeMode mode = headerSectionResizeMode(visualIndex);-
2618 createSectionItems(visualIndex, visualIndex, newSize, mode);-
2619 q->sectionResized(logicalIndex(visualIndex), oldSize, newSize);-
2620}
never executed: end of block
0
2621-
2622int QHeaderViewPrivate::headerSectionSize(int visual) const-
2623{-
2624 if (visual < sectionCount()
visual < sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
&& visual >= 0
visual >= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2625 return
never executed: return sectionItems.at(visual).sectionSize();
sectionItems.at(visual).sectionSize();
never executed: return sectionItems.at(visual).sectionSize();
0
2626 return
never executed: return -1;
-1;
never executed: return -1;
0
2627}-
2628-
2629int QHeaderViewPrivate::headerSectionPosition(int visual) const-
2630{-
2631 if (visual < sectionCount()
visual < sectionCount()Description
TRUEnever evaluated
FALSEnever evaluated
&& visual >= 0
visual >= 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2632 if (sectionStartposRecalc
sectionStartposRecalcDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2633 recalcSectionStartPos();
never executed: recalcSectionStartPos();
0
2634 return
never executed: return sectionItems.at(visual).calculated_startpos;
sectionItems.at(visual).calculated_startpos;
never executed: return sectionItems.at(visual).calculated_startpos;
0
2635 }-
2636 return
never executed: return -1;
-1;
never executed: return -1;
0
2637}-
2638-
2639int QHeaderViewPrivate::headerVisualIndexAt(int position) const-
2640{-
2641 if (sectionStartposRecalc
sectionStartposRecalcDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2642 recalcSectionStartPos();
never executed: recalcSectionStartPos();
0
2643 int startidx = 0;-
2644 int endidx = sectionItems.count() - 1;-
2645 while (startidx <= endidx
startidx <= endidxDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2646 int middle = (endidx + startidx) / 2;-
2647 if (sectionItems.at(middle).calculated_startpos > position
sectionItems.a...pos > positionDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2648 endidx = middle - 1;-
2649 }
never executed: end of block
else {
0
2650 if (sectionItems.at(middle).calculatedEndPos() <= position
sectionItems.a...() <= positionDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2651 startidx = middle + 1;
never executed: startidx = middle + 1;
0
2652 else-
2653 return
never executed: return middle;
middle;
never executed: return middle;
0
2654 }-
2655 }-
2656 return
never executed: return -1;
-1;
never executed: return -1;
0
2657}-
2658-
2659void QHeaderViewPrivate::setHeaderSectionResizeMode(int visual, QHeaderView::ResizeMode mode)-
2660{-
2661 int size = headerSectionSize(visual);-
2662 createSectionItems(visual, visual, size, mode);-
2663}
never executed: end of block
0
2664-
2665QHeaderView::ResizeMode QHeaderViewPrivate::headerSectionResizeMode(int visual) const-
2666{-
2667 if (visual < 0
visual < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| visual >= sectionItems.count()
visual >= sectionItems.count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2668 return
never executed: return globalResizeMode;
globalResizeMode;
never executed: return globalResizeMode;
0
2669 return
never executed: return static_cast<QHeaderView::ResizeMode>(sectionItems.at(visual).resizeMode);
static_cast<QHeaderView::ResizeMode>(sectionItems.at(visual).resizeMode);
never executed: return static_cast<QHeaderView::ResizeMode>(sectionItems.at(visual).resizeMode);
0
2670}-
2671-
2672void QHeaderViewPrivate::setGlobalHeaderResizeMode(QHeaderView::ResizeMode mode)-
2673{-
2674 globalResizeMode = mode;-
2675 for (int i = 0; i < sectionItems.count()
i < sectionItems.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i)
0
2676 sectionItems[i].resizeMode = mode;
never executed: sectionItems[i].resizeMode = mode;
0
2677}
never executed: end of block
0
2678-
2679int QHeaderViewPrivate::viewSectionSizeHint(int logical) const-
2680{-
2681 if (QAbstractItemView *view = qobject_cast<QAbstractItemView*>(parent)
QAbstractItemV...View*>(parent)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2682 return
never executed: return (orientation == Qt::Horizontal ? view->sizeHintForColumn(logical) : view->sizeHintForRow(logical));
(orientation == Qt::Horizontal
orientation == Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
never executed: return (orientation == Qt::Horizontal ? view->sizeHintForColumn(logical) : view->sizeHintForRow(logical));
0
2683 ? view->sizeHintForColumn(logical)
never executed: return (orientation == Qt::Horizontal ? view->sizeHintForColumn(logical) : view->sizeHintForRow(logical));
0
2684 : view->sizeHintForRow(logical));
never executed: return (orientation == Qt::Horizontal ? view->sizeHintForColumn(logical) : view->sizeHintForRow(logical));
0
2685 }-
2686 return
never executed: return 0;
0;
never executed: return 0;
0
2687}-
2688-
2689int QHeaderViewPrivate::adjustedVisualIndex(int visualIndex) const-
2690{-
2691 if (!hiddenSectionSize.isEmpty()
!hiddenSectionSize.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2692 int adjustedVisualIndex = visualIndex;-
2693 int currentVisualIndex = 0;-
2694 for (int i = 0; i < sectionItems.count()
i < sectionItems.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++i) {
0
2695 if (isVisualIndexHidden(i)
isVisualIndexHidden(i)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2696 ++
never executed: ++adjustedVisualIndex;
adjustedVisualIndex;
never executed: ++adjustedVisualIndex;
0
2697 else-
2698 ++
never executed: ++currentVisualIndex;
currentVisualIndex;
never executed: ++currentVisualIndex;
0
2699 if (currentVisualIndex >= visualIndex
currentVisualI...>= visualIndexDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2700 break;
never executed: break;
0
2701 }
never executed: end of block
0
2702 visualIndex = adjustedVisualIndex;-
2703 }
never executed: end of block
0
2704 return
never executed: return visualIndex;
visualIndex;
never executed: return visualIndex;
0
2705}-
2706-
2707void QHeaderViewPrivate::setScrollOffset(const QScrollBar *scrollBar, QAbstractItemView::ScrollMode scrollMode)-
2708{-
2709 QHeaderView * const q = q_func();-
2710 if (scrollMode == QAbstractItemView::ScrollPerItem
scrollMode == ...:ScrollPerItemDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2711 if (scrollBar->maximum() > 0
scrollBar->maximum() > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& scrollBar->value() == scrollBar->maximum()
scrollBar->val...Bar->maximum()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2712 q->setOffsetToLastSection();
never executed: q->setOffsetToLastSection();
0
2713 else-
2714 q->setOffsetToSectionPosition(scrollBar->value());
never executed: q->setOffsetToSectionPosition(scrollBar->value());
0
2715 } else {-
2716 q->setOffset(scrollBar->value());-
2717 }
never executed: end of block
0
2718}-
2719-
2720-
2721void QHeaderViewPrivate::write(QDataStream &out) const-
2722{-
2723 out << int(orientation);-
2724 out << int(sortIndicatorOrder);-
2725 out << sortIndicatorSection;-
2726 out << sortIndicatorShown;-
2727-
2728 out << visualIndices;-
2729 out << logicalIndices;-
2730-
2731 out << sectionsHiddenToBitVector();-
2732 out << hiddenSectionSize;-
2733-
2734 out << length;-
2735 out << sectionCount();-
2736 out << movableSections;-
2737 out << clickableSections;-
2738 out << highlightSelected;-
2739 out << stretchLastSection;-
2740 out << cascadingResizing;-
2741 out << stretchSections;-
2742 out << contentsSections;-
2743 out << defaultSectionSize;-
2744 out << minimumSectionSize;-
2745-
2746 out << int(defaultAlignment);-
2747 out << int(globalResizeMode);-
2748-
2749 out << sectionItems;-
2750 out << resizeContentsPrecision;-
2751 out << customDefaultSectionSize;-
2752}
never executed: end of block
0
2753-
2754bool QHeaderViewPrivate::read(QDataStream &in)-
2755{-
2756 int orient, order, align, global;-
2757 int sortIndicatorSectionIn;-
2758 bool sortIndicatorShownIn;-
2759 int lengthIn;-
2760 QVector<int> visualIndicesIn;-
2761 QVector<int> logicalIndicesIn;-
2762 QHash<int, int> hiddenSectionSizeIn;-
2763 bool movableSectionsIn;-
2764 bool clickableSectionsIn;-
2765 bool highlightSelectedIn;-
2766 bool stretchLastSectionIn;-
2767 bool cascadingResizingIn;-
2768 int stretchSectionsIn;-
2769 int contentsSectionsIn;-
2770 int defaultSectionSizeIn;-
2771 int minimumSectionSizeIn;-
2772 QVector<SectionItem> sectionItemsIn;-
2773-
2774-
2775 in >> orient;-
2776 in >> order;-
2777-
2778 in >> sortIndicatorSectionIn;-
2779 in >> sortIndicatorShownIn;-
2780-
2781 in >> visualIndicesIn;-
2782 in >> logicalIndicesIn;-
2783-
2784 QBitArray sectionHidden;-
2785 in >> sectionHidden;-
2786 in >> hiddenSectionSizeIn;-
2787 in >> lengthIn;-
2788-
2789 int unusedSectionCount;-
2790 in >> unusedSectionCount;-
2791-
2792 if (in.status() != QDataStream::Ok
in.status() != QDataStream::OkDescription
TRUEnever evaluated
FALSEnever evaluated
|| lengthIn < 0
lengthIn < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2793 return
never executed: return false;
false;
never executed: return false;
0
2794-
2795 in >> movableSectionsIn;-
2796 in >> clickableSectionsIn;-
2797 in >> highlightSelectedIn;-
2798 in >> stretchLastSectionIn;-
2799 in >> cascadingResizingIn;-
2800 in >> stretchSectionsIn;-
2801 in >> contentsSectionsIn;-
2802 in >> defaultSectionSizeIn;-
2803 in >> minimumSectionSizeIn;-
2804-
2805 in >> align;-
2806-
2807 in >> global;-
2808-
2809 in >> sectionItemsIn;-
2810-
2811-
2812-
2813 QVector<SectionItem> newSectionItems;-
2814 for (int u = 0; u < sectionItemsIn.count()
u < sectionItemsIn.count()Description
TRUEnever evaluated
FALSEnever evaluated
; ++u) {
0
2815 int count = sectionItemsIn.at(u).tmpDataStreamSectionCount;-
2816 if (count > 0
count > 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2817 sectionItemsIn[u].size /= count;
never executed: sectionItemsIn[u].size /= count;
0
2818 for (int n = 0; n < count
n < countDescription
TRUEnever evaluated
FALSEnever evaluated
; ++n)
0
2819 newSectionItems.append(sectionItemsIn[u]);
never executed: newSectionItems.append(sectionItemsIn[u]);
0
2820 }
never executed: end of block
0
2821-
2822 int sectionItemsLengthTotal = 0;-
2823 for (QForeachContainer<typename QtPrivate::remove_reference<decltype(newSectionItems)>::type> _container_((newSectionItems)); _container_.control && _container_.i != _container_.e; ++_container_.i, _container_.control ^= 1) for (const SectionItem &section = *_container_.i; _container_.control; _container_.control = 0)-
2824 sectionItemsLengthTotal += section.size;
never executed: sectionItemsLengthTotal += section.size;
0
2825 if (sectionItemsLengthTotal != lengthIn
sectionItemsLe...al != lengthInDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2826 return
never executed: return false;
false;
never executed: return false;
0
2827-
2828 orientation = static_cast<Qt::Orientation>(orient);-
2829 sortIndicatorOrder = static_cast<Qt::SortOrder>(order);-
2830 sortIndicatorSection = sortIndicatorSectionIn;-
2831 sortIndicatorShown = sortIndicatorShownIn;-
2832 visualIndices = visualIndicesIn;-
2833 logicalIndices = logicalIndicesIn;-
2834 hiddenSectionSize = hiddenSectionSizeIn;-
2835 length = lengthIn;-
2836-
2837 movableSections = movableSectionsIn;-
2838 clickableSections = clickableSectionsIn;-
2839 highlightSelected = highlightSelectedIn;-
2840 stretchLastSection = stretchLastSectionIn;-
2841 cascadingResizing = cascadingResizingIn;-
2842 stretchSections = stretchSectionsIn;-
2843 contentsSections = contentsSectionsIn;-
2844 defaultSectionSize = defaultSectionSizeIn;-
2845 minimumSectionSize = minimumSectionSizeIn;-
2846-
2847 defaultAlignment = Qt::Alignment(align);-
2848 globalResizeMode = static_cast<QHeaderView::ResizeMode>(global);-
2849-
2850 sectionItems = newSectionItems;-
2851 setHiddenSectionsFromBitVector(sectionHidden);-
2852 recalcSectionStartPos();-
2853-
2854 int tmpint;-
2855 in >> tmpint;-
2856 if (in.status() == QDataStream::Ok
in.status() == QDataStream::OkDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2857 resizeContentsPrecision = tmpint;
never executed: resizeContentsPrecision = tmpint;
0
2858-
2859 bool tmpbool;-
2860 in >> tmpbool;-
2861 if (in.status() == QDataStream::Ok
in.status() == QDataStream::OkDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
2862 customDefaultSectionSize = tmpbool;-
2863 if (!customDefaultSectionSize
!customDefaultSectionSizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2864 updateDefaultSectionSizeFromStyle();
never executed: updateDefaultSectionSizeFromStyle();
0
2865 }
never executed: end of block
0
2866-
2867 return
never executed: return true;
true;
never executed: return true;
0
2868}-
2869-
2870-
2871-
2872-
2873-
2874-
2875-
Switch to Source codePreprocessed file

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