Пример #1
0
    def make_page(self):
        # make the edit line
        page = QFrame()
        layout = QVBoxLayout()
        page.setLayout(layout)

        line1 = QFrame()
        layout1 = QHBoxLayout()
        line1.setLayout(layout1)
        layout.addWidget(line1)

        layout1.addWidget(QLabel("<b>W x H:</b> "))

        self.edit_width = QLineEdit()
        self.edit_width.setFixedWidth(50)
        self.edit_width.textChanged.connect(self.onChange)
        layout1.addWidget(self.edit_width)

        self.edit_height = QLineEdit()
        self.edit_height.setFixedWidth(50)
        self.edit_height.textChanged.connect(self.onChange)
        layout1.addWidget(self.edit_height)

        self.edit_shape = QComboBoxNoWheel()
        self.edit_shape.addItem("Flat Triangle")
        self.edit_shape.addItem("Symmetrical")
        self.edit_shape.addItem("Bottom Sheet")
        self.edit_shape.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_shape)

        self.edit_start = QComboBoxNoWheel()
        self.edit_start.addItem("-")
        self.edit_start.addItem("1")
        self.edit_start.addItem("2")
        self.edit_start.addItem("3")
        self.edit_start.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_start)

        self.edit_end = QComboBoxNoWheel()
        self.edit_end.addItem("-")
        self.edit_end.addItem("1")
        self.edit_end.addItem("2")
        self.edit_end.addItem("3")
        self.edit_end.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_end)

        layout1.addStretch(1)

        delete = QPushButton('Delete ')
        delete.clicked.connect(self.delete_self)
        layout1.addWidget(delete)

        return page
Пример #2
0
    def make_page(self):
        # make the edit line
        page = QtGui.QFrame()
        layout = QtGui.QVBoxLayout()
        page.setLayout(layout)

        line1 = QtGui.QFrame()
        layout1 = QtGui.QHBoxLayout()
        line1.setLayout(layout1)
        layout.addWidget(line1)

        layout1.addWidget(QtGui.QLabel("<b>Size:</b> "))

        self.edit_size = QtGui.QLineEdit()
        self.edit_size.setFixedWidth(50)
        self.edit_size.textChanged.connect(self.onChange)
        layout1.addWidget(self.edit_size)

        self.edit_start = QComboBoxNoWheel()
        self.edit_start.addItem("-")
        self.edit_start.addItem("1")
        self.edit_start.addItem("2")
        self.edit_start.addItem("3")
        self.edit_start.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_start)

        self.edit_end = QComboBoxNoWheel()
        self.edit_end.addItem("-")
        self.edit_end.addItem("1")
        self.edit_end.addItem("2")
        self.edit_end.addItem("3")
        self.edit_end.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_end)

        layout1.addStretch(1)

        delete = QtGui.QPushButton('Delete ')
        delete.clicked.connect(self.delete_self)
        layout1.addWidget(delete)

        return page
Пример #3
0
    def make_page(self):
        # make the full edit widget
        page = QFrame()
        layout = QFormLayout()
        page.setLayout(layout)

        self.edit_name = QLineEdit()
        self.edit_name.setFixedWidth(250)
        self.edit_name.textChanged.connect(self.onChange)
        self.edit_desc = QTextEdit()
        self.edit_desc.setFixedWidth(250)
        self.edit_desc.textChanged.connect(self.onChange)
        self.edit_author = QLineEdit()
        self.edit_author.setFixedWidth(250)
        self.edit_author.textChanged.connect(self.onChange)
        self.edit_email = QLineEdit()
        self.edit_email.setFixedWidth(250)
        self.edit_email.textChanged.connect(self.onChange)
        self.edit_units = QComboBoxNoWheel()
        self.edit_units.setFixedWidth(250)
        self.edit_units.addItem("in")
        self.edit_units.addItem("cm")
        self.edit_units.addItem("mm")
        self.edit_units.currentIndexChanged.connect(self.onChange)
        self.edit_sheet_w = QLineEdit()
        self.edit_sheet_w.setFixedWidth(250)
        self.edit_sheet_w.textChanged.connect(self.onChange)
        self.edit_sheet_h = QLineEdit()
        self.edit_sheet_h.setFixedWidth(250)
        self.edit_sheet_h.textChanged.connect(self.onChange)
        self.edit_plans_w = QLineEdit()
        self.edit_plans_w.setFixedWidth(250)
        self.edit_plans_w.textChanged.connect(self.onChange)
        self.edit_plans_h = QLineEdit()
        self.edit_plans_h.setFixedWidth(250)
        self.edit_plans_h.textChanged.connect(self.onChange)

        layout.addRow("<b>Design Name:</b>", self.edit_name)
        layout.addRow("<b>Description:</b>", self.edit_desc)
        layout.addRow("<b>Author:</b>", self.edit_author)
        layout.addRow("<b>Email:</b>", self.edit_email)
        layout.addRow("<b>Units:</b>", self.edit_units)
        layout.addRow("<b>Mat. Sheet Width:</b>", self.edit_sheet_w)
        layout.addRow("<b>Mat. Sheet Height:</b>", self.edit_sheet_h)
        layout.addRow("<b>Plans Width:</b>", self.edit_plans_w)
        layout.addRow("<b>Plans Height:</b>", self.edit_plans_h)

        return page
Пример #4
0
    def make_page(self):
        toppage = QFrame()
        toplayout = QVBoxLayout()
        toppage.setLayout(toplayout)

        page = QFrame()
        layout = QFormLayout()
        page.setLayout(layout)
        toplayout.addWidget(page)

        self.edit_speed = QLineEdit()
        self.edit_speed.setFixedWidth(350)
        self.edit_speed.textChanged.connect(self.onChange)
        self.edit_completion_agl = QLineEdit()
        self.edit_completion_agl.setFixedWidth(350)
        self.edit_completion_agl.textChanged.connect(self.onChange)
        self.edit_mission_agl = QLineEdit()
        self.edit_mission_agl.setFixedWidth(350)
        self.edit_mission_agl.textChanged.connect(self.onChange)
        self.edit_roll_gain = QLineEdit()
        self.edit_roll_gain.setFixedWidth(350)
        self.edit_roll_gain.textChanged.connect(self.onChange)
        self.edit_roll_limit = QLineEdit()
        self.edit_roll_limit.setFixedWidth(350)
        self.edit_roll_limit.textChanged.connect(self.onChange)
        self.edit_rudder_enable = QComboBoxNoWheel()
        self.edit_rudder_enable.setFixedWidth(350)
        self.edit_rudder_enable.addItem('False')
        self.edit_rudder_enable.addItem('True')
        self.edit_rudder_enable.currentIndexChanged.connect(self.onChange)
        self.edit_rudder_gain = QLineEdit()
        self.edit_rudder_gain.setFixedWidth(350)
        self.edit_rudder_gain.textChanged.connect(self.onChange)
        self.rudder_max = QLineEdit()
        self.rudder_max.setFixedWidth(350)
        self.rudder_max.textChanged.connect(self.onChange)

        layout.addRow("<b>Climbout Speed (kts):</b>", self.edit_speed)
        layout.addRow("<b>Completion AGL (ft):</b>", self.edit_completion_agl)
        layout.addRow("<b>Mission AGL (ft):</b>", self.edit_mission_agl)
        layout.addRow("<b>Roll Gain:</b>", self.edit_roll_gain)
        layout.addRow("<b>Roll Limit (deg):</b>", self.edit_roll_limit)
        layout.addRow("<b>Rudder Enable:</b>", self.edit_rudder_enable)
        layout.addRow("<b>Rudder Gain:</b>", self.edit_rudder_gain)
        layout.addRow("<b>Rudder Max (norm):</b>", self.rudder_max)

        # 'Command' button bar
        cmd_group = QFrame()
        toplayout.addWidget(cmd_group)
        cmd_layout = QHBoxLayout()
        cmd_group.setLayout(cmd_layout)
        cmd_layout.addWidget(QLabel("<b>Commands:</b> "))
        update = QPushButton('Update')
        update.clicked.connect(self.update)
        cmd_layout.addWidget(update)
        revert = QPushButton('Revert')
        revert.clicked.connect(self.revert)
        cmd_layout.addWidget(revert)
        launch = QPushButton('Launch Now!')
        launch.clicked.connect(self.task_launch)
        cmd_layout.addWidget(launch)
        cmd_layout.addStretch(1)

        toplayout.addStretch(1)

        # set initial values
        self.revert()

        return toppage
