Sign in

    Milky2018/mgstudio/picking does not have a README file

    PointerId

    type PointerId = Int

    HasRes_PickingEvents

    pub(open) trait HasRes_PickingEvents {
    get_picking_events_resource(self : Self) ->
    Resource
    [PickingEvents]
    }

    HasRes_PickingHits

    pub(open) trait HasRes_PickingHits {
    get_picking_hits_resource(self : Self) ->
    Resource
    [PickingHits]
    }

    HasRes_PickingState

    pub(open) trait HasRes_PickingState {
    get_picking_state_resource(self : Self) ->
    Resource
    [PickingState]
    }

    HasRes_PointerInputs

    pub(open) trait HasRes_PointerInputs {
    get_pointer_inputs_resource(self : Self) ->
    Resource
    [PointerInputs]
    }

    PickingEvents

    pub struct PickingEvents {
    events : Array[PointerEvent]
    }

    Per-frame picking events produced by picking systems and consumed by UI.

    PickingEvents::default

    fn PickingEvents::default() -> PickingEvents

    PickingEvents::drain

    fn PickingEvents::drain(self : Ref[PickingEvents]) -> Array[PointerEvent]

    PickingEvents::push

    fn PickingEvents::push(self : Ref[PickingEvents], event : PointerEvent) -> Unit

    PickingHits

    Per-frame hit-test results produced by picking backends.

    PickingHits::default

    fn PickingHits::default() -> PickingHits

    PickingHits::set_sprite2d

    fn PickingHits::set_sprite2d(self : Ref[PickingHits], pointer : Int, entity :
    Entity
    ?) -> Unit

    PickingHits::set_ui

    fn PickingHits::set_ui(self : Ref[PickingHits], pointer : Int, entity :
    Entity
    ?) -> Unit

    PickingHits::sprite2d

    fn PickingHits::sprite2d(self : PickingHits, pointer : Int) ->
    Entity
    ?

    PickingHits::ui

    PickingState

    Per-pointer picking state persisted across frames.

    PickingState::default

    fn PickingState::default() -> PickingState

    PickingState::hovered

    fn PickingState::hovered(self : PickingState, pointer : Int) ->
    Entity
    ?

    PickingState::last_position

    fn PickingState::last_position(self : PickingState, pointer : Int) ->
    Vec2
    ?

    PickingState::pressed

    fn PickingState::pressed(self : PickingState, pointer : Int) ->
    Entity
    ?

    PickingState::set_hovered

    fn PickingState::set_hovered(self : Ref[PickingState], pointer : Int, hovered :
    Entity
    ?) -> Unit

    PickingState::set_last_position

    fn PickingState::set_last_position(self : Ref[PickingState], pointer : Int, pos :
    Vec2
    ?) -> Unit

    PickingState::set_pressed

    fn PickingState::set_pressed(self : Ref[PickingState], pointer : Int, pressed :
    Entity
    ?) -> Unit

    PointerButton

    pub(all) enum PointerButton {
    Primary
    Secondary
    Middle
    }

    impl Eq for PointerButton

    PointerEvent

    pub struct PointerEvent {
    pointer : Int
    kind : PointerEventKind
    position :
    Vec2

    target :
    Entity
    ?
    }

    PointerEvent::new

    PointerEventKind

    pub(all) enum PointerEventKind {
    Move
    Enter
    Leave
    Down
    Up
    Click
    }

    PointerInput

    pub struct PointerInput {
    pointer : Int
    window_position :
    Vec2
    ?
    down : Bool
    just_pressed : Bool
    just_released : Bool
    }

    PointerInput::new

    fn PointerInput::new(pointer : Int, window_position :
    Vec2
    ?, down : Bool, just_pressed : Bool, just_released : Bool) -> PointerInput

    PointerInputs

    pub struct PointerInputs {
    pointers : Array[PointerInput]
    }

    Per-frame pointer inputs captured from the runtime/input layer.

    PointerInputs::clear

    fn PointerInputs::clear(self : Ref[PointerInputs]) -> Unit

    PointerInputs::default

    fn PointerInputs::default() -> PointerInputs

    PointerInputs::from_array

    fn PointerInputs::from_array(pointers : Array[PointerInput]) -> PointerInputs

    PointerInputs::push

    fn PointerInputs::push(self : Ref[PointerInputs], input : PointerInput) -> Unit

    ecs_components

    let ecs_components : Array[String]

    ECS component types discovered via #ecs.component.

    ecs_resources

    let ecs_resources : Array[String]

    ECS resource types discovered via #ecs.resource.

    ensure_picking_hits_system

    fn[W : HasRes_PickingHits +
    ChangeTickWorld
    ] ensure_picking_hits_system(world : W) -> Unit

    ensure_picking_state_system

    fn[W : HasRes_PickingState +
    ChangeTickWorld
    ] ensure_picking_state_system(world : W) -> Unit

    ensure_pointer_inputs_system

    fn[W : HasRes_PointerInputs +
    ChangeTickWorld
    ] ensure_pointer_inputs_system(world : W) -> Unit

    picking_clear_system

    fn[W : HasRes_PickingEvents +
    ChangeTickWorld
    ] picking_clear_system(world : W) -> Unit

    picking_collect_mouse_system

    fn[W : HasRes_PointerInputs +
    ChangeTickWorld
    ] picking_collect_mouse_system(world : W) -> Unit

    picking_generate_events_system

    Generate pointer enter/leave/down/up/click events from hit-test results.

    picking_set

    let picking_set : String

    picking_set_events

    let picking_set_events : String

    picking_set_hits

    let picking_set_hits : String

    picking_set_input

    let picking_set_input : String