summaryrefslogtreecommitdiff
path: root/src/utilities/key.vala
diff options
context:
space:
mode:
authorAlessandro Ghedini <al3xbio@gmail.com>2012-01-21 19:14:06 +0100
committerAlessandro Ghedini <al3xbio@gmail.com>2012-01-21 19:19:46 +0100
commitc05883f47c498be4e11893e5178c5bc37ffd9f4a (patch)
treedbd3cd7ad3d7771405ad63af2f1e9d14d4ae5a35 /src/utilities/key.vala
parent31539042f11bc210a29e923f45586779c3ad46b2 (diff)
parent60560a030fda3c539ff9dc1563b9926414a193da (diff)
Merge commit 'upstream/0.4.0'
Diffstat (limited to 'src/utilities/key.vala')
-rw-r--r--src/utilities/key.vala26
1 files changed, 24 insertions, 2 deletions
diff --git a/src/utilities/key.vala b/src/utilities/key.vala
index 6700b16..5f27a1e 100644
--- a/src/utilities/key.vala
+++ b/src/utilities/key.vala
@@ -55,10 +55,21 @@ public class Key : GLib.Object {
private Gdk.ModifierType modifiers;
/////////////////////////////////////////////////////////////////////
+ /// C'tor, initializes all members to defaults.
+ /////////////////////////////////////////////////////////////////////
+
+ public Key() {
+ this.accelerator = "";
+ this.modifiers = 0;
+ this.key_code = 0;
+ this.label = _("Not bound");
+ }
+
+ /////////////////////////////////////////////////////////////////////
/// C'tor, initializes all members.
/////////////////////////////////////////////////////////////////////
- public Key(string stroke) {
+ public Key.from_string(string stroke) {
this.accelerator = stroke;
uint keysym;
@@ -68,6 +79,17 @@ public class Key : GLib.Object {
}
/////////////////////////////////////////////////////////////////////
+ /// C'tor, initializes all members.
+ /////////////////////////////////////////////////////////////////////
+
+ public Key.from_values(uint keysym, Gdk.ModifierType modifiers) {
+ this.accelerator = Gtk.accelerator_name(keysym, modifiers);
+ this.label = Gtk.accelerator_get_label(keysym, modifiers);
+ this.key_code = display.keysym_to_keycode(keysym);
+ this.modifiers = modifiers;
+ }
+
+ /////////////////////////////////////////////////////////////////////
/// Initializes static members.
/////////////////////////////////////////////////////////////////////
@@ -113,7 +135,7 @@ public class Key : GLib.Object {
private Gdk.ModifierType get_modifiers() {
Gdk.ModifierType modifiers;
- Gdk.Display.get_default().get_pointer(null, null, null, out modifiers);
+ Gtk.get_current_event_state(out modifiers);
return modifiers;
}