This is an automated email from the ASF dual-hosted git repository.
neilcsmith pushed a commit to branch delivery
in repository https://gitbox.apache.org/repos/asf/netbeans.git
The following commit(s) were added to refs/heads/delivery by this push:
new 41a8292 set shift+enter as line break and add multi-line info message.
new 83fe403 Merge pull request #3489 from mbien/use-the-mouse
41a8292 is described below
commit 41a829221227fb35abb056402bc92319aa5d8933
Author: Michael Bien <[email protected]>
AuthorDate: Sat Jan 22 00:52:24 2022 +0100
set shift+enter as line break and add multi-line info message.
---
.../org/netbeans/modules/search/BasicSearchForm.java | 19 ++++++++++++++++---
.../netbeans/modules/search/BasicSearchProvider.java | 3 ++-
.../src/org/netbeans/modules/search/Bundle.properties | 1 +
.../org/netbeans/modules/search/PatternSandbox.java | 2 +-
.../modules/search/ui/ShorteningCellRenderer.java | 2 +-
5 files changed, 21 insertions(+), 6 deletions(-)
diff --git
a/platform/api.search/src/org/netbeans/modules/search/BasicSearchForm.java
b/platform/api.search/src/org/netbeans/modules/search/BasicSearchForm.java
index 585f734..6071120 100644
--- a/platform/api.search/src/org/netbeans/modules/search/BasicSearchForm.java
+++ b/platform/api.search/src/org/netbeans/modules/search/BasicSearchForm.java
@@ -39,6 +39,7 @@ import java.util.Objects;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.*;
+import javax.swing.border.Border;
import javax.swing.border.EmptyBorder;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
@@ -216,7 +217,7 @@ final class BasicSearchForm extends JPanel implements
ChangeListener,
lblTextToFind = new JLabel();
JComboBox<String> box = new JComboBox<>();
- box.setEditor(new MultiLineComboBoxEditor());
+ box.setEditor(new MultiLineComboBoxEditor(box));
cboxTextToFind = ComponentUtils.adjustComboForSearchPattern(box);
lblTextToFind.setLabelFor(cboxTextToFind.getComponent());
btnTestTextToFind = new JButton();
@@ -227,7 +228,7 @@ final class BasicSearchForm extends JPanel implements
ChangeListener,
if (searchAndReplace) {
lblReplacement = new JLabel();
cboxReplacement = new JComboBox<>();
- cboxReplacement.setEditor(new MultiLineComboBoxEditor());
+ cboxReplacement.setEditor(new
MultiLineComboBoxEditor(cboxReplacement));
cboxReplacement.setEditable(true);
cboxReplacement.setRenderer(new ShorteningCellRenderer());
lblReplacement.setLabelFor(cboxReplacement);
@@ -1116,11 +1117,23 @@ final class BasicSearchForm extends JPanel implements
ChangeListener,
private final JTextArea area = new JTextArea();
- public MultiLineComboBoxEditor() {
+ public MultiLineComboBoxEditor(JComboBox reference) {
area.setWrapStyleWord(false);
area.setLineWrap(false);
+
+ Border border =
((JComponent)reference.getEditor().getEditorComponent()).getBorder();
+ if (border == null) {
+ border = reference.getBorder();
+ }
+ area.setBorder(border);
+
+ // retain standard focus traversal behavior
area.setFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, null);
area.setFocusTraversalKeys(KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS,
null);
+
+ // dispatch enter to parent; set line breaks on shift+enter
+ area.getInputMap().put(KeyStroke.getKeyStroke("shift ENTER"),
"insert-break");
+ area.getInputMap().put(KeyStroke.getKeyStroke("ENTER"),
"text-submit");
}
@Override
diff --git
a/platform/api.search/src/org/netbeans/modules/search/BasicSearchProvider.java
b/platform/api.search/src/org/netbeans/modules/search/BasicSearchProvider.java
index f46f7dd..b064acc 100644
---
a/platform/api.search/src/org/netbeans/modules/search/BasicSearchProvider.java
+++
b/platform/api.search/src/org/netbeans/modules/search/BasicSearchProvider.java
@@ -226,7 +226,8 @@ public class BasicSearchProvider extends SearchProvider {
notifySupport.setInformationMessage(UiUtils.getText(
"BasicSearchForm.txtInfoNoWildcards"));
//NOI18N
} else {
- notifySupport.clearMessages();
+ notifySupport.setInformationMessage(UiUtils.getText(
+ "BasicSearchForm.txtInfoMultiline")); //NOI18N
}
}
return usable;
diff --git
a/platform/api.search/src/org/netbeans/modules/search/Bundle.properties
b/platform/api.search/src/org/netbeans/modules/search/Bundle.properties
index 014597c..bb81352 100644
--- a/platform/api.search/src/org/netbeans/modules/search/Bundle.properties
+++ b/platform/api.search/src/org/netbeans/modules/search/Bundle.properties
@@ -248,6 +248,7 @@ BasicSearchForm.txtErrorTextPattern=Containing Text field
contains invalid regul
BasicSearchForm.txtErrorReplacePattern=Replace With field contains invalid
expression
BasicSearchForm.txtErrorFileName=File Name Patterns field contains invalid
regular expression
BasicSearchForm.txtInfoNoWildcards=File Name Pattern contains no wildcards. It
may be a mistake.
+BasicSearchForm.txtInfoMultiline=Resize Window for multi-line search
(SHIFT+ENTER for line breaks).
LBL_OptionsPanelTitle=Options
diff --git
a/platform/api.search/src/org/netbeans/modules/search/PatternSandbox.java
b/platform/api.search/src/org/netbeans/modules/search/PatternSandbox.java
index a56cfec..7a25f55 100644
--- a/platform/api.search/src/org/netbeans/modules/search/PatternSandbox.java
+++ b/platform/api.search/src/org/netbeans/modules/search/PatternSandbox.java
@@ -82,7 +82,7 @@ public abstract class PatternSandbox extends JPanel
protected void initComponents() {
cboxPattern = new JComboBox<String>();
- cboxPattern.setEditor(new BasicSearchForm.MultiLineComboBoxEditor());
+ cboxPattern.setEditor(new
BasicSearchForm.MultiLineComboBoxEditor(cboxPattern));
cboxPattern.setEditable(true);
cboxPattern.setRenderer(new ShorteningCellRenderer());
lblPattern = new JLabel();
diff --git
a/platform/api.search/src/org/netbeans/modules/search/ui/ShorteningCellRenderer.java
b/platform/api.search/src/org/netbeans/modules/search/ui/ShorteningCellRenderer.java
index be25b8d..fd1d9fd 100644
---
a/platform/api.search/src/org/netbeans/modules/search/ui/ShorteningCellRenderer.java
+++
b/platform/api.search/src/org/netbeans/modules/search/ui/ShorteningCellRenderer.java
@@ -37,7 +37,7 @@ public class ShorteningCellRenderer extends
DefaultListCellRenderer {
@Override
public Component getListCellRendererComponent(JList<?> list, Object value,
int index, boolean isSelected, boolean cellHasFocus) {
- String s = value == null ? null : value.toString();
+ String s = value == null ? null :
value.toString().replaceAll("[\r\n]+", " ");
Component component = super.getListCellRendererComponent(list,
s, index, isSelected, cellHasFocus);
if (s != null && s.length() > COMBO_TEXT_LENGHT_LIMIT
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists