Beispiel #1
0
    def __init__(self, parent, title, valueList=None):
        QDialog.__init__(self, parent)

        self.resize(100, 70)
        self.setWindowTitle(title)
        sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)
        verticalLayoutDlg = QVBoxLayout(self)
        verticalLayoutDlg.setObjectName(("verticalLayoutDlg"))

        self.frameBasic = Frame(self)
        verticalLayoutDlg.addWidget(self.frameBasic)

        self.pnlName = TextBoxPanel(self.frameBasic)
        self.pnlName.Caption = "Name"
        self.pnlName.LabelWidth = 120
        self.frameBasic.Add = self.pnlName

        self.pnlLowerLimit = DistanceBoxPanel(self.frameBasic, DistanceUnits.M)
        self.pnlLowerLimit.Caption = "Lower Limit"
        self.pnlLowerLimit.Button = None
        self.pnlLowerLimit.LabelWidth = 120
        self.frameBasic.Add = self.pnlLowerLimit

        self.pnlUpperLimit = DistanceBoxPanel(self.frameBasic, DistanceUnits.M)
        self.pnlUpperLimit.Caption = "Upper Limit"
        self.pnlUpperLimit.Button = None
        self.pnlUpperLimit.LabelWidth = 120
        self.frameBasic.Add = self.pnlUpperLimit

        self.pnlRadius = DistanceBoxPanel(self.frameBasic, DistanceUnits.M)
        self.pnlRadius.Caption = "Radius"
        self.pnlRadius.Button = None
        self.pnlRadius.LabelWidth = 120
        self.frameBasic.Add = self.pnlRadius

        self.btnBoxOkCancel = QDialogButtonBox(self)
        self.btnBoxOkCancel.setObjectName(("btnBoxOkCancel"))
        self.btnBoxOkCancel.setStandardButtons(QDialogButtonBox.Cancel
                                               | QDialogButtonBox.Ok)
        self.connect(self.btnBoxOkCancel, SIGNAL("accepted()"), self.acceptDlg)
        self.connect(self.btnBoxOkCancel, SIGNAL("rejected()"), self.reject)

        verticalLayoutDlg.addWidget(self.btnBoxOkCancel)

        self.name = ""
        self.lowerLimit = ""
        self.upperLimit = ""
        self.radius = ""

        if valueList != None:
            self.pnlName.Value = valueList[0]
            self.pnlLowerLimit.Value = Distance(float(valueList[1]))
            self.pnlUpperLimit.Value = Distance(float(valueList[2]))
            if valueList[3] != None and valueList[3] != "":
                self.pnlRadius.Value = Distance(float(valueList[3]))
Beispiel #2
0
    def __init__(self, parent, thrPos, rwyPos=None, track=None):
        QDialog.__init__(self, parent)
        self.baseTrack = track
        self.resize(290, 136)
        self.setWindowTitle("Calculate FAP")
        sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)
        verticalLayoutDlg = QVBoxLayout(self)
        verticalLayoutDlg.setObjectName(("verticalLayoutDlg"))

        self.groupBox = GroupBox(self)
        verticalLayoutDlg.addWidget(self.groupBox)

        self.pnlThrPosition = PositionPanel(self.groupBox)
        self.pnlThrPosition.Point3d = thrPos
        self.groupBox.Add = self.pnlThrPosition
        self.pnlThrPosition.Visible = False

        self.pnlRwyEndPosition = PositionPanel(self.groupBox)
        self.pnlRwyEndPosition.Point3d = rwyPos
        self.groupBox.Add = self.pnlRwyEndPosition
        self.pnlRwyEndPosition.Visible = False

        self.pnlTrack = TrackRadialBoxPanel(self.groupBox)
        self.pnlTrack.Caption = "Track"
        if rwyPos == None:
            self.pnlTrack.Value = track
        else:
            self.pnlTrack.Value = MathHelper.getBearing(thrPos, rwyPos)
        self.pnlTrack.LabelWidth = 100
        self.groupBox.Add = self.pnlTrack

        self.pnlDist = DistanceBoxPanel(self.groupBox, DistanceUnits.M,
                                        DistanceUnits.NM)
        self.pnlDist.Caption = "Distance"
        self.pnlDist.Value = Distance(5, DistanceUnits.NM)
        self.pnlDist.LabelWidth = 100
        self.groupBox.Add = self.pnlDist

        self.btnBoxOkCancel = QDialogButtonBox(self)
        self.btnBoxOkCancel.setObjectName(("btnBoxOkCancel"))
        self.btnBoxOkCancel.setStandardButtons(QDialogButtonBox.Cancel
                                               | QDialogButtonBox.Ok)
        self.connect(self.btnBoxOkCancel, SIGNAL("accepted()"), self.acceptDlg)
        self.connect(self.btnBoxOkCancel, SIGNAL("rejected()"), self.reject)

        verticalLayoutDlg.addWidget(self.btnBoxOkCancel)
Beispiel #3
0
    def __init__(self, parent):
        QDialog.__init__(self, parent)

        self.resize(100, 70)
        self.setWindowTitle("Navigational Aid")
        sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)
        verticalLayoutDlg = QVBoxLayout(self)
        verticalLayoutDlg.setObjectName(("verticalLayoutDlg"))

        self.gbAll = GroupBox(self)
        self.gbAll.Caption = "Properties"
        verticalLayoutDlg.addWidget(self.gbAll)

        self.pnlType = ComboBoxPanel(self.gbAll)
        self.pnlType.Caption = "Type"
        self.pnlType.LabelWidth = 140
        self.gbAll.Add = self.pnlType

        self.pnlName = TextBoxPanel(self.gbAll)
        self.pnlName.Caption = "Name"
        self.pnlName.LabelWidth = 140
        self.pnlType.Items = NavigationalAidType.Items
        self.gbAll.Add = self.pnlName

        self.pnlSlope = AngleGradientBoxPanel(self.gbAll)
        self.pnlSlope.CaptionUnits = AngleGradientSlopeUnits.Degrees
        self.pnlSlope.Caption = "Slope"
        self.pnlSlope.LabelWidth = 140
        self.gbAll.Add = self.pnlSlope

        self.pnlStartingHeight = AltitudeBoxPanel(self.gbAll)
        self.pnlStartingHeight.Caption = "Starting Height"
        self.pnlStartingHeight.CaptionUnits = "m"
        self.pnlStartingHeight.LabelWidth = 140
        self.gbAll.Add = self.pnlStartingHeight

        self.pnlFinishingDistance = DistanceBoxPanel(self.gbAll,
                                                     DistanceUnits.M)
        self.pnlFinishingDistance.Caption = "Finishing Distance"
        self.pnlFinishingDistance.LabelWidth = 140
        self.gbAll.Add = self.pnlFinishingDistance

        self.pnlAlfa = AngleGradientBoxPanel(self.gbAll)
        self.pnlAlfa.CaptionUnits = AngleGradientSlopeUnits.Degrees
        self.pnlAlfa.Caption = "Alpha [" + unicode("α", "utf-8") + " - Cone]"
        self.pnlAlfa.LabelWidth = 140
        self.gbAll.Add = self.pnlAlfa

        self.pnlRadiusCone = DistanceBoxPanel(self.gbAll, DistanceUnits.M)
        self.pnlRadiusCone.Caption = "Radius [R - Cone]"
        self.pnlRadiusCone.LabelWidth = 140
        self.gbAll.Add = self.pnlRadiusCone

        self.pnlRadiusCylinder = DistanceBoxPanel(self.gbAll, DistanceUnits.M)
        self.pnlRadiusCylinder.Caption = "Radius [r - Cylinder]"
        self.pnlRadiusCylinder.LabelWidth = 140
        self.gbAll.Add = self.pnlRadiusCylinder

        self.pnla = DistanceBoxPanel(self.gbAll, DistanceUnits.M)
        self.pnla.Caption = "a"
        self.pnla.LabelWidth = 140
        self.gbAll.Add = self.pnla

        self.pnlb = DistanceBoxPanel(self.gbAll, DistanceUnits.M)
        self.pnlb.Caption = "b"
        self.pnlb.LabelWidth = 140
        self.gbAll.Add = self.pnlb

        self.pnlh = AltitudeBoxPanel(self.gbAll)
        self.pnlh.Caption = "h"
        self.pnlh.CaptionUnits = "m"
        self.pnlh.LabelWidth = 140
        self.gbAll.Add = self.pnlh

        self.pnlr = DistanceBoxPanel(self.gbAll, DistanceUnits.M)
        self.pnlr.Caption = "r"
        self.pnlr.LabelWidth = 140
        self.gbAll.Add = self.pnlr

        self.pnlD = DistanceBoxPanel(self.gbAll, DistanceUnits.M)
        self.pnlD.Caption = "D"
        self.pnlD.LabelWidth = 140
        self.gbAll.Add = self.pnlD

        self.pnlHbig = AltitudeBoxPanel(self.gbAll)
        self.pnlHbig.Caption = "H"
        self.pnlHbig.CaptionUnits = "m"
        self.pnlHbig.LabelWidth = 140
        self.gbAll.Add = self.pnlHbig

        self.pnlL = DistanceBoxPanel(self.gbAll, DistanceUnits.M)
        self.pnlL.Caption = "L"
        self.pnlL.LabelWidth = 140
        self.gbAll.Add = self.pnlL

        self.pnlphi = AngleGradientBoxPanel(self.gbAll)
        self.pnlphi.CaptionUnits = AngleGradientSlopeUnits.Degrees
        self.pnlphi.Caption = unicode("ɸ", "utf-8")
        self.pnlphi.LabelWidth = 140
        self.gbAll.Add = self.pnlphi

        self.btnBoxOkCancel = QDialogButtonBox(self)
        self.btnBoxOkCancel.setObjectName(("btnBoxOkCancel"))
        self.btnBoxOkCancel.setStandardButtons(QDialogButtonBox.Cancel
                                               | QDialogButtonBox.Ok)
        self.connect(self.btnBoxOkCancel, SIGNAL("accepted()"), self.acceptDlg)
        self.connect(self.btnBoxOkCancel, SIGNAL("rejected()"), self.reject)

        verticalLayoutDlg.addWidget(self.btnBoxOkCancel)

        self.connect(self.pnlType, SIGNAL("Event_0"), self.method_5)

        self.shownOnce = False
        self.method_5()
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(473, 580)
        font = QtGui.QFont()
        font.setFamily("Arial")
        font.setBold(False)
        font.setWeight(50)
        Form.setFont(font)
        self.vlForm = QtGui.QVBoxLayout(Form)
        self.vlForm.setObjectName(("vlForm"))

        self.gbPosition = GroupBox(Form)
        self.gbPosition.Caption = "Positions"
        self.gbPosition.layoutBoxPanel.setSpacing(9)
        self.vlForm.addWidget(self.gbPosition)

        self.gbNavAid = GroupBox(self.gbPosition)
        self.gbNavAid.Caption = "Navigational Aid"
        self.gbPosition.Add = self.gbNavAid

        self.cmbNavAidType = ComboBoxPanel(self.gbNavAid)
        self.cmbNavAidType.Caption = "Type"
        self.cmbNavAidType.Items = ["NDB", "NDB/DME", "VOR", "VOR/DME"]
        self.cmbNavAidType.LabelWidth = 140
        self.gbNavAid.Add = self.cmbNavAidType

        self.cmbBasedOn = ComboBoxPanel(self.gbNavAid, True)
        self.cmbBasedOn.Caption = "Based On"
        self.cmbBasedOn.LabelWidth = 140
        self.cmbBasedOn.Width = 121
        self.gbNavAid.Add = self.cmbBasedOn

        self.pnlNavAidPos = PositionPanel(self.gbNavAid)
        self.pnlNavAidPos.btnCalculater.hide()
        self.pnlNavAidPos.hideframe_Altitude()
        self.gbNavAid.Add = self.pnlNavAidPos

        self.pnlDmePos = PositionPanel(self.gbPosition)
        self.pnlDmePos.Caption = "DME Position"
        self.pnlDmePos.btnCalculater.hide()
        self.pnlDmePos.hideframe_Altitude()
        self.gbPosition.Add = self.pnlDmePos

        self.cmbEntry = ComboBoxPanel(self.gbPosition)
        self.cmbEntry.Caption = "Entry"
        self.cmbEntry.Items = ["Omnidirectional", "On Track"]
        self.cmbEntry.LabelWidth = 140
        self.gbPosition.Add = self.cmbEntry

        self.txtBearing = TrackRadialBoxPanel(self.gbPosition)
        self.txtBearing.Caption = "Outbound Track"
        self.txtBearing.LabelWidth = 140
        self.gbPosition.Add = self.txtBearing



        self.gbParameters = GroupBox(Form)
        self.gbParameters.Caption = "Parameters"
        self.gbParameters.layoutBoxPanel.setSpacing(9)
        self.vlForm.addWidget(self.gbParameters)

        self.cmbDirection = ComboBoxPanel(self.gbParameters)
        self.cmbDirection.Caption = "Turn Direction"
        self.cmbDirection.Items = ["Right", "Left"]
        self.cmbDirection.LabelWidth = 140
        self.cmbDirection.Width = 70
        self.gbParameters.Add = self.cmbDirection

        self.cmbAircraftCatgory = ComboBoxPanel(self.gbParameters)
        self.cmbAircraftCatgory.Caption = "Aircraft Category"
        self.cmbAircraftCatgory.Items = ["A", "B", "C", "D", "E"]
        self.cmbAircraftCatgory.LabelWidth = 140
        self.cmbAircraftCatgory.Width = 50
        self.gbParameters.Add = self.cmbAircraftCatgory

        self.cmbCondition = ComboBoxPanel(self.gbParameters)
        self.cmbCondition.Caption = "Condition"
        self.cmbCondition.Items = ["Normal Condition", "Turbulence Condition"]
        self.cmbCondition.LabelWidth = 140
        self.gbParameters.Add = self.cmbCondition

        self.txtNAVAlt = AltitudeBoxPanel(self.gbParameters)
        self.txtNAVAlt.CaptionUnits = "ft"
        self.txtNAVAlt.Caption = "NAV Altitude"
        self.txtNAVAlt.LabelWidth = 140
        self.gbParameters.Add = self.txtNAVAlt

        self.txtInitialAlt = AltitudeBoxPanel(self.gbParameters)
        self.txtInitialAlt.CaptionUnits = "ft"
        self.txtInitialAlt.Caption = "Initial Altitude"
        self.txtInitialAlt.LabelWidth = 140
        self.gbParameters.Add = self.txtInitialAlt

        self.txtTurnAlt = AltitudeBoxPanel(self.gbParameters)
        self.txtTurnAlt.CaptionUnits = "ft"
        self.txtTurnAlt.Caption = "Turn Altitude"
        self.txtTurnAlt.LabelWidth = 140
        self.gbParameters.Add = self.txtTurnAlt

        self.txtFinalAlt = AltitudeBoxPanel(self.gbParameters)
        self.txtFinalAlt.CaptionUnits = "ft"
        self.txtFinalAlt.Caption = "Final Altitude"
        self.txtFinalAlt.LabelWidth = 140
        self.gbParameters.Add = self.txtFinalAlt

        self.txtLimitDistance = DistanceBoxPanel(self.gbParameters, DistanceUnits.NM)
        self.txtLimitDistance.Caption = "Limiting Distance"
        self.txtLimitDistance.Button = None
        self.txtLimitDistance.LabelWidth = 140
        self.gbParameters.Add = self.txtLimitDistance

        self.txtOutboundTime = NumberBoxPanel(self.gbParameters )
        self.txtOutboundTime.Caption = "Outbound Time"
        self.txtOutboundTime.LabelWidth = 140
        self.gbParameters.Add = self.txtOutboundTime

        self.txtOutboundLeg = DistanceBoxPanel(self.gbParameters, DistanceUnits.NM)
        self.txtOutboundLeg.Caption = "Outbound Leg"
        self.txtOutboundLeg.Button = None
        self.txtOutboundLeg.LabelWidth = 140
        self.gbParameters.Add = self.txtOutboundLeg

        self.txtISA = NumberBoxPanel(self.gbParameters, "0.0")
        self.txtISA.CaptionUnits = define._degreeStr
        self.txtISA.Caption = "ISA"
        self.txtISA.LabelWidth = 140
        self.gbParameters.Add = self.txtISA

        self.txtIAS = SpeedBoxPanel(self.gbParameters, SpeedUnits.KTS)
        self.txtIAS.Caption = "IAS"
        self.txtIAS.LabelWidth = 140
        self.gbParameters.Add = self.txtIAS

        self.txtTAS = SpeedBoxPanel(self.gbParameters, SpeedUnits.KTS)
        self.txtTAS.Caption = "TAS"
        self.txtTAS.LabelWidth = 140
        self.gbParameters.Add = self.txtTAS
Beispiel #5
0
    def setupUi(self, Dialog, catType):
        Dialog.setObjectName(_fromUtf8("Dialog"))
        Dialog.resize(300, 300)
        Dialog.setMinimumSize(QtCore.QSize(0, 0))
        self.verticalLayout_11 = QtGui.QVBoxLayout(Dialog)
        self.verticalLayout_11.setObjectName(_fromUtf8("verticalLayout_11"))
        self.tabControls = QtGui.QTabWidget(Dialog)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.tabControls.setFont(font)
        self.tabControls.setAutoFillBackground(False)
        self.tabControls.setStyleSheet(_fromUtf8(""))
        self.tabControls.setObjectName(_fromUtf8("tabControls"))
        self.tab_General = QtGui.QWidget(Dialog)
        self.tab_General.setObjectName(_fromUtf8("tab_General"))
        self.horizontalLayout_29 = QtGui.QHBoxLayout(self.tab_General)
        self.horizontalLayout_29.setMargin(3)
        self.horizontalLayout_29.setObjectName(_fromUtf8("horizontalLayout_29"))

        self.tabCtrlGeneral = QtGui.QTabWidget(self.tab_General)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.tabCtrlGeneral.setFont(font)
        self.tabCtrlGeneral.setAutoFillBackground(False)
        self.tabCtrlGeneral.setStyleSheet(_fromUtf8(""))
        self.tabCtrlGeneral.setObjectName(_fromUtf8("tabCtrlGeneral"))
        self.horizontalLayout_29.addWidget(self.tabCtrlGeneral)

        self.tabInputData = QtGui.QWidget(self.tabCtrlGeneral)
        self.tabInputData.setObjectName(_fromUtf8("tabInputData"))

        self.vLayoutTabInputData = QtGui.QVBoxLayout(self.tabInputData)
        self.vLayoutTabInputData.setMargin(3)
        self.vLayoutTabInputData.setObjectName(_fromUtf8("vLayoutTabInputData"))
        self.tabCtrlGeneral.addTab(self.tabInputData, "Input Data")

        self.tabOasIls = QtGui.QWidget(self.tabCtrlGeneral)
        self.tabOasIls.setObjectName(_fromUtf8("tabOasIls"))
        self.vLayoutTabOasIls = QtGui.QHBoxLayout(self.tabOasIls)
        self.vLayoutTabOasIls.setMargin(3)
        self.vLayoutTabOasIls.setObjectName(_fromUtf8("vLayoutTabOasIls"))
        if catType == "ILS":
            self.tabCtrlGeneral.addTab(self.tabOasIls, "OAS ILS")
        else:
            self.tabCtrlGeneral.addTab(self.tabOasIls, "OAS SBAS")



        self.groupBox_11 = QtGui.QGroupBox(self.tabInputData)
        self.groupBox_11.setTitle(_fromUtf8(""))
        self.groupBox_11.setObjectName(_fromUtf8("groupBox_11"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.groupBox_11)
        self.verticalLayout_5.setMargin(5)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))

        self.cmbAerodrome = ComboBoxPanel(self.groupBox_11, True)
        self.cmbAerodrome.Caption = "Aerodrome"
        self.cmbAerodrome.LabelWidth = 120
        # self.cmbAerodrome.Editable = True
        self.verticalLayout_5.addWidget(self.cmbAerodrome)

        self.cmbRwyDir = ComboBoxPanel(self.groupBox_11, True)
        self.cmbRwyDir.Caption = "Runway Direction"
        self.cmbRwyDir.LabelWidth = 120
        self.cmbRwyDir.Width = 120
        self.verticalLayout_5.addWidget(self.cmbRwyDir)

        self.pnlThr = PositionPanel(self.groupBox_11)
        self.pnlThr.groupBox.setTitle("Threshold Position")
        self.pnlThr.btnCalculater.setVisible(False)
        self.verticalLayout_5.addWidget(self.pnlThr)

        self.pnlRwyEnd = PositionPanel(self.groupBox_11)
        self.pnlRwyEnd.groupBox.setTitle("Runway End Position")
        self.pnlRwyEnd.btnCalculater.setVisible(False)
        self.pnlRwyEnd.hideframe_Altitude()
        self.verticalLayout_5.addWidget(self.pnlRwyEnd)

        self.txtTrack = TrackRadialBoxPanel(self.groupBox_11)
        self.txtTrack.Caption = "In-Bound Track"
        self.txtTrack.LabelWidth = 120
        self.verticalLayout_5.addWidget(self.txtTrack)

        self.frame_37 = QtGui.QFrame(self.tabOasIls)
        self.frame_37.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_37.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_37.setObjectName(_fromUtf8("frame_37"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.frame_37)
        self.verticalLayout_2.setMargin(0)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.groupBox_20 = QtGui.QGroupBox(self.frame_37)
        self.groupBox_20.setObjectName(_fromUtf8("groupBox_20"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.groupBox_20)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))

        self.cmbSelectionMode = ComboBoxPanel(self.groupBox_20)
        self.cmbSelectionMode.Caption = "Selection Mode"
        self.verticalLayout_3.addWidget(self.cmbSelectionMode)



        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/coordinate_capture.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)

        self.txtOCAH = OCAHPanel(self.groupBox_20)
        self.txtOCAH.Value = Altitude(2000, AltitudeUnits.FT)
        self.verticalLayout_3.addWidget(self.txtOCAH)

        self.txtMOC = AltitudeBoxPanel(self.groupBox_20)
        self.txtMOC.Caption = "Intermediate Segment MOC"
        self.txtMOC.CaptionUnits = "m"
        self.txtMOC.Value = Altitude(150)
        self.verticalLayout_3.addWidget(self.txtMOC)

        self.cmbConstructionType = ComboBoxPanel(self.groupBox_20)
        self.cmbConstructionType.Caption = "Construction Type"
        self.verticalLayout_3.addWidget(self.cmbConstructionType)

        self.verticalLayout_2.addWidget(self.groupBox_20)
        self.groupBox_2 = QtGui.QGroupBox(self.frame_37)
        self.groupBox_2.setObjectName(_fromUtf8("groupBox_2"))
        self.verticalLayout = QtGui.QVBoxLayout(self.groupBox_2)
        self.verticalLayout.setSpacing(0)
        self.verticalLayout.setMargin(0)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.frame_5 = QtGui.QFrame(self.groupBox_2)
        self.frame_5.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_5.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_5.setObjectName(_fromUtf8("frame_5"))
        self.horizontalLayout = QtGui.QHBoxLayout(self.frame_5)
        self.horizontalLayout.setSpacing(0)
        self.horizontalLayout.setMargin(0)
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.frame_6 = QtGui.QFrame(self.frame_5)
        self.frame_6.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_6.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_6.setObjectName(_fromUtf8("frame_6"))
        self.verticalLayout_9 = QtGui.QVBoxLayout(self.frame_6)
        self.verticalLayout_9.setContentsMargins(-1, -1, -1, 0)
        self.verticalLayout_9.setObjectName(_fromUtf8("verticalLayout_9"))

        self.cmbOasCategory = ComboBoxPanel(self.frame_6)
        self.cmbOasCategory.Caption = "Category"
        self.cmbOasCategory.LabelWidth = 150
        self.verticalLayout_9.addWidget(self.cmbOasCategory)

        self.cmbGPA = ComboBoxPanel(self.frame_6)
        self.cmbGPA.CaptionUnits = define._degreeStr
        self.cmbGPA.Caption = "Glide Path Angle"
        self.cmbGPA.LabelWidth = 150
        self.verticalLayout_9.addWidget(self.cmbGPA)

        self.cmbMACG = ComboBoxPanel(self.frame_6)
        self.cmbMACG.CaptionUnits = "%"
        self.cmbMACG.Caption = "MA Climb Gradient"
        self.cmbMACG.LabelWidth = 150
        self.verticalLayout_9.addWidget(self.cmbMACG)

        self.txtRDH = NumberBoxPanel(self.frame_6)
        self.txtRDH.CaptionUnits = "m"
        self.txtRDH.Caption = "RDH at Threshold"
        self.txtRDH.LabelWidth = 150
        self.txtRDH.Value = 15
        self.verticalLayout_9.addWidget(self.txtRDH)

        self.horizontalLayout.addWidget(self.frame_6)

        self.frame_7 = QtGui.QFrame(self.frame_5)
        self.frame_7.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_7.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_7.setObjectName(_fromUtf8("frame_7"))
        self.verticalLayout_13 = QtGui.QVBoxLayout(self.frame_7)
        self.verticalLayout_13.setContentsMargins(9, -1, -1, 0)
        self.verticalLayout_13.setObjectName(_fromUtf8("verticalLayout_13"))

        self.txtCW = NumberBoxPanel(self.frame_7)
        self.txtCW.CaptionUnits = "m"
        self.txtCW.Caption = "LOC Course Width at THR"
        self.txtCW.LabelWidth = 175
        self.txtCW.Value = 210
        self.verticalLayout_13.addWidget(self.txtCW)

        self.txtDLT = DistanceBoxPanel(self.frame_7, DistanceUnits.M)
        self.txtDLT.Caption = "LOC to THR Distance"
        self.txtDLT.LabelWidth = 175
        self.txtDLT.Value = Distance(2000)
        self.verticalLayout_13.addWidget(self.txtDLT)

        self.txtContourHeight = NumberBoxPanel(self.frame_7)
        self.txtContourHeight.CaptionUnits = "m"
        self.txtContourHeight.Caption = "OCA Contour Height AGL"
        self.txtContourHeight.LabelWidth = 175
        self.txtContourHeight.Value = 300
        self.verticalLayout_13.addWidget(self.txtContourHeight)

        self.cmbMAMethod = ComboBoxPanel(self.frame_7)
        self.cmbMAMethod.Caption = "MA Obstacles Evaluation"
        self.cmbMAMethod.LabelWidth = 175
        self.verticalLayout_13.addWidget(self.cmbMAMethod)

        self.horizontalLayout.addWidget(self.frame_7)
        self.verticalLayout.addWidget(self.frame_5)

        self.frame_4 = QtGui.QFrame(self.groupBox_2)
        self.frame_4.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_4.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_4.setObjectName(_fromUtf8("frame_4"))
        self.horizontalLayout_2 = QtGui.QHBoxLayout(self.frame_4)
        self.horizontalLayout_2.setSpacing(0)
        self.horizontalLayout_2.setMargin(0)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.groupBox_3 = QtGui.QGroupBox(self.frame_4)
        self.groupBox_3.setObjectName(_fromUtf8("groupBox_3"))
        self.horizontalLayout_6 = QtGui.QHBoxLayout(self.groupBox_3)
        self.horizontalLayout_6.setSpacing(0)
        self.horizontalLayout_6.setMargin(0)
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.frame_8 = QtGui.QFrame(self.groupBox_3)
        self.frame_8.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_8.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_8.setObjectName(_fromUtf8("frame_8"))
        self.verticalLayout_14 = QtGui.QVBoxLayout(self.frame_8)
        self.verticalLayout_14.setContentsMargins(6, 0, -1, -1)
        self.verticalLayout_14.setObjectName(_fromUtf8("verticalLayout_14"))

        self.cmbAcCategory = ComboBoxPanel(self.frame_8)
        self.cmbAcCategory.Caption = "Category"
        self.cmbAcCategory.LabelWidth = 150
        self.verticalLayout_14.addWidget(self.cmbAcCategory)

        self.txtHL = NumberBoxPanel(self.frame_8)
        self.txtHL.CaptionUnits = "m"
        self.txtHL.Caption = "Height Loss"
        self.txtHL.LabelWidth = 150
        self.txtHL.Value = 40
        self.verticalLayout_14.addWidget(self.txtHL)

        self.horizontalLayout_6.addWidget(self.frame_8)
        self.frame_9 = QtGui.QFrame(self.groupBox_3)
        self.frame_9.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_9.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_9.setObjectName(_fromUtf8("frame_9"))
        self.verticalLayout_15 = QtGui.QVBoxLayout(self.frame_9)
        self.verticalLayout_15.setContentsMargins(3, 0, -1, -1)
        self.verticalLayout_15.setObjectName(_fromUtf8("verticalLayout_15"))

        self.txtWSS = NumberBoxPanel(self.frame_9, "0.0")
        self.txtWSS.CaptionUnits = "m"
        self.txtWSS.Caption = "Wing Semi Span"
        self.txtWSS.LabelWidth = 175
        self.txtWSS.Value = 30
        self.verticalLayout_15.addWidget(self.txtWSS)

        self.txtWH = NumberBoxPanel(self.frame_9, "0")
        self.txtWH.CaptionUnits = "m"
        self.txtWH.Caption = "Wheel Height"
        self.txtWH.LabelWidth = 175
        self.txtWH.Value = 6
        self.verticalLayout_15.addWidget(self.txtWH)

        self.horizontalLayout_6.addWidget(self.frame_9)
        self.horizontalLayout_2.addWidget(self.groupBox_3)
        self.verticalLayout.addWidget(self.frame_4)
        self.lblConstants = QtGui.QLabel(self.groupBox_2)
        font = QtGui.QFont()
        font.setUnderline(True)
        self.lblConstants.setFont(font)
        self.lblConstants.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.lblConstants.setStyleSheet(_fromUtf8("color: rgb(0, 0, 255);"))
        self.lblConstants.setAlignment(QtCore.Qt.AlignCenter)
        self.lblConstants.setObjectName(_fromUtf8("lblConstants"))
        self.verticalLayout.addWidget(self.lblConstants)
        self.verticalLayout_2.addWidget(self.groupBox_2)
        self.vLayoutTabOasIls.addWidget(self.frame_37)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_5.addItem(spacerItem)
        self.vLayoutTabInputData.addWidget(self.groupBox_11)
        self.frame_38 = QtGui.QFrame(self.tab_General)
        self.frame_38.setMaximumSize(QtCore.QSize(100, 16777215))
        self.frame_38.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_38.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_38.setObjectName(_fromUtf8("frame_38"))
        self.verticalLayout_7 = QtGui.QVBoxLayout(self.frame_38)
        self.verticalLayout_7.setObjectName(_fromUtf8("verticalLayout_7"))
        self.btnOpenData = QtGui.QPushButton(self.frame_38)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.btnOpenData.setFont(font)
        self.btnOpenData.setObjectName(_fromUtf8("btnOpenData"))
        self.verticalLayout_7.addWidget(self.btnOpenData)
        self.btnSaveData = QtGui.QPushButton(self.frame_38)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.btnSaveData.setFont(font)
        self.btnSaveData.setObjectName(_fromUtf8("btnSaveData"))
        self.verticalLayout_7.addWidget(self.btnSaveData)
        self.btnConstruct = QtGui.QPushButton(self.frame_38)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.btnConstruct.setFont(font)
        self.btnConstruct.setObjectName(_fromUtf8("btnConstruct"))
        self.verticalLayout_7.addWidget(self.btnConstruct)
        self.btnEvaluate = QtGui.QPushButton(self.frame_38)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.btnEvaluate.setFont(font)
        self.btnEvaluate.setObjectName(_fromUtf8("btnEvaluate"))
        self.verticalLayout_7.addWidget(self.btnEvaluate)
        self.btnUpdateQA = QtGui.QPushButton(self.frame_38)
        self.btnUpdateQA.setEnabled(False)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.btnUpdateQA.setFont(font)
        self.btnUpdateQA.setObjectName(_fromUtf8("btnUpdateQA"))
        self.verticalLayout_7.addWidget(self.btnUpdateQA)
        self.btnClose = QtGui.QPushButton(self.frame_38)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.btnClose.setFont(font)
        self.btnClose.setObjectName(_fromUtf8("btnClose"))
        self.verticalLayout_7.addWidget(self.btnClose)
        spacerItem1 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_7.addItem(spacerItem1)
        self.horizontalLayout_29.addWidget(self.frame_38)
        self.tabControls.addTab(self.tab_General, _fromUtf8(""))
        self.tab_Results = QtGui.QWidget(Dialog)
        self.tab_Results.setObjectName(_fromUtf8("tab_Results"))
        self.horizontalLayout_3 = QtGui.QHBoxLayout(self.tab_Results)
        self.horizontalLayout_3.setSpacing(3)
        self.horizontalLayout_3.setMargin(3)
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.groupBox = QtGui.QGroupBox(self.tab_Results)
        self.groupBox.setTitle(_fromUtf8(""))
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.verticalLayout_6 = QtGui.QVBoxLayout(self.groupBox)
        self.verticalLayout_6.setMargin(3)
        self.verticalLayout_6.setObjectName(_fromUtf8("verticalLayout_6"))
        self.groupBox_32 = QtGui.QGroupBox(self.groupBox)
        self.groupBox_32.setObjectName(_fromUtf8("groupBox_32"))
        self.verticalLayout_16 = QtGui.QVBoxLayout(self.groupBox_32)
        self.verticalLayout_16.setContentsMargins(-1, 0, -1, 3)
        self.verticalLayout_16.setObjectName(_fromUtf8("verticalLayout_16"))
        self.frame_2 = QtGui.QFrame(self.groupBox_32)
        self.frame_2.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_2.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_2.setObjectName(_fromUtf8("frame_2"))
        self.horizontalLayout_4 = QtGui.QHBoxLayout(self.frame_2)
        self.horizontalLayout_4.setSpacing(0)
        self.horizontalLayout_4.setMargin(0)
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.frame_3 = QtGui.QFrame(self.frame_2)
        self.frame_3.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_3.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_3.setObjectName(_fromUtf8("frame_3"))
        self.verticalLayout_19 = QtGui.QVBoxLayout(self.frame_3)
        self.verticalLayout_19.setMargin(0)
        self.verticalLayout_19.setObjectName(_fromUtf8("verticalLayout_19"))
        self.frame_107 = QtGui.QFrame(self.frame_3)
        self.frame_107.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_107.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_107.setObjectName(_fromUtf8("frame_107"))
        self.horizontalLayout_94 = QtGui.QHBoxLayout(self.frame_107)
        self.horizontalLayout_94.setSpacing(0)
        self.horizontalLayout_94.setMargin(0)
        self.horizontalLayout_94.setObjectName(_fromUtf8("horizontalLayout_94"))
        self.label_115 = QtGui.QLabel(self.frame_107)
        self.label_115.setMinimumSize(QtCore.QSize(200, 0))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_115.setFont(font)
        self.label_115.setObjectName(_fromUtf8("label_115"))
        self.horizontalLayout_94.addWidget(self.label_115)
        self.txtID = QtGui.QLineEdit(self.frame_107)
        self.txtID.setEnabled(False)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtID.setFont(font)
        self.txtID.setText(_fromUtf8(""))
        self.txtID.setObjectName(_fromUtf8("txtID"))
        self.horizontalLayout_94.addWidget(self.txtID)
        self.verticalLayout_19.addWidget(self.frame_107)
        self.frame_109 = QtGui.QFrame(self.frame_3)
        self.frame_109.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_109.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_109.setObjectName(_fromUtf8("frame_109"))
        self.horizontalLayout_96 = QtGui.QHBoxLayout(self.frame_109)
        self.horizontalLayout_96.setSpacing(0)
        self.horizontalLayout_96.setMargin(0)
        self.horizontalLayout_96.setObjectName(_fromUtf8("horizontalLayout_96"))
        self.label_119 = QtGui.QLabel(self.frame_109)
        self.label_119.setMinimumSize(QtCore.QSize(200, 0))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_119.setFont(font)
        self.label_119.setObjectName(_fromUtf8("label_119"))
        self.horizontalLayout_96.addWidget(self.label_119)
        self.txtX = QtGui.QLineEdit(self.frame_109)
        self.txtX.setEnabled(False)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtX.setFont(font)
        self.txtX.setObjectName(_fromUtf8("txtX"))
        self.horizontalLayout_96.addWidget(self.txtX)
        self.verticalLayout_19.addWidget(self.frame_109)
        self.frame_110 = QtGui.QFrame(self.frame_3)
        self.frame_110.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_110.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_110.setObjectName(_fromUtf8("frame_110"))
        self.horizontalLayout_97 = QtGui.QHBoxLayout(self.frame_110)
        self.horizontalLayout_97.setSpacing(0)
        self.horizontalLayout_97.setMargin(0)
        self.horizontalLayout_97.setObjectName(_fromUtf8("horizontalLayout_97"))
        self.label_120 = QtGui.QLabel(self.frame_110)
        self.label_120.setMinimumSize(QtCore.QSize(200, 0))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_120.setFont(font)
        self.label_120.setObjectName(_fromUtf8("label_120"))
        self.horizontalLayout_97.addWidget(self.label_120)
        self.txtY = QtGui.QLineEdit(self.frame_110)
        self.txtY.setEnabled(False)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtY.setFont(font)
        self.txtY.setObjectName(_fromUtf8("txtY"))
        self.horizontalLayout_97.addWidget(self.txtY)
        self.verticalLayout_19.addWidget(self.frame_110)
        self.horizontalLayout_4.addWidget(self.frame_3)
        self.toolButton = QtGui.QToolButton(self.frame_2)
        self.toolButton.setMaximumSize(QtCore.QSize(25, 250))
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/mActionZoomFullExtent.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.toolButton.setIcon(icon2)
        self.toolButton.setObjectName(_fromUtf8("toolButton"))
        self.horizontalLayout_4.addWidget(self.toolButton)
        self.verticalLayout_16.addWidget(self.frame_2)
        self.frame_108 = QtGui.QFrame(self.groupBox_32)
        self.frame_108.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_108.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_108.setObjectName(_fromUtf8("frame_108"))
        self.horizontalLayout_95 = QtGui.QHBoxLayout(self.frame_108)
        self.horizontalLayout_95.setSpacing(0)
        self.horizontalLayout_95.setMargin(0)
        self.horizontalLayout_95.setObjectName(_fromUtf8("horizontalLayout_95"))
        self.label_116 = QtGui.QLabel(self.frame_108)
        self.label_116.setMinimumSize(QtCore.QSize(200, 0))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_116.setFont(font)
        self.label_116.setObjectName(_fromUtf8("label_116"))
        self.horizontalLayout_95.addWidget(self.label_116)
        self.txtAltitude = QtGui.QLineEdit(self.frame_108)
        self.txtAltitude.setEnabled(False)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtAltitude.setFont(font)
        self.txtAltitude.setObjectName(_fromUtf8("txtAltitude"))
        self.horizontalLayout_95.addWidget(self.txtAltitude)
        self.label_117 = QtGui.QLabel(self.frame_108)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_117.setFont(font)
        self.label_117.setObjectName(_fromUtf8("label_117"))
        self.horizontalLayout_95.addWidget(self.label_117)
        self.txtAltitudeM = QtGui.QLineEdit(self.frame_108)
        self.txtAltitudeM.setEnabled(False)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtAltitudeM.setFont(font)
        self.txtAltitudeM.setObjectName(_fromUtf8("txtAltitudeM"))
        self.horizontalLayout_95.addWidget(self.txtAltitudeM)
        self.label_118 = QtGui.QLabel(self.frame_108)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_118.setFont(font)
        self.label_118.setObjectName(_fromUtf8("label_118"))
        self.horizontalLayout_95.addWidget(self.label_118)
        self.verticalLayout_16.addWidget(self.frame_108)
        self.frame_111 = QtGui.QFrame(self.groupBox_32)
        self.frame_111.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_111.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_111.setObjectName(_fromUtf8("frame_111"))
        self.horizontalLayout_98 = QtGui.QHBoxLayout(self.frame_111)
        self.horizontalLayout_98.setSpacing(0)
        self.horizontalLayout_98.setMargin(0)
        self.horizontalLayout_98.setObjectName(_fromUtf8("horizontalLayout_98"))
        self.label_121 = QtGui.QLabel(self.frame_111)
        self.label_121.setMinimumSize(QtCore.QSize(200, 0))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_121.setFont(font)
        self.label_121.setObjectName(_fromUtf8("label_121"))
        self.horizontalLayout_98.addWidget(self.label_121)
        self.txtSurface = QtGui.QLineEdit(self.frame_111)
        self.txtSurface.setEnabled(False)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtSurface.setFont(font)
        self.txtSurface.setObjectName(_fromUtf8("txtSurface"))
        self.horizontalLayout_98.addWidget(self.txtSurface)
        self.verticalLayout_16.addWidget(self.frame_111)
        self.verticalLayout_6.addWidget(self.groupBox_32)
        self.groupBox_33 = QtGui.QGroupBox(self.groupBox)
        self.groupBox_33.setObjectName(_fromUtf8("groupBox_33"))
        self.verticalLayout_17 = QtGui.QVBoxLayout(self.groupBox_33)
        self.verticalLayout_17.setSpacing(0)
        self.verticalLayout_17.setContentsMargins(-1, 0, -1, 3)
        self.verticalLayout_17.setObjectName(_fromUtf8("verticalLayout_17"))
        self.frame_112 = QtGui.QFrame(self.groupBox_33)
        self.frame_112.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_112.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_112.setObjectName(_fromUtf8("frame_112"))
        self.horizontalLayout_99 = QtGui.QHBoxLayout(self.frame_112)
        self.horizontalLayout_99.setSpacing(0)
        self.horizontalLayout_99.setMargin(0)
        self.horizontalLayout_99.setObjectName(_fromUtf8("horizontalLayout_99"))
        self.label_122 = QtGui.QLabel(self.frame_112)
        self.label_122.setMinimumSize(QtCore.QSize(200, 0))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_122.setFont(font)
        self.label_122.setObjectName(_fromUtf8("label_122"))
        self.horizontalLayout_99.addWidget(self.label_122)
        self.cmbUnits = QtGui.QComboBox(self.frame_112)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cmbUnits.sizePolicy().hasHeightForWidth())
        self.cmbUnits.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        self.cmbUnits.setFont(font)
        self.cmbUnits.setEditable(False)
        self.cmbUnits.setObjectName(_fromUtf8("cmbUnits"))
        self.horizontalLayout_99.addWidget(self.cmbUnits)
        self.verticalLayout_17.addWidget(self.frame_112)
        self.frame_113 = QtGui.QFrame(self.groupBox_33)
        self.frame_113.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_113.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_113.setObjectName(_fromUtf8("frame_113"))
        self.horizontalLayout_100 = QtGui.QHBoxLayout(self.frame_113)
        self.horizontalLayout_100.setSpacing(0)
        self.horizontalLayout_100.setMargin(0)
        self.horizontalLayout_100.setObjectName(_fromUtf8("horizontalLayout_100"))
        self.txtOCH = QtGui.QLineEdit(self.frame_113)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtOCH.setFont(font)
        self.txtOCH.setObjectName(_fromUtf8("txtOCH"))
        self.horizontalLayout_100.addWidget(self.txtOCH)
        self.txtOCHResults = QtGui.QLineEdit(self.frame_113)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtOCHResults.setFont(font)
        self.txtOCHResults.setObjectName(_fromUtf8("txtOCHResults"))
        self.horizontalLayout_100.addWidget(self.txtOCHResults)
        self.verticalLayout_17.addWidget(self.frame_113)
        self.frame_114 = QtGui.QFrame(self.groupBox_33)
        self.frame_114.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_114.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_114.setObjectName(_fromUtf8("frame_114"))
        self.horizontalLayout_101 = QtGui.QHBoxLayout(self.frame_114)
        self.horizontalLayout_101.setSpacing(0)
        self.horizontalLayout_101.setMargin(0)
        self.horizontalLayout_101.setObjectName(_fromUtf8("horizontalLayout_101"))
        self.txtOCA = QtGui.QLineEdit(self.frame_114)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtOCA.setFont(font)
        self.txtOCA.setObjectName(_fromUtf8("txtOCA"))
        self.horizontalLayout_101.addWidget(self.txtOCA)
        self.txtOCAResults = QtGui.QLineEdit(self.frame_114)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtOCAResults.setFont(font)
        self.txtOCAResults.setObjectName(_fromUtf8("txtOCAResults"))
        self.horizontalLayout_101.addWidget(self.txtOCAResults)
        self.verticalLayout_17.addWidget(self.frame_114)
        self.frame_116 = QtGui.QFrame(self.groupBox_33)
        self.frame_116.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_116.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_116.setObjectName(_fromUtf8("frame_116"))
        self.horizontalLayout_103 = QtGui.QHBoxLayout(self.frame_116)
        self.horizontalLayout_103.setSpacing(0)
        self.horizontalLayout_103.setMargin(0)
        self.horizontalLayout_103.setObjectName(_fromUtf8("horizontalLayout_103"))
        self.txtOCA_2 = QtGui.QLineEdit(self.frame_116)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtOCA_2.setFont(font)
        self.txtOCA_2.setObjectName(_fromUtf8("txtOCA_2"))
        self.horizontalLayout_103.addWidget(self.txtOCA_2)
        self.txtResultSocText = QtGui.QLineEdit(self.frame_116)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.txtResultSocText.setFont(font)
        self.txtResultSocText.setObjectName(_fromUtf8("txtResultSocText"))
        self.horizontalLayout_103.addWidget(self.txtResultSocText)
        self.verticalLayout_17.addWidget(self.frame_116)
        self.verticalLayout_6.addWidget(self.groupBox_33)
        self.groupBox_34 = QtGui.QGroupBox(self.groupBox)
        self.groupBox_34.setObjectName(_fromUtf8("groupBox_34"))
        self.verticalLayout_18 = QtGui.QVBoxLayout(self.groupBox_34)
        self.verticalLayout_18.setContentsMargins(-1, 0, -1, 3)
        self.verticalLayout_18.setObjectName(_fromUtf8("verticalLayout_18"))
        self.frame_115 = QtGui.QFrame(self.groupBox_34)
        self.frame_115.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_115.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_115.setObjectName(_fromUtf8("frame_115"))
        self.horizontalLayout_102 = QtGui.QHBoxLayout(self.frame_115)
        self.horizontalLayout_102.setSpacing(0)
        self.horizontalLayout_102.setMargin(0)
        self.horizontalLayout_102.setObjectName(_fromUtf8("horizontalLayout_102"))
        self.label_123 = QtGui.QLabel(self.frame_115)
        self.label_123.setMinimumSize(QtCore.QSize(200, 0))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_123.setFont(font)
        self.label_123.setObjectName(_fromUtf8("label_123"))
        self.horizontalLayout_102.addWidget(self.label_123)
        self.cmbSurface = QtGui.QComboBox(self.frame_115)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cmbSurface.sizePolicy().hasHeightForWidth())
        self.cmbSurface.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.cmbSurface.setFont(font)
        self.cmbSurface.setObjectName(_fromUtf8("cmbSurface"))
        self.horizontalLayout_102.addWidget(self.cmbSurface)
        self.verticalLayout_18.addWidget(self.frame_115)
        self.tblObstacles = TableViewObstacle(self.groupBox_34)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        self.tblObstacles.setFont(font)
        self.tblObstacles.setObjectName(_fromUtf8("tblObstacles"))
        self.verticalLayout_18.addWidget(self.tblObstacles)
        self.verticalLayout_6.addWidget(self.groupBox_34)
        self.horizontalLayout_3.addWidget(self.groupBox)
        self.frame = QtGui.QFrame(self.tab_Results)
#         self.frame.setMinimumSize(QtCore.QSize(105, 16777215))
        self.frame.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtGui.QFrame.Raised)
        self.frame.setObjectName(_fromUtf8("frame"))
        self.verticalLayout_4 = QtGui.QVBoxLayout(self.frame)
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.btnMarkSoc = QtGui.QPushButton(self.frame)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.btnMarkSoc.setFont(font)
        self.btnMarkSoc.setObjectName(_fromUtf8("btnMarkSoc"))
        self.verticalLayout_4.addWidget(self.btnMarkSoc)
        self.btnLocate = QtGui.QPushButton(self.frame)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.btnLocate.setFont(font)
        self.btnLocate.setObjectName(_fromUtf8("btnLocate"))
        self.verticalLayout_4.addWidget(self.btnLocate)
        self.btnUpdateQA_2 = QtGui.QPushButton(self.frame)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.btnUpdateQA_2.setFont(font)
        self.btnUpdateQA_2.setObjectName(_fromUtf8("btnUpdateQA_2"))
        self.verticalLayout_4.addWidget(self.btnUpdateQA_2)
        self.btnClose_2 = QtGui.QPushButton(self.frame)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.btnClose_2.setFont(font)
        self.btnClose_2.setObjectName(_fromUtf8("btnClose_2"))
        self.verticalLayout_4.addWidget(self.btnClose_2)
        spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_4.addItem(spacerItem2)
        self.horizontalLayout_3.addWidget(self.frame)
        self.tabControls.addTab(self.tab_Results, _fromUtf8(""))
        self.verticalLayout_11.addWidget(self.tabControls)

        self.retranslateUi(Dialog)
        self.tabControls.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(Dialog)
        
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/openData.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnOpenData.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/saveData.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnSaveData.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/construct.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnConstruct.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/evaluate.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnEvaluate.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/close.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnClose.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/locate.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnLocate.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/pdtCheck.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
#         self.btnPDCheck.setIcon(icon)
        icon = QtGui.QIcon()        
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/close.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnClose_2.setIcon(icon)
        self.iconExport = QtGui.QIcon()        
        self.iconExport.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/exportResult.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
#         self.btnExportResult.setIcon(icon)
        self.iconMark = QtGui.QIcon()        
        self.iconMark.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/locate0.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnMarkSoc.setIcon(self.iconMark)
        
        self.btnClose.setToolTip(_fromUtf8("Close"))
        self.btnClose_2.setToolTip(_fromUtf8("Close"))
        self.btnConstruct.setToolTip(_fromUtf8("Construct"))
        self.btnEvaluate.setToolTip(_fromUtf8("Evaluate"))
        self.btnLocate.setToolTip(_fromUtf8("Locate"))
#         self.btnExportResult.setToolTip(_fromUtf8("Export Result"))
        self.btnOpenData.setToolTip(_fromUtf8("Open Data"))
        self.btnSaveData.setToolTip(_fromUtf8("Save Data"))
        self.btnMarkSoc.setToolTip(_fromUtf8("Mark SOC"))

        self.btnClose.setIconSize(QtCore.QSize(32,32))
        self.btnClose_2.setIconSize(QtCore.QSize(32,32))
        self.btnConstruct.setIconSize(QtCore.QSize(32,32))
        self.btnEvaluate.setIconSize(QtCore.QSize(32,32))
        self.btnLocate.setIconSize(QtCore.QSize(32,32))
        self.btnMarkSoc.setIconSize(QtCore.QSize(32,32))
        self.btnOpenData.setIconSize(QtCore.QSize(32,32))
        self.btnSaveData.setIconSize(QtCore.QSize(32,32))
Beispiel #6
0
    def setupUi(self, form_VSS):
        form_VSS.setObjectName(_fromUtf8("form_VSS"))
        form_VSS.resize(375, 372)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        form_VSS.setFont(font)
        self.verticalLayout = QtGui.QVBoxLayout(form_VSS)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.grbRunway = QtGui.QGroupBox(form_VSS)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.grbRunway.setFont(font)
        self.grbRunway.setObjectName(_fromUtf8("grbRunway"))
        self.vLayout_grbRunway = QtGui.QVBoxLayout(self.grbRunway)
        self.vLayout_grbRunway.setObjectName(_fromUtf8("vLayout_grbRunway"))

        self.cmbAerodrome = ComboBoxPanel(self.grbRunway, True)
        self.cmbAerodrome.Caption = "Aerodrome"
        self.cmbAerodrome.LabelWidth = 120
        self.vLayout_grbRunway.addWidget(self.cmbAerodrome)

        self.cmbRwyDir = ComboBoxPanel(self.grbRunway, True)
        self.cmbRwyDir.Caption = "Runway Direction"
        self.cmbRwyDir.LabelWidth = 120
        self.cmbRwyDir.Width = 120
        self.vLayout_grbRunway.addWidget(self.cmbRwyDir)

        self.pnlTHR = PositionPanel(self.grbRunway)
        self.pnlTHR.groupBox.setTitle("Runway Thr")
        self.pnlTHR.btnCalculater.hide()
        self.pnlTHR.setObjectName("positionTHR")
        self.vLayout_grbRunway.addWidget(self.pnlTHR)

        self.pnlRwyEnd = PositionPanel(self.grbRunway)
        self.pnlRwyEnd.groupBox.setTitle("Runway End")
        self.pnlRwyEnd.hideframe_Altitude()
        self.pnlRwyEnd.btnCalculater.hide()
        self.pnlRwyEnd.setObjectName("positionRwyEnd")
        self.vLayout_grbRunway.addWidget(self.pnlRwyEnd)

        self.txtRwyDir = TrackRadialBoxPanel(self.grbRunway)
        self.txtRwyDir.Caption = "Runway In-bound Direction"
        self.txtRwyDir.LabelWidth = 160
        self.vLayout_grbRunway.addWidget(self.txtRwyDir)

        icon = QtGui.QIcon()
        icon.addPixmap(
            QtGui.QPixmap(_fromUtf8("Resource/coordinate_capture.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)

        self.cmbRwyCode = ComboBoxPanel(self.grbRunway)
        self.cmbRwyCode.Caption = "Code"
        self.cmbRwyCode.LabelWidth = 160
        self.vLayout_grbRunway.addWidget(self.cmbRwyCode)

        self.txtStripWidth = DistanceBoxPanel(self.grbRunway, DistanceUnits.M)
        self.txtStripWidth.Caption = "Strip Width"
        self.txtStripWidth.Value = Distance(300)
        self.txtStripWidth.LabelWidth = 160
        self.vLayout_grbRunway.addWidget(self.txtStripWidth)

        self.verticalLayout.addWidget(self.grbRunway)

        self.grbParameters = QtGui.QGroupBox(form_VSS)
        self.grbParameters.setObjectName(_fromUtf8("grbParameters"))
        self.vLayout_grbParameters = QtGui.QVBoxLayout(self.grbParameters)
        self.vLayout_grbParameters.setObjectName(
            _fromUtf8("vLayout_grbParameters"))

        self.cmbApproachType = ComboBoxPanel(self.grbParameters)
        self.cmbApproachType.Caption = "Approach Type"
        self.cmbApproachType.LabelWidth = 160
        self.vLayout_grbParameters.addWidget(self.cmbApproachType)

        self.txtTrack = TrackRadialBoxPanel(self.grbParameters)
        self.txtTrack.Caption = "In-bound Track"
        self.txtTrack.LabelWidth = 160
        self.vLayout_grbParameters.addWidget(self.txtTrack)

        self.txtThrFaf = DistanceBoxPanel(self.grbParameters, DistanceUnits.NM)
        self.txtThrFaf.Caption = "THR to FAF Distance"
        self.txtThrFaf.Value = Distance(5, DistanceUnits.NM)
        self.txtThrFaf.LabelWidth = 160
        self.vLayout_grbParameters.addWidget(self.txtThrFaf)

        self.txtDescAngle = AngleGradientBoxPanel(self.grbParameters)
        self.txtDescAngle.CaptionUnits = AngleGradientSlopeUnits.Degrees
        self.txtDescAngle.Caption = "Descent Angle"
        self.txtDescAngle.LabelWidth = 160
        self.txtDescAngle.Value = AngleGradientSlope(
            3, AngleGradientSlopeUnits.Degrees)
        self.vLayout_grbParameters.addWidget(self.txtDescAngle)

        self.pnlOCAH = MCAHPanel(self.grbParameters)
        self.pnlOCAH.lblMCAH.setText("Minimum Altitude (ft):")
        self.pnlOCAH.lblMCAH.setMaximumWidth(160)
        self.pnlOCAH.lblMCAH.setMinimumWidth(160)
        self.pnlOCAH.setValue(Altitude(800, AltitudeUnits.FT))
        self.pnlOCAH.cmbMCAH.clear()
        self.pnlOCAH.cmbMCAH.addItems([OCAHType.OCA, OCAHType.OCH])
        self.vLayout_grbParameters.addWidget(self.pnlOCAH)

        self.cmbConstructionType = ComboBoxPanel(self.grbParameters)
        self.cmbConstructionType.Caption = "Construction Type"
        self.cmbConstructionType.LabelWidth = 160
        self.vLayout_grbParameters.addWidget(self.cmbConstructionType)

        self.chbAdCodeF = CheckBox(self.grbParameters)
        self.chbAdCodeF.Caption = "Aerodrome Code Letter"
        self.vLayout_grbParameters.addWidget(self.chbAdCodeF)

        self.verticalLayout.addWidget(self.grbParameters)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem)

        self.retranslateUi(form_VSS)
        QtCore.QMetaObject.connectSlotsByName(form_VSS)
Beispiel #7
0
    def setupUi(self, Form):
        Form.setObjectName(_fromUtf8("Form"))
        Form.resize(435, 580)
        self.verticalLayout = QVBoxLayout(Form)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))

        self.gbParameters = GroupBox(Form)
        self.gbParameters.Caption = "General"
        self.verticalLayout.addWidget(self.gbParameters)

        self.cmbAerodrome = ComboBoxPanel(self.gbParameters, True)
        self.cmbAerodrome.Caption = "Aerodrome"
        self.cmbAerodrome.LabelWidth = 150
        self.cmbAerodrome.Width = 150
        self.gbParameters.Add = self.cmbAerodrome

        self.cmbRwyDir = ComboBoxPanel(self.gbParameters, True)
        self.cmbRwyDir.Caption = "Runway Direction"
        self.cmbRwyDir.LabelWidth = 150
        self.cmbRwyDir.Width = 150
        self.gbParameters.Add = self.cmbRwyDir

        self.annotationFAWP = QgsTextAnnotationItem(define._canvas)
        self.annotationFAWP.setDocument(QTextDocument("FAP"))
        self.annotationFAWP.hide()

        self.pnlFapPosition = PositionPanel(self.gbParameters,
                                            self.annotationFAWP)
        self.pnlFapPosition.Caption = "FAP Position"
        # self.pnlFafPosition.btnCalculater.hide()
        self.pnlFapPosition.hideframe_Altitude()
        self.gbParameters.Add = self.pnlFapPosition

        self.pnlThrPosition = PositionPanel(self.gbParameters)
        self.pnlThrPosition.Caption = "Threshold Position"
        self.pnlThrPosition.btnCalculater.hide()
        self.gbParameters.Add = self.pnlThrPosition

        self.pnlRwyEndPosition = PositionPanel(self.gbParameters)
        self.pnlRwyEndPosition.Caption = "RwyEnd Position"
        self.pnlRwyEndPosition.btnCalculater.hide()
        self.gbParameters.Add = self.pnlRwyEndPosition
        self.pnlRwyEndPosition.Visible = False

        self.pnlInboundTrack = TrackRadialBoxPanel(self.gbParameters)
        self.pnlInboundTrack.Caption = "In-bound Track"
        self.pnlInboundTrack.LabelWidth = 150
        self.gbParameters.Add = self.pnlInboundTrack

        self.pnlEstimatedAltitude = AltitudeBoxPanel(self.gbParameters)
        self.pnlEstimatedAltitude.Caption = "Estimated Altitude"
        self.pnlEstimatedAltitude.LabelWidth = 150
        self.pnlEstimatedAltitude.Value = Altitude(1000)
        self.gbParameters.Add = self.pnlEstimatedAltitude

        self.pnlAerodromeAltitude = AltitudeBoxPanel(self.gbParameters)
        self.pnlAerodromeAltitude.Caption = "Aerodrome Altitude"
        self.pnlAerodromeAltitude.LabelWidth = 150
        self.pnlAerodromeAltitude.Value = Altitude(1000)
        self.gbParameters.Add = self.pnlAerodromeAltitude

        self.pnlIsa = NumberBoxPanel(self.gbParameters, "0.0")
        self.pnlIsa.CaptionUnits = define._degreeStr + "C"
        self.pnlIsa.Caption = "ISA"
        self.pnlIsa.LabelWidth = 150
        self.pnlIsa.Value = 15
        self.gbParameters.Add = self.pnlIsa

        self.pnlRDH = AltitudeBoxPanel(self.gbParameters)
        self.pnlRDH.Caption = "RDH at THR"
        self.pnlRDH.LabelWidth = 150
        self.pnlRDH.Value = Altitude(15)
        self.gbParameters.Add = self.pnlRDH

        self.cmbVPA = ComboBoxPanel(self.gbParameters)
        self.cmbVPA.Caption = "Vertical Path Angle[VPA]"
        self.cmbVPA.LabelWidth = 150
        self.gbParameters.Add = self.cmbVPA

        self.cmbAircraftCategory = ComboBoxPanel(self.gbParameters)
        self.cmbAircraftCategory.Caption = "Aircraft Category"
        self.cmbAircraftCategory.LabelWidth = 150
        self.gbParameters.Add = self.cmbAircraftCategory

        self.pnlHeightLoss = AltitudeBoxPanel(self.gbParameters)
        self.pnlHeightLoss.Caption = "Height Loss"
        self.pnlHeightLoss.LabelWidth = 150
        self.gbParameters.Add = self.pnlHeightLoss

        self.pnlIas = SpeedBoxPanel(self.gbParameters)
        self.pnlIas.Caption = "IAS"
        self.pnlIas.LabelWidth = 150
        self.pnlIas.Value = Speed(185)
        self.gbParameters.Add = self.pnlIas

        self.pnlTas = SpeedBoxPanel(self.gbParameters)
        self.pnlTas.Caption = "TAS"
        self.pnlTas.Enabled = False
        self.pnlTas.LabelWidth = 150
        self.gbParameters.Add = self.pnlTas

        self.pnlWind = WindPanel(self.gbParameters)
        self.pnlWind.LabelWidth = 145
        self.gbParameters.Add = self.pnlWind

        self.pnlSocAltitude = AltitudeBoxPanel(self.gbParameters)
        self.pnlSocAltitude.Caption = "SOC Altitude"
        self.pnlSocAltitude.LabelWidth = 150
        self.gbParameters.Add = self.pnlSocAltitude

        self.pnlDistXz = DistanceBoxPanel(self.gbParameters, DistanceUnits.M,
                                          DistanceUnits.NM)
        self.pnlDistXz.Caption = "Xz Distance"
        self.pnlDistXz.LabelWidth = 150
        self.pnlDistXz.Button = None
        self.pnlDistXz.Value = Distance(-900)
        self.pnlDistXz.Enabled = False
        self.gbParameters.Add = self.pnlDistXz

        self.pnlDistOfFafDA = DistanceBoxPanel(self.gbParameters,
                                               DistanceUnits.M,
                                               DistanceUnits.NM)
        self.pnlDistOfFafDA.Caption = "FAP-DA Distance"
        self.pnlDistOfFafDA.LabelWidth = 150
        self.pnlDistOfFafDA.Button = None
        self.pnlDistOfFafDA.Enabled = False
        self.gbParameters.Add = self.pnlDistOfFafDA

        self.pnlDistOfDaThr = DistanceBoxPanel(self.gbParameters,
                                               DistanceUnits.M,
                                               DistanceUnits.NM)
        self.pnlDistOfDaThr.Caption = "DA-THR Distance"
        self.pnlDistOfDaThr.LabelWidth = 150
        self.pnlDistOfDaThr.Button = None
        self.pnlDistOfDaThr.Enabled = False
        self.gbParameters.Add = self.pnlDistOfDaThr

        self.pnlDistOfSocThr = DistanceBoxPanel(self.gbParameters,
                                                DistanceUnits.M,
                                                DistanceUnits.NM)
        self.pnlDistOfSocThr.Caption = "SOC-THR Distance"
        self.pnlDistOfSocThr.LabelWidth = 150
        self.pnlDistOfSocThr.Button = None
        self.pnlDistOfSocThr.Enabled = False
        self.gbParameters.Add = self.pnlDistOfSocThr
