Example #1
0
    GameObject createLayerUI(MapLayers.MapLayer item, int count)
    {
        GameObject layerUI = Instantiate(LayerUIPrefab) as GameObject;

        layerUI.transform.parent        = ScrollViewContent.transform;
        layerUI.transform.localPosition = layerUIPos - new Vector3(0, count * layerUIHeight, 0);

        GameObject layerBtn = layerUI.transform.Find("LayerNameButton").gameObject;

        layerBtn.GetComponent <Button>().onClick.AddListener(() => onLayerBtnClicked(layerBtn, item));
        layerBtn.GetComponentInChildren <Text>().text = item.LayerName;

        layerUI.transform.Find("LayerNameButton/Text").GetComponent <Text>().text = item.LayerName;

        GameObject visBtn = layerUI.transform.Find("VisibleButton").gameObject;

        changeVisibleTexture(visBtn.GetComponent <Image>(), item.IsVisible);
        visBtn.GetComponent <Button>().onClick.AddListener(() => onVisibleBtnClicked(visBtn, item));

        GameObject modifyBtn = layerUI.transform.Find("ModifyButton").gameObject;

        if (item.LayerName == MapSetting.MAP_OBJECT_DEFAULT_LAYER_NAME)
        {
            modifyBtn.SetActive(false);
        }
        else
        {
            modifyBtn.GetComponent <Button>().onClick.AddListener(() => onModifyBtnClicked(layerBtn, item));
        }

        return(layerUI);
    }
Example #2
0
    public void OnRenameLayer(InputField inputField)
    {
        string oldLayerName = modifyLayer.LayerName;
        string newLayerName = inputField.text;

        if (!string.IsNullOrEmpty(newLayerName))
        {
            mapLayers.RenameLayer(modifyLayer.LayerName, newLayerName);
            MapLayers.MapLayer newLayer = mapLayers.GetMapLayer(newLayerName);
            if (newLayer != null)
            {
                //rename layer successfully
                string btnText = newLayerName;
                if (selectLayers == oldLayerName)
                {
                    selectLayers = newLayerName;
                    btnText      = "[" + modifyLayer.LayerName + "]";
                }

                modifyLayerBtnText.text = btnText;
            }
        }

        OnCloseModifyPanelBtnClicked();
    }
Example #3
0
 void onModifyBtnClicked(GameObject btnGo, MapLayers.MapLayer layer)
 {
     GetComponent <MapUIController>().OnUIEditing();
     modifyLayer        = layer;
     modifyLayerBtnText = btnGo.GetComponentInChildren <Text>();
     Debug.Log(btnGo + " " + modifyLayerBtnText);
     ModifyLayerPanel.SetActive(true);
 }
Example #4
0
    void onVisibleBtnClicked(GameObject btnGo, MapLayers.MapLayer layer)
    {
        bool curVisible = layer.IsVisible;
        bool newVisible = !curVisible;

        changeVisibleTexture(btnGo.GetComponent <Image>(), newVisible);
        mapLayers.VisibleLayer(layer.LayerName, newVisible);
    }
Example #5
0
    void onLayerBtnClicked(GameObject btnGo, MapLayers.MapLayer layer)
    {
        if (selectLayerBtnText != null)
        {
            string s = selectLayerBtnText.text;
            s = s.Trim(new char[] { '[', ']' });;
            selectLayerBtnText.text = s;
        }

        Text textUI = btnGo.GetComponentInChildren <Text>();

        textUI.text        = "[" + layer.LayerName + "]";
        selectLayerBtnText = textUI;
        selectLayers       = layer.LayerName;
    }
Example #6
0
    void UpdateUI()
    {
        for (int i = ScrollViewContent.transform.childCount - 1; i >= 0; i--)
        {
            Destroy(ScrollViewContent.transform.GetChild(i).gameObject);
        }

        int         count     = 0;
        IEnumerator layersItr = mapLayers.GetLayerIterator();

        while (layersItr.MoveNext())
        {
            MapLayers.MapLayer item    = layersItr.Current as MapLayers.MapLayer;
            GameObject         layerUI = createLayerUI(item, count);

            if (count == 0)
            {
                selectLayers = item.LayerName;
                onLayerBtnClicked(layerUI.transform.Find("LayerNameButton").gameObject, item);
            }

            count++;
        }
    }