X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.security.ui.admin%2Fsrc%2Forg%2Fargeo%2Fsecurity%2Fui%2Fadmin%2Feditors%2FUserMainPage.java;h=c657c35086650e1f01f636ffbf8c3b97f6235690;hb=eec0cd2b46a2186b4df1b1a59962c81ae2a9bcb7;hp=41b21651f8b9acbaa74481a798ac183170a94c42;hpb=28f2a8c1668ce2e9d2bb2a6601a659c2bcc2676b;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.security.ui.admin/src/org/argeo/security/ui/admin/editors/UserMainPage.java b/org.argeo.security.ui.admin/src/org/argeo/security/ui/admin/editors/UserMainPage.java index 41b21651f..c657c3508 100644 --- a/org.argeo.security.ui.admin/src/org/argeo/security/ui/admin/editors/UserMainPage.java +++ b/org.argeo.security.ui.admin/src/org/argeo/security/ui/admin/editors/UserMainPage.java @@ -249,7 +249,7 @@ public class UserMainPage extends FormPage implements ArgeoNames { // Drag and drop int operations = DND.DROP_COPY | DND.DROP_MOVE; Transfer[] tt = new Transfer[] { TextTransfer.getInstance() }; - userViewer.addDropSupport(operations, tt, new ItemDropListener( + userViewer.addDropSupport(operations, tt, new GroupDropListener( userViewer, userAdmin, editor.getDisplayedUser())); } @@ -264,19 +264,21 @@ public class UserMainPage extends FormPage implements ArgeoNames { @Override protected List listFilteredElements(String filter) { - return (List) editor.getFlatGroups(); + return (List) editor.getFlatGroups(null); } } - // DRAG & DROP MANAGEMENT - - private class ItemDropListener extends ViewerDropAdapter { + /** + * Defines this table as being a potential target to add group membership + * (roles) to this user + */ + private class GroupDropListener extends ViewerDropAdapter { private static final long serialVersionUID = 2893468717831451621L; private final UserAdmin myUserAdmin; private final User myUser; - public ItemDropListener(Viewer viewer, UserAdmin userAdmin, User user) { + public GroupDropListener(Viewer viewer, UserAdmin userAdmin, User user) { super(viewer); this.myUserAdmin = userAdmin; this.myUser = user; @@ -300,6 +302,7 @@ public class UserMainPage extends FormPage implements ArgeoNames { // TODO check if the user is already member of this group // we expect here that there is already a begun transaction // TODO implement the dirty state + editor.beginTransactionIfNeeded(); Group group = (Group) role; group.addMember(myUser); }