List of usage examples for org.eclipse.jface.preference PreferenceDialog addPageChangedListener
@Override public void addPageChangedListener(IPageChangedListener listener)
From source file:net.overscale.eclipse.pti.ui.preferences.AbstractPHPToolConfigurationBlock.java
License:Open Source License
protected Link addLink(Composite parent, String label, final String propertyPageID, final IPageChangedListener listener) { Link link = new Link(parent, SWT.NONE); link.setFont(parent.getFont());// ww w.j a v a 2 s. co m link.setLayoutData(new GridData(SWT.END, SWT.BEGINNING, true, false)); link.setText(label); link.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(getShell(), propertyPageID, null, null); dialog.setBlockOnOpen(true); if (listener != null) { dialog.addPageChangedListener(listener); } dialog.open(); } }); return link; }
From source file:net.overscale.eclipse.pti.ui.preferences.dialogfields.PHPExecutableDialogField.java
License:Open Source License
public Control[] doFillIntoGrid(Composite parent, int nColumns) { assertEnoughColumns(nColumns);/*from www. j a va2s .co m*/ Label label = getLabelControl(parent); label.setLayoutData(gridDataForLabel(1)); Combo combo = getTextControl(parent); combo.setLayoutData(gridDataForText(nColumns - 2)); Link link = new Link(parent, SWT.NONE); link.setFont(parent.getFont()); link.setLayoutData(new GridData(SWT.END, SWT.BEGINNING, true, false)); link.setText("<a>PHP Executables...</a>"); link.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn( Display.getCurrent().getActiveShell(), PHP_EXE_PAGE_ID, null, null); dialog.setBlockOnOpen(true); dialog.addPageChangedListener(new IPageChangedListener() { public void pageChanged(PageChangedEvent event) { Display.getDefault().asyncExec(new Runnable() { public void run() { } }); } }); dialog.open(); } }); return new Control[] { label, combo, link }; }
From source file:org.eclipse.datatools.connectivity.ui.actions.ViewPropertyAction.java
License:Open Source License
public void run() { Object selected = getSelectedObject(); PreferenceDialog propertyDialog = ProfileUIManager.createPreferenceDialog(mViewer.getControl().getShell(), selected);/*from www . j a v a 2 s. c om*/ if (propertyDialog == null) return; // check for size settings IDialogSettings dset = ConnectivityUIPlugin.getDefault().getDialogSettings(); boolean foundSettings = false; if (dset != null) { IDialogSettings dSection = dset.getSection(MEMENTO_ROOT); if (dSection != null) { if (dSection.get(MEMENTO_DIALOG_SIZE_HEIGHT) != null && dSection.get(MEMENTO_DIALOG_SIZE_HEIGHT).trim().length() > 0) { mShellHeight = dSection.getInt(MEMENTO_DIALOG_SIZE_HEIGHT); mShellWidth = dSection.getInt(MEMENTO_DIALOG_SIZE_WIDTH); foundSettings = true; } } } // if we found them, set it to the old values if (foundSettings) { propertyDialog.getShell().setSize(mShellWidth, mShellHeight); propertyDialog.getShell().layout(); // if not, initialize 'mShellWidth' and 'mShellHeigth' } else { mShellHeight = propertyDialog.getShell().getSize().y; mShellWidth = propertyDialog.getShell().getSize().x; } this.mShell = propertyDialog.getShell(); String title = ConnectivityUIPlugin.getDefault().getResourceString("properties.dialog"); //$NON-NLS-1$ if (selected instanceof IConnectionProfile) { IConnectionProfile profile = (IConnectionProfile) selected; title = ConnectivityUIPlugin.getDefault().getResourceString("ConnectAction.title", //$NON-NLS-1$ new String[] { profile.getName() }); } propertyDialog.getShell().setText(title); // add a listener to make sure we get any resizes of the dialog // to store for the next time this.mShell.addControlListener(new ControlListener() { public void controlMoved(ControlEvent e) { } public void controlResized(ControlEvent e) { if (e.getSource() instanceof Shell) { Shell shell = (Shell) e.getSource(); ViewPropertyAction.this.mShellHeight = shell.getSize().y; ViewPropertyAction.this.mShellWidth = shell.getSize().x; } } }); // check to see if the profile is in a read-only repository // and if so, disable the controls on each page selected boolean inReadOnlyRepository = false; if (getSelectedObject() instanceof IConnectionProfile) { IConnectionProfile profile = (IConnectionProfile) getSelectedObject(); if (profile.getParentProfile() != null) { IManagedConnection imc = ((IConnectionProfile) profile.getParentProfile()).getManagedConnection( IConnectionProfileRepositoryConstants.REPOSITORY_CONNECTION_FACTORY_ID); if (imc != null && imc.isConnected()) { IConnectionProfileRepository repo = (IConnectionProfileRepository) imc.getConnection() .getRawConnection(); inReadOnlyRepository = repo.isReadOnly(); } } } // handle the initial page selected in the dialog for the // read only repository page disabling... propertyDialog.addPageChangedListener(new PropertyPageChangeListener(inReadOnlyRepository)); if (inReadOnlyRepository && propertyDialog.getSelectedPage() != null) { PropertyPage page = (PropertyPage) propertyDialog.getSelectedPage(); if (propertyDialog.getSelectedPage() instanceof ConnectionProfileDetailsPage || propertyDialog.getSelectedPage() instanceof ProfileDetailsPropertyPage) { if (page.getControl() instanceof Composite) { Composite composite = (Composite) page.getControl(); if (inReadOnlyRepository) disableControls(composite, !inReadOnlyRepository, true); } } else if (propertyDialog.getSelectedPage() instanceof PropertyPage) { if (page.getControl() instanceof Composite) { Composite composite = (Composite) page.getControl(); disableControls(composite, !inReadOnlyRepository); } } } int rtn_val = propertyDialog.open(); if (rtn_val == Dialog.OK) saveState(); mViewer.setSelection(mViewer.getSelection()); }
From source file:org.eclipse.jubula.rc.rcp.swt.aut.RcpSwtComponentNamer.java
License:Open Source License
/** * Adds name information to the given widget, if necessary. * * @param widget/*from w w w.j a va 2 s. c o m*/ * The widget to name. */ private void addNameData(Widget widget) { // Assign name if (hasWidgetToBeNamed(widget)) { Object data = getWidgetData(widget); if (data instanceof IContributionItem) { // Name buttons and toolitems according to the action that // they represent, if possible. String actionId = ((IContributionItem) data).getId(); if (actionId != null && actionId.trim().length() > 0) { setComponentName(widget, actionId); ComponentHandler.getAutHierarchy().refreshComponentName(widget); } } else if (data instanceof PreferenceDialog) { PreferenceDialog prefDialog = (PreferenceDialog) data; // Add a listener to add name data as pages are // selected/created. prefDialog.addPageChangedListener(new IPageChangedListener() { public void pageChanged(PageChangedEvent event) { addNameDataToPrefPage(event.getSelectedPage()); } }); // The listener won't notice the initally selected page, // so we have to add that name data here. addNameDataToPrefPage(prefDialog.getSelectedPage()); } if (generateNames && data instanceof Dialog) { Dialog dialog = (Dialog) data; setNameForDialogButtonBarButtons(dialog); } } }
From source file:org.eclipse.php.internal.debug.ui.preferences.PHPDebugPreferencesBlock.java
License:Open Source License
private void addLink(Composite parent, String label, final String propertyPageID) { Link link = new Link(parent, SWT.NONE); link.setFont(parent.getFont());/* www .j a v a 2 s. c o m*/ link.setLayoutData(new GridData(SWT.END, SWT.BEGINNING, false, false)); link.setText(label); link.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn( PHPDebugPreferencesBlock.this.propertyPage.getShell(), propertyPageID, null, null); dialog.setBlockOnOpen(true); dialog.addPageChangedListener(new IPageChangedListener() { public void pageChanged(PageChangedEvent event) { refreshDebuggers(); } }); dialog.open(); if (!fDefaultServer.isDisposed() && !fDefaultPHPExe.isDisposed()) { refreshDebuggers(); } } }); }
From source file:org2.eclipse.php.internal.debug.ui.preferences.PHPDebugPreferencesAddon.java
License:Open Source License
private void addLink(Composite parent, String label, final String propertyPageID) { Link link = new Link(parent, SWT.NONE); link.setFont(parent.getFont());/*ww w. jav a 2 s . c om*/ link.setLayoutData(new GridData(SWT.END, SWT.BEGINNING, true, false)); link.setText(label); link.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn( PHPDebugPreferencesAddon.this.propertyPage.getShell(), propertyPageID, null, null); dialog.setBlockOnOpen(true); dialog.addPageChangedListener(new IPageChangedListener() { public void pageChanged(PageChangedEvent event) { Display.getDefault().asyncExec(new Runnable() { public void run() { String selectedDebugger = PHPDebugPreferencesAddon.this.fDefaultDebugger.getText(); String selectedServer = PHPDebugPreferencesAddon.this.fDefaultServer.getText(); String selectedPHP = PHPDebugPreferencesAddon.this.fDefaultPHPExe.getText(); PHPDebugPreferencesAddon.this .loadDebuggers(PHPDebugPreferencesAddon.this.fDefaultDebugger); PHPDebugPreferencesAddon.this .loadServers(PHPDebugPreferencesAddon.this.fDefaultServer); loadPHPExes(PHPDebugPreferencesAddon.this.fDefaultPHPExe, PHPexes.getInstance() .getItems(PHPDebugPreferencesAddon.this.getSelectedDebuggerId())); PHPDebugPreferencesAddon.this.selectComboItem( PHPDebugPreferencesAddon.this.fDefaultDebugger, PHPDebugPreferencesAddon.this.fDefaultDebugger.indexOf(selectedDebugger)); PHPDebugPreferencesAddon.this.selectComboItem( PHPDebugPreferencesAddon.this.fDefaultServer, PHPDebugPreferencesAddon.this.fDefaultServer.indexOf(selectedServer)); PHPDebugPreferencesAddon.this.selectComboItem( PHPDebugPreferencesAddon.this.fDefaultPHPExe, PHPDebugPreferencesAddon.this.fDefaultPHPExe.indexOf(selectedPHP)); } }); } }); dialog.open(); } }); }