GBActionLog
Handles mode change events and outputs to action log if enabled
Handles mode change events and outputs to action log if enabled
Version: v5.0.0
Inherits: GBControl
Source: gb_action_log.gd
Parsing: AST-based for maximum accuracy with symbol typing
Constants
REQUIRED_DEPENDENCIES:
Constants for validation
Variables
_settings: ActionLogSettings
Build log settings injected from centralized configuration (private)
Type: ActionLogSettings
_building_state: BuildingState
Type: BuildingState
_manipulation_state: ManipulationState
Type: ManipulationState
_mode_state: ModeState
Type: ModeState
_debug: GBDebugSettings
Type: GBDebugSettings
_actions: GBActions
Type: GBActions
_logger: GBLogger
Type: GBLogger
Methods
_disconnect_building_state
Signature: _disconnect_building_state() -> void
DRY helper: Disconnect building state signals
Returns: void
_connect_building_state
Signature: _connect_building_state() -> void
DRY helper: Connect building state signals
Returns: void
_disconnect_manipulation_state
Signature: _disconnect_manipulation_state() -> void
DRY helper: Disconnect manipulation state signals
Returns: void
_connect_manipulation_state
Signature: _connect_manipulation_state() -> void
DRY helper: Connect manipulation state signals
Returns: void
_disconnect_mode_state
Signature: _disconnect_mode_state() -> void
DRY helper: Disconnect mode state signals
Returns: void
_connect_mode_state
Signature: _connect_mode_state() -> void
DRY helper: Connect mode state signals
Returns: void
_ready
Signature: _ready() -> void
Returns: void
resolve_gb_dependencies
Signature: resolve_gb_dependencies(p_container : GBCompositionContainer: Variant) -> void
Only show on_ready_message if settings are already injected
Returns: void
Parameters:
p_container : GBCompositionContainer: Variant
clear_log
Signature: clear_log() -> void
Returns: void
get_settings
Signature: get_settings() -> ActionLogSettings
Public getter for testing and external access
Returns: ActionLogSettings
validate_setup
Signature: validate_setup() -> bool
Validates that all required dependencies are present
Returns: bool
append_validation_results
Signature: append_validation_results(p_results : ValidationResults: Variant) -> void
Adds validation results to the log as settings request.
Returns: void
Parameters:
p_results : ValidationResults: Variant
append_placement_report_issues
Signature: append_placement_report_issues(p_report: PlacementReport) -> void
DRY helper: Adds placement report issues to the log
Returns: void
Parameters:
p_report: PlacementReport
_append_issues_list
Signature: _append_issues_list(issues: Array[String]: Variant) -> void
DRY helper: Appends a list of issue strings to the message log
Returns: void
Parameters:
issues: Array[String]: Variant
append_manipulation
Signature: append_manipulation(p_data : ManipulationData: Variant) -> void
Returns: void
Parameters:
p_data : ManipulationData: Variant
should_show
Signature: should_show(p_action : GBEnums.Action: Variant) -> bool
Checks whether the action data should show in the log or not.
Returns: bool
Parameters:
p_action : GBEnums.Action: Variant
_print_reasons
Signature: _print_reasons(p_rule_results : Dictionary[PlacementRule: Variant, RuleResult]: Variant, p_failed_only : bool = true: Variant) -> void
p_failed_only: bool - Whether to print only failed results (default true)
Returns: void
Parameters:
p_rule_results : Dictionary[PlacementRule: VariantRuleResult]: Variantp_failed_only : bool = true: Variant
_get_display_name_safe
Signature: _get_display_name_safe(obj: Node) -> String
DRY helper: Determines display name for objects with fallback
Returns: String
Parameters:
obj: Node
_handle_build_result
Signature: _handle_build_result(p_data: BuildActionData, is_success: bool) -> void
DRY helper: Handles color and message formatting for build results
Returns: void
Parameters:
p_data: BuildActionDatais_success: bool
_on_build_success
Signature: _on_build_success(p_data: BuildActionData) -> void
Only show detailed failure reasons if enabled in settings
Returns: void
Parameters:
p_data: BuildActionData
_on_build_failed
Signature: _on_build_failed(p_data: BuildActionData) -> void
Returns: void
Parameters:
p_data: BuildActionData
_handle_manipulation_result
Signature: _handle_manipulation_result(p_data: ManipulationData, is_finished: bool) -> void
DRY helper: Handles manipulation result display with consistent color coding
Returns: void
Parameters:
p_data: ManipulationDatais_finished: bool
_on_manipulation_started
Signature: _on_manipulation_started(p_data : ManipulationData: Variant) -> void
Determine success state and color
Returns: void
Parameters:
p_data : ManipulationData: Variant
_on_manipulation_failed
Signature: _on_manipulation_failed(p_data : ManipulationData: Variant) -> void
Use neutral color for started messages (not success/failure yet)
Returns: void
Parameters:
p_data : ManipulationData: Variant
_on_manipulation_finished
Signature: _on_manipulation_finished(p_data : ManipulationData: Variant) -> void
Returns: void
Parameters:
p_data : ManipulationData: Variant
_on_mode_changed
Signature: _on_mode_changed(p_mode: GBEnums.Mode: Variant) -> void
Handles mode change events and outputs to action log if enabled
Returns: void
Parameters:
p_mode: GBEnums.Mode: Variant