⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 reogviewer.java

📁 自动生成JAVA-Struts网站的程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
            // Show save dialog; this method does not return until the dialog is closed
            fc.showSaveDialog(reogFrame);
            if (fc.getSelectedFile() != null) {
                System.out.println(fc.getSelectedFile());
                 cm.saveAs(fc.getSelectedFile());

            }
        } else if (eventSource == clearItem) {
            synchronized(consoleArea) {
                consoleArea.setText("");

            }

        } else if (eventSource==selectAllItem) {
            consoleArea.selectAll();
        }
    }

    public synchronized void run() {
        while (Thread.currentThread() == reader) {
            try {
                this.wait(100);
            } catch (InterruptedException ie) {
            }
            try {
                if (pin.available() != 0) {
                    String input = this.readLine(pin);
                    consoleArea.insert(input, 0);  // insert System.out to front of textArea

                }
            } catch (IOException e) {
                e.printStackTrace();  //To change body of catch statement use Options | File Templates.
            }
            if (quit) {
                System.err.println("I am quiting");
                return;
            }
        }

    }

    protected synchronized String readLine(PipedInputStream in) throws IOException {
        String input = "";
        do {
            int available = in.available();
            if (available == 0) break;
            byte b[] = new byte[available];
            in.read(b);
            input = input + new String(b, 0, b.length);
        } while (!input.endsWith("\n") && !input.endsWith("\r\n") && !quit);
        return input;
    }

    protected void refillModel() {
        Element top = cm.getBaseDocument().getRootElement();
        DisplayNode displayTop = new DisplayNode(top);
        DefaultMutableTreeNode root = new DefaultMutableTreeNode(displayTop);
        model = new SortTreeModel(root, new TreeStringComparator());

        treeWalk(model, root, top);

        this.fillSubTree(model, root, "Global Values", "global-value-ref");
        this.fillSubTree(model, root, "Global References", "global-reference");
        this.fillSubTree(model, root, "Beans", "bean");
        this.fillSubTree(model, root, "Menus", "menu");
        tree.setModel(model);
        this.loadEditPane(ProjectPropertiesEditTab, (Element)cm.getBaseDocument().selectSingleNode("/strutscreator/property"));
         //tabPane.addTab("Project Properts", pp.getEditForm());
    }

    /** Create a Swing GUI containing the document */
    protected JTree prepareXmlTree() throws Exception {

        Element top = cm.getBaseDocument().getRootElement();
        DisplayNode displayTop = new DisplayNode(top);
        DefaultMutableTreeNode root = new DefaultMutableTreeNode(displayTop);
        model = new SortTreeModel(root, new TreeStringComparator());

        //tree.setRootVisible(false);
        treeWalk(model, root, top);

        this.fillSubTree(model, root, "Global Values", "global-value-ref");
        this.fillSubTree(model, root, "Global References", "global-reference");
        this.fillSubTree(model, root, "Beans", "bean");
        this.fillSubTree(model, root, "Menus", "menu");


        if (tree == null) {
            tree = new JTree(model);
            cml = new TreeContextMenuListener(this);
            tree.addMouseListener(cml);

            IconNodeRenderer renderer = new IconNodeRenderer();
           // renderer.setClosedIcon(new ImageIcon("red-ball.gif"));
           // renderer.setOpenIcon(new ImageIcon("yellow-ball.gif"));
          //  renderer.setLeafIcon(new ImageIcon("blue-ball.gif"));

            tree.setCellRenderer(renderer);


        }

        return tree;
    }

    public void treeWalk(SortTreeModel model, DefaultMutableTreeNode current, Element element) {
        for (int i = 0, size = element.nodeCount(); i < size; i++) {
            Node node = element.node(i);
            if (node instanceof Element) {
                if (!(node.getName().equals("bean") || node.getName().equals("menu")
                        || node.getName().equals("global-value-ref") || node.getName().equals("global-reference"))) {

                    DisplayNode qn = new DisplayNode((Element) node);
                    DefaultMutableTreeNode dnode = new DefaultMutableTreeNode(qn);
                    model.insertNodeInto(dnode, current);
                    treeWalk(model, dnode, (Element) node);
                }
            } else {
                // do something....
            }
        }
    }

    public SortTreeModel getCurrentModel() {
        return this.model;

    }

    public JTree getCurrentTree() {
        return this.tree;
    }

    public void loadEditPane(String paneName, Element e) {
      /*
         Retrieves (Simple) form from a collection and displays it on
         a tab.
      */

        if (tabPane.getTabCount() > 0) {
            SimpleForm oldForm = (SimpleForm)tabMap.get(currentPaneName);
            oldForm.doSave(); // save current entry form to memory
            tabPane.remove(0);

        }

        SimpleForm newForm = (SimpleForm)tabMap.get(paneName);
        if (newForm != null) {
            tabPane.addTab(newForm.getTitle(), newForm.getEditForm());
            newForm.setValues(e);
            currentPaneName = paneName;
        }

        tabPane.setSelectedIndex(0);

    }

    public ConfigManager getManager() {
        return this.cm;
    }

    public void fillSubTree(SortTreeModel model, DefaultMutableTreeNode root,
                            String branchName, String elementsName) {

        DefaultMutableTreeNode topNode = new DefaultMutableTreeNode(branchName);
        model.insertNodeInto(topNode, root);
        Iterator elementIterator = cm.getBaseDocument().getRootElement().elements(elementsName).iterator();
        while (elementIterator.hasNext()) {
            Element element = (Element) elementIterator.next();
            DisplayNode dn = new DisplayNode(element);
            DefaultMutableTreeNode dmt = new DefaultMutableTreeNode(dn);
            model.insertNodeInto(dmt, topNode);
            treeWalk(model, dmt, element);
        }


    }

    public void fillExistingNode(DefaultMutableTreeNode nodeToFill,
                              String branchName, String elementsName) {

          Iterator elementIterator = cm.getBaseDocument().getRootElement().elements(elementsName).iterator();

          while (elementIterator.hasNext()) {
              Element element = (Element) elementIterator.next();
              treeWalk(this.model, nodeToFill, element);
          }

      }

    public void fillExistingNode(DefaultMutableTreeNode nodeToFill, Element elm) {
        treeWalk(this.model, nodeToFill, elm);

       }






    /**
     Add the text field and "Add" button to add a new class.
     */

    JFrame reogFrame;
    private final PipedInputStream pin = new PipedInputStream();

    private Timer changeMonitor;

    private ConfigManager cm;
    private SortTreeModel model;
    private JTree tree;
    protected TreePath m_clickedPath;

    private JMenuItem newItem;
    private JMenuItem openItem;
    private JMenuItem saveItem;
    private JMenuItem saveAsItem;
    private JMenuItem generateAppItem;
    private JMenuItem reverseDBItem;
    private JMenuItem exitItem;

    private JMenuItem preferencesItem;
    private JMenuItem templatesItem;
    private JMenuItem dumpItem;


    private JMenuItem helpIndexItem;
    private JMenuItem helpAboutItem;

    private JPopupMenu consoleMenu;
    private JMenuItem clearItem;
    private JMenuItem selectAllItem;
    private JTabbedPane tabPane;

    private JTextArea consoleArea;
    private boolean quit;
    private Thread reader;

    private TreeContextMenuListener cml;
    private DatabaseEditPane dbEditPane;
    private GlobalValueEditPane gvep;
    private ProjectProperties pp;
    private SecurityConstraintPane scp;
    private BuildEditPane buildEditPane;
    private BeanEditPane bep;
    private ColumnEditPane cep;
    private GlobalReferencePane gref;
    private QueryEditPane qep;
    private ProcessEditPane pep;
    private MenuEditPane mep;

    public static String ProjectPropertiesEditTab = "ProjectPropertiesEditTab";
    public static String BuildEditTab = "BuildEditTab";
    public static String DatabaseEditTab = "DatabaseEditTab";
    public static String GlobalValueEditTab = "GlobalValueEditTab";
    public static String BeanEditTab = "BeanEditTab";
    public static String SecurityEditTab = "SecurityEditTab";
    public static String ColumnEditTab = "ColumnEditTab";
    public static String GlobalRefTab = "GlobalRefTab";
    public static String QueryEditTab = "QueryEditTab";
    public static String ProcessEditTab = "ProcessEditTab";
    public static String MenuEditTab = "MenuEditTab";

    private String currentPaneName;
    Map tabMap;

    class consoleMenuListener implements MouseListener {
      //{{{ Mouse Listener Interface Implementation

	private void handleMouseEvent(MouseEvent evt) {
		if (evt.isPopupTrigger()) {
			if (consoleMenu.isVisible()) {
				consoleMenu.setVisible(false);
			} else {
				consoleMenu.show((Component)evt.getSource(), evt.getX(), evt.getY());
			}
		}
	}

	public void mousePressed(MouseEvent evt) {
		handleMouseEvent(evt);
	}

	public void mouseReleased(MouseEvent evt) {
		handleMouseEvent(evt);
	}

	public void mouseClicked(MouseEvent e) { }
	public void mouseEntered(MouseEvent e) { }
	public void mouseExited(MouseEvent e) { }
}

}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -