text: // Generated by Haxe 3.4.7
  #include <hxcpp.h>
  
  #ifndef INCLUDED_95f339a1d026d52c
  #define INCLUDED_95f339a1d026d52c
  #include "hxMath.h"
  #endif
  #ifndef INCLUDED_Std
  #include <Std.h>
  #endif
  #ifndef INCLUDED_flixel_FlxG
  #include <flixel/FlxG.h>
  #endif
  #ifndef INCLUDED_flixel_system_debug_DebuggerUtil
  #include <flixel/system/debug/DebuggerUtil.h>
  #endif
  #ifndef INCLUDED_flixel_system_debug_GraphicCloseButton
  #include <flixel/system/debug/GraphicCloseButton.h>
  #endif
  #ifndef INCLUDED_flixel_system_debug_Window
  #include <flixel/system/debug/Window.h>
  #endif
  #ifndef INCLUDED_flixel_system_debug__Window_GraphicWindowHandle
  #include <flixel/system/debug/_Window/GraphicWindowHandle.h>
  #endif
  #ifndef INCLUDED_flixel_system_ui_FlxSystemButton
  #include <flixel/system/ui/FlxSystemButton.h>
  #endif
  #ifndef INCLUDED_flixel_util_FlxDestroyUtil
  #include <flixel/util/FlxDestroyUtil.h>
  #endif
  #ifndef INCLUDED_flixel_util_FlxSave
  #include <flixel/util/FlxSave.h>
  #endif
  #ifndef INCLUDED_flixel_util_IFlxDestroyable
  #include <flixel/util/IFlxDestroyable.h>
  #endif
  #ifndef INCLUDED_lime_app_IModule
  #include <lime/app/IModule.h>
  #endif
  #ifndef INCLUDED_openfl_Lib
  #include <openfl/Lib.h>
  #endif
  #ifndef INCLUDED_openfl_display_Bitmap
  #include <openfl/display/Bitmap.h>
  #endif
  #ifndef INCLUDED_openfl_display_BitmapData
  #include <openfl/display/BitmapData.h>
  #endif
  #ifndef INCLUDED_openfl_display_DisplayObject
  #include <openfl/display/DisplayObject.h>
  #endif
  #ifndef INCLUDED_openfl_display_DisplayObjectContainer
  #include <openfl/display/DisplayObjectContainer.h>
  #endif
  #ifndef INCLUDED_openfl_display_IBitmapDrawable
  #include <openfl/display/IBitmapDrawable.h>
  #endif
  #ifndef INCLUDED_openfl_display_InteractiveObject
  #include <openfl/display/InteractiveObject.h>
  #endif
  #ifndef INCLUDED_openfl_display_MovieClip
  #include <openfl/display/MovieClip.h>
  #endif
  #ifndef INCLUDED_openfl_display_Sprite
  #include <openfl/display/Sprite.h>
  #endif
  #ifndef INCLUDED_openfl_display_Stage
  #include <openfl/display/Stage.h>
  #endif
  #ifndef INCLUDED_openfl_events_Event
  #include <openfl/events/Event.h>
  #endif
  #ifndef INCLUDED_openfl_events_EventDispatcher
  #include <openfl/events/EventDispatcher.h>
  #endif
  #ifndef INCLUDED_openfl_events_IEventDispatcher
  #include <openfl/events/IEventDispatcher.h>
  #endif
  #ifndef INCLUDED_openfl_events_MouseEvent
  #include <openfl/events/MouseEvent.h>
  #endif
  #ifndef INCLUDED_openfl_geom_Point
  #include <openfl/geom/Point.h>
  #endif
  #ifndef INCLUDED_openfl_geom_Rectangle
  #include <openfl/geom/Rectangle.h>
  #endif
  #ifndef INCLUDED_openfl_text_TextField
  #include <openfl/text/TextField.h>
  #endif
  
  HX_DEFINE_STACK_FRAME(_hx_pos_4e51d5a8805713a4_97_new,"flixel.system.debug.Window","new",0x5aefd38a,"flixel.system.debug.Window.new","flixel/system/debug/Window.hx",97,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_166_destroy,"flixel.system.debug.Window","destroy",0x5fb40d24,"flixel.system.debug.Window.destroy","flixel/system/debug/Window.hx",166,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_220_resize,"flixel.system.debug.Window","resize",0x4ec62d0a,"flixel.system.debug.Window.resize","flixel/system/debug/Window.hx",220,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_233_reposition,"flixel.system.debug.Window","reposition",0x0fe38572,"flixel.system.debug.Window.reposition","flixel/system/debug/Window.hx",233,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_240_updateBounds,"flixel.system.debug.Window","updateBounds",0x436474f4,"flixel.system.debug.Window.updateBounds","flixel/system/debug/Window.hx",240,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_253_setVisible,"flixel.system.debug.Window","setVisible",0x6084b306,"flixel.system.debug.Window.setVisible","flixel/system/debug/Window.hx",253,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_271_toggleVisible,"flixel.system.debug.Window","toggleVisible",0x493d16e8,"flixel.system.debug.Window.toggleVisible","flixel/system/debug/Window.hx",271,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_276_putOnTop,"flixel.system.debug.Window","putOnTop",0xbb5abdfd,"flixel.system.debug.Window.putOnTop","flixel/system/debug/Window.hx",276,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_281_loadSaveData,"flixel.system.debug.Window","loadSaveData",0x8d0923e3,"flixel.system.debug.Window.loadSaveData","flixel/system/debug/Window.hx",281,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_293_initSaveData,"flixel.system.debug.Window","initSaveData",0x7856becd,"flixel.system.debug.Window.initSaveData","flixel/system/debug/Window.hx",293,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_303_update,"flixel.system.debug.Window","update",0xcd50591f,"flixel.system.debug.Window.update","flixel/system/debug/Window.hx",303,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_311_init,"flixel.system.debug.Window","init",0x33a1fca6,"flixel.system.debug.Window.init","flixel/system/debug/Window.hx",311,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_333_onMouseMove,"flixel.system.debug.Window","onMouseMove",0xdd6abbe1,"flixel.system.debug.Window.onMouseMove","flixel/system/debug/Window.hx",333,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_373_onMouseDown,"flixel.system.debug.Window","onMouseDown",0xd777d132,"flixel.system.debug.Window.onMouseDown","flixel/system/debug/Window.hx",373,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_393_onMouseUp,"flixel.system.debug.Window","onMouseUp",0x62a36b2b,"flixel.system.debug.Window.onMouseUp","flixel/system/debug/Window.hx",393,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_403_bound,"flixel.system.debug.Window","bound",0xf2ff51e8,"flixel.system.debug.Window.bound","flixel/system/debug/Window.hx",403,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_414_updateSize,"flixel.system.debug.Window","updateSize",0x6f89a180,"flixel.system.debug.Window.updateSize","flixel/system/debug/Window.hx",414,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_438_close,"flixel.system.debug.Window","close",0x8465b962,"flixel.system.debug.Window.close","flixel/system/debug/Window.hx",438,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_29_boot,"flixel.system.debug.Window","boot",0x2f0245c8,"flixel.system.debug.Window.boot","flixel/system/debug/Window.hx",29,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_31_boot,"flixel.system.debug.Window","boot",0x2f0245c8,"flixel.system.debug.Window.boot","flixel/system/debug/Window.hx",31,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_32_boot,"flixel.system.debug.Window","boot",0x2f0245c8,"flixel.system.debug.Window.boot","flixel/system/debug/Window.hx",32,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_33_boot,"flixel.system.debug.Window","boot",0x2f0245c8,"flixel.system.debug.Window.boot","flixel/system/debug/Window.hx",33,0xb8dfd4e5)
  HX_LOCAL_STACK_FRAME(_hx_pos_4e51d5a8805713a4_38_boot,"flixel.system.debug.Window","boot",0x2f0245c8,"flixel.system.debug.Window.boot","flixel/system/debug/Window.hx",38,0xb8dfd4e5)
  namespace flixel{
  namespace _hx_system{
  namespace debug{
  
  void Window_obj::__construct(::String Title, ::openfl::display::BitmapData Icon,hx::Null< Float >  __o_Width,hx::Null< Float >  __o_Height,hx::Null< bool >  __o_Resizable, ::openfl::geom::Rectangle Bounds,hx::Null< bool >  __o_Closable){
  Float Width = __o_Width.Default(0);
  Float Height = __o_Height.Default(0);
  bool Resizable = __o_Resizable.Default(true);
  bool Closable = __o_Closable.Default(false);
              	HX_GC_STACKFRAME(&_hx_pos_4e51d5a8805713a4_97_new)
  HXLINE(  98)		super::__construct();
  HXLINE( 100)		this->minSize =  ::openfl::geom::Point_obj::__alloc( HX_CTX ,(int)50,(int)30);
  HXLINE( 102)		this->_width = ::Std_obj::_hx_int(::Math_obj::abs(Width));
  HXLINE( 103)		this->_height = ::Std_obj::_hx_int(::Math_obj::abs(Height));
  HXLINE( 104)		this->updateBounds(Bounds);
  HXLINE( 105)		this->_drag =  ::openfl::geom::Point_obj::__alloc( HX_CTX ,null(),null());
  HXLINE( 106)		this->_resizable = Resizable;
  HXLINE( 107)		this->_closable = Closable;
  HXLINE( 109)		this->_shadow =  ::openfl::display::Bitmap_obj::__alloc( HX_CTX , ::openfl::display::BitmapData_obj::__alloc( HX_CTX ,(int)1,(int)2,true,(int)-16777216),null(),null());
  HXLINE( 110)		this->_background =  ::openfl::display::Bitmap_obj::__alloc( HX_CTX , ::openfl::display::BitmapData_obj::__alloc( HX_CTX ,(int)1,(int)1,true,(int)-580952225),null(),null());
  HXLINE( 111)		this->_header =  ::openfl::display::Bitmap_obj::__alloc( HX_CTX , ::openfl::display::BitmapData_obj::__alloc( HX_CTX ,(int)1,(int)15,true,(int)-1157627904),null(),null());
  HXLINE( 112)		 ::openfl::display::Bitmap _hx_tmp = this->_background;
  HXDLIN( 112)		_hx_tmp->set_y(this->_header->get_height());
  HXLINE( 114)		this->_title = ::flixel::_hx_system::debug::DebuggerUtil_obj::createTextField((int)2,(int)-1,null(),null());
  HXLINE( 115)		this->_title->set_alpha(((Float)0.8));
  HXLINE( 116)		this->_title->set_text(Title);
  HXLINE( 118)		this->addChild(this->_shadow);
  HXLINE( 119)		this->addChild(this->_background);
  HXLINE( 120)		this->addChild(this->_header);
  HXLINE( 121)		this->addChild(this->_title);
  HXLINE( 123)		if (hx::IsNotNull( Icon )) {
  HXLINE( 125)			::flixel::_hx_system::debug::DebuggerUtil_obj::fixSize(Icon);
  HXLINE( 126)			 ::openfl::display::Bitmap icon =  ::openfl::display::Bitmap_obj::__alloc( HX_CTX ,Icon,null(),null());
  HXLINE( 127)			icon->set_x((int)5);
  HXLINE( 128)			icon->set_y((int)2);
  HXLINE( 129)			icon->set_alpha(((Float)0.8));
  HXLINE( 130)			 ::openfl::text::TextField _hx_tmp1 = this->_title;
  HXDLIN( 130)			Float _hx_tmp2 = icon->get_x();
  HXDLIN( 130)			_hx_tmp1->set_x(((_hx_tmp2 + icon->get_width()) + (int)2));
  HXLINE( 131)			this->addChild(icon);
              		}
  HXLINE( 134)		if (this->_resizable) {
  HXLINE( 136)			this->_handle =  ::openfl::display::Bitmap_obj::__alloc( HX_CTX ,::flixel::_hx_system::debug::DebuggerUtil_obj::fixSize( ::flixel::_hx_system::debug::_Window::GraphicWindowHandle_obj::__alloc( HX_CTX ,(int)0,(int)0,null(),null())),null(),null());
  HXLINE( 137)			this->addChild(this->_handle);
              		}
  HXLINE( 140)		if (Closable) {
  HXLINE( 142)			this->_closeButton =  ::flixel::_hx_system::ui::FlxSystemButton_obj::__alloc( HX_CTX , ::flixel::_hx_system::debug::GraphicCloseButton_obj::__alloc( HX_CTX ,(int)0,(int)0,null(),null()),this->close_dyn(),null());
  HXLINE( 143)			this->_closeButton->set_alpha(((Float)0.8));
  HXLINE( 144)			this->addChild(this->_closeButton);
              		}
              		else {
  HXLINE( 148)			this->_id = ::flixel::_hx_system::debug::Window_obj::WINDOW_AMOUNT;
  HXLINE( 149)			this->loadSaveData();
  HXLINE( 150)			::flixel::_hx_system::debug::Window_obj::WINDOW_AMOUNT++;
              		}
  HXLINE( 153)		bool _hx_tmp3;
  HXDLIN( 153)		if ((this->_width == (int)0)) {
  HXLINE( 153)			_hx_tmp3 = (this->_height != (int)0);
              		}
              		else {
  HXLINE( 153)			_hx_tmp3 = true;
              		}
  HXDLIN( 153)		if (_hx_tmp3) {
  HXLINE( 155)			this->updateSize();
              		}
  HXLINE( 157)		this->bound();
  HXLINE( 159)		this->addEventListener(HX_("enterFrame",f5,03,50,02),this->init_dyn(),null(),null(),null());
              	}
  
  Dynamic Window_obj::__CreateEmpty() { return new Window_obj; }
  
  void *Window_obj::_hx_vtable = 0;
  
  Dynamic Window_obj::__Create(hx::DynamicArray inArgs)
  {
  	hx::ObjectPtr< Window_obj > _hx_result = new Window_obj();
  	_hx_result->__construct(inArgs[0],inArgs[1],inArgs[2],inArgs[3],inArgs[4],inArgs[5],inArgs[6]);
  	return _hx_result;
  }
  
  bool Window_obj::_hx_isInstanceOf(int inClassId) {
  	if (inClassId<=(int)0x19c29573) {
  		if (inClassId<=(int)0x17120186) {
  			if (inClassId<=(int)0x0ddfced7) {
  				return inClassId==(int)0x00000001 || inClassId==(int)0x0ddfced7;
  			} else {
  				return inClassId==(int)0x17120186;
  			}
  		} else {
  			return inClassId==(int)0x19c29573;
  		}
  	} else {
  		if (inClassId<=(int)0x3f2b00af) {
  			return inClassId==(int)0x1b123bf8 || inClassId==(int)0x3f2b00af;
  		} else {
  			return inClassId==(int)0x619ca9b8;
  		}
  	}
  }
  
  void Window_obj::destroy(){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_166_destroy)
  HXLINE( 167)		this->minSize = null();
  HXLINE( 168)		this->maxSize = null();
  HXLINE( 169)		this->_bounds = null();
  HXLINE( 170)		if (hx::IsNotNull( this->_shadow )) {
  HXLINE( 172)			this->removeChild(this->_shadow);
              		}
  HXLINE( 174)		this->_shadow = null();
  HXLINE( 175)		if (hx::IsNotNull( this->_background )) {
  HXLINE( 177)			this->removeChild(this->_background);
              		}
  HXLINE( 179)		this->_background = null();
  HXLINE( 180)		if (hx::IsNotNull( this->_header )) {
  HXLINE( 182)			this->removeChild(this->_header);
              		}
  HXLINE( 184)		this->_header = null();
  HXLINE( 185)		if (hx::IsNotNull( this->_title )) {
  HXLINE( 187)			this->removeChild(this->_title);
              		}
  HXLINE( 189)		this->_title = null();
  HXLINE( 190)		if (hx::IsNotNull( this->_handle )) {
  HXLINE( 192)			this->removeChild(this->_handle);
              		}
  HXLINE( 194)		this->_handle = null();
  HXLINE( 195)		this->_drag = null();
  HXLINE( 196)		this->_closeButton = ( ( ::flixel::_hx_system::ui::FlxSystemButton)(::flixel::util::FlxDestroyUtil_obj::destroy(this->_closeButton)) );
  HXLINE( 198)		 ::openfl::display::Stage stage = ::openfl::Lib_obj::get_current()->stage;
  HXLINE( 199)		if (stage->hasEventListener(HX_("mouseMove",d6,9b,b5,f4))) {
  HXLINE( 201)			stage->removeEventListener(HX_("mouseMove",d6,9b,b5,f4),this->onMouseMove_dyn(),null());
              		}
  HXLINE( 203)		if (this->hasEventListener(HX_("mouseDown",27,b1,c2,ee))) {
  HXLINE( 205)			this->removeEventListener(HX_("mouseDown",27,b1,c2,ee),this->onMouseDown_dyn(),null());
              		}
  HXLINE( 207)		if (stage->hasEventListener(HX_("mouseUp",e0,f3,72,c0))) {
  HXLINE( 209)			stage->removeEventListener(HX_("mouseUp",e0,f3,72,c0),this->onMouseUp_dyn(),null());
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Window_obj,destroy,(void))
  
  void Window_obj::resize(Float Width,Float Height){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_220_resize)
  HXLINE( 221)		this->_width = ::Std_obj::_hx_int(::Math_obj::abs(Width));
  HXLINE( 222)		this->_height = ::Std_obj::_hx_int(::Math_obj::abs(Height));
  HXLINE( 223)		this->updateSize();
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Window_obj,resize,(void))
  
  void Window_obj::reposition(Float X,Float Y){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_233_reposition)
  HXLINE( 234)		this->set_x(X);
  HXLINE( 235)		this->set_y(Y);
  HXLINE( 236)		this->bound();
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC2(Window_obj,reposition,(void))
  
  void Window_obj::updateBounds( ::openfl::geom::Rectangle Bounds){
              	HX_GC_STACKFRAME(&_hx_pos_4e51d5a8805713a4_240_updateBounds)
  HXLINE( 241)		this->_bounds = Bounds;
  HXLINE( 242)		if (hx::IsNotNull( this->_bounds )) {
  HXLINE( 244)			this->maxSize =  ::openfl::geom::Point_obj::__alloc( HX_CTX ,this->_bounds->width,this->_bounds->height);
              		}
              		else {
  HXLINE( 248)			this->maxSize =  ::openfl::geom::Point_obj::__alloc( HX_CTX ,((Float)1.79e+308),((Float)1.79e+308));
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Window_obj,updateBounds,(void))
  
  void Window_obj::setVisible(bool Value){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_253_setVisible)
  HXLINE( 254)		this->set_visible(Value);
  HXLINE( 256)		if (!(this->_closable)) {
  HXLINE( 258)			 ::Dynamic _hx_tmp =  ::Dynamic(::flixel::FlxG_obj::save->data->__Field(HX_("windowSettings",f3,3c,19,85),hx::paccDynamic));
  HXDLIN( 258)			int _hx_tmp1 = this->_id;
  HXDLIN( 258)			_hx_tmp->__SetItem(_hx_tmp1,this->get_visible());
  HXLINE( 259)			::flixel::FlxG_obj::save->flush(null(),null());
              		}
  HXLINE( 262)		if (hx::IsNotNull( this->toggleButton )) {
  HXLINE( 263)			 ::flixel::_hx_system::ui::FlxSystemButton _hx_tmp2 = this->toggleButton;
  HXDLIN( 263)			_hx_tmp2->set_toggled(!(this->get_visible()));
              		}
  HXLINE( 265)		if (this->get_visible()) {
  HXLINE( 266)			this->parent->addChild(hx::ObjectPtr<OBJ_>(this));
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Window_obj,setVisible,(void))
  
  void Window_obj::toggleVisible(){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_271_toggleVisible)
  HXDLIN( 271)		this->setVisible(!(this->get_visible()));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Window_obj,toggleVisible,(void))
  
  void Window_obj::putOnTop(){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_276_putOnTop)
  HXDLIN( 276)		this->parent->addChild(hx::ObjectPtr<OBJ_>(this));
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Window_obj,putOnTop,(void))
  
  void Window_obj::loadSaveData(){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_281_loadSaveData)
  HXDLIN( 281)		if (hx::IsNotNull(  ::Dynamic(::flixel::FlxG_obj::save->data->__Field(HX_("windowSettings",f3,3c,19,85),hx::paccDynamic)) )) {
  HXLINE( 283)			this->set_visible(( (bool)( ::Dynamic(::flixel::FlxG_obj::save->data->__Field(HX_("windowSettings",f3,3c,19,85),hx::paccDynamic))->__GetItem(this->_id)) ));
              		}
              		else {
  HXLINE( 287)			this->initSaveData();
  HXLINE( 288)			this->loadSaveData();
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Window_obj,loadSaveData,(void))
  
  void Window_obj::initSaveData(){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_293_initSaveData)
  HXLINE( 294)		::Array< bool > settings = ::Array_obj< bool >::__new(0);
  HXLINE( 295)		{
  HXLINE( 295)			int _g = (int)0;
  HXDLIN( 295)			while((_g < (int)10)){
  HXLINE( 295)				_g = (_g + (int)1);
  HXDLIN( 295)				int i = (_g - (int)1);
  HXLINE( 297)				settings[i] = true;
              			}
              		}
  HXLINE( 299)		::flixel::FlxG_obj::save->data->__SetField(HX_("windowSettings",f3,3c,19,85),settings,hx::paccDynamic);
  HXLINE( 300)		::flixel::FlxG_obj::save->flush(null(),null());
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Window_obj,initSaveData,(void))
  
  void Window_obj::update(){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_303_update)
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Window_obj,update,(void))
  
  void Window_obj::init( ::openfl::events::Event E){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_311_init)
  HXLINE( 315)		if (hx::IsNull( this->stage )) {
  HXLINE( 318)			return;
              		}
  HXLINE( 320)		this->removeEventListener(HX_("enterFrame",f5,03,50,02),this->init_dyn(),null());
  HXLINE( 322)		this->stage->addEventListener(HX_("mouseMove",d6,9b,b5,f4),this->onMouseMove_dyn(),null(),null(),null());
  HXLINE( 323)		this->stage->addEventListener(HX_("mouseUp",e0,f3,72,c0),this->onMouseUp_dyn(),null(),null(),null());
  HXLINE( 326)		this->addEventListener(HX_("mouseDown",27,b1,c2,ee),this->onMouseDown_dyn(),null(),null(),null());
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Window_obj,init,(void))
  
  void Window_obj::onMouseMove( ::openfl::events::MouseEvent E){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_333_onMouseMove)
  HXLINE( 335)		Float mouseX;
  HXDLIN( 335)		if ((this->get_mouseX() < (int)0)) {
  HXLINE( 335)			mouseX = (int)0;
              		}
              		else {
  HXLINE( 335)			mouseX = this->get_mouseX();
              		}
  HXLINE( 336)		Float mouseY;
  HXDLIN( 336)		if ((this->get_mouseY() < (int)0)) {
  HXLINE( 336)			mouseY = (int)0;
              		}
              		else {
  HXLINE( 336)			mouseY = this->get_mouseY();
              		}
  HXLINE( 338)		if (!(this->parent->get_visible())) {
  HXLINE( 340)			this->_overHandle = (this->_overHeader = false);
  HXLINE( 341)			return;
              		}
  HXLINE( 344)		if (this->_dragging) {
  HXLINE( 346)			this->_overHeader = true;
  HXLINE( 347)			Float _hx_tmp = this->parent->get_mouseX();
  HXDLIN( 347)			Float _hx_tmp1 = (_hx_tmp - this->_drag->x);
  HXDLIN( 347)			Float _hx_tmp2 = this->parent->get_mouseY();
  HXDLIN( 347)			this->reposition(_hx_tmp1,(_hx_tmp2 - this->_drag->y));
              		}
              		else {
  HXLINE( 349)			if (this->_resizing) {
  HXLINE( 351)				this->_overHandle = true;
  HXLINE( 352)				Float _hx_tmp3 = (mouseX - this->_drag->x);
  HXDLIN( 352)				this->resize(_hx_tmp3,(mouseY - this->_drag->y));
              			}
              			else {
  HXLINE( 354)				bool _hx_tmp4;
  HXDLIN( 354)				bool _hx_tmp5;
  HXDLIN( 354)				bool _hx_tmp6;
  HXDLIN( 354)				if ((mouseX >= (int)0)) {
  HXLINE( 354)					_hx_tmp6 = (mouseX <= this->_width);
              				}
              				else {
  HXLINE( 354)					_hx_tmp6 = false;
              				}
  HXDLIN( 354)				if (_hx_tmp6) {
  HXLINE( 354)					_hx_tmp5 = (mouseY >= (int)0);
              				}
              				else {
  HXLINE( 354)					_hx_tmp5 = false;
              				}
  HXDLIN( 354)				if (_hx_tmp5) {
  HXLINE( 354)					_hx_tmp4 = (mouseY <= this->_height);
              				}
              				else {
  HXLINE( 354)					_hx_tmp4 = false;
              				}
  HXDLIN( 354)				if (_hx_tmp4) {
  HXLINE( 356)					bool _hx_tmp7;
  HXDLIN( 356)					if ((mouseX <= this->_header->get_width())) {
  HXLINE( 356)						_hx_tmp7 = (mouseY <= this->_header->get_height());
              					}
              					else {
  HXLINE( 356)						_hx_tmp7 = false;
              					}
  HXDLIN( 356)					this->_overHeader = _hx_tmp7;
  HXLINE( 357)					if (this->_resizable) {
  HXLINE( 359)						bool _hx_tmp8;
  HXDLIN( 359)						int _hx_tmp9 = this->_width;
  HXDLIN( 359)						if ((mouseX >= (_hx_tmp9 - this->_handle->get_width()))) {
  HXLINE( 359)							int _hx_tmp10 = this->_height;
  HXDLIN( 359)							_hx_tmp8 = (mouseY >= (_hx_tmp10 - this->_handle->get_height()));
              						}
              						else {
  HXLINE( 359)							_hx_tmp8 = false;
              						}
  HXDLIN( 359)						this->_overHandle = _hx_tmp8;
              					}
              				}
              				else {
  HXLINE( 364)					this->_overHandle = (this->_overHeader = false);
              				}
              			}
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Window_obj,onMouseMove,(void))
  
  void Window_obj::onMouseDown( ::openfl::events::MouseEvent E){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_373_onMouseDown)
  HXDLIN( 373)		if (this->_overHeader) {
  HXLINE( 375)			this->parent->addChild(hx::ObjectPtr<OBJ_>(this));
  HXLINE( 376)			this->_dragging = true;
  HXLINE( 377)			this->_drag->x = this->get_mouseX();
  HXLINE( 378)			this->_drag->y = this->get_mouseY();
              		}
              		else {
  HXLINE( 380)			if (this->_overHandle) {
  HXLINE( 382)				this->parent->addChild(hx::ObjectPtr<OBJ_>(this));
  HXLINE( 383)				this->_resizing = true;
  HXLINE( 384)				int _hx_tmp = this->_width;
  HXDLIN( 384)				Float _hx_tmp1 = this->get_mouseX();
  HXDLIN( 384)				this->_drag->x = (_hx_tmp - _hx_tmp1);
  HXLINE( 385)				int _hx_tmp2 = this->_height;
  HXDLIN( 385)				Float _hx_tmp3 = this->get_mouseY();
  HXDLIN( 385)				this->_drag->y = (_hx_tmp2 - _hx_tmp3);
              			}
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Window_obj,onMouseDown,(void))
  
  void Window_obj::onMouseUp( ::openfl::events::MouseEvent E){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_393_onMouseUp)
  HXLINE( 394)		this->_dragging = false;
  HXLINE( 395)		this->_resizing = false;
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC1(Window_obj,onMouseUp,(void))
  
  void Window_obj::bound(){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_403_bound)
  HXDLIN( 403)		if (hx::IsNotNull( this->_bounds )) {
  HXLINE( 405)			Float Value = this->get_x();
  HXDLIN( 405)			 ::Dynamic Min = this->_bounds->get_left();
  HXDLIN( 405)			Float Max = this->_bounds->get_right();
  HXDLIN( 405)			 ::Dynamic Max1 = (Max - this->_width);
  HXDLIN( 405)			Float lowerBound;
  HXDLIN( 405)			bool lowerBound1;
  HXDLIN( 405)			if (hx::IsNotNull( Min )) {
  HXLINE( 405)				lowerBound1 = hx::IsLess( Value,Min );
              			}
              			else {
  HXLINE( 405)				lowerBound1 = false;
              			}
  HXDLIN( 405)			if (lowerBound1) {
  HXLINE( 405)				lowerBound = Min;
              			}
              			else {
  HXLINE( 405)				lowerBound = Value;
              			}
  HXDLIN( 405)			Float _hx_tmp;
  HXDLIN( 405)			bool _hx_tmp1;
  HXDLIN( 405)			if (hx::IsNotNull( Max1 )) {
  HXLINE( 405)				_hx_tmp1 = hx::IsGreater( lowerBound,Max1 );
              			}
              			else {
  HXLINE( 405)				_hx_tmp1 = false;
              			}
  HXDLIN( 405)			if (_hx_tmp1) {
  HXLINE( 405)				_hx_tmp = Max1;
              			}
              			else {
  HXLINE( 405)				_hx_tmp = lowerBound;
              			}
  HXDLIN( 405)			this->set_x(_hx_tmp);
  HXLINE( 406)			Float Value1 = this->get_y();
  HXDLIN( 406)			 ::Dynamic Min1 = this->_bounds->get_top();
  HXDLIN( 406)			Float Max2 = this->_bounds->get_bottom();
  HXDLIN( 406)			 ::Dynamic Max3 = (Max2 - this->_height);
  HXDLIN( 406)			Float lowerBound2;
  HXDLIN( 406)			bool lowerBound3;
  HXDLIN( 406)			if (hx::IsNotNull( Min1 )) {
  HXLINE( 406)				lowerBound3 = hx::IsLess( Value1,Min1 );
              			}
              			else {
  HXLINE( 406)				lowerBound3 = false;
              			}
  HXDLIN( 406)			if (lowerBound3) {
  HXLINE( 406)				lowerBound2 = Min1;
              			}
              			else {
  HXLINE( 406)				lowerBound2 = Value1;
              			}
  HXDLIN( 406)			Float _hx_tmp2;
  HXDLIN( 406)			bool _hx_tmp3;
  HXDLIN( 406)			if (hx::IsNotNull( Max3 )) {
  HXLINE( 406)				_hx_tmp3 = hx::IsGreater( lowerBound2,Max3 );
              			}
              			else {
  HXLINE( 406)				_hx_tmp3 = false;
              			}
  HXDLIN( 406)			if (_hx_tmp3) {
  HXLINE( 406)				_hx_tmp2 = Max3;
              			}
              			else {
  HXLINE( 406)				_hx_tmp2 = lowerBound2;
              			}
  HXDLIN( 406)			this->set_y(_hx_tmp2);
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Window_obj,bound,(void))
  
  void Window_obj::updateSize(){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_414_updateSize)
  HXLINE( 415)		Float Value = this->_width;
  HXDLIN( 415)		 ::Dynamic Min = this->minSize->x;
  HXDLIN( 415)		 ::Dynamic Max = this->maxSize->x;
  HXDLIN( 415)		Float lowerBound;
  HXDLIN( 415)		bool lowerBound1;
  HXDLIN( 415)		if (hx::IsNotNull( Min )) {
  HXLINE( 415)			lowerBound1 = hx::IsLess( Value,Min );
              		}
              		else {
  HXLINE( 415)			lowerBound1 = false;
              		}
  HXDLIN( 415)		if (lowerBound1) {
  HXLINE( 415)			lowerBound = Min;
              		}
              		else {
  HXLINE( 415)			lowerBound = Value;
              		}
  HXDLIN( 415)		Float _hx_tmp;
  HXDLIN( 415)		bool _hx_tmp1;
  HXDLIN( 415)		if (hx::IsNotNull( Max )) {
  HXLINE( 415)			_hx_tmp1 = hx::IsGreater( lowerBound,Max );
              		}
              		else {
  HXLINE( 415)			_hx_tmp1 = false;
              		}
  HXDLIN( 415)		if (_hx_tmp1) {
  HXLINE( 415)			_hx_tmp = Max;
              		}
              		else {
  HXLINE( 415)			_hx_tmp = lowerBound;
              		}
  HXDLIN( 415)		this->_width = ::Std_obj::_hx_int(_hx_tmp);
  HXLINE( 416)		Float Value1 = this->_height;
  HXDLIN( 416)		 ::Dynamic Min1 = this->minSize->y;
  HXDLIN( 416)		 ::Dynamic Max1 = this->maxSize->y;
  HXDLIN( 416)		Float lowerBound2;
  HXDLIN( 416)		bool lowerBound3;
  HXDLIN( 416)		if (hx::IsNotNull( Min1 )) {
  HXLINE( 416)			lowerBound3 = hx::IsLess( Value1,Min1 );
              		}
              		else {
  HXLINE( 416)			lowerBound3 = false;
              		}
  HXDLIN( 416)		if (lowerBound3) {
  HXLINE( 416)			lowerBound2 = Min1;
              		}
              		else {
  HXLINE( 416)			lowerBound2 = Value1;
              		}
  HXDLIN( 416)		Float _hx_tmp2;
  HXDLIN( 416)		bool _hx_tmp3;
  HXDLIN( 416)		if (hx::IsNotNull( Max1 )) {
  HXLINE( 416)			_hx_tmp3 = hx::IsGreater( lowerBound2,Max1 );
              		}
              		else {
  HXLINE( 416)			_hx_tmp3 = false;
              		}
  HXDLIN( 416)		if (_hx_tmp3) {
  HXLINE( 416)			_hx_tmp2 = Max1;
              		}
              		else {
  HXLINE( 416)			_hx_tmp2 = lowerBound2;
              		}
  HXDLIN( 416)		this->_height = ::Std_obj::_hx_int(_hx_tmp2);
  HXLINE( 418)		this->_header->set_scaleX(this->_width);
  HXLINE( 419)		this->_background->set_scaleX(this->_width);
  HXLINE( 420)		 ::openfl::display::Bitmap _hx_tmp4 = this->_background;
  HXDLIN( 420)		int _hx_tmp5 = this->_height;
  HXDLIN( 420)		_hx_tmp4->set_scaleY((_hx_tmp5 - this->_header->get_height()));
  HXLINE( 421)		this->_shadow->set_scaleX(this->_width);
  HXLINE( 422)		this->_shadow->set_y(this->_height);
  HXLINE( 423)		 ::openfl::text::TextField _hx_tmp6 = this->_title;
  HXDLIN( 423)		_hx_tmp6->set_width((this->_width - (int)4));
  HXLINE( 424)		if (this->_resizable) {
  HXLINE( 426)			 ::openfl::display::Bitmap _hx_tmp7 = this->_handle;
  HXDLIN( 426)			int _hx_tmp8 = this->_width;
  HXDLIN( 426)			_hx_tmp7->set_x((_hx_tmp8 - this->_handle->get_width()));
  HXLINE( 427)			 ::openfl::display::Bitmap _hx_tmp9 = this->_handle;
  HXDLIN( 427)			int _hx_tmp10 = this->_height;
  HXDLIN( 427)			_hx_tmp9->set_y((_hx_tmp10 - this->_handle->get_height()));
              		}
  HXLINE( 429)		if (hx::IsNotNull( this->_closeButton )) {
  HXLINE( 431)			 ::flixel::_hx_system::ui::FlxSystemButton _hx_tmp11 = this->_closeButton;
  HXDLIN( 431)			int _hx_tmp12 = this->_width;
  HXDLIN( 431)			_hx_tmp11->set_x(((_hx_tmp12 - this->_closeButton->get_width()) - (int)3));
  HXLINE( 432)			this->_closeButton->set_y((int)3);
              		}
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Window_obj,updateSize,(void))
  
  void Window_obj::close(){
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_438_close)
  HXDLIN( 438)		this->destroy();
              	}
  
  
  HX_DEFINE_DYNAMIC_FUNC0(Window_obj,close,(void))
  
  int Window_obj::BG_COLOR;
  
  int Window_obj::HEADER_COLOR;
  
  Float Window_obj::HEADER_ALPHA;
  
  int Window_obj::HEADER_HEIGHT;
  
  int Window_obj::WINDOW_AMOUNT;
  
  
  hx::ObjectPtr< Window_obj > Window_obj::__new(::String Title, ::openfl::display::BitmapData Icon,hx::Null< Float >  __o_Width,hx::Null< Float >  __o_Height,hx::Null< bool >  __o_Resizable, ::openfl::geom::Rectangle Bounds,hx::Null< bool >  __o_Closable) {
  	hx::ObjectPtr< Window_obj > __this = new Window_obj();
  	__this->__construct(Title,Icon,__o_Width,__o_Height,__o_Resizable,Bounds,__o_Closable);
  	return __this;
  }
  
  hx::ObjectPtr< Window_obj > Window_obj::__alloc(hx::Ctx *_hx_ctx,::String Title, ::openfl::display::BitmapData Icon,hx::Null< Float >  __o_Width,hx::Null< Float >  __o_Height,hx::Null< bool >  __o_Resizable, ::openfl::geom::Rectangle Bounds,hx::Null< bool >  __o_Closable) {
  	Window_obj *__this = (Window_obj*)(hx::Ctx::alloc(_hx_ctx, sizeof(Window_obj), true, "flixel.system.debug.Window"));
  	*(void **)__this = Window_obj::_hx_vtable;
  	__this->__construct(Title,Icon,__o_Width,__o_Height,__o_Resizable,Bounds,__o_Closable);
  	return __this;
  }
  
  Window_obj::Window_obj()
  {
  }
  
  void Window_obj::__Mark(HX_MARK_PARAMS)
  {
  	HX_MARK_BEGIN_CLASS(Window);
  	HX_MARK_MEMBER_NAME(minSize,"minSize");
  	HX_MARK_MEMBER_NAME(maxSize,"maxSize");
  	HX_MARK_MEMBER_NAME(toggleButton,"toggleButton");
  	HX_MARK_MEMBER_NAME(_width,"_width");
  	HX_MARK_MEMBER_NAME(_height,"_height");
  	HX_MARK_MEMBER_NAME(_bounds,"_bounds");
  	HX_MARK_MEMBER_NAME(_background,"_background");
  	HX_MARK_MEMBER_NAME(_header,"_header");
  	HX_MARK_MEMBER_NAME(_shadow,"_shadow");
  	HX_MARK_MEMBER_NAME(_title,"_title");
  	HX_MARK_MEMBER_NAME(_handle,"_handle");
  	HX_MARK_MEMBER_NAME(_closeButton,"_closeButton");
  	HX_MARK_MEMBER_NAME(_overHeader,"_overHeader");
  	HX_MARK_MEMBER_NAME(_overHandle,"_overHandle");
  	HX_MARK_MEMBER_NAME(_drag,"_drag");
  	HX_MARK_MEMBER_NAME(_dragging,"_dragging");
  	HX_MARK_MEMBER_NAME(_resizing,"_resizing");
  	HX_MARK_MEMBER_NAME(_resizable,"_resizable");
  	HX_MARK_MEMBER_NAME(_closable,"_closable");
  	HX_MARK_MEMBER_NAME(_id,"_id");
  	 ::openfl::display::Sprite_obj::__Mark(HX_MARK_ARG);
  	HX_MARK_END_CLASS();
  }
  
  void Window_obj::__Visit(HX_VISIT_PARAMS)
  {
  	HX_VISIT_MEMBER_NAME(minSize,"minSize");
  	HX_VISIT_MEMBER_NAME(maxSize,"maxSize");
  	HX_VISIT_MEMBER_NAME(toggleButton,"toggleButton");
  	HX_VISIT_MEMBER_NAME(_width,"_width");
  	HX_VISIT_MEMBER_NAME(_height,"_height");
  	HX_VISIT_MEMBER_NAME(_bounds,"_bounds");
  	HX_VISIT_MEMBER_NAME(_background,"_background");
  	HX_VISIT_MEMBER_NAME(_header,"_header");
  	HX_VISIT_MEMBER_NAME(_shadow,"_shadow");
  	HX_VISIT_MEMBER_NAME(_title,"_title");
  	HX_VISIT_MEMBER_NAME(_handle,"_handle");
  	HX_VISIT_MEMBER_NAME(_closeButton,"_closeButton");
  	HX_VISIT_MEMBER_NAME(_overHeader,"_overHeader");
  	HX_VISIT_MEMBER_NAME(_overHandle,"_overHandle");
  	HX_VISIT_MEMBER_NAME(_drag,"_drag");
  	HX_VISIT_MEMBER_NAME(_dragging,"_dragging");
  	HX_VISIT_MEMBER_NAME(_resizing,"_resizing");
  	HX_VISIT_MEMBER_NAME(_resizable,"_resizable");
  	HX_VISIT_MEMBER_NAME(_closable,"_closable");
  	HX_VISIT_MEMBER_NAME(_id,"_id");
  	 ::openfl::display::Sprite_obj::__Visit(HX_VISIT_ARG);
  }
  
  hx::Val Window_obj::__Field(const ::String &inName,hx::PropertyAccess inCallProp)
  {
  	switch(inName.length) {
  	case 3:
  		if (HX_FIELD_EQ(inName,"_id") ) { return hx::Val( _id ); }
  		break;
  	case 4:
  		if (HX_FIELD_EQ(inName,"init") ) { return hx::Val( init_dyn() ); }
  		break;
  	case 5:
  		if (HX_FIELD_EQ(inName,"_drag") ) { return hx::Val( _drag ); }
  		if (HX_FIELD_EQ(inName,"bound") ) { return hx::Val( bound_dyn() ); }
  		if (HX_FIELD_EQ(inName,"close") ) { return hx::Val( close_dyn() ); }
  		break;
  	case 6:
  		if (HX_FIELD_EQ(inName,"_width") ) { return hx::Val( _width ); }
  		if (HX_FIELD_EQ(inName,"_title") ) { return hx::Val( _title ); }
  		if (HX_FIELD_EQ(inName,"resize") ) { return hx::Val( resize_dyn() ); }
  		if (HX_FIELD_EQ(inName,"update") ) { return hx::Val( update_dyn() ); }
  		break;
  	case 7:
  		if (HX_FIELD_EQ(inName,"minSize") ) { return hx::Val( minSize ); }
  		if (HX_FIELD_EQ(inName,"maxSize") ) { return hx::Val( maxSize ); }
  		if (HX_FIELD_EQ(inName,"_height") ) { return hx::Val( _height ); }
  		if (HX_FIELD_EQ(inName,"_bounds") ) { return hx::Val( _bounds ); }
  		if (HX_FIELD_EQ(inName,"_header") ) { return hx::Val( _header ); }
  		if (HX_FIELD_EQ(inName,"_shadow") ) { return hx::Val( _shadow ); }
  		if (HX_FIELD_EQ(inName,"_handle") ) { return hx::Val( _handle ); }
  		if (HX_FIELD_EQ(inName,"destroy") ) { return hx::Val( destroy_dyn() ); }
  		break;
  	case 8:
  		if (HX_FIELD_EQ(inName,"putOnTop") ) { return hx::Val( putOnTop_dyn() ); }
  		break;
  	case 9:
  		if (HX_FIELD_EQ(inName,"_dragging") ) { return hx::Val( _dragging ); }
  		if (HX_FIELD_EQ(inName,"_resizing") ) { return hx::Val( _resizing ); }
  		if (HX_FIELD_EQ(inName,"_closable") ) { return hx::Val( _closable ); }
  		if (HX_FIELD_EQ(inName,"onMouseUp") ) { return hx::Val( onMouseUp_dyn() ); }
  		break;
  	case 10:
  		if (HX_FIELD_EQ(inName,"_resizable") ) { return hx::Val( _resizable ); }
  		if (HX_FIELD_EQ(inName,"reposition") ) { return hx::Val( reposition_dyn() ); }
  		if (HX_FIELD_EQ(inName,"setVisible") ) { return hx::Val( setVisible_dyn() ); }
  		if (HX_FIELD_EQ(inName,"updateSize") ) { return hx::Val( updateSize_dyn() ); }
  		break;
  	case 11:
  		if (HX_FIELD_EQ(inName,"_background") ) { return hx::Val( _background ); }
  		if (HX_FIELD_EQ(inName,"_overHeader") ) { return hx::Val( _overHeader ); }
  		if (HX_FIELD_EQ(inName,"_overHandle") ) { return hx::Val( _overHandle ); }
  		if (HX_FIELD_EQ(inName,"onMouseMove") ) { return hx::Val( onMouseMove_dyn() ); }
  		if (HX_FIELD_EQ(inName,"onMouseDown") ) { return hx::Val( onMouseDown_dyn() ); }
  		break;
  	case 12:
  		if (HX_FIELD_EQ(inName,"toggleButton") ) { return hx::Val( toggleButton ); }
  		if (HX_FIELD_EQ(inName,"_closeButton") ) { return hx::Val( _closeButton ); }
  		if (HX_FIELD_EQ(inName,"updateBounds") ) { return hx::Val( updateBounds_dyn() ); }
  		if (HX_FIELD_EQ(inName,"loadSaveData") ) { return hx::Val( loadSaveData_dyn() ); }
  		if (HX_FIELD_EQ(inName,"initSaveData") ) { return hx::Val( initSaveData_dyn() ); }
  		break;
  	case 13:
  		if (HX_FIELD_EQ(inName,"toggleVisible") ) { return hx::Val( toggleVisible_dyn() ); }
  	}
  	return super::__Field(inName,inCallProp);
  }
  
  bool Window_obj::__GetStatic(const ::String &inName, Dynamic &outValue, hx::PropertyAccess inCallProp)
  {
  	switch(inName.length) {
  	case 13:
  		if (HX_FIELD_EQ(inName,"WINDOW_AMOUNT") ) { outValue = ( WINDOW_AMOUNT ); return true; }
  	}
  	return false;
  }
  
  hx::Val Window_obj::__SetField(const ::String &inName,const hx::Val &inValue,hx::PropertyAccess inCallProp)
  {
  	switch(inName.length) {
  	case 3:
  		if (HX_FIELD_EQ(inName,"_id") ) { _id=inValue.Cast< int >(); return inValue; }
  		break;
  	case 5:
  		if (HX_FIELD_EQ(inName,"_drag") ) { _drag=inValue.Cast<  ::openfl::geom::Point >(); return inValue; }
  		break;
  	case 6:
  		if (HX_FIELD_EQ(inName,"_width") ) { _width=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_title") ) { _title=inValue.Cast<  ::openfl::text::TextField >(); return inValue; }
  		break;
  	case 7:
  		if (HX_FIELD_EQ(inName,"minSize") ) { minSize=inValue.Cast<  ::openfl::geom::Point >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"maxSize") ) { maxSize=inValue.Cast<  ::openfl::geom::Point >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_height") ) { _height=inValue.Cast< int >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_bounds") ) { _bounds=inValue.Cast<  ::openfl::geom::Rectangle >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_header") ) { _header=inValue.Cast<  ::openfl::display::Bitmap >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_shadow") ) { _shadow=inValue.Cast<  ::openfl::display::Bitmap >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_handle") ) { _handle=inValue.Cast<  ::openfl::display::Bitmap >(); return inValue; }
  		break;
  	case 9:
  		if (HX_FIELD_EQ(inName,"_dragging") ) { _dragging=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_resizing") ) { _resizing=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_closable") ) { _closable=inValue.Cast< bool >(); return inValue; }
  		break;
  	case 10:
  		if (HX_FIELD_EQ(inName,"_resizable") ) { _resizable=inValue.Cast< bool >(); return inValue; }
  		break;
  	case 11:
  		if (HX_FIELD_EQ(inName,"_background") ) { _background=inValue.Cast<  ::openfl::display::Bitmap >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_overHeader") ) { _overHeader=inValue.Cast< bool >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_overHandle") ) { _overHandle=inValue.Cast< bool >(); return inValue; }
  		break;
  	case 12:
  		if (HX_FIELD_EQ(inName,"toggleButton") ) { toggleButton=inValue.Cast<  ::flixel::_hx_system::ui::FlxSystemButton >(); return inValue; }
  		if (HX_FIELD_EQ(inName,"_closeButton") ) { _closeButton=inValue.Cast<  ::flixel::_hx_system::ui::FlxSystemButton >(); return inValue; }
  	}
  	return super::__SetField(inName,inValue,inCallProp);
  }
  
  bool Window_obj::__SetStatic(const ::String &inName,Dynamic &ioValue,hx::PropertyAccess inCallProp)
  {
  	switch(inName.length) {
  	case 13:
  		if (HX_FIELD_EQ(inName,"WINDOW_AMOUNT") ) { WINDOW_AMOUNT=ioValue.Cast< int >(); return true; }
  	}
  	return false;
  }
  
  void Window_obj::__GetFields(Array< ::String> &outFields)
  {
  	outFields->push(HX_HCSTRING("minSize","\x73","\x0f","\x5d","\x3d"));
  	outFields->push(HX_HCSTRING("maxSize","\x85","\xf9","\x83","\xcc"));
  	outFields->push(HX_HCSTRING("toggleButton","\xa6","\x7c","\xfa","\x7f"));
  	outFields->push(HX_HCSTRING("_width","\x47","\xfd","\x49","\xc6"));
  	outFields->push(HX_HCSTRING("_height","\x86","\x19","\xc3","\x70"));
  	outFields->push(HX_HCSTRING("_bounds","\x14","\x98","\x94","\xd4"));
  	outFields->push(HX_HCSTRING("_background","\x0d","\x61","\xa7","\xf8"));
  	outFields->push(HX_HCSTRING("_header","\x2c","\x1b","\x77","\x6b"));
  	outFields->push(HX_HCSTRING("_shadow","\x7f","\xd9","\x97","\x8b"));
  	outFields->push(HX_HCSTRING("_title","\xd9","\x5c","\x22","\x0c"));
  	outFields->push(HX_HCSTRING("_handle","\x47","\x95","\x74","\x26"));
  	outFields->push(HX_HCSTRING("_closeButton","\xcb","\x35","\x3a","\xfa"));
  	outFields->push(HX_HCSTRING("_overHeader","\x20","\x93","\x24","\xb5"));
  	outFields->push(HX_HCSTRING("_overHandle","\x3b","\x0d","\x22","\x70"));
  	outFields->push(HX_HCSTRING("_drag","\xd3","\x47","\x81","\xf5"));
  	outFields->push(HX_HCSTRING("_dragging","\x2e","\x34","\x22","\x7f"));
  	outFields->push(HX_HCSTRING("_resizing","\x90","\x1f","\x16","\xe9"));
  	outFields->push(HX_HCSTRING("_resizable","\x2c","\xb3","\xf2","\x04"));
  	outFields->push(HX_HCSTRING("_closable","\x86","\x63","\x40","\xca"));
  	outFields->push(HX_HCSTRING("_id","\xfa","\x71","\x48","\x00"));
  	super::__GetFields(outFields);
  };
  
  #if HXCPP_SCRIPTABLE
  static hx::StorageInfo Window_obj_sMemberStorageInfo[] = {
  	{hx::fsObject /*::openfl::geom::Point*/ ,(int)offsetof(Window_obj,minSize),HX_HCSTRING("minSize","\x73","\x0f","\x5d","\x3d")},
  	{hx::fsObject /*::openfl::geom::Point*/ ,(int)offsetof(Window_obj,maxSize),HX_HCSTRING("maxSize","\x85","\xf9","\x83","\xcc")},
  	{hx::fsObject /*::flixel::_hx_system::ui::FlxSystemButton*/ ,(int)offsetof(Window_obj,toggleButton),HX_HCSTRING("toggleButton","\xa6","\x7c","\xfa","\x7f")},
  	{hx::fsInt,(int)offsetof(Window_obj,_width),HX_HCSTRING("_width","\x47","\xfd","\x49","\xc6")},
  	{hx::fsInt,(int)offsetof(Window_obj,_height),HX_HCSTRING("_height","\x86","\x19","\xc3","\x70")},
  	{hx::fsObject /*::openfl::geom::Rectangle*/ ,(int)offsetof(Window_obj,_bounds),HX_HCSTRING("_bounds","\x14","\x98","\x94","\xd4")},
  	{hx::fsObject /*::openfl::display::Bitmap*/ ,(int)offsetof(Window_obj,_background),HX_HCSTRING("_background","\x0d","\x61","\xa7","\xf8")},
  	{hx::fsObject /*::openfl::display::Bitmap*/ ,(int)offsetof(Window_obj,_header),HX_HCSTRING("_header","\x2c","\x1b","\x77","\x6b")},
  	{hx::fsObject /*::openfl::display::Bitmap*/ ,(int)offsetof(Window_obj,_shadow),HX_HCSTRING("_shadow","\x7f","\xd9","\x97","\x8b")},
  	{hx::fsObject /*::openfl::text::TextField*/ ,(int)offsetof(Window_obj,_title),HX_HCSTRING("_title","\xd9","\x5c","\x22","\x0c")},
  	{hx::fsObject /*::openfl::display::Bitmap*/ ,(int)offsetof(Window_obj,_handle),HX_HCSTRING("_handle","\x47","\x95","\x74","\x26")},
  	{hx::fsObject /*::flixel::_hx_system::ui::FlxSystemButton*/ ,(int)offsetof(Window_obj,_closeButton),HX_HCSTRING("_closeButton","\xcb","\x35","\x3a","\xfa")},
  	{hx::fsBool,(int)offsetof(Window_obj,_overHeader),HX_HCSTRING("_overHeader","\x20","\x93","\x24","\xb5")},
  	{hx::fsBool,(int)offsetof(Window_obj,_overHandle),HX_HCSTRING("_overHandle","\x3b","\x0d","\x22","\x70")},
  	{hx::fsObject /*::openfl::geom::Point*/ ,(int)offsetof(Window_obj,_drag),HX_HCSTRING("_drag","\xd3","\x47","\x81","\xf5")},
  	{hx::fsBool,(int)offsetof(Window_obj,_dragging),HX_HCSTRING("_dragging","\x2e","\x34","\x22","\x7f")},
  	{hx::fsBool,(int)offsetof(Window_obj,_resizing),HX_HCSTRING("_resizing","\x90","\x1f","\x16","\xe9")},
  	{hx::fsBool,(int)offsetof(Window_obj,_resizable),HX_HCSTRING("_resizable","\x2c","\xb3","\xf2","\x04")},
  	{hx::fsBool,(int)offsetof(Window_obj,_closable),HX_HCSTRING("_closable","\x86","\x63","\x40","\xca")},
  	{hx::fsInt,(int)offsetof(Window_obj,_id),HX_HCSTRING("_id","\xfa","\x71","\x48","\x00")},
  	{ hx::fsUnknown, 0, null()}
  };
  static hx::StaticInfo Window_obj_sStaticStorageInfo[] = {
  	{hx::fsInt,(void *) &Window_obj::BG_COLOR,HX_HCSTRING("BG_COLOR","\x09","\x4c","\xa7","\x0b")},
  	{hx::fsInt,(void *) &Window_obj::HEADER_COLOR,HX_HCSTRING("HEADER_COLOR","\xd1","\xcd","\x7c","\x95")},
  	{hx::fsFloat,(void *) &Window_obj::HEADER_ALPHA,HX_HCSTRING("HEADER_ALPHA","\xcc","\x03","\xb7","\x6c")},
  	{hx::fsInt,(void *) &Window_obj::HEADER_HEIGHT,HX_HCSTRING("HEADER_HEIGHT","\x99","\x8b","\x7c","\x73")},
  	{hx::fsInt,(void *) &Window_obj::WINDOW_AMOUNT,HX_HCSTRING("WINDOW_AMOUNT","\x87","\x6d","\x2e","\x4a")},
  	{ hx::fsUnknown, 0, null()}
  };
  #endif
  
  static ::String Window_obj_sMemberFields[] = {
  	HX_HCSTRING("minSize","\x73","\x0f","\x5d","\x3d"),
  	HX_HCSTRING("maxSize","\x85","\xf9","\x83","\xcc"),
  	HX_HCSTRING("toggleButton","\xa6","\x7c","\xfa","\x7f"),
  	HX_HCSTRING("_width","\x47","\xfd","\x49","\xc6"),
  	HX_HCSTRING("_height","\x86","\x19","\xc3","\x70"),
  	HX_HCSTRING("_bounds","\x14","\x98","\x94","\xd4"),
  	HX_HCSTRING("_background","\x0d","\x61","\xa7","\xf8"),
  	HX_HCSTRING("_header","\x2c","\x1b","\x77","\x6b"),
  	HX_HCSTRING("_shadow","\x7f","\xd9","\x97","\x8b"),
  	HX_HCSTRING("_title","\xd9","\x5c","\x22","\x0c"),
  	HX_HCSTRING("_handle","\x47","\x95","\x74","\x26"),
  	HX_HCSTRING("_closeButton","\xcb","\x35","\x3a","\xfa"),
  	HX_HCSTRING("_overHeader","\x20","\x93","\x24","\xb5"),
  	HX_HCSTRING("_overHandle","\x3b","\x0d","\x22","\x70"),
  	HX_HCSTRING("_drag","\xd3","\x47","\x81","\xf5"),
  	HX_HCSTRING("_dragging","\x2e","\x34","\x22","\x7f"),
  	HX_HCSTRING("_resizing","\x90","\x1f","\x16","\xe9"),
  	HX_HCSTRING("_resizable","\x2c","\xb3","\xf2","\x04"),
  	HX_HCSTRING("_closable","\x86","\x63","\x40","\xca"),
  	HX_HCSTRING("_id","\xfa","\x71","\x48","\x00"),
  	HX_HCSTRING("destroy","\xfa","\x2c","\x86","\x24"),
  	HX_HCSTRING("resize","\xf4","\x59","\x7b","\x08"),
  	HX_HCSTRING("reposition","\x5c","\x6f","\x62","\xa5"),
  	HX_HCSTRING("updateBounds","\x5e","\x2d","\xe1","\x65"),
  	HX_HCSTRING("setVisible","\xf0","\x9c","\x03","\xf6"),
  	HX_HCSTRING("toggleVisible","\x3e","\xbb","\xe1","\x53"),
  	HX_HCSTRING("putOnTop","\x67","\x79","\x64","\x2e"),
  	HX_HCSTRING("loadSaveData","\x4d","\xdc","\x85","\xaf"),
  	HX_HCSTRING("initSaveData","\x37","\x77","\xd3","\x9a"),
  	HX_HCSTRING("update","\x09","\x86","\x05","\x87"),
  	HX_HCSTRING("init","\x10","\x3b","\xbb","\x45"),
  	HX_HCSTRING("onMouseMove","\xb7","\x7e","\xf8","\x16"),
  	HX_HCSTRING("onMouseDown","\x08","\x94","\x05","\x11"),
  	HX_HCSTRING("onMouseUp","\x81","\xac","\x1d","\x98"),
  	HX_HCSTRING("bound","\x3e","\xb0","\xfc","\xb6"),
  	HX_HCSTRING("updateSize","\x6a","\x8b","\x08","\x05"),
  	HX_HCSTRING("close","\xb8","\x17","\x63","\x48"),
  	::String(null()) };
  
  static void Window_obj_sMarkStatics(HX_MARK_PARAMS) {
  	HX_MARK_MEMBER_NAME(Window_obj::__mClass,"__mClass");
  	HX_MARK_MEMBER_NAME(Window_obj::BG_COLOR,"BG_COLOR");
  	HX_MARK_MEMBER_NAME(Window_obj::HEADER_COLOR,"HEADER_COLOR");
  	HX_MARK_MEMBER_NAME(Window_obj::HEADER_ALPHA,"HEADER_ALPHA");
  	HX_MARK_MEMBER_NAME(Window_obj::HEADER_HEIGHT,"HEADER_HEIGHT");
  	HX_MARK_MEMBER_NAME(Window_obj::WINDOW_AMOUNT,"WINDOW_AMOUNT");
  };
  
  #ifdef HXCPP_VISIT_ALLOCS
  static void Window_obj_sVisitStatics(HX_VISIT_PARAMS) {
  	HX_VISIT_MEMBER_NAME(Window_obj::__mClass,"__mClass");
  	HX_VISIT_MEMBER_NAME(Window_obj::BG_COLOR,"BG_COLOR");
  	HX_VISIT_MEMBER_NAME(Window_obj::HEADER_COLOR,"HEADER_COLOR");
  	HX_VISIT_MEMBER_NAME(Window_obj::HEADER_ALPHA,"HEADER_ALPHA");
  	HX_VISIT_MEMBER_NAME(Window_obj::HEADER_HEIGHT,"HEADER_HEIGHT");
  	HX_VISIT_MEMBER_NAME(Window_obj::WINDOW_AMOUNT,"WINDOW_AMOUNT");
  };
  
  #endif
  
  hx::Class Window_obj::__mClass;
  
  static ::String Window_obj_sStaticFields[] = {
  	HX_HCSTRING("BG_COLOR","\x09","\x4c","\xa7","\x0b"),
  	HX_HCSTRING("HEADER_COLOR","\xd1","\xcd","\x7c","\x95"),
  	HX_HCSTRING("HEADER_ALPHA","\xcc","\x03","\xb7","\x6c"),
  	HX_HCSTRING("HEADER_HEIGHT","\x99","\x8b","\x7c","\x73"),
  	HX_HCSTRING("WINDOW_AMOUNT","\x87","\x6d","\x2e","\x4a"),
  	::String(null())
  };
  
  void Window_obj::__register()
  {
  	hx::Object *dummy = new Window_obj;
  	Window_obj::_hx_vtable = *(void **)dummy;
  	hx::Static(__mClass) = new hx::Class_obj();
  	__mClass->mName = HX_HCSTRING("flixel.system.debug.Window","\x98","\x06","\x51","\xd3");
  	__mClass->mSuper = &super::__SGetClass();
  	__mClass->mConstructEmpty = &__CreateEmpty;
  	__mClass->mConstructArgs = &__Create;
  	__mClass->mGetStaticField = &Window_obj::__GetStatic;
  	__mClass->mSetStaticField = &Window_obj::__SetStatic;
  	__mClass->mMarkFunc = Window_obj_sMarkStatics;
  	__mClass->mStatics = hx::Class_obj::dupFunctions(Window_obj_sStaticFields);
  	__mClass->mMembers = hx::Class_obj::dupFunctions(Window_obj_sMemberFields);
  	__mClass->mCanCast = hx::TCanCast< Window_obj >;
  #ifdef HXCPP_VISIT_ALLOCS
  	__mClass->mVisitFunc = Window_obj_sVisitStatics;
  #endif
  #ifdef HXCPP_SCRIPTABLE
  	__mClass->mMemberStorageInfo = Window_obj_sMemberStorageInfo;
  #endif
  #ifdef HXCPP_SCRIPTABLE
  	__mClass->mStaticStorageInfo = Window_obj_sStaticStorageInfo;
  #endif
  	hx::_hx_RegisterClass(__mClass->mName, __mClass);
  }
  
  void Window_obj::__boot()
  {
  {
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_29_boot)
  HXDLIN(  29)		BG_COLOR = (int)-580952225;
              	}
  {
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_31_boot)
  HXDLIN(  31)		HEADER_COLOR = (int)-1157627904;
              	}
  {
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_32_boot)
  HXDLIN(  32)		HEADER_ALPHA = ((Float)0.8);
              	}
  {
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_33_boot)
  HXDLIN(  33)		HEADER_HEIGHT = (int)15;
              	}
  {
              	HX_STACKFRAME(&_hx_pos_4e51d5a8805713a4_38_boot)
  HXDLIN(  38)		WINDOW_AMOUNT = (int)0;
              	}
  }
  
  } // end namespace flixel
  } // end namespace system
  } // end namespace debug
  