From fca6bc07e68290a79afa5d882f3a6e1d7842def5 Mon Sep 17 00:00:00 2001 From: hzzz Date: Thu, 14 Sep 2017 12:25:04 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8B=E6=8B=89=E6=A1=86=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E7=9A=84=E9=A2=9C=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/constants/UIConstants.java | 3 + .../com/fr/design/gui/ibutton/UIButtonUI.java | 6 +- .../fr/design/utils/gui/GUIPaintUtils.java | 84 ++++++++++--------- 3 files changed, 52 insertions(+), 41 deletions(-) diff --git a/designer_base/src/com/fr/design/constants/UIConstants.java b/designer_base/src/com/fr/design/constants/UIConstants.java index 39ea2e6fb..b675b40d8 100644 --- a/designer_base/src/com/fr/design/constants/UIConstants.java +++ b/designer_base/src/com/fr/design/constants/UIConstants.java @@ -64,6 +64,9 @@ public interface UIConstants { Constants.LINE_MEDIUM_DASH_DOT_DOT, //medium dash-dot-dot border Constants.LINE_SLANTED_DASH_DOT, //slanted dash-dot border }; + public static final Color COMBOBOX_BTN_NORMAL = new Color(0xD9DADD); + public static final Color COMBOBOX_BTN_ROLLOVER = new Color(0xC8C9CD); + public static final Color COMBOBOX_BTN_PRESS = new Color(0xD8F2FD); public static final Color LINE_COLOR = new Color(153, 153, 153); public static final Color FONT_COLOR = new Color(51, 51, 51); public static final Color LIGHT_BLUE = new Color(182, 217, 253); diff --git a/designer_base/src/com/fr/design/gui/ibutton/UIButtonUI.java b/designer_base/src/com/fr/design/gui/ibutton/UIButtonUI.java index ee98d0928..cd76c30cb 100644 --- a/designer_base/src/com/fr/design/gui/ibutton/UIButtonUI.java +++ b/designer_base/src/com/fr/design/gui/ibutton/UIButtonUI.java @@ -51,11 +51,11 @@ public class UIButtonUI extends BasicButtonUI { protected void doExtraPainting(UIButton b, Graphics2D g2d, int w, int h, String selectedRoles) { if (isPressed(b) && b.isPressedPainted()) { - GUIPaintUtils.fillPressed(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles)); + GUIPaintUtils.fillPressed(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), UIConstants.COMBOBOX_BTN_PRESS); } else if (isRollOver(b)) { - GUIPaintUtils.fillRollOver(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted()); + GUIPaintUtils.fillRollOver(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted(), UIConstants.COMBOBOX_BTN_ROLLOVER); } else if (b.isNormalPainted()) { - GUIPaintUtils.fillNormal(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted()); + GUIPaintUtils.fillNormal(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted(), UIConstants.COMBOBOX_BTN_NORMAL); } } diff --git a/designer_base/src/com/fr/design/utils/gui/GUIPaintUtils.java b/designer_base/src/com/fr/design/utils/gui/GUIPaintUtils.java index fb21725d6..286e44cd6 100644 --- a/designer_base/src/com/fr/design/utils/gui/GUIPaintUtils.java +++ b/designer_base/src/com/fr/design/utils/gui/GUIPaintUtils.java @@ -49,23 +49,28 @@ public class GUIPaintUtils { /** * 正常状态填充 - * @param g2d 图形对象 - * @param x x坐标 - * @param y y坐标 - * @param width 宽度 - * @param height 高度 - * @param isRound 是否圆角 - * @param rectDirection 矩形方向 + * + * @param g2d 图形对象 + * @param x x坐标 + * @param y y坐标 + * @param width 宽度 + * @param height 高度 + * @param isRound 是否圆角 + * @param rectDirection 矩形方向 * @param isAuthorityEdited 是否权限编辑 - * @param isPressedPainted 是否按压画 + * @param isPressedPainted 是否按压画 */ public static final void fillNormal(Graphics2D g2d, int x, int y, int width, int height, boolean isRound, int rectDirection, boolean isAuthorityEdited, boolean isPressedPainted) { + fillNormal(g2d, x, y, width, height, isRound, rectDirection, isAuthorityEdited, isPressedPainted, UIConstants.ATTRIBUTE_NORMAL); + } + + public static final void fillNormal(Graphics2D g2d, int x, int y, int width, int height, boolean isRound, int rectDirection, boolean isAuthorityEdited, boolean isPressedPainted, Color color) { GradientPaint gp; if (BaseUtils.isAuthorityEditing() && isAuthorityEdited) { gp = new GradientPaint(1, 1, UIConstants.AUTHORITY_BLUE, 1, height - 1, UIConstants.AUTHORITY_DARK_BLUE); } else if (isPressedPainted) { - gp = new GradientPaint(1, 1, UIConstants.ATTRIBUTE_NORMAL, 1, height - 1, UIConstants.ATTRIBUTE_NORMAL); - }else{ + gp = new GradientPaint(1, 1, color, 1, height - 1, color); + } else { gp = new GradientPaint(1, 1, UIConstants.SHADOW_GREY, 1, height - 1, UIConstants.SHADOW_GREY); } @@ -74,15 +79,16 @@ public class GUIPaintUtils { /** * 鼠标悬停状态填充 - * @param g2d 图形对象 - * @param x x坐标 - * @param y y坐标 - * @param width 宽度 - * @param height 高度 - * @param isRound 是否圆角 - * @param rectDirection 矩形方向 + * + * @param g2d 图形对象 + * @param x x坐标 + * @param y y坐标 + * @param width 宽度 + * @param height 高度 + * @param isRound 是否圆角 + * @param rectDirection 矩形方向 * @param isAuthorityEdited 是否权限编辑 - * @param isPressedPainted 是否按压画 + * @param isPressedPainted 是否按压画 */ public static final void fillRollOver(Graphics2D g2d, int x, int y, int width, int height, boolean isRound, int rectDirection, boolean isAuthorityEdited, boolean isPressedPainted) { fillRollOver(g2d, x, y, width, height, isRound, rectDirection, isAuthorityEdited, isPressedPainted, null); @@ -104,15 +110,15 @@ public class GUIPaintUtils { /** * 按压状态填充 - * @param g2d 图形对象 - * @param x x坐标 - * @param y y坐标 - * @param width 宽度 - * @param height 高度 - * @param isRound 是否圆角 - * @param rectDirection 矩形方向 - * @param isAuthorityEdited 是否权限编辑 * + * @param g2d 图形对象 + * @param x x坐标 + * @param y y坐标 + * @param width 宽度 + * @param height 高度 + * @param isRound 是否圆角 + * @param rectDirection 矩形方向 + * @param isAuthorityEdited 是否权限编辑 */ public static final void fillPressed(Graphics2D g2d, int x, int y, int width, int height, boolean isRound, int rectDirection, boolean isAuthorityEdited) { fillPressed(g2d, x, y, width, height, isRound, rectDirection, isAuthorityEdited, null); @@ -147,17 +153,19 @@ public class GUIPaintUtils { g2d.setColor(oldColor); } + /** * 自定义画笔填充 - * @param g2d 图形对象 - * @param x x坐标 - * @param y y坐标 - * @param width 宽度 - * @param height 高度 - * @param isRound 是否圆角 - * @param rectDirection 矩形方向 - * @param paint 画笔 - * @param arc 圆角尺寸 + * + * @param g2d 图形对象 + * @param x x坐标 + * @param y y坐标 + * @param width 宽度 + * @param height 高度 + * @param isRound 是否圆角 + * @param rectDirection 矩形方向 + * @param paint 画笔 + * @param arc 圆角尺寸 */ public static final void fillPaint(Graphics2D g2d, int x, int y, int width, int height, boolean isRound, int rectDirection, Paint paint, int arc) { Paint oldPaint = g2d.getPaint(); @@ -188,9 +196,9 @@ public class GUIPaintUtils { public static final void paintBorderShadow(Graphics2D g2, int shadowWidth, Shape shape, Color outColor, Color inColor) { g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); - g2.setColor(outColor); - g2.setStroke(new BasicStroke(shadowWidth)); - g2.draw(shape); + g2.setColor(outColor); + g2.setStroke(new BasicStroke(shadowWidth)); + g2.draw(shape); g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF); }