plough 7 years ago
parent
commit
ad826f43e8
  1. 5
      designer/src/com/fr/design/mainframe/JWorkBook.java
  2. 2
      designer_base/src/com/fr/design/gui/ispinner/UISpinner.java
  3. 2
      designer_base/src/com/fr/design/locale/designer.properties
  4. 4
      designer_base/src/com/fr/design/locale/designer_en_US.properties
  5. 2
      designer_base/src/com/fr/design/locale/designer_ja_JP.properties
  6. 3
      designer_base/src/com/fr/design/locale/designer_ko_KR.properties
  7. 4
      designer_base/src/com/fr/design/locale/designer_zh_CN.properties
  8. 2
      designer_base/src/com/fr/design/locale/designer_zh_TW.properties
  9. 14
      designer_base/src/com/fr/design/mainframe/JTemplate.java
  10. 22
      designer_base/src/com/fr/design/mainframe/TemplatePane.java
  11. 31
      designer_base/src/com/fr/design/mainframe/widget/BasicPropertyPane.java
  12. 9
      designer_chart/src/com/fr/plugin/chart/map/designer/type/VanChartMapSourceChoosePane.java
  13. 3
      designer_form/src/com/fr/design/designer/beans/models/StateModel.java
  14. 20
      designer_form/src/com/fr/design/designer/creator/XCreator.java
  15. 27
      designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java
  16. 13
      designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardTitleLayout.java
  17. BIN
      designer_form/src/com/fr/design/form/images/joption_failure.png
  18. BIN
      designer_form/src/com/fr/design/form/images/joption_success.png
  19. 2
      designer_form/src/com/fr/design/mainframe/ComponentTree.java
  20. 26
      designer_form/src/com/fr/design/mainframe/JForm.java
  21. 10
      designer_form/src/com/fr/design/mainframe/widget/ui/FormWidgetCardPane.java

5
designer/src/com/fr/design/mainframe/JWorkBook.java

@ -976,6 +976,11 @@ public class JWorkBook extends JTemplate<WorkBook, WorkBookUndoState> {
return ps;
}
@Override
public Parameter[] getJTemplateParameters() {
return this.parameterPane.getAllParameters();
}
/**
* 请求单元格区域的焦点
*/

2
designer_base/src/com/fr/design/gui/ispinner/UISpinner.java

