void Start()
        {
            isReinforceLevelMaxFlag   = false;
            reinforceCostList         = EquipmentReinforceCostTableReader.Instance.DefaultCachedList;
            SelectedLevel             = -1;
            globalDataManager         = FindObjectOfType <GlobalDataManager> ();
            PopEquipmentManagerScript = FindObjectOfType <PopEquipmentManager> ();
            var _equipmentReinforceData = globalDataManager.GetValue <EquipmentReinforceData> (EquipmentString.EQUIPMENT_REINFORCE_DATA, EquipmentString.MEMORY_SPACE);

            this.heroData             = _equipmentReinforceData.HeroData;
            this.heroEquipment        = _equipmentReinforceData.HeroEquipmentData;
            this.reinforceSuccessRate = EquipmentDataManager.Instance.GetEquipmentReinforceSuccessRate(this.heroEquipment.ReinforcementLevel);
            LabelControllerScript.Init();
            LabelControllerScript.LoadDataToDisplay(this.heroEquipment);
            ButtonGroupControllerScript.Init();
            ReinforceButton.Init();
            ReinforceSuccessRateView.Init();
            ushort _labelID = StringsTableReader.Instance.FindID(STRINGS_LABEL.EQUIPMENT_REINFORCEMENT_SUCCESS_RATE_LABEL);
            MultiLangString <StringsTable> _multiLang = new MultiLangString <StringsTable> (_labelID, StringsTableReader.Instance, this.reinforceSuccessRate);

            ReinforceSuccessRateView.SetReinforceSuccessMultiString(_multiLang);
            ReinforceSuccessRateView.Display();
            IsReinforceLevelMax(this.heroEquipment.ReinforcementLevel);
            var _resourceList = EquipmentReinforceCostTableReader.Instance.DefaultCachedList;

            this.minAuraDemand          = _resourceList [0].CostNumber;
            this.minDimensionChipDemand = _resourceList [3].CostNumber;
            int _auraNow           = UserSaveDataManager.Instance.Aura;
            int _auraDimensionChip = UserSaveDataManager.Instance.DimensionChip;

            IsResourceEnough(_auraNow, _auraDimensionChip);
        }
        public static string GetMuLanStringToDisplay(string mulangString)
        {
            MultiLangString mls = new MultiLangString();

            mls.SetAsString(mulangString);
            return(mls.GetStringToDisplay(LANGUAGE));
        }
        public MultiLangString <SkillStringsTable> GetMultiLangStringWithoutParam(ushort skillID, SKILL_STRINGS_LABEL label)
        {
            ushort _tableID = FindID(skillID, label);

            MultiLangString <SkillStringsTable> _multiLang = new MultiLangString <SkillStringsTable> (_tableID, SkillStringsTableReader.Instance);

            return(_multiLang);
        }
Пример #4
0
        private void SetShipProperties(Project project)
        {
            project.Properties.PROJ_DRAWINGNUMBER = this.MvProject.FileName;
            MultiLangString mls = new MultiLangString();

            mls.AddString(ISOCode.Language.L___, this.MvProject.ShipInfo.Yard + "-" + this.MvProject.ShipInfo.ShipNo);
            project.Properties.PROJ_TYPE = mls;
        }
    public void Function()
    {
        MultiLangString multiLangString = new MultiLangString();

        multiLangString.AddString(ISOCode.Language.L_en_EN, "My Text in English");
        multiLangString.AddString(ISOCode.Language.L_de_DE, "Mein Text in Deutsch");
        // Sorry there is no Klingon implemented :^)
    }
        // Use this for initialization
        public void Init(MultiLangString <StringsTable> multi)
        {
            selfButton = GetComponent <Button> ();
            selfImage  = GetComponent <Image> ();
            buttonText = GetComponentInChildren <Text> ();

            this.multiLangString = multi;
        }
Пример #7
0
        MultiLangString <StringsTable> GetMultiLangStringByReinforceLevel(int level)
        {
            STRINGS_LABEL _labelSpecial           = EquipmentString.EquipmentReinforceLevelStringDic[level];
            var           _labelID                = StringsTableReader.Instance.FindID(_labelSpecial);
            int           _costValue              = ExchangeCostValueForDisplay(this.reinforceCostDataList [level].CostNumber);
            MultiLangString <StringsTable> _multi = new MultiLangString <StringsTable> (_labelID, StringsTableReader.Instance, _costValue);

            return(_multi);
        }
