test_class.declarator: mockGazePlay
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private GazePlay mockGazePlay;
test_class.type: GazePlay
test_class.var_name: mockGazePlay
test_class.declarator: mockTranslator
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private Translator mockTranslator;
test_class.type: Translator
test_class.var_name: mockTranslator
test_class.declarator: mockConfig
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private Configuration mockConfig;
test_class.type: Configuration
test_class.var_name: mockConfig
test_class.declarator: mockContext
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private ConfigurationContext mockContext;
test_class.type: ConfigurationContext
test_class.var_name: mockContext
test_class.file: gazeplay-core/src/test/java/net/gazeplay/ui/scenes/configuration/ConfigurationContextTest.java
test_class.identifier: ConfigurationContextTest
test_case.body: @Test
      void shouldCreateThemeChooserNonDefault() {
          StringProperty cssFileProperty = new SimpleStringProperty("builtin:BLUE");
          ObservableList<String> stylesheets = FXCollections.observableArrayList();
          Scene mockScene = mock(Scene.class);
  
          when(mockConfig.getCssFile()).thenReturn("builtin:BLUE");
          when(mockConfig.getCssfileProperty()).thenReturn(cssFileProperty);
          when(mockContext.getGazePlay()).thenReturn(mockGazePlay);
          when(mockGazePlay.getPrimaryScene()).thenReturn(mockScene);
          when(mockScene.getStylesheets()).thenReturn(stylesheets);
  
          ChoiceBox<BuiltInUiTheme> result = ConfigurationContext.buildStyleThemeChooser(mockConfig, mockContext);
  
          assertEquals(BuiltInUiTheme.values().length, result.getItems().size());
          assertEquals(BuiltInUiTheme.BLUE, result.getValue());
          assertEquals(cssFileProperty.getValue(), "builtin:BLUE");
  
          result.setValue(BuiltInUiTheme.GREEN);
  
          assertEquals(BuiltInUiTheme.GREEN, result.getValue());
          assertEquals(cssFileProperty.getValue(), "builtin:GREEN");
      }
