类org.eclipse.ui.preferences.IWorkbenchPreferenceContainer源码实例Demo

下面列出了怎么用org.eclipse.ui.preferences.IWorkbenchPreferenceContainer的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: wildwebdeveloper   文件: YAMLPreferencePage.java
@Override
protected Control createContents(Composite parent) {
	parent.setLayoutData(new GridData(SWT.NONE, SWT.TOP, true, false));
	Composite container = new Composite(parent, SWT.NONE);
	container.setLayout(new GridLayout(1, false));
	Link yamlSchemasLink = new Link(container, SWT.NONE);
	yamlSchemasLink.setText("See <A>'Schemas'</A> to associate schemas to YAML files in the current workspace");
	yamlSchemasLink.addSelectionListener(SelectionListener.widgetSelectedAdapter(e -> {
		if (getContainer() instanceof IWorkbenchPreferenceContainer) {
			((IWorkbenchPreferenceContainer) getContainer())
					.openPage("org.eclipse.wildwebdeveloper.yaml.YAMLSchemaPreferencePage", null);
		}
	}));

	return parent;
}
 
源代码2 项目: wildwebdeveloper   文件: XMLPreferencePage.java
@Override
protected Control createContents(Composite parent) {
	Composite composite = new Composite(parent, SWT.NONE);
	GridLayout layout = new GridLayout(1, false);
	layout.marginWidth = 0;
	layout.marginHeight = 0;
	composite.setLayout(layout);

	Link catalogsLink = new Link(composite, SWT.NONE);
	catalogsLink.setText(Messages.XMLPreferencesPage_XMLCatalogsLink);
	catalogsLink.addSelectionListener(new SelectionAdapter() {
		@Override
		public void widgetSelected(SelectionEvent e) {
			if (getContainer() instanceof IWorkbenchPreferenceContainer) {
				((IWorkbenchPreferenceContainer) getContainer())
						.openPage("org.eclipse.wildwebdeveloper.xml.internal.ui.preferences.XMLCatalogPreferencePage", null);
			}
		}
	});

	return composite;
}
 
源代码3 项目: n4js   文件: AbstractN4JSPreferencePage.java
@Override
public boolean performOk() {
	IWorkbenchPreferenceContainer container = (IWorkbenchPreferenceContainer) getContainer();
	if (!processChanges(container)) {
		return false;
	}
	boolean retVal = super.performOk();

	if (retVal && isProjectPreferencePage()) {
		try {
			IPreferenceStore preferenceStore = preferenceStoreAccessImpl.getWritablePreferenceStore(getProject());
			if (preferenceStore instanceof IPersistentPreferenceStore) {
				((IPersistentPreferenceStore) preferenceStore).save();
			}
		} catch (Exception e) {
			System.err.println(e);
			retVal = false;
		}
	}
	return retVal;
}
 
源代码4 项目: corrosion   文件: DebugPreferencePage.java
@Override
protected Control createContents(Composite parent) {
	parent.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
	Composite container = new Composite(parent, SWT.NONE);
	container.setLayout(new GridLayout(4, false));
	container.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 4, 1));

	gdbInput = new InputComponent(container, Messages.DebugPreferencePage_defaultGDB, e -> isPageValid());
	gdbInput.createComponent();
	gdbInput.createFileSelection();
	gdbInput.setValue(store.getString(CorrosionPreferenceInitializer.DEFAULT_GDB_PREFERENCE));

	Link gdbLink = new Link(container, SWT.NONE);
	gdbLink.setText(Messages.DebugPreferencePage_seeGDBPage);
	gdbLink.addSelectionListener(SelectionListener.widgetSelectedAdapter(e -> {
		IPreferencePageContainer prefContainer = getContainer();
		if (prefContainer instanceof IWorkbenchPreferenceContainer) {
			((IWorkbenchPreferenceContainer) prefContainer).openPage("org.eclipse.cdt.dsf.gdb.ui.preferences", //$NON-NLS-1$
					null);
		}
	}));
	gdbLink.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 4, 1));
	return parent;
}
 
