From b2f4cbcee2805ece55721a5a89146cf12493bfdc Mon Sep 17 00:00:00 2001 From: shmyga Date: Thu, 30 Jan 2014 17:24:23 +0400 Subject: [PATCH] list: fixes --- haxework/gui/ITextView.hx | 2 ++ haxework/gui/TextView.hx | 10 ++++++++++ haxework/gui/list/HListView.hx | 2 +- haxework/gui/list/VListView.hx | 2 +- haxework/net/order/IOrderSupplier.hx | 9 +++++++++ haxework/net/order/OrderSupplier.hx | 10 ++-------- 6 files changed, 25 insertions(+), 10 deletions(-) diff --git a/haxework/gui/ITextView.hx b/haxework/gui/ITextView.hx index 934d2e7..b87a970 100755 --- a/haxework/gui/ITextView.hx +++ b/haxework/gui/ITextView.hx @@ -7,7 +7,9 @@ interface ITextView extends IView { public var textField(default, null):T; public var text(get, set):String; public var align(default, set):TextFormatAlign; + //ToDo: font properties to object public var fontFamily(default, set):String; + public var fontEmbed(default, set):Bool; public var fontColor(default, set):Int; public var fontSize(default, set):Float; } diff --git a/haxework/gui/TextView.hx b/haxework/gui/TextView.hx index 4c50d71..8c34604 100755 --- a/haxework/gui/TextView.hx +++ b/haxework/gui/TextView.hx @@ -16,6 +16,7 @@ class TextView extends SpriteView implements ITextView { private var _text:String; public var align(default, set):TextFormatAlign; public var fontFamily(default, set):String; + public var fontEmbed(default, set):Bool; public var fontColor(default, set):Int; public var fontSize(default, set):Float; @@ -101,6 +102,14 @@ class TextView extends SpriteView implements ITextView { return fontFamily; } + private function set_fontEmbed(value:Bool):Bool { + if (fontEmbed != value) { + fontEmbed = value; + invalidate(); + } + return fontEmbed; + } + private function set_fontColor(value:Int):Int { if (fontColor != value) { fontColor = value; @@ -124,6 +133,7 @@ class TextView extends SpriteView implements ITextView { } override public function update():Void { + textField.embedFonts = fontEmbed; textField.defaultTextFormat = textFormat; textField.autoSize = fill ? TextFieldAutoSize.NONE : TextFieldAutoSize.LEFT; var t:String = currentText(); diff --git a/haxework/gui/list/HListView.hx b/haxework/gui/list/HListView.hx index bc8cf69..bf074b7 100755 --- a/haxework/gui/list/HListView.hx +++ b/haxework/gui/list/HListView.hx @@ -19,7 +19,7 @@ class HListView, D> extends ListView { var view:IView = item.view; itemSize = view.width + view.leftMargin + view.rightMargin + container.layoutMargin; size = Math.ceil(Math.max(0, width / itemSize)) + 2; - sizeDiff = size - (width / itemSize); + sizeDiff = size - ((width - container.layoutMargin - 1) / itemSize); } override private function set_offsetDiff(value:Float):Float { diff --git a/haxework/gui/list/VListView.hx b/haxework/gui/list/VListView.hx index 72a48c6..1eb30af 100755 --- a/haxework/gui/list/VListView.hx +++ b/haxework/gui/list/VListView.hx @@ -19,7 +19,7 @@ class VListView, D> extends ListView { var view:IView = item.view; itemSize = view.height + view.topMargin + view.bottomMargin + container.layoutMargin; size = Math.ceil(Math.max(0, height / itemSize)) + 2; - sizeDiff = size - (height / itemSize); + sizeDiff = size - ((height - container.layoutMargin - 1) / itemSize); } override private function set_offsetDiff(value:Float):Float { diff --git a/haxework/net/order/IOrderSupplier.hx b/haxework/net/order/IOrderSupplier.hx index e56c0ed..3a9ea04 100755 --- a/haxework/net/order/IOrderSupplier.hx +++ b/haxework/net/order/IOrderSupplier.hx @@ -2,7 +2,16 @@ package haxework.net.order; import haxework.net.callback.ICallback; +typedef Order = { + var id:String; + var data:Null; + var callbacks:Array>; + var clients:Int; +} + interface IOrderSupplier { + public var orders(default, null):Map>; + public function request(url:String, clazz:Class):ICallback; public function release(url:String):Void; } \ No newline at end of file diff --git a/haxework/net/order/OrderSupplier.hx b/haxework/net/order/OrderSupplier.hx index 81dc733..388ddc1 100755 --- a/haxework/net/order/OrderSupplier.hx +++ b/haxework/net/order/OrderSupplier.hx @@ -1,5 +1,6 @@ package haxework.net.order; +import haxework.net.order.IOrderSupplier.Order; import haxework.storage.IStorage; import haxework.provider.Provider; import haxework.net.callback.Callback; @@ -7,18 +8,11 @@ import com.abit.umix.prepare.AutoCallback; import flash.display.BitmapData; import haxework.net.callback.ICallback; -typedef Order = { - var id:String; - var data:Null; - var callbacks:Array>; - var clients:Int; -} - class OrderSupplier implements IOrderSupplier { private static inline var TAG:String = "OrderSupplier"; - private var orders:Map>; + public var orders(default, null):Map>; public function new() { orders = new Map>();