Example #1
0
 def _cancel(self) -> None:
     from bastd.ui.settings import controls
     ba.containerwidget(edit=self._root_widget,
                        transition=self._transition_out)
     if self._is_main_menu:
         ba.app.main_menu_window = (controls.ControlsSettingsWindow(
             transition='in_left').get_root_widget())
Example #2
0
 def _do_controllers(self) -> None:
     # pylint: disable=cyclic-import
     from bastd.ui.settings import controls
     self._save_state()
     ba.containerwidget(edit=self._root_widget, transition='out_left')
     ba.app.main_menu_window = (controls.ControlsSettingsWindow(
         origin_widget=self._controllers_button).get_root_widget())
 def _back(self) -> None:
     from bastd.ui.settings import controls
     ba.containerwidget(edit=self._root_widget, transition='out_right')
     ba.app.ui.set_main_menu_window(
         controls.ControlsSettingsWindow(
             transition='in_left').get_root_widget())
     _ba.set_touchscreen_editing(False)
Example #4
0
 def _back(self) -> None:
     from bastd.ui.settings import controls
     _ba.release_gamepad_input()
     ba.containerwidget(edit=self._root_widget, transition='out_right')
     ba.app.ui.set_main_menu_window(
         controls.ControlsSettingsWindow(
             transition='in_left').get_root_widget())
Example #5
0
    def _save(self) -> None:
        from ba.internal import (serverput, get_input_device_config,
                                 get_input_map_hash, should_submit_debug_info)
        ba.containerwidget(edit=self._root_widget,
                           transition=self._transition_out)

        # If we're a secondary editor we just go away (we were editing our
        # parent's settings dict).
        if self._is_secondary:
            return

        assert self._settings is not None
        if self._input:
            dst = get_input_device_config(self._input, default=True)
            dst2: Dict[str, Any] = dst[0][dst[1]]
            dst2.clear()

            # Store any values that aren't -1.
            for key, val in list(self._settings.items()):
                if val != -1:
                    dst2[key] = val

            # If we're allowed to phone home, send this config so we can
            # generate more defaults in the future.
            inputhash = get_input_map_hash(self._input)
            if should_submit_debug_info():
                serverput(
                    'controllerConfig', {
                        'ua': ba.app.user_agent_string,
                        'b': ba.app.build_number,
                        'name': self._name,
                        'inputMapHash': inputhash,
                        'config': dst2,
                        'v': 2
                    })
            ba.app.config.apply_and_commit()
            ba.playsound(ba.getsound('gunCocking'))
        else:
            ba.playsound(ba.getsound('error'))

        if self._is_main_menu:
            from bastd.ui.settings import controls
            ba.app.main_menu_window = (controls.ControlsSettingsWindow(
                transition='in_left').get_root_widget())
Example #6
0
 def _ok() -> None:
     from bastd.ui.settings import controls
     ba.containerwidget(edit=dlg, transition='out_right')
     ba.app.main_menu_window = (controls.ControlsSettingsWindow(
         transition='in_left').get_root_widget())