Changeset 4638
- Timestamp:
- 2003-06-13T11:24:14+12:00 (21 years ago)
- Location:
- trunk/gli/src/org/greenstone/gatherer/cdm
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gli/src/org/greenstone/gatherer/cdm/ClassifierManager.java
r4626 r4638 70 70 import javax.swing.JScrollPane; 71 71 import javax.swing.JTextArea; 72 import javax.swing.ListSelectionModel; 72 73 import javax.swing.event.ListSelectionEvent; 73 74 import javax.swing.event.ListSelectionListener; … … 742 743 classifier_model.add(((Classifier)classifiers[i]).getName()); 743 744 } 744 745 // Now we add custom classifiers. 745 746 addCustomClassifiers(classifier_model); 746 747 Collections.sort(classifier_model); 747 748 // Create 748 749 add = new JButton(get("Add")); 749 750 JPanel button_pane = new JPanel(); 750 751 JPanel central_pane = new JPanel(); 751 752 configure = new JButton(get("Configure")); 753 configure.setEnabled(false); 752 754 JPanel header_pane = new JPanel(); 753 755 instructions = new JTextArea(get("Instructions")); … … 761 763 JLabel classifier_label = new JLabel(get("Classifier")); 762 764 classifier_list = new JList(assigned); 765 classifier_list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); 763 766 JLabel classifier_list_label = new JLabel(get("Assigned")); 764 767 classifier_list_label.setHorizontalAlignment(JLabel.CENTER); … … 767 770 JPanel classifier_pane = new JPanel(); 768 771 remove = new JButton(get("Remove")); 772 remove.setEnabled(false); 769 773 JLabel title = new JLabel(get("Title")); 770 774 title.setHorizontalAlignment(JLabel.CENTER); 771 775 title.setOpaque(true); 772 776 JPanel temp = new JPanel(new BorderLayout()); 773 777 // Listeners 774 778 add.addActionListener(new AddListener()); 775 779 configure.addActionListener(new ConfigureListener()); 776 780 remove.addActionListener(new RemoveListener()); 777 781 classifier_list.addMouseListener(new ClickListener()); 778 // Layout 782 classifier_list.addListSelectionListener(new ListListener()); 783 // Layout 779 784 title.setBorder(BorderFactory.createEmptyBorder(0,0,2,0)); 780 785 instructions.setBorder(BorderFactory.createEmptyBorder(2,5,2,5)); … … 795 800 button_pane.add(configure); 796 801 button_pane.add(remove); 797 802 // Scope these mad bordering skillz. 798 803 temp.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createEmptyBorder(5,0,5,0), BorderFactory.createCompoundBorder(BorderFactory.createTitledBorder(get("Controls")), BorderFactory.createEmptyBorder(2,2,2,2)))); 799 804 temp.add(classifier_pane, BorderLayout.NORTH); … … 829 834 */ 830 835 private void addCustomClassifiers(ArrayList classifier_model) { 831 832 836 //classifier_model.add("CustomAZList"); 837 // Search for classifiers under the org.greenstone.gatherer.cdm.custom directory. 833 838 File custom_directory = new File(Utility.BASE_DIR + "classes" + File.separator + "org" + File.separator + "greenstone" + File.separator + "gatherer" + File.separator + "cdm" + File.separator + "custom"); 834 839 if(custom_directory.exists()) { … … 1002 1007 } 1003 1008 1009 /** listens for changes in the list selection and enables the configure and remove buttons if there is a selection, disables them if there is no selection */ 1010 private class ListListener 1011 implements ListSelectionListener { 1012 1013 public void valueChanged(ListSelectionEvent e) { 1014 if (!e.getValueIsAdjusting()) { // we get two events for one change in list selection - use the false one ( the second one) 1015 if (classifier_list.isSelectionEmpty()) { 1016 configure.setEnabled(false); 1017 remove.setEnabled(false); 1018 } else { 1019 configure.setEnabled(true); 1020 remove.setEnabled(true); 1021 } 1022 } 1023 } 1024 } 1004 1025 /** This class listens for actions upon the remove button in the controls, and if detected calls the removeClassifier() method. 1005 1026 */ -
trunk/gli/src/org/greenstone/gatherer/cdm/PlugInManager.java
r4598 r4638 669 669 central_pane = new JPanel(); 670 670 configure = new JButton(get("Configure")); 671 configure.setEnabled(false); 671 672 configure.setMnemonic(KeyEvent.VK_C); 672 673 header_pane = new JPanel(); … … 715 716 movement_pane = new JPanel(); 716 717 plugin = new JComboBox(available); 717 718 //plugin.setEditable(true); 718 719 plugin.setSelectedIndex(0); 719 720 plugin_label = new JLabel(get("PlugIn")); 720 721 plugin_list = new JList(assigned); 721 722 plugin_list.setCellRenderer(new ListRenderer()); 723 plugin_list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); 722 724 plugin_list_label = new JLabel(get("Assigned")); 723 725 plugin_list_label.setHorizontalAlignment(JLabel.CENTER); … … 726 728 plugin_pane = new JPanel(); 727 729 remove = new JButton(get("Remove")); 730 remove.setEnabled(false); 728 731 remove.setMnemonic(KeyEvent.VK_R); 729 732 title = new JLabel(get("Title")); 730 733 title.setHorizontalAlignment(JLabel.CENTER); 731 734 title.setOpaque(true); 732 735 // Listeners 733 736 add.addActionListener(new AddListener()); 734 737 configure.addActionListener(new ConfigureListener()); … … 740 743 remove.addActionListener(new RemoveListener()); 741 744 plugin_list.addMouseListener(new ClickListener()); 742 // Layout 745 plugin_list.addListSelectionListener(new ListListener()); 746 // Layout 743 747 title.setBorder(BorderFactory.createEmptyBorder(0,0,2,0)); 744 748 … … 907 911 } 908 912 } 913 914 /** listens for changes in the list selection and enables the configure and remove buttons if there is a selection, disables them if there is no selection */ 915 private class ListListener 916 implements ListSelectionListener { 917 918 public void valueChanged(ListSelectionEvent e) { 919 if (!e.getValueIsAdjusting()) { // we get two events for one change in list selection - use the false one ( the second one) 920 if (plugin_list.isSelectionEmpty()) { 921 configure.setEnabled(false); 922 remove.setEnabled(false); 923 } else { 924 configure.setEnabled(true); 925 remove.setEnabled(true); 926 } 927 } 928 } 929 } 930 909 931 /** Listens for actions apon the move buttons in the manager controls, and if detected calls the <i>movePlugIn()</i> method of the manager with the appropriate details. */ 910 932 private class MoveListener
Note:
See TracChangeset
for help on using the changeset viewer.