[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(0xffffff) public var color(default, default):Null<Color>;
|
||||||
@:style(null) public var borderColor(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>;
|
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.color = color;
|
||||||
this.borderColor = borderColor;
|
this.borderColor = borderColor;
|
||||||
this.round = round;
|
this.round = round;
|
||||||
|
|||||||
@@ -6,10 +6,12 @@ import flash.display.Graphics;
|
|||||||
|
|
||||||
@:style public var border(default, default):Border;
|
@:style public var border(default, default):Border;
|
||||||
@:style public var background(default, default):Background;
|
@: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.background = background != null ? background : new Background();
|
||||||
this.border = border != null ? border : new Border();
|
this.border = border != null ? border : new Border();
|
||||||
|
this.round = round;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function draw(view:SpriteView):Void {
|
public function draw(view:SpriteView):Void {
|
||||||
@@ -24,7 +26,11 @@ import flash.display.Graphics;
|
|||||||
graphics.beginFill(0, 0);
|
graphics.beginFill(0, 0);
|
||||||
}
|
}
|
||||||
var o = border.color != null ? border.thickness / 2 : 0;
|
var o = border.color != null ? border.thickness / 2 : 0;
|
||||||
graphics.drawRect(o, o, view.width - o * 2, view.height - o * 2);
|
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.lineStyle();
|
||||||
graphics.endFill();
|
graphics.endFill();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user