Author: fmui
Date: Tue Nov 24 14:17:23 2015
New Revision: 1716144

URL: http://svn.apache.org/viewvc?rev=1716144&view=rev
Log:
Workbench: minor corrections

Modified:
    
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateDocumentDialog.java
    
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateFolderDialog.java
    
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateItemDialog.java
    
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreatePolicyDialog.java
    
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/FolderPanel.java
    
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/model/ClientModel.java

Modified: 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateDocumentDialog.java
URL: 
http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateDocumentDialog.java?rev=1716144&r1=1716143&r2=1716144&view=diff
==============================================================================
--- 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateDocumentDialog.java
 (original)
+++ 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateDocumentDialog.java
 Tue Nov 24 14:17:23 2015
@@ -91,12 +91,15 @@ public class CreateDocumentDialog extend
     private void createGUI(File file) {
         final CreateDocumentDialog thisDialog = this;
 
+        boolean hasCurrentFolder = getClientModel().getCurrentFolder() != null;
+
         unfiledButton = new JRadioButton("create unfiled");
-        unfiledButton.setSelected(false);
+        unfiledButton.setSelected(!hasCurrentFolder);
 
         currentPathButton = new JRadioButton("create in the current folder: "
-                + getClientModel().getCurrentFolder().getPath());
-        currentPathButton.setSelected(true);
+                + (hasCurrentFolder ? 
getClientModel().getCurrentFolder().getPath() : ""));
+        currentPathButton.setSelected(hasCurrentFolder);
+        currentPathButton.setEnabled(hasCurrentFolder);
 
         ButtonGroup filedGroup = new ButtonGroup();
         filedGroup.add(unfiledButton);

Modified: 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateFolderDialog.java
URL: 
http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateFolderDialog.java?rev=1716144&r1=1716143&r2=1716144&view=diff
==============================================================================
--- 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateFolderDialog.java
 (original)
+++ 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateFolderDialog.java
 Tue Nov 24 14:17:23 2015
