File indexing completed on 2024-04-21 05:27:18

0001 /*
0002  *   SPDX-FileCopyrightText: 2000 Matthias Elter <elter@kde.org>
0003  *
0004  *   SPDX-License-Identifier: GPL-2.0-or-later
0005  *
0006  */
0007 
0008 #ifndef kmenuedit_h
0009 #define kmenuedit_h
0010 
0011 #include <KXmlGuiWindow>
0012 
0013 class QSplitter;
0014 class QAction;
0015 class BasicTab;
0016 class TreeView;
0017 class KTreeWidgetSearchLine;
0018 
0019 class KMenuEdit : public KXmlGuiWindow
0020 {
0021     Q_OBJECT
0022 
0023 public:
0024     KMenuEdit();
0025     ~KMenuEdit() override;
0026 
0027     void selectMenu(const QString &menu);
0028     void selectMenuEntry(const QString &menuEntry);
0029 
0030     // dbus method
0031     void restoreSystemMenu();
0032 
0033 protected:
0034     void setupView();
0035     void setupActions();
0036     bool queryClose() override;
0037 
0038 protected Q_SLOTS:
0039     void slotSave();
0040     void slotChangeView();
0041     void slotRestoreMenu();
0042     void slotConfigure();
0043 
0044 protected:
0045     TreeView *m_tree = nullptr;
0046     BasicTab *m_basicTab = nullptr;
0047     QSplitter *m_splitter = nullptr;
0048     KTreeWidgetSearchLine *m_searchLine = nullptr;
0049 
0050     QAction *m_actionDelete = nullptr;
0051     bool m_showHidden = false;
0052 };
0053 
0054 #endif