First clean version of the security UI, also tested with RAP
authorMathieu Baudier <mbaudier@argeo.org>
Fri, 21 Jan 2011 12:46:36 +0000 (12:46 +0000)
committerMathieu Baudier <mbaudier@argeo.org>
Fri, 21 Jan 2011 12:46:36 +0000 (12:46 +0000)
git-svn-id: https://svn.argeo.org/commons/trunk@4064 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

security/eclipse/plugins/org.argeo.security.ui.application/src/main/java/org/argeo/security/ui/application/SecureActionBarAdvisor.java
security/eclipse/plugins/org.argeo.security.ui/icons/save.gif [new file with mode: 0644]
security/eclipse/plugins/org.argeo.security.ui/icons/save_security.png [new file with mode: 0644]
security/eclipse/plugins/org.argeo.security.ui/icons/save_security_disabled.png [new file with mode: 0644]
security/eclipse/plugins/org.argeo.security.ui/plugin.xml
security/eclipse/plugins/org.argeo.security.ui/src/main/java/org/argeo/security/ui/commands/SaveArgeoUser.java
security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/SimpleArgeoUser.java

index 5d7c58e0c8479f23d8a4a21aa8cfc65b88731c48..e8bcf018fe54fc800b6ad478ca22c9decfa32df1 100644 (file)
@@ -1,9 +1,13 @@
 package org.argeo.security.ui.application;
 
 import org.eclipse.jface.action.GroupMarker;
+import org.eclipse.jface.action.ICoolBarManager;
 import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IToolBarManager;
 import org.eclipse.jface.action.MenuManager;
 import org.eclipse.jface.action.Separator;
+import org.eclipse.jface.action.ToolBarManager;
+import org.eclipse.swt.SWT;
 import org.eclipse.ui.IWorkbenchActionConstants;
 import org.eclipse.ui.IWorkbenchWindow;
 import org.eclipse.ui.actions.ActionFactory;
@@ -15,17 +19,16 @@ public class SecureActionBarAdvisor extends ActionBarAdvisor {
        private IWorkbenchAction exitAction;
        private IWorkbenchAction openPerspectiveDialogAction;
        private IWorkbenchAction showViewMenuAction;
-       private IWorkbenchAction newWindowAction;
        private IWorkbenchAction preferences;
        private IWorkbenchAction helpContentAction;
-       private IWorkbenchAction changePassword;
-       // private IWorkbenchAction aboutAction;
+       private IWorkbenchAction saveAction;
+       private IWorkbenchAction saveAllAction;
 
-       private final Boolean isRcp;
+       // private final Boolean isRcp;
 
        public SecureActionBarAdvisor(IActionBarConfigurer configurer, Boolean isRcp) {
                super(configurer);
-               this.isRcp = isRcp;
+               // this.isRcp = isRcp;
        }
 
        protected void makeActions(IWorkbenchWindow window) {
@@ -41,13 +44,13 @@ public class SecureActionBarAdvisor extends ActionBarAdvisor {
 
                exitAction = ActionFactory.QUIT.create(window);
                register(exitAction);
-               if (isRcp) {
-                       // aboutAction = ActionFactory.ABOUT.create(window);
-                       // register(aboutAction);
-                       newWindowAction = ActionFactory.OPEN_NEW_WINDOW.create(window);
-                       register(newWindowAction);
-               }
-               
+
+               // Save semantiocs
+               saveAction = ActionFactory.SAVE.create(window);
+               register(saveAction);
+               saveAllAction = ActionFactory.SAVE_ALL.create(window);
+               register(saveAllAction);
+
        }
 
        protected void fillMenuBar(IMenuManager menuBar) {
@@ -68,10 +71,10 @@ public class SecureActionBarAdvisor extends ActionBarAdvisor {
                menuBar.add(helpMenu);
 
                // File
-               if (isRcp) {
-                       fileMenu.add(newWindowAction);
-                       fileMenu.add(new Separator());
-               }
+               fileMenu.add(saveAction);
+               fileMenu.add(saveAllAction);
+               fileMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
+               fileMenu.add(new Separator());
                fileMenu.add(exitAction);
 
                // Edit
@@ -86,4 +89,12 @@ public class SecureActionBarAdvisor extends ActionBarAdvisor {
                // helpMenu.add(aboutAction);
        }
 
+       @Override
+       protected void fillCoolBar(ICoolBarManager coolBar) {
+               IToolBarManager saveToolbar = new ToolBarManager(SWT.FLAT | SWT.RIGHT);
+               saveToolbar.add(saveAction);
+               saveToolbar.add(saveAllAction);
+               coolBar.add(saveToolbar);
+       }
+
 }
diff --git a/security/eclipse/plugins/org.argeo.security.ui/icons/save.gif b/security/eclipse/plugins/org.argeo.security.ui/icons/save.gif
new file mode 100644 (file)
index 0000000..654ad7b
Binary files /dev/null and b/security/eclipse/plugins/org.argeo.security.ui/icons/save.gif differ
diff --git a/security/eclipse/plugins/org.argeo.security.ui/icons/save_security.png b/security/eclipse/plugins/org.argeo.security.ui/icons/save_security.png
new file mode 100644 (file)
index 0000000..ca41dc9
Binary files /dev/null and b/security/eclipse/plugins/org.argeo.security.ui/icons/save_security.png differ
diff --git a/security/eclipse/plugins/org.argeo.security.ui/icons/save_security_disabled.png b/security/eclipse/plugins/org.argeo.security.ui/icons/save_security_disabled.png
new file mode 100644 (file)
index 0000000..fb7d08d
Binary files /dev/null and b/security/eclipse/plugins/org.argeo.security.ui/icons/save_security_disabled.png differ
index ec50448398912a21728b0a2081622fd2fc14a4cf..e365536b7d6aec649f115968687002c24aa0a670 100644 (file)
       </command>
     </extension>
      <extension
-         id="menu:org.eclipse.ui.main.menu"
          point="org.eclipse.ui.menus">
        <menuContribution
             locationURI="toolbar:org.argeo.security.ui.rolesView">
         </menuContribution>
         <menuContribution
                 allPopups="false"
-                locationURI="toolbar:org.eclipse.ui.main.toolbar">
-             <toolbar
-                   id="org.argeo.security.ui.mainToolbar">
-                <command
-                      commandId="org.argeo.security.ui.saveArgeoUser"
-                      disabledIcon="icons/user.gif"
-                      icon="icons/user.gif"
-                      label="Save user"
-                      style="push"
-                      tooltip="Save user">
-                </command>
-             </toolbar>
-          </menuContribution>
-        <menuContribution
-                allPopups="false"
-                locationURI="toolbar:org.eclipse.ui.main.toolbar">
-             <toolbar
-                   id="org.argeo.security.ui.mainToolbar">
+                locationURI="menu:file?after=additions">
                 <command
                       commandId="org.argeo.security.ui.openChangePasswordDialog"
                       disabledIcon="icons/password.gif"
                       style="push"
                       tooltip="Change password">
                 </command>
-             </toolbar>
           </menuContribution>
   </extension>
  </plugin>
index e736da8f4edfdb430e43117a03bede536aaa143b..ca7229c2b27cef7770295f84500ba54d98ccd2b8 100644 (file)
@@ -24,6 +24,10 @@ import java.util.Map;
 
 import org.argeo.ArgeoException;
 
+/**
+ * Read-write implementation of an Argeo user. Typically initialized with a
+ * generic instance (read-only9 in order to modify a user.
+ */
 public class SimpleArgeoUser implements ArgeoUser, Serializable {
        private static final long serialVersionUID = 1L;