public ProjectsWorkbookPage(ListDialogField<CPListElement> classPathList, IWorkbenchPreferenceContainer pageContainer) {
	fClassPathList= classPathList;
	fPageContainer= pageContainer;
	fSWTControl= null;

	String[] buttonLabels= new String[] {
		NewWizardMessages.ProjectsWorkbookPage_projects_add_button,
		null,
		NewWizardMessages.ProjectsWorkbookPage_projects_edit_button,
		NewWizardMessages.ProjectsWorkbookPage_projects_remove_button
	};

	ProjectsAdapter adapter= new ProjectsAdapter();

	fProjectsList= new TreeListDialogField<CPListElement>(adapter, buttonLabels, new CPListLabelProvider());
	fProjectsList.setDialogFieldListener(adapter);
	fProjectsList.setLabelText(NewWizardMessages.ProjectsWorkbookPage_projects_label);

	fProjectsList.enableButton(IDX_REMOVE, false);
	fProjectsList.enableButton(IDX_EDIT, false);

	fProjectsList.setViewerComparator(new CPListElementSorter());
}
 
private void configurePreferenceLink(Link link, final IJavaProject javaProject, final String preferenceId, final String propertyId) {
	link.addSelectionListener(new SelectionAdapter() {
		@Override
		public void widgetSelected(SelectionEvent e) {
			if (fContainer instanceof IWorkbenchPreferenceContainer) {
				IWorkbenchPreferenceContainer container= (IWorkbenchPreferenceContainer)fContainer;
				if (javaProject != null) {
					container.openPage(propertyId, null);
				} else {
					container.openPage(preferenceId, null);
				}
			} else {
				PreferencesUtil.createPreferenceDialogOn(fShell, preferenceId, null, null);
			}
		}
	});
}
 
public AbstractFormatterSelectionBlock(IStatusChangeListener context, IProject project,
		IWorkbenchPreferenceContainer container)
{
	super(context, project, ProfileManager.collectPreferenceKeys(TEMP_LIST, true), container);
	Collections.sort(TEMP_LIST, new Comparator<IScriptFormatterFactory>()
	{
		public int compare(IScriptFormatterFactory s1, IScriptFormatterFactory s2)
		{
			return s1.getName().compareToIgnoreCase(s2.getName());
		}
	});
	factories = TEMP_LIST.toArray(new IScriptFormatterFactory[TEMP_LIST.size()]);
	TEMP_LIST = new ArrayList<IScriptFormatterFactory>();
	sourcePreviewViewers = new ArrayList<SourceViewer>();

	// Override the super preferences lookup order.
	// All the changes to the formatter settings should go to the instance scope (no project scope here). Only the
	// selected profile will be picked from the project scope and then the instance scope when requested.
	fLookupOrder = new IScopeContext[] { EclipseUtil.instanceScope(), EclipseUtil.defaultScope() };
}
 
@Override
public boolean performOk()
{
	final boolean rebuild = rebuild();
	final boolean reReconcile = needsReconcile();
	Job buildJob = new ApplyChangesAndBuildJob(Messages.ValidationPreferencePage_RebuildJobTitle, rebuild,
			reReconcile);

	IPreferencePageContainer container = getContainer();
	if (container instanceof IWorkbenchPreferenceContainer)
	{
		((IWorkbenchPreferenceContainer) container).registerUpdateJob(buildJob);
	}
	else
	{
		buildJob.schedule();
	}

	return true;
}
 
public ComplianceConfigurationBlock(IStatusChangeListener context, IProject project, IWorkbenchPreferenceContainer container) {
	super(context, project, getKeys(project != null), container);
	setDefaultCompilerComplianceValues();

	fBlockEnableState= null;
	fComplianceFollowsEEControls= new ArrayList<Control>();
	fComplianceControls= new ArrayList<Control>();
	fComplianceChildControls= new ArrayList<Control>();

	fComplianceStatus= new StatusInfo();

	fRememberedUserCompliance= new String[] { // caution: order depends on IDX_* constants
		getValue(PREF_PB_ASSERT_AS_IDENTIFIER),
		getValue(PREF_PB_ENUM_AS_IDENTIFIER),
		getValue(PREF_SOURCE_COMPATIBILITY),
		getValue(PREF_CODEGEN_TARGET_PLATFORM),
		getValue(PREF_COMPLIANCE),
		getValue(PREF_CODEGEN_INLINE_JSR_BYTECODE),
		getValue(PREF_CODEGEN_METHOD_PARAMETERS_ATTR)
	};
}
 
