Messagelib
view.cpp
71 bool mNeedToApplyThemeColumns = false; ///< Flag signaling a pending application of theme columns
74 bool mSaveThemeColumnStateOnSectionResize = true; ///< This is used to filter out programmatic column resizes in slotSectionResized().
108 scrollerProp.setScrollMetric(QScrollerProperties::AcceleratingFlickMaximumTime, 0.2); // QTBUG-88249
121 connect(header(), &QWidget::customContextMenuRequested, this, &View::slotHeaderContextMenuRequested);
126 header()->setMinimumSectionSize(2); // QTreeView overrides our sections sizes if we set them smaller than this value
127 header()->setDefaultSectionSize(2); // QTreeView overrides our sections sizes if we set them smaller than this value
134 connect(selectionModel(), &QItemSelectionModel::selectionChanged, this, &View::slotSelectionChanged, Qt::UniqueConnection);
153 // Zero out the theme, aggregation and ApplyThemeColumnsTimer so Model will not cause accesses to them in its destruction process
173 disconnect(selectionModel(), &QItemSelectionModel::selectionChanged, this, &View::slotSelectionChanged);
218 || (scrollBarPosition == scrollBarMaximum && sortOrder->messageSortDirection() == SortOrder::Ascending));
284//////////////////////////////////////////////////////////////////////////////////////////////////////
288// is quite unpredictable. This is due to the complex interaction with the model, with the QTreeView
299// - Explicitly save the column state, used when the user changes the widths or visibility manually.
625 qCDebug(MESSAGELIST_LOG) << "Resize event enter (viewport width is " << viewport()->width() << ")";
860 selectionModel()->select(currentIndex(), QItemSelectionModel::Select | QItemSelectionModel::Current | QItemSelectionModel::Rows);
873 selectionModel()->setCurrentIndex(index, QItemSelectionModel::Select | QItemSelectionModel::Current | QItemSelectionModel::Rows);
878 selectionModel()->setCurrentIndex(QModelIndex(), QItemSelectionModel::Current | QItemSelectionModel::Clear);
998 if (!static_cast<MessageItem *>(item)->parent() || (static_cast<MessageItem *>(item)->parent()->type() != Item::Message)) {
1120Item *View::messageItemAfter(Item *referenceItem, MessageTypeFilter messageTypeFilter, bool loop)
1131 if ((referenceItem->childItemCount() > 0) && ((messageTypeFilter != MessageTypeAny) || isExpanded(d->mModel->index(referenceItem, 0)))) {
1132 // the current item had children: either expanded or we want unread/new messages (and so we'll expand it if it isn't)
1175 (!message_type_matches(below, messageTypeFilter)) || // is hidden (and we don't want hidden items as they aren't "officially" in the view)
1177 ((d->mModel->flags(belowIndex) & (Qt::ItemIsSelectable | Qt::ItemIsEnabled)) != (Qt::ItemIsSelectable | Qt::ItemIsEnabled))) {
1179 if ((below->childItemCount() > 0) && ((messageTypeFilter != MessageTypeAny) || isExpanded(belowIndex))) {
1180 // the current item had children: either expanded or we want unread messages (and so we'll expand it if it isn't)
1192 if (referenceItem) { // <-- this means "we have started from something that is not the top: looping makes sense"
1236Item *View::messageItemBefore(Item *referenceItem, MessageTypeFilter messageTypeFilter, bool loop)
1249 if ((siblingAbove && siblingAbove != referenceItem && siblingAbove != parent) && (siblingAbove->childItemCount() > 0)
1250 && ((messageTypeFilter != MessageTypeAny) || (isExpanded(d->mModel->index(siblingAbove, 0))))) {
1251 // the current item had children: either expanded or we want unread/new messages (and so we'll expand it if it isn't)
1295 (!message_type_matches(above, messageTypeFilter)) || // we don't expand items but the item has parents unexpanded (so should be skipped)
1302 ((d->mModel->flags(aboveIndex) & (Qt::ItemIsSelectable | Qt::ItemIsEnabled)) != (Qt::ItemIsSelectable | Qt::ItemIsEnabled))) {
1309 if (referenceItem) { // <-- this means "we have started from something that is not the beginning: looping makes sense"
1396 selectionModel()->select(newSelectedIndex, QItemSelectionModel::Rows | QItemSelectionModel::Select);
1409 selectionModel()->select(newSelectedIndex, QItemSelectionModel::Rows | QItemSelectionModel::Select);
1422 selectionModel()->select(newSelectedIndex, QItemSelectionModel::Rows | QItemSelectionModel::Select);
1426bool View::selectNextMessageItem(MessageTypeFilter messageTypeFilter, ExistingSelectionBehaviour existingSelectionBehaviour, bool centerItem, bool loop)
1463bool View::selectPreviousMessageItem(MessageTypeFilter messageTypeFilter, ExistingSelectionBehaviour existingSelectionBehaviour, bool centerItem, bool loop)
1500bool View::focusNextMessageItem(MessageTypeFilter messageTypeFilter, bool centerItem, bool loop)
1524bool View::focusPreviousMessageItem(MessageTypeFilter messageTypeFilter, bool centerItem, bool loop)
1559 selectionModel()->select(idx, QItemSelectionModel::Select | QItemSelectionModel::Current | QItemSelectionModel::Rows);
1773 selectionModel()->select(aMessageIndex, QItemSelectionModel::ClearAndSelect | QItemSelectionModel::Rows);
1909 qCDebug(MESSAGELIST_LOG) << "View message selected [" << static_cast<MessageItem *>(it)->subject() << "]";
2005void View::changeMessageStatus(MessageItem *it, Akonadi::MessageStatus set, Akonadi::MessageStatus unset)
2008 // visible to the user even if the Model is actually in the middle of a long job (maybe it's loading)
2011 // d->mWidget->viewMessageStatusChangeRequest() will really perform the status change on the storage.
2059 if ((e->pos() - d->mMousePressPosition).manhattanLength() <= QApplication::startDragDistance()) {
2093 d->mWidget->viewGroupHeaderContextPopupRequest(static_cast< GroupHeaderItem * >(item), viewport()->mapToGlobal(pos));
2095 d->mWidget->viewMessageListContextPopupRequest(selectionAsMessageItemList(), viewport()->mapToGlobal(pos));
2201 const QString textDirection = textIsLeftToRight ? QStringLiteral("left") : QStringLiteral("right");
2203 QString tip = QStringLiteral("<table width=\"100%\" border=\"0\" cellpadding=\"2\" cellspacing=\"0\">");
2238 tip += htmlCodeForStandardRow.arg(i18nc("Receiver of the email", "To"), mi->displayReceiver().toHtmlEscaped());
2242 tip += htmlCodeForStandardRow.arg(mi->displayReceiver().toHtmlEscaped(), i18nc("Receiver of the email", "To"));
2268 tip += htmlCodeForStandardRow.arg(i18n("Preview"), content.replace(QLatin1Char('\n'), QStringLiteral("<br>")));
2270 tip += htmlCodeForStandardRow.arg(content.replace(QLatin1Char('\n'), QStringLiteral("<br>"))).arg(i18n("Preview"));
2327 description = i18nc("@info:tooltip Formats to something like 'Threads started on 2008-12-21'", "Threads started on %1", ghi->label());
2329 description = i18nc("@info:tooltip Formats to something like 'Threads started Yesterday'", "Threads started %1", ghi->label());
2343 description = i18nc("@info:tooltip Formats to something like 'Messages sent on 2008-12-21'", "Messages sent on %1", ghi->label());
2346 i18nc("@info:tooltip Formats to something like 'Messages received on 2008-12-21'", "Messages received on %1", ghi->label());
2350 description = i18nc("@info:tooltip Formats to something like 'Messages sent Yesterday'", "Messages sent %1", ghi->label());
2352 description = i18nc("@info:tooltip Formats to something like 'Messages received Yesterday'", "Messages received %1", ghi->label());
2452 i18np("<b>%1</b> message (<b>%2</b> unread)", "<b>%1</b> messages (<b>%2</b> unread)", stats.mTotalChildCount, stats.mUnreadChildCount);
2615 qCDebug(MESSAGELIST_LOG) << "Left hit with selectedIndexes().count() == " << q->selectedIndexes().count();
2626 it->status().isImportant() ? Akonadi::MessageStatus() : Akonadi::MessageStatus::statusImportant(),
2627 it->status().isImportant() ? Akonadi::MessageStatus::statusImportant() : Akonadi::MessageStatus());
2630 q->changeMessageStatusRead(static_cast<MessageItem *>(it), it->status().isRead() ? false : true);
2637 : (it->status().isHam() ? Akonadi::MessageStatus::statusSpam() : Akonadi::MessageStatus::statusHam()),
2646 : (it->status().isWatched() ? Akonadi::MessageStatus::statusIgnored() : Akonadi::MessageStatus::statusWatched()),
2649 : (it->status().isWatched() ? Akonadi::MessageStatus::statusWatched() : Akonadi::MessageStatus()));
2658 // Let QTreeView handle the selection and Q_EMIT the appropriate signals (slotSelectionChanged() may be called)
2663 // Let QTreeView handle the selection and Q_EMIT the appropriate signals (slotSelectionChanged() may be called)
2666 mWidget->viewMessageListContextPopupRequest(q->selectionAsMessageItemList(), q->viewport()->mapToGlobal(e->pos()));
2699 mWidget->viewGroupHeaderContextPopupRequest(groupHeaderItem, q->viewport()->mapToGlobal(e->pos()));
2737 } else if (mScroller->state() == QScroller::Pressed || mScroller->state() == QScroller::Inactive) {
2745 // with touch you can touch multiple widgets at the same time, but only one widget will get a mousePressEvent.
2779 // with touch you can touch multiple widgets at the same time, but only one widget will get a mousePressEvent.
2800 QMouseEvent fakeMousePress(QEvent::MouseButtonPress, tapViewportPos, tapViewportPos, Qt::LeftButton, Qt::LeftButton, Qt::NoModifier);
2818 // with touch you can touch multiple widgets at the same time, but only one widget will get a mousePressEvent.
static const MessageStatus statusSpam()
void setRead(bool read=true)
bool isRead() const
qint32 toQInt32() const
static const MessageStatus statusImportant()
static const MessageStatus statusWatched()
static const MessageStatus statusToAct()
static const MessageStatus statusIgnored()
static const MessageStatus statusHam()
QPointF pos() const
A set of aggregation options that can be applied to the MessageList::Model in a single shot.
Definition aggregation.h:29
@ GroupByDateRange
Use smart (thread leader) date ranges ("Today","Yesterday","Last Week"...)
Definition aggregation.h:39
@ GroupBySenderOrReceiver
Group by sender (incoming) or receiver (outgoing) field.
Definition aggregation.h:40
@ TopmostMessage
The thread grouping is computed from the topmost message (very similar to least recent,...
Definition aggregation.h:79
@ MostRecentMessage
The thread grouping is computed from the most recent message.
Definition aggregation.h:81
A structure used with MessageList::Item::childItemStats().
Definition item.h:173
A single item of the MessageList tree managed by MessageList::Model.
Definition item.h:36
Item * childItem(int idx) const
Returns the child item at position idx or 0 if idx is out of the allowable range.
Definition item.cpp:63
const Akonadi::MessageStatus & status() const
Returns the status associated to this Item.
Definition item.cpp:449
Item * itemAboveChild(Item *child)
Returns the item that is visually above the specified child if this item.
Definition item.cpp:128
Item * itemAbove()
Returns the item that is visually above this item in the tree.
Definition item.cpp:143
void setStatus(Akonadi::MessageStatus status)
Sets the status associated to this Item.
Definition item.cpp:454
Item * itemBelowChild(Item *child)
Returns the item that is visually below the specified child if this item.
Definition item.cpp:82
Item * parent() const
Returns the parent Item in the tree, or 0 if this item isn't attached to the tree.
Definition item.cpp:439
Item * deepestItem()
Returns the deepest item in the subtree originating at this item.
Definition item.cpp:117
Item * itemBelow()
Returns the item that is visually below this item in the tree.
Definition item.cpp:102
int indexOfChildItem(Item *item) const
Returns the actual index of the child Item item or -1 if item is not a child of this Item.
Definition item.cpp:167
void subTreeToList(QList< MessageItem * > &list)
Appends the whole subtree originating at this item to the specified list.
Definition messageitem.cpp:524
This class manages the huge tree of displayable objects: GroupHeaderItems and MessageItems.
Definition model.h:54
void statusMessage(const QString &message)
Notify the outside when updating the status bar with a message could be useful.
A class which holds information about sorting, e.g.
Definition sortorder.h:23
MessageSorting messageSorting() const
Returns the current message sorting option.
Definition sortorder.cpp:40
@ SortMessagesByDateTimeOfMostRecent
Sort the messages by date and time of the most recent message in subtree.
Definition sortorder.h:63
SortDirection messageSortDirection() const
Returns the current message SortDirection.
Definition sortorder.cpp:50
The QAbstractItemModel based interface that you need to provide for your storage to work with Message...
Definition storagemodelbase.h:29
The Column class defines a view column available inside this theme.
Definition theme.h:501
void setCurrentWidth(double currentWidth)
Sets the current shared width setting for this column.
Definition theme.cpp:695
bool currentlyVisible() const
Returns the current shared visibility state for this column.
Definition theme.cpp:680
void setCurrentlyVisible(bool currentlyVisible)
Sets the current shared visibility state for this column.
Definition theme.cpp:685
bool containsTextItems() const
Returns true if this column contains text items.
Definition theme.cpp:762
The Theme class defines the visual appearance of the MessageList.
Definition theme.h:48
void triggerDelayedApplyThemeColumns()
Starts a short-delay timer connected to applyThemeColumns().
Definition view.cpp:567
QList< MessageItem * > selectionAsMessageItemList(bool includeCollapsedChildren=true) const
Returns the currently selected MessageItems (bound to current StorageModel).
Definition view.cpp:887
void markMessageItemsAsAboutToBeRemoved(const QList< MessageItem * > &items, bool bMark)
If bMark is true this function marks the messages as "about to be removed" so they appear dimmer and ...
Definition view.cpp:1645
QString currentFilterSearchString() const
Returns the search term in the current quicksearch field.
Definition view.cpp:2522
void changeEvent(QEvent *e) override
Reimplemented in order to catch palette, font and style changes.
Definition view.cpp:2119
void setCurrentThreadExpanded(bool expand)
If expand is true then it expands the current thread, otherwise collapses it.
Definition view.cpp:1003
MessageItemSetReference createPersistentSet(const QList< MessageItem * > &items)
Creates a persistent set for the specified MessageItems and returns its reference.
Definition view.cpp:1630
Item * currentItem() const
Returns the current Item (that is bound to current StorageModel).
Definition view.cpp:838
MessageItem * currentMessageItem(bool selectIfNeeded=true) const
Returns the current MessageItem (that is bound to current StorageModel).
Definition view.cpp:849
bool selectionEmpty() const
Fast function that determines if the selection is empty.
Definition view.cpp:882
void slotShowDefaultColumns()
Handles the Show Default Columns action of the header context menu.
Definition view.cpp:790
bool selectPreviousMessageItem(MessageTypeFilter messageTypeFilter, ExistingSelectionBehaviour existingSelectionBehaviour, bool centerItem, bool loop)
Selects the previous message item in the view.
Definition view.cpp:1463
void triggerDelayedSaveThemeColumnState()
Starts a short-delay timer connected to saveThemeColumnState().
Definition view.cpp:614
QList< MessageItem * > persistentSetCurrentMessageItemList(MessageItemSetReference ref)
Returns the list of MessageItems that are still existing in the set pointed by the specified referenc...
Definition view.cpp:1635
void setAggregation(const Aggregation *aggregation)
Sets the aggregation for this view.
Definition view.cpp:249
void mouseDoubleClickEvent(QMouseEvent *e) override
Reimplemented in order to handle double clicks with sub-item precision.
Definition view.cpp:1929
void deletePersistentSet(MessageItemSetReference ref)
Deletes the persistent set pointed by the specified reference.
Definition view.cpp:1640
Item * firstMessageItem(MessageTypeFilter messageTypeFilter)
Finds the first message item in the view.
Definition view.cpp:1216
bool selectFirstMessageItem(MessageTypeFilter messageTypeFilter, bool centerItem)
Selects the first message item in the view that matches messageTypeFilter.
Definition view.cpp:1566
QList< Akonadi::MessageStatus > currentFilterStatus() const
Returns the Akonadi::MessageStatus in the current quicksearch field.
Definition view.cpp:2512
QList< MessageItem * > currentThreadAsMessageItemList() const
Returns the MessageItems bound to the current StorageModel that are part of the current thread.
Definition view.cpp:930
void mouseMoveEvent(QMouseEvent *e) override
Reimplemented in order to handle DnD.
Definition view.cpp:2044
void setStorageModel(StorageModel *storageModel, PreSelectionMode preSelectionMode=PreSelectLastSelected)
Sets the StorageModel to be displayed in this view.
Definition view.cpp:276
void resizeEvent(QResizeEvent *e) override
Reimplemented in order to resize columns when header is not visible.
Definition view.cpp:623
bool isScrollingLocked() const
Returns true if the vertical scrollbar should keep to the top or bottom while inserting items.
Definition view.cpp:186
Item * messageItemBefore(Item *referenceItem, MessageTypeFilter messageTypeFilter, bool loop)
Finds message item that comes "before" the reference item.
Definition view.cpp:1236
int sizeHintForColumn(int logicalColumnIndex) const override
Reimplemented in order to kill the QTreeView column auto-resizing.
Definition view.cpp:713
StorageModel * storageModel() const
Returns the currently displayed StorageModel.
Definition view.cpp:244
void slotExpandAllGroups()
Expands all the group headers (if present in the current Aggregation)
Definition view.cpp:2492
void ensureDisplayedWithParentsExpanded(Item *it)
Makes sure that the specified is currently viewable by the user.
Definition view.cpp:1792
void slotCollapseAllGroups()
Collapses all the group headers (if present in the current Aggregation)
Definition view.cpp:2487
void slotHeaderContextMenuRequested(const QPoint &pnt)
Handles context menu requests for the header.
Definition view.cpp:727
Item * lastMessageItem(MessageTypeFilter messageTypeFilter)
Finds the last message item in the view.
Definition view.cpp:1337
void saveThemeColumnState()
Saves the state of the columns (width and visibility) to the currently selected theme object.
Definition view.cpp:576
virtual void setRowHidden(int row, const QModelIndex &parent, bool hide)
Called to hide or show the specified row from the view.
Definition view.cpp:2532
void selectFocusedMessageItem(bool centerItem)
Selects the currently focused message item.
Definition view.cpp:1548
Item * nextMessageItem(MessageTypeFilter messageTypeFilter, bool loop)
Finds the next message item with respect to the current item.
Definition view.cpp:1221
void modelFinishedLoading()
This is called by Model to signal that the initial loading stage of a newly attached StorageModel is ...
Definition view.cpp:1622
void slotAdjustColumnSizes()
Handles the Adjust Column Sizes action of the header context menu.
Definition view.cpp:780
bool selectNextMessageItem(MessageTypeFilter messageTypeFilter, ExistingSelectionBehaviour existingSelectionBehaviour, bool centerItem, bool loop)
Selects the next message item in the view.
Definition view.cpp:1426
bool isDisplayedWithParentsExpanded(Item *it) const
Returns true if the specified item is currently displayed in the tree and has all the parents expande...
Definition view.cpp:1822
Item * messageItemAfter(Item *referenceItem, MessageTypeFilter messageTypeFilter, bool loop)
Finds message item that comes "after" the reference item.
Definition view.cpp:1120
void setAllGroupsExpanded(bool expand)
If expand is true then it expands all the groups (only the toplevel group item: inner threads are NOT...
Definition view.cpp:1052
void slotSelectionChanged(const QItemSelection ¤t, const QItemSelection &)
Handles selection item management.
Definition view.cpp:1876
void dragMoveEvent(QDragMoveEvent *e) override
Reimplemented in order to handle message DnD.
Definition view.cpp:2109
void dropEvent(QDropEvent *e) override
Reimplemented in order to handle message DnD.
Definition view.cpp:2114
void setChildrenExpanded(const Item *parent, bool expand)
Expands or collapses the children of the specified item, recursively.
Definition view.cpp:951
void reload()
Triggers a reload of the view in order to re-display the current folder.
Definition view.cpp:271
bool focusPreviousMessageItem(MessageTypeFilter messageTypeFilter, bool centerItem, bool loop)
Focuses the previous message item in the view without actually selecting it.
Definition view.cpp:1524
bool focusNextMessageItem(MessageTypeFilter messageTypeFilter, bool centerItem, bool loop)
Focuses the next message item in the view without actually selecting it.
Definition view.cpp:1500
void focusQuickSearch(const QString &selectedText)
Sets the focus on the quick search line of the currently active tab.
Definition view.cpp:2507
void growOrShrinkExistingSelection(const QModelIndex &newSelectedIndex, bool movingUp)
This is used by the selection functions to grow/shrink the existing selection according to the newly ...
Definition view.cpp:1347
void setCurrentMessageItem(MessageItem *it, bool center=false)
Sets the current message item.
Definition view.cpp:867
void mousePressEvent(QMouseEvent *e) override
Reimplemented in order to handle clicks with sub-item precision.
Definition view.cpp:2032
void ignoreUpdateGeometries(bool ignore)
Used to enable/disable the ignoring of updateGeometries() calls.
Definition view.cpp:181
void setAllThreadsExpanded(bool expand)
If expand is true then it expands all the threads, otherwise collapses them.
Definition view.cpp:1031
Item * previousMessageItem(MessageTypeFilter messageTypeFilter, bool loop)
Finds the previous message item with respect to the current item.
Definition view.cpp:1342
void slotShowHideColumn(int columnIndex)
Handles the actions of the header context menu for showing/hiding a column.
Definition view.cpp:805
Item * deepestExpandedChild(Item *referenceItem) const
Returns the deepest child that is visible (i.e.
Definition view.cpp:1226
bool selectLastMessageItem(MessageTypeFilter messageTypeFilter, bool centerItem)
Selects the last message item in the view that matches messageTypeFilter.
Definition view.cpp:1594
void selectMessageItems(const QList< MessageItem * > &list)
Selects the specified MessageItems.
Definition view.cpp:1083
void slotHeaderSectionResized(int logicalIndex, int oldWidth, int newWidth)
Handles section resizes in order to save the column widths.
Definition view.cpp:702
void ignoreCurrentChanges(bool ignore)
This is called by the model to insulate us from certain QTreeView signals This is because they may be...
Definition view.cpp:170
void dragEnterEvent(QDragEnterEvent *e) override
Reimplemented in order to handle message DnD.
Definition view.cpp:2104
void slotDisplayTooltips(bool showTooltips)
Handles the Display Tooltips action of the header context menu.
Definition view.cpp:800
void changeMessageStatus(MessageItem *it, Akonadi::MessageStatus set, Akonadi::MessageStatus unset)
Performs a change in the specified MessageItem status.
Definition view.cpp:2005
bool isThreaded() const
Returns true if the current Aggregation is threaded, false otherwise (or if there is no current Aggre...
Definition view.cpp:1868
void updateGeometries() override
Reimplemented in order to disable update of the geometries while a job step is running (as it takes a...
Definition view.cpp:222
Provides a widget which has the messagelist and the most important helper widgets,...
Definition widgetbase.h:42
void statusMessage(const QString &message)
Notify the outside when updating the status bar with a message could be useful.
Q_SCRIPTABLE CaptureState status()
QString i18np(const char *singular, const char *plural, const TYPE &arg...)
QString i18nc(const char *context, const char *text, const TYPE &arg...)
QString i18n(const char *text, const TYPE &arg...)
The implementation independent part of the MessageList library.
Definition aggregation.h:22
ExistingSelectionBehaviour
This enum is used in the view message selection functions (for instance View::selectNextMessage())
Definition messagelist/src/core/enums.h:47
PreSelectionMode
Pre-selection is the action of automatically selecting a message just after the folder has finished l...
Definition messagelist/src/core/enums.h:28
MessageTypeFilter
This enum is used in the view message selection functions (for instance View::nextMessageItem()).
Definition messagelist/src/core/enums.h:39
PositionAtCenter
ScrollPerPixel
ExtendedSelection
QModelIndex currentIndex() const const
virtual void resizeEvent(QResizeEvent *event) override
void scheduleDelayedItemsLayout()
QItemSelectionModel * selectionModel() const const
void setCurrentIndex(const QModelIndex &index)
virtual void contextMenuEvent(QContextMenuEvent *e) override
QScrollBar * verticalScrollBar() const const
QWidget * viewport() const const
void setCheckable(bool)
void setChecked(bool)
void setEnabled(bool)
void triggered(bool checked)
startDragDistance
const QColor & color() const const
int blue() const const
int green() const const
QString name(NameFormat format) const const
int red() const const
void setAlpha(int alpha)
FontChange
void accept()
Type type() const const
void setItalic(bool enable)
state
QGesture * gesture(Qt::GestureType type) const const
Qt::GestureType registerRecognizer(QGestureRecognizer *recognizer)
layoutDirection
Interactive
void sectionResized(int logicalIndex, int oldSize, int newSize)
QModelIndexList indexes() const const
void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected)
void append(QList< T > &&value)
const_reference at(qsizetype i) const const
bool contains(const AT &value) const const
qsizetype count() const const
T & first()
bool isEmpty() const const
T & last()
void reserve(qsizetype size)
void * internalPointer() const const
bool isValid() const const
int row() const const
QPoint pos() const const
Qt::MouseEventSource source() const const
const QObjectList & children() const const
QMetaObject::Connection connect(const QObject *sender, PointerToMemberFunction signal, Functor functor)
bool disconnect(const QMetaObject::Connection &connection)
virtual bool event(QEvent *e)
QObject * parent() const const
ToolTipBase
const QBrush & text() const const
int y() const const
int bottom() const const
QPoint bottomLeft() const const
bool isValid() const const
int top() const const
QPoint topLeft() const const
Rectangle
Scrolling
QScroller * scroller(QObject *target)
AcceleratingFlickMaximumTime
void setScrollMetric(ScrollMetric metric, const QVariant &value)
Qt::MouseButton button() const const
Qt::MouseButtons buttons() const const
QString arg(Args &&... args) const const
bool isEmpty() const const
QString & replace(QChar before, QChar after, Qt::CaseSensitivity cs)
QString toHtmlEscaped() const const
QString trimmed() const const
AlignCenter
UniqueConnection
CustomContextMenu
GestureStarted
GestureType
ItemIsSelectable
NoModifier
LeftToRight
LeftButton
MouseEventSource
ScrollBarAsNeeded
WA_AcceptTouchEvents
Widget
position
position
QFuture< ArgsType< Signal > > connect(Sender *sender, Signal signal)
void timeout()
void showText(const QPoint &pos, const QString &text, QWidget *w, const QRect &rect, int msecDisplayTime)
virtual void changeEvent(QEvent *event) override
int columnWidth(int column) const const
void expand(const QModelIndex &index)
void expanded(const QModelIndex &index)
QHeaderView * header() const const
void setHeaderHidden(bool hide)
virtual QModelIndex indexAt(const QPoint &point) const const override
bool isExpanded(const QModelIndex &index) const const
bool isRowHidden(int row, const QModelIndex &parent) const const
virtual void mouseMoveEvent(QMouseEvent *event) override
virtual void mousePressEvent(QMouseEvent *event) override
virtual void paintEvent(QPaintEvent *event) override
virtual void scrollTo(const QModelIndex &index, ScrollHint hint) override
virtual QModelIndexList selectedIndexes() const const override
void setExpanded(const QModelIndex &index, bool expanded)
void setRowHidden(int row, const QModelIndex &parent, bool hide)
void setUniformRowHeights(bool uniform)
virtual void updateGeometries() override
virtual QRect visualRect(const QModelIndex &index) const const override
void customContextMenuRequested(const QPoint &pos)
void hide()
QPoint mapToGlobal(const QPoint &pos) const const
palette
pos
bool isVisible() const const
width
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri Feb 21 2025 11:47:09 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri Feb 21 2025 11:47:09 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.