1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.seasar.eclipse.common.preference;
18
19 import org.eclipse.core.resources.IProject;
20 import org.eclipse.core.runtime.IAdaptable;
21 import org.eclipse.ui.IWorkbench;
22 import org.eclipse.ui.IWorkbenchPreferencePage;
23 import org.eclipse.ui.dialogs.PropertyPage;
24
25
26
27
28
29 public abstract class AbstractPreferencePage extends PropertyPage implements
30 IWorkbenchPreferencePage {
31
32 protected IWorkbench workbench;
33
34 public AbstractPreferencePage() {
35 super();
36 }
37
38 public void init(IWorkbench workbench) {
39 this.workbench = workbench;
40 }
41
42 public boolean isProjectPage() {
43 return getProject() != null;
44 }
45
46 public IProject getProject() {
47 IProject result = null;
48 Object o = getElement();
49 if (o instanceof IProject) {
50 result = (IProject) o;
51 } else if (o instanceof IAdaptable) {
52 IAdaptable a = (IAdaptable) o;
53 result = (IProject) a.getAdapter(IProject.class);
54 }
55 return result;
56 }
57 }