X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/41f7f4e4e89b97b5c7f31452774c37ce953dd125..edced8460b:/src/views/dolphinview.h diff --git a/src/views/dolphinview.h b/src/views/dolphinview.h index a4da92f2d..1d0ebe0fe 100644 --- a/src/views/dolphinview.h +++ b/src/views/dolphinview.h @@ -1,22 +1,9 @@ -/*************************************************************************** - * Copyright (C) 2006-2009 by Peter Penz * - * Copyright (C) 2006 by Gregor KaliÅ¡nik * - * * - * This program is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the * - * Free Software Foundation, Inc., * - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * - ***************************************************************************/ +/* + * SPDX-FileCopyrightText: 2006-2009 Peter Penz + * SPDX-FileCopyrightText: 2006 Gregor KaliÅ¡nik + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ #ifndef DOLPHINVIEW_H #define DOLPHINVIEW_H @@ -46,7 +33,7 @@ class ToolTipManager; class VersionControlObserver; class ViewProperties; class QGraphicsSceneDragDropEvent; -class QRegExp; +class QRegularExpression; /** * @short Represents a view for the directory content. @@ -183,10 +170,16 @@ public: void markUrlAsCurrent(const QUrl& url); /** - * All items that match to the pattern \a pattern will get selected - * if \a enabled is true and deselected if \a enabled is false. + * All items that match the regular expression \a regexp will get selected + * if \a enabled is true and deselected if \a enabled is false. + * + * Note that to match the whole string the pattern should be anchored: + * - you can anchor the pattern with QRegularExpression::anchoredPattern() + * - if you use QRegularExpresssion::wildcardToRegularExpression(), don't use + * QRegularExpression::anchoredPattern() as the former already returns an + * anchored pattern */ - void selectItems(const QRegExp& pattern, bool enabled); + void selectItems(const QRegularExpression ®exp, bool enabled); /** * Sets the zoom level to \a level. It is assured that the used @@ -196,6 +189,11 @@ public: void setZoomLevel(int level); int zoomLevel() const; + /** + * Resets the view's icon size to the default value + */ + void resetZoomLevel(); + void setSortRole(const QByteArray& role); QByteArray sortRole() const; @@ -307,6 +305,11 @@ public: */ static QUrl openItemAsFolderUrl(const KFileItem& item, const bool browseThroughArchives = true); + /** + * Hides tooltip displayed over element. + */ + void hideToolTip(const ToolTipManager::HideBehavior behavior = ToolTipManager::HideBehavior::Later); + public slots: /** * Changes the directory to \a url. If the current directory is equal to @@ -349,10 +352,20 @@ public slots: * Copies all selected items to the clipboard and marks * the items as cut. */ - void cutSelectedItems(); + void cutSelectedItemsToClipboard(); /** Copies all selected items to the clipboard. */ - void copySelectedItems(); + void copySelectedItemsToClipboard(); + + /** + * Copies all selected items to @p destinationUrl. + */ + void copySelectedItems(const KFileItemList &selection, const QUrl &destinationUrl); + + /** + * Moves all selected items to @p destinationUrl. + */ + void moveSelectedItems(const KFileItemList &selection, const QUrl &destinationUrl); /** Pastes the clipboard data to this view. */ void paste(); @@ -364,6 +377,17 @@ public slots: */ void pasteIntoFolder(); + /** + * Copies the path of the first selected KFileItem into Clipboard. + */ + void copyPathToClipboard(); + + /** + * Creates duplicates of selected items, appending "copy" + * to the end. + */ + void duplicateSelectedItems(); + /** * Handles a drop of @p dropEvent onto widget @p dropWidget and destination @p destUrl */ @@ -371,6 +395,12 @@ public slots: void stopLoading(); + /** + * Applies the state that has been restored by restoreViewState() + * to the view. + */ + void updateViewState(); + /** Activates the view if the item list container gets focus. */ bool eventFilter(QObject* watched, QEvent* event) override; @@ -552,6 +582,8 @@ signals: */ void urlActivated(const QUrl& url); + void goUpRequested(); + protected: /** Changes the zoom level if Control is pressed during a wheel event. */ void wheelEvent(QWheelEvent* event) override; @@ -580,6 +612,10 @@ private slots: void slotMouseButtonPressed(int itemIndex, Qt::MouseButtons buttons); void slotRenameDialogRenamingFinished(const QList& urls); void slotSelectedItemTextPressed(int index); + void slotCopyingDone(KIO::Job *, const QUrl &, const QUrl &to); + void slotIncreaseZoom(); + void slotDecreaseZoom(); + void slotSwipeUp(); /* * Is called when new items get pasted or dropped. @@ -588,7 +624,7 @@ private slots: /* * Is called after all pasted or dropped items have been copied to destination. */ - void slotPasteJobResult(KJob *job); + void slotJobResult(KJob *job); /** * Emits the signal \a selectionChanged() with a small delay. This is @@ -692,12 +728,6 @@ private slots: */ void slotDirectoryRedirection(const QUrl& oldUrl, const QUrl& newUrl); - /** - * Applies the state that has been restored by restoreViewState() - * to the view. - */ - void updateViewState(); - /** * Calculates the number of currently shown files into * \a fileCount and the number of folders into \a folderCount. @@ -732,11 +762,6 @@ private: */ void applyModeToView(); - /** - * Hides tooltip displayed over element. - */ - void hideToolTip(const ToolTipManager::HideBehavior behavior = ToolTipManager::HideBehavior::Later); - /** * Helper method for DolphinView::paste() and DolphinView::pasteIntoFolder(). * Pastes the clipboard data into the URL \a url.