fox for set showable type and set selectable types
git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/widgets/workspace-explorer@169550 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
a8722fb26a
commit
9151a28cff
|
@ -4,6 +4,7 @@
|
||||||
package org.gcube.portlets.widgets.wsexplorer.client.select;
|
package org.gcube.portlets.widgets.wsexplorer.client.select;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.gcube.portlets.widgets.wsexplorer.client.Util;
|
import org.gcube.portlets.widgets.wsexplorer.client.Util;
|
||||||
|
@ -131,6 +132,10 @@ public class WorkspaceExplorerSelectPanel extends ScrollPanel implements HasWors
|
||||||
if(showOnlyFolders){
|
if(showOnlyFolders){
|
||||||
ItemType[] itemsType = new ItemType[1];
|
ItemType[] itemsType = new ItemType[1];
|
||||||
itemsType[0] = ItemType.FOLDER;
|
itemsType[0] = ItemType.FOLDER;
|
||||||
|
itemsType[1] = ItemType.PRIVATE_FOLDER;
|
||||||
|
itemsType[2] = ItemType.SHARED_FOLDER;
|
||||||
|
itemsType[3] = ItemType.VRE_FOLDER;
|
||||||
|
|
||||||
setSelectableTypes(itemsType);
|
setSelectableTypes(itemsType);
|
||||||
setShowableTypes(itemsType);
|
setShowableTypes(itemsType);
|
||||||
}
|
}
|
||||||
|
@ -440,9 +445,57 @@ public class WorkspaceExplorerSelectPanel extends ScrollPanel implements HasWors
|
||||||
* @param selectableTypes the selectableTypes to set
|
* @param selectableTypes the selectableTypes to set
|
||||||
*/
|
*/
|
||||||
private void setSelectableTypes(ItemType ... selectableTypes) {
|
private void setSelectableTypes(ItemType ... selectableTypes) {
|
||||||
controller.setSelectableTypes(selectableTypes);
|
ArrayList<ItemType> list = new ArrayList<>();
|
||||||
|
for (int i = 0; i < selectableTypes.length; i++) {
|
||||||
|
list.add(selectableTypes[i]);
|
||||||
|
}
|
||||||
|
GWT.log("setSelectableTypes for type " + list.toString());
|
||||||
|
controller.setSelectableTypes(getPatchedTypes(selectableTypes));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private ItemType[] getPatchedTypes(ItemType[] selectableTypes) {
|
||||||
|
boolean ANY_FOLDER = false;
|
||||||
|
boolean ANY_FILE = false;
|
||||||
|
|
||||||
|
ArrayList<ItemType> list = new ArrayList<>();
|
||||||
|
for (int i = 0; i < selectableTypes.length; i++) {
|
||||||
|
list.add(selectableTypes[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < selectableTypes.length; i++) {
|
||||||
|
if (selectableTypes[i] == ItemType.FOLDER)
|
||||||
|
ANY_FOLDER = true;
|
||||||
|
if (selectableTypes[i] == ItemType.EXTERNAL_FILE) {
|
||||||
|
ANY_FILE = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < selectableTypes.length; i++) {
|
||||||
|
list.add(selectableTypes[i]);
|
||||||
|
}
|
||||||
|
if (ANY_FOLDER) {
|
||||||
|
list.add(ItemType.PRIVATE_FOLDER);
|
||||||
|
list.add(ItemType.VRE_FOLDER);
|
||||||
|
list.add(ItemType.SHARED_FOLDER);
|
||||||
|
}
|
||||||
|
if (ANY_FILE) {
|
||||||
|
ArrayList<ItemType> temp = new ArrayList<>();
|
||||||
|
ItemType[] allValues = ItemType.values();
|
||||||
|
for (int i = 0; i < allValues.length; i++) {
|
||||||
|
temp.add(allValues[i]);
|
||||||
|
}
|
||||||
|
temp.remove(ItemType.PRIVATE_FOLDER);
|
||||||
|
temp.remove(ItemType.VRE_FOLDER);
|
||||||
|
temp.remove(ItemType.SHARED_FOLDER);
|
||||||
|
temp.remove(ItemType.FOLDER);
|
||||||
|
for (ItemType itemType : temp) {
|
||||||
|
list.add(itemType);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
GWT.log("getPatchedTypes returns " + list.toString());
|
||||||
|
return list.toArray(new ItemType[list.size()]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the selectable types.
|
* Gets the selectable types.
|
||||||
|
@ -466,6 +519,11 @@ public class WorkspaceExplorerSelectPanel extends ScrollPanel implements HasWors
|
||||||
* @param showableTypes the showableTypes to set
|
* @param showableTypes the showableTypes to set
|
||||||
*/
|
*/
|
||||||
private void setShowableTypes(ItemType ... showableTypes) {
|
private void setShowableTypes(ItemType ... showableTypes) {
|
||||||
controller.setShowableTypes(showableTypes);
|
ArrayList<ItemType> list = new ArrayList<>();
|
||||||
|
for (int i = 0; i < showableTypes.length; i++) {
|
||||||
|
list.add(showableTypes[i]);
|
||||||
|
}
|
||||||
|
GWT.log("setShowableTypes for type " + list.toString());
|
||||||
|
controller.setShowableTypes(getPatchedTypes(showableTypes));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue