1 package org
.argeo
.cms
.e4
.users
;
3 import org
.argeo
.cms
.e4
.CmsE4Utils
;
4 import org
.argeo
.util
.naming
.LdapAttrs
;
5 import org
.eclipse
.e4
.ui
.workbench
.modeling
.EPartService
;
6 import org
.eclipse
.jface
.viewers
.DoubleClickEvent
;
7 import org
.eclipse
.jface
.viewers
.IDoubleClickListener
;
8 import org
.eclipse
.jface
.viewers
.IStructuredSelection
;
9 import org
.osgi
.service
.useradmin
.Group
;
10 import org
.osgi
.service
.useradmin
.User
;
13 * Default double click listener for the various user tables, will open the
14 * clicked item in the editor
16 public class UserTableDefaultDClickListener
implements IDoubleClickListener
{
17 private final EPartService partService
;
19 public UserTableDefaultDClickListener(EPartService partService
) {
20 this.partService
= partService
;
23 public void doubleClick(DoubleClickEvent evt
) {
24 if (evt
.getSelection().isEmpty())
26 Object obj
= ((IStructuredSelection
) evt
.getSelection()).getFirstElement();
27 User user
= (User
) obj
;
29 String editorId
= getEditorId(user
);
30 CmsE4Utils
.openEditor(partService
, editorId
, LdapAttrs
.uid
.name(), user
.getName());
33 protected String
getEditorId(User user
) {
34 if (user
instanceof Group
)
35 return "org.argeo.cms.e4.partdescriptor.groupEditor";
37 return "org.argeo.cms.e4.partdescriptor.userEditor";