qt-cb 0.1.6

Use closures in rust-qt!
Documentation
use crate::prelude::TextExt;
use crate::utils;
use qt_core::{QBox, SlotNoArgs, SlotOfBool};
use qt_widgets::{QTextBrowser, QTextEdit};

macro_rules! impl_ext {
    ($name: ident) => {
        impl TextExt for QBox<$name> {
            unsafe fn connect_redo_available<F: FnMut(&Self, bool) + 'static>(&self, mut cb: F) {
                utils::connect_1a!(self, redo_available, SlotOfBool, cb);
            }
            unsafe fn connect_selection_changed<F: FnMut(&Self) + 'static>(&self, mut cb: F) {
                utils::connect_0a!(self, selection_changed, cb);
            }
            unsafe fn connect_text_changed<F: FnMut(&Self) + 'static>(&self, mut cb: F) {
                utils::connect_0a!(self, text_changed, cb);
            }
            unsafe fn connect_undo_available<F: FnMut(&Self, bool) + 'static>(&self, mut cb: F) {
                utils::connect_1a!(self, undo_available, SlotOfBool, cb);
            }
        }
    };
}

impl_ext!(QTextEdit);
impl_ext!(QTextBrowser);