@Override
protected Control createContents(Composite parent) {
	final Composite composite= new Composite(parent, SWT.NONE);
	composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
	composite.setLayout(new GridLayout());

	Link link= new Link(composite, SWT.WRAP);
	GridData data= new GridData(SWT.FILL, SWT.BEGINNING, true, false);
	data.widthHint= 300;
	link.setLayoutData(data);
	link.setText(PreferencesMessages.JavaEditorPropertyPage_SaveActionLink_Text);
	link.addSelectionListener(new SelectionAdapter() {
		@Override
		public void widgetSelected(SelectionEvent e) {
			IWorkbenchPreferenceContainer container= (IWorkbenchPreferenceContainer)getContainer();
			container.openPage(SaveParticipantPreferencePage.PROPERTY_PAGE_ID, null);
		}
	});
	noDefaultAndApplyButton();
	Dialog.applyDialogFont(composite);
	return composite;
}
 
@Override
protected boolean processChanges(IWorkbenchPreferenceContainer container) {
	String enabled = fJavaMethodFiltersTable.getEnabled();
	setValue(PREF_SHOW_METHOD_PARAMETER_FILTERS_ENABLED, enabled);
	String disabled = fJavaMethodFiltersTable.getDisabled();
	setValue(PREF_SHOW_METHOD_PARAMETER_FILTERS_DISABLED, disabled);
	return super.processChanges(container);
}
 
@Override
public void createControl(Composite parent) {
	IWorkbenchPreferenceContainer container= (IWorkbenchPreferenceContainer) getContainer();
	fConfigurationBlock= new JavaEditorCodeMiningConfigurationBlock(getNewStatusChangedListener(), container);

	super.createControl(parent);
}
 
源代码13 项目: n4js   文件: N4JSBuilderPreferencePage.java
/**
 * This method has been copied from org.eclipse.xtext.builder.preferences.BuilderPreferencePage.
 */
private void scheduleCleanerJob(IPreferencePageContainer preferencePageContainer, String folderNameToClean) {
	DerivedResourceCleanerJob derivedResourceCleanerJob = cleanerProvider.get();
	derivedResourceCleanerJob.setUser(true);
	derivedResourceCleanerJob.initialize(getProject(), folderNameToClean);
	if (preferencePageContainer != null) {
		IWorkbenchPreferenceContainer container = (IWorkbenchPreferenceContainer) getContainer();
		container.registerUpdateJob(derivedResourceCleanerJob);
	} else {
		derivedResourceCleanerJob.schedule();
	}
}
 
源代码14 项目: n4js   文件: N4JSBuilderPreferencePage.java
/**
 * This method has been copied and adapted from org.eclipse.xtext.ui.preferences.OptionsConfigurationBlock.
 */
@Override
protected boolean processChanges(IWorkbenchPreferenceContainer container) {
	boolean needsBuild = !getPreferenceChanges().isEmpty() | projectSpecificChanged;
	boolean doBuild = false;
	if (needsBuild) {
		int count = getRebuildCount();
		if (count > rebuildCount) {
			needsBuild = false;
			rebuildCount = count;
		}
	}
	if (needsBuild) {
		String[] strings = getFullBuildDialogStrings(project == null);
		if (strings != null) {
			MessageDialog dialog = new MessageDialog(this.getShell(), strings[0], null, strings[1],
					MessageDialog.QUESTION,
					new String[] { IDialogConstants.YES_LABEL, IDialogConstants.NO_LABEL,
							IDialogConstants.CANCEL_LABEL },
					2);
			int res = dialog.open();
			if (res == 0) {
				doBuild = true;
			} else if (res != 1) {
				return false;
			}
		}
	}
	if (container != null) {
		if (doBuild) {
			incrementRebuildCount();
			container.registerUpdateJob(getBuildJob(getProject()));
		}
	} else {
		if (doBuild) {
			getBuildJob(getProject()).schedule();
		}
	}
	return true;
}
 
