Browse Source

Merge pull request #1238 in BA/design from ~HZZZ/design:release/9.0 to release/9.0

* commit '7fa32549645e7ceccf43e81b99425d5ac7e8eab9':
  下拉框按钮非点击状态颜色 & 下拉框选项背景色
  下拉框按钮的颜色
  ToolbarUI背景色
  条件属性背景
master
superman 7 years ago
parent
commit
da495ce905
  1. 3
      designer_base/src/com/fr/design/constants/UIConstants.java
  2. 2
      designer_base/src/com/fr/design/gui/controlpane/UIListControlPane.java
  3. 35
      designer_base/src/com/fr/design/gui/ibutton/UIButtonUI.java
  4. 2
      designer_base/src/com/fr/design/gui/icombobox/UIComboBoxRenderer.java
  5. 4
      designer_base/src/com/fr/design/gui/itoolbar/UIToolBarUI.java
  6. 84
      designer_base/src/com/fr/design/utils/gui/GUIPaintUtils.java

3
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_MEDIUM_DASH_DOT_DOT, //medium dash-dot-dot border
Constants.LINE_SLANTED_DASH_DOT, //slanted dash-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 LINE_COLOR = new Color(153, 153, 153);
public static final Color FONT_COLOR = new Color(51, 51, 51); public static final Color FONT_COLOR = new Color(51, 51, 51);
public static final Color LIGHT_BLUE = new Color(182, 217, 253); public static final Color LIGHT_BLUE = new Color(182, 217, 253);

2
designer_base/src/com/fr/design/gui/controlpane/UIListControlPane.java

