Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 480 → Rev 481

/QMK-Groundstation/trunk/Classes/cSettings.cpp
181,8 → 181,10
Setting.endGroup();
 
Setting.beginGroup("Map");
Map.GotoPosition = Setting.value("Goto_Position",true).toBool();
Map.ShowTrack = Setting.value("Show_Track",true).toBool();
Map.GotoPosition = Setting.value("Goto_Position",true).toBool();
Map.ShowTrack = Setting.value("Show_Track",true).toBool();
Map.LastLatitude = Setting.value("Last_Latitude",13.5).toDouble();
Map.LastLongitude = Setting.value("Last_Longitude",52.5).toDouble();
Setting.endGroup();
 
Setting.beginGroup("Dirs");
251,6 → 253,9
Setting.beginGroup("Map");
Setting.setValue("Goto_Position", Map.GotoPosition);
Setting.setValue("Show_Track", Map.ShowTrack);
Setting.setValue("Last_Latitude", Map.LastLatitude);
Setting.setValue("Last_Longitude", Map.LastLongitude);
 
Setting.endGroup();
 
Setting.beginGroup("MKData");
/QMK-Groundstation/trunk/Classes/cSettings.h
43,6 → 43,8
{
bool GotoPosition;
bool ShowTrack;
double LastLatitude;
double LastLongitude;
};
 
struct set_Data
/QMK-Groundstation/trunk/Forms/dlg_Map.cpp
17,6 → 17,9
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#include "dlg_Map.h"
#include "dlg_MapPos.h"
 
 
#include <QDomDocument>
#include <QFile>
 
71,7 → 74,8
o_Map->addLayer(o_Route);
 
o_Map->setZoom(17);
o_Map->setView(QPointF(13.5,52.5));
// o_Map->setView(QPointF(13.5,52.5));
o_Map->setView(QPointF(o_Settings->Map.LastLongitude,o_Settings->Map.LastLatitude));
 
connect(o_Map, SIGNAL(mouseEventCoordinate(const QMouseEvent*, const QPointF)), this, SLOT(slot_Click(const QMouseEvent*, const QPointF)));
 
291,6 → 295,9
{
sWayPoint WayPoint;
 
o_Settings->Map.LastLongitude = x;
o_Settings->Map.LastLatitude = y;
 
WayPoint.Longitude = x;
WayPoint.Latitude = y;
// WayPoint.Time = sb_Time->value();
435,20 → 442,20
 
if (!Filename.isEmpty())
{
QFile f_Points(Filename + ".pos");
QFile *f_Points = new QFile(Filename + ".pos");
 
if (f_Points.exists())
if (f_Points->exists())
{
f_Points.open(QIODevice::ReadOnly | QIODevice::Text);
f_Points->open(QIODevice::ReadOnly | QIODevice::Text);
 
QString s_Points;
 
while (!f_Points.atEnd())
while (!f_Points->atEnd())
{
s_Points.append(f_Points.readLine());
s_Points.append(f_Points->readLine());
}
 
f_Points.close();
f_Points->close();
 
QStringList s_Pos = s_Points.split(",");
 
457,6 → 464,33
o_Layer->addGeometry(fip);
o_Map->updateRequestNew();
}
else
{
dlg_MapPos *f_MapPos = new dlg_MapPos(this);
 
if (f_MapPos->exec()==QDialog::Accepted)
{
QString Data = f_MapPos->get_Data();
 
f_Points->open(QIODevice::ReadWrite | QIODevice::Text);
 
QTextStream out(f_Points);
 
out.setRealNumberPrecision(9);
 
out << Data << "\n";
 
f_Points->close();
 
QStringList s_Pos = Data.split(",");
 
FixedImageOverlay* fip = new FixedImageOverlay(s_Pos[0].toDouble(), s_Pos[1].toDouble(), s_Pos[2].toDouble(), s_Pos[3].toDouble(), Filename);
 
o_Layer->addGeometry(fip);
o_Map->updateRequestNew();
}
 
}
}
}
 
