/* MP5ToolConfigDialog.java created 2008-02-15 * */ package org.signalml.app.method.mp5; import static org.signalml.app.util.i18n.SvarogI18n._; import java.awt.Window; import javax.swing.JComponent; import org.signalml.app.model.components.validation.ValidationErrors; import org.signalml.app.util.IconUtils; import org.signalml.app.view.common.dialogs.AbstractDialog; import org.signalml.plugin.export.SignalMLException; import org.springframework.validation.Errors; /** MP5ToolConfigDialog * * * @author Michal Dobaczewski © 2007-2008 CC Otwarte Systemy Komputerowe Sp. z o.o. */ public class MP5ToolConfigDialog extends AbstractDialog { private static final long serialVersionUID = 1L; private MP5ExecutorManager executorManager; private MP5LocalExecutorDialog localExecutorDialog; private MP5ToolConfigPanel configPanel; public MP5ToolConfigDialog() { super(); } public MP5ToolConfigDialog(Window w, boolean isModal) { super(w, isModal); } @Override protected void initialize() { setTitle(_("MP5 configuration")); setIconImage(IconUtils.loadClassPathImage(MP5MethodDescriptor.ICON_PATH)); setResizable(false); super.initialize(); } @Override public JComponent createInterface() { return getConfigPanel(); } public MP5ToolConfigPanel getConfigPanel() { if (configPanel == null) { configPanel = new MP5ToolConfigPanel(executorManager); configPanel.setLocalExecutorDialog(localExecutorDialog); } return configPanel; } @Override public void fillDialogFromModel(Object model) throws SignalMLException { // nothing to do } @Override public void fillModelFromDialog(Object model) throws SignalMLException { // nothing to do } @Override public void validateDialog(Object model, ValidationErrors errors) throws SignalMLException { super.validateDialog(model, errors); if (!errors.hasErrors()) { int executorCount = executorManager.getExecutorCount(); if (executorCount == 0) { errors.addError(_("You must configure at least one executor")); } } } @Override public boolean supportsModelClass(Class<?> clazz) { return (clazz == null); } public MP5ExecutorManager getExecutorManager() { return executorManager; } public void setExecutorManager(MP5ExecutorManager executorManager) { this.executorManager = executorManager; } public MP5LocalExecutorDialog getLocalExecutorDialog() { return localExecutorDialog; } public void setLocalExecutorDialog(MP5LocalExecutorDialog localExecutorDialog) { this.localExecutorDialog = localExecutorDialog; } }