123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- /*
- * Copyright (c) Contributors to the Open 3D Engine Project.
- * For complete copyright and license terms please see the LICENSE at the root of this distribution.
- *
- * SPDX-License-Identifier: Apache-2.0 OR MIT
- *
- */
- #ifndef CRYINCLUDE_EDITOR_CUSTOMIZE_KEYBOARD_DIALOG_H
- #define CRYINCLUDE_EDITOR_CUSTOMIZE_KEYBOARD_DIALOG_H
- #pragma once
- #if !defined(Q_MOC_RUN)
- #include <QDialog>
- #include "KeyboardCustomizationSettings.h"
- #endif
- namespace Ui
- {
- class CustomizeKeyboardDialog;
- }
- class QAbstractButton;
- class NestedQAction;
- class MenuActionsModel;
- class ActionShortcutsModel;
- class CustomizeKeyboardDialog
- : public QDialog
- {
- Q_OBJECT
- public:
- CustomizeKeyboardDialog(KeyboardCustomizationSettings& settings, QWidget* parent = nullptr);
- virtual ~CustomizeKeyboardDialog();
- private slots:
- void CommandSelectionChanged(const QModelIndex& current, const QModelIndex& previous);
- void CategoryChanged(const QString& category);
- void DialogButtonClicked(const QAbstractButton* button);
- void KeySequenceEditingFinished();
- void AssignButtonClicked();
- void ShortcutsViewSelectionChanged(const QModelIndex& current, const QModelIndex& previous);
- void ShortcutsViewDataChanged();
- void ShortcutRemoved();
- private:
- QScopedPointer<Ui::CustomizeKeyboardDialog> m_ui;
- QHash<QString, QVector<NestedQAction> > m_menuActions;
- KeyboardCustomizationSettings& m_settings;
- const KeyboardCustomizationSettings::Snapshot m_settingsSnapshot;
- MenuActionsModel* m_menuActionsModel;
- ActionShortcutsModel* m_actionShortcutsModel;
- QStringList BuildModels(QWidget* parent);
- };
- #endif //CRYINCLUDE_EDITOR_CUSTOMIZE_KEYBOARD_DIALOG_H
|