提交 da7cdcb7 编写于 作者: S serge-rider

#5759 "Delete this script" command

上级 936c5267
......@@ -101,12 +101,6 @@ public class CoreMessages extends NLS {
public static String model_navigator_Connection;
public static String model_navigator_Connections;
public static String editor_file_delete_error_title;
public static String editor_file_delete_error_text;
public static String editor_file_delete_this_script;
public static String editor_file_delete_confirm_delete_text;
public static String editor_file_delete_confirm_delete_title;
public static String dialog_about_font;
public static String dialog_about_label_version;
public static String dialog_about_title;
......
......@@ -337,11 +337,6 @@ dialog_view_classpath_title = System Classpath
editor_file_open_in_explorer = Open Folder in Explorer
editor_file_copy_path = Copy File Path
editor_file_rename = Rename File
editor_file_delete_error_title=Can't delete SQL script
editor_file_delete_error_text=Error deleting file: "{0}"
editor_file_delete_this_script=Delete this script
editor_file_delete_confirm_delete_text=Are you sure you want to delete SQL script "{0}" ?
editor_file_delete_confirm_delete_title=Delete SQL script
model_html_read_database_meta_data = Read database metadata
......
......@@ -453,11 +453,6 @@ dialog_view_classpath_title = \u0441\u0438\u0441\u0442\u0435\u043C\u043D\u044B\u
editor_file_open_in_explorer = \u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043F\u0430\u043F\u043A\u0443 \u0432 Explorer
editor_file_copy_path = \u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u0443\u0442\u044C \u043A \u0444\u0430\u0439\u043B\u0443
editor_file_rename = \u041F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C \u0444\u0430\u0439\u043B
editor_file_delete_error_title=\u041D\u0435 \u0443\u0434\u0430\u0435\u0442\u0441\u044F \u0443\u0434\u0430\u043B\u0438\u0442\u044C SQL \u0441\u043A\u0440\u0438\u043F\u0442
editor_file_delete_error_text=\u041E\u0448\u0438\u0431\u043A\u0430 \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u0444\u0430\u0439\u043B\u0430: "{0}"
editor_file_delete_this_script=\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0441\u043A\u0440\u0438\u043F\u0442
editor_file_delete_confirm_delete_text=\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C SQL \u0441\u043A\u0440\u0438\u043F\u0442 "{0}" ?
editor_file_delete_confirm_delete_title=\u0423\u0434\u0430\u043B\u0438\u0442\u044C SQL \u0441\u043A\u0440\u0438\u043F\u0442
runtime_jobs_connect_name=\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435 \u043A "{0}"
runtime_jobs_connect_status_connected=\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u043E
......
......@@ -75,19 +75,19 @@ public class DBeaverStackRenderer extends StackRenderer {
if (inputFile != null) {
{
String deleteText = ActionUtils.findCommandName(SQLEditorCommands.CMD_SQL_DELETE_THIS_SCRIPT);
String shortcut = ActionUtils.findCommandDescription(SQLEditorCommands.CMD_SQL_DELETE_THIS_SCRIPT, workbenchPart.getSite(), true);//$NON-NLS-1$
if (shortcut != null) {
deleteText += "\t" + shortcut;
}
MenuItem menuItemDelete = new MenuItem(menu, SWT.NONE);
menuItemDelete.setText(CoreMessages.editor_file_delete_this_script);
menuItemDelete.setText(deleteText);
menuItemDelete.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
if (UIUtils.confirmAction(CoreMessages.editor_file_delete_confirm_delete_title, NLS.bind(CoreMessages.editor_file_delete_confirm_delete_text, inputFile.getName()))) { //$NON-NLS-3$
try {
inputFile.delete(true, true, new NullProgressMonitor());
} catch (CoreException e1) {
DBWorkbench.getPlatformUI().showError(CoreMessages.editor_file_delete_error_title, NLS.bind(CoreMessages.editor_file_delete_error_text, inputFile.getName(), e1));
}
}
}
ActionUtils.runCommand(SQLEditorCommands.CMD_SQL_DELETE_THIS_SCRIPT, workbenchPart.getSite());
}
});
}
......
......@@ -112,6 +112,8 @@ command.org.jkiss.dbeaver.ui.editors.sql.sync.auto.name=Auto-sync connection wit
command.org.jkiss.dbeaver.ui.editors.sql.sync.auto.description=Auto-sync active connection with database navigator selection
command.org.jkiss.dbeaver.ui.editors.sql.rename.name=Rename SQL Script
command.org.jkiss.dbeaver.ui.editors.sql.rename.description=Rename current SQL script
command.org.jkiss.dbeaver.ui.editors.sql.deleteThisScript.name=Delete this script
command.org.jkiss.dbeaver.ui.editors.sql.deleteThisScript.description=Delete current script file
command.org.jkiss.dbeaver.ui.editors.sql.close.tab.name=Close tab
command.org.jkiss.dbeaver.ui.editors.sql.close.tab.description=Close results tab
......
......@@ -37,6 +37,8 @@ command.org.jkiss.dbeaver.ui.editors.sql.query.prev.name = \u
command.org.jkiss.dbeaver.ui.editors.sql.rename.description = \u041F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C \u0442\u0435\u043A\u0443\u0449\u0438\u0439 SQL \u0441\u043A\u0440\u0438\u043F\u0442
command.org.jkiss.dbeaver.ui.editors.sql.rename.name = \u041F\u0435\u0440\u0435\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u0442\u044C \u0441\u043A\u0440\u0438\u043F\u0442
command.org.jkiss.dbeaver.ui.editors.sql.run.all.rows.description = \u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0438 \u043F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0432\u0441\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F (\u0431\u0435\u0437 \u043E\u0433\u0440\u0430\u043D\u0438\u0447\u0435\u043D\u0438\u044F \u043F\u043E \u0447\u0438\u0441\u043B\u0443 \u0441\u0442\u0440\u043E\u043A)
command.org.jkiss.dbeaver.ui.editors.sql.deleteThisScript.name = \u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0442\u0435\u043A\u0443\u0449\u0438\u0439 \u0444\u0430\u0439\u043B
command.org.jkiss.dbeaver.ui.editors.sql.deleteThisScript.description = \u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0442\u0435\u043A\u0443\u0449\u0438\u0439 \u0444\u0430\u0439\u043B \u0441\u043A\u0440\u0438\u043F\u0442\u0430 SQL
command.org.jkiss.dbeaver.ui.editors.sql.run.all.rows.name = \u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0441\u0435 \u0441\u0442\u0440\u043E\u043A\u0438
command.org.jkiss.dbeaver.ui.editors.sql.run.count.description = \u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0447\u0438\u0441\u043B\u043E \u0441\u0442\u0440\u043E\u043A \u0434\u043B\u044F \u0437\u0430\u043F\u0440\u043E\u0441\u0430 \u043F\u043E\u0434 \u043A\u0443\u0440\u0441\u043E\u0440\u043E\u043C
command.org.jkiss.dbeaver.ui.editors.sql.run.count.name = \u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0447\u0438\u0441\u043B\u043E \u0441\u0442\u0440\u043E\u043A
......
......@@ -255,6 +255,7 @@
<command id="org.jkiss.dbeaver.ui.editors.sql.sync.connection" name="%command.org.jkiss.dbeaver.ui.editors.sql.sync.connection.name" description="%command.org.jkiss.dbeaver.ui.editors.sql.sync.connection.description" categoryId="org.jkiss.dbeaver.core.sql"/>
<command id="org.jkiss.dbeaver.ui.editors.sql.sync.auto" name="%command.org.jkiss.dbeaver.ui.editors.sql.sync.auto.name" description="%command.org.jkiss.dbeaver.ui.editors.sql.sync.auto.description" categoryId="org.jkiss.dbeaver.core.sql"/>
<command id="org.jkiss.dbeaver.ui.editors.sql.rename" name="%command.org.jkiss.dbeaver.ui.editors.sql.rename.name" description="%command.org.jkiss.dbeaver.ui.editors.sql.rename.description" categoryId="org.jkiss.dbeaver.core.sql"/>
<command id="org.jkiss.dbeaver.ui.editors.sql.deleteThisScript" name="%command.org.jkiss.dbeaver.ui.editors.sql.deleteThisScript.name" description="%command.org.jkiss.dbeaver.ui.editors.sql.deleteThisScript.description" categoryId="org.jkiss.dbeaver.core.sql"/>
<command id="org.jkiss.dbeaver.ui.editors.sql.close.tab" name="%command.org.jkiss.dbeaver.ui.editors.sql.close.tab.name" description="%command.org.jkiss.dbeaver.ui.editors.sql.close.tab.description" categoryId="org.jkiss.dbeaver.core.sql"/>
<command id="org.jkiss.dbeaver.ui.editors.sql.gotoMatchingBracket" name="%command.org.jkiss.dbeaver.ui.editors.sql.gotoMatchingBracket.name" description="%command.org.jkiss.dbeaver.ui.editors.sql.gotoMatchingBracket.description" categoryId="org.jkiss.dbeaver.core.sql"/>
<command id="org.jkiss.dbeaver.ui.editors.text.content.format" name="%command.org.jkiss.dbeaver.ui.editors.text.content.format.name" description="%command.org.jkiss.dbeaver.ui.editors.text.content.format.description" categoryId="org.jkiss.dbeaver.core.sql"/>
......@@ -337,6 +338,7 @@
</with>
</enabledWhen>
</handler>
<handler commandId="org.jkiss.dbeaver.ui.editors.sql.deleteThisScript" class="org.jkiss.dbeaver.ui.editors.sql.handlers.DeleteCurrentFileHandler"/>
<!--
<handler commandId="org.eclipse.ui.edit.text.showInformation" class="org.jkiss.dbeaver.ui.editors.sql.handlers.RenameHandler">
<enabledWhen>
......
......@@ -43,6 +43,7 @@ public interface SQLEditorCommands
String CMD_SQL_ASSIST_TEMPLATES = "org.jkiss.dbeaver.ui.editors.sql.assist.templates"; //$NON-NLS-1$
String CMD_SYNC_CONNECTION = "org.jkiss.dbeaver.ui.editors.sql.sync.connection";
String CMD_SQL_RENAME = "org.jkiss.dbeaver.ui.editors.sql.rename";
String CMD_SQL_DELETE_THIS_SCRIPT = "org.jkiss.dbeaver.ui.editors.sql.deleteThisScript";
String CMD_OPEN_FILE = "org.jkiss.dbeaver.ui.editors.sql.open.file"; //$NON-NLS-1$
String CMD_SAVE_FILE = "org.jkiss.dbeaver.ui.editors.sql.save.file"; //$NON-NLS-1$
......
/*
* DBeaver - Universal Database Manager
* Copyright (C) 2010-2019 Serge Rider (serge@jkiss.org)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jkiss.dbeaver.ui.editors.sql.handlers;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.handlers.HandlerUtil;
import org.jkiss.dbeaver.runtime.DBWorkbench;
import org.jkiss.dbeaver.ui.UIUtils;
import org.jkiss.dbeaver.ui.actions.AbstractDataSourceHandler;
import org.jkiss.dbeaver.ui.dialogs.EnterNameDialog;
import org.jkiss.dbeaver.ui.editors.EditorUtils;
import org.jkiss.dbeaver.ui.editors.sql.internal.SQLEditorMessages;
import org.jkiss.dbeaver.utils.RuntimeUtils;
public class DeleteCurrentFileHandler extends AbstractDataSourceHandler {
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
IEditorPart editor = RuntimeUtils.getObjectAdapter(HandlerUtil.getActivePart(event), IEditorPart.class);
if (editor == null) {
log.error("No active SQL editor");
return null;
}
IFile file = EditorUtils.getFileFromInput(editor.getEditorInput());
if (file == null) {
DBWorkbench.getPlatformUI().showError("Rename", "Can't rename - no source file");
return null;
}
if (UIUtils.confirmAction(SQLEditorMessages.editor_file_delete_confirm_delete_title, NLS.bind(SQLEditorMessages.editor_file_delete_confirm_delete_text, file.getName()))) {
try {
file.delete(true, true, new NullProgressMonitor());
} catch (CoreException e1) {
DBWorkbench.getPlatformUI().showError(SQLEditorMessages.editor_file_delete_error_title, NLS.bind(SQLEditorMessages.editor_file_delete_error_text, file.getName(), e1));
}
}
return null;
}
}
\ No newline at end of file
......@@ -44,6 +44,11 @@ public class SQLEditorMessages extends NLS {
public static String dialog_sql_param_hide_checkbox_tip;
public static String dialog_sql_param_hint;
public static String editor_file_delete_error_title;
public static String editor_file_delete_error_text;
public static String editor_file_delete_confirm_delete_text;
public static String editor_file_delete_confirm_delete_title;
public static String editor_query_log_viewer_draw_text_type_qury_part;
public static String editor_sql_preference;
......
......@@ -21,6 +21,11 @@ dialog_sql_param_hide_checkbox = Hide parameters set in script
dialog_sql_param_hide_checkbox_tip = Do not show parameters which were set in script by @set command
dialog_sql_param_hint = Use Tab to switch. String values must be quoted. You can use expressions in values
editor_file_delete_error_title=Can't delete SQL script
editor_file_delete_error_text=Error deleting file: "{0}"
editor_file_delete_confirm_delete_text=Are you sure you want to delete SQL script "{0}" ?
editor_file_delete_confirm_delete_title=Delete SQL script
editor_query_log_viewer_draw_text_type_qury_part=Type query part to search in query history
editor_sql_preference = Preferences...
editors_sql_data_grid = Results
......
......@@ -11,6 +11,11 @@ confirm_mass_parallel_sql_message = \u0412\u044B \u0441\u043E\u0431\u0438\u0440\
confirm_mass_parallel_sql_title = \u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u0435 \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u0438\u044F \u043F\u0430\u0440\u0430\u043B\u0435\u043B\u044C\u043D\u044B\u0445 \u0437\u0430\u043F\u0440\u043E\u0441\u043E\u0432
confirm_mass_parallel_sql_toggleMessage = \u0417\u0430\u043F\u043E\u043C\u043D\u0438\u0442\u044C \u0432\u044B\u0431\u043E\u0440
editor_file_delete_error_title=\u041D\u0435 \u0443\u0434\u0430\u0435\u0442\u0441\u044F \u0443\u0434\u0430\u043B\u0438\u0442\u044C SQL \u0441\u043A\u0440\u0438\u043F\u0442
editor_file_delete_error_text=\u041E\u0448\u0438\u0431\u043A\u0430 \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F \u0444\u0430\u0439\u043B\u0430: "{0}"
editor_file_delete_confirm_delete_text=\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C SQL \u0441\u043A\u0440\u0438\u043F\u0442 "{0}" ?
editor_file_delete_confirm_delete_title=\u0423\u0434\u0430\u043B\u0438\u0442\u044C SQL \u0441\u043A\u0440\u0438\u043F\u0442
dialog_sql_param_title = \u041F\u0440\u0438\u0432\u044F\u0437\u043A\u0430 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432
dialog_sql_param_column_name = \u0418\u043C\u044F
dialog_sql_param_column_value = \u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册