Beispiel #8
0
    def __init__(self, parent=None):
        QDialog.__init__(self, parent)

        self.resize(290, 136)
        self.setWindowTitle("Procedure Legs (AIXM 4.5+)")
        sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)
        verticalLayoutDlg = QVBoxLayout(self)
        verticalLayoutDlg.setObjectName(("verticalLayoutDlg"))

        self.gbAll = GroupBox(self, "HL")
        self.gbAll.Caption = "Legs"
        verticalLayoutDlg.addWidget(self.gbAll)

        self.trvLegs = QTreeView(self.gbAll)
        self.trvLegsStdModel = StandardItemModel()
        self.trvLegs.setModel(self.trvLegsStdModel)
        self.gbAll.Add = self.trvLegs

        self.flowLayoutPanel1 = Frame(self.gbAll)
        self.gbAll.Add = self.flowLayoutPanel1

        self.btnAdd = QPushButton(self.flowLayoutPanel1)
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/add.png"), QIcon.Normal, QIcon.Off)
        self.btnAdd.setIcon(icon)
        self.flowLayoutPanel1.Add = self.btnAdd

        self.btnRemove = QPushButton(self.flowLayoutPanel1)
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/remove.png"), QIcon.Normal, QIcon.Off)
        self.btnRemove.setIcon(icon)
        self.flowLayoutPanel1.Add = self.btnRemove

        self.btnMoveUp = QPushButton(self.flowLayoutPanel1)
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/up.png"), QIcon.Normal, QIcon.Off)
        self.btnMoveUp.setIcon(icon)
        self.flowLayoutPanel1.Add = self.btnMoveUp

        self.btnMoveDown = QPushButton(self.flowLayoutPanel1)
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/down.png"), QIcon.Normal, QIcon.Off)
        self.btnMoveDown.setIcon(icon)
        self.flowLayoutPanel1.Add = self.btnMoveDown

        self.scrollBox = Frame(self.gbAll)
        self.gbAll.Add = self.scrollBox

        self.gbPosition = GroupBox(self.scrollBox)
        self.gbPosition.Caption = "Fix"
        self.scrollBox.Add = self.gbPosition

        self.cmbPosUid = ComboBoxPanel(self.gbPosition)
        self.cmbPosUid.Caption = "Position"
        self.cmbPosUid.Button = "coordinate_capture.png"
        self.gbPosition.Add = self.cmbPosUid

        self.gbAttributes = GroupBox(self.scrollBox)
        self.gbAttributes.Caption = "Attributes"
        self.scrollBox.Add = self.gbAttributes

        self.pnlPathType = ComboBoxPanel(self.gbAttributes)
        self.pnlPathType.Caption = "Path Type"
        self.gbAttributes.Add = self.pnlPathType

        self.pnlLegType = ComboBoxPanel(self.gbAttributes)
        self.pnlLegType.Caption = "Leg Type"
        self.gbAttributes.Add = self.pnlLegType

        self.cmbCenUid = ComboBoxPanel(self.gbAttributes)
        self.cmbCenUid.Caption = "Center"
        self.cmbCenUid.Button = "coordinate_capture.png"
        self.gbAttributes.Add = self.cmbCenUid

        self.pnlFlyBy = ComboBoxPanel(self.gbAttributes)
        self.pnlFlyBy.Caption = "Fly-By"
        self.gbAttributes.Add = self.pnlFlyBy

        self.pnlMinAlt = AltitudeBoxPanel(self.gbAttributes)
        self.pnlMinAlt.CaptionUnits = "ft"
        self.pnlMinAlt.Caption = "Minimum Altitude"
        self.gbAttributes.Add = self.pnlMinAlt

        self.pnlSegLength = DistanceBoxPanel(self.gbAttributes,
                                             DistanceUnits.NM)
        self.pnlSegLength.Caption = "Segment Length"
        self.gbAttributes.Add = self.pnlSegLength

        self.pnlCourse = TrackRadialBoxPanel(self.gbAttributes)
        self.pnlCourse.Caption = "Course"
        self.gbAttributes.Add = self.pnlCourse

        self.pnlLegVOR = Frame(self.gbAttributes)
        self.gbAttributes.Add = self.pnlLegVOR

        f1 = Frame(self.pnlLegVOR, "HL")
        self.pnlLegVOR.Add = f1

        self.cmbLegVor = ComboBoxPanel(f1)
        self.cmbLegVor.Caption = "VOR / Radial (" + define._degreeStr + ")"
        f1.Add = self.cmbLegVor

        self.txtLegRadial = TrackRadialBoxPanel(f1)
        self.txtLegRadial.Caption = ""
        self.txtLegRadial.LabelWidth = 0
        f1.Add = self.txtLegRadial

        f2 = Frame(self.pnlLegVOR, "HL")
        self.pnlLegVOR.Add = f2

        self.cmbLegBackVor = ComboBoxPanel(f2)
        self.cmbLegBackVor.Caption = "Reverse VOR / Radial (" + define._degreeStr + ")"
        f2.Add = self.cmbLegBackVor

        self.txtLegBackRadial = TrackRadialBoxPanel(f2)
        self.txtLegBackRadial.Caption = ""
        self.txtLegBackRadial.LabelWidth = 0
        f2.Add = self.txtLegBackRadial

        self.pnlPointType = ComboBoxPanel(self.gbAttributes)
        self.pnlPointType.Caption = "Point Type"
        self.gbAttributes.Add = self.pnlPointType

        self.pnlRepPointType = ComboBoxPanel(self.gbAttributes)
        self.pnlRepPointType.Caption = "Reporting Point Type"
        self.gbAttributes.Add = self.pnlRepPointType

        self.pnlPointVor = Frame(self.gbAttributes)
        self.gbAttributes.Add = self.pnlPointVor

        frame1 = Frame(self.pnlPointVor, "HL")
        self.pnlPointVor.Add = frame1

        self.cmbPointVor = ComboBoxPanel(frame1)
        self.cmbPointVor.Caption = "Point VOR / Radial (" + define._degreeStr + ")"
        frame1.Add = self.cmbPointVor

        self.txtPointRadial = TrackRadialBoxPanel(frame1)
        self.txtPointRadial.Caption = ""
        self.txtPointRadial.LabelWidth = 0
        frame1.Add = self.txtPointRadial

        frame2 = Frame(self.pnlPointVor, "HL")
        self.pnlPointVor.Add = frame2

        self.cmbPointDme1 = ComboBoxPanel(frame2)
        self.cmbPointDme1.Caption = "Point 1. DME / Distance (nm)"
        frame2.Add = self.cmbPointDme1

        self.txtPointDme1 = DistanceBoxPanel(frame2, DistanceUnits.NM)
        self.txtPointDme1.Caption = ""
        self.txtPointDme1.LabelWidth = 0
        frame2.Add = self.txtPointDme1

        frame3 = Frame(self.pnlPointVor, "HL")
        self.pnlPointVor.Add = frame3

        self.cmbPointDme2 = ComboBoxPanel(frame3)
        self.cmbPointDme2.Caption = "Point 2. DME / Distance (nm)"
        frame3.Add = self.cmbPointDme2

        self.txtPointDme2 = DistanceBoxPanel(frame3, DistanceUnits.NM)
        self.txtPointDme2.Caption = ""
        self.txtPointDme2.LabelWidth = 0
        frame3.Add = self.txtPointDme2

        self.txtFlyDuration = TextBoxPanel(self.pnlPointVor, True)
        self.txtFlyDuration.Caption = "Flying Time Duration"
        self.pnlPointVor.Add = self.txtFlyDuration

        self.txtRemarks = TextBoxPanel(self.pnlPointVor, True)
        self.txtRemarks.Caption = "Remarks"
        self.pnlPointVor.Add = self.txtRemarks

        self.btnBoxOkCancel = QDialogButtonBox(self)
        self.btnBoxOkCancel.setObjectName(("btnBoxOkCancel"))
        self.btnBoxOkCancel.setStandardButtons(QDialogButtonBox.Cancel
                                               | QDialogButtonBox.Ok)
        self.connect(self.btnBoxOkCancel, SIGNAL("accepted()"), self.acceptDlg)
        self.connect(self.btnBoxOkCancel, SIGNAL("rejected()"), self.reject)

        self.btnAdd.clicked.connect(self.btnAdd_Click)
        self.btnMoveDown.clicked.connect(self.btnMoveDown_Click)
        self.btnMoveUp.clicked.connect(self.btnMoveUp_Click)
        self.btnRemove.clicked.connect(self.btnRemove_Click)

        verticalLayoutDlg.addWidget(self.btnBoxOkCancel)

        self.trvLegs.pressed.connect(self.trvLegs_pressed)

        self.data = None
        self.legs = None
        self.aerodrome = None
        self.magnVar = 0.0

        self.trvLegs.setHeaderHidden(True)

        self.pnlPointType.Items = ["IAF", "IF", "FAF", "FAP", "MAPt", "TP"]

        for value in CodeLegTypeAixm.Items:
            self.pnlLegType.Add(value)

        for value in CodePathTypeAixm.Items:
            self.pnlPathType.Add(value)

        for value in CodeRepAtcAixm.Items:
            self.pnlRepPointType.Add(value)

        for value in CodeTypeFlyByAixm.Items:
            self.pnlFlyBy.Add(value)
        self.method_6()

        self.connect(self.txtRemarks, SIGNAL("Event_0"),
                     self.txtRemarks_Event_0)
        self.connect(self.txtPointDme2, SIGNAL("Event_0"),
                     self.txtPointDme2_Event_0)
        self.connect(self.cmbPointDme2, SIGNAL("Event_0"),
                     self.cmbPointDme2_Event_0)
        self.connect(self.txtPointDme1, SIGNAL("Event_0"),
                     self.txtPointDme1_Event_0)
        self.connect(self.cmbPointDme1, SIGNAL("Event_0"),
                     self.cmbPointDme1_Event_0)
        self.connect(self.cmbPointVor, SIGNAL("Event_0"),
                     self.cmbPointVor_Event_0)
        self.connect(self.txtPointRadial, SIGNAL("Event_0"),
                     self.txtPointRadial_Event_0)
        self.connect(self.txtFlyDuration, SIGNAL("Event_0"),
                     self.txtFlyDuration_Event_0)
        self.connect(self.pnlRepPointType, SIGNAL("Event_0"),
                     self.pnlRepPointType_Event_0)

        self.connect(self.pnlPointType, SIGNAL("Event_0"),
                     self.pnlPointType_Event_0)

        self.connect(self.txtLegBackRadial, SIGNAL("Event_0"),
                     self.txtLegBackRadial_Event_0)

        self.connect(self.cmbLegBackVor, SIGNAL("Event_0"),
                     self.cmbLegBackVor_Event_0)

        self.connect(self.cmbLegVor, SIGNAL("Event_0"), self.cmbLegVor_Event_0)

        self.connect(self.txtLegRadial, SIGNAL("Event_0"),
                     self.txtLegRadial_Event_0)

        self.connect(self.pnlCourse, SIGNAL("Event_0"), self.pnlCourse_Event_0)

        self.connect(self.pnlSegLength, SIGNAL("Event_0"),
                     self.pnlSegLength_Event_0)

        self.connect(self.pnlMinAlt, SIGNAL("Event_0"), self.pnlMinAlt_Event_0)

        self.connect(self.pnlFlyBy, SIGNAL("Event_0"), self.pnlFlyBy_Event_0)

        self.connect(self.cmbCenUid, SIGNAL("Event_0"), self.cmbCenUid_Event_0)

        self.connect(self.pnlLegType, SIGNAL("Event_0"),
                     self.pnlLegType_Event_0)

        self.connect(self.pnlPathType, SIGNAL("Event_0"),
                     self.pnlPathType_Event_0)

        self.connect(self.cmbPosUid, SIGNAL("Event_0"), self.cmbPosUid_Event_0)
        self.connect(self.cmbCenUid, SIGNAL("Event_3"), self.method_14)
        self.connect(self.cmbPosUid, SIGNAL("Event_3"), self.method_13)
    def setupUi(self, Form):
        Form.setObjectName(_fromUtf8("Form"))
        Form.resize(435, 580)
        self.verticalLayout = QVBoxLayout(Form)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))

        self.gbParameters = GroupBox(Form)
        self.gbParameters.Caption = "General"
        self.verticalLayout.addWidget(self.gbParameters)

        self.cmbAerodrome = ComboBoxPanel(self.gbParameters, True)
        self.cmbAerodrome.Caption = "Aerodrome"
        self.cmbAerodrome.LabelWidth = 150
        self.cmbAerodrome.Width = 150
        self.gbParameters.Add = self.cmbAerodrome

        self.cmbRwyDir = ComboBoxPanel(self.gbParameters, True)
        self.cmbRwyDir.Caption = "Runway Direction"
        self.cmbRwyDir.LabelWidth = 150
        self.cmbRwyDir.Width = 150
        self.gbParameters.Add = self.cmbRwyDir

        self.annotationFAWP = QgsTextAnnotationItem(define._canvas)
        self.annotationFAWP.setDocument(QTextDocument("FAF"))
        self.annotationFAWP.hide()

        self.pnlFafPosition = PositionPanel(self.gbParameters,
                                            self.annotationFAWP)
        self.pnlFafPosition.Caption = "FAF Position"
        self.pnlFafPosition.btnCalculater.hide()
        self.pnlFafPosition.hideframe_Altitude()
        self.gbParameters.Add = self.pnlFafPosition

        self.pnlThrPosition = PositionPanel(self.gbParameters)
        self.pnlThrPosition.Caption = "Threshold Position"
        self.pnlThrPosition.btnCalculater.hide()
        self.gbParameters.Add = self.pnlThrPosition

        # self.annotationMapt = QgsTextAnnotationItem(define._canvas)
        # self.annotationMapt.setDocument(QTextDocument("MAPt"))
        # self.annotationMapt.hide()

        self.pnlMaPtPosition = PositionPanel(self.gbParameters)
        self.pnlMaPtPosition.Caption = "MAPt Position"
        self.pnlMaPtPosition.btnCalculater.hide()
        self.pnlMaPtPosition.hideframe_Altitude()
        self.gbParameters.Add = self.pnlMaPtPosition

        self.pnlRwyEndPosition = PositionPanel(self.gbParameters)
        self.pnlRwyEndPosition.Caption = "Rwy End Position"
        self.pnlRwyEndPosition.btnCalculater.hide()
        self.pnlRwyEndPosition.hideframe_Altitude()
        self.gbParameters.Add = self.pnlRwyEndPosition
        self.pnlRwyEndPosition.Visible = False

        self.pnlInboundTrack = TrackRadialBoxPanel(self.gbParameters)
        self.pnlInboundTrack.Caption = "In-bound Track"
        self.pnlInboundTrack.LabelWidth = 150
        self.pnlInboundTrack.Enabled = False
        self.gbParameters.Add = self.pnlInboundTrack

        self.pnlEstimatedAltitude = AltitudeBoxPanel(self.gbParameters)
        self.pnlEstimatedAltitude.Caption = "Estimated Altitude"
        self.pnlEstimatedAltitude.LabelWidth = 150
        self.pnlEstimatedAltitude.Value = Altitude(1000)
        self.gbParameters.Add = self.pnlEstimatedAltitude

        self.pnlAerodromeAltitude = AltitudeBoxPanel(self.gbParameters)
        self.pnlAerodromeAltitude.Caption = "Aerodrome Altitude"
        self.pnlAerodromeAltitude.LabelWidth = 150
        self.pnlAerodromeAltitude.Value = Altitude(1000)
        self.gbParameters.Add = self.pnlAerodromeAltitude

        self.pnlIsa = NumberBoxPanel(self.gbParameters, "0.0")
        self.pnlIsa.CaptionUnits = define._degreeStr + "C"
        self.pnlIsa.Caption = "ISA"
        self.pnlIsa.LabelWidth = 150
        self.pnlIsa.Value = 15
        self.gbParameters.Add = self.pnlIsa

        self.cmbAircraftCategory = ComboBoxPanel(self.gbParameters)
        self.cmbAircraftCategory.Caption = "Aircraft Category"
        self.cmbAircraftCategory.LabelWidth = 150
        self.gbParameters.Add = self.cmbAircraftCategory

        # self.pnlHeightLoss = AltitudeBoxPanel(self.gbParameters)
        # self.pnlHeightLoss.Caption = "Height Loss"
        # self.pnlHeightLoss.LabelWidth = 150
        # self.gbParameters.Add = self.pnlHeightLoss

        self.pnlIas = SpeedBoxPanel(self.gbParameters)
        self.pnlIas.Caption = "IAS"
        self.pnlIas.LabelWidth = 150
        self.pnlIas.Value = Speed(100)
        self.pnlIas.Enabled = False
        self.gbParameters.Add = self.pnlIas

        self.pnlTas = SpeedBoxPanel(self.gbParameters)
        self.pnlTas.Caption = "TAS"
        self.pnlTas.Enabled = False
        self.pnlTas.LabelWidth = 150
        self.gbParameters.Add = self.pnlTas

        self.pnlWind = WindPanel(self.gbParameters)
        self.pnlWind.LabelWidth = 145
        self.gbParameters.Add = self.pnlWind

        self.pnlSocAltitude = AltitudeBoxPanel(self.gbParameters)
        self.pnlSocAltitude.Caption = "SOC Altitude"
        self.pnlSocAltitude.LabelWidth = 150
        self.gbParameters.Add = self.pnlSocAltitude

        self.pnlDistFixTolerance = DistanceBoxPanel(self.gbParameters,
                                                    DistanceUnits.M,
                                                    DistanceUnits.NM)
        self.pnlDistFixTolerance.Caption = "FIX Tolerance"
        self.pnlDistFixTolerance.LabelWidth = 150
        self.pnlDistFixTolerance.Button = "coordinate_capture.png"
        self.pnlDistFixTolerance.Value = Distance(900)
        # self.pnlDistFixTolerance.Enabled = False
        self.gbParameters.Add = self.pnlDistFixTolerance

        self.pnlDistD = DistanceBoxPanel(self.gbParameters, DistanceUnits.M,
                                         DistanceUnits.NM)
        self.pnlDistD.Caption = "d(10kts/3s)"
        self.pnlDistD.LabelWidth = 150
        self.pnlDistD.Button = None
        self.pnlDistD.Value = Distance(900)
        self.pnlDistD.Enabled = False
        self.gbParameters.Add = self.pnlDistD

        self.pnlDistX = DistanceBoxPanel(self.gbParameters, DistanceUnits.M,
                                         DistanceUnits.NM)
        self.pnlDistX.Caption = "X(10kts/15s)"
        self.pnlDistX.LabelWidth = 150
        self.pnlDistX.Button = None
        self.pnlDistX.Value = Distance(900)
        self.pnlDistX.Enabled = False
        self.gbParameters.Add = self.pnlDistX

        self.pnlDistOfFafMapt = DistanceBoxPanel(self.gbParameters,
                                                 DistanceUnits.M,
                                                 DistanceUnits.NM)
        self.pnlDistOfFafMapt.Caption = "FAP-MAPt Distance"
        self.pnlDistOfFafMapt.LabelWidth = 150
        self.pnlDistOfFafMapt.Button = None
        self.pnlDistOfFafMapt.Enabled = False
        self.gbParameters.Add = self.pnlDistOfFafMapt

        self.pnlDistOfMaptThr = DistanceBoxPanel(self.gbParameters,
                                                 DistanceUnits.M,
                                                 DistanceUnits.NM)
        self.pnlDistOfMaptThr.Caption = "MAPt-THR Distance"
        self.pnlDistOfMaptThr.LabelWidth = 150
        self.pnlDistOfMaptThr.Button = None
        self.pnlDistOfMaptThr.Enabled = False
        self.gbParameters.Add = self.pnlDistOfMaptThr

        self.pnlDistOfMaptSoc = DistanceBoxPanel(self.gbParameters,
                                                 DistanceUnits.M,
                                                 DistanceUnits.NM)
        self.pnlDistOfMaptSoc.Caption = "MAPt-SOC Distance"
        self.pnlDistOfMaptSoc.LabelWidth = 150
        self.pnlDistOfMaptSoc.Button = None
        self.pnlDistOfMaptSoc.Enabled = False
        self.gbParameters.Add = self.pnlDistOfMaptSoc

        self.pnlDistOfSocThr = DistanceBoxPanel(self.gbParameters,
                                                DistanceUnits.M,
                                                DistanceUnits.NM)
        self.pnlDistOfSocThr.Caption = "THR-SOC Distance"
        self.pnlDistOfSocThr.LabelWidth = 150
        self.pnlDistOfSocThr.Button = None
        self.pnlDistOfSocThr.Enabled = False
        self.gbParameters.Add = self.pnlDistOfSocThr
    def setupUi(self, GeoDetermine):
        GeoDetermine.setObjectName(_fromUtf8("GeoDetermine"))
        GeoDetermine.resize(483, 428)
        self.horizontalLayout_GeoDetermine = QtGui.QHBoxLayout(GeoDetermine)
        self.horizontalLayout_GeoDetermine.setObjectName(
            _fromUtf8("horizontalLayout_GeoDetermine"))
        self.tabGeneral = QtGui.QTabWidget(GeoDetermine)
        self.tabGeneral.setObjectName(_fromUtf8("tabGeneral"))
        self.tabGeoDeterminePosition = QtGui.QWidget(GeoDetermine)
        self.tabGeoDeterminePosition.setObjectName(
            _fromUtf8("tabGeoDeterminePosition"))
        self.verticalLayout = QtGui.QVBoxLayout(self.tabGeoDeterminePosition)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))

        self.gbStartPosP = QtGui.QGroupBox(self.tabGeoDeterminePosition)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.gbStartPosP.sizePolicy().hasHeightForWidth())
        self.gbStartPosP.setSizePolicy(sizePolicy)
        self.gbStartPosP.setObjectName(_fromUtf8("gbStartPosP"))
        self.verticalLayout_gbStartPosP = QtGui.QVBoxLayout(self.gbStartPosP)
        self.verticalLayout_gbStartPosP.setObjectName(
            _fromUtf8("verticalLayout_gbStartPosP"))

        self.verticalLayout.addWidget(self.gbStartPosP)
        self.grbParametersP = QtGui.QGroupBox(self.tabGeoDeterminePosition)
        self.grbParametersP.setObjectName(_fromUtf8("grbParametersP"))
        self.vLayout_grbParametersP = QtGui.QVBoxLayout(self.grbParametersP)
        self.vLayout_grbParametersP.setObjectName(
            _fromUtf8("vLayout_grbParametersP"))

        self.chbAutoFinishMagVar = CheckBox(self.grbParametersP)
        self.chbAutoFinishMagVar.Caption = "Automatically Calculate Magnetic Variation"
        self.chbAutoFinishMagVar.Checked = True
        self.vLayout_grbParametersP.addWidget(self.chbAutoFinishMagVar)

        self.txtForwardTP = TrackRadialBoxPanel(self.grbParametersP, "Geo")
        self.txtForwardTP.Caption = "Forward True Bearing"
        self.vLayout_grbParametersP.addWidget(self.txtForwardTP)

        self.txtForwardMP = TrackRadialBoxPanel(self.grbParametersP, "Geo")
        self.txtForwardMP.Caption = "Forward Magnetic Bearing"
        self.txtForwardMP.Button = None
        self.vLayout_grbParametersP.addWidget(self.txtForwardMP)

        self.txtDistanceP = DistanceBoxPanel(self.grbParametersP,
                                             DistanceUnits.NM)
        self.txtDistanceP.Caption = "Distance Between Positions"
        self.vLayout_grbParametersP.addWidget(self.txtDistanceP)

        self.cmbCalculationTypeP = ComboBoxPanel(self.grbParametersP)
        self.cmbCalculationTypeP.Caption = "Calculation Type"
        self.cmbCalculationTypeP.Items = ["GreatCircle", "Ellipsoid"]
        self.cmbCalculationTypeP.SelectedIndex = 1
        self.vLayout_grbParametersP.addWidget(self.cmbCalculationTypeP)

        self.frameP = QtGui.QFrame(self.grbParametersP)
        self.frameP.setMinimumSize(QtCore.QSize(0, 0))
        self.frameP.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.frameP.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frameP.setFrameShadow(QtGui.QFrame.Raised)
        self.frameP.setObjectName(_fromUtf8("frameP"))
        self.horizontalLayout_2 = QtGui.QHBoxLayout(self.frameP)
        self.horizontalLayout_2.setSpacing(0)
        self.horizontalLayout_2.setMargin(0)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.chbMarkPointsP = QtGui.QCheckBox(self.frameP)
        self.chbMarkPointsP.setMinimumSize(QtCore.QSize(200, 0))
        self.chbMarkPointsP.setMaximumSize(QtCore.QSize(200, 16777215))
        self.chbMarkPointsP.setObjectName(_fromUtf8("chbMarkPointsP"))
        self.horizontalLayout_2.addWidget(self.chbMarkPointsP)
        self.chbDrawLineP = QtGui.QCheckBox(self.frameP)
        self.chbDrawLineP.setObjectName(_fromUtf8("chbDrawLineP"))
        self.horizontalLayout_2.addWidget(self.chbDrawLineP)
        self.vLayout_grbParametersP.addWidget(self.frameP)

        self.gbResultP = QtGui.QGroupBox(self.grbParametersP)
        self.gbResultP.setObjectName(_fromUtf8("gbResultP"))
        self.horizontalLayout_gbResultP = QtGui.QHBoxLayout(self.gbResultP)
        self.horizontalLayout_gbResultP.setObjectName(
            _fromUtf8("horizontalLayout_gbResultP"))
        self.tblResultP = QtGui.QTableView(self.gbResultP)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.tblResultP.sizePolicy().hasHeightForWidth())
        self.tblResultP.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        self.tblResultP.setFont(font)
        self.tblResultP.setObjectName(_fromUtf8("tblResultP"))
        self.horizontalLayout_gbResultP.addWidget(self.tblResultP)
        self.btnResultP = QtGui.QPushButton(self.gbResultP)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.btnResultP.sizePolicy().hasHeightForWidth())
        self.btnResultP.setSizePolicy(sizePolicy)
        self.btnResultP.setMinimumSize(QtCore.QSize(23, 0))
        self.btnResultP.setMaximumSize(QtCore.QSize(23, 16777215))
        self.btnResultP.setText(_fromUtf8(""))
        self.btnResultP.setObjectName(_fromUtf8("btnResultP"))
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/clear.png")),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnResultP.setIcon(icon)
        self.horizontalLayout_gbResultP.addWidget(self.btnResultP)
        self.vLayout_grbParametersP.addWidget(self.gbResultP)

        self.verticalLayout.addWidget(self.grbParametersP)
        self.tabGeneral.addTab(self.tabGeoDeterminePosition, _fromUtf8(""))
        self.tabGeoDetermineBD = QtGui.QWidget(GeoDetermine)
        self.tabGeoDetermineBD.setObjectName(_fromUtf8("tabGeoDetermineBD"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.tabGeoDetermineBD)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.gbStartPosBD = QtGui.QGroupBox(self.tabGeoDetermineBD)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.gbStartPosBD.sizePolicy().hasHeightForWidth())
        self.gbStartPosBD.setSizePolicy(sizePolicy)
        self.gbStartPosBD.setObjectName(_fromUtf8("gbStartPosBD"))
        self.verticalLayout_gbStartPosBD = QtGui.QVBoxLayout(self.gbStartPosBD)
        self.verticalLayout_gbStartPosBD.setObjectName(
            _fromUtf8("verticalLayout_gbStartPosBD"))

        self.verticalLayout_2.addWidget(self.gbStartPosBD)
        self.gbFinishPosBD = QtGui.QGroupBox(self.tabGeoDetermineBD)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.gbFinishPosBD.sizePolicy().hasHeightForWidth())
        self.gbFinishPosBD.setSizePolicy(sizePolicy)
        self.gbFinishPosBD.setObjectName(_fromUtf8("gbFinishPosBD"))
        self.verticalLayout_gbFinishPosBD = QtGui.QVBoxLayout(
            self.gbFinishPosBD)
        self.verticalLayout_gbFinishPosBD.setObjectName(
            _fromUtf8("verticalLayout_gbFinishPosBD"))

        self.verticalLayout_2.addWidget(self.gbFinishPosBD)
        self.grbParametersBD = QtGui.QGroupBox(self.tabGeoDetermineBD)
        self.grbParametersBD.setObjectName(_fromUtf8("grbParametersBD"))
        self.vLayout_grbParametersBD = QtGui.QVBoxLayout(self.grbParametersBD)
        self.vLayout_grbParametersBD.setObjectName(
            _fromUtf8("vLayout_grbParametersBD"))

        self.cmbCalculationTypeBD = ComboBoxPanel(self.grbParametersBD)
        self.cmbCalculationTypeBD.Caption = "Calculation Type"
        self.cmbCalculationTypeBD.Items = ["GreatCircle", "Ellipsoid"]
        self.cmbCalculationTypeBD.SelectedIndex = 1
        self.vLayout_grbParametersBD.addWidget(self.cmbCalculationTypeBD)

        self.chbAutoVarBD = QtGui.QCheckBox(self.grbParametersBD)
        self.chbAutoVarBD.setObjectName(_fromUtf8("chbAutoVarBD"))
        self.vLayout_grbParametersBD.addWidget(self.chbAutoVarBD)
        self.frameBD = QtGui.QFrame(self.grbParametersBD)
        self.frameBD.setMinimumSize(QtCore.QSize(0, 0))
        self.frameBD.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.frameBD.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frameBD.setFrameShadow(QtGui.QFrame.Raised)
        self.frameBD.setObjectName(_fromUtf8("frameBD"))
        self.horizontalLayout_BD = QtGui.QHBoxLayout(self.frameBD)
        self.horizontalLayout_BD.setSpacing(0)
        self.horizontalLayout_BD.setMargin(0)
        self.horizontalLayout_BD.setObjectName(
            _fromUtf8("horizontalLayout_BD"))

        self.chbMarkPointsBD = QtGui.QCheckBox(self.frameBD)
        self.chbMarkPointsBD.setMinimumSize(QtCore.QSize(200, 0))
        self.chbMarkPointsBD.setMaximumSize(QtCore.QSize(200, 16777215))
        self.chbMarkPointsBD.setObjectName(_fromUtf8("chbMarkPointsBD"))
        self.horizontalLayout_BD.addWidget(self.chbMarkPointsBD)

        self.chbDrawLineBD = QtGui.QCheckBox(self.frameBD)
        self.chbDrawLineBD.setObjectName(_fromUtf8("chbDrawLineBD"))
        self.horizontalLayout_BD.addWidget(self.chbDrawLineBD)

        self.vLayout_grbParametersBD.addWidget(self.frameBD)
        self.gbResultBD = QtGui.QGroupBox(self.grbParametersBD)
        self.gbResultBD.setObjectName(_fromUtf8("gbResultBD"))
        self.horizontalLayout_gbResultBD = QtGui.QHBoxLayout(self.gbResultBD)
        self.horizontalLayout_gbResultBD.setObjectName(
            _fromUtf8("horizontalLayout_gbResultBD"))
        self.tblResultBD = QtGui.QTableView(self.gbResultBD)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        self.tblResultBD.setFont(font)
        self.tblResultBD.setObjectName(_fromUtf8("tblResultBD"))
        self.horizontalLayout_gbResultBD.addWidget(self.tblResultBD)
        self.btnResultBD = QtGui.QPushButton(self.gbResultBD)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.btnResultBD.sizePolicy().hasHeightForWidth())
        self.btnResultBD.setSizePolicy(sizePolicy)
        self.btnResultBD.setMinimumSize(QtCore.QSize(23, 0))
        self.btnResultBD.setMaximumSize(QtCore.QSize(23, 16777215))
        self.btnResultBD.setText(_fromUtf8(""))
        self.btnResultBD.setObjectName(_fromUtf8("btnResultBD"))
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/clear.png")),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnResultBD.setIcon(icon)
        self.horizontalLayout_gbResultBD.addWidget(self.btnResultBD)
        self.vLayout_grbParametersBD.addWidget(self.gbResultBD)
        self.verticalLayout_2.addWidget(self.grbParametersBD)
        self.tabGeneral.addTab(self.tabGeoDetermineBD, _fromUtf8(""))

        self.tabGeoDetermineMV = QtGui.QWidget(GeoDetermine)
        self.tabGeoDetermineMV.setObjectName(_fromUtf8("tabGeoDetermineMV"))
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.tabGeoDetermineMV.sizePolicy().hasHeightForWidth())
        self.tabGeoDetermineMV.setSizePolicy(sizePolicy)
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.tabGeoDetermineMV)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.grbParametersMVD = QtGui.QGroupBox(self.tabGeoDetermineMV)
        self.grbParametersMVD.setObjectName(_fromUtf8("grbParametersMVD"))
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.grbParametersMVD.sizePolicy().hasHeightForWidth())
        self.grbParametersMVD.setSizePolicy(sizePolicy)
        self.vLayout_grbParametersMVD = QtGui.QVBoxLayout(
            self.grbParametersMVD)
        self.vLayout_grbParametersMVD.setObjectName(
            _fromUtf8("vLayout_grbParametersMVD"))

        self.frame_dtpDate = QtGui.QFrame(self.grbParametersMVD)
        self.frame_dtpDate.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_dtpDate.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_dtpDate.setObjectName(_fromUtf8("frame_dtpDate"))
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.frame_dtpDate.sizePolicy().hasHeightForWidth())
        self.frame_dtpDate.setSizePolicy(sizePolicy)
        self.horizontalLayout_dtpDate = QtGui.QHBoxLayout(self.frame_dtpDate)
        self.horizontalLayout_dtpDate.setSpacing(0)
        self.horizontalLayout_dtpDate.setMargin(0)
        self.horizontalLayout_dtpDate.setObjectName(
            _fromUtf8("horizontalLayout_dtpDate"))
        self.label_80 = QtGui.QLabel(self.frame_dtpDate)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_80.sizePolicy().hasHeightForWidth())
        self.label_80.setSizePolicy(sizePolicy)
        self.label_80.setMinimumSize(QtCore.QSize(200, 0))
        self.label_80.setMaximumSize(QtCore.QSize(200, 16777215))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_80.setFont(font)
        self.label_80.setObjectName(_fromUtf8("label_80"))
        self.horizontalLayout_dtpDate.addWidget(self.label_80)

        self.frame_ForwardTInP_2 = QtGui.QFrame(self.frame_dtpDate)
        self.frame_ForwardTInP_2.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_ForwardTInP_2.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_ForwardTInP_2.setObjectName(
            _fromUtf8("frame_ForwardTInP_2"))
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.frame_ForwardTInP_2.sizePolicy().hasHeightForWidth())
        self.frame_ForwardTInP_2.setSizePolicy(sizePolicy)
        self.horizontalLayout_ForwardTInP_2 = QtGui.QHBoxLayout(
            self.frame_ForwardTInP_2)
        self.horizontalLayout_ForwardTInP_2.setSpacing(0)
        self.horizontalLayout_ForwardTInP_2.setMargin(0)
        self.horizontalLayout_ForwardTInP_2.setObjectName(
            _fromUtf8("horizontalLayout_ForwardTInP_2"))
        self.dtpDate = QtGui.QDateEdit(self.frame_ForwardTInP_2)
        self.dtpDate.setObjectName(_fromUtf8("dtpDate"))
        self.dtpDate.setMaximumWidth(80)
        self.dtpDate.setMinimumWidth(80)
        self.horizontalLayout_ForwardTInP_2.addWidget(self.dtpDate)
        self.btnDtpDate = QtGui.QToolButton(self.frame_ForwardTInP_2)
        self.btnDtpDate.setText(_fromUtf8(""))
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/calender.png")),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnDtpDate.setIcon(icon)
        self.btnDtpDate.setObjectName(_fromUtf8("btnDtpDate"))
        self.horizontalLayout_ForwardTInP_2.addWidget(self.btnDtpDate)
        self.horizontalLayout_dtpDate.addWidget(self.frame_ForwardTInP_2)
        self.vLayout_grbParametersMVD.addWidget(self.frame_dtpDate)

        self.cmbModel = ComboBoxPanel(self.grbParametersMVD)
        self.cmbModel.Caption = "Model"
        self.cmbModel.Items = [
            "WMM2015", "WMM2010", "WMM2005", "WMM2000", "WMM95", "WMM90",
            "WMM85", "IGRF2000", "IGRF95", "IGRF90"
        ]
        # self.cmbModel.SelectedIndex = 1
        self.vLayout_grbParametersMVD.addWidget(self.cmbModel)

        self.gbResultMVD = QtGui.QGroupBox(self.grbParametersMVD)
        self.gbResultMVD.setObjectName(_fromUtf8("gbResultMVD"))
        self.horizontalLayout_gbResultMVD = QtGui.QHBoxLayout(self.gbResultMVD)
        self.horizontalLayout_gbResultMVD.setObjectName(
            _fromUtf8("horizontalLayout_gbResultMVD"))

        self.txtResult = TextBoxPanel(self.gbResultMVD)
        self.txtResult.Caption = "Magnetic Variation"
        self.horizontalLayout_gbResultMVD.addWidget(self.txtResult)

        self.vLayout_grbParametersMVD.addWidget(self.gbResultMVD)
        self.verticalLayout_3.addWidget(self.grbParametersMVD)

        spacerItem = QtGui.QSpacerItem(10, 10, QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Expanding)
        self.verticalLayout_3.addItem(spacerItem)

        self.tabGeneral.addTab(self.tabGeoDetermineMV, _fromUtf8(""))
        self.horizontalLayout_GeoDetermine.addWidget(self.tabGeneral)

        self.retranslateUi(GeoDetermine)
        self.tabGeneral.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(GeoDetermine)