@ -23,7 +23,7 @@ import java.awt.event.*;
public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver {
protected double value;
protected double value = -1;
private static final int SIZE = 20;
private static final int LEN = 13;
private static final int WIDTH = 13;

2
designer_base/src/com/fr/design/locale/designer.properties

@ -2177,3 +2177,5 @@ FR-Designer_Mobile_Screen_Zoom_In_Desc=4.7 inch or more mobile phones: zooming i
FR-Designer_Mobile_Screen_Zoom_Out_Desc=4.7 inch mobile phone: zooming out
FR-Designer_Adaptive_Property_Auto_Match_Desc=In order to improve the end template effect of the mobile phone, when using the reserved layout function, the component scaling logic under the adaptive layout is set as "lateral adaptive"
FR-Designer_Template_Settings=Template Settings
FR-Designer_Form_Widget_Rename_Failure=There are the same components, please set the other name
FR-Designer_Joption_News=news

4
designer_base/src/com/fr/design/locale/designer_en_US.properties

@ -2175,4 +2175,6 @@ FR-Designer_Mobile_Screen_Match_Desc=4.7 inch screen phone: fit
FR-Designer_Mobile_Screen_Zoom_In_Desc=4.7 inch or more mobile phones: zooming in
FR-Designer_Mobile_Screen_Zoom_Out_Desc=4.7 inch mobile phone: zooming out
FR-Designer_Adaptive_Property_Auto_Match_Desc=In order to improve the end template effect of the mobile phone, when using the reserved layout function, the component scaling logic under the adaptive layout is set as "lateral adaptive"
FR-Designer_Template_Settings=Template Settings
FR-Designer_Template_Settings=Template Settings
FR-Designer_Form_Widget_Rename_Failure=There are the same components, please set the other name
FR-Designer_Joption_News=news

2
designer_base/src/com/fr/design/locale/designer_ja_JP.properties

@ -2174,3 +2174,5 @@ FR-Designer_Mobile_Screen_Zoom_In=
FR-Designer_Mobile_Screen_Zoom_Out=
FR-Designer_Adaptive_Property_Auto_Match_Desc=
FR-Designer_Template_Settings=
FR-Designer_Form_Widget_Rename_Failure=\u5B58\u5728\u30EA\u30CD\u30FC\u30E0\u3059\u308B\u30E2\u30B8\u30E5\u30FC\u30EB\u306F\u3001\u4ED6\u306E\u540D\u79F0\u3092\u8A2D\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002
FR-Designer_Joption_News=\u30CB\u30E5\u30FC\u30B9

3
designer_base/src/com/fr/design/locale/designer_ko_KR.properties

@ -2152,7 +2152,6 @@ FR-Designer_Format_JavaScript=Format Code
FR-Designer_Tip_Content=
FR-Designer_Chart_Empty_Data=
FR-Designer-Vcs_tab_click=
FR-Designer_Move_Up=
FR-Designer_Move_Down=
FR-Designer_Move_To_Top=
FR-Designer_Move_To_Bottom=
@ -2176,3 +2175,5 @@ FR-Designer_Mobile_Screen_Zoom_Out=
FR-Designer_Mobile_Screen_Zoom_Out_Desc=
FR-Designer_Adaptive_Property_Auto_Match_Desc=
FR-Designer_Template_Settings=
FR-Designer_Form_Widget_Rename_Failure=\uC874\uC7AC \uB3D9\uBA85 \uAD6C\uC131 \uC694\uC18C \uC124\uC815 \uC880 \uB2E4\uB978 \uC774\uB984
FR-Designer_Joption_News=\uC18C\uC2DD

4
designer_base/src/com/fr/design/locale/designer_zh_CN.properties

@ -2176,4 +2176,6 @@ FR-Designer_Mobile_Screen_Match_Desc=4.7\u5BF8\u5C4F\u5E55\u624B\u673A\uFF1A\u90
FR-Designer_Mobile_Screen_Zoom_In_Desc=4.7\u5BF8\u4EE5\u4E0A\u624B\u673A\uFF1A\u653E\u5927
FR-Designer_Mobile_Screen_Zoom_Out_Desc=4.7\u5BF8\u4EE5\u4E0B\u624B\u673A\uFF1A\u538B\u7F29
FR-Designer_Adaptive_Property_Auto_Match_Desc=\u4E3A\u63D0\u5347\u624B\u673A\u7AEF\u6A21\u7248\u6548\u679C\uFF0C\u5728\u4F7F\u7528\u4FDD\u7559\u5E03\u5C40\u529F\u80FD\u65F6\uFF0C\u8BBE\u7F6E\u81EA\u9002\u5E94\u5E03\u5C40\u65B9\u5F0F\u4E0B\u7684\u7EC4\u4EF6\u7F29\u653E\u903B\u8F91\u4E3A"\u6A2A\u5411\u81EA\u9002\u5E94"
FR-Designer_Template_Settings=\u6A21\u7248\u8BBE\u7F6E
FR-Designer_Template_Settings=\u6A21\u7248\u8BBE\u7F6E
FR-Designer_Form_Widget_Rename_Failure=\u5B58\u5728\u91CD\u540D\u7EC4\u4EF6\uFF0C\u8BF7\u8BBE\u7F6E\u5176\u4ED6\u540D\u79F0
FR-Designer_Joption_News=\u6D88\u606F

2
designer_base/src/com/fr/design/locale/designer_zh_TW.properties

@ -2176,3 +2176,5 @@ FR-Designer_Mobile_Screen_Zoom_In_Desc=4.7\u5BF8\u4EE5\u4E0A\u624B\u6A5F\uFF1A\u
FR-Designer_Mobile_Screen_Zoom_Out_Desc=4.7\u5BF8\u4EE5\u4E0B\u624B\u6A5F\uFF1A\u58D3\u7E2E
FR-Designer_Adaptive_Property_Auto_Match_Desc=\u70BA\u63D0\u5347\u624B\u6A5F\u7AEF\u6A21\u7248\u6548\u679C\uFF0C\u5728\u4F7F\u7528\u4FDD\u7559\u4F48\u5C40\u529F\u80FD\u6642\uFF0C\u8A2D\u5B9A\u81EA\u6211\u8ABF\u6574\u4F48\u5C40\u7BA1\u9053\u4E0B\u7684\u7D44\u4EF6\u7E2E\u653E\u908F\u8F2F\u70BA\u201C\u6A6B\u5411\u81EA\u6211\u8ABF\u6574\u201D
FR-Designer_Template_Settings=\u6A21\u7248\u8A2D\u5B9A
FR-Designer_Form_Widget_Rename_Failure=\u5B58\u5728\u91CD\u540D\u7D44\u4EF6\uFF0C\u8ACB\u8A2D\u5B9A\u5176\u4ED6\u540D\u7A31
FR-Designer_Joption_News=\u6D88\u606F

14
designer_base/src/com/fr/design/mainframe/JTemplate.java

@ -998,10 +998,24 @@ public abstract class JTemplate<T extends IOFile, U extends BaseUndoState<?>> ex
return UIConstants.RUN_BIG_ICON;
}
/**
* 获取所有参数
*
* @return
*/
public Parameter[] getParameters() {
return new Parameter[0];
}
/**
* 获取模板参数
*
* @return
*/
public Parameter[] getJTemplateParameters() {
return new Parameter[0];
}
/**
* 请求表单焦点
*/

