pub fn size_policy(&self) -> SizePolicy {
        let (obj_data, funcs) = self.get_widget_obj_funcs();
        unsafe {
            let ret_val = ((*funcs).size_policy)(obj_data);
            let t = ret_val;
            let ret_val;
            if t.host_data != ::std::ptr::null() {
                ret_val = SizePolicy::new_from_rc(t);
            } else {
                ret_val = SizePolicy::new_from_owned(t);
            }
            ret_val
        }
    }
///
/// If there is a QLayout that manages this widget's children, the
/// size policy specified by that layout is used. If there is no such
/// QLayout, the result of this function is used.
///
/// The default policy is Preferred/Preferred, which means that the
/// widget can be freely resized, but prefers to be the size
/// sizeHint() returns. Button-like widgets set the size policy to
/// specify that they may stretch horizontally, but are fixed
/// vertically. The same applies to lineedit controls (such as
/// QLineEdit, QSpinBox or an editable QComboBox) and other
/// horizontally orientated widgets (such as QProgressBar).
/// QToolButton's are normally square, so they allow growth in both
/// directions. Widgets that support different directions (such as
/// QSlider, QScrollBar or QHeader) specify stretching in the
/// respective direction only. Widgets that can provide scroll bars
/// (usually subclasses of QScrollArea) tend to specify that they can
/// use additional space, and that they can make do with less than
/// sizeHint().
///
/// **See also:** [`size_hint()`]
/// [`Layout`]
/// [`SizePolicy`]
/// [`update_geometry()`]
If there is a QLayout that manages this widget's children, the
size policy specified by that layout is used. If there is no such
QLayout, the result of this function is used.

The default policy is Preferred/Preferred, which means that the
widget can be freely resized, but prefers to be the size
sizeHint() returns. Button-like widgets set the size policy to
specify that they may stretch horizontally, but are fixed
vertically. The same applies to lineedit controls (such as
QLineEdit, QSpinBox or an editable QComboBox) and other
horizontally orientated widgets (such as QProgressBar).
QToolButton's are normally square, so they allow growth in both
directions. Widgets that support different directions (such as
QSlider, QScrollBar or QHeader) specify stretching in the
respective direction only. Widgets that can provide scroll bars
(usually subclasses of QScrollArea) tend to specify that they can
use additional space, and that they can make do with less than
sizeHint().


If there is a QLayout that manages this widget ' s children the size policy specified by that layout is used . If there is no such QLayout the result of this function is used . The default policy is Preferred / Preferred which means that the widget can be freely resized but prefers to be the size sizeHint () returns . Button - like widgets set the size policy to specify that they may stretch horizontally but are fixed vertically . The same applies to lineedit controls ( such as QLineEdit QSpinBox or an editable QComboBox ) and other horizontally orientated widgets ( such as QProgressBar ) . QToolButton ' s are normally square so they allow growth in both directions . Widgets that support different directions ( such as QSlider QScrollBar or QHeader ) specify stretching in the respective direction only . Widgets that can provide scroll bars ( usually subclasses of QScrollArea ) tend to specify that they can use additional space and that they can make do with less than sizeHint () .
pub fn size_policy(&self) -> SizePolicy {
        let (obj_data, funcs) = self.get_widget_obj_funcs();
        unsafe {
            let ret_val = ((*funcs).size_policy)(obj_data);
            let t = ret_val;
            let ret_val;
            if t.host_data != ::std::ptr::null() {
                ret_val = SizePolicy::new_from_rc(t);
            } else {
                ret_val = SizePolicy::new_from_owned(t);
            }
            ret_val
        }
    }
pub fn size_policy ( & self ) -> SizePolicy { let ( obj_data , funcs ) = self . get_widget_obj_funcs ( ) ; unsafe { let ret_val = ( ( * funcs ) . size_policy ) ( obj_data ) ; let t = ret_val ; let ret_val ; if t . host_data != :: std :: ptr :: null ( ) { ret_val = SizePolicy :: new_from_rc ( t ) ; } else { ret_val = SizePolicy :: new_from_owned ( t ) ; } ret_val } }
If there is a QLayout that manages this widget's children, the
size policy specified by that layout is used.
If there is a QLayout that manages this widget ' s children the size policy specified by that layout is used .
&self
&self