+void KItemListWidget::setExpansionAreaHovered(bool hovered)
+{
+ if (hovered == m_expansionAreaHovered) {
+ return;
+ }
+ m_expansionAreaHovered = hovered;
+ update();
+}
+
+bool KItemListWidget::expansionAreaHovered() const
+{
+ return m_expansionAreaHovered;
+}
+
+void KItemListWidget::setHoverPosition(const QPointF &pos)
+{
+ if (m_selectionToggle) {
+ m_selectionToggle->setHovered(selectionToggleRect().contains(pos));
+ }
+}
+
+void KItemListWidget::setAlternateBackground(bool enable)
+{
+ if (m_alternateBackground != enable) {
+ m_alternateBackground = enable;
+ alternateBackgroundChanged(enable);
+ update();
+ }
+}
+
+bool KItemListWidget::alternateBackground() const
+{
+ return m_alternateBackground;
+}
+
+void KItemListWidget::setEnabledSelectionToggle(bool enable)
+{
+ if (m_enabledSelectionToggle != enable) {
+ m_enabledSelectionToggle = enable;
+
+ // We want the change to take effect immediately.
+ if (m_enabledSelectionToggle) {
+ if (m_hovered) {
+ initializeSelectionToggle();
+ }
+ } else if (m_selectionToggle) {
+ m_selectionToggle->deleteLater();
+ m_selectionToggle = nullptr;
+ }
+
+ update();
+ }
+}
+
+bool KItemListWidget::enabledSelectionToggle() const
+{
+ return m_enabledSelectionToggle;
+}
+
+void KItemListWidget::setSiblingsInformation(const QBitArray &siblings)
+{
+ const QBitArray previous = m_siblingsInfo;
+ m_siblingsInfo = siblings;
+ siblingsInformationChanged(m_siblingsInfo, previous);
+ update();
+}
+
+QBitArray KItemListWidget::siblingsInformation() const