blockly > ShortcutRegistry

فئة ShortcutRegistry

فئة لسجلّ اختصارات لوحة المفاتيح من المفترض أن يكون هذا العنصر فريدًا. يجب عدم إنشاء مثيل جديد، ولا يمكنك الوصول إلى هذه الفئة إلا من ShortcutRegistry.registry.

Signature:

export declare class ShortcutRegistry 

الخصائص

الموقع مفاتيح التعديل النوع الوصف
قاعدة بيانات المسجّلين

static

readonly

ShortcutRegistry

الطُرق

الطريقة مفاتيح التعديل الوصف
addKeyMapping(keyCode, shortcutName, allowCollision)

تضيف ربطًا بين رمز مفتاح واختصار لوحة مفاتيح.

في العادة، يمكن ربط اختصار واحد فقط بأي رمز مفتاح معيّن، ولكن يؤدي ضبط allowCollisions على true إلى السماح بربط لوحة مفاتيح بالعديد من الاختصارات. في هذه الحالة، عند استدعاء onKeyDown باستخدام ضغطة المفتاح المحدّدة، ستعالج الاختصارات المُحدَّدة بترتيب عكسي، من الأكثر إلى الأقلّ استخدامًا مؤخرًا).

createSerializedKey(keyCode, modifiers) تُنشئ هذه الدالة رمز المفتاح التسلسلي الذي سيتم استخدامه في خريطة المفاتيح.
getKeyCodesByShortcutName(shortcutName) تحصل على رموز المفاتيح التسلسلية التي تم تسجيل الاختصار بالاسم المحدَّد ضمنها.
getKeyMap()‎ الحصول على خريطة المفاتيح الحالية
getRegistry() تحصل على سجلّ اختصارات لوحة المفاتيح.
getShortcutNamesByKeyCode(keyCode) تحصل على الاختصارات المسجّلة لرمز المفتاح المحدّد.
onKeyDown(workspace, e)

يعالج أحداث الضغط على المفاتيح.

- ستتم معالجة أي KeyboardShortcut تم ربطها برموز المفاتيح التي تؤدي إلى بدء الحدث e، وذلك بالترتيب من الأقل إلى الأكثر تسجيلًا مؤخرًا. - إذا كان preconditionFn للاختصار متوفّرًا، سيتم استدعاؤه. إذا كانت الدالة preconditionFn تعرِض قيمة خاطئة، سيتم تخطّي دالة callback للاختصار. ستستمر المعالجة مع الاختصار التالي، إن توفّر. - سيتم بعد ذلك استدعاء دالة callback للاختصار. إذا كانت القيمة صحيحة، ستنتهي المعالجة وستُعرِض onKeyDown القيمة صحيحة. إذا كانت القيمة التي يتم عرضها هي false، ستستمرّ المعالجة باستخدام الاختصار التالي، إن توفّر. - إذا تمت معالجة جميع الاختصارات المسجّلة لرمز المفتاح المحدّد بدون أن تُعرِض أي منها القيمة true، ستعرِض الدالة onKeyDown القيمة false.

register(shortcut, allowOverrides) لتسجيل اختصار لوحة مفاتيح
removeAllKeyMappings(shortcutName) تزيل جميع عمليات ربط المفاتيح لاختصار يحمل الاسم المحدَّد. يكون هذا الخيار مفيدًا عند تغيير عمليات ربط المفاتيح التلقائية وتكون رموز المفاتيح المسجّلة للاختصار غير معروفة.
removeKeyMapping(keyCode, shortcutName, quiet) تزيل عملية الإزالة عملية الربط بين رمز مفتاح واختصار لوحة مفاتيح.
reset()‎ امسح قاعدة بيانات المسجّلين وkeyMap وأعِد إنشائهما.
setKeyMap(newKeyMap) لضبط خريطة المفاتيح سيؤدي ضبط خريطة المفاتيح إلى إلغاء أي تعيينات مفاتيح تلقائية.
unregister(shortcutName) تؤدي هذه الدالة إلى إلغاء تسجيل اختصار لوحة مفاتيح مسجّل بالاسم المحدَّد. سيؤدي ذلك أيضًا إلى إزالة أي عمليات ربط مفاتيح تشير إلى هذا الاختصار.