Mission Planner 1.2.2

add DegreeTracker
fix popout tab on config page
add remember last config tab
fix bytes send count
fix deactivate bug
fix ap_limits bug
fix ap_mount bug
This commit is contained in:
Michael Oborne 2012-08-02 18:04:54 +08:00
parent e0e0fe0ce5
commit 7a887bb27d
25 changed files with 529 additions and 254 deletions

View File

@ -0,0 +1,130 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ArdupilotMega.Antenna
{
class DegreeTracker : ITrackerOutput
{
public Comms.SerialPort ComPort { get; set; }
/// <summary>
/// 0-360
/// </summary>
public double TrimPan { get; set; }
/// <summary>
/// -90 - 90
/// </summary>
public double TrimTilt { get; set; }
public int PanStartRange { get; set; }
public int TiltStartRange { get; set; }
public int PanEndRange { get; set; }
public int TiltEndRange { get; set; }
public int PanPWMRange { get; set; }
public int TiltPWMRange { get; set; }
public bool PanReverse { get { return _panreverse == 1; } set { _panreverse = value == true ? -1 : 1; } }
public bool TiltReverse { get { return _tiltreverse == 1; } set { _tiltreverse = value == true ? -1 : 1; } }
int _panreverse = 1;
int _tiltreverse = 1;
int currentpan = 1500;
int currenttilt = 1500;
public bool Init()
{
/* if ((PanStartRange - PanEndRange) == 0)
{
System.Windows.Forms.CustomMessageBox.Show("Invalid Pan Range", "Error");
return false;
}
if ((TiltStartRange - TiltEndRange) == 0)
{
System.Windows.Forms.CustomMessageBox.Show("Invalid Tilt Range", "Error");
return false;
}
*/
try
{
ComPort.Open();
}
catch (Exception ex) { System.Windows.Forms.CustomMessageBox.Show("Connect failed " + ex.Message, "Error"); return false; }
return true;
}
public bool Setup()
{
return true;
}
double wrap_180(double input)
{
if (input > 180)
return input - 360;
if (input < -180)
return input + 360;
return input;
}
double wrap_range(double input, double range)
{
if (input > range)
return input - 360;
if (input < -range)
return input + 360;
return input;
}
public bool Pan(double Angle)
{
currentpan = (int)(Angle*10);
return false;
}
public bool Tilt(double Angle)
{
currenttilt = (int)(Angle * 10);
return false;
}
public bool PanAndTilt(double pan, double tilt)
{
Tilt(tilt);
Pan(pan);
string command = string.Format("!!!PAN:{0:0000},TLT:{1:0000}\n", currentpan, currenttilt);
Console.Write(command);
ComPort.Write(command);
return false;
}
public bool Close()
{
try
{
ComPort.Close();
}
catch { }
return true;
}
short Constrain(double input, double min, double max)
{
if (input < min)
return (short)min;
if (input > max)
return (short)max;
return (short)input;
}
}
}

View File

@ -21,7 +21,8 @@ namespace ArdupilotMega.Antenna
enum interfaces
{
Maestro,
ArduTracker
ArduTracker,
DegreeTracker
}
public Tracker()
@ -110,6 +111,8 @@ namespace ArdupilotMega.Antenna
tracker = new ArdupilotMega.Antenna.Maestro();
if (CMB_interface.Text == "ArduTracker")
tracker = new ArdupilotMega.Antenna.ArduTracker();
if (CMB_interface.Text == "DegreeTracker")
tracker = new ArdupilotMega.Antenna.DegreeTracker();
try
{

View File

@ -232,6 +232,7 @@
</ItemGroup>
<ItemGroup>
<Compile Include="Antenna\ArduTracker.cs" />
<Compile Include="Antenna\DegreeTracker.cs" />
<Compile Include="Antenna\ITrackerOutput.cs" />
<Compile Include="Antenna\Maestro.cs" />
<Compile Include="Antenna\Tracker.cs">

View File

@ -818,6 +818,8 @@ namespace ArdupilotMega
form.Dispose();
form = null;
return dialogResult;
}
@ -834,9 +836,11 @@ namespace ArdupilotMega
TextBox textBox = new TextBox();
ArdupilotMega.Controls.MyButton buttonOk = new ArdupilotMega.Controls.MyButton();
ArdupilotMega.Controls.MyButton buttonCancel = new ArdupilotMega.Controls.MyButton();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainV2));
form.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
form.TopMost = true;
form.TopLevel = true;
//form.TopLevel = true;
form.Text = title;
label.Text = promptText;
@ -861,7 +865,7 @@ namespace ArdupilotMega
form.Controls.AddRange(new Control[] { label, textBox, buttonOk, buttonCancel });
form.ClientSize = new Size(Math.Max(300, label.Right + 10), form.ClientSize.Height);
form.FormBorderStyle = FormBorderStyle.FixedDialog;
form.StartPosition = FormStartPosition.CenterScreen;
form.StartPosition = FormStartPosition.CenterParent;
form.MinimizeBox = false;
form.MaximizeBox = false;
form.AcceptButton = buttonOk;
@ -871,7 +875,9 @@ namespace ArdupilotMega
DialogResult dialogResult = DialogResult.Cancel;
dialogResult = form.ShowDialog();
form.ShowDialog();
dialogResult = form.DialogResult;
if (dialogResult == DialogResult.OK)
{
@ -879,6 +885,8 @@ namespace ArdupilotMega
}
form.Dispose();
form = null;
return dialogResult;
}

View File

