X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/c8072005fada01d772595ec64adca449134f421e..d6488887ecf69d7f192b94de8dce34fae0b7eb76:/src/dolphinpart.h diff --git a/src/dolphinpart.h b/src/dolphinpart.h index b0def14f4..2a512eddb 100644 --- a/src/dolphinpart.h +++ b/src/dolphinpart.h @@ -21,6 +21,9 @@ #define DOLPHINPART_H #include +#include +class KAction; +class KFileItemList; class KFileItem; class DolphinPartBrowserExtension; class DolphinSortFilterProxyModel; @@ -29,11 +32,14 @@ class KDirLister; class DolphinView; class QLineEdit; class KAboutData; -namespace KParts { class ReadOnlyPart; } class DolphinPart : public KParts::ReadOnlyPart { Q_OBJECT + // Used by konqueror. Technically it means "we want undo enabled if + // there are things in the undo history and the current part is a dolphin part". + // Even though it's konqueror doing the undo... + Q_PROPERTY( bool supportsUndo READ supportsUndo ) public: explicit DolphinPart(QWidget* parentWidget, QObject* parent, const QStringList& args); @@ -43,7 +49,15 @@ public: virtual bool openUrl(const KUrl& url); + /// see the supportsUndo property + bool supportsUndo() const { return true; } + + DolphinView* view() { return m_view; } + protected: + /** + * We reimplement openUrl so no need to implement openFile. + */ virtual bool openFile() { return true; } private Q_SLOTS: @@ -67,6 +81,43 @@ private Q_SLOTS: * @url URL which contains \a item. */ void slotOpenContextMenu(const KFileItem& item, const KUrl& url); + /** + * Emitted when the user requested a change of view mode + */ + void slotViewModeActionTriggered(QAction*); + + /** + * Asks the host to open the URL \a url if the current view has + * a different URL. + */ + void slotUrlChanged(const KUrl& url); + + /** + * Updates the state of the 'Edit' menu actions and emits + * the signal selectionChanged(). + */ + void slotSelectionChanged(const KFileItemList& selection); + + /** + * Same as in DolphinMainWindow: updates the view menu actions + */ + void updateViewActions(); + + /** + * Updates the text of the paste action dependent from + * the number of items which are in the clipboard. + */ + void updatePasteAction(); + + /** + * Connected to the "move_to_trash" action; adds "shift means del" handling. + */ + void slotTrashActivated(Qt::MouseButtons, Qt::KeyboardModifiers); + + void slotNewDir(); + +private: + void createActions(); private: DolphinView* m_view; @@ -77,6 +128,20 @@ private: Q_DISABLE_COPY(DolphinPart) }; +class DolphinPartBrowserExtension : public KParts::BrowserExtension +{ + Q_OBJECT +public: + DolphinPartBrowserExtension( DolphinPart* part ) + : KParts::BrowserExtension( part ), m_part(part) {} -#endif /* DOLPHINPART_H */ +public Q_SLOTS: + void cut(); + void copy(); + void paste(); +private: + DolphinPart* m_part; +}; + +#endif /* DOLPHINPART_H */