merge master into develop
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / ui / section / group / MemberDetailSection.java
1 /**
2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
5 *
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
8 */
9
10 package eu.etaxonomy.taxeditor.ui.section.group;
11
12 import java.util.Collection;
13
14 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
15 import eu.etaxonomy.cdm.model.common.Group;
16 import eu.etaxonomy.cdm.model.common.User;
17 import eu.etaxonomy.taxeditor.ui.dialog.selection.UserSelectionDialog;
18 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
19 import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
20 import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
21
22 /**
23 * @author n.hoffmann
24 * @created Mar 9, 2011
25 * @version 1.0
26 */
27 public class MemberDetailSection extends AbstractEntityCollectionSection<Group, User> {
28
29 /**
30 * @param formFactory
31 * @param conversation
32 * @param parentElement
33 * @param title
34 * @param style
35 */
36 public MemberDetailSection(CdmFormFactory formFactory,
37 ConversationHolder conversation, ICdmFormElement parentElement,
38 int style) {
39 super(formFactory, conversation, parentElement, "Members", style);
40 }
41
42 /* (non-Javadoc)
43 * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#getCollection(java.lang.Object)
44 */
45 @Override
46 public Collection<User> getCollection(Group entity) {
47 return entity.getMembers();
48 }
49
50 /* (non-Javadoc)
51 * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#createNewElement()
52 */
53 @Override
54 public User createNewElement() {
55 User selection = UserSelectionDialog.select(getLayoutComposite().getShell(), //getConversationHolder(),
56 null);
57 return selection;
58 }
59
60 /* (non-Javadoc)
61 * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#addElement(eu.etaxonomy.cdm.model.common.IVersionableEntity)
62 */
63 @Override
64 public void addElement(User element) {
65 getEntity().addMember(element);
66 }
67
68 /* (non-Javadoc)
69 * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#removeElement(eu.etaxonomy.cdm.model.common.IVersionableEntity)
70 */
71 @Override
72 public void removeElement(User element) {
73 getEntity().removeMember(element);
74 }
75
76 /* (non-Javadoc)
77 * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#getEmptyString()
78 */
79 @Override
80 public String getEmptyString() {
81 return "No members yet.";
82 }
83
84 /* (non-Javadoc)
85 * @see eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection#getTooltipString()
86 */
87 @Override
88 protected String getTooltipString() {
89 return "Add a memeber to this group";
90 }
91
92 /**
93 * {@inheritDoc}
94 */
95 @Override
96 public User addExisting() {
97 // TODO Auto-generated method stub
98 return null;
99 }
100
101 /**
102 * {@inheritDoc}
103 */
104 @Override
105 public boolean allowAddExisting() {
106 // TODO Auto-generated method stub
107 return false;
108 }
109
110
111
112 }