Пример #8
0
 public CommonEquipmentFormat()
 {
     this.DBEquipmentID = -1;
     this.QualityGrade  = -1;
     this.EquipmentType = EQUIPMENT_TYPE.NONE;
     this.TexturePath   = "";
     this.TextureIconID = -1;
     this.NameString    = null;
 }
Пример #9
0
        /// <summary>
        /// The function is called during P8 initialization or registration the add-in, when GUI was already initialized and add-in can modify it. 
        /// </summary>
        /// <returns></returns>
        public bool OnInitGui()
        {
            Eplan.EplApi.Gui.Menu oMenu = new Eplan.EplApi.Gui.Menu();
            MultiLangString mls = new MultiLangString();
            mls.AddString(ISOCode.Language.L_fr_FR, "Réordonner les terminaux multi-niveau");
            mls.AddString(ISOCode.Language.L_en_US, "Reorder multi-level terminals");
            oMenu.AddMenuItem(mls, "MLTReorderAction");

            return true;
        }
Пример #10
0
        public void SetNewMultiStringAndDisplay(MultiLangString <SkillStringsTable> multiLang)
        {
            if (this.multiLang != null)
            {
                this.multiLang.ValuesChangedEvent -= OnMultiLangChanged;
            }
            this.multiLang = multiLang;
            this.multiLang.ValuesChangedEvent += OnMultiLangChanged;

            DisplayMessage();
        }
Пример #11
0
        public ActionResult Edit([Bind(Include = "MultiLangStringId,Value")] MultiLangString multiLangString)
        {
            if (ModelState.IsValid)
            {
                _uow.MultiLangStrings.Update(multiLangString);
                _uow.Commit();

                return(RedirectToAction("Index"));
            }
            return(View(multiLangString));
        }
Пример #12
0
        public static string GetISOStringValue(MultiLangString multiLangString)
        {
            string sLang = "ko_KR";

            ISOCode isoCode = new ISOCode(sLang);

            ISOCode.Language language = isoCode.GetNumber();
            string           value    = multiLangString.GetString(language);


            return(value.Trim());
        }
    // Returns the menu item text in the GUI language if available.
    private string getMenuText()
    {
        MultiLangString muLangMenuText = new MultiLangString();

        muLangMenuText.SetAsString(
            "en_US@rotate order;"
            );

        ISOCode guiLanguage = new Languages().GuiLanguage;

        return(muLangMenuText.GetString((ISOCode.Language)guiLanguage.GetNumber()));
    }
Пример #14
0
        public void AttributeDisplay(EquipmentAttribute equipmentBaseAttribute, EquipmentAttribute equipmentOffsetAttribute)
        {
            STRINGS_LABEL _label = EquipmentString.EquipmentAttributeStringDic[equipmentBaseAttribute.AttributeType];
            ushort        _ID    = StringsTableReader.Instance.FindID(_label);
            MultiLangString <StringsTable> _multi = new MultiLangString <StringsTable> (_ID, StringsTableReader.Instance);

            AttributeType.ShowEquipmentAttributeType(_multi);
            AttributeType.Display();
            BaseAttributeNum.ShowAttributeNum(equipmentBaseAttribute.Attribute);
            if (equipmentOffsetAttribute.Attribute > 0)
            {
                OffsetAttributeNum.ShowAttributeNum(equipmentOffsetAttribute.Attribute, true);
            }
        }
Пример #15
0
        public void EnqueueMessage(INFO_FORMAT_LABEL formatLabel)
        {
            IMultiLangString <AbsMultiLanguageTable> _strFormat = null;
            var _id = BattleStringFormatTableReader.Instance.FindID(formatLabel);

            _strFormat = new MultiLangString <BattleStringFormatTable> (
                _id,
                BattleStringFormatTableReader.Instance);

            if (_strFormat != null)
            {
                this.StringQueue.Enqueue(_strFormat);
            }
        }
