This repository was archived by the owner on Mar 4, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 20 files changed +32
-20
lines changed Expand file tree Collapse file tree 20 files changed +32
-20
lines changed Original file line number Diff line number Diff line change @@ -307,7 +307,7 @@ unsafe impl<T: ApplicationImpl> IsSubclassable<T> for Application {
307
307
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
308
308
<glib:: Object as IsSubclassable < T > >:: override_vfuncs ( class) ;
309
309
unsafe {
310
- let klass = & mut * ( class as * mut _ as * mut gio_sys:: GApplicationClass ) ;
310
+ let klass = & mut * ( class. as_mut ( ) as * mut gio_sys:: GApplicationClass ) ;
311
311
klass. activate = Some ( application_activate :: < T > ) ;
312
312
klass. after_emit = Some ( application_after_emit :: < T > ) ;
313
313
klass. before_emit = Some ( application_before_emit :: < T > ) ;
Original file line number Diff line number Diff line change @@ -155,7 +155,7 @@ unsafe impl<T: InputStreamImpl> IsSubclassable<T> for InputStream {
155
155
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
156
156
<glib:: Object as IsSubclassable < T > >:: override_vfuncs ( class) ;
157
157
unsafe {
158
- let klass = & mut * ( class as * mut _ as * mut gio_sys:: GInputStreamClass ) ;
158
+ let klass = & mut * ( class. as_mut ( ) as * mut gio_sys:: GInputStreamClass ) ;
159
159
klass. read_fn = Some ( stream_read :: < T > ) ;
160
160
klass. close_fn = Some ( stream_close :: < T > ) ;
161
161
klass. skip = Some ( stream_skip :: < T > ) ;
Original file line number Diff line number Diff line change @@ -99,7 +99,7 @@ unsafe impl<T: IOStreamImpl> IsSubclassable<T> for IOStream {
99
99
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
100
100
<glib:: Object as IsSubclassable < T > >:: override_vfuncs ( class) ;
101
101
unsafe {
102
- let klass = & mut * ( class as * mut _ as * mut gio_sys:: GIOStreamClass ) ;
102
+ let klass = & mut * ( class. as_mut ( ) as * mut gio_sys:: GIOStreamClass ) ;
103
103
klass. get_input_stream = Some ( stream_get_input_stream :: < T > ) ;
104
104
klass. get_output_stream = Some ( stream_get_output_stream :: < T > ) ;
105
105
klass. close_fn = Some ( stream_close :: < T > ) ;
Original file line number Diff line number Diff line change @@ -195,7 +195,7 @@ unsafe impl<T: OutputStreamImpl> IsSubclassable<T> for OutputStream {
195
195
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
196
196
<glib:: Object as IsSubclassable < T > >:: override_vfuncs ( class) ;
197
197
unsafe {
198
- let klass = & mut * ( class as * mut _ as * mut gio_sys:: GOutputStreamClass ) ;
198
+ let klass = & mut * ( class. as_mut ( ) as * mut gio_sys:: GOutputStreamClass ) ;
199
199
klass. write_fn = Some ( stream_write :: < T > ) ;
200
200
klass. close_fn = Some ( stream_close :: < T > ) ;
201
201
klass. flush = Some ( stream_flush :: < T > ) ;
Original file line number Diff line number Diff line change @@ -2518,6 +2518,18 @@ impl<T: ObjectType> Class<T> {
2518
2518
unsafe impl < T : ObjectType > Send for Class < T > { }
2519
2519
unsafe impl < T : ObjectType > Sync for Class < T > { }
2520
2520
2521
+ impl < T : ObjectType > AsRef < T :: GlibClassType > for Class < T > {
2522
+ fn as_ref ( & self ) -> & T :: GlibClassType {
2523
+ & self . 0
2524
+ }
2525
+ }
2526
+
2527
+ impl < T : ObjectType > AsMut < T :: GlibClassType > for Class < T > {
2528
+ fn as_mut ( & mut self ) -> & mut T :: GlibClassType {
2529
+ & mut self . 0
2530
+ }
2531
+ }
2532
+
2521
2533
// This should require Self: IsA<Self::Super>, but that seems to cause a cycle error
2522
2534
pub unsafe trait ParentClassIs : ObjectType {
2523
2535
type Parent : ObjectType ;
Original file line number Diff line number Diff line change @@ -272,7 +272,7 @@ unsafe impl ObjectClassSubclassExt for ObjectClass {}
272
272
unsafe impl < T : ObjectImpl > IsSubclassable < T > for Object {
273
273
fn override_vfuncs ( class : & mut :: object:: Class < Self > ) {
274
274
unsafe {
275
- let klass = & mut * ( class as * mut _ as * mut gobject_sys:: GObjectClass ) ;
275
+ let klass = & mut * ( class. as_mut ( ) as * mut gobject_sys:: GObjectClass ) ;
276
276
klass. set_property = Some ( set_property :: < T > ) ;
277
277
klass. get_property = Some ( get_property :: < T > ) ;
278
278
klass. constructed = Some ( constructed :: < T > ) ;
Original file line number Diff line number Diff line change @@ -83,11 +83,11 @@ unsafe impl<T: GtkApplicationImpl> IsSubclassable<T> for Application {
83
83
84
84
<gio:: Application as IsSubclassable < T > >:: override_vfuncs ( class) ;
85
85
unsafe {
86
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkApplicationClass ) ;
86
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkApplicationClass ) ;
87
87
klass. window_added = Some ( application_window_added :: < T > ) ;
88
88
klass. window_removed = Some ( application_window_removed :: < T > ) ;
89
89
// Chain our startup handler in here
90
- let klass = & mut * ( class as * mut _ as * mut gio_sys:: GApplicationClass ) ;
90
+ let klass = & mut * ( class. as_mut ( ) as * mut gio_sys:: GApplicationClass ) ;
91
91
klass. startup = Some ( application_startup :: < T > ) ;
92
92
}
93
93
}
Original file line number Diff line number Diff line change @@ -439,7 +439,7 @@ unsafe impl<T: CellRendererImpl> IsSubclassable<T> for CellRenderer {
439
439
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
440
440
<Object as IsSubclassable < T > >:: override_vfuncs ( class) ;
441
441
unsafe {
442
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkCellRendererClass ) ;
442
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkCellRendererClass ) ;
443
443
klass. get_request_mode = Some ( cell_renderer_get_request_mode :: < T > ) ;
444
444
klass. get_preferred_width = Some ( cell_renderer_get_preferred_width :: < T > ) ;
445
445
klass. get_preferred_height_for_width =
Original file line number Diff line number Diff line change @@ -81,7 +81,7 @@ unsafe impl<T: CellRendererAccelImpl> IsSubclassable<T> for CellRendererAccel {
81
81
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
82
82
<CellRendererText as IsSubclassable < T > >:: override_vfuncs ( class) ;
83
83
unsafe {
84
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkCellRendererAccelClass ) ;
84
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkCellRendererAccelClass ) ;
85
85
klass. accel_edited = Some ( cell_renderer_accel_edited :: < T > ) ;
86
86
klass. accel_cleared = Some ( cell_renderer_accel_cleared :: < T > ) ;
87
87
}
Original file line number Diff line number Diff line change @@ -41,7 +41,7 @@ unsafe impl<T: CellRendererTextImpl> IsSubclassable<T> for CellRendererText {
41
41
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
42
42
<CellRenderer as IsSubclassable < T > >:: override_vfuncs ( class) ;
43
43
unsafe {
44
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkCellRendererTextClass ) ;
44
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkCellRendererTextClass ) ;
45
45
klass. edited = Some ( cell_renderer_text_edited :: < T > ) ;
46
46
}
47
47
}
Original file line number Diff line number Diff line change @@ -37,7 +37,7 @@ unsafe impl<T: CellRendererToggleImpl> IsSubclassable<T> for CellRendererToggle
37
37
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
38
38
<CellRenderer as IsSubclassable < T > >:: override_vfuncs ( class) ;
39
39
unsafe {
40
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkCellRendererToggleClass ) ;
40
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkCellRendererToggleClass ) ;
41
41
klass. toggled = Some ( cell_renderer_toggle_toggled :: < T > ) ;
42
42
}
43
43
}
Original file line number Diff line number Diff line change @@ -133,7 +133,7 @@ unsafe impl<T: ContainerImpl> IsSubclassable<T> for Container {
133
133
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
134
134
<Widget as IsSubclassable < T > >:: override_vfuncs ( class) ;
135
135
unsafe {
136
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkContainerClass ) ;
136
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkContainerClass ) ;
137
137
klass. add = Some ( container_add :: < T > ) ;
138
138
klass. remove = Some ( container_remove :: < T > ) ;
139
139
klass. check_resize = Some ( container_check_resize :: < T > ) ;
Original file line number Diff line number Diff line change @@ -50,7 +50,7 @@ unsafe impl<T: DialogImpl> IsSubclassable<T> for Dialog {
50
50
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
51
51
<Window as IsSubclassable < T > >:: override_vfuncs ( class) ;
52
52
unsafe {
53
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkDialogClass ) ;
53
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkDialogClass ) ;
54
54
klass. response = Some ( dialog_response :: < T > ) ;
55
55
klass. close = Some ( dialog_close :: < T > ) ;
56
56
}
Original file line number Diff line number Diff line change @@ -143,7 +143,7 @@ unsafe impl<T: IconViewImpl> IsSubclassable<T> for IconView {
143
143
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
144
144
<Container as IsSubclassable < T > >:: override_vfuncs ( class) ;
145
145
unsafe {
146
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkIconViewClass ) ;
146
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkIconViewClass ) ;
147
147
klass. item_activated = Some ( icon_view_item_activated :: < T > ) ;
148
148
klass. selection_changed = Some ( icon_view_selection_changed :: < T > ) ;
149
149
klass. select_all = Some ( icon_view_select_all :: < T > ) ;
Original file line number Diff line number Diff line change @@ -149,7 +149,7 @@ unsafe impl<T: ListBoxImpl> IsSubclassable<T> for ListBox {
149
149
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
150
150
<Container as IsSubclassable < T > >:: override_vfuncs ( class) ;
151
151
unsafe {
152
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkListBoxClass ) ;
152
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkListBoxClass ) ;
153
153
klass. activate_cursor_row = Some ( list_box_activate_cursor_row :: < T > ) ;
154
154
klass. move_cursor = Some ( list_box_move_cursor :: < T > ) ;
155
155
klass. row_activated = Some ( list_box_row_activated :: < T > ) ;
Original file line number Diff line number Diff line change @@ -24,7 +24,7 @@ unsafe impl<T: ListBoxRowImpl> IsSubclassable<T> for ListBoxRow {
24
24
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
25
25
<Bin as IsSubclassable < T > >:: override_vfuncs ( class) ;
26
26
unsafe {
27
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkListBoxRowClass ) ;
27
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkListBoxRowClass ) ;
28
28
klass. activate = Some ( list_box_row_activate :: < T > ) ;
29
29
}
30
30
}
Original file line number Diff line number Diff line change @@ -36,7 +36,7 @@ unsafe impl<T: PlugImpl> IsSubclassable<T> for Plug {
36
36
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
37
37
<Window as IsSubclassable < T > >:: override_vfuncs ( class) ;
38
38
unsafe {
39
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkPlugClass ) ;
39
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkPlugClass ) ;
40
40
klass. embedded = Some ( plug_embedded :: < T > ) ;
41
41
}
42
42
}
Original file line number Diff line number Diff line change @@ -54,7 +54,7 @@ unsafe impl<T: SocketImpl> IsSubclassable<T> for Socket {
54
54
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
55
55
<Container as IsSubclassable < T > >:: override_vfuncs ( class) ;
56
56
unsafe {
57
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkSocketClass ) ;
57
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkSocketClass ) ;
58
58
klass. plug_added = Some ( socket_plug_added :: < T > ) ;
59
59
klass. plug_removed = Some ( socket_plug_removed :: < T > ) ;
60
60
}
Original file line number Diff line number Diff line change @@ -918,7 +918,7 @@ unsafe impl<T: WidgetImpl> IsSubclassable<T> for Widget {
918
918
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
919
919
<Object as IsSubclassable < T > >:: override_vfuncs ( class) ;
920
920
unsafe {
921
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkWidgetClass ) ;
921
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkWidgetClass ) ;
922
922
klass. adjust_baseline_allocation = Some ( widget_adjust_baseline_allocation :: < T > ) ;
923
923
klass. adjust_baseline_request = Some ( widget_adjust_baseline_request :: < T > ) ;
924
924
klass. adjust_size_allocation = Some ( widget_adjust_size_allocation :: < T > ) ;
Original file line number Diff line number Diff line change @@ -97,7 +97,7 @@ unsafe impl<T: WindowImpl> IsSubclassable<T> for Window {
97
97
fn override_vfuncs ( class : & mut :: glib:: object:: Class < Self > ) {
98
98
<Bin as IsSubclassable < T > >:: override_vfuncs ( class) ;
99
99
unsafe {
100
- let klass = & mut * ( class as * mut _ as * mut gtk_sys:: GtkWindowClass ) ;
100
+ let klass = & mut * ( class. as_mut ( ) as * mut gtk_sys:: GtkWindowClass ) ;
101
101
klass. set_focus = Some ( window_set_focus :: < T > ) ;
102
102
klass. activate_focus = Some ( window_activate_focus :: < T > ) ;
103
103
klass. activate_default = Some ( window_activate_default :: < T > ) ;
You can’t perform that action at this time.
0 commit comments