diff --git a/designer_base/src/com/fr/design/gui/UILookAndFeel.java b/designer_base/src/com/fr/design/gui/UILookAndFeel.java index 205abed29..d49cd9460 100644 --- a/designer_base/src/com/fr/design/gui/UILookAndFeel.java +++ b/designer_base/src/com/fr/design/gui/UILookAndFeel.java @@ -171,6 +171,7 @@ public class UILookAndFeel extends MetalLookAndFeel { table.put("FormattedTextField.border", new UITextFieldBorder()); table.put("TextField.border", new UITextFieldBorder()); table.put("PasswordField.border", new UITextFieldBorder()); + table.put("TextArea.border", new UITextFieldBorder()); } diff --git a/designer_base/src/com/fr/design/gui/itextarea/UITextArea.java b/designer_base/src/com/fr/design/gui/itextarea/UITextArea.java index 534be62ee..c731483bc 100644 --- a/designer_base/src/com/fr/design/gui/itextarea/UITextArea.java +++ b/designer_base/src/com/fr/design/gui/itextarea/UITextArea.java @@ -4,6 +4,7 @@ import com.fr.common.inputevent.InputEventBaseOnOS; import com.fr.design.event.UIObserver; import com.fr.design.event.UIObserverListener; import com.fr.design.utils.gui.GUICoreUtils; +import com.fr.stable.Constants; import javax.swing.*; import javax.swing.event.DocumentEvent; @@ -99,10 +100,9 @@ public class UITextArea extends JTextArea implements UIObserver { @Override protected void paintBorder(Graphics g) { - + getUI().paintBorder((Graphics2D) g, getWidth(), getHeight(), true, Constants.NULL); } - @Override /** * diff --git a/designer_base/src/com/fr/design/gui/itextarea/UITextAreaUI.java b/designer_base/src/com/fr/design/gui/itextarea/UITextAreaUI.java index d013d0de0..6e3f717dc 100644 --- a/designer_base/src/com/fr/design/gui/itextarea/UITextAreaUI.java +++ b/designer_base/src/com/fr/design/gui/itextarea/UITextAreaUI.java @@ -1,56 +1,43 @@ package com.fr.design.gui.itextarea; -import java.awt.Color; -import java.awt.Graphics; -import java.awt.Graphics2D; -import java.awt.Shape; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; -import java.awt.geom.RoundRectangle2D; - -import javax.swing.JComponent; -import javax.swing.plaf.basic.BasicTextAreaUI; -import javax.swing.text.JTextComponent; - import com.fr.design.constants.UIConstants; import com.fr.design.utils.gui.GUIPaintUtils; -public class UITextAreaUI extends BasicTextAreaUI { - protected boolean isRollOver; - private JComponent textField; - - public UITextAreaUI(final JComponent textField) { - super(); - this.textField = textField; - this.textField.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent e) { - isRollOver = true; - textField.repaint(); - } - - @Override - public void mouseExited(MouseEvent e) { - isRollOver = false; - textField.repaint(); - } - }); - } +import javax.swing.*; +import javax.swing.plaf.basic.BasicTextAreaUI; +import java.awt.*; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; - @Override - protected void paintBackground(Graphics g) { - JTextComponent editor = getComponent(); - int width = editor.getWidth(); - int height = editor.getHeight(); - Graphics2D g2d = (Graphics2D)g; - g2d.clearRect(0, 0, width, height); - if(isRollOver && textField.isEnabled() && ((UITextArea)textField).isEditable()) { - Shape shape = new RoundRectangle2D.Double(1, 1, width - 3, height - 3, UIConstants.ARC, UIConstants.ARC); - GUIPaintUtils.paintBorderShadow(g2d, 3, shape, UIConstants.HOVER_BLUE, Color.WHITE); - } else { - g2d.setColor(UIConstants.LINE_COLOR); - g2d.drawRoundRect(1, 1, width - 2, height - 2, UIConstants.ARC, UIConstants.ARC); - } - } +public class UITextAreaUI extends BasicTextAreaUI { + protected boolean isRollOver; + private JComponent textField; + + public UITextAreaUI(final JComponent textField) { + super(); + this.textField = textField; + this.textField.addMouseListener(new MouseAdapter() { + @Override + public void mouseEntered(MouseEvent e) { + isRollOver = true; + textField.repaint(); + } + + @Override + public void mouseExited(MouseEvent e) { + isRollOver = false; + textField.repaint(); + } + }); + } + + public void paintBorder(Graphics2D g2d, int width, int height, boolean isRound, int rectDirection) { + if (isRollOver && textField.isEnabled()) { + g2d.setColor(UIConstants.TEXT_FILED_BORDER_SELECTED); + g2d.drawRect(0, 0, width - 1, height - 1); + } else { + GUIPaintUtils.drawBorder(g2d, 0, 0, width, height, isRound, rectDirection); + } + } } \ No newline at end of file