blob: faa9a98479b19a434dc7c8c3c68a12cbb20d44d5 [file] [log] [blame]
//-------------------------------------------------------------------------------
// Copyright (c) 2005, 2008 IBM Corporation. All Rights Reserved.
//-------------------------------------------------------------------------------
package org.eclipse.epf.publishing.ui.preferences;
import org.eclipse.epf.authoring.ui.AuthoringUIResources;
import org.eclipse.epf.common.ui.PreferenceStoreWrapper;
import org.eclipse.epf.library.ui.LibraryUIPlugin;
import org.eclipse.epf.library.ui.preferences.LibraryUIPreferences;
import org.eclipse.epf.ui.preferences.BasePreferencePage;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Group;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
/**
* The supporiting plugins Preference page
*
* @author Weiping Lu
* @since 7.5
*/
public class SupportingPluginPreferencePage extends BasePreferencePage
implements IWorkbenchPreferencePage, SelectionListener {
private Button includeDescriptorButton;
/**
*
*/
public SupportingPluginPreferencePage() {
super();
}
/*
* (non-Javadoc)
*
* @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
*/
protected Control createContents(Composite parent) {
Composite composite = new Composite(parent, SWT.NONE);
composite.setLayout(new GridLayout());
composite.setLayoutData(new GridData(GridData.FILL_BOTH));
Group layoutGroup = createGridLayoutGroup(composite,
AuthoringUIResources.preference_Descriptors, 1);
layoutGroup.setLayout(new GridLayout());
layoutGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
includeDescriptorButton = createCheckbox(
layoutGroup,
AuthoringUIResources.preference_includeDescriptorButton_text, 1);
// Initialize values
initializeValues();
return composite;
}
/*
* (non-Javadoc)
*
* @see org.eclipse.epf.ui.preferences.BasePreferencePage#init(org.eclipse.ui.IWorkbench)
*/
public void init(IWorkbench workbench) {
}
/*
* (non-Javadoc)
*
* @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)
*/
public void widgetSelected(SelectionEvent e) {
}
/*
* (non-Javadoc)
*
* @see org.eclipse.swt.events.SelectionListener#widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent)
*/
public void widgetDefaultSelected(SelectionEvent e) {
}
/*
* (non-Javadoc)
*
* @see org.eclipse.jface.preference.PreferencePage#performDefaults()
*/
protected void performDefaults() {
super.performDefaults();
includeDescriptorButton.setSelection(false);
}
/*
* (non-Javadoc)
*
* @see org.eclipse.jface.preference.PreferencePage#performOk()
*/
public boolean performOk() {
LibraryUIPreferences.setIncludeDescriptors(getIncludeDescriptors());
return true;
}
private boolean getIncludeDescriptors() {
return includeDescriptorButton.getSelection();
}
/**
* Initializes states of the controls from the preference store.
*/
private void initializeValues() {
includeDescriptorButton.setSelection(LibraryUIPreferences.getIncludeDescriptors());
}
/*
* (non-Javadoc)
*
* @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
*/
protected IPreferenceStore doGetPreferenceStore() {
IPreferenceStore wrapper = LibraryUIPlugin.getDefault()
.getPreferenceStore();
if (wrapper instanceof PreferenceStoreWrapper) {
return ((PreferenceStoreWrapper) wrapper).getStore();
}
return null;
}
}