Ticket #1868: enhancement is completed
git-svn-id: http://svn.d4science-ii.research-infrastructures.eu/gcube/trunk/portlets/user/workspace@81162 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
c8e78b701a
commit
35aaa45853
2
pom.xml
2
pom.xml
|
@ -11,7 +11,7 @@
|
|||
<groupId>org.gcube.portlets.user</groupId>
|
||||
<artifactId>workspace</artifactId>
|
||||
<packaging>war</packaging>
|
||||
<version>6.3.0-SNAPSHOT</version>
|
||||
<version>6.4.0-SNAPSHOT</version>
|
||||
<name>gCube Workspace Portlet</name>
|
||||
<description>
|
||||
gcube Workspace Portlet is a portlet for users workspace management
|
||||
|
|
|
@ -38,6 +38,8 @@ import org.gcube.portlets.user.workspace.client.event.GridElementSelectedEvent;
|
|||
import org.gcube.portlets.user.workspace.client.event.GridElementSelectedEventHandler;
|
||||
import org.gcube.portlets.user.workspace.client.event.GridElementUnSelectedEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.GridElementUnSelectedEventHandler;
|
||||
import org.gcube.portlets.user.workspace.client.event.GridRefreshEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.GridRefreshEventHandler;
|
||||
import org.gcube.portlets.user.workspace.client.event.ImagePreviewEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.ImagePreviewEventHandler;
|
||||
import org.gcube.portlets.user.workspace.client.event.LoadAllScopeEvent;
|
||||
|
@ -66,7 +68,6 @@ import org.gcube.portlets.user.workspace.client.event.SearchTextEvent;
|
|||
import org.gcube.portlets.user.workspace.client.event.SearchTextEventHandler;
|
||||
import org.gcube.portlets.user.workspace.client.event.SendMessageEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.SendMessageEventHandler;
|
||||
import org.gcube.portlets.user.workspace.client.event.SessionExpiredEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.WebDavUrlEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.WebDavUrlEventHandler;
|
||||
import org.gcube.portlets.user.workspace.client.interfaces.EventsTypeEnum;
|
||||
|
@ -111,7 +112,6 @@ public class AppController implements SubscriberInterface {
|
|||
private HasWidgets rootPanel;
|
||||
|
||||
|
||||
|
||||
public AppController(AppControllerExplorer appControllerExplorer) {
|
||||
this.appContrExplorer = appControllerExplorer;
|
||||
this.appContrExplorer.subscribe(this, new EventsTypeEnum[] {
|
||||
|
@ -235,6 +235,21 @@ public class AppController implements SubscriberInterface {
|
|||
AppControllerExplorer.getEventBus().fireEvent(new GetShareLinkEvent(getLinkEvent.getSourceFile()));
|
||||
}
|
||||
});
|
||||
|
||||
eventBus.addHandler(GridRefreshEvent.TYPE, new GridRefreshEventHandler() {
|
||||
|
||||
@Override
|
||||
public void onGridRefresh(GridRefreshEvent gridRefreshEvent) {
|
||||
|
||||
if(wsPortlet.getToolBarPath().getLastParent()!=null){
|
||||
FileModel parent = wsPortlet.getToolBarPath().getLastParent();
|
||||
|
||||
//CREATE FOLDER PARENT FOR RPC
|
||||
FolderModel folder = new FolderModel(parent.getIdentifier(), parent.getName(), parent.getParentFileModel(), true, parent.isShared());
|
||||
updateStoreByRpc(folder);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
eventBus.addHandler(PreviewMessageEvent.TYPE, new PreviewMessageEventHandler() {
|
||||
|
||||
|
@ -440,11 +455,13 @@ public class AppController implements SubscriberInterface {
|
|||
if(searchTextEvent.getTextSearch()==null){
|
||||
appContrExplorer.searching(false);
|
||||
wsPortlet.getGridGroupContainer().setBorderAsOnSearch(false);
|
||||
wsPortlet.getGxtCardLayoutResultPanel().getToolBarItemFunctionalities().activeButtonsOnSearch(false); //ADDED 09-08-13
|
||||
}
|
||||
else{
|
||||
wsPortlet.getSearchAndFilterContainer().setSearchActive(true); //ADDED 06-04-12
|
||||
// setSearchActive(true);
|
||||
appContrExplorer.searching(true);
|
||||
wsPortlet.getGxtCardLayoutResultPanel().getToolBarItemFunctionalities().activeButtonsOnSearch(true); //ADDED 09-08-13
|
||||
doSearchText(searchTextEvent.getTextSearch());
|
||||
}
|
||||
}
|
||||
|
@ -890,39 +907,6 @@ public class AppController implements SubscriberInterface {
|
|||
else
|
||||
initPortlet(rootPanel, instanceWithGrouping, searchingForItemId, searchParameter, itemIdParameter, operationParameter);
|
||||
|
||||
|
||||
//// System.out.println("isSearch "+isSearch);
|
||||
//// System.out.println("isSearchForItemId "+isSearchForItemId);
|
||||
//
|
||||
// rootPanel.add(wsPortlet.getBorderLayoutContainer());
|
||||
//
|
||||
// //SET TOGGLE BUTTON GRID VIEW
|
||||
// Scheduler.get().scheduleDeferred(new ScheduledCommand() {
|
||||
//
|
||||
// @Override
|
||||
// public void execute() {
|
||||
// wsPortlet.getGxtCardLayoutResultPanel().getToolBarItemFunctionalities().toggleGridViewButton(instanceWithGrouping);
|
||||
// }
|
||||
// });
|
||||
//
|
||||
// //IF IS SEARCH and IS NOT SEARCH FOR ITEM ID - fire event search text
|
||||
// if(searchParameter!=null && !searchParameter.isEmpty() && !isSearchForItemId){
|
||||
// Scheduler.get().scheduleDeferred(new ScheduledCommand() {
|
||||
// @Override
|
||||
// public void execute() {
|
||||
// wsPortlet.getSearchAndFilterContainer().searchText(searchParameter);
|
||||
// }
|
||||
// });
|
||||
// } else if(itemIdParameter!=null && !itemIdParameter.isEmpty()){ //SEARCH FOR ITEM ID
|
||||
//
|
||||
// Scheduler.get().scheduleDeferred(new ScheduledCommand() {
|
||||
// @Override
|
||||
// public void execute() {
|
||||
// AppController.getEventBus().fireEvent(new SearchItemByIdEvent(itemIdParameter, operationParameter));
|
||||
// }
|
||||
// });
|
||||
//
|
||||
// }
|
||||
}
|
||||
|
||||
private void initPortlet(final HasWidgets rootPanel, final boolean instanceWithGrouping, boolean isSearchForItemId, final String searchParameter, final String itemIdParameter, final String operationParameter){
|
||||
|
@ -944,6 +928,7 @@ public class AppController implements SubscriberInterface {
|
|||
@Override
|
||||
public void execute() {
|
||||
wsPortlet.getSearchAndFilterContainer().searchText(searchParameter);
|
||||
wsPortlet.getGxtCardLayoutResultPanel().getToolBarItemFunctionalities().activeButtonsOnSearch(false); //ADDED 09-08-13
|
||||
}
|
||||
});
|
||||
} else if(itemIdParameter!=null && !itemIdParameter.isEmpty()){ //SEARCH FOR ITEM ID
|
||||
|
@ -952,6 +937,7 @@ public class AppController implements SubscriberInterface {
|
|||
@Override
|
||||
public void execute() {
|
||||
AppController.getEventBus().fireEvent(new SearchItemByIdEvent(itemIdParameter, operationParameter));
|
||||
wsPortlet.getGxtCardLayoutResultPanel().getToolBarItemFunctionalities().activeButtonsOnSearch(false); //ADDED 09-08-13
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -0,0 +1,30 @@
|
|||
package org.gcube.portlets.user.workspace.client.event;
|
||||
|
||||
import org.gcube.portlets.user.workspace.client.model.FileGridModel;
|
||||
|
||||
import com.extjs.gxt.ui.client.data.ModelData;
|
||||
import com.google.gwt.event.shared.GwtEvent;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
||||
*
|
||||
*/
|
||||
public class GridRefreshEvent extends GwtEvent<GridRefreshEventHandler> {
|
||||
public static Type<GridRefreshEventHandler> TYPE = new Type<GridRefreshEventHandler>();
|
||||
|
||||
public GridRefreshEvent() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Type<GridRefreshEventHandler> getAssociatedType() {
|
||||
return TYPE;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void dispatch(GridRefreshEventHandler handler) {
|
||||
handler.onGridRefresh(this);
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,15 @@
|
|||
package org.gcube.portlets.user.workspace.client.event;
|
||||
|
||||
import com.google.gwt.event.shared.EventHandler;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
||||
*
|
||||
*/
|
||||
public interface GridRefreshEventHandler extends EventHandler {
|
||||
/**
|
||||
* @param gridRefreshEvent
|
||||
*/
|
||||
void onGridRefresh(GridRefreshEvent gridRefreshEvent);
|
||||
}
|
|
@ -332,7 +332,7 @@ public class GxtGridFilterGroupPanel extends LayoutContainer {
|
|||
public boolean updateStore(List<FileGridModel> result){
|
||||
|
||||
resetStore();
|
||||
if(result!= null){
|
||||
if(result!= null && result.size()>0){
|
||||
for(FileGridModel file: result)
|
||||
file.setIcon();
|
||||
store.add(result);
|
||||
|
|
|
@ -13,6 +13,7 @@ import org.gcube.portlets.user.workspace.client.event.FileUploadEvent;
|
|||
import org.gcube.portlets.user.workspace.client.event.FileUploadEvent.UploadType;
|
||||
import org.gcube.portlets.user.workspace.client.event.GetPublicLinkEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.GetShareLinkEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.GridRefreshEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.ImagePreviewEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.OpenReportsEvent;
|
||||
import org.gcube.portlets.user.workspace.client.event.RenameItemEvent;
|
||||
|
@ -96,8 +97,7 @@ public class GxtToolBarItemFunctionality {
|
|||
|
||||
toolBar.add(btnUploadFile);
|
||||
|
||||
btnRefreshFolder = new Button(ConstantsPortlet.REFRESH,
|
||||
Resources.getIconRefresh());
|
||||
btnRefreshFolder = new Button(ConstantsPortlet.REFRESH, Resources.getIconRefresh());
|
||||
btnRefreshFolder.setScale(ButtonScale.SMALL);
|
||||
btnRefreshFolder.setIconAlign(IconAlign.TOP);
|
||||
btnRefreshFolder.setArrowAlign(ButtonArrowAlign.BOTTOM);
|
||||
|
@ -264,6 +264,16 @@ public class GxtToolBarItemFunctionality {
|
|||
});
|
||||
|
||||
|
||||
btnRefreshFolder.addSelectionListener(new SelectionListener<ButtonEvent>() {
|
||||
|
||||
@Override
|
||||
public void componentSelected(ButtonEvent ce) {
|
||||
|
||||
AppController.getEventBus().fireEvent(new GridRefreshEvent());
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
btnPublicLink.addSelectionListener(new SelectionListener<ButtonEvent>() {
|
||||
|
||||
@Override
|
||||
|
@ -545,4 +555,11 @@ public class GxtToolBarItemFunctionality {
|
|||
return this.toolBar;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param b
|
||||
*/
|
||||
public void activeButtonsOnSearch(boolean b) {
|
||||
btnRefreshFolder.setEnabled(!b);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue