text: // Generated by Haxe 4.0.0-preview.5
  #include <hxcpp.h>
  
  #ifndef INCLUDED_95f339a1d026d52c
  #define INCLUDED_95f339a1d026d52c
  #include "hxMath.h"
  #endif
  #ifndef INCLUDED_Std
  #include <hxinc/Std.h>
  #endif
  #ifndef INCLUDED_kha_Canvas
  #include <hxinc/kha/Canvas.h>
  #endif
  #ifndef INCLUDED_kha_Framebuffer
  #include <hxinc/kha/Framebuffer.h>
  #endif
  #ifndef INCLUDED_kha_Image
  #include <hxinc/kha/Image.h>
  #endif
  #ifndef INCLUDED_kha_Kravur
  #include <hxinc/kha/Kravur.h>
  #endif
  #ifndef INCLUDED_kha_Resource
  #include <hxinc/kha/Resource.h>
  #endif
  #ifndef INCLUDED_kha_Scheduler
  #include <hxinc/kha/Scheduler.h>
  #endif
  #ifndef INCLUDED_kha_System
  #include <hxinc/kha/System.h>
  #endif
  #ifndef INCLUDED_kha_graphics2_Graphics
  #include <hxinc/kha/graphics2/Graphics.h>
  #endif
  #ifndef INCLUDED_kha_graphics2_ImageScaleQuality
  #include <hxinc/kha/graphics2/ImageScaleQuality.h>
  #endif
  #ifndef INCLUDED_kha_graphics4_TextureFormat
  #include <hxinc/kha/graphics4/TextureFormat.h>
  #endif
  #ifndef INCLUDED_kha_input_Keyboard
  #include <hxinc/kha/input/Keyboard.h>
  #endif
  #ifndef INCLUDED_kha_input_Mouse
  #include <hxinc/kha/input/Mouse.h>
  #endif
  #ifndef INCLUDED_kha_netsync_Controller
  #include <hxinc/kha/netsync/Controller.h>
  #endif
  #ifndef INCLUDED_zui_Handle
  #include <hxinc/zui/Handle.h>
  #endif
  #ifndef INCLUDED_zui_Themes
  #include <hxinc/zui/Themes.h>
  #endif
  #ifndef INCLUDED_zui_Zui
  #include <hxinc/zui/Zui.h>
  #endif
  
  HX_DEFINE_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_22_new,"zui.Zui","new",0x1237fa00,"zui.Zui.new","Sources/zui/Zui.hx",22,0xe279dd08)
  HX_DEFINE_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_158_new,"zui.Zui","new",0x1237fa00,"zui.Zui.new","Sources/zui/Zui.hx",158,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_163_setScale,"zui.Zui","setScale",0xb58429e8,"zui.Zui.setScale","Sources/zui/Zui.hx",163,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_184_bakeElements,"zui.Zui","bakeElements",0xa2bcb6d0,"zui.Zui.bakeElements","Sources/zui/Zui.hx",184,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_201_remove,"zui.Zui","remove",0xbca636a4,"zui.Zui.remove","Sources/zui/Zui.hx",201,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_204_registerInput,"zui.Zui","registerInput",0xb49af847,"zui.Zui.registerInput","Sources/zui/Zui.hx",204,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_210_unregisterInput,"zui.Zui","unregisterInput",0x354c764e,"zui.Zui.unregisterInput","Sources/zui/Zui.hx",210,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_219_begin,"zui.Zui","begin",0x22cfbbc9,"zui.Zui.begin","Sources/zui/Zui.hx",219,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_229_end,"zui.Zui","end",0x12312d7b,"zui.Zui.end","Sources/zui/Zui.hx",229,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_249_endInput,"zui.Zui","endInput",0xea9c488f,"zui.Zui.endInput","Sources/zui/Zui.hx",249,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_261_beginLayout,"zui.Zui","beginLayout",0x09755b53,"zui.Zui.beginLayout","Sources/zui/Zui.hx",261,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_274_endLayout,"zui.Zui","endLayout",0x1aee1e85,"zui.Zui.endLayout","Sources/zui/Zui.hx",274,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_278_inputChanged,"zui.Zui","inputChanged",0x1252ac6a,"zui.Zui.inputChanged","Sources/zui/Zui.hx",278,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_281_windowDirty,"zui.Zui","windowDirty",0xe139afa2,"zui.Zui.windowDirty","Sources/zui/Zui.hx",281,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_289_window,"zui.Zui","window",0x0aaa2e50,"zui.Zui.window","Sources/zui/Zui.hx",289,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_351_endWindow,"zui.Zui","endWindow",0x14c203cb,"zui.Zui.endWindow","Sources/zui/Zui.hx",351,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_432_scroll,"zui.Zui","scroll",0xff82726d,"zui.Zui.scroll","Sources/zui/Zui.hx",432,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_437_tab,"zui.Zui","tab",0x123c83f5,"zui.Zui.tab","Sources/zui/Zui.hx",437,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_454_drawTabs,"zui.Zui","drawTabs",0x8fe14d02,"zui.Zui.drawTabs","Sources/zui/Zui.hx",454,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_504_panel,"zui.Zui","panel",0x2fcc4ca4,"zui.Zui.panel","Sources/zui/Zui.hx",504,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_525_image,"zui.Zui","image",0x2fe2f0fb,"zui.Zui.image","Sources/zui/Zui.hx",525,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_565_text,"zui.Zui","text",0xe2ba0f0d,"zui.Zui.text","Sources/zui/Zui.hx",565,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_578_startTextEdit,"zui.Zui","startTextEdit",0x4bd9f179,"zui.Zui.startTextEdit","Sources/zui/Zui.hx",578,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_595_submitTextEdit,"zui.Zui","submitTextEdit",0xe34b03ef,"zui.Zui.submitTextEdit","Sources/zui/Zui.hx",595,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_603_updateTextEdit,"zui.Zui","updateTextEdit",0x6c030ae0,"zui.Zui.updateTextEdit","Sources/zui/Zui.hx",603,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_724_textInput,"zui.Zui","textInput",0xd95e75bd,"zui.Zui.textInput","Sources/zui/Zui.hx",724,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_752_deselectText,"zui.Zui","deselectText",0xef7606ea,"zui.Zui.deselectText","Sources/zui/Zui.hx",752,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_762_button,"zui.Zui","button",0x91fdfc52,"zui.Zui.button","Sources/zui/Zui.hx",762,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_784_check,"zui.Zui","check",0xb8306a68,"zui.Zui.check","Sources/zui/Zui.hx",784,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_803_radio,"zui.Zui","radio",0x5691e29b,"zui.Zui.radio","Sources/zui/Zui.hx",803,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_822_inlineRadio,"zui.Zui","inlineRadio",0xbce35d82,"zui.Zui.inlineRadio","Sources/zui/Zui.hx",822,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_837_combo,"zui.Zui","combo",0xbcd6f9ee,"zui.Zui.combo","Sources/zui/Zui.hx",837,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_889_slider,"zui.Zui","slider",0x28226081,"zui.Zui.slider","Sources/zui/Zui.hx",889,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_943_separator,"zui.Zui","separator",0xb3d28205,"zui.Zui.separator","Sources/zui/Zui.hx",943,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_952_tooltip,"zui.Zui","tooltip",0xcc5626a3,"zui.Zui.tooltip","Sources/zui/Zui.hx",952,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_957_tooltipImage,"zui.Zui","tooltipImage",0xc86279b8,"zui.Zui.tooltipImage","Sources/zui/Zui.hx",957,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_963_drawArrow,"zui.Zui","drawArrow",0x6fedd0c5,"zui.Zui.drawArrow","Sources/zui/Zui.hx",963,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_979_drawTree,"zui.Zui","drawTree",0x8fee35e2,"zui.Zui.drawTree","Sources/zui/Zui.hx",979,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_993_drawCheck,"zui.Zui","drawCheck",0x9014efc4,"zui.Zui.drawCheck","Sources/zui/Zui.hx",993,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1006_drawRadio,"zui.Zui","drawRadio",0x2e7667f7,"zui.Zui.drawRadio","Sources/zui/Zui.hx",1006,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1018_drawInlineRadio,"zui.Zui","drawInlineRadio",0x30304fde,"zui.Zui.drawInlineRadio","Sources/zui/Zui.hx",1018,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1031_drawSlider,"zui.Zui","drawSlider",0x38328ba5,"zui.Zui.drawSlider","Sources/zui/Zui.hx",1031,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1049_drawCombo,"zui.Zui","drawCombo",0x94bb7f4a,"zui.Zui.drawCombo","Sources/zui/Zui.hx",1049,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1081_drawTooltip,"zui.Zui","drawTooltip",0xca6bbaff,"zui.Zui.drawTooltip","Sources/zui/Zui.hx",1081,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1101_drawTooltipImage,"zui.Zui","drawTooltipImage",0x386997dc,"zui.Zui.drawTooltipImage","Sources/zui/Zui.hx",1101,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1114_drawString,"zui.Zui","drawString",0xd95dee55,"zui.Zui.drawString","Sources/zui/Zui.hx",1114,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1128_endElement,"zui.Zui","endElement",0x32e11e81,"zui.Zui.endElement","Sources/zui/Zui.hx",1128,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1153_row,"zui.Zui","row",0x123b0bba,"zui.Zui.row","Sources/zui/Zui.hx",1153,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1161_indent,"zui.Zui","indent",0x4c10a6cc,"zui.Zui.indent","Sources/zui/Zui.hx",1161,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1165_unindent,"zui.Zui","unindent",0xc4bb2de5,"zui.Zui.unindent","Sources/zui/Zui.hx",1165,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1170_fill,"zui.Zui","fill",0xd97c10e3,"zui.Zui.fill","Sources/zui/Zui.hx",1170,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1176_rect,"zui.Zui","rect",0xe1678f84,"zui.Zui.rect","Sources/zui/Zui.hx",1176,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1182_drawRect,"zui.Zui","drawRect",0x8e91e9a8,"zui.Zui.drawRect","Sources/zui/Zui.hx",1182,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1187_isVisible,"zui.Zui","isVisible",0x29761748,"zui.Zui.isVisible","Sources/zui/Zui.hx",1187,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1193_getReleased,"zui.Zui","getReleased",0xb3721513,"zui.Zui.getReleased","Sources/zui/Zui.hx",1193,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1198_getPushed,"zui.Zui","getPushed",0x70d6bf8f,"zui.Zui.getPushed","Sources/zui/Zui.hx",1198,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1203_getStarted,"zui.Zui","getStarted",0x0ae6f9ab,"zui.Zui.getStarted","Sources/zui/Zui.hx",1203,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1208_getInitialHover,"zui.Zui","getInitialHover",0xd6ab55ee,"zui.Zui.getInitialHover","Sources/zui/Zui.hx",1208,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1215_getHover,"zui.Zui","getHover",0xb9bce7a6,"zui.Zui.getHover","Sources/zui/Zui.hx",1215,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1224_getInputInRect,"zui.Zui","getInputInRect",0xf5ae54bd,"zui.Zui.getInputInRect","Sources/zui/Zui.hx",1224,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1229_onMouseDown,"zui.Zui","onMouseDown",0x279c5da8,"zui.Zui.onMouseDown","Sources/zui/Zui.hx",1229,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1239_onMouseUp,"zui.Zui","onMouseUp",0x1a70ce21,"zui.Zui.onMouseUp","Sources/zui/Zui.hx",1239,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1257_onMouseMove,"zui.Zui","onMouseMove",0x2d8f4857,"zui.Zui.onMouseMove","Sources/zui/Zui.hx",1257,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1261_onMouseWheel,"zui.Zui","onMouseWheel",0x6d246c95,"zui.Zui.onMouseWheel","Sources/zui/Zui.hx",1261,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1264_setInputPosition,"zui.Zui","setInputPosition",0x18492431,"zui.Zui.setInputPosition","Sources/zui/Zui.hx",1264,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1271_onKeyDown,"zui.Zui","onKeyDown",0xf64543e2,"zui.Zui.onKeyDown","Sources/zui/Zui.hx",1271,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1287_onKeyUp,"zui.Zui","onKeyUp",0xd705d1db,"zui.Zui.onKeyUp","Sources/zui/Zui.hx",1287,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1298_onKeyPress,"zui.Zui","onKeyPress",0x71131803,"zui.Zui.onKeyPress","Sources/zui/Zui.hx",1298,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1303_onCut,"zui.Zui","onCut",0xa4dceb43,"zui.Zui.onCut","Sources/zui/Zui.hx",1303,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1304_onCopy,"zui.Zui","onCopy",0x9c6c5ed4,"zui.Zui.onCopy","Sources/zui/Zui.hx",1304,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1305_onPaste,"zui.Zui","onPaste",0xb55d6b54,"zui.Zui.onPaste","Sources/zui/Zui.hx",1305,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1307_ELEMENT_W,"zui.Zui","ELEMENT_W",0x4596d654,"zui.Zui.ELEMENT_W","Sources/zui/Zui.hx",1307,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1308_ELEMENT_H,"zui.Zui","ELEMENT_H",0x4596d645,"zui.Zui.ELEMENT_H","Sources/zui/Zui.hx",1308,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1309_ELEMENT_OFFSET,"zui.Zui","ELEMENT_OFFSET",0xf9919876,"zui.Zui.ELEMENT_OFFSET","Sources/zui/Zui.hx",1309,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1310_ARROW_SIZE,"zui.Zui","ARROW_SIZE",0xc52078b7,"zui.Zui.ARROW_SIZE","Sources/zui/Zui.hx",1310,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1311_BUTTON_H,"zui.Zui","BUTTON_H",0xe43933db,"zui.Zui.BUTTON_H","Sources/zui/Zui.hx",1311,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1312_CHECK_SIZE,"zui.Zui","CHECK_SIZE",0x616d9d58,"zui.Zui.CHECK_SIZE","Sources/zui/Zui.hx",1312,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1313_CHECK_SELECT_SIZE,"zui.Zui","CHECK_SELECT_SIZE",0xc767886d,"zui.Zui.CHECK_SELECT_SIZE","Sources/zui/Zui.hx",1313,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1314_SCROLL_W,"zui.Zui","SCROLL_W",0x145ba6c5,"zui.Zui.SCROLL_W","Sources/zui/Zui.hx",1314,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1315_TEXT_OFFSET,"zui.Zui","TEXT_OFFSET",0xfc6729c5,"zui.Zui.TEXT_OFFSET","Sources/zui/Zui.hx",1315,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1316_TAB_W,"zui.Zui","TAB_W",0xfb4bd22d,"zui.Zui.TAB_W","Sources/zui/Zui.hx",1316,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1317_LINE_STRENGTH,"zui.Zui","LINE_STRENGTH",0xbd514d0c,"zui.Zui.LINE_STRENGTH","Sources/zui/Zui.hx",1317,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1318_FLASH_SPEED,"zui.Zui","FLASH_SPEED",0x3172d9d8,"zui.Zui.FLASH_SPEED","Sources/zui/Zui.hx",1318,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1319_TOOLTIP_DELAY,"zui.Zui","TOOLTIP_DELAY",0xdf599567,"zui.Zui.TOOLTIP_DELAY","Sources/zui/Zui.hx",1319,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1321_resize,"zui.Zui","resize",0xc098f454,"zui.Zui.resize","Sources/zui/Zui.hx",1321,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_58_boot,"zui.Zui","boot",0xd6dbc692,"zui.Zui.boot","Sources/zui/Zui.hx",58,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_59_boot,"zui.Zui","boot",0xd6dbc692,"zui.Zui.boot","Sources/zui/Zui.hx",59,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_60_boot,"zui.Zui","boot",0xd6dbc692,"zui.Zui.boot","Sources/zui/Zui.hx",60,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_61_boot,"zui.Zui","boot",0xd6dbc692,"zui.Zui.boot","Sources/zui/Zui.hx",61,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_62_boot,"zui.Zui","boot",0xd6dbc692,"zui.Zui.boot","Sources/zui/Zui.hx",62,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_63_boot,"zui.Zui","boot",0xd6dbc692,"zui.Zui.boot","Sources/zui/Zui.hx",63,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_64_boot,"zui.Zui","boot",0xd6dbc692,"zui.Zui.boot","Sources/zui/Zui.hx",64,0xe279dd08)
  HX_LOCAL_STACK_FRAME(_hx_pos_7c77aca9aabbe4ed_1048_boot,"zui.Zui","boot",0xd6dbc692,"zui.Zui.boot","Sources/zui/Zui.hx",1048,0xe279dd08)
  namespace zui{
  
  void Zui_obj::__construct( ::Dynamic ops){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_22_new)
  HXLINE( 436)		this->restoreY = ((Float)-1.0);
  HXLINE( 435)		this->restoreX = ((Float)-1.0);
  HXLINE( 141)		this->checkSelectImage = null();
  HXLINE( 140)		this->elementsBaked = false;
  HXLINE( 138)		this->tabScroll = ((Float)0.0);
  HXLINE( 137)		this->tabHandle = null();
  HXLINE( 136)		this->tabNames = null();
  HXLINE( 135)		this->tooltipTime = ((Float)0.0);
  HXLINE( 134)		this->tooltipShown = false;
  HXLINE( 133)		this->tooltipY = ((Float)0.0);
  HXLINE( 132)		this->tooltipX = ((Float)0.0);
  HXLINE( 131)		this->tooltipInvertY = false;
  HXLINE( 130)		this->tooltipImg = null();
  HXLINE( 129)		this->tooltipText = HX_("",00,00,00,00);
  HXLINE( 128)		this->comboToSubmit = 0;
  HXLINE( 127)		this->submitComboHandle = null();
  HXLINE( 120)		this->comboSelectedWindow = null();
  HXLINE( 119)		this->comboSelectedHandle = null();
  HXLINE( 118)		this->tabPressedHandle = null();
  HXLINE( 117)		this->tabPressed = false;
  HXLINE( 116)		this->textToSubmit = HX_("",00,00,00,00);
  HXLINE( 115)		this->submitTextHandle = null();
  HXLINE( 113)		this->textSelectedHandle = null();
  HXLINE( 111)		this->windowHeader = ((Float)0.0);
  HXLINE( 110)		this->scrollingHandle = null();
  HXLINE( 109)		this->windowEnded = true;
  HXLINE( 105)		this->_windowY = ((Float)0.0);
  HXLINE( 104)		this->_windowX = ((Float)0.0);
  HXLINE(  97)		this->imageScrollAlign = true;
  HXLINE(  96)		this->scrollAlign = ((Float)0.0);
  HXLINE(  71)		this->curRatio = -1;
  HXLINE(  68)		this->highlightAnchor = 0;
  HXLINE(  67)		this->cursorY = 0;
  HXLINE(  66)		this->cursorX = 0;
  HXLINE(  56)		this->key = null();
  HXLINE(  55)		this->isEscapeDown = false;
  HXLINE(  54)		this->isDeleteDown = false;
  HXLINE(  53)		this->isBackspaceDown = false;
  HXLINE(  52)		this->isAltDown = false;
  HXLINE(  51)		this->isCtrlDown = false;
  HXLINE(  50)		this->isShiftDown = false;
  HXLINE(  49)		this->isKeyDown = false;
  HXLINE(  42)		this->inputWheelDelta = 0;
  HXLINE(  35)		this->inputEnabled = true;
  HXLINE(  34)		this->inputRegistered = false;
  HXLINE(  32)		this->scrollEnabled = true;
  HXLINE(  31)		this->imageInvertY = false;
  HXLINE(  30)		this->alwaysRedraw = false;
  HXLINE(  29)		this->changed = false;
  HXLINE(  28)		this->isReleased = false;
  HXLINE(  27)		this->isHovered = false;
  HXLINE(  26)		this->isPushed = false;
  HXLINE(  25)		this->isStarted = false;
  HXLINE(  24)		this->isTyping = false;
  HXLINE(  23)		this->isScrolling = false;
  HXLINE( 144)		if (hx::IsNull( ops->__Field(HX_("theme",09,7e,86,0f),hx::paccDynamic) )) {
  HXLINE( 144)			ops->__SetField(HX_("theme",09,7e,86,0f),::zui::Themes_obj::dark,hx::paccDynamic);
              		}
  HXLINE( 145)		this->t = ops->__Field(HX_("theme",09,7e,86,0f),hx::paccDynamic);
  HXLINE( 146)		if (hx::IsNull( ops->__Field(HX_("khaWindowId",2f,bc,2f,40),hx::paccDynamic) )) {
  HXLINE( 146)			ops->__SetField(HX_("khaWindowId",2f,bc,2f,40),0,hx::paccDynamic);
              		}
  HXLINE( 147)		if (hx::IsNull( ops->__Field(HX_("scaleFactor",f9,5e,11,d0),hx::paccDynamic) )) {
  HXLINE( 147)			ops->__SetField(HX_("scaleFactor",f9,5e,11,d0),((Float)1.0),hx::paccDynamic);
              		}
  HXLINE( 148)		if (hx::IsNull( ops->__Field(HX_("scaleTexture",71,67,2a,36),hx::paccDynamic) )) {
  HXLINE( 148)			ops->__SetField(HX_("scaleTexture",71,67,2a,36),((Float)1.0),hx::paccDynamic);
              		}
  HXLINE( 149)		if (hx::IsNull( ops->__Field(HX_("autoNotifyInput",52,41,f2,7c),hx::paccDynamic) )) {
  HXLINE( 149)			ops->__SetField(HX_("autoNotifyInput",52,41,f2,7c),true,hx::paccDynamic);
              		}
  HXLINE( 150)		this->ops = ops;
  HXLINE( 151)		this->setScale(( (Float)(ops->__Field(HX_("scaleFactor",f9,5e,11,d0),hx::paccDynamic)) ));
  HXLINE( 152)		if (( (bool)(ops->__Field(HX_("autoNotifyInput",52,41,f2,7c),hx::paccDynamic)) )) {
  HXLINE( 152)			this->registerInput();
              		}
  HXLINE( 153)		if (hx::IsNull( ::zui::Zui_obj::copyReceiver )) {
              			HX_BEGIN_LOCAL_FUNC_S0(hx::LocalFunc,_hx_Closure_0) HXARGC(1)
              			void _hx_run(::Array< ::Dynamic> frames){
              				HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_158_new)
  HXLINE( 158)				bool _hx_tmp;
  HXDLIN( 158)				bool _hx_tmp1;
  HXDLIN( 158)				if (!(::zui::Zui_obj::isCopy)) {
  HXLINE( 158)					_hx_tmp1 = ::zui::Zui_obj::isPaste;
              				}
              				else {
  HXLINE( 158)					_hx_tmp1 = true;
              				}
  HXDLIN( 158)				if (_hx_tmp1) {
  HXLINE( 158)					_hx_tmp = (++::zui::Zui_obj::copyFrame > 1);
              				}
              				else {
  HXLINE( 158)					_hx_tmp = false;
              				}
  HXDLIN( 158)				if (_hx_tmp) {
  HXLINE( 158)					::zui::Zui_obj::isCopy = (::zui::Zui_obj::isCut = (::zui::Zui_obj::isPaste = false));
  HXDLIN( 158)					::zui::Zui_obj::copyFrame = 0;
              				}
              			}
              			HX_END_LOCAL_FUNC1((void))
  
  HXLINE( 154)			::zui::Zui_obj::copyReceiver = hx::ObjectPtr<OBJ_>(this);
  HXLINE( 155)			::kha::System_obj::notifyOnCutCopyPaste(this->onCut_dyn(),this->onCopy_dyn(),this->onPaste_dyn());
  HXLINE( 156)			::kha::System_obj::notifyOnFrames( ::Dynamic(new _hx_Closure_0()));
              		}
              	}
  
  Dynamic Zui_obj::__CreateEmpty() { return new Zui_obj; }
  
  void *Zui_obj::_hx_vtable = 0;
  
  Dynamic Zui_obj::__Create(hx::DynamicArray inArgs)
  {
  	hx::ObjectPtr< Zui_obj > _hx_result = new Zui_obj();
  	_hx_result->__construct(inArgs[0]);
  	return _hx_result;
  }
  
  bool Zui_obj::_hx_isInstanceOf(int inClassId) {
  	return inClassId==(int)0x00000001 || inClassId==(int)0x30f846c4;
  }
  
  void Zui_obj::setScale(Float factor){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_163_setScale)
  HXLINE( 164)		this->ops->__SetField(HX_("scaleFactor",f9,5e,11,d0),factor,hx::paccDynamic);
  HXLINE( 165)		this->SCALE = (( (Float)(this->ops->__Field(HX_("scaleFactor",f9,5e,11,d0),hx::paccDynamic)) ) * ( (Float)(this->ops->__Field(HX_("scaleTexture",71,67,2a,36),hx::paccDynamic)) ));
  HXLINE( 166)		this->fontSize = ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("FONT_SIZE",71,f0,3d,80),hx::paccDynamic)) ) * ( (Float)(this->ops->__Field(HX_("scaleFactor",f9,5e,11,d0),hx::paccDynamic)) )));
  HXLINE( 167)		Float fontHeight = ( ( ::kha::Kravur)(this->ops->__Field(HX_("font",cf,5d,c0,43),hx::paccDynamic)) )->height(this->fontSize);
  HXLINE( 168)		this->fontOffsetY = (((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE) - fontHeight) / ( (Float)(2) ));
  HXLINE( 169)		this->arrowOffsetY = (((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE) - (( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE)) / ( (Float)(2) ));
  HXLINE( 170)		this->arrowOffsetX = this->arrowOffsetY;
  HXLINE( 171)		this->titleOffsetX = (((this->arrowOffsetX * ( (Float)(2) )) + (( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE)) / this->SCALE);
  HXLINE( 172)		this->buttonOffsetY = (((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE) - (( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE)) / ( (Float)(2) ));
  HXLINE( 173)		this->checkOffsetY = (((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE) - (( (Float)(this->t->__Field(HX_("CHECK_SIZE",f8,52,03,db),hx::paccDynamic)) ) * this->SCALE)) / ( (Float)(2) ));
  HXLINE( 174)		this->checkOffsetX = this->checkOffsetY;
  HXLINE( 175)		this->checkSelectOffsetY = (((( (Float)(this->t->__Field(HX_("CHECK_SIZE",f8,52,03,db),hx::paccDynamic)) ) * this->SCALE) - (( (Float)(this->t->__Field(HX_("CHECK_SELECT_SIZE",cd,c6,a9,44),hx::paccDynamic)) ) * this->SCALE)) / ( (Float)(2) ));
  HXLINE( 176)		this->checkSelectOffsetX = this->checkSelectOffsetY;
  HXLINE( 177)		this->radioOffsetY = (((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE) - (( (Float)(this->t->__Field(HX_("CHECK_SIZE",f8,52,03,db),hx::paccDynamic)) ) * this->SCALE)) / ( (Float)(2) ));
  HXLINE( 178)		this->radioOffsetX = this->radioOffsetY;
  HXLINE( 179)		this->radioSelectOffsetY = (((( (Float)(this->t->__Field(HX_("CHECK_SIZE",f8,52,03,db),hx::paccDynamic)) ) * this->SCALE) - (( (Float)(this->t->__Field(HX_("CHECK_SELECT_SIZE",cd,c6,a9,44),hx::paccDynamic)) ) * this->SCALE)) / ( (Float)(2) ));
  HXLINE( 180)		this->radioSelectOffsetX = this->radioSelectOffsetY;
  HXLINE( 181)		this->elementsBaked = false;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,setScale,(void))
  
  void Zui_obj::bakeElements(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_184_bakeElements)
  HXLINE( 185)		if (hx::IsNotNull( this->checkSelectImage )) {
  HXLINE( 186)			this->checkSelectImage->unload();
              		}
  HXLINE( 188)		int _hx_tmp = ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("CHECK_SELECT_SIZE",cd,c6,a9,44),hx::paccDynamic)) ) * this->SCALE));
  HXDLIN( 188)		int _hx_tmp1 = ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("CHECK_SELECT_SIZE",cd,c6,a9,44),hx::paccDynamic)) ) * this->SCALE));
  HXDLIN( 188)		this->checkSelectImage = ::kha::Image_obj::createRenderTarget(_hx_tmp,_hx_tmp1,null(),0,1,this->ops->__Field(HX_("khaWindowId",2f,bc,2f,40),hx::paccDynamic));
  HXLINE( 189)		 ::kha::graphics2::Graphics g = this->checkSelectImage->get_g2();
  HXLINE( 190)		g->begin(true,0);
  HXLINE( 191)		g->set_color(( (int)(this->t->__Field(HX_("ACCENT_SELECT_COL",32,b6,1e,48),hx::paccDynamic)) ));
  HXLINE( 192)		int _hx_tmp2 = this->checkSelectImage->get_width();
  HXDLIN( 192)		int _hx_tmp3 = this->checkSelectImage->get_height();
  HXDLIN( 192)		g->drawLine(( (Float)(0) ),( (Float)(0) ),( (Float)(_hx_tmp2) ),( (Float)(_hx_tmp3) ),(( (Float)(2) ) * this->SCALE));
  HXLINE( 193)		int _hx_tmp4 = this->checkSelectImage->get_width();
  HXDLIN( 193)		int _hx_tmp5 = this->checkSelectImage->get_height();
  HXDLIN( 193)		g->drawLine(( (Float)(_hx_tmp4) ),( (Float)(0) ),( (Float)(0) ),( (Float)(_hx_tmp5) ),(( (Float)(2) ) * this->SCALE));
  HXLINE( 196)		g->end();
  HXLINE( 197)		this->elementsBaked = true;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,bakeElements,(void))
  
  void Zui_obj::remove(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_201_remove)
  HXDLIN( 201)		if (( (bool)(this->ops->__Field(HX_("autoNotifyInput",52,41,f2,7c),hx::paccDynamic)) )) {
  HXDLIN( 201)			this->unregisterInput();
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,remove,(void))
  
  void Zui_obj::registerInput(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_204_registerInput)
  HXLINE( 205)		::kha::input::Mouse_obj::get(null())->notifyWindowed(( (int)(this->ops->__Field(HX_("khaWindowId",2f,bc,2f,40),hx::paccDynamic)) ),this->onMouseDown_dyn(),this->onMouseUp_dyn(),this->onMouseMove_dyn(),this->onMouseWheel_dyn(),null());
  HXLINE( 206)		::kha::input::Keyboard_obj::get(null())->notify(this->onKeyDown_dyn(),this->onKeyUp_dyn(),this->onKeyPress_dyn());
  HXLINE( 207)		this->inputRegistered = true;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,registerInput,(void))
  
  void Zui_obj::unregisterInput(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_210_unregisterInput)
  HXLINE( 211)		::kha::input::Mouse_obj::get(null())->removeWindowed(( (int)(this->ops->__Field(HX_("khaWindowId",2f,bc,2f,40),hx::paccDynamic)) ),this->onMouseDown_dyn(),this->onMouseUp_dyn(),this->onMouseMove_dyn(),this->onMouseWheel_dyn(),null());
  HXLINE( 212)		::kha::input::Keyboard_obj::get(null())->remove(this->onKeyDown_dyn(),this->onKeyUp_dyn(),this->onKeyPress_dyn());
  HXLINE( 214)		this->endInput();
  HXLINE( 215)		this->inputX = (this->inputY = ( (Float)(0) ));
  HXLINE( 216)		this->inputRegistered = false;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,unregisterInput,(void))
  
  void Zui_obj::begin( ::kha::graphics2::Graphics g){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_219_begin)
  HXLINE( 220)		if (!(this->elementsBaked)) {
  HXLINE( 220)			this->bakeElements();
              		}
  HXLINE( 221)		this->changed = false;
  HXLINE( 222)		this->globalG = g;
  HXLINE( 223)		this->_x = ( (Float)(0) );
  HXLINE( 224)		this->_y = ( (Float)(0) );
  HXLINE( 225)		this->_w = 0;
  HXLINE( 226)		this->_h = 0;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,begin,(void))
  
  void Zui_obj::end(hx::Null< bool >  __o_last){
              		bool last = __o_last.Default(true);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_229_end)
  HXLINE( 230)		if (!(this->windowEnded)) {
  HXLINE( 230)			this->endWindow(null());
              		}
  HXLINE( 231)		if (hx::IsNotNull( this->comboSelectedHandle )) {
  HXLINE( 231)			this->drawCombo();
              		}
  HXLINE( 232)		bool _hx_tmp;
  HXDLIN( 232)		if ((this->tooltipText == HX_("",00,00,00,00))) {
  HXLINE( 232)			_hx_tmp = hx::IsNotNull( this->tooltipImg );
              		}
              		else {
  HXLINE( 232)			_hx_tmp = true;
              		}
  HXDLIN( 232)		if (_hx_tmp) {
  HXLINE( 233)			if (!(this->tooltipShown)) {
  HXLINE( 234)				this->tooltipShown = true;
  HXLINE( 235)				this->tooltipX = this->inputX;
  HXLINE( 236)				this->tooltipTime = ::kha::Scheduler_obj::time();
              			}
  HXLINE( 238)			Float _hx_tmp1 = ::kha::Scheduler_obj::time();
  HXDLIN( 238)			if (((_hx_tmp1 - this->tooltipTime) > ((Float)1.0))) {
  HXLINE( 239)				if ((this->tooltipText != HX_("",00,00,00,00))) {
  HXLINE( 239)					this->drawTooltip();
              				}
              				else {
  HXLINE( 239)					this->drawTooltipImage();
              				}
              			}
              		}
              		else {
  HXLINE( 242)			this->tooltipShown = false;
              		}
  HXLINE( 243)		if (last) {
  HXLINE( 243)			this->endInput();
              		}
  HXLINE( 244)		if (hx::IsNotNull( this->tabPressedHandle )) {
  HXLINE( 245)			this->tabPressedHandle = null();
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,end,(void))
  
  void Zui_obj::endInput(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_249_endInput)
  HXLINE( 250)		this->isKeyDown = false;
  HXLINE( 251)		this->inputStarted = false;
  HXLINE( 252)		this->inputStartedR = false;
  HXLINE( 253)		this->inputReleased = false;
  HXLINE( 254)		this->inputReleasedR = false;
  HXLINE( 255)		this->inputDX = ( (Float)(0) );
  HXLINE( 256)		this->inputDY = ( (Float)(0) );
  HXLINE( 257)		this->inputWheelDelta = 0;
  HXLINE( 258)		::zui::Zui_obj::textToPaste = HX_("",00,00,00,00);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,endInput,(void))
  
  void Zui_obj::beginLayout( ::kha::graphics2::Graphics g,int x,int y,int w){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_261_beginLayout)
  HXLINE( 262)		if (!(this->elementsBaked)) {
  HXLINE( 262)			this->bakeElements();
              		}
  HXLINE( 263)		this->currentWindow = null();
  HXLINE( 264)		this->g = g;
  HXLINE( 265)		this->_windowX = ( (Float)(0) );
  HXLINE( 266)		this->_windowY = ( (Float)(0) );
  HXLINE( 267)		this->_windowW = ( (Float)(w) );
  HXLINE( 268)		this->_x = ( (Float)(x) );
  HXLINE( 269)		this->_y = ( (Float)(y) );
  HXLINE( 270)		this->_w = w;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC4(Zui_obj,beginLayout,(void))
  
  void Zui_obj::endLayout(hx::Null< bool >  __o_last){
              		bool last = __o_last.Default(true);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_274_endLayout)
  HXDLIN( 274)		if (last) {
  HXDLIN( 274)			this->endInput();
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,endLayout,(void))
  
  bool Zui_obj::inputChanged(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_278_inputChanged)
  HXDLIN( 278)		bool _hx_tmp;
  HXDLIN( 278)		bool _hx_tmp1;
  HXDLIN( 278)		bool _hx_tmp2;
  HXDLIN( 278)		bool _hx_tmp3;
  HXDLIN( 278)		bool _hx_tmp4;
  HXDLIN( 278)		bool _hx_tmp5;
  HXDLIN( 278)		bool _hx_tmp6;
  HXDLIN( 278)		bool _hx_tmp7;
  HXDLIN( 278)		if ((this->inputDX == 0)) {
  HXDLIN( 278)			_hx_tmp7 = (this->inputDY != 0);
              		}
              		else {
  HXDLIN( 278)			_hx_tmp7 = true;
              		}
  HXDLIN( 278)		if (!(_hx_tmp7)) {
  HXDLIN( 278)			_hx_tmp6 = (this->inputWheelDelta != 0);
              		}
              		else {
  HXDLIN( 278)			_hx_tmp6 = true;
              		}
  HXDLIN( 278)		if (!(_hx_tmp6)) {
  HXDLIN( 278)			_hx_tmp5 = this->inputStarted;
              		}
              		else {
  HXDLIN( 278)			_hx_tmp5 = true;
              		}
  HXDLIN( 278)		if (!(_hx_tmp5)) {
  HXDLIN( 278)			_hx_tmp4 = this->inputStartedR;
              		}
              		else {
  HXDLIN( 278)			_hx_tmp4 = true;
              		}
  HXDLIN( 278)		if (!(_hx_tmp4)) {
  HXDLIN( 278)			_hx_tmp3 = this->inputReleased;
              		}
              		else {
  HXDLIN( 278)			_hx_tmp3 = true;
              		}
  HXDLIN( 278)		if (!(_hx_tmp3)) {
  HXDLIN( 278)			_hx_tmp2 = this->inputReleasedR;
              		}
              		else {
  HXDLIN( 278)			_hx_tmp2 = true;
              		}
  HXDLIN( 278)		if (!(_hx_tmp2)) {
  HXDLIN( 278)			_hx_tmp1 = this->inputDown;
              		}
              		else {
  HXDLIN( 278)			_hx_tmp1 = true;
              		}
  HXDLIN( 278)		if (!(_hx_tmp1)) {
  HXDLIN( 278)			_hx_tmp = this->inputDownR;
              		}
              		else {
  HXDLIN( 278)			_hx_tmp = true;
              		}
  HXDLIN( 278)		if (!(_hx_tmp)) {
  HXDLIN( 278)			return this->isKeyDown;
              		}
              		else {
  HXDLIN( 278)			return true;
              		}
  HXDLIN( 278)		return false;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,inputChanged,return )
  
  bool Zui_obj::windowDirty( ::zui::Handle handle,int x,int y,int w,int h){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_281_windowDirty)
  HXLINE( 282)		int wx = (x + handle->dragX);
  HXLINE( 283)		int wy = (y + handle->dragY);
  HXLINE( 284)		bool inputChanged;
  HXDLIN( 284)		if (this->getInputInRect(( (Float)(wx) ),( (Float)(wy) ),( (Float)(w) ),( (Float)(h) ),null())) {
  HXLINE( 284)			inputChanged = this->inputChanged();
              		}
              		else {
  HXLINE( 284)			inputChanged = false;
              		}
  HXLINE( 285)		bool _hx_tmp;
  HXDLIN( 285)		bool _hx_tmp1;
  HXDLIN( 285)		if (!(this->alwaysRedraw)) {
  HXLINE( 285)			_hx_tmp1 = this->isScrolling;
              		}
              		else {
  HXLINE( 285)			_hx_tmp1 = true;
              		}
  HXDLIN( 285)		if (!(_hx_tmp1)) {
  HXLINE( 285)			_hx_tmp = this->isTyping;
              		}
              		else {
  HXLINE( 285)			_hx_tmp = true;
              		}
  HXDLIN( 285)		if (!(_hx_tmp)) {
  HXLINE( 285)			return inputChanged;
              		}
              		else {
  HXLINE( 285)			return true;
              		}
  HXDLIN( 285)		return false;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC5(Zui_obj,windowDirty,return )
  
  bool Zui_obj::window( ::zui::Handle handle,int x,int y,int w,int h,hx::Null< bool >  __o_drag){
              		bool drag = __o_drag.Default(false);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_289_window)
  HXLINE( 290)		bool _hx_tmp;
  HXDLIN( 290)		bool _hx_tmp1;
  HXDLIN( 290)		if (hx::IsNotNull( handle->texture )) {
  HXLINE( 290)			_hx_tmp1 = (w != handle->texture->get_width());
              		}
              		else {
  HXLINE( 290)			_hx_tmp1 = true;
              		}
  HXDLIN( 290)		if (!(_hx_tmp1)) {
  HXLINE( 290)			_hx_tmp = (h != handle->texture->get_height());
              		}
              		else {
  HXLINE( 290)			_hx_tmp = true;
              		}
  HXDLIN( 290)		if (_hx_tmp) {
  HXLINE( 291)			this->resize(handle,w,h,this->ops->__Field(HX_("khaWindowId",2f,bc,2f,40),hx::paccDynamic));
              		}
  HXLINE( 294)		if (!(this->windowEnded)) {
  HXLINE( 294)			this->endWindow(null());
              		}
  HXLINE( 295)		this->windowEnded = false;
  HXLINE( 297)		this->g = handle->texture->get_g2();
  HXLINE( 298)		this->currentWindow = handle;
  HXLINE( 299)		this->_windowX = ( (Float)((x + handle->dragX)) );
  HXLINE( 300)		this->_windowY = ( (Float)((y + handle->dragY)) );
  HXLINE( 301)		this->_windowW = ( (Float)(w) );
  HXLINE( 302)		this->_windowH = ( (Float)(h) );
  HXLINE( 303)		this->windowHeader = ( (Float)(0) );
  HXLINE( 305)		if (this->windowDirty(handle,x,y,w,h)) {
  HXLINE( 306)			handle->redraws = 2;
              		}
  HXLINE( 309)		if ((handle->redraws == 0)) {
  HXLINE( 310)			return false;
              		}
  HXLINE( 313)		this->_x = ( (Float)(0) );
  HXLINE( 314)		this->_y = handle->scrollOffset;
  HXLINE( 315)		if ((handle->layout == 1)) {
  HXLINE( 315)			w = ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("ELEMENT_W",b4,b4,43,c3),hx::paccDynamic)) ) * this->SCALE));
              		}
  HXLINE( 316)		int _hx_tmp2;
  HXDLIN( 316)		if (!(handle->scrollEnabled)) {
  HXLINE( 316)			_hx_tmp2 = w;
              		}
              		else {
  HXLINE( 316)			_hx_tmp2 = (w - ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE)));
              		}
  HXDLIN( 316)		this->_w = _hx_tmp2;
  HXLINE( 317)		this->_h = h;
  HXLINE( 318)		this->tooltipText = HX_("",00,00,00,00);
  HXLINE( 319)		this->tooltipImg = null();
  HXLINE( 320)		this->tabNames = null();
  HXLINE( 322)		if (( (bool)(this->t->__Field(HX_("FILL_WINDOW_BG",f8,19,75,d3),hx::paccDynamic)) )) {
  HXLINE( 323)			this->g->begin(true,this->t->__Field(HX_("WINDOW_BG_COL",15,11,a8,46),hx::paccDynamic));
              		}
              		else {
  HXLINE( 326)			this->g->begin(true,0);
  HXLINE( 327)			this->g->set_color(( (int)(this->t->__Field(HX_("WINDOW_BG_COL",15,11,a8,46),hx::paccDynamic)) ));
  HXLINE( 328)			this->g->fillRect(this->_x,(this->_y - handle->scrollOffset),handle->lastMaxX,handle->lastMaxY);
              		}
  HXLINE( 331)		handle->dragEnabled = drag;
  HXLINE( 332)		if (drag) {
  HXLINE( 333)			bool _hx_tmp3;
  HXDLIN( 333)			if (this->inputStarted) {
  HXLINE( 333)				_hx_tmp3 = this->getInputInRect(this->_windowX,this->_windowY,this->_windowW,( (Float)(15) ),null());
              			}
              			else {
  HXLINE( 333)				_hx_tmp3 = false;
              			}
  HXDLIN( 333)			if (_hx_tmp3) {
  HXLINE( 334)				handle->dragging = true;
              			}
              			else {
  HXLINE( 336)				if (this->inputReleased) {
  HXLINE( 337)					handle->dragging = false;
              				}
              			}
  HXLINE( 339)			if (handle->dragging) {
  HXLINE( 340)				handle->redraws = 2;
  HXLINE( 341)				 ::zui::Handle handle1 = handle;
  HXDLIN( 341)				int handle2 = handle1->dragX;
  HXDLIN( 341)				handle1->dragX = (handle2 + ::Std_obj::_hx_int(this->inputDX));
  HXLINE( 342)				 ::zui::Handle handle3 = handle;
  HXDLIN( 342)				int handle4 = handle3->dragY;
  HXDLIN( 342)				handle3->dragY = (handle4 + ::Std_obj::_hx_int(this->inputDY));
              			}
  HXLINE( 344)			 ::zui::Zui _hx_tmp4 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN( 344)			_hx_tmp4->_y = (_hx_tmp4->_y + 15);
  HXLINE( 345)			 ::zui::Zui _hx_tmp5 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN( 345)			_hx_tmp5->windowHeader = (_hx_tmp5->windowHeader + 15);
              		}
  HXLINE( 348)		return true;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC6(Zui_obj,window,return )
  
  void Zui_obj::endWindow(hx::Null< bool >  __o_bindGlobalG){
              		bool bindGlobalG = __o_bindGlobalG.Default(true);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_351_endWindow)
  HXLINE( 352)		 ::zui::Handle handle = this->currentWindow;
  HXLINE( 353)		if (hx::IsNull( handle )) {
  HXLINE( 353)			return;
              		}
  HXLINE( 354)		bool _hx_tmp;
  HXDLIN( 354)		bool _hx_tmp1;
  HXDLIN( 354)		if ((handle->redraws <= 0)) {
  HXLINE( 354)			_hx_tmp1 = this->isScrolling;
              		}
              		else {
  HXLINE( 354)			_hx_tmp1 = true;
              		}
  HXDLIN( 354)		if (!(_hx_tmp1)) {
  HXLINE( 354)			_hx_tmp = this->isTyping;
              		}
              		else {
  HXLINE( 354)			_hx_tmp = true;
              		}
  HXDLIN( 354)		if (_hx_tmp) {
  HXLINE( 356)			if (hx::IsNotNull( this->tabNames )) {
  HXLINE( 356)				this->drawTabs();
              			}
  HXLINE( 358)			if (handle->dragEnabled) {
  HXLINE( 359)				this->g->set_color(( (int)(this->t->__Field(HX_("SEPARATOR_COL",e6,37,a4,36),hx::paccDynamic)) ));
  HXLINE( 360)				this->g->fillRect(( (Float)(0) ),( (Float)(0) ),this->_windowW,( (Float)(15) ));
              			}
  HXLINE( 363)			Float fullHeight = (this->_y - handle->scrollOffset);
  HXLINE( 364)			bool _hx_tmp2;
  HXDLIN( 364)			bool _hx_tmp3;
  HXDLIN( 364)			if (!((fullHeight < this->_windowH))) {
  HXLINE( 364)				_hx_tmp3 = (handle->layout == 1);
              			}
              			else {
  HXLINE( 364)				_hx_tmp3 = true;
              			}
  HXDLIN( 364)			if (!(_hx_tmp3)) {
  HXLINE( 364)				_hx_tmp2 = !(this->scrollEnabled);
              			}
              			else {
  HXLINE( 364)				_hx_tmp2 = true;
              			}
  HXDLIN( 364)			if (_hx_tmp2) {
  HXLINE( 365)				handle->scrollEnabled = false;
  HXLINE( 366)				handle->scrollOffset = ( (Float)(0) );
              			}
              			else {
  HXLINE( 369)				handle->scrollEnabled = true;
  HXLINE( 370)				if ((this->tabScroll < 0)) {
  HXLINE( 371)					handle->scrollOffset = this->tabScroll;
  HXLINE( 372)					this->tabScroll = ( (Float)(0) );
              				}
  HXLINE( 374)				Float amountToScroll = (fullHeight - this->_windowH);
  HXLINE( 375)				Float amountScrolled = -(handle->scrollOffset);
  HXLINE( 376)				Float ratio = (amountScrolled / amountToScroll);
  HXLINE( 377)				Float barH = (this->_windowH * ::Math_obj::abs((this->_windowH / fullHeight)));
  HXLINE( 378)				barH = ::Math_obj::max(barH,(( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE));
  HXLINE( 380)				Float totalScrollableArea = (this->_windowH - barH);
  HXLINE( 381)				Float e = (amountToScroll / totalScrollableArea);
  HXLINE( 382)				Float barY = (totalScrollableArea * ratio);
  HXLINE( 384)				bool _hx_tmp4;
  HXDLIN( 384)				if (this->inputStarted) {
  HXLINE( 385)					Float _hx_tmp5 = (this->_windowX + this->_windowW);
  HXDLIN( 385)					Float _hx_tmp6 = (_hx_tmp5 - ( (Float)(::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE))) ));
  HXDLIN( 385)					Float _hx_tmp7 = (barY + this->_windowY);
  HXLINE( 384)					_hx_tmp4 = this->getInputInRect(_hx_tmp6,_hx_tmp7,( (Float)(::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE))) ),barH,null());
              				}
              				else {
  HXLINE( 384)					_hx_tmp4 = false;
              				}
  HXDLIN( 384)				if (_hx_tmp4) {
  HXLINE( 386)					handle->scrolling = true;
  HXLINE( 387)					this->scrollingHandle = handle;
  HXLINE( 388)					this->isScrolling = true;
              				}
  HXLINE( 391)				if (handle->scrolling) {
  HXLINE( 392)					this->scroll((this->inputDY * e),fullHeight);
              				}
              				else {
  HXLINE( 394)					if ((this->inputWheelDelta != 0)) {
  HXLINE( 395)						this->scroll((( (Float)(this->inputWheelDelta) ) * (( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)),fullHeight);
              					}
              				}
  HXLINE( 399)				if ((handle->scrollOffset > 0)) {
  HXLINE( 400)					handle->scrollOffset = ( (Float)(0) );
              				}
              				else {
  HXLINE( 402)					if (((fullHeight + handle->scrollOffset) < this->_windowH)) {
  HXLINE( 403)						handle->scrollOffset = (this->_windowH - fullHeight);
              					}
              				}
  HXLINE( 406)				this->g->set_color(( (int)(this->t->__Field(HX_("WINDOW_BG_COL",15,11,a8,46),hx::paccDynamic)) ));
  HXLINE( 407)				 ::kha::graphics2::Graphics _hx_tmp8 = this->g;
  HXDLIN( 407)				Float _hx_tmp9 = this->_windowW;
  HXDLIN( 407)				Float _hx_tmp10 = (_hx_tmp9 - ( (Float)(::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE))) ));
  HXDLIN( 407)				Float _hx_tmp11 = this->_windowY;
  HXDLIN( 407)				int _hx_tmp12 = ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE));
  HXDLIN( 407)				_hx_tmp8->fillRect(_hx_tmp10,_hx_tmp11,( (Float)(_hx_tmp12) ),this->_windowH);
  HXLINE( 408)				this->g->set_color(( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) ));
  HXLINE( 409)				 ::kha::graphics2::Graphics _hx_tmp13 = this->g;
  HXDLIN( 409)				Float _hx_tmp14 = this->_windowW;
  HXDLIN( 409)				Float _hx_tmp15 = (_hx_tmp14 - ( (Float)(::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE))) ));
  HXDLIN( 409)				Float _hx_tmp16 = (_hx_tmp15 - this->scrollAlign);
  HXDLIN( 409)				_hx_tmp13->fillRect(_hx_tmp16,barY,( (Float)(::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE))) ),barH);
              			}
  HXLINE( 412)			handle->lastMaxX = this->_x;
  HXLINE( 413)			handle->lastMaxY = this->_y;
  HXLINE( 414)			if ((handle->layout == 0)) {
  HXLINE( 414)				 ::zui::Handle handle1 = handle;
  HXDLIN( 414)				handle1->lastMaxX = (handle1->lastMaxX + this->_windowW);
              			}
              			else {
  HXLINE( 415)				 ::zui::Handle handle2 = handle;
  HXDLIN( 415)				handle2->lastMaxY = (handle2->lastMaxY + this->_windowH);
              			}
  HXLINE( 416)			handle->redraws--;
  HXLINE( 418)			this->g->end();
              		}
  HXLINE( 421)		this->windowEnded = true;
  HXLINE( 424)		if (bindGlobalG) {
  HXLINE( 424)			this->globalG->begin(false,null());
              		}
  HXLINE( 425)		this->globalG->set_color(( (int)(this->t->__Field(HX_("WINDOW_TINT_COL",0b,c9,a0,ae),hx::paccDynamic)) ));
  HXLINE( 427)		 ::kha::graphics2::Graphics _hx_tmp17 = this->globalG;
  HXDLIN( 427)		 ::kha::Image handle3 = handle->texture;
  HXDLIN( 427)		Float _hx_tmp18 = this->_windowX;
  HXDLIN( 427)		Float _hx_tmp19 = this->_windowY;
  HXDLIN( 427)		int _hx_tmp20 = handle->texture->get_width();
  HXDLIN( 427)		Float _hx_tmp21 = (( (Float)(_hx_tmp20) ) / ( (Float)(this->ops->__Field(HX_("scaleTexture",71,67,2a,36),hx::paccDynamic)) ));
  HXDLIN( 427)		int _hx_tmp22 = handle->texture->get_height();
  HXDLIN( 427)		_hx_tmp17->drawScaledImage(handle3,( (float)(_hx_tmp18) ),( (float)(_hx_tmp19) ),( (float)(_hx_tmp21) ),( (float)((( (Float)(_hx_tmp22) ) / ( (Float)(this->ops->__Field(HX_("scaleTexture",71,67,2a,36),hx::paccDynamic)) ))) ));
  HXLINE( 428)		if (bindGlobalG) {
  HXLINE( 428)			this->globalG->end();
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,endWindow,(void))
  
  void Zui_obj::scroll(Float delta,Float fullHeight){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_432_scroll)
  HXDLIN( 432)		 ::zui::Handle _hx_tmp = this->currentWindow;
  HXDLIN( 432)		_hx_tmp->scrollOffset = (_hx_tmp->scrollOffset - delta);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Zui_obj,scroll,(void))
  
  bool Zui_obj::tab( ::zui::Handle handle,::String text){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_437_tab)
  HXLINE( 438)		if (hx::IsNull( this->tabNames )) {
  HXLINE( 439)			this->tabNames = ::Array_obj< ::String >::__new(0);
  HXLINE( 440)			this->tabHandle = handle;
  HXLINE( 441)			 ::zui::Zui _hx_tmp = hx::ObjectPtr<OBJ_>(this);
  HXDLIN( 441)			_hx_tmp->windowHeader = (_hx_tmp->windowHeader + (this->buttonOffsetY + (( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE)));
  HXLINE( 442)			this->restoreX = this->inputX;
  HXLINE( 443)			this->restoreY = this->inputY;
  HXLINE( 444)			if (this->getInputInRect(this->_windowX,this->_windowY,this->_windowW,this->windowHeader,null())) {
  HXLINE( 445)				this->inputX = (this->inputY = ( (Float)(-1) ));
              			}
              		}
  HXLINE( 448)		this->tabNames->push(text);
  HXLINE( 449)		bool selected = (handle->position == (this->tabNames->length - 1));
  HXLINE( 450)		if (selected) {
  HXLINE( 450)			this->endElement(null());
              		}
  HXLINE( 451)		return selected;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Zui_obj,tab,return )
  
  void Zui_obj::drawTabs(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_454_drawTabs)
  HXLINE( 455)		this->inputX = this->restoreX;
  HXLINE( 456)		this->inputY = this->restoreY;
  HXLINE( 457)		if (hx::IsNull( this->currentWindow )) {
  HXLINE( 457)			return;
              		}
  HXLINE( 458)		Float tabX = ((Float)0.0);
  HXLINE( 459)		int tabH = ::Std_obj::_hx_int(((( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE) * ((Float)1.1)));
  HXLINE( 460)		Float origy = this->_y;
  HXLINE( 461)		Float _hx_tmp;
  HXDLIN( 461)		if (this->currentWindow->dragEnabled) {
  HXLINE( 461)			_hx_tmp = ( (Float)(15) );
              		}
              		else {
  HXLINE( 461)			_hx_tmp = ( (Float)(0) );
              		}
  HXDLIN( 461)		this->_y = _hx_tmp;
  HXLINE( 462)		this->tabHandle->changed = false;
  HXLINE( 464)		this->g->set_color(( (int)(this->t->__Field(HX_("WINDOW_BG_COL",15,11,a8,46),hx::paccDynamic)) ));
  HXLINE( 465)		this->g->fillRect(( (Float)(0) ),this->_y,this->_windowW,(this->buttonOffsetY + tabH));
  HXLINE( 466)		this->g->set_color(( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) ));
  HXLINE( 467)		this->g->fillRect(this->buttonOffsetY,((this->_y + this->buttonOffsetY) + tabH),(this->_windowW - (this->buttonOffsetY * ( (Float)(2) ))),(( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE));
  HXLINE( 469)		{
  HXLINE( 469)			int _g = 0;
  HXDLIN( 469)			int _g1 = this->tabNames->length;
  HXDLIN( 469)			while((_g < _g1)){
  HXLINE( 469)				_g = (_g + 1);
  HXDLIN( 469)				int i = (_g - 1);
  HXLINE( 470)				this->_x = tabX;
  HXLINE( 471)				Float _hx_tmp1 = ( ( ::kha::Kravur)(this->ops->__Field(HX_("font",cf,5d,c0,43),hx::paccDynamic)) )->width(this->fontSize,this->tabNames->__get(i));
  HXDLIN( 471)				this->_w = ::Std_obj::_hx_int(((_hx_tmp1 + (this->buttonOffsetY * ( (Float)(2) ))) + (( (Float)(14) ) * this->SCALE)));
  HXLINE( 472)				bool released = this->getReleased(null());
  HXLINE( 473)				bool pushed = this->getPushed(null());
  HXLINE( 474)				bool hover = this->getHover(null());
  HXLINE( 475)				if (released) {
  HXLINE( 476)					 ::zui::Handle h = this->tabHandle->nest(this->tabHandle->position,null());
  HXLINE( 477)					h->scrollOffset = this->currentWindow->scrollOffset;
  HXLINE( 478)					h = this->tabHandle->nest(i,null());
  HXLINE( 479)					this->tabScroll = h->scrollOffset;
  HXLINE( 480)					this->tabHandle->position = i;
  HXLINE( 481)					this->currentWindow->redraws = 3;
  HXLINE( 482)					this->tabHandle->changed = true;
              				}
  HXLINE( 484)				bool selected = (this->tabHandle->position == i);
  HXLINE( 486)				int _hx_tmp2;
  HXDLIN( 486)				bool _hx_tmp3;
  HXDLIN( 486)				bool _hx_tmp4;
  HXDLIN( 486)				if (!(pushed)) {
  HXLINE( 486)					_hx_tmp4 = hover;
              				}
              				else {
  HXLINE( 486)					_hx_tmp4 = true;
              				}
  HXDLIN( 486)				if (!(_hx_tmp4)) {
  HXLINE( 486)					_hx_tmp3 = selected;
              				}
              				else {
  HXLINE( 486)					_hx_tmp3 = true;
              				}
  HXDLIN( 486)				if (_hx_tmp3) {
  HXLINE( 486)					_hx_tmp2 = ( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) );
              				}
              				else {
  HXLINE( 486)					_hx_tmp2 = ( (int)(this->t->__Field(HX_("SEPARATOR_COL",e6,37,a4,36),hx::paccDynamic)) );
              				}
  HXDLIN( 486)				this->g->set_color(_hx_tmp2);
  HXLINE( 488)				tabX = (tabX + (this->_w + 1));
  HXLINE( 489)				{
  HXLINE( 489)					 ::kha::graphics2::Graphics g = this->g;
  HXDLIN( 489)					Float x = (this->_x + this->buttonOffsetY);
  HXDLIN( 489)					Float y = (this->_y + this->buttonOffsetY);
  HXDLIN( 489)					Float w = ( (Float)(this->_w) );
  HXDLIN( 489)					Float strength = ((Float)0.0);
  HXDLIN( 489)					if ((strength == ((Float)0.0))) {
  HXLINE( 489)						strength = (( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE);
              					}
  HXDLIN( 489)					if (!(selected)) {
  HXLINE( 489)						g->fillRect(x,y,w,( (Float)(tabH) ));
              					}
              					else {
  HXLINE( 489)						g->drawRect(x,y,w,( (Float)(tabH) ),strength);
              					}
              				}
  HXLINE( 490)				int _hx_tmp5;
  HXDLIN( 490)				if (selected) {
  HXLINE( 490)					_hx_tmp5 = ( (int)(this->t->__Field(HX_("BUTTON_TEXT_COL",7b,eb,33,eb),hx::paccDynamic)) );
              				}
              				else {
  HXLINE( 490)					_hx_tmp5 = ( (int)(this->t->__Field(HX_("LABEL_COL",f5,20,15,76),hx::paccDynamic)) );
              				}
  HXDLIN( 490)				this->g->set_color(_hx_tmp5);
  HXLINE( 491)				this->drawString(this->g,this->tabNames->__get(i),this->t->__Field(HX_("TEXT_OFFSET",25,60,d0,e5),hx::paccDynamic),0,0);
  HXLINE( 493)				if (selected) {
  HXLINE( 494)					this->g->set_color(( (int)(this->t->__Field(HX_("WINDOW_BG_COL",15,11,a8,46),hx::paccDynamic)) ));
  HXLINE( 495)					this->g->fillRect(((this->_x + this->buttonOffsetY) + 1),((this->_y + this->buttonOffsetY) + tabH),( (Float)((this->_w - 1)) ),(( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE));
              				}
              			}
              		}
  HXLINE( 499)		this->_x = ( (Float)(0) );
  HXLINE( 500)		this->_y = origy;
  HXLINE( 501)		Float _hx_tmp6;
  HXDLIN( 501)		if (!(this->currentWindow->scrollEnabled)) {
  HXLINE( 501)			_hx_tmp6 = this->_windowW;
              		}
              		else {
  HXLINE( 501)			Float _hx_tmp7 = this->_windowW;
  HXDLIN( 501)			_hx_tmp6 = (_hx_tmp7 - ( (Float)(::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE))) ));
              		}
  HXDLIN( 501)		this->_w = ::Std_obj::_hx_int(_hx_tmp6);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,drawTabs,(void))
  
  bool Zui_obj::panel( ::zui::Handle handle,::String text,hx::Null< int >  __o_accent,hx::Null< bool >  __o_isTree){
              		int accent = __o_accent.Default(0);
              		bool isTree = __o_isTree.Default(false);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_504_panel)
  HXLINE( 505)		if (!(this->isVisible((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)))) {
  HXLINE( 505)			this->endElement(null());
  HXDLIN( 505)			return handle->selected;
              		}
  HXLINE( 506)		if (this->getReleased(null())) {
  HXLINE( 506)			handle->selected = !(handle->selected);
              		}
  HXLINE( 509)		if ((accent > 0)) {
  HXLINE( 510)			this->g->set_color(( (int)(this->t->__Field(HX_("PANEL_BG_COL",a1,a4,7d,a3),hx::paccDynamic)) ));
  HXLINE( 511)			this->g->fillRect(this->_x,this->_y,( (Float)(this->_w) ),(( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE));
              		}
  HXLINE( 514)		if (isTree) {
  HXLINE( 514)			this->drawTree(handle->selected);
              		}
              		else {
  HXLINE( 514)			this->drawArrow(handle->selected);
              		}
  HXLINE( 516)		this->g->set_color(( (int)(this->t->__Field(HX_("PANEL_TEXT_COL",49,18,e7,73),hx::paccDynamic)) ));
  HXLINE( 517)		this->g->set_opacity(((Float)1.0));
  HXLINE( 518)		this->drawString(this->g,text,this->titleOffsetX,0,null());
  HXLINE( 520)		this->endElement(null());
  HXLINE( 522)		return handle->selected;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC4(Zui_obj,panel,return )
  
  int Zui_obj::image( ::kha::Image image,hx::Null< int >  __o_tint, ::Dynamic h){
              		int tint = __o_tint.Default(-1);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_525_image)
  HXLINE( 526)		int iw = image->get_width();
  HXDLIN( 526)		Float iw1 = (( (Float)(iw) ) * this->SCALE);
  HXLINE( 527)		int ih = image->get_height();
  HXDLIN( 527)		Float ih1 = (( (Float)(ih) ) * this->SCALE);
  HXLINE( 528)		Float w = ::Math_obj::min(iw1,( (Float)(this->_w) ));
  HXLINE( 529)		Float x = this->_x;
  HXLINE( 530)		if (this->imageScrollAlign) {
  HXLINE( 531)			w = ::Math_obj::min(iw1,(( (Float)(this->_w) ) - (this->buttonOffsetY * ( (Float)(2) ))));
  HXLINE( 532)			x = (x + this->buttonOffsetY);
  HXLINE( 533)			bool scroll;
  HXDLIN( 533)			if (hx::IsNotNull( this->currentWindow )) {
  HXLINE( 533)				scroll = this->currentWindow->scrollEnabled;
              			}
              			else {
  HXLINE( 533)				scroll = false;
              			}
  HXLINE( 534)			if (!(scroll)) {
  HXLINE( 535)				Float r;
  HXDLIN( 535)				if ((this->curRatio == -1)) {
  HXLINE( 535)					r = ((Float)1.0);
              				}
              				else {
  HXLINE( 535)					r = this->ratios->__get(this->curRatio);
              				}
  HXLINE( 536)				w = (w - (( (Float)(::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE))) ) * r));
  HXLINE( 537)				x = (x + ((( (Float)(::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE))) ) * r) / ( (Float)(2) )));
              			}
              		}
  HXLINE( 542)		Float ratio;
  HXDLIN( 542)		if (hx::IsNull( h )) {
  HXLINE( 542)			ratio = (w / iw1);
              		}
              		else {
  HXLINE( 542)			ratio = (( (Float)(h) ) / ih1);
              		}
  HXLINE( 545)		if (hx::IsNull( h )) {
  HXLINE( 546)			h = (ih1 * ratio);
              		}
              		else {
  HXLINE( 547)			w = (iw1 * ratio);
              		}
  HXLINE( 549)		if (!(this->isVisible(( (Float)(h) )))) {
  HXLINE( 550)			this->endElement(h);
  HXLINE( 551)			return 0;
              		}
  HXLINE( 553)		bool started = this->getStarted(h);
  HXLINE( 554)		bool down = this->getPushed(h);
  HXLINE( 555)		bool released = this->getReleased(h);
  HXLINE( 556)		bool hover = this->getHover(h);
  HXLINE( 557)		this->g->set_color(tint);
  HXLINE( 558)		Float h_float = ( (Float)(h) );
  HXLINE( 559)		if (this->imageInvertY) {
  HXLINE( 559)			this->g->drawScaledImage(image,( (float)(x) ),( (float)((this->_y + h_float)) ),( (float)(w) ),( (float)(-(h_float)) ));
              		}
              		else {
  HXLINE( 559)			this->g->drawScaledImage(image,( (float)(x) ),( (float)(this->_y) ),( (float)(w) ),( (float)(h_float) ));
              		}
  HXLINE( 561)		this->endElement(h);
  HXLINE( 562)		if (started) {
  HXLINE( 562)			return 1;
              		}
              		else {
  HXLINE( 562)			if (released) {
  HXLINE( 562)				return 3;
              			}
              			else {
  HXLINE( 562)				if (down) {
  HXLINE( 562)					return 2;
              				}
              				else {
  HXLINE( 562)					return 0;
              				}
              			}
              		}
  HXDLIN( 562)		return null();
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC3(Zui_obj,image,return )
  
  void Zui_obj::text(::String text,hx::Null< int >  __o_align,hx::Null< int >  __o_bg){
              		int align = __o_align.Default(0);
              		int bg = __o_bg.Default(0);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_565_text)
  HXLINE( 566)		if (!(this->isVisible((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)))) {
  HXLINE( 566)			this->endElement(null());
  HXDLIN( 566)			return;
              		}
  HXLINE( 567)		this->getReleased(null());
  HXLINE( 568)		if ((bg != 0)) {
  HXLINE( 569)			this->g->set_color(bg);
  HXLINE( 570)			this->g->fillRect((this->_x + this->buttonOffsetY),(this->_y + this->buttonOffsetY),(( (Float)(this->_w) ) - (this->buttonOffsetY * ( (Float)(2) ))),(( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE));
              		}
  HXLINE( 572)		this->g->set_color(( (int)(this->t->__Field(HX_("TEXT_COL",4e,50,e5,c5),hx::paccDynamic)) ));
  HXLINE( 573)		this->drawString(this->g,text,this->t->__Field(HX_("TEXT_OFFSET",25,60,d0,e5),hx::paccDynamic),0,align);
  HXLINE( 575)		this->endElement(null());
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC3(Zui_obj,text,(void))
  
  void Zui_obj::startTextEdit( ::zui::Handle handle){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_578_startTextEdit)
  HXLINE( 579)		this->isTyping = true;
  HXLINE( 580)		this->submitTextHandle = this->textSelectedHandle;
  HXLINE( 581)		this->textToSubmit = this->textSelectedCurrentText;
  HXLINE( 582)		this->textSelectedHandle = handle;
  HXLINE( 583)		this->textSelectedCurrentText = handle->text;
  HXLINE( 584)		if (this->tabPressed) {
  HXLINE( 585)			this->tabPressed = false;
  HXLINE( 586)			this->isKeyDown = false;
              		}
  HXLINE( 588)		this->tabPressedHandle = handle;
  HXLINE( 589)		this->cursorX = handle->text.length;
  HXLINE( 590)		this->cursorY = 0;
  HXLINE( 591)		this->highlightAnchor = 0;
  HXLINE( 592)		if (hx::IsNotNull( ::kha::input::Keyboard_obj::get(null()) )) {
  HXLINE( 592)			::kha::input::Keyboard_obj::get(null())->show();
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,startTextEdit,(void))
  
  void Zui_obj::submitTextEdit(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_595_submitTextEdit)
  HXLINE( 596)		this->submitTextHandle->text = this->textToSubmit;
  HXLINE( 597)		this->submitTextHandle->changed = (this->changed = true);
  HXLINE( 598)		this->submitTextHandle = null();
  HXLINE( 599)		this->textToSubmit = HX_("",00,00,00,00);
  HXLINE( 600)		this->textSelectedCurrentText = HX_("",00,00,00,00);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,submitTextEdit,(void))
  
  void Zui_obj::updateTextEdit(hx::Null< int >  __o_align){
              		int align = __o_align.Default(0);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_603_updateTextEdit)
  HXLINE( 604)		::String text = this->textSelectedCurrentText;
  HXLINE( 605)		if (this->isKeyDown) {
  HXLINE( 606)			if (hx::IsEq( this->key,37 )) {
  HXLINE( 607)				if ((this->cursorX > 0)) {
  HXLINE( 607)					this->cursorX--;
              				}
              			}
              			else {
  HXLINE( 609)				if (hx::IsEq( this->key,39 )) {
  HXLINE( 610)					if ((this->cursorX < text.length)) {
  HXLINE( 610)						this->cursorX++;
              					}
              				}
              				else {
  HXLINE( 612)					if (hx::IsEq( this->key,8 )) {
  HXLINE( 613)						bool _hx_tmp;
  HXDLIN( 613)						if ((this->cursorX > 0)) {
  HXLINE( 613)							_hx_tmp = (this->highlightAnchor == this->cursorX);
              						}
              						else {
  HXLINE( 613)							_hx_tmp = false;
              						}
  HXDLIN( 613)						if (_hx_tmp) {
  HXLINE( 614)							::String text1 = text.substr(0,(this->cursorX - 1));
  HXDLIN( 614)							text = (text1 + text.substr(this->cursorX,text.length));
  HXLINE( 615)							this->cursorX--;
              						}
              						else {
  HXLINE( 617)							if ((this->highlightAnchor < this->cursorX)) {
  HXLINE( 618)								::String text2 = text.substr(0,this->highlightAnchor);
  HXDLIN( 618)								text = (text2 + text.substr(this->cursorX,text.length));
  HXLINE( 619)								this->cursorX = this->highlightAnchor;
              							}
              							else {
  HXLINE( 622)								::String text3 = text.substr(0,this->cursorX);
  HXDLIN( 622)								text = (text3 + text.substr(this->highlightAnchor,text.length));
              							}
              						}
              					}
              					else {
  HXLINE( 625)						if (hx::IsEq( this->key,46 )) {
  HXLINE( 626)							if ((this->highlightAnchor == this->cursorX)) {
  HXLINE( 627)								::String text4 = text.substr(0,this->cursorX);
  HXDLIN( 627)								text = (text4 + text.substr((this->cursorX + 1),null()));
              							}
              							else {
  HXLINE( 629)								if ((this->highlightAnchor < this->cursorX)) {
  HXLINE( 630)									::String text5 = text.substr(0,this->highlightAnchor);
  HXDLIN( 630)									text = (text5 + text.substr(this->cursorX,text.length));
  HXLINE( 631)									this->cursorX = this->highlightAnchor;
              								}
              								else {
  HXLINE( 634)									::String text6 = text.substr(0,this->cursorX);
  HXDLIN( 634)									text = (text6 + text.substr(this->highlightAnchor,text.length));
              								}
              							}
              						}
              						else {
  HXLINE( 637)							if (hx::IsEq( this->key,13 )) {
  HXLINE( 638)								this->deselectText();
              							}
              							else {
  HXLINE( 640)								if (hx::IsEq( this->key,27 )) {
  HXLINE( 641)									this->textSelectedCurrentText = this->textSelectedHandle->text;
  HXLINE( 642)									this->deselectText();
              								}
              								else {
  HXLINE( 644)									if (hx::IsEq( this->key,9 )) {
  HXLINE( 645)										this->tabPressed = true;
  HXLINE( 646)										this->deselectText();
  HXLINE( 647)										this->key = null();
              									}
              									else {
  HXLINE( 649)										if (hx::IsEq( this->key,36 )) {
  HXLINE( 650)											this->cursorX = 0;
              										}
              										else {
  HXLINE( 652)											if (hx::IsEq( this->key,35 )) {
  HXLINE( 653)												this->cursorX = text.length;
              											}
              											else {
  HXLINE( 655)												bool _hx_tmp1;
  HXDLIN( 655)												bool _hx_tmp2;
  HXDLIN( 655)												bool _hx_tmp3;
  HXDLIN( 655)												if (hx::IsNotEq( this->key,16 )) {
  HXLINE( 655)													_hx_tmp3 = hx::IsNotEq( this->key,20 );
              												}
              												else {
  HXLINE( 655)													_hx_tmp3 = false;
              												}
  HXDLIN( 655)												if (_hx_tmp3) {
  HXLINE( 655)													_hx_tmp2 = hx::IsNotEq( this->key,17 );
              												}
              												else {
  HXLINE( 655)													_hx_tmp2 = false;
              												}
  HXDLIN( 655)												if (_hx_tmp2) {
  HXLINE( 655)													_hx_tmp1 = hx::IsNotEq( this->key,18 );
              												}
              												else {
  HXLINE( 655)													_hx_tmp1 = false;
              												}
  HXDLIN( 655)												if (_hx_tmp1) {
  HXLINE( 659)													bool _hx_tmp4;
  HXDLIN( 659)													bool _hx_tmp5;
  HXDLIN( 659)													bool _hx_tmp6;
  HXDLIN( 659)													if (hx::IsNotNull( this->_hx_char )) {
  HXLINE( 659)														_hx_tmp6 = (this->_hx_char != HX_("",00,00,00,00));
              													}
              													else {
  HXLINE( 659)														_hx_tmp6 = false;
              													}
  HXDLIN( 659)													if (_hx_tmp6) {
  HXLINE( 659)														_hx_tmp5 = hx::IsGreaterEq( this->_hx_char.charCodeAt(0),32 );
              													}
              													else {
  HXLINE( 659)														_hx_tmp5 = false;
              													}
  HXDLIN( 659)													if (_hx_tmp5) {
  HXLINE( 659)														_hx_tmp4 = hx::IsNotEq( this->_hx_char.charCodeAt(0),127 );
              													}
              													else {
  HXLINE( 659)														_hx_tmp4 = false;
              													}
  HXDLIN( 659)													if (_hx_tmp4) {
  HXLINE( 660)														::String text7 = text.substr(0,this->highlightAnchor);
  HXDLIN( 660)														::String text8 = (text7 + this->_hx_char);
  HXDLIN( 660)														text = (text8 + text.substr(this->cursorX,null()));
  HXLINE( 661)														this->cursorX++;
              													}
              												}
              											}
              										}
              									}
              								}
              							}
              						}
              					}
              				}
              			}
  HXLINE( 664)			bool selecting;
  HXDLIN( 664)			if (this->isShiftDown) {
  HXLINE( 664)				bool selecting1;
  HXDLIN( 664)				if (hx::IsNotEq( this->key,37 )) {
  HXLINE( 664)					selecting1 = hx::IsEq( this->key,39 );
              				}
              				else {
  HXLINE( 664)					selecting1 = true;
              				}
  HXDLIN( 664)				if (!(selecting1)) {
  HXLINE( 664)					selecting = hx::IsEq( this->key,16 );
              				}
              				else {
  HXLINE( 664)					selecting = true;
              				}
              			}
              			else {
  HXLINE( 664)				selecting = false;
              			}
  HXLINE( 665)			bool _hx_tmp7;
  HXDLIN( 665)			if (!(selecting)) {
  HXLINE( 665)				_hx_tmp7 = !(this->isCtrlDown);
              			}
              			else {
  HXLINE( 665)				_hx_tmp7 = false;
              			}
  HXDLIN( 665)			if (_hx_tmp7) {
  HXLINE( 665)				this->highlightAnchor = this->cursorX;
              			}
              		}
  HXLINE( 668)		if ((::zui::Zui_obj::textToPaste != HX_("",00,00,00,00))) {
  HXLINE( 669)			::String text9 = text.substr(0,this->highlightAnchor);
  HXDLIN( 669)			::String text10 = (text9 + ::zui::Zui_obj::textToPaste);
  HXDLIN( 669)			text = (text10 + text.substr(this->cursorX,null()));
  HXLINE( 670)			 ::zui::Zui _hx_tmp8 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN( 670)			_hx_tmp8->cursorX = (_hx_tmp8->cursorX + ::zui::Zui_obj::textToPaste.length);
  HXLINE( 671)			this->highlightAnchor = this->cursorX;
  HXLINE( 672)			::zui::Zui_obj::textToPaste = HX_("",00,00,00,00);
              		}
  HXLINE( 674)		if ((this->highlightAnchor == this->cursorX)) {
  HXLINE( 674)			::zui::Zui_obj::textToCopy = text;
              		}
              		else {
  HXLINE( 675)			if ((this->highlightAnchor < this->cursorX)) {
  HXLINE( 675)				::zui::Zui_obj::textToCopy = text.substring(this->highlightAnchor,this->cursorX);
              			}
              			else {
  HXLINE( 676)				::zui::Zui_obj::textToCopy = text.substring(this->cursorX,this->highlightAnchor);
              			}
              		}
  HXLINE( 677)		if (::zui::Zui_obj::isCut) {
  HXLINE( 678)			if ((this->highlightAnchor == this->cursorX)) {
  HXLINE( 678)				text = HX_("",00,00,00,00);
              			}
              			else {
  HXLINE( 679)				if ((this->highlightAnchor < this->cursorX)) {
  HXLINE( 680)					::String text11 = text.substr(0,this->highlightAnchor);
  HXDLIN( 680)					text = (text11 + text.substr(this->cursorX,text.length));
  HXLINE( 681)					this->cursorX = this->highlightAnchor;
              				}
              				else {
  HXLINE( 684)					::String text12 = text.substr(0,this->cursorX);
  HXDLIN( 684)					text = (text12 + text.substr(this->highlightAnchor,text.length));
              				}
              			}
              		}
  HXLINE( 689)		int off = ( (int)(this->t->__Field(HX_("TEXT_OFFSET",25,60,d0,e5),hx::paccDynamic)) );
  HXLINE( 690)		Float lineHeight = (( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE);
  HXLINE( 691)		Float cursorHeight = (lineHeight - (this->buttonOffsetY * ((Float)3.0)));
  HXLINE( 693)		if ((this->highlightAnchor != this->cursorX)) {
  HXLINE( 694)			int istart = this->cursorX;
  HXLINE( 695)			int iend = this->highlightAnchor;
  HXLINE( 696)			if ((this->highlightAnchor < this->cursorX)) {
  HXLINE( 697)				istart = this->highlightAnchor;
  HXLINE( 698)				iend = this->cursorX;
              			}
  HXLINE( 700)			::String hlstr = text.substr(istart,(iend - istart));
  HXLINE( 701)			 ::kha::Kravur hlstrw = this->g->get_font();
  HXDLIN( 701)			Float hlstrw1 = hlstrw->width(this->g->get_fontSize(),hlstr);
  HXLINE( 702)			 ::kha::Kravur startoff = this->g->get_font();
  HXDLIN( 702)			int startoff1 = this->g->get_fontSize();
  HXDLIN( 702)			Float startoff2 = startoff->width(startoff1,text.substr(0,istart));
  HXLINE( 703)			Float hlStart;
  HXDLIN( 703)			if ((align == 0)) {
  HXLINE( 703)				hlStart = ((this->_x + startoff2) + off);
              			}
              			else {
  HXLINE( 703)				hlStart = (((this->_x + this->_w) - hlstrw1) - ( (Float)(off) ));
              			}
  HXLINE( 704)			if ((align == 2)) {
  HXLINE( 705)				 ::kha::Kravur hlStart1 = this->g->get_font();
  HXDLIN( 705)				int hlStart2 = this->g->get_fontSize();
  HXDLIN( 705)				hlStart = (hlStart - hlStart1->width(hlStart2,text.substr(iend,text.length)));
              			}
  HXLINE( 707)			this->g->set_color(( (int)(this->t->__Field(HX_("ACCENT_SELECT_COL",32,b6,1e,48),hx::paccDynamic)) ));
  HXLINE( 708)			this->g->fillRect(hlStart,((this->_y + (( (Float)(this->cursorY) ) * lineHeight)) + (this->buttonOffsetY * ((Float)1.5))),(hlstrw1 * this->SCALE),cursorHeight);
              		}
  HXLINE( 712)		Float time = ::kha::Scheduler_obj::time();
  HXLINE( 713)		if ((hx::Mod(time,((Float)1.)) < ((Float)0.5))) {
  HXLINE( 714)			::String str;
  HXDLIN( 714)			if ((align == 0)) {
  HXLINE( 714)				str = text.substr(0,this->cursorX);
              			}
              			else {
  HXLINE( 714)				str = text.substring(this->cursorX,text.length);
              			}
  HXLINE( 715)			 ::kha::Kravur strw = this->g->get_font();
  HXDLIN( 715)			Float strw1 = strw->width(this->g->get_fontSize(),str);
  HXLINE( 716)			Float cursorX;
  HXDLIN( 716)			if ((align == 0)) {
  HXLINE( 716)				cursorX = ((this->_x + strw1) + off);
              			}
              			else {
  HXLINE( 716)				cursorX = (((this->_x + this->_w) - strw1) - ( (Float)(off) ));
              			}
  HXLINE( 717)			this->g->set_color(( (int)(this->t->__Field(HX_("TEXT_COL",4e,50,e5,c5),hx::paccDynamic)) ));
  HXLINE( 718)			this->g->fillRect(cursorX,((this->_y + (( (Float)(this->cursorY) ) * lineHeight)) + (this->buttonOffsetY * ((Float)1.5))),this->SCALE,cursorHeight);
              		}
  HXLINE( 721)		this->textSelectedCurrentText = text;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,updateTextEdit,(void))
  
  ::String Zui_obj::textInput( ::zui::Handle handle,::String __o_label,hx::Null< int >  __o_align){
              		::String label = __o_label;
              		if (hx::IsNull(__o_label)) label = HX_("",00,00,00,00);
              		int align = __o_align.Default(0);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_724_textInput)
  HXLINE( 725)		if (!(this->isVisible((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)))) {
  HXLINE( 725)			this->endElement(null());
  HXDLIN( 725)			return handle->text;
              		}
  HXLINE( 727)		bool hover = this->getHover(null());
  HXLINE( 728)		int _hx_tmp;
  HXDLIN( 728)		if (hover) {
  HXLINE( 728)			_hx_tmp = ( (int)(this->t->__Field(HX_("ACCENT_HOVER_COL",48,76,6b,fd),hx::paccDynamic)) );
              		}
              		else {
  HXLINE( 728)			_hx_tmp = ( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) );
              		}
  HXDLIN( 728)		this->g->set_color(_hx_tmp);
  HXLINE( 729)		{
  HXLINE( 729)			 ::kha::graphics2::Graphics g = this->g;
  HXDLIN( 729)			Float x = (this->_x + this->buttonOffsetY);
  HXDLIN( 729)			Float y = (this->_y + this->buttonOffsetY);
  HXDLIN( 729)			Float w = (( (Float)(this->_w) ) - (this->buttonOffsetY * ( (Float)(2) )));
  HXDLIN( 729)			Float h = (( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE);
  HXDLIN( 729)			Float strength = ((Float)0.0);
  HXDLIN( 729)			if ((strength == ((Float)0.0))) {
  HXLINE( 729)				strength = (( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE);
              			}
  HXDLIN( 729)			if (( (bool)(this->t->__Field(HX_("FILL_ACCENT_BG",de,70,14,63),hx::paccDynamic)) )) {
  HXLINE( 729)				g->fillRect(x,y,w,h);
              			}
              			else {
  HXLINE( 729)				g->drawRect(x,y,w,h,strength);
              			}
              		}
  HXLINE( 731)		bool startEdit;
  HXDLIN( 731)		if (!(this->getReleased(null()))) {
  HXLINE( 731)			startEdit = this->tabPressed;
              		}
              		else {
  HXLINE( 731)			startEdit = true;
              		}
  HXLINE( 732)		bool _hx_tmp1;
  HXDLIN( 732)		if (hx::IsNotEq( this->textSelectedHandle,handle )) {
  HXLINE( 732)			_hx_tmp1 = startEdit;
              		}
              		else {
  HXLINE( 732)			_hx_tmp1 = false;
              		}
  HXDLIN( 732)		if (_hx_tmp1) {
  HXLINE( 732)			this->startTextEdit(handle);
              		}
  HXLINE( 733)		if (hx::IsEq( this->textSelectedHandle,handle )) {
  HXLINE( 733)			this->updateTextEdit(align);
              		}
  HXLINE( 734)		if (hx::IsEq( this->submitTextHandle,handle )) {
  HXLINE( 734)			this->submitTextEdit();
              		}
              		else {
  HXLINE( 735)			handle->changed = false;
              		}
  HXLINE( 737)		if ((label != HX_("",00,00,00,00))) {
  HXLINE( 738)			this->g->set_color(( (int)(this->t->__Field(HX_("LABEL_COL",f5,20,15,76),hx::paccDynamic)) ));
  HXLINE( 739)			int labelAlign;
  HXDLIN( 739)			if ((align == 2)) {
  HXLINE( 739)				labelAlign = 0;
              			}
              			else {
  HXLINE( 739)				labelAlign = 2;
              			}
  HXLINE( 740)			int xOffset;
  HXDLIN( 740)			if ((labelAlign == 0)) {
  HXLINE( 740)				xOffset = 7;
              			}
              			else {
  HXLINE( 740)				xOffset = 0;
              			}
  HXLINE( 741)			this->drawString(this->g,label,xOffset,0,labelAlign);
              		}
  HXLINE( 744)		this->g->set_color(( (int)(this->t->__Field(HX_("TEXT_COL",4e,50,e5,c5),hx::paccDynamic)) ));
  HXLINE( 745)		if (hx::IsNotEq( this->textSelectedHandle,handle )) {
  HXLINE( 745)			this->drawString(this->g,handle->text,null(),0,align);
              		}
              		else {
  HXLINE( 745)			this->drawString(this->g,this->textSelectedCurrentText,null(),0,align);
              		}
  HXLINE( 747)		this->endElement(null());
  HXLINE( 749)		return handle->text;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC3(Zui_obj,textInput,return )
  
  void Zui_obj::deselectText(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_752_deselectText)
  HXLINE( 753)		this->submitTextHandle = this->textSelectedHandle;
  HXLINE( 754)		this->textToSubmit = this->textSelectedCurrentText;
  HXLINE( 755)		this->textSelectedHandle = null();
  HXLINE( 756)		this->isTyping = false;
  HXLINE( 757)		if (hx::IsNotNull( this->currentWindow )) {
  HXLINE( 757)			this->currentWindow->redraws = 2;
              		}
  HXLINE( 758)		if (hx::IsNotNull( ::kha::input::Keyboard_obj::get(null()) )) {
  HXLINE( 758)			::kha::input::Keyboard_obj::get(null())->hide();
              		}
  HXLINE( 759)		this->highlightAnchor = this->cursorX;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,deselectText,(void))
  
  bool Zui_obj::button(::String text,hx::Null< int >  __o_align,::String __o_label){
              		int align = __o_align.Default(1);
              		::String label = __o_label;
              		if (hx::IsNull(__o_label)) label = HX_("",00,00,00,00);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_762_button)
  HXLINE( 763)		if (!(this->isVisible((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)))) {
  HXLINE( 763)			this->endElement(null());
  HXDLIN( 763)			return false;
              		}
  HXLINE( 764)		bool released = this->getReleased(null());
  HXLINE( 765)		bool pushed = this->getPushed(null());
  HXLINE( 766)		bool hover = this->getHover(null());
  HXLINE( 767)		if (released) {
  HXLINE( 767)			this->changed = true;
              		}
  HXLINE( 769)		int _hx_tmp;
  HXDLIN( 769)		if (pushed) {
  HXLINE( 769)			_hx_tmp = ( (int)(this->t->__Field(HX_("BUTTON_PRESSED_COL",96,4f,5e,ed),hx::paccDynamic)) );
              		}
              		else {
  HXLINE( 770)			if (hover) {
  HXLINE( 769)				_hx_tmp = ( (int)(this->t->__Field(HX_("BUTTON_HOVER_COL",f0,a8,9f,7e),hx::paccDynamic)) );
              			}
              			else {
  HXLINE( 769)				_hx_tmp = ( (int)(this->t->__Field(HX_("BUTTON_COL",13,50,64,c5),hx::paccDynamic)) );
              			}
              		}
  HXDLIN( 769)		this->g->set_color(_hx_tmp);
  HXLINE( 773)		{
  HXLINE( 773)			 ::kha::graphics2::Graphics g = this->g;
  HXDLIN( 773)			Float x = (this->_x + this->buttonOffsetY);
  HXDLIN( 773)			Float y = (this->_y + this->buttonOffsetY);
  HXDLIN( 773)			Float w = (( (Float)(this->_w) ) - (this->buttonOffsetY * ( (Float)(2) )));
  HXDLIN( 773)			Float h = (( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE);
  HXDLIN( 773)			Float strength = ((Float)0.0);
  HXDLIN( 773)			if ((strength == ((Float)0.0))) {
  HXLINE( 773)				strength = (( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE);
              			}
  HXDLIN( 773)			if (( (bool)(this->t->__Field(HX_("FILL_BUTTON_BG",36,79,48,8d),hx::paccDynamic)) )) {
  HXLINE( 773)				g->fillRect(x,y,w,h);
              			}
              			else {
  HXLINE( 773)				g->drawRect(x,y,w,h,strength);
              			}
              		}
  HXLINE( 775)		this->g->set_color(( (int)(this->t->__Field(HX_("BUTTON_TEXT_COL",7b,eb,33,eb),hx::paccDynamic)) ));
  HXLINE( 776)		this->drawString(this->g,text,this->t->__Field(HX_("TEXT_OFFSET",25,60,d0,e5),hx::paccDynamic),0,align);
  HXLINE( 777)		if ((label != HX_("",00,00,00,00))) {
  HXLINE( 777)			int _hx_tmp1;
  HXDLIN( 777)			if ((align == 2)) {
  HXLINE( 777)				_hx_tmp1 = 0;
              			}
              			else {
  HXLINE( 777)				_hx_tmp1 = 2;
              			}
  HXDLIN( 777)			this->drawString(this->g,label,this->t->__Field(HX_("TEXT_OFFSET",25,60,d0,e5),hx::paccDynamic),0,_hx_tmp1);
              		}
  HXLINE( 779)		this->endElement(null());
  HXLINE( 781)		return released;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC3(Zui_obj,button,return )
  
  bool Zui_obj::check( ::zui::Handle handle,::String text){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_784_check)
  HXLINE( 785)		if (!(this->isVisible((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)))) {
  HXLINE( 785)			this->endElement(null());
  HXDLIN( 785)			return handle->selected;
              		}
  HXLINE( 786)		if (this->getReleased(null())) {
  HXLINE( 787)			handle->selected = !(handle->selected);
  HXLINE( 788)			handle->changed = (this->changed = true);
              		}
              		else {
  HXLINE( 790)			handle->changed = false;
              		}
  HXLINE( 792)		bool hover = this->getHover(null());
  HXLINE( 793)		this->drawCheck(handle->selected,hover);
  HXLINE( 795)		this->g->set_color(( (int)(this->t->__Field(HX_("TEXT_COL",4e,50,e5,c5),hx::paccDynamic)) ));
  HXLINE( 796)		this->drawString(this->g,text,this->titleOffsetX,0,0);
  HXLINE( 798)		this->endElement(null());
  HXLINE( 800)		return handle->selected;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Zui_obj,check,return )
  
  bool Zui_obj::radio( ::zui::Handle handle,int position,::String text){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_803_radio)
  HXLINE( 804)		if (!(this->isVisible((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)))) {
  HXLINE( 804)			this->endElement(null());
  HXDLIN( 804)			return (handle->position == position);
              		}
  HXLINE( 805)		if (this->getReleased(null())) {
  HXLINE( 806)			handle->position = position;
  HXLINE( 807)			handle->changed = (this->changed = true);
              		}
              		else {
  HXLINE( 809)			handle->changed = false;
              		}
  HXLINE( 811)		bool hover = this->getHover(null());
  HXLINE( 812)		this->drawRadio((handle->position == position),hover);
  HXLINE( 814)		this->g->set_color(( (int)(this->t->__Field(HX_("TEXT_COL",4e,50,e5,c5),hx::paccDynamic)) ));
  HXLINE( 815)		this->drawString(this->g,text,this->titleOffsetX,0,null());
  HXLINE( 817)		this->endElement(null());
  HXLINE( 819)		return (handle->position == position);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC3(Zui_obj,radio,return )
  
  int Zui_obj::inlineRadio( ::zui::Handle handle,::Array< ::String > texts){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_822_inlineRadio)
  HXLINE( 823)		if (!(this->isVisible((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)))) {
  HXLINE( 823)			this->endElement(null());
  HXDLIN( 823)			return handle->position;
              		}
  HXLINE( 824)		if (this->getReleased(null())) {
  HXLINE( 825)			if ((++handle->position >= texts->length)) {
  HXLINE( 825)				handle->position = 0;
              			}
  HXLINE( 826)			handle->changed = (this->changed = true);
              		}
              		else {
  HXLINE( 828)			handle->changed = false;
              		}
  HXLINE( 830)		bool hover = this->getHover(null());
  HXLINE( 831)		this->drawInlineRadio(texts->__get(handle->position),hover);
  HXLINE( 833)		this->endElement(null());
  HXLINE( 834)		return handle->position;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Zui_obj,inlineRadio,return )
  
  int Zui_obj::combo( ::zui::Handle handle,::Array< ::String > texts,::String __o_label,hx::Null< bool >  __o_showLabel,hx::Null< int >  __o_align){
              		::String label = __o_label;
              		if (hx::IsNull(__o_label)) label = HX_("",00,00,00,00);
              		bool showLabel = __o_showLabel.Default(false);
              		int align = __o_align.Default(0);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_837_combo)
  HXLINE( 838)		if (!(this->isVisible((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)))) {
  HXLINE( 838)			this->endElement(null());
  HXDLIN( 838)			return handle->position;
              		}
  HXLINE( 839)		if (this->getReleased(null())) {
  HXLINE( 840)			if (hx::IsNull( this->comboSelectedHandle )) {
  HXLINE( 841)				this->inputEnabled = false;
  HXLINE( 842)				this->comboSelectedHandle = handle;
  HXLINE( 843)				this->comboSelectedWindow = this->currentWindow;
  HXLINE( 844)				this->comboSelectedAlign = align;
  HXLINE( 845)				this->comboSelectedTexts = texts;
  HXLINE( 846)				this->comboSelectedLabel = label;
  HXLINE( 847)				this->comboSelectedX = ::Std_obj::_hx_int((this->_x + this->_windowX));
  HXLINE( 848)				this->comboSelectedY = ::Std_obj::_hx_int((((this->_y + this->_windowY) + (( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)) + (( (Float)(this->t->__Field(HX_("ELEMENT_OFFSET",16,9e,c2,08),hx::paccDynamic)) ) * this->SCALE)));
  HXLINE( 849)				this->comboSelectedW = ::Std_obj::_hx_int(( (Float)(this->_w) ));
              			}
              		}
  HXLINE( 852)		if (hx::IsEq( handle,this->submitComboHandle )) {
  HXLINE( 853)			handle->position = this->comboToSubmit;
  HXLINE( 854)			this->submitComboHandle = null();
  HXLINE( 855)			handle->changed = (this->changed = true);
              		}
              		else {
  HXLINE( 857)			handle->changed = false;
              		}
  HXLINE( 859)		bool hover = this->getHover(null());
  HXLINE( 860)		if (hover) {
  HXLINE( 861)			this->g->set_color(( (int)(this->t->__Field(HX_("ACCENT_HOVER_COL",48,76,6b,fd),hx::paccDynamic)) ));
  HXLINE( 862)			{
  HXLINE( 862)				 ::kha::graphics2::Graphics g = this->g;
  HXDLIN( 862)				Float x = (this->_x + this->buttonOffsetY);
  HXDLIN( 862)				Float y = (this->_y + this->buttonOffsetY);
  HXDLIN( 862)				Float w = (( (Float)(this->_w) ) - (this->buttonOffsetY * ( (Float)(2) )));
  HXDLIN( 862)				Float h = (( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE);
  HXDLIN( 862)				Float strength = ((Float)0.0);
  HXDLIN( 862)				if ((strength == ((Float)0.0))) {
  HXLINE( 862)					strength = (( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE);
              				}
  HXDLIN( 862)				if (( (bool)(this->t->__Field(HX_("FILL_ACCENT_BG",de,70,14,63),hx::paccDynamic)) )) {
  HXLINE( 862)					g->fillRect(x,y,w,h);
              				}
              				else {
  HXLINE( 862)					g->drawRect(x,y,w,h,strength);
              				}
              			}
              		}
              		else {
  HXLINE( 865)			this->g->set_color(( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) ));
  HXLINE( 866)			{
  HXLINE( 866)				 ::kha::graphics2::Graphics g1 = this->g;
  HXDLIN( 866)				Float x1 = (this->_x + this->buttonOffsetY);
  HXDLIN( 866)				Float y1 = (this->_y + this->buttonOffsetY);
  HXDLIN( 866)				Float w1 = (( (Float)(this->_w) ) - (this->buttonOffsetY * ( (Float)(2) )));
  HXDLIN( 866)				Float h1 = (( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE);
  HXDLIN( 866)				Float strength1 = ((Float)0.0);
  HXDLIN( 866)				if ((strength1 == ((Float)0.0))) {
  HXLINE( 866)					strength1 = (( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE);
              				}
  HXDLIN( 866)				if (( (bool)(this->t->__Field(HX_("FILL_ACCENT_BG",de,70,14,63),hx::paccDynamic)) )) {
  HXLINE( 866)					g1->fillRect(x1,y1,w1,h1);
              				}
              				else {
  HXLINE( 866)					g1->drawRect(x1,y1,w1,h1,strength1);
              				}
              			}
              		}
  HXLINE( 869)		Float x2 = (((this->_x + this->_w) - this->arrowOffsetX) - ( (Float)(8) ));
  HXLINE( 870)		Float y2 = ((this->_y + this->arrowOffsetY) + 3);
  HXLINE( 871)		this->g->fillTriangle(x2,y2,(x2 + (( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE)),y2,(x2 + ((( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE) / ( (Float)(2) ))),(y2 + ((( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE) / ( (Float)(2) ))));
  HXLINE( 873)		this->g->set_color(( (int)(this->t->__Field(HX_("TEXT_COL",4e,50,e5,c5),hx::paccDynamic)) ));
  HXLINE( 875)		bool _hx_tmp;
  HXDLIN( 875)		if (showLabel) {
  HXLINE( 875)			_hx_tmp = (label != HX_("",00,00,00,00));
              		}
              		else {
  HXLINE( 875)			_hx_tmp = false;
              		}
  HXDLIN( 875)		if (_hx_tmp) {
  HXLINE( 876)			if ((align == 0)) {
  HXLINE( 876)				 ::zui::Zui _hx_tmp1 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN( 876)				_hx_tmp1->_x = (_hx_tmp1->_x - ( (Float)(15) ));
              			}
  HXLINE( 877)			int _hx_tmp2;
  HXDLIN( 877)			if ((align == 0)) {
  HXLINE( 877)				_hx_tmp2 = 2;
              			}
              			else {
  HXLINE( 877)				_hx_tmp2 = 0;
              			}
  HXDLIN( 877)			this->drawString(this->g,label,null(),0,_hx_tmp2);
  HXLINE( 878)			if ((align == 0)) {
  HXLINE( 878)				 ::zui::Zui _hx_tmp3 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN( 878)				_hx_tmp3->_x = (_hx_tmp3->_x + 15);
              			}
              		}
  HXLINE( 881)		if ((align == 2)) {
  HXLINE( 881)			 ::zui::Zui _hx_tmp4 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN( 881)			_hx_tmp4->_x = (_hx_tmp4->_x - ( (Float)(15) ));
              		}
  HXLINE( 882)		this->drawString(this->g,texts->__get(handle->position),null(),0,align);
  HXLINE( 883)		if ((align == 2)) {
  HXLINE( 883)			 ::zui::Zui _hx_tmp5 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN( 883)			_hx_tmp5->_x = (_hx_tmp5->_x + 15);
              		}
  HXLINE( 885)		this->endElement(null());
  HXLINE( 886)		return handle->position;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC5(Zui_obj,combo,return )
  
  Float Zui_obj::slider( ::zui::Handle handle,::String text,hx::Null< Float >  __o_from,hx::Null< Float >  __o_to,hx::Null< bool >  __o_filled,hx::Null< int >  __o_precision,hx::Null< bool >  __o_displayValue,hx::Null< int >  __o_align,hx::Null< bool >  __o_textEdit){
              		Float from = __o_from.Default(((Float)0.0));
              		Float to = __o_to.Default(((Float)1.0));
              		bool filled = __o_filled.Default(false);
              		int precision = __o_precision.Default(100);
              		bool displayValue = __o_displayValue.Default(true);
              		int align = __o_align.Default(2);
              		bool textEdit = __o_textEdit.Default(true);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_889_slider)
  HXLINE( 890)		if (!(this->isVisible((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)))) {
  HXLINE( 890)			this->endElement(null());
  HXDLIN( 890)			return handle->value;
              		}
  HXLINE( 892)		if (this->getStarted(null())) {
  HXLINE( 893)			handle->scrolling = true;
  HXLINE( 894)			this->scrollingHandle = handle;
  HXLINE( 895)			this->isScrolling = true;
              		}
  HXLINE( 898)		handle->changed = false;
  HXLINE( 899)		if (handle->scrolling) {
  HXLINE( 900)			Float range = (to - from);
  HXLINE( 901)			Float sliderX = ((this->_x + this->_windowX) + this->buttonOffsetY);
  HXLINE( 902)			Float sliderW = (( (Float)(this->_w) ) - (this->buttonOffsetY * ( (Float)(2) )));
  HXLINE( 903)			Float step = (range / sliderW);
  HXLINE( 904)			Float value = (from + ((this->inputX - sliderX) * step));
  HXLINE( 905)			handle->value = (( (Float)(::Math_obj::round((value * ( (Float)(precision) )))) ) / ( (Float)(precision) ));
  HXLINE( 906)			if ((handle->value < from)) {
  HXLINE( 906)				handle->value = from;
              			}
              			else {
  HXLINE( 907)				if ((handle->value > to)) {
  HXLINE( 907)					handle->value = to;
              				}
              			}
  HXLINE( 908)			handle->changed = (this->changed = true);
              		}
  HXLINE( 911)		bool hover = this->getHover(null());
  HXLINE( 912)		this->drawSlider(handle->value,from,to,filled,hover);
  HXLINE( 915)		bool startEdit;
  HXDLIN( 915)		bool startEdit1;
  HXDLIN( 915)		if (!(this->getReleased(null()))) {
  HXLINE( 915)			startEdit1 = this->tabPressed;
              		}
              		else {
  HXLINE( 915)			startEdit1 = true;
              		}
  HXDLIN( 915)		if (startEdit1) {
  HXLINE( 915)			startEdit = textEdit;
              		}
              		else {
  HXLINE( 915)			startEdit = false;
              		}
  HXLINE( 916)		if (startEdit) {
  HXLINE( 917)			handle->text = (handle->value + HX_("",00,00,00,00));
  HXLINE( 918)			this->startTextEdit(handle);
              		}
  HXLINE( 920)		int lalign;
  HXDLIN( 920)		if ((align == 0)) {
  HXLINE( 920)			lalign = 2;
              		}
              		else {
  HXLINE( 920)			lalign = 0;
              		}
  HXLINE( 921)		if (hx::IsEq( this->textSelectedHandle,handle )) {
  HXLINE( 922)			this->updateTextEdit(lalign);
              		}
  HXLINE( 924)		if (hx::IsEq( this->submitTextHandle,handle )) {
  HXLINE( 925)			this->submitTextEdit();
  HXLINE( 926)			handle->value = ::Std_obj::parseFloat(handle->text);
              		}
  HXLINE( 929)		this->g->set_color(( (int)(this->t->__Field(HX_("LABEL_COL",f5,20,15,76),hx::paccDynamic)) ));
  HXLINE( 930)		this->drawString(this->g,text,null(),0,align);
  HXLINE( 932)		if (displayValue) {
  HXLINE( 933)			this->g->set_color(( (int)(this->t->__Field(HX_("TEXT_COL",4e,50,e5,c5),hx::paccDynamic)) ));
  HXLINE( 934)			if (hx::IsNotEq( this->textSelectedHandle,handle )) {
  HXLINE( 935)				this->drawString(this->g,(handle->value + HX_("",00,00,00,00)),null(),0,lalign);
              			}
              			else {
  HXLINE( 936)				this->drawString(this->g,this->textSelectedCurrentText,null(),0,lalign);
              			}
              		}
  HXLINE( 939)		this->endElement(null());
  HXLINE( 940)		return handle->value;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC9(Zui_obj,slider,return )
  
  void Zui_obj::separator(hx::Null< int >  __o_h,hx::Null< bool >  __o_fill){
              		int h = __o_h.Default(4);
              		bool fill = __o_fill.Default(true);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_943_separator)
  HXLINE( 944)		if (!(this->isVisible((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE)))) {
  HXLINE( 944)			 ::zui::Zui _hx_tmp = hx::ObjectPtr<OBJ_>(this);
  HXDLIN( 944)			_hx_tmp->_y = (_hx_tmp->_y + (( (Float)(h) ) * this->SCALE));
  HXDLIN( 944)			return;
              		}
  HXLINE( 945)		if (fill) {
  HXLINE( 946)			this->g->set_color(( (int)(this->t->__Field(HX_("SEPARATOR_COL",e6,37,a4,36),hx::paccDynamic)) ));
  HXLINE( 947)			this->g->fillRect(this->_x,this->_y,( (Float)(this->_w) ),(( (Float)(h) ) * this->SCALE));
              		}
  HXLINE( 949)		 ::zui::Zui _hx_tmp1 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN( 949)		_hx_tmp1->_y = (_hx_tmp1->_y + (( (Float)(h) ) * this->SCALE));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Zui_obj,separator,(void))
  
  void Zui_obj::tooltip(::String text){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_952_tooltip)
  HXLINE( 953)		this->tooltipText = text;
  HXLINE( 954)		this->tooltipY = (this->_y + this->_windowY);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,tooltip,(void))
  
  void Zui_obj::tooltipImage( ::kha::Image image){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_957_tooltipImage)
  HXLINE( 958)		this->tooltipImg = image;
  HXLINE( 959)		this->tooltipInvertY = this->imageInvertY;
  HXLINE( 960)		this->tooltipY = (this->_y + this->_windowY);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,tooltipImage,(void))
  
  void Zui_obj::drawArrow(bool selected){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_963_drawArrow)
  HXLINE( 964)		Float x = (this->_x + this->arrowOffsetX);
  HXLINE( 965)		Float y = (this->_y + this->arrowOffsetY);
  HXLINE( 966)		this->g->set_color(( (int)(this->t->__Field(HX_("ARROW_COL",4a,9b,60,20),hx::paccDynamic)) ));
  HXLINE( 967)		if (selected) {
  HXLINE( 968)			this->g->fillTriangle(x,y,(x + (( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE)),y,(x + ((( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE) / ( (Float)(2) ))),(y + (( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE)));
              		}
              		else {
  HXLINE( 973)			this->g->fillTriangle(x,y,x,(y + (( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE)),(x + (( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE)),(y + ((( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE) / ( (Float)(2) ))));
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,drawArrow,(void))
  
  void Zui_obj::drawTree(bool selected){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_979_drawTree)
  HXLINE( 980)		int SIGN_W = 7;
  HXLINE( 981)		Float x = ((this->_x + this->arrowOffsetX) + 1);
  HXLINE( 982)		Float y = ((this->_y + this->arrowOffsetY) + 1);
  HXLINE( 983)		this->g->set_color(( (int)(this->t->__Field(HX_("ARROW_COL",4a,9b,60,20),hx::paccDynamic)) ));
  HXLINE( 984)		if (selected) {
  HXLINE( 985)			this->g->fillRect(x,((y + (( (Float)(SIGN_W) ) / ( (Float)(2) ))) - ( (Float)(1) )),( (Float)(SIGN_W) ),(( (Float)(SIGN_W) ) / ( (Float)(8) )));
              		}
              		else {
  HXLINE( 988)			this->g->fillRect(x,((y + (( (Float)(SIGN_W) ) / ( (Float)(2) ))) - ( (Float)(1) )),( (Float)(SIGN_W) ),(( (Float)(SIGN_W) ) / ( (Float)(8) )));
  HXLINE( 989)			this->g->fillRect(((x + (( (Float)(SIGN_W) ) / ( (Float)(2) ))) - ( (Float)(1) )),y,(( (Float)(SIGN_W) ) / ( (Float)(8) )),( (Float)(SIGN_W) ));
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,drawTree,(void))
  
  void Zui_obj::drawCheck(bool selected,bool hover){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_993_drawCheck)
  HXLINE( 994)		Float x = (this->_x + this->checkOffsetX);
  HXLINE( 995)		Float y = (this->_y + this->checkOffsetY);
  HXLINE( 997)		int _hx_tmp;
  HXDLIN( 997)		if (hover) {
  HXLINE( 997)			_hx_tmp = ( (int)(this->t->__Field(HX_("ACCENT_HOVER_COL",48,76,6b,fd),hx::paccDynamic)) );
              		}
              		else {
  HXLINE( 997)			_hx_tmp = ( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) );
              		}
  HXDLIN( 997)		this->g->set_color(_hx_tmp);
  HXLINE( 998)		{
  HXLINE( 998)			 ::kha::graphics2::Graphics g = this->g;
  HXDLIN( 998)			Float w = (( (Float)(this->t->__Field(HX_("CHECK_SIZE",f8,52,03,db),hx::paccDynamic)) ) * this->SCALE);
  HXDLIN( 998)			Float h = (( (Float)(this->t->__Field(HX_("CHECK_SIZE",f8,52,03,db),hx::paccDynamic)) ) * this->SCALE);
  HXDLIN( 998)			Float strength = ((Float)0.0);
  HXDLIN( 998)			if ((strength == ((Float)0.0))) {
  HXLINE( 998)				strength = (( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE);
              			}
  HXDLIN( 998)			if (( (bool)(this->t->__Field(HX_("FILL_ACCENT_BG",de,70,14,63),hx::paccDynamic)) )) {
  HXLINE( 998)				g->fillRect(x,y,w,h);
              			}
              			else {
  HXLINE( 998)				g->drawRect(x,y,w,h,strength);
              			}
              		}
  HXLINE(1000)		if (selected) {
  HXLINE(1001)			this->g->set_color(-1);
  HXLINE(1002)			this->g->drawImage(this->checkSelectImage,( (float)((x + this->checkSelectOffsetX)) ),( (float)((y + this->checkSelectOffsetY)) ));
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Zui_obj,drawCheck,(void))
  
  void Zui_obj::drawRadio(bool selected,bool hover){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1006_drawRadio)
  HXLINE(1007)		Float x = (this->_x + this->radioOffsetX);
  HXLINE(1008)		Float y = (this->_y + this->radioOffsetY);
  HXLINE(1009)		int _hx_tmp;
  HXDLIN(1009)		if (hover) {
  HXLINE(1009)			_hx_tmp = ( (int)(this->t->__Field(HX_("ACCENT_HOVER_COL",48,76,6b,fd),hx::paccDynamic)) );
              		}
              		else {
  HXLINE(1009)			_hx_tmp = ( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) );
              		}
  HXDLIN(1009)		this->g->set_color(_hx_tmp);
  HXLINE(1010)		{
  HXLINE(1010)			 ::kha::graphics2::Graphics g = this->g;
  HXDLIN(1010)			Float w = (( (Float)(this->t->__Field(HX_("CHECK_SIZE",f8,52,03,db),hx::paccDynamic)) ) * this->SCALE);
  HXDLIN(1010)			Float h = (( (Float)(this->t->__Field(HX_("CHECK_SIZE",f8,52,03,db),hx::paccDynamic)) ) * this->SCALE);
  HXDLIN(1010)			Float strength = ((Float)0.0);
  HXDLIN(1010)			if ((strength == ((Float)0.0))) {
  HXLINE(1010)				strength = (( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE);
              			}
  HXDLIN(1010)			if (( (bool)(this->t->__Field(HX_("FILL_ACCENT_BG",de,70,14,63),hx::paccDynamic)) )) {
  HXLINE(1010)				g->fillRect(x,y,w,h);
              			}
              			else {
  HXLINE(1010)				g->drawRect(x,y,w,h,strength);
              			}
              		}
  HXLINE(1012)		if (selected) {
  HXLINE(1013)			this->g->set_color(( (int)(this->t->__Field(HX_("ACCENT_SELECT_COL",32,b6,1e,48),hx::paccDynamic)) ));
  HXLINE(1014)			this->g->fillRect((x + this->radioSelectOffsetX),(y + this->radioSelectOffsetY),(( (Float)(this->t->__Field(HX_("CHECK_SELECT_SIZE",cd,c6,a9,44),hx::paccDynamic)) ) * this->SCALE),(( (Float)(this->t->__Field(HX_("CHECK_SELECT_SIZE",cd,c6,a9,44),hx::paccDynamic)) ) * this->SCALE));
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Zui_obj,drawRadio,(void))
  
  void Zui_obj::drawInlineRadio(::String text,bool hover){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1018_drawInlineRadio)
  HXLINE(1019)		if (hover) {
  HXLINE(1020)			this->g->set_color(( (int)(this->t->__Field(HX_("ACCENT_HOVER_COL",48,76,6b,fd),hx::paccDynamic)) ));
  HXLINE(1021)			this->g->fillRect((this->_x + this->buttonOffsetY),(this->_y + this->buttonOffsetY),(( (Float)(this->_w) ) - (this->buttonOffsetY * ( (Float)(2) ))),(( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE));
              		}
              		else {
  HXLINE(1024)			this->g->set_color(( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) ));
  HXLINE(1025)			this->g->drawRect((this->_x + this->buttonOffsetY),(this->_y + this->buttonOffsetY),(( (Float)(this->_w) ) - (this->buttonOffsetY * ( (Float)(2) ))),(( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE),null());
              		}
  HXLINE(1027)		this->g->set_color(( (int)(this->t->__Field(HX_("TEXT_COL",4e,50,e5,c5),hx::paccDynamic)) ));
  HXLINE(1028)		this->drawString(this->g,text,this->titleOffsetX,0,1);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Zui_obj,drawInlineRadio,(void))
  
  void Zui_obj::drawSlider(Float value,Float from,Float to,bool filled,bool hover){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1031_drawSlider)
  HXLINE(1032)		Float x = (this->_x + this->buttonOffsetY);
  HXLINE(1033)		Float y = (this->_y + this->buttonOffsetY);
  HXLINE(1034)		Float w = (( (Float)(this->_w) ) - (this->buttonOffsetY * ( (Float)(2) )));
  HXLINE(1036)		int _hx_tmp;
  HXDLIN(1036)		if (hover) {
  HXLINE(1036)			_hx_tmp = ( (int)(this->t->__Field(HX_("ACCENT_HOVER_COL",48,76,6b,fd),hx::paccDynamic)) );
              		}
              		else {
  HXLINE(1036)			_hx_tmp = ( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) );
              		}
  HXDLIN(1036)		this->g->set_color(_hx_tmp);
  HXLINE(1037)		{
  HXLINE(1037)			 ::kha::graphics2::Graphics g = this->g;
  HXDLIN(1037)			Float h = (( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE);
  HXDLIN(1037)			Float strength = ((Float)0.0);
  HXDLIN(1037)			if ((strength == ((Float)0.0))) {
  HXLINE(1037)				strength = (( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE);
              			}
  HXDLIN(1037)			if (( (bool)(this->t->__Field(HX_("FILL_ACCENT_BG",de,70,14,63),hx::paccDynamic)) )) {
  HXLINE(1037)				g->fillRect(x,y,w,h);
              			}
              			else {
  HXLINE(1037)				g->drawRect(x,y,w,h,strength);
              			}
              		}
  HXLINE(1039)		int _hx_tmp1;
  HXDLIN(1039)		if (hover) {
  HXLINE(1039)			_hx_tmp1 = ( (int)(this->t->__Field(HX_("ACCENT_HOVER_COL",48,76,6b,fd),hx::paccDynamic)) );
              		}
              		else {
  HXLINE(1039)			_hx_tmp1 = ( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) );
              		}
  HXDLIN(1039)		this->g->set_color(_hx_tmp1);
  HXLINE(1040)		Float offset = ((value - from) / (to - from));
  HXLINE(1041)		Float barW = (( (Float)(8) ) * this->SCALE);
  HXLINE(1042)		Float sliderX;
  HXDLIN(1042)		if (filled) {
  HXLINE(1042)			sliderX = x;
              		}
              		else {
  HXLINE(1042)			sliderX = (x + ((w - barW) * offset));
              		}
  HXLINE(1043)		Float sliderW;
  HXDLIN(1043)		if (filled) {
  HXLINE(1043)			sliderW = (w * offset);
              		}
              		else {
  HXLINE(1043)			sliderW = barW;
              		}
  HXLINE(1044)		sliderW = ::Math_obj::max(::Math_obj::min(sliderW,w),( (Float)(0) ));
  HXLINE(1045)		this->g->fillRect(sliderX,y,sliderW,(( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC5(Zui_obj,drawSlider,(void))
  
  void Zui_obj::drawCombo(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1049_drawCombo)
  HXLINE(1050)		 ::kha::graphics2::Graphics _g = this->g;
  HXLINE(1051)		this->globalG->set_color(( (int)(this->t->__Field(HX_("SEPARATOR_COL",e6,37,a4,36),hx::paccDynamic)) ));
  HXLINE(1052)		int elementSize = ::Std_obj::_hx_int(((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE) + (( (Float)(this->t->__Field(HX_("ELEMENT_OFFSET",16,9e,c2,08),hx::paccDynamic)) ) * this->SCALE)));
  HXLINE(1053)		int comboH = ((this->comboSelectedTexts->length + 1) * elementSize);
  HXLINE(1054)		this->globalG->begin(false,null());
  HXLINE(1055)		int outOfScreen = (this->comboSelectedY + comboH);
  HXDLIN(1055)		bool outOfScreen1 = (outOfScreen > ::kha::System_obj::windowHeight(null()));
  HXLINE(1056)		int comboY;
  HXDLIN(1056)		if (outOfScreen1) {
  HXLINE(1056)			comboY = ((this->comboSelectedY - comboH) - elementSize);
              		}
              		else {
  HXLINE(1056)			comboY = this->comboSelectedY;
              		}
  HXLINE(1057)		this->globalG->fillRect(( (Float)(this->comboSelectedX) ),( (Float)(comboY) ),( (Float)(this->comboSelectedW) ),( (Float)(comboH) ));
  HXLINE(1058)		this->beginLayout(this->globalG,this->comboSelectedX,comboY,this->comboSelectedW);
  HXLINE(1060)		this->inputEnabled = true;
  HXLINE(1061)		{
  HXLINE(1061)			int _g1 = 0;
  HXDLIN(1061)			int _g11 = this->comboSelectedTexts->length;
  HXDLIN(1061)			while((_g1 < _g11)){
  HXLINE(1061)				_g1 = (_g1 + 1);
  HXDLIN(1061)				int i = (_g1 - 1);
  HXLINE(1062)				if (this->button(this->comboSelectedTexts->__get(i),this->comboSelectedAlign,null())) {
  HXLINE(1063)					this->comboToSubmit = i;
  HXLINE(1064)					this->submitComboHandle = this->comboSelectedHandle;
  HXLINE(1065)					if (hx::IsNotNull( this->comboSelectedWindow )) {
  HXLINE(1065)						this->comboSelectedWindow->redraws = 2;
              					}
  HXLINE(1066)					goto _hx_goto_43;
              				}
              			}
              			_hx_goto_43:;
              		}
  HXLINE(1069)		this->text(this->comboSelectedLabel,null(),null());
  HXLINE(1070)		bool _hx_tmp;
  HXDLIN(1070)		if (this->inputReleased) {
  HXLINE(1070)			_hx_tmp = !(::zui::Zui_obj::comboFirst);
              		}
              		else {
  HXLINE(1070)			_hx_tmp = false;
              		}
  HXDLIN(1070)		if (_hx_tmp) {
  HXLINE(1071)			this->comboSelectedHandle = null();
  HXLINE(1072)			::zui::Zui_obj::comboFirst = true;
              		}
              		else {
  HXLINE(1074)			::zui::Zui_obj::comboFirst = false;
              		}
  HXLINE(1075)		this->inputEnabled = hx::IsNull( this->comboSelectedHandle );
  HXLINE(1076)		this->endLayout(false);
  HXLINE(1077)		this->globalG->end();
  HXLINE(1078)		this->g = _g;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,drawCombo,(void))
  
  void Zui_obj::drawTooltip(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1081_drawTooltip)
  HXLINE(1082)		this->globalG->set_color(( (int)(this->t->__Field(HX_("TEXT_COL",4e,50,e5,c5),hx::paccDynamic)) ));
  HXLINE(1083)		::Array< ::String > lines = this->tooltipText.split(HX_("\n",0a,00,00,00));
  HXLINE(1084)		Float tooltipW = ((Float)0.0);
  HXLINE(1085)		{
  HXLINE(1085)			int _g = 0;
  HXDLIN(1085)			while((_g < lines->length)){
  HXLINE(1085)				::String line = lines->__get(_g);
  HXDLIN(1085)				_g = (_g + 1);
  HXLINE(1086)				Float lineTooltipW = ( ( ::kha::Kravur)(this->ops->__Field(HX_("font",cf,5d,c0,43),hx::paccDynamic)) )->width(this->fontSize,line);
  HXLINE(1087)				if ((lineTooltipW > tooltipW)) {
  HXLINE(1087)					tooltipW = lineTooltipW;
              				}
              			}
              		}
  HXLINE(1089)		Float _hx_tmp = this->tooltipX;
  HXDLIN(1089)		this->tooltipX = ::Math_obj::min(_hx_tmp,((( (Float)(::kha::System_obj::windowWidth(null())) ) - tooltipW) - ( (Float)(20) )));
  HXLINE(1090)		this->globalG->begin(false,null());
  HXLINE(1091)		this->globalG->fillRect(this->tooltipX,this->tooltipY,(tooltipW + 20),(((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE) * ( (Float)(lines->length) )) * ((Float)0.6)));
  HXLINE(1092)		this->globalG->set_font(( ( ::kha::Kravur)(this->ops->__Field(HX_("font",cf,5d,c0,43),hx::paccDynamic)) ));
  HXLINE(1093)		this->globalG->set_fontSize(this->fontSize);
  HXLINE(1094)		this->globalG->set_color(( (int)(this->t->__Field(HX_("ACCENT_COL",6b,0b,11,02),hx::paccDynamic)) ));
  HXLINE(1095)		{
  HXLINE(1095)			int _g1 = 0;
  HXDLIN(1095)			int _g2 = lines->length;
  HXDLIN(1095)			while((_g1 < _g2)){
  HXLINE(1095)				_g1 = (_g1 + 1);
  HXDLIN(1095)				int i = (_g1 - 1);
  HXLINE(1096)				this->globalG->drawString(lines->__get(i),(this->tooltipX + 5),(this->tooltipY + (i * this->fontSize)));
              			}
              		}
  HXLINE(1098)		this->globalG->end();
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,drawTooltip,(void))
  
  void Zui_obj::drawTooltipImage(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1101_drawTooltipImage)
  HXLINE(1102)		Float _hx_tmp = this->tooltipX;
  HXDLIN(1102)		int _hx_tmp1 = ::kha::System_obj::windowWidth(null());
  HXDLIN(1102)		this->tooltipX = ::Math_obj::min(_hx_tmp,( (Float)(((_hx_tmp1 - this->tooltipImg->get_width()) - 20)) ));
  HXLINE(1103)		this->globalG->set_color(-16777216);
  HXLINE(1104)		this->globalG->begin(false,null());
  HXLINE(1105)		 ::kha::graphics2::Graphics _hx_tmp2 = this->globalG;
  HXDLIN(1105)		Float _hx_tmp3 = this->tooltipX;
  HXDLIN(1105)		Float _hx_tmp4 = this->tooltipY;
  HXDLIN(1105)		int _hx_tmp5 = this->tooltipImg->get_width();
  HXDLIN(1105)		_hx_tmp2->fillRect(_hx_tmp3,_hx_tmp4,( (Float)(_hx_tmp5) ),( (Float)(this->tooltipImg->get_height()) ));
  HXLINE(1106)		this->globalG->set_color(-1);
  HXLINE(1107)		if (this->tooltipInvertY) {
  HXLINE(1108)			 ::kha::graphics2::Graphics _hx_tmp6 = this->globalG;
  HXDLIN(1108)			 ::kha::Image _hx_tmp7 = this->tooltipImg;
  HXDLIN(1108)			Float _hx_tmp8 = this->tooltipX;
  HXDLIN(1108)			Float _hx_tmp9 = this->tooltipY;
  HXDLIN(1108)			Float _hx_tmp10 = (_hx_tmp9 + this->tooltipImg->get_height());
  HXDLIN(1108)			int _hx_tmp11 = this->tooltipImg->get_width();
  HXDLIN(1108)			_hx_tmp6->drawScaledImage(_hx_tmp7,( (float)(_hx_tmp8) ),( (float)(_hx_tmp10) ),( (float)(_hx_tmp11) ),( (float)(-(this->tooltipImg->get_height())) ));
              		}
              		else {
  HXLINE(1109)			this->globalG->drawImage(this->tooltipImg,( (float)(this->tooltipX) ),( (float)(this->tooltipY) ));
              		}
  HXLINE(1110)		this->globalG->end();
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,drawTooltipImage,(void))
  
  void Zui_obj::drawString( ::kha::graphics2::Graphics g,::String text, ::Dynamic xOffset,hx::Null< Float >  __o_yOffset,hx::Null< int >  __o_align){
              		Float yOffset = __o_yOffset.Default(0);
              		int align = __o_align.Default(0);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1114_drawString)
  HXLINE(1115)		int maxChars = this->_w;
  HXDLIN(1115)		int maxChars1 = ::Std_obj::_hx_int((( (Float)(maxChars) ) / ( (Float)(::Std_obj::_hx_int((( (Float)(this->fontSize) ) / ( (Float)(2) )))) )));
  HXLINE(1116)		if ((text.length > maxChars1)) {
  HXLINE(1116)			text = (text.substring(0,maxChars1) + HX_("..",40,28,00,00));
              		}
  HXLINE(1118)		if (hx::IsNull( xOffset )) {
  HXLINE(1118)			xOffset = this->t->__Field(HX_("TEXT_OFFSET",25,60,d0,e5),hx::paccDynamic);
              		}
  HXLINE(1119)		xOffset = (xOffset * this->SCALE);
  HXLINE(1120)		g->set_font(( ( ::kha::Kravur)(this->ops->__Field(HX_("font",cf,5d,c0,43),hx::paccDynamic)) ));
  HXLINE(1121)		g->set_fontSize(this->fontSize);
  HXLINE(1122)		if ((align == 1)) {
  HXLINE(1122)			Float xOffset1 = (( (Float)(this->_w) ) / ( (Float)(2) ));
  HXDLIN(1122)			xOffset = (xOffset1 - (( ( ::kha::Kravur)(this->ops->__Field(HX_("font",cf,5d,c0,43),hx::paccDynamic)) )->width(this->fontSize,text) / ( (Float)(2) )));
              		}
              		else {
  HXLINE(1123)			if ((align == 2)) {
  HXLINE(1123)				int xOffset2 = this->_w;
  HXDLIN(1123)				Float xOffset3 = (( (Float)(xOffset2) ) - ( ( ::kha::Kravur)(this->ops->__Field(HX_("font",cf,5d,c0,43),hx::paccDynamic)) )->width(this->fontSize,text));
  HXDLIN(1123)				xOffset = (xOffset3 - ( (Float)(this->t->__Field(HX_("TEXT_OFFSET",25,60,d0,e5),hx::paccDynamic)) ));
              			}
              		}
  HXLINE(1125)		g->drawString(text,(this->_x + xOffset),((this->_y + this->fontOffsetY) + yOffset));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC5(Zui_obj,drawString,(void))
  
  void Zui_obj::endElement( ::Dynamic elementSize){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1128_endElement)
  HXLINE(1129)		if (hx::IsNull( this->currentWindow )) {
  HXLINE(1129)			 ::zui::Zui _hx_tmp = hx::ObjectPtr<OBJ_>(this);
  HXDLIN(1129)			_hx_tmp->_y = (_hx_tmp->_y + ((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE) + (( (Float)(this->t->__Field(HX_("ELEMENT_OFFSET",16,9e,c2,08),hx::paccDynamic)) ) * this->SCALE)));
  HXDLIN(1129)			return;
              		}
  HXLINE(1130)		if ((this->currentWindow->layout == 0)) {
  HXLINE(1131)			bool _hx_tmp1;
  HXDLIN(1131)			if ((this->curRatio != -1)) {
  HXLINE(1131)				if (hx::IsNotNull( this->ratios )) {
  HXLINE(1131)					_hx_tmp1 = (this->curRatio == (this->ratios->length - 1));
              				}
              				else {
  HXLINE(1131)					_hx_tmp1 = false;
              				}
              			}
              			else {
  HXLINE(1131)				_hx_tmp1 = true;
              			}
  HXDLIN(1131)			if (_hx_tmp1) {
  HXLINE(1132)				if (hx::IsNull( elementSize )) {
  HXLINE(1132)					elementSize = ((( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE) + (( (Float)(this->t->__Field(HX_("ELEMENT_OFFSET",16,9e,c2,08),hx::paccDynamic)) ) * this->SCALE));
              				}
  HXLINE(1133)				 ::zui::Zui _hx_tmp2 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN(1133)				_hx_tmp2->_y = (_hx_tmp2->_y + elementSize);
  HXLINE(1135)				bool _hx_tmp3;
  HXDLIN(1135)				if (hx::IsNotNull( this->ratios )) {
  HXLINE(1135)					_hx_tmp3 = (this->curRatio == (this->ratios->length - 1));
              				}
              				else {
  HXLINE(1135)					_hx_tmp3 = false;
              				}
  HXDLIN(1135)				if (_hx_tmp3) {
  HXLINE(1136)					this->curRatio = -1;
  HXLINE(1137)					this->ratios = null();
  HXLINE(1138)					this->_x = this->xBeforeSplit;
  HXLINE(1139)					this->_w = this->wBeforeSplit;
              				}
              			}
              			else {
  HXLINE(1143)				this->curRatio++;
  HXLINE(1144)				 ::zui::Zui _hx_tmp4 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN(1144)				_hx_tmp4->_x = (_hx_tmp4->_x + this->_w);
  HXLINE(1145)				this->_w = ::Std_obj::_hx_int((( (Float)(this->wBeforeSplit) ) * this->ratios->__get(this->curRatio)));
              			}
              		}
              		else {
  HXLINE(1149)			 ::zui::Zui _hx_tmp5 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN(1149)			_hx_tmp5->_x = (_hx_tmp5->_x + (this->_w + (( (Float)(this->t->__Field(HX_("ELEMENT_OFFSET",16,9e,c2,08),hx::paccDynamic)) ) * this->SCALE)));
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,endElement,(void))
  
  void Zui_obj::row(::Array< Float > ratios){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1153_row)
  HXLINE(1154)		this->ratios = ratios;
  HXLINE(1155)		this->curRatio = 0;
  HXLINE(1156)		this->xBeforeSplit = this->_x;
  HXLINE(1157)		this->wBeforeSplit = this->_w;
  HXLINE(1158)		this->_w = ::Std_obj::_hx_int((( (Float)(this->_w) ) * ratios->__get(this->curRatio)));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,row,(void))
  
  void Zui_obj::indent(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1161_indent)
  HXLINE(1162)		 ::zui::Zui _hx_tmp = hx::ObjectPtr<OBJ_>(this);
  HXDLIN(1162)		Float _hx_tmp1 = _hx_tmp->_x;
  HXDLIN(1162)		_hx_tmp->_x = (_hx_tmp1 + ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("TAB_W",8d,00,d2,88),hx::paccDynamic)) ) * this->SCALE)));
  HXLINE(1163)		 ::zui::Zui _hx_tmp2 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN(1163)		int _hx_tmp3 = _hx_tmp2->_w;
  HXDLIN(1163)		_hx_tmp2->_w = (_hx_tmp3 - ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("TAB_W",8d,00,d2,88),hx::paccDynamic)) ) * this->SCALE)));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,indent,(void))
  
  void Zui_obj::unindent(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1165_unindent)
  HXLINE(1166)		 ::zui::Zui _hx_tmp = hx::ObjectPtr<OBJ_>(this);
  HXDLIN(1166)		Float _hx_tmp1 = _hx_tmp->_x;
  HXDLIN(1166)		_hx_tmp->_x = (_hx_tmp1 - ( (Float)(::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("TAB_W",8d,00,d2,88),hx::paccDynamic)) ) * this->SCALE))) ));
  HXLINE(1167)		 ::zui::Zui _hx_tmp2 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN(1167)		int _hx_tmp3 = _hx_tmp2->_w;
  HXDLIN(1167)		_hx_tmp2->_w = (_hx_tmp3 + ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("TAB_W",8d,00,d2,88),hx::paccDynamic)) ) * this->SCALE)));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,unindent,(void))
  
  void Zui_obj::fill(Float x,Float y,Float w,Float h,int color){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1170_fill)
  HXLINE(1171)		this->g->set_color(color);
  HXLINE(1172)		this->g->fillRect((this->_x + (x * this->SCALE)),(this->_y + (y * this->SCALE)),(w * this->SCALE),(h * this->SCALE));
  HXLINE(1173)		this->g->set_color(-1);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC5(Zui_obj,fill,(void))
  
  void Zui_obj::rect(Float x,Float y,Float w,Float h,int color,hx::Null< Float >  __o_strength){
              		Float strength = __o_strength.Default(((Float)1.0));
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1176_rect)
  HXLINE(1177)		this->g->set_color(color);
  HXLINE(1178)		this->g->drawRect((this->_x + (x * this->SCALE)),(this->_y + (y * this->SCALE)),(w * this->SCALE),(h * this->SCALE),strength);
  HXLINE(1179)		this->g->set_color(-1);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC6(Zui_obj,rect,(void))
  
  void Zui_obj::drawRect( ::kha::graphics2::Graphics g,bool fill,Float x,Float y,Float w,Float h,hx::Null< Float >  __o_strength){
              		Float strength = __o_strength.Default(((Float)0.0));
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1182_drawRect)
  HXLINE(1183)		if ((strength == ((Float)0.0))) {
  HXLINE(1183)			strength = (( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE);
              		}
  HXLINE(1184)		if (fill) {
  HXLINE(1184)			g->fillRect(x,y,w,h);
              		}
              		else {
  HXLINE(1184)			g->drawRect(x,y,w,h,strength);
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC7(Zui_obj,drawRect,(void))
  
  bool Zui_obj::isVisible(Float elemH){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1187_isVisible)
  HXLINE(1188)		if (hx::IsNull( this->currentWindow )) {
  HXLINE(1188)			return true;
              		}
  HXLINE(1190)		if (((this->_y + elemH) > 0)) {
  HXLINE(1190)			Float _hx_tmp = this->_y;
  HXDLIN(1190)			return (_hx_tmp < this->currentWindow->texture->get_height());
              		}
              		else {
  HXLINE(1190)			return false;
              		}
  HXDLIN(1190)		return false;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,isVisible,return )
  
  bool Zui_obj::getReleased(hx::Null< Float >  __o_elemH){
              		Float elemH = __o_elemH.Default(((Float)-1.0));
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1193_getReleased)
  HXLINE(1194)		bool _hx_tmp;
  HXDLIN(1194)		bool _hx_tmp1;
  HXDLIN(1194)		bool _hx_tmp2;
  HXDLIN(1194)		if (this->inputEnabled) {
  HXLINE(1194)			_hx_tmp2 = this->inputReleased;
              		}
              		else {
  HXLINE(1194)			_hx_tmp2 = false;
              		}
  HXDLIN(1194)		if (_hx_tmp2) {
  HXLINE(1194)			_hx_tmp1 = this->getHover(elemH);
              		}
              		else {
  HXLINE(1194)			_hx_tmp1 = false;
              		}
  HXDLIN(1194)		if (_hx_tmp1) {
  HXLINE(1194)			_hx_tmp = this->getInitialHover(elemH);
              		}
              		else {
  HXLINE(1194)			_hx_tmp = false;
              		}
  HXDLIN(1194)		this->isReleased = _hx_tmp;
  HXLINE(1195)		return this->isReleased;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,getReleased,return )
  
  bool Zui_obj::getPushed(hx::Null< Float >  __o_elemH){
              		Float elemH = __o_elemH.Default(((Float)-1.0));
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1198_getPushed)
  HXLINE(1199)		bool _hx_tmp;
  HXDLIN(1199)		bool _hx_tmp1;
  HXDLIN(1199)		bool _hx_tmp2;
  HXDLIN(1199)		if (this->inputEnabled) {
  HXLINE(1199)			_hx_tmp2 = this->inputDown;
              		}
              		else {
  HXLINE(1199)			_hx_tmp2 = false;
              		}
  HXDLIN(1199)		if (_hx_tmp2) {
  HXLINE(1199)			_hx_tmp1 = this->getHover(elemH);
              		}
              		else {
  HXLINE(1199)			_hx_tmp1 = false;
              		}
  HXDLIN(1199)		if (_hx_tmp1) {
  HXLINE(1199)			_hx_tmp = this->getInitialHover(elemH);
              		}
              		else {
  HXLINE(1199)			_hx_tmp = false;
              		}
  HXDLIN(1199)		this->isPushed = _hx_tmp;
  HXLINE(1200)		return this->isPushed;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,getPushed,return )
  
  bool Zui_obj::getStarted(hx::Null< Float >  __o_elemH){
              		Float elemH = __o_elemH.Default(((Float)-1.0));
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1203_getStarted)
  HXLINE(1204)		bool _hx_tmp;
  HXDLIN(1204)		bool _hx_tmp1;
  HXDLIN(1204)		if (this->inputEnabled) {
  HXLINE(1204)			_hx_tmp1 = this->inputStarted;
              		}
              		else {
  HXLINE(1204)			_hx_tmp1 = false;
              		}
  HXDLIN(1204)		if (_hx_tmp1) {
  HXLINE(1204)			_hx_tmp = this->getHover(elemH);
              		}
              		else {
  HXLINE(1204)			_hx_tmp = false;
              		}
  HXDLIN(1204)		this->isStarted = _hx_tmp;
  HXLINE(1205)		return this->isStarted;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,getStarted,return )
  
  bool Zui_obj::getInitialHover(hx::Null< Float >  __o_elemH){
              		Float elemH = __o_elemH.Default(((Float)-1.0));
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1208_getInitialHover)
  HXLINE(1209)		if ((elemH == ((Float)-1.0))) {
  HXLINE(1209)			elemH = (( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE);
              		}
  HXLINE(1210)		bool _hx_tmp;
  HXDLIN(1210)		bool _hx_tmp1;
  HXDLIN(1210)		bool _hx_tmp2;
  HXDLIN(1210)		if (this->inputEnabled) {
  HXLINE(1210)			_hx_tmp2 = (this->inputInitialX >= (this->_windowX + this->_x));
              		}
              		else {
  HXLINE(1210)			_hx_tmp2 = false;
              		}
  HXDLIN(1210)		if (_hx_tmp2) {
  HXLINE(1210)			_hx_tmp1 = (this->inputInitialX < ((this->_windowX + this->_x) + this->_w));
              		}
              		else {
  HXLINE(1210)			_hx_tmp1 = false;
              		}
  HXDLIN(1210)		if (_hx_tmp1) {
  HXLINE(1210)			_hx_tmp = (this->inputInitialY >= (this->_windowY + this->_y));
              		}
              		else {
  HXLINE(1210)			_hx_tmp = false;
              		}
  HXDLIN(1210)		if (_hx_tmp) {
  HXLINE(1212)			return (this->inputInitialY < ((this->_windowY + this->_y) + elemH));
              		}
              		else {
  HXLINE(1210)			return false;
              		}
  HXDLIN(1210)		return false;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,getInitialHover,return )
  
  bool Zui_obj::getHover(hx::Null< Float >  __o_elemH){
              		Float elemH = __o_elemH.Default(((Float)-1.0));
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1215_getHover)
  HXLINE(1216)		if ((elemH == ((Float)-1.0))) {
  HXLINE(1216)			elemH = (( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE);
              		}
  HXLINE(1217)		bool _hx_tmp;
  HXDLIN(1217)		bool _hx_tmp1;
  HXDLIN(1217)		bool _hx_tmp2;
  HXDLIN(1217)		bool _hx_tmp3;
  HXDLIN(1217)		if (this->inputEnabled) {
  HXLINE(1217)			_hx_tmp3 = (this->inputX >= (this->_windowX + this->_x));
              		}
              		else {
  HXLINE(1217)			_hx_tmp3 = false;
              		}
  HXDLIN(1217)		if (_hx_tmp3) {
  HXLINE(1217)			_hx_tmp2 = (this->inputX < ((this->_windowX + this->_x) + this->_w));
              		}
              		else {
  HXLINE(1217)			_hx_tmp2 = false;
              		}
  HXDLIN(1217)		if (_hx_tmp2) {
  HXLINE(1217)			_hx_tmp1 = (this->inputY >= (this->_windowY + this->_y));
              		}
              		else {
  HXLINE(1217)			_hx_tmp1 = false;
              		}
  HXDLIN(1217)		if (_hx_tmp1) {
  HXLINE(1217)			_hx_tmp = (this->inputY < ((this->_windowY + this->_y) + elemH));
              		}
              		else {
  HXLINE(1217)			_hx_tmp = false;
              		}
  HXDLIN(1217)		this->isHovered = _hx_tmp;
  HXLINE(1220)		return this->isHovered;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,getHover,return )
  
  bool Zui_obj::getInputInRect(Float x,Float y,Float w,Float h,hx::Null< Float >  __o_scale){
              		Float scale = __o_scale.Default(((Float)1.0));
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1224_getInputInRect)
  HXDLIN(1224)		bool _hx_tmp;
  HXDLIN(1224)		bool _hx_tmp1;
  HXDLIN(1224)		bool _hx_tmp2;
  HXDLIN(1224)		if (this->inputEnabled) {
  HXDLIN(1224)			_hx_tmp2 = (this->inputX >= (x * scale));
              		}
              		else {
  HXDLIN(1224)			_hx_tmp2 = false;
              		}
  HXDLIN(1224)		if (_hx_tmp2) {
  HXDLIN(1224)			_hx_tmp1 = (this->inputX < ((x + w) * scale));
              		}
              		else {
  HXDLIN(1224)			_hx_tmp1 = false;
              		}
  HXDLIN(1224)		if (_hx_tmp1) {
  HXDLIN(1224)			_hx_tmp = (this->inputY >= (y * scale));
              		}
              		else {
  HXDLIN(1224)			_hx_tmp = false;
              		}
  HXDLIN(1224)		if (_hx_tmp) {
  HXLINE(1226)			return (this->inputY < ((y + h) * scale));
              		}
              		else {
  HXDLIN(1224)			return false;
              		}
  HXDLIN(1224)		return false;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC5(Zui_obj,getInputInRect,return )
  
  void Zui_obj::onMouseDown(int button,int x,int y){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1229_onMouseDown)
  HXLINE(1230)		if ((button == 0)) {
  HXLINE(1230)			this->inputStarted = true;
              		}
              		else {
  HXLINE(1230)			this->inputStartedR = true;
              		}
  HXLINE(1231)		if ((button == 0)) {
  HXLINE(1231)			this->inputDown = true;
              		}
              		else {
  HXLINE(1231)			this->inputDownR = true;
              		}
  HXLINE(1232)		int sx = ::Std_obj::_hx_int((( (Float)(x) ) * ( (Float)(this->ops->__Field(HX_("scaleTexture",71,67,2a,36),hx::paccDynamic)) )));
  HXLINE(1233)		int sy = ::Std_obj::_hx_int((( (Float)(y) ) * ( (Float)(this->ops->__Field(HX_("scaleTexture",71,67,2a,36),hx::paccDynamic)) )));
  HXLINE(1234)		this->setInputPosition(sx,sy);
  HXLINE(1235)		this->inputInitialX = ( (Float)(sx) );
  HXLINE(1236)		this->inputInitialY = ( (Float)(sy) );
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC3(Zui_obj,onMouseDown,(void))
  
  void Zui_obj::onMouseUp(int button,int x,int y){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1239_onMouseUp)
  HXLINE(1240)		if ((button == 0)) {
  HXLINE(1241)			if (this->isScrolling) {
  HXLINE(1242)				this->isScrolling = false;
  HXLINE(1243)				if (hx::IsNotNull( this->scrollingHandle )) {
  HXLINE(1243)					this->scrollingHandle->scrolling = false;
              				}
  HXLINE(1244)				bool _hx_tmp;
  HXDLIN(1244)				if ((x == this->inputInitialX)) {
  HXLINE(1244)					_hx_tmp = (y == this->inputInitialY);
              				}
              				else {
  HXLINE(1244)					_hx_tmp = false;
              				}
  HXDLIN(1244)				if (_hx_tmp) {
  HXLINE(1244)					this->inputReleased = true;
              				}
              			}
              			else {
  HXLINE(1247)				this->inputReleased = true;
              			}
              		}
              		else {
  HXLINE(1250)			if ((button == 1)) {
  HXLINE(1250)				this->inputReleasedR = true;
              			}
              		}
  HXLINE(1251)		if ((button == 0)) {
  HXLINE(1251)			this->inputDown = false;
              		}
              		else {
  HXLINE(1251)			this->inputDownR = false;
              		}
  HXLINE(1252)		int _hx_tmp1 = ::Std_obj::_hx_int((( (Float)(x) ) * ( (Float)(this->ops->__Field(HX_("scaleTexture",71,67,2a,36),hx::paccDynamic)) )));
  HXDLIN(1252)		this->setInputPosition(_hx_tmp1,::Std_obj::_hx_int((( (Float)(y) ) * ( (Float)(this->ops->__Field(HX_("scaleTexture",71,67,2a,36),hx::paccDynamic)) ))));
  HXLINE(1253)		this->deselectText();
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC3(Zui_obj,onMouseUp,(void))
  
  void Zui_obj::onMouseMove(int x,int y,int movementX,int movementY){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1257_onMouseMove)
  HXDLIN(1257)		int _hx_tmp = ::Std_obj::_hx_int((( (Float)(x) ) * ( (Float)(this->ops->__Field(HX_("scaleTexture",71,67,2a,36),hx::paccDynamic)) )));
  HXDLIN(1257)		this->setInputPosition(_hx_tmp,::Std_obj::_hx_int((( (Float)(y) ) * ( (Float)(this->ops->__Field(HX_("scaleTexture",71,67,2a,36),hx::paccDynamic)) ))));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC4(Zui_obj,onMouseMove,(void))
  
  void Zui_obj::onMouseWheel(int delta){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1261_onMouseWheel)
  HXDLIN(1261)		this->inputWheelDelta = delta;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,onMouseWheel,(void))
  
  void Zui_obj::setInputPosition(int x,int y){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1264_setInputPosition)
  HXLINE(1265)		 ::zui::Zui _hx_tmp = hx::ObjectPtr<OBJ_>(this);
  HXDLIN(1265)		_hx_tmp->inputDX = (_hx_tmp->inputDX + (( (Float)(x) ) - this->inputX));
  HXLINE(1266)		 ::zui::Zui _hx_tmp1 = hx::ObjectPtr<OBJ_>(this);
  HXDLIN(1266)		_hx_tmp1->inputDY = (_hx_tmp1->inputDY + (( (Float)(y) ) - this->inputY));
  HXLINE(1267)		this->inputX = ( (Float)(x) );
  HXLINE(1268)		this->inputY = ( (Float)(y) );
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Zui_obj,setInputPosition,(void))
  
  void Zui_obj::onKeyDown(int code){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1271_onKeyDown)
  HXLINE(1272)		this->key = code;
  HXLINE(1273)		this->isKeyDown = true;
  HXLINE(1274)		switch((int)(code)){
              			case (int)8: {
  HXLINE(1278)				this->isBackspaceDown = true;
              			}
              			break;
              			case (int)16: {
  HXLINE(1275)				this->isShiftDown = true;
              			}
              			break;
              			case (int)17: {
  HXLINE(1276)				this->isCtrlDown = true;
              			}
              			break;
              			case (int)18: {
  HXLINE(1277)				this->isAltDown = true;
              			}
              			break;
              			case (int)27: {
  HXLINE(1280)				this->isEscapeDown = true;
              			}
              			break;
              			case (int)32: {
  HXLINE(1281)				this->_hx_char = HX_(" ",20,00,00,00);
              			}
              			break;
              			case (int)46: {
  HXLINE(1279)				this->isDeleteDown = true;
              			}
              			break;
              			default:{
              			}
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,onKeyDown,(void))
  
  void Zui_obj::onKeyUp(int code){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1287_onKeyUp)
  HXDLIN(1287)		switch((int)(code)){
              			case (int)8: {
  HXLINE(1291)				this->isBackspaceDown = false;
              			}
              			break;
              			case (int)16: {
  HXLINE(1288)				this->isShiftDown = false;
              			}
              			break;
              			case (int)17: {
  HXLINE(1289)				this->isCtrlDown = false;
              			}
              			break;
              			case (int)18: {
  HXLINE(1290)				this->isAltDown = false;
              			}
              			break;
              			case (int)27: {
  HXLINE(1293)				this->isEscapeDown = false;
              			}
              			break;
              			case (int)46: {
  HXLINE(1292)				this->isDeleteDown = false;
              			}
              			break;
              			default:{
              			}
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,onKeyUp,(void))
  
  void Zui_obj::onKeyPress(::String _hx_char){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1298_onKeyPress)
  HXLINE(1299)		this->_hx_char = _hx_char;
  HXLINE(1300)		this->isKeyDown = true;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,onKeyPress,(void))
  
  ::String Zui_obj::onCut(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1303_onCut)
  HXDLIN(1303)		::zui::Zui_obj::isCut = true;
  HXDLIN(1303)		return this->onCopy();
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,onCut,return )
  
  ::String Zui_obj::onCopy(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1304_onCopy)
  HXDLIN(1304)		::zui::Zui_obj::isCopy = true;
  HXDLIN(1304)		return ::zui::Zui_obj::textToCopy;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,onCopy,return )
  
  void Zui_obj::onPaste(::String s){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1305_onPaste)
  HXDLIN(1305)		::zui::Zui_obj::isPaste = true;
  HXDLIN(1305)		::zui::Zui_obj::textToPaste = s;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Zui_obj,onPaste,(void))
  
  Float Zui_obj::ELEMENT_W(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1307_ELEMENT_W)
  HXDLIN(1307)		return (( (Float)(this->t->__Field(HX_("ELEMENT_W",b4,b4,43,c3),hx::paccDynamic)) ) * this->SCALE);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,ELEMENT_W,return )
  
  Float Zui_obj::ELEMENT_H(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1308_ELEMENT_H)
  HXDLIN(1308)		return (( (Float)(this->t->__Field(HX_("ELEMENT_H",a5,b4,43,c3),hx::paccDynamic)) ) * this->SCALE);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,ELEMENT_H,return )
  
  Float Zui_obj::ELEMENT_OFFSET(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1309_ELEMENT_OFFSET)
  HXDLIN(1309)		return (( (Float)(this->t->__Field(HX_("ELEMENT_OFFSET",16,9e,c2,08),hx::paccDynamic)) ) * this->SCALE);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,ELEMENT_OFFSET,return )
  
  Float Zui_obj::ARROW_SIZE(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1310_ARROW_SIZE)
  HXDLIN(1310)		return (( (Float)(this->t->__Field(HX_("ARROW_SIZE",57,2e,b6,3e),hx::paccDynamic)) ) * this->SCALE);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,ARROW_SIZE,return )
  
  Float Zui_obj::BUTTON_H(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1311_BUTTON_H)
  HXDLIN(1311)		return (( (Float)(this->t->__Field(HX_("BUTTON_H",7b,41,b8,b5),hx::paccDynamic)) ) * this->SCALE);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,BUTTON_H,return )
  
  Float Zui_obj::CHECK_SIZE(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1312_CHECK_SIZE)
  HXDLIN(1312)		return (( (Float)(this->t->__Field(HX_("CHECK_SIZE",f8,52,03,db),hx::paccDynamic)) ) * this->SCALE);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,CHECK_SIZE,return )
  
  Float Zui_obj::CHECK_SELECT_SIZE(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1313_CHECK_SELECT_SIZE)
  HXDLIN(1313)		return (( (Float)(this->t->__Field(HX_("CHECK_SELECT_SIZE",cd,c6,a9,44),hx::paccDynamic)) ) * this->SCALE);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,CHECK_SELECT_SIZE,return )
  
  int Zui_obj::SCROLL_W(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1314_SCROLL_W)
  HXDLIN(1314)		return ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("SCROLL_W",65,b4,da,e5),hx::paccDynamic)) ) * this->SCALE));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,SCROLL_W,return )
  
  int Zui_obj::TEXT_OFFSET(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1315_TEXT_OFFSET)
  HXDLIN(1315)		return ( (int)(this->t->__Field(HX_("TEXT_OFFSET",25,60,d0,e5),hx::paccDynamic)) );
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,TEXT_OFFSET,return )
  
  int Zui_obj::TAB_W(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1316_TAB_W)
  HXDLIN(1316)		return ::Std_obj::_hx_int((( (Float)(this->t->__Field(HX_("TAB_W",8d,00,d2,88),hx::paccDynamic)) ) * this->SCALE));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,TAB_W,return )
  
  Float Zui_obj::LINE_STRENGTH(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1317_LINE_STRENGTH)
  HXDLIN(1317)		return (( (Float)(this->t->__Field(HX_("LINE_STRENGTH",6c,db,3c,bc),hx::paccDynamic)) ) * this->SCALE);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,LINE_STRENGTH,return )
  
  Float Zui_obj::FLASH_SPEED(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1318_FLASH_SPEED)
  HXDLIN(1318)		return ((Float)0.5);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,FLASH_SPEED,return )
  
  Float Zui_obj::TOOLTIP_DELAY(){
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1319_TOOLTIP_DELAY)
  HXDLIN(1319)		return ((Float)1.0);
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Zui_obj,TOOLTIP_DELAY,return )
  
  void Zui_obj::resize( ::zui::Handle handle,int w,int h,hx::Null< int >  __o_khaWindowId){
              		int khaWindowId = __o_khaWindowId.Default(0);
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1321_resize)
  HXLINE(1322)		handle->redraws = 2;
  HXLINE(1323)		if (hx::IsNotNull( handle->texture )) {
  HXLINE(1323)			handle->texture->unload();
              		}
  HXLINE(1324)		if ((w < 1)) {
  HXLINE(1324)			w = 1;
              		}
  HXLINE(1325)		if ((h < 1)) {
  HXLINE(1325)			h = 1;
              		}
  HXLINE(1326)		handle->texture = ::kha::Image_obj::createRenderTarget(w,h,::kha::graphics4::TextureFormat_obj::RGBA32_dyn(),0,1,khaWindowId);
  HXLINE(1327)		handle->texture->get_g2()->set_imageScaleQuality(::kha::graphics2::ImageScaleQuality_obj::High_dyn());
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC4(Zui_obj,resize,(void))
  
  ::String Zui_obj::textToPaste;
  
  ::String Zui_obj::textToCopy;
  
  bool Zui_obj::isCut;
  
  bool Zui_obj::isCopy;
  
  bool Zui_obj::isPaste;
  
   ::zui::Zui Zui_obj::copyReceiver;
  
  int Zui_obj::copyFrame;
  
  bool Zui_obj::comboFirst;
  
  
  hx::ObjectPtr< Zui_obj > Zui_obj::__new( ::Dynamic ops) {
  	hx::ObjectPtr< Zui_obj > __this = new Zui_obj();
  	__this->__construct(ops);
  	return __this;
  }
  
  hx::ObjectPtr< Zui_obj > Zui_obj::__alloc(hx::Ctx *_hx_ctx, ::Dynamic ops) {
  	Zui_obj *__this = (Zui_obj*)(hx::Ctx::alloc(_hx_ctx, sizeof(Zui_obj), true, "zui.Zui"));
  	*(void **)__this = Zui_obj::_hx_vtable;
  	__this->__construct(ops);
  	return __this;
  }
  
  Zui_obj::Zui_obj()
  {
  }
  
  void Zui_obj::__Mark(HX_MARK_PARAMS)
  {
  	HX_MARK_BEGIN_CLASS(Zui);
  	HX_MARK_MEMBER_NAME(isScrolling,"isScrolling");
  	HX_MARK_MEMBER_NAME(isTyping,"isTyping");
  	HX_MARK_MEMBER_NAME(isStarted,"isStarted");
  	HX_MARK_MEMBER_NAME(isPushed,"isPushed");
  	HX_MARK_MEMBER_NAME(isHovered,"isHovered");
  	HX_MARK_MEMBER_NAME(isReleased,"isReleased");
  	HX_MARK_MEMBER_NAME(changed,"changed");
  	HX_MARK_MEMBER_NAME(alwaysRedraw,"alwaysRedraw");
  	HX_MARK_MEMBER_NAME(imageInvertY,"imageInvertY");
  	HX_MARK_MEMBER_NAME(scrollEnabled,"scrollEnabled");
  	HX_MARK_MEMBER_NAME(inputRegistered,"inputRegistered");
  	HX_MARK_MEMBER_NAME(inputEnabled,"inputEnabled");
  	HX_MARK_MEMBER_NAME(inputX,"inputX");
  	HX_MARK_MEMBER_NAME(inputY,"inputY");
  	HX_MARK_MEMBER_NAME(inputInitialX,"inputInitialX");
  	HX_MARK_MEMBER_NAME(inputInitialY,"inputInitialY");
  	HX_MARK_MEMBER_NAME(inputDX,"inputDX");
  	HX_MARK_MEMBER_NAME(inputDY,"inputDY");
  	HX_MARK_MEMBER_NAME(inputWheelDelta,"inputWheelDelta");
  	HX_MARK_MEMBER_NAME(inputStarted,"inputStarted");
  	HX_MARK_MEMBER_NAME(inputStartedR,"inputStartedR");
  	HX_MARK_MEMBER_NAME(inputReleased,"inputReleased");
  	HX_MARK_MEMBER_NAME(inputReleasedR,"inputReleasedR");
  	HX_MARK_MEMBER_NAME(inputDown,"inputDown");
  	HX_MARK_MEMBER_NAME(inputDownR,"inputDownR");
  	HX_MARK_MEMBER_NAME(isKeyDown,"isKeyDown");
  	HX_MARK_MEMBER_NAME(isShiftDown,"isShiftDown");
  	HX_MARK_MEMBER_NAME(isCtrlDown,"isCtrlDown");
  	HX_MARK_MEMBER_NAME(isAltDown,"isAltDown");
  	HX_MARK_MEMBER_NAME(isBackspaceDown,"isBackspaceDown");
  	HX_MARK_MEMBER_NAME(isDeleteDown,"isDeleteDown");
  	HX_MARK_MEMBER_NAME(isEscapeDown,"isEscapeDown");
  	HX_MARK_MEMBER_NAME(key,"key");
  	HX_MARK_MEMBER_NAME(_hx_char,"char");
  	HX_MARK_MEMBER_NAME(cursorX,"cursorX");
  	HX_MARK_MEMBER_NAME(cursorY,"cursorY");
  	HX_MARK_MEMBER_NAME(highlightAnchor,"highlightAnchor");
  	HX_MARK_MEMBER_NAME(ratios,"ratios");
  	HX_MARK_MEMBER_NAME(curRatio,"curRatio");
  	HX_MARK_MEMBER_NAME(xBeforeSplit,"xBeforeSplit");
  	HX_MARK_MEMBER_NAME(wBeforeSplit,"wBeforeSplit");
  	HX_MARK_MEMBER_NAME(g,"g");
  	HX_MARK_MEMBER_NAME(globalG,"globalG");
  	HX_MARK_MEMBER_NAME(t,"t");
  	HX_MARK_MEMBER_NAME(SCALE,"SCALE");
  	HX_MARK_MEMBER_NAME(ops,"ops");
  	HX_MARK_MEMBER_NAME(fontSize,"fontSize");
  	HX_MARK_MEMBER_NAME(fontOffsetY,"fontOffsetY");
  	HX_MARK_MEMBER_NAME(arrowOffsetX,"arrowOffsetX");
  	HX_MARK_MEMBER_NAME(arrowOffsetY,"arrowOffsetY");
  	HX_MARK_MEMBER_NAME(titleOffsetX,"titleOffsetX");
  	HX_MARK_MEMBER_NAME(buttonOffsetY,"buttonOffsetY");
  	HX_MARK_MEMBER_NAME(checkOffsetX,"checkOffsetX");
  	HX_MARK_MEMBER_NAME(checkOffsetY,"checkOffsetY");
  	HX_MARK_MEMBER_NAME(checkSelectOffsetX,"checkSelectOffsetX");
  	HX_MARK_MEMBER_NAME(checkSelectOffsetY,"checkSelectOffsetY");
  	HX_MARK_MEMBER_NAME(radioOffsetX,"radioOffsetX");
  	HX_MARK_MEMBER_NAME(radioOffsetY,"radioOffsetY");
  	HX_MARK_MEMBER_NAME(radioSelectOffsetX,"radioSelectOffsetX");
  	HX_MARK_MEMBER_NAME(radioSelectOffsetY,"radioSelectOffsetY");
  	HX_MARK_MEMBER_NAME(scrollAlign,"scrollAlign");
  	HX_MARK_MEMBER_NAME(imageScrollAlign,"imageScrollAlign");
  	HX_MARK_MEMBER_NAME(_x,"_x");
  	HX_MARK_MEMBER_NAME(_y,"_y");
  	HX_MARK_MEMBER_NAME(_w,"_w");
  	HX_MARK_MEMBER_NAME(_h,"_h");
  	HX_MARK_MEMBER_NAME(_windowX,"_windowX");
  	HX_MARK_MEMBER_NAME(_windowY,"_windowY");
  	HX_MARK_MEMBER_NAME(_windowW,"_windowW");
  	HX_MARK_MEMBER_NAME(_windowH,"_windowH");
  	HX_MARK_MEMBER_NAME(currentWindow,"currentWindow");
  	HX_MARK_MEMBER_NAME(windowEnded,"windowEnded");
  	HX_MARK_MEMBER_NAME(scrollingHandle,"scrollingHandle");
  	HX_MARK_MEMBER_NAME(windowHeader,"windowHeader");
  	HX_MARK_MEMBER_NAME(textSelectedHandle,"textSelectedHandle");
  	HX_MARK_MEMBER_NAME(textSelectedCurrentText,"textSelectedCurrentText");
  	HX_MARK_MEMBER_NAME(submitTextHandle,"submitTextHandle");
  	HX_MARK_MEMBER_NAME(textToSubmit,"textToSubmit");
  	HX_MARK_MEMBER_NAME(tabPressed,"tabPressed");
  	HX_MARK_MEMBER_NAME(tabPressedHandle,"tabPressedHandle");
  	HX_MARK_MEMBER_NAME(comboSelectedHandle,"comboSelectedHandle");
  	HX_MARK_MEMBER_NAME(comboSelectedWindow,"comboSelectedWindow");
  	HX_MARK_MEMBER_NAME(comboSelectedAlign,"comboSelectedAlign");
  	HX_MARK_MEMBER_NAME(comboSelectedTexts,"comboSelectedTexts");
  	HX_MARK_MEMBER_NAME(comboSelectedLabel,"comboSelectedLabel");
  	HX_MARK_MEMBER_NAME(comboSelectedX,"comboSelectedX");
  	HX_MARK_MEMBER_NAME(comboSelectedY,"comboSelectedY");
  	HX_MARK_MEMBER_NAME(comboSelectedW,"comboSelectedW");
  	HX_MARK_MEMBER_NAME(submitComboHandle,"submitComboHandle");
  	HX_MARK_MEMBER_NAME(comboToSubmit,"comboToSubmit");
  	HX_MARK_MEMBER_NAME(tooltipText,"tooltipText");
  	HX_MARK_MEMBER_NAME(tooltipImg,"tooltipImg");
  	HX_MARK_MEMBER_NAME(tooltipInvertY,"tooltipInvertY");
  	HX_MARK_MEMBER_NAME(tooltipX,"tooltipX");
  	HX_MARK_MEMBER_NAME(tooltipY,"tooltipY");
  	HX_MARK_MEMBER_NAME(tooltipShown,"tooltipShown");
  	HX_MARK_MEMBER_NAME(tooltipTime,"tooltipTime");
  	HX_MARK_MEMBER_NAME(tabNames,"tabNames");
  	HX_MARK_MEMBER_NAME(tabHandle,"tabHandle");
  	HX_MARK_MEMBER_NAME(tabScroll,"tabScroll");
  	HX_MARK_MEMBER_NAME(elementsBaked,"elementsBaked");
  	HX_MARK_MEMBER_NAME(checkSelectImage,"checkSelectImage");
  	HX_MARK_MEMBER_NAME(restoreX,"restoreX");
  	HX_MARK_MEMBER_NAME(restoreY,"restoreY");
  	HX_MARK_END_CLASS();
  }
  
  void Zui_obj::__Visit(HX_VISIT_PARAMS)
  {
  	HX_VISIT_MEMBER_NAME(isScrolling,"isScrolling");
  	HX_VISIT_MEMBER_NAME(isTyping,"isTyping");
  	HX_VISIT_MEMBER_NAME(isStarted,"isStarted");
  	HX_VISIT_MEMBER_NAME(isPushed,"isPushed");
  	HX_VISIT_MEMBER_NAME(isHovered,"isHovered");
  	HX_VISIT_MEMBER_NAME(isReleased,"isReleased");
  	HX_VISIT_MEMBER_NAME(changed,"changed");
  	HX_VISIT_MEMBER_NAME(alwaysRedraw,"alwaysRedraw");
  	HX_VISIT_MEMBER_NAME(imageInvertY,"imageInvertY");
  	HX_VISIT_MEMBER_NAME(scrollEnabled,"scrollEnabled");
  	HX_VISIT_MEMBER_NAME(inputRegistered,"inputRegistered");
  	HX_VISIT_MEMBER_NAME(inputEnabled,"inputEnabled");
  	HX_VISIT_MEMBER_NAME(inputX,"inputX");
  	HX_VISIT_MEMBER_NAME(inputY,"inputY");
  	HX_VISIT_MEMBER_NAME(inputInitialX,"inputInitialX");
  	HX_VISIT_MEMBER_NAME(inputInitialY,"inputInitialY");
  	HX_VISIT_MEMBER_NAME(inputDX,"inputDX");
  	HX_VISIT_MEMBER_NAME(inputDY,"inputDY");
  	HX_VISIT_MEMBER_NAME(inputWheelDelta,"inputWheelDelta");
  	HX_VISIT_MEMBER_NAME(inputStarted,"inputStarted");
  	HX_VISIT_MEMBER_NAME(inputStartedR,"inputStartedR");
  	HX_VISIT_MEMBER_NAME(inputReleased,"inputReleased");
  	HX_VISIT_MEMBER_NAME(inputReleasedR,"inputReleasedR");
  	HX_VISIT_MEMBER_NAME(inputDown,"inputDown");
  	HX_VISIT_MEMBER_NAME(inputDownR,"inputDownR");
  	HX_VISIT_MEMBER_NAME(isKeyDown,"isKeyDown");
  	HX_VISIT_MEMBER_NAME(isShiftDown,"isShiftDown");
  	HX_VISIT_MEMBER_NAME(isCtrlDown,"isCtrlDown");
  	HX_VISIT_MEMBER_NAME(isAltDown,"isAltDown");
  	HX_VISIT_MEMBER_NAME(isBackspaceDown,"isBackspaceDown");
  	HX_VISIT_MEMBER_NAME(isDeleteDown,"isDeleteDown");
  	HX_VISIT_MEMBER_NAME(isEscapeDown,"isEscapeDown");
  	HX_VISIT_MEMBER_NAME(key,"key");
  	HX_VISIT_MEMBER_NAME(_hx_char,"char");
  	HX_VISIT_MEMBER_NAME(cursorX,"cursorX");
  	HX_VISIT_MEMBER_NAME(cursorY,"cursorY");
  	HX_VISIT_MEMBER_NAME(highlightAnchor,"highlightAnchor");
  	HX_VISIT_MEMBER_NAME(ratios,"ratios");
  	HX_VISIT_MEMBER_NAME(curRatio,"curRatio");
  	HX_VISIT_MEMBER_NAME(xBeforeSplit,"xBeforeSplit");
  	HX_VISIT_MEMBER_NAME(wBeforeSplit,"wBeforeSplit");
  	HX_VISIT_MEMBER_NAME(g,"g");
  	HX_VISIT_MEMBER_NAME(globalG,"globalG");
  	HX_VISIT_MEMBER_NAME(t,"t");
  	HX_VISIT_MEMBER_NAME(SCALE,"SCALE");
  	HX_VISIT_MEMBER_NAME(ops,"ops");
  	HX_VISIT_MEMBER_NAME(fontSize,"fontSize");
  	HX_VISIT_MEMBER_NAME(fontOffsetY,"fontOffsetY");
  	HX_VISIT_MEMBER_NAME(arrowOffsetX,"arrowOffsetX");
  	HX_VISIT_MEMBER_NAME(arrowOffsetY,"arrowOffsetY");
  	HX_VISIT_MEMBER_NAME(titleOffsetX,"titleOffsetX");
  	HX_VISIT_MEMBER_NAME(buttonOffsetY,"buttonOffsetY");
  	HX_VISIT_MEMBER_NAME(checkOffsetX,"checkOffsetX");
  	HX_VISIT_MEMBER_NAME(checkOffsetY,"checkOffsetY");
  	HX_VISIT_MEMBER_NAME(checkSelectOffsetX,"checkSelectOffsetX");
  	HX_VISIT_MEMBER_NAME(checkSelectOffsetY,"checkSelectOffsetY");
  	HX_VISIT_MEMBER_NAME(radioOffsetX,"radioOffsetX");
  	HX_VISIT_MEMBER_NAME(radioOffsetY,"radioOffsetY");
  	HX_VISIT_MEMBER_NAME(radioSelectOffsetX,"radioSelectOffsetX");
  	HX_VISIT_MEMBER_NAME(radioSelectOffsetY,"radioSelectOffsetY");
  	HX_VISIT_MEMBER_NAME(scrollAlign,"scrollAlign");
  	HX_VISIT_MEMBER_NAME(imageScrollAlign,"imageScrollAlign");
  	HX_VISIT_MEMBER_NAME(_x,"_x");
  	HX_VISIT_MEMBER_NAME(_y,"_y");
  	HX_VISIT_MEMBER_NAME(_w,"_w");
  	HX_VISIT_MEMBER_NAME(_h,"_h");
  	HX_VISIT_MEMBER_NAME(_windowX,"_windowX");
  	HX_VISIT_MEMBER_NAME(_windowY,"_windowY");
  	HX_VISIT_MEMBER_NAME(_windowW,"_windowW");
  	HX_VISIT_MEMBER_NAME(_windowH,"_windowH");
  	HX_VISIT_MEMBER_NAME(currentWindow,"currentWindow");
  	HX_VISIT_MEMBER_NAME(windowEnded,"windowEnded");
  	HX_VISIT_MEMBER_NAME(scrollingHandle,"scrollingHandle");
  	HX_VISIT_MEMBER_NAME(windowHeader,"windowHeader");
  	HX_VISIT_MEMBER_NAME(textSelectedHandle,"textSelectedHandle");
  	HX_VISIT_MEMBER_NAME(textSelectedCurrentText,"textSelectedCurrentText");
  	HX_VISIT_MEMBER_NAME(submitTextHandle,"submitTextHandle");
  	HX_VISIT_MEMBER_NAME(textToSubmit,"textToSubmit");
  	HX_VISIT_MEMBER_NAME(tabPressed,"tabPressed");
  	HX_VISIT_MEMBER_NAME(tabPressedHandle,"tabPressedHandle");
  	HX_VISIT_MEMBER_NAME(comboSelectedHandle,"comboSelectedHandle");
  	HX_VISIT_MEMBER_NAME(comboSelectedWindow,"comboSelectedWindow");
  	HX_VISIT_MEMBER_NAME(comboSelectedAlign,"comboSelectedAlign");
  	HX_VISIT_MEMBER_NAME(comboSelectedTexts,"comboSelectedTexts");
  	HX_VISIT_MEMBER_NAME(comboSelectedLabel,"comboSelectedLabel");
  	HX_VISIT_MEMBER_NAME(comboSelectedX,"comboSelectedX");
  	HX_VISIT_MEMBER_NAME(comboSelectedY,"comboSelectedY");
  	HX_VISIT_MEMBER_NAME(comboSelectedW,"comboSelectedW");
  	HX_VISIT_MEMBER_NAME(submitComboHandle,"submitComboHandle");
  	HX_VISIT_MEMBER_NAME(comboToSubmit,"comboToSubmit");
  	HX_VISIT_MEMBER_NAME(tooltipText,"tooltipText");
  	HX_VISIT_MEMBER_NAME(tooltipImg,"tooltipImg");
  	HX_VISIT_MEMBER_NAME(tooltipInvertY,"tooltipInvertY");
  	HX_VISIT_MEMBER_NAME(tooltipX,"tooltipX");
  	HX_VISIT_MEMBER_NAME(tooltipY,"tooltipY");
  	HX_VISIT_MEMBER_NAME(tooltipShown,"tooltipShown");
  	HX_VISIT_MEMBER_NAME(tooltipTime,"tooltipTime");
  	HX_VISIT_MEMBER_NAME(tabNames,"tabNames");
  	HX_VISIT_MEMBER_NAME(tabHandle,"tabHandle");
  	HX_VISIT_MEMBER_NAME(tabScroll,"tabScroll");
  	HX_VISIT_MEMBER_NAME(elementsBaked,"elementsBaked");
  	HX_VISIT_MEMBER_NAME(checkSelectImage,"checkSelectImage");
  	HX_VISIT_MEMBER_NAME(restoreX,"restoreX");
  	HX_VISIT_MEMBER_NAME(restoreY,"restoreY");
  }
  
  hx::Val Zui_obj::__Field(const ::String &inName,hx::PropertyAccess inCallProp)
  {
  	switch(inName.length) {
  	case 1:
  		if (HX_FIELD_EQ(inName,"g") ) { return hx::Val( g ); }
  		if (HX_FIELD_EQ(inName,"t") ) { return hx::Val( t ); }
  		break;
  	case 2:
  		if (HX_FIELD_EQ(inName,"_x") ) { return hx::Val( _x ); }
  		if (HX_FIELD_EQ(inName,"_y") ) { return hx::Val( _y ); }
  		if (HX_FIELD_EQ(inName,"_w") ) { return hx::Val( _w ); }
  		if (HX_FIELD_EQ(inName,"_h") ) { return hx::Val( _h ); }
  		break;
  	case 3:
  		if (HX_FIELD_EQ(inName,"key") ) { return hx::Val( key ); }
  		if (HX_FIELD_EQ(inName,"ops") ) { return hx::Val( ops ); }
  		if (HX_FIELD_EQ(inName,"end") ) { return hx::Val( end_dyn() ); }
  		if (HX_FIELD_EQ(inName,"tab") ) { return hx::Val( tab_dyn() ); }
  		if (HX_FIELD_EQ(inName,"row") ) { return hx::Val( row_dyn() ); }
  		break;
  	case 4:
  		if (HX_FIELD_EQ(inName,"char") ) { return hx::Val( _hx_char ); }
  		if (HX_FIELD_EQ(inName,"text") ) { return hx::Val( text_dyn() ); }
  		if (HX_FIELD_EQ(inName,"fill") ) { return hx::Val( fill_dyn() ); }
  		if (HX_FIELD_EQ(inName,"rect") ) { return hx::Val( rect_dyn() ); }
  		break;
  	case 5:
  		if (HX_FIELD_EQ(inName,"SCALE") ) { return hx::Val( SCALE ); }
  		if (HX_FIELD_EQ(inName,"begin") ) { return hx::Val( begin_dyn() ); }
  		if (HX_FIELD_EQ(inName,"panel") ) { return hx::Val( panel_dyn() ); }
  		if (HX_FIELD_EQ(inName,"image") ) { return hx::Val( image_dyn() ); }
  		if (HX_FIELD_EQ(inName,"check") ) { return hx::Val( check_dyn() ); }
  		if (HX_FIELD_EQ(inName,"radio") ) { return hx::Val( radio_dyn() ); }
  		if (HX_FIELD_EQ(inName,"combo") ) { return hx::Val( combo_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onCut") ) { return hx::Val( onCut_dyn() ); }
  		if (HX_FIELD_EQ(inName,"TAB_W") ) { return hx::Val( TAB_W_dyn() ); }
  		break;
  	case 6:
  		if (HX_FIELD_EQ(inName,"inputX") ) { return hx::Val( inputX ); }
  		if (HX_FIELD_EQ(inName,"inputY") ) { return hx::Val( inputY ); }
  		if (HX_FIELD_EQ(inName,"ratios") ) { return hx::Val( ratios ); }
  		if (HX_FIELD_EQ(inName,"remove") ) { return hx::Val( remove_dyn() ); }
  		if (HX_FIELD_EQ(inName,"window") ) { return hx::Val( window_dyn() ); }
  		if (HX_FIELD_EQ(inName,"scroll") ) { return hx::Val( scroll_dyn() ); }
  		if (HX_FIELD_EQ(inName,"button") ) { return hx::Val( button_dyn() ); }
  		if (HX_FIELD_EQ(inName,"slider") ) { return hx::Val( slider_dyn() ); }
  		if (HX_FIELD_EQ(inName,"indent") ) { return hx::Val( indent_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onCopy") ) { return hx::Val( onCopy_dyn() ); }
  		if (HX_FIELD_EQ(inName,"resize") ) { return hx::Val( resize_dyn() ); }
  		break;
  	case 7:
  		if (HX_FIELD_EQ(inName,"changed") ) { return hx::Val( changed ); }
  		if (HX_FIELD_EQ(inName,"inputDX") ) { return hx::Val( inputDX ); }
  		if (HX_FIELD_EQ(inName,"inputDY") ) { return hx::Val( inputDY ); }
  		if (HX_FIELD_EQ(inName,"cursorX") ) { return hx::Val( cursorX ); }
  		if (HX_FIELD_EQ(inName,"cursorY") ) { return hx::Val( cursorY ); }
  		if (HX_FIELD_EQ(inName,"globalG") ) { return hx::Val( globalG ); }
  		if (HX_FIELD_EQ(inName,"tooltip") ) { return hx::Val( tooltip_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onKeyUp") ) { return hx::Val( onKeyUp_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onPaste") ) { return hx::Val( onPaste_dyn() ); }
  		break;
  	case 8:
  		if (HX_FIELD_EQ(inName,"isTyping") ) { return hx::Val( isTyping ); }
  		if (HX_FIELD_EQ(inName,"isPushed") ) { return hx::Val( isPushed ); }
  		if (HX_FIELD_EQ(inName,"curRatio") ) { return hx::Val( curRatio ); }
  		if (HX_FIELD_EQ(inName,"fontSize") ) { return hx::Val( fontSize ); }
  		if (HX_FIELD_EQ(inName,"_windowX") ) { return hx::Val( _windowX ); }
  		if (HX_FIELD_EQ(inName,"_windowY") ) { return hx::Val( _windowY ); }
  		if (HX_FIELD_EQ(inName,"_windowW") ) { return hx::Val( _windowW ); }
  		if (HX_FIELD_EQ(inName,"_windowH") ) { return hx::Val( _windowH ); }
  		if (HX_FIELD_EQ(inName,"tooltipX") ) { return hx::Val( tooltipX ); }
  		if (HX_FIELD_EQ(inName,"tooltipY") ) { return hx::Val( tooltipY ); }
  		if (HX_FIELD_EQ(inName,"tabNames") ) { return hx::Val( tabNames ); }
  		if (HX_FIELD_EQ(inName,"setScale") ) { return hx::Val( setScale_dyn() ); }
  		if (HX_FIELD_EQ(inName,"endInput") ) { return hx::Val( endInput_dyn() ); }
  		if (HX_FIELD_EQ(inName,"restoreX") ) { return hx::Val( restoreX ); }
  		if (HX_FIELD_EQ(inName,"restoreY") ) { return hx::Val( restoreY ); }
  		if (HX_FIELD_EQ(inName,"drawTabs") ) { return hx::Val( drawTabs_dyn() ); }
  		if (HX_FIELD_EQ(inName,"drawTree") ) { return hx::Val( drawTree_dyn() ); }
  		if (HX_FIELD_EQ(inName,"unindent") ) { return hx::Val( unindent_dyn() ); }
  		if (HX_FIELD_EQ(inName,"drawRect") ) { return hx::Val( drawRect_dyn() ); }
  		if (HX_FIELD_EQ(inName,"getHover") ) { return hx::Val( getHover_dyn() ); }
  		if (HX_FIELD_EQ(inName,"BUTTON_H") ) { return hx::Val( BUTTON_H_dyn() ); }
  		if (HX_FIELD_EQ(inName,"SCROLL_W") ) { return hx::Val( SCROLL_W_dyn() ); }
  		break;
  	case 9:
  		if (HX_FIELD_EQ(inName,"isStarted") ) { return hx::Val( isStarted ); }
  		if (HX_FIELD_EQ(inName,"isHovered") ) { return hx::Val( isHovered ); }
  		if (HX_FIELD_EQ(inName,"inputDown") ) { return hx::Val( inputDown ); }
  		if (HX_FIELD_EQ(inName,"isKeyDown") ) { return hx::Val( isKeyDown ); }
  		if (HX_FIELD_EQ(inName,"isAltDown") ) { return hx::Val( isAltDown ); }
  		if (HX_FIELD_EQ(inName,"tabHandle") ) { return hx::Val( tabHandle ); }
  		if (HX_FIELD_EQ(inName,"tabScroll") ) { return hx::Val( tabScroll ); }
  		if (HX_FIELD_EQ(inName,"endLayout") ) { return hx::Val( endLayout_dyn() ); }
  		if (HX_FIELD_EQ(inName,"endWindow") ) { return hx::Val( endWindow_dyn() ); }
  		if (HX_FIELD_EQ(inName,"textInput") ) { return hx::Val( textInput_dyn() ); }
  		if (HX_FIELD_EQ(inName,"separator") ) { return hx::Val( separator_dyn() ); }
  		if (HX_FIELD_EQ(inName,"drawArrow") ) { return hx::Val( drawArrow_dyn() ); }
  		if (HX_FIELD_EQ(inName,"drawCheck") ) { return hx::Val( drawCheck_dyn() ); }
  		if (HX_FIELD_EQ(inName,"drawRadio") ) { return hx::Val( drawRadio_dyn() ); }
  		if (HX_FIELD_EQ(inName,"drawCombo") ) { return hx::Val( drawCombo_dyn() ); }
  		if (HX_FIELD_EQ(inName,"isVisible") ) { return hx::Val( isVisible_dyn() ); }
  		if (HX_FIELD_EQ(inName,"getPushed") ) { return hx::Val( getPushed_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onMouseUp") ) { return hx::Val( onMouseUp_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onKeyDown") ) { return hx::Val( onKeyDown_dyn() ); }
  		if (HX_FIELD_EQ(inName,"ELEMENT_W") ) { return hx::Val( ELEMENT_W_dyn() ); }
  		if (HX_FIELD_EQ(inName,"ELEMENT_H") ) { return hx::Val( ELEMENT_H_dyn() ); }
  		break;
  	case 10:
  		if (HX_FIELD_EQ(inName,"isReleased") ) { return hx::Val( isReleased ); }
  		if (HX_FIELD_EQ(inName,"inputDownR") ) { return hx::Val( inputDownR ); }
  		if (HX_FIELD_EQ(inName,"isCtrlDown") ) { return hx::Val( isCtrlDown ); }
  		if (HX_FIELD_EQ(inName,"tabPressed") ) { return hx::Val( tabPressed ); }
  		if (HX_FIELD_EQ(inName,"tooltipImg") ) { return hx::Val( tooltipImg ); }
  		if (HX_FIELD_EQ(inName,"drawSlider") ) { return hx::Val( drawSlider_dyn() ); }
  		if (HX_FIELD_EQ(inName,"drawString") ) { return hx::Val( drawString_dyn() ); }
  		if (HX_FIELD_EQ(inName,"endElement") ) { return hx::Val( endElement_dyn() ); }
  		if (HX_FIELD_EQ(inName,"getStarted") ) { return hx::Val( getStarted_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onKeyPress") ) { return hx::Val( onKeyPress_dyn() ); }
  		if (HX_FIELD_EQ(inName,"ARROW_SIZE") ) { return hx::Val( ARROW_SIZE_dyn() ); }
  		if (HX_FIELD_EQ(inName,"CHECK_SIZE") ) { return hx::Val( CHECK_SIZE_dyn() ); }
  		break;
  	case 11:
  		if (HX_FIELD_EQ(inName,"isScrolling") ) { return hx::Val( isScrolling ); }
  		if (HX_FIELD_EQ(inName,"isShiftDown") ) { return hx::Val( isShiftDown ); }
  		if (HX_FIELD_EQ(inName,"fontOffsetY") ) { return hx::Val( fontOffsetY ); }
  		if (HX_FIELD_EQ(inName,"scrollAlign") ) { return hx::Val( scrollAlign ); }
  		if (HX_FIELD_EQ(inName,"windowEnded") ) { return hx::Val( windowEnded ); }
  		if (HX_FIELD_EQ(inName,"tooltipText") ) { return hx::Val( tooltipText ); }
  		if (HX_FIELD_EQ(inName,"tooltipTime") ) { return hx::Val( tooltipTime ); }
  		if (HX_FIELD_EQ(inName,"beginLayout") ) { return hx::Val( beginLayout_dyn() ); }
  		if (HX_FIELD_EQ(inName,"windowDirty") ) { return hx::Val( windowDirty_dyn() ); }
  		if (HX_FIELD_EQ(inName,"inlineRadio") ) { return hx::Val( inlineRadio_dyn() ); }
  		if (HX_FIELD_EQ(inName,"drawTooltip") ) { return hx::Val( drawTooltip_dyn() ); }
  		if (HX_FIELD_EQ(inName,"getReleased") ) { return hx::Val( getReleased_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onMouseDown") ) { return hx::Val( onMouseDown_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onMouseMove") ) { return hx::Val( onMouseMove_dyn() ); }
  		if (HX_FIELD_EQ(inName,"TEXT_OFFSET") ) { return hx::Val( TEXT_OFFSET_dyn() ); }
  		if (HX_FIELD_EQ(inName,"FLASH_SPEED") ) { return hx::Val( FLASH_SPEED_dyn() ); }
  		break;
  	case 12:
  		if (HX_FIELD_EQ(inName,"alwaysRedraw") ) { return hx::Val( alwaysRedraw ); }
  		if (HX_FIELD_EQ(inName,"imageInvertY") ) { return hx::Val( imageInvertY ); }
  		if (HX_FIELD_EQ(inName,"inputEnabled") ) { return hx::Val( inputEnabled ); }
  		if (HX_FIELD_EQ(inName,"inputStarted") ) { return hx::Val( inputStarted ); }
  		if (HX_FIELD_EQ(inName,"isDeleteDown") ) { return hx::Val( isDeleteDown ); }
  		if (HX_FIELD_EQ(inName,"isEscapeDown") ) { return hx::Val( isEscapeDown ); }
  		if (HX_FIELD_EQ(inName,"xBeforeSplit") ) { return hx::Val( xBeforeSplit ); }
  		if (HX_FIELD_EQ(inName,"wBeforeSplit") ) { return hx::Val( wBeforeSplit ); }
  		if (HX_FIELD_EQ(inName,"arrowOffsetX") ) { return hx::Val( arrowOffsetX ); }
  		if (HX_FIELD_EQ(inName,"arrowOffsetY") ) { return hx::Val( arrowOffsetY ); }
  		if (HX_FIELD_EQ(inName,"titleOffsetX") ) { return hx::Val( titleOffsetX ); }
  		if (HX_FIELD_EQ(inName,"checkOffsetX") ) { return hx::Val( checkOffsetX ); }
  		if (HX_FIELD_EQ(inName,"checkOffsetY") ) { return hx::Val( checkOffsetY ); }
  		if (HX_FIELD_EQ(inName,"radioOffsetX") ) { return hx::Val( radioOffsetX ); }
  		if (HX_FIELD_EQ(inName,"radioOffsetY") ) { return hx::Val( radioOffsetY ); }
  		if (HX_FIELD_EQ(inName,"windowHeader") ) { return hx::Val( windowHeader ); }
  		if (HX_FIELD_EQ(inName,"textToSubmit") ) { return hx::Val( textToSubmit ); }
  		if (HX_FIELD_EQ(inName,"tooltipShown") ) { return hx::Val( tooltipShown ); }
  		if (HX_FIELD_EQ(inName,"bakeElements") ) { return hx::Val( bakeElements_dyn() ); }
  		if (HX_FIELD_EQ(inName,"inputChanged") ) { return hx::Val( inputChanged_dyn() ); }
  		if (HX_FIELD_EQ(inName,"deselectText") ) { return hx::Val( deselectText_dyn() ); }
  		if (HX_FIELD_EQ(inName,"tooltipImage") ) { return hx::Val( tooltipImage_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onMouseWheel") ) { return hx::Val( onMouseWheel_dyn() ); }
  		break;
  	case 13:
  		if (HX_FIELD_EQ(inName,"scrollEnabled") ) { return hx::Val( scrollEnabled ); }
  		if (HX_FIELD_EQ(inName,"inputInitialX") ) { return hx::Val( inputInitialX ); }
  		if (HX_FIELD_EQ(inName,"inputInitialY") ) { return hx::Val( inputInitialY ); }
  		if (HX_FIELD_EQ(inName,"inputStartedR") ) { return hx::Val( inputStartedR ); }
  		if (HX_FIELD_EQ(inName,"inputReleased") ) { return hx::Val( inputReleased ); }
  		if (HX_FIELD_EQ(inName,"buttonOffsetY") ) { return hx::Val( buttonOffsetY ); }
  		if (HX_FIELD_EQ(inName,"currentWindow") ) { return hx::Val( currentWindow ); }
  		if (HX_FIELD_EQ(inName,"comboToSubmit") ) { return hx::Val( comboToSubmit ); }
  		if (HX_FIELD_EQ(inName,"elementsBaked") ) { return hx::Val( elementsBaked ); }
  		if (HX_FIELD_EQ(inName,"registerInput") ) { return hx::Val( registerInput_dyn() ); }
  		if (HX_FIELD_EQ(inName,"startTextEdit") ) { return hx::Val( startTextEdit_dyn() ); }
  		if (HX_FIELD_EQ(inName,"LINE_STRENGTH") ) { return hx::Val( LINE_STRENGTH_dyn() ); }
  		if (HX_FIELD_EQ(inName,"TOOLTIP_DELAY") ) { return hx::Val( TOOLTIP_DELAY_dyn() ); }
  		break;
  	case 14:
  		if (HX_FIELD_EQ(inName,"inputReleasedR") ) { return hx::Val( inputReleasedR ); }
  		if (HX_FIELD_EQ(inName,"comboSelectedX") ) { return hx::Val( comboSelectedX ); }
  		if (HX_FIELD_EQ(inName,"comboSelectedY") ) { return hx::Val( comboSelectedY ); }
  		if (HX_FIELD_EQ(inName,"comboSelectedW") ) { return hx::Val( comboSelectedW ); }
  		if (HX_FIELD_EQ(inName,"tooltipInvertY") ) { return hx::Val( tooltipInvertY ); }
  		if (HX_FIELD_EQ(inName,"submitTextEdit") ) { return hx::Val( submitTextEdit_dyn() ); }
  		if (HX_FIELD_EQ(inName,"updateTextEdit") ) { return hx::Val( updateTextEdit_dyn() ); }
  		if (HX_FIELD_EQ(inName,"getInputInRect") ) { return hx::Val( getInputInRect_dyn() ); }
  		if (HX_FIELD_EQ(inName,"ELEMENT_OFFSET") ) { return hx::Val( ELEMENT_OFFSET_dyn() ); }
  		break;
  	case 15:
  		if (HX_FIELD_EQ(inName,"inputRegistered") ) { return hx::Val( inputRegistered ); }
  		if (HX_FIELD_EQ(inName,"inputWheelDelta") ) { return hx::Val( inputWheelDelta ); }
  		if (HX_FIELD_EQ(inName,"isBackspaceDown") ) { return hx::Val( isBackspaceDown ); }
  		if (HX_FIELD_EQ(inName,"highlightAnchor") ) { return hx::Val( highlightAnchor ); }
  		if (HX_FIELD_EQ(inName,"scrollingHandle") ) { return hx::Val( scrollingHandle ); }
  		if (HX_FIELD_EQ(inName,"unregisterInput") ) { return hx::Val( unregisterInput_dyn() ); }
  		if (HX_FIELD_EQ(inName,"drawInlineRadio") ) { return hx::Val( drawInlineRadio_dyn() ); }
  		if (HX_FIELD_EQ(inName,"getInitialHover") ) { return hx::Val( getInitialHover_dyn() ); }
  		break;
  	case 16:
  		if (HX_FIELD_EQ(inName,"imageScrollAlign") ) { return hx::Val( imageScrollAlign ); }
  		if (HX_FIELD_EQ(inName,"submitTextHandle") ) { return hx::Val( submitTextHandle ); }
  		if (HX_FIELD_EQ(inName,"tabPressedHandle") ) { return hx::Val( tabPressedHandle ); }
  		if (HX_FIELD_EQ(inName,"checkSelectImage") ) { return hx::Val( checkSelectImage ); }
  		if (HX_FIELD_EQ(inName,"drawTooltipImage") ) { return hx::Val( drawTooltipImage_dyn() ); }
  		if (HX_FIELD_EQ(inName,"setInputPosition") ) { return hx::Val( setInputPosition_dyn() ); }
  		break;
  	case 17:
  		if (HX_FIELD_EQ(inName,"submitComboHandle") ) { return hx::Val( submitComboHandle ); }
  		if (HX_FIELD_EQ(inName,"CHECK_SELECT_SIZE") ) { return hx::Val( CHECK_SELECT_SIZE_dyn() ); }
  		break;
  	case 18:
  		if (HX_FIELD_EQ(inName,"checkSelectOffsetX") ) { return hx::Val( checkSelectOffsetX ); }
  		if (HX_FIELD_EQ(inName,"checkSelectOffsetY") ) { return hx::Val( checkSelectOffsetY ); }
  		if (HX_FIELD_EQ(inName,"radioSelectOffsetX") ) { return hx::Val( radioSelectOffsetX ); }
  		if (HX_FIELD_EQ(inName,"radioSelectOffsetY") ) { return hx::Val( radioSelectOffsetY ); }
  		if (HX_FIELD_EQ(inName,"textSelectedHandle") ) { return hx::Val( textSelectedHandle ); }
  		if (HX_FIELD_EQ(inName,"comboSelectedAlign") ) { return hx::Val( comboSelectedAlign ); }
  		if (HX_FIELD_EQ(inName,"comboSelectedTexts") ) { return hx::Val( comboSelectedTexts ); }
  		if (HX_FIELD_EQ(inName,"comboSelectedLabel") ) { return hx::Val( comboSelectedLabel ); }
  		break;
  	case 19:
  		if (HX_FIELD_EQ(inName,"comboSelectedHandle") ) { return hx::Val( comboSelectedHandle ); }
  		if (HX_FIELD_EQ(inName,"comboSelectedWindow") ) { return hx::Val( comboSelectedWindow ); }
  		break;
  	case 23:
  		if (HX_FIELD_EQ(inName,"textSelectedCurrentText") ) { return hx::Val( textSelectedCurrentText ); }
  	}
  	return super::__Field(inName,inCallProp);
  }
  
  bool Zui_obj::__GetStatic(const ::String &inName, Dynamic &outValue, hx::PropertyAccess inCallProp)
  {
  	switch(inName.length) {
  	case 5:
  		if (HX_FIELD_EQ(inName,"isCut") ) { outValue = ( isCut ); return true; }
  		break;
  	case 6:
  		if (HX_FIELD_EQ(inName,"isCopy") ) { outValue = ( isCopy ); return true; }
  		break;
  	case 7:
  		if (HX_FIELD_EQ(inName,"isPaste") ) { outValue = ( isPaste ); return true; }
  		break;
  	case 9:
  		if (HX_FIELD_EQ(inName,"copyFrame") ) { outValue = ( copyFrame ); return true; }
  		break;
  	case 10:
  		if (HX_FIELD_EQ(inName,"textToCopy") ) { outValue = ( textToCopy ); return true; }
  		if (HX_FIELD_EQ(inName,"comboFirst") ) { outValue = ( comboFirst ); return true; }
  		break;
  	case 11:
  		if (HX_FIELD_EQ(inName,"textToPaste") ) { outValue = ( textToPaste ); return true; }
  		break;
  	case 12:
  		if (HX_FIELD_EQ(inName,"copyReceiver") ) { outValue = ( copyReceiver ); return true; }
  	}
  	return false;
  }
  
  hx::Val Zui_obj::__SetField(const ::String &inName,const hx::Val &inValue,hx::PropertyAccess inCallProp)
  {
  	switch(inName.length) {
  	case 1:
  		if (HX_FIELD_EQ(inName,"g") ) { g=inValue.Cast<  ::kha::graphics2::Graphics >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"t") ) { t=inValue.Cast<  ::Dynamic >(); return inValue; }
  		break;
  	case 2:
  		if (HX_FIELD_EQ(inName,"_x") ) { _x=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_y") ) { _y=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_w") ) { _w=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_h") ) { _h=inValue.Cast< int >(); return inValue; }
  		break;
  	case 3:
  		if (HX_FIELD_EQ(inName,"key") ) { key=inValue.Cast<  ::Dynamic >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"ops") ) { ops=inValue.Cast<  ::Dynamic >(); return inValue; }
  		break;
  	case 4:
  		if (HX_FIELD_EQ(inName,"char") ) { _hx_char=inValue.Cast< ::String >(); return inValue; }
  		break;
  	case 5:
  		if (HX_FIELD_EQ(inName,"SCALE") ) { SCALE=inValue.Cast< Float >(); return inValue; }
  		break;
  	case 6:
  		if (HX_FIELD_EQ(inName,"inputX") ) { inputX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputY") ) { inputY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"ratios") ) { ratios=inValue.Cast< ::Array< Float > >(); return inValue; }
  		break;
  	case 7:
  		if (HX_FIELD_EQ(inName,"changed") ) { changed=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputDX") ) { inputDX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputDY") ) { inputDY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"cursorX") ) { cursorX=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"cursorY") ) { cursorY=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"globalG") ) { globalG=inValue.Cast<  ::kha::graphics2::Graphics >(); return inValue; }
  		break;
  	case 8:
  		if (HX_FIELD_EQ(inName,"isTyping") ) { isTyping=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"isPushed") ) { isPushed=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"curRatio") ) { curRatio=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"fontSize") ) { fontSize=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_windowX") ) { _windowX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_windowY") ) { _windowY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_windowW") ) { _windowW=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_windowH") ) { _windowH=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tooltipX") ) { tooltipX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tooltipY") ) { tooltipY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tabNames") ) { tabNames=inValue.Cast< ::Array< ::String > >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"restoreX") ) { restoreX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"restoreY") ) { restoreY=inValue.Cast< Float >(); return inValue; }
  		break;
  	case 9:
  		if (HX_FIELD_EQ(inName,"isStarted") ) { isStarted=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"isHovered") ) { isHovered=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputDown") ) { inputDown=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"isKeyDown") ) { isKeyDown=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"isAltDown") ) { isAltDown=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tabHandle") ) { tabHandle=inValue.Cast<  ::zui::Handle >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tabScroll") ) { tabScroll=inValue.Cast< Float >(); return inValue; }
  		break;
  	case 10:
  		if (HX_FIELD_EQ(inName,"isReleased") ) { isReleased=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputDownR") ) { inputDownR=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"isCtrlDown") ) { isCtrlDown=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tabPressed") ) { tabPressed=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tooltipImg") ) { tooltipImg=inValue.Cast<  ::kha::Image >(); return inValue; }
  		break;
  	case 11:
  		if (HX_FIELD_EQ(inName,"isScrolling") ) { isScrolling=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"isShiftDown") ) { isShiftDown=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"fontOffsetY") ) { fontOffsetY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"scrollAlign") ) { scrollAlign=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"windowEnded") ) { windowEnded=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tooltipText") ) { tooltipText=inValue.Cast< ::String >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tooltipTime") ) { tooltipTime=inValue.Cast< Float >(); return inValue; }
  		break;
  	case 12:
  		if (HX_FIELD_EQ(inName,"alwaysRedraw") ) { alwaysRedraw=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"imageInvertY") ) { imageInvertY=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputEnabled") ) { inputEnabled=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputStarted") ) { inputStarted=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"isDeleteDown") ) { isDeleteDown=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"isEscapeDown") ) { isEscapeDown=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"xBeforeSplit") ) { xBeforeSplit=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"wBeforeSplit") ) { wBeforeSplit=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"arrowOffsetX") ) { arrowOffsetX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"arrowOffsetY") ) { arrowOffsetY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"titleOffsetX") ) { titleOffsetX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"checkOffsetX") ) { checkOffsetX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"checkOffsetY") ) { checkOffsetY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"radioOffsetX") ) { radioOffsetX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"radioOffsetY") ) { radioOffsetY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"windowHeader") ) { windowHeader=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"textToSubmit") ) { textToSubmit=inValue.Cast< ::String >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tooltipShown") ) { tooltipShown=inValue.Cast< bool >(); return inValue; }
  		break;
  	case 13:
  		if (HX_FIELD_EQ(inName,"scrollEnabled") ) { scrollEnabled=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputInitialX") ) { inputInitialX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputInitialY") ) { inputInitialY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputStartedR") ) { inputStartedR=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputReleased") ) { inputReleased=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"buttonOffsetY") ) { buttonOffsetY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"currentWindow") ) { currentWindow=inValue.Cast<  ::zui::Handle >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"comboToSubmit") ) { comboToSubmit=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"elementsBaked") ) { elementsBaked=inValue.Cast< bool >(); return inValue; }
  		break;
  	case 14:
  		if (HX_FIELD_EQ(inName,"inputReleasedR") ) { inputReleasedR=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"comboSelectedX") ) { comboSelectedX=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"comboSelectedY") ) { comboSelectedY=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"comboSelectedW") ) { comboSelectedW=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tooltipInvertY") ) { tooltipInvertY=inValue.Cast< bool >(); return inValue; }
  		break;
  	case 15:
  		if (HX_FIELD_EQ(inName,"inputRegistered") ) { inputRegistered=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"inputWheelDelta") ) { inputWheelDelta=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"isBackspaceDown") ) { isBackspaceDown=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"highlightAnchor") ) { highlightAnchor=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"scrollingHandle") ) { scrollingHandle=inValue.Cast<  ::zui::Handle >(); return inValue; }
  		break;
  	case 16:
  		if (HX_FIELD_EQ(inName,"imageScrollAlign") ) { imageScrollAlign=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"submitTextHandle") ) { submitTextHandle=inValue.Cast<  ::zui::Handle >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"tabPressedHandle") ) { tabPressedHandle=inValue.Cast<  ::zui::Handle >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"checkSelectImage") ) { checkSelectImage=inValue.Cast<  ::kha::Image >(); return inValue; }
  		break;
  	case 17:
  		if (HX_FIELD_EQ(inName,"submitComboHandle") ) { submitComboHandle=inValue.Cast<  ::zui::Handle >(); return inValue; }
  		break;
  	case 18:
  		if (HX_FIELD_EQ(inName,"checkSelectOffsetX") ) { checkSelectOffsetX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"checkSelectOffsetY") ) { checkSelectOffsetY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"radioSelectOffsetX") ) { radioSelectOffsetX=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"radioSelectOffsetY") ) { radioSelectOffsetY=inValue.Cast< Float >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"textSelectedHandle") ) { textSelectedHandle=inValue.Cast<  ::zui::Handle >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"comboSelectedAlign") ) { comboSelectedAlign=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"comboSelectedTexts") ) { comboSelectedTexts=inValue.Cast< ::Array< ::String > >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"comboSelectedLabel") ) { comboSelectedLabel=inValue.Cast< ::String >(); return inValue; }
  		break;
  	case 19:
  		if (HX_FIELD_EQ(inName,"comboSelectedHandle") ) { comboSelectedHandle=inValue.Cast<  ::zui::Handle >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"comboSelectedWindow") ) { comboSelectedWindow=inValue.Cast<  ::zui::Handle >(); return inValue; }
  		break;
  	case 23:
  		if (HX_FIELD_EQ(inName,"textSelectedCurrentText") ) { textSelectedCurrentText=inValue.Cast< ::String >(); return inValue; }
  	}
  	return super::__SetField(inName,inValue,inCallProp);
  }
  
  bool Zui_obj::__SetStatic(const ::String &inName,Dynamic &ioValue,hx::PropertyAccess inCallProp)
  {
  	switch(inName.length) {
  	case 5:
  		if (HX_FIELD_EQ(inName,"isCut") ) { isCut=ioValue.Cast< bool >(); return true; }
  		break;
  	case 6:
  		if (HX_FIELD_EQ(inName,"isCopy") ) { isCopy=ioValue.Cast< bool >(); return true; }
  		break;
  	case 7:
  		if (HX_FIELD_EQ(inName,"isPaste") ) { isPaste=ioValue.Cast< bool >(); return true; }
  		break;
  	case 9:
  		if (HX_FIELD_EQ(inName,"copyFrame") ) { copyFrame=ioValue.Cast< int >(); return true; }
  		break;
  	case 10:
  		if (HX_FIELD_EQ(inName,"textToCopy") ) { textToCopy=ioValue.Cast< ::String >(); return true; }
  		if (HX_FIELD_EQ(inName,"comboFirst") ) { comboFirst=ioValue.Cast< bool >(); return true; }
  		break;
  	case 11:
  		if (HX_FIELD_EQ(inName,"textToPaste") ) { textToPaste=ioValue.Cast< ::String >(); return true; }
  		break;
  	case 12:
  		if (HX_FIELD_EQ(inName,"copyReceiver") ) { copyReceiver=ioValue.Cast<  ::zui::Zui >(); return true; }
  	}
  	return false;
  }
  
  void Zui_obj::__GetFields(Array< ::String> &outFields)
  {
  	outFields->push(HX_("isScrolling",ab,b1,9a,1c));
  	outFields->push(HX_("isTyping",01,9a,a3,af));
  	outFields->push(HX_("isStarted",77,a6,19,39));
  	outFields->push(HX_("isPushed",43,b0,96,ca));
  	outFields->push(HX_("isHovered",51,a2,b5,7e));
  	outFields->push(HX_("isReleased",c7,9a,96,f1));
  	outFields->push(HX_("changed",f4,b0,cc,cc));
  	outFields->push(HX_("alwaysRedraw",66,ed,9c,81));
  	outFields->push(HX_("imageInvertY",68,c6,b9,2d));
  	outFields->push(HX_("scrollEnabled",f4,1f,78,f0));
  	outFields->push(HX_("inputRegistered",2c,96,7c,a2));
  	outFields->push(HX_("inputEnabled",97,5d,5d,16));
  	outFields->push(HX_("inputX",0e,c5,ed,9b));
  	outFields->push(HX_("inputY",0f,c5,ed,9b));
  	outFields->push(HX_("inputInitialX",7e,fd,30,ee));
  	outFields->push(HX_("inputInitialY",7f,fd,30,ee));
  	outFields->push(HX_("inputDX",1e,96,1e,d4));
  	outFields->push(HX_("inputDY",1f,96,1e,d4));
  	outFields->push(HX_("inputWheelDelta",07,8a,4a,54));
  	outFields->push(HX_("inputStarted",57,82,47,cd));
  	outFields->push(HX_("inputStartedR",1b,8a,4a,d1));
  	outFields->push(HX_("inputReleased",e7,22,89,05));
  	outFields->push(HX_("inputReleasedR",8b,67,75,d2));
  	outFields->push(HX_("inputDown",8c,b5,98,09));
  	outFields->push(HX_("inputDownR",46,25,06,5c));
  	outFields->push(HX_("isKeyDown",d7,e6,45,a0));
  	outFields->push(HX_("isShiftDown",ba,30,e8,ab));
  	outFields->push(HX_("isCtrlDown",b7,f0,27,62));
  	outFields->push(HX_("isAltDown",61,e3,ed,eb));
  	outFields->push(HX_("isBackspaceDown",f7,fe,97,1d));
  	outFields->push(HX_("isDeleteDown",b7,fe,d9,67));
  	outFields->push(HX_("isEscapeDown",0d,e5,ce,6e));
  	outFields->push(HX_("key",9f,89,51,00));
  	outFields->push(HX_("char",d6,5e,bf,41));
  	outFields->push(HX_("cursorX",c2,6c,94,cc));
  	outFields->push(HX_("cursorY",c3,6c,94,cc));
  	outFields->push(HX_("highlightAnchor",c9,a3,46,ea));
  	outFields->push(HX_("ratios",08,35,8a,bb));
  	outFields->push(HX_("curRatio",6b,2f,d2,2b));
  	outFields->push(HX_("xBeforeSplit",43,54,ba,bc));
  	outFields->push(HX_("wBeforeSplit",a4,e6,fa,7a));
  	outFields->push(HX_("g",67,00,00,00));
  	outFields->push(HX_("globalG",84,05,39,14));
  	outFields->push(HX_("t",74,00,00,00));
  	outFields->push(HX_("SCALE",6a,06,bd,f6));
  	outFields->push(HX_("ops",32,9c,54,00));
  	outFields->push(HX_("fontSize",30,be,d1,ce));
  	outFields->push(HX_("fontOffsetY",57,bb,35,ec));
  	outFields->push(HX_("arrowOffsetX",9c,72,93,9f));
  	outFields->push(HX_("arrowOffsetY",9d,72,93,9f));
  	outFields->push(HX_("titleOffsetX",ad,7e,2b,fb));
  	outFields->push(HX_("buttonOffsetY",94,d1,c3,f5));
  	outFields->push(HX_("checkOffsetX",7d,c1,eb,c4));
  	outFields->push(HX_("checkOffsetY",7e,c1,eb,c4));
  	outFields->push(HX_("checkSelectOffsetX",e1,87,86,cd));
  	outFields->push(HX_("checkSelectOffsetY",e2,87,86,cd));
  	outFields->push(HX_("radioOffsetX",aa,05,36,2f));
  	outFields->push(HX_("radioOffsetY",ab,05,36,2f));
  	outFields->push(HX_("radioSelectOffsetX",ce,ab,21,0e));
  	outFields->push(HX_("radioSelectOffsetY",cf,ab,21,0e));
  	outFields->push(HX_("scrollAlign",78,9f,6e,6b));
  	outFields->push(HX_("imageScrollAlign",dd,6f,2a,36));
  	outFields->push(HX_("_x",39,53,00,00));
  	outFields->push(HX_("_y",3a,53,00,00));
  	outFields->push(HX_("_w",38,53,00,00));
  	outFields->push(HX_("_h",29,53,00,00));
  	outFields->push(HX_("_windowX",e9,37,2d,22));
  	outFields->push(HX_("_windowY",ea,37,2d,22));
  	outFields->push(HX_("_windowW",e8,37,2d,22));
  	outFields->push(HX_("_windowH",d9,37,2d,22));
  	outFields->push(HX_("currentWindow",09,15,e9,35));
  	outFields->push(HX_("windowEnded",ea,de,4c,61));
  	outFields->push(HX_("scrollingHandle",7d,18,6e,05));
  	outFields->push(HX_("windowHeader",9d,a5,70,c4));
  	outFields->push(HX_("textSelectedHandle",f0,2d,c3,c5));
  	outFields->push(HX_("textSelectedCurrentText",3e,b6,af,e2));
  	outFields->push(HX_("submitTextHandle",6d,6e,dd,0c));
  	outFields->push(HX_("textToSubmit",c0,7d,c0,f5));
  	outFields->push(HX_("tabPressed",cd,c4,be,fb));
  	outFields->push(HX_("tabPressedHandle",55,d4,6b,06));
  	outFields->push(HX_("comboSelectedHandle",51,41,6f,6e));
  	outFields->push(HX_("comboSelectedWindow",99,51,fe,08));
  	outFields->push(HX_("comboSelectedAlign",3c,c1,1c,85));
  	outFields->push(HX_("comboSelectedTexts",9d,b5,24,71));
  	outFields->push(HX_("comboSelectedLabel",6b,78,3a,d3));
  	outFields->push(HX_("comboSelectedX",6f,23,59,6b));
  	outFields->push(HX_("comboSelectedY",70,23,59,6b));
  	outFields->push(HX_("comboSelectedW",6e,23,59,6b));
  	outFields->push(HX_("submitComboHandle",5e,d5,54,f4));
  	outFields->push(HX_("comboToSubmit",61,e2,49,08));
  	outFields->push(HX_("tooltipText",50,e3,ed,e4));
  	outFields->push(HX_("tooltipImg",c0,da,10,11));
  	outFields->push(HX_("tooltipInvertY",c0,bd,ec,0c));
  	outFields->push(HX_("tooltipX",f5,b5,8a,d0));
  	outFields->push(HX_("tooltipY",f6,b5,8a,d0));
  	outFields->push(HX_("tooltipShown",ce,40,c7,d9));
  	outFields->push(HX_("tooltipTime",b0,e2,f0,e4));
  	outFields->push(HX_("tabNames",33,11,29,05));
  	outFields->push(HX_("tabHandle",dd,3f,4a,19));
  	outFields->push(HX_("tabScroll",42,94,b1,a8));
  	outFields->push(HX_("elementsBaked",74,67,ba,d9));
  	outFields->push(HX_("checkSelectImage",d7,c6,b4,cb));
  	outFields->push(HX_("restoreX",4a,fd,a9,ef));
  	outFields->push(HX_("restoreY",4b,fd,a9,ef));
  	super::__GetFields(outFields);
  };
  
  #ifdef HXCPP_SCRIPTABLE
  static hx::StorageInfo Zui_obj_sMemberStorageInfo[] = {
  	{hx::fsBool,(int)offsetof(Zui_obj,isScrolling),HX_("isScrolling",ab,b1,9a,1c)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isTyping),HX_("isTyping",01,9a,a3,af)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isStarted),HX_("isStarted",77,a6,19,39)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isPushed),HX_("isPushed",43,b0,96,ca)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isHovered),HX_("isHovered",51,a2,b5,7e)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isReleased),HX_("isReleased",c7,9a,96,f1)},
  	{hx::fsBool,(int)offsetof(Zui_obj,changed),HX_("changed",f4,b0,cc,cc)},
  	{hx::fsBool,(int)offsetof(Zui_obj,alwaysRedraw),HX_("alwaysRedraw",66,ed,9c,81)},
  	{hx::fsBool,(int)offsetof(Zui_obj,imageInvertY),HX_("imageInvertY",68,c6,b9,2d)},
  	{hx::fsBool,(int)offsetof(Zui_obj,scrollEnabled),HX_("scrollEnabled",f4,1f,78,f0)},
  	{hx::fsBool,(int)offsetof(Zui_obj,inputRegistered),HX_("inputRegistered",2c,96,7c,a2)},
  	{hx::fsBool,(int)offsetof(Zui_obj,inputEnabled),HX_("inputEnabled",97,5d,5d,16)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,inputX),HX_("inputX",0e,c5,ed,9b)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,inputY),HX_("inputY",0f,c5,ed,9b)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,inputInitialX),HX_("inputInitialX",7e,fd,30,ee)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,inputInitialY),HX_("inputInitialY",7f,fd,30,ee)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,inputDX),HX_("inputDX",1e,96,1e,d4)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,inputDY),HX_("inputDY",1f,96,1e,d4)},
  	{hx::fsInt,(int)offsetof(Zui_obj,inputWheelDelta),HX_("inputWheelDelta",07,8a,4a,54)},
  	{hx::fsBool,(int)offsetof(Zui_obj,inputStarted),HX_("inputStarted",57,82,47,cd)},
  	{hx::fsBool,(int)offsetof(Zui_obj,inputStartedR),HX_("inputStartedR",1b,8a,4a,d1)},
  	{hx::fsBool,(int)offsetof(Zui_obj,inputReleased),HX_("inputReleased",e7,22,89,05)},
  	{hx::fsBool,(int)offsetof(Zui_obj,inputReleasedR),HX_("inputReleasedR",8b,67,75,d2)},
  	{hx::fsBool,(int)offsetof(Zui_obj,inputDown),HX_("inputDown",8c,b5,98,09)},
  	{hx::fsBool,(int)offsetof(Zui_obj,inputDownR),HX_("inputDownR",46,25,06,5c)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isKeyDown),HX_("isKeyDown",d7,e6,45,a0)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isShiftDown),HX_("isShiftDown",ba,30,e8,ab)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isCtrlDown),HX_("isCtrlDown",b7,f0,27,62)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isAltDown),HX_("isAltDown",61,e3,ed,eb)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isBackspaceDown),HX_("isBackspaceDown",f7,fe,97,1d)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isDeleteDown),HX_("isDeleteDown",b7,fe,d9,67)},
  	{hx::fsBool,(int)offsetof(Zui_obj,isEscapeDown),HX_("isEscapeDown",0d,e5,ce,6e)},
  	{hx::fsObject /*  ::Dynamic */ ,(int)offsetof(Zui_obj,key),HX_("key",9f,89,51,00)},
  	{hx::fsString,(int)offsetof(Zui_obj,_hx_char),HX_("char",d6,5e,bf,41)},
  	{hx::fsInt,(int)offsetof(Zui_obj,cursorX),HX_("cursorX",c2,6c,94,cc)},
  	{hx::fsInt,(int)offsetof(Zui_obj,cursorY),HX_("cursorY",c3,6c,94,cc)},
  	{hx::fsInt,(int)offsetof(Zui_obj,highlightAnchor),HX_("highlightAnchor",c9,a3,46,ea)},
  	{hx::fsObject /* ::Array< Float > */ ,(int)offsetof(Zui_obj,ratios),HX_("ratios",08,35,8a,bb)},
  	{hx::fsInt,(int)offsetof(Zui_obj,curRatio),HX_("curRatio",6b,2f,d2,2b)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,xBeforeSplit),HX_("xBeforeSplit",43,54,ba,bc)},
  	{hx::fsInt,(int)offsetof(Zui_obj,wBeforeSplit),HX_("wBeforeSplit",a4,e6,fa,7a)},
  	{hx::fsObject /*  ::kha::graphics2::Graphics */ ,(int)offsetof(Zui_obj,g),HX_("g",67,00,00,00)},
  	{hx::fsObject /*  ::kha::graphics2::Graphics */ ,(int)offsetof(Zui_obj,globalG),HX_("globalG",84,05,39,14)},
  	{hx::fsObject /*  ::Dynamic */ ,(int)offsetof(Zui_obj,t),HX_("t",74,00,00,00)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,SCALE),HX_("SCALE",6a,06,bd,f6)},
  	{hx::fsObject /*  ::Dynamic */ ,(int)offsetof(Zui_obj,ops),HX_("ops",32,9c,54,00)},
  	{hx::fsInt,(int)offsetof(Zui_obj,fontSize),HX_("fontSize",30,be,d1,ce)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,fontOffsetY),HX_("fontOffsetY",57,bb,35,ec)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,arrowOffsetX),HX_("arrowOffsetX",9c,72,93,9f)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,arrowOffsetY),HX_("arrowOffsetY",9d,72,93,9f)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,titleOffsetX),HX_("titleOffsetX",ad,7e,2b,fb)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,buttonOffsetY),HX_("buttonOffsetY",94,d1,c3,f5)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,checkOffsetX),HX_("checkOffsetX",7d,c1,eb,c4)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,checkOffsetY),HX_("checkOffsetY",7e,c1,eb,c4)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,checkSelectOffsetX),HX_("checkSelectOffsetX",e1,87,86,cd)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,checkSelectOffsetY),HX_("checkSelectOffsetY",e2,87,86,cd)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,radioOffsetX),HX_("radioOffsetX",aa,05,36,2f)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,radioOffsetY),HX_("radioOffsetY",ab,05,36,2f)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,radioSelectOffsetX),HX_("radioSelectOffsetX",ce,ab,21,0e)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,radioSelectOffsetY),HX_("radioSelectOffsetY",cf,ab,21,0e)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,scrollAlign),HX_("scrollAlign",78,9f,6e,6b)},
  	{hx::fsBool,(int)offsetof(Zui_obj,imageScrollAlign),HX_("imageScrollAlign",dd,6f,2a,36)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,_x),HX_("_x",39,53,00,00)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,_y),HX_("_y",3a,53,00,00)},
  	{hx::fsInt,(int)offsetof(Zui_obj,_w),HX_("_w",38,53,00,00)},
  	{hx::fsInt,(int)offsetof(Zui_obj,_h),HX_("_h",29,53,00,00)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,_windowX),HX_("_windowX",e9,37,2d,22)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,_windowY),HX_("_windowY",ea,37,2d,22)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,_windowW),HX_("_windowW",e8,37,2d,22)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,_windowH),HX_("_windowH",d9,37,2d,22)},
  	{hx::fsObject /*  ::zui::Handle */ ,(int)offsetof(Zui_obj,currentWindow),HX_("currentWindow",09,15,e9,35)},
  	{hx::fsBool,(int)offsetof(Zui_obj,windowEnded),HX_("windowEnded",ea,de,4c,61)},
  	{hx::fsObject /*  ::zui::Handle */ ,(int)offsetof(Zui_obj,scrollingHandle),HX_("scrollingHandle",7d,18,6e,05)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,windowHeader),HX_("windowHeader",9d,a5,70,c4)},
  	{hx::fsObject /*  ::zui::Handle */ ,(int)offsetof(Zui_obj,textSelectedHandle),HX_("textSelectedHandle",f0,2d,c3,c5)},
  	{hx::fsString,(int)offsetof(Zui_obj,textSelectedCurrentText),HX_("textSelectedCurrentText",3e,b6,af,e2)},
  	{hx::fsObject /*  ::zui::Handle */ ,(int)offsetof(Zui_obj,submitTextHandle),HX_("submitTextHandle",6d,6e,dd,0c)},
  	{hx::fsString,(int)offsetof(Zui_obj,textToSubmit),HX_("textToSubmit",c0,7d,c0,f5)},
  	{hx::fsBool,(int)offsetof(Zui_obj,tabPressed),HX_("tabPressed",cd,c4,be,fb)},
  	{hx::fsObject /*  ::zui::Handle */ ,(int)offsetof(Zui_obj,tabPressedHandle),HX_("tabPressedHandle",55,d4,6b,06)},
  	{hx::fsObject /*  ::zui::Handle */ ,(int)offsetof(Zui_obj,comboSelectedHandle),HX_("comboSelectedHandle",51,41,6f,6e)},
  	{hx::fsObject /*  ::zui::Handle */ ,(int)offsetof(Zui_obj,comboSelectedWindow),HX_("comboSelectedWindow",99,51,fe,08)},
  	{hx::fsInt,(int)offsetof(Zui_obj,comboSelectedAlign),HX_("comboSelectedAlign",3c,c1,1c,85)},
  	{hx::fsObject /* ::Array< ::String > */ ,(int)offsetof(Zui_obj,comboSelectedTexts),HX_("comboSelectedTexts",9d,b5,24,71)},
  	{hx::fsString,(int)offsetof(Zui_obj,comboSelectedLabel),HX_("comboSelectedLabel",6b,78,3a,d3)},
  	{hx::fsInt,(int)offsetof(Zui_obj,comboSelectedX),HX_("comboSelectedX",6f,23,59,6b)},
  	{hx::fsInt,(int)offsetof(Zui_obj,comboSelectedY),HX_("comboSelectedY",70,23,59,6b)},
  	{hx::fsInt,(int)offsetof(Zui_obj,comboSelectedW),HX_("comboSelectedW",6e,23,59,6b)},
  	{hx::fsObject /*  ::zui::Handle */ ,(int)offsetof(Zui_obj,submitComboHandle),HX_("submitComboHandle",5e,d5,54,f4)},
  	{hx::fsInt,(int)offsetof(Zui_obj,comboToSubmit),HX_("comboToSubmit",61,e2,49,08)},
  	{hx::fsString,(int)offsetof(Zui_obj,tooltipText),HX_("tooltipText",50,e3,ed,e4)},
  	{hx::fsObject /*  ::kha::Image */ ,(int)offsetof(Zui_obj,tooltipImg),HX_("tooltipImg",c0,da,10,11)},
  	{hx::fsBool,(int)offsetof(Zui_obj,tooltipInvertY),HX_("tooltipInvertY",c0,bd,ec,0c)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,tooltipX),HX_("tooltipX",f5,b5,8a,d0)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,tooltipY),HX_("tooltipY",f6,b5,8a,d0)},
  	{hx::fsBool,(int)offsetof(Zui_obj,tooltipShown),HX_("tooltipShown",ce,40,c7,d9)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,tooltipTime),HX_("tooltipTime",b0,e2,f0,e4)},
  	{hx::fsObject /* ::Array< ::String > */ ,(int)offsetof(Zui_obj,tabNames),HX_("tabNames",33,11,29,05)},
  	{hx::fsObject /*  ::zui::Handle */ ,(int)offsetof(Zui_obj,tabHandle),HX_("tabHandle",dd,3f,4a,19)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,tabScroll),HX_("tabScroll",42,94,b1,a8)},
  	{hx::fsBool,(int)offsetof(Zui_obj,elementsBaked),HX_("elementsBaked",74,67,ba,d9)},
  	{hx::fsObject /*  ::kha::Image */ ,(int)offsetof(Zui_obj,checkSelectImage),HX_("checkSelectImage",d7,c6,b4,cb)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,restoreX),HX_("restoreX",4a,fd,a9,ef)},
  	{hx::fsFloat,(int)offsetof(Zui_obj,restoreY),HX_("restoreY",4b,fd,a9,ef)},
  	{ hx::fsUnknown, 0, null()}
  };
  static hx::StaticInfo Zui_obj_sStaticStorageInfo[] = {
  	{hx::fsString,(void *) &Zui_obj::textToPaste,HX_("textToPaste",ab,9a,5a,65)},
  	{hx::fsString,(void *) &Zui_obj::textToCopy,HX_("textToCopy",5d,a7,6e,ae)},
  	{hx::fsBool,(void *) &Zui_obj::isCut,HX_("isCut",b8,af,49,c1)},
  	{hx::fsBool,(void *) &Zui_obj::isCopy,HX_("isCopy",bf,80,2b,5f)},
  	{hx::fsBool,(void *) &Zui_obj::isPaste,HX_("isPaste",09,f7,db,59)},
  	{hx::fsObject /*  ::zui::Zui */ ,(void *) &Zui_obj::copyReceiver,HX_("copyReceiver",04,fa,d5,de)},
  	{hx::fsInt,(void *) &Zui_obj::copyFrame,HX_("copyFrame",38,9c,7e,8c)},
  	{hx::fsBool,(void *) &Zui_obj::comboFirst,HX_("comboFirst",02,e5,92,0e)},
  	{ hx::fsUnknown, 0, null()}
  };
  #endif
  
  static ::String Zui_obj_sMemberFields[] = {
  	HX_("isScrolling",ab,b1,9a,1c),
  	HX_("isTyping",01,9a,a3,af),
  	HX_("isStarted",77,a6,19,39),
  	HX_("isPushed",43,b0,96,ca),
  	HX_("isHovered",51,a2,b5,7e),
  	HX_("isReleased",c7,9a,96,f1),
  	HX_("changed",f4,b0,cc,cc),
  	HX_("alwaysRedraw",66,ed,9c,81),
  	HX_("imageInvertY",68,c6,b9,2d),
  	HX_("scrollEnabled",f4,1f,78,f0),
  	HX_("inputRegistered",2c,96,7c,a2),
  	HX_("inputEnabled",97,5d,5d,16),
  	HX_("inputX",0e,c5,ed,9b),
  	HX_("inputY",0f,c5,ed,9b),
  	HX_("inputInitialX",7e,fd,30,ee),
  	HX_("inputInitialY",7f,fd,30,ee),
  	HX_("inputDX",1e,96,1e,d4),
  	HX_("inputDY",1f,96,1e,d4),
  	HX_("inputWheelDelta",07,8a,4a,54),
  	HX_("inputStarted",57,82,47,cd),
  	HX_("inputStartedR",1b,8a,4a,d1),
  	HX_("inputReleased",e7,22,89,05),
  	HX_("inputReleasedR",8b,67,75,d2),
  	HX_("inputDown",8c,b5,98,09),
  	HX_("inputDownR",46,25,06,5c),
  	HX_("isKeyDown",d7,e6,45,a0),
  	HX_("isShiftDown",ba,30,e8,ab),
  	HX_("isCtrlDown",b7,f0,27,62),
  	HX_("isAltDown",61,e3,ed,eb),
  	HX_("isBackspaceDown",f7,fe,97,1d),
  	HX_("isDeleteDown",b7,fe,d9,67),
  	HX_("isEscapeDown",0d,e5,ce,6e),
  	HX_("key",9f,89,51,00),
  	HX_("char",d6,5e,bf,41),
  	HX_("cursorX",c2,6c,94,cc),
  	HX_("cursorY",c3,6c,94,cc),
  	HX_("highlightAnchor",c9,a3,46,ea),
  	HX_("ratios",08,35,8a,bb),
  	HX_("curRatio",6b,2f,d2,2b),
  	HX_("xBeforeSplit",43,54,ba,bc),
  	HX_("wBeforeSplit",a4,e6,fa,7a),
  	HX_("g",67,00,00,00),
  	HX_("globalG",84,05,39,14),
  	HX_("t",74,00,00,00),
  	HX_("SCALE",6a,06,bd,f6),
  	HX_("ops",32,9c,54,00),
  	HX_("fontSize",30,be,d1,ce),
  	HX_("fontOffsetY",57,bb,35,ec),
  	HX_("arrowOffsetX",9c,72,93,9f),
  	HX_("arrowOffsetY",9d,72,93,9f),
  	HX_("titleOffsetX",ad,7e,2b,fb),
  	HX_("buttonOffsetY",94,d1,c3,f5),
  	HX_("checkOffsetX",7d,c1,eb,c4),
  	HX_("checkOffsetY",7e,c1,eb,c4),
  	HX_("checkSelectOffsetX",e1,87,86,cd),
  	HX_("checkSelectOffsetY",e2,87,86,cd),
  	HX_("radioOffsetX",aa,05,36,2f),
  	HX_("radioOffsetY",ab,05,36,2f),
  	HX_("radioSelectOffsetX",ce,ab,21,0e),
  	HX_("radioSelectOffsetY",cf,ab,21,0e),
  	HX_("scrollAlign",78,9f,6e,6b),
  	HX_("imageScrollAlign",dd,6f,2a,36),
  	HX_("_x",39,53,00,00),
  	HX_("_y",3a,53,00,00),
  	HX_("_w",38,53,00,00),
  	HX_("_h",29,53,00,00),
  	HX_("_windowX",e9,37,2d,22),
  	HX_("_windowY",ea,37,2d,22),
  	HX_("_windowW",e8,37,2d,22),
  	HX_("_windowH",d9,37,2d,22),
  	HX_("currentWindow",09,15,e9,35),
  	HX_("windowEnded",ea,de,4c,61),
  	HX_("scrollingHandle",7d,18,6e,05),
  	HX_("windowHeader",9d,a5,70,c4),
  	HX_("textSelectedHandle",f0,2d,c3,c5),
  	HX_("textSelectedCurrentText",3e,b6,af,e2),
  	HX_("submitTextHandle",6d,6e,dd,0c),
  	HX_("textToSubmit",c0,7d,c0,f5),
  	HX_("tabPressed",cd,c4,be,fb),
  	HX_("tabPressedHandle",55,d4,6b,06),
  	HX_("comboSelectedHandle",51,41,6f,6e),
  	HX_("comboSelectedWindow",99,51,fe,08),
  	HX_("comboSelectedAlign",3c,c1,1c,85),
  	HX_("comboSelectedTexts",9d,b5,24,71),
  	HX_("comboSelectedLabel",6b,78,3a,d3),
  	HX_("comboSelectedX",6f,23,59,6b),
  	HX_("comboSelectedY",70,23,59,6b),
  	HX_("comboSelectedW",6e,23,59,6b),
  	HX_("submitComboHandle",5e,d5,54,f4),
  	HX_("comboToSubmit",61,e2,49,08),
  	HX_("tooltipText",50,e3,ed,e4),
  	HX_("tooltipImg",c0,da,10,11),
  	HX_("tooltipInvertY",c0,bd,ec,0c),
  	HX_("tooltipX",f5,b5,8a,d0),
  	HX_("tooltipY",f6,b5,8a,d0),
  	HX_("tooltipShown",ce,40,c7,d9),
  	HX_("tooltipTime",b0,e2,f0,e4),
  	HX_("tabNames",33,11,29,05),
  	HX_("tabHandle",dd,3f,4a,19),
  	HX_("tabScroll",42,94,b1,a8),
  	HX_("elementsBaked",74,67,ba,d9),
  	HX_("checkSelectImage",d7,c6,b4,cb),
  	HX_("setScale",88,37,03,87),
  	HX_("bakeElements",70,14,63,f5),
  	HX_("remove",44,9c,88,04),
  	HX_("registerInput",a7,86,86,b3),
  	HX_("unregisterInput",ae,5c,00,71),
  	HX_("begin",29,ea,55,b0),
  	HX_("end",db,03,4d,00),
  	HX_("endInput",2f,56,1b,bc),
  	HX_("beginLayout",b3,91,de,f2),
  	HX_("endLayout",e5,fc,9a,98),
  	HX_("inputChanged",0a,0a,f9,64),
  	HX_("windowDirty",02,e6,a2,ca),
  	HX_("window",f0,93,8c,52),
  	HX_("endWindow",2b,e2,6e,92),
  	HX_("scroll",0d,d8,64,47),
  	HX_("restoreX",4a,fd,a9,ef),
  	HX_("restoreY",4b,fd,a9,ef),
  	HX_("tab",55,5a,58,00),
  	HX_("drawTabs",a2,5a,60,61),
  	HX_("panel",04,7b,52,bd),
  	HX_("image",5b,1f,69,bd),
  	HX_("text",ad,cc,f9,4c),
  	HX_("startTextEdit",d9,7f,c5,4a),
  	HX_("submitTextEdit",8f,09,7c,f2),
  	HX_("updateTextEdit",80,10,34,7b),
  	HX_("textInput",1d,54,0b,57),
  	HX_("deselectText",8a,64,1c,42),
  	HX_("button",f2,61,e0,d9),
  	HX_("check",c8,98,b6,45),
  	HX_("radio",fb,10,18,e4),
  	HX_("inlineRadio",e2,93,4c,a6),
  	HX_("combo",4e,28,5d,4a),
  	HX_("slider",21,c6,04,70),
  	HX_("separator",65,60,7f,31),
  	HX_("tooltip",03,ad,8c,6a),
  	HX_("tooltipImage",58,d7,08,1b),
  	HX_("drawArrow",25,af,9a,ed),
  	HX_("drawTree",82,43,6d,61),
  	HX_("drawCheck",24,ce,c1,0d),
  	HX_("drawRadio",57,46,23,ac),
  	HX_("drawInlineRadio",3e,36,e4,6b),
  	HX_("drawSlider",45,41,c8,b1),
  	HX_("drawCombo",aa,5d,68,12),
  	HX_("drawTooltip",5f,f1,d4,b3),
  	HX_("drawTooltipImage",7c,45,1f,3a),
  	HX_("drawString",f5,a3,f3,52),
  	HX_("endElement",21,d4,76,ac),
  	HX_("row",1a,e2,56,00),
  	HX_("indent",6c,0c,f3,93),
  	HX_("unindent",85,3b,3a,96),
  	HX_("fill",83,ce,bb,43),
  	HX_("rect",24,4d,a7,4b),
  	HX_("drawRect",48,f7,10,60),
  	HX_("isVisible",a8,f5,22,a7),
  	HX_("getReleased",73,4b,db,9c),
  	HX_("getPushed",ef,9d,83,ee),
  	HX_("getStarted",4b,af,7c,84),
  	HX_("getInitialHover",4e,3c,5f,12),
  	HX_("getHover",46,f5,3b,8b),
  	HX_("getInputInRect",5d,5a,df,04),
  	HX_("onMouseDown",08,94,05,11),
  	HX_("onMouseUp",81,ac,1d,98),
  	HX_("onMouseMove",b7,7e,f8,16),
  	HX_("onMouseWheel",35,ca,ca,bf),
  	HX_("setInputPosition",d1,d1,fe,19),
  	HX_("onKeyDown",42,22,f2,73),
  	HX_("onKeyUp",3b,58,3c,75),
  	HX_("onKeyPress",a3,cd,a8,ea),
  	HX_("onCut",a3,19,63,32),
  	HX_("onCopy",74,c4,4e,e4),
  	HX_("onPaste",b4,f1,93,53),
  	HX_("ELEMENT_W",b4,b4,43,c3),
  	HX_("ELEMENT_H",a5,b4,43,c3),
  	HX_("ELEMENT_OFFSET",16,9e,c2,08),
  	HX_("ARROW_SIZE",57,2e,b6,3e),
  	HX_("BUTTON_H",7b,41,b8,b5),
  	HX_("CHECK_SIZE",f8,52,03,db),
  	HX_("CHECK_SELECT_SIZE",cd,c6,a9,44),
  	HX_("SCROLL_W",65,b4,da,e5),
  	HX_("TEXT_OFFSET",25,60,d0,e5),
  	HX_("TAB_W",8d,00,d2,88),
  	HX_("LINE_STRENGTH",6c,db,3c,bc),
  	HX_("FLASH_SPEED",38,10,dc,1a),
  	HX_("TOOLTIP_DELAY",c7,23,45,de),
  	HX_("resize",f4,59,7b,08),
  	::String(null()) };
  
  static void Zui_obj_sMarkStatics(HX_MARK_PARAMS) {
  	HX_MARK_MEMBER_NAME(Zui_obj::textToPaste,"textToPaste");
  	HX_MARK_MEMBER_NAME(Zui_obj::textToCopy,"textToCopy");
  	HX_MARK_MEMBER_NAME(Zui_obj::isCut,"isCut");
  	HX_MARK_MEMBER_NAME(Zui_obj::isCopy,"isCopy");
  	HX_MARK_MEMBER_NAME(Zui_obj::isPaste,"isPaste");
  	HX_MARK_MEMBER_NAME(Zui_obj::copyReceiver,"copyReceiver");
  	HX_MARK_MEMBER_NAME(Zui_obj::copyFrame,"copyFrame");
  	HX_MARK_MEMBER_NAME(Zui_obj::comboFirst,"comboFirst");
  };
  
  #ifdef HXCPP_VISIT_ALLOCS
  static void Zui_obj_sVisitStatics(HX_VISIT_PARAMS) {
  	HX_VISIT_MEMBER_NAME(Zui_obj::textToPaste,"textToPaste");
  	HX_VISIT_MEMBER_NAME(Zui_obj::textToCopy,"textToCopy");
  	HX_VISIT_MEMBER_NAME(Zui_obj::isCut,"isCut");
  	HX_VISIT_MEMBER_NAME(Zui_obj::isCopy,"isCopy");
  	HX_VISIT_MEMBER_NAME(Zui_obj::isPaste,"isPaste");
  	HX_VISIT_MEMBER_NAME(Zui_obj::copyReceiver,"copyReceiver");
  	HX_VISIT_MEMBER_NAME(Zui_obj::copyFrame,"copyFrame");
  	HX_VISIT_MEMBER_NAME(Zui_obj::comboFirst,"comboFirst");
  };
  
  #endif
  
  hx::Class Zui_obj::__mClass;
  
  static ::String Zui_obj_sStaticFields[] = {
  	HX_("textToPaste",ab,9a,5a,65),
  	HX_("textToCopy",5d,a7,6e,ae),
  	HX_("isCut",b8,af,49,c1),
  	HX_("isCopy",bf,80,2b,5f),
  	HX_("isPaste",09,f7,db,59),
  	HX_("copyReceiver",04,fa,d5,de),
  	HX_("copyFrame",38,9c,7e,8c),
  	HX_("comboFirst",02,e5,92,0e),
  	::String(null())
  };
  
  void Zui_obj::__register()
  {
  	Zui_obj _hx_dummy;
  	Zui_obj::_hx_vtable = *(void **)&_hx_dummy;
  	hx::Static(__mClass) = new hx::Class_obj();
  	__mClass->mName = HX_("zui.Zui",0e,3a,bb,2c);
  	__mClass->mSuper = &super::__SGetClass();
  	__mClass->mConstructEmpty = &__CreateEmpty;
  	__mClass->mConstructArgs = &__Create;
  	__mClass->mGetStaticField = &Zui_obj::__GetStatic;
  	__mClass->mSetStaticField = &Zui_obj::__SetStatic;
  	__mClass->mMarkFunc = Zui_obj_sMarkStatics;
  	__mClass->mStatics = hx::Class_obj::dupFunctions(Zui_obj_sStaticFields);
  	__mClass->mMembers = hx::Class_obj::dupFunctions(Zui_obj_sMemberFields);
  	__mClass->mCanCast = hx::TCanCast< Zui_obj >;
  #ifdef HXCPP_VISIT_ALLOCS
  	__mClass->mVisitFunc = Zui_obj_sVisitStatics;
  #endif
  #ifdef HXCPP_SCRIPTABLE
  	__mClass->mMemberStorageInfo = Zui_obj_sMemberStorageInfo;
  #endif
  #ifdef HXCPP_SCRIPTABLE
  	__mClass->mStaticStorageInfo = Zui_obj_sStaticStorageInfo;
  #endif
  	hx::_hx_RegisterClass(__mClass->mName, __mClass);
  }
  
  void Zui_obj::__boot()
  {
  {
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_58_boot)
  HXDLIN(  58)		textToPaste = HX_("",00,00,00,00);
              	}
  {
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_59_boot)
  HXDLIN(  59)		textToCopy = HX_("",00,00,00,00);
              	}
  {
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_60_boot)
  HXDLIN(  60)		isCut = false;
              	}
  {
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_61_boot)
  HXDLIN(  61)		isCopy = false;
              	}
  {
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_62_boot)
  HXDLIN(  62)		isPaste = false;
              	}
  {
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_63_boot)
  HXDLIN(  63)		copyReceiver = null();
              	}
  {
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_64_boot)
  HXDLIN(  64)		copyFrame = 0;
              	}
  {
              	HX_STACKFRAME(&_hx_pos_7c77aca9aabbe4ed_1048_boot)
  HXDLIN(1048)		comboFirst = true;
              	}
  }
  
  } // end namespace zui
  