internal void ReplaceItem(string key, string data)
        {
            AdrHighwayParentXml newItem = XmlUtils.DefaultXmlDeserialize <AdrHighwayParentXml>(data);

            newItem.m_configurationSource = ConfigurationSource.CITY;
            AdrHighwayParentLibDataXml.Instance.Add(key, ref newItem);
        }
        private string ExecuteItemChange(string targetValue, bool isValidSelection)
        {
            m_editArea.isVisible = isValidSelection;
            if (isValidSelection)
            {
                EditingInstance = AdrHighwayParentLibDataXml.Instance.Get(targetValue);

                switch (EditingInstance.m_configurationSource)
                {
                case ConfigurationSource.GLOBAL:
                    m_deleteButton.Disable();
                    m_importButton.isVisible = true;
                    m_exportButton.isVisible = false;
                    m_scopeInfo.localeID     = "K45_ADR_CURRENTSOURCE_GLOBAL";
                    m_editArea.Disable();
                    break;

                case ConfigurationSource.CITY:
                    m_deleteButton.Enable();
                    m_editArea.Enable();
                    m_exportButton.Enable();
                    m_exportButton.isVisible = true;
                    m_importButton.isVisible = false;
                    m_scopeInfo.localeID     = "K45_ADR_CURRENTSOURCE_CITY";
                    break;
                }

                m_shortPrefix.text        = EditingInstance.ShortPrefix ?? "";
                m_fullPrefix.text         = EditingInstance.LongPrefix ?? "";
                m_shortAddSpace.isChecked = EditingInstance.AddSpaceBetweenTermsShort;
                m_fullAddSpace.isChecked  = EditingInstance.AddSpaceBetweenTermsLong;
                m_fullInvert.isChecked    = EditingInstance.InvertLongConcatenationOrder;
                m_shortInvert.isChecked   = EditingInstance.InvertShortConcatenationOrder;
                m_dettachedPrefix.text    = EditingInstance.DettachedPrefix ?? "";
                ReloadExamples();
            }
            else
            {
                m_scopeInfo.localeID = "K45_ADR_EDITOR_SELECTAITEM";
                m_deleteButton.Disable();
                m_exportButton.Disable();
                m_exportButton.isVisible = true;
                m_importButton.isVisible = false;
            }
            return(isValidSelection ? targetValue : null);
        }
        private void ShowNewConfigModal(string lastError) => K45DialogControl.ShowModalPromptText(
            new K45DialogControl.BindProperties
        {
            title       = Locale.Get("K45_ADR_EDITOR_CONFIGNEW_TITLE"),
            message     = (lastError.IsNullOrWhiteSpace() ? "" : $"{ Locale.Get("K45_ADR_EDITOR_CONFIGNEW_ANERROROCURRED")} {lastError}\n\n") + Locale.Get("K45_ADR_EDITOR_CONFIGNEW_MESSAGE"),
            showButton1 = true,
            textButton1 = Locale.Get("EXCEPTION_OK"),
            showButton2 = true,
            textButton2 = Locale.Get("CANCEL")
        }, (x, text) =>
        {
            if (x == 1)
            {
                string error = null;
                if (text.IsNullOrWhiteSpace())
                {
                    error = $"{ Locale.Get("K45_ADR_EDITOR_CONFIGNEW_INVALIDNAME")}";
                }
                else if (AdrHighwayParentLibDataXml.Instance.List().Contains(text))
                {
                    error = $"{ Locale.Get("K45_ADR_EDITOR_CONFIGNEW_ALREADY_EXISTS")}";
                }

                if (error.IsNullOrWhiteSpace())
                {
                    var newModel = new AdrHighwayParentXml
                    {
                        m_configurationSource = ConfigurationSource.CITY
                    };
                    AdrHighwayParentLibDataXml.Instance.Add(text, ref newModel);
                    m_configList.text = ExecuteItemChange(text, true);
                }
                else
                {
                    ShowNewConfigModal(error);
                }
            }
            return(true);
        }
            );
Ejemplo n.º 4
0
 private static void GetHighwayTypeData(out string detachedStr, out string shortCode, out string longCode, AdrHighwayParentXml parentConf, string identifier)
 {
     detachedStr = parentConf.DettachedPrefix;
     shortCode   = parentConf.GetShortValue(identifier);
     longCode    = parentConf.GetLongValue(identifier);
 }