]>
cloud.milkyroute.net Git - dolphin.git/blob - src/dolphinpart_ext.cpp
1 /* This file is part of the KDE project
2 * Copyright (c) 2012 Dawit Alemayehu <adawit@kde.org>
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
14 * You should have received a copy of the GNU Library General Public License
15 * along with this library; see the file COPYING.LIB. If not, write to
16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
20 #include "dolphinpart_ext.h"
22 #include "dolphinpart.h"
23 #include "views/dolphinview.h"
27 #include <KFileItemList>
30 DolphinPartBrowserExtension::DolphinPartBrowserExtension(DolphinPart
* part
)
31 :KParts::BrowserExtension( part
)
37 void DolphinPartBrowserExtension::restoreState(QDataStream
&stream
)
39 KParts::BrowserExtension::restoreState(stream
);
40 m_part
->view()->restoreState(stream
);
43 void DolphinPartBrowserExtension::saveState(QDataStream
&stream
)
45 KParts::BrowserExtension::saveState(stream
);
46 m_part
->view()->saveState(stream
);
49 void DolphinPartBrowserExtension::cut()
51 m_part
->view()->cutSelectedItems();
54 void DolphinPartBrowserExtension::copy()
56 m_part
->view()->copySelectedItems();
59 void DolphinPartBrowserExtension::paste()
61 m_part
->view()->paste();
64 void DolphinPartBrowserExtension::pasteTo(const QUrl
&)
66 m_part
->view()->pasteIntoFolder();
69 void DolphinPartBrowserExtension::reparseConfiguration()
71 m_part
->view()->readSettings();
75 DolphinPartFileInfoExtension::DolphinPartFileInfoExtension(DolphinPart
* part
)
76 :KParts::FileInfoExtension(part
)
81 bool DolphinPartFileInfoExtension::hasSelection() const
83 return m_part
->view()->selectedItemsCount() > 0;
86 KParts::FileInfoExtension::QueryModes
DolphinPartFileInfoExtension::supportedQueryModes() const
88 return (KParts::FileInfoExtension::AllItems
| KParts::FileInfoExtension::SelectedItems
);
91 KFileItemList
DolphinPartFileInfoExtension::queryFor(KParts::FileInfoExtension::QueryMode mode
) const
95 if (mode
== KParts::FileInfoExtension::None
)
98 if (!(supportedQueryModes() & mode
))
102 case KParts::FileInfoExtension::SelectedItems
:
104 return m_part
->view()->selectedItems();
106 case KParts::FileInfoExtension::AllItems
:
107 return m_part
->view()->items();
115 DolphinPartListingFilterExtension::DolphinPartListingFilterExtension(DolphinPart
* part
)
116 : KParts::ListingFilterExtension(part
)
121 KParts::ListingFilterExtension::FilterModes
DolphinPartListingFilterExtension::supportedFilterModes() const
123 return (KParts::ListingFilterExtension::MimeType
|
124 KParts::ListingFilterExtension::SubString
|
125 KParts::ListingFilterExtension::WildCard
);
128 bool DolphinPartListingFilterExtension::supportsMultipleFilters(KParts::ListingFilterExtension::FilterMode mode
) const
130 if (mode
== KParts::ListingFilterExtension::MimeType
)
136 QVariant
DolphinPartListingFilterExtension::filter(KParts::ListingFilterExtension::FilterMode mode
) const
141 case KParts::ListingFilterExtension::MimeType
:
142 result
= m_part
->view()->mimeTypeFilters();
144 case KParts::ListingFilterExtension::SubString
:
145 case KParts::ListingFilterExtension::WildCard
:
146 result
= m_part
->view()->nameFilter();
155 void DolphinPartListingFilterExtension::setFilter(KParts::ListingFilterExtension::FilterMode mode
, const QVariant
& filter
)
158 case KParts::ListingFilterExtension::MimeType
:
159 m_part
->view()->setMimeTypeFilters(filter
.toStringList());
161 case KParts::ListingFilterExtension::SubString
:
162 case KParts::ListingFilterExtension::WildCard
:
163 m_part
->view()->setNameFilter(filter
.toString());
172 DolphinPartListingNotificationExtension::DolphinPartListingNotificationExtension(DolphinPart
* part
)
173 : KParts::ListingNotificationExtension(part
)
177 KParts::ListingNotificationExtension::NotificationEventTypes
DolphinPartListingNotificationExtension::supportedNotificationEventTypes() const
179 return (KParts::ListingNotificationExtension::ItemsAdded
|
180 KParts::ListingNotificationExtension::ItemsDeleted
);
183 void DolphinPartListingNotificationExtension::slotNewItems(const KFileItemList
& items
)
185 emit
listingEvent(KParts::ListingNotificationExtension::ItemsAdded
, items
);
188 void DolphinPartListingNotificationExtension::slotItemsDeleted(const KFileItemList
& items
)
190 emit
listingEvent(KParts::ListingNotificationExtension::ItemsDeleted
, items
);