Beispiel #11
0
    def __init__(self, parent=None):
        QDialog.__init__(self, parent)

        self.resize(400, 500)
        self.setWindowTitle("Aerodrome Surfaces Criteria")
        sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)
        verticalLayoutDlg = QVBoxLayout(self)
        verticalLayoutDlg.setObjectName(("verticalLayoutDlg"))

        scrollArea = QScrollArea(self)
        scrollArea.setObjectName("scrollArea")
        scrollArea.setWidgetResizable(True)
        scrollAreaWidgetContents = QWidget(scrollArea)
        scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents")
        # scrollAreaWidgetContents.setGeometry(QRect(0, 0, 380, 280))
        vLayoutScrollArea = QVBoxLayout(scrollAreaWidgetContents)
        vLayoutScrollArea.setObjectName("vLayoutScrollArea")
        scrollArea.setWidget(scrollAreaWidgetContents)
        verticalLayoutDlg.addWidget(scrollArea)

        self.groupBox = GroupBox(self)
        self.groupBox.Caption = ""
        vLayoutScrollArea.addWidget(self.groupBox)

        self.panel = Frame(self.groupBox)
        self.groupBox.Add = self.panel

        self.pnlName = TextBoxPanel(self.panel)
        self.pnlName.LabelWidth = 0
        self.panel.Add = self.pnlName

        self.gbApproach = GroupBox(self.panel)
        self.gbApproach.Caption = "Approach"
        self.panel.Add = self.gbApproach

        self.pnlAPP_InnerEdge = DistanceBoxPanel(self.gbApproach,
                                                 DistanceUnits.M)
        self.pnlAPP_InnerEdge.Caption = "Inner Edge"
        self.pnlAPP_InnerEdge.Button = None
        self.gbApproach.Add = self.pnlAPP_InnerEdge

        self.pnlAPP_DistFromTHR = DistanceBoxPanel(self.gbApproach,
                                                   DistanceUnits.M)
        self.pnlAPP_DistFromTHR.Caption = "Distance From Threshold"
        self.pnlAPP_DistFromTHR.Button = None
        self.gbApproach.Add = self.pnlAPP_DistFromTHR

        self.pnlAPP_Divergence = AngleGradientBoxPanel(self.gbApproach)
        self.pnlAPP_Divergence.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlAPP_Divergence.Caption = "Divergence (each side)"
        self.gbApproach.Add = self.pnlAPP_Divergence

        self.gbApproach1 = GroupBox(self.gbApproach)
        self.gbApproach1.Caption = "First Section"
        self.gbApproach.Add = self.gbApproach1

        self.pnlAPP_Length1 = DistanceBoxPanel(self.gbApproach1,
                                               DistanceUnits.M)
        self.pnlAPP_Length1.Caption = "Length"
        self.pnlAPP_Length1.Button = None
        self.gbApproach1.Add = self.pnlAPP_Length1

        self.pnlAPP_Slope1 = AngleGradientBoxPanel(self.gbApproach1)
        self.pnlAPP_Slope1.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlAPP_Slope1.Caption = "Slope"
        self.gbApproach1.Add = self.pnlAPP_Slope1

        self.gbApproach2 = GroupBox(self.gbApproach)
        self.gbApproach2.Caption = "Second Section"
        self.gbApproach.Add = self.gbApproach2

        self.pnlAPP_Length2 = DistanceBoxPanel(self.gbApproach2,
                                               DistanceUnits.M)
        self.pnlAPP_Length2.Caption = "Length"
        self.pnlAPP_Length2.Button = None
        self.gbApproach2.Add = self.pnlAPP_Length2

        self.pnlAPP_Slope2 = AngleGradientBoxPanel(self.gbApproach2)
        self.pnlAPP_Slope2.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlAPP_Slope2.Caption = "Slope"
        self.gbApproach2.Add = self.pnlAPP_Slope2

        self.gbApproach3 = GroupBox(self.gbApproach)
        self.gbApproach3.Caption = "Horizontal Section"
        self.gbApproach.Add = self.gbApproach3

        self.pnlAPP_Length3 = DistanceBoxPanel(self.gbApproach3,
                                               DistanceUnits.M)
        self.pnlAPP_Length3.Caption = "Length"
        self.pnlAPP_Length3.Button = None
        self.gbApproach3.Add = self.pnlAPP_Length3

        self.pnlAPP_TotalLength = DistanceBoxPanel(self.gbApproach3,
                                                   DistanceUnits.M)
        self.pnlAPP_TotalLength.Caption = "Total Length"
        self.pnlAPP_TotalLength.Button = None
        self.gbApproach3.Add = self.pnlAPP_TotalLength

        self.gbBalkedLanding = GroupBox(self.panel)
        self.gbBalkedLanding.Caption = "Balked Landing"
        self.panel.Add = self.gbBalkedLanding

        self.pnlBL_InnerEdge = DistanceBoxPanel(self.gbBalkedLanding,
                                                DistanceUnits.M)
        self.pnlBL_InnerEdge.Caption = "Length of Inner Edge"
        self.pnlBL_InnerEdge.Button = None
        self.gbBalkedLanding.Add = self.pnlBL_InnerEdge

        self.pnlBL_DistFromTHR = Frame(self.gbBalkedLanding, "HL")
        self.gbBalkedLanding.Add = self.pnlBL_DistFromTHR

        self.cmbBL_DistFromTHR = ComboBoxPanel(self.pnlBL_DistFromTHR)
        self.cmbBL_DistFromTHR.CaptionUnits = "m"
        self.cmbBL_DistFromTHR.Caption = "Distance From Threshold"
        self.pnlBL_DistFromTHR.Add = self.cmbBL_DistFromTHR

        self.txtBL_DistFromTHR = DistanceBoxPanel(self.pnlBL_DistFromTHR,
                                                  DistanceUnits.M)
        self.txtBL_DistFromTHR.LabelWidth = 0
        self.txtBL_DistFromTHR.Button = None
        self.pnlBL_DistFromTHR.Add = self.txtBL_DistFromTHR

        self.pnlBL_Divergence = AngleGradientBoxPanel(self.gbBalkedLanding)
        self.pnlBL_Divergence.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlBL_Divergence.Caption = "Divergence (each side)"
        self.gbBalkedLanding.Add = self.pnlBL_Divergence

        self.pnlBL_Slope = AngleGradientBoxPanel(self.gbBalkedLanding)
        self.pnlBL_Slope.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlBL_Slope.Caption = "Slope"
        self.gbBalkedLanding.Add = self.pnlBL_Slope

        self.gbConical = GroupBox(self.panel)
        self.gbConical.Caption = "Conical"
        self.panel.Add = self.gbConical

        self.pnlCON_Slope = AngleGradientBoxPanel(self.gbConical)
        self.pnlCON_Slope.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlCON_Slope.Caption = "Slope"
        self.gbConical.Add = self.pnlCON_Slope

        self.pnlCON_Height = AltitudeBoxPanel(self.gbConical)
        self.pnlCON_Height.CaptionUnits = "m"
        self.pnlCON_Height.Caption = "Height"
        self.gbConical.Add = self.pnlCON_Height

        self.gbInnerApproach = GroupBox(self.panel)
        self.gbInnerApproach.Caption = "Inner Approach"
        self.panel.Add = self.gbInnerApproach

        self.pnlIA_Width = DistanceBoxPanel(self.gbInnerApproach,
                                            DistanceUnits.M)
        self.pnlIA_Width.Caption = "Width"
        self.pnlIA_Width.Button = None
        self.gbInnerApproach.Add = self.pnlIA_Width

        self.pnlIA_DistFromTHR = DistanceBoxPanel(self.gbInnerApproach,
                                                  DistanceUnits.M)
        self.pnlIA_DistFromTHR.Caption = "Distance From Threshold"
        self.pnlIA_DistFromTHR.Button = None
        self.gbInnerApproach.Add = self.pnlIA_DistFromTHR

        self.pnlIA_Length = DistanceBoxPanel(self.gbInnerApproach,
                                             DistanceUnits.M)
        self.pnlIA_Length.Caption = "Length"
        self.pnlIA_Length.Button = None
        self.gbInnerApproach.Add = self.pnlIA_Length

        self.pnlIA_Slope = AngleGradientBoxPanel(self.gbInnerApproach)
        self.pnlIA_Slope.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlIA_Slope.Caption = "Slope"
        self.gbInnerApproach.Add = self.pnlIA_Slope

        self.gbInnerHorizontal = GroupBox(self.panel)
        self.gbInnerHorizontal.Caption = "Inner Horizontal"
        self.panel.Add = self.gbInnerHorizontal

        self.pnlIH_Location = ComboBoxPanel(self.gbInnerHorizontal)
        self.pnlIH_Location.Caption = "Location"
        self.gbInnerHorizontal.Add = self.pnlIH_Location

        self.pnlIH_Height = AltitudeBoxPanel(self.gbInnerHorizontal)
        self.pnlIH_Height.CaptionUnits = "m"
        self.pnlIH_Height.Caption = "Height"
        self.gbInnerHorizontal.Add = self.pnlIH_Height

        self.pnlIH_Radius = DistanceBoxPanel(self.gbInnerHorizontal,
                                             DistanceUnits.M)
        self.pnlIH_Radius.Caption = "Radius"
        self.pnlIH_Radius.Button = None
        self.gbInnerHorizontal.Add = self.pnlIH_Radius

        self.gbInnerTransitional = GroupBox(self.panel)
        self.gbInnerTransitional.Caption = "Inner Transitional"
        self.panel.Add = self.gbInnerTransitional

        self.pnlIT_Slope = AngleGradientBoxPanel(self.gbInnerTransitional)
        self.pnlIT_Slope.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlIT_Slope.Caption = "Slope"
        self.gbInnerTransitional.Add = self.pnlIT_Slope

        self.gbNavAid = GroupBox(self.panel)
        self.gbNavAid.Caption = "1:10 Navigational Aid"
        self.panel.Add = self.gbNavAid

        self.pnlNA_Slope = AngleGradientBoxPanel(self.gbNavAid)
        self.pnlNA_Slope.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlNA_Slope.Caption = "Slope"
        self.gbNavAid.Add = self.pnlNA_Slope

        self.gbOuterHorizontal = GroupBox(self.panel)
        self.gbOuterHorizontal.Caption = "Outer Horizontal"
        self.panel.Add = self.gbOuterHorizontal

        self.pnlOH_Height = AltitudeBoxPanel(self.gbOuterHorizontal)
        self.pnlOH_Height.CaptionUnits = "m"
        self.pnlOH_Height.Caption = "Height"
        self.gbOuterHorizontal.Add = self.pnlOH_Height

        self.pnlOH_Radius = DistanceBoxPanel(self.gbOuterHorizontal,
                                             DistanceUnits.M)
        self.pnlOH_Radius.Caption = "Radius"
        self.pnlOH_Radius.Button = None
        self.gbOuterHorizontal.Add = self.pnlOH_Radius

        self.gbStrip = GroupBox(self.panel)
        self.gbStrip.Caption = "Strip"
        self.panel.Add = self.gbStrip

        self.pnlS_Width = DistanceBoxPanel(self.gbStrip, DistanceUnits.M)
        self.pnlS_Width.Caption = "Width"
        self.pnlS_Width.Button = None
        self.gbStrip.Add = self.pnlS_Width

        self.pnlS_Length = DistanceBoxPanel(self.gbStrip, DistanceUnits.M)
        self.pnlS_Length.Caption = "Length"
        self.pnlS_Length.Button = None
        self.gbStrip.Add = self.pnlS_Length

        self.gbTakeOff = GroupBox(self.panel)
        self.gbTakeOff.Caption = "Take-off "
        self.panel.Add = self.gbTakeOff

        self.pnlTO_InnerEdge = DistanceBoxPanel(self.gbTakeOff,
                                                DistanceUnits.M)
        self.pnlTO_InnerEdge.Caption = "Length of Inner Edge"
        self.pnlTO_InnerEdge.Button = None
        self.gbTakeOff.Add = self.pnlTO_InnerEdge

        self.pnlTO_DistFromEND = Frame(self.gbTakeOff, "HL")
        self.gbTakeOff.Add = self.pnlTO_DistFromEND

        self.cmbTO_DistFromEND = ComboBoxPanel(self.pnlTO_DistFromEND)
        self.cmbTO_DistFromEND.CaptionUnits = "m"
        self.cmbTO_DistFromEND.Caption = "Distance From Runway End"
        self.pnlTO_DistFromEND.Add = self.cmbTO_DistFromEND

        self.txtTO_DistFromEND = DistanceBoxPanel(self.pnlTO_DistFromEND,
                                                  DistanceUnits.M)
        self.txtTO_DistFromEND.LabelWidth = 0
        self.txtTO_DistFromEND.Button = None
        self.pnlTO_DistFromEND.Add = self.txtTO_DistFromEND

        self.pnlTO_Divergence = AngleGradientBoxPanel(self.gbTakeOff)
        self.pnlTO_Divergence.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlTO_Divergence.Caption = "Divergence (each side)"
        self.gbTakeOff.Add = self.pnlTO_Divergence

        self.pnlTO_FinalWidth = DistanceBoxPanel(self.gbTakeOff,
                                                 DistanceUnits.M)
        self.pnlTO_FinalWidth.Caption = "Final Width"
        self.pnlTO_FinalWidth.Button = None
        self.gbTakeOff.Add = self.pnlTO_FinalWidth

        self.pnlTO_Length = DistanceBoxPanel(self.gbTakeOff, DistanceUnits.M)
        self.pnlTO_Length.Caption = "Length"
        self.pnlTO_Length.Button = None
        self.gbTakeOff.Add = self.pnlTO_Length

        self.pnlTO_Slope = AngleGradientBoxPanel(self.gbTakeOff)
        self.pnlTO_Slope.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlTO_Slope.Caption = "Slope"
        self.gbTakeOff.Add = self.pnlTO_Slope

        self.gbTransitional = GroupBox(self.panel)
        self.gbTransitional.Caption = "Transitional"
        self.panel.Add = self.gbTransitional

        self.pnlT_Slope = AngleGradientBoxPanel(self.gbTransitional)
        self.pnlT_Slope.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlT_Slope.Caption = "Slope"
        self.gbTransitional.Add = self.pnlT_Slope

        self.btnBoxOkCancel = QDialogButtonBox(self)
        self.btnBoxOkCancel.setObjectName(("btnBoxOkCancel"))
        self.btnBoxOkCancel.setStandardButtons(QDialogButtonBox.Cancel
                                               | QDialogButtonBox.Ok)

        self.btnSave = self.btnBoxOkCancel.button(QDialogButtonBox.Ok)
        self.btnSave.setText("Save")

        self.connect(self.btnBoxOkCancel, SIGNAL("accepted()"), self.acceptDlg)
        self.connect(self.btnBoxOkCancel, SIGNAL("rejected()"), self.reject)

        vLayoutScrollArea.addWidget(self.btnBoxOkCancel)

        self.cmbBL_DistFromTHR.Items = AerodromeSurfacesBalkedLandingFrom.Items
        self.pnlIH_Location.Items = AerodromeSurfacesInnerHorizontalLocation.Items
        self.cmbTO_DistFromEND.Items = AerodromeSurfacesTakeOffFrom.Items

        self.connect(self.pnlT_Slope, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlTO_Slope, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlTO_Length, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlTO_FinalWidth, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlTO_Divergence, SIGNAL("Event_0"), self.method_6)
        self.connect(self.txtTO_DistFromEND, SIGNAL("Event_0"), self.method_6)
        self.connect(self.cmbTO_DistFromEND, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlTO_InnerEdge, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlS_Length, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlS_Width, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlOH_Radius, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlOH_Height, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlNA_Slope, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlIT_Slope, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlIH_Radius, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlIH_Height, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlIH_Location, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlIA_Slope, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlIA_Length, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlIA_DistFromTHR, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlIA_Width, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlCON_Height, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlCON_Slope, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlBL_Slope, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlBL_Divergence, SIGNAL("Event_0"), self.method_6)

        self.connect(self.txtBL_DistFromTHR, SIGNAL("Event_0"), self.method_6)
        self.connect(self.cmbBL_DistFromTHR, SIGNAL("Event_0"),
                     self.cmbBL_DistFromTHR_currentIndexChanged)
        self.connect(self.pnlBL_InnerEdge, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlAPP_TotalLength, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlAPP_Length3, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlAPP_Slope2, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlAPP_Length2, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlAPP_Slope1, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlAPP_Length1, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlAPP_Divergence, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlAPP_DistFromTHR, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlAPP_InnerEdge, SIGNAL("Event_0"), self.method_6)
        self.connect(self.pnlName, SIGNAL("Event_0"), self.method_6)

        self.modified = False
        self.criteria = None
    def setupUi(self, Form):
        Form.setObjectName(_fromUtf8("Form"))
        Form.resize(515, 570)
        self.verticalLayout = QtGui.QVBoxLayout(Form)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.groupBox_20 = QtGui.QGroupBox(Form)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.groupBox_20.setFont(font)
        self.groupBox_20.setObjectName(_fromUtf8("groupBox_20"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.groupBox_20)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))

        self.cmbSegmentType = ComboBoxPanel(self.groupBox_20)
        self.cmbSegmentType.Caption = "Visual Segment Type"
        self.cmbSegmentType.LabelWidth = 250
        self.verticalLayout_5.addWidget(self.cmbSegmentType)

        self.cmbApproachType = ComboBoxPanel(self.groupBox_20)
        self.cmbApproachType.Caption = "Approach Type"
        self.cmbApproachType.LabelWidth = 250
        self.verticalLayout_5.addWidget(self.cmbApproachType)

        self.txtVSDG = AngleGradientBoxPanel(self.groupBox_20)
        self.txtVSDG.CaptionUnits = AngleGradientSlopeUnits.Degrees
        self.txtVSDG.Caption = "Visual Segment Design Gradient [VSDG]"
        self.txtVSDG.LabelWidth = 250
        self.txtVSDG.Value = AngleGradientSlope(
            8.3, AngleGradientSlopeUnits.Degrees)
        self.verticalLayout_5.addWidget(self.txtVSDG)

        self.txtApproachSurfaceTrack = TrackRadialBoxPanel(self.groupBox_20)
        self.txtApproachSurfaceTrack.Caption = "In-bound Approach Surface Track"
        self.verticalLayout_5.addWidget(self.txtApproachSurfaceTrack)

        icon = QtGui.QIcon()
        icon.addPixmap(
            QtGui.QPixmap(_fromUtf8("Resource/coordinate_capture.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)

        self.txtMOC = AltitudeBoxPanel(self.groupBox_20)
        self.txtMOC.CaptionUnits = "m"
        self.txtMOC.Caption = "MOC"
        self.txtMOC.Value = Altitude(75)
        self.txtMOC.LabelWidth = 250
        self.verticalLayout_5.addWidget(self.txtMOC)

        self.frame_Limitation = QtGui.QFrame(self.groupBox_20)
        self.frame_Limitation.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_Limitation.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_Limitation.setObjectName(_fromUtf8("frame_Limitation"))
        self.horizontalLayout_2 = QtGui.QHBoxLayout(self.frame_Limitation)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))

        self.chbLeftFlyOverProhibited = CheckBox(self.frame_Limitation)
        self.chbLeftFlyOverProhibited.Caption = "Left fly-over prohibited"
        self.horizontalLayout_2.addWidget(self.chbLeftFlyOverProhibited)

        self.chbRightFlyOverProhibited = CheckBox(self.frame_Limitation)
        self.chbRightFlyOverProhibited.Caption = "Right fly-over prohibited"
        self.horizontalLayout_2.addWidget(self.chbRightFlyOverProhibited)

        self.verticalLayout_5.addWidget(self.frame_Limitation)

        self.grbIDF = QtGui.QGroupBox(self.groupBox_20)
        self.grbIDF.setObjectName(_fromUtf8("grbIDF"))
        self.verticalLayout_IDF = QtGui.QVBoxLayout(self.grbIDF)
        self.verticalLayout_IDF.setObjectName(_fromUtf8("verticalLayout_IDF"))

        self.txtTrackTo = TrackRadialBoxPanel(self.grbIDF)
        self.txtTrackTo.Caption = "Track To"
        self.txtTrackTo.LabelWidth = 100
        self.verticalLayout_IDF.addWidget(self.txtTrackTo)

        self.frame_Tolerance = QtGui.QFrame(self.grbIDF)
        self.frame_Tolerance.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_Tolerance.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_Tolerance.setObjectName(_fromUtf8("frame_Tolerance"))
        self.horizontalLayout = QtGui.QHBoxLayout(self.frame_Tolerance)
        self.horizontalLayout.setSpacing(0)
        self.horizontalLayout.setMargin(0)
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.frame_2 = QtGui.QFrame(self.frame_Tolerance)
        self.frame_2.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_2.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_2.setObjectName(_fromUtf8("frame_2"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.frame_2)
        self.verticalLayout_3.setSpacing(3)
        self.verticalLayout_3.setMargin(0)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))

        self.frame_TrackFrom_2 = QtGui.QFrame(self.frame_2)
        self.frame_TrackFrom_2.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_TrackFrom_2.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_TrackFrom_2.setObjectName(_fromUtf8("frame_TrackFrom_2"))
        self.horizontalLayout_70 = QtGui.QHBoxLayout(self.frame_TrackFrom_2)
        self.horizontalLayout_70.setSpacing(0)
        self.horizontalLayout_70.setMargin(0)
        self.horizontalLayout_70.setObjectName(
            _fromUtf8("horizontalLayout_70"))
        self.label_78 = QtGui.QLabel(self.frame_TrackFrom_2)
        self.label_78.setMinimumSize(QtCore.QSize(240, 0))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_78.setFont(font)
        self.label_78.setObjectName(_fromUtf8("label_78"))
        self.horizontalLayout_70.addWidget(self.label_78)
        self.frame_APV_12 = QtGui.QFrame(self.frame_TrackFrom_2)
        self.frame_APV_12.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_APV_12.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_APV_12.setObjectName(_fromUtf8("frame_APV_12"))
        self.horizontalLayout_16 = QtGui.QHBoxLayout(self.frame_APV_12)
        self.horizontalLayout_16.setSpacing(0)
        self.horizontalLayout_16.setMargin(0)
        self.horizontalLayout_16.setObjectName(
            _fromUtf8("horizontalLayout_16"))
        self.txtAtt = QtGui.QLineEdit(self.frame_APV_12)
        self.txtAtt.setEnabled(True)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.txtAtt.setFont(font)
        self.txtAtt.setObjectName(_fromUtf8("txtAtt"))
        self.txtAtt.setMinimumWidth(50)
        self.txtAtt.setMaximumWidth(50)
        self.horizontalLayout_16.addWidget(self.txtAtt)
        self.horizontalLayout_70.addWidget(self.frame_APV_12)
        self.verticalLayout_3.addWidget(self.frame_TrackFrom_2)
        self.frame_TrackFrom_3 = QtGui.QFrame(self.frame_2)
        self.frame_TrackFrom_3.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_TrackFrom_3.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_TrackFrom_3.setObjectName(_fromUtf8("frame_TrackFrom_3"))
        self.horizontalLayout_71 = QtGui.QHBoxLayout(self.frame_TrackFrom_3)
        self.horizontalLayout_71.setSpacing(0)
        self.horizontalLayout_71.setMargin(0)
        self.horizontalLayout_71.setObjectName(
            _fromUtf8("horizontalLayout_71"))
        self.label_79 = QtGui.QLabel(self.frame_TrackFrom_3)
        self.label_79.setMinimumSize(QtCore.QSize(240, 0))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.label_79.setFont(font)
        self.label_79.setObjectName(_fromUtf8("label_79"))
        self.horizontalLayout_71.addWidget(self.label_79)
        self.frame_APV_13 = QtGui.QFrame(self.frame_TrackFrom_3)
        self.frame_APV_13.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_APV_13.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_APV_13.setObjectName(_fromUtf8("frame_APV_13"))
        self.horizontalLayout_17 = QtGui.QHBoxLayout(self.frame_APV_13)
        self.horizontalLayout_17.setSpacing(0)
        self.horizontalLayout_17.setMargin(0)
        self.horizontalLayout_17.setObjectName(
            _fromUtf8("horizontalLayout_17"))
        self.txtAsw = QtGui.QLineEdit(self.frame_APV_13)
        self.txtAsw.setEnabled(True)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.txtAsw.setFont(font)
        self.txtAsw.setObjectName(_fromUtf8("txtAsw"))
        self.txtAsw.setMinimumWidth(50)
        self.txtAsw.setMaximumWidth(50)
        self.horizontalLayout_17.addWidget(self.txtAsw)
        self.horizontalLayout_71.addWidget(self.frame_APV_13)
        self.verticalLayout_3.addWidget(self.frame_TrackFrom_3)
        self.horizontalLayout.addWidget(self.frame_2)
        self.btnDropDown = QtGui.QToolButton(self.frame_Tolerance)
        self.btnDropDown.setMaximumSize(QtCore.QSize(16777215, 50))
        self.btnDropDown.setText(_fromUtf8(""))
        self.btnDropDown.setObjectName(_fromUtf8("btnDropDown"))
        self.horizontalLayout.addWidget(self.btnDropDown)
        spacerItem = QtGui.QSpacerItem(0, 10, QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem)
        self.verticalLayout_IDF.addWidget(self.frame_Tolerance)

        self.verticalLayout_5.addWidget(self.grbIDF)

        self.grbHRP = QtGui.QGroupBox(self.groupBox_20)
        self.grbHRP.setObjectName(_fromUtf8("grbHRP"))
        self.verticalLayout_HRP = QtGui.QVBoxLayout(self.grbHRP)
        self.verticalLayout_HRP.setObjectName(_fromUtf8("verticalLayout_HRP"))

        self.txtHCH = NumberBoxPanel(self.grbHRP)
        self.txtHCH.CaptionUnits = "m"
        self.txtHCH.Caption = "Crossing Height [HCH]"
        self.txtHCH.LabelWidth = 140
        self.txtHCH.Value = 15
        self.verticalLayout_HRP.addWidget(self.txtHCH)

        self.txtHSAL = DistanceBoxPanel(self.grbHRP, DistanceUnits.M)
        self.txtHSAL.Caption = "Safety Area Length"
        self.txtHSAL.Value = Distance(30)
        self.txtHSAL.LabelWidth = 140
        self.verticalLayout_HRP.addWidget(self.txtHSAL)

        self.txtHSAW = DistanceBoxPanel(self.grbHRP, DistanceUnits.M)
        self.txtHSAW.Caption = "Safety Area Width"
        self.txtHSAW.Value = Distance(30)
        self.txtHSAW.LabelWidth = 140
        self.verticalLayout_HRP.addWidget(self.txtHSAW)

        self.verticalLayout_5.addWidget(self.grbHRP)

        self.cmbConstructionType = ComboBoxPanel(self.groupBox_20)
        self.cmbConstructionType.Caption = "Construction Type"
        self.cmbConstructionType.LabelWidth = 150
        self.verticalLayout_5.addWidget(self.cmbConstructionType)

        self.verticalLayout.addWidget(self.groupBox_20)
        spacerItem = QtGui.QSpacerItem(0, 0, QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Minimum)
        self.verticalLayout.addItem(spacerItem)

        self.retranslateUi(Form)
        QtCore.QMetaObject.connectSlotsByName(Form)
    def __init__(self, parent = None):
        QDialog.__init__(self, parent)
        
        self.resize(290, 136);
        self.setWindowTitle("Procedure Legs (AIXM 4.5)")
        sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed);
        sizePolicy.setHorizontalStretch(0);
        sizePolicy.setVerticalStretch(0);
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth());
        self.setSizePolicy(sizePolicy);
        verticalLayoutDlg = QVBoxLayout(self)
        verticalLayoutDlg.setObjectName(("verticalLayoutDlg"));

        self.gbAll = GroupBox(self, "HL")
        self.gbAll.Caption = "Legs"
        verticalLayoutDlg.addWidget(self.gbAll)

        self.trvLegs = QTreeView(self.gbAll)
        self.trvLegsStdModel = StandardItemModel()
        self.trvLegs.setModel(self.trvLegsStdModel)
        self.gbAll.Add = self.trvLegs

        self.flowLayoutPanel1 = Frame(self.gbAll)
        self.gbAll.Add = self.flowLayoutPanel1

        self.btnAdd = QPushButton(self.flowLayoutPanel1)
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/add.png"), QIcon.Normal, QIcon.Off)
        self.btnAdd.setIcon(icon)
        self.flowLayoutPanel1.Add = self.btnAdd

        self.btnRemove = QPushButton(self.flowLayoutPanel1)
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/remove.png"), QIcon.Normal, QIcon.Off)
        self.btnRemove.setIcon(icon)
        self.flowLayoutPanel1.Add = self.btnRemove

        self.btnMoveUp = QPushButton(self.flowLayoutPanel1)
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/up.png"), QIcon.Normal, QIcon.Off)
        self.btnMoveUp.setIcon(icon)
        self.flowLayoutPanel1.Add = self.btnMoveUp

        self.btnMoveDown = QPushButton(self.flowLayoutPanel1)
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/down.png"), QIcon.Normal, QIcon.Off)
        self.btnMoveDown.setIcon(icon)
        self.flowLayoutPanel1.Add = self.btnMoveDown

        self.scrollBox = Frame(self.gbAll)
        self.gbAll.Add = self.scrollBox

        self.gbFix = GroupBox(self.scrollBox)
        self.gbFix.Caption = "Fix"
        self.scrollBox.Add = self.gbFix

        self.cmbFixPos = ComboBoxPanel(self.gbFix)
        self.cmbFixPos.Caption = "Position"
        self.cmbFixPos.Button = "coordinate_capture.png"
        self.gbFix.Add = self.cmbFixPos

        self.pnlCodeRoleFix = ComboBoxPanel(self.gbFix)
        self.pnlCodeRoleFix.Caption = "Type"
        self.gbFix.Add = self.pnlCodeRoleFix

        self.gbAttributes = GroupBox(self.scrollBox)
        self.gbAttributes.Caption = "Attributes"
        self.scrollBox.Add = self.gbAttributes

        self.cmbRecommendedEnt = ComboBoxPanel(self.gbAttributes)
        self.cmbRecommendedEnt.Caption = "Recommended Navigational Aid"
        self.gbAttributes.Add = self.cmbRecommendedEnt

        self.pnlCodePhase = ComboBoxPanel(self.gbAttributes)
        self.pnlCodePhase.Caption = "Fligh Phase"
        self.gbAttributes.Add = self.pnlCodePhase

        self.pnlCodeType = ComboBoxPanel(self.gbAttributes)
        self.pnlCodeType.Caption = "Leg Type"
        self.gbAttributes.Add = self.pnlCodeType

        self.pnlLegVOR = Frame(self.gbAttributes, "HL")
        self.gbAttributes.Add = self.pnlLegVOR

        self.cmbCodeTypeCourse = ComboBoxPanel(self.pnlLegVOR)
        self.cmbCodeTypeCourse.Caption = "Course Angle (" + define._degreeStr + ")"
        self.pnlLegVOR.Add = self.cmbCodeTypeCourse

        self.txtValCourse = TrackRadialBoxPanel(self.pnlLegVOR)
        self.txtValCourse.LabelWidth = 0
        self.pnlLegVOR.Add = self.txtValCourse

        self.pnlCodeDirTurn = ComboBoxPanel(self.gbAttributes)
        self.pnlCodeDirTurn.Caption = "Turn Direction"
        self.gbAttributes.Add = self.pnlCodeDirTurn

        self.pnlTurnValid = ComboBoxPanel(self.gbAttributes)
        self.pnlTurnValid.Caption = "Fly-By"
        self.gbAttributes.Add = self.pnlTurnValid

        self.cmbCenter = ComboBoxPanel(self.gbAttributes)
        self.cmbCenter.Caption = "Center"
        self.cmbCenter.Button = "coordinate_capture.png"
        self.gbAttributes.Add = self.cmbCenter

        self.pnlValBankAngle = NumberBoxPanel(self.gbAttributes)
        self.pnlValBankAngle.Caption = "Bank Angle (" + define._degreeStr + ")"
        self.gbAttributes.Add = self.pnlValBankAngle

        self.pnlCodeDescrDistVer = ComboBoxPanel(self.gbAttributes)
        self.pnlCodeDescrDistVer.Caption = "Altitude Interpretation"
        self.gbAttributes.Add = self.pnlCodeDescrDistVer

        self.pnlVerDistLower = Frame(self.gbAttributes, "HL")
        self.gbAttributes.Add = self.pnlVerDistLower

        self.cmbDistVerLower = ComboBoxPanel(self.pnlVerDistLower)
        self.cmbDistVerLower.CaptionUnits = "ft"
        self.cmbDistVerLower.Caption = "Lower Altitude Limit"
        self.pnlVerDistLower.Add = self.cmbDistVerLower

        self.txtDistVerLower = AltitudeBoxPanel(self.pnlVerDistLower)
        self.txtDistVerLower.CaptionUnits = "ft"
        self.txtDistVerLower.LabelWidth = 0
        self.pnlVerDistLower.Add = self.txtDistVerLower

        self.pnlDistVerUpper = Frame(self.gbAttributes, "HL")
        self.gbAttributes.Add = self.pnlDistVerUpper

        self.cmbDistVerUpper = ComboBoxPanel(self.pnlDistVerUpper)
        self.cmbDistVerUpper.CaptionUnits = "ft"
        self.cmbDistVerUpper.Caption = "Upper Altitude Limit"
        self.pnlDistVerUpper.Add = self.cmbDistVerUpper

        self.txtDistVerUpper = AltitudeBoxPanel(self.pnlDistVerUpper)
        self.txtDistVerUpper.CaptionUnits = "ft"
        self.txtDistVerUpper.LabelWidth = 0
        self.pnlDistVerUpper.Add = self.txtDistVerUpper

        self.pnlValVerAngle = NumberBoxPanel(self.gbAttributes)
        self.pnlValVerAngle.Caption = "Climb / Descent Angle [+/-] (" + define._degreeStr + ")"
        self.gbAttributes.Add = self.pnlValVerAngle

        self.tableLayoutPanel2 = Frame(self.gbAttributes, "HL")
        self.gbAttributes.Add = self.tableLayoutPanel2

        self.cmbCodeSpeedRef = ComboBoxPanel(self.tableLayoutPanel2)
        self.cmbCodeSpeedRef.CaptionUnits = "kts"
        self.cmbCodeSpeedRef.Caption = "Speed Restriction"
        self.tableLayoutPanel2.Add = self.cmbCodeSpeedRef

        self.txtValSpeed = SpeedBoxPanel(self.tableLayoutPanel2)
        self.txtValSpeed.LabelWidth = 0
        self.tableLayoutPanel2.Add = self.txtValSpeed

        self.pnlValDist = DistanceBoxPanel(self.gbAttributes, DistanceUnits.NM)
        self.pnlValDist.Caption = "Segment Length"
        self.pnlValDist.Button = None
        self.gbAttributes.Add = self.pnlValDist

        self.pnlValDur = NumberBoxPanel(self.gbAttributes)
        self.pnlValDur.CaptionUnits = "min"
        self.pnlValDur.Caption = "Duration"
        self.gbAttributes.Add = self.pnlValDur

        self.pnlCodeRepAtc = ComboBoxPanel(self.gbAttributes)
        self.pnlCodeRepAtc.Caption = "ATC Reporting"
        self.gbAttributes.Add = self.pnlCodeRepAtc

        self.pnlValTheta = TrackRadialBoxPanel(self.gbAttributes)
        self.pnlValTheta.Caption = "Magnetic Bearing / Radial from Recommended Nav. Aid"
        self.pnlValTheta.LabelWidth = 350
        self.gbAttributes.Add = self.pnlValTheta

        self.pnlValRho = DistanceBoxPanel(self.gbAttributes, DistanceUnits.NM)
        self.pnlValRho.Caption = "Distance from Recommended Nav. Aid"
        self.pnlValRho.LabelWidth = 350
        self.gbAttributes.Add = self.pnlValRho

        self.txtRemarks = TextBoxPanel(self.gbAttributes, True)
        self.txtRemarks.Caption = "Remarks"
        self.gbAttributes.Add = self.txtRemarks

        self.btnBoxOkCancel = QDialogButtonBox(self)
        self.btnBoxOkCancel.setObjectName(("btnBoxOkCancel"));
        self.btnBoxOkCancel.setStandardButtons(QDialogButtonBox.Cancel|QDialogButtonBox.Ok);
        self.connect(self.btnBoxOkCancel, SIGNAL("accepted()"), self.acceptDlg)
        self.connect(self.btnBoxOkCancel, SIGNAL("rejected()"), self.reject)



        verticalLayoutDlg.addWidget(self.btnBoxOkCancel)

        self.trvLegs.pressed.connect(self.trvLegs_pressed)

        self.data = None
        self.legs = None
        self.aerodrome = None;
        self.magnVar = 0.0



        for value in CodeIapFixAixm.Items:
            self.pnlCodeRoleFix.Add(value);
        for codeTypeProcPathAixm in CodeTypeProcPathAixm.Items:
            self.pnlCodeType.Add(codeTypeProcPathAixm);
        for codePhaseProcAixm in CodePhaseProcAixm.Items:
            self.pnlCodePhase.Add(codePhaseProcAixm);
        for codeTypeCourseAixm in CodeTypeCourseAixm.Items:
            self.cmbCodeTypeCourse.Add(codeTypeCourseAixm);
        for codeDirTurnAixm in CodeDirTurnAixm.Items:
            self.pnlCodeDirTurn.Add(codeDirTurnAixm);
        for codeDescrDistVerAixm in CodeDescrDistVerAixm.Items:
            self.pnlCodeDescrDistVer.Add(codeDescrDistVerAixm);
        for codeDistVerAixm in CodeDistVerAixm.Items:
            self.cmbDistVerLower.Add(codeDistVerAixm);
        for value1 in CodeDistVerAixm.Items:
            self.cmbDistVerUpper.Add(value1);
        for codeSpeedRefAixm in CodeSpeedRefAixm.Items:
            self.cmbCodeSpeedRef.Add(codeSpeedRefAixm);
        for codeTypeFlyByAixm in CodeTypeFlyByAixm.Items:
            self.pnlTurnValid.Add(codeTypeFlyByAixm);
        for codeRepAtcAixm in CodeRepAtcAixm.Items:
            self.pnlCodeRepAtc.Add(codeRepAtcAixm);
        self.method_6()

        self.connect(self.pnlValRho, SIGNAL("Event_0"), self.pnlValRho_Event_0)
        self.connect(self.pnlValTheta, SIGNAL("Event_0"), self.pnlValTheta_Event_0)
        self.connect(self.pnlCodeRepAtc, SIGNAL("Event_0"), self.pnlCodeRepAtc_Event_0)
        self.connect(self.pnlValDur, SIGNAL("Event_0"), self.pnlValDur_Event_0)
        self.connect(self.pnlValDist, SIGNAL("Event_0"), self.pnlValDist_Event_0)
        self.connect(self.cmbCodeSpeedRef, SIGNAL("Event_0"), self.cmbCodeSpeedRef_Event_0)
        self.connect(self.txtValSpeed, SIGNAL("Event_0"), self.txtValSpeed_Event_0)
        self.connect(self.txtDistVerUpper, SIGNAL("Event_0"), self.txtDistVerUpper_Event_0)
        self.connect(self.cmbDistVerUpper, SIGNAL("Event_0"), self.cmbDistVerUpper_Event_0)
        self.connect(self.txtDistVerLower, SIGNAL("Event_0"), self.txtDistVerLower_Event_0)

        self.connect(self.cmbDistVerLower, SIGNAL("Event_0"), self.cmbDistVerLower_Event_0)
        self.connect(self.pnlValBankAngle, SIGNAL("Event_0"), self.pnlValBankAngle_Event_0)
        self.connect(self.cmbCenter, SIGNAL("Event_0"), self.cmbCenter_Event_0)
        self.connect(self.pnlTurnValid, SIGNAL("Event_0"), self.pnlTurnValid_Event_0)
        self.connect(self.pnlCodeDirTurn, SIGNAL("Event_0"), self.pnlCodeDirTurn_Event_0)
        self.connect(self.cmbCodeTypeCourse, SIGNAL("Event_0"), self.cmbCodeTypeCourse_Event_0)
        self.connect(self.txtValCourse, SIGNAL("Event_0"), self.txtValCourse_Event_0)
        self.connect(self.pnlCodeType, SIGNAL("Event_0"), self.pnlCodeType_Event_0)
        self.connect(self.pnlCodePhase, SIGNAL("Event_0"), self.pnlCodePhase_Event_0)
        self.connect(self.pnlCodeRoleFix, SIGNAL("Event_0"), self.pnlCodeRoleFix_Event_0)
        self.connect(self.txtRemarks, SIGNAL("Event_0"), self.txtRemarks_Event_0)
        self.connect(self.cmbRecommendedEnt, SIGNAL("Event_0"), self.cmbRecommendedEnt_Event_0)

        self.connect(self.cmbFixPos, SIGNAL("Event_0"), self.cmbFixPos_Event_0)
        self.connect(self.cmbCenter, SIGNAL("Event_3"), self.method_14)
        self.connect(self.cmbFixPos, SIGNAL("Event_3"), self.method_13)

        self.btnAdd.clicked.connect(self.btnAdd_Click)
        self.btnMoveDown.clicked.connect(self.btnMoveDown_Click)
        self.btnMoveUp.clicked.connect(self.btnMoveUp_Click)
        self.btnRemove.clicked.connect(self.btnRemove_Click)

        self.trvLegs.setHeaderHidden(True)

        if self.trvLegsStdModel.rowCount() > 0:
            self.trvLegs.setCurrentIndex(self.trvLegsStdModel.index(0,0))
            self.method_8()
