mouse 1.0.5 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.markdown +5 -0
- data/README.markdown +1 -0
- data/ext/mouse/mouse.c +14 -8
- data/ext/mouse/mouser.c +3 -3
- data/ext/mouse/mouser.h +3 -3
- data/lib/mouse/version.rb +1 -1
- metadata +1 -7
data/History.markdown
CHANGED
data/README.markdown
CHANGED
data/ext/mouse/mouse.c
CHANGED
@@ -9,6 +9,7 @@ static ID sel_to_point;
|
|
9
9
|
static ID sel_to_i;
|
10
10
|
static ID sel_new;
|
11
11
|
static ID unit_pixel;
|
12
|
+
static ID unit_line;
|
12
13
|
|
13
14
|
#define CURRENT_POSITION rb_mouse_wrap_point(mouse_current_position())
|
14
15
|
|
@@ -118,8 +119,6 @@ rb_mouse_drag_to(int argc, VALUE *argv, VALUE self)
|
|
118
119
|
* Returns number of lines scrolled. A positive `amount` will scroll up
|
119
120
|
* and a negative `amount` will scroll down.
|
120
121
|
*
|
121
|
-
* An invalid type of `units` will default to `:line`.
|
122
|
-
*
|
123
122
|
* @param amount [Number]
|
124
123
|
* @param units [Symbol] `:pixel` or `:line` (_default_: `:line` ) (__optional__)
|
125
124
|
* @return [Number]
|
@@ -131,19 +130,23 @@ rb_mouse_scroll(int argc, VALUE *argv, VALUE self)
|
|
131
130
|
if (argc == 0 || argc > 3)
|
132
131
|
rb_raise(rb_eArgError, "scroll requires 1..3 arguments, you gave %d", argc);
|
133
132
|
|
134
|
-
VALUE
|
135
|
-
|
133
|
+
VALUE amount = rb_funcall(argv[0], sel_to_i, 0);
|
134
|
+
int amt = NUM2INT(amount);
|
136
135
|
|
137
|
-
if (argc == 1)
|
138
|
-
mouse_scroll(
|
136
|
+
if (argc == 1) {
|
137
|
+
mouse_scroll(amt);
|
138
|
+
return amount;
|
139
|
+
}
|
139
140
|
|
140
141
|
ID units = rb_to_id(argv[1]);
|
141
142
|
|
142
143
|
if (argc == 2) {
|
143
144
|
if (units == unit_pixel)
|
144
145
|
mouse_scroll2(amt, kCGScrollEventUnitPixel);
|
145
|
-
else
|
146
|
+
else if (units == unit_line)
|
146
147
|
mouse_scroll2(amt, kCGScrollEventUnitLine);
|
148
|
+
else
|
149
|
+
rb_raise(rb_eArgError, "unknown units `%s'", rb_id2name(units));
|
147
150
|
}
|
148
151
|
|
149
152
|
if (argc == 3) {
|
@@ -151,8 +154,10 @@ rb_mouse_scroll(int argc, VALUE *argv, VALUE self)
|
|
151
154
|
|
152
155
|
if (units == unit_pixel)
|
153
156
|
mouse_scroll3(amt, kCGScrollEventUnitPixel, duration);
|
154
|
-
else
|
157
|
+
else if (units == unit_line)
|
155
158
|
mouse_scroll3(amt, kCGScrollEventUnitLine, duration);
|
159
|
+
else
|
160
|
+
rb_raise(rb_eArgError, "unknown units `%s'", rb_id2name(units));
|
156
161
|
}
|
157
162
|
|
158
163
|
return amount;
|
@@ -456,6 +461,7 @@ Init_mouse()
|
|
456
461
|
sel_new = rb_intern("new");
|
457
462
|
|
458
463
|
unit_pixel = rb_intern("pixel");
|
464
|
+
unit_line = rb_intern("line");
|
459
465
|
|
460
466
|
/*
|
461
467
|
* Document-module: Mouse
|
data/ext/mouse/mouser.c
CHANGED
@@ -148,7 +148,7 @@ mouse_drag_to(CGPoint point)
|
|
148
148
|
|
149
149
|
|
150
150
|
void
|
151
|
-
mouse_scroll3(
|
151
|
+
mouse_scroll3(int amount, CGScrollEventUnit units, double duration)
|
152
152
|
{
|
153
153
|
size_t steps = round(FPS * duration);
|
154
154
|
double current = 0.0;
|
@@ -165,13 +165,13 @@ mouse_scroll3(size_t amount, CGScrollEventUnit units, double duration)
|
|
165
165
|
}
|
166
166
|
|
167
167
|
void
|
168
|
-
mouse_scroll2(
|
168
|
+
mouse_scroll2(int amount, CGScrollEventUnit units)
|
169
169
|
{
|
170
170
|
mouse_scroll3(amount, units, DEFAULT_DURATION);
|
171
171
|
}
|
172
172
|
|
173
173
|
void
|
174
|
-
mouse_scroll(
|
174
|
+
mouse_scroll(int amount)
|
175
175
|
{
|
176
176
|
mouse_scroll2(amount, kCGScrollEventUnitLine);
|
177
177
|
}
|
data/ext/mouse/mouser.h
CHANGED
@@ -18,9 +18,9 @@ void mouse_move_to2(CGPoint point, double duration);
|
|
18
18
|
void mouse_drag_to(CGPoint point);
|
19
19
|
void mouse_drag_to2(CGPoint point, double duration);
|
20
20
|
|
21
|
-
void mouse_scroll(
|
22
|
-
void mouse_scroll2(
|
23
|
-
void mouse_scroll3(
|
21
|
+
void mouse_scroll(int amount);
|
22
|
+
void mouse_scroll2(int amount, CGScrollEventUnit units);
|
23
|
+
void mouse_scroll3(int amount, CGScrollEventUnit units, double duration);
|
24
24
|
|
25
25
|
void mouse_click_down();
|
26
26
|
void mouse_click_down2(CGPoint point);
|
data/lib/mouse/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mouse
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -98,18 +98,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
98
98
|
- - ! '>='
|
99
99
|
- !ruby/object:Gem::Version
|
100
100
|
version: '0'
|
101
|
-
segments:
|
102
|
-
- 0
|
103
|
-
hash: -2345337379390693889
|
104
101
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
105
102
|
none: false
|
106
103
|
requirements:
|
107
104
|
- - ! '>='
|
108
105
|
- !ruby/object:Gem::Version
|
109
106
|
version: '0'
|
110
|
-
segments:
|
111
|
-
- 0
|
112
|
-
hash: -2345337379390693889
|
113
107
|
requirements: []
|
114
108
|
rubyforge_project:
|
115
109
|
rubygems_version: 1.8.24
|