Changeset 14744
- Timestamp:
- 2007-10-30T15:10:27+13:00 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
gli/trunk/src/org/greenstone/gatherer/cdm/LanguageManager.java
r13195 r14744 284 284 /** button to move a language down in the list */ 285 285 private JButton move_up_button; 286 /** button to select all the languages in the list */ 287 private JButton select_all_button; 288 /** button to clear the current selection in the list */ 289 private JButton select_none_button; 286 290 /** The button to set the current language as the default one. */ 287 291 private JButton set_default_button = null; … … 311 315 312 316 JPanel control_panel = new JPanel(); 317 318 JPanel labels_pane = new JPanel(); 313 319 JLabel selector_label = new JLabel(Dictionary.get("CDM.LanguageManager.Selector")); 320 select_all_button = new GLIButton(Dictionary.get("CDM.IndexManager.Select_All"), Dictionary.get("CDM.IndexManager.Select_All_Tooltip")); 321 select_none_button = new GLIButton(Dictionary.get("CDM.IndexManager.Select_None"), Dictionary.get("CDM.IndexManager.Select_None_Tooltip")); 314 322 315 323 language_metadata_combo = new JComboBox(MetadataSetManager.getEveryMetadataSetElement().toArray()); … … 326 334 language_list.setToolTipText(Dictionary.get("CDM.LanguageManager.Selector_Tooltip")); 327 335 language_list.setCellRenderer(new LanguageCheckListCellRenderer()); 336 337 select_all_button.setEnabled(isSelectAllEnabled()); 338 select_none_button.setEnabled(isSelectAllEnabled()); 328 339 329 340 JPanel movement_pane = new JPanel(); … … 359 370 replace_button.addActionListener(new ReplaceListener()); 360 371 replace_button.addActionListener(CollectionDesignManager.buildcol_change_listener); 372 select_all_button.addActionListener(new SelectAllListener()); 373 select_all_button.addActionListener(CollectionDesignManager.buildcol_change_listener); 374 select_none_button.addActionListener(new SelectNoneListener()); 375 select_none_button.addActionListener(CollectionDesignManager.buildcol_change_listener); 361 376 362 377 language_list.addListSelectionListener(new LanguageListListener()); … … 395 410 control_panel.setBorder(BorderFactory.createEmptyBorder(5,0,0,0)); 396 411 control_panel.setLayout(new BorderLayout()); 397 control_panel.add(selector_label, BorderLayout.WEST); 412 413 labels_pane.setLayout(new BorderLayout()); 414 labels_pane.setBorder(BorderFactory.createEmptyBorder(5, 5, 10, 5)); 415 416 // add the select all and select none buttons to the label panel 417 GridBagLayout gridbag = new GridBagLayout(); 418 GridBagConstraints c = new GridBagConstraints(); 419 labels_pane.setLayout(gridbag); 420 421 c.fill = GridBagConstraints.BOTH; 422 c.weightx = 1.0; 423 c.weighty = 1.0; 424 c.gridx = 0; 425 c.gridy = 0; 426 427 gridbag.setConstraints(selector_label, c); 428 labels_pane.add(selector_label); 429 430 c.fill = GridBagConstraints.HORIZONTAL; 431 c.weighty = 0.0; 432 c.gridy = 1; 433 434 gridbag.setConstraints(select_all_button, c); 435 labels_pane.add(select_all_button); 436 437 c.gridy = 2; 438 gridbag.setConstraints(select_none_button, c); 439 labels_pane.add(select_none_button); 440 441 control_panel.add(labels_pane, BorderLayout.WEST); 442 398 443 control_panel.add(new JScrollPane(language_list), BorderLayout.CENTER); 399 444 control_panel.add(button_panel, BorderLayout.SOUTH); … … 435 480 move_down_button.setEnabled(false); 436 481 move_up_button.setEnabled(false); 482 select_all_button.setEnabled(isSelectAllEnabled()); 483 select_none_button.setEnabled(isSelectAllEnabled()); 437 484 438 485 } … … 447 494 448 495 // Display the selected subcollection index's sources 449 language_list.clearTicked(); 450 language_list.setTickedObjects(selected_lang.getCode().split(",")); 451 496 language_list.clearTicked(); 497 // for multi-languages indexes, getCode returns null 498 if(selected_lang.getCode()==null){ 499 return; 500 } 501 language_list.setTickedObjects(selected_lang.getCode().split(",")); 452 502 } 453 503 … … 481 531 add_button.setEnabled(add_enabled); 482 532 replace_button.setEnabled(replace_enabled); 533 select_all_button.setEnabled(isSelectAllEnabled()); 534 select_none_button.setEnabled(isSelectAllEnabled()); 483 535 } 484 536 … … 538 590 validateButtons(); 539 591 } 592 } 593 594 private class SelectAllListener 595 implements ActionListener { 596 597 public void actionPerformed(ActionEvent event){ 598 if(select_all_button.isEnabled()){ 599 language_list.setAllTicked(); 600 validateButtons(); 601 } 602 } 603 } 604 605 private class SelectNoneListener 606 implements ActionListener { 607 608 public void actionPerformed(ActionEvent event){ 609 if(select_all_button.isEnabled()){ 610 language_list.clearTicked(); 611 validateButtons(); 612 } 613 } 540 614 } 541 615 … … 598 672 int i = selected_languages_list.getSelectedIndex(); 599 673 int size = selected_languages_list.getModel().getSize(); 674 675 select_all_button.setEnabled(isSelectAllEnabled()); 676 select_none_button.setEnabled(isSelectAllEnabled()); 677 600 678 Language selected_lang = (Language)selected_languages_list.getSelectedValue(); 601 679 remove_button.setEnabled(true); … … 631 709 return component; 632 710 } 711 } 712 713 private boolean isSelectAllEnabled(){ 714 return language_list.getModel().getSize() > 0 ? true : false; 633 715 } 634 716 } … … 662 744 } 663 745 } 746 747 664 748 665 749 }
Note:
See TracChangeset
for help on using the changeset viewer.