/QMK-Groundstation/trunk/Forms/dlg_MapPos.cpp
0,0 → 1,29
/***************************************************************************
* Copyright (C) 2009 by Manuel Schrape *
* manuel.schrape@gmx.de *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#include "dlg_MapPos.h"
 
dlg_MapPos::dlg_MapPos(QWidget *parent) : QDialog(parent)
{
setupUi(this);
}
 
QString dlg_MapPos::get_Data()
{
return QString(le_Links->text().replace(",", ".") + ", " + le_Oben->text().replace(",", ".") + ", " + le_Rechts->text().replace(",", ".") + ", " + le_Unten->text().replace(",", "."));
}
/QMK-Groundstation/trunk/Forms/dlg_MapPos.h
0,0 → 1,38
/***************************************************************************
* Copyright (C) 2009 by Manuel Schrape *
* manuel.schrape@gmx.de *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#ifndef DLG_MAPPOS_H
#define DLG_MAPPOS_H
 
#include <QDialog>
 
#include "ui_dlg_MapPos.h"
 
#include "../Classes/cSettings.h"
#include "../global.h"
 
class dlg_MapPos : public QDialog, public Ui::dlg_MapPos_UI
{
Q_OBJECT
 
public:
dlg_MapPos(QWidget *parent = 0);
QString get_Data();
};
 
#endif // DLG_MAPPOS_H
/QMK-Groundstation/trunk/Forms/dlg_MapPos.ui
0,0 → 1,162
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>dlg_MapPos_UI</class>
<widget class="QDialog" name="dlg_MapPos_UI">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>376</width>
<height>129</height>
</rect>
</property>
<property name="windowTitle">
<string>Karten-Positionen</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>116</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="le_Oben"/>
</item>
<item row="0" column="3">
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>116</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="0">
<widget class="QLineEdit" name="le_Links"/>
</item>
<item row="1" column="1">
<spacer name="horizontalSpacer_6">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>115</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="2" colspan="2">
<widget class="QLineEdit" name="le_Rechts"/>
</item>
<item row="2" column="0">
<spacer name="horizontalSpacer_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>116</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="1" colspan="2">
<widget class="QLineEdit" name="le_Unten"/>
</item>
<item row="2" column="3">
<spacer name="horizontalSpacer_5">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>116</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="3" column="0" colspan="4">
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="pb_Save">
<property name="text">
<string>Speichern</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton">
<property name="text">
<string>Abbrechen</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<resources/>
<connections>
<connection>
<sender>pb_Save</sender>
<signal>clicked()</signal>
<receiver>dlg_MapPos_UI</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>227</x>
<y>109</y>
</hint>
<hint type="destinationlabel">
<x>108</x>
<y>100</y>
</hint>
</hints>
</connection>
<connection>
<sender>pushButton</sender>
<signal>clicked()</signal>
<receiver>dlg_MapPos_UI</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>340</x>
<y>112</y>
</hint>
<hint type="destinationlabel">
<x>339</x>
<y>65</y>
</hint>
</hints>
</connection>
</connections>
</ui>
/QMK-Groundstation/trunk/Forms/mktool.cpp
471,7 → 471,7
}
}
 
// Hardware-Auswahl im Menp
// Hardware-Auswahl im Menü
void MKTool::slot_ac_Hardware()
{
QAction *Action = (QAction*)sender();
/QMK-Groundstation/trunk/Forms/mktool.ui
1075,9 → 1075,6
<property name="text">
<string>Meldungen </string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="6">
2550,6 → 2547,11
<header>qwt_compass.h</header>
</customwidget>
<customwidget>
<class>QwtDial</class>
<extends>QWidget</extends>
<header>qwt_dial.h</header>
</customwidget>
<customwidget>
<class>QwtSlider</class>
<extends>QWidget</extends>
<header>qwt_slider.h</header>
/QMK-Groundstation/trunk/Forms/wdg_Settings.cpp
279,7 → 279,7
 
void wdg_Settings::slot_LoadParameter() // DONE 0.71g
{
QString Filename = QFileDialog::getOpenFileName(this, "Mikrokopter Parameter laden", Config->DIR.Parameter + "", "Mikrokopter Parameter(*.mkp);;Alle Dateien (*)");
QString Filename = QFileDialog::getOpenFileName(this, "Mikrokopter Parameter laden", Config->DIR.Parameter + "/", "Mikrokopter Parameter(*.mkp);;Alle Dateien (*)");
 
if (!Filename.isEmpty())
{
345,10 → 345,17
Setting.beginGroup("Camera");
ParameterSet[Set][P_SERVO_NICK_CONT] = Setting.value("ServoNickControl", 100).toInt();
ParameterSet[Set][P_SERVO_NICK_COMP] = Setting.value("ServoNickCompensation", 40).toInt();
ParameterSet[Set][P_SERVO_NICK_COMPI] = Setting.value("ServoNickInvert", 0).toInt();
ParameterSet[Set][P_SERVO_NICK_MIN] = Setting.value("ServoNickMin", 50).toInt();
ParameterSet[Set][P_SERVO_NICK_MAX] = Setting.value("ServoNickMax", 150).toInt();
ParameterSet[Set][P_SERVO_NICK_REFR] = Setting.value("ServoNickRefreshRate", 5).toInt();
 
ParameterSet[Set][P_SERVO_ROLL_CONT] = Setting.value("ServoRollControl", 100).toInt();
ParameterSet[Set][P_SERVO_ROLL_COMP] = Setting.value("ServoRollCompensation", 40).toInt();
ParameterSet[Set][P_SERVO_ROLL_MIN] = Setting.value("ServoRollMin", 50).toInt();
ParameterSet[Set][P_SERVO_ROLL_MAX] = Setting.value("ServoRollMax", 150).toInt();
 
ParameterSet[Set][P_SERVO_COMPI] = Setting.value("ServoInvert", 0).toInt();
 
ParameterSet[Set][P_SERVO_REFR] = Setting.value("ServoNickRefreshRate", 5).toInt();
Setting.endGroup();
 
Setting.beginGroup("Others");
505,9 → 512,20
ParameterSet[Set][P_SERVO_NICK_COMP] = sb_6_2->value();
ParameterSet[Set][P_SERVO_NICK_MIN] = sb_6_3->value();
ParameterSet[Set][P_SERVO_NICK_MAX] = sb_6_4->value();
ParameterSet[Set][P_SERVO_NICK_REFR] = sb_6_5->value();
ParameterSet[Set][P_SERVO_NICK_COMPI] = cb_6_6->isChecked();
// ParameterSet[Set][P_SERVO_NICK_COMPI] = cb_6_6->isChecked();
 
ParameterSet[Set][P_SERVO_ROLL_CONT] = get_Value(cb_6_7);
ParameterSet[Set][P_SERVO_ROLL_COMP] = sb_6_8->value();
ParameterSet[Set][P_SERVO_ROLL_MIN] = sb_6_10->value();
ParameterSet[Set][P_SERVO_ROLL_MAX] = sb_6_11->value();
 
ParameterSet[Set][P_SERVO_REFR] = sb_6_5->value();
 
if (cb_6_6->isChecked())
ParameterSet[Set][P_SERVO_COMPI] = ParameterSet[Set][P_SERVO_COMPI] | 0x01;
if (cb_6_9->isChecked())
ParameterSet[Set][P_SERVO_COMPI] = ParameterSet[Set][P_SERVO_COMPI] | 0x02;
 
// Seite 7
ParameterSet[Set][P_GAS_MIN] = sb_7_1->value();
ParameterSet[Set][P_GAS_MAX] = sb_7_2->value();
531,9 → 549,8
ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x04;
if (tb_9_9->text() == QString("1"))
ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x08;
// if (cb_4_7->isChecked())
// ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x10;
 
 
ParameterSet[Set][P_LOOP_GAS_LIMIT] = get_Value(cb_9_1);
ParameterSet[Set][P_LOOP_THRESHOLD] = sb_9_2->value();
ParameterSet[Set][P_WINKEL_NICK] = sb_9_3->value();
581,7 → 598,7
{
int Set = sb_Set->value() + 5;
 
QString Filename = QFileDialog::getSaveFileName(this, "Mikrokopter Parameter speichern", Config->DIR.Parameter + "" + le_SetName->text(), "Mikrokopter Parameter(*.mkp);;Alle Dateien (*)");
QString Filename = QFileDialog::getSaveFileName(this, "Mikrokopter Parameter speichern", Config->DIR.Parameter + "/" + le_SetName->text(), "Mikrokopter Parameter(*.mkp);;Alle Dateien (*)");
 
if (!Filename.isEmpty())
{
638,10 → 655,16
Setting.beginGroup("Camera");
Setting.setValue("ServoNickControl", ParameterSet[Set][P_SERVO_NICK_CONT]);
Setting.setValue("ServoNickCompensation", ParameterSet[Set][P_SERVO_NICK_COMP]);
Setting.setValue("ServoNickInvert", ParameterSet[Set][P_SERVO_NICK_COMPI]);
Setting.setValue("ServoNickMin", ParameterSet[Set][P_SERVO_NICK_MIN]);
Setting.setValue("ServoNickMax", ParameterSet[Set][P_SERVO_NICK_MAX]);
Setting.setValue("ServoNickRefreshRate", ParameterSet[Set][P_SERVO_NICK_REFR]);
 
Setting.setValue("ServoRollControl", ParameterSet[Set][P_SERVO_ROLL_CONT]);
Setting.setValue("ServoRollCompensation", ParameterSet[Set][P_SERVO_ROLL_COMP]);
Setting.setValue("ServoRollMin", ParameterSet[Set][P_SERVO_ROLL_MIN]);
Setting.setValue("ServoRollMax", ParameterSet[Set][P_SERVO_ROLL_MAX]);
 
Setting.setValue("ServoInvert", ParameterSet[Set][P_SERVO_COMPI]);
Setting.setValue("ServoNickRefreshRate", ParameterSet[Set][P_SERVO_REFR]);
Setting.endGroup();
 
Setting.beginGroup("Others");
811,8 → 834,16
sb_6_2->setValue(FCSettings[P_SERVO_NICK_COMP]);
sb_6_3->setValue(FCSettings[P_SERVO_NICK_MIN]);
sb_6_4->setValue(FCSettings[P_SERVO_NICK_MAX]);
sb_6_5->setValue(FCSettings[P_SERVO_NICK_REFR]);
cb_6_6->setChecked(FCSettings[P_SERVO_NICK_COMPI]);
 
cb_6_7 = setCombo(cb_6_7, Set, FCSettings[P_SERVO_ROLL_CONT]);
sb_6_8->setValue(FCSettings[P_SERVO_ROLL_COMP]);
sb_6_10->setValue(FCSettings[P_SERVO_ROLL_MIN]);
sb_6_11->setValue(FCSettings[P_SERVO_ROLL_MAX]);
 
cb_6_6->setChecked(FCSettings[P_SERVO_COMPI] & 0x01);
cb_6_9->setChecked(FCSettings[P_SERVO_COMPI] & 0x02);
 
sb_6_5->setValue(FCSettings[P_SERVO_REFR]);
}
// Seite 7
{
/QMK-Groundstation/trunk/Forms/wdg_Settings.ui
231,7 → 231,7
<enum>QFrame::Box</enum>
</property>
<property name="currentIndex">
<number>3</number>
<number>0</number>
</property>
<widget class="QWidget" name="page">
<layout class="QGridLayout" name="gridLayout_7">
1970,7 → 1970,39
</widget>
<widget class="QWidget" name="Seite_6">
<layout class="QGridLayout" name="gridLayout_39">
<item row="0" column="0">
<item row="0" column="2">
<widget class="QTextEdit" name="te_Help_6">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>200</width>
<height>16777215</height>
</size>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
<property name="html">
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600; text-decoration: underline;&quot;&gt;Einstellungen für das Kamera-Servo an J7 der FlightCtrl.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Servo-Control: &lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt;Servowert zum Schwenken der Kamera. Entweder fixen Wert, oder Poti eintragen. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Nick-Kompensation: &lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt;Einfluss des Nickwinkels auf den Servo. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Invert direction:&lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt; Drehrichtung invertieren. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Servo Min:&lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt; Minimalwert als Anschlag. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Servo Max:&lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt; Maximalwert als Anschlag. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Servo Refresh-Rate:&lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt; Ansteuergeschwindigkeit. Einige Servos können nicht mit schnellen Werten angesteuert werden &lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QFrame" name="frame_7">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
1984,9 → 2016,9
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QGridLayout" name="gridLayout_21">
<item row="0" column="0">
<widget class="QLabel" name="label_55">
<layout class="QGridLayout" name="gridLayout_10">
<item row="0" column="1">
<widget class="QLabel" name="label_137">
<property name="font">
<font>
<weight>75</weight>
1994,11 → 2026,24
</font>
</property>
<property name="text">
<string>Servo Control:</string>
<string>Nick</string>
</property>
</widget>
</item>
<item row="0" column="1" colspan="2">
<item row="0" column="2">
<widget class="QLabel" name="label_138">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Roll</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QComboBox" name="cb_6_1">
<property name="editable">
<bool>true</bool>
2030,15 → 2075,40
</item>
</widget>
</item>
<item row="0" column="3">
<widget class="QLabel" name="label_54">
<property name="text">
<string>[0..250]</string>
<item row="1" column="2">
<widget class="QComboBox" name="cb_6_7">
<property name="editable">
<bool>true</bool>
</property>
<item>
<property name="text">
<string>Poti 1</string>
</property>
</item>
<item>
<property name="text">
<string>Poti 2</string>
</property>
</item>
<item>
<property name="text">
<string>Poti 3</string>
</property>
</item>
<item>
<property name="text">
<string>Poti 4</string>
</property>
</item>
<item>
<property name="text">
<string>0</string>
</property>
</item>
</widget>
</item>
<item row="1" column="0" rowspan="2">
<widget class="QLabel" name="label_56">
<item row="5" column="0">
<widget class="QLabel" name="label_130">
<property name="font">
<font>
<weight>75</weight>
2046,25 → 2116,25
</font>
</property>
<property name="text">
<string>Nick-Kompensation</string>
<string>Richtung invertieren</string>
</property>
</widget>
</item>
<item row="1" column="1" rowspan="2" colspan="2">
<widget class="QSpinBox" name="sb_6_2">
<property name="maximum">
<number>250</number>
<item row="5" column="1">
<widget class="QCheckBox" name="cb_6_6">
<property name="text">
<string/>
</property>
</widget>
</item>
<item row="1" column="3" rowspan="2">
<widget class="QCheckBox" name="cb_6_6">
<item row="5" column="2">
<widget class="QCheckBox" name="cb_6_9">
<property name="text">
<string>Invert direction</string>
<string/>
</property>
</widget>
</item>
<item row="4" column="0">
<item row="6" column="0">
<widget class="QLabel" name="label_57">
<property name="font">
<font>
2077,7 → 2147,7
</property>
</widget>
</item>
<item row="4" column="1" colspan="2">
<item row="6" column="1">
<widget class="QSpinBox" name="sb_6_3">
<property name="maximum">
<number>250</number>
2084,7 → 2154,14
</property>
</widget>
</item>
<item row="4" column="3">
<item row="6" column="2">
<widget class="QSpinBox" name="sb_6_10">
<property name="maximum">
<number>250</number>
</property>
</widget>
</item>
<item row="6" column="3">
<widget class="QLabel" name="label_61">
<property name="text">
<string>[0..250]</string>
2091,7 → 2168,7
</property>
</widget>
</item>
<item row="5" column="0">
<item row="7" column="0">
<widget class="QLabel" name="label_58">
<property name="font">
<font>
2104,7 → 2181,7
</property>
</widget>
</item>
<item row="5" column="1" colspan="2">
<item row="7" column="1">
<widget class="QSpinBox" name="sb_6_4">
<property name="maximum">
<number>250</number>
2111,7 → 2188,14
</property>
</widget>
</item>
<item row="5" column="3">
<item row="7" column="2">
<widget class="QSpinBox" name="sb_6_11">
<property name="maximum">
<number>250</number>
</property>
</widget>
</item>
<item row="7" column="3">
<widget class="QLabel" name="label_62">
<property name="text">
<string>[0..250]</string>
2118,7 → 2202,7
</property>
</widget>
</item>
<item row="8" column="0">
<item row="10" column="0">
<widget class="QLabel" name="label_59">
<property name="font">
<font>
2131,54 → 2215,82
</property>
</widget>
</item>
<item row="8" column="1" colspan="2">
<widget class="QSpinBox" name="sb_6_5">
<item row="10" column="3">
<widget class="QLabel" name="label_63">
<property name="text">
<string>[0..250]</string>
</property>
</widget>
</item>
<item row="2" column="2">
<widget class="QSpinBox" name="sb_6_8">
<property name="maximum">
<number>250</number>
</property>
</widget>
</item>
<item row="8" column="3">
<widget class="QLabel" name="label_63">
<item row="2" column="1">
<widget class="QSpinBox" name="sb_6_2">
<property name="maximum">
<number>250</number>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_55">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>[0..250]</string>
<string>Servo Control:</string>
</property>
</widget>
</item>
<item row="3" column="1">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
<item row="2" column="0">
<widget class="QLabel" name="label_56">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
<property name="text">
<string>Kompensation:</string>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>10</height>
</size>
</widget>
</item>
<item row="2" column="3">
<widget class="QLabel" name="label_54">
<property name="text">
<string>[0..250]</string>
</property>
</spacer>
</widget>
</item>
<item row="7" column="1">
<item row="10" column="1" colspan="2">
<widget class="QSpinBox" name="sb_6_5">
<property name="maximum">
<number>250</number>
</property>
</widget>
</item>
<item row="11" column="1">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>121</width>
<height>10</height>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row="9" column="1">
<spacer name="verticalSpacer_3">
<item row="8" column="1">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
2185,7 → 2297,7
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>65</height>
<height>40</height>
</size>
</property>
</spacer>
2193,38 → 2305,6
</layout>
</widget>
</item>
<item row="0" column="1">
<widget class="QTextEdit" name="te_Help_6">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>200</width>
<height>16777215</height>
</size>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
<property name="html">
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600; text-decoration: underline;&quot;&gt;Einstellungen für das Kamera-Servo an J7 der FlightCtrl.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Servo-Control: &lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt;Servowert zum Schwenken der Kamera. Entweder fixen Wert, oder Poti eintragen. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Nick-Kompensation: &lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt;Einfluss des Nickwinkels auf den Servo. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Invert direction:&lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt; Drehrichtung invertieren. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Servo Min:&lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt; Minimalwert als Anschlag. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Servo Max:&lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt; Maximalwert als Anschlag. &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;Servo Refresh-Rate:&lt;/span&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt; Ansteuergeschwindigkeit. Einige Servos können nicht mit schnellen Werten angesteuert werden &lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="Seite_7">
2470,6 → 2550,17
</property>
</spacer>
</item>
<item row="6" column="0" colspan="3">
<widget class="QLabel" name="label_142">
<property name="text">
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; color:#550000;&quot;&gt;Eine Zelle oder Total (&lt;/span&gt;&lt;span style=&quot; font-weight:600; color:#550000;&quot;&gt;3s=9.6V / 4s=12.8V&lt;/span&gt;&lt;span style=&quot; color:#550000;&quot;&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
4727,7 → 4818,7
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans Serif'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600; text-decoration: underline;&quot;&gt;Einstellungen für das Navi-Ctrl.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;GPS Mode Control:&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt;0 = AID, 100 = Free, 200 = Coming Home&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt;0 = Free, 100 = Position Hold, 200 = Coming Home&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt; font-weight:600;&quot;&gt;GPS Stick Threshold:&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:11pt;&quot;&gt;0 = Position Hold by Mode Control&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
/QMK-Groundstation/trunk/Parameter_Positions.h
67,11 → 67,11
///////////////////////////////////
 
#ifdef _BETA_
static const int VERSION_SETTINGS = 75;
static const int VERSION_SETTINGS = 76;
static const int VERSION_OSD = 1;
static const int VERSION_MIXER = 1;
#else
static const int VERSION_SETTINGS = 75;
static const int VERSION_SETTINGS = 76;
static const int VERSION_OSD = 1;
static const int VERSION_MIXER = 1;
#endif
78,7 → 78,7
 
static const int MAXMOTOR = 12;
 
static const int MaxParameter = 93;
static const int MaxParameter = 98;
 
static const int P_KANAL_GAS = 0;
static const int P_KANAL_GIER = 1;
121,50 → 121,55
static const int P_SERVO_NICK_COMP = 35;
static const int P_SERVO_NICK_MIN = 36;
static const int P_SERVO_NICK_MAX = 37;
static const int P_SERVO_NICK_REFR = 38;
static const int P_LOOP_GAS_LIMIT = 39;
static const int P_SERVO_ROLL_CONT = 38;
static const int P_SERVO_ROLL_COMP = 39;
 
static const int P_LOOP_THRESHOLD = 40;
static const int P_LOOP_HYSTERESE = 41;
static const int P_ACHS_KOPPLUNG1 = 42;
static const int P_ACHS_KOPPLUNG2 = 43;
static const int P_ACHS_GKOPPLUNG = 44;
static const int P_WINKEL_NICK = 45;
static const int P_WINKEL_ROLL = 46;
static const int P_GYRO_ACC_ABGL = 47;
static const int P_DRIFT_KOMP = 48;
static const int P_DYNAMIC_STAB = 49;
static const int P_SERVO_ROLL_MIN = 40;
static const int P_SERVO_ROLL_MAX = 41;
static const int P_SERVO_REFR = 42;
static const int P_LOOP_GAS_LIMIT = 43;
static const int P_LOOP_THRESHOLD = 44;
static const int P_LOOP_HYSTERESE = 45;
static const int P_ACHS_KOPPLUNG1 = 46;
static const int P_ACHS_KOPPLUNG2 = 47;
static const int P_ACHS_GKOPPLUNG = 48;
static const int P_WINKEL_NICK = 49;
 
static const int P_USER_5 = 50;
static const int P_USER_6 = 51;
static const int P_USER_7 = 52;
static const int P_USER_8 = 53;
static const int P_J16_BITMASK = 54;
static const int P_J16_TIMING = 55;
static const int P_J17_BITMASK = 56;
static const int P_J17_TIMING = 57;
static const int P_NAV_GPS_MODE = 58;
static const int P_NAV_GPS_GAIN = 59;
static const int P_WINKEL_ROLL = 50;
static const int P_GYRO_ACC_ABGL = 51;
static const int P_DRIFT_KOMP = 52;
static const int P_DYNAMIC_STAB = 53;
static const int P_USER_5 = 54;
static const int P_USER_6 = 55;
static const int P_USER_7 = 56;
static const int P_USER_8 = 57;
static const int P_J16_BITMASK = 58;
static const int P_J16_TIMING = 59;
 
static const int P_NAV_GPS_P = 60;
static const int P_NAV_GPS_I = 61;
static const int P_NAV_GPS_D = 62;
static const int P_NAV_GPS_P_LIMIT = 63;
static const int P_NAV_GPS_I_LIMIT = 64;
static const int P_NAV_GPS_D_LIMIT = 65;
static const int P_NAV_GPS_ACC = 66;
static const int P_NAV_GPS_MIN = 67;
static const int P_NAV_STICK_THRE = 68;
static const int P_NAV_WIND_CORR = 69;
static const int P_J17_BITMASK = 60;
static const int P_J17_TIMING = 61;
static const int P_NAV_GPS_MODE = 62;
static const int P_NAV_GPS_GAIN = 63;
static const int P_NAV_GPS_P = 64;
static const int P_NAV_GPS_I = 65;
static const int P_NAV_GPS_D = 66;
static const int P_NAV_GPS_P_LIMIT = 67;
static const int P_NAV_GPS_I_LIMIT = 68;
static const int P_NAV_GPS_D_LIMIT = 69;
 
static const int P_NAV_SPEED_COMP = 70;
static const int P_NAV_RADIUS = 71;
static const int P_NAV_ANGLE_LIMIT = 72;
static const int P_NAV_PH_LOGINTIME = 73;
static const int P_EXTERNAL = 74;
static const int P_LOOP_CONFIG = 75;
static const int P_SERVO_NICK_COMPI = 76;
static const int P_RESERVED = 77;
static const int P_NAME = 81;
static const int P_NAV_GPS_ACC = 70;
static const int P_NAV_GPS_MIN = 71;
static const int P_NAV_STICK_THRE = 72;
static const int P_NAV_WIND_CORR = 73;
static const int P_NAV_SPEED_COMP = 74;
static const int P_NAV_RADIUS = 75;
static const int P_NAV_ANGLE_LIMIT = 76;
static const int P_NAV_PH_LOGINTIME = 77;
static const int P_EXTERNAL = 78;
static const int P_LOOP_CONFIG = 79;
 
static const int P_SERVO_COMPI = 80;
static const int P_RESERVED = 81;
static const int P_NAME = 85;
 
#endif
/QMK-Groundstation/trunk/global.h
56,14 → 56,14
static const int SLEEP = 500000;
 
static const QString QA_NAME = "QMK-Groundstation";
static const QString QA_VERSION_NR = "0.8.7";
static const QString QA_VERSION_NR = "0.8.10";
 
#ifdef _BETA_
static const QString QA_VERSION = QA_VERSION_NR + " (BETA)";
static const QString QA_HWVERSION = "FlightCtrl v0.73d & NaviCtrl v0.15c";
static const QString QA_HWVERSION = "FlightCtrl v0.75a & NaviCtrl v0.15c";
#else
static const QString QA_VERSION = QA_VERSION_NR;
static const QString QA_HWVERSION = "FlightCtrl v0.73d & NaviCtrl v0.15c";
static const QString QA_HWVERSION = "FlightCtrl v0.75a & NaviCtrl v0.15c";
#endif
 
#ifdef Q_OS_LINUX
81,7 → 81,7
#endif
 
 
static const QString QA_DATE = "13.04.2009";
static const QString QA_DATE = "28.05.2009";
static const QString QA_YEAR = "2008-2009";
static const QString QA_AUTHOR = "Manuel Schrape";
static const QString QA_EMAIL = "manuel.schrape@gmx.de";
91,7 → 91,7
"<p><b><font size=8>" + QA_NAME + "</font></b></p>"
"<br />"
"Version " + QA_VERSION + " - " + QA_DATE + " on " + QA_OS + ""
"<br /><b>kompatibel zu " + QA_HWVERSION + "</b>"
"<br /><br /><b>kompatibel zu " + QA_HWVERSION + "</b>"
"<br /><br />"
"(C) " + QA_YEAR + " by " + QA_AUTHOR + " - "
"<a href=\"mailto:" + QA_EMAIL + "\">" + QA_EMAIL + "</a> <br /><br />"
/QMK-Groundstation/trunk/global.pri
35,6 → 35,7
Forms/dlg_LCD.cpp \
Classes/cConnection.cpp \
Forms/dlg_Map.cpp \
Forms/dlg_MapPos.cpp \
Forms/dlg_MotorMixer.cpp
win32:SOURCES += SerialPort/win_qextserialport.cpp
unix:SOURCES += SerialPort/posix_qextserialport.cpp
63,6 → 64,7
Classes/cConnection.h \
typedefs.h \
Forms/dlg_Map.h \
Forms/dlg_MapPos.h \
Forms/dlg_MotorMixer.h
 
win32:HEADERS += SerialPort/win_qextserialport.h
76,4 → 78,5
Forms/wdg_Settings.ui \
Forms/dlg_LCD.ui \
Forms/dlg_Map.ui \
Forms/dlg_MapPos.ui \
Forms/dlg_MotorMixer.ui