示例#1
0
  /** @throws java.lang.Exception */
  @Override
  protected void setUp() throws Exception {
    fDsfExecutor = new DefaultDsfExecutor();
    fDsfSession = DsfSession.startSession(fDsfExecutor, getClass().getName());

    fDisplay = PlatformUI.getWorkbench().getDisplay();
    fShell = new Shell(fDisplay /*, SWT.ON_TOP | SWT.SHELL_TRIM*/);
    fShell.setMaximized(true);
    fShell.setLayout(new FillLayout());

    fViewer = createViewer(fDisplay, fShell);

    fModel = new TestModel(fDsfSession);
    initializeService(fModel);
    fDummyValuesService = new DummyFormattedValueService(fDsfSession);
    initializeService(fDummyValuesService);

    fViewerListener = new TestModelUpdatesListener(fViewer, true, false);

    fModel.setRoot(new TestElement(fModel, "root", new TestElement[0]));
    fModel.setElementChildren(
        TreePath.EMPTY, makeModelElements(fModel, getTestModelDepth(), "model"));

    fVMAdapter =
        new AbstractVMAdapter() {
          @Override
          protected IVMProvider createViewModelProvider(IPresentationContext context) {
            return fVMProvider;
          }
        };
    fVMProvider =
        new TestModelCachingVMProvider(fVMAdapter, fViewer.getPresentationContext(), fDsfSession);

    fVMListener = new TestModelUpdatesListener();
    fVMProvider.getNode().setVMUpdateListener(fVMListener);
    fVMProvider.getNode().getLabelProvider().addPropertiesUpdateListener(fViewerListener);

    fFormattedValuesListener = new FormattedValuesListener(fModel);
    fVMProvider.getNode().setFormattedValuesListener(fFormattedValuesListener);
    fModel.setTestModelListener(fFormattedValuesListener);

    fShell.open();
  }