import React from 'react'; import { Button , View, Text, StyleSheet } from 'react-native'; import {Icon} from 'react-native-elements'; import BaseSystem from './System'; import {Node} from 'trapilib/dist/lib/systems/ViewSystem' export default class Environment extends BaseSystem { constructor(CS, ToolBox, phoneRef) { super() this.phoneRef = phoneRef; this.CoreSystem = CS; this.ToolBox = ToolBox; } addRow(){ let View = this.CoreSystem.getCurrentView(); let container = View.getDefaultContainer(); let node = new Node(Math.random()+ Math.random(), {selected: true}) console.log(node) View.addViewNode(node, container); this.forceUpdate(); } selectRow(row) { this.ToolBox.selectNode(row); this.forceUpdate(); } selectCol(col) { this.ToolBox.selectNode(col); this.forceUpdate(); } rowHolders(Rows) { return Rows.map((row, index) => { let dom = '', ref = null; try { ref = this.CoreSystem.ModuleSystem.getRef(row.id); dom = ref.current._reactInternalFiber.child.child.stateNode; } catch(e) {} console.log("DOM", ref, dom,dom.clientHeight); return this.selectRow(row)}> {index} ; }) } colHolders(Cols) { return Cols.map((col, index) => { let dom = '', ref = null; try { ref = this.CoreSystem.ModuleSystem.getRef(col.id); dom = ref.current._reactInternalFiber.child.child.stateNode; } catch(e) {} console.log("DOM", ref, dom,dom.clientHeight); return this.selectCol(col)}> {index} ; }) } render() { let CurrentView = this.CoreSystem.getCurrentView(); let defaultContainer = CurrentView.getDefaultContainer(); let Rows = []; //CurrentView.getRows(defaultContainer); let Cols = []; // Check if selection is Row or Col and find ROW to getColumns if(this.ToolBox.selectedNode){ // let selectedRowNode = this.ToolBox.selectedNode.isRow ? // this.ToolBox.selectedNode : // CurrentView.getParent(this.ToolBox.selectedNode); // Cols = CurrentView.getColumns(selectedRowNode); } return { //this.colHolders(Cols) } { //this.rowHolders(Rows) }
{this.CoreSystem.render()}