Java 类org.eclipse.ui.navigator.CommonViewer 实例源码

项目:OpenSPIFe    文件:NewResourceAction.java   
protected static IStructuredSelection getCurrentSelection() {
    IStructuredSelection structuredSeleciton = StructuredSelection.EMPTY;
    IWorkbench workbench = PlatformUI.getWorkbench();
    IViewReference[] viewReferences = workbench.getActiveWorkbenchWindow().getActivePage().getViewReferences();
    IViewPart viewPart = null;
    for(IViewReference viewReference : viewReferences) {
        IViewPart view = viewReference.getView(false);
        if(view instanceof CommonViewer) {
            viewPart = view;
        }
    }

    if(viewPart != null) {
        ISelectionProvider selectionProvider = viewPart.getSite().getSelectionProvider();
        ISelection selection = selectionProvider.getSelection();
        if(selection instanceof IStructuredSelection) {
            structuredSeleciton = (IStructuredSelection)selection;
        }
    }

    return structuredSeleciton;
}
项目:tlaplus    文件:ToolboxExplorerResourceListener.java   
public void resourceChanged(final IResourceChangeEvent event) {
    UIHelper.runUIAsync(new Runnable() {
        public void run() {
            ToolboxExplorer.refresh();
            // Expand the current spec and all its children
            final CommonViewer viewer = ToolboxExplorer.getViewer();
            // Event is only null when this Ctor calls us causing the
            // initial expanded state of a spec to be fully expanded.
            // Afterwards, the users expanded states is preserved.
            if (event == null && viewer != null) { // viewer might already be disposed which happens when the Toolbox shuts down.
                final Spec specLoaded = Activator.getSpecManager().getSpecLoaded();
                viewer.expandToLevel(specLoaded, ToolboxExplorer.DEFAULT_EXPAND_LEVEL);
            }
        }
    });
}
项目:typescript.java    文件:TypeScriptContentOutlinePage.java   
@Override
public void createControl(Composite parent) {
    fOutlineViewer = new CommonViewer(OUTLINE_COMMON_NAVIGATOR_ID, parent, SWT.MULTI);
    // seems like common filters need to be explicitly added
    for (ViewerFilter filter : fOutlineViewer.getNavigatorContentService().getFilterService()
            .getVisibleFilters(true)) {
        this.fOutlineViewer.addFilter(filter);
    }

    Object[] listeners = fSelectionChangedListeners.getListeners();
    for (int i = 0; i < listeners.length; i++) {
        fSelectionChangedListeners.remove(listeners[i]);
        fOutlineViewer.addSelectionChangedListener((ISelectionChangedListener) listeners[i]);
    }

    listeners = fPostSelectionChangedListeners.getListeners();
    for (int i = 0; i < listeners.length; i++) {
        fPostSelectionChangedListeners.remove(listeners[i]);
        fOutlineViewer.addPostSelectionChangedListener((ISelectionChangedListener) listeners[i]);
    }

    fOutlineViewer.setUseHashlookup(true);

    IActionBars actionBars = getSite().getActionBars();
    registerToolbarActions(actionBars);
}
项目:cft    文件:CloudFoundryActionProvider.java   
public void init(ICommonActionExtensionSite actionSite) {
    super.init(actionSite);
    ICommonViewerSite site = actionSite.getViewSite();
    if (site instanceof ICommonViewerWorkbenchSite) {
        StructuredViewer viewer = actionSite.getStructuredViewer();
        if (viewer instanceof CommonViewer) {
            CommonViewer serversViewer = (CommonViewer) viewer;
            serversViewer.addOpenListener(new IOpenListener() {
                public void open(OpenEvent event) {
                    ISelection s = event.getSelection();
                    if (s instanceof IStructuredSelection) {
                        IStructuredSelection selection = (IStructuredSelection) s;
                        Object[] selectedObjects = selection.toArray();
                        if (selectedObjects.length == 1 && selectedObjects[0] instanceof ModuleServer) {
                            ModuleServer moduleServer = (ModuleServer) selectedObjects[0];
                            openApplicationPage(moduleServer);
                        }
                    }
                }
            });
        }
    }
}
项目:NEXCORE-UML-Modeler    文件:ProjectUtil.java   
/**
 * setSelectonNodeInExplorer
 *  
 * @param target void
 */
