Search in sources :

Example 1 with SmartTextContentAdapter

use of org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter in project dbeaver by serge-rider.

the class PrefPageSQLResources method createContents.

@Override
protected Control createContents(Composite parent) {
    Composite composite = UIUtils.createComposite(parent, 1);
    // Connection association
    {
        Composite connGroup = UIUtils.createControlGroup(composite, SQLEditorMessages.pref_page_sql_editor_group_connection_association, 2, GridData.FILL_HORIZONTAL, 0);
        Label tipLabel = new Label(connGroup, SWT.WRAP);
        tipLabel.setText(SQLEditorMessages.pref_page_sql_editor_checkbox_bind_connection_hint);
        GridData gd = new GridData(GridData.FILL_HORIZONTAL);
        gd.horizontalSpan = 2;
        tipLabel.setLayoutData(gd);
        bindEmbeddedReadCheck = UIUtils.createCheckbox(connGroup, SQLEditorMessages.pref_page_sql_editor_checkbox_bind_embedded_read, SQLEditorMessages.pref_page_sql_editor_checkbox_bind_embedded_read_tip, false, 2);
        bindEmbeddedWriteCheck = UIUtils.createCheckbox(connGroup, SQLEditorMessages.pref_page_sql_editor_checkbox_bind_embedded_write, SQLEditorMessages.pref_page_sql_editor_checkbox_bind_embedded_write_tip, false, 2);
        bindEmbeddedWriteCheck.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                enableCommentType();
            }
        });
        commentTypeComposite = UIUtils.createComposite(connGroup, 1);
        for (SQLScriptBindingType bt : SQLScriptBindingType.values()) {
            if (bt != SQLScriptBindingType.EXTERNAL) {
                UIUtils.createRadioButton(commentTypeComposite, bt.getDescription(), bt, SelectionListener.widgetSelectedAdapter(selectionEvent -> {
                    curScriptBindingType = (SQLScriptBindingType) selectionEvent.widget.getData();
                }));
            }
        }
    }
    // Resources
    {
        Composite scriptsGroup = UIUtils.createControlGroup(composite, SQLEditorMessages.pref_page_sql_editor_group_resources, 2, GridData.FILL_HORIZONTAL, 0);
        deleteEmptyCombo = UIUtils.createLabelCombo(scriptsGroup, SQLEditorMessages.pref_page_sql_editor_checkbox_delete_empty_scripts, SWT.DROP_DOWN | SWT.READ_ONLY);
        for (SQLPreferenceConstants.EmptyScriptCloseBehavior escb : SQLPreferenceConstants.EmptyScriptCloseBehavior.values()) {
            deleteEmptyCombo.add(escb.getTitle());
        }
        deleteEmptyCombo.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING));
        deleteEmptyCombo.select(0);
        autoFoldersCheck = UIUtils.createCheckbox(scriptsGroup, SQLEditorMessages.pref_page_sql_editor_checkbox_put_new_scripts, null, false, 2);
        connectionFoldersCheck = UIUtils.createCheckbox(scriptsGroup, SQLEditorMessages.pref_page_sql_editor_checkbox_create_script_folders, null, false, 2);
        scriptTitlePattern = UIUtils.createLabelText(scriptsGroup, SQLEditorMessages.pref_page_sql_editor_title_pattern, "");
        ContentAssistUtils.installContentProposal(scriptTitlePattern, new SmartTextContentAdapter(), new StringContentProposalProvider(GeneralUtils.variablePattern(SQLEditor.VAR_CONNECTION_NAME), GeneralUtils.variablePattern(SQLEditor.VAR_DRIVER_NAME), GeneralUtils.variablePattern(SQLEditor.VAR_FILE_NAME), GeneralUtils.variablePattern(SQLEditor.VAR_FILE_EXT), GeneralUtils.variablePattern(SQLEditor.VAR_ACTIVE_DATABASE), GeneralUtils.variablePattern(SQLEditor.VAR_ACTIVE_SCHEMA)));
        UIUtils.setContentProposalToolTip(scriptTitlePattern, "Output file name patterns", SQLEditor.VAR_CONNECTION_NAME, SQLEditor.VAR_DRIVER_NAME, SQLEditor.VAR_FILE_NAME, SQLEditor.VAR_FILE_EXT, SQLEditor.VAR_ACTIVE_DATABASE, SQLEditor.VAR_ACTIVE_SCHEMA);
    }
    performDefaults();
    return composite;
}
Also used : SQLScriptBindingType(org.jkiss.dbeaver.ui.editors.sql.SQLScriptBindingType) SmartTextContentAdapter(org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter) StringContentProposalProvider(org.jkiss.dbeaver.ui.contentassist.StringContentProposalProvider) SelectionAdapter(org.eclipse.swt.events.SelectionAdapter) GridData(org.eclipse.swt.layout.GridData) SelectionEvent(org.eclipse.swt.events.SelectionEvent)