Пример #5
0
    def make_page(self):
        toppage = QFrame()
        toplayout = QVBoxLayout()
        toppage.setLayout(toplayout)

        page = QFrame()
        layout = QFormLayout()
        page.setLayout( layout )
        toplayout.addWidget( page )

        self.edit_lat_offset = QLineEdit()
        self.edit_lat_offset.setFixedWidth(350)
        self.edit_lat_offset.textChanged.connect(self.onChange)
        self.edit_glideslope = QLineEdit()
        self.edit_glideslope.setFixedWidth(350)
        self.edit_glideslope.textChanged.connect(self.onChange)
        self.edit_turn_radius = QLineEdit()
        self.edit_turn_radius.setFixedWidth(350)
        self.edit_turn_radius.textChanged.connect(self.onChange)
        self.edit_direction = QComboBoxNoWheel()
        self.edit_direction.setFixedWidth(350)
        self.edit_direction.addItem('left')
        self.edit_direction.addItem('right')
        self.edit_direction.currentIndexChanged.connect(self.onChange)
        self.edit_final_leg = QLineEdit()
        self.edit_final_leg.setFixedWidth(350)
        self.edit_final_leg.textChanged.connect(self.onChange)
        self.edit_alt_bias = QLineEdit()
        self.edit_alt_bias.setFixedWidth(350)
        self.edit_alt_bias.textChanged.connect(self.onChange)
        self.edit_appr_speed = QLineEdit()
        self.edit_appr_speed.setFixedWidth(350)
        self.edit_appr_speed.textChanged.connect(self.onChange)
        self.edit_flare_pitch = QLineEdit()
        self.edit_flare_pitch.setFixedWidth(350)
        self.edit_flare_pitch.textChanged.connect(self.onChange)
        self.edit_flare_time = QLineEdit()
        self.edit_flare_time.setFixedWidth(350)
        self.edit_flare_time.textChanged.connect(self.onChange)

        layout.addRow( "<b>TD Lateral Offset (m):</b>", self.edit_lat_offset )
        layout.addRow( "<b>Approach Glideslope (deg):</b>", self.edit_glideslope )
        layout.addRow( "<b>Final Turn Radius (m):</b>", self.edit_turn_radius )
        layout.addRow( "<b>Turn Direction:</b>", self.edit_direction )
        layout.addRow( "<b>Extend Final Leg Len (m):</b>", self.edit_final_leg )
        layout.addRow( "<b>Altitude Bias (ft):</b>", self.edit_alt_bias )
        layout.addRow( "<b>Approach Speed (kt):</b>", self.edit_appr_speed )
        layout.addRow( "<b>Flare Pitch (deg):</b>", self.edit_flare_pitch )
        layout.addRow( "<b>Flare Time (sec):</b>", self.edit_flare_time )

        # 'Parameter' button bar
        param_group = QFrame()
        toplayout.addWidget(param_group)
        param_layout = QHBoxLayout()
        param_group.setLayout( param_layout )
        param_layout.addWidget( QLabel("<b>Commands:</b> ") )
        update = QPushButton('Update')
        update.clicked.connect(self.update)
        param_layout.addWidget(update)
        revert = QPushButton('Revert')
        revert.clicked.connect(self.revert)
        param_layout.addWidget(revert)
        land = QPushButton('Land Now!')
        land.clicked.connect(self.task_land)
        param_layout.addWidget(land)
        param_layout.addStretch(1)

        page1 = QFrame()
        layout1 = QFormLayout()
        page1.setLayout( layout1 )
        toplayout.addWidget( page1 )

        self.edit_rwy_lon = QLineEdit()
        self.edit_rwy_lon.setFixedWidth(350)
        self.edit_rwy_lon.textChanged.connect(self.onChange)
        self.edit_rwy_lat = QLineEdit()
        self.edit_rwy_lat.setFixedWidth(350)
        self.edit_rwy_lat.textChanged.connect(self.onChange)
        self.edit_rwy_hdg = QLineEdit()
        self.edit_rwy_hdg.setFixedWidth(350)
        self.edit_rwy_hdg.textChanged.connect(self.onChange)

        layout1.addRow( "<b>Runway Longitude (deg):</b>", self.edit_rwy_lon )
        layout1.addRow( "<b>Runway Latitude (deg):</b>", self.edit_rwy_lat )
        layout1.addRow( "<b>Runway Heading (deg):</b>", self.edit_rwy_hdg )

        # 'rwy' button bar
        rwy_group = QFrame()
        toplayout.addWidget(rwy_group)
        rwy_layout = QHBoxLayout()
        rwy_group.setLayout( rwy_layout )
        rwy_layout.addWidget( QLabel("<b>Runway Presets:</b> ") )
        home = QPushButton('Land "HOME"')
        home.clicked.connect(self.task_rwy_home)
        rwy_layout.addWidget(home)
        sprc36 = QPushButton('SPRC 36 (to N)')
        sprc36.clicked.connect(self.task_rwy_sprc36)
        rwy_layout.addWidget(sprc36)
        sprc18 = QPushButton('SPRC 18 (to S)')
        sprc18.clicked.connect(self.task_rwy_sprc18)
        rwy_layout.addWidget(sprc18)
        rwy_layout.addStretch(1)

        toplayout.addStretch(1)

        # set initial values
        self.revert()

        return toppage