public static void setSelectonNodeInExplorer(EObject target) {
    if (null == target) {
        return;
    }
    if (target instanceof EAnnotation) {
        return;
    }
    CommonViewer commonViewer = ViewerRegistry.getViewer();
    if (commonViewer.getControl().isDisposed()) {
        return;
    }
    ITreeNode targetNode = null;
    targetNode = UMLTreeNodeRegistry.getTreeNode(target);
    if (null != targetNode) {
        commonViewer.setSelection(new StructuredSelection(targetNode), true);
    }
}
项目:NEXCORE-UML-Modeler    文件:ProjectUtil.java   
/**
 * updateParentInExplorer
 *  
 * @param target void
 */
public static void updateParentInExplorer(EObject target) {
    if (null == target) {
        return;
    }
    CommonViewer commonViewer = ViewerRegistry.getViewer();
    if (commonViewer.getControl().isDisposed()) {
        return;
    }
    if (target instanceof DynamicEObjectImpl) {
        target = UMLUtil.getBaseElement(target);
    }
    ITreeNode targetNode = null;
    EObject parent = UMLManager.getParent((Element) target);
    targetNode = UMLTreeNodeRegistry.getTreeNode(parent);
    String[] flags = null;
    flags = new String[] { IBasicPropertyConstants.P_IMAGE, IBasicPropertyConstants.P_TEXT,
        IBasicPropertyConstants.P_CHILDREN };
    commonViewer.update(targetNode, flags);
}
项目:NEXCORE-UML-Modeler    文件:ExplorerSaveablesProvider.java   
/**
 * @see org.eclipse.ui.navigator.SaveablesProvider#getElements(org.eclipse.ui.Saveable)
 */
@Override
public Object[] getElements(Saveable pSaveable) {

    if (pSaveable == null) {
        return new Object[] {};
    }

    CommonViewer viewer = ProjectRegistry.ViewerRegistry.getViewer();
    ITreeContentProvider contentProvider = (ITreeContentProvider) viewer.getContentProvider();
    Object viewerInput = viewer.getInput();

    if (contentProvider == null) {
        return null;
    }

    return contentProvider.getElements(viewerInput);

}
项目:NEXCORE-UML-Modeler    文件:UMLContentProvider.java   
/**
 * getExplorerFilter
 *  
 * @return ExplorerElementFilter
 */
public ExplorerElementFilter getExplorerFilter() {
    if (eFilter == null) {
        CommonViewer viewer = ViewerRegistry.getViewer();

        if (viewer != null) {
            ViewerFilter[] filter = viewer.getFilters();
            for (int i = 0; i < filter.length; i++) {
                if (filter[i] instanceof ExplorerElementFilter) {
                    eFilter = (ExplorerElementFilter) filter[i];
                    break;
                }
            }
        }
    }
    return eFilter;
}
项目:NEXCORE-UML-Modeler    文件:RefreshAction.java   
/**
 * execute
 *   void
 */
public void execute() {
    CommonViewer commonViewer = ViewerRegistry.getViewer();
    if (commonViewer.getControl().isDisposed()) {
        return;
    }

    selectionChanged(null, ViewerRegistry.getViewer().getSelection());

    ISelection selection = commonViewer.getSelection();
    if ((null == selection) || (!(selection instanceof IStructuredSelection))) {
        return;
    }

    Object object = ((IStructuredSelection) selection).getFirstElement();
    if (object instanceof IResource || object instanceof ITreeNode) {
        UMLModelRefreshAction clearAction = new UMLModelRefreshAction();
        clearAction.selectionChanged(null, selection);
        clearAction.run(null);
    } else {
        ProjectUtil.refreshExplorer();
    }

    // 로그인 안내 메시지를 다시 활성화 시킨다. 기존에는 단 한번만 안내했었음.
    ResourceManager.setChecked(true);
}
项目:NEXCORE-UML-Modeler    文件:BaseMultiFragmentAction.java   
/**
 * hierarchyCheck
 *  
 * @return boolean
 */
