def __init__(self, parent, index): self.index = index if index: self.key = Option.SECONDARY_JOYSTICK else: self.key = Option.PRIMARY_JOYSTICK fsui.Group.__init__(self, parent) self.layout = fsui.HorizontalLayout() devices = ["", get_keyboard_title()] # for i, name in enumerate(DeviceManager.get_joystick_names()): # devices.append(name) for device_name in DeviceManager.get_joystick_names(): if DeviceManager.is_joystick(device_name): devices.append(device_name) self.device_choice = fsui.ComboBox(self, devices) self.layout.add(self.device_choice, expand=True) # Config.add_listener(self) self.initialize_from_settings() self.set_settings_handlers()
def __init__(self, parent, port, autofire_button=True): self.port = port self.device_option_key = "joystick_port_{0}".format(port) self.mode_option_key = "joystick_port_{0}_mode".format(port) self.autofire_mode_option_key = "joystick_port_{0}_autofire".format( port) fsui.Group.__init__(self, parent) self.layout = fsui.HorizontalLayout() self.joystick_mode_values = [ "nothing", "mouse", "joystick", "cd32 gamepad" ] self.joystick_mode_titles = [ gettext("No Amiga Device"), gettext("Amiga Mouse"), gettext("Amiga Joystick"), gettext("CD32 Pad") ] self.mode_choice = fsui.Choice(self, self.joystick_mode_titles) AmigaEnableBehavior(self.mode_choice) self.layout.add(self.mode_choice) self.layout.add_spacer(10) # else: # self.mode_choice = None if port >= 4: self.mode_choice.disable() # devices = ["", _("No Host Device"), _("Mouse"), # _("Cursor Keys and Right Ctrl/Alt")] # for i, name in enumerate(DeviceManager.get_joystick_names()): # devices.append(name) # if not self.joystick_values_initialized: # self.joystick_values.append(DeviceManager.device_ids[i]) # self.joystick_values_initialized = True self.device_choice = fsui.ComboBox(self, [""], read_only=True) AmigaEnableBehavior(self.device_choice) self.joystick_values = [] self.rebuild_device_list() self.device_choice.set_index(0) # print(self.device_choice.get_index()) self.layout.add(self.device_choice, expand=True) if port < 4 and autofire_button: self.autofire_button = IconButton(self, "16/lightning_off.png") self.autofire_button.activated.connect(self.on_autofire_button) self.layout.add(self.autofire_button, margin_left=10) else: self.autofire_button = None if port == 4: self.help_button = HelpButton( self, "https://fs-uae.net/custom-joystick-port") self.layout.add(self.help_button, margin_left=10) self.initialize_from_config() self.set_config_handlers()