]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphinpart.cpp
Respect Shift- and Control-key for the rubberband selection
[dolphin.git] / src / dolphinpart.cpp
index a039beb1fcdf4a9d4161493a54d6ef6af4e9a482..df1d8b7383eff12bb1da388db92471525fb8db02 100644 (file)
 
 #include "dolphinpart.h"
 
-#include <kfileitemlistproperties.h>
+#include <KFileItemListProperties>
 #include <konq_operations.h>
 
-#include <kaboutdata.h>
-#include <kactioncollection.h>
-#include <kconfiggroup.h>
-#include <kdebug.h>
-#include <kglobalsettings.h>
-#include <kiconloader.h>
-#include <klocale.h>
-#include <kmessagebox.h>
-#include <kpluginfactory.h>
-#include <ktoggleaction.h>
-#include <kio/netaccess.h>
-#include <ktoolinvocation.h>
+#include <KAboutData>
+#include <KActionCollection>
+#include <KConfigGroup>
+#include <KDebug>
+#include <KGlobalSettings>
+#include <KIconLoader>
+#include <KLocale>
+#include <KMessageBox>
+#include <KPluginFactory>
+#include <KRun>
+#include <KToggleAction>
+#include <KIO/NetAccess>
+#include <KToolInvocation>
 #include <kauthorized.h>
-#include <knewfilemenu.h>
-#include <kmenu.h>
-#include <kinputdialog.h>
-#include <kprotocolinfo.h>
+#include <KNewFileMenu>
+#include <KMenu>
+#include <KInputDialog>
+#include <KProtocolInfo>
 
 #include "settings/dolphinsettings.h"
 #include "views/dolphinview.h"
 #include "views/dolphinviewactionhandler.h"
-#include "views/dolphinsortfilterproxymodel.h"
-#include "views/dolphinmodel.h"
 #include "views/dolphinnewfilemenuobserver.h"
 #include "views/dolphinremoteencoding.h"
 #include "views/dolphindirlister.h"
@@ -95,15 +94,15 @@ DolphinPart::DolphinPart(QWidget* parentWidget, QObject* parent, const QVariantL
             this, SLOT(slotSelectionChanged(KFileItemList)));
     connect(m_view, SIGNAL(requestItemInfo(KFileItem)),
             this, SLOT(slotRequestItemInfo(KFileItem)));
-    connect(m_view, SIGNAL(modeChanged()),
+    connect(m_view, SIGNAL(modeChanged(DolphinView::Mode,DolphinView::Mode)),
             this, SIGNAL(viewModeChanged())); // relay signal
-    connect(m_view, SIGNAL(redirection(KUrl, KUrl)),
-            this, SLOT(slotRedirection(KUrl, KUrl)));
+    connect(m_view, SIGNAL(redirection(KUrl,KUrl)),
+            this, SLOT(slotRedirection(KUrl,KUrl)));
 
     // Watch for changes that should result in updates to the
     // status bar text.
     connect(m_view, SIGNAL(itemCountChanged()), this, SLOT(updateStatusBar()));
-    connect(m_view,  SIGNAL(selectionChanged(const KFileItemList)), this, SLOT(updateStatusBar()));
+    connect(m_view,  SIGNAL(selectionChanged(KFileItemList)), this, SLOT(updateStatusBar()));
 
     m_actionHandler = new DolphinViewActionHandler(actionCollection(), this);
     m_actionHandler->setCurrentView(m_view);
@@ -193,6 +192,12 @@ void DolphinPart::createActions()
                    goActionGroup);
 
     // Tools menu
+    KAction* findFile = actionCollection()->addAction("find_file");
+    findFile->setText(i18nc("@action:inmenu Tools", "Find File..."));
+    findFile->setShortcut(Qt::CTRL | Qt::Key_F);
+    findFile->setIcon(KIcon("edit-find"));
+    connect(findFile, SIGNAL(triggered()), this, SLOT(slotFindFile()));
+
     if (KAuthorized::authorizeKAction("shell_access")) {
         KAction* action = actionCollection()->addAction("open_terminal");
         action->setIcon(KIcon("utilities-terminal"));
@@ -200,7 +205,6 @@ void DolphinPart::createActions()
         connect(action, SIGNAL(triggered()), SLOT(slotOpenTerminal()));
         action->setShortcut(Qt::Key_F4);
     }
-
 }
 
 void DolphinPart::createGoAction(const char* name, const char* iconName,
@@ -516,11 +520,16 @@ void DolphinPart::slotOpenTerminal()
     KToolInvocation::invokeTerminal(QString(), dir);
 }
 
+void DolphinPart::slotFindFile()
+{
+    KRun::run("kfind", url(), widget());
+}
+
 void DolphinPart::updateNewMenu()
 {
     // As requested by KNewFileMenu :
     m_newFileMenu->checkUpToDate();
-    m_newFileMenu->setViewShowsHiddenFiles(m_view->showHiddenFiles());
+    m_newFileMenu->setViewShowsHiddenFiles(m_view->hiddenFilesShown());
     // And set the files that the menu apply on :
     m_newFileMenu->setPopupFiles(url());
 }
@@ -537,7 +546,7 @@ void DolphinPart::updateProgress(int percent)
 
 void DolphinPart::createDirectory()
 {
-    m_newFileMenu->setViewShowsHiddenFiles(m_view->showHiddenFiles());
+    m_newFileMenu->setViewShowsHiddenFiles(m_view->hiddenFilesShown());
     m_newFileMenu->setPopupFiles(url());
     m_newFileMenu->createDirectory();
 }