/** * Returns the parameters introduced by user. * * @return Key-value map * @since 0.2.0 */ public Map<String, String> getRunnableParameters() { return new LinkedHashMap<String, String>(parametersPanel.getParameters()); }
@Override public void setEnabled(boolean enabled) { super.setEnabled(enabled); algorithmSelector.setEnabled(enabled); load.setEnabled(enabled); parametersPanel.setEnabled(enabled); fd.setActive(enabled); }
/** * Resets the data. * * @since 0.2.0 */ public void reset() { setParameters(new LinkedList<Triple<String, String, String>>()); }
/** * Default constructor. * * @since 0.2.0 */ public ParameterValueDescriptionPanel() { setLayout(new BorderLayout()); Object[][] data = {{null, null, null}}; TableModel model = new ClassAwareTableModelImpl(data, HEADER); table = new AdvancedJTable(model); table.setEnabled(false); haveData = false; add(new JScrollPane(table), BorderLayout.CENTER); File CURRENT_DIRECTORY = SystemUtils.getCurrentDir(); ALGORITHM_DIRECTORY = new File(CURRENT_DIRECTORY + SystemUtils.getDirectorySeparator() + "workspace"); ALGORITHM_DIRECTORY = ALGORITHM_DIRECTORY.isDirectory() ? ALGORITHM_DIRECTORY : CURRENT_DIRECTORY; algorithms = new LinkedHashMap<String, Pair<RunnableSelector, Integer>>(); }
addComboCellEditor(options, model.getRowCount() - 1, 1); continue; addCheckboxCellEditor(isSelected, model.getRowCount() - 1, 1); continue; } else if (defaultValue.startsWith("#file#")) addFileChooserCellEditor(model.getRowCount() - 1, 1, fileDefaultValue); continue; } else if (defaultValue.startsWith("#files#")) addFileMultiChooserCellEditor(model.getRowCount() - 1, 1, fileDefaultValue); continue; } else if (defaultValue.startsWith("#path#")) addPathChooserCellEditor(model.getRowCount() - 1, 1, fileDefaultValue); continue; RunnableSelector runnable = new RunnableSelector(runnableLabel, "File", runnableCodeType.getRunnableClass(), ALGORITHM_DIRECTORY, new ParameterValueDescriptionPanel()); runnable.setPreferredSize(new Dimension(640, 480)); algorithms.put(aux.getFirst() + "_file", Pair.of(runnable, model.getRowCount() - 3)); addActionCellEditor(model.getRowCount() - 3, 1);
tabbedPane.addTab("Check solvers", checkSolversPanel); ParameterValueDescriptionPanel generalParameterPanel = new ParameterValueDescriptionPanel(); pane_generalOptions.add(generalParameterPanel, BorderLayout.CENTER); generalParameterPanel.setParameters(net2planParameters); generalParameterPanel.setParameterValues(Configuration.getNet2PlanOptions()); generalParameterPanel.setParameters(net2planParameters); generalParameterPanel.setParameterValues(Configuration.getNet2PlanOptions()); ParameterValueDescriptionPanel parameterPanel = new ParameterValueDescriptionPanel(); parameterPanel.setParameters(parameters); parameterPanel.setParameterValues(instance.getCurrentOptions()); subTab.add(parameterPanel, BorderLayout.CENTER); tabbedPane.addTab(name, subTab);
ALGORITHMS_DIRECTORY = ALGORITHMS_DIRECTORY.isDirectory() ? ALGORITHMS_DIRECTORY : IGUIModule.CURRENT_DIR; eventProcessorPanel = new RunnableSelector(SimKernel.getEventProcessorLabel(), "File", simKernel.getEventProcessorClass(), ALGORITHMS_DIRECTORY, new ParameterValueDescriptionPanel()); simulationConfigurationPanel = new ParameterValueDescriptionPanel(); simulationConfigurationPanel.setParameters(simKernel.getSimulationParameters());
public OfflineExecutionPanel (GUINetworkDesign mainWindow) { super (); this.mainWindow = mainWindow; setLayout(new MigLayout("insets 0 0 0 0", "[grow]", "[grow]")); File ALGORITHMS_DIRECTORY = new File(IGUIModule.CURRENT_DIR + SystemUtils.getDirectorySeparator() + "workspace"); ALGORITHMS_DIRECTORY = ALGORITHMS_DIRECTORY.isDirectory() ? ALGORITHMS_DIRECTORY : IGUIModule.CURRENT_DIR; ParameterValueDescriptionPanel algorithmParameters = new ParameterValueDescriptionPanel(); algorithmSelector = new RunnableSelector("Algorithm", null, IAlgorithm.class, ALGORITHMS_DIRECTORY, algorithmParameters); algorithmController = new ThreadExecutionController(this); JPanel pnl_buttons = new JPanel(new MigLayout("", "[center, grow]", "[]")); btn_solve = new JButton("Execute"); pnl_buttons.add(btn_solve); btn_solve.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { algorithmController.execute(); } }); add(algorithmSelector, "grow"); add(pnl_buttons, "dock south"); }
ALGORITHMS_DIRECTORY = ALGORITHMS_DIRECTORY.isDirectory() ? ALGORITHMS_DIRECTORY : IGUIModule.CURRENT_DIR; eventGeneratorPanel = new RunnableSelector(SimKernel.getEventGeneratorLabel(), "File", simKernel.getEventGeneratorClass(), ALGORITHMS_DIRECTORY, new ParameterValueDescriptionPanel()); eventProcessorPanel = new RunnableSelector(SimKernel.getEventProcessorLabel(), "File", simKernel.getEventProcessorClass(), ALGORITHMS_DIRECTORY, new ParameterValueDescriptionPanel()); simulationConfigurationPanel = new ParameterValueDescriptionPanel(); simulationConfigurationPanel.setParameters(simKernel.getSimulationParameters());
ParameterValueDescriptionPanel reportParameters = new ParameterValueDescriptionPanel(); reportSelector = new RunnableSelector("Report", null, IReport.class, REPORTS_DIRECTORY, reportParameters); reportContainer = new JTabbedPane();
newOptions.putAll(pane.getParameters()); } catch (ClassCastException ignored)
public void simulationStateChanged(SimCore.SimState simulationState, Throwable reason) simulationConfigurationPanel.setEnabled(false); eventProcessorPanel.setEnabled(false);
@Override public void actionPerformed(ActionEvent e) { if (algorithmSelector.getItemCount() == 0 || algorithmSelector.getSelectedIndex() == -1) return; try { File fileName = new File(txt_file.getText()); String className = (String) ((StringLabeller) algorithmSelector.getSelectedItem()).getObject(); Class<? extends IExternal> _class = implementations.get(className); IExternal instance = ClassLoaderUtils.getInstance(fileName, className, _class , null); String aux_description = instance.getDescription() == null ? "No description" : instance.getDescription(); List<Triple<String, String, String>> aux_parameters = instance.getParameters() == null ? new LinkedList<>() : instance.getParameters(); ((Closeable) instance.getClass().getClassLoader()).close(); txt_description.setText(aux_description); if (!txt_description.getText().isEmpty()) txt_description.setCaretPosition(0); parametersPanel.setParameters(aux_parameters); } catch (Throwable ex) { ex.printStackTrace(); ErrorHandling.showErrorDialog("Error selecting " + label.toLowerCase(getLocale())); } } });
public void runSimulation(final boolean stepByStep) { try { if (simKernel.getSimCore().getSimulationState() == NOT_STARTED) { Map<String, String> simulationParameters = simulationConfigurationPanel.getParameters(); Map<String, String> net2planParameters = Configuration.getNet2PlanOptions();
@SuppressWarnings("deprecation") @Override public void simulationStateChanged(SimCore.SimState simulationState, Throwable reason) { simulationConfigurationPanel.setEnabled(false); eventGeneratorPanel.setEnabled(false); eventProcessorPanel.setEnabled(false); btn_reset.setEnabled(false); simulationConfigurationPanel.setEnabled(true); eventGeneratorPanel.setEnabled(true); eventProcessorPanel.setEnabled(true);