gtk2keypress 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- checksums.yaml.gz.sig +5 -0
- data/lib/gtk2keypress.rb +73 -0
- data.tar.gz.sig +0 -0
- metadata +67 -0
- metadata.gz.sig +0 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 447906817ead22f8fe9b85d64774153e7274c6ff
|
4
|
+
data.tar.gz: bb370730860f3c445fe1b7ffe88044b57fa7de94
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 74460e3d840b65fbb81c3229170c3b31b3923d7a9937de22605e9fc7f1859732e41bd352c07ac6d699df4ce7e7d19404fe65c691e60f7839927abf26ec4f87b1
|
7
|
+
data.tar.gz: b2f44490f3a43151ca1e6476af7c9c20a12ce2c4a07e9dd944dc164fcb353bc4086da947fc006ba978f69a0f89a0c42098c108caf040518be7367a2b817f6d36
|
checksums.yaml.gz.sig
ADDED
data/lib/gtk2keypress.rb
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# file: gtk2keypress.rb
|
4
|
+
|
5
|
+
# description: Use within a Ruby GTK2 application for triggering on_keypress,
|
6
|
+
# on_keydown, and on_keyup events.
|
7
|
+
|
8
|
+
|
9
|
+
class Gtk2KeyPress
|
10
|
+
|
11
|
+
def initialize(parent)
|
12
|
+
|
13
|
+
parent.add_events(Gdk::Event::KEY_PRESS)
|
14
|
+
last_keydown, last_keyup = '', ''
|
15
|
+
|
16
|
+
parent.signal_connect("key-press-event") do |w, e|
|
17
|
+
|
18
|
+
last_keyup = ''
|
19
|
+
|
20
|
+
if last_keydown != e.keyval then
|
21
|
+
|
22
|
+
def e.val()
|
23
|
+
self.keyval
|
24
|
+
end
|
25
|
+
|
26
|
+
def e.name()
|
27
|
+
Gdk::Keyval.to_name(self.keyval)
|
28
|
+
end
|
29
|
+
|
30
|
+
on_keypress(e)
|
31
|
+
on_keydown(e)
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
last_keydown = e.keyval
|
36
|
+
end
|
37
|
+
|
38
|
+
|
39
|
+
parent.signal_connect("key-release-event") do |w, e|
|
40
|
+
|
41
|
+
last_keydown = ''
|
42
|
+
|
43
|
+
if e.keyval != last_keyup and e.keyval != last_keydown then
|
44
|
+
|
45
|
+
def e.val()
|
46
|
+
self.keyval
|
47
|
+
end
|
48
|
+
|
49
|
+
def e.name()
|
50
|
+
Gdk::Keyval.to_name(self.keyval)
|
51
|
+
end
|
52
|
+
|
53
|
+
on_keyup(e)
|
54
|
+
end
|
55
|
+
|
56
|
+
last_keyup = e.keyval
|
57
|
+
|
58
|
+
end
|
59
|
+
|
60
|
+
end
|
61
|
+
|
62
|
+
private
|
63
|
+
|
64
|
+
def on_keypress(e)
|
65
|
+
end
|
66
|
+
|
67
|
+
def on_keydown(e)
|
68
|
+
end
|
69
|
+
|
70
|
+
def on_keyup(e)
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
data.tar.gz.sig
ADDED
Binary file
|
metadata
ADDED
@@ -0,0 +1,67 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: gtk2keypress
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- James Robertson
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain:
|
11
|
+
- |
|
12
|
+
-----BEGIN CERTIFICATE-----
|
13
|
+
MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
|
14
|
+
YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
|
15
|
+
8ixkARkWAmV1MB4XDTE2MDIwNDEyNDAxMFoXDTE3MDIwMzEyNDAxMFowSDESMBAG
|
16
|
+
A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
|
17
|
+
EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
|
18
|
+
ggEBAMdIwoXd20DRhgNLTdFdyLi3D0tT0jkYxdXCHweX8ASnBwP+vaLAESvfeydW
|
19
|
+
a/L+SoWMvaQDp01x2zFA7mfLuf4x3T3LFYjhNAqq91K0nSsqMfXSUjkJUW/HUZxR
|
20
|
+
Wnibi0DuJEoaSEvgHsMl3ob/6Mpq8TwSCbOZjGM3Hna1qaGRNRxIUOkzjMFo/x0J
|
21
|
+
wBeX9pzwMBF2UdA44omwQY9h0iRN8HJOeTjWSGMghNPw0+3uT66ox3J+zucfTuVE
|
22
|
+
91gouM50PH2+rPaBFOb9nzTvYF/GTd82hwnyfSDLANWABNCrjktRGqmoNVAjKMde
|
23
|
+
V5lLCQzFQb5U5SxeyhUlB0/zzEsCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
|
24
|
+
DwQEAwIEsDAdBgNVHQ4EFgQUdzEAE0Ic79j/UmivY2s9VTWn7m4wJgYDVR0RBB8w
|
25
|
+
HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
|
26
|
+
c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEADBO0EgW6
|
27
|
+
NiYgAem66JjYj57mgDKqHqLlPgBhfKt9nZHYY9UD9iHqedXqLNWzhprsameom3X0
|
28
|
+
Wpf3KOtBKITEt7q4LLQJPxg5LJUNwDF6mKHngf99kr2FklMSa6bNVUCA1xrAcflq
|
29
|
+
T305xyO4aujb4o/Ug3C8QiBzwnGS4WXBNPlUelcRtAlDn+s2k9Zup3JH3IUpNQf+
|
30
|
+
gTyRIWWmwAGksG+sFQZMe8tAcPhDSIRVak32buzn3lc3X2dLLIK23XbVrKFYUWCq
|
31
|
+
HvNZKq1uVYuDbSNrm9tU0UvvGR7ATjShOEdR8hLOttedOiyDQUjDwe+hVEn/ngHx
|
32
|
+
OBuZY4V5zfH75A==
|
33
|
+
-----END CERTIFICATE-----
|
34
|
+
date: 2016-02-04 00:00:00.000000000 Z
|
35
|
+
dependencies: []
|
36
|
+
description:
|
37
|
+
email: james@r0bertson.co.uk
|
38
|
+
executables: []
|
39
|
+
extensions: []
|
40
|
+
extra_rdoc_files: []
|
41
|
+
files:
|
42
|
+
- lib/gtk2keypress.rb
|
43
|
+
homepage: https://github.com/jrobertson/gtk2keypress
|
44
|
+
licenses:
|
45
|
+
- MIT
|
46
|
+
metadata: {}
|
47
|
+
post_install_message:
|
48
|
+
rdoc_options: []
|
49
|
+
require_paths:
|
50
|
+
- lib
|
51
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - ">="
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '0'
|
56
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - ">="
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '0'
|
61
|
+
requirements: []
|
62
|
+
rubyforge_project:
|
63
|
+
rubygems_version: 2.4.8
|
64
|
+
signing_key:
|
65
|
+
specification_version: 4
|
66
|
+
summary: gtk2keypress
|
67
|
+
test_files: []
|
metadata.gz.sig
ADDED
Binary file
|