protected boolean hierarchyCheck() {
    CommonViewer commonViewer = ViewerRegistry.getViewer();
    TreeSelection sel = (TreeSelection) commonViewer.getSelection();

    List<TreePath> pathList = Arrays.asList(sel.getPaths());

    for (TreePath path : pathList) {
        if (isContains(pathList, path.getParentPath())) {
            MessageDialog.openError(ProjectExplorerPlugin.getShell(),
                UMLMessage.LABEL_FILE_FRAGMENTATION,
                UMLMessage.MESSAGE_FRAGMENT_DEFRAGMENT_ERROR_MESSAGE/*"패키지 간 상하 관계가 포함된 경우 일괄 단편화/병합을 실행할 수 없습니다."*/);
            return false;
        }
    }

    return true;
}
项目:dockerfoundry    文件:DockerFoundryActionProvider.java   
public void init(ICommonActionExtensionSite actionSite) {
    super.init(actionSite);
    ICommonViewerSite site = actionSite.getViewSite();
    if (site instanceof ICommonViewerWorkbenchSite) {
        StructuredViewer viewer = actionSite.getStructuredViewer();
        if (viewer instanceof CommonViewer) {
            CommonViewer serversViewer = (CommonViewer) viewer;
            serversViewer.addOpenListener(new IOpenListener() {
                public void open(OpenEvent event) {
                    ISelection s = event.getSelection();
                    if (s instanceof IStructuredSelection) {
                        IStructuredSelection selection = (IStructuredSelection) s;
                        Object[] selectedObjects = selection.toArray();
                        if (selectedObjects.length == 1 && selectedObjects[0] instanceof ModuleServer) {
                            ModuleServer moduleServer = (ModuleServer) selectedObjects[0];
                            openApplicationPage(moduleServer);
                        }
                    }
                }
            });
        }
    }
}
项目:gama    文件:NavigatorCommonViewer.java   
@Override
public void expandAll() {
    getControl().setRedraw(false);
    NavigatorContentProvider.FILE_CHILDREN_ENABLED = false;
    final IStructuredSelection currentSelection = (IStructuredSelection) getSelection();
    if (currentSelection == null || currentSelection.isEmpty()) {
        super.expandAll(); // .expandToLevel(3);
    } else {
        final Iterator<?> it = currentSelection.iterator();
        while (it.hasNext()) {
            final Object o = it.next();
            if (o instanceof TopLevelFolder) {
                expandToLevel(o, CommonViewer.ALL_LEVELS); // 2
            } else if (o instanceof IContainer) {
                expandToLevel(o, CommonViewer.ALL_LEVELS);
            }
        }

    }
    NavigatorContentProvider.FILE_CHILDREN_ENABLED = true;
    this.refresh(false);
    getControl().setRedraw(true);

}
项目:OpenSPIFe    文件:EditorPartUtils.java   
public static IStructuredSelection getCurrentSelection() {
    IWorkbench workbench = PlatformUI.getWorkbench();
    if (workbench==null || workbench.getActiveWorkbenchWindow()==null) {
        return StructuredSelection.EMPTY;
    }
    IStructuredSelection structuredSelection = StructuredSelection.EMPTY;
    IViewReference[] viewReferences = workbench.getActiveWorkbenchWindow()
            .getActivePage().getViewReferences();
    IViewPart viewPart = null;
    for (IViewReference viewReference : viewReferences) {
        IViewPart view = viewReference.getView(false);
        if (view instanceof CommonViewer) {
            viewPart = view;
        }
    }

    if (viewPart != null) {
        ISelectionProvider selectionProvider = viewPart.getSite()
                .getSelectionProvider();
        ISelection selection = selectionProvider.getSelection();
        if (selection instanceof IStructuredSelection) {
            structuredSelection = (IStructuredSelection) selection;
        }
    }
    return structuredSelection;
}
项目:OpenSPIFe    文件:EditorPartUtils.java   
/** Tries to find the currently selected project in the currently selected editor or view,
 * if the editor is some kind of file editor or the view is a navigator.
 * @param window
 * @return null if can't find a project, else a project.
 */
