Grid Placement
Development ⚠️ GridPlacement 6.0 (GECS) is in active development. This is the GDScript ECS architecture.

UISelectionComponent

AUTO-GENERATED (GDScript) API entry

AUTO-GENERATED FILE — DO NOT EDIT MANUALLY

Source: components/ui/ui_selection_component.gd

Version: 6.0

class_name: UISelectionComponent extends: Component

Signals

(none)

Exports

  • selection_mode: SelectionMode = SelectionMode.SINGLE
    • Current selection state
    • Whether selection is currently active
    • Selected entities
    • Hovered entity
    • Focused entity
    • Selection bounds for area selection
    • Selection settings
    • Visual feedback settings
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • selection_state: SelectionState = SelectionState.UNSELECTED
    • Whether selection is currently active
    • Selected entities
    • Hovered entity
    • Focused entity
    • Selection bounds for area selection
    • Selection settings
    • Visual feedback settings
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • is_selection_active: bool = false
    • Selected entities
    • Hovered entity
    • Focused entity
    • Selection bounds for area selection
    • Selection settings
    • Visual feedback settings
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • selection_bounds: Rect2 = Rect2()
    • Selection settings
    • Visual feedback settings
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • allow_multi_select: bool = true
    • Visual feedback settings
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • allow_area_select: bool = true
    • Visual feedback settings
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • allow_drag_select: bool = true
    • Visual feedback settings
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • selection_tolerance: float = 5.0
    • Visual feedback settings
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • show_selection_outline: bool = true
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • show_hover_highlight: bool = true
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • show_focus_ring: bool = true
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • selection_color: Color = Color.CYAN
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • hover_color: Color = Color.YELLOW
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • focus_color: Color = Color.GREEN
    • UI interaction settings
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • enable_keyboard_navigation: bool = true
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • enable_mouse_selection: bool = true
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • enable_touch_selection: bool = true
    • Filtering settings
    • Selection events
    • Performance settings
    • Debug settings
  • filter_by_tags: bool = false
    • Selection events
    • Performance settings
    • Debug settings
  • required_tags: Array
    • Selection events
    • Performance settings
    • Debug settings
  • excluded_tags: Array
    • Selection events
    • Performance settings
    • Debug settings
  • filter_by_type: bool = false
    • Selection events
    • Performance settings
    • Debug settings
  • allowed_types: Array
    • Selection events
    • Performance settings
    • Debug settings
  • excluded_types: Array
    • Selection events
    • Performance settings
    • Debug settings
  • emit_selection_events: bool = true
    • Performance settings
    • Debug settings
  • emit_hover_events: bool = true
    • Performance settings
    • Debug settings
  • emit_focus_events: bool = true
    • Performance settings
    • Debug settings
  • max_selected_entities: int = 100
    • Debug settings
  • update_frequency: float = 30.0
    • Debug settings
  • cull_distance: float = 500.0
    • Debug settings
  • debug_mode: bool = false
  • show_selection_info: bool = false

Methods

  • _init -> void
  • set_selection_mode(mode: SelectionMode) -> void
  • set_selection_state(state: SelectionState) -> void
  • select_entity(entity: Entity, add_to_selection: bool = true) -> void
  • deselect_entity(entity: Entity) -> void
  • clear_selection -> void
  • _clear_selection_except_focused -> void
  • select_all_selectable_entities -> void
  • select_entities_in_area(bounds: Rect2) -> void
  • set_hovered_entity(entity: Entity) -> void
  • set_focused_entity(entity: Entity) -> void
  • get_selected_placeables -> Array
  • get_selection_count -> int
  • is_entity_selected(entity: Entity) -> bool
  • is_entity_hovered(entity: Entity) -> bool
  • is_entity_focused(entity: Entity) -> bool
  • get_selection_bounds -> Rect2
  • _is_entity_selectable(entity: Entity) -> bool
  • _passes_tag_filter(placeable: PlaceableComponent) -> bool
  • _passes_type_filter(placeable: PlaceableComponent) -> bool
  • _add_to_selection(entity: Entity) -> void
  • _remove_from_selection(entity: Entity) -> void
  • _clear_selection -> void
  • _emit_selection_event(entity: Entity, action: String) -> void
  • _emit_hover_event(entity: Entity, action: String) -> void
  • _emit_focus_event(entity: Entity, action: String) -> void
  • to_string -> String
  • _grid_to_world(grid_pos: Vector2i) -> Vector2
    • This should be implemented based on grid configuration
  • reset -> void