]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/views/dolphinview.h
DolphinView: rename cutSelectedItems to cutSelectedItemsToClipboard
[dolphin.git] / src / views / dolphinview.h
index 2df1cf9e4caa2c7e762bb9c179c6c23070a9f028..766540d99d6d09e7867d7855ee434405e65e07c8 100644 (file)
 #ifndef DOLPHINVIEW_H
 #define DOLPHINVIEW_H
 
-#include <config-baloo.h>
-
+#include "dolphintabwidget.h"
 #include "dolphin_export.h"
+#include "tooltips/tooltipmanager.h"
 
-#include <kparts/part.h>
 #include <KFileItem>
-#include <kio/fileundomanager.h>
 #include <KIO/Job>
-#include <QUrl>
+#include <config-baloo.h>
+#include <kio/fileundomanager.h>
+#include <kparts/part.h>
+
 #include <QMimeData>
+#include <QUrl>
 #include <QWidget>
 
 typedef KIO::FileUndoManager::CommandType CommandType;
@@ -44,7 +46,7 @@ class ToolTipManager;
 class VersionControlObserver;
 class ViewProperties;
 class QGraphicsSceneDragDropEvent;
-class QRegExp;
+class QRegularExpression;
 
 /**
  * @short Represents a view for the directory content.
@@ -93,7 +95,7 @@ public:
      */
     DolphinView(const QUrl& url, QWidget* parent);
 
-    virtual ~DolphinView();
+    ~DolphinView() override;
 
     /**
      * Returns the current active URL, where all actions are applied.
@@ -181,10 +183,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 &regexp, bool enabled);
 
     /**
      * Sets the zoom level to \a level. It is assured that the used
@@ -194,6 +202,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;
 
@@ -305,6 +318,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
@@ -347,10 +365,10 @@ 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();
 
     /** Pastes the clipboard data to this view. */
     void paste();
@@ -362,6 +380,12 @@ public slots:
      */
     void pasteIntoFolder();
 
+    /**
+     * 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
      */
@@ -369,8 +393,14 @@ 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. */
-    virtual bool eventFilter(QObject* watched, QEvent* event) Q_DECL_OVERRIDE;
+    bool eventFilter(QObject* watched, QEvent* event) override;
 
 signals:
     /**
@@ -400,7 +430,7 @@ signals:
     /**
      * Is emitted if a new tab should be opened for the URL \a url.
      */
-    void tabRequested(const QUrl& url);
+    void tabRequested(const QUrl& url, DolphinTabWidget::TabPlacement tabPlacement);
 
     /**
      * Is emitted if the view mode (IconsView, DetailsView,
@@ -552,10 +582,10 @@ signals:
 
 protected:
     /** Changes the zoom level if Control is pressed during a wheel event. */
-    virtual void wheelEvent(QWheelEvent* event) Q_DECL_OVERRIDE;
+    void wheelEvent(QWheelEvent* event) override;
 
-    virtual void hideEvent(QHideEvent* event) Q_DECL_OVERRIDE;
-    virtual bool event(QEvent* event) Q_DECL_OVERRIDE;
+    void hideEvent(QHideEvent* event) override;
+    bool event(QEvent* event) override;
 
 private slots:
     /**
@@ -646,7 +676,7 @@ private slots:
 
     /**
      * Invoked when the file item model indicates that the loading of a directory has
-     * been completed. Assures that pasted items and renamed items get seleced.
+     * been completed. Assures that pasted items and renamed items get selected.
      */
     void slotDirectoryLoadingCompleted();
 
@@ -690,14 +720,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();
-
-    void hideToolTip();
-
     /**
      * Calculates the number of currently shown files into
      * \a fileCount and the number of folders into \a folderCount.