test_case.class_method_signature: ConfigurationContextTest.shouldCreateThemeChooserNonDefault()
test_case.full_signature: @Test void shouldCreateThemeChooserNonDefault()
test_case.identifier: shouldCreateThemeChooserNonDefault
test_case.invocations: observableArrayList mock thenReturn when getCssFile thenReturn when getCssfileProperty thenReturn when getGazePlay thenReturn when getPrimaryScene thenReturn when getStylesheets buildStyleThemeChooser assertEquals values size getItems assertEquals getValue assertEquals getValue setValue assertEquals getValue assertEquals getValue
test_case.modifiers: @Test
test_case.parameters: ()
test_case.return: void
test_case.signature: void shouldCreateThemeChooserNonDefault()
focal_class.declarator: COLON = "Colon"
focal_class.modifier: private static final
focal_class.original_string: private static final String COLON = "Colon";
focal_class.type: String
focal_class.var_name: COLON
focal_class.declarator: PREF_WIDTH = 200
focal_class.modifier: private static final
focal_class.original_string: private static final double PREF_WIDTH = 200;
focal_class.type: double
focal_class.var_name: PREF_WIDTH
focal_class.declarator: PREF_HEIGHT = 25
focal_class.modifier: private static final
focal_class.original_string: private static final double PREF_HEIGHT = 25;
focal_class.type: double
focal_class.var_name: PREF_HEIGHT
focal_class.declarator: currentLanguageAlignmentIsLeftAligned
focal_class.modifier: private final
focal_class.original_string: private final boolean currentLanguageAlignmentIsLeftAligned;
focal_class.type: boolean
focal_class.var_name: currentLanguageAlignmentIsLeftAligned
focal_class.file: gazeplay-core/src/main/java/net/gazeplay/ui/scenes/configuration/ConfigurationContext.java
focal_class.identifier: ConfigurationContext
focal_class.class_method_signature: ConfigurationContext.ConfigurationContext(GazePlay gazePlay)
focal_class.full_signature:   ConfigurationContext(GazePlay gazePlay)
focal_class.identifier: ConfigurationContext
focal_class.parameters: (GazePlay gazePlay)
focal_class.signature:  ConfigurationContext(GazePlay gazePlay)
focal_class.class_method_signature: ConfigurationContext.createHomeButtonInConfigurationManagementScreen(@NonNull GazePlay gazePlay)
focal_class.full_signature:  HomeButton createHomeButtonInConfigurationManagementScreen(@NonNull GazePlay gazePlay)
focal_class.identifier: createHomeButtonInConfigurationManagementScreen
focal_class.parameters: (@NonNull GazePlay gazePlay)
focal_class.return: HomeButton
focal_class.signature: HomeButton createHomeButtonInConfigurationManagementScreen(@NonNull GazePlay gazePlay)
focal_class.class_method_signature: ConfigurationContext.getChildren()
focal_class.full_signature: @Override public ObservableList<Node> getChildren()
focal_class.identifier: getChildren
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: ObservableList<Node>
focal_class.signature: ObservableList<Node> getChildren()
focal_class.class_method_signature: ConfigurationContext.buildConfigGridPane(ConfigurationContext configurationContext, Translator translator)
focal_class.full_signature:  GridPane buildConfigGridPane(ConfigurationContext configurationContext, Translator translator)
focal_class.identifier: buildConfigGridPane
focal_class.parameters: (ConfigurationContext configurationContext, Translator translator)
focal_class.return: GridPane
focal_class.signature: GridPane buildConfigGridPane(ConfigurationContext configurationContext, Translator translator)
focal_class.class_method_signature: ConfigurationContext.addCategoryTitle(GridPane grid, AtomicInteger currentFormRow, I18NText label)
focal_class.full_signature:  void addCategoryTitle(GridPane grid, AtomicInteger currentFormRow, I18NText label)
focal_class.identifier: addCategoryTitle
focal_class.parameters: (GridPane grid, AtomicInteger currentFormRow, I18NText label)
focal_class.return: void
focal_class.signature: void addCategoryTitle(GridPane grid, AtomicInteger currentFormRow, I18NText label)
focal_class.class_method_signature: ConfigurationContext.addSubCategoryTitle(GridPane grid, AtomicInteger currentFormRow, I18NText label)
focal_class.full_signature:  void addSubCategoryTitle(GridPane grid, AtomicInteger currentFormRow, I18NText label)
focal_class.identifier: addSubCategoryTitle
focal_class.parameters: (GridPane grid, AtomicInteger currentFormRow, I18NText label)
focal_class.return: void
focal_class.signature: void addSubCategoryTitle(GridPane grid, AtomicInteger currentFormRow, I18NText label)
focal_class.class_method_signature: ConfigurationContext.addToGrid(GridPane grid, AtomicInteger currentFormRow, I18NText label, final Node input)
focal_class.full_signature:  void addToGrid(GridPane grid, AtomicInteger currentFormRow, I18NText label, final Node input)
focal_class.identifier: addToGrid
focal_class.parameters: (GridPane grid, AtomicInteger currentFormRow, I18NText label, final Node input)
focal_class.return: void
focal_class.signature: void addToGrid(GridPane grid, AtomicInteger currentFormRow, I18NText label, final Node input)
focal_class.class_method_signature: ConfigurationContext.buildSpinner(
          double min,
          double max,
          double initialValue,
          double step,
          Property<Number> configProperty
      )
focal_class.full_signature: static Spinner<Double> buildSpinner(
          double min,
          double max,
          double initialValue,
          double step,
          Property<Number> configProperty
      )
focal_class.identifier: buildSpinner
focal_class.modifiers: static
focal_class.parameters: (
          double min,
          double max,
          double initialValue,
          double step,
          Property<Number> configProperty
      )
focal_class.return: Spinner<Double>
focal_class.signature: Spinner<Double> buildSpinner(
          double min,
          double max,
          double initialValue,
          double step,
          Property<Number> configProperty
      )
focal_class.class_method_signature: ConfigurationContext.buildStyleThemeChooser(Configuration configuration, ConfigurationContext configurationContext)
focal_class.full_signature: static ChoiceBox<BuiltInUiTheme> buildStyleThemeChooser(Configuration configuration, ConfigurationContext configurationContext)
focal_class.identifier: buildStyleThemeChooser
focal_class.modifiers: static
focal_class.parameters: (Configuration configuration, ConfigurationContext configurationContext)
focal_class.return: ChoiceBox<BuiltInUiTheme>
focal_class.signature: ChoiceBox<BuiltInUiTheme> buildStyleThemeChooser(Configuration configuration, ConfigurationContext configurationContext)
focal_class.class_method_signature: ConfigurationContext.buildStyleFileChooser(Configuration configuration,
                                                  ConfigurationContext configurationContext)
