From bc9b3d9869b495cecd2ce45fb35068ad7980063b Mon Sep 17 00:00:00 2001 From: mongolyy Date: Tue, 5 Mar 2019 02:13:35 +0900 Subject: [PATCH] Add option to remove new line code --- SQLFormatter.jar | Bin 35723 -> 37410 bytes resources/META-INF/plugin.xml | 3 ++- src/SQLFormatterConfig.java | 39 ++++++++++++++++++++++++++++++++ src/SQLFormatterToolWindow.form | 15 +++++++++--- src/SQLFormatterToolWindow.java | 27 +++++++++++++++++++--- 5 files changed, 77 insertions(+), 7 deletions(-) create mode 100644 src/SQLFormatterConfig.java diff --git a/SQLFormatter.jar b/SQLFormatter.jar index 56529df8c7ce53d48b832c9e44535d1c2e6807ac..a7116c8c218912139a74c87470d48fd1284cadf3 100644 GIT binary patch delta 10323 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 delta 8448 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.intellij.modules.lang + @@ -30,4 +31,4 @@ - \ No newline at end of file + diff --git a/src/SQLFormatterConfig.java b/src/SQLFormatterConfig.java new file mode 100644 index 0000000..212d83b --- /dev/null +++ b/src/SQLFormatterConfig.java @@ -0,0 +1,39 @@ +import com.intellij.openapi.components.PersistentStateComponent; +import com.intellij.openapi.components.ServiceManager; +import com.intellij.openapi.components.State; +import com.intellij.openapi.components.Storage; +import com.intellij.util.xmlb.XmlSerializerUtil; +import org.jetbrains.annotations.NotNull; + +@State( + name = "SQLFormatterConfig", + storages = { + @Storage("intellij-plugin-SQLFormatter.xml") + } +) + +public class SQLFormatterConfig implements PersistentStateComponent { + private boolean removeNewLineCode = false; + + @Override + public SQLFormatterConfig getState() { + return this; + } + + @Override + public void loadState(@NotNull SQLFormatterConfig config) { + XmlSerializerUtil.copyBean(config, this); + } + + public static SQLFormatterConfig getInstance() { + return ServiceManager.getService(SQLFormatterConfig.class); + } + + public boolean isRemoveNewLineCode() { + return removeNewLineCode; + } + + public void setRemoveNewLineCode(boolean removeNewLineCode) { + this.removeNewLineCode = removeNewLineCode; + } +} diff --git a/src/SQLFormatterToolWindow.form b/src/SQLFormatterToolWindow.form index 46e8a66..b6ddc94 100644 --- a/src/SQLFormatterToolWindow.form +++ b/src/SQLFormatterToolWindow.form @@ -1,6 +1,6 @@
- + @@ -10,7 +10,7 @@ - + @@ -38,6 +38,15 @@ + + + + + + + + + - \ No newline at end of file + diff --git a/src/SQLFormatterToolWindow.java b/src/SQLFormatterToolWindow.java index 43465f9..40680a1 100644 --- a/src/SQLFormatterToolWindow.java +++ b/src/SQLFormatterToolWindow.java @@ -18,6 +18,7 @@ public class SQLFormatterToolWindow implements ToolWindowFactory { private JButton buttonFormat; private JTextArea textArea; private JLabel labelMessage; + private JCheckBox removeNewLineCode; private Formatter sqlFormatter = new BasicFormatterImpl(); @@ -25,8 +26,18 @@ public SQLFormatterToolWindow() { buttonFormat.addActionListener(e -> { labelMessage.setText(""); String text = textArea.getText(); + boolean shouldRemoveNewLineCode = removeNewLineCode.isSelected(); + if (shouldRemoveNewLineCode) { + text = text.replace("\r", "").replace("\n", ""); + } String formattedText = sqlFormatter.format(text); textArea.setText(formattedText); + + SQLFormatterConfig currentConfig = SQLFormatterConfig.getInstance(); + if (currentConfig != null) { + currentConfig.setRemoveNewLineCode(shouldRemoveNewLineCode); + SQLFormatterConfig.getInstance().loadState(currentConfig); + } }); } @@ -35,6 +46,11 @@ public void createToolWindowContent(@NotNull Project project, @NotNull ToolWindo ContentFactory contentFactory = ContentFactory.SERVICE.getInstance(); Content content = contentFactory.createContent(toolWindowContent, "", false); toolWindow.getContentManager().addContent(content); + + SQLFormatterConfig config = SQLFormatterConfig.getInstance(); + if (config.isRemoveNewLineCode()) { + removeNewLineCode.setSelected(true); + } } { @@ -53,10 +69,10 @@ public void createToolWindowContent(@NotNull Project project, @NotNull ToolWindo */ private void $$$setupUI$$$() { toolWindowContent = new JPanel(); - toolWindowContent.setLayout(new GridLayoutManager(3, 1, new Insets(0, 0, 0, 0), -1, -1)); + toolWindowContent.setLayout(new GridLayoutManager(4, 1, new Insets(0, 0, 0, 0), -1, -1)); buttonFormat = new JButton(); buttonFormat.setText("Format"); - toolWindowContent.add(buttonFormat, new GridConstraints(2, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + toolWindowContent.add(buttonFormat, new GridConstraints(3, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); final JScrollPane scrollPane1 = new JScrollPane(); toolWindowContent.add(scrollPane1, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false)); textArea = new JTextArea(); @@ -65,6 +81,10 @@ public void createToolWindowContent(@NotNull Project project, @NotNull ToolWindo labelMessage.setForeground(new Color(-2215827)); labelMessage.setText(""); toolWindowContent.add(labelMessage, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + removeNewLineCode = new JCheckBox(); + removeNewLineCode.setSelected(false); + removeNewLineCode.setText("Remove new line code"); + toolWindowContent.add(removeNewLineCode, new GridConstraints(2, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); } /** @@ -73,4 +93,5 @@ public void createToolWindowContent(@NotNull Project project, @NotNull ToolWindo public JComponent $$$getRootComponent$$$() { return toolWindowContent; } -} \ No newline at end of file + +}