From be4f78978faba3d3ceb88df02a7f93a2e09ff1e0 Mon Sep 17 00:00:00 2001 From: Kenji Hosokawa Date: Tue, 3 Aug 2021 18:42:39 +0900 Subject: Initial commit Bug-AGL: SPEC-4033 Signed-off-by: Kenji Hosokawa --- .../ui/recordandplay/RBASimulationRecordPage.java | 50 ++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 rba.tool.editor.ui/src/rba/tool/editor/ui/recordandplay/RBASimulationRecordPage.java (limited to 'rba.tool.editor.ui/src/rba/tool/editor/ui/recordandplay/RBASimulationRecordPage.java') diff --git a/rba.tool.editor.ui/src/rba/tool/editor/ui/recordandplay/RBASimulationRecordPage.java b/rba.tool.editor.ui/src/rba/tool/editor/ui/recordandplay/RBASimulationRecordPage.java new file mode 100644 index 0000000..c55581d --- /dev/null +++ b/rba.tool.editor.ui/src/rba/tool/editor/ui/recordandplay/RBASimulationRecordPage.java @@ -0,0 +1,50 @@ +package rba.tool.editor.ui.recordandplay; + +import org.eclipse.core.runtime.preferences.InstanceScope; +import org.eclipse.jface.preference.DirectoryFieldEditor; +import org.eclipse.jface.preference.FieldEditorPreferencePage; +import org.eclipse.jface.preference.IPreferenceStore; +import org.eclipse.ui.IWorkbench; +import org.eclipse.ui.IWorkbenchPreferencePage; +import org.eclipse.ui.preferences.ScopedPreferenceStore; + +public class RBASimulationRecordPage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage { + + private DirectoryFieldEditor recordPathBrowser; + + private IPreferenceStore preferenceStore; + + private RBASimulationRecordSettingManager manager = RBASimulationRecordSettingManager.INSTANCE; + + private static final String DESCRIPTION = "RBA Simulation Record Path"; //$NON-NLS-1$ + + public RBASimulationRecordPage() { + super(GRID); + } + + @Override + protected void createFieldEditors() { + recordPathBrowser = new DirectoryFieldEditor("RbaToolRecordPath", "", getFieldEditorParent()); + addField(recordPathBrowser); + } + + @Override + public boolean performOk() { + manager.saveRecordFilePath(recordPathBrowser.getStringValue()); + return super.performOk(); + } + + @Override + public void init(IWorkbench workbench) { + setDescription(DESCRIPTION); + } + + @Override + public IPreferenceStore getPreferenceStore() { + if (preferenceStore == null) { + preferenceStore = new ScopedPreferenceStore(InstanceScope.INSTANCE, manager.ID_PREFERENCE_NODE); + } + return preferenceStore; + } + +} -- cgit 1.2.3-korg