#include <kmenubar.h>
#include <kmessagebox.h>
#include <konqmimedata.h>
+#include <konq_operations.h>
#include <kpropertiesdialog.h>
#include <kprotocolinfo.h>
#include <ktoggleaction.h>
}
}
+void DolphinMainWindow::createDir()
+{
+ const KUrl& url = m_activeViewContainer->view()->url();
+ KonqOperations::newDir(this, url);
+}
+
void DolphinMainWindow::updateNewMenu()
{
m_newMenu->slotCheckUpToDate();
void DolphinMainWindow::toggleSortOrder()
{
- DolphinView* view = m_activeViewContainer->view();
- const Qt::SortOrder order = (view->sortOrder() == Qt::AscendingOrder) ?
- Qt::DescendingOrder :
- Qt::AscendingOrder;
- view->setSortOrder(order);
+ m_activeViewContainer->view()->toggleSortOrder();
}
void DolphinMainWindow::toggleSortCategorization()
view->setCategorizedSorting(!categorizedSorting);
}
-void DolphinMainWindow::toggleSizeInfo()
-{
- toggleAdditionalInfo("show_size_info", KFileItemDelegate::Size);
-}
-
-void DolphinMainWindow::toggleDateInfo()
-{
- toggleAdditionalInfo("show_date_info", KFileItemDelegate::ModificationTime);
-}
-
-void DolphinMainWindow::togglePermissionsInfo()
-{
- toggleAdditionalInfo("show_permissions_info", KFileItemDelegate::Permissions);
-}
-
-void DolphinMainWindow::toggleOwnerInfo()
-{
- toggleAdditionalInfo("show_owner_info", KFileItemDelegate::Owner);
-}
-
-void DolphinMainWindow::toggleGroupInfo()
-{
- toggleAdditionalInfo("show_group_info", KFileItemDelegate::OwnerAndGroup);
-}
-
-void DolphinMainWindow::toggleMimeInfo()
-{
- toggleAdditionalInfo("show_mime_info", KFileItemDelegate::FriendlyMimeType);
-}
-
void DolphinMainWindow::toggleSplitView()
{
if (m_viewContainer[SecondaryView] == 0) {
connect(menu, SIGNAL(aboutToShow()),
this, SLOT(updateNewMenu()));
+ KAction* newDirAction = DolphinView::createNewDirAction(actionCollection());
+ connect(newDirAction, SIGNAL(triggered()), SLOT(createDir()));
+
KAction* newWindow = actionCollection()->addAction("new_window");
newWindow->setIcon(KIcon("window-new"));
newWindow->setText(i18nc("@action:inmenu File", "New &Window"));
//sortGroup->addAction(sortByRating);
//sortGroup->addAction(sortByTags);
- KToggleAction* sortDescending = actionCollection()->add<KToggleAction>("descending");
- sortDescending->setText(i18nc("@action:inmenu Sort", "Descending"));
+ KAction* sortDescending = DolphinView::createSortDescendingAction(actionCollection());
connect(sortDescending, SIGNAL(triggered()), this, SLOT(toggleSortOrder()));
KToggleAction* showInGroups = actionCollection()->add<KToggleAction>("show_in_groups");
showInGroups->setText(i18nc("@action:inmenu View", "Show in Groups"));
connect(showInGroups, SIGNAL(triggered()), this, SLOT(toggleSortCategorization()));
- KToggleAction* showSizeInfo = actionCollection()->add<KToggleAction>("show_size_info");
- showSizeInfo->setText(i18nc("@action:inmenu Additional information", "Size"));
- connect(showSizeInfo, SIGNAL(triggered()), this, SLOT(toggleSizeInfo()));
-
- KToggleAction* showDateInfo = actionCollection()->add<KToggleAction>("show_date_info");
- showDateInfo->setText(i18nc("@action:inmenu Additional information", "Date"));
- connect(showDateInfo, SIGNAL(triggered()), this, SLOT(toggleDateInfo()));
-
- KToggleAction* showPermissionsInfo = actionCollection()->add<KToggleAction>("show_permissions_info");
- showPermissionsInfo->setText(i18nc("@action:inmenu Additional information", "Permissions"));
- connect(showPermissionsInfo, SIGNAL(triggered()), this, SLOT(togglePermissionsInfo()));
-
- KToggleAction* showOwnerInfo = actionCollection()->add<KToggleAction>("show_owner_info");
- showOwnerInfo->setText(i18nc("@action:inmenu Additional information", "Owner"));
- connect(showOwnerInfo, SIGNAL(triggered()), this, SLOT(toggleOwnerInfo()));
-
- KToggleAction* showGroupInfo = actionCollection()->add<KToggleAction>("show_group_info");
- showGroupInfo->setText(i18nc("@action:inmenu Additional information", "Group"));
- connect(showGroupInfo, SIGNAL(triggered()), this, SLOT(toggleGroupInfo()));
-
- KToggleAction* showMimeInfo = actionCollection()->add<KToggleAction>("show_mime_info");
- showMimeInfo->setText(i18nc("@action:inmenu Additional information", "Type"));
- connect(showMimeInfo, SIGNAL(triggered()), this, SLOT(toggleMimeInfo()));
+ QActionGroup* showInformationActionGroup = DolphinView::createAdditionalInformationActionGroup(actionCollection());
+ connect(showInformationActionGroup, SIGNAL(triggered(QAction*)), this, SLOT(toggleAdditionalInfo(QAction*)));
KToggleAction* showPreview = actionCollection()->add<KToggleAction>("show_preview");
showPreview->setText(i18nc("@action:intoolbar", "Preview"));
}
}
-void DolphinMainWindow::toggleAdditionalInfo(const char* actionName,
- KFileItemDelegate::Information info)
+void DolphinMainWindow::toggleAdditionalInfo(QAction* action)
{
clearStatusBar();
+ const KFileItemDelegate::Information info =
+ static_cast<KFileItemDelegate::Information>(action->data().toInt());
+
DolphinView* view = m_activeViewContainer->view();
KFileItemDelegate::InformationList list = view->additionalInfo();
- const bool show = actionCollection()->action(actionName)->isChecked();
+ const bool show = action->isChecked();
const int index = list.indexOf(info);
const bool containsInfo = (index >= 0);