From f1136842ad579fe1b3d62373a57defa0da5b80fc Mon Sep 17 00:00:00 2001 From: Fangjie Hu Date: Tue, 9 Aug 2016 17:36:46 +0800 Subject: [PATCH 1/8] update --- .../src/com/fr/design/ChartTypeInterfaceManager.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java b/designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java index 500ece8b4..420986ce3 100644 --- a/designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java +++ b/designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java @@ -38,6 +38,8 @@ import com.fr.stable.xml.XMLPrintWriter; import com.fr.stable.xml.XMLableReader; import javax.swing.*; +import java.io.File; +import java.lang.reflect.Constructor; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; @@ -48,6 +50,9 @@ import java.util.Map; */ public class ChartTypeInterfaceManager extends XMLFileManager implements ExtraChartDesignClassManagerProvider { + + + private static ClassLoader loader = Thread.currentThread().getContextClassLoader(); private static ChartTypeInterfaceManager classManager = null; From 77f45d7acc1c78c9561e77eefd74f98fe4e2eb40 Mon Sep 17 00:00:00 2001 From: Fangjie Hu Date: Tue, 9 Aug 2016 17:38:55 +0800 Subject: [PATCH 2/8] update --- designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java b/designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java index 269371fbf..1d5cd101a 100644 --- a/designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java +++ b/designer_chart/src/com/fr/design/ChartTypeInterfaceManager.java @@ -38,8 +38,6 @@ import com.fr.stable.xml.XMLPrintWriter; import com.fr.stable.xml.XMLableReader; import javax.swing.*; -import java.io.File; -import java.lang.reflect.Constructor; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; From 242c290cd2437a34a47245235545269f6006800b Mon Sep 17 00:00:00 2001 From: Fangjie Hu Date: Tue, 9 Aug 2016 17:43:37 +0800 Subject: [PATCH 3/8] update --- .../src/com/fr/design/mainframe/chart/ChartEditPane.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/designer_chart/src/com/fr/design/mainframe/chart/ChartEditPane.java b/designer_chart/src/com/fr/design/mainframe/chart/ChartEditPane.java index 1de992158..8495eedf3 100644 --- a/designer_chart/src/com/fr/design/mainframe/chart/ChartEditPane.java +++ b/designer_chart/src/com/fr/design/mainframe/chart/ChartEditPane.java @@ -125,6 +125,8 @@ public class ChartEditPane extends BasicPane implements AttributeChange,Prepare4 } fire(); + + collection.getSelectedChart().getPlot().setAttrChange(true); } } }; From 92ea24eab39d5e664a0f217855e5a3a3d7aeb3d2 Mon Sep 17 00:00:00 2001 From: Fangjie Hu Date: Wed, 10 Aug 2016 11:35:49 +0800 Subject: [PATCH 4/8] =?UTF-8?q?=E6=94=B9=E5=8F=98=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- designer_chart/src/com/fr/design/image/ImageListener.java | 7 +++++++ .../src/com/fr/design/mainframe/chart/ChartEditPane.java | 7 +++++-- 2 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 designer_chart/src/com/fr/design/image/ImageListener.java diff --git a/designer_chart/src/com/fr/design/image/ImageListener.java b/designer_chart/src/com/fr/design/image/ImageListener.java new file mode 100644 index 000000000..b24bc5f94 --- /dev/null +++ b/designer_chart/src/com/fr/design/image/ImageListener.java @@ -0,0 +1,7 @@ +package com.fr.design.image; + +/** + * Created by hufan on 2016/8/10. + */ +public interface ImageListener { +} diff --git a/designer_chart/src/com/fr/design/mainframe/chart/ChartEditPane.java b/designer_chart/src/com/fr/design/mainframe/chart/ChartEditPane.java index 8495eedf3..c39aca7bd 100644 --- a/designer_chart/src/com/fr/design/mainframe/chart/ChartEditPane.java +++ b/designer_chart/src/com/fr/design/mainframe/chart/ChartEditPane.java @@ -115,6 +115,11 @@ public class ChartEditPane extends BasicPane implements AttributeChange,Prepare4 AbstractChartAttrPane selectedPane = paneList.get(tabsHeaderIconPane.getSelectedIndex()); selectedPane.update(collection); if (!ComparatorUtils.equals(collection, lastCollection)) { + + //此处画图 + Chart chart = collection.getSelectedChart(); + chart.demoImgEvent(true); + try { lastCollection = (ChartCollection) collection.clone(); } catch (CloneNotSupportedException e) { @@ -125,8 +130,6 @@ public class ChartEditPane extends BasicPane implements AttributeChange,Prepare4 } fire(); - - collection.getSelectedChart().getPlot().setAttrChange(true); } } }; From 488c074690d6f6c517dd49dd66501135b557e84a Mon Sep 17 00:00:00 2001 From: Fangjie Hu Date: Wed, 10 Aug 2016 11:47:07 +0800 Subject: [PATCH 5/8] update --- designer_chart/src/com/fr/design/image/ImageListener.java | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 designer_chart/src/com/fr/design/image/ImageListener.java diff --git a/designer_chart/src/com/fr/design/image/ImageListener.java b/designer_chart/src/com/fr/design/image/ImageListener.java deleted file mode 100644 index b24bc5f94..000000000 --- a/designer_chart/src/com/fr/design/image/ImageListener.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.fr.design.image; - -/** - * Created by hufan on 2016/8/10. - */ -public interface ImageListener { -} From 518254d0065249829b0dace101933751b8515978 Mon Sep 17 00:00:00 2001 From: zhouping Date: Wed, 10 Aug 2016 14:24:56 +0800 Subject: [PATCH 6/8] =?UTF-8?q?bug88297:=E4=BD=BF=E7=94=A8=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E6=9B=B4=E6=96=B0=E6=8F=92=E4=BB=B6=E7=9A=84=E6=97=B6?= =?UTF-8?q?=E5=80=99=EF=BC=8C=E6=9C=89=E7=9A=84jar=E5=8C=85=E6=A6=82?= =?UTF-8?q?=E7=8E=87=E6=80=A7=E5=88=A0=E9=99=A4=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/com/fr/design/RestartHelper.java | 26 ++++++++++++------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/designer_base/src/com/fr/design/RestartHelper.java b/designer_base/src/com/fr/design/RestartHelper.java index 4dff98615..53aa5e56b 100644 --- a/designer_base/src/com/fr/design/RestartHelper.java +++ b/designer_base/src/com/fr/design/RestartHelper.java @@ -4,15 +4,11 @@ import com.fr.design.mainframe.DesignerContext; import com.fr.general.ComparatorUtils; import com.fr.general.FRLogger; import com.fr.general.GeneralUtils; -import com.fr.stable.ArrayUtils; -import com.fr.stable.OperatingSystem; -import com.fr.stable.StableUtils; -import com.fr.stable.StringUtils; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; +import com.fr.stable.*; + +import java.io.*; +import java.nio.channels.FileChannel; +import java.nio.channels.FileLock; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -153,6 +149,18 @@ public class RestartHelper { } try { + try { + File restartLockFile = new File(StableUtils.pathJoin(StableUtils.getInstallHome(), "restart.lock")); + StableUtils.makesureFileExist(restartLockFile); + RandomAccessFile randomAccessFile = new RandomAccessFile(restartLockFile,"rw"); + FileChannel restartLockFC = randomAccessFile.getChannel(); + FileLock restartLock = restartLockFC.tryLock(); + if(restartLock == null) { + FRLogger.getLogger().error("restart lock null!"); + } + }catch (Exception e){ + FRLogger.getLogger().error(e.getMessage()); + } if (OperatingSystem.isMacOS()) { restartInMacOS(installHome, filesToBeDelete); } else { From bf93c680efda465079e7ef56dd994842fde90904 Mon Sep 17 00:00:00 2001 From: zhouping Date: Wed, 10 Aug 2016 17:20:31 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E5=B0=81=E4=BB=A3=E7=A0=81=EF=BC=8C?= =?UTF-8?q?=E7=BB=9D=E5=AF=B9=E5=B8=83=E5=B1=80=E4=BB=8E=E5=B7=A5=E5=85=B7?= =?UTF-8?q?=E6=A0=8F=E4=BD=8D=E7=BD=AE=E5=B1=8F=E8=94=BD=E6=8E=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- designer_form/src/com/fr/design/gui/core/FormWidgetOption.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/designer_form/src/com/fr/design/gui/core/FormWidgetOption.java b/designer_form/src/com/fr/design/gui/core/FormWidgetOption.java index 76287c30f..e99888c72 100644 --- a/designer_form/src/com/fr/design/gui/core/FormWidgetOption.java +++ b/designer_form/src/com/fr/design/gui/core/FormWidgetOption.java @@ -1 +1 @@ -package com.fr.design.gui.core; import javax.swing.Icon; import com.fr.base.BaseUtils; import com.fr.form.ui.ElementCaseEditor; import com.fr.form.ui.Widget; import com.fr.form.ui.container.WAbsoluteLayout; import com.fr.form.ui.container.WBorderLayout; import com.fr.form.ui.container.WCardLayout; import com.fr.form.ui.container.WFitLayout; import com.fr.form.ui.container.WHorizontalBoxLayout; import com.fr.form.ui.container.WParameterLayout; import com.fr.form.ui.container.WVerticalBoxLayout; import com.fr.general.Inter; /** * Author : Shockway * Date: 13-6-17 * Time: 上午10:40 */ public class FormWidgetOption extends WidgetOption { /** * 返回名字 * @return 名字 */ @Override public String optionName() { return null; } /** * 返回图标 * @return 图标 */ @Override public Icon optionIcon() { return null; } /** * 组件类 * @return 类 */ @Override public Class widgetClass() { return null; } /** * 返回组件 * @return 控件 */ @Override public Widget createWidget() { return null; } /* * 表单容器 */ public static WidgetOption[] getFormContainerInstance() { return new WidgetOption[] { ABSOLUTELAYOUTCONTAINER, BORDERLAYOUTCONTAINER, HORIZONTALBOXLAYOUTCONTAINER, VERTICALBOXLAYOUTCONTAINER, CARDLAYOUTCONTAINER, FITLAYOUTCONTAINER }; } /** * 表单工具栏上的布局 * @return 控件 */ public static WidgetOption[] getFormLayoutInstance() { return new WidgetOption[] {CARDLAYOUTCONTAINER, ABSOLUTELAYOUTCONTAINER}; } public static final WidgetOption ABSOLUTELAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_AbsoluteLayout"), BaseUtils.readIcon("/com/fr/web/images/form/resources/layout_absolute.png"), WAbsoluteLayout.class); public static final WidgetOption BORDERLAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_BorderLayout"), BaseUtils.readIcon("/com/fr/web/images/form/resources/layout_border.png"), WBorderLayout.class); public static final WidgetOption CARDLAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_CardLayout"), BaseUtils.readIcon("/com/fr/web/images/form/resources/card_layout_16.png"), WCardLayout.class); public static final WidgetOption HORIZONTALBOXLAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_Layout-HBox"), BaseUtils.readIcon("/com/fr/web/images/form/resources/boxlayout_h_16.png"), WHorizontalBoxLayout.class); public static final WidgetOption VERTICALBOXLAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_VerticalBoxLayout"), BaseUtils.readIcon("/com/fr/web/images/form/resources/boxlayout_v_16.png"), WVerticalBoxLayout.class); public static final WidgetOption FITLAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter.getLocText("FR-Designer-Layout_Adaptive_Layout"), BaseUtils.readIcon("/com/fr/web/images/form/resources/boxlayout_v_16.png"), WFitLayout.class); public static final WidgetOption PARAMETERCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_Para-Body"), BaseUtils.readIcon("/com/fr/web/images/form/resources/layout_parameter.png"), WParameterLayout.class); public static final WidgetOption ELEMENTCASE = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_Form-Report"), BaseUtils.readIcon("/com/fr/web/images/form/resources/report_16.png"), ElementCaseEditor.class); } \ No newline at end of file +package com.fr.design.gui.core; import javax.swing.Icon; import com.fr.base.BaseUtils; import com.fr.form.ui.ElementCaseEditor; import com.fr.form.ui.Widget; import com.fr.form.ui.container.WAbsoluteLayout; import com.fr.form.ui.container.WBorderLayout; import com.fr.form.ui.container.WCardLayout; import com.fr.form.ui.container.WFitLayout; import com.fr.form.ui.container.WHorizontalBoxLayout; import com.fr.form.ui.container.WParameterLayout; import com.fr.form.ui.container.WVerticalBoxLayout; import com.fr.general.Inter; /** * Author : Shockway * Date: 13-6-17 * Time: 上午10:40 */ public class FormWidgetOption extends WidgetOption { /** * 返回名字 * @return 名字 */ @Override public String optionName() { return null; } /** * 返回图标 * @return 图标 */ @Override public Icon optionIcon() { return null; } /** * 组件类 * @return 类 */ @Override public Class widgetClass() { return null; } /** * 返回组件 * @return 控件 */ @Override public Widget createWidget() { return null; } /* * 表单容器 */ public static WidgetOption[] getFormContainerInstance() { return new WidgetOption[] { ABSOLUTELAYOUTCONTAINER, BORDERLAYOUTCONTAINER, HORIZONTALBOXLAYOUTCONTAINER, VERTICALBOXLAYOUTCONTAINER, CARDLAYOUTCONTAINER, FITLAYOUTCONTAINER }; } /** * 表单工具栏上的布局 * @return 控件 */ public static WidgetOption[] getFormLayoutInstance() { return new WidgetOption[] {CARDLAYOUTCONTAINER/*, ABSOLUTELAYOUTCONTAINER*/}; } public static final WidgetOption ABSOLUTELAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_AbsoluteLayout"), BaseUtils.readIcon("/com/fr/web/images/form/resources/layout_absolute.png"), WAbsoluteLayout.class); public static final WidgetOption BORDERLAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_BorderLayout"), BaseUtils.readIcon("/com/fr/web/images/form/resources/layout_border.png"), WBorderLayout.class); public static final WidgetOption CARDLAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_CardLayout"), BaseUtils.readIcon("/com/fr/web/images/form/resources/card_layout_16.png"), WCardLayout.class); public static final WidgetOption HORIZONTALBOXLAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_Layout-HBox"), BaseUtils.readIcon("/com/fr/web/images/form/resources/boxlayout_h_16.png"), WHorizontalBoxLayout.class); public static final WidgetOption VERTICALBOXLAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_VerticalBoxLayout"), BaseUtils.readIcon("/com/fr/web/images/form/resources/boxlayout_v_16.png"), WVerticalBoxLayout.class); public static final WidgetOption FITLAYOUTCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter.getLocText("FR-Designer-Layout_Adaptive_Layout"), BaseUtils.readIcon("/com/fr/web/images/form/resources/boxlayout_v_16.png"), WFitLayout.class); public static final WidgetOption PARAMETERCONTAINER = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_Para-Body"), BaseUtils.readIcon("/com/fr/web/images/form/resources/layout_parameter.png"), WParameterLayout.class); public static final WidgetOption ELEMENTCASE = WidgetOptionFactory.createByWidgetClass(Inter .getLocText("FR-Designer_Form-Report"), BaseUtils.readIcon("/com/fr/web/images/form/resources/report_16.png"), ElementCaseEditor.class); } \ No newline at end of file From c2187ec556df112cd55eb79bf4ef5ab2f68fb152 Mon Sep 17 00:00:00 2001 From: zhouping Date: Wed, 10 Aug 2016 19:02:28 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E5=B0=81=E4=BB=A3=E7=A0=81=EF=BC=8C?= =?UTF-8?q?=E7=BB=9D=E5=AF=B9=E5=B8=83=E5=B1=80=E7=9A=84=E7=AD=89=E8=B7=9D?= =?UTF-8?q?=E7=BA=BF=E5=B1=8F=E8=94=BD=E6=8E=89=E5=8F=82=E6=95=B0=E9=9D=A2?= =?UTF-8?q?=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/com/fr/design/beans/location/MoveUtils.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/designer_base/src/com/fr/design/beans/location/MoveUtils.java b/designer_base/src/com/fr/design/beans/location/MoveUtils.java index 18c282cdc..fe80b463a 100644 --- a/designer_base/src/com/fr/design/beans/location/MoveUtils.java +++ b/designer_base/src/com/fr/design/beans/location/MoveUtils.java @@ -300,11 +300,13 @@ public class MoveUtils { findX(px, bounds, left, right, width); findY(py, bounds, top, bottom, height); - if(isIntersects && !isParameterLayout){ - isWidgetsIntersects = true; - } - else{ - findEquidistantLine(bounds, left, top, height, width); + if(!isParameterLayout){ + if(isIntersects) { + isWidgetsIntersects = true; + } + else{ + findEquidistantLine(bounds, left, top, height, width); + } } } showForbiddenWindow(designer, x, y, isWidgetsIntersects);