Пример #16
0
        // GET: Admin/MultiLangStrings/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            MultiLangString multiLangString = _uow.MultiLangStrings.GetById(id);

            if (multiLangString == null)
            {
                return(HttpNotFound());
            }
            return(View(multiLangString));
        }
        /// <summary>
        /// Returns the menueitem text in the gui langueage if available.
        /// Translated with google :-\
        /// </summary>
        /// <returns></returns>
        private string getMenuText()
        {
            MultiLangString muLangMenuText = new MultiLangString();

            muLangMenuText.SetAsString(
                "de_DE@Dateipfad öffnen;" +
                "en_US@Open Path;" +
                "ru_RU@Открыть путь;" +
                "pt_PT@Abrir Caminho;" +
                "fr_FR@Ouvrir Chemin;"
                );
            ISOCode guiLanguage = new Languages().GuiLanguage;

            return(muLangMenuText.GetString((ISOCode.Language)guiLanguage.GetNumber()));
        }
Пример #18
0
        public static MultiLangString GetMultiLangString(this string text)
        {
            MultiLangString mlString = new MultiLangString();

            if (string.IsNullOrWhiteSpace(text))
            {
                mlString.SetAsString(string.Empty);
            }
            else
            {
                mlString.SetAsString(text);
            }

            return(mlString);
        }
Пример #19
0
        public void DisplayData()
        {
            if (this.selfHeroData.EquipmentList != null && this.selfHeroData.EquipmentList.Count > 0)
            {
                for (int i = 0; i < this.selfHeroData.EquipmentList.Count; i++)
                {
                    if (this.selfHeroData.EquipmentList [i].EquipmentType == EquipmentType)
                    {
                        EquipmentIcon.IconDisplayOrNot(true);
                        EquipmentIcon.ShowEquipmentIcon(this.selfHeroData.EquipmentList [i].TexturePath, this.selfHeroData.EquipmentList [i].TextureIconID);
                        var _equipmentString = new MultiLangString <EquipmentStringsTable> ((ushort)this.selfHeroData.EquipmentList [i].DBEquipmentID, EquipmentStringsTableReader.Instance);
                        EquipmentName.ShowEquipmentName(_equipmentString);

                        //only the hero who is active can change equipments
                        if (this.selfHeroData.Attributes.Active)
                        {
                            ChangeButton.gameObject.SetActive(true);
                            ReinforceButton.gameObject.SetActive(true);
                            ChangeButton.EquipmentExistOrNot(true);
                            ReinforceButton.ButtonDisplayOrNot(true);
                        }

                        this.selfEquipmentData = this.selfHeroData.EquipmentList [i];
                        if (this.selfEquipmentData.ReinforcementLevel > 0)
                        {
                            ReinforcementLevel.ShowAttributeNum(this.selfEquipmentData.ReinforcementLevel, true);
                        }

                        var _attributeBaseList   = this.selfHeroData.EquipmentList [i].EquipmentAttributeBaseList;
                        var _attributeOffsetList = this.selfHeroData.EquipmentList [i].EquipmentAttributeOffsetList;
                        for (int j = 0; j < _attributeBaseList.Count; j++)
                        {
                            EquipmentAttribute _attributeOffset = new EquipmentAttribute(_attributeBaseList[j].AttributeType, 0);

                            for (int k = 0; k < _attributeOffsetList.Count; k++)
                            {
                                if (_attributeOffsetList [k].AttributeType == _attributeBaseList [j].AttributeType)
                                {
                                    _attributeOffset.Attribute += _attributeOffsetList [k].Attribute;
                                }
                            }

                            AttributeList [j].AttributeDisplay(_attributeBaseList[j], _attributeOffset);
                        }
                    }
                }
            }
        }
 public void Write(TProtocol oprot)
 {
     oprot.IncrementRecursionDepth();
     try
     {
         TStruct struc = new TStruct("TDDIElementUnion");
         oprot.WriteStructBegin(struc);
         TField field = new TField();
         if (LangString != null && __isset.LangString)
         {
             field.Name = "LangString";
             field.Type = TType.Struct;
             field.ID   = 1;
             oprot.WriteFieldBegin(field);
             LangString.Write(oprot);
             oprot.WriteFieldEnd();
         }
         if (MultiLangString != null && __isset.MultiLangString)
         {
             field.Name = "MultiLangString";
             field.Type = TType.Struct;
             field.ID   = 2;
             oprot.WriteFieldBegin(field);
             MultiLangString.Write(oprot);
             oprot.WriteFieldEnd();
         }
         if (SACMElement != null && __isset.SACMElement)
         {
             field.Name = "SACMElement";
             field.Type = TType.Struct;
             field.ID   = 3;
             oprot.WriteFieldBegin(field);
             SACMElement.Write(oprot);
             oprot.WriteFieldEnd();
         }
         oprot.WriteFieldStop();
         oprot.WriteStructEnd();
     }
     finally
     {
         oprot.DecrementRecursionDepth();
     }
 }
        public MultiLangString <SkillStringsTable> GetMultiLangStringWithParam(ushort skillID, int level, SKILL_STRINGS_LABEL label)
        {
            ushort _tableID = FindID(skillID, label);
            MultiLangString <SkillStringsTable> _multiLang;
            var _parameterList = GetSkillDescriptionParameter(skillID, level);

            if (_parameterList.Count > 0)
            {
                var _parameterArray = _parameterList.Cast <object> ().ToArray();

                _multiLang = new MultiLangString <SkillStringsTable> (_tableID, SkillStringsTableReader.Instance, _parameterArray);
            }
            else
            {
                _multiLang = new MultiLangString <SkillStringsTable> (_tableID, SkillStringsTableReader.Instance);
            }

            return(_multiLang);
        }
Пример #22
0
        IMultiLangString <AbsMultiLanguageTable> GenerateCharacterName(FightDataFormat data)
        {
            if (data == null)
            {
                return(null);
            }

            IMultiLangString <AbsMultiLanguageTable> _strFormat = null;

            switch (data.Type)
            {
            case CHARACTER_TYPE.HERO:
            {
                var _attributes = data.AttributeOriginCache as HeroAttributeFormat;
                var _id         = BattleStringFormatTableReader.Instance.FindID(INFO_FORMAT_LABEL.HERO_NAME);
                _strFormat = new MultiLangString <BattleStringFormatTable> (_id, BattleStringFormatTableReader.Instance, _attributes.NameString);
                break;
            }

            case CHARACTER_TYPE.ENEMY:
            {
                var _attributes = data.AttributeOriginCache as EnemyAttributeFormat;
                var _id         = BattleStringFormatTableReader.Instance.FindID(INFO_FORMAT_LABEL.ENEMY_NAME);
                _strFormat = new MultiLangString <BattleStringFormatTable> (_id, BattleStringFormatTableReader.Instance, _attributes.NameString);
                break;
            }

            default:
                break;
            }

            if (_strFormat != null)
            {
                _strFormat.DisattachLangUpdate();
                if (data.FightType == BATTLE_FIGHT_TYPE.DEFENDER)
                {
                    _strFormat.PrefixSpaceNumber = this.DefenderSpace;
                }
            }

            return(_strFormat);
        }
        public void LoadDataToDisplay(HeroEquipmentFormat equipmentData)
        {
            ReinforcementLevel.Clear();
            EquipmentIcon.IconDisplayOrNot(false);
            EquipmentName.NoEquipmentMessage();
            for (int i = 0; i < AttributeList.Length; i++)
            {
                AttributeList [i].DataClear();
            }

            this.selfEquipmentData = equipmentData;


            if (this.selfEquipmentData != null)
            {
                if (this.selfEquipmentData.ReinforcementLevel > 0)
                {
                    ReinforcementLevel.ShowAttributeNum(this.selfEquipmentData.ReinforcementLevel, true);
                }
                EquipmentIcon.IconDisplayOrNot(true);
                EquipmentIcon.ShowEquipmentIcon(this.selfEquipmentData.TexturePath, this.selfEquipmentData.TextureIconID);
                var _equipmentString = new MultiLangString <EquipmentStringsTable> ((ushort)this.selfEquipmentData.DBEquipmentID, EquipmentStringsTableReader.Instance);
                EquipmentName.ShowEquipmentName(_equipmentString);
                var _attributeBaseList   = this.selfEquipmentData.EquipmentAttributeBaseList;
                var _attributeOffsetList = this.selfEquipmentData.EquipmentAttributeOffsetList;
                for (int i = 0; i < _attributeBaseList.Count; i++)
                {
                    EquipmentAttribute _attributeOffset = new EquipmentAttribute(_attributeBaseList[i].AttributeType, 0);

                    for (int j = 0; j < _attributeOffsetList.Count; j++)
                    {
                        if (_attributeOffsetList [j].AttributeType == _attributeBaseList [i].AttributeType)
                        {
                            _attributeOffset.Attribute += _attributeOffsetList [j].Attribute;
                        }
                    }


                    AttributeList [i].AttributeDisplay(_attributeBaseList[i], _attributeOffset);
                }
            }
        }
