@@ -22,6 +22,7 @@ class App extends Component
2222 this . _event_onSignalNeighbor = this . _event_onSignalNeighbor . bind ( this ) ;
2323 this . _event_onURLChange = this . _event_onURLChange . bind ( this ) ;
2424 this . _event_onSignalElements = this . _event_onSignalElements . bind ( this ) ;
25+ this . _event_onSignalBind = this . _event_onSignalBind . bind ( this ) ;
2526 this . _event_modal_onNameChanged = this . _event_modal_onNameChanged . bind ( this ) ;
2627 this . _event_modal_onIDChanged = this . _event_modal_onIDChanged . bind ( this ) ;
2728 this . _event_modal_onLocationX = this . _event_modal_onLocationX . bind ( this ) ;
@@ -36,7 +37,9 @@ class App extends Component
3637 this . _event_modal_onElementTypeChange = this . _event_modal_onElementTypeChange . bind ( this ) ;
3738 this . _event_modal_onElementAddVertex = this . _event_modal_onElementAddVertex . bind ( this ) ;
3839 this . _event_modal_onElementAddIndex = this . _event_modal_onElementAddIndex . bind ( this ) ;
39- this . _event_modal_onElementCodeMode = this . _event_modal_onElementCodeMode . bind ( this ) ;
40+ this . _event_modal_onElementToggle = this . _event_modal_onElementToggle . bind ( this ) ;
41+ this . _event_modal_onDeleteElement = this . _event_modal_onDeleteElement . bind ( this ) ;
42+ this . _event_modal_onElementBind = this . _event_modal_onElementBind . bind ( this ) ;
4043 this . CreateNeighbor = this . CreateNeighbor . bind ( this ) ;
4144 this . CreateNeighbors = this . CreateNeighbors . bind ( this ) ;
4245 this . CreateVertex = this . CreateVertex . bind ( this ) ;
@@ -49,6 +52,7 @@ class App extends Component
4952 window . addEventListener ( "_event_onSignalNeighbor" , this . _event_onSignalNeighbor ) ;
5053 window . addEventListener ( "_event_onURLChange" , this . _event_onURLChange ) ;
5154 window . addEventListener ( "_event_onSignalElements" , this . _event_onSignalElements ) ;
55+ window . addEventListener ( "_event_onSignalBind" , this . _event_onSignalBind ) ;
5256 }
5357 componentWillMount ( )
5458 {
@@ -422,6 +426,42 @@ class App extends Component
422426 SelectedElementOldName : event . detail . element . Name ,
423427 SelectedElementOldType : event . detail . element . Type
424428 } ) ;
429+ if ( this . state . Element_CodeCreate )
430+ {
431+ let vCode = "" ;
432+ for ( let i = 0 ; i < event . detail . element . Object . Vertices . length ; i ++ )
433+ {
434+ let child = event . detail . element . Object . Vertices [ i ] ;
435+ if ( i > 0 )
436+ {
437+ vCode += ",\n" ;
438+ }
439+ vCode += "new GraphicsVertex(" + child . X + ", " + child . Y + ", " + child . Z + ", " + child . R + ", " + child . G + ", " + child . B + ", " + child . A + ")" ;
440+ }
441+ let iCode = "" ;
442+ for ( let i = 0 ; i < event . detail . element . Object . Indices . length ; i ++ )
443+ {
444+ let child = event . detail . element . Object . Indices [ i ] ;
445+ if ( i > 0 )
446+ {
447+ iCode += ",\n" ;
448+ }
449+ iCode += "new Index(" + child . indices [ 0 ] + ", " + child . indices [ 1 ] + ", " + child . indices [ 2 ] + ")" ;
450+ }
451+ this . setState ( {
452+ Element_CodeCreate : true ,
453+ Element_Vertex_Code : vCode ,
454+ Element_Index_Code : iCode
455+ } ) ;
456+ }
457+ }
458+ _event_onSignalBind ( event )
459+ {
460+ console . log ( "came back" ) ;
461+ this . state . SelectedElement . BindToNode ( event . detail . node ) ;
462+ this . setState ( {
463+ Element_Properties : true
464+ } ) ;
425465 }
426466 _event_modal_onNameChanged ( event )
427467 {
@@ -465,7 +505,11 @@ class App extends Component
465505 Properties : false ,
466506 SelectedNode : null ,
467507 SelectedNodeOldName : null ,
468- SelectedNodeOldID : null
508+ SelectedNodeOldID : null ,
509+ Element_Properties : false ,
510+ SelectedElement : null ,
511+ SelectedElementOldName : null ,
512+ SelectedElementOldID : null
469513 } ) ;
470514 }
471515 _event_modal_onDelete ( event )
@@ -539,42 +583,74 @@ class App extends Component
539583 SelectedElement : this . state . SelectedElement
540584 } ) ;
541585 }
542- _event_modal_onElementCodeMode ( event )
586+ _event_modal_onElementToggle ( event )
543587 {
544- if ( event . length > 1 )
588+ let cm = false ;
589+ let wf = false ;
590+ for ( let i = 0 ; i < event . length ; i ++ )
545591 {
546- let vCode = "" ;
547- for ( let i = 0 ; i < this . state . SelectedElement . Object . Vertices . length ; i ++ )
592+ if ( event [ i ] === 1 )
548593 {
549- let child = this . state . SelectedElement . Object . Vertices [ i ] ;
550- if ( i > 0 )
551- {
552- vCode += ",\n" ;
553- }
554- vCode += "new GraphicsVertex(" + child . X + ", " + child . Y + ", " + child . Z + ", " + child . R + ", " + child . G + ", " + child . B + ", " + child . A + ")" ;
594+ wf = true ;
595+ this . state . SelectedElement . Object . RenderMode = "WireFrame" ;
555596 }
556- let iCode = "" ;
557- for ( let i = 0 ; i < this . state . SelectedElement . Object . Indices . length ; i ++ )
597+ else if ( event [ i ] === 2 )
558598 {
559- let child = this . state . SelectedElement . Object . Indices [ i ] ;
560- if ( i > 0 )
599+ cm = true ;
600+ let vCode = "" ;
601+ for ( let i = 0 ; i < this . state . SelectedElement . Object . Vertices . length ; i ++ )
561602 {
562- iCode += ",\n" ;
603+ let child = this . state . SelectedElement . Object . Vertices [ i ] ;
604+ if ( i > 0 )
605+ {
606+ vCode += ",\n" ;
607+ }
608+ vCode += "new GraphicsVertex(" + child . X + ", " + child . Y + ", " + child . Z + ", " + child . R + ", " + child . G + ", " + child . B + ", " + child . A + ")" ;
563609 }
564- iCode += "new Index(" + child . indices [ 0 ] + ", " + child . indices [ 1 ] + ", " + child . indices [ 2 ] + ")" ;
610+ let iCode = "" ;
611+ for ( let i = 0 ; i < this . state . SelectedElement . Object . Indices . length ; i ++ )
612+ {
613+ let child = this . state . SelectedElement . Object . Indices [ i ] ;
614+ if ( i > 0 )
615+ {
616+ iCode += ",\n" ;
617+ }
618+ iCode += "new Index(" + child . indices [ 0 ] + ", " + child . indices [ 1 ] + ", " + child . indices [ 2 ] + ")" ;
619+ }
620+ this . setState ( {
621+ Element_CodeCreate : true ,
622+ Element_Vertex_Code : vCode ,
623+ Element_Index_Code : iCode
624+ } ) ;
565625 }
566- this . setState ( {
567- Element_CodeCreate : true ,
568- Element_Vertex_Code : vCode ,
569- Element_Index_Code : iCode
570- } ) ;
571626 }
572- else
627+ if ( ! wf )
628+ {
629+ this . state . SelectedElement . Object . RenderMode = "Solid" ;
630+ }
631+ if ( ! cm )
573632 {
574633 this . setState ( {
575634 Element_CodeCreate : false ,
576- } ) ;
577- }
635+ } ) ;
636+ }
637+ }
638+ _event_modal_onDeleteElement ( event )
639+ {
640+ window . dispatchEvent ( new CustomEvent ( "_event_modal_element_delete_" , { detail : { } } ) ) ;
641+ this . setState ( {
642+ Element_Properties : false ,
643+ SelectedElement : null ,
644+ SelectedElementOldName : null ,
645+ SelectedElementOldID : null
646+ } ) ;
647+ }
648+ _event_modal_onElementBind ( event )
649+ {
650+ window . dispatchEvent ( new CustomEvent ( "_event_modal_bindtonode_" , { detail : { element : this . state . SelectedElement } } ) ) ;
651+ this . setState ( {
652+ Element_Properties : false
653+ } ) ;
578654 }
579655 updateSize ( )
580656 {
@@ -649,6 +725,7 @@ class App extends Component
649725 node_location_y = this . state . SelectedNode . Location . Y ;
650726 node_location_z = this . state . SelectedNode . Location . Z ;
651727 }
728+ let tbgdefault = [ ] ;
652729 let element_name = "" ;
653730 let element_name_old = "" ;
654731 let element_type = "" ;
@@ -658,6 +735,10 @@ class App extends Component
658735 let element_node_location = "" ;
659736 if ( this . state . SelectedElement )
660737 {
738+ if ( this . state . SelectedElement . Object . RenderMode === "WireFrame" )
739+ {
740+ tbgdefault . push ( 1 ) ;
741+ }
661742 element_name_old = this . state . SelectedElementOldName ;
662743 element_type_old = this . state . SelectedElementOldType ;
663744 if ( this . state . SelectedElement . Name === this . state . SelectedElementOldName )
@@ -692,11 +773,10 @@ class App extends Component
692773 element_node_name = this . state . SelectedElement . Node . Name ;
693774 element_node_location = "(" + this . state . SelectedElement . Node . Location . X + ", " + this . state . SelectedElement . Node . Location . Y + ", " + this . state . SelectedElement . Node . Location . Z + ")" ;
694775 }
695- }
696- let tbgdefault = 0 ;
697- if ( this . state . Element_CodeCreate )
698- {
699- tbgdefault = 1 ;
776+ if ( this . state . Element_CodeCreate )
777+ {
778+ tbgdefault . push ( 2 ) ;
779+ }
700780 }
701781 return (
702782 < div >
@@ -715,7 +795,7 @@ class App extends Component
715795 < canvas id = "studios.vanish.component.3D" style = { this . GetStyle ( ) } > </ canvas >
716796 < canvas id = "studios.vanish.component.2D" style = { this . GetStyle ( ) } > </ canvas >
717797 </ div >
718- < Modal bsSize = "large" show = { this . state . Element_Properties } >
798+ < Modal bsSize = "large" show = { this . state . Element_Properties } onHide = { this . _event_modal_onOk } >
719799 < Modal . Header closeButton >
720800 < Modal . Title > Element Properties</ Modal . Title >
721801 </ Modal . Header >
@@ -750,16 +830,17 @@ class App extends Component
750830 </ InputGroup >
751831 < div style = { { textAlign : "right" , paddingTop : 10 } } >
752832 < ButtonGroup >
753- < Button href = "#" onClick = { null } > Bind To Node</ Button >
833+ < Button href = "#" onClick = { this . _event_modal_onElementBind } > Bind To Node</ Button >
754834 </ ButtonGroup >
755835 </ div >
756836 </ Col >
757837 </ FormGroup >
758838 < FormGroup style = { { height : 1 , backgroundColor : "rgba(10, 10, 10, 0.10)" } } > </ FormGroup >
759839 < p > Object</ p >
760840 < div style = { { textAlign : "right" , paddingBottom : 10 } } >
761- < ToggleButtonGroup type = "checkbox" defaultValue = { tbgdefault } onChange = { this . _event_modal_onElementCodeMode } >
762- < ToggleButton value = { 1 } > Code Mode</ ToggleButton >
841+ < ToggleButtonGroup type = "checkbox" defaultValue = { tbgdefault } onChange = { this . _event_modal_onElementToggle } >
842+ < ToggleButton value = { 1 } > Wireframe</ ToggleButton >
843+ < ToggleButton value = { 2 } > Code Mode</ ToggleButton >
763844 </ ToggleButtonGroup >
764845 </ div >
765846 < FormGroup >
@@ -781,8 +862,8 @@ class App extends Component
781862 < FormGroup style = { { height : 1 , backgroundColor : "rgba(10, 10, 10, 0.10)" } } > </ FormGroup >
782863 < FormGroup style = { { textAlign : "right" , marginRight : 0 } } >
783864 < ButtonGroup >
784- < Button bsStyle = "danger" href = "#" onClick = { null } > Delete</ Button >
785- < Button bsStyle = "success" href = "#" onClick = { null } > Ok</ Button >
865+ < Button bsStyle = "danger" href = "#" onClick = { this . _event_modal_onDeleteElement } > Delete</ Button >
866+ < Button bsStyle = "success" href = "#" onClick = { this . _event_modal_onOk } > Ok</ Button >
786867 </ ButtonGroup >
787868 </ FormGroup >
788869 </ Form >
0 commit comments