Exemplo n.º 1
0
        protected override void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
        {
            //NOTE: to stavimo tudi v vsak derivan klas!
            if (this.DesignMode)
            {
                return;
            }


            base.tabControl1_SelectedIndexChanged(sender, e);


            if (base.tabControl1.SelectedTab == this.tabPage_Torques)
            {
                this.WithRespectToPanelEnabled = true;

                if (this.cylinderFunctionWithGasPressure_Torque.SelectedPositionedCylinder == null)
                {
                    base.Button_OK_Enabled = false;
                }

                if (this.cylinderFunctionWithGasPressure_Torque.SelectedFunction is FunctionInfoTorque)
                {
                    FunctionInfoTorque _functionInfoTorque = (FunctionInfoTorque)this.cylinderFunctionWithGasPressure_Torque.SelectedFunction;

                    if (_functionInfoTorque.RequiresIndicatorFunction)
                    {
                        if (this.cylinderFunctionWithGasPressure_Torque.SelectedCylinderPressureVsCrankAngleIndicatorFunction == null)
                        {
                            base.Button_OK_Enabled = false;
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
        private void cylinderFunctionWithGasPressure_Torque_FunctionChanged(object sender, FunctionEventArgs e)
        {
            CylinderFunctionWithGasPressure _cylinderFunctionWithGasPressure = (CylinderFunctionWithGasPressure)sender;

            #region "requires indicator function"
            bool _requiresIndicatorFunction = false;
            if (e.FunctionInfoBase is FunctionInfoTorque)
            {
                FunctionInfoTorque _functionInfoTorque = (FunctionInfoTorque)e.FunctionInfoBase;

                if (_functionInfoTorque.RequiresIndicatorFunction)
                {
                    _requiresIndicatorFunction = true;
                }
            }
            if (_requiresIndicatorFunction)
            {
                _cylinderFunctionWithGasPressure.EnableCylinderPressureVsCrankAngleIndicatorFunction();
            }
            else
            {
                _cylinderFunctionWithGasPressure.DisableCylinderPressureVsCrankAngleIndicatorFunction();
            }
            #endregion "requires indicator function"


            //pokličemo kar tega, da pohendlamo še enable/disable ok buttona
            this.tabControl1_SelectedIndexChanged(base.tabControl1, new EventArgs());
        }
Exemplo n.º 3
0
        protected override void OnOKButtonClicked(ref FunctionInfoBase _selectedFunction, ref bool _cancel)
        {
            base.OnOKButtonClicked(ref _selectedFunction, ref _cancel);


            if (base.tabControl1.SelectedTab == this.tabPage_Torques)
            {
                FunctionInfoTorque _functionInfoTorque = (FunctionInfoTorque)this.cylinderFunctionWithGasPressure_Torque.SelectedFunction;
                _functionInfoTorque.PositionedCylinder = this.cylinderFunctionWithGasPressure_Torque.SelectedPositionedCylinder;
                _functionInfoTorque.HarmonicOrder      = this.cylinderFunctionWithGasPressure_Torque.SelectedHarmonicOrder;
                _functionInfoTorque.CylinderRelative   = base.CylinderRelative;
                _functionInfoTorque.CylinderPressureVsCrankAngleIndicatorFunction = this.cylinderFunctionWithGasPressure_Torque.SelectedCylinderPressureVsCrankAngleIndicatorFunction;
                _functionInfoTorque.InterpolationMethod = this.cylinderFunctionWithGasPressure_Torque.SelectedCylinderPressureVsCrankAngleIndicatorFunctionInterpolationMethod;

                _selectedFunction = _functionInfoTorque;
            }
        }
Exemplo n.º 4
0
        public Form_AddAFunctionTorque(ChartAreaInfo[] _availableChartAreas, PositionedCylinder[] _availablePositionedCylinders,
                                       Function _selectedCylinderPressureVsCrankAngleIndicatorFunction, FileInfo _selectedIndicatorFunctionFile, InterpolationMethodInfo _selectedInterpolationMethod)
            : base(_availableChartAreas, _availablePositionedCylinders, _selectedCylinderPressureVsCrankAngleIndicatorFunction, _selectedIndicatorFunctionFile, _selectedInterpolationMethod)
        {
            this.Constructor();


            this.cylinderFunctionWithGasPressure_Torque.AvailablePositionedCylinders = _availablePositionedCylinders;
            this.cylinderFunctionWithGasPressure_Torque.AvailableFunctions           = FunctionInfoTorque.GetAvailableFunctions();
            this.cylinderFunctionWithGasPressure_Torque.AvailableHarmonicOrders      = new HarmonicOrderInfo[]
            {
                HarmonicOrderInfo.Full,
                HarmonicOrderInfo.FirstApproximation,
                HarmonicOrderInfo.SecondApproximation,
                HarmonicOrderInfo.ThirdApproximation,
            };

            this.cylinderFunctionWithGasPressure_Torque.SelectedCylinderPressureVsCrankAngleIndicatorFunction     = _selectedCylinderPressureVsCrankAngleIndicatorFunction;
            this.cylinderFunctionWithGasPressure_Torque.SelectedCylinderPressureVsCrankAngleIndicatorFunctionFile = _selectedIndicatorFunctionFile;
            this.cylinderFunctionWithGasPressure_Torque.SelectedCylinderPressureVsCrankAngleIndicatorFunctionInterpolationMethod = _selectedInterpolationMethod;


            //pokličemo kar tega, da pohendlamo še enable/disable ok buttona
            this.tabControl1_SelectedIndexChanged(base.tabControl1, new EventArgs());
        }