63 lines
1.6 KiB
Haxe
Executable File
63 lines
1.6 KiB
Haxe
Executable File
package haxework.gui;
|
|
|
|
import haxework.gui.core.VAlign;
|
|
import haxework.gui.core.HAlign;
|
|
import haxework.gui.skin.ISkin;
|
|
import haxework.gui.core.SizeType;
|
|
|
|
typedef Content = {
|
|
#if flash
|
|
var x(default,default):Float;
|
|
var y(default,default):Float;
|
|
var visible(default,default):Bool;
|
|
var mouseEnabled(default,default):Bool;
|
|
#else
|
|
var x(get,set):Float;
|
|
var y(get,set):Float;
|
|
var visible(get,set):Bool;
|
|
var mouseEnabled(get,set):Bool;
|
|
#end
|
|
}
|
|
|
|
interface IView<C:Content> {
|
|
public var id(default, default):String;
|
|
|
|
public var x(default, set):Float;
|
|
public var y(default, set):Float;
|
|
|
|
public var w(default, set):Float;
|
|
public var h(default, set):Float;
|
|
|
|
public var widthType(default, null):SizeType;
|
|
public var heightType(default, null):SizeType;
|
|
|
|
public var width(get, set):Float;
|
|
public var height(get, set):Float;
|
|
|
|
public var pWidth(default, set):Float;
|
|
public var pHeight(default, set):Float;
|
|
|
|
public var contentSize(default, set):Bool;
|
|
|
|
public var hAlign(default, set):HAlign;
|
|
public var vAlign(default, set):VAlign;
|
|
|
|
public var leftMargin(default, set):Float;
|
|
public var rightMargin(default, set):Float;
|
|
public var topMargin(default, set):Float;
|
|
public var bottomMargin(default, set):Float;
|
|
public var margins(null, set):Float;
|
|
|
|
public var content(default, null):C;
|
|
public var skin(default, set):ISkin<C, IView<C>>;
|
|
|
|
public var parent(default, null):Null<IGroupView<Dynamic>>;
|
|
public var inLayout(default, set):Bool;
|
|
|
|
public var visible(default, set):Bool;
|
|
public var index(default, set):Int;
|
|
public var mouseEnabled(default, set):Bool;
|
|
|
|
public function update():Void;
|
|
public function invalidate():Void;
|
|
} |