Пример #6
0
    def make_page(self, name):
        # make the full edit widget
        toppage = QFrame()
        toplayout = QVBoxLayout()
        toppage.setLayout(toplayout)

        page = QFrame()
        layout = QVBoxLayout()
        page.setLayout(layout)

        maincontents = QFrame()
        formlayout = QFormLayout()
        maincontents.setLayout(formlayout)
        layout.addWidget(maincontents)

        scroll = QScrollArea()
        scroll.setWidget(page)
        scroll.setWidgetResizable(True)
        #layout.addWidget(scroll)
        toplayout.addWidget(scroll)

        frame = QGroupBox("Leading Edges")
        self.layout_le = QVBoxLayout()
        frame.setLayout(self.layout_le)
        layout.addWidget(frame)

        frame = QGroupBox("Trailing Edges")
        self.layout_te = QVBoxLayout()
        frame.setLayout(self.layout_te)
        layout.addWidget(frame)

        frame = QGroupBox("Spars")
        self.layout_spars = QVBoxLayout()
        frame.setLayout(self.layout_spars)
        layout.addWidget(frame)

        frame = QGroupBox("Stringers")
        self.layout_stringers = QVBoxLayout()
        frame.setLayout(self.layout_stringers)
        layout.addWidget(frame)

        frame = QGroupBox("Sheeting")
        self.layout_sheeting = QVBoxLayout()
        frame.setLayout(self.layout_sheeting)
        layout.addWidget(frame)

        frame = QGroupBox("Simple Holes")
        self.layout_simple_holes = QVBoxLayout()
        frame.setLayout(self.layout_simple_holes)
        layout.addWidget(frame)

        frame = QGroupBox("Shaped Holes")
        self.layout_shaped_holes = QVBoxLayout()
        frame.setLayout(self.layout_shaped_holes)
        layout.addWidget(frame)

        frame = QGroupBox("Build Tabs")
        self.layout_build_tabs = QVBoxLayout()
        frame.setLayout(self.layout_build_tabs)
        layout.addWidget(frame)

        frame = QGroupBox("Control Surfaces")
        self.layout_flaps = QVBoxLayout()
        frame.setLayout(self.layout_flaps)
        layout.addWidget(frame)

        # 'Command' button bar
        cmd_group = QFrame()
        toplayout.addWidget(cmd_group)
        cmd_layout = QHBoxLayout()
        cmd_group.setLayout(cmd_layout)

        cmd_layout.addWidget(QLabel("<b>Wing Tools:</b> "))

        select_airfoil = QPushButton("Assist Me ...")
        menu = QMenu()
        menu.addAction("Select Root Airfoil", self.select_airfoil_root)
        menu.addAction("Select Tip Airfoil", self.select_airfoil_tip)
        menu.addAction("Generate Stations", self.generate_stations)
        select_airfoil.setMenu(menu)
        cmd_layout.addWidget(select_airfoil)

        add_feature = QPushButton("Add Feature ...")
        menu = QMenu()
        menu.addAction("Leading Edge", self.add_leading_edge)
        menu.addAction("Trailing Edge", self.add_trailing_edge)
        menu.addAction("Spar", self.add_spar)
        menu.addAction("Stringer", self.add_stringer)
        menu.addAction("Sheeting", self.add_sheet)
        menu.addAction("Lighting/Spar Hole", self.add_simple_hole)
        menu.addAction("Shaped Hole", self.add_shaped_hole)
        menu.addAction("Build Tab", self.add_build_tab)
        menu.addAction("Add Control Surface", self.add_flap)
        add_feature.setMenu(menu)
        cmd_layout.addWidget(add_feature)

        cmd_layout.addStretch(1)

        delete = QPushButton('Delete Wing')
        delete.clicked.connect(self.delete_self)
        cmd_layout.addWidget(delete)

        # form content
        self.edit_name = QLineEdit()
        self.edit_name.setFixedWidth(250)
        self.edit_name.textChanged.connect(self.onChange)
        self.edit_name.setText(name)
        self.edit_airfoil_root = QLineEdit()
        self.edit_airfoil_root.setFixedWidth(250)
        self.edit_airfoil_root.textChanged.connect(self.onChange)
        self.edit_airfoil_tip = QLineEdit()
        self.edit_airfoil_tip.setFixedWidth(250)
        self.edit_airfoil_tip.textChanged.connect(self.onChange)
        self.edit_span = QLineEdit()
        self.edit_span.setFixedWidth(250)
        self.edit_span.textChanged.connect(self.onChange)
        self.edit_chord_root = QLineEdit()
        self.edit_chord_root.setFixedWidth(250)
        self.edit_chord_root.textChanged.connect(self.onChange)
        self.edit_chord_tip = QLineEdit()
        self.edit_chord_tip.setFixedWidth(250)
        self.edit_chord_tip.textChanged.connect(self.onChange)
        self.edit_chord_curve = QLineEdit()
        self.edit_chord_curve.setFixedWidth(250)
        self.edit_chord_curve.textChanged.connect(self.onChange)
        self.edit_twist = QLineEdit()
        self.edit_twist.setFixedWidth(250)
        self.edit_twist.textChanged.connect(self.onChange)
        self.edit_sweep = QLineEdit()
        self.edit_sweep.setFixedWidth(250)
        self.edit_sweep.textChanged.connect(self.onChange)
        self.edit_sweep_curve = QLineEdit()
        self.edit_sweep_curve.setFixedWidth(250)
        self.edit_sweep_curve.textChanged.connect(self.onChange)
        self.edit_dihedral = QLineEdit()
        self.edit_dihedral.setFixedWidth(250)
        self.edit_dihedral.textChanged.connect(self.onChange)
        self.edit_stations = QLineEdit()
        self.edit_stations.setFixedWidth(250)
        self.edit_stations.textChanged.connect(self.rebuildStations)
        self.edit_wing_link = QComboBoxNoWheel()
        self.edit_wing_link.setFixedWidth(250)
        self.edit_wing_link.currentIndexChanged.connect(self.onChange)
        self.edit_wing_link.addItem("none")

        formlayout.addRow("<b>Wing Name:</b>", self.edit_name)
        formlayout.addRow("<b>Root Airfoil:</b>", self.edit_airfoil_root)
        formlayout.addRow("<b>Tip Airfoil (if different):</b>",
                          self.edit_airfoil_tip)
        formlayout.addRow("<b>Span:</b>", self.edit_span)
        formlayout.addRow("<b>Root Chord:</b>", self.edit_chord_root)
        formlayout.addRow("<b>Tip Chord (if different):</b>",
                          self.edit_chord_tip)
        formlayout.addRow("<b>Chord Curve (see docs):</b>",
                          self.edit_chord_curve)
        formlayout.addRow("<b>Twist/Washout (deg):</b>", self.edit_twist)
        formlayout.addRow("<b>Sweep Angle (deg):</b>", self.edit_sweep)
        formlayout.addRow("<b>Sweep Curve (see docs):</b>",
                          self.edit_sweep_curve)
        formlayout.addRow("<b>Dihedral (deg):</b>", self.edit_dihedral)
        formlayout.addRow("<b>Stations:</b>", self.edit_stations)
        formlayout.addRow("<b>Link to Wing:</b>", self.edit_wing_link)

        return toppage
