┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/dolphinmainwindow.h
diff options
context:
space:
mode:
authorFelix Ernst <[email protected]>2019-06-23 21:19:49 +0200
committerElvis Angelaccio <[email protected]>2019-06-23 21:19:49 +0200
commitbd788a3ff425992b87a5c5b86abc6c324a73784a (patch)
tree3bbf0b8177c6b63330d523ed39e7534ff1b9bc50 /src/dolphinmainwindow.h
parente6c1b97d67f6b6c6d4ad935db14241b041b3fca4 (diff)
Add "What's This?" to nearly everything in the main window
Summary: This commit adds "What's This?" help to nearly everything in the Dolphin main window (panels, views, buttons, ...). It adds the "?" to the title bar so this help can easily be called. For links in those help texts to work the WhatsThisClickedEvents are handled in the main window class. This doesn't work for menus because events from them aren't forwarded to the main window for some reason so EventFilters are installed for the Control button menus. Modifying the "Help" menu of KXmlGui is deprecated so no EventFilter can be installed in the menubar. Therefore help texts without links are provided for the menubar. Test Plan: Check if the event handling might make any problems. Check for any big mistakes in the help messages. Reviewers: #dolphin, elvisangelaccio Subscribers: broulik, elvisangelaccio, yurchor, kfm-devel Tags: #dolphin Differential Revision: https://phabricator.kde.org/D20471
Diffstat (limited to 'src/dolphinmainwindow.h')
-rw-r--r--src/dolphinmainwindow.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/dolphinmainwindow.h b/src/dolphinmainwindow.h
index 4037c1468..dcfd9bce2 100644
--- a/src/dolphinmainwindow.h
+++ b/src/dolphinmainwindow.h
@@ -46,6 +46,7 @@ class KFileItem;
class KFileItemList;
class KJob;
class KNewFileMenu;
+class KHelpMenu;
class QToolButton;
class QIcon;
class PlacesPanel;
@@ -205,6 +206,11 @@ protected:
/** @see KMainWindow::readProperties() */
void readProperties(const KConfigGroup& group) override;
+ /** Handles QWhatsThisClickedEvent and passes all others on. */
+ bool event(QEvent* event) override;
+ /** Handles QWhatsThisClickedEvent and passes all others on. */
+ bool eventFilter(QObject*, QEvent*) override;
+
private slots:
/**
* Refreshes the views of the main window by recreating them according to
@@ -496,8 +502,16 @@ private slots:
void slotToolBarActionMiddleClicked(QAction *action);
private:
+ /**
+ * Sets up the various menus and actions and connects them.
+ */
void setupActions();
+
+ /**
+ * Sets up the dock widgets and their panels.
+ */
void setupDockWidgets();
+
void updateEditActions();
void updateViewActions();
void updateGoActions();
@@ -541,6 +555,9 @@ private:
QAction* dockAction,
const QString& actionName);
+ /** Adds "What's This?" texts to many widgets and StandardActions. */
+ void setupWhatsThis();
+
private:
/**
* Implements a custom error handling for the undo manager. This
@@ -556,6 +573,7 @@ private:
};
KNewFileMenu* m_newFileMenu;
+ KHelpMenu* m_helpMenu;
DolphinTabWidget* m_tabWidget;
DolphinViewContainer* m_activeViewContainer;