Example #1
0
        private Field AddMove(int insertIndex, char character, string color)
        {
            var insertField =
                FieldsList.FirstOrDefault(
                    f => f.FieldCoordinates.XCoordinate == 6 && f.FieldCoordinates.YCoordinate == insertIndex);
            List <Field> fieldsInColumn = new List <Field>();

            for (int i = 0; i < 6; i++)
            {
                var busyField =
                    FieldsList.FirstOrDefault(
                        f => f.FieldCoordinates.XCoordinate == i && f.FieldCoordinates.YCoordinate == insertIndex);
                if (busyField != null)
                {
                    fieldsInColumn.Add(busyField);
                }
            }
            var   x        = fieldsInColumn.Count;
            Field newField = new Field(new FieldCoordinates(x, insertIndex), character, color, "");

            FieldsList.Add(newField);
            if (x == 5)
            {
                insertField.FieldValue = '-';
                insertField.Activity   = "disabled";
                insertField.Color      = "black";
            }
            return(newField);
        }
Example #2
0
        public void ExpandComponents(Accumulator accumulator)
        {
            // Traverse the field list
            // Change to for loop so we can add items as we iterate
            for (int i = 0; i < FieldsList.Count; ++i)
            {
                List <FieldComponent> componentList = null;
                // Determine the active subfield
                ushort activeSubfield = GetActiveSubFieldIndex(FieldsList[i].Num);

                if (activeSubfield == Fit.SubfieldIndexMainField)
                {
                    componentList = FieldsList[i].components;
                }
                else
                {
                    componentList = FieldsList[i].GetSubfield(activeSubfield).Components;
                }

                // Traverse the component list
                int offset = 0;
                foreach (FieldComponentExpansion f in ExpandComponentsInList(componentList, FieldsList[i], offset, accumulator))
                {
                    //Add the new field
                    FieldsList.Add(f.GetField());
                    //update offset
                    offset = f.GetOffset();
                }
            }
        }
Example #3
0
        public void Field(AstPrintFieldDefinition field)
        {
            if (FieldsList.Exists(x => x.Name == field.Name))
            {
                throw new ArgumentException($"A field with name \"{field.Name}\" already exists!", nameof(field));
            }

            FieldsList.Add(field);
        }
Example #4
0
        public void Field(AstPrintFieldDefinition field)
        {
            if (FieldsList.Exists(x => x.Name == field.Name))
            {
                throw new ExecutionError($"A field with name \"{field.Name}\" already exists!");
            }

            FieldsList.Add(field);
        }
Example #5
0
 public FieldCalculatorDlg(IFeatureLayer pFeaLayer)
 {
     InitializeComponent();
     this.DataContext = this;
     m_CurrentFeaSet  = (pFeaLayer as FeatureLayer).FeatureSet;
     foreach (DataColumn col in m_CurrentFeaSet.DataTable.Columns)
     {
         FieldsList.Add(col.ColumnName);
     }
 }
Example #6
0
 /// <summary>
 /// Replace an existing field, otherwise add a reference to fields list
 /// </summary>
 /// <param name="field">Caller allocated field</param>
 public void SetField(Field field)
 {
     for (int i = 0; i < FieldsList.Count; i++)
     {
         if (FieldsList[i].Num == field.Num)
         {
             FieldsList[i] = field;
             return;
         }
     }
     FieldsList.Add(field);
 }
Example #7
0
            public override void Add(CsvField field)
            {
                if (null == field)
                {
                    throw new ArgumentNullException(nameof(field));
                }

                if (0 <= FindIndex(field))
                {
                    throw new InvalidOperationException();
                }

                FieldsList.Add(field);
            }
Example #8
0
        private void ExtractFieldNames(EventPageBase EventPageBase)
        {
            if (EventPageBase.RegistrationForm == null)
            {
                return;
            }

            XForm xform = XForm.CreateInstance(new Guid(EventPageBase.RegistrationForm.Id.ToString()));
            NameValueCollection formControls = xform.CreateFormData().GetValues();

            foreach (string data in formControls)
            {
                if (!FieldsList.Contains(data))
                {
                    FieldsList.Add(data);
                }
            }
        }
Example #9
0
        public void Write(Stream outStream, MesgDefinition mesgDef)
        {
            if (mesgDef == null)
            {
                mesgDef = new MesgDefinition(this);
            }

            EndianBinaryWriter bw = new EndianBinaryWriter(outStream, mesgDef.IsBigEndian);

            bw.Write(LocalNum);

            foreach (FieldDefinition fieldDef in mesgDef.GetFields())
            {
                Field field = GetField(fieldDef.Num);
                if (null == field)
                {
                    field = Profile.GetField(this.Num, fieldDef.Num);
                    if (null != field)
                    {
                        FieldsList.Add(field);
                    }
                    else
                    {
                        //Field does not exist in profile, continue to next field
                        continue;
                    }
                }

                WriteField(field, fieldDef.Size, bw);
            }

            foreach (DeveloperFieldDefinition fieldDef in mesgDef.DeveloperFieldDefinitions)
            {
                DeveloperField field = GetDeveloperField(fieldDef.FieldNum, fieldDef.DeveloperDataIndex);

                if (field == null)
                {
                    field = new DeveloperField(fieldDef);
                    SetDeveloperField(field);
                }

                WriteField(field, fieldDef.Size, bw);
            }
        }