Пример #24
0
        public static int GetActiveEplanVersion()
        {
            string eplanVersion = "0"; //default value = 0 to ensure, that EPLAN-version is correctly recognized

            //try new variable $(EPLAN_VERSION) first, if not valid, no possibility to get active get active EPLAN-version
            if (PathMap.SubstitutePath("$(EPLAN_VERSION)") != "$(EPLAN_VERSION)")
            {
                eplanVersion = PathMap.SubstitutePath("$(EPLAN_VERSION)");
            }
            else
            {
                //try different method to get version of executing eplan, in case the actual version doesn't support $(EPLAN_VERSION)
                string   dllFilename = Path.Combine(PathMap.SubstitutePath("$(BIN)"), "Eplan.EplApi.Baseu.dll");
                FileInfo fileInfo    = new FileInfo(dllFilename);
                if (fileInfo.Exists)
                {
                    var versionInfo = FileVersionInfo.GetVersionInfo(dllFilename);
                    //return main-version-infos (without build number)
                    if (versionInfo.ProductVersion.Length >= 5)
                    {
                        eplanVersion = versionInfo.ProductVersion.Substring(0, 5);
                    }
                }
            }

            if (eplanVersion == "0" || eplanVersion == "$(EPLAN_VERSION)")
            {
                MultiLangString multiLangErrorText = new MultiLangString();
                multiLangErrorText.AddString(ISOCode.Language.L_de_DE, "Die aktuelle EPLAN-Version konnte nicht ermittelt werden.");
                multiLangErrorText.AddString(ISOCode.Language.L_en_US, "Unable to get actual EPLAN-version.");
                ISOCode.Language guiLanguage = new Languages().GuiLanguage.GetNumber();
                string           errorText   = multiLangErrorText.GetStringToDisplay(guiLanguage);
                if (String.IsNullOrEmpty(errorText))
                {
                    //if actual GUI-language is not defined in multi-language-string, use en_US-text-version
                    errorText = multiLangErrorText.GetStringToDisplay(ISOCode.Language.L_en_US);
                }
                new BaseException(errorText, MessageLevel.Warning).FixMessage();
                eplanVersion = "0";
            }
            return(Convert.ToInt16(eplanVersion.Replace(".", string.Empty)));
        }
Пример #25
0
        public Strukturekennzeichen(string bezeichnung)
        {
            MultiLangString emptyMLS = new MultiLangString();

            emptyMLS.SetAsString("");
            _Bezeichnung             = bezeichnung;
            Beschreibung1            = emptyMLS;
            Beschreibung2            = emptyMLS;
            Beschreibung3            = emptyMLS;
            BeschreibungZusatzfeld1  = emptyMLS;
            BeschreibungZusatzfeld2  = emptyMLS;
            BeschreibungZusatzfeld3  = emptyMLS;
            BeschreibungZusatzfeld4  = emptyMLS;
            BeschreibungZusatzfeld5  = emptyMLS;
            BeschreibungZusatzfeld6  = emptyMLS;
            BeschreibungZusatzfeld7  = emptyMLS;
            BeschreibungZusatzfeld8  = emptyMLS;
            BeschreibungZusatzfeld9  = emptyMLS;
            BeschreibungZusatzfeld10 = emptyMLS;
        }
