diff --git a/src/dolphinpart.cpp b/src/dolphinpart.cpp index 66097358f0..9081731933 100644 --- a/src/dolphinpart.cpp +++ b/src/dolphinpart.cpp @@ -616,89 +616,4 @@ bool DolphinPart::eventFilter(QObject* obj, QEvent* event) return KParts::ReadOnlyPart::eventFilter(obj, event); } -//// - -void DolphinPartBrowserExtension::restoreState(QDataStream &stream) -{ - KParts::BrowserExtension::restoreState(stream); - m_part->view()->restoreState(stream); -} - -void DolphinPartBrowserExtension::saveState(QDataStream &stream) -{ - KParts::BrowserExtension::saveState(stream); - m_part->view()->saveState(stream); -} - -void DolphinPartBrowserExtension::cut() -{ - m_part->view()->cutSelectedItems(); -} - -void DolphinPartBrowserExtension::copy() -{ - m_part->view()->copySelectedItems(); -} - -void DolphinPartBrowserExtension::paste() -{ - m_part->view()->paste(); -} - -void DolphinPartBrowserExtension::pasteTo(const KUrl&) -{ - m_part->view()->pasteIntoFolder(); -} - -void DolphinPartBrowserExtension::reparseConfiguration() -{ - m_part->view()->readSettings(); -} - -//// - -DolphinPartFileInfoExtension::DolphinPartFileInfoExtension(DolphinPart* part) - : KParts::FileInfoExtension(part) -{ -} - -DolphinPart* DolphinPartFileInfoExtension::part() const -{ - return static_cast(parent()); -} - -bool DolphinPartFileInfoExtension::hasSelection() const -{ - return part()->view()->selectedItemsCount() > 0; -} - -KParts::FileInfoExtension::QueryModes DolphinPartFileInfoExtension::supportedQueryModes() const -{ - return (KParts::FileInfoExtension::AllItems | KParts::FileInfoExtension::SelectedItems); -} - -KFileItemList DolphinPartFileInfoExtension::queryFor(KParts::FileInfoExtension::QueryMode mode) const -{ - KFileItemList list; - - if (mode == KParts::FileInfoExtension::None) - return list; - - if (!(supportedQueryModes() & mode)) - return list; - - switch (mode) { - case KParts::FileInfoExtension::SelectedItems: - if (hasSelection()) - return part()->view()->selectedItems(); - break; - case KParts::FileInfoExtension::AllItems: - return part()->view()->items(); - default: - break; - } - - return list; -} - #include "dolphinpart.moc" diff --git a/src/dolphinpart.h b/src/dolphinpart.h index c70bc5a8df..7146b46af3 100644 --- a/src/dolphinpart.h +++ b/src/dolphinpart.h @@ -21,8 +21,6 @@ #define DOLPHINPART_H #include -#include -#include #include @@ -252,41 +250,4 @@ private: Q_DISABLE_COPY(DolphinPart) }; -class DolphinPartBrowserExtension : public KParts::BrowserExtension -{ - Q_OBJECT -public: - DolphinPartBrowserExtension( DolphinPart* part ) - : KParts::BrowserExtension( part ), m_part(part) {} - - virtual void restoreState(QDataStream &stream); - virtual void saveState(QDataStream &stream); - -public Q_SLOTS: - void cut(); - void copy(); - void paste(); - void pasteTo(const KUrl&); - void reparseConfiguration(); - -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 */ diff --git a/src/dolphinpart_ext.cpp b/src/dolphinpart_ext.cpp index e98c0648ed..fb7a4d2eaf 100644 --- a/src/dolphinpart_ext.cpp +++ b/src/dolphinpart_ext.cpp @@ -26,6 +26,92 @@ #include + +DolphinPartBrowserExtension::DolphinPartBrowserExtension(DolphinPart* part) + :KParts::BrowserExtension( part ) + ,m_part(part) +{ + +} + +void DolphinPartBrowserExtension::restoreState(QDataStream &stream) +{ + KParts::BrowserExtension::restoreState(stream); + m_part->view()->restoreState(stream); +} + +void DolphinPartBrowserExtension::saveState(QDataStream &stream) +{ + KParts::BrowserExtension::saveState(stream); + m_part->view()->saveState(stream); +} + +void DolphinPartBrowserExtension::cut() +{ + m_part->view()->cutSelectedItems(); +} + +void DolphinPartBrowserExtension::copy() +{ + m_part->view()->copySelectedItems(); +} + +void DolphinPartBrowserExtension::paste() +{ + m_part->view()->paste(); +} + +void DolphinPartBrowserExtension::pasteTo(const KUrl&) +{ + m_part->view()->pasteIntoFolder(); +} + +void DolphinPartBrowserExtension::reparseConfiguration() +{ + m_part->view()->readSettings(); +} + + +DolphinPartFileInfoExtension::DolphinPartFileInfoExtension(DolphinPart* part) + :KParts::FileInfoExtension(part) + ,m_part(part) +{ +} + +bool DolphinPartFileInfoExtension::hasSelection() const +{ + return m_part->view()->selectedItemsCount() > 0; +} + +KParts::FileInfoExtension::QueryModes DolphinPartFileInfoExtension::supportedQueryModes() const +{ + return (KParts::FileInfoExtension::AllItems | KParts::FileInfoExtension::SelectedItems); +} + +KFileItemList DolphinPartFileInfoExtension::queryFor(KParts::FileInfoExtension::QueryMode mode) const +{ + KFileItemList list; + + if (mode == KParts::FileInfoExtension::None) + return list; + + if (!(supportedQueryModes() & mode)) + return list; + + switch (mode) { + case KParts::FileInfoExtension::SelectedItems: + if (hasSelection()) + return m_part->view()->selectedItems(); + break; + case KParts::FileInfoExtension::AllItems: + return m_part->view()->items(); + default: + break; + } + + return list; +} + DolphinPartListingFilterExtension::DolphinPartListingFilterExtension(DolphinPart* part) : KParts::ListingFilterExtension(part) , m_part(part) diff --git a/src/dolphinpart_ext.h b/src/dolphinpart_ext.h index 423e79efed..c05962cd97 100644 --- a/src/dolphinpart_ext.h +++ b/src/dolphinpart_ext.h @@ -20,11 +20,47 @@ #ifndef DOLPHINPART_EXT_H #define DOLPHINPART_EXT_H - +#include +#include #include class DolphinPart; +class DolphinPartBrowserExtension : public KParts::BrowserExtension +{ + Q_OBJECT +public: + DolphinPartBrowserExtension( DolphinPart* part ); + virtual void restoreState(QDataStream &stream); + virtual void saveState(QDataStream &stream); + +public Q_SLOTS: + void cut(); + void copy(); + void paste(); + void pasteTo(const KUrl&); + void reparseConfiguration(); + +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; + +private: + DolphinPart* m_part; +}; + class DolphinPartListingFilterExtension : public KParts::ListingFilterExtension { Q_OBJECT