From 680dbdfef0105cb7f3a795825727a04d4b5451e9 Mon Sep 17 00:00:00 2001 From: plough Date: Wed, 13 Dec 2017 16:14:07 +0800 Subject: [PATCH 1/5] =?UTF-8?q?REPORT-4634=20=E7=BB=84=E4=BB=B6=E5=8F=A0?= =?UTF-8?q?=E5=8A=A0=E4=BD=93=E9=AA=8C=E4=BC=98=E5=8C=96=3D>=E8=A7=86?= =?UTF-8?q?=E8=A7=89=E8=B0=83=E6=95=B4=3D>=E5=8F=B3=E9=94=AE=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/actions/edit/DeleteAction.java | 6 +++- .../order/BringFloatElementForwardAction.java | 10 ++++-- .../order/BringFloatElementToFrontAction.java | 13 ++++++-- .../order/SendFloatElementBackwardAction.java | 10 ++++-- .../order/SendFloatElementToBackAction.java | 11 +++++-- .../utils/DeprecatedActionManager.java | 17 ---------- .../com/fr/grid/selection/FloatSelection.java | 33 +++++++++++-------- .../com/fr/design/locale/designer.properties | 8 ++--- .../design/locale/designer_en_US.properties | 8 ++--- .../design/locale/designer_zh_CN.properties | 8 ++--- .../design/locale/designer_zh_TW.properties | 8 ++--- .../beans/actions/MoveDownAction.java | 2 +- .../beans/actions/MoveToBottomAction.java | 2 +- .../designer/beans/actions/MoveUpAction.java | 2 +- .../fr/design/designer/creator/XCreator.java | 4 +-- 15 files changed, 81 insertions(+), 61 deletions(-) diff --git a/designer/src/com/fr/design/actions/edit/DeleteAction.java b/designer/src/com/fr/design/actions/edit/DeleteAction.java index 01e07a75bc..0fe1f7817c 100644 --- a/designer/src/com/fr/design/actions/edit/DeleteAction.java +++ b/designer/src/com/fr/design/actions/edit/DeleteAction.java @@ -8,6 +8,9 @@ import com.fr.design.actions.ElementCaseAction; import com.fr.general.Inter; import com.fr.design.mainframe.ElementCasePane; +import javax.swing.*; +import java.awt.event.KeyEvent; + /** * Delete Row, Column or FloatElement.. */ @@ -18,10 +21,11 @@ public class DeleteAction extends ElementCaseAction { public DeleteAction(ElementCasePane t) { super(t); - this.setName(Inter.getLocText("M_Edit-Delete") + "..."); + this.setName(Inter.getLocText("M_Edit-Delete")); this.setMnemonic('D'); //Richie:删除菜单图标 this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_report/delete.png")); + this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_BACK_SPACE, 0)); } @Override diff --git a/designer/src/com/fr/design/actions/edit/order/BringFloatElementForwardAction.java b/designer/src/com/fr/design/actions/edit/order/BringFloatElementForwardAction.java index c1ffd413ab..2259388d45 100644 --- a/designer/src/com/fr/design/actions/edit/order/BringFloatElementForwardAction.java +++ b/designer/src/com/fr/design/actions/edit/order/BringFloatElementForwardAction.java @@ -9,6 +9,11 @@ import com.fr.design.mainframe.ElementCasePane; import com.fr.report.cell.FloatElement; import com.fr.report.elementcase.ElementCase; +import javax.swing.*; +import java.awt.event.KeyEvent; + +import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER; + /** * Bring FloatElement forward. */ @@ -21,8 +26,9 @@ public class BringFloatElementForwardAction extends AbstractFloatElementOrderAct this.setName(Inter.getLocText("M_Edit-Bring_Forward")); this.setMnemonic('F'); - this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/bringForward.png")); - } + this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/up.png")); + this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_CLOSE_BRACKET, DEFAULT_MODIFIER)); + } @Override public void orderWithSelectedFloatElement(ElementCase report, diff --git a/designer/src/com/fr/design/actions/edit/order/BringFloatElementToFrontAction.java b/designer/src/com/fr/design/actions/edit/order/BringFloatElementToFrontAction.java index 880abaeecc..b50d683060 100644 --- a/designer/src/com/fr/design/actions/edit/order/BringFloatElementToFrontAction.java +++ b/designer/src/com/fr/design/actions/edit/order/BringFloatElementToFrontAction.java @@ -9,6 +9,12 @@ import com.fr.design.mainframe.ElementCasePane; import com.fr.report.cell.FloatElement; import com.fr.report.elementcase.ElementCase; +import javax.swing.*; +import java.awt.event.InputEvent; +import java.awt.event.KeyEvent; + +import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER; + /** * Bring FloatElement to front. */ @@ -20,9 +26,10 @@ public class BringFloatElementToFrontAction extends AbstractFloatElementOrderAct super(t); this.setName(Inter.getLocText("M_Edit-Bring_to_Front")); - this.setMnemonic('t'); - this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/bringToFront.png")); - } + this.setMnemonic('T'); + this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/to_top.png")); + this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_CLOSE_BRACKET, DEFAULT_MODIFIER + InputEvent.ALT_MASK)); + } @Override public void orderWithSelectedFloatElement(ElementCase report, diff --git a/designer/src/com/fr/design/actions/edit/order/SendFloatElementBackwardAction.java b/designer/src/com/fr/design/actions/edit/order/SendFloatElementBackwardAction.java index 166a2f79b6..e1eedc3550 100644 --- a/designer/src/com/fr/design/actions/edit/order/SendFloatElementBackwardAction.java +++ b/designer/src/com/fr/design/actions/edit/order/SendFloatElementBackwardAction.java @@ -9,6 +9,11 @@ import com.fr.design.mainframe.ElementCasePane; import com.fr.report.cell.FloatElement; import com.fr.report.elementcase.ElementCase; +import javax.swing.*; +import java.awt.event.KeyEvent; + +import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER; + /** * Send FloatElement backward. */ @@ -21,8 +26,9 @@ public class SendFloatElementBackwardAction extends AbstractFloatElementOrderAct this.setName(Inter.getLocText("M_Edit-Send_Backward")); this.setMnemonic('B'); - this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/sendBackward.png")); - } + this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/down.png")); + this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_OPEN_BRACKET, DEFAULT_MODIFIER)); + } @Override public void orderWithSelectedFloatElement(ElementCase report, diff --git a/designer/src/com/fr/design/actions/edit/order/SendFloatElementToBackAction.java b/designer/src/com/fr/design/actions/edit/order/SendFloatElementToBackAction.java index a97ea3fb92..ee8fa31d4e 100644 --- a/designer/src/com/fr/design/actions/edit/order/SendFloatElementToBackAction.java +++ b/designer/src/com/fr/design/actions/edit/order/SendFloatElementToBackAction.java @@ -9,6 +9,12 @@ import com.fr.design.mainframe.ElementCasePane; import com.fr.report.cell.FloatElement; import com.fr.report.elementcase.ElementCase; +import javax.swing.*; +import java.awt.event.InputEvent; +import java.awt.event.KeyEvent; + +import static com.fr.design.gui.syntax.ui.rtextarea.RTADefaultInputMap.DEFAULT_MODIFIER; + /** * Send FloatElement to back. */ @@ -21,8 +27,9 @@ public class SendFloatElementToBackAction extends AbstractFloatElementOrderActio this.setName(Inter.getLocText("M_Edit-Send_to_Back")); this.setMnemonic('K'); - this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/m_edit/sendToBack.png")); - } + this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/to_bottom.png")); + this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_OPEN_BRACKET, DEFAULT_MODIFIER + InputEvent.ALT_MASK)); + } @Override public void orderWithSelectedFloatElement(ElementCase report, diff --git a/designer/src/com/fr/design/actions/utils/DeprecatedActionManager.java b/designer/src/com/fr/design/actions/utils/DeprecatedActionManager.java index 89bbd82bfb..9e348e365c 100644 --- a/designer/src/com/fr/design/actions/utils/DeprecatedActionManager.java +++ b/designer/src/com/fr/design/actions/utils/DeprecatedActionManager.java @@ -68,23 +68,6 @@ public class DeprecatedActionManager { return clearMenu; } - /** - * Order menu - */ - public static JMenu getOrderMenu(ElementCasePane ePane) { - JMenu orderMenu = new JMenu(Inter.getLocText("M_Edit-Order")); - orderMenu.setIcon(UIConstants.BLACK_ICON); - orderMenu.setMnemonic('O'); - orderMenu.setBackground(UIConstants.NORMAL_BACKGROUND); - - orderMenu.add(new BringFloatElementToFrontAction(ePane).createMenuItem()); - orderMenu.add(new SendFloatElementToBackAction(ePane).createMenuItem()); - orderMenu.add(new BringFloatElementForwardAction(ePane).createMenuItem()); - orderMenu.add(new SendFloatElementBackwardAction(ePane).createMenuItem()); - - return orderMenu; - } - /** * Cell Style. */ diff --git a/designer/src/com/fr/grid/selection/FloatSelection.java b/designer/src/com/fr/grid/selection/FloatSelection.java index de44152f77..b7aebfb568 100644 --- a/designer/src/com/fr/grid/selection/FloatSelection.java +++ b/designer/src/com/fr/grid/selection/FloatSelection.java @@ -1,32 +1,35 @@ package com.fr.grid.selection; -import java.awt.Toolkit; - -import javax.swing.JPopupMenu; - import com.fr.base.BaseUtils; import com.fr.base.FRContext; import com.fr.design.actions.cell.CleanAuthorityAction; import com.fr.design.actions.cell.FloatStyleAction; import com.fr.design.actions.core.ActionFactory; import com.fr.design.actions.edit.*; -import com.fr.design.actions.utils.DeprecatedActionManager; +import com.fr.design.actions.edit.order.BringFloatElementForwardAction; +import com.fr.design.actions.edit.order.BringFloatElementToFrontAction; +import com.fr.design.actions.edit.order.SendFloatElementBackwardAction; +import com.fr.design.actions.edit.order.SendFloatElementToBackAction; import com.fr.design.cell.clipboard.CellElementsClip; import com.fr.design.cell.clipboard.ElementsTransferable; import com.fr.design.cell.clipboard.FloatElementsClip; import com.fr.design.designer.TargetComponent; +import com.fr.design.gui.imenu.UIPopupMenu; import com.fr.design.mainframe.CellElementPropertyPane; -import com.fr.general.ComparatorUtils; -import com.fr.general.Inter; import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane.Clear; +import com.fr.design.selection.QuickEditor; +import com.fr.design.utils.DesignUtils; +import com.fr.general.ComparatorUtils; +import com.fr.general.Inter; import com.fr.report.cell.FloatElement; import com.fr.report.elementcase.TemplateElementCase; -import com.fr.design.selection.QuickEditor; import com.fr.stable.ColumnRow; import com.fr.stable.unit.FU; import com.fr.stable.unit.OLDPIX; -import com.fr.design.utils.DesignUtils; + +import javax.swing.*; +import java.awt.*; /** * the float selection * @editor zhou @@ -114,24 +117,28 @@ public class FloatSelection extends Selection { @Override public JPopupMenu createPopupMenu(ElementCasePane ePane) { - JPopupMenu popup = new JPopupMenu(); + JPopupMenu popup = new UIPopupMenu(); if (BaseUtils.isAuthorityEditing()) { popup.add(new CleanAuthorityAction(ePane).createMenuItem()); return popup; } - popup.add(DeprecatedActionManager.getCellMenu(ePane).createJMenu()); popup.add(new FloatStyleAction(ePane).createMenuItem()); popup.add(new HyperlinkAction().createMenuItem()); - // cut, copy and paste popup.addSeparator(); + popup.add(new CutAction(ePane).createMenuItem()); popup.add(new CopyAction(ePane).createMenuItem()); popup.add(new PasteAction(ePane).createMenuItem()); popup.add(new DeleteAction(ePane).createMenuItem()); + popup.addSeparator(); + popup.add(new BringFloatElementToFrontAction(ePane).createMenuItem()); + popup.add(new SendFloatElementToBackAction(ePane).createMenuItem()); + popup.add(new BringFloatElementForwardAction(ePane).createMenuItem()); + popup.add(new SendFloatElementBackwardAction(ePane).createMenuItem()); popup.addSeparator(); - popup.add(DeprecatedActionManager.getOrderMenu(ePane)); + popup.add(new EditFloatElementNameAction(ePane).createMenuItem()); return popup; diff --git a/designer_base/src/com/fr/design/locale/designer.properties b/designer_base/src/com/fr/design/locale/designer.properties index 7db99aed93..e6b08da99c 100644 --- a/designer_base/src/com/fr/design/locale/designer.properties +++ b/designer_base/src/com/fr/design/locale/designer.properties @@ -2149,7 +2149,7 @@ FR-Designer_Provide_Choose_All= FR-Designer_Decimal_Places= FR-Designer_Env_Des_Https=If HTTPS is enabled or the HTTPS configuration (certificate path, HTTPS key) is modified, you must restart the designer to take effect. FR-Designer_Format_JavaScript=Format Code -FR-Designer_Move_Up=Move up -FR-Designer_Move_Down=Move down -FR-Designer_Move_To_Top=Move to top -FR-Designer_Move_To_Bottom=Move to bottom +FR-Designer_Move_Up=Move up(F) +FR-Designer_Move_Down=Move down(B) +FR-Designer_Move_To_Top=Move to top(T) +FR-Designer_Move_To_Bottom=Move to bottom(K) diff --git a/designer_base/src/com/fr/design/locale/designer_en_US.properties b/designer_base/src/com/fr/design/locale/designer_en_US.properties index b9fee5a51c..e192440a2c 100644 --- a/designer_base/src/com/fr/design/locale/designer_en_US.properties +++ b/designer_base/src/com/fr/design/locale/designer_en_US.properties @@ -2148,7 +2148,7 @@ FR-Designer_Provide_Choose_All= FR-Designer_Decimal_Places= FR-Designer_Env_Des_Https=If HTTPS is enabled or the HTTPS configuration (certificate path, HTTPS key) is modified, you must restart the designer to take effect. FR-Designer_Format_JavaScript=Format Code -FR-Designer_Move_Up=Move up -FR-Designer_Move_Down=Move down -FR-Designer_Move_To_Top=Move to top -FR-Designer_Move_To_Bottom=Move to bottom +FR-Designer_Move_Up=Move up(F) +FR-Designer_Move_Down=Move down(B) +FR-Designer_Move_To_Top=Move to top(T) +FR-Designer_Move_To_Bottom=Move to bottom(K) diff --git a/designer_base/src/com/fr/design/locale/designer_zh_CN.properties b/designer_base/src/com/fr/design/locale/designer_zh_CN.properties index 364c2515b7..909b176515 100644 --- a/designer_base/src/com/fr/design/locale/designer_zh_CN.properties +++ b/designer_base/src/com/fr/design/locale/designer_zh_CN.properties @@ -2149,7 +2149,7 @@ FR-Designer_Provide_Choose_All= FR-Designer_Decimal_Places= FR-Designer_Env_Des_Https=\u82E5\u542F\u7528https\u6216\u4FEE\u6539https\u914D\u7F6E\uFF08\u8BC1\u4E66\u8DEF\u5F84\u3001https\u79D8\u94A5\uFF09\uFF0C\u5FC5\u987B\u91CD\u542F\u8BBE\u8BA1\u5668\u624D\u80FD\u751F\u6548\u3002 FR-Designer_Format_JavaScript=\u683C\u5F0F\u5316\u4EE3\u7801 -FR-Designer_Move_Up=\u4E0A\u79FB\u4E00\u5C42 -FR-Designer_Move_Down=\u4E0B\u79FB\u4E00\u5C42 -FR-Designer_Move_To_Top=\u7F6E\u4E8E\u9876\u5C42 -FR-Designer_Move_To_Bottom=\u7F6E\u4E8E\u5E95\u5C42 \ No newline at end of file +FR-Designer_Move_Up=\u4E0A\u79FB\u4E00\u5C42(F) +FR-Designer_Move_Down=\u4E0B\u79FB\u4E00\u5C42(B) +FR-Designer_Move_To_Top=\u7F6E\u4E8E\u9876\u5C42(T) +FR-Designer_Move_To_Bottom=\u7F6E\u4E8E\u5E95\u5C42(K) \ No newline at end of file diff --git a/designer_base/src/com/fr/design/locale/designer_zh_TW.properties b/designer_base/src/com/fr/design/locale/designer_zh_TW.properties index 59602f2a98..b3c4c561f4 100644 --- a/designer_base/src/com/fr/design/locale/designer_zh_TW.properties +++ b/designer_base/src/com/fr/design/locale/designer_zh_TW.properties @@ -2148,7 +2148,7 @@ FR-Designer_Provide_Choose_All= FR-Designer_Decimal_Places= FR-Designer_Env_Des_Https=\u82E5\u555F\u7528https\u6216\u4FEE\u6539https\u914D\u7F6E\uFF08\u8B49\u66F8\u8DEF\u5F91\u3001https\u7955\u9470\uFF09\uFF0C\u5FC5\u9808\u91CD\u555F\u8A2D\u8A08\u5668\u624D\u80FD\u751F\u6548\u3002 FR-Designer_Format_JavaScript=Format Code -FR-Designer_Move_Up=\u4E0A\u79FB\u4E00\u5C64 -FR-Designer_Move_Down=\u4E0B\u79FB\u4E00\u5C64 -FR-Designer_Move_To_Top=\u7F6E\u65BC\u9802\u5C64 -FR-Designer_Move_To_Bottom=\u7F6E\u65BC\u5E95\u5C64 +FR-Designer_Move_Up=\u4E0A\u79FB\u4E00\u5C64(F) +FR-Designer_Move_Down=\u4E0B\u79FB\u4E00\u5C64(B) +FR-Designer_Move_To_Top=\u7F6E\u65BC\u9802\u5C64(T) +FR-Designer_Move_To_Bottom=\u7F6E\u65BC\u5E95\u5C64(K) diff --git a/designer_form/src/com/fr/design/designer/beans/actions/MoveDownAction.java b/designer_form/src/com/fr/design/designer/beans/actions/MoveDownAction.java index 1fb579c685..95cde265df 100644 --- a/designer_form/src/com/fr/design/designer/beans/actions/MoveDownAction.java +++ b/designer_form/src/com/fr/design/designer/beans/actions/MoveDownAction.java @@ -24,7 +24,7 @@ public class MoveDownAction extends FormEditAction { public MoveDownAction(FormDesigner t) { super(t); this.setName(Inter.getLocText("FR-Designer_Move_Down")); - this.setMnemonic('T'); + this.setMnemonic('B'); this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/down.png")); this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_OPEN_BRACKET, DEFAULT_MODIFIER)); } diff --git a/designer_form/src/com/fr/design/designer/beans/actions/MoveToBottomAction.java b/designer_form/src/com/fr/design/designer/beans/actions/MoveToBottomAction.java index 2e3041d9ae..9fc69953b8 100644 --- a/designer_form/src/com/fr/design/designer/beans/actions/MoveToBottomAction.java +++ b/designer_form/src/com/fr/design/designer/beans/actions/MoveToBottomAction.java @@ -24,7 +24,7 @@ public class MoveToBottomAction extends FormEditAction { public MoveToBottomAction(FormDesigner t) { super(t); this.setName(Inter.getLocText("FR-Designer_Move_To_Bottom")); - this.setMnemonic('T'); + this.setMnemonic('K'); this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/to_bottom.png")); this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_OPEN_BRACKET, DEFAULT_MODIFIER + InputEvent.ALT_MASK)); } diff --git a/designer_form/src/com/fr/design/designer/beans/actions/MoveUpAction.java b/designer_form/src/com/fr/design/designer/beans/actions/MoveUpAction.java index 3e214a768a..512b075d9b 100644 --- a/designer_form/src/com/fr/design/designer/beans/actions/MoveUpAction.java +++ b/designer_form/src/com/fr/design/designer/beans/actions/MoveUpAction.java @@ -23,7 +23,7 @@ public class MoveUpAction extends FormEditAction { public MoveUpAction(FormDesigner t) { super(t); this.setName(Inter.getLocText("FR-Designer_Move_Up")); - this.setMnemonic('T'); + this.setMnemonic('F'); this.setSmallIcon(BaseUtils.readIcon("/com/fr/design/images/control/up.png")); this.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_CLOSE_BRACKET, DEFAULT_MODIFIER)); } diff --git a/designer_form/src/com/fr/design/designer/creator/XCreator.java b/designer_form/src/com/fr/design/designer/creator/XCreator.java index 665db751a4..ed234b62ab 100644 --- a/designer_form/src/com/fr/design/designer/creator/XCreator.java +++ b/designer_form/src/com/fr/design/designer/creator/XCreator.java @@ -7,10 +7,10 @@ import com.fr.base.BaseUtils; import com.fr.design.actions.UpdateAction; import com.fr.design.designer.beans.AdapterBus; import com.fr.design.designer.beans.ComponentAdapter; -import com.fr.design.designer.beans.actions.*; import com.fr.design.designer.beans.events.DesignerEditor; import com.fr.design.designer.beans.models.SelectionModel; import com.fr.design.fun.WidgetPropertyUIProvider; +import com.fr.design.gui.imenu.UIPopupMenu; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.mainframe.*; import com.fr.design.utils.gui.LayoutUtils; @@ -673,7 +673,7 @@ public abstract class XCreator extends JPanel implements XComponent, XCreatorToo */ public JPopupMenu createPopupMenu(FormDesigner formDesigner) { UpdateAction[] actions = formDesigner.getActions(); - JPopupMenu popup = new JPopupMenu(); + JPopupMenu popup = new UIPopupMenu(); for (int i = 0; i < actions.length; i++) { if (i == SHORTS_SEPARATOR_POS) { popup.addSeparator(); From 0ad73ca5232d2ad8b8a402823f7f91dd3991e86e Mon Sep 17 00:00:00 2001 From: plough Date: Wed, 13 Dec 2017 17:05:17 +0800 Subject: [PATCH 2/5] =?UTF-8?q?REPORT-4634=20=E7=BB=84=E4=BB=B6=E5=8F=A0?= =?UTF-8?q?=E5=8A=A0=E4=BD=93=E9=AA=8C=E4=BC=98=E5=8C=96=3D>=E8=A7=86?= =?UTF-8?q?=E8=A7=89=E8=B0=83=E6=95=B4=3D>=E6=8E=A7=E4=BB=B6=E6=A0=91?= =?UTF-8?q?=E8=A7=86=E8=A7=89=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/com/fr/design/mainframe/ComponentTree.java | 4 ++-- .../fr/design/mainframe/FormHierarchyTreePane.java | 11 ++++++++--- .../fr/design/parameter/ParameterPropertyPane.java | 2 +- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/designer_form/src/com/fr/design/mainframe/ComponentTree.java b/designer_form/src/com/fr/design/mainframe/ComponentTree.java index 6779dfa037..21cb02f095 100644 --- a/designer_form/src/com/fr/design/mainframe/ComponentTree.java +++ b/designer_form/src/com/fr/design/mainframe/ComponentTree.java @@ -29,8 +29,8 @@ public class ComponentTree extends JTree { private ComponentTreeModel model; private UITreeUI uiTreeUI = new UITreeUI(); private PopupPreviewPane previewPane; - private static final int PADDING_LEFT = 10; - private static final int PADDING_TOP = 8; + private static final int PADDING_LEFT = 5; + private static final int PADDING_TOP = 5; public ComponentTree(FormDesigner designer) { this.designer = designer; diff --git a/designer_form/src/com/fr/design/mainframe/FormHierarchyTreePane.java b/designer_form/src/com/fr/design/mainframe/FormHierarchyTreePane.java index e133e100ed..212fe33897 100644 --- a/designer_form/src/com/fr/design/mainframe/FormHierarchyTreePane.java +++ b/designer_form/src/com/fr/design/mainframe/FormHierarchyTreePane.java @@ -13,6 +13,7 @@ import com.fr.design.gui.controlpane.ShortCut4JControlPane; import com.fr.design.gui.icontainer.UIScrollPane; import com.fr.design.gui.itoolbar.UIToolBarUI; import com.fr.design.gui.itoolbar.UIToolbar; +import com.fr.design.gui.style.BorderPane; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.menu.ShortCut; import com.fr.design.menu.ToolBarDef; @@ -33,6 +34,7 @@ public class FormHierarchyTreePane extends FormDockView implements HierarchyTree private static final int PARA = 0; private static final int BODY = 1; private static final int SHORTS_SEPARATOR_POS = 4; + private static final int TOOLBAR_PADDING_RIGHT = 10; private ShortCut4JControlPane[] shorts; private ComponentTree componentTree; @@ -114,12 +116,11 @@ public class FormHierarchyTreePane extends FormDockView implements HierarchyTree shorts = createShortcuts(); JPanel widgetPane = new JPanel(); - widgetPane.setBorder(BorderFactory.createLineBorder(UIConstants.RULER_LINE_COLOR)); widgetPane.setLayout(FRGUIPaneFactory.createBorderLayout()); widgetPane.add(getToolBarPane(), BorderLayout.CENTER); UIScrollPane scrollPane = new UIScrollPane(componentTree); - scrollPane.setBorder(BorderFactory.createMatteBorder(1, 0, 0, 0, UIConstants.RULER_LINE_COLOR)); + scrollPane.setBorder(BorderFactory.createEmptyBorder()); scrollPane.setPreferredSize(new Dimension(210, 170)); widgetPane.add(scrollPane, BorderLayout.SOUTH); return widgetPane; @@ -144,7 +145,11 @@ public class FormHierarchyTreePane extends FormDockView implements HierarchyTree JPanel toolBarPane = new JPanel(new BorderLayout()); toolBarPane.add(toolBar, BorderLayout.CENTER); - return toolBarPane; + toolBarPane.setBorder(BorderFactory.createMatteBorder(0, 0, 1, 0, UIConstants.BARNOMAL)); + JPanel toolBarPaneWrapper = new JPanel(new BorderLayout()); + toolBarPaneWrapper.add(toolBarPane, BorderLayout.CENTER); + toolBarPaneWrapper.setBorder(BorderFactory.createEmptyBorder(1, 0, 2, TOOLBAR_PADDING_RIGHT)); + return toolBarPaneWrapper; } protected ShortCut4JControlPane[] createShortcuts() { diff --git a/designer_form/src/com/fr/design/parameter/ParameterPropertyPane.java b/designer_form/src/com/fr/design/parameter/ParameterPropertyPane.java index 45593e99d3..6ce5a2ff9e 100644 --- a/designer_form/src/com/fr/design/parameter/ParameterPropertyPane.java +++ b/designer_form/src/com/fr/design/parameter/ParameterPropertyPane.java @@ -118,7 +118,7 @@ public class ParameterPropertyPane extends JPanel{ private void setEditor(FormDesigner editor) { if (formHierarchyTreePaneWrapper == null) { formHierarchyTreePaneWrapper = new JPanel(new BorderLayout()); - formHierarchyTreePaneWrapper.setBorder(BorderFactory.createEmptyBorder(PADDING_MIDDLE, PADDING_MIDDLE, 0, PADDING_MIDDLE)); + formHierarchyTreePaneWrapper.setBorder(BorderFactory.createEmptyBorder(0, PADDING_MIDDLE, 0, 0)); this.add(formHierarchyTreePaneWrapper, BorderLayout.SOUTH); } formHierarchyTreePaneWrapper.remove(FormHierarchyTreePane.getInstance()); From 38927deb8fb534ee064c85b2a77a90f5fb9a8607 Mon Sep 17 00:00:00 2001 From: plough Date: Wed, 13 Dec 2017 17:16:05 +0800 Subject: [PATCH 3/5] =?UTF-8?q?REPORT-4634=20=E7=BB=84=E4=BB=B6=E5=8F=A0?= =?UTF-8?q?=E5=8A=A0=E4=BD=93=E9=AA=8C=E4=BC=98=E5=8C=96=3D>=E8=A7=86?= =?UTF-8?q?=E8=A7=89=E8=B0=83=E6=95=B4=3D>=E6=8E=A7=E4=BB=B6=E6=A0=91?= =?UTF-8?q?=E9=80=89=E4=B8=AD=E9=A1=B9=E8=83=8C=E6=99=AF=E8=89=B2=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- designer_base/src/com/fr/design/utils/ThemeUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/designer_base/src/com/fr/design/utils/ThemeUtils.java b/designer_base/src/com/fr/design/utils/ThemeUtils.java index 9f012f2ee2..56060edb65 100644 --- a/designer_base/src/com/fr/design/utils/ThemeUtils.java +++ b/designer_base/src/com/fr/design/utils/ThemeUtils.java @@ -13,7 +13,7 @@ import java.awt.*; */ public class ThemeUtils { public static final ColorUIResource NORMAL_FOREGROUND = new ColorUIResource(0, 0, 0); - public static final ColorUIResource TEXT_SELECTED_BG_COLOR = new ColorUIResource(43, 107, 197); + public static final ColorUIResource TEXT_SELECTED_BG_COLOR = new ColorUIResource(65, 155, 249); public static final ColorUIResource TEXT_SELECTED_TEXT_COLOR = new ColorUIResource(255, 255, 255); public static final ColorUIResource NORMAL_BG = new ColorUIResource(212, 212, 216); public static final ColorUIResource DISABLE_TEXT = new ColorUIResource(143, 142, 139); From ea425ac074fa79bd623653251df49208f86ceb89 Mon Sep 17 00:00:00 2001 From: plough Date: Wed, 13 Dec 2017 17:32:53 +0800 Subject: [PATCH 4/5] =?UTF-8?q?REPORT-4634=20=E7=BB=84=E4=BB=B6=E5=8F=A0?= =?UTF-8?q?=E5=8A=A0=E4=BD=93=E9=AA=8C=E4=BC=98=E5=8C=96=3D>bug=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=3D>=E4=BF=AE=E5=A4=8D=E9=80=89=E4=B8=ADform=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/designer/beans/models/SelectionModel.java | 4 +++- designer_form/src/com/fr/design/mainframe/FormDesigner.java | 6 ++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/designer_form/src/com/fr/design/designer/beans/models/SelectionModel.java b/designer_form/src/com/fr/design/designer/beans/models/SelectionModel.java index 850539781d..850b737a36 100644 --- a/designer_form/src/com/fr/design/designer/beans/models/SelectionModel.java +++ b/designer_form/src/com/fr/design/designer/beans/models/SelectionModel.java @@ -81,7 +81,9 @@ public class SelectionModel { // 如果父层是scale和title两个专属容器,返回其父层,组件本身是不让被选中的 if (comp != designer.getRootComponent() && comp != designer.getParaComponent()) { XCreator parentContainer = (XCreator) comp.getParent(); - comp = parentContainer.isDedicateContainer() ? parentContainer : comp; + if (parentContainer != null) { + comp = parentContainer.isDedicateContainer() ? parentContainer : comp; + } } if (selection.removeSelectedCreator(comp) || selection.addSelectedCreator(comp)) { designer.getEditListenerTable().fireCreatorModified(comp, DesignerEvent.CREATOR_SELECTED); diff --git a/designer_form/src/com/fr/design/mainframe/FormDesigner.java b/designer_form/src/com/fr/design/mainframe/FormDesigner.java index dad299c2c9..851a2cdee6 100644 --- a/designer_form/src/com/fr/design/mainframe/FormDesigner.java +++ b/designer_form/src/com/fr/design/mainframe/FormDesigner.java @@ -1140,6 +1140,9 @@ public class FormDesigner extends TargetComponent
implements TreeSelection public boolean isCurrentComponentMovableUp() { XCreator creator = getSelectionModel().getSelection().getSelectedCreator(); Container container = creator.getParent(); + if (container == null) { + return false; + } return creator.isMovable() && container.getComponentZOrder(creator) > 0; } @@ -1147,6 +1150,9 @@ public class FormDesigner extends TargetComponent implements TreeSelection public boolean isCurrentComponentMovableDown() { XCreator creator = getSelectionModel().getSelection().getSelectedCreator(); Container container = creator.getParent(); + if (container == null) { + return false; + } return creator.isMovable() && container.getComponentZOrder(creator) < container.getComponentCount() - 1; } From 2b0ce231847c42863cf4f9e76a86ac3130ccd9d8 Mon Sep 17 00:00:00 2001 From: plough Date: Wed, 13 Dec 2017 17:38:58 +0800 Subject: [PATCH 5/5] =?UTF-8?q?REPORT-4634=20=E7=BB=84=E4=BB=B6=E5=8F=A0?= =?UTF-8?q?=E5=8A=A0=E4=BD=93=E9=AA=8C=E4=BC=98=E5=8C=96=3D>bug=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=3D>=E4=BF=AE=E5=A4=8D=E9=BC=A0=E6=A0=87=E5=BF=AB?= =?UTF-8?q?=E9=80=9F=E7=A7=BB=E5=87=BA=EF=BC=8C=E7=BC=A9=E7=95=A5=E5=9B=BE?= =?UTF-8?q?=E6=9C=AA=E5=85=B3=E9=97=AD=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/mainframe/ComponentTree.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/designer_form/src/com/fr/design/mainframe/ComponentTree.java b/designer_form/src/com/fr/design/mainframe/ComponentTree.java index 21cb02f095..d716237940 100644 --- a/designer_form/src/com/fr/design/mainframe/ComponentTree.java +++ b/designer_form/src/com/fr/design/mainframe/ComponentTree.java @@ -42,13 +42,19 @@ public class ComponentTree extends JTree { this.setDropMode(DropMode.ON_OR_INSERT); this.setTransferHandler(new TreeTransferHandler()); this.refreshTreeRoot(); - addTreeSelectionListener(designer); - addMouseMotionListener(new ComponetTreeMouseListener(this)); + initListeners(); setEditable(true); setUI(uiTreeUI); setBorder(BorderFactory.createEmptyBorder(PADDING_TOP, PADDING_LEFT, 0, 0)); } + private void initListeners() { + this.addTreeSelectionListener(designer); + ComponetTreeMouseListener componetTreeMouseListener = new ComponetTreeMouseListener(this); + this.addMouseMotionListener(componetTreeMouseListener); + this.addMouseListener(componetTreeMouseListener); + } + public FormDesigner getDesigner() { return designer; } @@ -276,6 +282,11 @@ public class ComponentTree extends JTree { hidePreviewPane(); } } + + @Override + public void mouseExited(MouseEvent e) { + hidePreviewPane(); + } } private class PopupPreviewPane extends JPopupMenu {