public static IProject getSelectedProject(IWorkbenchWindow window) {
    ISelection selection = null;
    IWorkbenchPart part = window.getPartService().getActivePart();
    if (part instanceof CommonViewer) {
        selection = ((CommonViewer) part).getSelection();
    } else if (part instanceof CommonNavigator) {
        selection = ((CommonNavigator) part).getCommonViewer().getSelection();
    } else if (part instanceof IEditorPart) {
        IEditorInput editorInput = ((IEditorPart) part).getEditorInput();
        if (editorInput instanceof FileEditorInput) return ((FileEditorInput) editorInput).getFile().getProject();
    }
    if(selection != null && selection instanceof IStructuredSelection) {
        IStructuredSelection structuredSelection = (IStructuredSelection)selection;
        Object firstElement = structuredSelection.getFirstElement();
        if (firstElement instanceof IProject) return ((IProject) firstElement);
        if (firstElement instanceof IFile) return ((IFile) firstElement).getProject();
    }
    return null;
}
项目:translationstudio8    文件:WorkingSetActionProvider.java   
public void init(ICommonActionExtensionSite aSite) {
    viewer = (CommonViewer) aSite.getStructuredViewer();
    contentService = aSite.getContentService();
    filterService = (NavigatorFilterService) contentService.getFilterService();

    extensionStateModel = contentService.findStateModel(WorkingSetsContentProvider.EXTENSION_ID);

    workingSetActionGroup = new WorkingSetFilterActionGroup(aSite.getViewSite().getShell(), filterChangeListener);
    workingSetRootModeActionGroup = new WorkingSetRootModeActionGroup(viewer, extensionStateModel);

    topLevelModeListener = new IPropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent event) {
            setWorkingSet(workingSet);
            viewer.getFrameList().reset();
        }
    };

    if (contentService.isActive(WorkingSetsContentProvider.EXTENSION_ID)) {
        managerChangeListener.listen();
        extensionStateModel.addPropertyChangeListener(topLevelModeListener);
    }

    contentService.getActivationService().addExtensionActivationListener(activationListener);
}
项目:FindBug-for-Domino-Designer    文件:BugExplorerView.java   
public void markerSelected(IWorkbenchPart part, IMarker marker) {
    if (selectionInProgress) {
        return;
    }
    BugContentProvider provider = BugContentProvider.getProvider(getNavigatorContentService());
    CommonViewer commonViewer = getCommonViewer();
    if (marker == null) {
        commonViewer.setSelection(new StructuredSelection(), false);
    } else if (provider.isFiltered(marker)) {
        Object parent = provider.getParent(marker);
        if (parent != null) {
            commonViewer.setSelection(new StructuredSelection(parent), true);
        }
    } else {
        commonViewer.setSelection(new StructuredSelection(marker), true);
    }
}
项目:FindBug-for-Domino-Designer    文件:FilterPatternAction.java   
public void run(IAction action) {
    Set<String> sortedIds = FindbugsPlugin.getFilteredIds();
    String patternType = getPatternOrPatternType();
    if (patternType != null) {
        if (!sortedIds.contains(patternType)) {
            sortedIds.add(patternType);
        } else {
            sortedIds.remove(patternType);
        }
    }
    String ids = FindBugsConstants.encodeIds(sortedIds);
    final IPreferenceStore store = FindbugsPlugin.getDefault().getPreferenceStore();
    store.setValue(FindBugsConstants.LAST_USED_EXPORT_FILTER, ids);
    BugContentProvider provider = BugContentProvider.getProvider(navigator.getNavigatorContentService());
    if (!provider.isBugFilterActive()) {
        MessageDialog.openWarning(null, "Toggle Filter", "Filtering by pattern or type id is currently not enabled!\n"
                + "To enable it, please select \"Toggle Filters...->Bugs by Id\" filter!");

    }
    provider.refreshFilters();
    CommonViewer viewer = navigator.getCommonViewer();
    Object[] expandedElements = viewer.getExpandedElements();
    viewer.refresh(true);
    viewer.setExpandedElements(expandedElements);
    data = null;
}
项目:FindBug-for-Domino-Designer    文件:OpenGroupDialogAction.java   
public void run(IAction action) {
    if (navigator == null) {
        return;
    }
    BugContentProvider provider = BugContentProvider.getProvider(navigator.getNavigatorContentService());
    List<GroupType> list = provider.getGrouping().asList();
    GroupSelectionDialog dialog = new GroupSelectionDialog(navigator.getSite().getShell(), list);
    dialog.setTitle("Bug Group Configuration");
    int result = dialog.open();
    if (result != Window.OK) {
        return;
    }
    Grouping grouping = Grouping.createFrom(dialog.getGroups());
    provider.setGrouping(grouping);
    CommonViewer viewer = navigator.getCommonViewer();
    Object[] expandedElements = viewer.getExpandedElements();
    provider.reSetInput();
    viewer.setExpandedElements(expandedElements);
}
项目:FindBug-for-Domino-Designer    文件:FilterBugsDialogAction.java   
public void run(IAction action) {
    if (navigator == null) {
        return;
    }
    Set<BugPattern> filtered = FindbugsPlugin.getFilteredPatterns();
    Set<BugCode> filteredTypes = FindbugsPlugin.getFilteredPatternTypes();
    FilterBugsDialog dialog = new FilterBugsDialog(navigator.getSite().getShell(), filtered, filteredTypes);
    dialog.setTitle("Bug Filter Configuration");
    int result = dialog.open();
    if (result != Window.OK) {
        return;
    }
    String selectedIds = dialog.getSelectedIds();

    FindbugsPlugin.getDefault().getPreferenceStore().setValue(FindBugsConstants.LAST_USED_EXPORT_FILTER, selectedIds);

    BugContentProvider provider = BugContentProvider.getProvider(navigator.getNavigatorContentService());
    provider.refreshFilters();
    CommonViewer viewer = navigator.getCommonViewer();
    Object[] expandedElements = viewer.getExpandedElements();
    viewer.refresh(true);
    viewer.setExpandedElements(expandedElements);
}
项目:FindBug-for-Domino-Designer    文件:RefreshAction.java   
public void run(IAction action) {
    if (navigator != null) {
        CommonViewer viewer = navigator.getCommonViewer();
        BugContentProvider provider = BugContentProvider.getProvider(navigator.getNavigatorContentService());
        // provider.setRefreshRequested(true);

        Object[] expandedElements = viewer.getExpandedElements();
        Object input = viewer.getInput();
        if (provider.getChildren(input).length == 0) {
            viewer.setInput(null);
            if (input instanceof IWorkingSet || input instanceof IWorkspaceRoot) {
                viewer.setInput(input);
            } else {
                viewer.setInput(ResourcesPlugin.getWorkspace().getRoot());
            }
            viewer.refresh(true);
        } else {
            provider.reSetInput();
        }
        viewer.setExpandedElements(expandedElements);
    }
}
项目:FindBug-for-Domino-Designer    文件:GoUpAction.java   
public void run(IAction action) {
    if (!action.isEnabled()) {
        return;
    }
    CommonViewer viewer = navigator.getCommonViewer();
    Object[] expandedElements = viewer.getVisibleExpandedElements();
    Object input = viewer.getInput();
    if (input instanceof BugGroup) {
        BugGroup group = (BugGroup) input;
        Object data = group.getParent();
        boolean needRefresh = data == null;
        if (needRefresh) {
            BugContentProvider.getProvider(navigator.getNavigatorContentService()).reSetInput();
        } else {
            viewer.setInput(data);
        }
        // viewer.setSelection(new StructuredSelection(input), true);
        // viewer.expandToLevel(input, 1);
        viewer.setExpandedElements(expandedElements);
    }
    action.setEnabled(isEnabled());
}
项目:tmxeditor8    文件:WorkingSetActionProvider.java   
public void init(ICommonActionExtensionSite aSite) {
    viewer = (CommonViewer) aSite.getStructuredViewer();
    contentService = aSite.getContentService();
    filterService = (NavigatorFilterService) contentService.getFilterService();

    extensionStateModel = contentService.findStateModel(WorkingSetsContentProvider.EXTENSION_ID);

    workingSetActionGroup = new WorkingSetFilterActionGroup(aSite.getViewSite().getShell(), filterChangeListener);
    workingSetRootModeActionGroup = new WorkingSetRootModeActionGroup(viewer, extensionStateModel);

    topLevelModeListener = new IPropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent event) {
            setWorkingSet(workingSet);
            viewer.getFrameList().reset();
        }
    };

    if (contentService.isActive(WorkingSetsContentProvider.EXTENSION_ID)) {
        managerChangeListener.listen();
        extensionStateModel.addPropertyChangeListener(topLevelModeListener);
    }

    contentService.getActivationService().addExtensionActivationListener(activationListener);
}
项目:Pydev    文件:PythonLinkHelper.java   
/**
 * Tries to find a match for the element in the given root passed. If found returns true.
 * 
 * @param infosSearched: a memo to know which infos were already searched to prevent searching many times in
 * the same place.
 */