@Override
public void createControl(Composite parent) {
	IWorkbenchPreferenceContainer container= (IWorkbenchPreferenceContainer) getContainer();
	fConfigurationBlock= new TodoTaskConfigurationBlock(getNewStatusChangedListener(), getProject(), container);

	super.createControl(parent);

	if (isProjectPreferencePage()) {
		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), IJavaHelpContextIds.TODOTASK_PROPERTY_PAGE);
	} else {
		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), IJavaHelpContextIds.TODOTASK_PREFERENCE_PAGE);
	}
}
 
源代码16 项目: xtext-eclipse   文件: TaskTagConfigurationBlock.java
/**
 * @deprecated use {@link #TaskTagConfigurationBlock(String)} instead
 */
@Deprecated
public TaskTagConfigurationBlock(IProject project, IPreferenceStore preferenceStore,
		IWorkbenchPreferenceContainer container, String languageName) {
	super(project, preferenceStore, container);
	this.languageName = languageName;
	initialize();

	unpackTaskTags();
	if (taskTags.getSize() > 0) {
		taskTags.selectFirstElement();
	} else {
		taskTags.enableButton(IDX_EDIT, false);
	}
}
 
源代码17 项目: xtext-eclipse   文件: TaskTagPreferencePage.java
@Override
public void createControl(Composite parent) {
	IWorkbenchPreferenceContainer container = (IWorkbenchPreferenceContainer) getContainer();
	IPreferenceStore preferenceStore = preferenceStoreAccess.getWritablePreferenceStore(getProject());
	taskConfigurationBlock.setProject(getProject());
	taskConfigurationBlock.setPreferenceStore(preferenceStore);
	taskConfigurationBlock.setWorkbenchPreferenceContainer(container);
	taskConfigurationBlock.setStatusChangeListener(getNewStatusChangedListener());
	super.createControl(parent);
}
 
源代码18 项目: xtext-eclipse   文件: OptionsConfigurationBlock.java
public OptionsConfigurationBlock(IProject project, IPreferenceStore preferenceStore,
		IWorkbenchPreferenceContainer container) {
	this.project = project;
	this.keys = new String[] {};
	this.setPreferenceStore(preferenceStore);
	this.workbenchPreferenceContainer = container;
}
 
源代码19 项目: xtext-eclipse   文件: OptionsConfigurationBlock.java
protected boolean processChanges(IWorkbenchPreferenceContainer container) {
	boolean needsBuild = buildPreferenceEvaluator.isAffectingBuild(getPreferenceChanges());
	boolean doBuild = false;
	if (needsBuild) {
		int count = getRebuildCount();
		if (count > rebuildCount) {
			needsBuild = false;
			rebuildCount = count;
		}
	}
	if (needsBuild) {
		String[] strings = getFullBuildDialogStrings(project == null);
		if (strings != null) {
			MessageDialog dialog = new MessageDialog(shell, strings[0], null, strings[1], MessageDialog.QUESTION,
					new String[] { IDialogConstants.YES_LABEL, IDialogConstants.NO_LABEL,
							IDialogConstants.CANCEL_LABEL }, 2);
			int res = dialog.open();
			if (res == 0) {
				doBuild = true;
			} else if (res != 1) {
				return false;
			}
		}
	}
	savePreferences();
	if (container != null) {
		if (doBuild) {
			incrementRebuildCount();
			container.registerUpdateJob(getBuildJob(getProject()));
		}
	} else {
		if (doBuild) {
			getBuildJob(getProject()).schedule();
		}
	}
	captureOriginalSettings(keys);
	return true;
}
 