@@ -53,6 +53,13 @@ public class CreateFolderDialog extends
     private void createGUI() {
         final CreateFolderDialog thisDialog = this;
 
+        if (getClientModel().getCurrentFolder() == null) {
+            JOptionPane.showMessageDialog(this, "Please select a folder 
first.", "No parent folder!",
+                    JOptionPane.ERROR_MESSAGE);
+            thisDialog.dispose();
+            return;
+        }
+
         nameField = new JTextField(60);
         createRow("Name:", nameField, 0);
 

Modified: 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateItemDialog.java
URL: 
http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateItemDialog.java?rev=1716144&r1=1716143&r2=1716144&view=diff
==============================================================================
--- 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateItemDialog.java
 (original)
+++ 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreateItemDialog.java
 Tue Nov 24 14:17:23 2015
@@ -59,12 +59,15 @@ public class CreateItemDialog extends Cr
     private void createGUI() {
         final CreateItemDialog thisDialog = this;
 
+        boolean hasCurrentFolder = getClientModel().getCurrentFolder() != null;
+
         unfiledButton = new JRadioButton("create unfiled");
-        unfiledButton.setSelected(false);
+        unfiledButton.setSelected(!hasCurrentFolder);
 
         currentPathButton = new JRadioButton("create in the current folder: "
-                + getClientModel().getCurrentFolder().getPath());
-        currentPathButton.setSelected(true);
+                + (hasCurrentFolder ? 
getClientModel().getCurrentFolder().getPath() : ""));
+        currentPathButton.setSelected(hasCurrentFolder);
+        currentPathButton.setEnabled(hasCurrentFolder);
 
         ButtonGroup filedGroup = new ButtonGroup();
         filedGroup.add(unfiledButton);

Modified: 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreatePolicyDialog.java
URL: 
http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreatePolicyDialog.java?rev=1716144&r1=1716143&r2=1716144&view=diff
==============================================================================
--- 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreatePolicyDialog.java
 (original)
+++ 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/CreatePolicyDialog.java
 Tue Nov 24 14:17:23 2015
@@ -60,12 +60,15 @@ public class CreatePolicyDialog extends
     private void createGUI() {
         final CreatePolicyDialog thisDialog = this;
 
+        boolean hasCurrentFolder = getClientModel().getCurrentFolder() != null;
+
         unfiledButton = new JRadioButton("create unfiled");
-        unfiledButton.setSelected(false);
+        unfiledButton.setSelected(!hasCurrentFolder);
 
         currentPathButton = new JRadioButton("create in the current folder: "
-                + getClientModel().getCurrentFolder().getPath());
-        currentPathButton.setSelected(true);
+                + (hasCurrentFolder ? 
getClientModel().getCurrentFolder().getPath() : ""));
+        currentPathButton.setSelected(hasCurrentFolder);
+        currentPathButton.setEnabled(hasCurrentFolder);
 
         ButtonGroup filedGroup = new ButtonGroup();
         filedGroup.add(unfiledButton);

Modified: 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/FolderPanel.java
URL: 
http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/FolderPanel.java?rev=1716144&r1=1716143&r2=1716144&view=diff
==============================================================================
--- 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/FolderPanel.java
 (original)
+++ 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/FolderPanel.java
 Tue Nov 24 14:17:23 2015
@@ -35,6 +35,7 @@ import javax.swing.SwingUtilities;
 
 import org.apache.chemistry.opencmis.client.api.Folder;
 import org.apache.chemistry.opencmis.client.api.ObjectId;
+import 
org.apache.chemistry.opencmis.commons.exceptions.CmisPermissionDeniedException;
 import org.apache.chemistry.opencmis.workbench.model.ClientModel;
 import org.apache.chemistry.opencmis.workbench.model.ClientModelEvent;
 import org.apache.chemistry.opencmis.workbench.model.FolderListener;
@@ -73,7 +74,12 @@ public class FolderPanel extends JPanel
                     String path = currentFolder.getPath();
                     pathField.setText(path);
 
-                    Folder parent = currentFolder.getFolderParent();
+                    Folder parent = null;
+                    try {
+                        parent = currentFolder.getFolderParent();
+                    } catch (CmisPermissionDeniedException pde) {
+                        // user is not allowed to the see the parent folder
+                    }
                     if (parent == null) {
                         parentId = null;
                         upButton.setEnabled(false);

Modified: 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/model/ClientModel.java
URL: 
http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/model/ClientModel.java?rev=1716144&r1=1716143&r2=1716144&view=diff
==============================================================================
--- 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/model/ClientModel.java
 (original)
+++ 
chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/model/ClientModel.java
 Tue Nov 24 14:17:23 2015
@@ -206,21 +206,20 @@ public class ClientModel {
 
             if (selectedObject instanceof Folder) {
                 folderObject = selectedObject;
-            } else {
-                if (selectedObject instanceof FileableCmisObject) {
-                    List<Folder> parents = ((FileableCmisObject) 
selectedObject).getParents();
-                    if (isNotEmpty(parents)) {
-                        folderObject = parents.get(0);
-                    } else {
-                        setCurrentFolder(null, new ArrayList<CmisObject>(0));
-                        return selectedObject;
-                    }
-                } else {
-                    setCurrentFolder(null, new ArrayList<CmisObject>(0));
-                    return selectedObject;
+            } else if (selectedObject instanceof FileableCmisObject) {
+                List<Folder> parents = ((FileableCmisObject) 
selectedObject).getParents();
+                if (isNotEmpty(parents)) {
+                    folderObject = parents.get(0);
                 }
             }
 
+            if (folderObject == null) {
+                // selected object is unfiled, a relationship object, or the
+                // user is not allowed to see the parent folder
+                setCurrentFolder(null, Collections.<CmisObject> emptyList());
+                return selectedObject;
+            }
+
             List<CmisObject> children = new ArrayList<CmisObject>();
 
             if (clientSession.getMaxChildren() != 0) {


Reply via email to