Example #10
0
 /// <summary>
 /// Insert a field at the desired index.  If the field already exists in the mesg it is first removed.
 /// </summary>
 /// <param name="index">Index to insert the field, if index is out of range, the field is added to the end of the list</param>
 /// <param name="field">Caller allocated field</param>
 public void InsertField(int index, Field field)
 {
     // if message already contains this field, remove it
     for (int i = 0; i < FieldsList.Count; i++)
     {
         if (FieldsList[i].Num == field.Num)
         {
             FieldsList.RemoveAt(i);
         }
     }
     // if the index is out of range, add to the end
     if (index < 0 || index > FieldsList.Count)
     {
         FieldsList.Add(field);
     }
     // insert the new field at desired index
     else
     {
         FieldsList.Insert(index, field);
     }
 }
Example #11
0
        private static FieldsList _XElementsToFieldList(IEnumerable<XElement> xFields)
        {
            FieldsList fields = new FieldsList();
            foreach (XElement xField in xFields)
            {
                Field field = new Field()
                {
                    fieldName = (string)xField.Attribute("fieldName")
                };
                if (xField.Attributes("isPrimaryKey").Any())
                    field.isPrimaryKey = (short)xField.Attribute("isPrimaryKey");
                if (xField.Attributes("dataType").Any())
                    field.dataType = (DataType)Enum.Parse(typeof(DataType), xField.Attribute("dataType").Value);
                if (xField.Attributes("maxLength").Any())
                    field.maxLength = (short)xField.Attribute("maxLength");
                if (xField.Attributes("isNullable").Any())
                    field.isNullable = (bool)xField.Attribute("isNullable");
                if (xField.Attributes("isReadOnly").Any())
                    field.isReadOnly = (bool)xField.Attribute("isReadOnly");
                if (xField.Attributes("isAutoGenerated").Any())
                    field.isAutoGenerated = (bool)xField.Attribute("isAutoGenerated");
                if (xField.Attributes("allowClientDefault").Any())
                    field.allowClientDefault = (bool)xField.Attribute("allowClientDefault");
                if (xField.Attributes("isNeedOriginal").Any())
                    field.isNeedOriginal = (bool)xField.Attribute("isNeedOriginal");
                if (xField.Attributes("dateConversion").Any())
                    field.dateConversion = (DateConversion)Enum.Parse(typeof(DateConversion), xField.Attribute("dateConversion").Value);
                if (xField.Attributes("fieldType").Any())
                    field.fieldType = (FieldType)Enum.Parse(typeof(FieldType), xField.Attribute("fieldType").Value);
                if (xField.Attributes("range").Any())
                    field.range = (string)xField.Attribute("range");
                if (xField.Attributes("regex").Any())
                    field.regex = (string)xField.Attribute("regex");
                if (xField.Attributes("dependentOn").Any())
                    field.dependentOn = (string)xField.Attribute("dependentOn");

                if (xField.Elements(NS_DATA + "Field.nested").Any())
                {
                    field.nested.AddRange(_XElementsToFieldList(xField.Element(NS_DATA + "Field.nested").Elements(NS_DATA + "Field")));
                }
                fields.Add(field);
            }
            return fields;
        }
Example #12
0
        private static FieldsList _XElementsToFieldList(IEnumerable <XElement> xFields)
        {
            var fields = new FieldsList();

            foreach (var xField in xFields)
            {
                var field = new Field
                {
                    fieldName = (string)xField.Attribute("fieldName")
                };
                if (xField.Attributes("isPrimaryKey").Any())
                {
                    field.isPrimaryKey = (short)xField.Attribute("isPrimaryKey");
                }
                if (xField.Attributes("dataType").Any())
                {
                    field.dataType = (DataType)Enum.Parse(typeof(DataType), xField.Attribute("dataType").Value);
                }
                if (xField.Attributes("maxLength").Any())
                {
                    field.maxLength = (short)xField.Attribute("maxLength");
                }
                if (xField.Attributes("isNullable").Any())
                {
                    field.isNullable = (bool)xField.Attribute("isNullable");
                }
                if (xField.Attributes("isReadOnly").Any())
                {
                    field.isReadOnly = (bool)xField.Attribute("isReadOnly");
                }
                if (xField.Attributes("isAutoGenerated").Any())
                {
                    field.isAutoGenerated = (bool)xField.Attribute("isAutoGenerated");
                }
                if (xField.Attributes("allowClientDefault").Any())
                {
                    field.allowClientDefault = (bool)xField.Attribute("allowClientDefault");
                }
                if (xField.Attributes("isNeedOriginal").Any())
                {
                    field.isNeedOriginal = (bool)xField.Attribute("isNeedOriginal");
                }
                if (xField.Attributes("dateConversion").Any())
                {
                    field.dateConversion =
                        (DateConversion)Enum.Parse(typeof(DateConversion), xField.Attribute("dateConversion").Value);
                }
                if (xField.Attributes("fieldType").Any())
                {
                    field.fieldType = (FieldType)Enum.Parse(typeof(FieldType), xField.Attribute("fieldType").Value);
                }
                if (xField.Attributes("range").Any())
                {
                    field.range = (string)xField.Attribute("range");
                }
                if (xField.Attributes("regex").Any())
                {
                    field.regex = (string)xField.Attribute("regex");
                }
                if (xField.Attributes("dependentOn").Any())
                {
                    field.dependentOn = (string)xField.Attribute("dependentOn");
                }

                if (xField.Elements(NS_DATA + "Field.nested").Any())
                {
                    field.nested.AddRange(
                        _XElementsToFieldList(xField.Element(NS_DATA + "Field.nested").Elements(NS_DATA + "Field")));
                }
                fields.Add(field);
            }
            return(fields);
        }
Example #13
0
 /// <summary>
 /// Configure this fake datareader using a list of fields from the query
 /// </summary>
 /// <param name="query"></param>
 /// <param name="rows"></param>
 public void AddFieldToMock(string fieldName, Type type)
 {
     FieldsList.Add(fieldName);
     TypesList.Add(type);
 }