import { _decorator, Component, EditBox, Node } from 'cc'; import { ui_att_item } from '../../../data/data'; import { Attributes } from '../Attributes'; import { config } from '../../config'; import { ClientEvent } from '../../clientEvent'; const { ccclass, property } = _decorator; @ccclass('receive_widget_item') export class receive_widget_item extends Component { private m_data:ui_att_item = null; private widget_type = config.attributes_list_type.top; private call_back = null; public initView(call){ this.call_back = call; } updateView(data:ui_att_item,type=config.attributes_list_type.top){ this.widget_type = type; if(this.m_data===null){ this.node.getChildByName("x").on('editing-did-ended',()=>{ this.change() }) this.node.getChildByName("y").on('editing-did-ended',()=>{ this.change() }) this.node.getChildByName("w").on('editing-did-ended',()=>{ this.change() }) this.node.getChildByName("h").on('editing-did-ended',()=>{ this.change() }) } this.m_data = data; let x= this.getX() let y = this.getY() let width = this.getWidth(); let height = this.getHeight(); x.string = this.m_data.x.toString(); y.string = this.m_data.y.toString(); width.string = this.m_data.width.toString(); height.string = this.m_data.height.toString(); } change(){ this.m_data.x = parseInt(this.getX().string) this.m_data.y = parseInt(this.getY().string) this.m_data.width = parseInt(this.getWidth().string) this.m_data.height = parseInt(this.getHeight().string) // if(this.call_back!=null){ // // this.scheduleOnce(()=>{ // // },0.5) // this.call_back(this.m_data) // }else{ // } ClientEvent.dispatchEvent(config.Event.UpdateAttributesToView,Attributes.Singleton.get_cur_att_data(),this.widget_type) } getX():EditBox{ return this.node.getChildByName("x").getComponent(EditBox); } getY(){ return this.node.getChildByName("y").getComponent(EditBox); } getWidth(){ return this.node.getChildByName("w").getComponent(EditBox); } getHeight(){ return this.node.getChildByName("h").getComponent(EditBox); } }