<!ELEMENT extension (theme* , colorDefinition* , fontDefinition* , themeElementCategory* , data* , categoryPresentationBinding*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT theme (colorOverride* , fontOverride* , description? , data*)>
<!ATTLIST theme
id CDATA #REQUIRED
name CDATA #IMPLIED>
Kolekcja przesłonięć czcionki, koloru i danych. Za pomocą takiej kolekcji można zmieniać wygląd środowiska roboczego.Wiele elementów kompozycji może mieć taki sam identyfikator. Umożliwia to autorom komponentu wnoszenie nowych elementów do istniejących kompozycji.
<!ELEMENT themeElementCategory (description)>
<!ATTLIST themeElementCategory
id CDATA #REQUIRED
parentId CDATA #IMPLIED
class CDATA #IMPLIED
label CDATA #IMPLIED>
Logiczna grupa definicji elementów kompozycji. Kategoria ta może obejmować kolory i czcionki.
org.eclipse.ui.themes.IThemePreview.<!ELEMENT colorDefinition (colorFactory? , colorValue* , description?)>
<!ATTLIST colorDefinition
id CDATA #IMPLIED
label CDATA #REQUIRED
defaultsTo CDATA #IMPLIED
value CDATA #IMPLIED
categoryId CDATA #IMPLIED
colorFactory CDATA #IMPLIED
isEditable (true | false) >
Symboliczna definicja koloru.
defaultsTo,
value lub colorFactory.defaultsTo,
value lub colorFactory. Jeśli podano atrybut
value, dodatkowe definicje wartości dla konkretnej
platformy/systemu okienkowego można określać przy użyciu elementu
colorValue.themeElementCategory, do której należy dany kolor.org.eclipse.ui.themes.IColorFactory. Tego argumentu można użyć
zamiast argumentu value, aby podać domyślną wartość koloru. Ten argument
należy stosować z rozwagą, ponieważ jego użycie powoduje aktywowanie modułu dodatkowego
w czasie uruchamiania środowiska roboczego.false element
dodatkowy nie jest pokazywany użytkownikowi.<!ELEMENT fontDefinition (fontValue* , description?)>
<!ATTLIST fontDefinition
id CDATA #REQUIRED
label CDATA #REQUIRED
value CDATA #IMPLIED
categoryId CDATA #IMPLIED
defaultsTo CDATA #IMPLIED
isEditable (true | false) >
Symboliczna definicja czcionki.
wartość czcionki. Ma ona postać
nazwa czcionki-styl-wysokość, gdzie nazwa czcionki
oznacza nazwę czcionki, styl oznacza styl czcionki (jeden z spośród:
regular dla stylu zwykłego, bold dla
pogrubienia, italic dla kursywy lub bold italic
dla pogrubionej kursywy), a wysokość jest liczbą całkowitą oznaczającą wysokość czcionki.
Przykład: Times New Roman-bold-36.
Można użyć tylko atrybutu value lub defaultsTo
albo żadnego z nich.
value, dodatkowe definicje wartości dla konkretnej
platformy/systemu okienkowego można określać przy użyciu elementu
fontValue.themeElementCategory, do której należy czcionka.
Można użyć tylko atrybutu value lub defaultsTo
albo żadnego z nich.
false element
dodatkowy nie jest pokazywany użytkownikowi.<!ELEMENT colorOverride (colorFactory? , colorValue*)>
<!ATTLIST colorOverride
id CDATA #REQUIRED
value CDATA #IMPLIED
colorFactory CDATA #IMPLIED>
Umożliwia przesłanianie kolorów zdefiniowanych w elementach
colorDefinition. Kolory te będą stosowane, gdy używana jest dana
kompozycja.
colorDefinition, w których argument isEditable ma
wartość false.value lub
colorFactory. W odróżnieniu od elementu
colorDefinition w przypadku przesłonięcia nie można podać argumentu
defaultsTo.org.eclipse.ui.themes.IColorFactory. Tego argumentu można użyć
zamiast argumentu value, aby podać domyślną wartość koloru. Ten argument
należy stosować z rozwagą, ponieważ jego użycie powoduje aktywowanie modułu dodatkowego
w czasie uruchamiania środowiska roboczego.<!ELEMENT fontOverride (fontValue*)>
<!ATTLIST fontOverride
id CDATA #REQUIRED
value CDATA #REQUIRED>
Umożliwia przesłanianie czcionek zdefiniowanych w elementach
fontsDefinition. Czcionki te będą stosowane, gdy używana jest dana
kompozycja.
fontDefinition, w których argument isEditable ma
wartość false.przesłaniająca wartość czcionki. Ma ona postać
nazwa czcionki-styl-wysokość, gdzie nazwa czcionki
oznacza nazwę czcionki, styl oznacza styl czcionki (jeden z spośród:
regular dla stylu zwykłego, bold dla
pogrubienia, italic dla kursywy lub bold italic
dla pogrubionej kursywy), a wysokość jest liczbą całkowitą oznaczającą wysokość czcionki.
Przykład: Times New Roman-bold-36.
value jest obowiązkowym argumentem przy przesłanianiu czcionki.
W odróżnieniu od elementu fontDefinition w przypadku elementu fontOverride nie można podać argumentu defaultsTo.
<!ELEMENT description (#PCDATA)>
Krótki opis zastosowania elementu.
<!ELEMENT colorFactory (parameter*)>
<!ATTLIST colorFactory
class CDATA #REQUIRED
plugin CDATA #IMPLIED>
Element będący wersją atrybutu colorFactory. Używa się go, gdy
atrybut colorFactory implementuje interfejs
org.eclipse.core.runtime.IExecutableExtension i istnieją
sparametryzowane dane, które mają być użyte podczas jego inicjowania.
org.eclipse.ui.themes.IColorFactory. Może ona także implementować
interfejs org.eclipse.core.runtime.IExecutableExtension.<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED>
Element parameter przeznaczony do używania razem z elementem colorFactory. Zostanie on przekazany jako dane inicjowania do klasy colorFactory.
<!ELEMENT data EMPTY>
<!ATTLIST data
name CDATA #REQUIRED
value CDATA #REQUIRED>
Element umożliwiający powiązanie dowolnych danych z wybraną kompozycją lub kompozycją domyślną. Dane te mogą obejmować kierunki lub procenty gradientów, etykiety, informacje o autorze itp.
Działanie tego elementu jest podobne do działania definicji i przesłonięć. Jeśli dany klucz występuje w kompozycji domyślnej i kompozycji określonej identyfikatorem, to po uzyskaniu dostępu do kompozycji określonej identyfikatorem zostanie użyta występująca w niej wartość. Jeśli w kompozycji z identyfikatorem nie ma podanej wartości, używana jest wartość domyślna.
<!ELEMENT colorValue (colorFactory?)>
<!ATTLIST colorValue
os CDATA #IMPLIED
ws CDATA #IMPLIED
value CDATA #IMPLIED
colorFactory CDATA #IMPLIED>
Ten element umożliwia określenie wartości koloru w zależności od platformy.
value lub
colorFactory. org.eclipse.ui.themes.IColorFactory. Tego argumentu można użyć
zamiast argumentu value, aby podać wartość koloru. Ten argument
należy stosować z rozwagą, ponieważ jego użycie powoduje aktywowanie modułu dodatkowego
w czasie uruchamiania środowiska roboczego.<!ELEMENT fontValue EMPTY>
<!ATTLIST fontValue
os CDATA #IMPLIED
ws CDATA #IMPLIED
value CDATA #REQUIRED>
Ten element umożliwia określenie wartości czcionki w zależności od platformy.
wartość czcionki. Ma ona postać
nazwa czcionki-styl-wysokość, gdzie nazwa czcionki
oznacza nazwę czcionki, styl oznacza styl czcionki (jeden z spośród:
regular dla stylu zwykłego, bold dla
pogrubienia, italic dla kursywy lub bold italic
dla pogrubionej kursywy), a wysokość jest liczbą całkowitą oznaczającą wysokość czcionki.
Przykład: Times New Roman-bold-36.
<!ELEMENT categoryPresentationBinding EMPTY>
<!ATTLIST categoryPresentationBinding
categoryId CDATA #REQUIRED
presentationId CDATA #REQUIRED>
Ten element umożliwia powiązanie kategorii z konkretną prezentacją opisaną
przez punkt rozszerzenia org.eclipse.ui.presentationFactory. Jeśli
kategoria jest powiązana z prezentacjami, to użytkownik może
konfigurować tę kategorię (i jej elementy potomne) tylko wtedy, gdy jest
powiązana z aktywną prezentacją. Jest to przydatne w przypadku usuwania nieużywanych
elementów, które nie powinny niepotrzebnie zwracać uwagi użytkownika.
<extension point=
"org.eclipse.ui.themes"
>
<themeElementCategory id=
"com.xyz.ThemeCategory"
class=
"com.xyz.XYZPreview"
label=
"Elementy XYZ"
/>
<colorDefinition id=
"com.xyz.Forground"
categoryId=
"com.xyz.ThemeCategory"
label=
"Kolor pierwszego planu XYZ"
value=
"COLOR_BLACK"
>
<!-- w przypadku systemu GTK należy użyć koloru białego -->
<colorValue value=
"COLOR_WHITE"
os=
"linux"
ws=
"gtk"
/>
<description>
Ten kolor jest używany w przypadku pierwszego planu edytora modułu dodatkowego XYZ.</description>
</colorDefinition>
<colorDefinition id=
"com.xyz.Background"
categoryId=
"com.xyz.ThemeCategory"
label=
"Kolor tła XYZ"
>
<colorFactory class=
"org.eclipse.ui.themes.RGBBlendColorFactory"
plugin=
"org.eclipse.ui"
>
<parameter name=
"color1"
value=
"COLOR_WHITE"
/>
<parameter name=
"color2"
value=
"COLOR_BLUE"
/>
</colorFactory>
<!-- w przypadku systemu GTK należy użyć koloru czarnego -->
<colorValue value=
"COLOR_BLACK"
os=
"linux"
ws=
"gtk"
/>
<description>
Ten kolor jest używany w przypadku tła edytora modułu dodatkowego XYZ.</description>
</colorDefinition>
<fontDefinition id=
"com.xyz.TextFont"
categoryId=
"com.xyz.ThemeCategory"
label=
"Czcionka edytora XYZ"
defaultsTo=
"org.eclipse.jface.textfont"
>
<description>
Ta czcionka jest używana w edytorze modułu dodatkowego XYZ.</description>
</fontDefinition>
<data name=
"com.xyz.EditorMarginWidth"
value=
"5"
/>
<theme id=
"com.xyz.HarshTheme"
label=
"Ostre kolory XYZ"
>
<colorOverride id=
"com.xyz.Forground"
value=
"COLOR_CYAN"
/>
<colorOverride id=
"com.xyz.Background"
value=
"COLOR_MAGENTA"
/>
<data name=
"com.xyz.EditorMarginWidth"
value=
"1"
/>
</theme>
</extension>
org.eclipse.ui.IWorkbench.getThemeManager() udostępnia instancję
interfejsu org.eclipse.ui.themes.IThemeManager, za pomocą którego
można uzyskać kompozycję o określonej nazwie (według identyfikatora, co
odnosi się także do kompozycji domyślnej, która ma identyfikator
IThemeManager.DEFAULT_THEME) lub kompozycję bieżącą. Z interfejsu
org.eclipse.ui.themes.ITheme można uzyskać rejestr
org.eclipse.jface.resources.ColorRegistry, rejestr
org.eclipse.jface.resources.FontRegistry oraz dowolne dane
powiązane z kompozycją.
Copyright (c) 2003, 2005 IBM Corporation i inne podmioty.
Wszelkie prawa zastrzeżone. Program ten oraz towarzyszące mu materiały są udostępniane na warunkach
licencji EPL (Eclipse Public License), wersja 1.0, dołączonej do nich i
dostępnej pod adresem http://www.eclipse.org/legal/epl-v10.html.