Elaztek Developer Hub
Blamite Game Engine - Keystone  00402.09.29.23.0627.blamite
A library that enables the use of Qt in Blamite's editing tools.
BitfieldFlagsEditorDialog.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <QDialog>
4 #include "ui_BitfieldFlagsEditorDialog.h"
5 
6 #include <vector>
7 #include <HEKGuerilla/components/tags/fields/bitfield/bitfield.h>
8 #include <HEKGuerilla/components/tags/fields/enum/enum.h>
9 
10 class BitfieldFlagsEditorDialog : public QDialog
11 {
12  Q_OBJECT
13 
14 private:
15  Ui::BitfieldFlagsEditorDialog ui;
16  bool is_bitfield = true;
17  bool cancel = true;
18 
19  void AddFlagRow(int flag_index, std::string id, std::string name);
20  void AddFlagRow(int flag_index, std::string id, std::string name, std::string tooltip);
21  void InsertFlagRow(int position, int flag_index, std::string id, std::string name);
22  void InsertFlagRow(int position, int flag_index, std::string id, std::string name, std::string tooltip);
23 
24 public:
25  BitfieldFlagsEditorDialog(std::vector<BlamBitfieldBitInfo> flags, QWidget* parent = Q_NULLPTR);
26  BitfieldFlagsEditorDialog(std::vector<BlamEnumFieldOption> options, QWidget* parent = Q_NULLPTR);
27 
29 
30  void OnAddButtonClicked();
31  void OnRemoveButtonClicked();
33  void OnCancelButtonClicked();
34  void OnSaveButtonClicked();
35 
36  bool IsCancelled();
37 
38  std::vector<BlamBitfieldBitInfo> GetNewFlags();
39  std::vector<BlamEnumFieldOption> GetNewOptions();
40 };
BitfieldFlagsEditorDialog::OnAddButtonClicked
void OnAddButtonClicked()
Definition: BitfieldFlagsEditorDialog.cpp:50
BitfieldFlagsEditorDialog::IsCancelled
bool IsCancelled()
Definition: BitfieldFlagsEditorDialog.cpp:111
KeystoneDialogResult
KeystoneDialogResult
Enumerator containing all possible generic dialog results.
Definition: keystone_api.h:30
BitfieldFlagsEditorDialog::OnRemoveButtonClicked
void OnRemoveButtonClicked()
Definition: BitfieldFlagsEditorDialog.cpp:68
BitfieldFlagsEditorDialog.h
BitfieldFlagsEditorDialog::OnCancelButtonClicked
void OnCancelButtonClicked()
Definition: BitfieldFlagsEditorDialog.cpp:100
BitfieldFlagsEditorDialog::OnClearAllButtonClicked
void OnClearAllButtonClicked()
Definition: BitfieldFlagsEditorDialog.cpp:89
BitfieldFlagsEditorDialog::OnSaveButtonClicked
void OnSaveButtonClicked()
Definition: BitfieldFlagsEditorDialog.cpp:105
BlamKeystone::Utils::ShowMessageBox
KEYSTONE KeystoneDialogResult ShowMessageBox(std::string message)
Definition: utils.cpp:279
BitfieldFlagsEditorDialog
Definition: BitfieldFlagsEditorDialog.h:10
KeystoneMessageBoxButtons::YesNo
@ YesNo
Dialog is shown with a [Yes] and [No] button.
utils.h
BitfieldFlagsEditorDialog::BitfieldFlagsEditorDialog
BitfieldFlagsEditorDialog(std::vector< BlamBitfieldBitInfo > flags, QWidget *parent=Q_NULLPTR)
Definition: BitfieldFlagsEditorDialog.cpp:7
KeystoneDialogResult::Yes
@ Yes
The user pressed the 'Yes' button.
BitfieldFlagsEditorDialog::~BitfieldFlagsEditorDialog
~BitfieldFlagsEditorDialog()
Definition: BitfieldFlagsEditorDialog.cpp:45
KeystoneMessageBoxType::Question
@ Question
Dialog icon will be a speech bubble with a question mark.
BitfieldFlagsEditorDialog::GetNewOptions
std::vector< BlamEnumFieldOption > GetNewOptions()
Definition: BitfieldFlagsEditorDialog.cpp:139
BitfieldFlagsEditorDialog::GetNewFlags
std::vector< BlamBitfieldBitInfo > GetNewFlags()
Definition: BitfieldFlagsEditorDialog.cpp:116