![]() |
Ember
|
#include <PropertiesTab.h>
Public Member Functions | |
| PropertiesTab (wxWindow *parent, MainFrame *mainFrame=nullptr) | |
| wxString | GetTabType () const override |
| Returns the tab type identifier. | |
| void | OnClosed () override |
| Called when the tab is closed. | |
| void | SetSelectedNode (EmberCore::Node *node) |
| Public Member Functions inherited from EmberUI::PropertiesTabBase | |
| PropertiesTabBase (wxWindow *parent) | |
| virtual | ~PropertiesTabBase ()=default |
| wxWindow * | GetWidget () override |
| Returns the wxWidgets window used as the tab content. | |
| wxString | GetTitle () const override |
| Returns the display title of the tab. | |
| void | SetSelectedNode (EmberCore::ITreeNode *node) |
| Sets the node whose properties are displayed. | |
| void | ClearSelection () |
| Clears the current selection. | |
| void | SetSelectionHighlightColor (const wxColour &color) |
| Sets the highlight color for the selected node. | |
| Public Member Functions inherited from ITab | |
| virtual | ~ITab ()=default |
| virtual wxBitmap | GetIcon () const |
| Returns the tab icon bitmap; defaults to null. | |
| virtual void | Initialize () |
| Called once when the tab is first created. | |
| virtual void | Refresh () |
| Refreshes the tab content. | |
| virtual void | OnActivated () |
| Called when the tab becomes active. | |
| virtual void | OnDeactivated () |
| Called when the tab becomes inactive. | |
| virtual bool | IsValid () const |
| Returns true if the tab is in a valid state. | |
| virtual bool | CanClose () const |
| Returns true if the tab can be closed. | |
| virtual bool | CanMove () const |
| Returns true if the tab can be moved/reordered. | |
| virtual wxString | SerializeState () const |
| Serializes tab state to a string for persistence. | |
| virtual void | DeserializeState (const wxString &state) |
| Restores tab state from a serialized string. | |
| virtual bool | HasUnsavedChanges () const |
| Returns true if the tab has unsaved changes. | |
| virtual bool | Save () |
| Saves the tab content; returns true on success. | |
| virtual bool | SupportsOperation (const wxString &operation) const |
| Returns true if the tab supports the given operation. | |
| virtual bool | ExecuteOperation (const wxString &operation, const wxString ¶meter="") |
| Executes an operation with optional parameter; returns true on success. | |
Protected Member Functions | |
| void | CreateContentLayout (wxPanel *contentPanel) override |
| Pure virtual: subclasses create their content layout in contentPanel. | |
| void | PopulateProperties () override |
| Pure virtual: subclasses populate the property grid from m_selectedNode. | |
| void | OnNodeCleared () override |
| Called when selection is cleared; subclasses may override. | |
| Protected Member Functions inherited from EmberUI::PropertiesTabBase | |
| void | InitLayout () |
| Initializes the tab layout (stack, placeholder, content panels). | |
| void | SetupPropertyGrid (wxPanel *parent) |
| Creates and configures the property grid in the given parent. | |
| void | AddBasicNodeInfo () |
| Adds basic node info (name, type) to the property grid. | |
| virtual wxString | GetPlaceholderText () const |
| Returns placeholder text when no node is selected. | |
Private Types | |
| enum | PropertyIds { PROP_NODE_NAME = 1000 , PROP_NODE_TYPE , PROP_NODE_ID , PROP_NODE_CHILDREN_VISIBLE , PROP_CUSTOM_ATTRIBUTES_START = 2000 } |
Private Member Functions | |
| void | AddVisualProperties () |
| void | AddNodePortAttributes () |
| void | AddNodeCustomAttributes () |
| wxString | GetNodeTypeDisplayName (EmberCore::Node::Type type) const |
| void | OnPropertyChanged (wxPropertyGridEvent &event) |
| void | OnPropertyChanging (wxPropertyGridEvent &event) |
Static Private Member Functions | |
| static bool | IsPortValue (const std::string &value) |
Private Attributes | |
| EmberCore::Node * | m_node |
| MainFrame * | m_mainFrame |
Additional Inherited Members | |
| Protected Attributes inherited from EmberUI::PropertiesTabBase | |
| wxSimplebook * | m_stack |
| wxPanel * | m_placeholderPanel |
| wxPanel * | m_contentPanel |
| wxPropertyGrid * | m_propertyGrid |
| EmberCore::ITreeNode * | m_selectedNode |
| wxColour | m_selectionHighlight |
| Static Protected Attributes inherited from EmberUI::PropertiesTabBase | |
| static const wxColour | kBgColor |
| static const wxColour | kCaptionBgColor |
| static const wxColour | kTextColor |
| static const wxColour | kLineColor |
| static const wxColour | kCellBgColor |
Definition at line 14 of file PropertiesTab.h.
|
private |
| Enumerator | |
|---|---|
| PROP_NODE_NAME | |
| PROP_NODE_TYPE | |
| PROP_NODE_ID | |
| PROP_NODE_CHILDREN_VISIBLE | |
| PROP_CUSTOM_ATTRIBUTES_START | |
Definition at line 44 of file PropertiesTab.h.
| PropertiesTab::PropertiesTab | ( | wxWindow * | parent, |
| MainFrame * | mainFrame = nullptr ) |
|
private |
Definition at line 118 of file PropertiesTab.cpp.
|
private |
Definition at line 95 of file PropertiesTab.cpp.
|
private |
Definition at line 74 of file PropertiesTab.cpp.
|
overrideprotectedvirtual |
Pure virtual: subclasses create their content layout in contentPanel.
Implements EmberUI::PropertiesTabBase.
Definition at line 24 of file PropertiesTab.cpp.
|
private |
Definition at line 141 of file PropertiesTab.cpp.
|
inlineoverridevirtual |
|
staticprivate |
Definition at line 85 of file PropertiesTab.cpp.
|
overridevirtual |
Called when the tab is closed.
Reimplemented from ITab.
Definition at line 16 of file PropertiesTab.cpp.
|
overrideprotectedvirtual |
Called when selection is cleared; subclasses may override.
Reimplemented from EmberUI::PropertiesTabBase.
Definition at line 22 of file PropertiesTab.cpp.
|
private |
Definition at line 160 of file PropertiesTab.cpp.
|
private |
Definition at line 192 of file PropertiesTab.cpp.
|
overrideprotectedvirtual |
Pure virtual: subclasses populate the property grid from m_selectedNode.
Implements EmberUI::PropertiesTabBase.
Definition at line 48 of file PropertiesTab.cpp.
| void PropertiesTab::SetSelectedNode | ( | EmberCore::Node * | node | ) |
Definition at line 32 of file PropertiesTab.cpp.
|
private |
Definition at line 42 of file PropertiesTab.h.
|
private |
Definition at line 41 of file PropertiesTab.h.