+void DolphinMainWindow::updateSplitAction()
+{
+ QAction* splitAction = actionCollection()->action("split_view");
+ if (m_viewContainer[SecondaryView] != 0) {
+ if (m_activeViewContainer == m_viewContainer[PrimaryView]) {
+ splitAction->setText(i18nc("@action:intoolbar Close right view", "Close"));
+ splitAction->setIcon(KIcon("fileview-close-right"));
+ } else {
+ splitAction->setText(i18nc("@action:intoolbar Close left view", "Close"));
+ splitAction->setIcon(KIcon("fileview-close-left"));
+ }
+ } else {
+ splitAction->setText(i18nc("@action:intoolbar Split view", "Split"));
+ splitAction->setIcon(KIcon("fileview-split"));
+ }
+}
+
+void DolphinMainWindow::toggleAdditionalInfo(const char* actionName,
+ KFileItemDelegate::Information info)
+{
+ clearStatusBar();
+
+ DolphinView* view = m_activeViewContainer->view();
+ KFileItemDelegate::InformationList list = view->additionalInfo();
+
+ const bool show = actionCollection()->action(actionName)->isChecked();
+
+ const int index = list.indexOf(info);
+ const bool containsInfo = (index >= 0);
+ if (show && !containsInfo) {
+ list.append(info);
+ view->setAdditionalInfo(list);
+ } else if (!show && containsInfo) {
+ list.removeAt(index);
+ view->setAdditionalInfo(list);
+ Q_ASSERT(list.indexOf(info) < 0);
+ }
+}
+