ProMotion 0.6.1 → 0.6.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.
- data/Gemfile.lock +1 -1
- data/README.md +6 -0
- data/lib/ProMotion/screen_helpers/split_screen.rb +6 -2
- data/lib/ProMotion/screens/_screen_module.rb +2 -0
- data/lib/ProMotion/version.rb +1 -1
- data/resources/list.png +0 -0
- data/spec/screen_helpers_spec.rb +9 -0
- data/spec/split_screen_in_tab_bar_spec.rb +14 -1
- metadata +2 -2
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -260,6 +260,12 @@ If you pass `:system` for the title, then you can get a system item. E.g.:
|
|
260
260
|
set_nav_bar_right_button nil, action: :add_something, system_icon: UIBarButtonSystemItemAdd
|
261
261
|
```
|
262
262
|
|
263
|
+
Additionally, if you pass an instance of a `UIBarButtonItem`, the `UIBarButton` will automatically display that particular button item.
|
264
|
+
|
265
|
+
```ruby
|
266
|
+
set_nav_bar_left_button self.editButtonItem
|
267
|
+
```
|
268
|
+
|
263
269
|
## Opening and closing screens
|
264
270
|
|
265
271
|
If the user taps something and you want to open a new screen, it's easy. Just use `open` and pass in the screen class
|
@@ -19,7 +19,11 @@ module ProMotion
|
|
19
19
|
|
20
20
|
[ master, detail ].map { |s| s.on_load if s.respond_to?(:on_load) }
|
21
21
|
|
22
|
-
split_screen_controller master, detail
|
22
|
+
split = split_screen_controller master, detail
|
23
|
+
if args.has_key?(:icon) or args.has_key?(:title)
|
24
|
+
split.tabBarItem = create_tab_bar_item(args)
|
25
|
+
end
|
26
|
+
split
|
23
27
|
end
|
24
28
|
|
25
29
|
def open_split_screen(master, detail, args={})
|
@@ -39,4 +43,4 @@ module ProMotion
|
|
39
43
|
svc.detail_screen.navigationItem.leftBarButtonItem = nil
|
40
44
|
end
|
41
45
|
end
|
42
|
-
end
|
46
|
+
end
|
@@ -88,6 +88,8 @@ module ProMotion
|
|
88
88
|
UIBarButtonItem.alloc.initWithImage(args[:title], style: args[:style], target: args[:target], action: args[:action])
|
89
89
|
when Symbol, NilClass
|
90
90
|
UIBarButtonItem.alloc.initWithBarButtonSystemItem(args[:system_icon], target: args[:target], action: args[:action]) if args[:system_icon]
|
91
|
+
when UIBarButtonItem
|
92
|
+
args[:title]
|
91
93
|
else
|
92
94
|
PM.logger.error("Please supply a title string, a UIImage or :system.")
|
93
95
|
end
|
data/lib/ProMotion/version.rb
CHANGED
data/resources/list.png
CHANGED
File without changes
|
data/spec/screen_helpers_spec.rb
CHANGED
@@ -68,6 +68,15 @@ describe "screen helpers" do
|
|
68
68
|
@screen.navigationItem.leftBarButtonItem.image.should == image
|
69
69
|
end
|
70
70
|
|
71
|
+
it "should add a left UIBarButtonItem" do
|
72
|
+
@screen.set_nav_bar_left_button @screen.editButtonItem
|
73
|
+
@screen.navigationItem.leftBarButtonItem.class.should == UIBarButtonItem
|
74
|
+
end
|
75
|
+
|
76
|
+
it "should add a right UIBarButtonItem" do
|
77
|
+
@screen.set_nav_bar_right_button @screen.editButtonItem
|
78
|
+
@screen.navigationItem.rightBarButtonItem.class.should == UIBarButtonItem
|
79
|
+
end
|
71
80
|
end
|
72
81
|
|
73
82
|
describe "screen navigation" do
|
@@ -6,7 +6,7 @@ describe "split screen in tab bar functionality" do
|
|
6
6
|
@master_screen = HomeScreen.new nav_bar: true
|
7
7
|
@detail_screen = BasicScreen.new nav_bar: true
|
8
8
|
|
9
|
-
@split_screen = @app.create_split_screen @master_screen, @detail_screen
|
9
|
+
@split_screen = @app.create_split_screen @master_screen, @detail_screen, icon: "list", title: "Spec"
|
10
10
|
@tab = @app.open_tab_bar @split_screen, HomeScreen, BasicScreen
|
11
11
|
end
|
12
12
|
|
@@ -49,5 +49,18 @@ describe "split screen in tab bar functionality" do
|
|
49
49
|
it "should set the tab bar first viewController to the split screen" do
|
50
50
|
@tab.viewControllers.first.should == @split_screen
|
51
51
|
end
|
52
|
+
|
53
|
+
it "should set the bar bar item for the split screen" do
|
54
|
+
@split_screen.tabBarItem.is_a?(UITabBarItem).should == true
|
55
|
+
end
|
56
|
+
|
57
|
+
it "should set the tab bar icon of the split screen" do
|
58
|
+
@split_screen.tabBarItem.image.is_a?(UIImage).should == true
|
59
|
+
end
|
60
|
+
|
61
|
+
it "should set the tab bar title of the split screen" do
|
62
|
+
@split_screen.tabBarItem.title.is_a?(String).should == true
|
63
|
+
@split_screen.tabBarItem.title.should == "Spec"
|
64
|
+
end
|
52
65
|
|
53
66
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ProMotion
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2013-05-
|
14
|
+
date: 2013-05-19 00:00:00.000000000 Z
|
15
15
|
dependencies: []
|
16
16
|
description: ProMotion is a new way to easily build RubyMotion iOS apps.
|
17
17
|
email:
|