def _next_controller_changed(self, old, new):

        if old is not None:
            old.on_trait_change(
                self._on_controller_complete, 'complete', remove=True
            )

        if new is not None:
            new.on_trait_change(
                self._on_controller_complete, 'complete'
            )

        self._update()

        return

    #### Dynamic ####
Rename 'group' option to 'groups' parameter name for better
dataset/ETHPy150Open enthought/pyface/pyface/wizard/chained_wizard_controller.py/ChainedWizardController._next_controller_changed--crossover with--dataset/ETHPy150Open openlmi/openlmi-scripts/commands/account/lmi/scripts/account/group_cmd.py/Lister.transform_options