X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/09e1cc4d7726b649710fe5ce49741ae736ce4d06..a4ef4bbfdebad708e4b3c772c1ce3e236a4da145:/src/dolphinpart.h diff --git a/src/dolphinpart.h b/src/dolphinpart.h index dd5fe1e37..c70bc5a8d 100644 --- a/src/dolphinpart.h +++ b/src/dolphinpart.h @@ -22,10 +22,11 @@ #include #include +#include #include -class KNewFileMenu; +class DolphinNewFileMenu; class DolphinViewActionHandler; class QActionGroup; class KAction; @@ -38,6 +39,7 @@ class DolphinModel; class KDirLister; class DolphinView; class KAboutData; +class DolphinRemoveAction; class DolphinPart : public KParts::ReadOnlyPart { @@ -116,8 +118,6 @@ Q_SIGNALS: void aboutToOpenURL(); private Q_SLOTS: - void slotCompleted(const KUrl& url); - void slotCanceled(const KUrl& url); void slotMessage(const QString& msg); void slotErrorMessage(const QString& msg); /** @@ -128,20 +128,26 @@ private Q_SLOTS: /** * Handles clicking on an item */ - void slotItemTriggered(const KFileItem& item); + void slotItemActivated(const KFileItem& item); + /** + * Handles activation of multiple items + */ + void slotItemsActivated(const KFileItemList& items); /** * Creates a new window showing the content of \a url. */ void createNewWindow(const KUrl& url); /** * Opens the context menu on the current mouse position. + * @pos Position in screen coordinates. * @item File item context. If item is null, the context menu * should be applied to \a url. * @url URL which contains \a item. * @customActions Actions that should be added to the context menu, * if the file item is null. */ - void slotOpenContextMenu(const KFileItem& item, + void slotOpenContextMenu(const QPoint& pos, + const KFileItem& item, const KUrl& url, const QList& customActions); @@ -151,7 +157,7 @@ private Q_SLOTS: * Testcase 1: fish://localhost * Testcase 2: showing a directory that is being renamed by another window (#180156) */ - void slotRedirection(const KUrl& oldUrl, const KUrl& newUrl); + void slotDirectoryRedirection(const KUrl& oldUrl, const KUrl& newUrl); /** * Updates the state of the 'Edit' menu actions and emits @@ -192,6 +198,11 @@ private Q_SLOTS: */ void slotOpenTerminal(); + /** + * Open KFind with the current path. + */ + void slotFindFile(); + /** * Updates the 'Create New...' sub menu, just before it's shown. */ @@ -217,6 +228,8 @@ private Q_SLOTS: void setFilesToSelect(const KUrl::List& files); KUrl::List filesToSelect() const { return KUrl::List(); } // silence moc + virtual bool eventFilter(QObject*, QEvent*); + private: void createActions(); void createGoAction(const char* name, const char* iconName, @@ -224,20 +237,18 @@ private: QActionGroup* actionGroup); void openSelectionDialog(const QString& title, const QString& text, - QItemSelectionModel::SelectionFlags command); - - QItemSelection childrenMatchingPattern(const QModelIndex& parent, const QRegExp& patternRegExp); + bool selectItems); private: DolphinView* m_view; DolphinViewActionHandler* m_actionHandler; DolphinRemoteEncoding* m_remoteEncoding; - KDirLister* m_dirLister; - DolphinModel* m_dolphinModel; - DolphinSortFilterProxyModel* m_proxyModel; DolphinPartBrowserExtension* m_extension; - KNewFileMenu* m_newFileMenu; + DolphinNewFileMenu* m_newFileMenu; + KAction* m_findFileAction; + KAction* m_openTerminalAction; QString m_nameFilter; + DolphinRemoveAction* m_removeAction; Q_DISABLE_COPY(DolphinPart) }; @@ -262,4 +273,20 @@ private: DolphinPart* m_part; }; + +class DolphinPartFileInfoExtension : public KParts::FileInfoExtension +{ + Q_OBJECT + +public: + DolphinPartFileInfoExtension(DolphinPart* part); + + virtual QueryModes supportedQueryModes() const; + virtual bool hasSelection() const; + + virtual KFileItemList queryFor(QueryMode mode) const; +protected: + DolphinPart* part() const; +}; + #endif /* DOLPHINPART_H */