package Ġb aa ah s . app . ui . model Ċ Ċ import Ġb aa ah s . geom . Vector 3 F Ċ import Ġb aa ah s . model .* Ċ Ċ interface ĠEntityType Ġ{ ĊĠĠĠ Ġval Ġtitle : ĠString ĊĠĠĠ Ġval Ġadd New Title : ĠString Ġget () Ġ= Ġtitle ĊĊĠĠĠ Ġfun Ġcreate New (): ĠEntity Data Ċ } Ċ Ċ val ĠEntity Types Ġ= ĠlistOf ( ĊĠĠĠ ĠGrid EntityType , ĠLight Bar EntityType , ĠLight Ring EntityType , ĠMoving Head EntityType , ĠImport EntityType Ċ ) Ċ Ċ object ĠGrid EntityType Ġ: ĠEntityType Ġ{ ĊĠĠĠ Ġoverride Ġval Ġtitle : ĠString Ġ= Ġ" Grid " ĊĊĠĠĠ Ġoverride Ġfun Ġcreate New (): ĠEntity Data Ġ= ĠGrid Data ( ĊĠĠĠĠĠĠĠ Ġ" New ĠGrid ", ĊĠĠĠĠĠĠĠ Ġrows Ġ= Ġ 2 , Ġcolumns Ġ= Ġ 2 , Ġrow Gap Ġ= Ġ 1 f , Ġcolumn Gap Ġ= Ġ 1 f ĊĠĠĠ Ġ) Ċ } Ċ Ċ object ĠLight Bar EntityType Ġ: ĠEntityType Ġ{ ĊĠĠĠ Ġoverride Ġval Ġtitle : ĠString Ġ= Ġ" Light ĠBar " ĊĊĠĠĠ Ġoverride Ġfun Ġcreate New (): ĠEntity Data Ġ= ĠLight Bar Data ( ĊĠĠĠĠĠĠĠ Ġ" New ĠLight ĠBar ", ĊĠĠĠĠĠĠĠ Ġstart Vertex Ġ= ĠVector 3 F . origin , ĊĠĠĠĠĠĠĠ Ġend Vertex Ġ= ĠVector 3 F ( 1 . 0 , Ġ 0 . 0 , Ġ 0 . 0 ) ĊĠĠĠ Ġ) Ċ } Ċ Ċ object ĠLight Ring EntityType Ġ: ĠEntityType Ġ{ ĊĠĠĠ Ġoverride Ġval Ġtitle : ĠString Ġ= Ġ" Light ĠRing " ĊĊĠĠĠ Ġoverride Ġfun Ġcreate New (): ĠEntity Data Ġ= ĠLight Ring Data (" New ĠLight ĠRing ") Ċ } Ċ Ċ object ĠMoving Head EntityType Ġ: ĠEntityType Ġ{ ĊĠĠĠ Ġoverride Ġval Ġtitle : ĠString Ġ= Ġ" Moving ĠHead " ĊĊĠĠĠ Ġoverride Ġfun Ġcreate New (): ĠEntity Data Ġ= ĠMoving Head Data (" New ĠMoving ĠHead ", Ġbase D mx Channel Ġ= Ġ 1 ) Ċ } Ċ Ċ // object ĠSurface EntityType Ġ: ĠEntityType Ġ{ Ċ // ĠĠĠ Ġoverride Ġval Ġtitle : ĠString Ġ= Ġ" Surface " Ċ // Ċ // ĠĠĠ Ġoverride Ġfun Ġcreate New (): ĠEntity Data Ġ= ĠLight Bar Data (" New ĠSurface ") Ċ //} Ċ Ċ object ĠImport EntityType Ġ: ĠEntityType Ġ{ ĊĠĠĠ Ġoverride Ġval Ġtitle : ĠString Ġ= Ġ" Imported ĠModel " ĊĠĠĠ Ġoverride Ġval Ġadd New Title : ĠString Ġget () Ġ= Ġ" Import ..." ĊĊĠĠĠ Ġoverride Ġfun Ġcreate New (): ĠEntity Data Ġ= ĠImport ed Entity Data (" New ĠOBJ ", Ġobj Data Ġ= Ġ"", Ġobj Data Is File Ref Ġ= Ġfalse ) Ċ } Ċ