#include <KMenu>
#include <KInputDialog>
#include <KProtocolInfo>
+#include <kdeversion.h>
+
+#if KDE_IS_VERSION(4, 9, 2)
+#include "dolphinpart_ext.h"
+#endif
#include "views/dolphinview.h"
#include "views/dolphinviewactionhandler.h"
this, SLOT(slotErrorMessage(QString)));
connect(m_view, SIGNAL(itemActivated(KFileItem)),
this, SLOT(slotItemActivated(KFileItem)));
+ connect(m_view, SIGNAL(itemsActivated(KFileItemList)),
+ this, SLOT(slotItemsActivated(KFileItemList)));
connect(m_view, SIGNAL(tabRequested(KUrl)),
this, SLOT(createNewWindow(KUrl)));
connect(m_view, SIGNAL(requestContextMenu(QPoint,KFileItem,KUrl,QList<QAction*>)),
// Create file info and listing filter extensions.
// NOTE: Listing filter needs to be instantiated after the creation of the view.
new DolphinPartFileInfoExtension(this);
+
+#if KDE_IS_VERSION(4, 9, 2)
new DolphinPartListingFilterExtension(this);
KDirLister* lister = m_view->m_model->m_dirLister;
} else {
kWarning() << "NULL KDirLister object! KParts::ListingNotificationExtension will NOT be supported";
}
+#endif
createActions();
m_actionHandler->updateViewActions();
emit m_extension->openUrlRequest(item.targetUrl(), args, browserArgs);
}
+void DolphinPart::slotItemsActivated(const KFileItemList& items)
+{
+ foreach (const KFileItem& item, items) {
+ slotItemActivated(item);
+ }
+}
+
void DolphinPart::createNewWindow(const KUrl& url)
{
// TODO: Check issue N176832 for the missing QAIV signal; task 177399 - maybe this code
return list;
}
-DolphinPartListingFilterExtension::DolphinPartListingFilterExtension (DolphinPart* part)
- : KParts::ListingFilterExtension(part)
- , m_part(part)
-{
-}
-
-KParts::ListingFilterExtension::FilterModes DolphinPartListingFilterExtension::supportedFilterModes() const
-{
- return (KParts::ListingFilterExtension::MimeType |
- KParts::ListingFilterExtension::SubString |
- KParts::ListingFilterExtension::WildCard);
-}
-
-bool DolphinPartListingFilterExtension::supportsMultipleFilters (KParts::ListingFilterExtension::FilterMode mode) const
-{
- if (mode == KParts::ListingFilterExtension::MimeType)
- return true;
-
- return false;
-}
-
-QVariant DolphinPartListingFilterExtension::filter (KParts::ListingFilterExtension::FilterMode mode) const
-{
- QVariant result;
-
- switch (mode) {
- case KParts::ListingFilterExtension::MimeType:
- result = m_part->view()->mimeTypeFilters();
- break;
- case KParts::ListingFilterExtension::SubString:
- case KParts::ListingFilterExtension::WildCard:
- result = m_part->view()->nameFilter();
- break;
- default:
- break;
- }
-
- return result;
-}
-
-void DolphinPartListingFilterExtension::setFilter (KParts::ListingFilterExtension::FilterMode mode, const QVariant& filter)
-{
- switch (mode) {
- case KParts::ListingFilterExtension::MimeType:
- m_part->view()->setMimeTypeFilters(filter.toStringList());
- break;
- case KParts::ListingFilterExtension::SubString:
- case KParts::ListingFilterExtension::WildCard:
- m_part->view()->setNameFilter(filter.toString());
- break;
- default:
- break;
- }
-}
-
-////
-
-DolphinPartListingNotificationExtension::DolphinPartListingNotificationExtension(DolphinPart* part)
- :KParts::ListingNotificationExtension(part)
-{
-}
-
-KParts::ListingNotificationExtension::NotificationEventTypes DolphinPartListingNotificationExtension::supportedNotificationEventTypes() const
-{
- return (KParts::ListingNotificationExtension::ItemsAdded |
- KParts::ListingNotificationExtension::ItemsDeleted);
-}
-
-void DolphinPartListingNotificationExtension::slotNewItems(const KFileItemList& items)
-{
- emit listingEvent(KParts::ListingNotificationExtension::ItemsAdded, items);
-}
-
-void DolphinPartListingNotificationExtension::slotItemsDeleted(const KFileItemList& items)
-{
- emit listingEvent(KParts::ListingNotificationExtension::ItemsDeleted, items);
-}
-
#include "dolphinpart.moc"