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.
generic.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <QWidget>
4 #include <qlineedit.h>
5 #include <qtimer.h>
6 
8 #include "ui_generic.h"
9 
10 class tag_designer;
11 
20 {
21  Q_OBJECT
22 
23 protected:
24  Ui::basic_tag_field ui;
25 
26 private:
27  void SetupTooltip();
28 
29 public:
30  BlamTagField* field = nullptr;
31 
35  BlamPluginField* template_field = nullptr;
36  bool is_template = false;
37 
38  ui_generic_field(BlamTagField* _field, BlamEditorDocument_Tag* _document, QWidget *parent = Q_NULLPTR);
39  ui_generic_field(BlamPluginField* _template, BlamEditorDocument_Tag* _document);
41 
42  bool eventFilter(QObject* object, QEvent* event) override;
43  void SetDesignModeActive(drag_list* _drag_list, tag_designer* _designer) override;
44  void SetDesignNameEditState(bool edit_state, bool save_changes = true) override;
45  void SetupUI() override;
46 
47 private slots:
48  void LabelEditEnterPressed();
49 };
BlamEditorDocument_Tag
Class representing a Tag document.
Definition: tag.h:15
editor_data.h
BlamEditorDocumentWidget::document
BlamEditorDocument * document
The document associated with this widget.
Definition: BlamEditorDocument.h:171
BlamEditorTagFieldControl::document
BlamEditorDocument_Tag * document
The document this field belongs to.
Definition: tag_fields.h:24
BlamEditorTagFieldControl
Interface used as a base for all tag field controls.
Definition: tag_fields.h:18
ui_generic_field::template_field
BlamPluginField * template_field
The plugin field associated with this control.
Definition: generic.h:35
BlamEditorDocument.h
generic.h
BlamEditorDocument::FlagAsModified
virtual void FlagAsModified(bool new_modified_state=true)
Flags the document as being modified.
Definition: BlamEditorDocument.cpp:75
BlamEditorDocumentType::Tag
@ Tag
Indicates the document represents a tag file.
BlamEditorTagFieldControl::drag_drop_list
drag_list * drag_drop_list
The active drag list that owns this control. Only used when design_mode is enabled.
Definition: tag_fields.h:26
ui_generic_field::ui
Ui::basic_tag_field ui
Definition: generic.h:24
ui_generic_field::field
BlamTagField * field
The field associated with this control.
Definition: generic.h:30
drag_list
A basic interface class which can be used for drag and drop behaviors.
Definition: drag_container.h:19
ui_generic_field::SetDesignModeActive
void SetDesignModeActive(drag_list *_drag_list, tag_designer *_designer) override
Instructs the field to be editable as a designer field.
Definition: generic.cpp:125
ui_generic_field::is_template
bool is_template
Whether or not this field is displaying as a template.
Definition: generic.h:36
ui_generic_field::~ui_generic_field
~ui_generic_field()
Definition: generic.cpp:32
BlamEditorTagFieldControl::design_mode
bool design_mode
Whether or not this field is currently in design mode.
Definition: tag_fields.h:25
ui_generic_field
A generic tag field control template.
Definition: generic.h:19
ui_generic_field::SetDesignNameEditState
void SetDesignNameEditState(bool edit_state, bool save_changes=true) override
Enables or disables the label edit field for the current field.
Definition: generic.cpp:146
tag_fields.h
BlamEditorTagFieldControl::designer
tag_designer * designer
The active tag designer that owns this control. Only used when design_mode is enabled.
Definition: tag_fields.h:27
tag_designer.h
ui_generic_field::ui_generic_field
ui_generic_field(BlamTagField *_field, BlamEditorDocument_Tag *_document, QWidget *parent=Q_NULLPTR)
Definition: generic.cpp:11
ui_generic_field::eventFilter
bool eventFilter(QObject *object, QEvent *event) override
Definition: generic.cpp:249
ui_generic_field::SetupUI
void SetupUI() override
Configures the UI for the current field.
Definition: generic.cpp:177
tag_designer
Class representing the Tag Designer.
Definition: tag_designer.h:24
BlamKeystone::EditorData::GetDocumentTypeConfiguration
KEYSTONE BlamConfigurationFile * GetDocumentTypeConfiguration(BlamEditorDocumentType type)
Attempts to locate the configuration file for the specified document type.
Definition: document_config.cpp:107