private IStructuredSelection findMatchInTreeNodeRoot(File element, CommonViewer commonViewer,
        InterpreterInfoTreeNodeRoot treeNodeRoot, Set<IInterpreterInfo> infosSearched) {
    if (infosSearched.contains(treeNodeRoot.interpreterInfo)) {
        return null;
    }
    infosSearched.add(treeNodeRoot.interpreterInfo);

    List<TreeNode> nodesOrderedForFileSearch = treeNodeRoot.getNodesOrderedForFileSearch();
    for (TreeNode node : nodesOrderedForFileSearch) {
        PythonpathTreeNode match = findMatch(node, element);
        if (match != null) {
            return new StructuredSelection(match);
        }
    }
    return null;
}
项目:n4js    文件:SelectAllProjectExplorerHandler.java   
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
    IWorkbenchWindow activeWorkbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
    if (null == activeWorkbenchWindow) {
        return null;
    }
    IWorkbenchPage activePage = activeWorkbenchWindow.getActivePage();
    if (null == activePage) {
        return null;
    }
    IWorkbenchPart activePart = activePage.getActivePart();
    if (!(activePart instanceof CommonNavigator)) {
        return null;
    }

    CommonNavigator navigator = (CommonNavigator) activePart;
    CommonViewer commonViewer = navigator.getCommonViewer();

    Tree navigatorTree = commonViewer.getTree();
    List<TreeItem> visibleItems = new ArrayList<>();
    collectChildren(navigatorTree.getItems(), visibleItems);

    List<Object> visibleData = visibleItems.stream().map(i -> i.getData()).collect(Collectors.toList());

    commonViewer.setSelection(new StructuredSelection(visibleData), false);

    return null;
}
项目:n4js    文件:WorkingSetManagerBrokerImpl.java   
private void asyncRefreshCommonViewer(final ProjectExplorer explorer, final boolean resetInput) {

        // do deferred initialization
        this.getWorkingSetManagers().stream()
                .filter(m -> (m instanceof IDeferredInitializer))
                .map(m -> (IDeferredInitializer) m)
                .filter(m -> m.isInitializationRequired())
                .forEach(m -> {
                    m.lateInit();
                });

        final CommonViewer viewer = explorer.getCommonViewer();
        final Display d = getDisplay();
        if (!d.isDisposed()) {
            if (resetInput) {
                d.asyncExec(() -> {
                    if (!viewer.getTree().isDisposed())
                        viewer.setInput(viewer.getInput());
                });
            } else {
                d.asyncExec(() -> {
                    if (!viewer.getTree().isDisposed())
                        viewer.refresh(true);
                });
            }
        }
    }
