public View(G3Viewer a_Container) { m_Container = a_Container; if (m_Container.isUploadEnabled()) { ((DndDesktopFactory) GWT.create(DndDesktopFactory.class)).getInstance(this); } }
public void showPopupMenu(Event event) { m_Label.addStyleName("popped"); final PopupPanel popupPanel = new PopupPanel(true); popupPanel.setAnimationEnabled(true); MenuBar popupMenuBar = new MenuBar(true); MenuItem editItem = new MenuItem( "Edit Album", true, new Command() { @Override public void execute() { m_Container.doDialog( "index.php/form/edit/albums/" + m_ID, new HttpDialogHandler() { @Override public void success(String aResult) { refresh(); } }); popupPanel.hide(); } }); MenuItem addAlbum = new MenuItem( "Add Album", true, new Command() { @Override public void execute() { m_Container.doDialog( "index.php/form/add/albums/" + m_ID + "?type=album", new HttpDialogHandler() { @Override public void success(String aResult) { expand(); m_View.getCurrentAlbum().select(); } }); popupPanel.hide(); } }); MenuItem userPermissions = new MenuItem( "User Permissions", true, new Command() { @Override public void execute() { m_Container.doDialog( "index.php/permissions/browse/" + m_ID, new HttpDialogHandler() { @Override public void success(String aResult) {} }); popupPanel.hide(); } }); popupPanel.setStyleName("popup"); editItem.addStyleName("popup-item"); addAlbum.addStyleName("popup-item"); userPermissions.addStyleName("popup-item"); if (m_Container.isUploadEnabled()) { MenuItem uploadPhotos = new MenuItem( "Upload Photos", true, new Command() { @Override public void execute() { uploadFiles(); popupPanel.hide(); } }); uploadPhotos.addStyleName("popup-item"); popupMenuBar.addItem(uploadPhotos); } popupMenuBar.addItem(editItem); popupMenuBar.addItem(addAlbum); popupMenuBar.addItem(userPermissions); popupMenuBar.setVisible(true); popupPanel.add(popupMenuBar); int x = DOM.eventGetClientX(event); int y = DOM.eventGetClientY(event); popupPanel.setPopupPosition(x, y); popupPanel.addCloseHandler( new CloseHandler<PopupPanel>() { @Override public void onClose(CloseEvent<PopupPanel> event) { m_Label.removeStyleName("popped"); } }); popupPanel.show(); }