List of usage examples for com.google.gwt.user.client.ui TreeItem getParentItem
public TreeItem getParentItem()
From source file:cc.alcina.framework.gwt.client.ide.widget.FilterableTree.java
License:Apache License
public void collapseToFirstLevel() { TreeItem item = getSelectedItem();/* w ww . jav a 2s. com*/ new TreeNodeWalker().walk(this, new Callback<TreeItem>() { public void apply(TreeItem target) { boolean open = target.getParentItem() == null; if (shouldExpandCallback != null && !shouldExpandCallback.allow(target)) { open = false; } target.setState(open); } }); if (item != null) { setSelectedItem(item, false); ensureSelectedItemVisible(); } }
From source file:cc.alcina.framework.gwt.client.ide.widget.FilterableTree.java
License:Apache License
public TreeItem getNextNode(TreeItem item, boolean ignoreChildAxis, int direction) { if (item == null) { return null; }/* w w w .java2 s .co m*/ TreeOrItem parent = TreeOrItemTree.create(item).getParent(); if (direction == 1) { if (!ignoreChildAxis && item.getState() && item.getChildCount() > 0) { return item.getChild(0); } int childIndex = parent.getChildIndex(item); if (childIndex < parent.getChildCount() - 1) { return parent.getChild(childIndex + 1); } if (item.getParentItem() == null) { return null; } return getNextNode(item.getParentItem(), true, direction); } else { int childIndex = parent.getChildIndex(item); if (childIndex > 0) { return findDeepestOpenChild(parent.getChild(childIndex - 1)); } return item.getParentItem(); } }
From source file:cc.alcina.framework.gwt.client.ide.widget.FilterableTree.java
License:Apache License
private TreeItem findVisibleChild(TreeItem item, int direction) { TreeItem parent = item.getParentItem(); if (parent == null) { return null; }/*from w w w .j ava 2 s. com*/ while (true) { item = getNextNode(item, false, direction); if (item == null) { return null; } if (item.isVisible()) { return item; } } }
From source file:com.ephesoft.dcma.gwt.admin.bm.client.view.batch.ImportBatchClassView.java
License:Open Source License
private void createUI(final boolean isMandatory, final CheckBox checkBox, final Node newNode, final TreeItem childTree) { if (newNode.getParent().getLabel().getKey().equals("BatchClassModules") || newNode.getLabel().getKey().equals("BatchClassModules")) { checkBox.setEnabled(Boolean.FALSE); checkBox.setValue(Boolean.TRUE); newNode.getLabel().setMandatory(Boolean.TRUE); } else {/*from ww w .ja v a 2 s . co m*/ if (isMandatory) { checkBox.setEnabled(Boolean.TRUE); checkBox.setValue(Boolean.FALSE); } else { if (importExisting.getValue().equalsIgnoreCase(TRUE)) { checkBox.setEnabled(Boolean.TRUE); checkBox.setValue(Boolean.FALSE); newNode.getLabel().setMandatory(Boolean.FALSE); } else if (importExisting.getValue().equalsIgnoreCase(FALSE)) { checkBox.setEnabled(Boolean.FALSE); checkBox.setValue(Boolean.TRUE); newNode.getLabel().setMandatory(Boolean.TRUE); } } if (checkBox != null && checkBox.isEnabled()) { checkBox.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { boolean checked = ((CheckBox) event.getSource()).getValue(); newNode.getLabel().setMandatory(checked); setParentItemsUI(childTree.getParentItem(), checked, newNode); setChildItemsUI(childTree, checked, newNode); } }); } } }
From source file:com.ephesoft.dcma.gwt.admin.bm.client.view.batch.ImportBatchClassView.java
License:Open Source License
private void setParentItemsUI(TreeItem parentItem, boolean checked, Node childNode) { Node parentNode = childNode.getParent(); if (!checked && parentNode.getParent() != null) { CheckBox checkBox = (CheckBox) parentItem.getWidget(); if (checkBox.isEnabled()) { checkBox.setValue(checked);/*from w w w . j a v a 2s. c o m*/ parentNode.getLabel().setMandatory(checked); } setParentItemsUI(parentItem.getParentItem(), checked, parentNode); } }
From source file:com.ephesoft.dcma.gwt.foldermanager.client.presenter.FolderSystemTreePresenter.java
License:Open Source License
@Override public void injectEvents(HandlerManager eventBus) { eventBus.addHandler(FolderUpEvent.type, new FolderUpEventHandler() { @Override/*from ww w.ja va 2 s. c o m*/ public void onFolderUp(FolderUpEvent tableRefreshEvent) { TreeItem parentItem = currentTreeItem.getParentItem(); if (parentItem != null) { currentTreeItem = parentItem; view.getTree().setSelectedItem(currentTreeItem); } else { ConfirmationDialogUtil.showConfirmationDialogError( LocaleDictionary.get().getMessageValue(FolderManagementMessages.NO_PARENT_FOLDER), true); } } }); eventBus.addHandler(FolderTreeRefreshEvent.type, new FolderTreeRefreshEventHandler() { @Override public void refreshTree(FolderTreeRefreshEvent treeRefreshEvent) { if (view.getTree().getItemCount() == 0) { createTree(); } boolean state = currentTreeItem.getState(); currentTreeItem.setState(state, false); String fileName = treeRefreshEvent.getFileName(); if (fileName != null) { for (int i = 0; i < currentTreeItem.getChildCount(); i++) { TreeItem child = currentTreeItem.getChild(i); if (child != null && child.getText().equals(fileName)) { currentTreeItem = child; break; } } } setFooterPath(treeRefreshEvent.getFolderPath()); TreeItem parentItem = currentTreeItem.getParentItem(); while (parentItem != null) { parentItem.setState(true, false); parentItem = parentItem.getParentItem(); } view.getTree().setSelectedItem(currentTreeItem); } }); eventBus.addHandler(BatchClassChangeEvent.type, new BatchClassChangeEventHandler() { @Override public void onBatchClassChange(BatchClassChangeEvent batchClassChangeEvent) { selectedBatchClassID = batchClassChangeEvent.getBatchClassID(); parentFolderName = batchClassChangeEvent.getBatchClassName(); createTree(); } }); }
From source file:com.ephesoft.dcma.gwt.foldermanager.client.presenter.FolderSystemTreePresenter.java
License:Open Source License
public void fetchTreeItems(final TreeItem father, String path) { controller.getRpcService().getContents(path, new EphesoftAsyncCallback<List<FileWrapper>>() { @Override//w ww . j a v a2s .co m public void customFailure(Throwable throwable) { String errorMessage = throwable.getLocalizedMessage(); if (!isErrorDialogShown) { ConfirmationDialogUtil.showConfirmationDialogError(LocaleDictionary.get() .getMessageValue(FolderManagementMessages.UNABLE_TO_LOAD_FOLDER_ITEMS), true); isErrorDialogShown = true; } if (null != father && errorMessage.contains(FolderManagementConstants.ERROR_TYPE_1)) { TreeItem parentItem = father.getParentItem(); if (null != parentItem) { view.getTree().setSelectedItem(parentItem, true); } view.getTree().removeItem(father); } } @Override public void onSuccess(List<FileWrapper> results) { isErrorDialogShown = false; view.expandTreeItem(father, results); } }); }
From source file:com.ephesoft.dcma.gwt.foldermanager.client.presenter.FolderSystemTreePresenter.java
License:Open Source License
public String findPath(TreeItem item) { TreeItem parent = item.getParentItem(); String path = null;//from w w w .ja va 2 s. c om if (parent == null) { path = parentFolderPath; if (selectedBatchClassID != null) { StringBuilder stringBuilder = new StringBuilder(path); stringBuilder.append(FolderManagementConstants.URL_SEPARATOR); stringBuilder.append(selectedBatchClassID); path = stringBuilder.toString(); } } else { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append(findPath(parent)); stringBuilder.append(FolderManagementConstants.URL_SEPARATOR); stringBuilder.append(item.getText()); path = stringBuilder.toString(); } return path; }
From source file:com.gmail.cjbooms.thesis.pythonappengine.client.filebrowser.FileSystemTreeWidget.java
License:Open Source License
private String findPath(TreeItem item) { TreeItem parent = item.getParentItem(); //TODO - Dynamically set folder root at user login if (parent == null) { return rootFolder; } else {/* www. j a v a 2s .co m*/ return findPath(parent) + "/" + item.getText(); } }
From source file:com.ikon.frontend.client.widget.Dragable.java
License:Open Source License
/** * Dragable/*from w w w . j a v a 2 s . co m*/ */ public Dragable() { dragged = false; floater = new HTML(""); floater.setVisible(false); floater.sinkEvents(Event.MOUSEEVENTS); floater.setVisible(false); floater.setWordWrap(false); floater.setStyleName("okm-Draggable"); floater.addMouseUpHandler(new MouseUpHandler() { @Override public void onMouseUp(MouseUpEvent event) { DOM.releaseCapture(floater.getElement()); floater.setHTML(""); floater.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) { floater.setVisible(true); // Sets the floater visible int posX = event.getClientX(); int posY = event.getClientY(); RootPanel.get().setWidgetPosition(Main.get().dragable, posX + 1, posY); // 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(floater); }