Beispiel #14
0
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(473, 580)
        font = QtGui.QFont()
        font.setFamily("Arial")
        font.setBold(False)
        font.setWeight(50)
        Form.setFont(font)
        self.vlForm = QtGui.QVBoxLayout(Form)
        self.vlForm.setObjectName(("vlForm"))

        self.gbMASegmentType = GroupBox(Form)
        self.gbMASegmentType.Caption = "Missed Approach Segment Type"
        self.vlForm.addWidget(self.gbMASegmentType)

        self.txtMASegmentType = TextBoxPanel(self.gbMASegmentType)
        self.txtMASegmentType.Caption = "Type"
        self.txtMASegmentType.textBox.setEnabled(False)
        self.txtMASegmentType.Button = "sort2.png"
        self.txtMASegmentType.Value = "Straight"
        self.txtMASegmentType.textBox.setMaximumWidth(10000000)
        self.txtMASegmentType.hLayoutBoxPanel.removeItem(
            self.txtMASegmentType.spacerItem)
        QtCore.QObject.connect(self.txtMASegmentType, QtCore.SIGNAL("Event_1"),
                               self.txtMASegmentType_Event_1)
        self.gbMASegmentType.Add = self.txtMASegmentType

        self.gbPosition = GroupBox(Form)
        self.gbPosition.Caption = "Positions"
        self.gbPosition.layoutBoxPanel.setSpacing(9)
        self.vlForm.addWidget(self.gbPosition)

        self.pnlFafPos = PositionPanel(self.gbPosition)
        self.pnlFafPos.Caption = "FAF Position"
        self.pnlFafPos.hideframe_Altitude()
        self.pnlFafPos.btnCalculater.hide()
        self.gbPosition.Add = self.pnlFafPos

        self.pnlMaptPos = PositionPanel(self.gbPosition)
        self.pnlMaptPos.Caption = "MAPt Position"
        self.pnlMaptPos.hideframe_Altitude()
        self.pnlMaptPos.btnCalculater.hide()
        self.gbPosition.Add = self.pnlMaptPos

        self.pnlMaTpPos = PositionPanel(self.gbPosition)
        self.pnlMaTpPos.Caption = "MA TP Position"
        self.pnlMaTpPos.hideframe_Altitude()
        self.pnlMaTpPos.btnCalculater.hide()
        self.gbPosition.Add = self.pnlMaTpPos
        self.pnlMaTpPos.Visible = False

        self.gbMaEndPos = GroupBox(self.gbPosition)
        self.gbMaEndPos.Caption = "MA End Position"
        self.gbPosition.Add = self.gbMaEndPos

        self.cmbMaEndType = ComboBoxPanel(self.gbMaEndPos)
        self.cmbMaEndType.Caption = "Type"
        self.cmbMaEndType.Items = ["NDB", "VOR"]
        self.gbMaEndPos.Add = self.cmbMaEndType
        self.cmbMaEndType.Visible = False

        self.pnlMaEndPos = PositionPanel(self.gbMaEndPos)
        self.pnlMaEndPos.hideframe_Altitude()
        self.pnlMaEndPos.btnCalculater.hide()
        self.gbMaEndPos.Add = self.pnlMaEndPos

        self.gbNavAid = GroupBox(self.gbPosition)
        self.gbNavAid.Caption = "Navigational Aid Position"
        self.gbPosition.Add = self.gbNavAid

        self.cmbNavAidType = ComboBoxPanel(self.gbNavAid)
        self.cmbNavAidType.Caption = "Type"
        self.cmbNavAidType.Items = ["NDB", "VOR"]
        self.gbNavAid.Add = self.cmbNavAidType

        self.pnlNavAidPos = PositionPanel(self.gbNavAid)
        self.pnlNavAidPos.btnCalculater.hide()
        self.pnlNavAidPos.hideframe_Altitude()
        self.gbNavAid.Add = self.pnlNavAidPos

        self.gbAddNavAid = GroupBox(self.gbPosition)
        self.gbAddNavAid.Caption = "Additional Navigational Aid Position"
        self.gbPosition.Add = self.gbAddNavAid

        self.cmbAddNavAidType = ComboBoxPanel(self.gbAddNavAid)
        self.cmbAddNavAidType.Caption = "Type"
        self.cmbAddNavAidType.Items = ["NDB", "VOR"]
        self.gbAddNavAid.Add = self.cmbAddNavAidType

        self.pnlAddNavAidPos = PositionPanel(self.gbAddNavAid)
        self.pnlAddNavAidPos.btnCalculater.hide()
        self.pnlAddNavAidPos.hideframe_Altitude()
        self.gbAddNavAid.Add = self.pnlAddNavAidPos

        self.gbParameters = GroupBox(Form)
        self.gbParameters.Caption = "Parameters"
        self.gbParameters.layoutBoxPanel.setSpacing(9)
        self.vlForm.addWidget(self.gbParameters)

        self.cmbTypeMapt = ComboBoxPanel(self.gbParameters)
        self.cmbTypeMapt.Caption = "MAPt Type"
        self.cmbTypeMapt.Items = ["Navigation facility", "FIX", "Timing"]
        self.gbParameters.Add = self.cmbTypeMapt

        self.cmbTypeTP = ComboBoxPanel(self.gbParameters)
        self.cmbTypeTP.Caption = "TP Type"
        self.cmbTypeTP.Items = [
            "Turn at FIX or Facility", "Turn at Altitude", "Turn at MAPt"
        ]
        self.gbParameters.Add = self.cmbTypeTP
        self.cmbTypeTP.Visible = False

        self.cmbAircraftCatgory = ComboBoxPanel(self.gbParameters)
        self.cmbAircraftCatgory.Caption = "Aircraft Category"
        self.cmbAircraftCatgory.Items = ["A", "B", "C", "D", "E", "H"]
        self.gbParameters.Add = self.cmbAircraftCatgory

        self.cmbDirection = ComboBoxPanel(self.gbParameters)
        self.cmbDirection.Caption = "Direction"
        self.cmbDirection.Items = ["Left", "Right"]
        self.gbParameters.Add = self.cmbDirection
        self.cmbDirection.Visible = False

        self.pnlAerodromeAlt = AltitudeBoxPanel(self.gbParameters)
        self.pnlAerodromeAlt.CaptionUnits = "ft"
        self.pnlAerodromeAlt.Caption = "Aerodrome Altitude"
        self.gbParameters.Add = self.pnlAerodromeAlt

        self.pnlPrimaryMoc = AltitudeBoxPanel(self.gbParameters)
        self.pnlPrimaryMoc.CaptionUnits = "m"
        self.pnlPrimaryMoc.Caption = "Primary Moc"
        self.pnlPrimaryMoc.Value = Altitude(75)
        self.gbParameters.Add = self.pnlPrimaryMoc

        self.pnlOCA = AltitudeBoxPanel(self.gbParameters)
        self.pnlOCA.CaptionUnits = "ft"
        self.pnlOCA.Caption = "OCA"
        self.gbParameters.Add = self.pnlOCA

        self.pnlTpAlt = AltitudeBoxPanel(self.gbParameters)
        self.pnlTpAlt.CaptionUnits = "ft"
        self.pnlTpAlt.Caption = "TP Altitude"
        self.gbParameters.Add = self.pnlTpAlt
        self.pnlTpAlt.Visible = False

        self.pnlEndTurnAlt = AltitudeBoxPanel(self.gbParameters)
        self.pnlEndTurnAlt.CaptionUnits = "ft"
        self.pnlEndTurnAlt.Caption = "End Turn Altitude"
        self.gbParameters.Add = self.pnlEndTurnAlt
        self.pnlEndTurnAlt.Visible = False

        self.pnlEndAlt = AltitudeBoxPanel(self.gbParameters)
        self.pnlEndAlt.CaptionUnits = "ft"
        self.pnlEndAlt.Caption = "End Altitude"
        self.gbParameters.Add = self.pnlEndAlt
        self.pnlEndAlt.Visible = False

        self.pnlTurnGradient = AngleGradientBoxPanel(self.gbParameters)
        self.pnlTurnGradient.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlTurnGradient.Caption = "Turn Gradient"
        # self.pnlTurnGradient.Value = AngleGradientSlope(2.5, AngleGradientSlopeUnits.Percent)
        self.gbParameters.Add = self.pnlTurnGradient
        self.pnlTurnGradient.Visible = False

        self.pnlBearing = TrackRadialBoxPanel(self.gbParameters)
        self.pnlBearing.Caption = "Bearing"
        self.gbParameters.Add = self.pnlBearing
        self.pnlBearing.Visible = False

        self.pnlDistance = DistanceBoxPanel(self.gbParameters,
                                            DistanceUnits.NM)
        self.pnlDistance.Caption = "Distance FAF-MAPt"
        self.pnlDistance.Button = None
        self.gbParameters.Add = self.pnlDistance

        self.pnlClimbGradient = AngleGradientBoxPanel(self.gbParameters)
        self.pnlClimbGradient.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlClimbGradient.Caption = "Climb Gradient"
        self.pnlClimbGradient.Value = AngleGradientSlope(
            2.5, AngleGradientSlopeUnits.Percent)
        self.gbParameters.Add = self.pnlClimbGradient

        self.cmbTrackGuidance = ComboBoxPanel(self.gbParameters)
        self.cmbTrackGuidance.Caption = "Track Guidance"
        self.cmbTrackGuidance.Items = ["Yes", "No"]
        QtCore.QObject.connect(self.cmbTrackGuidance, QtCore.SIGNAL("Event_0"),
                               self.cmbTrackGuidanceEvent_0)
        self.gbParameters.Add = self.cmbTrackGuidance

        self.cmbAddTrackGuidance = ComboBoxPanel(self.gbParameters)
        self.cmbAddTrackGuidance.Caption = "Additional Track Guidance"
        self.cmbAddTrackGuidance.Items = ["Yes", "No"]
        QtCore.QObject.connect(self.cmbAddTrackGuidance,
                               QtCore.SIGNAL("Event_0"),
                               self.cmbAddTrackGuidanceEvent_0)
        self.gbParameters.Add = self.cmbAddTrackGuidance

        self.cmbTurnMAPt = ComboBoxPanel(self.gbParameters)
        self.cmbTurnMAPt.Caption = "Turn Before MAPt"
        self.cmbTurnMAPt.Items = ["Yes", "No"]
        # QtCore.QObject.connect(self.cmbTrackGuidance, QtCore.SIGNAL("Event_0"), self.cmbTrackGuidanceEvent_0)
        self.gbParameters.Add = self.cmbTurnMAPt
        self.cmbTurnMAPt.Visible = False

        self.gbTpTolerance = GroupBox(self.gbParameters)
        self.gbTpTolerance.Caption = "TP Tolerance"
        self.gbParameters.Add = self.gbTpTolerance
        self.gbTpTolerance.Visible = False

        self.txtKEarlist = NumberBoxPanel(self.gbTpTolerance)
        self.txtKEarlist.CaptionUnits = "nm"
        self.txtKEarlist.Caption = "K Earliest"
        self.gbTpTolerance.Add = self.txtKEarlist

        self.txtLatestFix = NumberBoxPanel(self.gbTpTolerance)
        self.txtLatestFix.CaptionUnits = "nm"
        self.txtLatestFix.Caption = "Latest Fix"
        self.gbTpTolerance.Add = self.txtLatestFix

        self.txtC = NumberBoxPanel(self.gbTpTolerance)
        self.txtC.CaptionUnits = "nm"
        self.txtC.Caption = "C"
        self.gbTpTolerance.Add = self.txtC

        self.txtLatestTurn = NumberBoxPanel(self.gbTpTolerance)
        self.txtLatestTurn.CaptionUnits = "nm"
        self.txtLatestTurn.Caption = "Latest"
        self.gbTpTolerance.Add = self.txtLatestTurn

        self.gbNominalTrack = GroupBox(self.gbParameters)
        self.gbNominalTrack.Caption = "Nominal Track"
        self.gbParameters.Add = self.gbNominalTrack
        self.gbNominalTrack.Visible = False

        self.pnlTrueStartTrack = TrackRadialBoxPanel(self.gbNominalTrack)
        self.pnlTrueStartTrack.Caption = "True Start Track"
        self.gbNominalTrack.Add = self.pnlTrueStartTrack

        self.pnlTrueEndTrack = TrackRadialBoxPanel(self.gbNominalTrack)
        self.pnlTrueEndTrack.Caption = "True End Track"
        self.gbNominalTrack.Add = self.pnlTrueEndTrack

        self.txtArcLength = NumberBoxPanel(self.gbNominalTrack)
        self.txtArcLength.CaptionUnits = "nm"
        self.txtArcLength.Caption = "Arc Length"
        self.gbNominalTrack.Add = self.txtArcLength

        self.gbVelocity = GroupBox(self.gbParameters)
        self.gbVelocity.Caption = "ISA VAR Celsius,IAS,TAS and Wind Velocity"
        self.gbParameters.Add = self.gbVelocity

        self.txtISAVAR = NumberBoxPanel(self.gbVelocity, "0.0")
        self.txtISAVAR.CaptionUnits = define._degreeStr + QtCore.QString("C")
        self.txtISAVAR.Caption = "ISA"
        # self.txtISAVAR.Items = ["ISA-30", "ISA-20", "ISA-10", "ISA", "ISA+10", "ISA+15", "ISA+20", "ISA+30"]
        self.gbVelocity.Add = self.txtISAVAR

        self.pnlIAS = SpeedBoxPanel(self.gbVelocity, SpeedUnits.KTS)
        self.pnlIAS.Caption = "IAS"
        self.gbVelocity.Add = self.pnlIAS

        # self.pnlWind = WindPanel(self.gbVelocity)
        # self.gbVelocity.Add = self.pnlWind
        # self.pnlWind.Visible = False

        self.pnlTAS = SpeedBoxPanel(self.gbVelocity, SpeedUnits.KTS)
        self.pnlTAS.Caption = "TAS"
        self.gbVelocity.Add = self.pnlTAS

        self.gbTurn = GroupBox(self.gbParameters)
        self.gbTurn.Caption = "Turn"
        self.gbParameters.Add = self.gbTurn
        self.gbTurn.Visible = False

        self.txtBankAngle = NumberBoxPanel(self.gbTurn)
        self.txtBankAngle.CaptionUnits = define._degreeStr
        self.txtBankAngle.Caption = "Bank Angle"
        self.gbTurn.Add = self.txtBankAngle

        self.txtRateOfTurn = NumberBoxPanel(self.gbTurn)
        self.txtRateOfTurn.CaptionUnits = define._degreeStr + QtCore.QString(
            "/sec")
        self.txtRateOfTurn.Caption = "Rate Of Turn"
        self.gbTurn.Add = self.txtRateOfTurn

        self.txtWindEffect = NumberBoxPanel(self.gbTurn)
        self.txtWindEffect.Caption = "Wind Effect"
        self.gbTurn.Add = self.txtWindEffect

        self.gbMAPtTolerance = GroupBox(self.gbParameters)
        self.gbMAPtTolerance.Caption = "MAPt Tolerance"
        self.gbParameters.Add = self.gbMAPtTolerance

        self.txtEarlist = NumberBoxPanel(self.gbMAPtTolerance)
        self.txtEarlist.CaptionUnits = "nm"
        self.txtEarlist.Caption = "Earliest"
        self.gbMAPtTolerance.Add = self.txtEarlist

        self.txtLatest = NumberBoxPanel(self.gbMAPtTolerance)
        self.txtLatest.CaptionUnits = "nm"
        self.txtLatest.Caption = "Latest"
        self.gbMAPtTolerance.Add = self.txtLatest

        self.txtD = NumberBoxPanel(self.gbMAPtTolerance)
        self.txtD.CaptionUnits = "nm"
        self.txtD.Caption = "D"
        self.gbMAPtTolerance.Add = self.txtD

        self.gbMAPtToSocDist = GroupBox(self.gbParameters)
        self.gbMAPtToSocDist.Caption = "MAPt to SOC Distance"
        self.gbParameters.Add = self.gbMAPtToSocDist

        self.txtX = NumberBoxPanel(self.gbMAPtToSocDist)
        self.txtX.CaptionUnits = "nm"
        self.txtX.Caption = "X"
        self.gbMAPtToSocDist.Add = self.txtX

        self.txtDistMAPtSOC = DistanceBoxPanel(self.gbMAPtToSocDist,
                                               DistanceUnits.NM)
        self.txtDistMAPtSOC.Caption = "MAPt - SOC Distance"
        self.txtDistMAPtSOC.Button = None
        self.gbMAPtToSocDist.Add = self.txtDistMAPtSOC

        self.txtEarlistTemp = NumberBoxPanel(self.gbParameters)
        self.gbParameters.Add = self.txtEarlistTemp
        self.txtEarlistTemp.Visible = False

        self.txtLatestTemp = NumberBoxPanel(self.gbParameters)
        self.gbParameters.Add = self.txtLatestTemp
        self.txtLatestTemp.Visible = False

        self.missedApproachMenu = QtGui.QMenu()

        self.strightCmd = QgisHelper.createAction(self.missedApproachMenu,
                                                  "Straight",
                                                  self.menuStrightClick)
        self.missedApproachMenu.addAction(self.strightCmd)

        self.turningCmd = QgisHelper.createAction(self.missedApproachMenu,
                                                  "Turning",
                                                  self.menuTurningClick)
        self.missedApproachMenu.addAction(self.turningCmd)
    def setupUi(self, Form):
        Form.setObjectName(_fromUtf8("Form"))
        Form.resize(473, 580)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        Form.setFont(font)
        self.vlForm = QtGui.QVBoxLayout(Form)
        self.vlForm.setObjectName(_fromUtf8("vlForm"))

        self.gbGeneral = QtGui.QGroupBox(Form)
        self.gbGeneral.setObjectName(_fromUtf8("gbGeneral"))
        self.gbGeneral.setTitle("General")
        self.vl_gbGeneral = QtGui.QVBoxLayout(self.gbGeneral)
        self.vl_gbGeneral.setObjectName(_fromUtf8("vl_gbGeneral"))

        self.pnlProcType = ComboBoxPanel(self.gbGeneral)
        self.pnlProcType.Caption = "Procedure Type"
        self.vl_gbGeneral.addWidget(self.pnlProcType)

        self.pnlBasedOn = ComboBoxPanel(self.gbGeneral)
        self.pnlBasedOn.Caption = "Path Terminators Based On"
        self.vl_gbGeneral.addWidget(self.pnlBasedOn)
        self.vlForm.addWidget(self.gbGeneral)

        self.gbParameters = QtGui.QGroupBox(Form)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.gbParameters.setFont(font)
        self.gbParameters.setObjectName(_fromUtf8("gbParameters"))
        self.gbParameters.setTitle("Path Terminators")
        self.vl_gbParameters = QtGui.QVBoxLayout(self.gbParameters)
        self.vl_gbParameters.setObjectName(_fromUtf8("vl_gbParameters"))

        self.pnlPT = ComboBoxPanel(self.gbParameters)
        self.pnlPT.Caption = "Type"
        self.vl_gbParameters.addWidget(self.pnlPT)

        self.pnlProperties = QtGui.QFrame(self.gbParameters)
        self.pnlProperties.setObjectName("pnlProperties")
        self.hl_pnlProperties = QtGui.QHBoxLayout(self.pnlProperties)
        self.hl_pnlProperties.setObjectName("hl_pnlProperties")
        # self.hl_pnlProperties.setMargin(0)
        # self.hl_pnlProperties.setSpacing(0)

        self.pnlLeft = QtGui.QFrame(self.pnlProperties)
        self.pnlLeft.setFrameShape(QtGui.QFrame.NoFrame)
        self.pnlLeft.setFrameShadow(QtGui.QFrame.Raised)
        self.pnlLeft.setObjectName("pnlLeft")
        self.vl_pnlLeft = QtGui.QVBoxLayout(self.pnlLeft)
        self.vl_pnlLeft.setObjectName("vl_pnlLeft")
        self.vl_pnlLeft.setMargin(0)
        self.vl_pnlLeft.setSpacing(0)

        self.gbWpt = QtGui.QGroupBox(self.pnlLeft)
        self.gbWpt.setObjectName("gbWpt")
        self.gbWpt.setTitle("Waypoint")
        self.vl_gbWpt = QtGui.QVBoxLayout(self.gbWpt)
        self.vl_gbWpt.setObjectName("vl_gbWpt")

        self.pnlWpt = PositionPanel(self.gbWpt, None, None, "Degree")
        self.pnlWpt.btnCalculater.hide()
        self.pnlWpt.showframe_ID()
        self.pnlWpt.hideframe_Altitude()
        self.pnlWpt.degreeFormat = "ddmmss.ssssH"
        self.vl_gbWpt.addWidget(self.pnlWpt)

        self.pnlFlyOver = ComboBoxPanel(self.gbWpt)
        self.pnlFlyOver.Caption = "Fly-over"
        self.pnlFlyOver.LabelWidth = 150
        self.vl_gbWpt.addWidget(self.pnlFlyOver)
        self.vl_pnlLeft.addWidget(self.gbWpt)

        self.pnlAltitude = AltitudeBoxPanel(self.pnlLeft)
        self.pnlAltitude.Caption = "Altitude Restriction"
        self.pnlAltitude.CaptionUnits = "ft"
        self.pnlAltitude.LabelWidth = 150
        self.vl_pnlLeft.addWidget(self.pnlAltitude)

        self.pnlSpeed = SpeedBoxPanel(self.pnlLeft, SpeedUnits.KTS)
        self.pnlSpeed.Caption = "Speed Limit"
        self.pnlSpeed.LabelWidth = 150
        self.vl_pnlLeft.addWidget(self.pnlSpeed)

        self.hl_pnlProperties.addWidget(self.pnlLeft)

        self.pnlRight = QtGui.QFrame(self.pnlProperties)
        self.pnlRight.setObjectName("pnlRight")
        self.pnlRight.setFrameShape(QtGui.QFrame.NoFrame)
        self.pnlRight.setFrameShadow(QtGui.QFrame.Raised)
        self.vl_pnlRight = QtGui.QVBoxLayout(self.pnlRight)
        self.vl_pnlRight.setObjectName("vl_pnlRight")
        self.vl_pnlRight.setMargin(0)
        self.vl_pnlRight.setSpacing(0)

        self.pnlCourse = TrackRadialBoxPanel(self.pnlRight)
        self.pnlCourse.Caption = "Course"
        self.pnlCourse.LabelWidth = 150
        self.vl_pnlRight.addWidget(self.pnlCourse)

        self.pnlTurnDir = ComboBoxPanel(self.pnlRight)
        self.pnlTurnDir.Caption = "Turn Direction"
        self.pnlTurnDir.LabelWidth = 150
        self.vl_pnlRight.addWidget(self.pnlTurnDir)

        self.pnlDist = DistanceBoxPanel(self.pnlRight, DistanceUnits.NM)
        self.pnlDist.Caption = "Distance"
        self.pnlDist.LabelWidth = 150
        self.vl_pnlRight.addWidget(self.pnlDist)

        self.pnlTime = NumberBoxPanel(self.pnlRight)
        self.pnlTime.CaptionUnits = "min"
        self.pnlTime.Caption = "Time"
        self.pnlTime.LabelWidth = 150
        self.vl_pnlRight.addWidget(self.pnlTime)

        self.pnlArcCen = PositionPanel(self.pnlRight, None, None, "Degree")
        self.pnlArcCen.groupBox.setTitle("Arc Center")
        self.pnlArcCen.btnCalculater.hide()
        self.pnlArcCen.hideframe_Altitude()
        self.pnlWpt.degreeFormat = "ddmmss.ssssH"
        self.vl_pnlRight.addWidget(self.pnlArcCen)

        self.hl_pnlProperties.addWidget(self.pnlRight)
        self.vl_gbParameters.addWidget(self.pnlProperties)

        self.frameResult = Frame(self.gbParameters, "HL")
        self.vl_gbParameters.addWidget(self.frameResult)

        self.grid = QtGui.QTableView(self.frameResult)
        self.grid.setObjectName("grid")
        self.frameResult.Add = self.grid

        self.lblError = QtGui.QLabel(self.gbParameters)
        self.lblError.setObjectName("lblError")
        self.lblError.setAlignment(QtCore.Qt.AlignCenter)
        font = QtGui.QFont()
        font.setBold(True)
        font.setPointSize(10)
        self.lblError.setFont(font)
        palette = QtGui.QPalette()
        brush = QtGui.QBrush(QtGui.QColor(207, 56, 86, 255))
        # brush.setStyle(Qt::SolidPattern);
        palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.WindowText,
                         brush)
        # palette.setBrush(QPalette.Inactive, QPalette.WindowText, brush2);
        # palette.setBrush(QPalette.Disabled, QPalette.WindowText, brush1);
        self.lblError.setPalette(palette)
        self.vl_gbParameters.addWidget(self.lblError)

        self.gridStdModel = QtGui.QStandardItemModel()
        self.gridStdModel.setHorizontalHeaderLabels([
            "#", "ID", "Latitude", "Longitude", "P/T", "Fly-over",
            unicode("Course (° T)", "utf-8"), "Turn Direction",
            "Altitude (ft)", "Dist. (nm) / Time (min)", "Speed Limit (kts)",
            "Center Latitude", "Center Longitude"
        ])
        # self.gridSelectionModel = QtGui.QSortFilterProxyModel()
        #
        # self.gridSelectionModel.setSourceModel(self.gridStdModel)
        self.grid.setModel(self.gridStdModel)
        self.grid.setSelectionBehavior(1)
        # self.grid.setSelectionMode(1)

        self.pnlTreeViewActions = QtGui.QFrame(self.frameResult)
        self.pnlTreeViewActions.setObjectName("pnlTreeViewActions")
        self.vl_pnlTreeViewActions = QtGui.QVBoxLayout(self.pnlTreeViewActions)
        self.vl_pnlTreeViewActions.setObjectName("vl_pnlTreeViewActions")

        self.btnAdd = QtGui.QPushButton(self.pnlTreeViewActions)
        self.btnAdd.setObjectName("btnAdd")
        self.btnAdd.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("Resource/add.png"), QtGui.QIcon.Normal,
                       QtGui.QIcon.Off)
        self.btnAdd.setIcon(icon)
        self.vl_pnlTreeViewActions.addWidget(self.btnAdd)

        self.btnRemove = QtGui.QPushButton(self.pnlTreeViewActions)
        self.btnRemove.setObjectName("btnRemove")
        self.btnRemove.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("Resource/remove.png"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnRemove.setIcon(icon)
        self.vl_pnlTreeViewActions.addWidget(self.btnRemove)

        self.btnUp = QtGui.QPushButton(self.pnlTreeViewActions)
        self.btnUp.setObjectName("btnUp")
        self.btnUp.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("Resource/up.png"), QtGui.QIcon.Normal,
                       QtGui.QIcon.Off)
        self.btnUp.setIcon(icon)
        self.vl_pnlTreeViewActions.addWidget(self.btnUp)

        self.btnDown = QtGui.QPushButton(self.pnlTreeViewActions)
        self.btnDown.setObjectName("btnDown")
        self.btnDown.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("Resource/down.png"), QtGui.QIcon.Normal,
                       QtGui.QIcon.Off)
        self.btnDown.setIcon(icon)
        self.vl_pnlTreeViewActions.addWidget(self.btnDown)

        self.frameResult.Add = self.pnlTreeViewActions

        self.vlForm.addWidget(self.gbParameters)
    def setupUi(self, Form):
        Form.setObjectName(("Form"))
        Form.resize(473, 580)
        font = QtGui.QFont()
        font.setFamily(("Arial"))
        font.setBold(False)
        font.setWeight(50)
        Form.setFont(font)

        self.aprAnnotation = QgsTextAnnotationItem(define._canvas)
        self.aprAnnotation.setDocument(QtGui.QTextDocument("ARP"))
        self.aprAnnotation.setFrameSize(QtCore.QSizeF(30, 20))
        self.aprAnnotation.hide()
        self.thrAnnotation = QgsTextAnnotationItem(define._canvas)
        self.thrAnnotation.setDocument(QtGui.QTextDocument("THR"))
        self.thrAnnotation.setFrameSize(QtCore.QSizeF(30, 20))
        self.thrAnnotation.hide()

        self.vlForm = QtGui.QVBoxLayout(Form)
        self.vlForm.setObjectName(("vlForm"))
        self.vlForm.setSpacing(0)
        self.vlForm.setMargin(0)

        self.pnlPositions = QtGui.QFrame(Form)
        self.pnlPositions.setObjectName(("pnlPositions"))
        self.hl_pnlPositions = QtGui.QVBoxLayout(self.pnlPositions)
        self.hl_pnlPositions.setObjectName(("hl_pnlPositions"))
        self.hl_pnlPositions.setMargin(0)

        self.cmbAerodrome = ComboBoxPanel(self.pnlPositions, True)
        self.cmbAerodrome.Caption = "Aerodrome"
        self.cmbAerodrome.LabelWidth = 120
        self.hl_pnlPositions.addWidget(self.cmbAerodrome)

        self.cmbRwyDir = ComboBoxPanel(self.pnlPositions, True)
        self.cmbRwyDir.Caption = "Runway Direction"
        self.cmbRwyDir.LabelWidth = 120
        self.cmbRwyDir.Width = 120
        self.hl_pnlPositions.addWidget(self.cmbRwyDir)

        self.gbAerodrome = QtGui.QGroupBox(Form)
        self.gbAerodrome.setObjectName("gbAerodrome")
        self.gbAerodrome.setTitle("Aerodrome")
        self.vl_gbAerodrome = QtGui.QVBoxLayout(self.gbAerodrome)
        self.vl_gbAerodrome.setObjectName("vl_gbAerodrome")

        self.pnlArp = PositionPanel(self.gbAerodrome, self.aprAnnotation)
        self.pnlArp.groupBox.setTitle("Reference Point (ARP)")
        self.pnlArp.btnCalculater.hide()
        self.vl_gbAerodrome.addWidget(self.pnlArp)

        self.pnlMinTemp = NumberBoxPanel(self.gbAerodrome)
        self.pnlMinTemp.CaptionUnits = define._degreeStr
        self.pnlMinTemp.Caption = "Minimum Temperature"
        self.pnlMinTemp.Value = -15
        self.vl_gbAerodrome.addWidget(self.pnlMinTemp)

        self.hl_pnlPositions.addWidget(self.gbAerodrome)

        self.gbRunway = QtGui.QGroupBox(Form)
        self.gbRunway.setObjectName("gbRunway")
        self.gbRunway.setTitle("Runway")
        self.vl_gbRunway = QtGui.QVBoxLayout(self.gbRunway)
        self.vl_gbRunway.setObjectName("vl_gbRunway")

        self.pnlThr = PositionPanel(self.gbRunway, self.thrAnnotation)
        self.pnlThr.groupBox.setTitle("Threshold Position")
        self.pnlThr.btnCalculater.hide()
        self.vl_gbRunway.addWidget(self.pnlThr)

        self.pnlThrEnd = PositionPanel(self.gbRunway, self.thrAnnotation)
        self.pnlThrEnd.groupBox.setTitle("Runway End Position")
        self.pnlThrEnd.btnCalculater.hide()
        self.vl_gbRunway.addWidget(self.pnlThrEnd)
        self.pnlThrEnd.Visible = False

        self.pnlRwyDir = TrackRadialBoxPanel(self.gbRunway)
        self.pnlRwyDir.Caption = "Direction"
        self.pnlRwyDir.LabelWidth = 70
        self.vl_gbRunway.addWidget(self.pnlRwyDir)

        self.hl_pnlPositions.addWidget(self.gbRunway)
        self.vlForm.addWidget(self.pnlPositions)

        self.gbParameters = QtGui.QGroupBox(Form)
        font = QtGui.QFont()
        font.setFamily(("Arial"))
        font.setBold(False)
        font.setWeight(50)
        self.gbParameters.setFont(font)
        self.gbParameters.setObjectName(("gbParameters"))
        self.gbParameters.setTitle("Parameters")
        self.vl_gbParameters = QtGui.QVBoxLayout(self.gbParameters)
        self.vl_gbParameters.setObjectName(("vl_gbParameters"))

        self.pnlOCAH = OCAHPanel(self.gbParameters)
        self.pnlOCAH.Caption = "Intermediate Segment"
        self.pnlOCAH.Value = Altitude(2000, AltitudeUnits.FT)
        self.pnlOCAH.LabelWidth = 200
        self.vl_gbParameters.addWidget(self.pnlOCAH)

        self.pnlMocI = AltitudeBoxPanel(self.gbParameters)
        self.pnlMocI.CaptionUnits = "m"
        self.pnlMocI.Caption = "Intermediate Segment MOC"
        self.pnlMocI.Value = Altitude(150)
        self.vl_gbParameters.addWidget(self.pnlMocI)

        self.pnlRDH = AltitudeBoxPanel(self.gbParameters)
        self.pnlRDH.CaptionUnits = "m"
        self.pnlRDH.Caption = "RDH at THR"
        self.pnlRDH.Value = Altitude(15)
        self.vl_gbParameters.addWidget(self.pnlRDH)

        self.pnlVPA = ComboBoxPanel(self.gbParameters)
        self.pnlVPA.Caption = "Vertical Path Angle [VPA]"
        # self.pnlVPA.comboBox.setToolTip()
        self.vl_gbParameters.addWidget(self.pnlVPA)

        self.lblAbove35 = QtGui.QLabel(self.gbParameters)
        self.lblAbove35.setText(
            QtCore.QString("A procedure with a promulgated VPA exceeding 3.5")
            + unicode("°", "utf-8") + QtCore.QString(
                " is a non-standard procedure.\nIt shall be subject to an aeronautical study and will require special approval \n    by the national competent authority (PANS-OPS Part III, Section 3, Chapter 4, Par. 4.2.1.3)"
            ))
        self.vl_gbParameters.addWidget(self.lblAbove35)

        self.pnlThrFafDist = DistanceBoxPanel(self.gbParameters,
                                              DistanceUnits.NM)
        self.pnlThrFafDist.Caption = "THR to FAWP Distance"
        self.pnlThrFafDist.Value = Distance(5, DistanceUnits.NM)
        self.vl_gbParameters.addWidget(self.pnlThrFafDist)

        self.pnlAcCat = ComboBoxPanel(self.gbParameters)
        self.pnlAcCat.Caption = "Aircraft Category"
        self.vl_gbParameters.addWidget(self.pnlAcCat)

        self.pnlIas = SpeedBoxPanel(self.gbParameters, SpeedUnits.KTS)
        self.pnlIas.Caption = "Max. IAS"
        self.pnlIas.Value = Speed(185)
        self.vl_gbParameters.addWidget(self.pnlIas)

        self.pnlIasAtThr = SpeedBoxPanel(self.gbParameters, SpeedUnits.KTS)
        self.pnlIasAtThr.Caption = "Max. IAS at THR"
        self.pnlIasAtThr.Value = Speed(165)
        self.vl_gbParameters.addWidget(self.pnlIasAtThr)

        self.pnlHL = AltitudeBoxPanel(self.gbParameters)
        self.pnlHL.CaptionUnits = "m"
        self.pnlHL.Caption = "Height Loss"
        self.pnlHL.Value = Altitude(49)
        self.vl_gbParameters.addWidget(self.pnlHL)

        self.pnlTC = AltitudeBoxPanel(self.gbParameters)
        self.pnlTC.CaptionUnits = "m"
        self.pnlTC.Caption = "Temperature Correction"
        self.pnlTC.Value = Altitude(0)
        self.vl_gbParameters.addWidget(self.pnlTC)

        self.tableLayoutPanel1 = QtGui.QFrame(self.gbParameters)
        self.tableLayoutPanel1.setObjectName("tableLayoutPanel1")
        self.vl_tableLayoutPanel1 = QtGui.QVBoxLayout(self.tableLayoutPanel1)
        self.vl_tableLayoutPanel1.setObjectName("vl_tableLayoutPanel1")
        self.vl_tableLayoutPanel1.setSpacing(0)
        self.vl_tableLayoutPanel1.setMargin(0)

        self.upFrame = QtGui.QFrame(self.tableLayoutPanel1)
        self.upFrame.setObjectName("upFrame")
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.upFrame.sizePolicy().hasHeightForWidth())
        self.upFrame.setSizePolicy(sizePolicy)
        self.hl_upFrame = QtGui.QHBoxLayout(self.upFrame)
        self.hl_upFrame.setObjectName("hl_upFrame")
        self.hl_upFrame.setMargin(0)

        self.cmbTermination = ComboBoxPanel(self.upFrame)
        self.cmbTermination.Caption = "APV Segment Termination"
        self.cmbTermination.comboBox.setMinimumWidth(80)
        self.hl_upFrame.addWidget(self.cmbTermination)

        self.pnlTerminationDist = DistanceBoxPanel(self.upFrame,
                                                   DistanceUnits.NM)
        self.pnlTerminationDist.Caption = "Dist."
        self.pnlTerminationDist.Value = Distance(5, DistanceUnits.NM)
        self.pnlTerminationDist.LabelWidth = 50
        self.hl_upFrame.addWidget(self.pnlTerminationDist)

        self.vl_tableLayoutPanel1.addWidget(self.upFrame)

        self.downFrame = QtGui.QFrame(self.tableLayoutPanel1)
        self.downFrame.setObjectName("downFrame")
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.downFrame.sizePolicy().hasHeightForWidth())
        self.downFrame.setSizePolicy(sizePolicy)
        self.hl_downFrame = QtGui.QHBoxLayout(self.downFrame)
        self.hl_downFrame.setObjectName("hl_downFrame")
        self.hl_downFrame.setMargin(0)

        self.cmbMAPt = ComboBoxPanel(self.downFrame)
        self.cmbMAPt.Caption = "Missed Approach Point"
        self.cmbMAPt.comboBox.setMinimumWidth(80)
        self.hl_downFrame.addWidget(self.cmbMAPt)

        self.pnlMAPtDist = DistanceBoxPanel(self.downFrame, DistanceUnits.NM)
        self.pnlMAPtDist.Caption = "Dist."
        # self.pnlMAPtDist.Value = Distance(5, DistanceUnits.NM)
        self.pnlMAPtDist.LabelWidth = 50
        self.hl_downFrame.addWidget(self.pnlMAPtDist)

        self.vl_tableLayoutPanel1.addWidget(self.downFrame)
        self.vl_gbParameters.addWidget(self.tableLayoutPanel1)

        self.pnlMACG = NumberBoxPanel(self.gbParameters)
        self.pnlMACG.CaptionUnits = "%"
        self.pnlMACG.Caption = "Missed Approach Climb Gradient"
        self.pnlMACG.Value = 2.5
        self.vl_gbParameters.addWidget(self.pnlMACG)

        self.pnlMocMA = AltitudeBoxPanel(self.gbParameters)
        self.pnlMocMA.CaptionUnits = "m"
        self.pnlMocMA.Caption = "Missed Approach MOC"
        self.pnlMocMA.Value = Altitude(30)
        self.vl_gbParameters.addWidget(self.pnlMocMA)

        self.pnlEvalMethodMA = ComboBoxPanel(self.gbParameters)
        self.pnlEvalMethodMA.Caption = "Missed Approach Evaluation"
        self.vl_gbParameters.addWidget(self.pnlEvalMethodMA)

        self.pnlConstructionType = ComboBoxPanel(self.gbParameters)
        self.pnlConstructionType.Caption = "Construction Type"
        self.vl_gbParameters.addWidget(self.pnlConstructionType)

        self.vlForm.addWidget(self.gbParameters)
        QtCore.QMetaObject.connectSlotsByName(Form)
