Το σημείο επέκτασης org.eclipse.ui.activities
χρησιμοποιείται για τη δήλωση δεσμών και σχημάτων. Τα σχήματα είναι σύνολα ενός ή περισσότερων δεσμών. Ένας δεσμός είναι η αντιστοίχιση μεταξύ μιας ορισμένης ομάδας συνθηκών, μερικών δεδομένων εισόδου από το χρήστη και μιας ενεργοποιημένης εντολής.
Όλοι οι δεσμοί απαιτούν κάποιου είδους ενεργοποίηση, ένα περιβάλλον στο οποίο είναι ενεργοί και ένα σχήμα εντός του οποίου υπάρχουν. Εάν δεν είστε σίγουροι πιο περιβάλλον να διαλέξετε, τότε αφήστε το κενό. Θα ρυθμιστεί στην προεπιλογή "org.eclipse.ui.contexts.window"
. Αυτό το περιβάλλον εννοεί ότι ο δεσμός θα εφαρμοστεί σε κάθε κεντρικό παράθυρο του Eclipse. Όταν το περιβάλλον καταστεί ενεργό, θα ενεργοποιηθεί και ο δεσμός. Οι δεσμοί από θυγατρικά περιβάλλοντα θα αντικαταστήσουν δεσμούς από γονικά. Για περισσότερες πληροφορίες σχετικά με περιβάλλοντα, δείτε το σημείο επέκτασης org.eclipse.ui.contexts
.
Εάν ένας δεσμός δεν ορίζει μια ταυτότητα εντολής, τότε είναι δείκτης διαγραφής. Αυτό σημαίνει ότι εάν πληρούνται όλες οι συνθήκες, θα ακυρώσει κάθε δεσμό με την ίδια ενεργοποίηση στο ίδιο περιβάλλον. Αυτός ο μηχανισμός μπορεί να χρησιμοποιηθεί, για παράδειγμα, για την αλλαγή δεσμού σε μια συγκεκριμένη πλατφόρμα.
Ένα είδος δεσμού είναι ο δεσμός key
(δηλαδή, μια συντόμευση πληκτρολογίου). Για παράδειγμα, ο δεσμός Ctrl+C
με Copy
θεωρείται ένας δεσμός key
. Η ενεργοποίηση για δεσμό πλήκτρων είναι μια ακολουθία από πατήματα πλήκτρων.
Το σχήμα είναι μια ομάδα τέτοιων δεσμών σε ένα σύνολο που ο τελικός χρήστης μπορεί να επιλέξει. Για παράδειγμα, ένας χρήστης μπορεί να θέλει να χρησιμοποιήσει το προεπιλεγμένο σχήμα, αλλά ίσως να θέλει επίσης ένα σχήμα σε στυλ Emacs ή Brief.
<!ELEMENT extension (scheme* , key*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT scheme EMPTY>
<!ATTLIST scheme
id CDATA #REQUIRED
name CDATA #REQUIRED
description CDATA #IMPLIED
parentId CDATA #IMPLIED>
Το σχήμα είναι μια ομαδοποίηση δεσμών που ο τελικός χρήστης μπορεί να επιλέξει να χρησιμοποιήσει.
Είναι δυνατή η μεταβίβαση δεσμών σε σχήματα από ένα γονικό σχήμα. Αυτό έχει σκοπό να διευκολύνει τους προγραμματιστές πρόσθετων λειτουργιών στη δημιουργία προσαρμοσμένων συνόλων δεσμών. Ένας ενεργός δεσμός που έχει οριστεί σε θυγατρικό σχήμα θα αντικαθιστά πάντα έναν ενεργό δεσμό σε γονικό σχήμα, εάν έχουν την ίδια ενεργοποίηση. Αυτή η τεχνική χρησιμοποιείται για την παροχή του σχήματος Emacs στον πάγκο εργασίας.
<!ATTLIST key
sequence CDATA #REQUIRED
schemeId CDATA #REQUIRED
contextId CDATA "org.eclipse.ui.contexts.window"
commandId CDATA #IMPLIED
platform CDATA #IMPLIED
locale CDATA #IMPLIED>
Δεσμός μεταξύ δεδομένων εισόδου πληκτρολογίου και ενεργοποίησης μιας εντολής.
Η σειρά πληκτρολόγησης για το δεσμό αυτό. Αυτή η ακολουθία πλήκτρων πρέπει να αποτελείται από ένα ή περισσότερα πατήματα πλήκτρων. Τα πατήματα πλήκτρων χωρίζονται με κενά. Τα πατήματα πλήκτρων αποτελούνται από ένα ή περισσότερα πλήκτρα πατημένα ταυτόχρονα. Θα πρέπει να υπάρχουν μηδέν ή περισσότερα πλήκτρα-τροποποιητές και ένα άλλο πλήκτρο. Τα πλήκτρα χωρίζονται με το χαρακτήρα +
.
Τα αναγνωρισμένα πλήκτρα-τροποποιητές είναι M1
, M2
, M3
, M4
, ALT
, COMMAND
, CTRL
και SHIFT
. Τα πλήκτρα-τροποποιητές "M" είναι ένας τρόπος, ανεξάρτητος από πλατφόρμα, για την αναπαράσταση πλήκτρων και συνήθως προτιμώνται. Το M1
είναι το πλήκτρο COMMAND
στο MacOS X και το πλήκτρο CTRL
στις περισσότερες άλλες πλατφόρμες. Το M2
είναι το πλήκτρο SHIFT
. Το M3
είναι το πλήκτρο Option
στο MacOS X και το πλήκτρο ALT
στις περισσότερες άλλες πλατφόρμες. Το M4
είναι το πλήκτρο CTRL
στο MacOS X και ακαθόριστο σε άλλες πλατφόρμες.
Γενικά, το πραγματικό πλήκτρο προσδιορίζεται απλά ως χαρακτήρας ASCII, με κεφαλαία. Παραδείγματα τέτοιων πλήκτρων είναι το F
ή ,
. Ωστόσο, υπάρχουν μερικά ειδικά πλήκτρα, τα οποία δεν έχουν εκτυπώσιμη αναπαράσταση ASCII. Ακολουθεί μια λίστα των τρεχόντων ειδικών πλήκτρων: ARROW_DOWN
, ARROW_LEFT
, ARROW_RIGHT
, ARROW_UP
, BREAK
, BS
, CAPS_LOCK
, CR
, DEL
, END
, ESC
, F1
, F2
, F3
, F4
, F5
, F6
, F7
, F8
, F9
, F10
, F11
, F12
, F13
, F14
, F15
, FF
, HOME
, INSERT
, LF
, NUL
, NUM_LOCK
, NUMPAD_0
, NUMPAD_1
, NUMPAD_2
, NUMPAD_3
, NUMPAD_4
, NUMPAD_5
, NUMPAD_6
, NUMPAD_7
, NUMPAD_8
, NUMPAD_9
, NUMPAD_ADD
, NUMPAD_DECIMAL
, NUMPAD_DIVIDE
, NUMPAD_ENTER
, NUMPAD_EQUAL
, NUMPAD_MULTIPLY
, NUMPAD_SUBTRACT
, PAGE_UP
, PAGE_DOWN
, PAUSE
, PRINT_SCREEN
, SCROLL_LOCK
, SPACE
, TAB
και VT
.
Καταλαβαίνουμε επίσης κάποια εναλλακτικά ονόματα για κάποια κοινά ειδικά πλήκτρα. Για παράδειγμα, αποδεχόμαστε το ESC
αλλά και το ESCAPE
, και CR
, ENTER
και RETURN
είναι όλα το ίδιο.
Συνιστάται επίσης ιδιαίτερα να διατηρείτε μικρές σειρές πληκτρολόγησης . Θα χρειαστείτε μία με δύο το μέγιστο. Χρησιμοποιήστε περιβάλλοντα για να δώσετε στις σειρές πληκτρολόγησης διαφορετικές σημασίες σε διαφορετικά τμήματα της εφαρμογής σας. Σε κάθε περίπτωση, δεν πρέπει να χρησιμοποιείτε σειρά πληκτρολόγησης που περιέχει περισσότερα από τέσσερα πλήκτρα.
org.eclipse.ui.contexts
. Εάν δεν προσδιορίζεται, τότε ρυθμίζεται ως προεπιλογή στη org.eclipse.ui.contexts.window
.Η ταυτότητα της εντολής που θα πρέπει να εκτελεστεί όταν ενεργοποιηθεί ο δεσμός.
Εάν δεν προσδιοριστεί ταυτότητα εντολής, τότε είναι δείκτης διαγραφής. Αυτό σημαίνει ότι κάθε δεσμός στο ίδιο περιβάλλον με την ίδια ακολουθία, πλατφόρμα και τοπική ρύθμιση θα καταστεί ανενεργός όταν καταστεί ενεργός αυτός ο δεσμός. Εάν δεν προσδιορίζεται η πλατφόρμα ή η τοπική ρύθμιση σε μια διαγραφή, τότε ταιριάζει με κάθε πλατφόρμα ή τοπική ρύθμιση.
SWT.getPlatform()
. Για παράδειγμα, οι παρακάτω σειρές χαρακτήρων θεωρούνται έγκυρες: win32
, gtk
, motif
, carbon
και photon
.Locale.toString()
. Για παράδειγμα, γίνονται κατανοητές τόσο η "en"
όσο και η "en_CA"
.<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
id CDATA #IMPLIED
value CDATA #IMPLIED>
Όνομα και τιμή παραμέτρου που πρέπει να μεταβιβαστούν στην εντολή κατά την εκτέλεσή της. Αυτό επιτρέπει τον προσδιορισμό της εντολής με κάποιο τρόπο. Για παράδειγμα, μια εντολή "Εμφάνιση προβολής" μπορεί να αποδεχτεί την ταυτότητα προβολής ως παράμετρο.
<extension point=
"org.eclipse.ui.bindings"
>
<key sequence=
"M2+F5"
commandId=
"commandId"
schemeId=
"default"
contextId=
"windows"
/>
<scheme name=
"Default"
description=
"Default shortcuts for Eclipse"
id=
"default"
/>
</extension>
Δεν υπάρχει δημόσιο API για τον ορισμό δεσμών. Για την επίτευξη σταθερότητας για το χρήστη, οι δεσμοί ορίζονται μόνο μέσω σημείων επέκτασης. Εάν είστε μια εφαρμογή RCP, πρέπει να μπορείτε να αντικαταστήσετε αυτή τη συμπεριφορά στο WorkbenchAdvisor
.
Για να λειτουργήσουν οι δεσμοί, πρέπει να έχετε ορίσει μια εντολή. Για να λειτουργήσει ο δεσμός, η εντολή πρέπει να έχει ενεργή μια ρουτίνα χειρισμού. Οι ρουτίνες χειρισμού μπορούν να καταχωρηθούν με προγραμματισμό. Δείτε το σημείο επέκτασης org.eclipse.ui.handlers.
Copyright (c) 2005 IBM Corporation και άλλων.
Με την επιφύλαξη παντός δικαιώματος. Αυτό το πρόγραμμα και τα
συνοδευτικά του υλικά διατίθενται βάσει των όρων της κοινής άδειας
χρήσης Eclipse Public License v1.0 που συνοδεύει αυτή τη διανομή και
διατίθεται στην ακόλουθη διεύθυνση:
http://www.eclipse.org/legal/epl-v10.html.