pub fn redirected<P: PaintDeviceTrait<'a>, Q: PointTrait<'a>>(
        device: &P,
        offset: &Q,
    ) -> Option<PaintDevice<'a>> {
        let (obj_device_1, _funcs) = device.get_paint_device_obj_funcs();
        let (obj_offset_2, _funcs) = offset.get_point_obj_funcs();

        let (obj_data, funcs) = unsafe {
            (
                ::std::ptr::null(),
                (*((*rute_ffi_get()).get_painter)(::std::ptr::null()).all_funcs).painter_funcs,
            )
        };
        unsafe {
            let ret_val = ((*funcs).redirected)(obj_data, obj_device_1, obj_offset_2);
            if ret_val.qt_data == ::std::ptr::null() {
                return None;
            }
            let t = ret_val;
            let ret_val;
            if t.host_data != ::std::ptr::null() {
                ret_val = PaintDevice::new_from_rc(t);
            } else {
                ret_val = PaintDevice::new_from_owned(t);
            }
            Some(ret_val)
        }
    }
///
/// Using QWidget::render() obsoletes the use of this function.
///
/// Returns the replacement for given *device.* The optional out
/// parameter *offset* returns the offset within the replaced device.
///
/// **Warning**: Making use of redirections in the QPainter API implies
/// that QPainter::begin() and QPaintDevice destructors need to hold
/// a mutex for a short period. This can impact performance. Use of
/// QWidget::render is strongly encouraged.
///
/// **See also:** [`set_redirected()`]
/// [`restore_redirected()`]
Using QWidget::render() obsoletes the use of this function.
Returns the replacement for given *device.* The optional out
parameter *offset* returns the offset within the replaced device.

Warning**: Making use of redirections in the QPainter API implies
that QPainter::begin() and QPaintDevice destructors need to hold
a mutex for a short period. This can impact performance. Use of
QWidget::render is strongly encouraged.


Using QWidget :: render () obsoletes the use of this function . Returns the replacement for given * device . * The optional out parameter * offset * returns the offset within the replaced device . Warning ** : Making use of redirections in the QPainter API implies that QPainter :: begin () and QPaintDevice destructors need to hold a mutex for a short period . This can impact performance . Use of QWidget :: render is strongly encouraged .
pub fn redirected<P: PaintDeviceTrait<'a>, Q: PointTrait<'a>>(
        device: &P,
        offset: &Q,
    ) -> Option<PaintDevice<'a>> {
        let (obj_device_1, _funcs) = device.get_paint_device_obj_funcs();
        let (obj_offset_2, _funcs) = offset.get_point_obj_funcs();
        let (obj_data, funcs) = unsafe {
            (
                ::std::ptr::null(),
                (*((*rute_ffi_get()).get_painter)(::std::ptr::null()).all_funcs).painter_funcs,
            )
        };
        unsafe {
            let ret_val = ((*funcs).redirected)(obj_data, obj_device_1, obj_offset_2);
            if ret_val.qt_data == ::std::ptr::null() {
                return None;
            }
            let t = ret_val;
            let ret_val;
            if t.host_data != ::std::ptr::null() {
                ret_val = PaintDevice::new_from_rc(t);
            } else {
                ret_val = PaintDevice::new_from_owned(t);
            }
            Some(ret_val)
        }
    }
pub fn redirected < P : PaintDeviceTrait < ' a > , Q : PointTrait < ' a > > ( device : & P , offset : & Q , ) -> Option < PaintDevice < ' a > > { let ( obj_device_1 , _funcs ) = device . get_paint_device_obj_funcs ( ) ; let ( obj_offset_2 , _funcs ) = offset . get_point_obj_funcs ( ) ; let ( obj_data , funcs ) = unsafe { ( :: std :: ptr :: null ( ) , ( * ( ( * rute_ffi_get ( ) ) . get_painter ) ( :: std :: ptr :: null ( ) ) . all_funcs ) . painter_funcs , ) } ; unsafe { let ret_val = ( ( * funcs ) . redirected ) ( obj_data , obj_device_1 , obj_offset_2 ) ; if ret_val . qt_data == :: std :: ptr :: null ( ) { return None ; } let t = ret_val ; let ret_val ; if t . host_data != :: std :: ptr :: null ( ) { ret_val = PaintDevice :: new_from_rc ( t ) ; } else { ret_val = PaintDevice :: new_from_owned ( t ) ; } Some ( ret_val ) } }
Using QWidget::render() obsoletes the use of this function.
Using QWidget :: render () obsoletes the use of this function .
device
&P
offset
&Q
device
&P
offset
&Q