mynu 0.2.4 → 0.2.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/README.md +120 -0
  2. data/lib/mynu/version.rb +1 -1
  3. data/mynu.gemspec +5 -19
  4. metadata +4 -4
data/README.md CHANGED
@@ -3,14 +3,134 @@ Mynu
3
3
 
4
4
  A simple DSL to create a systembar menu with macruby in OSX
5
5
 
6
+ ![](http://i.imgur.com/yQBEE.png)
6
7
 
7
8
  1. `gem install mynu`
8
9
  2. `macruby examples/hello-mynu.rb`
9
10
 
11
+
12
+ An example of abusing `open [-a]`
13
+
14
+ `macruby examples/workflow.rb`
15
+
16
+
10
17
  Or if your feeling bohemian:
11
18
 
12
19
  `macruby examples/queen.rb`
13
20
 
21
+
22
+ require 'rubygems'
23
+ require 'mynu'
24
+
25
+ mynu = Mynu.new
26
+
27
+ mynu.item "Hello World!" do |menu|
28
+ puts "Inside menu setup!"
29
+ menu.title = "Good Bye World!"
30
+ menu.item "Option 1" do |sub_menu|
31
+ sub_menu.execute do
32
+ puts "Execution block"
33
+ sub_menu.title = "Dynamically changed!"
34
+ end
35
+ end
36
+ menu.item "Option 2" do |sub_menu|
37
+ sub_menu.item "Option 2a" do
38
+ puts "Option 2a clicked!"
39
+ end
40
+ sub_menu.item "Option 2b" do
41
+ puts "Option 2b clicked!"
42
+ end
43
+ sub_menu.execute do
44
+ puts "Execution block and items"
45
+ sub_menu.title = "Dynamically changed!"
46
+ end
47
+ end
48
+ capture_menu_item = menu.item "Disabled" do |sub_menu|
49
+ sub_menu.disabled
50
+ end
51
+ menu.item "Enable `Disabled`" do |sub_menu|
52
+ sub_menu.execute do
53
+ capture_menu_item.enabled
54
+ capture_menu_item.execute do
55
+ capture_menu_item.title = "Disabled (Again)!"
56
+ capture_menu_item.disabled
57
+ end
58
+ end
59
+ end
60
+ end
61
+
62
+ mynu.item "Simple Item" do
63
+ puts "Hello World!"
64
+ end
65
+
66
+ mynu.run
67
+
68
+ ====
69
+
70
+ require 'rubygems'
71
+ require 'mynu'
72
+
73
+ mynu = Mynu.new
74
+
75
+ mynu.item "Applications" do |applications|
76
+ applications.item "Terminal" do
77
+ # TODO: AppleScript a tab, this does nothing if terminal is open
78
+ `open -a /Applications/Utilities/Terminal.app`
79
+ end
80
+ end
81
+
82
+ mynu.item "Project" do |project|
83
+ project.item "Live" do
84
+ `open http://example.com`
85
+ end
86
+ project.item "Staging" do
87
+ `open http://user:pass@staging.example.com`
88
+ end
89
+ project.item "Development" do
90
+ `open http://example.dev`
91
+ end
92
+ project.item "Repos" do |repos|
93
+ repos.item "Example" do
94
+ `open ~/example`
95
+ end
96
+ repos.item "Resources" do
97
+ `open ~/example-resources`
98
+ end
99
+ end
100
+ end
101
+
102
+ mynu.items << NSMenuItem.separatorItem
103
+
104
+ mynu.item "Development" do |development|
105
+ development.item "Rails" do |development_mynu|
106
+ development_mynu.item "Github" do
107
+ `open http://github.com/rails/rails`
108
+ end
109
+ development_mynu.item "Repo" do
110
+ `open ~/workspace/rails`
111
+ end
112
+ end
113
+ end
114
+
115
+ mynu.items << NSMenuItem.separatorItem
116
+
117
+ mynu.item "Downloads" do
118
+ `open ~/Downloads`
119
+ end
120
+
121
+ mynu.items << NSMenuItem.separatorItem
122
+
123
+ desktop = mynu.item "Desktop" do
124
+ `open ~/Desktop`
125
+ end
126
+
127
+ mynu.items << NSMenuItem.separatorItem
128
+
129
+
130
+ mynu.run
131
+
132
+
133
+
14
134
  Todo
15
135
  =====
16
136
  * Lots
@@ -2,7 +2,7 @@ class Mynu
2
2
  module Version
3
3
  MAJOR = 0
4
4
  MINOR = 2
5
- PATCH = 4
5
+ PATCH = 5
6
6
  BUILD = nil
7
7
 
8
8
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join('.')
@@ -1,10 +1,11 @@
1
1
  require 'lib/mynu/version'
2
2
 
3
3
  Gem::Specification.new do |s|
4
+ s.specification_version = 2 if s.respond_to? :specification_version=
5
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
6
+
4
7
  s.name = %q{mynu}
5
8
  s.version = "#{Mynu::Version::STRING}"
6
-
7
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
9
  s.authors = ["Rob Lowe"]
9
10
  s.date = %q{2011-05-29}
10
11
  s.description = %q{A simple DSL to create a systembar menu with macruby in OSX}
@@ -36,21 +37,6 @@ Gem::Specification.new do |s|
36
37
  s.rubygems_version = %q{1.4.2}
37
38
  s.summary = %q{Opinionated tool for creating and managing a system menu in osx}
38
39
 
39
- if s.respond_to? :specification_version then
40
- s.specification_version = 3
41
-
42
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
43
- s.add_runtime_dependency(%q<rake>, [">= 0"])
44
- s.add_runtime_dependency(%q<bundler>, ["~> 1.0.0"])
45
- # s.add_development_dependency(%q<shoulda>, [">= 0"])
46
- else
47
- s.add_dependency(%q<rake>, [">= 0"])
48
- s.add_dependency(%q<bundler>, ["~> 1.0.0"])
49
- # s.add_dependency(%q<shoulda>, [">= 0"])
50
- end
51
- else
52
- s.add_dependency(%q<rake>, [">= 0"])
53
- s.add_dependency(%q<bundler>, ["~> 1.0.0"])
54
- # s.add_dependency(%q<shoulda>, [">= 0"])
55
- end
40
+ s.add_development_dependency(%q<rake>, [">= 0"])
41
+ s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
56
42
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: mynu
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.2.4
5
+ version: 0.2.5
6
6
  platform: ruby
7
7
  authors:
8
8
  - Rob Lowe
@@ -21,7 +21,7 @@ dependencies:
21
21
  - - '>='
22
22
  - !ruby/object:Gem::Version
23
23
  version: "0"
24
- type: :runtime
24
+ type: :development
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  none: false
27
27
  requirements:
@@ -37,7 +37,7 @@ dependencies:
37
37
  - - ~>
38
38
  - !ruby/object:Gem::Version
39
39
  version: 1.0.0
40
- type: :runtime
40
+ type: :development
41
41
  version_requirements: !ruby/object:Gem::Requirement
42
42
  none: false
43
43
  requirements:
@@ -92,6 +92,6 @@ requirements: []
92
92
  rubyforge_project:
93
93
  rubygems_version: 1.4.2
94
94
  signing_key:
95
- specification_version: 3
95
+ specification_version: 2
96
96
  summary: Opinionated tool for creating and managing a system menu in osx
97
97
  test_files: []