1-
2- use seed:: prelude:: * ;
31use crate :: state_access:: StateAccess ;
42use atomic_hooks:: atom:: Atom ;
5-
3+ use seed :: prelude :: * ;
64
75pub trait StateAccessEventHandlers < T >
86where
97 T : ' static ,
108{
11- fn input_ev < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static , > (
9+ fn input_ev < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static > (
1210 & self ,
1311 event : Ev ,
1412 func : F ,
1513 ) -> seed:: EventHandler < Ms > ;
1614
17- fn mouse_ev <
18- F : FnOnce ( & mut T , web_sys:: MouseEvent ) -> ( ) + ' static + Clone ,
19- Ms : ' static ,
20- > (
15+ fn mouse_ev < F : FnOnce ( & mut T , web_sys:: MouseEvent ) -> ( ) + ' static + Clone , Ms : ' static > (
2116 & self ,
2217 event : Ev ,
2318 func : F ,
2419 ) -> seed:: EventHandler < Ms > ;
2520
26-
27- fn on_click <
28- F : FnOnce ( & mut T ) -> ( ) + ' static + Clone ,
29- Ms : ' static ,
30- > (
21+ fn on_click < F : FnOnce ( & mut T ) -> ( ) + ' static + Clone , Ms : ' static > (
3122 & self ,
3223 func : F ,
3324 ) -> seed:: EventHandler < Ms > ;
3425
35- fn on_input <
36- F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone ,
37- Ms : ' static ,
38- > (
26+ fn on_input < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static > (
3927 & self ,
4028 func : F ,
4129 ) -> seed:: EventHandler < Ms > ;
42-
4330}
4431
4532impl < T > StateAccessEventHandlers < T > for StateAccess < T >
4633where
4734 T : ' static ,
4835{
49- fn input_ev < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static , > (
36+ fn input_ev < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static > (
5037 & self ,
5138 event : Ev ,
5239 func : F ,
@@ -57,55 +44,43 @@ where
5744 } )
5845 }
5946
60- fn mouse_ev <
61- F : FnOnce ( & mut T , web_sys:: MouseEvent ) -> ( ) + ' static + Clone ,
62- Ms : ' static ,
63- > (
47+ fn mouse_ev < F : FnOnce ( & mut T , web_sys:: MouseEvent ) -> ( ) + ' static + Clone , Ms : ' static > (
6448 & self ,
6549 event : Ev ,
6650 func : F ,
6751 ) -> seed:: EventHandler < Ms > {
6852 let accessor = * self ;
6953 mouse_ev ( event, move |m_ev| {
7054 accessor. update ( |val| func ( val, m_ev) ) ;
71-
7255 } )
7356 }
7457
75- fn on_click <
76- F : FnOnce ( & mut T ) -> ( ) + ' static + Clone ,
77- Ms : ' static ,
78- > (
58+ fn on_click < F : FnOnce ( & mut T ) -> ( ) + ' static + Clone , Ms : ' static > (
7959 & self ,
8060 func : F ,
8161 ) -> seed:: EventHandler < Ms > {
8262 let accessor = * self ;
8363 mouse_ev ( Ev :: Click , move |_| {
8464 accessor. update ( |val| func ( val) ) ;
85-
8665 } )
8766 }
8867
89- fn on_input < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static , > (
90- & self ,
91- func : F ,
92- ) -> seed:: EventHandler < Ms > {
93- let accessor = * self ;
94- input_ev ( Ev :: Input , move |text| {
95- accessor. update ( |val| func ( val, text) ) ;
96- } )
97- }
98-
99-
68+ fn on_input < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static > (
69+ & self ,
70+ func : F ,
71+ ) -> seed:: EventHandler < Ms > {
72+ let accessor = * self ;
73+ input_ev ( Ev :: Input , move |text| {
74+ accessor. update ( |val| func ( val, text) ) ;
75+ } )
76+ }
10077}
10178
102-
103-
10479impl < T > StateAccessEventHandlers < T > for Atom < T >
10580where
10681 T : ' static ,
10782{
108- fn input_ev < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static , > (
83+ fn input_ev < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static > (
10984 & self ,
11085 event : Ev ,
11186 func : F ,
@@ -116,44 +91,34 @@ where
11691 } )
11792 }
11893
119- fn mouse_ev <
120- F : FnOnce ( & mut T , web_sys:: MouseEvent ) -> ( ) + ' static + Clone ,
121- Ms : ' static ,
122- > (
94+ fn mouse_ev < F : FnOnce ( & mut T , web_sys:: MouseEvent ) -> ( ) + ' static + Clone , Ms : ' static > (
12395 & self ,
12496 event : Ev ,
12597 func : F ,
12698 ) -> seed:: EventHandler < Ms > {
12799 let accessor = * self ;
128100 mouse_ev ( event, move |m_ev| {
129101 accessor. update ( |val| func ( val, m_ev) ) ;
130-
131102 } )
132103 }
133104
134- fn on_click <
135- F : FnOnce ( & mut T ) -> ( ) + ' static + Clone ,
136- Ms : ' static ,
137- > (
105+ fn on_click < F : FnOnce ( & mut T ) -> ( ) + ' static + Clone , Ms : ' static > (
138106 & self ,
139107 func : F ,
140108 ) -> seed:: EventHandler < Ms > {
141109 let accessor = * self ;
142110 mouse_ev ( Ev :: Click , move |_| {
143111 accessor. update ( |val| func ( val) ) ;
144-
145112 } )
146113 }
147114
148- fn on_input < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static , > (
149- & self ,
150- func : F ,
151- ) -> seed:: EventHandler < Ms > {
152- let accessor = * self ;
153- input_ev ( Ev :: Input , move |text| {
154- accessor. update ( |val| func ( val, text) ) ;
155- } )
156- }
157-
158-
115+ fn on_input < F : FnOnce ( & mut T , String ) -> ( ) + ' static + Clone , Ms : ' static > (
116+ & self ,
117+ func : F ,
118+ ) -> seed:: EventHandler < Ms > {
119+ let accessor = * self ;
120+ input_ev ( Ev :: Input , move |text| {
121+ accessor. update ( |val| func ( val, text) ) ;
122+ } )
123+ }
159124}
0 commit comments