Пример #26
0
        IMultiLangString <AbsMultiLanguageTable> GenerateDamage(FightDataFormat attackerData, FightDataFormat defenderData)
        {
            IMultiLangString <AbsMultiLanguageTable> _damageString = null;

            if (attackerData.OneTurnFightData.IsBlast.Value)
            {
                var _id = BattleStringFormatTableReader.Instance.FindID(INFO_FORMAT_LABEL.BLAST_DAMAGE);
                _damageString = new MultiLangString <BattleStringFormatTable> (_id, BattleStringFormatTableReader.Instance, defenderData.OneTurnFightData.GetDamageFinal);
            }
            else
            {
                var _id = BattleStringFormatTableReader.Instance.FindID(INFO_FORMAT_LABEL.NORMAL_DAMAGE);
                _damageString = new MultiLangString <BattleStringFormatTable> (_id, BattleStringFormatTableReader.Instance, defenderData.OneTurnFightData.GetDamageFinal);
            }

            if (_damageString != null)
            {
                _damageString.DisattachLangUpdate();
            }

            return(_damageString);
        }
        public override string ToString()
        {
            StringBuilder __sb    = new StringBuilder("TDDIElementUnion(");
            bool          __first = true;

            if (LangString != null && __isset.LangString)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("LangString: ");
                __sb.Append(LangString == null ? "<null>" : LangString.ToString());
            }
            if (MultiLangString != null && __isset.MultiLangString)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("MultiLangString: ");
                __sb.Append(MultiLangString == null ? "<null>" : MultiLangString.ToString());
            }
            if (SACMElement != null && __isset.SACMElement)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("SACMElement: ");
                __sb.Append(SACMElement == null ? "<null>" : SACMElement.ToString());
            }
            __sb.Append(")");
            return(__sb.ToString());
        }
Пример #28
0
        public void Show(bool needSpaceLine = true)
        {
            if (this.StringQueue.Count == 0)
            {
                return;
            }

            if (needSpaceLine && this.HasPosted)
            {
                var _id          = BattleStringFormatTableReader.Instance.FindID(INFO_FORMAT_LABEL.BLANK_LINE);
                var _blankFormat = new MultiLangString <BattleStringFormatTable> (
                    _id,
                    BattleStringFormatTableReader.Instance);
                this.View.BackMessageQueue.Enqueue(_blankFormat);
            }

            while (this.StringQueue.Count != 0)
            {
                this.View.BackMessageQueue.Enqueue(this.StringQueue.Dequeue());
            }

            this.HasPosted = true;
        }
Пример #29
0
        public void StartScript()
        {
            string epjsource    = @"C:\Dokumente und Einstellungen\PappD\Desktop\ST10.epj";
            string epjtarget    = string.Empty;
            string absPrjName   = @"C:\EPLAN_P8\Projects\ST10.elk";
            string settings     = @"C:\EPLAN_P8\XML\ProjectSettings.xml";
            string auswertungen = @"C:\EPLAN_P8\XML\Auswertungen.xml";

            Strukturekennzeichen stk           = new Strukturekennzeichen("ND01");
            MultiLangString      beschreibung1 = new MultiLangString();

            beschreibung1.SetAsString("de_DE@Beschreibung;en_US@Description;;");
            //beschreibung1.AddString(ISOCode.Language.L_de_DE, "Beschreibung");
            //beschreibung1.AddString(ISOCode.Language.L_en_US, "Description");
            stk.Beschreibung1 = beschreibung1;
            epjtarget         = EpjHandler.WriteEpjFile(epjsource, stk);

            NewProjectWithIdDescriptions.ImportProjectEPJ(epjtarget, absPrjName);

            NewProjectWithIdDescriptions.ImportPrjSettings(absPrjName, settings);
            NewProjectWithIdDescriptions.ImportPrjSettings(absPrjName, auswertungen);
            NewProjectWithIdDescriptions.OpenProject(absPrjName);
            new CommandLineInterpreter().Execute("XPrjActionProjectCompleteMasterData");
        }
