Merge branch 'hotfix/5.43.1'
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / supplemental / HeadlineSection.java
1 /**
2 *
3 */
4 package eu.etaxonomy.taxeditor.ui.section.supplemental;
5
6
7 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
8 import eu.etaxonomy.cdm.model.common.ICdmBase;
9 import eu.etaxonomy.cdm.model.common.IdentifiableEntity;
10 import eu.etaxonomy.taxeditor.store.StoreUtil;
11 import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
12 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
13 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
14
15 /**
16 * <p>HeadlineSection class.</p>
17 *
18 * @author n.hoffmann
19 */
20 public class HeadlineSection extends AbstractFormSection<ICdmBase> {
21
22 /**
23 * <p>Constructor for HeadlineSection.</p>
24 *
25 * @param cdmFormFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
26 * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
27 * @param style a int.
28 */
29 public HeadlineSection(CdmFormFactory cdmFormFactory, ICdmFormElement parentElement,
30 int style) {
31 super(cdmFormFactory, parentElement, style);
32 }
33
34 @Override
35 public void setEntity(ICdmBase cdmBase) {
36 ICdmBase entity = HibernateProxyHelper.deproxy(cdmBase);
37 super.setEntity(entity);
38
39 String simpleName = entity.getClass().getSimpleName();
40 String titleString = entity instanceof IdentifiableEntity ? ": " + ((IdentifiableEntity<?>) entity).generateTitle() : "";
41 titleString = StoreUtil.cleanTitleString(titleString);
42 setText(simpleName + titleString);
43 layout();
44 }
45
46 }