Example 2 with SmartTextContentAdapter

use of org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter in project dbeaver by serge-rider.

the class SQLExternalFormatterConfigurationPage method createFormatSettings.

@Override
protected Composite createFormatSettings(Composite parent) {
    Group settingsGroup = UIUtils.createControlGroup(parent, "Settings", 4, GridData.FILL_HORIZONTAL, 0);
    externalCmdText = UIUtils.createLabelText(settingsGroup, SQLEditorMessages.pref_page_sql_format_label_external_command_line, "");
    GridData gd = new GridData(GridData.FILL_HORIZONTAL);
    gd.horizontalSpan = 3;
    externalCmdText.setLayoutData(gd);
    ContentAssistUtils.installContentProposal(externalCmdText, new SmartTextContentAdapter(), new StringContentProposalProvider(GeneralUtils.variablePattern(SQLFormatterExternal.VAR_FILE)));
    UIUtils.setContentProposalToolTip(externalCmdText, SQLEditorMessages.pref_page_sql_format_label_external_set_content_tool_tip, SQLFormatterExternal.VAR_FILE);
    externalUseFile = UIUtils.createCheckbox(settingsGroup, SQLEditorMessages.pref_page_sql_format_label_external_use_temp_file, SQLEditorMessages.pref_page_sql_format_label_external_use_temp_file_tip + " " + GeneralUtils.variablePattern(SQLFormatterExternal.VAR_FILE), false, 2);
    externalTimeout = UIUtils.createLabelSpinner(settingsGroup, SQLEditorMessages.pref_page_sql_format_label_external_exec_timeout, SQLEditorMessages.pref_page_sql_format_label_external_exec_timeout_tip, 100, 100, 10000);
    return parent;
}
Also used : SmartTextContentAdapter(org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter) StringContentProposalProvider(org.jkiss.dbeaver.ui.contentassist.StringContentProposalProvider) GridData(org.eclipse.swt.layout.GridData)

Example 3 with SmartTextContentAdapter

use of org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter in project dbeaver by serge-rider.

the class StringEditorTable method createEditableList.