源代码20 项目: xtext-eclipse   文件: BuilderPreferencePage.java
@Override
public void createControl(Composite parent) {
	IWorkbenchPreferenceContainer container = (IWorkbenchPreferenceContainer) getContainer();
	builderConfigurationBlock.setProject(getProject());
	builderConfigurationBlock.setWorkbenchPreferenceContainer(container);
	builderConfigurationBlock.setStatusChangeListener(getNewStatusChangedListener());
	super.createControl(parent);
}
 
源代码21 项目: xtext-eclipse   文件: BuilderPreferencePage.java
private void scheduleCleanerJob(IPreferencePageContainer preferencePageContainer, String folderNameToClean) {
	DerivedResourceCleanerJob derivedResourceCleanerJob = cleanerProvider.get();
	derivedResourceCleanerJob.setUser(true);
	derivedResourceCleanerJob.initialize(getProject(), folderNameToClean);
	if (preferencePageContainer != null) {
		IWorkbenchPreferenceContainer container = (IWorkbenchPreferenceContainer) getContainer();
		container.registerUpdateJob(derivedResourceCleanerJob);
	} else {
		derivedResourceCleanerJob.schedule();
	}
}
 
/**
 * Creates a new spelling configuration block.
 *
 * @param context the status change listener
 * @param project the Java project
 * @param container the preference container
 */
public SpellingConfigurationBlock(final IStatusChangeListener context, final IProject project, IWorkbenchPreferenceContainer container) {
	super(context, project, getAllKeys(), container);

	IStatus status= validateAbsoluteFilePath(getValue(PREF_SPELLING_USER_DICTIONARY));
	if (status.getSeverity() != IStatus.OK)
		setValue(PREF_SPELLING_USER_DICTIONARY, ""); //$NON-NLS-1$

	status= validateLocale(getValue(PREF_SPELLING_LOCALE));
	if (status.getSeverity() != IStatus.OK)
		setValue(PREF_SPELLING_LOCALE, SpellCheckEngine.getDefaultLocale().toString());
}
 
源代码23 项目: sarl   文件: AbstractExtraLanguagePropertyPage.java
@Override
public void createControl(Composite parent) {
	final IWorkbenchPreferenceContainer container = (IWorkbenchPreferenceContainer) getContainer();
	this.builderConfigurationBlock.setProject(getProject());
	this.builderConfigurationBlock.setWorkbenchPreferenceContainer(container);
	this.builderConfigurationBlock.setStatusChangeListener(getNewStatusChangedListener());
	super.createControl(parent);
}
 
@Override
public void createControl(Composite parent) {
	IWorkbenchPreferenceContainer container= (IWorkbenchPreferenceContainer) getContainer();
	fCodeTemplateConfigurationBlock= new CodeTemplateBlock(getNewStatusChangedListener(), getProject(), container);

	super.createControl(parent);
	PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), IJavaHelpContextIds.CODE_TEMPLATES_PREFERENCE_PAGE);
}
 
源代码25 项目: gama   文件: EditboxPreferencePage.java
@Override
protected Control createContents(final Composite parent) {
	noDefaultAndApplyButton();

	final Composite c = new Composite(parent, SWT.NONE);
	c.setLayout(new GridLayout(1, false));
	final Link link = new Link(c, SWT.NONE);
	link.setText("Turn off current line highlighting <A>here</A>.");
	final FontData[] fontData = link.getFont().getFontData();
	for (final FontData fd : fontData) {
		fd.setHeight(10);
		fd.setStyle(SWT.BOLD);
	}
	link.setFont(new Font(getShell().getDisplay(), fontData));
	link.addSelectionListener(new SelectionAdapter() {

		@Override
		public void widgetSelected(final SelectionEvent e) {
			final IWorkbenchPreferenceContainer container = (IWorkbenchPreferenceContainer) getContainer();
			container.openPage("org.eclipse.ui.preferencePages.GeneralTextEditor", null);
		}
	});

	folder = new TabFolder(c, SWT.NONE);
	folder.setLayoutData(new GridData(GridData.FILL_BOTH));
	final TabItem ti = new TabItem(folder, SWT.NONE);
	ti.setText("Themes");
	ti.setControl(createCategoryControl(folder));
	folder.pack();
	return c;
}
 
/**
 * create the Label Decoration/general page 
 * @param parent
 * @return
 */
private Control createGeneralDecoratorPage(Composite parent) {
	Composite composite = new Composite(parent, SWT.NULL);
	GridLayout layout = new GridLayout();
	composite.setLayout(layout);
	GridData data = new GridData();
	data.horizontalAlignment = GridData.FILL;
	composite.setLayoutData(data);
	SWTUtils.createPreferenceLink((IWorkbenchPreferenceContainer) getContainer(), composite, "org.eclipse.ui.preferencePages.Decorators", Policy.bind("SVNDecoratorPreferencesPage.labelDecorationsLink")); //$NON-NLS-1$ //$NON-NLS-2$		 		
	showDirty = createCheckBox(composite, Policy.bind("SVNDecoratorPreferencesPage.computeDeep")); //$NON-NLS-1$
	enableFontDecorators = createCheckBox(composite, Policy.bind("SVNDecoratorPreferencesPage.useFontDecorators")); //$NON-NLS-1$			
	SWTUtils.createPreferenceLink((IWorkbenchPreferenceContainer) getContainer(), composite, "org.eclipse.ui.preferencePages.ColorsAndFonts", Policy.bind("SVNDecoratorPreferencesPage.colorsAndFontsLink")); //$NON-NLS-1$ //$NON-NLS-2$		 				
	return composite;
}
 
源代码27 项目: APICloud-Studio   文件: PropertyLinkArea.java
public PropertyLinkArea(Composite parent, int style, final String pageId, IAdaptable element, String message,
		final IWorkbenchPreferenceContainer pageContainer)
{
	this.element = element;
	pageLink = new Link(parent, style);

	IPreferenceNode node = getPreferenceNode(pageId);
	String text = null;
	if (node == null)
	{
		text = NLS.bind(WorkbenchMessages.PreferenceNode_NotFound, pageId);
	}
	else
	{
		text = NLS.bind(message, node.getLabelText());
	}

	pageLink.addSelectionListener(new SelectionAdapter()
	{
		public void widgetSelected(SelectionEvent e)
		{
			pageContainer.openPage(pageId, null);
		}
	});

	pageLink.setText(text);
}
 
public final void createControl(Composite parent)
{
	// create the configuration block here so the page works as both types
	IWorkbenchPreferenceContainer container = (IWorkbenchPreferenceContainer) getContainer();
	block = createOptionsBlock(getNewStatusChangedListener(), getProject(), container);

	// calls createPreferenceContent(Composite)
	super.createControl(parent);

	String helpId = isProjectPreferencePage() ? getProjectHelpId() : getHelpId();
	if (helpId != null)
	{
		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), helpId);
	}
}
 
源代码29 项目: APICloud-Studio   文件: AbstractOptionsBlock.java
public AbstractOptionsBlock(IStatusChangeListener context, IProject project, PreferenceKey[] allKeys,
		IWorkbenchPreferenceContainer container)
{
	super(context, project, allKeys, container);

	this.bindManager = new ControlBindingManager(this, context);
}
 
源代码30 项目: APICloud-Studio   文件: EditorsPreferencePage.java
private void createTextEditorLink(Composite appearanceComposite)
{
	// Link to general text editor prefs from Eclipse - they can set tabs/spaces/whitespace drawing, etc
	Link link = new Link(appearanceComposite, SWT.NONE);
	link.setText(Messages.EditorsPreferencePage_GeneralTextEditorPrefLink);
	link.addSelectionListener(new SelectionAdapter()
	{

		@Override
		public void widgetSelected(SelectionEvent e)
		{
			((IWorkbenchPreferenceContainer) getContainer()).openPage(GENERAL_TEXT_EDITOR_PREF_ID, null);
		}
	});
}
 
 类所在包
 同包方法