public void actionPerformed(ActionEvent e) { Operator selectedOperator = this.actions.getSelectedOperator(); if (selectedOperator != null) { NewBuildingBlockDialog dialog = new NewBuildingBlockDialog(); dialog.setVisible(true); if (dialog.isOk()) { try { BuildingBlock buildingBlock = dialog.getSelectedBuildingBlock(); if (buildingBlock != null) { String xmlDescription = buildingBlock.getXML(); try { InputSource source = new InputSource(new StringReader(xmlDescription)); Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(source); Element element = document.getDocumentElement(); Operator operator = Operator.createFromXML( element, actions.getProcess(), new LinkedList<UnknownParameterInformation>(), null, XMLImporter.CURRENT_VERSION); operator.setUserDescription(buildingBlock.getDescription()); actions.insert(Collections.singletonList(operator)); } catch (Exception ex) { SwingTools.showSimpleErrorMessage( "cannot_instantiate_building_block", ex, buildingBlock.getName()); } } } catch (Exception ex) { SwingTools.showSimpleErrorMessage("cannot_instantiate_building_block", ex); } } } }
@Override public void actionPerformed(ActionEvent e) { String loc = RepositoryLocationChooser.selectLocation( lastLocation, "", RapidMinerGUI.getMainFrame(), true, false, true, true, true); if (loc != null) { RepositoryLocation location; try { location = new RepositoryLocation(loc); } catch (Exception ex) { SwingTools.showSimpleErrorMessage("malformed_rep_location", ex, loc); return; } try { if (location.locateEntry() != null) { // overwrite? if (SwingTools.showConfirmDialog("overwrite", ConfirmDialog.YES_NO_OPTION, location) != ConfirmDialog.YES_OPTION) { return; } } RepositoryManager.getInstance(null).store(object, location, null); lastLocation = location; } catch (RepositoryException ex) { SwingTools.showSimpleErrorMessage("cannot_store_obj_at_location", ex, loc); } } }
@Override public void valueForPathChanged(TreePath path, Object newValue) { try { ((Entry) path.getLastPathComponent()).rename(newValue.toString()); } catch (Exception e) { SwingTools.showSimpleErrorMessage("error_rename", e, e.toString()); } }
@Override public void save(BlobEntry entry) { try { save(entry.openOutputStream(LIBRARY_MIME_TYPE)); } catch (RepositoryException e) { SwingTools.showSimpleErrorMessage("cannot_access_repository", e); } }
@Override protected void ok() { try { chooser.getRepositoryLocation(); super.ok(); } catch (MalformedRepositoryLocationException e) { SwingTools.showSimpleErrorMessage("malformed_repository_location", e, e.getMessage()); } }
@Override public void createConfigurationWizard(ParameterType type, ConfigurationListener listener) { ExcelExampleSource sourceOperator = (ExcelExampleSource) listener; try { new ExcelImportWizard(sourceOperator, listener, null).setVisible(true); } catch (OperatorException e) { SwingTools.showSimpleErrorMessage("importwizard.error_creating_wizard", e); } }
@Override public void performAction(OperatorDescription description) { try { Operator operator = OperatorService.createOperator(description); RapidMinerGUI.getMainFrame().getActions().insert(Collections.singletonList(operator)); } catch (Exception e) { SwingTools.showSimpleErrorMessage("cannot_instantiate", e, description.getName()); } }
private void save() { File file = SwingTools.chooseFile(null, null, true, "wgt", "attribute weight file"); try { attributeTableModel .getAttributeWeights() .writeAttributeWeights(file, Tools.getDefaultEncoding()); } catch (IOException e) { SwingTools.showSimpleErrorMessage("cannot_write_attr_weights_to_file", e, file.getName()); } }
private void load() { File file = SwingTools.chooseFile(null, null, true, "wgt", "attribute weight file"); try { AttributeWeights fileWeights = AttributeWeights.load(file); attributeTableModel.mergeWeights(fileWeights); } catch (IOException e) { SwingTools.showSimpleErrorMessage("cannot_load_attr_weights_from_file", e, file.getName()); } update(); }
@Override public void actionPerformed(ActionEvent e) { File file = SwingTools.chooseFile( RapidMinerGUI.getMainFrame(), "export_process", null, false, false, new String[] {RapidMiner.PROCESS_FILE_EXTENSION, "xml"}, new String[] {"Process File", "Process File"}); if (file == null) { return; } try { new FileProcessLocation(file).store(RapidMinerGUI.getMainFrame().getProcess(), null); } catch (IOException e1) { SwingTools.showSimpleErrorMessage( "cannot_save_process", e1, RapidMinerGUI.getMainFrame().getProcess().getProcessLocation(), e1.getMessage()); } }
private void storeInFolder(final Folder folder) { // get current process name (if present) String currentName = null; if (RapidMinerGUI.getMainFrame().getProcess().getProcessLocation() != null) { currentName = RapidMinerGUI.getMainFrame().getProcess().getProcessLocation().getShortName(); } final String name = SwingTools.showRepositoryEntryInputDialog("store_process", currentName); if (name != null) { if (name.isEmpty()) { SwingTools.showVerySimpleErrorMessage("please_enter_non_empty_name"); return; } try { // check if folder already contains entry with said name RepositoryLocation entryLocation = new RepositoryLocation(folder.getLocation(), name); if (folder.containsEntry(name)) { Entry existingEntry = entryLocation.locateEntry(); if (!(existingEntry instanceof ProcessEntry)) { // existing entry is not a ProcessEntry, cannot overwrite SwingTools.showVerySimpleErrorMessage("repository_entry_already_exists", name); return; } else { // existing entry is ProcessEntry,let #overwriteProcess() handle it overwriteProcess((ProcessEntry) existingEntry); return; } } } catch (RepositoryException e1) { SwingTools.showSimpleErrorMessage("cannot_store_process_in_repository", e1, name); return; } catch (MalformedRepositoryLocationException e1) { SwingTools.showSimpleErrorMessage("cannot_store_process_in_repository", e1, name); return; } ProgressThread storeProgressThread = new ProgressThread("store_process") { public void run() { getProgressListener().setTotal(100); Process process = RapidMinerGUI.getMainFrame().getProcess(); RepositoryProcessLocation processLocation = null; try { processLocation = new RepositoryProcessLocation( new RepositoryLocation(folder.getLocation(), name)); getProgressListener().setCompleted(10); Process.checkIfSavable(process); folder.createProcessEntry(name, process.getRootOperator().getXML(false)); process.setProcessLocation(processLocation); tree.expandPath(tree.getSelectionPath()); RapidMinerGUI.addToRecentFiles(process.getProcessLocation()); RapidMinerGUI.getMainFrame().processHasBeenSaved(); } catch (Exception e) { SwingTools.showSimpleErrorMessage( "cannot_save_process", e, processLocation, e.getMessage()); RapidMinerGUI.getMainFrame().getProcess().setProcessLocation(null); } finally { getProgressListener().setCompleted(10); getProgressListener().complete(); } } }; storeProgressThread.start(); } }
public ManageTemplatesDialog(MainFrame mainFrame) { super(mainFrame, "Manage Templates", true); JPanel rootPanel = new JPanel(new BorderLayout()); rootPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); GridBagLayout layout = new GridBagLayout(); JPanel mainPanel = new JPanel(layout); GridBagConstraints c = new GridBagConstraints(); c.fill = GridBagConstraints.BOTH; c.weightx = 1.0d; c.weighty = 0.0d; JPanel textPanel = SwingTools.createTextPanel( "Manage Templates...", "Please select templates to delete them. Only " + "user defined templates can be removed."); c.gridwidth = GridBagConstraints.REMAINDER; layout.setConstraints(textPanel, c); mainPanel.add(textPanel); Component sep = Box.createVerticalStrut(10); c.gridwidth = GridBagConstraints.REMAINDER; layout.setConstraints(sep, c); mainPanel.add(sep); // add components to main panel File[] templateFiles = ParameterService.getUserRapidMinerDir() .listFiles( new FileFilter() { public boolean accept(File file) { return file.getName().endsWith(".template"); } }); for (int i = 0; i < templateFiles.length; i++) { try { Template template = new Template(templateFiles[i]); templateMap.put(template.getName(), template); } catch (InstantiationException e) { SwingTools.showSimpleErrorMessage( "Cannot load template file '" + templateFiles[i] + "'", e); } } JScrollPane listPane = new ExtendedJScrollPane(templateList); c.gridwidth = GridBagConstraints.REMAINDER; c.weighty = 1.0d; layout.setConstraints(listPane, c); mainPanel.add(listPane); c.weighty = 0.0d; // buttons JPanel buttonPanel = new JPanel(new FlowLayout(FlowLayout.CENTER)); JButton deleteButton = new JButton("Delete"); deleteButton.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { delete(); } }); buttonPanel.add(deleteButton); JButton okButton = new JButton("Ok"); okButton.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { ok(); } }); buttonPanel.add(okButton); rootPanel.add(mainPanel, BorderLayout.CENTER); rootPanel.add(buttonPanel, BorderLayout.SOUTH); getContentPane().add(rootPanel); update(); pack(); setSize(250, 400); setLocationRelativeTo(mainFrame); }