List of usage examples for com.google.gwt.user.client.ui TreeItem getParentItem
public TreeItem getParentItem()
From source file:com.openkm.frontend.client.widget.Draggable.java
License:Open Source License
/** * Dragable/*from ww w.j a va 2 s .c o m*/ */ public Draggable() { dragged = false; floater = new HTML(""); table.setVisible(false); floater.sinkEvents(Event.MOUSEEVENTS); floater.setWordWrap(false); floater.setStyleName("okm-Draggable"); table.setVisible(false); table.setWidget(0, 0, floater); table.setStyleName("okm-Draggable"); floater.addMouseUpHandler(new MouseUpHandler() { @Override public void onMouseUp(MouseUpEvent event) { DOM.releaseCapture(floater.getElement()); floater.setHTML(""); table.setVisible(false); // Only move if dragged has been enabled by timer if (dragged) { // Action depends on origin dragable switch (originPanel) { case TREE_ROOT: TreeItem clickedTreeItem = Main.get().activeFolderTree .elementClicked(DOM.eventGetTarget((Event) event.getNativeEvent())); if (clickedTreeItem != null && (((GWTFolder) clickedTreeItem.getUserObject()).getPermissions() & GWTPermission.WRITE) == GWTPermission.WRITE) { final TreeItem draggedTreeItem = Main.get().activeFolderTree.getActualItem(); boolean isChild = DOM.isOrHasChild(draggedTreeItem.getElement(), clickedTreeItem.getElement()); if (draggedTreeItem != clickedTreeItem && !isChild) { // Actual folder GWTFolder gwtFolder = ((GWTFolder) draggedTreeItem.getUserObject()); // Destination path final String dstPath = ((GWTFolder) clickedTreeItem.getUserObject()).getPath(); // The parent of actual item selected TreeItem parentItem = draggedTreeItem.getParentItem(); ObjectToMove objToMove = new ObjectToMove(gwtFolder, dstPath, null, draggedTreeItem, parentItem, clickedTreeItem); Main.get().confirmPopup .setConfirm(ConfirmPopup.CONFIRM_DRAG_DROP_MOVE_FOLDER_FROM_TREE); Main.get().confirmPopup.setValue(objToMove); Main.get().confirmPopup.show(); } } break; case FILE_BROWSER: clickedTreeItem = Main.get().activeFolderTree .elementClicked(DOM.eventGetTarget((Event) event.getNativeEvent())); TreeItem actualTreeItem = Main.get().activeFolderTree.getActualItem(); if (clickedTreeItem != null && Main.get().mainPanel.desktop.browser.fileBrowser.isSelectedRow() && (((GWTFolder) clickedTreeItem.getUserObject()).getPermissions() & GWTPermission.WRITE) == GWTPermission.WRITE) { // Destination path final String dstPath = ((GWTFolder) clickedTreeItem.getUserObject()).getPath(); // if selected path = actual path must not move if (!dstPath.equals(((GWTFolder) actualTreeItem.getUserObject()).getPath())) { // Unselects folder destination on tree if (lastSelectElement != null) { DOM.setElementProperty(lastSelectElement, "className", "gwt-TreeItem"); } if (Main.get().mainPanel.desktop.browser.fileBrowser.isFolderSelected()) { final GWTFolder gwtFolder = Main.get().mainPanel.desktop.browser.fileBrowser .getFolder(); // The dragged folder String fldPath = gwtFolder.getPath(); // Folder actual path // Destination path must not containt actual folder path, because folder can't // be moved to his subfolders if (!dstPath.startsWith(fldPath)) { // Gets the moved tree Item final TreeItem movedTreeItem = Main.get().activeFolderTree .getChildFolder(fldPath); ObjectToMove objToMove = new ObjectToMove(gwtFolder, dstPath, fldPath, movedTreeItem, actualTreeItem, clickedTreeItem); Main.get().confirmPopup.setConfirm( ConfirmPopup.CONFIRM_DRAG_DROP_MOVE_FOLDER_FROM_BROWSER); Main.get().confirmPopup.setValue(objToMove); Main.get().confirmPopup.show(); } } else if (Main.get().mainPanel.desktop.browser.fileBrowser.isDocumentSelected()) { GWTDocument gwtDocument = Main.get().mainPanel.desktop.browser.fileBrowser .getDocument(); // The dragged document ObjectToMove objToMove = new ObjectToMove(gwtDocument, dstPath, null, null, null, null); Main.get().confirmPopup .setConfirm(ConfirmPopup.CONFIRM_DRAG_DROP_MOVE_DOCUMENT); Main.get().confirmPopup.setValue(objToMove); Main.get().confirmPopup.show(); } else if (Main.get().mainPanel.desktop.browser.fileBrowser.isMailSelected()) { GWTMail gwtMail = Main.get().mainPanel.desktop.browser.fileBrowser.getMail(); // The // dragged // document ObjectToMove objToMove = new ObjectToMove(gwtMail, dstPath, null, null, null, null); Main.get().confirmPopup.setConfirm(ConfirmPopup.CONFIRM_DRAG_DROP_MOVE_MAIL); Main.get().confirmPopup.setValue(objToMove); Main.get().confirmPopup.show(); } } } break; } } dragged = false; // Sets always dragged to false // Always we destroy possible timers to automatic up / down scroll Main.get().mainPanel.desktop.navigator.scrollTaxonomyPanel.destroyTimer(); } }); floater.addMouseMoveHandler(new MouseMoveHandler() { @Override public void onMouseMove(MouseMoveEvent event) { if (dragged && event != null) { // Sets the floater visible table.setVisible(true); int posX = event.getClientX(); int posY = event.getClientY(); //RootPanel.get().setWidgetPosition(Main.get().draggable, posX + 1, posY); RootLayoutPanel.get().setWidgetLeftWidth(Main.get().draggable, posX + 1, Unit.PX, table.getOffsetWidth(), Unit.PX); RootLayoutPanel.get().setWidgetTopHeight(Main.get().draggable, posY, Unit.PX, table.getOffsetHeight(), Unit.PX); // Sets selected tree style to indicate posible selected destination selectedTreeItem = Main.get().activeFolderTree .elementClicked(DOM.eventGetTarget((Event) event.getNativeEvent())); TreeItem actualItem = Main.get().activeFolderTree.getActualItem(); // Removes always style of last selected treeItem if (lastSelectedTreeItem != null && !actualItem.equals(lastSelectedTreeItem) && lastSelectElement != null) { DOM.setElementProperty(lastSelectElement, "className", "gwt-TreeItem"); lastSelectedTreeItem = null; } // Sets the style of actual tree item if (selectedTreeItem != null) { selectedElement = getSelectedElement(selectedTreeItem.getElement()); if (selectedElement == null) { Window.alert("Problem: '" + selectedTreeItem.getElement().getInnerHTML() + "'"); } DOM.setElementProperty(selectedElement, "className", "gwt-TreeItem gwt-TreeItem-selected"); if (lastSelectedTreeItem != null && !selectedTreeItem.equals(lastSelectedTreeItem) && !actualItem.equals(lastSelectedTreeItem) && lastSelectElement != null) { DOM.setElementProperty(lastSelectElement, "className", "gwt-TreeItem"); } lastSelectedTreeItem = selectedTreeItem; lastSelectElement = selectedElement; } // Action depends dragables destinations widgets Main.get().mainPanel.desktop.navigator.scrollTaxonomyPanel.ScrollOnDragDrop(posX + 1, posY); } } }); initWidget(table); }
From source file:com.square.composant.ged.square.client.presenter.AssociationActionsDocumentsPresenter.java
License:Open Source License
@Override public void onBind() { // Construction de la liste arborescente des documents associs l'utilisateur view.getBoutonAnnuler().addClickHandler(new ClickHandler() { @Override/*from ww w . j a va 2 s. com*/ public void onClick(ClickEvent event) { view.fermer(); } }); view.getBoutonAjouter().addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { // Ajout de l'entre slectionne la liste des documents associs. if (mapItemsDisponibles.containsKey(view.getArbreDocumentsClient().getSelectedItem())) { // Dj affect ? final DocumentModel docSelectionne = mapItemsDisponibles .get(view.getArbreDocumentsClient().getSelectedItem()); if (!mapIdItemsAssocies.containsKey( docSelectionne.getParent().getIdentifiant() + docSelectionne.getIdentifiant())) { // Ajout la liste & affichage if (!listeIdsDocumentsAction.contains(docSelectionne.getIdentifiant())) { listeIdsDocumentsAction.add(docSelectionne.getIdentifiant()); } // Ajout de l'lment final TreeItem parent = selectionneParentDyna(docSelectionne.getParent()); final TreeItem treeItem = new TreeItem(docSelectionne.getNom()); treeItem.addStyleName("elementArborescence"); parent.addItem(treeItem); mapIdItemsAssocies.put( docSelectionne.getParent().getIdentifiant() + docSelectionne.getIdentifiant(), treeItem); mapItemsAssocies.put(treeItem, docSelectionne); ouvrirParents(treeItem); } } } }); view.getBoutonEnlever().addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { // Suppression de l'entite slectionne de la liste des documents associs. final TreeItem selectedItem = view.getArbreDocumentsAction().getSelectedItem(); if (mapItemsAssocies.containsKey(selectedItem)) { final DocumentModel document = mapItemsAssocies .get(view.getArbreDocumentsAction().getSelectedItem()); listeIdsDocumentsAction.remove(document.getIdentifiant()); final TreeItem parent = selectedItem.getParentItem(); selectedItem.remove(); mapItemsAssocies.remove(selectedItem); mapIdItemsAssocies.remove(document.getParent().getIdentifiant() + document.getIdentifiant()); nettoyerParents(parent); } } }); view.getBoutonAjouterDocument().addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if (ajoutDocumentPresenter == null) { ajoutDocumentPresenter = new AjoutDocumentPresenter(eventBus, numClient, idAction, new AjoutDocumentViewImpl(), documentService); ajoutDocumentPresenter.showPresenter(null); ajoutDocumentPresenter.addEventHandlerToLocalBus(AddDocumentEvent.TYPE, new AddDocumentEventHandler() { @Override public void onAddDocument(AddDocumentEvent event) { // Si un document a t ajout une action, on ferme la popup view.fermer(); fireEventLocalBus(new AssociationActionDocumentEvent()); } }); } else { ajoutDocumentPresenter.afficher(numClient, idAction); } } }); view.getBoutonEnregistrer().addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { view.afficherLoadingPopup( new LoadingPopupConfiguration(view.getViewConstants().chargementDesDocumentsEnCours())); documentService.associerDocumentsAAction(idAction, listeIdsDocumentsAction, new AsyncCallback<Object>() { @Override public void onFailure(Throwable caught) { view.onRpcServiceFailure(caught); } @Override public void onSuccess(Object result) { view.onRpcServiceSuccess(); view.fermer(); fireEventLocalBus(new AssociationActionDocumentEvent()); } }); } }); }
From source file:com.square.composant.ged.square.client.presenter.AssociationActionsDocumentsPresenter.java
License:Open Source License
/** * Nettoyage des noeuds parents.//from ww w. j a v a 2s . c o m */ private void nettoyerParents(TreeItem noeud) { if (noeud != null) { final TreeItem parent = noeud.getParentItem(); if (noeud.getChildCount() == 0) { if (mapItemsDossiersAssocies.containsKey(noeud)) { final DossierDocumentModel dossierModel = mapItemsDossiersAssocies.get(noeud); mapIdItemsDossierAssocies.remove(dossierModel.getIdentifiant()); mapItemsDossiersAssocies.remove(noeud); } noeud.remove(); } if (parent != null) { nettoyerParents(parent); } } }
From source file:com.square.composant.ged.square.client.presenter.AssociationActionsDocumentsPresenter.java
License:Open Source License
/** * Nettoyage des noeuds parents./*from w w w. ja v a2 s .c o m*/ */ private void ouvrirParents(TreeItem noeud) { if (noeud.getParentItem() != null) { noeud.getParentItem().setState(true); ouvrirParents(noeud.getParentItem()); } }
From source file:de.novanic.gwteventservice.demo.conversationapp.client.conversation.ui.GWTConversationChannelPanel.java
License:Open Source License
private boolean isChannelItem(TreeItem aTreeItem) { //the channels are at the first level (has no parent item) return (aTreeItem.getParentItem() == null); }
From source file:eml.studio.client.ui.tree.BaseTree.java
License:Open Source License
public BaseTree() { super(new TreeImageResources(), true); this.addStyleName("bda-treedir"); this.addSelectionHandler(new SelectionHandler<TreeItem>() { @Override//from w w w . j av a 2 s . c o m public void onSelection(SelectionEvent<TreeItem> event) { TreeItem item = event.getSelectedItem(); Boolean state = item.getState(); // [GWT Issue 3660] to avoid pass invoke onSection two times TreeItem parent = item.getParentItem(); item.getTree().setSelectedItem(parent, false); if (parent != null) parent.setSelected(false); item.setState(!state); } }); }
From source file:fast.servicescreen.client.gui.RuleUtil.java
License:Open Source License
/** * Returns false, if given item is null or * his parents text is "Rules:" (means highest item in List) * //www.ja v a 2s . co m * Returns true, otherwise * */ public static boolean isNotNullOrRoot(TreeItem item) { if ((item == null) || (item.getParentItem().getText().equals("Rules:"))) return false; return true; }
From source file:gov.nist.spectrumbrowser.admin.JSONViewer.java
License:Open Source License
public void draw() { Tree tree = new Tree(); HorizontalPanel hpanel = new HorizontalPanel(); HorizontalPanel treePanel = new HorizontalPanel(); treePanel.add(tree);/* ww w.j a va 2s . c o m*/ treePanel.setCellHorizontalAlignment(tree, HasHorizontalAlignment.ALIGN_LEFT); JSONObject strJ = (JSONObject) jsonObject.get(rootName); TreeItem rootItem = tree.addTextItem(rootName); TreeItem madAdder = populate(rootItem, strJ); Button okButton = new Button("OK"); Button logoffButton = new Button("Log Off"); verticalPanel.clear(); madAdder.setState(true); tree.addItem(madAdder); tree.addSelectionHandler(new SelectionHandler<TreeItem>() { @Override public void onSelection(SelectionEvent<TreeItem> event) { TreeItem item = event.getSelectedItem(); String parentItem = item.getParentItem().getText(); if (parentItem.equals("_dataKey")) { JSONValue messageData = sensor.getMessageData().get(rootName + "_DATA"); JSONArray arrdata = (JSONArray) messageData; if (arrdata == null) { Window.alert("Empty"); } else { List<String> strlist = new ArrayList<String>(); for (int i = 0; i < arrdata.size(); i++) { strlist.add(arrdata.get(i).toString()); } final MyPopup popup = new MyPopup(); final TextArea box = new TextArea(); final SimplePanel pane = new SimplePanel(); box.setText("The first five corresponding values are: \n" + strlist.subList(0, 5)); box.setReadOnly(true); box.setCharacterWidth(50); pane.add(box); popup.setWidget(pane); popup.center(); popup.setAutoHideEnabled(true); popup.show(); } } } }); okButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { showMessageDates.draw(); } }); hpanel.add(okButton); logoffButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { admin.logoff(); } }); hpanel.add(logoffButton); verticalPanel.add(treePanel); verticalPanel.add(hpanel); initWidget(verticalPanel); }
From source file:info.vstour.dbdoc.client.DbDoc.java
License:Apache License
public void onModuleLoad() { Window.enableScrolling(false); Window.setMargin("0" + UNIT); final VerticalPanel bodyVPanel = new VerticalPanel(); bodyVPanel.setWidth("100%"); final HorizontalPanel bodyHPanel = new HorizontalPanel(); bodyHPanel.setSpacing(3);/*from w w w. j ava2s. c o m*/ final HTML doc = new HTML(); final ScrollPanel docWrapper = new ScrollPanel(doc); objectsTree = new DbObjectsPanel(docService); final MenuPanel menuPanel = new MenuPanel(docService, eventBus); menuPanel.ownerChangeHandlers().addChangeHandler(new ChangeHandler() { @Override public void onChange(ChangeEvent event) { objectsTree.clearDbObjects(); doc.setHTML(""); objectsTree.initDbObjects(Filter.get().getDbObjects()); } }); eventBus.addHandler(MenuUpdateEvent.TYPE, new MenuUpdateEvent.Handler() { @Override public void onMenuUpdate(MenuUpdateEvent event) { if (event.isNewConn()) { objectsTree.clear(); doc.setHTML(""); } else { objectsTree.clearDbObjects(); } objectsTree.initDbObjects(Filter.get().getDbObjects()); } }); objectsTree.getTreeOpenHandler().addOpenHandler(new OpenHandler<TreeItem>() { public void onOpen(OpenEvent<TreeItem> event) { final TreeItem treeItem = event.getTarget(); if (treeItem.getChild(0).getText().isEmpty()) { doc.setHTML(new Image(Resources.INSTANCE.processing()).toString()); docService.getTreeItems(Filter.get().getConnName(), Filter.get().getOwner(), treeItem.getText(), Filter.get().getFilter(), new AsyncCallback<List<String>>() { @Override public void onSuccess(List<String> items) { doc.setHTML(""); for (String item : items) { treeItem.addItem(item); } } @Override public void onFailure(Throwable caught) { doc.setHTML(""); } }); // Remove the temporary item when we finish loading treeItem.getChild(0).remove(); } } }); // Handler that gets documentation SelectionHandler<TreeItem> sHandler = new SelectionHandler<TreeItem>() { public void onSelection(SelectionEvent<TreeItem> event) { final TreeItem treeItem = event.getSelectedItem(); if (treeItem.getParentItem() != null) { final String parent = treeItem.getParentItem().getText(); final String child = treeItem.getText(); doc.setHTML(new Image(Resources.INSTANCE.processing()).toString()); docService.getDoc(Filter.get().getConnName(), Filter.get().getOwner(), parent, child, new AsyncCallback<String>() { public void onFailure(Throwable caught) { doc.setHTML(caught.toString()); } public void onSuccess(String result) { objectsTree.cacheDoc(Filter.get().getOwner() + "." + child, result); doc.setHTML(result); } }); } } }; objectsTree.getTreeSelectionHandler().addSelectionHandler(sHandler); objectsTree.getCacheTreeSelectionHandler().addSelectionHandler(new SelectionHandler<TreeItem>() { @Override public void onSelection(SelectionEvent<TreeItem> event) { doc.setHTML(objectsTree.getCachedDoc(event.getSelectedItem().getText())); } }); bodyHPanel.add(objectsTree); bodyHPanel.add(docWrapper); bodyVPanel.add(menuPanel); bodyVPanel.add(bodyHPanel); Window.addResizeHandler(new ResizeHandler() { public void onResize(ResizeEvent event) { int height = event.getHeight(); int width = event.getWidth(); bodyVPanel.setHeight(height + UNIT); docWrapper.setHeight(height - docWrapper.getAbsoluteTop() + UNIT); docWrapper.setWidth(width - docWrapper.getAbsoluteLeft() + UNIT); objectsTree.setHeight(height); } }); RootPanel.get().add(bodyVPanel); objectsTree.setHeight(Window.getClientHeight()); docWrapper.setHeight(Window.getClientHeight() - docWrapper.getAbsoluteTop() + UNIT); docWrapper.setWidth(Window.getClientWidth() - docWrapper.getAbsoluteLeft() + UNIT); }
From source file:net.husoftware.client.spike.DragDropLabel.java
License:Open Source License
private void initDrop() { addDomHandler(new DragOverHandler() { @Override/* w w w . j av a 2 s . c o m*/ public void onDragOver(DragOverEvent event) { addStyleName("dropping"); } }, DragOverEvent.getType()); addDomHandler(new DragLeaveHandler() { @Override public void onDragLeave(DragLeaveEvent event) { removeStyleName("dropping"); } }, DragLeaveEvent.getType()); addDomHandler(new DropHandler() { @Override public void onDrop(DropEvent event) { event.preventDefault(); if (dragging != null) { // Target treeitem is found via 'this'; // Dragged treeitem is found via 'dragging'. TreeItem dragTarget = null; TreeItem dragSource = null; // The parent of 'this' is not the TreeItem, as that's not a Widget. // The parent is the tree containing the treeitem. Tree tree = (Tree) DragDropLabel.this.getParent(); // Visit the entire tree, searching for the drag and drop TreeItems List<TreeItem> stack = new ArrayList<TreeItem>(); stack.add(tree.getItem(0)); while (!stack.isEmpty()) { TreeItem item = stack.remove(0); for (int i = 0; i < item.getChildCount(); i++) { stack.add(item.getChild(i)); } Widget w = item.getWidget(); if (w != null) { if (w == dragging) { dragSource = item; if (dragTarget != null) { break; } } if (w == DragDropLabel.this) { dragTarget = item; w.removeStyleName("dropping"); if (dragSource != null) { break; } } } } // Do we have a source and a target? if (dragSource != null && dragTarget != null) { // Make sure that target is not a child of dragSource TreeItem test = dragTarget; while (test != null) { if (test == dragSource) { return; } test = test.getParentItem(); } // Move the dragged item (source) under the target. dragTarget.addItem(dragSource); // Make sure the the target treeitem is open. dragTarget.setState(true); } dragging = null; } } }, DropEvent.getType()); }