android_motion_query 0.2.1 → 0.2.2
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 +2 -2
- data/lib/android_motion_query/amq.rb +17 -11
- data/lib/android_motion_query/stylesheet.rb +22 -0
- data/lib/android_motion_query/version.rb +1 -1
- data/lib/android_motion_query/views.rb +5 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f7f99205bcc6f4dafcbe9c498145bdfa00e074bd
|
4
|
+
data.tar.gz: 61c0171cb6edf43e7b2e19cb9042d8fd58c2aac0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: de113e65b2090b3ba519a5c5c9c89d5afb91f655072106685a5ed647362580fb8af4c42f61221acb1f98a7a500b6b3cab2ee82c760e664ff01cf514dd55b38d1
|
7
|
+
data.tar.gz: 583bf296545389fb1ffe6c0cc5122c8b318c1d65389e32a7d8724bbfd92785d71cf8ca41cd686d683cec3bd407155d1d62543ae6f1c3ff25021fd0c3f49c88f7
|
data/README.md
CHANGED
@@ -173,13 +173,13 @@ class CalculatorScreen < AMQScreen
|
|
173
173
|
end
|
174
174
|
```
|
175
175
|
|
176
|
-
Please check the `
|
176
|
+
Please check the `examples` folder for the complete calculator code in addition to other demo apps.
|
177
177
|
|
178
178
|
|
179
179
|
## Todo List
|
180
180
|
- [ ] Refactor - create more "single responsibility" classes and have smaller functions (this will never be "done", it's just here as a constant reminder)
|
181
181
|
- [ ] Set automatic IDs for views
|
182
|
-
- [ ] Add wrappers for all built-in android widgets (currently
|
182
|
+
- [ ] Add wrappers for all built-in android widgets (currently supports around 10 widgets)
|
183
183
|
- [x] Add support for LinearLayouts
|
184
184
|
- [ ] Add support for RelativeLayouts
|
185
185
|
- [x] Add support for FrameLayouts
|
@@ -12,7 +12,7 @@ class AndroidMotionQuery
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def create_android_query_view(view, style_method, layout_params, options = {}, &block)
|
15
|
-
self.root
|
15
|
+
self.root ||= AMQView.new(view, self.activity, self.stylesheet, style_method, layout_params, options)
|
16
16
|
self.stylesheet.apply_style_for(self.root, style_method, layout_params)
|
17
17
|
block.call(self.root) if block_given?
|
18
18
|
self.activity.setContentView(self.root.get)
|
@@ -30,32 +30,38 @@ class AndroidMotionQuery
|
|
30
30
|
self.root.get.findViewById(id).tag
|
31
31
|
end
|
32
32
|
|
33
|
-
def add(view_sym,
|
34
|
-
self.send(view_sym,
|
33
|
+
def add(view_sym, style_method, &block)
|
34
|
+
view, layout_params = self.send(view_sym, &block)
|
35
|
+
create_android_query_view(view, style_method, layout_params, {}, &block)
|
36
|
+
end
|
37
|
+
|
38
|
+
def add_alone(view_sym, style_method, &block)
|
39
|
+
view, layout_params = self.send(view_sym, &block)
|
40
|
+
create_standalone_amq_view(view, style_method, layout_params, {}, &block)
|
35
41
|
end
|
36
42
|
|
37
|
-
def linear_layout(
|
43
|
+
def linear_layout(&block)
|
38
44
|
view = Android::Widget::LinearLayout.new(self.activity)
|
39
45
|
layout_params = Android::Widget::LinearLayout::LayoutParams
|
40
|
-
|
46
|
+
[view, layout_params]
|
41
47
|
end
|
42
48
|
|
43
|
-
def relative_layout(
|
49
|
+
def relative_layout(&block)
|
44
50
|
view = Android::Widget::RelativeLayout.new(self.activity)
|
45
51
|
layout_params = Android::Widget::RelativeLayout::LayoutParams
|
46
|
-
|
52
|
+
[view, layout_params]
|
47
53
|
end
|
48
54
|
|
49
|
-
def frame_layout(
|
55
|
+
def frame_layout(&block)
|
50
56
|
view = Android::Widget::FrameLayout.new(self.activity)
|
51
57
|
layout_params = Android::Widget::FrameLayout::LayoutParams
|
52
|
-
|
58
|
+
[view, layout_params]
|
53
59
|
end
|
54
60
|
|
55
|
-
def text_view(
|
61
|
+
def text_view(&block)
|
56
62
|
view = Android::Widget::TextView.new(self.activity)
|
57
63
|
layout_params = Android::Widget::LinearLayout::LayoutParams
|
58
|
-
|
64
|
+
[view, layout_params]
|
59
65
|
end
|
60
66
|
|
61
67
|
def toast(text, options = {})
|
@@ -248,6 +248,12 @@ class AMQStylesheetElement
|
|
248
248
|
self.view.get.backgroundColor = AMQColor.parse_color(color.to_s)
|
249
249
|
end
|
250
250
|
|
251
|
+
def background_image=(image_name)
|
252
|
+
context = self.view.get.getContext
|
253
|
+
resource_id = context.getResources.getIdentifier(image_name, "drawable", context.getPackageName)
|
254
|
+
self.view.get.backgroundResource = resource_id
|
255
|
+
end
|
256
|
+
|
251
257
|
def image=(image_name)
|
252
258
|
context = self.view.get.getContext
|
253
259
|
resource_id = context.getResources.getIdentifier(image_name, "drawable", context.getPackageName)
|
@@ -282,6 +288,10 @@ class AMQStylesheetElement
|
|
282
288
|
self.view.get.hint = t
|
283
289
|
end
|
284
290
|
|
291
|
+
def alpha=(value)
|
292
|
+
self.view.get.alpha = value
|
293
|
+
end
|
294
|
+
|
285
295
|
def input_type=(text_type)
|
286
296
|
if INPUT_TYPES.keys.include? text_type
|
287
297
|
self.view.get.inputType = INPUT_TYPES[text_type]
|
@@ -308,4 +318,16 @@ class AMQStylesheetElement
|
|
308
318
|
self.params.gravity = :center
|
309
319
|
end
|
310
320
|
end
|
321
|
+
|
322
|
+
def number_of_columns=(columns)
|
323
|
+
self.view.get.numColumns = columns
|
324
|
+
end
|
325
|
+
|
326
|
+
def stretch_mode=(mode)
|
327
|
+
self.view.get.stretchMode = mode
|
328
|
+
end
|
329
|
+
|
330
|
+
def vertical_spacing=(space)
|
331
|
+
self.view.get.verticalSpacing = space
|
332
|
+
end
|
311
333
|
end
|
@@ -59,6 +59,11 @@ class AMQView
|
|
59
59
|
lp = Android::Widget::FrameLayout::LayoutParams
|
60
60
|
create_android_query_view(view, style_method, lp, {}, &block)
|
61
61
|
end
|
62
|
+
|
63
|
+
def plain_view(style_method, &block)
|
64
|
+
view = Android::View::View.new(self.activity)
|
65
|
+
new_view(view, style_method, &block)
|
66
|
+
end
|
62
67
|
|
63
68
|
def text_view(style_method, &block)
|
64
69
|
view = Android::Widget::TextView.new(self.activity)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: android_motion_query
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Abdullah Esmail
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-11-
|
11
|
+
date: 2017-11-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|