Class: Pindo::Command::Utils::Icon
- Inherits:
-
Utils
- Object
- Utils
- Pindo::Command::Utils::Icon
show all
- Extended by:
- Executable
- Defined in:
- lib/pindo/command/utils/icon.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Methods included from Executable
capture_command, executable, execute_command, popen3, reader, which, which!
Constructor Details
#initialize(argv) ⇒ Icon
Returns a new instance of Icon.
58
59
60
61
62
63
|
# File 'lib/pindo/command/utils/icon.rb', line 58
def initialize(argv)
@icon_name = argv.shift_argument
@args_install_flag = argv.flag?('install', false)
super(argv)
@additional_args = argv.remainder!
end
|
Class Method Details
.options ⇒ Object
52
53
54
55
56
|
# File 'lib/pindo/command/utils/icon.rb', line 52
def self.options
[
['--install', '生成icon后拷贝进Xcode工程里, 用法 pindo utils icon --install'],
].concat(super)
end
|
Instance Method Details
#run ⇒ Object
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
# File 'lib/pindo/command/utils/icon.rb', line 70
def run
icon_name = @icon_name
time = Time.now.strftime('%m%d-%H%M%S')
new_icon_dir = File.join(Dir.pwd, "icon_"+time)
Funlog.instance.fancyinfo_start("正在生成icon...")
begin
XcodeResHelper.create_icons(icon_name: icon_name, new_icon_dir: new_icon_dir, proj_dir: Dir.pwd)
Funlog.instance.fancyinfo_success("生成icon成功!")
rescue StandardError => e
Funlog.instance.fancyinfo_error("生成icon失败!")
end
if @args_install_flag
Funlog.instance.fancyinfo_start("正在给Xcode替换icon...")
XcodeResHelper.install_icon(proj_dir: Dir.pwd, new_icon_dir: new_icon_dir)
Funlog.instance.fancyinfo_success("Xcode替换icon完成!")
begin
FileUtils.remove_dir(new_icon_dir)
rescue StandardError => e
end
else
puts "open #{new_icon_dir}"
end
end
|
#validate! ⇒ Object
65
66
67
68
|
# File 'lib/pindo/command/utils/icon.rb', line 65
def validate!
super
help! 'Need a icon name' if @icon_name.nil? || @icon_name.empty?
end
|