ruby_motion_query 0.5.8 → 0.6.0
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.
- checksums.yaml +4 -4
- data/README.md +24 -1478
- data/motion/ext.rb +1 -1
- data/motion/ruby_motion_query/actions.rb +68 -4
- data/motion/ruby_motion_query/animations.rb +3 -0
- data/motion/ruby_motion_query/debug.rb +1 -0
- data/motion/ruby_motion_query/device.rb +8 -0
- data/motion/ruby_motion_query/grid.rb +370 -0
- data/motion/ruby_motion_query/image.rb +2 -0
- data/motion/ruby_motion_query/inspector.rb +354 -0
- data/motion/ruby_motion_query/inspector_stylesheet.rb +106 -0
- data/motion/ruby_motion_query/position.rb +39 -20
- data/motion/ruby_motion_query/rect.rb +557 -0
- data/motion/ruby_motion_query/stylers/ui_button_styler.rb +16 -3
- data/motion/ruby_motion_query/stylers/ui_view_styler.rb +71 -43
- data/motion/ruby_motion_query/stylesheet.rb +11 -0
- data/motion/ruby_motion_query/subviews.rb +2 -0
- data/motion/ruby_motion_query/tags.rb +14 -0
- data/motion/ruby_motion_query/utils.rb +8 -5
- data/motion/ruby_motion_query/version.rb +1 -1
- data/templates/view/app/views/name.rb +2 -1
- metadata +8 -4
@@ -22,61 +22,22 @@ module RubyMotionQuery
|
|
22
22
|
def view
|
23
23
|
@view
|
24
24
|
end
|
25
|
+
alias :get :view
|
25
26
|
|
26
27
|
def view_has_been_styled?
|
27
28
|
!@view.rmq_data.style_name.nil?
|
28
29
|
end
|
29
30
|
|
30
|
-
def superview
|
31
|
-
@view.superview || rmq(@view).root_view || rmq.window
|
32
|
-
end
|
33
|
-
alias :parent :superview
|
34
|
-
|
35
|
-
def super_height
|
36
|
-
@view.superview.frame.size.height
|
37
|
-
end
|
38
|
-
|
39
|
-
def super_width
|
40
|
-
@view.superview.frame.size.width
|
41
|
-
end
|
42
|
-
|
43
|
-
def tag(tags)
|
44
|
-
rmq(@view).tag(tags)
|
45
|
-
end
|
46
|
-
|
47
31
|
def frame=(value)
|
48
|
-
|
49
|
-
@view.frame = self.superview.bounds
|
50
|
-
elsif value.is_a?(Hash)
|
51
|
-
f = @view.frame
|
52
|
-
h = value
|
53
|
-
|
54
|
-
f.origin.x = h[:l] || h[:left] || f.origin.x
|
55
|
-
f.origin.y = h[:t] || h[:top] || f.origin.y
|
56
|
-
f.size.width = h[:w] || h[:width] || f.size.width
|
57
|
-
f.size.height = h[:h] || h[:height] || f.size.height
|
58
|
-
|
59
|
-
if sv = @view.superview
|
60
|
-
if fr = (h[:from_right] || h[:fr])
|
61
|
-
f.origin.x = sv.bounds.size.width - f.size.width - fr
|
62
|
-
end
|
63
|
-
|
64
|
-
if fb = (h[:from_bottom] || h[:fb])
|
65
|
-
f.origin.y = sv.bounds.size.height - f.size.height - fb
|
66
|
-
end
|
67
|
-
end
|
68
|
-
|
69
|
-
@view.frame = f
|
70
|
-
else
|
71
|
-
@view.frame = value
|
72
|
-
end
|
32
|
+
RubyMotionQuery::Rect.update_view_frame(view, value)
|
73
33
|
end
|
74
34
|
def frame
|
75
|
-
@view
|
35
|
+
RubyMotionQuery::Rect.frame_for_view(@view)
|
76
36
|
end
|
77
37
|
|
78
38
|
# Sets the frame using the Window's coordinates
|
79
39
|
def absolute_frame=(value)
|
40
|
+
# TODO change to new rect system
|
80
41
|
self.frame = value
|
81
42
|
|
82
43
|
f = @view.frame
|
@@ -86,6 +47,41 @@ module RubyMotionQuery
|
|
86
47
|
@view.frame = f
|
87
48
|
end
|
88
49
|
|
50
|
+
def prev_frame
|
51
|
+
if pv = RubyMotionQuery::Rect.previous_view
|
52
|
+
RubyMotionQuery::Rect.frame_for_view(pv)
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def prev_view
|
57
|
+
RubyMotionQuery::Rect.previous_view
|
58
|
+
end
|
59
|
+
|
60
|
+
def bounds=(value)
|
61
|
+
RubyMotionQuery::Rect.update_view_bounds(view, value)
|
62
|
+
end
|
63
|
+
def bounds
|
64
|
+
RubyMotionQuery::Rect.bounds_for_view(@view)
|
65
|
+
end
|
66
|
+
|
67
|
+
def superview
|
68
|
+
@view.superview || rmq(@view).root_view || rmq.window
|
69
|
+
end
|
70
|
+
alias :parent :superview
|
71
|
+
|
72
|
+
def super_height
|
73
|
+
@view.superview.frame.size.height
|
74
|
+
end
|
75
|
+
|
76
|
+
def super_width
|
77
|
+
@view.superview.frame.size.width
|
78
|
+
end
|
79
|
+
|
80
|
+
def tag(tags)
|
81
|
+
rmq.wrap(@view).tag(tags)
|
82
|
+
end
|
83
|
+
|
84
|
+
# @deprecated - use frame or bounds
|
89
85
|
def padded=(value)
|
90
86
|
if value.is_a?(Hash)
|
91
87
|
h = value
|
@@ -107,74 +103,102 @@ module RubyMotionQuery
|
|
107
103
|
end
|
108
104
|
end
|
109
105
|
|
106
|
+
# @deprecated - use frame or bounds
|
110
107
|
def left=(value)
|
111
108
|
f = @view.frame
|
112
109
|
f.origin.x = value
|
113
110
|
@view.frame = f
|
114
111
|
end
|
112
|
+
|
113
|
+
# @deprecated - use frame or bounds
|
115
114
|
def left
|
116
115
|
@view.origin.x
|
117
116
|
end
|
117
|
+
|
118
|
+
# @deprecated - use frame or bounds
|
118
119
|
alias :x :left
|
119
120
|
|
121
|
+
# @deprecated - use frame or bounds
|
120
122
|
def top=(value)
|
121
123
|
f = @view.frame
|
122
124
|
f.origin.y = value
|
123
125
|
@view.frame = f
|
124
126
|
end
|
127
|
+
|
128
|
+
# @deprecated - use frame or bounds
|
125
129
|
def top
|
126
130
|
@view.origin.y
|
127
131
|
end
|
132
|
+
|
133
|
+
# @deprecated - use frame or bounds
|
128
134
|
alias :y :top
|
129
135
|
|
136
|
+
# @deprecated - use frame or bounds
|
130
137
|
def width=(value)
|
131
138
|
f = @view.frame
|
132
139
|
f.size.width = value
|
133
140
|
@view.frame = f
|
134
141
|
end
|
142
|
+
|
143
|
+
# @deprecated - use frame or bounds
|
135
144
|
def width
|
136
145
|
@view.size.width
|
137
146
|
end
|
138
147
|
|
148
|
+
# @deprecated - use frame or bounds
|
139
149
|
def height=(value)
|
140
150
|
f = @view.frame
|
141
151
|
f.size.height = value
|
142
152
|
@view.frame = f
|
143
153
|
end
|
154
|
+
|
155
|
+
# @deprecated - use frame or bounds
|
144
156
|
def height
|
145
157
|
@view.size.height
|
146
158
|
end
|
147
159
|
|
160
|
+
# @deprecated - use frame or bounds
|
148
161
|
def bottom=(value)
|
149
162
|
self.top = value - self.height
|
150
163
|
end
|
164
|
+
|
165
|
+
# @deprecated - use frame or bounds
|
151
166
|
def bottom
|
152
167
|
self.top + self.height
|
153
168
|
end
|
154
169
|
|
170
|
+
# @deprecated - use frame or bounds
|
155
171
|
def from_bottom=(value)
|
156
172
|
if sv = @view.superview
|
157
173
|
self.top = sv.bounds.size.height - self.height - value
|
158
174
|
end
|
159
175
|
end
|
176
|
+
|
177
|
+
# @deprecated - use frame or bounds
|
160
178
|
def from_bottom
|
161
179
|
if sv = @view.superview
|
162
180
|
sv.bounds.size.height - self.top
|
163
181
|
end
|
164
182
|
end
|
165
183
|
|
184
|
+
# @deprecated - use frame or bounds
|
166
185
|
def right=(value)
|
167
186
|
self.left = value - self.width
|
168
187
|
end
|
188
|
+
|
189
|
+
# @deprecated - use frame or bounds
|
169
190
|
def right
|
170
191
|
self.left + self.width
|
171
192
|
end
|
172
193
|
|
194
|
+
# @deprecated - use frame or bounds
|
173
195
|
def from_right=(value)
|
174
196
|
if superview = @view.superview
|
175
197
|
self.left = superview.bounds.size.width - self.width - value
|
176
198
|
end
|
177
199
|
end
|
200
|
+
|
201
|
+
# @deprecated - use frame or bounds
|
178
202
|
def from_right
|
179
203
|
if superview = @view.superview
|
180
204
|
superview.bounds.size.width - self.left
|
@@ -206,6 +230,7 @@ module RubyMotionQuery
|
|
206
230
|
@view.center.y
|
207
231
|
end
|
208
232
|
|
233
|
+
# @deprecated - use frame or bounds
|
209
234
|
# param can be :horizontal, :vertical, :both
|
210
235
|
def centered=(option)
|
211
236
|
if parent = @view.superview
|
@@ -346,6 +371,9 @@ module RubyMotionQuery
|
|
346
371
|
@view.layer.masksToBounds
|
347
372
|
end
|
348
373
|
|
374
|
+
def accessibility_label=(value)
|
375
|
+
@view.accessibilityLabel = value
|
376
|
+
end
|
349
377
|
end
|
350
378
|
end
|
351
379
|
end
|
@@ -129,6 +129,13 @@ module RubyMotionQuery
|
|
129
129
|
attr_accessor :application_was_setup
|
130
130
|
end
|
131
131
|
|
132
|
+
def grid
|
133
|
+
@grid || RMQ.app.grid
|
134
|
+
end
|
135
|
+
def grid=(value)
|
136
|
+
@grid = value
|
137
|
+
end
|
138
|
+
|
132
139
|
# Convenience methods -------------------
|
133
140
|
def rmq(*working_selectors)
|
134
141
|
q = if @controller.nil?
|
@@ -174,10 +181,12 @@ module RubyMotionQuery
|
|
174
181
|
RMQ.app.window
|
175
182
|
end
|
176
183
|
|
184
|
+
# TODO, cache, then clear when orientation changes
|
177
185
|
def app_width
|
178
186
|
portrait? ? app_size.width : app_size.height
|
179
187
|
end
|
180
188
|
|
189
|
+
# TODO, cache, then clear when orientation changes
|
181
190
|
def app_height
|
182
191
|
portrait? ? app_size.height : app_size.width
|
183
192
|
end
|
@@ -186,10 +195,12 @@ module RubyMotionQuery
|
|
186
195
|
device.screen.applicationFrame.size
|
187
196
|
end
|
188
197
|
|
198
|
+
# TODO, cache, then clear when orientation changes
|
189
199
|
def screen_width
|
190
200
|
portrait? ? screen_size.width : screen_size.height
|
191
201
|
end
|
192
202
|
|
203
|
+
# TODO, cache, then clear when orientation changes
|
193
204
|
def screen_height
|
194
205
|
portrait? ? screen_size.height : screen_size.width
|
195
206
|
end
|
@@ -180,6 +180,8 @@ module RubyMotionQuery
|
|
180
180
|
if (klass == UIButton) || klass < UIButton
|
181
181
|
klass.buttonWithType(UIButtonTypeCustom).tap do |o|
|
182
182
|
o.hidden = false
|
183
|
+
#o.setTitleColor(rmq.color.black, forState: UIControlStateNormal)
|
184
|
+
#o.setTitle('Ok', forState: UIControlStateNormal)
|
183
185
|
o.opaque = true
|
184
186
|
end
|
185
187
|
elsif reuse_identifier = opts[:reuse_identifier]
|
@@ -28,6 +28,20 @@ module RubyMotionQuery
|
|
28
28
|
self
|
29
29
|
end
|
30
30
|
|
31
|
+
# Check if any of the selected has a given tag
|
32
|
+
# @example
|
33
|
+
# rmq(my_view).has_tag?(:your_tag) #false
|
34
|
+
# rmq(my_view).tag(:your_tag)
|
35
|
+
# rmq(my_view).has_tag?(:your_tag) #true
|
36
|
+
#
|
37
|
+
# @return [Boolean] true if any selection views have tag provided
|
38
|
+
def has_tag? tag
|
39
|
+
selected.each do |view|
|
40
|
+
return true if view.rmq_data.has_tag?(tag)
|
41
|
+
end
|
42
|
+
false # tag doesn't exist if we got here
|
43
|
+
end
|
44
|
+
|
31
45
|
# See /motion/data.rb for the rest of the tag stuff
|
32
46
|
|
33
47
|
end
|
@@ -3,11 +3,7 @@ module RubyMotionQuery
|
|
3
3
|
class << self
|
4
4
|
# @return [Boolean]
|
5
5
|
def is_class?(o)
|
6
|
-
|
7
|
-
#(o.class == Class) && (defined?(o) == 'constant')
|
8
|
-
|
9
|
-
# So I'm doing this instead
|
10
|
-
!!(o.respond_to?(:name) && o.name.to_s[0] =~ /[A-Z]/)
|
6
|
+
o.class == Class
|
11
7
|
end
|
12
8
|
|
13
9
|
# This is purposely not blank? as to not conflict with many libraries that
|
@@ -84,6 +80,13 @@ module RubyMotionQuery
|
|
84
80
|
a == b
|
85
81
|
end
|
86
82
|
|
83
|
+
# Gives you the value of a weakref, if the object it wraps no longer exists, returns nil
|
84
|
+
def weak_ref_value(o)
|
85
|
+
if o && o.weakref_alive?
|
86
|
+
o
|
87
|
+
end
|
88
|
+
end
|
89
|
+
|
87
90
|
# Mainly used for console and logging
|
88
91
|
#
|
89
92
|
# @return [String]
|
@@ -8,11 +8,12 @@ class <%= @name_camel_case %> < UIView
|
|
8
8
|
# q.append(UILabel, :some_label)
|
9
9
|
# -or-
|
10
10
|
# @submit_button = q.append(UIButon, :submit).get
|
11
|
+
# -or-
|
12
|
+
# @submit_button = q.append! UIButon, :submit
|
11
13
|
end
|
12
14
|
|
13
15
|
end
|
14
16
|
|
15
|
-
|
16
17
|
# To style this view include its stylesheet at the top of each controller's
|
17
18
|
# stylesheet that is going to use it:
|
18
19
|
# class SomeStylesheet < ApplicationStylesheet
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_motion_query
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Todd Werth
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-06-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bacon
|
@@ -40,7 +40,7 @@ dependencies:
|
|
40
40
|
- !ruby/object:Gem::Version
|
41
41
|
version: '0'
|
42
42
|
description: RubyMotionQuery - RMQ - A fast, non-magical, non-polluting, jQuery-like
|
43
|
-
library for RubyMotion
|
43
|
+
front-end library for RubyMotion
|
44
44
|
email: todd@infinitered.com
|
45
45
|
executables:
|
46
46
|
- rmq
|
@@ -66,8 +66,12 @@ files:
|
|
66
66
|
- motion/ruby_motion_query/factory.rb
|
67
67
|
- motion/ruby_motion_query/font.rb
|
68
68
|
- motion/ruby_motion_query/format.rb
|
69
|
+
- motion/ruby_motion_query/grid.rb
|
69
70
|
- motion/ruby_motion_query/image.rb
|
71
|
+
- motion/ruby_motion_query/inspector.rb
|
72
|
+
- motion/ruby_motion_query/inspector_stylesheet.rb
|
70
73
|
- motion/ruby_motion_query/position.rb
|
74
|
+
- motion/ruby_motion_query/rect.rb
|
71
75
|
- motion/ruby_motion_query/selectors.rb
|
72
76
|
- motion/ruby_motion_query/stylers/protocols/ui_text_input_traits.rb
|
73
77
|
- motion/ruby_motion_query/stylers/ui_button_styler.rb
|
@@ -119,7 +123,7 @@ files:
|
|
119
123
|
- templates/view/app/stylesheets/name_stylesheet.rb
|
120
124
|
- templates/view/app/views/name.rb
|
121
125
|
- templates/view/spec/views/name.rb
|
122
|
-
homepage: http://
|
126
|
+
homepage: http://rubymotionquery.com
|
123
127
|
licenses:
|
124
128
|
- MIT
|
125
129
|
metadata: {}
|