private void createFilePreviewOptionsGroup(Composite parent) { Group theGroup = WidgetFactory.createGroup( parent, getString("filePreviewOptionsGroup"), SWT.NONE, 1, 5); // $NON-NLS-1$ theGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); Label numberLinesInFileLabel = new Label(theGroup, SWT.NONE); numberLinesInFileLabel.setText(getString("numberOfLinesLabel")); // $NON-NLS-1$ numberLinesInFileText = WidgetFactory.createTextField(theGroup, SWT.NONE); numberLinesInFileText.setEditable(false); numberLinesInFileText.setBackground( Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW)); GridData gd = new GridData(); gd.minimumWidth = 50; Label spacer = new Label(theGroup, SWT.NONE); spacer.setText(" "); // $NON-NLS-1$ Label prefixLabel = new Label(theGroup, SWT.NONE); prefixLabel.setText(getString("numberOfPreviewLines")); // $NON-NLS-1$ prefixLabel.setLayoutData(new GridData()); // new GridData(GridData.FILL_HORIZONTAL)); this.numberPreviewLinesText = WidgetFactory.createTextField(theGroup, SWT.NONE); gd = new GridData(); gd.minimumWidth = 50; this.numberPreviewLinesText.setLayoutData(gd); this.numberPreviewLinesText.addModifyListener( new ModifyListener() { @Override public void modifyText(final ModifyEvent event) { if (!synchronizing) { if (!numberPreviewLinesText.getText().isEmpty()) { try { int nLines = Integer.parseInt(numberPreviewLinesText.getText()); if (nLines == 0) { setErrorMessage(getString("numberOfLinesCannotBeNullOrZero")); // $NON-NLS-1$ return; } if (nLines != dataFileInfo.getNumberOfCachedFileLines()) { dataFileInfo.setNumberOfCachedFileLines(nLines); handleInfoChanged(true); } setErrorMessage(null); } catch (NumberFormatException ex) { setErrorMessage( getString( "numberOfLinesMustBeInteger", numberPreviewLinesText.getText())); // $NON-NLS-1$ return; } } else { setErrorMessage(getString("numberOfLinesCannotBeNullOrZero")); // $NON-NLS-1$ return; } } } }); }
/** * Create the controls for creating a new relationships Model. * * @param parent the parent composite * @return the created composite */ private Composite createModelCreationComposite(Composite parent) { // Set up Composite Composite nameComposite = new Composite(parent, SWT.NONE); GridLayout nameCompositeLayout = new GridLayout(); nameComposite.setLayout(nameCompositeLayout); nameCompositeLayout.numColumns = 3; nameCompositeLayout.marginWidth = 0; GridData nameCompositeGridData = new GridData(GridData.FILL_HORIZONTAL); nameCompositeGridData.horizontalIndent = 20; nameComposite.setLayoutData(nameCompositeGridData); // Enter Model name label - col 1 Model Name Label lbModelName = new Label(nameComposite, SWT.NONE); lbModelName.setText(MODEL_NAME_LABEL); lbModelName.getAlignment(); // Model name entry field - col 2 txtModelName = WidgetFactory.createTextField(nameComposite, GridData.HORIZONTAL_ALIGN_FILL); GridData modelNameTextGridData = new GridData(); modelNameTextGridData.widthHint = MODEL_NAME_TEXT_WIDTH; txtModelName.setLayoutData(modelNameTextGridData); // listener for typing changes txtModelName.addModifyListener( new ModifyListener() { @Override public void modifyText(final ModifyEvent event) { handleSetModelName(); } }); // This initializes the status label handleSetModelName(); setCreateControlsEnabled(false); return nameComposite; }
/** * @param parent * @return composite the page * @since 4.0 */ @SuppressWarnings({"unused", "unchecked"}) Composite createPageControl(final Composite parent) { // Create page final Composite mainPanel = new Composite(parent, SWT.NONE); mainPanel.setLayout(new GridLayout(COLUMN_COUNT, false)); // Add widgets to page WidgetFactory.createLabel(mainPanel, FOLDER_LABEL); final String name = (this.folder == null ? null : this.folder.getFullPath().makeRelative().toString()); this.folderText = WidgetFactory.createTextField(mainPanel, GridData.FILL_HORIZONTAL, 1, name, SWT.READ_ONLY); this.folderText.addModifyListener( new ModifyListener() { @Override public void modifyText(final ModifyEvent event) { folderModified(); } }); btnBrowse = WidgetFactory.createButton(mainPanel, BROWSE_BUTTON); btnBrowse.addSelectionListener( new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent event) { browseButtonSelected(); } }); WidgetFactory.createLabel(mainPanel, NAME_LABEL); this.nameText = WidgetFactory.createTextField(mainPanel, GridData.HORIZONTAL_ALIGN_FILL, COLUMN_COUNT - 1); this.nameText.addModifyListener( new ModifyListener() { @Override public void modifyText(final ModifyEvent event) { nameModified(); } }); // set focus to browse button if no folder selected. otherwise set focus to text field if (folder == null) { btnBrowse.setFocus(); } else { nameText.setFocus(); } DESCRIPTION_GROUP: { final Group descGroup = WidgetFactory.createGroup( mainPanel, getString("description"), GridData.FILL_HORIZONTAL, 3); // $NON-NLS-1$ descriptionTextEditor = new StyledTextEditor( descGroup, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.WRAP | SWT.BORDER); final GridData descGridData = new GridData(GridData.FILL_BOTH); descGridData.horizontalSpan = 1; descGridData.heightHint = 50; descGridData.minimumHeight = 30; descGridData.grabExcessVerticalSpace = true; descriptionTextEditor.setLayoutData(descGridData); descriptionTextEditor.setText(""); // $NON-NLS-1$ } MODELS_GROUP: { Group group = WidgetFactory.createGroup( mainPanel, getString("selectedModelsGroupTitle"), GridData.FILL_BOTH, COLUMN_COUNT, COLUMN_COUNT); //$NON-NLS-1$ group.setLayout(new GridLayout(2, false)); GridData gd = new GridData(GridData.FILL_BOTH); gd.heightHint = 200; gd.horizontalSpan = 3; group.setLayoutData(gd); Composite leftToolbarPanel = new Composite(group, SWT.NONE); leftToolbarPanel.setLayout(new GridLayout()); GridData ltpGD = new GridData(GridData.FILL_VERTICAL); ltpGD.heightHint = 120; leftToolbarPanel.setLayoutData(ltpGD); addModelsButton = new Button(leftToolbarPanel, SWT.PUSH); addModelsButton.setText(getString("add")); // $NON-NLS-1$ addModelsButton.setToolTipText(getString("addModelsTooltip")); // $NON-NLS-1$ addModelsButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); addModelsButton.addSelectionListener( new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { handleAddModelsSelected(); if (!modelsViewer.getSelection().isEmpty()) { removeModelsButton.setEnabled(true); } } }); removeModelsButton = new Button(leftToolbarPanel, SWT.PUSH); removeModelsButton.setText(getString("remove")); // $NON-NLS-1$ removeModelsButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); removeModelsButton.setEnabled(false); removeModelsButton.addSelectionListener( new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Collection<IResource> models = new ArrayList<IResource>(); IStructuredSelection selection = (IStructuredSelection) modelsViewer.getSelection(); for (Object obj : selection.toArray()) { if (obj instanceof IResource) { models.add((IResource) obj); } } removeModels(models); removeModelsButton.setEnabled(false); } }); this.modelsViewer = new TableViewer(group); GridData gdv = new GridData(GridData.FILL_BOTH); // gdv.horizontalSpan = COLUMN_COUNT; modelsViewer.getControl().setLayoutData(gdv); modelsViewer.setContentProvider(new ListContentProvider()); modelsViewer.setLabelProvider(new ModelExplorerLabelProvider()); // Add Models from properties if available if (this.designerProperties != null && !this.designerProperties.isEmpty()) { IFile sourceMdl = DesignerPropertiesUtil.getSourceModel(this.designerProperties); IFile viewMdl = DesignerPropertiesUtil.getViewModel(this.designerProperties); if (sourceMdl != null) this.modelsForVdb.add(sourceMdl); if (viewMdl != null) this.modelsForVdb.add(viewMdl); } else { this.modelsForVdb.addAll(SelectionUtilities.getSelectedIResourceObjects(initialSelection)); } modelsViewer.setInput(this.modelsForVdb); modelsViewer.addSelectionChangedListener( new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { removeModelsButton.setEnabled(!event.getSelection().isEmpty()); } }); } updateForProperties(); return mainPanel; }