示例#1
0
    public override void BindEntityController(DisplayableEntityController controller)
    {
        base.BindEntityController(controller);
        this.controller = base.controller as ComponentController;

        for (int i = 0; i != inputFields.Count; ++i)
        {
            int channel = i; // to fix the c# closure problem
            this.inputFields[i].onEndEdit.AddListener((val) => this.controller.UpdateModelProperty(channel, val));
        }
    }
示例#2
0
    public void CombineMVC(DisplayableEntityModel model, EntityView view, DisplayableEntityController controller)
    {
        view.BindEntityModel(model);
        model.BindEntityView(view);

        controller.BindEntityModel(model);
        model.BindEntityController(controller);

        view.BindEntityController(controller);

        controller.Init();
    }
示例#3
0
    private EntityController CreateEntityController(DisplayableEntityModel model)
    {
        LoadConfigData(model);

        GameObject gObj = Instantiate(model.prefabPath);

        EntityView view = gObj.AddComponent(model.GetViewType()) as EntityView;
        DisplayableEntityController controller = Activator.CreateInstance(model.GetControllerType()) as DisplayableEntityController;

        CombineMVC(model, view, controller);

        return(controller);
    }
示例#4
0
    public EntityController CreateEntityController(Type modelType, Type viewType, Type controllerType, string assetID)
    {
        DisplayableEntityModel model = Activator.CreateInstance(modelType) as DisplayableEntityModel;

        model.assetID = assetID;
        LoadConfigData(model);
        GameObject gObj = Instantiate(model.prefabPath);
        EntityView view = gObj.AddComponent(viewType) as EntityView;
        DisplayableEntityController controller = Activator.CreateInstance(controllerType) as DisplayableEntityController;

        CombineMVC(model, view, controller);

        return(controller);
    }
 public virtual void BindEntityController(EntityController controller)
 {
     this.controller = controller as DisplayableEntityController;
 }