package _VisualDVM.GlobalData.CompilerOption.UI;
import Common.MainModule_;
import Common.Visual.Fonts.VisualiserFonts;
import Common.Visual.Tables.EditorDBObject;
import Common.Visual.UI;
import Common.Visual.Windows.Dialog.Text.ComboTextDialog;
import _VisualDVM.GlobalData.CompilerOption.CompilerOption;
public class CompilerOptionParameterValueEditor extends EditorDBObject<CompilerOption> {
    @Override
    public void Action() {
        if (value.hasParameter()) {
            setFont(MainModule_.instance.getUI().getTheme().Fonts.get(VisualiserFonts.Hyperlink));
            //-
            setText(value.parameterValue.isEmpty() ? "не задано" : value.parameterValue);
            //-
            ComboTextDialog dialog = new ComboTextDialog();
            if (!value.parameterValue.isEmpty())
                UI.TrySelect(dialog.fields, value.parameterValue);
            dialog.fields.setEditable(value.parameterVariants.isEmpty());
            if (dialog.ShowDialog("Изменить значение опции " + value.name,
                    value.parameterVariants)) {
                value.parameterValue = dialog.Result;
                setText(value.parameterValue.isEmpty() ? "не задано" : value.parameterValue);
            }
        } else {
            setFont(MainModule_.instance.getUI().getTheme().Fonts.get(VisualiserFonts.UnknownState));
            setText("нет");
        }
    }
    @Override
    public Object getCellEditorValue() {
        return value.parameterValue;
    }
}
