4
4
pub struct ImguiIO {
5
5
}
6
6
7
+ #[ derive( Debug , Clone ) ]
8
+ pub struct ImguiDrawData {
9
+ }
10
+
7
11
#[ derive( Debug , Clone ) ]
8
12
pub struct ImDrawList {
9
13
draw_list : stdweb:: Value
@@ -22,59 +26,75 @@ impl ImDrawList{
22
26
self . draw_list . Flags
23
27
}
24
28
25
- pub fn iterate_draw_lists ( & self ) {
26
-
29
+ pub fn iterate_draw_lists ( & self , callback : fn ( stdweb:: Value ) ->( ) ) {
30
+ js ! {
31
+ window. Imgui . IterateDrawLists ( @{ callback} ) ;
32
+ } ;
33
+ }
34
+
35
+ pub fn iterate_draw_cmds ( & self , callback : fn ( stdweb:: Value ) ->( ) ) {
36
+ js ! {
37
+ window. Imgui . IterateDrawCmds ( @{ callback} ) ;
38
+ } ;
27
39
}
28
40
}
29
41
30
42
#[ derive( Debug , Clone ) ]
31
43
pub struct Imgui {
32
- module : stdweb:: Value
33
44
}
34
45
35
46
36
47
impl Imgui {
37
48
pub fn new ( ) -> Imgui {
38
49
Imgui {
39
- module : js ! { return window. Imgui ; }
40
50
}
41
51
}
42
52
53
+ #[ allow( non_snake_case) ]
54
+ pub fn IMGUI_VERSION ( & self ) -> String {
55
+ let ret = js ! {
56
+ return window. Imgui . IMGUI_VERSION ;
57
+ } ;
58
+ ret
59
+ }
60
+
43
61
#[ allow( non_snake_case) ]
44
62
pub fn IMGUI_CHECKVERSION ( & self ) {
45
- let module = & self . module ;
46
63
js ! {
47
- @ { module } . IMGUI_CHECKVERSION ( ) ;
64
+ window . Imgui . IMGUI_CHECKVERSION ( ) ;
48
65
} ;
49
66
}
50
67
51
68
pub fn create_context ( & self ) {
52
- let module = & self . module ;
53
69
js ! {
54
- return @ { module } . create_context( ) ;
70
+ return window . Imgui . create_context( ) ;
55
71
} ;
56
72
}
57
73
58
74
pub fn get_io ( & self ) -> stdweb:: Value {
59
- let module = & self . module ;
60
75
let ret = js ! {
61
- return @{ module} . get_io( ) ;
76
+ return window. Imgui . get_io( ) ;
77
+ } ;
78
+ ret
79
+ }
80
+
81
+ pub fn get_draw_data ( & self ) -> stdweb:: Value {
82
+ let ret = js ! {
83
+ return window. Imgui . GetDrawData ( ) ;
62
84
} ;
63
85
ret
64
86
}
65
87
66
88
pub fn style_colors_dark ( & self ) {
67
- let module = & self . module ;
68
89
js ! {
69
- return @ { module } . StyleColorsDark ( ) ;
90
+ return window . Imgui . StyleColorsDark ( ) ;
70
91
} ;
71
92
}
72
93
73
94
#[ allow( non_snake_case) ]
74
95
pub fn IM_ASSERT ( & self , cond : bool ) {
75
- let module = & self . module ;
76
96
js ! {
77
- @ { module } . IM_ASSERT ( @{ cond} ) ;
97
+ window . Imgui . IM_ASSERT ( @{ cond} ) ;
78
98
} ;
79
99
}
80
100
}
0 commit comments