kopia lustrzana https://github.com/dl2alf/AirScout
Merge branch 'V1.4' into master
commit
6fdbbcb313
|
@ -96,8 +96,8 @@
|
|||
<HintPath>..\..\packages\Newtonsoft.Json.12.0.3\lib\net40\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\System.Data.SQLite.Core.1.0.112.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Design" />
|
||||
<Reference Include="System.Drawing" />
|
||||
|
@ -246,11 +246,11 @@
|
|||
<MSBuild Condition=" $(TargetFrameworkVersion.Replace("v","")) == 2.0 " Projects="$(MSBuildProjectFile)" Properties="TargetFrameworkVersion=v3.5" RunEachTargetSeparately="true" />
|
||||
<MSBuild Condition=" $(TargetFrameworkVersion.Replace("v","")) == 3.5 " Projects="$(MSBuildProjectFile)" Properties="TargetFrameworkVersion=v4.0" RunEachTargetSeparately="true" />
|
||||
</Target>
|
||||
<Import Project="..\..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets" Condition="Exists('..\..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" />
|
||||
<Import Project="..\..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets'))" />
|
||||
<Error Condition="!Exists('..\..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
</Project>
|
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.113.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.113.7" targetFramework="net40" />
|
||||
</packages>
|
|
@ -37,8 +37,8 @@
|
|||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.112.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
|
@ -93,12 +93,12 @@
|
|||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.113.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.113.7" targetFramework="net40" />
|
||||
</packages>
|
|
@ -37,8 +37,8 @@
|
|||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.112.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
|
@ -96,12 +96,12 @@
|
|||
</None>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -167,33 +167,45 @@ namespace AirScout.Aircrafts
|
|||
|
||||
public long AircraftCount()
|
||||
{
|
||||
object count = db.ExecuteScalar("SELECT COUNT(*) FROM " + AircraftDesignator.TableName);
|
||||
if (IsValid(count))
|
||||
return (long)count;
|
||||
lock (db)
|
||||
{
|
||||
object count = db.ExecuteScalar("SELECT COUNT(*) FROM " + AircraftDesignator.TableName);
|
||||
if (IsValid(count))
|
||||
return (long)count;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
public long AircraftCountUnknownCall()
|
||||
{
|
||||
object count = db.ExecuteScalar("SELECT COUNT(*) FROM " + AircraftDesignator.TableName + " WHERE Call = '[unknown]'");
|
||||
if (IsValid(count))
|
||||
return (long)count;
|
||||
lock (db)
|
||||
{
|
||||
object count = db.ExecuteScalar("SELECT COUNT(*) FROM " + AircraftDesignator.TableName + " WHERE Call = '[unknown]'");
|
||||
if (IsValid(count))
|
||||
return (long)count;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
public long AircraftCountUnknownHex()
|
||||
{
|
||||
object count = db.ExecuteScalar("SELECT COUNT(*) FROM " + AircraftDesignator.TableName + " WHERE Hex = '[unknown]'");
|
||||
if (IsValid(count))
|
||||
return (long)count;
|
||||
lock (db)
|
||||
{
|
||||
object count = db.ExecuteScalar("SELECT COUNT(*) FROM " + AircraftDesignator.TableName + " WHERE Hex = '[unknown]'");
|
||||
if (IsValid(count))
|
||||
return (long)count;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
public long AircraftCountUnknownType()
|
||||
{
|
||||
object count = db.ExecuteScalar("SELECT COUNT(*) FROM " + AircraftDesignator.TableName + " WHERE TypeCode = '[unknown]'");
|
||||
if (IsValid(count))
|
||||
return (long)count;
|
||||
lock (db)
|
||||
{
|
||||
object count = db.ExecuteScalar("SELECT COUNT(*) FROM " + AircraftDesignator.TableName + " WHERE TypeCode = '[unknown]'");
|
||||
if (IsValid(count))
|
||||
return (long)count;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -2433,6 +2445,11 @@ namespace AirScout.Aircrafts
|
|||
info.Lon = newpos.Lon;
|
||||
info.Time = at;
|
||||
|
||||
// Test!!!
|
||||
if (info.Call.StartsWith("xxx"))
|
||||
{
|
||||
int k = 3;
|
||||
}
|
||||
|
||||
// calculate four possible intersections
|
||||
// i1 --> plane heading
|
||||
|
@ -2465,7 +2482,7 @@ namespace AirScout.Aircrafts
|
|||
if ((i4 != null) && ((imin == null) || (i4.QRB < imin.QRB)))
|
||||
imin = i4;
|
||||
// check hot planes which are very near the path first
|
||||
if ((imin != null) && (imin.QRB <= maxdist))
|
||||
if ((imin != null) && (imin.QRB <= maxdist) && (imin.Dist1 <= ppath.Distance))
|
||||
{
|
||||
// plane is near path
|
||||
// use the minimum qrb info
|
||||
|
@ -2506,7 +2523,7 @@ namespace AirScout.Aircrafts
|
|||
else
|
||||
{
|
||||
// plane is far from path --> check only intersection i1 = planes moves towards path
|
||||
if ((i1 != null) && (i1.Min_H <= maxalt))
|
||||
if ((i1 != null) && (i1.Min_H <= maxalt) && (i1.Dist1 <= ppath.Distance))
|
||||
{
|
||||
plane.IntPoint = new LatLon.GPoint(i1.Lat, i1.Lon);
|
||||
plane.IntQRB = i1.QRB;
|
||||
|
|
|
@ -81,7 +81,7 @@ namespace AirScout.Aircrafts
|
|||
DataColumn ICAO = this.Columns.Add("ICAO", typeof(string));
|
||||
DataColumn Airline = this.Columns.Add("Airline", typeof(string));
|
||||
DataColumn Country = this.Columns.Add("Country", typeof(string));
|
||||
DataColumn LastUpdated = this.Columns.Add("LastUpdated", typeof(string));
|
||||
DataColumn LastUpdated = this.Columns.Add("LastUpdated", typeof(int));
|
||||
// create primary key
|
||||
DataColumn[] keys = new DataColumn[2];
|
||||
keys[0] = IATA;
|
||||
|
|
|
@ -4,6 +4,7 @@ using System.Collections.Generic;
|
|||
using System.Linq;
|
||||
using System.Text;
|
||||
using AirScout.Core;
|
||||
using System.IO;
|
||||
|
||||
namespace AirScout.Aircrafts
|
||||
{
|
||||
|
@ -20,7 +21,7 @@ namespace AirScout.Aircrafts
|
|||
PlaneInfo oldplane = null;
|
||||
if (!this.TryGetValue(plane.Hex, out oldplane))
|
||||
{
|
||||
// add plane
|
||||
// not found --> add plane
|
||||
this.Add(plane.Hex, plane);
|
||||
i = 1;
|
||||
}
|
||||
|
@ -29,6 +30,15 @@ namespace AirScout.Aircrafts
|
|||
// plane already in cache --> check time and update if newer
|
||||
if (plane.Time > oldplane.Time)
|
||||
{
|
||||
// keep old values
|
||||
oldplane.OldTime = oldplane.Time;
|
||||
oldplane.OldLat = oldplane.Lat;
|
||||
oldplane.OldLon = oldplane.Lon;
|
||||
oldplane.OldAlt = oldplane.Alt;
|
||||
oldplane.OldSpeed = oldplane.Speed;
|
||||
oldplane.OldTrack = oldplane.Track;
|
||||
|
||||
// update values
|
||||
oldplane.Alt = plane.Alt;
|
||||
oldplane.AltDiff = plane.AltDiff;
|
||||
oldplane.Angle = plane.Angle;
|
||||
|
@ -121,21 +131,89 @@ namespace AirScout.Aircrafts
|
|||
return null;
|
||||
// create new plane info
|
||||
PlaneInfo info = new PlaneInfo(plane);
|
||||
// estimate new position
|
||||
// estimate new values
|
||||
double alt = 0;
|
||||
double speed = 0;
|
||||
double speed_kmh = 0;
|
||||
double track = 0;
|
||||
double dist = 0;
|
||||
LatLon.GPoint newpos;
|
||||
// use stored old values if available
|
||||
if (plane.OldTime != DateTime.MinValue)
|
||||
{
|
||||
double oldtimediff = (plane.Time - plane.OldTime).TotalSeconds;
|
||||
double newtimediff = (at - plane.Time).TotalSeconds;
|
||||
|
||||
// adjust values if there is a valid timespan in history
|
||||
if ((oldtimediff > 0) && (newtimediff > 0))
|
||||
{
|
||||
alt = (plane.Alt - plane.OldAlt) / oldtimediff * newtimediff + plane.Alt;
|
||||
track = (plane.Track - plane.OldTrack) / oldtimediff * newtimediff + plane.Track;
|
||||
speed = (plane.Speed - plane.OldSpeed) / oldtimediff * newtimediff + plane.Speed;
|
||||
}
|
||||
else
|
||||
{
|
||||
// do nothing
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// no stored values available
|
||||
}
|
||||
|
||||
// --> estimate new position using speed and track
|
||||
|
||||
// do plausibility check of calculated new absolute values
|
||||
if ((alt > 0) && (alt <= 50000) &&
|
||||
(track > 0) && (track <= 360) &&
|
||||
(speed > 0) && (speed <= 700))
|
||||
{
|
||||
// change speed to km/h
|
||||
speed_kmh = UnitConverter.kts_kmh(speed);
|
||||
// calculate distance after timespan
|
||||
dist = speed_kmh * (at - info.Time).TotalHours;
|
||||
// estimate new position
|
||||
newpos = LatLon.DestinationPoint(info.Lat, info.Lon, track, dist);
|
||||
|
||||
// check resulting motion vector against last reported track
|
||||
// should be well inside the bounds
|
||||
// a plane cannot move to a position to where it is not pointing to
|
||||
double calctrack = LatLon.Bearing(info.Lat, info.Lon, newpos.Lat, newpos.Lon);
|
||||
if (Math.Abs(info.Track - calctrack) < 45)
|
||||
{
|
||||
// valid --> use the calculated values
|
||||
info.Lat = newpos.Lat;
|
||||
info.Lon = newpos.Lon;
|
||||
info.Alt = alt;
|
||||
info.Track = track;
|
||||
info.Speed = speed;
|
||||
info.Time = at;
|
||||
|
||||
// return calculated info
|
||||
return info;
|
||||
}
|
||||
}
|
||||
|
||||
// one of plausibility checks failed --> use last reported constant values for estimation
|
||||
// change speed to km/h
|
||||
double speed = info.Speed_kmh;
|
||||
speed_kmh = info.Speed_kmh;
|
||||
// calculate distance after timespan
|
||||
double dist = speed * (at - info.Time).TotalHours;
|
||||
dist = speed_kmh * (at - info.Time).TotalHours;
|
||||
// estimate new position
|
||||
LatLon.GPoint newpos = LatLon.DestinationPoint(info.Lat, info.Lon, info.Track, dist);
|
||||
newpos = LatLon.DestinationPoint(info.Lat, info.Lon, info.Track, dist);
|
||||
info.Lat = newpos.Lat;
|
||||
info.Lon = newpos.Lon;
|
||||
info.Time = at;
|
||||
|
||||
// return calculated info
|
||||
return info;
|
||||
}
|
||||
|
||||
public List<PlaneInfo> GetAll(DateTime at, int ttl)
|
||||
{
|
||||
string filename = "positions.csv";
|
||||
string call = "CSN464";
|
||||
|
||||
List<PlaneInfo> l = new List<PlaneInfo>();
|
||||
DateTime to = at;
|
||||
DateTime from = to - new TimeSpan(0, ttl, 0);
|
||||
|
@ -147,14 +225,86 @@ namespace AirScout.Aircrafts
|
|||
continue;
|
||||
// create new plane info
|
||||
PlaneInfo info = new PlaneInfo(plane);
|
||||
// estimate new position
|
||||
// estimate new values
|
||||
// use stored old values if available
|
||||
if (plane.OldTime != DateTime.MinValue)
|
||||
{
|
||||
double oldtimediff = (plane.Time - plane.OldTime).TotalSeconds;
|
||||
double newtimediff = (at - plane.Time).TotalSeconds;
|
||||
|
||||
// adjust values if there is a valid timespan in history
|
||||
if ((oldtimediff > 0) && (newtimediff > 0))
|
||||
{
|
||||
double newalt = (plane.Alt - plane.OldAlt) / oldtimediff * newtimediff + plane.Alt;
|
||||
double newtrack = (plane.Track - plane.OldTrack) / oldtimediff * newtimediff + plane.Track;
|
||||
double newspeed = (plane.Speed - plane.OldSpeed) / oldtimediff * newtimediff + plane.Speed;
|
||||
|
||||
if (plane.Call == call)
|
||||
{
|
||||
File.AppendAllText(filename, oldtimediff.ToString() + ";" +
|
||||
newtimediff.ToString() + ";" +
|
||||
plane.OldAlt.ToString("F8") + ";" +
|
||||
plane.Alt.ToString("F8") + ";" +
|
||||
newalt.ToString("F8") + ";" +
|
||||
plane.OldTrack.ToString("F8") + ";" +
|
||||
plane.Track.ToString("F8") + ";" +
|
||||
newtrack.ToString("F8") + ";" +
|
||||
plane.OldSpeed.ToString("F8") + ";" +
|
||||
plane.Speed.ToString("F8") + ";" +
|
||||
newspeed.ToString("F8") + ";" +
|
||||
Environment.NewLine);
|
||||
}
|
||||
// do plausibility check of calculated values
|
||||
if ((newalt > 0) && (newalt < 50000) &&
|
||||
(newtrack > 0) && (newtrack < 360) &&
|
||||
(newspeed > 0) && (newspeed < 700))
|
||||
{
|
||||
info.Alt = newalt;
|
||||
info.Track = newtrack;
|
||||
info.Speed = newspeed;
|
||||
}
|
||||
else
|
||||
{
|
||||
// do nothing
|
||||
if (plane.Call == call)
|
||||
{
|
||||
File.AppendAllText(filename, oldtimediff.ToString() + ";" +
|
||||
newtimediff.ToString() + ";" +
|
||||
plane.OldAlt.ToString("F8") + ";" +
|
||||
plane.Alt.ToString("F8") + ";" +
|
||||
newalt.ToString("F8") + ";" +
|
||||
plane.OldTrack.ToString("F8") + ";" +
|
||||
plane.Track.ToString("F8") + ";" +
|
||||
newtrack.ToString("F8") + ";" +
|
||||
plane.OldSpeed.ToString("F8") + ";" +
|
||||
plane.Speed.ToString("F8") + ";" +
|
||||
newspeed.ToString("F8") + ":" +
|
||||
"invalid values!" +
|
||||
Environment.NewLine);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// do nothing
|
||||
if (plane.Call == call)
|
||||
{
|
||||
File.AppendAllText(filename, oldtimediff.ToString() + ";" + newtimediff.ToString() + "invalid timediff!" + Environment.NewLine);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// no stored values available
|
||||
}
|
||||
|
||||
// --> estimate new position using speed and track
|
||||
// change speed to km/h
|
||||
double speed = info.Speed_kmh;
|
||||
// calculate distance after timespan
|
||||
double dist = speed * (at - info.Time).TotalHours;
|
||||
// estimate new position
|
||||
LatLon.GPoint newpos = LatLon.DestinationPoint(info.Lat, info.Lon, info.Track, dist);
|
||||
double d = LatLon.Distance(info.Lat, info.Lon, newpos.Lat, newpos.Lon);
|
||||
info.Lat = newpos.Lat;
|
||||
info.Lon = newpos.Lon;
|
||||
info.Time = at;
|
||||
|
|
|
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
|||
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
|
||||
// übernehmen, indem Sie "*" eingeben:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.3.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.3.0.0")]
|
||||
[assembly: AssemblyVersion("1.3.1.0")]
|
||||
[assembly: AssemblyFileVersion("1.3.1.0")]
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.113.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.113.7" targetFramework="net40" />
|
||||
</packages>
|
|
@ -0,0 +1,71 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>AirScout.CAT</RootNamespace>
|
||||
<AssemblyName>AirScout.CAT</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<Deterministic>true</Deterministic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="IRig.cs" />
|
||||
<Compile Include="CATWorker.cs" />
|
||||
<Compile Include="Enums.cs" />
|
||||
<Compile Include="ExtOmniRig.cs" />
|
||||
<Compile Include="OmniRigX.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ScoutBaseRig.cs" />
|
||||
<Compile Include="SupportedRig.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>PublicSettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\ScoutBase\ScoutBase.CAT\ScoutBase.CAT.csproj">
|
||||
<Project>{c9291203-b5d0-4179-888d-04bc670b158f}</Project>
|
||||
<Name>ScoutBase.CAT</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
|
@ -0,0 +1,289 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data.OleDb;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Security.Policy;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using ScoutBase.CAT;
|
||||
|
||||
namespace AirScout.CAT
|
||||
{
|
||||
|
||||
public class CATWorkerStartOptions
|
||||
{
|
||||
public string Name;
|
||||
public string RigType = "";
|
||||
public string PortName = "";
|
||||
public int Baudrate = 9600;
|
||||
public int DataBits = 8;
|
||||
public PARITY Parity = PARITY.NONE;
|
||||
public STOPBITS StopBits = STOPBITS.ONE;
|
||||
public FLOWCONTROL RTS = FLOWCONTROL.LOW;
|
||||
public FLOWCONTROL DTR = FLOWCONTROL.LOW;
|
||||
public int Poll = 100;
|
||||
public int Timeout = 500;
|
||||
}
|
||||
|
||||
public class CATWorker : BackgroundWorker
|
||||
{
|
||||
|
||||
public CATWorkerStartOptions StartOptions;
|
||||
public IRig Rig = null;
|
||||
|
||||
// doppler tracking
|
||||
public DOPPLERSTRATEGY DopplerStrategy = DOPPLERSTRATEGY.DOPPLER_NONE;
|
||||
public long RxFrequency = 0;
|
||||
public long TxFrequency = 0;
|
||||
|
||||
public CATWorker()
|
||||
{
|
||||
this.WorkerReportsProgress = true;
|
||||
this.WorkerSupportsCancellation = true;
|
||||
}
|
||||
|
||||
#region OmniRig
|
||||
|
||||
#endregion
|
||||
|
||||
// provides a list of supported rigs
|
||||
public static List<SupportedRig> SupportedRigs()
|
||||
{
|
||||
List<SupportedRig> rigs = new List<SupportedRig>();
|
||||
// try to get external OmniRig supported rigs
|
||||
try
|
||||
{
|
||||
List<SupportedRig> omnirigs = OmniRigX.SupportedRigs();
|
||||
foreach (SupportedRig omnirig in omnirigs)
|
||||
{
|
||||
rigs.Add(omnirig);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// add nothing if something goes wrong
|
||||
}
|
||||
|
||||
// try to get ScoutBase OmniRig supported rigs
|
||||
try
|
||||
{
|
||||
List<SupportedRig> scoutbaserigs = ScoutBaseRig.SupportedRigs();
|
||||
foreach (SupportedRig scoutbaserig in scoutbaserigs)
|
||||
{
|
||||
rigs.Add(scoutbaserig);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// add nothing if something goes wrong
|
||||
}
|
||||
|
||||
// try to collect other rigs from other CAT interfaces here
|
||||
|
||||
// return supported rigs
|
||||
return rigs;
|
||||
}
|
||||
|
||||
protected override void OnDoWork(DoWorkEventArgs e)
|
||||
{
|
||||
StartOptions = (CATWorkerStartOptions)e.Argument;
|
||||
this.ReportProgress(0, StartOptions.Name + " started.");
|
||||
// name the thread for debugging
|
||||
if (String.IsNullOrEmpty(Thread.CurrentThread.Name))
|
||||
Thread.CurrentThread.Name = StartOptions.Name + "_" + this.GetType().Name;
|
||||
|
||||
// check if any CAT is working by getting all supported rigs
|
||||
// handle exceptions
|
||||
List<SupportedRig> rigs = new List<SupportedRig>();
|
||||
try
|
||||
{
|
||||
rigs = CATWorker.SupportedRigs();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
this.ReportProgress(-1, "Error while getting supported rigs from CAT: " + ex.Message);
|
||||
this.ReportProgress(1, RIGSTATUS.NOCAT);
|
||||
return;
|
||||
}
|
||||
|
||||
// check if any rig is found
|
||||
if (rigs.Count == 0)
|
||||
{
|
||||
this.ReportProgress(-1, "Error while getting supported rigs from CAT: No available CAT found!");
|
||||
this.ReportProgress(1, RIGSTATUS.NORIG);
|
||||
return;
|
||||
}
|
||||
|
||||
// check if the rig is among the currently supported rigs --> get a new IRig object
|
||||
// be careful with ActiveX objects an handle exceptions
|
||||
Rig = null;
|
||||
try
|
||||
{
|
||||
foreach (SupportedRig rig in rigs)
|
||||
{
|
||||
if (rig.Type == StartOptions.RigType)
|
||||
{
|
||||
switch (rig.CATEngine)
|
||||
{
|
||||
case CATENGINE.OMNIRIGX: Rig = new OmniRigX(); break;
|
||||
case CATENGINE.SCOUTBASE: Rig = new ScoutBaseRig(); break;
|
||||
}
|
||||
|
||||
// OK, we have a valid CAT and rig --> complete and download settings
|
||||
RigSettings settings = new RigSettings();
|
||||
settings.Type = rig.Type;
|
||||
settings.Model = rig.Model;
|
||||
settings.PortName = StartOptions.PortName;
|
||||
settings.Baudrate = StartOptions.Baudrate;
|
||||
settings.DataBits = StartOptions.DataBits;
|
||||
settings.Parity = StartOptions.Parity;
|
||||
settings.StopBits = StartOptions.StopBits;
|
||||
settings.RtsMode = StartOptions.RTS;
|
||||
settings.DtrMode = StartOptions.DTR;
|
||||
settings.PollMs = StartOptions.Poll;
|
||||
settings.TimeoutMs = StartOptions.Timeout;
|
||||
Rig.Settings = settings;
|
||||
|
||||
// stop search
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
this.ReportProgress(-1, "Error while trying to get a rig object from CAT: " + ex.ToString());
|
||||
}
|
||||
|
||||
// report error if rig is still null
|
||||
if (Rig == null)
|
||||
{
|
||||
this.ReportProgress(-1, "Rig is not supported by any available CAT!");
|
||||
this.ReportProgress(1, RIGSTATUS.NORIG);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
this.ReportProgress(0, "Opening CAT: Success!");
|
||||
this.ReportProgress(2, Rig);
|
||||
|
||||
// old values for check changes
|
||||
DOPPLERSTRATEGY olddoppler = DOPPLERSTRATEGY.DOPPLER_NONE;
|
||||
RIGSTATUS oldrigstat = RIGSTATUS.NONE;
|
||||
RIGMODE oldrigmode = RIGMODE.NONE;
|
||||
RIGSPLIT oldrigsplit = RIGSPLIT.NONE;
|
||||
RIGRIT oldrigrit = RIGRIT.NONE;
|
||||
long oldrxfreq = -1;
|
||||
long oldtxfreq = -1;
|
||||
|
||||
// run polling loop
|
||||
while (!this.CancellationPending)
|
||||
{
|
||||
try
|
||||
{
|
||||
RIGSTATUS rigstatus = Rig.GetStatus();
|
||||
if (oldrigstat != rigstatus)
|
||||
{
|
||||
oldrigstat = rigstatus;
|
||||
this.ReportProgress(1, rigstatus);
|
||||
}
|
||||
|
||||
// get rig infos when rig is online
|
||||
if (rigstatus == RIGSTATUS.ONLINE)
|
||||
{
|
||||
// get mode
|
||||
RIGMODE rigmode = Rig.GetMode();
|
||||
if ( oldrigmode != rigmode)
|
||||
{
|
||||
lock (Rig)
|
||||
{
|
||||
oldrigmode = rigmode;
|
||||
this.ReportProgress(2, Rig);
|
||||
}
|
||||
}
|
||||
|
||||
// get split
|
||||
RIGSPLIT rigsplit = Rig.GetSplit();
|
||||
if (oldrigsplit != rigsplit)
|
||||
{
|
||||
lock (Rig)
|
||||
{
|
||||
oldrigsplit = rigsplit;
|
||||
this.ReportProgress(2, Rig);
|
||||
}
|
||||
}
|
||||
|
||||
// get rit
|
||||
RIGRIT rigrit = Rig.GetRit();
|
||||
if (oldrigrit != rigrit)
|
||||
{
|
||||
lock (Rig)
|
||||
{
|
||||
oldrigrit = rigrit;
|
||||
this.ReportProgress(2, Rig);
|
||||
}
|
||||
}
|
||||
|
||||
// get RX frequency
|
||||
long rxfreq = Rig.GetRxFrequency();
|
||||
if (oldrxfreq != rxfreq)
|
||||
{
|
||||
lock (Rig)
|
||||
{
|
||||
oldrxfreq = rxfreq;
|
||||
this.ReportProgress(2, Rig);
|
||||
}
|
||||
}
|
||||
|
||||
// get TX frequency
|
||||
long txfreq = Rig.GetTxFrequency();
|
||||
if (oldtxfreq != txfreq)
|
||||
{
|
||||
lock (Rig)
|
||||
{
|
||||
oldtxfreq = txfreq;
|
||||
this.ReportProgress(2, Rig);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// check for Doppler settings changes
|
||||
if (olddoppler != DopplerStrategy)
|
||||
{
|
||||
olddoppler = DopplerStrategy;
|
||||
// check for Doppler tracking enabled
|
||||
if ((DopplerStrategy == DOPPLERSTRATEGY.DOPPLER_A) || (DopplerStrategy == DOPPLERSTRATEGY.DOPPLER_B) || (DopplerStrategy == DOPPLERSTRATEGY.DOPPLER_C) || (DopplerStrategy == DOPPLERSTRATEGY.DOPPLER_D))
|
||||
{
|
||||
// enter doppler tracking
|
||||
Rig.SetDopplerStrategy(DopplerStrategy);
|
||||
Rig.EnterDoppler();
|
||||
}
|
||||
else
|
||||
{
|
||||
// leave doppler tracking
|
||||
Rig.SetDopplerStrategy(DOPPLERSTRATEGY.DOPPLER_NONE);
|
||||
Rig.LeaveDoppler();
|
||||
}
|
||||
}
|
||||
|
||||
// Doppler tracking
|
||||
if ((DopplerStrategy == DOPPLERSTRATEGY.DOPPLER_A) || (DopplerStrategy == DOPPLERSTRATEGY.DOPPLER_B) || (DopplerStrategy == DOPPLERSTRATEGY.DOPPLER_C) || (DopplerStrategy == DOPPLERSTRATEGY.DOPPLER_D))
|
||||
{
|
||||
Rig.SetSplitMode(RxFrequency, TxFrequency);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
Thread.Sleep(Properties.Settings.Default.CAT_Update);
|
||||
}
|
||||
|
||||
// reset status
|
||||
this.ReportProgress(1, RIGSTATUS.NONE);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,125 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace AirScout.CAT
|
||||
{
|
||||
public enum CATENGINE
|
||||
{
|
||||
NONE = 0,
|
||||
OMNIRIGX = 1,
|
||||
SCOUTBASE = 2,
|
||||
HAMLIB = 3
|
||||
}
|
||||
|
||||
[Description("Rig Status")]
|
||||
public enum RIGSTATUS
|
||||
{
|
||||
[Description("None")]
|
||||
NONE = 0,
|
||||
[Description("CAT not available")]
|
||||
NOCAT = 1,
|
||||
[Description("Port not available")]
|
||||
NOPORT = 2,
|
||||
[Description("Rig not available")]
|
||||
NORIG = 4,
|
||||
[Description("Rig not suitable")]
|
||||
NOTSUITABLE = 8,
|
||||
[Description("Rig offline")]
|
||||
OFFLINE = 16,
|
||||
[Description("Rig online")]
|
||||
ONLINE = 64,
|
||||
[Description("Error")]
|
||||
ERROR = 128
|
||||
}
|
||||
|
||||
public enum RIGSPLIT
|
||||
{
|
||||
NONE = 0,
|
||||
SPLITOFF = 1,
|
||||
SPLITON = 2,
|
||||
ERROR = 128
|
||||
}
|
||||
|
||||
public enum RIGRIT
|
||||
{
|
||||
NONE = 0,
|
||||
RITON = 1,
|
||||
RITOFF = 2,
|
||||
ERROR = 128
|
||||
}
|
||||
|
||||
public enum RIGMODE
|
||||
{
|
||||
NONE = 0,
|
||||
CW = 1,
|
||||
CW_R = 2,
|
||||
LSB = 3,
|
||||
USB = 4,
|
||||
DIG = 5,
|
||||
DIG_R = 6,
|
||||
AM = 7,
|
||||
FM = 8,
|
||||
OTHER = 9,
|
||||
ERROR = 128
|
||||
}
|
||||
|
||||
public enum RIGVFO
|
||||
{
|
||||
NONE = 0,
|
||||
A = 1,
|
||||
B = 2,
|
||||
ERROR = 128
|
||||
}
|
||||
|
||||
[Description("Flow Control")]
|
||||
public enum FLOWCONTROL
|
||||
{
|
||||
[Description("Low")]
|
||||
LOW,
|
||||
[Description("High")]
|
||||
HIGH,
|
||||
[Description("Handshake")]
|
||||
HANDSHAKE
|
||||
}
|
||||
|
||||
[Description("Stopbits")]
|
||||
public enum STOPBITS
|
||||
{
|
||||
[Description("1")]
|
||||
ONE,
|
||||
[Description("1,5")]
|
||||
ONE_5,
|
||||
[Description("2")]
|
||||
TWO
|
||||
}
|
||||
|
||||
[Description("Parity")]
|
||||
public enum PARITY
|
||||
{
|
||||
[Description("None")]
|
||||
NONE,
|
||||
[Description("Odd")]
|
||||
ODD,
|
||||
[Description("Even")]
|
||||
EVEN,
|
||||
[Description("Mark")]
|
||||
MARK,
|
||||
[Description("Space")]
|
||||
SPACE
|
||||
}
|
||||
|
||||
public enum DOPPLERSTRATEGY
|
||||
{
|
||||
DOPPLER_NONE = 0,
|
||||
DOPPLER_A = 1,
|
||||
DOPPLER_B = 2,
|
||||
DOPPLER_C = 4,
|
||||
DOPPLER_D = 8,
|
||||
ERROR = 128
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,526 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Linq.Expressions;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
|
||||
namespace AirScout.CAT
|
||||
{
|
||||
|
||||
// can handle different versions dynamically
|
||||
public static class ExtOmniRig
|
||||
{
|
||||
|
||||
private static dynamic OmniRigEngine = null;
|
||||
private static string OmniRigVersion = "";
|
||||
private static OMNIRIGSTATUS Status = OMNIRIGSTATUS.ST_NOTCONFIGURED;
|
||||
private static int Retries = 0;
|
||||
|
||||
public static RIGSTATUS GetRigStatus(string rig)
|
||||
{
|
||||
try
|
||||
{
|
||||
OMNIRIGSTATUS omnistat = OMNIRIGSTATUS.ST_NOTCONFIGURED;
|
||||
|
||||
if (rig == "OmniRig Rig 1")
|
||||
{
|
||||
omnistat = (OMNIRIGSTATUS)ExtOmniRig.OmniRigEngine.Rig1.Status;
|
||||
}
|
||||
else if (rig == "OmniRig Rig 2")
|
||||
{
|
||||
omnistat = (OMNIRIGSTATUS)ExtOmniRig.OmniRigEngine.Rig2.Status;
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 3")
|
||||
)
|
||||
{
|
||||
omnistat = (OMNIRIGSTATUS)ExtOmniRig.OmniRigEngine.Rig3.Status;
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 4")
|
||||
)
|
||||
{
|
||||
omnistat = (OMNIRIGSTATUS)ExtOmniRig.OmniRigEngine.Rig4.Status;
|
||||
}
|
||||
|
||||
// suppress sporadic "offline" status
|
||||
if (omnistat != OMNIRIGSTATUS.ST_ONLINE)
|
||||
{
|
||||
if (Retries < 3)
|
||||
{
|
||||
omnistat = Status;
|
||||
Retries++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Status = omnistat;
|
||||
Retries = 0;
|
||||
}
|
||||
|
||||
|
||||
// translate OmniRig status to rig status
|
||||
switch (omnistat)
|
||||
{
|
||||
case OMNIRIGSTATUS.ST_ONLINE:
|
||||
return RIGSTATUS.ONLINE;
|
||||
case OMNIRIGSTATUS.ST_NOTRESPONDING:
|
||||
return RIGSTATUS.OFFLINE;
|
||||
default:
|
||||
return RIGSTATUS.ERROR;
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing
|
||||
}
|
||||
|
||||
return RIGSTATUS.ERROR;
|
||||
}
|
||||
|
||||
public static RIGRIT GetRit(string rig)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (rig == "OmniRig Rig 1")
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig1.Rit)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_RITOFF:
|
||||
return RIGRIT.RITOFF;
|
||||
|
||||
case OMNIRIGPARAM.PM_RITON:
|
||||
return RIGRIT.RITON;
|
||||
default:
|
||||
return RIGRIT.ERROR;
|
||||
}
|
||||
}
|
||||
else if (rig == "OmniRig Rig 2")
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig2.Rit)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_RITOFF:
|
||||
return RIGRIT.RITOFF;
|
||||
|
||||
case OMNIRIGPARAM.PM_RITON:
|
||||
return RIGRIT.RITON;
|
||||
default:
|
||||
return RIGRIT.ERROR;
|
||||
}
|
||||
}
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 3")
|
||||
)
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig3.Rit)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_RITOFF:
|
||||
return RIGRIT.RITOFF;
|
||||
|
||||
case OMNIRIGPARAM.PM_RITON:
|
||||
return RIGRIT.RITON;
|
||||
default:
|
||||
return RIGRIT.ERROR;
|
||||
}
|
||||
}
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 4")
|
||||
)
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig4.Rit)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_RITOFF:
|
||||
return RIGRIT.RITOFF;
|
||||
|
||||
case OMNIRIGPARAM.PM_RITON:
|
||||
return RIGRIT.RITON;
|
||||
default:
|
||||
return RIGRIT.ERROR;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing
|
||||
}
|
||||
return RIGRIT.ERROR; ;
|
||||
}
|
||||
|
||||
public static RIGSPLIT GetSplit(string rig)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (rig == "OmniRig Rig 1")
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig1.Split)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_SPLITOFF:
|
||||
return RIGSPLIT.SPLITOFF;
|
||||
case OMNIRIGPARAM.PM_SPLITON:
|
||||
return RIGSPLIT.SPLITON;
|
||||
default:
|
||||
return RIGSPLIT.ERROR;
|
||||
}
|
||||
}
|
||||
else if (rig == "OmniRig Rig 2")
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig2.Split)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_SPLITOFF:
|
||||
return RIGSPLIT.SPLITOFF;
|
||||
case OMNIRIGPARAM.PM_SPLITON:
|
||||
return RIGSPLIT.SPLITON;
|
||||
default:
|
||||
return RIGSPLIT.ERROR;
|
||||
}
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 3")
|
||||
)
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig3.Split)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_SPLITOFF:
|
||||
return RIGSPLIT.SPLITOFF;
|
||||
case OMNIRIGPARAM.PM_SPLITON:
|
||||
return RIGSPLIT.SPLITON;
|
||||
default:
|
||||
return RIGSPLIT.ERROR;
|
||||
}
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 4")
|
||||
)
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig4.Split)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_SPLITOFF:
|
||||
return RIGSPLIT.SPLITOFF;
|
||||
case OMNIRIGPARAM.PM_SPLITON:
|
||||
return RIGSPLIT.SPLITON;
|
||||
default:
|
||||
return RIGSPLIT.ERROR;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing
|
||||
}
|
||||
return RIGSPLIT.ERROR; ;
|
||||
}
|
||||
|
||||
public static RIGMODE GetMode(string rig)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (rig == "OmniRig Rig 1")
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig1.Mode)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_CW_L:
|
||||
return RIGMODE.CW;
|
||||
case OMNIRIGPARAM.PM_CW_U:
|
||||
return RIGMODE.CW_R;
|
||||
case OMNIRIGPARAM.PM_SSB_L:
|
||||
return RIGMODE.LSB;
|
||||
case OMNIRIGPARAM.PM_SSB_U:
|
||||
return RIGMODE.USB;
|
||||
case OMNIRIGPARAM.PM_FM:
|
||||
return RIGMODE.FM;
|
||||
case OMNIRIGPARAM.PM_AM:
|
||||
return RIGMODE.AM;
|
||||
default:
|
||||
return RIGMODE.OTHER;
|
||||
}
|
||||
}
|
||||
else if (rig == "OmniRig Rig 2")
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig2.Mode)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_CW_L:
|
||||
return RIGMODE.CW;
|
||||
case OMNIRIGPARAM.PM_CW_U:
|
||||
return RIGMODE.CW_R;
|
||||
case OMNIRIGPARAM.PM_SSB_L:
|
||||
return RIGMODE.LSB;
|
||||
case OMNIRIGPARAM.PM_SSB_U:
|
||||
return RIGMODE.USB;
|
||||
case OMNIRIGPARAM.PM_FM:
|
||||
return RIGMODE.FM;
|
||||
case OMNIRIGPARAM.PM_AM:
|
||||
return RIGMODE.AM;
|
||||
default:
|
||||
return RIGMODE.OTHER;
|
||||
}
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 3")
|
||||
)
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig3.Mode)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_CW_L:
|
||||
return RIGMODE.CW;
|
||||
case OMNIRIGPARAM.PM_CW_U:
|
||||
return RIGMODE.CW_R;
|
||||
case OMNIRIGPARAM.PM_SSB_L:
|
||||
return RIGMODE.LSB;
|
||||
case OMNIRIGPARAM.PM_SSB_U:
|
||||
return RIGMODE.USB;
|
||||
case OMNIRIGPARAM.PM_FM:
|
||||
return RIGMODE.FM;
|
||||
case OMNIRIGPARAM.PM_AM:
|
||||
return RIGMODE.AM;
|
||||
default:
|
||||
return RIGMODE.OTHER;
|
||||
}
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 4")
|
||||
)
|
||||
{
|
||||
switch ((OMNIRIGPARAM)OmniRigEngine.Rig4.Mode)
|
||||
{
|
||||
case OMNIRIGPARAM.PM_CW_L:
|
||||
return RIGMODE.CW;
|
||||
case OMNIRIGPARAM.PM_CW_U:
|
||||
return RIGMODE.CW_R;
|
||||
case OMNIRIGPARAM.PM_SSB_L:
|
||||
return RIGMODE.LSB;
|
||||
case OMNIRIGPARAM.PM_SSB_U:
|
||||
return RIGMODE.USB;
|
||||
case OMNIRIGPARAM.PM_FM:
|
||||
return RIGMODE.FM;
|
||||
case OMNIRIGPARAM.PM_AM:
|
||||
return RIGMODE.AM;
|
||||
default:
|
||||
return RIGMODE.OTHER;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing
|
||||
}
|
||||
return RIGMODE.ERROR; ;
|
||||
}
|
||||
|
||||
public static long GetRXFrequency(string rig)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (rig == "OmniRig Rig 1")
|
||||
{
|
||||
return (long)OmniRigEngine.Rig1.GetRxFrequency();
|
||||
}
|
||||
else if (rig == "OmniRig Rig 2")
|
||||
{
|
||||
return (long)OmniRigEngine.Rig2.GetRxFrequency();
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 3")
|
||||
)
|
||||
{
|
||||
return (long)OmniRigEngine.Rig3.GetRxFrequency();
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 4")
|
||||
)
|
||||
{
|
||||
return (long)OmniRigEngine.Rig4.GetRxFrequency();
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
public static bool SetSplit(string rig, long rx, long tx)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (rig == "OmniRig Rig 1")
|
||||
{
|
||||
// OmniRig can handle Int32 only
|
||||
if ((rx > Int32.MaxValue) || (tx > Int32.MaxValue))
|
||||
return false;
|
||||
OmniRigEngine.Rig1.Split = OMNIRIGPARAM.PM_SPLITON;
|
||||
OmniRigEngine.Rig1.FreqA = (int)rx;
|
||||
OmniRigEngine.Rig1.FreqB = (int)tx;
|
||||
return true;
|
||||
}
|
||||
else if (rig == "OmniRig Rig 2")
|
||||
{
|
||||
// OmniRig can handle Int32 only
|
||||
if ((rx > Int32.MaxValue) || (tx > Int32.MaxValue))
|
||||
return false;
|
||||
OmniRigEngine.Rig2.Split = OMNIRIGPARAM.PM_SPLITON;
|
||||
OmniRigEngine.Rig2.FreqA = (int)rx;
|
||||
OmniRigEngine.Rig2.FreqB = (int)tx;
|
||||
return true;
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 3")
|
||||
)
|
||||
{
|
||||
// OmniRig can handle Int32 only
|
||||
if ((rx > Int32.MaxValue) || (tx > Int32.MaxValue))
|
||||
return false;
|
||||
OmniRigEngine.Rig3.Split = OMNIRIGPARAM.PM_SPLITON;
|
||||
OmniRigEngine.Rig3.FreqA = (int)rx;
|
||||
OmniRigEngine.Rig3.FreqB = (int)tx;
|
||||
return true;
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 4")
|
||||
)
|
||||
{
|
||||
// OmniRig can handle Int32 only
|
||||
if ((rx > Int32.MaxValue) || (tx > Int32.MaxValue))
|
||||
return false;
|
||||
OmniRigEngine.Rig4.Split = OMNIRIGPARAM.PM_SPLITON;
|
||||
OmniRigEngine.Rig4.FreqA = (int)rx;
|
||||
OmniRigEngine.Rig4.FreqB = (int)tx;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
public static bool SetSimplex(string rig, long rx)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (rig == "OmniRig Rig 1")
|
||||
{
|
||||
// OmniRig can handle Int32 only
|
||||
if (rx > Int32.MaxValue)
|
||||
return false;
|
||||
OmniRigEngine.Rig1.Split = OMNIRIGPARAM.PM_SPLITOFF;
|
||||
OmniRigEngine.Rig1.FreqA = (int)rx;
|
||||
return true;
|
||||
}
|
||||
else if (rig == "OmniRig Rig 2")
|
||||
{
|
||||
// OmniRig can handle Int32 only
|
||||
if (rx > Int32.MaxValue)
|
||||
return false;
|
||||
OmniRigEngine.Rig2.Split = OMNIRIGPARAM.PM_SPLITOFF;
|
||||
OmniRigEngine.Rig2.FreqA = (int)rx;
|
||||
return true;
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 3")
|
||||
)
|
||||
{
|
||||
// OmniRig can handle Int32 only
|
||||
if (rx > Int32.MaxValue)
|
||||
return false;
|
||||
OmniRigEngine.Rig3.Split = OMNIRIGPARAM.PM_SPLITOFF;
|
||||
OmniRigEngine.Rig3.FreqA = (int)rx;
|
||||
return true;
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 4")
|
||||
)
|
||||
{
|
||||
// OmniRig can handle Int32 only
|
||||
if (rx > Int32.MaxValue)
|
||||
return false;
|
||||
OmniRigEngine.Rig4.Split = OMNIRIGPARAM.PM_SPLITOFF;
|
||||
OmniRigEngine.Rig4.FreqA = (int)rx;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
public static bool SetRit(string rig, RIGRIT rit)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (rig == "OmniRig Rig 1")
|
||||
{
|
||||
OmniRigEngine.Rig1.Rit = (rit == RIGRIT.RITON) ? OMNIRIGPARAM.PM_RITON : OMNIRIGPARAM.PM_RITOFF;
|
||||
return true;
|
||||
}
|
||||
else if (rig == "OmniRig Rig 2")
|
||||
{
|
||||
OmniRigEngine.Rig2.Rit = (rit == RIGRIT.RITON) ? OMNIRIGPARAM.PM_RITON : OMNIRIGPARAM.PM_RITOFF;
|
||||
return true;
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 3")
|
||||
)
|
||||
{
|
||||
OmniRigEngine.Rig3.Rit = (rit == RIGRIT.RITON) ? OMNIRIGPARAM.PM_RITON : OMNIRIGPARAM.PM_RITOFF;
|
||||
return true;
|
||||
}
|
||||
|
||||
else if ((OmniRigEngine.InterfaceVersion >= 0x210) &&
|
||||
(OmniRigEngine.InterfaceVersion >= 0x299) &&
|
||||
(rig == "OmniRig 4")
|
||||
)
|
||||
{
|
||||
OmniRigEngine.Rig3.Rit = (rit == RIGRIT.RITON) ? OMNIRIGPARAM.PM_RITON : OMNIRIGPARAM.PM_RITOFF;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,71 @@
|
|||
using ScoutBase.CAT;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Dynamic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace AirScout.CAT
|
||||
{
|
||||
public class RigSettings
|
||||
{
|
||||
// rig type name
|
||||
public string Type { get; set; } = "";
|
||||
public string Model { get; set; } = "";
|
||||
|
||||
// port settings
|
||||
public string PortName { get; set; } = "";
|
||||
public int Baudrate { get; set; } = 0;
|
||||
public int DataBits { get; set; } = 0;
|
||||
public PARITY Parity { get; set; } = PARITY.NONE;
|
||||
public STOPBITS StopBits { get; set; } = STOPBITS.ONE;
|
||||
public FLOWCONTROL RtsMode { get; set; } = FLOWCONTROL.LOW;
|
||||
public FLOWCONTROL DtrMode { get; set; } = FLOWCONTROL.LOW;
|
||||
|
||||
// time settings
|
||||
public int PollMs { get; set; } = 1000;
|
||||
public int TimeoutMs { get; set; } = 5000;
|
||||
|
||||
|
||||
}
|
||||
|
||||
// repesents an interface to a rig connected via CAT interface
|
||||
// supports variuos kinds of connections
|
||||
public interface IRig
|
||||
{
|
||||
|
||||
// Rig
|
||||
RigSettings Settings { get; set; }
|
||||
CATENGINE CatEngine { get; }
|
||||
string CatVersion { get; }
|
||||
|
||||
// rig status, read-only
|
||||
RIGSTATUS GetStatus();
|
||||
|
||||
// get rig values
|
||||
RIGMODE GetMode();
|
||||
RIGSPLIT GetSplit();
|
||||
RIGRIT GetRit();
|
||||
RIGVFO GetVfo();
|
||||
long GetRxFrequency();
|
||||
long GetTxFrequency();
|
||||
|
||||
// set rig values
|
||||
bool SetMode(RIGMODE mode);
|
||||
bool SetSplit(RIGSPLIT split);
|
||||
bool SetRit(RIGRIT rit);
|
||||
bool SetVfo(RIGVFO vfo);
|
||||
bool SetRxFrequency(long rx);
|
||||
bool SetTxFrequency(long tx);
|
||||
|
||||
// rig capabilities
|
||||
bool SetSimplexMode(long freq, RIGMODE mode = RIGMODE.NONE);
|
||||
bool SetSplitMode(long rxfreq, long txfreq, RIGMODE mode = RIGMODE.NONE);
|
||||
|
||||
// doppler tracking
|
||||
bool SetDopplerStrategy(DOPPLERSTRATEGY doppler);
|
||||
bool EnterDoppler();
|
||||
bool LeaveDoppler();
|
||||
|
||||
}
|
||||
}
|
Plik diff jest za duży
Load Diff
|
@ -0,0 +1,36 @@
|
|||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// Allgemeine Informationen über eine Assembly werden über die folgenden
|
||||
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
|
||||
// die einer Assembly zugeordnet sind.
|
||||
[assembly: AssemblyTitle("AirScout.CAT")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("AirScout.CAT")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2021")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly
|
||||
// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von
|
||||
// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
|
||||
[assembly: Guid("ffdec390-7bbc-4dec-9826-1dd04279f3fa")]
|
||||
|
||||
// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
|
||||
//
|
||||
// Hauptversion
|
||||
// Nebenversion
|
||||
// Buildnummer
|
||||
// Revision
|
||||
//
|
||||
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
|
||||
// indem Sie "*" wie unten gezeigt eingeben:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
|
@ -0,0 +1,182 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Dieser Code wurde von einem Tool generiert.
|
||||
// Laufzeitversion:4.0.30319.42000
|
||||
//
|
||||
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
|
||||
// der Code erneut generiert wird.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace AirScout.CAT.Properties {
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.5.0.0")]
|
||||
public sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default {
|
||||
get {
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool CAT_Activate {
|
||||
get {
|
||||
return ((bool)(this["CAT_Activate"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_Activate"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("500")]
|
||||
public int CAT_Update {
|
||||
get {
|
||||
return ((int)(this["CAT_Update"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_Update"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("500")]
|
||||
public int CAT_ResponseTimeout {
|
||||
get {
|
||||
return ((int)(this["CAT_ResponseTimeout"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_ResponseTimeout"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string CAT_RigType {
|
||||
get {
|
||||
return ((string)(this["CAT_RigType"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_RigType"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string CAT_PortName {
|
||||
get {
|
||||
return ((string)(this["CAT_PortName"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_PortName"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("9600")]
|
||||
public int CAT_Baudrate {
|
||||
get {
|
||||
return ((int)(this["CAT_Baudrate"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_Baudrate"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("8")]
|
||||
public int CAT_DataBits {
|
||||
get {
|
||||
return ((int)(this["CAT_DataBits"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_DataBits"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("NONE")]
|
||||
public global::AirScout.CAT.PARITY CAT_Parity {
|
||||
get {
|
||||
return ((global::AirScout.CAT.PARITY)(this["CAT_Parity"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_Parity"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("ONE")]
|
||||
public global::AirScout.CAT.STOPBITS CAT_StopBits {
|
||||
get {
|
||||
return ((global::AirScout.CAT.STOPBITS)(this["CAT_StopBits"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_StopBits"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("LOW")]
|
||||
public global::AirScout.CAT.FLOWCONTROL CAT_RTS {
|
||||
get {
|
||||
return ((global::AirScout.CAT.FLOWCONTROL)(this["CAT_RTS"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_RTS"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("LOW")]
|
||||
public global::AirScout.CAT.FLOWCONTROL CAT_DTR {
|
||||
get {
|
||||
return ((global::AirScout.CAT.FLOWCONTROL)(this["CAT_DTR"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_DTR"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("100")]
|
||||
public int CAT_Poll {
|
||||
get {
|
||||
return ((int)(this["CAT_Poll"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_Poll"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("500")]
|
||||
public int CAT_Timeout {
|
||||
get {
|
||||
return ((int)(this["CAT_Timeout"]));
|
||||
}
|
||||
set {
|
||||
this["CAT_Timeout"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,45 @@
|
|||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="AirScout.CAT.Properties" GeneratedClassName="Settings">
|
||||
<Profiles />
|
||||
<Settings>
|
||||
<Setting Name="CAT_Activate" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="CAT_Update" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">500</Value>
|
||||
</Setting>
|
||||
<Setting Name="CAT_ResponseTimeout" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">500</Value>
|
||||
</Setting>
|
||||
<Setting Name="CAT_RigType" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="CAT_PortName" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="CAT_Baudrate" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">9600</Value>
|
||||
</Setting>
|
||||
<Setting Name="CAT_DataBits" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">8</Value>
|
||||
</Setting>
|
||||
<Setting Name="CAT_Parity" Type="AirScout.CAT.PARITY" Scope="User">
|
||||
<Value Profile="(Default)">NONE</Value>
|
||||
</Setting>
|
||||
<Setting Name="CAT_StopBits" Type="AirScout.CAT.STOPBITS" Scope="User">
|
||||
<Value Profile="(Default)">ONE</Value>
|
||||
</Setting>
|
||||
<Setting Name="CAT_RTS" Type="AirScout.CAT.FLOWCONTROL" Scope="User">
|
||||
<Value Profile="(Default)">LOW</Value>
|
||||
</Setting>
|
||||
<Setting Name="CAT_DTR" Type="AirScout.CAT.FLOWCONTROL" Scope="User">
|
||||
<Value Profile="(Default)">LOW</Value>
|
||||
</Setting>
|
||||
<Setting Name="CAT_Poll" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">100</Value>
|
||||
</Setting>
|
||||
<Setting Name="CAT_Timeout" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">500</Value>
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
|
@ -0,0 +1,706 @@
|
|||
using ScoutBase.CAT;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Net.Mime;
|
||||
using System.Text;
|
||||
using System.Xml.Schema;
|
||||
|
||||
namespace AirScout.CAT
|
||||
{
|
||||
// represents a rig connected directly via ScoutBase.CAT (OmniRig style)
|
||||
public class ScoutBaseRig : ScoutBase.CAT.Rig, IRig
|
||||
{
|
||||
|
||||
private RigSettings Settings = new RigSettings();
|
||||
|
||||
// doppler tracking strategy
|
||||
DOPPLERSTRATEGY DopplerStrategy = DOPPLERSTRATEGY.DOPPLER_NONE;
|
||||
|
||||
// save rig settings
|
||||
private RIGMODE SaveRigMode;
|
||||
private RIGSPLIT SaveRigSplit;
|
||||
private RIGRIT SaveRigRit;
|
||||
private long SaveRxFrequency;
|
||||
private long SaveTxFrequency;
|
||||
|
||||
|
||||
// ************************ Interface *********************************
|
||||
|
||||
RigSettings IRig.Settings
|
||||
{
|
||||
get
|
||||
{
|
||||
|
||||
return Settings;
|
||||
}
|
||||
set
|
||||
{
|
||||
Settings = value;
|
||||
|
||||
this.Enabled = false;
|
||||
|
||||
// copy settings to rig settings
|
||||
ScoutBase.CAT.RigSettings settings = new ScoutBase.CAT.RigSettings();
|
||||
settings.RigType = Settings.Model;
|
||||
settings.PortName = Settings.PortName;
|
||||
settings.Baudrate = Settings.Baudrate;
|
||||
settings.DataBits = Settings.DataBits;
|
||||
switch(Settings.Parity)
|
||||
{
|
||||
case PARITY.EVEN: settings.Parity = Parity.ptEven; break;
|
||||
case PARITY.ODD: settings.Parity = Parity.ptOdd; break;
|
||||
case PARITY.MARK: settings.Parity = Parity.ptMark; break;
|
||||
case PARITY.SPACE: settings.Parity = Parity.ptSpace; break;
|
||||
default: settings.Parity = Parity.ptNone; break;
|
||||
}
|
||||
switch(Settings.StopBits)
|
||||
{
|
||||
case STOPBITS.ONE_5: settings.StopBits = StopBits.sbOne_5; break;
|
||||
case STOPBITS.TWO: settings.StopBits = StopBits.sbTwo; break;
|
||||
default: settings.StopBits = StopBits.sbOne; break;
|
||||
}
|
||||
switch (Settings.RtsMode)
|
||||
{
|
||||
case FLOWCONTROL.HIGH: settings.RtsMode = FlowControl.fcHigh; break;
|
||||
case FLOWCONTROL.HANDSHAKE: settings.RtsMode = FlowControl.fcHandShake; break;
|
||||
default: settings.RtsMode = FlowControl.fcLow; break;
|
||||
}
|
||||
switch (Settings.DtrMode)
|
||||
{
|
||||
case FLOWCONTROL.HIGH: settings.DtrMode = FlowControl.fcHigh; break;
|
||||
case FLOWCONTROL.HANDSHAKE: settings.DtrMode = FlowControl.fcHandShake; break;
|
||||
default: settings.DtrMode = FlowControl.fcLow; break;
|
||||
}
|
||||
settings.PollMs = Settings.PollMs;
|
||||
settings.TimeoutMs = Settings.TimeoutMs;
|
||||
|
||||
// transfer settings to rig and restart
|
||||
settings.ToRig(this);
|
||||
|
||||
// enable rig
|
||||
this.Enabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
CATENGINE IRig.CatEngine
|
||||
{
|
||||
get
|
||||
{
|
||||
return CATENGINE.SCOUTBASE;
|
||||
}
|
||||
}
|
||||
|
||||
string IRig.CatVersion
|
||||
{
|
||||
get
|
||||
{
|
||||
return "ScoutBase.CAT V" + ScoutBase.CAT.OmniRig.InterfaceVersion;
|
||||
}
|
||||
}
|
||||
|
||||
public RIGSTATUS GetStatus()
|
||||
{
|
||||
try
|
||||
{
|
||||
// translate result to RIGSTATUS values
|
||||
switch ((RigCtlStatus)this.Status)
|
||||
{
|
||||
case RigCtlStatus.stPortBusy: return RIGSTATUS.NOPORT;
|
||||
case RigCtlStatus.stNotConfigured: return RIGSTATUS.NORIG;
|
||||
case RigCtlStatus.stDisabled: return RIGSTATUS.NORIG;
|
||||
case RigCtlStatus.stNotResponding: return RIGSTATUS.OFFLINE;
|
||||
}
|
||||
|
||||
// rig is online
|
||||
// check for rig capabilities here
|
||||
if (DopplerStrategy == DOPPLERSTRATEGY.DOPPLER_A)
|
||||
{
|
||||
// rig must support at least split operation
|
||||
if ((!this.IsParamReadable(RigParam.pmSplitOff)) ||
|
||||
(!this.IsParamReadable(RigParam.pmSplitOn)) ||
|
||||
(!this.IsParamWriteable(RigParam.pmSplitOff)) ||
|
||||
(!this.IsParamWriteable(RigParam.pmSplitOn)) ||
|
||||
(!this.IsParamWriteable(RigParam.pmVfoEqual))
|
||||
)
|
||||
{
|
||||
return RIGSTATUS.NOTSUITABLE;
|
||||
}
|
||||
}
|
||||
|
||||
// return online
|
||||
return RIGSTATUS.ONLINE;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return RIGSTATUS.NONE;
|
||||
}
|
||||
|
||||
public RIGMODE GetMode()
|
||||
{
|
||||
try
|
||||
{
|
||||
switch ((RigParam)this.Mode)
|
||||
{
|
||||
case RigParam.pmCW_L: return RIGMODE.CW;
|
||||
case RigParam.pmCW_U: return RIGMODE.CW_R;
|
||||
case RigParam.pmSSB_L: return RIGMODE.LSB;
|
||||
case RigParam.pmSSB_U: return RIGMODE.USB;
|
||||
case RigParam.pmDIG_L: return RIGMODE.DIG;
|
||||
case RigParam.pmDIG_U: return RIGMODE.DIG_R;
|
||||
case RigParam.pmAM: return RIGMODE.AM;
|
||||
case RigParam.pmFM: return RIGMODE.FM;
|
||||
}
|
||||
|
||||
return RIGMODE.NONE;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return RIGMODE.NONE;
|
||||
}
|
||||
|
||||
public RIGSPLIT GetSplit()
|
||||
{
|
||||
try
|
||||
{
|
||||
switch ((RigParam)this.Split)
|
||||
{
|
||||
case RigParam.pmSplitOff: return RIGSPLIT.SPLITOFF;
|
||||
case RigParam.pmSplitOn: return RIGSPLIT.SPLITON;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return RIGSPLIT.NONE;
|
||||
|
||||
}
|
||||
|
||||
public RIGRIT GetRit()
|
||||
{
|
||||
try
|
||||
{
|
||||
switch ((RigParam)this.Rit)
|
||||
{
|
||||
case RigParam.pmRitOff: return RIGRIT.RITOFF;
|
||||
case RigParam.pmRitOn: return RIGRIT.RITON;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return RIGRIT.NONE;
|
||||
|
||||
}
|
||||
|
||||
public RIGVFO GetVfo()
|
||||
{
|
||||
try
|
||||
{
|
||||
switch ((RigParam)this.Vfo)
|
||||
{
|
||||
case RigParam.pmVfoA: return RIGVFO.A;
|
||||
case RigParam.pmVfoB: return RIGVFO.B;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return RIGVFO.NONE;
|
||||
|
||||
}
|
||||
|
||||
long IRig.GetRxFrequency()
|
||||
{
|
||||
try
|
||||
{
|
||||
if ((RigParam)this.Split == RigParam.pmSplitOff)
|
||||
{
|
||||
// check if pmFreq is readable --> return Freq
|
||||
if (this.Freq > 0)
|
||||
return this.Freq;
|
||||
// check if pmFreqA is readable --> return FreqA instead
|
||||
if (this.FreqA > 0)
|
||||
return this.FreqA;
|
||||
}
|
||||
else
|
||||
{
|
||||
// check if pmFreqA is readable --> return FreqA instead
|
||||
if (this.FreqA > 0)
|
||||
return this.FreqA;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
long IRig.GetTxFrequency()
|
||||
{
|
||||
try
|
||||
{
|
||||
if ((RigParam)this.Split == RigParam.pmSplitOff)
|
||||
{
|
||||
// check if pmFreq is readable --> return Freq
|
||||
if (this.Freq > 0)
|
||||
return this.Freq;
|
||||
// check if pmFreqA is readable --> return FreqA instead
|
||||
if (this.FreqA > 0)
|
||||
return this.FreqA;
|
||||
}
|
||||
else
|
||||
{
|
||||
// check if pmFreqB is readable --> return FreqB instead
|
||||
if (this.FreqB > 0)
|
||||
return this.FreqB;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
// ********************************************************************
|
||||
|
||||
public bool SetMode(RIGMODE mode)
|
||||
{
|
||||
try
|
||||
{
|
||||
switch (mode)
|
||||
{
|
||||
case RIGMODE.CW: this.Mode = RigParam.pmCW_L; return true;
|
||||
case RIGMODE.CW_R: this.Mode = RigParam.pmCW_U; return true;
|
||||
case RIGMODE.LSB: this.Mode = RigParam.pmSSB_L; return true;
|
||||
case RIGMODE.USB: this.Mode = RigParam.pmSSB_U; return true;
|
||||
case RIGMODE.DIG: this.Mode = RigParam.pmDIG_L; return true;
|
||||
case RIGMODE.DIG_R: this.Mode = RigParam.pmDIG_U; return true;
|
||||
case RIGMODE.AM: this.Mode = RigParam.pmAM; return true;
|
||||
case RIGMODE.FM: this.Mode = RigParam.pmFM; return true;
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public bool SetSplit(RIGSPLIT split)
|
||||
{
|
||||
try
|
||||
{
|
||||
switch (split)
|
||||
{
|
||||
case RIGSPLIT.SPLITOFF: this.Split = RigParam.pmSplitOff; return true;
|
||||
case RIGSPLIT.SPLITON: this.Split = RigParam.pmSplitOn; return true;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public bool SetRit(RIGRIT rit)
|
||||
{
|
||||
try
|
||||
{
|
||||
switch (rit)
|
||||
{
|
||||
case RIGRIT.RITOFF: this.Rit = RigParam.pmRitOff; return true;
|
||||
case RIGRIT.RITON: this.Rit = RigParam.pmRitOn; return true;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public bool SetVfo(RIGVFO vfo)
|
||||
{
|
||||
try
|
||||
{
|
||||
switch (vfo)
|
||||
{
|
||||
case RIGVFO.A: this.Vfo = RigParam.pmVfoA; return true;
|
||||
case RIGVFO.B: this.Vfo = RigParam.pmVfoB; return true;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public bool SetRxFrequency(long rx)
|
||||
{
|
||||
try
|
||||
{
|
||||
if ((RigParam)this.Split == RigParam.pmSplitOff)
|
||||
{
|
||||
// check if pmFreq is writeable --> set Freq
|
||||
if (this.IsParamWriteable(RigParam.pmFreq))
|
||||
{
|
||||
this.Freq = (int)rx;
|
||||
return true;
|
||||
}
|
||||
// check if pmFreqA is writeable --> set FreqA instead
|
||||
if (this.IsParamWriteable(RigParam.pmFreqA))
|
||||
{
|
||||
this.FreqA = (int)rx;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// check if pmFreqA is writeable --> set FreqA instead
|
||||
if (this.IsParamWriteable(RigParam.pmFreqA))
|
||||
{
|
||||
this.FreqA = (int)rx;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public bool SetTxFrequency(long tx)
|
||||
{
|
||||
try
|
||||
{
|
||||
if ((RigParam)this.Split == RigParam.pmSplitOff)
|
||||
{
|
||||
// check if pmFreq is writeable --> set Freq
|
||||
if (this.IsParamWriteable(RigParam.pmFreq))
|
||||
{
|
||||
this.Freq = (int)tx;
|
||||
return true;
|
||||
}
|
||||
// check if pmFreqA is writeable --> set FreqA instead
|
||||
if (this.IsParamWriteable(RigParam.pmFreqA))
|
||||
{
|
||||
this.FreqA = (int)tx;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// check if pmFreqB is writeable --> set FreqB instead
|
||||
if (this.IsParamWriteable(RigParam.pmFreqB))
|
||||
{
|
||||
this.FreqB = (int)tx;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public bool IntSetSimplexMode(dynamic rig, long freq, RIGMODE mode)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public bool SetSimplexMode(long freq, RIGMODE mode = RIGMODE.NONE)
|
||||
{
|
||||
|
||||
// set frequency and switch split off
|
||||
try
|
||||
{
|
||||
if (this.IsParamWriteable(RigParam.pmFreqA) && this.IsParamWriteable(RigParam.pmVfoAA))
|
||||
{
|
||||
this.Vfo = RigParam.pmVfoAA;
|
||||
this.FreqA = freq;
|
||||
}
|
||||
else if (this.IsParamWriteable(RigParam.pmFreqA) && this.IsParamWriteable(RigParam.pmVfoA) && this.IsParamWriteable(RigParam.pmSplitOff))
|
||||
{
|
||||
this.Vfo = RigParam.pmVfoA;
|
||||
this.FreqA = freq;
|
||||
}
|
||||
else if (this.IsParamWriteable(RigParam.pmFreq) && this.IsParamWriteable(RigParam.pmVfoA) && this.IsParamWriteable(RigParam.pmVfoB))
|
||||
{
|
||||
this.Vfo = RigParam.pmVfoB;
|
||||
this.Freq = freq;
|
||||
this.Vfo = RigParam.pmVfoA;
|
||||
this.Freq = freq;
|
||||
}
|
||||
else if (this.IsParamWriteable(RigParam.pmFreq) && this.IsParamWriteable(RigParam.pmVfoEqual))
|
||||
{
|
||||
this.Freq = freq;
|
||||
this.Vfo = RigParam.pmVfoEqual;
|
||||
}
|
||||
else if (this.IsParamWriteable(RigParam.pmFreq) && this.IsParamWriteable(RigParam.pmVfoSwap))
|
||||
{
|
||||
this.Vfo = RigParam.pmVfoSwap;
|
||||
this.Freq = freq;
|
||||
this.Vfo = RigParam.pmVfoSwap;
|
||||
this.Freq = freq;
|
||||
}
|
||||
// Added by RA6UAZ for Icom Marine Radio NMEA Command
|
||||
else if (this.IsParamWriteable(RigParam.pmFreq) && !this.IsParamWriteable(RigParam.pmVfoA) && this.IsParamWriteable(RigParam.pmFreqB))
|
||||
{
|
||||
this.Freq = freq;
|
||||
this.FreqB = freq;
|
||||
}
|
||||
else if (this.IsParamWriteable(RigParam.pmFreq))
|
||||
{
|
||||
this.Freq = freq;
|
||||
}
|
||||
|
||||
if (this.IsParamWriteable(RigParam.pmSplitOff))
|
||||
{
|
||||
this.Split = RigParam.pmSplitOff;
|
||||
}
|
||||
|
||||
// simply set mode on current VFO
|
||||
if (CanWriteMode() && (mode != RIGMODE.NONE))
|
||||
{
|
||||
this.SetMode(mode);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private bool CanWriteMode()
|
||||
{
|
||||
// check if modes are writable
|
||||
if (!this.IsParamWriteable(RigParam.pmCW_L))
|
||||
return false;
|
||||
if (!this.IsParamWriteable(RigParam.pmCW_U))
|
||||
return false;
|
||||
if (!this.IsParamWriteable(RigParam.pmSSB_L))
|
||||
return false;
|
||||
if (!this.IsParamWriteable(RigParam.pmSSB_U))
|
||||
return false;
|
||||
if (!this.IsParamWriteable(RigParam.pmDIG_L))
|
||||
return false;
|
||||
if (!this.IsParamWriteable(RigParam.pmDIG_U))
|
||||
return false;
|
||||
if (!this.IsParamWriteable(RigParam.pmAM))
|
||||
return false;
|
||||
if (!this.IsParamWriteable(RigParam.pmFM))
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public bool SetSplitMode(long rxfreq, long txfreq, RIGMODE mode = RIGMODE.NONE)
|
||||
{
|
||||
//set rx and tx frequencies and split
|
||||
try
|
||||
{
|
||||
// try to set mode on both Vfos via VfoEqual which is the easiest way
|
||||
if (this.IsParamWriteable(RigParam.pmVfoEqual))
|
||||
{
|
||||
if (CanWriteMode() && (mode != RIGMODE.NONE))
|
||||
{
|
||||
this.SetMode(mode);
|
||||
this.Vfo = RigParam.pmVfoEqual;
|
||||
}
|
||||
}
|
||||
|
||||
if (this.IsParamWriteable(RigParam.pmFreqA) && this.IsParamWriteable(RigParam.pmFreqB) && this.IsParamWriteable(RigParam.pmVfoAB))
|
||||
{
|
||||
// TS-570
|
||||
this.Vfo = RigParam.pmVfoAB;
|
||||
this.FreqA = rxfreq;
|
||||
this.FreqB = txfreq;
|
||||
// try to set mode once for both VFOs
|
||||
if (CanWriteMode() && (mode != RIGMODE.NONE))
|
||||
{
|
||||
this.SetMode(mode);
|
||||
}
|
||||
}
|
||||
else if (this.IsParamWriteable(RigParam.pmFreq) && this.IsParamWriteable(RigParam.pmVfoEqual))
|
||||
{
|
||||
// IC-746
|
||||
this.Freq = txfreq;
|
||||
// should work fine for both VFOs because of VfoEqual
|
||||
if (CanWriteMode() && (mode != RIGMODE.NONE))
|
||||
{
|
||||
this.SetMode(mode);
|
||||
}
|
||||
this.Vfo = RigParam.pmVfoEqual;
|
||||
this.Freq = rxfreq;
|
||||
}
|
||||
else if (this.IsParamWriteable(RigParam.pmVfoB) && this.IsParamWriteable(RigParam.pmFreq) && this.IsParamWriteable(RigParam.pmVfoA))
|
||||
{
|
||||
// FT-100D
|
||||
this.Vfo = RigParam.pmVfoB;
|
||||
this.Freq = txfreq;
|
||||
// should work fine for both VFOs because of switching to both VFOs
|
||||
if (CanWriteMode() && (mode != RIGMODE.NONE))
|
||||
{
|
||||
this.SetMode(mode);
|
||||
}
|
||||
this.Vfo = RigParam.pmVfoA;
|
||||
this.Freq = rxfreq;
|
||||
// should work fine for both VFOs because of switching to both VFOs
|
||||
if (CanWriteMode() && (mode != RIGMODE.NONE))
|
||||
{
|
||||
this.SetMode(mode);
|
||||
}
|
||||
}
|
||||
else if (this.IsParamWriteable(RigParam.pmFreq) && this.IsParamWriteable(RigParam.pmVfoSwap))
|
||||
{
|
||||
// FT-817 ?
|
||||
this.Vfo = RigParam.pmVfoSwap;
|
||||
this.Freq = txfreq;
|
||||
// should work fine for both VFOs because of VfoSwap
|
||||
if (CanWriteMode() && (mode != RIGMODE.NONE))
|
||||
{
|
||||
this.SetMode(mode);
|
||||
}
|
||||
this.Vfo = RigParam.pmVfoSwap;
|
||||
this.Freq = rxfreq;
|
||||
// should work fine for both VFOs because of VfoSwap
|
||||
if (CanWriteMode() && (mode != RIGMODE.NONE))
|
||||
{
|
||||
this.SetMode(mode);
|
||||
}
|
||||
}
|
||||
else if (this.IsParamWriteable(RigParam.pmFreqA) && this.IsParamWriteable(RigParam.pmFreqB) && this.IsParamWriteable(RigParam.pmVfoA))
|
||||
{
|
||||
//FT-1000 MP, IC-7610
|
||||
this.Vfo = RigParam.pmVfoA;
|
||||
this.FreqA = rxfreq;
|
||||
this.FreqB = txfreq;
|
||||
// can set only mode on VFO A
|
||||
if (CanWriteMode() && (mode != RIGMODE.NONE))
|
||||
{
|
||||
this.SetMode(mode);
|
||||
}
|
||||
|
||||
}
|
||||
// Added by RA6UAZ for Icom Marine Radio NMEA Command
|
||||
else if (this.IsParamWriteable(RigParam.pmFreq) && !this.IsParamWriteable(RigParam.pmFreqA) && this.IsParamWriteable(RigParam.pmFreqB))
|
||||
{
|
||||
this.Freq = rxfreq;
|
||||
this.FreqB = txfreq;
|
||||
}
|
||||
|
||||
if (this.IsParamWriteable(RigParam.pmSplitOn))
|
||||
{
|
||||
this.Split = RigParam.pmSplitOn;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public bool SetDopplerStrategy(DOPPLERSTRATEGY doppler)
|
||||
{
|
||||
DopplerStrategy = doppler;
|
||||
return true;
|
||||
}
|
||||
|
||||
public bool EnterDoppler()
|
||||
{
|
||||
// return false if we are not online or rig not suitable
|
||||
if (GetStatus() != RIGSTATUS.ONLINE)
|
||||
return false;
|
||||
|
||||
// save rig settings
|
||||
SaveRigMode = this.GetMode();
|
||||
SaveRigSplit = this.GetSplit();
|
||||
SaveRigRit = this.GetRit();
|
||||
SaveRxFrequency = this.GetRxFrequency();
|
||||
SaveTxFrequency = this.GetTxFrequency();
|
||||
|
||||
SetSplitMode(SaveRxFrequency, SaveRxFrequency, SaveRigMode);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public bool LeaveDoppler()
|
||||
{
|
||||
// restore rig settings
|
||||
if (SaveRigMode != RIGMODE.NONE)
|
||||
SetMode(SaveRigMode);
|
||||
if (SaveRigSplit != RIGSPLIT.NONE)
|
||||
SetSplit(SaveRigSplit);
|
||||
if (SaveRigRit != RIGRIT.NONE)
|
||||
SetRit(SaveRigRit);
|
||||
if (SaveRxFrequency > 0)
|
||||
SetRxFrequency(SaveRxFrequency);
|
||||
if (SaveTxFrequency > 0)
|
||||
SetTxFrequency(SaveTxFrequency);
|
||||
|
||||
SetSimplexMode(SaveRxFrequency, SaveRigMode);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static List<SupportedRig> SupportedRigs()
|
||||
{
|
||||
List<SupportedRig> rigs = new List<SupportedRig>();
|
||||
List<string> rigtypes = ScoutBase.CAT.OmniRig.SupportedRigs();
|
||||
foreach (string rigtype in rigtypes)
|
||||
{
|
||||
SupportedRig rig = new SupportedRig();
|
||||
rig.Type = "[Serial] " + rigtype;
|
||||
rig.Model = rigtype;
|
||||
rig.CATEngine = CATENGINE.SCOUTBASE;
|
||||
rigs.Add(rig);
|
||||
}
|
||||
|
||||
// return list of rigs
|
||||
return rigs;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace AirScout.CAT
|
||||
{
|
||||
public class SupportedRig
|
||||
{
|
||||
public string Type { get; set; } = "";
|
||||
public string Model { get; set; } = "";
|
||||
public CATENGINE CATEngine { get; set; } = CATENGINE.NONE;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
|
||||
<section name="AirScout.CAT.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<userSettings>
|
||||
<AirScout.CAT.Properties.Settings>
|
||||
<setting name="CAT_Activate" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="CAT_Update" serializeAs="String">
|
||||
<value>500</value>
|
||||
</setting>
|
||||
<setting name="CAT_ResponseTimeout" serializeAs="String">
|
||||
<value>500</value>
|
||||
</setting>
|
||||
<setting name="CAT_RigType" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="CAT_PortName" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="CAT_Baudrate" serializeAs="String">
|
||||
<value>9600</value>
|
||||
</setting>
|
||||
<setting name="CAT_DataBits" serializeAs="String">
|
||||
<value>8</value>
|
||||
</setting>
|
||||
<setting name="CAT_Parity" serializeAs="String">
|
||||
<value>NONE</value>
|
||||
</setting>
|
||||
<setting name="CAT_StopBits" serializeAs="String">
|
||||
<value>ONE</value>
|
||||
</setting>
|
||||
<setting name="CAT_RTS" serializeAs="String">
|
||||
<value>LOW</value>
|
||||
</setting>
|
||||
<setting name="CAT_DTR" serializeAs="String">
|
||||
<value>LOW</value>
|
||||
</setting>
|
||||
<setting name="CAT_Poll" serializeAs="String">
|
||||
<value>100</value>
|
||||
</setting>
|
||||
<setting name="CAT_Timeout" serializeAs="String">
|
||||
<value>500</value>
|
||||
</setting>
|
||||
</AirScout.CAT.Properties.Settings>
|
||||
</userSettings>
|
||||
</configuration>
|
|
@ -37,8 +37,8 @@
|
|||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.112.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
|
@ -73,12 +73,12 @@
|
|||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -29,4 +29,11 @@ namespace AirScout.Core
|
|||
FASTFORWARD = 5
|
||||
}
|
||||
|
||||
public enum AIRSCOUTTRACKMODE
|
||||
{
|
||||
NONE = 0,
|
||||
SINGLE = 1,
|
||||
TRACK = 2,
|
||||
ERROR = 128
|
||||
}
|
||||
}
|
||||
|
|
|
@ -90,6 +90,14 @@ namespace AirScout.Core
|
|||
public bool Ambiguous = false;
|
||||
public string Comment = "";
|
||||
|
||||
// old values if available
|
||||
public DateTime OldTime;
|
||||
public double OldLat;
|
||||
public double OldLon;
|
||||
public double OldAlt;
|
||||
public double OldTrack;
|
||||
public double OldSpeed;
|
||||
|
||||
public PlaneInfo()
|
||||
{
|
||||
Time = DateTime.UtcNow;
|
||||
|
@ -108,6 +116,7 @@ namespace AirScout.Core
|
|||
From = "";
|
||||
To = "";
|
||||
VSpeed = 0;
|
||||
|
||||
}
|
||||
|
||||
public PlaneInfo(DateTime time, string call, string reg, string hex, double lat, double lon, double track, double alt, double speed, string type, string manufacturer, string model, PLANECATEGORY category)
|
||||
|
@ -125,6 +134,13 @@ namespace AirScout.Core
|
|||
Manufacturer = manufacturer;
|
||||
Model = model;
|
||||
Category = category;
|
||||
|
||||
OldTime = DateTime.MinValue;
|
||||
OldLat = 0;
|
||||
OldLon = 0;
|
||||
OldAlt = 0;
|
||||
OldTrack = 0;
|
||||
OldSpeed = 0;
|
||||
}
|
||||
|
||||
// LEGACY!!!
|
||||
|
@ -143,10 +159,18 @@ namespace AirScout.Core
|
|||
Manufacturer = (string)row[10];
|
||||
Model = (string)row[11];
|
||||
Category = (PLANECATEGORY)row[12];
|
||||
|
||||
OldTime = DateTime.MinValue;
|
||||
OldLat = 0;
|
||||
OldLon = 0;
|
||||
OldAlt = 0;
|
||||
OldTrack = 0;
|
||||
OldSpeed = 0;
|
||||
}
|
||||
|
||||
public PlaneInfo (PlaneInfo plane)
|
||||
{
|
||||
|
||||
this.Ambiguous = plane.Ambiguous;
|
||||
this.Alt = plane.Alt;
|
||||
this.AltDiff = plane.AltDiff;
|
||||
|
@ -174,6 +198,13 @@ namespace AirScout.Core
|
|||
this.Track = plane.Track;
|
||||
this.Type = plane.Type;
|
||||
|
||||
this.OldTime = plane.OldTime;
|
||||
this.OldLat = plane.OldLat;
|
||||
this.OldLon = plane.OldLon;
|
||||
this.OldAlt = plane.OldAlt;
|
||||
this.OldTrack = plane.OldTrack;
|
||||
this.OldSpeed = plane.OldSpeed;
|
||||
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.113.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.113.7" targetFramework="net40" />
|
||||
</packages>
|
|
@ -74,7 +74,7 @@ namespace System.Net
|
|||
throw new TimeoutException("Connection timed out.");
|
||||
}
|
||||
while (!trailer.Contains("\r\n"));
|
||||
// Console.WriteLine("Reading content [" + contentlength.ToString() + " bytes]: " + resp);
|
||||
// Console.WriteLine("Reading content [" + contentlength.ToString() + " bytes]: " + resp);
|
||||
response += resp;
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -59,8 +59,8 @@
|
|||
<Reference Include="System" />
|
||||
<Reference Include="System.ComponentModel.Composition" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.112.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Security" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
|
@ -123,12 +123,12 @@
|
|||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.113.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.113.7" targetFramework="net40" />
|
||||
</packages>
|
|
@ -37,8 +37,8 @@
|
|||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.112.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
|
@ -80,12 +80,12 @@
|
|||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.113.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.113.7" targetFramework="net40" />
|
||||
</packages>
|
138
AirScout.sln
138
AirScout.sln
|
@ -31,8 +31,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AeroWizard", "AeroWizard\Ae
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SerializableGenerics", "SerializableGenerics\SerializableGenerics.csproj", "{EF2EB181-4D5B-4418-A280-BFA1D53550BE}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AirScoutDatabaseManager", "AirScoutDatabaseManager\AirScoutDatabaseManager.csproj", "{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ElevationTileGenerator", "ElevationTileGenerator\ElevationTileGenerator.csproj", "{955CEA7D-37F6-4122-B4CA-B08C2B73969F}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SQLiteDatabase", "SQLiteDatabase\SQLiteDatabase\SQLiteDatabase.csproj", "{6056D3BE-7002-4A6A-A9EA-6FF45122A3C7}"
|
||||
|
@ -83,12 +81,26 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AirScout.PlaneFeeds.Plugin.
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AirScout.PlaneFeeds.Plugin.OpenSky", "AirScout.PlaneFeeds.Plugin.OpenSky\AirScout.PlaneFeeds.Plugin.OpenSky.csproj", "{23F584DB-EB5E-452D-B49F-7C1CABB713FF}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AirScout.PlaneFeeds.Plugin.PlaneFinder", "AirScout.PlaneFeeds.Plugin.PlaneFinder\AirScout.PlaneFeeds.Plugin.PlaneFinder.csproj", "{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ScoutBase.Maps", "ScoutBase\ScoutBase.Maps\ScoutBase.Maps.csproj", "{B3B005A5-CC05-430B-B966-20BE5E5985BF}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MapTileGenerator", "MapTileGenerator\MapTileGenerator.csproj", "{3D5AADC3-E4CA-4C12-8939-8DC778F6018E}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CATCheck", "CATCheck\CATCheck.csproj", "{0F0B27D0-7957-4CE0-9121-2C89746AF136}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ScoutBase.CAT", "ScoutBase\ScoutBase.CAT\ScoutBase.CAT.csproj", "{C9291203-B5D0-4179-888D-04BC670B158F}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AirScout.CAT", "AirScout.CAT\AirScout.CAT.csproj", "{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RainScout", "RainScout\RainScout.csproj", "{F14C9DB2-D556-45F4-8CB5-E9B402C36087}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RainScout.Radars", "RainScout.Radars\RainScout.Radars.csproj", "{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RainScout.Core", "RainScout.Core\RainScout.Core.csproj", "{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ElevationCoverageMapper", "ElevationCoverageMapper\ElevationCoverageMapper.csproj", "{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WinTestSimulator", "WinTestSimulator\WinTestSimulator.csproj", "{B7B00B6B-4288-4562-9773-116556607857}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
|
@ -250,16 +262,6 @@ Global
|
|||
{EF2EB181-4D5B-4418-A280-BFA1D53550BE}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{EF2EB181-4D5B-4418-A280-BFA1D53550BE}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{EF2EB181-4D5B-4418-A280-BFA1D53550BE}.Release|x86.Build.0 = Release|Any CPU
|
||||
{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}.Release|x86.ActiveCfg = Release|x86
|
||||
{00062ABB-C482-4B06-BD1B-C49DE9ABA9E5}.Release|x86.Build.0 = Release|x86
|
||||
{955CEA7D-37F6-4122-B4CA-B08C2B73969F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{955CEA7D-37F6-4122-B4CA-B08C2B73969F}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{955CEA7D-37F6-4122-B4CA-B08C2B73969F}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
|
@ -551,18 +553,6 @@ Global
|
|||
{23F584DB-EB5E-452D-B49F-7C1CABB713FF}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{23F584DB-EB5E-452D-B49F-7C1CABB713FF}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{23F584DB-EB5E-452D-B49F-7C1CABB713FF}.Release|x86.Build.0 = Release|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{DB85E98A-E209-49D0-B6CF-6CDD5B8E20E3}.Release|x86.Build.0 = Release|Any CPU
|
||||
{B3B005A5-CC05-430B-B966-20BE5E5985BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B3B005A5-CC05-430B-B966-20BE5E5985BF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B3B005A5-CC05-430B-B966-20BE5E5985BF}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
|
@ -587,6 +577,102 @@ Global
|
|||
{3D5AADC3-E4CA-4C12-8939-8DC778F6018E}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{3D5AADC3-E4CA-4C12-8939-8DC778F6018E}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{3D5AADC3-E4CA-4C12-8939-8DC778F6018E}.Release|x86.Build.0 = Release|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{0F0B27D0-7957-4CE0-9121-2C89746AF136}.Release|x86.Build.0 = Release|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{C9291203-B5D0-4179-888D-04BC670B158F}.Release|x86.Build.0 = Release|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{FFDEC390-7BBC-4DEC-9826-1DD04279F3FA}.Release|x86.Build.0 = Release|Any CPU
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Debug|x86.Build.0 = Debug|x86
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Release|x86.ActiveCfg = Release|x86
|
||||
{F14C9DB2-D556-45F4-8CB5-E9B402C36087}.Release|x86.Build.0 = Release|x86
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{58A3209F-1BF2-4B59-9A2A-0983CE232CB0}.Release|x86.Build.0 = Release|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{2AA51078-C9E9-4AD0-A8CD-2A028A6BC886}.Release|x86.Build.0 = Release|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{3ABFFAF3-5169-4DF6-9F64-BF44FCCD26F1}.Release|x86.Build.0 = Release|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{B7B00B6B-4288-4562-9773-116556607857}.Release|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
|
|
@ -117,8 +117,8 @@
|
|||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.112.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Design" />
|
||||
<Reference Include="System.Management" />
|
||||
|
@ -142,6 +142,8 @@
|
|||
<Compile Include="DeleteSingleStationDlg.Designer.cs">
|
||||
<DependentUpon>DeleteSingleStationDlg.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Enums.cs" />
|
||||
<Compile Include="GMapLocatorPolygon.cs" />
|
||||
<Compile Include="MapPreloader.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
|
@ -202,6 +204,12 @@
|
|||
<Compile Include="LicenseDlg.Designer.cs">
|
||||
<DependentUpon>LicenseDlg.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PercentageControl.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="PercentageControl.Designer.cs">
|
||||
<DependentUpon>PercentageControl.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PlaneFeedDisclaimerDlg.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
|
@ -285,6 +293,7 @@
|
|||
<DependentUpon>Splash.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TooltipDataPoint.cs" />
|
||||
<Compile Include="TrackValues.cs" />
|
||||
<Compile Include="TrafficDlg.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
|
@ -354,6 +363,9 @@
|
|||
<EmbeddedResource Include="MapStationDlg.resx">
|
||||
<DependentUpon>MapStationDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="PercentageControl.resx">
|
||||
<DependentUpon>PercentageControl.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="PlaneFeedDisclaimerDlg.resx">
|
||||
<DependentUpon>PlaneFeedDisclaimerDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
|
@ -447,6 +459,10 @@
|
|||
<Project>{288a26ec-b690-41a2-84e5-61c9b7b74046}</Project>
|
||||
<Name>AirScout.Aircrafts</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\AirScout.CAT\AirScout.CAT.csproj">
|
||||
<Project>{ffdec390-7bbc-4dec-9826-1dd04279f3fa}</Project>
|
||||
<Name>AirScout.CAT</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\AirScout.Core\AirScout.Core.csproj">
|
||||
<Project>{41b66be4-6086-4ae3-be31-c81ee6b10154}</Project>
|
||||
<Name>AirScout.Core</Name>
|
||||
|
@ -487,6 +503,10 @@
|
|||
<Project>{507de008-21ac-469b-bc30-23b239832af6}</Project>
|
||||
<Name>OxyPlot</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ScoutBase\ScoutBase.CAT\ScoutBase.CAT.csproj">
|
||||
<Project>{c9291203-b5d0-4179-888d-04bc670b158f}</Project>
|
||||
<Name>ScoutBase.CAT</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ScoutBase\ScoutBase.Core\ScoutBase.Core.csproj">
|
||||
<Project>{EE86E933-D883-4B18-80EB-0FBA55EC67C6}</Project>
|
||||
<Name>ScoutBase.Core</Name>
|
||||
|
@ -583,12 +603,12 @@
|
|||
<PostBuildEvent>
|
||||
</PostBuildEvent>
|
||||
</PropertyGroup>
|
||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace AirScout
|
||||
{
|
||||
public enum TRACKSTATUS
|
||||
{
|
||||
NONE = 0,
|
||||
STOPPED = 1,
|
||||
SINGLE = 2,
|
||||
TRACKING = 3,
|
||||
ERROR = 128
|
||||
}
|
||||
|
||||
public enum ROTSTATUS
|
||||
{
|
||||
NONE = 0,
|
||||
STOPPED = 1,
|
||||
TRACKING = 2,
|
||||
ERROR = 128
|
||||
}
|
||||
}
|
|
@ -46,6 +46,8 @@
|
|||
this.ud_MinLon = new System.Windows.Forms.NumericUpDown();
|
||||
this.gm_Coverage = new GMap.NET.WindowsForms.GMapControl();
|
||||
this.wp_ElevationModel = new AeroWizard.WizardPage();
|
||||
this.cb_ASTER1 = new System.Windows.Forms.CheckBox();
|
||||
this.cb_ASTER3 = new System.Windows.Forms.CheckBox();
|
||||
this.richTextBox2 = new System.Windows.Forms.RichTextBox();
|
||||
this.cb_SRTM1 = new System.Windows.Forms.CheckBox();
|
||||
this.cb_SRTM3 = new System.Windows.Forms.CheckBox();
|
||||
|
@ -65,6 +67,16 @@
|
|||
this.label7 = new System.Windows.Forms.Label();
|
||||
this.cb_SRTM1_EnableCache = new System.Windows.Forms.CheckBox();
|
||||
this.gm_SRTM1 = new GMap.NET.WindowsForms.GMapControl();
|
||||
this.wp_ASTER3 = new AeroWizard.WizardPage();
|
||||
this.lbl_ASTER3_Status = new System.Windows.Forms.Label();
|
||||
this.label23 = new System.Windows.Forms.Label();
|
||||
this.cb_ASTER3_EnableCache = new System.Windows.Forms.CheckBox();
|
||||
this.gm_ASTER3 = new GMap.NET.WindowsForms.GMapControl();
|
||||
this.wp_ASTER1 = new AeroWizard.WizardPage();
|
||||
this.lbl_ASTER1_Status = new System.Windows.Forms.Label();
|
||||
this.label25 = new System.Windows.Forms.Label();
|
||||
this.cb_ASTER1_EnableCache = new System.Windows.Forms.CheckBox();
|
||||
this.gm_ASTER1 = new GMap.NET.WindowsForms.GMapControl();
|
||||
this.wp_UserDetails = new AeroWizard.WizardPage();
|
||||
this.label19 = new System.Windows.Forms.Label();
|
||||
this.label18 = new System.Windows.Forms.Label();
|
||||
|
@ -98,6 +110,8 @@
|
|||
this.bw_SRTM1_MapUpdater = new System.ComponentModel.BackgroundWorker();
|
||||
this.ss_Main = new System.Windows.Forms.StatusStrip();
|
||||
this.tsl_Status = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.bw_ASTER3_MapUpdater = new System.ComponentModel.BackgroundWorker();
|
||||
this.bw_ASTER1_MapUpdater = new System.ComponentModel.BackgroundWorker();
|
||||
((System.ComponentModel.ISupportInitialize)(this.sw_FirstRun)).BeginInit();
|
||||
this.wp_TermsAndConditions.SuspendLayout();
|
||||
this.wp_GeneralCoverage.SuspendLayout();
|
||||
|
@ -109,6 +123,8 @@
|
|||
this.wp_GLOBE.SuspendLayout();
|
||||
this.wp_SRTM3.SuspendLayout();
|
||||
this.wp_SRTM1.SuspendLayout();
|
||||
this.wp_ASTER3.SuspendLayout();
|
||||
this.wp_ASTER1.SuspendLayout();
|
||||
this.wp_UserDetails.SuspendLayout();
|
||||
this.wp_PlaneFeeds.SuspendLayout();
|
||||
this.wp_Finish.SuspendLayout();
|
||||
|
@ -128,6 +144,8 @@
|
|||
this.sw_FirstRun.Pages.Add(this.wp_GLOBE);
|
||||
this.sw_FirstRun.Pages.Add(this.wp_SRTM3);
|
||||
this.sw_FirstRun.Pages.Add(this.wp_SRTM1);
|
||||
this.sw_FirstRun.Pages.Add(this.wp_ASTER3);
|
||||
this.sw_FirstRun.Pages.Add(this.wp_ASTER1);
|
||||
this.sw_FirstRun.Pages.Add(this.wp_UserDetails);
|
||||
this.sw_FirstRun.Pages.Add(this.wp_PlaneFeeds);
|
||||
this.sw_FirstRun.Pages.Add(this.wp_Finish);
|
||||
|
@ -341,6 +359,7 @@
|
|||
this.gm_Coverage.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_Coverage.Name = "gm_Coverage";
|
||||
this.gm_Coverage.NegativeMode = false;
|
||||
this.gm_Coverage.Opacity = 1D;
|
||||
this.gm_Coverage.PolygonsEnabled = true;
|
||||
this.gm_Coverage.RetryLoadTile = 0;
|
||||
this.gm_Coverage.RoutesEnabled = true;
|
||||
|
@ -353,6 +372,8 @@
|
|||
//
|
||||
// wp_ElevationModel
|
||||
//
|
||||
this.wp_ElevationModel.Controls.Add(this.cb_ASTER1);
|
||||
this.wp_ElevationModel.Controls.Add(this.cb_ASTER3);
|
||||
this.wp_ElevationModel.Controls.Add(this.richTextBox2);
|
||||
this.wp_ElevationModel.Controls.Add(this.cb_SRTM1);
|
||||
this.wp_ElevationModel.Controls.Add(this.cb_SRTM3);
|
||||
|
@ -364,6 +385,30 @@
|
|||
this.wp_ElevationModel.Text = "Elevation Model";
|
||||
this.wp_ElevationModel.Enter += new System.EventHandler(this.wp_ElevationModel_Enter);
|
||||
//
|
||||
// cb_ASTER1
|
||||
//
|
||||
this.cb_ASTER1.AutoSize = true;
|
||||
this.cb_ASTER1.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.cb_ASTER1.Location = new System.Drawing.Point(85, 355);
|
||||
this.cb_ASTER1.Name = "cb_ASTER1";
|
||||
this.cb_ASTER1.Size = new System.Drawing.Size(332, 25);
|
||||
this.cb_ASTER1.TabIndex = 6;
|
||||
this.cb_ASTER1.Text = "Use ASTER1 Elevation Model (experimental)";
|
||||
this.cb_ASTER1.UseVisualStyleBackColor = true;
|
||||
this.cb_ASTER1.CheckedChanged += new System.EventHandler(this.cb_ASTER1_CheckedChanged);
|
||||
//
|
||||
// cb_ASTER3
|
||||
//
|
||||
this.cb_ASTER3.AutoSize = true;
|
||||
this.cb_ASTER3.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.cb_ASTER3.Location = new System.Drawing.Point(85, 329);
|
||||
this.cb_ASTER3.Name = "cb_ASTER3";
|
||||
this.cb_ASTER3.Size = new System.Drawing.Size(332, 25);
|
||||
this.cb_ASTER3.TabIndex = 5;
|
||||
this.cb_ASTER3.Text = "Use ASTER3 Elevation Model (experimental)";
|
||||
this.cb_ASTER3.UseVisualStyleBackColor = true;
|
||||
this.cb_ASTER3.CheckedChanged += new System.EventHandler(this.cb_ASTER3_CheckedChanged);
|
||||
//
|
||||
// richTextBox2
|
||||
//
|
||||
this.richTextBox2.BackColor = System.Drawing.Color.White;
|
||||
|
@ -475,6 +520,7 @@
|
|||
this.gm_GLOBE.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_GLOBE.Name = "gm_GLOBE";
|
||||
this.gm_GLOBE.NegativeMode = false;
|
||||
this.gm_GLOBE.Opacity = 1D;
|
||||
this.gm_GLOBE.PolygonsEnabled = true;
|
||||
this.gm_GLOBE.RetryLoadTile = 0;
|
||||
this.gm_GLOBE.RoutesEnabled = true;
|
||||
|
@ -546,6 +592,7 @@
|
|||
this.gm_SRTM3.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_SRTM3.Name = "gm_SRTM3";
|
||||
this.gm_SRTM3.NegativeMode = false;
|
||||
this.gm_SRTM3.Opacity = 1D;
|
||||
this.gm_SRTM3.PolygonsEnabled = true;
|
||||
this.gm_SRTM3.RetryLoadTile = 0;
|
||||
this.gm_SRTM3.RoutesEnabled = true;
|
||||
|
@ -617,6 +664,7 @@
|
|||
this.gm_SRTM1.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_SRTM1.Name = "gm_SRTM1";
|
||||
this.gm_SRTM1.NegativeMode = false;
|
||||
this.gm_SRTM1.Opacity = 1D;
|
||||
this.gm_SRTM1.PolygonsEnabled = true;
|
||||
this.gm_SRTM1.RetryLoadTile = 0;
|
||||
this.gm_SRTM1.RoutesEnabled = true;
|
||||
|
@ -626,6 +674,150 @@
|
|||
this.gm_SRTM1.TabIndex = 9;
|
||||
this.gm_SRTM1.Zoom = 0D;
|
||||
//
|
||||
// wp_ASTER3
|
||||
//
|
||||
this.wp_ASTER3.Controls.Add(this.lbl_ASTER3_Status);
|
||||
this.wp_ASTER3.Controls.Add(this.label23);
|
||||
this.wp_ASTER3.Controls.Add(this.cb_ASTER3_EnableCache);
|
||||
this.wp_ASTER3.Controls.Add(this.gm_ASTER3);
|
||||
this.wp_ASTER3.Name = "wp_ASTER3";
|
||||
this.wp_ASTER3.Size = new System.Drawing.Size(586, 398);
|
||||
this.sw_FirstRun.SetStepText(this.wp_ASTER3, "ASTER3");
|
||||
this.wp_ASTER3.TabIndex = 12;
|
||||
this.wp_ASTER3.Text = "ASTER3";
|
||||
this.wp_ASTER3.Enter += new System.EventHandler(this.wp_ASTER3_Enter);
|
||||
this.wp_ASTER3.Leave += new System.EventHandler(this.wp_ASTER3_Leave);
|
||||
//
|
||||
// lbl_ASTER3_Status
|
||||
//
|
||||
this.lbl_ASTER3_Status.AutoSize = true;
|
||||
this.lbl_ASTER3_Status.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.lbl_ASTER3_Status.Location = new System.Drawing.Point(54, 60);
|
||||
this.lbl_ASTER3_Status.Name = "lbl_ASTER3_Status";
|
||||
this.lbl_ASTER3_Status.Size = new System.Drawing.Size(40, 15);
|
||||
this.lbl_ASTER3_Status.TabIndex = 9;
|
||||
this.lbl_ASTER3_Status.Text = "Status";
|
||||
//
|
||||
// label23
|
||||
//
|
||||
this.label23.AutoSize = true;
|
||||
this.label23.Font = new System.Drawing.Font("Segoe UI Semibold", 10F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))));
|
||||
this.label23.ForeColor = System.Drawing.Color.SteelBlue;
|
||||
this.label23.Location = new System.Drawing.Point(53, 8);
|
||||
this.label23.Name = "label23";
|
||||
this.label23.Size = new System.Drawing.Size(459, 19);
|
||||
this.label23.TabIndex = 8;
|
||||
this.label23.Text = "(A)dvanced (S)paceborne (T)hermal (E)mission and (R)eflection 3 arcsec";
|
||||
//
|
||||
// cb_ASTER3_EnableCache
|
||||
//
|
||||
this.cb_ASTER3_EnableCache.AutoSize = true;
|
||||
this.cb_ASTER3_EnableCache.Checked = global::AirScout.Properties.Settings.Default.Elevation_SRTM3_EnableCache;
|
||||
this.cb_ASTER3_EnableCache.DataBindings.Add(new System.Windows.Forms.Binding("Checked", global::AirScout.Properties.Settings.Default, "Elevation_SRTM3_EnableCache", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.cb_ASTER3_EnableCache.Location = new System.Drawing.Point(57, 38);
|
||||
this.cb_ASTER3_EnableCache.Name = "cb_ASTER3_EnableCache";
|
||||
this.cb_ASTER3_EnableCache.Size = new System.Drawing.Size(243, 19);
|
||||
this.cb_ASTER3_EnableCache.TabIndex = 7;
|
||||
this.cb_ASTER3_EnableCache.Text = "Keep downloaded elevation tiles in cache";
|
||||
this.cb_ASTER3_EnableCache.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// gm_ASTER3
|
||||
//
|
||||
this.gm_ASTER3.Bearing = 0F;
|
||||
this.gm_ASTER3.CanDragMap = true;
|
||||
this.gm_ASTER3.EmptyTileColor = System.Drawing.Color.Navy;
|
||||
this.gm_ASTER3.GrayScaleMode = false;
|
||||
this.gm_ASTER3.HelperLineOption = GMap.NET.WindowsForms.HelperLineOptions.DontShow;
|
||||
this.gm_ASTER3.LevelsKeepInMemmory = 5;
|
||||
this.gm_ASTER3.Location = new System.Drawing.Point(53, 79);
|
||||
this.gm_ASTER3.MarkersEnabled = true;
|
||||
this.gm_ASTER3.MaxZoom = 2;
|
||||
this.gm_ASTER3.MinZoom = 2;
|
||||
this.gm_ASTER3.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_ASTER3.Name = "gm_ASTER3";
|
||||
this.gm_ASTER3.NegativeMode = false;
|
||||
this.gm_ASTER3.Opacity = 1D;
|
||||
this.gm_ASTER3.PolygonsEnabled = true;
|
||||
this.gm_ASTER3.RetryLoadTile = 0;
|
||||
this.gm_ASTER3.RoutesEnabled = true;
|
||||
this.gm_ASTER3.SelectedAreaFillColor = System.Drawing.Color.FromArgb(((int)(((byte)(33)))), ((int)(((byte)(65)))), ((int)(((byte)(105)))), ((int)(((byte)(225)))));
|
||||
this.gm_ASTER3.ShowTileGridLines = false;
|
||||
this.gm_ASTER3.Size = new System.Drawing.Size(480, 311);
|
||||
this.gm_ASTER3.TabIndex = 6;
|
||||
this.gm_ASTER3.Zoom = 0D;
|
||||
//
|
||||
// wp_ASTER1
|
||||
//
|
||||
this.wp_ASTER1.Controls.Add(this.lbl_ASTER1_Status);
|
||||
this.wp_ASTER1.Controls.Add(this.label25);
|
||||
this.wp_ASTER1.Controls.Add(this.cb_ASTER1_EnableCache);
|
||||
this.wp_ASTER1.Controls.Add(this.gm_ASTER1);
|
||||
this.wp_ASTER1.Name = "wp_ASTER1";
|
||||
this.wp_ASTER1.Size = new System.Drawing.Size(586, 398);
|
||||
this.sw_FirstRun.SetStepText(this.wp_ASTER1, "ASTER1");
|
||||
this.wp_ASTER1.TabIndex = 13;
|
||||
this.wp_ASTER1.Text = "ASTER1";
|
||||
this.wp_ASTER1.Enter += new System.EventHandler(this.wp_ASTER1_Enter);
|
||||
this.wp_ASTER1.Leave += new System.EventHandler(this.wp_ASTER1_Leave);
|
||||
//
|
||||
// lbl_ASTER1_Status
|
||||
//
|
||||
this.lbl_ASTER1_Status.AutoSize = true;
|
||||
this.lbl_ASTER1_Status.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.lbl_ASTER1_Status.Location = new System.Drawing.Point(54, 60);
|
||||
this.lbl_ASTER1_Status.Name = "lbl_ASTER1_Status";
|
||||
this.lbl_ASTER1_Status.Size = new System.Drawing.Size(40, 15);
|
||||
this.lbl_ASTER1_Status.TabIndex = 9;
|
||||
this.lbl_ASTER1_Status.Text = "Status";
|
||||
//
|
||||
// label25
|
||||
//
|
||||
this.label25.AutoSize = true;
|
||||
this.label25.Font = new System.Drawing.Font("Segoe UI Semibold", 10F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))));
|
||||
this.label25.ForeColor = System.Drawing.Color.SteelBlue;
|
||||
this.label25.Location = new System.Drawing.Point(53, 8);
|
||||
this.label25.Name = "label25";
|
||||
this.label25.Size = new System.Drawing.Size(458, 19);
|
||||
this.label25.TabIndex = 8;
|
||||
this.label25.Text = "(A)dvanced (S)paceborne (T)hermal (E)mission and (R)eflection 1 arcsec";
|
||||
//
|
||||
// cb_ASTER1_EnableCache
|
||||
//
|
||||
this.cb_ASTER1_EnableCache.AutoSize = true;
|
||||
this.cb_ASTER1_EnableCache.Checked = global::AirScout.Properties.Settings.Default.Elevation_SRTM3_EnableCache;
|
||||
this.cb_ASTER1_EnableCache.DataBindings.Add(new System.Windows.Forms.Binding("Checked", global::AirScout.Properties.Settings.Default, "Elevation_SRTM3_EnableCache", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.cb_ASTER1_EnableCache.Location = new System.Drawing.Point(57, 38);
|
||||
this.cb_ASTER1_EnableCache.Name = "cb_ASTER1_EnableCache";
|
||||
this.cb_ASTER1_EnableCache.Size = new System.Drawing.Size(243, 19);
|
||||
this.cb_ASTER1_EnableCache.TabIndex = 7;
|
||||
this.cb_ASTER1_EnableCache.Text = "Keep downloaded elevation tiles in cache";
|
||||
this.cb_ASTER1_EnableCache.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// gm_ASTER1
|
||||
//
|
||||
this.gm_ASTER1.Bearing = 0F;
|
||||
this.gm_ASTER1.CanDragMap = true;
|
||||
this.gm_ASTER1.EmptyTileColor = System.Drawing.Color.Navy;
|
||||
this.gm_ASTER1.GrayScaleMode = false;
|
||||
this.gm_ASTER1.HelperLineOption = GMap.NET.WindowsForms.HelperLineOptions.DontShow;
|
||||
this.gm_ASTER1.LevelsKeepInMemmory = 5;
|
||||
this.gm_ASTER1.Location = new System.Drawing.Point(53, 79);
|
||||
this.gm_ASTER1.MarkersEnabled = true;
|
||||
this.gm_ASTER1.MaxZoom = 2;
|
||||
this.gm_ASTER1.MinZoom = 2;
|
||||
this.gm_ASTER1.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_ASTER1.Name = "gm_ASTER1";
|
||||
this.gm_ASTER1.NegativeMode = false;
|
||||
this.gm_ASTER1.Opacity = 1D;
|
||||
this.gm_ASTER1.PolygonsEnabled = true;
|
||||
this.gm_ASTER1.RetryLoadTile = 0;
|
||||
this.gm_ASTER1.RoutesEnabled = true;
|
||||
this.gm_ASTER1.SelectedAreaFillColor = System.Drawing.Color.FromArgb(((int)(((byte)(33)))), ((int)(((byte)(65)))), ((int)(((byte)(105)))), ((int)(((byte)(225)))));
|
||||
this.gm_ASTER1.ShowTileGridLines = false;
|
||||
this.gm_ASTER1.Size = new System.Drawing.Size(480, 311);
|
||||
this.gm_ASTER1.TabIndex = 6;
|
||||
this.gm_ASTER1.Zoom = 0D;
|
||||
//
|
||||
// wp_UserDetails
|
||||
//
|
||||
this.wp_UserDetails.Controls.Add(this.label19);
|
||||
|
@ -767,6 +959,7 @@
|
|||
this.gm_Callsign.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_Callsign.Name = "gm_Callsign";
|
||||
this.gm_Callsign.NegativeMode = false;
|
||||
this.gm_Callsign.Opacity = 1D;
|
||||
this.gm_Callsign.PolygonsEnabled = true;
|
||||
this.gm_Callsign.RetryLoadTile = 0;
|
||||
this.gm_Callsign.RoutesEnabled = true;
|
||||
|
@ -996,6 +1189,22 @@
|
|||
this.tsl_Status.Size = new System.Drawing.Size(42, 17);
|
||||
this.tsl_Status.Text = "Status.";
|
||||
//
|
||||
// bw_ASTER3_MapUpdater
|
||||
//
|
||||
this.bw_ASTER3_MapUpdater.WorkerReportsProgress = true;
|
||||
this.bw_ASTER3_MapUpdater.WorkerSupportsCancellation = true;
|
||||
this.bw_ASTER3_MapUpdater.DoWork += new System.ComponentModel.DoWorkEventHandler(this.bw_ASTER3_MapUpdater_DoWork);
|
||||
this.bw_ASTER3_MapUpdater.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.bw_ASTER3_MapUpdater_ProgressChanged);
|
||||
this.bw_ASTER3_MapUpdater.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.bw_ASTER3_MapUpdater_RunWorkerCompleted);
|
||||
//
|
||||
// bw_ASTER1_MapUpdater
|
||||
//
|
||||
this.bw_ASTER1_MapUpdater.WorkerReportsProgress = true;
|
||||
this.bw_ASTER1_MapUpdater.WorkerSupportsCancellation = true;
|
||||
this.bw_ASTER1_MapUpdater.DoWork += new System.ComponentModel.DoWorkEventHandler(this.bw_ASTER1_MapUpdater_DoWork);
|
||||
this.bw_ASTER1_MapUpdater.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.bw_ASTER1_MapUpdater_ProgressChanged);
|
||||
this.bw_ASTER1_MapUpdater.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.bw_ASTER1_MapUpdater_RunWorkerCompleted);
|
||||
//
|
||||
// FirstRunWizard
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
|
@ -1027,6 +1236,10 @@
|
|||
this.wp_SRTM3.PerformLayout();
|
||||
this.wp_SRTM1.ResumeLayout(false);
|
||||
this.wp_SRTM1.PerformLayout();
|
||||
this.wp_ASTER3.ResumeLayout(false);
|
||||
this.wp_ASTER3.PerformLayout();
|
||||
this.wp_ASTER1.ResumeLayout(false);
|
||||
this.wp_ASTER1.PerformLayout();
|
||||
this.wp_UserDetails.ResumeLayout(false);
|
||||
this.wp_UserDetails.PerformLayout();
|
||||
this.wp_PlaneFeeds.ResumeLayout(false);
|
||||
|
@ -1110,5 +1323,19 @@
|
|||
private System.Windows.Forms.Label label7;
|
||||
private System.Windows.Forms.CheckBox cb_SRTM1_EnableCache;
|
||||
private System.Windows.Forms.Label label6;
|
||||
private AeroWizard.WizardPage wp_ASTER3;
|
||||
private System.Windows.Forms.Label lbl_ASTER3_Status;
|
||||
private System.Windows.Forms.Label label23;
|
||||
private System.Windows.Forms.CheckBox cb_ASTER3_EnableCache;
|
||||
private GMap.NET.WindowsForms.GMapControl gm_ASTER3;
|
||||
private AeroWizard.WizardPage wp_ASTER1;
|
||||
private System.Windows.Forms.Label lbl_ASTER1_Status;
|
||||
private System.Windows.Forms.Label label25;
|
||||
private System.Windows.Forms.CheckBox cb_ASTER1_EnableCache;
|
||||
private GMap.NET.WindowsForms.GMapControl gm_ASTER1;
|
||||
private System.ComponentModel.BackgroundWorker bw_ASTER3_MapUpdater;
|
||||
private System.ComponentModel.BackgroundWorker bw_ASTER1_MapUpdater;
|
||||
private System.Windows.Forms.CheckBox cb_ASTER1;
|
||||
private System.Windows.Forms.CheckBox cb_ASTER3;
|
||||
}
|
||||
}
|
|
@ -30,6 +30,8 @@ namespace AirScout
|
|||
GMapOverlay GLOBEpolygons = new GMapOverlay("GLOBEpolygons");
|
||||
GMapOverlay SRTM3polygons = new GMapOverlay("SRTM3polygons");
|
||||
GMapOverlay SRTM1polygons = new GMapOverlay("SRTM1polygons");
|
||||
GMapOverlay ASTER3polygons = new GMapOverlay("ASTER3polygons");
|
||||
GMapOverlay ASTER1polygons = new GMapOverlay("ASTER1polygons");
|
||||
GMapOverlay Callsignpolygons = new GMapOverlay("Callsignpolygons");
|
||||
GMapOverlay Callsignspositions = new GMapOverlay("Callsignpositions");
|
||||
|
||||
|
@ -119,6 +121,40 @@ namespace AirScout
|
|||
gm_SRTM1.MapScaleInfoEnabled = true;
|
||||
gm_SRTM1.Overlays.Add(SRTM1polygons);
|
||||
|
||||
// set initial settings for ASTER3Map
|
||||
GMap.NET.MapProviders.GMapProvider.UserAgent = "AirScout";
|
||||
// clearing referrer URL issue 2019-12-14
|
||||
gm_ASTER3.MapProvider.RefererUrl = "";
|
||||
gm_ASTER3.MapProvider = GMapProviders.Find(Properties.Settings.Default.Map_Provider);
|
||||
gm_ASTER3.IgnoreMarkerOnMouseWheel = true;
|
||||
gm_ASTER3.MinZoom = 0;
|
||||
gm_ASTER3.MaxZoom = 20;
|
||||
gm_ASTER3.Zoom = 1;
|
||||
gm_ASTER3.DragButton = System.Windows.Forms.MouseButtons.Left;
|
||||
gm_ASTER3.CanDragMap = true;
|
||||
gm_ASTER3.ScalePen = new Pen(Color.Black, 3);
|
||||
gm_ASTER3.HelperLinePen = null;
|
||||
gm_ASTER3.SelectionPen = null;
|
||||
gm_ASTER3.MapScaleInfoEnabled = true;
|
||||
gm_ASTER3.Overlays.Add(ASTER3polygons);
|
||||
|
||||
// set initial settings for ASTER1Map
|
||||
GMap.NET.MapProviders.GMapProvider.UserAgent = "AirScout";
|
||||
// clearing referrer URL issue 2019-12-14
|
||||
gm_ASTER1.MapProvider.RefererUrl = "";
|
||||
gm_ASTER1.MapProvider = GMapProviders.Find(Properties.Settings.Default.Map_Provider);
|
||||
gm_ASTER1.IgnoreMarkerOnMouseWheel = true;
|
||||
gm_ASTER1.MinZoom = 0;
|
||||
gm_ASTER1.MaxZoom = 20;
|
||||
gm_ASTER1.Zoom = 1;
|
||||
gm_ASTER1.DragButton = System.Windows.Forms.MouseButtons.Left;
|
||||
gm_ASTER1.CanDragMap = true;
|
||||
gm_ASTER1.ScalePen = new Pen(Color.Black, 3);
|
||||
gm_ASTER1.HelperLinePen = null;
|
||||
gm_ASTER1.SelectionPen = null;
|
||||
gm_ASTER1.MapScaleInfoEnabled = true;
|
||||
gm_ASTER1.Overlays.Add(ASTER1polygons);
|
||||
|
||||
// set initial settings for user details
|
||||
GMap.NET.MapProviders.GMapProvider.UserAgent = "AirScout";
|
||||
// clearing referrer URL issue 2019-12-14
|
||||
|
@ -257,12 +293,25 @@ namespace AirScout
|
|||
|
||||
#endregion
|
||||
|
||||
#region wp_ElevationModel
|
||||
private void wp_ElevationModel_Enter(object sender, EventArgs e)
|
||||
{
|
||||
cb_GLOBE.Checked = Properties.Settings.Default.Elevation_GLOBE_Enabled;
|
||||
cb_SRTM3.Checked = Properties.Settings.Default.Elevation_SRTM3_Enabled;
|
||||
cb_SRTM1.Checked = Properties.Settings.Default.Elevation_SRTM1_Enabled;
|
||||
cb_ASTER3.Checked = Properties.Settings.Default.Elevation_ASTER3_Enabled;
|
||||
cb_ASTER1.Checked = Properties.Settings.Default.Elevation_ASTER1_Enabled;
|
||||
UpdateElevationPages();
|
||||
}
|
||||
|
||||
private void UpdateElevationPages()
|
||||
{
|
||||
wp_GLOBE.Suppress = !cb_GLOBE.Checked;
|
||||
wp_SRTM3.Suppress = !cb_SRTM3.Checked;
|
||||
wp_SRTM1.Suppress = !cb_SRTM1.Checked;
|
||||
wp_ElevationModel.AllowNext = cb_GLOBE.Checked || cb_SRTM3.Checked || cb_SRTM1.Checked;
|
||||
wp_ASTER3.Suppress = !cb_ASTER3.Checked;
|
||||
wp_ASTER1.Suppress = !cb_ASTER1.Checked;
|
||||
wp_ElevationModel.AllowNext = cb_GLOBE.Checked || cb_SRTM3.Checked || cb_SRTM1.Checked || cb_ASTER3.Checked || cb_ASTER1.Checked;
|
||||
this.Refresh();
|
||||
}
|
||||
|
||||
|
@ -284,14 +333,19 @@ namespace AirScout
|
|||
UpdateElevationPages();
|
||||
}
|
||||
|
||||
#region wp_ElevationModel
|
||||
private void wp_ElevationModel_Enter(object sender, EventArgs e)
|
||||
|
||||
private void cb_ASTER3_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
cb_GLOBE.Checked = Properties.Settings.Default.Elevation_GLOBE_Enabled;
|
||||
cb_SRTM3.Checked = Properties.Settings.Default.Elevation_SRTM3_Enabled;
|
||||
cb_SRTM1.Checked = Properties.Settings.Default.Elevation_SRTM1_Enabled;
|
||||
Properties.Settings.Default.Elevation_ASTER3_Enabled = cb_ASTER3.Checked;
|
||||
UpdateElevationPages();
|
||||
}
|
||||
|
||||
private void cb_ASTER1_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.Elevation_ASTER1_Enabled = cb_ASTER1.Checked;
|
||||
UpdateElevationPages();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region wp_GLOBE
|
||||
|
@ -643,7 +697,7 @@ namespace AirScout
|
|||
// estimate disk space needed = tilecount * tilesize * 150%
|
||||
long spaceneeded = (long)tilecount * (long)(100000 * 3 / 2);
|
||||
string rootdrive = Path.GetPathRoot(ElevationData.Database.DefaultDatabaseDirectory(ELEVATIONMODEL.SRTM1));
|
||||
long spaceavailable = SupportFunctions.GetDriveAvailableFreeSpace(rootdrive);
|
||||
long spaceavailable = SupportFunctions.GetDriveAvailableFreeSpace(rootdrive);
|
||||
// check for available disk space, skip on zero (cannot determine)
|
||||
if ((spaceavailable > 0) && (spaceavailable < spaceneeded))
|
||||
{
|
||||
|
@ -743,6 +797,302 @@ namespace AirScout
|
|||
|
||||
#endregion
|
||||
|
||||
#region wp_ASTER3
|
||||
|
||||
private void bw_ASTER3_MapUpdater_DoWork(object sender, DoWorkEventArgs e)
|
||||
{
|
||||
bw_ASTER3_MapUpdater.ReportProgress(0, "Creating elevation tile catalogue (please wait)...");
|
||||
// get all locs needed for covered area
|
||||
ElevationCatalogue availabletiles = ElevationData.Database.ElevationCatalogueCreateCheckBoundsAndLastModified(bw_ASTER3_MapUpdater, ELEVATIONMODEL.ASTER3, Properties.Settings.Default.MinLat, Properties.Settings.Default.MinLon, Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon);
|
||||
bw_ASTER3_MapUpdater.ReportProgress(0, "Processing tiles...");
|
||||
// report tile count
|
||||
bw_ASTER3_MapUpdater.ReportProgress(2, availabletiles.Files.Keys.Count);
|
||||
int missing = 0;
|
||||
int found = 0;
|
||||
foreach (string tilename in availabletiles.Files.Keys)
|
||||
{
|
||||
if (ElevationData.Database.ElevationTileExists(tilename.Substring(0, 6), ELEVATIONMODEL.ASTER3))
|
||||
{
|
||||
bw_ASTER3_MapUpdater.ReportProgress(1, tilename);
|
||||
found++;
|
||||
}
|
||||
else
|
||||
{
|
||||
bw_ASTER3_MapUpdater.ReportProgress(-1, tilename);
|
||||
missing++;
|
||||
}
|
||||
if (bw_ASTER3_MapUpdater.CancellationPending)
|
||||
{
|
||||
bw_ASTER3_MapUpdater.ReportProgress(0, "Processing cancelled...");
|
||||
return;
|
||||
}
|
||||
}
|
||||
bw_ASTER3_MapUpdater.ReportProgress(0, found.ToString() + " tile(s) found, " + missing.ToString() + " more tile(s) available and missing.");
|
||||
}
|
||||
|
||||
private void bw_ASTER3_MapUpdater_ProgressChanged(object sender, ProgressChangedEventArgs e)
|
||||
{
|
||||
if (e.ProgressPercentage == 2)
|
||||
{
|
||||
try
|
||||
{
|
||||
wp_ASTER3.AllowNext = true;
|
||||
// get tile count = available tiles - tiles already in data base
|
||||
long tilecount = (int)e.UserState - ElevationData.Database.ElevationTileCount(ELEVATIONMODEL.ASTER3);
|
||||
if (tilecount < 0)
|
||||
tilecount = 0;
|
||||
// check available disk space and file system
|
||||
// estimate disk space needed = tilecount * tilesize * 150%
|
||||
long spaceneeded = (long)tilecount * (long)(10000 * 3 / 2);
|
||||
string rootdrive = Path.GetPathRoot(ElevationData.Database.DefaultDatabaseDirectory(ELEVATIONMODEL.ASTER3));
|
||||
long spaceavailable = SupportFunctions.GetDriveAvailableFreeSpace(rootdrive);
|
||||
// check for available disk space, skip on zero (cannot determine)
|
||||
if ((spaceavailable > 0) && (spaceavailable < spaceneeded))
|
||||
{
|
||||
// show message box
|
||||
MessageBox.Show("Not enough disk space for elevation database.\n\nAvailable: " + spaceavailable + " bytes.\nNeeded: " + spaceneeded + "bytes.\n\nUncheck this option or try to enlarge free space on disk.", "Not enough disk space");
|
||||
wp_ASTER3.AllowNext = false;
|
||||
}
|
||||
long maxfilesize = SupportFunctions.GetDriveMaxFileSize(rootdrive);
|
||||
if ((maxfilesize > 0) && (maxfilesize < spaceneeded))
|
||||
{
|
||||
// show message box
|
||||
MessageBox.Show("The elevation database will exceed maximum allowed filesize for this file system.\n\nAllowed: " + maxfilesize + " bytes.\nNeeded: " + spaceneeded + "bytes.\n\nUncheck this option or change file system on disk.", "File size exceeded");
|
||||
wp_ASTER3.AllowNext = false;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.WriteMessage(ex.ToString(), LogLevel.Error);
|
||||
}
|
||||
}
|
||||
else if (e.ProgressPercentage == 1)
|
||||
{
|
||||
// add a tile found in database to map polygons
|
||||
double baselat;
|
||||
double baselon;
|
||||
MaidenheadLocator.LatLonFromLoc(((string)e.UserState).Substring(0, 6), PositionInRectangle.BottomLeft, out baselat, out baselon);
|
||||
List<PointLatLng> l = new List<PointLatLng>();
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)(baselon + 2 / 24.0)));
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)(baselon + 2 / 24.0)));
|
||||
GMapPolygon p = new GMapPolygon(l, (string)e.UserState);
|
||||
p.Stroke = new Pen(Color.FromArgb(50, Color.Green));
|
||||
p.Fill = new SolidBrush(Color.FromArgb(50, Color.Green));
|
||||
ASTER3polygons.Polygons.Add(p);
|
||||
}
|
||||
else if (e.ProgressPercentage == -1)
|
||||
{
|
||||
// add missing tile to map polygons
|
||||
double baselat;
|
||||
double baselon;
|
||||
MaidenheadLocator.LatLonFromLoc(((string)e.UserState).Substring(0, 6), PositionInRectangle.BottomLeft, out baselat, out baselon);
|
||||
List<PointLatLng> l = new List<PointLatLng>();
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)(baselon + 2 / 24.0)));
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)(baselon + 2 / 24.0)));
|
||||
GMapPolygon p = new GMapPolygon(l, (string)e.UserState);
|
||||
p.Stroke = new Pen(Color.FromArgb(50, Color.Red));
|
||||
p.Fill = new SolidBrush(Color.FromArgb(50, Color.Red));
|
||||
ASTER3polygons.Polygons.Add(p);
|
||||
}
|
||||
else
|
||||
{
|
||||
lbl_ASTER3_Status.Text = (string)e.UserState;
|
||||
}
|
||||
}
|
||||
|
||||
private void bw_ASTER3_MapUpdater_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
|
||||
{
|
||||
}
|
||||
|
||||
private void wp_ASTER3_Enter(object sender, EventArgs e)
|
||||
{
|
||||
wp_ASTER3.AllowNext = false;
|
||||
// clear map polygons
|
||||
ASTER3polygons.Clear();
|
||||
// add coverage to map polygons
|
||||
List<PointLatLng> cl = new List<PointLatLng>();
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MinLat, Properties.Settings.Default.MinLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MinLat, Properties.Settings.Default.MaxLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MaxLat, Properties.Settings.Default.MinLon));
|
||||
GMapPolygon c = new GMapPolygon(cl, "Coverage");
|
||||
c.Stroke = new Pen(Color.FromArgb(255, Color.Magenta), 3);
|
||||
c.Fill = new SolidBrush(Color.FromArgb(0, Color.Magenta));
|
||||
ASTER3polygons.Polygons.Add(c);
|
||||
// zoom the map initally
|
||||
gm_ASTER3.SetZoomToFitRect(RectLatLng.FromLTRB(Properties.Settings.Default.MinLon, Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon, Properties.Settings.Default.MinLat));
|
||||
// start map updater
|
||||
if (!bw_ASTER3_MapUpdater.IsBusy)
|
||||
bw_ASTER3_MapUpdater.RunWorkerAsync();
|
||||
// zoom the map
|
||||
gm_ASTER3.SetZoomToFitRect(RectLatLng.FromLTRB(Properties.Settings.Default.MinLon - 1, Properties.Settings.Default.MaxLat + 1, Properties.Settings.Default.MaxLon + 1, Properties.Settings.Default.MinLat - 1));
|
||||
}
|
||||
|
||||
private void wp_ASTER3_Leave(object sender, EventArgs e)
|
||||
{
|
||||
// stop map updater
|
||||
bw_ASTER3_MapUpdater.CancelAsync();
|
||||
// clear map polygons
|
||||
ASTER3polygons.Clear();
|
||||
// do garbage collection
|
||||
GC.Collect();
|
||||
lbl_ASTER3_Status.Text = "";
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region wp_ASTER1
|
||||
|
||||
private void bw_ASTER1_MapUpdater_DoWork(object sender, DoWorkEventArgs e)
|
||||
{
|
||||
bw_ASTER1_MapUpdater.ReportProgress(0, "Creating elevation tile catalogue (please wait)...");
|
||||
// get all locs needed for covered area
|
||||
ElevationCatalogue availabletiles = ElevationData.Database.ElevationCatalogueCreateCheckBoundsAndLastModified(bw_ASTER1_MapUpdater, ELEVATIONMODEL.ASTER1, Properties.Settings.Default.MinLat, Properties.Settings.Default.MinLon, Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon);
|
||||
bw_ASTER1_MapUpdater.ReportProgress(0, "Processing tiles...");
|
||||
// report tile count
|
||||
bw_ASTER1_MapUpdater.ReportProgress(2, availabletiles.Files.Keys.Count);
|
||||
int missing = 0;
|
||||
int found = 0;
|
||||
foreach (string tilename in availabletiles.Files.Keys)
|
||||
{
|
||||
if (ElevationData.Database.ElevationTileExists(tilename.Substring(0, 6), ELEVATIONMODEL.ASTER1))
|
||||
{
|
||||
bw_ASTER1_MapUpdater.ReportProgress(1, tilename);
|
||||
found++;
|
||||
}
|
||||
else
|
||||
{
|
||||
bw_ASTER1_MapUpdater.ReportProgress(-1, tilename);
|
||||
missing++;
|
||||
}
|
||||
if (bw_ASTER1_MapUpdater.CancellationPending)
|
||||
{
|
||||
bw_ASTER1_MapUpdater.ReportProgress(0, "Processing cancelled...");
|
||||
return;
|
||||
}
|
||||
}
|
||||
bw_ASTER1_MapUpdater.ReportProgress(0, found.ToString() + " tile(s) found, " + missing.ToString() + " more tile(s) available and missing.");
|
||||
}
|
||||
|
||||
private void bw_ASTER1_MapUpdater_ProgressChanged(object sender, ProgressChangedEventArgs e)
|
||||
{
|
||||
if (e.ProgressPercentage == 2)
|
||||
{
|
||||
try
|
||||
{
|
||||
wp_ASTER1.AllowNext = true;
|
||||
// get tile count = available tiles - tiles already in data base
|
||||
long tilecount = (int)e.UserState - ElevationData.Database.ElevationTileCount(ELEVATIONMODEL.ASTER1);
|
||||
if (tilecount < 0)
|
||||
tilecount = 0;
|
||||
// check available disk space and file system
|
||||
// estimate disk space needed = tilecount * tilesize * 150%
|
||||
long spaceneeded = (long)tilecount * (long)(100000 * 3 / 2);
|
||||
string rootdrive = Path.GetPathRoot(ElevationData.Database.DefaultDatabaseDirectory(ELEVATIONMODEL.ASTER1));
|
||||
long spaceavailable = SupportFunctions.GetDriveAvailableFreeSpace(rootdrive);
|
||||
// check for available disk space, skip on zero (cannot determine)
|
||||
if ((spaceavailable > 0) && (spaceavailable < spaceneeded))
|
||||
{
|
||||
// show message box
|
||||
MessageBox.Show("Not enough disk space for elevation database.\n\nAvailable: " + spaceavailable + " bytes.\nNeeded: " + spaceneeded + "bytes.\n\nUncheck this option or try to enlarge free space on disk.", "Not enough disk space");
|
||||
wp_ASTER1.AllowNext = false;
|
||||
}
|
||||
long maxfilesize = SupportFunctions.GetDriveMaxFileSize(rootdrive);
|
||||
if ((maxfilesize > 0) && (maxfilesize < spaceneeded))
|
||||
{
|
||||
// show message box
|
||||
MessageBox.Show("The elevation database will exceed maximum allowed filesize for this file system.\n\nAllowed: " + maxfilesize + " bytes.\nNeeded: " + spaceneeded + "bytes.\n\nUncheck this option or change file system on disk.", "File size exceeded");
|
||||
wp_ASTER1.AllowNext = false;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.WriteMessage(ex.ToString(), LogLevel.Error);
|
||||
}
|
||||
}
|
||||
else if (e.ProgressPercentage == 1)
|
||||
{
|
||||
// add a tile found in database to map polygons
|
||||
double baselat;
|
||||
double baselon;
|
||||
MaidenheadLocator.LatLonFromLoc(((string)e.UserState).Substring(0, 6), PositionInRectangle.BottomLeft, out baselat, out baselon);
|
||||
List<PointLatLng> l = new List<PointLatLng>();
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)(baselon + 2 / 24.0)));
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)(baselon + 2 / 24.0)));
|
||||
GMapPolygon p = new GMapPolygon(l, (string)e.UserState);
|
||||
p.Stroke = new Pen(Color.FromArgb(50, Color.Green));
|
||||
p.Fill = new SolidBrush(Color.FromArgb(50, Color.Green));
|
||||
ASTER1polygons.Polygons.Add(p);
|
||||
}
|
||||
else if (e.ProgressPercentage == -1)
|
||||
{
|
||||
// add missing tile to map polygons
|
||||
double baselat;
|
||||
double baselon;
|
||||
MaidenheadLocator.LatLonFromLoc(((string)e.UserState).Substring(0, 6), PositionInRectangle.BottomLeft, out baselat, out baselon);
|
||||
List<PointLatLng> l = new List<PointLatLng>();
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)(baselon + 2 / 24.0)));
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)(baselon + 2 / 24.0)));
|
||||
GMapPolygon p = new GMapPolygon(l, (string)e.UserState);
|
||||
p.Stroke = new Pen(Color.FromArgb(50, Color.Red));
|
||||
p.Fill = new SolidBrush(Color.FromArgb(50, Color.Red));
|
||||
ASTER1polygons.Polygons.Add(p);
|
||||
}
|
||||
else
|
||||
{
|
||||
lbl_ASTER1_Status.Text = (string)e.UserState;
|
||||
}
|
||||
}
|
||||
|
||||
private void bw_ASTER1_MapUpdater_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
|
||||
{
|
||||
}
|
||||
|
||||
private void wp_ASTER1_Enter(object sender, EventArgs e)
|
||||
{
|
||||
wp_ASTER1.AllowNext = false;
|
||||
// clear map polygons
|
||||
ASTER1polygons.Clear();
|
||||
// add coverage to map polygons
|
||||
List<PointLatLng> cl = new List<PointLatLng>();
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MinLat, Properties.Settings.Default.MinLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MinLat, Properties.Settings.Default.MaxLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MaxLat, Properties.Settings.Default.MinLon));
|
||||
GMapPolygon c = new GMapPolygon(cl, "Coverage");
|
||||
c.Stroke = new Pen(Color.FromArgb(255, Color.Magenta), 3);
|
||||
c.Fill = new SolidBrush(Color.FromArgb(0, Color.Magenta));
|
||||
ASTER1polygons.Polygons.Add(c);
|
||||
// zoom the map initally
|
||||
gm_ASTER1.SetZoomToFitRect(RectLatLng.FromLTRB(Properties.Settings.Default.MinLon, Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon, Properties.Settings.Default.MinLat));
|
||||
// start map updater
|
||||
if (!bw_ASTER1_MapUpdater.IsBusy)
|
||||
bw_ASTER1_MapUpdater.RunWorkerAsync();
|
||||
// zoom the map
|
||||
gm_ASTER1.SetZoomToFitRect(RectLatLng.FromLTRB(Properties.Settings.Default.MinLon - 1, Properties.Settings.Default.MaxLat + 1, Properties.Settings.Default.MaxLon + 1, Properties.Settings.Default.MinLat - 1));
|
||||
}
|
||||
|
||||
private void wp_ASTER1_Leave(object sender, EventArgs e)
|
||||
{
|
||||
// stop map updater
|
||||
bw_ASTER1_MapUpdater.CancelAsync();
|
||||
// clear map polygons
|
||||
ASTER1polygons.Clear();
|
||||
// do garbage collection
|
||||
GC.Collect();
|
||||
lbl_ASTER1_Status.Text = "";
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region wp_Finish
|
||||
private void wp_Finish_Enter(object sender, EventArgs e)
|
||||
{
|
||||
|
@ -1268,6 +1618,7 @@ namespace AirScout
|
|||
while (bw_SRTM1_MapUpdater.IsBusy)
|
||||
Application.DoEvents();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -154,11 +154,13 @@ To view complete license information please refer to "Options/Info".</value>
|
|||
</data>
|
||||
<data name="richTextBox2.Text" xml:space="preserve">
|
||||
<value>Elevation models are essential for work with AirScout. They are needed for calculating radio horizons and propagation paths.
|
||||
The software can handle the three most common models available for the public:
|
||||
The software can handle the most common models available for the public:
|
||||
|
||||
GLOBE: 1km x 1km resolution, covers whole earth
|
||||
SRTM3: 90m x 90m resolution, covers only -60° ... +60°
|
||||
SRTM3: 90m x 90m resolution, covers only -60° ... +60° (with some inoffical extensions to Norh)
|
||||
SRTM1: 30m x 30m resolution, covers only -60° ... +60°
|
||||
ASTER3: 90m x 90m resolution, covers -83° ... +83° (aggregated from ASTER1, very raw data )
|
||||
ASTER1: 30m x 30m resolution, covers -83° ... +83° (very raw data)
|
||||
|
||||
Elevation data are provided in files. AirScout is trying to download and stores them locally. If you have them already somewhere on your computer, you can select a user specific path.
|
||||
|
||||
|
@ -7399,6 +7401,12 @@ Please enter at least one plane feed to continue.</value>
|
|||
<metadata name="ss_Main.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>481, 17</value>
|
||||
</metadata>
|
||||
<metadata name="bw_ASTER3_MapUpdater.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>575, 17</value>
|
||||
</metadata>
|
||||
<metadata name="bw_ASTER1_MapUpdater.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>763, 17</value>
|
||||
</metadata>
|
||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>50</value>
|
||||
</metadata>
|
||||
|
|
|
@ -0,0 +1,121 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Drawing.Drawing2D;
|
||||
using System.Drawing.Text;
|
||||
using System.Linq;
|
||||
using System.Runtime.Serialization;
|
||||
using System.Text;
|
||||
using GMap.NET;
|
||||
using GMap.NET.WindowsForms;
|
||||
|
||||
namespace AirScout
|
||||
{
|
||||
public class GMapLocatorPolygon : GMapPolygon
|
||||
{
|
||||
public GMapLocatorPolygon(List<PointLatLng> points, string name) : base(points, name)
|
||||
{
|
||||
}
|
||||
|
||||
protected GMapLocatorPolygon(SerializationInfo info, StreamingContext context) : base(info, context)
|
||||
{
|
||||
}
|
||||
|
||||
private int PolygonWidth()
|
||||
{
|
||||
if (this.LocalPoints == null)
|
||||
return 0;
|
||||
|
||||
long min = int.MaxValue;
|
||||
long max = int.MinValue;
|
||||
foreach (GPoint p in this.LocalPoints)
|
||||
{
|
||||
if (p.X < min)
|
||||
min = p.X;
|
||||
if (p.X > max)
|
||||
max = p.X;
|
||||
}
|
||||
return (int)(max - min);
|
||||
}
|
||||
|
||||
private int PolygonHeight()
|
||||
{
|
||||
if (this.LocalPoints == null)
|
||||
return 0;
|
||||
|
||||
long min = int.MaxValue;
|
||||
long max = int.MinValue;
|
||||
foreach (GPoint p in this.LocalPoints)
|
||||
{
|
||||
if (p.Y < min)
|
||||
min = p.Y;
|
||||
if (p.Y > max)
|
||||
max = p.Y;
|
||||
}
|
||||
return (int)(max - min);
|
||||
}
|
||||
|
||||
private Rectangle PolygonRect()
|
||||
{
|
||||
if (this.LocalPoints == null)
|
||||
return new Rectangle(0,0,0,0);
|
||||
|
||||
long minX = int.MaxValue;
|
||||
long maxX = int.MinValue;
|
||||
foreach (GPoint p in this.LocalPoints)
|
||||
{
|
||||
if (p.X < minX)
|
||||
minX = p.X;
|
||||
if (p.X > maxX)
|
||||
maxX = p.X;
|
||||
}
|
||||
long minY = int.MaxValue;
|
||||
long maxY = int.MinValue;
|
||||
foreach (GPoint p in this.LocalPoints)
|
||||
{
|
||||
if (p.Y < minY)
|
||||
minY = p.Y;
|
||||
if (p.Y > maxY)
|
||||
maxY = p.Y;
|
||||
}
|
||||
|
||||
return new Rectangle((int)minX, (int)minY, (int)(maxX - minX), (int)(maxY - minY));
|
||||
}
|
||||
public override void OnRender(Graphics g)
|
||||
{
|
||||
base.OnRender(g);
|
||||
|
||||
// render Tag on top of polygon, if it is a regular rectangle and contains a string as tag
|
||||
if (this.Points == null)
|
||||
return;
|
||||
if (this.Points.Count == 0)
|
||||
return;
|
||||
if (this.Tag == null)
|
||||
return;
|
||||
if (this.Tag.GetType() != typeof(string))
|
||||
return;
|
||||
|
||||
// keep old graphics settings
|
||||
SmoothingMode oldsmoothingmode = g.SmoothingMode;
|
||||
TextRenderingHint oldtextrenderinghint = g.TextRenderingHint;
|
||||
|
||||
// get polygon extension in pixels
|
||||
Rectangle polyrect = PolygonRect();
|
||||
|
||||
g.SmoothingMode = SmoothingMode.AntiAlias;
|
||||
g.TextRenderingHint = TextRenderingHint.SingleBitPerPixelGridFit;
|
||||
Font font = new Font("Arial", polyrect.Height / 10);
|
||||
StringFormat format = new StringFormat();
|
||||
format.LineAlignment = StringAlignment.Center;
|
||||
format.Alignment = StringAlignment.Center;
|
||||
g.DrawString((string)this.Tag, font, new SolidBrush(this.Stroke.Color), polyrect, format);
|
||||
g.Flush();
|
||||
font.Dispose();
|
||||
|
||||
// restore old graphics settings
|
||||
g.SmoothingMode = oldsmoothingmode;
|
||||
g.TextRenderingHint = oldtextrenderinghint;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -311,7 +311,7 @@ namespace AirScout
|
|||
{
|
||||
using (StreamWriter sw = new StreamWriter(Dlg.FileName))
|
||||
{
|
||||
sw.WriteLine("Bearing[deg];Distance[km];Eps_Min[deg];Elevation[m]");
|
||||
sw.WriteLine("Bearing[deg];Eps_Min[deg];Distance[km];Elevation[m]");
|
||||
for (int i = 0; i < 360; i++)
|
||||
{
|
||||
sw.WriteLine(i.ToString() + ";" +
|
||||
|
|
|
@ -2760,7 +2760,34 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|||
DEALINGS IN THE SOFTWARE.
|
||||
|
||||
|
||||
********************************************************************************
|
||||
Licence Information for Ini-Parser
|
||||
(included in AirScout.CAT)
|
||||
********************************************************************************
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2008 Ricardo Amores Hernández
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
|
||||
* * *
|
||||
|
||||
2020-04-06
|
||||
2021-04-14
|
||||
|
||||
|
|
|
@ -37,9 +37,11 @@
|
|||
this.sc_Map = new System.Windows.Forms.SplitContainer();
|
||||
this.tc_Map = new System.Windows.Forms.TabControl();
|
||||
this.tp_Map = new System.Windows.Forms.TabPage();
|
||||
this.pa_Rig = new System.Windows.Forms.Panel();
|
||||
this.ag_Azimuth = new AquaControls.AquaGauge();
|
||||
this.ag_Elevation = new AquaControls.AquaGauge();
|
||||
this.gm_Main = new GMap.NET.WindowsForms.GMapControl();
|
||||
this.gm_Cache = new GMap.NET.WindowsForms.GMapControl();
|
||||
this.tp_News = new System.Windows.Forms.TabPage();
|
||||
this.tc_Main = new System.Windows.Forms.TabControl();
|
||||
this.tp_Elevation = new System.Windows.Forms.TabPage();
|
||||
|
@ -104,6 +106,11 @@
|
|||
this.tsl_Database_LED_GLOBE = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.tsl_Database_LED_SRTM3 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.tsl_Database_LED_SRTM1 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.tsl_Database_LED_ASTER3 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.tsl_Database_LED_ASTER1 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.tsl_Track = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.tsl_Rot = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.tsl_CAT = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.tt_Main = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.btn_Map_PlayPause = new System.Windows.Forms.Button();
|
||||
this.btn_Map_Save = new System.Windows.Forms.Button();
|
||||
|
@ -174,7 +181,6 @@
|
|||
this.bw_Analysis_FileSaver = new System.ComponentModel.BackgroundWorker();
|
||||
this.bw_Analysis_FileLoader = new System.ComponentModel.BackgroundWorker();
|
||||
this.bw_AirportMapper = new System.ComponentModel.BackgroundWorker();
|
||||
this.gm_Cache = new GMap.NET.WindowsForms.GMapControl();
|
||||
((System.ComponentModel.ISupportInitialize)(this.sc_Map)).BeginInit();
|
||||
this.sc_Map.Panel1.SuspendLayout();
|
||||
this.sc_Map.Panel2.SuspendLayout();
|
||||
|
@ -245,7 +251,7 @@
|
|||
this.sc_Map.Panel2.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.sc_Map.Panel2.Controls.Add(this.tc_Main);
|
||||
this.sc_Map.Size = new System.Drawing.Size(852, 706);
|
||||
this.sc_Map.SplitterDistance = 341;
|
||||
this.sc_Map.SplitterDistance = 342;
|
||||
this.sc_Map.SplitterWidth = 5;
|
||||
this.sc_Map.TabIndex = 20;
|
||||
this.sc_Map.SplitterMoved += new System.Windows.Forms.SplitterEventHandler(this.sc_Map_SplitterMoved);
|
||||
|
@ -259,12 +265,13 @@
|
|||
this.tc_Map.Location = new System.Drawing.Point(0, 0);
|
||||
this.tc_Map.Name = "tc_Map";
|
||||
this.tc_Map.SelectedIndex = 0;
|
||||
this.tc_Map.Size = new System.Drawing.Size(852, 341);
|
||||
this.tc_Map.Size = new System.Drawing.Size(852, 342);
|
||||
this.tc_Map.TabIndex = 14;
|
||||
this.tc_Map.Selecting += new System.Windows.Forms.TabControlCancelEventHandler(this.tc_Map_Selecting);
|
||||
//
|
||||
// tp_Map
|
||||
//
|
||||
this.tp_Map.Controls.Add(this.pa_Rig);
|
||||
this.tp_Map.Controls.Add(this.ag_Azimuth);
|
||||
this.tp_Map.Controls.Add(this.ag_Elevation);
|
||||
this.tp_Map.Controls.Add(this.gm_Main);
|
||||
|
@ -272,12 +279,20 @@
|
|||
this.tp_Map.Location = new System.Drawing.Point(4, 22);
|
||||
this.tp_Map.Name = "tp_Map";
|
||||
this.tp_Map.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tp_Map.Size = new System.Drawing.Size(844, 315);
|
||||
this.tp_Map.Size = new System.Drawing.Size(844, 316);
|
||||
this.tp_Map.TabIndex = 0;
|
||||
this.tp_Map.Text = "Map";
|
||||
this.tp_Map.UseVisualStyleBackColor = true;
|
||||
this.tp_Map.Enter += new System.EventHandler(this.tp_Map_Enter);
|
||||
//
|
||||
// pa_Rig
|
||||
//
|
||||
this.pa_Rig.Location = new System.Drawing.Point(489, 182);
|
||||
this.pa_Rig.Name = "pa_Rig";
|
||||
this.pa_Rig.Size = new System.Drawing.Size(349, 80);
|
||||
this.pa_Rig.TabIndex = 30;
|
||||
this.pa_Rig.Visible = false;
|
||||
//
|
||||
// ag_Azimuth
|
||||
//
|
||||
this.ag_Azimuth.BackColor = System.Drawing.Color.Transparent;
|
||||
|
@ -334,17 +349,21 @@
|
|||
this.gm_Main.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_Main.Name = "gm_Main";
|
||||
this.gm_Main.NegativeMode = false;
|
||||
this.gm_Main.Opacity = 1D;
|
||||
this.gm_Main.PolygonsEnabled = true;
|
||||
this.gm_Main.RetryLoadTile = 0;
|
||||
this.gm_Main.RoutesEnabled = true;
|
||||
this.gm_Main.SelectedAreaFillColor = System.Drawing.Color.FromArgb(((int)(((byte)(33)))), ((int)(((byte)(65)))), ((int)(((byte)(105)))), ((int)(((byte)(225)))));
|
||||
this.gm_Main.ShowTileGridLines = false;
|
||||
this.gm_Main.Size = new System.Drawing.Size(838, 309);
|
||||
this.gm_Main.Size = new System.Drawing.Size(838, 310);
|
||||
this.gm_Main.TabIndex = 4;
|
||||
this.gm_Main.Zoom = 0D;
|
||||
this.gm_Main.OnMarkerClick += new GMap.NET.WindowsForms.MarkerClick(this.gm_Main_OnMarkerClick);
|
||||
this.gm_Main.OnMarkerEnter += new GMap.NET.WindowsForms.MarkerEnter(this.gm_Main_OnMarkerEnter);
|
||||
this.gm_Main.OnMarkerLeave += new GMap.NET.WindowsForms.MarkerLeave(this.gm_Main_OnMarkerLeave);
|
||||
this.gm_Main.OnPositionChanged += new GMap.NET.PositionChanged(this.gm_Main_OnPositionChanged);
|
||||
this.gm_Main.OnTileLoadComplete += new GMap.NET.TileLoadComplete(this.gm_Main_OnTileLoadComplete);
|
||||
this.gm_Main.OnMapDrag += new GMap.NET.MapDrag(this.gm_Main_OnMapDrag);
|
||||
this.gm_Main.OnMapZoomChanged += new GMap.NET.MapZoomChanged(this.gm_Main_OnMapZoomChanged);
|
||||
this.gm_Main.SizeChanged += new System.EventHandler(this.gm_Main_SizeChanged);
|
||||
this.gm_Main.Paint += new System.Windows.Forms.PaintEventHandler(this.gm_Main_Paint);
|
||||
|
@ -352,11 +371,37 @@
|
|||
this.gm_Main.MouseMove += new System.Windows.Forms.MouseEventHandler(this.gm_Main_MouseMove);
|
||||
this.gm_Main.MouseUp += new System.Windows.Forms.MouseEventHandler(this.gm_Main_MouseUp);
|
||||
//
|
||||
// gm_Cache
|
||||
//
|
||||
this.gm_Cache.Bearing = 0F;
|
||||
this.gm_Cache.CanDragMap = true;
|
||||
this.gm_Cache.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.gm_Cache.EmptyTileColor = System.Drawing.Color.Navy;
|
||||
this.gm_Cache.GrayScaleMode = false;
|
||||
this.gm_Cache.HelperLineOption = GMap.NET.WindowsForms.HelperLineOptions.DontShow;
|
||||
this.gm_Cache.LevelsKeepInMemmory = 5;
|
||||
this.gm_Cache.Location = new System.Drawing.Point(3, 3);
|
||||
this.gm_Cache.MarkersEnabled = true;
|
||||
this.gm_Cache.MaxZoom = 2;
|
||||
this.gm_Cache.MinZoom = 2;
|
||||
this.gm_Cache.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_Cache.Name = "gm_Cache";
|
||||
this.gm_Cache.NegativeMode = false;
|
||||
this.gm_Cache.Opacity = 1D;
|
||||
this.gm_Cache.PolygonsEnabled = true;
|
||||
this.gm_Cache.RetryLoadTile = 0;
|
||||
this.gm_Cache.RoutesEnabled = true;
|
||||
this.gm_Cache.SelectedAreaFillColor = System.Drawing.Color.FromArgb(((int)(((byte)(33)))), ((int)(((byte)(65)))), ((int)(((byte)(105)))), ((int)(((byte)(225)))));
|
||||
this.gm_Cache.ShowTileGridLines = false;
|
||||
this.gm_Cache.Size = new System.Drawing.Size(838, 310);
|
||||
this.gm_Cache.TabIndex = 29;
|
||||
this.gm_Cache.Zoom = 0D;
|
||||
//
|
||||
// tp_News
|
||||
//
|
||||
this.tp_News.Location = new System.Drawing.Point(4, 22);
|
||||
this.tp_News.Name = "tp_News";
|
||||
this.tp_News.Size = new System.Drawing.Size(844, 315);
|
||||
this.tp_News.Size = new System.Drawing.Size(844, 316);
|
||||
this.tp_News.TabIndex = 3;
|
||||
this.tp_News.Text = "Latest News";
|
||||
this.tp_News.UseVisualStyleBackColor = true;
|
||||
|
@ -374,7 +419,7 @@
|
|||
this.tc_Main.MinimumSize = new System.Drawing.Size(0, 200);
|
||||
this.tc_Main.Name = "tc_Main";
|
||||
this.tc_Main.SelectedIndex = 0;
|
||||
this.tc_Main.Size = new System.Drawing.Size(852, 360);
|
||||
this.tc_Main.Size = new System.Drawing.Size(852, 359);
|
||||
this.tc_Main.TabIndex = 0;
|
||||
this.tc_Main.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.tc_Main_DrawItem);
|
||||
this.tc_Main.SelectedIndexChanged += new System.EventHandler(this.tc_Main_SelectedIndexChanged);
|
||||
|
@ -383,10 +428,11 @@
|
|||
// tp_Elevation
|
||||
//
|
||||
this.tp_Elevation.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.tp_Elevation.ForeColor = System.Drawing.Color.DarkGray;
|
||||
this.tp_Elevation.Location = new System.Drawing.Point(4, 22);
|
||||
this.tp_Elevation.Name = "tp_Elevation";
|
||||
this.tp_Elevation.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tp_Elevation.Size = new System.Drawing.Size(844, 334);
|
||||
this.tp_Elevation.Size = new System.Drawing.Size(844, 333);
|
||||
this.tp_Elevation.TabIndex = 0;
|
||||
this.tp_Elevation.Text = "Path Profile";
|
||||
this.tp_Elevation.Enter += new System.EventHandler(this.tp_Elevation_Enter);
|
||||
|
@ -402,7 +448,7 @@
|
|||
this.tp_Spectrum.Location = new System.Drawing.Point(4, 22);
|
||||
this.tp_Spectrum.Name = "tp_Spectrum";
|
||||
this.tp_Spectrum.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tp_Spectrum.Size = new System.Drawing.Size(844, 334);
|
||||
this.tp_Spectrum.Size = new System.Drawing.Size(844, 333);
|
||||
this.tp_Spectrum.TabIndex = 1;
|
||||
this.tp_Spectrum.Text = "Spectrum";
|
||||
this.tp_Spectrum.Enter += new System.EventHandler(this.tp_Spectrum_Enter);
|
||||
|
@ -426,7 +472,7 @@
|
|||
this.gb_Spectrum_NearestInfo.Controls.Add(this.label2);
|
||||
this.gb_Spectrum_NearestInfo.Location = new System.Drawing.Point(489, 54);
|
||||
this.gb_Spectrum_NearestInfo.Name = "gb_Spectrum_NearestInfo";
|
||||
this.gb_Spectrum_NearestInfo.Size = new System.Drawing.Size(175, 271);
|
||||
this.gb_Spectrum_NearestInfo.Size = new System.Drawing.Size(175, 270);
|
||||
this.gb_Spectrum_NearestInfo.TabIndex = 8;
|
||||
this.gb_Spectrum_NearestInfo.TabStop = false;
|
||||
this.gb_Spectrum_NearestInfo.Text = "Nearest Plane Info";
|
||||
|
@ -578,7 +624,7 @@
|
|||
this.gb_NearestPlaneMap.Controls.Add(this.gm_Nearest);
|
||||
this.gb_NearestPlaneMap.Location = new System.Drawing.Point(670, 54);
|
||||
this.gb_NearestPlaneMap.Name = "gb_NearestPlaneMap";
|
||||
this.gb_NearestPlaneMap.Size = new System.Drawing.Size(168, 274);
|
||||
this.gb_NearestPlaneMap.Size = new System.Drawing.Size(168, 273);
|
||||
this.gb_NearestPlaneMap.TabIndex = 6;
|
||||
this.gb_NearestPlaneMap.TabStop = false;
|
||||
this.gb_NearestPlaneMap.Text = "Nearest Plane Map";
|
||||
|
@ -599,12 +645,13 @@
|
|||
this.gm_Nearest.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_Nearest.Name = "gm_Nearest";
|
||||
this.gm_Nearest.NegativeMode = false;
|
||||
this.gm_Nearest.Opacity = 1D;
|
||||
this.gm_Nearest.PolygonsEnabled = true;
|
||||
this.gm_Nearest.RetryLoadTile = 0;
|
||||
this.gm_Nearest.RoutesEnabled = true;
|
||||
this.gm_Nearest.SelectedAreaFillColor = System.Drawing.Color.FromArgb(((int)(((byte)(33)))), ((int)(((byte)(65)))), ((int)(((byte)(105)))), ((int)(((byte)(225)))));
|
||||
this.gm_Nearest.ShowTileGridLines = false;
|
||||
this.gm_Nearest.Size = new System.Drawing.Size(162, 255);
|
||||
this.gm_Nearest.Size = new System.Drawing.Size(162, 254);
|
||||
this.gm_Nearest.TabIndex = 0;
|
||||
this.gm_Nearest.Zoom = 0D;
|
||||
//
|
||||
|
@ -615,7 +662,7 @@
|
|||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.gb_Spectrum.Location = new System.Drawing.Point(8, 54);
|
||||
this.gb_Spectrum.Name = "gb_Spectrum";
|
||||
this.gb_Spectrum.Size = new System.Drawing.Size(475, 274);
|
||||
this.gb_Spectrum.Size = new System.Drawing.Size(475, 273);
|
||||
this.gb_Spectrum.TabIndex = 5;
|
||||
this.gb_Spectrum.TabStop = false;
|
||||
this.gb_Spectrum.Text = "Spectrum";
|
||||
|
@ -627,7 +674,7 @@
|
|||
this.tp_Analysis.Controls.Add(this.panel1);
|
||||
this.tp_Analysis.Location = new System.Drawing.Point(4, 22);
|
||||
this.tp_Analysis.Name = "tp_Analysis";
|
||||
this.tp_Analysis.Size = new System.Drawing.Size(844, 334);
|
||||
this.tp_Analysis.Size = new System.Drawing.Size(844, 333);
|
||||
this.tp_Analysis.TabIndex = 3;
|
||||
this.tp_Analysis.Text = "Analysis";
|
||||
this.tp_Analysis.Enter += new System.EventHandler(this.tp_Analysis_Enter);
|
||||
|
@ -640,7 +687,7 @@
|
|||
this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.panel2.Location = new System.Drawing.Point(0, 137);
|
||||
this.panel2.Name = "panel2";
|
||||
this.panel2.Size = new System.Drawing.Size(844, 197);
|
||||
this.panel2.Size = new System.Drawing.Size(844, 196);
|
||||
this.panel2.TabIndex = 1;
|
||||
//
|
||||
// gb_Analysis_Player
|
||||
|
@ -652,7 +699,7 @@
|
|||
this.gb_Analysis_Player.Location = new System.Drawing.Point(0, 0);
|
||||
this.gb_Analysis_Player.MinimumSize = new System.Drawing.Size(565, 58);
|
||||
this.gb_Analysis_Player.Name = "gb_Analysis_Player";
|
||||
this.gb_Analysis_Player.Size = new System.Drawing.Size(591, 197);
|
||||
this.gb_Analysis_Player.Size = new System.Drawing.Size(591, 196);
|
||||
this.gb_Analysis_Player.TabIndex = 4;
|
||||
this.gb_Analysis_Player.TabStop = false;
|
||||
this.gb_Analysis_Player.Text = "Player";
|
||||
|
@ -665,7 +712,7 @@
|
|||
this.dtp_Analysis_MaxValue.Enabled = false;
|
||||
this.dtp_Analysis_MaxValue.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.dtp_Analysis_MaxValue.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
|
||||
this.dtp_Analysis_MaxValue.Location = new System.Drawing.Point(463, 161);
|
||||
this.dtp_Analysis_MaxValue.Location = new System.Drawing.Point(463, 160);
|
||||
this.dtp_Analysis_MaxValue.Name = "dtp_Analysis_MaxValue";
|
||||
this.dtp_Analysis_MaxValue.Size = new System.Drawing.Size(122, 20);
|
||||
this.dtp_Analysis_MaxValue.TabIndex = 25;
|
||||
|
@ -678,7 +725,7 @@
|
|||
this.dtp_Analysis_MinValue.Enabled = false;
|
||||
this.dtp_Analysis_MinValue.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.dtp_Analysis_MinValue.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
|
||||
this.dtp_Analysis_MinValue.Location = new System.Drawing.Point(6, 161);
|
||||
this.dtp_Analysis_MinValue.Location = new System.Drawing.Point(6, 160);
|
||||
this.dtp_Analysis_MinValue.Name = "dtp_Analysis_MinValue";
|
||||
this.dtp_Analysis_MinValue.Size = new System.Drawing.Size(123, 20);
|
||||
this.dtp_Analysis_MinValue.TabIndex = 24;
|
||||
|
@ -687,7 +734,7 @@
|
|||
// sb_Analysis_Play
|
||||
//
|
||||
this.sb_Analysis_Play.Anchor = System.Windows.Forms.AnchorStyles.Bottom;
|
||||
this.sb_Analysis_Play.Location = new System.Drawing.Point(146, 161);
|
||||
this.sb_Analysis_Play.Location = new System.Drawing.Point(146, 160);
|
||||
this.sb_Analysis_Play.Maximum = 1000000;
|
||||
this.sb_Analysis_Play.Name = "sb_Analysis_Play";
|
||||
this.sb_Analysis_Play.Orientation = CustomScrollBar.ScrollBarOrientation.Horizontal;
|
||||
|
@ -706,7 +753,7 @@
|
|||
this.gb_Analysis_Controls.Dock = System.Windows.Forms.DockStyle.Right;
|
||||
this.gb_Analysis_Controls.Location = new System.Drawing.Point(591, 0);
|
||||
this.gb_Analysis_Controls.Name = "gb_Analysis_Controls";
|
||||
this.gb_Analysis_Controls.Size = new System.Drawing.Size(253, 197);
|
||||
this.gb_Analysis_Controls.Size = new System.Drawing.Size(253, 196);
|
||||
this.gb_Analysis_Controls.TabIndex = 2;
|
||||
this.gb_Analysis_Controls.TabStop = false;
|
||||
this.gb_Analysis_Controls.Text = "Controls";
|
||||
|
@ -717,7 +764,7 @@
|
|||
this.btn_Analysis_FastForward.Enabled = false;
|
||||
this.btn_Analysis_FastForward.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.btn_Analysis_FastForward.Image = ((System.Drawing.Image)(resources.GetObject("btn_Analysis_FastForward.Image")));
|
||||
this.btn_Analysis_FastForward.Location = new System.Drawing.Point(202, 154);
|
||||
this.btn_Analysis_FastForward.Location = new System.Drawing.Point(202, 153);
|
||||
this.btn_Analysis_FastForward.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.btn_Analysis_FastForward.Name = "btn_Analysis_FastForward";
|
||||
this.btn_Analysis_FastForward.Size = new System.Drawing.Size(47, 29);
|
||||
|
@ -733,7 +780,7 @@
|
|||
this.btn_Analysis_Forward.Enabled = false;
|
||||
this.btn_Analysis_Forward.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.btn_Analysis_Forward.Image = ((System.Drawing.Image)(resources.GetObject("btn_Analysis_Forward.Image")));
|
||||
this.btn_Analysis_Forward.Location = new System.Drawing.Point(153, 154);
|
||||
this.btn_Analysis_Forward.Location = new System.Drawing.Point(153, 153);
|
||||
this.btn_Analysis_Forward.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.btn_Analysis_Forward.Name = "btn_Analysis_Forward";
|
||||
this.btn_Analysis_Forward.Size = new System.Drawing.Size(47, 29);
|
||||
|
@ -749,7 +796,7 @@
|
|||
this.btn_Analysis_Pause.Enabled = false;
|
||||
this.btn_Analysis_Pause.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.btn_Analysis_Pause.Image = ((System.Drawing.Image)(resources.GetObject("btn_Analysis_Pause.Image")));
|
||||
this.btn_Analysis_Pause.Location = new System.Drawing.Point(104, 154);
|
||||
this.btn_Analysis_Pause.Location = new System.Drawing.Point(104, 153);
|
||||
this.btn_Analysis_Pause.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.btn_Analysis_Pause.Name = "btn_Analysis_Pause";
|
||||
this.btn_Analysis_Pause.Size = new System.Drawing.Size(47, 29);
|
||||
|
@ -765,7 +812,7 @@
|
|||
this.btn_Analysis_Back.Enabled = false;
|
||||
this.btn_Analysis_Back.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.btn_Analysis_Back.Image = ((System.Drawing.Image)(resources.GetObject("btn_Analysis_Back.Image")));
|
||||
this.btn_Analysis_Back.Location = new System.Drawing.Point(55, 154);
|
||||
this.btn_Analysis_Back.Location = new System.Drawing.Point(55, 153);
|
||||
this.btn_Analysis_Back.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.btn_Analysis_Back.Name = "btn_Analysis_Back";
|
||||
this.btn_Analysis_Back.Size = new System.Drawing.Size(47, 29);
|
||||
|
@ -781,7 +828,7 @@
|
|||
this.btn_Analysis_Rewind.Enabled = false;
|
||||
this.btn_Analysis_Rewind.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.btn_Analysis_Rewind.Image = ((System.Drawing.Image)(resources.GetObject("btn_Analysis_Rewind.Image")));
|
||||
this.btn_Analysis_Rewind.Location = new System.Drawing.Point(6, 154);
|
||||
this.btn_Analysis_Rewind.Location = new System.Drawing.Point(6, 153);
|
||||
this.btn_Analysis_Rewind.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.btn_Analysis_Rewind.Name = "btn_Analysis_Rewind";
|
||||
this.btn_Analysis_Rewind.Size = new System.Drawing.Size(47, 29);
|
||||
|
@ -1033,6 +1080,7 @@
|
|||
//
|
||||
// ss_Main
|
||||
//
|
||||
this.ss_Main.AutoSize = false;
|
||||
this.ss_Main.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.tsl_Status,
|
||||
this.tsl_Dummy,
|
||||
|
@ -1042,7 +1090,12 @@
|
|||
this.tsl_Database_LED_Stations,
|
||||
this.tsl_Database_LED_GLOBE,
|
||||
this.tsl_Database_LED_SRTM3,
|
||||
this.tsl_Database_LED_SRTM1});
|
||||
this.tsl_Database_LED_SRTM1,
|
||||
this.tsl_Database_LED_ASTER3,
|
||||
this.tsl_Database_LED_ASTER1,
|
||||
this.tsl_Track,
|
||||
this.tsl_Rot,
|
||||
this.tsl_CAT});
|
||||
this.ss_Main.Location = new System.Drawing.Point(0, 706);
|
||||
this.ss_Main.Name = "ss_Main";
|
||||
this.ss_Main.ShowItemToolTips = true;
|
||||
|
@ -1057,7 +1110,7 @@
|
|||
| System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom)));
|
||||
this.tsl_Status.BorderStyle = System.Windows.Forms.Border3DStyle.SunkenInner;
|
||||
this.tsl_Status.Name = "tsl_Status";
|
||||
this.tsl_Status.Size = new System.Drawing.Size(742, 19);
|
||||
this.tsl_Status.Size = new System.Drawing.Size(606, 19);
|
||||
this.tsl_Status.Spring = true;
|
||||
this.tsl_Status.Text = "No Messages.";
|
||||
this.tsl_Status.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
|
@ -1154,6 +1207,65 @@
|
|||
this.tsl_Database_LED_SRTM1.Text = " SRTM3 database status LED";
|
||||
this.tsl_Database_LED_SRTM1.ToolTipText = "SRTM1 database status LED";
|
||||
//
|
||||
// tsl_Database_LED_ASTER3
|
||||
//
|
||||
this.tsl_Database_LED_ASTER3.AutoSize = false;
|
||||
this.tsl_Database_LED_ASTER3.BackColor = System.Drawing.Color.Plum;
|
||||
this.tsl_Database_LED_ASTER3.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.None;
|
||||
this.tsl_Database_LED_ASTER3.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.tsl_Database_LED_ASTER3.Image = ((System.Drawing.Image)(resources.GetObject("tsl_Database_LED_ASTER3.Image")));
|
||||
this.tsl_Database_LED_ASTER3.Margin = new System.Windows.Forms.Padding(1, 5, 1, 5);
|
||||
this.tsl_Database_LED_ASTER3.Name = "tsl_Database_LED_ASTER3";
|
||||
this.tsl_Database_LED_ASTER3.Size = new System.Drawing.Size(12, 14);
|
||||
this.tsl_Database_LED_ASTER3.Text = " SRTM3 database status LED";
|
||||
this.tsl_Database_LED_ASTER3.ToolTipText = "SRTM3 database status LED";
|
||||
//
|
||||
// tsl_Database_LED_ASTER1
|
||||
//
|
||||
this.tsl_Database_LED_ASTER1.AutoSize = false;
|
||||
this.tsl_Database_LED_ASTER1.BackColor = System.Drawing.Color.Plum;
|
||||
this.tsl_Database_LED_ASTER1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.None;
|
||||
this.tsl_Database_LED_ASTER1.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.tsl_Database_LED_ASTER1.Image = ((System.Drawing.Image)(resources.GetObject("tsl_Database_LED_ASTER1.Image")));
|
||||
this.tsl_Database_LED_ASTER1.Margin = new System.Windows.Forms.Padding(1, 5, 1, 5);
|
||||
this.tsl_Database_LED_ASTER1.Name = "tsl_Database_LED_ASTER1";
|
||||
this.tsl_Database_LED_ASTER1.Size = new System.Drawing.Size(12, 14);
|
||||
this.tsl_Database_LED_ASTER1.Text = " SRTM3 database status LED";
|
||||
this.tsl_Database_LED_ASTER1.ToolTipText = "SRTM3 database status LED";
|
||||
//
|
||||
// tsl_Track
|
||||
//
|
||||
this.tsl_Track.AutoSize = false;
|
||||
this.tsl_Track.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.tsl_Track.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.tsl_Track.ForeColor = System.Drawing.Color.DarkGray;
|
||||
this.tsl_Track.Margin = new System.Windows.Forms.Padding(2, 5, 2, 5);
|
||||
this.tsl_Track.Name = "tsl_Track";
|
||||
this.tsl_Track.Size = new System.Drawing.Size(32, 14);
|
||||
this.tsl_Track.Text = "TRK";
|
||||
//
|
||||
// tsl_Rot
|
||||
//
|
||||
this.tsl_Rot.AutoSize = false;
|
||||
this.tsl_Rot.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.tsl_Rot.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.tsl_Rot.ForeColor = System.Drawing.Color.DarkGray;
|
||||
this.tsl_Rot.Margin = new System.Windows.Forms.Padding(2, 5, 2, 5);
|
||||
this.tsl_Rot.Name = "tsl_Rot";
|
||||
this.tsl_Rot.Size = new System.Drawing.Size(32, 14);
|
||||
this.tsl_Rot.Text = "ROT";
|
||||
//
|
||||
// tsl_CAT
|
||||
//
|
||||
this.tsl_CAT.AutoSize = false;
|
||||
this.tsl_CAT.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.tsl_CAT.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.tsl_CAT.ForeColor = System.Drawing.Color.DarkGray;
|
||||
this.tsl_CAT.Margin = new System.Windows.Forms.Padding(2, 5, 2, 5);
|
||||
this.tsl_CAT.Name = "tsl_CAT";
|
||||
this.tsl_CAT.Size = new System.Drawing.Size(32, 14);
|
||||
this.tsl_CAT.Text = "CAT";
|
||||
//
|
||||
// btn_Map_PlayPause
|
||||
//
|
||||
this.btn_Map_PlayPause.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
|
@ -1939,31 +2051,6 @@
|
|||
this.bw_AirportMapper.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.bw_AirportMapper_ProgressChanged);
|
||||
this.bw_AirportMapper.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.bw_AirportMapper_RunWorkerCompleted);
|
||||
//
|
||||
// gm_Cache
|
||||
//
|
||||
this.gm_Cache.Bearing = 0F;
|
||||
this.gm_Cache.CanDragMap = true;
|
||||
this.gm_Cache.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.gm_Cache.EmptyTileColor = System.Drawing.Color.Navy;
|
||||
this.gm_Cache.GrayScaleMode = false;
|
||||
this.gm_Cache.HelperLineOption = GMap.NET.WindowsForms.HelperLineOptions.DontShow;
|
||||
this.gm_Cache.LevelsKeepInMemmory = 5;
|
||||
this.gm_Cache.Location = new System.Drawing.Point(3, 3);
|
||||
this.gm_Cache.MarkersEnabled = true;
|
||||
this.gm_Cache.MaxZoom = 2;
|
||||
this.gm_Cache.MinZoom = 2;
|
||||
this.gm_Cache.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_Cache.Name = "gm_Cache";
|
||||
this.gm_Cache.NegativeMode = false;
|
||||
this.gm_Cache.PolygonsEnabled = true;
|
||||
this.gm_Cache.RetryLoadTile = 0;
|
||||
this.gm_Cache.RoutesEnabled = true;
|
||||
this.gm_Cache.SelectedAreaFillColor = System.Drawing.Color.FromArgb(((int)(((byte)(33)))), ((int)(((byte)(65)))), ((int)(((byte)(105)))), ((int)(((byte)(225)))));
|
||||
this.gm_Cache.ShowTileGridLines = false;
|
||||
this.gm_Cache.Size = new System.Drawing.Size(838, 309);
|
||||
this.gm_Cache.TabIndex = 29;
|
||||
this.gm_Cache.Zoom = 0D;
|
||||
//
|
||||
// MapDlg
|
||||
//
|
||||
this.AcceptButton = this.btn_Map_PlayPause;
|
||||
|
@ -2029,7 +2116,6 @@
|
|||
this.pa_CommonInfo.PerformLayout();
|
||||
this.gb_Map_Buttons.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
|
@ -2178,6 +2264,12 @@
|
|||
private GMap.NET.WindowsForms.GMapControl gm_Main;
|
||||
private System.Windows.Forms.TabPage tp_News;
|
||||
private GMap.NET.WindowsForms.GMapControl gm_Cache;
|
||||
private System.Windows.Forms.ToolStripStatusLabel tsl_Database_LED_ASTER3;
|
||||
private System.Windows.Forms.ToolStripStatusLabel tsl_Database_LED_ASTER1;
|
||||
private System.Windows.Forms.Panel pa_Rig;
|
||||
private System.Windows.Forms.ToolStripStatusLabel tsl_CAT;
|
||||
private System.Windows.Forms.ToolStripStatusLabel tsl_Rot;
|
||||
private System.Windows.Forms.ToolStripStatusLabel tsl_Track;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
1716
AirScout/MapDlg.cs
1716
AirScout/MapDlg.cs
Plik diff jest za duży
Load Diff
|
@ -125,7 +125,7 @@
|
|||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACc
|
||||
DQAAAk1TRnQBSQFMAgEBAwEAAYgBCwGIAQsBIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
DQAAAk1TRnQBSQFMAgEBAwEAARABDAEQAQwBIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABgAMAASADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
|
@ -193,7 +193,7 @@
|
|||
<data name="btn_Analysis_FastForward.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
awAADmsBVP4NBgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAHbSURBVGhD7Zg/
|
||||
aQAADmkBKwDOjwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAHbSURBVGhD7Zg/
|
||||
S8NAGIejIAo6OCiiVnqNRRQXxclV3QUXQcTRr+DaUXAQWpOYSXBx1dk/30Ad3ZwUpA7VXFJEqfEuvi1t
|
||||
c4kpmEuU94HfcO9d7+4Z7npEQRAEQRAEQRAkCGJUiOK6XdAMhBy5fVnTGYVm+lA1WlB1epUvVjNQEpIv
|
||||
0uGcTl9U3d6AUrrgImyDLkuFaHQdyj5AhI9jsY5ntfIAdKWDJpHGJkf2nvqhu0GrCI99nz20FqE7efwi
|
||||
|
@ -211,7 +211,7 @@
|
|||
<data name="btn_Analysis_Forward.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
awAADmsBVP4NBgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAEfSURBVGhD7dg9
|
||||
aQAADmkBKwDOjwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAEfSURBVGhD7dg9
|
||||
a8JwFMXhbAVbbZ2EDqJpoIPfy6WDn6DgWHAQhEQy9ONZROsLjXt6lHtBRXxLSO4fzgN3sGg8P+ikR0RE
|
||||
RERElwTx+q0Tzp7kpbvaUfKB+/OjzVczWtflz+6RkFTO3aCjkIOg1nD1Im+zD6NPhei5E4Sx50L07Adh
|
||||
5DUhegs/TPp+vHyWj9uBcbeE6P2aC8Koe0L07ARhTJYQvV1QMFrU5LHFw4g8QvTmpQXhy/MMWbbHyWcp
|
||||
|
@ -222,7 +222,7 @@
|
|||
<data name="btn_Analysis_Pause.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
awAADmsBVP4NBgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAACGSURBVGhD7dix
|
||||
aQAADmkBKwDOjwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAACGSURBVGhD7dix
|
||||
CcMwEEBRjeJ0WcqQPvMkIdt5Btm9E4E6XZHiMMS8B6p0J/xbFwAA4BfTu14vz/U+nNc295FBu4t22lt9
|
||||
5HjTo96+H7GPpy59ZNDuop32Vh85npBgR0gGIcGOkAxCgh0hGYQEO0IyCAl2hGQQEuwIyXCekLP8fAAA
|
||||
gD9Sygf13QPKE81S/AAAAABJRU5ErkJggg==
|
||||
|
@ -275,7 +275,7 @@
|
|||
XTesb3QPLh88M+QwdP6m681Lt7xuXbu94vbgcOjwnZHokdE77DtTd1PuvriXeW/h/sYH6AdFD6UeVjxS
|
||||
fNTws+7PbaOWo6fHXMf6Hwc/vj/OGn/2S8Yv7ycKnpCfVEyqTDZPmU2dmnafvvF05dOJZ+nPFmYKf5X+
|
||||
tfa5zvMffnP8rX82YnbiBf/Fp99LXsq/PPRq2aueuYC5R69TXy/MF72Rf3P4LeNt37vwd5MLWe+x7ys/
|
||||
6H7o/ujz8cGn1E+f/gUDmPP8usTo0wAAAAlwSFlzAAAOawAADmsBVP4NBgAAAVJJREFUaEPdmL1KA0EU
|
||||
6H7o/ujz8cGn1E+f/gUDmPP8usTo0wAAAAlwSFlzAAAOaQAADmkBKwDOjwAAAVJJREFUaEPdmL1KA0EU
|
||||
RtMFTDRaCRaSrAsWvpeNhU8QsAykCAR2ZQsfzxDy5+Kmn4zghWX4srk4S2Y+PzjNaeYe2DTpGGP+BVAy
|
||||
AiUjUDICJSNQMgIlI1AyAiUjUDICJSNQMgIlI1AyAqWGtveUrfppUT6gtzRAqaGt3eflTZLvJ6O8+ra8
|
||||
oLc0QKnBd06A+YUnZDj7ugYBPCEnAoR4Q5QBQnwhSbEbJFn1Zo/bOsc2EU9ILWDjHKkhfIhngBAuJJ1v
|
||||
|
@ -287,7 +287,7 @@
|
|||
<data name="btn_Analysis_Rewind.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
awAADmsBVP4NBgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAHmSURBVGhD7Zg/
|
||||
aQAADmkBKwDOjwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAHmSURBVGhD7Zg/
|
||||
S8NAGIerIAo6OCiiVnuJRfwziZOruAtOIuLoV3DtKDgIrUnMJLi4iqvoN1BHNycFqUM1lxZRNL4v9Opx
|
||||
vUTBkhzyPvCjzeUgvwcu16M5giAIgiAIgiA6TcGvj7KjqK95GU8UdTGvxppXZmG74Ybl8udimQ83h7QU
|
||||
y4287fJL2+Gl5pAZzDvVAcsNjkEiwiSJMI+voyzOM0qkcBgsWW54JyTiREb2HvtlWYwZIqWoG4tAoXe5
|
||||
|
@ -305,31 +305,43 @@
|
|||
<data name="tsl_Database_LED_Aircraft.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wwAADsMBx2+oZAAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
wAAADsABataJCQAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="tsl_Database_LED_Stations.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wwAADsMBx2+oZAAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
wAAADsABataJCQAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="tsl_Database_LED_GLOBE.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wwAADsMBx2+oZAAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
wAAADsABataJCQAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="tsl_Database_LED_SRTM3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wwAADsMBx2+oZAAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
wAAADsABataJCQAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="tsl_Database_LED_SRTM1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wwAADsMBx2+oZAAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
wAAADsABataJCQAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="tsl_Database_LED_ASTER3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wAAADsABataJCQAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="tsl_Database_LED_ASTER1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
wAAADsABataJCQAAABBJREFUGFdjqMcBhpREfT0AN/NfQdTsp04AAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="il_Sat.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
|
@ -340,7 +352,7 @@
|
|||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACM
|
||||
DAAAAk1TRnQBSQFMAwEBAAHwAQkB8AEJASABAAEgAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
|
||||
DAAAAk1TRnQBSQFMAwEBAAF4AQoBeAEKASABAAEgAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
|
||||
AYADAAEgAwABAQEAAQgGAAEQGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA
|
||||
AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA
|
||||
AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm
|
||||
|
|
Plik diff jest za duży
Load Diff
|
@ -31,6 +31,7 @@ using ScoutBase;
|
|||
using Newtonsoft.Json;
|
||||
using static ScoutBase.Core.ZIP;
|
||||
using AirScout.PlaneFeeds.Plugin.MEFContract;
|
||||
using AirScout.CAT;
|
||||
|
||||
namespace AirScout
|
||||
{
|
||||
|
@ -41,6 +42,8 @@ namespace AirScout
|
|||
GMapOverlay GLOBEpolygons = new GMapOverlay("GLOBEpolygons");
|
||||
GMapOverlay SRTM3polygons = new GMapOverlay("SRTM3polygons");
|
||||
GMapOverlay SRTM1polygons = new GMapOverlay("SRTM1polygons");
|
||||
GMapOverlay ASTER3polygons = new GMapOverlay("ASTER3polygons");
|
||||
GMapOverlay ASTER1polygons = new GMapOverlay("ASTER1polygons");
|
||||
|
||||
MapDlg ParentDlg;
|
||||
|
||||
|
@ -50,6 +53,8 @@ namespace AirScout
|
|||
|
||||
private LogWriter Log = LogWriter.Instance;
|
||||
|
||||
private bool LoadingTab = false;
|
||||
|
||||
public OptionsDlg(MapDlg parentDlg)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
@ -145,6 +150,35 @@ namespace AirScout
|
|||
gm_Options_SRTM1.SelectionPen = null;
|
||||
gm_Options_SRTM1.MapScaleInfoEnabled = true;
|
||||
gm_Options_SRTM1.Overlays.Add(SRTM1polygons);
|
||||
|
||||
// set initial settings for ASTER3Map
|
||||
gm_Options_ASTER3.MapProvider = GMapProviders.Find(Properties.Settings.Default.Map_Provider);
|
||||
gm_Options_ASTER3.IgnoreMarkerOnMouseWheel = true;
|
||||
gm_Options_ASTER3.MinZoom = 0;
|
||||
gm_Options_ASTER3.MaxZoom = 20;
|
||||
gm_Options_ASTER3.Zoom = 6;
|
||||
gm_Options_ASTER3.DragButton = System.Windows.Forms.MouseButtons.Left;
|
||||
gm_Options_ASTER3.CanDragMap = true;
|
||||
gm_Options_ASTER3.ScalePen = new Pen(Color.Black, 3);
|
||||
gm_Options_ASTER3.HelperLinePen = null;
|
||||
gm_Options_ASTER3.SelectionPen = null;
|
||||
gm_Options_ASTER3.MapScaleInfoEnabled = true;
|
||||
gm_Options_ASTER3.Overlays.Add(ASTER3polygons);
|
||||
|
||||
// set initial settings for ASTER1Map
|
||||
gm_Options_ASTER1.MapProvider = GMapProviders.Find(Properties.Settings.Default.Map_Provider);
|
||||
gm_Options_ASTER1.IgnoreMarkerOnMouseWheel = true;
|
||||
gm_Options_ASTER1.MinZoom = 0;
|
||||
gm_Options_ASTER1.MaxZoom = 20;
|
||||
gm_Options_ASTER1.Zoom = 6;
|
||||
gm_Options_ASTER1.DragButton = System.Windows.Forms.MouseButtons.Left;
|
||||
gm_Options_ASTER1.CanDragMap = true;
|
||||
gm_Options_ASTER1.ScalePen = new Pen(Color.Black, 3);
|
||||
gm_Options_ASTER1.HelperLinePen = null;
|
||||
gm_Options_ASTER1.SelectionPen = null;
|
||||
gm_Options_ASTER1.MapScaleInfoEnabled = true;
|
||||
gm_Options_ASTER1.Overlays.Add(ASTER1polygons);
|
||||
|
||||
Log.WriteMessage("Finished.");
|
||||
}
|
||||
|
||||
|
@ -180,6 +214,10 @@ namespace AirScout
|
|||
|
||||
private ELEVATIONMODEL GetElevationModel()
|
||||
{
|
||||
if (Properties.Settings.Default.Elevation_ASTER1_Enabled)
|
||||
return ELEVATIONMODEL.ASTER1;
|
||||
if (Properties.Settings.Default.Elevation_ASTER3_Enabled)
|
||||
return ELEVATIONMODEL.ASTER3;
|
||||
if (Properties.Settings.Default.Elevation_SRTM1_Enabled)
|
||||
return ELEVATIONMODEL.SRTM1;
|
||||
if (Properties.Settings.Default.Elevation_SRTM3_Enabled)
|
||||
|
@ -195,7 +233,7 @@ namespace AirScout
|
|||
|
||||
private void tab_Options_General_Enter(object sender, EventArgs e)
|
||||
{
|
||||
tab_Options_General_Update(this,null);
|
||||
tab_Options_General_Update(this, null);
|
||||
}
|
||||
|
||||
private void tab_Options_General_Validating(object sender, CancelEventArgs e)
|
||||
|
@ -290,7 +328,7 @@ namespace AirScout
|
|||
PropagationData.Database.GetDBSize(ELEVATIONMODEL.SRTM1) +
|
||||
ElevationData.Database.GetDBSize(ELEVATIONMODEL.GLOBE) +
|
||||
ElevationData.Database.GetDBSize(ELEVATIONMODEL.SRTM3) +
|
||||
ElevationData.Database.GetDBSize(ELEVATIONMODEL.SRTM1) +
|
||||
ElevationData.Database.GetDBSize(ELEVATIONMODEL.SRTM1) +
|
||||
MapData.Database.GetDBSize();
|
||||
lbl_Options_Database_TotalSize.Text = total.ToString("F0");
|
||||
rb_Options_Database_Update_Never.Checked = !Properties.Settings.Default.Background_Update_OnStartup && !Properties.Settings.Default.Background_Update_Periodically;
|
||||
|
@ -1424,7 +1462,7 @@ namespace AirScout
|
|||
p.Fill = new SolidBrush(Color.FromArgb(50, Color.Red));
|
||||
SRTM3polygons.Polygons.Add(p);
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
Say((string)e.UserState);
|
||||
}
|
||||
|
@ -1594,6 +1632,246 @@ namespace AirScout
|
|||
Dlg.ShowDialog();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region tab_Options_ASTER3
|
||||
|
||||
private void bw_ASTER3_MapUpdater_DoWork(object sender, DoWorkEventArgs e)
|
||||
{
|
||||
bw_ASTER3_MapUpdater.ReportProgress(0, "ASTER3: Creating elevation tile catalogue...");
|
||||
ElevationCatalogue availabletiles = ElevationData.Database.ElevationCatalogueCreateCheckBoundsAndLastModified(bw_ASTER3_MapUpdater, ELEVATIONMODEL.ASTER3, Properties.Settings.Default.MinLat, Properties.Settings.Default.MinLon, Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon);
|
||||
bw_ASTER3_MapUpdater.ReportProgress(0, "ASTER3: Processing tiles...");
|
||||
int missing = 0;
|
||||
int found = 0;
|
||||
foreach (string tilename in availabletiles.Files.Keys)
|
||||
{
|
||||
if (ElevationData.Database.ElevationTileExists(tilename.Substring(0, 6), ELEVATIONMODEL.ASTER3))
|
||||
{
|
||||
bw_ASTER3_MapUpdater.ReportProgress(1, tilename);
|
||||
found++;
|
||||
}
|
||||
else
|
||||
{
|
||||
bw_ASTER3_MapUpdater.ReportProgress(-1, tilename);
|
||||
missing++;
|
||||
}
|
||||
if (bw_ASTER3_MapUpdater.CancellationPending)
|
||||
{
|
||||
bw_ASTER3_MapUpdater.ReportProgress(0, "ASTER3: Processing cancelled...");
|
||||
return;
|
||||
}
|
||||
}
|
||||
bw_ASTER3_MapUpdater.ReportProgress(0, "ASTER3: " + found.ToString() + " tile(s) found, " + missing.ToString() + " more tile(s) available and missing.");
|
||||
}
|
||||
|
||||
private void bw_ASTER3_MapUpdater_ProgressChanged(object sender, ProgressChangedEventArgs e)
|
||||
{
|
||||
if (e.ProgressPercentage == 1)
|
||||
{
|
||||
// add a tile found in database to map polygons
|
||||
double baselat;
|
||||
double baselon;
|
||||
MaidenheadLocator.LatLonFromLoc(((string)e.UserState).Substring(0, 6), PositionInRectangle.BottomLeft, out baselat, out baselon);
|
||||
List<PointLatLng> l = new List<PointLatLng>();
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)(baselon + 2 / 24.0)));
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)(baselon + 2 / 24.0)));
|
||||
GMapPolygon p = new GMapPolygon(l, (string)e.UserState);
|
||||
p.Stroke = new Pen(Color.FromArgb(50, Color.Green));
|
||||
p.Fill = new SolidBrush(Color.FromArgb(50, Color.Green));
|
||||
ASTER3polygons.Polygons.Add(p);
|
||||
}
|
||||
else if (e.ProgressPercentage == -1)
|
||||
{
|
||||
// add missing tile to map polygons
|
||||
double baselat;
|
||||
double baselon;
|
||||
MaidenheadLocator.LatLonFromLoc(((string)e.UserState).Substring(0, 6), PositionInRectangle.BottomLeft, out baselat, out baselon);
|
||||
List<PointLatLng> l = new List<PointLatLng>();
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)(baselon + 2 / 24.0)));
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)(baselon + 2 / 24.0)));
|
||||
GMapPolygon p = new GMapPolygon(l, (string)e.UserState);
|
||||
p.Stroke = new Pen(Color.FromArgb(50, Color.Red));
|
||||
p.Fill = new SolidBrush(Color.FromArgb(50, Color.Red));
|
||||
ASTER3polygons.Polygons.Add(p);
|
||||
}
|
||||
else
|
||||
{
|
||||
Say((string)e.UserState);
|
||||
}
|
||||
}
|
||||
|
||||
private void bw_ASTER3_MapUpdater_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void tab_Options_ASTER3_Enter(object sender, EventArgs e)
|
||||
{
|
||||
// clear map polygons
|
||||
ASTER3polygons.Clear();
|
||||
// add coverage to map polygons
|
||||
List<PointLatLng> cl = new List<PointLatLng>();
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MinLat, Properties.Settings.Default.MinLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MinLat, Properties.Settings.Default.MaxLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MaxLat, Properties.Settings.Default.MinLon));
|
||||
GMapPolygon c = new GMapPolygon(cl, "Coverage");
|
||||
c.Stroke = new Pen(Color.FromArgb(255, Color.Magenta), 3);
|
||||
c.Fill = new SolidBrush(Color.FromArgb(0, Color.Magenta));
|
||||
ASTER3polygons.Polygons.Add(c);
|
||||
// zoom the map initally
|
||||
gm_Options_ASTER3.SetZoomToFitRect(RectLatLng.FromLTRB(Properties.Settings.Default.MinLon, Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon, Properties.Settings.Default.MinLat));
|
||||
// start map updater
|
||||
if (!bw_ASTER3_MapUpdater.IsBusy)
|
||||
bw_ASTER3_MapUpdater.RunWorkerAsync();
|
||||
// zoom the map
|
||||
gm_Options_Coverage.SetZoomToFitRect(RectLatLng.FromLTRB(Properties.Settings.Default.MinLon - 1, Properties.Settings.Default.MaxLat + 1, Properties.Settings.Default.MaxLon + 1, Properties.Settings.Default.MinLat - 1));
|
||||
}
|
||||
|
||||
private void tab_Options_ASTER3_Leave(object sender, EventArgs e)
|
||||
{
|
||||
// stop map updater
|
||||
bw_ASTER3_MapUpdater.CancelAsync();
|
||||
// clear map polygons
|
||||
ASTER3polygons.Clear();
|
||||
// do garbage collection
|
||||
GC.Collect();
|
||||
Say("");
|
||||
}
|
||||
|
||||
|
||||
private void btn_Options_ASTER3_Copyright_Click(object sender, EventArgs e)
|
||||
{
|
||||
ElevationCopyrightDlg Dlg = new ElevationCopyrightDlg();
|
||||
Dlg.Text = "ASTER3 Copyright Information";
|
||||
Dlg.rtb_Copyright.Text = Properties.Settings.Default.Elevation_ASTER3_Copyright;
|
||||
Dlg.ShowDialog();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region tab_Options_ASTER1
|
||||
|
||||
private void bw_ASTER1_MapUpdater_DoWork(object sender, DoWorkEventArgs e)
|
||||
{
|
||||
bw_ASTER1_MapUpdater.ReportProgress(0, "ASTER1: Creating elevation tile catalogue...");
|
||||
ElevationCatalogue availabletiles = ElevationData.Database.ElevationCatalogueCreateCheckBoundsAndLastModified(bw_ASTER1_MapUpdater, ELEVATIONMODEL.ASTER1, Properties.Settings.Default.MinLat, Properties.Settings.Default.MinLon, Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon);
|
||||
bw_ASTER1_MapUpdater.ReportProgress(0, "ASTER1: Processing tiles...");
|
||||
int missing = 0;
|
||||
int found = 0;
|
||||
foreach (string tilename in availabletiles.Files.Keys)
|
||||
{
|
||||
if (ElevationData.Database.ElevationTileExists(tilename.Substring(0, 6), ELEVATIONMODEL.ASTER1))
|
||||
{
|
||||
bw_ASTER1_MapUpdater.ReportProgress(1, tilename);
|
||||
found++;
|
||||
}
|
||||
else
|
||||
{
|
||||
bw_ASTER1_MapUpdater.ReportProgress(-1, tilename);
|
||||
missing++;
|
||||
}
|
||||
if (bw_ASTER1_MapUpdater.CancellationPending)
|
||||
{
|
||||
bw_ASTER1_MapUpdater.ReportProgress(0, "ASTER1: Processing cancelled...");
|
||||
return;
|
||||
}
|
||||
}
|
||||
bw_ASTER1_MapUpdater.ReportProgress(0, "ASTER1: " + found.ToString() + " tile(s) found, " + missing.ToString() + " more tile(s) available and missing.");
|
||||
}
|
||||
|
||||
private void bw_ASTER1_MapUpdater_ProgressChanged(object sender, ProgressChangedEventArgs e)
|
||||
{
|
||||
if (e.ProgressPercentage == 1)
|
||||
{
|
||||
// add a tile found in database to map polygons
|
||||
double baselat;
|
||||
double baselon;
|
||||
MaidenheadLocator.LatLonFromLoc(((string)e.UserState).Substring(0, 6), PositionInRectangle.BottomLeft, out baselat, out baselon);
|
||||
List<PointLatLng> l = new List<PointLatLng>();
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)(baselon + 2 / 24.0)));
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)(baselon + 2 / 24.0)));
|
||||
GMapPolygon p = new GMapPolygon(l, (string)e.UserState);
|
||||
p.Stroke = new Pen(Color.FromArgb(50, Color.Green));
|
||||
p.Fill = new SolidBrush(Color.FromArgb(50, Color.Green));
|
||||
ASTER1polygons.Polygons.Add(p);
|
||||
}
|
||||
else if (e.ProgressPercentage == -1)
|
||||
{
|
||||
// add missing tile to map polygons
|
||||
double baselat;
|
||||
double baselon;
|
||||
MaidenheadLocator.LatLonFromLoc(((string)e.UserState).Substring(0, 6), PositionInRectangle.BottomLeft, out baselat, out baselon);
|
||||
List<PointLatLng> l = new List<PointLatLng>();
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)baselon));
|
||||
l.Add(new PointLatLng((decimal)(baselat + 1 / 24.0), (decimal)(baselon + 2 / 24.0)));
|
||||
l.Add(new PointLatLng((decimal)baselat, (decimal)(baselon + 2 / 24.0)));
|
||||
GMapPolygon p = new GMapPolygon(l, (string)e.UserState);
|
||||
p.Stroke = new Pen(Color.FromArgb(50, Color.Red));
|
||||
p.Fill = new SolidBrush(Color.FromArgb(50, Color.Red));
|
||||
ASTER1polygons.Polygons.Add(p);
|
||||
}
|
||||
else
|
||||
{
|
||||
Say((string)e.UserState);
|
||||
}
|
||||
}
|
||||
|
||||
private void bw_ASTER1_MapUpdater_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void tba_Option_ASTER1_Enter(object sender, EventArgs e)
|
||||
{
|
||||
// clear map polygons
|
||||
ASTER1polygons.Clear();
|
||||
// add coverage to map polygons
|
||||
List<PointLatLng> cl = new List<PointLatLng>();
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MinLat, Properties.Settings.Default.MinLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MinLat, Properties.Settings.Default.MaxLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon));
|
||||
cl.Add(new PointLatLng(Properties.Settings.Default.MaxLat, Properties.Settings.Default.MinLon));
|
||||
GMapPolygon c = new GMapPolygon(cl, "Coverage");
|
||||
c.Stroke = new Pen(Color.FromArgb(255, Color.Magenta), 3);
|
||||
c.Fill = new SolidBrush(Color.FromArgb(0, Color.Magenta));
|
||||
ASTER1polygons.Polygons.Add(c);
|
||||
// zoom the map initally
|
||||
gm_Options_ASTER1.SetZoomToFitRect(RectLatLng.FromLTRB(Properties.Settings.Default.MinLon, Properties.Settings.Default.MaxLat, Properties.Settings.Default.MaxLon, Properties.Settings.Default.MinLat));
|
||||
// start map updater
|
||||
if (!bw_ASTER1_MapUpdater.IsBusy)
|
||||
bw_ASTER1_MapUpdater.RunWorkerAsync();
|
||||
// zoom the map
|
||||
gm_Options_Coverage.SetZoomToFitRect(RectLatLng.FromLTRB(Properties.Settings.Default.MinLon - 1, Properties.Settings.Default.MaxLat + 1, Properties.Settings.Default.MaxLon + 1, Properties.Settings.Default.MinLat - 1));
|
||||
}
|
||||
|
||||
private void tba_Option_ASTER1_Leave(object sender, EventArgs e)
|
||||
{
|
||||
// stop map updater
|
||||
bw_ASTER1_MapUpdater.CancelAsync();
|
||||
// clear map polygons
|
||||
ASTER1polygons.Clear();
|
||||
// do garbage collection
|
||||
GC.Collect();
|
||||
Say("");
|
||||
}
|
||||
|
||||
private void btn_Options_ASTER1_Copyright_Click(object sender, EventArgs e)
|
||||
{
|
||||
ElevationCopyrightDlg Dlg = new ElevationCopyrightDlg();
|
||||
Dlg.Text = "ASTER1 Copyright Information";
|
||||
Dlg.rtb_Copyright.Text = Properties.Settings.Default.Elevation_ASTER1_Copyright;
|
||||
Dlg.ShowDialog();
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region tab_Options_Path
|
||||
|
@ -1718,7 +1996,6 @@ namespace AirScout
|
|||
}
|
||||
return ld;
|
||||
}
|
||||
|
||||
private void btn_Options_Path_Export_Click(object sender, EventArgs e)
|
||||
{
|
||||
// check and update station database
|
||||
|
@ -1733,7 +2010,7 @@ namespace AirScout
|
|||
if (myqrv.AntennaGain == 0)
|
||||
myqrv.AntennaGain = StationData.Database.QRVGetDefaultAntennaGain(Properties.Settings.Default.Band);
|
||||
if (myqrv.Power == 0)
|
||||
myqrv.Power = StationData.Database.QRVGetDefaultPower(Properties.Settings.Default.Band);
|
||||
myqrv.Power = StationData.Database.QRVGetDefaultPower(Properties.Settings.Default.Band);
|
||||
// check if there are a valid DX settings
|
||||
if (!Callsign.Check(Properties.Settings.Default.DXCall) ||
|
||||
!GeographicalPoint.Check(Properties.Settings.Default.DXLat, Properties.Settings.Default.DXLon))
|
||||
|
@ -1778,7 +2055,7 @@ namespace AirScout
|
|||
SaveFileDialog Dlg = new SaveFileDialog();
|
||||
Dlg.AddExtension = true;
|
||||
Dlg.DefaultExt = "csv";
|
||||
Dlg.Filter = "Comma Separated Values *.csv |csv";
|
||||
Dlg.Filter = "Comma Separated Values *.csv |*.csv";
|
||||
Dlg.FileName = "Path Information " + Properties.Settings.Default.MyCall.Replace("/", "_") + " to " + Properties.Settings.Default.DXCall.Replace("/", "_");
|
||||
Dlg.InitialDirectory = Application.StartupPath;
|
||||
Dlg.OverwritePrompt = true;
|
||||
|
@ -1788,21 +2065,26 @@ namespace AirScout
|
|||
{
|
||||
using (StreamWriter sw = new StreamWriter(Dlg.FileName))
|
||||
{
|
||||
int est = 10;
|
||||
sw.WriteLine("Distance[km];Lat[deg];Lon[deg];Elevation[m]");
|
||||
for (int i = 0; i < epath.Path.Length; i++)
|
||||
{
|
||||
double distance = (double)i * epath.StepWidth / 1000.0;
|
||||
LatLon.GPoint p = LatLon.DestinationPoint(myloc.Lat, myloc.Lon, epath.Bearing12, distance);
|
||||
sw.WriteLine(distance.ToString("F8") + ";" +
|
||||
p.Lat.ToString("F8") + ";" +
|
||||
p.Lon.ToString("F8") + ";" +
|
||||
epath.Path[i].ToString());
|
||||
for (int j = 0; j < epath.StepWidth / est; j++)
|
||||
{
|
||||
double distance = (double)(i + j * est / epath.StepWidth) * epath.StepWidth / 1000.0;
|
||||
LatLon.GPoint p = LatLon.DestinationPoint(myloc.Lat, myloc.Lon, epath.Bearing12, distance);
|
||||
sw.WriteLine(distance.ToString("F8") + ";" +
|
||||
p.Lat.ToString("F8") + ";" +
|
||||
p.Lon.ToString("F8") + ";" +
|
||||
epath.Path[i].ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing, if export is going wrong
|
||||
MessageBox.Show("Error while exporting path: " + ex.Message, "Export Path to CSV");
|
||||
Log.WriteMessage(ex.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2209,7 +2491,7 @@ namespace AirScout
|
|||
{
|
||||
try
|
||||
{
|
||||
Properties.Settings.Default.Planes_Filter_Min_Category = PlaneCategories.ParseStringValue((string) cb_Options_Planes_Filter_Min_Cat.SelectedItem);
|
||||
Properties.Settings.Default.Planes_Filter_Min_Category = PlaneCategories.ParseStringValue((string)cb_Options_Planes_Filter_Min_Cat.SelectedItem);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -2265,7 +2547,45 @@ namespace AirScout
|
|||
|
||||
private void tab_Options_Track_Enter(object sender, EventArgs e)
|
||||
{
|
||||
if (AirScout.CAT.Properties.Settings.Default.CAT_Activate)
|
||||
{
|
||||
gb_Options_Doppler.Enabled = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
gb_Options_Doppler.Enabled = false;
|
||||
}
|
||||
|
||||
// check/uncheck radio buttons
|
||||
// do not use property binding here!
|
||||
if (Properties.Settings.Default.Track_Serial_None) { rb_Options_Track_Serial_None.Checked = true; }
|
||||
else if (Properties.Settings.Default.Track_Serial_GS232_AZ) { rb_Options_Track_Serial_GS232_AZ.Checked = true; }
|
||||
else if (Properties.Settings.Default.Track_Serial_GS232_AZEL) { rb_Options_Track_Serial_GS232_AZEL.Checked = true; }
|
||||
|
||||
if (Properties.Settings.Default.Track_DDE_None) { rb_Options_Track_DDE_None.Checked = true; }
|
||||
else if (Properties.Settings.Default.Track_DDE_HRD) { rb_Options_Track_DDE_HRD.Checked = true; }
|
||||
|
||||
if (Properties.Settings.Default.Track_UDP_None) { rb_Options_Track_UDP_None.Checked = true; }
|
||||
else if (Properties.Settings.Default.Track_UDP_WinTest) { rb_Options_Track_UDP_WinTest.Checked = true; }
|
||||
else if (Properties.Settings.Default.Track_UDP_AirScout) { rb_Options_Track_UDP_AirScout.Checked = true; }
|
||||
|
||||
if (Properties.Settings.Default.Track_File_None) { rb_Options_Track_File_None.Checked = true; }
|
||||
else if (Properties.Settings.Default.Track_File_Native) { rb_Options_Track_File_Native.Checked = true; }
|
||||
else if (Properties.Settings.Default.Track_File_WSJT) { rb_Options_Track_File_WSJT.Checked = true; }
|
||||
|
||||
if (Properties.Settings.Default.Doppler_Strategy_None) { rb_Options_Doppler_Strategy_None.Checked = true; }
|
||||
else if (Properties.Settings.Default.Doppler_Strategy_A) { rb_Options_Doppler_Strategy_A.Checked = true; }
|
||||
else if (Properties.Settings.Default.Doppler_Strategy_B) { rb_Options_Doppler_Strategy_B.Checked = true; }
|
||||
else if (Properties.Settings.Default.Doppler_Strategy_C) { rb_Options_Doppler_Strategy_C.Checked = true; }
|
||||
else if (Properties.Settings.Default.Doppler_Strategy_D) { rb_Options_Doppler_Strategy_D.Checked = true; }
|
||||
|
||||
ud_Options_CAT_Update.Value = AirScout.CAT.Properties.Settings.Default.CAT_Update;
|
||||
tb_Options_Track_DialFreq.SilentValue = Properties.Settings.Default.Doppler_DialFreq;
|
||||
cb_Options_Track_Activate_CheckedChanged(this, null);
|
||||
}
|
||||
|
||||
private void tb_Options_CAT_DialFreq_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
}
|
||||
|
||||
private void tc_Track_Validating(object sender, CancelEventArgs e)
|
||||
|
@ -2287,8 +2607,403 @@ namespace AirScout
|
|||
}
|
||||
}
|
||||
|
||||
private void cb_Options_Track_Activate_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (cb_Options_Track_Activate.Checked)
|
||||
{
|
||||
gb_Options_Track_Serial.Enabled = true;
|
||||
gb_Options_Track_UDP.Enabled = true;
|
||||
gb_Options_Track_DDE.Enabled = true;
|
||||
gb_Options_Track_File.Enabled = true;
|
||||
if (AirScout.CAT.Properties.Settings.Default.CAT_Activate)
|
||||
{
|
||||
gb_Options_Doppler.Enabled = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
gb_Options_Track_Serial.Enabled = false;
|
||||
gb_Options_Track_UDP.Enabled = false;
|
||||
gb_Options_Track_DDE.Enabled = false;
|
||||
gb_Options_Track_File.Enabled = false;
|
||||
gb_Options_Doppler.Enabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void gb_Options_Track_Serial_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.Track_Serial_None = rb_Options_Track_Serial_None.Checked;
|
||||
Properties.Settings.Default.Track_Serial_GS232_AZ = rb_Options_Track_Serial_GS232_AZ.Checked;
|
||||
Properties.Settings.Default.Track_Serial_GS232_AZEL = rb_Options_Track_Serial_GS232_AZEL.Checked;
|
||||
}
|
||||
|
||||
private void gb_Options_Track_DDE_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.Track_DDE_None = rb_Options_Track_DDE_None.Checked;
|
||||
Properties.Settings.Default.Track_DDE_HRD = rb_Options_Track_DDE_HRD.Checked;
|
||||
}
|
||||
|
||||
private void gb_Options_Track_UDP_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.Track_UDP_None = rb_Options_Track_UDP_None.Checked;
|
||||
Properties.Settings.Default.Track_UDP_WinTest = rb_Options_Track_UDP_WinTest.Checked;
|
||||
Properties.Settings.Default.Track_UDP_AirScout = rb_Options_Track_UDP_AirScout.Checked;
|
||||
}
|
||||
|
||||
private void gb_Options_Track_File_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.Track_File_None = rb_Options_Track_File_None.Checked;
|
||||
Properties.Settings.Default.Track_File_Native = rb_Options_Track_File_Native.Checked;
|
||||
Properties.Settings.Default.Track_File_WSJT = rb_Options_Track_File_WSJT.Checked;
|
||||
}
|
||||
|
||||
private void gb_Options_Doppler_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Properties.Settings.Default.Doppler_Strategy_None = rb_Options_Doppler_Strategy_None.Checked;
|
||||
Properties.Settings.Default.Doppler_Strategy_A = rb_Options_Doppler_Strategy_A.Checked;
|
||||
Properties.Settings.Default.Doppler_Strategy_B = rb_Options_Doppler_Strategy_B.Checked;
|
||||
Properties.Settings.Default.Doppler_Strategy_C = rb_Options_Doppler_Strategy_C.Checked;
|
||||
Properties.Settings.Default.Doppler_Strategy_D = rb_Options_Doppler_Strategy_D.Checked;
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region tab_Options_CAT
|
||||
|
||||
private void tab_Options_CAT_Enter(object sender, EventArgs e)
|
||||
{
|
||||
LoadingTab = true;
|
||||
|
||||
cb_Options_CAT_Activate.Checked = AirScout.CAT.Properties.Settings.Default.CAT_Activate;
|
||||
|
||||
|
||||
// get a list of supported rigs and add them to combo box
|
||||
List<SupportedRig> rigs = CATWorker.SupportedRigs();
|
||||
cb_Options_CAT_Rig.Items.Clear();
|
||||
foreach (SupportedRig rig in rigs)
|
||||
{
|
||||
cb_Options_CAT_Rig.Items.Add(rig);
|
||||
}
|
||||
|
||||
// try to select settings
|
||||
if (AirScout.CAT.Properties.Settings.Default.CAT_RigType != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
int index = cb_Options_CAT_Rig.FindString(AirScout.CAT.Properties.Settings.Default.CAT_RigType);
|
||||
if (index >= 0)
|
||||
{
|
||||
cb_Options_CAT_Rig.SelectedIndex = index;
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
// do nothing if something goes wrong
|
||||
}
|
||||
}
|
||||
try
|
||||
{
|
||||
cb_Options_CAT_PortName.DataSource = System.IO.Ports.SerialPort.GetPortNames();
|
||||
cb_Options_CAT_PortName.SelectedItem = AirScout.CAT.Properties.Settings.Default.CAT_PortName;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
try
|
||||
{
|
||||
cb_Options_CAT_Baudrate.DataSource = new string[] { "110", "300", "600", "1200", "2400", "4800", "9600", "14400", "19200", "38400", "56000", "57600", "115200", "128000", "256000" };
|
||||
cb_Options_CAT_Baudrate.SelectedItem = AirScout.CAT.Properties.Settings.Default.CAT_Baudrate.ToString();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
try
|
||||
{
|
||||
cb_Options_CAT_DataBits.DataSource = new string[] { "5", "6", "7", "8" };
|
||||
cb_Options_CAT_DataBits.SelectedItem = AirScout.CAT.Properties.Settings.Default.CAT_DataBits.ToString();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
try
|
||||
{
|
||||
EnumHelpers.BindToEnum<PARITY>(cb_Options_CAT_Parity);
|
||||
cb_Options_CAT_Parity.SelectedValue = (int)AirScout.CAT.Properties.Settings.Default.CAT_Parity;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
try
|
||||
{
|
||||
EnumHelpers.BindToEnum<STOPBITS>(cb_Options_CAT_StopBits);
|
||||
cb_Options_CAT_StopBits.SelectedValue = (int)AirScout.CAT.Properties.Settings.Default.CAT_StopBits;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
try
|
||||
{
|
||||
EnumHelpers.BindToEnum<FLOWCONTROL>(cb_Options_CAT_RTS);
|
||||
cb_Options_CAT_RTS.SelectedValue = (int)AirScout.CAT.Properties.Settings.Default.CAT_RTS;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
try
|
||||
{
|
||||
EnumHelpers.BindToEnum<FLOWCONTROL>(cb_Options_CAT_DTR);
|
||||
cb_Options_CAT_DTR.SelectedValue = (int)AirScout.CAT.Properties.Settings.Default.CAT_DTR;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
try
|
||||
{
|
||||
ud_Options_CAT_Poll.Value = AirScout.CAT.Properties.Settings.Default.CAT_Poll;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
try
|
||||
{
|
||||
ud_Options_CAT_Timeout.Value = AirScout.CAT.Properties.Settings.Default.CAT_Timeout;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
|
||||
cb_Options_CAT_Activate_CheckedChanged(this, null);
|
||||
|
||||
LoadingTab = false;
|
||||
}
|
||||
|
||||
private void cb_Options_CAT_Activate_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_Activate = cb_Options_CAT_Activate.Checked;
|
||||
|
||||
// check if port settings must be enabled (depending on rig type)
|
||||
bool portenabled = true;
|
||||
try
|
||||
{
|
||||
SupportedRig rig = (SupportedRig)cb_Options_CAT_Rig.SelectedItem;
|
||||
if (rig.CATEngine == CATENGINE.OMNIRIGX)
|
||||
portenabled = false;
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
if (cb_Options_CAT_Activate.Checked)
|
||||
{
|
||||
ud_Options_CAT_Update.Enabled = true;
|
||||
gb_Options_CAT_RigType.Enabled = true;
|
||||
if (portenabled)
|
||||
gb_Options_CAT_PortSettings.Enabled = true;
|
||||
else
|
||||
gb_Options_CAT_PortSettings.Enabled = false;
|
||||
gb_Options_CAT_OperatingInstructions.Enabled = true;
|
||||
if (Properties.Settings.Default.Track_Activate)
|
||||
{
|
||||
gb_Options_Doppler.Enabled = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
ud_Options_CAT_Update.Enabled = false;
|
||||
gb_Options_CAT_RigType.Enabled = false;
|
||||
gb_Options_CAT_PortSettings.Enabled = false;
|
||||
gb_Options_CAT_OperatingInstructions.Enabled = false;
|
||||
gb_Options_Doppler.Enabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void cb_Options_CAT_Rig_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
SupportedRig rig = (SupportedRig)cb_Options_CAT_Rig.SelectedItem;
|
||||
if (rig != null)
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_RigType = rig.Type;
|
||||
|
||||
// disable port settings when using OmniRig ActiveX
|
||||
if (rig.CATEngine == CATENGINE.OMNIRIGX)
|
||||
{
|
||||
gb_Options_CAT_PortSettings.Enabled = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
gb_Options_CAT_PortSettings.Enabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
catch
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
}
|
||||
|
||||
private void ud_Options_CAT_Update_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_Update = (int)ud_Options_CAT_Update.Value;
|
||||
}
|
||||
|
||||
private void cb_Options_CAT_PortName_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_PortName = (string)cb_Options_CAT_PortName.SelectedItem;
|
||||
}
|
||||
catch
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
}
|
||||
|
||||
private void cb_Options_CAT_Baudrate_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_Baudrate = System.Convert.ToInt32(cb_Options_CAT_Baudrate.SelectedItem);
|
||||
}
|
||||
catch
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
}
|
||||
|
||||
private void cb_Options_CAT_DataBits_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_DataBits = System.Convert.ToInt32(cb_Options_CAT_DataBits.SelectedItem);
|
||||
}
|
||||
catch
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
}
|
||||
|
||||
private void cb_Parity_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_Parity = (PARITY)cb_Options_CAT_Parity.SelectedValue;
|
||||
}
|
||||
catch
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
}
|
||||
|
||||
private void cb_Options_CAT_Stopbits_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_StopBits = (STOPBITS)cb_Options_CAT_StopBits.SelectedValue;
|
||||
}
|
||||
catch
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
}
|
||||
|
||||
private void cb_Options_CAT_RTS_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_RTS = (FLOWCONTROL)cb_Options_CAT_RTS.SelectedValue;
|
||||
}
|
||||
catch
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
}
|
||||
|
||||
private void cb_Options_CAT_DTR_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_DTR = (FLOWCONTROL)cb_Options_CAT_DTR.SelectedValue;
|
||||
}
|
||||
catch
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
}
|
||||
|
||||
private void ud_Options_CAT_Poll_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_Poll = (int)ud_Options_CAT_Poll.Value; }
|
||||
catch
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void ud_Options_CAT_Timeout_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (LoadingTab)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
AirScout.CAT.Properties.Settings.Default.CAT_Timeout = (int)ud_Options_CAT_Timeout.Value;
|
||||
}
|
||||
catch
|
||||
{
|
||||
// do nothing if fails
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
#region tab_Options_Info
|
||||
|
||||
private void tab_Options_Info_Enter(object sender, EventArgs e)
|
||||
|
@ -2554,14 +3269,13 @@ namespace AirScout
|
|||
|
||||
#endregion
|
||||
|
||||
|
||||
public class StationDataUpdaterDoWorkEventArgs
|
||||
{
|
||||
public LocationDesignator ld;
|
||||
public List<QRVDesignator> qrvs;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public class StationDataUpdaterDoWorkEventArgs
|
||||
{
|
||||
public LocationDesignator ld;
|
||||
public List<QRVDesignator> qrvs;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -240,7 +240,8 @@
|
|||
</value>
|
||||
</data>
|
||||
<data name="label61.Text" xml:space="preserve">
|
||||
<value>You can select different map provider from the list below. Depending on your selection some maps may not be available for your choosen area. Please note that the selection of maps is taken from Great Maps regardless of their legal status. Some of them might be copyrighted or otherwise restricted in use. You were asked to agree with the terms of use first.
|
||||
<value>You can select different map provider from the list below. Depending on your selection some maps may not be available for your choosen area. Please note that the selection of maps is taken from Great Maps regardless of their legal status. Some of them might be copyrighted or otherwise restricted in use.
|
||||
You were asked to agree with the terms of use first.
|
||||
Open Street Map is recommended as a default.</value>
|
||||
</data>
|
||||
<data name="label52.Text" xml:space="preserve">
|
||||
|
@ -266,6 +267,20 @@ See documentation for further details.</value>
|
|||
<data name="label65.Text" xml:space="preserve">
|
||||
<value>AirScout can get FFT data from Spectrum Lab software via Network. You must have Spectrum Lab software installed with default settings. Do not forget to activate http - server functionaltiy in Spectrum Lab.</value>
|
||||
</data>
|
||||
<data name="richTextBox4.Text" xml:space="preserve">
|
||||
<value>Rig must support a minimum of CAT control capabilities:
|
||||
- set frequency of VFO A and VFO B
|
||||
- set/reset Split Mode
|
||||
|
||||
A restart of AirScout might be required after settings change, especially when changing between different CAT engines.</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Text" xml:space="preserve">
|
||||
<value>CAT control is introduced for Doppler shift compensation (see "Track" tab for details).
|
||||
AirScout is calculating tracking and Doppler shifts once per second by default. Each communication with rig must be completed within this period. The recommended settings for OmniRig are:
|
||||
|
||||
- Polling interval: 100ms ...500ms
|
||||
- Timeout: 500ms .. 1sec (essential for OmniRig)</value>
|
||||
</data>
|
||||
<data name="label37.Text" xml:space="preserve">
|
||||
<value>Watchlist allows you to pick a number of stations out of your database.
|
||||
This is very helpful especially when working in Multi-Path Mode.
|
||||
|
@ -291,4 +306,10 @@ Watchlist can be synchronized with ON4KST chat user list instead of a local mana
|
|||
<metadata name="bw_StationDataUpdater.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>890, 17</value>
|
||||
</metadata>
|
||||
<metadata name="bw_ASTER3_MapUpdater.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>1071, 17</value>
|
||||
</metadata>
|
||||
<metadata name="bw_ASTER1_MapUpdater.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>1259, 17</value>
|
||||
</metadata>
|
||||
</root>
|
|
@ -263,7 +263,7 @@ namespace AirScout
|
|||
Log.WriteMessage(Name + " error processing call [" + ld.Call + "]: " + ex.ToString());
|
||||
}
|
||||
// keep cpu load low --> TODO: find better solution here
|
||||
Thread.Sleep(10);
|
||||
Thread.Sleep(100);
|
||||
}
|
||||
// save station database timestamp
|
||||
SaveDatabaseTimeStamp();
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
namespace AirScout
|
||||
{
|
||||
partial class PercentageControl
|
||||
{
|
||||
/// <summary>
|
||||
/// Erforderliche Designervariable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Verwendete Ressourcen bereinigen.
|
||||
/// </summary>
|
||||
/// <param name="disposing">True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Vom Komponenten-Designer generierter Code
|
||||
|
||||
/// <summary>
|
||||
/// Erforderliche Methode für die Designerunterstützung.
|
||||
/// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// PercentageControl
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Name = "PercentageControl";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Drawing;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace AirScout
|
||||
{
|
||||
public partial class PercentageControl : NumericUpDown
|
||||
{
|
||||
public PercentageControl()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
protected override void UpdateEditText()
|
||||
{
|
||||
this.Text = Value.ToString("0%");
|
||||
// base.UpdateEditText();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
|
@ -12,7 +12,7 @@ namespace AirScout.Properties {
|
|||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.5.0.0")]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.0.3.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
@ -2308,6 +2308,7 @@ Digital data base on the World Wide Web (URL: http://www.ngdc.noaa.gov/mgg/topo/
|
|||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
|
||||
public bool StationsMap_OverlayElevation {
|
||||
get {
|
||||
return ((bool)(this["StationsMap_OverlayElevation"]));
|
||||
|
@ -2316,5 +2317,384 @@ Digital data base on the World Wide Web (URL: http://www.ngdc.noaa.gov/mgg/topo/
|
|||
this["StationsMap_OverlayElevation"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("Maidenhead locator system elvation tiles calculated by DL2ALF based on elevation " +
|
||||
"data of the ASTER project:\r\n\r\nThe ASTER Global Digital Elevation Model (GDEM) V" +
|
||||
"ersion 3 (ASTGTM) provides a global digital elevation model (DEM) of land areas " +
|
||||
"on Earth at a spatial resolution of 1 arc second (approximately 30 meter horizon" +
|
||||
"tal posting at the equator).\r\n\r\nThe development of the ASTER GDEM data products " +
|
||||
"is a collaborative effort between National Aeronautics and Space Administration " +
|
||||
"(NASA) and Japan’s Ministry of Economy, Trade, and Industry (METI).\r\nThe ASTER G" +
|
||||
"DEM data products are created by the Sensor Information Laboratory Corporation (" +
|
||||
"SILC) in Tokyo.\r\n\r\nThe ASTER GDEM Version 3 data product was created from the au" +
|
||||
"tomated processing of the entire ASTER Level 1A archive of scenes acquired betwe" +
|
||||
"en March 1, 2000, and November 30, 2013\r\nStereo correlation was used to produce " +
|
||||
"over one million individual scene based ASTER DEMs, to which cloud masking was a" +
|
||||
"pplied. All cloud screened DEMs and non-cloud screened DEMs were stacked.\r\nResid" +
|
||||
"ual bad values and outliers were removed. In areas with limited data stacking, s" +
|
||||
"everal existing reference DEMs were used to supplement ASTER data to correct for" +
|
||||
" residual anomalies.\r\nSelected data were averaged to create final pixel values b" +
|
||||
"efore partitioning the data into 1° by 1° tiles with a one pixel overlap.\r\nTo co" +
|
||||
"rrect elevation values of water body surfaces, the ASTER Global Water Bodies Dat" +
|
||||
"abase (ASTWBD) Version 1 data product was also generated.\r\n\r\nASTER GDEM is a pro" +
|
||||
"duct of NASA and MET See Ihttps://lpdaac.usgs.gov/products/astgtmv003/\r\n\r\nNASA/M" +
|
||||
"ETI/AIST/Japan Spacesystems, and U.S./Japan ASTER Science Team (2019). ASTER Glo" +
|
||||
"bal Digital Elevation Model V003 [Data set]. NASA EOSDIS Land Processes DAAC\r\n")]
|
||||
public string Elevation_ASTER3_Copyright {
|
||||
get {
|
||||
return ((string)(this["Elevation_ASTER3_Copyright"]));
|
||||
}
|
||||
set {
|
||||
this["Elevation_ASTER3_Copyright"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool Elevation_ASTER3_Enabled {
|
||||
get {
|
||||
return ((bool)(this["Elevation_ASTER3_Enabled"]));
|
||||
}
|
||||
set {
|
||||
this["Elevation_ASTER3_Enabled"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool Elevation_ASTER3_EnableCache {
|
||||
get {
|
||||
return ((bool)(this["Elevation_ASTER3_EnableCache"]));
|
||||
}
|
||||
set {
|
||||
this["Elevation_ASTER3_EnableCache"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("Maidenhead locator system elvation tiles calculated by DL2ALF based on elevation " +
|
||||
"data of the ASTER project:\r\n\r\nThe ASTER Global Digital Elevation Model (GDEM) V" +
|
||||
"ersion 3 (ASTGTM) provides a global digital elevation model (DEM) of land areas " +
|
||||
"on Earth at a spatial resolution of 1 arc second (approximately 30 meter horizon" +
|
||||
"tal posting at the equator).\r\n\r\nThe development of the ASTER GDEM data products " +
|
||||
"is a collaborative effort between National Aeronautics and Space Administration " +
|
||||
"(NASA) and Japan’s Ministry of Economy, Trade, and Industry (METI).\r\nThe ASTER G" +
|
||||
"DEM data products are created by the Sensor Information Laboratory Corporation (" +
|
||||
"SILC) in Tokyo.\r\n\r\nThe ASTER GDEM Version 3 data product was created from the au" +
|
||||
"tomated processing of the entire ASTER Level 1A archive of scenes acquired betwe" +
|
||||
"en March 1, 2000, and November 30, 2013\r\nStereo correlation was used to produce " +
|
||||
"over one million individual scene based ASTER DEMs, to which cloud masking was a" +
|
||||
"pplied. All cloud screened DEMs and non-cloud screened DEMs were stacked.\r\nResid" +
|
||||
"ual bad values and outliers were removed. In areas with limited data stacking, s" +
|
||||
"everal existing reference DEMs were used to supplement ASTER data to correct for" +
|
||||
" residual anomalies.\r\nSelected data were averaged to create final pixel values b" +
|
||||
"efore partitioning the data into 1° by 1° tiles with a one pixel overlap.\r\nTo co" +
|
||||
"rrect elevation values of water body surfaces, the ASTER Global Water Bodies Dat" +
|
||||
"abase (ASTWBD) Version 1 data product was also generated.\r\n\r\nASTER GDEM is a pro" +
|
||||
"duct of NASA and MET See Ihttps://lpdaac.usgs.gov/products/astgtmv003/\r\n\r\nNASA/M" +
|
||||
"ETI/AIST/Japan Spacesystems, and U.S./Japan ASTER Science Team (2019). ASTER Glo" +
|
||||
"bal Digital Elevation Model V003 [Data set]. NASA EOSDIS Land Processes DAAC\r\n\r\n" +
|
||||
"")]
|
||||
public string Elevation_ASTER1_Copyright {
|
||||
get {
|
||||
return ((string)(this["Elevation_ASTER1_Copyright"]));
|
||||
}
|
||||
set {
|
||||
this["Elevation_ASTER1_Copyright"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool Elevation_ASTER1_Enabled {
|
||||
get {
|
||||
return ((bool)(this["Elevation_ASTER1_Enabled"]));
|
||||
}
|
||||
set {
|
||||
this["Elevation_ASTER1_Enabled"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool Elevation_ASTER1_EnableCache {
|
||||
get {
|
||||
return ((bool)(this["Elevation_ASTER1_EnableCache"]));
|
||||
}
|
||||
set {
|
||||
this["Elevation_ASTER1_EnableCache"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("UNDEFINED")]
|
||||
public global::System.Data.SQLite.DATABASESTATUS Elevation_ASTER3_DatabaseStatus {
|
||||
get {
|
||||
return ((global::System.Data.SQLite.DATABASESTATUS)(this["Elevation_ASTER3_DatabaseStatus"]));
|
||||
}
|
||||
set {
|
||||
this["Elevation_ASTER3_DatabaseStatus"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("UNDEFINED")]
|
||||
public global::System.Data.SQLite.DATABASESTATUS Elevation_ASTER1_DatabaseStatus {
|
||||
get {
|
||||
return ((global::System.Data.SQLite.DATABASESTATUS)(this["Elevation_ASTER1_DatabaseStatus"]));
|
||||
}
|
||||
set {
|
||||
this["Elevation_ASTER1_DatabaseStatus"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("1")]
|
||||
public decimal Map_Opacity {
|
||||
get {
|
||||
return ((decimal)(this["Map_Opacity"]));
|
||||
}
|
||||
set {
|
||||
this["Map_Opacity"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public long Doppler_DialFreq {
|
||||
get {
|
||||
return ((long)(this["Doppler_DialFreq"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_DialFreq"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public double Doppler_MyDoppler {
|
||||
get {
|
||||
return ((double)(this["Doppler_MyDoppler"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_MyDoppler"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public double Doppler_DXDoppler {
|
||||
get {
|
||||
return ((double)(this["Doppler_DXDoppler"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_DXDoppler"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool Doppler_Strategy_A {
|
||||
get {
|
||||
return ((bool)(this["Doppler_Strategy_A"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_Strategy_A"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool Doppler_Strategy_B {
|
||||
get {
|
||||
return ((bool)(this["Doppler_Strategy_B"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_Strategy_B"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool Doppler_Strategy_C {
|
||||
get {
|
||||
return ((bool)(this["Doppler_Strategy_C"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_Strategy_C"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool Doppler_Strategy_D {
|
||||
get {
|
||||
return ((bool)(this["Doppler_Strategy_D"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_Strategy_D"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public long Doppler_RXFreq {
|
||||
get {
|
||||
return ((long)(this["Doppler_RXFreq"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_RXFreq"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public long Doppler_TXFreq {
|
||||
get {
|
||||
return ((long)(this["Doppler_TXFreq"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_TXFreq"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string Track_CurrentPlane {
|
||||
get {
|
||||
return ((string)(this["Track_CurrentPlane"]));
|
||||
}
|
||||
set {
|
||||
this["Track_CurrentPlane"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("0")]
|
||||
public int Track_Offset {
|
||||
get {
|
||||
return ((int)(this["Track_Offset"]));
|
||||
}
|
||||
set {
|
||||
this["Track_Offset"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("True")]
|
||||
public bool Doppler_Strategy_None {
|
||||
get {
|
||||
return ((bool)(this["Doppler_Strategy_None"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_Strategy_None"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("NONE")]
|
||||
public global::AirScout.CAT.RIGSPLIT Doppler_DialSplit {
|
||||
get {
|
||||
return ((global::AirScout.CAT.RIGSPLIT)(this["Doppler_DialSplit"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_DialSplit"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("NONE")]
|
||||
public global::AirScout.CAT.RIGMODE Doppler_DialMode {
|
||||
get {
|
||||
return ((global::AirScout.CAT.RIGMODE)(this["Doppler_DialMode"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_DialMode"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("NONE")]
|
||||
public global::AirScout.CAT.RIGRIT Doppler_DialRit {
|
||||
get {
|
||||
return ((global::AirScout.CAT.RIGRIT)(this["Doppler_DialRit"]));
|
||||
}
|
||||
set {
|
||||
this["Doppler_DialRit"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("1000")]
|
||||
public int Track_Update {
|
||||
get {
|
||||
return ((int)(this["Track_Update"]));
|
||||
}
|
||||
set {
|
||||
this["Track_Update"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("\\ScoutBase\\RigData")]
|
||||
public string Rig_Directory {
|
||||
get {
|
||||
return ((string)(this["Rig_Directory"]));
|
||||
}
|
||||
set {
|
||||
this["Rig_Directory"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool Map_ShowLocators {
|
||||
get {
|
||||
return ((bool)(this["Map_ShowLocators"]));
|
||||
}
|
||||
set {
|
||||
this["Map_ShowLocators"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool Map_ShowDistances {
|
||||
get {
|
||||
return ((bool)(this["Map_ShowDistances"]));
|
||||
}
|
||||
set {
|
||||
this["Map_ShowDistances"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -605,6 +605,123 @@ MEaSUREs data and products are available at no charge from the LP DAAC.See https
|
|||
<Value Profile="(Default)">11</Value>
|
||||
</Setting>
|
||||
<Setting Name="StationsMap_OverlayElevation" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="Elevation_ASTER3_Copyright" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">Maidenhead locator system elvation tiles calculated by DL2ALF based on elevation data of the ASTER project:
|
||||
|
||||
The ASTER Global Digital Elevation Model (GDEM) Version 3 (ASTGTM) provides a global digital elevation model (DEM) of land areas on Earth at a spatial resolution of 1 arc second (approximately 30 meter horizontal posting at the equator).
|
||||
|
||||
The development of the ASTER GDEM data products is a collaborative effort between National Aeronautics and Space Administration (NASA) and Japan’s Ministry of Economy, Trade, and Industry (METI).
|
||||
The ASTER GDEM data products are created by the Sensor Information Laboratory Corporation (SILC) in Tokyo.
|
||||
|
||||
The ASTER GDEM Version 3 data product was created from the automated processing of the entire ASTER Level 1A archive of scenes acquired between March 1, 2000, and November 30, 2013
|
||||
Stereo correlation was used to produce over one million individual scene based ASTER DEMs, to which cloud masking was applied. All cloud screened DEMs and non-cloud screened DEMs were stacked.
|
||||
Residual bad values and outliers were removed. In areas with limited data stacking, several existing reference DEMs were used to supplement ASTER data to correct for residual anomalies.
|
||||
Selected data were averaged to create final pixel values before partitioning the data into 1° by 1° tiles with a one pixel overlap.
|
||||
To correct elevation values of water body surfaces, the ASTER Global Water Bodies Database (ASTWBD) Version 1 data product was also generated.
|
||||
|
||||
ASTER GDEM is a product of NASA and MET See Ihttps://lpdaac.usgs.gov/products/astgtmv003/
|
||||
|
||||
NASA/METI/AIST/Japan Spacesystems, and U.S./Japan ASTER Science Team (2019). ASTER Global Digital Elevation Model V003 [Data set]. NASA EOSDIS Land Processes DAAC
|
||||
</Value>
|
||||
</Setting>
|
||||
<Setting Name="Elevation_ASTER3_Enabled" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="Elevation_ASTER3_EnableCache" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="Elevation_ASTER1_Copyright" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">Maidenhead locator system elvation tiles calculated by DL2ALF based on elevation data of the ASTER project:
|
||||
|
||||
The ASTER Global Digital Elevation Model (GDEM) Version 3 (ASTGTM) provides a global digital elevation model (DEM) of land areas on Earth at a spatial resolution of 1 arc second (approximately 30 meter horizontal posting at the equator).
|
||||
|
||||
The development of the ASTER GDEM data products is a collaborative effort between National Aeronautics and Space Administration (NASA) and Japan’s Ministry of Economy, Trade, and Industry (METI).
|
||||
The ASTER GDEM data products are created by the Sensor Information Laboratory Corporation (SILC) in Tokyo.
|
||||
|
||||
The ASTER GDEM Version 3 data product was created from the automated processing of the entire ASTER Level 1A archive of scenes acquired between March 1, 2000, and November 30, 2013
|
||||
Stereo correlation was used to produce over one million individual scene based ASTER DEMs, to which cloud masking was applied. All cloud screened DEMs and non-cloud screened DEMs were stacked.
|
||||
Residual bad values and outliers were removed. In areas with limited data stacking, several existing reference DEMs were used to supplement ASTER data to correct for residual anomalies.
|
||||
Selected data were averaged to create final pixel values before partitioning the data into 1° by 1° tiles with a one pixel overlap.
|
||||
To correct elevation values of water body surfaces, the ASTER Global Water Bodies Database (ASTWBD) Version 1 data product was also generated.
|
||||
|
||||
ASTER GDEM is a product of NASA and MET See Ihttps://lpdaac.usgs.gov/products/astgtmv003/
|
||||
|
||||
NASA/METI/AIST/Japan Spacesystems, and U.S./Japan ASTER Science Team (2019). ASTER Global Digital Elevation Model V003 [Data set]. NASA EOSDIS Land Processes DAAC
|
||||
|
||||
</Value>
|
||||
</Setting>
|
||||
<Setting Name="Elevation_ASTER1_Enabled" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="Elevation_ASTER1_EnableCache" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="Elevation_ASTER3_DatabaseStatus" Type="System.Data.SQLite.DATABASESTATUS" Scope="User">
|
||||
<Value Profile="(Default)">UNDEFINED</Value>
|
||||
</Setting>
|
||||
<Setting Name="Elevation_ASTER1_DatabaseStatus" Type="System.Data.SQLite.DATABASESTATUS" Scope="User">
|
||||
<Value Profile="(Default)">UNDEFINED</Value>
|
||||
</Setting>
|
||||
<Setting Name="Map_Opacity" Type="System.Decimal" Scope="User">
|
||||
<Value Profile="(Default)">1</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_DialFreq" Type="System.Int64" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_MyDoppler" Type="System.Double" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_DXDoppler" Type="System.Double" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_Strategy_A" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_Strategy_B" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_Strategy_C" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_Strategy_D" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_RXFreq" Type="System.Int64" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_TXFreq" Type="System.Int64" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="Track_CurrentPlane" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="Track_Offset" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_Strategy_None" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">True</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_DialSplit" Type="AirScout.CAT.RIGSPLIT" Scope="User">
|
||||
<Value Profile="(Default)">NONE</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_DialMode" Type="AirScout.CAT.RIGMODE" Scope="User">
|
||||
<Value Profile="(Default)">NONE</Value>
|
||||
</Setting>
|
||||
<Setting Name="Doppler_DialRit" Type="AirScout.CAT.RIGRIT" Scope="User">
|
||||
<Value Profile="(Default)">NONE</Value>
|
||||
</Setting>
|
||||
<Setting Name="Track_Update" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">1000</Value>
|
||||
</Setting>
|
||||
<Setting Name="Rig_Directory" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">\ScoutBase\RigData</Value>
|
||||
</Setting>
|
||||
<Setting Name="Map_ShowLocators" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="Map_ShowDistances" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
</Settings>
|
||||
|
|
|
@ -0,0 +1,30 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace AirScout
|
||||
{
|
||||
// keeps tracking values
|
||||
public class TrackValues
|
||||
{
|
||||
public DateTime Timestamp = DateTime.UtcNow;
|
||||
public string Hex = "";
|
||||
|
||||
public double MyAzimuth = double.NaN;
|
||||
public double MyElevation = double.NaN;
|
||||
public double MyDistance = double.NaN;
|
||||
public double MySlantRange = double.NaN;
|
||||
public double MyDoppler = 0;
|
||||
|
||||
public double DXAzimuth = double.NaN;
|
||||
public double DXElevation = double.NaN;
|
||||
public double DXDistance = double.NaN;
|
||||
public double DXSlantRange = double.NaN;
|
||||
public double DXDoppler = 0;
|
||||
|
||||
public long RXFrequency = 0;
|
||||
public long TXFrequency = 0;
|
||||
}
|
||||
}
|
|
@ -27,8 +27,7 @@ namespace AirScout
|
|||
Remove = false;
|
||||
}
|
||||
|
||||
public WatchlistItem(string call, string loc, bool oor) : this(call, loc, oor, false, false) { }
|
||||
public WatchlistItem(string call, string loc, bool oor, bool check, bool selected)
|
||||
public WatchlistItem(string call, string loc, bool oor, bool check = false, bool selected = false)
|
||||
{
|
||||
Call = call;
|
||||
Loc = loc;
|
||||
|
|
|
@ -228,7 +228,7 @@
|
|||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(180, 25);
|
||||
this.label2.TabIndex = 15;
|
||||
this.label2.Text = "Availbale Callsigns";
|
||||
this.label2.Text = "Available Callsigns";
|
||||
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// label3
|
||||
|
|
|
@ -606,6 +606,123 @@ MEaSUREs data and products are available at no charge from the LP DAAC.See https
|
|||
<setting name="StationsMap_OverlayElevation" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="Elevation_ASTER3_Copyright" serializeAs="String">
|
||||
<value>Maidenhead locator system elvation tiles calculated by DL2ALF based on elevation data of the ASTER project:
|
||||
|
||||
The ASTER Global Digital Elevation Model (GDEM) Version 3 (ASTGTM) provides a global digital elevation model (DEM) of land areas on Earth at a spatial resolution of 1 arc second (approximately 30 meter horizontal posting at the equator).
|
||||
|
||||
The development of the ASTER GDEM data products is a collaborative effort between National Aeronautics and Space Administration (NASA) and Japan’s Ministry of Economy, Trade, and Industry (METI).
|
||||
The ASTER GDEM data products are created by the Sensor Information Laboratory Corporation (SILC) in Tokyo.
|
||||
|
||||
The ASTER GDEM Version 3 data product was created from the automated processing of the entire ASTER Level 1A archive of scenes acquired between March 1, 2000, and November 30, 2013
|
||||
Stereo correlation was used to produce over one million individual scene based ASTER DEMs, to which cloud masking was applied. All cloud screened DEMs and non-cloud screened DEMs were stacked.
|
||||
Residual bad values and outliers were removed. In areas with limited data stacking, several existing reference DEMs were used to supplement ASTER data to correct for residual anomalies.
|
||||
Selected data were averaged to create final pixel values before partitioning the data into 1° by 1° tiles with a one pixel overlap.
|
||||
To correct elevation values of water body surfaces, the ASTER Global Water Bodies Database (ASTWBD) Version 1 data product was also generated.
|
||||
|
||||
ASTER GDEM is a product of NASA and MET See Ihttps://lpdaac.usgs.gov/products/astgtmv003/
|
||||
|
||||
NASA/METI/AIST/Japan Spacesystems, and U.S./Japan ASTER Science Team (2019). ASTER Global Digital Elevation Model V003 [Data set]. NASA EOSDIS Land Processes DAAC
|
||||
</value>
|
||||
</setting>
|
||||
<setting name="Elevation_ASTER3_Enabled" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="Elevation_ASTER3_EnableCache" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="Elevation_ASTER1_Copyright" serializeAs="String">
|
||||
<value>Maidenhead locator system elvation tiles calculated by DL2ALF based on elevation data of the ASTER project:
|
||||
|
||||
The ASTER Global Digital Elevation Model (GDEM) Version 3 (ASTGTM) provides a global digital elevation model (DEM) of land areas on Earth at a spatial resolution of 1 arc second (approximately 30 meter horizontal posting at the equator).
|
||||
|
||||
The development of the ASTER GDEM data products is a collaborative effort between National Aeronautics and Space Administration (NASA) and Japan’s Ministry of Economy, Trade, and Industry (METI).
|
||||
The ASTER GDEM data products are created by the Sensor Information Laboratory Corporation (SILC) in Tokyo.
|
||||
|
||||
The ASTER GDEM Version 3 data product was created from the automated processing of the entire ASTER Level 1A archive of scenes acquired between March 1, 2000, and November 30, 2013
|
||||
Stereo correlation was used to produce over one million individual scene based ASTER DEMs, to which cloud masking was applied. All cloud screened DEMs and non-cloud screened DEMs were stacked.
|
||||
Residual bad values and outliers were removed. In areas with limited data stacking, several existing reference DEMs were used to supplement ASTER data to correct for residual anomalies.
|
||||
Selected data were averaged to create final pixel values before partitioning the data into 1° by 1° tiles with a one pixel overlap.
|
||||
To correct elevation values of water body surfaces, the ASTER Global Water Bodies Database (ASTWBD) Version 1 data product was also generated.
|
||||
|
||||
ASTER GDEM is a product of NASA and MET See Ihttps://lpdaac.usgs.gov/products/astgtmv003/
|
||||
|
||||
NASA/METI/AIST/Japan Spacesystems, and U.S./Japan ASTER Science Team (2019). ASTER Global Digital Elevation Model V003 [Data set]. NASA EOSDIS Land Processes DAAC
|
||||
|
||||
</value>
|
||||
</setting>
|
||||
<setting name="Elevation_ASTER1_Enabled" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="Elevation_ASTER1_EnableCache" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="Elevation_ASTER3_DatabaseStatus" serializeAs="String">
|
||||
<value>UNDEFINED</value>
|
||||
</setting>
|
||||
<setting name="Elevation_ASTER1_DatabaseStatus" serializeAs="String">
|
||||
<value>UNDEFINED</value>
|
||||
</setting>
|
||||
<setting name="Map_Opacity" serializeAs="String">
|
||||
<value>1</value>
|
||||
</setting>
|
||||
<setting name="Doppler_DialFreq" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="Doppler_MyDoppler" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="Doppler_DXDoppler" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="Doppler_Strategy_A" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="Doppler_Strategy_B" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="Doppler_Strategy_C" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="Doppler_Strategy_D" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="Doppler_RXFreq" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="Doppler_TXFreq" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="Track_CurrentPlane" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="Track_Offset" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="Doppler_Strategy_None" serializeAs="String">
|
||||
<value>True</value>
|
||||
</setting>
|
||||
<setting name="Doppler_DialSplit" serializeAs="String">
|
||||
<value>NONE</value>
|
||||
</setting>
|
||||
<setting name="Doppler_DialMode" serializeAs="String">
|
||||
<value>NONE</value>
|
||||
</setting>
|
||||
<setting name="Doppler_DialRit" serializeAs="String">
|
||||
<value>NONE</value>
|
||||
</setting>
|
||||
<setting name="Track_Update" serializeAs="String">
|
||||
<value>1000</value>
|
||||
</setting>
|
||||
<setting name="Rig_Directory" serializeAs="String">
|
||||
<value>\ScoutBase\RigData</value>
|
||||
</setting>
|
||||
<setting name="Map_ShowLocators" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="Map_ShowDistances" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
</AirScout.Properties.Settings>
|
||||
</userSettings>
|
||||
<startup>
|
||||
|
|
|
@ -2,5 +2,6 @@
|
|||
<packages>
|
||||
<package id="DeviceId" version="4.5.0" targetFramework="net40" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.113.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.113.7" targetFramework="net40" />
|
||||
</packages>
|
Plik diff jest za duży
Load Diff
Plik diff jest za duży
Load Diff
|
@ -1,376 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Dieser Code wurde von einem Tool generiert.
|
||||
// Laufzeitversion:4.0.30319.42000
|
||||
//
|
||||
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
|
||||
// der Code erneut generiert wird.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace AirScoutDatabaseManager.Properties {
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")]
|
||||
public sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default {
|
||||
get {
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("-15")]
|
||||
public double MinLon {
|
||||
get {
|
||||
return ((double)(this["MinLon"]));
|
||||
}
|
||||
set {
|
||||
this["MinLon"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("30")]
|
||||
public double MaxLon {
|
||||
get {
|
||||
return ((double)(this["MaxLon"]));
|
||||
}
|
||||
set {
|
||||
this["MaxLon"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("35")]
|
||||
public double MinLat {
|
||||
get {
|
||||
return ((double)(this["MinLat"]));
|
||||
}
|
||||
set {
|
||||
this["MinLat"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("60")]
|
||||
public double MaxLat {
|
||||
get {
|
||||
return ((double)(this["MaxLat"]));
|
||||
}
|
||||
set {
|
||||
this["MaxLat"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("OpenStreetMap")]
|
||||
public string Map_Provider {
|
||||
get {
|
||||
return ((string)(this["Map_Provider"]));
|
||||
}
|
||||
set {
|
||||
this["Map_Provider"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("http://www.qrz.com/db/")]
|
||||
public string QRZ_URL_Database {
|
||||
get {
|
||||
return ((string)(this["QRZ_URL_Database"]));
|
||||
}
|
||||
set {
|
||||
this["QRZ_URL_Database"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("\\Log")]
|
||||
public string Log_Directory {
|
||||
get {
|
||||
return ((string)(this["Log_Directory"]));
|
||||
}
|
||||
set {
|
||||
this["Log_Directory"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("\\Database")]
|
||||
public string Database_Directory {
|
||||
get {
|
||||
return ((string)(this["Database_Directory"]));
|
||||
}
|
||||
set {
|
||||
this["Database_Directory"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("\\Tmp")]
|
||||
public string Tmp_Directory {
|
||||
get {
|
||||
return ((string)(this["Tmp_Directory"]));
|
||||
}
|
||||
set {
|
||||
this["Tmp_Directory"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("\\Export")]
|
||||
public string Export_Directory {
|
||||
get {
|
||||
return ((string)(this["Export_Directory"]));
|
||||
}
|
||||
set {
|
||||
this["Export_Directory"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("http://www.airscout.eu/downloads/ScoutBase/1/StationData/")]
|
||||
public string Station_URL {
|
||||
get {
|
||||
return ((string)(this["Station_URL"]));
|
||||
}
|
||||
set {
|
||||
this["Station_URL"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("https://xmldata.qrz.com/xml/current/?username=dl2alf;password=271192;agent=AirSco" +
|
||||
"ut")]
|
||||
public string QRZ_URL_Login {
|
||||
get {
|
||||
return ((string)(this["QRZ_URL_Login"]));
|
||||
}
|
||||
set {
|
||||
this["QRZ_URL_Login"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("http://xmldata.qrz.com/xml/current/")]
|
||||
public string QRZ_URL_XMLData {
|
||||
get {
|
||||
return ((string)(this["QRZ_URL_XMLData"]));
|
||||
}
|
||||
set {
|
||||
this["QRZ_URL_XMLData"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("www.airscout.eu")]
|
||||
public string SFTP_URL {
|
||||
get {
|
||||
return ((string)(this["SFTP_URL"]));
|
||||
}
|
||||
set {
|
||||
this["SFTP_URL"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("u45565180-airscout")]
|
||||
public string SFTP_User {
|
||||
get {
|
||||
return ((string)(this["SFTP_User"]));
|
||||
}
|
||||
set {
|
||||
this["SFTP_User"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("airscout")]
|
||||
public string SFTP_Password {
|
||||
get {
|
||||
return ((string)(this["SFTP_Password"]));
|
||||
}
|
||||
set {
|
||||
this["SFTP_Password"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("https://www.flightradar24.com/_json/airlines.php")]
|
||||
public string Airlines_Update_URL {
|
||||
get {
|
||||
return ((string)(this["Airlines_Update_URL"]));
|
||||
}
|
||||
set {
|
||||
this["Airlines_Update_URL"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("https://www.flightradar24.com/_json/airports2.php")]
|
||||
public string Airports_Update_URL {
|
||||
get {
|
||||
return ((string)(this["Airports_Update_URL"]));
|
||||
}
|
||||
set {
|
||||
this["Airports_Update_URL"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("https://data.flightradar24.com/zones/fcgi/feed.js?faa=1&mlat=1&flarm=0&adsb=1&gnd" +
|
||||
"=0&air=1&vehicles=0&estimated=0&maxage=0&gliders=0&stats=1")]
|
||||
public string Aircrafts_BaseURL {
|
||||
get {
|
||||
return ((string)(this["Aircrafts_BaseURL"]));
|
||||
}
|
||||
set {
|
||||
this["Aircrafts_BaseURL"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("Z:\\CSharp\\AirScout\\Database\\ScoutBase\\V1")]
|
||||
public string StationDatabase_Export_LocalDir {
|
||||
get {
|
||||
return ((string)(this["StationDatabase_Export_LocalDir"]));
|
||||
}
|
||||
set {
|
||||
this["StationDatabase_Export_LocalDir"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("/wsb4556518002/downloads/ScoutBase/1/StationData")]
|
||||
public string StationDatabase_Export_RemoteDir {
|
||||
get {
|
||||
return ((string)(this["StationDatabase_Export_RemoteDir"]));
|
||||
}
|
||||
set {
|
||||
this["StationDatabase_Export_RemoteDir"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("u45565180")]
|
||||
public string StationDatabase_Export_User {
|
||||
get {
|
||||
return ((string)(this["StationDatabase_Export_User"]));
|
||||
}
|
||||
set {
|
||||
this["StationDatabase_Export_User"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string StationDatabase_Export_Password {
|
||||
get {
|
||||
return ((string)(this["StationDatabase_Export_Password"]));
|
||||
}
|
||||
set {
|
||||
this["StationDatabase_Export_Password"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("home208518495.1and1-/data.host")]
|
||||
public string StationDatabase_Export_RemoteHost {
|
||||
get {
|
||||
return ((string)(this["StationDatabase_Export_RemoteHost"]));
|
||||
}
|
||||
set {
|
||||
this["StationDatabase_Export_RemoteHost"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("Z:\\CSharp\\AirScout\\Database\\AirScout\\V1")]
|
||||
public string AircraftDatabase_Export_LocalDir {
|
||||
get {
|
||||
return ((string)(this["AircraftDatabase_Export_LocalDir"]));
|
||||
}
|
||||
set {
|
||||
this["AircraftDatabase_Export_LocalDir"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string AircraftDatabase_Export_Password {
|
||||
get {
|
||||
return ((string)(this["AircraftDatabase_Export_Password"]));
|
||||
}
|
||||
set {
|
||||
this["AircraftDatabase_Export_Password"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("/wsb4556518002/downloads/AirScout/1/AircraftData")]
|
||||
public string AircraftDatabase_Export_RemoteDir {
|
||||
get {
|
||||
return ((string)(this["AircraftDatabase_Export_RemoteDir"]));
|
||||
}
|
||||
set {
|
||||
this["AircraftDatabase_Export_RemoteDir"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("home208518495.1and1-/data.host")]
|
||||
public string AircraftDatabase_Export_RemoteHost {
|
||||
get {
|
||||
return ((string)(this["AircraftDatabase_Export_RemoteHost"]));
|
||||
}
|
||||
set {
|
||||
this["AircraftDatabase_Export_RemoteHost"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("u45565180")]
|
||||
public string AircraftDatabase_Export_User {
|
||||
get {
|
||||
return ((string)(this["AircraftDatabase_Export_User"]));
|
||||
}
|
||||
set {
|
||||
this["AircraftDatabase_Export_User"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,93 +0,0 @@
|
|||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="AirScoutDatabaseManager.Properties" GeneratedClassName="Settings">
|
||||
<Profiles />
|
||||
<Settings>
|
||||
<Setting Name="MinLon" Type="System.Double" Scope="User">
|
||||
<Value Profile="(Default)">-15</Value>
|
||||
</Setting>
|
||||
<Setting Name="MaxLon" Type="System.Double" Scope="User">
|
||||
<Value Profile="(Default)">30</Value>
|
||||
</Setting>
|
||||
<Setting Name="MinLat" Type="System.Double" Scope="User">
|
||||
<Value Profile="(Default)">35</Value>
|
||||
</Setting>
|
||||
<Setting Name="MaxLat" Type="System.Double" Scope="User">
|
||||
<Value Profile="(Default)">60</Value>
|
||||
</Setting>
|
||||
<Setting Name="Map_Provider" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">OpenStreetMap</Value>
|
||||
</Setting>
|
||||
<Setting Name="QRZ_URL_Database" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">http://www.qrz.com/db/</Value>
|
||||
</Setting>
|
||||
<Setting Name="Log_Directory" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">\Log</Value>
|
||||
</Setting>
|
||||
<Setting Name="Database_Directory" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">\Database</Value>
|
||||
</Setting>
|
||||
<Setting Name="Tmp_Directory" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">\Tmp</Value>
|
||||
</Setting>
|
||||
<Setting Name="Export_Directory" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">\Export</Value>
|
||||
</Setting>
|
||||
<Setting Name="Station_URL" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">http://www.airscout.eu/downloads/ScoutBase/1/StationData/</Value>
|
||||
</Setting>
|
||||
<Setting Name="QRZ_URL_Login" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">https://xmldata.qrz.com/xml/current/?username=dl2alf;password=271192;agent=AirScout</Value>
|
||||
</Setting>
|
||||
<Setting Name="QRZ_URL_XMLData" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">http://xmldata.qrz.com/xml/current/</Value>
|
||||
</Setting>
|
||||
<Setting Name="SFTP_URL" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">www.airscout.eu</Value>
|
||||
</Setting>
|
||||
<Setting Name="SFTP_User" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">u45565180-airscout</Value>
|
||||
</Setting>
|
||||
<Setting Name="SFTP_Password" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">airscout</Value>
|
||||
</Setting>
|
||||
<Setting Name="Airlines_Update_URL" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">https://www.flightradar24.com/_json/airlines.php</Value>
|
||||
</Setting>
|
||||
<Setting Name="Airports_Update_URL" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">https://www.flightradar24.com/_json/airports2.php</Value>
|
||||
</Setting>
|
||||
<Setting Name="Aircrafts_BaseURL" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">https://data.flightradar24.com/zones/fcgi/feed.js?faa=1&mlat=1&flarm=0&adsb=1&gnd=0&air=1&vehicles=0&estimated=0&maxage=0&gliders=0&stats=1</Value>
|
||||
</Setting>
|
||||
<Setting Name="StationDatabase_Export_LocalDir" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">Z:\CSharp\AirScout\Database\ScoutBase\V1</Value>
|
||||
</Setting>
|
||||
<Setting Name="StationDatabase_Export_RemoteDir" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">/wsb4556518002/downloads/ScoutBase/1/StationData</Value>
|
||||
</Setting>
|
||||
<Setting Name="StationDatabase_Export_User" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">u45565180</Value>
|
||||
</Setting>
|
||||
<Setting Name="StationDatabase_Export_Password" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="StationDatabase_Export_RemoteHost" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">home208518495.1and1-/data.host</Value>
|
||||
</Setting>
|
||||
<Setting Name="AircraftDatabase_Export_LocalDir" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">Z:\CSharp\AirScout\Database\AirScout\V1</Value>
|
||||
</Setting>
|
||||
<Setting Name="AircraftDatabase_Export_Password" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="AircraftDatabase_Export_RemoteDir" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">/wsb4556518002/downloads/AirScout/1/AircraftData</Value>
|
||||
</Setting>
|
||||
<Setting Name="AircraftDatabase_Export_RemoteHost" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">home208518495.1and1-/data.host</Value>
|
||||
</Setting>
|
||||
<Setting Name="AircraftDatabase_Export_User" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">u45565180</Value>
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
|
@ -1,132 +0,0 @@
|
|||
|
||||
using System;
|
||||
using System.ComponentModel;
|
||||
using System.Windows.Forms;
|
||||
using System.Net;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
using System.Diagnostics;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Globalization;
|
||||
using System.Drawing;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using ScoutBase.Core;
|
||||
using ScoutBase.Elevation;
|
||||
using ScoutBase.Stations;
|
||||
|
||||
namespace AirScoutDatabaseManager
|
||||
{
|
||||
public partial class MainDlg : Form
|
||||
{
|
||||
|
||||
#region StationDatabaseUpdater
|
||||
|
||||
private bool ReadLocationsFromURL(string url, string filename)
|
||||
{
|
||||
try
|
||||
{
|
||||
AutoDecompressionWebClient cl = new AutoDecompressionWebClient();
|
||||
DOWNLOADFILESTATUS status = cl.DownloadFileIfNewer(url, filename, true, true);
|
||||
if ((status & DOWNLOADFILESTATUS.ERROR) > 0)
|
||||
{
|
||||
Log.WriteMessage("Error while downloading and extracting " + filename, LogLevel.Error);
|
||||
return false;
|
||||
}
|
||||
else if (((status & DOWNLOADFILESTATUS.NEWER) > 0) || ((status & DOWNLOADFILESTATUS.NOTNEWER) > 0))
|
||||
{
|
||||
string json = "";
|
||||
using (StreamReader sr = new StreamReader(filename))
|
||||
json = sr.ReadToEnd();
|
||||
List<LocationDesignator> lds = StationData.Database.LocationFromJSON(json);
|
||||
// chek for empty database
|
||||
if (StationData.Database.LocationCount() == 0)
|
||||
{
|
||||
// do bulk insert
|
||||
StationData.Database.LocationBulkInsert(lds);
|
||||
}
|
||||
else
|
||||
{
|
||||
// do update on single elements
|
||||
foreach(LocationDesignator ld in lds)
|
||||
{
|
||||
StationData.Database.LocationInsertOrUpdateIfNewer(ld);
|
||||
// return if cancellation is pending
|
||||
if (bw_DatabaseUpdater.CancellationPending)
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// Error loading database
|
||||
Log.WriteMessage("[" + url + "]: " + ex.ToString(), LogLevel.Error);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private void bw_DatabaseUpdater_DoWork(object sender, DoWorkEventArgs e)
|
||||
{
|
||||
Log.WriteMessage("Started.");
|
||||
// name the thread for debugging
|
||||
if (String.IsNullOrEmpty(Thread.CurrentThread.Name))
|
||||
Thread.CurrentThread.Name = nameof(bw_DatabaseUpdater);
|
||||
bw_DatabaseUpdater.ReportProgress(0, "Updating database...");
|
||||
// get temp directory
|
||||
string TmpDirectory = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), Application.CompanyName, Application.ProductName, "Tmp").TrimEnd(Path.DirectorySeparatorChar);
|
||||
if (!Directory.Exists(TmpDirectory))
|
||||
Directory.CreateDirectory(TmpDirectory);
|
||||
int errors = 0;
|
||||
try
|
||||
{
|
||||
Stopwatch st = new Stopwatch();
|
||||
st.Start();
|
||||
// update callsign database
|
||||
bw_DatabaseUpdater.ReportProgress(0, "Updating callsigns from web database...");
|
||||
if (!ReadLocationsFromURL(Properties.Settings.Default.Station_URL + "locations.json", Path.Combine(TmpDirectory, "locations.json")))
|
||||
errors++;
|
||||
st.Stop();
|
||||
Log.WriteMessage("Database update completed in " + st.Elapsed.ToString(@"hh\:mm\:ss") + ", errors: " + errors.ToString());
|
||||
|
||||
// sleep once to get all messages to main thread
|
||||
Thread.Sleep(1000);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.WriteMessage(ex.ToString(), LogLevel.Error);
|
||||
}
|
||||
bw_DatabaseUpdater.ReportProgress(0, "Updating callsigns finished.");
|
||||
Log.WriteMessage("Finished.");
|
||||
}
|
||||
|
||||
private void bw_DatabaseUpdater_ProgressChanged(object sender, ProgressChangedEventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (e.ProgressPercentage == 0)
|
||||
{
|
||||
// status message received
|
||||
string msg = (string)e.UserState;
|
||||
Say(msg);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.WriteMessage(ex.ToString(), LogLevel.Error);
|
||||
}
|
||||
}
|
||||
|
||||
private void bw_DatabaseUpdater_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
|
||||
{
|
||||
tc_Main.Enabled = true;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
|
@ -1,107 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<section name="AirScoutDatabaseManager.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<userSettings>
|
||||
<AirScoutDatabaseManager.Properties.Settings>
|
||||
<setting name="MinLon" serializeAs="String">
|
||||
<value>-15</value>
|
||||
</setting>
|
||||
<setting name="MaxLon" serializeAs="String">
|
||||
<value>30</value>
|
||||
</setting>
|
||||
<setting name="MinLat" serializeAs="String">
|
||||
<value>35</value>
|
||||
</setting>
|
||||
<setting name="MaxLat" serializeAs="String">
|
||||
<value>60</value>
|
||||
</setting>
|
||||
<setting name="Map_Provider" serializeAs="String">
|
||||
<value>OpenStreetMap</value>
|
||||
</setting>
|
||||
<setting name="QRZ_URL_Database" serializeAs="String">
|
||||
<value>http://www.qrz.com/db/</value>
|
||||
</setting>
|
||||
<setting name="Log_Directory" serializeAs="String">
|
||||
<value>\Log</value>
|
||||
</setting>
|
||||
<setting name="Database_Directory" serializeAs="String">
|
||||
<value>\Database</value>
|
||||
</setting>
|
||||
<setting name="Tmp_Directory" serializeAs="String">
|
||||
<value>\Tmp</value>
|
||||
</setting>
|
||||
<setting name="Export_Directory" serializeAs="String">
|
||||
<value>\Export</value>
|
||||
</setting>
|
||||
<setting name="Station_URL" serializeAs="String">
|
||||
<value>http://www.airscout.eu/downloads/ScoutBase/1/StationData/</value>
|
||||
</setting>
|
||||
<setting name="QRZ_URL_Login" serializeAs="String">
|
||||
<value>https://xmldata.qrz.com/xml/current/?username=dl2alf;password=271192;agent=AirScout</value>
|
||||
</setting>
|
||||
<setting name="QRZ_URL_XMLData" serializeAs="String">
|
||||
<value>http://xmldata.qrz.com/xml/current/</value>
|
||||
</setting>
|
||||
<setting name="SFTP_URL" serializeAs="String">
|
||||
<value>www.airscout.eu</value>
|
||||
</setting>
|
||||
<setting name="SFTP_User" serializeAs="String">
|
||||
<value>u45565180-airscout</value>
|
||||
</setting>
|
||||
<setting name="SFTP_Password" serializeAs="String">
|
||||
<value>airscout</value>
|
||||
</setting>
|
||||
<setting name="Airlines_Update_URL" serializeAs="String">
|
||||
<value>https://www.flightradar24.com/_json/airlines.php</value>
|
||||
</setting>
|
||||
<setting name="Airports_Update_URL" serializeAs="String">
|
||||
<value>https://www.flightradar24.com/_json/airports2.php</value>
|
||||
</setting>
|
||||
<setting name="Aircrafts_BaseURL" serializeAs="String">
|
||||
<value>https://data.flightradar24.com/zones/fcgi/feed.js?faa=1&mlat=1&flarm=0&adsb=1&gnd=0&air=1&vehicles=0&estimated=0&maxage=0&gliders=0&stats=1</value>
|
||||
</setting>
|
||||
<setting name="StationDatabase_Export_LocalDir" serializeAs="String">
|
||||
<value>Z:\CSharp\AirScout\Database\ScoutBase\V1</value>
|
||||
</setting>
|
||||
<setting name="StationDatabase_Export_RemoteDir" serializeAs="String">
|
||||
<value>/wsb4556518002/downloads/ScoutBase/1/StationData</value>
|
||||
</setting>
|
||||
<setting name="StationDatabase_Export_User" serializeAs="String">
|
||||
<value>u45565180</value>
|
||||
</setting>
|
||||
<setting name="StationDatabase_Export_Password" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="StationDatabase_Export_RemoteHost" serializeAs="String">
|
||||
<value>home208518495.1and1-/data.host</value>
|
||||
</setting>
|
||||
<setting name="AircraftDatabase_Export_LocalDir" serializeAs="String">
|
||||
<value>Z:\CSharp\AirScout\Database\AirScout\V1</value>
|
||||
</setting>
|
||||
<setting name="AircraftDatabase_Export_Password" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="AircraftDatabase_Export_RemoteDir" serializeAs="String">
|
||||
<value>/wsb4556518002/downloads/AirScout/1/AircraftData</value>
|
||||
</setting>
|
||||
<setting name="AircraftDatabase_Export_RemoteHost" serializeAs="String">
|
||||
<value>home208518495.1and1-/data.host</value>
|
||||
</setting>
|
||||
<setting name="AircraftDatabase_Export_User" serializeAs="String">
|
||||
<value>u45565180</value>
|
||||
</setting>
|
||||
</AirScoutDatabaseManager.Properties.Settings>
|
||||
</userSettings>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Data.SQLite" publicKeyToken="db937bc2d44ff139" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-1.0.108.0" newVersion="1.0.108.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
|
@ -1,7 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="HtmlAgilityPack" version="1.8.4" targetFramework="net40-client" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40-client" />
|
||||
<package id="SSH.NET" version="2016.1.0" targetFramework="net40-client" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40-client" />
|
||||
</packages>
|
|
@ -69,8 +69,8 @@
|
|||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.112.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
|
@ -158,12 +158,12 @@
|
|||
</Content>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40-client" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40-client" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.113.3" targetFramework="net40-client" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.113.7" targetFramework="net40-client" />
|
||||
</packages>
|
|
@ -39,8 +39,8 @@
|
|||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.112.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
|
@ -62,9 +62,12 @@
|
|||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Settings.cs" />
|
||||
<EmbeddedResource Include="MapViewDlg.resx">
|
||||
<DependentUpon>MapViewDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<Compile Include="SettingsDlg.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="SettingsDlg.Designer.cs">
|
||||
<DependentUpon>SettingsDlg.cs</DependentUpon>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
|
@ -74,10 +77,14 @@
|
|||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="SettingsDlg.resx">
|
||||
<DependentUpon>SettingsDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<None Include="app.config" />
|
||||
<None Include="LICENSE">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<EmbeddedResource Include="MapViewDlg.resx" />
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
|
@ -151,12 +158,12 @@
|
|||
</Content>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -29,16 +29,26 @@
|
|||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
ScoutBase.Core.LatLon.GPoint gPoint5 = new ScoutBase.Core.LatLon.GPoint();
|
||||
ScoutBase.Core.LatLon.GPoint gPoint6 = new ScoutBase.Core.LatLon.GPoint();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MapViewDlg));
|
||||
ScoutBase.Core.LatLon.GPoint gPoint1 = new ScoutBase.Core.LatLon.GPoint();
|
||||
ScoutBase.Core.LatLon.GPoint gPoint2 = new ScoutBase.Core.LatLon.GPoint();
|
||||
this.mnu_Main = new System.Windows.Forms.MenuStrip();
|
||||
this.tsi_Exit = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.mnu_Settings = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.tsi_Info = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ss_Main = new System.Windows.Forms.StatusStrip();
|
||||
this.tsl_Status = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.tsl_ConnectionStatus = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.gb_Info = new System.Windows.Forms.GroupBox();
|
||||
this.gb_Map_Zoom = new System.Windows.Forms.GroupBox();
|
||||
this.pa_Map_Zoom = new System.Windows.Forms.Panel();
|
||||
this.cb_Map_AutoCenter = new System.Windows.Forms.CheckBox();
|
||||
this.tb_Map_Zoom = new System.Windows.Forms.TextBox();
|
||||
this.btn_Map_Zoom_Out = new System.Windows.Forms.Button();
|
||||
this.btn_Map_Zoom_In = new System.Windows.Forms.Button();
|
||||
this.gb_Control = new System.Windows.Forms.GroupBox();
|
||||
this.btn_Map_PlayPause = new System.Windows.Forms.Button();
|
||||
this.il_Main = new System.Windows.Forms.ImageList(this.components);
|
||||
this.cb_DXLoc = new ScoutBase.Core.LocatorComboBox();
|
||||
this.cb_MyLoc = new ScoutBase.Core.LocatorComboBox();
|
||||
this.label8 = new System.Windows.Forms.Label();
|
||||
|
@ -67,34 +77,24 @@
|
|||
this.il_Airports = new System.Windows.Forms.ImageList(this.components);
|
||||
this.il_Planes_M = new System.Windows.Forms.ImageList(this.components);
|
||||
this.ti_ShowLegends = new System.Windows.Forms.Timer(this.components);
|
||||
this.btn_Map_PlayPause = new System.Windows.Forms.Button();
|
||||
this.gb_Control = new System.Windows.Forms.GroupBox();
|
||||
this.il_Main = new System.Windows.Forms.ImageList(this.components);
|
||||
this.gb_Map_Zoom = new System.Windows.Forms.GroupBox();
|
||||
this.pa_Map_Zoom = new System.Windows.Forms.Panel();
|
||||
this.tb_Map_Zoom = new System.Windows.Forms.TextBox();
|
||||
this.btn_Map_Zoom_Out = new System.Windows.Forms.Button();
|
||||
this.btn_Map_Zoom_In = new System.Windows.Forms.Button();
|
||||
this.tsl_ConnectionStatus = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.cb_Map_AutoCenter = new System.Windows.Forms.CheckBox();
|
||||
this.mnu_Main.SuspendLayout();
|
||||
this.ss_Main.SuspendLayout();
|
||||
this.gb_Info.SuspendLayout();
|
||||
this.gb_Map_Zoom.SuspendLayout();
|
||||
this.pa_Map_Zoom.SuspendLayout();
|
||||
this.gb_Control.SuspendLayout();
|
||||
this.gb_Map.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.spc_Main)).BeginInit();
|
||||
this.spc_Main.Panel1.SuspendLayout();
|
||||
this.spc_Main.Panel2.SuspendLayout();
|
||||
this.spc_Main.SuspendLayout();
|
||||
this.gb_Control.SuspendLayout();
|
||||
this.gb_Map_Zoom.SuspendLayout();
|
||||
this.pa_Map_Zoom.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// mnu_Main
|
||||
//
|
||||
this.mnu_Main.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.tsi_Exit,
|
||||
this.settingsToolStripMenuItem,
|
||||
this.mnu_Settings,
|
||||
this.tsi_Info});
|
||||
this.mnu_Main.Location = new System.Drawing.Point(0, 0);
|
||||
this.mnu_Main.Name = "mnu_Main";
|
||||
|
@ -105,15 +105,16 @@
|
|||
// tsi_Exit
|
||||
//
|
||||
this.tsi_Exit.Name = "tsi_Exit";
|
||||
this.tsi_Exit.Size = new System.Drawing.Size(37, 20);
|
||||
this.tsi_Exit.Size = new System.Drawing.Size(38, 20);
|
||||
this.tsi_Exit.Text = "E&xit";
|
||||
this.tsi_Exit.Click += new System.EventHandler(this.tsi_Exit_Click);
|
||||
//
|
||||
// settingsToolStripMenuItem
|
||||
// mnu_Settings
|
||||
//
|
||||
this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem";
|
||||
this.settingsToolStripMenuItem.Size = new System.Drawing.Size(61, 20);
|
||||
this.settingsToolStripMenuItem.Text = "&Settings";
|
||||
this.mnu_Settings.Name = "mnu_Settings";
|
||||
this.mnu_Settings.Size = new System.Drawing.Size(61, 20);
|
||||
this.mnu_Settings.Text = "&Settings";
|
||||
this.mnu_Settings.Click += new System.EventHandler(this.mnu_Settings_Click);
|
||||
//
|
||||
// tsi_Info
|
||||
//
|
||||
|
@ -141,6 +142,12 @@
|
|||
this.tsl_Status.Text = "Status";
|
||||
this.tsl_Status.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// tsl_ConnectionStatus
|
||||
//
|
||||
this.tsl_ConnectionStatus.Name = "tsl_ConnectionStatus";
|
||||
this.tsl_ConnectionStatus.Size = new System.Drawing.Size(39, 17);
|
||||
this.tsl_ConnectionStatus.Text = "Status";
|
||||
//
|
||||
// gb_Info
|
||||
//
|
||||
this.gb_Info.Controls.Add(this.gb_Map_Zoom);
|
||||
|
@ -170,6 +177,105 @@
|
|||
this.gb_Info.TabStop = false;
|
||||
this.gb_Info.Text = "Info";
|
||||
//
|
||||
// gb_Map_Zoom
|
||||
//
|
||||
this.gb_Map_Zoom.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
|
||||
this.gb_Map_Zoom.Controls.Add(this.pa_Map_Zoom);
|
||||
this.gb_Map_Zoom.Dock = System.Windows.Forms.DockStyle.Bottom;
|
||||
this.gb_Map_Zoom.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.gb_Map_Zoom.Location = new System.Drawing.Point(3, 357);
|
||||
this.gb_Map_Zoom.Name = "gb_Map_Zoom";
|
||||
this.gb_Map_Zoom.Size = new System.Drawing.Size(139, 79);
|
||||
this.gb_Map_Zoom.TabIndex = 66;
|
||||
this.gb_Map_Zoom.TabStop = false;
|
||||
this.gb_Map_Zoom.Text = "Map Zoom";
|
||||
//
|
||||
// pa_Map_Zoom
|
||||
//
|
||||
this.pa_Map_Zoom.Controls.Add(this.cb_Map_AutoCenter);
|
||||
this.pa_Map_Zoom.Controls.Add(this.tb_Map_Zoom);
|
||||
this.pa_Map_Zoom.Controls.Add(this.btn_Map_Zoom_Out);
|
||||
this.pa_Map_Zoom.Controls.Add(this.btn_Map_Zoom_In);
|
||||
this.pa_Map_Zoom.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.pa_Map_Zoom.Location = new System.Drawing.Point(3, 16);
|
||||
this.pa_Map_Zoom.Name = "pa_Map_Zoom";
|
||||
this.pa_Map_Zoom.Size = new System.Drawing.Size(133, 60);
|
||||
this.pa_Map_Zoom.TabIndex = 65;
|
||||
//
|
||||
// cb_Map_AutoCenter
|
||||
//
|
||||
this.cb_Map_AutoCenter.AutoSize = true;
|
||||
this.cb_Map_AutoCenter.Checked = global::AirScoutViewClient.Properties.Settings.Default.Map_AutoCenter;
|
||||
this.cb_Map_AutoCenter.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.cb_Map_AutoCenter.DataBindings.Add(new System.Windows.Forms.Binding("Checked", global::AirScoutViewClient.Properties.Settings.Default, "Map_AutoCenter", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.cb_Map_AutoCenter.Location = new System.Drawing.Point(12, 37);
|
||||
this.cb_Map_AutoCenter.Name = "cb_Map_AutoCenter";
|
||||
this.cb_Map_AutoCenter.Size = new System.Drawing.Size(93, 17);
|
||||
this.cb_Map_AutoCenter.TabIndex = 24;
|
||||
this.cb_Map_AutoCenter.Text = "Auto Center";
|
||||
this.cb_Map_AutoCenter.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// tb_Map_Zoom
|
||||
//
|
||||
this.tb_Map_Zoom.BackColor = System.Drawing.Color.FloralWhite;
|
||||
this.tb_Map_Zoom.Font = new System.Drawing.Font("Courier New", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.tb_Map_Zoom.Location = new System.Drawing.Point(45, 9);
|
||||
this.tb_Map_Zoom.Name = "tb_Map_Zoom";
|
||||
this.tb_Map_Zoom.Size = new System.Drawing.Size(41, 22);
|
||||
this.tb_Map_Zoom.TabIndex = 23;
|
||||
//
|
||||
// btn_Map_Zoom_Out
|
||||
//
|
||||
this.btn_Map_Zoom_Out.Location = new System.Drawing.Point(92, 8);
|
||||
this.btn_Map_Zoom_Out.Name = "btn_Map_Zoom_Out";
|
||||
this.btn_Map_Zoom_Out.Size = new System.Drawing.Size(30, 23);
|
||||
this.btn_Map_Zoom_Out.TabIndex = 22;
|
||||
this.btn_Map_Zoom_Out.Text = "-";
|
||||
this.btn_Map_Zoom_Out.UseVisualStyleBackColor = true;
|
||||
this.btn_Map_Zoom_Out.Click += new System.EventHandler(this.btn_Map_Zoom_Out_Click);
|
||||
//
|
||||
// btn_Map_Zoom_In
|
||||
//
|
||||
this.btn_Map_Zoom_In.Location = new System.Drawing.Point(9, 8);
|
||||
this.btn_Map_Zoom_In.Name = "btn_Map_Zoom_In";
|
||||
this.btn_Map_Zoom_In.Size = new System.Drawing.Size(30, 23);
|
||||
this.btn_Map_Zoom_In.TabIndex = 21;
|
||||
this.btn_Map_Zoom_In.Text = "+";
|
||||
this.btn_Map_Zoom_In.UseVisualStyleBackColor = true;
|
||||
this.btn_Map_Zoom_In.Click += new System.EventHandler(this.btn_Map_Zoom_In_Click);
|
||||
//
|
||||
// gb_Control
|
||||
//
|
||||
this.gb_Control.Controls.Add(this.btn_Map_PlayPause);
|
||||
this.gb_Control.Dock = System.Windows.Forms.DockStyle.Bottom;
|
||||
this.gb_Control.Location = new System.Drawing.Point(3, 436);
|
||||
this.gb_Control.Name = "gb_Control";
|
||||
this.gb_Control.Size = new System.Drawing.Size(139, 55);
|
||||
this.gb_Control.TabIndex = 64;
|
||||
this.gb_Control.TabStop = false;
|
||||
//
|
||||
// btn_Map_PlayPause
|
||||
//
|
||||
this.btn_Map_PlayPause.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
this.btn_Map_PlayPause.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.btn_Map_PlayPause.ImageIndex = 1;
|
||||
this.btn_Map_PlayPause.ImageList = this.il_Main;
|
||||
this.btn_Map_PlayPause.Location = new System.Drawing.Point(14, 17);
|
||||
this.btn_Map_PlayPause.Name = "btn_Map_PlayPause";
|
||||
this.btn_Map_PlayPause.Size = new System.Drawing.Size(114, 29);
|
||||
this.btn_Map_PlayPause.TabIndex = 64;
|
||||
this.btn_Map_PlayPause.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
this.btn_Map_PlayPause.UseVisualStyleBackColor = true;
|
||||
this.btn_Map_PlayPause.Click += new System.EventHandler(this.btn_Map_PlayPause_Click);
|
||||
//
|
||||
// il_Main
|
||||
//
|
||||
this.il_Main.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("il_Main.ImageStream")));
|
||||
this.il_Main.TransparentColor = System.Drawing.Color.Transparent;
|
||||
this.il_Main.Images.SetKeyName(0, "PauseHS.png");
|
||||
this.il_Main.Images.SetKeyName(1, "PlayHS.png");
|
||||
this.il_Main.Images.SetKeyName(2, "RecordHS.png");
|
||||
//
|
||||
// cb_DXLoc
|
||||
//
|
||||
this.cb_DXLoc.AutoLength = false;
|
||||
|
@ -180,7 +286,7 @@
|
|||
this.cb_DXLoc.Font = new System.Drawing.Font("Courier New", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.cb_DXLoc.ForeColor = System.Drawing.SystemColors.WindowText;
|
||||
this.cb_DXLoc.FormattingEnabled = true;
|
||||
this.cb_DXLoc.GeoLocation = gPoint5;
|
||||
this.cb_DXLoc.GeoLocation = gPoint1;
|
||||
this.cb_DXLoc.Location = new System.Drawing.Point(6, 243);
|
||||
this.cb_DXLoc.Name = "cb_DXLoc";
|
||||
this.cb_DXLoc.Precision = 3;
|
||||
|
@ -200,7 +306,7 @@
|
|||
this.cb_MyLoc.Font = new System.Drawing.Font("Courier New", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.cb_MyLoc.ForeColor = System.Drawing.SystemColors.WindowText;
|
||||
this.cb_MyLoc.FormattingEnabled = true;
|
||||
this.cb_MyLoc.GeoLocation = gPoint6;
|
||||
this.cb_MyLoc.GeoLocation = gPoint2;
|
||||
this.cb_MyLoc.Location = new System.Drawing.Point(6, 161);
|
||||
this.cb_MyLoc.Name = "cb_MyLoc";
|
||||
this.cb_MyLoc.Precision = 3;
|
||||
|
@ -411,6 +517,7 @@
|
|||
this.gm_Main.MouseWheelZoomType = GMap.NET.MouseWheelZoomType.MousePositionAndCenter;
|
||||
this.gm_Main.Name = "gm_Main";
|
||||
this.gm_Main.NegativeMode = false;
|
||||
this.gm_Main.Opacity = 1D;
|
||||
this.gm_Main.PolygonsEnabled = true;
|
||||
this.gm_Main.RetryLoadTile = 0;
|
||||
this.gm_Main.RoutesEnabled = true;
|
||||
|
@ -481,111 +588,6 @@
|
|||
this.ti_ShowLegends.Interval = 5000;
|
||||
this.ti_ShowLegends.Tick += new System.EventHandler(this.ti_ShowLegends_Tick);
|
||||
//
|
||||
// btn_Map_PlayPause
|
||||
//
|
||||
this.btn_Map_PlayPause.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||
this.btn_Map_PlayPause.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.btn_Map_PlayPause.ImageIndex = 1;
|
||||
this.btn_Map_PlayPause.ImageList = this.il_Main;
|
||||
this.btn_Map_PlayPause.Location = new System.Drawing.Point(14, 17);
|
||||
this.btn_Map_PlayPause.Name = "btn_Map_PlayPause";
|
||||
this.btn_Map_PlayPause.Size = new System.Drawing.Size(114, 29);
|
||||
this.btn_Map_PlayPause.TabIndex = 64;
|
||||
this.btn_Map_PlayPause.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
this.btn_Map_PlayPause.UseVisualStyleBackColor = true;
|
||||
this.btn_Map_PlayPause.Click += new System.EventHandler(this.btn_Map_PlayPause_Click);
|
||||
//
|
||||
// gb_Control
|
||||
//
|
||||
this.gb_Control.Controls.Add(this.btn_Map_PlayPause);
|
||||
this.gb_Control.Dock = System.Windows.Forms.DockStyle.Bottom;
|
||||
this.gb_Control.Location = new System.Drawing.Point(3, 436);
|
||||
this.gb_Control.Name = "gb_Control";
|
||||
this.gb_Control.Size = new System.Drawing.Size(139, 55);
|
||||
this.gb_Control.TabIndex = 64;
|
||||
this.gb_Control.TabStop = false;
|
||||
//
|
||||
// il_Main
|
||||
//
|
||||
this.il_Main.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("il_Main.ImageStream")));
|
||||
this.il_Main.TransparentColor = System.Drawing.Color.Transparent;
|
||||
this.il_Main.Images.SetKeyName(0, "PauseHS.png");
|
||||
this.il_Main.Images.SetKeyName(1, "PlayHS.png");
|
||||
this.il_Main.Images.SetKeyName(2, "RecordHS.png");
|
||||
//
|
||||
// gb_Map_Zoom
|
||||
//
|
||||
this.gb_Map_Zoom.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
|
||||
this.gb_Map_Zoom.Controls.Add(this.pa_Map_Zoom);
|
||||
this.gb_Map_Zoom.Dock = System.Windows.Forms.DockStyle.Bottom;
|
||||
this.gb_Map_Zoom.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.gb_Map_Zoom.Location = new System.Drawing.Point(3, 357);
|
||||
this.gb_Map_Zoom.Name = "gb_Map_Zoom";
|
||||
this.gb_Map_Zoom.Size = new System.Drawing.Size(139, 79);
|
||||
this.gb_Map_Zoom.TabIndex = 66;
|
||||
this.gb_Map_Zoom.TabStop = false;
|
||||
this.gb_Map_Zoom.Text = "Map Zoom";
|
||||
//
|
||||
// pa_Map_Zoom
|
||||
//
|
||||
this.pa_Map_Zoom.Controls.Add(this.cb_Map_AutoCenter);
|
||||
this.pa_Map_Zoom.Controls.Add(this.tb_Map_Zoom);
|
||||
this.pa_Map_Zoom.Controls.Add(this.btn_Map_Zoom_Out);
|
||||
this.pa_Map_Zoom.Controls.Add(this.btn_Map_Zoom_In);
|
||||
this.pa_Map_Zoom.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.pa_Map_Zoom.Location = new System.Drawing.Point(3, 16);
|
||||
this.pa_Map_Zoom.Name = "pa_Map_Zoom";
|
||||
this.pa_Map_Zoom.Size = new System.Drawing.Size(133, 60);
|
||||
this.pa_Map_Zoom.TabIndex = 65;
|
||||
//
|
||||
// tb_Map_Zoom
|
||||
//
|
||||
this.tb_Map_Zoom.BackColor = System.Drawing.Color.FloralWhite;
|
||||
this.tb_Map_Zoom.Font = new System.Drawing.Font("Courier New", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.tb_Map_Zoom.Location = new System.Drawing.Point(45, 9);
|
||||
this.tb_Map_Zoom.Name = "tb_Map_Zoom";
|
||||
this.tb_Map_Zoom.Size = new System.Drawing.Size(41, 22);
|
||||
this.tb_Map_Zoom.TabIndex = 23;
|
||||
//
|
||||
// btn_Map_Zoom_Out
|
||||
//
|
||||
this.btn_Map_Zoom_Out.Location = new System.Drawing.Point(92, 8);
|
||||
this.btn_Map_Zoom_Out.Name = "btn_Map_Zoom_Out";
|
||||
this.btn_Map_Zoom_Out.Size = new System.Drawing.Size(30, 23);
|
||||
this.btn_Map_Zoom_Out.TabIndex = 22;
|
||||
this.btn_Map_Zoom_Out.Text = "-";
|
||||
this.btn_Map_Zoom_Out.UseVisualStyleBackColor = true;
|
||||
this.btn_Map_Zoom_Out.Click += new System.EventHandler(this.btn_Map_Zoom_Out_Click);
|
||||
//
|
||||
// btn_Map_Zoom_In
|
||||
//
|
||||
this.btn_Map_Zoom_In.Location = new System.Drawing.Point(9, 8);
|
||||
this.btn_Map_Zoom_In.Name = "btn_Map_Zoom_In";
|
||||
this.btn_Map_Zoom_In.Size = new System.Drawing.Size(30, 23);
|
||||
this.btn_Map_Zoom_In.TabIndex = 21;
|
||||
this.btn_Map_Zoom_In.Text = "+";
|
||||
this.btn_Map_Zoom_In.UseVisualStyleBackColor = true;
|
||||
this.btn_Map_Zoom_In.Click += new System.EventHandler(this.btn_Map_Zoom_In_Click);
|
||||
//
|
||||
// tsl_ConnectionStatus
|
||||
//
|
||||
this.tsl_ConnectionStatus.Name = "tsl_ConnectionStatus";
|
||||
this.tsl_ConnectionStatus.Size = new System.Drawing.Size(39, 17);
|
||||
this.tsl_ConnectionStatus.Text = "Status";
|
||||
//
|
||||
// cb_Map_AutoCenter
|
||||
//
|
||||
this.cb_Map_AutoCenter.AutoSize = true;
|
||||
this.cb_Map_AutoCenter.Checked = global::AirScoutViewClient.Properties.Settings.Default.Map_AutoCenter;
|
||||
this.cb_Map_AutoCenter.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.cb_Map_AutoCenter.DataBindings.Add(new System.Windows.Forms.Binding("Checked", global::AirScoutViewClient.Properties.Settings.Default, "Map_AutoCenter", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.cb_Map_AutoCenter.Location = new System.Drawing.Point(12, 37);
|
||||
this.cb_Map_AutoCenter.Name = "cb_Map_AutoCenter";
|
||||
this.cb_Map_AutoCenter.Size = new System.Drawing.Size(93, 17);
|
||||
this.cb_Map_AutoCenter.TabIndex = 24;
|
||||
this.cb_Map_AutoCenter.Text = "Auto Center";
|
||||
this.cb_Map_AutoCenter.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// MapViewDlg
|
||||
//
|
||||
this.AcceptButton = this.btn_Map_PlayPause;
|
||||
|
@ -608,15 +610,15 @@
|
|||
this.ss_Main.PerformLayout();
|
||||
this.gb_Info.ResumeLayout(false);
|
||||
this.gb_Info.PerformLayout();
|
||||
this.gb_Map_Zoom.ResumeLayout(false);
|
||||
this.pa_Map_Zoom.ResumeLayout(false);
|
||||
this.pa_Map_Zoom.PerformLayout();
|
||||
this.gb_Control.ResumeLayout(false);
|
||||
this.gb_Map.ResumeLayout(false);
|
||||
this.spc_Main.Panel1.ResumeLayout(false);
|
||||
this.spc_Main.Panel2.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.spc_Main)).EndInit();
|
||||
this.spc_Main.ResumeLayout(false);
|
||||
this.gb_Control.ResumeLayout(false);
|
||||
this.gb_Map_Zoom.ResumeLayout(false);
|
||||
this.pa_Map_Zoom.ResumeLayout(false);
|
||||
this.pa_Map_Zoom.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
|
@ -629,7 +631,7 @@
|
|||
private System.Windows.Forms.ToolStripMenuItem tsi_Info;
|
||||
private System.Windows.Forms.StatusStrip ss_Main;
|
||||
private System.Windows.Forms.ToolStripStatusLabel tsl_Status;
|
||||
private System.Windows.Forms.ToolStripMenuItem settingsToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem mnu_Settings;
|
||||
private System.Windows.Forms.GroupBox gb_Info;
|
||||
private System.Windows.Forms.GroupBox gb_Map;
|
||||
private System.Windows.Forms.Timer ti_Progress;
|
||||
|
|
|
@ -141,7 +141,7 @@ namespace AirScoutViewClient
|
|||
SortedList<string, PlaneInfo> ActivePlanes = new SortedList<string, PlaneInfo>();
|
||||
private List<string> SelectedPlanes = new List<string>();
|
||||
|
||||
private VIEWCLIENTSTATUS VieClientStatus = VIEWCLIENTSTATUS.NONE;
|
||||
private VIEWCLIENTSTATUS ViewClientStatus = VIEWCLIENTSTATUS.NONE;
|
||||
|
||||
[CategoryAttribute("Directories")]
|
||||
[DescriptionAttribute("Application Directory")]
|
||||
|
@ -268,7 +268,7 @@ namespace AirScoutViewClient
|
|||
BAND band = Properties.Settings.Default.Band;
|
||||
cb_Band.SelectedItem = Bands.GetStringValue(band);
|
||||
PlayMode = AIRSCOUTPLAYMODE.PAUSE;
|
||||
VieClientStatus = VIEWCLIENTSTATUS.CONNECTED;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.CONNECTED;
|
||||
UpdateStatus();
|
||||
Say("");
|
||||
}
|
||||
|
@ -627,10 +627,10 @@ namespace AirScoutViewClient
|
|||
{
|
||||
string json = "";
|
||||
// get settings
|
||||
json = GetJSONFromURL(GetServerURL(Properties.Settings.Default.Server_URL, Properties.Settings.Default.Server_Port, "settings.json"));
|
||||
json = GetJSONFromURL(GetServerURL(Properties.Settings.Default.Server_URL, (int)Properties.Settings.Default.Server_Port, "settings.json"));
|
||||
if (String.IsNullOrEmpty(json))
|
||||
{
|
||||
VieClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
return false;
|
||||
}
|
||||
if (json.StartsWith("Error:"))
|
||||
|
@ -689,14 +689,14 @@ namespace AirScoutViewClient
|
|||
{
|
||||
string url = GetServerURL(
|
||||
Properties.Settings.Default.Server_URL,
|
||||
Properties.Settings.Default.Server_Port,
|
||||
(int)Properties.Settings.Default.Server_Port,
|
||||
"location.json",
|
||||
"call=" + Properties.Settings.Default.MyCall +
|
||||
"&loc=all");
|
||||
json = GetJSONFromURL(url);
|
||||
if (String.IsNullOrEmpty(json))
|
||||
{
|
||||
VieClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
return null;
|
||||
}
|
||||
if (json.StartsWith("Error:"))
|
||||
|
@ -727,14 +727,14 @@ namespace AirScoutViewClient
|
|||
{
|
||||
string url = GetServerURL(
|
||||
Properties.Settings.Default.Server_URL,
|
||||
Properties.Settings.Default.Server_Port,
|
||||
(int)Properties.Settings.Default.Server_Port,
|
||||
"location.json",
|
||||
"call=" + Properties.Settings.Default.MyCall +
|
||||
"&loc=" + MaidenheadLocator.LocFromLatLon(Properties.Settings.Default.MyLat, Properties.Settings.Default.MyLon, false, 3));
|
||||
json = GetJSONFromURL(url);
|
||||
if (String.IsNullOrEmpty(json))
|
||||
{
|
||||
VieClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
return null;
|
||||
}
|
||||
if (json.StartsWith("Error:"))
|
||||
|
@ -760,14 +760,14 @@ namespace AirScoutViewClient
|
|||
{
|
||||
string url = GetServerURL(
|
||||
Properties.Settings.Default.Server_URL,
|
||||
Properties.Settings.Default.Server_Port,
|
||||
(int)Properties.Settings.Default.Server_Port,
|
||||
"location.json",
|
||||
"call=" + Properties.Settings.Default.DXCall +
|
||||
"&loc=all");
|
||||
json = GetJSONFromURL(url);
|
||||
if (String.IsNullOrEmpty(json))
|
||||
{
|
||||
VieClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
return null;
|
||||
}
|
||||
if (json.StartsWith("Error:"))
|
||||
|
@ -798,14 +798,14 @@ namespace AirScoutViewClient
|
|||
{
|
||||
string url = GetServerURL(
|
||||
Properties.Settings.Default.Server_URL,
|
||||
Properties.Settings.Default.Server_Port,
|
||||
(int)Properties.Settings.Default.Server_Port,
|
||||
"location.json",
|
||||
"&call=" + Properties.Settings.Default.DXCall +
|
||||
"&loc=" + MaidenheadLocator.LocFromLatLon(Properties.Settings.Default.DXLat, Properties.Settings.Default.DXLon, false, 3));
|
||||
json = GetJSONFromURL(url);
|
||||
if (String.IsNullOrEmpty(json))
|
||||
{
|
||||
VieClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
return null;
|
||||
}
|
||||
if (json.StartsWith("Error:"))
|
||||
|
@ -830,7 +830,7 @@ namespace AirScoutViewClient
|
|||
{
|
||||
json = GetJSONFromURL(GetServerURL(
|
||||
Properties.Settings.Default.Server_URL,
|
||||
Properties.Settings.Default.Server_Port,
|
||||
(int)Properties.Settings.Default.Server_Port,
|
||||
"elevationpath.json",
|
||||
"mycall=" + Properties.Settings.Default.MyCall +
|
||||
"&myloc=" + MaidenheadLocator.LocFromLatLon(Properties.Settings.Default.MyLat, Properties.Settings.Default.MyLon, false, 3) +
|
||||
|
@ -838,7 +838,7 @@ namespace AirScoutViewClient
|
|||
"&dxloc=" + MaidenheadLocator.LocFromLatLon(Properties.Settings.Default.DXLat, Properties.Settings.Default.DXLon, false, 3)));
|
||||
if (String.IsNullOrEmpty(json))
|
||||
{
|
||||
VieClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
return null;
|
||||
}
|
||||
if (json.StartsWith("Error:"))
|
||||
|
@ -863,7 +863,7 @@ namespace AirScoutViewClient
|
|||
{
|
||||
json = GetJSONFromURL(GetServerURL(
|
||||
Properties.Settings.Default.Server_URL,
|
||||
Properties.Settings.Default.Server_Port,
|
||||
(int)Properties.Settings.Default.Server_Port,
|
||||
"propagationpath.json",
|
||||
"mycall=" + Properties.Settings.Default.MyCall +
|
||||
"&myloc=" + MaidenheadLocator.LocFromLatLon(Properties.Settings.Default.MyLat, Properties.Settings.Default.MyLon, false, 3) +
|
||||
|
@ -871,7 +871,7 @@ namespace AirScoutViewClient
|
|||
"&dxloc=" + MaidenheadLocator.LocFromLatLon(Properties.Settings.Default.DXLat, Properties.Settings.Default.DXLon, false, 3)));
|
||||
if (String.IsNullOrEmpty(json))
|
||||
{
|
||||
VieClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
return null;
|
||||
}
|
||||
if (json.StartsWith("Error:"))
|
||||
|
@ -897,7 +897,7 @@ namespace AirScoutViewClient
|
|||
{
|
||||
json = GetJSONFromURL(GetServerURL(
|
||||
Properties.Settings.Default.Server_URL,
|
||||
Properties.Settings.Default.Server_Port,
|
||||
(int)Properties.Settings.Default.Server_Port,
|
||||
"nearestplanes.json",
|
||||
"mycall=" + Properties.Settings.Default.MyCall +
|
||||
"&myloc=" + MaidenheadLocator.LocFromLatLon(Properties.Settings.Default.MyLat, Properties.Settings.Default.MyLon, false, 3) +
|
||||
|
@ -905,7 +905,7 @@ namespace AirScoutViewClient
|
|||
"&dxloc=" + MaidenheadLocator.LocFromLatLon(Properties.Settings.Default.DXLat, Properties.Settings.Default.DXLon, false, 3)));
|
||||
if (String.IsNullOrEmpty(json))
|
||||
{
|
||||
VieClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
return null;
|
||||
}
|
||||
if (json.StartsWith("Error:"))
|
||||
|
@ -1385,8 +1385,8 @@ namespace AirScoutViewClient
|
|||
|
||||
private void ti_Progress_Tick(object sender, EventArgs e)
|
||||
{
|
||||
tsl_ConnectionStatus.Text = VieClientStatus.ToString();
|
||||
switch (VieClientStatus)
|
||||
tsl_ConnectionStatus.Text = ViewClientStatus.ToString();
|
||||
switch (ViewClientStatus)
|
||||
{
|
||||
case VIEWCLIENTSTATUS.CONNECTING:
|
||||
{
|
||||
|
@ -1423,13 +1423,13 @@ namespace AirScoutViewClient
|
|||
|
||||
private void MapViewDlg_Load(object sender, EventArgs e)
|
||||
{
|
||||
VieClientStatus = VIEWCLIENTSTATUS.INIT;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.INIT;
|
||||
InitializeIcons();
|
||||
InitializeCharts();
|
||||
this.Text = "AirScout View Client V" + Application.ProductVersion;
|
||||
this.Show();
|
||||
ti_Progress.Start();
|
||||
VieClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.CONNECTING;
|
||||
}
|
||||
|
||||
private void tsi_Exit_Click(object sender, EventArgs e)
|
||||
|
@ -1723,5 +1723,20 @@ namespace AirScoutViewClient
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
private void mnu_Settings_Click(object sender, EventArgs e)
|
||||
{
|
||||
SettingsDlg Dlg = new SettingsDlg();
|
||||
if (Dlg.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
Properties.Settings.Default.Save();
|
||||
ViewClientStatus = VIEWCLIENTSTATUS.INIT;
|
||||
InitializeSettings();
|
||||
}
|
||||
else
|
||||
{
|
||||
Properties.Settings.Default.Reload();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -123,30 +123,6 @@
|
|||
<metadata name="ss_Main.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>126, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ti_Progress.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>220, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ti_Startup.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>331, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Planes_H.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>435, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Planes_L.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>546, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Planes_S.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>654, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Airports.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>763, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Planes_M.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>869, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ti_ShowLegends.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>983, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Main.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>1122, 17</value>
|
||||
</metadata>
|
||||
|
@ -155,7 +131,7 @@
|
|||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACc
|
||||
DQAAAk1TRnQBSQFMAgEBAwEAARABCwEQAQsBIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
DQAAAk1TRnQBSQFMAgEBAwEAARgBCwEYAQsBIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABgAMAASADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
|
@ -216,6 +192,30 @@
|
|||
DP8EAAz/BAAL
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="ti_Progress.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>220, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ti_Startup.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>331, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Planes_H.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>435, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Planes_L.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>546, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Planes_S.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>654, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Airports.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>763, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_Planes_M.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>869, 17</value>
|
||||
</metadata>
|
||||
<metadata name="ti_ShowLegends.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>983, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
|
|
|
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
|||
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
|
||||
// übernehmen, indem Sie "*" eingeben:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.3.0.4")]
|
||||
[assembly: AssemblyFileVersion("1.3.0.4")]
|
||||
[assembly: AssemblyVersion("1.3.0.5")]
|
||||
[assembly: AssemblyFileVersion("1.3.0.5")]
|
||||
|
|
|
@ -12,7 +12,7 @@ namespace AirScoutViewClient.Properties {
|
|||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.5.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
@ -38,9 +38,9 @@ namespace AirScoutViewClient.Properties {
|
|||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("9880")]
|
||||
public int Server_Port {
|
||||
public decimal Server_Port {
|
||||
get {
|
||||
return ((int)(this["Server_Port"]));
|
||||
return ((decimal)(this["Server_Port"]));
|
||||
}
|
||||
set {
|
||||
this["Server_Port"] = value;
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<Setting Name="Server_URL" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)">localhost</Value>
|
||||
</Setting>
|
||||
<Setting Name="Server_Port" Type="System.Int32" Scope="User">
|
||||
<Setting Name="Server_Port" Type="System.Decimal" Scope="User">
|
||||
<Value Profile="(Default)">9880</Value>
|
||||
</Setting>
|
||||
<Setting Name="RefreshRate" Type="System.Int32" Scope="User">
|
||||
|
@ -110,7 +110,7 @@
|
|||
<Setting Name="Planes_Filter_Min_Alt" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">5000</Value>
|
||||
</Setting>
|
||||
<Setting Name="Planes_Filter_Min_Category" Type="AirScout.Aircrafts.PLANECATEGORY" Scope="User">
|
||||
<Setting Name="Planes_Filter_Min_Category" Type="AirScout.Core.PLANECATEGORY" Scope="User">
|
||||
<Value Profile="(Default)">NONE</Value>
|
||||
</Setting>
|
||||
<Setting Name="Path_Band_Settings" Type="AirScout.Core.BandSettings" Scope="User">
|
||||
|
|
|
@ -0,0 +1,140 @@
|
|||
namespace AirScoutViewClient
|
||||
{
|
||||
partial class SettingsDlg
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.ud_Settings_Server_Port = new System.Windows.Forms.NumericUpDown();
|
||||
this.tb_Settings_Server_URL = new System.Windows.Forms.TextBox();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.btn_OK = new System.Windows.Forms.Button();
|
||||
this.groupBox1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.ud_Settings_Server_Port)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Controls.Add(this.ud_Settings_Server_Port);
|
||||
this.groupBox1.Controls.Add(this.tb_Settings_Server_URL);
|
||||
this.groupBox1.Controls.Add(this.label2);
|
||||
this.groupBox1.Controls.Add(this.label1);
|
||||
this.groupBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.groupBox1.Location = new System.Drawing.Point(12, 12);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(266, 103);
|
||||
this.groupBox1.TabIndex = 0;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "Connection Settings";
|
||||
//
|
||||
// ud_Settings_Server_Port
|
||||
//
|
||||
this.ud_Settings_Server_Port.DataBindings.Add(new System.Windows.Forms.Binding("Value", global::AirScoutViewClient.Properties.Settings.Default, "Server_Port", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.ud_Settings_Server_Port.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.ud_Settings_Server_Port.Location = new System.Drawing.Point(91, 57);
|
||||
this.ud_Settings_Server_Port.Maximum = new decimal(new int[] {
|
||||
65535,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.ud_Settings_Server_Port.Minimum = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.ud_Settings_Server_Port.Name = "ud_Settings_Server_Port";
|
||||
this.ud_Settings_Server_Port.Size = new System.Drawing.Size(76, 20);
|
||||
this.ud_Settings_Server_Port.TabIndex = 3;
|
||||
this.ud_Settings_Server_Port.Value = global::AirScoutViewClient.Properties.Settings.Default.Server_Port;
|
||||
//
|
||||
// tb_Settings_Server_URL
|
||||
//
|
||||
this.tb_Settings_Server_URL.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::AirScoutViewClient.Properties.Settings.Default, "Server_URL", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.tb_Settings_Server_URL.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.tb_Settings_Server_URL.Location = new System.Drawing.Point(91, 24);
|
||||
this.tb_Settings_Server_URL.Name = "tb_Settings_Server_URL";
|
||||
this.tb_Settings_Server_URL.Size = new System.Drawing.Size(138, 20);
|
||||
this.tb_Settings_Server_URL.TabIndex = 2;
|
||||
this.tb_Settings_Server_URL.Text = global::AirScoutViewClient.Properties.Settings.Default.Server_URL;
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label2.Location = new System.Drawing.Point(6, 59);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(69, 13);
|
||||
this.label2.TabIndex = 1;
|
||||
this.label2.Text = "Server - Port:";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label1.Location = new System.Drawing.Point(6, 27);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(60, 13);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "Server - IP:";
|
||||
//
|
||||
// btn_OK
|
||||
//
|
||||
this.btn_OK.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.btn_OK.Location = new System.Drawing.Point(12, 134);
|
||||
this.btn_OK.Name = "btn_OK";
|
||||
this.btn_OK.Size = new System.Drawing.Size(266, 23);
|
||||
this.btn_OK.TabIndex = 1;
|
||||
this.btn_OK.Text = "OK";
|
||||
this.btn_OK.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// SettingsDlg
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(298, 169);
|
||||
this.Controls.Add(this.btn_OK);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.Name = "SettingsDlg";
|
||||
this.Text = "AirScout View Client Settings";
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox1.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.ud_Settings_Server_Port)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private System.Windows.Forms.TextBox tb_Settings_Server_URL;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.NumericUpDown ud_Settings_Server_Port;
|
||||
private System.Windows.Forms.Button btn_OK;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace AirScoutViewClient
|
||||
{
|
||||
public partial class SettingsDlg : Form
|
||||
{
|
||||
public SettingsDlg()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.113.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.113.7" targetFramework="net40" />
|
||||
</packages>
|
|
@ -42,8 +42,8 @@
|
|||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.112.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.112.0\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net40\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
|
@ -69,12 +69,12 @@
|
|||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.112.0\build\net40\System.Data.SQLite.Core.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\build\net40\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.0" targetFramework="net40" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.113.3" targetFramework="net40" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.113.7" targetFramework="net40" />
|
||||
</packages>
|
|
@ -0,0 +1,103 @@
|
|||
namespace CATCheck
|
||||
{
|
||||
partial class AboutDlg
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.btn_OK = new System.Windows.Forms.Button();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.lbl_Version = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// btn_OK
|
||||
//
|
||||
this.btn_OK.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.btn_OK.Location = new System.Drawing.Point(107, 122);
|
||||
this.btn_OK.Name = "btn_OK";
|
||||
this.btn_OK.Size = new System.Drawing.Size(75, 23);
|
||||
this.btn_OK.TabIndex = 0;
|
||||
this.btn_OK.Text = "OK";
|
||||
this.btn_OK.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label1.Location = new System.Drawing.Point(39, 9);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(218, 55);
|
||||
this.label1.TabIndex = 1;
|
||||
this.label1.Text = "CAT communication checker for Windows & Linux";
|
||||
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.label1.UseMnemonic = false;
|
||||
//
|
||||
// lbl_Version
|
||||
//
|
||||
this.lbl_Version.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.lbl_Version.Location = new System.Drawing.Point(43, 53);
|
||||
this.lbl_Version.Name = "lbl_Version";
|
||||
this.lbl_Version.Size = new System.Drawing.Size(214, 30);
|
||||
this.lbl_Version.TabIndex = 2;
|
||||
this.lbl_Version.Text = "V x.x.x (c) 2021 DL2ALF";
|
||||
this.lbl_Version.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.lbl_Version.UseMnemonic = false;
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label3.Location = new System.Drawing.Point(12, 83);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(280, 30);
|
||||
this.label3.TabIndex = 3;
|
||||
this.label3.Text = "based on the great OmniRig project by VE3NEA";
|
||||
this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.label3.UseMnemonic = false;
|
||||
//
|
||||
// AboutDlg
|
||||
//
|
||||
this.AcceptButton = this.btn_OK;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(295, 157);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.lbl_Version);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.btn_OK);
|
||||
this.Name = "AboutDlg";
|
||||
this.Text = "About";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Button btn_OK;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label3;
|
||||
public System.Windows.Forms.Label lbl_Version;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace CATCheck
|
||||
{
|
||||
public partial class AboutDlg : Form
|
||||
{
|
||||
public AboutDlg()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
|
@ -0,0 +1,571 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{0F0B27D0-7957-4CE0-9121-2C89746AF136}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>CATCheck</RootNamespace>
|
||||
<AssemblyName>CATCheck</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<Deterministic>true</Deterministic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="AboutDlg.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="AboutDlg.Designer.cs">
|
||||
<DependentUpon>AboutDlg.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ComboBoxItem.cs" />
|
||||
<Compile Include="FrequencyOfToneDlg.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FrequencyOfToneDlg.Designer.cs">
|
||||
<DependentUpon>FrequencyOfToneDlg.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Helpers.cs" />
|
||||
<Compile Include="MainDlg.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="MainDlg.Designer.cs">
|
||||
<DependentUpon>MainDlg.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="SetFrequencyDlg.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="SetFrequencyDlg.Designer.cs">
|
||||
<DependentUpon>SetFrequencyDlg.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Settings.cs" />
|
||||
<EmbeddedResource Include="AboutDlg.resx">
|
||||
<DependentUpon>AboutDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FrequencyOfToneDlg.resx">
|
||||
<DependentUpon>FrequencyOfToneDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="MainDlg.resx">
|
||||
<DependentUpon>MainDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="SetFrequencyDlg.resx">
|
||||
<DependentUpon>SetFrequencyDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<None Include="app.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
<None Include="Rigs\ADT-200A.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\AORAR5000.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\AR8600.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\Bearcat996x.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\CODAN.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\DX-77.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\Elad-FDMSW2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\Elecraft K2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\Elecraft K3.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\Elecraft KX2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\Elecraft KX3.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\ExpertSDR.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FRG-100.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-100 D.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-1000 MP.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-1000.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-2000.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-2000PEPV3.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-2KAFSKPEPV3.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-2KFSKPEPV3.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-450.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-450Dmod.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-747.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-747GX.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-747GX1.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-747GX2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-757GXII.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-817.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-840.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-847.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-857.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-891.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-897.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-900.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-920.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-950.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-990.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-991-DATA.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FT-991.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FTDX-1200-DATA.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FTDX-1200.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FTDX-3000-DATA.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FTDX-3000.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FTDX-5000MP-DATA.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FTDX-5000MP.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\FTDX-9000.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\HRD.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC- 821.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC- 970D.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-275H.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7000.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7000v2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-703.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-703a.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-706 MKII.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-706 MKIIG.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-706.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7100.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7100e4-DATA.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7100e4.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-718.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7200.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7200v2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-725.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-725a.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-726.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-728.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7300-DATA.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7300.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7315.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-735.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-736 %28untested%29.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-737.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-738.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7410 %281%29.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7410.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7410v2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-746 Pro.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-746.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-751.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-756 Pro II.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-756 Pro III.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-756 Pro II_LSB.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-756 Pro.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-756.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7600.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7600v2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-761.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7610-DATA.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7610.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-765.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7700.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7700v2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-775.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-78.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7800.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7800v3.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-781.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-781_2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7850-DATA-FIL1.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7850-DATA.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7850.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7851-DATA-FIL1.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7851-DATA.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-7851.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-821PST.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-910.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-9100.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-9100v2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\ic-9700-data.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\ic-9700-dl2alf.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-9700.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-M710.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-R75-chromos.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-R75.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-R8500.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-R9000.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\IC-R9500.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\ID-5100A.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\JST-245.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\Kenwood.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\NRD-535DG.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\Perseus.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\PowerRX2.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\PowerSDR.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\SmartSDR.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TenTec Eagle.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TenTec Jupiter.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TenTec Omni VII.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TenTec Omni VI_plus.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TenTec Orion.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TenTec Paragon II.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TenTec RX-350.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TH-F6A.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TH-F7E.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TS-2000.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TS-440.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TS-480.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TS-590.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TS-690.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TS-870.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\TS-930.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Rigs\ZS-1.ini">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Rigs\CODAN-Comments.txt">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Rigs\DX-77-Comments.txt">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Rigs\FT-2K_Readme.txt">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Rigs\IC-756 Pro ini comments.txt">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\ScoutBase\ScoutBase.CAT\ScoutBase.CAT.csproj">
|
||||
<Project>{c9291203-b5d0-4179-888d-04bc670b158f}</Project>
|
||||
<Name>ScoutBase.CAT</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ScoutBase\ScoutBase.Core\ScoutBase.Core.csproj">
|
||||
<Project>{ee86e933-d883-4b18-80eb-0fba55ec67c6}</Project>
|
||||
<Name>ScoutBase.Core</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>
|
||||
</PostBuildEvent>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<PreBuildEvent>
|
||||
</PreBuildEvent>
|
||||
</PropertyGroup>
|
||||
</Project>
|
|
@ -0,0 +1,24 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace CATCheck
|
||||
{
|
||||
public class ComboBoxItem<T>
|
||||
{
|
||||
private string Text { get; set; }
|
||||
public T Value { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return Text;
|
||||
}
|
||||
|
||||
public ComboBoxItem(string text, T value)
|
||||
{
|
||||
Text = text;
|
||||
Value = value;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,130 @@
|
|||
namespace CATCheck
|
||||
{
|
||||
partial class FrequencyOfToneDlg
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.ud_Tone = new System.Windows.Forms.NumericUpDown();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.tb_Freq = new System.Windows.Forms.TextBox();
|
||||
((System.ComponentModel.ISupportInitialize)(this.ud_Tone)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// ud_Tone
|
||||
//
|
||||
this.ud_Tone.Location = new System.Drawing.Point(271, 12);
|
||||
this.ud_Tone.Maximum = new decimal(new int[] {
|
||||
10000,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.ud_Tone.Name = "ud_Tone";
|
||||
this.ud_Tone.Size = new System.Drawing.Size(81, 20);
|
||||
this.ud_Tone.TabIndex = 0;
|
||||
this.ud_Tone.Value = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.ud_Tone.ValueChanged += new System.EventHandler(this.ud_Tone_ValueChanged);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(35, 14);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(35, 13);
|
||||
this.label1.TabIndex = 1;
|
||||
this.label1.Text = "Tone:";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(358, 14);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(20, 13);
|
||||
this.label2.TabIndex = 2;
|
||||
this.label2.Text = "Hz";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(35, 44);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(96, 13);
|
||||
this.label3.TabIndex = 3;
|
||||
this.label3.Text = "Frequency of tone:";
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(358, 44);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(20, 13);
|
||||
this.label4.TabIndex = 4;
|
||||
this.label4.Text = "Hz";
|
||||
//
|
||||
// tb_Freq
|
||||
//
|
||||
this.tb_Freq.Location = new System.Drawing.Point(177, 41);
|
||||
this.tb_Freq.Name = "tb_Freq";
|
||||
this.tb_Freq.ReadOnly = true;
|
||||
this.tb_Freq.Size = new System.Drawing.Size(175, 20);
|
||||
this.tb_Freq.TabIndex = 5;
|
||||
//
|
||||
// FrequencyOfToneDlg
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(390, 90);
|
||||
this.Controls.Add(this.tb_Freq);
|
||||
this.Controls.Add(this.label4);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.ud_Tone);
|
||||
this.Name = "FrequencyOfToneDlg";
|
||||
this.Text = "Calculate Frequency of Tone";
|
||||
((System.ComponentModel.ISupportInitialize)(this.ud_Tone)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.NumericUpDown ud_Tone;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.Label label4;
|
||||
private System.Windows.Forms.TextBox tb_Freq;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,41 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using ScoutBase.CAT;
|
||||
|
||||
namespace CATCheck
|
||||
{
|
||||
public partial class FrequencyOfToneDlg : Form
|
||||
{
|
||||
Rig Rig = null;
|
||||
|
||||
public FrequencyOfToneDlg(Rig rig)
|
||||
{
|
||||
Rig = rig;
|
||||
|
||||
InitializeComponent();
|
||||
|
||||
if ((Rig != null) && Rig.Online)
|
||||
{
|
||||
ud_Tone.Value = Rig.Pitch;
|
||||
}
|
||||
}
|
||||
|
||||
private void ud_Tone_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
if ((Rig != null) && Rig.Online)
|
||||
{
|
||||
tb_Freq.Text = Rig.FrequencyOfTone((int)ud_Tone.Value).ToString();
|
||||
}
|
||||
else
|
||||
{
|
||||
tb_Freq.Text = "Rig not avalibale";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
|
@ -0,0 +1,70 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace CATCheck
|
||||
{
|
||||
public static class Helpers
|
||||
{
|
||||
public static string GetEnumDescription(this Enum value)
|
||||
{
|
||||
Type type = value.GetType();
|
||||
string name = Enum.GetName(type, value);
|
||||
if (name != null)
|
||||
{
|
||||
FieldInfo field = type.GetField(name);
|
||||
if (field != null)
|
||||
{
|
||||
DescriptionAttribute attr =
|
||||
Attribute.GetCustomAttribute(field,
|
||||
typeof(DescriptionAttribute)) as DescriptionAttribute;
|
||||
if (attr != null)
|
||||
{
|
||||
return attr.Description;
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static void BindToEnum<TEnum>(this ComboBox comboBox)
|
||||
{
|
||||
var enumType = typeof(TEnum);
|
||||
|
||||
var fields = enumType.GetMembers()
|
||||
.OfType<FieldInfo>()
|
||||
.Where(p => p.MemberType == MemberTypes.Field)
|
||||
.Where(p => p.IsLiteral)
|
||||
.ToList();
|
||||
|
||||
var valuesByName = new Dictionary<string, object>();
|
||||
|
||||
foreach (var field in fields)
|
||||
{
|
||||
var descriptionAttribute = field.GetCustomAttributes(typeof(DescriptionAttribute), false)[0] as DescriptionAttribute;
|
||||
|
||||
var value = (int)field.GetValue(null);
|
||||
var description = string.Empty;
|
||||
|
||||
if (!string.IsNullOrEmpty(descriptionAttribute?.Description))
|
||||
{
|
||||
description = descriptionAttribute.Description;
|
||||
}
|
||||
else
|
||||
{
|
||||
description = field.Name;
|
||||
}
|
||||
|
||||
valuesByName[description] = value;
|
||||
}
|
||||
|
||||
comboBox.DataSource = valuesByName.ToList();
|
||||
comboBox.DisplayMember = "Key";
|
||||
comboBox.ValueMember = "Value";
|
||||
}
|
||||
}
|
||||
}
|
Plik diff jest za duży
Load Diff
Plik diff jest za duży
Load Diff
|
@ -0,0 +1,214 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="tt_Set.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="mnu_Main.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>99, 17</value>
|
||||
</metadata>
|
||||
<metadata name="il_MessageStates.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>299, 17</value>
|
||||
</metadata>
|
||||
<data name="il_MessageStates.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACg
|
||||
CwAAAk1TRnQBSQFMAgEBBAEAATABAAEwAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
|
||||
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
|
||||
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
|
||||
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
|
||||
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
|
||||
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
|
||||
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
|
||||
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
|
||||
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
|
||||
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
|
||||
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
|
||||
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
|
||||
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
|
||||
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
|
||||
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
|
||||
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
|
||||
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
|
||||
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
|
||||
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
|
||||
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
|
||||
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
|
||||
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
|
||||
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
|
||||
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
|
||||
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8ABQAH/wEL
|
||||
CP8EAAH/AfABtQKRAbUB8gH/BAAB/wGZBSoDAwQqAQMBURAABv8C+Qj/AwAB8wH3AZEBvAH0AfMBBwGR
|
||||
AfcB8wMAAfQBMQE3ATgDNwEwAUoBUgQ3ATgBUgQAAfQBvAFzAUUBRAFuAQcB9AQABP8L+QH/AgAB8wG1
|
||||
AfMB/wL2AvQB9gHvAa4B8wIAAfYBeQFZAV4DOAEiAV8BbQH7AzgBNwFzAwAB8AFvASQDJQEkAQEBRAG8
|
||||
AwAC/wEODPkB/wEAAfQBtQH0Av8BCQGGAYsBuwL2Ae8BkQH/AgABGwFZAl4BOAH7ATABIgExAzgB+wEw
|
||||
ARwCAAEbAUwHJQEkAUQBvAIAAf8B3g35Av8BBwG8A/8B3QGmAYYB8wH/AfMB9AGuAbwCAAH/AXkDXgL7
|
||||
ATcB+wI4AV4BNwEDAf8BAAH0AW8JJQEkAUQB9AEAA/8BAQv5Af8B9AG1BP8B8gKtAv8C9AEHAZEDAAEb
|
||||
AVkB5QFeAfsBNwFEATcCOAH7ATABHAIAARoBRgImAv8CTQL/AiUBAQEHAQAF/wP5CP8B8wG1BP8B8QKt
|
||||
AfQC/wH0AfABkQMAAf8BeQLlAV4BNwFmATcC+wE4ASoB9AIAAZMBRgImAXUE/wF1AiUBJAFuAQAG/wGw
|
||||
AfkB/wFUBv8B8gG1BP8B8QKtAfMC/wH0AfIBkQQAARsBWQGgAV4BWAGiAVgC+wExAXMDAAFvBE0BvQL/
|
||||
AZoBJgMlAUQBAAn/AlQBFwT/AfABtQT/AQkCrQH0Av8B9gHwAZEEAAH/AXkBoAHlAVEBXwFRAvsBAwHz
|
||||
AwABbwHjAXUB4wFNAb0C/wGaASYDJQFFAQAD/wpUA/8B8wG1BP8B8wHxAfMD/wH2AQcBtQUAARsBWQHl
|
||||
AUoBCgETAfsBMQFRBAABkwHjAnUBlAT/AXUBJgIlAXMBAAP/DFQC/wEJAfIE/wK1BP8BrgHzBQAB/wF5
|
||||
AeUBUQEQAVEB+wEDAfIEAAEaAUwBdQGUAv8BlAF1Av8BJgElAUUBvAEAA/8MVAHzAQAB8wEJA/8B8wKt
|
||||
AfQC/wG1Ae8B/wYAARsBWQHlAVgBXgE3AVEFAAH0AXQB4wGUAZoCdQJNAiYBJQFvAfQBAAP/ClQBVQL/
|
||||
AQAB/wHxAQkE/wH0Av8BuwG1Af8HAAH/AVgDXgEDARoGAAEbAW8B4wF1AZQCdQFNASYBJQFMAfACAAn/
|
||||
A1QE/wIAAf8B8gEJAhkB9AHzAbwBuwG8Af8JAAEaAVkB5QE3AVEB/wcAARsBdAFMA+MCTAFvARsDAAn/
|
||||
AVQBlAX/BAAB9AHxA90B8gH0CwAB/wJYAXkBGwkAAfQBGgGTAm8BkwEaAfQEABD/MAABQgFNAT4HAAE+
|
||||
AwABKAMAAUADAAEgAwABAQEAAQEGAAEBFgAD/4MAAfABDwIAAv8CAAHgAQcCAAHwAQ8CAAHAAQMCAAHg
|
||||
AQcCAAGAAQEBgAEAAcABAwMAAQEBgAEAAYABAQMAAQEBwAEBAYABAQMAAQEBwAEBAYABAQMAAQEB4AED
|
||||
AYABAQMAAQEB4AEDAYABAQMAAQEB8AEHAYABAQMAAQEB8AEHAYABAQIAAYABAQH4AQ8BgAEBAgABgAED
|
||||
AfgBDwHAAQMCAAHAAQcB/AEPAeABBwIAAfABHwH8AR8B8AEPAgAG/ws=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="ti_Main.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>208, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD+/v7//v7+//7+/v/+/v7//v7+//7+/v/6+Pr/rqPU//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/EvOL/MSnc/yMb3f/+/v7//v7+//7+/v/+/v7//v7+//7+
|
||||
/v/+/v7//v7+//7+/v/+/v7//v7+/+rl7/9kWtn/AwH0/wEA/f8TDeX/g3re/4N73v+De97/g3ve/4N7
|
||||
3v+De97/r6bg//7+/v/+/v7//Pv8/5qR2v8VD+f/AQD9/wIA/f8CAP3/AQD9/wIA/f8CAP3/AgD9/wIA
|
||||
/f8CAP3/AgD9/1ZM3v/+/v7/+PT4/zwyz/8BAP3/AgD9/wIA/f8CAP3/AgD9/wIA/f8CAP3/AgD9/wIA
|
||||
/f8CAP3/AgD9/wIA/f9WTN7//v7+//7+/v/JwuT/Ni7b/wIA/f8CAP3/AgD9/wIA/f8CAP3/AgD9/wIA
|
||||
/f8CAP3/AgD9/wIA/f8CAP3/Vkze//7+/v/+/v7//v7+//z6+/+Wjdn/Ew7n/wIA/f8CAP3/BgLx/yAX
|
||||
3v8gF97/Hxbe/x8W3v8fFd3/HhXd/2xf0v/+/v7//v7+//7+/v/+/v7//v7+/+nk7/9iWNj/AwD0/yMb
|
||||
3f/y9Pr/8PL5//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+/8O7
|
||||
4v9YS8f/zN7g/1DDN/+y1MP//f3+//7+/v/+/v7//v7+//7+/v/+/v7//v7+/9Tl4P+w2Lf/sNi3/7DY
|
||||
t/+w2Lf/sNi3/5LGov9E0A7/RNAP/2rCZv/Z5uj//v7+//7+/v/+/v7//v7+//7+/v+RzZb/RNAO/0TQ
|
||||
Dv9E0A7/RNAO/0TQDv9E0A7/RNAO/0TQDv9E0A7/Rcge/5HLmv/z9fv//v7+//7+/v/+/v7/kc2W/0TQ
|
||||
Dv9E0A7/RNAO/0TQDv9E0A7/RNAO/0TQDv9E0A7/RNAO/0TQDv9E0A7/Ur5F/+br9f/+/v7//v7+/5HN
|
||||
lf9E0A7/RNAO/0TQDv9E0A7/RNAO/0TQDv9E0A7/RNAO/0TQDv9E0A7/W8JN/8fd2P/+/v7//v7+//7+
|
||||
/v+x1cD/dcpt/3XKbf92ym3/dspu/3bKbv9ow2L/RNAO/0TQDv9Ixif/n86r//n5/f/+/v7//v7+//7+
|
||||
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7/zd7g/0PNEv94xXj/5Ovx//7+/v/+/v7//v7+//7+
|
||||
/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+/+Pq8P/C2tP//v7+//7+/v/+/v7//v7+//7+
|
||||
/v/+/v7/AACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAArEEAAKxBAACsQQAA
|
||||
rEEAAKxBAACsQQ==
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
|
@ -3,7 +3,7 @@ using System.Collections.Generic;
|
|||
using System.Linq;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace AirScoutDatabaseManager
|
||||
namespace CATCheck
|
||||
{
|
||||
static class Program
|
||||
{
|
|
@ -0,0 +1,36 @@
|
|||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// Allgemeine Informationen über eine Assembly werden über die folgenden
|
||||
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
|
||||
// die einer Assembly zugeordnet sind.
|
||||
[assembly: AssemblyTitle("CATCheck")]
|
||||
[assembly: AssemblyDescription("CAT intreface checker for Windows & LInux/Mono")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("DL2ALF")]
|
||||
[assembly: AssemblyProduct("CATCheck")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2021 DL2ALF")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly
|
||||
// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von
|
||||
// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
|
||||
[assembly: Guid("0f0b27d0-7957-4ce0-9121-2c89746af136")]
|
||||
|
||||
// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
|
||||
//
|
||||
// Hauptversion
|
||||
// Nebenversion
|
||||
// Buildnummer
|
||||
// Revision
|
||||
//
|
||||
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
|
||||
// indem Sie "*" wie unten gezeigt eingeben:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
|
@ -1,14 +1,14 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Dieser Code wurde von einem Tool generiert.
|
||||
// Laufzeitversion:4.0.30319.42000
|
||||
// Laufzeitversion: 4.0.30319.42000
|
||||
//
|
||||
// Änderungen an dieser Datei können fehlerhaftes Verhalten verursachen und gehen verloren, wenn
|
||||
// der Code neu generiert wird.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace AirScoutDatabaseManager.Properties
|
||||
namespace CATCheck.Properties
|
||||
{
|
||||
|
||||
|
||||
|
@ -44,7 +44,7 @@ namespace AirScoutDatabaseManager.Properties
|
|||
{
|
||||
if ((resourceMan == null))
|
||||
{
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("AirScoutDatabaseManager.Properties.Resources", typeof(Resources).Assembly);
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("CATCheck.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
|
@ -0,0 +1,61 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Dieser Code wurde von einem Tool generiert.
|
||||
// Laufzeitversion:4.0.30319.42000
|
||||
//
|
||||
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
|
||||
// der Code erneut generiert wird.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace CATCheck.Properties {
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.5.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default {
|
||||
get {
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string RigDefinitionsFolder {
|
||||
get {
|
||||
return ((string)(this["RigDefinitionsFolder"]));
|
||||
}
|
||||
set {
|
||||
this["RigDefinitionsFolder"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
public global::ScoutBase.CAT.RigSettings RigSettings {
|
||||
get {
|
||||
return ((global::ScoutBase.CAT.RigSettings)(this["RigSettings"]));
|
||||
}
|
||||
set {
|
||||
this["RigSettings"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("llAll")]
|
||||
public global::ScoutBase.CAT.LOGLEVEL LogVerbosity {
|
||||
get {
|
||||
return ((global::ScoutBase.CAT.LOGLEVEL)(this["LogVerbosity"]));
|
||||
}
|
||||
set {
|
||||
this["LogVerbosity"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,15 @@
|
|||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="CATCheck.Properties" GeneratedClassName="Settings">
|
||||
<Profiles />
|
||||
<Settings>
|
||||
<Setting Name="RigDefinitionsFolder" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="RigSettings" Type="AirScout.CAT.RigSettings" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="LogVerbosity" Type="AirScout.CAT.LOGLEVEL" Scope="User">
|
||||
<Value Profile="(Default)">llAll</Value>
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
Plik binarny nie jest wyświetlany.
Po Szerokość: | Wysokość: | Rozmiar: 1.1 KiB |
Plik binarny nie jest wyświetlany.
Po Szerokość: | Wysokość: | Rozmiar: 28 KiB |
Plik binarny nie jest wyświetlany.
Po Szerokość: | Wysokość: | Rozmiar: 2.8 KiB |
Some files were not shown because too many files have changed in this diff Show More
Ładowanie…
Reference in New Issue