1
2 import org.aswing.ASColor;
3 import org.aswing.Component;
4 import org.aswing.geom.Dimension;
5 import org.aswing.geom.Rectangle;
6 import org.aswing.graphices.GradientBrush;
7 import org.aswing.graphices.Graphics;
8 import org.aswing.graphices.SolidBrush;
9 import org.aswing.plaf.basic.BasicTextComponentUI;
10 import org.aswing.plaf.ComponentUI;
11 import org.aswing.UIManager;
12
13
14
17 class org.aswing.plaf.basic.BasicTextFieldUI extends BasicTextComponentUI {
18
19 private static var textUI:BasicTextFieldUI;
20 private var highlight:ASColor;
21 private var shadow:ASColor;
22
23 public static function createInstance(c:Component):ComponentUI {
24 if(textUI == null){
25 textUI = new BasicTextFieldUI();
26 }
27 return textUI;
28 }
29
30 public function BasicTextFieldUI(){
31 super();
32 highlight = UIManager.getColor("TextField.highlight");
33 shadow = UIManager.getColor("TextField.shadow");
34 }
35
36
37
38 private function getPropertyPrefix():String {
39 return "TextField.";
40 }
41
42 private function paintBackGround(c:Component, g:Graphics, r:Rectangle):Void{
43 if(c.isOpaque() && c.isEnabled()){
44 var x:Number = r.x;
45 var y:Number = r.y;
46 var w:Number = r.width;
47 var h:Number = r.height;
48 g.fillRectangle(new SolidBrush(c.getBackground()), x,y,w,h);
49
50 var colors:Array = [0xF7F7F7, c.getBackground().getRGB()];
51 var alphas:Array = [50, 0];
52 var ratios:Array = [0, 100];
53 var matrix:Object = {matrixType:"box", x:x, y:y, w:w, h:h, r:(90/180)*Math.PI};
54 var brush:GradientBrush=new GradientBrush(GradientBrush.LINEAR, colors, alphas, ratios, matrix);
55 g.fillRectangle(brush,x,y,w,h);
56
57 }
58
59 }
60
61
64 public function getPreferredSize(c:Component):Dimension{
65 return null;
66 }
67 }