Browse Source

MOBILE-3963 9.0设计器新界面(移动端)=>代码规范

plough 7 years ago
parent
commit
22f763a6c4
  1. 11
      designer_base/src/com/fr/design/gui/frpane/AbstractAttrNoScrollPane.java
  2. 30
      designer_form/src/com/fr/design/mainframe/MobileWidgetListPane.java
  3. 23
      designer_form/src/com/fr/design/widget/ui/designer/mobile/BodyMobileDefinePane.java
  4. 19
      designer_form/src/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java
  5. 19
      designer_form/src/com/fr/design/widget/ui/designer/mobile/ElementCaseDefinePane.java
  6. 12
      designer_form/src/com/fr/design/widget/ui/designer/mobile/MobileWidgetDefinePane.java
  7. 23
      designer_form/src/com/fr/design/widget/ui/designer/mobile/ParaMobileDefinePane.java

11
designer_base/src/com/fr/design/gui/frpane/AbstractAttrNoScrollPane.java

@ -5,6 +5,7 @@ import com.fr.design.event.GlobalNameListener;
import com.fr.design.event.GlobalNameObserver; import com.fr.design.event.GlobalNameObserver;
import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserver;
import com.fr.design.event.UIObserverListener; import com.fr.design.event.UIObserverListener;
import com.fr.stable.StringUtils;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
@ -132,13 +133,19 @@ public abstract class AbstractAttrNoScrollPane extends BasicPane {
/** /**
* 返回图标的路径 * 返回图标的路径
*/ */
public abstract String getIconPath(); public String getIconPath() {
// 默认为空,子类有需要再重写
return StringUtils.EMPTY;
}
/** /**
* 界面标题 * 界面标题
* @return 标题 * @return 标题
*/ */
public abstract String title4PopupWindow(); public String title4PopupWindow() {
// 默认为空,子类有需要再重写
return StringUtils.EMPTY;
}
/** /**
* 设置选中的ID, 用于双击展示界面. * 设置选中的ID, 用于双击展示界面.

30
designer_form/src/com/fr/design/mainframe/MobileWidgetListPane.java

@ -5,6 +5,7 @@ import com.fr.design.gui.controlpane.UISimpleListControlPane;
import com.fr.form.ui.Widget; import com.fr.form.ui.Widget;
import com.fr.form.ui.container.WSortLayout; import com.fr.form.ui.container.WSortLayout;
import com.fr.general.NameObject; import com.fr.general.NameObject;
import com.fr.stable.ArrayUtils;
import com.fr.stable.Nameable; import com.fr.stable.Nameable;
import java.util.ArrayList; import java.util.ArrayList;
@ -17,12 +18,13 @@ public class MobileWidgetListPane extends UISimpleListControlPane {
public static final String LIST_NAME = "Widget_List"; public static final String LIST_NAME = "Widget_List";
private FormDesigner designer; private FormDesigner designer;
private List<String> widgetNameList; private WSortLayout wSortLayout;
private static final List<String> EMPTY_LIST = new ArrayList<String>(); private String[] widgetNameList;
public MobileWidgetListPane(FormDesigner designer) { public MobileWidgetListPane(FormDesigner designer, WSortLayout wSortLayout) {
super(); super();
this.designer = designer; this.designer = designer;
this.wSortLayout = wSortLayout;
widgetNameList = getData(); widgetNameList = getData();
List<NameObject> nameObjectList = new ArrayList<NameObject>(); List<NameObject> nameObjectList = new ArrayList<NameObject>();
@ -41,7 +43,7 @@ public class MobileWidgetListPane extends UISimpleListControlPane {
for (Nameable nameable : nameableList) { for (Nameable nameable : nameableList) {
newMobileWidgetList.add(nameable.getName()); newMobileWidgetList.add(nameable.getName());
} }
((WSortLayout) designer.getSelectionModel().getSelection().getSelectedCreator().toData()).updateSortedMobileWidgetList(newMobileWidgetList); wSortLayout.updateSortedMobileWidgetList(newMobileWidgetList);
} }
/** /**
@ -49,25 +51,21 @@ public class MobileWidgetListPane extends UISimpleListControlPane {
* *
* @return List<String> widgetNameList * @return List<String> widgetNameList
*/ */
private List<String> getData() { private String[] getData() {
//选择的控件 //选择的控件
XCreator selectedCreator = designer.getSelectionModel().getSelection().getSelectedCreator(); XCreator selectedCreator = designer.getSelectionModel().getSelection().getSelectedCreator();
Widget selectedModel = selectedCreator != null ? selectedCreator.toData() : null; Widget selectedModel = selectedCreator != null ? selectedCreator.toData() : null;
if (selectedModel == null) { if (selectedModel == null || !selectedModel.acceptType(WSortLayout.class)) {
return new ArrayList<>(); return ArrayUtils.EMPTY_STRING_ARRAY;
} }
// 选择的控件有两种类型,一种是WLayout,代表容器,一种是Widget,代表控件 // 选择的控件有两种类型,一种是WLayout,代表容器,一种是Widget,代表控件
if (selectedModel.acceptType(WSortLayout.class)) { java.util.List<String> mobileWidgetList = ((WSortLayout) selectedModel).getOrderedMobileWidgetList();
java.util.List<String> mobileWidgetList = ((WSortLayout) selectedModel).getOrderedMobileWidgetList(); String[] widgetNames = new String[mobileWidgetList.size()];
List<String> widgetName = new ArrayList<String>(); for (int i = 0; i < mobileWidgetList.size(); i++) {
for (int i = 0; i < mobileWidgetList.size(); i++) { widgetNames[i] = mobileWidgetList.get(i);
widgetName.add(mobileWidgetList.get(i));
}
return widgetName;
} else {
return EMPTY_LIST;
} }
return widgetNames;
} }
} }