@ -33,6 +33,8 @@ namespace ArdupilotMega.Controls.BackstageView
public List<BackstageViewPage> Pages { get { return _items.OfType<BackstageViewPage>().ToList(); } }
private BackstageViewPage popoutPage = null;
public BackstageView()
{
InitializeComponent();
@ -247,6 +249,8 @@ namespace ArdupilotMega.Controls.BackstageView
popoutForm.Text = associatedPage.LinkText;
popoutPage = associatedPage;
popoutForm.BackColor = this.BackColor;
popoutForm.ForeColor = this.ForeColor;
@ -263,6 +267,7 @@ namespace ArdupilotMega.Controls.BackstageView
// clear the controls, so we dont dispose the good control when it closes
((Form)sender).Controls.Clear();
popoutPage = null;
}
private void ButtonClick(object sender, EventArgs e)
@ -314,6 +319,9 @@ namespace ArdupilotMega.Controls.BackstageView
{
foreach (var page in _items)
{
if (popoutPage != null && popoutPage == page)
continue;
if (((BackstageViewPage)page).Page is IDeactivate)
{
((IDeactivate)((BackstageViewPage)(page)).Page).Deactivate();

View File

@ -39,6 +39,10 @@ namespace ArdupilotMega.Controls
.Buffer(TimeSpan.FromSeconds(1))
.Select(bytes => bytes.Sum());
var bytesSentEverySecond = _mavlink.BytesSent
.Buffer(TimeSpan.FromSeconds(1))
.Select(bytes => bytes.Sum());
var subscriptions = new List<IDisposable>
{
// Total number of packets received
@ -94,7 +98,7 @@ namespace ArdupilotMega.Controls
.Select(ToHumanReadableByteCount)
.SubscribeForTextUpdates(txt_BytesSent),
_mavlink.BytesSent
bytesSentEverySecond
.Buffer(TimeSpan.FromSeconds(5), TimeSpan.FromSeconds(1))
.Select(xs => xs.Any() ? xs.Average() : 0)
.Select(x => ToHumanReadableByteCount((int) x))

View File

@ -104,20 +104,20 @@ namespace System.Windows.Forms
Console.WriteLine("CustomMessageBox 1");
if (System.Windows.Forms.Application.OpenForms.Count > 0)
/* if (System.Windows.Forms.Application.OpenForms.Count > 0)
{
msgBoxFrm.StartPosition = FormStartPosition.Manual;
Form parentForm = System.Windows.Forms.Application.OpenForms[0];
// center of first form
msgBoxFrm.Location = new Point(parentForm.Location.X + parentForm.Width / 2 - msgBoxFrm.Width / 2,
parentForm.Location.Y + parentForm.Height / 2 - msgBoxFrm.Height / 2);
Console.WriteLine("CustomMessageBox 2a");
DialogResult test = msgBoxFrm.ShowDialog(null);
Console.WriteLine("CustomMessageBox 2a " + parentForm.Name);
DialogResult test = msgBoxFrm.ShowDialog();
}
else
else*/
{
Console.WriteLine("CustomMessageBox 2b");
DialogResult test = msgBoxFrm.ShowDialog(null);
DialogResult test = msgBoxFrm.ShowDialog();
}
Console.WriteLine("CustomMessageBox 3");

View File

@ -184,7 +184,7 @@ namespace ArdupilotMega.Controls
{
if (!ThisReallyVisible())
{
return;
// return;
}
//base.Refresh();
@ -198,7 +198,7 @@ namespace ArdupilotMega.Controls
{
if (!ThisReallyVisible())
{
return;
// return;
}
base.Invalidate();

View File

@ -41,14 +41,14 @@ namespace ArdupilotMega.Controls
// remove reference
this.Controls.Remove(current.Control);
if (current.Control is IDeactivate)
{
((IDeactivate)(current.Control)).Deactivate();
}
// check if we need to remove the current control
if (!current.Persistent)
{
if (current.Control is IDeactivate)
{
((IDeactivate)(current.Control)).Deactivate();
}
// cleanup
current.Control.Close();

View File

@ -9,6 +9,8 @@ namespace ArdupilotMega.Controls
{
public class MavlinkCheckBox : CheckBox
{
public new event EventHandler CheckedChanged;
[System.ComponentModel.Browsable(true)]
public float OnValue { get; set; }
@ -77,6 +79,9 @@ namespace ArdupilotMega.Controls
void MavlinkCheckBox_CheckedChanged(object sender, EventArgs e)
{
if (this.CheckedChanged != null)
this.CheckedChanged(sender, e);
if (this.Checked)
{
enableControl(true);

View File

@ -2,6 +2,8 @@
using System.ComponentModel;
using System.Threading;
using System.Windows.Forms;
using System.Reflection;
using log4net;
namespace ArdupilotMega.Controls
{
@ -14,6 +16,8 @@ namespace ArdupilotMega.Controls
/// </remarks>
public partial class ProgressReporterDialogue : Form
{
private static readonly ILog log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private Exception workerException;
public ProgressWorkerEventArgs doWorkArgs;
@ -43,6 +47,8 @@ namespace ArdupilotMega.Controls
private void RunBackgroundOperation(object o)
{
log.Info("RunBackgroundOperation");
try
{
Thread.CurrentThread.Name = "ProgressReporterDialogue Background thread";
@ -51,7 +57,11 @@ namespace ArdupilotMega.Controls
// mono fix - ensure the dialog is running
while (this.IsHandleCreated == false)
System.Threading.Thread.Sleep(1);
{
System.Threading.Thread.Sleep(100);
}
log.Info("Focus ctl");
this.Invoke((MethodInvoker)delegate
{
@ -62,7 +72,9 @@ namespace ArdupilotMega.Controls
try
{
log.Info("DoWork");
if (this.DoWork != null) this.DoWork(this, doWorkArgs);
log.Info("DoWork Done");
}
catch(Exception e)
{
@ -241,6 +253,11 @@ namespace ArdupilotMega.Controls
}
}
private void ProgressReporterDialogue_Load(object sender, EventArgs e)
{
this.Focus();
}
}
public class ProgressWorkerEventArgs : EventArgs

View File

@ -131,6 +131,7 @@ namespace ArdupilotMega.Controls
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Progress";
this.TopMost = true;
this.Load += new System.EventHandler(this.ProgressReporterDialogue_Load);
((System.ComponentModel.ISupportInitialize)(this.imgWarning)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();

View File

@ -325,6 +325,7 @@ namespace ArdupilotMega
public DateTime datetime { get; set; }
private object locker = new object();
bool useLocation = false;
public CurrentState()
{
@ -721,8 +722,11 @@ namespace ArdupilotMega
{
var gps = bytearray.ByteArrayToStructure<MAVLink.mavlink_gps_raw_int_t>(6);
lat = gps.lat * 1.0e-7f;
lng = gps.lon * 1.0e-7f;
if (!useLocation)
{
lat = gps.lat * 1.0e-7f;
lng = gps.lon * 1.0e-7f;
}
// alt = gps.alt; // using vfr as includes baro calc
gpsstatus = gps.fix_type;
@ -785,6 +789,8 @@ namespace ArdupilotMega
{
var loc = bytearray.ByteArrayToStructure<MAVLink.mavlink_global_position_int_t>(6);
useLocation = true;
//alt = loc.alt / 1000.0f;
lat = loc.lat / 10000000.0f;
lng = loc.lon / 10000000.0f;

View File

@ -30,24 +30,24 @@
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigAP_Limits));
this.LNK_wiki = new System.Windows.Forms.LinkLabel();
this.LIM_ENABLED = new ArdupilotMega.Controls.MavlinkCheckBox();
this.LIM_ENABLED = new System.Windows.Forms.CheckBox();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.textBox1 = new System.Windows.Forms.TextBox();
this.groupBox5 = new System.Windows.Forms.GroupBox();
this.LIM_GPSLCK_REQ = new ArdupilotMega.Controls.MavlinkCheckBox();
this.LIM_FNC_REQ = new ArdupilotMega.Controls.MavlinkCheckBox();
this.LIM_ALT_REQ = new ArdupilotMega.Controls.MavlinkCheckBox();
this.LIM_GPSLCK_REQ = new System.Windows.Forms.CheckBox();
this.LIM_FNC_REQ = new System.Windows.Forms.CheckBox();
this.LIM_ALT_REQ = new System.Windows.Forms.CheckBox();
this.groupBox4 = new System.Windows.Forms.GroupBox();
this.LIM_REQUIRED = new ArdupilotMega.Controls.MavlinkCheckBox();
this.LIM_REQUIRED = new System.Windows.Forms.CheckBox();
this.myLabel4 = new ArdupilotMega.Controls.MyLabel();
this.LIM_CHANNEL = new System.Windows.Forms.NumericUpDown();
this.myLabel3 = new ArdupilotMega.Controls.MyLabel();
this.LIM_FNC_RAD = new System.Windows.Forms.NumericUpDown();
this.LIM_FNC_SMPL = new ArdupilotMega.Controls.MavlinkCheckBox();
this.LIM_FNC_SMPL = new System.Windows.Forms.CheckBox();
this.groupBox3 = new System.Windows.Forms.GroupBox();
this.LIM_GPSLCK_ON = new ArdupilotMega.Controls.MavlinkCheckBox();
this.LIM_GPSLCK_ON = new System.Windows.Forms.CheckBox();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.LIM_ALT_ON = new ArdupilotMega.Controls.MavlinkCheckBox();
this.LIM_ALT_ON = new System.Windows.Forms.CheckBox();
this.myLabel1 = new ArdupilotMega.Controls.MyLabel();
this.LIM_ALT_MAX = new System.Windows.Forms.NumericUpDown();
this.myLabel2 = new ArdupilotMega.Controls.MyLabel();
@ -281,28 +281,28 @@
#endregion
private System.Windows.Forms.LinkLabel LNK_wiki;
private ArdupilotMega.Controls.MavlinkCheckBox LIM_ENABLED;
private System.Windows.Forms.CheckBox LIM_ENABLED;
private System.Windows.Forms.GroupBox groupBox1;
private Controls.MyLabel myLabel2;
private Controls.MyLabel myLabel1;
private System.Windows.Forms.NumericUpDown LIM_ALT_MAX;
private System.Windows.Forms.NumericUpDown LIM_ALT_MIN;
private System.Windows.Forms.GroupBox groupBox2;
private ArdupilotMega.Controls.MavlinkCheckBox LIM_ALT_ON;
private System.Windows.Forms.CheckBox LIM_ALT_ON;
private System.Windows.Forms.GroupBox groupBox3;
private ArdupilotMega.Controls.MavlinkCheckBox LIM_GPSLCK_ON;
private System.Windows.Forms.CheckBox LIM_GPSLCK_ON;
private System.Windows.Forms.GroupBox groupBox4;
private Controls.MyLabel myLabel3;
private System.Windows.Forms.NumericUpDown LIM_FNC_RAD;
private ArdupilotMega.Controls.MavlinkCheckBox LIM_FNC_SMPL;
private System.Windows.Forms.CheckBox LIM_FNC_SMPL;
private Controls.MyLabel myLabel4;
private System.Windows.Forms.NumericUpDown LIM_CHANNEL;
private ArdupilotMega.Controls.MavlinkCheckBox LIM_REQUIRED;
private System.Windows.Forms.CheckBox LIM_REQUIRED;
private System.Windows.Forms.GroupBox groupBox5;
private ArdupilotMega.Controls.MavlinkCheckBox LIM_FNC_REQ;
private ArdupilotMega.Controls.MavlinkCheckBox LIM_ALT_REQ;
private System.Windows.Forms.CheckBox LIM_FNC_REQ;
private System.Windows.Forms.CheckBox LIM_ALT_REQ;
private System.Windows.Forms.TextBox textBox1;
private ArdupilotMega.Controls.MavlinkCheckBox LIM_GPSLCK_REQ;
private System.Windows.Forms.CheckBox LIM_GPSLCK_REQ;
}
}

View File

@ -93,11 +93,13 @@ namespace ArdupilotMega.GCSViews.ConfigurationView
Console.WriteLine(chk.Name + " "+ copy[key]);
chk.Checked = (float)copy[key] == 1 ? true: false;
chk.Enabled = true;
}
else if (ctls[0].GetType() == typeof(NumericUpDown))
{
NumericUpDown nud = ((NumericUpDown)ctls[0]);
nud.Value = (decimal)(float)copy[key];
nud.Enabled = true;
}
}
}

View File

@ -149,6 +149,9 @@
<data name="LIM_ENABLED.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LIM_ENABLED.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="LIM_ENABLED.Location" type="System.Drawing.Point, System.Drawing">
<value>247, 9</value>
</data>
@ -204,6 +207,9 @@
<data name="LIM_GPSLCK_REQ.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LIM_GPSLCK_REQ.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="LIM_GPSLCK_REQ.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
@ -235,6 +241,9 @@
<data name="LIM_FNC_REQ.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LIM_FNC_REQ.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="LIM_FNC_REQ.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
@ -265,6 +274,9 @@
<data name="LIM_ALT_REQ.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LIM_ALT_REQ.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="LIM_ALT_REQ.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
@ -322,6 +334,9 @@
<data name="LIM_REQUIRED.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LIM_REQUIRED.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="LIM_REQUIRED.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
@ -353,7 +368,7 @@
<value>6, 95</value>
</data>
<data name="myLabel4.Size" type="System.Drawing.Size, System.Drawing">
<value>60, 23</value>
<value>65, 23</value>
</data>
<data name="myLabel4.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
@ -365,7 +380,7 @@
<value>myLabel4</value>
</data>
<data name="&gt;&gt;myLabel4.Type" xml:space="preserve">
<value>ArdupilotMega.Controls.MyLabel, ArdupilotMegaPlanner10, Version=1.1.4579.36338, Culture=neutral, PublicKeyToken=null</value>
<value>ArdupilotMega.Controls.MyLabel, ArdupilotMegaPlanner10, Version=1.1.4597.13822, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;myLabel4.Parent" xml:space="preserve">
<value>groupBox4</value>
@ -410,7 +425,7 @@
<value>myLabel3</value>
</data>
<data name="&gt;&gt;myLabel3.Type" xml:space="preserve">
<value>ArdupilotMega.Controls.MyLabel, ArdupilotMegaPlanner10, Version=1.1.4579.36338, Culture=neutral, PublicKeyToken=null</value>
<value>ArdupilotMega.Controls.MyLabel, ArdupilotMegaPlanner10, Version=1.1.4597.13822, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;myLabel3.Parent" xml:space="preserve">
<value>groupBox4</value>
@ -442,6 +457,9 @@
<data name="LIM_FNC_SMPL.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LIM_FNC_SMPL.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="LIM_FNC_SMPL.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
@ -496,6 +514,9 @@
<data name="LIM_GPSLCK_ON.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LIM_GPSLCK_ON.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="LIM_GPSLCK_ON.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
@ -550,6 +571,9 @@
<data name="LIM_ALT_ON.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LIM_ALT_ON.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="LIM_ALT_ON.Location" type="System.Drawing.Point, System.Drawing">
<value>69, 19</value>
</data>
@ -590,7 +614,7 @@
<value>myLabel1</value>
</data>
<data name="&gt;&gt;myLabel1.Type" xml:space="preserve">
<value>ArdupilotMega.Controls.MyLabel, ArdupilotMegaPlanner10, Version=1.1.4579.36338, Culture=neutral, PublicKeyToken=null</value>
<value>ArdupilotMega.Controls.MyLabel, ArdupilotMegaPlanner10, Version=1.1.4597.13822, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;myLabel1.Parent" xml:space="preserve">
<value>groupBox2</value>
@ -635,7 +659,7 @@
<value>myLabel2</value>
</data>
<data name="&gt;&gt;myLabel2.Type" xml:space="preserve">
<value>ArdupilotMega.Controls.MyLabel, ArdupilotMegaPlanner10, Version=1.1.4579.36338, Culture=neutral, PublicKeyToken=null</value>
<value>ArdupilotMega.Controls.MyLabel, ArdupilotMegaPlanner10, Version=1.1.4597.13822, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;myLabel2.Parent" xml:space="preserve">
<value>groupBox2</value>
@ -725,6 +749,6 @@
<value>ConfigAP_Limits</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>ArdupilotMega.Controls.BackstageView.BackStageViewContentPanel, ArdupilotMegaPlanner10, Version=1.1.4579.36338, Culture=neutral, PublicKeyToken=null</value>
<value>System.Windows.Forms.UserControl, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
</root>

View File

@ -105,13 +105,32 @@ namespace ArdupilotMega.GCSViews.ConfigurationView
updateYaw();
}
void ensureDisabled(ComboBox cmb, int number)
{
foreach (string item in cmb.Items)
{
if (MainV2.comPort.param.ContainsKey(item+"_FUNCTION")) {
float ans = (float)MainV2.comPort.param[item+"_FUNCTION"];
if (ans == number)
{
MainV2.comPort.setParam(item + "_FUNCTION",0);
}
}
}
}
void updatePitch()
{
// pitch
if (mavlinkComboBoxTilt.Text != "Disable")
{
MainV2.comPort.setParam(mavlinkComboBoxTilt.Text + "_FUNCTION",7);
MainV2.comPort.setParam("MNT_STAB_PITCH",1);
MainV2.comPort.setParam(mavlinkComboBoxTilt.Text + "_FUNCTION", 7);
MainV2.comPort.setParam("MNT_STAB_PITCH", 1);
}
else
{
ensureDisabled(mavlinkComboBoxTilt,7);
}
mavlinkNumericUpDownTSM.setup(800, 2200, 1, 1, mavlinkComboBoxTilt.Text +"_MIN", MainV2.comPort.param);
@ -129,6 +148,10 @@ namespace ArdupilotMega.GCSViews.ConfigurationView
MainV2.comPort.setParam(mavlinkComboBoxRoll.Text + "_FUNCTION", 8);
MainV2.comPort.setParam("MNT_STAB_ROLL", 1);
}
else
{
ensureDisabled(mavlinkComboBoxRoll,8);
}
mavlinkNumericUpDownRSM.setup(800, 2200, 1, 1, mavlinkComboBoxRoll.Text +"_MIN", MainV2.comPort.param);
mavlinkNumericUpDownRSMX.setup(800, 2200, 1, 1, mavlinkComboBoxRoll.Text + "_MAX", MainV2.comPort.param);
@ -145,6 +168,10 @@ namespace ArdupilotMega.GCSViews.ConfigurationView
MainV2.comPort.setParam(mavlinkComboBoxPan.Text + "_FUNCTION", 6);
MainV2.comPort.setParam("MNT_STAB_YAW", 1);
}
else
{
ensureDisabled(mavlinkComboBoxPan,6);
}
mavlinkNumericUpDownPSM.setup(800, 2200, 1, 1, mavlinkComboBoxPan.Text + "_MIN", MainV2.comPort.param);
mavlinkNumericUpDownPSMX.setup(800, 2200, 1, 1, mavlinkComboBoxPan.Text + "_MAX", MainV2.comPort.param);

View File

@ -13,9 +13,13 @@ namespace ArdupilotMega.GCSViews.ConfigurationView
{
public partial class Setup : MyUserControl
{
// remeber the last page accessed
static string lastpagename = "";
public Setup()
{
InitializeComponent();
ThemeManager.ApplyThemeTo(this);
}
@ -34,7 +38,17 @@ namespace ArdupilotMega.GCSViews.ConfigurationView
//backstageView.AddSpacer(15);
AddBackstageViewPage(new ConfigPlanner(), "Planner");
this.backstageView.ActivatePage(backstageView.Pages[0]);
// remeber last page accessed
foreach (BackstageView.BackstageViewPage page in backstageView.Pages) {
if (page.LinkText == lastpagename)
{
this.backstageView.ActivatePage(page);
break;
}
}
//this.backstageView.ActivatePage(backstageView.Pages[0]);
ThemeManager.ApplyThemeTo(this);
@ -115,6 +129,8 @@ If you are just setting up 3DR radios, you may continue without connecting.");
private void Setup_FormClosing(object sender, FormClosingEventArgs e)
{
lastpagename = backstageView.SelectedPage.LinkText;
backstageView.Close();
}
}

View File

@ -221,18 +221,22 @@ namespace ArdupilotMega.GCSViews
if (CB_tuning.Checked)
ZedGraphTimer.Start();
hud1.Visible = true;
hud1.Enabled = true;
// SubMainLeft.Panel1.Controls.Clear();
// SubMainLeft.Panel1.Controls.Add(hud1);
if (!hud1.Visible)
hud1.Visible = true;
if (!hud1.Enabled)
hud1.Enabled = true;
hud1.Dock = DockStyle.Fill;
}
public void Deactivate()
{
//SubMainLeft.Panel1.Controls.Remove(hud1);
hud1.Visible = false;
hud1.Dock = DockStyle.None;
hud1.Size = new System.Drawing.Size(5,5);
hud1.Enabled = false;
hud1.Visible = false;
// hud1.Location = new Point(-1000,-1000);
ZedGraphTimer.Stop();
}
@ -517,12 +521,7 @@ namespace ArdupilotMega.GCSViews
if (waypoints.AddSeconds(10) < DateTime.Now)
{
//Console.WriteLine("Doing FD WP's");
while (gMapControl1.inOnPaint == true)
{
System.Threading.Thread.Sleep(1);
}
polygons.Markers.Clear();
routes.Markers.Clear();
updateMissionRoute();
if (MainV2.comPort.logreadmode && MainV2.comPort.logplaybackfile != null)
{
@ -627,6 +626,17 @@ namespace ArdupilotMega.GCSViews
});
}
// to prevent cross thread calls while in a draw and exception
private void updateMissionRoute()
{
// not async
this.Invoke((System.Windows.Forms.MethodInvoker)delegate()
{
polygons.Markers.Clear();
routes.Markers.Clear();
});
}
private void updatePlayPauseButton(bool playing)
{

View File

@ -28,7 +28,7 @@ using ArdupilotMega.Controls.BackstageView;
namespace ArdupilotMega.GCSViews
{
partial class FlightPlanner : MyUserControl, IDeactivate
partial class FlightPlanner : MyUserControl, IDeactivate, IActivate
{
private static readonly ILog log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
int selectedrow = 0;
@ -3488,6 +3488,11 @@ namespace ArdupilotMega.GCSViews
//drawnpolygon.Points.Add(new PointLatLng(start.Lat, start.Lng));
}
public void Activate()
{
timer1.Start();
}
public void Deactivate()
{
timer1.Stop();

View File

@ -636,7 +636,7 @@ namespace ArdupilotMega.GCSViews
if (hzcounttime.Second != DateTime.Now.Second)
{
//Console.WriteLine("SIM hz {0}", hzcount);
Console.WriteLine("SIM hz {0}", hzcount);
hzcount = 0;
hzcounttime = DateTime.Now;
}

View File

@ -24,6 +24,7 @@ using System.Security.Cryptography;
using ArdupilotMega.Comms;
using ArdupilotMega.Arduino;
using System.IO.Ports;
using Transitions;
namespace ArdupilotMega
{
@ -1194,6 +1195,7 @@ namespace ArdupilotMega
MyView.AddScreen(new MainSwitcher.Screen("Help", new GCSViews.Help(), false));
// init button depressed - ensures correct action
//int fixme;
MenuFlightData_Click(sender, e);
// for long running tasks using own threads.

View File

@ -231,6 +231,8 @@ namespace ArdupilotMega
{
frmProgressReporter.UpdateProgressAndStatus(-1, "Mavlink Connecting...");
MainV2.giveComport = true;
// allow settings to settle - previous dtr
System.Threading.Thread.Sleep(500);
@ -242,8 +244,6 @@ namespace ArdupilotMega
try
{
MainV2.giveComport = true;
BaseStream.ReadBufferSize = 4 * 1024;
lock (objlock) // so we dont have random traffic

View File

@ -2,14 +2,14 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension" xmlns:difx="http://schemas.microsoft.com/wix/DifxAppExtension">
<Product Id="*" Name="APM Planner" Language="1033" Version="1.2" Manufacturer="Michael Oborne" UpgradeCode="{625389D7-EB3C-4d77-A5F6-A285CF99437D}">
<Product Id="*" Name="APM Planner" Language="1033" Version="1.2.1" Manufacturer="Michael Oborne" UpgradeCode="{625389D7-EB3C-4d77-A5F6-A285CF99437D}">
<Package Description="APM Planner Installer" Comments="Apm Planner Installer" Manufacturer="Michael Oborne" InstallerVersion="200" Compressed="yes" />
<Upgrade Id="{625389D7-EB3C-4d77-A5F6-A285CF99437D}">
<UpgradeVersion OnlyDetect="yes" Minimum="1.2" Property="NEWERVERSIONDETECTED" IncludeMinimum="no" />
<UpgradeVersion OnlyDetect="no" Maximum="1.2" Property="OLDERVERSIONBEINGUPGRADED" IncludeMaximum="no" />
<UpgradeVersion OnlyDetect="yes" Minimum="1.2.1" Property="NEWERVERSIONDETECTED" IncludeMinimum="no" />
<UpgradeVersion OnlyDetect="no" Maximum="1.2.1" Property="OLDERVERSIONBEINGUPGRADED" IncludeMaximum="no" />
</Upgrade>
<InstallExecuteSequence>
@ -31,222 +31,228 @@
<Permission User="Everyone" GenericAll="yes" />
</CreateFolder>
</Component>
<Component Id="_comp1" Guid="6426307e-9832-4641-a69f-fef6e731ae94">
<Component Id="_comp1" Guid="5af1181b-130d-4ec9-8bfd-fb7589ef0d72">
<File Id="_2" Source="..\bin\release\.gdbinit" />
<File Id="_3" Source="..\bin\release\.gitignore" />
<File Id="_4" Source="..\bin\release\aerosim3.91.txt" />
<File Id="_5" Source="..\bin\release\AeroSimRCAPMHil.zip" />
<File Id="_6" Source="..\bin\release\alglibnet2.dll" />
<File Id="_7" Source="..\bin\release\arducopter-xplane.zip" />
<File Id="_8" Source="..\bin\release\ArduCopterConfig.xml" />
<File Id="_9" Source="..\bin\release\ArduinoCPP.exe" />
<File Id="_10" Source="..\bin\release\ArduinoCPP.exe.config" />
<File Id="_11" Source="..\bin\release\ArduinoCPP.pdb" />
<File Id="_12" Source="..\bin\release\ArdupilotMegaPlanner.application" />
<File Id="_13" Source="..\bin\release\ArdupilotMegaPlanner.exe" ><netfx:NativeImage Id="ngen_ArdupilotMegaPlannerexe"/> </File>
<File Id="_14" Source="..\bin\release\ArdupilotMegaPlanner.exe.config" />
<File Id="_15" Source="..\bin\release\ArdupilotMegaPlanner.exe.manifest" />
<File Id="_16" Source="..\bin\release\ArdupilotMegaPlanner.pdb" />
<File Id="_17" Source="..\bin\release\ArdupilotMegaPlanner10.application" />
<File Id="_18" Source="..\bin\release\ArdupilotMegaPlanner10.exe" />
<File Id="_19" Source="..\bin\release\ArdupilotMegaPlanner10.exe.config" />
<File Id="_20" Source="..\bin\release\ArdupilotMegaPlanner10.exe.manifest" />
<File Id="_21" Source="..\bin\release\ArdupilotMegaPlanner10.pdb" />
<File Id="_22" Source="..\bin\release\block_plane_0.dae" />
<File Id="_23" Source="..\bin\release\BSE.Windows.Forms.dll" />
<File Id="_24" Source="..\bin\release\BSE.Windows.Forms.pdb" />
<File Id="_25" Source="..\bin\release\BSE.Windows.Forms.xml" />
<File Id="_26" Source="..\bin\release\Core.dll" />
<File Id="_27" Source="..\bin\release\dataflashlog.xml" />
<File Id="_28" Source="..\bin\release\DirectShowLib-2005.dll" />
<File Id="_29" Source="..\bin\release\eeprom.bin" />
<File Id="_30" Source="..\bin\release\GMap.NET.Core.dll" />
<File Id="_31" Source="..\bin\release\GMap.NET.Core.pdb" />
<File Id="_32" Source="..\bin\release\GMap.NET.WindowsForms.dll" />
<File Id="_33" Source="..\bin\release\GMap.NET.WindowsForms.pdb" />
<File Id="_34" Source="..\bin\release\hud.html" />
<File Id="_35" Source="..\bin\release\ICSharpCode.SharpZipLib.dll" />
<File Id="_36" Source="..\bin\release\Ionic.Zip.Reduced.dll" />
<File Id="_37" Source="..\bin\release\IronPython.dll" />
<File Id="_38" Source="..\bin\release\IronPython.Modules.dll" />
<File Id="_39" Source="..\bin\release\JSBSim.exe" />
<File Id="_40" Source="..\bin\release\KMLib.dll" />
<File Id="_41" Source="..\bin\release\log4net.dll" />
<File Id="_42" Source="..\bin\release\mavcmd.xml" />
<File Id="_43" Source="..\bin\release\MAVLink.xml" />
<File Id="_44" Source="..\bin\release\MetaDataExtractor.dll" />
<File Id="_45" Source="..\bin\release\Microsoft.DirectX.DirectInput.dll" />
<File Id="_46" Source="..\bin\release\Microsoft.DirectX.dll" />
<File Id="_47" Source="..\bin\release\Microsoft.Dynamic.dll" />
<File Id="_48" Source="..\bin\release\Microsoft.Scripting.Core.dll" />
<File Id="_49" Source="..\bin\release\Microsoft.Scripting.Debugging.dll" />
<File Id="_50" Source="..\bin\release\Microsoft.Scripting.dll" />
<File Id="_51" Source="..\bin\release\Microsoft.Scripting.ExtensionAttribute.dll" />
<File Id="_52" Source="..\bin\release\netDxf.dll" />
<File Id="_53" Source="..\bin\release\OpenTK.Compatibility.dll" />
<File Id="_54" Source="..\bin\release\OpenTK.dll" />
<File Id="_55" Source="..\bin\release\OpenTK.dll.config" />
<File Id="_56" Source="..\bin\release\OpenTK.GLControl.dll" />
<File Id="_57" Source="..\bin\release\ParameterMetaData.xml" />
<File Id="_58" Source="..\bin\release\quadhil.xml" />
<File Id="_59" Source="..\bin\release\runme" />
<File Id="_60" Source="..\bin\release\serialsent.raw" />
<File Id="_61" Source="..\bin\release\SharpKml.dll" />
<File Id="_62" Source="..\bin\release\SharpKml.pdb" />
<File Id="_63" Source="..\bin\release\SharpKml.xml" />
<File Id="_64" Source="..\bin\release\System.Data.SQLite.dll" />
<File Id="_65" Source="..\bin\release\System.Reactive.dll" />
<File Id="_66" Source="..\bin\release\System.Reactive.xml" />
<File Id="_67" Source="..\bin\release\System.Speech.dll" />
<File Id="_68" Source="..\bin\release\Transitions.dll" />
<File Id="_69" Source="..\bin\release\Updater.exe" />
<File Id="_70" Source="..\bin\release\Updater.exe.config" />
<File Id="_71" Source="..\bin\release\Updater.pdb" />
<File Id="_72" Source="..\bin\release\version.exe" />
<File Id="_73" Source="..\bin\release\version.txt" />
<File Id="_74" Source="..\bin\release\ZedGraph.dll" />
<File Id="_7" Source="..\bin\release\ArduCopter-hil.exe" />
<File Id="_8" Source="..\bin\release\arducopter-xplane.zip" />
<File Id="_9" Source="..\bin\release\ArduCopterConfig.xml" />
<File Id="_10" Source="..\bin\release\ArduinoCPP.exe" />
<File Id="_11" Source="..\bin\release\ArduinoCPP.exe.config" />
<File Id="_12" Source="..\bin\release\ArduinoCPP.pdb" />
<File Id="_13" Source="..\bin\release\ArdupilotMegaPlanner.application" />
<File Id="_14" Source="..\bin\release\ArdupilotMegaPlanner.exe" ><netfx:NativeImage Id="ngen_ArdupilotMegaPlannerexe"/> </File>
<File Id="_15" Source="..\bin\release\ArdupilotMegaPlanner.exe.config" />
<File Id="_16" Source="..\bin\release\ArdupilotMegaPlanner.exe.manifest" />
<File Id="_17" Source="..\bin\release\ArdupilotMegaPlanner.pdb" />
<File Id="_18" Source="..\bin\release\ArdupilotMegaPlanner10.application" />
<File Id="_19" Source="..\bin\release\ArdupilotMegaPlanner10.exe" />
<File Id="_20" Source="..\bin\release\ArdupilotMegaPlanner10.exe.config" />
<File Id="_21" Source="..\bin\release\ArdupilotMegaPlanner10.exe.manifest" />
<File Id="_22" Source="..\bin\release\ArdupilotMegaPlanner10.pdb" />
<File Id="_23" Source="..\bin\release\ArduPlane-hil.exe" />
<File Id="_24" Source="..\bin\release\block_plane_0.dae" />
<File Id="_25" Source="..\bin\release\BSE.Windows.Forms.dll" />
<File Id="_26" Source="..\bin\release\BSE.Windows.Forms.pdb" />
<File Id="_27" Source="..\bin\release\BSE.Windows.Forms.xml" />
<File Id="_28" Source="..\bin\release\Core.dll" />
<File Id="_29" Source="..\bin\release\cygstdc++-6.dll" />
<File Id="_30" Source="..\bin\release\cygwin1.dll" />
<File Id="_31" Source="..\bin\release\dataflashlog.xml" />
<File Id="_32" Source="..\bin\release\DirectShowLib-2005.dll" />
<File Id="_33" Source="..\bin\release\eeprom.bin" />
<File Id="_34" Source="..\bin\release\GMap.NET.Core.dll" />
<File Id="_35" Source="..\bin\release\GMap.NET.Core.pdb" />
<File Id="_36" Source="..\bin\release\GMap.NET.WindowsForms.dll" />
<File Id="_37" Source="..\bin\release\GMap.NET.WindowsForms.pdb" />
<File Id="_38" Source="..\bin\release\hud.html" />
<File Id="_39" Source="..\bin\release\ICSharpCode.SharpZipLib.dll" />
<File Id="_40" Source="..\bin\release\Ionic.Zip.Reduced.dll" />
<File Id="_41" Source="..\bin\release\IronPython.dll" />
<File Id="_42" Source="..\bin\release\IronPython.Modules.dll" />
<File Id="_43" Source="..\bin\release\JSBSim.exe" />
<File Id="_44" Source="..\bin\release\KMLib.dll" />
<File Id="_45" Source="..\bin\release\log4net.dll" />
<File Id="_46" Source="..\bin\release\mavcmd.xml" />
<File Id="_47" Source="..\bin\release\MAVLink.xml" />
<File Id="_48" Source="..\bin\release\MetaDataExtractor.dll" />
<File Id="_49" Source="..\bin\release\Microsoft.DirectX.DirectInput.dll" />
<File Id="_50" Source="..\bin\release\Microsoft.DirectX.dll" />
<File Id="_51" Source="..\bin\release\Microsoft.Dynamic.dll" />
<File Id="_52" Source="..\bin\release\Microsoft.Scripting.Core.dll" />
<File Id="_53" Source="..\bin\release\Microsoft.Scripting.Debugging.dll" />
<File Id="_54" Source="..\bin\release\Microsoft.Scripting.dll" />
<File Id="_55" Source="..\bin\release\Microsoft.Scripting.ExtensionAttribute.dll" />
<File Id="_56" Source="..\bin\release\netDxf.dll" />
<File Id="_57" Source="..\bin\release\OpenTK.Compatibility.dll" />
<File Id="_58" Source="..\bin\release\OpenTK.dll" />
<File Id="_59" Source="..\bin\release\OpenTK.dll.config" />
<File Id="_60" Source="..\bin\release\OpenTK.GLControl.dll" />
<File Id="_61" Source="..\bin\release\ParameterMetaData.xml" />
<File Id="_62" Source="..\bin\release\quadhil.xml" />
<File Id="_63" Source="..\bin\release\runme" />
<File Id="_64" Source="..\bin\release\serialsent.raw" />
<File Id="_65" Source="..\bin\release\Sharp3D.Math.dll" />
<File Id="_66" Source="..\bin\release\Sharp3D.Math.xml" />
<File Id="_67" Source="..\bin\release\SharpKml.dll" />
<File Id="_68" Source="..\bin\release\SharpKml.pdb" />
<File Id="_69" Source="..\bin\release\SharpKml.xml" />
<File Id="_70" Source="..\bin\release\System.Data.SQLite.dll" />
<File Id="_71" Source="..\bin\release\System.Reactive.dll" />
<File Id="_72" Source="..\bin\release\System.Reactive.xml" />
<File Id="_73" Source="..\bin\release\System.Speech.dll" />
<File Id="_74" Source="..\bin\release\Transitions.dll" />
<File Id="_75" Source="..\bin\release\Updater.exe" />
<File Id="_76" Source="..\bin\release\Updater.exe.config" />
<File Id="_77" Source="..\bin\release\Updater.pdb" />
<File Id="_78" Source="..\bin\release\version.exe" />
<File Id="_79" Source="..\bin\release\version.txt" />
<File Id="_80" Source="..\bin\release\ZedGraph.dll" />
</Component>
<Directory Id="aircraft74" Name="aircraft">
<Component Id="_comp75" Guid="aca211c5-59ca-42bb-b587-2ce9101e641d">
<File Id="_76" Source="..\bin\release\aircraft\placeholder.txt" />
<Directory Id="aircraft80" Name="aircraft">
<Component Id="_comp81" Guid="364e6f4e-db72-4948-ae37-4a1df4bc1fd0">
<File Id="_82" Source="..\bin\release\aircraft\placeholder.txt" />
</Component>
<Directory Id="arducopter76" Name="arducopter">
<Component Id="_comp77" Guid="d56d69fa-8119-46d6-85ae-8d8faee8d3ea">
<File Id="_78" Source="..\bin\release\aircraft\arducopter\arducopter-set.xml" />
<File Id="_79" Source="..\bin\release\aircraft\arducopter\arducopter.jpg" />
<File Id="_80" Source="..\bin\release\aircraft\arducopter\arducopter.xml" />
<File Id="_81" Source="..\bin\release\aircraft\arducopter\initfile.xml" />
<File Id="_82" Source="..\bin\release\aircraft\arducopter\plus_quad2-set.xml" />
<File Id="_83" Source="..\bin\release\aircraft\arducopter\plus_quad2.xml" />
<File Id="_84" Source="..\bin\release\aircraft\arducopter\quad.nas" />
<File Id="_85" Source="..\bin\release\aircraft\arducopter\README" />
<Directory Id="arducopter82" Name="arducopter">
<Component Id="_comp83" Guid="5e0a03c0-42bc-4cdd-8d6e-e9a19ab6f346">
<File Id="_84" Source="..\bin\release\aircraft\arducopter\arducopter-set.xml" />
<File Id="_85" Source="..\bin\release\aircraft\arducopter\arducopter.jpg" />
<File Id="_86" Source="..\bin\release\aircraft\arducopter\arducopter.xml" />
<File Id="_87" Source="..\bin\release\aircraft\arducopter\initfile.xml" />
<File Id="_88" Source="..\bin\release\aircraft\arducopter\plus_quad2-set.xml" />
<File Id="_89" Source="..\bin\release\aircraft\arducopter\plus_quad2.xml" />
<File Id="_90" Source="..\bin\release\aircraft\arducopter\quad.nas" />
<File Id="_91" Source="..\bin\release\aircraft\arducopter\README" />
</Component>
<Directory Id="data85" Name="data">
<Component Id="_comp86" Guid="f9bee73e-2642-4bd2-bcaa-85b2d2881099">
<File Id="_87" Source="..\bin\release\aircraft\arducopter\data\arducopter_half_step.txt" />
<File Id="_88" Source="..\bin\release\aircraft\arducopter\data\arducopter_step.txt" />
<File Id="_89" Source="..\bin\release\aircraft\arducopter\data\rw_generic_pylon.ac" />
<Directory Id="data91" Name="data">
<Component Id="_comp92" Guid="6a70d89c-8a9f-41c3-b658-6a466989d852">
<File Id="_93" Source="..\bin\release\aircraft\arducopter\data\arducopter_half_step.txt" />
<File Id="_94" Source="..\bin\release\aircraft\arducopter\data\arducopter_step.txt" />
<File Id="_95" Source="..\bin\release\aircraft\arducopter\data\rw_generic_pylon.ac" />
</Component>
</Directory>
<Directory Id="Engines89" Name="Engines">
<Component Id="_comp90" Guid="6a518147-28f8-45dc-9ba1-68fc0dbf09cb">
<File Id="_91" Source="..\bin\release\aircraft\arducopter\Engines\a2830-12.xml" />
<File Id="_92" Source="..\bin\release\aircraft\arducopter\Engines\prop10x4.5.xml" />
<Directory Id="Engines95" Name="Engines">
<Component Id="_comp96" Guid="fc29fc38-81b1-464e-9a9c-2ab56cff8087">
<File Id="_97" Source="..\bin\release\aircraft\arducopter\Engines\a2830-12.xml" />
<File Id="_98" Source="..\bin\release\aircraft\arducopter\Engines\prop10x4.5.xml" />
</Component>
</Directory>
<Directory Id="Models92" Name="Models">
<Component Id="_comp93" Guid="da9fc9ee-19a1-42eb-b950-800c3a887a78">
<File Id="_94" Source="..\bin\release\aircraft\arducopter\Models\arducopter.ac" />
<File Id="_95" Source="..\bin\release\aircraft\arducopter\Models\arducopter.xml" />
<File Id="_96" Source="..\bin\release\aircraft\arducopter\Models\plus_quad.ac" />
<File Id="_97" Source="..\bin\release\aircraft\arducopter\Models\plus_quad2.ac" />
<File Id="_98" Source="..\bin\release\aircraft\arducopter\Models\plus_quad2.xml" />
<File Id="_99" Source="..\bin\release\aircraft\arducopter\Models\quad.3ds" />
<File Id="_100" Source="..\bin\release\aircraft\arducopter\Models\shareware_output.3ds" />
<File Id="_101" Source="..\bin\release\aircraft\arducopter\Models\Untitled.ac" />
<File Id="_102" Source="..\bin\release\aircraft\arducopter\Models\Y6_test.ac" />
<Directory Id="Models98" Name="Models">
<Component Id="_comp99" Guid="0dde58e2-fa3b-4098-943d-1a495cbb3e14">
<File Id="_100" Source="..\bin\release\aircraft\arducopter\Models\arducopter.ac" />
<File Id="_101" Source="..\bin\release\aircraft\arducopter\Models\arducopter.xml" />
<File Id="_102" Source="..\bin\release\aircraft\arducopter\Models\plus_quad.ac" />
<File Id="_103" Source="..\bin\release\aircraft\arducopter\Models\plus_quad2.ac" />
<File Id="_104" Source="..\bin\release\aircraft\arducopter\Models\plus_quad2.xml" />
<File Id="_105" Source="..\bin\release\aircraft\arducopter\Models\quad.3ds" />
<File Id="_106" Source="..\bin\release\aircraft\arducopter\Models\shareware_output.3ds" />
<File Id="_107" Source="..\bin\release\aircraft\arducopter\Models\Untitled.ac" />
<File Id="_108" Source="..\bin\release\aircraft\arducopter\Models\Y6_test.ac" />
</Component>
</Directory>
</Directory>
<Directory Id="Rascal102" Name="Rascal">
<Component Id="_comp103" Guid="8103cc9f-8018-4340-b094-22670c86bb39">
<File Id="_104" Source="..\bin\release\aircraft\Rascal\Rascal-keyboard.xml" />
<File Id="_105" Source="..\bin\release\aircraft\Rascal\Rascal-submodels.xml" />
<File Id="_106" Source="..\bin\release\aircraft\Rascal\Rascal.xml" />
<File Id="_107" Source="..\bin\release\aircraft\Rascal\Rascal110-JSBSim-set.xml" />
<File Id="_108" Source="..\bin\release\aircraft\Rascal\Rascal110-JSBSim.xml" />
<File Id="_109" Source="..\bin\release\aircraft\Rascal\Rascal110-splash.rgb" />
<File Id="_110" Source="..\bin\release\aircraft\Rascal\README.Rascal" />
<File Id="_111" Source="..\bin\release\aircraft\Rascal\reset_CMAC.xml" />
<File Id="_112" Source="..\bin\release\aircraft\Rascal\thumbnail.jpg" />
<Directory Id="Rascal108" Name="Rascal">
<Component Id="_comp109" Guid="f4028a82-53dc-4303-857d-33a4834e1d1b">
<File Id="_110" Source="..\bin\release\aircraft\Rascal\Rascal-keyboard.xml" />
<File Id="_111" Source="..\bin\release\aircraft\Rascal\Rascal-submodels.xml" />
<File Id="_112" Source="..\bin\release\aircraft\Rascal\Rascal.xml" />
<File Id="_113" Source="..\bin\release\aircraft\Rascal\Rascal110-JSBSim-set.xml" />
<File Id="_114" Source="..\bin\release\aircraft\Rascal\Rascal110-JSBSim.xml" />
<File Id="_115" Source="..\bin\release\aircraft\Rascal\Rascal110-splash.rgb" />
<File Id="_116" Source="..\bin\release\aircraft\Rascal\README.Rascal" />
<File Id="_117" Source="..\bin\release\aircraft\Rascal\reset_CMAC.xml" />
<File Id="_118" Source="..\bin\release\aircraft\Rascal\thumbnail.jpg" />
</Component>
<Directory Id="Engines112" Name="Engines">
<Component Id="_comp113" Guid="5b4c5058-bcbe-4c41-8777-4290a3a18545">
<File Id="_114" Source="..\bin\release\aircraft\Rascal\Engines\18x8.xml" />
<File Id="_115" Source="..\bin\release\aircraft\Rascal\Engines\Zenoah_G-26A.xml" />
<Directory Id="Engines118" Name="Engines">
<Component Id="_comp119" Guid="f9019ec0-95b3-445f-9557-e25b51396a36">
<File Id="_120" Source="..\bin\release\aircraft\Rascal\Engines\18x8.xml" />
<File Id="_121" Source="..\bin\release\aircraft\Rascal\Engines\Zenoah_G-26A.xml" />
</Component>
</Directory>
<Directory Id="Models115" Name="Models">
<Component Id="_comp116" Guid="0a4643af-1a69-4da5-a43d-27fdf4ec151c">
<File Id="_117" Source="..\bin\release\aircraft\Rascal\Models\Rascal.rgb" />
<File Id="_118" Source="..\bin\release\aircraft\Rascal\Models\Rascal110-000-013.ac" />
<File Id="_119" Source="..\bin\release\aircraft\Rascal\Models\Rascal110.xml" />
<File Id="_120" Source="..\bin\release\aircraft\Rascal\Models\smoke.png" />
<File Id="_121" Source="..\bin\release\aircraft\Rascal\Models\smokeW.xml" />
<File Id="_122" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.ac" />
<File Id="_123" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.xml" />
<Directory Id="Models121" Name="Models">
<Component Id="_comp122" Guid="2b25399a-218c-4971-a67e-dd81a6148381">
<File Id="_123" Source="..\bin\release\aircraft\Rascal\Models\Rascal.rgb" />
<File Id="_124" Source="..\bin\release\aircraft\Rascal\Models\Rascal110-000-013.ac" />
<File Id="_125" Source="..\bin\release\aircraft\Rascal\Models\Rascal110.xml" />
<File Id="_126" Source="..\bin\release\aircraft\Rascal\Models\smoke.png" />
<File Id="_127" Source="..\bin\release\aircraft\Rascal\Models\smokeW.xml" />
<File Id="_128" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.ac" />
<File Id="_129" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.xml" />
</Component>
</Directory>
<Directory Id="Systems123" Name="Systems">
<Component Id="_comp124" Guid="8aec08aa-b972-47ee-b8cd-c5c04b07c6fc">
<File Id="_125" Source="..\bin\release\aircraft\Rascal\Systems\110-autopilot.xml" />
<File Id="_126" Source="..\bin\release\aircraft\Rascal\Systems\airdata.nas" />
<File Id="_127" Source="..\bin\release\aircraft\Rascal\Systems\electrical.xml" />
<File Id="_128" Source="..\bin\release\aircraft\Rascal\Systems\main.nas" />
<File Id="_129" Source="..\bin\release\aircraft\Rascal\Systems\ugear.nas" />
<Directory Id="Systems129" Name="Systems">
<Component Id="_comp130" Guid="82a3dcad-4445-4210-8bb9-6f136cc7bdc3">
<File Id="_131" Source="..\bin\release\aircraft\Rascal\Systems\110-autopilot.xml" />
<File Id="_132" Source="..\bin\release\aircraft\Rascal\Systems\airdata.nas" />
<File Id="_133" Source="..\bin\release\aircraft\Rascal\Systems\electrical.xml" />
<File Id="_134" Source="..\bin\release\aircraft\Rascal\Systems\main.nas" />
<File Id="_135" Source="..\bin\release\aircraft\Rascal\Systems\ugear.nas" />
</Component>
</Directory>
</Directory>
</Directory>
<Directory Id="Driver129" Name="Driver">
<Component Id="_comp130" Guid="c36be0ee-37f5-4de9-a2bf-713833a6e9f1">
<File Id="_131" Source="..\bin\release\Driver\Arduino MEGA 2560.inf" />
<Directory Id="Driver135" Name="Driver">
<Component Id="_comp136" Guid="d3587c59-9ae8-456e-ab46-1c6921a14349">
<File Id="_137" Source="..\bin\release\Driver\Arduino MEGA 2560.inf" />
</Component>
</Directory>
<Directory Id="es_ES131" Name="es-ES">
<Component Id="_comp132" Guid="732f43ab-6645-4c18-a1f1-9519ef92165a">
<File Id="_133" Source="..\bin\release\es-ES\ArdupilotMegaPlanner10.resources.dll" />
<Directory Id="es_ES137" Name="es-ES">
<Component Id="_comp138" Guid="554929db-d28f-4eb4-94a0-7c4b7de45d18">
<File Id="_139" Source="..\bin\release\es-ES\ArdupilotMegaPlanner10.resources.dll" />
</Component>
</Directory>
<Directory Id="fr133" Name="fr">
<Component Id="_comp134" Guid="098a3485-f089-45a6-abd3-442d9818423c">
<File Id="_135" Source="..\bin\release\fr\ArdupilotMegaPlanner10.resources.dll" />
<Directory Id="fr139" Name="fr">
<Component Id="_comp140" Guid="f48c0f4e-437f-4299-9b13-d57dc97c0fa1">
<File Id="_141" Source="..\bin\release\fr\ArdupilotMegaPlanner10.resources.dll" />
</Component>
</Directory>
<Directory Id="it_IT135" Name="it-IT">
<Component Id="_comp136" Guid="299d4a51-3c5d-44da-9aaa-a298ec1c7d28">
<File Id="_137" Source="..\bin\release\it-IT\ArdupilotMegaPlanner10.resources.dll" />
<Directory Id="it_IT141" Name="it-IT">
<Component Id="_comp142" Guid="202e5109-2f31-41cb-b923-1c4931655bc7">
<File Id="_143" Source="..\bin\release\it-IT\ArdupilotMegaPlanner10.resources.dll" />
</Component>
</Directory>
<Directory Id="jsbsim137" Name="jsbsim">
<Component Id="_comp138" Guid="65b5860e-5296-41f2-90cc-cdbc5f8c82d1">
<File Id="_139" Source="..\bin\release\jsbsim\fgout.xml" />
<File Id="_140" Source="..\bin\release\jsbsim\rascal_test.xml" />
<Directory Id="jsbsim143" Name="jsbsim">
<Component Id="_comp144" Guid="b625fcb7-eef0-4544-a3ef-cab81029c863">
<File Id="_145" Source="..\bin\release\jsbsim\fgout.xml" />
<File Id="_146" Source="..\bin\release\jsbsim\rascal_test.xml" />
</Component>
</Directory>
<Directory Id="m3u140" Name="m3u">
<Component Id="_comp141" Guid="2c669359-f253-406a-b60d-84312ebcdbc7">
<File Id="_142" Source="..\bin\release\m3u\both.m3u" />
<File Id="_143" Source="..\bin\release\m3u\GeoRefnetworklink.kml" />
<File Id="_144" Source="..\bin\release\m3u\hud.m3u" />
<File Id="_145" Source="..\bin\release\m3u\map.m3u" />
<File Id="_146" Source="..\bin\release\m3u\networklink.kml" />
<Directory Id="m3u146" Name="m3u">
<Component Id="_comp147" Guid="3d3e08cf-6213-4476-926b-d50838216bbf">
<File Id="_148" Source="..\bin\release\m3u\both.m3u" />
<File Id="_149" Source="..\bin\release\m3u\GeoRefnetworklink.kml" />
<File Id="_150" Source="..\bin\release\m3u\hud.m3u" />
<File Id="_151" Source="..\bin\release\m3u\map.m3u" />
<File Id="_152" Source="..\bin\release\m3u\networklink.kml" />
</Component>
</Directory>
<Directory Id="pl146" Name="pl">
<Component Id="_comp147" Guid="ddb9853c-14d0-4923-a298-57707bfa3e91">
<File Id="_148" Source="..\bin\release\pl\ArdupilotMegaPlanner10.resources.dll" />
<Directory Id="pl152" Name="pl">
<Component Id="_comp153" Guid="ec1d8f2d-8993-4a4c-9b02-c4063162b61d">
<File Id="_154" Source="..\bin\release\pl\ArdupilotMegaPlanner10.resources.dll" />
</Component>
</Directory>
<Directory Id="Resources148" Name="Resources">
<Component Id="_comp149" Guid="92c1e1c0-3b2b-4511-a357-6498b3acca4d">
<File Id="_150" Source="..\bin\release\Resources\MAVCmd.txt" />
<File Id="_151" Source="..\bin\release\Resources\Welcome_to_Michael_Oborne.rtf" />
<Directory Id="Resources154" Name="Resources">
<Component Id="_comp155" Guid="f587c269-44c5-4b6b-9d59-762eda060800">
<File Id="_156" Source="..\bin\release\Resources\MAVCmd.txt" />
<File Id="_157" Source="..\bin\release\Resources\Welcome_to_Michael_Oborne.rtf" />
</Component>
</Directory>
<Directory Id="ru_RU151" Name="ru-RU">
<Component Id="_comp152" Guid="866f909e-fb5f-4fb2-a61e-0d0f6dbebac7">
<File Id="_153" Source="..\bin\release\ru-RU\ArdupilotMegaPlanner10.resources.dll" />
<Directory Id="ru_RU157" Name="ru-RU">
<Component Id="_comp158" Guid="1587bc4c-3dd6-4493-8e58-cc46786aefac">
<File Id="_159" Source="..\bin\release\ru-RU\ArdupilotMegaPlanner10.resources.dll" />
</Component>
</Directory>
<Directory Id="zh_Hans153" Name="zh-Hans">
<Component Id="_comp154" Guid="c3bbe27c-d473-409e-a406-4cc492a06f8a">
<File Id="_155" Source="..\bin\release\zh-Hans\ArdupilotMegaPlanner10.resources.dll" />
<Directory Id="zh_Hans159" Name="zh-Hans">
<Component Id="_comp160" Guid="d1952e25-fec4-4c39-a7c5-e678594ee37c">
<File Id="_161" Source="..\bin\release\zh-Hans\ArdupilotMegaPlanner10.resources.dll" />
</Component>
</Directory>
<Directory Id="zh_TW155" Name="zh-TW">
<Component Id="_comp156" Guid="6a93efeb-6489-4ef3-b6b3-26e808adfb8d">
<File Id="_157" Source="..\bin\release\zh-TW\ArdupilotMegaPlanner10.resources.dll" />
<Directory Id="zh_TW161" Name="zh-TW">
<Component Id="_comp162" Guid="1b98478d-2141-4027-bb3d-241bbfc20c15">
<File Id="_163" Source="..\bin\release\zh-TW\ArdupilotMegaPlanner10.resources.dll" />
</Component>
</Directory>
@ -290,26 +296,26 @@
<ComponentRef Id="InstallDirPermissions" />
<ComponentRef Id="_comp1" />
<ComponentRef Id="_comp75" />
<ComponentRef Id="_comp77" />
<ComponentRef Id="_comp86" />
<ComponentRef Id="_comp90" />
<ComponentRef Id="_comp93" />
<ComponentRef Id="_comp103" />
<ComponentRef Id="_comp113" />
<ComponentRef Id="_comp116" />
<ComponentRef Id="_comp124" />
<ComponentRef Id="_comp81" />
<ComponentRef Id="_comp83" />
<ComponentRef Id="_comp92" />
<ComponentRef Id="_comp96" />
<ComponentRef Id="_comp99" />
<ComponentRef Id="_comp109" />
<ComponentRef Id="_comp119" />
<ComponentRef Id="_comp122" />
<ComponentRef Id="_comp130" />
<ComponentRef Id="_comp132" />
<ComponentRef Id="_comp134" />
<ComponentRef Id="_comp136" />
<ComponentRef Id="_comp138" />
<ComponentRef Id="_comp141" />
<ComponentRef Id="_comp140" />
<ComponentRef Id="_comp142" />
<ComponentRef Id="_comp144" />
<ComponentRef Id="_comp147" />
<ComponentRef Id="_comp149" />
<ComponentRef Id="_comp152" />
<ComponentRef Id="_comp154" />
<ComponentRef Id="_comp156" />
<ComponentRef Id="_comp153" />
<ComponentRef Id="_comp155" />
<ComponentRef Id="_comp158" />
<ComponentRef Id="_comp160" />
<ComponentRef Id="_comp162" />
<ComponentRef Id="ApplicationShortcut" />
@ -330,7 +336,7 @@
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch APM Planner" />
<!-- Step 3: Include the custom action -->
<Property Id="WixShellExecTarget" Value="[#_13]" />
<Property Id="WixShellExecTarget" Value="[#_14]" />
<CustomAction Id="LaunchApplication"
BinaryKey="WixCA"
DllEntry="WixShellExec"

View File

@ -34,5 +34,5 @@ using System.Resources;
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.1.*")]
[assembly: AssemblyFileVersion("1.2.1")]
[assembly: AssemblyFileVersion("1.2.2")]
[assembly: NeutralResourcesLanguageAttribute("")]