Class: JSON::Editor::FileMenu
- Includes:
- MenuExtension
- Defined in:
- lib/json/editor.rb
Overview
This class creates the File pulldown menu.
Instance Attribute Summary
Attributes included from MenuExtension
Instance Method Summary collapse
-
#create ⇒ Object
Create the menu.
-
#new(item) ⇒ Object
Clear the model and filename, but ask to save the JSON document, if unsaved changes have occured.
-
#open(item) ⇒ Object
Open a file and load it into the editor.
- #open_location(item) ⇒ Object
-
#quit(item) ⇒ Object
Quit the editor, after asking to save any unsaved changes first.
-
#revert(item) ⇒ Object
Revert the current JSON document in the editor to the saved version.
-
#save(item) ⇒ Object
Save the current JSON document.
-
#save_as(item) ⇒ Object
Save the current JSON document under the given filename.
Methods included from MenuExtension
#add_item, #add_separator, #initialize, #method_missing
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class JSON::Editor::MenuExtension
Instance Method Details
#create ⇒ Object
Create the menu.
527 528 529 530 531 532 533 534 535 536 537 538 539 540 |
# File 'lib/json/editor.rb', line 527 def create title = MenuItem.new('File') title. = add_item('New', &method(:new)) add_item('Open', ?o, &method(:open)) add_item('Open location', ?l, &method(:open_location)) add_item('Revert', &method(:revert)) add_separator add_item('Save', ?s, &method(:save)) add_item('Save As', ?S, &method(:save_as)) add_separator add_item('Quit', ?q, &method(:quit)) title end |
#new(item) ⇒ Object
Clear the model and filename, but ask to save the JSON document, if unsaved changes have occured.
490 491 492 |
# File 'lib/json/editor.rb', line 490 def new(item) window.clear end |
#open(item) ⇒ Object
Open a file and load it into the editor. Ask to save the JSON document first, if unsaved changes have occured.
496 497 498 |
# File 'lib/json/editor.rb', line 496 def open(item) window.file_open end |
#open_location(item) ⇒ Object
500 501 502 |
# File 'lib/json/editor.rb', line 500 def open_location(item) window.location_open end |
#quit(item) ⇒ Object
Quit the editor, after asking to save any unsaved changes first.
522 523 524 |
# File 'lib/json/editor.rb', line 522 def quit(item) window.quit end |
#revert(item) ⇒ Object
Revert the current JSON document in the editor to the saved version.
505 506 507 508 509 |
# File 'lib/json/editor.rb', line 505 def revert(item) window.instance_eval do @filename and file_open(@filename) end end |
#save(item) ⇒ Object
Save the current JSON document.
512 513 514 |
# File 'lib/json/editor.rb', line 512 def save(item) window.file_save end |
#save_as(item) ⇒ Object
Save the current JSON document under the given filename.
517 518 519 |
# File 'lib/json/editor.rb', line 517 def save_as(item) window.file_save_as end |