项目:neoscada    文件:ConnectionView.java   
@Override
protected CommonViewer createCommonViewerObject ( final Composite aParent )
{
    // quick fix to automatically expand some content
    final CommonViewer result = super.createCommonViewerObject ( aParent );
    result.setAutoExpandLevel ( 2 );
    return result;
}
项目:tlaplus    文件:ToolboxExplorer.java   
/**
  * Retrieves the current viewer if any
  * @return the instance of common viewer or <code>null</code>
  */
 public static CommonViewer getViewer()
 {
     CommonNavigator navigator = findCommonNavigator(ToolboxExplorer.VIEW_ID);
     if (navigator != null) 
     {
         final CommonViewer commonViewer = navigator.getCommonViewer();
         commonViewer.setAutoExpandLevel(DEFAULT_EXPAND_LEVEL);
return commonViewer;
     }

     return null;
 }
项目:tlaplus    文件:ToolboxExplorer.java   
/**
 * Refreshes the instance of the viewer if any
 */
public static void refresh()
{
    CommonViewer instance = getViewer();
    if (instance != null)
    {
        instance.refresh();
    }
}
项目:NEXCORE-UML-Modeler    文件:TreeItemUtil.java   
/**
 * 병합 후 트리 상태 유지를 위한 메소드
 * 
 * 
 * @param parentItem
 * @param list
 *            void
 */
public static synchronized void expandTreeItem(TreeItem parentItem, List<Object> list) {
    CommonViewer viewer = ViewerRegistry.getViewer();

    TreeItem[] children = parentItem.getItems();
    for (TreeItem child : children) {
        Object obj = child.getData();
        if (list.contains(((ITreeNode) obj).getEObject())) {
            viewer.expandToLevel(obj, 1);
            expandTreeItem(child, list);
        }
    }
}
项目:NEXCORE-UML-Modeler    文件:TreeItemUtil.java   
/**
  * expandTreeNode
  *  
  * @param commonViewer
  * @param node void
  */
 private static void expandTreeNode(CommonViewer commonViewer, ITreeNode node) {
     if (node != null && !commonViewer.getExpandedState(node)) {
         try {
    commonViewer.expandToLevel(node, 1);
} catch (Exception e) {
}
     }
 }
项目:NEXCORE-UML-Modeler    文件:ProjectUtil.java   
/**
 * refreshNodeInExplorer
 *  
 * @param target void
 */
