diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XCheckBox.java b/designer-form/src/main/java/com/fr/design/designer/creator/XCheckBox.java index ab74ccd98..da9b7c955 100644 --- a/designer-form/src/main/java/com/fr/design/designer/creator/XCheckBox.java +++ b/designer-form/src/main/java/com/fr/design/designer/creator/XCheckBox.java @@ -7,13 +7,12 @@ import com.fr.design.form.util.XCreatorConstants; import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.mainframe.widget.editors.WidgetValueEditor; import com.fr.form.ui.CheckBox; -import com.fr.form.ui.WidgetValue; +import com.fr.form.ui.concept.data.ValueInitializer; import com.fr.stable.ArrayUtils; import com.fr.stable.core.PropertyChangeAdapter; -import javax.swing.BorderFactory; -import javax.swing.JComponent; -import java.awt.Dimension; +import javax.swing.*; +import java.awt.*; import java.beans.IntrospectionException; /** @@ -21,72 +20,72 @@ import java.beans.IntrospectionException; * @since 6.5.3 */ public class XCheckBox extends XWidgetCreator { - + public XCheckBox(CheckBox widget, Dimension initSize) { super(widget, initSize); } @Override - public CRPropertyDescriptor[] supportedDescriptor() throws IntrospectionException { - return (CRPropertyDescriptor[]) ArrayUtils.addAll(super.supportedDescriptor(), new CRPropertyDescriptor[] { - new CRPropertyDescriptor("text", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Text")) - .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Fine-Design_Basic_Advanced") - .setPropertyChangeListener(new PropertyChangeAdapter() { + public CRPropertyDescriptor[] supportedDescriptor() throws IntrospectionException { + return (CRPropertyDescriptor[]) ArrayUtils.addAll(super.supportedDescriptor(), new CRPropertyDescriptor[]{ + new CRPropertyDescriptor("text", this.data.getClass()).setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Text")) + .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Fine-Design_Basic_Advanced") + .setPropertyChangeListener(new PropertyChangeAdapter() { - @Override - public void propertyChange() { - ((UICheckBox) editor).setText(((CheckBox) data).getText()); - } - }), - new CRPropertyDescriptor("widgetValue", this.data.getClass()).setI18NName( - com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Value")).setEditorClass(WidgetValueEditor.class) - .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Fine-Design_Basic_Advanced") - .setPropertyChangeListener(new PropertyChangeAdapter() { + @Override + public void propertyChange() { + ((UICheckBox) editor).setText(((CheckBox) data).getText()); + } + }), + new CRPropertyDescriptor("widgetValue", this.data.getClass()).setI18NName( + com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget_Value")).setEditorClass(WidgetValueEditor.class) + .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Fine-Design_Basic_Advanced") + .setPropertyChangeListener(new PropertyChangeAdapter() { - @Override - public void propertyChange() { - WidgetValue value = ((CheckBox) data).getWidgetValue(); - if (value != null && value.getValue() instanceof Boolean) { - ((UICheckBox) editor).setSelected((Boolean) value.getValue()); - } - } - }), - new CRPropertyDescriptor("fontSize", this.data.getClass(), "getFontSize", "setFontSize") - .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Font_Size")) - .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Fine-Design_Basic_Advanced") - }); - } + @Override + public void propertyChange() { + ValueInitializer value = ((CheckBox) data).getWidgetValue(); + if (value != null && value.getValue() instanceof Boolean) { + ((UICheckBox) editor).setSelected((Boolean) value.getValue()); + } + } + }), + new CRPropertyDescriptor("fontSize", this.data.getClass(), "getFontSize", "setFontSize") + .setI18NName(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Basic_Style_Font_Size")) + .putKeyValue(XCreatorConstants.PROPERTY_CATEGORY, "Fine-Design_Basic_Advanced") + }); + } @Override protected JComponent initEditor() { if (editor == null) { editor = new UICheckBox(); - editor.setBorder(BorderFactory.createEmptyBorder(0, 8, 0, 0)); + editor.setBorder(BorderFactory.createEmptyBorder(0, 8, 0, 0)); } return editor; } @Override protected void initXCreatorProperties() { - super.initXCreatorProperties(); - UICheckBox jCheckBox = (UICheckBox) editor; - CheckBox check = (CheckBox) data; - jCheckBox.setText(check.getText()); - if (check.getWidgetValue() != null && check.getWidgetValue().getValue() instanceof Boolean) { - jCheckBox.setSelected((Boolean) check.getWidgetValue().getValue()); - } - } + super.initXCreatorProperties(); + UICheckBox jCheckBox = (UICheckBox) editor; + CheckBox check = (CheckBox) data; + jCheckBox.setText(check.getText()); + if (check.getWidgetValue() != null && check.getWidgetValue().getValue() instanceof Boolean) { + jCheckBox.setSelected((Boolean) check.getWidgetValue().getValue()); + } + } @Override protected String getIconName() { return "check_box_16.png"; } - public void firePropertyChange(){ - ((UICheckBox) editor).setText(((CheckBox) data).getText()); - WidgetValue value = ((CheckBox) data).getWidgetValue(); - if (value != null && value.getValue() instanceof Boolean) { - ((UICheckBox) editor).setSelected((Boolean) value.getValue()); - } - } + public void firePropertyChange() { + ((UICheckBox) editor).setText(((CheckBox) data).getText()); + ValueInitializer value = ((CheckBox) data).getWidgetValue(); + if (value != null && value.getValue() instanceof Boolean) { + ((UICheckBox) editor).setSelected((Boolean) value.getValue()); + } + } } diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/XDateEditor.java b/designer-form/src/main/java/com/fr/design/designer/creator/XDateEditor.java index c6ec47a3b..38da20da6 100644 --- a/designer-form/src/main/java/com/fr/design/designer/creator/XDateEditor.java +++ b/designer-form/src/main/java/com/fr/design/designer/creator/XDateEditor.java @@ -12,15 +12,14 @@ import com.fr.design.mainframe.widget.editors.WidgetValueEditor; import com.fr.design.mainframe.widget.renderer.DateCellRenderer; import com.fr.form.ui.DateEditor; import com.fr.form.ui.WidgetValue; +import com.fr.form.ui.concept.data.ValueInitializer; import com.fr.general.DateUtils; import com.fr.stable.ArrayUtils; import com.fr.stable.StringUtils; import com.fr.stable.core.PropertyChangeAdapter; -import javax.swing.JComponent; -import java.awt.BorderLayout; -import java.awt.Color; -import java.awt.Dimension; +import javax.swing.*; +import java.awt.*; import java.beans.IntrospectionException; import java.util.Date; @@ -84,7 +83,7 @@ public class XDateEditor extends XDirectWriteEditor { private void initFieldText() { DateEditor dateEditor = (DateEditor) data; if (dateEditor.getWidgetValue() != null) { - WidgetValue widgetValue = dateEditor.getWidgetValue(); + ValueInitializer widgetValue = dateEditor.getWidgetValue(); //控件值.toString String valueStr = widgetValue.toString(); //控件值 diff --git a/designer-form/src/main/java/com/fr/design/gui/xpane/ToolTipEditor.java b/designer-form/src/main/java/com/fr/design/gui/xpane/ToolTipEditor.java index 91bfbf0b0..e2a78e7d2 100644 --- a/designer-form/src/main/java/com/fr/design/gui/xpane/ToolTipEditor.java +++ b/designer-form/src/main/java/com/fr/design/gui/xpane/ToolTipEditor.java @@ -15,7 +15,7 @@ import com.fr.design.utils.gui.GUICoreUtils; import com.fr.form.ui.DataControl; import com.fr.form.ui.EditorHolder; import com.fr.form.ui.Widget; -import com.fr.form.ui.WidgetValue; +import com.fr.form.ui.WidgetValueUtils; import com.fr.general.Background; import com.fr.general.GeneralContext; import com.fr.plugin.context.PluginContext; @@ -77,7 +77,7 @@ public class ToolTipEditor extends JWindow { createWidget.setWidgetName(widget.getWidgetName()); createWidget.setEnabled(widget.isEnabled()); createWidget.setVisible(widget.isVisible()); - WidgetValue.convertWidgetValue((DataControl) createWidget, widget.getWidgetValue().getValue()); + WidgetValueUtils.convertWidgetValue((DataControl) createWidget, widget.getWidgetValue().getValue()); XCreator creator = null; creator = parent.replace(createWidget, holder); Component designer = holder.getDesignerEditor().getEditorTarget().getParent(); diff --git a/designer-form/src/main/java/com/fr/design/mainframe/FormDesignerDropTarget.java b/designer-form/src/main/java/com/fr/design/mainframe/FormDesignerDropTarget.java index 4e7ea5ae6..f7faf9d60 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/FormDesignerDropTarget.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/FormDesignerDropTarget.java @@ -6,10 +6,11 @@ import com.fr.form.ui.DataControl; import com.fr.form.ui.IframeEditor; import com.fr.form.ui.Widget; import com.fr.form.ui.WidgetValue; +import com.fr.form.ui.concept.data.ValueInitializer; import com.fr.general.ComparatorUtils; import com.fr.log.FineLoggerFactory; -import java.awt.Point; +import java.awt.*; import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.Transferable; import java.awt.datatransfer.UnsupportedFlavorException; @@ -31,7 +32,8 @@ public class FormDesignerDropTarget extends DropTargetAdapter { /** * 响应拖拽进入事件 - * @param dtde 需要被处理的拖拽事件 + * + * @param dtde 需要被处理的拖拽事件 */ public void dragEnter(DropTargetDragEvent dtde) { dtde.acceptDrag(dtde.getDropAction()); @@ -39,6 +41,7 @@ public class FormDesignerDropTarget extends DropTargetAdapter { /** * 处理拖拽经过事件 + * * @param dtde 需要被处理的拖拽事件 */ public void dragOver(DropTargetDragEvent dtde) { @@ -52,7 +55,8 @@ public class FormDesignerDropTarget extends DropTargetAdapter { /** * 处理拖拽释放事件 - * @param dtde 需要被处理的拖拽事件 + * + * @param dtde 需要被处理的拖拽事件 */ public void drop(DropTargetDropEvent dtde) { Transferable tr = dtde.getTransferable(); @@ -75,22 +79,16 @@ public class FormDesignerDropTarget extends DropTargetAdapter { if (!(widget instanceof DataControl)) { return; } - WidgetValue oldvalue = ((DataControl) widget).getWidgetValue(); - WidgetValue newValue = new WidgetValue(new DataBinding((String[][]) o)); - if (!ComparatorUtils.equals(oldvalue, newValue)) { + ValueInitializer oldValue = ((DataControl) widget).getWidgetValue(); + ValueInitializer newValue = new WidgetValue(new DataBinding((String[][]) o)); + if (!ComparatorUtils.equals(oldValue, newValue)) { ((DataControl) widget).setWidgetValue(newValue); designer.fireTargetModified(); } creator.rebuid(); designer.getSelectionModel().setSelectedCreator(creator); - } catch (UnsupportedFlavorException e) { - FineLoggerFactory.getLogger().error(e.getMessage(), e); - } catch (IOException e) { + } catch (UnsupportedFlavorException | IOException e) { FineLoggerFactory.getLogger().error(e.getMessage(), e); } } - - private void setSrcForIframeEditor() { - - } } \ No newline at end of file diff --git a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/FormWidgetValuePane.java b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/FormWidgetValuePane.java index cdf8c28f2..6943085ec 100644 --- a/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/FormWidgetValuePane.java +++ b/designer-form/src/main/java/com/fr/design/widget/ui/designer/component/FormWidgetValuePane.java @@ -1,7 +1,11 @@ package com.fr.design.widget.ui.designer.component; import com.fr.design.constants.LayoutConstants; -import com.fr.design.editor.editor.*; +import com.fr.design.editor.editor.BooleanEditor; +import com.fr.design.editor.editor.DateEditor; +import com.fr.design.editor.editor.DoubleEditor; +import com.fr.design.editor.editor.Editor; +import com.fr.design.editor.editor.FormulaEditor; import com.fr.design.gui.ibutton.UIButtonGroup; import com.fr.design.mainframe.widget.editors.DataBindingEditor; import com.fr.design.mainframe.widget.editors.DataTableEditor; @@ -9,9 +13,9 @@ import com.fr.design.mainframe.widget.editors.ServerDataBindingEditor; import com.fr.design.mainframe.widget.editors.ServerDataTableEditor; import com.fr.form.ui.DataControl; import com.fr.form.ui.WidgetValue; +import com.fr.form.ui.concept.data.ValueInitializer; import com.fr.general.ComparatorUtils; - import javax.swing.*; import java.awt.*; @@ -112,7 +116,7 @@ public class FormWidgetValuePane extends JPanel { } public void populate(DataControl ob) { - WidgetValue widgetValue = ob.getWidgetValue(); + ValueInitializer widgetValue = ob.getWidgetValue(); if (widgetValue != null) { for (int i = 0; i < editor.length; i++) { if (editor[i].accept(widgetValue.getValue())) {