Пример #7
0
    def make_page(self):
        page = QtGui.QFrame()
        layout = QtGui.QVBoxLayout()
        page.setLayout(layout)

        line1 = QtGui.QFrame()
        layout1 = QtGui.QHBoxLayout()
        line1.setLayout(layout1)
        layout.addWidget(line1)

        line2 = QtGui.QFrame()
        layout2 = QtGui.QHBoxLayout()
        line2.setLayout(layout2)
        layout.addWidget(line2)

        line3 = QtGui.QFrame()
        layout3 = QtGui.QHBoxLayout()
        line3.setLayout(layout3)
        layout.addWidget(line3)

        self.edit_start = QComboBoxNoWheel()
        self.edit_start.addItem("-")
        self.edit_start.addItem("1")
        self.edit_start.addItem("2")
        self.edit_start.addItem("3")
        self.edit_start.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_start)

        self.edit_end = QComboBoxNoWheel()
        self.edit_end.addItem("-")
        self.edit_end.addItem("1")
        self.edit_end.addItem("2")
        self.edit_end.addItem("3")
        self.edit_end.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_end)

        layout1.addStretch(1)

        delete = QtGui.QPushButton('Delete')
        delete.clicked.connect(self.delete_self)
        layout1.addWidget(delete)

        layout2.addWidget(QtGui.QLabel("<b>Pos:</b> "))

        self.edit_posref = QComboBoxNoWheel()
        self.edit_posref.addItem("Chord %")
        self.edit_posref.addItem("Rel Front")
        self.edit_posref.addItem("Rel Rear")
        self.edit_posref.addItem("Abs Pos")
        self.edit_posref.currentIndexChanged.connect(self.onChange)
        layout2.addWidget(self.edit_posref)

        self.edit_pos = QtGui.QLineEdit()
        self.edit_pos.setFixedWidth(50)
        self.edit_pos.textChanged.connect(self.onChange)
        layout2.addWidget(self.edit_pos)

        layout2.addWidget(QtGui.QLabel("<b>At Station:</b> "))
        self.edit_atstation = QtGui.QLineEdit()
        self.edit_atstation.setFixedWidth(50)
        self.edit_atstation.textChanged.connect(self.onChange)
        layout2.addWidget(self.edit_atstation)

        layout2.addWidget(QtGui.QLabel("<b>Slope:</b> "))
        self.edit_slope = QtGui.QLineEdit()
        self.edit_slope.setFixedWidth(50)
        self.edit_slope.textChanged.connect(self.onChange)
        layout2.addWidget(self.edit_slope)

        layout2.addStretch(1)

        layout3.addWidget(QtGui.QLabel("<b>Edge Stringer W x H:</b> "))

        self.edit_width = QtGui.QLineEdit()
        self.edit_width.setFixedWidth(50)
        self.edit_width.textChanged.connect(self.onChange)
        layout3.addWidget(self.edit_width)

        self.edit_height = QtGui.QLineEdit()
        self.edit_height.setFixedWidth(50)
        self.edit_height.textChanged.connect(self.onChange)
        layout3.addWidget(self.edit_height)

        layout3.addWidget(QtGui.QLabel("<b>Hinge Cutout Angle:</b> "))

        self.edit_angle = QtGui.QLineEdit()
        self.edit_angle.setFixedWidth(50)
        self.edit_angle.textChanged.connect(self.onChange)
        layout3.addWidget(self.edit_angle)

        layout3.addStretch(1)

        return page
