package Ġca . log ar itm . de zel . modules . web Ċ Ċ import Ġca . log ar itm . de zel . core . JavaScript Class Ċ import Ġca . log ar itm . de zel . core . JavaScript Context Ċ Ċ /** Ċ Ġ* Ġ@ class ĠEvent Target Ċ Ġ* Ġ@ since Ġ 0 . 1 . 0 Ċ Ġ* Ġ@ hidden Ċ Ġ*/ Ċ open Ġclass ĠEvent Target ( context : ĠJavaScript Context ) Ġ: ĠJavaScript Class ( context ) Ġ{ ĊĊ ĉ //-------------------------------------------------------------------------- Ċ ĉ // Ġ ĠJS ĠProperties Ċ ĉ //-------------------------------------------------------------------------- ĊĊ ĉ /** Ċĉ Ġ* Ġ@ method Ġdispatch Event Ċĉ Ġ* Ġ@ since Ġ 0 . 1 . 0 Ċĉ Ġ* Ġ@ hidden Ċĉ Ġ*/ Ċ ĉ open Ġfun Ġdispatch Event ( type : ĠString , Ġevent : ĠString , Ġin its : ĠMutable Map < String , ĠAny > Ġ= Ġmutable Map Of ()) Ġ Ġ{ ĊĊĉ ĉ val Ġconstructor Ġ= Ġthis . context . global . property ( type ) Ċĉ ĉ if Ġ( constructor . isNull Ġ|| Ċĉĉ ĉ constructor . is Undefined ) Ġ{ Ċĉĉ ĉ throw ĠException (" Event Ġof Ġtype Ġ$ type Ġdoes Ġnot Ġexists .") Ċĉ ĉ } ĊĊĉ ĉ val ĠeventType Ġ= Ġthis . context . create String ( event ) Ċĉ ĉ val Ġevent Init Ġ= Ġthis . context . create Empty Object () ĊĊĉ ĉ for Ġ(( name , Ġvalue ) Ġin Ġin its ) Ġ{ ĊĊĉĉ ĉ if Ġ( value Ġis ĠString ) Ġ{ Ċĉĉĉ ĉ event Init . property ( name , Ġvalue ) Ċĉĉĉ ĉ continue Ċĉĉ ĉ } ĊĊĉĉ ĉ if Ġ( value Ġis ĠDouble ) Ġ{ Ċĉĉĉ ĉ event Init . property ( name , Ġvalue ) Ċĉĉĉ ĉ continue Ċĉĉ ĉ } ĊĊĉĉ ĉ if Ġ( value Ġis ĠBoolean ) Ġ{ Ċĉĉĉ ĉ event Init . property ( name , Ġvalue ) Ċĉĉĉ ĉ continue Ċĉĉ ĉ } Ċĉ ĉ } ĊĊĉ ĉ val Ġinstance Ġ= Ġthis . context . create ReturnValue () Ċĉ ĉ constructor . construct ( array Of ( eventType , Ġevent Init ), Ġinstance ) Ċĉ ĉ this . holder . call Method (" dispatchEvent ", ĠarrayOf ( instance )) Ċ ĉ } Ċ } Ċ