including changes from cdmlib-print
[taxeditor.git] / taxeditor-editor / src / main / java / eu / etaxonomy / taxeditor / section / supplemental / HeadlineSection.java
1 /**
2 *
3 */
4 package eu.etaxonomy.taxeditor.section.supplemental;
5
6
7 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
8 import eu.etaxonomy.cdm.model.common.IdentifiableEntity;
9 import eu.etaxonomy.cdm.model.common.VersionableEntity;
10 import eu.etaxonomy.taxeditor.forms.AbstractFormSection;
11 import eu.etaxonomy.taxeditor.forms.CdmFormFactory;
12 import eu.etaxonomy.taxeditor.forms.ICdmFormElement;
13 import eu.etaxonomy.taxeditor.section.EmptyElement;
14
15 /**
16 * <p>HeadlineSection class.</p>
17 *
18 * @author n.hoffmann
19 * @version $Id: $
20 */
21 public class HeadlineSection extends AbstractFormSection<VersionableEntity> {
22
23 private EmptyElement emptyElement;
24
25 /**
26 * <p>Constructor for HeadlineSection.</p>
27 *
28 * @param cdmFormFactory a {@link eu.etaxonomy.taxeditor.forms.CdmFormFactory} object.
29 * @param parentElement a {@link eu.etaxonomy.taxeditor.forms.ICdmFormElement} object.
30 * @param style a int.
31 */
32 public HeadlineSection(CdmFormFactory cdmFormFactory, ICdmFormElement parentElement,
33 int style) {
34 super(cdmFormFactory, null, parentElement, style);
35 emptyElement = cdmFormFactory.createEmptyElement(this);
36 }
37
38 /** {@inheritDoc} */
39 @Override
40 public void setEntity(VersionableEntity versionableEntity) {
41 VersionableEntity entity = (VersionableEntity) HibernateProxyHelper.deproxy(versionableEntity);
42 super.setEntity(entity);
43 setText(entity.getClass().getSimpleName() + (entity instanceof IdentifiableEntity ? ": " + ((IdentifiableEntity) entity).getTitleCache() : ""));
44 layout();
45 }
46
47 }