Class: Xkbcommon::Context
- Inherits:
-
Object
- Object
- Xkbcommon::Context
- Defined in:
- lib/xkbcommon/context.rb
Instance Attribute Summary collapse
-
#to_native ⇒ Object
readonly
Returns the value of attribute to_native.
Class Method Summary collapse
Instance Method Summary collapse
- #default_keymap ⇒ Object
-
#initialize(flags = Libxkbcommon::XKB_CONTEXT_NO_FLAGS) ⇒ Context
constructor
A new instance of Context.
- #keymap_from_buffer(buffer, length, format: Libxkbcommon::XKB_KEYMAP_FORMAT_TEXT_V1, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) ⇒ Object
- #keymap_from_file(file, format: Libxkbcommon::XKB_KEYMAP_FORMAT_TEXT_V1, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) ⇒ Object
- #keymap_from_names(rules: nil, model: nil, layout: nil, variant: nil, options: nil, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) ⇒ Object
- #keymap_from_string(string, format: Libxkbcommon::XKB_KEYMAP_FORMAT_TEXT_V1, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) ⇒ Object
Constructor Details
#initialize(flags = Libxkbcommon::XKB_CONTEXT_NO_FLAGS) ⇒ Context
Returns a new instance of Context.
9 10 11 12 13 |
# File 'lib/xkbcommon/context.rb', line 9 def initialize(flags = Libxkbcommon::XKB_CONTEXT_NO_FLAGS) @to_native = Libxkbcommon.xkb_context_new(flags) ObjectSpace.define_finalizer(self, self.class.finalize(to_native)) end |
Instance Attribute Details
#to_native ⇒ Object (readonly)
Returns the value of attribute to_native.
15 16 17 |
# File 'lib/xkbcommon/context.rb', line 15 def to_native @to_native end |
Class Method Details
.finalize(native) ⇒ Object
4 5 6 |
# File 'lib/xkbcommon/context.rb', line 4 def finalize(native) Proc.new { Libxkbcommon.xkb_context_unref(native) } end |
Instance Method Details
#default_keymap ⇒ Object
17 18 19 |
# File 'lib/xkbcommon/context.rb', line 17 def default_keymap keymap_from_names end |
#keymap_from_buffer(buffer, length, format: Libxkbcommon::XKB_KEYMAP_FORMAT_TEXT_V1, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) ⇒ Object
45 46 47 48 49 50 |
# File 'lib/xkbcommon/context.rb', line 45 def keymap_from_buffer(buffer, length, format: Libxkbcommon::XKB_KEYMAP_FORMAT_TEXT_V1, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) Keymap.new(self, Libxkbcommon.xkb_keymap_new_from_buffer(to_native, buffer, length, format, flags)) end |
#keymap_from_file(file, format: Libxkbcommon::XKB_KEYMAP_FORMAT_TEXT_V1, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) ⇒ Object
33 34 35 36 37 |
# File 'lib/xkbcommon/context.rb', line 33 def keymap_from_file(file, format: Libxkbcommon::XKB_KEYMAP_FORMAT_TEXT_V1, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) Keymap.new(self, Libxkbcommon.xkb_keymap_new_from_file(to_native, file, format, flags)) end |
#keymap_from_names(rules: nil, model: nil, layout: nil, variant: nil, options: nil, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/xkbcommon/context.rb', line 21 def keymap_from_names(rules: nil, model: nil, layout: nil, variant: nil, options: nil, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) names = Libxkbcommon::XkbRuleNames.new names.rules = rules if rules names.model = model if model names.layout = layout if layout names.variant = variant if variant names. = if Keymap.new(self, Libxkbcommon.xkb_keymap_new_from_names(to_native, names, flags)) end |
#keymap_from_string(string, format: Libxkbcommon::XKB_KEYMAP_FORMAT_TEXT_V1, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) ⇒ Object
39 40 41 42 43 |
# File 'lib/xkbcommon/context.rb', line 39 def keymap_from_string(string, format: Libxkbcommon::XKB_KEYMAP_FORMAT_TEXT_V1, flags: Libxkbcommon::XKB_KEYMAP_COMPILE_NO_FLAGS) Keymap.new(self, Libxkbcommon.xkb_keymap_new_from_string(to_native, string, format, flags)) end |