22
designer_base/src/com/fr/design/mainframe/TemplatePane.java

@ -10,6 +10,7 @@ import com.fr.design.dialog.DialogActionAdapter;
import com.fr.design.dialog.InformationWarnPane;
import com.fr.design.file.HistoryTemplateListPane;
import com.fr.design.file.TemplateTreePane;
import com.fr.design.fun.DesignerFrameUpButtonProvider;
import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.gui.ilable.UILabel;
import com.fr.env.EnvListPane;
@ -18,6 +19,10 @@ import com.fr.env.SignIn;
import com.fr.general.ComparatorUtils;
import com.fr.general.GeneralContext;
import com.fr.general.Inter;
import com.fr.plugin.context.PluginContext;
import com.fr.plugin.manage.PluginFilter;
import com.fr.plugin.observer.PluginEvent;
import com.fr.plugin.observer.PluginEventListener;
import com.fr.stable.EnvChangedListener;
import com.fr.stable.ProductConstants;
import com.fr.stable.StringUtils;
@ -34,6 +39,23 @@ public class TemplatePane extends JPanel implements MouseListener {
private static final long NUM = 1L;
private static int NUM200 = 200;
static {
GeneralContext.listenPluginRunningChanged(new PluginEventListener() {
@Override
public void on(PluginEvent event) {
JTemplate template = HistoryTemplateListPane.getInstance().getCurrentEditingTemplate();
if (template != null) {
template.refreshToolArea();
}
}
}, new PluginFilter() {
@Override
public boolean accept(PluginContext context) {
return context.contain(DesignerFrameUpButtonProvider.XML_TAG);
}
});
}
public static TemplatePane getInstance() {
return HOLDER.singleton;
}

31
designer_base/src/com/fr/design/mainframe/widget/BasicPropertyPane.java

@ -13,6 +13,10 @@ import javax.swing.BorderFactory;
import javax.swing.JPanel;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
/**
* Created by plough on 2017/8/7.
@ -27,7 +31,32 @@ public class BasicPropertyPane extends BasicPane {
protected void initContentPane() {
this.setLayout(FRGUIPaneFactory.createBorderLayout());
this.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
widgetName = new UITextField();
widgetName = new UITextField() {
protected void initListener() {
if (shouldResponseChangeListener()) {
addFocusListener(new FocusListener() {
@Override
public void focusGained(FocusEvent e) {
}
@Override
public void focusLost(FocusEvent e) {
attributeChange();
}
});
addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ENTER) {
attributeChange();
}
}
});
}
}
};
widgetName.setGlobalName(Inter.getLocText("FR-Designer_Basic"));
double f = TableLayout.FILL;
double p = TableLayout.PREFERRED;

9
designer_chart/src/com/fr/plugin/chart/map/designer/type/VanChartMapSourceChoosePane.java

@ -588,15 +588,10 @@ public class VanChartMapSourceChoosePane extends JPanel implements UIObserver {
private String[] getParams() {
JTemplate jTemplate = HistoryTemplateListPane.getInstance().getCurrentEditingTemplate();
if (jTemplate == null){
if (jTemplate == null) {
return new String[0];
}
String[] params = new String[0];
if(jTemplate.getTarget() instanceof ParameterHolder){
params = getParamsName(((ParameterHolder)jTemplate.getTarget()).getParameters());
}
return params;
return getParamsName((jTemplate.getJTemplateParameters()));
}
private String[] getParamsName(Parameter[] parameters) {

3
designer_form/src/com/fr/design/designer/beans/models/StateModel.java

@ -434,6 +434,9 @@ public class StateModel {
// 拖拽时画依附线用到的painter
private void setDependLinePainter(MouseEvent e) {
XCreator comp = designer.getComponentAt(e.getX(), e.getY(), selectionModel.getSelection().getSelectedCreators());
if(comp ==null){
return;
}
XLayoutContainer container = XCreatorUtils.getHotspotContainer(comp);
XCreator creator = selectionModel.getSelection().getSelectedCreator();
HoverPainter painter = AdapterBus.getContainerPainter(designer, container);

20
designer_form/src/com/fr/design/designer/creator/XCreator.java

@ -60,13 +60,7 @@ public abstract class XCreator extends JPanel implements XComponent, XCreatorToo
this.setLayout(FRGUIPaneFactory.createBorderLayout());
add(editor, BorderLayout.CENTER);
}
if (initSize.width == 0) {
initSize.width = this.initEditorSize().width;
}
if (initSize.height == 0) {
initSize.height = this.initEditorSize().height;
}
setInitSize(initSize);
this.setPreferredSize(initSize);
this.setSize(initSize);
this.setMaximumSize(initSize);
@ -90,6 +84,18 @@ public abstract class XCreator extends JPanel implements XComponent, XCreatorToo
}
}
/**
* 初始化组件大小
*/
public void setInitSize(Dimension initSize) {
if (initSize.width == 0) {
initSize.width = this.initEditorSize().width;
}
if (initSize.height == 0) {
initSize.height = this.initEditorSize().height;
}
}
/**
* 备份当前大小
*/

27
designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java

@ -12,9 +12,11 @@ import com.fr.design.designer.creator.XCreator;
import com.fr.design.designer.creator.XCreatorUtils;
import com.fr.design.designer.creator.XLayoutContainer;
import com.fr.design.designer.creator.XWBorderLayout;
import com.fr.design.designer.creator.XWidgetCreator;
import com.fr.design.icon.IconPathConstants;
import com.fr.design.mainframe.EditingMouseListener;
import com.fr.design.mainframe.FormDesigner;
import com.fr.form.ui.Widget;
import com.fr.form.ui.container.WAbsoluteLayout.BoundsWidget;
import com.fr.form.ui.container.WBorderLayout;
import com.fr.form.ui.container.WTabDisplayPosition;
@ -102,6 +104,31 @@ public class XWCardMainBorderLayout extends XWBorderLayout{
}
/**
* 将WLayout转换为XLayoutContainer
*/
@Override
public void convert() {
isRefreshing = true;
WBorderLayout wb = this.toData();
this.removeAll();
String[] arrs = {WBorderLayout.NORTH, WBorderLayout.SOUTH, WBorderLayout.EAST, WBorderLayout.WEST, WBorderLayout.CENTER};
for (int i = 0; i < arrs.length; i++) {
Widget wgt = wb.getLayoutWidget(arrs[i]);
//用来兼容之前titlePart设置不可见
if (wgt != null && ComparatorUtils.equals(arrs[i], WBorderLayout.NORTH) && !wgt.isVisible()) {
wgt.setVisible(true);
this.toData().setNorthSize(0);
}
if (wgt != null) {
XWidgetCreator comp = (XWidgetCreator) XCreatorUtils.createXCreator(wgt, calculatePreferredSize(wgt));
this.add(comp, arrs[i]);
comp.setBackupParent(this);
}
}
isRefreshing = false;
}
/**
* 切换到非添加状态
*

13
designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardTitleLayout.java

@ -54,6 +54,14 @@ public class XWCardTitleLayout extends XWBorderLayout {
super(widget, initSize);
}
/**
* 初始化组件大小titlePart的宽高可能为0
*/
@Override
public void setInitSize(Dimension initSize){
return;
}
public WTabDisplayPosition getDisplayPosition(){
return ((WCardTagLayout)this.getTagPart().toData()).getDisplayPosition();
@ -87,8 +95,7 @@ public class XWCardTitleLayout extends XWBorderLayout {
public void convert(){
isRefreshing = true;
WCardTitleLayout titleLayout = (WCardTitleLayout)this.toData();
this.setVisible(titleLayout.isVisible());
this.removeAll();
this.removeAll();
String[] arrs = {WBorderLayout.NORTH, WBorderLayout.SOUTH, WBorderLayout.EAST, WBorderLayout.WEST, WBorderLayout.CENTER};
for (int i = 0; i < arrs.length; i++) {
Widget wgt = titleLayout.getLayoutWidget(arrs[i]);
@ -222,5 +229,5 @@ public class XWCardTitleLayout extends XWBorderLayout {
public XCreator getXCreator() {
return (XCreator)this.getComponent(1);
}
}

BIN
designer_form/src/com/fr/design/form/images/joption_failure.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 900 B

BIN
designer_form/src/com/fr/design/form/images/joption_success.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 891 B

2
designer_form/src/com/fr/design/mainframe/ComponentTree.java

@ -240,7 +240,7 @@ public class ComponentTree extends JTree {
previewPane.setVisible(false);
}
if (!previewPane.isVisible()) {
if (!previewPane.isVisible() && comp.getWidth() != 0 && comp.getHeight() != 0) {
previewPane.setComp(comp);
int popupPosY = popupPosYOnScreen - FormHierarchyTreePane.getInstance().getLocationOnScreen().y;
GUICoreUtils.showPopupMenu(previewPane, FormHierarchyTreePane.getInstance(), -previewPane.getPreferredSize().width, popupPosY);

26
designer_form/src/com/fr/design/mainframe/JForm.java

@ -2,6 +2,7 @@ package com.fr.design.mainframe;
import com.fr.base.BaseUtils;
import com.fr.base.PaperSize;
import com.fr.base.Parameter;
import com.fr.design.DesignState;
import com.fr.design.actions.core.WorkBookSupportable;
import com.fr.design.actions.file.WebPreviewUtils;
@ -14,12 +15,7 @@ import com.fr.design.designer.beans.actions.FormDeleteAction;
import com.fr.design.designer.beans.actions.PasteAction;
import com.fr.design.designer.beans.events.DesignerEditListener;
import com.fr.design.designer.beans.events.DesignerEvent;
import com.fr.design.designer.creator.XComponent;
import com.fr.design.designer.creator.XCreator;
import com.fr.design.designer.creator.XCreatorUtils;
import com.fr.design.designer.creator.XLayoutContainer;
import com.fr.design.designer.creator.XWAbsoluteBodyLayout;
import com.fr.design.designer.creator.XWParameterLayout;
import com.fr.design.designer.creator.*;
import com.fr.design.designer.properties.FormWidgetAuthorityEditPane;
import com.fr.design.event.TargetModifiedEvent;
import com.fr.design.event.TargetModifiedListener;
@ -62,17 +58,8 @@ import com.fr.stable.ArrayUtils;
import com.fr.stable.Constants;
import com.fr.stable.bridge.StableFactory;
import javax.swing.BorderFactory;
import javax.swing.Icon;
import javax.swing.JComponent;
import javax.swing.JPanel;
import javax.swing.SwingConstants;
import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Font;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.image.BufferedImage;
@ -683,6 +670,11 @@ public class JForm extends JTemplate<Form, FormUndoState> implements BaseJForm {
return UIConstants.RUN_BIG_ICON;
}
@Override
public Parameter[] getJTemplateParameters() {
return this.getTarget().getTemplateParameters();
}
@Override
/**
* 创建菜单项Preview

10
designer_form/src/com/fr/design/mainframe/widget/ui/FormWidgetCardPane.java

@ -1,5 +1,6 @@
package com.fr.design.mainframe.widget.ui;
import com.fr.base.BaseUtils;
import com.fr.design.data.DataCreatorUI;
import com.fr.design.designer.beans.events.DesignerEvent;
import com.fr.design.designer.creator.XCreator;
@ -16,7 +17,9 @@ import com.fr.design.dialog.BasicScrollPane;
import com.fr.design.foldablepane.UIExpandablePane;
import com.fr.design.gui.frpane.AbstractAttrNoScrollPane;
import com.fr.design.gui.frpane.AttributeChangeListener;
import com.fr.design.gui.itextfield.UITextField;
import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.DesignerContext;
import com.fr.design.mainframe.FormDesigner;
import com.fr.design.widget.DataModify;
import com.fr.design.widget.FormWidgetDefinePaneFactoryBase;
@ -34,6 +37,7 @@ import com.fr.stable.StringUtils;
import javax.swing.BorderFactory;
import javax.swing.JComponent;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import java.awt.BorderLayout;
@ -208,6 +212,12 @@ public class FormWidgetCardPane extends AbstractAttrNoScrollPane {
currentEditorDefinePane.setGlobalName(getGlobalName());
Widget widget = currentEditorDefinePane.updateBean();
if (ComparatorUtils.equals(getGlobalName(), Inter.getLocText("FR-Designer_Basic")) && widgetPropertyPane != null) {
UITextField widgetNameField = widgetPropertyPane.getWidgetNameField();
if (designer.getTarget().isNameExist(widgetNameField.getText()) && !ComparatorUtils.equals(widgetNameField.getText(), widget.getWidgetName())) {
widgetNameField.setText(widget.getWidgetName());
JOptionPane.showMessageDialog(DesignerContext.getDesignerFrame(), Inter.getLocText("FR-Designer_Form_Widget_Rename_Failure"), Inter.getLocText("FR-Designer_Joption_News"), JOptionPane.ERROR_MESSAGE, BaseUtils.readIcon("com/fr/design/form/images/joption_failure.png"));
return;
}
widgetPropertyPane.update(widget);
xCreator.resetCreatorName(widget.getWidgetName());
xCreator.resetVisible(widget.isVisible());

Loading…
Cancel
Save