File tree Expand file tree Collapse file tree 8 files changed +24
-4
lines changed
Expand file tree Collapse file tree 8 files changed +24
-4
lines changed Original file line number Diff line number Diff line change @@ -2,11 +2,14 @@ use glib::subclass::prelude::*;
22
33use super :: window:: WindowImpl ;
44use ApplicationWindowClass ;
5+ use WindowClass ;
56
67pub trait ApplicationWindowImpl : WindowImpl + ' static { }
78
89unsafe impl < T : ObjectSubclass + ApplicationWindowImpl > IsSubclassable < T >
910 for ApplicationWindowClass
1011{
11- fn override_vfuncs ( & mut self ) { }
12+ fn override_vfuncs ( & mut self ) {
13+ <WindowClass as IsSubclassable < T > >:: override_vfuncs ( self ) ;
14+ }
1215}
Original file line number Diff line number Diff line change @@ -2,9 +2,12 @@ use glib::subclass::prelude::*;
22
33use super :: container:: ContainerImpl ;
44use BinClass ;
5+ use ContainerClass ;
56
67pub trait BinImpl : ContainerImpl + ' static { }
78
89unsafe impl < T : ObjectSubclass + BinImpl > IsSubclassable < T > for BinClass {
9- fn override_vfuncs ( & mut self ) { }
10+ fn override_vfuncs ( & mut self ) {
11+ <ContainerClass as IsSubclassable < T > >:: override_vfuncs ( self ) ;
12+ }
1013}
Original file line number Diff line number Diff line change @@ -2,9 +2,12 @@ use glib::subclass::prelude::*;
22
33use super :: container:: ContainerImpl ;
44use BoxClass ;
5+ use ContainerClass ;
56
67pub trait BoxImpl : ContainerImpl + ' static { }
78
89unsafe impl < T : ObjectSubclass + BoxImpl > IsSubclassable < T > for BoxClass {
9- fn override_vfuncs ( & mut self ) { }
10+ fn override_vfuncs ( & mut self ) {
11+ <ContainerClass as IsSubclassable < T > >:: override_vfuncs ( self ) ;
12+ }
1013}
Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ use super::widget::WidgetImpl;
88use Container ;
99use ContainerClass ;
1010use Widget ;
11+ use WidgetClass ;
1112use WidgetPath ;
1213
1314pub trait ContainerImpl : ContainerImplExt + WidgetImpl + ' static {
@@ -99,6 +100,7 @@ impl<T: ContainerImpl + ObjectImpl> ContainerImplExt for T {
99100
100101unsafe impl < T : ObjectSubclass + ContainerImpl > IsSubclassable < T > for ContainerClass {
101102 fn override_vfuncs ( & mut self ) {
103+ <WidgetClass as IsSubclassable < T > >:: override_vfuncs ( self ) ;
102104 unsafe {
103105 let klass = & mut * ( self as * mut Self as * mut gtk_sys:: GtkContainerClass ) ;
104106 klass. add = Some ( container_add :: < T > ) ;
Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ use super::window::WindowImpl;
88use Dialog ;
99use DialogClass ;
1010use ResponseType ;
11+ use WindowClass ;
1112
1213pub trait DialogImpl : DialogImplExt + WindowImpl + ' static {
1314 fn response ( & self , dialog : & Dialog , response : ResponseType ) {
@@ -50,6 +51,7 @@ impl<T: DialogImpl + ObjectImpl> DialogImplExt for T {
5051
5152unsafe impl < T : ObjectSubclass + DialogImpl > IsSubclassable < T > for DialogClass {
5253 fn override_vfuncs ( & mut self ) {
54+ <WindowClass as IsSubclassable < T > >:: override_vfuncs ( self ) ;
5355 unsafe {
5456 let klass = & mut * ( self as * mut Self as * mut gtk_sys:: GtkDialogClass ) ;
5557 klass. response = Some ( dialog_response :: < T > ) ;
Original file line number Diff line number Diff line change 11use glib:: subclass:: prelude:: * ;
22
33use super :: container:: ContainerImpl ;
4+ use ContainerClass ;
45use HeaderBarClass ;
56
67pub trait HeaderBarImpl : ContainerImpl + ' static { }
78
89unsafe impl < T : ObjectSubclass + HeaderBarImpl > IsSubclassable < T > for HeaderBarClass {
9- fn override_vfuncs ( & mut self ) { }
10+ fn override_vfuncs ( & mut self ) {
11+ <ContainerClass as IsSubclassable < T > >:: override_vfuncs ( self ) ;
12+ }
1013}
Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ use gtk_sys;
33use glib:: translate:: * ;
44
55use glib:: subclass:: prelude:: * ;
6+ use glib:: ObjectClass ;
67
78use crate :: DragResult ;
89use crate :: SelectionData ;
@@ -292,6 +293,7 @@ impl<T: WidgetImpl + ObjectImpl> WidgetImplExt for T {
292293
293294unsafe impl < T : ObjectSubclass + WidgetImpl > IsSubclassable < T > for WidgetClass {
294295 fn override_vfuncs ( & mut self ) {
296+ <ObjectClass as IsSubclassable < T > >:: override_vfuncs ( self ) ;
295297 unsafe {
296298 let klass = & mut * ( self as * mut Self as * mut gtk_sys:: GtkWidgetClass ) ;
297299 // klass.can_activate_accel = Some(widget_can_activate_accel::<T>);
Original file line number Diff line number Diff line change @@ -5,6 +5,7 @@ use glib::translate::*;
55use glib:: subclass:: prelude:: * ;
66
77use super :: bin:: BinImpl ;
8+ use BinClass ;
89use Window ;
910use WindowClass ;
1011
@@ -97,6 +98,7 @@ impl<T: WindowImpl + ObjectImpl> WindowImplExt for T {
9798
9899unsafe impl < T : ObjectSubclass + WindowImpl > IsSubclassable < T > for WindowClass {
99100 fn override_vfuncs ( & mut self ) {
101+ <BinClass as IsSubclassable < T > >:: override_vfuncs ( self ) ;
100102 unsafe {
101103 let klass = & mut * ( self as * mut Self as * mut gtk_sys:: GtkWindowClass ) ;
102104 klass. activate_focus = Some ( window_activate_focus :: < T > ) ;
You can’t perform that action at this time.
0 commit comments