redpotion 0.2.2 → 0.2.3
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 +56 -3
- data/bin/potion +1 -0
- data/lib/project/pro_motion/screen_module.rb +28 -0
- data/lib/project/ruby_motion_query/app.rb +9 -0
- data/lib/project/ruby_motion_query/ext.rb +93 -0
- data/lib/project/ruby_motion_query/traverse.rb +9 -0
- data/lib/project/version.rb +1 -1
- metadata +5 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 756184a2533ad4369d815d53d3ae71ec32e7157c
|
4
|
+
data.tar.gz: 75c3450c780ec77e6f4a539ddea4f8ed84768a1f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8163e4135e1c555b0b4e32e3857b926a4fe0c312f38a372a1a89782fca6dde6ca0bbcaeb0ccba80d7dcca5aa2ba32ecfa9b014341a5f1651c8add8fbdc416fff
|
7
|
+
data.tar.gz: dcc44512449649ed775ac236345de6fef279953d7b188b90e8d08c212ba7d3f9506449d1c7b978dfdd3f50a00d654b322316ec0c475d16435d37eba8a469ee34
|
data/README.md
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
RedPotion combines [RMQ](http://rubymotionquery.com/), [ProMotion](https://github.com/clearsightstudio/ProMotion), [CDQ](https://github.com/infinitered/cdq), [AFMotion](https://github.com/clayallsopp/afmotion), and other libraries. It also adds new features to better integrate RMQ with ProMotion.
|
6
6
|
|
7
|
-
Its goals are to choose standard libraries and promote best practices, allowing you to
|
7
|
+
Its goals are to choose standard libraries and promote best practices, allowing you to develop iOS apps in record time.
|
8
8
|
|
9
9
|
=========
|
10
10
|
|
@@ -37,12 +37,65 @@ potion create screen table states # This doesn't work yet
|
|
37
37
|
rake
|
38
38
|
```
|
39
39
|
|
40
|
-
|
40
|
+
## New features for RMQ
|
41
|
+
|
42
|
+
### You can use `find` instead of `rmq` in your views or screens
|
43
|
+
|
44
|
+
```ruby
|
45
|
+
find.all.hide
|
46
|
+
find(my_view).children.nudge(right: 10)
|
47
|
+
```
|
48
|
+
|
49
|
+
### You can use `app` directly in code, which is the same as `rmq.app`
|
50
|
+
|
51
|
+
So you also get window, device, and delegate from that.
|
52
|
+
|
53
|
+
```
|
54
|
+
app.device
|
55
|
+
app.window
|
56
|
+
app.delegate
|
57
|
+
```
|
58
|
+
|
59
|
+
### You can use the folling in a UIView or Screen or UIViewController without prefacing it with `rmq`:
|
60
|
+
|
61
|
+
```ruby
|
62
|
+
append
|
63
|
+
append!
|
64
|
+
prepend
|
65
|
+
prepend!
|
66
|
+
create
|
67
|
+
create!
|
68
|
+
build
|
69
|
+
build!
|
70
|
+
on
|
71
|
+
apply_style
|
72
|
+
reapply_styles
|
73
|
+
style
|
74
|
+
```
|
75
|
+
|
76
|
+
### Stylesheet in your screens
|
77
|
+
|
78
|
+
You can specify the stylesheet in your screen like so:
|
79
|
+
|
80
|
+
```ruby
|
81
|
+
class HomeScreen < PM::Screen
|
82
|
+
title "RedPotion"
|
83
|
+
stylesheet HomeStylesheet
|
84
|
+
|
85
|
+
def on_load
|
86
|
+
end
|
87
|
+
end
|
88
|
+
```
|
89
|
+
|
90
|
+
## New features for ProMotion
|
91
|
+
|
92
|
+
None so far. ProMotion is perfect just as it is :-)
|
93
|
+
|
41
94
|
|
42
95
|
## Contributing
|
43
96
|
|
44
97
|
1. Fork it
|
45
|
-
2. Create your feature branch (`git
|
98
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
46
99
|
3. Commit your changes (`git commit -am 'Add some feature'`)
|
47
100
|
4. Push to the branch (`git push origin my-new-feature`)
|
48
101
|
5. Create new Pull Request
|
data/bin/potion
CHANGED
@@ -0,0 +1,28 @@
|
|
1
|
+
module ProMotion
|
2
|
+
module ScreenModule
|
3
|
+
def view_did_load
|
4
|
+
self.rmq.stylesheet = self.class.rmq_style_sheet_class
|
5
|
+
self.view.rmq.apply_style :root_view
|
6
|
+
|
7
|
+
self.on_load
|
8
|
+
end
|
9
|
+
|
10
|
+
module RedPotionClassMethods
|
11
|
+
def stylesheet(style_sheet_class)
|
12
|
+
@rmq_style_sheet_class = style_sheet_class
|
13
|
+
end
|
14
|
+
|
15
|
+
def rmq_style_sheet_class
|
16
|
+
@rmq_style_sheet_class
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def self.included(base)
|
21
|
+
base.extend(ClassMethods)
|
22
|
+
base.extend(TabClassMethods) # TODO: Is there a better way?
|
23
|
+
base.extend(RedPotionClassMethods)
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
@@ -0,0 +1,93 @@
|
|
1
|
+
class Object
|
2
|
+
def app
|
3
|
+
rmq.app
|
4
|
+
end
|
5
|
+
|
6
|
+
alias :find :rmq
|
7
|
+
end
|
8
|
+
|
9
|
+
class UIView
|
10
|
+
def append(view_or_constant, style=nil, opts = {})
|
11
|
+
rmq(self).append(view_or_constant, style, opts)
|
12
|
+
end
|
13
|
+
def append!(view_or_constant, style=nil, opts = {})
|
14
|
+
rmq(self).append!(view_or_constant, style, opts)
|
15
|
+
end
|
16
|
+
|
17
|
+
def prepend(view_or_constant, style=nil, opts = {})
|
18
|
+
rmq(self).prepend(view_or_constant, style, opts)
|
19
|
+
end
|
20
|
+
def prepend!(view_or_constant, style=nil, opts = {})
|
21
|
+
rmq(self).prepend!(view_or_constant, style, opts)
|
22
|
+
end
|
23
|
+
|
24
|
+
def create(view_or_constant, style=nil, opts = {})
|
25
|
+
rmq(self).create(view_or_constant, style, opts)
|
26
|
+
end
|
27
|
+
def create!(view_or_constant, style=nil, opts = {})
|
28
|
+
rmq(self).create!(view_or_constant, style, opts)
|
29
|
+
end
|
30
|
+
|
31
|
+
def build(view, style = nil, opts = {})
|
32
|
+
rmq(self).build(view, style, opts)
|
33
|
+
end
|
34
|
+
def build!(view, style = nil, opts = {})
|
35
|
+
rmq(self).build!(view, style, opts)
|
36
|
+
end
|
37
|
+
|
38
|
+
def on(event, args = {}, &block)
|
39
|
+
rmq(self).on(event, args, block)
|
40
|
+
end
|
41
|
+
|
42
|
+
def apply_style(style_name)
|
43
|
+
rmq(self).apply_style(style_name)
|
44
|
+
end
|
45
|
+
|
46
|
+
def reapply_styles
|
47
|
+
rmq(self).reapply_styles
|
48
|
+
end
|
49
|
+
|
50
|
+
def style(&block)
|
51
|
+
rmq(self).style(block)
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
class UIViewController
|
56
|
+
def on_load
|
57
|
+
# Abstract
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
class ProMotion::Screen
|
62
|
+
def append(view_or_constant, style=nil, opts = {})
|
63
|
+
rmq(view).append(view_or_constant, style, opts)
|
64
|
+
end
|
65
|
+
def append!(view_or_constant, style=nil, opts = {})
|
66
|
+
rmq(view).append!(view_or_constant, style, opts)
|
67
|
+
end
|
68
|
+
|
69
|
+
def prepend(view_or_constant, style=nil, opts = {})
|
70
|
+
rmq(view).prepend(view_or_constant, style, opts)
|
71
|
+
end
|
72
|
+
def prepend!(view_or_constant, style=nil, opts = {})
|
73
|
+
rmq(view).prepend!(view_or_constant, style, opts)
|
74
|
+
end
|
75
|
+
|
76
|
+
def create(view_or_constant, style=nil, opts = {})
|
77
|
+
rmq(view).create(view_or_constant, style, opts)
|
78
|
+
end
|
79
|
+
def create!(view_or_constant, style=nil, opts = {})
|
80
|
+
rmq(view).create!(view_or_constant, style, opts)
|
81
|
+
end
|
82
|
+
|
83
|
+
def build(view, style = nil, opts = {})
|
84
|
+
rmq(view).build(view, style, opts)
|
85
|
+
end
|
86
|
+
def build!(view, style = nil, opts = {})
|
87
|
+
rmq(view).build!(view, style, opts)
|
88
|
+
end
|
89
|
+
|
90
|
+
def reapply_styles
|
91
|
+
rmq.all.reapply_styles
|
92
|
+
end
|
93
|
+
end
|
data/lib/project/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: redpotion
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- InfiniteRed
|
@@ -78,7 +78,11 @@ extra_rdoc_files: []
|
|
78
78
|
files:
|
79
79
|
- README.md
|
80
80
|
- bin/potion
|
81
|
+
- lib/project/pro_motion/screen_module.rb
|
81
82
|
- lib/project/redpotion.rb
|
83
|
+
- lib/project/ruby_motion_query/app.rb
|
84
|
+
- lib/project/ruby_motion_query/ext.rb
|
85
|
+
- lib/project/ruby_motion_query/traverse.rb
|
82
86
|
- lib/project/version.rb
|
83
87
|
- lib/redpotion.rb
|
84
88
|
homepage: https://github.com/infinitered/redpotion
|