summaryrefslogtreecommitdiff
path: root/libcaribou/key-model.vala
diff options
context:
space:
mode:
authorEitan Isaacson <eitan@monotonous.org>2011-05-28 12:52:20 -0700
committerEitan Isaacson <eitan@monotonous.org>2011-05-28 12:52:20 -0700
commit458fb0f30376fa795828bdbf550730057a3c1e24 (patch)
tree8ac67b1f912bf0e8f9bdebc3ce34a8f03ec88a68 /libcaribou/key-model.vala
parentc0b23433f89b91bb08c5d6da65a26b32ff739baa (diff)
downloadcaribou-458fb0f30376fa795828bdbf550730057a3c1e24.tar.gz
Add Column model. Use Gee collections (I give up).
Diffstat (limited to 'libcaribou/key-model.vala')
-rw-r--r--libcaribou/key-model.vala13
1 files changed, 7 insertions, 6 deletions
diff --git a/libcaribou/key-model.vala b/libcaribou/key-model.vala
index 90f3625..a4d437f 100644
--- a/libcaribou/key-model.vala
+++ b/libcaribou/key-model.vala
@@ -12,7 +12,7 @@ namespace Caribou {
private uint hold_tid;
private XAdapter xadapter;
- private List<KeyModel> _extended_keys;
+ private Gee.ArrayList<KeyModel> extended_keys;
public signal void key_pressed ();
public signal void key_released ();
@@ -24,12 +24,13 @@ namespace Caribou {
this.name = name;
xadapter = XAdapter.get_default();
keyval = Gdk.keyval_from_name (name);
+ extended_keys = new Gee.ArrayList<KeyModel> ();
}
- public void add_subkey (string name) {
+ internal void add_subkey (string name) {
KeyModel key = new KeyModel (name);
key.key_clicked.connect(on_subkey_clicked);
- _extended_keys.append (key);
+ extended_keys.add (key);
}
private void on_subkey_clicked () {
@@ -58,14 +59,14 @@ namespace Caribou {
private bool on_key_held () {
hold_tid = 0;
- if (_extended_keys.length () != 0)
+ if (extended_keys.size != 0)
show_subkeys = true;
key_hold ();
return false;
}
- public unowned List<KeyModel> get_extended_keys () {
- return _extended_keys;
+ public KeyModel[] get_extended_keys () {
+ return (KeyModel[]) extended_keys.to_array ();
}
}
} \ No newline at end of file