23 |
plugin['/system/ui/icons/ScriptRunner'].subscribe do |event, slot| |
plugin['/system/ui/icons/ScriptRunner'].subscribe do |event, slot| |
24 |
if event == :notify_slot_add |
if event == :notify_slot_add |
25 |
app = plugin['/system/ui/fox/FXApp'].data |
app = plugin['/system/ui/fox/FXApp'].data |
26 |
path = "#{plugin.plugin_configuration.base_path}/icons/#{slot.name}.png" |
path = "#{plugin.plugin_configuration.full_base_path}/icons/#{slot.name}.png" |
27 |
if FileTest.exist?(path) |
if FileTest.exist?(path) |
28 |
slot.data = Fox::FXPNGIcon.new(app, File.open(path, "rb").read) |
slot.data = Fox::FXPNGIcon.new(app, File.open(path, "rb").read) |
29 |
slot.data.create |
slot.data.create |
38 |
#editpane.save if editpane.modified? |
#editpane.save if editpane.modified? |
39 |
unless editpane.modified? |
unless editpane.modified? |
40 |
file = plugin["/system/ui/current/EditPane"].data |
file = plugin["/system/ui/current/EditPane"].data |
41 |
result = `ruby "#{file}" 2>&1` |
exec_dir = File.dirname(file) |
42 |
|
result = `ruby -C "#{exec_dir}" "#{file}" 2>&1` |
43 |
plugin["/system/ui/current/OutputPane"].manager.append("Run", "<CMD>>ruby #{file}\n") |
plugin["/system/ui/current/OutputPane"].manager.append("Run", "<CMD>>ruby #{file}\n") |
44 |
plugin["/system/ui/current/OutputPane"].manager.append("Run", result) |
plugin["/system/ui/current/OutputPane"].manager.append("Run", result) |
45 |
plugin["/system/ui/current/OutputPane"].manager.append("Run", "<CMD>>exit\n") |
plugin["/system/ui/current/OutputPane"].manager.append("Run", "<CMD>>exit\n") |