[view] SpriteSkin: add round param
This commit is contained in:
@@ -14,10 +14,10 @@ using haxework.color.ColorUtil;
|
||||
|
||||
@:style(0xffffff) public var color(default, default):Null<Color>;
|
||||
@:style(null) public var borderColor(default, default):Null<Color>;
|
||||
public var round(default, default):Float;
|
||||
@:style(15) public var round(default, default):Null<Float>;
|
||||
private var colors:Map<ButtonState, Int>;
|
||||
|
||||
public function new(?color:Color, ?borderColor:Color, round:Float = 15) {
|
||||
public function new(?color:Color, ?borderColor:Color, ?round:Float) {
|
||||
this.color = color;
|
||||
this.borderColor = borderColor;
|
||||
this.round = round;
|
||||
|
||||
@@ -6,10 +6,12 @@ import flash.display.Graphics;
|
||||
|
||||
@:style public var border(default, default):Border;
|
||||
@:style public var background(default, default):Background;
|
||||
@:style(null) public var round(default, default):Null<Float>;
|
||||
|
||||
public function new(?background:Background, ?border:Border) {
|
||||
public function new(?background:Background, ?border:Border, ?round:Float) {
|
||||
this.background = background != null ? background : new Background();
|
||||
this.border = border != null ? border : new Border();
|
||||
this.round = round;
|
||||
}
|
||||
|
||||
public function draw(view:SpriteView):Void {
|
||||
@@ -24,7 +26,11 @@ import flash.display.Graphics;
|
||||
graphics.beginFill(0, 0);
|
||||
}
|
||||
var o = border.color != null ? border.thickness / 2 : 0;
|
||||
if (round != null) {
|
||||
graphics.drawRoundRect(o, o, view.width - o * 2, view.height - o * 2, round, round);
|
||||
} else {
|
||||
graphics.drawRect(o, o, view.width - o * 2, view.height - o * 2);
|
||||
}
|
||||
graphics.lineStyle();
|
||||
graphics.endFill();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user