Changeset 18687


Ignore:
Timestamp:
2009-03-15T16:11:19+13:00 (15 years ago)
Author:
kjdon
Message:

made all the index options always visible, just disabled if they are not available for the current indexer. The whole file has come up as changed, hope I haven't added hat M's all over the place

File:
1 edited

Legend:

Unmodified
Added
Removed
  • gli/trunk/src/org/greenstone/gatherer/cdm/IndexOptionManager.java

    r18412 r18687  
    1919
    2020    // we have an IndexOptionList (DOMProxyListModel) for each option type
    21     private IndexOptionList level_model = null;
    22     private IndexOptionList stem_model = null;
    23    
     21    private IndexOptionList level_model = null;
     22    private IndexOptionList options_model = null;
    2423    /** the default level option  - for mgpp and lucene */
    2524    private IndexOption default_level = null;
     
    3029    public IndexOptionManager(String current_build_type) {
    3130    level_model = new IndexOptionList(CollectionDesignManager.collect_config.getLevels());
    32     stem_model = new IndexOptionList(CollectionDesignManager.collect_config.getStemOptions());
     31    options_model = new IndexOptionList(CollectionDesignManager.collect_config.getIndexOptions());
    3332   
    3433    DebugStream.println("IndexOptionManager: " + level_model.getSize() + " levels parsed.");
    35     DebugStream.println("IndexOptionManager: " + stem_model.getSize() + " stem options parsed.");
     34    DebugStream.println("IndexOptionManager: " + options_model.getSize() + " index options parsed.");
    3635   
    3736    build_type = current_build_type;
     
    3938        level_model.setAssigned(false);
    4039    }
    41     else if (build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
    42         stem_model.setAssigned(false);
    43     }
     40    //  else if (build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
     41    //   options_model.setAssigned(false);
     42    //}
    4443    // Parse and retrieve the default level
    4544    Element default_level_element = CollectionDesignManager.collect_config.getLevelDefault();
     
    5453    public void buildTypeChanged(String new_build_type) {
    5554    boolean levels_enabled = true;
    56     boolean stem_enabled = true;
     55    //boolean stem_enabled = true;
    5756    if (new_build_type.equals(BuildTypeManager.BUILD_TYPE_MG)) {
    5857        levels_enabled = false;
    59     } else if (new_build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
    60         stem_enabled = false;
    61     }
     58    }// else if (new_build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
     59     //   stem_enabled = false;
     60    //}
    6261    level_model.setAssigned(levels_enabled);
    6362    default_level.setAssigned(levels_enabled);
    64     stem_model.setAssigned(stem_enabled);
     63    //options_model.setAssigned(stem_enabled);
    6564    ((IndexOptionControl)controls).buildTypeChanged(new_build_type);
    6665    build_type = new_build_type;
     
    140139           
    141140        setLayout(new BorderLayout());
    142         if (!build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
     141        //if (!build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
    143142        add(stem_control, BorderLayout.NORTH);
    144         }
     143        //}
    145144        if (!build_type.equals(BuildTypeManager.BUILD_TYPE_MG)) {
    146145        add(level_control, BorderLayout.CENTER);
     
    163162       
    164163        // then display/hide as appropriate
    165         if (build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
     164        //if (build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
    166165        // Changing to MG/MGPP
    167         add(stem_control, BorderLayout.NORTH);
    168         }
    169         else if (new_build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
     166        //  add(stem_control, BorderLayout.NORTH);
     167        //}
     168        //else if (new_build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
    170169        // Changing to Lucene
    171         remove(stem_control);
    172         }
     170        //remove(stem_control);
     171        //}
    173172        if (build_type.equals(BuildTypeManager.BUILD_TYPE_MG)) {
    174173        // changing from MG
     
    213212        accentfold_checkbox.setActionCommand(StaticStrings.ACCENTFOLD_OPTION_STR);
    214213        // Accent-folding is currently not available for MG
    215         accentfold_checkbox.setEnabled(!build_type.equals(BuildTypeManager.BUILD_TYPE_MG));
     214        // accentfold_checkbox.setEnabled(!build_type.equals(BuildTypeManager.BUILD_TYPE_MG));
    216215            accentfold_checkbox.setComponentOrientation(Dictionary.getOrientation());
    217216           
     
    245244        add(checkbox_panel, BorderLayout.CENTER);
    246245
    247         // set up the checked/unchecked boxes
    248         if (stem_model.getSize()==0) {
    249         // select all
    250         stem_checkbox.setSelected(true);
    251         stem_model.addOption(StaticStrings.STEM_OPTION_STR);
     246        // set the defaults
     247        if (build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
     248        stem_checkbox.setSelected(false);
     249        stem_checkbox.setEnabled(false);
    252250        casefold_checkbox.setSelected(true);
    253         stem_model.addOption(StaticStrings.CASEFOLD_OPTION_STR);
    254         if (accentfold_checkbox.isEnabled()) {
    255             accentfold_checkbox.setSelected(true);
    256             stem_model.addOption(StaticStrings.ACCENTFOLD_OPTION_STR);
    257         }
    258         separate_cjk_checkbox.setSelected(false);
    259         }
    260         else {
    261         if (stem_model.getOption(StaticStrings.STEM_OPTION_STR)!=null) {
     251        casefold_checkbox.setEnabled(false);
     252        accentfold_checkbox.setSelected(true);
     253        accentfold_checkbox.setEnabled(false);
     254        if (options_model.getOption(StaticStrings.SEPARATE_CJK_OPTION_STR) != null) {
     255            separate_cjk_checkbox.setSelected(true);
     256        }
     257        } else {
     258        if (build_type.equals(BuildTypeManager.BUILD_TYPE_MG)) {
     259            accentfold_checkbox.setEnabled(false);
     260        }
     261       
     262        // set up the checked/unchecked boxes
     263        if (options_model.getSize()==0) {
     264            // select all
    262265            stem_checkbox.setSelected(true);
    263         }
    264         if (stem_model.getOption(StaticStrings.CASEFOLD_OPTION_STR)!=null) {
     266            options_model.addOption(StaticStrings.STEM_OPTION_STR);
    265267            casefold_checkbox.setSelected(true);
    266         }
    267         if (stem_model.getOption(StaticStrings.ACCENTFOLD_OPTION_STR)!=null) {
    268             accentfold_checkbox.setSelected(true);
    269         }
    270         if (stem_model.getOption(StaticStrings.SEPARATE_CJK_OPTION_STR) != null) {
    271             separate_cjk_checkbox.setSelected(true);
    272         }
    273        
    274        
     268            options_model.addOption(StaticStrings.CASEFOLD_OPTION_STR);
     269            if (accentfold_checkbox.isEnabled()) {
     270            accentfold_checkbox.setSelected(true);
     271            options_model.addOption(StaticStrings.ACCENTFOLD_OPTION_STR);
     272            }
     273            separate_cjk_checkbox.setSelected(false);
     274        }
     275        else {
     276            // we'll assume that the config file has got it correct
     277            if (options_model.getOption(StaticStrings.STEM_OPTION_STR)!=null) {
     278            stem_checkbox.setSelected(true);
     279            }
     280            if (options_model.getOption(StaticStrings.CASEFOLD_OPTION_STR)!=null) {
     281            casefold_checkbox.setSelected(true);
     282            }
     283            if (options_model.getOption(StaticStrings.ACCENTFOLD_OPTION_STR)!=null) {
     284            accentfold_checkbox.setSelected(true);
     285            }
     286            if (options_model.getOption(StaticStrings.SEPARATE_CJK_OPTION_STR) != null) {
     287            separate_cjk_checkbox.setSelected(true);
     288            }
     289           
     290        }
    275291        }
    276292   
     
    290306   
    291307    public void buildTypeChanged(String new_build_type) {
    292         // Accent-folding is currently not available for MG
     308        // accentfold only enabled for mgpp
     309        if (new_build_type.equals(BuildTypeManager.BUILD_TYPE_MGPP)) {
     310        accentfold_checkbox.setEnabled(true);
     311        accentfold_checkbox.setSelected(true);
     312        options_model.addOption(StaticStrings.ACCENTFOLD_OPTION_STR);
     313        if (build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
     314            // was lucene
     315            stem_checkbox.setEnabled(true);
     316            stem_checkbox.setSelected(true);
     317            options_model.addOption(StaticStrings.STEM_OPTION_STR);
     318            casefold_checkbox.setEnabled(true);
     319            casefold_checkbox.setSelected(true);
     320            options_model.addOption(StaticStrings.CASEFOLD_OPTION_STR);
     321        } // else, was mg, stem and case remain the same
     322           
     323        }
    293324        if (new_build_type.equals(BuildTypeManager.BUILD_TYPE_MG)) {
    294         //changing to MG
    295325        accentfold_checkbox.setSelected(false);
    296326        accentfold_checkbox.setEnabled(false);
    297         if (accentfold_checkbox.isSelected()) {
    298             stem_model.removeOption(StaticStrings.ACCENTFOLD_OPTION_STR);
    299         }
    300         }
    301         else if (build_type.equals(BuildTypeManager.BUILD_TYPE_MG)) {
    302         //Changing from MG
    303         accentfold_checkbox.setEnabled(true);
    304         if (accentfold_checkbox.isSelected()) {
    305             stem_model.addOption(StaticStrings.ACCENTFOLD_OPTION_STR);
    306         }
    307         }
    308        
     327        options_model.removeOption(StaticStrings.ACCENTFOLD_OPTION_STR);
     328   
     329        if (build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
     330            // was lucene
     331            stem_checkbox.setEnabled(true);
     332            stem_checkbox.setSelected(true);
     333            options_model.addOption(StaticStrings.STEM_OPTION_STR);
     334            casefold_checkbox.setEnabled(true);
     335            casefold_checkbox.setSelected(true);
     336            options_model.addOption(StaticStrings.CASEFOLD_OPTION_STR);
     337        } // else, was mgpp, stem and case remain the same
     338       
     339        }
     340        if (new_build_type.equals(BuildTypeManager.BUILD_TYPE_LUCENE)) {
     341        accentfold_checkbox.setSelected(true);
     342        accentfold_checkbox.setEnabled(false);
     343        options_model.removeOption(StaticStrings.ACCENTFOLD_OPTION_STR);
     344        stem_checkbox.setSelected(false);
     345        stem_checkbox.setEnabled(false);
     346        options_model.removeOption(StaticStrings.STEM_OPTION_STR);
     347        casefold_checkbox.setSelected(true);
     348        casefold_checkbox.setEnabled(false);
     349        options_model.removeOption(StaticStrings.CASEFOLD_OPTION_STR);
     350   
     351        }
    309352    }
    310353
     
    314357        if (!((JCheckBox)event.getSource()).isSelected()) {
    315358            // deselecting
    316             stem_model.removeOption(event.getActionCommand());
     359            options_model.removeOption(event.getActionCommand());
    317360        }
    318361        else {
    319362            // selecting a new one
    320             stem_model.addOption(event.getActionCommand());
     363            options_model.addOption(event.getActionCommand());
    321364        }
    322365        }
Note: See TracChangeset for help on using the changeset viewer.