Beispiel #17
0
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(473, 580)
        font = QtGui.QFont()
        font.setFamily("Arial")
        font.setBold(False)
        font.setWeight(50)
        Form.setFont(font)
        self.vlForm = QtGui.QVBoxLayout(Form)
        self.vlForm.setObjectName(("vlForm"))

        self.gbBaseLine = GroupBox(Form)
        self.gbBaseLine.Title = "Base Line"
        self.vlForm.addWidget(self.gbBaseLine)

        self.pnlBasePoint = PositionPanel(self.gbBaseLine)
        self.pnlBasePoint.btnCalculater.hide()
        self.pnlBasePoint.hideframe_Altitude()
        self.gbBaseLine.Add = self.pnlBasePoint

        self.pnlBaseAltitude = AltitudeBoxPanel(self.gbBaseLine)
        self.pnlBaseAltitude.CaptionUnits = "m"
        self.pnlBaseAltitude.Caption = "Altitude"
        self.pnlBaseAltitude.Value = Altitude(0)
        self.gbBaseLine.Add = self.pnlBaseAltitude

        self.cmbBaseOrientation = ComboBoxPanel(self.gbBaseLine)
        self.cmbBaseOrientation.Caption = "Orientation"
        self.gbBaseLine.Add = self.cmbBaseOrientation

        self.gbParameters = GroupBox(Form)
        self.gbParameters.Caption = "Parameters"
        self.gbParameters.layoutBoxPanel.setSpacing(9)
        self.vlForm.addWidget(self.gbParameters)

        self.pnlMode = ComboBoxPanel(self.gbParameters)
        self.pnlMode.Caption = "Mode (Obstacle Input)"
        self.gbParameters.Add = self.pnlMode

        self.pnlUsedFor = ComboBoxPanel(self.gbParameters)
        self.pnlUsedFor.Caption = "Used For"
        self.gbParameters.Add = self.pnlUsedFor

        self.pnlPDG = NumberBoxPanel(self.gbParameters)
        self.pnlPDG.CaptionUnits = "%"
        self.pnlPDG.Caption = "PDG"
        self.pnlPDG.Value = 3.3
        self.gbParameters.Add = self.pnlPDG

        self.pnlMOC = NumberBoxPanel(self.gbParameters)
        self.pnlMOC.CaptionUnits = "%"
        self.pnlMOC.Caption = "MOC"
        self.pnlMOC.Value = 0.8
        self.gbParameters.Add = self.pnlMOC

        self.pnlGP = NumberBoxPanel(self.gbParameters)
        self.pnlGP.CaptionUnits = "degree"
        self.pnlGP.Caption = "GP"
        self.pnlGP.Value = 3
        self.gbParameters.Add = self.pnlGP

        self.pnlRDH = AltitudeBoxPanel(self.gbParameters)
        self.pnlRDH.CaptionUnits = "m"
        self.pnlRDH.Caption = "RDH"
        self.pnlRDH.Value = Altitude(15)
        self.gbParameters.Add = self.pnlRDH

        self.gbConstruction = GroupBox(self.gbParameters)
        self.gbConstruction.layoutBoxPanel.setSpacing(9)
        self.gbConstruction.Caption = "Construction"
        self.gbParameters.Add = self.gbConstruction

        self.pnlLength = DistanceBoxPanel(self.gbConstruction, DistanceUnits.NM)
        self.pnlLength.Caption = "Length"
        self.pnlLength.Value = Distance(10, DistanceUnits.NM)
        self.gbConstruction.Add = self.pnlLength

        self.gbCustom = GroupBox(self.gbConstruction)
        self.gbCustom.Caption = "Custom Distance / Text"
        self.gbConstruction.Add = self.gbCustom

        p1 = Frame(self.gbCustom, "HL")
        self.gbCustom.Add = p1

        self.txtDist1 = DistanceBoxPanel(p1, DistanceUnits.NM)
        self.txtDist1.Caption = "Distance"
        self.txtDist1.Value = Distance(0, DistanceUnits.NM)
        self.txtDist1.Button = None
        p1.Add = self.txtDist1

        self.txtDist2 = DistanceBoxPanel(p1, DistanceUnits.NM)
        self.txtDist2.LabelWidth = 0
        self.txtDist2.Value = Distance(0, DistanceUnits.NM)
        self.txtDist2.Button = None
        p1.Add = self.txtDist2

        self.txtDist3 = DistanceBoxPanel(p1, DistanceUnits.NM)
        self.txtDist3.LabelWidth = 0
        self.txtDist3.Value = Distance(0, DistanceUnits.NM)
        self.txtDist3.Button = None
        p1.Add = self.txtDist3

        p2 = Frame(self.gbCustom, "HL")
        self.gbCustom.Add = p2

        self.txtText1 = TextBoxPanel(p2)
        self.txtText1.Caption = "Text"
        # self.txtText1.Value = "ABC"
        p2.Add = self.txtText1

        self.txtText2 = TextBoxPanel(p2)
        self.txtText2.LabelWidth = 0
        p2.Add = self.txtText2

        self.txtText3 = TextBoxPanel(p2)
        self.txtText3.LabelWidth = 0
        p2.Add = self.txtText3

        self.chbMarkDistances = QtGui.QCheckBox(self.gbConstruction)
        self.chbMarkDistances.setText("Mark Standard Distances")
        self.gbConstruction.Add = self.chbMarkDistances

        self.pnlThrDer = PositionPanel(self.gbParameters)
        self.pnlThrDer.Caption = "THR/DER Position"
        self.pnlThrDer.btnCalculater.hide()
        self.pnlThrDer.hideframe_Altitude()
        self.gbParameters.Add = self.pnlThrDer

        self.pnlOutbound = TrackRadialBoxPanel(self.gbParameters)
        self.pnlOutbound.Caption = "Outbound Track"
        self.gbParameters.Add = self.pnlOutbound

        self.pnlEtp = PositionPanel(self.gbParameters)
        self.pnlEtp.Caption = "ETP Position"
        self.pnlEtp.btnCalculater.hide()
        self.pnlEtp.hideframe_Altitude()
        self.gbParameters.Add = self.pnlEtp

        self.pnlHASP = AltitudeBoxPanel(self.gbParameters)
        self.pnlHASP.CaptionUnits = "m"
        self.pnlHASP.Value = Altitude(5)
        self.pnlHASP.Caption = "Height Above Start Point"
        self.gbParameters.Add = self.pnlHASP

        self.pnlTA = AltitudeBoxPanel(self.gbParameters)
        self.pnlTA.CaptionUnits = "m"
        self.pnlTA.Value = Altitude(300)
        self.pnlTA.Caption = "Turning Altitude"
        self.gbParameters.Add = self.pnlTA

        self.pnlClimbGradient = NumberBoxPanel(self.gbParameters)
        self.pnlClimbGradient.CaptionUnits = "%"
        self.pnlClimbGradient.Value = 3.3
        self.pnlClimbGradient.Caption = "Climb-out Gradient"
        self.gbParameters.Add = self.pnlClimbGradient

        self.chbMarkTA = QtGui.QCheckBox(self.gbParameters)
        self.chbMarkTA.setText("Mark Turning Altitude")
        self.gbParameters.Add = self.chbMarkTA

        self.chbDeparture = QtGui.QCheckBox(self.gbParameters)
        self.chbDeparture.setText("Departure")
        self.gbParameters.Add = self.chbDeparture

        self.chbPolyline = QtGui.QCheckBox(self.gbParameters)
        self.chbPolyline.setText("Draw Polyline")
        self.gbParameters.Add = self.chbPolyline

        self.pnlInput = Frame(self.gbParameters)
        self.pnlInput.Margin = 0
        self.gbParameters.Add = self.pnlInput

        self.chbUseTolerance = QtGui.QCheckBox(self.pnlInput)
        self.chbUseTolerance.setText("Use Tolerance")
        self.pnlInput.Add = self.chbUseTolerance

        pnlInput_0 = Frame(self.pnlInput, "HL")
        pnlInput_0.Margin = 0
        # pnlInput_0.layoutBoxPanel.setSpacing(100)
        self.pnlInput.Add = pnlInput_0

        self.chbWriteName = QtGui.QCheckBox(pnlInput_0)
        self.chbWriteName.setText("Write Name")
        self.chbWriteName.setMaximumWidth(200)
        self.chbWriteName.setMinimumWidth(200)
        pnlInput_0.Add = self.chbWriteName

        self.pnlTextHeight = NumberBoxPanel(pnlInput_0)
        self.pnlTextHeight.Caption = "Text Height"
        self.pnlTextHeight.LabelWidth = 100
        self.pnlTextHeight.Value = 8
        pnlInput_0.Add = self.pnlTextHeight