Пример #8
0
    def make_page(self):
        toppage = QFrame()
        toplayout = QVBoxLayout()
        toppage.setLayout(toplayout)

        page = QFrame()
        layout = QFormLayout()
        page.setLayout(layout)
        toplayout.addWidget(page)

        self.edit_alt = QLineEdit()
        self.edit_alt.setFixedWidth(350)
        self.edit_alt.textChanged.connect(self.onChange)
        self.edit_speed = QLineEdit()
        self.edit_speed.setFixedWidth(350)
        self.edit_speed.textChanged.connect(self.onChange)
        self.edit_direction = QComboBoxNoWheel()
        self.edit_direction.setFixedWidth(350)
        self.edit_direction.addItem('left')
        self.edit_direction.addItem('right')
        self.edit_direction.currentIndexChanged.connect(self.onChange)
        self.edit_radius = QLineEdit()
        self.edit_radius.setFixedWidth(350)
        self.edit_radius.textChanged.connect(self.onChange)

        layout.addRow("<b>Altitude AGL (ft):</b>", self.edit_alt)
        layout.addRow("<b>Speed (kt):</b>", self.edit_speed)
        layout.addRow("<b>Direction:</b>", self.edit_direction)
        layout.addRow("<b>Radius (m):</b>", self.edit_radius)

        # 'Parameter' button bar
        param_group = QFrame()
        toplayout.addWidget(param_group)
        param_layout = QHBoxLayout()
        param_group.setLayout(param_layout)
        param_layout.addWidget(QLabel("<b>Circling Parameters:</b> "))
        update = QPushButton('Update')
        update.clicked.connect(self.update)
        param_layout.addWidget(update)
        revert = QPushButton('Revert')
        revert.clicked.connect(self.revert)
        param_layout.addWidget(revert)
        param_layout.addStretch(1)

        # 'Command' button bar
        cmd_group = QFrame()
        toplayout.addWidget(cmd_group)
        cmd_layout = QHBoxLayout()
        cmd_group.setLayout(cmd_layout)
        cmd_layout.addWidget(QLabel("<b>Task Commands:</b> "))
        circle = QPushButton('Circle Here')
        circle.clicked.connect(self.task_circle)
        cmd_layout.addWidget(circle)
        home = QPushButton('Go Home (and Circle)')
        home.clicked.connect(self.task_home)
        cmd_layout.addWidget(home)
        cmd_layout.addStretch(1)

        toplayout.addStretch(1)

        # set initial values
        self.revert()

        return toppage
Пример #9
0
    def make_page(self):
        page = QFrame()
        layout = QVBoxLayout()
        page.setLayout(layout)

        line1 = QFrame()
        layout1 = QHBoxLayout()
        line1.setLayout(layout1)
        layout.addWidget(line1)

        line2 = QFrame()
        layout2 = QHBoxLayout()
        line2.setLayout(layout2)
        layout.addWidget(line2)

        self.edit_style = QComboBoxNoWheel()
        self.edit_style.addItem("Radius")
        self.edit_style.addItem("% Height")
        self.edit_style.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_style)

        layout1.addWidget(QLabel("<b>Radius:</b> "))

        self.edit_size = QLineEdit()
        self.edit_size.setFixedWidth(50)
        self.edit_size.textChanged.connect(self.onChange)
        layout1.addWidget(self.edit_size)

        self.edit_start = QComboBoxNoWheel()
        self.edit_start.addItem("-")
        self.edit_start.addItem("1")
        self.edit_start.addItem("2")
        self.edit_start.addItem("3")
        self.edit_start.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_start)

        self.edit_end = QComboBoxNoWheel()
        self.edit_end.addItem("-")
        self.edit_end.addItem("1")
        self.edit_end.addItem("2")
        self.edit_end.addItem("3")
        self.edit_end.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_end)

        layout1.addStretch(1)

        delete = QPushButton('Delete')
        delete.clicked.connect(self.delete_self)
        layout1.addWidget(delete)

        layout2.addWidget(QLabel("<b>Pos:</b> "))

        self.edit_posref = QComboBoxNoWheel()
        self.edit_posref.addItem("Chord %")
        self.edit_posref.addItem("Rel Front")
        self.edit_posref.addItem("Rel Rear")
        self.edit_posref.addItem("Abs Pos")
        self.edit_posref.currentIndexChanged.connect(self.onChange)
        layout2.addWidget(self.edit_posref)

        self.edit_pos = QLineEdit()
        self.edit_pos.setFixedWidth(50)
        self.edit_pos.textChanged.connect(self.onChange)
        layout2.addWidget(self.edit_pos)

        layout2.addStretch(1)

        return page
Пример #10
0
    def make_page(self):
        page = QtGui.QFrame()
        layout = QtGui.QVBoxLayout()
        page.setLayout( layout )

        line1 = QtGui.QFrame()
        layout1 = QtGui.QHBoxLayout()
        line1.setLayout( layout1 )
        layout.addWidget( line1 )

        line2 = QtGui.QFrame()
        layout2 = QtGui.QHBoxLayout()
        line2.setLayout( layout2 )
        layout.addWidget( line2 )

        layout1.addWidget( QtGui.QLabel("<b>Depth:</b> ") )

        self.edit_depth = QtGui.QLineEdit()
        self.edit_depth.setFixedWidth(70)
        self.edit_depth.textChanged.connect(self.onChange)
        layout1.addWidget( self.edit_depth )

        self.edit_start = QComboBoxNoWheel()
        self.edit_start.addItem("-")
        self.edit_start.addItem("1")
        self.edit_start.addItem("2")
        self.edit_start.addItem("3")
        self.edit_start.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_start)

        self.edit_end = QComboBoxNoWheel()
        self.edit_end.addItem("-")
        self.edit_end.addItem("1")
        self.edit_end.addItem("2")
        self.edit_end.addItem("3")
        self.edit_end.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_end)

        layout1.addStretch(1)

        delete = QtGui.QPushButton('Delete')
        delete.clicked.connect(self.delete_self)
        layout1.addWidget(delete)
  
        layout2.addWidget( QtGui.QLabel("<b>Start Pos:</b> ") )

        self.edit_xstart = QtGui.QLineEdit()
        self.edit_xstart.setFixedWidth(50)
        self.edit_xstart.textChanged.connect(self.onChange)
        layout2.addWidget( self.edit_xstart )

        self.edit_xmode = QComboBoxNoWheel()
        self.edit_xmode.addItem("Sheet Width")
        self.edit_xmode.addItem("End Position")
        self.edit_xmode.currentIndexChanged.connect(self.onChange)
        layout2.addWidget(self.edit_xmode)

        self.edit_xend = QtGui.QLineEdit()
        self.edit_xend.setFixedWidth(50)
        self.edit_xend.textChanged.connect(self.onChange)
        layout2.addWidget( self.edit_xend )

        self.edit_surface = QComboBoxNoWheel()
        self.edit_surface.addItem("Top")
        self.edit_surface.addItem("Bottom")
        self.edit_surface.currentIndexChanged.connect(self.onChange)
        layout2.addWidget(self.edit_surface)

        layout2.addStretch(1)

        return page
