@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.Date ;
import java.util.HashMap ;
import java.util.List ;
import java.util.Map ;
import java.util.logging.Level ;
import java.util.logging.Logger ;
@ -102,6 +103,7 @@ import org.gcube.portlets.user.workspace.client.view.trash.WindowTrash;
import org.gcube.portlets.user.workspace.client.view.versioning.WindowVersioning ;
import org.gcube.portlets.user.workspace.client.view.windows.DialogConfirm ;
import org.gcube.portlets.user.workspace.client.view.windows.DialogGetInfo ;
import org.gcube.portlets.user.workspace.client.view.windows.DialogGetInfoBootstrap ;
import org.gcube.portlets.user.workspace.client.view.windows.InfoDisplay ;
import org.gcube.portlets.user.workspace.client.view.windows.MessageBoxAlert ;
import org.gcube.portlets.user.workspace.shared.GarbageItem ;
@ -123,6 +125,7 @@ import org.gcube.portlets.widgets.wsexplorer.client.view.grid.ItemsTable.DISPLAY
import org.gcube.portlets.widgets.wsexplorer.shared.Item ;
import com.extjs.gxt.ui.client.core.XDOM ;
import com.extjs.gxt.ui.client.widget.ContentPanel ;
import com.extjs.gxt.ui.client.widget.LayoutContainer ;
import com.extjs.gxt.ui.client.widget.MessageBox ;
import com.extjs.gxt.ui.client.widget.layout.FitLayout ;
@ -132,12 +135,15 @@ import com.google.gwt.core.client.Scheduler.ScheduledCommand;
import com.google.gwt.event.dom.client.ClickEvent ;
import com.google.gwt.event.dom.client.ClickHandler ;
import com.google.gwt.event.shared.HandlerManager ;
import com.google.gwt.user.client.Command ;
import com.google.gwt.user.client.CommandCanceledException ;
import com.google.gwt.user.client.Cookies ;
import com.google.gwt.user.client.Timer ;
import com.google.gwt.user.client.Window ;
import com.google.gwt.user.client.rpc.AsyncCallback ;
import com.google.gwt.user.client.ui.HTML ;
import com.google.gwt.user.client.ui.HasWidgets ;
import com.google.gwt.user.client.ui.ScrollPanel ;
@ -193,6 +199,7 @@ public class AppController implements SubscriberInterface {
EventsTypeEnum . TRASH_EVENT ,
EventsTypeEnum . UPDATE_WORKSPACE_SIZE ,
EventsTypeEnum . UPDATED_VRE_PERMISSION ,
EventsTypeEnum . GET_DETAILS_FOR_ITEM ,
EventsTypeEnum . FILE_VERSIONING_HISTORY_EVENT
} ) ;
bind ( ) ;
@ -315,17 +322,6 @@ public class AppController implements SubscriberInterface {
} ) ;
// eventBus.addHandler(GetPublicLinkEvent.TYPE, new GetPublicLinkEventHandler() {
//
// @Override
// public void onGetPublicLink(GetPublicLinkEvent getPublicLinkEvent) {
// // TODO Auto-generated method stub
// if(getPublicLinkEvent.getSourceFile()!=null){
// AppControllerExplorer.getEventBus().fireEvent(new GetPublicLinkEvent(getPublicLinkEvent.getSourceFile(), getPublicLinkEvent.getVersion()));
// }
// }
// });
eventBus . addHandler ( AccountingHistoryEvent . TYPE , new AccountingHistoryEventHandler ( ) {
@Override
@ -362,22 +358,12 @@ public class AppController implements SubscriberInterface {
if ( file = = null )
file = getGridSelectedItem ( ) ;
if ( file ! = null )
new DialogGetInfo ( file ) ;
if ( file ! = null ) {
showDetails ( file , AppControllerExplorer . mapOfAllowedMimeTypesForPreview ) ;
}
}
} ) ;
// eventBus.addHandler(GetShareLinkEvent.TYPE, new GetSharedLinkEventHandler() {
//
// @Override
// public void onGetLink(GetShareLinkEvent getLinkEvent) {
//
// FileModel getLinkFile = getLinkEvent.getSourceFile()!=null?getLinkEvent.getSourceFile():wsPortlet.getToolBarPath().getLastParent();
// GWT.log("Fired from WS GetShareLinkEvent on: "+getLinkFile);
// AppControllerExplorer.getEventBus().fireEvent(new org.gcube.portlets.user.workspace.client.event.GetShareLinkEvent(getLinkFile));
// }
// });
eventBus . addHandler ( GridRefreshEvent . TYPE , new GridRefreshEventHandler ( ) {
@Override
@ -458,12 +444,19 @@ public class AppController implements SubscriberInterface {
if ( ! event . isMultiSelection ( ) ) { //IS NOT MULTISELECTION
doElementGridSelected ( true , event . getSourceFile ( ) ) ;
//showing item details if east panel is visible
if ( getMainPanel ( ) . getEastPanel ( ) . isVisible ( ) ) {
showDetails ( event . getSourceFile ( ) , AppControllerExplorer . mapOfAllowedMimeTypesForPreview ) ;
}
} else { //IS MULTISELECTION
wsPortlet . getGxtCardLayoutResultPanel ( ) . getToolBarItemFunctionalities ( ) . activeButtonForMultiSelection ( true ) ;
wsPortlet . getGxtCardLayoutResultPanel ( ) . getToolBarItemDetails ( ) . enableInfoHistoryButtons ( event . getSourceFile ( ) , false ) ;
}
}
} ) ;
@ -2305,4 +2298,27 @@ public class AppController implements SubscriberInterface {
AppController . getEventBus ( ) . fireEvent ( new FileVersioningEvent ( WorkspaceVersioningOperation . SHOW , file , null , null , null ) ) ;
}
@Override
public void showDetails ( FileModel fileModel , Map < String , List < String > > mapAllowedMimeTypesForPreview ) {
GWT . log ( "show details for: " + fileModel . getName ( ) ) ;
final ContentPanel eastPanel = this . getMainPanel ( ) . getEastPanel ( ) ;
eastPanel . removeAll ( ) ;
Command onCloseCommand = new Command ( ) {
@Override
public void execute ( ) {
eastPanel . setVisible ( false ) ;
}
} ;
ScrollPanel panel = new ScrollPanel ( ) ;
DialogGetInfoBootstrap dlg = new DialogGetInfoBootstrap ( fileModel , onCloseCommand , mapAllowedMimeTypesForPreview ) ;
panel . add ( dlg ) ;
eastPanel . add ( panel ) ;
eastPanel . setVisible ( true ) ;
eastPanel . layout ( ) ;
}
}