void previewB_actionPerformed(ActionEvent e) { File f; try { f = Util.getTempFile(); new HTMLFileExport(f, editor.document, CurrentNote.get(), "UTF-8", false, null, false); Util.runBrowser("file:" + f.getAbsolutePath()); } catch (IOException ioe) { new ExceptionDialog(ioe, "Cannot create temporary file", null); } }
void newResB_actionPerformed(ActionEvent e) { AddResourceDialog dlg = new AddResourceDialog(App.getFrame(), Local.getString("New resource")); Dimension frmSize = App.getFrame().getSize(); Point loc = App.getFrame().getLocation(); dlg.setLocation( (frmSize.width - dlg.getSize().width) / 2 + loc.x, (frmSize.height - dlg.getSize().height) / 2 + loc.y); dlg.setVisible(true); if (dlg.CANCELLED) return; if (dlg.localFileRB.isSelected()) { String fpath = dlg.pathField.getText(); MimeType mt = MimeTypesList.getMimeTypeForFile(fpath); if (mt.getMimeTypeId().equals("__UNKNOWN")) { mt = addResourceType(fpath); if (mt == null) return; } if (!checkApp(mt)) return; // if file if projectFile, than copy the file and change url. if (dlg.projectFileCB.isSelected()) { fpath = copyFileToProjectDir(fpath); CurrentProject.getResourcesList().addResource(fpath, false, true); } else CurrentProject.getResourcesList().addResource(fpath); resourcesTable.tableChanged(); } else { if (!Util.checkBrowser()) return; CurrentProject.getResourcesList().addResource(dlg.urlField.getText(), true, false); resourcesTable.tableChanged(); } }
boolean checkApp(MimeType mt) { String appId = mt.getAppId(); AppList appList = MimeTypesList.getAppList(); File d; if (appId == null) { appId = Util.generateId(); d = new File("/"); } else { File exe = new File(appList.getFindPath(appId) + "/" + appList.getExec(appId)); if (exe.isFile()) return true; d = new File(exe.getParent()); while (!d.exists()) d = new File(d.getParent()); } SetAppDialog dlg = new SetAppDialog( App.getFrame(), Local.getString( Local.getString("Select the application to open files of type") + " '" + mt.getLabel() + "'")); Dimension dlgSize = new Dimension(420, 300); dlg.setSize(dlgSize); Dimension frmSize = App.getFrame().getSize(); Point loc = App.getFrame().getLocation(); dlg.setLocation( (frmSize.width - dlgSize.width) / 2 + loc.x, (frmSize.height - dlgSize.height) / 2 + loc.y); dlg.setDirectory(d); dlg.appPanel.argumentsField.setText("$1"); dlg.setVisible(true); if (dlg.CANCELLED) return false; File f = new File(dlg.appPanel.applicationField.getText()); appList.addOrReplaceApp( appId, f.getParent().replace('\\', '/'), f.getName().replace('\\', '/'), dlg.appPanel.argumentsField.getText()); mt.setApp(appId); /*appList.setFindPath(appId, chooser.getSelectedFile().getParent().replace('\\','/')); appList.setExec(appId, chooser.getSelectedFile().getName().replace('\\','/'));*/ CurrentStorage.get().storeMimeTypesList(); return true; }
/** * Copy a file to the directory of the current project * * @param srcStr The path of the source file. * @param destStr The destination path. * @return The new path of the file. */ String copyFileToProjectDir(String srcStr) { String JN_DOCPATH = Util.getEnvDir(); String baseName; int i = srcStr.lastIndexOf(File.separator); if (i != -1) { baseName = srcStr.substring(i + 1); } else baseName = srcStr; String destStr = JN_DOCPATH + CurrentProject.get().getID() + File.separator + "_projectFiles" + File.separator + baseName; File f = new File(JN_DOCPATH + CurrentProject.get().getID() + File.separator + "_projectFiles"); if (!f.exists()) { f.mkdirs(); } System.out.println("[DEBUG] Copy file from: " + srcStr + " to: " + destStr); try { FileInputStream in = new FileInputStream(srcStr); FileOutputStream out = new FileOutputStream(destStr); byte[] buf = new byte[4096]; int len; while ((len = in.read(buf)) > 0) { out.write(buf, 0, len); } out.close(); in.close(); } catch (IOException e) { System.err.println(e.toString()); } return destStr; }
// Tasks UI void drawTaskPanel() { if (processId != null) { Collection<Task> tasks = CurrentProject.getProcessList().getProcess(processId).getTasks(); taskIds = new ArrayList<>(); List<Task> taskList = new ArrayList<>(tasks); DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT); GridBagConstraints gc = new GridBagConstraints(); gc.ipadx = 3; gc.ipady = 3; gc.gridy = 0; gc.weightx = 1; gc.weighty = 1; gc.anchor = GridBagConstraints.WEST; taskInnerPanel = new JPanel(new GridBagLayout()); { JLabel title = new JLabel(Local.getString("Task")); JLabel status = new JLabel(Local.getString("Status")); JLabel priority = new JLabel(Local.getString("Priority")); gc.gridx = 1; taskInnerPanel.add(title, gc); gc.gridx = 2; taskInnerPanel.add(status, gc); gc.gridx = 3; taskInnerPanel.add(priority, gc); } for (Task task : taskList) { Util.debug("Adding task: " + task.getText()); BasicArrowButton up = new BasicArrowButton(BasicArrowButton.NORTH); BasicArrowButton dn = new BasicArrowButton(BasicArrowButton.SOUTH); JLabel title = new JLabel(task.getText()); JLabel status = new JLabel(task.getStatusString()); JLabel priority = new JLabel(task.getPriorityString()); gc.gridy = gc.gridy + 1; gc.gridx = 0; gc.gridx = 1; gc.anchor = GridBagConstraints.WEST; taskInnerPanel.add(title, gc); gc.gridx = 2; taskInnerPanel.add(status, gc); gc.gridx = 3; taskInnerPanel.add(priority, gc); gc.gridx = 4; gc.anchor = GridBagConstraints.CENTER; taskInnerPanel.add(up, gc); gc.gridx = 5; gc.anchor = GridBagConstraints.CENTER; taskInnerPanel.add(dn, gc); up.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent action) { int index = taskList.indexOf(task); if (index > 0) { Collections.swap(taskList, index, index - 1); Collections.swap(taskIds, index, index - 1); sortTasks(taskIds); } } }); dn.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent action) { int index = taskList.indexOf(task); if (index < taskList.size() - 1) { Collections.swap(taskList, index, index + 1); Collections.swap(taskIds, index, index + 1); sortTasks(taskIds); } } }); taskIds.add(task.getID()); } taskScrollPane = new JScrollPane(taskInnerPanel); taskPanel = new JPanel(new BorderLayout()); taskPanel.setPreferredSize(new Dimension(400, 300)); taskPanel.setBorder(defaultBorder); taskPanel.add(taskScrollPane, BorderLayout.CENTER); this.getContentPane().add(taskPanel, BorderLayout.CENTER); } }
public static String getDateStamp(CalendarDate date) { return Util.getDateStamp(date.getCalendar()); }
void runBrowser(String url) throws IOException { Util.runBrowser(url); }
void reportB_actionPerformed(ActionEvent e) { Util.runBrowser(App.BUGS_TRACKER_URL); }