@ -6,6 +6,7 @@ import com.fr.base.chart.BasePlot;
import com.fr.design.actions.UpdateAction; import com.fr.design.actions.UpdateAction;
import com.fr.design.actions.core.ActionFactory; import com.fr.design.actions.core.ActionFactory;
import com.fr.design.beans.BasicBeanPane; import com.fr.design.beans.BasicBeanPane;
import com.fr.design.constants.UIConstants;
import com.fr.design.data.tabledata.tabledatapane.GlobalMultiTDTableDataPane; import com.fr.design.data.tabledata.tabledatapane.GlobalMultiTDTableDataPane;
import com.fr.design.data.tabledata.tabledatapane.GlobalTreeTableDataPane; import com.fr.design.data.tabledata.tabledatapane.GlobalTreeTableDataPane;
import com.fr.design.data.tabledata.tabledatapane.MultiTDTableDataPane; import com.fr.design.data.tabledata.tabledatapane.MultiTDTableDataPane;
@ -87,6 +88,7 @@ public abstract class UIListControlPane extends UIControlPane {
protected void initLeftPane(JPanel leftPane) { protected void initLeftPane(JPanel leftPane) {
nameableList = createJNameList(); nameableList = createJNameList();
nameableList.setName(LIST_NAME); nameableList.setName(LIST_NAME);
nameableList.setSelectionBackground(UIConstants.ATTRIBUTE_PRESS);
leftPane.add(new UIScrollPane(nameableList), BorderLayout.CENTER); leftPane.add(new UIScrollPane(nameableList), BorderLayout.CENTER);

35
designer_base/src/com/fr/design/gui/ibutton/UIButtonUI.java

@ -1,27 +1,16 @@
package com.fr.design.gui.ibutton; package com.fr.design.gui.ibutton;
import java.awt.FontMetrics;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Insets;
import java.awt.Rectangle;
import java.awt.RenderingHints;
import javax.swing.AbstractButton;
import javax.swing.ButtonModel;
import javax.swing.Icon;
import javax.swing.JComponent;
import javax.swing.SwingUtilities;
import javax.swing.plaf.basic.BasicButtonUI;
import javax.swing.plaf.basic.BasicHTML;
import javax.swing.text.View;
import com.fr.design.constants.UIConstants; import com.fr.design.constants.UIConstants;
import com.fr.design.roleAuthority.ReportAndFSManagePane; import com.fr.design.roleAuthority.ReportAndFSManagePane;
import com.fr.design.utils.gui.GUIPaintUtils;
import com.fr.stable.StringUtils;
import sun.swing.SwingUtilities2; import sun.swing.SwingUtilities2;
import com.fr.stable.StringUtils; import javax.swing.*;
import com.fr.design.utils.gui.GUIPaintUtils; import javax.swing.plaf.basic.BasicButtonUI;
import javax.swing.plaf.basic.BasicHTML;
import javax.swing.text.View;
import java.awt.*;
public class UIButtonUI extends BasicButtonUI { public class UIButtonUI extends BasicButtonUI {
@ -51,11 +40,11 @@ public class UIButtonUI extends BasicButtonUI {
protected void doExtraPainting(UIButton b, Graphics2D g2d, int w, int h, String selectedRoles) { protected void doExtraPainting(UIButton b, Graphics2D g2d, int w, int h, String selectedRoles) {
if (isPressed(b) && b.isPressedPainted()) { 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)) { } 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()) { } 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);
} }
} }
@ -66,7 +55,7 @@ public class UIButtonUI extends BasicButtonUI {
protected boolean isPressed(AbstractButton b) { protected boolean isPressed(AbstractButton b) {
ButtonModel model = b.getModel(); ButtonModel model = b.getModel();
return (model.isArmed() && model.isPressed()) || b.isSelected(); return model.isArmed() && model.isPressed();
} }
private void paintContent(Graphics g, AbstractButton b, String text) { private void paintContent(Graphics g, AbstractButton b, String text) {
@ -127,7 +116,7 @@ public class UIButtonUI extends BasicButtonUI {
return; return;
} }
Icon selectedIcon = null; Icon selectedIcon = null;
/* the fallback icon should be based on the selected state */ /* the fallback icon should be based on the selected state */
if (model.isSelected()) { if (model.isSelected()) {
selectedIcon = (Icon) b.getSelectedIcon(); selectedIcon = (Icon) b.getSelectedIcon();
if (selectedIcon != null) { if (selectedIcon != null) {

2
designer_base/src/com/fr/design/gui/icombobox/UIComboBoxRenderer.java

@ -27,7 +27,7 @@ public class UIComboBoxRenderer extends DefaultListCellRenderer {
cellHasFocus = cellHasFocus && !this.isEnabled(); cellHasFocus = cellHasFocus && !this.isEnabled();
JLabel renderer =(JLabel) super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); JLabel renderer =(JLabel) super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
renderer.setForeground(Color.black); renderer.setForeground(Color.black);
list.setSelectionBackground(UIConstants.FLESH_BLUE); list.setSelectionBackground(UIConstants.COMBOBOX_BTN_PRESS);
list.setSelectionForeground(Color.black); list.setSelectionForeground(Color.black);
renderer.setText(" " + renderer.getText()); renderer.setText(" " + renderer.getText());
return renderer; return renderer;

4
designer_base/src/com/fr/design/gui/itoolbar/UIToolBarUI.java

@ -25,6 +25,8 @@ import com.fr.design.constants.UIConstants;
import com.fr.design.gui.ibutton.UIToolButtonBorder; import com.fr.design.gui.ibutton.UIToolButtonBorder;
import com.fr.design.gui.icheckbox.UICheckBox; import com.fr.design.gui.icheckbox.UICheckBox;
import static com.fr.design.utils.ThemeUtils.BACK_COLOR;
public class UIToolBarUI extends MetalToolBarUI { public class UIToolBarUI extends MetalToolBarUI {
public static final String IS_TOOL_BAR_BUTTON_KEY = "JToolBar.isToolbarButton"; public static final String IS_TOOL_BAR_BUTTON_KEY = "JToolBar.isToolbarButton";
public static final int FLOATABLE_GRIP_SIZE = 8; public static final int FLOATABLE_GRIP_SIZE = 8;
@ -89,7 +91,7 @@ public class UIToolBarUI extends MetalToolBarUI {
*/ */
public void paint(Graphics g, JComponent c) { public void paint(Graphics g, JComponent c) {
Graphics2D g2 = (Graphics2D) g; Graphics2D g2 = (Graphics2D) g;
g2.setColor(UIConstants.TOOLBARUI_BACKGROUND); g2.setColor(BACK_COLOR);
g2.fillRect(0, 0, c.getWidth(), c.getHeight()); g2.fillRect(0, 0, c.getWidth(), c.getHeight());
} }

84
designer_base/src/com/fr/design/utils/gui/GUIPaintUtils.java

@ -49,23 +49,28 @@ public class GUIPaintUtils {
/** /**
* 正常状态填充 * 正常状态填充
* @param g2d 图形对象 *
* @param x x坐标 * @param g2d 图形对象
* @param y y坐标 * @param x x坐标
* @param width 宽度 * @param y y坐标
* @param height 高度 * @param width 宽度
* @param isRound 是否圆角 * @param height 高度
* @param rectDirection 矩形方向 * @param isRound 是否圆角
* @param rectDirection 矩形方向
* @param isAuthorityEdited 是否权限编辑 * @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) { 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; GradientPaint gp;
if (BaseUtils.isAuthorityEditing() && isAuthorityEdited) { if (BaseUtils.isAuthorityEditing() && isAuthorityEdited) {
gp = new GradientPaint(1, 1, UIConstants.AUTHORITY_BLUE, 1, height - 1, UIConstants.AUTHORITY_DARK_BLUE); gp = new GradientPaint(1, 1, UIConstants.AUTHORITY_BLUE, 1, height - 1, UIConstants.AUTHORITY_DARK_BLUE);
} else if (isPressedPainted) { } else if (isPressedPainted) {
gp = new GradientPaint(1, 1, UIConstants.ATTRIBUTE_NORMAL, 1, height - 1, UIConstants.ATTRIBUTE_NORMAL); gp = new GradientPaint(1, 1, color, 1, height - 1, color);
}else{ } else {
gp = new GradientPaint(1, 1, UIConstants.SHADOW_GREY, 1, height - 1, UIConstants.SHADOW_GREY); 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 g2d 图形对象
* @param y y坐标 * @param x x坐标
* @param width 宽度 * @param y y坐标
* @param height 高度 * @param width 宽度
* @param isRound 是否圆角 * @param height 高度
* @param rectDirection 矩形方向 * @param isRound 是否圆角
* @param rectDirection 矩形方向
* @param isAuthorityEdited 是否权限编辑 * @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) { 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); 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) { 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); fillPressed(g2d, x, y, width, height, isRound, rectDirection, isAuthorityEdited, null);
@ -147,17 +153,19 @@ public class GUIPaintUtils {
g2d.setColor(oldColor); g2d.setColor(oldColor);
} }
/** /**
* 自定义画笔填充 * 自定义画笔填充
* @param g2d 图形对象 *
* @param x x坐标 * @param g2d 图形对象
* @param y y坐标 * @param x x坐标
* @param width 宽度 * @param y y坐标
* @param height 高度 * @param width 宽度
* @param isRound 是否圆角 * @param height 高度
* @param rectDirection 矩形方向 * @param isRound 是否圆角
* @param paint 画笔 * @param rectDirection 矩形方向
* @param arc 圆角尺寸 * @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) { 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(); 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) { 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.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2.setColor(outColor); g2.setColor(outColor);
g2.setStroke(new BasicStroke(shadowWidth)); g2.setStroke(new BasicStroke(shadowWidth));
g2.draw(shape); g2.draw(shape);
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF); g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF);
} }

Loading…
Cancel
Save