- m_sortOrder = new QComboBox(sortingBox);
- m_sortOrder->addItem(i18n("Ascending"));
- m_sortOrder->addItem(i18n("Descending"));
- const int sortOrderIdx = (m_viewProps->sortOrder() == Qt::Ascending) ? 0 : 1;
- m_sortOrder->setCurrentIndex(sortOrderIdx);
+ QMenu* sortingFlagsMenu = new QMenu(sortingBox);
+ m_descendingAction = sortingFlagsMenu->addAction(i18n("Descending"));
+ m_descendingAction->setCheckable(true);
+ m_descendingAction->setChecked(m_viewProps->sortOrder() == Qt::Descending);
+ m_showInGroupsAction = sortingFlagsMenu->addAction(i18n("Show in Groups"));
+ m_showInGroupsAction->setCheckable(true);
+ m_showInGroupsAction->setChecked(m_viewProps->categorizedSorting());
+
+ QPushButton* sortFlagsButton = new QPushButton(KIcon("configure"), QString(), sortingBox);
+ sortFlagsButton->setMenu(sortingFlagsMenu);