public void actionPerformed(ActionEvent ev) { String aKey = ev.getActionCommand(); if ("New Project".equals(aKey)) { BDevelop newdevdesk = new BDevelop(root, top, treemodel, configDir, logHandle); newdevdesk.setVisible(true); desktop.add(newdevdesk); try { newdevdesk.setSelected(true); } catch (java.beans.PropertyVetoException ex) { log.severe("Desktop show error : " + ex); } } else if ("Close Project".equals(aKey)) { closeProject(false); } else if ("Delete Project".equals(aKey)) { closeProject(true); } else if ("Save Projects".equals(aKey)) { Bio io = new Bio(); io.saveFile(configDir + configFile, root.toString()); } else if ("Encrypt File".equals(aKey)) { // Create encrypter/decrypter class and encrypt String encryFile = configFile.substring(0, configFile.length() - 3) + "cph"; BDesEncrypter encrypter = new BDesEncrypter(root.getAttribute("encryption")); encrypter.encrypt(configDir + configFile, configDir + encryFile); } else if ("Open Applications".equals(aKey)) { // Create a file chooser JFileChooser fc = new JFileChooser(configDir); int returnVal = fc.showOpenDialog(this); if (returnVal == JFileChooser.APPROVE_OPTION) { File cnFile = fc.getSelectedFile(); configDir = cnFile.getParent() + "/"; configFile = cnFile.getName(); BXML xml = new BXML(configDir + configFile, false); root = xml.getRoot(); top = new BTreeNode(root, "APP"); for (BElement el : root.getElements()) top.add(new BTreeNode(el, el.getValue())); treemodel.setRoot(top); treemodel.reload(); } } else if ("About".equals(aKey)) { BAbout about = new BAbout("IDE"); about.setVisible(true); desktop.add(about); try { about.setSelected(true); } catch (java.beans.PropertyVetoException ex) { log.severe("Desktop show error : " + ex); } } }