Beispiel #1
0
    def update_ui_state(self):
        show_advanced_options = self.check_show_advanced_options.isChecked()

        # version
        def cb_ruby_versions(versions):
            for version in versions:
                if version.executable == self.program.executable:
                    self.label_version.setText(version.version)
                    return

            self.label_version.setText('<unknown>')

        self.get_executable_versions('ruby', cb_ruby_versions)

        # start mode
        start_mode_api_name = self.program.cast_custom_option_value(
            'ruby.start_mode', str, '<unknown>')
        start_mode = Constants.get_ruby_start_mode(start_mode_api_name)
        start_mode_script_file = start_mode == Constants.RUBY_START_MODE_SCRIPT_FILE
        start_mode_command = start_mode == Constants.RUBY_START_MODE_COMMAND

        self.label_start_mode.setText(
            Constants.ruby_start_mode_display_names[start_mode])

        # script file
        self.label_script_file_title.setVisible(start_mode_script_file)
        self.label_script_file.setVisible(start_mode_script_file)
        self.label_script_file.setText(
            self.program.cast_custom_option_value('ruby.script_file', str,
                                                  '<unknown>'))

        # command
        self.label_command_title.setVisible(start_mode_command)
        self.label_command.setVisible(start_mode_command)
        self.label_command.setText(
            self.program.cast_custom_option_value('ruby.command', str,
                                                  '<unknown>'))

        # working directory
        self.label_working_directory_title.setVisible(show_advanced_options)
        self.label_working_directory.setVisible(show_advanced_options)
        self.label_working_directory.setText(self.program.working_directory)

        # options
        self.label_options_title.setVisible(show_advanced_options)
        self.label_options.setVisible(show_advanced_options)
        self.label_options.setText('\n'.join(
            self.program.cast_custom_option_value_list('ruby.options', str,
                                                       [])))
Beispiel #2
0
    def update_ui_state(self):
        show_advanced_options = self.check_show_advanced_options.isChecked()

        self.label_working_directory_title.setVisible(show_advanced_options)
        self.label_working_directory.setVisible(show_advanced_options)
        self.label_options_title.setVisible(show_advanced_options)
        self.label_options.setVisible(show_advanced_options)

        # version
        def cb_ruby_versions(versions):
            for version in versions:
                if version.executable == self.program.executable:
                    self.label_version.setText(version.version)
                    return

            self.label_version.setText('<unknown>')

        self.get_executable_versions('ruby', cb_ruby_versions)

        # start mode
        start_mode_api_name    = self.program.cast_custom_option_value('ruby.start_mode', unicode, '<unknown>')
        start_mode             = Constants.get_ruby_start_mode(start_mode_api_name)
        start_mode_script_file = start_mode == Constants.RUBY_START_MODE_SCRIPT_FILE
        start_mode_command     = start_mode == Constants.RUBY_START_MODE_COMMAND

        self.label_start_mode.setText(Constants.ruby_start_mode_display_names[start_mode])
        self.label_script_file_title.setVisible(start_mode_script_file)
        self.label_script_file.setVisible(start_mode_script_file)
        self.label_command_title.setVisible(start_mode_command)
        self.label_command.setVisible(start_mode_command)

        # script file
        self.label_script_file.setText(self.program.cast_custom_option_value('ruby.script_file', unicode, '<unknown>'))

        # command
        self.label_command.setText(self.program.cast_custom_option_value('ruby.command', unicode, '<unknown>'))

        # working directory
        self.label_working_directory.setText(self.program.working_directory)

        # options
        self.label_options.setText('\n'.join(self.program.cast_custom_option_value_list('ruby.options', unicode, [])))