1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.exoplatform.ecm.webui.component.explorer.control.action;
18
19 import java.util.Arrays;
20 import java.util.List;
21
22 import org.exoplatform.ecm.webui.component.explorer.UIJCRExplorer;
23 import org.exoplatform.ecm.webui.component.explorer.control.filter.IsCheckedOutFilter;
24 import org.exoplatform.ecm.webui.component.explorer.control.filter.IsNotEditingDocumentFilter;
25 import org.exoplatform.ecm.webui.component.explorer.control.filter.IsNotRootNodeFilter;
26 import org.exoplatform.ecm.webui.component.explorer.control.listener.UIActionBarActionRealNodeListener;
27 import org.exoplatform.ecm.webui.component.explorer.thumbnail.UIThumbnailForm;
28 import org.exoplatform.webui.config.annotation.ComponentConfig;
29 import org.exoplatform.webui.config.annotation.EventConfig;
30 import org.exoplatform.webui.core.UIComponent;
31 import org.exoplatform.webui.core.UIPopupContainer;
32 import org.exoplatform.webui.event.Event;
33 import org.exoplatform.webui.ext.filter.UIExtensionFilter;
34 import org.exoplatform.webui.ext.filter.UIExtensionFilters;
35
36
37
38
39
40
41
42 @ComponentConfig(
43 events = {
44 @EventConfig(listeners = OverloadThumbnailActionComponent.OverloadThumbnailActionListener.class)
45 }
46 )
47 public class OverloadThumbnailActionComponent extends UIComponent {
48
49 private static final List<UIExtensionFilter> FILTERS = Arrays.asList(new UIExtensionFilter[] {
50 new IsNotRootNodeFilter(), new IsNotEditingDocumentFilter(), new IsCheckedOutFilter() });
51
52 @UIExtensionFilters
53 public List<UIExtensionFilter> getFilters() {
54 return FILTERS;
55 }
56
57 public static class OverloadThumbnailActionListener
58 extends
59 UIActionBarActionRealNodeListener<OverloadThumbnailActionComponent> {
60 public void processEvent(Event<OverloadThumbnailActionComponent> event) throws Exception {
61 UIJCRExplorer uiExplorer = event.getSource().getAncestorOfType(UIJCRExplorer.class);
62 UIThumbnailForm uiThumbnailForm =
63 uiExplorer.createUIComponent(UIThumbnailForm.class, null, null);
64 UIPopupContainer UIPopupContainer = uiExplorer.getChild(UIPopupContainer.class);
65 UIPopupContainer.activate(uiThumbnailForm, 500, 0);
66 event.getRequestContext().addUIComponentToUpdateByAjax(UIPopupContainer);
67 }
68 }
69 }