Пример #11
0
    def make_page(self):
        page = QtGui.QFrame()
        layout = QtGui.QVBoxLayout()
        page.setLayout(layout)

        line1 = QtGui.QFrame()
        layout1 = QtGui.QHBoxLayout()
        line1.setLayout(layout1)
        layout.addWidget(line1)

        line2 = QtGui.QFrame()
        layout2 = QtGui.QHBoxLayout()
        line2.setLayout(layout2)
        layout.addWidget(line2)

        layout1.addWidget(QtGui.QLabel("<b>Width:</b> "))

        self.edit_width = QtGui.QLineEdit()
        self.edit_width.setFixedWidth(50)
        self.edit_width.textChanged.connect(self.onChange)
        layout1.addWidget(self.edit_width)

        layout1.addWidget(QtGui.QLabel("<b>Y Pad:</b> "))

        self.edit_ypad = QtGui.QLineEdit()
        self.edit_ypad.setFixedWidth(50)
        self.edit_ypad.textChanged.connect(self.onChange)
        layout1.addWidget(self.edit_ypad)

        self.edit_start = QComboBoxNoWheel()
        self.edit_start.addItem("-")
        self.edit_start.addItem("1")
        self.edit_start.addItem("2")
        self.edit_start.addItem("3")
        self.edit_start.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_start)

        self.edit_end = QComboBoxNoWheel()
        self.edit_end.addItem("-")
        self.edit_end.addItem("1")
        self.edit_end.addItem("2")
        self.edit_end.addItem("3")
        self.edit_end.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_end)

        layout1.addStretch(1)

        delete = QtGui.QPushButton('Delete')
        delete.clicked.connect(self.delete_self)
        layout1.addWidget(delete)

        layout2.addWidget(QtGui.QLabel("<b>Pos:</b> "))

        self.edit_posref = QComboBoxNoWheel()
        self.edit_posref.addItem("Chord %")
        self.edit_posref.addItem("Rel Front")
        self.edit_posref.addItem("Rel Rear")
        self.edit_posref.addItem("Abs Pos")
        self.edit_posref.currentIndexChanged.connect(self.onChange)
        layout2.addWidget(self.edit_posref)

        self.edit_pos = QtGui.QLineEdit()
        self.edit_pos.setFixedWidth(50)
        self.edit_pos.textChanged.connect(self.onChange)
        layout2.addWidget(self.edit_pos)

        self.edit_surface = QComboBoxNoWheel()
        self.edit_surface.addItem("Top")
        self.edit_surface.addItem("Bottom")
        self.edit_surface.currentIndexChanged.connect(self.onChange)
        layout2.addWidget(self.edit_surface)

        layout2.addStretch(1)

        return page
