@Inject @Optional private void whenEnvironmentsWereLoaded( @UIEventTopic(RobotProjectConfigEvents.ROBOT_CONFIG_ENV_LOADED) final Environments envs) { final List<RobotRuntimeEnvironment> allEnvironments = envs.getAllEnvironments(); final RobotRuntimeEnvironment env = envs.getActiveEnvironment(); final RobotProjectConfig configuration = editorInput.getProjectConfiguration(); final boolean isEditable = editorInput.isEditable(); if (viewer.getTable() == null || viewer.getTable().isDisposed()) { return; } final boolean isUsingPrefs = configuration.usesPreferences(); sourceButton.setEnabled(isEditable); viewer.setInput(allEnvironments); if (env != null) { viewer.setCheckedElements(new Object[] {env}); } viewer.getTable().setEnabled(isEditable && !isUsingPrefs); viewer.refresh(); if (env == null) { currentFramework.setText(createCurrentFrameworkText("unknown"), true, true); } else { final String activeText = createActiveFrameworkText(env, isUsingPrefs); currentFramework.setText(createCurrentFrameworkText(activeText), true, true); } currentFramework.getParent().layout(); }
@Inject @Optional private void whenEnvironmentLoadingStarted( @UIEventTopic(RobotProjectConfigEvents.ROBOT_CONFIG_ENV_LOADING_STARTED) final RobotProjectConfig config) { currentFramework.setText("", false, false); sourceButton.setEnabled(false); viewer.getTable().setEnabled(false); sourceButton.setSelection(!editorInput.getProjectConfiguration().usesPreferences()); }