]>
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"
25 DolphinPartBrowserExtension::DolphinPartBrowserExtension(DolphinPart
* part
)
26 :KParts::BrowserExtension( part
)
32 void DolphinPartBrowserExtension::restoreState(QDataStream
&stream
)
34 KParts::BrowserExtension::restoreState(stream
);
35 m_part
->view()->restoreState(stream
);
38 void DolphinPartBrowserExtension::saveState(QDataStream
&stream
)
40 KParts::BrowserExtension::saveState(stream
);
41 m_part
->view()->saveState(stream
);
44 void DolphinPartBrowserExtension::cut()
46 m_part
->view()->cutSelectedItemsToClipboard();
49 void DolphinPartBrowserExtension::copy()
51 m_part
->view()->copySelectedItemsToClipboard();
54 void DolphinPartBrowserExtension::paste()
56 m_part
->view()->paste();
59 void DolphinPartBrowserExtension::pasteTo(const QUrl
&)
61 m_part
->view()->pasteIntoFolder();
64 void DolphinPartBrowserExtension::reparseConfiguration()
66 m_part
->view()->readSettings();
70 DolphinPartFileInfoExtension::DolphinPartFileInfoExtension(DolphinPart
* part
)
71 :KParts::FileInfoExtension(part
)
76 bool DolphinPartFileInfoExtension::hasSelection() const
78 return m_part
->view()->selectedItemsCount() > 0;
81 KParts::FileInfoExtension::QueryModes
DolphinPartFileInfoExtension::supportedQueryModes() const
83 return (KParts::FileInfoExtension::AllItems
| KParts::FileInfoExtension::SelectedItems
);
86 KFileItemList
DolphinPartFileInfoExtension::queryFor(KParts::FileInfoExtension::QueryMode mode
) const
90 if (mode
== KParts::FileInfoExtension::None
)
93 if (!(supportedQueryModes() & mode
))
97 case KParts::FileInfoExtension::SelectedItems
:
99 return m_part
->view()->selectedItems();
101 case KParts::FileInfoExtension::AllItems
:
102 return m_part
->view()->items();
110 DolphinPartListingFilterExtension::DolphinPartListingFilterExtension(DolphinPart
* part
)
111 : KParts::ListingFilterExtension(part
)
116 KParts::ListingFilterExtension::FilterModes
DolphinPartListingFilterExtension::supportedFilterModes() const
118 return (KParts::ListingFilterExtension::MimeType
|
119 KParts::ListingFilterExtension::SubString
|
120 KParts::ListingFilterExtension::WildCard
);
123 bool DolphinPartListingFilterExtension::supportsMultipleFilters(KParts::ListingFilterExtension::FilterMode mode
) const
125 if (mode
== KParts::ListingFilterExtension::MimeType
)
131 QVariant
DolphinPartListingFilterExtension::filter(KParts::ListingFilterExtension::FilterMode mode
) const
136 case KParts::ListingFilterExtension::MimeType
:
137 result
= m_part
->view()->mimeTypeFilters();
139 case KParts::ListingFilterExtension::SubString
:
140 case KParts::ListingFilterExtension::WildCard
:
141 result
= m_part
->view()->nameFilter();
150 void DolphinPartListingFilterExtension::setFilter(KParts::ListingFilterExtension::FilterMode mode
, const QVariant
& filter
)
153 case KParts::ListingFilterExtension::MimeType
:
154 m_part
->view()->setMimeTypeFilters(filter
.toStringList());
156 case KParts::ListingFilterExtension::SubString
:
157 case KParts::ListingFilterExtension::WildCard
:
158 m_part
->view()->setNameFilter(filter
.toString());
167 DolphinPartListingNotificationExtension::DolphinPartListingNotificationExtension(DolphinPart
* part
)
168 : KParts::ListingNotificationExtension(part
)
172 KParts::ListingNotificationExtension::NotificationEventTypes
DolphinPartListingNotificationExtension::supportedNotificationEventTypes() const
174 return (KParts::ListingNotificationExtension::ItemsAdded
|
175 KParts::ListingNotificationExtension::ItemsDeleted
);
178 void DolphinPartListingNotificationExtension::slotNewItems(const KFileItemList
& items
)
180 emit
listingEvent(KParts::ListingNotificationExtension::ItemsAdded
, items
);
183 void DolphinPartListingNotificationExtension::slotItemsDeleted(const KFileItemList
& items
)
185 emit
listingEvent(KParts::ListingNotificationExtension::ItemsDeleted
, items
);