Θέματα

org.eclipse.ui.themes

3.0

Αυτό το σημείο επέκτασης χρησιμοποιείται για την προσαρμογή της εμφάνισης του περιβάλλοντος χρήστη. Επιτρέπει τον καθορισμό οντοτήτων χρωμάτων και γραμματοσειρών καθώς και οντοτήτων θεμάτων. Τα θέματα επιτρέπουν στις εφαρμογές να αντικαταστήσουν επιλεκτικά προεπιλεγμένες προδιαγραφές χρωμάτων και γραμματοσειρών για συγκεκριμένες χρήσεις.

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

Μια συλλογή αντικαταστάσεων γραμματοσειράς, χρωμάτων και δεδομένων. Μια τέτοια συλλογή μπορεί να χρησιμοποιηθεί για την αλλαγή της εμφάνισης του πάγκου εργασίας. Πολλά στοιχεία θεμάτων μπορεί να έχουν την ίδια ταυτότητα. Αυτό επιτρέπει στους συντάκτες στοιχείων να συνεισφέρουν σε υπάρχοντα θέματα.



<!ELEMENT themeElementCategory (description)>

<!ATTLIST themeElementCategory

id       CDATA #REQUIRED

parentId CDATA #IMPLIED

class    CDATA #IMPLIED

label    CDATA #IMPLIED>

Μια λογική ομαδοποίηση για τους ορισμούς στοιχείων θεμάτων. Αυτή η κατηγορία μπορεί να περιέχει χρώματα και γραμματοσειρές.



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

Ένας συμβολικός ορισμός χρώματος.



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

<!ATTLIST fontDefinition

id         CDATA #REQUIRED

label      CDATA #REQUIRED

value      CDATA #IMPLIED

categoryId CDATA #IMPLIED

defaultsTo CDATA #IMPLIED

isEditable (true | false) >

Ένας συμβολικός ορισμός γραμματοσειράς.



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

<!ATTLIST colorOverride

id           CDATA #REQUIRED

value        CDATA #IMPLIED

colorFactory CDATA #IMPLIED>

Επιτρέπει την αντικατάσταση χρωμάτων που ορίζονται σε στοιχεία colorDefinition. Αυτά τα χρώματα θα εφαρμοστούν κατά τη χρήση του θέματος.



<!ELEMENT fontOverride (fontValue*)>

<!ATTLIST fontOverride

id    CDATA #REQUIRED

value CDATA #IMPLIED>

Επιτρέπει την αντικατάσταση γραμματοσειρών που ορίζονται στα στοιχεία fontDefinition. Αυτές οι γραμματοσειρές θα εφαρμοστούν κατά τη χρήση του θέματος.