Beispiel #18
0
    def setupUi(self, Dialog):
        Dialog.setObjectName(_fromUtf8("Dialog"))
        Dialog.resize(548, 584)
        self.verticalLayout_8 = QtGui.QVBoxLayout(Dialog)
        self.verticalLayout_8.setObjectName(_fromUtf8("verticalLayout_8"))
        self.tabControls = QtGui.QTabWidget(Dialog)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setWeight(50)
        font.setBold(False)
        self.tabControls.setFont(font)
        self.tabControls.setAutoFillBackground(False)
        self.tabControls.setStyleSheet(_fromUtf8(""))
        self.tabControls.setObjectName(_fromUtf8("tabControls"))
        self.tab_General = QtGui.QWidget(Dialog)
        self.tab_General.setObjectName(_fromUtf8("tab_General"))
        self.horizontalLayout_29 = QtGui.QHBoxLayout(self.tab_General)
        self.horizontalLayout_29.setMargin(3)
        self.horizontalLayout_29.setObjectName(_fromUtf8("horizontalLayout_29"))
        self.frame_2 = QtGui.QFrame(self.tab_General)
        self.frame_2.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_2.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_2.setObjectName(_fromUtf8("frame_2"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.frame_2)
        self.verticalLayout_2.setSpacing(0)
        self.verticalLayout_2.setMargin(0)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.groupBox_20 = QtGui.QGroupBox(self.frame_2)
        self.groupBox_20.setObjectName(_fromUtf8("groupBox_20"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.groupBox_20)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))

        self.cmbSegmentType = ComboBoxPanel(self.groupBox_20)
        self.cmbSegmentType.Caption = "Visual Segment Type"
        self.cmbSegmentType.LabelWidth = 250
        self.verticalLayout_5.addWidget(self.cmbSegmentType)

        self.cmbDepartureType = ComboBoxPanel(self.groupBox_20)
        self.cmbDepartureType.Caption = "Departure Type"
        self.cmbDepartureType.LabelWidth = 250
        self.verticalLayout_5.addWidget(self.cmbDepartureType)

        self.txtVSDG = AngleGradientBoxPanel(self.groupBox_20)
        self.txtVSDG.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.txtVSDG.Caption = "Visual Segment Design Gradient [VSDG]"
        self.txtVSDG.LabelWidth = 250
        self.txtVSDG.Value = AngleGradientSlope(5, AngleGradientSlopeUnits.Percent)
        self.verticalLayout_5.addWidget(self.txtVSDG)

        self.txtTakeOffSurfaceTrack = TrackRadialBoxPanel(self.groupBox_20)
        self.txtTakeOffSurfaceTrack.Caption = "Out-bound Take-off Surface Track"
        self.txtTakeOffSurfaceTrack.LabelWidth = 250
        self.verticalLayout_5.addWidget(self.txtTakeOffSurfaceTrack)

        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/coordinate_capture.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)

        self.txtMOC = AltitudeBoxPanel(self.groupBox_20)
        self.txtMOC.CaptionUnits = "m"
        self.txtMOC.Caption = "MOC"
        self.txtMOC.Value = Altitude(30)
        self.txtMOC.LabelWidth = 250
        self.verticalLayout_5.addWidget(self.txtMOC)

        self.frame_Limitation = QtGui.QFrame(self.groupBox_20)
        self.frame_Limitation.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_Limitation.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_Limitation.setObjectName(_fromUtf8("frame_Limitation"))
        self.horizontalLayout_2 = QtGui.QHBoxLayout(self.frame_Limitation)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.chbLeftTurnProhibited = QtGui.QCheckBox(self.frame_Limitation)
        self.chbLeftTurnProhibited.setMinimumSize(QtCore.QSize(230, 0))
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.chbLeftTurnProhibited.setFont(font)
        self.chbLeftTurnProhibited.setObjectName(_fromUtf8("chbLeftTurnProhibited"))
        self.horizontalLayout_2.addWidget(self.chbLeftTurnProhibited)
        self.chbRightTurnProhibited = QtGui.QCheckBox(self.frame_Limitation)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.chbRightTurnProhibited.setFont(font)
        self.chbRightTurnProhibited.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.chbRightTurnProhibited.setObjectName(_fromUtf8("chbRightTurnProhibited"))
        self.horizontalLayout_2.addWidget(self.chbRightTurnProhibited)
        self.verticalLayout_5.addWidget(self.frame_Limitation)
        self.grbIDF = QtGui.QGroupBox(self.groupBox_20)
        self.grbIDF.setObjectName(_fromUtf8("grbIDF"))
        self.verticalLayout_IDF = QtGui.QVBoxLayout(self.grbIDF)
        self.verticalLayout_IDF.setObjectName(_fromUtf8("verticalLayout_IDF"))

        self.txtTrackFrom = TrackRadialBoxPanel(self.grbIDF)
        self.txtTrackFrom.Caption = "Track From"
        self.verticalLayout_IDF.addWidget(self.txtTrackFrom)

        self.verticalLayout_5.addWidget(self.grbIDF)

        self.grbHRP = QtGui.QGroupBox(self.groupBox_20)
        self.grbHRP.setObjectName(_fromUtf8("grbHRP"))
        self.verticalLayout_HRP = QtGui.QVBoxLayout(self.grbHRP)
        self.verticalLayout_HRP.setObjectName(_fromUtf8("verticalLayout_HRP"))

        self.txtHSAL = DistanceBoxPanel(self.grbHRP, DistanceUnits.M)
        self.txtHSAL.Caption = "Safety Area Length"
        self.txtHSAL.Value = Distance(30)
        self.txtHSAL.LabelWidth = 240
        self.verticalLayout_HRP.addWidget(self.txtHSAL)

        self.txtHSAW = DistanceBoxPanel(self.grbHRP, DistanceUnits.M)
        self.txtHSAW.Caption = "Safety Area Width"
        self.txtHSAW.Value = Distance(30)
        self.txtHSAW.LabelWidth = 240
        self.verticalLayout_HRP.addWidget(self.txtHSAW)

        self.verticalLayout_5.addWidget(self.grbHRP)

        self.cmbConstructionType = ComboBoxPanel(self.groupBox_20)
        self.cmbConstructionType.Caption = "Construction Type"
        self.cmbConstructionType.LabelWidth = 250
        self.verticalLayout_5.addWidget(self.cmbConstructionType)

        self.verticalLayout_2.addWidget(self.groupBox_20)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_2.addItem(spacerItem)
        self.horizontalLayout_29.addWidget(self.frame_2)
        self.frame_38 = QtGui.QFrame(self.tab_General)
        self.frame_38.setMaximumSize(QtCore.QSize(100, 16777215))
        self.frame_38.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_38.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_38.setObjectName(_fromUtf8("frame_38"))
        self.verticalLayout_7 = QtGui.QVBoxLayout(self.frame_38)
        self.verticalLayout_7.setObjectName(_fromUtf8("verticalLayout_7"))
        self.btnOpenData = QtGui.QPushButton(self.frame_38)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.btnOpenData.setFont(font)
        self.btnOpenData.setObjectName(_fromUtf8("btnOpenData"))
        self.verticalLayout_7.addWidget(self.btnOpenData)
        self.btnSaveData = QtGui.QPushButton(self.frame_38)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.btnSaveData.setFont(font)
        self.btnSaveData.setObjectName(_fromUtf8("btnSaveData"))
        self.verticalLayout_7.addWidget(self.btnSaveData)
        self.btnConstruct = QtGui.QPushButton(self.frame_38)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.btnConstruct.setFont(font)
        self.btnConstruct.setObjectName(_fromUtf8("btnConstruct"))
        self.verticalLayout_7.addWidget(self.btnConstruct)
        self.btnEvaluate = QtGui.QPushButton(self.frame_38)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.btnEvaluate.setFont(font)
        self.btnEvaluate.setObjectName(_fromUtf8("btnEvaluate"))
        self.verticalLayout_7.addWidget(self.btnEvaluate)
        self.btnUpdateQA = QtGui.QPushButton(self.frame_38)
        self.btnUpdateQA.setEnabled(False)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.btnUpdateQA.setFont(font)
        self.btnUpdateQA.setObjectName(_fromUtf8("btnUpdateQA"))
        self.verticalLayout_7.addWidget(self.btnUpdateQA)
        
        self.btnClose = QtGui.QPushButton(self.frame_38)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.btnClose.setFont(font)
        self.btnClose.setObjectName(_fromUtf8("btnClose"))
        self.verticalLayout_7.addWidget(self.btnClose)
        spacerItem1 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_7.addItem(spacerItem1)
        self.horizontalLayout_29.addWidget(self.frame_38)
        self.tabControls.addTab(self.tab_General, _fromUtf8(""))
        self.tab_Results = QtGui.QWidget(Dialog)
        self.tab_Results.setObjectName(_fromUtf8("tab_Results"))
        self.horizontalLayout_3 = QtGui.QHBoxLayout(self.tab_Results)
        self.horizontalLayout_3.setSpacing(3)
        self.horizontalLayout_3.setMargin(3)
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.frame_3 = QtGui.QFrame(self.tab_Results)
        self.frame_3.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_3.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_3.setObjectName(_fromUtf8("frame_3"))
        self.verticalLayout_6 = QtGui.QVBoxLayout(self.frame_3)
        self.verticalLayout_6.setSpacing(6)
        self.verticalLayout_6.setMargin(0)
        self.verticalLayout_6.setObjectName(_fromUtf8("verticalLayout_6"))
        self.frame_117 = QtGui.QFrame(self.frame_3)
        self.frame_117.setFrameShape(QtGui.QFrame.NoFrame)
        self.frame_117.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_117.setObjectName(_fromUtf8("frame_117"))
        self.horizontalLayout_105 = QtGui.QHBoxLayout(self.frame_117)
        self.horizontalLayout_105.setSpacing(0)
        self.horizontalLayout_105.setMargin(0)
        self.horizontalLayout_105.setObjectName(_fromUtf8("horizontalLayout_105"))
        self.label_126 = QtGui.QLabel(self.frame_117)
        self.label_126.setMinimumSize(QtCore.QSize(290, 0))
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.label_126.setFont(font)
        self.label_126.setObjectName(_fromUtf8("label_126"))
        self.horizontalLayout_105.addWidget(self.label_126)
        self.cmbSurface = QtGui.QComboBox(self.frame_117)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cmbSurface.sizePolicy().hasHeightForWidth())
        self.cmbSurface.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        font.setWeight(50)
        font.setBold(False)
        self.cmbSurface.setFont(font)
        self.cmbSurface.setObjectName(_fromUtf8("cmbSurface"))
        self.horizontalLayout_105.addWidget(self.cmbSurface)
        self.verticalLayout_6.addWidget(self.frame_117)
        self.tblObstacles = QtGui.QTableView(self.frame_3)
        font = QtGui.QFont()
        font.setFamily(_fromUtf8("Arial"))
        self.tblObstacles.setFont(font)
        self.tblObstacles.setObjectName(_fromUtf8("tblObstacles"))
        self.verticalLayout_6.addWidget(self.tblObstacles)
        self.horizontalLayout_3.addWidget(self.frame_3)
        self.frame = QtGui.QFrame(self.tab_Results)
