- added section for "Original Label Data" to DetailsView (#4254)
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / mvc / element / TextReadOnly.java
1 // $Id$
2 /**
3 * Copyright (C) 2014 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
6 *
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
9 */
10 package eu.etaxonomy.taxeditor.ui.mvc.element;
11
12 import org.eclipse.swt.SWT;
13 import org.eclipse.swt.events.DisposeEvent;
14 import org.eclipse.swt.events.DisposeListener;
15 import org.eclipse.swt.widgets.Composite;
16 import org.eclipse.swt.widgets.Display;
17 import org.eclipse.swt.widgets.Text;
18 import org.eclipse.ui.forms.widgets.FormToolkit;
19 import org.eclipse.ui.forms.widgets.TableWrapData;
20 import org.eclipse.ui.forms.widgets.TableWrapLayout;
21
22 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
23 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
24 import eu.etaxonomy.taxeditor.ui.mvc.AbstractCdmComposite;
25
26 /**
27 * @author pplitzner
28 * @date 18.06.2014
29 *
30 */
31 public class TextReadOnly extends AbstractCdmComposite<TextReadOnlyController> {
32
33 private final FormToolkit toolkit = new FormToolkit(Display.getCurrent());
34 private final Text text;
35
36 /**
37 * Create the composite.
38 * @param parent
39 * @param style
40 */
41 public TextReadOnly(Composite parent, int style) {
42 super(parent, style);
43 addDisposeListener(new DisposeListener() {
44 @Override
45 public void widgetDisposed(DisposeEvent e) {
46 toolkit.dispose();
47 }
48 });
49 toolkit.paintBordersFor(this);
50 {
51 setLayout(new TableWrapLayout());
52 }
53
54 text = new Text(this, SWT.BORDER | SWT.MULTI);
55 text.setEnabled(false);
56 text.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB, TableWrapData.TOP, 1, 1));
57
58 }
59
60 /* (non-Javadoc)
61 * @see eu.etaxonomy.taxeditor.ui.mvc.AbstractCdmComposite#initInternalController(eu.etaxonomy.taxeditor.ui.element.CdmFormFactory, eu.etaxonomy.taxeditor.ui.element.ICdmFormElement)
62 */
63 @Override
64 protected void initInternalController(CdmFormFactory formFactory, ICdmFormElement parentElement) {
65 controller = new TextReadOnlyController(this, formFactory, parentElement, null, SWT.NONE);
66 }
67
68 public Text getText() {
69 return text;
70 }
71 }