public void open(Shell parentShell, final int selectionType) { resourcesList = new ArrayList<String>(); String[] retrieveSavedJars = OmsBoxPlugin.getDefault().retrieveSavedJars(); for (String jarPath : retrieveSavedJars) { resourcesList.add(jarPath); } dialog = new Dialog(parentShell) { @Override protected void configureShell(Shell shell) { super.configureShell(shell); shell.setText(""); // $NON-NLS-1$ } @Override protected Point getInitialSize() { return new Point(640, 450); } @Override protected Control createDialogArea(Composite parent) { Composite parentPanel = (Composite) super.createDialogArea(parent); final TabFolder tabFolder = new TabFolder(parentPanel, SWT.BORDER); GridData tabFolderGD = new GridData(SWT.FILL, SWT.FILL, true, true); tabFolder.setLayoutData(tabFolderGD); TabItem librariesTabItem = new TabItem(tabFolder, SWT.NULL); librariesTabItem.setText("Modules Libraries "); Composite librariesPanel = new Composite(tabFolder, SWT.NONE); librariesPanel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); librariesPanel.setLayout(new GridLayout(2, true)); createTableViewer(librariesPanel); createAddRemoveButtons(librariesPanel); librariesTabItem.setControl(librariesPanel); TabItem grassTabItem = new TabItem(tabFolder, SWT.NULL); grassTabItem.setText("Grass settings"); Composite grassPanel = new Composite(tabFolder, SWT.NONE); grassPanel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); grassPanel.setLayout(new GridLayout(1, false)); grassTabItem.setControl(grassPanel); createGrassPanel(grassPanel); return parentPanel; } @Override protected void buttonPressed(int buttonId) { if (buttonId == OK) { OmsBoxPlugin.getDefault().saveJars(resourcesList); cancelPressed = false; } else { cancelPressed = true; } super.buttonPressed(buttonId); } }; dialog.setBlockOnOpen(true); dialog.open(); }