Project

General

Profile

Download (2.16 KB) Statistics
| Branch: | Tag: | Revision:
1
package eu.etaxonomy.taxeditor.ui.section.user;
2

    
3
import org.eclipse.swt.events.SelectionListener;
4

    
5
import eu.etaxonomy.cdm.model.common.Group;
6
import eu.etaxonomy.cdm.model.common.User;
7
import eu.etaxonomy.taxeditor.ui.element.AbstractFormSection;
8
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
9
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
10
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement;
11
import eu.etaxonomy.taxeditor.ui.selection.EntitySelectionElement;
12

    
13
/**
14
 *
15
 * @author n.hoffmann
16
 * @created Mar 10, 2011
17
 * @version 1.0
18
 */
19
public class GroupsByUserDetailElement extends
20
		AbstractEntityCollectionElement<Group> {
21

    
22
	private EntitySelectionElement<Group> selection_group;
23

    
24
	/**
25
	 * @param formFactory
26
	 * @param section
27
	 * @param entity
28
	 * @param removeListener
29
	 * @param backgroundColor
30
	 * @param style
31
	 */
32
	public GroupsByUserDetailElement(CdmFormFactory formFactory,
33
			AbstractFormSection section, Group entity,
34
			SelectionListener removeListener, int style) {
35
		super(formFactory, section, entity, removeListener, null, style);
36
	}
37

    
38
	/*
39
	 * (non-Javadoc)
40
	 *
41
	 * @see
42
	 * eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement#setEntity
43
	 * (java.lang.Object)
44
	 */
45
	@Override
46
	public void setEntity(Group entity) {
47
	    User user = ((GroupsByUserDetailSection)this.getParentElement()).getEntity();
48
	    user.getGroups().remove(this.entity);
49
		this.entity = entity;
50
		user.getGroups().add(entity);
51
	}
52

    
53
	/*
54
	 * (non-Javadoc)
55
	 *
56
	 * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement#
57
	 * createControls(eu.etaxonomy.taxeditor.ui.forms.ICdmFormElement, int)
58
	 */
59
	@Override
60
	public void createControls(ICdmFormElement element, int style) {
61
		selection_group = formFactory
62
				.createSelectionElement(Group.class,//getConversationHolder(),
63
				        element, "", getEntity(),
64
						EntitySelectionElement.NOTHING, style);
65
	}
66

    
67
	/*
68
	 * (non-Javadoc)
69
	 *
70
	 * @see
71
	 * eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement#handleEvent
72
	 * (java.lang.Object)
73
	 */
74
	@Override
75
	public void handleEvent(Object eventSource) {
76
		if (eventSource == selection_group) {
77
			setEntity(selection_group.getEntity());
78
		}
79
	}
80
}
(1-1/5)