diff --git a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/IResultSetController.java b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/IResultSetController.java index f31ca78630f1e02b82ef9dafe89f94010318bdea..f9b2b7b8c8e66c9ccd586c42e3d4affe2591b83b 100644 --- a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/IResultSetController.java +++ b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/IResultSetController.java @@ -48,6 +48,7 @@ public interface IResultSetController extends IDataController, DBPContextProvide String MENU_ID_VIEW = "view"; String MENU_ID_VIRTUAL_MODEL = "virtual_model"; String MENU_ID_FILTERS = "filters"; + String MENU_ID_ORDER = "orderings"; String MENU_ID_LAYOUT = "layout"; String MENU_GROUP_EDIT = "edit"; String MENU_GROUP_EXPORT = "results_export"; diff --git a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/ResultSetViewer.java b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/ResultSetViewer.java index d433f6d6d6c7e9909adc20fec5afae5cfc58bc2e..f3daa15a227dce1d71251effdb2d22ef87974a56 100644 --- a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/ResultSetViewer.java +++ b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/ResultSetViewer.java @@ -2225,11 +2225,33 @@ public class ResultSetViewer extends Viewer manager.add(new Separator()); + // Filters and View + { + MenuManager filtersMenu = new MenuManager( + ResultSetMessages.controls_resultset_viewer_action_filter, + DBeaverIcons.getImageDescriptor(UIIcon.FILTER), + MENU_ID_FILTERS); //$NON-NLS-1$ + filtersMenu.setActionDefinitionId(ResultSetHandlerMain.CMD_FILTER_MENU); + filtersMenu.setRemoveAllWhenShown(true); + filtersMenu.addMenuListener(manager1 -> fillFiltersMenu(manager1, attr, row)); + manager.add(filtersMenu); + } + { + MenuManager orderMenu = new MenuManager( + ResultSetMessages.controls_resultset_viewer_action_order, + DBeaverIcons.getImageDescriptor(UIIcon.SORT), + MENU_ID_ORDER); //$NON-NLS-1$ + orderMenu.setRemoveAllWhenShown(true); + orderMenu.addMenuListener(manager1 -> fillOrderingsMenu(manager1, attr, row)); + manager.add(orderMenu); + } + if (row != null) { // MenuManager editMenu = new MenuManager( // IDEWorkbenchMessages.Workbench_edit, // DBeaverIcons.getImageDescriptor(UIIcon.ROW_EDIT), // MENU_ID_EDIT); //$NON-NLS-1$ + manager.add(new Separator()); fillEditMenu(manager, attr, row, valueController); //manager.add(editMenu); } @@ -2237,17 +2259,6 @@ public class ResultSetViewer extends Viewer } manager.add(new GroupMarker(MENU_GROUP_EDIT)); - // Filters and View - { - MenuManager filtersMenu = new MenuManager( - ResultSetMessages.controls_resultset_viewer_action_order_filter, - DBeaverIcons.getImageDescriptor(UIIcon.FILTER), - MENU_ID_FILTERS); //$NON-NLS-1$ - filtersMenu.setActionDefinitionId(ResultSetHandlerMain.CMD_FILTER_MENU); - filtersMenu.setRemoveAllWhenShown(true); - filtersMenu.addMenuListener(manager1 -> fillFiltersMenu(manager1, attr, row)); - manager.add(filtersMenu); - } if (getDataSource() != null && attr != null && model.getVisibleAttributeCount() > 0 && !model.isUpdateInProgress()) { MenuManager viewMenu = new MenuManager( ResultSetMessages.controls_resultset_viewer_action_column_view, @@ -2679,6 +2690,14 @@ public class ResultSetViewer extends Viewer filtersMenu.add(new FilterResetAttributeAction(attribute)); } } + filtersMenu.add(new Separator()); + filtersMenu.add(ActionUtils.makeCommandContribution(site, ResultSetHandlerMain.CMD_FILTER_SAVE_SETTING)); + filtersMenu.add(ActionUtils.makeCommandContribution(site, ResultSetHandlerMain.CMD_FILTER_CLEAR_SETTING)); + filtersMenu.add(ActionUtils.makeCommandContribution(site, ResultSetHandlerMain.CMD_FILTER_EDIT_SETTINGS)); + } + + private void fillOrderingsMenu(@NotNull IMenuManager filtersMenu, @Nullable DBDAttributeBinding attribute, @Nullable ResultSetRow row) + { if (attribute != null) { filtersMenu.add(new Separator()); filtersMenu.add(new OrderByAttributeAction(attribute, true)); @@ -2686,10 +2705,6 @@ public class ResultSetViewer extends Viewer filtersMenu.add(ActionUtils.makeCommandContribution(site, ResultSetHandlerMain.CMD_TOGGLE_ORDER)); filtersMenu.add(new ToggleServerSideOrderingAction()); } - filtersMenu.add(new Separator()); - filtersMenu.add(ActionUtils.makeCommandContribution(site, ResultSetHandlerMain.CMD_FILTER_SAVE_SETTING)); - filtersMenu.add(ActionUtils.makeCommandContribution(site, ResultSetHandlerMain.CMD_FILTER_CLEAR_SETTING)); - filtersMenu.add(ActionUtils.makeCommandContribution(site, ResultSetHandlerMain.CMD_FILTER_EDIT_SETTINGS)); } @Override diff --git a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages.java b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages.java index c526b1b54016a4b30309b58941018f7fbcab5b6d..3440e8a970c0ee494bb9a2f9d6e0cbf4012265af 100644 --- a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages.java +++ b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages.java @@ -59,6 +59,8 @@ public class ResultSetMessages extends NLS { public static String controls_resultset_viewer_action_edit; public static String controls_resultset_viewer_action_order_filter; + public static String controls_resultset_viewer_action_order; + public static String controls_resultset_viewer_action_filter; public static String controls_resultset_viewer_action_custom_filter; public static String controls_resultset_viewer_action_column_view; public static String controls_resultset_viewer_action_logical_structure; diff --git a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages.properties b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages.properties index 17625a42b4742835c615ab76207565f3dd95eefd..9b2c5eea41893cb2457556615b23c3965eb27548 100644 --- a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages.properties +++ b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages.properties @@ -46,6 +46,8 @@ controls_resultset_viewer_action_edit = Edit ... #controls_resultset_viewer_action_export = Export Resultset ... controls_resultset_viewer_action_options = Configure controls_resultset_viewer_action_order_filter = Filter/Order +controls_resultset_viewer_action_filter = Filter +controls_resultset_viewer_action_order = Order controls_resultset_viewer_action_column_view = Column view controls_resultset_viewer_action_logical_structure = Logical structure controls_resultset_viewer_action_view_format = View/Format diff --git a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_de.properties b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_de.properties index 3f265aa07a322dc4ffb7371a22a64ca3cb48fda7..4a6dee476e8ab92c779c4037a9d7ae979017bd93 100644 --- a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_de.properties +++ b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_de.properties @@ -50,6 +50,8 @@ controls_resultset_viewer_action_layout = Layout controls_resultset_viewer_action_navigate = Navigieren controls_resultset_viewer_action_options = Konfigurieren controls_resultset_viewer_action_order_filter = Filtern/Sortieren +controls_resultset_viewer_action_filter = Filtern +controls_resultset_viewer_action_order = Sortieren controls_resultset_viewer_action_panels = Panels anpassen controls_resultset_viewer_action_refresh = Ergebnis aktualisieren controls_resultset_viewer_action_view_as = Anzeigen als diff --git a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_fr.properties b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_fr.properties index 073979234f974ed1b72d9a768da9100f118ee778..98cb35af2bca1ff1ad5dd921e344c60963fc7581 100644 --- a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_fr.properties +++ b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_fr.properties @@ -29,6 +29,8 @@ controls_resultset_viewer_action_custom_filter = Avanc\u00E9 ... controls_resultset_viewer_action_edit = Editer ... controls_resultset_viewer_action_options = Configurer controls_resultset_viewer_action_order_filter = Trier/Filtrer +controls_resultset_viewer_action_filter = Filtrer +controls_resultset_viewer_action_order = Trier controls_resultset_viewer_action_panels = Personnaliser les panneaux controls_resultset_viewer_action_refresh = Rafra\u00EEchir les r\u00E9sultats controls_resultset_viewer_add_new_row_context_name = Copier les valeurs des lignes diff --git a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_ru.properties b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_ru.properties index 62aaebc5b8b4ba3b4e78b6c7017ab4fcb211c189..5f6b4acac4f71797a04e8c51615c99e3d2760348 100644 --- a/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_ru.properties +++ b/plugins/org.jkiss.dbeaver.ui.editors.data/src/org/jkiss/dbeaver/ui/controls/resultset/internal/ResultSetMessages_ru.properties @@ -25,6 +25,8 @@ controls_resultset_filter_title=\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A controls_resultset_filter_warning_custom_order_disabled=\u0424\u0438\u043B\u044C\u0442\u0440\u0430\u0446\u0438\u044F \u0434\u0430\u043D\u043D\u044B\u0445 \u0438 \u0441\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0438 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B \u0434\u043B\u044F \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0445 \u0437\u0430\u043F\u0440\u043E\u0441\u043E\u0432. controls_resultset_viewer_action_edit=\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C ... controls_resultset_viewer_action_order_filter=\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0430/\u0444\u0438\u043B\u044C\u0442\u0440\u044B +controls_resultset_viewer_action_filter=\u0424\u0438\u043B\u044C\u0442\u0440\u044B +controls_resultset_viewer_action_order=\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0430 controls_resultset_viewer_action_refresh=\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435 controls_resultset_viewer_add_new_row_context_name=\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \u0441\u0442\u0440\u043E\u043A\u0438 controls_resultset_viewer_dialog_status_title=\u0421\u0442\u0430\u0442\u0443\u0441