public static void refreshNodeInExplorer(EObject target) {
    if (target instanceof EAnnotation) {
        return;
    }
    if (null == target) {
        return;
    }
    CommonViewer commonViewer = ViewerRegistry.getViewer();
    if (commonViewer.getControl().isDisposed()) {
        return;
    }

    ISelection selection = commonViewer.getSelection();
    TreePath[] expanedTreePaths = TreeItemUtil.getExpandTreePaths(commonViewer.getTree()).clone();

    /*
     * stereotype인 경우 전달 객체가 DynamicEobjectImpl이므로 할당된 클래스를 계산하여 처리해야 함.
     */
    if (target instanceof DynamicEObjectImpl) {
        target = UMLUtil.getBaseElement(target);
    }
    ITreeNode targetNode = null;
    targetNode = UMLTreeNodeRegistry.getTreeNode(target);

    if (null != targetNode) {
        commonViewer.refresh(targetNode);
        TreeItemUtil.expandTreePath(expanedTreePaths, selection);
    }
}
项目:NEXCORE-UML-Modeler    文件:ProjectUtil.java   
/**
 * updateExplorer
 *  
 * @param target
 * @param childIncluded void
 */
public static void updateExplorer(EObject target, boolean childIncluded) {
    if (null == target) {
        return;
    }
    if (target instanceof EAnnotation) {
        return;
    }
    CommonViewer commonViewer = ViewerRegistry.getViewer();
    if (commonViewer.getControl().isDisposed()) {
        return;
    }
    if (target instanceof DynamicEObjectImpl) {
        target = UMLUtil.getBaseElement(target);
    }
    ITreeNode targetNode = null;
    targetNode = UMLTreeNodeRegistry.getTreeNode(target);
    if (null == targetNode) {
        return;
    }
    String[] flags = null;
    if (childIncluded) {
        flags = new String[] { IBasicPropertyConstants.P_IMAGE, IBasicPropertyConstants.P_TEXT,
            IBasicPropertyConstants.P_CHILDREN };
    } else {
        flags = new String[] { IBasicPropertyConstants.P_IMAGE, IBasicPropertyConstants.P_TEXT };
    }
    try {
        commonViewer.update(targetNode, flags);
        commonViewer.refresh(targetNode);
    } catch (Exception ex) {
        Log.error(ex);
    }
}
项目:NEXCORE-UML-Modeler    文件:ProjectUtil.java   
/**
 * refreshExplorer
 *   void
 */
public static void refreshExplorer() {
    CommonViewer commonViewer = ViewerRegistry.getViewer();
    if (commonViewer.getControl().isDisposed()) {
        return;
    }

    ISelection selection = commonViewer.getSelection();
    if ((null == selection) || (!(selection instanceof IStructuredSelection))) {
        return;
    }

    Object object = ((IStructuredSelection) selection).getFirstElement();
    if (object instanceof ITreeNode) {
        ITreeNode node = (ITreeNode) object;
        if (node instanceof UMLFileTreeNode) {
            ((UMLFileTreeNode) node).refreshNode();
        }
        commonViewer.refresh(node);
    }

    // TreeSelection treeSelection = (TreeSelection) selection;
    // for (TreePath treePath : treeSelection.getPaths()) {
    // commonViewer.refresh(treePath);
    // }

}
项目:NEXCORE-UML-Modeler    文件:ProjectUtil.java   
/**
 * refreshWholeExplorer
 *   void
 */
public static synchronized void refreshWholeExplorer() {
    try {
        ResourcesPlugin.getWorkspace().getRoot().refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
    } catch (CoreException e) {
        Log.error(e);
    }

    CommonViewer commonViewer = ViewerRegistry.getViewer();
    if (commonViewer != null && !commonViewer.isBusy()) {
        commonViewer.refresh();
    }
}
项目:NEXCORE-UML-Modeler    文件:ProjectUtil.java   
/**
 * Finds the tree node of project explorer for the selected element in
 * diagram.
 * 
 * @param eobject
 *            void
 */