#         self.frame.setMinimumSize(QtCore.QSize(105, 16777215))
        self.frame.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtGui.QFrame.Raised)
        self.frame.setObjectName(_fromUtf8("frame"))
        self.verticalLayout_4 = QtGui.QVBoxLayout(self.frame)
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.btnLocate = QtGui.QPushButton(self.frame)
        self.btnLocate.setEnabled(False)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.btnLocate.setFont(font)
        self.btnLocate.setObjectName(_fromUtf8("btnLocate"))
        self.verticalLayout_4.addWidget(self.btnLocate)
        self.btnUpdateQA_2 = QtGui.QPushButton(self.frame)
        self.btnUpdateQA_2.setEnabled(False)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.btnUpdateQA_2.setFont(font)
        self.btnUpdateQA_2.setObjectName(_fromUtf8("btnUpdateQA_2"))
        self.verticalLayout_4.addWidget(self.btnUpdateQA_2)
        self.btnExportResult = QtGui.QPushButton(self.frame)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.btnExportResult.setFont(font)
        self.btnExportResult.setObjectName(_fromUtf8("btnExportResult"))
        self.verticalLayout_4.addWidget(self.btnExportResult)
        self.btnClose_2 = QtGui.QPushButton(self.frame)
        font = QtGui.QFont()
        font.setWeight(50)
        font.setBold(False)
        self.btnClose_2.setFont(font)
        self.btnClose_2.setObjectName(_fromUtf8("btnClose_2"))
        self.verticalLayout_4.addWidget(self.btnClose_2)
        spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_4.addItem(spacerItem2)
        self.horizontalLayout_3.addWidget(self.frame)
        self.tabControls.addTab(self.tab_Results, _fromUtf8(""))
        self.verticalLayout_8.addWidget(self.tabControls)

        self.retranslateUi(Dialog)
        self.tabControls.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(Dialog)
        
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/openData.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnOpenData.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/saveData.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnSaveData.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/construct.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnConstruct.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/evaluate.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnEvaluate.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/close.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnClose.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/locate.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnLocate.setIcon(icon)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/pdtCheck.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
#         self.btnPDTCheck.setIcon(icon)
        icon = QtGui.QIcon()        
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/close.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnClose_2.setIcon(icon)
        icon = QtGui.QIcon()        
        icon.addPixmap(QtGui.QPixmap(_fromUtf8("Resource/btnImage/exportResult.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnExportResult.setIcon(icon)
        
        self.btnClose.setToolTip(_fromUtf8("Close"))
        self.btnClose_2.setToolTip(_fromUtf8("Close"))
        self.btnConstruct.setToolTip(_fromUtf8("Construct"))
        self.btnEvaluate.setToolTip(_fromUtf8("Evaluate"))
        self.btnLocate.setToolTip(_fromUtf8("Locate"))
        self.btnExportResult.setToolTip(_fromUtf8("Export Result"))
        self.btnOpenData.setToolTip(_fromUtf8("Open Data"))
        self.btnSaveData.setToolTip(_fromUtf8("Save Data"))
#         self.btnMarkSoc.setToolTip(_fromUtf8("Mark SOC"))

        self.btnClose.setIconSize(QtCore.QSize(32,32))
        self.btnClose_2.setIconSize(QtCore.QSize(32,32))
        self.btnConstruct.setIconSize(QtCore.QSize(32,32))
        self.btnEvaluate.setIconSize(QtCore.QSize(32,32))
        self.btnLocate.setIconSize(QtCore.QSize(32,32))
        self.btnExportResult.setIconSize(QtCore.QSize(32,32))
        self.btnOpenData.setIconSize(QtCore.QSize(32,32))
        self.btnSaveData.setIconSize(QtCore.QSize(32,32))
Beispiel #19
0
    def __init__(self, parent):
        QtGui.QDialog.__init__(self, parent)
        self.setObjectName(_fromUtf8("Dialog"))
        self.resize(200, 200)

        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)

        self.horizontalLayout_2 = QtGui.QVBoxLayout(self)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.frame_13 = QtGui.QFrame(self)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.frame_13.sizePolicy().hasHeightForWidth())
        self.frame_13.setSizePolicy(sizePolicy)
        self.frame_13.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_13.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_13.setObjectName(_fromUtf8("frame_13"))
        self.horizontalLayout_6 = QtGui.QHBoxLayout(self.frame_13)
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_6.addItem(spacerItem)
        self.frame_3 = QtGui.QFrame(self.frame_13)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.frame_3.sizePolicy().hasHeightForWidth())
        self.frame_3.setSizePolicy(sizePolicy)
        self.frame_3.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_3.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_3.setObjectName(_fromUtf8("frame_3"))
        self.verticalLayout_9 = QtGui.QVBoxLayout(self.frame_3)
        self.verticalLayout_9.setObjectName(_fromUtf8("verticalLayout_9"))

        spacerItem111 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Minimum,
                                          QtGui.QSizePolicy.Expanding)
        self.verticalLayout_9.addItem(spacerItem111)

        self.gbGradientDist = GroupBox(self.frame_3)
        self.gbGradientDist.Caption = ""
        self.verticalLayout_9.addWidget(self.gbGradientDist)

        self.pnlDescentGradient = AngleGradientBoxPanel(self.gbGradientDist)
        self.pnlDescentGradient.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlDescentGradient.Caption = "Descent gradient"
        self.pnlDescentGradient.Value = AngleGradientSlope(
            5.0, AngleGradientSlopeUnits.Percent)
        self.pnlDescentGradient.showPercentBox()
        self.gbGradientDist.Add = self.pnlDescentGradient

        self.pnlDX = DistanceBoxPanel(self.gbGradientDist, DistanceUnits.M)
        self.pnlDX.Caption = "dX(THR-DME)"
        self.gbGradientDist.Add = self.pnlDX

        self.pnlThrAlt = AltitudeBoxPanel(self.gbGradientDist)
        self.pnlThrAlt.Caption = "THR Altitude"
        self.pnlThrAlt.Value = Altitude(734.0, AltitudeUnits.FT)
        self.gbGradientDist.Add = self.pnlThrAlt

        self.pnlRDHAlt = AltitudeBoxPanel(self.gbGradientDist)
        self.pnlRDHAlt.Caption = "RDH Altitude"
        self.pnlRDHAlt.Value = Altitude(50.0, AltitudeUnits.FT)
        self.gbGradientDist.Add = self.pnlRDHAlt

        self.pnlDistance = DistanceBoxPanel(self.gbGradientDist,
                                            DistanceUnits.NM)
        self.pnlDistance.Caption = "Distance between FAF-MAPt"
        self.pnlDistance.Value = Distance(6, DistanceUnits.NM)
        self.gbGradientDist.Add = self.pnlDistance

        self.gbCatOfACFT = QtGui.QGroupBox(self.frame_3)
        self.gbCatOfACFT.setObjectName("gbCatOfACFT")
        self.verticalLayoutgbCatOfACFT = QtGui.QVBoxLayout(self.gbCatOfACFT)
        self.verticalLayoutgbCatOfACFT.setObjectName(
            "verticalLayoutgbCatOfACFT")
        self.cmbCatOfACFT = QtGui.QComboBox(self.gbCatOfACFT)
        self.cmbCatOfACFT.setObjectName("cmbCatOfACFT")
        self.verticalLayoutgbCatOfACFT.addWidget(self.cmbCatOfACFT)
        self.verticalLayout_9.addWidget(self.gbCatOfACFT)
        self.gbCatOfACFT.setTitle("Cat Of ACFT")
        self.cmbCatOfACFT.addItems([
            "A", "A, B", "A, B, C", "A, B, C, D", "A, B, C, D, DL",
            "A, B, C, D, DL, E", "A, B, C, D, E"
        ])

        self.gbTemplate = QtGui.QGroupBox(self.frame_3)
        self.gbTemplate.setObjectName("gbTemplate")
        self.verticalLayoutgbTemplate = QtGui.QVBoxLayout(self.gbTemplate)
        self.verticalLayoutgbTemplate.setObjectName(
            "self.verticalLayoutgbTemplate")
        self.cmbTemplate = QtGui.QComboBox(self.gbTemplate)
        self.cmbTemplate.setObjectName("cmbTemplate")

        self.verticalLayoutgbTemplate.addWidget(self.cmbTemplate)

        self.verticalLayout_9.addWidget(self.gbTemplate)
        self.gbTemplate.setTitle("Template")

        # self.cmbTemplate = ComboBoxPanel(self.gbTemplate)
        # self.cmbTemplate.LabelWidth = 0
        self.cmbTemplate.addItems([
            "ILS or LOC", "LOC", "VOR", "NDB", "TACAN",
            "RNP BAROVNAV, SBAS, LNAV", "RNP BAROVNAV, LNAV", "RNP SBAS, LNAV",
            "RNP LNAV", "RNP AR", "RNAV STAR", "RNAV SID", "CONV STAR",
            "CONV SID"
        ])
        # self.verticalLayoutgbTemplate.addWidget(self.cmbTemplate)

        self.gbStraightInApproach = QtGui.QGroupBox(self.frame_3)
        self.gbStraightInApproach.setObjectName("gbStraightInApproach")
        self.verticalLayoutgbStraightInApproach = QtGui.QVBoxLayout(
            self.gbStraightInApproach)
        self.verticalLayoutgbStraightInApproach.setObjectName(
            "verticalLayoutgbStraightInApproach")
        self.chbCat1 = CheckBox(self.gbStraightInApproach)
        self.chbCat1.Caption = "Cat I"
        self.verticalLayoutgbStraightInApproach.addWidget(self.chbCat1)
        self.chbCat2 = CheckBox(self.gbStraightInApproach)
        self.chbCat2.Caption = "Cat II"
        self.verticalLayoutgbStraightInApproach.addWidget(self.chbCat2)
        self.chbLOC = CheckBox(self.gbStraightInApproach)
        self.chbLOC.Caption = "LOC"
        self.verticalLayoutgbStraightInApproach.addWidget(self.chbLOC)
        self.verticalLayout_9.addWidget(self.gbStraightInApproach)
        self.gbStraightInApproach.setTitle("Straight-In Approach")

        self.frmState = QtGui.QFrame(self.frame_3)

        self.frmState.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frmState.setFrameShadow(QtGui.QFrame.Raised)
        self.frmState.setObjectName(_fromUtf8("frmState"))
        self.horizontalLayout_3 = QtGui.QHBoxLayout(self.frmState)
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.lblState = QtGui.QLabel(self.frmState)
        self.lblState.setMinimumSize(QtCore.QSize(90, 0))
        self.lblState.setMaximumSize(QtCore.QSize(90, 16777215))
        self.lblState.setObjectName(_fromUtf8("lblState"))
        self.horizontalLayout_3.addWidget(self.lblState)
        self.ddlState = QtGui.QComboBox(self.frmState)
        self.ddlState.setObjectName(_fromUtf8("ddlState"))
        self.horizontalLayout_3.addWidget(self.ddlState)
        self.verticalLayout_9.addWidget(self.frmState)
        self.frmAerodrome = QtGui.QFrame(self.frame_3)
        self.frmAerodrome.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frmAerodrome.setFrameShadow(QtGui.QFrame.Raised)
        self.frmAerodrome.setObjectName(_fromUtf8("frmAerodrome"))
        self.horizontalLayout_4 = QtGui.QHBoxLayout(self.frmAerodrome)
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.lblAerodrome = QtGui.QLabel(self.frmAerodrome)
        self.lblAerodrome.setMinimumSize(QtCore.QSize(90, 0))
        self.lblAerodrome.setMaximumSize(QtCore.QSize(90, 16777215))
        self.lblAerodrome.setObjectName(_fromUtf8("lblAerodrome"))
        self.horizontalLayout_4.addWidget(self.lblAerodrome)
        self.ddlAerodrome = QtGui.QComboBox(self.frmAerodrome)
        self.ddlAerodrome.setObjectName(_fromUtf8("ddlAerodrome"))
        self.horizontalLayout_4.addWidget(self.ddlAerodrome)
        self.verticalLayout_9.addWidget(self.frmAerodrome)
        self.frmRunway = QtGui.QFrame(self.frame_3)
        self.frmRunway.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frmRunway.setFrameShadow(QtGui.QFrame.Raised)
        self.frmRunway.setObjectName(_fromUtf8("frmRunway"))
        self.horizontalLayout_5 = QtGui.QHBoxLayout(self.frmRunway)
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.lblRunway = QtGui.QLabel(self.frmRunway)
        self.lblRunway.setMinimumSize(QtCore.QSize(90, 0))
        self.lblRunway.setMaximumSize(QtCore.QSize(90, 16777215))
        self.lblRunway.setObjectName(_fromUtf8("lblRunway"))
        self.horizontalLayout_5.addWidget(self.lblRunway)
        self.ddlRunway1 = QtGui.QComboBox(self.frmRunway)
        self.ddlRunway1.setObjectName(_fromUtf8("ddlRunway1"))
        self.horizontalLayout_5.addWidget(self.ddlRunway1)
        self.ddlRunway2 = QtGui.QComboBox(self.frmRunway)
        self.ddlRunway2.setObjectName(_fromUtf8("ddlRunway2"))
        self.horizontalLayout_5.addWidget(self.ddlRunway2)
        self.verticalLayout_9.addWidget(self.frmRunway)
        self.frmSlope = QtGui.QFrame(self.frame_3)
        self.frmSlope.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frmSlope.setFrameShadow(QtGui.QFrame.Raised)
        self.frmSlope.setObjectName(_fromUtf8("frmSlope"))
        self.horizontalLayout_7 = QtGui.QHBoxLayout(self.frmSlope)
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.lblSlope = QtGui.QLabel(self.frmSlope)
        self.lblSlope.setMinimumSize(QtCore.QSize(90, 0))
        self.lblSlope.setMaximumSize(QtCore.QSize(90, 16777215))
        self.lblSlope.setObjectName(_fromUtf8("lblSlope"))
        self.horizontalLayout_7.addWidget(self.lblSlope)
        self.ddlSlope = QtGui.QComboBox(self.frmSlope)
        self.ddlSlope.setObjectName(_fromUtf8("ddlSlope"))
        self.horizontalLayout_7.addWidget(self.ddlSlope)
        self.verticalLayout_9.addWidget(self.frmSlope)
        self.frmPrintScale = QtGui.QFrame(self.frame_3)
        self.frmPrintScale.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frmPrintScale.setFrameShadow(QtGui.QFrame.Raised)
        self.frmPrintScale.setObjectName(_fromUtf8("frmPrintScale"))
        self.horizontalLayout_8 = QtGui.QHBoxLayout(self.frmPrintScale)
        self.horizontalLayout_8.setObjectName(_fromUtf8("horizontalLayout_8"))
        self.lblPrintScale = QtGui.QLabel(self.frmPrintScale)
        self.lblPrintScale.setMinimumSize(QtCore.QSize(90, 0))
        self.lblPrintScale.setMaximumSize(QtCore.QSize(90, 16777215))
        self.lblPrintScale.setObjectName(_fromUtf8("lblPrintScale"))
        self.horizontalLayout_8.addWidget(self.lblPrintScale)
        self.txtPrintScale = QtGui.QLineEdit(self.frmPrintScale)
        self.txtPrintScale.setObjectName(_fromUtf8("txtPrintScale"))
        self.horizontalLayout_8.addWidget(self.txtPrintScale)
        self.verticalLayout_9.addWidget(self.frmPrintScale)
        self.frmFontSize = QtGui.QFrame(self.frame_3)
        self.frmFontSize.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frmFontSize.setFrameShadow(QtGui.QFrame.Raised)
        self.frmFontSize.setObjectName(_fromUtf8("frmFontSize"))
        self.horizontalLayout_9 = QtGui.QHBoxLayout(self.frmFontSize)
        self.horizontalLayout_9.setObjectName(_fromUtf8("horizontalLayout_9"))
        self.lblFontSize = QtGui.QLabel(self.frmFontSize)
        self.lblFontSize.setMinimumSize(QtCore.QSize(90, 0))
        self.lblFontSize.setMaximumSize(QtCore.QSize(90, 16777215))
        self.lblFontSize.setObjectName(_fromUtf8("lblFontSize"))
        self.horizontalLayout_9.addWidget(self.lblFontSize)
        self.txtFontSize = QtGui.QLineEdit(self.frmFontSize)
        self.txtFontSize.setObjectName(_fromUtf8("txtFontSize"))
        self.horizontalLayout_9.addWidget(self.txtFontSize)
        self.verticalLayout_9.addWidget(self.frmFontSize)
        self.gbSizes = QtGui.QGroupBox(self.frame_3)
        self.gbSizes.setObjectName(_fromUtf8("gbSizes"))
        self.verticalLayout_10 = QtGui.QVBoxLayout(self.gbSizes)
        self.verticalLayout_10.setObjectName(_fromUtf8("verticalLayout_10"))
        self.ddlPageSizes = QtGui.QComboBox(self.gbSizes)
        self.ddlPageSizes.setObjectName(_fromUtf8("ddlPageSizes"))
        self.verticalLayout_10.addWidget(self.ddlPageSizes)
        self.frame_11 = QtGui.QFrame(self.gbSizes)
        self.frame_11.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_11.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_11.setObjectName(_fromUtf8("frame_11"))
        self.horizontalLayout_10 = QtGui.QHBoxLayout(self.frame_11)
        self.horizontalLayout_10.setObjectName(
            _fromUtf8("horizontalLayout_10"))

        self.labelUnit = QtGui.QLabel(self.frame_11)
        self.labelUnit.setObjectName("labelUint")
        self.labelUnit.setText("Unit")
        self.horizontalLayout_10.addWidget(self.labelUnit)

        self.cmbUnit = QtGui.QComboBox(self.frame_11)
        self.cmbUnit.setObjectName("cmbUnit")
        self.cmbUnit.addItems(["mm", "inch"])
        self.horizontalLayout_10.addWidget(self.cmbUnit)

        self.verticalLayout_10.addWidget(self.frame_11)
        self.frmWidth = QtGui.QFrame(self.gbSizes)
        self.frmWidth.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frmWidth.setFrameShadow(QtGui.QFrame.Raised)
        self.frmWidth.setObjectName(_fromUtf8("frmWidth"))
        self.horizontalLayout_12 = QtGui.QHBoxLayout(self.frmWidth)
        self.horizontalLayout_12.setObjectName(
            _fromUtf8("horizontalLayout_12"))
        self.lblWidth = QtGui.QLabel(self.frmWidth)
        self.lblWidth.setMinimumSize(QtCore.QSize(81, 0))
        self.lblWidth.setMaximumSize(QtCore.QSize(81, 16777215))
        self.lblWidth.setObjectName(_fromUtf8("lblWidth"))
        self.horizontalLayout_12.addWidget(self.lblWidth)
        self.txtWidth = QtGui.QLineEdit(self.frmWidth)
        self.txtWidth.setObjectName(_fromUtf8("txtWidth"))
        self.horizontalLayout_12.addWidget(self.txtWidth)
        self.verticalLayout_10.addWidget(self.frmWidth)
        self.frmHeight = QtGui.QFrame(self.gbSizes)
        self.frmHeight.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frmHeight.setFrameShadow(QtGui.QFrame.Raised)
        self.frmHeight.setObjectName(_fromUtf8("frmHeight"))
        self.horizontalLayout_13 = QtGui.QHBoxLayout(self.frmHeight)
        self.horizontalLayout_13.setObjectName(
            _fromUtf8("horizontalLayout_13"))
        self.lblHeight = QtGui.QLabel(self.frmHeight)
        self.lblHeight.setMinimumSize(QtCore.QSize(81, 0))
        self.lblHeight.setMaximumSize(QtCore.QSize(81, 16777215))
        self.lblHeight.setObjectName(_fromUtf8("lblHeight"))
        self.horizontalLayout_13.addWidget(self.lblHeight)
        self.txtHeight = QtGui.QLineEdit(self.frmHeight)
        self.txtHeight.setObjectName(_fromUtf8("txtHeight"))
        self.horizontalLayout_13.addWidget(self.txtHeight)
        self.verticalLayout_10.addWidget(self.frmHeight)
        self.verticalLayout_9.addWidget(self.gbSizes)
        self.gbPageOrientation = QtGui.QGroupBox(self.frame_3)
        self.gbPageOrientation.setObjectName(_fromUtf8("gbPageOrientation"))
        self.horizontalLayout_14 = QtGui.QHBoxLayout(self.gbPageOrientation)
        self.horizontalLayout_14.setObjectName(
            _fromUtf8("horizontalLayout_14"))

        # self.labelPageOrientation = QtGui.QLabel(self.gbPageOrientation)
        # self.labelPageOrientation.setObjectName("labelPageOrientation")
        # self.labelPageOrientation.setText("Page Orientation")
        # self.horizontalLayout_14.addWidget(self.labelPageOrientation)

        self.cmbPageOrientation = QtGui.QComboBox(self.gbPageOrientation)
        self.cmbPageOrientation.setObjectName("cmbPageOrientation")
        self.cmbPageOrientation.addItems(["Portrait", "Landscape"])
        self.horizontalLayout_14.addWidget(self.cmbPageOrientation)

        # self.rbtLandscape = QtGui.QRadioButton(self.gbPageOrientation)
        # self.rbtLandscape.setObjectName(_fromUtf8("radioButton"))
        # self.horizontalLayout_14.addWidget(self.rbtLandscape)
        # self.rbtPortrait = QtGui.QRadioButton(self.gbPageOrientation)
        # self.rbtPortrait.setChecked(True)
        # self.rbtPortrait.setObjectName(_fromUtf8("rblLandscape"))
        # self.horizontalLayout_14.addWidget(self.rbtPortrait)
        self.verticalLayout_9.addWidget(self.gbPageOrientation)
        self.horizontalLayout_6.addWidget(self.frame_3)
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_6.addItem(spacerItem1)
        self.horizontalLayout_2.addWidget(self.frame_13)

        self.frame = QtGui.QFrame(self)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.frame.sizePolicy().hasHeightForWidth())
        self.frame.setSizePolicy(sizePolicy)
        self.frame.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtGui.QFrame.Raised)
        self.frame.setObjectName(_fromUtf8("frame"))
        self.horizontalLayout = QtGui.QHBoxLayout(self.frame)
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        spacerItem15 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                         QtGui.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem15)
        self.btnPrevious = QtGui.QPushButton(self.frame)
        self.btnPrevious.setObjectName(_fromUtf8("btnPrevious"))
        self.horizontalLayout.addWidget(self.btnPrevious)
        self.btnNext = QtGui.QPushButton(self.frame)
        self.btnNext.setObjectName(_fromUtf8("btnNext"))
        self.horizontalLayout.addWidget(self.btnNext)
        self.btnExit = QtGui.QPushButton(self.frame)
        self.btnExit.setObjectName(_fromUtf8("btnExit"))
        self.horizontalLayout.addWidget(self.btnExit)
        spacerItem16 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                         QtGui.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem16)
        self.horizontalLayout_2.addWidget(self.frame)

        self.frmState.setVisible(False)
        self.frmAerodrome.setVisible(False)
        self.frmRunway.setVisible(False)
        self.frmSlope.setVisible(False)
        self.ddlPageSizes.setVisible(False)

        self.txtPrintScale.setText("10")
        self.txtFontSize.setText("10")
        self.txtWidth.setText("210")
        self.txtHeight.setText("290")

        # self.rbtnmm.setChecked(True)
        self.retranslateUi()
        # self.stackedWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(self)
        self.btnPrevious.setEnabled(False)
        self.btnNext.clicked.connect(self.btnNext_clicked)
        self.btnExit.setVisible(False)

        self.gbStraightInApproach.setVisible(
            self.cmbCatOfACFT.currentIndex() == 0)

        self.cmbUnit.currentIndexChanged.connect(self.paperResize)
        self.txtHeight.textChanged.connect(self.pageOrientationChange)
        self.txtWidth.textChanged.connect(self.pageOrientationChange)

        self.cmbTemplate.currentIndexChanged.connect(
            self.cmbCatOfACFT_currentIndexChanged)
        self.cmbTemplate.activated.connect(self.cmbCatOfACFT_activated)
        self.cmbCatOfACFT.currentIndexChanged.connect(
            self.cmbCatOfACFT_currentIndexChanged)

        self.connect(self.chbCat1, QtCore.SIGNAL("Event_0"),
                     self.chbCat1_clicked)
        self.connect(self.chbCat2, QtCore.SIGNAL("Event_0"),
                     self.chbCat2_clicked)
        self.connect(self.chbLOC, QtCore.SIGNAL("Event_0"),
                     self.chbLOC_clicked)

        # self.cmbPageOrientation.currentIndexChanged.connect(self.widthHeighChange)
        self.dlg = None
        self.straightCount = 3
        self.catOfAcftCount = 1
    def setupUi(self, Form):
        Form.setObjectName(("Form"))
        Form.resize(473, 580)
        font = QtGui.QFont()
        font.setFamily(("Arial"))
        font.setBold(False)
        font.setWeight(50)
        Form.setFont(font)

        self.vlForm = QtGui.QVBoxLayout(Form)
        self.vlForm.setObjectName(("vlForm"))
        self.vlForm.setSpacing(0)
        self.vlForm.setMargin(0)

        self.gbParameters = GroupBox(Form)
        self.gbParameters.Caption = "Parameters"
        self.vlForm.addWidget(self.gbParameters)

        self.pnlNavType = ComboBoxPanel(self.gbParameters)
        self.pnlNavType.Caption = "Navigation Type"
        self.pnlNavType.LabelWidth = 120
        self.gbParameters.Add = self.pnlNavType

        self.gbNavAid = GroupBox(Form)
        self.gbNavAid.Caption = "Navigational Aid"
        self.gbParameters.Add = self.gbNavAid

        self.pnlRunwayGroup = Frame(self.gbNavAid, "HL")
        self.gbNavAid.Add = self.pnlRunwayGroup

        self.pnlNavAid = ComboBoxPanel(self.pnlRunwayGroup, False, True)
        self.pnlNavAid.Caption = ""
        self.pnlNavAid.LabelWidth = 0
        self.pnlRunwayGroup.Add = self.pnlNavAid

        self.btnNavAidAdd = QtGui.QPushButton(self.pnlRunwayGroup)
        self.btnNavAidAdd.setObjectName("btnNavAidAdd")
        self.btnNavAidAdd.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("Resource/add.png"), QtGui.QIcon.Normal,
                       QtGui.QIcon.Off)
        self.btnNavAidAdd.setIcon(icon)
        self.pnlRunwayGroup.Add = self.btnNavAidAdd

        self.btnNavAidModify = QtGui.QPushButton(self.pnlRunwayGroup)
        self.btnNavAidModify.setObjectName("btnNavAidModify")
        self.btnNavAidModify.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("Resource/mIconEditableEdits.png"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnNavAidModify.setIcon(icon)
        self.pnlRunwayGroup.Add = self.btnNavAidModify

        self.btnNavAidRemove = QtGui.QPushButton(self.pnlRunwayGroup)
        self.btnNavAidRemove.setObjectName("btnNavAidRemove")
        self.btnNavAidRemove.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("Resource/remove.png"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnNavAidRemove.setIcon(icon)
        self.pnlRunwayGroup.Add = self.btnNavAidRemove

        self.pnlNavAidPos = PositionPanel(self.gbNavAid)
        self.pnlNavAidPos.Caption = "Position"
        self.pnlNavAidPos.btnCalculater.setVisible(False)
        self.gbNavAid.Add = self.pnlNavAidPos

        self.gbWaypoint1 = GroupBox(self.gbParameters)
        self.gbWaypoint1.Caption = "Waypoint 1"
        self.gbParameters.Add = self.gbWaypoint1

        self.pnlWaypoint1 = PositionPanel(self.gbWaypoint1)
        self.pnlWaypoint1.Caption = ""
        self.pnlWaypoint1.btnCalculater.setVisible(False)
        self.pnlWaypoint1.hideframe_Altitude()
        self.gbWaypoint1.Add = self.pnlWaypoint1

        self.chbTurningWaypoint1 = CheckBox(self.gbWaypoint1)
        self.chbTurningWaypoint1.Caption = "Turning Waypoint"
        self.gbWaypoint1.Add = self.chbTurningWaypoint1

        self.gbWaypoint2 = GroupBox(self.gbParameters)
        self.gbWaypoint2.Caption = "Waypoint 2"
        self.gbParameters.Add = self.gbWaypoint2

        self.pnlWaypoint2 = PositionPanel(self.gbWaypoint2)
        self.pnlWaypoint2.Caption = ""
        self.pnlWaypoint2.btnCalculater.setVisible(False)
        self.pnlWaypoint2.hideframe_Altitude()
        self.gbWaypoint2.Add = self.pnlWaypoint2

        self.chbTurningWaypoint2 = CheckBox(self.gbWaypoint2)
        self.chbTurningWaypoint2.Caption = "Turning Waypoint"
        self.gbWaypoint2.Add = self.chbTurningWaypoint2

        self.pnlTrack = TrackRadialBoxPanel(self.gbParameters)
        self.pnlTrack.Caption = "Track"
        self.pnlTrack.LabelWidth = 150
        self.gbParameters.Add = self.pnlTrack

        self.pnlDistToThr = DistanceBoxPanel(self.gbParameters,
                                             DistanceUnits.M)
        self.pnlDistToThr.Caption = "Distance to Threshold"
        self.pnlDistToThr.LabelWidth = 150
        self.gbParameters.Add = self.pnlDistToThr

        self.pnlMinimumAltitude = AltitudeBoxPanel(self.gbParameters)
        self.pnlMinimumAltitude.CaptionUnits = "ft"
        self.pnlMinimumAltitude.Caption = "Minimum Altitude"
        self.pnlMinimumAltitude.Value = Altitude(2000, AltitudeUnits.FT)
        self.pnlMinimumAltitude.LabelWidth = 150
        self.gbParameters.Add = self.pnlMinimumAltitude

        self.pnlSegmentWidth = DistanceBoxPanel(self.gbParameters,
                                                DistanceUnits.NM)
        self.pnlSegmentWidth.Caption = "Segment Width"
        self.pnlSegmentWidth.LabelWidth = 150
        self.pnlSegmentWidth.Value = Distance(5, DistanceUnits.NM)
        self.gbParameters.Add = self.pnlSegmentWidth

        self.chbEarthCurvature = CheckBox(self.gbParameters)
        self.chbEarthCurvature.Caption = "Allow for Earth Curvature"
        self.gbParameters.Add = self.chbEarthCurvature

        self.gbConstruction = GroupBox(Form)
        self.gbConstruction.Caption = "Construction"
        self.vlForm.addWidget(self.gbConstruction)

        self.pnlConstructionType = ComboBoxPanel(self.gbConstruction)
        self.pnlConstructionType.Caption = "Construction Type"
        self.pnlConstructionType.LabelWidth = 150
        self.gbConstruction.Add = self.pnlConstructionType

        self.pnlMarkAltitudes = Frame(self.gbConstruction, "HL")
        self.gbConstruction.Add = self.pnlMarkAltitudes

        self.chbMarkAltitudes = CheckBox(self.pnlMarkAltitudes)
        self.chbMarkAltitudes.Caption = "Mark Contour Altitudes"
        self.chbMarkAltitudes.setMinimumSize(QSize(150, 0))
        self.chbMarkAltitudes.setMaximumSize(QSize(150, 16777215))
        self.pnlMarkAltitudes.Add = self.chbMarkAltitudes

        self.pnlMarkAltitudesIn = Frame(self.pnlMarkAltitudes)
        self.pnlMarkAltitudes.Add = self.pnlMarkAltitudesIn

        self.pnlAltitudesEvery = AltitudeBoxPanel(self.pnlMarkAltitudesIn)
        self.pnlAltitudesEvery.CaptionUnits = "m"
        self.pnlAltitudesEvery.Caption = "Every"
        self.pnlAltitudesEvery.Value = Altitude(5)
        # self.pnlAltitudesEvery.LabelWidth = 60
        self.pnlMarkAltitudesIn.Add = self.pnlAltitudesEvery

        self.pnlAltitudesTextHeight = NumberBoxPanel(self.pnlMarkAltitudesIn)
        self.pnlAltitudesTextHeight.Caption = "Text Height"
        self.pnlAltitudesTextHeight.Value = 5
        # self.pnlAltitudesTextHeight.LabelWidth = 60
        self.pnlMarkAltitudesIn.Add = self.pnlAltitudesTextHeight

        self.pnl3DQuality = Frame(self.gbConstruction, "HL")
        self.gbConstruction.Add = self.pnl3DQuality

        self.lbl3DQuality = QtGui.QLabel(self.pnl3DQuality)
        self.lbl3DQuality.setObjectName("lbl3DQuality")
        self.lbl3DQuality.setText("Rendering Quality:")
        self.lbl3DQuality.setMinimumSize(QSize(150, 0))
        self.lbl3DQuality.setMaximumSize(QSize(150, 16777215))
        self.pnl3DQuality.Add = self.lbl3DQuality

        self.pnlTrackbar = Frame(self.pnl3DQuality, "HL")
        self.pnl3DQuality.Add = self.pnlTrackbar

        self.lblCoarse = QtGui.QLabel(self.pnlTrackbar)
        self.lblCoarse.setObjectName("lblCoarse")
        self.lblCoarse.setText("Coarse")
        self.pnlTrackbar.Add = self.lblCoarse

        self.trackBar = QtGui.QSlider(self.pnlTrackbar)
        self.trackBar.setObjectName("trackBar")
        self.trackBar.setOrientation(Qt.Horizontal)
        self.trackBar.setMinimum(10)
        self.trackBar.setMaximum(200)
        # self.trackBar.setSingleStep(10)
        self.trackBar.setValue(20)
        self.pnlTrackbar.Add = self.trackBar

        self.lblSmooth = QtGui.QLabel(self.pnlTrackbar)
        self.lblSmooth.setObjectName("lblSmooth")
        self.lblSmooth.setText("Smooth")
        self.pnlTrackbar.Add = self.lblSmooth
Beispiel #21
0
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(473, 580)
        font = QtGui.QFont()
        font.setFamily("Arial")
        font.setBold(False)
        font.setWeight(50)
        Form.setFont(font)
        self.vlForm = QtGui.QVBoxLayout(Form)
        self.vlForm.setObjectName(("vlForm"))

        self.gbApproachSegmentType = GroupBox(Form)
        self.gbApproachSegmentType.Caption = "Approach Segment Type"
        self.vlForm.addWidget(self.gbApproachSegmentType)

        self.txtApproachSegmentType = TextBoxPanel(self.gbApproachSegmentType)
        self.txtApproachSegmentType.Caption = "Type"
        self.txtApproachSegmentType.textBox.setEnabled(False)
        self.txtApproachSegmentType.Button = "sort2.png"
        self.txtApproachSegmentType.Value = "Final Segment"
        self.txtApproachSegmentType.textBox.setMaximumWidth(10000000)
        self.txtApproachSegmentType.hLayoutBoxPanel.removeItem(
            self.txtApproachSegmentType.spacerItem)
        QtCore.QObject.connect(self.txtApproachSegmentType,
                               QtCore.SIGNAL("Event_1"),
                               self.txtApproachSegmentType_Event_1)
        self.gbApproachSegmentType.Add = self.txtApproachSegmentType

        self.gbPosition = GroupBox(Form)
        self.gbPosition.Caption = "Positions"
        self.gbPosition.layoutBoxPanel.setSpacing(9)
        self.vlForm.addWidget(self.gbPosition)

        self.gbNavAid = GroupBox(self.gbPosition)
        self.gbNavAid.Caption = "Navigational Aid"
        self.gbPosition.Add = self.gbNavAid

        self.cmbNavAidType = ComboBoxPanel(self.gbNavAid)
        self.cmbNavAidType.Caption = "Type"
        self.cmbNavAidType.Items = ["NDB", "VOR"]
        self.cmbNavAidType.LabelWidth = 120
        self.gbNavAid.Add = self.cmbNavAidType

        self.cmbBasedOn = ComboBoxPanel(self.gbNavAid, True)
        self.cmbBasedOn.Caption = "Based On"
        self.cmbBasedOn.LabelWidth = 120
        self.cmbBasedOn.Width = 120
        self.gbNavAid.Add = self.cmbBasedOn

        self.pnlNavAidPos = PositionPanel(self.gbNavAid)
        self.pnlNavAidPos.btnCalculater.hide()
        self.pnlNavAidPos.hideframe_Altitude()
        self.gbNavAid.Add = self.pnlNavAidPos

        self.pnlFafPos = PositionPanel(self.gbPosition)
        self.pnlFafPos.Caption = "FAF Position"
        self.pnlFafPos.btnCalculater.hide()
        self.gbPosition.Add = self.pnlFafPos

        self.pnlMaptPos = PositionPanel(self.gbPosition)
        self.pnlMaptPos.Caption = "MAPt Position"
        self.pnlMaptPos.btnCalculater.hide()
        self.gbPosition.Add = self.pnlMaptPos

        self.pnlDerPos = PositionPanel(self.gbPosition)
        self.pnlDerPos.Caption = "Approach THR Position"
        self.pnlDerPos.btnCalculater.hide()
        self.gbPosition.Add = self.pnlDerPos

        self.gbParameters = GroupBox(Form)
        self.gbParameters.Caption = "Parameters"
        self.gbParameters.layoutBoxPanel.setSpacing(9)
        self.vlForm.addWidget(self.gbParameters)

        self.cmbTurnDirection = ComboBoxPanel(self.gbParameters)
        self.cmbTurnDirection.Caption = "Turn Direction"
        self.cmbTurnDirection.Items = ["Left", "Right"]
        self.gbParameters.Add = self.cmbTurnDirection

        self.cmbAircraftCatgory = ComboBoxPanel(self.gbParameters)
        self.cmbAircraftCatgory.Caption = "Aircraft Category"
        self.cmbAircraftCatgory.Items = ["A/B", "C/D/E", "H"]
        self.gbParameters.Add = self.cmbAircraftCatgory

        self.gbJoin = GroupBox(self.gbParameters, "HL")
        self.gbJoin.Caption = "Join the intermediate segment"
        self.gbParameters.Add = self.gbJoin

        self.radioJoinYes = QtGui.QRadioButton(self.gbJoin)
        self.radioJoinYes.setText("Yes")
        self.radioJoinYes.setChecked(True)
        self.gbJoin.Add = self.radioJoinYes

        self.radioJoinNo = QtGui.QRadioButton(self.gbJoin)
        self.radioJoinNo.setText("No")
        self.gbJoin.Add = self.radioJoinNo

        self.pnlDistance = DistanceBoxPanel(self.gbParameters,
                                            DistanceUnits.NM)
        self.pnlDistance.Caption = "Distance FAF - MAPt"
        self.pnlDistance.Button = None
        self.gbParameters.Add = self.pnlDistance

        self.pnlGradient = AngleGradientBoxPanel(self.gbParameters)
        self.pnlGradient.CaptionUnits = AngleGradientSlopeUnits.Percent
        self.pnlGradient.Caption = "Descent Gradient"
        self.gbParameters.Add = self.pnlGradient

        self.approachMenu = QtGui.QMenu()

        self.finalCmd = QgisHelper.createAction(self.approachMenu,
                                                "Final Segment",
                                                self.menuFinalClick)
        self.approachMenu.addAction(self.finalCmd)

        self.intermediateMnu = QtGui.QMenu("Intermediate Approach Segment")
        self.approachMenu.addMenu(self.intermediateMnu)

        self.interStraightCmd = QgisHelper.createAction(
            self.intermediateMnu, "Intermediate Segment Straight",
            self.menuInterStrightClick)
        self.intermediateMnu.addAction(self.interStraightCmd)

        self.interWithIFCmd = QgisHelper.createAction(
            self.intermediateMnu, "Intermediate Segment With IF",
            self.menuInterWithIFClick)
        self.intermediateMnu.addAction(self.interWithIFCmd)

        self.interWithNoIFCmd = QgisHelper.createAction(
            self.intermediateMnu, "Intermediate Segment With No IF",
            self.menuInterWithNoIFClick)
        self.intermediateMnu.addAction(self.interWithNoIFCmd)

        self.initialMnu = QtGui.QMenu("Initial Approach Segment")
        self.approachMenu.addMenu(self.initialMnu)

        self.initialStraigtCmd = QgisHelper.createAction(
            self.initialMnu, "Initial Segment Straight",
            self.menuInitialStrightClick)
        self.initialMnu.addAction(self.initialStraigtCmd)

        self.initialDMEArcCmd = QgisHelper.createAction(
            self.initialMnu, "Initial Segment DME ARCS",
            self.menuInitialDMEArcClick)
        self.initialMnu.addAction(self.initialDMEArcCmd)
    def setupUi(self, Form):
        Form.setObjectName(("Form"))
        Form.resize(473, 580)
        font = QtGui.QFont()
        font.setFamily(("Arial"))
        font.setBold(False)
        font.setWeight(50)
        Form.setFont(font)

        self.vlForm = QtGui.QVBoxLayout(Form)
        self.vlForm.setObjectName(("vlForm"))
        self.vlForm.setSpacing(0)
        self.vlForm.setMargin(0)

        self.gbParameters = GroupBox(Form)
        self.gbParameters.Caption = "Parameters"
        self.vlForm.addWidget(self.gbParameters)

        self.chbDrawRectangle = CheckBox(self.gbParameters)
        self.chbDrawRectangle.Caption = "Draw Rectangle"
        # self.chbDrawRectangle.Visible = False
        self.gbParameters.Add = self.chbDrawRectangle

        self.pnlMinorLinesTickLength = DistanceBoxPanel(
            self.gbParameters, DistanceUnits.M)
        self.pnlMinorLinesTickLength.Caption = "Minor Lines Tick Length"
        # self.pnlMinorLinesTickLength.Visible = False
        self.gbParameters.Add = self.pnlMinorLinesTickLength

        self.pnlMinorLines = Frame(self.gbParameters, "HL")
        # self.pnlMinorLines.Visible = False
        self.gbParameters.Add = self.pnlMinorLines

        self.cmbMinorLines = ComboBoxPanel(self.pnlMinorLines)
        self.cmbMinorLines.Caption = "Minor Lines"
        self.pnlMinorLines.Add = self.cmbMinorLines

        self.txtMinorLinesEvery = NumberBoxPanel(self.pnlMinorLines, "0.0")
        self.txtMinorLinesEvery.LabelWidth = 0
        self.txtMinorLinesEvery.Value = 1
        self.pnlMinorLines.Add = self.txtMinorLinesEvery

        self.pnlIntermediateLinesTickLength = DistanceBoxPanel(
            self.gbParameters, DistanceUnits.M)
        self.pnlIntermediateLinesTickLength.Caption = "Intermediate Lines Tick Length"
        # self.pnlIntermediateLinesTickLength.Visible = False
        self.gbParameters.Add = self.pnlIntermediateLinesTickLength

        self.pnlIntermediateLines = Frame(self.gbParameters, "HL")
        # self.pnlIntermediateLines.Visible = False
        self.gbParameters.Add = self.pnlIntermediateLines

        self.cmbIntermediateLines = ComboBoxPanel(self.pnlIntermediateLines)
        self.cmbIntermediateLines.Caption = "Intermediate Lines"
        self.pnlIntermediateLines.Add = self.cmbIntermediateLines

        self.txtIntermediateLinesEvery = NumberBoxPanel(
            self.pnlIntermediateLines, "0.0")
        self.txtIntermediateLinesEvery.LabelWidth = 0
        self.txtIntermediateLinesEvery.Value = 5
        self.pnlIntermediateLines.Add = self.txtIntermediateLinesEvery

        self.pnlMajorLinesTickLength = DistanceBoxPanel(
            self.gbParameters, DistanceUnits.M)
        self.pnlMajorLinesTickLength.Caption = "Major Lines Tick Length"
        self.gbParameters.Add = self.pnlMajorLinesTickLength

        self.pnlMajorLines = Frame(self.gbParameters, "HL")
        # self.pnlMajorLines.Visible = False
        self.gbParameters.Add = self.pnlMajorLines

        self.cmbMajorLines = ComboBoxPanel(self.pnlMajorLines)
        self.cmbMajorLines.Caption = "Major Lines"
        self.pnlMajorLines.Add = self.cmbMajorLines

        self.txtMajorLinesEvery = NumberBoxPanel(self.pnlMajorLines, "0.0")
        self.txtMajorLinesEvery.LabelWidth = 0
        self.txtMajorLinesEvery.Value = 10
        self.pnlMajorLines.Add = self.txtMajorLinesEvery

        self.pnlLonFormat = ComboBoxPanel(self.gbParameters)
        self.pnlLonFormat.Caption = "Longitude Text Format"
        self.gbParameters.Add = self.pnlLonFormat

        self.pnlLatFormat = Frame(self.gbParameters, "HL")
        self.gbParameters.Add = self.pnlLatFormat

        self.cmbLatFormat = ComboBoxPanel(self.pnlLatFormat)
        self.cmbLatFormat.Caption = "Latitude Text Format"
        self.pnlLatFormat.Add = self.cmbLatFormat

        self.chbMultiline = CheckBox(self.pnlLatFormat)
        self.chbMultiline.Caption = "Multiline"
        self.pnlLatFormat.Add = self.chbMultiline

        self.pnlTextHeight = NumberBoxPanel(self.gbParameters, "0")
        self.pnlTextHeight.Caption = "Text Height"
        self.pnlTextHeight.Value = 6
        self.gbParameters.Add = self.pnlTextHeight

        self.pnlMapScale = MapScalePanel(self.gbParameters,
                                         MapScaleDropDownType.All)
        self.pnlMapScale.Caption = "Eventual Map Scale"
        self.gbParameters.Add = self.pnlMapScale

        self.gbArea = GroupBox(Form, "HL")
        self.gbArea.Caption = "Rectangular Grid Area"
        self.vlForm.addWidget(self.gbArea)

        self.frameAreaPosition = Frame(self.gbArea)
        self.gbArea.Add = self.frameAreaPosition

        self.pnlUR = PositionPanel(self.frameAreaPosition, None, None,
                                   "Degree")
        self.pnlUR.Caption = "Upper Right Corner"
        self.pnlUR.hideframe_Altitude()
        self.pnlUR.btnCalculater.setVisible(False)
        self.pnlUR.btnCapture.setVisible(False)
        self.pnlUR.groupBox.setEnabled(False)
        self.frameAreaPosition.Add = self.pnlUR

        self.pnlLL = PositionPanel(self.frameAreaPosition, None, None,
                                   "Degree")
        self.pnlLL.Caption = "Lower Left Corner"
        self.pnlLL.hideframe_Altitude()
        self.pnlLL.btnCalculater.setVisible(False)
        self.pnlLL.btnCapture.setVisible(False)
        self.pnlLL.groupBox.setEnabled(False)
        self.frameAreaPosition.Add = self.pnlLL

        self.btnPickArea = QtGui.QPushButton(self.gbArea)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.btnPickArea.sizePolicy().hasHeightForWidth())
        self.btnPickArea.setSizePolicy(sizePolicy)
        self.btnPickArea.setMinimumSize(QtCore.QSize(25, 0))
        self.btnPickArea.setMaximumSize(QtCore.QSize(25, 16777215))
        self.btnPickArea.setText((""))
        self.btnPickArea.setObjectName("btnCapture")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(("Resource/coordinate_capture.png")),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.btnPickArea.setIcon(icon)
        self.gbArea.Add = self.btnPickArea
    def __init__(self, parent=None):
        QDialog.__init__(self, parent)

        self.resize(290, 136)
        self.setWindowTitle("Runway Setup")
        sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)
        verticalLayoutDlg = QVBoxLayout(self)
        verticalLayoutDlg.setObjectName(("verticalLayoutDlg"))

        self.basicFrame = Frame(self)
        verticalLayoutDlg.addWidget(self.basicFrame)

        self.groupBox = GroupBox(self.basicFrame)
        self.basicFrame.Add = self.groupBox

        self.pnlName = TextBoxPanel(self.groupBox)
        self.pnlName.Caption = "Name"
        self.pnlName.LabelWidth = 70
        self.groupBox.Add = self.pnlName

        self.pnlDesignatorFrame = Frame(self.groupBox, "HL")
        self.groupBox.Add = self.pnlDesignatorFrame

        self.pnlDesignator = TextBoxPanel(self.groupBox)
        self.pnlDesignator.Caption = "Designator"
        self.pnlDesignator.LabelWidth = 70
        self.pnlDesignator.Button = "Calculator.bmp"
        self.pnlDesignatorFrame.Add = self.pnlDesignator

        self.cmbDesignator = ComboBoxPanel(self.groupBox)
        self.cmbDesignator.Caption = ""
        self.cmbDesignator.LabelWidth = 0
        self.cmbDesignator.Items = ["", "L", "C", "R"]
        self.pnlDesignatorFrame.Add = self.cmbDesignator

        self.gbPositions = GroupBox(self.groupBox)
        self.gbPositions.Caption = "Positions"
        self.groupBox.Add = self.gbPositions

        self.pnlPosition = PositionPanel(self.gbPositions)
        # self.pnlPosition.hideframe_Altitude()
        self.pnlPosition.btnCalculater.setVisible(False)
        self.gbPositions.Add = self.pnlPosition

        self.pnlTree = Frame(self.gbPositions)
        self.gbPositions.Add = self.pnlTree

        self.trvPositions = TreeView(self.pnlTree)
        self.pnlTree.Add = self.trvPositions

        self.pnlButtons = Frame(self.pnlTree, "HL")
        self.pnlTree.Add = self.pnlButtons

        self.btnPrevious = QPushButton(self.pnlButtons)
        self.btnPrevious.setObjectName("btnPrevious")
        self.btnPrevious.setText("")
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/btnImage/Prev_32x32.png"),
                       QIcon.Normal, QIcon.Off)
        self.btnPrevious.setIcon(icon)
        self.pnlButtons.Add = self.btnPrevious

        self.btnInsert = QPushButton(self.pnlButtons)
        self.btnInsert.setObjectName("btnInsert")
        self.btnInsert.setText("")
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/add.png"), QIcon.Normal, QIcon.Off)
        self.btnInsert.setIcon(icon)
        self.pnlButtons.Add = self.btnInsert

        self.btnRemove = QPushButton(self.pnlButtons)
        self.btnRemove.setObjectName("btnRemove")
        self.btnRemove.setText("")
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/remove.png"), QIcon.Normal, QIcon.Off)
        self.btnRemove.setIcon(icon)
        self.pnlButtons.Add = self.btnRemove

        self.btnNext = QPushButton(self.pnlButtons)
        self.btnNext.setObjectName("btnNext")
        self.btnNext.setText("")
        icon = QIcon()
        icon.addPixmap(QPixmap("Resource/btnImage/Next_32x32.png"),
                       QIcon.Normal, QIcon.Off)
        self.btnNext.setIcon(icon)
        self.pnlButtons.Add = self.btnNext

        self.pnlSafetyAreaWidth = DistanceBoxPanel(self.groupBox,
                                                   DistanceUnits.M)
        self.pnlSafetyAreaWidth.Caption = "Safety Area Width"
        self.pnlSafetyAreaWidth.LabelWidth = 250
        self.groupBox.Add = self.pnlSafetyAreaWidth

        self.pnlSafetyAreaStart = DistanceBoxPanel(self.groupBox,
                                                   DistanceUnits.M)
        self.pnlSafetyAreaStart.Caption = "Safety Area Length [START -> boundary]"
        self.pnlSafetyAreaStart.LabelWidth = 250
        self.groupBox.Add = self.pnlSafetyAreaStart

        self.pnlSafetyAreaEnd = DistanceBoxPanel(self.groupBox,
                                                 DistanceUnits.M)
        self.pnlSafetyAreaEnd.Caption = "Safety Area Length [END -> boundary]"
        self.pnlSafetyAreaEnd.LabelWidth = 250
        self.groupBox.Add = self.pnlSafetyAreaEnd

        self.btnBoxOkCancel = QDialogButtonBox(self)
        self.btnBoxOkCancel.setObjectName(("btnBoxOkCancel"))
        self.btnBoxOkCancel.setStandardButtons(QDialogButtonBox.Cancel
                                               | QDialogButtonBox.Ok)

        self.btnOK = self.btnBoxOkCancel.button(QDialogButtonBox.Ok)

        self.connect(self.btnBoxOkCancel, SIGNAL("accepted()"), self.acceptDlg)
        self.connect(self.btnBoxOkCancel, SIGNAL("rejected()"), self.reject)

        verticalLayoutDlg.addWidget(self.btnBoxOkCancel)

        self.btnOK.setText("Save")
        self.connect(self.pnlDesignator, SIGNAL("Event_1"), self.method_15)

        self.connect(self.pnlPosition, SIGNAL("captureFinished"),
                     self.method_14)
        self.btnInsert.clicked.connect(self.btnInsert_Click)
        self.btnNext.clicked.connect(self.btnNext_Click)
        self.btnPrevious.clicked.connect(self.btnPrevious_Click)
        self.btnRemove.clicked.connect(self.btnRemove_Click)

        self.trvPositions.clicked.connect(self.trvPositions_clicked)