Пример #12
0
    def make_page(self):
        toppage = QtGui.QFrame()
        toplayout = QtGui.QVBoxLayout()
        toppage.setLayout(toplayout)

        page = QtGui.QFrame()
        layout = QtGui.QFormLayout()
        page.setLayout(layout)
        toplayout.addWidget(page)

        self.edit_start_freq = QtGui.QLineEdit()
        self.edit_start_freq.setFixedWidth(350)
        self.edit_start_freq.textChanged.connect(self.onChange)
        self.edit_end_freq = QtGui.QLineEdit()
        self.edit_end_freq.setFixedWidth(350)
        self.edit_end_freq.textChanged.connect(self.onChange)
        self.edit_duration = QtGui.QLineEdit()
        self.edit_duration.setFixedWidth(350)
        self.edit_duration.textChanged.connect(self.onChange)
        self.edit_ampl = QtGui.QLineEdit()
        self.edit_ampl.setFixedWidth(350)
        self.edit_ampl.textChanged.connect(self.onChange)
        self.edit_inject = QComboBoxNoWheel()
        self.edit_inject.setFixedWidth(350)
        self.edit_inject.addItem('aileron')
        self.edit_inject.addItem('elevator')
        self.edit_inject.addItem('rudder')
        self.edit_inject.addItem('flaps')
        self.edit_inject.addItem('throttle')
        self.edit_inject.currentIndexChanged.connect(self.onChange)

        layout.addRow("<b>Start Freqency (hz):</b>", self.edit_start_freq)
        layout.addRow("<b>End Freqency (hz):</b>", self.edit_end_freq)
        layout.addRow("<b>Duration (sec):</b>", self.edit_duration)
        layout.addRow("<b>Amplitude (deg):</b>", self.edit_ampl)
        layout.addRow("<b>Injection Point:</b>", self.edit_inject)

        # 'Parameter' button bar
        param_group = QtGui.QFrame()
        toplayout.addWidget(param_group)
        param_layout = QtGui.QHBoxLayout()
        param_group.setLayout(param_layout)
        param_layout.addWidget(QtGui.QLabel("<b>Chirp Parameters:</b> "))
        update = QtGui.QPushButton('Update')
        update.clicked.connect(self.update)
        param_layout.addWidget(update)
        revert = QtGui.QPushButton('Revert')
        revert.clicked.connect(self.revert)
        param_layout.addWidget(revert)
        param_layout.addStretch(1)

        # 'Command' button bar
        cmd_group = QtGui.QFrame()
        toplayout.addWidget(cmd_group)
        cmd_layout = QtGui.QHBoxLayout()
        cmd_group.setLayout(cmd_layout)
        cmd_layout.addWidget(
            QtGui.QLabel(
                "<b>Task Commands: (set params, then engage with physical switch)</b> "
            ))
        # circle = QtGui.QPushButton('Circle Here')
        # circle.clicked.connect(self.task_circle)
        # cmd_layout.addWidget(circle)
        # home = QtGui.QPushButton('Go Home (and Circle)')
        # home.clicked.connect(self.task_home)
        # cmd_layout.addWidget(home)
        # resume = QtGui.QPushButton('Resume Route')
        # resume.clicked.connect(self.task_resume)
        # cmd_layout.addWidget(resume)
        cmd_layout.addStretch(1)

        toplayout.addStretch(1)

        # set initial values
        self.revert()

        return toppage
Пример #13
0
    def make_page(self):
        page = QFrame()
        layout = QVBoxLayout()
        page.setLayout(layout)

        line1 = QFrame()
        layout1 = QHBoxLayout()
        line1.setLayout(layout1)
        layout.addWidget(line1)

        line2 = QFrame()
        layout2 = QHBoxLayout()
        line2.setLayout(layout2)
        layout.addWidget(line2)

        layout1.addWidget(QLabel("<b>Mat. W:</b> "))

        self.edit_width = QLineEdit()
        self.edit_width.setFixedWidth(50)
        self.edit_width.textChanged.connect(self.onChange)
        layout1.addWidget(self.edit_width)

        layout1.addWidget(QLabel("<b>Corner Rad:</b> "))

        self.edit_radius = QLineEdit()
        self.edit_radius.setFixedWidth(50)
        self.edit_radius.textChanged.connect(self.onChange)
        layout1.addWidget(self.edit_radius)

        self.edit_start = QComboBoxNoWheel()
        self.edit_start.addItem("-")
        self.edit_start.addItem("1")
        self.edit_start.addItem("2")
        self.edit_start.addItem("3")
        self.edit_start.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_start)

        self.edit_end = QComboBoxNoWheel()
        self.edit_end.addItem("-")
        self.edit_end.addItem("1")
        self.edit_end.addItem("2")
        self.edit_end.addItem("3")
        self.edit_end.currentIndexChanged.connect(self.onChange)
        layout1.addWidget(self.edit_end)

        layout1.addStretch(1)

        delete = QPushButton('Delete')
        delete.clicked.connect(self.delete_self)
        layout1.addWidget(delete)

        layout2.addWidget(QLabel("<b>Start Pos:</b> "))

        self.edit_pos1ref = QComboBoxNoWheel()
        self.edit_pos1ref.addItem("Chord %")
        self.edit_pos1ref.addItem("Rel Front")
        self.edit_pos1ref.addItem("Rel Rear")
        self.edit_pos1ref.addItem("Abs Pos")
        self.edit_pos1ref.currentIndexChanged.connect(self.onChange)
        layout2.addWidget(self.edit_pos1ref)

        self.edit_pos1 = QLineEdit()
        self.edit_pos1.setFixedWidth(50)
        self.edit_pos1.textChanged.connect(self.onChange)
        layout2.addWidget(self.edit_pos1)

        layout2.addWidget(QLabel("<b>End Pos:</b> "))

        self.edit_pos2ref = QComboBoxNoWheel()
        self.edit_pos2ref.addItem("Chord %")
        self.edit_pos2ref.addItem("Rel Front")
        self.edit_pos2ref.addItem("Rel Rear")
        self.edit_pos2ref.addItem("Abs Pos")
        self.edit_pos2ref.currentIndexChanged.connect(self.onChange)
        layout2.addWidget(self.edit_pos2ref)

        self.edit_pos2 = QLineEdit()
        self.edit_pos2.setFixedWidth(50)
        self.edit_pos2.textChanged.connect(self.onChange)
        layout2.addWidget(self.edit_pos2)

        layout2.addStretch(1)

        return page