remove state generic from a lot of things
This commit is contained in:
@@ -4,11 +4,11 @@ use winit::dpi::{LogicalPosition, LogicalSize};
|
||||
|
||||
pub struct Selector;
|
||||
|
||||
impl<State: HasUiState, W: Widget<State> + 'static> WidgetAttr<State, W> for Selector {
|
||||
type Input = WidgetRef<State, TextEdit<State>>;
|
||||
impl<State: HasUiState + HasEvents, W: Widget + 'static> WidgetAttr<State, W> for Selector {
|
||||
type Input = WidgetRef<TextEdit>;
|
||||
|
||||
fn run(ui: &mut Ui<State>, container: WidgetRef<State, W>, id: Self::Input) {
|
||||
ui.register_event(container, CursorSense::click_or_drag(), move |ctx| {
|
||||
fn run(state: &mut State, container: WidgetRef<W>, id: Self::Input) {
|
||||
state.register_event(container, CursorSense::click_or_drag(), move |ctx| {
|
||||
let region = ctx.state.ui().window_region(&id).unwrap();
|
||||
let id_pos = region.top_left;
|
||||
let container_pos = ctx.state.ui().window_region(&container).unwrap().top_left;
|
||||
@@ -21,11 +21,11 @@ impl<State: HasUiState, W: Widget<State> + 'static> WidgetAttr<State, W> for Sel
|
||||
|
||||
pub struct Selectable;
|
||||
|
||||
impl<State: HasUiState> WidgetAttr<State, TextEdit<State>> for Selectable {
|
||||
impl<State: HasUiState + HasEvents> WidgetAttr<State, TextEdit> for Selectable {
|
||||
type Input = ();
|
||||
|
||||
fn run(ui: &mut Ui<State>, id: WidgetRef<State, TextEdit<State>>, _: Self::Input) {
|
||||
ui.register_event(id, CursorSense::click_or_drag(), move |ctx| {
|
||||
fn run(state: &mut State, id: WidgetRef<TextEdit>, _: Self::Input) {
|
||||
state.register_event(id, CursorSense::click_or_drag(), move |ctx| {
|
||||
select(
|
||||
ctx.state,
|
||||
id,
|
||||
@@ -37,9 +37,9 @@ impl<State: HasUiState> WidgetAttr<State, TextEdit<State>> for Selectable {
|
||||
}
|
||||
}
|
||||
|
||||
fn select<State: 'static + HasUiState>(
|
||||
state: &mut State,
|
||||
id: WidgetRef<State, TextEdit<State>>,
|
||||
fn select(
|
||||
state: &mut impl HasUiState,
|
||||
id: WidgetRef<TextEdit>,
|
||||
pos: Vec2,
|
||||
size: Vec2,
|
||||
dragging: bool,
|
||||
|
||||
Reference in New Issue
Block a user