вывод диалоговых форм для объектов в отдельный класс
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
package _VisualDVM.GlobalData.EnvironmentValue.UI;
|
||||
import Common.Utils.Utils_;
|
||||
import Common.Visual.UI;
|
||||
import Common.Visual.Windows.Dialog.DBObjectDialog;
|
||||
import _VisualDVM.Global;
|
||||
import _VisualDVM.GlobalData.EnvironmentValue.EnvironmentValue;
|
||||
import _VisualDVM.Utils;
|
||||
public class EnvironmentValueDialog extends DBObjectDialog<EnvironmentValue, EnvironmentValueFields> {
|
||||
public EnvironmentValueDialog() {
|
||||
super(EnvironmentValueFields.class);
|
||||
}
|
||||
@Override
|
||||
public void fillFields() {
|
||||
UI.TrySelect(fields.cbName, Result.name);
|
||||
fields.tfValue.setText(Result.value);
|
||||
}
|
||||
//https://javarush.ru/groups/posts/regulyarnye-vyrazheniya-v-java
|
||||
@Override
|
||||
public void validateFields() {
|
||||
String name = (String) fields.cbName.getSelectedItem();
|
||||
String value = fields.tfValue.getText();
|
||||
if (name.isEmpty())
|
||||
Log.Writeln("Имя переменной окружения не может быть пустым.");
|
||||
if (!name.matches("\\w*")) {
|
||||
Log.Writeln("Имя переменной окружения может содержать только латинские буквы, цифры и подчёркивания");
|
||||
}
|
||||
if (Utils.isLinuxSystemCommand(name))
|
||||
Log.Writeln(Utils_.DQuotes(name) + " является системной командой Linux,\nи не может быть задано в качестве имени переменной окружения.");
|
||||
if (value.contains("\"")) {
|
||||
Log.Writeln("Значение переменной окружения не может содержать двойные кавычки");
|
||||
}
|
||||
for (EnvironmentValue env : Global.mainModule.getDb().environmentValues.Data.values()) {
|
||||
if (
|
||||
Global.mainModule.getDb().environmentValues.getUI().isObjectVisible(env)
|
||||
&& (Result.id != env.id) && (env.name.equals(name))) {
|
||||
Log.Writeln("В конфигурации запуска уже задана переменная окружения с именем " + Utils_.Brackets(name));
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@Override
|
||||
public void ProcessResult() {
|
||||
Result.machine_id = Global.mainModule.getMachine().id;
|
||||
Result.run_configuration_id = Global.mainModule.getRunConfiguration().id;
|
||||
Result.name = (String) fields.cbName.getSelectedItem();
|
||||
Result.value = fields.tfValue.getText();
|
||||
}
|
||||
@Override
|
||||
public int getDefaultHeight() {
|
||||
return 200;
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,8 @@ import Common.Database.Tables.DataSet;
|
||||
import Common.MainModule_;
|
||||
import Common.Visual.DataSetControlForm;
|
||||
import Common.Visual.Menus.DataMenuBar;
|
||||
import Common.Visual.Windows.Dialog.DBObjectDialog;
|
||||
import Common.Visual.Windows.Dialog.DialogFields;
|
||||
import _VisualDVM.Current;
|
||||
import _VisualDVM.GlobalData.EnvironmentValue.EnvironmentValue;
|
||||
import _VisualDVM.Passes.PassCode;
|
||||
@@ -56,4 +58,8 @@ public class EnvironmentsValuesForm extends DataSetControlForm<EnvironmentValue>
|
||||
public boolean isObjectVisible(EnvironmentValue object) {
|
||||
return super.isObjectVisible(object) && MainModule_.instance.matchCurrentID(Current.RunConfiguration, object.run_configuration_id);
|
||||
}
|
||||
@Override
|
||||
public DBObjectDialog<EnvironmentValue, ? extends DialogFields> getDialog() {
|
||||
return new EnvironmentValueDialog();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user