diff --git a/designer/src/com/fr/design/actions/ButtonGroupAction.java b/designer/src/com/fr/design/actions/ButtonGroupAction.java index ad461c1f0d..e3f20f70bf 100644 --- a/designer/src/com/fr/design/actions/ButtonGroupAction.java +++ b/designer/src/com/fr/design/actions/ButtonGroupAction.java @@ -36,7 +36,7 @@ public abstract class ButtonGroupAction extends ElementCaseAction{ break; } } - if(value == -1 && createToolBarComponent().hasClick()) { + if(createToolBarComponent().hasClick()) { index = getSelectedIndex(); createToolBarComponent().setClickState(false); } diff --git a/designer/src/com/fr/design/dscolumn/ResultSetGroupDockingPane.java b/designer/src/com/fr/design/dscolumn/ResultSetGroupDockingPane.java index da32086d9f..61ac3bd361 100644 --- a/designer/src/com/fr/design/dscolumn/ResultSetGroupDockingPane.java +++ b/designer/src/com/fr/design/dscolumn/ResultSetGroupDockingPane.java @@ -23,7 +23,7 @@ import java.awt.event.ItemListener; * 这个pane是选中数据列后,在上方QuickRegion处显示的pane * * @author zhou, yaoh.wu - * @version 2017年8月2日14点55分 + * @version 2017年9月26日17点22分 * @since 8.0 */ public class ResultSetGroupDockingPane extends ResultSetGroupPane { @@ -70,7 +70,6 @@ public class ResultSetGroupDockingPane extends ResultSetGroupPane { cardLayout.show(cardPane, "groupPane"); cardPane.setPreferredSize(new Dimension(158, 20)); TableLayoutHelper.modifyTableLayoutIndexVGap(contentPane, 2, 10); - checkButtonEnabled(); } else if (i == BIND_SELECTED) { cardLayout.show(cardPane, "listPane"); cardPane.setPreferredSize(new Dimension(0, 0)); @@ -81,8 +80,8 @@ public class ResultSetGroupDockingPane extends ResultSetGroupPane { TableLayoutHelper.modifyTableLayoutIndexVGap(contentPane, 2, 10); CellExpandAttr cellExpandAttr = cellElement.getCellExpandAttr(); cellExpandAttr.setDirection(Constants.NONE); - checkButtonEnabled(); } + checkButtonEnabled(); } }); @@ -116,13 +115,13 @@ public class ResultSetGroupDockingPane extends ResultSetGroupPane { @Override public void populate(TemplateCellElement cellElement) { + //更新面板信息时可能会触发绑定在组件上的事件,先移除这些事件 + this.removeListener(); this.cellElement = cellElement; - - if (isNPE(cellElement)) return; + if (isNPE(cellElement)) { + return; + } DSColumn dSColumn = (DSColumn) cellElement.getValue(); - - // populate groupPane - // RecordGrouper recordGrouper = dSColumn.getGrouper(); if (recordGrouper instanceof FunctionGrouper && !((FunctionGrouper) recordGrouper).isCustom()) { int mode = recordGrouper.getDivideMode(); @@ -154,13 +153,16 @@ public class ResultSetGroupDockingPane extends ResultSetGroupPane { this.groupComboBox.setSelectedIndex(ADVANCED); } checkButtonEnabled(); + //加上面板组件的交互事件监听 + this.addListener(); } @Override public void update() { - if (isNPE(cellElement)) return; + if (isNPE(cellElement)) { + return; + } DSColumn dSColumn = (DSColumn) cellElement.getValue(); - if (this.goBox.getSelectedIndex() == BIND_GROUP) { recordGrouper = updateGroupCombox(); } else if (this.goBox.getSelectedIndex() == BIND_SELECTED) { @@ -194,17 +196,21 @@ public class ResultSetGroupDockingPane extends ResultSetGroupPane { cardPane.setPreferredSize(new Dimension(158, 50)); cardPane.revalidate(); cardPane.repaint(); - } else { + return; + } + if (groupComboBox.isEnabled() || functionComboBox.isEnabled()) { cardPane.setPreferredSize(new Dimension(158, 20)); cardPane.revalidate(); cardPane.repaint(); + return; } + cardPane.setPreferredSize(new Dimension(158, 0)); + cardPane.revalidate(); + cardPane.repaint(); } - public void addListener(ItemListener listener) { - goBox.addItemListener(listener); - groupComboBox.addItemListener(listener); - functionComboBox.addItemListener(listener); + + public void setListener(ItemListener listener) { this.listener = listener; } @@ -216,4 +222,16 @@ public class ResultSetGroupDockingPane extends ResultSetGroupPane { public void setRecordGrouper(RecordGrouper recordGrouper) { this.recordGrouper = recordGrouper; } + + private void addListener() { + goBox.addItemListener(this.listener); + groupComboBox.addItemListener(this.listener); + functionComboBox.addItemListener(this.listener); + } + + private void removeListener() { + goBox.removeItemListener(this.listener); + groupComboBox.removeItemListener(this.listener); + functionComboBox.removeItemListener(this.listener); + } } \ No newline at end of file diff --git a/designer/src/com/fr/quickeditor/cellquick/CellDSColumnEditor.java b/designer/src/com/fr/quickeditor/cellquick/CellDSColumnEditor.java index 1399ad2eb6..e7ccd77108 100644 --- a/designer/src/com/fr/quickeditor/cellquick/CellDSColumnEditor.java +++ b/designer/src/com/fr/quickeditor/cellquick/CellDSColumnEditor.java @@ -219,7 +219,7 @@ public class CellDSColumnEditor extends CellQuickEditor { dataPane = new SelectedDataColumnPane(true, true, tc, cellElement); groupPane = new ResultSetGroupDockingPane(); dataPane.addListener(dataListener); - groupPane.addListener(groupListener); + groupPane.setListener(groupListener); double[] rowSize = {P}, columnSize = {P, F}; UILabel uiLabel = new UILabel(Inter.getLocText("FR-Designer_Filter_Conditions")); diff --git a/designer/src/com/fr/start/Designer.java b/designer/src/com/fr/start/Designer.java index fdd7526af0..071c035ccc 100644 --- a/designer/src/com/fr/start/Designer.java +++ b/designer/src/com/fr/start/Designer.java @@ -365,7 +365,7 @@ public class Designer extends BaseDesigner { */ protected void collectUserInformation() { //定制的就不弹出来了 - if (!ComparatorUtils.equals(ProductConstants.APP_NAME, ProductConstants.DEFAULT_APPNAME)) { + if (!ComparatorUtils.equals(ProductConstants.APP_NAME, ProductConstants.DEFAULT_APP_NAME)) { return; } diff --git a/designer_base/src/com/fr/design/DesignerEnvManager.java b/designer_base/src/com/fr/design/DesignerEnvManager.java index 1640f3de81..568deb96d8 100644 --- a/designer_base/src/com/fr/design/DesignerEnvManager.java +++ b/designer_base/src/com/fr/design/DesignerEnvManager.java @@ -1479,18 +1479,6 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter { } } }); - - // xml读完之后,看一下nameEnvMap是不是长度为0 - if (nameEnvMap.isEmpty() && StableUtils.getInstallHome() != null) { - String install_home = StableUtils.getInstallHome(); - if (install_home != null && new java.io.File(install_home).exists()) { - nameEnvMap.put("Default", LocalEnv.createEnv(StableUtils.pathJoin(new String[]{ - install_home, ProjectConstants.WEBAPP_NAME, ProjectConstants.WEBINF_NAME - }))); - - curEnvName = "Default"; - } - } } private void readRecentOpenFileList(XMLableReader reader) { diff --git a/designer_form/src/com/fr/design/designer/creator/XBorderStyleWidgetCreator.java b/designer_form/src/com/fr/design/designer/creator/XBorderStyleWidgetCreator.java index 7dd2a0bc04..f4a0ce89a4 100644 --- a/designer_form/src/com/fr/design/designer/creator/XBorderStyleWidgetCreator.java +++ b/designer_form/src/com/fr/design/designer/creator/XBorderStyleWidgetCreator.java @@ -154,7 +154,7 @@ public class XBorderStyleWidgetCreator extends XWidgetCreator{ * */ public void firePropertyChange(){ - initStyle(); + } } \ No newline at end of file diff --git a/designer_form/src/com/fr/design/designer/creator/XChartEditor.java b/designer_form/src/com/fr/design/designer/creator/XChartEditor.java index 2ac2c12e35..8e108ec945 100644 --- a/designer_form/src/com/fr/design/designer/creator/XChartEditor.java +++ b/designer_form/src/com/fr/design/designer/creator/XChartEditor.java @@ -263,4 +263,13 @@ public class XChartEditor extends XBorderStyleWidgetCreator { public JComponent getCoverPane(){ return coverPanel; } + + /** + * data属性改变触发其他操作 + * + */ + public void firePropertyChange(){ + initStyle(); + } + } \ No newline at end of file diff --git a/designer_form/src/com/fr/design/designer/creator/XElementCase.java b/designer_form/src/com/fr/design/designer/creator/XElementCase.java index c58ba60ef0..f2f1000db2 100644 --- a/designer_form/src/com/fr/design/designer/creator/XElementCase.java +++ b/designer_form/src/com/fr/design/designer/creator/XElementCase.java @@ -318,4 +318,13 @@ public class XElementCase extends XBorderStyleWidgetCreator implements FormEleme public void setXDescrption(String msg) { coverPanel.setHelpMsg(msg); } + + /** + * data属性改变触发其他操作 + * + */ + public void firePropertyChange(){ + initStyle(); + } + } \ No newline at end of file diff --git a/designer_form/src/com/fr/design/designer/creator/XLayoutContainer.java b/designer_form/src/com/fr/design/designer/creator/XLayoutContainer.java index 27288cb62d..f99aca41aa 100644 --- a/designer_form/src/com/fr/design/designer/creator/XLayoutContainer.java +++ b/designer_form/src/com/fr/design/designer/creator/XLayoutContainer.java @@ -527,4 +527,13 @@ public abstract class XLayoutContainer extends XBorderStyleWidgetCreator impleme public void setEditable(boolean isEditable) { this.editable = isEditable; } + + /** + * data属性改变触发其他操作 + * + */ + public void firePropertyChange(){ + initStyle(); + } + } \ No newline at end of file diff --git a/designer_form/src/com/fr/design/designer/creator/XWAbsoluteBodyLayout.java b/designer_form/src/com/fr/design/designer/creator/XWAbsoluteBodyLayout.java index 51ba4ef531..895eaf0310 100644 --- a/designer_form/src/com/fr/design/designer/creator/XWAbsoluteBodyLayout.java +++ b/designer_form/src/com/fr/design/designer/creator/XWAbsoluteBodyLayout.java @@ -99,4 +99,13 @@ public class XWAbsoluteBodyLayout extends XWAbsoluteLayout { initBorderStyle(); } + /** + * data属性改变触发其他操作 + * + */ + public void firePropertyChange(){ + initStyle(); + } + + } diff --git a/designer_form/src/com/fr/design/designer/creator/XWParameterLayout.java b/designer_form/src/com/fr/design/designer/creator/XWParameterLayout.java index 979d9bf082..084ab77947 100644 --- a/designer_form/src/com/fr/design/designer/creator/XWParameterLayout.java +++ b/designer_form/src/com/fr/design/designer/creator/XWParameterLayout.java @@ -210,4 +210,13 @@ public class XWParameterLayout extends XWAbsoluteLayout { protected String getIconName() { return "layout_absolute.png"; } + + /** + * data属性改变触发其他操作 + * + */ + public void firePropertyChange(){ + + } + } \ No newline at end of file diff --git a/designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardLayout.java b/designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardLayout.java index 8a7db60597..2156478774 100644 --- a/designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardLayout.java +++ b/designer_form/src/com/fr/design/designer/creator/cardlayout/XWCardLayout.java @@ -443,4 +443,13 @@ public class XWCardLayout extends XLayoutContainer { public boolean supportRenameInWidgetTree() { return false; } + + /** + * data属性改变触发其他操作 + * + */ + public void firePropertyChange(){ + initStyle(); + } + } \ No newline at end of file