В настоящее время я создаю приложение, которое предназначено для некоторой обработки звука. Я делаю это в Java / Eclipse с SWT / Jface.
Сама обработка требует некоторых опций / свойств для алгоритма внутри. В настоящее время у меня есть файл .properties, который содержит все параметры, такие как:
trimLeadingSilence = 20
trimtrailingSilence = 20
trimhold = 5
fftFrameSize = 512
...
Я не хочу, чтобы пользователь редактировал эти параметры в текстовом редакторе, таком как notepad ++, но в графическом интерфейсе моего приложения.
Теперь я думаю о том, как это сделать. У меня есть 2 "идеи":
Создайте класс для каждого набора параметров и вручную запишите все эти скучные строки кода GUI. Как здесь только для одного варианта; -)
Spinner spinnerSilenceBack = new Spinner(shell, SWT.BORDER);
spinnerSilenceBack.setMinimum(0);
spinnerSilenceBack.setMaximum(200);
selection = Integer.valueOf(PropertyManager.getPropertyValue("trimming", "trailingSilence"));
spinnerSilenceBack.setSelection(selection);
spinnerSilenceBack.setIncrement(5);
spinnerSilenceBack.setPageIncrement(20);
spinnerSilenceBack.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
int selection = ((Spinner) e.getSource()).getSelection();
int digits = ((Spinner) e.getSource()).getDigits();
int result = (int) (selection / Math.pow(10, digits));
PropertyManager.setPropertyValue("trimming", "trailingSilence", String
.valueOf(result));
}
});
Это занимает много времени из-за того, что есть много разных опций. Поэтому я подумал о том, как я могу динамически создавать такой графический код или просто динамически создавать эти графические окна при запуске приложения. По крайней мере, мне понадобится файл конфигурации для «создателя графического интерфейса», но я не хочу изобретать такую вещь, поэтому я спрашиваю вас, ребята:)