Package com.subgraph.vega.ui.scanner.wizards

Source Code of com.subgraph.vega.ui.scanner.wizards.NewScanModulesPage

package com.subgraph.vega.ui.scanner.wizards;

import java.util.List;

import org.eclipse.jface.viewers.CheckboxTreeViewer;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Label;

import com.subgraph.vega.api.scanner.modules.IScannerModule;
import com.subgraph.vega.ui.util.modules.ModuleRegistryCheckStateProvider;
import com.subgraph.vega.ui.util.modules.ModuleRegistryContentProvider;
import com.subgraph.vega.ui.util.modules.ModuleRegistryLabelProvider;

public class NewScanModulesPage extends WizardPage {

  private final List<IScannerModule> modules;
  private CheckboxTreeViewer viewer;
 
  NewScanModulesPage(List<IScannerModule> modules) {
    super("Select Modules");
    setTitle("Select Modules");
    setDescription("Choose which scanner modules to enable for this scan");
   
    this.modules = modules;
  }

  @Override
  public void createControl(Composite parent) {
    final Composite container = new Composite(parent, SWT.NULL);
    container.setLayout(new GridLayout());
    createModulesPart(container);
    setControl(container);
  }
 
  private void createModulesPart(Composite parent) {
    final Label label = new Label(parent, SWT.NONE);
    label.setText("Select modules to run:");
   
    viewer = new CheckboxTreeViewer(parent, SWT.BORDER| SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    final ModuleRegistryCheckStateProvider checkStateProvider = new ModuleRegistryCheckStateProvider(viewer);
    viewer.setContentProvider(new ModuleRegistryContentProvider(checkStateProvider));
    viewer.setLabelProvider(new ModuleRegistryLabelProvider());
    viewer.setCheckStateProvider(checkStateProvider);   
    viewer.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));
      viewer.setInput(modules.toArray(new IScannerModule[0]));
        viewer.addCheckStateListener(checkStateProvider);
  }
}
TOP

Related Classes of com.subgraph.vega.ui.scanner.wizards.NewScanModulesPage

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.