Exemple #1
0
 public IActionResult SubClassTest(SubClassViewModel model)
 {
     if (ModelState.IsValid)
     {
     }
     return(View(model));
 }
Exemple #2
0
        public static ObservableCollection <SubClassViewModel> CreateSubClasses(
            FirstExampleManager firstExamples,
            ObservableCollection <SubClassDataTypeViewModel> modelSubClasses,
            ClassFunctionalViewModel parent)
        {
            Random r = new Random();
            ObservableCollection <SubClassViewModel> subClasses =
                new ObservableCollection <SubClassViewModel>();

            foreach (SubClassDataTypeViewModel modelSubClass in modelSubClasses)
            {
                ObservableCollection <IUnitViewModel> units =
                    new ObservableCollection <IUnitViewModel>();

                for (int index = 0; index < modelSubClass.VehicleNumbersList.Count; ++index)
                {
                    // Read raw data from the file and used to create a new unit.
                    IndividualUnitFileContents unitRaw =
                        IndividualUnitIOController.ReadIndividualUnitFile(
                            parent.ClassId,
                            modelSubClass.VehicleNumbersList[index].VehicleNumber.ToString());

                    if (unitRaw == null)
                    {
                        Logger.Instance.WriteLog($"Failed to read unit from file, data missing: {modelSubClass.VehicleNumbersList[index].VehicleNumber}");
                    }
                    else
                    {
                        int imageIndex = r.Next(0, modelSubClass.SubClassImageList.Count);

                        IUnitViewModel newUnit =
                            new UnitViewModel(
                                IndividualUnitIOController.WriteIndividualUnitFile,
                                firstExamples,
                                parent.ClassId,
                                unitRaw,
                                index == 0,
                                index == modelSubClass.VehicleNumbersList.Count - 1,
                                modelSubClass.GetImagePath(imageIndex),
                                parent.ClassData.AlphaIdentifier);

                        units.Add(newUnit);
                    }
                }

                SubClassViewModel newSubClass =
                    new SubClassViewModel(
                        parent.ClassData.AlphaIdentifier,
                        units);

                subClasses.Add(newSubClass);
            }

            return(subClasses);
        }
Exemple #3
0
        /// <summary>
        /// The saved context.
        /// </summary>
//        public new GenSavedContext SavedContext { get { return base.SavedContext; } private set { base.SavedContext = value; } }

        /// <summary>
        /// Create a new <see cref="SubClassTreeNode"/> for the selected subclass.
        /// </summary>
        /// <param name="parentNode">The tree node of the parent class of this subclass.</param>
        /// <param name="genDataBase">The data being navigated.</param>
        /// <param name="definition">The definition data for the data being navigated.</param>
        /// <param name="classId">The ClassId of this subclass.</param>
        public SubClassTreeNode(ClassTreeNode parentNode, GenDataBase genDataBase, Definition definition, int classId)
        {
            ClassId     = classId;
            ParentNode  = parentNode;
            GenDataBase = genDataBase;
            Definition  = definition;
            var    genDataDef = GenDataBase.GenDataDef;
            int    parentClassId;
            string parentClassName;
            Class  parentClass;

            Def = null;
            if (ParentNode == null)
            {
                SubClassBase = genDataBase.Root.SubClass[0];
            }
            else
            {
                parentClassId   = ParentNode.ClassId;
                parentClassName = genDataDef.GetClassName(parentClassId);
                SubClassBase    = ParentNode.GenObject.GetSubClass(genDataDef.GetClassName(classId));
                parentClass     = definition.ClassList.Find(parentClassName);
                var i = genDataDef.Classes[parentClassId].IndexOfSubClass(genDataDef.GetClassName(ClassId));
                SubClassDef = genDataDef.GetClassSubClasses(parentClassId)[i];
                if (parentClass != null)
                {
                    Def = parentClass.SubClassList[i];
                }
            }

            Text = genDataDef.GetClassName(ClassId) +
                   (SubClassDef != null && !string.IsNullOrEmpty(SubClassDef.Reference)
                       ? ":" + SubClassBase.Reference
                       : "");
            ImageIndex  = 2;
            ToolTipText = Text;
            Tag         = new SubClassViewModel(ParentNode == null ? null : ParentNode.GenObject.ParentSubClass, SubClassBase, Def,
                                                SubClassDef, SubClassDef != null && !string.IsNullOrEmpty(SubClassDef.Reference));

            for (var j = 0; j < SubClassBase.Count; j++)
            {
                Nodes.Add(new ClassTreeNode(this, GenDataBase, Definition, ClassId, SubClassBase[j]));
            }
        }