createGroupBox :: (Bool -> UIAction ()) -> UIAction GroupBox
createGroupBox event = liftIO $ mask_ $ do
    wrapped <- wrapToggled $ \b -> let UIAction action =
                                           event (if b /= 0
                                                   then True
                                                   else False)
                                    in insulateExceptions action
    GroupBox <$> (manageQObject =<<
                  createTrackedQObject =<<
                  create_groupbox wrapped)
createGroupBox :: (Bool -> UIAction ()) -> UIAction GroupBox
createGroupBox event = liftIO $ mask_ $ do
    wrapped <- wrapToggled $ \b -> let UIAction action =
                                           event (if b /= 0
                                                   then True
                                                   else False)
                                    in insulateExceptions action
    GroupBox <$> (manageQObject =<<
                  createTrackedQObject =<<
                  create_groupbox wrapped)
createGroupBox event = liftIO $ mask_ $ do
    wrapped <- wrapToggled $ \b -> let UIAction action =
                                           event (if b /= 0
                                                   then True
                                                   else False)
                                    in insulateExceptions action
    GroupBox <$> (manageQObject =<<
                  createTrackedQObject =<<
                  create_groupbox wrapped)