public static Table createEditableList(@NotNull Composite parent, @NotNull String name, @Nullable List<String> values, @Nullable DBPImage icon, @Nullable IContentProposalProvider proposalProvider) {
    Group group = UIUtils.createControlGroup(parent, name, 2, GridData.FILL_BOTH, 0);
    final Table valueTable = new Table(group, SWT.SINGLE | SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
    final GridData gd = new GridData(GridData.FILL_BOTH);
    gd.widthHint = 300;
    gd.heightHint = 100;
    valueTable.setLayoutData(gd);
    // valueTable.setHeaderVisible(true);
    valueTable.setLinesVisible(true);
    final TableColumn valueColumn = UIUtils.createTableColumn(valueTable, SWT.LEFT, UIMessages.properties_value);
    valueTable.addControlListener(new ControlAdapter() {

        @Override
        public void controlResized(ControlEvent e) {
            valueColumn.setWidth(valueTable.getClientArea().width);
        }
    });
    fillFilterValues(valueTable, values, icon);
    final CustomTableEditor tableEditor = new CustomTableEditor(valueTable) {

        {
            firstTraverseIndex = 0;
            lastTraverseIndex = 0;
        // editOnEnter = false;
        }

        @Override
        protected Control createEditor(Table table, int index, TableItem item) {
            Text editor = new Text(table, SWT.BORDER);
            editor.setText(item.getText());
            editor.addModifyListener(e -> {
                // Save value immediately. This solves MacOS problems with focus events.
                saveEditorValue(editor, index, item);
            });
            if (proposalProvider != null) {
                setProposalAdapter(ContentAssistUtils.installContentProposal(editor, new SmartTextContentAdapter(), proposalProvider));
            }
            return editor;
        }

        @Override
        protected void saveEditorValue(Control control, int index, TableItem item) {
            item.setText(((Text) control).getText().trim());
        }
    };
    Composite buttonsGroup = UIUtils.createPlaceholder(group, 1, 5);
    buttonsGroup.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING));
    final Button addButton = new Button(buttonsGroup, SWT.PUSH);
    addButton.setText(UIMessages.button_add);
    addButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    Button removeButton = new Button(buttonsGroup, SWT.PUSH);
    removeButton.setText(UIMessages.button_remove);
    removeButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    removeButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            int selectionIndex = valueTable.getSelectionIndex();
            if (selectionIndex >= 0) {
                tableEditor.closeEditor();
                valueTable.remove(selectionIndex);
                removeButton.setEnabled(valueTable.getSelectionIndex() >= 0);
            }
        }
    });
    removeButton.setEnabled(false);
    final Button clearButton = new Button(buttonsGroup, SWT.PUSH);
    clearButton.setText(UIMessages.button_clear);
    clearButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    clearButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            tableEditor.closeEditor();
            valueTable.removeAll();
            removeButton.setEnabled(false);
        }
    });
    addButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            TableItem newItem = new TableItem(valueTable, SWT.LEFT);
            if (icon != null) {
                newItem.setImage(DBeaverIcons.getImage(icon));
            }
            valueTable.setSelection(newItem);
            tableEditor.closeEditor();
            tableEditor.showEditor(newItem);
            removeButton.setEnabled(true);
        }
    });
    valueTable.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            int selectionIndex = valueTable.getSelectionIndex();
            removeButton.setEnabled(selectionIndex >= 0);
        }
    });
    return valueTable;
}
Also used : SmartTextContentAdapter(org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter) ControlAdapter(org.eclipse.swt.events.ControlAdapter) SelectionAdapter(org.eclipse.swt.events.SelectionAdapter) GridData(org.eclipse.swt.layout.GridData) SelectionEvent(org.eclipse.swt.events.SelectionEvent) ControlEvent(org.eclipse.swt.events.ControlEvent)

Example 4 with SmartTextContentAdapter

use of org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter in project dbeaver by serge-rider.

the class StreamConsumerPageOutput method createControl.

