diff --git a/designer/src/com/fr/design/widget/ui/AbstractDataModify.java b/designer/src/com/fr/design/widget/ui/AbstractDataModify.java index 23c5a02f82..b7ab8a6063 100644 --- a/designer/src/com/fr/design/widget/ui/AbstractDataModify.java +++ b/designer/src/com/fr/design/widget/ui/AbstractDataModify.java @@ -3,6 +3,7 @@ package com.fr.design.widget.ui; import com.fr.design.beans.BasicBeanPane; import com.fr.design.data.DataCreatorUI; import com.fr.design.widget.DataModify; +import com.fr.stable.StringUtils; import javax.swing.*; @@ -10,6 +11,7 @@ import javax.swing.*; * Created by richie on 15/11/16. */ public abstract class AbstractDataModify extends BasicBeanPane implements DataModify { + protected String globalName; @Override public DataCreatorUI dataUI() { @@ -20,4 +22,12 @@ public abstract class AbstractDataModify extends BasicBeanPane implements public JComponent toSwingComponent() { return this; } + + public void setGlobalName(String globalName){ + this.globalName = globalName; + } + + public String getGlobalName(){ + return globalName; + } } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/mainframe/widget/BasicPropertyPane.java b/designer_base/src/com/fr/design/mainframe/widget/BasicPropertyPane.java index 21287530ee..c66530b62a 100644 --- a/designer_base/src/com/fr/design/mainframe/widget/BasicPropertyPane.java +++ b/designer_base/src/com/fr/design/mainframe/widget/BasicPropertyPane.java @@ -25,7 +25,7 @@ public class BasicPropertyPane extends BasicPane { this.setLayout(FRGUIPaneFactory.createBorderLayout()); this.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0)); widgetName = new UITextField(); - + widgetName.setGlobalName(Inter.getLocText("FR-Designer_Widget_Name")); double f = TableLayout.FILL; double p = TableLayout.PREFERRED; double[] rowSize = {p}; diff --git a/designer_base/src/com/fr/design/mainframe/widget/accessibles/BaseAccessibleEditor.java b/designer_base/src/com/fr/design/mainframe/widget/accessibles/BaseAccessibleEditor.java index c71cd8ad1d..43231203ef 100644 --- a/designer_base/src/com/fr/design/mainframe/widget/accessibles/BaseAccessibleEditor.java +++ b/designer_base/src/com/fr/design/mainframe/widget/accessibles/BaseAccessibleEditor.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import javax.swing.BorderFactory; +import com.fr.design.event.UIObserverListener; import com.fr.design.gui.ibutton.UIButton; import javax.swing.JComponent; @@ -77,7 +78,14 @@ public class BaseAccessibleEditor extends BasicPane implements AccessibleEditor setOpaque(false); if (showButton) { - btPopup = new UIButton(); + btPopup = new UIButton(){ + public void registerChangeListener(UIObserverListener listener) { + return; + } + public boolean shouldResponseChangeListener() { + return false; + } + }; initPopupButton(); btPopup.addActionListener(new ActionListener() { @@ -189,4 +197,6 @@ public class BaseAccessibleEditor extends BasicPane implements AccessibleEditor public static void showMessage(String message, Component editorComponent) { JOptionPane.showMessageDialog(editorComponent, message, "Validation Error", JOptionPane.ERROR_MESSAGE); } + + } \ No newline at end of file diff --git a/designer_base/src/com/fr/design/widget/DataModify.java b/designer_base/src/com/fr/design/widget/DataModify.java index 25ab46a687..96552e7f0e 100644 --- a/designer_base/src/com/fr/design/widget/DataModify.java +++ b/designer_base/src/com/fr/design/widget/DataModify.java @@ -15,4 +15,9 @@ public interface DataModify { DataCreatorUI dataUI(); JComponent toSwingComponent(); + + String getGlobalName(); + + void setGlobalName(String globalName); + } \ No newline at end of file diff --git a/designer_form/src/com/fr/design/mainframe/widget/accessibles/AccessibleElementCaseToolBarEditor.java b/designer_form/src/com/fr/design/mainframe/widget/accessibles/AccessibleElementCaseToolBarEditor.java index 1695892ba6..31c0749c99 100644 --- a/designer_form/src/com/fr/design/mainframe/widget/accessibles/AccessibleElementCaseToolBarEditor.java +++ b/designer_form/src/com/fr/design/mainframe/widget/accessibles/AccessibleElementCaseToolBarEditor.java @@ -5,11 +5,16 @@ import com.fr.design.dialog.DialogActionAdapter; import com.fr.design.gui.core.WidgetOption; import com.fr.design.mainframe.FormWebWidgetConstants; import com.fr.design.mainframe.widget.editors.ElementCaseToolBarPane; +import com.fr.design.mainframe.widget.editors.ITextComponent; +import com.fr.design.mainframe.widget.editors.TextField; import com.fr.design.mainframe.widget.wrappers.ElementCaseToolBarWrapper; import com.fr.form.web.FormToolBarManager; +import com.fr.general.Inter; import com.fr.stable.ArrayUtils; import javax.swing.*; +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -54,4 +59,29 @@ public class AccessibleElementCaseToolBarEditor extends UneditableAccessibleEdit options.addAll(defaultOptions); return options.toArray(new WidgetOption[options.size()]); } + + protected ITextComponent createTextField() { + TextField textField = new TextField(){ + protected void initListener() { + if (shouldResponseChangeListener()) { + getDocument().addDocumentListener(new DocumentListener() { + @Override + public void insertUpdate(DocumentEvent e) { + } + @Override + public void removeUpdate(DocumentEvent e) { + attributeChange(); + } + @Override + public void changedUpdate(DocumentEvent e) { + + } + }); + } + } + }; + textField.setGlobalName(Inter.getLocText("Form-EC_toolbar")); + return textField; + } + } 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 fb75edbabb..3cfe27375d 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 @@ -18,6 +18,7 @@ import com.fr.form.ui.Widget; import com.fr.form.ui.container.WScaleLayout; import com.fr.form.ui.container.WTitleLayout; import com.fr.form.ui.widget.CRBoundsWidget; +import com.fr.general.ComparatorUtils; import com.fr.general.Inter; import com.fr.stable.StringUtils; @@ -199,13 +200,19 @@ public class FormWidgetCardPane extends AbstractAttrNoScrollPane { public void updateCreator() { + currentEditorDefinePane.setGlobalName(getGlobalName()); Widget widget = currentEditorDefinePane.updateBean(); - widgetPropertyPane.update(widget); - if (widgetBoundPane != null) { + if(ComparatorUtils.equals(getGlobalName(), Inter.getLocText("FR-Designer_Widget_Name"))){ + widgetPropertyPane.update(widget); + xCreator.resetCreatorName(widget.getWidgetName()); + designer.getEditListenerTable().fireCreatorModified(xCreator, DesignerEvent.CREATOR_RENAMED); + return; + } + + if (widgetBoundPane != null && ComparatorUtils.equals(getGlobalName(), Inter.getLocText("FR-Designer_Coords_And_Size"))) { widgetBoundPane.update(); } - xCreator.resetCreatorName(widget.getWidgetName()); - designer.getEditListenerTable().fireCreatorModified(xCreator, DesignerEvent.CREATOR_RENAMED); + fireValueChanged(); } diff --git a/designer_form/src/com/fr/design/widget/ui/designer/AbstractDataModify.java b/designer_form/src/com/fr/design/widget/ui/designer/AbstractDataModify.java index 7e521ac916..e0fc7c11ca 100644 --- a/designer_form/src/com/fr/design/widget/ui/designer/AbstractDataModify.java +++ b/designer_form/src/com/fr/design/widget/ui/designer/AbstractDataModify.java @@ -12,6 +12,7 @@ import javax.swing.*; */ public abstract class AbstractDataModify extends BasicBeanPane implements DataModify { protected XCreator creator; + protected String globalName; public AbstractDataModify(XCreator xCreator){ @@ -28,5 +29,11 @@ public abstract class AbstractDataModify extends BasicBeanPane implements return this; } + public void setGlobalName(String globalName){ + this.globalName = globalName; + } + public String getGlobalName(){ + return globalName; + } } \ No newline at end of file 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 ed9b5de27a..9bcd832da9 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 @@ -64,12 +64,12 @@ public class DateEditorDefinePane extends DirectWriteEditorDefinePane