private TextWithLabelElement text_publisher;
private TextWithLabelElement text_referenceAbstract;
private TextWithLabelElement text_series;
- private TextWithLabelElement text_seriesPart;
+// private TextWithLabelElement text_seriesPart;
private TextWithLabelElement text_volume;
private TextWithLabelElement text_abbrevTitle;
private TextWithLabelElement text_title;
"Date Published", entity.getDatePublished(), style);
createUriAndAbstract(this, entity, SWT.NULL);
+ handleToggleableAbbrevTitleField();
+ handleToggleableCacheField();
}
/*
// Object[]{text_cache}));
toggleable_cache.setEnabled(getEntity().isProtectedTitleCache());
toggleableAbbrevCache.setEnabled(getEntity().isProtectedAbbrevTitleCache());
- setIrrelevant(toggleable_cache.getState(), Arrays.asList(new Object[] { toggleable_cache }));
- setIrrelevant(toggleableAbbrevCache.getState(), Arrays.asList(new Object[] { toggleableAbbrevCache}));
+ setIrrelevantReferenceDetail(false);
+ setIrrelevantReferenceDetail(true);
}
/**
text_editor = formFactory.createTextWithLabelElement(element, "Editor",
reference.getEditor(), style);
- // series part
+ /* series part
text_seriesPart = formFactory.createTextWithLabelElement(element,
"Series", reference.getSeriesPart(), style);
-
+*/
if (referenceType.equals(ReferenceType.Book)) {
// edition
text_edition = formFactory.createTextWithLabelElement(element,
getEntity().setPublisher(text_publisher.getText());
} else if (eventSource == text_referenceAbstract) {
getEntity().setReferenceAbstract(text_referenceAbstract.getText());
- } else if (eventSource == text_seriesPart) {
- getEntity().setSeriesPart(text_seriesPart.getText());
+ } else if (eventSource == text_series) {
+ getEntity().setSeriesPart(text_series.getText());
} else if (eventSource == text_title) {
getEntity().setTitle(text_title.getText());
toggleable_cache.setText(text_title.getText());
protected void handleToggleableAbbrevTitleField() {
boolean pushedAbbrevState = toggleableAbbrevCache.getState();
getEntity().setAbbrevTitleCache(toggleableAbbrevCache.getText(), pushedAbbrevState);
- setIrrelevant(pushedAbbrevState, Arrays.asList(new Object[] { toggleableAbbrevCache, toggleable_cache, text_title }));
+ setIrrelevantReferenceDetail(true);
updateToggleableCacheField();
}
}
}
}
+
+ @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);
+ }
}