23
designer_form/src/com/fr/design/widget/ui/designer/mobile/BodyMobileDefinePane.java

@ -9,8 +9,8 @@ import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.FormDesigner; import com.fr.design.mainframe.FormDesigner;
import com.fr.design.mainframe.MobileWidgetListPane; import com.fr.design.mainframe.MobileWidgetListPane;
import com.fr.design.mainframe.WidgetPropertyPane; import com.fr.design.mainframe.WidgetPropertyPane;
import com.fr.form.ui.container.WSortLayout;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.stable.StringUtils;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
@ -30,25 +30,6 @@ public class BodyMobileDefinePane extends MobileWidgetDefinePane {
this.bodyCreator = xCreator; this.bodyCreator = xCreator;
} }
@Override
protected void initContentPane() {}
@Override
protected JPanel createContentPane() {
return new JPanel();
}
@Override
public String getIconPath() {
return StringUtils.EMPTY;
}
@Override
public String title4PopupWindow() {
return StringUtils.EMPTY;
}
@Override @Override
public void initPropertyGroups(Object source) { public void initPropertyGroups(Object source) {
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());
@ -74,7 +55,7 @@ public class BodyMobileDefinePane extends MobileWidgetDefinePane {
// 控件顺序 // 控件顺序
private UIExpandablePane getMobileWidgetListPane() { private UIExpandablePane getMobileWidgetListPane() {
mobileWidgetListPane = new MobileWidgetListPane(designer); mobileWidgetListPane = new MobileWidgetListPane(designer, (WSortLayout) bodyCreator.toData());
mobileWidgetListPane.setBorder(BorderFactory.createEmptyBorder(10, 0, 5, 0)); mobileWidgetListPane.setBorder(BorderFactory.createEmptyBorder(10, 0, 5, 0));
JPanel panelWrapper = FRGUIPaneFactory.createBorderLayout_S_Pane(); JPanel panelWrapper = FRGUIPaneFactory.createBorderLayout_S_Pane();
panelWrapper.add(mobileWidgetListPane, BorderLayout.CENTER); panelWrapper.add(mobileWidgetListPane, BorderLayout.CENTER);

19
designer_form/src/com/fr/design/widget/ui/designer/mobile/ChartEditorDefinePane.java

@ -49,25 +49,6 @@ public class ChartEditorDefinePane extends MobileWidgetDefinePane{
this.xCreator = xCreator; this.xCreator = xCreator;
} }
@Override
protected void initContentPane() {}
@Override
protected JPanel createContentPane() {
return new JPanel();
}
@Override
public String getIconPath() {
return StringUtils.EMPTY;
}
@Override
public String title4PopupWindow() {
return StringUtils.EMPTY;
}
@Override @Override
public void initPropertyGroups(Object source) { public void initPropertyGroups(Object source) {
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());

19
designer_form/src/com/fr/design/widget/ui/designer/mobile/ElementCaseDefinePane.java

@ -48,25 +48,6 @@ public class ElementCaseDefinePane extends MobileWidgetDefinePane{
this.xCreator = xCreator; this.xCreator = xCreator;
} }
@Override
protected void initContentPane() {}
@Override
protected JPanel createContentPane() {
return null;
}
@Override
public String getIconPath() {
return "";
}
@Override
public String title4PopupWindow() {
return "ElementCase";
}
@Override @Override
public void initPropertyGroups(Object source) { public void initPropertyGroups(Object source) {
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());

12
designer_form/src/com/fr/design/widget/ui/designer/mobile/MobileWidgetDefinePane.java

@ -3,6 +3,8 @@ package com.fr.design.widget.ui.designer.mobile;
import com.fr.design.gui.frpane.AbstractAttrNoScrollPane; import com.fr.design.gui.frpane.AbstractAttrNoScrollPane;
import com.fr.design.mainframe.FormDesigner; import com.fr.design.mainframe.FormDesigner;
import javax.swing.*;
/** /**
* 所有移动端需要拓展的属性面板均继承此类 * 所有移动端需要拓展的属性面板均继承此类
* *
@ -23,4 +25,14 @@ public abstract class MobileWidgetDefinePane extends AbstractAttrNoScrollPane{
* 从属性面板把数据传到后台 * 从属性面板把数据传到后台
*/ */
public abstract void update(); public abstract void update();
// 暂不需要此方法
@Override
protected void initContentPane() {}
// 暂不需要此方法
@Override
protected JPanel createContentPane() {
return new JPanel();
}
} }

23
designer_form/src/com/fr/design/widget/ui/designer/mobile/ParaMobileDefinePane.java

@ -8,8 +8,8 @@ import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.FormDesigner; import com.fr.design.mainframe.FormDesigner;
import com.fr.design.mainframe.MobileWidgetListPane; import com.fr.design.mainframe.MobileWidgetListPane;
import com.fr.design.mainframe.WidgetPropertyPane; import com.fr.design.mainframe.WidgetPropertyPane;
import com.fr.form.ui.container.WSortLayout;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.stable.StringUtils;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
@ -27,25 +27,6 @@ public class ParaMobileDefinePane extends MobileWidgetDefinePane {
this.paraCreator = xCreator; this.paraCreator = xCreator;
} }
@Override
protected void initContentPane() {}
@Override
protected JPanel createContentPane() {
return new JPanel();
}
@Override
public String getIconPath() {
return StringUtils.EMPTY;
}
@Override
public String title4PopupWindow() {
return StringUtils.EMPTY;
}
@Override @Override
public void initPropertyGroups(Object source) { public void initPropertyGroups(Object source) {
this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setLayout(FRGUIPaneFactory.createBorderLayout());
@ -56,7 +37,7 @@ public class ParaMobileDefinePane extends MobileWidgetDefinePane {
// 控件顺序 // 控件顺序
private UIExpandablePane getMobileWidgetListPane() { private UIExpandablePane getMobileWidgetListPane() {
mobileWidgetListPane = new MobileWidgetListPane(designer); mobileWidgetListPane = new MobileWidgetListPane(designer, (WSortLayout) paraCreator.toData());
mobileWidgetListPane.setBorder(BorderFactory.createEmptyBorder(10, 0, 5, 0)); mobileWidgetListPane.setBorder(BorderFactory.createEmptyBorder(10, 0, 5, 0));
JPanel panelWrapper = FRGUIPaneFactory.createBorderLayout_S_Pane(); JPanel panelWrapper = FRGUIPaneFactory.createBorderLayout_S_Pane();
panelWrapper.add(mobileWidgetListPane, BorderLayout.CENTER); panelWrapper.add(mobileWidgetListPane, BorderLayout.CENTER);

Loading…
Cancel
Save