focal_class.full_signature: private static Button buildStyleFileChooser(Configuration configuration,
                                                  ConfigurationContext configurationContext)
focal_class.identifier: buildStyleFileChooser
focal_class.modifiers: private static
focal_class.parameters: (Configuration configuration,
                                                  ConfigurationContext configurationContext)
focal_class.return: Button
focal_class.signature: Button buildStyleFileChooser(Configuration configuration,
                                                  ConfigurationContext configurationContext)
focal_class.class_method_signature: ConfigurationContext.buildImageChooser(Configuration configuration,
                                     ConfigurationContext configurationContext,
                                     Translator translator)
focal_class.full_signature: private Node buildImageChooser(Configuration configuration,
                                     ConfigurationContext configurationContext,
                                     Translator translator)
focal_class.identifier: buildImageChooser
focal_class.modifiers: private
focal_class.parameters: (Configuration configuration,
                                     ConfigurationContext configurationContext,
                                     Translator translator)
focal_class.return: Node
focal_class.signature: Node buildImageChooser(Configuration configuration,
                                     ConfigurationContext configurationContext,
                                     Translator translator)
focal_class.class_method_signature: ConfigurationContext.buildDirectoryChooser(
          Configuration configuration,
          ConfigurationContext configurationContext,
          Translator translator,
          DirectoryType type
      )
focal_class.full_signature:  Node buildDirectoryChooser(
          Configuration configuration,
          ConfigurationContext configurationContext,
          Translator translator,
          DirectoryType type
      )
focal_class.identifier: buildDirectoryChooser
focal_class.parameters: (
          Configuration configuration,
          ConfigurationContext configurationContext,
          Translator translator,
          DirectoryType type
      )
focal_class.return: Node
focal_class.signature: Node buildDirectoryChooser(
          Configuration configuration,
          ConfigurationContext configurationContext,
          Translator translator,
          DirectoryType type
      )
focal_class.class_method_signature: ConfigurationContext.buildLanguageChooser(
          Configuration configuration,
          ConfigurationContext configurationContext
      )
focal_class.full_signature:  MenuButton buildLanguageChooser(
          Configuration configuration,
          ConfigurationContext configurationContext
      )
focal_class.identifier: buildLanguageChooser
focal_class.parameters: (
          Configuration configuration,
          ConfigurationContext configurationContext
      )
focal_class.return: MenuButton
focal_class.signature: MenuButton buildLanguageChooser(
          Configuration configuration,
          ConfigurationContext configurationContext
      )
focal_class.class_method_signature: ConfigurationContext.buildEyeTrackerConfigChooser(Configuration configuration)
focal_class.full_signature: static ChoiceBox<EyeTracker> buildEyeTrackerConfigChooser(Configuration configuration)
focal_class.identifier: buildEyeTrackerConfigChooser
focal_class.modifiers: static
focal_class.parameters: (Configuration configuration)
focal_class.return: ChoiceBox<EyeTracker>
focal_class.signature: ChoiceBox<EyeTracker> buildEyeTrackerConfigChooser(Configuration configuration)
focal_class.class_method_signature: ConfigurationContext.findSelectedEyeTracker(Configuration configuration)
focal_class.full_signature: private static EyeTracker findSelectedEyeTracker(Configuration configuration)
focal_class.identifier: findSelectedEyeTracker
focal_class.modifiers: private static
focal_class.parameters: (Configuration configuration)
focal_class.return: EyeTracker
focal_class.signature: EyeTracker findSelectedEyeTracker(Configuration configuration)
focal_class.class_method_signature: ConfigurationContext.buildCheckBox(BooleanProperty selectionProperty)
focal_class.full_signature: static CheckBox buildCheckBox(BooleanProperty selectionProperty)
focal_class.identifier: buildCheckBox
focal_class.modifiers: static
focal_class.parameters: (BooleanProperty selectionProperty)
focal_class.return: CheckBox
focal_class.signature: CheckBox buildCheckBox(BooleanProperty selectionProperty)
focal_class.class_method_signature: ConfigurationContext.buildBackgroundStyleToggleGroup(
          Configuration configuration,
          Translator translator
      )
focal_class.full_signature: private HBox buildBackgroundStyleToggleGroup(
          Configuration configuration,
          Translator translator
      )
focal_class.identifier: buildBackgroundStyleToggleGroup
focal_class.modifiers: private
focal_class.parameters: (
          Configuration configuration,
          Translator translator
      )
