package com.redhat.ceylon.eclipse.code.style;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.ui.IWorkbenchPropertyPage;
import org.eclipse.ui.dialogs.PropertyPage;
public abstract class StylePage extends PropertyPage implements
IWorkbenchPropertyPage {
protected IProject project;
protected StyleBlock styleBlock;
protected Control styleBlockControl;
@Override
public void createControl(Composite parent) {
super.createControl(parent);
}
@Override
public IAdaptable getElement() {
return project;
}
@Override
public void setElement(IAdaptable element) {
project = (IProject) element.getAdapter(IResource.class);
}
protected boolean isProjectPreferencePage() {
return project != null;
}
@Override
public void dispose() {
super.dispose();
if (styleBlock != null) {
styleBlock.dispose();
}
if (styleBlockControl != null) {
styleBlockControl.dispose();
}
}
}