def method_5(self):
     if self.comboBox.currentIndex() == 0:
         self.speedBox.setText(
             str(round(Speed.smethod_1(self.altitude).Knots, 1)))
     elif self.comboBox.currentIndex() == 1:
         self.speedBox.setText(
             str(round(Speed.smethod_2(self.altitude).Knots, 1)))
     else:
         self.speedBox.setText(str(self.customValue))
     if self.comboBox.currentIndex() != 2:
         self.speedBox.setEnabled(False)
     else:
         self.speedBox.setEnabled(True)
    def method_29(self):
        speed = None
        speed1 = None
        num = None
        num1 = None
        # Validator validator = new Validator(ValidationFlags.None);
        flag = True
        flag1 = True
        # self.errorProvider.method_1();
        # if (!self.cmbType.method_1(validator))
        # {
        #     flag = false;
        # }
        # if (!self.pnlAltitude.method_1(validator))
        # {
        #     flag = false;
        # }
        # if (!self.pnlISA.method_2(validator))
        # {
        #     flag = false;
        # }
        # validator.Flags = ValidationFlags.Positive;
        # if (!self.pnlIAS.method_1(validator))
        # {
        #     flag = false;
        # }
        # validator.Flags = ValidationFlags.AllowEmpty | ValidationFlags.NonNegative;
        # if (!self.pnlWind.method_1(validator))
        # {
        #     flag1 = false;
        # }
        # if (!self.pnlTime.method_1(validator))
        # {
        #     flag1 = false;
        # }
        if (flag1):
            if self.parametersPanel.pnlWind.Value == None:
                flag1 = False
            else:
                try:
                    time = float(self.parametersPanel.txtTime.text())
                    flag1 = True
                except:
                    flag1 = False
            # flag1 = False if(self.pnlWind.Value.IsNaN) else not double.IsNaN(self.pnlTime.Value));
        # }
        # self.panelEx.SuspendLayout();
        # self.gbResults.SuspendLayout();
        # try:
        tAS = Captions.TAS
        eST = Captions.EST
        pILOTREACTION = Captions.PILOT_REACTION
        str0 = Captions.c
        str1 = ""
        self.est = Distance.NaN()
        self.rea = Distance.NaN()
        self.c = Distance.NaN()
        self.x = Distance.NaN()
        self.d = Distance.NaN()
        self.custom = Distance.NaN()
        if (not flag):
            self.parametersPanel.txtTAS.setText(Captions.NOT_APPLICABLE)
            self.parametersPanel.txtEST.setText(Captions.NOT_APPLICABLE)
            self.parametersPanel.txtREA.setText(Captions.NOT_APPLICABLE)
            self.parametersPanel.txtC.setText(Captions.NOT_APPLICABLE)
            self.parametersPanel.txtX.setText(Captions.NOT_APPLICABLE)
            self.parametersPanel.txtD.setText(Captions.NOT_APPLICABLE)
            self.parametersPanel.txtNonStandardResult.setText(
                Captions.NOT_APPLICABLE)
        else:
            value = Speed(float(self.parametersPanel.txtIAS.text()),
                          SpeedUnits.KTS)
            altitude = Altitude(float(self.parametersPanel.txtAltitude.text()),
                                AltitudeUnits.FT)
            value1 = float(self.parametersPanel.txtISA.text())
            selectedIndex = self.parametersPanel.cmbType.currentText()
            if selectedIndex == IasTasSegmentType.Departure or selectedIndex == IasTasSegmentType.MissedApproach:
                speed = Speed(30)
                num = 3
                speed1 = Speed(30)
                num1 = 3
            elif selectedIndex == IasTasSegmentType.Enroute:
                speed = Speed.smethod_1(altitude)
                num = 5
                speed1 = Speed.smethod_1(altitude)
                num1 = 10
            elif selectedIndex == IasTasSegmentType.Holding or selectedIndex == IasTasSegmentType.InitialRR:
                speed = Speed.smethod_1(altitude)
                num = 5
                speed1 = Speed.smethod_1(altitude)
                num1 = 6
            elif selectedIndex == IasTasSegmentType.InitialDR or selectedIndex == IasTasSegmentType.IafIfFaf:
                speed = Speed(30)
                num = 5
                speed1 = Speed(30)
                num1 = 6
            else:
                pass

    #                 throw new Exception(Messages.ERR_UNSUPPORTED_PROCEDURE_SEGMENT_TYPE);
            if (selectedIndex == IasTasSegmentType.Departure):
                m = value
                n = (value / 10)
                value = m + n
                tAS = tAS + " (" + Captions.IAS + "+ 10%)"
            speed2 = Speed.smethod_0(value, value1, altitude)
            self.est = self.method_27(speed2, speed, num)
            self.rea = self.method_27(speed2, speed1, num1)
            self.c = self.est + self.rea
            self.x = self.method_27(speed2, Speed(10), 15)
            self.d = self.method_27(speed2, Speed(10), 3)
            eST = eST + " (%i kts / %i s)" % (speed.Knots, num)
            pILOTREACTION = pILOTREACTION + " (%i kts / %i s)" % (speed1.Knots,
                                                                  num1)
            str0 = str0 + " (%i kts / %i + %i s)" % (speed.Knots, num, num1)
            self.parametersPanel.label_10.setText(tAS)
            self.parametersPanel.txtTAS.setText(str(speed2.Knots) + "kts")
            self.parametersPanel.label_73.setText(eST)
            self.parametersPanel.txtEST.setText(str(self.est.Metres) + "m")
            self.parametersPanel.label_74.setText(pILOTREACTION)
            self.parametersPanel.txtREA.setText(str(self.rea.Metres) + "m")
            self.parametersPanel.label_75.setText(str0)
            self.parametersPanel.txtC.setText(str(self.c.Metres) + "m")
            self.parametersPanel.txtX.setText(str(self.x.Metres) + "m")
            self.parametersPanel.txtD.setText(str(self.d.Metres) + "m")
            if (not flag1):
                self.parametersPanel.txtNonStandardResult.setText(
                    Captions.NOT_APPLICABLE)
            else:
                self.custom = self.method_27(
                    speed2, self.parametersPanel.pnlWind.Value,
                    float(self.parametersPanel.txtTime.text()))
                str2 = str(self.parametersPanel.pnlWind.Value.Knots) + "kts"
                value2 = float(self.parametersPanel.txtTime.text())
                str1 = "%s / %i s" % (str2, value2)
                self.parametersPanel.txtNonStandardResult.setText(
                    str(self.custom.Metres) + "m")
        self.parametersPanel.label_10.setText(tAS)
        self.parametersPanel.label_73.setText(eST)
        self.parametersPanel.label_74.setText(pILOTREACTION)
        self.parametersPanel.label_75.setText(str0)
        self.parametersPanel.label_11.setText(str1)
        #     self.method_28(self.pnlEST);
        #     self.method_28(self.pnlREA);
        #     self.method_28(self.pnlC);
        #     self.method_28(self.pnlX);
        #     self.method_28(self.pnlD);
        #     self.method_28(self.pnlNonStandardResult);
        self.parametersPanel.frame_X.setVisible(
            self.parametersPanel.cmbType.currentIndex() == 6)
        self.parametersPanel.frame_D.setVisible(
            self.parametersPanel.cmbType.currentIndex() == 6)
        self.parametersPanel.gbNonStandardResult.setVisible(
            self.parametersPanel.txtNonStandardResult.text() !=
            Captions.NOT_APPLICABLE)