]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/selectionmode/actiontexthelper.h
GIT_SILENT Sync po/docbooks with svn
[dolphin.git] / src / selectionmode / actiontexthelper.h
index 8f7501fa4eb6a185d490c0c0a24d48c2303246a4..aa65694111bade25d6c76dc22e76217a30f9cb6f 100644 (file)
@@ -1,6 +1,6 @@
 /*
     This file is part of the KDE project
-    SPDX-FileCopyrightText: 2022 Felix Ernst <felixernst@zohomail.eu>
+    SPDX-FileCopyrightText: 2022 Felix Ernst <felixernst@kde.org>
 
     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
 */
@@ -17,6 +17,11 @@ namespace SelectionMode
 
 /**
  * @brief Helps changing the texts of actions depending on the current selection.
+ *
+ * This is useful for actions that directly trigger a change when there is a selection and do something
+ * different when nothing is selected. For example should the copy action read "Copy" when items are
+ * selected but when no items are selected it can read "Copy…" since triggering it will enter selection
+ * mode and ask users to select the files they want to copy first.
  */
 class ActionTextHelper : QObject
 {
@@ -25,7 +30,7 @@ public:
 
     /**
      * Changes the text of \a action to \a text whenever textsWhenNothingIsSelectedEnabled(true) is called.
-     * The texts can be changed back by calling textsWhenNothingIsSelectedEnabled(false) is called.
+     * The texts can be changed back by calling textsWhenNothingIsSelectedEnabled(false).
      * @see textsWhenNothingIsSelectedEnabled()
      */
     void registerTextWhenNothingIsSelected(QAction *action, QString registeredText);
@@ -37,10 +42,7 @@ public:
     void textsWhenNothingIsSelectedEnabled(bool enabled);
 
 private:
-    enum TextState {
-        TextWhenNothingIsSelected,
-        TextWhenSomethingIsSelected
-    };
+    enum TextState { TextWhenNothingIsSelected, TextWhenSomethingIsSelected };
 
     /**
      * Utility struct to allow switching back and forth between registered actions showing their
@@ -48,16 +50,15 @@ private:
      * An example is "Copy" or "Copy…". The latter one is used when nothing is selected and signifies
      * that it will trigger SelectionMode so items can be selected and then copied.
      */
-    struct RegisteredActionTextChange {            
+    struct RegisteredActionTextChange {
         QPointer<QAction> action;
         QString registeredText;
         TextState textStateOfRegisteredText;
 
-        RegisteredActionTextChange(QAction *action, QString registeredText, TextState state) :
-            action{action},
-            registeredText{registeredText},
-            textStateOfRegisteredText{state}
-        {   };
+        RegisteredActionTextChange(QAction *action, QString registeredText, TextState state)
+            : action{action}
+            , registeredText{registeredText}
+            , textStateOfRegisteredText{state} {};
     };
 
     /**