Plasma Engine  2.0
Loading...
Searching...
No Matches
AssetProfilesDlg.moc.h
1#pragma once
2
3#include <EditorFramework/EditorFrameworkDLL.h>
4#include <EditorFramework/ui_AssetProfilesDlg.h>
5#include <Foundation/Containers/Map.h>
6#include <Foundation/Strings/String.h>
7
8#include <QDialog>
9
10class plAssetProfilesDocument;
13class plDocument;
15
16class PL_EDITORFRAMEWORK_DLL plQtAssetProfilesDlg : public QDialog, public Ui_plQtAssetProfilesDlg
17{
18public:
19 Q_OBJECT
20
21public:
22 plQtAssetProfilesDlg(QWidget* pParent);
24
25 plUInt32 m_uiActiveConfig = 0;
26
27private Q_SLOTS:
28 void on_ButtonOk_clicked();
29 void on_ButtonCancel_clicked();
30 void OnItemDoubleClicked(QModelIndex idx);
31 void on_AddButton_clicked();
32 void on_DeleteButton_clicked();
33 void on_RenameButton_clicked();
34 void on_SwitchToButton_clicked();
35
36private:
37 struct Binding
38 {
39 enum class State
40 {
41 None,
42 Added,
43 Deleted
44 };
45
46 State m_State = State::None;
47 plPlatformProfile* m_pProfile = nullptr;
48 };
49
50 bool DetermineNewProfileName(QWidget* parent, plString& result);
51 bool CheckProfileNameUniqueness(const char* szName);
52 void AllAssetProfilesToObject();
53 void PropertyChangedEventHandler(const plDocumentObjectPropertyEvent& e);
54 void ApplyAllChanges();
55 plUuid NativeToObject(plPlatformProfile* pProfile);
56 void ObjectToNative(plUuid objectGuid, plPlatformProfile* pProfile);
57 void SelectionEventHandler(const plSelectionManagerEvent& e);
58
59 plAssetProfilesDocument* m_pDocument;
60 plMap<plUuid, Binding> m_ProfileBindings;
61};
62
Definition Document.h:57
Definition Map.h:408
Definition PlatformProfile.h:25
Definition AssetProfilesDlg.moc.h:17
Definition RawDocumentTreeWidget.moc.h:16
This data type is the abstraction for 128-bit Uuid (also known as GUID) instances.
Definition Uuid.h:11
Used by plDocumentObjectManager::m_PropertyEvents.
Definition DocumentObjectManager.h:77
Definition SelectionManager.h:10