public static void findElement(EObject eobject) {

    CommonViewer viewer = ViewerRegistry.getViewer();
    if (eobject == null || eobject.eResource() == null || eobject.eResource().getResourceSet() == null) {
        return;
    }

    eobject = resolveResource(eobject);
    String fileExtension = eobject.eResource().getURI().fileExtension();
    if (!ManagerConstant.UMLDOMAIN_CONSTANT__MODEL_FILE_EXTENSION.equals(fileExtension) 
            && !ManagerConstant.UMLDOMAIN_CONSTANT__FRAGMENT_FILE_EXTENSION.equals(fileExtension)) {
        MessageDialog.openWarning(UiCorePlugin.getShell(), UMLMessage.LABEL_FIND_ELEMENT, 
                UMLMessage.MESSAGE_CANNOT_FIND_ELEMENT);
        return;
    }

    Object[] objects = viewer.getExpandedElements();
    List<Object> expandList = new ArrayList<Object>();
    for (Object object : objects) {
        if (!(expandList.contains(object))) {
            expandList.add(object);
        }
    }

    ITreeNode node = createExplorerTree(eobject, expandList);
    objects = expandList.toArray();
    if (node != null) {
        viewer.getControl().setFocus();

        if (objects != null) {
            viewer.setExpandedElements(objects);
        }

        viewer.setSelection(new StructuredSelection(node), true);
        viewer.reveal(node);
    }

}
项目:NEXCORE-UML-Modeler    文件:ExplorerSaveablesProvider.java   
/**
 * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
 */
public void selectionChanged(SelectionChangedEvent event) {
    if (!(event.getSelection() instanceof IStructuredSelection))
        return;

    Object object = ((IStructuredSelection) event.getSelection()).getFirstElement();
    if (object instanceof ITreeNode) {
        ITreeNode item = (ITreeNode) object;
        eobject = item.getEObject();
        CommonViewer viewer = ProjectRegistry.ViewerRegistry.getViewer();
        ISelection selection = viewer.getSelection();
        changeSelection(selection);

    }
}
项目:NEXCORE-UML-Modeler    文件:RenameAction.java   
/**
 * @see nexcore.tool.uml.ui.project.explorer.action.CommonActionDelegate#run(org.eclipse.jface.action.IAction)
 */
@Override
public void run(IAction action) {
    IS_RENAME_MODE = true;

    CommonViewer commonViewer = ViewerRegistry.getViewer();
    NavigatorActionService actionService = commonViewer.getCommonNavigator().getNavigatorActionService();

    actionService.fillActionBars(commonViewer.getCommonNavigator().getViewSite()
        .getActionBars());

    // Make sure text editor is created only once. Simply reset text
    // editor when action is executed more than once. Fixes bug 22269.
    if (textEditorParent == null) {
        createTextEditor();

        if (textEditorParent == null)
            return;
    }
    if (selectedEObject instanceof NamedElement) {
        textEditor.setText(((NamedElement) selectedEObject).getName());
    } else if (selectedEObject instanceof Diagram) {
        textEditor.setText(((Diagram) selectedEObject).getName());
    } else {
        return;
    }
    // ITreeNode targetNode = null;
    // targetNode = UMLTreeNodeRegistry.getTreeNode(eobject);
    // Open text editor with initial size.
    textEditorParent.setVisible(true);
    Point textSize = textEditor.computeSize(SWT.DEFAULT, SWT.DEFAULT);
    textSize.x += textSize.y; // Add extra space for new characters.
    Point parentSize = textEditorParent.getSize();
    int inset = 1;
    textEditor.setBounds(2, inset, Math.min(textSize.x, parentSize.x - 4), parentSize.y - 2 * inset);
    textEditorParent.redraw();
    textEditor.selectAll();
    textEditor.setFocus();
}
项目:gama    文件:NavigatorContentProvider.java   
@Override
public void inputChanged(final Viewer v, final Object oldInput, final Object newInput) {
    final CommonViewer viewer = (CommonViewer) v;
    final ResourceManager mapper = new ResourceManager(this, viewer);
    INSTANCE.resetVirtualFolders(mapper);
    getWorkspace().addResourceChangeListener(mapper, POST_CHANGE | PRE_DELETE);
    super.inputChanged(viewer, oldInput, newInput);
}
项目:OpenSPIFe    文件:EnsembleCommonNavigator.java   
@Override
protected CommonViewer createCommonViewer(Composite parent) {
    viewer = super.createCommonViewer(parent);
    WidgetUtils.runInDisplayThread(viewer.getControl(), new Runnable() {
        @Override
        public void run() {
            viewer.refresh();
        }
    });
    return viewer;
}
项目:Eclipse-Postfix-Code-Completion    文件:NonEssentialElementsFilter.java   
private synchronized void initStateModel(Viewer viewer) {
    if (!isStateModelInitialized) {
        if (viewer instanceof CommonViewer) {

            CommonViewer commonViewer = (CommonViewer) viewer;
            fContentService = commonViewer.getNavigatorContentService();
            fStateModel = fContentService.findStateModel(JAVA_EXTENSION_ID);

            isStateModelInitialized = true;
        }
    }
}