Plasma Engine  2.0
Loading...
Searching...
No Matches
AmplitudeAudioActions.h
1#pragma once
2
3#include <EditorPluginAmplitudeAudio/EditorPluginAmplitudeAudioDLL.h>
4
5#include <Foundation/Configuration/CVar.h>
6
7#include <GuiFoundation/Action/BaseActions.h>
8#include <GuiFoundation/GuiFoundationDLL.h>
9
10class plPreferences;
11
12class PL_EDITORPLUGINAMPLITUDEAUDIO_DLL plAmplitudeAudioActions
13{
14public:
15 static void RegisterActions();
16 static void UnregisterActions();
17
18 static void MapMenuActions(const char* szMapping);
19 static void MapToolbarActions(const char* szMapping);
20
21 static plActionDescriptorHandle s_hCategoryAudioSystem;
22 static plActionDescriptorHandle s_hProjectSettings;
23 static plActionDescriptorHandle s_hReloadControls;
24};
25
26
27class PL_EDITORPLUGINAMPLITUDEAUDIO_DLL plAmplitudeAudioAction : public plButtonAction
28{
29 PL_ADD_DYNAMIC_REFLECTION(plAmplitudeAudioAction, plButtonAction);
30
31public:
32 enum class ActionType
33 {
34 ProjectSettings,
35 ReloadControls
36 };
37
38 plAmplitudeAudioAction(const plActionContext& context, const char* szName, ActionType type);
39 ~plAmplitudeAudioAction() override;
40
41 virtual void Execute(const plVariant& value) override;
42
43private:
44 void OnPreferenceChange(plPreferences* pref);
45
46 ActionType m_Type;
47};
Handle for a plAction.
Definition Action.h:27
Definition AmplitudeAudioActions.h:28
Definition AmplitudeAudioActions.h:13
Definition BaseActions.h:159
Base class for all preferences.
Definition Preferences.h:17
plVariant is a class that can store different types of variables, which is useful in situations where...
Definition Variant.h:44
Definition Action.h:67