<!ELEMENT description (#PCDATA)>

Μια σύντομη περιγραφή της χρήσης των στοιχείων.



<!ELEMENT colorFactory (parameter*)>

<!ATTLIST colorFactory

class  CDATA #REQUIRED

plugin CDATA #IMPLIED>

Η εκδοχή στοιχείου του γνωρίσματος colorFactory. Χρησιμοποιείται όταν το colorFactory υλοποιεί τη διεπαφή org.eclipse.core.runtime.IExecutableExtension και υπάρχουν παραμετροποιημένα δεδομένα που επιθυμείτε να χρησιμοποιηθούν στην απόδοση αρχικών τιμών.



<!ELEMENT parameter EMPTY>

<!ATTLIST parameter

name  CDATA #REQUIRED

value CDATA #REQUIRED>

Ένα στοιχείο παραμέτρου που θα χρησιμοποιηθεί στο στοιχείο colorFactory. Αυτό θα μεταβιβαστεί ως δεδομένο απόδοσης αρχικών τιμών στην κλάση colorFactory.



<!ELEMENT data EMPTY>

<!ATTLIST data

name  CDATA #REQUIRED

value CDATA #REQUIRED>

Ένα στοιχείο που επιτρέπει σε ανομοιογενή δεδομένα να συσχετιστούν με ένα θέμα ή το προεπιλεγμένο θέμα. Αυτά τα δεδομένα μπορεί να είναι κατευθύνσεις χρωματικών διαβαθμίσεων ή ποσοστά, ετικέτες, πληροφορίες συντάκτη, κτλ.

Αυτό το στοιχείο έχει συμπεριφορά παρόμοια με αυτή των ορισμών και των αντικαταστάσεων. Αν ένα κλειδί εμφανίζεται τόσο στο προεπιλεγμένο θέμα όσο και σε ένα προσδιορισμένο θέμα, τότε θα χρησιμοποιηθεί η τιμή των προσδιορισμένων θεμάτων κατά την πρόσβαση σε αυτό το θέμα. Αν το προσδιορισμένο θέμα δεν παρέχει μια τιμή τότε χρησιμοποιείται η προεπιλογή.



<!ELEMENT colorValue (colorFactory?)>>

<!ATTLIST colorValue

os           CDATA #IMPLIED

ws           CDATA #IMPLIED

value        CDATA #IMPLIED

colorFactory CDATA #IMPLIED>

Το στοιχείο αυτό επιτρέπει τη δημιουργία προδιαγραφής μιας τιμή χρώματος για κάθε πλατφόρμα.



<!ELEMENT fontValue EMPTY>

<!ATTLIST fontValue

os    CDATA #IMPLIED

ws    CDATA #IMPLIED

value CDATA #REQUIRED>

Το στοιχείο αυτό επιτρέπει τη δημιουργία προδιαγραφής για μια τιμή γραμματοσειράς για κάθε πλατφόρμα.



<!ELEMENT categoryPresentationBinding EMPTY>

<!ATTLIST categoryPresentationBinding

categoryId     CDATA #REQUIRED

presentationId CDATA #REQUIRED>

Αυτό το στοιχείο επιτρέπει σε μια κατηγορία να συνδέεται με μια συγκεκριμένη παρουσίαση όπως περιγράφεται από το σημείο επέκτασης org.eclipse.ui.presentationFactory. Αν μια κατηγορία έχει συνδέσμους παρουσίασης τότε η ίδια (και οι θυγατρικές της) μπορεί να ρυθμιστεί μόνο απο τον χρήστη αν είναι συνδεδεμένη με την ενεργή παρουσίαση. Αυτή η δυνατότητα είναι χρήσιμη για να μην ληφθούν υπόψη από τον χρήστη στοιχεία που δεν έχουν χρησιμοποιηθεί.



Ακολουθεί ένα παράδειγμα διάφορων ορισμών χρωμάτων και γραμματοσειρών, καθώς και ένα θέμα που τα αντικαθιστά.

   

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

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

</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() παρέχει μια χρήση της διεπαφής org.eclipse.ui.themes.IThemeManager που μπορεί να χρησιμοποιηθεί για τη λήψη ενός θέματος που διαθέτει όνομα (μέσω ταυτότητας, συμπεριλαμβανομένου του προεπιλεγμένου θέματος που έχει ταυτότητα IThemeManager.DEFAULT_THEME) ή του τρέχοντος θέματος. Από μια διεπαφή org.eclipse.ui.themes.ITheme μπορεί να ληφθεί ένα org.eclipse.jface.resources.ColorRegistry, ένα org.eclipse.jface.resources.FontRegistry και τα ανομοιογενή δεδομένα που έχουν συσχετιστεί με ένα θέμα.

Ο πάγκος εργασίας παρέχει τους ορισμούς γραμματοσειρών για τις γραμματοσειρές κειμένου, πλαισίου διαλόγου, πανώ, κεφαλίδας και τίτλου τμήματος. Επίσης παρέχει ορισμούς χρωμάτων για την υπερδιασύνδεση, την ενεργή υπερδιασύνδεση, το σφάλμα, το ενεργό τμήμα (τμήματα διαβάθμισης φόντου και προσκηνίου) και το ανενεργό τμήμα (τμήματα διαβάθμισης φόντου και προσκηνίου). Ο πάγκος εργασίας παρέχει επίσης σταθερές δεδομένων για τα ποσοστά διαβάθμισης χρωματισμού τίτλου (ενεργό και ανενεργό) και τις κατευθύνσεις διαβάθμισης χρωματισμού (ενεργό και ανενεργό). Ο πάγκος εργασίας δεν παρέχει επώνυμα θέματα.