| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -595,10 +595,10 @@ public boolean accept(File dir, String name) { | |||
| 595 | 595 | } | |
| 596 | 596 | ||
| 597 | 597 | ||
| 598 | - public JTree buildExamplesTree() { | ||
| 598 | + public DefaultMutableTreeNode buildExamplesTree() { | ||
| 599 | 599 | DefaultMutableTreeNode node = new DefaultMutableTreeNode("Examples"); | |
| 600 | 600 | ||
| 601 | - JTree examplesTree = new JTree(node); | ||
| 601 | + // JTree examplesTree = new JTree(node); | ||
| 602 | 602 | // rebuildExamplesTree(node); | |
| 603 | 603 | // } | |
| 604 | 604 | ||
@@ -617,30 +617,28 @@ public JTree buildExamplesTree() { | |||
| 617 | 617 | // }); | |
| 618 | 618 | File[] subfolders = getExampleCategoryFolders(); | |
| 619 | 619 | ||
| 620 | - // DefaultMutableTreeNode examplesParent = new DefaultMutableTreeNode("Examples"); | ||
| 620 | + DefaultMutableTreeNode modeExParent = new DefaultMutableTreeNode("Mode Examples"); | ||
| 621 | + | ||
| 621 | 622 | for (File sub : subfolders) { | |
| 622 | 623 | DefaultMutableTreeNode subNode = new DefaultMutableTreeNode(sub.getName()); | |
| 623 | 624 | if (base.addSketches(subNode, sub)) { | |
| 624 | 625 | // examplesParent.add(subNode); | |
| 625 | - node.add(subNode); | ||
| 626 | + modeExParent.add(subNode); | ||
| 626 | 627 | } | |
| 627 | 628 | } | |
| 628 | - // node.add(examplesParent); | ||
| 629 | - // examplesTree.expandPath(new TreePath(examplesParent)); | ||
| 630 | - | ||
| 629 | + | ||
| 631 | 630 | // get library examples | |
| 632 | 631 | boolean any = false; | |
| 633 | - DefaultMutableTreeNode libParent = new DefaultMutableTreeNode("Libraries"); | ||
| 634 | 632 | for (Library lib : coreLibraries) { | |
| 635 | 633 | if (lib.hasExamples()) { | |
| 636 | 634 | DefaultMutableTreeNode libNode = new DefaultMutableTreeNode(lib.getName()); | |
| 637 | - any |= base.addSketches(libNode, lib.getExamplesFolder()); | ||
| 638 | - libParent.add(libNode); | ||
| 635 | + if (base.addSketches(libNode, lib.getExamplesFolder())) | ||
| 636 | + modeExParent.add(libNode); | ||
| 639 | 637 | } | |
| 640 | 638 | } | |
| 641 | - if (any) { | ||
| 642 | - node.add(libParent); | ||
| 643 | - } | ||
| 639 | + | ||
| 640 | + if (modeExParent.getChildCount() > 0) | ||
| 641 | + node.add(modeExParent); | ||
| 644 | 642 | ||
| 645 | 643 | // get contrib library examples | |
| 646 | 644 | any = false; | |
@@ -651,7 +649,7 @@ public JTree buildExamplesTree() { | |||
| 651 | 649 | } | |
| 652 | 650 | if (any) { | |
| 653 | 651 | // menu.addSeparator(); | |
| 654 | - DefaultMutableTreeNode contribParent = new DefaultMutableTreeNode("Contributed Libraries"); | ||
| 652 | + DefaultMutableTreeNode contribParent = new DefaultMutableTreeNode("Library Examples"); | ||
| 655 | 653 | // Base.addDisabledItem(menu, "Contributed"); | |
| 656 | 654 | for (Library lib : contribLibraries) { | |
| 657 | 655 | if (lib.hasExamples()) { | |
@@ -668,15 +666,17 @@ public JTree buildExamplesTree() { | |||
| 668 | 666 | } catch (IOException e) { | |
| 669 | 667 | e.printStackTrace(); | |
| 670 | 668 | } | |
| 671 | - return examplesTree; | ||
| 669 | + | ||
| 670 | + DefaultMutableTreeNode contribExampleNode = buildContributedExamplesTrees(); | ||
| 671 | + if (contribExampleNode.getChildCount() > 0) | ||
| 672 | + node.add(contribExampleNode); | ||
| 673 | + return node; | ||
| 672 | 674 | } | |
| 673 | 675 | ||
| 674 | 676 | ||
| 675 | - public JTree buildContributedExamplesTrees() { | ||
| 677 | + public DefaultMutableTreeNode buildContributedExamplesTrees() { | ||
| 676 | 678 | DefaultMutableTreeNode node = new DefaultMutableTreeNode("Contributed Examples"); | |
| 677 | 679 | ||
| 678 | - JTree examplesTree = new JTree(node); | ||
| 679 | - | ||
| 680 | 680 | try { | |
| 681 | 681 | File[] subfolders = ContributionType.EXAMPLE.listCandidates(examplesContribFolder); | |
| 682 | 682 | if (subfolders == null) { | |
@@ -688,6 +688,7 @@ public JTree buildContributedExamplesTrees() { | |||
| 688 | 688 | DefaultMutableTreeNode subNode = new DefaultMutableTreeNode(sub.getName()); | |
| 689 | 689 | if (base.addSketches(subNode, sub)) { | |
| 690 | 690 | node.add(subNode); | |
| 691 | + System.out.println(subNode); | ||
| 691 | 692 | int exampleNodeNumber = -1; | |
| 692 | 693 | for (int y = 0; y < subNode.getChildCount(); y++) | |
| 693 | 694 | if (subNode.getChildAt(y).toString().equals("example")) | |
@@ -699,13 +700,14 @@ public JTree buildContributedExamplesTrees() { | |||
| 699 | 700 | int count = exampleNode.getChildCount(); | |
| 700 | 701 | for (int x = 0; x < count; x++) { | |
| 701 | 702 | subNode.add((DefaultMutableTreeNode) exampleNode.getChildAt(0)); | |
| 703 | + System.out.println(subNode); | ||
| 702 | 704 | } | |
| 703 | 705 | } | |
| 704 | 706 | } | |
| 705 | 707 | } catch (IOException e) { | |
| 706 | 708 | e.printStackTrace(); | |
| 707 | 709 | } | |
| 708 | - return examplesTree; | ||
| 710 | + return node;//examplesTree; | ||
| 709 | 711 | } | |
| 710 | 712 | ||
| 711 | 713 | ||
@@ -767,8 +769,78 @@ public void mouseClicked(MouseEvent e) { | |||
| 767 | 769 | } | |
| 768 | 770 | }); | |
| 769 | 771 | ||
| 770 | - final JTree tree = buildExamplesTree(); | ||
| 771 | - setupExamplesTree(tree); | ||
| 772 | + final JTree tree = new JTree(buildExamplesTree()); | ||
| 773 | + | ||
| 774 | + | ||
| 775 | + tree.setOpaque(true); | ||
| 776 | + tree.setAlignmentX(Component.LEFT_ALIGNMENT); | ||
| 777 | + | ||
| 778 | + tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION); | ||
| 779 | + tree.setShowsRootHandles(true); | ||
| 780 | + // tree.setToggleClickCount(2); | ||
| 781 | + // expand the root | ||
| 782 | + tree.expandRow(0); | ||
| 783 | + // now hide the root | ||
| 784 | + tree.setRootVisible(false); | ||
| 785 | + | ||
| 786 | + // After 2.0a7, no longer expanding each of the categories at Casey's | ||
| 787 | + // request. He felt that the window was too complicated too quickly. | ||
| 788 | + // for (int row = tree.getRowCount()-1; row >= 0; --row) { | ||
| 789 | + // tree.expandRow(row); | ||
| 790 | + // } | ||
| 791 | + | ||
| 792 | + tree.addMouseListener(new MouseAdapter() { | ||
| 793 | + public void mouseClicked(MouseEvent e) { | ||
| 794 | + if (e.getClickCount() == 2) { | ||
| 795 | + DefaultMutableTreeNode node = | ||
| 796 | + (DefaultMutableTreeNode) tree.getLastSelectedPathComponent(); | ||
| 797 | + | ||
| 798 | + int selRow = tree.getRowForLocation(e.getX(), e.getY()); | ||
| 799 | + //TreePath selPath = tree.getPathForLocation(e.getX(), e.getY()); | ||
| 800 | + //if (node != null && node.isLeaf() && node.getPath().equals(selPath)) { | ||
| 801 | + if (node != null && node.isLeaf() && selRow != -1) { | ||
| 802 | + SketchReference sketch = (SketchReference) node.getUserObject(); | ||
| 803 | + base.handleOpen(sketch.getPath()); | ||
| 804 | + } | ||
| 805 | + } | ||
| 806 | + } | ||
| 807 | + }); | ||
| 808 | + tree.addKeyListener(new KeyAdapter() { | ||
| 809 | + public void keyPressed(KeyEvent e) { | ||
| 810 | + if (e.getKeyCode() == KeyEvent.VK_ESCAPE) { // doesn't fire keyTyped() | ||
| 811 | + examplesFrame.setVisible(false); | ||
| 812 | + } | ||
| 813 | + } | ||
| 814 | + public void keyTyped(KeyEvent e) { | ||
| 815 | + if (e.getKeyChar() == KeyEvent.VK_ENTER) { | ||
| 816 | + DefaultMutableTreeNode node = | ||
| 817 | + (DefaultMutableTreeNode) tree.getLastSelectedPathComponent(); | ||
| 818 | + if (node != null && node.isLeaf()) { | ||
| 819 | + SketchReference sketch = (SketchReference) node.getUserObject(); | ||
| 820 | + base.handleOpen(sketch.getPath()); | ||
| 821 | + } | ||
| 822 | + } | ||
| 823 | + } | ||
| 824 | + }); | ||
| 825 | + | ||
| 826 | + tree.addTreeExpansionListener(new TreeExpansionListener() { | ||
| 827 | + @Override | ||
| 828 | + public void treeExpanded(TreeExpansionEvent event) { | ||
| 829 | + updateExpanded(tree); | ||
| 830 | + } | ||
| 831 | + | ||
| 832 | + @Override | ||
| 833 | + public void treeCollapsed(TreeExpansionEvent event) { | ||
| 834 | + updateExpanded(tree); | ||
| 835 | + } | ||
| 836 | + }); | ||
| 837 | + | ||
| 838 | + tree.setBorder(new EmptyBorder(5, 5, 5, 5)); | ||
| 839 | + if (Base.isMacOS()) { | ||
| 840 | + tree.setToggleClickCount(2); | ||
| 841 | + } else { | ||
| 842 | + tree.setToggleClickCount(1); | ||
| 843 | + } | ||
| 772 | 844 | ||
| 773 | 845 | JScrollPane treePane = new JScrollPane(tree); | |
| 774 | 846 | treePane.setPreferredSize(new Dimension(250, 300)); | |
@@ -777,25 +849,8 @@ public void mouseClicked(MouseEvent e) { | |||
| 777 | 849 | treePane.setBackground(Color.WHITE); | |
| 778 | 850 | treePane.setAlignmentX(Component.LEFT_ALIGNMENT); | |
| 779 | 851 | ||
| 780 | - JLabel contribExLabel = new JLabel("Contributed Examples"); | ||
| 781 | - contribExLabel.setOpaque(false); | ||
| 782 | - contribExLabel.setBorder(new EmptyBorder(10, 6, 1, 5)); | ||
| 783 | - contribExLabel.setAlignmentX(Component.LEFT_ALIGNMENT); | ||
| 784 | - | ||
| 785 | - final JTree tree2 = buildContributedExamplesTrees(); | ||
| 786 | - setupExamplesTree(tree2); | ||
| 787 | - | ||
| 788 | - JScrollPane treePane2 = new JScrollPane(tree2); | ||
| 789 | - treePane2.setPreferredSize(new Dimension(250, 300)); | ||
| 790 | - treePane2.setBorder(new EmptyBorder(0, 0, 10, 0)); | ||
| 791 | - treePane2.setOpaque(true); | ||
| 792 | - treePane2.setBackground(Color.WHITE); | ||
| 793 | - treePane2.setAlignmentX(Component.LEFT_ALIGNMENT); | ||
| 794 | - | ||
| 795 | 852 | examplesPanel.add(openExamplesManagerLabel); | |
| 796 | 853 | examplesPanel.add(treePane); | |
| 797 | - examplesPanel.add(contribExLabel); | ||
| 798 | - examplesPanel.add(treePane2); | ||
| 799 | 854 | examplesFrame.getContentPane().add(examplesPanel); | |
| 800 | 855 | examplesFrame.pack(); | |
| 801 | 856 | ||
@@ -818,78 +873,6 @@ public void mouseClicked(MouseEvent e) { | |||
| 818 | 873 | } | |
| 819 | 874 | ||
| 820 | 875 | ||
| 821 | - private void setupExamplesTree(final JTree tree) { | ||
| 822 | - tree.setOpaque(true); | ||
| 823 | - tree.setAlignmentX(Component.LEFT_ALIGNMENT); | ||
| 824 | - | ||
| 825 | - tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION); | ||
| 826 | - tree.setShowsRootHandles(true); | ||
| 827 | - // tree.setToggleClickCount(2); | ||
| 828 | - // expand the root | ||
| 829 | - tree.expandRow(0); | ||
| 830 | - // now hide the root | ||
| 831 | - tree.setRootVisible(false); | ||
| 832 | - | ||
| 833 | - // After 2.0a7, no longer expanding each of the categories at Casey's | ||
| 834 | - // request. He felt that the window was too complicated too quickly. | ||
| 835 | - // for (int row = tree.getRowCount()-1; row >= 0; --row) { | ||
| 836 | - // tree.expandRow(row); | ||
| 837 | - // } | ||
| 838 | - | ||
| 839 | - tree.addMouseListener(new MouseAdapter() { | ||
| 840 | - public void mouseClicked(MouseEvent e) { | ||
| 841 | - if (e.getClickCount() == 2) { | ||
| 842 | - DefaultMutableTreeNode node = | ||
| 843 | - (DefaultMutableTreeNode) tree.getLastSelectedPathComponent(); | ||
| 844 | - | ||
| 845 | - int selRow = tree.getRowForLocation(e.getX(), e.getY()); | ||
| 846 | - //TreePath selPath = tree.getPathForLocation(e.getX(), e.getY()); | ||
| 847 | - //if (node != null && node.isLeaf() && node.getPath().equals(selPath)) { | ||
| 848 | - if (node != null && node.isLeaf() && selRow != -1) { | ||
| 849 | - SketchReference sketch = (SketchReference) node.getUserObject(); | ||
| 850 | - base.handleOpen(sketch.getPath()); | ||
| 851 | - } | ||
| 852 | - } | ||
| 853 | - } | ||
| 854 | - }); | ||
| 855 | - tree.addKeyListener(new KeyAdapter() { | ||
| 856 | - public void keyPressed(KeyEvent e) { | ||
| 857 | - if (e.getKeyCode() == KeyEvent.VK_ESCAPE) { // doesn't fire keyTyped() | ||
| 858 | - examplesFrame.setVisible(false); | ||
| 859 | - } | ||
| 860 | - } | ||
| 861 | - public void keyTyped(KeyEvent e) { | ||
| 862 | - if (e.getKeyChar() == KeyEvent.VK_ENTER) { | ||
| 863 | - DefaultMutableTreeNode node = | ||
| 864 | - (DefaultMutableTreeNode) tree.getLastSelectedPathComponent(); | ||
| 865 | - if (node != null && node.isLeaf()) { | ||
| 866 | - SketchReference sketch = (SketchReference) node.getUserObject(); | ||
| 867 | - base.handleOpen(sketch.getPath()); | ||
| 868 | - } | ||
| 869 | - } | ||
| 870 | - } | ||
| 871 | - }); | ||
| 872 | - | ||
| 873 | - tree.addTreeExpansionListener(new TreeExpansionListener() { | ||
| 874 | - @Override | ||
| 875 | - public void treeExpanded(TreeExpansionEvent event) { | ||
| 876 | - updateExpanded(tree); | ||
| 877 | - } | ||
| 878 | - | ||
| 879 | - @Override | ||
| 880 | - public void treeCollapsed(TreeExpansionEvent event) { | ||
| 881 | - updateExpanded(tree); | ||
| 882 | - } | ||
| 883 | - }); | ||
| 884 | - | ||
| 885 | - tree.setBorder(new EmptyBorder(5, 5, 5, 5)); | ||
| 886 | - if (Base.isMacOS()) { | ||
| 887 | - tree.setToggleClickCount(2); | ||
| 888 | - } else { | ||
| 889 | - tree.setToggleClickCount(1); | ||
| 890 | - } | ||
| 891 | - } | ||
| 892 | - | ||
| 893 | 876 | protected void updateExpanded(JTree tree) { | |
| 894 | 877 | Enumeration en = tree.getExpandedDescendants(new TreePath(tree.getModel().getRoot())); | |
| 895 | 878 | //en.nextElement(); // skip the root "Examples" node | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -5,6 +5,7 @@ | |||
| 5 | 5 | import java.util.HashMap; | |
| 6 | 6 | ||
| 7 | 7 | import processing.app.Base; | |
| 8 | + import processing.core.PApplet; | ||
| 8 | 9 | ||
| 9 | 10 | public class ExampleContribution extends LocalContribution { | |
| 10 | 11 | ||
@@ -24,7 +25,7 @@ private static ArrayList<String> parseCompatibleModesList(String unparsedModes) | |||
| 24 | 25 | ArrayList<String> modesList = new ArrayList<String>(); | |
| 25 | 26 | if (unparsedModes == null || unparsedModes.isEmpty()) | |
| 26 | 27 | return modesList; | |
| 27 | - String[] splitStr = unparsedModes.split(","); | ||
| 28 | + String[] splitStr = PApplet.trim(PApplet.split(unparsedModes, ','));//unparsedModes.split(","); | ||
| 28 | 29 | for (String mode : splitStr) | |
| 29 | 30 | modesList.add(mode.trim()); | |
| 30 | 31 | return modesList; | |
| Back | FazBrowse Home | New Git URL |
0 commit comments