public void createPartControl()

in org.apache.ivyde.eclipse.resolvevisualizer/src/org/apache/ivyde/eclipse/resolvevisualizer/ResolveVisualizerView.java [117:178]


    public void createPartControl(Composite parent) {
        FormToolkit toolKit = new FormToolkit(parent.getDisplay());

        visualizationForm = new ResolveVisualizerForm(parent, toolKit, this);
        viewer = visualizationForm.getGraphViewer();

        this.labelProvider = new IvyNodeLabelProvider(this.viewer);
        viewer.setLabelProvider(labelProvider);
        viewer.setContentProvider(contentProvider);
        viewer.setInput(null);
        viewer.setConnectionStyle(ZestStyles.CONNECTIONS_DIRECTED);
        viewer.setLayoutAlgorithm(new CompositeLayoutAlgorithm(LayoutStyles.NO_LAYOUT_NODE_RESIZING,
                new LayoutAlgorithm[] { new DirectedGraphLayoutAlgorithm(LayoutStyles.NO_LAYOUT_NODE_RESIZING),
                                        new HorizontalShift(LayoutStyles.NO_LAYOUT_NODE_RESIZING) }));

        viewer.addSelectionChangedListener(new ISelectionChangedListener() {
            public void selectionChanged(SelectionChangedEvent event) {
                Object selectedElement = ((IStructuredSelection) event.getSelection()).getFirstElement();
                if (selectedElement instanceof EntityConnectionData) {
                    return;
                }
                ResolveVisualizerView.this.selectionChanged((IvyNodeElement) selectedElement);
            }
        });

        viewer.addDoubleClickListener(new IDoubleClickListener() {
            public void doubleClick(DoubleClickEvent event) {
                focusOnSelectionAction.run();
            }
        });

        visualizationForm.getSearchBox().addModifyListener(new ModifyListener() {
            @SuppressWarnings("unchecked")
            public void modifyText(ModifyEvent e) {
                String textString = visualizationForm.getSearchBox().getText();

                Map<String, GraphItem> figureListing = new HashMap<>();
                List<GraphItem> list = (List<GraphItem>) viewer.getGraphControl().getNodes();
                for (GraphItem item : list) {
                    figureListing.put(item.getText(), item);
                }
                list.clear();
                if (textString.length() > 0) {
                    for (Map.Entry<String, GraphItem> figure : figureListing.entrySet()) {
                        if (figure.getKey().toLowerCase().contains(textString.toLowerCase())) {
                            list.add(figure.getValue());
                        }
                    }
                }
                viewer.getGraphControl().setSelection(list.toArray(new GraphItem[list.size()]));
            }
        });

        messageContentProvider.setMessageManager(visualizationForm.getManagedForm().getMessageManager());
        contextZoomContributionViewItem = new ZoomContributionViewItem(this);
        toolbarZoomContributionViewItem = new ZoomContributionViewItem(this);

        // Create the help context id for the viewer's control
        makeActions();
        hookContextMenu();
        contributeToActionBars();
    }