fixes for html5

This commit is contained in:
2015-04-27 18:01:10 +03:00
parent 2e6dbb7b38
commit 1baa673f8a
2 changed files with 16 additions and 4 deletions

View File

@@ -28,7 +28,11 @@ class ButtonView extends LabelView {
dispatcher = new Dispatcher<ButtonViewListener<Dynamic>>(); dispatcher = new Dispatcher<ButtonViewListener<Dynamic>>();
content.buttonMode = true; content.buttonMode = true;
content.mouseChildren = false; content.mouseChildren = false;
#if js
content.addEventListener(MouseEvent.MOUSE_UP, onMouseClick);
#else
content.addEventListener(MouseEvent.CLICK, onMouseClick); content.addEventListener(MouseEvent.CLICK, onMouseClick);
#end
#if !mobile #if !mobile
content.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); content.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
content.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); content.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
@@ -54,14 +58,18 @@ class ButtonView extends LabelView {
private function onMouseDown(event:MouseEvent):Void { private function onMouseDown(event:MouseEvent):Void {
downed = true; downed = true;
content.stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp); if (content.stage != null) {
invalidate(); content.stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
invalidate();
}
} }
private function onMouseUp(event:MouseEvent):Void { private function onMouseUp(event:MouseEvent):Void {
downed = false; downed = false;
content.stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUp); if (content.stage != null) {
invalidate(); content.stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUp);
invalidate();
}
} }
private function pressCaller(listener:ButtonViewListener<Dynamic>):Void { private function pressCaller(listener:ButtonViewListener<Dynamic>):Void {
@@ -93,6 +101,7 @@ class ButtonView extends LabelView {
public function dispose():Void { public function dispose():Void {
dispatcher.removeAllListeners(); dispatcher.removeAllListeners();
content.removeEventListener(MouseEvent.CLICK, onMouseClick); content.removeEventListener(MouseEvent.CLICK, onMouseClick);
content.removeEventListener(MouseEvent.MOUSE_UP, onMouseClick);
content.removeEventListener(MouseEvent.MOUSE_OVER, onMouseOver); content.removeEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
content.removeEventListener(MouseEvent.MOUSE_OUT, onMouseOut); content.removeEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
content.removeEventListener(MouseEvent.MOUSE_DOWN, onMouseDown); content.removeEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);

View File

@@ -36,6 +36,8 @@ class TextView extends SpriteView implements ITextView<Sprite, TextField> {
textField.width = 1; textField.width = 1;
textField.height = 1; textField.height = 1;
textField.wordWrap = true; textField.wordWrap = true;
//textField.borderColor = 0x00ff00;
//textField.border = true;
textFormat = textField.defaultTextFormat; textFormat = textField.defaultTextFormat;
textFormat.font = "Arial"; textFormat.font = "Arial";
textFormat.size = 16; textFormat.size = 16;
@@ -146,6 +148,7 @@ class TextView extends SpriteView implements ITextView<Sprite, TextField> {
if (t != null) textField.text = t; if (t != null) textField.text = t;
textField.setTextFormat(textFormat); textField.setTextFormat(textFormat);
if (contentSize && !Std.is(skin, ISize)) { if (contentSize && !Std.is(skin, ISize)) {
#if html5 textField.height = textField.textHeight; #end
width = textField.width + paddings * 2; width = textField.width + paddings * 2;
height = textField.height + paddings * 2; height = textField.height + paddings * 2;
textField.x = paddings; textField.x = paddings;