|
24 | 24 | */
|
25 | 25 | public class PreferenceUtils {
|
26 | 26 |
|
27 |
| - /** |
28 |
| - * ID for the main preference page. |
29 |
| - */ |
30 |
| - public static final String SLOEBER_MAIN = "io.sloeber.eclipse.ArduinoPreferencePage"; |
| 27 | + /** |
| 28 | + * ID for the main preference page. |
| 29 | + */ |
| 30 | + public static final String SLOEBER_MAIN = "io.sloeber.eclipse.ArduinoPreferencePage"; //$NON-NLS-1$ |
31 | 31 |
|
32 |
| - /** |
33 |
| - * ID for the open preference page command parameter |
34 |
| - */ |
35 |
| - public static final String PREFERENCE_PARAMETER1 = "io.sloeber.ui.actions.openPreferences.pageId"; |
| 32 | + /** |
| 33 | + * ID for the open preference page command parameter |
| 34 | + */ |
| 35 | + public static final String PREFERENCE_PARAMETER1 = "io.sloeber.ui.actions.openPreferences.pageId"; //$NON-NLS-1$ |
36 | 36 |
|
37 |
| - private static String[] fSloeberPreferencePageIds; |
| 37 | + private static String[] fSloeberPreferencePageIds; |
38 | 38 |
|
39 |
| - /** |
40 |
| - * Finds all preference pages contributed by plugins in the passed name |
41 |
| - * space. |
42 |
| - * |
43 |
| - * @return an array of preference pages. |
44 |
| - * @since 4.1 |
45 |
| - */ |
46 |
| - public static String[] getPreferencePages(String nameSpace) { |
47 |
| - if (fSloeberPreferencePageIds != null) { |
48 |
| - return fSloeberPreferencePageIds; |
| 39 | + /** |
| 40 | + * Finds all preference pages contributed by plugins in the passed name |
| 41 | + * space. |
| 42 | + * |
| 43 | + * @return an array of preference pages. |
| 44 | + * @since 4.1 |
| 45 | + */ |
| 46 | + public static String[] getPreferencePages(String nameSpace) { |
| 47 | + if (fSloeberPreferencePageIds != null) { |
| 48 | + return fSloeberPreferencePageIds; |
| 49 | + } |
| 50 | + fSloeberPreferencePageIds = loadRemainPreferencePages(nameSpace); |
| 51 | + return fSloeberPreferencePageIds; |
49 | 52 | }
|
50 |
| - fSloeberPreferencePageIds = loadRemainPreferencePages(nameSpace); |
51 |
| - return fSloeberPreferencePageIds; |
52 |
| - } |
53 | 53 |
|
54 |
| - private static String[] loadRemainPreferencePages(String nameSpace) { |
55 |
| - ArrayList<String> result = new ArrayList<>(); |
56 |
| - IConfigurationElement[] elements = Platform.getExtensionRegistry() |
57 |
| - .getConfigurationElementsFor("org.eclipse.ui.preferencePages"); |
58 |
| - for (IConfigurationElement element : elements) { |
59 |
| - String contributor = element.getContributor().getName(); |
60 |
| - if (contributor.startsWith(nameSpace)) { |
61 |
| - String pageId = element.getAttribute("id"); |
62 |
| - result.add(pageId); |
63 |
| - } |
| 54 | + private static String[] loadRemainPreferencePages(String nameSpace) { |
| 55 | + ArrayList<String> result = new ArrayList<>(); |
| 56 | + IConfigurationElement[] elements = Platform.getExtensionRegistry() |
| 57 | + .getConfigurationElementsFor("org.eclipse.ui.preferencePages"); //$NON-NLS-1$ |
| 58 | + for (IConfigurationElement element : elements) { |
| 59 | + String contributor = element.getContributor().getName(); |
| 60 | + if (contributor.startsWith(nameSpace)) { |
| 61 | + String pageId = element.getAttribute("id"); //$NON-NLS-1$ |
| 62 | + result.add(pageId); |
| 63 | + } else { |
| 64 | + String className = element.getAttribute("class"); //$NON-NLS-1$ |
| 65 | + if (className != null) { |
| 66 | + if (className.toLowerCase().contains("colorsandfontspreferencepage")) { //$NON-NLS-1$ |
| 67 | + String pageId = element.getAttribute("id"); //$NON-NLS-1$ |
| 68 | + result.add(pageId); |
| 69 | + } |
| 70 | + } |
| 71 | + } |
| 72 | + |
| 73 | + } |
| 74 | + return result.toArray(new String[0]); |
64 | 75 | }
|
65 |
| - return result.toArray(new String[0]); |
66 |
| - } |
67 | 76 | }
|
0 commit comments