예제 #1
0
파일: TypeSet.cs 프로젝트: shaneasd/ConEdit
 public void ModifyEnum(EnumerationData typeData)
 {
     if (m_enums.ContainsKey(typeData.TypeId)) //If we're removing an entire domain file, an enum declaration can be removed before its values. In this circumstance, when the values are removed, this method will be called but the enum wont exist.
     {
         m_types[typeData.TypeId].Name = typeData.Name;
         m_types[ParameterType.ValueSetType.Of(typeData.TypeId)].Name = "Set of " + typeData.Name;
         m_enums[typeData.TypeId] = Tuple.Create(typeData.Name, m_enums[typeData.TypeId].Item2);
         MutableEnumeration e = m_enums[typeData.TypeId].Item2;
         e.SetOptions(typeData.Elements);
         Modified.Execute(typeData.TypeId);
     }
 }
예제 #2
0
파일: TypeSet.cs 프로젝트: shaneasd/ConEdit
        public void AddEnum(EnumerationData typeData, bool hidden)
        {
            var enumType = typeData.TypeId;
            var setType  = ParameterType.ValueSetType.Of(enumType);

            m_hidden[enumType] = hidden;
            var elements = typeData.Elements.Select(e => Tuple.Create(e.Guid, e.Name));
            MutableEnumeration enumeration = new MutableEnumeration(elements, enumType, "");

            m_enums.Add(enumType, Tuple.Create(typeData.Name, enumeration));
            m_types.Add(enumType, new TypeData((a, b, c, d) => m_enums[enumType].Item2.ParameterEnum(a, b, c), typeData.Name));
            m_types.Add(setType, new TypeData((a, b, c, d) => m_enums[enumType].Item2.ParameterSet(a, b, c), "Set of " + typeData.Name));
            Modified.Execute(enumType);
        }