@Override
public void createControl(Composite parent) {
    initializeDialogUnits(parent);
    Composite composite = UIUtils.createComposite(parent, 1);
    final StreamConsumerSettings settings = getWizard().getPageSettings(this, StreamConsumerSettings.class);
    {
        Group generalSettings = UIUtils.createControlGroup(composite, DTMessages.data_transfer_wizard_output_group_general, 5, GridData.FILL_HORIZONTAL, 0);
        clipboardCheck = UIUtils.createCheckbox(generalSettings, DTMessages.data_transfer_wizard_output_label_copy_to_clipboard, null, false, 5);
        clipboardCheck.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                settings.setOutputClipboard(clipboardCheck.getSelection());
                updateControlsEnablement();
                updatePageCompletion();
            }
        });
        // Output path/pattern
        directoryText = DialogUtils.createOutputFolderChooser(generalSettings, null, e -> {
            settings.setOutputFolder(directoryText.getText());
            updatePageCompletion();
        });
        ((GridData) directoryText.getParent().getLayoutData()).horizontalSpan = 4;
        UIUtils.createControlLabel(generalSettings, DTMessages.data_transfer_wizard_output_label_file_name_pattern);
        fileNameText = new Text(generalSettings, SWT.BORDER);
        GridData gd = new GridData(GridData.FILL_HORIZONTAL);
        gd.horizontalSpan = 4;
        UIUtils.setContentProposalToolTip(fileNameText, DTUIMessages.stream_consumer_page_output_tooltip_output_file_name_pattern, StreamTransferConsumer.VARIABLE_DATASOURCE, StreamTransferConsumer.VARIABLE_CATALOG, StreamTransferConsumer.VARIABLE_SCHEMA, StreamTransferConsumer.VARIABLE_TABLE, StreamTransferConsumer.VARIABLE_TIMESTAMP, StreamTransferConsumer.VARIABLE_DATE, StreamTransferConsumer.VARIABLE_INDEX, StreamTransferConsumer.VARIABLE_PROJECT, StreamTransferConsumer.VARIABLE_CONN_TYPE);
        fileNameText.setLayoutData(gd);
        fileNameText.addModifyListener(e -> {
            settings.setOutputFilePattern(fileNameText.getText());
            updatePageCompletion();
        });
        ContentAssistUtils.installContentProposal(fileNameText, new SmartTextContentAdapter(), new StringContentProposalProvider(GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_DATASOURCE), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_CATALOG), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_SCHEMA), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_TABLE), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_TIMESTAMP), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_DATE), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_INDEX), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_CONN_TYPE), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_PROJECT)));
        {
            UIUtils.createControlLabel(generalSettings, DTMessages.data_transfer_wizard_output_label_encoding);
            encodingCombo = UIUtils.createEncodingCombo(generalSettings, settings.getOutputEncoding());
            // encodingCombo.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING, GridData.VERTICAL_ALIGN_BEGINNING, true, false, 1, 1));
            encodingCombo.addModifyListener(e -> {
                int index = encodingCombo.getSelectionIndex();
                if (index >= 0) {
                    settings.setOutputEncoding(encodingCombo.getItem(index));
                }
                updatePageCompletion();
            });
            timestampPattern = UIUtils.createLabelText(generalSettings, DTMessages.data_transfer_wizard_output_label_timestamp_pattern, GeneralUtils.DEFAULT_TIMESTAMP_PATTERN, SWT.BORDER);
            timestampPattern.addModifyListener(e -> {
                settings.setOutputTimestampPattern(timestampPattern.getText());
            });
            encodingBOMCheckbox = UIUtils.createCheckbox(generalSettings, DTMessages.data_transfer_wizard_output_label_insert_bom, DTMessages.data_transfer_wizard_output_label_insert_bom_tooltip, false, 1);
            encodingBOMCheckbox.addSelectionListener(new SelectionAdapter() {

                @Override
                public void widgetSelected(SelectionEvent e) {
                    settings.setOutputEncodingBOM(encodingBOMCheckbox.getSelection());
                }
            });
        }
        singleFileCheck = UIUtils.createCheckbox(generalSettings, DTMessages.data_transfer_wizard_output_label_use_single_file, DTMessages.data_transfer_wizard_output_label_use_single_file_tip, false, 5);
        singleFileCheck.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                settings.setUseSingleFile(singleFileCheck.getSelection());
                updatePageCompletion();
            }
        });
        compressCheckbox = UIUtils.createCheckbox(generalSettings, DTMessages.data_transfer_wizard_output_checkbox_compress, null, false, 1);
        compressCheckbox.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                settings.setCompressResults(compressCheckbox.getSelection());
                updateControlsEnablement();
            }
        });
        {
            Composite outFilesSettings = UIUtils.createComposite(generalSettings, 3);
            outFilesSettings.setLayoutData(new GridData(GridData.BEGINNING, GridData.BEGINNING, true, false, 5, 1));
            splitFilesCheckbox = UIUtils.createCheckbox(outFilesSettings, DTMessages.data_transfer_wizard_output_checkbox_split_files, DTMessages.data_transfer_wizard_output_checkbox_split_files_tip, false, 1);
            splitFilesCheckbox.addSelectionListener(new SelectionAdapter() {

                @Override
                public void widgetSelected(SelectionEvent e) {
                    settings.setSplitOutFiles(splitFilesCheckbox.getSelection());
                    updateControlsEnablement();
                }
            });
            maximumFileSizeLabel = UIUtils.createControlLabel(outFilesSettings, DTUIMessages.stream_consumer_page_output_label_maximum_file_size);
            maximumFileSizeText = new Text(outFilesSettings, SWT.BORDER);
            maximumFileSizeText.addVerifyListener(UIUtils.getIntegerVerifyListener(Locale.ENGLISH));
            maximumFileSizeText.addModifyListener(e -> settings.setMaxOutFileSize(CommonUtils.toLong(maximumFileSizeText.getText())));
            gd = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
            gd.widthHint = UIUtils.getFontHeight(maximumFileSizeText) * 10;
            maximumFileSizeText.setLayoutData(gd);
        }
    }
    {
        Group resultsSettings = UIUtils.createControlGroup(composite, DTUIMessages.stream_consumer_page_output_label_results, 2, GridData.FILL_HORIZONTAL, 0);
        showFolderCheckbox = UIUtils.createCheckbox(resultsSettings, DTMessages.data_transfer_wizard_output_checkbox_open_folder, true);
        showFolderCheckbox.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                settings.setOpenFolderOnFinish(showFolderCheckbox.getSelection());
            }
        });
        showFolderCheckbox.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING, GridData.VERTICAL_ALIGN_BEGINNING, false, false, 2, 1));
        execProcessCheckbox = UIUtils.createCheckbox(resultsSettings, DTUIMessages.stream_consumer_page_output_checkbox_execute_process, true);
        execProcessCheckbox.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                settings.setExecuteProcessOnFinish(execProcessCheckbox.getSelection());
                updateControlsEnablement();
                updatePageCompletion();
            }
        });
        execProcessText = new Text(resultsSettings, SWT.BORDER);
        execProcessText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
        execProcessText.addModifyListener(e -> {
            settings.setFinishProcessCommand(execProcessText.getText());
            updatePageCompletion();
        });
        UIUtils.setContentProposalToolTip(execProcessText, DTUIMessages.stream_consumer_page_output_tooltip_process_command_line, StreamTransferConsumer.VARIABLE_FILE, StreamTransferConsumer.VARIABLE_TABLE, StreamTransferConsumer.VARIABLE_TIMESTAMP, StreamTransferConsumer.VARIABLE_DATE, StreamTransferConsumer.VARIABLE_PROJECT, StreamTransferConsumer.VARIABLE_CONN_TYPE);
        ContentAssistUtils.installContentProposal(execProcessText, new SmartTextContentAdapter(), new StringContentProposalProvider(GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_TABLE), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_TIMESTAMP), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_DATE), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_PROJECT), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_CONN_TYPE), GeneralUtils.variablePattern(StreamTransferConsumer.VARIABLE_FILE)));
        showFinalMessageCheckbox = UIUtils.createCheckbox(resultsSettings, DTUIMessages.stream_consumer_page_output_label_show_finish_message, null, getWizard().getSettings().isShowFinalMessage(), 4);
        showFinalMessageCheckbox.addSelectionListener(new SelectionAdapter() {

            @Override
            public void widgetSelected(SelectionEvent e) {
                getWizard().getSettings().setShowFinalMessage(showFinalMessageCheckbox.getSelection());
            }
        });
    }
    setControl(composite);
}
Also used : DTUIMessages(org.jkiss.dbeaver.tools.transfer.ui.internal.DTUIMessages) SelectionAdapter(org.eclipse.swt.events.SelectionAdapter) ActiveWizardPage(org.jkiss.dbeaver.ui.dialogs.ActiveWizardPage) GeneralUtils(org.jkiss.dbeaver.utils.GeneralUtils) CommonUtils(org.jkiss.utils.CommonUtils) StreamConsumerSettings(org.jkiss.dbeaver.tools.transfer.stream.StreamConsumerSettings) org.eclipse.swt.widgets(org.eclipse.swt.widgets) StreamTransferConsumer(org.jkiss.dbeaver.tools.transfer.stream.StreamTransferConsumer) StringContentProposalProvider(org.jkiss.dbeaver.ui.contentassist.StringContentProposalProvider) SmartTextContentAdapter(org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter) ContentAssistUtils(org.jkiss.dbeaver.ui.contentassist.ContentAssistUtils) DataTransferWizard(org.jkiss.dbeaver.tools.transfer.ui.wizard.DataTransferWizard) UIUtils(org.jkiss.dbeaver.ui.UIUtils) Locale(java.util.Locale) SWT(org.eclipse.swt.SWT) DialogUtils(org.jkiss.dbeaver.ui.dialogs.DialogUtils) SelectionEvent(org.eclipse.swt.events.SelectionEvent) GridData(org.eclipse.swt.layout.GridData) DTMessages(org.jkiss.dbeaver.tools.transfer.internal.DTMessages) StreamConsumerSettings(org.jkiss.dbeaver.tools.transfer.stream.StreamConsumerSettings) SmartTextContentAdapter(org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter) StringContentProposalProvider(org.jkiss.dbeaver.ui.contentassist.StringContentProposalProvider) SelectionAdapter(org.eclipse.swt.events.SelectionAdapter) SelectionEvent(org.eclipse.swt.events.SelectionEvent) GridData(org.eclipse.swt.layout.GridData)

