Elaztek Developer Hub
Blamite Game Engine - Keystone  00386.06.16.23.0646.blamite
A library that enables the use of Qt in Blamite's editing tools.
tag.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <HEKGuerilla/components/tags/tags.h>
4 
5 #include "../BlamEditorDocument.h"
7 
8 #ifndef KEYSTONE
9 #define KEYSTONE
10 #endif
11 
16 {
17 
18 public:
19 
20  BlamTag* tag = nullptr;
21  bool show_invisibles = false;
22  bool show_unused_fields = true;
23  bool is_compiled = false;
24  bool live_update = false;
25  bool needs_update = false;
26 
33  BlamEditorDocument_Tag(BlamEditorWindow* _window, BlamTag* _tag);
34 
41  BlamEditorDocument_Tag(BlamTag* _tag);
42 
43  bool Close();
44 
45  void Save();
46 
47  void SaveAs();
48 
49  void FlagAsModified(bool new_modified_state = true);
50 
51  bool ConfirmClose();
52 };
BlamEditorDocument_Tag
Class representing a Tag document.
Definition: tag.h:15
BlamEditorDocument::GetDocumentType
BlamEditorDocumentType GetDocumentType()
Retrieves the type of this document.
Definition: BlamEditorDocument.cpp:16
editor_data.h
BlamEditorDocument::parent_window
BlamEditorWindow * parent_window
The parent window that owns this document.
Definition: BlamEditorDocument.h:47
BlamEditorDocument::file_path
std::string file_path
The path to the file associated with this document.
Definition: BlamEditorDocument.h:58
BlamWorkspaceLayoutType::Tabs
@ Tabs
Sub-windows will be organized using tabs, similar to more modern editing tools.
BlamEditorDocument_Tag::show_invisibles
bool show_invisibles
Whether or not to show invisible (hidden) fields in the editor.
Definition: tag.h:21
BlamEditorWindow::workspace_type
BlamWorkspaceLayoutType workspace_type
The layout type the window is currently using.
Definition: BlamEditorWindow.h:59
BlamEditorDocument_Tag::Save
void Save()
Attempts to save the document, replacing the original file.
Definition: tag.cpp:72
BlamEditorDocumentWidget::document
BlamEditorDocument * document
The document associated with this widget.
Definition: BlamEditorDocument.h:156
BlamEditorWindow::GetApplicationTitle
std::string GetApplicationTitle()
Definition: BlamEditorWindow.cpp:406
BlamEditorDocumentType
BlamEditorDocumentType
Enumerator containing all possible editor document types.
Definition: BlamEditorDocument.h:23
BlamEditorDocument::document_title
std::string document_title
The title of this document.
Definition: BlamEditorDocument.h:49
tag_editor
The tag editor widget.
Definition: tag_editor.h:18
tag_editor.h
BlamEditorDocument_Tag::Close
bool Close()
Closes the document and releases any resources being used by it.
Definition: tag.cpp:55
BlamEditorDocument::modified
bool modified
Whether or not the document has been modified.
Definition: BlamEditorDocument.h:52
BlamEditorDocument_Tag::SaveAs
void SaveAs()
Attempts to save the document, prompting the user to save as a new file.
Definition: tag.cpp:102
BlamEditorWindow.h
BlamEditorDocumentType::Tag
@ Tag
Indicates the document represents a tag file.
BlamEditorDocument_Tag::is_compiled
bool is_compiled
Whether or not this tag was loaded from a compiled/binary tag, rather than a decompiled/XML tag.
Definition: tag.h:23
BlamEditorDocument_Tag::ConfirmClose
bool ConfirmClose()
Called immediately before closing a document.
Definition: tag.cpp:215
BlamEditorDocument::FlagAsModified
virtual void FlagAsModified()
Flags the document as being modified.
Definition: BlamEditorDocument.h:105
BlamWorkspaceLayoutType::MDI
@ MDI
Sub-windows will be organized using MDI (Multiple Document Interface).
BlamEditorDocumentWidget
Class acting as a simple interface to allow for easy retrieval of the active document.
Definition: BlamEditorDocument.h:153
BlamKeystone::EditorData::GetMainEditorWindow
KEYSTONE BlamEditorWindow * GetMainEditorWindow()
Retrieves the main editor window.
Definition: editor_data.cpp:32
BlamEditorDocument::document_context
std::string document_context
The context of this document. Will generally be a project or tag folder.
Definition: BlamEditorDocument.h:59
BlamEditorDocument
Interface class that any types of editor documents inherit from.
Definition: BlamEditorDocument.h:37
BlamEditorDocument_Tag::needs_update
bool needs_update
Whether or not this tag needs to be updated in-engine. Ignored if live_update is false.
Definition: tag.h:25
BlamEditorWindow::mdi_area
SkinnableMdiArea * mdi_area
The MDI area used for documents. Only set when using MDI layout.
Definition: BlamEditorWindow.h:61
BlamEditorDocument_Tag::BlamEditorDocument_Tag
BlamEditorDocument_Tag(BlamEditorWindow *_window, BlamTag *_tag)
Constructs a new Tag document.
Definition: tag.cpp:15
BlamEditorWindow
Interface class that all main editing tool windows inherit from.
Definition: BlamEditorWindow.h:48
tag.h
engine.h
BlamEditorDocument_Tag::tag
BlamTag * tag
The tag associated with this document.
Definition: tag.h:20
BlamKeystone::Engine::GetEngineActiveState
KEYSTONE bool GetEngineActiveState()
Checks whether or not the engine is currently running.
Definition: engine.cpp:102
BlamEditorDocument::Close
virtual bool Close()
Closes the document and releases any resources being used by it.
Definition: BlamEditorDocument.cpp:77
BlamEditorDocument_Tag::live_update
bool live_update
Whether or not this tag should be continuously updated ingame for realtime editing.
Definition: tag.h:24
BlamEditorDocument_Tag::show_unused_fields
bool show_unused_fields
Whether or not to show unused fields in the editor.
Definition: tag.h:22
BlamEditorDocument::ui
BlamEditorDocumentWidget * ui
The GUI widget associated with this document.
Definition: BlamEditorDocument.h:50
BlamKeystone::EditorData::GetDocumentTypeConfiguration
KEYSTONE BlamConfigurationFile * GetDocumentTypeConfiguration(BlamEditorDocumentType type)
Attempts to locate the configuration file for the specified document type.
Definition: document_config.cpp:107