pub trait InteractiveLegend<C: PixelColor>: Legend<C> {
type Event;
type Response;
// Required methods
fn handle_event(
&mut self,
event: Self::Event,
viewport: Rectangle,
) -> ChartResult<Self::Response>;
fn hit_test(&self, point: Point, viewport: Rectangle) -> Option<usize>;
fn toggle_entry(&mut self, index: usize) -> ChartResult<()>;
fn selected_entry(&self) -> Option<usize>;
fn set_selected_entry(&mut self, index: Option<usize>);
}Expand description
Trait for legends that support interactive features
Required Associated Types§
Required Methods§
Sourcefn handle_event(
&mut self,
event: Self::Event,
viewport: Rectangle,
) -> ChartResult<Self::Response>
fn handle_event( &mut self, event: Self::Event, viewport: Rectangle, ) -> ChartResult<Self::Response>
Sourcefn hit_test(&self, point: Point, viewport: Rectangle) -> Option<usize>
fn hit_test(&self, point: Point, viewport: Rectangle) -> Option<usize>
Check if a point is within a legend entry
§Arguments
point- The point to checkviewport- The legend viewport
Sourcefn toggle_entry(&mut self, index: usize) -> ChartResult<()>
fn toggle_entry(&mut self, index: usize) -> ChartResult<()>
Toggle the visibility of an entry
Sourcefn selected_entry(&self) -> Option<usize>
fn selected_entry(&self) -> Option<usize>
Get the currently selected entry index
Sourcefn set_selected_entry(&mut self, index: Option<usize>)
fn set_selected_entry(&mut self, index: Option<usize>)
Set the selected entry