From f7bf258a50bc01d32174db9fb4248a838d2f878b Mon Sep 17 00:00:00 2001 From: andrew Date: Mon, 11 Oct 2010 05:34:52 +0000 Subject: [PATCH] Started to modify UI for ccpm mixing to integrate it into the look and feel of the config gadget. Most of the functionality has not been implemented yet. NONE of this has not been tested in it's current form. Use at own risk! git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1942 ebee16cc-31ac-478f-84a7-5cbb03baadba --- ground/src/plugins/config/ccpm.ui | 2630 ++++++++++------- .../src/plugins/config/configccpmwidget.cpp | 12 +- 2 files changed, 1613 insertions(+), 1029 deletions(-) diff --git a/ground/src/plugins/config/ccpm.ui b/ground/src/plugins/config/ccpm.ui index d7b0071ee..98dec8c51 100644 --- a/ground/src/plugins/config/ccpm.ui +++ b/ground/src/plugins/config/ccpm.ui @@ -1,1026 +1,1604 @@ - - - ccpmWidget - - - - 0 - 0 - 720 - 435 - - - - Form - - - - - 10 - 10 - 691 - 381 - - - - 0 - - - - Basic settings - - - - - 110 - 10 - 551 - 21 - - - - - 10 - - - - Select aircraft type here - - - - 3 servo 120º - single servo rear - - - - - Custom - Advanced settings - - - - - - - 10 - 10 - 91 - 21 - - - - Swashplate config: - - - - - - Curve settings - - - - - 20 - 190 - 261 - 141 - - - - - 8 - - - - Qt::ScrollBarAlwaysOn - - - Qt::ScrollBarAlwaysOff - - - false - - - true - - - - 0% - - - - - 25% - - - - - 50% - - - - - 75% - - - - - 100% - - - - - none - - - - - none - - - - - none - - - - - none - - - - - none - - - - - Throttle Curve - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - Blade Pitch Curve - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 0 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 0 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - .25 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - .25 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - .5 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - .5 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - .75 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - .75 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 1 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 1 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - 20 - 20 - 271 - 21 - - - - - 10 - - - - Select aircraft type here - - - - Linear - - - - - Flat - - - - - Step - - - - - Custom - - - - - - - 180 - 50 - 51 - 22 - - - - 2 - - - 10 - - - 5 - - - - - - 80 - 50 - 91 - 16 - - - - Number of points - - - - - - 150 - 140 - 121 - 27 - - - - Generate curves based on settings - - - <-- Generate Curve - - - - - - 40 - 100 - 62 - 22 - - - - 1 - - - 10.000000000000000 - - - - - - 130 - 100 - 62 - 22 - - - - 1 - - - 10.000000000000000 - - - 1.000000000000000 - - - - - - 220 - 100 - 62 - 22 - - - - 1 - - - 100.000000000000000 - - - 50.000000000000000 - - - - - - 40 - 80 - 61 - 16 - - - - Min - - - - - - 130 - 80 - 61 - 16 - - - - Max - - - - - - 220 - 80 - 61 - 16 - - - - Step point - - - - - - 310 - 10 - 371 - 331 - - - - - - - 30 - 140 - 111 - 21 - - - - - 10 - - - - Select aircraft type here - - - - Throttle - - - - - Pitch - - - - - - - Advanced settings - - - - - 10 - 30 - 251 - 141 - - - - - 0 - 0 - - - - QFrame::StyledPanel - - - QFrame::Plain - - - 0 - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - false - - - false - - - true - - - QAbstractItemView::SingleSelection - - - - ServoW - - - - - ServoX - - - - - ServoY - - - - - ServoZ - - - - - Angle - - - - - Output - - - - - 0 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 8 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 60 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 5 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 180 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 1 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 300 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - 0 - - - AlignHCenter|AlignVCenter|AlignCenter - - - - - - - 10 - 0 - 91 - 30 - - - - Servo config: - - - - - - 10 - 180 - 101 - 30 - - - - CollectiveConstant: - - - - - false - - - - 10 - 210 - 91 - 16 - - - - CorrectionAngle: - - - - - - 10 - 240 - 101 - 30 - - - - Throttle Output - - - - - - 10 - 270 - 81 - 30 - - - - Tail Rotor Servo - - - - - - 90 - 240 - 151 - 21 - - - - - 10 - - - - Select aircraft type here - - - 2 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 6 - - - - - 7 - - - - - 8 - - - - - - - 90 - 270 - 151 - 21 - - - - - 10 - - - - Select aircraft type here - - - 3 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 6 - - - - - 7 - - - - - 8 - - - - - - - 130 - 180 - 62 - 22 - - - - 1.000000000000000 - - - 0.050000000000000 - - - 0.500000000000000 - - - - - false - - - - 130 - 210 - 62 - 22 - - - - 0 - - - 360.000000000000000 - - - 15.000000000000000 - - - - - false - - - - 10 - 310 - 181 - 17 - - - - YawStabilizationInManualMode: - - - - - false - - - - 10 - 330 - 70 - 17 - - - - Flybarless - - - - - - 300 - 10 - 371 - 331 - - - - - - - - - 10 - 400 - 93 - 27 - - - - Retrieve settings from OpenPilot - - - Get Current - - - - - - 370 - 400 - 93 - 27 - - - - Send to OpenPilot but don't write in SD. - - - Save to RAM - - - - - - 480 - 400 - 93 - 27 - - - - Applies and Saves all settings to SD - - - Save to SD - - - - - - + + + ccpmWidget + + + + 0 + 0 + 806 + 822 + + + + Form + + + + + 10 + 10 + 1096 + 541 + + + + 0 + + + + Basic settings + + + + + 110 + 10 + 551 + 21 + + + + + 10 + + + + Select aircraft type here + + + + Custom - Advanced settings + + + + + + + 10 + 10 + 91 + 21 + + + + Swashplate config: + + + + + + 11 + 60 + 764 + 427 + + + + + + + QFormLayout::AllNonFixedFieldsGrow + + + + + Outputs + + + + + + + + Engine + + + + + + + + + + + 60 + 0 + + + + Tail Rotor + + + + + + + + + + + + + + + Swashplate Outputs + + + + + + QFormLayout::AllNonFixedFieldsGrow + + + + + true + + + + 1 + 1 + + + + + 50 + 0 + + + + + 85 + 16777215 + + + + Servo W + + + + + + + true + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + + + + + true + + + + 1 + 1 + + + + + 50 + 0 + + + + + 85 + 16777215 + + + + Servo Y + + + + + + + true + + + + 0 + 0 + + + + + + + + + 1 + 1 + + + + + 50 + 0 + + + + + 85 + 16777215 + + + + Servo Z + + + + + + + + 0 + 0 + + + + + + + + + 1 + 1 + + + + + 50 + 0 + + + + + 85 + 16777215 + + + + Servo X + + + + + + + + 0 + 0 + + + + + Front + + + + + Rear + + + + + + + + + 1 + 1 + + + + + 50 + 0 + + + + + 85 + 16777215 + + + + Single Servo + + + + + + + + + + + + Swashplate Servo Angles + + + + + + QFormLayout::AllNonFixedFieldsGrow + + + + + true + + + + 60 + 0 + + + + Angle W + + + + + + + 0 + + + 360.000000000000000 + + + 15.000000000000000 + + + + + + + + 67 + 0 + + + + Angle X + + + + + + + true + + + + 67 + 0 + + + + Angle Y + + + + + + + Angle Z + + + + + + + 0 + + + 360.000000000000000 + + + 15.000000000000000 + + + + + + + 0 + + + 360.000000000000000 + + + 15.000000000000000 + + + + + + + 0 + + + 360.000000000000000 + + + 15.000000000000000 + + + + + + + true + + + CorrectionAngle + + + + + + + true + + + 0 + + + 360.000000000000000 + + + 15.000000000000000 + + + + + + + + + + + + + + CCPM Mixing + + + + + + Qt::Vertical + + + + false + + + Collective + + + Qt::AlignCenter + + + + + false + + + 100 + + + 5 + + + 50 + + + Qt::Vertical + + + + + false + + + Cyclic + + + Qt::AlignCenter + + + + + + + + + + + REVO Mixing + + + + + + Qt::Vertical + + + + false + + + 100% + + + Qt::AlignCenter + + + + + false + + + 100 + + + 5 + + + Qt::Vertical + + + + + false + + + 0% + + + Qt::AlignCenter + + + + + + + + + + + + 0 + 0 + + + + + 16777215 + 420 + + + + Swashplate Layout + + + Qt::AlignHCenter|Qt::AlignTop + + + false + + + false + + + + + + Qt::Vertical + + + + + 1 + 1 + + + + + 400 + 0 + + + + + 16777215 + 400 + + + + Qt::AlignHCenter|Qt::AlignTop + + + QGraphicsView::AnchorViewCenter + + + + + + + + + + + + + Curve settings + + + + + 20 + 190 + 261 + 141 + + + + + 8 + + + + Qt::ScrollBarAlwaysOn + + + Qt::ScrollBarAlwaysOff + + + false + + + true + + + + 0% + + + + + 25% + + + + + 50% + + + + + 75% + + + + + 100% + + + + + none + + + + + none + + + + + none + + + + + none + + + + + none + + + + + Throttle Curve + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + Blade Pitch Curve + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 0 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 0 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + .25 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + .25 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + .5 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + .5 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + .75 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + .75 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 1 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 1 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + - + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + - + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + - + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + - + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + - + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + - + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + - + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + - + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + - + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + - + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + + + 20 + 20 + 271 + 21 + + + + + 10 + + + + Select aircraft type here + + + + Linear + + + + + Flat + + + + + Step + + + + + Custom + + + + + + + 180 + 50 + 51 + 22 + + + + 2 + + + 10 + + + 5 + + + + + + 80 + 50 + 91 + 16 + + + + Number of points + + + + + + 150 + 140 + 121 + 27 + + + + Generate curves based on settings + + + <-- Generate Curve + + + + + + 40 + 100 + 62 + 22 + + + + 1 + + + 10.000000000000000 + + + + + + 130 + 100 + 62 + 22 + + + + 1 + + + 10.000000000000000 + + + 1.000000000000000 + + + + + + 220 + 100 + 62 + 22 + + + + 1 + + + 100.000000000000000 + + + 50.000000000000000 + + + + + + 40 + 80 + 61 + 16 + + + + Min + + + + + + 130 + 80 + 61 + 16 + + + + Max + + + + + + 220 + 80 + 61 + 16 + + + + Step point + + + + + + 310 + 10 + 371 + 331 + + + + + + + 30 + 140 + 111 + 21 + + + + + 10 + + + + Select aircraft type here + + + + Throttle + + + + + Pitch + + + + + + + Advanced settings + + + + true + + + + 10 + 20 + 251 + 141 + + + + + 0 + 0 + + + + QFrame::StyledPanel + + + QFrame::Plain + + + 0 + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + false + + + false + + + true + + + QAbstractItemView::SingleSelection + + + + ServoW + + + + + ServoX + + + + + ServoY + + + + + ServoZ + + + + + Angle + + + + + Output + + + + + 0 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 8 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 60 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 5 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 180 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 1 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 300 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + 0 + + + AlignHCenter|AlignVCenter|AlignCenter + + + + + + + 10 + 180 + 101 + 30 + + + + CollectiveConstant: + + + + + true + + + + 10 + 260 + 91 + 16 + + + + CorrectionAngle: + + + + + + 10 + 290 + 101 + 30 + + + + Throttle Output + + + + + + 10 + 320 + 81 + 30 + + + + Tail Rotor Servo + + + + + + 90 + 290 + 151 + 21 + + + + + 10 + + + + Select aircraft type here + + + 2 + + + + 0 + + + + + 1 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + 5 + + + + + 6 + + + + + 7 + + + + + 8 + + + + + + + 90 + 320 + 151 + 21 + + + + + 10 + + + + Select aircraft type here + + + 3 + + + + 0 + + + + + 1 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + 5 + + + + + 6 + + + + + 7 + + + + + 8 + + + + + + + 130 + 180 + 62 + 22 + + + + 1.000000000000000 + + + 0.050000000000000 + + + 0.500000000000000 + + + + + true + + + + 130 + 260 + 62 + 22 + + + + 0 + + + 360.000000000000000 + + + 15.000000000000000 + + + + + + 300 + 10 + 371 + 331 + + + + + + false + + + + 130 + 220 + 62 + 22 + + + + 1.000000000000000 + + + 0.050000000000000 + + + 0.500000000000000 + + + + + false + + + + 10 + 210 + 101 + 40 + + + + RevoConstant: + + + + + + + + 10 + 570 + 93 + 27 + + + + Retrieve settings from OpenPilot + + + Get Current + + + + + + 510 + 570 + 93 + 27 + + + + Send to OpenPilot but don't write in SD. + + + Save to RAM + + + + + + 620 + 570 + 93 + 27 + + + + Applies and Saves all settings to SD + + + Save to SD + + + + + + diff --git a/ground/src/plugins/config/configccpmwidget.cpp b/ground/src/plugins/config/configccpmwidget.cpp index 73809345c..eac03495b 100644 --- a/ground/src/plugins/config/configccpmwidget.cpp +++ b/ground/src/plugins/config/configccpmwidget.cpp @@ -85,10 +85,16 @@ ConfigccpmWidget::ConfigccpmWidget(QWidget *parent) : ConfigTaskWidget(parent) QStringList channels; channels << "Channel0" << "Channel1" << "Channel2" << "Channel3" << "Channel4" << "Channel5" << "Channel6" << "Channel7" << "None" ; + m_ccpm->ccpmEngineChannel->addItems(channels); + m_ccpm->ccpmTailChannel->addItems(channels); + m_ccpm->ccpmServoWChannel->addItems(channels); + m_ccpm->ccpmServoXChannel->addItems(channels); + m_ccpm->ccpmServoYChannel->addItems(channels); + m_ccpm->ccpmServoZChannel->addItems(channels); - m_ccpm->ccpmThrottle->addItems(channels); - m_ccpm->ccpmTailRotor->addItems(channels); - + QStringList Types; + Types << "CCPM 90º" << "CCPM 120º" << "CCPM 140º" ; + m_ccpm->ccpmType->addItems(Types); requestccpmUpdate(); UpdateCurveSettings();