[view] add ActionDataView
This commit is contained in:
@@ -9,13 +9,16 @@ import haxework.view.layout.VerticalLayout;
|
|||||||
|
|
||||||
typedef Factory<D, V:IView<Dynamic>> = Int -> D -> V
|
typedef Factory<D, V:IView<Dynamic>> = Int -> D -> V
|
||||||
|
|
||||||
|
class ActionDataView<D, V:IView<Dynamic>, A> extends DataView<D, V> {
|
||||||
|
public var onDataAction(default, null):Signal2<D, A> = new Signal2();
|
||||||
|
}
|
||||||
|
|
||||||
class DataView<D, V:IView<Dynamic>> extends GroupView {
|
class DataView<D, V:IView<Dynamic>> extends GroupView {
|
||||||
|
|
||||||
public var data(default, set):Array<D>;
|
public var data(default, set):Array<D>;
|
||||||
public var factory(default, set):Factory<D, V>;
|
public var factory(default, set):Factory<D, V>;
|
||||||
public var onItemSelect(default, null):Signal3<Int, D, V> = new Signal3();
|
public var onItemSelect(default, null):Signal3<Int, D, V> = new Signal3();
|
||||||
public var onDataSelect(default, null):Signal<D> = new Signal();
|
public var onDataSelect(default, null):Signal<D> = new Signal();
|
||||||
public var onDataAction(default, null):Signal2<D, String> = new Signal2();
|
|
||||||
public var dataViews(default, null):Array<V>;
|
public var dataViews(default, null):Array<V>;
|
||||||
|
|
||||||
private var objectIndexes:Map<DisplayObject, Int> = new Map();
|
private var objectIndexes:Map<DisplayObject, Int> = new Map();
|
||||||
|
|||||||
@@ -23,7 +23,9 @@ import haxework.view.list.ScrollBarView;
|
|||||||
graphics.drawRect(0, 0, view.width, view.height);
|
graphics.drawRect(0, 0, view.width, view.height);
|
||||||
graphics.beginFill(foreColor);
|
graphics.beginFill(foreColor);
|
||||||
graphics.lineStyle();
|
graphics.lineStyle();
|
||||||
graphics.drawRect(0, position, view.width, size);
|
if (!Math.isNaN(position) && !Math.isNaN(size)) {
|
||||||
|
graphics.drawRect(0, position, view.width, size);
|
||||||
|
}
|
||||||
graphics.endFill();
|
graphics.endFill();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user