Teman

org.eclipse.ui.themes

3.0

Den här utökningspunkten används för att anpassa utseendet på användargränssnittet. Här kan du definiera färg-, teckensnitts- och temaobjekt.Med teman kan användaren selektivt åsidosätta standardspecifikationerna för färg och teckensnitt.

<!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>

En samling åsidosättningar av teckensnitt, färg och data. En sådan samling kan användas till att ändra utseendet på arbetsmiljön. Det kan finnas flera temaelement med samma ID. På så sätt kan komponentutvecklare bidra till befintliga teman.



<!ELEMENT themeElementCategory (description)>

<!ATTLIST themeElementCategory

id       CDATA #REQUIRED

parentId CDATA #IMPLIED

class    CDATA #IMPLIED

label    CDATA #IMPLIED>

En logisk gruppering av temaelementdefinitioner. Den här kategorin kan innehålla färger och teckensnitt.



<!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) >

En symbolisk färgdefinition.



<!ELEMENT fontDefinition (fontValue* , description?)>

<!ATTLIST fontDefinition

id         CDATA #REQUIRED

label      CDATA #REQUIRED

value      CDATA #IMPLIED

categoryId CDATA #IMPLIED

defaultsTo CDATA #IMPLIED

isEditable (true | false) >

En symbolisk teckensnittsdefinition.



<!ELEMENT colorOverride (colorFactory? , colorValue*)>

<!ATTLIST colorOverride

id           CDATA #REQUIRED

value        CDATA #IMPLIED

colorFactory CDATA #IMPLIED>

Tillåtet åsidosättning av färger som definierats i colorDefinition-element. Färgerna tillämpas när temat används.



<!ELEMENT fontOverride (fontValue*)>

<!ATTLIST fontOverride

id    CDATA #REQUIRED

value CDATA #IMPLIED>

Tillåter åsidosättning av färger som definierats i fontDefinition-element.Dessa teckensnitt tillämpas när temat används.



<!ELEMENT description (#PCDATA)>

En kort beskrivning av hur elementen används.



<!ELEMENT colorFactory (parameter*)>

<!ATTLIST colorFactory

class  CDATA #REQUIRED

plugin CDATA #IMPLIED>

Elementversionen för attributet colorFactory. Används när colorFactory implementerar org.eclipse.core.runtime.IExecutableExtension och det finns parametriserade data som du vill använda i initieringen.



<!ELEMENT parameter EMPTY>

<!ATTLIST parameter

name  CDATA #REQUIRED

value CDATA #REQUIRED>

Ett parameterelement som används med colorFactory-elementet. Överförs som initieringsdata till klassen colorFactory.



<!ELEMENT data EMPTY>

<!ATTLIST data

name  CDATA #REQUIRED

value CDATA #REQUIRED>

Ett element som gör att godtyckliga data kan associeras till standardtemat eller något annat tema. Dessa data kan utgöras av övertoningsinformation, procentandelar, etiketter, författarinformation osv.

Elementet fungerar på ungefär samma sätt som definitioner och åsidosättningar. Om det finns en nyckel i både standardtemat och i ett identifierat tema, används värdet för det identifierade temat när temat accessas. Om det identifierade temat inte tillhandahåller något värde används standardvärdet.



<!ELEMENT colorValue (colorFactory?)>

<!ATTLIST colorValue

os           CDATA #IMPLIED

ws           CDATA #IMPLIED

value        CDATA #IMPLIED

colorFactory CDATA #IMPLIED>

Med det här elementet kan du ange färgvärden baserat på plattform.



<!ELEMENT fontValue EMPTY>

<!ATTLIST fontValue

os    CDATA #IMPLIED

ws    CDATA #IMPLIED

value CDATA #REQUIRED>

Med det här elementet kan du ange teckensnittsvärden baserat på plattform.



<!ELEMENT categoryPresentationBinding EMPTY>

<!ATTLIST categoryPresentationBinding

categoryId     CDATA #REQUIRED

presentationId CDATA #REQUIRED>

Med hjälp av det här elementet kan du binda en kategori till en specifik presentation på det sätt som beskrivs i utökningspunkten org.eclipse.ui.presentationFactory. En kategori (och dess underordnade) som har en presentationsbindning kan endast konfigureras av användaren om den är bunden till den aktiva presentationen. Det här är användbart om du vill ta bort objekt som inte används.



Här följer ett exempel på flera färg- och teckensnittdefinitioner samt ett tema som åsidosätter dem.

   

<extension point=

"org.eclipse.ui.themes"

>

<themeElementCategory id=

"com.xyz.ThemeCategory"

class=

"com.xyz.XYZPreview"

label=

"XYZ Elements"

/>

<colorDefinition id=

"com.xyz.Forground"

categoryId=

"com.xyz.ThemeCategory"

label=

"XYZ Foreground Color"

value=

"COLOR_BLACK"

>

<!-- white should be used on GTK -->

<colorValue value=

"COLOR_WHITE"

os=

"linux"

ws=

"gtk"

/>

<description>

Den här färgen används som förgrundsfärg i redigeraren för XYZ-insticksprogrammet.

</description>

</colorDefinition>

<colorDefinition id=

"com.xyz.Background"

categoryId=

"com.xyz.ThemeCategory"

label=

"XYZ Background Color"

>

<colorFactory class=

"org.eclipse.ui.themes.RGBBlendColorFactory"

plugin=

"org.eclipse.ui"

>

<parameter name=

"color1"

value=

"COLOR_WHITE"

/>

<parameter name=

"color2"

value=

"COLOR_BLUE"

/>

</colorFactory>

<!-- black should be used on GTK -->

<colorValue value=

"COLOR_BLACK"

os=

"linux"

ws=

"gtk"

/>

<description>

This color is used for the background color of the XYZ plugin editor.

</description>

</colorDefinition>

<fontDefinition id=

"com.xyz.TextFont"

categoryId=

"com.xyz.ThemeCategory"

label=

"XYZ Editor Font"

defaultsTo=

"org.eclipse.jface.textfont"

>

<description>

This font is used by the XYY plugin editor.

</description>

</fontDefinition>

<data name=

"com.xyz.EditorMarginWidth"

value=

"5"

/>

<theme id=

"com.xyz.HarshTheme"

label=

"Harsh Colors for 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() tillhandahåller en förekomst av org.eclipse.ui.themes.IThemeManager som kan användas till att hämta ett namngivet tema (efter ID, inklusive standardtemat med ID:t IThemeManager.DEFAULT_THEME) eller det aktuella temat. Från ett org.eclipse.ui.themes.ITheme kan du hämta org.eclipse.jface.resources.ColorRegistry, org.eclipse.jface.resources.FontRegistry och de godtyckliga data som är associerade till ett tema.

I arbetsmiljön tillhandahålls teckensnittsdefinitioner för text, dialogruta, banderoll, rubriker och underrubriker. Här finns även färgdefinitioner för hyperlänkar, den aktiva hyperlänken, fel, den aktiva delen (bakgrundstoningar och förgrund) och den inaktiva delen (bakgrundstoningar och förgrund). Arbetsmiljön tillhandahåller även datakonstanter för rubrikens toningsprocentsatser (aktiva och inaktiva) och toningsriktningar (aktiva och inaktiva). Arbetsmiljön tillhandahåller inga namngivna teman.