From 9f6d40cd901eb95dd058ad75df60636622576217 Mon Sep 17 00:00:00 2001
From: neil <459208047@qq.com>
Date: Mon, 23 Oct 2017 15:34:30 +0800
Subject: [PATCH 01/15] =?UTF-8?q?REPORT-5180=20=E6=97=A5=E5=BF=97=E7=BA=A7?=
=?UTF-8?q?=E5=88=AB=E9=85=8D=E7=BD=AE=E6=95=B4=E5=90=88=E5=88=B0=E4=B8=80?=
=?UTF-8?q?=E4=B8=AAxml=E4=B8=AD.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/com/fr/design/DesignerEnvManager.java | 42 ++-----------------
.../design/actions/file/PreferencePane.java | 37 ++++++++++++----
.../loghandler/DesignerLogHandler.java | 38 +++++++++++++----
3 files changed, 64 insertions(+), 53 deletions(-)
diff --git a/designer_base/src/com/fr/design/DesignerEnvManager.java b/designer_base/src/com/fr/design/DesignerEnvManager.java
index f43d05bacd..1cd613785a 100644
--- a/designer_base/src/com/fr/design/DesignerEnvManager.java
+++ b/designer_base/src/com/fr/design/DesignerEnvManager.java
@@ -14,7 +14,6 @@ import com.fr.env.RemoteEnv;
import com.fr.env.SignIn;
import com.fr.file.FILEFactory;
import com.fr.general.ComparatorUtils;
-import com.fr.general.FRLevel;
import com.fr.general.FRLogFormatter;
import com.fr.general.FRLogger;
import com.fr.general.GeneralContext;
@@ -34,9 +33,10 @@ import com.fr.stable.xml.XMLTools;
import com.fr.stable.xml.XMLWriter;
import com.fr.stable.xml.XMLableReader;
-import javax.swing.*;
+import javax.swing.SwingWorker;
import javax.swing.SwingWorker.StateValue;
-import java.awt.*;
+import java.awt.Color;
+import java.awt.Rectangle;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
@@ -53,7 +53,6 @@ import java.util.Map;
import java.util.Map.Entry;
import java.util.logging.FileHandler;
import java.util.logging.Handler;
-import java.util.logging.Level;
/**
* The manager of Designer GUI.
@@ -97,7 +96,6 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
private Color paginationLineColor = Color.black; // line color of paper
private boolean supportCellEditorDef = false;
private boolean isDragPermited = false;
- private Level level = Level.INFO;
private int language;
//2014-8-26默认显示全部, 因为以前的版本, 虽然是false, 实际上是显示所有表, 因此这边要兼容
private boolean useOracleSystemSpace = true;
@@ -240,10 +238,6 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
*/
public static void loadLogSetting() {
DesignerEnvManager designerEnvManager = DesignerEnvManager.getEnvManager();
- Level logLevel = designerEnvManager.getLogLevel();
- if (logLevel != null) {
- FRContext.getLogger().setLogLevel(logLevel, true);
- }
if (StringUtils.isNotEmpty(designerEnvManager.getJdkHome())) {
System.setProperty("java.home", designerEnvManager.getJdkHome());
}
@@ -1156,20 +1150,6 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
this.logLocation = logsLocation;
}
- /**
- * 返回日志的等级
- */
- public Level getLogLevel() {
- return this.level;
- }
-
- /**
- * 设置log的等级
- */
- public void setLogLevel(Level level) {
- this.level = level;
- }
-
/**
* 设置撤销的限制次数
*/
@@ -1320,8 +1300,6 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
readActiveKey(reader);
} else if ("LogLocation".equals(name)) {
readLogLocation(reader);
- } else if ("LogLevel".equals(name)) {
- this.readLogLevel(reader);
} else if ("Language".equals(name)) {
readLanguage(reader);
} else if ("JettyServerPort".equals(name)) {
@@ -1516,15 +1494,6 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
checkRecentOpenedFileNum();
}
-
- private void readLogLevel(XMLableReader reader) {
- String level;
- if ((level = reader.getElementValue()) != null) {
- this.setLogLevel(FRLevel.getByName(level).getLevel());
- }
- }
-
-
/**
* Write XML.
* The method will be invoked when save data to XML file.
@@ -1700,11 +1669,6 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
writer.end();
}
- if (this.level != null) {
- writer.startTAG("LogLevel");
- writer.textNode(FRLevel.getByLevel(this.level).getName());
- writer.end();
- }
if (StringUtils.isNotBlank(jdkHome)) {
writer.startTAG("jdkHome");
writer.textNode(jdkHome);
diff --git a/designer_base/src/com/fr/design/actions/file/PreferencePane.java b/designer_base/src/com/fr/design/actions/file/PreferencePane.java
index 51b8c374ae..d32b110d16 100644
--- a/designer_base/src/com/fr/design/actions/file/PreferencePane.java
+++ b/designer_base/src/com/fr/design/actions/file/PreferencePane.java
@@ -1,6 +1,8 @@
package com.fr.design.actions.file;
import com.fr.base.BaseUtils;
+import com.fr.base.ConfigManager;
+import com.fr.base.FRContext;
import com.fr.design.DesignerEnvManager;
import com.fr.design.RestartHelper;
import com.fr.design.dialog.BasicDialog;
@@ -25,9 +27,24 @@ import com.fr.general.FRFont;
import com.fr.general.FRLevel;
import com.fr.general.Inter;
-import javax.swing.*;
-import java.awt.*;
-import java.awt.event.*;
+import javax.swing.JFileChooser;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.KeyStroke;
+import javax.swing.SwingUtilities;
+import java.awt.BorderLayout;
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.Window;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.awt.event.KeyAdapter;
+import java.awt.event.KeyEvent;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
import java.io.File;
import java.util.ArrayList;
import java.util.Locale;
@@ -354,7 +371,7 @@ public class PreferencePane extends BasicPane {
logLevelPane.add(logLevelComboBox);
logLevelComboBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- DesignerEnvManager.getEnvManager().setLogLevel(((FRLevel) logLevelComboBox.getSelectedItem()).getLevel());
+ ConfigManager.getProviderInstance().setServerLogLevel(((FRLevel) logLevelComboBox.getSelectedItem()).getLevel());
}
});
}
@@ -534,7 +551,7 @@ public class PreferencePane extends BasicPane {
this.logExportDirectoryField.setText(designerEnvManager.getLogLocation());
- this.logLevelComboBox.setSelectedItem(FRLevel.getByLevel(designerEnvManager.getLogLevel()));
+ this.logLevelComboBox.setSelectedItem(FRLevel.getByLevel(ConfigManager.getProviderInstance().getServerLogLevel()));
this.languageComboBox.setSelectedItem(LANGUAGE.get(designerEnvManager.getLanguage()));
designerEnvLanguageIndex = designerEnvManager.getLanguage();
@@ -578,8 +595,6 @@ public class PreferencePane extends BasicPane {
designerEnvManager.setLogLocation(this.logExportDirectoryField.getText());
- designerEnvManager.setLogLevel(((FRLevel) logLevelComboBox.getSelectedItem()).getLevel());
-
designerEnvManager.setSupportUndo(supportUndoCheckBox.isSelected());
designerEnvManager.setSupportDefaultParentCalculate(supportDefaultParentCalculateCheckBox.isSelected());
@@ -615,6 +630,14 @@ public class PreferencePane extends BasicPane {
if (maxUndoLimit.getSelectedIndex() == SELECTED_INDEX_5) {
designerEnvManager.setUndoLimit(MAX_UNDO_LIMIT_50);
}
+
+ ConfigManager.getProviderInstance().setServerLogLevel(((FRLevel) logLevelComboBox.getSelectedItem()).getLevel());
+ try {
+ FRContext.getCurrentEnv().writeResource(ConfigManager.getProviderInstance());
+ } catch (Exception e) {
+ FRContext.getLogger().error(e.getMessage());
+ }
+
}
/*
diff --git a/designer_base/src/com/fr/design/mainframe/loghandler/DesignerLogHandler.java b/designer_base/src/com/fr/design/mainframe/loghandler/DesignerLogHandler.java
index 740bd4ffe1..9a2aed712f 100644
--- a/designer_base/src/com/fr/design/mainframe/loghandler/DesignerLogHandler.java
+++ b/designer_base/src/com/fr/design/mainframe/loghandler/DesignerLogHandler.java
@@ -1,20 +1,44 @@
package com.fr.design.mainframe.loghandler;
import com.fr.base.BaseUtils;
+import com.fr.base.ConfigManager;
import com.fr.base.FRContext;
-import com.fr.design.DesignerEnvManager;
import com.fr.design.gui.icontainer.UIScrollPane;
import com.fr.design.gui.imenu.UIMenuItem;
import com.fr.design.layout.FRGUIPaneFactory;
-import com.fr.general.*;
+import com.fr.general.ComparatorUtils;
+import com.fr.general.FRLogLevel;
+import com.fr.general.FRLogger;
+import com.fr.general.GeneralContext;
+import com.fr.general.Inter;
import com.fr.log.LogHandler;
import com.fr.stable.EnvChangedListener;
import com.fr.stable.xml.LogRecordTimeProvider;
-import javax.swing.*;
-import javax.swing.text.*;
-import java.awt.*;
-import java.awt.event.*;
+import javax.swing.AbstractAction;
+import javax.swing.ActionMap;
+import javax.swing.InputMap;
+import javax.swing.JCheckBoxMenuItem;
+import javax.swing.JComponent;
+import javax.swing.JPanel;
+import javax.swing.JPopupMenu;
+import javax.swing.JTextPane;
+import javax.swing.KeyStroke;
+import javax.swing.text.BadLocationException;
+import javax.swing.text.DefaultEditorKit;
+import javax.swing.text.Document;
+import javax.swing.text.SimpleAttributeSet;
+import javax.swing.text.StyleConstants;
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.awt.event.KeyEvent;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Level;
@@ -105,7 +129,7 @@ public class DesignerLogHandler {
@Override
public void actionPerformed(ActionEvent e) {
JPopupMenu showsetPopup = new JPopupMenu();
- int logLevelvalue = DesignerEnvManager.getEnvManager().getLogLevel().intValue();
+ int logLevelvalue = ConfigManager.getProviderInstance().getServerLogLevel().intValue();
if (logLevelvalue <= INFO_INT) {
showsetPopup.add(showInfo);
showsetPopup.add(showError);
From 88c2d8697a8a32bb7698d4968bdbec162633801d Mon Sep 17 00:00:00 2001
From: kerry
Date: Mon, 23 Oct 2017 16:38:06 +0800
Subject: [PATCH 02/15] =?UTF-8?q?REPORT-5137=20[9.0=E4=BA=8C=E8=BD=AE?=
=?UTF-8?q?=E5=9B=9E=E5=BD=92]=E8=A1=A8=E5=8D=95=E5=B8=83=E5=B1=80?=
=?UTF-8?q?=E7=BB=84=E4=BB=B6=E9=97=B4=E9=9A=94=E5=8F=AA=E8=83=BD=E8=BE=93?=
=?UTF-8?q?=E5=85=A5=E6=9C=80=E5=A4=9A2=E4=BD=8D=E6=95=B0=E5=92=8C?=
=?UTF-8?q?=E5=AD=97=E4=BD=93=E5=A4=A7=E5=B0=8F=E6=8E=A7=E4=BB=B6=E6=A0=B7?=
=?UTF-8?q?=E5=BC=8F=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../widget/ui/NumberEditorDefinePane.java | 4 +-
.../com/fr/design/gui/ispinner/UISpinner.java | 2 +
.../component/NumberEditorValidatePane.java | 5 ++-
.../parameter/RootDesignDefinePane.java | 2 +-
.../ui/designer/CheckBoxDefinePane.java | 13 ++++---
.../ui/designer/FieldEditorDefinePane.java | 9 ++---
.../ui/designer/MultiFileEditorPane.java | 7 ++--
.../designer/component/FontSizeComboPane.java | 38 +++++++++++++++++++
.../designer/component/PaddingBoundPane.java | 10 ++---
.../component/WidgetAbsoluteBoundPane.java | 8 ++--
.../designer/component/WidgetBoundPane.java | 4 +-
.../layout/FRFitLayoutDefinePane.java | 20 +++++++++-
.../layout/WTabFitLayoutDefinePane.java | 2 +-
13 files changed, 91 insertions(+), 33 deletions(-)
create mode 100644 designer_form/src/com/fr/design/widget/ui/designer/component/FontSizeComboPane.java
diff --git a/designer/src/com/fr/design/widget/ui/NumberEditorDefinePane.java b/designer/src/com/fr/design/widget/ui/NumberEditorDefinePane.java
index 88244b903f..ed8f4315e0 100644
--- a/designer/src/com/fr/design/widget/ui/NumberEditorDefinePane.java
+++ b/designer/src/com/fr/design/widget/ui/NumberEditorDefinePane.java
@@ -1,12 +1,12 @@
package com.fr.design.widget.ui;
-import java.awt.*;
-import javax.swing.BorderFactory;
import javax.swing.JPanel;
import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.widget.component.NumberEditorValidatePane;
import com.fr.form.ui.NumberEditor;
+import java.awt.BorderLayout;
+
public class NumberEditorDefinePane extends FieldEditorDefinePane {
/**
* FieldEditorDefinePane
diff --git a/designer_base/src/com/fr/design/gui/ispinner/UISpinner.java b/designer_base/src/com/fr/design/gui/ispinner/UISpinner.java
index 2ffd53e19f..0ec3768aa5 100644
--- a/designer_base/src/com/fr/design/gui/ispinner/UISpinner.java
+++ b/designer_base/src/com/fr/design/gui/ispinner/UISpinner.java
@@ -262,7 +262,9 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver
textField.addFocusListener(new FocusAdapter() {
@Override
public void focusLost(FocusEvent e) {
+ textField.getDocument().removeDocumentListener(docListener);
textField.setValue(value);
+ textField.getDocument().addDocumentListener(docListener);
}
});
}
diff --git a/designer_base/src/com/fr/design/widget/component/NumberEditorValidatePane.java b/designer_base/src/com/fr/design/widget/component/NumberEditorValidatePane.java
index 68ca5ae1e9..bc2612aa67 100644
--- a/designer_base/src/com/fr/design/widget/component/NumberEditorValidatePane.java
+++ b/designer_base/src/com/fr/design/widget/component/NumberEditorValidatePane.java
@@ -254,11 +254,12 @@ public class NumberEditorValidatePane extends JPanel {
minValueSpinner.setEnabled(true);
minValueSpinner.setValue(new Double(e.getMinValue()));
}
- errorMsgTextField.setText(e.getRegErrorMessage());
- if(e.getMaxValue() == Double.MAX_VALUE || e.getMinValue() == -Double.MAX_VALUE){
+ if(setMinValueCheckBox.isSelected() || setMaxValueCheckBox.isSelected()){
errorMsgTextFieldPane.setVisible(true);
+ errorMsgTextField.setText(e.getRegErrorMessage());
}else{
errorMsgTextFieldPane.setVisible(false);
+ errorMsgTextField.setText(StringUtils.EMPTY);
}
}
diff --git a/designer_form/src/com/fr/design/parameter/RootDesignDefinePane.java b/designer_form/src/com/fr/design/parameter/RootDesignDefinePane.java
index d8ef6f0fc4..c1725e8b72 100644
--- a/designer_form/src/com/fr/design/parameter/RootDesignDefinePane.java
+++ b/designer_form/src/com/fr/design/parameter/RootDesignDefinePane.java
@@ -47,7 +47,7 @@ public class RootDesignDefinePane extends AbstractDataModify {
public void initComponent() {
this.setLayout(FRGUIPaneFactory.createBorderLayout());
- designerWidth = new UISpinner(1, 1000, 1);
+ designerWidth = new UISpinner(1, Integer.MAX_VALUE, 1);
JPanel advancePane = createAdvancePane();
UIExpandablePane advanceExpandablePane = new UIExpandablePane(Inter.getLocText("FR-Designer_Advanced"), 280, 20, advancePane);
this.add(advanceExpandablePane, BorderLayout.NORTH);
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java b/designer_form/src/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java
index ab65dbda6f..133318fe2c 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java
@@ -4,21 +4,22 @@ import com.fr.design.designer.IntervalConstants;
import com.fr.design.designer.creator.XCreator;
import com.fr.design.foldablepane.UIExpandablePane;
import com.fr.design.gui.ilable.UILabel;
-import com.fr.design.gui.ispinner.UISpinner;
import com.fr.design.gui.itextfield.UITextField;
import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper;
+import com.fr.design.widget.ui.designer.component.FontSizeComboPane;
import com.fr.design.widget.ui.designer.component.FormWidgetValuePane;
import com.fr.form.ui.CheckBox;
import com.fr.general.Inter;
-import javax.swing.*;
-import java.awt.*;
+import javax.swing.BorderFactory;
+import javax.swing.JPanel;
+import java.awt.Component;
public class CheckBoxDefinePane extends AbstractDataModify {
private UITextField text;
- private UISpinner fontSizePane;
+ private FontSizeComboPane fontSizePane;
private FormWidgetValuePane formWidgetValuePane;
protected UITextField labelNameTextField;
@@ -30,7 +31,7 @@ public class CheckBoxDefinePane extends AbstractDataModify {
private void iniComoponents() {
this.setLayout(FRGUIPaneFactory.createBorderLayout());
text = new UITextField();
- fontSizePane = new UISpinner(0, 20, 1, 0);
+ fontSizePane = new FontSizeComboPane();
labelNameTextField = new UITextField();
formWidgetValuePane = new FormWidgetValuePane(creator.toData(), false);
double f = TableLayout.FILL;
@@ -70,7 +71,7 @@ public class CheckBoxDefinePane extends AbstractDataModify {
public CheckBox updateBean() {
CheckBox box = (CheckBox)creator.toData();
box.setText(text.getText());
- box.setFontSize((int)fontSizePane.getValue());
+ box.setFontSize(fontSizePane.getValue());
formWidgetValuePane.update(box);
box.setLabelName(labelNameTextField.getText());
return box;
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java b/designer_form/src/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java
index 8392ac2b6c..ad47924d43 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/FieldEditorDefinePane.java
@@ -6,11 +6,10 @@ import com.fr.design.designer.creator.*;
import com.fr.design.foldablepane.UIExpandablePane;
import com.fr.design.gui.icheckbox.UICheckBox;
import com.fr.design.gui.ilable.UILabel;
-import com.fr.design.gui.ispinner.UISpinner;
import com.fr.design.gui.itextfield.UITextField;
import com.fr.design.layout.FRGUIPaneFactory;
-import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper;
+import com.fr.design.widget.ui.designer.component.FontSizeComboPane;
import com.fr.form.ui.FieldEditor;
import com.fr.general.Inter;
@@ -26,7 +25,7 @@ public abstract class FieldEditorDefinePane extends Abstr
// richer:错误信息,是所有控件共有的属性,所以放到这里来
protected UITextField errorMsgTextField;
protected JPanel validatePane;
- protected UISpinner fontSizePane;
+ protected FontSizeComboPane fontSizePane;
protected UITextField labelNameTextField;
@@ -40,7 +39,7 @@ public abstract class FieldEditorDefinePane extends Abstr
labelNameTextField = new UITextField();
allowBlankCheckBox = new UICheckBox(Inter.getLocText("FR-Designer_Allow_Null"));
allowBlankCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
- fontSizePane = new UISpinner(0, 20, 1, 0);
+ fontSizePane = new FontSizeComboPane();
errorMsgTextField = new UITextField();
JPanel contentPane = this.setFirstContentPane();
JPanel jPanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
@@ -70,7 +69,7 @@ public abstract class FieldEditorDefinePane extends Abstr
e.setAllowBlank(this.allowBlankCheckBox.isSelected());
e.setErrorMessage(this.errorMsgTextField.getText());
- e.setFontSize((int)fontSizePane.getValue());
+ e.setFontSize(fontSizePane.getValue());
e.setLabelName(labelNameTextField.getText());
return e;
}
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/MultiFileEditorPane.java b/designer_form/src/com/fr/design/widget/ui/designer/MultiFileEditorPane.java
index cf406f56e2..a2819ca243 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/MultiFileEditorPane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/MultiFileEditorPane.java
@@ -10,6 +10,7 @@ import com.fr.design.gui.ispinner.UISpinner;
import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper;
+import com.fr.design.widget.ui.designer.component.FontSizeComboPane;
import com.fr.form.ui.MultiFileEditor;
import com.fr.general.Inter;
@@ -20,7 +21,7 @@ public class MultiFileEditorPane extends FieldEditorDefinePane
private DictionaryComboBox acceptType;
private UICheckBox singleFileCheckBox;
private UISpinner fileSizeField;
- private UISpinner fontSizeField;
+ private FontSizeComboPane fontSizeField;
public MultiFileEditorPane(XCreator xCreator) {
super(xCreator);
@@ -39,7 +40,7 @@ public class MultiFileEditorPane extends FieldEditorDefinePane
singleFileCheckBox.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
fileSizeField = new UISpinner(0, Integer.MAX_VALUE, 1, -1);
fileSizeField.setPreferredSize(new Dimension(140, 20));
- fontSizeField = new UISpinner(0, 20, 1, 0);
+ fontSizeField = new FontSizeComboPane();
JPanel singleFilePane = FRGUIPaneFactory.createNormalFlowInnerContainer_M_Pane();
singleFilePane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
@@ -82,7 +83,7 @@ public class MultiFileEditorPane extends FieldEditorDefinePane
ob.setAccept((String) acceptType.getSelectedItem());
ob.setSingleFile(singleFileCheckBox.isSelected());
ob.setMaxSize(fileSizeField.getValue());
- ob.setFontSize((int)fontSizeField.getValue());
+ ob.setFontSize(fontSizeField.getValue());
return ob;
}
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/component/FontSizeComboPane.java b/designer_form/src/com/fr/design/widget/ui/designer/component/FontSizeComboPane.java
new file mode 100644
index 0000000000..57df97ee12
--- /dev/null
+++ b/designer_form/src/com/fr/design/widget/ui/designer/component/FontSizeComboPane.java
@@ -0,0 +1,38 @@
+package com.fr.design.widget.ui.designer.component;
+
+import com.fr.design.gui.icombobox.UIComboBox;
+import com.fr.design.layout.FRGUIPaneFactory;
+import javax.swing.JPanel;
+import java.awt.BorderLayout;
+import java.util.Vector;
+
+/**
+ * Created by kerry on 2017/10/23.
+ */
+public class FontSizeComboPane extends JPanel{
+ private static final int MAX_FONT_SIZE = 100;
+ private UIComboBox comboBox;
+ public FontSizeComboPane(){
+ initComponent();
+ }
+ public void initComponent(){
+ this.setLayout(FRGUIPaneFactory.createBorderLayout());
+ Vector integerList = new Vector();
+ for (int i = 1; i < MAX_FONT_SIZE; i++) {
+ integerList.add(i);
+ }
+ comboBox = new UIComboBox(integerList);
+ comboBox.setEditable(true);
+ this.add(comboBox, BorderLayout.CENTER);
+ }
+
+ public int getValue() {
+ return Integer.valueOf(comboBox.getSelectedItem().toString());
+ }
+
+ public void setValue(int fontSize) {
+ comboBox.setSelectedItem(fontSize);
+ }
+
+
+}
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/component/PaddingBoundPane.java b/designer_form/src/com/fr/design/widget/ui/designer/component/PaddingBoundPane.java
index b33a913c4a..992eb76c67 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/component/PaddingBoundPane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/component/PaddingBoundPane.java
@@ -32,10 +32,10 @@ public class PaddingBoundPane extends BasicPane{
public void initBoundPane() {
this.setLayout(FRGUIPaneFactory.createBorderLayout());
- top = new UISpinner(0, 1000, 1, 0);
- bottom = new UISpinner(0, 1000, 1, 0);
- left = new UISpinner(0, 1000, 1, 0);
- right = new UISpinner(0, 1000, 1, 0);
+ top = new UISpinner(0, Integer.MAX_VALUE, 1, 0);
+ bottom = new UISpinner(0, Integer.MAX_VALUE, 1, 0);
+ left = new UISpinner(0, Integer.MAX_VALUE, 1, 0);
+ right = new UISpinner(0, Integer.MAX_VALUE, 1, 0);
top.setGlobalName(Inter.getLocText("FR-Designer_Layout-Padding"));
bottom.setGlobalName(Inter.getLocText("FR-Designer_Layout-Padding"));
left.setGlobalName(Inter.getLocText("FR-Designer_Layout-Padding"));
@@ -52,7 +52,7 @@ public class PaddingBoundPane extends BasicPane{
new Component[]{null, createRightPane(new UILabel(Inter.getLocText("FR-Designer_Left"), SwingConstants.CENTER), new UILabel(Inter.getLocText("FR-Designer_Right"), SwingConstants.CENTER))},
};
JPanel panel = TableLayoutHelper.createGapTableLayoutPane(components, rowSize, columnSize, rowCount, IntervalConstants.INTERVAL_W2, IntervalConstants.INTERVAL_L1);
- panel.setBorder(BorderFactory.createEmptyBorder(10, 0, 10, 0));
+ panel.setBorder(BorderFactory.createEmptyBorder(IntervalConstants.INTERVAL_L1, 0, IntervalConstants.INTERVAL_L1, 0));
this.add(panel);
}
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/component/WidgetAbsoluteBoundPane.java b/designer_form/src/com/fr/design/widget/ui/designer/component/WidgetAbsoluteBoundPane.java
index a2e44fce7c..c0d71c08af 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/component/WidgetAbsoluteBoundPane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/component/WidgetAbsoluteBoundPane.java
@@ -21,10 +21,10 @@ public class WidgetAbsoluteBoundPane extends WidgetBoundPane {
}
public void initBoundPane() {
- x = new UISpinner(0, 1200, 1);
- y = new UISpinner(0, 1200, 1);
- width = new UISpinner(0, 1200, 1);
- height = new UISpinner(0, 1200, 1);
+ x = new UISpinner(0, Integer.MAX_VALUE, 1);
+ y = new UISpinner(0, Integer.MAX_VALUE, 1);
+ width = new UISpinner(0, Integer.MAX_VALUE, 1);
+ height = new UISpinner(0, Integer.MAX_VALUE, 1);
x.setGlobalName(Inter.getLocText("FR-Designer_Coords_And_Size"));
y.setGlobalName(Inter.getLocText("FR-Designer_Coords_And_Size"));
width.setGlobalName(Inter.getLocText("FR-Designer_Coords_And_Size"));
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/component/WidgetBoundPane.java b/designer_form/src/com/fr/design/widget/ui/designer/component/WidgetBoundPane.java
index 68feb15960..2a033227e8 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/component/WidgetBoundPane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/component/WidgetBoundPane.java
@@ -48,8 +48,8 @@ public class WidgetBoundPane extends BasicPane {
}
public void initBoundPane() {
- width = new UISpinner(0, 1200, 1);
- height = new UISpinner(0, 1200, 1);
+ width = new UISpinner(0, Integer.MAX_VALUE, 1);
+ height = new UISpinner(0, Integer.MAX_VALUE, 1);
width.setGlobalName(Inter.getLocText("FR-Designer_Coords_And_Size"));
height.setGlobalName(Inter.getLocText("FR-Designer_Coords_And_Size"));
if (creator.acceptType(XWCardLayout.class)) {
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/layout/FRFitLayoutDefinePane.java b/designer_form/src/com/fr/design/widget/ui/designer/layout/FRFitLayoutDefinePane.java
index eaafb9dbf8..b429ff84b4 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/layout/FRFitLayoutDefinePane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/layout/FRFitLayoutDefinePane.java
@@ -80,7 +80,7 @@ public class FRFitLayoutDefinePane extends AbstractDataModify {
JPanel jPanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
layoutComboBox = initUIComboBox(FRLayoutTypeItems.ITEMS);
adaptComboBox = initUIComboBox(FRFitConstraintsItems.ITEMS);
- componentIntervel = new UISpinner(0, 100, 1, 0);
+ componentIntervel = new UISpinner(0, Integer.MAX_VALUE, 1, 0);
double f = TableLayout.FILL;
double p = TableLayout.PREFERRED;
double[] rowSize = {p, p};
@@ -185,10 +185,26 @@ public class FRFitLayoutDefinePane extends AbstractDataModify {
//todo 验证下
layout.setLayoutType(WBodyLayoutType.parse(state));
layout.setCompState(adaptComboBox.getSelectedIndex());
- layout.setCompInterval((int)componentIntervel.getValue());
+
+ int intervelValue = (int)componentIntervel.getValue();
+ if (xWFitLayout.canAddInterval(intervelValue)) {
+// 设置完间隔后,要同步处理界面组件,容器刷新后显示出对应效果
+ setLayoutGap(intervelValue);
+ }
+
return layout;
}
+ private void setLayoutGap(int value) {
+ int interval = wFitLayout.getCompInterval();
+ if (value != interval) {
+ xWFitLayout.moveContainerMargin();
+ xWFitLayout.moveCompInterval(xWFitLayout.getAcualInterval());
+ wFitLayout.setCompInterval(value);
+ xWFitLayout.addCompInterval(xWFitLayout.getAcualInterval());
+ }
+ }
+
@Override
public DataCreatorUI dataUI() {
return null;
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/layout/WTabFitLayoutDefinePane.java b/designer_form/src/com/fr/design/widget/ui/designer/layout/WTabFitLayoutDefinePane.java
index 8ca22dad1f..85ca8ee977 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/layout/WTabFitLayoutDefinePane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/layout/WTabFitLayoutDefinePane.java
@@ -56,7 +56,7 @@ public class WTabFitLayoutDefinePane extends AbstractDataModify {
}
public void initLayoutComponent(){
- componentInterval = new UISpinner(0, 100, 1, 0);
+ componentInterval = new UISpinner(0, Integer.MAX_VALUE, 1, 0);
titleField = new UITextField();
Component[][] components = new Component[][]{
new Component[]{new UILabel(Inter.getLocText("FR-Designer_Component_Interval")), componentInterval},
From 2605a1a869e5711c78bed205d8b809eaba855ee6 Mon Sep 17 00:00:00 2001
From: ju
Date: Tue, 24 Oct 2017 17:04:36 +0800
Subject: [PATCH 03/15] REPORT-5217
---
designer_base/src/com/fr/start/BaseDesigner.java | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/designer_base/src/com/fr/start/BaseDesigner.java b/designer_base/src/com/fr/start/BaseDesigner.java
index d299a8cdd5..34d2bb2431 100644
--- a/designer_base/src/com/fr/start/BaseDesigner.java
+++ b/designer_base/src/com/fr/start/BaseDesigner.java
@@ -67,10 +67,6 @@ public abstract class BaseDesigner extends ToolBarMenuDock {
ConfigManagerFactory.registerConfigManagerProxy(new ConfigManagerCreatorProxy());
//启动core
BuildContext.setBuildFilePath(buildPropertiesPath());
- Register.load();
- //标记一下是设计器启动
- PluginConversionModule.getInstance().markDesignerStart();
- SiteCenter.getInstance();
if (isDebug()) {
setDebugEnv();
@@ -82,6 +78,11 @@ public abstract class BaseDesigner extends ToolBarMenuDock {
DesignUtils.clientSend(args);
return;
}
+
+ Register.load();
+ //标记一下是设计器启动
+ PluginConversionModule.getInstance().markDesignerStart();
+ SiteCenter.getInstance();
//下面这两句的位置不能随便调换,因为会影响语言切换的问题
initLanguage();
From cc6eed1842ed74a93ae4f8856f7ceb74406e0d26 Mon Sep 17 00:00:00 2001
From: kerry
Date: Wed, 25 Oct 2017 14:08:51 +0800
Subject: [PATCH 04/15] =?UTF-8?q?REPORT-5209=209.0=E6=8E=A7=E4=BB=B6?=
=?UTF-8?q?=E5=B1=9E=E6=80=A7=E9=9D=A2=E6=9D=BF=E4=BA=A4=E4=BA=92=E9=97=AE?=
=?UTF-8?q?=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../fr/design/widget/CellWidgetCardPane.java | 37 ++++++-------------
.../widget/ui/DateEditorDefinePane.java | 13 +++++--
.../com/fr/design/dialog/AttrScrollPane.java | 30 +++++++++++++++
.../com/fr/design/dialog/BasicScrollPane.java | 15 ++++++--
.../widget/ui/FormWidgetCardPane.java | 15 ++------
.../ui/designer/CheckBoxDefinePane.java | 5 ++-
.../ui/designer/DateEditorDefinePane.java | 16 ++++++--
.../designer/DirectWriteEditorDefinePane.java | 4 +-
.../widget/ui/designer/LabelDefinePane.java | 4 +-
.../ui/designer/NumberEditorDefinePane.java | 4 +-
.../designer/TextFieldEditorDefinePane.java | 4 +-
.../designer/btn/ButtonGroupDefinePane.java | 4 +-
12 files changed, 98 insertions(+), 53 deletions(-)
create mode 100644 designer_base/src/com/fr/design/dialog/AttrScrollPane.java
diff --git a/designer/src/com/fr/design/widget/CellWidgetCardPane.java b/designer/src/com/fr/design/widget/CellWidgetCardPane.java
index 043e3a7798..77d1542cbb 100644
--- a/designer/src/com/fr/design/widget/CellWidgetCardPane.java
+++ b/designer/src/com/fr/design/widget/CellWidgetCardPane.java
@@ -2,7 +2,7 @@ package com.fr.design.widget;
import com.fr.design.constants.UIConstants;
import com.fr.design.data.DataCreatorUI;
-import com.fr.design.designer.IntervalConstants;
+import com.fr.design.dialog.AttrScrollPane;
import com.fr.design.dialog.BasicPane;
import com.fr.design.dialog.BasicScrollPane;
import com.fr.design.foldablepane.UIExpandablePane;
@@ -51,38 +51,24 @@ public class CellWidgetCardPane extends BasicPane {
this.removeAll();
this.setLayout(FRGUIPaneFactory.createBorderLayout());
- final JPanel jPanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
-
- BasicScrollPane basicScrollPane = new BasicScrollPane() {
- @Override
- protected JPanel createContentPane() {
- return jPanel;
- }
-
- @Override
- public void populateBean(Object ob) {
-
- }
-
- @Override
- protected String title4PopupWindow() {
- return null;
- }
- };
- this.add(basicScrollPane, BorderLayout.CENTER);
-
//k
tabbedPane = new CardLayout();
center = new JPanel(tabbedPane);
- jPanel.add(center, BorderLayout.CENTER);
- jPanel.setBorder(BorderFactory.createEmptyBorder(0, IntervalConstants.INTERVAL_L6, 0, 0));
+ this.add(center, BorderLayout.CENTER);
attriTabPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
eventTabPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
+ eventTabPane.setBorder(BorderFactory.createEmptyBorder(0, 10, 0, 10));
initPaneList();
eventPane = initWidgetEventPane(pane);
eventTabPane.add(eventPane, BorderLayout.CENTER);
//k
- center.add(attriTabPane, Inter.getLocText("FR-Designer_Attribute"));
+ BasicScrollPane basicScrollPane = new AttrScrollPane() {
+ @Override
+ protected JPanel createContentPane() {
+ return attriTabPane;
+ }
+ };
+ center.add(basicScrollPane, Inter.getLocText("FR-Designer_Attribute"));
center.add(eventTabPane, Inter.getLocText("FR-Designer_Event"));
final String[] tabTitles = new String[]{Inter.getLocText("FR-Designer_Attribute"), Inter.getLocText("FR-Designer_Event")};
@@ -100,7 +86,8 @@ public class CellWidgetCardPane extends BasicPane {
UIExpandablePane uiExpandablePane = new UIExpandablePane(Inter.getLocText("FR-Designer_Basic"), 280, 24, widgetPropertyPane);
- attriTabPane.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
+
+ attriTabPane.setBorder(BorderFactory.createEmptyBorder(10, 10, 0, 10));
attriTabPane.add(uiExpandablePane, BorderLayout.NORTH);
attriCardPane = FRGUIPaneFactory.createCardLayout_S_Pane();
diff --git a/designer/src/com/fr/design/widget/ui/DateEditorDefinePane.java b/designer/src/com/fr/design/widget/ui/DateEditorDefinePane.java
index 49c0d99282..6847745b7e 100644
--- a/designer/src/com/fr/design/widget/ui/DateEditorDefinePane.java
+++ b/designer/src/com/fr/design/widget/ui/DateEditorDefinePane.java
@@ -58,10 +58,17 @@ public class DateEditorDefinePane extends DirectWriteEditorDefinePane extends BasicBeanPane{
protected void setLeftContentPaneBounds(Container parent, UIScrollBar scrollBar, int beginY, int maxheight) {
int width = parent.getWidth();
int height = parent.getHeight();
- if (leftcontentPane.getPreferredSize().height > maxheight) {
- leftcontentPane.setBounds(0, -beginY, width - scrollBar.getWidth() - DET_WIDTH_OVER_HEIGHT, height + beginY);
+ if (leftcontentPane.getPreferredSize().height > maxheight && scrollBar.isVisible()) {
+ leftcontentPane.setBounds(0, -beginY, width - scrollBar.getWidth() + getOverWidth() - DET_WIDTH_OVER_HEIGHT, height + beginY);
scrollBar.setBounds(width - scrollBar.getWidth() - 1, 0, scrollBar.getWidth(), height);
} else {
- leftcontentPane.setBounds(0, 0, width - DET_WIDTH, height);
+ int hideBarWidth = hideBarWidth() ? scrollBar.getWidth() : 0;
+ leftcontentPane.setBounds(0, 0, width - DET_WIDTH + hideBarWidth, height);
}
}
+ protected int getOverWidth(){
+ return 0;
+ }
+
+ protected boolean hideBarWidth(){
+ return false;
+ }
+
protected boolean isShowScrollBar() {
return true;
}
diff --git a/designer_form/src/com/fr/design/mainframe/widget/ui/FormWidgetCardPane.java b/designer_form/src/com/fr/design/mainframe/widget/ui/FormWidgetCardPane.java
index 8f6e075c4b..1ac55c2eda 100644
--- a/designer_form/src/com/fr/design/mainframe/widget/ui/FormWidgetCardPane.java
+++ b/designer_form/src/com/fr/design/mainframe/widget/ui/FormWidgetCardPane.java
@@ -3,6 +3,7 @@ package com.fr.design.mainframe.widget.ui;
import com.fr.design.data.DataCreatorUI;
import com.fr.design.designer.beans.events.DesignerEvent;
import com.fr.design.designer.creator.*;
+import com.fr.design.dialog.AttrScrollPane;
import com.fr.design.dialog.BasicScrollPane;
import com.fr.design.foldablepane.UIExpandablePane;
import com.fr.design.gui.frpane.AbstractAttrNoScrollPane;
@@ -112,26 +113,16 @@ public class FormWidgetCardPane extends AbstractAttrNoScrollPane {
XCreator innerCreator = getXCreatorDedicated();
final JPanel jPanel = FRGUIPaneFactory.createBorderLayout_S_Pane();
- BasicScrollPane basicScrollPane = new BasicScrollPane() {
+ BasicScrollPane basicScrollPane = new AttrScrollPane() {
@Override
protected JPanel createContentPane() {
return jPanel;
}
-
- @Override
- public void populateBean(Object ob) {
-
- }
-
- @Override
- protected String title4PopupWindow() {
- return null;
- }
};
this.add(basicScrollPane, BorderLayout.CENTER);
attriCardPane = FRGUIPaneFactory.createBorderLayout_S_Pane();
jPanel.add(attriCardPane, BorderLayout.CENTER);
- jPanel.setBorder(BorderFactory.createEmptyBorder(0, 5, 0, 0));
+ jPanel.setBorder(BorderFactory.createEmptyBorder(0, 10, 0, 10));
final boolean isExtraWidget = FormWidgetDefinePaneFactoryBase.isExtraXWidget(innerCreator.toData());
this.listener = new AttributeChangeListener() {
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java b/designer_form/src/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java
index 133318fe2c..fc7a1dfdce 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/CheckBoxDefinePane.java
@@ -15,6 +15,7 @@ import com.fr.general.Inter;
import javax.swing.BorderFactory;
import javax.swing.JPanel;
+import javax.swing.SwingConstants;
import java.awt.Component;
public class CheckBoxDefinePane extends AbstractDataModify {
@@ -33,13 +34,15 @@ public class CheckBoxDefinePane extends AbstractDataModify {
text = new UITextField();
fontSizePane = new FontSizeComboPane();
labelNameTextField = new UITextField();
+ UILabel widgetValueLabel = new UILabel(Inter.getLocText("FR-Designer-Estate_Widget_Value"));
+ widgetValueLabel.setVerticalAlignment(SwingConstants.TOP);
formWidgetValuePane = new FormWidgetValuePane(creator.toData(), false);
double f = TableLayout.FILL;
double p = TableLayout.PREFERRED;
Component[][] components = new Component[][]{
new Component[]{new UILabel(Inter.getLocText("FR-Designer_Label_Name")), labelNameTextField},
new Component[]{new UILabel(Inter.getLocText("FR-Designer_Text")), text },
- new Component[]{new UILabel(Inter.getLocText("FR-Designer-Estate_Widget_Value")), formWidgetValuePane },
+ new Component[]{widgetValueLabel, formWidgetValuePane },
new Component[]{new UILabel(Inter.getLocText("FR-Designer_Font-Size")), fontSizePane},
};
double[] rowSize = {p, p, p, p, p, p};
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/DateEditorDefinePane.java b/designer_form/src/com/fr/design/widget/ui/designer/DateEditorDefinePane.java
index 2cdb311b5a..a46ed3830a 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/DateEditorDefinePane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/DateEditorDefinePane.java
@@ -56,6 +56,14 @@ public class DateEditorDefinePane extends DirectWriteEditorDefinePane(new String[] {Inter.getLocText("Date") , Inter.getLocText("String")});
JPanel formatHead = createFormatHead();
@@ -65,10 +73,10 @@ public class DateEditorDefinePane extends DirectWriteEditorDefinePane e
@Override
protected JPanel setFirstContentPane() {
JPanel advancePane = FRGUIPaneFactory.createBorderLayout_S_Pane();
+ UILabel widgetValueLabel = new UILabel(Inter.getLocText("FR-Designer-Estate_Widget_Value"));
+ widgetValueLabel.setVerticalAlignment(SwingConstants.TOP);
formWidgetValuePane = new FormWidgetValuePane(creator.toData(), false);
Component[] removeRepeatPane = new Component[]{createRepeatCheckBox(), null};
Component[] dicPane = createDictPane();
@@ -36,7 +38,7 @@ public abstract class DirectWriteEditorDefinePane e
double p = TableLayout.PREFERRED;
Component[][] components = new Component[][]{
new Component[]{new UILabel(Inter.getLocText("FR-Designer_Label_Name")), labelNameTextField},
- new Component[]{new UILabel(Inter.getLocText("FR-Designer-Estate_Widget_Value")), formWidgetValuePane },
+ new Component[]{widgetValueLabel, formWidgetValuePane },
dicPane,
removeRepeatPane,
waterMarkComponent,
diff --git a/designer_form/src/com/fr/design/widget/ui/designer/LabelDefinePane.java b/designer_form/src/com/fr/design/widget/ui/designer/LabelDefinePane.java
index 2cf3c72bb6..549f4266fe 100644
--- a/designer_form/src/com/fr/design/widget/ui/designer/LabelDefinePane.java
+++ b/designer_form/src/com/fr/design/widget/ui/designer/LabelDefinePane.java
@@ -62,10 +62,12 @@ public class LabelDefinePane extends AbstractDataModify