focal_class.return: HBox
focal_class.signature: HBox buildBackgroundStyleToggleGroup(
          Configuration configuration,
          Translator translator
      )
focal_class.class_method_signature: ConfigurationContext.buildGazeMenu(Configuration configuration)
focal_class.full_signature: private static CheckBox buildGazeMenu(Configuration configuration)
focal_class.identifier: buildGazeMenu
focal_class.modifiers: private static
focal_class.parameters: (Configuration configuration)
focal_class.return: CheckBox
focal_class.signature: CheckBox buildGazeMenu(Configuration configuration)
focal_class.class_method_signature: ConfigurationContext.buildGameButtonOrientationChooser(
          Configuration configuration
      )
focal_class.full_signature: static ChoiceBox<GameButtonOrientation> buildGameButtonOrientationChooser(
          Configuration configuration
      )
focal_class.identifier: buildGameButtonOrientationChooser
focal_class.modifiers: static
focal_class.parameters: (
          Configuration configuration
      )
focal_class.return: ChoiceBox<GameButtonOrientation>
focal_class.signature: ChoiceBox<GameButtonOrientation> buildGameButtonOrientationChooser(
          Configuration configuration
      )
focal_class.class_method_signature: ConfigurationContext.changeMusicFolder(final String newMusicFolder, Configuration config)
focal_class.full_signature: static void changeMusicFolder(final String newMusicFolder, Configuration config)
focal_class.identifier: changeMusicFolder
focal_class.modifiers: static
focal_class.parameters: (final String newMusicFolder, Configuration config)
focal_class.return: void
focal_class.signature: void changeMusicFolder(final String newMusicFolder, Configuration config)
focal_class.class_method_signature: ConfigurationContext.setupNewMusicFolder(File gazePlayMusicFolder, String defaultSong)
focal_class.full_signature: static void setupNewMusicFolder(File gazePlayMusicFolder, String defaultSong)
focal_class.identifier: setupNewMusicFolder
focal_class.modifiers: static
focal_class.parameters: (File gazePlayMusicFolder, String defaultSong)
focal_class.return: void
focal_class.signature: void setupNewMusicFolder(File gazePlayMusicFolder, String defaultSong)
focal_class.class_method_signature: ConfigurationContext.findSelectedGameButtonOrientation(Configuration configuration)
focal_class.full_signature: private static GameButtonOrientation findSelectedGameButtonOrientation(Configuration configuration)
focal_class.identifier: findSelectedGameButtonOrientation
focal_class.modifiers: private static
focal_class.parameters: (Configuration configuration)
focal_class.return: GameButtonOrientation
focal_class.signature: GameButtonOrientation findSelectedGameButtonOrientation(Configuration configuration)
focal_class.class_method_signature: ConfigurationContext.buildQuitKeyChooser(
          Configuration configuration
      )
focal_class.full_signature:  ChoiceBox<String> buildQuitKeyChooser(
          Configuration configuration
      )
focal_class.identifier: buildQuitKeyChooser
focal_class.parameters: (
          Configuration configuration
      )
focal_class.return: ChoiceBox<String>
focal_class.signature: ChoiceBox<String> buildQuitKeyChooser(
          Configuration configuration
      )
