redcar-dev 0.12.17dev
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/CHANGES +664 -0
- data/LICENSE +32 -0
- data/README.md +119 -0
- data/Rakefile +283 -0
- data/bin/redcar +29 -0
- data/lib/redcar.rb +307 -0
- data/lib/redcar/installer.rb +178 -0
- data/lib/redcar/instance_exec.rb +25 -0
- data/lib/redcar/logger.rb +64 -0
- data/lib/redcar/plist.rb +83 -0
- data/lib/redcar/ruby_extensions.rb +201 -0
- data/lib/redcar/runner.rb +130 -0
- data/lib/redcar/usage.rb +42 -0
- data/lib/redcar_quick_start.rb +100 -0
- data/lib/regex_replace.rb +221 -0
- data/lib/tasks/app-bundle.rake +63 -0
- data/plugins/application/features/main_menu.feature +9 -0
- data/plugins/application/features/navigation_history.feature +66 -0
- data/plugins/application/features/step_definitions/command_steps.rb +10 -0
- data/plugins/application/features/step_definitions/dialog_steps.rb +25 -0
- data/plugins/application/features/step_definitions/filter_list_dialog_steps.rb +42 -0
- data/plugins/application/features/step_definitions/key_steps.rb +18 -0
- data/plugins/application/features/step_definitions/menu_steps.rb +42 -0
- data/plugins/application/features/step_definitions/navigation_history_steps.rb +4 -0
- data/plugins/application/features/step_definitions/speedbar_steps.rb +88 -0
- data/plugins/application/features/step_definitions/tree_steps.rb +107 -0
- data/plugins/application/features/step_definitions/window_steps.rb +17 -0
- data/plugins/application/features/support/env.rb +257 -0
- data/plugins/application/features/support/fake_event.rb +26 -0
- data/plugins/application/lib/application.rb +425 -0
- data/plugins/application/lib/application/assets/file.png +0 -0
- data/plugins/application/lib/application/clipboard.rb +95 -0
- data/plugins/application/lib/application/command.rb +108 -0
- data/plugins/application/lib/application/command/executor.rb +80 -0
- data/plugins/application/lib/application/command/history.rb +54 -0
- data/plugins/application/lib/application/commands/application_commands.rb +21 -0
- data/plugins/application/lib/application/commands/notebook_commands.rb +73 -0
- data/plugins/application/lib/application/commands/tab_commands.rb +105 -0
- data/plugins/application/lib/application/commands/treebook_commands.rb +117 -0
- data/plugins/application/lib/application/commands/window_commands.rb +68 -0
- data/plugins/application/lib/application/dialog.rb +170 -0
- data/plugins/application/lib/application/dialogs/filter_list_dialog.rb +123 -0
- data/plugins/application/lib/application/dialogs/modeless_list_dialog.rb +85 -0
- data/plugins/application/lib/application/event_spewer.rb +32 -0
- data/plugins/application/lib/application/keymap.rb +41 -0
- data/plugins/application/lib/application/keymap/builder.rb +23 -0
- data/plugins/application/lib/application/menu.rb +117 -0
- data/plugins/application/lib/application/menu/builder.rb +80 -0
- data/plugins/application/lib/application/menu/builder/group.rb +47 -0
- data/plugins/application/lib/application/menu/item.rb +79 -0
- data/plugins/application/lib/application/menu/lazy_menu.rb +25 -0
- data/plugins/application/lib/application/navigation_history.rb +71 -0
- data/plugins/application/lib/application/notebook.rb +163 -0
- data/plugins/application/lib/application/sensitive.rb +57 -0
- data/plugins/application/lib/application/sensitivity.rb +82 -0
- data/plugins/application/lib/application/speedbar.rb +100 -0
- data/plugins/application/lib/application/tab.rb +92 -0
- data/plugins/application/lib/application/tab/command.rb +5 -0
- data/plugins/application/lib/application/toolbar.rb +83 -0
- data/plugins/application/lib/application/toolbar/builder.rb +80 -0
- data/plugins/application/lib/application/toolbar/builder/group.rb +47 -0
- data/plugins/application/lib/application/toolbar/item.rb +71 -0
- data/plugins/application/lib/application/toolbar/lazy_toolbar.rb +25 -0
- data/plugins/application/lib/application/tree.rb +94 -0
- data/plugins/application/lib/application/tree/command.rb +5 -0
- data/plugins/application/lib/application/tree/controller.rb +64 -0
- data/plugins/application/lib/application/tree/mirror.rb +132 -0
- data/plugins/application/lib/application/treebook.rb +83 -0
- data/plugins/application/lib/application/window.rb +274 -0
- data/plugins/application/plugin.rb +8 -0
- data/plugins/application/spec/application/application_spec.rb +23 -0
- data/plugins/application/spec/application/clipboard_spec.rb +55 -0
- data/plugins/application/spec/application/command/executor_spec.rb +78 -0
- data/plugins/application/spec/application/command/history_spec.rb +49 -0
- data/plugins/application/spec/application/command_spec.rb +78 -0
- data/plugins/application/spec/application/controllers/application_controller.rb +4 -0
- data/plugins/application/spec/application/controllers/notebook_controller.rb +4 -0
- data/plugins/application/spec/application/controllers/window_controller.rb +5 -0
- data/plugins/application/spec/application/keymap/builder_spec.rb +17 -0
- data/plugins/application/spec/application/menu/builder_spec.rb +61 -0
- data/plugins/application/spec/application/menu/menu_item_spec.rb +17 -0
- data/plugins/application/spec/application/menu_spec.rb +171 -0
- data/plugins/application/spec/application/navigation_history_spec.rb +96 -0
- data/plugins/application/spec/application/notebook_spec.rb +31 -0
- data/plugins/application/spec/application/sensitive_spec.rb +156 -0
- data/plugins/application/spec/application/speedbar_spec.rb +77 -0
- data/plugins/application/spec/application/treebook_spec.rb +27 -0
- data/plugins/application/spec/application/window_spec.rb +24 -0
- data/plugins/application/spec/spec_helper.rb +18 -0
- data/plugins/application_swt/build.xml +74 -0
- data/plugins/application_swt/lib/application_swt.rb +218 -0
- data/plugins/application_swt/lib/application_swt/bring_to_front.rb +53 -0
- data/plugins/application_swt/lib/application_swt/clipboard.rb +42 -0
- data/plugins/application_swt/lib/application_swt/dialog_adapter.rb +180 -0
- data/plugins/application_swt/lib/application_swt/dialogs/filter_list_dialog_controller.rb +233 -0
- data/plugins/application_swt/lib/application_swt/dialogs/input_dialog.rb +46 -0
- data/plugins/application_swt/lib/application_swt/dialogs/modeless_dialog.rb +113 -0
- data/plugins/application_swt/lib/application_swt/dialogs/modeless_html_dialog.rb +85 -0
- data/plugins/application_swt/lib/application_swt/dialogs/modeless_list_dialog_controller.rb +143 -0
- data/plugins/application_swt/lib/application_swt/dialogs/no_buttons_dialog.rb +24 -0
- data/plugins/application_swt/lib/application_swt/dialogs/text_and_file_dialog.rb +118 -0
- data/plugins/application_swt/lib/application_swt/gradient.rb +61 -0
- data/plugins/application_swt/lib/application_swt/html_tab.rb +79 -0
- data/plugins/application_swt/lib/application_swt/icon.rb +35 -0
- data/plugins/application_swt/lib/application_swt/listener_helpers.rb +20 -0
- data/plugins/application_swt/lib/application_swt/menu.rb +167 -0
- data/plugins/application_swt/lib/application_swt/menu/binding_translator.rb +94 -0
- data/plugins/application_swt/lib/application_swt/notebook.rb +148 -0
- data/plugins/application_swt/lib/application_swt/notebook/tab_drag_and_drop_listener.rb +124 -0
- data/plugins/application_swt/lib/application_swt/notebook/tab_transfer.rb +83 -0
- data/plugins/application_swt/lib/application_swt/speedbar.rb +185 -0
- data/plugins/application_swt/lib/application_swt/speedbar/button_item.rb +20 -0
- data/plugins/application_swt/lib/application_swt/speedbar/combo_item.rb +55 -0
- data/plugins/application_swt/lib/application_swt/speedbar/label_item.rb +15 -0
- data/plugins/application_swt/lib/application_swt/speedbar/slider_item.rb +32 -0
- data/plugins/application_swt/lib/application_swt/speedbar/text_box_item.rb +36 -0
- data/plugins/application_swt/lib/application_swt/speedbar/toggle_item.rb +29 -0
- data/plugins/application_swt/lib/application_swt/tab.rb +84 -0
- data/plugins/application_swt/lib/application_swt/toolbar.rb +138 -0
- data/plugins/application_swt/lib/application_swt/toolbar/binding_translator.rb +94 -0
- data/plugins/application_swt/lib/application_swt/treebook.rb +78 -0
- data/plugins/application_swt/lib/application_swt/window.rb +419 -0
- data/plugins/application_swt/lib/dist/application_swt.jar +0 -0
- data/plugins/application_swt/lib/swt/graphics_utils.rb +193 -0
- data/plugins/application_swt/lib/swt/vtab_folder.rb +177 -0
- data/plugins/application_swt/lib/swt/vtab_item.rb +78 -0
- data/plugins/application_swt/lib/swt/vtab_label.rb +127 -0
- data/plugins/application_swt/plugin.rb +8 -0
- data/plugins/application_swt/spec/application_swt/gradient_spec.rb +133 -0
- data/plugins/application_swt/spec/application_swt/menu/binding_translator_spec.rb +73 -0
- data/plugins/application_swt/spec/application_swt/menu_spec.rb +7 -0
- data/plugins/application_swt/spec/spec_helper.rb +20 -0
- data/plugins/application_swt/src/com/redcareditor/application_swt/CocoaUIEnhancer.java +313 -0
- data/plugins/auto_completer/features/auto_complete.feature +65 -0
- data/plugins/auto_completer/features/step_definitions/auto_complete_steps.rb +4 -0
- data/plugins/auto_completer/features/support/env.rb +2 -0
- data/plugins/auto_completer/lib/auto_completer.rb +129 -0
- data/plugins/auto_completer/lib/auto_completer/current_document_completion_source.rb +19 -0
- data/plugins/auto_completer/lib/auto_completer/document_controller.rb +52 -0
- data/plugins/auto_completer/lib/auto_completer/list_dialog.rb +21 -0
- data/plugins/auto_completer/lib/auto_completer/word_iterator.rb +48 -0
- data/plugins/auto_completer/lib/auto_completer/word_list.rb +47 -0
- data/plugins/auto_completer/plugin.rb +10 -0
- data/plugins/auto_indenter/features/java_style_indentation.feature +36 -0
- data/plugins/auto_indenter/features/ruby_style_indentation.feature +42 -0
- data/plugins/auto_indenter/features/step_definitions/indentation_steps.rb +15 -0
- data/plugins/auto_indenter/features/support/env.rb +1 -0
- data/plugins/auto_indenter/lib/auto_indenter.rb +108 -0
- data/plugins/auto_indenter/lib/auto_indenter/analyzer.rb +100 -0
- data/plugins/auto_indenter/lib/auto_indenter/commands.rb +66 -0
- data/plugins/auto_indenter/lib/auto_indenter/document_controller.rb +103 -0
- data/plugins/auto_indenter/lib/auto_indenter/rules.rb +41 -0
- data/plugins/auto_indenter/plugin.rb +9 -0
- data/plugins/auto_indenter/spec/auto_indenter/analyzer_spec.rb +151 -0
- data/plugins/auto_indenter/spec/spec_helper.rb +5 -0
- data/plugins/auto_pairer/features/auto_pairer.feature +92 -0
- data/plugins/auto_pairer/features/step_definitions/auto_pairer_steps.rb +0 -0
- data/plugins/auto_pairer/features/support/env.rb +1 -0
- data/plugins/auto_pairer/lib/auto_pairer.rb +12 -0
- data/plugins/auto_pairer/lib/auto_pairer/document_controller.rb +168 -0
- data/plugins/auto_pairer/lib/auto_pairer/pairs_for_scope.rb +57 -0
- data/plugins/auto_pairer/plugin.rb +9 -0
- data/plugins/clipboard-viewer/Screenshot.png +0 -0
- data/plugins/clipboard-viewer/lib/clipboard_viewer.rb +50 -0
- data/plugins/clipboard-viewer/lib/clipboard_viewer/browser_controller.rb +27 -0
- data/plugins/clipboard-viewer/lib/clipboard_viewer/clipboard_bar.rb +67 -0
- data/plugins/clipboard-viewer/plugin.rb +9 -0
- data/plugins/clipboard-viewer/views/clipboard.html.erb +19 -0
- data/plugins/clipboard-viewer/views/default.css +43 -0
- data/plugins/clipboard-viewer/views/redcar_small_icon.png +0 -0
- data/plugins/comment/features/line_comment.feature +249 -0
- data/plugins/comment/features/selection_comment.feature +21 -0
- data/plugins/comment/features/step_definitions/comment_steps.rb +7 -0
- data/plugins/comment/lib/comment.rb +268 -0
- data/plugins/comment/plugin.rb +7 -0
- data/plugins/comment/vendor/comment_lib.json +47 -0
- data/plugins/connection_manager/lib/connection_manager.rb +57 -0
- data/plugins/connection_manager/lib/connection_manager/commands.rb +14 -0
- data/plugins/connection_manager/lib/connection_manager/connection_store.rb +87 -0
- data/plugins/connection_manager/lib/connection_manager/controller.rb +100 -0
- data/plugins/connection_manager/lib/connection_manager/filter_dialog.rb +38 -0
- data/plugins/connection_manager/lib/connection_manager/private_key_store.rb +93 -0
- data/plugins/connection_manager/plugin.rb +12 -0
- data/plugins/connection_manager/views/index.html.erb +284 -0
- data/plugins/core/lib/core.rb +41 -0
- data/plugins/core/lib/core/controller.rb +23 -0
- data/plugins/core/lib/core/gui.rb +100 -0
- data/plugins/core/lib/core/has_spi.rb +10 -0
- data/plugins/core/lib/core/interface.rb +73 -0
- data/plugins/core/lib/core/model.rb +11 -0
- data/plugins/core/lib/core/observable.rb +115 -0
- data/plugins/core/lib/core/observable_struct.rb +34 -0
- data/plugins/core/lib/core/persistent_cache.rb +57 -0
- data/plugins/core/lib/core/plugin.rb +12 -0
- data/plugins/core/lib/core/plugin/storage.rb +133 -0
- data/plugins/core/lib/core/reentry_helpers.rb +13 -0
- data/plugins/core/lib/core/resource.rb +86 -0
- data/plugins/core/lib/core/task.rb +62 -0
- data/plugins/core/lib/core/task_queue.rb +72 -0
- data/plugins/core/plugin.rb +7 -0
- data/plugins/core/spec/core/base_storage_spec.rb +81 -0
- data/plugins/core/spec/core/gui_spec.rb +27 -0
- data/plugins/core/spec/core/observable_spec.rb +104 -0
- data/plugins/core/spec/core/persistent_cache_spec.rb +100 -0
- data/plugins/core/spec/core/resource_spec.rb +125 -0
- data/plugins/core/spec/core/shared_storage_spec.rb +49 -0
- data/plugins/core/spec/core/storage_spec.rb +27 -0
- data/plugins/core/spec/core/task_queue_spec.rb +199 -0
- data/plugins/core/spec/spec_helper.rb +27 -0
- data/plugins/declarations/lib/declarations.rb +159 -0
- data/plugins/declarations/lib/declarations/completion_source.rb +22 -0
- data/plugins/declarations/lib/declarations/file.rb +68 -0
- data/plugins/declarations/lib/declarations/parser.rb +186 -0
- data/plugins/declarations/lib/declarations/select_tag_dialog.rb +45 -0
- data/plugins/declarations/plugin.rb +7 -0
- data/plugins/declarations/spec/declarations/file_spec.rb +62 -0
- data/plugins/declarations/spec/fixtures/federalist.rb +15 -0
- data/plugins/declarations/spec/spec_helper.rb +5 -0
- data/plugins/document_search/Readme.md +14 -0
- data/plugins/document_search/features/find.feature +541 -0
- data/plugins/document_search/features/incremental_search.feature +351 -0
- data/plugins/document_search/features/replace.feature +178 -0
- data/plugins/document_search/features/step_definitions/find_steps.rb +16 -0
- data/plugins/document_search/features/support/env.rb +14 -0
- data/plugins/document_search/lib/document_search.rb +191 -0
- data/plugins/document_search/lib/document_search/commands.rb +307 -0
- data/plugins/document_search/lib/document_search/find_speedbar.rb +162 -0
- data/plugins/document_search/lib/document_search/incremental_search_speedbar.rb +70 -0
- data/plugins/document_search/lib/document_search/query_options.rb +21 -0
- data/plugins/document_search/plugin.rb +8 -0
- data/plugins/edit_view/features/align_assignment.feature +106 -0
- data/plugins/edit_view/features/case_change.feature +67 -0
- data/plugins/edit_view/features/cursor_navigation.feature +36 -0
- data/plugins/edit_view/features/cut_and_paste.feature +45 -0
- data/plugins/edit_view/features/grammar.feature +11 -0
- data/plugins/edit_view/features/indentation_commands.feature +49 -0
- data/plugins/edit_view/features/line_delimiter.feature +47 -0
- data/plugins/edit_view/features/multiple_notebooks.feature +52 -0
- data/plugins/edit_view/features/multiple_windows.feature +48 -0
- data/plugins/edit_view/features/new_tab.feature +11 -0
- data/plugins/edit_view/features/soft_tabs.feature +243 -0
- data/plugins/edit_view/features/sort_lines.feature +15 -0
- data/plugins/edit_view/features/step_definitions/editing_steps.rb +350 -0
- data/plugins/edit_view/features/step_definitions/grammar_steps.rb +4 -0
- data/plugins/edit_view/features/step_definitions/key_steps.rb +48 -0
- data/plugins/edit_view/features/step_definitions/notebook_steps.rb +59 -0
- data/plugins/edit_view/features/step_definitions/tab_steps.rb +113 -0
- data/plugins/edit_view/features/step_definitions/window_steps.rb +86 -0
- data/plugins/edit_view/features/support/env.rb +59 -0
- data/plugins/edit_view/features/switch_tabs.feature +106 -0
- data/plugins/edit_view/features/tabs.feature +146 -0
- data/plugins/edit_view/features/undo_and_redo.feature +73 -0
- data/plugins/edit_view/features/word_matching.feature +67 -0
- data/plugins/edit_view/lib/edit_view.rb +659 -0
- data/plugins/edit_view/lib/edit_view/actions/arrow_keys.rb +170 -0
- data/plugins/edit_view/lib/edit_view/actions/cmd_enter.rb +11 -0
- data/plugins/edit_view/lib/edit_view/actions/deletion.rb +40 -0
- data/plugins/edit_view/lib/edit_view/actions/esc.rb +15 -0
- data/plugins/edit_view/lib/edit_view/actions/tab.rb +70 -0
- data/plugins/edit_view/lib/edit_view/command.rb +14 -0
- data/plugins/edit_view/lib/edit_view/commands/align_assignment_command.rb +55 -0
- data/plugins/edit_view/lib/edit_view/commands/text_conversion_commands.rb +85 -0
- data/plugins/edit_view/lib/edit_view/document.rb +796 -0
- data/plugins/edit_view/lib/edit_view/document/command.rb +25 -0
- data/plugins/edit_view/lib/edit_view/document/controller.rb +43 -0
- data/plugins/edit_view/lib/edit_view/document/history.rb +41 -0
- data/plugins/edit_view/lib/edit_view/document/indentation.rb +40 -0
- data/plugins/edit_view/lib/edit_view/document/mirror.rb +42 -0
- data/plugins/edit_view/lib/edit_view/edit_tab.rb +59 -0
- data/plugins/edit_view/lib/edit_view/grammar.rb +58 -0
- data/plugins/edit_view/lib/edit_view/grammars/default.rb +10 -0
- data/plugins/edit_view/lib/edit_view/grammars/ruby.rb +10 -0
- data/plugins/edit_view/lib/edit_view/grammars/ruby_on_rails.rb +7 -0
- data/plugins/edit_view/lib/edit_view/info_speedbar.rb +98 -0
- data/plugins/edit_view/lib/edit_view/modified_tabs_checker.rb +35 -0
- data/plugins/edit_view/lib/edit_view/select_font_dialog.rb +45 -0
- data/plugins/edit_view/lib/edit_view/select_theme_dialog.rb +42 -0
- data/plugins/edit_view/lib/edit_view/tab_settings.rb +135 -0
- data/plugins/edit_view/plugin.rb +9 -0
- data/plugins/edit_view/spec/edit_view/document/indentation_spec.rb +112 -0
- data/plugins/edit_view/spec/edit_view/document_spec.rb +130 -0
- data/plugins/edit_view/spec/spec_helper.rb +5 -0
- data/plugins/edit_view_swt/lib/edit_view_swt.rb +621 -0
- data/plugins/edit_view_swt/lib/edit_view_swt/document.rb +224 -0
- data/plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb +50 -0
- data/plugins/edit_view_swt/lib/edit_view_swt/word_movement.rb +68 -0
- data/plugins/edit_view_swt/plugin.rb +9 -0
- data/plugins/edit_view_swt/spec/edit_view_swt/word_movement_spec.rb +29 -0
- data/plugins/edit_view_swt/spec/spec_helper.rb +5 -0
- data/plugins/encryption/encryption.rb +52 -0
- data/plugins/encryption/ezcrypto.rb +652 -0
- data/plugins/encryption/jarmor-1.1.jar +0 -0
- data/plugins/encryption/plugin.rb +9 -0
- data/plugins/execute_current_tab/lib/execute_current_tab.rb +68 -0
- data/plugins/execute_current_tab/plugin.rb +8 -0
- data/plugins/help/lib/help.rb +64 -0
- data/plugins/help/lib/help/help_tab.rb +11 -0
- data/plugins/help/lib/help/view_controller.rb +30 -0
- data/plugins/help/plugin.rb +9 -0
- data/plugins/help/views/default.css +31 -0
- data/plugins/help/views/index.html.erb +41 -0
- data/plugins/help/views/redcar_small_icon.png +0 -0
- data/plugins/html_view/assets/blueprint/ie.css +35 -0
- data/plugins/html_view/assets/blueprint/print.css +29 -0
- data/plugins/html_view/assets/blueprint/screen.css +257 -0
- data/plugins/html_view/assets/blueprint/src/forms.css +65 -0
- data/plugins/html_view/assets/blueprint/src/grid.css +281 -0
- data/plugins/html_view/assets/blueprint/src/grid.png +0 -0
- data/plugins/html_view/assets/blueprint/src/ie.css +76 -0
- data/plugins/html_view/assets/blueprint/src/print.css +85 -0
- data/plugins/html_view/assets/blueprint/src/reset.css +38 -0
- data/plugins/html_view/assets/blueprint/src/typography.css +106 -0
- data/plugins/html_view/assets/jquery-1.4.min.js +151 -0
- data/plugins/html_view/assets/json2.js +476 -0
- data/plugins/html_view/assets/redcar.css +44 -0
- data/plugins/html_view/features/browser_bar.feature +47 -0
- data/plugins/html_view/features/fixtures/other.html +1 -0
- data/plugins/html_view/features/fixtures/sample.html +1 -0
- data/plugins/html_view/features/step_definitions/html_view_steps.rb +64 -0
- data/plugins/html_view/features/step_definitions/web_view_steps.rb +12 -0
- data/plugins/html_view/features/support/env.rb +27 -0
- data/plugins/html_view/features/web_preview.feature +21 -0
- data/plugins/html_view/lib/html_controller.rb +50 -0
- data/plugins/html_view/lib/html_view.rb +170 -0
- data/plugins/html_view/lib/html_view/browser_bar.rb +82 -0
- data/plugins/html_view/lib/html_view/commands.rb +64 -0
- data/plugins/html_view/lib/html_view/default_controller.rb +23 -0
- data/plugins/html_view/lib/html_view/html_tab.rb +40 -0
- data/plugins/html_view/plugin.rb +13 -0
- data/plugins/html_view/views/default.css +117 -0
- data/plugins/html_view/views/index.html.erb +5 -0
- data/plugins/html_view/views/watermark-48.png +0 -0
- data/plugins/java/features/fixtures/lib/classes.jar +0 -0
- data/plugins/java/features/fixtures/test.java +0 -0
- data/plugins/java/features/support/env.rb +27 -0
- data/plugins/java/features/syntax_check_java.feature +86 -0
- data/plugins/java/lib/syntax_check/java.rb +86 -0
- data/plugins/java/plugin.rb +7 -0
- data/plugins/key_bindings/lib/key_bindings.rb +34 -0
- data/plugins/key_bindings/plugin.rb +8 -0
- data/plugins/key_bindings/spec/spec_helper.rb +5 -0
- data/plugins/line_tools/features/clear_line.feature +25 -0
- data/plugins/line_tools/features/kill_line.feature +25 -0
- data/plugins/line_tools/features/lower_text.feature +54 -0
- data/plugins/line_tools/features/raise_text.feature +50 -0
- data/plugins/line_tools/features/replace_line.feature +33 -0
- data/plugins/line_tools/features/step_definitions/line_tools_steps.rb +23 -0
- data/plugins/line_tools/features/support/env.rb +0 -0
- data/plugins/line_tools/features/trim_line.feature +73 -0
- data/plugins/line_tools/lib/line_tools.rb +217 -0
- data/plugins/line_tools/plugin.rb +9 -0
- data/plugins/macros/features/block_selection_in_macros.feature +48 -0
- data/plugins/macros/features/predictive_macros.feature +79 -0
- data/plugins/macros/features/record_and_run_macro.feature +87 -0
- data/plugins/macros/features/step_definitions/macro_steps.rb +11 -0
- data/plugins/macros/features/step_definitions/prediction_steps.rb +8 -0
- data/plugins/macros/features/support/env.rb +0 -0
- data/plugins/macros/lib/macros.rb +167 -0
- data/plugins/macros/lib/macros/action_sequence.rb +30 -0
- data/plugins/macros/lib/macros/commands.rb +108 -0
- data/plugins/macros/lib/macros/macro.rb +37 -0
- data/plugins/macros/lib/macros/manager_controller.rb +67 -0
- data/plugins/macros/lib/macros/predictive/document_controller.rb +69 -0
- data/plugins/macros/lib/macros/predictive/sequence_finder.rb +112 -0
- data/plugins/macros/plugin.rb +9 -0
- data/plugins/macros/spec/macros/predictive/sequence_finder_spec.rb +142 -0
- data/plugins/macros/spec/spec_helper.rb +6 -0
- data/plugins/macros/views/macro_manager.html.erb +92 -0
- data/plugins/my_plugin/lib/my_plugin.rb +47 -0
- data/plugins/my_plugin/plugin.rb +8 -0
- data/plugins/open_default_app/lib/open_default_app.rb +61 -0
- data/plugins/open_default_app/plugin.rb +8 -0
- data/plugins/open_default_app/screenshot.png +0 -0
- data/plugins/outline_view/features/outline_view.feature +79 -0
- data/plugins/outline_view/features/step_definitions/outline_steps.rb +45 -0
- data/plugins/outline_view/lib/outline_view.rb +66 -0
- data/plugins/outline_view/lib/outline_view/commands.rb +13 -0
- data/plugins/outline_view/plugin.rb +10 -0
- data/plugins/outline_view/spec/fixtures/some_project/javascript.js +10 -0
- data/plugins/outline_view/spec/fixtures/some_project/nothing_to_see.rb +0 -0
- data/plugins/outline_view/spec/fixtures/some_project/one_lonely_class.rb +2 -0
- data/plugins/outline_view/spec/fixtures/some_project/similar_names.rb +18 -0
- data/plugins/outline_view/spec/fixtures/some_project/something_fancy.rb +736 -0
- data/plugins/outline_view/spec/fixtures/some_project/trailing_space.rb +5 -0
- data/plugins/outline_view_swt/lib/outline_view_swt.rb +79 -0
- data/plugins/outline_view_swt/plugin.rb +7 -0
- data/plugins/pair_highlighter/lib/pair_highlighter.rb +34 -0
- data/plugins/pair_highlighter/lib/pair_highlighter/document_controller.rb +185 -0
- data/plugins/pair_highlighter/plugin.rb +9 -0
- data/plugins/plugin_manager_ui/lib/plugin_manager_ui.rb +122 -0
- data/plugins/plugin_manager_ui/plugin.rb +13 -0
- data/plugins/plugin_manager_ui/views/index.html.erb +62 -0
- data/plugins/project/features/close_directory_tree.feature +28 -0
- data/plugins/project/features/find_file.feature +119 -0
- data/plugins/project/features/highlight_focussed_tab.feature +53 -0
- data/plugins/project/features/move_and_rename_files.feature +25 -0
- data/plugins/project/features/open_and_save_files.feature +85 -0
- data/plugins/project/features/open_directory_tree.feature +93 -0
- data/plugins/project/features/refresh_directory_tree.feature +44 -0
- data/plugins/project/features/step_definitions/directory_steps.rb +35 -0
- data/plugins/project/features/step_definitions/drb_steps.rb +40 -0
- data/plugins/project/features/step_definitions/file_steps.rb +66 -0
- data/plugins/project/features/step_definitions/find_file_steps.rb +7 -0
- data/plugins/project/features/step_definitions/project_tree_steps.rb +7 -0
- data/plugins/project/features/sub_project.feature +15 -0
- data/plugins/project/features/support/env.rb +35 -0
- data/plugins/project/features/watch_for_modified_files.feature +109 -0
- data/plugins/project/lib/project.rb +266 -0
- data/plugins/project/lib/project/adapters/local.rb +82 -0
- data/plugins/project/lib/project/adapters/remote.rb +96 -0
- data/plugins/project/lib/project/adapters/remote_protocols/ftp.rb +93 -0
- data/plugins/project/lib/project/adapters/remote_protocols/protocol.rb +94 -0
- data/plugins/project/lib/project/adapters/remote_protocols/sftp.rb +181 -0
- data/plugins/project/lib/project/commands.rb +449 -0
- data/plugins/project/lib/project/dir_controller.rb +275 -0
- data/plugins/project/lib/project/dir_mirror.rb +176 -0
- data/plugins/project/lib/project/drb_service.rb +86 -0
- data/plugins/project/lib/project/file_list.rb +164 -0
- data/plugins/project/lib/project/file_mirror.rb +85 -0
- data/plugins/project/lib/project/find_file_dialog.rb +118 -0
- data/plugins/project/lib/project/find_recent_dialog.rb +30 -0
- data/plugins/project/lib/project/manager.rb +545 -0
- data/plugins/project/lib/project/project_tree_controller.rb +24 -0
- data/plugins/project/lib/project/recent.rb +64 -0
- data/plugins/project/lib/project/sub_project.rb +17 -0
- data/plugins/project/lib/project/support/recycle.js +2 -0
- data/plugins/project/lib/project/support/trash.rb +73 -0
- data/plugins/project/plugin.rb +11 -0
- data/plugins/project/spec/fixture_helper.rb +30 -0
- data/plugins/project/spec/project/adapters/remote_protocols/ftp_spec.rb +75 -0
- data/plugins/project/spec/project/adapters/remote_protocols/sftp_spec.rb +121 -0
- data/plugins/project/spec/project/adapters/remote_spec.rb +136 -0
- data/plugins/project/spec/project/dir_mirror_spec.rb +65 -0
- data/plugins/project/spec/project/file_list_spec.rb +151 -0
- data/plugins/project/spec/project/file_mirror_spec.rb +97 -0
- data/plugins/project/spec/spec_helper.rb +26 -0
- data/plugins/project/views/bulk_rename.html.erb +162 -0
- data/plugins/project_search/features/support/env.rb +6 -0
- data/plugins/project_search/features/word_search.feature +34 -0
- data/plugins/project_search/lib/project_search.rb +82 -0
- data/plugins/project_search/lib/project_search/binary_data_detector.rb +46 -0
- data/plugins/project_search/lib/project_search/commands.rb +50 -0
- data/plugins/project_search/lib/project_search/hit.rb +21 -0
- data/plugins/project_search/lib/project_search/images/spinner.gif +0 -0
- data/plugins/project_search/lib/project_search/lucene_index.rb +81 -0
- data/plugins/project_search/lib/project_search/lucene_refresh.rb +22 -0
- data/plugins/project_search/lib/project_search/project.rb +14 -0
- data/plugins/project_search/lib/project_search/query.rb +29 -0
- data/plugins/project_search/lib/project_search/stylesheets/style.css +279 -0
- data/plugins/project_search/lib/project_search/views/_file.html.erb +58 -0
- data/plugins/project_search/lib/project_search/views/index.html.erb +156 -0
- data/plugins/project_search/lib/project_search/word_search.rb +143 -0
- data/plugins/project_search/lib/project_search/word_search_controller.rb +219 -0
- data/plugins/project_search/plugin.rb +8 -0
- data/plugins/project_search/spec/fixtures/project/binary_file.bin +0 -0
- data/plugins/project_search/spec/fixtures/project/foo.txt +43 -0
- data/plugins/project_search/spec/fixtures/project/qux.rb +3 -0
- data/plugins/project_search/spec/project_search/binary_data_detector_spec.rb +24 -0
- data/plugins/project_search/spec/project_search/word_search_spec.rb +157 -0
- data/plugins/project_search/spec/spec_helper.rb +27 -0
- data/plugins/redcar/features/alter_font_size.feature +26 -0
- data/plugins/redcar/features/goto_line_command.feature +20 -0
- data/plugins/redcar/features/step_definitions/env.rb +5 -0
- data/plugins/redcar/features/step_definitions/font_steps.rb +34 -0
- data/plugins/redcar/features/text_editing.feature +34 -0
- data/plugins/redcar/features/text_navigation.feature +30 -0
- data/plugins/redcar/plugin.rb +17 -0
- data/plugins/redcar/redcar.rb +1097 -0
- data/plugins/redcar_debug/lib/redcar_debug.rb +91 -0
- data/plugins/redcar_debug/plugin.rb +8 -0
- data/plugins/redcar_debug/views/history.html.erb +34 -0
- data/plugins/redcar_debug/views/index.html.erb +36 -0
- data/plugins/repl/features/command_editing.feature +55 -0
- data/plugins/repl/features/command_history.feature +75 -0
- data/plugins/repl/features/step_definitions/repl_steps.rb +19 -0
- data/plugins/repl/features/support/env.rb +24 -0
- data/plugins/repl/features/support/fake_repl.rb +16 -0
- data/plugins/repl/lib/repl.rb +40 -0
- data/plugins/repl/lib/repl/repl_command.rb +20 -0
- data/plugins/repl/lib/repl/repl_mirror.rb +255 -0
- data/plugins/repl/lib/repl/repl_tab.rb +154 -0
- data/plugins/repl/plugin.rb +8 -0
- data/plugins/repl/spec/repl/repl_mirror_spec.rb +72 -0
- data/plugins/repl/spec/spec_helper.rb +5 -0
- data/plugins/repl_swt/lib/repl_swt.rb +7 -0
- data/plugins/repl_swt/lib/repl_swt/key_listener.rb +43 -0
- data/plugins/repl_swt/plugin.rb +8 -0
- data/plugins/ruby/features/fixtures/test.rb +0 -0
- data/plugins/ruby/features/support/env.rb +4 -0
- data/plugins/ruby/features/syntax_check_ruby.feature +26 -0
- data/plugins/ruby/lib/ruby.rb +35 -0
- data/plugins/ruby/lib/ruby/repl_mirror.rb +46 -0
- data/plugins/ruby/lib/ruby/syntax_checker.rb +30 -0
- data/plugins/ruby/plugin.rb +8 -0
- data/plugins/ruby/spec/ruby/repl_mirror_spec.rb +202 -0
- data/plugins/ruby/spec/spec_helper.rb +5 -0
- data/plugins/runnables/features/command_tree.feature +63 -0
- data/plugins/runnables/features/file_runner_input.feature +21 -0
- data/plugins/runnables/features/parameter_input.feature +43 -0
- data/plugins/runnables/features/run_alternate_command.feature +15 -0
- data/plugins/runnables/features/run_command_tab.feature +47 -0
- data/plugins/runnables/features/step_definitions/runnable_steps.rb +28 -0
- data/plugins/runnables/features/support/env.rb +124 -0
- data/plugins/runnables/lib/runnables.rb +180 -0
- data/plugins/runnables/lib/runnables/command_output_controller.rb +183 -0
- data/plugins/runnables/lib/runnables/commands.rb +82 -0
- data/plugins/runnables/lib/runnables/output_processor.rb +74 -0
- data/plugins/runnables/lib/runnables/running_process_checker.rb +34 -0
- data/plugins/runnables/lib/runnables/tree_mirror/nodes/runnable.rb +62 -0
- data/plugins/runnables/lib/runnables/tree_mirror/nodes/runnable_group.rb +45 -0
- data/plugins/runnables/lib/runnables/tree_mirror/nodes/runnable_type_group.rb +30 -0
- data/plugins/runnables/lib/runnables/tree_mirror/tree_controller.rb +36 -0
- data/plugins/runnables/lib/runnables/tree_mirror/tree_mirror.rb +66 -0
- data/plugins/runnables/plugin.rb +9 -0
- data/plugins/runnables/spec/runnables/output_processor_spec.rb +57 -0
- data/plugins/runnables/spec/spec_helper.rb +5 -0
- data/plugins/runnables/views/basic_ansi.css +34 -0
- data/plugins/runnables/views/color_tester.html +50 -0
- data/plugins/runnables/views/command_output.html.erb +32 -0
- data/plugins/runnables/views/default.css +79 -0
- data/plugins/runnables/views/indicator.gif +0 -0
- data/plugins/runnables/views/redcar_small_icon.png +0 -0
- data/plugins/runnables/views/reset.css +53 -0
- data/plugins/runnables/views/running_test.html +41 -0
- data/plugins/runnables/views/wedgeDown.png +0 -0
- data/plugins/runnables/views/wedgeRight.png +0 -0
- data/plugins/scm/lib/scm.rb +296 -0
- data/plugins/scm/lib/scm/commands.rb +48 -0
- data/plugins/scm/lib/scm/commit_mirror.rb +72 -0
- data/plugins/scm/lib/scm/diff_mirror.rb +31 -0
- data/plugins/scm/lib/scm/errors.rb +8 -0
- data/plugins/scm/lib/scm/model.rb +275 -0
- data/plugins/scm/lib/scm/scm_changes_controller.rb +107 -0
- data/plugins/scm/lib/scm/scm_changes_mirror.rb +51 -0
- data/plugins/scm/lib/scm/scm_changes_mirror/change.rb +63 -0
- data/plugins/scm/lib/scm/scm_changes_mirror/changes_node.rb +47 -0
- data/plugins/scm/lib/scm/scm_changes_mirror/drag_controller.rb +78 -0
- data/plugins/scm/lib/scm/scm_commits_controller.rb +49 -0
- data/plugins/scm/lib/scm/scm_commits_mirror.rb +36 -0
- data/plugins/scm/lib/scm/scm_commits_mirror/commit.rb +26 -0
- data/plugins/scm/lib/scm/scm_commits_mirror/commits_node.rb +38 -0
- data/plugins/scm/plugin.rb +8 -0
- data/plugins/scm/spec/spec_helper.rb +5 -0
- data/plugins/scm_git/lib/scm_git.rb +543 -0
- data/plugins/scm_git/lib/scm_git/change.rb +137 -0
- data/plugins/scm_git/lib/scm_git/commit.rb +18 -0
- data/plugins/scm_git/lib/scm_git/config_file.rb +31 -0
- data/plugins/scm_git/plugin.rb +7 -0
- data/plugins/scm_hg/lib/scm_hg.rb +30 -0
- data/plugins/scm_hg/plugin.rb +7 -0
- data/plugins/scm_svn/LICENSE +48 -0
- data/plugins/scm_svn/features/add_and_commit.feature +18 -0
- data/plugins/scm_svn/features/checkout.feature +5 -0
- data/plugins/scm_svn/features/edit_and_index.feature +12 -0
- data/plugins/scm_svn/features/ignore_files.feature +14 -0
- data/plugins/scm_svn/features/merge.feature +34 -0
- data/plugins/scm_svn/features/resolve_conflict.feature +23 -0
- data/plugins/scm_svn/features/revert_and_delete.feature +21 -0
- data/plugins/scm_svn/features/step_definitions/branch_and_merge_steps.rb +27 -0
- data/plugins/scm_svn/features/step_definitions/checkout_steps.rb +25 -0
- data/plugins/scm_svn/features/step_definitions/edit_and_index_steps.rb +50 -0
- data/plugins/scm_svn/features/step_definitions/scm_svn_steps.rb +57 -0
- data/plugins/scm_svn/features/support/env.rb +71 -0
- data/plugins/scm_svn/features/switch_branches.feature +53 -0
- data/plugins/scm_svn/features/update.feature +16 -0
- data/plugins/scm_svn/lib/scm_svn.rb +445 -0
- data/plugins/scm_svn/lib/scm_svn/change.rb +116 -0
- data/plugins/scm_svn/plugin.rb +7 -0
- data/plugins/snippets/features/snippet_indenting.feature +87 -0
- data/plugins/snippets/features/snippets.feature +398 -0
- data/plugins/snippets/features/step_definitions/snippet_steps.rb +16 -0
- data/plugins/snippets/features/support/env.rb +1 -0
- data/plugins/snippets/lib/snippets.rb +111 -0
- data/plugins/snippets/lib/snippets/document_controller.rb +591 -0
- data/plugins/snippets/lib/snippets/explorer.rb +48 -0
- data/plugins/snippets/lib/snippets/tab_handler.rb +117 -0
- data/plugins/snippets/plugin.rb +9 -0
- data/plugins/splash_screen/plugin.rb +8 -0
- data/plugins/splash_screen/splash_screen.rb +62 -0
- data/plugins/strip_trailing_spaces/features/fixtures/test.txt +3 -0
- data/plugins/strip_trailing_spaces/features/strip_trailing_spaces.feature +34 -0
- data/plugins/strip_trailing_spaces/lib/strip_trailing_spaces.rb +60 -0
- data/plugins/strip_trailing_spaces/plugin.rb +8 -0
- data/plugins/syntax_check/README +6 -0
- data/plugins/syntax_check/features/step_definitions/syntax_check_steps.rb +11 -0
- data/plugins/syntax_check/features/support/env.rb +3 -0
- data/plugins/syntax_check/lib/syntax_check.rb +100 -0
- data/plugins/syntax_check/lib/syntax_check/annotation.rb +61 -0
- data/plugins/syntax_check/lib/syntax_check/checker.rb +47 -0
- data/plugins/syntax_check/lib/syntax_check/error.rb +24 -0
- data/plugins/syntax_check/plugin.rb +7 -0
- data/plugins/task_manager/lib/task_manager.rb +30 -0
- data/plugins/task_manager/plugin.rb +11 -0
- data/plugins/task_manager/views/index.html.erb +70 -0
- data/plugins/test_runner/lib/test_runner.rb +40 -0
- data/plugins/test_runner/lib/test_runner/jasmine_test_runner.rb +15 -0
- data/plugins/test_runner/lib/test_runner/rspec_runner.rb +20 -0
- data/plugins/test_runner/lib/test_runner/run_test_command.rb +63 -0
- data/plugins/test_runner/lib/test_runner/runnable_test_runner.rb +42 -0
- data/plugins/test_runner/plugin.rb +8 -0
- data/plugins/test_runner/spec/run_test_command_spec.rb +51 -0
- data/plugins/test_runner/spec/spec_helper.rb +5 -0
- data/plugins/textmate/features/bundle_tree.feature +23 -0
- data/plugins/textmate/features/step_definitions/tree_steps.rb +57 -0
- data/plugins/textmate/features/support/env.rb +19 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/If.tmSnippet +18 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/If__Else.tmSnippet +20 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Include.tmSnippet +16 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Loop.tmSnippet +18 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Unless.tmSnippet +18 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/Var.tmSnippet +16 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/Snippets/next_If__Else.tmSnippet +20 -0
- data/plugins/textmate/features/support/test_bundle.tmbundle/info.plist +26 -0
- data/plugins/textmate/lib/textmate.rb +202 -0
- data/plugins/textmate/lib/textmate/bundle.rb +100 -0
- data/plugins/textmate/lib/textmate/commands.rb +79 -0
- data/plugins/textmate/lib/textmate/environment.rb +76 -0
- data/plugins/textmate/lib/textmate/plist.rb +80 -0
- data/plugins/textmate/lib/textmate/preference.rb +125 -0
- data/plugins/textmate/lib/textmate/snippet.rb +47 -0
- data/plugins/textmate/lib/textmate/tree_mirror.rb +206 -0
- data/plugins/textmate/plugin.rb +8 -0
- data/plugins/textmate/views/installed_bundles.html.erb +24 -0
- data/plugins/todo_list/README.md +22 -0
- data/plugins/todo_list/features/support/env.rb +8 -0
- data/plugins/todo_list/features/todo_list.feature +26 -0
- data/plugins/todo_list/lib/todo_list.rb +49 -0
- data/plugins/todo_list/lib/todo_list/file_parser.rb +58 -0
- data/plugins/todo_list/lib/todo_list/todo_controller.rb +99 -0
- data/plugins/todo_list/plugin.rb +11 -0
- data/plugins/todo_list/spec/fixtures/project/FIXME.file +3 -0
- data/plugins/todo_list/spec/fixtures/project/NOTE.ignored.file +1 -0
- data/plugins/todo_list/spec/fixtures/project/OPTIMIZE_colon.file +1 -0
- data/plugins/todo_list/spec/fixtures/project/XXX.ignored +1 -0
- data/plugins/todo_list/spec/fixtures/project/ignored_directory/TODO.file +2 -0
- data/plugins/todo_list/spec/fixtures/settings.rb +11 -0
- data/plugins/todo_list/spec/spec_helper.rb +6 -0
- data/plugins/todo_list/spec/todo_list/file_parser_spec.rb +35 -0
- data/plugins/todo_list/views/default.css +15 -0
- data/plugins/todo_list/views/index.html.erb +19 -0
- data/plugins/todo_list/views/redcar_small_icon.png +0 -0
- data/plugins/tree_view_swt/lib/tree_view_swt.rb +496 -0
- data/plugins/tree_view_swt/plugin.rb +9 -0
- data/plugins/web_bookmarks/Screenshot.png +0 -0
- data/plugins/web_bookmarks/features/bookmark.feature +37 -0
- data/plugins/web_bookmarks/features/fixtures/other.html +1 -0
- data/plugins/web_bookmarks/features/fixtures/sample.html +1 -0
- data/plugins/web_bookmarks/features/step_definitions/web_steps.rb +4 -0
- data/plugins/web_bookmarks/features/support/env.rb +26 -0
- data/plugins/web_bookmarks/lib/web_bookmarks.rb +49 -0
- data/plugins/web_bookmarks/lib/web_bookmarks/bookmark.rb +52 -0
- data/plugins/web_bookmarks/lib/web_bookmarks/commands.rb +65 -0
- data/plugins/web_bookmarks/lib/web_bookmarks/tree.rb +74 -0
- data/plugins/web_bookmarks/plugin.rb +10 -0
- metadata +937 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
|
|
2
|
+
module Redcar
|
|
3
|
+
module Scm
|
|
4
|
+
class ToggleScmTreeCommand < Command
|
|
5
|
+
sensitize :open_scm
|
|
6
|
+
|
|
7
|
+
def execute(options)
|
|
8
|
+
raise "ToggleScmTree requires a class value." if not options[:value]
|
|
9
|
+
|
|
10
|
+
command = options[:value][0]
|
|
11
|
+
klass = options[:value][1]
|
|
12
|
+
project = Project::Manager.focussed_project
|
|
13
|
+
info = Scm::Manager.project_repositories[project]
|
|
14
|
+
tree = info['trees'].find {|t| t.tree_mirror.is_a?(klass[0])}
|
|
15
|
+
|
|
16
|
+
if tree
|
|
17
|
+
info['trees'].delete tree
|
|
18
|
+
focussed = project.window.treebook.focussed_tree == tree
|
|
19
|
+
project.window.treebook.remove_tree(tree)
|
|
20
|
+
|
|
21
|
+
# return focus to the project module if we were currently focussed
|
|
22
|
+
project.window.treebook.focus_tree(project.tree) if focussed
|
|
23
|
+
elsif info['repo'].supported_commands.include? command
|
|
24
|
+
tree = Tree.new(*klass.map{|k| k.new(info['repo'])})
|
|
25
|
+
project.window.treebook.add_tree(tree)
|
|
26
|
+
tree.tree_mirror.top.each {|n| tree.expand(n)}
|
|
27
|
+
info['trees'].push tree
|
|
28
|
+
else
|
|
29
|
+
Application::Dialog.message_box("Sorry, but your SCM doesn't support this tree.")
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
class RemoteInitCommand < Command
|
|
35
|
+
def execute(options)
|
|
36
|
+
raise "No scm module given for remote init" unless options[:value]
|
|
37
|
+
m = options[:value]
|
|
38
|
+
dialog = Redcar::ApplicationSWT::Dialogs::TextAndFileDialog.new(Redcar.app.focussed_window.controller.shell)
|
|
39
|
+
dialog.set_text(m.translations[:remote_init],m.translations[:remote_init_path],m.translations[:remote_init_target])
|
|
40
|
+
result = dialog.open
|
|
41
|
+
if result
|
|
42
|
+
Redcar::Project::Manager.open_project_for_path(result[:directory])
|
|
43
|
+
m.remote_init(result[:text].to_s,result[:directory].to_s)
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
|
|
2
|
+
module Redcar
|
|
3
|
+
module Scm
|
|
4
|
+
class CommitMirror
|
|
5
|
+
include Redcar::Document::Mirror
|
|
6
|
+
|
|
7
|
+
def initialize(repo, change=nil)
|
|
8
|
+
@repo = repo
|
|
9
|
+
@change = change
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def title
|
|
13
|
+
"Commit message"
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def exists?
|
|
17
|
+
true
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
# Commits don't change till they are commited, at which point
|
|
21
|
+
# they are closed.
|
|
22
|
+
def changed?
|
|
23
|
+
false
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def read
|
|
27
|
+
if @change
|
|
28
|
+
@repo.commit_message(@change)
|
|
29
|
+
else
|
|
30
|
+
@repo.commit_message
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def commit(contents)
|
|
35
|
+
# filter the contents for comments and generally clean it up
|
|
36
|
+
contents = contents.split("\n").map{|l| l[0,1] == "#" ? "" : l}.join("\n").rstrip
|
|
37
|
+
|
|
38
|
+
# throw an error if our spring clean left nothing
|
|
39
|
+
raise "Empty commit message. Commit aborted." if contents.empty?
|
|
40
|
+
|
|
41
|
+
@repo.commit!(contents, @change)
|
|
42
|
+
|
|
43
|
+
notify_listeners(:change)
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
class CommitChangesCommand < Command
|
|
47
|
+
sensitize :open_commit_tab
|
|
48
|
+
|
|
49
|
+
def execute
|
|
50
|
+
tab = Redcar.app.focussed_window.focussed_notebook.focussed_tab
|
|
51
|
+
begin
|
|
52
|
+
doc = tab.edit_view.document
|
|
53
|
+
doc.mirror.commit(doc.to_s)
|
|
54
|
+
rescue
|
|
55
|
+
Application::Dialog.message_box($!.message)
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
class CreateCommitCommand < Command
|
|
61
|
+
sensitize :open_scm
|
|
62
|
+
|
|
63
|
+
def execute
|
|
64
|
+
project = Project::Manager.focussed_project
|
|
65
|
+
info = Scm::Manager.project_repositories[project]
|
|
66
|
+
|
|
67
|
+
Scm::Manager.open_commit_tab(info['repo'])
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
|
|
2
|
+
module Redcar
|
|
3
|
+
module Scm
|
|
4
|
+
class DiffMirror
|
|
5
|
+
include Redcar::Document::Mirror
|
|
6
|
+
|
|
7
|
+
def initialize(change, diff)
|
|
8
|
+
@change = change
|
|
9
|
+
@diff = diff
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def title
|
|
13
|
+
"Diff: #{File.basename(@change.path)}"
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def exists?
|
|
17
|
+
true
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
# Diffs don't change. Each time the tree is refreshed, new Change
|
|
21
|
+
# objects are created.
|
|
22
|
+
def changed?
|
|
23
|
+
false
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def read
|
|
27
|
+
@diff
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
|
|
2
|
+
module Redcar
|
|
3
|
+
module Scm
|
|
4
|
+
# This class acts as an interface definition for SCM's.
|
|
5
|
+
# Override as much as possible that is supported by your SCM of choice.
|
|
6
|
+
module Model
|
|
7
|
+
# Returns a string giving the name of the SCM
|
|
8
|
+
def repository_type
|
|
9
|
+
""
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# REQUIRED. Checks if a given directory is a repository supported by
|
|
13
|
+
# the SCM.
|
|
14
|
+
def repository?(path)
|
|
15
|
+
raise "Scm.repository? not implemented."
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
# REQUIRED. Initialises the SCM with a path. This path should be used
|
|
19
|
+
# for all future interactions. Repeated calls to load should be treated
|
|
20
|
+
# as a breaking error.
|
|
21
|
+
def load(path)
|
|
22
|
+
raise "Scm.load not implemented."
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# RECOMMENDED. If we call this method, than we expect the repository to
|
|
26
|
+
# return all fresh data for any subsequent calls. Any caching should be
|
|
27
|
+
# reset.
|
|
28
|
+
def refresh
|
|
29
|
+
nil
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# REQUIRED to be useful. If no commands are supported, than the SCM will
|
|
33
|
+
# will essentially be useless. These commands loosely translate to the
|
|
34
|
+
# common operations of a distributed CVS.
|
|
35
|
+
#
|
|
36
|
+
# Supported values to date:
|
|
37
|
+
# * :init
|
|
38
|
+
# * :remote_init
|
|
39
|
+
# * :push
|
|
40
|
+
# * :pull
|
|
41
|
+
# * :pull_targetted
|
|
42
|
+
# * :commit
|
|
43
|
+
# * :index
|
|
44
|
+
# * :switch_branch
|
|
45
|
+
# * :merge
|
|
46
|
+
#
|
|
47
|
+
# Note about non-distributed CVS's: If your CVS doesn't support local
|
|
48
|
+
# commits, ie. subversion, then implement :commit and :pull, and then
|
|
49
|
+
# provide translations via the translations method. :remote_init can
|
|
50
|
+
# fill the gap for initializing a non-distributed VCS.
|
|
51
|
+
def supported_commands
|
|
52
|
+
[]
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# This method allows SCM's to override the default names for different
|
|
56
|
+
# commands and bring them into line with the normal vocabulary in their
|
|
57
|
+
# respective worlds. ie, SVN calls :commit and :pull "checkin" and
|
|
58
|
+
# "checkout" respectively. If you overload this method, you need to
|
|
59
|
+
# provide names for all commands you support with supported_commands
|
|
60
|
+
def translations
|
|
61
|
+
{
|
|
62
|
+
:init => "Initialise " + repository_type.capitalize,
|
|
63
|
+
:remote_init => "Initialize "+ repository_type.capitalize+" from remote repository",
|
|
64
|
+
:remote_init_path => "Repository URL",
|
|
65
|
+
:remote_init_target => "Target Directory",
|
|
66
|
+
:push => "Push Changesets",
|
|
67
|
+
:unpushed_commits => "Unpushed commits",
|
|
68
|
+
:pull => "Pull Changesets",
|
|
69
|
+
:pull_targetted => "Pull...",
|
|
70
|
+
:commit => "Commit Changes",
|
|
71
|
+
:uncommited_changes => "Uncommited changes",
|
|
72
|
+
:indexed_changes => "Indexed changes",
|
|
73
|
+
:unindexed_changes => "Unindexed changes",
|
|
74
|
+
:index_add => "Add File",
|
|
75
|
+
:index_ignore => "Ignore File",
|
|
76
|
+
:index_ignore_all => "Ignore All %s Files",
|
|
77
|
+
:index_save => "Index Changes",
|
|
78
|
+
:index_unsave => "Revert Index",
|
|
79
|
+
:index_revert => "Revert Changes",
|
|
80
|
+
:index_restore => "Restore File",
|
|
81
|
+
:index_delete => "Delete File",
|
|
82
|
+
:commitable => "Commit Changes to Subproject",
|
|
83
|
+
:switch_branch => "Switch Branch",
|
|
84
|
+
:merge => "Merge...",
|
|
85
|
+
}
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# REQUIRED for :init. Initialise a repository in a given path.
|
|
89
|
+
# Returns false on error.
|
|
90
|
+
def init!(path)
|
|
91
|
+
raise "Scm.init not implemented." if supported_commands.include?(:init)
|
|
92
|
+
nil
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
# REQUIRED for :remote_init. Initialize a repository from
|
|
96
|
+
# a url or file path, like SVN 'checkout' or git 'clone'
|
|
97
|
+
# Returns false on error
|
|
98
|
+
def remote_init(repo_path,target_directory)
|
|
99
|
+
raise "Scm.remote_init not implemented." if supported_commands.include?(:remote_init)
|
|
100
|
+
nil
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
# REQUIRED for :commit if :index is not supported. Returns an
|
|
104
|
+
# array of changes currently waiting for commit.
|
|
105
|
+
#
|
|
106
|
+
# @return [Array<Redcar::Scm::ScmChangesMirror::Change>]
|
|
107
|
+
def uncommited_changes
|
|
108
|
+
raise "Scm.uncommited_changes not implemented." if supported_commands.include?(:commit)
|
|
109
|
+
[]
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
# REQUIRED for :commit if :index is supported. Returns an array
|
|
113
|
+
# of changes currently in the index.
|
|
114
|
+
#
|
|
115
|
+
# @return [Array<Redcar::Scm::ScmChangesMirror::Change>]
|
|
116
|
+
def indexed_changes
|
|
117
|
+
raise "Scm.indexed_changes not implemented." if supported_commands.include?(:commit)
|
|
118
|
+
[]
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
# REQUIRED for :commit if :index is supported. Returns an array
|
|
122
|
+
# of changes currently not in the index.
|
|
123
|
+
#
|
|
124
|
+
# @return [Array<Redcar::Scm::ScmChangesMirror::Change>]
|
|
125
|
+
def unindexed_changes
|
|
126
|
+
raise "Scm.unindexed_changes not implemented." if supported_commands.include?(:commit)
|
|
127
|
+
[]
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
# REQUIRED for :index. Adds a new file to the index.
|
|
131
|
+
def index_add(change)
|
|
132
|
+
raise "Scm.index_add not implemented" if supported_commands.include?(:index)
|
|
133
|
+
nil
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
# REQUIRED for :index. Ignores a new file so it won't show in changes.
|
|
137
|
+
def index_ignore(change)
|
|
138
|
+
raise "Scm.index_ignore not implemented" if supported_commands.include?(:index)
|
|
139
|
+
nil
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
# REQUIRED for :index. Ignores all files with a certain extension so they
|
|
143
|
+
# won't show in changes.
|
|
144
|
+
def index_ignore_all(extension, change)
|
|
145
|
+
raise "Scm.index_ignore_all not implemented" if supported_commands.include?(:index)
|
|
146
|
+
nil
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
# REQUIRED for :index. Reverts a file to its last commited state.
|
|
150
|
+
def index_revert(change)
|
|
151
|
+
raise "Scm.index_revert not implemented" if supported_commands.include?(:index)
|
|
152
|
+
nil
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
# REQUIRED for :index. Reverts a file in the index back to it's
|
|
156
|
+
# last commited state, but leaves the file intact.
|
|
157
|
+
def index_unsave(change)
|
|
158
|
+
raise "Scm.index_unsave not implemented" if supported_commands.include?(:index)
|
|
159
|
+
nil
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
# REQUIRED for :index. Saves changes made to a file in the index.
|
|
163
|
+
def index_save(change)
|
|
164
|
+
raise "Scm.index_save not implemented" if supported_commands.include?(:index)
|
|
165
|
+
nil
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
# REQUIRED for :index. Restores a file to the last known state of
|
|
169
|
+
# the file. This may be from the index, or the last commit.
|
|
170
|
+
def index_restore(change)
|
|
171
|
+
raise "Scm.index_restore not implemented" if supported_commands.include?(:index)
|
|
172
|
+
nil
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
# REQUIRED for :index. Marks a file as deleted in the index.
|
|
176
|
+
def index_delete(change)
|
|
177
|
+
raise "Scm.index_delete not implemented" if supported_commands.include?(:index)
|
|
178
|
+
nil
|
|
179
|
+
end
|
|
180
|
+
|
|
181
|
+
# REQUIRED for :commit. Commits the currently indexed changes
|
|
182
|
+
# in the subproject.
|
|
183
|
+
#
|
|
184
|
+
# @param change Required for :commitable changes. Ignore if
|
|
185
|
+
# you don't provide these.
|
|
186
|
+
def commit!(message, change=nil)
|
|
187
|
+
raise "Scm.commit! not implemented." if supported_commands.include?(:index)
|
|
188
|
+
nil
|
|
189
|
+
end
|
|
190
|
+
|
|
191
|
+
# REQUIRED for :commit. Gets a default commit message for the
|
|
192
|
+
# currently indexed changes.
|
|
193
|
+
#
|
|
194
|
+
# @param change Required for :commitable changes. Ignore if
|
|
195
|
+
# you don't provide these.
|
|
196
|
+
def commit_message(change=nil)
|
|
197
|
+
"\n\n# Please enter your commit message above."
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
# REQUIRED for :push. Returns an array of unpushed changesets for
|
|
201
|
+
# a given target.
|
|
202
|
+
#
|
|
203
|
+
# @return [Array<Redcar::Scm::ScmCommitsMirror::Commit>]
|
|
204
|
+
def unpushed_commits(target='')
|
|
205
|
+
raise "Scm.unpushed_commits not implemented." if supported_commands.include?(:push)
|
|
206
|
+
nil
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
# REQUIRED for :push. Pushes all current changesets to the remote
|
|
210
|
+
# repository for the given target only.
|
|
211
|
+
def push!(target='')
|
|
212
|
+
raise "Scm.push! not implemented." if supported_commands.include?(:push)
|
|
213
|
+
nil
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
# RECOMMENDED for :push. Allows to provide a list of targets that
|
|
217
|
+
# can be pushed.
|
|
218
|
+
#
|
|
219
|
+
# @return [Array<Redcar::Scm::ScmCommitsMirror::CommitsNode>]
|
|
220
|
+
def push_targets
|
|
221
|
+
[]
|
|
222
|
+
end
|
|
223
|
+
|
|
224
|
+
# REQUIRED for :pull and :pull_targetted. Pulls all remote changesets from the
|
|
225
|
+
# remote repository.
|
|
226
|
+
#
|
|
227
|
+
# Note: If you only support :pull, you can implement this without the
|
|
228
|
+
# argument. It will never be called with an explicit nil.
|
|
229
|
+
def pull!(remote=nil)
|
|
230
|
+
raise "Scm.pull! not implemented." if supported_commands.include?(:pull)
|
|
231
|
+
nil
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
# REQUIRED for :pull_targetted. Returns an array of pull targets.
|
|
235
|
+
def pull_targets
|
|
236
|
+
raise "Scm.pull_targets not implemented." if supported_commands.include?(:pull_targeted)
|
|
237
|
+
[]
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
# REQUIRED for :switch_branch and :merge. Returns an array of branch names.
|
|
241
|
+
#
|
|
242
|
+
# @return [Array<String>]
|
|
243
|
+
def branches
|
|
244
|
+
raise "Scm.branches not implemented." if supported_commands.include?(:switch_branch) or supported_commands.include?(:merge)
|
|
245
|
+
[]
|
|
246
|
+
end
|
|
247
|
+
|
|
248
|
+
# REQUIRED for :switch_branch. Returns the name of the current branch.
|
|
249
|
+
def current_branch
|
|
250
|
+
raise "Scm.current_branch not implemented." if supported_commands.include?(:switch_branch)
|
|
251
|
+
''
|
|
252
|
+
end
|
|
253
|
+
|
|
254
|
+
# REQUIRED for :switch_branch. Switches to the named branch.
|
|
255
|
+
def switch!(branch)
|
|
256
|
+
raise "Scm.switch! not implemented." if supported_commands.include?(:switch_branch)
|
|
257
|
+
nil
|
|
258
|
+
end
|
|
259
|
+
|
|
260
|
+
# REQUIRED for :merge. Merges the target branch with the current one.
|
|
261
|
+
def merge!(branch)
|
|
262
|
+
raise "Scm.switch! not implemented." if supported_commands.include?(:merge)
|
|
263
|
+
nil
|
|
264
|
+
end
|
|
265
|
+
|
|
266
|
+
# Allows the SCM to provide a custom adapter which is injected into the
|
|
267
|
+
# project instead of old_adapter. This allows interception of file
|
|
268
|
+
# modifications such as move and copy, which you may wish to do via
|
|
269
|
+
# your SCM instead of normal file system operations.
|
|
270
|
+
def adapter(old_adapter)
|
|
271
|
+
nil
|
|
272
|
+
end
|
|
273
|
+
end
|
|
274
|
+
end
|
|
275
|
+
end
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
|
|
2
|
+
module Redcar
|
|
3
|
+
module Scm
|
|
4
|
+
class ScmChangesController
|
|
5
|
+
include Redcar::Tree::Controller
|
|
6
|
+
|
|
7
|
+
COMMAND_MAP = {
|
|
8
|
+
:new => [:index_add, :index_ignore, :index_ignore_all, :index_delete],
|
|
9
|
+
:indexed => [:index_revert, :index_unsave],
|
|
10
|
+
:deleted => [:index_unsave, :index_restore],
|
|
11
|
+
:missing => [:index_delete, :index_restore],
|
|
12
|
+
:changed => [:index_save, :index_revert],
|
|
13
|
+
:unmerged => [:index_save, :index_delete],
|
|
14
|
+
:commitable => [:commit],
|
|
15
|
+
:moved => [:index_unsave],
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
def initialize(repo)
|
|
19
|
+
@repo = repo
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def activated(tree, node)
|
|
23
|
+
if node.respond_to?(:status) and node.status == [:unmerged]
|
|
24
|
+
Project::FileCreateCommitCommand.new(node.path).run
|
|
25
|
+
elsif node.respond_to?(:diff)
|
|
26
|
+
diff = node.diff
|
|
27
|
+
if diff
|
|
28
|
+
tab = Redcar.app.focussed_window.new_tab(Redcar::EditTab)
|
|
29
|
+
edit_view = tab.edit_view
|
|
30
|
+
mirror = Scm::DiffMirror.new(node, diff)
|
|
31
|
+
edit_view.document.mirror = mirror
|
|
32
|
+
edit_view.grammar = "Diff"
|
|
33
|
+
tab.focus
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def drag_controller(tree)
|
|
39
|
+
DragController.new(tree, @repo)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def right_click(tree, node)
|
|
43
|
+
repo = @repo
|
|
44
|
+
|
|
45
|
+
# TODO: In lieu of actually supporting multi-select, make it obvious
|
|
46
|
+
# that we don't.
|
|
47
|
+
if tree.selection.length > 1
|
|
48
|
+
tree.select(node)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
menu = Menu::Builder.build do
|
|
52
|
+
if node.is_a?(Scm::ScmChangesMirror::Change) and repo.supported_commands.include?(:index)
|
|
53
|
+
# commands may end up in the array twice, but include? doesn't care
|
|
54
|
+
commands = node.status.map {|s| COMMAND_MAP[s]}.flatten
|
|
55
|
+
file_extension = File.extname(node.path)
|
|
56
|
+
if file_extension.length > 0
|
|
57
|
+
file_extension = file_extension[1, file_extension.length-1]
|
|
58
|
+
else
|
|
59
|
+
file_extension = nil
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
if (commands.include?(:commit))
|
|
63
|
+
item(repo.translations[:commitable]) { Scm::Manager.open_commit_tab(repo, node) }
|
|
64
|
+
end
|
|
65
|
+
if (commands.include?(:index_add))
|
|
66
|
+
item(repo.translations[:index_add]) { if repo.index_add(node); tree.refresh; end }
|
|
67
|
+
end
|
|
68
|
+
if (commands.include?(:index_ignore))
|
|
69
|
+
item(repo.translations[:index_ignore]) { if repo.index_ignore(node); tree.refresh; end }
|
|
70
|
+
end
|
|
71
|
+
if (file_extension and commands.include?(:index_ignore_all))
|
|
72
|
+
item(repo.translations[:index_ignore_all] % file_extension) {
|
|
73
|
+
if repo.index_ignore_all(file_extension, node)
|
|
74
|
+
tree.refresh
|
|
75
|
+
end
|
|
76
|
+
}
|
|
77
|
+
end
|
|
78
|
+
if (commands.include?(:index_save))
|
|
79
|
+
item(repo.translations[:index_save]) { if repo.index_save(node); tree.refresh; end }
|
|
80
|
+
end
|
|
81
|
+
if (commands.include?(:index_unsave))
|
|
82
|
+
item(repo.translations[:index_unsave]) { if repo.index_unsave(node); tree.refresh; end }
|
|
83
|
+
end
|
|
84
|
+
if (commands.include?(:index_delete))
|
|
85
|
+
item(repo.translations[:index_delete]) { if repo.index_delete(node); tree.refresh; end }
|
|
86
|
+
end
|
|
87
|
+
if (commands.include?(:index_revert))
|
|
88
|
+
item(repo.translations[:index_revert]) { if repo.index_revert(node); tree.refresh; end }
|
|
89
|
+
end
|
|
90
|
+
if (commands.include?(:index_restore))
|
|
91
|
+
item(repo.translations[:index_restore]) { if repo.index_restore(node); tree.refresh; end }
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
separator
|
|
95
|
+
elsif node.is_a?(Scm::ScmChangesMirror::ChangesNode) and node.change_types != :unindexed
|
|
96
|
+
item(repo.translations[:commit]) { Scm::Manager.open_commit_tab(repo) }
|
|
97
|
+
|
|
98
|
+
separator
|
|
99
|
+
end
|
|
100
|
+
item("Refresh", :priority => :last) { repo.refresh; tree.refresh }
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
Application::Dialog.popup_menu(menu, :pointer)
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
end
|