import { _decorator, Component, instantiate, Node, Prefab } from 'cc';
import { scene_item_data } from '../../../data/data';
import { show_select_child_scene_item } from './show_select_child_scene_item';
const { ccclass, property } = _decorator;

@ccclass('show_select_child_scene')
export class show_select_child_scene extends Component {
    @property(Node) content:Node = null;
    @property(Node) btn_close:Node = null;
    @property(Prefab) item_prefab:Prefab = null;
    private call_back = null;
    public show(list:scene_item_data[],call){
        this.call_back = call;
        for (let index = 0; index < list.length; index++) {
            const element = list[index];
            let item = instantiate(this.item_prefab)
            item.parent = this.content;
            item.getComponent(show_select_child_scene_item).initView(element,this.onItemClick.bind(this))
        }
        this.btn_close.on(Node.EventType.TOUCH_END,()=>{
            this.close()
        })
    }
    onItemClick(data:scene_item_data){
        if(this.call_back!=null){
            this.call_back(data)
            this.close()
        } 

    }

    close(){
        this.node.removeFromParent()
    }
        
}


