Project

General

Profile

« Previous | Next » 

Revision de0fd826

Added by Katja Luther about 4 years ago

fix #8725: show IDinVoc in NamedArea Textfield, add preference to make it configurable

View differences:

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/FactualDataPreference.java
49 49
    protected boolean allowOverrideFreeText;
50 50
    private boolean isOverrideFreeText = true;
51 51

  
52
    protected Combo comboShowIdInVocabularyInText;
53
    private boolean isOverrideShowIdInVoc = true;
54
    protected Boolean isShowIdInVoc;
55
    protected boolean allowOverrideShowIdInVoc;
56
    protected CdmPreference prefShowIdInVoc = null;
57
    Button allowOverrideButtonShowIdInVoc;
52 58

  
53 59
   @Override
54 60
   public void init() {
......
132 138
        if (!isAdminPreference){
133 139
            comboShowModifierFreeText.setEnabled(allowOverrideFreeText);
134 140
        }
141

  
142
        //show Id in Vocabulary in textfield
143
        comboShowIdInVocabularyInText = createBooleanCombo(composite, SHOW, DO_NOT_SHOW, PreferencePredicate.NamedAreaWithIdInVoc, Messages.FactualData_showIdInVocabulary, isAdminPreference);
144
        comboShowIdInVocabularyInText.setToolTipText(Messages.FactualData_showIdInVocabulary_tooltip);
145
        comboShowIdInVocabularyInText.addSelectionListener(this);
146
        if (this.isAdminPreference){
147
            allowOverrideButtonShowIdInVoc = createAllowOverrideButton(composite);
148
            allowOverrideButtonShowIdInVoc.setSelection(allowOverrideShowIdInVoc);
149
            allowOverrideButtonShowIdInVoc.addSelectionListener(new SelectionAdapter(){
150
                @Override
151
                public void widgetSelected(SelectionEvent e) {
152
                    allowOverrideShowIdInVoc = !allowOverrideShowIdInVoc;
153
                    setApply(true);
154
                    }
155
            });
156
        }
157
        index = 0;
158
        if(isShowIdInVoc==null){
159
            comboShowIdInVocabularyInText.select(0);
160
        } else{
161
            for (String itemLabel : comboShowIdInVocabularyInText.getItems()){
162
                if (itemLabel.startsWith(this.SHOW) && isShowIdInVoc){
163
                    comboShowIdInVocabularyInText.select(index);
164
                    break;
165
                }
166
                if (itemLabel.startsWith(DO_NOT_SHOW) && !isShowIdInVoc){
167
                    comboShowIdInVocabularyInText.select(index);
168
                    break;
169
                }
170
                index++;
171
            }
172
        }
173
        if (!isAdminPreference){
174
            comboShowIdInVocabularyInText.setEnabled(allowOverrideShowIdInVoc);
175
        }
176

  
177

  
135 178
        return composite;
136 179

  
137 180
    }
......
155 198
                PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.ShowModifierFreeText.getKey()), false);
156 199
            }
157 200

  
201
            if (isShowIdInVoc != null){
202
                PreferencesUtil.setStringValue(PreferencePredicate.NamedAreaWithIdInVoc.getKey(), Boolean.toString(isShowIdInVoc));
203
                PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.NamedAreaWithIdInVoc.getKey()), true);
204

  
205
            }else{
206
                PreferencesUtil.setBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.NamedAreaWithIdInVoc.getKey()), false);
207
            }
208

  
158 209
        }
159 210
        return true;
160 211
    }
......
195 246
           isShowModifierFreeText = null;
196 247
        }
197 248

  
249
      //get show IdInVocabulary values
250
        prefShowIdInVoc = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.NamedAreaWithIdInVoc);
251
        if (prefShowIdInVoc == null){
252
            prefShowIdInVoc = CdmPreference.NewTaxEditorInstance(PreferencePredicate.NamedAreaWithIdInVoc, PreferencePredicate.NamedAreaWithIdInVoc.getDefaultValue().toString());
253
        }
254
        allowOverrideShowIdInVoc = prefShowIdInVoc.isAllowOverride();
255
        isShowIdInVoc = null;
256
        String showIdInVoc = PreferencesUtil.getStringValue(PreferencePredicate.NamedAreaWithIdInVoc.getKey(), true);
257
        if (showIdInVoc != null){
258
            isShowIdInVoc = Boolean.valueOf(showIdInVoc);
259
        }
260

  
261
        isOverrideShowIdInVoc = PreferencesUtil.getBooleanValue(PreferencesUtil.prefOverrideKey(PreferencePredicate.NamedAreaWithIdInVoc.getKey()));
262
        if (!isOverrideShowIdInVoc){
263
            isShowIdInVoc = null;
264
        }
265

  
198 266
    }
199 267

  
200 268
    @Override
......
215 283
            allowOverrideFreeTextButton.setSelection(allowOverrideFreeText);
216 284
        }
217 285

  
286
       isShowIdInVoc = null;
287
       allowOverrideShowIdInVoc = true;
288

  
289
       comboShowIdInVocabularyInText.select(0);
290
       if (isAdminPreference){
291
           allowOverrideButtonShowIdInVoc.setSelection(allowOverrideShowIdInVoc);
292
        }
293

  
218 294
        setApply(true);
219 295
        super.performDefaults();
220 296
    }
......
250 326
                isOverrideFreeText = true;
251 327
            }
252 328

  
329
        }
330

  
331
        if (e.getSource().equals(this.comboShowIdInVocabularyInText)) {
332
            String text = comboShowIdInVocabularyInText.getText();
333
            if (text.startsWith(Messages.Preference_Use_Default)){
334
                isOverrideShowIdInVoc = false;
335
                isShowIdInVoc = null;
336

  
337
            }else if (text.equals(SHOW)){
338
                isShowIdInVoc = true;
339
                isOverrideShowIdInVoc = true;
340
            }else{
341
                isShowIdInVoc = false;
342
                isOverrideShowIdInVoc = true;
343
            }
344

  
253 345
        }
254 346
        setApply(true);
255 347

  

Also available in: Unified diff