Example 5 with SmartTextContentAdapter

use of org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter in project dbeaver by serge-rider.

the class AbstractNativeToolWizardPage method createExtraArgsInput.

protected void createExtraArgsInput(Composite outputGroup) {
    extraCommandArgsText = UIUtils.createLabelText(outputGroup, "Extra command args", wizard.getSettings().getExtraCommandArgs());
    extraCommandArgsText.setToolTipText("Set extra command args for tool executable.");
    ContentAssistUtils.installContentProposal(extraCommandArgsText, new SmartTextContentAdapter(), new StringContentProposalProvider(new String[] {}));
    extraCommandArgsText.addModifyListener(e -> wizard.getSettings().setExtraCommandArgs(extraCommandArgsText.getText()));
}
Also used : SmartTextContentAdapter(org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter) StringContentProposalProvider(org.jkiss.dbeaver.ui.contentassist.StringContentProposalProvider)

Aggregations

SmartTextContentAdapter (org.jkiss.dbeaver.ui.contentassist.SmartTextContentAdapter)8 GridData (org.eclipse.swt.layout.GridData)7 StringContentProposalProvider (org.jkiss.dbeaver.ui.contentassist.StringContentProposalProvider)7 SelectionAdapter (org.eclipse.swt.events.SelectionAdapter)5 SelectionEvent (org.eclipse.swt.events.SelectionEvent)5 SWT (org.eclipse.swt.SWT)4 UIUtils (org.jkiss.dbeaver.ui.UIUtils)4 ContentAssistUtils (org.jkiss.dbeaver.ui.contentassist.ContentAssistUtils)4 GeneralUtils (org.jkiss.dbeaver.utils.GeneralUtils)4 CommonUtils (org.jkiss.utils.CommonUtils)4 org.eclipse.swt.widgets (org.eclipse.swt.widgets)3 DialogUtils (org.jkiss.dbeaver.ui.dialogs.DialogUtils)3 File (java.io.File)2 SelectionListener (org.eclipse.swt.events.SelectionListener)2 NativeToolUtils (org.jkiss.dbeaver.tasks.nativetool.NativeToolUtils)2 ArrayList (java.util.ArrayList)1 Comparator (java.util.Comparator)1 List (java.util.List)1 Locale (java.util.Locale)1 JexlExpression (org.apache.commons.jexl3.JexlExpression)1