Difference between revisions of "WorkspaceLightTree"
(→How to use the library) |
|||
Line 54: | Line 54: | ||
//only the query item can be selected | //only the query item can be selected | ||
popup.setSelectableTypes(ItemType.QUERY); | popup.setSelectableTypes(ItemType.QUERY); | ||
+ | popup.addPopupHandler(<my popup handler>); | ||
+ | popup.show(); | ||
+ | </source> | ||
+ | |||
+ | ===Filter items by MimeType=== | ||
+ | <source lang="java5"> | ||
+ | WorkspaceLightTreeLoadPopup popup = new WorkspaceLightTreeLoadPopup("Show only CSV items", false, true); | ||
+ | |||
+ | popup.setSelectableTypes(ItemType.EXTERNAL_FILE); | ||
+ | popup.setShowableTypes(ItemType.EXTERNAL_FILE); | ||
+ | popup.setAllowedMimeTypes("text/csv"); | ||
+ | |||
+ | popup.addPopupHandler(<my popup handler>); | ||
+ | popup.show(); | ||
+ | </source> | ||
+ | |||
+ | ===Filter items by Item Properties=== | ||
+ | <source lang="java5"> | ||
+ | WorkspaceLightTreeLoadPopup popup = new WorkspaceLightTreeLoadPopup("Show only items with \"MyFirstProperty\" and value \"MyFirstValue\"", false, true); | ||
+ | |||
+ | popup.addRequiredProperty("MyFirstProperty", "MyFirstValue"); | ||
popup.addPopupHandler(<my popup handler>); | popup.addPopupHandler(<my popup handler>); | ||
popup.show(); | popup.show(); |
Latest revision as of 18:16, 27 November 2012
The Workspace Light Tree widget offers to the developers a "File Chooser" like GWT component to access the user's Workspace information. Like a File Chooser let choose a File the WorkspaceLightTree let the user select a WorkspaceItem.
Contents
Available Panels
The main panel is the WorkspaceLightTreePanel which shows the user Workspace tree where the user can select the WorkspaceItem. The developer can set which types of items are selectable and which are showable. All events are propagated through the GWT handling system. All the background login (contacting the HomeLibrary, loading the Workspace, converting the items) is hidden to the developer.
As support to common actions, selection of items to load or open and selection of items to save, three additional panel have been added:
- WorkspaceLightTreeLoadPopup a pop-up panel that let the user to select an item for loading.
- WorkspaceLightTreeSavePanel a save panel where the user can select a destination item (both folder and/or folder item) and if required can digit an item name (validated through the HomeLibrary).
- WorkspaceLightTreeSavePopup a popup version of the save panel.
How to use the library
In the INSTALL file the developer can find the most updated information. Here the last available information:
To use this widget some steps are required: 1. setup your gwt xml module configuration file adding this line: <inherits name='org.gcube.portlets.user.workspace.lighttree.WorkspacePortletLightTree'/> 2. add the light tree jar to your eclipse project as library (the home library is also needed, please read the homelibrary INSTALL instructions) 3. setup your web.xml adding this lines: <servlet> <servlet-name>WorkspaceLightService</servlet-name> <servlet-class>org.gcube.portlets.user.workspace.lighttree.server.WorkspaceServiceImpl</servlet-class> </servlet> <servlet-mapping> <servlet-name>WorkspaceLightService</servlet-name> <url-pattern>/[YOUR APPLICATION SUFFIX]/WorkspaceLightService</url-pattern> </servlet-mapping> 4. Check in your portlet which is the username attribute name. The lighttree expect to find the username on httpsession attributes with the name "username"
Examples
Here some usage examples. For more examples and demo code please checkout the WorkspaceLightTreeSample project from d4science svn site.
Simple load popup
WorkspaceLightTreeLoadPopup popup = new WorkspaceLightTreeLoadPopup("Show the entire tree - all items selectable", false, true); popup.addPopupHandler(<my popup handler>); popup.show();
QueryItem selection
WorkspaceLightTreeLoadPopup popup = new WorkspaceLightTreeLoadPopup("Show all items - only query selectable", false, true); //only the query item can be selected popup.setSelectableTypes(ItemType.QUERY); popup.addPopupHandler(<my popup handler>); popup.show();
Filter items by MimeType
WorkspaceLightTreeLoadPopup popup = new WorkspaceLightTreeLoadPopup("Show only CSV items", false, true); popup.setSelectableTypes(ItemType.EXTERNAL_FILE); popup.setShowableTypes(ItemType.EXTERNAL_FILE); popup.setAllowedMimeTypes("text/csv"); popup.addPopupHandler(<my popup handler>); popup.show();
Filter items by Item Properties
WorkspaceLightTreeLoadPopup popup = new WorkspaceLightTreeLoadPopup("Show only items with \"MyFirstProperty\" and value \"MyFirstValue\"", false, true); popup.addRequiredProperty("MyFirstProperty", "MyFirstValue"); popup.addPopupHandler(<my popup handler>); popup.show();
Simple save popup
WorkspaceLightTreeSavePopup popup = new WorkspaceLightTreeSavePopup("Show the entire tree - only folder selectable - name field", true); //only the basket item can be selected popup.setSelectableTypes(ItemType.FOLDER); popup.addPopupHandler(<my popup handler>); popup.show();