Пример #30
0
        public void Init(HangUpRewardFormat data)
        {
            StringBuilder _finalStr = new StringBuilder();

            if (data.GotEXP > 0)
            {
                var _id  = HangUpStringFormatTableReader.Instance.FindID(ConstCollections.PJEnums.HangUp.STRINGS_LABEL.GET_EXP_TEXT);
                var _str = new MultiLangString <HangUpStringFormatTable> (_id, HangUpStringFormatTableReader.Instance, data.GotEXP);
                _finalStr.Append(_str.ToString());
            }

            if (data.GotAura > 0)
            {
                _finalStr.AppendLine();

                var _id  = HangUpStringFormatTableReader.Instance.FindID(ConstCollections.PJEnums.HangUp.STRINGS_LABEL.GET_AURA_TEXT);
                var _str = new MultiLangString <HangUpStringFormatTable> (_id, HangUpStringFormatTableReader.Instance, data.GotAura);
                _finalStr.Append(_str.ToString());
            }

            if (data.GotDimensionChip > 0)
            {
                _finalStr.AppendLine();

                var _id  = HangUpStringFormatTableReader.Instance.FindID(ConstCollections.PJEnums.HangUp.STRINGS_LABEL.GET_DIMENSION_CHIP_TEXT);
                var _str = new MultiLangString <HangUpStringFormatTable> (_id, HangUpStringFormatTableReader.Instance, data.GotDimensionChip);
                _finalStr.Append(_str.ToString());
            }

            if (this.textScript == null)
            {
                this.textScript = GetComponent <Text> ();
            }

            this.textScript.text = _finalStr.ToString();
        }
Пример #31
0
        /// <summary>
        /// Find and replace text
        /// </summary>
        /// <param name="search">Searchobject with the given properties</param>
        /// <param name="searchText">Text to search</param>
        /// <param name="replaceText">Replacement text</param>
        /// <param name="project">EPLAN Project</param>
        public static void SearchAndReplaceText(Search search, string searchText, string replaceText, Project project)
        {
            // Init search
            search.ClearSearchDB(project);
            search.Project(project, searchText);

            // Get objects
            StorableObject[] foundObjects = search.GetAllSearchDBEntries(project);
            foreach (var foundObject in foundObjects)
            {
                // Filter only text objects
                // EPLAN fix (2.6) T1085938
                var existingValues = foundObject.Properties.ExistingValues
                                     .Where(p => !p.Definition.IsInternal &&
                                            (p.Definition.Type == PropertyDefinition.PropertyType.MultilangString ||
                                             p.Definition.Type == PropertyDefinition.PropertyType.String)).ToList();
                List <PropertyValue> existingValuesWithoutEmpty = new List <PropertyValue>();
                foreach (var propertyValue in existingValues)
                {
                    if (propertyValue.Definition.IsIndexed)
                    {
                        foreach (int index in propertyValue.Indexes)
                        {
                            if (!propertyValue[index].IsEmpty)
                            {
                                existingValuesWithoutEmpty.Add(propertyValue[index]);
                            }
                        }
                    }
                    else
                    {
                        if (!propertyValue.IsEmpty)
                        {
                            existingValuesWithoutEmpty.Add(propertyValue);
                        }
                    }
                }
                existingValues = existingValuesWithoutEmpty;

                // Replace
                foreach (PropertyValue propertyValue in existingValues)
                {
                    switch (propertyValue.Definition.Type)
                    {
                    // MultiLanguageString
                    case PropertyDefinition.PropertyType.MultilangString:
                        MultiLangString multiLangString      = propertyValue;
                        var             valueMultiLangString = multiLangString.GetAsString();
                        if (valueMultiLangString.Contains(searchText))
                        {
                            string newValue = valueMultiLangString.Replace(searchText, replaceText); // All languages
                            multiLangString.SetAsString(newValue);
                            propertyValue.Set(newValue);
                        }
                        break;

                    // String
                    case PropertyDefinition.PropertyType.String:
                        var value = propertyValue.ToString();
                        if (value.Contains(searchText))
                        {
                            string newValue = value.Replace(searchText, replaceText);
                            propertyValue.Set(newValue);
                        }
                        break;
                    }
                }
            }
        }