示例#1
0
        public static void ProcessCalculatorParameters(
            Dictionary <fsParameterIdentifier, fsSimulationModuleParameter> values,
            Dictionary <fsParameterIdentifier, fsParametersGroup> parameterToGroup,
            List <fsCalculator> calculators)
        {
            var localValues = new Dictionary <fsParameterIdentifier, fsCalculatorParameter>();

            foreach (fsParameterIdentifier parameter in values.Keys)
            {
                fsParametersGroup group = parameterToGroup[parameter];
                localValues[parameter] = group.GetIsInputFlag() && parameter == group.Representator
                                             ? new fsCalculatorParameter(parameter, true, values[parameter].Value)
                                             : new fsCalculatorParameter(parameter);
            }

            foreach (fsCalculator calc in calculators)
            {
                calc.ReadDataFromStorage(localValues);
                calc.Calculate();
                calc.CopyValuesToStorage(localValues);
            }

            foreach (fsParameterIdentifier parameter in values.Keys)
            {
                values[parameter].Value = localValues[parameter].Value;
            }
        }
示例#2
0
        protected void SetGroupInput(fsParametersGroup group, bool value)
        {
            if (!group.GetIsOnlyCalculatedFlag())
            {
                group.SetIsInputFlag(value);
            }
            bool isReadOnly = !group.GetIsInputFlag();

            foreach (fsParameterIdentifier parameter in group.Parameters)
            {
                ParameterToCell[parameter].ReadOnly = isReadOnly;
            }
        }
示例#3
0
 protected void UpdateCellForeColors()
 {
     foreach (var pair in ParameterToCell)
     {
         fsParametersGroup group = ParameterToGroup[pair.Key];
         if (group.GetIsInputFlag())
         {
             pair.Value.Style.ForeColor = group.Representator == pair.Key
                                              ? Color.Blue
                                              : Color.Black;
         }
         else
         {
             pair.Value.Style.ForeColor = Color.Black;
         }
     }
 }