focal_class.class_method_signature: ConfigurationContext.buildHeatMapOpacityChoiceBox(Configuration config)
focal_class.full_signature:  ChoiceBox<Double> buildHeatMapOpacityChoiceBox(Configuration config)
focal_class.identifier: buildHeatMapOpacityChoiceBox
focal_class.parameters: (Configuration config)
focal_class.return: ChoiceBox<Double>
focal_class.signature: ChoiceBox<Double> buildHeatMapOpacityChoiceBox(Configuration config)
focal_class.class_method_signature: ConfigurationContext.fillHBoxWithColorPickers(HBox hbox, Configuration config)
focal_class.full_signature: private void fillHBoxWithColorPickers(HBox hbox, Configuration config)
focal_class.identifier: fillHBoxWithColorPickers
focal_class.modifiers: private
focal_class.parameters: (HBox hbox, Configuration config)
focal_class.return: void
focal_class.signature: void fillHBoxWithColorPickers(HBox hbox, Configuration config)
focal_class.class_method_signature: ConfigurationContext.buildHeatMapColorHBox(Configuration config, Translator translator)
focal_class.full_signature:  HBox buildHeatMapColorHBox(Configuration config, Translator translator)
focal_class.identifier: buildHeatMapColorHBox
focal_class.parameters: (Configuration config, Translator translator)
focal_class.return: HBox
focal_class.signature: HBox buildHeatMapColorHBox(Configuration config, Translator translator)
focal_class.class_method_signature: ConfigurationContext.buildLimiterTime(Configuration config, Translator translator)
focal_class.full_signature: private HBox buildLimiterTime(Configuration config, Translator translator)
focal_class.identifier: buildLimiterTime
focal_class.modifiers: private
focal_class.parameters: (Configuration config, Translator translator)
focal_class.return: HBox
focal_class.signature: HBox buildLimiterTime(Configuration config, Translator translator)
focal_class.class_method_signature: ConfigurationContext.buildLimiterScore(Configuration config, Translator translator)
focal_class.full_signature: private HBox buildLimiterScore(Configuration config, Translator translator)
focal_class.identifier: buildLimiterScore
focal_class.modifiers: private
focal_class.parameters: (Configuration config, Translator translator)
focal_class.return: HBox
focal_class.signature: HBox buildLimiterScore(Configuration config, Translator translator)
focal_class.class_method_signature: ConfigurationContext.updateHeatMapColorProperty(HBox hbox, Configuration config)
focal_class.full_signature: private void updateHeatMapColorProperty(HBox hbox, Configuration config)
focal_class.identifier: updateHeatMapColorProperty
focal_class.modifiers: private
focal_class.parameters: (HBox hbox, Configuration config)
focal_class.return: void
focal_class.signature: void updateHeatMapColorProperty(HBox hbox, Configuration config)
focal_class.superclass: extends GraphicalContext<BorderPane>
focal_method.body: static ChoiceBox<BuiltInUiTheme> buildStyleThemeChooser(Configuration configuration, ConfigurationContext configurationContext) {
          ChoiceBox<BuiltInUiTheme> themesBox = new ChoiceBox<>();
  
          final String cssFile = configuration.getCssFile();
          themesBox.getItems().addAll(BuiltInUiTheme.values());
          Optional<BuiltInUiTheme> configuredTheme = BuiltInUiTheme.findFromConfigPropertyValue(cssFile);
          BuiltInUiTheme selected = configuredTheme.orElse(BuiltInUiTheme.DEFAULT_THEME);
  
          themesBox.setConverter(new StringConverter<>() {
              @Override
              public String toString(BuiltInUiTheme object) {
                  return object.getLabel();
              }
  
              @Override
              public BuiltInUiTheme fromString(String string) {
                  return null;
              }
          });
  
          themesBox.getSelectionModel().select(selected);
          themesBox.setPrefWidth(PREF_WIDTH);
          themesBox.setPrefHeight(PREF_HEIGHT);
  
          themesBox.getSelectionModel().selectedItemProperty().addListener((observable, oldValue, newValue) -> {
              String newPropertyValue = newValue.getPreferredConfigPropertyValue();
              configuration.getCssfileProperty().setValue(newPropertyValue);
              final GazePlay gazePlay = configurationContext.getGazePlay();
  
              CssUtil.setPreferredStylesheets(configuration, gazePlay.getPrimaryScene(), gazePlay.getCurrentScreenDimensionSupplier());
          });
  
          return themesBox;
      }
focal_method.class_method_signature: ConfigurationContext.buildStyleThemeChooser(Configuration configuration, ConfigurationContext configurationContext)
focal_method.full_signature: static ChoiceBox<BuiltInUiTheme> buildStyleThemeChooser(Configuration configuration, ConfigurationContext configurationContext)
focal_method.identifier: buildStyleThemeChooser
focal_method.invocations: getCssFile addAll getItems values findFromConfigPropertyValue orElse setConverter getLabel select getSelectionModel setPrefWidth setPrefHeight addListener selectedItemProperty getSelectionModel getPreferredConfigPropertyValue setValue getCssfileProperty getGazePlay setPreferredStylesheets getPrimaryScene getCurrentScreenDimensionSupplier
focal_method.modifiers: static
focal_method.parameters: (Configuration configuration, ConfigurationContext configurationContext)
focal_method.return: ChoiceBox<BuiltInUiTheme>
focal_method.signature: ChoiceBox<BuiltInUiTheme> buildStyleThemeChooser(Configuration configuration, ConfigurationContext configurationContext)