+
+ @Override
+ protected void handleToggleableCacheField() {
+
+ boolean pushedState = toggleable_cache.getState();
+ getEntity().setTitleCache(toggleable_cache.getText(), pushedState);
+ setIrrelevantReferenceDetail(false);
+ updateToggleableCacheField();
+ }
+
+ protected void setIrrelevantReferenceDetail(boolean abbrev){
+
+ List<Object> except = new ArrayList();
+ except.addAll( Arrays.asList(new Object[] { toggleable_cache, toggleableAbbrevCache, text_editor, text_isbn, text_issn, text_organisation, text_pages, text_placePublished, text_publisher, text_referenceAbstract, text_uri, selection_institution}));
+ boolean pushedState;
+ if (abbrev){
+ except.add(text_title);
+ pushedState = toggleableAbbrevCache.getState();
+ } else{
+ except.add(text_abbrevTitle);
+ pushedState = toggleable_cache.getState();
+ }
+ switch( getEntity().getType()){
+ case Journal:
+ except.add(element_timePeriod);
+ break;
+ case Book:
+ except.remove(text_series);
+ except.remove(text_edition);
+ break;
+ }
+ setIrrelevant(pushedState, except);
+ }