View framework.


Keywords
layout, template, view
License
MIT
Install
haxelib install haxework 1.3.0

Documentation

haxework

Gui framework for Haxe.

View

haxework.gui provides views classes.

Example

Build form using macro @:template.

form.json:

{
  "$type": "haxework.gui.VGroupView",
  "skin": [{"$type": "haxework.gui.skin.ColorSkin", "color": "0xffff00"}],
  "geometry.padding": 20,
  "layout.margin": 10,
  "views":[
    {
      "id": "view1",
      "type":"haxework.gui.SpriteView",
      "geometry.size.stretch": true,
      "skin":[{"$type":"haxework.gui.skin.ColorSkin", "color": "0xff0000"}]
    },
    {
      "id": "view2",
      "type": "haxework.gui.SpriteView",
      "geometry.size.width": "100%",
      "geometry.size.height": 50,
      "skin": [{"$type":"haxework.gui.skin.ColorSkin", "color": "0x00ff00"}]
    }
  ]
}
@:template("form.json")
class FormView extends VGroupView {
    @:view public var view1:SpriteView;
    @:view("view2") public var anyVarName:SpriteView; 
}

var form = new FormView();
Root.bind(form); // Add form to stage as root view element.
trace(form.view1);
trace(form.anyVarName);

Loader

haxework.net provides loaders classes.

Example

new JsonLoader().GET("http://example.com/file.json")
  .then(function(data) {
      trace("Json Ok: " + data);
  })
  .catchError(function(error) {
      trace("Json Fail: " + error);
  });