diff --git a/.gitignore b/.gitignore
index 073b627a8..b535984c1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,8 +1,11 @@
*.o
+*.d
*.obs
*.ini
*.local
Release
Release_Build
+Debug
Debug_Build
__history
+__astcache
diff --git a/LICENSE.txt b/LICENSE.txt
new file mode 100644
index 000000000..20d2638b0
--- /dev/null
+++ b/LICENSE.txt
@@ -0,0 +1,40 @@
+
+The RTKLIB software package is distributed under the following BSD 2-clause
+license. Users are permitted to develop, produce or sell their own non-
+commercial or commercial products utilizing, linking or including RTKLIB as long
+as they comply with the license.
+
+--------------------------------------------------------------------------------
+
+ Copyright (c) 2007-2020, T. Takasu, All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+Redistributions of source code must retain the above copyright notice, this list
+of conditions and the following disclaimer. Redistributions in binary form must
+reproduce the above copyright notice, this list of conditions and the following
+disclaimer in the documentation and/or other materials provided with the
+distribution.
+
+The software package includes some companion executive binaries or shared
+libraries necessary to execute APs on Windows. These licenses succeed to the
+original ones of these software.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+--------------------------------------------------------------------------------
+
+Notes:
+Previous versions of RTKLIB until ver. 2.4.1 had been distributed under GPLv3
+license.
+
diff --git a/app/clean_consapp.bat b/app/consapp/clean_consapp.bat
similarity index 71%
rename from app/clean_consapp.bat
rename to app/consapp/clean_consapp.bat
index d330e7a9c..2c7fd65c4 100644
--- a/app/clean_consapp.bat
+++ b/app/consapp/clean_consapp.bat
@@ -7,6 +7,3 @@ cd ..\..
cd pos2kml\bcc
call clean.bat
cd ..\..
-cd rnx2rtkp\bcc_win64
-call clean.bat
-cd ..\..
diff --git a/app/rtkconv/rtkconv.cbproj b/app/consapp/convbin/bcc/_convbin.cbproj
similarity index 60%
rename from app/rtkconv/rtkconv.cbproj
rename to app/consapp/convbin/bcc/_convbin.cbproj
index c55e06a4d..898fea7a9 100644
--- a/app/rtkconv/rtkconv.cbproj
+++ b/app/consapp/convbin/bcc/_convbin.cbproj
@@ -1,15 +1,14 @@
- {FBC66FD6-3B53-44AE-9322-ABD439675623}
- CppVCLApplication
- rtkconv.cpp
+ {F2F432E1-CB5E-4F62-8276-D65B70EC1563}
+ CppConsoleApplication
True
Release
- VCL
- 18.6
- Win32
- 1
- Application
+ None
+ 18.8
+ Win64
+ 3
+ Console
true
@@ -52,58 +51,54 @@
true
true
+
+ true
+ Cfg_2
+ true
+ true
+
- ..\..\src\rcv\;..\appcmn\;..\..\src\;$(IncludePath)
- ..\..\src\rcv\;..\appcmn\;..\..\src\;$(ILINK_LibraryPath)
- false
- false
- None
- false
- false
- None
- rtkconv_Icon.ico
- Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ $(BDS)\bin\cbuilder_PROJECTICNS.icns
+ $(BDS)\bin\cbuilder_PROJECTICON.ico
+ _convbin
CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
- true
+ System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ ..\;..\..\..\..\src\rcv\;..\..\..\..\src\;$(IncludePath)
+ None
1041
- ..\appcmn;..\rtkpost;..\..\src\rcv;$(BDS)\include;$(BDS)\include\vcl;..\..\src;$(TASM_IncludePath)
- ..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;$(DCC_ObjPath)
- vclx.bpi;vcl.bpi;rtl.bpi;dbrtl.bpi;vcldb.bpi;$(PackageImports)
- Windows
- ..\appcmn;..\rtkpost;..\..\src\rcv;$(BDS)\include;$(BDS)\include\vcl;..\..\src;$(BRCC_IncludePath)
+ vclx.bpi;vcl.bpi;rtl.bpi;dbrtl.bpi;vcldb.bpi;dbxcds.bpi;dbexpress.bpi;xmlrtl.bpi;vclie.bpi;inet.bpi;inetdbbde.bpi;inetdbxpress.bpi;dsnap.bpi;adortl.bpi;soaprtl.bpi;bdertl.bpi;vcldbx.bpi;$(PackageImports)
+ ..\..\..\extlex;..\..\..\..\src;..\;..\..\..\..\src\rcv;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
+ ..\..\..\extlex;..\..\..\..\src\rcv;..\;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ObjPath)
+ ..\..\..\extlex;..\..\..\..\src;..\;..\..\..\..\src\rcv;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
false
- true
- ..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;$(ILINK_ObjectSearchPath)
+ ..\..\..\extlex;..\..\..\..\src\rcv;..\;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
+ ..\..\..\extlex;..\..\..\..\src\rcv;..\;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(ILINK_ObjectSearchPath)
false
- rtl.lib;vcl.lib;vclx.lib
- ..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;$(DCC_ResourcePath)
+ ..\..\..\..\src;..\..\..\..\src\rcv;$(BDS)\include;$(BCC_IncludePath)
+ ..\..\..\extlex;..\..\..\..\src\rcv;..\;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
+ ..\..\..\extlex;..\..\..\..\src\rcv;..\;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ResourcePath)
+ ..\..\..\..\src\rcv\;..\..\..\..\src\;..\..\..\extlex;..\..\..\..\src\rcv;..\;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(BDS)\lib;$(BDS)\lib\obj;$(BDS)\lib\psdk;$(ILINK_LibraryPath)
JPHNE
- ..\appcmn;..\rtkpost;..\..\src;$(BDS)\include;$(BCC_IncludePath)
- rtkconv
+ exe
+ _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENACMP;NFREQ=6;NEXOBS=3;$(BCC_Defines)
+ -tWM -tWC
+ _RTLDLL;_NO_VCL;WIN32;ENAGLO;TRACE;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
+ _RTLDLL;_NO_VCL;WIN32;ENAGLO;TRACE;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
+ rtcm3_testglo.rtcm3 -tr 2009/12/18 23:20
Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- $(BDSINCLUDE)\windows\vcl;$(IncludePath)
1033
- $(BDS)\bin\default_app.manifest
- true
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;NEXOBS=3;NFREQ=6;$(BCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(TASM_Defines)
- -tWM
- exe
- true
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+ true
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;NEXOBS=3;NFREQ=6;$(BCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(TASM_Defines)
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+ _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENACMP;NFREQ=6;NEXOBS=3;$(BCC_Defines)
+ _RTLDLL;_NO_VCL;WIN32;ENAGLO;TRACE;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
+ _RTLDLL;_NO_VCL;WIN32;ENAGLO;TRACE;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
-V
@@ -116,213 +111,126 @@
false
Full
true
+ $(BDS)\lib\debug;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
true
true
- $(BDS)\bin\default_app.manifest
- true
- rtl.lib;vcl.lib;vclx.lib
- 1033
+ -tWM -tWC -k
_DEBUG;$(BCC_Defines);$(BCC_Defines)
- -tWM -k
- true
_DEBUG;$(BCC_Defines);$(BCC_Defines)
+ -$O+
Release_Build
None
true
+ $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
- true
- $(BDS)\bin\default_app.manifest
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
+ -tWM -tWC -r
+ false
+ false
+ false
1033
- rtl.lib;vcl.lib;vclx.lib
- -tWM -r
- true
- Debug
+
+
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
-
- 6
-
- ..\appcmn\aboutdlg.h
- 19
-
-
+
8
-
- ..\appcmn\confdlg.h
- 24
-
-
- 7
-
- ..\appcmn\keydlg.h
- 23
-
-
- 7
-
- ..\appcmn\timedlg.h
- 23
-
-
- 4
-
- ..\appcmn\viewer.h
- 14
-
-
- 5
-
- ..\appcmn\vieweropt.h
- 15
-
-
-
- dfm
- codeopt.h
- 28
-
-
- 2
-
- convmain.h
- 18
-
-
3
-
- convopt.h
- 13
-
-
- -1
- 0
-
+
-1
1
-
-
- 9
-
- startdlg.h
- 25
-
-
- 2
- 18
-
- 30
+
+ 11
+ 0
-
- 31
+
+ 24
-
- 29
+
+ 23
-
- 27
+
+ 22
-
- 34
+
+ 7
+ 14
-
- 21
- 11
+
+ 3
+ 10
-
- 33
+
+ 20
-
- 37
+
+ 9
+ 4
-
- 20
- 10
+
+ 5
+ 16
-
- 21
- 11
+
+ 5
+ 14
-
- 22
- 12
+
+ 18
-
- 3
- 13
+
+ 25
-
+
26
-
- 36
+
+ 6
+ 13
-
- 37
+
+ 6
+ 15
-
- 39
+
+ 7
+ 12
-
- 4
- 14
+
+ 8
+ 13
-
- 5
- 15
+
+ 12
+ 1
-
- 38
+
+ 17
-
+
16
- 0
-
- 6
+
19
-
- 20
- 10
-
-
- 8
- 24
+
+ 2
+ 11
-
+
9
- 25
-
-
- 32
-
-
- 17
- 1
-
-
- 22
- 12
+ 2
-
-
-
-
-
-
-
-
-
-
Cfg_2
Base
@@ -338,7 +246,7 @@
CPlusPlusBuilder.Personality.12
- CppVCLApplication
+ CppConsoleApplication
@@ -372,9 +280,9 @@
-
+ rtcm3_testglo.rtcm3 -tr 2009/12/18 23:20
- False
+ True
@@ -395,28 +303,19 @@
True
False
-
- rtkconv.cpp
-
True
- False
+ True
-
-
- .\
- true
-
-
true
-
-
+
+
.\
true
@@ -426,402 +325,391 @@
true
-
+
.\
true
-
-
- rtkconv.exe
- true
-
-
-
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
- .\
true
-
-
- .\
+
+
true
-
-
+
+
true
-
-
- .\
+
+
true
-
+
true
-
-
+
+
.\
true
-
+
- .\
true
-
-
- rtkconv.exe
+
+
true
-
-
- .\
+
+
true
-
-
+
+
.\
true
-
+
.\
true
-
+
+ .\
true
-
-
+
+
+ .\
true
-
+
.\
true
-
-
+
+
true
-
-
+
+
.\
true
-
+
.\
true
-
-
- .\
+
+
+ _convbin.exe
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
- .\
true
-
+
.\
true
-
-
+
+
+ .\
true
-
+
.\
true
-
-
+
+
+ .\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
-
- .\
+
+
true
-
-
+
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
- .\
true
-
+
- .\
true
-
-
- .\
+
+
true
-
-
- .\
+
+
true
-
-
- .\
+
+
true
-
+
.\
true
-
+
- .\
true
-
+
.\
true
-
-
+
+
true
-
+
+ .\
true
-
-
+
+
+ .\
true
-
+
- true
-
-
-
-
.\
true
-
-
+
+
true
-
+
.\
true
-
+
+ _convbin.exe
+ true
+
+
+
+
+ .\
true
-
+
.\
true
-
+
+ .\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
@@ -831,36 +719,55 @@
true
-
+
+ .\
true
-
+
- .\
true
-
+
.\
true
-
+
.\
true
-
-
- 1
+
+
+ true
-
- Contents\MacOS
- 1
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ 1
0
@@ -871,12 +778,20 @@
classes
1
+
+ classes
+ 1
+
res\xml
1
+
+ res\xml
+ 1
+
@@ -889,103 +804,248 @@
library\lib\armeabi
1
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
library\lib\mips
1
+
+ library\lib\mips
+ 1
+
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
res\values
1
+
+ res\values
+ 1
+
res\values-v21
1
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
res\drawable-xxhdpi
1
+
+ res\drawable-xxhdpi
+ 1
+
res\drawable-ldpi
1
+
+ res\drawable-ldpi
+ 1
+
res\drawable-mdpi
1
+
+ res\drawable-mdpi
+ 1
+
res\drawable-hdpi
1
+
+ res\drawable-hdpi
+ 1
+
res\drawable-xhdpi
1
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
res\drawable-small
1
+
+ res\drawable-small
+ 1
+
res\drawable-normal
1
+
+ res\drawable-normal
+ 1
+
res\drawable-large
1
+
+ res\drawable-large
+ 1
+
res\drawable-xlarge
1
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
1
- Contents\MacOS
1
@@ -994,12 +1054,10 @@
- Contents\MacOS
1
.framework
- Contents\MacOS
1
.framework
@@ -1008,25 +1066,11 @@
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
- Contents\MacOS
1
.dylib
- Contents\MacOS
1
.dylib
@@ -1049,12 +1093,10 @@
.dylib
- Contents\MacOS
1
.dylib
- Contents\MacOS
1
.dylib
@@ -1067,6 +1109,9 @@
0
+
+ 0
+
0
@@ -1077,11 +1122,9 @@
0
- Contents\Resources\StartUp\
0
- Contents\Resources\StartUp\
0
@@ -1099,6 +1142,17 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1110,6 +1164,39 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1121,6 +1208,61 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1132,7 +1274,7 @@
1
-
+
1
@@ -1143,7 +1285,7 @@
1
-
+
1
@@ -1154,7 +1296,7 @@
1
-
+
1
@@ -1165,40 +1307,51 @@
1
-
-
+
+
+ 1
+
+
+ 1
+
+
1
-
+
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
1
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
1
-
+
1
1
+
+ 1
+
-
+
- ..\
1
- ..\
+ 1
+
+
1
-
+
1
@@ -1209,7 +1362,7 @@
1
-
+
1
@@ -1220,32 +1373,107 @@
1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+
+
+ 1
+
+
+ 1
+
+
1
-
-
- ..\
+
+
1
-
- ..\
+
+ 1
+
+
1
-
-
- Contents
+
+
1
-
- Contents
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+
Contents\Resources
@@ -1261,6 +1489,10 @@
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
1
@@ -1274,17 +1506,21 @@
1
- Contents\MacOS
1
- Contents\MacOS
1
0
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
1
@@ -1318,15 +1554,16 @@
-
+
-
+
+
12
-
+
diff --git a/app/convbin/bcc/_convbin.cbproj.local b/app/consapp/convbin/bcc/_convbin.cbproj.local
similarity index 100%
rename from app/convbin/bcc/_convbin.cbproj.local
rename to app/consapp/convbin/bcc/_convbin.cbproj.local
diff --git a/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.res b/app/consapp/convbin/bcc/_convbin.res
similarity index 100%
rename from app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.res
rename to app/consapp/convbin/bcc/_convbin.res
diff --git a/app/convbin/bcc/clean.bat b/app/consapp/convbin/bcc/clean.bat
similarity index 100%
rename from app/convbin/bcc/clean.bat
rename to app/consapp/convbin/bcc/clean.bat
diff --git a/app/consapp/convbin/bcc/install.bat b/app/consapp/convbin/bcc/install.bat
new file mode 100644
index 000000000..d1c194bce
--- /dev/null
+++ b/app/consapp/convbin/bcc/install.bat
@@ -0,0 +1 @@
+copy Release_Build\_convbin.exe ..\..\..\..\..\RTKLIB_bin\bin\convbin.exe
diff --git a/app/convbin/convbin.c b/app/consapp/convbin/convbin.c
similarity index 83%
rename from app/convbin/convbin.c
rename to app/consapp/convbin/convbin.c
index 2ad255baf..1e2182f97 100644
--- a/app/convbin/convbin.c
+++ b/app/consapp/convbin/convbin.c
@@ -1,7 +1,7 @@
/*------------------------------------------------------------------------------
* convbin.c : convert receiver binary log file to rinex obs/nav, sbas messages
*
-* Copyright (C) 2007-2018 by T.TAKASU, All rights reserved.
+* Copyright (C) 2007-2020 by T.TAKASU, All rights reserved.
*
* options : -DWIN32 use windows file path separator
*
@@ -39,11 +39,16 @@
* scan input file: off - on
* number of freq: 2 -> 3
* add option -noscan
+* 2020/11/30 1.20 include NavIC in default systems
+* force option -scan
+* delete option -noscan
+* surppress warnings
*-----------------------------------------------------------------------------*/
#include
#include
#include
#include
+#include
#include "rtklib.h"
#define PRGNAME "CONVBIN"
@@ -81,9 +86,6 @@ static const char *help[]={
" 0x01-01,0x01-02,0x01-03,0x01-04,0x01-06,0x7f-05",
" Trimble : RT17",
" Septentrio : SBF",
-" CMR : CMR Type 0, 1, 2, 3, 4, CMR+ Type 1, 2, 3",
-" TERSUS : RANGECMPB, RANGEB, GPSEPHEMB, GLOEPHEMERISB,",
-" BDSEPHEMERISB",
" RINEX : OBS, NAV, GNAV, HNAV, LNAV, QNAV",
"",
" Options [default]",
@@ -91,29 +93,27 @@ static const char *help[]={
" file input receiver binary log file",
" -ts y/m/d h:m:s start time [all]",
" -te y/m/d h:m:s end time [all]",
-" -tr y/m/d h:m:s approximated time for RTCM/CMR/CMR+ messages",
+" -tr y/m/d h:m:s approximated time for RTCM",
" -ti tint observation data interval (s) [all]",
" -tt ttol observation data epoch tolerance (s) [0.005]",
" -span span time span (h) [all]",
" -r format log format type",
" rtcm2= RTCM 2",
" rtcm3= RTCM 3",
-" nov = NovAtel OEMV/4/6,OEMStar",
+" nov = NovAtel OEM/4/V/6/7,OEMStar",
" oem3 = NovAtel OEM3",
-" ubx = ublox LEA-4T/5T/6T/7T/M8T",
+" ubx = ublox LEA-4T/5T/6T/7T/M8T/F9",
" ss2 = NovAtel Superstar II",
" hemis= Hemisphere Eclipse/Crescent",
" stq = SkyTraq S1315F",
-" javad= Javad",
+" javad= Javad GREIS",
" nvs = NVS NV08C BINR",
" binex= BINEX",
" rt17 = Trimble RT17",
" sbf = Septentrio SBF",
-" cmr = CMR/CMR+",
-" tersus= TERSUS",
" rinex= RINEX",
" -ro opt receiver options",
-" -f freq number of frequencies [3]",
+" -f freq number of frequencies [5]",
" -hc comment rinex header: comment line",
" -hm marker rinex header: marker name",
" -hn markno rinex header: marker number",
@@ -123,14 +123,12 @@ static const char *help[]={
" -ha ant rinex header: antenna number and type separated by /",
" -hp pos rinex header: approx position x/y/z separated by /",
" -hd delta rinex header: antenna delta h/e/n separated by /",
-" -v ver rinex version [2.11]",
-" -od include doppler frequency in rinex obs [off]",
-" -os include snr in rinex obs [off]",
+" -v ver rinex version [3.04]",
+" -od include doppler frequency in rinex obs [on]",
+" -os include snr in rinex obs [on]",
" -oi include iono correction in rinex nav header [off]",
" -ot include time correction in rinex nav header [off]",
" -ol include leap seconds in rinex nav header [off]",
-" -scan scan input file [on]",
-" -noscan no scan input file [off]",
" -halfc half-cycle ambiguity correction [off]",
" -mask [sig[,...]] signal mask(s) (sig={G|R|E|J|S|C|I}L{1C|1P|1W|...})",
" -nomask [sig[,...]] signal no mask (same as above)",
@@ -150,25 +148,28 @@ static const char *help[]={
" -trace level output trace level [off]",
"",
" If any output file specified, default output files (.obs,",
-" .nav, .gnav, .hnav, .qnav, .lnav and",
-" .sbs) are used.",
+" .nav, .gnav, .hnav, .qnav, .lnav,",
+" .cnav, .inav and .sbs) are used. To obtain week number info",
+" for RTCM file, use -tr option to specify the approximated log start time.",
+" Without -tr option, the program obtains the week number from the time-tag file"
+" (if it exists) or the last modified time of the log file instead.",
"",
" If receiver type is not specified, type is recognized by the input",
" file extension as follows.",
" *.rtcm2 RTCM 2",
" *.rtcm3 RTCM 3",
-" *.gps NovAtel OEMV/4/6,OEMStar",
-" *.ubx u-blox LEA-4T/5T/6T/7T/M8T",
+" *.gps NovAtel OEM4/V/6/7,OEMStar",
+" *.ubx u-blox LEA-4T/5T/6T/7T/M8T/F9",
" *.log NovAtel Superstar II",
" *.bin Hemisphere Eclipse/Crescent",
" *.stq SkyTraq S1315F",
-" *.jps Javad",
+" *.jps Javad GREIS",
" *.bnx,*binex BINEX",
" *.rt17 Trimble RT17",
" *.sbf Septentrio SBF",
-" *.cmr CMR/CMR+",
-" *.trs TERSUS",
-" *.obs,*.*o RINEX OBS"
+" *.obs,*.*o RINEX OBS",
+" *.rnx RINEX OBS"
+" *.nav,*.*n RINEX NAV",
};
/* print help ----------------------------------------------------------------*/
static void printhelp(void)
@@ -178,7 +179,7 @@ static void printhelp(void)
exit(0);
}
/* show message --------------------------------------------------------------*/
-extern int showmsg(char *format, ...)
+extern int showmsg(const char *format, ...)
{
va_list arg;
va_start(arg,format); vfprintf(stderr,format,arg); va_end(arg);
@@ -191,10 +192,14 @@ static int convbin(int format, rnxopt_t *opt, const char *ifile, char **file,
{
int i,def;
static char work[1024],ofile_[NOUTFILE][1024]={"","","","","","","","",""};
- char *ofile[NOUTFILE],*p;
- char *extnav=opt->rnxver<=2.99||opt->navsys==SYS_GPS?"N":"P";
- char *extlog=format==STRFMT_LEXR?"lex":"sbs";
+ char ifile_[1024],*ofile[NOUTFILE],*p;
+ char *extnav=(opt->rnxver<=299||opt->navsys==SYS_GPS)?"N":"P";
+ char *extlog="sbs";
+ /* replace wild-card (*) in input file by 0 */
+ strcpy(ifile_,ifile);
+ for (p=ifile_;*p;p++) if (*p=='*') *p='0';
+
def=!file[0]&&!file[1]&&!file[2]&&!file[3]&&!file[4]&&!file[5]&&!file[6]&&
!file[7]&&!file[8];
@@ -205,7 +210,7 @@ static int convbin(int format, rnxopt_t *opt, const char *ifile, char **file,
strcpy(ofile[0],"%r%n0.%yO");
}
else if (def) {
- strcpy(ofile[0],ifile);
+ strcpy(ofile[0],ifile_);
if ((p=strrchr(ofile[0],'.'))) strcpy(p,".obs");
else strcat(ofile[0],".obs");
}
@@ -215,61 +220,61 @@ static int convbin(int format, rnxopt_t *opt, const char *ifile, char **file,
strcat(ofile[1],extnav);
}
else if (def) {
- strcpy(ofile[1],ifile);
+ strcpy(ofile[1],ifile_);
if ((p=strrchr(ofile[1],'.'))) strcpy(p,".nav");
else strcat(ofile[1],".nav");
}
if (file[2]) strcpy(ofile[2],file[2]);
- else if (opt->rnxver<=2.99&&*opt->staid) {
+ else if (opt->rnxver<=299&&*opt->staid) {
strcpy(ofile[2],"%r%n0.%yG");
}
- else if (opt->rnxver<=2.99&&def) {
- strcpy(ofile[2],ifile);
+ else if (opt->rnxver<=299&&def) {
+ strcpy(ofile[2],ifile_);
if ((p=strrchr(ofile[2],'.'))) strcpy(p,".gnav");
else strcat(ofile[2],".gnav");
}
if (file[3]) strcpy(ofile[3],file[3]);
- else if (opt->rnxver<=2.99&&*opt->staid) {
+ else if (opt->rnxver<=299&&*opt->staid) {
strcpy(ofile[3],"%r%n0.%yH");
}
- else if (opt->rnxver<=2.99&&def) {
- strcpy(ofile[3],ifile);
+ else if (opt->rnxver<=299&&def) {
+ strcpy(ofile[3],ifile_);
if ((p=strrchr(ofile[3],'.'))) strcpy(p,".hnav");
else strcat(ofile[3],".hnav");
}
if (file[4]) strcpy(ofile[4],file[4]);
- else if (opt->rnxver<=2.99&&*opt->staid) {
+ else if (opt->rnxver<=299&&*opt->staid) {
strcpy(ofile[4],"%r%n0.%yQ");
}
- else if (opt->rnxver<=2.99&&def) {
- strcpy(ofile[4],ifile);
+ else if (opt->rnxver<=299&&def) {
+ strcpy(ofile[4],ifile_);
if ((p=strrchr(ofile[4],'.'))) strcpy(p,".qnav");
else strcat(ofile[4],".qnav");
}
if (file[5]) strcpy(ofile[5],file[5]);
- else if (opt->rnxver<=2.99&&*opt->staid) {
+ else if (opt->rnxver<=299&&*opt->staid) {
strcpy(ofile[5],"%r%n0.%yL");
}
- else if (opt->rnxver<=2.99&&def) {
- strcpy(ofile[5],ifile);
+ else if (opt->rnxver<=299&&def) {
+ strcpy(ofile[5],ifile_);
if ((p=strrchr(ofile[5],'.'))) strcpy(p,".lnav");
else strcat(ofile[5],".lnav");
}
if (file[6]) strcpy(ofile[6],file[6]);
- else if (opt->rnxver<=2.99&&*opt->staid) {
+ else if (opt->rnxver<=299&&*opt->staid) {
strcpy(ofile[6],"%r%n0.%yC");
}
- else if (opt->rnxver<=2.99&&def) {
- strcpy(ofile[6],ifile);
+ else if (opt->rnxver<=299&&def) {
+ strcpy(ofile[6],ifile_);
if ((p=strrchr(ofile[6],'.'))) strcpy(p,".cnav");
else strcat(ofile[6],".cnav");
}
if (file[7]) strcpy(ofile[7],file[7]);
- else if (opt->rnxver<=2.99&&*opt->staid) {
+ else if (opt->rnxver<=299&&*opt->staid) {
strcpy(ofile[7],"%r%n0.%yI");
}
- else if (opt->rnxver<=2.99&&def) {
- strcpy(ofile[7],ifile);
+ else if (opt->rnxver<=299&&def) {
+ strcpy(ofile[7],ifile_);
if ((p=strrchr(ofile[7],'.'))) strcpy(p,".inav");
else strcat(ofile[7],".inav");
}
@@ -279,7 +284,7 @@ static int convbin(int format, rnxopt_t *opt, const char *ifile, char **file,
strcat(ofile[8],extlog);
}
else if (def) {
- strcpy(ofile[8],ifile);
+ strcpy(ofile[8],ifile_);
if ((p=strrchr(ofile[8],'.'))) strcpy(p,".");
else strcat(ofile[8],".");
strcat(ofile[8],extlog);
@@ -326,24 +331,63 @@ static void setmask(const char *argv, rnxopt_t *opt, int mask)
else if (p[0]=='C') i=5;
else if (p[0]=='I') i=6;
else continue;
- if ((code=obs2code(p+2,NULL))) {
+ if ((code=obs2code(p+2))) {
opt->mask[i][code-1]=mask?'1':'0';
}
}
}
+/* get start time of input file -----------------------------------------------*/
+static int get_filetime(const char *file, gtime_t *time)
+{
+ FILE *fp;
+ struct stat st;
+ struct tm *tm;
+ uint32_t time_time;
+ uint8_t buff[64];
+ double ep[6];
+ char path[1024],*paths[1],path_tag[1024];
+
+ paths[0]=path;
+
+ if (!expath(file,paths,1)) return 0;
+
+ /* get start time of time-tag file */
+ sprintf(path_tag,"%.1019s.tag",path);
+ if ((fp=fopen(path_tag,"rb"))) {
+ if (fread(buff,64,1,fp)==1&&!strncmp((char *)buff,"TIMETAG",7)&&
+ fread(&time_time,4,1,fp)==1) {
+ time->time=time_time;
+ time->sec=0.0;
+ fclose(fp);
+ return 1;
+ }
+ fclose(fp);
+ }
+ /* get modified time of input file */
+ if (!stat(path,&st)&&(tm=gmtime(&st.st_mtime))) {
+ ep[0]=tm->tm_year+1900;
+ ep[1]=tm->tm_mon+1;
+ ep[2]=tm->tm_mday;
+ ep[3]=tm->tm_hour;
+ ep[4]=tm->tm_min;
+ ep[5]=tm->tm_sec;
+ *time=utc2gpst(epoch2time(ep));
+ return 1;
+ }
+ return 0;
+}
/* parse command line options ------------------------------------------------*/
static int cmdopts(int argc, char **argv, rnxopt_t *opt, char **ifile,
char **ofile, char **dir, int *trace)
{
double eps[]={1980,1,1,0,0,0},epe[]={2037,12,31,0,0,0};
double epr[]={2010,1,1,0,0,0},span=0.0;
- int i,j,k,sat,nf=3,nc=2,format=-1;
+ int i,j,k,sat,nf=5,nc=2,format=-1;
char *p,*sys,*fmt="",*paths[1],path[1024],buff[256];
- opt->rnxver=2.11;
+ opt->rnxver=304;
opt->obstype=OBSTYPE_PR|OBSTYPE_CP;
- opt->navsys=SYS_GPS|SYS_GLO|SYS_GAL|SYS_QZS|SYS_SBS|SYS_CMP;
- opt->scanobs=1;
+ opt->navsys=SYS_GPS|SYS_GLO|SYS_GAL|SYS_QZS|SYS_SBS|SYS_CMP|SYS_IRN;
for (i=0;i<6;i++) for (j=0;j<64;j++) opt->mask[i][j]='1';
@@ -424,7 +468,7 @@ static int cmdopts(int argc, char **argv, rnxopt_t *opt, char **ifile,
}
}
else if (!strcmp(argv[i],"-v" )&&i+1rnxver=atof(argv[++i]);
+ opt->rnxver=(int)(atof(argv[++i])*100.0);
}
else if (!strcmp(argv[i],"-od")) {
opt->obstype|=OBSTYPE_DOP;
@@ -442,10 +486,7 @@ static int cmdopts(int argc, char **argv, rnxopt_t *opt, char **ifile,
opt->outleaps=1;
}
else if (!strcmp(argv[i],"-scan")) {
- opt->scanobs=1;
- }
- else if (!strcmp(argv[i],"-noscan")) {
- opt->scanobs=0;
+ /* obsolute */ ;
}
else if (!strcmp(argv[i],"-halfc")) {
opt->halfcyc=1;
@@ -497,12 +538,13 @@ static int cmdopts(int argc, char **argv, rnxopt_t *opt, char **ifile,
}
if (nf>=1) opt->freqtype|=FREQTYPE_L1;
if (nf>=2) opt->freqtype|=FREQTYPE_L2;
- if (nf>=3) opt->freqtype|=FREQTYPE_L5;
- if (nf>=4) opt->freqtype|=FREQTYPE_L6;
- if (nf>=5) opt->freqtype|=FREQTYPE_L7;
- if (nf>=6) opt->freqtype|=FREQTYPE_L8;
- if (nf>=7) opt->freqtype|=FREQTYPE_L9;
+ if (nf>=3) opt->freqtype|=FREQTYPE_L3;
+ if (nf>=4) opt->freqtype|=FREQTYPE_L4;
+ if (nf>=5) opt->freqtype|=FREQTYPE_L5;
+ if (!opt->trtcm.time) {
+ get_filetime(*ifile,&opt->trtcm);
+ }
if (*fmt) {
if (!strcmp(fmt,"rtcm2")) format=STRFMT_RTCM2;
else if (!strcmp(fmt,"rtcm3")) format=STRFMT_RTCM3;
@@ -517,8 +559,6 @@ static int cmdopts(int argc, char **argv, rnxopt_t *opt, char **ifile,
else if (!strcmp(fmt,"binex")) format=STRFMT_BINEX;
else if (!strcmp(fmt,"rt17" )) format=STRFMT_RT17;
else if (!strcmp(fmt,"sbf" )) format=STRFMT_SEPT;
- else if (!strcmp(fmt,"cmr" )) format=STRFMT_CMR;
- else if (!strcmp(fmt,"tersus")) format=STRFMT_TERSUS;
else if (!strcmp(fmt,"rinex")) format=STRFMT_RINEX;
}
else {
@@ -536,11 +576,13 @@ static int cmdopts(int argc, char **argv, rnxopt_t *opt, char **ifile,
else if (!strcmp(p,".binex")) format=STRFMT_BINEX;
else if (!strcmp(p,".rt17" )) format=STRFMT_RT17;
else if (!strcmp(p,".sbf" )) format=STRFMT_SEPT;
- else if (!strcmp(p,".cmr" )) format=STRFMT_CMR;
- else if (!strcmp(p,".trs" )) format=STRFMT_TERSUS;
else if (!strcmp(p,".obs" )) format=STRFMT_RINEX;
else if (!strcmp(p+3,"o" )) format=STRFMT_RINEX;
else if (!strcmp(p+3,"O" )) format=STRFMT_RINEX;
+ else if (!strcmp(p,".rnx" )) format=STRFMT_RINEX;
+ else if (!strcmp(p,".nav" )) format=STRFMT_RINEX;
+ else if (!strcmp(p+3,"n" )) format=STRFMT_RINEX;
+ else if (!strcmp(p+3,"N" )) format=STRFMT_RINEX;
}
return format;
}
@@ -563,12 +605,7 @@ int main(int argc, char **argv)
return -1;
}
sprintf(opt.prog,"%s %s",PRGNAME,VER_RTKLIB);
- sprintf(opt.comment[0],"log: %-55.55s",ifile);
- sprintf(opt.comment[1],"format: %s",formatstrs[format]);
- if (*opt.rcvopt) {
- strcat(opt.comment[1],", option: ");
- strcat(opt.comment[1],opt.rcvopt);
- }
+
if (trace>0) {
traceopen(TRACEFILE);
tracelevel(trace);
diff --git a/app/convbin/gcc/makefile b/app/consapp/convbin/gcc/makefile
similarity index 85%
rename from app/convbin/gcc/makefile
rename to app/consapp/convbin/gcc/makefile
index bc4428393..925f86159 100644
--- a/app/convbin/gcc/makefile
+++ b/app/consapp/convbin/gcc/makefile
@@ -4,21 +4,22 @@
BINDIR = /usr/local/bin
-SRC = ../../../src
+SRC = ../../../../src
INCLUDE= -I$(SRC)
-OPTIONS= -DTRACE -DENAGLO -DENAQZS -DENAGAL -DENACMP -DENAIRN -DNFREQ=7 -DNEXOBS=3
+OPTIONS= -DTRACE -DENAGLO -DENAQZS -DENAGAL -DENACMP -DENAIRN -DNFREQ=5 -DNEXOBS=3
-CFLAGS = -O3 -ansi -pedantic -Wall -Wno-unused-but-set-variable $(INCLUDE) $(OPTIONS) -g
+#CFLAGS = -O3 -ansi -pedantic -Wall -Wno-unused-but-set-variable $(INCLUDE) $(OPTIONS) -g
+CFLAGS = -ansi -Wall -Wno-unused-but-set-variable $(INCLUDE) $(OPTIONS) -g
LDLIBS = -lm -lrt
all : convbin
convbin : convbin.o rtkcmn.o rinex.o sbas.o preceph.o rcvraw.o convrnx.o
-convbin : rtcm.o rtcm2.o rtcm3.o rtcm3e.o pntpos.o ephemeris.o ionex.o
-convbin : novatel.o ss2.o ublox.o crescent.o skytraq.o gw10.o javad.o nvs.o
-convbin : binex.o rt17.o qzslex.o septentrio.o cmr.o tersus.o
+convbin : rtcm.o rtcm2.o rtcm3.o rtcm3e.o cssr.o pntpos.o ephemeris.o ionex.o
+convbin : novatel.o ss2.o ublox.o crescent.o skytraq.o javad.o nvs.o
+convbin : binex.o rt17.o septentrio.o
convbin.o : ../convbin.c
$(CC) -c $(CFLAGS) ../convbin.c
@@ -42,6 +43,8 @@ rtcm3.o : $(SRC)/rtcm3.c
$(CC) -c $(CFLAGS) $(SRC)/rtcm3.c
rtcm3e.o : $(SRC)/rtcm3e.c
$(CC) -c $(CFLAGS) $(SRC)/rtcm3e.c
+cssr.o : $(SRC)/cssr.c
+ $(CC) -c $(CFLAGS) $(SRC)/cssr.c
pntpos.o : $(SRC)/pntpos.c
$(CC) -c $(CFLAGS) $(SRC)/pntpos.c
ionex.o : $(SRC)/ionex.c
@@ -58,8 +61,6 @@ crescent.o : $(SRC)/rcv/crescent.c
$(CC) -c $(CFLAGS) $(SRC)/rcv/crescent.c
skytraq.o : $(SRC)/rcv/skytraq.c
$(CC) -c $(CFLAGS) $(SRC)/rcv/skytraq.c
-gw10.o : $(SRC)/rcv/gw10.c
- $(CC) -c $(CFLAGS) $(SRC)/rcv/gw10.c
javad.o : $(SRC)/rcv/javad.c
$(CC) -c $(CFLAGS) $(SRC)/rcv/javad.c
nvs.o : $(SRC)/rcv/nvs.c
@@ -68,14 +69,8 @@ binex.o : $(SRC)/rcv/binex.c
$(CC) -c $(CFLAGS) $(SRC)/rcv/binex.c
rt17.o : $(SRC)/rcv/rt17.c
$(CC) -c $(CFLAGS) $(SRC)/rcv/rt17.c
-qzslex.o : $(SRC)/qzslex.c
- $(CC) -c $(CFLAGS) $(SRC)/qzslex.c
septentrio.o: $(SRC)/rcv/septentrio.c
$(CC) -c $(CFLAGS) $(SRC)/rcv/septentrio.c
-cmr.o : $(SRC)/rcv/cmr.c
- $(CC) -c $(CFLAGS) $(SRC)/rcv/cmr.c
-tersus.o : $(SRC)/rcv/tersus.c
- $(CC) -c $(CFLAGS) $(SRC)/rcv/tersus.c
convbin.o : $(SRC)/rtklib.h
rtkcmn.o : $(SRC)/rtklib.h
@@ -96,17 +91,13 @@ ss2.o : $(SRC)/rtklib.h
ublox.o : $(SRC)/rtklib.h
crescent.o : $(SRC)/rtklib.h
skytraq.o : $(SRC)/rtklib.h
-gw10.o : $(SRC)/rtklib.h
javad.o : $(SRC)/rtklib.h
nvs.o : $(SRC)/rtklib.h
binex.o : $(SRC)/rtklib.h
rt17.o : $(SRC)/rtklib.h
-qzslex.o : $(SRC)/rtklib.h
septentrio.o: $(SRC)/rtklib.h
-cmr.o : $(SRC)/rtklib.h
-tersus.o : $(SRC)/rtklib.h
-DATDIR = ../../../test/data/rcvraw
+DATDIR = ../../../../test/data/rcvraw
install:
cp convbin $(BINDIR)
@@ -155,4 +146,6 @@ test21:
stty raw < /dev/ttyACM0
./convbin -r ubx -o ubx.obs -n ubx.nav -s ubx.sbs -h ubx.hnav /dev/ttyACM0
-
+test30:
+ ./convbin $(DATDIR)/JAV32021212m.jps -trace 4 -d out -v 3.04 -f 5 -od -os
+
diff --git a/app/install_consapp.bat b/app/consapp/install_consapp.bat
similarity index 72%
rename from app/install_consapp.bat
rename to app/consapp/install_consapp.bat
index a949e9bd0..661e178f2 100644
--- a/app/install_consapp.bat
+++ b/app/consapp/install_consapp.bat
@@ -7,6 +7,3 @@ cd ..\..
cd pos2kml\bcc
call install.bat
cd ..\..
-cd rnx2rtkp\bcc_win64
-call install.bat
-cd ..\..
diff --git a/app/makefile b/app/consapp/makefile
similarity index 90%
rename from app/makefile
rename to app/consapp/makefile
index 7510a751c..d812d9e25 100644
--- a/app/makefile
+++ b/app/consapp/makefile
@@ -1,6 +1,8 @@
#
# make all cui applications by gcc
#
+#export CC = clang
+export CC = gcc
BINDIR = /usr/local/bin
DIRS = pos2kml str2str rnx2rtkp convbin rtkrcv
diff --git a/app/pos2kml/bcc/_pos2kml.cbproj b/app/consapp/pos2kml/bcc/_pos2kml.cbproj
similarity index 82%
rename from app/pos2kml/bcc/_pos2kml.cbproj
rename to app/consapp/pos2kml/bcc/_pos2kml.cbproj
index 8ed5ce7c6..f09cc68b0 100644
--- a/app/pos2kml/bcc/_pos2kml.cbproj
+++ b/app/consapp/pos2kml/bcc/_pos2kml.cbproj
@@ -5,9 +5,9 @@
True
Release
None
- 18.6
- Win32
- 1
+ 18.8
+ Win64
+ 3
Console
@@ -61,23 +61,23 @@
$(BDS)\bin\cbuilder_PROJECTICNS.icns
_pos2kml
CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
- ..\;..\..\..\src\;$(IncludePath)
+ ..\;..\..\..\..\src\;$(IncludePath)
System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
None
_pos2kml_Icon.ico
1041
vclx.bpi;vcl.bpi;rtl.bpi;dbrtl.bpi;vcldb.bpi;dbxcds.bpi;dbexpress.bpi;xmlrtl.bpi;vclie.bpi;inet.bpi;inetdbbde.bpi;inetdbxpress.bpi;dsnap.bpi;adortl.bpi;soaprtl.bpi;bdertl.bpi;vcldbx.bpi;$(PackageImports)
- ..\;..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ObjPath)
- ..\;..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
+ ..\;..\..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
+ ..\..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ObjPath)
+ ..\;..\..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
false
- ..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(ILINK_ObjectSearchPath)
+ ..\..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
+ ..\..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(ILINK_ObjectSearchPath)
false
- ..\..\..\src;$(BDS)\include;$(BCC_IncludePath)
- ..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ResourcePath)
- ..\..\..\src\;..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(BDS)\lib;$(ILINK_LibraryPath)
+ ..\..\..\..\src;$(BDS)\include;$(BCC_IncludePath)
+ ..\..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
+ ..\..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ResourcePath)
+ ..\..\..\..\src\;..\..\..\..\src;..\;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(BDS)\lib;$(ILINK_LibraryPath)
JPHNE
@@ -95,6 +95,10 @@
_RTLDLL;WIN32;$(BCC_Defines)
_RTLDLL;_NO_VCL;WIN32;$(BRCC_Defines)
_RTLDLL;_NO_VCL;WIN32;$(TASM_Defines)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
-V
@@ -142,25 +146,25 @@
5
1
-
+
6
-
+
-1
1
-
+
3
2
-
+
5
-
+
4
2
-
+
4
0
@@ -239,7 +243,7 @@
True
- False
+ True
12
diff --git a/app/pos2kml/bcc/_pos2kml.cbproj.local b/app/consapp/pos2kml/bcc/_pos2kml.cbproj.local
similarity index 100%
rename from app/pos2kml/bcc/_pos2kml.cbproj.local
rename to app/consapp/pos2kml/bcc/_pos2kml.cbproj.local
diff --git a/app/pos2kml/bcc/_pos2kml.res b/app/consapp/pos2kml/bcc/_pos2kml.res
similarity index 98%
rename from app/pos2kml/bcc/_pos2kml.res
rename to app/consapp/pos2kml/bcc/_pos2kml.res
index 3dd609e48..2d884aefa 100644
Binary files a/app/pos2kml/bcc/_pos2kml.res and b/app/consapp/pos2kml/bcc/_pos2kml.res differ
diff --git a/app/pos2kml/bcc/_pos2kml_Icon.ico b/app/consapp/pos2kml/bcc/_pos2kml_Icon.ico
similarity index 100%
rename from app/pos2kml/bcc/_pos2kml_Icon.ico
rename to app/consapp/pos2kml/bcc/_pos2kml_Icon.ico
diff --git a/app/pos2kml/bcc/clean.bat b/app/consapp/pos2kml/bcc/clean.bat
similarity index 100%
rename from app/pos2kml/bcc/clean.bat
rename to app/consapp/pos2kml/bcc/clean.bat
diff --git a/app/consapp/pos2kml/bcc/install.bat b/app/consapp/pos2kml/bcc/install.bat
new file mode 100644
index 000000000..4711c1ce6
--- /dev/null
+++ b/app/consapp/pos2kml/bcc/install.bat
@@ -0,0 +1 @@
+copy Release_Build\_pos2kml.exe ..\..\..\..\..\RTKLIB_bin\bin\pos2kml.exe
diff --git a/app/pos2kml/gcc/makefile b/app/consapp/pos2kml/gcc/makefile
similarity index 97%
rename from app/pos2kml/gcc/makefile
rename to app/consapp/pos2kml/gcc/makefile
index 7b1f98423..032f309ba 100644
--- a/app/pos2kml/gcc/makefile
+++ b/app/consapp/pos2kml/gcc/makefile
@@ -1,7 +1,7 @@
# makefile for pos2kml
BINDIR = /usr/local/bin
-SRC = ../../../src
+SRC = ../../../../src
CFLAGS = -Wall -O3 -ansi -pedantic -I$(SRC) -DTRACE
LDLIBS = -lm -lrt
diff --git a/app/pos2kml/pos2kml.c b/app/consapp/pos2kml/pos2kml.c
similarity index 100%
rename from app/pos2kml/pos2kml.c
rename to app/consapp/pos2kml/pos2kml.c
diff --git a/app/rnx2rtkp/bcc/_rnx2rtkp.bpf b/app/consapp/rnx2rtkp/bcc/_rnx2rtkp.bpf
similarity index 100%
rename from app/rnx2rtkp/bcc/_rnx2rtkp.bpf
rename to app/consapp/rnx2rtkp/bcc/_rnx2rtkp.bpf
diff --git a/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj b/app/consapp/rnx2rtkp/bcc/_rnx2rtkp.cbproj
similarity index 63%
rename from app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj
rename to app/consapp/rnx2rtkp/bcc/_rnx2rtkp.cbproj
index 37eba3e10..67277a5f5 100644
--- a/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj
+++ b/app/consapp/rnx2rtkp/bcc/_rnx2rtkp.cbproj
@@ -1,11 +1,11 @@
- {4C655A91-5D3B-4A33-B486-490384406D39}
+ {1D91F63F-0154-4396-A76F-6467DD904836}
CppConsoleApplication
True
Release
None
- 18.6
+ 18.8
Win64
3
Console
@@ -58,38 +58,32 @@
true
- _rnx2rtkp_win64
- false
- $(BDS)\bin\cbuilder_PROJECTICNS.icns
- false
- false
- false
+ _rnx2rtkp
$(BDS)\bin\cbuilder_PROJECTICON.ico
- false
- false
- false
- WIN32;ENAGLO;ENAGAL;ENAQZS;ENACMP;ENAIRN;NFREQ=3;TRACE;$(BCC_Defines)
+ $(BDS)\bin\cbuilder_PROJECTICNS.icns
false
None
System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
1041
- ..\;..\..\..\src\;$(IncludePath)
- ..\;..\..\..\src\rcv;..\..\convbin;..\..\pos2kml;..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ObjPath)
- ..\;..\..\..\src\rcv;..\..\convbin;..\..\pos2kml;..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
+ ..\;..\..\..\..\src\;$(IncludePath)
+ vclx.bpi;vcl.bpi;rtl.bpi;dbrtl.bpi;vcldb.bpi;dbxcds.bpi;dbexpress.bpi;xmlrtl.bpi;vclie.bpi;inet.bpi;inetdbbde.bpi;inetdbxpress.bpi;dsnap.bpi;adortl.bpi;soaprtl.bpi;bdertl.bpi;vcldbx.bpi;$(PackageImports)
+ ..\;..\..\..\..\src\rcv;..\..\convbin;..\..\pos2kml;..\..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
+ ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\..\src\rcv;..\..\convbin;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ObjPath)
+ ..\;..\..\..\..\src\rcv;..\..\convbin;..\..\pos2kml;..\..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
false
- ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(ILINK_ObjectSearchPath)
+ ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\..\src\rcv;..\..\convbin;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
+ ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\..\src\rcv;..\..\convbin;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(ILINK_ObjectSearchPath)
false
- ..\..\..\src\rcv;..\..\convbin;..\..\pos2kml;..\..\..\src;$(BDS)\include;$(BCC_IncludePath)
- ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ResourcePath)
- ..\..\..\src\;..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(BDS)\lib;$(BDS)\lib\obj;$(BDS)\lib\psdk;$(ILINK_LibraryPath)
+ ..\..\..\..\src\rcv;..\..\convbin;..\..\pos2kml;..\..\..\..\src;$(BDS)\include;$(BCC_IncludePath)
+ ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\..\src\rcv;..\..\convbin;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
+ ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\..\src\rcv;..\..\convbin;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ResourcePath)
+ ..\..\..\..\src\;..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\..\src\rcv;..\..\convbin;..\..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(BDS)\lib;$(BDS)\lib\obj;$(BDS)\lib\psdk;$(ILINK_LibraryPath)
JPHNE
exe
+ _RTLDLL;WIN32;ENAGLO;ENAGAL;ENAQZS;ENACMP;NFREQ=3;TRACE;$(BCC_Defines)
-tWM -tWC -wvoi
_RTLDLL;_NO_VCL;WIN32;ENAGLO;ENAQZS;TRACE;$(TASM_Defines)
_RTLDLL;_NO_VCL;WIN32;ENAGLO;ENAQZS;TRACE;$(BRCC_Defines)
@@ -98,10 +92,13 @@
true
- 1033
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ _RTLDLL;WIN32;ENAGLO;ENAGAL;ENAQZS;ENACMP;NFREQ=3;TRACE;$(BCC_Defines)
_RTLDLL;_NO_VCL;WIN32;ENAGLO;ENAQZS;TRACE;$(BRCC_Defines)
_RTLDLL;_NO_VCL;WIN32;ENAGLO;ENAQZS;TRACE;$(TASM_Defines)
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
-V
@@ -119,12 +116,10 @@
true
- 1033
-tWM -tWC -wvoi -k
_DEBUG;$(BCC_Defines);$(BCC_Defines)
- 1033
_DEBUG;$(BCC_Defines);$(BCC_Defines)
@@ -144,95 +139,86 @@
1033
- 1033
NDEBUG;$(BCC_Defines);$(BCC_Defines)
- true
- false
6
15
-
+
6
13
-
+
9
4
-
+
5
16
-
+
3
10
-
+
11
0
-
+
12
1
-
+
8
13
-
+
7
14
-
+
18
-
- 21
-
-
+
9
2
-
- 22
-
-
+
5
14
-
+
4
15
-
+
17
-
+
16
-
+
21
-
+
-1
1
-
+
7
12
-
+
2
11
-
+
8
3
-
+
22
@@ -300,10 +286,7 @@
True
False
-
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
-
+
False
True
@@ -316,24 +299,13 @@
True
-
-
- .\
- true
-
-
true
-
-
- true
-
-
-
-
+
+
.\
true
@@ -343,269 +315,193 @@
true
-
-
- _rnx2rtkp_win64.exe
+
+
true
-
-
+
+
+ _rnx2rtkp.exe
true
-
-
+
+
.\
true
-
+
+ .\
true
-
+
- true
-
-
-
-
.\
true
-
-
+
+
+ .\
true
-
-
+
+
+ .\
true
-
-
+
+
+ .\
true
-
-
+
+
.\
true
-
-
+
+
+ .\
true
-
-
+
+
.\
true
-
+
true
-
-
- true
-
-
-
-
- .\
+
+
true
-
+
true
-
+
- .\
true
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
+
+
true
-
+
true
-
-
+
+
true
-
-
- .\
+
+
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
- true
-
-
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
- true
-
-
-
-
+
+
.\
true
-
-
- true
-
-
-
-
- true
-
-
-
+
true
-
+
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
.\
true
-
-
- .\
+
+
true
-
+
- .\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
+ .\
true
-
+
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
.\
true
-
-
- .\
+
+
true
-
-
+
+
.\
true
@@ -623,12 +519,20 @@
classes
1
+
+ classes
+ 1
+
res\xml
1
+
+ res\xml
+ 1
+
@@ -641,96 +545,242 @@
library\lib\armeabi
1
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
library\lib\mips
1
+
+ library\lib\mips
+ 1
+
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
res\values
1
+
+ res\values
+ 1
+
res\values-v21
1
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
res\drawable-xxhdpi
1
+
+ res\drawable-xxhdpi
+ 1
+
res\drawable-ldpi
1
+
+ res\drawable-ldpi
+ 1
+
res\drawable-mdpi
1
+
+ res\drawable-mdpi
+ 1
+
res\drawable-hdpi
1
+
+ res\drawable-hdpi
+ 1
+
res\drawable-xhdpi
1
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
res\drawable-small
1
+
+ res\drawable-small
+ 1
+
res\drawable-normal
1
+
+ res\drawable-normal
+ 1
+
res\drawable-large
1
+
+ res\drawable-large
+ 1
+
res\drawable-xlarge
1
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
@@ -800,6 +850,9 @@
0
+
+ 0
+
0
@@ -819,7 +872,95 @@
0
-
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
1
@@ -830,7 +971,7 @@
1
-
+
1
@@ -841,7 +982,7 @@
1
-
+
1
@@ -852,7 +993,84 @@
1
-
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
1
@@ -896,10 +1114,35 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
+
+ 1
+
@@ -943,6 +1186,10 @@
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
1
@@ -965,6 +1212,12 @@
0
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
1
@@ -1002,11 +1255,12 @@
+
12
-
+
diff --git a/app/rnx2rtkp/bcc/_rnx2rtkp.cbproj.local b/app/consapp/rnx2rtkp/bcc/_rnx2rtkp.cbproj.local
similarity index 100%
rename from app/rnx2rtkp/bcc/_rnx2rtkp.cbproj.local
rename to app/consapp/rnx2rtkp/bcc/_rnx2rtkp.cbproj.local
diff --git a/app/rnx2rtkp/bcc/_rnx2rtkp.res b/app/consapp/rnx2rtkp/bcc/_rnx2rtkp.res
similarity index 99%
rename from app/rnx2rtkp/bcc/_rnx2rtkp.res
rename to app/consapp/rnx2rtkp/bcc/_rnx2rtkp.res
index 354c542a2..6ae079856 100644
Binary files a/app/rnx2rtkp/bcc/_rnx2rtkp.res and b/app/consapp/rnx2rtkp/bcc/_rnx2rtkp.res differ
diff --git a/app/rnx2rtkp/bcc/clean.bat b/app/consapp/rnx2rtkp/bcc/clean.bat
similarity index 100%
rename from app/rnx2rtkp/bcc/clean.bat
rename to app/consapp/rnx2rtkp/bcc/clean.bat
diff --git a/app/consapp/rnx2rtkp/bcc/install.bat b/app/consapp/rnx2rtkp/bcc/install.bat
new file mode 100644
index 000000000..4c8ae0ac8
--- /dev/null
+++ b/app/consapp/rnx2rtkp/bcc/install.bat
@@ -0,0 +1 @@
+copy Release_Build\_rnx2rtkp.exe ..\..\..\..\..\RTKLIB_bin\bin\rnx2rtkp.exe
diff --git a/app/rnx2rtkp/gcc/makefile b/app/consapp/rnx2rtkp/gcc/makefile
similarity index 93%
rename from app/rnx2rtkp/gcc/makefile
rename to app/consapp/rnx2rtkp/gcc/makefile
index 3db8d0bd4..e326072b4 100644
--- a/app/rnx2rtkp/gcc/makefile
+++ b/app/consapp/rnx2rtkp/gcc/makefile
@@ -1,15 +1,15 @@
# makefile for rnx2rtkp
BINDIR = /usr/local/bin
-SRC = ../../../src
+SRC = ../../../../src
-#OPTS = -DTRACE -DENAGLO -DENAQZS -DENAGAL -DENACMP -DENAIRN -DNFREQ=3
-OPTS = -DTRACE -DENAGLO -DENAQZS -DENAGAL -DENACMP -DENAIRN -DNFREQ=3 -DIERS_MODEL
+OPTS = -DTRACE -DENAGLO -DENAQZS -DENAGAL -DENACMP -DENAIRN -DNFREQ=5
+#OPTS = -DTRACE -DENAGLO -DENAQZS -DENAGAL -DENACMP -DENAIRN -DNFREQ=5 -DIERS_MODEL
#OPTS = -DENAGLO -DENAQZS -DENAGAL -DENACMP -DNFREQ=2
# for no lapack
CFLAGS = -Wall -O3 -ansi -pedantic -Wno-unused-but-set-variable -I$(SRC) $(OPTS) -g
#LDLIBS = -lm -lrt
-LDLIBS = ../../../lib/iers/gcc/iers.a -lgfortran -lm -lrt
+LDLIBS = ../../../../lib/iers/gcc/iers.a -lgfortran -lm -lrt
#CFLAGS = -Wall -O3 -ansi -pedantic -Wno-unused-but-set-variable -I$(SRC) -DLAPACK $(OPTS)
#LDLIBS = -lm -lrt -llapack -lblas
@@ -27,7 +27,7 @@ LDLIBS = ../../../lib/iers/gcc/iers.a -lgfortran -lm -lrt
all : rnx2rtkp
rnx2rtkp : rnx2rtkp.o rtkcmn.o rinex.o rtkpos.o postpos.o solution.o
rnx2rtkp : lambda.o geoid.o sbas.o preceph.o pntpos.o ephemeris.o options.o
-rnx2rtkp : ppp.o ppp_ar.o ppp_corr.o rtcm.o rtcm2.o rtcm3.o rtcm3e.o ionex.o tides.o qzslex.o
+rnx2rtkp : ppp.o ppp_ar.o rtcm.o rtcm2.o rtcm3.o rtcm3e.o ionex.o tides.o
rnx2rtkp.o : ../rnx2rtkp.c
$(CC) -c $(CFLAGS) ../rnx2rtkp.c
@@ -59,8 +59,6 @@ ppp.o : $(SRC)/ppp.c
$(CC) -c $(CFLAGS) $(SRC)/ppp.c
ppp_ar.o : $(SRC)/ppp_ar.c
$(CC) -c $(CFLAGS) $(SRC)/ppp_ar.c
-ppp_corr.o : $(SRC)/ppp_corr.c
- $(CC) -c $(CFLAGS) $(SRC)/ppp_corr.c
rtcm.o : $(SRC)/rtcm.c
$(CC) -c $(CFLAGS) $(SRC)/rtcm.c
rtcm2.o : $(SRC)/rtcm2.c
@@ -73,8 +71,6 @@ ionex.o : $(SRC)/ionex.c
$(CC) -c $(CFLAGS) $(SRC)/ionex.c
tides.o : $(SRC)/tides.c
$(CC) -c $(CFLAGS) $(SRC)/tides.c
-qzslex.o : $(SRC)/qzslex.c
- $(CC) -c $(CFLAGS) $(SRC)/qzslex.c
rnx2rtkp.o : $(SRC)/rtklib.h
rtkcmn.o : $(SRC)/rtklib.h
@@ -97,7 +93,6 @@ rtcm3.o : $(SRC)/rtklib.h
rtcm3e.o : $(SRC)/rtklib.h
ionex.o : $(SRC)/rtklib.h
tides.o : $(SRC)/rtklib.h
-qzslex.o : $(SRC)/rtklib.h
CMD1 = ./rnx2rtkp
INPUT11 = ../../../test/data/rinex/07590920.05o ../../../test/data/rinex/30400920.05n
diff --git a/app/rnx2rtkp/gcc/opts1.conf b/app/consapp/rnx2rtkp/gcc/opts1.conf
similarity index 100%
rename from app/rnx2rtkp/gcc/opts1.conf
rename to app/consapp/rnx2rtkp/gcc/opts1.conf
diff --git a/app/rnx2rtkp/gcc/opts2.conf b/app/consapp/rnx2rtkp/gcc/opts2.conf
similarity index 100%
rename from app/rnx2rtkp/gcc/opts2.conf
rename to app/consapp/rnx2rtkp/gcc/opts2.conf
diff --git a/app/rnx2rtkp/gcc/opts3.conf b/app/consapp/rnx2rtkp/gcc/opts3.conf
similarity index 100%
rename from app/rnx2rtkp/gcc/opts3.conf
rename to app/consapp/rnx2rtkp/gcc/opts3.conf
diff --git a/app/rnx2rtkp/gcc/opts4.conf b/app/consapp/rnx2rtkp/gcc/opts4.conf
similarity index 100%
rename from app/rnx2rtkp/gcc/opts4.conf
rename to app/consapp/rnx2rtkp/gcc/opts4.conf
diff --git a/app/rnx2rtkp/gcc_mkl/makefile b/app/consapp/rnx2rtkp/gcc_mkl/makefile
similarity index 99%
rename from app/rnx2rtkp/gcc_mkl/makefile
rename to app/consapp/rnx2rtkp/gcc_mkl/makefile
index 39695845c..dc8c8238a 100644
--- a/app/rnx2rtkp/gcc_mkl/makefile
+++ b/app/consapp/rnx2rtkp/gcc_mkl/makefile
@@ -1,7 +1,7 @@
# makefile for rnx2rtkp
BINDIR = /usr/local/bin
-SRC = ../../../src
+SRC = ../../../../src
OPTS = -DTRACE -DENAGLO -DENAQZS -DENAGAL -DENACMP -DENAIRN -DNFREQ=3
#OPTS = -DENAGLO -DENAQZS -DENAGAL -DENACMP -DNFREQ=2
diff --git a/app/rnx2rtkp/rnx2rtkp.c b/app/consapp/rnx2rtkp/rnx2rtkp.c
similarity index 99%
rename from app/rnx2rtkp/rnx2rtkp.c
rename to app/consapp/rnx2rtkp/rnx2rtkp.c
index f3144aedb..54fe48a48 100644
--- a/app/rnx2rtkp/rnx2rtkp.c
+++ b/app/consapp/rnx2rtkp/rnx2rtkp.c
@@ -73,7 +73,7 @@ static const char *help[]={
" -x level debug trace level (0:off) [0]"
};
/* show message --------------------------------------------------------------*/
-extern int showmsg(char *format, ...)
+extern int showmsg(const char *format, ...)
{
va_list arg;
va_start(arg,format); vfprintf(stderr,format,arg); va_end(arg);
diff --git a/app/rtklib_consapp.groupproj b/app/consapp/rtklib_consapp.groupproj
similarity index 76%
rename from app/rtklib_consapp.groupproj
rename to app/consapp/rtklib_consapp.groupproj
index b1cc857e6..eb5253f88 100644
--- a/app/rtklib_consapp.groupproj
+++ b/app/consapp/rtklib_consapp.groupproj
@@ -12,9 +12,6 @@
-
-
-
Default.Personality.12
@@ -50,23 +47,14 @@
-
-
-
-
-
-
-
-
-
-
+
-
+
-
+
diff --git a/app/consapp/rtklib_consapp.groupproj.local b/app/consapp/rtklib_consapp.groupproj.local
new file mode 100644
index 000000000..94178dff2
--- /dev/null
+++ b/app/consapp/rtklib_consapp.groupproj.local
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/app/rtkrcv/conf/rtk.conf b/app/consapp/rtkrcv/conf/rtk.conf
similarity index 100%
rename from app/rtkrcv/conf/rtk.conf
rename to app/consapp/rtkrcv/conf/rtk.conf
diff --git a/app/rtkrcv/conf/single.conf b/app/consapp/rtkrcv/conf/single.conf
similarity index 100%
rename from app/rtkrcv/conf/single.conf
rename to app/consapp/rtkrcv/conf/single.conf
diff --git a/app/rtkrcv/gcc/makefile b/app/consapp/rtkrcv/gcc/makefile
similarity index 82%
rename from app/rtkrcv/gcc/makefile
rename to app/consapp/rtkrcv/gcc/makefile
index a6baf5a7c..33846dbdc 100644
--- a/app/rtkrcv/gcc/makefile
+++ b/app/consapp/rtkrcv/gcc/makefile
@@ -1,21 +1,21 @@
# makefile for rtkrcv
BINDIR = /usr/local/bin
-SRC = ../../../src
+SRC = ../../../../src
-# for beagleboard
-#CTARGET= -mfpu=neon -mfloat-abi=softfp -ffast-math
-CTARGET= -DENAGLO -DENAQZS -DENACMP -DENAGAL -DENAIRN -DNFREQ=3 -DSVR_REUSEADDR
+CTARGET= -DENAGLO -DENAQZS -DENACMP -DENAGAL -DENAIRN -DNFREQ=5 -DSVR_REUSEADDR
+#CTARGET= -DENAGLO -DENAQZS -DENACMP -DENAGAL -DENAIRN -DNFREQ=3 -DIERS_MODEL -DSVR_REUSEADDR
CFLAGS = -Wall -O3 -ansi -pedantic -Wno-unused-but-set-variable -I$(SRC) -I.. -DTRACE $(CTARGET) -g
LDLIBS = -lm -lrt -lpthread
+#LDLIBS = ../../../lib/iers/gcc/iers.a -lm -lrt -lpthread
all : rtkrcv
rtkrcv : rtkrcv.o vt.o rtkcmn.o rtksvr.o rtkpos.o geoid.o solution.o lambda.o
rtkrcv : sbas.o stream.o rcvraw.o rtcm.o preceph.o options.o pntpos.o ppp.o ppp_ar.o
-rtkrcv : novatel.o ublox.o ss2.o crescent.o skytraq.o gw10.o javad.o nvs.o binex.o
-rtkrcv : rt17.o ephemeris.o rinex.o ionex.o rtcm2.o rtcm3.o rtcm3e.o qzslex.o
-rtkrcv : ppp_corr.o tides.o septentrio.o cmr.o tersus.o
+rtkrcv : novatel.o ublox.o ss2.o crescent.o skytraq.o javad.o nvs.o binex.o
+rtkrcv : rt17.o ephemeris.o rinex.o ionex.o rtcm2.o rtcm3.o rtcm3e.o cssr.o
+rtkrcv : tides.o septentrio.o
rtkrcv.o : ../rtkrcv.c
$(CC) -c $(CFLAGS) ../rtkrcv.c
@@ -47,6 +47,8 @@ rtcm3.o : $(SRC)/rtcm3.c
$(CC) -c $(CFLAGS) $(SRC)/rtcm3.c
rtcm3e.o : $(SRC)/rtcm3e.c
$(CC) -c $(CFLAGS) $(SRC)/rtcm3e.c
+cssr.o : $(SRC)/cssr.c
+ $(CC) -c $(CFLAGS) $(SRC)/cssr.c
preceph.o : $(SRC)/preceph.c
$(CC) -c $(CFLAGS) $(SRC)/preceph.c
options.o : $(SRC)/options.c
@@ -67,8 +69,6 @@ crescent.o : $(SRC)/rcv/crescent.c
$(CC) -c $(CFLAGS) $(SRC)/rcv/crescent.c
skytraq.o : $(SRC)/rcv/skytraq.c
$(CC) -c $(CFLAGS) $(SRC)/rcv/skytraq.c
-gw10.o : $(SRC)/rcv/gw10.c
- $(CC) -c $(CFLAGS) $(SRC)/rcv/gw10.c
javad.o : $(SRC)/rcv/javad.c
$(CC) -c $(CFLAGS) $(SRC)/rcv/javad.c
nvs.o : $(SRC)/rcv/nvs.c
@@ -83,18 +83,10 @@ rinex.o : $(SRC)/rinex.c
$(CC) -c $(CFLAGS) $(SRC)/rinex.c
ionex.o : $(SRC)/ionex.c
$(CC) -c $(CFLAGS) $(SRC)/ionex.c
-qzslex.o : $(SRC)/qzslex.c
- $(CC) -c $(CFLAGS) $(SRC)/qzslex.c
tides.o : $(SRC)/tides.c
$(CC) -c $(CFLAGS) $(SRC)/tides.c
-ppp_corr.o : $(SRC)/ppp_corr.c
- $(CC) -c $(CFLAGS) $(SRC)/ppp_corr.c
septentrio.o: $(SRC)/rcv/septentrio.c
$(CC) -c $(CFLAGS) $(SRC)/rcv/septentrio.c
-cmr.o : $(SRC)/rcv/cmr.c
- $(CC) -c $(CFLAGS) $(SRC)/rcv/cmr.c
-tersus.o : $(SRC)/rcv/tersus.c
- $(CC) -c $(CFLAGS) $(SRC)/rcv/tersus.c
rtkrcv.o : $(SRC)/rtklib.h ../vt.h
rtkcmn.o : $(SRC)/rtklib.h
@@ -113,25 +105,21 @@ preceph.o : $(SRC)/rtklib.h
options.o : $(SRC)/rtklib.h
pntpos.o : $(SRC)/rtklib.h
ppp.o : $(SRC)/rtklib.h
+ppp_ar.o : $(SRC)/rtklib.h
novatel.o : $(SRC)/rtklib.h
ublox.o : $(SRC)/rtklib.h
ss2.o : $(SRC)/rtklib.h
crescent.o : $(SRC)/rtklib.h
skytraq.o : $(SRC)/rtklib.h
-gw10.o : $(SRC)/rtklib.h
javad.o : $(SRC)/rtklib.h
nvs.o : $(SRC)/rtklib.h
binex.o : $(SRC)/rtklib.h
rt17.o : $(SRC)/rtklib.h
septentrio.o: $(SRC)/rtklib.h
-cmr.o : $(SRC)/rtklib.h
-tersus.o : $(SRC)/rtklib.h
ephemeris.o: $(SRC)/rtklib.h
rinex.o : $(SRC)/rtklib.h
ionex.o : $(SRC)/rtklib.h
-qzslex.o : $(SRC)/rtklib.h
tides.o : $(SRC)/rtklib.h
-ppp_corr.o : $(SRC)/rtklib.h
install:
cp rtkrcv $(BINDIR)
diff --git a/app/rtkrcv/gcc/rtkrcv.conf b/app/consapp/rtkrcv/gcc/rtkrcv.conf
similarity index 100%
rename from app/rtkrcv/gcc/rtkrcv.conf
rename to app/consapp/rtkrcv/gcc/rtkrcv.conf
diff --git a/app/rtkrcv/gcc/rtkshut.sh b/app/consapp/rtkrcv/gcc/rtkshut.sh
similarity index 100%
rename from app/rtkrcv/gcc/rtkshut.sh
rename to app/consapp/rtkrcv/gcc/rtkshut.sh
diff --git a/app/rtkrcv/gcc/rtkstart.sh b/app/consapp/rtkrcv/gcc/rtkstart.sh
similarity index 100%
rename from app/rtkrcv/gcc/rtkstart.sh
rename to app/consapp/rtkrcv/gcc/rtkstart.sh
diff --git a/app/rtkrcv/rtkrcv.c b/app/consapp/rtkrcv/rtkrcv.c
similarity index 98%
rename from app/rtkrcv/rtkrcv.c
rename to app/consapp/rtkrcv/rtkrcv.c
index 071a5aa98..d640f5cc6 100644
--- a/app/rtkrcv/rtkrcv.c
+++ b/app/consapp/rtkrcv/rtkrcv.c
@@ -263,7 +263,7 @@ static void *sendkeepalive(void *arg)
trace(3,"sendkeepalive: start\n");
while (keepalive) {
- strwrite(&moni,(unsigned char *)"\r",1);
+ strwrite(&moni,(uint8_t *)"\r",1);
sleepms(INTKEEPALIVE);
}
trace(3,"sendkeepalive: stop\n");
@@ -291,7 +291,7 @@ static void closemoni(void)
keepalive=0;
/* send disconnect message */
- strwrite(&moni,(unsigned char *)MSG_DISCONN,strlen(MSG_DISCONN));
+ strwrite(&moni,(uint8_t *)MSG_DISCONN,strlen(MSG_DISCONN));
/* wait fin from clients */
sleepms(1000);
@@ -435,7 +435,7 @@ static int startsvr(vt_t *vt)
readant(vt,&prcopt,&svr.nav);
/* read dcb file */
- if (filopt.dcb) {
+ if (*filopt.dcb) {
strcpy(sta[0].name,sta_name);
readdcb(filopt.dcb,&svr.nav,sta);
}
@@ -841,7 +841,7 @@ static void probserv(vt_t *vt, int nf)
for (j=0;j
#include
@@ -39,7 +40,6 @@
/* global variables ----------------------------------------------------------*/
static strsvr_t strsvr; /* stream server */
static volatile int intrflg=0; /* interrupt flag */
-static char srctbl[1024]=""; /* source table file */
/* help text -----------------------------------------------------------------*/
static const char *help[]={
@@ -56,8 +56,7 @@ static const char *help[]={
" format of input messages are converted to output. To specify the output",
" messages, use -msg option. If the option -in or -out omitted, stdin for",
" input or stdout for output is used. If the stream in the option -in or -out",
-" is null, stdin or stdout is used as well. To reload ntrip source table",
-" specified by the option -ft, send SIGUSR2 to the process",
+" is null, stdin or stdout is used as well.",
" Command options are as follows.",
"",
" -in stream[#format] input stream path and format",
@@ -69,8 +68,7 @@ static const char *help[]={
" tcp client : tcpcli://addr[:port]",
" ntrip client : ntrip://[user[:passwd]@]addr[:port][/mntpnt]",
" ntrip server : ntrips://[:passwd@]addr[:port]/mntpnt[:str] (only out)",
-" ntrip caster server: ntripc_s://[:passwd@][:port] (only in)",
-" ntrip caster client: ntripc_c://[user:passwd@][:port]/mntpnt (only out)",
+" ntrip caster : ntripc://[user:passwd@][:port]/mntpnt[:srctbl] (only out)",
" file : [file://]path[::T][::+start][::xseppd][::S=swap]",
"",
" format",
@@ -82,14 +80,11 @@ static const char *help[]={
" ss2 : NovAtel Superstar II (only in)",
" hemis : Hemisphere Eclipse/Crescent (only in)",
" stq : SkyTraq S1315F (only in)",
-" gw10 : Furuno GW10 (only in)",
" javad : Javad (only in)",
" nvs : NVS BINR (only in)",
" binex : BINEX (only in)",
" rt17 : Trimble RT17 (only in)",
" sbf : Septentrio SBF (only in)",
-" cmr : CMR/CMR+ (only in)",
-" tersus : TERSUS (only in)",
"",
" -msg \"type[(tint)][,type[(tint)]...]\"",
" rtcm message types and output intervals (s)",
@@ -113,7 +108,6 @@ static const char *help[]={
" -x proxy_addr http/ntrip proxy address [no]",
" -b str_no relay back messages from output str to input str [no]",
" -t level trace level [0]",
-" -ft file ntrip souce table file []",
" -fl file log file [str2str.trace]",
" -h print help",
};
@@ -129,12 +123,6 @@ static void sigfunc(int sig)
{
intrflg=1;
}
-/* reload source table by SIGUSR2 --------------------------------------------*/
-static void reload_srctbl(int sig)
-{
- strsvrsetsrctbl(&strsvr,srctbl);
- signal(SIGUSR2,reload_srctbl);
-}
/* decode format -------------------------------------------------------------*/
static void decodefmt(char *path, int *fmt)
{
@@ -151,14 +139,11 @@ static void decodefmt(char *path, int *fmt)
else if (!strcmp(p,"#ss2" )) *fmt=STRFMT_SS2;
else if (!strcmp(p,"#hemis")) *fmt=STRFMT_CRES;
else if (!strcmp(p,"#stq" )) *fmt=STRFMT_STQ;
- else if (!strcmp(p,"#gw10" )) *fmt=STRFMT_GW10;
else if (!strcmp(p,"#javad")) *fmt=STRFMT_JAVAD;
else if (!strcmp(p,"#nvs" )) *fmt=STRFMT_NVS;
else if (!strcmp(p,"#binex")) *fmt=STRFMT_BINEX;
else if (!strcmp(p,"#rt17" )) *fmt=STRFMT_RT17;
else if (!strcmp(p,"#sbf" )) *fmt=STRFMT_SEPT;
- else if (!strcmp(p,"#cmr" )) *fmt=STRFMT_CMR;
- else if (!strcmp(p,"#tersus")) *fmt=STRFMT_TERSUS;
else return;
*p='\0';
}
@@ -179,14 +164,13 @@ static int decodepath(const char *path, int *type, char *strpath, int *fmt)
*type=STR_FILE;
return 1;
}
- if (!strncmp(path,"serial", 6)) *type=STR_SERIAL;
- else if (!strncmp(path,"tcpsvr", 6)) *type=STR_TCPSVR;
- else if (!strncmp(path,"tcpcli", 6)) *type=STR_TCPCLI;
- else if (!strncmp(path,"ntripc_s",8)) *type=STR_NTRIPC_S;
- else if (!strncmp(path,"ntripc_c",8)) *type=STR_NTRIPC_C;
- else if (!strncmp(path,"ntrips", 6)) *type=STR_NTRIPSVR;
- else if (!strncmp(path,"ntrip", 5)) *type=STR_NTRIPCLI;
- else if (!strncmp(path,"file", 4)) *type=STR_FILE;
+ if (!strncmp(path,"serial",6)) *type=STR_SERIAL;
+ else if (!strncmp(path,"tcpsvr",6)) *type=STR_TCPSVR;
+ else if (!strncmp(path,"tcpcli",6)) *type=STR_TCPCLI;
+ else if (!strncmp(path,"ntripc",6)) *type=STR_NTRIPCAS;
+ else if (!strncmp(path,"ntrips",6)) *type=STR_NTRIPSVR;
+ else if (!strncmp(path,"ntrip", 5)) *type=STR_NTRIPCLI;
+ else if (!strncmp(path,"file", 4)) *type=STR_FILE;
else {
fprintf(stderr,"stream path error: %s\n",buff);
return 0;
@@ -221,17 +205,19 @@ int main(int argc, char **argv)
const char ss[]={'E','-','W','C','C'};
strconv_t *conv[MAXSTR]={NULL};
double pos[3],stapos[3]={0},stadel[3]={0};
- char *paths[MAXSTR],s[MAXSTR][MAXSTRPATH]={{0}};
+ static char s1[MAXSTR][MAXSTRPATH]={{0}},s2[MAXSTR][MAXSTRPATH]={{0}};
+ char *paths[MAXSTR],*logs[MAXSTR];
char *cmdfile[MAXSTR]={"","","","",""},*cmds[MAXSTR],*cmds_periodic[MAXSTR];
char *local="",*proxy="",*msg="1004,1019",*opt="",buff[256],*p;
char strmsg[MAXSTRMSG]="",*antinfo="",*rcvinfo="";
char *ant[]={"","",""},*rcv[]={"","",""},*logfile="";
int i,j,n=0,dispint=5000,trlevel=0,opts[]={10000,10000,2000,32768,10,0,30,0};
- int types[MAXSTR]={STR_FILE,STR_FILE},stat[MAXSTR]={0},byte[MAXSTR]={0};
- int bps[MAXSTR]={0},fmts[MAXSTR]={0},sta=0;
+ int types[MAXSTR]={STR_FILE,STR_FILE},stat[MAXSTR]={0},log_stat[MAXSTR]={0};
+ int byte[MAXSTR]={0},bps[MAXSTR]={0},fmts[MAXSTR]={0},sta=0;
for (i=0;i
-
- {F2F432E1-CB5E-4F62-8276-D65B70EC1563}
- CppConsoleApplication
- True
- Release
- None
- 18.6
- Win32
- 1
- Console
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- $(BDS)\bin\cbuilder_PROJECTICNS.icns
- $(BDS)\bin\cbuilder_PROJECTICON.ico
- _convbin
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- ..\;..\..\..\src\rcv\;..\..\..\src\;$(IncludePath)
- None
- 1041
- vclx.bpi;vcl.bpi;rtl.bpi;dbrtl.bpi;vcldb.bpi;dbxcds.bpi;dbexpress.bpi;xmlrtl.bpi;vclie.bpi;inet.bpi;inetdbbde.bpi;inetdbxpress.bpi;dsnap.bpi;adortl.bpi;soaprtl.bpi;bdertl.bpi;vcldbx.bpi;$(PackageImports)
- ..\..\..\extlex;..\..\..\src;..\;..\..\..\src\rcv;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\..\extlex;..\..\..\src\rcv;..\;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ObjPath)
- ..\..\..\extlex;..\..\..\src;..\;..\..\..\src\rcv;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
- false
- ..\..\..\extlex;..\..\..\src\rcv;..\;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\..\extlex;..\..\..\src\rcv;..\;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(ILINK_ObjectSearchPath)
- false
- ..\..\..\src;..\..\..\src\rcv;$(BDS)\include;$(BCC_IncludePath)
- ..\..\..\extlex;..\..\..\src\rcv;..\;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\..\extlex;..\..\..\src\rcv;..\;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ResourcePath)
- ..\..\..\src\rcv\;..\..\..\src\;..\..\..\extlex;..\..\..\src\rcv;..\;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(BDS)\lib;$(BDS)\lib\obj;$(BDS)\lib\psdk;$(ILINK_LibraryPath)
- JPHNE
-
-
- exe
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENACMP;NFREQ=6;NEXOBS=3;$(BCC_Defines)
- -tWM -tWC
- _RTLDLL;_NO_VCL;WIN32;ENAGLO;TRACE;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;_NO_VCL;WIN32;ENAGLO;TRACE;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- rtcm3_testglo.rtcm3 -tr 2009/12/18 23:20
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- 1033
- true
-
-
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENACMP;NFREQ=6;NEXOBS=3;$(BCC_Defines)
- _RTLDLL;_NO_VCL;WIN32;ENAGLO;TRACE;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;_NO_VCL;WIN32;ENAGLO;TRACE;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
-
-
- -V
- DEBUG;$(DCC_Define);$(DCC_Define)
- Debug_Build
- true
- true
- true
- true
- false
- Full
- true
- $(BDS)\lib\debug;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
- true
- true
-
-
- -tWM -tWC -k
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
-
-
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
-
-
- -$O+
- Release_Build
- None
- true
- $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
-
-
- NDEBUG;$(BCC_Defines);$(BCC_Defines)
- -tWM -tWC -r
- false
- false
- false
- 1033
-
-
- NDEBUG;$(BCC_Defines);$(BCC_Defines)
-
-
-
- 8
- 3
-
-
- -1
- 1
-
-
- 11
- 0
-
-
- 24
-
-
- 23
-
-
- 22
-
-
- 7
- 14
-
-
- 21
-
-
- 3
- 10
-
-
- 20
-
-
- 27
-
-
- 9
- 4
-
-
- 4
- 15
-
-
- 5
- 16
-
-
- 5
- 14
-
-
- 18
-
-
- 25
-
-
- 26
-
-
- 6
- 13
-
-
- 6
- 15
-
-
- 28
-
-
- 7
- 12
-
-
- 8
- 13
-
-
- 12
- 1
-
-
- 17
-
-
- 16
-
-
- 19
-
-
- 2
- 11
-
-
- 9
- 2
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
-
- CPlusPlusBuilder.Personality.12
- CppConsoleApplication
-
-
-
- False
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1041
- 932
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
- rtcm3_testglo.rtcm3 -tr 2009/12/18 23:20
-
- True
-
-
-
-
-
-
- False
-
- False
-
- True
- False
-
-
-
- False
- True
- True
- False
-
-
-
- True
- False
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- _convbin.exe
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
- .framework
-
-
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
- 12
-
-
-
-
-
diff --git a/app/convbin/bcc/_convbin.res b/app/convbin/bcc/_convbin.res
deleted file mode 100644
index 354c542a2..000000000
Binary files a/app/convbin/bcc/_convbin.res and /dev/null differ
diff --git a/app/convbin/bcc/install.bat b/app/convbin/bcc/install.bat
deleted file mode 100644
index aed2e8def..000000000
--- a/app/convbin/bcc/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\_convbin.exe ..\..\..\..\RTKLIB_bin\bin\convbin.exe
diff --git a/app/convbin/msc/clean.bat b/app/convbin/msc/clean.bat
deleted file mode 100644
index cc57642c6..000000000
--- a/app/convbin/msc/clean.bat
+++ /dev/null
@@ -1,19 +0,0 @@
-del Release\*.obj
-del Release\*.exe
-del Release\*.res
-del Release\*.manifest
-del Release\*.pdb
-del Release\*.idb
-del Release\*.ilk
-del Release\*.dep
-del Release\*.htm
-del Debug\*.obj
-del Debug\*.exe
-del Debug\*.res
-del Debug\*.manifest
-del Debug\*.pdb
-del Debug\*.idb
-del Debug\*.ilk
-del Debug\*.dep
-del Debug\*.htm
-del *.ncb
diff --git a/app/convbin/msc/install.bat b/app/convbin/msc/install.bat
deleted file mode 100644
index 386e94f22..000000000
--- a/app/convbin/msc/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release\convbin.exe ..\..\..\bin
diff --git a/app/convbin/msc/msc.sln b/app/convbin/msc/msc.sln
deleted file mode 100644
index 2264d4a41..000000000
--- a/app/convbin/msc/msc.sln
+++ /dev/null
@@ -1,20 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual C++ Express 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "msc", "msc.vcproj", "{A9A9B274-2448-4FA0-AC05-857D411DCA48}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Release|Win32 = Release|Win32
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A9A9B274-2448-4FA0-AC05-857D411DCA48}.Debug|Win32.ActiveCfg = Debug|Win32
- {A9A9B274-2448-4FA0-AC05-857D411DCA48}.Debug|Win32.Build.0 = Debug|Win32
- {A9A9B274-2448-4FA0-AC05-857D411DCA48}.Release|Win32.ActiveCfg = Release|Win32
- {A9A9B274-2448-4FA0-AC05-857D411DCA48}.Release|Win32.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/app/convbin/msc/msc.suo b/app/convbin/msc/msc.suo
deleted file mode 100644
index 4af7c253e..000000000
Binary files a/app/convbin/msc/msc.suo and /dev/null differ
diff --git a/app/convbin/msc/msc.vcproj b/app/convbin/msc/msc.vcproj
deleted file mode 100644
index 926cfab5f..000000000
--- a/app/convbin/msc/msc.vcproj
+++ /dev/null
@@ -1,269 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/convbin/msc/msc.vcproj.falcon.ttaka.user b/app/convbin/msc/msc.vcproj.falcon.ttaka.user
deleted file mode 100644
index 841eea91f..000000000
--- a/app/convbin/msc/msc.vcproj.falcon.ttaka.user
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/pos2kml/bcc/install.bat b/app/pos2kml/bcc/install.bat
deleted file mode 100644
index 90f3b583f..000000000
--- a/app/pos2kml/bcc/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\_pos2kml.exe ..\..\..\..\RTKLIB_bin\bin\pos2kml.exe
diff --git a/app/pos2kml/msc/Release/BuildLog.htm b/app/pos2kml/msc/Release/BuildLog.htm
deleted file mode 100644
index 7b4523647..000000000
Binary files a/app/pos2kml/msc/Release/BuildLog.htm and /dev/null differ
diff --git a/app/pos2kml/msc/clean.bat b/app/pos2kml/msc/clean.bat
deleted file mode 100644
index cc57642c6..000000000
--- a/app/pos2kml/msc/clean.bat
+++ /dev/null
@@ -1,19 +0,0 @@
-del Release\*.obj
-del Release\*.exe
-del Release\*.res
-del Release\*.manifest
-del Release\*.pdb
-del Release\*.idb
-del Release\*.ilk
-del Release\*.dep
-del Release\*.htm
-del Debug\*.obj
-del Debug\*.exe
-del Debug\*.res
-del Debug\*.manifest
-del Debug\*.pdb
-del Debug\*.idb
-del Debug\*.ilk
-del Debug\*.dep
-del Debug\*.htm
-del *.ncb
diff --git a/app/pos2kml/msc/install.bat b/app/pos2kml/msc/install.bat
deleted file mode 100644
index 803077ce5..000000000
--- a/app/pos2kml/msc/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release\pos2kml.exe ..\..\..\bin
diff --git a/app/pos2kml/msc/msc.ncb b/app/pos2kml/msc/msc.ncb
deleted file mode 100644
index 51c09e6fe..000000000
Binary files a/app/pos2kml/msc/msc.ncb and /dev/null differ
diff --git a/app/pos2kml/msc/msc.sln b/app/pos2kml/msc/msc.sln
deleted file mode 100644
index f9e243935..000000000
--- a/app/pos2kml/msc/msc.sln
+++ /dev/null
@@ -1,20 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual C++ Express 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "msc", "msc.vcproj", "{E7D8F3E9-5363-4E31-8F16-4256E570767A}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Release|Win32 = Release|Win32
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {E7D8F3E9-5363-4E31-8F16-4256E570767A}.Debug|Win32.ActiveCfg = Debug|Win32
- {E7D8F3E9-5363-4E31-8F16-4256E570767A}.Debug|Win32.Build.0 = Debug|Win32
- {E7D8F3E9-5363-4E31-8F16-4256E570767A}.Release|Win32.ActiveCfg = Release|Win32
- {E7D8F3E9-5363-4E31-8F16-4256E570767A}.Release|Win32.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/app/pos2kml/msc/msc.suo b/app/pos2kml/msc/msc.suo
deleted file mode 100644
index acb7d16be..000000000
Binary files a/app/pos2kml/msc/msc.suo and /dev/null differ
diff --git a/app/pos2kml/msc/msc.vcproj b/app/pos2kml/msc/msc.vcproj
deleted file mode 100644
index 893e8af7d..000000000
--- a/app/pos2kml/msc/msc.vcproj
+++ /dev/null
@@ -1,219 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/pos2kml/msc/msc.vcproj.falcon.ttaka.user b/app/pos2kml/msc/msc.vcproj.falcon.ttaka.user
deleted file mode 100644
index 841eea91f..000000000
--- a/app/pos2kml/msc/msc.vcproj.falcon.ttaka.user
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/RTKLib.pri b/app/qtapp/RTKLib.pri
similarity index 100%
rename from RTKLib.pri
rename to app/qtapp/RTKLib.pri
diff --git a/RTKLib.pro b/app/qtapp/RTKLib.pro
similarity index 100%
rename from RTKLib.pro
rename to app/qtapp/RTKLib.pro
diff --git a/app/app.pro b/app/qtapp/app.pro
similarity index 100%
rename from app/app.pro
rename to app/qtapp/app.pro
diff --git a/app/appcmn_qt/aboutdlg.cpp b/app/qtapp/appcmn_qt/appcmn_qt/aboutdlg.cpp
similarity index 100%
rename from app/appcmn_qt/aboutdlg.cpp
rename to app/qtapp/appcmn_qt/appcmn_qt/aboutdlg.cpp
diff --git a/app/appcmn_qt/aboutdlg.h b/app/qtapp/appcmn_qt/appcmn_qt/aboutdlg.h
similarity index 100%
rename from app/appcmn_qt/aboutdlg.h
rename to app/qtapp/appcmn_qt/appcmn_qt/aboutdlg.h
diff --git a/app/appcmn_qt/aboutdlg.ui b/app/qtapp/appcmn_qt/appcmn_qt/aboutdlg.ui
similarity index 100%
rename from app/appcmn_qt/aboutdlg.ui
rename to app/qtapp/appcmn_qt/appcmn_qt/aboutdlg.ui
diff --git a/app/appcmn_qt/cmdoptdlg.cpp b/app/qtapp/appcmn_qt/appcmn_qt/cmdoptdlg.cpp
similarity index 100%
rename from app/appcmn_qt/cmdoptdlg.cpp
rename to app/qtapp/appcmn_qt/appcmn_qt/cmdoptdlg.cpp
diff --git a/app/appcmn_qt/cmdoptdlg.h b/app/qtapp/appcmn_qt/appcmn_qt/cmdoptdlg.h
similarity index 100%
rename from app/appcmn_qt/cmdoptdlg.h
rename to app/qtapp/appcmn_qt/appcmn_qt/cmdoptdlg.h
diff --git a/app/appcmn_qt/cmdoptdlg.ui b/app/qtapp/appcmn_qt/appcmn_qt/cmdoptdlg.ui
similarity index 100%
rename from app/appcmn_qt/cmdoptdlg.ui
rename to app/qtapp/appcmn_qt/appcmn_qt/cmdoptdlg.ui
diff --git a/app/appcmn_qt/console.cpp b/app/qtapp/appcmn_qt/appcmn_qt/console.cpp
similarity index 100%
rename from app/appcmn_qt/console.cpp
rename to app/qtapp/appcmn_qt/appcmn_qt/console.cpp
diff --git a/app/appcmn_qt/console.h b/app/qtapp/appcmn_qt/appcmn_qt/console.h
similarity index 100%
rename from app/appcmn_qt/console.h
rename to app/qtapp/appcmn_qt/appcmn_qt/console.h
diff --git a/app/appcmn_qt/console.ui b/app/qtapp/appcmn_qt/console.ui
similarity index 100%
rename from app/appcmn_qt/console.ui
rename to app/qtapp/appcmn_qt/console.ui
diff --git a/app/appcmn_qt/fileoptdlg.cpp b/app/qtapp/appcmn_qt/fileoptdlg.cpp
similarity index 100%
rename from app/appcmn_qt/fileoptdlg.cpp
rename to app/qtapp/appcmn_qt/fileoptdlg.cpp
diff --git a/app/appcmn_qt/fileoptdlg.h b/app/qtapp/appcmn_qt/fileoptdlg.h
similarity index 100%
rename from app/appcmn_qt/fileoptdlg.h
rename to app/qtapp/appcmn_qt/fileoptdlg.h
diff --git a/app/appcmn_qt/fileoptdlg.ui b/app/qtapp/appcmn_qt/fileoptdlg.ui
similarity index 100%
rename from app/appcmn_qt/fileoptdlg.ui
rename to app/qtapp/appcmn_qt/fileoptdlg.ui
diff --git a/app/appcmn_qt/ftpoptdlg.cpp b/app/qtapp/appcmn_qt/ftpoptdlg.cpp
similarity index 100%
rename from app/appcmn_qt/ftpoptdlg.cpp
rename to app/qtapp/appcmn_qt/ftpoptdlg.cpp
diff --git a/app/appcmn_qt/ftpoptdlg.h b/app/qtapp/appcmn_qt/ftpoptdlg.h
similarity index 100%
rename from app/appcmn_qt/ftpoptdlg.h
rename to app/qtapp/appcmn_qt/ftpoptdlg.h
diff --git a/app/appcmn_qt/ftpoptdlg.ui b/app/qtapp/appcmn_qt/ftpoptdlg.ui
similarity index 100%
rename from app/appcmn_qt/ftpoptdlg.ui
rename to app/qtapp/appcmn_qt/ftpoptdlg.ui
diff --git a/app/appcmn_qt/gmview.cpp b/app/qtapp/appcmn_qt/gmview.cpp
similarity index 100%
rename from app/appcmn_qt/gmview.cpp
rename to app/qtapp/appcmn_qt/gmview.cpp
diff --git a/app/appcmn_qt/gmview.h b/app/qtapp/appcmn_qt/gmview.h
similarity index 100%
rename from app/appcmn_qt/gmview.h
rename to app/qtapp/appcmn_qt/gmview.h
diff --git a/app/appcmn_qt/gmview.ui b/app/qtapp/appcmn_qt/gmview.ui
similarity index 100%
rename from app/appcmn_qt/gmview.ui
rename to app/qtapp/appcmn_qt/gmview.ui
diff --git a/app/appcmn_qt/graph.cpp b/app/qtapp/appcmn_qt/graph.cpp
similarity index 100%
rename from app/appcmn_qt/graph.cpp
rename to app/qtapp/appcmn_qt/graph.cpp
diff --git a/app/appcmn_qt/graph.h b/app/qtapp/appcmn_qt/graph.h
similarity index 100%
rename from app/appcmn_qt/graph.h
rename to app/qtapp/appcmn_qt/graph.h
diff --git a/app/appcmn_qt/keydlg.cpp b/app/qtapp/appcmn_qt/keydlg.cpp
similarity index 100%
rename from app/appcmn_qt/keydlg.cpp
rename to app/qtapp/appcmn_qt/keydlg.cpp
diff --git a/app/appcmn_qt/keydlg.h b/app/qtapp/appcmn_qt/keydlg.h
similarity index 100%
rename from app/appcmn_qt/keydlg.h
rename to app/qtapp/appcmn_qt/keydlg.h
diff --git a/app/appcmn_qt/keydlg.ui b/app/qtapp/appcmn_qt/keydlg.ui
similarity index 100%
rename from app/appcmn_qt/keydlg.ui
rename to app/qtapp/appcmn_qt/keydlg.ui
diff --git a/app/appcmn_qt/maskoptdlg.cpp b/app/qtapp/appcmn_qt/maskoptdlg.cpp
similarity index 100%
rename from app/appcmn_qt/maskoptdlg.cpp
rename to app/qtapp/appcmn_qt/maskoptdlg.cpp
diff --git a/app/appcmn_qt/maskoptdlg.h b/app/qtapp/appcmn_qt/maskoptdlg.h
similarity index 100%
rename from app/appcmn_qt/maskoptdlg.h
rename to app/qtapp/appcmn_qt/maskoptdlg.h
diff --git a/app/appcmn_qt/maskoptdlg.ui b/app/qtapp/appcmn_qt/maskoptdlg.ui
similarity index 100%
rename from app/appcmn_qt/maskoptdlg.ui
rename to app/qtapp/appcmn_qt/maskoptdlg.ui
diff --git a/app/appcmn_qt/refdlg.cpp b/app/qtapp/appcmn_qt/refdlg.cpp
similarity index 100%
rename from app/appcmn_qt/refdlg.cpp
rename to app/qtapp/appcmn_qt/refdlg.cpp
diff --git a/app/appcmn_qt/refdlg.h b/app/qtapp/appcmn_qt/refdlg.h
similarity index 100%
rename from app/appcmn_qt/refdlg.h
rename to app/qtapp/appcmn_qt/refdlg.h
diff --git a/app/appcmn_qt/refdlg.ui b/app/qtapp/appcmn_qt/refdlg.ui
similarity index 100%
rename from app/appcmn_qt/refdlg.ui
rename to app/qtapp/appcmn_qt/refdlg.ui
diff --git a/app/appcmn_qt/serioptdlg.cpp b/app/qtapp/appcmn_qt/serioptdlg.cpp
similarity index 100%
rename from app/appcmn_qt/serioptdlg.cpp
rename to app/qtapp/appcmn_qt/serioptdlg.cpp
diff --git a/app/appcmn_qt/serioptdlg.h b/app/qtapp/appcmn_qt/serioptdlg.h
similarity index 100%
rename from app/appcmn_qt/serioptdlg.h
rename to app/qtapp/appcmn_qt/serioptdlg.h
diff --git a/app/appcmn_qt/serioptdlg.ui b/app/qtapp/appcmn_qt/serioptdlg.ui
similarity index 100%
rename from app/appcmn_qt/serioptdlg.ui
rename to app/qtapp/appcmn_qt/serioptdlg.ui
diff --git a/app/appcmn_qt/tcpoptdlg.cpp b/app/qtapp/appcmn_qt/tcpoptdlg.cpp
similarity index 100%
rename from app/appcmn_qt/tcpoptdlg.cpp
rename to app/qtapp/appcmn_qt/tcpoptdlg.cpp
diff --git a/app/appcmn_qt/tcpoptdlg.h b/app/qtapp/appcmn_qt/tcpoptdlg.h
similarity index 100%
rename from app/appcmn_qt/tcpoptdlg.h
rename to app/qtapp/appcmn_qt/tcpoptdlg.h
diff --git a/app/appcmn_qt/tcpoptdlg.ui b/app/qtapp/appcmn_qt/tcpoptdlg.ui
similarity index 100%
rename from app/appcmn_qt/tcpoptdlg.ui
rename to app/qtapp/appcmn_qt/tcpoptdlg.ui
diff --git a/app/appcmn_qt/timedlg.cpp b/app/qtapp/appcmn_qt/timedlg.cpp
similarity index 100%
rename from app/appcmn_qt/timedlg.cpp
rename to app/qtapp/appcmn_qt/timedlg.cpp
diff --git a/app/appcmn_qt/timedlg.h b/app/qtapp/appcmn_qt/timedlg.h
similarity index 100%
rename from app/appcmn_qt/timedlg.h
rename to app/qtapp/appcmn_qt/timedlg.h
diff --git a/app/appcmn_qt/timedlg.ui b/app/qtapp/appcmn_qt/timedlg.ui
similarity index 100%
rename from app/appcmn_qt/timedlg.ui
rename to app/qtapp/appcmn_qt/timedlg.ui
diff --git a/app/appcmn_qt/tspandlg.cpp b/app/qtapp/appcmn_qt/tspandlg.cpp
similarity index 100%
rename from app/appcmn_qt/tspandlg.cpp
rename to app/qtapp/appcmn_qt/tspandlg.cpp
diff --git a/app/appcmn_qt/tspandlg.h b/app/qtapp/appcmn_qt/tspandlg.h
similarity index 100%
rename from app/appcmn_qt/tspandlg.h
rename to app/qtapp/appcmn_qt/tspandlg.h
diff --git a/app/appcmn_qt/tspandlg.ui b/app/qtapp/appcmn_qt/tspandlg.ui
similarity index 100%
rename from app/appcmn_qt/tspandlg.ui
rename to app/qtapp/appcmn_qt/tspandlg.ui
diff --git a/app/appcmn_qt/viewer.cpp b/app/qtapp/appcmn_qt/viewer.cpp
similarity index 100%
rename from app/appcmn_qt/viewer.cpp
rename to app/qtapp/appcmn_qt/viewer.cpp
diff --git a/app/appcmn_qt/viewer.h b/app/qtapp/appcmn_qt/viewer.h
similarity index 100%
rename from app/appcmn_qt/viewer.h
rename to app/qtapp/appcmn_qt/viewer.h
diff --git a/app/appcmn_qt/viewer.ui b/app/qtapp/appcmn_qt/viewer.ui
similarity index 100%
rename from app/appcmn_qt/viewer.ui
rename to app/qtapp/appcmn_qt/viewer.ui
diff --git a/app/appcmn_qt/vieweropt.cpp b/app/qtapp/appcmn_qt/vieweropt.cpp
similarity index 100%
rename from app/appcmn_qt/vieweropt.cpp
rename to app/qtapp/appcmn_qt/vieweropt.cpp
diff --git a/app/appcmn_qt/vieweropt.h b/app/qtapp/appcmn_qt/vieweropt.h
similarity index 100%
rename from app/appcmn_qt/vieweropt.h
rename to app/qtapp/appcmn_qt/vieweropt.h
diff --git a/app/appcmn_qt/vieweropt.ui b/app/qtapp/appcmn_qt/vieweropt.ui
similarity index 100%
rename from app/appcmn_qt/vieweropt.ui
rename to app/qtapp/appcmn_qt/vieweropt.ui
diff --git a/app/install_qtapp.bat b/app/qtapp/install_qtapp.bat
similarity index 100%
rename from app/install_qtapp.bat
rename to app/qtapp/install_qtapp.bat
diff --git a/app/qtapp/readme.txt b/app/qtapp/readme.txt
new file mode 100644
index 000000000..137eb9dad
--- /dev/null
+++ b/app/qtapp/readme.txt
@@ -0,0 +1,8 @@
+readme.txt
+2020/12/14
+
+Files in this QT APP project directory are moved from the
+previous release rtklib/app/. However, these are not maintained
+or updated. The APs may not be built with the latest release
+RTKLIB codes.
+
diff --git a/app/rtkconv_qt/.gitignore b/app/qtapp/rtkconv_qt/.gitignore
similarity index 100%
rename from app/rtkconv_qt/.gitignore
rename to app/qtapp/rtkconv_qt/.gitignore
diff --git a/app/rtkconv_qt/codeopt.cpp b/app/qtapp/rtkconv_qt/codeopt.cpp
similarity index 100%
rename from app/rtkconv_qt/codeopt.cpp
rename to app/qtapp/rtkconv_qt/codeopt.cpp
diff --git a/app/rtkconv_qt/codeopt.h b/app/qtapp/rtkconv_qt/codeopt.h
similarity index 100%
rename from app/rtkconv_qt/codeopt.h
rename to app/qtapp/rtkconv_qt/codeopt.h
diff --git a/app/rtkconv_qt/codeopt.ui b/app/qtapp/rtkconv_qt/codeopt.ui
similarity index 100%
rename from app/rtkconv_qt/codeopt.ui
rename to app/qtapp/rtkconv_qt/codeopt.ui
diff --git a/app/rtkconv_qt/convmain.cpp b/app/qtapp/rtkconv_qt/convmain.cpp
similarity index 100%
rename from app/rtkconv_qt/convmain.cpp
rename to app/qtapp/rtkconv_qt/convmain.cpp
diff --git a/app/rtkconv_qt/convmain.h b/app/qtapp/rtkconv_qt/convmain.h
similarity index 100%
rename from app/rtkconv_qt/convmain.h
rename to app/qtapp/rtkconv_qt/convmain.h
diff --git a/app/rtkconv_qt/convmain.ui b/app/qtapp/rtkconv_qt/convmain.ui
similarity index 100%
rename from app/rtkconv_qt/convmain.ui
rename to app/qtapp/rtkconv_qt/convmain.ui
diff --git a/app/rtkconv_qt/convopt.cpp b/app/qtapp/rtkconv_qt/convopt.cpp
similarity index 100%
rename from app/rtkconv_qt/convopt.cpp
rename to app/qtapp/rtkconv_qt/convopt.cpp
diff --git a/app/rtkconv_qt/convopt.h b/app/qtapp/rtkconv_qt/convopt.h
similarity index 100%
rename from app/rtkconv_qt/convopt.h
rename to app/qtapp/rtkconv_qt/convopt.h
diff --git a/app/rtkconv_qt/convopt.ui b/app/qtapp/rtkconv_qt/convopt.ui
similarity index 100%
rename from app/rtkconv_qt/convopt.ui
rename to app/qtapp/rtkconv_qt/convopt.ui
diff --git a/app/rtkconv_qt/install.bat b/app/qtapp/rtkconv_qt/install.bat
similarity index 100%
rename from app/rtkconv_qt/install.bat
rename to app/qtapp/rtkconv_qt/install.bat
diff --git a/app/rtkconv_qt/install.sh b/app/qtapp/rtkconv_qt/install.sh
similarity index 100%
rename from app/rtkconv_qt/install.sh
rename to app/qtapp/rtkconv_qt/install.sh
diff --git a/app/rtkconv_qt/rtkconv.cpp b/app/qtapp/rtkconv_qt/rtkconv.cpp
similarity index 100%
rename from app/rtkconv_qt/rtkconv.cpp
rename to app/qtapp/rtkconv_qt/rtkconv.cpp
diff --git a/app/rtkconv/rtkconv_Icon.ico b/app/qtapp/rtkconv_qt/rtkconv_Icon.ico
similarity index 100%
rename from app/rtkconv/rtkconv_Icon.ico
rename to app/qtapp/rtkconv_qt/rtkconv_Icon.ico
diff --git a/app/rtkconv_qt/rtkconv_qt.pro b/app/qtapp/rtkconv_qt/rtkconv_qt.pro
similarity index 100%
rename from app/rtkconv_qt/rtkconv_qt.pro
rename to app/qtapp/rtkconv_qt/rtkconv_qt.pro
diff --git a/app/rtkconv_qt/rtkconv_qt.qrc b/app/qtapp/rtkconv_qt/rtkconv_qt.qrc
similarity index 100%
rename from app/rtkconv_qt/rtkconv_qt.qrc
rename to app/qtapp/rtkconv_qt/rtkconv_qt.qrc
diff --git a/app/rtkconv_qt/rtkconv_qt.rc b/app/qtapp/rtkconv_qt/rtkconv_qt.rc
similarity index 100%
rename from app/rtkconv_qt/rtkconv_qt.rc
rename to app/qtapp/rtkconv_qt/rtkconv_qt.rc
diff --git a/app/rtkconv_qt/startdlg.cpp b/app/qtapp/rtkconv_qt/startdlg.cpp
similarity index 100%
rename from app/rtkconv_qt/startdlg.cpp
rename to app/qtapp/rtkconv_qt/startdlg.cpp
diff --git a/app/rtkconv_qt/startdlg.h b/app/qtapp/rtkconv_qt/startdlg.h
similarity index 100%
rename from app/rtkconv_qt/startdlg.h
rename to app/qtapp/rtkconv_qt/startdlg.h
diff --git a/app/rtkconv_qt/startdlg.ui b/app/qtapp/rtkconv_qt/startdlg.ui
similarity index 100%
rename from app/rtkconv_qt/startdlg.ui
rename to app/qtapp/rtkconv_qt/startdlg.ui
diff --git a/app/rtkget_qt/.gitignore b/app/qtapp/rtkget_qt/.gitignore
similarity index 100%
rename from app/rtkget_qt/.gitignore
rename to app/qtapp/rtkget_qt/.gitignore
diff --git a/app/rtkget_qt/getmain.cpp b/app/qtapp/rtkget_qt/getmain.cpp
similarity index 100%
rename from app/rtkget_qt/getmain.cpp
rename to app/qtapp/rtkget_qt/getmain.cpp
diff --git a/app/rtkget_qt/getmain.h b/app/qtapp/rtkget_qt/getmain.h
similarity index 100%
rename from app/rtkget_qt/getmain.h
rename to app/qtapp/rtkget_qt/getmain.h
diff --git a/app/rtkget_qt/getmain.ui b/app/qtapp/rtkget_qt/getmain.ui
similarity index 100%
rename from app/rtkget_qt/getmain.ui
rename to app/qtapp/rtkget_qt/getmain.ui
diff --git a/app/rtkget_qt/getoptdlg.cpp b/app/qtapp/rtkget_qt/getoptdlg.cpp
similarity index 100%
rename from app/rtkget_qt/getoptdlg.cpp
rename to app/qtapp/rtkget_qt/getoptdlg.cpp
diff --git a/app/rtkget_qt/getoptdlg.h b/app/qtapp/rtkget_qt/getoptdlg.h
similarity index 100%
rename from app/rtkget_qt/getoptdlg.h
rename to app/qtapp/rtkget_qt/getoptdlg.h
diff --git a/app/rtkget_qt/getoptdlg.ui b/app/qtapp/rtkget_qt/getoptdlg.ui
similarity index 100%
rename from app/rtkget_qt/getoptdlg.ui
rename to app/qtapp/rtkget_qt/getoptdlg.ui
diff --git a/app/rtkget_qt/install.bat b/app/qtapp/rtkget_qt/install.bat
similarity index 100%
rename from app/rtkget_qt/install.bat
rename to app/qtapp/rtkget_qt/install.bat
diff --git a/app/rtkget_qt/install.sh b/app/qtapp/rtkget_qt/install.sh
similarity index 100%
rename from app/rtkget_qt/install.sh
rename to app/qtapp/rtkget_qt/install.sh
diff --git a/app/rtkget_qt/main.cpp b/app/qtapp/rtkget_qt/main.cpp
similarity index 100%
rename from app/rtkget_qt/main.cpp
rename to app/qtapp/rtkget_qt/main.cpp
diff --git a/app/rtkget_qt/out b/app/qtapp/rtkget_qt/out
similarity index 100%
rename from app/rtkget_qt/out
rename to app/qtapp/rtkget_qt/out
diff --git a/app/rtkget_qt/rtkget_Icon.ico b/app/qtapp/rtkget_qt/rtkget_Icon.ico
similarity index 100%
rename from app/rtkget_qt/rtkget_Icon.ico
rename to app/qtapp/rtkget_qt/rtkget_Icon.ico
diff --git a/app/rtkget_qt/rtkget_qt.pro b/app/qtapp/rtkget_qt/rtkget_qt.pro
similarity index 100%
rename from app/rtkget_qt/rtkget_qt.pro
rename to app/qtapp/rtkget_qt/rtkget_qt.pro
diff --git a/app/rtkget_qt/rtkget_qt.qrc b/app/qtapp/rtkget_qt/rtkget_qt.qrc
similarity index 100%
rename from app/rtkget_qt/rtkget_qt.qrc
rename to app/qtapp/rtkget_qt/rtkget_qt.qrc
diff --git a/app/rtkget_qt/rtkget_qt.rc b/app/qtapp/rtkget_qt/rtkget_qt.rc
similarity index 100%
rename from app/rtkget_qt/rtkget_qt.rc
rename to app/qtapp/rtkget_qt/rtkget_qt.rc
diff --git a/app/rtkget_qt/staoptdlg.cpp b/app/qtapp/rtkget_qt/staoptdlg.cpp
similarity index 100%
rename from app/rtkget_qt/staoptdlg.cpp
rename to app/qtapp/rtkget_qt/staoptdlg.cpp
diff --git a/app/rtkget_qt/staoptdlg.h b/app/qtapp/rtkget_qt/staoptdlg.h
similarity index 100%
rename from app/rtkget_qt/staoptdlg.h
rename to app/qtapp/rtkget_qt/staoptdlg.h
diff --git a/app/rtkget_qt/staoptdlg.ui b/app/qtapp/rtkget_qt/staoptdlg.ui
similarity index 100%
rename from app/rtkget_qt/staoptdlg.ui
rename to app/qtapp/rtkget_qt/staoptdlg.ui
diff --git a/app/rtklaunch_qt/.gitignore b/app/qtapp/rtklaunch_qt/.gitignore
similarity index 100%
rename from app/rtklaunch_qt/.gitignore
rename to app/qtapp/rtklaunch_qt/.gitignore
diff --git a/app/rtklaunch_qt/install.bat b/app/qtapp/rtklaunch_qt/install.bat
similarity index 100%
rename from app/rtklaunch_qt/install.bat
rename to app/qtapp/rtklaunch_qt/install.bat
diff --git a/app/rtklaunch_qt/install.sh b/app/qtapp/rtklaunch_qt/install.sh
similarity index 100%
rename from app/rtklaunch_qt/install.sh
rename to app/qtapp/rtklaunch_qt/install.sh
diff --git a/app/rtklaunch_qt/launchmain.cpp b/app/qtapp/rtklaunch_qt/launchmain.cpp
similarity index 100%
rename from app/rtklaunch_qt/launchmain.cpp
rename to app/qtapp/rtklaunch_qt/launchmain.cpp
diff --git a/app/rtklaunch_qt/launchmain.h b/app/qtapp/rtklaunch_qt/launchmain.h
similarity index 100%
rename from app/rtklaunch_qt/launchmain.h
rename to app/qtapp/rtklaunch_qt/launchmain.h
diff --git a/app/rtklaunch_qt/launchmain.ui b/app/qtapp/rtklaunch_qt/launchmain.ui
similarity index 100%
rename from app/rtklaunch_qt/launchmain.ui
rename to app/qtapp/rtklaunch_qt/launchmain.ui
diff --git a/app/rtklaunch_qt/main.cpp b/app/qtapp/rtklaunch_qt/main.cpp
similarity index 100%
rename from app/rtklaunch_qt/main.cpp
rename to app/qtapp/rtklaunch_qt/main.cpp
diff --git a/app/rtklaunch_qt/rtklaunch.cpp b/app/qtapp/rtklaunch_qt/rtklaunch.cpp
similarity index 100%
rename from app/rtklaunch_qt/rtklaunch.cpp
rename to app/qtapp/rtklaunch_qt/rtklaunch.cpp
diff --git a/app/rtklaunch_qt/rtklaunch_Icon.ico b/app/qtapp/rtklaunch_qt/rtklaunch_Icon.ico
similarity index 100%
rename from app/rtklaunch_qt/rtklaunch_Icon.ico
rename to app/qtapp/rtklaunch_qt/rtklaunch_Icon.ico
diff --git a/app/rtklaunch_qt/rtklaunch_qt.pro b/app/qtapp/rtklaunch_qt/rtklaunch_qt.pro
similarity index 100%
rename from app/rtklaunch_qt/rtklaunch_qt.pro
rename to app/qtapp/rtklaunch_qt/rtklaunch_qt.pro
diff --git a/app/rtklaunch_qt/rtklaunch_qt.qrc b/app/qtapp/rtklaunch_qt/rtklaunch_qt.qrc
similarity index 100%
rename from app/rtklaunch_qt/rtklaunch_qt.qrc
rename to app/qtapp/rtklaunch_qt/rtklaunch_qt.qrc
diff --git a/app/rtklaunch_qt/rtklaunch_qt.rc b/app/qtapp/rtklaunch_qt/rtklaunch_qt.rc
similarity index 100%
rename from app/rtklaunch_qt/rtklaunch_qt.rc
rename to app/qtapp/rtklaunch_qt/rtklaunch_qt.rc
diff --git a/app/rtknavi_qt/.gitignore b/app/qtapp/rtknavi_qt/.gitignore
similarity index 100%
rename from app/rtknavi_qt/.gitignore
rename to app/qtapp/rtknavi_qt/.gitignore
diff --git a/app/rtknavi_qt/install.bat b/app/qtapp/rtknavi_qt/install.bat
similarity index 100%
rename from app/rtknavi_qt/install.bat
rename to app/qtapp/rtknavi_qt/install.bat
diff --git a/app/rtknavi_qt/install.sh b/app/qtapp/rtknavi_qt/install.sh
similarity index 100%
rename from app/rtknavi_qt/install.sh
rename to app/qtapp/rtknavi_qt/install.sh
diff --git a/app/rtknavi_qt/instrdlg.cpp b/app/qtapp/rtknavi_qt/instrdlg.cpp
similarity index 100%
rename from app/rtknavi_qt/instrdlg.cpp
rename to app/qtapp/rtknavi_qt/instrdlg.cpp
diff --git a/app/rtknavi_qt/instrdlg.h b/app/qtapp/rtknavi_qt/instrdlg.h
similarity index 100%
rename from app/rtknavi_qt/instrdlg.h
rename to app/qtapp/rtknavi_qt/instrdlg.h
diff --git a/app/rtknavi_qt/instrdlg.ui b/app/qtapp/rtknavi_qt/instrdlg.ui
similarity index 100%
rename from app/rtknavi_qt/instrdlg.ui
rename to app/qtapp/rtknavi_qt/instrdlg.ui
diff --git a/app/rtknavi_qt/logstrdlg.cpp b/app/qtapp/rtknavi_qt/logstrdlg.cpp
similarity index 100%
rename from app/rtknavi_qt/logstrdlg.cpp
rename to app/qtapp/rtknavi_qt/logstrdlg.cpp
diff --git a/app/rtknavi_qt/logstrdlg.h b/app/qtapp/rtknavi_qt/logstrdlg.h
similarity index 100%
rename from app/rtknavi_qt/logstrdlg.h
rename to app/qtapp/rtknavi_qt/logstrdlg.h
diff --git a/app/rtknavi_qt/logstrdlg.ui b/app/qtapp/rtknavi_qt/logstrdlg.ui
similarity index 100%
rename from app/rtknavi_qt/logstrdlg.ui
rename to app/qtapp/rtknavi_qt/logstrdlg.ui
diff --git a/app/rtknavi_qt/main.cpp b/app/qtapp/rtknavi_qt/main.cpp
similarity index 100%
rename from app/rtknavi_qt/main.cpp
rename to app/qtapp/rtknavi_qt/main.cpp
diff --git a/app/rtknavi_qt/mapdlg.cpp b/app/qtapp/rtknavi_qt/mapdlg.cpp
similarity index 100%
rename from app/rtknavi_qt/mapdlg.cpp
rename to app/qtapp/rtknavi_qt/mapdlg.cpp
diff --git a/app/rtknavi_qt/mapdlg.h b/app/qtapp/rtknavi_qt/mapdlg.h
similarity index 100%
rename from app/rtknavi_qt/mapdlg.h
rename to app/qtapp/rtknavi_qt/mapdlg.h
diff --git a/app/rtknavi_qt/mapdlg.ui b/app/qtapp/rtknavi_qt/mapdlg.ui
similarity index 100%
rename from app/rtknavi_qt/mapdlg.ui
rename to app/qtapp/rtknavi_qt/mapdlg.ui
diff --git a/app/rtknavi_qt/markdlg.cpp b/app/qtapp/rtknavi_qt/markdlg.cpp
similarity index 100%
rename from app/rtknavi_qt/markdlg.cpp
rename to app/qtapp/rtknavi_qt/markdlg.cpp
diff --git a/app/rtknavi_qt/markdlg.h b/app/qtapp/rtknavi_qt/markdlg.h
similarity index 100%
rename from app/rtknavi_qt/markdlg.h
rename to app/qtapp/rtknavi_qt/markdlg.h
diff --git a/app/rtknavi_qt/markdlg.ui b/app/qtapp/rtknavi_qt/markdlg.ui
similarity index 100%
rename from app/rtknavi_qt/markdlg.ui
rename to app/qtapp/rtknavi_qt/markdlg.ui
diff --git a/app/rtknavi_qt/mondlg.cpp b/app/qtapp/rtknavi_qt/mondlg.cpp
similarity index 100%
rename from app/rtknavi_qt/mondlg.cpp
rename to app/qtapp/rtknavi_qt/mondlg.cpp
diff --git a/app/rtknavi_qt/mondlg.h b/app/qtapp/rtknavi_qt/mondlg.h
similarity index 100%
rename from app/rtknavi_qt/mondlg.h
rename to app/qtapp/rtknavi_qt/mondlg.h
diff --git a/app/rtknavi_qt/mondlg.ui b/app/qtapp/rtknavi_qt/mondlg.ui
similarity index 100%
rename from app/rtknavi_qt/mondlg.ui
rename to app/qtapp/rtknavi_qt/mondlg.ui
diff --git a/app/rtknavi_qt/navimain.cpp b/app/qtapp/rtknavi_qt/navimain.cpp
similarity index 100%
rename from app/rtknavi_qt/navimain.cpp
rename to app/qtapp/rtknavi_qt/navimain.cpp
diff --git a/app/rtknavi_qt/navimain.h b/app/qtapp/rtknavi_qt/navimain.h
similarity index 100%
rename from app/rtknavi_qt/navimain.h
rename to app/qtapp/rtknavi_qt/navimain.h
diff --git a/app/rtknavi_qt/navimain.ui b/app/qtapp/rtknavi_qt/navimain.ui
similarity index 100%
rename from app/rtknavi_qt/navimain.ui
rename to app/qtapp/rtknavi_qt/navimain.ui
diff --git a/app/rtknavi_qt/naviopt.cpp b/app/qtapp/rtknavi_qt/naviopt.cpp
similarity index 100%
rename from app/rtknavi_qt/naviopt.cpp
rename to app/qtapp/rtknavi_qt/naviopt.cpp
diff --git a/app/rtknavi_qt/naviopt.h b/app/qtapp/rtknavi_qt/naviopt.h
similarity index 100%
rename from app/rtknavi_qt/naviopt.h
rename to app/qtapp/rtknavi_qt/naviopt.h
diff --git a/app/rtknavi_qt/naviopt.ui b/app/qtapp/rtknavi_qt/naviopt.ui
similarity index 100%
rename from app/rtknavi_qt/naviopt.ui
rename to app/qtapp/rtknavi_qt/naviopt.ui
diff --git a/app/rtknavi_qt/outstrdlg.cpp b/app/qtapp/rtknavi_qt/outstrdlg.cpp
similarity index 100%
rename from app/rtknavi_qt/outstrdlg.cpp
rename to app/qtapp/rtknavi_qt/outstrdlg.cpp
diff --git a/app/rtknavi_qt/outstrdlg.h b/app/qtapp/rtknavi_qt/outstrdlg.h
similarity index 100%
rename from app/rtknavi_qt/outstrdlg.h
rename to app/qtapp/rtknavi_qt/outstrdlg.h
diff --git a/app/rtknavi_qt/outstrdlg.ui b/app/qtapp/rtknavi_qt/outstrdlg.ui
similarity index 100%
rename from app/rtknavi_qt/outstrdlg.ui
rename to app/qtapp/rtknavi_qt/outstrdlg.ui
diff --git a/app/rtknavi_qt/rcvoptdlg.cpp b/app/qtapp/rtknavi_qt/rcvoptdlg.cpp
similarity index 100%
rename from app/rtknavi_qt/rcvoptdlg.cpp
rename to app/qtapp/rtknavi_qt/rcvoptdlg.cpp
diff --git a/app/rtknavi_qt/rcvoptdlg.h b/app/qtapp/rtknavi_qt/rcvoptdlg.h
similarity index 100%
rename from app/rtknavi_qt/rcvoptdlg.h
rename to app/qtapp/rtknavi_qt/rcvoptdlg.h
diff --git a/app/rtknavi_qt/rcvoptdlg.ui b/app/qtapp/rtknavi_qt/rcvoptdlg.ui
similarity index 100%
rename from app/rtknavi_qt/rcvoptdlg.ui
rename to app/qtapp/rtknavi_qt/rcvoptdlg.ui
diff --git a/app/rtknavi_qt/rtknavi_qt.pro b/app/qtapp/rtknavi_qt/rtknavi_qt.pro
similarity index 100%
rename from app/rtknavi_qt/rtknavi_qt.pro
rename to app/qtapp/rtknavi_qt/rtknavi_qt.pro
diff --git a/app/rtknavi_qt/rtknavi_qt.qrc b/app/qtapp/rtknavi_qt/rtknavi_qt.qrc
similarity index 100%
rename from app/rtknavi_qt/rtknavi_qt.qrc
rename to app/qtapp/rtknavi_qt/rtknavi_qt.qrc
diff --git a/app/rtknavi_qt/rtknavi_qt.rc b/app/qtapp/rtknavi_qt/rtknavi_qt.rc
similarity index 100%
rename from app/rtknavi_qt/rtknavi_qt.rc
rename to app/qtapp/rtknavi_qt/rtknavi_qt.rc
diff --git a/app/rtkplot_qt/.gitignore b/app/qtapp/rtkplot_qt/.gitignore
similarity index 100%
rename from app/rtkplot_qt/.gitignore
rename to app/qtapp/rtkplot_qt/.gitignore
diff --git a/app/rtkplot_qt/conndlg.cpp b/app/qtapp/rtkplot_qt/conndlg.cpp
similarity index 100%
rename from app/rtkplot_qt/conndlg.cpp
rename to app/qtapp/rtkplot_qt/conndlg.cpp
diff --git a/app/rtkplot_qt/conndlg.h b/app/qtapp/rtkplot_qt/conndlg.h
similarity index 100%
rename from app/rtkplot_qt/conndlg.h
rename to app/qtapp/rtkplot_qt/conndlg.h
diff --git a/app/rtkplot_qt/conndlg.ui b/app/qtapp/rtkplot_qt/conndlg.ui
similarity index 100%
rename from app/rtkplot_qt/conndlg.ui
rename to app/qtapp/rtkplot_qt/conndlg.ui
diff --git a/app/rtkplot_qt/fileseldlg.cpp b/app/qtapp/rtkplot_qt/fileseldlg.cpp
similarity index 100%
rename from app/rtkplot_qt/fileseldlg.cpp
rename to app/qtapp/rtkplot_qt/fileseldlg.cpp
diff --git a/app/rtkplot_qt/fileseldlg.h b/app/qtapp/rtkplot_qt/fileseldlg.h
similarity index 100%
rename from app/rtkplot_qt/fileseldlg.h
rename to app/qtapp/rtkplot_qt/fileseldlg.h
diff --git a/app/rtkplot_qt/fileseldlg.ui b/app/qtapp/rtkplot_qt/fileseldlg.ui
similarity index 100%
rename from app/rtkplot_qt/fileseldlg.ui
rename to app/qtapp/rtkplot_qt/fileseldlg.ui
diff --git a/app/rtkplot_qt/geview.cpp b/app/qtapp/rtkplot_qt/geview.cpp
similarity index 100%
rename from app/rtkplot_qt/geview.cpp
rename to app/qtapp/rtkplot_qt/geview.cpp
diff --git a/app/rtkplot_qt/geview.h b/app/qtapp/rtkplot_qt/geview.h
similarity index 100%
rename from app/rtkplot_qt/geview.h
rename to app/qtapp/rtkplot_qt/geview.h
diff --git a/app/rtkplot_qt/geview.ui b/app/qtapp/rtkplot_qt/geview.ui
similarity index 100%
rename from app/rtkplot_qt/geview.ui
rename to app/qtapp/rtkplot_qt/geview.ui
diff --git a/app/rtkplot_qt/install.bat b/app/qtapp/rtkplot_qt/install.bat
similarity index 100%
rename from app/rtkplot_qt/install.bat
rename to app/qtapp/rtkplot_qt/install.bat
diff --git a/app/rtkplot_qt/install.sh b/app/qtapp/rtkplot_qt/install.sh
similarity index 100%
rename from app/rtkplot_qt/install.sh
rename to app/qtapp/rtkplot_qt/install.sh
diff --git a/app/rtkplot_qt/mainwindow.ui b/app/qtapp/rtkplot_qt/mainwindow.ui
similarity index 100%
rename from app/rtkplot_qt/mainwindow.ui
rename to app/qtapp/rtkplot_qt/mainwindow.ui
diff --git a/app/rtkplot_qt/mapdlg.cpp b/app/qtapp/rtkplot_qt/mapdlg.cpp
similarity index 100%
rename from app/rtkplot_qt/mapdlg.cpp
rename to app/qtapp/rtkplot_qt/mapdlg.cpp
diff --git a/app/rtkplot_qt/mapdlg.h b/app/qtapp/rtkplot_qt/mapdlg.h
similarity index 100%
rename from app/rtkplot_qt/mapdlg.h
rename to app/qtapp/rtkplot_qt/mapdlg.h
diff --git a/app/rtkplot_qt/mapdlg.ui b/app/qtapp/rtkplot_qt/mapdlg.ui
similarity index 100%
rename from app/rtkplot_qt/mapdlg.ui
rename to app/qtapp/rtkplot_qt/mapdlg.ui
diff --git a/app/rtkplot_qt/plotcmn.cpp b/app/qtapp/rtkplot_qt/plotcmn.cpp
similarity index 100%
rename from app/rtkplot_qt/plotcmn.cpp
rename to app/qtapp/rtkplot_qt/plotcmn.cpp
diff --git a/app/rtkplot_qt/plotdata.cpp b/app/qtapp/rtkplot_qt/plotdata.cpp
similarity index 100%
rename from app/rtkplot_qt/plotdata.cpp
rename to app/qtapp/rtkplot_qt/plotdata.cpp
diff --git a/app/rtkplot_qt/plotdraw.cpp b/app/qtapp/rtkplot_qt/plotdraw.cpp
similarity index 100%
rename from app/rtkplot_qt/plotdraw.cpp
rename to app/qtapp/rtkplot_qt/plotdraw.cpp
diff --git a/app/rtkplot_qt/plotinfo.cpp b/app/qtapp/rtkplot_qt/plotinfo.cpp
similarity index 100%
rename from app/rtkplot_qt/plotinfo.cpp
rename to app/qtapp/rtkplot_qt/plotinfo.cpp
diff --git a/app/rtkplot_qt/plotmain.cpp b/app/qtapp/rtkplot_qt/plotmain.cpp
similarity index 100%
rename from app/rtkplot_qt/plotmain.cpp
rename to app/qtapp/rtkplot_qt/plotmain.cpp
diff --git a/app/rtkplot_qt/plotmain.h b/app/qtapp/rtkplot_qt/plotmain.h
similarity index 100%
rename from app/rtkplot_qt/plotmain.h
rename to app/qtapp/rtkplot_qt/plotmain.h
diff --git a/app/rtkplot_qt/plotmain.ui b/app/qtapp/rtkplot_qt/plotmain.ui
similarity index 100%
rename from app/rtkplot_qt/plotmain.ui
rename to app/qtapp/rtkplot_qt/plotmain.ui
diff --git a/app/rtkplot_qt/plotopt.cpp b/app/qtapp/rtkplot_qt/plotopt.cpp
similarity index 100%
rename from app/rtkplot_qt/plotopt.cpp
rename to app/qtapp/rtkplot_qt/plotopt.cpp
diff --git a/app/rtkplot_qt/plotopt.h b/app/qtapp/rtkplot_qt/plotopt.h
similarity index 100%
rename from app/rtkplot_qt/plotopt.h
rename to app/qtapp/rtkplot_qt/plotopt.h
diff --git a/app/rtkplot_qt/plotopt.ui b/app/qtapp/rtkplot_qt/plotopt.ui
similarity index 100%
rename from app/rtkplot_qt/plotopt.ui
rename to app/qtapp/rtkplot_qt/plotopt.ui
diff --git a/app/rtkplot_qt/pntdlg.cpp b/app/qtapp/rtkplot_qt/pntdlg.cpp
similarity index 100%
rename from app/rtkplot_qt/pntdlg.cpp
rename to app/qtapp/rtkplot_qt/pntdlg.cpp
diff --git a/app/rtkplot_qt/pntdlg.h b/app/qtapp/rtkplot_qt/pntdlg.h
similarity index 100%
rename from app/rtkplot_qt/pntdlg.h
rename to app/qtapp/rtkplot_qt/pntdlg.h
diff --git a/app/rtkplot_qt/pntdlg.ui b/app/qtapp/rtkplot_qt/pntdlg.ui
similarity index 100%
rename from app/rtkplot_qt/pntdlg.ui
rename to app/qtapp/rtkplot_qt/pntdlg.ui
diff --git a/app/rtkplot_qt/qwebchannel.js b/app/qtapp/rtkplot_qt/qwebchannel.js
similarity index 100%
rename from app/rtkplot_qt/qwebchannel.js
rename to app/qtapp/rtkplot_qt/qwebchannel.js
diff --git a/app/rtkplot_qt/rtklib_ge.htm b/app/qtapp/rtkplot_qt/rtklib_ge.htm
similarity index 100%
rename from app/rtkplot_qt/rtklib_ge.htm
rename to app/qtapp/rtkplot_qt/rtklib_ge.htm
diff --git a/app/rtkplot_qt/rtklib_gm.htm b/app/qtapp/rtkplot_qt/rtklib_gm.htm
similarity index 100%
rename from app/rtkplot_qt/rtklib_gm.htm
rename to app/qtapp/rtkplot_qt/rtklib_gm.htm
diff --git a/app/rtkplot_qt/rtkplot.cpp b/app/qtapp/rtkplot_qt/rtkplot.cpp
similarity index 100%
rename from app/rtkplot_qt/rtkplot.cpp
rename to app/qtapp/rtkplot_qt/rtkplot.cpp
diff --git a/app/rtkplot/rtkplot_Icon.ico b/app/qtapp/rtkplot_qt/rtkplot_Icon.ico
similarity index 100%
rename from app/rtkplot/rtkplot_Icon.ico
rename to app/qtapp/rtkplot_qt/rtkplot_Icon.ico
diff --git a/app/rtkplot_qt/rtkplot_qt.pro b/app/qtapp/rtkplot_qt/rtkplot_qt.pro
similarity index 100%
rename from app/rtkplot_qt/rtkplot_qt.pro
rename to app/qtapp/rtkplot_qt/rtkplot_qt.pro
diff --git a/app/rtkplot_qt/rtkplot_qt.qrc b/app/qtapp/rtkplot_qt/rtkplot_qt.qrc
similarity index 100%
rename from app/rtkplot_qt/rtkplot_qt.qrc
rename to app/qtapp/rtkplot_qt/rtkplot_qt.qrc
diff --git a/app/rtkplot_qt/rtkplot_qt.rc b/app/qtapp/rtkplot_qt/rtkplot_qt.rc
similarity index 100%
rename from app/rtkplot_qt/rtkplot_qt.rc
rename to app/qtapp/rtkplot_qt/rtkplot_qt.rc
diff --git a/app/rtkplot_qt/satdlg.cpp b/app/qtapp/rtkplot_qt/satdlg.cpp
similarity index 100%
rename from app/rtkplot_qt/satdlg.cpp
rename to app/qtapp/rtkplot_qt/satdlg.cpp
diff --git a/app/rtkplot_qt/satdlg.h b/app/qtapp/rtkplot_qt/satdlg.h
similarity index 100%
rename from app/rtkplot_qt/satdlg.h
rename to app/qtapp/rtkplot_qt/satdlg.h
diff --git a/app/rtkplot_qt/satdlg.ui b/app/qtapp/rtkplot_qt/satdlg.ui
similarity index 100%
rename from app/rtkplot_qt/satdlg.ui
rename to app/qtapp/rtkplot_qt/satdlg.ui
diff --git a/app/rtkplot_qt/skydlg.cpp b/app/qtapp/rtkplot_qt/skydlg.cpp
similarity index 100%
rename from app/rtkplot_qt/skydlg.cpp
rename to app/qtapp/rtkplot_qt/skydlg.cpp
diff --git a/app/rtkplot_qt/skydlg.h b/app/qtapp/rtkplot_qt/skydlg.h
similarity index 100%
rename from app/rtkplot_qt/skydlg.h
rename to app/qtapp/rtkplot_qt/skydlg.h
diff --git a/app/rtkplot_qt/skydlg.ui b/app/qtapp/rtkplot_qt/skydlg.ui
similarity index 100%
rename from app/rtkplot_qt/skydlg.ui
rename to app/qtapp/rtkplot_qt/skydlg.ui
diff --git a/app/rtkplot_qt/vmapdlg.cpp b/app/qtapp/rtkplot_qt/vmapdlg.cpp
similarity index 100%
rename from app/rtkplot_qt/vmapdlg.cpp
rename to app/qtapp/rtkplot_qt/vmapdlg.cpp
diff --git a/app/rtkplot_qt/vmapdlg.h b/app/qtapp/rtkplot_qt/vmapdlg.h
similarity index 100%
rename from app/rtkplot_qt/vmapdlg.h
rename to app/qtapp/rtkplot_qt/vmapdlg.h
diff --git a/app/rtkplot_qt/vmapdlg.ui b/app/qtapp/rtkplot_qt/vmapdlg.ui
similarity index 100%
rename from app/rtkplot_qt/vmapdlg.ui
rename to app/qtapp/rtkplot_qt/vmapdlg.ui
diff --git a/app/rtkpost_qt/.gitignore b/app/qtapp/rtkpost_qt/.gitignore
similarity index 100%
rename from app/rtkpost_qt/.gitignore
rename to app/qtapp/rtkpost_qt/.gitignore
diff --git a/app/rtkpost_qt/extopt.cpp b/app/qtapp/rtkpost_qt/extopt.cpp
similarity index 100%
rename from app/rtkpost_qt/extopt.cpp
rename to app/qtapp/rtkpost_qt/extopt.cpp
diff --git a/app/rtkpost_qt/extopt.h b/app/qtapp/rtkpost_qt/extopt.h
similarity index 100%
rename from app/rtkpost_qt/extopt.h
rename to app/qtapp/rtkpost_qt/extopt.h
diff --git a/app/rtkpost_qt/extopt.ui b/app/qtapp/rtkpost_qt/extopt.ui
similarity index 100%
rename from app/rtkpost_qt/extopt.ui
rename to app/qtapp/rtkpost_qt/extopt.ui
diff --git a/app/rtkpost_qt/gmon.out b/app/qtapp/rtkpost_qt/gmon.out
similarity index 100%
rename from app/rtkpost_qt/gmon.out
rename to app/qtapp/rtkpost_qt/gmon.out
diff --git a/app/rtkpost_qt/install.bat b/app/qtapp/rtkpost_qt/install.bat
similarity index 100%
rename from app/rtkpost_qt/install.bat
rename to app/qtapp/rtkpost_qt/install.bat
diff --git a/app/rtkpost_qt/install.sh b/app/qtapp/rtkpost_qt/install.sh
similarity index 100%
rename from app/rtkpost_qt/install.sh
rename to app/qtapp/rtkpost_qt/install.sh
diff --git a/app/rtkpost_qt/kmzconv.cpp b/app/qtapp/rtkpost_qt/kmzconv.cpp
similarity index 100%
rename from app/rtkpost_qt/kmzconv.cpp
rename to app/qtapp/rtkpost_qt/kmzconv.cpp
diff --git a/app/rtkpost_qt/kmzconv.h b/app/qtapp/rtkpost_qt/kmzconv.h
similarity index 100%
rename from app/rtkpost_qt/kmzconv.h
rename to app/qtapp/rtkpost_qt/kmzconv.h
diff --git a/app/rtkpost_qt/kmzconv.ui b/app/qtapp/rtkpost_qt/kmzconv.ui
similarity index 100%
rename from app/rtkpost_qt/kmzconv.ui
rename to app/qtapp/rtkpost_qt/kmzconv.ui
diff --git a/app/rtkpost_qt/postmain.cpp b/app/qtapp/rtkpost_qt/postmain.cpp
similarity index 100%
rename from app/rtkpost_qt/postmain.cpp
rename to app/qtapp/rtkpost_qt/postmain.cpp
diff --git a/app/rtkpost_qt/postmain.h b/app/qtapp/rtkpost_qt/postmain.h
similarity index 100%
rename from app/rtkpost_qt/postmain.h
rename to app/qtapp/rtkpost_qt/postmain.h
diff --git a/app/rtkpost_qt/postmain.ui b/app/qtapp/rtkpost_qt/postmain.ui
similarity index 100%
rename from app/rtkpost_qt/postmain.ui
rename to app/qtapp/rtkpost_qt/postmain.ui
diff --git a/app/rtkpost_qt/postopt.cpp b/app/qtapp/rtkpost_qt/postopt.cpp
similarity index 100%
rename from app/rtkpost_qt/postopt.cpp
rename to app/qtapp/rtkpost_qt/postopt.cpp
diff --git a/app/rtkpost_qt/postopt.h b/app/qtapp/rtkpost_qt/postopt.h
similarity index 100%
rename from app/rtkpost_qt/postopt.h
rename to app/qtapp/rtkpost_qt/postopt.h
diff --git a/app/rtkpost_qt/postopt.ui b/app/qtapp/rtkpost_qt/postopt.ui
similarity index 100%
rename from app/rtkpost_qt/postopt.ui
rename to app/qtapp/rtkpost_qt/postopt.ui
diff --git a/app/rtkpost_qt/rtkpost.cpp b/app/qtapp/rtkpost_qt/rtkpost.cpp
similarity index 100%
rename from app/rtkpost_qt/rtkpost.cpp
rename to app/qtapp/rtkpost_qt/rtkpost.cpp
diff --git a/app/rtkpost/rtkpost_Icon.ico b/app/qtapp/rtkpost_qt/rtkpost_Icon.ico
similarity index 100%
rename from app/rtkpost/rtkpost_Icon.ico
rename to app/qtapp/rtkpost_qt/rtkpost_Icon.ico
diff --git a/app/rtkpost_qt/rtkpost_qt.pro b/app/qtapp/rtkpost_qt/rtkpost_qt.pro
similarity index 100%
rename from app/rtkpost_qt/rtkpost_qt.pro
rename to app/qtapp/rtkpost_qt/rtkpost_qt.pro
diff --git a/app/rtkpost_qt/rtkpost_qt.qrc b/app/qtapp/rtkpost_qt/rtkpost_qt.qrc
similarity index 100%
rename from app/rtkpost_qt/rtkpost_qt.qrc
rename to app/qtapp/rtkpost_qt/rtkpost_qt.qrc
diff --git a/app/rtkpost_qt/rtkpost_qt.rc b/app/qtapp/rtkpost_qt/rtkpost_qt.rc
similarity index 100%
rename from app/rtkpost_qt/rtkpost_qt.rc
rename to app/qtapp/rtkpost_qt/rtkpost_qt.rc
diff --git a/app/srctblbrows_qt/.gitignore b/app/qtapp/srctblbrows_qt/.gitignore
similarity index 100%
rename from app/srctblbrows_qt/.gitignore
rename to app/qtapp/srctblbrows_qt/.gitignore
diff --git a/app/srctblbrows_qt/browsmain.cpp b/app/qtapp/srctblbrows_qt/browsmain.cpp
similarity index 100%
rename from app/srctblbrows_qt/browsmain.cpp
rename to app/qtapp/srctblbrows_qt/browsmain.cpp
diff --git a/app/srctblbrows_qt/browsmain.h b/app/qtapp/srctblbrows_qt/browsmain.h
similarity index 100%
rename from app/srctblbrows_qt/browsmain.h
rename to app/qtapp/srctblbrows_qt/browsmain.h
diff --git a/app/srctblbrows_qt/browsmain.ui b/app/qtapp/srctblbrows_qt/browsmain.ui
similarity index 100%
rename from app/srctblbrows_qt/browsmain.ui
rename to app/qtapp/srctblbrows_qt/browsmain.ui
diff --git a/app/srctblbrows_qt/install.bat b/app/qtapp/srctblbrows_qt/install.bat
similarity index 100%
rename from app/srctblbrows_qt/install.bat
rename to app/qtapp/srctblbrows_qt/install.bat
diff --git a/app/srctblbrows_qt/install.sh b/app/qtapp/srctblbrows_qt/install.sh
similarity index 100%
rename from app/srctblbrows_qt/install.sh
rename to app/qtapp/srctblbrows_qt/install.sh
diff --git a/app/srctblbrows_qt/qwebchannel.js b/app/qtapp/srctblbrows_qt/qwebchannel.js
similarity index 100%
rename from app/srctblbrows_qt/qwebchannel.js
rename to app/qtapp/srctblbrows_qt/qwebchannel.js
diff --git a/app/srctblbrows_qt/rtklib_gm.htm b/app/qtapp/srctblbrows_qt/rtklib_gm.htm
similarity index 100%
rename from app/srctblbrows_qt/rtklib_gm.htm
rename to app/qtapp/srctblbrows_qt/rtklib_gm.htm
diff --git a/app/srctblbrows_qt/srctblbrows.cpp b/app/qtapp/srctblbrows_qt/srctblbrows.cpp
similarity index 100%
rename from app/srctblbrows_qt/srctblbrows.cpp
rename to app/qtapp/srctblbrows_qt/srctblbrows.cpp
diff --git a/app/srctblbrows/srctblbrows_Icon.ico b/app/qtapp/srctblbrows_qt/srctblbrows_Icon.ico
similarity index 100%
rename from app/srctblbrows/srctblbrows_Icon.ico
rename to app/qtapp/srctblbrows_qt/srctblbrows_Icon.ico
diff --git a/app/srctblbrows_qt/srctblbrows_qt.pro b/app/qtapp/srctblbrows_qt/srctblbrows_qt.pro
similarity index 100%
rename from app/srctblbrows_qt/srctblbrows_qt.pro
rename to app/qtapp/srctblbrows_qt/srctblbrows_qt.pro
diff --git a/app/srctblbrows_qt/srctblbrows_qt.qrc b/app/qtapp/srctblbrows_qt/srctblbrows_qt.qrc
similarity index 100%
rename from app/srctblbrows_qt/srctblbrows_qt.qrc
rename to app/qtapp/srctblbrows_qt/srctblbrows_qt.qrc
diff --git a/app/srctblbrows_qt/srctblbrows_qt.rc b/app/qtapp/srctblbrows_qt/srctblbrows_qt.rc
similarity index 100%
rename from app/srctblbrows_qt/srctblbrows_qt.rc
rename to app/qtapp/srctblbrows_qt/srctblbrows_qt.rc
diff --git a/app/srctblbrows_qt/staoptdlg.cpp b/app/qtapp/srctblbrows_qt/staoptdlg.cpp
similarity index 100%
rename from app/srctblbrows_qt/staoptdlg.cpp
rename to app/qtapp/srctblbrows_qt/staoptdlg.cpp
diff --git a/app/srctblbrows_qt/staoptdlg.h b/app/qtapp/srctblbrows_qt/staoptdlg.h
similarity index 100%
rename from app/srctblbrows_qt/staoptdlg.h
rename to app/qtapp/srctblbrows_qt/staoptdlg.h
diff --git a/app/srctblbrows_qt/staoptdlg.ui b/app/qtapp/srctblbrows_qt/staoptdlg.ui
similarity index 100%
rename from app/srctblbrows_qt/staoptdlg.ui
rename to app/qtapp/srctblbrows_qt/staoptdlg.ui
diff --git a/app/strsvr_qt/.gitignore b/app/qtapp/strsvr_qt/.gitignore
similarity index 100%
rename from app/strsvr_qt/.gitignore
rename to app/qtapp/strsvr_qt/.gitignore
diff --git a/app/strsvr_qt/convdlg.cpp b/app/qtapp/strsvr_qt/convdlg.cpp
similarity index 100%
rename from app/strsvr_qt/convdlg.cpp
rename to app/qtapp/strsvr_qt/convdlg.cpp
diff --git a/app/strsvr_qt/convdlg.h b/app/qtapp/strsvr_qt/convdlg.h
similarity index 100%
rename from app/strsvr_qt/convdlg.h
rename to app/qtapp/strsvr_qt/convdlg.h
diff --git a/app/strsvr_qt/convdlg.ui b/app/qtapp/strsvr_qt/convdlg.ui
similarity index 100%
rename from app/strsvr_qt/convdlg.ui
rename to app/qtapp/strsvr_qt/convdlg.ui
diff --git a/app/strsvr_qt/install.bat b/app/qtapp/strsvr_qt/install.bat
similarity index 100%
rename from app/strsvr_qt/install.bat
rename to app/qtapp/strsvr_qt/install.bat
diff --git a/app/strsvr_qt/install.sh b/app/qtapp/strsvr_qt/install.sh
similarity index 100%
rename from app/strsvr_qt/install.sh
rename to app/qtapp/strsvr_qt/install.sh
diff --git a/app/strsvr_qt/out b/app/qtapp/strsvr_qt/out
similarity index 100%
rename from app/strsvr_qt/out
rename to app/qtapp/strsvr_qt/out
diff --git a/app/strsvr_qt/strsvr.cpp b/app/qtapp/strsvr_qt/strsvr.cpp
similarity index 100%
rename from app/strsvr_qt/strsvr.cpp
rename to app/qtapp/strsvr_qt/strsvr.cpp
diff --git a/app/strsvr_qt/strsvr_Icon.ico b/app/qtapp/strsvr_qt/strsvr_Icon.ico
similarity index 100%
rename from app/strsvr_qt/strsvr_Icon.ico
rename to app/qtapp/strsvr_qt/strsvr_Icon.ico
diff --git a/app/strsvr_qt/strsvr_qt.pro b/app/qtapp/strsvr_qt/strsvr_qt.pro
similarity index 100%
rename from app/strsvr_qt/strsvr_qt.pro
rename to app/qtapp/strsvr_qt/strsvr_qt.pro
diff --git a/app/strsvr_qt/strsvr_qt.qrc b/app/qtapp/strsvr_qt/strsvr_qt.qrc
similarity index 100%
rename from app/strsvr_qt/strsvr_qt.qrc
rename to app/qtapp/strsvr_qt/strsvr_qt.qrc
diff --git a/app/strsvr_qt/strsvr_qt.rc b/app/qtapp/strsvr_qt/strsvr_qt.rc
similarity index 100%
rename from app/strsvr_qt/strsvr_qt.rc
rename to app/qtapp/strsvr_qt/strsvr_qt.rc
diff --git a/app/strsvr_qt/svrmain.cpp b/app/qtapp/strsvr_qt/svrmain.cpp
similarity index 100%
rename from app/strsvr_qt/svrmain.cpp
rename to app/qtapp/strsvr_qt/svrmain.cpp
diff --git a/app/strsvr_qt/svrmain.h b/app/qtapp/strsvr_qt/svrmain.h
similarity index 100%
rename from app/strsvr_qt/svrmain.h
rename to app/qtapp/strsvr_qt/svrmain.h
diff --git a/app/strsvr_qt/svrmain.ui b/app/qtapp/strsvr_qt/svrmain.ui
similarity index 100%
rename from app/strsvr_qt/svrmain.ui
rename to app/qtapp/strsvr_qt/svrmain.ui
diff --git a/app/strsvr_qt/svroptdlg.cpp b/app/qtapp/strsvr_qt/svroptdlg.cpp
similarity index 100%
rename from app/strsvr_qt/svroptdlg.cpp
rename to app/qtapp/strsvr_qt/svroptdlg.cpp
diff --git a/app/strsvr_qt/svroptdlg.h b/app/qtapp/strsvr_qt/svroptdlg.h
similarity index 100%
rename from app/strsvr_qt/svroptdlg.h
rename to app/qtapp/strsvr_qt/svroptdlg.h
diff --git a/app/strsvr_qt/svroptdlg.ui b/app/qtapp/strsvr_qt/svroptdlg.ui
similarity index 100%
rename from app/strsvr_qt/svroptdlg.ui
rename to app/qtapp/strsvr_qt/svroptdlg.ui
diff --git a/app/rnx2rtkp/bcc/_rnx2rtkp.cbproj b/app/rnx2rtkp/bcc/_rnx2rtkp.cbproj
deleted file mode 100644
index 3b89b3a12..000000000
--- a/app/rnx2rtkp/bcc/_rnx2rtkp.cbproj
+++ /dev/null
@@ -1,308 +0,0 @@
-
-
- {1D91F63F-0154-4396-A76F-6467DD904836}
- CppConsoleApplication
- True
- Release
- None
- 18.6
- Win32
- 1
- Console
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- _rnx2rtkp
- $(BDS)\bin\cbuilder_PROJECTICON.ico
- $(BDS)\bin\cbuilder_PROJECTICNS.icns
- false
- None
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
- 1041
- ..\;..\..\..\src\;$(IncludePath)
- vclx.bpi;vcl.bpi;rtl.bpi;dbrtl.bpi;vcldb.bpi;dbxcds.bpi;dbexpress.bpi;xmlrtl.bpi;vclie.bpi;inet.bpi;inetdbbde.bpi;inetdbxpress.bpi;dsnap.bpi;adortl.bpi;soaprtl.bpi;bdertl.bpi;vcldbx.bpi;$(PackageImports)
- ..\;..\..\..\src\rcv;..\..\convbin;..\..\pos2kml;..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ObjPath)
- ..\;..\..\..\src\rcv;..\..\convbin;..\..\pos2kml;..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
- false
- ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(ILINK_ObjectSearchPath)
- false
- ..\..\..\src\rcv;..\..\convbin;..\..\pos2kml;..\..\..\src;$(BDS)\include;$(BCC_IncludePath)
- ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(DCC_ResourcePath)
- ..\..\..\src\;..\..\..\extion;..\..\..\extlex;..\;..\..\sbspos;..\..\sbsdump;..\..\..\src\rcv;..\..\convbin;..\..\..\src;..\..\pos2kml;G:\rtklib_2.2.0b\app\pos2kml;G:\rtklib_2.2.0b\app\pos2kml\bcc;$(BDS)\lib;$(BDS)\lib\obj;$(BDS)\lib\psdk;$(ILINK_LibraryPath)
- JPHNE
-
-
- exe
- _RTLDLL;WIN32;ENAGLO;ENAGAL;ENAQZS;ENACMP;NFREQ=3;TRACE;$(BCC_Defines)
- -tWM -tWC -wvoi
- _RTLDLL;_NO_VCL;WIN32;ENAGLO;ENAQZS;TRACE;$(TASM_Defines)
- _RTLDLL;_NO_VCL;WIN32;ENAGLO;ENAQZS;TRACE;$(BRCC_Defines)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- 1033
- true
-
-
- _RTLDLL;WIN32;ENAGLO;ENAGAL;ENAQZS;ENACMP;NFREQ=3;TRACE;$(BCC_Defines)
- _RTLDLL;_NO_VCL;WIN32;ENAGLO;ENAQZS;TRACE;$(BRCC_Defines)
- _RTLDLL;_NO_VCL;WIN32;ENAGLO;ENAQZS;TRACE;$(TASM_Defines)
-
-
- -V
- DEBUG;$(DCC_Define);$(DCC_Define)
- Debug_Build
- true
- true
- true
- true
- false
- Full
- true
- $(BDS)\lib\debug;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
- true
- true
-
-
- -tWM -tWC -wvoi -k
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
-
-
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
-
-
- -$O+
- Release_Build
- None
- true
- $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
-
-
- NDEBUG;$(BCC_Defines);$(BCC_Defines)
- -tWM -tWC -wvoi -r
- false
- false
- false
- false
- 1033
-
-
- NDEBUG;$(BCC_Defines);$(BCC_Defines)
-
-
-
- 6
- 15
-
-
- 6
- 13
-
-
- 9
- 4
-
-
- 5
- 16
-
-
- 3
- 10
-
-
- 11
- 0
-
-
- 12
- 1
-
-
- 8
- 13
-
-
- 7
- 14
-
-
- 18
-
-
- 21
-
-
- 9
- 2
-
-
- 22
-
-
- 5
- 14
-
-
- 4
- 15
-
-
- 17
-
-
- 16
-
-
- 21
-
-
- -1
- 1
-
-
- 7
- 12
-
-
- 2
- 11
-
-
- 8
- 3
-
-
- 22
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
-
- CPlusPlusBuilder.Personality.12
- CppConsoleApplication
-
-
-
- False
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1041
- 932
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
-
-
- True
-
-
-
-
-
-
- False
-
- False
-
- True
- False
-
-
-
- False
- True
- True
- False
-
-
-
- True
- False
-
-
- 12
-
-
-
-
diff --git a/app/rnx2rtkp/bcc/install.bat b/app/rnx2rtkp/bcc/install.bat
deleted file mode 100644
index 85f17c1a1..000000000
--- a/app/rnx2rtkp/bcc/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\_rnx2rtkp.exe ..\..\..\..\RTKLIB_bin\bin\rnx2rtkp.exe
diff --git a/app/rnx2rtkp/bcc_win64/_rnx2rtkp.res b/app/rnx2rtkp/bcc_win64/_rnx2rtkp.res
deleted file mode 100644
index 354c542a2..000000000
Binary files a/app/rnx2rtkp/bcc_win64/_rnx2rtkp.res and /dev/null differ
diff --git a/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.bpf b/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.bpf
deleted file mode 100644
index c20307586..000000000
--- a/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.bpf
+++ /dev/null
@@ -1,5 +0,0 @@
-̃t@C̓vWFNg}l[WgvWFNgt@Ĉ悤Ɉ܂B
-
-̃vWFNgɃt@Cljɂ[vWFNg|vWFNgɒlj]g܂
-
-main
\ No newline at end of file
diff --git a/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj.local b/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj.local
deleted file mode 100644
index f1855dc17..000000000
--- a/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj.local
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
- 2016/08/20 18:24:30.000.412,D:\proj\RTKLIB\app\rnx2rtkp\bcc_win64\_rnx2rtkp.cbproj=D:\proj\RTKLIB\app\rnx2rtkp\bcc_win64\_rnx2rtkp_win64.cbproj
-
-
diff --git a/app/rnx2rtkp/bcc_win64/clean.bat b/app/rnx2rtkp/bcc_win64/clean.bat
deleted file mode 100644
index 673b1e9cc..000000000
--- a/app/rnx2rtkp/bcc_win64/clean.bat
+++ /dev/null
@@ -1,22 +0,0 @@
-del Release_Build\*.obj
-del Release_Build\*.tds
-del Release_Build\*.exe
-del Release_Build\*.pch
-del Release_Build\*.map
-del Release_Build\*.ilc
-del Release_Build\*.ild
-del Release_Build\*.ilf
-del Release_Build\*.ils
-del Release_Build\*.o
-del Release_Build\*.d
-del Debug_Build\*.obj
-del Debug_Build\*.tds
-del Debug_Build\*.exe
-del Bebug_Build\*.pch
-del Bebug_Build\*.map
-del Bebug_Build\*.ilc
-del Bebug_Build\*.ild
-del Bebug_Build\*.ilf
-del Bebug_Build\*.ils
-del Bebug_Build\*.o
-del Bebug_Build\*.d
diff --git a/app/rnx2rtkp/bcc_win64/install.bat b/app/rnx2rtkp/bcc_win64/install.bat
deleted file mode 100644
index 2b09f6a27..000000000
--- a/app/rnx2rtkp/bcc_win64/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\_rnx2rtkp_win64.exe ..\..\..\..\RTKLIB_bin\bin\rnx2rtkp_win64.exe
diff --git a/app/rnx2rtkp/clang/makefile b/app/rnx2rtkp/clang/makefile
deleted file mode 100644
index b1c93ed07..000000000
--- a/app/rnx2rtkp/clang/makefile
+++ /dev/null
@@ -1,170 +0,0 @@
-# makefile for rnx2rtkp
-
-CC = clang
-BINDIR = /usr/local/bin
-SRC = ../../../src
-
-OPTS = -DTRACE -DENAGLO -DENAQZS -DENAGAL -DENACMP -DENAIRN -DNFREQ=3
-#OPTS = -DENAGLO -DENAQZS -DENAGAL -DENACMP -DNFREQ=2
-
-# for no lapack
-CFLAGS = -Wall -O3 -ansi -pedantic -Wno-unused-variable -I$(SRC) $(OPTS) -g
-LDLIBS = -lm -lrt
-
-#CFLAGS = -Wall -O3 -ansi -pedantic -Wno-unused-but-set-variable -I$(SRC) -DLAPACK $(OPTS)
-#LDLIBS = -lm -lrt -llapack -lblas
-
-# for gprof
-#CFLAGS = -Wall -O3 -ansi -pedantic -Wno-unused-but-set-variable -I$(SRC) -DLAPACK $(OPTS) -pg
-#LDLIBS = -lm -lrt -llapack -lblas -pg
-
-# for mkl
-##MKLDIR = /opt/intel/mkl
-#MKLDIR = /proj/madoca/lib/mkl
-#CFLAGS = -O3 -ansi -pedantic -Wno-unused-but-set-variable -I$(SRC) $(OPTS) -DMKL
-#LDLIBS = -L$(MKLDIR)/intel64 -lmkl_intel_lp64 -lmkl_core -lmkl_gnu_thread -lpthread -lgomp -lm -lrt
-
-all : rnx2rtkp
-rnx2rtkp : rnx2rtkp.o rtkcmn.o rinex.o rtkpos.o postpos.o solution.o
-rnx2rtkp : lambda.o geoid.o sbas.o preceph.o pntpos.o ephemeris.o options.o
-rnx2rtkp : ppp.o ppp_ar.o ppp_corr.o rtcm.o rtcm2.o rtcm3.o rtcm3e.o ionex.o tides.o qzslex.o
-
-rnx2rtkp.o : ../rnx2rtkp.c
- $(CC) -c $(CFLAGS) ../rnx2rtkp.c
-rtkcmn.o : $(SRC)/rtkcmn.c
- $(CC) -c $(CFLAGS) $(SRC)/rtkcmn.c
-rinex.o : $(SRC)/rinex.c
- $(CC) -c $(CFLAGS) $(SRC)/rinex.c
-rtkpos.o : $(SRC)/rtkpos.c
- $(CC) -c $(CFLAGS) $(SRC)/rtkpos.c
-postpos.o : $(SRC)/postpos.c
- $(CC) -c $(CFLAGS) $(SRC)/postpos.c
-solution.o : $(SRC)/solution.c
- $(CC) -c $(CFLAGS) $(SRC)/solution.c
-lambda.o : $(SRC)/lambda.c
- $(CC) -c $(CFLAGS) $(SRC)/lambda.c
-geoid.o : $(SRC)/geoid.c
- $(CC) -c $(CFLAGS) $(SRC)/geoid.c
-sbas.o : $(SRC)/sbas.c
- $(CC) -c $(CFLAGS) $(SRC)/sbas.c
-preceph.o : $(SRC)/preceph.c
- $(CC) -c $(CFLAGS) $(SRC)/preceph.c
-pntpos.o : $(SRC)/pntpos.c
- $(CC) -c $(CFLAGS) $(SRC)/pntpos.c
-ephemeris.o: $(SRC)/ephemeris.c
- $(CC) -c $(CFLAGS) $(SRC)/ephemeris.c
-options.o : $(SRC)/options.c
- $(CC) -c $(CFLAGS) $(SRC)/options.c
-ppp.o : $(SRC)/ppp.c
- $(CC) -c $(CFLAGS) $(SRC)/ppp.c
-ppp_ar.o : $(SRC)/ppp_ar.c
- $(CC) -c $(CFLAGS) $(SRC)/ppp_ar.c
-ppp_corr.o : $(SRC)/ppp_corr.c
- $(CC) -c $(CFLAGS) $(SRC)/ppp_corr.c
-rtcm.o : $(SRC)/rtcm.c
- $(CC) -c $(CFLAGS) $(SRC)/rtcm.c
-rtcm2.o : $(SRC)/rtcm2.c
- $(CC) -c $(CFLAGS) $(SRC)/rtcm2.c
-rtcm3.o : $(SRC)/rtcm3.c
- $(CC) -c $(CFLAGS) $(SRC)/rtcm3.c
-rtcm3e.o : $(SRC)/rtcm3e.c
- $(CC) -c $(CFLAGS) $(SRC)/rtcm3e.c
-ionex.o : $(SRC)/ionex.c
- $(CC) -c $(CFLAGS) $(SRC)/ionex.c
-tides.o : $(SRC)/tides.c
- $(CC) -c $(CFLAGS) $(SRC)/tides.c
-qzslex.o : $(SRC)/qzslex.c
- $(CC) -c $(CFLAGS) $(SRC)/qzslex.c
-
-rnx2rtkp.o : $(SRC)/rtklib.h
-rtkcmn.o : $(SRC)/rtklib.h
-rinex.o : $(SRC)/rtklib.h
-rtkpos.o : $(SRC)/rtklib.h
-postpos.o : $(SRC)/rtklib.h
-solution.o : $(SRC)/rtklib.h
-lambda.o : $(SRC)/rtklib.h
-geoid.o : $(SRC)/rtklib.h
-sbas.o : $(SRC)/rtklib.h
-preceph.o : $(SRC)/rtklib.h
-pntpos.o : $(SRC)/rtklib.h
-ephemeris.o: $(SRC)/rtklib.h
-options.o : $(SRC)/rtklib.h
-ppp.o : $(SRC)/rtklib.h
-ppp_ar.o : $(SRC)/rtklib.h
-rtcm.o : $(SRC)/rtklib.h
-rtcm2.o : $(SRC)/rtklib.h
-rtcm3.o : $(SRC)/rtklib.h
-rtcm3e.o : $(SRC)/rtklib.h
-ionex.o : $(SRC)/rtklib.h
-tides.o : $(SRC)/rtklib.h
-qzslex.o : $(SRC)/rtklib.h
-
-CMD1 = ./rnx2rtkp
-INPUT11 = ../../../test/data/rinex/07590920.05o ../../../test/data/rinex/30400920.05n
-INPUT12 = ../../../test/data/rinex/30400920.05o
-OPTS1 = -r -3978241.958 3382840.234 3649900.853
-
-test : test1 test2 test3 test4 test5 test6 test7 test8 test9 test10
-test : test11 test12 test13 test14 test15 test16 test17 test18 test19 test20
-test : test21 test22 test23 test24
-
-test1 :
- $(CMD1) $(INPUT11) -x 5 -o test1.pos
-test2 :
- $(CMD1) -t -e $(OPTS1) $(INPUT11) > test2.pos
-test3 :
- $(CMD1) -t -p 1 -e $(OPTS1) $(INPUT11) $(INPUT12) > test3.pos
-test4 :
- $(CMD1) -t -p 3 -e $(OPTS1) $(INPUT11) $(INPUT12) > test4.pos
-test5 :
- $(CMD1) -t -m 15 -e $(OPTS1) $(INPUT11) $(INPUT12) > test5.pos
-test6 :
- $(CMD1) -t -f 1 -e $(OPTS1) $(INPUT11) $(INPUT12) > test6.pos
-test7 :
- $(CMD1) -t -v 5 -e $(OPTS1) $(INPUT11) $(INPUT12) > test7.pos
-test8 :
- $(CMD1) -t -i -e $(OPTS1) $(INPUT11) $(INPUT12) > test8.pos
-test9 :
- $(CMD1) -t -p 0 $(OPTS1) $(INPUT11) > test9.pos
-test10 :
- $(CMD1) -t -p 0 $(OPTS1) $(INPUT11) -o test10.pos
-test11 :
- $(CMD1) -t -p 0 -n $(OPTS1) $(INPUT11) > test11.pos
-test12 :
- $(CMD1) -t -p 0 -g $(OPTS1) $(INPUT11) > test12.pos
-test13 :
- $(CMD1) -t -p 0 $(OPTS1) $(INPUT11) > test13.pos
-test14 :
- $(CMD1) -t -p 0 -u $(OPTS1) $(INPUT11) > test14.pos
-test15 :
- $(CMD1) -t -p 0 -d 9 $(OPTS1) $(INPUT11) > test15.pos
-test16 :
- $(CMD1) -t -p 0 -s , $(OPTS1) $(INPUT11) > test16.pos
-test17 :
- $(CMD1) -t -b -e $(OPTS1) $(INPUT11) $(INPUT12) > test17.pos
-test18 :
- $(CMD1) -t -c -e $(OPTS1) $(INPUT11) $(INPUT12) > test18.pos
-test19 :
- $(CMD1) -t -h -e $(OPTS1) $(INPUT11) $(INPUT12) > test19.pos
-test20 :
- $(CMD1) -t -p 4 -a $(OPTS1) $(INPUT11) $(INPUT12) > test20.pos
-test21 :
- $(CMD1) $(INPUT11) $(INPUT12) > test21.pos
-test22 :
- $(CMD1) -k opts1.conf $(INPUT11) $(INPUT12) > test22.pos
-test23 :
- $(CMD1) -k opts2.conf $(INPUT11) $(INPUT12) > test23.pos
-test24 :
- $(CMD1) -k opts3.conf $(INPUT11) $(INPUT12) -y 2 -o test24.pos
-test25 :
- $(CMD1) -k opts4.conf $(INPUT11) $(INPUT12) -y 2 -o test25.pos
-
-clean :
- rm -f rnx2rtkp rnx2rtkp.exe *.o *.pos *.trace
-
-prof :
- gprof rnx2rtkp > prof.txt
-
-install :
- cp rnx2rtkp $(BINDIR)
-
diff --git a/app/rnx2rtkp/msc/clean.bat b/app/rnx2rtkp/msc/clean.bat
deleted file mode 100644
index cc57642c6..000000000
--- a/app/rnx2rtkp/msc/clean.bat
+++ /dev/null
@@ -1,19 +0,0 @@
-del Release\*.obj
-del Release\*.exe
-del Release\*.res
-del Release\*.manifest
-del Release\*.pdb
-del Release\*.idb
-del Release\*.ilk
-del Release\*.dep
-del Release\*.htm
-del Debug\*.obj
-del Debug\*.exe
-del Debug\*.res
-del Debug\*.manifest
-del Debug\*.pdb
-del Debug\*.idb
-del Debug\*.ilk
-del Debug\*.dep
-del Debug\*.htm
-del *.ncb
diff --git a/app/rnx2rtkp/msc/install.bat b/app/rnx2rtkp/msc/install.bat
deleted file mode 100644
index 11bde2f69..000000000
--- a/app/rnx2rtkp/msc/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release\rnx2rtkp.exe ..\..\..\bin
diff --git a/app/rnx2rtkp/msc/msc.sln b/app/rnx2rtkp/msc/msc.sln
deleted file mode 100644
index 921d1081e..000000000
--- a/app/rnx2rtkp/msc/msc.sln
+++ /dev/null
@@ -1,28 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 14
-VisualStudioVersion = 14.0.25420.1
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "msc", "msc.vcxproj", "{830901EE-9359-489F-BA7E-04289F28D5E0}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {830901EE-9359-489F-BA7E-04289F28D5E0}.Debug|Win32.ActiveCfg = Debug|Win32
- {830901EE-9359-489F-BA7E-04289F28D5E0}.Debug|Win32.Build.0 = Debug|Win32
- {830901EE-9359-489F-BA7E-04289F28D5E0}.Debug|x64.ActiveCfg = Debug|x64
- {830901EE-9359-489F-BA7E-04289F28D5E0}.Debug|x64.Build.0 = Debug|x64
- {830901EE-9359-489F-BA7E-04289F28D5E0}.Release|Win32.ActiveCfg = Release|Win32
- {830901EE-9359-489F-BA7E-04289F28D5E0}.Release|Win32.Build.0 = Release|Win32
- {830901EE-9359-489F-BA7E-04289F28D5E0}.Release|x64.ActiveCfg = Release|x64
- {830901EE-9359-489F-BA7E-04289F28D5E0}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/app/rnx2rtkp/msc/msc.suo b/app/rnx2rtkp/msc/msc.suo
deleted file mode 100644
index 01974487c..000000000
Binary files a/app/rnx2rtkp/msc/msc.suo and /dev/null differ
diff --git a/app/rnx2rtkp/msc/msc.vcproj.falcon.ttaka.user b/app/rnx2rtkp/msc/msc.vcproj.falcon.ttaka.user
deleted file mode 100644
index 841eea91f..000000000
--- a/app/rnx2rtkp/msc/msc.vcproj.falcon.ttaka.user
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/rtkconv/install.bat b/app/rtkconv/install.bat
deleted file mode 100644
index ad6705512..000000000
--- a/app/rtkconv/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\rtkconv.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkconv/rtkconv.cbproj.local b/app/rtkconv/rtkconv.cbproj.local
deleted file mode 100644
index 8e3d98972..000000000
--- a/app/rtkconv/rtkconv.cbproj.local
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
- 2012/10/18 07:18:17.000.621,D:\proj\rtklib\app\rtkconv\Unit1.h=D:\proj\rtklib\app\rtkconv\codeopt.h
- 2012/10/18 07:18:17.000.621,D:\proj\rtklib\app\rtkconv\Unit1.dfm=D:\proj\rtklib\app\rtkconv\codeopt.dfm
- 2013/11/02 15:50:12.000.955,=D:\proj\RTKLIB\src\rcv\septentrio.c
- 2014/07/26 19:58:36.000.097,=D:\proj\RTKLIB\src\rcv\rcvlex.c
- 2014/08/26 08:52:10.000.736,=D:\proj\RTKLIB\src\rcv\rt17.c
- 2018/01/30 09:12:57.000.995,D:\proj\RTKLIB_2.4.2\src\rcv\septentrio.c=
- 2018/11/05 19:16:48.000.438,=T:\proj\RTKLIB\src\rcv\cmr.c
- 2018/11/05 19:17:08.000.523,=T:\proj\RTKLIB\src\rcv\tersus.c
- 2018/11/05 19:17:21.000.811,=T:\proj\RTKLIB\src\rcv\septentrio.c
- 2019/08/03 22:51:57.000.070,=D:\proj\RTKLIB\src\rcv\allys.c
-
-
diff --git a/app/rtkconv/rtkconv.res b/app/rtkconv/rtkconv.res
deleted file mode 100644
index fb7f70d4b..000000000
Binary files a/app/rtkconv/rtkconv.res and /dev/null differ
diff --git a/app/rtkget/getmain.dfm b/app/rtkget/getmain.dfm
deleted file mode 100644
index 828f22490..000000000
--- a/app/rtkget/getmain.dfm
+++ /dev/null
@@ -1,881 +0,0 @@
-object MainForm: TMainForm
- Left = 0
- Top = 0
- BorderIcons = [biSystemMenu, biMinimize]
- Caption = 'RTKGET'
- ClientHeight = 335
- ClientWidth = 464
- Color = clWhite
- Constraints.MaxHeight = 373
- Constraints.MaxWidth = 480
- Constraints.MinHeight = 373
- Constraints.MinWidth = 480
- DoubleBuffered = True
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- OldCreateOrder = False
- Scaled = False
- OnClose = FormClose
- OnCreate = FormCreate
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object Panel2: TPanel
- AlignWithMargins = True
- Left = 1
- Top = 0
- Width = 462
- Height = 226
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alTop
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 0
- ExplicitWidth = 463
- object Label6: TLabel
- Left = 12
- Top = 264
- Width = 71
- Height = 13
- Caption = 'Local Directory'
- Color = clWhite
- ParentColor = False
- end
- object LabelSta: TLabel
- Left = 320
- Top = 6
- Width = 56
- Height = 13
- Caption = 'Stations (0)'
- end
- object Label8: TLabel
- Left = 127
- Top = 6
- Width = 85
- Height = 13
- Caption = 'Time Span (GPST)'
- end
- object BtnKeyword: TSpeedButton
- Left = 228
- Top = 180
- Width = 15
- Height = 19
- Caption = '?'
- Flat = True
- OnClick = BtnKeywordClick
- end
- object Panel1: TPanel
- Left = 123
- Top = 24
- Width = 194
- Height = 77
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 2
- object Label1: TLabel
- Left = 8
- Top = 8
- Width = 24
- Height = 13
- Caption = 'Start'
- end
- object Label3: TLabel
- Left = 8
- Top = 31
- Width = 18
- Height = 13
- Caption = 'End'
- end
- object BtnTime1: TSpeedButton
- Left = 176
- Top = 5
- Width = 15
- Height = 21
- Caption = '?'
- Flat = True
- OnClick = BtnTime1Click
- end
- object BtnTime2: TSpeedButton
- Left = 176
- Top = 28
- Width = 15
- Height = 21
- Caption = '?'
- Flat = True
- OnClick = BtnTime2Click
- end
- object Label7: TLabel
- Left = 8
- Top = 54
- Width = 20
- Height = 13
- Caption = 'Intv'
- end
- object Label2: TLabel
- Left = 100
- Top = 54
- Width = 17
- Height = 13
- Caption = 'No.'
- end
- object TimeY1: TEdit
- Left = 38
- Top = 5
- Width = 65
- Height = 21
- TabOrder = 0
- Text = '2000/01/01'
- end
- object TimeY2: TEdit
- Left = 38
- Top = 28
- Width = 65
- Height = 21
- TabOrder = 4
- Text = '2000/01/01'
- end
- object TimeH2: TEdit
- Left = 123
- Top = 28
- Width = 37
- Height = 21
- TabOrder = 6
- Text = '00:00'
- end
- object TimeH1: TEdit
- Left = 123
- Top = 5
- Width = 37
- Height = 21
- TabOrder = 2
- Text = '00:00'
- end
- object TimeY1UD: TUpDown
- Left = 103
- Top = 4
- Width = 17
- Height = 23
- TabOrder = 1
- OnChangingEx = TimeY1UDChangingEx
- end
- object TimeY2UD: TUpDown
- Left = 103
- Top = 27
- Width = 17
- Height = 23
- TabOrder = 5
- OnChangingEx = TimeY2UDChangingEx
- end
- object TimeH2UD: TUpDown
- Left = 160
- Top = 27
- Width = 17
- Height = 23
- TabOrder = 7
- OnChangingEx = TimeH2UDChangingEx
- end
- object TimeH1UD: TUpDown
- Left = 160
- Top = 4
- Width = 17
- Height = 23
- TabOrder = 3
- OnChangingEx = TimeH1UDChangingEx
- end
- object TimeInt: TComboBox
- Left = 37
- Top = 51
- Width = 50
- Height = 21
- TabOrder = 8
- Text = '24H'
- Items.Strings = (
- '15min'
- '30min'
- '1H'
- '3H'
- '6H'
- '12H'
- '24H'
- '7day')
- end
- object Number: TEdit
- Left = 123
- Top = 51
- Width = 52
- Height = 21
- TabOrder = 9
- Text = '0'
- end
- end
- object BtnDir: TButton
- Left = 433
- Top = 200
- Width = 27
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 8
- OnClick = BtnDirClick
- end
- object DataList: TListBox
- Left = 1
- Top = 24
- Width = 120
- Height = 198
- ItemHeight = 13
- MultiSelect = True
- TabOrder = 1
- OnClick = DataListClick
- end
- object DataType: TComboBox
- Left = 1
- Top = 2
- Width = 60
- Height = 21
- AutoComplete = False
- Style = csDropDownList
- DropDownCount = 32
- TabOrder = 0
- OnChange = DataTypeChange
- end
- object BtnStas: TButton
- Left = 433
- Top = 1
- Width = 27
- Height = 23
- Hint = 'Load Station List'
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- ParentShowHint = False
- ShowHint = True
- TabOrder = 10
- OnClick = BtnStasClick
- end
- object LocalDir: TCheckBox
- Left = 128
- Top = 181
- Width = 90
- Height = 17
- Caption = ' Local Directory'
- TabOrder = 6
- OnClick = LocalDirClick
- end
- object StaList: TListBox
- Left = 319
- Top = 24
- Width = 140
- Height = 174
- Hint = 'Station List'
- ItemHeight = 13
- MultiSelect = True
- ParentShowHint = False
- ShowHint = True
- TabOrder = 11
- OnClick = StaListClick
- end
- object Panel4: TPanel
- Left = 122
- Top = 102
- Width = 194
- Height = 43
- BevelOuter = bvNone
- TabOrder = 3
- object Label4: TLabel
- Left = 8
- Top = 2
- Width = 46
- Height = 13
- Caption = 'FTP Login'
- end
- object FtpLogin: TEdit
- Left = 1
- Top = 17
- Width = 86
- Height = 21
- TabOrder = 0
- Text = 'anonymous'
- end
- object FtpPasswd: TEdit
- Left = 88
- Top = 17
- Width = 106
- Height = 21
- PasswordChar = '*'
- TabOrder = 1
- Text = 'user@'
- end
- object HidePasswd: TCheckBox
- Left = 88
- Top = 0
- Width = 97
- Height = 17
- Caption = 'Password'
- TabOrder = 2
- OnClick = HidePasswdClick
- end
- end
- object UnZip: TCheckBox
- Left = 128
- Top = 162
- Width = 146
- Height = 17
- Caption = ' Unzip/Uncompact Files'
- TabOrder = 5
- end
- object SkipExist: TCheckBox
- Left = 128
- Top = 143
- Width = 112
- Height = 17
- Caption = ' Skip Existing Files'
- TabOrder = 4
- end
- object SubType: TComboBox
- Left = 62
- Top = 2
- Width = 59
- Height = 21
- AutoComplete = False
- Style = csDropDownList
- DropDownCount = 32
- Sorted = True
- TabOrder = 12
- OnChange = DataTypeChange
- end
- object BtnAll: TButton
- Left = 407
- Top = 1
- Width = 27
- Height = 23
- Hint = 'Select/Clear All'
- Caption = 'A'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- ParentShowHint = False
- ShowHint = True
- TabOrder = 9
- OnClick = BtnAllClick
- end
- object Dir: TComboBox
- Left = 123
- Top = 201
- Width = 309
- Height = 21
- DropDownCount = 20
- TabOrder = 7
- OnChange = DirChange
- end
- end
- object Panel3: TPanel
- AlignWithMargins = True
- Left = 0
- Top = 302
- Width = 464
- Height = 33
- Margins.Left = 0
- Margins.Top = 1
- Margins.Right = 0
- Margins.Bottom = 0
- Align = alBottom
- BevelOuter = bvNone
- TabOrder = 1
- ExplicitTop = 301
- ExplicitWidth = 465
- ExplicitHeight = 32
- object BtnFile: TButton
- Left = 1
- Top = 1
- Width = 77
- Height = 29
- Caption = '&Files...'
- TabOrder = 0
- OnClick = BtnFileClick
- end
- object BtnLog: TButton
- Left = 78
- Top = 1
- Width = 77
- Height = 29
- Caption = '&Log...'
- TabOrder = 1
- OnClick = BtnLogClick
- end
- object BtnOpts: TButton
- Left = 155
- Top = 1
- Width = 77
- Height = 29
- Caption = '&Options...'
- TabOrder = 2
- OnClick = BtnOptsClick
- end
- object BtnTest: TButton
- Left = 232
- Top = 1
- Width = 77
- Height = 29
- Caption = '&Test...'
- TabOrder = 3
- OnClick = BtnTestClick
- end
- object BtnDownload: TButton
- Left = 309
- Top = 1
- Width = 77
- Height = 29
- Caption = '&Download'
- TabOrder = 4
- OnClick = BtnDownloadClick
- end
- object BtnExit: TButton
- Left = 386
- Top = 1
- Width = 77
- Height = 29
- Caption = '&Exit'
- TabOrder = 5
- OnClick = BtnExitClick
- end
- end
- object Msg1: TPanel
- AlignWithMargins = True
- Left = 1
- Top = 226
- Width = 462
- Height = 25
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alTop
- BevelInner = bvRaised
- BevelOuter = bvLowered
- DoubleBuffered = True
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentDoubleBuffered = False
- ParentFont = False
- ParentShowHint = False
- ShowHint = True
- TabOrder = 2
- ExplicitWidth = 463
- object MsgLabel1: TLabel
- Left = 2
- Top = 2
- Width = 458
- Height = 21
- Margins.Left = 1
- Margins.Top = 1
- Margins.Right = 1
- Margins.Bottom = 1
- Align = alClient
- Alignment = taCenter
- Layout = tlCenter
- ExplicitWidth = 3
- ExplicitHeight = 13
- end
- end
- object Msg3: TPanel
- AlignWithMargins = True
- Left = 1
- Top = 276
- Width = 462
- Height = 25
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alTop
- BevelInner = bvRaised
- BevelOuter = bvLowered
- Color = clWhite
- DoubleBuffered = True
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentBackground = False
- ParentDoubleBuffered = False
- ParentFont = False
- TabOrder = 3
- ExplicitWidth = 463
- object MsgLabel3: TLabel
- Left = 25
- Top = 2
- Width = 412
- Height = 21
- Align = alClient
- Alignment = taCenter
- Color = clWhite
- ParentColor = False
- Layout = tlCenter
- ExplicitLeft = 26
- ExplicitWidth = 3
- ExplicitHeight = 13
- end
- object BtnTray: TSpeedButton
- Left = 437
- Top = 2
- Width = 23
- Height = 21
- Align = alRight
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF787878FFFFFF787878FFFFFF787878FF
- FFFF000000000000000000FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFF000000FFFFFF000000FFFFFFFFFFFF00FFFFFFFFFFFF
- 787878FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000FFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF787878FFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFF787878FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- 787878FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF787878FFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF787878FFFFFF787878FFFFFF787878FF
- FFFF787878FFFFFF787878FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- OnClick = BtnTrayClick
- ExplicitLeft = 436
- end
- object BtnHelp: TSpeedButton
- Left = 2
- Top = 2
- Width = 23
- Height = 21
- Align = alLeft
- Caption = '?'
- Flat = True
- OnClick = BtnHelpClick
- end
- end
- object Msg2: TPanel
- AlignWithMargins = True
- Left = 1
- Top = 251
- Width = 462
- Height = 25
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alTop
- BevelInner = bvRaised
- BevelOuter = bvLowered
- DoubleBuffered = True
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentDoubleBuffered = False
- ParentFont = False
- ParentShowHint = False
- ShowHint = True
- TabOrder = 4
- ExplicitWidth = 463
- object Image1: TImage
- Left = 444
- Top = 6
- Width = 12
- Height = 12
- Picture.Data = {
- 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
- 00000D0000000100040000000000680000000000000000000000100000000000
- 0000000000000000800000800000008080008000000080008000808000008080
- 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
- FF00FFFFFFFFFFFFF000FFFFFFFFFFFFF000FF0F70000FFFF000FF000FFFF0FF
- F000FF0007FFFF7FF000FF00FFFFFFFFF000FF0FFFFFFF0FF000FFFFFFFFF00F
- F000FF7FFFF7000FF000FFF0FFFF000FF000FFFF00007F0FF000FFFFFFFFFFFF
- F000FFFFFFFFFFFFF000}
- Transparent = True
- Visible = False
- end
- object Image2: TImage
- Left = 444
- Top = 6
- Width = 12
- Height = 12
- Picture.Data = {
- 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
- 00000D0000000100040000000000680000000000000000000000100000000000
- 0000000000000000800000800000008080008000000080008000808000008080
- 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
- FF00FFFFFFFFFFFFF000FFFFFFFFFFFFF000FFFF00000FFFF000F7F0FFFFF8FF
- F000F00078FFFF8FF000F0007FFFFF0FF000F707FFFFF707F000FF0FFFFF7000
- F000FF8FFFF87000F000FFF8FFFFF0F7F000FFFF00000FFFF000FFFFFFFFFFFF
- F000FFFFFFFFFFFFF000}
- Transparent = True
- Visible = False
- end
- object Image3: TImage
- Left = 444
- Top = 6
- Width = 12
- Height = 12
- Picture.Data = {
- 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
- 00000D0000000100040000000000680000000000000000000000100000000000
- 0000000000000000800000800000008080008000000080008000808000008080
- 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
- FF00FFFFFFFFFFFFF000FFFFFFFFFFFFF000FFFF00078FFFF000FFF0FFFFF0FF
- F000FF0FFFFFF00FF0007F0F7FFFF007F000F0008FFF7000F000F700FFFF8F0F
- 7000FF00FFFFFF0FF000FFF0FFFFF0FFF000FFFF87000FFFF000FFFFFFFFFFFF
- F000FFFFFFFFFFFFF000}
- Transparent = True
- Visible = False
- end
- object Image4: TImage
- Left = 444
- Top = 6
- Width = 12
- Height = 12
- Picture.Data = {
- 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
- 00000D0000000100040000000000680000000000000000000000100000000000
- 0000000000000000800000800000008080008000000080008000808000008080
- 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
- FF00FFFFFFFFFFFFF000FFFFFFFFFFFFF000FFFF00F70FFFF000FFF0FFFF007F
- F000FF0FFFFFF007F000FF0FFFFF8000F000F80F7FFF7F08F000F0008FFFFF0F
- F000F700FFFFFF0FF000FF700FFFF0FFF000FFFF07F00FFFF000FFFFFFFFFFFF
- F000FFFFFFFFFFFFF000}
- Transparent = True
- Visible = False
- end
- object Image5: TImage
- Left = 444
- Top = 6
- Width = 12
- Height = 12
- Picture.Data = {
- 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
- 00000D0000000100040000000000680000000000000000000000100000000000
- 0000000000000000800000800000008080008000000080008000808000008080
- 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
- FF00FFFFFFFFFFFFF000FFFFFFFFFFFFF000FFFF7F00000FF000FFF0FFF000FF
- F000FF0FFFFF007FF000FF0FFFFF7F0FF000FF0FFFFFFF0FF000FF0F7FFFFF0F
- F000FF700FFFFF0FF000FFF000FFF0FFF000FF00000F7FFFF000FFFFFFFFFFFF
- F000FFFFFFFFFFFFF000}
- Transparent = True
- Visible = False
- end
- object Image6: TImage
- Left = 444
- Top = 6
- Width = 12
- Height = 12
- Picture.Data = {
- 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
- 00000D0000000100040000000000680000000000000000000000100000000000
- 0000000000000000800000800000008080008000000080008000808000008080
- 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
- FF00FFFFFFFFFFFFF000FFFFFF7007FFF000FFFF80000FFFF000FFF8FF7000FF
- F000FF0FFFF77F0FF000FF0FFFFF8F0FF000FF0FFFFFFF0FF000FF0F8FFFFF0F
- F000FF0F77FFFF0FF000FFF0007FF8FFF000FFFF00008FFFF000FFF7007FFFFF
- F000FFFFFFFFFFFFF000}
- Transparent = True
- Visible = False
- end
- object Image7: TImage
- Left = 444
- Top = 6
- Width = 12
- Height = 12
- Picture.Data = {
- 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
- 00000D0000000100040000000000680000000000000000000000100000000000
- 0000000000000000800000800000008080008000000080008000808000008080
- 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
- FF00FFFFFFF7FFFFF000FFFFF70FFFFFF000FFFF00000FFFF000FFF0000FF0FF
- F000FF8FFF78FF0FF000FF7FFFFFFF0FF000FF0FFFFFFF0FF000FF0FFFFFFF7F
- F000FF0FF78FFF8FF000FFF0FF0000FFF000FFFF00000FFFF000FFFFFF07FFFF
- F000FFFFF7FFFFFFF000}
- Transparent = True
- Visible = False
- end
- object Image8: TImage
- Left = 444
- Top = 6
- Width = 12
- Height = 12
- Picture.Data = {
- 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
- 00000D0000000100040000000000680000000000000000000000100000000000
- 0000000000000000800000800000008080008000000080008000808000008080
- 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
- FF00FFFFFFFFFFFFF000FFFF708FFFFFF000FFF700000FFFF000FFF000FFF0FF
- F000FF00F87FFF0FF000FF7FFFFFFF0FF000FFFFFFFFFFFFF000FF0FFFFFFF7F
- F000FF0FFF78F00FF000FFF0FFF000FFF000FFFF000007FFF000FFFFFF807FFF
- F000FFFFFFFFFFFFF000}
- Transparent = True
- Visible = False
- end
- object MsgLabel2: TLabel
- Left = 2
- Top = 2
- Width = 458
- Height = 21
- Align = alClient
- Alignment = taCenter
- Layout = tlCenter
- ExplicitWidth = 3
- ExplicitHeight = 13
- end
- end
- object OpenDialog: TOpenDialog
- Filter = 'Text File (*.txt)|*.txt|All Files (*.*)|*.*'
- Title = 'Satation List File'
- Left = 25
- Top = 41
- end
- object SaveDialog: TSaveDialog
- Left = 66
- Top = 41
- end
- object Timer: TTimer
- Enabled = False
- Interval = 150
- OnTimer = TimerTimer
- Left = 24
- Top = 88
- end
- object TrayIcon: TTrayIcon
- Hint = 'RTKGET'
- Icon.Data = {
- 0000010001002020000001001800A80C00001600000028000000200000004000
- 00000100180000000000800C000000000000000000000000000000000000CC48
- 3FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC
- 483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483F
- CC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEDEDED00000000000000
- 00007F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F000000000000000000
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000007F7F7FFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F
- 000000363636FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000007F7F7FFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF7F7F7F515151FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF0000007F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF7F7F7F3D3D3DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF3C3C3CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFF7F7F7F3832327F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF3E3E3EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFF7F7F7F3E303000F2FF3330307F7F7FFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF3E3E3EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFF7F7F7F3D2F2F00F2FF00F2FF00F2FF3029297F7F7FF8F8F8FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF3E3E3EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFE8E8E80000000000007F
- 7F7F3B2D2D00F2FF00F2FF00F2FF00F2FF00F2FF312A2A7F7F7F000000000000
- FFFFFFFFFFFFFFFFFF3E3E3EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF000000000000FFFFFF7F7F7F3D
- 2E2E00F2FF00F2FF00F2FF00F2FF00F2FF00F2FF00F2FF3532327F7F7FFFFFFF
- 000000373737FFFFFF484848FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF0000003838387F7F7FFFFFFF7F7F7F3F393900
- F2FF00F2FF00F2FF00F2FF00F2FF00F2FF00F2FF00F2FF00F2FF383F3F7F7F7F
- FFFFFF7F7F7F000000414141FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF0000007F7F7FFFFFFFFFFFFF27252500000000
- 000000000000F2FF00F2FF00F2FF00F2FF00F2FF0000000000000000001E1C1C
- FFFFFFFFFFFF7F7F7F3B3B3BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFF8F7F7FF
- FFFF00000000F2FF00F2FF00F2FF00F2FF00F2FF3B2B2BFFFFFFF7F5F5F8F8F8
- EBEBEBFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFE9E9E9FFFFFFFFFFFFFF
- FFFF00000000F2FF00F2FF00F2FF00F2FF00F2FF3B2E2EFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF383838F6F6F6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFFFFFFFFFFFF
- FFFF00000000F2FF00F2FF00F2FF00F2FF00F2FF3E3131FFFFFFFFFFFFFFFFFF
- 363636000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F000000000000FF
- FFFF00000000F2FF00F2FF00F2FF00F2FF00F2FF453838FFFFFF000000000000
- 7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFC1C1C164696B8C9497ABB0B3CACED0ECEFF0FFFFFF7F
- 7F7F00000000F2FF00F2FF00F2FF00F2FF00F2FF382E2E7F7F7FFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFF9EA4A65626176B240D5D2C19502F2444322D282728FF
- FFFF000000000000000000000000000000000000000000FFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFF7D848A76380A92390090390091380098360048372BE9
- EBEDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9D
- ADB3B5CDD1D3EBEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFF5E656E8F4F029C55009B55009B5500A45600353637FF
- FFFFB4B7B9363D44562C1C5F2E18542F202F3339A5A8AAFFFFFFFFFFFF333739
- 5E25134E2D2542322F3434373F494E727272FFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFF3A4251B47100AD6F00AC6F00AD6F00B47200454D5BCD
- CFD239322D943B00943D00933E00943D00953C003D342FA8ABAEFFFFFF3B3634
- 9430008E32008F31009230007E2E00656D72FFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFF343437CD8E00C08700C08700C28900B27F036F75843D
- 424AA55C00A05C009E5D009E5D009E5D009F5C00A75B00393D43E9ECF04E3E2C
- 9D50009650009650009A500078470E878D93FFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFE7E8ED52492EDFA500D29D00D29D00D7A000B28B13383F526F
- 5B31BC7C00B37800B37800B37800B37800B37800BB7B007B5C2069707D6D5329
- AE6B00A86900A86900AD6B00725018A6ABB1FFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFC9CBD36D5D25EEB600E2AF00E2AF00EBB400A38520373E5599
- 771DD09600C99200C99200C99200C99200C99200CF9500A37D173A42578B6B21
- C28500BC8200BC8200C48600675222C7CAD0FFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFA6A9B592781AFAC200F0BC00F0BC00FBC3008D782864697D88
- 7026E7AF00DBA700DBA700DBA700DBA700DBA700E6AE0090782741485FAB8314
- D39B00CE9800CE9800DA9F00574B2BE2E4E9FFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFF888C9BC09B0CFFD400FFCC00FFCA00FFD2006A5C2ADEE0E930
- 3547FAC100EEB900EBB700EBB700EBB700EDB800FFC6003E3F43696F83CC9E03
- E2AD00DFAB00DFAB00EFB6003C3A34FFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFF5F60654E4729756424947C1CB59411E9BA0048432EFFFFFFA6
- A8AE49432EFFCF00FFCC00FEC800FFCB00FFD200544C2DA6A9B1464D65F7BE00
- EDB900EDB900EDB900FEC40033394EFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFEBECF0CACCD5A7AAB7868A9A666A7E45464AFFFFFFFF
- FFFF9C9EA62C2D338B751FBE9B0F9C81172C2F3B92949CFFFFFF383737FFD700
- FDC700FAC500FAC500E9B80051576CFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFA7AAB5767A8AA2A5B1FDFEFFFFFFFFECECEE363226A58814
- BD990EDDB105FFCE00DEB20173788AFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
- 3FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC
- 483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483F
- CC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483F0000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000000000000000000000000000}
- OnDblClick = TrayIconDblClick
- Left = 67
- Top = 89
- end
-end
diff --git a/app/rtkget/install.bat b/app/rtkget/install.bat
deleted file mode 100644
index ab2ab5d6b..000000000
--- a/app/rtkget/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\rtkget.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkget/rtkget.cbproj.local b/app/rtkget/rtkget.cbproj.local
deleted file mode 100644
index be01a5ff6..000000000
--- a/app/rtkget/rtkget.cbproj.local
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
- 2012/12/25 21:32:22.000.915,D:\proj\rtklib\app\downloader\dloptdlg.dfm=D:\proj\rtklib\app\downloader\Unit1.dfm
- 2012/12/25 21:32:22.000.915,D:\proj\rtklib\app\downloader\dloptdlg.h=D:\proj\rtklib\app\downloader\Unit1.h
- 2012/12/30 01:36:05.000.072,D:\proj\rtklib\app\rtkget\rtkget.cbproj=D:\proj\rtklib\app\rtkget\downloader.cbproj
- 2012/12/30 01:36:25.000.708,D:\proj\rtklib\app\rtkget\getmain.dfm=D:\proj\rtklib\app\rtkget\dlmain.dfm
- 2012/12/30 01:36:25.000.708,D:\proj\rtklib\app\rtkget\getmain.h=D:\proj\rtklib\app\rtkget\dlmain.h
- 2012/12/30 01:36:50.000.174,D:\proj\rtklib\app\rtkget\getoptdlg.dfm=D:\proj\rtklib\app\rtkget\dloptdlg.dfm
- 2012/12/30 01:36:50.000.174,D:\proj\rtklib\app\rtkget\getoptdlg.h=D:\proj\rtklib\app\rtkget\dloptdlg.h
- 2013/01/15 05:46:47.000.312,D:\proj\rtklib\app\rtkget\staoptdlg.h=D:\proj\rtklib\app\rtkget\Unit1.h
- 2013/01/15 05:46:47.000.312,D:\proj\rtklib\app\rtkget\staoptdlg.dfm=D:\proj\rtklib\app\rtkget\Unit1.dfm
-
-
diff --git a/app/rtkget/rtkget.res b/app/rtkget/rtkget.res
deleted file mode 100644
index 2639c2f45..000000000
Binary files a/app/rtkget/rtkget.res and /dev/null differ
diff --git a/app/rtklaunch/install.bat b/app/rtklaunch/install.bat
deleted file mode 100644
index 957d718a2..000000000
--- a/app/rtklaunch/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release\rtklaunch.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtklaunch/rtklaunch.cbproj b/app/rtklaunch/rtklaunch.cbproj
deleted file mode 100644
index a4a6e6f1b..000000000
--- a/app/rtklaunch/rtklaunch.cbproj
+++ /dev/null
@@ -1,238 +0,0 @@
-
-
- {B9D0F977-D158-4447-9818-D26CDBC2CE25}
- 18.6
- VCL
- rtklaunch.cpp
- True
- Release
- Win32
- 1
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- false
- false
- false
- false
- false
- false
- false
- rtklaunch
- vclx.bpi;vcl.bpi;$(PackageImports)
- ..\..\src\;$(ILINK_LibraryPath)
- ..\..\src\;$(IncludePath)
- false
- None
- true
- ..\..\src;$(BCC_IncludePath)
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
- 1033
- None
- <_TCHARMapping>char
- CppVCLApplication
- true
- System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
- rtl.lib;vcl.lib
- ..\icon\rtk5.ico
- JPHNE
- .\$(Config)
- .\$(Config)
- false
- true
- true
- $(BDSLIB)\$(PLATFORM)\release\$(LANGDIR);$(ILINK_TranslatedLibraryPath)
-
-
- true
- WIN32;TRACE;$(BCC_Defines)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- $(BDSINCLUDE)\windows\vcl;$(IncludePath)
- $(BDS)\bin\default_app.manifest
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- bindcompvcl;vcltouch;bcbsmp;vcldbx;vclribbon;vcl;vclib;dsnapcon;vclx;ibxpress;vclimg;bdertl;vclactnband;vcldb;bcbie;vcldsnap;$(PackageImports)
- WIN32;TRACE;$(BCC_Defines)
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- false
- true
- false
- true
- false
- None
- DEBUG
- true
- true
- true
- true
- Full
- true
- $(BDSLIB)\$(PLATFORM)\debug;$(ILINK_LibraryPath)
- $(BDSLIB)\$(PLATFORM)\debug\$(LANGDIR);$(ILINK_TranslatedLibraryPath)
-
-
- _DEBUG;$(Defines)
- -tray
- true
- rtl.lib;vcl.lib
- 1033
-
-
- _DEBUG;$(Defines)
-
-
- None
-
-
- true
- NDEBUG;$(Defines)
- ..\icon\rtk9.ico
- rtl.lib;vcl.lib
- $(BDS)\bin\default_app.manifest
- Debug
-
-
- NDEBUG;$(Defines)
-
-
-
-
- dfm
- launchmain.h
- 1
-
-
-
- dfm
- launchoptdlg.h
- 3
-
-
- 0
-
-
- 2
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- CPlusPlusBuilder.Personality.12
- CppVCLApplication
-
-
-
- False
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1041
- 932
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
- False
- True
- True
- False
-
-
- rtklaunch.cpp
-
-
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
-
-
-
- True
- False
-
-
- 12
-
-
-
-
diff --git a/app/rtklaunch/rtklaunch.cbproj.local b/app/rtklaunch/rtklaunch.cbproj.local
deleted file mode 100644
index dd152a23c..000000000
--- a/app/rtklaunch/rtklaunch.cbproj.local
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
- 2012/12/27 19:26:29.000.829,D:\proj\rtklib\app\launcher\rtklaunch.h=C:\Users\ttaka\Documents\RAD Studio\Projects\Unit1.h
- 2012/12/27 19:26:29.000.829,D:\proj\rtklib\app\launcher\rtklaunch.dfm=C:\Users\ttaka\Documents\RAD Studio\Projects\Unit1.dfm
- 2012/12/27 19:26:45.000.244,D:\proj\rtklib\app\launcher\launcher.cbproj=C:\Users\ttaka\Documents\RAD Studio\Projects\Project1.cbproj
- 2012/12/29 11:22:01.000.566,D:\proj\rtklib\app\launcher\launchmain.h=D:\proj\rtklib\app\launcher\rtklaunch.h
- 2012/12/29 11:22:01.000.566,D:\proj\rtklib\app\launcher\launchmain.dfm=D:\proj\rtklib\app\launcher\rtklaunch.dfm
- 2012/12/29 11:33:04.000.473,D:\proj\rtklib\app\launcher\launchmain.h=D:\proj\rtklib\app\launcher\Unit1.h
- 2012/12/29 11:33:04.000.473,D:\proj\rtklib\app\launcher\launchmain.dfm=D:\proj\rtklib\app\launcher\Unit1.dfm
- 2013/01/01 11:51:56.000.716,D:\proj\rtklib\app\launcher\rtklaunch.cbproj=D:\proj\rtklib\app\launcher\launcher.cbproj
- 2016/09/03 07:58:22.000.624,=D:\proj\RTKLIB\app\rtklaunch\Unit1.cpp
- 2016/09/03 08:02:50.000.815,D:\proj\RTKLIB\app\rtklaunch\Unit1.h=D:\proj\RTKLIB\app\rtklaunch\launchopt.h
- 2016/09/03 08:02:50.000.815,D:\proj\RTKLIB\app\rtklaunch\Unit1.cpp=D:\proj\RTKLIB\app\rtklaunch\launchopt.cpp
- 2016/09/03 08:02:50.000.815,D:\proj\RTKLIB\app\rtklaunch\Unit1.dfm=D:\proj\RTKLIB\app\rtklaunch\launchopt.dfm
- 2016/09/03 08:03:00.000.657,D:\proj\RTKLIB\app\rtklaunch\launchopt.dfm=D:\proj\RTKLIB\app\rtklaunch\launchoptdlg.dfm
- 2016/09/03 08:03:00.000.657,D:\proj\RTKLIB\app\rtklaunch\launchopt.h=D:\proj\RTKLIB\app\rtklaunch\launchoptdlg.h
- 2016/09/03 08:03:00.000.657,D:\proj\RTKLIB\app\rtklaunch\launchopt.cpp=D:\proj\RTKLIB\app\rtklaunch\launchoptdlg.cpp
-
-
diff --git a/app/rtklib_consapp.groupproj.local b/app/rtklib_consapp.groupproj.local
deleted file mode 100644
index 0e38c1023..000000000
--- a/app/rtklib_consapp.groupproj.local
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- 2009/01/29 00:54:25.123.bdsgroup,C:\Users\ttaka\Documents\Borland Studio Projects\ProjectGroup1.bdsgroup=G:\rtklib_2.2.0b\app\rtklib_consapp.bdsgroup
-
-
-
-
-
diff --git a/app/rtknavi/install.bat b/app/rtknavi/install.bat
deleted file mode 100644
index 3aca76cd4..000000000
--- a/app/rtknavi/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\rtknavi.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtknavi/mondlg.dfm b/app/rtknavi/mondlg.dfm
deleted file mode 100644
index 18a203352..000000000
--- a/app/rtknavi/mondlg.dfm
+++ /dev/null
@@ -1,403 +0,0 @@
-object MonitorDialog: TMonitorDialog
- Left = 0
- Top = 0
- BorderIcons = [biSystemMenu]
- Caption = 'RTK Monitor'
- ClientHeight = 283
- ClientWidth = 464
- Color = clWhite
- Constraints.MinHeight = 160
- Constraints.MinWidth = 200
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- OldCreateOrder = False
- OnClose = FormClose
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object Console: TPaintBox
- Left = 0
- Top = 24
- Width = 447
- Height = 259
- Align = alClient
- Color = clWhite
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Courier New'
- Font.Style = []
- ParentColor = False
- ParentFont = False
- OnPaint = ConsolePaint
- ExplicitLeft = 128
- ExplicitTop = 172
- ExplicitWidth = 105
- ExplicitHeight = 105
- end
- object Tbl: TStringGrid
- Left = 0
- Top = 24
- Width = 447
- Height = 259
- TabStop = False
- Align = alClient
- BevelInner = bvNone
- BorderStyle = bsNone
- Color = clWhite
- DefaultColWidth = 100
- DefaultRowHeight = 15
- FixedCols = 0
- RowCount = 10
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goRangeSelect, goColSizing]
- ParentFont = False
- TabOrder = 0
- ColWidths = (
- 100
- 100
- 100
- 100
- 100)
- RowHeights = (
- 15
- 15
- 15
- 15
- 15
- 15
- 15
- 15
- 15
- 15)
- end
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 464
- Height = 24
- Align = alTop
- TabOrder = 1
- object Label: TLabel
- Left = 180
- Top = 5
- Width = 3
- Height = 13
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object BtnPause: TSpeedButton
- Left = 120
- Top = 0
- Width = 24
- Height = 23
- Hint = 'Pause'
- AllowAllUp = True
- GroupIndex = 2
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFF000000000000FFFFFF000000000000FFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFFFF000000000000FFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFFFF00
- 0000000000FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF0000
- 00000000FFFFFF000000000000FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFF000000000000FFFFFF000000000000FFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- Visible = False
- end
- object BtnDown: TSpeedButton
- Left = 144
- Top = 0
- Width = 24
- Height = 23
- Hint = 'Scroll Down'
- AllowAllUp = True
- GroupIndex = 3
- Down = True
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFF808080808080808080808080808080808080808080808080808080
- 808080808080FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFF000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- Visible = False
- OnClick = BtnDownClick
- end
- object BtnClear: TSpeedButton
- Left = 96
- Top = 0
- Width = 24
- Height = 23
- Hint = 'Clear'
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFF000000FFFFFFFFFFFF00FFFFFFFFFFFFB4B4B4000000FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFF000000B4B4B4FFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFB4B4B4000000FFFFFFFFFFFFFFFFFF000000B4B4B4FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFB4B4B4000000FFFFFF000000B4B4B4FFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4B4B4000000B4
- B4B4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF000000B4B4B4000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFF000000B4B4B4FFFFFFB4B4B4000000FFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF000000B4B4B4FFFFFFFFFFFFFFFFFFB4B4B4000000
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF000000B4B4B4FFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFB4B4B4000000FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- Visible = False
- OnClick = BtnClearClick
- end
- object Panel2: TPanel
- Left = 403
- Top = 1
- Width = 60
- Height = 22
- Align = alRight
- BevelOuter = bvNone
- TabOrder = 1
- object BtnClose: TButton
- Left = 0
- Top = 0
- Width = 60
- Height = 22
- Align = alClient
- Caption = '&Close'
- ModalResult = 1
- TabOrder = 0
- OnClick = BtnCloseClick
- end
- end
- object Type: TComboBox
- Left = 2
- Top = 1
- Width = 92
- Height = 21
- AutoComplete = False
- Style = csDropDownList
- DropDownCount = 40
- ItemIndex = 0
- TabOrder = 0
- TabStop = False
- Text = 'RTK'
- OnChange = TypeChange
- Items.Strings = (
- 'RTK'
- 'Obs Data'
- 'Nav GPS'
- 'Nav GLONASS'
- 'Nav Galileo'
- 'Nav QZSS'
- 'Nav BeiDou'
- 'Nav GEO'
- 'Time/Iono'
- 'Streams'
- 'Sat GPS'
- 'Sat GLONASS'
- 'Sat Galileo'
- 'Sat QZSS'
- 'Sat BeiDou'
- 'Sat GEO'
- 'States'
- 'Covariance'
- 'SBAS Msgs'
- 'SBAS Long'
- 'SBAS Iono'
- 'SBAS Fast'
- 'RTCM Msgs'
- 'RTCM DGPS'
- 'RTCM SSR'
- 'LEX Msgs'
- 'LEX Eph/Clock'
- 'LEX Iono'
- 'Iono Correction'
- '(1) Rover'
- '(2) Base Station'
- '(3) Correction'
- '(4) Solution1'
- '(5) Solution2'
- 'Error/Warning')
- end
- object SelEph: TComboBox
- Left = 162
- Top = 1
- Width = 66
- Height = 21
- Hint = 'Stream'
- Style = csDropDownList
- ItemIndex = 0
- TabOrder = 2
- Text = 'Current'
- Visible = False
- Items.Strings = (
- 'Current'
- 'Previous')
- end
- object SelStr: TComboBox
- Left = 95
- Top = 1
- Width = 80
- Height = 21
- Hint = 'Stream'
- Style = csDropDownList
- ItemIndex = 0
- TabOrder = 3
- Text = '(1) Rover'
- Visible = False
- Items.Strings = (
- '(1) Rover'
- '(2) Base Station'
- '(3) Correction'
- '(0) Combined')
- end
- object SelSat: TComboBox
- Left = 95
- Top = 1
- Width = 66
- Height = 21
- Hint = 'Stream'
- Style = csDropDownList
- ItemIndex = 0
- TabOrder = 4
- Text = 'All'
- Visible = False
- Items.Strings = (
- 'All'
- 'Only OK')
- end
- object SelIon: TComboBox
- Left = 95
- Top = 1
- Width = 80
- Height = 21
- Hint = 'Stream'
- Style = csDropDownList
- ItemIndex = 0
- TabOrder = 5
- Text = 'OFF'
- Visible = False
- Items.Strings = (
- 'OFF'
- 'Broadcast'
- 'SBAS'
- 'Dual-Freq'
- 'Estimate STEC'
- 'IONEX TEC'
- 'QZS Broadcast'
- 'QZS LEX')
- end
- object SelObs: TComboBox
- Left = 95
- Top = 1
- Width = 80
- Height = 21
- Hint = 'Stream'
- Style = csDropDownList
- ItemIndex = 0
- TabOrder = 6
- Text = 'Normal'
- Visible = False
- OnChange = SelObsChange
- Items.Strings = (
- 'Normal'
- 'Extended')
- end
- object SelFmt: TComboBox
- Left = 171
- Top = 1
- Width = 93
- Height = 21
- Hint = 'Stream'
- Style = csDropDownList
- DropDownCount = 32
- ItemIndex = 0
- TabOrder = 7
- Text = 'HEX'
- Visible = False
- OnChange = SelFmtChange
- Items.Strings = (
- 'HEX'
- 'ASCII')
- end
- end
- object Scroll: TScrollBar
- Left = 447
- Top = 24
- Width = 17
- Height = 259
- Align = alRight
- Ctl3D = True
- DoubleBuffered = False
- Kind = sbVertical
- PageSize = 0
- ParentCtl3D = False
- ParentDoubleBuffered = False
- ParentShowHint = False
- ShowHint = False
- TabOrder = 2
- TabStop = False
- Visible = False
- OnChange = ScrollChange
- end
- object Timer1: TTimer
- Interval = 100
- OnTimer = Timer1Timer
- Left = 8
- Top = 286
- end
- object Timer2: TTimer
- Interval = 100
- OnTimer = Timer2Timer
- Left = 36
- Top = 286
- end
-end
diff --git a/app/rtknavi/rtknavi.cbproj.local b/app/rtknavi/rtknavi.cbproj.local
deleted file mode 100644
index 8d3656936..000000000
--- a/app/rtknavi/rtknavi.cbproj.local
+++ /dev/null
@@ -1,99 +0,0 @@
-
-
-
- 2013/11/03 19:59:47.000.921,=D:\proj\RTKLIB\src\rcv\septentrio.c
- 2014/07/26 19:54:04.000.649,=D:\proj\RTKLIB\src\rcv\rcvlex.c
- 2014/08/26 09:32:08.000.182,=D:\proj\RTKLIB\src\rcv\rt17.c
- 2016/06/07 11:48:03.000.511,=Z:\rtklib\RTKLIB\src\ppp_ar.c
- 2016/06/07 11:48:03.000.517,=Z:\rtklib\RTKLIB\src\ppp_corr.c
- 2016/06/07 11:48:49.000.446,=Z:\rtklib\RTKLIB\src\tides.c
- 2016/06/07 11:55:52.000.295,Z:\rtklib\RTKLIB\src\ppp_ar.c=
- 2016/06/07 11:55:52.000.305,Z:\rtklib\RTKLIB\src\tides.c=
- 2016/06/07 11:55:52.000.300,Z:\rtklib\RTKLIB\src\ppp_corr.c=
- 2016/06/07 11:56:14.000.908,=D:\proj\RTKLIB\src\ppp_corr.c
- 2016/06/07 11:56:14.000.909,=D:\proj\RTKLIB\src\tides.c
- 2016/06/07 19:02:29.000.982,=D:\proj\RTKLIB\app\appcmn\graph.cpp
- 2016/06/11 18:18:22.000.692,=D:\proj\RTKLIB\app\rtknavi\markdlg.cpp
- 2016/06/19 16:32:13.000.132,D:\proj\RTKLIB\src\options.c=
- 2016/06/19 16:32:13.000.148,D:\proj\RTKLIB\src\ppp_ar.c=
- 2016/06/19 16:32:13.000.175,D:\proj\RTKLIB\src\rinex.c=
- 2016/06/19 16:32:13.000.138,D:\proj\RTKLIB\src\pntpos.c=
- 2016/06/19 16:32:13.000.170,D:\proj\RTKLIB\src\rcvraw.c=
- 2016/06/19 16:32:13.000.159,D:\proj\RTKLIB\src\preceph.c=
- 2016/06/19 16:32:13.000.181,D:\proj\RTKLIB\src\rtcm.c=
- 2016/06/19 16:32:13.000.209,D:\proj\RTKLIB\src\rtkpos.c=
- 2016/06/19 16:32:13.000.226,D:\proj\RTKLIB\src\solution.c=
- 2016/06/19 16:32:13.000.127,D:\proj\RTKLIB\src\lambda.c=
- 2016/06/19 16:32:13.000.198,D:\proj\RTKLIB\src\rtcm3e.c=
- 2016/06/19 16:32:13.000.236,D:\proj\RTKLIB\src\tides.c=
- 2016/06/19 16:32:13.000.187,D:\proj\RTKLIB\src\rtcm2.c=
- 2016/06/19 16:32:13.000.116,D:\proj\RTKLIB\src\geoid.c=
- 2016/06/19 16:32:13.000.164,D:\proj\RTKLIB\src\qzslex.c=
- 2016/06/19 16:32:13.000.192,D:\proj\RTKLIB\src\rtcm3.c=
- 2016/06/19 16:32:13.000.204,D:\proj\RTKLIB\src\rtkcmn.c=
- 2016/06/19 16:32:13.000.241,D:\proj\RTKLIB\src\tle.c=
- 2016/06/19 16:32:13.000.105,D:\proj\RTKLIB\src\ephemeris.c=
- 2016/06/19 16:32:13.000.121,D:\proj\RTKLIB\src\ionex.c=
- 2016/06/19 16:32:13.000.231,D:\proj\RTKLIB\src\stream.c=
- 2016/06/19 16:32:13.000.143,D:\proj\RTKLIB\src\ppp.c=
- 2016/06/19 16:32:13.000.220,D:\proj\RTKLIB\src\sbas.c=
- 2016/06/19 16:32:13.000.154,D:\proj\RTKLIB\src\ppp_corr.c=
- 2016/06/19 16:32:13.000.215,D:\proj\RTKLIB\src\rtksvr.c=
- 2016/06/19 16:32:13.000.091,D:\proj\RTKLIB\src\datum.c=
- 2016/06/19 16:32:19.000.981,D:\proj\RTKLIB\src\rcv\rcvlex.c=
- 2016/06/19 16:32:19.000.952,D:\proj\RTKLIB\src\rcv\crescent.c=
- 2016/06/19 16:32:19.000.986,D:\proj\RTKLIB\src\rcv\rt17.c=
- 2016/06/19 16:32:19.000.959,D:\proj\RTKLIB\src\rcv\gw10.c=
- 2016/06/19 16:32:19.000.937,D:\proj\RTKLIB\src\rcv\binex.c=
- 2016/06/19 16:32:19.000.992,D:\proj\RTKLIB\src\rcv\septentrio.c=
- 2016/06/19 16:32:19.000.975,D:\proj\RTKLIB\src\rcv\nvs.c=
- 2016/06/19 16:32:19.000.970,D:\proj\RTKLIB\src\rcv\novatel.c=
- 2016/06/19 16:32:19.000.964,D:\proj\RTKLIB\src\rcv\javad.c=
- 2016/06/19 16:32:19.000.997,D:\proj\RTKLIB\src\rcv\skytraq.c=
- 2016/06/19 16:32:20.000.008,D:\proj\RTKLIB\src\rcv\ublox.c=
- 2016/06/19 16:32:20.000.002,D:\proj\RTKLIB\src\rcv\ss2.c=
- 2016/06/19 16:32:42.000.448,=D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.lib
- 2016/06/19 16:46:35.000.368,D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.lib=
- 2016/06/19 16:47:30.000.854,=D:\proj\RTKLIB\src\tides.c
- 2016/06/19 16:47:30.000.825,=D:\proj\RTKLIB\src\rtcm3e.c
- 2016/06/19 16:47:30.000.812,=D:\proj\RTKLIB\src\rtcm.c
- 2016/06/19 16:47:30.000.754,=D:\proj\RTKLIB\src\ephemeris.c
- 2016/06/19 16:47:30.000.813,=D:\proj\RTKLIB\src\rtcm2.c
- 2016/06/19 16:47:30.000.844,=D:\proj\RTKLIB\src\sbas.c
- 2016/06/19 16:47:30.000.752,=D:\proj\RTKLIB\src\datum.c
- 2016/06/19 16:47:30.000.841,=D:\proj\RTKLIB\src\rtksvr.c
- 2016/06/19 16:47:30.000.810,=D:\proj\RTKLIB\src\rcvraw.c
- 2016/06/19 16:47:30.000.848,=D:\proj\RTKLIB\src\solution.c
- 2016/06/19 16:47:30.000.807,=D:\proj\RTKLIB\src\preceph.c
- 2016/06/19 16:47:30.000.819,=D:\proj\RTKLIB\src\rtcm3.c
- 2016/06/19 16:47:30.000.796,=D:\proj\RTKLIB\src\ionex.c
- 2016/06/19 16:47:30.000.800,=D:\proj\RTKLIB\src\pntpos.c
- 2016/06/19 16:47:30.000.839,=D:\proj\RTKLIB\src\rtkpos.c
- 2016/06/19 16:47:30.000.856,=D:\proj\RTKLIB\src\tle.c
- 2016/06/19 16:47:30.000.853,=D:\proj\RTKLIB\src\stream.c
- 2016/06/19 16:47:30.000.794,=D:\proj\RTKLIB\src\geoid.c
- 2016/06/19 16:47:30.000.805,=D:\proj\RTKLIB\src\ppp_corr.c
- 2016/06/19 16:47:30.000.804,=D:\proj\RTKLIB\src\ppp_ar.c
- 2016/06/19 16:47:30.000.799,=D:\proj\RTKLIB\src\options.c
- 2016/06/19 16:47:30.000.834,=D:\proj\RTKLIB\src\rtkcmn.c
- 2016/06/19 16:47:30.000.797,=D:\proj\RTKLIB\src\lambda.c
- 2016/06/19 16:47:30.000.804,=D:\proj\RTKLIB\src\ppp.c
- 2016/06/19 16:47:48.000.159,=D:\proj\RTKLIB\src\qzslex.c
- 2016/06/19 16:48:02.000.603,=D:\proj\RTKLIB\src\rcv\crescent.c
- 2016/06/19 16:48:02.000.620,=D:\proj\RTKLIB\src\rcv\rt17.c
- 2016/06/19 16:48:02.000.627,=D:\proj\RTKLIB\src\rcv\ss2.c
- 2016/06/19 16:48:02.000.624,=D:\proj\RTKLIB\src\rcv\septentrio.c
- 2016/06/19 16:48:02.000.605,=D:\proj\RTKLIB\src\rcv\gw10.c
- 2016/06/19 16:48:02.000.626,=D:\proj\RTKLIB\src\rcv\skytraq.c
- 2016/06/19 16:48:02.000.613,=D:\proj\RTKLIB\src\rcv\novatel.c
- 2016/06/19 16:48:02.000.614,=D:\proj\RTKLIB\src\rcv\nvs.c
- 2016/06/19 16:48:02.000.609,=D:\proj\RTKLIB\src\rcv\javad.c
- 2016/06/19 16:48:02.000.616,=D:\proj\RTKLIB\src\rcv\rcvlex.c
- 2016/06/19 16:48:02.000.630,=D:\proj\RTKLIB\src\rcv\ublox.c
- 2016/06/19 16:48:02.000.601,=D:\proj\RTKLIB\src\rcv\binex.c
- 2016/06/19 16:48:23.000.216,=D:\proj\RTKLIB\src\rinex.c
- 2016/07/05 15:25:02.000.900,=D:\proj\RTKLIB\src\rcv\cmr.c
- 2016/08/20 15:35:54.000.590,C:\Program Files (x86)\Borland\BDS\4.0\lib\release\vclx.lib=
- 2017/05/26 19:21:19.000.920,=D:\proj\RTKLIB\src\rcv\tersus.c
-
-
diff --git a/app/rtknavi_mkl/install.bat b/app/rtknavi_mkl/install.bat
deleted file mode 100644
index b2d7685de..000000000
--- a/app/rtknavi_mkl/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\rtknavi_mkl.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtknavi_mkl/rtknavi_Icon.ico b/app/rtknavi_mkl/rtknavi_Icon.ico
deleted file mode 100644
index bb85e8c25..000000000
Binary files a/app/rtknavi_mkl/rtknavi_Icon.ico and /dev/null differ
diff --git a/app/rtknavi_mkl/rtknavi_mkl.cbproj.local b/app/rtknavi_mkl/rtknavi_mkl.cbproj.local
deleted file mode 100644
index d867bbfe3..000000000
--- a/app/rtknavi_mkl/rtknavi_mkl.cbproj.local
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
- 2012/05/13 18:34:08.000.532,D:\proj\rtklib\app\rtknavi_mkl\rtknavi_mkl.cbproj=D:\proj\rtklib\app\rtknavi\rtknavi.cbproj
- 2014/08/26 09:32:22.000.166,=D:\proj\RTKLIB\src\rcv\rt17.c
- 2015/05/25 15:33:32.000.190,=D:\proj\RTKLIB\src\tides.c
- 2015/05/25 15:33:32.000.188,=D:\proj\RTKLIB\src\ppp_corr.c
- 2016/01/23 12:03:43.000.114,=D:\proj\RTKLIB\src\rcv\septentrio.c
- 2016/06/09 22:57:10.000.453,=D:\proj\RTKLIB\app\appcmn\graph.cpp
- 2016/06/12 22:50:49.000.599,=D:\proj\RTKLIB\app\rtknavi\markdlg.cpp
- 2016/07/05 15:25:29.000.089,=D:\proj\RTKLIB\src\rcv\cmr.c
- 2016/08/20 15:41:35.000.944,C:\Program Files (x86)\Borland\BDS\4.0\lib\release\vclx.lib=
- 2017/05/26 21:09:01.000.571,=D:\proj\RTKLIB\src\rcv\tersus.c
-
-
diff --git a/app/rtknavi_mkl/rtknavi_mkl.cpp b/app/rtknavi_mkl/rtknavi_mkl.cpp
deleted file mode 100644
index 8cfc1ac01..000000000
--- a/app/rtknavi_mkl/rtknavi_mkl.cpp
+++ /dev/null
@@ -1,90 +0,0 @@
-//---------------------------------------------------------------------------
-
-#include
-#pragma hdrstop
-//---------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-USEFORM("..\appcmn\viewer.cpp", TextViewer);
-USEFORM("..\appcmn\tcpoptdlg.cpp", TcpOptDialog);
-USEFORM("..\appcmn\serioptdlg.cpp", SerialOptDialog);
-USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
-USEFORM("..\rtknavi\markdlg.cpp", MarkDialog);
-USEFORM("..\rtknavi\logstrdlg.cpp", LogStrDialog);
-USEFORM("..\rtknavi\instrdlg.cpp", InputStrDialog);
-USEFORM("..\appcmn\refdlg.cpp", RefDialog);
-USEFORM("..\appcmn\confdlg.cpp", ConfDialog);
-USEFORM("..\appcmn\cmdoptdlg.cpp", CmdOptDialog);
-USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog);
-USEFORM("..\appcmn\ftpoptdlg.cpp", FtpOptDialog);
-USEFORM("..\appcmn\maskoptdlg.cpp", MaskOptDialog);
-USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
-USEFORM("..\rtknavi\mondlg.cpp", MonitorDialog);
-USEFORM("..\rtknavi\outstrdlg.cpp", OutputStrDialog);
-USEFORM("..\rtknavi\naviopt.cpp", OptDialog);
-USEFORM("..\rtknavi\navimain.cpp", MainForm);
-USEFORM("..\rtknavi\rcvoptdlg.cpp", RcvOptDialog);
-//---------------------------------------------------------------------------
-WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
-{
- try
- {
- Application->Initialize();
- Application->Title = "RTKNAVI";
- Application->CreateForm(__classid(TMainForm), &MainForm);
- Application->CreateForm(__classid(TOutputStrDialog), &OutputStrDialog);
- Application->CreateForm(__classid(TSerialOptDialog), &SerialOptDialog);
- Application->CreateForm(__classid(TCmdOptDialog), &CmdOptDialog);
- Application->CreateForm(__classid(TTcpOptDialog), &TcpOptDialog);
- Application->CreateForm(__classid(TOptDialog), &OptDialog);
- Application->CreateForm(__classid(TRefDialog), &RefDialog);
- Application->CreateForm(__classid(TTextViewer), &TextViewer);
- Application->CreateForm(__classid(TViewerOptDialog), &ViewerOptDialog);
- Application->CreateForm(__classid(TConfDialog), &ConfDialog);
- Application->CreateForm(__classid(TAboutDialog), &AboutDialog);
- Application->CreateForm(__classid(TInputStrDialog), &InputStrDialog);
- Application->CreateForm(__classid(TLogStrDialog), &LogStrDialog);
- Application->CreateForm(__classid(TKeyDialog), &KeyDialog);
- Application->CreateForm(__classid(TFtpOptDialog), &FtpOptDialog);
- Application->CreateForm(__classid(TRcvOptDialog), &RcvOptDialog);
- Application->CreateForm(__classid(TMaskOptDialog), &MaskOptDialog);
- Application->CreateForm(__classid(TMarkDialog), &MarkDialog);
- Application->Run();
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- catch (...)
- {
- try
- {
- throw Exception("");
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- }
- return 0;
-}
-//---------------------------------------------------------------------------
diff --git a/app/rtknavi_mkl/rtknavi_mkl.res b/app/rtknavi_mkl/rtknavi_mkl.res
deleted file mode 100644
index 1fc420b40..000000000
Binary files a/app/rtknavi_mkl/rtknavi_mkl.res and /dev/null differ
diff --git a/app/rtknavi_qt/rtknavi_Icon.ico b/app/rtknavi_qt/rtknavi_Icon.ico
deleted file mode 100644
index bb85e8c25..000000000
Binary files a/app/rtknavi_qt/rtknavi_Icon.ico and /dev/null differ
diff --git a/app/rtknavi_win64/install.bat b/app/rtknavi_win64/install.bat
deleted file mode 100644
index cc97ae4fc..000000000
--- a/app/rtknavi_win64/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\rtknavi_win64.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtknavi_win64/rtknavi_Icon.ico b/app/rtknavi_win64/rtknavi_Icon.ico
deleted file mode 100644
index bb85e8c25..000000000
Binary files a/app/rtknavi_win64/rtknavi_Icon.ico and /dev/null differ
diff --git a/app/rtknavi_win64/rtknavi_win64.cbproj.local b/app/rtknavi_win64/rtknavi_win64.cbproj.local
deleted file mode 100644
index a67c77dff..000000000
--- a/app/rtknavi_win64/rtknavi_win64.cbproj.local
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
- 2012/05/13 18:34:08.000.532,D:\proj\rtklib\app\rtknavi_mkl\rtknavi_mkl.cbproj=D:\proj\rtklib\app\rtknavi\rtknavi.cbproj
- 2014/08/26 09:32:22.000.166,=D:\proj\RTKLIB\src\rcv\rt17.c
- 2015/05/25 15:33:32.000.190,=D:\proj\RTKLIB\src\tides.c
- 2015/05/25 15:33:32.000.188,=D:\proj\RTKLIB\src\ppp_corr.c
- 2016/01/23 12:03:43.000.114,=D:\proj\RTKLIB\src\rcv\septentrio.c
- 2016/06/09 22:57:10.000.453,=D:\proj\RTKLIB\app\appcmn\graph.cpp
- 2016/06/12 22:50:49.000.599,=D:\proj\RTKLIB\app\rtknavi\markdlg.cpp
- 2016/07/05 15:25:29.000.089,=D:\proj\RTKLIB\src\rcv\cmr.c
- 2016/08/20 15:41:35.000.944,C:\Program Files (x86)\Borland\BDS\4.0\lib\release\vclx.lib=
- 2016/08/20 15:55:50.000.950,D:\proj\RTKLIB\lib\omf\mkl_lapack_omf.lib=
- 2016/08/20 15:55:51.000.033,D:\proj\RTKLIB\lib\omf\mkl_p4p_omf.lib=
- 2016/08/20 15:57:14.000.348,D:\proj\RTKLIB\app\rtknavi_win64\rtknavi_mkl.cbproj=D:\proj\RTKLIB\app\rtknavi_win64\rtknavi_win64.cbproj
- 2017/05/26 21:09:51.000.323,=D:\proj\RTKLIB\src\rcv\tersus.c
-
-
diff --git a/app/rtknavi_win64/rtknavi_win64.cpp b/app/rtknavi_win64/rtknavi_win64.cpp
deleted file mode 100644
index 78ceb0d6e..000000000
--- a/app/rtknavi_win64/rtknavi_win64.cpp
+++ /dev/null
@@ -1,90 +0,0 @@
-//---------------------------------------------------------------------------
-
-#include
-#pragma hdrstop
-//---------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-USEFORM("..\appcmn\viewer.cpp", TextViewer);
-USEFORM("..\appcmn\tcpoptdlg.cpp", TcpOptDialog);
-USEFORM("..\appcmn\serioptdlg.cpp", SerialOptDialog);
-USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
-USEFORM("..\rtknavi\markdlg.cpp", MarkDialog);
-USEFORM("..\rtknavi\logstrdlg.cpp", LogStrDialog);
-USEFORM("..\rtknavi\instrdlg.cpp", InputStrDialog);
-USEFORM("..\appcmn\refdlg.cpp", RefDialog);
-USEFORM("..\appcmn\confdlg.cpp", ConfDialog);
-USEFORM("..\appcmn\cmdoptdlg.cpp", CmdOptDialog);
-USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog);
-USEFORM("..\appcmn\ftpoptdlg.cpp", FtpOptDialog);
-USEFORM("..\appcmn\maskoptdlg.cpp", MaskOptDialog);
-USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
-USEFORM("..\rtknavi\naviopt.cpp", OptDialog);
-USEFORM("..\rtknavi\navimain.cpp", MainForm);
-USEFORM("..\rtknavi\mondlg.cpp", MonitorDialog);
-USEFORM("..\rtknavi\outstrdlg.cpp", OutputStrDialog);
-USEFORM("..\rtknavi\rcvoptdlg.cpp", RcvOptDialog);
-//---------------------------------------------------------------------------
-int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
-{
- try
- {
- Application->Initialize();
- Application->Title = "RTKNAVI";
- Application->CreateForm(__classid(TMainForm), &MainForm);
- Application->CreateForm(__classid(TOutputStrDialog), &OutputStrDialog);
- Application->CreateForm(__classid(TSerialOptDialog), &SerialOptDialog);
- Application->CreateForm(__classid(TCmdOptDialog), &CmdOptDialog);
- Application->CreateForm(__classid(TTcpOptDialog), &TcpOptDialog);
- Application->CreateForm(__classid(TOptDialog), &OptDialog);
- Application->CreateForm(__classid(TRefDialog), &RefDialog);
- Application->CreateForm(__classid(TTextViewer), &TextViewer);
- Application->CreateForm(__classid(TViewerOptDialog), &ViewerOptDialog);
- Application->CreateForm(__classid(TConfDialog), &ConfDialog);
- Application->CreateForm(__classid(TAboutDialog), &AboutDialog);
- Application->CreateForm(__classid(TInputStrDialog), &InputStrDialog);
- Application->CreateForm(__classid(TLogStrDialog), &LogStrDialog);
- Application->CreateForm(__classid(TKeyDialog), &KeyDialog);
- Application->CreateForm(__classid(TFtpOptDialog), &FtpOptDialog);
- Application->CreateForm(__classid(TRcvOptDialog), &RcvOptDialog);
- Application->CreateForm(__classid(TMaskOptDialog), &MaskOptDialog);
- Application->CreateForm(__classid(TMarkDialog), &MarkDialog);
- Application->Run();
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- catch (...)
- {
- try
- {
- throw Exception("");
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- }
- return 0;
-}
-//---------------------------------------------------------------------------
diff --git a/app/rtknavi_win64/rtknavi_win64.res b/app/rtknavi_win64/rtknavi_win64.res
deleted file mode 100644
index 42dc9f3bc..000000000
Binary files a/app/rtknavi_win64/rtknavi_win64.res and /dev/null differ
diff --git a/app/rtkplot/Debug_Build/rtkplot_ge.htm b/app/rtkplot/Debug_Build/rtkplot_ge.htm
deleted file mode 100644
index 9a7f8a1a3..000000000
--- a/app/rtkplot/Debug_Build/rtkplot_ge.htm
+++ /dev/null
@@ -1,233 +0,0 @@
-
-
-
-RTKPLOT_GE
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/rtkplot/Debug_Build/rtkplot_gm.htm b/app/rtkplot/Debug_Build/rtkplot_gm.htm
deleted file mode 100644
index a3f803900..000000000
--- a/app/rtkplot/Debug_Build/rtkplot_gm.htm
+++ /dev/null
@@ -1,103 +0,0 @@
-
-
-
-RTKLIB_GM
-
-
-
-
-
-
-
-
-
-
diff --git a/app/rtkplot/Release_Build/rtkplot_ge.htm b/app/rtkplot/Release_Build/rtkplot_ge.htm
deleted file mode 100644
index 9a7f8a1a3..000000000
--- a/app/rtkplot/Release_Build/rtkplot_ge.htm
+++ /dev/null
@@ -1,233 +0,0 @@
-
-
-
-RTKPLOT_GE
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/rtkplot/geview.cpp b/app/rtkplot/geview.cpp
deleted file mode 100644
index 58b22c5e9..000000000
--- a/app/rtkplot/geview.cpp
+++ /dev/null
@@ -1,446 +0,0 @@
-//---------------------------------------------------------------------------
-// geview.c: google earth view
-//---------------------------------------------------------------------------
-#include
-#pragma hdrstop
-#include
-#include "rtklib.h"
-#include "geview.h"
-#include "plotmain.h"
-
-#define RTKPLOT_GE_FILE L"rtkplot_ge.htm"
-
-#define TIMEOUT_GE 5000 // timeout of GE load (ms)
-#define MAXTRACKS 4096 // max number of track poitnts
-
-#define INIT_RANGE 4.322 // initial range (km)
-#define MIN_RANGE 0.01 // min range (km)
-#define MAX_RANGE 20000.0 // max range (km)
-
-#define TILT_ANGLE 70.0 // tilt angle (deg)
-
-#define MIN(x,y) ((x)<(y)?(x):(y))
-#define MAX(x,y) ((x)>(y)?(x):(y))
-#define ATAN2(x,y) ((x)*(x)+(y)*(y)>1E-12?atan2(x,y):0.0)
-
-//---------------------------------------------------------------------------
-#pragma package(smart_init)
-#pragma link "SHDocVw_OCX"
-#pragma resource "*.dfm"
-
-TGoogleEarthView *GoogleEarthView;
-//---------------------------------------------------------------------------
-__fastcall TGoogleEarthView::TGoogleEarthView(TComponent* Owner)
- : TForm(Owner)
-{
- State=Expand=Rotate=0;
- Lat=Lon=Range=Heading=0.0;
- FixCent=1;
- Clear();
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::FormCreate(TObject *Sender)
-{
- UnicodeString url,exe,dir=L".";
- wchar_t *p,*q;
-
- exe=Application->ExeName; // exe directory
- p=exe.c_str();
- if ((q=wcsrchr(p,L'\\'))) {
- dir=exe.SubString(1,q-p);
- }
- url=L"file://"+dir+L"\\"+RTKPLOT_GE_FILE;
-
- WebBrowser->Navigate(url.c_str());
-
- Timer1->Enabled=true;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::Timer1Timer(TObject *Sender)
-{
- if (!GetState()) return;
-
- State=1;
- UpdateOpts();
- SetView(Lat,Lon,Range,Heading);
- Timer1->Enabled=false;
- Plot->Refresh_GEView();
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnCloseClick(TObject *Sender)
-{
- Close();
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnOpt1Click(TObject *Sender)
-{
- UpdateOpts();
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnHeadingClick(TObject *Sender)
-{
- if (!BtnHeading->Down) SetHeading(0.0);
- UpdateEnable();
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnFixCentClick(TObject *Sender)
-{
- FixCent=BtnFixCent->Down;
- if (FixCent) SetCent(Lat,Lon);
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnEnaAltClick(TObject *Sender)
-{
- UpdateOpts();
- Plot->Refresh_GEView();
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnGENormClick(TObject *Sender)
-{
- ExecFunc("SetTilt(0.0)");
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnGETiltClick(TObject *Sender)
-{
- AnsiString f;
- ExecFunc(f.sprintf("SetTilt(%.1f)",TILT_ANGLE));
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnShrinkMouseDown(TObject *Sender, TMouseButton Button,
- TShiftState Shift, int X, int Y)
-{
- Timer2->Enabled=true;
- Expand=1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnShrinkMouseUp(TObject *Sender, TMouseButton Button,
- TShiftState Shift, int X, int Y)
-{
- Expand=0;
- Timer2->Enabled=false;
- ExecFunc("UpdateState()");
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnExpandMouseDown(TObject *Sender, TMouseButton Button,
- TShiftState Shift, int X, int Y)
-{
- Timer2->Enabled=true;
- Expand=-1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnExpandMouseUp(TObject *Sender, TMouseButton Button,
- TShiftState Shift, int X, int Y)
-{
- Expand=0;
- Timer2->Enabled=false;
- ExecFunc("UpdateState()");
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnRotLMouseDown(TObject *Sender, TMouseButton Button,
- TShiftState Shift, int X, int Y)
-{
- Timer2->Enabled=true;
- Rotate=1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnRotLMouseUp(TObject *Sender, TMouseButton Button,
- TShiftState Shift, int X, int Y)
-{
- Rotate=0;
- Timer2->Enabled=false;
- ExecFunc("UpdateState()");
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnRotRMouseDown(TObject *Sender, TMouseButton Button,
- TShiftState Shift, int X, int Y)
-{
- Timer2->Enabled=true;
- Rotate=-1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnRotRMouseUp(TObject *Sender, TMouseButton Button,
- TShiftState Shift, int X, int Y)
-{
- Rotate=0;
- Timer2->Enabled=false;
- ExecFunc("UpdateState()");
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::Panel2Gesture(TObject *Sender,
- const TGestureEventInfo &EventInfo, bool &Handled)
-{
- ;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::BtnOptClick(TObject *Sender)
-{
- Panel8->Visible=!Panel8->Visible;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::FormResize(TObject *Sender)
-{
- if (FixCent) SetCent(Lat,Lon);
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::Timer2Timer(TObject *Sender)
-{
- if (Expand) {
- if (Expand>0) Range=MIN(MAX_RANGE,Range*1.05);
- else Range=MAX(MIN_RANGE,Range/1.05);
- SetRange(Range);
- }
- if (Rotate) {
- if (Rotate>0) Heading+=3.0;
- else Heading-=3.0;
- if (Heading> 180.0) Heading-=360.0;
- else if (Heading<-180.0) Heading+=360.0;
- SetHeading(Heading);
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::Clear(void)
-{
- MarkVis[0]=MarkVis[1]=TrackVis[0]=TrackVis[1]=0;
- MarkPos[0][0]=MarkPos[0][1]=0.0;
- MarkPos[1][0]=MarkPos[1][1]=0.0;
- ExecFunc("ClearTrack(1)");
- ExecFunc("ClearTrack(2)");
- ExecFunc("SetMark(1,0.0,0.0)");
- ExecFunc("SetMark(2,0.0,0.0)");
-}
-// --------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::SetView(double lat, double lon, double range,
- double heading)
-{
- AnsiString f;
- if (range<=0.0) range=INIT_RANGE;
- Lat=lat;
- Lon=lon;
- Range=range;
- Heading=heading;
- ExecFunc(f.sprintf("SetView(%.9f,%.9f,%.3f,%.1f)",lat,lon,range,heading));
-}
-// --------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::SetCent(double lat, double lon)
-{
- AnsiString f;
- Lat=lat;
- Lon=lon;
- if (FixCent) ExecFunc(f.sprintf("SetCent(%.9f,%.9f)",lat,lon));
-}
-// --------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::SetRange(double range)
-{
- AnsiString f;
- if (range<=0.0) range=INIT_RANGE;
- Range=range;
- ExecFunc(f.sprintf("SetRange(%.3f)",range));
-}
-/// --------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::SetHeading(double angle)
-{
- AnsiString f;
- Heading=angle;
- ExecFunc(f.sprintf("SetHeading(%.2f)",angle));
-}
-// --------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::SetMark(int index, const double *pos)
-{
- AnsiString f;
- if (index<1||2n<=0) return 0;
-
- Screen->Cursor=crHourGlass;
-
- ClearTrack(index);
-
- intv=sol->n/MAXTRACKS+1; // interval to reduce points
-
- for (i=0;data=getsol(sol,i);i++) {
- if (i%intv!=0) continue;
- ecef2pos(data->rr,pos);
- if (fabs(pos[0]-prev[0])<1E-8&&fabs(pos[1]-prev[1])<1E-8) continue;
- prev[0]=pos[0];
- prev[1]=pos[1];
- ExecFunc(f.sprintf("AddTrack(%d,%.9f,%.9f)",index,pos[0]*R2D,
- pos[1]*R2D));
- }
- Screen->Cursor=crDefault;
- UpdateEnable();
- return 1;
-}
-// --------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::ShowTrack(int index)
-{
- AnsiString f;
- if (index<1||2NWayPnt;i++) {
- ecef2pos(Plot->PntPos[i],pos);
- ExecFunc(f.sprintf("AddPoint('%s',%.9f,%.9f,%.2f)",Plot->PntName[i],
- pos[0]*R2D,pos[1]*R2D,pos[2]));
- }
-}
-// --------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::ShowPoint(void)
-{
- ExecFunc("ShowPoint()");
-}
-// --------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::HidePoint(void)
-{
- ExecFunc("HidePoint()");
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::SetOpts(const int *opts)
-{
- TSpeedButton *btn[]={
- BtnOpt1,BtnOpt2,BtnOpt3,BtnOpt4,BtnOpt5,BtnOpt6,BtnOpt7,BtnOpt8,
- BtnOpt9,BtnEnaAlt,BtnHeading
- };
- for (int i=0;i<11;i++) {
- btn[i]->Down=opts[i];
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::GetOpts(int *opts)
-{
- TSpeedButton *btn[]={
- BtnOpt1,BtnOpt2,BtnOpt3,BtnOpt4,BtnOpt5,BtnOpt6,BtnOpt7,BtnOpt8,
- BtnOpt9,BtnEnaAlt,BtnHeading
- };
- for (int i=0;i<11;i++) {
- opts[i]=btn[i]->Down;
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::UpdateOpts(void)
-{
- AnsiString f;
- int opts[12];
-
- GetOpts(opts);
- ExecFunc(f.sprintf("SetOpts(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)",opts[0],
- opts[1],opts[2],opts[3],opts[4],opts[5],opts[6],opts[7],opts[8],
- opts[9]));
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::UpdateEnable(void)
-{
- BtnEnaAlt ->Enabled=MarkVis[0]||MarkVis[1];
- BtnRotR ->Enabled=!BtnHeading->Down;
- BtnRotL ->Enabled=!BtnHeading->Down;
-}
-//---------------------------------------------------------------------------
-int __fastcall TGoogleEarthView::GetState(void)
-{
- IHTMLDocument3 *doc=NULL;
- IHTMLElement *ele1=NULL;
- VARIANT var;
- int state=0;
-
- if (!WebBrowser->Document) return 0;
- WebBrowser->Document->QueryInterface(IID_IHTMLDocument3,(void **)&doc);
- if (!doc) return 0;
- doc->getElementById(L"state",&ele1);
- doc->Release();
- if (!ele1) return 0;
-
- VariantInit(&var);
- if (ele1->getAttribute(L"value",0,&var)!=S_OK) {
- VariantClear(&var);
- return 0;
- }
- swscanf(var.bstrVal,L"%d",&state);
- VariantClear(&var);
- return state;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleEarthView::ExecFunc(AnsiString func)
-{
- IHTMLWindow2 *win;
- IHTMLDocument2 *doc=NULL;
- VARIANT var;
- HRESULT hr;
- wchar_t func_w[256]={0};
-
- if (!State||!WebBrowser->Document) return;
- WebBrowser->Document->QueryInterface(IID_IHTMLDocument2,(void **)&doc);
- if (!doc) return;
- hr=doc->get_parentWindow(&win);
- doc->Release();
- if (hr!=S_OK) return;
-
- VariantInit(&var);
- ::MultiByteToWideChar(CP_UTF8,0,func.c_str(),-1,func_w,512);
- hr=win->execScript(func_w,L"javascript",&var);
- VariantClear(&var);
-#if 1 // for debug
- trace(2,"GE: %s\n",func.c_str());
-#endif
-}
-//---------------------------------------------------------------------------
-
-
diff --git a/app/rtkplot/geview.dfm b/app/rtkplot/geview.dfm
deleted file mode 100644
index 0076aacfa..000000000
--- a/app/rtkplot/geview.dfm
+++ /dev/null
@@ -1,825 +0,0 @@
-object GoogleEarthView: TGoogleEarthView
- Left = 0
- Top = 0
- BorderIcons = [biSystemMenu, biMaximize]
- Caption = 'RTKPLOT: Google Earth View'
- ClientHeight = 506
- ClientWidth = 504
- Color = clWhite
- Constraints.MinHeight = 240
- Constraints.MinWidth = 240
- DoubleBuffered = True
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- OldCreateOrder = True
- Touch.InteractiveGestures = [igZoom, igPan, igRotate]
- OnCreate = FormCreate
- OnResize = FormResize
- PixelsPerInch = 96
- TextHeight = 13
- object Panel1: TPanel
- Left = 0
- Top = 0
- Width = 504
- Height = 27
- Align = alTop
- TabOrder = 0
- object BtnGENorm: TSpeedButton
- AlignWithMargins = True
- Left = 95
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Objective View'
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alLeft
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFF000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF0000007F7F7F0000
- 000000000000000000000000007F7F7F000000FFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFF000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF000000FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFF0000007F7F7F0000000000000000000000000000007F7F7F
- 000000FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFF000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnGENormClick
- ExplicitLeft = 300
- end
- object BtnGETilt: TSpeedButton
- AlignWithMargins = True
- Left = 122
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Perspective View'
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alLeft
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFF000000FFFFFFFFFFFF00FFFFFF0000000000000000000000
- 00000000000000000000000000000000000000000000FFFFFF00FFFFFFFFFFFF
- FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF7F7F7F7F7F7FFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFF
- FFFF000000FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF0000000000
- 00000000000000000000000000000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF7F7F7FFFFFFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnGETiltClick
- ExplicitLeft = 325
- end
- object BtnEnaAlt: TSpeedButton
- AlignWithMargins = True
- Left = 62
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Enable Altitude'
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alLeft
- AllowAllUp = True
- GroupIndex = 12
- Enabled = False
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFC3C3C3000000C3C3C3FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3C3C3000000C3
- C3C3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnEnaAltClick
- ExplicitLeft = 267
- end
- object BtnHeading: TSpeedButton
- AlignWithMargins = True
- Left = 265
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Heading Up'
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alLeft
- AllowAllUp = True
- GroupIndex = 11
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F7F7F7F7F7F7F7F7F7FFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFC3C3C37F7F7FFFFFFFFFFFFF000000FF
- FFFFFFFFFF7F7F7FC3C3C3FFFFFFFFFFFF00FFFFFFFFFFFF7F7F7FFFFFFFFFFF
- FFFFFFFF000000FFFFFFFFFFFFFFFFFF7F7F7FFFFFFFFFFFFF00FFFFFF7F7F7F
- FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFF7F7F7FFFFF
- FF00FFFFFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF
- FFFFFF7F7F7FFFFFFF00FFFFFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFF000000FF
- FFFFFFFFFFFFFFFFFFFFFF7F7F7FFFFFFF00FFFFFF7F7F7FFFFFFFFFFFFF0000
- 00000000000000000000000000FFFFFFFFFFFF7F7F7FFFFFFF00FFFFFF7F7F7F
- FFFFFFFFFFFFFFFFFF000000000000000000FFFFFFFFFFFFFFFFFF7F7F7FFFFF
- FF00FFFFFFFFFFFF7F7F7FFFFFFFFFFFFF000000000000000000FFFFFFFFFFFF
- 7F7F7FFFFFFFFFFFFF00FFFFFFFFFFFFC3C3C37F7F7FFFFFFFFFFFFF000000FF
- FFFFFFFFFF7F7F7FC3C3C3FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF7F7F
- 7F7F7F7F7F7F7F7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnHeadingClick
- ExplicitHeight = 27
- end
- object BtnFixCent: TSpeedButton
- AlignWithMargins = True
- Left = 2
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Fix Plot Center'
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alLeft
- AllowAllUp = True
- GroupIndex = 10
- Down = True
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7FFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7FFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF000000FFFFFF
- FFFFFFFFFFFFFFFFFF007F7F7F7F7F7F7F7F7F7F7F7F000000FFFFFF000000FF
- FFFF0000007F7F7F7F7F7F7F7F7F7F7F7F00FFFFFFFFFFFFFFFFFFFFFFFF0000
- 00FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7FFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7FFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- Spacing = 1
- OnClick = BtnFixCentClick
- ExplicitLeft = 12
- ExplicitTop = -4
- end
- object Debug: TLabel
- Left = 291
- Top = 1
- Width = 3
- Height = 25
- Align = alLeft
- ExplicitHeight = 13
- end
- object BtnShrink: TSpeedButton
- AlignWithMargins = True
- Left = 149
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Zoom Out'
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alLeft
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFF787878
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00787878000000787878FFFFFFB4B4B4000000000000000000B4B4B4FFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFF787878000000000000000000B4B4B4B4B4B4B4
- B4B4000000000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF000000B4B4B4FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFB4B4B4000000FFFFFFFFFFFF00FFFFFFB4B4B4
- 000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000B4B4B4FFFF
- FF00FFFFFF000000B4B4B4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- B4B4B4000000FFFFFF00FFFFFF000000B4B4B4FFFFFF00000000000000000000
- 0000000000FFFFFFB4B4B4000000FFFFFF00FFFFFF000000B4B4B4FFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4B4B4000000FFFFFF00FFFFFFB4B4B4
- 000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000B4B4B4FFFF
- FF00FFFFFFFFFFFF000000B4B4B4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4B4B4
- 000000FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF000000000000B4B4B4B4B4B4B4
- B4B4000000000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFB4B4
- B4000000000000000000B4B4B4FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnMouseDown = BtnShrinkMouseDown
- OnMouseUp = BtnShrinkMouseUp
- ExplicitLeft = 350
- end
- object BtnExpand: TSpeedButton
- AlignWithMargins = True
- Left = 176
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Zoom In'
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alLeft
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFF787878
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00787878000000787878FFFFFFB4B4B4000000000000000000B4B4B4FFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFF787878000000000000000000B4B4B4B4B4B4B4
- B4B4000000000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF000000B4B4B4FFFF
- FFFFFFFF000000FFFFFFFFFFFFB4B4B4000000FFFFFFFFFFFF00FFFFFFB4B4B4
- 000000FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF000000B4B4B4FFFF
- FF00FFFFFF000000B4B4B4FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF
- B4B4B4000000FFFFFF00FFFFFF000000B4B4B400000000000000000000000000
- 0000000000000000B4B4B4000000FFFFFF00FFFFFF000000B4B4B4FFFFFFFFFF
- FFFFFFFF000000FFFFFFFFFFFFFFFFFFB4B4B4000000FFFFFF00FFFFFFB4B4B4
- 000000FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF000000B4B4B4FFFF
- FF00FFFFFFFFFFFF000000B4B4B4FFFFFFFFFFFF000000FFFFFFFFFFFFB4B4B4
- 000000FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF000000000000B4B4B4B4B4B4B4
- B4B4000000000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFB4B4
- B4000000000000000000B4B4B4FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnMouseDown = BtnExpandMouseDown
- OnMouseUp = BtnExpandMouseUp
- ExplicitLeft = 375
- end
- object BtnRotL: TSpeedButton
- AlignWithMargins = True
- Left = 211
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Rotate Left'
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alLeft
- Flat = True
- Glyph.Data = {
- DE000000424DDE0000000000000076000000280000000D0000000D0000000100
- 0400000000006800000000000000000000001000000000000000000000000000
- 8000008000000080800080000000800080008080000080808000C0C0C0000000
- FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF00FFFFFFFFFFFF
- F000FFFFFFFFFFFFF000FF00000FFFFFF000FFF000FFF8FFF000FF7008FFF78F
- F000FF0F0FFFFF0FF000FF0FFF0FFF0FF000FF0FFFFFFF0FF000FF78FFFFF87F
- F000FFF08FFF80FFF000FFFF70007FFFF000FFFFFFFFFFFFF000FFFFFFFFFFFF
- F000}
- ParentShowHint = False
- ShowHint = True
- OnMouseDown = BtnRotLMouseDown
- OnMouseUp = BtnRotLMouseUp
- ExplicitLeft = 408
- end
- object BtnRotR: TSpeedButton
- AlignWithMargins = True
- Left = 238
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Rotate Right'
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alLeft
- Flat = True
- Glyph.Data = {
- DE000000424DDE0000000000000076000000280000000D0000000D0000000100
- 0400000000006800000000000000000000001000000000000000000000000000
- 8000008000000080800080000000800080008080000080808000C0C0C0000000
- FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF00FFFFFFFFFFFF
- F000FFFFFFFFFFFFF000FFFFFF00000FF000FFF8FFF000FFF000FF87FFF8007F
- F000FF0FFFFF0F0FF000FF0FFF0FFF0FF000FF0FFFFFFF0FF000FF78FFFFF87F
- F000FFF08FFF80FFF000FFFF70007FFFF000FFFFFFFFFFFFF000FFFFFFFFFFFF
- F000}
- ParentShowHint = False
- ShowHint = True
- OnMouseDown = BtnRotRMouseDown
- OnMouseUp = BtnRotRMouseUp
- ExplicitLeft = 433
- end
- object BtnOpt: TSpeedButton
- AlignWithMargins = True
- Left = 35
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Show Objects'
- Margins.Left = 1
- Margins.Top = 0
- Margins.Right = 1
- Margins.Bottom = 0
- Align = alLeft
- AllowAllUp = True
- GroupIndex = 1
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF8080808080
- 80808080808080808080808080808080FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF808080FFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFF808080FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF808080FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFF808080FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOptClick
- ExplicitLeft = 44
- ExplicitTop = 0
- end
- object Panel3: TPanel
- AlignWithMargins = True
- Left = 30
- Top = 3
- Width = 2
- Height = 21
- Margins.Left = 2
- Margins.Top = 2
- Margins.Right = 2
- Margins.Bottom = 2
- Align = alLeft
- BevelInner = bvLowered
- BevelOuter = bvNone
- Caption = 'Panel3'
- TabOrder = 0
- end
- object Panel5: TPanel
- Left = 452
- Top = 1
- Width = 51
- Height = 25
- Align = alRight
- BevelOuter = bvNone
- Caption = 'Panel5'
- TabOrder = 1
- object BtnClose: TButton
- Left = 0
- Top = 0
- Width = 51
- Height = 25
- Align = alClient
- Caption = 'Close'
- TabOrder = 0
- OnClick = BtnCloseClick
- end
- end
- object Panel6: TPanel
- AlignWithMargins = True
- Left = 90
- Top = 3
- Width = 2
- Height = 21
- Margins.Left = 2
- Margins.Top = 2
- Margins.Right = 2
- Margins.Bottom = 2
- Align = alLeft
- BevelInner = bvLowered
- BevelOuter = bvNone
- Caption = 'Panel3'
- TabOrder = 2
- end
- object Panel7: TPanel
- AlignWithMargins = True
- Left = 205
- Top = 4
- Width = 2
- Height = 19
- Align = alLeft
- BevelInner = bvLowered
- BevelOuter = bvNone
- Caption = 'Panel3'
- TabOrder = 3
- end
- end
- object Panel2: TPanel
- Left = 0
- Top = 27
- Width = 504
- Height = 479
- Align = alClient
- Caption = 'Panel2'
- TabOrder = 1
- Touch.InteractiveGestures = [igZoom, igPan, igRotate]
- Touch.InteractiveGestureOptions = [igoPanSingleFingerHorizontal, igoPanSingleFingerVertical, igoPanInertia, igoParentPassthrough]
- OnGesture = Panel2Gesture
- object WebBrowser: TCppWebBrowser
- Left = 1
- Top = 1
- Width = 502
- Height = 477
- Align = alClient
- TabOrder = 0
- ExplicitTop = 0
- ExplicitHeight = 482
- ControlData = {
- 4C000000E23300004D3100000000000000000000000000000000000000000000
- 000000004C000000000000000000000001000000E0D057007335CF11AE690800
- 2B2E12620B000000000000004C0000000114020000000000C000000000000046
- 8000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000100000000000000000000000000000000000000}
- end
- end
- object Panel8: TPanel
- Left = 2
- Top = 29
- Width = 85
- Height = 81
- AutoSize = True
- TabOrder = 2
- Visible = False
- object BtnOpt1: TSpeedButton
- Left = 1
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Show Navigation Control'
- AllowAllUp = True
- GroupIndex = 1
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000FFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFC3C3C3000000FFFFFFFFFFFF000000FF
- FFFFFFFFFF000000C3C3C3FFFFFFFFFFFF00FFFFFFFFFFFF000000FFFFFFFFFF
- FF000000FFFFFF000000FFFFFFFFFFFF000000FFFFFFFFFFFF00FFFFFF000000
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFF
- FF00FFFFFF000000FFFFFF000000FFFFFFC3C3C3000000C3C3C3FFFFFF000000
- FFFFFF000000FFFFFF00FFFFFF000000000000FFFFFFFFFFFF000000FFFFFF00
- 0000FFFFFFFFFFFF000000000000FFFFFF00FFFFFF000000FFFFFF000000FFFF
- FFC3C3C3000000C3C3C3FFFFFF000000FFFFFF000000FFFFFF00FFFFFF000000
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFF
- FF00FFFFFFFFFFFF000000FFFFFFFFFFFF000000FFFFFF000000FFFFFFFFFFFF
- 000000FFFFFFFFFFFF00FFFFFFFFFFFFC3C3C3000000FFFFFFFFFFFF000000FF
- FFFFFFFFFF000000C3C3C3FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF0000
- 00000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOpt1Click
- end
- object BtnOpt4: TSpeedButton
- Left = 1
- Top = 28
- Width = 25
- Height = 25
- Hint = 'Show Lat/Long Grid'
- AllowAllUp = True
- GroupIndex = 4
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFF000000FFFFFF000000FFFFFF000000FFFFFF00
- 0000FFFFFF000000FFFFFF000000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOpt1Click
- end
- object BtnOpt2: TSpeedButton
- Left = 30
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Show Scale Legend'
- AllowAllUp = True
- GroupIndex = 2
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFF00000000000000000000000000000000000000
- 0000000000000000000000000000FFFFFF00FFFFFF000000FFFFFFFFFFFFFFFF
- FFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000
- FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFF000000FFFF
- FF00FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF
- FFFFFF000000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOpt1Click
- end
- object BtnOpt3: TSpeedButton
- Left = 59
- Top = 1
- Width = 25
- Height = 25
- Hint = 'Show Overview Map'
- AllowAllUp = True
- GroupIndex = 3
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFF000000000000000000000000000000000000000000000000000000
- 000000000000FFFFFF00FFFFFF000000FFFFFFFFFFFF7F7F7FFFFFFFFFFFFFFF
- FFFFC3C3C3FFFFFFFFFFFF000000FFFFFF00FFFFFF000000FFFFFFFFFFFF7F7F
- 7FC3C3C3FFFFFFFFFFFF7F7F7FFFFFFF7F7F7F000000FFFFFF00FFFFFF000000
- FFFFFFFFFFFF7F7F7F7F7F7FFFFFFF7F7F7F7F7F7F7F7F7FFFFFFF000000FFFF
- FF00FFFFFF000000FFFFFF7F7F7F7F7F7FFFFFFFFFFFFF7F7F7F7F7F7F7F7F7F
- 7F7F7F000000FFFFFF00FFFFFF0000007F7F7F7F7F7F7F7F7F7F7F7FFFFFFFC3
- C3C37F7F7F7F7F7F7F7F7F000000FFFFFF00FFFFFF000000FFFFFF7F7F7F7F7F
- 7FFFFFFFFFFFFFFFFFFF7F7F7FC3C3C37F7F7F000000FFFFFF00FFFFFF000000
- 000000000000000000000000000000000000000000000000000000000000FFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOpt1Click
- end
- object BtnOpt5: TSpeedButton
- Left = 30
- Top = 28
- Width = 25
- Height = 25
- Hint = 'Show Status Bar'
- AllowAllUp = True
- GroupIndex = 5
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFF000000FFFFFF000000000000FFFFFF00000000
- 0000FFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000FFFFFF000000FFFF
- FFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000
- FFFFFF7F7F7F000000FFFFFF7F7F7FFFFFFFFFFFFF0000007F7F7F000000FFFF
- FF00FFFFFF000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000FFFFFF000000
- FFFFFF000000FFFFFF00FFFFFF000000FFFFFF000000000000FFFFFF00000000
- 0000FFFFFF000000FFFFFF000000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOpt1Click
- end
- object BtnOpt6: TSpeedButton
- Left = 59
- Top = 28
- Width = 25
- Height = 25
- Hint = 'Layer Terrain'
- AllowAllUp = True
- GroupIndex = 6
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFFC3C3C3000000FFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000C3C3C3FFFFFF00FFFFFFFFFFFF
- FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF7F7F7F7F7F7FFFFFFFFFFFFFFFFFFF7F7F7F7F7F7F
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF000000C3C3C3FFFFFFC3
- C3C3000000FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOpt1Click
- end
- object BtnOpt7: TSpeedButton
- Left = 1
- Top = 55
- Width = 25
- Height = 25
- Hint = 'Layer Loads'
- AllowAllUp = True
- GroupIndex = 7
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00
- 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF000000FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF000000FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFF000000000000000000000000000000FFFFFF000000000000000000
- 000000000000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF0000000000000000000000
- 00000000FFFFFF000000000000000000000000000000FFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF000000FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00
- 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF000000FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOpt1Click
- end
- object BtnOpt8: TSpeedButton
- Left = 30
- Top = 55
- Width = 25
- Height = 25
- Hint = 'Layer Buildings'
- AllowAllUp = True
- GroupIndex = 8
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF000000000000C3C3C3000000C3
- C3C3000000000000FFFFFFFFFFFFFFFFFF00FFFFFF000000000000C3C3C3C3C3
- C3C3C3C3000000FFFFFFFFFFFFFFFFFF000000000000FFFFFF00FFFFFF000000
- C3C3C3C3C3C3C3C3C3C3C3C3000000FFFFFFFFFFFFFFFFFFFFFFFF000000FFFF
- FF00FFFFFF000000C3C3C3C3C3C3C3C3C3C3C3C3000000FFFFFFFFFFFFFFFFFF
- FFFFFF000000FFFFFF00FFFFFF000000C3C3C3C3C3C3C3C3C300000000000000
- 0000FFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000C3C3C30000000000
- 00FFFFFFFFFFFFFFFFFF000000000000FFFFFF000000FFFFFF00FFFFFF000000
- 000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFF
- FF00FFFFFFFFFFFFFFFFFF000000000000FFFFFFFFFFFFFFFFFF000000000000
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000000000
- 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOpt1Click
- end
- object BtnOpt9: TSpeedButton
- Left = 59
- Top = 55
- Width = 25
- Height = 25
- Hint = 'Layer Borders'
- AllowAllUp = True
- GroupIndex = 9
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF000000FFFFFF000000FFFF
- FFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFF000000FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF000000FF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFF000000FFFFFF000000FFFFFF000000FFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOpt1Click
- end
- end
- object Timer1: TTimer
- Enabled = False
- Interval = 250
- OnTimer = Timer1Timer
- Left = 456
- Top = 458
- end
- object Timer2: TTimer
- Interval = 20
- OnTimer = Timer2Timer
- Left = 425
- Top = 458
- end
-end
diff --git a/app/rtkplot/geview.h b/app/rtkplot/geview.h
deleted file mode 100644
index 9c686138b..000000000
--- a/app/rtkplot/geview.h
+++ /dev/null
@@ -1,116 +0,0 @@
-//---------------------------------------------------------------------------
-#ifndef geviewH
-#define geviewH
-//---------------------------------------------------------------------------
-#include
-#include
-#include
-#include
-#include "SHDocVw_OCX.h"
-#include
-#include
-#include
-//---------------------------------------------------------------------------
-class TGoogleEarthView : public TForm
-{
-__published:
- TPanel *Panel1;
- TPanel *Panel2;
- TCppWebBrowser *WebBrowser;
- TSpeedButton *BtnGENorm;
- TSpeedButton *BtnGETilt;
- TSpeedButton *BtnEnaAlt;
- TSpeedButton *BtnHeading;
- TPanel *Panel3;
- TPanel *Panel5;
- TButton *BtnClose;
- TSpeedButton *BtnFixCent;
- TPanel *Panel6;
- TLabel *Debug;
- TTimer *Timer1;
- TSpeedButton *BtnShrink;
- TSpeedButton *BtnExpand;
- TTimer *Timer2;
- TSpeedButton *BtnRotL;
- TSpeedButton *BtnRotR;
- TPanel *Panel7;
- TPanel *Panel8;
- TSpeedButton *BtnOpt1;
- TSpeedButton *BtnOpt4;
- TSpeedButton *BtnOpt2;
- TSpeedButton *BtnOpt3;
- TSpeedButton *BtnOpt5;
- TSpeedButton *BtnOpt6;
- TSpeedButton *BtnOpt7;
- TSpeedButton *BtnOpt8;
- TSpeedButton *BtnOpt9;
- TSpeedButton *BtnOpt;
- void __fastcall BtnGENormClick(TObject *Sender);
- void __fastcall BtnGETiltClick(TObject *Sender);
- void __fastcall BtnOpt1Click(TObject *Sender);
- void __fastcall BtnHeadingClick(TObject *Sender);
- void __fastcall BtnCloseClick(TObject *Sender);
- void __fastcall FormCreate(TObject *Sender);
- void __fastcall Timer1Timer(TObject *Sender);
- void __fastcall BtnFixCentClick(TObject *Sender);
- void __fastcall BtnEnaAltClick(TObject *Sender);
- void __fastcall BtnShrinkMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift,
- int X, int Y);
- void __fastcall BtnShrinkMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift,
- int X, int Y);
- void __fastcall BtnExpandMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift,
- int X, int Y);
- void __fastcall BtnExpandMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift,
- int X, int Y);
- void __fastcall Timer2Timer(TObject *Sender);
- void __fastcall BtnRotLMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift,
- int X, int Y);
- void __fastcall BtnRotLMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift,
- int X, int Y);
- void __fastcall BtnRotRMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift,
- int X, int Y);
- void __fastcall BtnRotRMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift,
- int X, int Y);
- void __fastcall Panel2Gesture(TObject *Sender, const TGestureEventInfo &EventInfo,
- bool &Handled);
- void __fastcall BtnOptClick(TObject *Sender);
- void __fastcall FormResize(TObject *Sender);
-
-
-private:
- int State,Expand,Rotate,MarkVis[2],TrackVis[2];
- double Lat,Lon,Range,Heading;
- double MarkPos[2][2];
-
- void __fastcall UpdateOpts (void);
- void __fastcall UpdateEnable(void);
- void __fastcall ExecFunc (AnsiString func);
-
-public:
- int FixCent;
-
- __fastcall TGoogleEarthView(TComponent* Owner);
- int __fastcall GetState (void);
- void __fastcall Init (void);
- void __fastcall Clear (void);
- void __fastcall SetView (double lat, double lon, double range, double heading);
- void __fastcall SetCent (double lat, double lon);
- void __fastcall SetRange (double range);
- void __fastcall SetHeading (double angle);
- void __fastcall SetMark (int index, const double *pos);
- void __fastcall ShowMark (int index);
- void __fastcall HideMark (int index);
- void __fastcall ClearTrack (int index);
- int __fastcall UpdateTrack(int index, solbuf_t *sol);
- void __fastcall ShowTrack (int index);
- void __fastcall HideTrack (int index);
- void __fastcall UpdatePoint(void);
- void __fastcall ShowPoint (void);
- void __fastcall HidePoint (void);
- void __fastcall SetOpts (const int *opts);
- void __fastcall GetOpts (int *opts);
-};
-//---------------------------------------------------------------------------
-extern PACKAGE TGoogleEarthView *GoogleEarthView;
-//---------------------------------------------------------------------------
-#endif
diff --git a/app/rtkplot/gmview.cpp b/app/rtkplot/gmview.cpp
deleted file mode 100644
index f61973c68..000000000
--- a/app/rtkplot/gmview.cpp
+++ /dev/null
@@ -1,230 +0,0 @@
-//---------------------------------------------------------------------------
-// gmview.c: google map view
-//---------------------------------------------------------------------------
-#include
-#pragma hdrstop
-#include
-#include "rtklib.h"
-#include "gmview.h"
-#include "plotmain.h"
-
-#define RTKLIB_GM_TEMP "rtkplot_gm.htm"
-#define RTKLIB_GM_FILE "rtkplot_gm_a.htm"
-#define URL_GM_API "http://maps.google.com/maps/api/js"
-
-//---------------------------------------------------------------------------
-#pragma package(smart_init)
-#pragma link "SHDocVw_OCX"
-#pragma resource "*.dfm"
-
-TGoogleMapView *GoogleMapView;
-//---------------------------------------------------------------------------
-__fastcall TGoogleMapView::TGoogleMapView(TComponent* Owner)
- : TForm(Owner)
-{
- State=0;
- Lat=Lon=0.0;
- Zoom=2;
- FixCent=1;
- WebCreate=0;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::FormShow(TObject *Sender)
-{
- UnicodeString url;
- AnsiString exe,dir=".",infile,outfile;
- FILE *infp, *outfp;
- char *p,*q,*key=Plot->ApiKey.c_str(),buff[1024];
-
- if (WebCreate) {
- return;
- }
- exe=Application->ExeName; // exe directory
- p=exe.c_str();
- if ((q=strrchr(p,'\\'))) {
- dir=exe.SubString(1,q-p);
- }
- infile=dir+"\\"+RTKLIB_GM_TEMP;
- outfile=dir+"\\"+RTKLIB_GM_FILE;
-
- if (!(infp=fopen(infile.c_str(),"r"))) {
- return;
- }
- if (!(outfp=fopen(outfile.c_str(),"w"))) {
- fclose(infp);
- return;
- }
- while (fgets(buff,sizeof(buff),infp)) {
-
- if (*key&&(p=strstr(buff,URL_GM_API))) {
- p+=strlen(URL_GM_API);
- *p++='\0';
- fprintf(outfp,"%s?key=%s&%s",buff,key,p);
- }
- else {
- fputs(buff,outfp);
- }
- }
- fclose(infp);
- fclose(outfp);
-
- url="file://"+outfile;
-
- WebBrowser->Navigate(url.c_str());
-
- Timer1->Enabled=true;
-
- WebCreate=1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::Timer1Timer(TObject *Sender)
-{
- if (!GetState()) return;
-
- State=1;
- SetView(Lat,Lon,Zoom);
- AddMark(0.0,0.0,"SOL1","SOLUTION 1");
- AddMark(0.0,0.0,"SOL2","SOLUTION 2");
- HideMark(1);
- HideMark(2);
- for (int i=0;i<2;i++) MarkPos[i][0]=MarkPos[i][1]=0.0;
- Timer1->Enabled=false;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::BtnCloseClick(TObject *Sender)
-{
-trace(2,"gmview close\n");
- Close();
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::BtnShrinkClick(TObject *Sender)
-{
- SetZoom(Zoom-1);
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::BtnExpandClick(TObject *Sender)
-{
- SetZoom(Zoom+1);
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::BtnFixCentClick(TObject *Sender)
-{
- FixCent=BtnFixCent->Down;
- if (FixCent) SetCent(Lat,Lon);
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::FormResize(TObject *Sender)
-{
- if (FixCent) SetCent(Lat,Lon);
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::SetView(double lat, double lon, int zoom)
-{
- AnsiString f;
- Lat=lat;
- Lon=lon;
- Zoom=zoom;
- ExecFunc(f.sprintf("SetView(%.9f,%.9f,%d)",lat,lon,zoom));
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::SetCent(double lat, double lon)
-{
- AnsiString f;
- Lat=lat;
- Lon=lon;
- if (FixCent) ExecFunc(f.sprintf("SetCent(%.9f,%.9f)",lat,lon));
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::SetZoom(int zoom)
-{
- AnsiString f;
- if (zoom<2||zoom>21) return;
- Zoom=zoom;
- ExecFunc(f.sprintf("SetZoom(%d)",zoom));
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::ClearMark(void)
-{
- ExecFunc("ClearMark()");
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::AddMark(double lat, double lon,
- AnsiString title, AnsiString msg)
-{
- AnsiString f;
- ExecFunc(f.sprintf("AddMark(%.9f,%.9f,\"%s\",\"%s\")",lat,lon,title,msg));
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::SetMark(int index, const double *pos)
-{
- AnsiString f,title;
- title.sprintf("SOL%d",index);
- ExecFunc(f.sprintf("PosMark(%.9f,%.9f,\"%s\")",pos[0]*R2D,pos[1]*R2D,title));
- MarkPos[index-1][0]=pos[0]*R2D;
- MarkPos[index-1][1]=pos[1]*R2D;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::ShowMark(int index)
-{
- AnsiString f,title;
- title.sprintf("SOL%d",index);
- ExecFunc(f.sprintf("ShowMark(\"%s\")",title));
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::HideMark(int index)
-{
- AnsiString f,title;
- title.sprintf("SOL%d",index);
- ExecFunc(f.sprintf("HideMark(\"%s\")",title));
-}
-//---------------------------------------------------------------------------
-int __fastcall TGoogleMapView::GetState(void)
-{
- IHTMLDocument3 *doc=NULL;
- IHTMLElement *ele1=NULL;
- VARIANT var;
- int state=0;
-
- if (!WebBrowser->Document) return 0;
- WebBrowser->Document->QueryInterface(IID_IHTMLDocument3,(void **)&doc);
- if (!doc) return 0;
- doc->getElementById(L"state",&ele1);
- doc->Release();
- if (!ele1) return 0;
-
- VariantInit(&var);
- if (ele1->getAttribute(L"value",0,&var)!=S_OK) {
- VariantClear(&var);
- return 0;
- }
- swscanf(var.bstrVal,L"%d",&state);
- VariantClear(&var);
- return state;
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::ExecFunc(AnsiString func)
-{
- IHTMLWindow2 *win;
- IHTMLDocument2 *doc=NULL;
- VARIANT var;
- HRESULT hr;
- wchar_t func_w[1024]={0};
-
- if (!State||!WebBrowser->Document) return;
- WebBrowser->Document->QueryInterface(IID_IHTMLDocument2,(void **)&doc);
- if (!doc) return;
- hr=doc->get_parentWindow(&win);
- doc->Release();
- if (hr!=S_OK) return;
-
- VariantInit(&var);
- ::MultiByteToWideChar(CP_UTF8,0,func.c_str(),-1,func_w,512);
- hr=win->execScript(func_w,L"javascript",&var);
- VariantClear(&var);
-}
-//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::FormCreate(TObject *Sender)
-{
-}
-//---------------------------------------------------------------------------
-
diff --git a/app/rtkplot/gmview.h b/app/rtkplot/gmview.h
deleted file mode 100644
index 80f4b7e4c..000000000
--- a/app/rtkplot/gmview.h
+++ /dev/null
@@ -1,60 +0,0 @@
-//---------------------------------------------------------------------------
-#ifndef gmviewH
-#define gmviewH
-//---------------------------------------------------------------------------
-#include
-#include
-#include
-#include
-#include "SHDocVw_OCX.h"
-#include
-#include
-#include
-//---------------------------------------------------------------------------
-class TGoogleMapView : public TForm
-{
-__published:
- TPanel *Panel1;
- TPanel *Panel2;
- TCppWebBrowser *WebBrowser;
- TPanel *Panel5;
- TButton *BtnClose;
- TTimer *Timer1;
- TSpeedButton *BtnFixCent;
- TSpeedButton *BtnExpand;
- TSpeedButton *BtnShrink;
- void __fastcall BtnCloseClick(TObject *Sender);
- void __fastcall Timer1Timer(TObject *Sender);
- void __fastcall BtnShrinkClick(TObject *Sender);
- void __fastcall BtnExpandClick(TObject *Sender);
- void __fastcall BtnFixCentClick(TObject *Sender);
- void __fastcall FormResize(TObject *Sender);
- void __fastcall FormShow(TObject *Sender);
- void __fastcall FormCreate(TObject *Sender);
-
-
-private:
- int State,WebCreate;
- double Lat,Lon,Zoom;
- double MarkPos[2][2];
-
- void __fastcall ExecFunc(AnsiString func);
-
-public:
- int FixCent;
-
- __fastcall TGoogleMapView(TComponent* Owner);
- int __fastcall GetState(void);
- void __fastcall SetView(double lat, double lon, int zoom);
- void __fastcall SetCent(double lat, double lon);
- void __fastcall SetZoom(int zoom);
- void __fastcall ClearMark(void);
- void __fastcall AddMark(double lat, double lon, AnsiString title, AnsiString msg);
- void __fastcall SetMark(int index, const double *pos);
- void __fastcall ShowMark(int index);
- void __fastcall HideMark(int index);
-};
-//---------------------------------------------------------------------------
-extern PACKAGE TGoogleMapView *GoogleMapView;
-//---------------------------------------------------------------------------
-#endif
diff --git a/app/rtkplot/install.bat b/app/rtkplot/install.bat
deleted file mode 100644
index cdcda12a9..000000000
--- a/app/rtkplot/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\rtkplot.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkplot/rtkplot.cbproj.local b/app/rtkplot/rtkplot.cbproj.local
deleted file mode 100644
index 34f02947e..000000000
--- a/app/rtkplot/rtkplot.cbproj.local
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
- 2012/05/20 06:22:06.000.259,D:\proj\rtklib\app\rtkplot\Unit1.h=D:\proj\rtklib\app\rtkplot\geview.h
- 2012/05/20 06:22:06.000.259,D:\proj\rtklib\app\rtkplot\Unit1.dfm=D:\proj\rtklib\app\rtkplot\geview.dfm
- 2014/08/26 09:33:12.000.785,=D:\proj\RTKLIB\src\rcv\rt17.c
- 2014/08/31 12:20:44.000.286,D:\proj\RTKLIB\app\rtkplot\mapdlg.h=D:\proj\RTKLIB\app\rtkplot\skydlg.h
- 2014/08/31 12:20:44.000.286,D:\proj\RTKLIB\app\rtkplot\mapdlg.dfm=D:\proj\RTKLIB\app\rtkplot\skydlg.dfm
- 2014/08/31 12:20:44.000.286,D:\proj\RTKLIB\app\rtkplot\mapdlg.cpp=D:\proj\RTKLIB\app\rtkplot\skydlg.cpp
- 2014/08/31 12:21:42.000.564,D:\proj\RTKLIB\app\rtkplot\mapdlg.cpp=D:\proj\RTKLIB\app\rtkplot\skydlg.cpp
- 2014/08/31 12:21:42.000.544,D:\proj\RTKLIB\app\rtkplot\skydlg.h=D:\proj\RTKLIB\app\rtkplot\mapdlg.h
- 2014/08/31 12:21:42.000.544,D:\proj\RTKLIB\app\rtkplot\skydlg.dfm=D:\proj\RTKLIB\app\rtkplot\mapdlg.dfm
- 2014/08/31 12:21:42.000.564,D:\proj\RTKLIB\app\rtkplot\mapdlg.h=D:\proj\RTKLIB\app\rtkplot\skydlg.h
- 2014/08/31 12:21:42.000.564,D:\proj\RTKLIB\app\rtkplot\mapdlg.dfm=D:\proj\RTKLIB\app\rtkplot\skydlg.dfm
- 2014/08/31 12:21:42.000.544,D:\proj\RTKLIB\app\rtkplot\skydlg.cpp=D:\proj\RTKLIB\app\rtkplot\mapdlg.cpp
- 2014/08/31 12:22:33.000.525,D:\proj\RTKLIB\app\rtkplot\skydlg.cpp=
- 2014/08/31 12:24:52.000.986,=D:\proj\RTKLIB\app\rtkplot\mapdlg.cpp
- 2014/08/31 12:24:59.000.431,=D:\proj\RTKLIB\app\rtkplot\skydlg.cpp
- 2016/01/23 11:55:33.000.244,=D:\proj\RTKLIB\src\rcv\septentrio.c
- 2016/06/12 15:11:49.000.000,=D:\proj\RTKLIB\src\shape.c
- 2016/06/12 21:42:20.000.772,D:\proj\RTKLIB\src\shape.c=
- 2016/06/12 21:42:30.000.616,=D:\proj\RTKLIB\src\gis.c
- 2016/06/18 12:27:46.000.033,=D:\proj\RTKLIB\app\rtkplot\Unit1.cpp
- 2016/06/18 12:35:43.000.366,D:\proj\RTKLIB\app\rtkplot\vmapdlg.h=D:\proj\RTKLIB\app\rtkplot\Unit1.h
- 2016/06/18 12:35:43.000.366,D:\proj\RTKLIB\app\rtkplot\vmapdlg.cpp=D:\proj\RTKLIB\app\rtkplot\Unit1.cpp
- 2016/06/18 12:35:43.000.366,D:\proj\RTKLIB\app\rtkplot\vmapdlg.dfm=D:\proj\RTKLIB\app\rtkplot\Unit1.dfm
- 2016/07/05 15:27:09.000.924,=D:\proj\RTKLIB\src\rcv\cmr.c
- 2016/08/30 16:07:52.000.046,D:\proj\RTKLIB\app\rtkplot\fileseldlg.cpp=
- 2017/05/26 21:04:56.000.195,=D:\proj\RTKLIB\src\rcv\tersus.c
-
-
diff --git a/app/rtkplot/rtkplot.res b/app/rtkplot/rtkplot.res
deleted file mode 100644
index aa64bf0d8..000000000
Binary files a/app/rtkplot/rtkplot.res and /dev/null differ
diff --git a/app/rtkplot/satdlg.cpp b/app/rtkplot/satdlg.cpp
deleted file mode 100644
index a11209f9d..000000000
--- a/app/rtkplot/satdlg.cpp
+++ /dev/null
@@ -1,67 +0,0 @@
-//---------------------------------------------------------------------------
-#include
-#pragma hdrstop
-
-#include "satdlg.h"
-//---------------------------------------------------------------------------
-#pragma package(smart_init)
-#pragma resource "*.dfm"
-TSatDialog *SatDialog;
-//---------------------------------------------------------------------------
-__fastcall TSatDialog::TSatDialog(TComponent* Owner)
- : TForm(Owner)
-{
- for (int i=0;i<36;i++) ValidSat[i]=1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TSatDialog::FormShow(TObject *Sender)
-{
- TCheckBox *sat[]={
- PRN01,PRN02,PRN03,PRN04,PRN05,PRN06,PRN07,PRN08,PRN09,PRN10,
- PRN11,PRN12,PRN13,PRN14,PRN15,PRN16,PRN17,PRN18,PRN19,PRN20,
- PRN21,PRN22,PRN23,PRN24,PRN25,PRN26,PRN27,PRN28,PRN29,PRN30,
- PRN31,PRN32,SBAS,GLO,GAL,PRN33
- };
- for (int i=0;i<36;i++) sat[i]->Checked=ValidSat[i];
-}
-//---------------------------------------------------------------------------
-void __fastcall TSatDialog::BtnChkAllClick(TObject *Sender)
-{
- TCheckBox *sat[]={
- PRN01,PRN02,PRN03,PRN04,PRN05,PRN06,PRN07,PRN08,PRN09,PRN10,
- PRN11,PRN12,PRN13,PRN14,PRN15,PRN16,PRN17,PRN18,PRN19,PRN20,
- PRN21,PRN22,PRN23,PRN24,PRN25,PRN26,PRN27,PRN28,PRN29,PRN30,
- PRN31,PRN32,SBAS,GLO,GAL,PRN33
- };
- for (int i=0;i<36;i++) sat[i]->Checked=true;
-}
-//---------------------------------------------------------------------------
-void __fastcall TSatDialog::BtnUnchkAllClick(TObject *Sender)
-{
- TCheckBox *sat[]={
- PRN01,PRN02,PRN03,PRN04,PRN05,PRN06,PRN07,PRN08,PRN09,PRN10,
- PRN11,PRN12,PRN13,PRN14,PRN15,PRN16,PRN17,PRN18,PRN19,PRN20,
- PRN21,PRN22,PRN23,PRN24,PRN25,PRN26,PRN27,PRN28,PRN29,PRN30,
- PRN31,PRN32,SBAS,GLO,GAL,PRN33
- };
- for (int i=0;i<36;i++) sat[i]->Checked=false;
-}
-//---------------------------------------------------------------------------
-void __fastcall TSatDialog::BtnOkClick(TObject *Sender)
-{
- TCheckBox *sat[]={
- PRN01,PRN02,PRN03,PRN04,PRN05,PRN06,PRN07,PRN08,PRN09,PRN10,
- PRN11,PRN12,PRN13,PRN14,PRN15,PRN16,PRN17,PRN18,PRN19,PRN20,
- PRN21,PRN22,PRN23,PRN24,PRN25,PRN26,PRN27,PRN28,PRN29,PRN30,
- PRN31,PRN32,SBAS,GLO,GAL,PRN33
- };
- for (int i=0;i<36;i++) ValidSat[i]=sat[i]->Checked;
- Close();
-}
-//---------------------------------------------------------------------------
-void __fastcall TSatDialog::BtnCancelClick(TObject *Sender)
-{
- Close();
-}
-//---------------------------------------------------------------------------
-
diff --git a/app/rtkplot/satdlg.dfm b/app/rtkplot/satdlg.dfm
deleted file mode 100644
index d9036e05d..000000000
--- a/app/rtkplot/satdlg.dfm
+++ /dev/null
@@ -1,384 +0,0 @@
-object SatDialog: TSatDialog
- Left = 0
- Top = 0
- BorderIcons = []
- BorderStyle = bsDialog
- Caption = 'Satellites'
- ClientHeight = 187
- ClientWidth = 349
- Color = clWhite
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- OldCreateOrder = False
- Position = poMainFormCenter
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object BtnCancel: TButton
- Left = 272
- Top = 162
- Width = 73
- Height = 23
- Caption = '&Cancel'
- TabOrder = 0
- OnClick = BtnCancelClick
- end
- object BtnOk: TButton
- Left = 196
- Top = 162
- Width = 73
- Height = 23
- Caption = '&OK'
- TabOrder = 1
- OnClick = BtnOkClick
- end
- object Panel1: TPanel
- Left = 6
- Top = 4
- Width = 65
- Height = 153
- BevelOuter = bvNone
- TabOrder = 2
- object PRN01: TCheckBox
- Left = 8
- Top = 6
- Width = 59
- Height = 17
- Caption = 'PRN01'
- TabOrder = 0
- end
- object PRN02: TCheckBox
- Left = 8
- Top = 24
- Width = 59
- Height = 17
- Caption = 'PRN02'
- TabOrder = 1
- end
- object PRN03: TCheckBox
- Left = 8
- Top = 42
- Width = 59
- Height = 17
- Caption = 'PRN03'
- TabOrder = 2
- end
- object PRN04: TCheckBox
- Left = 8
- Top = 60
- Width = 59
- Height = 17
- Caption = 'PRN04'
- TabOrder = 3
- end
- object PRN05: TCheckBox
- Left = 8
- Top = 78
- Width = 59
- Height = 17
- Caption = 'PRN05'
- TabOrder = 4
- end
- object PRN06: TCheckBox
- Left = 8
- Top = 96
- Width = 59
- Height = 17
- Caption = 'PRN06'
- TabOrder = 5
- end
- object PRN07: TCheckBox
- Left = 8
- Top = 114
- Width = 59
- Height = 17
- Caption = 'PRN07'
- TabOrder = 6
- end
- object PRN08: TCheckBox
- Left = 8
- Top = 132
- Width = 59
- Height = 17
- Caption = 'PRN08'
- TabOrder = 7
- end
- end
- object Panel2: TPanel
- Left = 74
- Top = 4
- Width = 65
- Height = 153
- BevelOuter = bvNone
- TabOrder = 3
- object PRN09: TCheckBox
- Left = 8
- Top = 6
- Width = 59
- Height = 17
- Caption = 'PRN09'
- TabOrder = 0
- end
- object PRN10: TCheckBox
- Left = 8
- Top = 24
- Width = 59
- Height = 17
- Caption = 'PRN10'
- TabOrder = 1
- end
- object PRN11: TCheckBox
- Left = 8
- Top = 42
- Width = 59
- Height = 17
- Caption = 'PRN11'
- TabOrder = 2
- end
- object PRN12: TCheckBox
- Left = 8
- Top = 60
- Width = 59
- Height = 17
- Caption = 'PRN12'
- TabOrder = 3
- end
- object PRN13: TCheckBox
- Left = 8
- Top = 78
- Width = 59
- Height = 17
- Caption = 'PRN13'
- TabOrder = 4
- end
- object PRN14: TCheckBox
- Left = 8
- Top = 96
- Width = 59
- Height = 17
- Caption = 'PRN14'
- TabOrder = 5
- end
- object PRN15: TCheckBox
- Left = 8
- Top = 114
- Width = 59
- Height = 17
- Caption = 'PRN15'
- TabOrder = 6
- end
- object PRN16: TCheckBox
- Left = 8
- Top = 132
- Width = 59
- Height = 17
- Caption = 'PRN16'
- TabOrder = 7
- end
- end
- object Panel3: TPanel
- Left = 142
- Top = 4
- Width = 65
- Height = 153
- BevelOuter = bvNone
- TabOrder = 4
- object PRN17: TCheckBox
- Left = 8
- Top = 6
- Width = 59
- Height = 17
- Caption = 'PRN17'
- TabOrder = 0
- end
- object PRN18: TCheckBox
- Left = 8
- Top = 24
- Width = 59
- Height = 17
- Caption = 'PRN18'
- TabOrder = 1
- end
- object PRN19: TCheckBox
- Left = 8
- Top = 42
- Width = 59
- Height = 17
- Caption = 'PRN19'
- TabOrder = 2
- end
- object PRN20: TCheckBox
- Left = 8
- Top = 60
- Width = 59
- Height = 17
- Caption = 'PRN20'
- TabOrder = 3
- end
- object PRN21: TCheckBox
- Left = 8
- Top = 78
- Width = 59
- Height = 17
- Caption = 'PRN21'
- TabOrder = 4
- end
- object PRN22: TCheckBox
- Left = 8
- Top = 96
- Width = 59
- Height = 17
- Caption = 'PRN22'
- TabOrder = 5
- end
- object PRN23: TCheckBox
- Left = 8
- Top = 114
- Width = 59
- Height = 17
- Caption = 'PRN23'
- TabOrder = 6
- end
- object PRN24: TCheckBox
- Left = 8
- Top = 132
- Width = 59
- Height = 17
- Caption = 'PRN24'
- TabOrder = 7
- end
- end
- object Panel4: TPanel
- Left = 278
- Top = 4
- Width = 65
- Height = 153
- BevelOuter = bvNone
- TabOrder = 5
- object SBAS: TCheckBox
- Left = 8
- Top = 6
- Width = 59
- Height = 17
- Caption = 'SBAS'
- TabOrder = 0
- end
- object GLO: TCheckBox
- Left = 8
- Top = 24
- Width = 59
- Height = 17
- Caption = 'GLO'
- TabOrder = 1
- end
- object GAL: TCheckBox
- Left = 8
- Top = 42
- Width = 59
- Height = 17
- Caption = 'GAL'
- TabOrder = 2
- end
- object PRN33: TCheckBox
- Left = 8
- Top = 60
- Width = 59
- Height = 17
- Caption = 'PRN33-'
- TabOrder = 3
- end
- end
- object Panel5: TPanel
- Left = 210
- Top = 4
- Width = 65
- Height = 153
- BevelOuter = bvNone
- TabOrder = 6
- object PRN25: TCheckBox
- Left = 8
- Top = 6
- Width = 59
- Height = 17
- Caption = 'PRN25'
- TabOrder = 0
- end
- object PRN26: TCheckBox
- Left = 8
- Top = 24
- Width = 59
- Height = 17
- Caption = 'PRN26'
- TabOrder = 1
- end
- object PRN27: TCheckBox
- Left = 8
- Top = 42
- Width = 59
- Height = 17
- Caption = 'PRN27'
- TabOrder = 2
- end
- object PRN28: TCheckBox
- Left = 8
- Top = 60
- Width = 59
- Height = 17
- Caption = 'PRN28'
- TabOrder = 3
- end
- object PRN29: TCheckBox
- Left = 8
- Top = 78
- Width = 59
- Height = 17
- Caption = 'PRN29'
- TabOrder = 4
- end
- object PRN30: TCheckBox
- Left = 8
- Top = 96
- Width = 59
- Height = 17
- Caption = 'PRN30'
- TabOrder = 5
- end
- object PRN31: TCheckBox
- Left = 8
- Top = 114
- Width = 59
- Height = 17
- Caption = 'PRN31'
- TabOrder = 6
- end
- object PRN32: TCheckBox
- Left = 8
- Top = 132
- Width = 59
- Height = 17
- Caption = 'PRN32'
- TabOrder = 7
- end
- end
- object BtnChkAll: TButton
- Left = 6
- Top = 162
- Width = 67
- Height = 23
- Caption = '&Check All'
- TabOrder = 7
- OnClick = BtnChkAllClick
- end
- object BtnUnchkAll: TButton
- Left = 74
- Top = 162
- Width = 69
- Height = 23
- Caption = '&Uncheck All'
- TabOrder = 8
- OnClick = BtnUnchkAllClick
- end
-end
diff --git a/app/rtkplot/satdlg.h b/app/rtkplot/satdlg.h
deleted file mode 100644
index a7b82355b..000000000
--- a/app/rtkplot/satdlg.h
+++ /dev/null
@@ -1,72 +0,0 @@
-//---------------------------------------------------------------------------
-#ifndef satdlgH
-#define satdlgH
-//---------------------------------------------------------------------------
-#include
-#include
-#include
-#include
-#include
-//---------------------------------------------------------------------------
-class TSatDialog : public TForm
-{
-__published:
- TButton *BtnCancel;
- TButton *BtnOk;
- TPanel *Panel1;
- TPanel *Panel2;
- TPanel *Panel3;
- TPanel *Panel4;
- TPanel *Panel5;
- TCheckBox *PRN01;
- TCheckBox *PRN02;
- TCheckBox *PRN03;
- TCheckBox *PRN04;
- TCheckBox *PRN05;
- TCheckBox *PRN06;
- TCheckBox *PRN07;
- TCheckBox *PRN08;
- TCheckBox *PRN09;
- TCheckBox *PRN10;
- TCheckBox *PRN11;
- TCheckBox *PRN12;
- TCheckBox *PRN13;
- TCheckBox *PRN14;
- TCheckBox *PRN15;
- TCheckBox *PRN16;
- TCheckBox *PRN17;
- TCheckBox *PRN18;
- TCheckBox *PRN19;
- TCheckBox *PRN20;
- TCheckBox *PRN21;
- TCheckBox *PRN22;
- TCheckBox *PRN23;
- TCheckBox *PRN24;
- TCheckBox *PRN25;
- TCheckBox *PRN26;
- TCheckBox *PRN27;
- TCheckBox *PRN28;
- TCheckBox *PRN29;
- TCheckBox *PRN30;
- TCheckBox *PRN31;
- TCheckBox *PRN32;
- TCheckBox *SBAS;
- TCheckBox *GLO;
- TCheckBox *GAL;
- TCheckBox *PRN33;
- TButton *BtnChkAll;
- TButton *BtnUnchkAll;
- void __fastcall BtnOkClick(TObject *Sender);
- void __fastcall BtnCancelClick(TObject *Sender);
- void __fastcall BtnChkAllClick(TObject *Sender);
- void __fastcall BtnUnchkAllClick(TObject *Sender);
- void __fastcall FormShow(TObject *Sender);
-private:
-public:
- int ValidSat[36];
- __fastcall TSatDialog(TComponent* Owner);
-};
-//---------------------------------------------------------------------------
-extern PACKAGE TSatDialog *SatDialog;
-//---------------------------------------------------------------------------
-#endif
diff --git a/app/rtkpost/extopt.cpp b/app/rtkpost/extopt.cpp
deleted file mode 100644
index a8fb5f24a..000000000
--- a/app/rtkpost/extopt.cpp
+++ /dev/null
@@ -1,133 +0,0 @@
-//---------------------------------------------------------------------------
-#include
-#pragma hdrstop
-
-#include "extopt.h"
-#include "postopt.h"
-//---------------------------------------------------------------------------
-#pragma package(smart_init)
-#pragma resource "*.dfm"
-TExtOptDialog *ExtOptDialog;
-//---------------------------------------------------------------------------
-static double str2dbl(AnsiString str)
-{
- double val=0.0;
- sscanf(str.c_str(),"%lf",&val);
- return val;
-}
-//---------------------------------------------------------------------------
-__fastcall TExtOptDialog::TExtOptDialog(TComponent* Owner)
- : TForm(Owner)
-{
-}
-//---------------------------------------------------------------------------
-void __fastcall TExtOptDialog::FormShow(TObject *Sender)
-{
- GetExtErrOpt();
- UpdateEnable();
-}
-//---------------------------------------------------------------------------
-void __fastcall TExtOptDialog::BtnOkClick(TObject *Sender)
-{
- SetExtErrOpt();
-}
-//---------------------------------------------------------------------------
-void __fastcall TExtOptDialog::ExtEna0Click(TObject *Sender)
-{
- UpdateEnable();
-}
-//---------------------------------------------------------------------------
-void __fastcall TExtOptDialog::ExtEna1Click(TObject *Sender)
-{
- UpdateEnable();
-}
-//---------------------------------------------------------------------------
-void __fastcall TExtOptDialog::ExtEna3Click(TObject *Sender)
-{
- UpdateEnable();
-}
-//---------------------------------------------------------------------------
-void __fastcall TExtOptDialog::ExtEna2Click(TObject *Sender)
-{
- UpdateEnable();
-}
-//---------------------------------------------------------------------------
-void __fastcall TExtOptDialog::GetExtErrOpt(void)
-{
- TEdit *editc[][6]={
- {CodeErr00,CodeErr01,CodeErr02,CodeErr03,CodeErr04,CodeErr05},
- {CodeErr10,CodeErr11,CodeErr12,CodeErr13,CodeErr14,CodeErr15},
- {CodeErr20,CodeErr21,CodeErr22,CodeErr23,CodeErr24,CodeErr25}
- };
- TEdit *editp[][6]={
- {PhaseErr00,PhaseErr01,PhaseErr02,PhaseErr03,PhaseErr04,PhaseErr05},
- {PhaseErr10,PhaseErr11,PhaseErr12,PhaseErr13,PhaseErr14,PhaseErr15},
- {PhaseErr20,PhaseErr21,PhaseErr22,PhaseErr23,PhaseErr24,PhaseErr25}
- };
- AnsiString s;
-
- ExtEna0->Checked=OptDialog->ExtErr.ena[0];
- ExtEna1->Checked=OptDialog->ExtErr.ena[1];
- ExtEna2->Checked=OptDialog->ExtErr.ena[2];
- ExtEna3->Checked=OptDialog->ExtErr.ena[3];
-
- for (int i=0;i<3;i++) for (int j=0;j<6;j++) {
- editc[i][j]->Text=s.sprintf("%.3f",OptDialog->ExtErr.cerr[i][j]);
- editp[i][j]->Text=s.sprintf("%.3f",OptDialog->ExtErr.perr[i][j]);
- }
- GpsGloB0->Text=s.sprintf("%.3f",OptDialog->ExtErr.gpsglob[0]);
- GpsGloB1->Text=s.sprintf("%.3f",OptDialog->ExtErr.gpsglob[1]);
- GloICB0->Text=s.sprintf("%.3f",OptDialog->ExtErr.gloicb[0]);
- GloICB1->Text=s.sprintf("%.3f",OptDialog->ExtErr.gloicb[1]);
-}
-//---------------------------------------------------------------------------
-void __fastcall TExtOptDialog::SetExtErrOpt(void)
-{
- TEdit *editc[][6]={
- {CodeErr00,CodeErr01,CodeErr02,CodeErr03,CodeErr04,CodeErr05},
- {CodeErr10,CodeErr11,CodeErr12,CodeErr13,CodeErr14,CodeErr15},
- {CodeErr20,CodeErr21,CodeErr22,CodeErr23,CodeErr24,CodeErr25}
- };
- TEdit *editp[][6]={
- {PhaseErr00,PhaseErr01,PhaseErr02,PhaseErr03,PhaseErr04,PhaseErr05},
- {PhaseErr10,PhaseErr11,PhaseErr12,PhaseErr13,PhaseErr14,PhaseErr15},
- {PhaseErr20,PhaseErr21,PhaseErr22,PhaseErr23,PhaseErr24,PhaseErr25}
- };
- OptDialog->ExtErr.ena[0]=ExtEna0->Checked;
- OptDialog->ExtErr.ena[1]=ExtEna1->Checked;
- OptDialog->ExtErr.ena[2]=ExtEna2->Checked;
- OptDialog->ExtErr.ena[3]=ExtEna3->Checked;
-
- for (int i=0;i<3;i++) for (int j=0;j<6;j++) {
- OptDialog->ExtErr.cerr[i][j]=str2dbl(editc[i][j]->Text);
- OptDialog->ExtErr.perr[i][j]=str2dbl(editp[i][j]->Text);
- }
- OptDialog->ExtErr.gloicb[0]=str2dbl(GloICB0->Text);
- OptDialog->ExtErr.gloicb[1]=str2dbl(GloICB1->Text);
- OptDialog->ExtErr.gpsglob[0]=str2dbl(GpsGloB0->Text);
- OptDialog->ExtErr.gpsglob[1]=str2dbl(GpsGloB1->Text);
-}
-//---------------------------------------------------------------------------
-void __fastcall TExtOptDialog::UpdateEnable(void)
-{
- TEdit *editc[][6]={
- {CodeErr00,CodeErr01,CodeErr02,CodeErr03,CodeErr04,CodeErr05},
- {CodeErr10,CodeErr11,CodeErr12,CodeErr13,CodeErr14,CodeErr15},
- {CodeErr20,CodeErr21,CodeErr22,CodeErr23,CodeErr24,CodeErr25}
- };
- TEdit *editp[][6]={
- {PhaseErr00,PhaseErr01,PhaseErr02,PhaseErr03,PhaseErr04,PhaseErr05},
- {PhaseErr10,PhaseErr11,PhaseErr12,PhaseErr13,PhaseErr14,PhaseErr15},
- {PhaseErr20,PhaseErr21,PhaseErr22,PhaseErr23,PhaseErr24,PhaseErr25}
- };
- for (int i=0;i<3;i++) for (int j=0;j<6;j++) {
- editc[i][j]->Enabled=ExtEna0->Checked;
- editp[i][j]->Enabled=ExtEna1->Checked;
- }
- GloICB0->Enabled=ExtEna2->Checked;
- GloICB1->Enabled=ExtEna2->Checked;
- GpsGloB0->Enabled=ExtEna3->Checked;
- GpsGloB1->Enabled=ExtEna3->Checked;
-}
-//---------------------------------------------------------------------------
-
diff --git a/app/rtkpost/extopt.dfm b/app/rtkpost/extopt.dfm
deleted file mode 100644
index b4daf0b2c..000000000
--- a/app/rtkpost/extopt.dfm
+++ /dev/null
@@ -1,753 +0,0 @@
-object ExtOptDialog: TExtOptDialog
- Left = 0
- Top = 0
- BorderStyle = bsDialog
- Caption = 'Extended Options'
- ClientHeight = 246
- ClientWidth = 371
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- OldCreateOrder = False
- Position = poMainFormCenter
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object BtnOk: TButton
- Left = 231
- Top = 225
- Width = 69
- Height = 21
- Caption = '&OK'
- ModalResult = 1
- TabOrder = 0
- OnClick = BtnOkClick
- end
- object BtnCancel: TButton
- Left = 300
- Top = 225
- Width = 69
- Height = 21
- Caption = '&Cancel'
- ModalResult = 2
- TabOrder = 1
- end
- object Panel6: TPanel
- Left = -1
- Top = 1
- Width = 371
- Height = 90
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 2
- object Label23: TLabel
- Left = 8
- Top = 22
- Width = 43
- Height = 13
- Caption = 'GPS/QZS'
- end
- object Label48: TLabel
- Left = 8
- Top = 44
- Width = 46
- Height = 13
- Caption = 'GLONASS'
- end
- object Label49: TLabel
- Left = 8
- Top = 66
- Width = 31
- Height = 13
- Caption = 'Galileo'
- end
- object Label59: TLabel
- Left = 92
- Top = 3
- Width = 6
- Height = 13
- Caption = 'a'
- end
- object Label61: TLabel
- Left = 138
- Top = 3
- Width = 6
- Height = 13
- Caption = 'b'
- end
- object Label84: TLabel
- Left = 244
- Top = 3
- Width = 6
- Height = 13
- Caption = 'b'
- end
- object Label85: TLabel
- Left = 198
- Top = 3
- Width = 6
- Height = 13
- Caption = 'a'
- end
- object Label88: TLabel
- Left = 346
- Top = 3
- Width = 6
- Height = 13
- Caption = 'b'
- end
- object Label89: TLabel
- Left = 300
- Top = 3
- Width = 6
- Height = 13
- Caption = 'a'
- end
- object ExtEna0: TCheckBox
- Left = 6
- Top = 3
- Width = 73
- Height = 17
- Caption = 'Code Error'
- TabOrder = 0
- OnClick = ExtEna0Click
- end
- object Panel4: TPanel
- Left = 58
- Top = 62
- Width = 309
- Height = 24
- BevelOuter = bvNone
- TabOrder = 3
- object Label71: TLabel
- Left = 2
- Top = 4
- Width = 12
- Height = 13
- Caption = 'E1'
- end
- object Label72: TLabel
- Left = 103
- Top = 4
- Width = 18
- Height = 13
- Caption = 'E5a'
- end
- object Label73: TLabel
- Left = 207
- Top = 4
- Width = 18
- Height = 13
- Caption = 'E5b'
- end
- object CodeErr20: TEdit
- Left = 18
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 0
- Text = '0.300'
- end
- object CodeErr21: TEdit
- Left = 60
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 1
- Text = '0.300'
- end
- object CodeErr22: TEdit
- Left = 122
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 2
- Text = '0.300'
- end
- object CodeErr23: TEdit
- Left = 164
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 3
- Text = '0.300'
- end
- object CodeErr24: TEdit
- Left = 226
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 4
- Text = '0.300'
- end
- object CodeErr25: TEdit
- Left = 268
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 5
- Text = '0.300'
- end
- end
- object Panel3: TPanel
- Left = 58
- Top = 40
- Width = 309
- Height = 24
- BevelOuter = bvNone
- TabOrder = 2
- object Label52: TLabel
- Left = 2
- Top = 4
- Width = 11
- Height = 13
- Caption = 'L1'
- end
- object Label70: TLabel
- Left = 106
- Top = 4
- Width = 11
- Height = 13
- Caption = 'L2'
- end
- object CodeErr10: TEdit
- Left = 18
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 0
- Text = '0.300'
- end
- object CodeErr11: TEdit
- Left = 60
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 1
- Text = '0.300'
- end
- object CodeErr12: TEdit
- Left = 122
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 2
- Text = '0.300'
- end
- object CodeErr13: TEdit
- Left = 164
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 3
- Text = '0.300'
- end
- object CodeErr14: TEdit
- Left = 226
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 4
- Text = '0.300'
- Visible = False
- end
- object CodeErr15: TEdit
- Left = 268
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 5
- Text = '0.300'
- Visible = False
- end
- end
- object Panel2: TPanel
- Left = 58
- Top = 18
- Width = 309
- Height = 24
- BevelOuter = bvNone
- TabOrder = 1
- object Label69: TLabel
- Left = 210
- Top = 4
- Width = 11
- Height = 13
- Caption = 'L5'
- end
- object Label50: TLabel
- Left = 106
- Top = 4
- Width = 11
- Height = 13
- Caption = 'L2'
- end
- object Label51: TLabel
- Left = 2
- Top = 4
- Width = 11
- Height = 13
- Caption = 'L1'
- end
- object CodeErr00: TEdit
- Left = 18
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 0
- Text = '0.300'
- end
- object CodeErr01: TEdit
- Left = 60
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 1
- Text = '0.300'
- end
- object CodeErr02: TEdit
- Left = 122
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 2
- Text = '0.300'
- end
- object CodeErr03: TEdit
- Left = 164
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 3
- Text = '0.300'
- end
- object CodeErr04: TEdit
- Left = 226
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 4
- Text = '0.300'
- end
- object CodeErr05: TEdit
- Left = 268
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 5
- Text = '0.300'
- end
- end
- end
- object Panel7: TPanel
- Left = -1
- Top = 91
- Width = 371
- Height = 90
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 3
- object Label12: TLabel
- Left = 8
- Top = 24
- Width = 43
- Height = 13
- Caption = 'GPS/QZS'
- end
- object Label53: TLabel
- Left = 8
- Top = 46
- Width = 46
- Height = 13
- Caption = 'GLONASS'
- end
- object Label58: TLabel
- Left = 8
- Top = 68
- Width = 31
- Height = 13
- Caption = 'Galileo'
- end
- object Label90: TLabel
- Left = 92
- Top = 3
- Width = 6
- Height = 13
- Caption = 'a'
- end
- object Label91: TLabel
- Left = 138
- Top = 3
- Width = 6
- Height = 13
- Caption = 'b'
- end
- object Label92: TLabel
- Left = 198
- Top = 3
- Width = 6
- Height = 13
- Caption = 'a'
- end
- object Label93: TLabel
- Left = 244
- Top = 3
- Width = 6
- Height = 13
- Caption = 'b'
- end
- object Label94: TLabel
- Left = 300
- Top = 3
- Width = 6
- Height = 13
- Caption = 'a'
- end
- object Label95: TLabel
- Left = 346
- Top = 3
- Width = 6
- Height = 13
- Caption = 'b'
- end
- object ExtEna1: TCheckBox
- Left = 6
- Top = 3
- Width = 73
- Height = 17
- Caption = 'Phase Error'
- TabOrder = 0
- OnClick = ExtEna1Click
- end
- object Panel10: TPanel
- Left = 58
- Top = 62
- Width = 309
- Height = 24
- BevelOuter = bvNone
- TabOrder = 3
- object Label76: TLabel
- Left = 2
- Top = 6
- Width = 12
- Height = 13
- Caption = 'E1'
- end
- object Label79: TLabel
- Left = 103
- Top = 6
- Width = 18
- Height = 13
- Caption = 'E5a'
- end
- object Label81: TLabel
- Left = 206
- Top = 6
- Width = 18
- Height = 13
- Caption = 'E5b'
- end
- object PhaseErr20: TEdit
- Left = 18
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 0
- Text = '0.003'
- end
- object PhaseErr21: TEdit
- Left = 60
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 1
- Text = '0.003'
- end
- object PhaseErr22: TEdit
- Left = 122
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 2
- Text = '0.003'
- end
- object PhaseErr23: TEdit
- Left = 164
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 3
- Text = '0.003'
- end
- object PhaseErr24: TEdit
- Left = 226
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 4
- Text = '0.003'
- end
- object PhaseErr25: TEdit
- Left = 268
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 5
- Text = '0.003'
- end
- end
- object Panel9: TPanel
- Left = 58
- Top = 40
- Width = 309
- Height = 24
- BevelOuter = bvNone
- TabOrder = 2
- object Label75: TLabel
- Left = 2
- Top = 6
- Width = 11
- Height = 13
- Caption = 'L1'
- end
- object Label78: TLabel
- Left = 106
- Top = 6
- Width = 11
- Height = 13
- Caption = 'L2'
- end
- object PhaseErr10: TEdit
- Left = 18
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 0
- Text = '0.003'
- end
- object PhaseErr11: TEdit
- Left = 60
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 1
- Text = '0.003'
- end
- object PhaseErr12: TEdit
- Left = 122
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 2
- Text = '0.003'
- end
- object PhaseErr13: TEdit
- Left = 164
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 3
- Text = '0.003'
- end
- object PhaseErr14: TEdit
- Left = 226
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 4
- Text = '0.003'
- Visible = False
- end
- object PhaseErr15: TEdit
- Left = 268
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 5
- Text = '0.003'
- Visible = False
- end
- end
- object Panel8: TPanel
- Left = 58
- Top = 18
- Width = 309
- Height = 24
- BevelOuter = bvNone
- TabOrder = 1
- object Label74: TLabel
- Left = 2
- Top = 6
- Width = 11
- Height = 13
- Caption = 'L1'
- end
- object Label77: TLabel
- Left = 106
- Top = 6
- Width = 11
- Height = 13
- Caption = 'L2'
- end
- object Label80: TLabel
- Left = 210
- Top = 6
- Width = 11
- Height = 13
- Caption = 'L5'
- end
- object PhaseErr00: TEdit
- Left = 18
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 0
- Text = '0.003'
- end
- object PhaseErr01: TEdit
- Left = 60
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 1
- Text = '0.003'
- end
- object PhaseErr02: TEdit
- Left = 122
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 2
- Text = '0.003'
- end
- object PhaseErr03: TEdit
- Left = 164
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 3
- Text = '0.003'
- end
- object PhaseErr04: TEdit
- Left = 226
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 4
- Text = '0.003'
- end
- object PhaseErr05: TEdit
- Left = 268
- Top = 2
- Width = 41
- Height = 21
- TabOrder = 5
- Text = '0.003'
- end
- end
- end
- object Panel5: TPanel
- Left = -1
- Top = 181
- Width = 371
- Height = 45
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 4
- object Label54: TLabel
- Left = 200
- Top = 23
- Width = 11
- Height = 13
- Caption = 'L1'
- end
- object Label56: TLabel
- Left = 264
- Top = 23
- Width = 11
- Height = 13
- Caption = 'L2'
- end
- object Label57: TLabel
- Left = 326
- Top = 23
- Width = 37
- Height = 13
- Caption = 'cm/FCN'
- end
- object Label55: TLabel
- Left = 10
- Top = 23
- Width = 11
- Height = 13
- Caption = 'L1'
- end
- object Label67: TLabel
- Left = 74
- Top = 23
- Width = 11
- Height = 13
- Caption = 'L2'
- end
- object Label68: TLabel
- Left = 136
- Top = 23
- Width = 8
- Height = 13
- Caption = 'm'
- end
- object ExtEna2: TCheckBox
- Left = 198
- Top = 3
- Width = 159
- Height = 17
- Caption = 'GLONASS Inter Freq Bias'
- TabOrder = 0
- OnClick = ExtEna2Click
- end
- object GloICB0: TEdit
- Left = 216
- Top = 20
- Width = 43
- Height = 21
- TabOrder = 1
- Text = '0.000'
- end
- object GloICB1: TEdit
- Left = 280
- Top = 20
- Width = 43
- Height = 21
- TabOrder = 2
- Text = '0.000'
- end
- object ExtEna3: TCheckBox
- Left = 8
- Top = 3
- Width = 149
- Height = 17
- Caption = 'GPS-GLO Inter System Bias'
- TabOrder = 3
- OnClick = ExtEna3Click
- end
- object GpsGloB0: TEdit
- Left = 26
- Top = 20
- Width = 43
- Height = 21
- TabOrder = 4
- Text = '0.000'
- end
- object GpsGloB1: TEdit
- Left = 90
- Top = 20
- Width = 43
- Height = 21
- TabOrder = 5
- Text = '0.000'
- end
- end
-end
diff --git a/app/rtkpost/extopt.h b/app/rtkpost/extopt.h
deleted file mode 100644
index 676f2552c..000000000
--- a/app/rtkpost/extopt.h
+++ /dev/null
@@ -1,125 +0,0 @@
-//---------------------------------------------------------------------------
-#ifndef extoptH
-#define extoptH
-//---------------------------------------------------------------------------
-#include
-#include
-#include
-#include
-#include
-//---------------------------------------------------------------------------
-class TExtOptDialog : public TForm
-{
-__published:
- TButton *BtnOk;
- TButton *BtnCancel;
- TPanel *Panel6;
- TLabel *Label23;
- TLabel *Label48;
- TLabel *Label49;
- TLabel *Label59;
- TLabel *Label61;
- TLabel *Label84;
- TLabel *Label85;
- TLabel *Label88;
- TLabel *Label89;
- TCheckBox *ExtEna0;
- TPanel *Panel2;
- TLabel *Label69;
- TLabel *Label50;
- TLabel *Label51;
- TEdit *CodeErr00;
- TEdit *CodeErr01;
- TEdit *CodeErr02;
- TEdit *CodeErr03;
- TEdit *CodeErr04;
- TEdit *CodeErr05;
- TPanel *Panel3;
- TLabel *Label52;
- TLabel *Label70;
- TEdit *CodeErr10;
- TEdit *CodeErr11;
- TEdit *CodeErr12;
- TEdit *CodeErr13;
- TEdit *CodeErr14;
- TEdit *CodeErr15;
- TPanel *Panel4;
- TLabel *Label71;
- TLabel *Label72;
- TLabel *Label73;
- TEdit *CodeErr20;
- TEdit *CodeErr21;
- TEdit *CodeErr22;
- TEdit *CodeErr23;
- TEdit *CodeErr24;
- TEdit *CodeErr25;
- TPanel *Panel7;
- TLabel *Label12;
- TLabel *Label53;
- TLabel *Label58;
- TLabel *Label90;
- TLabel *Label91;
- TLabel *Label92;
- TLabel *Label93;
- TLabel *Label94;
- TLabel *Label95;
- TCheckBox *ExtEna1;
- TPanel *Panel8;
- TLabel *Label74;
- TLabel *Label77;
- TLabel *Label80;
- TEdit *PhaseErr00;
- TEdit *PhaseErr01;
- TEdit *PhaseErr02;
- TEdit *PhaseErr03;
- TEdit *PhaseErr04;
- TEdit *PhaseErr05;
- TPanel *Panel9;
- TLabel *Label75;
- TLabel *Label78;
- TEdit *PhaseErr10;
- TEdit *PhaseErr11;
- TEdit *PhaseErr12;
- TEdit *PhaseErr13;
- TEdit *PhaseErr14;
- TEdit *PhaseErr15;
- TPanel *Panel10;
- TLabel *Label76;
- TLabel *Label79;
- TLabel *Label81;
- TEdit *PhaseErr20;
- TEdit *PhaseErr21;
- TEdit *PhaseErr22;
- TEdit *PhaseErr23;
- TEdit *PhaseErr24;
- TEdit *PhaseErr25;
- TPanel *Panel5;
- TLabel *Label54;
- TLabel *Label56;
- TLabel *Label57;
- TLabel *Label55;
- TLabel *Label67;
- TLabel *Label68;
- TCheckBox *ExtEna2;
- TEdit *GloICB0;
- TEdit *GloICB1;
- TCheckBox *ExtEna3;
- TEdit *GpsGloB0;
- TEdit *GpsGloB1;
- void __fastcall BtnOkClick(TObject *Sender);
- void __fastcall ExtEna0Click(TObject *Sender);
- void __fastcall ExtEna1Click(TObject *Sender);
- void __fastcall ExtEna3Click(TObject *Sender);
- void __fastcall ExtEna2Click(TObject *Sender);
- void __fastcall FormShow(TObject *Sender);
-private:
- void __fastcall GetExtErrOpt(void);
- void __fastcall SetExtErrOpt(void);
- void __fastcall UpdateEnable(void);
-public:
- __fastcall TExtOptDialog(TComponent* Owner);
-};
-//---------------------------------------------------------------------------
-extern PACKAGE TExtOptDialog *ExtOptDialog;
-//---------------------------------------------------------------------------
-#endif
diff --git a/app/rtkpost/install.bat b/app/rtkpost/install.bat
deleted file mode 100644
index aa7ea10fe..000000000
--- a/app/rtkpost/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\rtkpost.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkpost/rtkpost.cbproj b/app/rtkpost/rtkpost.cbproj
deleted file mode 100644
index d8edf58e7..000000000
--- a/app/rtkpost/rtkpost.cbproj
+++ /dev/null
@@ -1,427 +0,0 @@
-
-
- {E5CEB647-183C-40E4-9031-38756E3D2A91}
- CppVCLApplication
- rtkpost.cpp
- True
- Release
- VCL
- 18.6
- Win32
- 1
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- false
- false
- false
- false
- false
- false
- false
- rtkpost
- ..\appcmn\;..\..\src\;$(IncludePath)
- ..\appcmn\;..\..\src\;$(ILINK_LibraryPath)
- false
- false
- None
- false
- rtkpost_Icon.ico
- false
- Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
- 1041
- ..\..\..\rtklib_extlex;..\..\extion;..\..\extlex;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\extion;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;$(DCC_ObjPath)
- vclx.bpi;vcl.bpi;$(PackageImports)
- Windows
- ..\..\..\rtklib_extlex;..\..\extion;..\..\extlex;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
- false
- true
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\extion;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\extion;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\..\src;..\src;$(ILINK_ObjectSearchPath)
- false
- rtl.lib;vcl.lib;vclx.lib
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\extion;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\extion;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;$(DCC_ResourcePath)
- JPHNE
-
-
- true
- exe
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENACMP;ENAIRN;NFREQ=3;$(BCC_Defines)
- -tWM -AT -xp
- D:\proj\rtklib\lib\iers\;$(ILINK_LibraryPath)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- $(BDSINCLUDE)\windows\vcl;$(IncludePath)
- true
- 1033
- $(BDS)\bin\default_app.manifest
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENACMP;NFREQ=3;$(BCC_Defines)
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- None
- true
- true
- true
- true
- false
- -$O+
- debug_build
- None
- $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
-
-
- true
- -tWM -AT -xp -r
- _Debug;$(BCC_Defines);$(BCC_Defines)
- Debug_Build
- true
- 1033
- $(BDS)\bin\default_app.manifest
- rtl.lib;vcl.lib;vclx.lib
- Debug
-
-
- _Debug;$(BCC_Defines);$(BCC_Defines)
-
-
- true
- true
- release_build
- true
- $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
-
-
- true
- rtl.lib;vcl.lib;vclx.lib
- $(BDS)\bin\default_app.manifest
- false
- true
- Release_Build
- false
- false
- None
- 1033
- true
- Debug
-
-
- false
-
-
-
- 3
-
- ..\appcmn\aboutdlg.h
- 19
-
-
- 6
-
- ..\appcmn\confdlg.h
- 18
-
-
- 27
-
- ..\appcmn\keydlg.h
- 11
-
-
-
- ..\appcmn\maskoptdlg.h
- 36
-
-
- 4
-
- ..\appcmn\refdlg.h
- 16
-
-
- 5
-
- ..\appcmn\timedlg.h
- 17
-
-
- 26
-
- ..\appcmn\viewer.h
- 14
-
-
-
- ..\appcmn\vieweropt.h
- 15
-
-
-
- extopt.h
- 34
-
-
- 3
-
- kmzconv.h
- 19
-
-
- 22
-
- postmain.h
- 2
-
-
- 25
-
- postopt.h
- 13
-
-
- -1
- 0
-
-
-
- -1
- 1
-
-
- 15
-
-
- 16
-
-
- 17
-
-
- 18
-
-
- 19
-
-
- 20
-
-
- 21
-
-
- 22
-
-
- 23
-
-
- 24
-
-
- 25
-
-
- 26
-
-
- 27
-
-
- 28
-
-
- 29
-
-
- 40
-
-
- 30
-
-
- 31
-
-
- 32
-
-
- 33
-
-
- 34
-
-
- 35
-
-
- 36
-
-
- 37
-
-
- 38
-
-
- 39
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
-
- CPlusPlusBuilder.Personality.12
- CppVCLApplication
-
-
-
- False
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1041
- 932
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
-
- False
-
- False
-
- True
- False
-
-
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
-
-
- False
- True
- True
- False
-
-
- rtkpost.cpp
-
-
-
- True
- False
-
-
- 12
-
-
-
-
diff --git a/app/rtkpost/rtkpost.cbproj.local b/app/rtkpost/rtkpost.cbproj.local
deleted file mode 100644
index d1176a739..000000000
--- a/app/rtkpost/rtkpost.cbproj.local
+++ /dev/null
@@ -1,156 +0,0 @@
-
-
-
- 2012/12/27 05:32:09.000.765,D:\proj\rtklib\app\rtkpost\Unit1.h=D:\proj\rtklib\app\rtkpost\maskoptdlg.h
- 2012/12/27 05:32:09.000.765,D:\proj\rtklib\app\rtkpost\Unit1.cpp=D:\proj\rtklib\app\rtkpost\maskoptdlg.cpp
- 2012/12/27 05:32:09.000.765,D:\proj\rtklib\app\rtkpost\Unit1.dfm=D:\proj\rtklib\app\rtkpost\maskoptdlg.dfm
- 2015/05/25 15:31:51.000.079,=D:\proj\RTKLIB\src\tides.c
- 2015/05/25 15:31:51.000.077,=D:\proj\RTKLIB\src\ppp_corr.c
- 2016/06/12 08:58:27.000.693,=D:\proj\RTKLIB\src\convgpx.c
- 2016/06/19 11:31:22.000.307,D:\proj\RTKLIB\src\ionex.c=
- 2016/06/19 11:31:22.000.287,D:\proj\RTKLIB\src\convgpx.c=
- 2016/06/19 11:31:22.000.317,D:\proj\RTKLIB\src\options.c=
- 2016/06/19 11:31:22.000.291,D:\proj\RTKLIB\src\convkml.c=
- 2016/06/19 11:31:22.000.322,D:\proj\RTKLIB\src\pntpos.c=
- 2016/06/19 11:31:22.000.312,D:\proj\RTKLIB\src\lambda.c=
- 2016/06/19 11:31:22.000.302,D:\proj\RTKLIB\src\geoid.c=
- 2016/06/19 11:31:22.000.337,D:\proj\RTKLIB\src\ppp_ar.c=
- 2016/06/19 11:31:22.000.326,D:\proj\RTKLIB\src\postpos.c=
- 2016/06/19 11:31:22.000.332,D:\proj\RTKLIB\src\ppp.c=
- 2016/06/19 11:31:22.000.296,D:\proj\RTKLIB\src\ephemeris.c=
- 2016/06/19 11:31:28.000.302,D:\proj\RTKLIB\src\rinex.c=
- 2016/06/19 11:31:28.000.323,D:\proj\RTKLIB\src\rtcm3e.c=
- 2016/06/19 11:31:28.000.333,D:\proj\RTKLIB\src\rtkpos.c=
- 2016/06/19 11:31:28.000.318,D:\proj\RTKLIB\src\rtcm3.c=
- 2016/06/19 11:31:28.000.297,D:\proj\RTKLIB\src\qzslex.c=
- 2016/06/19 11:31:28.000.308,D:\proj\RTKLIB\src\rtcm.c=
- 2016/06/19 11:31:28.000.348,D:\proj\RTKLIB\src\tides.c=
- 2016/06/19 11:31:28.000.288,D:\proj\RTKLIB\src\ppp_corr.c=
- 2016/06/19 11:31:28.000.313,D:\proj\RTKLIB\src\rtcm2.c=
- 2016/06/19 11:31:28.000.343,D:\proj\RTKLIB\src\solution.c=
- 2016/06/19 11:31:28.000.328,D:\proj\RTKLIB\src\rtkcmn.c=
- 2016/06/19 11:31:28.000.292,D:\proj\RTKLIB\src\preceph.c=
- 2016/06/19 11:31:28.000.338,D:\proj\RTKLIB\src\sbas.c=
- 2016/06/19 11:32:01.000.635,=D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.lib
- 2016/06/19 11:36:29.000.335,D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.lib=
- 2016/06/19 11:36:50.000.190,=D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.lib
- 2016/06/19 11:37:08.000.519,D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.lib=
- 2016/06/19 11:37:45.000.414,=D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.dll
- 2016/06/19 11:38:12.000.379,=D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.lib
- 2016/06/19 11:41:16.000.508,D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.dll=
- 2016/06/19 11:41:18.000.860,D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.lib=
- 2016/06/19 11:41:36.000.728,=D:\proj\RTKLIB\app\rtklib_dll\Win32\Debug\rtklib.dll
- 2016/06/19 11:48:43.000.665,D:\proj\RTKLIB\app\rtklib_dll\Win32\Debug\rtklib.dll=
- 2016/06/19 11:49:01.000.802,=D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.lib
- 2016/06/19 16:43:25.000.895,D:\proj\RTKLIB\app\rtklib_dll\Win32\Release\rtklib.lib=
- 2016/06/19 16:44:39.000.395,=D:\proj\RTKLIB\src\solution.c
- 2016/06/19 16:44:39.000.294,=D:\proj\RTKLIB\src\convrnx.c
- 2016/06/19 16:44:39.000.368,=D:\proj\RTKLIB\src\rtcm3.c
- 2016/06/19 16:44:39.000.362,=D:\proj\RTKLIB\src\rtcm2.c
- 2016/06/19 16:44:39.000.291,=D:\proj\RTKLIB\src\convkml.c
- 2016/06/19 16:44:39.000.375,=D:\proj\RTKLIB\src\rtcm3e.c
- 2016/06/19 16:44:39.000.343,=D:\proj\RTKLIB\src\pntpos.c
- 2016/06/19 16:44:39.000.361,=D:\proj\RTKLIB\src\rtcm.c
- 2016/06/19 16:44:39.000.297,=D:\proj\RTKLIB\src\ephemeris.c
- 2016/06/19 16:44:39.000.290,=D:\proj\RTKLIB\src\convgpx.c
- 2016/06/19 16:44:39.000.388,=D:\proj\RTKLIB\src\rtkpos.c
- 2016/06/19 16:44:39.000.353,=D:\proj\RTKLIB\src\preceph.c
- 2016/06/19 16:44:39.000.349,=D:\proj\RTKLIB\src\ppp.c
- 2016/06/19 16:44:39.000.351,=D:\proj\RTKLIB\src\ppp_corr.c
- 2016/06/19 16:44:39.000.337,=D:\proj\RTKLIB\src\ionex.c
- 2016/06/19 16:44:39.000.346,=D:\proj\RTKLIB\src\postpos.c
- 2016/06/19 16:44:39.000.341,=D:\proj\RTKLIB\src\options.c
- 2016/06/19 16:44:39.000.397,=D:\proj\RTKLIB\src\tides.c
- 2016/06/19 16:44:39.000.359,=D:\proj\RTKLIB\src\rinex.c
- 2016/06/19 16:44:39.000.383,=D:\proj\RTKLIB\src\rtkcmn.c
- 2016/06/19 16:44:39.000.339,=D:\proj\RTKLIB\src\lambda.c
- 2016/06/19 16:44:39.000.295,=D:\proj\RTKLIB\src\datum.c
- 2016/06/19 16:44:39.000.350,=D:\proj\RTKLIB\src\ppp_ar.c
- 2016/06/19 16:44:39.000.391,=D:\proj\RTKLIB\src\sbas.c
- 2016/06/19 16:44:39.000.336,=D:\proj\RTKLIB\src\geoid.c
- 2016/06/19 16:45:02.000.521,=D:\proj\RTKLIB\src\qzslex.c
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/rtkpost/rtkpost.res b/app/rtkpost/rtkpost.res
deleted file mode 100644
index 977c58616..000000000
Binary files a/app/rtkpost/rtkpost.res and /dev/null differ
diff --git a/app/rtkpost_mkl/clean.bat b/app/rtkpost_mkl/clean.bat
deleted file mode 100644
index 28a7f15c5..000000000
--- a/app/rtkpost_mkl/clean.bat
+++ /dev/null
@@ -1,16 +0,0 @@
-del Release_Build\*.obj
-del Release_Build\*.tds
-del Release_Build\*.exe
-del Release_Build\*.il*
-del Release_Build\*.map
-del Release_Build\*.ini
-del Release_Build\*.o
-del Release_Build\*.d
-del Debug_Build\*.obj
-del Debug_Build\*.tds
-del Debug_Build\*.exe
-del Debug_Build\*.il*
-del Debug_Build\*.map
-del Debug_Build\*.ini
-del Debug_Build\*.o
-del Debug_Build\*.d
diff --git a/app/rtkpost_mkl/install.bat b/app/rtkpost_mkl/install.bat
deleted file mode 100644
index 25a13832e..000000000
--- a/app/rtkpost_mkl/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\rtkpost_mkl.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkpost_mkl/rtkpost_mkl.cbproj b/app/rtkpost_mkl/rtkpost_mkl.cbproj
deleted file mode 100644
index 34f592417..000000000
--- a/app/rtkpost_mkl/rtkpost_mkl.cbproj
+++ /dev/null
@@ -1,422 +0,0 @@
-
-
- {BE3A444D-E7AD-453B-A183-C4E8E69B9544}
- CppVCLApplication
- rtkpost_mkl.cpp
- True
- Release
- VCL
- 18.6
- Win32
- 1
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- false
- false
- false
- false
- false
- false
- false
- rtkpost_mkl
- ..\rtkpost\;..\appcmn\;..\..\src\;$(ILINK_LibraryPath)
- ..\rtkpost\;..\appcmn\;..\..\src\;$(IncludePath)
- false
- true
- None
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
- Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- rtkpost_mkl_Icon.ico
- 1041
- None
- ..\rtkpost;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\extion;..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\rtkpost;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;$(DCC_ObjPath)
- vclx.bpi;vcl.bpi;$(PackageImports)
- Windows
- ..\rtkpost;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
- false
- true
- ..\..\extion;..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\rtkpost;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\extion;..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\rtkpost;..\appcmn;..\..\src\rcv;..\..\src;..\src;$(ILINK_ObjectSearchPath)
- false
- rtl.lib;vcl.lib;vclx.lib
- ..\..\extion;..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\rtkpost;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\extion;..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\rtkpost;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;$(DCC_ResourcePath)
- JPHNE
-
-
- true
- exe
- _RTLDLL;WIN32;TRACE;MKL;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;MKL;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- _RTLDLL;WIN32;TRACE;MKL;ENAGLO;ENAQZS;ENAGAL;ENACMP;ENAIRN;NFREQ=3;$(BCC_Defines)
- -tWM -AT -xp
- ..\..\lib\omf;$(ILINK_LibraryPath)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- $(BDSINCLUDE)\windows\vcl;$(IncludePath)
- 1033
- $(BDS)\bin\default_app.manifest
- true
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- _RTLDLL;WIN32;TRACE;MKL;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- _RTLDLL;WIN32;TRACE;MKL;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;MKL;ENAGLO;ENAQZS;ENAGAL;ENACMP;NFREQ=3;NEXOBS=3;$(BCC_Defines)
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- true
- true
- true
- -$O+
- Debug_Build
- None
- false
- $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
-
-
- true
- -tWM -AT -xp -r
- $(BDS)\bin\default_app.manifest
- None
- true
- rtl.lib;vcl.lib;vclx.lib
- true
- false
- 1033
- false
-
-
- true
- Release_Build
- $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
-
-
- true
- false
- rtl.lib;vcl.lib;vclx.lib
- false
- true
- $(BDS)\bin\default_app.manifest
- 1033
- Debug
-
-
-
- 28
-
- ..\appcmn\aboutdlg.h
- 16
-
-
- 29
-
- ..\appcmn\confdlg.h
- 15
-
-
- 29
-
- ..\appcmn\keydlg.h
- 15
-
-
-
- ..\appcmn\maskoptdlg.h
- 37
-
-
- 27
-
- ..\appcmn\refdlg.h
- 13
-
-
- 26
-
- ..\appcmn\timedlg.h
- 14
-
-
- 33
-
- ..\appcmn\viewer.h
- 11
-
-
- 32
-
- ..\appcmn\vieweropt.h
- 12
-
-
-
- dfm
- ..\rtkpost\extopt.h
- 35
-
-
- 4
-
- ..\rtkpost\kmzconv.h
- 18
-
-
- 7
-
- ..\rtkpost\postmain.h
- 19
-
-
- 6
-
- ..\rtkpost\postopt.h
- 20
-
-
- -1
- 0
-
-
- -1
- 1
-
-
- 32
- true
-
-
- 33
- true
-
-
- 39
-
-
- 7
- 19
-
-
- 24
- 2
-
-
- 24
- 2
-
-
- 26
- 14
-
-
- 3
- 23
-
-
- 21
- 1
-
-
- 3
- 23
-
-
- 4
- 18
-
-
- 22
- 0
-
-
- 33
- 11
-
-
- 37
-
-
- 5
- 17
-
-
- 38
-
-
- 8
- 25
-
-
- 8
- 25
-
-
- 30
- 10
-
-
- 9
- 31
-
-
- 36
-
-
- 5
- 17
-
-
- 6
- 20
-
-
- 30
- 10
-
-
- 9
- 31
-
-
- 38
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
-
- CPlusPlusBuilder.Personality.12
- CppVCLApplication
-
-
-
- False
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1041
- 932
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
-
- False
-
- False
-
- True
- False
-
-
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
-
-
- False
- True
- True
- False
-
-
- rtkpost_mkl.cpp
-
-
-
- True
- False
-
-
- 12
-
-
-
-
diff --git a/app/rtkpost_mkl/rtkpost_mkl.cbproj.local b/app/rtkpost_mkl/rtkpost_mkl.cbproj.local
deleted file mode 100644
index b17eb22c9..000000000
--- a/app/rtkpost_mkl/rtkpost_mkl.cbproj.local
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
- 2012/10/28 01:18:46.000.372,D:\proj\rtklib\app\rtkpost\extopt.dfm=D:\proj\rtklib\app\rtkpost_mkl\Unit1.dfm
- 2012/10/28 01:18:46.000.372,D:\proj\rtklib\app\rtkpost\extopt.h=D:\proj\rtklib\app\rtkpost_mkl\Unit1.h
- 2015/05/25 15:32:58.000.287,=D:\proj\RTKLIB\src\tides.c
- 2015/05/25 15:32:58.000.286,=D:\proj\RTKLIB\src\ppp_corr.c
- 2016/06/12 22:49:57.000.269,=D:\proj\RTKLIB\src\convgpx.c
-
-
diff --git a/app/rtkpost_mkl/rtkpost_mkl.cpp b/app/rtkpost_mkl/rtkpost_mkl.cpp
deleted file mode 100644
index f911fc791..000000000
--- a/app/rtkpost_mkl/rtkpost_mkl.cpp
+++ /dev/null
@@ -1,71 +0,0 @@
-//---------------------------------------------------------------------------
-
-#include
-#pragma hdrstop
-//---------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-USEFORM("..\appcmn\viewer.cpp", TextViewer);
-USEFORM("..\appcmn\timedlg.cpp", TimeDialog);
-USEFORM("..\rtkpost\extopt.cpp", ExtOptDialog);
-USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
-USEFORM("..\appcmn\refdlg.cpp", RefDialog);
-USEFORM("..\appcmn\confdlg.cpp", ConfDialog);
-USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog);
-USEFORM("..\appcmn\maskoptdlg.cpp", MaskOptDialog);
-USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
-USEFORM("..\rtkpost\kmzconv.cpp", ConvDialog);
-USEFORM("..\rtkpost\postopt.cpp", OptDialog);
-USEFORM("..\rtkpost\postmain.cpp", MainForm);
-//---------------------------------------------------------------------------
-WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
-{
- try
- {
- Application->Initialize();
- Application->Title = "RTKPOST";
- Application->CreateForm(__classid(TMainForm), &MainForm);
- Application->CreateForm(__classid(TTextViewer), &TextViewer);
- Application->CreateForm(__classid(TViewerOptDialog), &ViewerOptDialog);
- Application->CreateForm(__classid(TRefDialog), &RefDialog);
- Application->CreateForm(__classid(TTimeDialog), &TimeDialog);
- Application->CreateForm(__classid(TConfDialog), &ConfDialog);
- Application->CreateForm(__classid(TAboutDialog), &AboutDialog);
- Application->CreateForm(__classid(TConvDialog), &ConvDialog);
- Application->CreateForm(__classid(TOptDialog), &OptDialog);
- Application->CreateForm(__classid(TKeyDialog), &KeyDialog);
- Application->CreateForm(__classid(TExtOptDialog), &ExtOptDialog);
- Application->CreateForm(__classid(TMaskOptDialog), &MaskOptDialog);
- Application->Run();
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- catch (...)
- {
- try
- {
- throw Exception("");
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- }
- return 0;
-}
-//---------------------------------------------------------------------------
diff --git a/app/rtkpost_mkl/rtkpost_mkl.res b/app/rtkpost_mkl/rtkpost_mkl.res
deleted file mode 100644
index 2af964e62..000000000
Binary files a/app/rtkpost_mkl/rtkpost_mkl.res and /dev/null differ
diff --git a/app/rtkpost_mkl/rtkpost_mkl_Icon.ico b/app/rtkpost_mkl/rtkpost_mkl_Icon.ico
deleted file mode 100644
index 951325057..000000000
Binary files a/app/rtkpost_mkl/rtkpost_mkl_Icon.ico and /dev/null differ
diff --git a/app/rtkpost_win64/clean.bat b/app/rtkpost_win64/clean.bat
deleted file mode 100644
index 28a7f15c5..000000000
--- a/app/rtkpost_win64/clean.bat
+++ /dev/null
@@ -1,16 +0,0 @@
-del Release_Build\*.obj
-del Release_Build\*.tds
-del Release_Build\*.exe
-del Release_Build\*.il*
-del Release_Build\*.map
-del Release_Build\*.ini
-del Release_Build\*.o
-del Release_Build\*.d
-del Debug_Build\*.obj
-del Debug_Build\*.tds
-del Debug_Build\*.exe
-del Debug_Build\*.il*
-del Debug_Build\*.map
-del Debug_Build\*.ini
-del Debug_Build\*.o
-del Debug_Build\*.d
diff --git a/app/rtkpost_win64/install.bat b/app/rtkpost_win64/install.bat
deleted file mode 100644
index d3e9d6065..000000000
--- a/app/rtkpost_win64/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\rtkpost_win64.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkpost_win64/rtkpost_win64.cbproj.local b/app/rtkpost_win64/rtkpost_win64.cbproj.local
deleted file mode 100644
index 0d363bbfe..000000000
--- a/app/rtkpost_win64/rtkpost_win64.cbproj.local
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- 2012/10/28 01:18:46.000.372,D:\proj\rtklib\app\rtkpost_mkl\Unit1.h=D:\proj\rtklib\app\rtkpost\extopt.h
- 2012/10/28 01:18:46.000.372,D:\proj\rtklib\app\rtkpost_mkl\Unit1.dfm=D:\proj\rtklib\app\rtkpost\extopt.dfm
- 2015/05/25 15:32:58.000.287,=D:\proj\RTKLIB\src\tides.c
- 2015/05/25 15:32:58.000.286,=D:\proj\RTKLIB\src\ppp_corr.c
- 2016/06/12 22:49:57.000.269,=D:\proj\RTKLIB\src\convgpx.c
- 2016/08/20 16:42:36.000.712,D:\proj\RTKLIB\app\rtkpost_win64\rtkpost_win64.cbproj=D:\proj\RTKLIB\app\rtkpost_win64\rtkpost_mkl.cbproj
- 2016/08/20 16:42:51.000.269,D:\proj\RTKLIB\lib\omf\mkl_lapack_omf.lib=
- 2016/08/20 16:42:51.000.324,D:\proj\RTKLIB\lib\omf\mkl_p4p_omf.lib=
-
-
diff --git a/app/rtkpost_win64/rtkpost_win64.cpp b/app/rtkpost_win64/rtkpost_win64.cpp
deleted file mode 100644
index bd6641801..000000000
--- a/app/rtkpost_win64/rtkpost_win64.cpp
+++ /dev/null
@@ -1,71 +0,0 @@
-//---------------------------------------------------------------------------
-
-#include
-#pragma hdrstop
-//---------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-USEFORM("..\appcmn\viewer.cpp", TextViewer);
-USEFORM("..\appcmn\timedlg.cpp", TimeDialog);
-USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
-USEFORM("..\rtkpost\kmzconv.cpp", ConvDialog);
-USEFORM("..\rtkpost\extopt.cpp", ExtOptDialog);
-USEFORM("..\appcmn\confdlg.cpp", ConfDialog);
-USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog);
-USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
-USEFORM("..\appcmn\refdlg.cpp", RefDialog);
-USEFORM("..\appcmn\maskoptdlg.cpp", MaskOptDialog);
-USEFORM("..\rtkpost\postopt.cpp", OptDialog);
-USEFORM("..\rtkpost\postmain.cpp", MainForm);
-//---------------------------------------------------------------------------
-int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
-{
- try
- {
- Application->Initialize();
- Application->Title = "RTKPOST";
- Application->CreateForm(__classid(TMainForm), &MainForm);
- Application->CreateForm(__classid(TTextViewer), &TextViewer);
- Application->CreateForm(__classid(TViewerOptDialog), &ViewerOptDialog);
- Application->CreateForm(__classid(TRefDialog), &RefDialog);
- Application->CreateForm(__classid(TTimeDialog), &TimeDialog);
- Application->CreateForm(__classid(TConfDialog), &ConfDialog);
- Application->CreateForm(__classid(TAboutDialog), &AboutDialog);
- Application->CreateForm(__classid(TConvDialog), &ConvDialog);
- Application->CreateForm(__classid(TOptDialog), &OptDialog);
- Application->CreateForm(__classid(TKeyDialog), &KeyDialog);
- Application->CreateForm(__classid(TExtOptDialog), &ExtOptDialog);
- Application->CreateForm(__classid(TMaskOptDialog), &MaskOptDialog);
- Application->Run();
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- catch (...)
- {
- try
- {
- throw Exception("");
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- }
- return 0;
-}
-//---------------------------------------------------------------------------
diff --git a/app/rtkpost_win64/rtkpost_win64.res b/app/rtkpost_win64/rtkpost_win64.res
deleted file mode 100644
index 5d06830b1..000000000
Binary files a/app/rtkpost_win64/rtkpost_win64.res and /dev/null differ
diff --git a/app/rtkpost_win64/rtkpost_win64_Icon.ico b/app/rtkpost_win64/rtkpost_win64_Icon.ico
deleted file mode 100644
index 951325057..000000000
Binary files a/app/rtkpost_win64/rtkpost_win64_Icon.ico and /dev/null differ
diff --git a/app/rtkvideo/clean.bat b/app/rtkvideo/clean.bat
deleted file mode 100644
index cacde7755..000000000
--- a/app/rtkvideo/clean.bat
+++ /dev/null
@@ -1,16 +0,0 @@
-del Win32\Release\*.obj
-del Win32\Release\*.tds
-del Win32\Release\*.exe
-del Win32\Release\*.il*
-del Win32\Release\*.map
-del Win32\Release\*.ini
-del Win32\Release\*.o
-del Win32\Release\*.d
-del Win32\Debug\*.obj
-del Win32\Debug\*.tds
-del Win32\Debug\*.exe
-del Win32\Debug\*.il*
-del Win32\Debug\*.map
-del Win32\Debug\*.ini
-del Win32\Debug\*.o
-del Win32\Debug\*.d
diff --git a/app/rtkvideo/install.bat b/app/rtkvideo/install.bat
deleted file mode 100644
index 040426743..000000000
--- a/app/rtkvideo/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Win32\Release\rtkvideo.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkvideo/rtkvideo.cbproj b/app/rtkvideo/rtkvideo.cbproj
deleted file mode 100644
index ad5b822c0..000000000
--- a/app/rtkvideo/rtkvideo.cbproj
+++ /dev/null
@@ -1,1167 +0,0 @@
-
-
- {284EF51A-2EC2-4D7F-BEC9-FE9B7CBDD2EF}
- 18.6
- FMX
- rtkvideo.cpp
- True
- Release
- Win32
- 3
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- None
- WIN32;SVR_REUSEADDR;TRACE;$(BCC_Defines)
- false
- false
- true
- ..\..\src\rcv\;..\..\src\;$(ILINK_LibraryPath)
- ..\..\src\rcv\;..\..\src\;$(IncludePath)
- true
- true
- true
- true
- $(BDS)\bin\cbuilder_PROJECTICON.ico
- true
- true
- FmxGuiApplication
- $(BDS)\bin\cbuilder_PROJECTICNS.icns
- true
- true
- true
- <_TCHARMapping>char
- rtl.lib;fmx.lib
- true
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- rtkvideo
- JPHNE
- true
- true
- .\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- true
- true
- $(BDSLIB)\$(PLATFORM)\release\$(LANGDIR);$(ILINK_TranslatedLibraryPath)
- 1041
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
-
-
- $(BDSINCLUDE)\windows\fmx;$(IncludePath)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- true
- adortl;appanalytics;bcbie;bcbsmp;bindcomp;bindcompdbx;bindcompfmx;bindcompvcl;bindengine;CloudService;CustomIPTransport;dbexpress;dbrtl;dbxcds;DbxClientDriver;DbxCommonDriver;DBXInterBaseDriver;DBXMySQLDriver;DBXSqliteDriver;dsnap;dsnapcon;dsnapxml;FireDAC;FireDACADSDriver;FireDACCommon;FireDACCommonDriver;FireDACCommonODBC;FireDACIBDriver;FireDACMSAccDriver;FireDACMySQLDriver;FireDACPgDriver;FireDACSqliteDriver;fmx;fmxase;fmxdae;fmxFireDAC;fmxobj;IndyCore;IndyIPClient;IndyIPCommon;IndyIPServer;IndyProtocols;IndySystem;inet;inetdb;inetdbxpress;RESTBackendComponents;RESTComponents;rtl;soapmidas;soaprtl;soapserver;svn;tethering;vcl;vclactnband;vcldb;vcldsnap;vclFireDAC;vclie;vclimg;VCLRESTComponents;VclSmp;vcltouch;vclwinx;vclx;xmlrtl;$(PackageImports)
- 1033
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
- $(BDS)\bin\default_app.manifest
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- $(BDSINCLUDE)\windows\fmx;$(IncludePath)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
- true
- adortl;appanalytics;bindcomp;bindcompdbx;bindcompfmx;bindcompvcl;bindengine;CloudService;CustomIPTransport;dbexpress;dbrtl;dbxcds;DbxClientDriver;DbxCommonDriver;DBXInterBaseDriver;DBXMySQLDriver;DBXSqliteDriver;dsnap;dsnapcon;dsnapxml;FireDAC;FireDACADSDriver;FireDACCommon;FireDACCommonDriver;FireDACCommonODBC;FireDACIBDriver;FireDACMSAccDriver;FireDACMySQLDriver;FireDACPgDriver;FireDACSqliteDriver;fmx;fmxase;fmxdae;fmxFireDAC;fmxobj;IndyCore;IndyIPClient;IndyIPCommon;IndyIPServer;IndyProtocols;IndySystem;inet;inetdb;inetdbxpress;RESTBackendComponents;RESTComponents;rtl;soapmidas;soaprtl;soapserver;tethering;vcl;vclactnband;vcldb;vcldsnap;vclFireDAC;vclie;vclimg;VCLRESTComponents;VclSmp;vcltouch;vclwinx;vclx;xmlrtl;$(PackageImports)
- 1033
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
- $(BDS)\bin\default_app.manifest
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- false
- true
- false
- true
- _DEBUG;$(Defines)
- false
- None
- DEBUG
- true
- true
- true
- true
- Full
- true
- true
- true
- true
- true
- $(BDSLIB)\$(PLATFORM)\debug;$(ILINK_LibraryPath)
- $(BDSLIB)\$(PLATFORM)\debug\$(LANGDIR);$(ILINK_TranslatedLibraryPath)
-
-
- true
- 1033
- rtl.bpi;fmx.bpi
- true
- Debug
- PerMonitor
-
-
- rtl.bpi;fmx.bpi
- true
- Debug
- PerMonitor
-
-
- NDEBUG;$(Defines)
- None
-
-
- false
- ..\icon\rtk10.ico
- false
- true
- rtl.lib;fmx.lib
- false
- 1033
- true
- Debug
-
-
- rtl.bpi;fmx.bpi
- true
- Debug
- PerMonitor
-
-
-
- 0
-
-
-
- fmx
- videomain.h
- 20
-
-
-
- fmx
- videoopt.h
- 21
-
-
- 22
-
-
- 19
-
-
- 6
-
-
- 7
-
-
- 8
-
-
- 9
-
-
- 10
-
-
- 11
-
-
- 12
-
-
- 13
-
-
- 14
-
-
- 15
-
-
- 16
-
-
- 17
-
-
- 22
-
-
- 18
-
-
- 4
-
-
- 20
-
-
- 21
-
-
- 5
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- CPlusPlusBuilder.Personality.12
- FmxGuiApplication
-
-
-
- rtkvideo.cpp
-
-
- False
- True
- True
- False
-
-
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
-
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- rtkvideo.exe
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- rtkvideo.exe
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- rtkvideo.tds
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- Contents\MacOS
- 1
- .framework
-
-
- Contents\MacOS
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- Contents
- 1
-
-
- Contents
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
- True
-
-
- 12
-
-
-
-
-
diff --git a/app/rtkvideo/rtkvideo.cpp b/app/rtkvideo/rtkvideo.cpp
deleted file mode 100644
index 7cb6b6afc..000000000
--- a/app/rtkvideo/rtkvideo.cpp
+++ /dev/null
@@ -1,39 +0,0 @@
-//---------------------------------------------------------------------------
-
-#include
-#ifdef _WIN32
-#include
-#endif
-#pragma hdrstop
-#include
-//---------------------------------------------------------------------------
-USEFORM("videoopt.cpp", VideoOptDlg);
-USEFORM("videomain.cpp", MainForm);
-//---------------------------------------------------------------------------
-extern "C" int FMXmain()
-{
- try
- {
- Application->Initialize();
- Application->CreateForm(__classid(TMainForm), &MainForm);
- Application->CreateForm(__classid(TVideoOptDlg), &VideoOptDlg);
- Application->Run();
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- catch (...)
- {
- try
- {
- throw Exception("");
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- }
- return 0;
-}
-//---------------------------------------------------------------------------
diff --git a/app/rtkvideo/rtkvideo.res b/app/rtkvideo/rtkvideo.res
deleted file mode 100644
index dc1c48d9b..000000000
Binary files a/app/rtkvideo/rtkvideo.res and /dev/null differ
diff --git a/app/rtkvideo/videomain.cpp b/app/rtkvideo/videomain.cpp
deleted file mode 100644
index d0b30cd24..000000000
--- a/app/rtkvideo/videomain.cpp
+++ /dev/null
@@ -1,418 +0,0 @@
-//---------------------------------------------------------------------------
-// rtkvideo : video capture
-//
-// Copyright (C) 2016 by T.TAKASU, All rights reserved.
-//
-// version : $Revision:$ $Date:$
-// history : 2016/09/25 1.0 new
-//---------------------------------------------------------------------------
-
-#include
-#pragma hdrstop
-
-#include "videomain.h"
-#include "videoopt.h"
-
-#define PRGNAME "RTKVIDEO"
-#define INI_FILE "rtkvideo.ini"
-#define TRACE_FILE "rtkvideo.trace"
-
-#define MIN_WINDOW_WIDTH 320
-#define MIN_WINDOW_HEIGHT 240
-#define STR_BUF_SIZE 4096000
-#define DEFAULT_TCP_PORT 10033
-#define DEFAULT_CAP_WIDTH 500
-#define DEFAULT_CAP_HEIGHT 500
-#define DEFAULT_CODEC_QUALITY 90
-
-#define MIN(x,y) ((x)<(y)?(x):(y))
-
-//---------------------------------------------------------------------------
-#pragma package(smart_init)
-#pragma resource "*.fmx"
-TMainForm *MainForm;
-
-//---------------------------------------------------------------------------
-__fastcall TStreamWriterThread::TStreamWriterThread(TMainForm *parent, TBitmap *bitmap)
-{
- Parent = parent;
- Bitmap = bitmap;
-}
-//---------------------------------------------------------------------------
-__fastcall TStreamWriterThread::~TStreamWriterThread()
-{
-}
-//---------------------------------------------------------------------------
-void __fastcall TStreamWriterThread::Execute(void)
-{
- TBitmapCodecManager *codec = new TBitmapCodecManager();
- TBitmapSurface *surf = new TBitmapSurface;
- TMemoryStream *buff = new TMemoryStream;
- TBitmapCodecSaveParams *params = new TBitmapCodecSaveParams;
-
- params->Quality = Parent->CodecQuality;
-
- while (!Terminated) {
-
- lock(&Parent->Lock); ////
-
- if (Parent->FrameCount > Parent->SentFrameCount) {
- surf->Assign(Bitmap);
- Parent->SentFrameCount = Parent->FrameCount;
-
- unlock(&Parent->Lock); ////
-
- buff->Clear();
- codec->SaveToStream(buff, surf, L".jpg", params);
-
- for (int i = 0; i < 2; i++) {
- strwrite(Parent->OutputStream+i, (unsigned char *)buff->Memory,
- buff->Size);
- }
- }
- else {
- unlock(&Parent->Lock); ////
- }
- sleepms(15);
- }
- delete codec;
- delete surf;
- delete buff;
- delete params;
-}
-//---------------------------------------------------------------------------
-__fastcall TMainForm::TMainForm(TComponent* Owner)
- : TForm(Owner)
-{
- Device = NULL;
- StartTime.time = 0;
- CaptureTime.time = 0;
- StartTick = CaptureTick = 0;
- FrameWidth = FrameHeight = 0;
- FrameCount = FrameCount0 = SentFrameCount = DispFrameCount = TimerCount = 0;
- FrameRate = 0;
- CaptionPos = 2;
- CaptionSize = 24;
- CaptionColor = claRed;
- DevName = L"";
- OutFile = L"";
- Profile = CapSizeEna = 0;
- TcpPortEna = OutFileEna = OutTimeTag = FileSwap = 0;
- CapWidth = DEFAULT_CAP_WIDTH;
- CapHeight = DEFAULT_CAP_HEIGHT;
- TcpPortNo = DEFAULT_TCP_PORT;
- CodecQuality = DEFAULT_CODEC_QUALITY;
- initlock(&Lock);
-#if 0
- traceopen(TRACE_FILE);
- tracelevel(2);
-#endif
-}
-//---------------------------------------------------------------------------
-__fastcall TMainForm::~TMainForm()
-{
- traceclose();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::FormShow(TObject *Sender)
-{
- static const int str_opt[8] = {0, 0, 0, STR_BUF_SIZE, 0};
-
- LoadOptions();
-
- TCaptureDeviceList list =
- TCaptureDeviceManager::Current->GetDevicesByMediaType(TMediaType::Video);
-
- if (list->Count > 0) {
- DevName = list->Items[0]->Name;
- }
- strsetopt(str_opt);
- for (int i = 0; i < 2; i++) {
- strinit(OutputStream+i);
- }
- Caption = PRGNAME;
- Caption = Caption+" ver."+VER_RTKLIB+" "+PATCH_LEVEL;
-
- Timer1->Enabled = true;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
-{
- if (Device && Device->State == TCaptureDeviceState::Capturing) {
- Device->StopCapture();
- }
- SaveOptions();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnStartClick(TObject *Sender)
-{
- if (!CaptureStart()) return;
-
- BtnStart->Enabled = false;
- BtnStop ->Enabled = true;
- BtnOpt ->Enabled = false;
- BtnExit ->Enabled = false;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnStopClick(TObject *Sender)
-{
- CaptureStop();
-
- BtnStart->Enabled = true;
- BtnStop ->Enabled = false;
- BtnOpt ->Enabled = true;
- BtnExit ->Enabled = true;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnOptClick(TObject *Sender)
-{
- (void)VideoOptDlg->ShowModal();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnExitClick(TObject *Sender)
-{
- Close();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::FormResize(TObject *Sender)
-{
- TButton *btn[] = {
- BtnStart, BtnStop, BtnOpt, BtnExit
- };
- if (Width < MIN_WINDOW_WIDTH ) Width = MIN_WINDOW_WIDTH;
- if (Height < MIN_WINDOW_HEIGHT) Height = MIN_WINDOW_HEIGHT;
-
- for (int i = 0; i < 4; i++) {
- btn[i]->Width = Panel1->Width/4-4;
- btn[i]->Position->X = i*Panel1->Width/4+2;
- }
- Message1->Position->X = 23;
- Message2->Position->X = 23;
- Message3->Position->X = Panel2->Width-Message3->Width-10;
- Message4->Position->X = 10;
- Message5->Position->X = Panel2->Width-Message5->Width-10;
- Ind1 ->Position->Y = Panel2->Height-35;
- Ind2 ->Position->Y = Panel2->Height-19;
- Message1->Position->Y = Panel2->Height-38;
- Message2->Position->Y = Panel2->Height-22;
- Message3->Position->Y = Panel2->Height-22;
- Message4->Position->Y = 8;
- Message5->Position->Y = 8;
-}
-//---------------------------------------------------------------------------
-int __fastcall TMainForm::CaptureStart(void)
-{
- static const char *path_swap[] = {
- "", "::S=0.05", "::S=0.1", "::S=0.25", "::S=0.5", "::S=1", "::S=2"
- };
- char path[1024];
- int retry;
-
- Device = dynamic_cast
- (TCaptureDeviceManager::Current->GetDevicesByName(DevName));
-
- if (!Device) return 0;
-
- DynamicArray settings =
- Device->GetAvailableCaptureSettings(NULL);
-
- if (Profile < 0 || Profile >= settings.Length) {
- return 0;
- }
- if (!Device->SetCaptureSetting(settings[Profile])) {
- return 0;
- }
- FrameWidth = settings[Profile].Width;
- FrameHeight = settings[Profile].Height;
- CapImage->Bitmap->SetSize(FrameWidth, FrameHeight);
-
- if (TcpPortEna) {
- sprintf(path, ":%d", TcpPortNo);
- if (!stropen(OutputStream, STR_TCPSVR, STR_MODE_RW, path)) {
- Message3->Text = "tcp port open error";
- }
- }
- if (OutFileEna && OutFile != "") {
- AnsiString outfile = OutFile;
- sprintf(path, "%s%s%s", outfile.c_str(), OutTimeTag ? "::T" : "",
- path_swap[FileSwap]);
- if (!stropen(OutputStream+1, STR_FILE, STR_MODE_W, path)) {
- Message3->Text = "file open error";
- }
- }
- StreamWriter = new TStreamWriterThread(this, CapImage->Bitmap);
-
- Device->OnSampleBufferReady = SampleBufferReady;
- Device->StartCapture();
- StartTime = utc2gpst(timeget());
- StartTick = tickget();
-
- return 1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::CaptureStop(void)
-{
- if (!Device) return;
-
- Device->StopCapture();
-
- sleepms(50);
-
- StreamWriter->Terminate();
- StreamWriter->WaitFor();
-
- for (int i = 0; i < 2; i++) {
- strclose(OutputStream+i);
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::SampleBufferReady(TObject *Sender, const TMediaTime ATime)
-{
- lock(&Lock); ////
-
- CaptureTime = utc2gpst(timeget());
- CaptureTick = tickget();
- FrameCount++;
- Device->SampleBufferToBitmap(CapImage->Bitmap, true);
- if (CaptionPos) {
- DrawCaption(CapImage->Bitmap);
- }
- unlock(&Lock); ////
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::DrawCaption(TBitmap *bitmap)
-{
- static const TTextAlign aligns[] = {
- TTextAlign::Leading, TTextAlign::Center, TTextAlign::Trailing
- };
- TCanvas *c = bitmap->Canvas;
- AnsiString str;
-
- str.sprintf("%s T=%.3f s TICK=%u FRM=%d", time_str(CaptureTime,3),
- (CaptureTick-StartTick)*1e-3, CaptureTick, FrameCount);
-
- c->BeginScene();
- c->Fill->Kind = TBrushKind::Solid;
- c->Fill->Color = CaptionColor;
- c->Font->Size = CaptionSize;
- c->FillText(TRect(8, 0, bitmap->Width-8, bitmap->Height-4), str, true,
- 1.0f, TFillTextFlags(), aligns[CaptionPos-1], TTextAlign::Trailing);
- c->EndScene();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::Timer1Timer(TObject *Sender)
-{
- static const TAlphaColor color[] = {
- claRed, 0xFF404040, claOrange, claGreen, claLime
- };
- gtime_t capture_time;
- unsigned int capture_tick;
- char msg[1024], str_msg[4096] = "", *p, *q;
- int outb = 0, outr = 0, frame_count;
-
- lock(&Lock); ////
-
- frame_count = SentFrameCount;
- capture_time = CaptureTime;
- capture_tick = CaptureTick;
- if (SentFrameCount > DispFrameCount) {
- DispImage->Bitmap->Assign(CapImage->Bitmap);
- DispFrameCount = SentFrameCount;
- }
- unlock(&Lock); ////
-
- if (++TimerCount*Timer1->Interval >= 1000) {
- FrameRate = frame_count-FrameCount0;
- FrameCount0 = frame_count;
- TimerCount = 0;
- }
- Ind1->Fill->Color = color[strstat(OutputStream, str_msg)+1];
- strsum(OutputStream, NULL, NULL, NULL, &outr);
- sprintf(msg, "%4.1fMbps %s", outr/1e6, str_msg);
- Message1->Text = msg;
-
- Ind2->Fill->Color = color[strstat(OutputStream+1, str_msg)+1];
- strsum(OutputStream+1, NULL, NULL, &outb, NULL);
- sprintf(msg, "%4.1fMB", outb/1e6);
- strstatx(OutputStream+1, str_msg);
- if ((p = strstr(str_msg, "openpath=")) && (q = strchr(p+9, '\n'))) {
- *q = '\0';
- strcat(msg, p+9);
- }
- Message2->Text = msg;
-
- sprintf(msg, "%d x %d FRM=%d FPS=%2d", FrameWidth, FrameHeight,
- frame_count, FrameRate);
- Message3->Text = msg;
-
- time2str(utc2gpst(timeget()), msg, 0);
- Message4->Text = msg;
-
- sprintf(msg, "T=%.3f s TICK=%u", (capture_tick-StartTick)*1e-3,
- capture_tick);
- Message5->Text = msg;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::LoadOptions(void)
-{
- FILE *fp;
- char buff[1080], sec[32] = "", str[1024] = "";
- int val;
-
- if (!(fp = fopen(INI_FILE, "r"))) return;
-
- while (fgets(buff, sizeof(buff), fp)) {
- if (*buff == '[') {
- sscanf(buff+1, "%31[^\]]", sec);
- }
- else if (!strcmp(sec, "videoopt")) {
- if (sscanf(buff, "captionpos = %d", &val)) CaptionPos = val;
- else if (sscanf(buff, "captionsize = %d", &val)) CaptionSize = val;
- else if (sscanf(buff, "captioncolor = %d", &val)) CaptionColor = val;
- else if (sscanf(buff, "tcpportena = %d", &val)) TcpPortEna = val;
- else if (sscanf(buff, "tcpportno = %d", &val)) TcpPortNo = val;
- else if (sscanf(buff, "outfileena = %d", &val)) OutFileEna = val;
- else if (sscanf(buff, "outfile = %1023[^\r\n]", str)) OutFile = str;
- else if (sscanf(buff, "outtimetag = %d", &val)) OutTimeTag = val;
- else if (sscanf(buff, "fileswap = %d", &val)) FileSwap = val;
- else if (sscanf(buff, "codecquality = %d\n", &val)) CodecQuality = val;
- }
- else if (!strcmp(sec, "window")) {
- if (sscanf(buff, "win_width = %d", &val)) Width = val;
- else if (sscanf(buff, "win_height = %d", &val)) Height = val;
- else if (sscanf(buff, "win_left = %d", &val)) Left = val;
- else if (sscanf(buff, "win_top = %d", &val)) Top = val;
- }
- }
- fclose(fp);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::SaveOptions(void)
-{
- AnsiString outfile = OutFile;
- FILE *fp;
-
- if (!(fp = fopen(INI_FILE, "w"))) return;
-
- fprintf(fp, "[videoopt]\n");
- fprintf(fp, "captionpos = %d\n", CaptionPos );
- fprintf(fp, "captionsize = %d\n", CaptionSize);
- fprintf(fp, "captioncolor = %d\n", CaptionColor);
- fprintf(fp, "capheight = %d\n", CapHeight );
- fprintf(fp, "tcpportena = %d\n", TcpPortEna );
- fprintf(fp, "tcpportno = %d\n", TcpPortNo );
- fprintf(fp, "outfileena = %d\n", OutFileEna );
- fprintf(fp, "outfile = %s\n", outfile.c_str());
- fprintf(fp, "outtimetag = %d\n", OutTimeTag );
- fprintf(fp, "fileswap = %d\n", FileSwap );
- fprintf(fp, "codecquality = %d\n", CodecQuality);
- fprintf(fp, "[window]\n");
- fprintf(fp, "win_width = %d\n", Width );
- fprintf(fp, "win_height = %d\n", Height );
- fprintf(fp, "win_left = %d\n", Left );
- fprintf(fp, "win_top = %d\n", Top );
-
- fclose(fp);
-}
-//---------------------------------------------------------------------------
-
diff --git a/app/rtkvideo/videomain.fmx b/app/rtkvideo/videomain.fmx
deleted file mode 100644
index 15ee56e7e..000000000
--- a/app/rtkvideo/videomain.fmx
+++ /dev/null
@@ -1,168 +0,0 @@
-object MainForm: TMainForm
- Left = 0
- Top = 0
- Caption = 'RTKVIDEO'
- ClientHeight = 320
- ClientWidth = 480
- Fill.Kind = Solid
- Position = Designed
- FormFactor.Width = 320
- FormFactor.Height = 480
- FormFactor.Devices = []
- OnClose = FormClose
- OnResize = FormResize
- OnShow = FormShow
- DesignerMasterStyle = 0
- object Timer1: TTimer
- Enabled = False
- Interval = 100
- OnTimer = Timer1Timer
- Left = 420
- Top = 228
- end
- object Panel1: TLayout
- Align = Bottom
- Position.Y = 286.000000000000000000
- Size.Width = 480.000000000000000000
- Size.Height = 34.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 1
- object BtnExit: TButton
- Position.X = 322.000000000000000000
- Position.Y = 2.000000000000000000
- Size.Width = 100.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 0
- Text = 'E&xit'
- OnClick = BtnExitClick
- end
- object BtnOpt: TButton
- Position.X = 218.000000000000000000
- Position.Y = 2.000000000000000000
- Size.Width = 100.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 1
- Text = '&Options...'
- OnClick = BtnOptClick
- end
- object BtnStart: TButton
- Position.X = 4.000000000000000000
- Position.Y = 2.000000000000000000
- Size.Width = 100.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 2
- Text = '&Start'
- OnClick = BtnStartClick
- end
- object BtnStop: TButton
- Enabled = False
- Position.X = 110.000000000000000000
- Position.Y = 2.000000000000000000
- Size.Width = 100.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 3
- Text = 'S&top'
- OnClick = BtnStopClick
- end
- end
- object Panel2: TRectangle
- Align = Client
- Fill.Color = xFF404040
- Size.Width = 480.000000000000000000
- Size.Height = 286.000000000000000000
- Size.PlatformDefault = False
- Stroke.Color = claWhite
- object DispImage: TImage
- MultiResBitmap = <
- item
- end>
- Align = Client
- MarginWrapMode = Center
- Margins.Left = 1.000000000000000000
- Margins.Top = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Margins.Bottom = 1.000000000000000000
- Size.Width = 478.000000000000000000
- Size.Height = 284.000000000000000000
- Size.PlatformDefault = False
- end
- end
- object Message1: TLabel
- StyledSettings = [Family, Size, Style]
- Position.X = 10.000000000000000000
- Position.Y = 18.000000000000000000
- Size.Width = 320.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- TextSettings.FontColor = claYellow
- end
- object Message2: TLabel
- StyledSettings = [Family, Size, Style]
- Position.X = 154.000000000000000000
- Position.Y = 18.000000000000000000
- Size.Width = 320.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- TextSettings.FontColor = claYellow
- end
- object Message3: TLabel
- StyledSettings = [Family, Size, Style]
- Position.X = 10.000000000000000000
- Position.Y = 7.000000000000000000
- Size.Width = 320.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- TextSettings.FontColor = claYellow
- TextSettings.HorzAlign = Trailing
- end
- object Message4: TLabel
- StyledSettings = [Family, Size, Style]
- Position.X = 10.000000000000000000
- Position.Y = 7.000000000000000000
- Size.Width = 320.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- TextSettings.FontColor = claYellow
- end
- object Message5: TLabel
- StyledSettings = [Family, Size, Style]
- Position.X = 12.000000000000000000
- Position.Y = 9.000000000000000000
- Size.Width = 320.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- TextSettings.FontColor = claYellow
- TextSettings.HorzAlign = Trailing
- end
- object Ind1: TRectangle
- Fill.Color = xFF404040
- Position.X = 10.000000000000000000
- Position.Y = 250.000000000000000000
- Size.Width = 8.000000000000000000
- Size.Height = 10.000000000000000000
- Size.PlatformDefault = False
- Stroke.Color = claYellow
- end
- object Ind2: TRectangle
- Fill.Color = xFF404040
- Position.X = 10.000000000000000000
- Position.Y = 268.000000000000000000
- Size.Width = 8.000000000000000000
- Size.Height = 10.000000000000000000
- Size.PlatformDefault = False
- Stroke.Color = claYellow
- end
- object CapImage: TImage
- MultiResBitmap = <
- item
- end>
- Size.Width = 100.000000000000000000
- Size.Height = 100.000000000000000000
- Size.PlatformDefault = False
- Visible = False
- end
-end
diff --git a/app/rtkvideo/videomain.h b/app/rtkvideo/videomain.h
deleted file mode 100644
index bc6179516..000000000
--- a/app/rtkvideo/videomain.h
+++ /dev/null
@@ -1,86 +0,0 @@
-//---------------------------------------------------------------------------
-#ifndef vmainH
-#define vmainH
-//---------------------------------------------------------------------------
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include "rtklib.h"
-
-//---------------------------------------------------------------------------
-class TMainForm;
-class TStreamWriterThread : public TThread
-{
-private:
- TMainForm *Parent;
- TBitmap *Bitmap;
-
- void __fastcall Execute(void);
-public:
- __fastcall TStreamWriterThread(TMainForm *parent, TBitmap *bitmap);
- __fastcall ~TStreamWriterThread();
-};
-//---------------------------------------------------------------------------
-class TMainForm : public TForm
-{
-__published:
- TButton *BtnStart;
- TButton *BtnStop;
- TButton *BtnOpt;
- TButton *BtnExit;
- TLabel *Message1;
- TLabel *Message2;
- TImage *DispImage;
- TRectangle *Ind1;
- TTimer *Timer1;
- TLabel *Message3;
- TLayout *Panel1;
- TRectangle *Panel2;
- TLabel *Message4;
- TRectangle *Ind2;
- TLabel *Message5;
- TImage *CapImage;
- void __fastcall BtnStopClick(TObject *Sender);
- void __fastcall BtnOptClick(TObject *Sender);
- void __fastcall BtnExitClick(TObject *Sender);
- void __fastcall FormResize(TObject *Sender);
- void __fastcall BtnStartClick(TObject *Sender);
- void __fastcall Timer1Timer(TObject *Sender);
- void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
- void __fastcall FormShow(TObject *Sender);
-private:
- TVideoCaptureDevice *Device;
- TStreamWriterThread *StreamWriter;
- int FrameWidth, FrameHeight, FrameCount0, FrameRate, TimerCount;
-
- int __fastcall CaptureStart(void);
- void __fastcall CaptureStop(void);
- void __fastcall LoadOptions(void);
- void __fastcall SaveOptions(void);
- void __fastcall DrawCaption(TBitmap *bitmap);
- void __fastcall SampleBufferReady(TObject *Sender, const TMediaTime ATime);
- void __fastcall SampleBufferSync(void);
-public:
- stream_t OutputStream[2];
- gtime_t StartTime, CaptureTime;
- unsigned int StartTick, CaptureTick;
- int FrameCount, SentFrameCount, DispFrameCount;
- lock_t Lock;
- UnicodeString DevName, OutFile;
- TAlphaColor CaptionColor;
- int Profile, CapSizeEna, CapWidth, CapHeight, CaptionPos, CaptionSize;
- int TcpPortEna, TcpPortNo, OutFileEna, OutTimeTag, FileSwap, CodecQuality;
-
- __fastcall TMainForm(TComponent* Owner);
- __fastcall ~TMainForm();
-};
-//---------------------------------------------------------------------------
-extern PACKAGE TMainForm *MainForm;
-//---------------------------------------------------------------------------
-#endif
diff --git a/app/rtkvideo/videoopt.cpp b/app/rtkvideo/videoopt.cpp
deleted file mode 100644
index 5656643a4..000000000
--- a/app/rtkvideo/videoopt.cpp
+++ /dev/null
@@ -1,137 +0,0 @@
-//---------------------------------------------------------------------------
-#include
-#pragma hdrstop
-
-#include "videomain.h"
-#include "videoopt.h"
-
-//---------------------------------------------------------------------------
-#pragma package(smart_init)
-#pragma resource "*.fmx"
-
-TVideoOptDlg *VideoOptDlg;
-
-//---------------------------------------------------------------------------
-__fastcall TVideoOptDlg::TVideoOptDlg(TComponent* Owner)
- : TForm(Owner)
-{
-}
-//---------------------------------------------------------------------------
-void __fastcall TVideoOptDlg::FormShow(TObject *Sender)
-{
- TCaptureDeviceList list =
- TCaptureDeviceManager::Current->GetDevicesByMediaType(TMediaType::Video);
-
- SelDev->Clear();
-
- for (int i = 0; i < list->Count; i++) {
- SelDev->Items->Add(list->Items[i]->Name);
- if (i == 0) {
- SelDev->ItemIndex = 0;
- }
- else if (list->Items[i]->Name == MainForm->DevName) {
- SelDev->ItemIndex = i;
- }
- }
- UpdateProf();
-
- UnicodeString str;
- SelProf ->ItemIndex = MainForm->Profile;
- SelCapPos ->ItemIndex = MainForm->CaptionPos;
- EditCapSize ->Text = str.sprintf(L"%d", MainForm->CaptionSize);
- SelCapColor ->Color = MainForm->CaptionColor;
- EditCodecQuality->Text = str.sprintf(L"%d", MainForm->CodecQuality);
- ChkTcpPort ->IsChecked = MainForm->TcpPortEna;
- EditTcpPort ->Text = str.sprintf(L"%d", MainForm->TcpPortNo);
- ChkOutFile ->IsChecked = MainForm->OutFileEna;
- EditFile ->Text = MainForm->OutFile;
- ChkTimeTag ->IsChecked = MainForm->OutTimeTag;
- SelFileSwap ->ItemIndex = MainForm->FileSwap;
- UpdateEnable();
-}
-//---------------------------------------------------------------------------
-void __fastcall TVideoOptDlg::BtnOkClick(TObject *Sender)
-{
- if (SelDev->Selected) {
- MainForm->DevName = SelDev->Selected->Text;
- }
- else {
- MainForm->DevName = L"";
- }
- MainForm->Profile = SelProf ->ItemIndex;
- MainForm->CaptionPos = SelCapPos ->ItemIndex;
- MainForm->CaptionSize = EditCapSize->Text.ToInt();
- MainForm->CaptionColor = SelCapColor->Color;
- MainForm->CodecQuality = EditCodecQuality->Text.ToInt();
- MainForm->TcpPortEna = ChkTcpPort ->IsChecked;
- MainForm->TcpPortNo = EditTcpPort->Text.ToInt();
- MainForm->OutFileEna = ChkOutFile ->IsChecked;
- MainForm->OutFile = EditFile ->Text;
- MainForm->OutTimeTag = ChkTimeTag ->IsChecked;
- MainForm->FileSwap = SelFileSwap->ItemIndex;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVideoOptDlg::BtnFileClick(TObject *Sender)
-{
- SaveDialog->FileName = EditFile->Text;
- if (!SaveDialog->Execute()) return;
- EditFile->Text = SaveDialog->FileName;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVideoOptDlg::SelDevChange(TObject *Sender)
-{
- UpdateProf();
-}
-//---------------------------------------------------------------------------
-void __fastcall TVideoOptDlg::ChkTcpPortChange(TObject *Sender)
-{
- UpdateEnable();
-}
-//---------------------------------------------------------------------------
-void __fastcall TVideoOptDlg::SelCapPosChange(TObject *Sender)
-{
- UpdateEnable();
-}
-//---------------------------------------------------------------------------
-void __fastcall TVideoOptDlg::UpdateProf(void)
-{
- if (!SelDev->Selected) {
- return;
- }
- TVideoCaptureDevice *device = dynamic_cast
- (TCaptureDeviceManager::Current->GetDevicesByName(SelDev->Selected->Text));
-
- if (!device) return;
-
- DynamicArray settings =
- device->GetAvailableCaptureSettings(NULL);
-
- SelProf->Clear();
-
- for (int i = 0; i < settings.Length; i++) {
- UnicodeString str;
- str.sprintf(L"%d x %d, %2.0f FPS (%.0f-%.0f FPS)", settings[i].Width,
- settings[i].Height, settings[i].FrameRate,
- settings[i].MinFrameRate, settings[i].MaxFrameRate);
- SelProf->Items->Add(str);
- }
- if (settings.Length > 0) {
- SelProf->ItemIndex = 0;
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TVideoOptDlg::UpdateEnable(void)
-{
- EditTcpPort ->Enabled = ChkTcpPort->IsChecked;
- EditFile ->Enabled = ChkOutFile->IsChecked;
- Label8 ->Enabled = SelCapPos->ItemIndex != 0;
- EditCapSize ->Enabled = SelCapPos->ItemIndex != 0;
- SelCapColor ->Enabled = SelCapPos->ItemIndex != 0;
- BtnFile ->Enabled = ChkOutFile->IsChecked;
- ChkTimeTag ->Enabled = ChkOutFile->IsChecked;
- SelFileSwap ->Enabled = ChkOutFile->IsChecked;
- Label4 ->Enabled = ChkOutFile->IsChecked;
- Label5 ->Enabled = ChkOutFile->IsChecked;
-}
-//---------------------------------------------------------------------------
-
diff --git a/app/rtkvideo/videoopt.fmx b/app/rtkvideo/videoopt.fmx
deleted file mode 100644
index a5cef8fe8..000000000
--- a/app/rtkvideo/videoopt.fmx
+++ /dev/null
@@ -1,236 +0,0 @@
-object VideoOptDlg: TVideoOptDlg
- Left = 0
- Top = 0
- BorderStyle = Single
- Caption = 'Options'
- ClientHeight = 280
- ClientWidth = 411
- Position = MainFormCenter
- FormFactor.Width = 320
- FormFactor.Height = 480
- FormFactor.Devices = [Desktop]
- OnShow = FormShow
- DesignerMasterStyle = 0
- object BtnOk: TButton
- ModalResult = 1
- Position.X = 170.000000000000000000
- Position.Y = 244.000000000000000000
- Size.Width = 112.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 1
- Text = '&OK'
- OnClick = BtnOkClick
- end
- object BtnCancel: TButton
- ModalResult = 2
- Position.X = 289.000000000000000000
- Position.Y = 244.000000000000000000
- Size.Width = 112.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 0
- Text = '&Cancel'
- end
- object SelDev: TComboBox
- Position.X = 170.000000000000000000
- Position.Y = 18.000000000000000000
- Size.Width = 231.000000000000000000
- Size.Height = 25.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 2
- OnChange = SelDevChange
- end
- object SelProf: TComboBox
- Position.X = 170.000000000000000000
- Position.Y = 46.000000000000000000
- Size.Width = 231.000000000000000000
- Size.Height = 25.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 3
- end
- object Label1: TLabel
- Position.X = 12.000000000000000000
- Position.Y = 22.000000000000000000
- Text = 'Input Device'
- end
- object Label2: TLabel
- Position.X = 12.000000000000000000
- Position.Y = 50.000000000000000000
- Size.Width = 155.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- Text = 'Frame Width x Height, Rate'
- end
- object EditTcpPort: TEdit
- Touch.InteractiveGestures = [LongTap, DoubleTap]
- TabOrder = 9
- Text = '10033'
- Position.X = 295.000000000000000000
- Position.Y = 134.000000000000000000
- Size.Width = 106.000000000000000000
- Size.Height = 22.000000000000000000
- Size.PlatformDefault = False
- end
- object ChkTcpPort: TCheckBox
- Position.X = 10.000000000000000000
- Position.Y = 136.000000000000000000
- Size.Width = 179.000000000000000000
- Size.Height = 19.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 8
- Text = 'Output TCP Stream'
- OnChange = ChkTcpPortChange
- end
- object ChkOutFile: TCheckBox
- Position.X = 10.000000000000000000
- Position.Y = 165.000000000000000000
- Size.Width = 179.000000000000000000
- Size.Height = 19.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 10
- Text = 'Output File'
- OnChange = ChkTcpPortChange
- end
- object EditFile: TEdit
- Touch.InteractiveGestures = [LongTap, DoubleTap]
- TabOrder = 11
- Position.X = 12.000000000000000000
- Position.Y = 186.000000000000000000
- Size.Width = 389.000000000000000000
- Size.Height = 22.000000000000000000
- Size.PlatformDefault = False
- end
- object Label3: TLabel
- Position.X = 196.000000000000000000
- Position.Y = 138.000000000000000000
- Size.Width = 98.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- Text = 'TCP Server Port'
- end
- object ChkTimeTag: TCheckBox
- Position.X = 10.000000000000000000
- Position.Y = 214.000000000000000000
- Size.Width = 179.000000000000000000
- Size.Height = 19.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 13
- Text = 'Output Time Tag'
- OnChange = ChkTcpPortChange
- end
- object Label4: TLabel
- Position.X = 196.000000000000000000
- Position.Y = 215.000000000000000000
- Text = 'File Swap Interval'
- end
- object SelFileSwap: TComboBox
- Items.Strings = (
- ''
- '3'
- '6'
- '15'
- '30'
- '60'
- '120')
- Position.X = 295.000000000000000000
- Position.Y = 211.000000000000000000
- Size.Width = 72.000000000000000000
- Size.Height = 25.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 14
- end
- object BtnFile: TButton
- Position.X = 371.000000000000000000
- Position.Y = 161.000000000000000000
- Size.Width = 30.000000000000000000
- Size.Height = 22.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 12
- Text = '...'
- OnClick = BtnFileClick
- end
- object Label5: TLabel
- Position.X = 367.000000000000000000
- Position.Y = 215.000000000000000000
- Size.Width = 29.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- TextSettings.HorzAlign = Trailing
- Text = 'Min'
- end
- object EditCapSize: TEdit
- Touch.InteractiveGestures = [LongTap, DoubleTap]
- TabOrder = 5
- Text = '24'
- Position.X = 295.000000000000000000
- Position.Y = 75.000000000000000000
- Size.Width = 47.000000000000000000
- Size.Height = 23.000000000000000000
- Size.PlatformDefault = False
- end
- object SaveDialog: TSaveDialog
- Filter = 'MJPG (*.mjpg)|*.mjpg|ALL (*.*)|*.*'
- Title = 'Output File'
- Left = 48
- Top = 230
- end
- object Label7: TLabel
- Position.X = 12.000000000000000000
- Position.Y = 79.000000000000000000
- Size.Width = 155.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- Text = 'Frame Caption Position'
- end
- object SelCapPos: TComboBox
- Items.Strings = (
- 'Off'
- 'Left'
- 'Center'
- 'Right')
- ItemIndex = 0
- Position.X = 170.000000000000000000
- Position.Y = 74.000000000000000000
- Size.Width = 83.000000000000000000
- Size.Height = 25.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 4
- OnChange = SelCapPosChange
- end
- object Label8: TLabel
- Position.X = 260.000000000000000000
- Position.Y = 79.000000000000000000
- Size.Width = 35.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- Text = 'Font '
- end
- object SelCapColor: TComboColorBox
- Color = claWhite
- Position.X = 346.000000000000000000
- Position.Y = 74.000000000000000000
- Size.Width = 55.000000000000000000
- Size.Height = 25.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 6
- end
- object Label6: TLabel
- Position.X = 12.000000000000000000
- Position.Y = 108.000000000000000000
- Size.Width = 155.000000000000000000
- Size.Height = 17.000000000000000000
- Size.PlatformDefault = False
- Text = 'Codec Quality'
- end
- object EditCodecQuality: TEdit
- Touch.InteractiveGestures = [LongTap, DoubleTap]
- TabOrder = 7
- Text = '90'
- Position.X = 295.000000000000000000
- Position.Y = 104.000000000000000000
- Size.Width = 106.000000000000000000
- Size.Height = 22.000000000000000000
- Size.PlatformDefault = False
- end
-end
diff --git a/app/rtkvideo/videoopt.h b/app/rtkvideo/videoopt.h
deleted file mode 100644
index 59d612219..000000000
--- a/app/rtkvideo/videoopt.h
+++ /dev/null
@@ -1,60 +0,0 @@
-//---------------------------------------------------------------------------
-#ifndef videooptH
-#define videooptH
-//---------------------------------------------------------------------------
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-
-//---------------------------------------------------------------------------
-class TVideoOptDlg : public TForm
-{
-__published:
- TButton *BtnOk;
- TButton *BtnCancel;
- TComboBox *SelDev;
- TComboBox *SelProf;
- TLabel *Label1;
- TLabel *Label2;
- TEdit *EditTcpPort;
- TCheckBox *ChkTcpPort;
- TCheckBox *ChkOutFile;
- TEdit *EditFile;
- TLabel *Label3;
- TCheckBox *ChkTimeTag;
- TLabel *Label4;
- TComboBox *SelFileSwap;
- TButton *BtnFile;
- TLabel *Label5;
- TSaveDialog *SaveDialog;
- TEdit *EditCapSize;
- TLabel *Label7;
- TComboBox *SelCapPos;
- TLabel *Label8;
- TComboColorBox *SelCapColor;
- TLabel *Label6;
- TEdit *EditCodecQuality;
- void __fastcall FormShow(TObject *Sender);
- void __fastcall SelDevChange(TObject *Sender);
- void __fastcall BtnOkClick(TObject *Sender);
- void __fastcall ChkTcpPortChange(TObject *Sender);
- void __fastcall BtnFileClick(TObject *Sender);
- void __fastcall SelCapPosChange(TObject *Sender);
-private:
- void __fastcall UpdateProf(void);
- void __fastcall UpdateEnable(void);
-public:
- __fastcall TVideoOptDlg(TComponent* Owner);
-};
-//---------------------------------------------------------------------------
-extern PACKAGE TVideoOptDlg *VideoOptDlg;
-//---------------------------------------------------------------------------
-#endif
diff --git a/app/rtkvplayer/clean.bat b/app/rtkvplayer/clean.bat
deleted file mode 100644
index cacde7755..000000000
--- a/app/rtkvplayer/clean.bat
+++ /dev/null
@@ -1,16 +0,0 @@
-del Win32\Release\*.obj
-del Win32\Release\*.tds
-del Win32\Release\*.exe
-del Win32\Release\*.il*
-del Win32\Release\*.map
-del Win32\Release\*.ini
-del Win32\Release\*.o
-del Win32\Release\*.d
-del Win32\Debug\*.obj
-del Win32\Debug\*.tds
-del Win32\Debug\*.exe
-del Win32\Debug\*.il*
-del Win32\Debug\*.map
-del Win32\Debug\*.ini
-del Win32\Debug\*.o
-del Win32\Debug\*.d
diff --git a/app/rtkvplayer/install.bat b/app/rtkvplayer/install.bat
deleted file mode 100644
index 3185a0e68..000000000
--- a/app/rtkvplayer/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Win32\Release\rtkvplayer.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkvplayer/mjpgplayer.cpp b/app/rtkvplayer/mjpgplayer.cpp
deleted file mode 100644
index b35dcad1b..000000000
--- a/app/rtkvplayer/mjpgplayer.cpp
+++ /dev/null
@@ -1,143 +0,0 @@
-//---------------------------------------------------------------------------
-
-#include "mjpgplayer.h"
-
-#define JPG_MARKER 0xFF
-#define JPG_FRM_START 0xD8
-#define JPG_FRM_END 0xD9
-#define TIMETAGH_LEN 60
-
-//---------------------------------------------------------------------------
-__fastcall TMjpgPlayer::TMjpgPlayer()
-{
- LogSize = TagSize = 0;
- CurrentFrm = NumFrm = Width = Height = 0;
- FPS = 10.0;
-}
-//---------------------------------------------------------------------------
-__fastcall TMjpgPlayer::~TMjpgPlayer()
-{
-}
-//---------------------------------------------------------------------------
-int __fastcall TMjpgPlayer::OpenVideo(UnicodeString file)
-{
- if (!OpenLog(file)) return 0;
- OpenTag(file);
- return 1;
-}
-//---------------------------------------------------------------------------
-int __fastcall TMjpgPlayer::OpenLog(UnicodeString file)
-{
- AnsiString ansi_file = file;
- FILE *fp;
- unsigned char buff[2] = {0};
- size_t file_size;
-
- if (!(fp = fopen(ansi_file.c_str(), "rb"))) return 0;
-
- fread(buff, 2, 1, fp);
-
- if (buff[0] != JPG_FRM_START || buff[1] != JPG_MARKER) {
- fclose(fp);
- return 0;
- }
- if (fseek(fp, 0, SEEK_END)) {
- fclose(fp);
- return 0;
- }
- LogSize = (size_t)ftell(fp);
-
- if (!(LogData = (unsigned char *)malloc(LogSize))) {
- fclose(fp);
- LogSize = 0;
- return 0;
- }
- rewind(fp);
-
- if (fread(LogData, LogSize, 1, fp) < 1) {
- free(LogData);
- fclose(fp);
- LogSize = 0;
- LogData = NULL;
- return 0;
- }
- fclose(fp);
- return 1;
-}
-//---------------------------------------------------------------------------
-int __fastcall TMjpgPlayer::OpenTag(UnicodeString file)
-{
- AnsiString ansi_file = file+".tag";
- FILE *fp;
- unsigned char buff[80] = {0};
- size_t file_size;
-
- if (!(fp = fopen(ansi_file.c_str(), "rb"))) return 1;
-
- fread(buff, 80, 1, fp);
-
- if (strncmp(buff, "TIMETAG RTKLIB", 14)) {
- fclose(fp);
- return 0;
- }
- if (fseek(fp, 0, SEEK_END)) {
- fclose(fp);
- return 0;
- }
- TagSize = ftell(fp);
-
- if (!(TagData = (unsigned char *)malloc(TagSize))) {
- fclose(fp);
- TagSize = 0;
- return 0;
- }
- rewind(fp);
-
- if (fread(TagData, TagSize, 1, fp) < 1) {
- free(TagData);
- TagSize = 0;
- TagData = NULL;
- }
- fclose(fp);
- return 1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMjpgPlayer::ClearVideo(void)
-{
- return;
-}
-//---------------------------------------------------------------------------
-int __fastcall TMjpgPlayer::PlayVideo(void)
-{
- return 0;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMjpgPlayer::StopVideo(void)
-{
-}
-//---------------------------------------------------------------------------
-float __fastcall TMjpgPlayer::GetVideoPos(void)
-{
- return NumFrm <= 1 ? 0.0f : (float)CurrentFrm/(NumFrm-1);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMjpgPlayer::SetVideoPos(float pos)
-{
-}
-//---------------------------------------------------------------------------
-void __fastcall TMjpgPlayer::GetVideoTime(double &time, double &period)
-{
- time = CurrentFrm/FPS;
- period = NumFrm <=1 ? 0.0 : (NumFrm-1)/FPS;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMjpgPlayer::GetVideoSize(int &width, int &height)
-{
- width = Width;
- height = Height;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMjpgPlayer::UpdateVideo(void)
-{
-}
-//---------------------------------------------------------------------------
diff --git a/app/rtkvplayer/mjpgplayer.h b/app/rtkvplayer/mjpgplayer.h
deleted file mode 100644
index 86f6cbbbf..000000000
--- a/app/rtkvplayer/mjpgplayer.h
+++ /dev/null
@@ -1,35 +0,0 @@
-//---------------------------------------------------------------------------
-
-#ifndef mjpgplayerH
-#define mjpgplayerH
-
-//---------------------------------------------------------------------------
-#include
-#include "rtklib.h"
-
-//---------------------------------------------------------------------------
-class TMjpgPlayer
-{
-private:
- unsigned char *LogData, *TagData;
- size_t LogSize, TagSize;
- int Width, Height;
- int CurrentFrm, NumFrm;
- double FPS;
- int __fastcall OpenLog(UnicodeString file);
- int __fastcall OpenTag(UnicodeString file);
-public:
- int __fastcall OpenVideo(UnicodeString file);
- void __fastcall ClearVideo(void);
- int __fastcall PlayVideo(void);
- void __fastcall StopVideo(void);
- void __fastcall SetVideoPos(float pos);
- float __fastcall GetVideoPos(void);
- void __fastcall GetVideoTime(double &time, double &period);
- void __fastcall GetVideoSize(int &width, int &height);
- void __fastcall UpdateVideo(void);
- __fastcall TMjpgPlayer();
- __fastcall ~TMjpgPlayer();
-};
-
-#endif
diff --git a/app/rtkvplayer/rtkvplayer.cbproj b/app/rtkvplayer/rtkvplayer.cbproj
deleted file mode 100644
index 0b7c8c40e..000000000
--- a/app/rtkvplayer/rtkvplayer.cbproj
+++ /dev/null
@@ -1,1223 +0,0 @@
-
-
- {668024AB-0C9C-452E-BAC8-27CF7B85E2F4}
- 18.6
- FMX
- rtkvplayer.cpp
- True
- Release
- Win32
- 3
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- WIN32;TRACE;$(Defines)
- None
- false
- false
- WIN32;TRACE;$(BCC_Defines)
- true
- System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- true
- true
- true
- true
- <_TCHARMapping>char
- true
- $(BDS)\bin\cbuilder_PROJECTICON.ico
- true
- true
- ..\..\src\rcv\;..\..\src\;$(ILINK_LibraryPath)
- ..\..\src\rcv\;..\..\src\;$(IncludePath)
- true
- rtkvplayer
- true
- rtl.lib;fmx.lib
- FmxGuiApplication
- true
- $(BDS)\bin\cbuilder_PROJECTICNS.icns
- JPHNE
- true
- true
- .\$(Platform)\$(Config)
- .\$(Platform)\$(Config)
- false
- true
- true
- $(BDSLIB)\$(PLATFORM)\release\$(LANGDIR);$(ILINK_TranslatedLibraryPath)
- 1041
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
-
-
- true
- $(BDSINCLUDE)\windows\fmx;$(IncludePath)
- $(BDS)\bin\default_app.manifest
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- 1033
- adortl;appanalytics;bcbie;bcbsmp;bindcomp;bindcompdbx;bindcompfmx;bindcompvcl;bindengine;CloudService;CustomIPTransport;dbexpress;dbrtl;dbxcds;DbxClientDriver;DbxCommonDriver;DBXInterBaseDriver;DBXMySQLDriver;DBXSqliteDriver;dsnap;dsnapcon;dsnapxml;FireDAC;FireDACADSDriver;FireDACCommon;FireDACCommonDriver;FireDACCommonODBC;FireDACIBDriver;FireDACMSAccDriver;FireDACMySQLDriver;FireDACPgDriver;FireDACSqliteDriver;fmx;fmxase;fmxdae;fmxFireDAC;fmxobj;IndyCore;IndyIPClient;IndyIPCommon;IndyIPServer;IndyProtocols;IndySystem;inet;inetdb;inetdbxpress;RESTBackendComponents;RESTComponents;rtl;soapmidas;soaprtl;soapserver;svn;tethering;vcl;vclactnband;vcldb;vcldsnap;vclFireDAC;vclie;vclimg;VCLRESTComponents;VclSmp;vcltouch;vclwinx;vclx;xmlrtl;$(PackageImports)
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- true
- $(BDSINCLUDE)\windows\fmx;$(IncludePath)
- $(BDS)\bin\default_app.manifest
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
- 1033
- adortl;appanalytics;bindcomp;bindcompdbx;bindcompfmx;bindcompvcl;bindengine;CloudService;CustomIPTransport;dbexpress;dbrtl;dbxcds;DbxClientDriver;DbxCommonDriver;DBXInterBaseDriver;DBXMySQLDriver;DBXSqliteDriver;dsnap;dsnapcon;dsnapxml;FireDAC;FireDACADSDriver;FireDACCommon;FireDACCommonDriver;FireDACCommonODBC;FireDACIBDriver;FireDACMSAccDriver;FireDACMySQLDriver;FireDACPgDriver;FireDACSqliteDriver;fmx;fmxase;fmxdae;fmxFireDAC;fmxobj;IndyCore;IndyIPClient;IndyIPCommon;IndyIPServer;IndyProtocols;IndySystem;inet;inetdb;inetdbxpress;RESTBackendComponents;RESTComponents;rtl;soapmidas;soaprtl;soapserver;tethering;vcl;vclactnband;vcldb;vcldsnap;vclFireDAC;vclie;vclimg;VCLRESTComponents;VclSmp;vcltouch;vclwinx;vclx;xmlrtl;$(PackageImports)
- CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- false
- true
- false
- true
- _DEBUG;$(Defines)
- false
- None
- DEBUG
- true
- true
- true
- true
- Full
- true
- true
- true
- true
- true
- $(BDSLIB)\$(PLATFORM)\debug;$(ILINK_LibraryPath)
- $(BDSLIB)\$(PLATFORM)\debug\$(LANGDIR);$(ILINK_TranslatedLibraryPath)
-
-
- true
- 1033
- rtl.bpi;fmx.bpi
- true
- PerMonitor
-
-
- true
- PerMonitor
-
-
- NDEBUG;$(Defines)
- None
-
-
- ..\icon\rtk10.ico
- false
- true
- rtl.lib;fmx.lib
- true
- false
- 1033
- false
- None
- Debug
-
-
- true
- Debug
- PerMonitor
-
-
-
- mjpgplayer.h
- 3
-
-
- 0
-
-
-
- fmx
- vplayermain.h
- 2
-
-
-
- fmx
- vpoptdlg.h
- 27
-
-
- 23
-
-
- 24
-
-
- 10
-
-
- 11
-
-
- 12
-
-
- 13
-
-
- 14
-
-
- 15
-
-
- 16
-
-
- 17
-
-
- 18
-
-
- 19
-
-
- 20
-
-
- 21
-
-
- 27
-
-
- 22
-
-
- 4
-
-
- 5
-
-
- 6
-
-
- 7
-
-
- 3
-
-
- 25
-
-
- 9
-
-
- 8
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
- CPlusPlusBuilder.Personality.12
- FmxGuiApplication
-
-
-
- False
- True
- True
- False
-
-
- rtkvplayer.cpp
-
-
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
-
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- rtkvplayer.exe
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- rtkvplayer.exe
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- Contents\MacOS
- 1
- .framework
-
-
- Contents\MacOS
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- Contents
- 1
-
-
- Contents
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
- True
-
-
- 12
-
-
-
-
-
diff --git a/app/rtkvplayer/rtkvplayer.cpp b/app/rtkvplayer/rtkvplayer.cpp
deleted file mode 100644
index 972041704..000000000
--- a/app/rtkvplayer/rtkvplayer.cpp
+++ /dev/null
@@ -1,39 +0,0 @@
-//---------------------------------------------------------------------------
-
-#include
-#ifdef _WIN32
-#include
-#endif
-#pragma hdrstop
-#include
-//---------------------------------------------------------------------------
-USEFORM("vplayermain.cpp", MainForm);
-USEFORM("vpoptdlg.cpp", VideoPlayerOptDialog);
-//---------------------------------------------------------------------------
-extern "C" int FMXmain()
-{
- try
- {
- Application->Initialize();
- Application->CreateForm(__classid(TMainForm), &MainForm);
- Application->CreateForm(__classid(TVideoPlayerOptDialog), &VideoPlayerOptDialog);
- Application->Run();
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- catch (...)
- {
- try
- {
- throw Exception("");
- }
- catch (Exception &exception)
- {
- Application->ShowException(&exception);
- }
- }
- return 0;
-}
-//---------------------------------------------------------------------------
diff --git a/app/rtkvplayer/rtkvplayer.res b/app/rtkvplayer/rtkvplayer.res
deleted file mode 100644
index 23fad3df6..000000000
Binary files a/app/rtkvplayer/rtkvplayer.res and /dev/null differ
diff --git a/app/rtkvplayer/vplayermain.cpp b/app/rtkvplayer/vplayermain.cpp
deleted file mode 100644
index 8e1d4bc65..000000000
--- a/app/rtkvplayer/vplayermain.cpp
+++ /dev/null
@@ -1,417 +0,0 @@
-//---------------------------------------------------------------------------
-// vplayermain.c : simple video player
-//
-// Copyright (C) 2016 by T.TAKASU, All rights reserved.
-//
-// version : $Revision:$ $Date:$
-// history : 2016/09/25 1.0 new
-//---------------------------------------------------------------------------
-
-#include
-#pragma hdrstop
-
-#include "vplayermain.h"
-#include "vpoptdlg.h"
-#include "rtklib.h"
-
-#define VIDEO_TYPE_NONE 0
-#define VIDEO_TYPE_MEDIA 1
-#define VIDEO_TYPE_MJPEG 2
-
-#define MIN_WINDOW_WIDTH 320
-#define MIN_WINDOW_HEIGHT 240
-
-#define PRGNAME "RTKVPLAYER"
-#define INI_FILE "rtkvplayer.ini"
-#define PATH_TIME_SYNC "localhost:10071"
-
-//---------------------------------------------------------------------------
-#pragma package(smart_init)
-#pragma resource "*.fmx"
-TMainForm *MainForm;
-//---------------------------------------------------------------------------
-__fastcall TMainForm::TMainForm(TComponent* Owner)
- : TForm(Owner)
-{
- double ep[]={2000,1,1,0,0,0};
- VideoType = VIDEO_TYPE_NONE;
- Files = new TStringList;
- FileIndex = -1;
- Track = NStrBuff = 0;
- TimeStart = epoch2time(ep);
- MjpgRate = 10.0;
- SyncPort = 10071;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::FormShow(TObject *Sender)
-{
- LoadOptions();
-
- Fmx::Platform::Win::TWinWindowHandle *handle =
- Fmx::Platform::Win::WindowHandleToPlatform(Handle);
- ::DragAcceptFiles(handle->Wnd, true);
-
- Caption = PRGNAME;
- Caption = Caption+" ver."+VER_RTKLIB+" "+PATCH_LEVEL;
-
- strinitcom();
- strinit(&StrTimeSync);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
-{
- StopVideo();
- ClearVideo();
- strclose(&StrTimeSync);
- SaveOptions();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnOpenClick(TObject *Sender)
-{
- if (!OpenDialog->Execute()) return;
- Files = OpenDialog->Files;
- FileIndex = 0;
- OpenVideo(Files->Strings[FileIndex]);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::ReadNmea(UnicodeString file)
-{
- AnsiString ansi_file=file;
- FILE *fp;
- double time,date,ep[6];
- char path[1024],buff[256],*p;
-
- strcpy(path,ansi_file.c_str());
-
- if (!(p=strrchr(path,'.'))) p=path+strlen(path);
- strcpy(p,".nmea");
-
- if (!(fp=fopen(path,"r"))) return;
-
- while (fgets(buff,sizeof(buff),fp)) {
- if (sscanf(buff,"$GPRMC,%lf,A,%*lf,%*c,%*lf,%*c,%*lf,%*lf,%lf",
- &time,&date)>=2) {
- ep[2]=floor(date/10000.0); date-=ep[2]*10000.0;
- ep[1]=floor(date/100.0 ); date-=ep[1]*100.0;
- ep[0]=date+2000.0;
- ep[3]=floor(time/10000.0); time-=ep[3]*10000.0;
- ep[4]=floor(time/100.0 ); time-=ep[4]*100.0;
- ep[5]=time;
- TimeStart=timeadd(utc2gpst(epoch2time(ep)),-0.5);
- break;
- }
- }
- fclose(fp);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnPlayClick(TObject *Sender)
-{
- if (!PlayVideo()) return;
- BtnOpen ->Enabled = false;
- BtnPlay ->Enabled = false;
- BtnStop ->Enabled = true;
- BtnClear->Enabled = false;
- BtnExit ->Enabled = false;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnStopClick(TObject *Sender)
-{
- StopVideo();
- BtnOpen ->Enabled = true;
- BtnPlay ->Enabled = true;
- BtnStop ->Enabled = false;
- BtnClear->Enabled = true;
- BtnExit ->Enabled = true;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnClearClick(TObject *Sender)
-{
- ClearVideo();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnExitClick(TObject *Sender)
-{
- Close();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnNextClick(TObject *Sender)
-{
- NextVideo();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnPrevClick(TObject *Sender)
-{
- PrevVideo();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnPosStartClick(TObject *Sender)
-{
- SetVideoPos(0.0f);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::DropFiles(TWMDropFiles msg)
-{
- char str[1024];
-
- if (DragQueryFile((HDROP)msg.Drop, 0xFFFFFFFF, NULL, 0) <= 0) return;
- DragQueryFile((HDROP)msg.Drop, 0, str, sizeof(file));
- UnicodeString file = str;
- OpenVideo(file);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::Timer1Timer(TObject *Sender)
-{
- AnsiString str;
- gtime_t time;
- double t, period;
- char msg[256];
- int width, height;
-
- GetVideoTime(t, period);
- GetVideoSize(width, height);
- time = timeadd(TimeStart, t);
- if (FileIndex >= 0) {
- str.sprintf("%s (%d x %d)", time_str(time, 2), width, height);
- }
- if (BtnSync->IsPressed) {
- sprintf(msg, "%s\r\n", time_str(time, 2));
- strwrite(&StrTimeSync, (unsigned char *)msg, (int)strlen(msg));
- }
- ProgressBar->Value = (int)(GetVideoPos()*1000);
- Message1->Text = str;
- Message2->Text = MediaPlayer->FileName;
-
- if (ProgressBar->Value >= 1000 && !BtnPlay->Enabled) {
- NextVideo();
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnSyncClick(TObject *Sender)
-{
- if (BtnSync->IsPressed) {
- stropen(&StrTimeSync, STR_TCPCLI, STR_MODE_RW, PATH_TIME_SYNC);
- }
- else {
- strclose(&StrTimeSync);
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::ProgressBarMouseDown(TObject *Sender, TMouseButton Button,
- TShiftState Shift, float X, float Y)
-{
- SetVideoPos(X/ProgressBar->Width);
- Track = 1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::ProgressBarMouseMove(TObject *Sender, TShiftState Shift,
- float X, float Y)
-{
- if (Track) SetVideoPos(X/ProgressBar->Width);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::ProgressBarMouseUp(TObject *Sender, TMouseButton Button,
- TShiftState Shift, float X, float Y)
-{
- if (Track) SetVideoPos(X/ProgressBar->Width);
- Track = 0;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::FormResize(TObject *Sender)
-{
- if (Width < MIN_WINDOW_WIDTH ) Width = MIN_WINDOW_WIDTH;
- if (Height < MIN_WINDOW_HEIGHT) Height = MIN_WINDOW_HEIGHT;
- Panel3->ItemWidth = (Panel3->Width-2)/6;
- UpdateVideo();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::OpenVideo(UnicodeString file)
-{
- if (MjpgPlayer->OpenVideo(file)) {
- VideoType = VIDEO_TYPE_MJPEG;
- }
- else {
- try {
- MediaPlayer->FileName = file;
- }
- catch (Exception &ex) {
- return;
- }
- VideoType = VIDEO_TYPE_MEDIA;
- }
- ReadNmea(file);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::ClearVideo(void)
-{
- if (VideoType == VIDEO_TYPE_MEDIA) {
- MediaPlayer->Clear();
- }
- else if (VideoType == VIDEO_TYPE_MJPEG) {
- MjpgPlayer->ClearVideo();
- }
- Files->Clear();
- FileIndex = -1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::NextVideo(void)
-{
- if (FileIndex >= Files->Count-1) return;
- OpenVideo(Files->Strings[++FileIndex]);
- if (!BtnPlay->Enabled) PlayVideo();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::PrevVideo(void)
-{
- if (FileIndex <= 0) return;
- OpenVideo(Files->Strings[--FileIndex]);
- if (!BtnPlay->Enabled) PlayVideo();
-}
-//---------------------------------------------------------------------------
-int __fastcall TMainForm::PlayVideo(void)
-{
- if (VideoType == VIDEO_TYPE_MEDIA) {
- MediaPlayer->Play();
- }
- else if (VideoType == VIDEO_TYPE_MJPEG) {
- MjpgPlayer->PlayVideo();
- }
- else {
- return 0;
- }
- return 1;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::StopVideo(void)
-{
- if (VideoType == VIDEO_TYPE_MEDIA) {
- MediaPlayer->Stop();
- }
- else if (VideoType == VIDEO_TYPE_MJPEG) {
- MjpgPlayer->StopVideo();
- }
-}
-//---------------------------------------------------------------------------
-float __fastcall TMainForm::GetVideoPos(void)
-{
- double time, period;
-
- GetVideoTime(time, period);
-
- return time/period;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::SetVideoPos(float pos)
-{
- if (VideoType == VIDEO_TYPE_MEDIA) {
- if (MediaPlayer->Duration > 0) {
- MediaPlayer->CurrentTime = (TMediaTime)(MediaPlayer->Duration*pos);
- }
- }
- else if (VideoType == VIDEO_TYPE_MJPEG) {
- MjpgPlayer->SetVideoPos(pos);
- }
- UpdateVideo();
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::GetVideoTime(double &time, double &period)
-{
- if (VideoType == VIDEO_TYPE_MEDIA) {
- time = MediaPlayer->CurrentTime*1e-7;
- if (MediaPlayer->Duration > 0) {
- period = MediaPlayer->Duration*1e-7;
- }
- else {
- period = 137.0;
- }
- }
- else if (VideoType == VIDEO_TYPE_MJPEG) {
- MjpgPlayer->GetVideoTime(time, period);
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::GetVideoSize(int &width, int &height)
-{
- if (VideoType == VIDEO_TYPE_MEDIA) {
- width = (int)MediaPlayer->VideoSize.X;
- height = (int)MediaPlayer->VideoSize.Y;
- }
- else if (VideoType == VIDEO_TYPE_MJPEG) {
- MjpgPlayer->GetVideoSize(width, height);
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::UpdateVideo(void)
-{
- if (VideoType == VIDEO_TYPE_MEDIA) {
- TMediaState state = MediaPlayer->State;
-
- if (MediaPlayer->CurrentTime == MediaPlayer->Duration) {
- MediaPlayer->CurrentTime = MediaPlayer->Duration-1000000;
- MediaPlayer->Play();
- MediaPlayer->Stop();
- }
- else if (state == TMediaState::Stopped) {
- MediaPlayer->Play();
- MediaPlayer->Stop();
- }
- }
- else if (VideoType == VIDEO_TYPE_MJPEG) {
- MjpgPlayer->UpdateVideo();
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::LoadOptions(void)
-{
- FILE *fp;
- char buff[1080], sec[32] = "", str[32] = "";
- double dbl;
- int val;
-
- if (!(fp = fopen(INI_FILE, "r"))) return;
-
- while (fgets(buff, sizeof(buff), fp)) {
- if (*buff == '[') {
- sscanf(buff+1, "%31[^\]]", sec);
- }
- else if (!strcmp(sec, "window")) {
- if (sscanf(buff, "win_width = %d", &val)) Width = val;
- else if (sscanf(buff, "win_height = %d", &val)) Height = val;
- else if (sscanf(buff, "win_left = %d", &val)) Left = val;
- else if (sscanf(buff, "win_top = %d", &val)) Top = val;
- }
- else if (!strcmp(sec, "option")) {
- if (sscanf(buff, "mjpg_rate = %lf", &dbl)) MjpgRate = dbl;
- else if (sscanf(buff, "sync_addr = %31s", str)) SyncAddr = str;
- else if (sscanf(buff, "sync_port = %d", &val)) SyncPort = val;
- }
- }
- fclose(fp);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMainForm::SaveOptions(void)
-{
- FILE *fp;
-
- if (!(fp = fopen(INI_FILE, "w"))) return;
-
- fprintf(fp, "[window]\n");
- fprintf(fp, "win_width = %d\n", Width );
- fprintf(fp, "win_height = %d\n", Height );
- fprintf(fp, "win_left = %d\n", Left );
- fprintf(fp, "win_top = %d\n", Top );
- fprintf(fp, "[option]\n");
- fprintf(fp, "mjpg_rate = %.0f\n", MjpgRate );
- AnsiString sync_addr = SyncAddr;
- fprintf(fp, "sync_addr = %s\n", sync_addr.c_str());
- fprintf(fp, "sync_port = %d\n", SyncPort );
-
- fclose(fp);
-}
-//---------------------------------------------------------------------------
-
-void __fastcall TMainForm::BtnOptionClick(TObject *Sender)
-{
- if (VideoPlayerOptDialog->ShowModal() != mrOk) return;
-}
-//---------------------------------------------------------------------------
-
diff --git a/app/rtkvplayer/vplayermain.fmx b/app/rtkvplayer/vplayermain.fmx
deleted file mode 100644
index 19209c15a..000000000
--- a/app/rtkvplayer/vplayermain.fmx
+++ /dev/null
@@ -1,324 +0,0 @@
-object MainForm: TMainForm
- Left = 50
- Top = 50
- Caption = 'RTK Video Player'
- ClientHeight = 320
- ClientWidth = 543
- Fill.Kind = Solid
- Position = Designed
- FormFactor.Width = 320
- FormFactor.Height = 480
- FormFactor.Devices = [Desktop]
- OnClose = FormClose
- OnResize = FormResize
- OnShow = FormShow
- Left = 50
- Top = 50
- DesignerMasterStyle = 0
- object Panel3: TGridLayout
- Align = Bottom
- ItemHeight = 31.000000000000000000
- ItemWidth = 90.000000000000000000
- Orientation = Horizontal
- Position.Y = 287.000000000000000000
- Size.Width = 543.000000000000000000
- Size.Height = 33.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 3
- object BtnOpen: TButton
- ImageIndex = 0
- Margins.Left = 1.000000000000000000
- Margins.Top = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Margins.Bottom = 1.000000000000000000
- Position.X = 1.000000000000000000
- Position.Y = 1.000000000000000000
- Size.Width = 88.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 0
- Text = '&Open...'
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOpenClick
- end
- object BtnPlay: TButton
- Margins.Left = 1.000000000000000000
- Margins.Top = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Margins.Bottom = 1.000000000000000000
- Position.X = 91.000000000000000000
- Position.Y = 1.000000000000000000
- Size.Width = 88.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 1
- Text = '&Play'
- OnClick = BtnPlayClick
- end
- object BtnStop: TButton
- Enabled = False
- Margins.Left = 1.000000000000000000
- Margins.Top = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Margins.Bottom = 1.000000000000000000
- Position.X = 181.000000000000000000
- Position.Y = 1.000000000000000000
- Size.Width = 88.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 3
- Text = 'S&top'
- OnClick = BtnStopClick
- end
- object BtnClear: TButton
- Margins.Left = 1.000000000000000000
- Margins.Top = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Margins.Bottom = 1.000000000000000000
- Position.X = 271.000000000000000000
- Position.Y = 1.000000000000000000
- Size.Width = 88.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 4
- Text = '&Clear'
- OnClick = BtnClearClick
- end
- object BtnOption: TButton
- Margins.Left = 1.000000000000000000
- Margins.Top = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Margins.Bottom = 1.000000000000000000
- Position.X = 361.000000000000000000
- Position.Y = 1.000000000000000000
- Size.Width = 88.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 5
- Text = '&Option...'
- OnClick = BtnOptionClick
- end
- object BtnExit: TButton
- Margins.Left = 1.000000000000000000
- Margins.Top = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Margins.Bottom = 1.000000000000000000
- Position.X = 451.000000000000000000
- Position.Y = 1.000000000000000000
- Size.Width = 88.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 2
- Text = 'E&xit'
- OnClick = BtnExitClick
- end
- end
- object MediaPlayer: TMediaPlayer
- Left = 286
- Top = 172
- end
- object OpenDialog: TOpenDialog
- Filter =
- 'AVI (*.avi), MP4 (*.mp4), MJPG (.mjpg) |*.avi;*.mp4;*.mjpg|All (' +
- '*.*)|*.*'
- Options = [ofHideReadOnly, ofAllowMultiSelect, ofEnableSizing]
- Title = 'Open Video'
- Left = 318
- Top = 170
- end
- object Timer1: TTimer
- Interval = 100
- OnTimer = Timer1Timer
- Left = 348
- Top = 170
- end
- object Panel2: TLayout
- Align = Bottom
- Margins.Left = 1.000000000000000000
- Margins.Top = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Margins.Bottom = 1.000000000000000000
- Position.X = 1.000000000000000000
- Position.Y = 271.000000000000000000
- Size.Width = 541.000000000000000000
- Size.Height = 15.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 7
- object ProgressBar: TProgressBar
- Align = Client
- Max = 1000.000000000000000000
- Orientation = Horizontal
- Size.Width = 453.000000000000000000
- Size.Height = 15.000000000000000000
- Size.PlatformDefault = False
- OnMouseDown = ProgressBarMouseDown
- OnMouseMove = ProgressBarMouseMove
- OnMouseUp = ProgressBarMouseUp
- end
- object BtnPosStart: TButton
- Align = Left
- Hint = 'Rewind'
- Images = ImageList1
- Margins.Left = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Position.X = 18.000000000000000000
- Size.Width = 15.000000000000000000
- Size.Height = 15.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 3
- Text = '.'
- OnClick = BtnPosStartClick
- end
- object BtnSync: TSpeedButton
- StaysPressed = True
- Align = Right
- Margins.Left = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Position.X = 505.000000000000000000
- Size.Width = 35.000000000000000000
- Size.Height = 15.000000000000000000
- Size.PlatformDefault = False
- Text = 'Sync'
- OnClick = BtnSyncClick
- end
- object BtnNext: TButton
- Align = Right
- Hint = 'Go Next'
- Images = ImageList1
- ImageIndex = 0
- Margins.Left = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Position.X = 488.000000000000000000
- Size.Width = 15.000000000000000000
- Size.Height = 15.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 2
- OnClick = BtnNextClick
- end
- object BtnPrev: TButton
- Align = Left
- Hint = 'Go Previous'
- Images = ImageList1
- ImageIndex = 1
- Margins.Left = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Position.X = 1.000000000000000000
- Size.Width = 15.000000000000000000
- Size.Height = 15.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 1
- Text = '.'
- OnClick = BtnPrevClick
- end
- end
- object Panel1: TRectangle
- Align = Client
- Fill.Color = xFF404040
- Margins.Left = 1.000000000000000000
- Margins.Top = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Size.Width = 541.000000000000000000
- Size.Height = 247.000000000000000000
- Size.PlatformDefault = False
- Stroke.Color = xFF404040
- Stroke.Thickness = 0.000000000000000000
- object MediaPlayerControl: TMediaPlayerControl
- Size.Width = 541.000000000000000000
- Size.Height = 247.000000000000000000
- Size.PlatformDefault = False
- Align = Client
- MediaPlayer = MediaPlayer
- end
- end
- object Panel4: TRectangle
- Align = Bottom
- Fill.Color = xFF404040
- Margins.Left = 1.000000000000000000
- Margins.Right = 1.000000000000000000
- Position.X = 1.000000000000000000
- Position.Y = 248.000000000000000000
- Size.Width = 541.000000000000000000
- Size.Height = 22.000000000000000000
- Size.PlatformDefault = False
- Stroke.Color = xFF404040
- object Message1: TLabel
- Align = Left
- StyledSettings = [Family, Size, Style]
- Margins.Left = 8.000000000000000000
- Position.X = 8.000000000000000000
- Size.Width = 320.000000000000000000
- Size.Height = 22.000000000000000000
- Size.PlatformDefault = False
- TextSettings.FontColor = claYellow
- end
- object Message2: TLabel
- Align = Right
- StyledSettings = [Family, Size, Style]
- Margins.Right = 8.000000000000000000
- Position.X = 53.000000000000000000
- Size.Width = 480.000000000000000000
- Size.Height = 22.000000000000000000
- Size.PlatformDefault = False
- TextSettings.FontColor = claYellow
- TextSettings.HorzAlign = Trailing
- end
- end
- object ImageList1: TImageList
- Source = <
- item
- MultiResBitmap.Height = 13
- MultiResBitmap.Width = 13
- MultiResBitmap.LoadSize = 2
- MultiResBitmap = <
- item
- Width = 13
- Height = 13
- PNG = {
- 89504E470D0A1A0A0000000D494844520000000D0000000D080600000072EBE4
- 7C000000017352474200AECE1CE90000000467414D410000B18F0BFC61050000
- 005A494441542853CD92510AC030084375A7D67B79BFAD2911262B2BB29F3D08
- D5D6204AF51C489383678BEF267767B4013325482133E3CD9AA52915117CA994
- EDA92AA3CAAD64F2BA88D1E96198A05382146ACDB42B4E7EFD23442E7EDEC730
- 77A0930E0000000049454E44AE426082}
- FileName = 'D:\proj\RTKLIB\app\icon\anim1.bmp'
- end>
- Name = 'Item 0'
- end
- item
- MultiResBitmap.LoadSize = 2
- MultiResBitmap = <
- item
- Width = 13
- Height = 13
- PNG = {
- 89504E470D0A1A0A0000000D494844520000000D0000000D080600000072EBE4
- 7C000000017352474200AECE1CE90000000467414D410000B18F0BFC61050000
- 005849444154285363FC0F040C240226284D12A09DA6CACA4A280B0A407EC205
- 2A2A2A40FE0563648055D3962D5BE08AB169C2083D464646280B15202BC3F013
- 48126813948703806CC20548F2133A00694606833A45303000004864C7306667
- 656A0000000049454E44AE426082}
- end>
- Name = 'Item 1'
- end>
- Destination = <
- item
- Layers = <
- item
- Name = 'Item 0'
- SourceRect.Right = 13.000000000000000000
- SourceRect.Bottom = 13.000000000000000000
- end>
- end
- item
- Layers = <
- item
- Name = 'Item 1'
- SourceRect.Right = 13.000000000000000000
- SourceRect.Bottom = 13.000000000000000000
- end>
- end>
- Left = 26
- Top = 173
- end
-end
diff --git a/app/rtkvplayer/vplayermain.h b/app/rtkvplayer/vplayermain.h
deleted file mode 100644
index 7823bd74d..000000000
--- a/app/rtkvplayer/vplayermain.h
+++ /dev/null
@@ -1,108 +0,0 @@
-//---------------------------------------------------------------------------
-
-#ifndef vplayerH
-#define vplayerH
-//---------------------------------------------------------------------------
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-
-#include "rtklib.h"
-#include "mjpgplayer.h"
-#include
-#include
-
-//---------------------------------------------------------------------------
-class TMainForm : public TForm
-{
-__published:
- TMediaPlayer *MediaPlayer;
- TMediaPlayerControl *MediaPlayerControl;
- TButton *BtnOpen;
- TButton *BtnPlay;
- TButton *BtnStop;
- TButton *BtnClear;
- TButton *BtnOption;
- TOpenDialog *OpenDialog;
- TGridLayout *Panel3;
- TProgressBar *ProgressBar;
- TTimer *Timer1;
- TLayout *Panel2;
- TButton *BtnPosStart;
- TRectangle *Panel1;
- TLabel *Message1;
- TLabel *Message2;
- TRectangle *Panel4;
- TSpeedButton *BtnSync;
- TImageList *ImageList1;
- TButton *BtnNext;
- TButton *BtnPrev;
- TButton *BtnExit;
- void __fastcall BtnOpenClick(TObject *Sender);
- void __fastcall BtnPlayClick(TObject *Sender);
- void __fastcall BtnStopClick(TObject *Sender);
- void __fastcall BtnClearClick(TObject *Sender);
- void __fastcall BtnExitClick(TObject *Sender);
- void __fastcall Timer1Timer(TObject *Sender);
- void __fastcall ProgressBarMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift,
- float X, float Y);
- void __fastcall ProgressBarMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift,
- float X, float Y);
- void __fastcall ProgressBarMouseMove(TObject *Sender, TShiftState Shift, float X,
- float Y);
- void __fastcall FormResize(TObject *Sender);
- void __fastcall BtnPosStartClick(TObject *Sender);
- void __fastcall FormShow(TObject *Sender);
- void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
- void __fastcall BtnSyncClick(TObject *Sender);
- void __fastcall BtnNextClick(TObject *Sender);
- void __fastcall BtnPrevClick(TObject *Sender);
- void __fastcall BtnOptionClick(TObject *Sender);
-
-private:
- gtime_t TimeStart;
- stream_t StrTimeSync;
- TMjpgPlayer *MjpgPlayer;
- TStrings *Files;
- int VideoType, Track, NStrBuff, FileIndex;
- char StrBuff[1024];
-
- void __fastcall DropFiles(TWMDropFiles msg);
- void __fastcall OpenVideo(UnicodeString file);
- void __fastcall ReadNmea(UnicodeString file);
- void __fastcall ClearVideo(void);
- void __fastcall NextVideo(void);
- void __fastcall PrevVideo(void);
- int __fastcall PlayVideo(void);
- void __fastcall StopVideo(void);
- void __fastcall SyncVideo(void);
- void __fastcall SetVideoPos(float pos);
- float __fastcall GetVideoPos(void);
- void __fastcall GetVideoTime(double &time, double &period);
- void __fastcall GetVideoSize(int &width, int &height);
- void __fastcall UpdateVideo(void);
- void __fastcall LoadOptions(void);
- void __fastcall SaveOptions(void);
-
- BEGIN_MESSAGE_MAP
- MESSAGE_HANDLER(WM_DROPFILES, TWMDropFiles, DropFiles);
- END_MESSAGE_MAP(TForm);
-public:
- double MjpgRate;
- UnicodeString SyncAddr;
- int SyncPort;
-
- __fastcall TMainForm(TComponent* Owner);
-};
-//---------------------------------------------------------------------------
-extern PACKAGE TMainForm *MainForm;
-//---------------------------------------------------------------------------
-#endif
diff --git a/app/rtkvplayer/vpoptdlg.cpp b/app/rtkvplayer/vpoptdlg.cpp
deleted file mode 100644
index aebaa0872..000000000
--- a/app/rtkvplayer/vpoptdlg.cpp
+++ /dev/null
@@ -1,33 +0,0 @@
-//---------------------------------------------------------------------------
-
-#include
-#pragma hdrstop
-
-#include "vplayermain.h"
-#include "vpoptdlg.h"
-//---------------------------------------------------------------------------
-#pragma package(smart_init)
-#pragma resource "*.fmx"
-TVideoPlayerOptDialog *VideoPlayerOptDialog;
-//---------------------------------------------------------------------------
-__fastcall TVideoPlayerOptDialog::TVideoPlayerOptDialog(TComponent* Owner)
- : TForm(Owner)
-{
-}
-//---------------------------------------------------------------------------
-void __fastcall TVideoPlayerOptDialog::FormShow(TObject *Sender)
-{
- UnicodeString s;
-
- EditMjpgRate->Text = s.sprintf(L"%.0f", MainForm->MjpgRate);
- EditSyncAddr->Text = MainForm->SyncAddr;
- EditSyncPort->Text = s.sprintf(L"%d", MainForm->SyncPort);
-}
-//---------------------------------------------------------------------------
-void __fastcall TVideoPlayerOptDialog::BtnOkClick(TObject *Sender)
-{
- MainForm->MjpgRate = EditMjpgRate->Text.ToDouble();
- MainForm->SyncAddr = EditSyncAddr->Text;
- MainForm->SyncPort = EditSyncPort->Text.ToInt();
-}
-//---------------------------------------------------------------------------
diff --git a/app/rtkvplayer/vpoptdlg.fmx b/app/rtkvplayer/vpoptdlg.fmx
deleted file mode 100644
index 1cd248340..000000000
--- a/app/rtkvplayer/vpoptdlg.fmx
+++ /dev/null
@@ -1,70 +0,0 @@
-object VideoPlayerOptDialog: TVideoPlayerOptDialog
- Left = 0
- Top = 0
- BorderStyle = Single
- Caption = 'Options'
- ClientHeight = 140
- ClientWidth = 259
- Position = MainFormCenter
- FormFactor.Width = 320
- FormFactor.Height = 480
- FormFactor.Devices = [Desktop]
- OnShow = FormShow
- DesignerMasterStyle = 0
- object BtnOk: TButton
- ModalResult = 1
- Position.X = 38.000000000000000000
- Position.Y = 107.000000000000000000
- Size.Width = 100.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 0
- Text = '&OK'
- OnClick = BtnOkClick
- end
- object BtnCancel: TButton
- ModalResult = 2
- Position.X = 140.000000000000000000
- Position.Y = 107.000000000000000000
- Size.Width = 100.000000000000000000
- Size.Height = 29.000000000000000000
- Size.PlatformDefault = False
- TabOrder = 1
- Text = '&Cancel'
- end
- object Label1: TLabel
- Position.X = 20.000000000000000000
- Position.Y = 19.000000000000000000
- Text = 'MJPG Frame Rate'
- end
- object Label2: TLabel
- Position.X = 20.000000000000000000
- Position.Y = 45.000000000000000000
- Text = 'Time Sync Address'
- end
- object Label3: TLabel
- Position.X = 20.000000000000000000
- Position.Y = 71.000000000000000000
- Text = 'Time Sync Port'
- end
- object EditMjpgRate: TEdit
- Touch.InteractiveGestures = [LongTap, DoubleTap]
- TabOrder = 5
- Text = '10'
- Position.X = 140.000000000000000000
- Position.Y = 15.000000000000000000
- end
- object EditSyncAddr: TEdit
- Touch.InteractiveGestures = [LongTap, DoubleTap]
- TabOrder = 6
- Position.X = 140.000000000000000000
- Position.Y = 41.000000000000000000
- end
- object EditSyncPort: TEdit
- Touch.InteractiveGestures = [LongTap, DoubleTap]
- TabOrder = 7
- Text = '10071'
- Position.X = 140.000000000000000000
- Position.Y = 66.000000000000000000
- end
-end
diff --git a/app/rtkvplayer/vpoptdlg.h b/app/rtkvplayer/vpoptdlg.h
deleted file mode 100644
index 6a1d839a3..000000000
--- a/app/rtkvplayer/vpoptdlg.h
+++ /dev/null
@@ -1,34 +0,0 @@
-//---------------------------------------------------------------------------
-
-#ifndef vpoptdlgH
-#define vpoptdlgH
-//---------------------------------------------------------------------------
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-//---------------------------------------------------------------------------
-class TVideoPlayerOptDialog : public TForm
-{
-__published: // IDE ŊǗR|[lg
- TButton *BtnOk;
- TButton *BtnCancel;
- TLabel *Label1;
- TLabel *Label2;
- TLabel *Label3;
- TEdit *EditMjpgRate;
- TEdit *EditSyncAddr;
- TEdit *EditSyncPort;
- void __fastcall FormShow(TObject *Sender);
- void __fastcall BtnOkClick(TObject *Sender);
-private: // [U[錾
-public: // [U[錾
- __fastcall TVideoPlayerOptDialog(TComponent* Owner);
-};
-//---------------------------------------------------------------------------
-extern PACKAGE TVideoPlayerOptDialog *VideoPlayerOptDialog;
-//---------------------------------------------------------------------------
-#endif
diff --git a/app/srctblbrows/clean.bat b/app/srctblbrows/clean.bat
deleted file mode 100644
index 28a7f15c5..000000000
--- a/app/srctblbrows/clean.bat
+++ /dev/null
@@ -1,16 +0,0 @@
-del Release_Build\*.obj
-del Release_Build\*.tds
-del Release_Build\*.exe
-del Release_Build\*.il*
-del Release_Build\*.map
-del Release_Build\*.ini
-del Release_Build\*.o
-del Release_Build\*.d
-del Debug_Build\*.obj
-del Debug_Build\*.tds
-del Debug_Build\*.exe
-del Debug_Build\*.il*
-del Debug_Build\*.map
-del Debug_Build\*.ini
-del Debug_Build\*.o
-del Debug_Build\*.d
diff --git a/app/srctblbrows/install.bat b/app/srctblbrows/install.bat
deleted file mode 100644
index e9f6cc41f..000000000
--- a/app/srctblbrows/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\srctblbrows.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/srctblbrows/srctblbrows.cbproj.local b/app/srctblbrows/srctblbrows.cbproj.local
deleted file mode 100644
index 80c88cb79..000000000
--- a/app/srctblbrows/srctblbrows.cbproj.local
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- 2014/08/26 09:33:43.000.561,=D:\proj\RTKLIB\src\rcv\rt17.c
- 2016/01/23 12:00:41.000.909,=D:\proj\RTKLIB\src\rcv\septentrio.c
- 2016/07/05 15:27:38.000.492,=D:\proj\RTKLIB\src\rcv\cmr.c
- 2017/05/26 21:05:48.000.275,=D:\proj\RTKLIB\src\rcv\tersus.c
-
-
diff --git a/app/srctblbrows/srctblbrows.res b/app/srctblbrows/srctblbrows.res
deleted file mode 100644
index d62575ae0..000000000
Binary files a/app/srctblbrows/srctblbrows.res and /dev/null differ
diff --git a/app/str2str/run_cast.sh b/app/str2str/run_cast.sh
deleted file mode 100644
index 8b88bbe5d..000000000
--- a/app/str2str/run_cast.sh
+++ /dev/null
@@ -1,86 +0,0 @@
-#!/bin/sh
-#
-# run_cast.sh: script to run NTRIP caster by STR2STR
-#
-# Copyright (C) 2007-2016 by T.TAKASU, All rights reserved.
-#
-# version : $Revision:$ $Date:$
-# history : 2016/09/06 1.0 new
-#
-
-# NTRIP caster program
-#cast=str2str
-cast=./gcc/str2str
-
-# NTRIP caster options
-#svr_port=80 # server port
-svr_port=2102 # server port
-cli_port=2101 # client port
-svr_pwd=test # server password
-cli_usr=guest # client user
-cli_pwd=test # client password
-tbl=./srctbl.txt # source table
-logdir=./log # log directory
-level=3 # trace level (0: no trace)
-
-# NTRIP caster logs
-log1=$logdir/cast_trac_`date -u +%Y%m%d_%H%M%S`.log
-log2=$logdir/cast_stat_`date -u +%Y%m%d_%H%M%S`.log
-
-# start NTRIP caster
-start_cast()
-{
- mkdir -p $logdir
- inp=ntripc_s://:${svr_pwd}@:${svr_port}
- out=ntripc_c://${cli_usr}:${cli_pwd}@:${cli_port}
- opt="-ft $tbl -fl $log1 -t $level"
- ${cast} -in $inp -out $out $opt > $log2 2>&1 < /dev/null &
- if [ $? != 0 ] ; then echo "ntrip caster start error"; exit 1; fi
- echo "ntrip caster started: $!"
- echo "ntrip caster log to $log1"
- echo "ntrip caster log to $log2"
-}
-
-# stop NTRIP caster
-stop_cast()
-{
- echo -n "ntrip caster stopped:"
- ps -A | grep str2str | while read pid s; do kill $pid; echo -n " $pid"; done
- echo
-}
-
-# reload source table
-reload_cast()
-{
- echo -n "ntrip caster reload:"
- ps -A | grep str2str | while read pid s; do kill -s USR2 $pid; echo -n " $pid"; done
- echo
-}
-
-# get status of NRTIP caster
-if ps -A | grep str2str > /dev/null; then stat=running; else stat=stopped; fi
-
-# handle commands
-case "$1" in
- start) # start NTRIP caster
- if [ $stat = running ] ; then echo "ntrip caster $stat"; exit 1; fi
- start_cast
- ;;
- stop) # stop NTRIP caster
- if [ $stat = stopped ] ; then echo "ntrip caster $stat"; exit 1; fi
- stop_cast
- ;;
- restart) # restart NTRIP caster
- stop_cast; sleep 1; start_cast
- ;;
- reload) # reload source table
- reload_cast
- ;;
- status) # get status of NTRIP caster
- echo "ntrip caster $stat"
- ;;
- *)
- echo "usage: run_cast.sh [start|stop|restart|reload|status]"
- ;;
-esac
-
diff --git a/app/str2str/srctbl.txt b/app/str2str/srctbl.txt
deleted file mode 100644
index 63e4fd198..000000000
--- a/app/str2str/srctbl.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-CAS;localhost;80;TEST;TEST;0;JPN;40.00;140.00;RTKLIB NTRIP Caster
-NET;TEST;TEST;B;N;http://test.test.test/test/;none;master@ntrip.test.test;none
-STR;TEST1;Test1;RAW;RXM(1);1;GPS+GLO+GAL+QZS+BDS;TEST;JPN;40.00;140.00;0;0;receiver1;none;B;N;3600;none
-STR;TEST2;Test2;RTCM3;1005(1),1077(1),1087(1),1097(1),1117(1),1127(1);1;GPS+GLO+GAL+QZS+BDS;TEST;JPN;40.00;140.00;0;0;receiver2;none;B;N;3600;none
-STR;TEST3;Test3;RTCM3;1005(1),1077(1),1087(1),1097(1),1117(1),1127(1);1;GPS+GLO+GAL+QZS+BDS;TEST;JPN;40.00;140.00;0;0;receiver3;none;B;N;3600;none
-STR;TEST4;Test4;RTCM3;1005(1),1077(1),1087(1),1097(1),1117(1),1127(1);1;GPS+GLO+GAL+QZS+BDS;TEST;JPN;40.00;140.00;0;0;receiver4;none;B;N;3600;none
-STR;TEST5;Test5;RTCM3;1005(1),1077(1),1087(1),1097(1),1117(1),1127(1);1;GPS+GLO+GAL+QZS+BDS;TEST;JPN;40.00;140.00;0;0;receiver5;none;B;N;3600;none
-ENDSOURCETABLE
diff --git a/app/strsvr/clean.bat b/app/strsvr/clean.bat
deleted file mode 100644
index 28a7f15c5..000000000
--- a/app/strsvr/clean.bat
+++ /dev/null
@@ -1,16 +0,0 @@
-del Release_Build\*.obj
-del Release_Build\*.tds
-del Release_Build\*.exe
-del Release_Build\*.il*
-del Release_Build\*.map
-del Release_Build\*.ini
-del Release_Build\*.o
-del Release_Build\*.d
-del Debug_Build\*.obj
-del Debug_Build\*.tds
-del Debug_Build\*.exe
-del Debug_Build\*.il*
-del Debug_Build\*.map
-del Debug_Build\*.ini
-del Debug_Build\*.o
-del Debug_Build\*.d
diff --git a/app/strsvr/install.bat b/app/strsvr/install.bat
deleted file mode 100644
index 6aaaa08bc..000000000
--- a/app/strsvr/install.bat
+++ /dev/null
@@ -1 +0,0 @@
-copy Release_Build\strsvr.exe ..\..\..\RTKLIB_bin\bin
diff --git a/app/strsvr/strsvr.cbproj b/app/strsvr/strsvr.cbproj
deleted file mode 100644
index c6fb45143..000000000
--- a/app/strsvr/strsvr.cbproj
+++ /dev/null
@@ -1,1201 +0,0 @@
-
-
- {6CC55884-96E0-4A72-9A4A-8E61C5FF5950}
- CppVCLApplication
- strsvr.cpp
- True
- Release
- VCL
- 18.6
- Win32
- 1
- Application
-
-
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Cfg_1
- true
- true
-
-
- true
- Base
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- Cfg_2
- true
- true
-
-
- true
- false
- false
- false
- false
- false
- false
- false
- strsvr
- ..\..\src\rcv\;..\appcmn\;..\..\src\;$(IncludePath)
- ..\..\src\rcv\;..\appcmn\;..\..\src\;$(ILINK_LibraryPath)
- false
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
- false
- false
- Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- None
- strsvr_Icon.ico
- 1041
- None
- false
- true
- ..\..\src\rcv;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\extlex;..\..\qzslex;..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(DCC_ObjPath)
- vclx.bpi;vcl.bpi;$(PackageImports)
- Windows
- ..\..\src\rcv;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
- false
- true
- ..\..\extlex;..\..\qzslex;..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\extlex;..\..\qzslex;..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(ILINK_ObjectSearchPath)
- false
- rtl.lib;vcl.lib;vclx.lib
- ..\..\extlex;..\..\qzslex;..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\extlex;..\..\qzslex;..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(DCC_ResourcePath)
- JPHNE
-
-
- true
- exe
- _RTLDLL;WIN32;TRACE;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;$(TASM_Defines)
- -tWM
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENACMP;NFREQ=3;NEXOBS=3;$(BCC_Defines)
- -x 2
- $(BDSINCLUDE)\windows\vcl;$(IncludePath)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
- $(BDS)\bin\default_app.manifest
- 1033
- true
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- _RTLDLL;WIN32;TRACE;$(TASM_Defines)
- _RTLDLL;WIN32;TRACE;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENACMP;NFREQ=3;NEXOBS=3;$(BCC_Defines)
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
- $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
-
-
- -V
- DEBUG;$(DCC_Define);$(DCC_Define)
- Debug_Build
- true
- true
- true
- true
- false
- Full
- true
- $(BDS)\lib\debug;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
- true
- true
-
-
- -tWM -k
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
- true
- rtl.lib;vcl.lib;vclx.lib
- 1033
-
-
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
-
-
- -$O+
- Release_Build
- None
- true
- $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
-
-
- true
- -tWM -r
- NDEBUG;$(BCC_Defines);$(BCC_Defines)
- true
- $(BDS)\bin\default_app.manifest
- 1033
- rtl.lib;vcl.lib;vclx.lib
- Debug
-
-
- NDEBUG;$(BCC_Defines);$(BCC_Defines)
-
-
-
- 31
-
- ..\appcmn\aboutdlg.h
- 11
-
-
- 6
-
- ..\appcmn\cmdoptdlg.h
- 20
-
-
-
- ..\appcmn\confdlg.h
- 38
-
-
- 7
-
- ..\appcmn\fileoptdlg.h
- 19
-
-
- 9
-
- ..\appcmn\ftpoptdlg.h
- 29
-
-
- 24
-
- ..\appcmn\keydlg.h
- 2
-
-
- 28
-
- ..\appcmn\refdlg.h
- 14
-
-
- 8
-
- ..\appcmn\serioptdlg.h
- 30
-
-
- 22
-
- ..\appcmn\tcpoptdlg.h
- 0
-
-
-
- dfm
- ..\appcmn\viewer.h
- 39
-
-
-
- dfm
- ..\appcmn\vieweropt.h
- 40
-
-
- 9
-
- convdlg.h
- 29
-
-
-
- mondlg.h
- 38
-
-
- -1
- 0
-
-
- -1
- 1
-
-
- 24
-
- svrmain.h
- 2
-
-
- 5
-
- svroptdlg.h
- 17
-
-
- 25
- 13
-
-
- 33
-
-
- 16
-
-
- 36
-
-
- 38
-
-
- 27
-
-
- 28
-
-
- 29
-
-
- 30
-
-
- 31
-
-
- 36
-
-
- 37
-
-
- 33
-
-
- 34
-
-
- 41
-
-
- 35
-
-
- 31
-
-
- 32
-
-
- 33
-
-
- 34
-
-
- 3
- 23
-
-
- 21
- 1
-
-
- 26
- 12
-
-
- 4
- 18
-
-
- 26
- 12
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cfg_2
- Base
-
-
- Base
-
-
- Cfg_1
- Base
-
-
-
-
- CPlusPlusBuilder.Personality.12
- CppVCLApplication
-
-
-
- False
- False
- 1
- 0
- 0
- 0
- False
- False
- False
- False
- False
- 1041
- 932
-
-
-
-
- 1.0.0.0
-
-
-
-
-
- 1.0.0.0
-
-
-
-
-
-
- -t NovAtel
-
- False
-
-
-
-
-
-
- False
-
- False
-
- True
- False
-
-
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
-
-
- False
- True
- True
- False
-
-
- strsvr.cpp
-
-
-
- True
- False
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- strsvr.exe
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- classes
- 1
-
-
-
-
- res\xml
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- library\lib\armeabi
- 1
-
-
-
-
- library\lib\mips
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\values
- 1
-
-
-
-
- res\values-v21
- 1
-
-
-
-
- res\drawable
- 1
-
-
-
-
- res\drawable-xxhdpi
- 1
-
-
-
-
- res\drawable-ldpi
- 1
-
-
-
-
- res\drawable-mdpi
- 1
-
-
-
-
- res\drawable-hdpi
- 1
-
-
-
-
- res\drawable-xhdpi
- 1
-
-
-
-
- res\drawable-small
- 1
-
-
-
-
- res\drawable-normal
- 1
-
-
-
-
- res\drawable-large
- 1
-
-
-
-
- res\drawable-xlarge
- 1
-
-
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- Contents\MacOS
- 1
- .framework
-
-
- Contents\MacOS
- 1
- .framework
-
-
- 0
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .dll;.bpl
-
-
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- Contents\MacOS
- 1
- .dylib
-
-
- 0
- .bpl
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- Contents\Resources\StartUp\
- 0
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- 1
-
-
- 1
-
-
- 1
-
-
-
-
- ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
- 1
-
-
-
-
- ..\
- 1
-
-
- ..\
- 1
-
-
-
-
- Contents
- 1
-
-
- Contents
- 1
-
-
-
-
- Contents\Resources
- 1
-
-
- Contents\Resources
- 1
-
-
-
-
- library\lib\armeabi-v7a
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- 1
-
-
- Contents\MacOS
- 1
-
-
- Contents\MacOS
- 1
-
-
- 0
-
-
-
-
- 1
-
-
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
- Assets
- 1
-
-
- Assets
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
- 12
-
-
-
-
-
diff --git a/app/strsvr/strsvr.cbproj.local b/app/strsvr/strsvr.cbproj.local
deleted file mode 100644
index cffd1e0fe..000000000
--- a/app/strsvr/strsvr.cbproj.local
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
- 2014/08/26 09:32:29.000.219,=D:\proj\RTKLIB\src\rcv\rt17.c
- 2016/01/23 12:02:38.000.380,=D:\proj\RTKLIB\src\rcv\septentrio.c
- 2016/07/05 15:25:56.000.277,=D:\proj\RTKLIB\src\rcv\cmr.c
- 2016/08/29 10:22:55.000.765,D:\proj\RTKLIB\app\appcmn\confdlg.cpp=
- 2016/08/29 10:24:25.000.364,D:\proj\RTKLIB\app\appcmn\console.cpp=
- 2016/08/29 10:24:36.000.174,=D:\proj\RTKLIB\app\strsvr\console.cpp
- 2016/08/29 10:28:48.000.810,D:\proj\RTKLIB\app\strsvr\test.cpp=D:\proj\RTKLIB\app\strsvr\console.cpp
- 2016/08/29 10:28:48.000.810,D:\proj\RTKLIB\app\strsvr\test.dfm=D:\proj\RTKLIB\app\strsvr\console.dfm
- 2016/08/29 10:28:48.000.810,D:\proj\RTKLIB\app\strsvr\test.h=D:\proj\RTKLIB\app\strsvr\console.h
- 2016/08/29 10:28:57.000.846,D:\proj\RTKLIB\app\strsvr\strmon.h=D:\proj\RTKLIB\app\strsvr\test.h
- 2016/08/29 10:28:57.000.846,D:\proj\RTKLIB\app\strsvr\strmon.cpp=D:\proj\RTKLIB\app\strsvr\test.cpp
- 2016/08/29 10:28:57.000.846,D:\proj\RTKLIB\app\strsvr\strmon.dfm=D:\proj\RTKLIB\app\strsvr\test.dfm
- 2016/08/29 10:29:27.000.362,D:\proj\RTKLIB\app\strsvr\mondlg.cpp=D:\proj\RTKLIB\app\strsvr\strmon.cpp
- 2016/08/29 10:29:27.000.362,D:\proj\RTKLIB\app\strsvr\mondlg.dfm=D:\proj\RTKLIB\app\strsvr\strmon.dfm
- 2016/08/29 10:29:27.000.362,D:\proj\RTKLIB\app\strsvr\mondlg.h=D:\proj\RTKLIB\app\strsvr\strmon.h
- 2016/08/29 11:03:58.000.387,=D:\proj\RTKLIB\app\appcmn\confdlg.cpp
- 2016/08/29 11:14:32.000.316,=D:\proj\RTKLIB\app\strsvr\mondlg.cpp
- 2016/09/24 16:06:03.000.199,=D:\proj\RTKLIB\app\appcmn\viewer.cpp
- 2016/09/24 16:06:03.000.285,=D:\proj\RTKLIB\app\appcmn\vieweropt.cpp
- 2017/05/26 21:08:06.000.920,=D:\proj\RTKLIB\src\rcv\tersus.c
-
-
diff --git a/app/strsvr/svrmain.dfm b/app/strsvr/svrmain.dfm
deleted file mode 100644
index a95905e36..000000000
--- a/app/strsvr/svrmain.dfm
+++ /dev/null
@@ -1,1089 +0,0 @@
-object MainForm: TMainForm
- Left = 0
- Top = 0
- BorderIcons = []
- Caption = 'STRSVR'
- ClientHeight = 233
- ClientWidth = 406
- Color = clWhite
- Constraints.MaxHeight = 271
- Constraints.MaxWidth = 422
- Constraints.MinHeight = 271
- Constraints.MinWidth = 422
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- OldCreateOrder = False
- OnClose = FormClose
- OnCreate = FormCreate
- OnShow = FormShow
- PixelsPerInch = 96
- TextHeight = 13
- object Panel3: TPanel
- Left = 0
- Top = 0
- Width = 406
- Height = 203
- Align = alTop
- BevelOuter = bvNone
- BorderWidth = 1
- TabOrder = 0
- object Panel1: TPanel
- AlignWithMargins = True
- Left = 2
- Top = 30
- Width = 402
- Height = 134
- Margins.Left = 1
- Margins.Top = 1
- Margins.Right = 1
- Margins.Bottom = 1
- Align = alTop
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 0
- object Output3Bps: TLabel
- Left = 335
- Top = 106
- Width = 57
- Height = 13
- Alignment = taRightJustify
- AutoSize = False
- Caption = '0'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Output2Bps: TLabel
- Left = 335
- Top = 82
- Width = 57
- Height = 13
- Alignment = taRightJustify
- AutoSize = False
- Caption = '0'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Output1Bps: TLabel
- Left = 335
- Top = 58
- Width = 57
- Height = 13
- Alignment = taRightJustify
- AutoSize = False
- Caption = '0'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object InputBps: TLabel
- Left = 335
- Top = 24
- Width = 57
- Height = 13
- Alignment = taRightJustify
- AutoSize = False
- Caption = '0'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object LabelInput: TLabel
- Left = 30
- Top = 24
- Width = 43
- Height = 13
- Caption = '(0) Input'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object LabelOutput1: TLabel
- Left = 30
- Top = 58
- Width = 51
- Height = 13
- Caption = '(1) Output'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Label3: TLabel
- Left = 120
- Top = 4
- Width = 24
- Height = 13
- Caption = 'Type'
- end
- object Label4: TLabel
- Left = 182
- Top = 4
- Width = 18
- Height = 13
- Caption = 'Opt'
- end
- object InputByte: TLabel
- Left = 255
- Top = 24
- Width = 77
- Height = 13
- Alignment = taRightJustify
- AutoSize = False
- Caption = '0'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Label6: TLabel
- Left = 305
- Top = 4
- Width = 27
- Height = 13
- Caption = 'Bytes'
- end
- object Label7: TLabel
- Left = 375
- Top = 4
- Width = 17
- Height = 13
- Caption = 'Bps'
- end
- object LabelOutput2: TLabel
- Left = 30
- Top = 82
- Width = 51
- Height = 13
- Caption = '(2) Output'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Output1Byte: TLabel
- Left = 255
- Top = 58
- Width = 77
- Height = 13
- Alignment = taRightJustify
- AutoSize = False
- Caption = '0'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Output2Byte: TLabel
- Left = 255
- Top = 82
- Width = 77
- Height = 13
- Alignment = taRightJustify
- AutoSize = False
- Caption = '0'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Label5: TLabel
- Left = 40
- Top = 4
- Width = 34
- Height = 13
- Caption = 'Stream'
- end
- object LabelOutput3: TLabel
- Left = 30
- Top = 106
- Width = 51
- Height = 13
- Caption = '(3) Output'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Output3Byte: TLabel
- Left = 255
- Top = 106
- Width = 77
- Height = 13
- Alignment = taRightJustify
- AutoSize = False
- Caption = '0'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clBlack
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Label1: TLabel
- Left = 206
- Top = 4
- Width = 21
- Height = 13
- Caption = 'Cmd'
- end
- object Label2: TLabel
- Left = 230
- Top = 4
- Width = 25
- Height = 13
- Caption = 'Conv'
- end
- object Input: TComboBox
- Left = 88
- Top = 20
- Width = 88
- Height = 21
- Style = csDropDownList
- DropDownCount = 16
- ItemIndex = 0
- TabOrder = 1
- Text = 'Serial'
- OnChange = InputChange
- Items.Strings = (
- 'Serial'
- 'TCP Client'
- 'TCP Server'
- 'NTRIP Client'
- 'NTRIP Caster'
- 'UDP Server'
- 'File'
- 'FTP'
- 'HTTP')
- end
- object Output1: TComboBox
- Left = 88
- Top = 54
- Width = 88
- Height = 21
- Style = csDropDownList
- DropDownCount = 16
- TabOrder = 5
- OnChange = Output1Change
- Items.Strings = (
- ''
- 'Serial'
- 'TCP Client'
- 'TCP Server'
- 'NTRIP Server'
- 'NTRIP Caster'
- 'UDP Client'
- 'File')
- end
- object BtnInput: TButton
- Left = 178
- Top = 19
- Width = 25
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 2
- OnClick = BtnInputClick
- end
- object BtnOutput1: TButton
- Left = 178
- Top = 53
- Width = 25
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 6
- OnClick = BtnOutput1Click
- end
- object BtnOutput2: TButton
- Left = 178
- Top = 77
- Width = 25
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 11
- OnClick = BtnOutput2Click
- end
- object IndInput: TPanel
- Left = 10
- Top = 25
- Width = 12
- Height = 12
- BevelInner = bvRaised
- BevelOuter = bvLowered
- ParentBackground = False
- TabOrder = 0
- end
- object Output2: TComboBox
- Left = 88
- Top = 78
- Width = 88
- Height = 21
- Style = csDropDownList
- DropDownCount = 16
- TabOrder = 10
- OnChange = Output2Change
- Items.Strings = (
- ''
- 'Serial'
- 'TCP Client'
- 'TCP Server'
- 'NTRIP Server'
- 'NTRIP Caster'
- 'UDP Client'
- 'File')
- end
- object IndOutput1: TPanel
- Left = 10
- Top = 59
- Width = 12
- Height = 12
- BevelInner = bvRaised
- BevelOuter = bvLowered
- ParentBackground = False
- TabOrder = 4
- end
- object IndOutput2: TPanel
- Left = 10
- Top = 83
- Width = 12
- Height = 12
- BevelInner = bvRaised
- BevelOuter = bvLowered
- ParentBackground = False
- TabOrder = 9
- end
- object Output3: TComboBox
- Left = 88
- Top = 102
- Width = 88
- Height = 21
- Style = csDropDownList
- DropDownCount = 16
- TabOrder = 15
- OnChange = Output3Change
- Items.Strings = (
- ''
- 'Serial'
- 'TCP Client'
- 'TCP Server'
- 'NTRIP Server'
- 'NTRIP Caster'
- 'UDP Client'
- 'File')
- end
- object BtnOutput3: TButton
- Left = 178
- Top = 101
- Width = 25
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 16
- OnClick = BtnOutput3Click
- end
- object IndOutput3: TPanel
- Left = 10
- Top = 107
- Width = 12
- Height = 12
- BevelInner = bvRaised
- BevelOuter = bvLowered
- ParentBackground = False
- TabOrder = 14
- end
- object BtnCmd: TButton
- Left = 204
- Top = 19
- Width = 25
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 3
- OnClick = BtnCmdClick
- end
- object BtnConv1: TButton
- Left = 230
- Top = 53
- Width = 25
- Height = 23
- Caption = '...'
- Enabled = False
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 8
- OnClick = BtnConv1Click
- end
- object BtnConv2: TButton
- Left = 230
- Top = 77
- Width = 25
- Height = 23
- Caption = '...'
- Enabled = False
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 13
- OnClick = BtnConv2Click
- end
- object BtnConv3: TButton
- Left = 230
- Top = 101
- Width = 25
- Height = 23
- Caption = '...'
- Enabled = False
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 18
- OnClick = BtnConv3Click
- end
- object BtnCmd1: TButton
- Left = 204
- Top = 53
- Width = 25
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 7
- OnClick = BtnCmdClick
- end
- object BtnCmd2: TButton
- Left = 204
- Top = 77
- Width = 25
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 12
- OnClick = BtnCmdClick
- end
- object BtnCmd3: TButton
- Left = 204
- Top = 101
- Width = 25
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 17
- OnClick = BtnCmdClick
- end
- end
- object Panel4: TPanel
- AlignWithMargins = True
- Left = 2
- Top = 176
- Width = 402
- Height = 25
- Margins.Left = 1
- Margins.Top = 2
- Margins.Right = 1
- Margins.Bottom = 1
- Align = alClient
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 1
- object Message: TLabel
- Left = 21
- Top = 2
- Width = 341
- Height = 21
- Align = alClient
- Alignment = taCenter
- AutoSize = False
- Caption = 'message area'
- Color = clBtnFace
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentColor = False
- ParentFont = False
- Layout = tlCenter
- ExplicitLeft = 4
- ExplicitTop = 6
- ExplicitWidth = 396
- ExplicitHeight = 13
- end
- object BtnAbout: TSpeedButton
- Left = 381
- Top = 2
- Width = 19
- Height = 21
- Align = alRight
- Caption = '?'
- Flat = True
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- OnClick = BtnAboutClick
- ExplicitTop = 1
- ExplicitHeight = 23
- end
- object BtnStrMon: TSpeedButton
- Left = 2
- Top = 2
- Width = 19
- Height = 21
- Hint = 'Stream Monitor'
- Align = alLeft
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF8080808080
- 80808080808080808080808080808080FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF808080FFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFF808080FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF808080FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFF808080FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFF808080FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF808080FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnStrMonClick
- ExplicitHeight = 19
- end
- object BtnTaskIcon: TSpeedButton
- Left = 362
- Top = 2
- Width = 19
- Height = 21
- Hint = 'Task Tray Icon'
- Align = alRight
- Flat = True
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF787878FFFFFF787878FFFFFF787878FF
- FFFF000000000000000000FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFF000000FFFFFF000000FFFFFFFFFFFF00FFFFFFFFFFFF
- 787878FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000FFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF787878FFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFF787878FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- 787878FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF787878FFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF787878FFFFFF787878FFFFFF787878FF
- FFFF787878FFFFFF787878FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentFont = False
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnTaskIconClick
- ExplicitLeft = 358
- ExplicitHeight = 19
- end
- end
- object Progress: TProgressBar
- AlignWithMargins = True
- Left = 3
- Top = 166
- Width = 400
- Height = 7
- Margins.Left = 2
- Margins.Top = 1
- Margins.Right = 2
- Margins.Bottom = 1
- Align = alTop
- Smooth = True
- MarqueeInterval = 0
- Step = 1
- TabOrder = 2
- end
- object Panel2: TPanel
- AlignWithMargins = True
- Left = 2
- Top = 2
- Width = 402
- Height = 26
- Margins.Left = 1
- Margins.Top = 1
- Margins.Right = 1
- Margins.Bottom = 1
- Align = alTop
- BevelInner = bvRaised
- BevelOuter = bvLowered
- TabOrder = 3
- object Label8: TLabel
- Left = 223
- Top = 5
- Width = 81
- Height = 14
- Caption = 'Connect Time:'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -12
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object ConTime: TLabel
- Left = 324
- Top = 5
- Width = 68
- Height = 14
- Alignment = taRightJustify
- Caption = '0d 00:00:00'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -12
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- object Time: TLabel
- Left = 10
- Top = 5
- Width = 154
- Height = 14
- Caption = '2010/01/01 00:00:00 GPST'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -12
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- end
- end
- end
- object BtnStart: TBitBtn
- Left = 2
- Top = 202
- Width = 133
- Height = 29
- Caption = '&Start'
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF008000008000FFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF0080000080000080
- 00008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- 008000008000008000008000008000008000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFF008000008000008000008000008000008000008000008000
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF00800000800000800000800000800000
- 8000008000008000008000FFFFFFFFFFFF00FFFFFFFFFFFF0080000080000080
- 00008000008000008000008000008000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- 008000008000008000008000008000008000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFF008000008000008000008000FFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF008000008000FFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- TabOrder = 1
- OnClick = BtnStartClick
- end
- object BtnStop: TBitBtn
- Left = 2
- Top = 202
- Width = 133
- Height = 29
- Caption = 'S&top'
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF0000000000
- 00000000000000000000000000000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFF000000000000000000000000000000000000000000FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000000
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF00000000000000000000000000
- 0000000000000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFF0000000000
- 00000000000000000000000000000000FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFF000000000000000000000000000000000000000000FFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000000
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- TabOrder = 2
- Visible = False
- OnClick = BtnStopClick
- end
- object BtnOpt: TBitBtn
- Left = 137
- Top = 202
- Width = 132
- Height = 29
- Caption = '&Options...'
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F0000007F7F7FFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFC3C3C3000000C3C3C37F7F7F0000007F
- 7F7FC3C3C3000000C3C3C3FFFFFFFFFFFF00FFFFFFFFFFFF0000000000000000
- 00000000000000000000000000000000000000FFFFFFFFFFFF00FFFFFFFFFFFF
- C3C3C30000000000007F7F7F7F7F7F7F7F7F000000000000C3C3C3FFFFFFFFFF
- FF00FFFFFF7F7F7F7F7F7F0000007F7F7FC3C3C3FFFFFFC3C3C37F7F7F000000
- 7F7F7F7F7F7FFFFFFF00FFFFFF0000000000000000007F7F7FFFFFFFFFFFFFFF
- FFFF7F7F7F000000000000000000FFFFFF00FFFFFF7F7F7F7F7F7F0000007F7F
- 7FC3C3C3FFFFFFC3C3C37F7F7F0000007F7F7F7F7F7FFFFFFF00FFFFFFFFFFFF
- C3C3C30000000000007F7F7F7F7F7F7F7F7F000000000000C3C3C3FFFFFFFFFF
- FF00FFFFFFFFFFFF000000000000000000000000000000000000000000000000
- 000000FFFFFFFFFFFF00FFFFFFFFFFFFC3C3C3000000C3C3C37F7F7F0000007F
- 7F7FC3C3C3000000C3C3C3FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF7F7F7F0000007F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- TabOrder = 3
- OnClick = BtnOptClick
- end
- object BtnExit: TBitBtn
- Left = 271
- Top = 202
- Width = 133
- Height = 29
- Caption = 'E&xit'
- TabOrder = 4
- OnClick = BtnExitClick
- end
- object Timer1: TTimer
- Interval = 50
- OnTimer = Timer1Timer
- Left = 68
- Top = 159
- end
- object Timer2: TTimer
- Interval = 100
- OnTimer = Timer2Timer
- Left = 98
- Top = 160
- end
- object PopupMenu: TPopupMenu
- Left = 187
- Top = 161
- object MenuExpand: TMenuItem
- Caption = 'E&xpand'
- OnClick = MenuExpandClick
- end
- object N2: TMenuItem
- Caption = '-'
- end
- object MenuStart: TMenuItem
- Caption = '&Start'
- OnClick = MenuStartClick
- end
- object MenuStop: TMenuItem
- Caption = '&Stop'
- Enabled = False
- OnClick = MenuStopClick
- end
- object N1: TMenuItem
- Caption = '-'
- end
- object MenuExit: TMenuItem
- Caption = '&Exit'
- OnClick = MenuExitClick
- end
- end
- object TrayIcon: TTrayIcon
- Hint = 'Stream Server'
- Icon.Data = {
- 0000010001001010000001000800680500001600000028000000100000002000
- 0000010008000000000040010000000000000000000000000000000000000000
- 0000000080000080000000808000800000008000800080800000C0C0C000C0DC
- C000F0CAA6000020400000206000002080000020A0000020C0000020E0000040
- 0000004020000040400000406000004080000040A0000040C0000040E0000060
- 0000006020000060400000606000006080000060A0000060C0000060E0000080
- 0000008020000080400000806000008080000080A0000080C0000080E00000A0
- 000000A0200000A0400000A0600000A0800000A0A00000A0C00000A0E00000C0
- 000000C0200000C0400000C0600000C0800000C0A00000C0C00000C0E00000E0
- 000000E0200000E0400000E0600000E0800000E0A00000E0C00000E0E0004000
- 0000400020004000400040006000400080004000A0004000C0004000E0004020
- 0000402020004020400040206000402080004020A0004020C0004020E0004040
- 0000404020004040400040406000404080004040A0004040C0004040E0004060
- 0000406020004060400040606000406080004060A0004060C0004060E0004080
- 0000408020004080400040806000408080004080A0004080C0004080E00040A0
- 000040A0200040A0400040A0600040A0800040A0A00040A0C00040A0E00040C0
- 000040C0200040C0400040C0600040C0800040C0A00040C0C00040C0E00040E0
- 000040E0200040E0400040E0600040E0800040E0A00040E0C00040E0E0008000
- 0000800020008000400080006000800080008000A0008000C0008000E0008020
- 0000802020008020400080206000802080008020A0008020C0008020E0008040
- 0000804020008040400080406000804080008040A0008040C0008040E0008060
- 0000806020008060400080606000806080008060A0008060C0008060E0008080
- 0000808020008080400080806000808080008080A0008080C0008080E00080A0
- 000080A0200080A0400080A0600080A0800080A0A00080A0C00080A0E00080C0
- 000080C0200080C0400080C0600080C0800080C0A00080C0C00080C0E00080E0
- 000080E0200080E0400080E0600080E0800080E0A00080E0C00080E0E000C000
- 0000C0002000C0004000C0006000C0008000C000A000C000C000C000E000C020
- 0000C0202000C0204000C0206000C0208000C020A000C020C000C020E000C040
- 0000C0402000C0404000C0406000C0408000C040A000C040C000C040E000C060
- 0000C0602000C0604000C0606000C0608000C060A000C060C000C060E000C080
- 0000C0802000C0804000C0806000C0808000C080A000C080C000C080E000C0A0
- 0000C0A02000C0A04000C0A06000C0A08000C0A0A000C0A0C000C0A0E000C0C0
- 0000C0C02000C0C04000C0C06000C0C08000C0C0A000F0FBFF00A4A0A0008080
- 80000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF000707
- 070707070707070707070707070707FFFFFFFFFFFFFFFFFF00000000000007FF
- FFFFFFFFFFFFFFA400FFFFFFFF0007FFFFFFFFFFFFA4A4A4A4FFFFFFFF0007FF
- FFFFFFFFFFA4FFA400FFFFFFFF00000000000000FFA4FFFF00000000000000FF
- FFFFFF00FFA4FFA400FFFFFFFF0000FFFFFFFF00A4A4A4A4A4FFFFFFFF0000FF
- FFFFFF00FFA4FFA400FFFFFFFF00000000000000FFA4FFFF00000000000007FF
- FFFFFFFFFFA4FFA400FFFFFFFF0007FFFFFFFFFFFFA4A4A4A4FFFFFFFF0007FF
- FFFFFFFFFFFFFFA400FFFFFFFF0007FFFFFFFFFFFFFFFFFF0000000000000707
- 0707070707070707070707070707000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000FFFF0000}
- PopupMenu = PopupMenu
- OnDblClick = TrayIconDblClick
- OnMouseDown = TrayIconMouseDown
- Left = 158
- Top = 160
- end
- object ImageList: TImageList
- Left = 128
- Top = 161
- Bitmap = {
- 494C010103000400780010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
- 0000000000003600000028000000400000001000000001002000000000000010
- 000000000000000000000000000000000000C0C0C000C0C0C000C0C0C000C0C0
- C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0
- C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0
- C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0
- C000C0C0C000C0C0C000C0C0C000C0C0C000B4B4B400B4B4B400B4B4B400B4B4
- B400B4B4B400B4B4B400B4B4B400B4B4B400B4B4B400B4B4B400B4B4B400B4B4
- B400B4B4B400B4B4B400B4B4B400B4B4B4000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000000000
- 000000000000000000000000000000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000000000
- 000000000000000000000000000000000000B4B4B400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF008080800000000000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000000000000080
- 000000800000008000000080000000000000B4B4B400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00787878000000000080FF
- 000080FF000080FF000080FF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080800080808000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00808080008080800080808000808080000080
- 000000800000008000000080000000000000B4B4B400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF007878780078787800787878007878780080FF
- 000080FF000080FF000080FF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0080808000FFFFFF008080800000000000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0080808000FFFFFF0080808000000000000080
- 000000800000008000000080000000000000B4B4B400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0078787800FFFFFF00787878000000000080FF
- 000080FF000080FF000080FF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000FFFFFF0080808000FFFFFF00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000FFFFFF0080808000FFFFFF00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000FFFFFF0078787800FFFFFF00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF0000000000FFFFFF0080808000FFFFFF008080800000000000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00000000000000000000800000008000000080
- 00000080000000000000FFFFFF0080808000FFFFFF0080808000000000000080
- 0000008000000080000000800000000000000000000080FF000080FF000080FF
- 000080FF000000000000FFFFFF0078787800FFFFFF00787878000000000080FF
- 000080FF000080FF000080FF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00000000008080800080808000808080008080800080808000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00000000000000000000800000008000000080
- 0000008000000000000080808000808080008080800080808000808080000080
- 0000008000000080000000800000000000000000000080FF000080FF000080FF
- 000080FF000000000000787878007878780078787800787878007878780080FF
- 000080FF000080FF000080FF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF0000000000FFFFFF0080808000FFFFFF008080800000000000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00000000000000000000800000008000000080
- 00000080000000000000FFFFFF0080808000FFFFFF0080808000000000000080
- 0000008000000080000000800000000000000000000080FF000080FF000080FF
- 000080FF000000000000FFFFFF0078787800FFFFFF00787878000000000080FF
- 000080FF000080FF000080FF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000FFFFFF0080808000FFFFFF00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000FFFFFF0080808000FFFFFF00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000000FFFFFF0078787800FFFFFF00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0080808000FFFFFF008080800000000000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0080808000FFFFFF0080808000000000000080
- 000000800000008000000080000000000000B4B4B400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0078787800FFFFFF00787878000000000080FF
- 000080FF000080FF000080FF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080800080808000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00808080008080800080808000808080000080
- 000000800000008000000080000000000000B4B4B400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF007878780078787800787878007878780080FF
- 000080FF000080FF000080FF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF008080800000000000FFFF
- FF00FFFFFF00FFFFFF00FFFFFF0000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000000000000080
- 000000800000008000000080000000000000B4B4B400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00787878000000000080FF
- 000080FF000080FF000080FF0000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000000000
- 000000000000000000000000000000000000C0C0C000FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000000000
- 000000000000000000000000000000000000B4B4B400FFFFFF00FFFFFF00FFFF
- FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000C0C0C000C0C0C000C0C0C000C0C0
- C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0
- C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0
- C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0C000C0C0
- C000C0C0C000C0C0C000C0C0C000C0C0C000B4B4B400B4B4B400B4B4B400B4B4
- B400B4B4B400B4B4B400B4B4B400B4B4B400B4B4B400B4B4B400B4B4B400B4B4
- B400B4B4B400B4B4B400B4B4B400B4B4B4000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 000000000000000000000000000000000000424D3E000000000000003E000000
- 2800000040000000100000000100010000000000800000000000000000000000
- 000000000000000000000000FFFFFF0000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000000000000000000000000000000000000000000000000000
- 0000000000000000FFFFFFFFFFFF000000000000000000000000000000000000
- 000000000000}
- end
-end
diff --git a/app/appcmn/aboutdlg.cpp b/app/winapp/appcmn/aboutdlg.cpp
similarity index 100%
rename from app/appcmn/aboutdlg.cpp
rename to app/winapp/appcmn/aboutdlg.cpp
diff --git a/app/appcmn/aboutdlg.dfm b/app/winapp/appcmn/aboutdlg.dfm
similarity index 99%
rename from app/appcmn/aboutdlg.dfm
rename to app/winapp/appcmn/aboutdlg.dfm
index 8661983e5..a4dc378fb 100644
--- a/app/appcmn/aboutdlg.dfm
+++ b/app/winapp/appcmn/aboutdlg.dfm
@@ -83,10 +83,12 @@ object AboutDialog: TAboutDialog
ParentBackground = False
TabOrder = 0
object Icon1: TImage
- Left = 3
- Top = 7
- Width = 64
- Height = 64
+ Left = 2
+ Top = 2
+ Width = 66
+ Height = 74
+ Align = alClient
+ Center = True
Picture.Data = {
055449636F6E0000010001004040000001001800283200001600000028000000
4000000080000000010018000000000000320000000000000000000000000000
@@ -492,14 +494,19 @@ object AboutDialog: TAboutDialog
040000FFFFFFFFFFFC0000FFFFFFFFFFFC0000FFFFFFFFFFFFF800FFFFFFFFFF
FFFFF9FF}
Proportional = True
- Stretch = True
Visible = False
+ ExplicitLeft = 3
+ ExplicitTop = 7
+ ExplicitWidth = 64
+ ExplicitHeight = 64
end
object Icon2: TImage
- Left = 3
- Top = 7
- Width = 64
- Height = 64
+ Left = 2
+ Top = 2
+ Width = 66
+ Height = 74
+ Align = alClient
+ Center = True
Picture.Data = {
055449636F6E0000010001004040000001001800283200001600000028000000
4000000080000000010018000000000000320000000000000000000000000000
@@ -905,14 +912,19 @@ object AboutDialog: TAboutDialog
0200007FFFFFFFFFFE0000FFFFFFFFFFFE0000FFFFFFFFFFFFFC00FFFFFFFFFF
FFFFF8FF}
Proportional = True
- Stretch = True
Visible = False
+ ExplicitLeft = 3
+ ExplicitTop = 7
+ ExplicitWidth = 64
+ ExplicitHeight = 64
end
object Icon3: TImage
- Left = 3
- Top = 7
- Width = 64
- Height = 64
+ Left = 2
+ Top = 2
+ Width = 66
+ Height = 74
+ Align = alClient
+ Center = True
Picture.Data = {
055449636F6E0000010001004040000001001800283200001600000028000000
4000000080000000010018000000000000320000000000000000000000000000
@@ -1318,14 +1330,19 @@ object AboutDialog: TAboutDialog
000000FFFFFFFFE0060000FFFFFFFFFFFC0000FFFFFFFFFFFC0000FFFFFFFFFF
FFFC00FF}
Proportional = True
- Stretch = True
Visible = False
+ ExplicitLeft = 3
+ ExplicitTop = 7
+ ExplicitWidth = 64
+ ExplicitHeight = 64
end
object Icon4: TImage
- Left = 3
- Top = 7
- Width = 64
- Height = 64
+ Left = 2
+ Top = 2
+ Width = 66
+ Height = 74
+ Align = alClient
+ Center = True
Picture.Data = {
055449636F6E0000010001004040000001001800283200001600000028000000
4000000080000000010018000000000000320000000000000000000000000000
@@ -1731,14 +1748,19 @@ object AboutDialog: TAboutDialog
0000000000000000000000000000000000000000000000000000000000000000
00000000}
Proportional = True
- Stretch = True
Visible = False
+ ExplicitLeft = 3
+ ExplicitTop = 7
+ ExplicitWidth = 64
+ ExplicitHeight = 64
end
object Icon5: TImage
- Left = 3
- Top = 7
- Width = 64
- Height = 64
+ Left = 2
+ Top = 2
+ Width = 66
+ Height = 74
+ Align = alClient
+ Center = True
Picture.Data = {
055449636F6E00000100020040400000010018002832000026000000AFC10000
0100180050A001004E3200002800000040000000800000000100180000000000
@@ -5475,14 +5497,19 @@ object AboutDialog: TAboutDialog
0000000000000000000000000000000000000000000000000000000000000000
00000000}
Proportional = True
- Stretch = True
Visible = False
+ ExplicitLeft = 3
+ ExplicitTop = 7
+ ExplicitWidth = 64
+ ExplicitHeight = 64
end
object Icon6: TImage
- Left = 3
- Top = 7
- Width = 64
- Height = 64
+ Left = 2
+ Top = 2
+ Width = 66
+ Height = 74
+ Align = alClient
+ Center = True
Picture.Data = {
055449636F6E0000010001004040000001000800281600001600000028000000
4000000080000000010008000000000000000000000000000000000000000000
@@ -5664,14 +5691,19 @@ object AboutDialog: TAboutDialog
0000000000000000000000000000000000000000000000000000000000000000
00000000}
Proportional = True
- Stretch = True
Visible = False
+ ExplicitLeft = 3
+ ExplicitTop = 7
+ ExplicitWidth = 64
+ ExplicitHeight = 64
end
object Icon7: TImage
- Left = 3
- Top = 7
- Width = 64
- Height = 64
+ Left = 2
+ Top = 2
+ Width = 66
+ Height = 74
+ Align = alClient
+ Center = True
Picture.Data = {
055449636F6E0000010001004040000001000800281600001600000028000000
4000000080000000010008000000000000000000000000000000000000000000
@@ -5853,14 +5885,19 @@ object AboutDialog: TAboutDialog
0000000000000000000000000000000000000000000000000000000000000000
00000000}
Proportional = True
- Stretch = True
Visible = False
+ ExplicitLeft = 3
+ ExplicitTop = 7
+ ExplicitWidth = 64
+ ExplicitHeight = 64
end
object Icon8: TImage
- Left = 3
- Top = 7
- Width = 64
- Height = 64
+ Left = 2
+ Top = 2
+ Width = 66
+ Height = 74
+ Align = alClient
+ Center = True
Picture.Data = {
055449636F6E0000010001004040000001001800283200001600000028000000
4000000080000000010018000000000000320000000000000000000000000000
@@ -6266,8 +6303,11 @@ object AboutDialog: TAboutDialog
0000000000000000000000000000000000000000000000000000000000000000
00000000}
Proportional = True
- Stretch = True
Visible = False
+ ExplicitLeft = 3
+ ExplicitTop = 7
+ ExplicitWidth = 64
+ ExplicitHeight = 64
end
end
end
diff --git a/app/appcmn/aboutdlg.h b/app/winapp/appcmn/aboutdlg.h
similarity index 100%
rename from app/appcmn/aboutdlg.h
rename to app/winapp/appcmn/aboutdlg.h
diff --git a/app/appcmn/cmdoptdlg.cpp b/app/winapp/appcmn/cmdoptdlg.cpp
similarity index 100%
rename from app/appcmn/cmdoptdlg.cpp
rename to app/winapp/appcmn/cmdoptdlg.cpp
diff --git a/app/appcmn/cmdoptdlg.dfm b/app/winapp/appcmn/cmdoptdlg.dfm
similarity index 100%
rename from app/appcmn/cmdoptdlg.dfm
rename to app/winapp/appcmn/cmdoptdlg.dfm
diff --git a/app/appcmn/cmdoptdlg.h b/app/winapp/appcmn/cmdoptdlg.h
similarity index 100%
rename from app/appcmn/cmdoptdlg.h
rename to app/winapp/appcmn/cmdoptdlg.h
diff --git a/app/appcmn/confdlg.cpp b/app/winapp/appcmn/confdlg.cpp
similarity index 100%
rename from app/appcmn/confdlg.cpp
rename to app/winapp/appcmn/confdlg.cpp
diff --git a/app/appcmn/confdlg.dfm b/app/winapp/appcmn/confdlg.dfm
similarity index 90%
rename from app/appcmn/confdlg.dfm
rename to app/winapp/appcmn/confdlg.dfm
index 6ad9316e1..5a0d05ec0 100644
--- a/app/appcmn/confdlg.dfm
+++ b/app/winapp/appcmn/confdlg.dfm
@@ -5,8 +5,8 @@ object ConfDialog: TConfDialog
BorderStyle = bsDialog
Caption = 'Confirmation'
ClientHeight = 95
- ClientWidth = 315
- Color = clBtnFace
+ ClientWidth = 335
+ Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
@@ -19,7 +19,7 @@ object ConfDialog: TConfDialog
object Label1: TLabel
Left = 4
Top = 8
- Width = 305
+ Width = 325
Height = 13
Alignment = taCenter
AutoSize = False
@@ -28,7 +28,7 @@ object ConfDialog: TConfDialog
object Label2: TLabel
Left = 4
Top = 24
- Width = 305
+ Width = 325
Height = 37
Alignment = taCenter
AutoSize = False
@@ -41,8 +41,8 @@ object ConfDialog: TConfDialog
WordWrap = True
end
object BtnOverwrite: TButton
- Left = 82
- Top = 65
+ Left = 91
+ Top = 63
Width = 75
Height = 29
Caption = '&Overwrite'
@@ -56,8 +56,8 @@ object ConfDialog: TConfDialog
TabOrder = 1
end
object BtnCancel: TButton
- Left = 158
- Top = 65
+ Left = 169
+ Top = 63
Width = 75
Height = 29
Caption = '&Cancel'
diff --git a/app/appcmn/confdlg.h b/app/winapp/appcmn/confdlg.h
similarity index 100%
rename from app/appcmn/confdlg.h
rename to app/winapp/appcmn/confdlg.h
diff --git a/app/appcmn/console.cpp b/app/winapp/appcmn/console.cpp
similarity index 95%
rename from app/appcmn/console.cpp
rename to app/winapp/appcmn/console.cpp
index bc4e99f93..fb8019c5e 100644
--- a/app/appcmn/console.cpp
+++ b/app/winapp/appcmn/console.cpp
@@ -9,7 +9,7 @@
#pragma package(smart_init)
#pragma resource "*.dfm"
-#define MAXLEN 200
+#define MAXLEN 256
#define MAXLINE 2048
#define TOPMARGIN 2
#define LEFTMARGIN 3
@@ -96,14 +96,16 @@ void __fastcall TConsole::BtnDownClick(TObject *Sender)
Console->Invalidate();
}
//---------------------------------------------------------------------------
-void __fastcall TConsole::AddMsg(unsigned char *msg, int n)
+void __fastcall TConsole::AddMsg(uint8_t *msg, int n)
{
+ AnsiString str;
char buff[MAXLEN+16],*p=buff,c;
int mode=BtnAsc->Down;
if (n<=0||Stop) return;
- p+=sprintf(p,"%s",ConBuff->Strings[ConBuff->Count-1].c_str());
+ str=ConBuff->Strings[ConBuff->Count-1];
+ p+=sprintf(p,"%s",str.c_str());
for (int i=0;iCaption=Opt?"TimeTag":"Time";
+ Label1 ->Visible=Opt!=2;
+ PathEnable->Visible=Opt==2;
+ PathEnable->Checked=Opt!=2||PathEna;
TimeSpeed->Visible=!Opt;
TimeStart->Visible=!Opt;
- Chk64Bit ->Visible=!Opt;
Label1 ->Caption=Opt?"Output File Path":"Input File Path";
Label2 ->Visible=!Opt;
Label3 ->Visible=!Opt;
@@ -39,7 +42,7 @@ void __fastcall TFileOptDialog::FormShow(TObject *Sender)
ChkTimeTag->Checked=false;
SwapIntv ->Text="";
if (!Opt) { // input
- for (p=buff;p=strstr(p,"::");p+=2) {
+ for (p=buff;(p=strstr(p,"::"));p+=2) {
if (*(p+2)=='T') ChkTimeTag->Checked=true;
else if (*(p+2)=='+') sscanf(p+2,"+%lf",&start);
else if (*(p+2)=='x') sscanf(p+2,"x%lf",&speed);
@@ -54,7 +57,7 @@ void __fastcall TFileOptDialog::FormShow(TObject *Sender)
FilePath->Text=buff;
}
else { // output
- for (p=buff;p=strstr(p,"::");p+=2) {
+ for (p=buff;(p=strstr(p,"::"));p+=2) {
if (*(p+2)=='T') ChkTimeTag->Checked=true;
else if (*(p+2)=='S') sscanf(p+2,"S=%lf",&intv);
}
@@ -86,6 +89,7 @@ void __fastcall TFileOptDialog::BtnOkClick(TObject *Sender)
if (sscanf(str.c_str(),"%lf",&swap)>=1) {
Path+="::S="+str;
}
+ PathEna=PathEnable->Checked;
}
}
//---------------------------------------------------------------------------
@@ -115,11 +119,18 @@ void __fastcall TFileOptDialog::BtnKeyClick(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TFileOptDialog::UpdateEnable(void)
{
+ FilePath ->Enabled=PathEnable->Checked;
+ BtnFilePath->Enabled=PathEnable->Checked;
TimeSpeed->Enabled=ChkTimeTag->Checked;
TimeStart->Enabled=ChkTimeTag->Checked;
Chk64Bit ->Enabled=ChkTimeTag->Checked;
Label2 ->Enabled=ChkTimeTag->Checked;
Label3 ->Enabled=ChkTimeTag->Checked;
+ SwapIntv ->Enabled=PathEnable->Checked;
+ Label4 ->Enabled=PathEnable->Checked;
+ Label5 ->Enabled=PathEnable->Checked;
+ ChkTimeTag->Enabled=PathEnable->Checked;
+ //BtnKey ->Enabled=PathEnable->Checked;
}
//---------------------------------------------------------------------------
diff --git a/app/appcmn/fileoptdlg.dfm b/app/winapp/appcmn/fileoptdlg.dfm
similarity index 82%
rename from app/appcmn/fileoptdlg.dfm
rename to app/winapp/appcmn/fileoptdlg.dfm
index d3453a4f5..d16db9b34 100644
--- a/app/appcmn/fileoptdlg.dfm
+++ b/app/winapp/appcmn/fileoptdlg.dfm
@@ -4,8 +4,8 @@ object FileOptDialog: TFileOptDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'File Options'
- ClientHeight = 77
- ClientWidth = 399
+ ClientHeight = 81
+ ClientWidth = 402
Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -19,7 +19,7 @@ object FileOptDialog: TFileOptDialog
TextHeight = 13
object Label2: TLabel
Left = 109
- Top = 54
+ Top = 56
Width = 8
Height = 13
Caption = '+'
@@ -27,63 +27,54 @@ object FileOptDialog: TFileOptDialog
end
object Label3: TLabel
Left = 175
- Top = 54
+ Top = 56
Width = 5
Height = 13
Caption = 's'
Visible = False
end
object Label5: TLabel
- Left = 178
- Top = 54
+ Left = 173
+ Top = 56
Width = 7
Height = 13
Caption = 'H'
end
object Label4: TLabel
- Left = 78
- Top = 54
+ Left = 73
+ Top = 56
Width = 49
Height = 13
Caption = 'Swap Intv'
end
- object BtnKey: TSpeedButton
- Left = 194
- Top = 50
- Width = 17
- Height = 22
- Caption = '?'
- Flat = True
- OnClick = BtnKeyClick
- end
- object TimeStart: TEdit
- Left = 122
- Top = 50
- Width = 51
- Height = 21
- TabOrder = 5
- Text = '0'
- Visible = False
- end
object Panel1: TPanel
Left = 0
Top = 0
- Width = 399
- Height = 43
+ Width = 402
+ Height = 49
Align = alTop
BevelOuter = bvNone
TabOrder = 2
- ExplicitWidth = 384
object Label1: TLabel
- Left = 8
- Top = 4
+ Left = 7
+ Top = 3
Width = 41
Height = 13
Caption = 'File Path'
end
+ object BtnKey: TSpeedButton
+ Left = 120
+ Top = 0
+ Width = 18
+ Height = 18
+ Caption = '?'
+ Flat = True
+ Spacing = 0
+ OnClick = BtnKeyClick
+ end
object BtnFilePath: TButton
Left = 372
- Top = 17
+ Top = 19
Width = 25
Height = 23
Caption = '...'
@@ -98,15 +89,33 @@ object FileOptDialog: TFileOptDialog
end
object FilePath: TEdit
Left = 6
- Top = 18
+ Top = 20
Width = 365
Height = 21
TabOrder = 1
end
+ object PathEnable: TCheckBox
+ Left = 7
+ Top = 1
+ Width = 100
+ Height = 17
+ Caption = 'Log File Path'
+ TabOrder = 2
+ OnClick = ChkTimeTagClick
+ end
+ end
+ object TimeStart: TEdit
+ Left = 122
+ Top = 52
+ Width = 51
+ Height = 21
+ TabOrder = 5
+ Text = '0'
+ Visible = False
end
object BtnCancel: TButton
Left = 316
- Top = 45
+ Top = 48
Width = 81
Height = 29
Caption = '&Cancel'
@@ -115,7 +124,7 @@ object FileOptDialog: TFileOptDialog
end
object BtnOk: TButton
Left = 232
- Top = 45
+ Top = 48
Width = 81
Height = 29
Caption = '&OK'
@@ -124,8 +133,8 @@ object FileOptDialog: TFileOptDialog
OnClick = BtnOkClick
end
object ChkTimeTag: TCheckBox
- Left = 6
- Top = 52
+ Left = 7
+ Top = 54
Width = 63
Height = 17
Caption = 'Time'
@@ -134,7 +143,7 @@ object FileOptDialog: TFileOptDialog
end
object TimeSpeed: TComboBox
Left = 54
- Top = 50
+ Top = 52
Width = 51
Height = 21
ItemIndex = 3
@@ -151,8 +160,8 @@ object FileOptDialog: TFileOptDialog
'x10')
end
object SwapIntv: TComboBox
- Left = 130
- Top = 50
+ Left = 125
+ Top = 52
Width = 45
Height = 21
DropDownCount = 10
@@ -170,7 +179,7 @@ object FileOptDialog: TFileOptDialog
end
object Chk64Bit: TCheckBox
Left = 186
- Top = 52
+ Top = 54
Width = 41
Height = 17
Caption = '64bit'
diff --git a/app/appcmn/fileoptdlg.h b/app/winapp/appcmn/fileoptdlg.h
similarity index 97%
rename from app/appcmn/fileoptdlg.h
rename to app/winapp/appcmn/fileoptdlg.h
index d1c0e752c..055606788 100644
--- a/app/appcmn/fileoptdlg.h
+++ b/app/winapp/appcmn/fileoptdlg.h
@@ -31,6 +31,7 @@ class TFileOptDialog : public TForm
TSpeedButton *BtnKey;
TOpenDialog *OpenDialog;
TCheckBox *Chk64Bit;
+ TCheckBox *PathEnable;
void __fastcall BtnFilePathClick(TObject *Sender);
void __fastcall BtnOkClick(TObject *Sender);
void __fastcall FormShow(TObject *Sender);
@@ -39,7 +40,7 @@ class TFileOptDialog : public TForm
private:
void __fastcall UpdateEnable(void);
public:
- int Opt;
+ int Opt,PathEna;
AnsiString Path;
__fastcall TFileOptDialog(TComponent* Owner);
};
diff --git a/app/winapp/appcmn/freqdlg.cpp b/app/winapp/appcmn/freqdlg.cpp
new file mode 100644
index 000000000..91c59ade2
--- /dev/null
+++ b/app/winapp/appcmn/freqdlg.cpp
@@ -0,0 +1,16 @@
+//---------------------------------------------------------------------------
+
+#include
+#pragma hdrstop
+
+#include "freqdlg.h"
+//---------------------------------------------------------------------------
+#pragma package(smart_init)
+#pragma resource "*.dfm"
+TFreqDialog *FreqDialog;
+//---------------------------------------------------------------------------
+__fastcall TFreqDialog::TFreqDialog(TComponent* Owner)
+ : TForm(Owner)
+{
+}
+//---------------------------------------------------------------------------
diff --git a/app/winapp/appcmn/freqdlg.dfm b/app/winapp/appcmn/freqdlg.dfm
new file mode 100644
index 000000000..2b2145f54
--- /dev/null
+++ b/app/winapp/appcmn/freqdlg.dfm
@@ -0,0 +1,668 @@
+object FreqDialog: TFreqDialog
+ Left = 0
+ Top = 0
+ BorderStyle = bsDialog
+ Caption = 'GNSS Signals'
+ ClientHeight = 198
+ ClientWidth = 296
+ Color = clWhite
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ Position = poMainFormCenter
+ PixelsPerInch = 96
+ TextHeight = 13
+ object BtnOk: TButton
+ Left = 214
+ Top = 166
+ Width = 72
+ Height = 29
+ Caption = '&OK'
+ ModalResult = 1
+ TabOrder = 0
+ end
+ object Panel1: TPanel
+ Left = 0
+ Top = 0
+ Width = 280
+ Height = 22
+ BevelOuter = bvNone
+ TabOrder = 1
+ object Panel15: TPanel
+ Left = 240
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L5'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 0
+ ExplicitLeft = 250
+ end
+ object Panel16: TPanel
+ Left = 200
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L4'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 1
+ ExplicitLeft = 208
+ end
+ object Panel17: TPanel
+ Left = 120
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L2'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 2
+ ExplicitLeft = 168
+ end
+ object Panel18: TPanel
+ Left = 80
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L1'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ ExplicitLeft = 128
+ end
+ object Panel19: TPanel
+ Left = 160
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L3'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 4
+ ExplicitLeft = 168
+ end
+ end
+ object Panel2: TPanel
+ Left = 0
+ Top = 26
+ Width = 280
+ Height = 22
+ BevelOuter = bvNone
+ TabOrder = 2
+ object Label3: TLabel
+ Left = 16
+ Top = 4
+ Width = 19
+ Height = 13
+ Caption = 'GPS'
+ end
+ object Panel10: TPanel
+ Left = 240
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 0
+ ExplicitLeft = 250
+ end
+ object Panel11: TPanel
+ Left = 80
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L1'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 1
+ ExplicitLeft = 120
+ end
+ object Panel12: TPanel
+ Left = 120
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L2'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 2
+ ExplicitLeft = 150
+ end
+ object Panel13: TPanel
+ Left = 160
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L5'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ ExplicitLeft = 180
+ end
+ object Panel14: TPanel
+ Left = 200
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 4
+ ExplicitLeft = 210
+ end
+ end
+ object Panel3: TPanel
+ Left = 0
+ Top = 44
+ Width = 280
+ Height = 22
+ BevelOuter = bvNone
+ TabOrder = 3
+ object Label5: TLabel
+ Left = 16
+ Top = 4
+ Width = 46
+ Height = 13
+ Caption = 'GLONASS'
+ end
+ object Panel20: TPanel
+ Left = 240
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 0
+ ExplicitLeft = 250
+ end
+ object Panel21: TPanel
+ Left = 200
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 1
+ ExplicitLeft = 208
+ end
+ object Panel22: TPanel
+ Left = 120
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'G2/a'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 2
+ ExplicitLeft = 168
+ end
+ object Panel23: TPanel
+ Left = 80
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'G1/a'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ ExplicitLeft = 128
+ end
+ object Panel24: TPanel
+ Left = 160
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'G3'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 4
+ ExplicitLeft = 168
+ end
+ end
+ object Panel4: TPanel
+ Left = -1
+ Top = 64
+ Width = 280
+ Height = 22
+ BevelOuter = bvNone
+ TabOrder = 4
+ object Label7: TLabel
+ Left = 16
+ Top = 4
+ Width = 31
+ Height = 13
+ Caption = 'Galileo'
+ end
+ object Panel25: TPanel
+ Left = 240
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'E5a+b'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 0
+ ExplicitLeft = 250
+ end
+ object Panel26: TPanel
+ Left = 200
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'E6'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 1
+ ExplicitLeft = 208
+ end
+ object Panel27: TPanel
+ Left = 120
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'E5b'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 2
+ ExplicitLeft = 168
+ end
+ object Panel28: TPanel
+ Left = 80
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'E1'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ ExplicitLeft = 128
+ end
+ object Panel29: TPanel
+ Left = 160
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'E5a'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 4
+ ExplicitLeft = 168
+ end
+ end
+ object Panel5: TPanel
+ Left = 0
+ Top = 84
+ Width = 280
+ Height = 22
+ BevelOuter = bvNone
+ TabOrder = 5
+ object Label9: TLabel
+ Left = 16
+ Top = 4
+ Width = 26
+ Height = 13
+ Caption = 'QZSS'
+ end
+ object Panel30: TPanel
+ Left = 240
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 0
+ ExplicitLeft = 250
+ end
+ object Panel31: TPanel
+ Left = 200
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L6'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 1
+ ExplicitLeft = 208
+ end
+ object Panel32: TPanel
+ Left = 120
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L2'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 2
+ ExplicitLeft = 168
+ end
+ object Panel33: TPanel
+ Left = 80
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L1'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ ExplicitLeft = 128
+ end
+ object Panel34: TPanel
+ Left = 160
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L5'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 4
+ ExplicitLeft = 168
+ end
+ end
+ object Panel6: TPanel
+ Left = 0
+ Top = 104
+ Width = 280
+ Height = 22
+ BevelOuter = bvNone
+ TabOrder = 6
+ object Label11: TLabel
+ Left = 16
+ Top = 4
+ Width = 19
+ Height = 13
+ Caption = 'BDS'
+ end
+ object Panel35: TPanel
+ Left = 240
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'B2a+b'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 0
+ ExplicitLeft = 250
+ end
+ object Panel36: TPanel
+ Left = 200
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'B3'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 1
+ ExplicitLeft = 208
+ end
+ object Panel37: TPanel
+ Left = 120
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'B2I/b'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 2
+ ExplicitLeft = 168
+ end
+ object Panel38: TPanel
+ Left = 80
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'B1I/C'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ ExplicitLeft = 128
+ end
+ object Panel39: TPanel
+ Left = 160
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'B2a'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 4
+ ExplicitLeft = 168
+ end
+ end
+ object Panel8: TPanel
+ Left = 0
+ Top = 124
+ Width = 280
+ Height = 22
+ BevelOuter = bvNone
+ TabOrder = 8
+ object Label1: TLabel
+ Left = 16
+ Top = 4
+ Width = 30
+ Height = 13
+ Caption = 'NavIC'
+ end
+ object Panel45: TPanel
+ Left = 240
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 0
+ ExplicitLeft = 250
+ end
+ object Panel46: TPanel
+ Left = 200
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 1
+ ExplicitLeft = 208
+ end
+ object Panel47: TPanel
+ Left = 120
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'S'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 2
+ ExplicitLeft = 168
+ end
+ object Panel48: TPanel
+ Left = 80
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L5'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ ExplicitLeft = 128
+ end
+ object Panel49: TPanel
+ Left = 160
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 4
+ ExplicitLeft = 168
+ end
+ end
+ object Panel9: TPanel
+ Left = 0
+ Top = 144
+ Width = 280
+ Height = 22
+ BevelOuter = bvNone
+ TabOrder = 9
+ object Label14: TLabel
+ Left = 16
+ Top = 4
+ Width = 25
+ Height = 13
+ Caption = 'SBAS'
+ end
+ object Panel50: TPanel
+ Left = 240
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 0
+ ExplicitLeft = 250
+ end
+ object Panel51: TPanel
+ Left = 200
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 1
+ ExplicitLeft = 208
+ end
+ object Panel52: TPanel
+ Left = 120
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L5'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 2
+ ExplicitLeft = 168
+ end
+ object Panel53: TPanel
+ Left = 80
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = 'L1'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ ExplicitLeft = 128
+ end
+ object Panel54: TPanel
+ Left = 160
+ Top = 0
+ Width = 40
+ Height = 22
+ Align = alRight
+ BevelOuter = bvNone
+ Caption = '-'
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 4
+ ExplicitLeft = 168
+ end
+ end
+ object Panel7: TPanel
+ Left = 12
+ Top = 24
+ Width = 270
+ Height = 2
+ BevelInner = bvLowered
+ TabOrder = 7
+ end
+end
diff --git a/app/winapp/appcmn/freqdlg.h b/app/winapp/appcmn/freqdlg.h
new file mode 100644
index 000000000..3e4c13fa9
--- /dev/null
+++ b/app/winapp/appcmn/freqdlg.h
@@ -0,0 +1,79 @@
+//---------------------------------------------------------------------------
+
+#ifndef freqdlgH
+#define freqdlgH
+//---------------------------------------------------------------------------
+#include
+#include
+#include
+#include
+#include
+//---------------------------------------------------------------------------
+class TFreqDialog : public TForm
+{
+__published:
+ TButton *BtnOk;
+ TPanel *Panel1;
+ TPanel *Panel2;
+ TLabel *Label3;
+ TPanel *Panel3;
+ TLabel *Label5;
+ TPanel *Panel4;
+ TLabel *Label7;
+ TPanel *Panel5;
+ TLabel *Label9;
+ TPanel *Panel6;
+ TLabel *Label11;
+ TPanel *Panel7;
+ TPanel *Panel8;
+ TLabel *Label1;
+ TPanel *Panel9;
+ TLabel *Label14;
+ TPanel *Panel10;
+ TPanel *Panel11;
+ TPanel *Panel12;
+ TPanel *Panel13;
+ TPanel *Panel14;
+ TPanel *Panel15;
+ TPanel *Panel16;
+ TPanel *Panel17;
+ TPanel *Panel18;
+ TPanel *Panel19;
+ TPanel *Panel20;
+ TPanel *Panel21;
+ TPanel *Panel22;
+ TPanel *Panel23;
+ TPanel *Panel24;
+ TPanel *Panel25;
+ TPanel *Panel26;
+ TPanel *Panel27;
+ TPanel *Panel28;
+ TPanel *Panel29;
+ TPanel *Panel30;
+ TPanel *Panel31;
+ TPanel *Panel32;
+ TPanel *Panel33;
+ TPanel *Panel34;
+ TPanel *Panel35;
+ TPanel *Panel36;
+ TPanel *Panel37;
+ TPanel *Panel38;
+ TPanel *Panel39;
+ TPanel *Panel45;
+ TPanel *Panel46;
+ TPanel *Panel47;
+ TPanel *Panel48;
+ TPanel *Panel49;
+ TPanel *Panel50;
+ TPanel *Panel51;
+ TPanel *Panel52;
+ TPanel *Panel53;
+ TPanel *Panel54;
+private:
+public:
+ __fastcall TFreqDialog(TComponent* Owner);
+};
+//---------------------------------------------------------------------------
+extern PACKAGE TFreqDialog *FreqDialog;
+//---------------------------------------------------------------------------
+#endif
diff --git a/app/appcmn/ftpoptdlg.cpp b/app/winapp/appcmn/ftpoptdlg.cpp
similarity index 100%
rename from app/appcmn/ftpoptdlg.cpp
rename to app/winapp/appcmn/ftpoptdlg.cpp
diff --git a/app/appcmn/ftpoptdlg.dfm b/app/winapp/appcmn/ftpoptdlg.dfm
similarity index 100%
rename from app/appcmn/ftpoptdlg.dfm
rename to app/winapp/appcmn/ftpoptdlg.dfm
diff --git a/app/appcmn/ftpoptdlg.h b/app/winapp/appcmn/ftpoptdlg.h
similarity index 100%
rename from app/appcmn/ftpoptdlg.h
rename to app/winapp/appcmn/ftpoptdlg.h
diff --git a/app/winapp/appcmn/glofcndlg.cpp b/app/winapp/appcmn/glofcndlg.cpp
new file mode 100644
index 000000000..2c70df3f0
--- /dev/null
+++ b/app/winapp/appcmn/glofcndlg.cpp
@@ -0,0 +1,105 @@
+//---------------------------------------------------------------------------
+
+#include
+#pragma hdrstop
+
+#include "rtklib.h"
+#include "glofcndlg.h"
+//---------------------------------------------------------------------------
+#pragma package(smart_init)
+#pragma resource "*.dfm"
+TGloFcnDialog *GloFcnDialog;
+//---------------------------------------------------------------------------
+__fastcall TGloFcnDialog::TGloFcnDialog(TComponent* Owner)
+ : TForm(Owner)
+{
+ EnaGloFcn=0;
+
+ for (int i=0;i<27;i++) {
+ GloFcn[i]=0;
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TGloFcnDialog::FormShow(TObject *Sender)
+{
+ AnsiString text;
+
+ EnaFcn->Checked=EnaGloFcn;
+
+ for (int i=0;i<27;i++) {
+ if (GloFcn[i]) GetFcn(i+1)->Text=text.sprintf("%d",GloFcn[i]-8);
+ else GetFcn(i+1)->Text="";
+ }
+ UpdateEnable();
+}
+//---------------------------------------------------------------------------
+void __fastcall TGloFcnDialog::BtnOkClick(TObject *Sender)
+{
+ AnsiString text;
+ int no;
+
+ EnaGloFcn=EnaFcn->Checked;
+
+ for (int i=0;i<27;i++) {
+ text=GetFcn(i+1)->Text;
+ if (sscanf(text.c_str(),"%d",&no)==1&&no>=-7&&no<=6) {
+ GloFcn[i]=no+8;
+ }
+ else GloFcn[i]=0; // GLONASS FCN+8 (0:none)
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TGloFcnDialog::BtnReadClick(TObject *Sender)
+{
+ AnsiString file,text;
+ nav_t nav={0};
+ int prn;
+
+ if (!OpenDialog->Execute()) return;
+
+ file=OpenDialog->FileName;
+
+ if (!readrnx(file.c_str(),0,"",NULL,&nav,NULL)) return;
+
+ for (int i=0;iText=text.sprintf("%d",nav.geph[i].frq);
+ }
+ freenav(&nav,0xFF);
+}
+//---------------------------------------------------------------------------
+void __fastcall TGloFcnDialog::BtnClearClick(TObject *Sender)
+{
+ for (int i=0;i<27;i++) {
+ GetFcn(i+1)->Text="";
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TGloFcnDialog::EnaFcnClick(TObject *Sender)
+{
+ UpdateEnable();
+}
+//---------------------------------------------------------------------------
+void __fastcall TGloFcnDialog::UpdateEnable(void)
+{
+ BtnClear->Enabled=EnaFcn->Checked;
+ BtnRead ->Enabled=EnaFcn->Checked;
+ Label21 ->Enabled=EnaFcn->Checked;
+ Label22 ->Enabled=EnaFcn->Checked;
+
+ for (int i=0;i<27;i++) {
+ GetFcn(i+1)->Enabled=EnaFcn->Checked;
+ }
+}
+//---------------------------------------------------------------------------
+TEdit * __fastcall TGloFcnDialog::GetFcn(int prn)
+{
+ TEdit *fcn[]={
+ Fcn01,Fcn02,Fcn03,Fcn04,Fcn05,Fcn06,Fcn07,Fcn08,Fcn09,Fcn10,
+ Fcn11,Fcn12,Fcn13,Fcn14,Fcn15,Fcn16,Fcn17,Fcn18,Fcn19,Fcn20,
+ Fcn21,Fcn22,Fcn23,Fcn24,Fcn25,Fcn26,Fcn27
+ };
+ return fcn[prn-1];
+}
+//---------------------------------------------------------------------------
+
diff --git a/app/winapp/appcmn/glofcndlg.dfm b/app/winapp/appcmn/glofcndlg.dfm
new file mode 100644
index 000000000..92e861086
--- /dev/null
+++ b/app/winapp/appcmn/glofcndlg.dfm
@@ -0,0 +1,844 @@
+object GloFcnDialog: TGloFcnDialog
+ Left = 0
+ Top = 0
+ BorderStyle = bsDialog
+ Caption = 'GLONASS Frequency Channel Number'
+ ClientHeight = 195
+ ClientWidth = 318
+ Color = clWhite
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ Position = poMainFormCenter
+ OnShow = FormShow
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Panel1: TPanel
+ Left = 2
+ Top = 29
+ Width = 328
+ Height = 46
+ BevelOuter = bvNone
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ object Panel2: TPanel
+ Left = 278
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 10
+ object Label1: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R10'
+ end
+ object Fcn10: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel3: TPanel
+ Left = 0
+ Top = 0
+ Width = 6
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 9
+ end
+ object Panel4: TPanel
+ Left = 248
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 8
+ object Label2: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R09'
+ end
+ object Fcn09: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel5: TPanel
+ Left = 218
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 7
+ object Label3: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R08'
+ end
+ object Fcn08: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel6: TPanel
+ Left = 188
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 6
+ object Label4: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R07'
+ end
+ object Fcn07: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel7: TPanel
+ Left = 158
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 5
+ object Label5: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R06'
+ end
+ object Fcn06: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel8: TPanel
+ Left = 126
+ Top = 0
+ Width = 32
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 4
+ object Label6: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R05'
+ end
+ object Fcn05: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel9: TPanel
+ Left = 96
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 3
+ object Label7: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R04'
+ end
+ object Fcn04: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel10: TPanel
+ Left = 66
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 2
+ object Label8: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R03'
+ end
+ object Fcn03: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel11: TPanel
+ Left = 36
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 1
+ object Label9: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R02'
+ end
+ object Fcn02: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel12: TPanel
+ Left = 6
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 0
+ object Label10: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R01'
+ end
+ object Fcn01: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ end
+ object Panel13: TPanel
+ Left = 2
+ Top = 70
+ Width = 328
+ Height = 46
+ BevelOuter = bvNone
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 4
+ object Panel14: TPanel
+ Left = 278
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 10
+ object Label11: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R20'
+ end
+ object Fcn20: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel15: TPanel
+ Left = 0
+ Top = 0
+ Width = 6
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 9
+ end
+ object Panel16: TPanel
+ Left = 248
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 8
+ object Label12: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R19'
+ end
+ object Fcn19: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel17: TPanel
+ Left = 218
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 7
+ object Label13: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R18'
+ end
+ object Fcn18: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel18: TPanel
+ Left = 188
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 6
+ object Label14: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R17'
+ end
+ object Fcn17: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel19: TPanel
+ Left = 158
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 5
+ object Label15: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R16'
+ end
+ object Fcn16: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel20: TPanel
+ Left = 126
+ Top = 0
+ Width = 32
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 4
+ object Label16: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R15'
+ end
+ object Fcn15: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel21: TPanel
+ Left = 96
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 3
+ object Label17: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R14'
+ end
+ object Fcn14: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel22: TPanel
+ Left = 66
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 2
+ object Label18: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R13'
+ end
+ object Fcn13: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel23: TPanel
+ Left = 36
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 1
+ object Label19: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R12'
+ end
+ object Fcn12: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel24: TPanel
+ Left = 6
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 0
+ object Label20: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R11'
+ end
+ object Fcn11: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ end
+ object Panel25: TPanel
+ Left = 2
+ Top = 112
+ Width = 328
+ Height = 46
+ BevelOuter = bvNone
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 5
+ object Label21: TLabel
+ Left = 242
+ Top = 20
+ Width = 37
+ Height = 13
+ Caption = ' -7 ... 6'
+ end
+ object Label22: TLabel
+ Left = 253
+ Top = 3
+ Width = 24
+ Height = 13
+ Caption = 'FCN:'
+ end
+ object Panel27: TPanel
+ Left = 0
+ Top = 0
+ Width = 6
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 7
+ end
+ object Panel30: TPanel
+ Left = 188
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 6
+ object Label24: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R27'
+ end
+ object Fcn27: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel31: TPanel
+ Left = 158
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 5
+ object Label25: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R26'
+ end
+ object Fcn26: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel32: TPanel
+ Left = 126
+ Top = 0
+ Width = 32
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 4
+ object Label26: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R25'
+ end
+ object Fcn25: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel33: TPanel
+ Left = 96
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 3
+ object Label27: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R24'
+ end
+ object Fcn24: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel34: TPanel
+ Left = 66
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 2
+ object Label28: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R23'
+ end
+ object Fcn23: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel35: TPanel
+ Left = 36
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 1
+ object Label29: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R22'
+ end
+ object Fcn22: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ object Panel36: TPanel
+ Left = 6
+ Top = 0
+ Width = 30
+ Height = 46
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 0
+ object Label30: TLabel
+ Left = 6
+ Top = 2
+ Width = 19
+ Height = 13
+ Alignment = taCenter
+ Caption = 'R21'
+ end
+ object Fcn21: TEdit
+ Left = 2
+ Top = 16
+ Width = 26
+ Height = 21
+ Alignment = taCenter
+ TabOrder = 0
+ Text = '0'
+ end
+ end
+ end
+ object BtnCancel: TButton
+ Left = 239
+ Top = 161
+ Width = 70
+ Height = 29
+ Caption = '&Cancel'
+ ModalResult = 2
+ TabOrder = 0
+ end
+ object BtnOk: TButton
+ Left = 166
+ Top = 161
+ Width = 70
+ Height = 29
+ Caption = '&OK'
+ ModalResult = 1
+ TabOrder = 1
+ OnClick = BtnOkClick
+ end
+ object BtnRead: TButton
+ Left = 82
+ Top = 161
+ Width = 70
+ Height = 29
+ Caption = '&Read...'
+ TabOrder = 7
+ OnClick = BtnReadClick
+ end
+ object BtnClear: TButton
+ Left = 9
+ Top = 161
+ Width = 70
+ Height = 29
+ Caption = 'C&lear'
+ TabOrder = 6
+ OnClick = BtnClearClick
+ end
+ object EnaFcn: TCheckBox
+ Left = 16
+ Top = 8
+ Width = 180
+ Height = 17
+ Caption = ' Use FCN Table'
+ TabOrder = 2
+ OnClick = EnaFcnClick
+ end
+ object OpenDialog: TOpenDialog
+ Filter = 'RINEX NAV (*.nav,*.*N,*.*G)|*nav;*.*N;*.*G|All (*.*)|*.*'
+ Title = 'RINEX NAV File'
+ Left = 149
+ Top = 141
+ end
+end
diff --git a/app/winapp/appcmn/glofcndlg.h b/app/winapp/appcmn/glofcndlg.h
new file mode 100644
index 000000000..61a0b7a61
--- /dev/null
+++ b/app/winapp/appcmn/glofcndlg.h
@@ -0,0 +1,127 @@
+//---------------------------------------------------------------------------
+
+#ifndef glofcndlgH
+#define glofcndlgH
+//---------------------------------------------------------------------------
+#include
+#include
+#include
+#include
+#include
+#include
+//---------------------------------------------------------------------------
+class TGloFcnDialog : public TForm
+{
+__published:
+ TButton *BtnOk;
+ TButton *BtnCancel;
+ TPanel *Panel1;
+ TLabel *Label1;
+ TEdit *Fcn10;
+ TPanel *Panel2;
+ TPanel *Panel3;
+ TPanel *Panel4;
+ TLabel *Label2;
+ TEdit *Fcn09;
+ TPanel *Panel5;
+ TLabel *Label3;
+ TEdit *Fcn08;
+ TPanel *Panel6;
+ TLabel *Label4;
+ TEdit *Fcn07;
+ TPanel *Panel7;
+ TLabel *Label5;
+ TEdit *Fcn06;
+ TPanel *Panel8;
+ TLabel *Label6;
+ TEdit *Fcn05;
+ TPanel *Panel9;
+ TLabel *Label7;
+ TEdit *Fcn04;
+ TPanel *Panel10;
+ TLabel *Label8;
+ TEdit *Fcn03;
+ TPanel *Panel11;
+ TLabel *Label9;
+ TEdit *Fcn02;
+ TPanel *Panel12;
+ TLabel *Label10;
+ TEdit *Fcn01;
+ TPanel *Panel13;
+ TPanel *Panel14;
+ TLabel *Label11;
+ TEdit *Fcn20;
+ TPanel *Panel15;
+ TPanel *Panel16;
+ TLabel *Label12;
+ TEdit *Fcn19;
+ TPanel *Panel17;
+ TLabel *Label13;
+ TEdit *Fcn18;
+ TPanel *Panel18;
+ TLabel *Label14;
+ TEdit *Fcn17;
+ TPanel *Panel19;
+ TLabel *Label15;
+ TEdit *Fcn16;
+ TPanel *Panel20;
+ TLabel *Label16;
+ TEdit *Fcn15;
+ TPanel *Panel21;
+ TLabel *Label17;
+ TEdit *Fcn14;
+ TPanel *Panel22;
+ TLabel *Label18;
+ TEdit *Fcn13;
+ TPanel *Panel23;
+ TLabel *Label19;
+ TEdit *Fcn12;
+ TPanel *Panel24;
+ TLabel *Label20;
+ TEdit *Fcn11;
+ TPanel *Panel25;
+ TPanel *Panel27;
+ TPanel *Panel30;
+ TLabel *Label24;
+ TEdit *Fcn27;
+ TPanel *Panel31;
+ TLabel *Label25;
+ TEdit *Fcn26;
+ TPanel *Panel32;
+ TLabel *Label26;
+ TEdit *Fcn25;
+ TPanel *Panel33;
+ TLabel *Label27;
+ TEdit *Fcn24;
+ TPanel *Panel34;
+ TLabel *Label28;
+ TEdit *Fcn23;
+ TPanel *Panel35;
+ TLabel *Label29;
+ TEdit *Fcn22;
+ TPanel *Panel36;
+ TLabel *Label30;
+ TEdit *Fcn21;
+ TButton *BtnRead;
+ TOpenDialog *OpenDialog;
+ TButton *BtnClear;
+ TLabel *Label21;
+ TLabel *Label22;
+ TCheckBox *EnaFcn;
+ void __fastcall FormShow(TObject *Sender);
+ void __fastcall BtnOkClick(TObject *Sender);
+ void __fastcall BtnReadClick(TObject *Sender);
+ void __fastcall BtnClearClick(TObject *Sender);
+ void __fastcall EnaFcnClick(TObject *Sender);
+private:
+ void __fastcall UpdateEnable(void);
+ TEdit * __fastcall GetFcn(int prn);
+public:
+ __fastcall TGloFcnDialog(TComponent* Owner);
+
+ int EnaGloFcn,GloFcn[27];
+};
+//---------------------------------------------------------------------------
+extern PACKAGE TGloFcnDialog *GloFcnDialog;
+//---------------------------------------------------------------------------
+#endif
diff --git a/app/appcmn/gmview.cpp b/app/winapp/appcmn/gmview.cpp
similarity index 79%
rename from app/appcmn/gmview.cpp
rename to app/winapp/appcmn/gmview.cpp
index 76c35faf3..9550ae0fd 100644
--- a/app/appcmn/gmview.cpp
+++ b/app/winapp/appcmn/gmview.cpp
@@ -1,19 +1,15 @@
//---------------------------------------------------------------------------
-// gmview.c: google map view
+// gmview.c: map view
//---------------------------------------------------------------------------
#include
#pragma hdrstop
#include
-#include "rtklib.h"
#include "gmview.h"
-#define RTKLIB_GM_FILE L"rtklib_gmap.htm"
-
+#define RTKLIB_GM "rtklib_gmap.htm"
//---------------------------------------------------------------------------
#pragma package(smart_init)
-#pragma link "SHDocVw_OCX"
#pragma resource "*.dfm"
-
TGoogleMapView *GoogleMapView;
//---------------------------------------------------------------------------
__fastcall TGoogleMapView::TGoogleMapView(TComponent* Owner)
@@ -21,17 +17,18 @@ __fastcall TGoogleMapView::TGoogleMapView(TComponent* Owner)
{
}
//---------------------------------------------------------------------------
-void __fastcall TGoogleMapView::FormCreate(TObject *Sender)
+void __fastcall TGoogleMapView::FormShow(TObject *Sender)
{
- UnicodeString url,exe,dir=L".";
- wchar_t *p,*q;
+ UnicodeString url;
+ AnsiString exe,dir=".",file;
+ char *p,*q;
exe=Application->ExeName; // exe directory
p=exe.c_str();
- if ((q=wcsrchr(p,L'\\'))) {
+ if ((q=strrchr(p,'\\'))) {
dir=exe.SubString(1,q-p);
- }
- url=L"file://"+dir+L"\\"+RTKLIB_GM_FILE;
+ }
+ url="file://"+dir+"\\"+RTKLIB_GM;
WebBrowser->Navigate(url.c_str());
}
@@ -46,15 +43,20 @@ int __fastcall TGoogleMapView::GetState(void)
if (!WebBrowser->Document) return 0;
WebBrowser->Document->QueryInterface(IID_IHTMLDocument3,(void **)&doc);
if (!doc) return 0;
- doc->getElementById(L"state",&ele1);
+ BSTR bstr1=SysAllocString(L"state");
+ doc->getElementById(bstr1,&ele1);
+ SysFreeString(bstr1);
doc->Release();
if (!ele1) return 0;
VariantInit(&var);
- if (ele1->getAttribute(L"value",0,&var)!=S_OK) {
+ BSTR bstr2=SysAllocString(L"value");
+ if (ele1->getAttribute(bstr2,0,&var)!=S_OK) {
+ SysFreeString(bstr2);
VariantClear(&var);
return 0;
}
+ SysFreeString(bstr2);
swscanf(var.bstrVal,L"%d",&state);
VariantClear(&var);
return state;
@@ -84,20 +86,21 @@ void __fastcall TGoogleMapView::AddMark(double lat, double lon,
AnsiString title, AnsiString msg)
{
AnsiString f;
- ExecFunc(f.sprintf("AddMark(%.7f,%.7f,\"%s\",\"%s\")",lat,lon,title,msg));
+ if (lon>=180.0) lon-=360.0;
+ ExecFunc(f.sprintf("AddMark(%.7f,%.7f,\"%s\",\"%s\")",lat,lon,title.c_str(),msg.c_str()));
}
//---------------------------------------------------------------------------
void __fastcall TGoogleMapView::PosMark(double lat, double lon,
AnsiString title)
{
AnsiString f;
- ExecFunc(f.sprintf("PosMark(%.7f,%.7f,\"%s\")",lat,lon,title));
+ ExecFunc(f.sprintf("PosMark(%.7f,%.7f,\"%s\")",lat,lon,title.c_str()));
}
//---------------------------------------------------------------------------
void __fastcall TGoogleMapView::HighlightMark(AnsiString title)
{
AnsiString f;
- ExecFunc(f.sprintf("HighlightMark(\"%s\")",title));
+ ExecFunc(f.sprintf("HighlightMark(\"%s\")",title.c_str()));
}
//---------------------------------------------------------------------------
void __fastcall TGoogleMapView::ExecFunc(AnsiString func)
@@ -117,7 +120,12 @@ void __fastcall TGoogleMapView::ExecFunc(AnsiString func)
VariantInit(&var);
::MultiByteToWideChar(CP_UTF8,0,func.c_str(),-1,func_w,512);
- hr=win->execScript(func_w,L"javascript",&var);
+ BSTR bstr1=SysAllocString(func_w);
+ BSTR bstr2=SysAllocString(L"javascript");
+ hr=win->execScript(bstr1,bstr2,&var);
+ SysFreeString(bstr1);
+ SysFreeString(bstr2);
VariantClear(&var);
}
//---------------------------------------------------------------------------
+
diff --git a/app/appcmn/gmview.dfm b/app/winapp/appcmn/gmview.dfm
similarity index 85%
rename from app/appcmn/gmview.dfm
rename to app/winapp/appcmn/gmview.dfm
index dc7992d34..41df35b9a 100644
--- a/app/appcmn/gmview.dfm
+++ b/app/winapp/appcmn/gmview.dfm
@@ -3,7 +3,7 @@ object GoogleMapView: TGoogleMapView
Top = 0
BorderIcons = [biSystemMenu, biMaximize]
Caption = 'Google Map View'
- ClientHeight = 662
+ ClientHeight = 630
ClientWidth = 1030
Color = clBtnFace
Constraints.MinHeight = 240
@@ -15,21 +15,24 @@ object GoogleMapView: TGoogleMapView
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
- OnCreate = FormCreate
+ OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object Panel1: TPanel
Left = 0
Top = 0
Width = 1030
- Height = 22
+ Height = 27
Align = alTop
+ Color = clWhite
+ ParentBackground = False
TabOrder = 0
object BtnHome: TSpeedButton
Left = 1
- Top = 0
+ Top = 1
Width = 23
- Height = 22
+ Height = 25
+ Align = alLeft
Flat = True
Glyph.Data = {
06050000424D060500000000000036040000280000000D0000000D0000000100
@@ -74,51 +77,42 @@ object GoogleMapView: TGoogleMapView
FF0007FFFFFFFF000000FFFFFFFFFF070007FFFFFFFFFF000000FFFFFFFFFFFF
FFFFFFFFFFFFFF000000}
OnClick = BtnHomeClick
+ ExplicitTop = 0
+ ExplicitHeight = 22
end
- object Panel5: TPanel
- Left = 978
+ object BtnClose: TButton
+ Left = 959
Top = 1
- Width = 51
- Height = 20
+ Width = 70
+ Height = 25
Align = alRight
- BevelOuter = bvNone
- Caption = 'Panel5'
+ Caption = 'Close'
TabOrder = 0
- object BtnClose: TButton
- Left = 0
- Top = 0
- Width = 51
- Height = 20
- Align = alClient
- Caption = 'Close'
- TabOrder = 0
- OnClick = BtnCloseClick
- end
+ OnClick = BtnCloseClick
end
end
object Panel2: TPanel
Left = 0
- Top = 22
+ Top = 27
Width = 1030
- Height = 640
+ Height = 603
Align = alClient
- Caption = 'Panel2'
TabOrder = 1
- ExplicitHeight = 748
object WebBrowser: TCppWebBrowser
Left = 1
Top = 1
Width = 1028
- Height = 638
+ Height = 601
Align = alClient
TabOrder = 0
- ExplicitTop = 0
- ExplicitWidth = 502
- ExplicitHeight = 482
+ ExplicitLeft = 496
+ ExplicitTop = 406
+ ExplicitWidth = 300
+ ExplicitHeight = 150
ControlData = {
- 4C0000003F6A0000F04100000000000000000000000000000000000000000000
+ 4C0000003F6A00001D3E00000000000000000000000000000000000000000000
000000004C000000000000000000000001000000E0D057007335CF11AE690800
- 2B2E12620B000000000000004C0000000114020000000000C000000000000046
+ 2B2E126208000000000000004C0000000114020000000000C000000000000046
8000000000000000000000000000000000000000000000000000000000000000
00000000000000000100000000000000000000000000000000000000}
end
diff --git a/app/appcmn/gmview.h b/app/winapp/appcmn/gmview.h
similarity index 95%
rename from app/appcmn/gmview.h
rename to app/winapp/appcmn/gmview.h
index de46d7226..cba2efff2 100644
--- a/app/appcmn/gmview.h
+++ b/app/winapp/appcmn/gmview.h
@@ -16,14 +16,12 @@ class TGoogleMapView : public TForm
__published:
TPanel *Panel1;
TPanel *Panel2;
- TCppWebBrowser *WebBrowser;
- TPanel *Panel5;
TButton *BtnClose;
TSpeedButton *BtnHome;
+ TCppWebBrowser *WebBrowser;
void __fastcall BtnCloseClick(TObject *Sender);
- void __fastcall FormCreate(TObject *Sender);
void __fastcall BtnHomeClick(TObject *Sender);
-
+ void __fastcall FormShow(TObject *Sender);
private:
void __fastcall ExecFunc(AnsiString func);
diff --git a/app/appcmn/graph.cpp b/app/winapp/appcmn/graph.cpp
similarity index 94%
rename from app/appcmn/graph.cpp
rename to app/winapp/appcmn/graph.cpp
index e415fb5ad..7bc823da7 100644
--- a/app/appcmn/graph.cpp
+++ b/app/winapp/appcmn/graph.cpp
@@ -79,7 +79,12 @@ int TGraph::ToPoint(double x, double y, TPoint &p)
const double xt=0.1;
x=X+(Width-1)/2.0+(x-XCent)/XScale;
y=Y+(Height-1)/2.0-(y-YCent)/YScale;
- p.x=(int)floor(x+0.5); p.y=(int)floor(y+0.5);
+ if (x<-1E6) x=-1E6; // clip to avoid numerical exception
+ else if (x> 1E6) x= 1E6;
+ if (y<-1E6) y=-1E6;
+ else if (y> 1E6) y= 1E6;
+ p.x=(int)floor(x+0.5);
+ p.y=(int)floor(y+0.5);
return X-xtBrush->Style=bsClear;
- c->MoveTo(x1,p.y); c->LineTo(x2,p.y);
- c->MoveTo(p.x,y2); c->LineTo(p.x,y1);
- return;
-#else
n=5;
for (int i=0;iFont->Name;
+ font_prev=c->Font->Name;
+ c->Font->Name=font;
LOGFONT lf={0};
lf.lfHeight=c->Font->Height;
lf.lfCharSet=c->Font->Charset;
- strcpy(lf.lfFaceName,Font_Name.c_str());
+ strcpy(lf.lfFaceName,font.c_str());
lf.lfEscapement=lf.lfOrientation=rot*10;
c->Font->Handle=CreateFontIndirect(&lf);
TSize off=c->TextExtent(u_str);
@@ -463,9 +463,27 @@ void TGraph::DrawText(TPoint p, AnsiString str, TColor color, int ha, int va,
c->Brush->Style=bsClear;
c->Font->Color=color;
c->TextOut(pr.x,pr.y,u_str);
+ c->Font->Name=font_prev;
+}
+//---------------------------------------------------------------------------
+void TGraph::DrawText(TPoint p, UTF8String str, TColor color, int ha, int va,
+ int rot)
+{
+ TCanvas *c=Canvas;
+ AnsiString font=c->Font->Name;
+
+ DrawText(p,str,color,ha,va,rot,font);
+}
+//---------------------------------------------------------------------------
+void TGraph::DrawText(double x, double y, UTF8String str, TColor color,
+ int ha, int va, int rot, AnsiString font)
+{
+ TPoint p;
+ ToPoint(x,y,p);
+ DrawText(p,str,color,ha,va,rot,font);
}
//---------------------------------------------------------------------------
-void TGraph::DrawText(double x, double y, AnsiString str, TColor color,
+void TGraph::DrawText(double x, double y, UTF8String str, TColor color,
int ha, int va, int rot)
{
TPoint p;
@@ -473,7 +491,7 @@ void TGraph::DrawText(double x, double y, AnsiString str, TColor color,
DrawText(p,str,color,ha,va,rot);
}
//---------------------------------------------------------------------------
-void TGraph::DrawText(TPoint p, AnsiString str, TColor color, TColor bgcolor,
+void TGraph::DrawText(TPoint p, UTF8String str, TColor color, TColor bgcolor,
int ha, int va, int rot)
{
TPoint p1;
@@ -484,7 +502,7 @@ void TGraph::DrawText(TPoint p, AnsiString str, TColor color, TColor bgcolor,
DrawText(p,str,color,ha,va,rot);
}
//---------------------------------------------------------------------------
-void TGraph::DrawText(double x, double y, AnsiString str, TColor color,
+void TGraph::DrawText(double x, double y, UTF8String str, TColor color,
TColor bgcolor, int ha, int va, int rot)
{
TPoint p;
diff --git a/app/appcmn/graph.h b/app/winapp/appcmn/graph.h
similarity index 86%
rename from app/appcmn/graph.h
rename to app/winapp/appcmn/graph.h
index 5241a1741..2a45c8122 100644
--- a/app/appcmn/graph.h
+++ b/app/winapp/appcmn/graph.h
@@ -26,7 +26,7 @@ class TGraph // graph class
TColor color_;
public:
int Box,Fit,XGrid,YGrid,XLPos,YLPos,Week;
- AnsiString Title,XLabel,YLabel;
+ UTF8String Title,XLabel,YLabel;
TColor Color[3];
TGraph(TPaintBox *parent);
TGraph(TImage *parent);
@@ -61,13 +61,17 @@ class TGraph // graph class
void DrawCircle(TPoint p, TColor color, int rx, int ry, int style);
void DrawCircle(double x, double y, TColor color, double rx, double ry, int style);
void DrawCircles(int label);
- void DrawText(double x, double y, AnsiString str, TColor color, int ha,
+ void DrawText(double x, double y, UTF8String str, TColor color, int ha,
int va, int rot);
- void DrawText(TPoint p, AnsiString str, TColor color, int ha, int va,
+ void DrawText(double x, double y, UTF8String str, TColor color, int ha,
+ int va, int rot, AnsiString font);
+ void DrawText(TPoint p, UTF8String str, TColor color, int ha, int va,
int rot);
- void DrawText(double x, double y, AnsiString str, TColor color, TColor bgcolor,
+ void DrawText(TPoint p, UTF8String str, TColor color, int ha, int va,
+ int rot, AnsiString font);
+ void DrawText(double x, double y, UTF8String str, TColor color, TColor bgcolor,
int ha, int va, int rot);
- void DrawText(TPoint p, AnsiString str, TColor color, TColor bgcolor,
+ void DrawText(TPoint p, UTF8String str, TColor color, TColor bgcolor,
int ha, int va, int rot);
void DrawPoly(TPoint *p, int n, TColor color, int style);
void DrawPoly(double *x, double *y, int n, TColor color, int style);
diff --git a/app/appcmn/keydlg.cpp b/app/winapp/appcmn/keydlg.cpp
similarity index 100%
rename from app/appcmn/keydlg.cpp
rename to app/winapp/appcmn/keydlg.cpp
diff --git a/app/appcmn/keydlg.dfm b/app/winapp/appcmn/keydlg.dfm
similarity index 100%
rename from app/appcmn/keydlg.dfm
rename to app/winapp/appcmn/keydlg.dfm
diff --git a/app/appcmn/keydlg.h b/app/winapp/appcmn/keydlg.h
similarity index 100%
rename from app/appcmn/keydlg.h
rename to app/winapp/appcmn/keydlg.h
diff --git a/app/appcmn/maskoptdlg.cpp b/app/winapp/appcmn/maskoptdlg.cpp
similarity index 100%
rename from app/appcmn/maskoptdlg.cpp
rename to app/winapp/appcmn/maskoptdlg.cpp
diff --git a/app/appcmn/maskoptdlg.dfm b/app/winapp/appcmn/maskoptdlg.dfm
similarity index 99%
rename from app/appcmn/maskoptdlg.dfm
rename to app/winapp/appcmn/maskoptdlg.dfm
index d055343ba..0e6d8e1aa 100644
--- a/app/appcmn/maskoptdlg.dfm
+++ b/app/winapp/appcmn/maskoptdlg.dfm
@@ -5,7 +5,7 @@ object MaskOptDialog: TMaskOptDialog
Caption = 'SNR Mask'
ClientHeight = 145
ClientWidth = 369
- Color = clBtnFace
+ Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
@@ -307,7 +307,7 @@ object MaskOptDialog: TMaskOptDialog
Top = 3
Width = 11
Height = 13
- Caption = 'L5'
+ Caption = 'L3'
end
object Mask_3_1: TEdit
Left = 35
diff --git a/app/appcmn/maskoptdlg.h b/app/winapp/appcmn/maskoptdlg.h
similarity index 100%
rename from app/appcmn/maskoptdlg.h
rename to app/winapp/appcmn/maskoptdlg.h
diff --git a/app/winapp/appcmn/mntpoptdlg.cpp b/app/winapp/appcmn/mntpoptdlg.cpp
new file mode 100644
index 000000000..da5f948f0
--- /dev/null
+++ b/app/winapp/appcmn/mntpoptdlg.cpp
@@ -0,0 +1,55 @@
+//---------------------------------------------------------------------------
+#include
+#include
+#pragma hdrstop
+
+#include "rtklib.h"
+#include "mntpoptdlg.h"
+//---------------------------------------------------------------------------
+#pragma package(smart_init)
+#pragma resource "*.dfm"
+TMntpOptDialog *MntpOptDialog;
+
+//---------------------------------------------------------------------------
+__fastcall TMntpOptDialog::TMntpOptDialog(TComponent* Owner)
+ : TForm(Owner)
+{
+}
+//---------------------------------------------------------------------------
+void __fastcall TMntpOptDialog::FormShow(TObject *Sender)
+{
+ TEdit *edit[]={
+ SrcTbl1,SrcTbl2,SrcTbl3,NULL,SrcTbl5,SrcTbl6,SrcTbl7,SrcTbl8,SrcTbl9,
+ NULL,NULL,SrcTbl12,SrcTbl13,NULL,NULL,SrcTbl16
+ };
+ TComboBox *box[]={
+ NULL,NULL,NULL,SrcTbl4,NULL,NULL,NULL,NULL,NULL,SrcTbl10,SrcTbl11,NULL,
+ NULL,SrcTbl14,SrcTbl15,NULL
+ };
+ AnsiString str=MntpStr;
+ char buff[2048],*p=buff,*q;
+ int i;
+
+ MntPntE->Text=MntPnt;
+
+ sprintf(buff,"%.2047s",str.c_str());
+
+ for (int i=0;i<16;i++) {
+ if (edit[i]) edit[i]->Text=""; else box[i]->ItemIndex=0;
+ }
+ for (int i=0;*p&&i<16;i++,p=q+1) {
+ if ((q=strchr(p,';'))) *q='\0';
+ if (edit[i]) edit[i]->Text=p; else box[i]->Text=p;
+ if (!q) break;
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMntpOptDialog::BtnOkClick(TObject *Sender)
+{
+ MntPnt=MntPntE->Text;
+ MntpStr=SrcTbl1->Text+";"+SrcTbl2->Text+";"+SrcTbl3->Text+";"+SrcTbl4->Text+";"+
+ SrcTbl5->Text+";"+SrcTbl6->Text+";"+SrcTbl7->Text+";"+SrcTbl8->Text+";"+
+ SrcTbl9->Text+";"+SrcTbl10->Text+";"+SrcTbl11->Text+";"+SrcTbl12->Text+";"+
+ SrcTbl13->Text+";"+SrcTbl14->Text+";"+SrcTbl15->Text+";"+SrcTbl16->Text;
+}
+//---------------------------------------------------------------------------
diff --git a/app/winapp/appcmn/mntpoptdlg.dfm b/app/winapp/appcmn/mntpoptdlg.dfm
new file mode 100644
index 000000000..6ae691285
--- /dev/null
+++ b/app/winapp/appcmn/mntpoptdlg.dfm
@@ -0,0 +1,305 @@
+object MntpOptDialog: TMntpOptDialog
+ Left = 0
+ Top = 0
+ BorderIcons = [biSystemMenu]
+ BorderStyle = bsDialog
+ Caption = 'Mountpoint Options'
+ ClientHeight = 235
+ ClientWidth = 360
+ Color = clWhite
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ Position = poMainFormCenter
+ OnShow = FormShow
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Label14: TLabel
+ Left = 107
+ Top = 4
+ Width = 47
+ Height = 13
+ Caption = 'Source ID'
+ end
+ object Label15: TLabel
+ Left = 9
+ Top = 80
+ Width = 33
+ Height = 13
+ Caption = 'Carrier'
+ end
+ object Label16: TLabel
+ Left = 9
+ Top = 156
+ Width = 49
+ Height = 13
+ Caption = 'Generator'
+ end
+ object Label1: TLabel
+ Left = 10
+ Top = 42
+ Width = 69
+ Height = 13
+ Caption = 'Format Details'
+ end
+ object Label2: TLabel
+ Left = 266
+ Top = 4
+ Width = 34
+ Height = 13
+ Caption = 'Format'
+ end
+ object Label3: TLabel
+ Left = 87
+ Top = 118
+ Width = 39
+ Height = 13
+ Caption = 'Country'
+ end
+ object Label4: TLabel
+ Left = 9
+ Top = 118
+ Width = 40
+ Height = 13
+ Caption = 'Network'
+ end
+ object Label5: TLabel
+ Left = 271
+ Top = 118
+ Width = 28
+ Height = 13
+ Caption = 'NMEA'
+ end
+ object Label6: TLabel
+ Left = 313
+ Top = 118
+ Width = 36
+ Height = 13
+ Caption = 'Soution'
+ end
+ object Label7: TLabel
+ Left = 52
+ Top = 80
+ Width = 61
+ Height = 13
+ Caption = 'Nav-System '
+ end
+ object Label8: TLabel
+ Left = 131
+ Top = 118
+ Width = 39
+ Height = 13
+ Caption = 'Latitude'
+ end
+ object Label9: TLabel
+ Left = 201
+ Top = 118
+ Width = 47
+ Height = 13
+ Caption = 'Longitude'
+ end
+ object Label10: TLabel
+ Left = 199
+ Top = 156
+ Width = 68
+ Height = 13
+ Caption = 'Compr-encryp'
+ end
+ object Label11: TLabel
+ Left = 271
+ Top = 156
+ Width = 23
+ Height = 13
+ Caption = 'Auth'
+ end
+ object Label12: TLabel
+ Left = 313
+ Top = 156
+ Width = 18
+ Height = 13
+ Caption = 'Fee'
+ end
+ object Label13: TLabel
+ Left = 9
+ Top = 192
+ Width = 32
+ Height = 13
+ Caption = 'Bitrate'
+ end
+ object Label17: TLabel
+ Left = 9
+ Top = 4
+ Width = 54
+ Height = 13
+ Caption = 'Mountpoint'
+ end
+ object BtnCancel: TButton
+ Left = 263
+ Top = 201
+ Width = 89
+ Height = 29
+ Caption = '&Cancel'
+ ModalResult = 2
+ TabOrder = 0
+ end
+ object BtnOk: TButton
+ Left = 171
+ Top = 201
+ Width = 89
+ Height = 29
+ Caption = '&OK'
+ ModalResult = 1
+ TabOrder = 1
+ OnClick = BtnOkClick
+ end
+ object SrcTbl1: TEdit
+ Left = 106
+ Top = 18
+ Width = 156
+ Height = 21
+ TabOrder = 3
+ end
+ object SrcTbl2: TEdit
+ Left = 265
+ Top = 18
+ Width = 86
+ Height = 21
+ TabOrder = 4
+ end
+ object SrcTbl3: TEdit
+ Left = 8
+ Top = 56
+ Width = 343
+ Height = 21
+ TabOrder = 5
+ end
+ object SrcTbl5: TEdit
+ Left = 50
+ Top = 94
+ Width = 301
+ Height = 21
+ TabOrder = 7
+ end
+ object SrcTbl6: TEdit
+ Left = 8
+ Top = 132
+ Width = 75
+ Height = 21
+ TabOrder = 8
+ end
+ object SrcTbl7: TEdit
+ Left = 86
+ Top = 132
+ Width = 41
+ Height = 21
+ TabOrder = 9
+ end
+ object SrcTbl8: TEdit
+ Left = 130
+ Top = 132
+ Width = 67
+ Height = 21
+ TabOrder = 10
+ end
+ object SrcTbl9: TEdit
+ Left = 200
+ Top = 132
+ Width = 67
+ Height = 21
+ TabOrder = 11
+ end
+ object SrcTbl12: TEdit
+ Left = 8
+ Top = 170
+ Width = 189
+ Height = 21
+ TabOrder = 14
+ end
+ object SrcTbl4: TComboBox
+ Left = 8
+ Top = 94
+ Width = 39
+ Height = 21
+ ItemIndex = 0
+ TabOrder = 6
+ Text = '0'
+ Items.Strings = (
+ '0'
+ '1'
+ '2'
+ '3')
+ end
+ object SrcTbl10: TComboBox
+ Left = 270
+ Top = 132
+ Width = 39
+ Height = 21
+ ItemIndex = 0
+ TabOrder = 12
+ Text = '0'
+ Items.Strings = (
+ '0'
+ '1')
+ end
+ object SrcTbl11: TComboBox
+ Left = 312
+ Top = 132
+ Width = 39
+ Height = 21
+ ItemIndex = 0
+ TabOrder = 13
+ Text = '0'
+ Items.Strings = (
+ '0'
+ '1')
+ end
+ object SrcTbl13: TEdit
+ Left = 200
+ Top = 170
+ Width = 67
+ Height = 21
+ TabOrder = 15
+ end
+ object SrcTbl14: TComboBox
+ Left = 270
+ Top = 170
+ Width = 39
+ Height = 21
+ ItemIndex = 0
+ TabOrder = 16
+ Text = 'N'
+ Items.Strings = (
+ 'N'
+ 'B'
+ 'D')
+ end
+ object SrcTbl15: TComboBox
+ Left = 312
+ Top = 170
+ Width = 39
+ Height = 21
+ ItemIndex = 0
+ TabOrder = 17
+ Text = 'N'
+ Items.Strings = (
+ 'N'
+ 'Y')
+ end
+ object SrcTbl16: TEdit
+ Left = 8
+ Top = 206
+ Width = 76
+ Height = 21
+ TabOrder = 18
+ end
+ object MntPntE: TEdit
+ Left = 8
+ Top = 18
+ Width = 95
+ Height = 21
+ TabOrder = 2
+ end
+end
diff --git a/app/winapp/appcmn/mntpoptdlg.h b/app/winapp/appcmn/mntpoptdlg.h
new file mode 100644
index 000000000..eec9f796c
--- /dev/null
+++ b/app/winapp/appcmn/mntpoptdlg.h
@@ -0,0 +1,62 @@
+//---------------------------------------------------------------------------
+#ifndef mntpoptdlgH
+#define mntpoptdlgH
+//---------------------------------------------------------------------------
+#include
+#include
+#include
+#include
+
+#define MAXHIST 10
+
+//---------------------------------------------------------------------------
+class TMntpOptDialog : public TForm
+{
+__published:
+ TButton *BtnCancel;
+ TButton *BtnOk;
+ TLabel *Label14;
+ TEdit *SrcTbl1;
+ TEdit *SrcTbl2;
+ TEdit *SrcTbl3;
+ TEdit *SrcTbl5;
+ TEdit *SrcTbl6;
+ TEdit *SrcTbl7;
+ TEdit *SrcTbl8;
+ TEdit *SrcTbl9;
+ TLabel *Label15;
+ TLabel *Label16;
+ TEdit *SrcTbl12;
+ TLabel *Label1;
+ TLabel *Label2;
+ TLabel *Label3;
+ TLabel *Label4;
+ TComboBox *SrcTbl4;
+ TComboBox *SrcTbl10;
+ TLabel *Label5;
+ TLabel *Label6;
+ TComboBox *SrcTbl11;
+ TLabel *Label7;
+ TLabel *Label8;
+ TLabel *Label9;
+ TEdit *SrcTbl13;
+ TLabel *Label10;
+ TComboBox *SrcTbl14;
+ TLabel *Label11;
+ TLabel *Label12;
+ TComboBox *SrcTbl15;
+ TLabel *Label13;
+ TEdit *SrcTbl16;
+ TEdit *MntPntE;
+ TLabel *Label17;
+ void __fastcall FormShow(TObject *Sender);
+ void __fastcall BtnOkClick(TObject *Sender);
+private:
+public:
+ AnsiString MntPnt,MntpStr;
+ __fastcall TMntpOptDialog(TComponent* Owner);
+};
+//---------------------------------------------------------------------------
+extern PACKAGE TMntpOptDialog *MntpOptDialog;
+//---------------------------------------------------------------------------
+#endif
diff --git a/app/appcmn/refdlg.cpp b/app/winapp/appcmn/refdlg.cpp
similarity index 85%
rename from app/appcmn/refdlg.cpp
rename to app/winapp/appcmn/refdlg.cpp
index 7ff0d7f2a..6a4c4c6e0 100644
--- a/app/appcmn/refdlg.cpp
+++ b/app/winapp/appcmn/refdlg.cpp
@@ -10,7 +10,8 @@
#pragma resource "*.dfm"
TRefDialog *RefDialog;
-#define CHARDEG 0x00B0 // character code of degree
+#define CHARDEG "\302\260" // character code of degree (UTF-8)
+#define STALIST_WIDTH 470 // width of StaList (px)
//---------------------------------------------------------------------------
static double str2dbl(AnsiString str)
@@ -23,24 +24,28 @@ static double str2dbl(AnsiString str)
__fastcall TRefDialog::TRefDialog(TComponent* Owner)
: TForm(Owner)
{
+ Opt=0;
Pos[0]=Pos[1]=Pos[2]=RovPos[0]=RovPos[1]=RovPos[2]=0.0;
}
//---------------------------------------------------------------------------
void __fastcall TRefDialog::FormShow(TObject *Sender)
{
FILE *fp;
- UnicodeString s;
- int width[]={30,80,90,65,40,70,55};
+ UTF8String s;
+ double scale;
+ int width[]={30,80,90,65,50,80,55};
- FontScale=Screen->PixelsPerInch;
+ BtnLoad->Visible=Opt;
+
+ scale=(double)StaList->Width/STALIST_WIDTH;
+
for (int i=0;i<7;i++) {
- StaList->ColWidths[i]=width[i]*FontScale/96;
+ StaList->ColWidths[i]=(int)(width[i]*scale);
}
- StaList->DefaultRowHeight=16*FontScale/96;
StaList->Cells[0][0]=" No";
- StaList->Cells[1][0]=s.sprintf(L" Latitude(%c)" ,CHARDEG);
- StaList->Cells[2][0]=s.sprintf(L" Longitude(%c)",CHARDEG);
- StaList->Cells[3][0]=" Height(m)";
+ StaList->Cells[1][0]=s.sprintf(" Latitude (%s)" ,CHARDEG);
+ StaList->Cells[2][0]=s.sprintf(" Longitude (%s)",CHARDEG);
+ StaList->Cells[3][0]=" Height (m)";
StaList->Cells[4][0]=" Id";
StaList->Cells[5][0]=" Name";
StaList->Cells[6][0]=" Dist(km)";
@@ -52,6 +57,7 @@ void __fastcall TRefDialog::StaListMouseDown(TObject *Sender,
TMouseButton Button, TShiftState Shift, int X, int Y)
{
int col,row;
+
StaList->MouseToCell(X,Y,col,row);
if (row==0) SortList(col);
}
@@ -93,12 +99,17 @@ void __fastcall TRefDialog::FindList(void)
if (n<=1) return;
i=r.Top<0||r.Top>=n?0:r.Top;
- j=i>=n?1:i+1;
+ j=(i>=n)?1:i+1;
+
for (;;) {
- if (StaList->Cells[4][j].Pos(str)==1||
- StaList->Cells[5][j].Pos(str)==1) {
- r.Top=j; r.Bottom=j; r.Left=0; r.Right=6;
+ if (StaList->Cells[4][j].Pos(str)>0||
+ StaList->Cells[5][j].Pos(str)>0) {
+ r.Top=j;
+ r.Bottom=j;
+ r.Left=0;
+ r.Right=6;
StaList->Selection=r;
+
if (jTopRow+1||j>=StaList->TopRow+nmax) {
if (jTopRow=1;
else if (j>=n-nmax) StaList->TopRow=n-nmax;
@@ -129,10 +140,14 @@ void __fastcall TRefDialog::LoadList(void)
return;
}
if (!(fp=fopen(StaPosFile.c_str(),"r"))) return;
+
while (fgets(buff,sizeof(buff),fp)) {
if ((p=strchr(buff,'%'))) *p='\0';
- pos[0]=pos[1]=pos[2]=0.0; code[0]='\0'; name[0]='\0';
- if (sscanf(buff,"%lf %lf %lf %s %s",pos,pos+1,pos+2,code,name)<3) continue;
+ pos[0]=pos[1]=pos[2]=0.0;
+ code[0]='\0';
+ name[0]='\0';
+ if (sscanf(buff,"%lf %lf %lf %255s %255s",pos,pos+1,pos+2,code,
+ name)<3) continue;
StaList->RowCount=++n+1;
AddRef(n,pos,code,name);
}
@@ -150,8 +165,10 @@ void __fastcall TRefDialog::LoadSinex(void)
FILE *fp;
char buff[256],code[256],*p;
double rr[3],pos[3];
- if (!(fp=fopen(StaPosFile.c_str(),"r"))) return;
int n=0,sol=0;
+
+ if (!(fp=fopen(StaPosFile.c_str(),"r"))) return;
+
while (fgets(buff,sizeof(buff),fp)) {
if (strstr(buff,"+SOLUTION/ESTIMATE")) sol=1;
else if (strstr(buff,"-SOLUTION/ESTIMATE")) sol=0;
@@ -188,11 +205,9 @@ void __fastcall TRefDialog::SortList(int col)
for (int i=1;iRowCount;i++) {
int j=i;
for (int k=i+1;kRowCount;k++) {
- AnsiString StaList_Cells1=StaList->Cells[col][j];
- AnsiString StaList_Cells2=StaList->Cells[col][k];
- char *s1=StaList_Cells1.c_str();
- char *s2=StaList_Cells2.c_str();
- if (strcmp(s1,s2)>0) j=k;
+ AnsiString s1=StaList->Cells[col][j];
+ AnsiString s2=StaList->Cells[col][k];
+ if (strcmp(s1.c_str(),s2.c_str())>0) j=k;
}
if (j==i) continue;
for (int k=0;kColCount;k++) {
@@ -207,6 +222,7 @@ void __fastcall TRefDialog::AddRef(int n, double *pos, const char *code,
const char *name)
{
AnsiString s;
+
int i=StaList->RowCount;
StaList->Cells[0][i-1]=s.sprintf("%4d",n);
StaList->Cells[1][i-1]=s.sprintf("%13.9f",pos[0]);
@@ -220,7 +236,9 @@ void __fastcall TRefDialog::AddRef(int n, double *pos, const char *code,
int __fastcall TRefDialog::InputRef(void)
{
int n=StaList->RowCount;
- TGridRect r=StaList->Selection; if (r.Top<1||n<=r.Top) return 0;
+
+ TGridRect r=StaList->Selection;
+ if (r.Top<1||n<=r.Top) return 0;
Pos[0]=str2dbl(StaList->Cells[1][r.Top]);
Pos[1]=str2dbl(StaList->Cells[2][r.Top]);
Pos[2]=str2dbl(StaList->Cells[3][r.Top]);
@@ -231,10 +249,15 @@ int __fastcall TRefDialog::InputRef(void)
//---------------------------------------------------------------------------
void __fastcall TRefDialog::UpdateDist(void)
{
+ AnsiString s;
double pos[3],ru[3],rr[3];
- for (int i=0;i<3;i++) pos[i]=RovPos[i];
+
+ matcpy(pos,RovPos,3,1);
if (norm(pos,3)<=0.0) return;
- pos[0]*=D2R; pos[1]*=D2R; pos2ecef(pos,ru);
+ pos[0]*=D2R;
+ pos[1]*=D2R;
+ pos2ecef(pos,ru);
+
for (int i=1;iRowCount;i++) {
if (StaList->Cells[1][i]=="") continue;
pos[0]=str2dbl(StaList->Cells[1][i])*D2R;
@@ -242,7 +265,6 @@ void __fastcall TRefDialog::UpdateDist(void)
pos[2]=str2dbl(StaList->Cells[3][i]);
pos2ecef(pos,rr);
for (int j=0;j<3;j++) rr[j]-=ru[j];
- AnsiString s;
StaList->Cells[6][i]=s.sprintf("%6.1f",norm(rr,3)/1E3);
}
}
diff --git a/app/appcmn/refdlg.dfm b/app/winapp/appcmn/refdlg.dfm
similarity index 83%
rename from app/appcmn/refdlg.dfm
rename to app/winapp/appcmn/refdlg.dfm
index 83068f81a..a5b5c6b9f 100644
--- a/app/appcmn/refdlg.dfm
+++ b/app/winapp/appcmn/refdlg.dfm
@@ -4,8 +4,11 @@ object RefDialog: TRefDialog
BorderIcons = [biSystemMenu]
Caption = 'Stations'
ClientHeight = 443
- ClientWidth = 433
+ ClientWidth = 470
Color = clWhite
+ Constraints.MaxWidth = 486
+ Constraints.MinHeight = 200
+ Constraints.MinWidth = 486
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
@@ -19,8 +22,8 @@ object RefDialog: TRefDialog
object StaList: TStringGrid
Left = 0
Top = 0
- Width = 433
- Height = 412
+ Width = 470
+ Height = 410
Margins.Top = 1
Margins.Bottom = 1
Align = alClient
@@ -51,9 +54,9 @@ object RefDialog: TRefDialog
end
object Panel1: TPanel
Left = 0
- Top = 412
- Width = 433
- Height = 31
+ Top = 410
+ Width = 470
+ Height = 33
Align = alBottom
BevelOuter = bvNone
TabOrder = 1
@@ -61,16 +64,16 @@ object RefDialog: TRefDialog
Left = 2
Top = 2
Width = 70
- Height = 27
- Caption = '&Load'
+ Height = 29
+ Caption = '&Load...'
TabOrder = 0
OnClick = BtnLoadClick
end
object Panel2: TPanel
- Left = 280
+ Left = 322
Top = 0
- Width = 153
- Height = 31
+ Width = 148
+ Height = 33
Align = alRight
BevelOuter = bvNone
TabOrder = 1
@@ -78,35 +81,35 @@ object RefDialog: TRefDialog
Left = 4
Top = 2
Width = 70
- Height = 27
+ Height = 29
Caption = '&OK'
ModalResult = 1
TabOrder = 0
OnClick = BtnOKClick
end
object BtnCancel: TButton
- Left = 80
+ Left = 76
Top = 2
Width = 70
- Height = 27
+ Height = 29
Caption = '&Cancel'
ModalResult = 2
TabOrder = 1
end
end
object BtnFind: TButton
- Left = 202
+ Left = 175
Top = 2
Width = 45
- Height = 27
+ Height = 29
Caption = 'Find'
TabOrder = 2
OnClick = BtnFindClick
end
object FindStr: TEdit
- Left = 112
- Top = 4
- Width = 89
+ Left = 75
+ Top = 6
+ Width = 96
Height = 21
TabOrder = 3
OnKeyPress = FindStrKeyPress
diff --git a/app/appcmn/refdlg.h b/app/winapp/appcmn/refdlg.h
similarity index 98%
rename from app/appcmn/refdlg.h
rename to app/winapp/appcmn/refdlg.h
index aeedd3eba..eed730247 100644
--- a/app/appcmn/refdlg.h
+++ b/app/winapp/appcmn/refdlg.h
@@ -40,7 +40,7 @@ class TRefDialog : public TForm
void __fastcall UpdateDist(void);
public:
AnsiString StaPosFile,StaId,StaName;
- int FontScale,Format;
+ int Opt,FontScale;
double Pos[3],RovPos[3];
__fastcall TRefDialog(TComponent* Owner);
};
diff --git a/app/appcmn/serioptdlg.cpp b/app/winapp/appcmn/serioptdlg.cpp
similarity index 87%
rename from app/appcmn/serioptdlg.cpp
rename to app/winapp/appcmn/serioptdlg.cpp
index ca4a6491f..137b0f740 100644
--- a/app/appcmn/serioptdlg.cpp
+++ b/app/winapp/appcmn/serioptdlg.cpp
@@ -48,23 +48,11 @@ void __fastcall TSerialOptDialog::FormShow(TObject *Sender)
OutTcpPort->Checked=false;
TcpPort->Text="";
}
- BtnCmd->Visible=Opt;
+ OutTcpPort->Enabled=Opt;
+ TcpPort ->Enabled=Opt;
UpdateEnable();
}
//---------------------------------------------------------------------------
-void __fastcall TSerialOptDialog::BtnCmdClick(TObject *Sender)
-{
- for (int i=0;i<2;i++) {
- CmdOptDialog->Cmds[i]=Cmds[i];
- CmdOptDialog->CmdEna[i]=CmdEna[i];
- }
- if (CmdOptDialog->ShowModal()!=mrOk) return;
- for (int i=0;i<2;i++) {
- Cmds[i]=CmdOptDialog->Cmds[i];
- CmdEna[i]=CmdOptDialog->CmdEna[i];
- }
-}
-//---------------------------------------------------------------------------
void __fastcall TSerialOptDialog::BtnOkClick(TObject *Sender)
{
const char *parity[]={"n","e","o"},*fctr[]={"off","rts"};
diff --git a/app/appcmn/serioptdlg.dfm b/app/winapp/appcmn/serioptdlg.dfm
similarity index 94%
rename from app/appcmn/serioptdlg.dfm
rename to app/winapp/appcmn/serioptdlg.dfm
index 5b2d63260..1752b9c0b 100644
--- a/app/appcmn/serioptdlg.dfm
+++ b/app/winapp/appcmn/serioptdlg.dfm
@@ -59,6 +59,15 @@ object SerialOptDialog: TSerialOptDialog
Height = 13
Caption = 'Flow Control'
end
+ object OutTcpPort: TCheckBox
+ Left = 10
+ Top = 84
+ Width = 223
+ Height = 17
+ Caption = 'Output Received Stream to TCP Port :'
+ TabOrder = 8
+ OnClick = OutTcpPortClick
+ end
object BtnOk: TButton
Left = 123
Top = 108
@@ -166,30 +175,11 @@ object SerialOptDialog: TSerialOptDialog
'None'
'RTS/CTS')
end
- object BtnCmd: TButton
- Left = 9
- Top = 108
- Width = 89
- Height = 29
- Caption = '&Commands...'
- TabOrder = 8
- Visible = False
- OnClick = BtnCmdClick
- end
- object OutTcpPort: TCheckBox
- Left = 10
- Top = 84
- Width = 195
- Height = 17
- Caption = 'Output Received Stream to TCP Port :'
- TabOrder = 9
- OnClick = OutTcpPortClick
- end
object TcpPort: TEdit
Left = 225
Top = 82
Width = 78
Height = 21
- TabOrder = 10
+ TabOrder = 9
end
end
diff --git a/app/appcmn/serioptdlg.h b/app/winapp/appcmn/serioptdlg.h
similarity index 95%
rename from app/appcmn/serioptdlg.h
rename to app/winapp/appcmn/serioptdlg.h
index 38c2f4568..c805a05a2 100644
--- a/app/appcmn/serioptdlg.h
+++ b/app/winapp/appcmn/serioptdlg.h
@@ -24,12 +24,10 @@ class TSerialOptDialog : public TForm
TComboBox *StopBits;
TLabel *Label8;
TComboBox *FlowCtr;
- TButton *BtnCmd;
TCheckBox *OutTcpPort;
TEdit *TcpPort;
void __fastcall FormShow(TObject *Sender);
void __fastcall BtnOkClick(TObject *Sender);
- void __fastcall BtnCmdClick(TObject *Sender);
void __fastcall OutTcpPortClick(TObject *Sender);
private:
void __fastcall UpdatePortList(void);
diff --git a/app/appcmn/tcpoptdlg.cpp b/app/winapp/appcmn/tcpoptdlg.cpp
similarity index 61%
rename from app/appcmn/tcpoptdlg.cpp
rename to app/winapp/appcmn/tcpoptdlg.cpp
index bbdfbeff8..ac567bbd4 100644
--- a/app/appcmn/tcpoptdlg.cpp
+++ b/app/winapp/appcmn/tcpoptdlg.cpp
@@ -5,12 +5,13 @@
#include "rtklib.h"
#include "tcpoptdlg.h"
+#include "mntpoptdlg.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TTcpOptDialog *TcpOptDialog;
-#define NTRIP_TIMEOUT 10000 // response timeout (ms)
+#define NTRIP_TIMEOUT 5000 // response timeout (ms)
#define NTRIP_CYCLE 50 // processing cycle (ms)
#define MAXSRCTBL 512000 // max source table size (bytes)
#define ENDSRCTBL "ENDSOURCETABLE" // end marker of table
@@ -31,9 +32,11 @@ void __fastcall TTcpOptDialog::FormShow(TObject *Sender)
char *passwd=(char *)"",*str=(char *)"";
const char *ti[]={"TCP Server Options ","TCP Client Options",
"NTRIP Server Options","NTRIP Client Options",
- "NTRIP Caster Client Options",
+ "NTRIP Caster Options",
"NTRIP Caster Server Options", "UDP Server Options",
"UDP Client Options"};
+ int i;
+
strcpy(buff,Path.c_str());
if (!(p=strchr(buff,'@'))) p=buff;
@@ -56,57 +59,44 @@ void __fastcall TTcpOptDialog::FormShow(TObject *Sender)
if ((q=strchr(p,':'))) {
*q='\0'; port=q+1;
}
- AnsiString Addr_Text=p,Port_Text=port,MntPnt_Text=mntpnt;
- AnsiString User_Text=user,Passwd_Text=passwd,Str_Text=str;
- AnsiString Space="";
- LabelAddr->Caption=Opt>=2&&Opt<=5?"NTRIP Caster Host":"Server Address";
-
- Addr->Enabled=(Opt>=1&&Opt<=3)||Opt==7;
- LabelAddr->Enabled=(Opt>=1&&Opt<=3)||Opt==7;
- Addr->Text=Addr_Text;
-
- Port->Text=Port_Text;
-
- MntPnt->Enabled=Opt>=2&&Opt<=4;
- LabelMntPnt->Enabled=Opt>=2&&Opt<=4;
- MntPnt->Text=MntPnt_Text;
-
- User->Enabled=Opt>=3&&Opt<=4;
- LabelUser->Enabled=Opt>=3&&Opt<=4;
- User->Text=User_Text;
-
- Passwd->Enabled=Opt>=2&&Opt<=5;
- LabelPasswd->Enabled=Opt>=2&&Opt<=5;
- Passwd->Text=Passwd_Text;
-
- Str->Enabled=Opt==2;
- LabelStr->Enabled=Opt==2;
- Str->Text=Str_Text;
-
Caption=ti[Opt];
- Addr->Items->Clear();
- MntPnt->Items->Clear();
+ LabelAddr ->Caption=(Opt>=2&&Opt<=5)?"NTRIP Caster Address":"Server Address";
+ LabelAddr ->Enabled=(Opt>=1&&Opt<=3)||Opt==7;
+ Addr ->Enabled=(Opt>=1&&Opt<=3)||Opt==7;
+ LabelMntPnt->Enabled=(Opt>=2&&Opt<=4);
+ MntPnt ->Enabled=(Opt>=2&&Opt<=4);
+ LabelUser ->Enabled=(Opt>=3&&Opt<=4);
+ User ->Enabled=(Opt>=3&&Opt<=4);
+ LabelPasswd->Enabled=(Opt>=2&&Opt<=5);
+ Passwd ->Enabled=(Opt>=2&&Opt<=5);
+ BtnNtrip ->Visible=(Opt==3);
+ BtnBrows ->Visible=(Opt==3);
+ BtnMountp ->Visible=(Opt==2||Opt==4);
- for (int i=0;iItems->Add(History[i]);
+ Addr ->Text=p;
+ Port ->Text=port;
+ MntPnt->Text=mntpnt;
+ User ->Text=user;
+ Passwd->Text=passwd;
+ if (Opt==2||Opt==4) {
+ MntpStr=str;
}
+ Addr->Items->Clear();
for (int i=0;iItems->Add(MntpHist[i]);
+ if (History[i]!="") Addr->Items->Add(History[i]);
}
- BtnNtrip->Visible=Opt==2||Opt==3;
}
//---------------------------------------------------------------------------
void __fastcall TTcpOptDialog::BtnOkClick(TObject *Sender)
{
AnsiString User_Text=User->Text,Passwd_Text=Passwd->Text;
AnsiString Addr_Text=Addr->Text,Port_Text=Port->Text;
- AnsiString MntPnt_Text=MntPnt->Text,Str_Text=Str->Text,s;
+ AnsiString MntPnt_Text=MntPnt->Text,s;
Path=s.sprintf("%s:%s@%s:%s/%s:%s",User_Text.c_str(),Passwd_Text.c_str(),
Addr_Text.c_str(),Port_Text.c_str(),MntPnt_Text.c_str(),
- Str_Text.c_str());
+ MntpStr.c_str());
AddHist(Addr,History);
- AddHist(MntPnt,MntpHist);
}
//---------------------------------------------------------------------------
void __fastcall TTcpOptDialog::AddHist(TComboBox *list, AnsiString *hist)
@@ -126,10 +116,51 @@ void __fastcall TTcpOptDialog::AddHist(TComboBox *list, AnsiString *hist)
}
//---------------------------------------------------------------------------
void __fastcall TTcpOptDialog::BtnNtripClick(TObject *Sender)
+{
+ TButton *btn=(TButton *)Sender;
+ AnsiString path=Addr->Text+":"+Port->Text;
+ stream_t str;
+ uint32_t tick=tickget();
+ char *p=buff,msg[MAXSTRMSG],mntpnt[256];
+
+ strinit(&str);
+ if (!stropen(&str,STR_NTRIPCLI,STR_MODE_R,path.c_str())) return;
+
+ btn->Enabled=false;
+ *p='\0';
+ while (pNTRIP_TIMEOUT) break;
+ }
+ strclose(&str);
+
+ MntPnt->Clear();
+ for (p=buff;(p=strstr(p,"STR;"));p+=4) {
+ if (sscanf(p,"STR;%255[^;]",mntpnt)==1) {
+ MntPnt->AddItem(mntpnt,NULL);
+ }
+ }
+ btn->Enabled=true;
+}
+//---------------------------------------------------------------------------
+void __fastcall TTcpOptDialog::BtnBrowsClick(TObject *Sender)
{
AnsiString Addr_Text=Addr->Text;
AnsiString Port_Text=Port->Text;
- ExecCmd("srctblbrows "+Addr_Text+":"+Port_Text,1);
+ if (Port_Text!="") Addr_Text+=":"+Port_Text;
+ ExecCmd("srctblbrows "+Addr_Text,1);
+}
+//---------------------------------------------------------------------------
+void __fastcall TTcpOptDialog::BtnMountpClick(TObject *Sender)
+{
+ MntpOptDialog->MntPnt=MntPnt->Text;
+ MntpOptDialog->MntpStr=MntpStr;
+ if (MntpOptDialog->ShowModal()!=mrOk) return;
+ MntPnt->Text=MntpOptDialog->MntPnt;
+ MntpStr=MntpOptDialog->MntpStr;
}
//---------------------------------------------------------------------------
int __fastcall TTcpOptDialog::ExecCmd(AnsiString cmd, int show)
@@ -146,3 +177,4 @@ int __fastcall TTcpOptDialog::ExecCmd(AnsiString cmd, int show)
return 1;
}
//---------------------------------------------------------------------------
+
diff --git a/app/appcmn/tcpoptdlg.dfm b/app/winapp/appcmn/tcpoptdlg.dfm
similarity index 69%
rename from app/appcmn/tcpoptdlg.dfm
rename to app/winapp/appcmn/tcpoptdlg.dfm
index 72b366dff..a1d4a7dc1 100644
--- a/app/appcmn/tcpoptdlg.dfm
+++ b/app/winapp/appcmn/tcpoptdlg.dfm
@@ -4,8 +4,8 @@ object TcpOptDialog: TTcpOptDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'TCP Options'
- ClientHeight = 153
- ClientWidth = 318
+ ClientHeight = 124
+ ClientWidth = 365
Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -19,27 +19,27 @@ object TcpOptDialog: TTcpOptDialog
TextHeight = 13
object LabelAddr: TLabel
Left = 8
- Top = 4
+ Top = 3
Width = 96
Height = 13
Caption = 'TCP Server Address'
end
object LabelPort: TLabel
- Left = 212
- Top = 4
+ Left = 258
+ Top = 3
Width = 20
Height = 13
Caption = 'Port'
end
object LabelUser: TLabel
- Left = 110
+ Left = 126
Top = 42
- Width = 37
+ Width = 36
Height = 13
- Caption = 'User-ID'
+ Caption = 'User ID'
end
object LabelPasswd: TLabel
- Left = 212
+ Left = 244
Top = 42
Width = 46
Height = 13
@@ -52,26 +52,29 @@ object TcpOptDialog: TTcpOptDialog
Height = 13
Caption = 'Mountpoint'
end
- object LabelStr: TLabel
- Left = 8
- Top = 82
- Width = 28
- Height = 13
- Caption = 'String'
+ object BtnMountp: TButton
+ Left = 6
+ Top = 89
+ Width = 100
+ Height = 29
+ Caption = 'Mountp Options...'
+ TabOrder = 9
+ Visible = False
+ OnClick = BtnMountpClick
end
object BtnCancel: TButton
- Left = 223
- Top = 121
- Width = 89
+ Left = 273
+ Top = 89
+ Width = 84
Height = 29
Caption = '&Cancel'
ModalResult = 2
TabOrder = 0
end
object BtnOk: TButton
- Left = 130
- Top = 121
- Width = 89
+ Left = 187
+ Top = 89
+ Width = 84
Height = 29
Caption = '&OK'
ModalResult = 1
@@ -79,59 +82,63 @@ object TcpOptDialog: TTcpOptDialog
OnClick = BtnOkClick
end
object Port: TEdit
- Left = 210
- Top = 18
+ Left = 255
+ Top = 17
Width = 101
Height = 21
- TabOrder = 4
+ TabOrder = 3
end
object User: TEdit
- Left = 108
+ Left = 124
Top = 56
- Width = 101
+ Width = 116
Height = 21
- TabOrder = 6
+ TabOrder = 5
end
object Passwd: TEdit
- Left = 210
+ Left = 242
Top = 56
- Width = 101
+ Width = 114
Height = 21
PasswordChar = '*'
- TabOrder = 7
- end
- object Str: TEdit
- Left = 6
- Top = 96
- Width = 305
- Height = 21
- TabOrder = 8
+ TabOrder = 6
end
object Addr: TComboBox
Left = 6
- Top = 18
- Width = 203
+ Top = 17
+ Width = 247
Height = 21
AutoComplete = False
DropDownCount = 16
- TabOrder = 3
+ TabOrder = 2
end
object MntPnt: TComboBox
Left = 6
Top = 56
- Width = 101
+ Width = 116
Height = 21
AutoComplete = False
DropDownCount = 16
- TabOrder = 5
+ TabOrder = 4
end
object BtnNtrip: TButton
- Left = 6
- Top = 121
- Width = 89
+ Left = 92
+ Top = 89
+ Width = 84
Height = 29
- Caption = '&Ntrip...'
- TabOrder = 2
+ Caption = '&Get Mountp'
+ TabOrder = 8
+ Visible = False
OnClick = BtnNtripClick
end
+ object BtnBrows: TButton
+ Left = 6
+ Top = 89
+ Width = 84
+ Height = 29
+ Caption = '&Browse...'
+ TabOrder = 7
+ Visible = False
+ OnClick = BtnBrowsClick
+ end
end
diff --git a/app/appcmn/tcpoptdlg.h b/app/winapp/appcmn/tcpoptdlg.h
similarity index 86%
rename from app/appcmn/tcpoptdlg.h
rename to app/winapp/appcmn/tcpoptdlg.h
index 1f984a29f..820dfab2a 100644
--- a/app/appcmn/tcpoptdlg.h
+++ b/app/winapp/appcmn/tcpoptdlg.h
@@ -23,20 +23,22 @@ class TTcpOptDialog : public TForm
TLabel *LabelUser;
TLabel *LabelPasswd;
TLabel *LabelMntPnt;
- TEdit *Str;
- TLabel *LabelStr;
TComboBox *Addr;
TComboBox *MntPnt;
TButton *BtnNtrip;
+ TButton *BtnMountp;
+ TButton *BtnBrows;
void __fastcall FormShow(TObject *Sender);
void __fastcall BtnOkClick(TObject *Sender);
void __fastcall BtnNtripClick(TObject *Sender);
+ void __fastcall BtnMountpClick(TObject *Sender);
+ void __fastcall BtnBrowsClick(TObject *Sender);
private:
- void __fastcall AddHist(TComboBox *list, AnsiString *hist);
int __fastcall ExecCmd(AnsiString cmd, int show);
+ void __fastcall AddHist(TComboBox *list, AnsiString *hist);
public:
int Opt;
- AnsiString Path,History[MAXHIST],MntpHist[MAXHIST];
+ AnsiString Path,MntpStr,History[MAXHIST];
__fastcall TTcpOptDialog(TComponent* Owner);
};
//---------------------------------------------------------------------------
diff --git a/app/appcmn/timedlg.cpp b/app/winapp/appcmn/timedlg.cpp
similarity index 100%
rename from app/appcmn/timedlg.cpp
rename to app/winapp/appcmn/timedlg.cpp
diff --git a/app/appcmn/timedlg.dfm b/app/winapp/appcmn/timedlg.dfm
similarity index 100%
rename from app/appcmn/timedlg.dfm
rename to app/winapp/appcmn/timedlg.dfm
diff --git a/app/appcmn/timedlg.h b/app/winapp/appcmn/timedlg.h
similarity index 100%
rename from app/appcmn/timedlg.h
rename to app/winapp/appcmn/timedlg.h
diff --git a/app/appcmn/tspandlg.cpp b/app/winapp/appcmn/tspandlg.cpp
similarity index 96%
rename from app/appcmn/tspandlg.cpp
rename to app/winapp/appcmn/tspandlg.cpp
index bd366f8d5..c2321996e 100644
--- a/app/appcmn/tspandlg.cpp
+++ b/app/winapp/appcmn/tspandlg.cpp
@@ -79,7 +79,7 @@ void __fastcall TSpanDialog::TimeIntFClick(TObject *Sender)
}
//---------------------------------------------------------------------------
void __fastcall TSpanDialog::TimeY1UDChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString TimeY1_Text=TimeY1->Text,s;
double ep[]={2000,1,1,0,0,0};
@@ -97,7 +97,7 @@ void __fastcall TSpanDialog::TimeY1UDChangingEx(TObject *Sender,
}
//---------------------------------------------------------------------------
void __fastcall TSpanDialog::TimeH1UDChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString TimeH1_Text=TimeH1->Text,s;
int hms[3]={0},sec,p=TimeH1->SelStart,ud=Direction==updUp?1:-1;
@@ -110,7 +110,7 @@ void __fastcall TSpanDialog::TimeH1UDChangingEx(TObject *Sender,
}
//---------------------------------------------------------------------------
void __fastcall TSpanDialog::TimeY2UDChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString TimeY2_Text=TimeY2->Text,s;
double ep[]={2000,1,1,0,0,0};
@@ -128,7 +128,7 @@ void __fastcall TSpanDialog::TimeY2UDChangingEx(TObject *Sender,
}
//---------------------------------------------------------------------------
void __fastcall TSpanDialog::TimeH2UDChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString TimeH2_Text=TimeH2->Text,s;
int hms[3]={0},sec,p=TimeH2->SelStart,ud=Direction==updUp?1:-1;
diff --git a/app/appcmn/tspandlg.dfm b/app/winapp/appcmn/tspandlg.dfm
similarity index 94%
rename from app/appcmn/tspandlg.dfm
rename to app/winapp/appcmn/tspandlg.dfm
index 06d367e46..36ed35447 100644
--- a/app/appcmn/tspandlg.dfm
+++ b/app/winapp/appcmn/tspandlg.dfm
@@ -5,7 +5,7 @@ object SpanDialog: TSpanDialog
BorderStyle = bsDialog
Caption = 'Time Span/Interval'
ClientHeight = 119
- ClientWidth = 303
+ ClientWidth = 307
Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -18,7 +18,7 @@ object SpanDialog: TSpanDialog
PixelsPerInch = 96
TextHeight = 13
object BtnTime2: TSpeedButton
- Left = 281
+ Left = 286
Top = 36
Width = 13
Height = 23
@@ -27,8 +27,8 @@ object SpanDialog: TSpanDialog
OnClick = BtnTime2Click
end
object BtnTime1: TSpeedButton
- Left = 281
- Top = 10
+ Left = 286
+ Top = 8
Width = 13
Height = 23
Caption = '?'
@@ -84,7 +84,7 @@ object SpanDialog: TSpanDialog
object TimeY2: TEdit
Left = 118
Top = 36
- Width = 63
+ Width = 66
Height = 21
TabOrder = 8
Text = '2001/01/01'
@@ -93,14 +93,14 @@ object SpanDialog: TSpanDialog
object TimeY1: TEdit
Left = 118
Top = 10
- Width = 63
+ Width = 66
Height = 21
TabOrder = 3
Text = '2000/01/01'
OnKeyDown = TimeY1KeyDown
end
object TimeY1UD: TUpDown
- Left = 182
+ Left = 185
Top = 9
Width = 21
Height = 23
@@ -111,7 +111,7 @@ object SpanDialog: TSpanDialog
OnChangingEx = TimeY1UDChangingEx
end
object TimeY2UD: TUpDown
- Left = 182
+ Left = 185
Top = 35
Width = 21
Height = 23
@@ -124,7 +124,7 @@ object SpanDialog: TSpanDialog
object TimeH2: TEdit
Left = 207
Top = 36
- Width = 51
+ Width = 54
Height = 21
TabOrder = 10
Text = '23:59:59'
@@ -133,14 +133,14 @@ object SpanDialog: TSpanDialog
object TimeH1: TEdit
Left = 207
Top = 10
- Width = 51
+ Width = 54
Height = 21
TabOrder = 5
Text = '00:00:00'
OnKeyDown = TimeH1KeyDown
end
object TimeH1UD: TUpDown
- Left = 259
+ Left = 262
Top = 9
Width = 21
Height = 23
@@ -151,7 +151,7 @@ object SpanDialog: TSpanDialog
OnChangingEx = TimeH1UDChangingEx
end
object TimeH2UD: TUpDown
- Left = 259
+ Left = 262
Top = 35
Width = 21
Height = 23
@@ -164,7 +164,7 @@ object SpanDialog: TSpanDialog
object EditTimeInt: TComboBox
Left = 118
Top = 62
- Width = 85
+ Width = 88
Height = 21
DropDownCount = 16
TabOrder = 13
diff --git a/app/appcmn/tspandlg.h b/app/winapp/appcmn/tspandlg.h
similarity index 90%
rename from app/appcmn/tspandlg.h
rename to app/winapp/appcmn/tspandlg.h
index ca634a0a0..110bd94f4 100644
--- a/app/appcmn/tspandlg.h
+++ b/app/winapp/appcmn/tspandlg.h
@@ -34,13 +34,13 @@ class TSpanDialog : public TForm
void __fastcall TimeEndFClick(TObject *Sender);
void __fastcall TimeIntFClick(TObject *Sender);
void __fastcall TimeY1UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall TimeH1UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall TimeY2UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall TimeH2UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall FormShow(TObject *Sender);
void __fastcall BtnTime1Click(TObject *Sender);
void __fastcall BtnTime2Click(TObject *Sender);
diff --git a/app/appcmn/viewer.cpp b/app/winapp/appcmn/viewer.cpp
similarity index 76%
rename from app/appcmn/viewer.cpp
rename to app/winapp/appcmn/viewer.cpp
index c409b852f..ac94dc4f9 100644
--- a/app/appcmn/viewer.cpp
+++ b/app/winapp/appcmn/viewer.cpp
@@ -17,7 +17,6 @@ __fastcall TTextViewer::TTextViewer(TComponent* Owner)
: TForm(Owner)
{
Option=1;
- TextStr=NULL;
}
//---------------------------------------------------------------------------
void __fastcall TTextViewer::FormShow(TObject *Sender)
@@ -67,16 +66,21 @@ void __fastcall TTextViewer::BtnCloseClick(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TTextViewer::BtnFindClick(TObject *Sender)
{
- wchar_t *p,*str=FindStr->Text.c_str();
+ TSearchTypes opt;
+ UnicodeString str=FindStr->Text;
+ int p;
- if (!TextStr) return;
-
- if (Text->SelLength>0) p=TextStr+Text->SelStart+1;
- else p=TextStr+Text->SelStart;
+ if (Text->SelLength>0) {
+ p=Text->SelStart+1;
+ }
+ else {
+ p=0;
+ }
+ p=Text->FindText(str,p,Text->Text.Length()-p,opt);
- if ((p=wcsstr(p,str))) {
- Text->SelStart=(int)(p-TextStr);
- Text->SelLength=wcslen(str);
+ if (p>=0) {
+ Text->SelStart=p;
+ Text->SelLength=str.Length();
}
else {
Text->SelStart=0;
@@ -91,48 +95,24 @@ void __fastcall TTextViewer::FindStrKeyPress(TObject *Sender, char &Key)
//---------------------------------------------------------------------------
void __fastcall TTextViewer::Read(AnsiString file)
{
- char s[256],*path[]={s};
+ char s[1024],*path[]={s};
if (expath(file.c_str(),path,1)<1) return;
- AnsiString str(path[0]);
+
Screen->Cursor=crHourGlass;
try {
- Text->Lines->LoadFromFile(str);
-
- // read text for search
- ReadText(str);
+ file=path[0];
+ Text->Lines->LoadFromFile(file);
}
catch (...) {
Screen->Cursor=crDefault;
return;
}
Screen->Cursor=crDefault;
- Caption=str;
+ Caption=file;
File=file;
-}
-//---------------------------------------------------------------------------
-void __fastcall TTextViewer::ReadText(AnsiString file)
-{
- FILE *fp;
- int i,len,n=0,nmax=0;
- char buff[1024];
- wchar_t wbuff[1024];
-
- free(TextStr); TextStr=NULL;
-
- if (!(fp=fopen(file.c_str(),"r"))) return;
-
- for (i=0;fgets(buff,sizeof(buff),fp)&&i=nmax) {
- nmax=nmax<=0?16384:nmax*2;
- if (!(TextStr=(wchar_t *)realloc(TextStr,sizeof(wchar_t)*nmax))) break;
- }
- wcscpy(TextStr+n,wbuff);
- n+=len;
- }
- fclose(fp);
+ Text->SelStart=0;
+ Text->SelLength=0;
}
//---------------------------------------------------------------------------
void __fastcall TTextViewer::Save(AnsiString file)
diff --git a/app/appcmn/viewer.dfm b/app/winapp/appcmn/viewer.dfm
similarity index 100%
rename from app/appcmn/viewer.dfm
rename to app/winapp/appcmn/viewer.dfm
diff --git a/app/appcmn/viewer.h b/app/winapp/appcmn/viewer.h
similarity index 94%
rename from app/appcmn/viewer.h
rename to app/winapp/appcmn/viewer.h
index 8e4f0a91e..75232999f 100644
--- a/app/appcmn/viewer.h
+++ b/app/winapp/appcmn/viewer.h
@@ -11,7 +11,7 @@
#include
#include
-#define MAXLINE 20000
+#define MAXLINE 1000000
//---------------------------------------------------------------------------
class TTextViewer : public TForm
@@ -37,9 +37,7 @@ class TTextViewer : public TForm
void __fastcall FindStrKeyPress(TObject *Sender, char &Key);
private:
AnsiString File;
- wchar_t *TextStr;
- void __fastcall ReadText(AnsiString file);
void __fastcall UpdateText(void);
public:
int Option;
diff --git a/app/appcmn/vieweropt.cpp b/app/winapp/appcmn/vieweropt.cpp
similarity index 100%
rename from app/appcmn/vieweropt.cpp
rename to app/winapp/appcmn/vieweropt.cpp
diff --git a/app/appcmn/vieweropt.dfm b/app/winapp/appcmn/vieweropt.dfm
similarity index 100%
rename from app/appcmn/vieweropt.dfm
rename to app/winapp/appcmn/vieweropt.dfm
diff --git a/app/appcmn/vieweropt.h b/app/winapp/appcmn/vieweropt.h
similarity index 100%
rename from app/appcmn/vieweropt.h
rename to app/winapp/appcmn/vieweropt.h
diff --git a/app/clean_winapp.bat b/app/winapp/clean_winapp.bat
similarity index 63%
rename from app/clean_winapp.bat
rename to app/winapp/clean_winapp.bat
index f45c34b35..742192829 100644
--- a/app/clean_winapp.bat
+++ b/app/winapp/clean_winapp.bat
@@ -4,18 +4,12 @@ cd ..
cd rtknavi
call clean.bat
cd ..
-cd rtknavi_mkl
-call clean.bat
-cd ..
cd rtkplot
call clean.bat
cd ..
cd rtkpost
call clean.bat
cd ..
-cd rtkpost_mkl
-call clean.bat
-cd ..
cd srctblbrows
call clean.bat
cd ..
@@ -28,10 +22,4 @@ cd ..
cd rtklaunch
call clean.bat
cd ..
-cd rtkpost_win64
-call clean.bat
-cd ..
-cd rtknavi_win64
-call clean.bat
-cd ..
diff --git a/app/icon/Thumbs.db b/app/winapp/icon/Thumbs.db
similarity index 100%
rename from app/icon/Thumbs.db
rename to app/winapp/icon/Thumbs.db
diff --git a/app/icon/alt.bmp b/app/winapp/icon/alt.bmp
similarity index 100%
rename from app/icon/alt.bmp
rename to app/winapp/icon/alt.bmp
diff --git a/app/icon/anim.bmp b/app/winapp/icon/anim.bmp
similarity index 100%
rename from app/icon/anim.bmp
rename to app/winapp/icon/anim.bmp
diff --git a/app/icon/anim1.bmp b/app/winapp/icon/anim1.bmp
similarity index 100%
rename from app/icon/anim1.bmp
rename to app/winapp/icon/anim1.bmp
diff --git a/app/icon/anim1_red.bmp b/app/winapp/icon/anim1_red.bmp
similarity index 100%
rename from app/icon/anim1_red.bmp
rename to app/winapp/icon/anim1_red.bmp
diff --git a/app/icon/anim2.bmp b/app/winapp/icon/anim2.bmp
similarity index 100%
rename from app/icon/anim2.bmp
rename to app/winapp/icon/anim2.bmp
diff --git a/app/icon/anim3.bmp b/app/winapp/icon/anim3.bmp
similarity index 100%
rename from app/icon/anim3.bmp
rename to app/winapp/icon/anim3.bmp
diff --git a/app/icon/arrow.bmp b/app/winapp/icon/arrow.bmp
similarity index 100%
rename from app/icon/arrow.bmp
rename to app/winapp/icon/arrow.bmp
diff --git a/app/icon/arrow_r.bmp b/app/winapp/icon/arrow_r.bmp
similarity index 100%
rename from app/icon/arrow_r.bmp
rename to app/winapp/icon/arrow_r.bmp
diff --git a/app/icon/border.bmp b/app/winapp/icon/border.bmp
similarity index 100%
rename from app/icon/border.bmp
rename to app/winapp/icon/border.bmp
diff --git a/app/icon/building.bmp b/app/winapp/icon/building.bmp
similarity index 100%
rename from app/icon/building.bmp
rename to app/winapp/icon/building.bmp
diff --git a/app/icon/chart.bmp b/app/winapp/icon/chart.bmp
similarity index 100%
rename from app/icon/chart.bmp
rename to app/winapp/icon/chart.bmp
diff --git a/app/icon/connect.bmp b/app/winapp/icon/connect.bmp
similarity index 100%
rename from app/icon/connect.bmp
rename to app/winapp/icon/connect.bmp
diff --git a/app/icon/connect1.bmp b/app/winapp/icon/connect1.bmp
similarity index 100%
rename from app/icon/connect1.bmp
rename to app/winapp/icon/connect1.bmp
diff --git a/app/icon/connect2.bmp b/app/winapp/icon/connect2.bmp
similarity index 100%
rename from app/icon/connect2.bmp
rename to app/winapp/icon/connect2.bmp
diff --git a/app/icon/data01.bmp b/app/winapp/icon/data01.bmp
similarity index 100%
rename from app/icon/data01.bmp
rename to app/winapp/icon/data01.bmp
diff --git a/app/icon/data02.bmp b/app/winapp/icon/data02.bmp
similarity index 100%
rename from app/icon/data02.bmp
rename to app/winapp/icon/data02.bmp
diff --git a/app/icon/data03.bmp b/app/winapp/icon/data03.bmp
similarity index 100%
rename from app/icon/data03.bmp
rename to app/winapp/icon/data03.bmp
diff --git a/app/icon/data04.bmp b/app/winapp/icon/data04.bmp
similarity index 100%
rename from app/icon/data04.bmp
rename to app/winapp/icon/data04.bmp
diff --git a/app/icon/data1.bmp b/app/winapp/icon/data1.bmp
similarity index 100%
rename from app/icon/data1.bmp
rename to app/winapp/icon/data1.bmp
diff --git a/app/icon/data12.bmp b/app/winapp/icon/data12.bmp
similarity index 100%
rename from app/icon/data12.bmp
rename to app/winapp/icon/data12.bmp
diff --git a/app/icon/data2.bmp b/app/winapp/icon/data2.bmp
similarity index 100%
rename from app/icon/data2.bmp
rename to app/winapp/icon/data2.bmp
diff --git a/app/icon/del.bmp b/app/winapp/icon/del.bmp
similarity index 100%
rename from app/icon/del.bmp
rename to app/winapp/icon/del.bmp
diff --git a/app/icon/doc.bmp b/app/winapp/icon/doc.bmp
similarity index 100%
rename from app/icon/doc.bmp
rename to app/winapp/icon/doc.bmp
diff --git a/app/icon/down.bmp b/app/winapp/icon/down.bmp
similarity index 100%
rename from app/icon/down.bmp
rename to app/winapp/icon/down.bmp
diff --git a/app/icon/expand.bmp b/app/winapp/icon/expand.bmp
similarity index 100%
rename from app/icon/expand.bmp
rename to app/winapp/icon/expand.bmp
diff --git a/app/icon/fitd.bmp b/app/winapp/icon/fitd.bmp
similarity index 100%
rename from app/icon/fitd.bmp
rename to app/winapp/icon/fitd.bmp
diff --git a/app/icon/fith.bmp b/app/winapp/icon/fith.bmp
similarity index 100%
rename from app/icon/fith.bmp
rename to app/winapp/icon/fith.bmp
diff --git a/app/icon/fitv.bmp b/app/winapp/icon/fitv.bmp
similarity index 100%
rename from app/icon/fitv.bmp
rename to app/winapp/icon/fitv.bmp
diff --git a/app/icon/ge.bmp b/app/winapp/icon/ge.bmp
similarity index 100%
rename from app/icon/ge.bmp
rename to app/winapp/icon/ge.bmp
diff --git a/app/icon/gm.bmp b/app/winapp/icon/gm.bmp
similarity index 100%
rename from app/icon/gm.bmp
rename to app/winapp/icon/gm.bmp
diff --git a/app/icon/graph.bmp b/app/winapp/icon/graph.bmp
similarity index 100%
rename from app/icon/graph.bmp
rename to app/winapp/icon/graph.bmp
diff --git a/app/icon/grid.bmp b/app/winapp/icon/grid.bmp
similarity index 100%
rename from app/icon/grid.bmp
rename to app/winapp/icon/grid.bmp
diff --git a/app/icon/grid2.bmp b/app/winapp/icon/grid2.bmp
similarity index 100%
rename from app/icon/grid2.bmp
rename to app/winapp/icon/grid2.bmp
diff --git a/app/icon/headup.bmp b/app/winapp/icon/headup.bmp
similarity index 100%
rename from app/icon/headup.bmp
rename to app/winapp/icon/headup.bmp
diff --git a/app/icon/home.bmp b/app/winapp/icon/home.bmp
similarity index 100%
rename from app/icon/home.bmp
rename to app/winapp/icon/home.bmp
diff --git a/app/icon/load.bmp b/app/winapp/icon/load.bmp
similarity index 100%
rename from app/icon/load.bmp
rename to app/winapp/icon/load.bmp
diff --git a/app/icon/map.bmp b/app/winapp/icon/map.bmp
similarity index 100%
rename from app/icon/map.bmp
rename to app/winapp/icon/map.bmp
diff --git a/app/winapp/icon/marker.pptx b/app/winapp/icon/marker.pptx
new file mode 100644
index 000000000..2bc7394da
Binary files /dev/null and b/app/winapp/icon/marker.pptx differ
diff --git a/app/winapp/icon/marker_blue.png b/app/winapp/icon/marker_blue.png
new file mode 100644
index 000000000..042db5755
Binary files /dev/null and b/app/winapp/icon/marker_blue.png differ
diff --git a/app/winapp/icon/marker_bluegreen.png b/app/winapp/icon/marker_bluegreen.png
new file mode 100644
index 000000000..590675e59
Binary files /dev/null and b/app/winapp/icon/marker_bluegreen.png differ
diff --git a/app/winapp/icon/marker_bluegreenx2.png b/app/winapp/icon/marker_bluegreenx2.png
new file mode 100644
index 000000000..7bf6d3944
Binary files /dev/null and b/app/winapp/icon/marker_bluegreenx2.png differ
diff --git a/app/winapp/icon/marker_bluex2.png b/app/winapp/icon/marker_bluex2.png
new file mode 100644
index 000000000..1148c059e
Binary files /dev/null and b/app/winapp/icon/marker_bluex2.png differ
diff --git a/app/winapp/icon/marker_green.png b/app/winapp/icon/marker_green.png
new file mode 100644
index 000000000..f2f20e99d
Binary files /dev/null and b/app/winapp/icon/marker_green.png differ
diff --git a/app/winapp/icon/marker_greenx2.png b/app/winapp/icon/marker_greenx2.png
new file mode 100644
index 000000000..f76450aec
Binary files /dev/null and b/app/winapp/icon/marker_greenx2.png differ
diff --git a/app/winapp/icon/marker_magenta.png b/app/winapp/icon/marker_magenta.png
new file mode 100644
index 000000000..562a5cb39
Binary files /dev/null and b/app/winapp/icon/marker_magenta.png differ
diff --git a/app/winapp/icon/marker_magentax2.png b/app/winapp/icon/marker_magentax2.png
new file mode 100644
index 000000000..52a0b90e8
Binary files /dev/null and b/app/winapp/icon/marker_magentax2.png differ
diff --git a/app/winapp/icon/marker_orange.png b/app/winapp/icon/marker_orange.png
new file mode 100644
index 000000000..d2b79e564
Binary files /dev/null and b/app/winapp/icon/marker_orange.png differ
diff --git a/app/winapp/icon/marker_orangex2.png b/app/winapp/icon/marker_orangex2.png
new file mode 100644
index 000000000..d2b79e564
Binary files /dev/null and b/app/winapp/icon/marker_orangex2.png differ
diff --git a/app/winapp/icon/marker_red.png b/app/winapp/icon/marker_red.png
new file mode 100644
index 000000000..fb46f2f91
Binary files /dev/null and b/app/winapp/icon/marker_red.png differ
diff --git a/app/winapp/icon/marker_redx2.png b/app/winapp/icon/marker_redx2.png
new file mode 100644
index 000000000..741b55b90
Binary files /dev/null and b/app/winapp/icon/marker_redx2.png differ
diff --git a/app/winapp/icon/marker_skel.png b/app/winapp/icon/marker_skel.png
new file mode 100644
index 000000000..b6d5c308d
Binary files /dev/null and b/app/winapp/icon/marker_skel.png differ
diff --git a/app/winapp/icon/marker_yellow.png b/app/winapp/icon/marker_yellow.png
new file mode 100644
index 000000000..84b183d3e
Binary files /dev/null and b/app/winapp/icon/marker_yellow.png differ
diff --git a/app/winapp/icon/marker_yellowx2.png b/app/winapp/icon/marker_yellowx2.png
new file mode 100644
index 000000000..0384f86f5
Binary files /dev/null and b/app/winapp/icon/marker_yellowx2.png differ
diff --git a/app/icon/navctr.bmp b/app/winapp/icon/navctr.bmp
similarity index 100%
rename from app/icon/navctr.bmp
rename to app/winapp/icon/navctr.bmp
diff --git a/app/icon/navi.bmp b/app/winapp/icon/navi.bmp
similarity index 100%
rename from app/icon/navi.bmp
rename to app/winapp/icon/navi.bmp
diff --git a/app/icon/navi0.bmp b/app/winapp/icon/navi0.bmp
similarity index 100%
rename from app/icon/navi0.bmp
rename to app/winapp/icon/navi0.bmp
diff --git a/app/icon/norm.bmp b/app/winapp/icon/norm.bmp
similarity index 100%
rename from app/icon/norm.bmp
rename to app/winapp/icon/norm.bmp
diff --git a/app/icon/ori.bmp b/app/winapp/icon/ori.bmp
similarity index 100%
rename from app/icon/ori.bmp
rename to app/winapp/icon/ori.bmp
diff --git a/app/icon/pause.bmp b/app/winapp/icon/pause.bmp
similarity index 100%
rename from app/icon/pause.bmp
rename to app/winapp/icon/pause.bmp
diff --git a/app/icon/pnt2.bmp b/app/winapp/icon/pnt2.bmp
similarity index 100%
rename from app/icon/pnt2.bmp
rename to app/winapp/icon/pnt2.bmp
diff --git a/app/icon/point.bmp b/app/winapp/icon/point.bmp
similarity index 100%
rename from app/icon/point.bmp
rename to app/winapp/icon/point.bmp
diff --git a/app/icon/point.ico b/app/winapp/icon/point.ico
similarity index 100%
rename from app/icon/point.ico
rename to app/winapp/icon/point.ico
diff --git a/app/icon/rarrow.bmp b/app/winapp/icon/rarrow.bmp
similarity index 100%
rename from app/icon/rarrow.bmp
rename to app/winapp/icon/rarrow.bmp
diff --git a/app/icon/reload.bmp b/app/winapp/icon/reload.bmp
similarity index 100%
rename from app/icon/reload.bmp
rename to app/winapp/icon/reload.bmp
diff --git a/app/icon/road.bmp b/app/winapp/icon/road.bmp
similarity index 100%
rename from app/icon/road.bmp
rename to app/winapp/icon/road.bmp
diff --git a/app/icon/rotl.bmp b/app/winapp/icon/rotl.bmp
similarity index 100%
rename from app/icon/rotl.bmp
rename to app/winapp/icon/rotl.bmp
diff --git a/app/icon/rotr.bmp b/app/winapp/icon/rotr.bmp
similarity index 100%
rename from app/icon/rotr.bmp
rename to app/winapp/icon/rotr.bmp
diff --git a/app/icon/rtk1.bmp b/app/winapp/icon/rtk1.bmp
similarity index 100%
rename from app/icon/rtk1.bmp
rename to app/winapp/icon/rtk1.bmp
diff --git a/app/icon/rtk1.ico b/app/winapp/icon/rtk1.ico
similarity index 100%
rename from app/icon/rtk1.ico
rename to app/winapp/icon/rtk1.ico
diff --git a/app/icon/rtk10.bmp b/app/winapp/icon/rtk10.bmp
similarity index 100%
rename from app/icon/rtk10.bmp
rename to app/winapp/icon/rtk10.bmp
diff --git a/app/icon/rtk10.ico b/app/winapp/icon/rtk10.ico
similarity index 100%
rename from app/icon/rtk10.ico
rename to app/winapp/icon/rtk10.ico
diff --git a/app/icon/rtk2.bmp b/app/winapp/icon/rtk2.bmp
similarity index 100%
rename from app/icon/rtk2.bmp
rename to app/winapp/icon/rtk2.bmp
diff --git a/app/icon/rtk2.ico b/app/winapp/icon/rtk2.ico
similarity index 100%
rename from app/icon/rtk2.ico
rename to app/winapp/icon/rtk2.ico
diff --git a/app/icon/rtk3.bmp b/app/winapp/icon/rtk3.bmp
similarity index 100%
rename from app/icon/rtk3.bmp
rename to app/winapp/icon/rtk3.bmp
diff --git a/app/icon/rtk3.ico b/app/winapp/icon/rtk3.ico
similarity index 100%
rename from app/icon/rtk3.ico
rename to app/winapp/icon/rtk3.ico
diff --git a/app/icon/rtk4.bmp b/app/winapp/icon/rtk4.bmp
similarity index 100%
rename from app/icon/rtk4.bmp
rename to app/winapp/icon/rtk4.bmp
diff --git a/app/icon/rtk4.ico b/app/winapp/icon/rtk4.ico
similarity index 100%
rename from app/icon/rtk4.ico
rename to app/winapp/icon/rtk4.ico
diff --git a/app/icon/rtk5.bmp b/app/winapp/icon/rtk5.bmp
similarity index 100%
rename from app/icon/rtk5.bmp
rename to app/winapp/icon/rtk5.bmp
diff --git a/app/icon/rtk5.ico b/app/winapp/icon/rtk5.ico
similarity index 100%
rename from app/icon/rtk5.ico
rename to app/winapp/icon/rtk5.ico
diff --git a/app/icon/rtk6.bmp b/app/winapp/icon/rtk6.bmp
similarity index 100%
rename from app/icon/rtk6.bmp
rename to app/winapp/icon/rtk6.bmp
diff --git a/app/icon/rtk6.ico b/app/winapp/icon/rtk6.ico
similarity index 100%
rename from app/icon/rtk6.ico
rename to app/winapp/icon/rtk6.ico
diff --git a/app/icon/rtk7.bmp b/app/winapp/icon/rtk7.bmp
similarity index 100%
rename from app/icon/rtk7.bmp
rename to app/winapp/icon/rtk7.bmp
diff --git a/app/icon/rtk7.ico b/app/winapp/icon/rtk7.ico
similarity index 100%
rename from app/icon/rtk7.ico
rename to app/winapp/icon/rtk7.ico
diff --git a/app/icon/rtk8.bmp b/app/winapp/icon/rtk8.bmp
similarity index 100%
rename from app/icon/rtk8.bmp
rename to app/winapp/icon/rtk8.bmp
diff --git a/app/icon/rtk8.ico b/app/winapp/icon/rtk8.ico
similarity index 100%
rename from app/icon/rtk8.ico
rename to app/winapp/icon/rtk8.ico
diff --git a/app/icon/rtk8_tray.ico b/app/winapp/icon/rtk8_tray.ico
similarity index 100%
rename from app/icon/rtk8_tray.ico
rename to app/winapp/icon/rtk8_tray.ico
diff --git a/app/icon/rtk9.bmp b/app/winapp/icon/rtk9.bmp
similarity index 100%
rename from app/icon/rtk9.bmp
rename to app/winapp/icon/rtk9.bmp
diff --git a/app/icon/rtk9.ico b/app/winapp/icon/rtk9.ico
similarity index 100%
rename from app/icon/rtk9.ico
rename to app/winapp/icon/rtk9.ico
diff --git a/app/icon/rtk9s.bmp b/app/winapp/icon/rtk9s.bmp
similarity index 100%
rename from app/icon/rtk9s.bmp
rename to app/winapp/icon/rtk9s.bmp
diff --git a/app/icon/sat.doc b/app/winapp/icon/sat.doc
similarity index 80%
rename from app/icon/sat.doc
rename to app/winapp/icon/sat.doc
index c87574011..2365bc4df 100644
Binary files a/app/icon/sat.doc and b/app/winapp/icon/sat.doc differ
diff --git a/app/icon/scale.bmp b/app/winapp/icon/scale.bmp
similarity index 100%
rename from app/icon/scale.bmp
rename to app/winapp/icon/scale.bmp
diff --git a/app/icon/showp.bmp b/app/winapp/icon/showp.bmp
similarity index 100%
rename from app/icon/showp.bmp
rename to app/winapp/icon/showp.bmp
diff --git a/app/icon/showt.bmp b/app/winapp/icon/showt.bmp
similarity index 100%
rename from app/icon/showt.bmp
rename to app/winapp/icon/showt.bmp
diff --git a/app/icon/shrink.bmp b/app/winapp/icon/shrink.bmp
similarity index 100%
rename from app/icon/shrink.bmp
rename to app/winapp/icon/shrink.bmp
diff --git a/app/icon/sqr.bmp b/app/winapp/icon/sqr.bmp
similarity index 100%
rename from app/icon/sqr.bmp
rename to app/winapp/icon/sqr.bmp
diff --git a/app/icon/start.bmp b/app/winapp/icon/start.bmp
similarity index 100%
rename from app/icon/start.bmp
rename to app/winapp/icon/start.bmp
diff --git a/app/icon/status.bmp b/app/winapp/icon/status.bmp
similarity index 100%
rename from app/icon/status.bmp
rename to app/winapp/icon/status.bmp
diff --git a/app/icon/stop.bmp b/app/winapp/icon/stop.bmp
similarity index 100%
rename from app/icon/stop.bmp
rename to app/winapp/icon/stop.bmp
diff --git a/app/icon/stop2.bmp b/app/winapp/icon/stop2.bmp
similarity index 100%
rename from app/icon/stop2.bmp
rename to app/winapp/icon/stop2.bmp
diff --git a/app/icon/svrarrow.bmp b/app/winapp/icon/svrarrow.bmp
similarity index 100%
rename from app/icon/svrarrow.bmp
rename to app/winapp/icon/svrarrow.bmp
diff --git a/app/icon/tilt.bmp b/app/winapp/icon/tilt.bmp
similarity index 100%
rename from app/icon/tilt.bmp
rename to app/winapp/icon/tilt.bmp
diff --git a/app/icon/tool.bmp b/app/winapp/icon/tool.bmp
similarity index 100%
rename from app/icon/tool.bmp
rename to app/winapp/icon/tool.bmp
diff --git a/app/icon/track.bmp b/app/winapp/icon/track.bmp
similarity index 100%
rename from app/icon/track.bmp
rename to app/winapp/icon/track.bmp
diff --git a/app/icon/trackc.bmp b/app/winapp/icon/trackc.bmp
similarity index 100%
rename from app/icon/trackc.bmp
rename to app/winapp/icon/trackc.bmp
diff --git a/app/icon/trackl.bmp b/app/winapp/icon/trackl.bmp
similarity index 100%
rename from app/icon/trackl.bmp
rename to app/winapp/icon/trackl.bmp
diff --git a/app/icon/trackr.bmp b/app/winapp/icon/trackr.bmp
similarity index 100%
rename from app/icon/trackr.bmp
rename to app/winapp/icon/trackr.bmp
diff --git a/app/icon/tray0.bmp b/app/winapp/icon/tray0.bmp
similarity index 100%
rename from app/icon/tray0.bmp
rename to app/winapp/icon/tray0.bmp
diff --git a/app/icon/tray0.ico b/app/winapp/icon/tray0.ico
similarity index 100%
rename from app/icon/tray0.ico
rename to app/winapp/icon/tray0.ico
diff --git a/app/icon/tray1.bmp b/app/winapp/icon/tray1.bmp
similarity index 100%
rename from app/icon/tray1.bmp
rename to app/winapp/icon/tray1.bmp
diff --git a/app/icon/tray1.ico b/app/winapp/icon/tray1.ico
similarity index 100%
rename from app/icon/tray1.ico
rename to app/winapp/icon/tray1.ico
diff --git a/app/icon/tray2.bmp b/app/winapp/icon/tray2.bmp
similarity index 100%
rename from app/icon/tray2.bmp
rename to app/winapp/icon/tray2.bmp
diff --git a/app/icon/tray2.ico b/app/winapp/icon/tray2.ico
similarity index 100%
rename from app/icon/tray2.ico
rename to app/winapp/icon/tray2.ico
diff --git a/app/icon/ttray.bmp b/app/winapp/icon/ttray.bmp
similarity index 100%
rename from app/icon/ttray.bmp
rename to app/winapp/icon/ttray.bmp
diff --git a/app/icon/undu.bmp b/app/winapp/icon/undu.bmp
similarity index 100%
rename from app/icon/undu.bmp
rename to app/winapp/icon/undu.bmp
diff --git a/app/icon/up.bmp b/app/winapp/icon/up.bmp
similarity index 100%
rename from app/icon/up.bmp
rename to app/winapp/icon/up.bmp
diff --git a/app/icon/up2.bmp b/app/winapp/icon/up2.bmp
similarity index 100%
rename from app/icon/up2.bmp
rename to app/winapp/icon/up2.bmp
diff --git a/app/icon/vmap.bmp b/app/winapp/icon/vmap.bmp
similarity index 100%
rename from app/icon/vmap.bmp
rename to app/winapp/icon/vmap.bmp
diff --git a/app/icon/wait1.bmp b/app/winapp/icon/wait1.bmp
similarity index 100%
rename from app/icon/wait1.bmp
rename to app/winapp/icon/wait1.bmp
diff --git a/app/icon/wait2.bmp b/app/winapp/icon/wait2.bmp
similarity index 100%
rename from app/icon/wait2.bmp
rename to app/winapp/icon/wait2.bmp
diff --git a/app/icon/wait3.bmp b/app/winapp/icon/wait3.bmp
similarity index 100%
rename from app/icon/wait3.bmp
rename to app/winapp/icon/wait3.bmp
diff --git a/app/icon/wait4.bmp b/app/winapp/icon/wait4.bmp
similarity index 100%
rename from app/icon/wait4.bmp
rename to app/winapp/icon/wait4.bmp
diff --git a/app/icon/wait5.bmp b/app/winapp/icon/wait5.bmp
similarity index 100%
rename from app/icon/wait5.bmp
rename to app/winapp/icon/wait5.bmp
diff --git a/app/icon/wait6.bmp b/app/winapp/icon/wait6.bmp
similarity index 100%
rename from app/icon/wait6.bmp
rename to app/winapp/icon/wait6.bmp
diff --git a/app/icon/wait7.bmp b/app/winapp/icon/wait7.bmp
similarity index 100%
rename from app/icon/wait7.bmp
rename to app/winapp/icon/wait7.bmp
diff --git a/app/icon/wait8.bmp b/app/winapp/icon/wait8.bmp
similarity index 100%
rename from app/icon/wait8.bmp
rename to app/winapp/icon/wait8.bmp
diff --git a/app/install_winapp.bat b/app/winapp/install_winapp.bat
similarity index 54%
rename from app/install_winapp.bat
rename to app/winapp/install_winapp.bat
index 0962f471b..4687849ca 100644
--- a/app/install_winapp.bat
+++ b/app/winapp/install_winapp.bat
@@ -4,18 +4,12 @@ cd ..
cd rtknavi
call install.bat
cd ..
-cd rtknavi_mkl
-call install.bat
-cd ..
cd rtkplot
call install.bat
cd ..
cd rtkpost
call install.bat
cd ..
-cd rtkpost_mkl
-call install.bat
-cd ..
cd srctblbrows
call install.bat
cd ..
@@ -28,15 +22,3 @@ cd ..
cd rtklaunch
call install.bat
cd ..
-cd rtkvideo
-call install.bat
-cd ..
-cd rtkvplayer
-call install.bat
-cd ..
-cd rtkpost_win64
-call install.bat
-cd ..
-cd rtknavi_win64
-call install.bat
-cd ..
diff --git a/app/rtkconv/clean.bat b/app/winapp/rtkconv/clean.bat
similarity index 100%
rename from app/rtkconv/clean.bat
rename to app/winapp/rtkconv/clean.bat
diff --git a/app/rtkconv/codeopt.cpp b/app/winapp/rtkconv/codeopt.cpp
similarity index 59%
rename from app/rtkconv/codeopt.cpp
rename to app/winapp/rtkconv/codeopt.cpp
index 9b4882e3b..64075ca33 100644
--- a/app/rtkconv/codeopt.cpp
+++ b/app/winapp/rtkconv/codeopt.cpp
@@ -17,7 +17,7 @@ __fastcall TCodeOptDialog::TCodeOptDialog(TComponent* Owner)
//---------------------------------------------------------------------------
void __fastcall TCodeOptDialog::FormShow(TObject *Sender)
{
- char mask[7][64]={""};
+ char mask[7][MAXCODE+1]={""};
for (int i=0;i<7;i++) strcpy(mask[i],ConvOptDialog->CodeMask[i].c_str());
G01->Checked=mask[0][ 0]=='1';
@@ -48,6 +48,12 @@ void __fastcall TCodeOptDialog::FormShow(TObject *Sender)
R44->Checked=mask[1][43]=='1';
R45->Checked=mask[1][44]=='1';
R46->Checked=mask[1][45]=='1';
+ R66->Checked=mask[1][65]=='1'; //
+ R67->Checked=mask[1][66]=='1'; //
+ R68->Checked=mask[1][67]=='1'; //
+ R30->Checked=mask[1][29]=='1'; //
+ R31->Checked=mask[1][30]=='1'; //
+ R33->Checked=mask[1][32]=='1'; //
E01->Checked=mask[2][ 0]=='1';
E10->Checked=mask[2][ 9]=='1';
E11->Checked=mask[2][10]=='1';
@@ -78,18 +84,38 @@ void __fastcall TCodeOptDialog::FormShow(TObject *Sender)
J24->Checked=mask[3][23]=='1';
J25->Checked=mask[3][24]=='1';
J26->Checked=mask[3][25]=='1';
+ J57->Checked=mask[3][56]=='1'; //
+ J58->Checked=mask[3][57]=='1'; //
+ J59->Checked=mask[3][58]=='1'; //
+ J60->Checked=mask[3][59]=='1'; //
+ J34->Checked=mask[3][33]=='1'; //
J35->Checked=mask[3][34]=='1';
J36->Checked=mask[3][35]=='1';
J33->Checked=mask[3][32]=='1';
- C47->Checked=mask[5][46]=='1';
- C48->Checked=mask[5][47]=='1';
- C12->Checked=mask[5][11]=='1';
+ C40->Checked=mask[5][39]=='1'; //
+ C41->Checked=mask[5][40]=='1'; //
+ C18->Checked=mask[5][17]=='1'; //
C27->Checked=mask[5][26]=='1';
C28->Checked=mask[5][27]=='1';
C29->Checked=mask[5][28]=='1';
C42->Checked=mask[5][41]=='1';
C43->Checked=mask[5][42]=='1';
C33->Checked=mask[5][32]=='1';
+ C56->Checked=mask[5][55]=='1'; //
+ C02->Checked=mask[5][ 1]=='1'; //
+ C12->Checked=mask[5][11]=='1'; //
+ C10->Checked=mask[5][ 9]=='1'; //
+ C06->Checked=mask[5][ 5]=='1'; //
+ C57->Checked=mask[5][56]=='1'; //
+ C58->Checked=mask[5][57]=='1'; //
+ C26->Checked=mask[5][25]=='1'; //
+ C61->Checked=mask[5][60]=='1'; //
+ C62->Checked=mask[5][61]=='1'; //
+ C63->Checked=mask[5][62]=='1'; //
+ C64->Checked=mask[5][63]=='1'; //
+ C65->Checked=mask[5][64]=='1'; //
+ C39->Checked=mask[5][38]=='1'; //
+ C30->Checked=mask[5][29]=='1'; //
I49->Checked=mask[6][48]=='1';
I50->Checked=mask[6][49]=='1';
I51->Checked=mask[6][50]=='1';
@@ -108,7 +134,7 @@ void __fastcall TCodeOptDialog::FormShow(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TCodeOptDialog::BtnOkClick(TObject *Sender)
{
- char mask[7][64]={""};
+ char mask[7][MAXCODE+1]={""};
for (int i=0;i<7;i++) for (int j=0;jChecked) mask[0][ 0]='1';
@@ -139,6 +165,12 @@ void __fastcall TCodeOptDialog::BtnOkClick(TObject *Sender)
if (R44->Checked) mask[1][43]='1';
if (R45->Checked) mask[1][44]='1';
if (R46->Checked) mask[1][45]='1';
+ if (R66->Checked) mask[1][65]='1'; //
+ if (R67->Checked) mask[1][66]='1'; //
+ if (R68->Checked) mask[1][67]='1'; //
+ if (R30->Checked) mask[1][29]='1'; //
+ if (R31->Checked) mask[1][30]='1'; //
+ if (R33->Checked) mask[1][32]='1'; //
if (E01->Checked) mask[2][ 0]='1';
if (E10->Checked) mask[2][ 9]='1';
if (E11->Checked) mask[2][10]='1';
@@ -169,18 +201,38 @@ void __fastcall TCodeOptDialog::BtnOkClick(TObject *Sender)
if (J24->Checked) mask[3][23]='1';
if (J25->Checked) mask[3][24]='1';
if (J26->Checked) mask[3][25]='1';
+ if (J57->Checked) mask[3][56]='1'; //
+ if (J58->Checked) mask[3][57]='1'; //
+ if (J59->Checked) mask[3][58]='1'; //
+ if (J60->Checked) mask[3][59]='1'; //
+ if (J34->Checked) mask[3][33]='1'; //
if (J35->Checked) mask[3][34]='1';
if (J36->Checked) mask[3][35]='1';
if (J33->Checked) mask[3][32]='1';
- if (C47->Checked) mask[5][46]='1';
- if (C48->Checked) mask[5][47]='1';
- if (C12->Checked) mask[5][11]='1';
+ if (C40->Checked) mask[5][39]='1'; //
+ if (C41->Checked) mask[5][40]='1'; //
+ if (C18->Checked) mask[5][17]='1'; //
if (C27->Checked) mask[5][26]='1';
if (C28->Checked) mask[5][27]='1';
if (C29->Checked) mask[5][28]='1';
if (C42->Checked) mask[5][41]='1';
if (C43->Checked) mask[5][42]='1';
if (C33->Checked) mask[5][32]='1';
+ if (C56->Checked) mask[5][55]='1'; //
+ if (C02->Checked) mask[5][ 1]='1'; //
+ if (C12->Checked) mask[5][11]='1'; //
+ if (C10->Checked) mask[5][ 9]='1'; //
+ if (C06->Checked) mask[5][ 5]='1'; //
+ if (C57->Checked) mask[5][56]='1'; //
+ if (C58->Checked) mask[5][57]='1'; //
+ if (C26->Checked) mask[5][25]='1'; //
+ if (C61->Checked) mask[5][60]='1'; //
+ if (C62->Checked) mask[5][61]='1'; //
+ if (C63->Checked) mask[5][62]='1'; //
+ if (C64->Checked) mask[5][63]='1'; //
+ if (C65->Checked) mask[5][64]='1'; //
+ if (C39->Checked) mask[5][38]='1'; //
+ if (C30->Checked) mask[5][29]='1'; //
if (I49->Checked) mask[6][48]='1';
if (I50->Checked) mask[6][49]='1';
if (I51->Checked) mask[6][50]='1';
@@ -228,6 +280,12 @@ void __fastcall TCodeOptDialog::BtnSetAllClick(TObject *Sender)
R44->Checked=set;
R45->Checked=set;
R46->Checked=set;
+ R66->Checked=set; //
+ R67->Checked=set; //
+ R68->Checked=set; //
+ R30->Checked=set; //
+ R31->Checked=set; //
+ R33->Checked=set; //
E01->Checked=set;
E10->Checked=set;
E11->Checked=set;
@@ -258,18 +316,38 @@ void __fastcall TCodeOptDialog::BtnSetAllClick(TObject *Sender)
J24->Checked=set;
J25->Checked=set;
J26->Checked=set;
+ J57->Checked=set; //
+ J58->Checked=set; //
+ J59->Checked=set; //
+ J60->Checked=set; //
+ J34->Checked=set; //
J35->Checked=set;
J36->Checked=set;
J33->Checked=set;
- C47->Checked=set;
- C48->Checked=set;
- C12->Checked=set;
+ C40->Checked=set; //
+ C41->Checked=set; //
+ C18->Checked=set; //
C27->Checked=set;
C28->Checked=set;
C29->Checked=set;
C42->Checked=set;
C43->Checked=set;
C33->Checked=set;
+ C56->Checked=set; //
+ C02->Checked=set; //
+ C12->Checked=set; //
+ C10->Checked=set; //
+ C06->Checked=set; //
+ C57->Checked=set; //
+ C58->Checked=set; //
+ C26->Checked=set; //
+ C61->Checked=set; //
+ C62->Checked=set; //
+ C63->Checked=set; //
+ C64->Checked=set; //
+ C65->Checked=set; //
+ C39->Checked=set; //
+ C30->Checked=set; //
I49->Checked=set;
I50->Checked=set;
I51->Checked=set;
@@ -305,35 +383,41 @@ void __fastcall TCodeOptDialog::UpdateEnable(void)
G21->Enabled=(NavSys&SYS_GPS)&&(FreqType&FREQTYPE_L2);
G22->Enabled=(NavSys&SYS_GPS)&&(FreqType&FREQTYPE_L2);
G23->Enabled=(NavSys&SYS_GPS)&&(FreqType&FREQTYPE_L2);
- G24->Enabled=(NavSys&SYS_GPS)&&(FreqType&FREQTYPE_L5);
- G25->Enabled=(NavSys&SYS_GPS)&&(FreqType&FREQTYPE_L5);
- G26->Enabled=(NavSys&SYS_GPS)&&(FreqType&FREQTYPE_L5);
+ G24->Enabled=(NavSys&SYS_GPS)&&(FreqType&FREQTYPE_L3);
+ G25->Enabled=(NavSys&SYS_GPS)&&(FreqType&FREQTYPE_L3);
+ G26->Enabled=(NavSys&SYS_GPS)&&(FreqType&FREQTYPE_L3);
R01->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L1);
R02->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L1);
R14->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L2);
R19->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L2);
- R44->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L5);
- R45->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L5);
- R46->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L5);
+ R44->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L3);
+ R45->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L3);
+ R46->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L3);
+ R66->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L1); //
+ R67->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L1); //
+ R68->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L1); //
+ R30->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L2); //
+ R31->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L2); //
+ R33->Enabled=(NavSys&SYS_GLO)&&(FreqType&FREQTYPE_L2); //
E01->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L1);
E10->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L1);
E11->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L1);
E12->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L1);
E13->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L1);
- E24->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L5);
- E25->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L5);
- E26->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L5);
- E27->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L7);
- E28->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L7);
- E29->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L7);
- E30->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L6);
- E31->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L6);
- E32->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L6);
- E33->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L6);
- E34->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L6);
- E37->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L8);
- E38->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L8);
- E39->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L8);
+ E24->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L3);
+ E25->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L3);
+ E26->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L3);
+ E27->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L2);
+ E28->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L2);
+ E29->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L2);
+ E30->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L4);
+ E31->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L4);
+ E32->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L4);
+ E33->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L4);
+ E34->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L4);
+ E37->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L5);
+ E38->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L5);
+ E39->Enabled=(NavSys&SYS_GAL)&&(FreqType&FREQTYPE_L5);
J01->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L1);
J07->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L1);
J08->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L1);
@@ -342,33 +426,53 @@ void __fastcall TCodeOptDialog::UpdateEnable(void)
J16->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L2);
J17->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L2);
J18->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L2);
- J24->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L5);
- J25->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L5);
- J26->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L5);
- J35->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L6);
- J36->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L6);
- J33->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L6);
- C47->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L2);
- C48->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L2);
- C12->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L2);
- C27->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L7);
- C28->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L7);
- C29->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L7);
- C42->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L6);
- C43->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L6);
- C33->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L6);
- I49->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L5);
- I50->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L5);
- I51->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L5);
- I26->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L5);
- I52->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L9);
- I53->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L9);
- I54->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L9);
- I55->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L9);
+ J24->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L3);
+ J25->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L3);
+ J26->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L3);
+ J57->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L3); //
+ J58->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L3); //
+ J59->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L3); //
+ J60->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L4); //
+ J34->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L4); //
+ J35->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L4);
+ J36->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L4);
+ J33->Enabled=(NavSys&SYS_QZS)&&(FreqType&FREQTYPE_L4);
+ C40->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L1); //
+ C41->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L1); //
+ C18->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L1); //
+ C27->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L2);
+ C28->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L2);
+ C29->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L2);
+ C42->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L4);
+ C43->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L4);
+ C33->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L4);
+ C56->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L1); //
+ C02->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L1); //
+ C12->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L1); //
+ C10->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L1); //
+ C06->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L1); //
+ C57->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L3); //
+ C58->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L3); //
+ C26->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L3); //
+ C61->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L2); //
+ C62->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L2); //
+ C63->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L2); //
+ C64->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L5); //
+ C65->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L5); //
+ C39->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L5); //
+ C30->Enabled=(NavSys&SYS_CMP)&&(FreqType&FREQTYPE_L4); //
+ I49->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L1);
+ I50->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L1);
+ I51->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L1);
+ I26->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L1);
+ I52->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L2);
+ I53->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L2);
+ I54->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L2);
+ I55->Enabled=(NavSys&SYS_IRN)&&(FreqType&FREQTYPE_L2);
S01->Enabled=(NavSys&SYS_SBS)&&(FreqType&FREQTYPE_L1);
- S24->Enabled=(NavSys&SYS_SBS)&&(FreqType&FREQTYPE_L5);
- S25->Enabled=(NavSys&SYS_SBS)&&(FreqType&FREQTYPE_L5);
- S26->Enabled=(NavSys&SYS_SBS)&&(FreqType&FREQTYPE_L5);
+ S24->Enabled=(NavSys&SYS_SBS)&&(FreqType&FREQTYPE_L3);
+ S25->Enabled=(NavSys&SYS_SBS)&&(FreqType&FREQTYPE_L3);
+ S26->Enabled=(NavSys&SYS_SBS)&&(FreqType&FREQTYPE_L3);
}
//---------------------------------------------------------------------------
diff --git a/app/rtkconv/codeopt.dfm b/app/winapp/rtkconv/codeopt.dfm
similarity index 69%
rename from app/rtkconv/codeopt.dfm
rename to app/winapp/rtkconv/codeopt.dfm
index 8354e847b..5f7ee00e7 100644
--- a/app/rtkconv/codeopt.dfm
+++ b/app/winapp/rtkconv/codeopt.dfm
@@ -1,10 +1,10 @@
object CodeOptDialog: TCodeOptDialog
Left = 158
- Top = 0
+ Top = 52
BorderStyle = bsDialog
Caption = 'Signal Mask'
- ClientHeight = 333
- ClientWidth = 397
+ ClientHeight = 402
+ ClientWidth = 400
Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -17,12 +17,12 @@ object CodeOptDialog: TCodeOptDialog
PixelsPerInch = 96
TextHeight = 13
object GroupBox5: TGroupBox
- Left = 0
- Top = 296
- Width = 166
- Height = 34
+ Left = 4
+ Top = 362
+ Width = 162
+ Height = 35
Caption = 'SBAS'
- TabOrder = 6
+ TabOrder = 8
object S01: TCheckBox
Left = 10
Top = 14
@@ -57,35 +57,35 @@ object CodeOptDialog: TCodeOptDialog
end
end
object BtnOk: TButton
- Left = 253
- Top = 301
- Width = 71
+ Left = 242
+ Top = 368
+ Width = 74
Height = 29
- Caption = 'OK'
+ Caption = '&OK'
ModalResult = 1
TabOrder = 0
OnClick = BtnOkClick
end
object BtnCancel: TButton
- Left = 324
- Top = 301
- Width = 71
+ Left = 320
+ Top = 368
+ Width = 74
Height = 29
Cancel = True
- Caption = 'Cancel'
+ Caption = '&Cancel'
ModalResult = 2
TabOrder = 1
end
object GroupBox1: TGroupBox
- Left = 0
- Top = 1
- Width = 394
- Height = 70
+ Left = 4
+ Top = 0
+ Width = 390
+ Height = 72
Caption = 'GPS'
TabOrder = 2
object G01: TCheckBox
Left = 10
- Top = 14
+ Top = 15
Width = 44
Height = 16
Caption = '1C'
@@ -93,7 +93,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G02: TCheckBox
Left = 48
- Top = 14
+ Top = 15
Width = 44
Height = 16
Caption = '1P'
@@ -125,7 +125,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G14: TCheckBox
Left = 10
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '2C'
@@ -133,7 +133,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G15: TCheckBox
Left = 48
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '2D'
@@ -141,7 +141,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G16: TCheckBox
Left = 86
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '2S'
@@ -149,7 +149,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G17: TCheckBox
Left = 124
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '2L'
@@ -157,7 +157,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G18: TCheckBox
Left = 162
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '2X'
@@ -165,7 +165,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G24: TCheckBox
Left = 10
- Top = 50
+ Top = 52
Width = 44
Height = 16
Caption = '5I'
@@ -173,7 +173,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G25: TCheckBox
Left = 48
- Top = 50
+ Top = 52
Width = 44
Height = 16
Caption = '5Q'
@@ -181,7 +181,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G26: TCheckBox
Left = 86
- Top = 50
+ Top = 52
Width = 44
Height = 16
Caption = '5X'
@@ -189,7 +189,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G19: TCheckBox
Left = 200
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '2P'
@@ -205,7 +205,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G20: TCheckBox
Left = 238
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '2W'
@@ -221,7 +221,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G21: TCheckBox
Left = 276
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '2Y'
@@ -229,7 +229,7 @@ object CodeOptDialog: TCodeOptDialog
end
object G22: TCheckBox
Left = 314
- Top = 32
+ Top = 33
Width = 40
Height = 16
Caption = '2M'
@@ -245,18 +245,18 @@ object CodeOptDialog: TCodeOptDialog
end
object G23: TCheckBox
Left = 352
- Top = 32
- Width = 40
+ Top = 33
+ Width = 35
Height = 16
Caption = '2N'
TabOrder = 17
end
end
object GroupBox2: TGroupBox
- Left = 0
- Top = 71
- Width = 394
- Height = 36
+ Left = 4
+ Top = 73
+ Width = 390
+ Height = 52
Caption = 'GLONASS'
TabOrder = 3
object R01: TCheckBox
@@ -308,19 +308,67 @@ object CodeOptDialog: TCodeOptDialog
TabOrder = 5
end
object R46: TCheckBox
- Left = 238
+ Left = 239
Top = 14
Width = 44
Height = 16
Caption = '3X'
TabOrder = 6
end
+ object R66: TCheckBox
+ Left = 276
+ Top = 14
+ Width = 44
+ Height = 16
+ Caption = '4A'
+ TabOrder = 7
+ end
+ object R67: TCheckBox
+ Left = 314
+ Top = 14
+ Width = 44
+ Height = 16
+ Caption = '4B'
+ TabOrder = 8
+ end
+ object R68: TCheckBox
+ Left = 352
+ Top = 14
+ Width = 44
+ Height = 16
+ Caption = '4X'
+ TabOrder = 9
+ end
+ object R30: TCheckBox
+ Left = 10
+ Top = 33
+ Width = 44
+ Height = 16
+ Caption = '6A'
+ TabOrder = 10
+ end
+ object R31: TCheckBox
+ Left = 48
+ Top = 33
+ Width = 44
+ Height = 16
+ Caption = '6B'
+ TabOrder = 11
+ end
+ object R33: TCheckBox
+ Left = 86
+ Top = 33
+ Width = 44
+ Height = 16
+ Caption = '6X'
+ TabOrder = 12
+ end
end
object GroupBox3: TGroupBox
- Left = 0
- Top = 107
- Width = 394
- Height = 69
+ Left = 4
+ Top = 126
+ Width = 390
+ Height = 72
Caption = 'Galileo'
TabOrder = 4
object E01: TCheckBox
@@ -365,7 +413,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E24: TCheckBox
Left = 10
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '5I'
@@ -373,7 +421,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E25: TCheckBox
Left = 48
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '5Q'
@@ -381,7 +429,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E26: TCheckBox
Left = 86
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '5X'
@@ -389,7 +437,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E27: TCheckBox
Left = 10
- Top = 50
+ Top = 52
Width = 44
Height = 16
Caption = '7I'
@@ -397,7 +445,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E28: TCheckBox
Left = 48
- Top = 50
+ Top = 52
Width = 44
Height = 16
Caption = '7Q'
@@ -405,7 +453,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E29: TCheckBox
Left = 86
- Top = 50
+ Top = 52
Width = 44
Height = 16
Caption = '7X'
@@ -413,7 +461,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E30: TCheckBox
Left = 124
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '6A'
@@ -421,7 +469,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E31: TCheckBox
Left = 162
- Top = 32
+ Top = 33
Width = 35
Height = 16
Caption = '6B'
@@ -429,7 +477,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E37: TCheckBox
Left = 124
- Top = 50
+ Top = 52
Width = 44
Height = 16
Caption = '8I'
@@ -437,7 +485,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E38: TCheckBox
Left = 162
- Top = 50
+ Top = 52
Width = 44
Height = 16
Caption = '8Q'
@@ -445,7 +493,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E32: TCheckBox
Left = 200
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '6C'
@@ -453,15 +501,15 @@ object CodeOptDialog: TCodeOptDialog
end
object E39: TCheckBox
Left = 200
- Top = 50
+ Top = 52
Width = 44
Height = 16
Caption = '8X'
TabOrder = 18
end
object E33: TCheckBox
- Left = 238
- Top = 32
+ Left = 237
+ Top = 33
Width = 44
Height = 16
Caption = '6X'
@@ -469,7 +517,7 @@ object CodeOptDialog: TCodeOptDialog
end
object E34: TCheckBox
Left = 276
- Top = 32
+ Top = 33
Width = 44
Height = 16
Caption = '6Z'
@@ -477,16 +525,16 @@ object CodeOptDialog: TCodeOptDialog
end
end
object GroupBox4: TGroupBox
- Left = 0
- Top = 176
- Width = 394
- Height = 52
+ Left = 4
+ Top = 199
+ Width = 390
+ Height = 55
Caption = 'QZSS'
TabOrder = 5
object J01: TCheckBox
Left = 10
Top = 14
- Width = 44
+ Width = 34
Height = 16
Caption = '1C'
TabOrder = 0
@@ -494,7 +542,7 @@ object CodeOptDialog: TCodeOptDialog
object J07: TCheckBox
Left = 48
Top = 14
- Width = 44
+ Width = 34
Height = 16
Caption = '1S'
TabOrder = 1
@@ -502,7 +550,7 @@ object CodeOptDialog: TCodeOptDialog
object J08: TCheckBox
Left = 86
Top = 14
- Width = 44
+ Width = 34
Height = 16
Caption = '1L'
TabOrder = 2
@@ -510,7 +558,7 @@ object CodeOptDialog: TCodeOptDialog
object J13: TCheckBox
Left = 162
Top = 14
- Width = 38
+ Width = 34
Height = 16
Caption = '1Z'
TabOrder = 4
@@ -518,63 +566,63 @@ object CodeOptDialog: TCodeOptDialog
object J12: TCheckBox
Left = 124
Top = 14
- Width = 32
+ Width = 34
Height = 16
Caption = '1X'
TabOrder = 3
end
object J24: TCheckBox
- Left = 10
- Top = 32
- Width = 44
+ Left = 314
+ Top = 14
+ Width = 34
Height = 16
Caption = '5I'
TabOrder = 8
end
object J25: TCheckBox
- Left = 48
- Top = 32
- Width = 44
+ Left = 352
+ Top = 14
+ Width = 34
Height = 16
Caption = '5Q'
TabOrder = 9
end
object J26: TCheckBox
- Left = 86
- Top = 32
- Width = 44
+ Left = 10
+ Top = 33
+ Width = 34
Height = 16
Caption = '5X'
TabOrder = 10
end
object J35: TCheckBox
- Left = 124
- Top = 32
- Width = 44
+ Left = 161
+ Top = 33
+ Width = 34
Height = 16
Caption = '6S'
- TabOrder = 11
+ TabOrder = 14
end
object J36: TCheckBox
- Left = 162
- Top = 32
- Width = 44
+ Left = 200
+ Top = 33
+ Width = 34
Height = 16
Caption = '6L'
- TabOrder = 12
+ TabOrder = 15
end
object J16: TCheckBox
Left = 200
Top = 14
- Width = 44
+ Width = 34
Height = 16
Caption = '2S'
TabOrder = 5
end
object J17: TCheckBox
- Left = 238
+ Left = 237
Top = 14
- Width = 44
+ Width = 34
Height = 16
Caption = '2L'
TabOrder = 6
@@ -582,57 +630,97 @@ object CodeOptDialog: TCodeOptDialog
object J18: TCheckBox
Left = 276
Top = 14
- Width = 44
+ Width = 34
Height = 16
Caption = '2X'
TabOrder = 7
end
object J33: TCheckBox
- Left = 200
- Top = 32
- Width = 40
+ Left = 237
+ Top = 33
+ Width = 34
Height = 16
Caption = '6X'
+ TabOrder = 16
+ end
+ object J57: TCheckBox
+ Left = 47
+ Top = 33
+ Width = 34
+ Height = 16
+ Caption = '5D'
+ TabOrder = 11
+ end
+ object J58: TCheckBox
+ Left = 86
+ Top = 33
+ Width = 34
+ Height = 16
+ Caption = '5P'
+ TabOrder = 12
+ end
+ object J59: TCheckBox
+ Left = 124
+ Top = 33
+ Width = 34
+ Height = 16
+ Caption = '5Z'
TabOrder = 13
end
+ object J60: TCheckBox
+ Left = 276
+ Top = 33
+ Width = 34
+ Height = 16
+ Caption = '6E'
+ TabOrder = 17
+ end
+ object J34: TCheckBox
+ Left = 314
+ Top = 33
+ Width = 34
+ Height = 16
+ Caption = '6Z'
+ TabOrder = 18
+ end
end
object BtnSetAll: TButton
- Left = 180
- Top = 301
- Width = 61
+ Left = 170
+ Top = 368
+ Width = 66
Height = 29
- Caption = 'Set All'
- TabOrder = 7
+ Caption = 'Set &All'
+ TabOrder = 9
OnClick = BtnSetAllClick
end
object GroupBox6: TGroupBox
- Left = 0
- Top = 228
- Width = 393
- Height = 34
- Caption = 'BeiDou'
- TabOrder = 8
- object C47: TCheckBox
+ Left = 4
+ Top = 255
+ Width = 390
+ Height = 72
+ Caption = 'BDS'
+ TabOrder = 6
+ object C40: TCheckBox
Left = 10
- Top = 14
+ Top = 15
Width = 35
Height = 16
Caption = '2I'
Enabled = False
- TabOrder = 2
+ TabOrder = 0
end
object C42: TCheckBox
Left = 238
- Top = 14
+ Top = 15
Width = 32
Height = 16
Caption = '6I'
Enabled = False
- TabOrder = 0
+ TabOrder = 6
end
object C27: TCheckBox
Left = 124
- Top = 14
+ Top = 15
Width = 34
Height = 16
Caption = '7I'
@@ -641,7 +729,7 @@ object CodeOptDialog: TCodeOptDialog
end
object C28: TCheckBox
Left = 162
- Top = 14
+ Top = 15
Width = 44
Height = 16
Caption = '7Q'
@@ -650,34 +738,34 @@ object CodeOptDialog: TCodeOptDialog
end
object C29: TCheckBox
Left = 201
- Top = 14
+ Top = 15
Width = 34
Height = 16
Caption = '7X'
Enabled = False
- TabOrder = 1
+ TabOrder = 5
end
- object C48: TCheckBox
+ object C41: TCheckBox
Left = 48
- Top = 14
+ Top = 15
Width = 34
Height = 16
Caption = '2Q'
Enabled = False
- TabOrder = 5
+ TabOrder = 1
end
- object C12: TCheckBox
- Left = 86
- Top = 14
+ object C18: TCheckBox
+ Left = 85
+ Top = 15
Width = 34
Height = 16
Caption = '2X'
Enabled = False
- TabOrder = 6
+ TabOrder = 2
end
object C43: TCheckBox
Left = 276
- Top = 14
+ Top = 15
Width = 32
Height = 16
Caption = '6Q'
@@ -686,21 +774,156 @@ object CodeOptDialog: TCodeOptDialog
end
object C33: TCheckBox
Left = 314
- Top = 14
+ Top = 15
Width = 32
Height = 16
Caption = '6X'
Enabled = False
TabOrder = 8
end
+ object C56: TCheckBox
+ Left = 10
+ Top = 33
+ Width = 35
+ Height = 16
+ Caption = '1D'
+ Enabled = False
+ TabOrder = 9
+ end
+ object C02: TCheckBox
+ Left = 48
+ Top = 33
+ Width = 34
+ Height = 16
+ Caption = '1P'
+ Enabled = False
+ TabOrder = 10
+ end
+ object C12: TCheckBox
+ Left = 85
+ Top = 33
+ Width = 34
+ Height = 16
+ Caption = '1X'
+ Enabled = False
+ TabOrder = 11
+ end
+ object C10: TCheckBox
+ Left = 124
+ Top = 33
+ Width = 34
+ Height = 16
+ Caption = '1A'
+ Enabled = False
+ TabOrder = 12
+ end
+ object C06: TCheckBox
+ Left = 162
+ Top = 33
+ Width = 44
+ Height = 16
+ Caption = '1N'
+ Enabled = False
+ TabOrder = 13
+ end
+ object C57: TCheckBox
+ Left = 201
+ Top = 33
+ Width = 34
+ Height = 16
+ Caption = '5D'
+ Enabled = False
+ TabOrder = 14
+ end
+ object C58: TCheckBox
+ Left = 238
+ Top = 33
+ Width = 32
+ Height = 16
+ Caption = '5P'
+ Enabled = False
+ TabOrder = 15
+ end
+ object C26: TCheckBox
+ Left = 276
+ Top = 33
+ Width = 32
+ Height = 16
+ Caption = '5X'
+ Enabled = False
+ TabOrder = 16
+ end
+ object C61: TCheckBox
+ Left = 10
+ Top = 52
+ Width = 35
+ Height = 16
+ Caption = '7D'
+ Enabled = False
+ TabOrder = 17
+ end
+ object C62: TCheckBox
+ Left = 48
+ Top = 52
+ Width = 34
+ Height = 16
+ Caption = '7P'
+ Enabled = False
+ TabOrder = 18
+ end
+ object C63: TCheckBox
+ Left = 85
+ Top = 52
+ Width = 34
+ Height = 16
+ Caption = '7Z'
+ Enabled = False
+ TabOrder = 19
+ end
+ object C64: TCheckBox
+ Left = 124
+ Top = 52
+ Width = 34
+ Height = 16
+ Caption = '8D'
+ Enabled = False
+ TabOrder = 20
+ end
+ object C65: TCheckBox
+ Left = 162
+ Top = 52
+ Width = 44
+ Height = 16
+ Caption = '8P'
+ Enabled = False
+ TabOrder = 21
+ end
+ object C39: TCheckBox
+ Left = 201
+ Top = 52
+ Width = 34
+ Height = 16
+ Caption = '8X'
+ Enabled = False
+ TabOrder = 22
+ end
+ object C30: TCheckBox
+ Left = 238
+ Top = 52
+ Width = 32
+ Height = 16
+ Caption = '6A'
+ Enabled = False
+ TabOrder = 23
+ end
end
object GroupBox7: TGroupBox
- Left = 0
- Top = 262
- Width = 393
+ Left = 4
+ Top = 328
+ Width = 390
Height = 34
- Caption = 'IRNSS'
- TabOrder = 9
+ Caption = 'NavIC'
+ TabOrder = 7
object I49: TCheckBox
Left = 10
Top = 14
@@ -708,7 +931,7 @@ object CodeOptDialog: TCodeOptDialog
Height = 16
Caption = '5A'
Enabled = False
- TabOrder = 2
+ TabOrder = 0
end
object I54: TCheckBox
Left = 238
@@ -717,7 +940,7 @@ object CodeOptDialog: TCodeOptDialog
Height = 16
Caption = '9C'
Enabled = False
- TabOrder = 0
+ TabOrder = 6
end
object I26: TCheckBox
Left = 124
@@ -744,7 +967,7 @@ object CodeOptDialog: TCodeOptDialog
Height = 16
Caption = '9B'
Enabled = False
- TabOrder = 1
+ TabOrder = 5
end
object I50: TCheckBox
Left = 48
@@ -753,7 +976,7 @@ object CodeOptDialog: TCodeOptDialog
Height = 16
Caption = '5B'
Enabled = False
- TabOrder = 5
+ TabOrder = 1
end
object I51: TCheckBox
Left = 86
@@ -762,7 +985,7 @@ object CodeOptDialog: TCodeOptDialog
Height = 16
Caption = '5C'
Enabled = False
- TabOrder = 6
+ TabOrder = 2
end
object I55: TCheckBox
Left = 276
diff --git a/app/rtkconv/codeopt.h b/app/winapp/rtkconv/codeopt.h
similarity index 83%
rename from app/rtkconv/codeopt.h
rename to app/winapp/rtkconv/codeopt.h
index 681965165..fa8013473 100644
--- a/app/rtkconv/codeopt.h
+++ b/app/winapp/rtkconv/codeopt.h
@@ -81,13 +81,13 @@ class TCodeOptDialog : public TForm
TButton *BtnSetAll;
TCheckBox *J33;
TGroupBox *GroupBox6;
- TCheckBox *C47;
+ TCheckBox *C40;
TCheckBox *C42;
TCheckBox *C27;
TCheckBox *C28;
TCheckBox *C29;
- TCheckBox *C48;
- TCheckBox *C12;
+ TCheckBox *C41;
+ TCheckBox *C18;
TCheckBox *C43;
TCheckBox *C33;
TCheckBox *R44;
@@ -102,6 +102,32 @@ class TCodeOptDialog : public TForm
TCheckBox *I50;
TCheckBox *I51;
TCheckBox *I55;
+ TCheckBox *R66;
+ TCheckBox *R67;
+ TCheckBox *R68;
+ TCheckBox *R30;
+ TCheckBox *R31;
+ TCheckBox *R33;
+ TCheckBox *J57;
+ TCheckBox *J58;
+ TCheckBox *J59;
+ TCheckBox *J60;
+ TCheckBox *J34;
+ TCheckBox *C56;
+ TCheckBox *C02;
+ TCheckBox *C12;
+ TCheckBox *C10;
+ TCheckBox *C06;
+ TCheckBox *C57;
+ TCheckBox *C58;
+ TCheckBox *C26;
+ TCheckBox *C61;
+ TCheckBox *C62;
+ TCheckBox *C63;
+ TCheckBox *C64;
+ TCheckBox *C65;
+ TCheckBox *C39;
+ TCheckBox *C30;
void __fastcall FormShow(TObject *Sender);
void __fastcall BtnOkClick(TObject *Sender);
void __fastcall BtnSetAllClick(TObject *Sender);
diff --git a/app/rtkconv/convmain.cpp b/app/winapp/rtkconv/convmain.cpp
similarity index 92%
rename from app/rtkconv/convmain.cpp
rename to app/winapp/rtkconv/convmain.cpp
index a92fb6ec9..c342031db 100644
--- a/app/rtkconv/convmain.cpp
+++ b/app/winapp/rtkconv/convmain.cpp
@@ -1,7 +1,7 @@
//---------------------------------------------------------------------------
-// rtkconv : rinex translator
+// rtkconv : rinex converter
//
-// Copyright (C) 2007-2016 by T.TAKASU, All rights reserved.
+// Copyright (C) 2007-2020 by T.TAKASU, All rights reserved.
//
// options : rtkconv [-t title][-i file]
//
@@ -13,7 +13,11 @@
// 2010/07/18 1.1 rtklib 2.4.0
// 2011/06/10 1.2 rtklib 2.4.1
// 2013/04/01 1.3 rtklib 2.4.2
-// 2016/10/10 1.4 rtklib 2.4.3
+// 2020/11/30 1.4 support RINEX 3.04
+// support NavIC/IRNSS
+// support SBF for auto format recognition
+// support "Phase Shift" option
+// no support "Scan Obs" option
//---------------------------------------------------------------------------
#include
@@ -44,7 +48,7 @@ static int abortf=0;
// show message in message area ---------------------------------------------
extern "C" {
-extern int showmsg(char *format,...)
+extern int showmsg(const char *format,...)
{
static int i=0;
va_list arg;
@@ -116,12 +120,61 @@ void __fastcall TMainWindow::FormShow(TObject *Sender)
if (!strcmp(argv[i],"-t")&&i+1Width-4)/5;
+
+ for (int i=0;i<5;i++) {
+ btns[i]->Width=w-2;
+ btns[i]->Left=i*w+2;
+ }
+ BtnAbort->Width=BtnConvert->Width;
+ BtnAbort->Left =BtnConvert->Left;
+}
+// callback on panel2 resize ------------------------------------------------
+void __fastcall TMainWindow::Panel2Resize(TObject *Sender)
+{
+ TButton *btns1[]={
+ BtnOutFile1,BtnOutFile2,BtnOutFile3,BtnOutFile4,BtnOutFile5,
+ BtnOutFile6,BtnOutFile7,BtnOutFile8,BtnOutFile9
+ };
+ TSpeedButton *btns2[]={
+ BtnOutFileView1,BtnOutFileView2,BtnOutFileView3,BtnOutFileView4,
+ BtnOutFileView5,BtnOutFileView6,BtnOutFileView7,BtnOutFileView8,
+ BtnOutFileView9
+ };
+ TEdit *inps[]={
+ OutFile1,OutFile2,OutFile3,OutFile4,OutFile5,OutFile6,OutFile7,
+ OutFile8,OutFile9
+ };
+ int w=Panel2->Width;
+
+ BtnInFile->Left=w-BtnInFile->Width-5;
+ BtnInFileView->Left=w-BtnInFile->Width-BtnInFileView->Width-5;
+ InFile->Width=w-BtnInFile->Width-BtnInFileView->Width-6-InFile->Left;
+
+ Format->Left=w-Format->Width-5;
+ LabelFormat->Left=Format->Left+3;
+ BtnOutDir->Left=w-BtnOutDir->Width-Format->Width-6;
+ OutDir->Width=w-BtnOutDir->Width-Format->Width-7-OutDir->Left;
+
+ for (int i=0;i<9;i++) {
+ btns1[i]->Left=w-btns1[i]->Width-5;
+ btns2[i]->Left=w-btns1[i]->Width-btns2[i]->Width-5;
+ inps[i]->Width=w-btns1[i]->Width-btns2[i]->Width-6-inps[i]->Left;
+ }
+ DisableHighlight();
+}
// set output file paths ----------------------------------------------------
void __fastcall TMainWindow::SetOutFiles(AnsiString infile)
{
@@ -131,8 +184,7 @@ void __fastcall TMainWindow::SetOutFiles(AnsiString infile)
};
AnsiString Format_Text=Format->Text;
AnsiString OutDir_Text=OutDir->Text;
- char *ifile,ofile[10][1024],*code,*p;
- int i,lex=strstr(Format_Text.c_str(),"LEX")!=NULL;
+ char *ifile,ofile[10][1024],*p;
if (!EventEna) return;
@@ -157,7 +209,7 @@ void __fastcall TMainWindow::SetOutFiles(AnsiString infile)
sprintf(ofile[6],"%s.lnav",ofile[0]);
sprintf(ofile[7],"%s.cnav",ofile[0]);
sprintf(ofile[8],"%s.inav",ofile[0]);
- sprintf(ofile[9],lex?"%s.lex":"%s.sbs",ofile[0]);
+ sprintf(ofile[9],"%s.sbs" ,ofile[0]);
}
else {
if ((p=strrchr(ofile[0],'\\'))) *(p+1)='\0';
@@ -175,11 +227,12 @@ void __fastcall TMainWindow::SetOutFiles(AnsiString infile)
sprintf(ofile[6],"%s%%r%%n0.%%yL",ofile[0]);
sprintf(ofile[7],"%s%%r%%n0.%%yC",ofile[0]);
sprintf(ofile[8],"%s%%r%%n0.%%yI",ofile[0]);
- sprintf(ofile[9],lex?"%s%%r%%n0_%%y.lex":"%s%%r%%n0_%%y.sbs",ofile[0]);
+ sprintf(ofile[9],"%s%%r%%n0_%%y.sbs",ofile[0]);
}
- for (i=0;i<9;i++) {
+ for (int i=0;i<9;i++) {
if (!strcmp(ofile[i+1],ifile)) strcat(ofile[i+1],"_");
- edit[i]->Text=ofile[i+1];
+ AnsiString ustr=ofile[i+1];
+ edit[i]->Text=ustr;
}
}
// callback on file drag and drop -------------------------------------------
@@ -214,7 +267,7 @@ TStringList * __fastcall TMainWindow::ReadList(TIniFile *ini, AnsiString cat,
for (i=0;i<100;i++) {
item=ini->ReadString(cat,s.sprintf("%s_%03d",key.c_str(),i),"");
- if (item!="") list->Add(item); else break;
+ if (item!=""&&list->IndexOf(item)<0) list->Add(item);
}
return list;
}
@@ -268,10 +321,10 @@ void __fastcall TMainWindow::BtnPostClick(TObject *Sender)
if (!OutFileEna1->Checked) return;
opts=opts+" -r \""+OutFile1->Text+"\"";
- opts=opts+" -n \"\" -n \"\"";
+ opts=opts+" -n \"\" -n \"\" -n \"\"";
- if (OutFileEna7->Checked) {
- opts=opts+" -n \""+OutFile7->Text+"\"";
+ if (OutFileEna9->Checked) {
+ opts=opts+" -n \""+OutFile9->Text+"\"";
}
if (TimeStartF->Checked) opts=opts+" -ts "+TimeY1->Text+" "+TimeH1->Text;
if (TimeEndF ->Checked) opts=opts+" -te "+TimeY2->Text+" "+TimeH2->Text;
@@ -328,7 +381,7 @@ void __fastcall TMainWindow::BtnTime2Click(TObject *Sender)
// callback on button-input-file --------------------------------------------
void __fastcall TMainWindow::BtnInFileClick(TObject *Sender)
{
- OpenDialog->Title="Input RTCM, RCV RAW or RINEX OBS File";
+ OpenDialog->Title="Input RTCM, RCV RAW or RINEX File";
OpenDialog->FileName="";
if (!OpenDialog->Execute()) return;
InFile->Text=OpenDialog->FileName;
@@ -342,16 +395,10 @@ void __fastcall TMainWindow::OutDirChange(TObject *Sender)
// callback on button-output-directory --------------------------------------
void __fastcall TMainWindow::BtnOutDirClick(TObject *Sender)
{
-#ifdef TCPP
- AnsiString dir=OutDir->Text;
- if (!SelectDirectory("Output Directory","",dir)) return;
- OutDir->Text=dir;
-#else
UnicodeString dir=OutDir->Text;
TSelectDirExtOpts opt=TSelectDirExtOpts()<Text=dir;
-#endif
}
// callback on button-keyword -----------------------------------------------
void __fastcall TMainWindow::BtnKeyClick(TObject *Sender)
@@ -454,7 +501,8 @@ void __fastcall TMainWindow::BtnInFileViewClick(TObject *Sender)
!strcmp(ext+3,"g" )||!strcmp(ext+3,"G" )||!strcmp(ext+3,"h" )||
!strcmp(ext+3,"H" )||!strcmp(ext+3,"q" )||!strcmp(ext+3,"Q" )||
!strcmp(ext+3,"l" )||!strcmp(ext+3,"L" )||!strcmp(ext+3,"c" )||
- !strcmp(ext+3,"C" )) {
+ !strcmp(ext+3,"C" )||!strcmp(ext+3,"I" )||!strcmp(ext+3,"i" )||
+ !strcmp(ext,".rnx" )||!strcmp(ext,".RNX")) {
viewer->Show();
viewer->Read(RepPath(InFile_Text));
}
@@ -564,6 +612,11 @@ void __fastcall TMainWindow::InFileChange(TObject *Sender)
{
SetOutFiles(InFile->Text);
}
+//-------------------------------------------------------------------
+void __fastcall TMainWindow::InFileCloseUp(TObject *Sender)
+{
+ DisableHighlight();
+}
// callback on format change ------------------------------------------------
void __fastcall TMainWindow::FormatChange(TObject *Sender)
{
@@ -716,12 +769,12 @@ int __fastcall TMainWindow::ExecCmd(AnsiString cmd)
CloseHandle(info.hThread);
return 1;
}
-// undate enable/disable of widgets -----------------------------------------
+// update enable/disable of widgets -----------------------------------------
void __fastcall TMainWindow::UpdateEnable(void)
{
AnsiString FormatText=Format->Text;
int rnx=strstr(FormatText.c_str(),"RINEX")!=NULL;
- int sep_nav=RnxVer<3||SepNav;
+ int sep_nav=(RnxVer<3||SepNav);
TimeY1 ->Enabled=TimeStartF ->Checked;
TimeH1 ->Enabled=TimeStartF ->Checked;
@@ -740,21 +793,21 @@ void __fastcall TMainWindow::UpdateEnable(void)
LabelTimeUnit ->Enabled=TimeUnit ->Enabled;
OutFileEna3 ->Enabled=sep_nav&&(NavSys&SYS_GLO);
OutFileEna4 ->Enabled=sep_nav&&(NavSys&SYS_SBS);
- OutFileEna5 ->Enabled=sep_nav&&(NavSys&SYS_QZS);
- OutFileEna6 ->Enabled=sep_nav&&(NavSys&SYS_GAL);
- OutFileEna7 ->Enabled=sep_nav&&(NavSys&SYS_CMP);
- OutFileEna8 ->Enabled=sep_nav&&(NavSys&SYS_IRN);
+ OutFileEna5 ->Enabled=sep_nav&&(NavSys&SYS_QZS)&&RnxVer>=5;
+ OutFileEna6 ->Enabled=sep_nav&&(NavSys&SYS_GAL)&&RnxVer>=2;
+ OutFileEna7 ->Enabled=sep_nav&&(NavSys&SYS_CMP)&&RnxVer>=4;
+ OutFileEna8 ->Enabled=sep_nav&&(NavSys&SYS_IRN)&&RnxVer>=6;
OutFileEna9 ->Enabled=!rnx;
OutDir ->Enabled=OutDirEna ->Checked;
LabelOutDir ->Enabled=OutDirEna ->Checked;
OutFile1 ->Enabled=OutFileEna1->Checked;
OutFile2 ->Enabled=OutFileEna2->Checked;
- OutFile3 ->Enabled=OutFileEna3->Checked&&sep_nav&&(NavSys&SYS_GLO);
- OutFile4 ->Enabled=OutFileEna4->Checked&&sep_nav&&(NavSys&SYS_SBS);
- OutFile5 ->Enabled=OutFileEna5->Checked&&sep_nav&&(NavSys&SYS_QZS);
- OutFile6 ->Enabled=OutFileEna6->Checked&&sep_nav&&(NavSys&SYS_GAL);
- OutFile7 ->Enabled=OutFileEna7->Checked&&sep_nav&&(NavSys&SYS_CMP);
- OutFile8 ->Enabled=OutFileEna8->Checked&&sep_nav&&(NavSys&SYS_IRN);
+ OutFile3 ->Enabled=OutFileEna3->Checked&&OutFileEna3->Enabled;
+ OutFile4 ->Enabled=OutFileEna4->Checked&&OutFileEna4->Enabled;
+ OutFile5 ->Enabled=OutFileEna5->Checked&&OutFileEna5->Enabled;
+ OutFile6 ->Enabled=OutFileEna6->Checked&&OutFileEna6->Enabled;
+ OutFile7 ->Enabled=OutFileEna7->Checked&&OutFileEna7->Enabled;
+ OutFile8 ->Enabled=OutFileEna8->Checked&&OutFileEna8->Enabled;
OutFile9 ->Enabled=OutFileEna9->Checked&&!rnx;
BtnOutDir ->Enabled=OutDirEna ->Checked;
BtnOutFile1 ->Enabled=OutFile1->Enabled;
@@ -776,6 +829,12 @@ void __fastcall TMainWindow::UpdateEnable(void)
BtnOutFileView8->Enabled=OutFile8->Enabled;
BtnOutFileView9->Enabled=OutFile9->Enabled;
}
+// disable highlight of combo box -------------------------------------------
+void __fastcall TMainWindow::DisableHighlight(void)
+{
+ ::PostMessage(InFile ->Handle,CB_SETEDITSEL,-1,0);
+ ::PostMessage(TimeInt->Handle,CB_SETEDITSEL,-1,0);
+}
// convert file -------------------------------------------------------------
void __fastcall TMainWindow::ConvertFile(void)
{
@@ -789,7 +848,7 @@ void __fastcall TMainWindow::ConvertFile(void)
int i,format,sat;
char file[1024]="",*ofile[9],ofile_[9][1024]={""},msg[256],*p;
char buff[256],tstr[32];
- double RNXVER[]={2.10,2.11,2.12,3.00,3.01,3.02,3.03};
+ int RNXVER[]={210,211,212,300,301,302,303,304};
FILE *fp;
for (i=0;i<9;i++) ofile[i]=ofile_[i];
@@ -808,8 +867,7 @@ void __fastcall TMainWindow::ConvertFile(void)
else if (!strcmp(p,".bnx" )) format=STRFMT_BINEX;
else if (!strcmp(p,".binex")) format=STRFMT_BINEX;
else if (!strcmp(p,".rt17" )) format=STRFMT_RT17;
- else if (!strcmp(p,".cmr" )) format=STRFMT_CMR;
- else if (!strcmp(p,".trs" )) format=STRFMT_TERSUS;
+ else if (!strcmp(p,".sbf" )) format=STRFMT_SEPT;
else if (!strcmp(p,".obs" )) format=STRFMT_RINEX;
else if (!strcmp(p,".OBS" )) format=STRFMT_RINEX;
else if (!strcmp(p,".nav" )) format=STRFMT_RINEX;
@@ -832,6 +890,10 @@ void __fastcall TMainWindow::ConvertFile(void)
else if (!strcmp(p+3,"L" )) format=STRFMT_RINEX;
else if (!strcmp(p+3,"c" )) format=STRFMT_RINEX;
else if (!strcmp(p+3,"C" )) format=STRFMT_RINEX;
+ else if (!strcmp(p+3,"i" )) format=STRFMT_RINEX;
+ else if (!strcmp(p+3,"I" )) format=STRFMT_RINEX;
+ else if (!strcmp(p,".rnx" )) format=STRFMT_RINEX;
+ else if (!strcmp(p,".RNX" )) format=STRFMT_RINEX;
else {
showmsg("file format can not be recognized");
return;
@@ -845,8 +907,7 @@ void __fastcall TMainWindow::ConvertFile(void)
}
rnxopt.rnxver=RNXVER[RnxVer];
- if (format==STRFMT_RTCM2||format==STRFMT_RTCM3||format==STRFMT_RT17||
- format==STRFMT_CMR) {
+ if (format==STRFMT_RTCM2||format==STRFMT_RTCM3||format==STRFMT_RT17) {
// input start date/time for rtcm 2, rtcm 3, RT17 or CMR
StartDialog->FileName=file;
@@ -888,22 +949,19 @@ void __fastcall TMainWindow::ConvertFile(void)
rnxopt.navsys=NavSys;
rnxopt.obstype=ObsType;
rnxopt.freqtype=FreqType;
- p=rnxopt.comment[0];
- sprintf(p,"log: %-53.53s",file);
- p=rnxopt.comment[1];
- p+=sprintf(p,"format: %s",formatstrs[format]);
- if (*rnxopt.rcvopt) sprintf(p,", option: %s",rnxopt.rcvopt);
- for (i=0;i<2;i++) strncpy(rnxopt.comment[i+2],Comment[i].c_str(),63);
+ for (i=0;i<2;i++) sprintf(rnxopt.comment[i],"%.63s",Comment[i].c_str());
for (i=0;i<7;i++) strcpy(rnxopt.mask[i],CodeMask[i].c_str());
rnxopt.autopos=AutoPos;
- rnxopt.scanobs=ScanObs;
+ rnxopt.phshift=PhaseShift;
rnxopt.halfcyc=HalfCyc;
rnxopt.outiono=OutIono;
rnxopt.outtime=OutTime;
rnxopt.outleaps=OutLeaps;
rnxopt.sep_nav=SepNav;
rnxopt.ttol=TimeTol;
-
+ if (EnaGloFcn) {
+ for (i=0;iReadInteger("opt","rnxver", 0);
+ RnxVer =ini->ReadInteger("opt","rnxver", 6);
RnxFile =ini->ReadInteger("opt","rnxfile", 0);
RnxCode =ini->ReadString ("opt","rnxcode","0000");
RunBy =ini->ReadString ("opt","runby", "");
@@ -1000,9 +1059,9 @@ void __fastcall TMainWindow::LoadOpt(void)
Comment[0] =ini->ReadString ("opt","comment0", "");
Comment[1] =ini->ReadString ("opt","comment1", "");
RcvOption =ini->ReadString ("opt","rcvoption", "");
- NavSys =ini->ReadInteger("opt","navsys", 0x3);
+ NavSys =ini->ReadInteger("opt","navsys", 0xFF);
ObsType =ini->ReadInteger("opt","obstype", 0xF);
- FreqType =ini->ReadInteger("opt","freqtype", 0x3);
+ FreqType =ini->ReadInteger("opt","freqtype", 0x7);
ExSats =ini->ReadString ("opt","exsats", "");
TraceLevel =ini->ReadInteger("opt","tracelevel", 0);
RnxTime.time =ini->ReadInteger("opt","rnxtime", 0);
@@ -1014,20 +1073,24 @@ void __fastcall TMainWindow::LoadOpt(void)
CodeMask[5] =ini->ReadString ("opt","codemask_6",mask);
CodeMask[6] =ini->ReadString ("opt","codemask_7",mask);
AutoPos =ini->ReadInteger("opt","autopos", 0);
- ScanObs =ini->ReadInteger("opt","scanobs", 0);
+ PhaseShift =ini->ReadInteger("opt","phaseshift", 0);
HalfCyc =ini->ReadInteger("opt","halfcyc", 0);
OutIono =ini->ReadInteger("opt","outiono", 0);
OutTime =ini->ReadInteger("opt","outtime", 0);
OutLeaps =ini->ReadInteger("opt","outleaps", 0);
SepNav =ini->ReadInteger("opt","sepnav", 0);
TimeTol =ini->ReadFloat ("opt","timetol", 0.005);
-
+ EnaGloFcn =ini->ReadInteger("opt","glofcnena", 0);
+ for (int i=0;i<27;i++) {
+ opt.sprintf("glofcn%02d",i+1);
+ GloFcn[i]=ini->ReadInteger("opt",opt,0);
+ }
TimeStartF ->Checked=ini->ReadInteger("set","timestartf", 0);
TimeEndF ->Checked=ini->ReadInteger("set","timeendf", 0);
TimeIntF ->Checked=ini->ReadInteger("set","timeintf", 0);
- TimeY1 ->Text =ini->ReadString ("set","timey1", "2000/01/01");
+ TimeY1 ->Text =ini->ReadString ("set","timey1", "2020/01/01");
TimeH1 ->Text =ini->ReadString ("set","timeh1", "00:00:00" );
- TimeY2 ->Text =ini->ReadString ("set","timey2", "2000/01/01");
+ TimeY2 ->Text =ini->ReadString ("set","timey2", "2020/01/01");
TimeH2 ->Text =ini->ReadString ("set","timeh2", "00:00:00" );
TimeInt ->Text =ini->ReadString ("set","timeint", "1");
TimeUnitF ->Checked=ini->ReadInteger("set","timeunitf", 0);
@@ -1063,7 +1126,7 @@ void __fastcall TMainWindow::LoadOpt(void)
TTextViewer::FontD->Name=ini->ReadString ("viewer","fontname","Courier New");
TTextViewer::FontD->Size=ini->ReadInteger("viewer","fontsize",9);
- CmdPostExe =ini->ReadString ("set","cmdpostexe","rtkpost_mkl");
+ CmdPostExe =ini->ReadString ("set","cmdpostexe","rtkpost");
Width =ini->ReadInteger ("window","width", 488);
delete ini;
@@ -1074,6 +1137,7 @@ void __fastcall TMainWindow::LoadOpt(void)
void __fastcall TMainWindow::SaveOpt(void)
{
TIniFile *ini=new TIniFile(IniFile);
+ AnsiString opt;
ini->WriteInteger("opt","rnxver", RnxVer);
ini->WriteInteger("opt","rnxfile", RnxFile);
@@ -1113,14 +1177,18 @@ void __fastcall TMainWindow::SaveOpt(void)
ini->WriteString ("opt","codemask_6", CodeMask[5]);
ini->WriteString ("opt","codemask_7", CodeMask[6]);
ini->WriteInteger("opt","autopos", AutoPos);
- ini->WriteInteger("opt","scanobs", ScanObs);
+ ini->WriteInteger("opt","phaseshift", PhaseShift);
ini->WriteInteger("opt","halfcyc", HalfCyc);
ini->WriteInteger("opt","outiono", OutIono);
ini->WriteInteger("opt","outtime", OutTime);
ini->WriteInteger("opt","outleaps", OutLeaps);
ini->WriteInteger("opt","sepnav", SepNav);
ini->WriteFloat ("opt","timetol", TimeTol);
-
+ ini->WriteInteger("opt","glofcnena", EnaGloFcn);
+ for (int i=0;i<27;i++) {
+ opt.sprintf("glofcn%02d",i+1);
+ ini->WriteInteger("opt",opt,GloFcn[i]);
+ }
ini->WriteInteger("set","timestartf", TimeStartF ->Checked);
ini->WriteInteger("set","timeendf", TimeEndF ->Checked);
ini->WriteInteger("set","timeintf", TimeIntF ->Checked);
@@ -1165,55 +1233,3 @@ void __fastcall TMainWindow::SaveOpt(void)
}
//---------------------------------------------------------------------------
-void __fastcall TMainWindow::Panel4Resize(TObject *Sender)
-{
- TBitBtn *btns[]={BtnPlot,BtnPost,BtnOptions,BtnConvert,BtnExit};
- int w=(Panel4->Width-2)/5;
-
- for (int i=0;i<5;i++) {
- btns[i]->Width=w;
- btns[i]->Left=i*w+1;
- }
- BtnAbort->Width=BtnConvert->Width;
- BtnAbort->Left =BtnConvert->Left;
-}
-//---------------------------------------------------------------------------
-
-void __fastcall TMainWindow::Panel2Resize(TObject *Sender)
-{
- TButton *btns1[]={
- BtnOutFile1,BtnOutFile2,BtnOutFile3,BtnOutFile4,BtnOutFile5,
- BtnOutFile6,BtnOutFile7,BtnOutFile8,BtnOutFile9
- };
- TSpeedButton *btns2[]={
- BtnOutFileView1,BtnOutFileView2,BtnOutFileView3,BtnOutFileView4,
- BtnOutFileView5,BtnOutFileView6,BtnOutFileView7,BtnOutFileView8,
- BtnOutFileView9
- };
- TEdit *inps[]={
- OutFile1,OutFile2,OutFile3,OutFile4,OutFile5,OutFile6,OutFile7,
- OutFile8,OutFile9
- };
- int w=Panel2->Width;
-
- BtnInFile->Left=w-BtnInFile->Width-5;
- BtnInFileView->Left=w-BtnInFile->Width-BtnInFileView->Width-5;
- InFile->Width=w-BtnInFile->Width-BtnInFileView->Width-6-InFile->Left;
-
- Format->Left=w-Format->Width-5;
- LabelFormat->Left=Format->Left+3;
- BtnOutDir->Left=w-BtnOutDir->Width-Format->Width-6;
- OutDir->Width=w-BtnOutDir->Width-Format->Width-7-OutDir->Left;
-
- for (int i=0;i<9;i++) {
- btns1[i]->Left=w-btns1[i]->Width-5;
- btns2[i]->Left=w-btns1[i]->Width-btns2[i]->Width-5;
- inps[i]->Width=w-btns1[i]->Width-btns2[i]->Width-6-inps[i]->Left;
- }
-}
-//---------------------------------------------------------------------------
-
-
-
-
-
diff --git a/app/rtkconv/convmain.dfm b/app/winapp/rtkconv/convmain.dfm
similarity index 76%
rename from app/rtkconv/convmain.dfm
rename to app/winapp/rtkconv/convmain.dfm
index 2014eaa50..f216a0d68 100644
Binary files a/app/rtkconv/convmain.dfm and b/app/winapp/rtkconv/convmain.dfm differ
diff --git a/app/rtkconv/convmain.h b/app/winapp/rtkconv/convmain.h
similarity index 96%
rename from app/rtkconv/convmain.h
rename to app/winapp/rtkconv/convmain.h
index e0a382297..c90e88a03 100644
--- a/app/rtkconv/convmain.h
+++ b/app/winapp/rtkconv/convmain.h
@@ -108,6 +108,9 @@ class TMainWindow : public TForm
TEdit *OutFile9;
TSpeedButton *BtnOutFileView9;
TButton *BtnOutFile9;
+ TPanel *Panel5;
+ TPanel *Panel6;
+ TPanel *Panel7;
void __fastcall FormCreate (TObject *Sender);
void __fastcall FormShow (TObject *Sender);
@@ -166,6 +169,8 @@ class TMainWindow : public TForm
TUpDownDirection Direction);
void __fastcall TimeH2UDChangingEx(TObject *Sender, bool &AllowChange, int NewValue,
TUpDownDirection Direction);
+ void __fastcall InFileCloseUp(TObject *Sender);
+
private:
AnsiString IniFile,CmdPostExe;
@@ -182,6 +187,7 @@ class TMainWindow : public TForm
void __fastcall ConvertFile(void);
void __fastcall SetOutFiles(AnsiString infile);
void __fastcall UpdateEnable(void);
+ void __fastcall DisableHighlight(void);
void __fastcall GetTime(gtime_t *ts, gtime_t *te, double *tint, double *tunit);
int __fastcall ExecCmd(AnsiString cmd);
AnsiString __fastcall RepPath(AnsiString File);
@@ -199,7 +205,8 @@ class TMainWindow : public TForm
AnsiString CodeMask[7];
double AppPos[3],AntDel[3],TimeTol;
int RnxVer,RnxFile,NavSys,ObsType,FreqType,TraceLevel,EventEna;
- int AutoPos,ScanObs,HalfCyc,OutIono,OutTime,OutLeaps,SepNav;
+ int AutoPos,PhaseShift,HalfCyc,OutIono,OutTime,OutLeaps,SepNav;
+ int EnaGloFcn,GloFcn[27];
__fastcall TMainWindow(TComponent* Owner);
};
diff --git a/app/rtkconv/convopt.cpp b/app/winapp/rtkconv/convopt.cpp
similarity index 79%
rename from app/rtkconv/convopt.cpp
rename to app/winapp/rtkconv/convopt.cpp
index 43a2d84c9..699724baa 100644
--- a/app/rtkconv/convopt.cpp
+++ b/app/winapp/rtkconv/convopt.cpp
@@ -5,6 +5,8 @@
#include "convmain.h"
#include "convopt.h"
#include "codeopt.h"
+#include "freqdlg.h"
+#include "glofcndlg.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
@@ -21,11 +23,12 @@ __fastcall TConvOptDialog::TConvOptDialog(TComponent* Owner)
: TForm(Owner)
{
AnsiString s;
- int glo=MAXPRNGLO,gal=MAXPRNGAL,qzs=MAXPRNQZS,cmp=MAXPRNCMP;
+ int glo=MAXPRNGLO,gal=MAXPRNGAL,qzs=MAXPRNQZS,cmp=MAXPRNCMP,irn=MAXPRNIRN;
if (glo<=0) Nav2->Enabled=false;
if (gal<=0) Nav3->Enabled=false;
if (qzs<=0) Nav4->Enabled=false;
if (cmp<=0) Nav6->Enabled=false;
+ if (irn<=0) Nav7->Enabled=false;
UpdateEnable();
}
@@ -47,7 +50,6 @@ void __fastcall TConvOptDialog::FormShow(TObject *Sender)
Rec2->Text=MainWindow->Rec[2];
Ant0->Text=MainWindow->Ant[0];
Ant1->Text=MainWindow->Ant[1];
- Ant2->Text=MainWindow->Ant[2];
AppPos0->Text=s.sprintf("%.4f",MainWindow->AppPos[0]);
AppPos1->Text=s.sprintf("%.4f",MainWindow->AppPos[1]);
AppPos2->Text=s.sprintf("%.4f",MainWindow->AppPos[2]);
@@ -59,12 +61,15 @@ void __fastcall TConvOptDialog::FormShow(TObject *Sender)
RcvOption->Text=MainWindow->RcvOption;
for (int i=0;i<7;i++) CodeMask[i]=MainWindow->CodeMask[i];
AutoPos->Checked=MainWindow->AutoPos;
- ScanObs->Checked=MainWindow->ScanObs;
+ PhaseShift->Checked=MainWindow->PhaseShift;
HalfCyc->Checked=MainWindow->HalfCyc;
OutIono->Checked=MainWindow->OutIono;
OutTime->Checked=MainWindow->OutTime;
OutLeaps->Checked=MainWindow->OutLeaps;
-
+ GloFcnDialog->EnaGloFcn=MainWindow->EnaGloFcn;
+ for (int i=0;i<27;i++) {
+ GloFcnDialog->GloFcn[i]=MainWindow->GloFcn[i];
+ }
Nav1->Checked=MainWindow->NavSys&SYS_GPS;
Nav2->Checked=MainWindow->NavSys&SYS_GLO;
Nav3->Checked=MainWindow->NavSys&SYS_GAL;
@@ -78,11 +83,9 @@ void __fastcall TConvOptDialog::FormShow(TObject *Sender)
Obs4->Checked=MainWindow->ObsType&OBSTYPE_SNR;
Freq1->Checked=MainWindow->FreqType&FREQTYPE_L1;
Freq2->Checked=MainWindow->FreqType&FREQTYPE_L2;
- Freq3->Checked=MainWindow->FreqType&FREQTYPE_L5;
- Freq4->Checked=MainWindow->FreqType&FREQTYPE_L6;
- Freq5->Checked=MainWindow->FreqType&FREQTYPE_L7;
- Freq6->Checked=MainWindow->FreqType&FREQTYPE_L8;
- Freq7->Checked=MainWindow->FreqType&FREQTYPE_L9;
+ Freq3->Checked=MainWindow->FreqType&FREQTYPE_L3;
+ Freq4->Checked=MainWindow->FreqType&FREQTYPE_L4;
+ Freq5->Checked=MainWindow->FreqType&FREQTYPE_L5;
ExSats->Text=MainWindow->ExSats;
TraceLevel->ItemIndex=MainWindow->TraceLevel;
ChkSepNav->Checked=MainWindow->SepNav;
@@ -107,7 +110,6 @@ void __fastcall TConvOptDialog::BtnOkClick(TObject *Sender)
MainWindow->Rec[2]=Rec2->Text;
MainWindow->Ant[0]=Ant0->Text;
MainWindow->Ant[1]=Ant1->Text;
- MainWindow->Ant[2]=Ant2->Text;
MainWindow->AppPos[0]=str2dbl(AppPos0->Text);
MainWindow->AppPos[1]=str2dbl(AppPos1->Text);
MainWindow->AppPos[2]=str2dbl(AppPos2->Text);
@@ -119,12 +121,15 @@ void __fastcall TConvOptDialog::BtnOkClick(TObject *Sender)
MainWindow->RcvOption=RcvOption->Text;
for (int i=0;i<7;i++) MainWindow->CodeMask[i]=CodeMask[i];
MainWindow->AutoPos=AutoPos->Checked;
- MainWindow->ScanObs=ScanObs->Checked;
+ MainWindow->PhaseShift=PhaseShift->Checked;
MainWindow->HalfCyc=HalfCyc->Checked;
MainWindow->OutIono=OutIono->Checked;
MainWindow->OutTime=OutTime->Checked;
MainWindow->OutLeaps=OutLeaps->Checked;
-
+ MainWindow->EnaGloFcn=GloFcnDialog->EnaGloFcn;
+ for (int i=0;i<27;i++) {
+ MainWindow->GloFcn[i]=GloFcnDialog->GloFcn[i];
+ }
int navsys=0,obstype=0,freqtype=0;
if (Nav1->Checked) navsys|=SYS_GPS;
if (Nav2->Checked) navsys|=SYS_GLO;
@@ -139,11 +144,9 @@ void __fastcall TConvOptDialog::BtnOkClick(TObject *Sender)
if (Obs4->Checked) obstype|=OBSTYPE_SNR;
if (Freq1->Checked) freqtype|=FREQTYPE_L1;
if (Freq2->Checked) freqtype|=FREQTYPE_L2;
- if (Freq3->Checked) freqtype|=FREQTYPE_L5;
- if (Freq4->Checked) freqtype|=FREQTYPE_L6;
- if (Freq5->Checked) freqtype|=FREQTYPE_L7;
- if (Freq6->Checked) freqtype|=FREQTYPE_L8;
- if (Freq7->Checked) freqtype|=FREQTYPE_L9;
+ if (Freq3->Checked) freqtype|=FREQTYPE_L3;
+ if (Freq4->Checked) freqtype|=FREQTYPE_L4;
+ if (Freq5->Checked) freqtype|=FREQTYPE_L5;
MainWindow->NavSys=navsys;
MainWindow->ObsType=obstype;
MainWindow->FreqType=freqtype;
@@ -168,6 +171,11 @@ void __fastcall TConvOptDialog::AutoPosClick(TObject *Sender)
UpdateEnable();
}
//---------------------------------------------------------------------------
+void __fastcall TConvOptDialog::BtnFreqClick(TObject *Sender)
+{
+ FreqDialog->ShowModal();
+}
+//---------------------------------------------------------------------------
void __fastcall TConvOptDialog::BtnMaskClick(TObject *Sender)
{
CodeOptDialog->NavSys=0;
@@ -181,24 +189,33 @@ void __fastcall TConvOptDialog::BtnMaskClick(TObject *Sender)
if (Nav7->Checked) CodeOptDialog->NavSys|=SYS_IRN;
if (Freq1->Checked) CodeOptDialog->FreqType|=FREQTYPE_L1;
if (Freq2->Checked) CodeOptDialog->FreqType|=FREQTYPE_L2;
- if (Freq3->Checked) CodeOptDialog->FreqType|=FREQTYPE_L5;
- if (Freq4->Checked) CodeOptDialog->FreqType|=FREQTYPE_L6;
- if (Freq5->Checked) CodeOptDialog->FreqType|=FREQTYPE_L7;
- if (Freq6->Checked) CodeOptDialog->FreqType|=FREQTYPE_L8;
- if (Freq7->Checked) CodeOptDialog->FreqType|=FREQTYPE_L9;
+ if (Freq3->Checked) CodeOptDialog->FreqType|=FREQTYPE_L3;
+ if (Freq4->Checked) CodeOptDialog->FreqType|=FREQTYPE_L4;
+ if (Freq5->Checked) CodeOptDialog->FreqType|=FREQTYPE_L5;
CodeOptDialog->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TConvOptDialog::UpdateEnable(void)
{
-// Freq4->Enabled=RnxVer->ItemIndex>0;
-// Freq5->Enabled=RnxVer->ItemIndex>0;
-// Freq6->Enabled=RnxVer->ItemIndex>0;
AppPos0->Enabled=AutoPos->Checked;
AppPos1->Enabled=AutoPos->Checked;
AppPos2->Enabled=AutoPos->Checked;
ChkSepNav->Enabled=RnxVer->ItemIndex>=3;
+ Label13->Enabled=MainWindow->TimeIntF->Checked;
+ TimeTol->Enabled=MainWindow->TimeIntF->Checked;
+ Nav3->Enabled=RnxVer->ItemIndex>=1;
+ Nav4->Enabled=RnxVer->ItemIndex>=5;
+ Nav6->Enabled=RnxVer->ItemIndex==2||RnxVer->ItemIndex>=4;
+ Nav7->Enabled=RnxVer->ItemIndex>=6;
+ Freq3->Enabled=RnxVer->ItemIndex>=1;
+ Freq4->Enabled=RnxVer->ItemIndex>=1;
+ Freq5->Enabled=RnxVer->ItemIndex>=1;
+ PhaseShift->Enabled=RnxVer->ItemIndex>=4;
+}
+//---------------------------------------------------------------------------
+void __fastcall TConvOptDialog::BtnFcnClick(TObject *Sender)
+{
+ if (GloFcnDialog->ShowModal()!=mrOk) return;
}
//---------------------------------------------------------------------------
-
diff --git a/app/rtkconv/convopt.dfm b/app/winapp/rtkconv/convopt.dfm
similarity index 83%
rename from app/rtkconv/convopt.dfm
rename to app/winapp/rtkconv/convopt.dfm
index f25f7df5b..a624c5b4b 100644
--- a/app/rtkconv/convopt.dfm
+++ b/app/winapp/rtkconv/convopt.dfm
@@ -3,8 +3,8 @@ object ConvOptDialog: TConvOptDialog
Top = 0
BorderStyle = bsDialog
Caption = 'Options'
- ClientHeight = 353
- ClientWidth = 421
+ ClientHeight = 357
+ ClientWidth = 425
Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -18,14 +18,14 @@ object ConvOptDialog: TConvOptDialog
TextHeight = 13
object Label3: TLabel
Left = 153
- Top = 329
+ Top = 332
Width = 31
Height = 13
Caption = 'Debug'
end
object Label8: TLabel
- Left = 8
- Top = 307
+ Left = 10
+ Top = 305
Width = 82
Height = 13
Caption = 'Receiver Options'
@@ -39,29 +39,29 @@ object ConvOptDialog: TConvOptDialog
end
object Label9: TLabel
Left = 10
- Top = 7
+ Top = 6
Width = 49
Height = 13
Caption = 'RINEX Ver'
end
object Label12: TLabel
- Left = 207
- Top = 7
+ Left = 204
+ Top = 6
Width = 48
Height = 13
Caption = 'Station ID'
end
object Label13: TLabel
- Left = 8
- Top = 329
+ Left = 10
+ Top = 332
Width = 88
Height = 13
Caption = 'Time Torelance (s)'
end
object BtnOk: TButton
- Left = 257
- Top = 323
- Width = 81
+ Left = 255
+ Top = 325
+ Width = 80
Height = 29
Caption = '&OK'
ModalResult = 1
@@ -70,8 +70,8 @@ object ConvOptDialog: TConvOptDialog
end
object BtnCancel: TButton
Left = 339
- Top = 323
- Width = 81
+ Top = 325
+ Width = 80
Height = 29
Cancel = True
Caption = '&Cancel'
@@ -80,13 +80,13 @@ object ConvOptDialog: TConvOptDialog
end
object GroupBox1: TGroupBox
Left = 1
- Top = 25
+ Top = 24
Width = 417
Height = 204
TabOrder = 6
object Label1: TLabel
Left = 10
- Top = 71
+ Top = 72
Width = 99
Height = 13
Caption = 'Maker Name/#/Type'
@@ -94,37 +94,37 @@ object ConvOptDialog: TConvOptDialog
object Label2: TLabel
Left = 10
Top = 6
- Width = 100
+ Width = 104
Height = 13
- Caption = 'RunBy/Obsv/Agency'
+ Caption = 'RunBy/Obsrv/Agency'
end
object Label4: TLabel
Left = 10
- Top = 93
+ Top = 94
Width = 82
Height = 13
Caption = 'Rec #/Type/Vers'
end
object Label5: TLabel
Left = 10
- Top = 115
+ Top = 116
Width = 56
Height = 13
Caption = 'Ant #/Type'
end
object Label6: TLabel
Left = 10
- Top = 137
+ Top = 138
Width = 76
Height = 13
Caption = 'Approx Pos XYZ'
end
object Label7: TLabel
Left = 10
- Top = 159
- Width = 76
+ Top = 160
+ Width = 100
Height = 13
- Caption = 'Ant Delta H/E/N'
+ Caption = 'Antenna Delta H/E/N'
end
object Label10: TLabel
Left = 10
@@ -196,19 +196,12 @@ object ConvOptDialog: TConvOptDialog
Height = 21
TabOrder = 12
end
- object Ant2: TEdit
- Left = 320
- Top = 113
- Width = 95
- Height = 21
- TabOrder = 13
- end
object AppPos2: TEdit
Left = 320
Top = 135
Width = 95
Height = 21
- TabOrder = 16
+ TabOrder = 15
Text = '0.0000'
end
object AntDel2: TEdit
@@ -216,7 +209,7 @@ object ConvOptDialog: TConvOptDialog
Top = 157
Width = 95
Height = 21
- TabOrder = 19
+ TabOrder = 18
Text = '0.0000'
end
object AppPos1: TEdit
@@ -224,7 +217,7 @@ object ConvOptDialog: TConvOptDialog
Top = 135
Width = 95
Height = 21
- TabOrder = 15
+ TabOrder = 14
Text = '0.0000'
end
object AntDel1: TEdit
@@ -232,7 +225,7 @@ object ConvOptDialog: TConvOptDialog
Top = 157
Width = 95
Height = 21
- TabOrder = 18
+ TabOrder = 17
Text = '0.0000'
end
object AppPos0: TEdit
@@ -240,7 +233,7 @@ object ConvOptDialog: TConvOptDialog
Top = 135
Width = 95
Height = 21
- TabOrder = 14
+ TabOrder = 13
Text = '0.0000'
end
object AntDel0: TEdit
@@ -248,7 +241,7 @@ object ConvOptDialog: TConvOptDialog
Top = 157
Width = 95
Height = 21
- TabOrder = 17
+ TabOrder = 16
Text = '0.0000'
end
object Comment0: TEdit
@@ -280,58 +273,58 @@ object ConvOptDialog: TConvOptDialog
TabOrder = 6
end
object OutIono: TCheckBox
- Left = 207
- Top = 183
+ Left = 187
+ Top = 182
Width = 68
Height = 18
Caption = 'Iono Corr'
- TabOrder = 20
+ TabOrder = 22
end
object OutTime: TCheckBox
- Left = 281
- Top = 183
+ Left = 263
+ Top = 182
Width = 65
Height = 18
Caption = 'Time Corr'
- TabOrder = 21
+ TabOrder = 23
end
object OutLeaps: TCheckBox
- Left = 351
- Top = 183
+ Left = 341
+ Top = 182
Width = 62
Height = 18
Caption = 'Leap Sec'
- TabOrder = 22
+ TabOrder = 24
end
object AutoPos: TCheckBox
Left = 109
Top = 137
Width = 18
Height = 18
- TabOrder = 23
+ TabOrder = 19
OnClick = AutoPosClick
end
- object ScanObs: TCheckBox
- Left = 10
- Top = 184
- Width = 107
- Height = 18
- Caption = 'Scan Obs Types'
- TabOrder = 24
- end
object HalfCyc: TCheckBox
- Left = 111
- Top = 184
+ Left = 96
+ Top = 183
Width = 82
Height = 18
Caption = 'Half Cyc Corr'
- TabOrder = 25
+ TabOrder = 21
+ end
+ object PhaseShift: TCheckBox
+ Left = 10
+ Top = 182
+ Width = 76
+ Height = 18
+ Caption = 'Phase Shift'
+ TabOrder = 20
end
end
object GroupBox3: TGroupBox
Left = 1
- Top = 262
- Width = 128
+ Top = 263
+ Width = 132
Height = 35
Caption = 'Observation Types'
TabOrder = 8
@@ -346,7 +339,7 @@ object ConvOptDialog: TConvOptDialog
TabOrder = 0
end
object Obs2: TCheckBox
- Left = 40
+ Left = 41
Top = 14
Width = 30
Height = 15
@@ -356,7 +349,7 @@ object ConvOptDialog: TConvOptDialog
TabOrder = 1
end
object Obs3: TCheckBox
- Left = 70
+ Left = 72
Top = 14
Width = 30
Height = 15
@@ -366,9 +359,9 @@ object ConvOptDialog: TConvOptDialog
TabOrder = 2
end
object Obs4: TCheckBox
- Left = 100
+ Left = 103
Top = 14
- Width = 27
+ Width = 30
Height = 15
Caption = 'S'
Checked = True
@@ -377,9 +370,9 @@ object ConvOptDialog: TConvOptDialog
end
end
object TraceLevel: TComboBox
- Left = 190
- Top = 326
- Width = 63
+ Left = 189
+ Top = 329
+ Width = 60
Height = 21
Style = csDropDownList
ItemIndex = 0
@@ -394,23 +387,33 @@ object ConvOptDialog: TConvOptDialog
'Level 5')
end
object RcvOption: TEdit
- Left = 102
- Top = 300
- Width = 316
+ Left = 103
+ Top = 301
+ Width = 315
Height = 21
TabOrder = 10
end
object GroupBox4: TGroupBox
- Left = 130
- Top = 262
- Width = 241
+ Left = 137
+ Top = 263
+ Width = 176
Height = 35
- Caption = 'Frequencies'
+ Caption = 'GNSS Signals '
TabOrder = 9
+ object BtnFreq: TSpeedButton
+ Left = 71
+ Top = -2
+ Width = 16
+ Height = 16
+ Caption = '?'
+ Flat = True
+ Spacing = 0
+ OnClick = BtnFreqClick
+ end
object Freq1: TCheckBox
Left = 10
Top = 14
- Width = 51
+ Width = 30
Height = 17
Caption = 'L1'
Checked = True
@@ -418,9 +421,9 @@ object ConvOptDialog: TConvOptDialog
TabOrder = 0
end
object Freq2: TCheckBox
- Left = 42
+ Left = 43
Top = 14
- Width = 37
+ Width = 30
Height = 17
Caption = 'L2'
Checked = True
@@ -428,57 +431,41 @@ object ConvOptDialog: TConvOptDialog
TabOrder = 1
end
object Freq3: TCheckBox
- Left = 74
+ Left = 76
Top = 14
- Width = 53
+ Width = 30
Height = 17
- Caption = 'L5/3'
+ Caption = 'L3'
TabOrder = 2
end
object Freq4: TCheckBox
- Left = 113
+ Left = 109
Top = 14
- Width = 45
+ Width = 30
Height = 17
- Caption = 'L6'
+ Caption = 'L4'
TabOrder = 3
end
object Freq5: TCheckBox
- Left = 145
+ Left = 142
Top = 14
- Width = 39
+ Width = 30
Height = 17
- Caption = 'L7'
+ Caption = 'L5'
TabOrder = 4
end
- object Freq6: TCheckBox
- Left = 177
- Top = 14
- Width = 31
- Height = 17
- Caption = 'L8'
- TabOrder = 5
- end
- object Freq7: TCheckBox
- Left = 209
- Top = 14
- Width = 31
- Height = 17
- Caption = 'L9'
- TabOrder = 6
- end
end
object ExSats: TEdit
- Left = 316
+ Left = 317
Top = 243
- Width = 102
+ Width = 101
Height = 21
TabOrder = 12
end
object RnxVer: TComboBox
- Left = 65
+ Left = 67
Top = 2
- Width = 64
+ Width = 60
Height = 21
Style = csDropDownList
ItemIndex = 0
@@ -492,7 +479,8 @@ object ConvOptDialog: TConvOptDialog
'3.00'
'3.01'
'3.02'
- '3.03')
+ '3.03'
+ '3.04')
end
object RnxFile: TCheckBox
Left = 327
@@ -521,7 +509,7 @@ object ConvOptDialog: TConvOptDialog
object Nav1: TCheckBox
Left = 10
Top = 14
- Width = 47
+ Width = 40
Height = 15
Caption = 'GPS'
Checked = True
@@ -529,58 +517,58 @@ object ConvOptDialog: TConvOptDialog
TabOrder = 0
end
object Nav2: TCheckBox
- Left = 53
+ Left = 52
Top = 14
- Width = 71
+ Width = 40
Height = 15
Caption = 'GLO'
TabOrder = 1
end
object Nav3: TCheckBox
- Left = 96
+ Left = 94
Top = 14
- Width = 59
+ Width = 40
Height = 15
Caption = 'GAL'
TabOrder = 2
end
object Nav4: TCheckBox
- Left = 139
+ Left = 136
Top = 14
- Width = 55
+ Width = 40
Height = 15
Caption = 'QZS'
TabOrder = 3
end
object Nav5: TCheckBox
- Left = 182
+ Left = 270
Top = 14
- Width = 49
+ Width = 40
Height = 15
Caption = 'SBS'
- TabOrder = 4
+ TabOrder = 6
end
object Nav6: TCheckBox
- Left = 225
+ Left = 178
Top = 14
- Width = 49
+ Width = 40
Height = 15
Caption = 'BDS'
- TabOrder = 5
+ TabOrder = 4
end
object Nav7: TCheckBox
- Left = 268
+ Left = 220
Top = 14
- Width = 49
+ Width = 45
Height = 15
- Caption = 'IRN'
- TabOrder = 6
+ Caption = 'NavIC'
+ TabOrder = 5
end
end
object BtnMask: TButton
- Left = 373
- Top = 267
- Width = 46
+ Left = 316
+ Top = 268
+ Width = 50
Height = 30
Caption = 'Mask...'
TabOrder = 13
@@ -595,11 +583,20 @@ object ConvOptDialog: TConvOptDialog
TabOrder = 3
end
object TimeTol: TEdit
- Left = 102
- Top = 325
+ Left = 103
+ Top = 329
Width = 45
Height = 21
TabOrder = 14
Text = '0.005'
end
+ object BtnFcn: TButton
+ Left = 369
+ Top = 268
+ Width = 50
+ Height = 30
+ Caption = 'FCN...'
+ TabOrder = 15
+ OnClick = BtnFcnClick
+ end
end
diff --git a/app/rtkconv/convopt.h b/app/winapp/rtkconv/convopt.h
similarity index 92%
rename from app/rtkconv/convopt.h
rename to app/winapp/rtkconv/convopt.h
index b98ff6673..98e478f98 100644
--- a/app/rtkconv/convopt.h
+++ b/app/winapp/rtkconv/convopt.h
@@ -7,6 +7,7 @@
#include
#include
#include
+#include
//---------------------------------------------------------------------------
class TConvOptDialog : public TForm
{
@@ -27,7 +28,6 @@ class TConvOptDialog : public TForm
TLabel *Label5;
TEdit *Ant0;
TEdit *Ant1;
- TEdit *Ant2;
TEdit *AppPos2;
TEdit *AntDel2;
TEdit *AppPos1;
@@ -67,7 +67,6 @@ class TConvOptDialog : public TForm
TEdit *MarkerNo;
TEdit *ExSats;
TLabel *Label11;
- TCheckBox *Freq6;
TCheckBox *RnxFile;
TLabel *Label12;
TEdit *RnxCode;
@@ -77,18 +76,21 @@ class TConvOptDialog : public TForm
TCheckBox *AutoPos;
TButton *BtnMask;
TCheckBox *Nav7;
- TCheckBox *Freq7;
- TCheckBox *ScanObs;
TCheckBox *HalfCyc;
TCheckBox *ChkSepNav;
TLabel *Label13;
TEdit *TimeTol;
+ TCheckBox *PhaseShift;
+ TSpeedButton *BtnFreq;
+ TButton *BtnFcn;
void __fastcall FormShow(TObject *Sender);
void __fastcall BtnOkClick(TObject *Sender);
void __fastcall RnxFileClick(TObject *Sender);
void __fastcall BtnMaskClick(TObject *Sender);
void __fastcall RnxVerChange(TObject *Sender);
void __fastcall AutoPosClick(TObject *Sender);
+ void __fastcall BtnFreqClick(TObject *Sender);
+ void __fastcall BtnFcnClick(TObject *Sender);
private:
void __fastcall UpdateEnable(void);
public:
diff --git a/app/winapp/rtkconv/install.bat b/app/winapp/rtkconv/install.bat
new file mode 100644
index 000000000..58ca3da1b
--- /dev/null
+++ b/app/winapp/rtkconv/install.bat
@@ -0,0 +1 @@
+copy Release_Build\rtkconv.exe ..\..\..\..\RTKLIB_bin\bin
diff --git a/app/winapp/rtkconv/rtkconv.cbproj b/app/winapp/rtkconv/rtkconv.cbproj
new file mode 100644
index 000000000..060d4e37e
--- /dev/null
+++ b/app/winapp/rtkconv/rtkconv.cbproj
@@ -0,0 +1,2157 @@
+
+
+ {FBC66FD6-3B53-44AE-9322-ABD439675623}
+ CppVCLApplication
+ rtkconv.cpp
+ True
+ Release
+ VCL
+ 19.2
+ Win64
+ 3
+ Application
+
+
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Cfg_1
+ true
+ true
+
+
+ true
+ Base
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ true
+ Cfg_2
+ true
+ true
+
+
+ ..\..\..\src\;..\..\..\src\rcv\;..\..\src\rcv\;..\appcmn\;..\..\src\;$(IncludePath)
+ ..\..\..\src\;..\..\..\src\rcv\;..\..\src\rcv\;..\appcmn\;..\..\src\;$(ILINK_LibraryPath)
+ false
+ false
+ None
+ false
+ false
+ None
+ rtkconv_Icon.ico
+ Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
+ true
+ 1041
+ ..\appcmn;..\rtkpost;..\..\src\rcv;$(BDS)\include;$(BDS)\include\vcl;..\..\src;$(TASM_IncludePath)
+ ..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;$(DCC_ObjPath)
+ vclx.bpi;vcl.bpi;rtl.bpi;dbrtl.bpi;vcldb.bpi;$(PackageImports)
+ Windows
+ ..\appcmn;..\rtkpost;..\..\src\rcv;$(BDS)\include;$(BDS)\include\vcl;..\..\src;$(BRCC_IncludePath)
+ false
+ true
+ ..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
+ ..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;$(ILINK_ObjectSearchPath)
+ false
+ rtl.lib;vcl.lib;vclx.lib
+ ..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
+ ..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;$(DCC_ResourcePath)
+ JPHNE
+ ..\appcmn;..\rtkpost;..\..\src;$(BDS)\include;$(BCC_IncludePath)
+ rtkconv
+ WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;ENAIRN;NFREQ=5;NEXOBS=3;$(BCC_Defines)
+
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ $(BDSINCLUDE)\windows\vcl;$(IncludePath)
+ 1033
+ $(BDS)\bin\default_app.manifest
+ true
+ _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(BRCC_Defines)
+ _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(TASM_Defines)
+ -tWM
+ exe
+ true
+ $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+
+
+ _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(BRCC_Defines)
+ _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(TASM_Defines)
+ $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+
+
+ -V
+ DEBUG;$(DCC_Define);$(DCC_Define)
+ Debug_Build
+ true
+ true
+ true
+ true
+ false
+ Full
+ true
+ true
+ true
+
+
+ $(BDS)\bin\default_app.manifest
+ true
+ rtl.lib;vcl.lib;vclx.lib
+ 1033
+ _DEBUG;$(BCC_Defines);$(BCC_Defines)
+ -tWM -k
+ true
+ Debug
+
+
+ _DEBUG;$(BCC_Defines);$(BCC_Defines)
+ true
+ true
+ 1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
+
+
+ Release_Build
+ None
+ true
+
+
+ true
+ $(BDS)\bin\default_app.manifest
+ 1033
+ rtl.lib;vcl.lib;vclx.lib
+ -tWM -r
+ true
+ Debug
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
+
+
+ true
+ rtl.lib;vcl.lib;vclx.lib
+ true
+ 1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
+ PerMonitorV2
+
+
+
+ 6
+
+ ..\appcmn\aboutdlg.h
+ 19
+
+
+ 8
+
+ ..\appcmn\confdlg.h
+ 24
+
+
+
+ dfm
+ ..\appcmn\freqdlg.h
+ 40
+
+
+
+ dfm
+ ..\appcmn\glofcndlg.h
+ 41
+
+
+ 7
+
+ ..\appcmn\keydlg.h
+ 23
+
+
+ 7
+
+ ..\appcmn\timedlg.h
+ 23
+
+
+ 4
+
+ ..\appcmn\viewer.h
+ 14
+
+
+ 5
+
+ ..\appcmn\vieweropt.h
+ 15
+
+
+
+ dfm
+ codeopt.h
+ 28
+
+
+ 2
+
+ convmain.h
+ 18
+
+
+ 3
+
+ convopt.h
+ 13
+
+
+ -1
+ 0
+
+
+ -1
+ 1
+
+
+ 9
+
+ startdlg.h
+ 25
+
+
+ 38
+
+
+ 38
+
+
+ 25
+
+
+ 26
+
+
+ 39
+
+
+ 27
+
+
+ 28
+
+
+ 30
+
+
+ 24
+
+
+ 22
+
+
+ 20
+
+
+ 19
+
+
+ 18
+
+
+ 17
+
+
+ 16
+
+
+ 15
+
+
+ 14
+
+
+ 12
+
+
+ 31
+
+
+ 32
+
+
+ 33
+
+
+ 34
+
+
+ 35
+
+
+ 36
+
+
+ 37
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cfg_2
+ Base
+
+
+ Base
+
+
+ Cfg_1
+ Base
+
+
+
+
+ CPlusPlusBuilder.Personality.12
+ CppVCLApplication
+
+
+
+ False
+ False
+ 1
+ 0
+ 0
+ 0
+ False
+ False
+ False
+ False
+ False
+ 1041
+ 932
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+ 1.0.0.0
+
+
+
+
+
+
+
+
+ False
+
+
+
+
+
+
+ False
+
+ False
+
+ True
+ False
+
+
+ Embarcadero C++Builder Office 2000 サーバー パッケージ
+ Embarcadero C++Builder Office XP サーバー パッケージ
+
+
+ False
+ True
+ True
+ False
+
+
+ rtkconv.cpp
+
+
+
+ True
+ True
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ rtkconv.exe
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ rtkconv.exe
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ rtkconv.exe
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ classes
+ 1
+
+
+ classes
+ 1
+
+
+
+
+ res\xml
+ 1
+
+
+ res\xml
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\armeabi
+ 1
+
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ library\lib\mips
+ 1
+
+
+ library\lib\mips
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\values-v21
+ 1
+
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ res\drawable
+ 1
+
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+
+
+ res\drawable-small
+ 1
+
+
+ res\drawable-small
+ 1
+
+
+
+
+ res\drawable-normal
+ 1
+
+
+ res\drawable-normal
+ 1
+
+
+
+
+ res\drawable-large
+ 1
+
+
+ res\drawable-large
+ 1
+
+
+
+
+ res\drawable-xlarge
+ 1
+
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ Contents\MacOS
+ 1
+ .framework
+
+
+ 0
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .dll;.bpl
+
+
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ Contents\MacOS
+ 1
+ .dylib
+
+
+ 0
+ .bpl
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ Contents\Resources\StartUp\
+ 0
+
+
+ 0
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+ ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).launchscreen
+ 64
+
+
+ ..\$(PROJECTNAME).launchscreen
+ 64
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF
+ 1
+
+
+
+
+ ..\
+ 1
+
+
+ ..\
+ 1
+
+
+
+
+ Contents
+ 1
+
+
+ Contents
+ 1
+
+
+
+
+ Contents\Resources
+ 1
+
+
+ Contents\Resources
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+ library\lib\arm64-v8a
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+ Assets
+ 1
+
+
+ Assets
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 12
+
+
+
+
+
diff --git a/app/winapp/rtkconv/rtkconv.cbproj.local b/app/winapp/rtkconv/rtkconv.cbproj.local
new file mode 100644
index 000000000..7537d3db7
--- /dev/null
+++ b/app/winapp/rtkconv/rtkconv.cbproj.local
@@ -0,0 +1,10 @@
+
+
+
+ 2020/12/08 18:44:06.000.488,=D:\share\RTKLIB\app\winapp\rtkconv\Unit1.cpp
+ 2020/12/08 18:57:46.000.847,D:\share\RTKLIB\app\winapp\appcmn\glofcndlg.dfm=D:\share\RTKLIB\app\winapp\rtkconv\Unit1.dfm
+ 2020/12/08 18:57:46.000.847,D:\share\RTKLIB\app\winapp\appcmn\glofcndlg.cpp=D:\share\RTKLIB\app\winapp\rtkconv\Unit1.cpp
+ 2020/12/08 18:57:46.000.847,D:\share\RTKLIB\app\winapp\appcmn\glofcndlg.h=D:\share\RTKLIB\app\winapp\rtkconv\Unit1.h
+ 2021/07/31 23:53:10.000.969,=C:\work\RTKLIB-local\src\cssr.c
+
+
diff --git a/app/rtkconv/rtkconv.cpp b/app/winapp/rtkconv/rtkconv.cpp
similarity index 86%
rename from app/rtkconv/rtkconv.cpp
rename to app/winapp/rtkconv/rtkconv.cpp
index cc02b1457..2353f7186 100644
--- a/app/rtkconv/rtkconv.cpp
+++ b/app/winapp/rtkconv/rtkconv.cpp
@@ -3,33 +3,20 @@
#pragma hdrstop
//---------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+USEFORM("..\appcmn\timedlg.cpp", TimeDialog);
+USEFORM("..\appcmn\viewer.cpp", TextViewer);
USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
USEFORM("codeopt.cpp", CodeOptDialog);
-USEFORM("convmain.cpp", MainWindow);
-USEFORM("convopt.cpp", ConvOptDialog);
+USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog);
USEFORM("..\appcmn\confdlg.cpp", ConfDialog);
-USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
-USEFORM("..\appcmn\timedlg.cpp", TimeDialog);
-USEFORM("..\appcmn\viewer.cpp", TextViewer);
+USEFORM("..\appcmn\freqdlg.cpp", FreqDialog);
+USEFORM("..\appcmn\glofcndlg.cpp", GloFcnDialog);
+USEFORM("convmain.cpp", MainWindow);
+USEFORM("convopt.cpp", ConvOptDialog);
USEFORM("startdlg.cpp", StartDialog);
//---------------------------------------------------------------------------
-WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
+int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
@@ -45,6 +32,8 @@ WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
Application->CreateForm(__classid(TStartDialog), &StartDialog);
Application->CreateForm(__classid(TKeyDialog), &KeyDialog);
Application->CreateForm(__classid(TCodeOptDialog), &CodeOptDialog);
+ Application->CreateForm(__classid(TFreqDialog), &FreqDialog);
+ Application->CreateForm(__classid(TGloFcnDialog), &GloFcnDialog);
Application->Run();
}
catch (Exception &exception)
diff --git a/app/winapp/rtkconv/rtkconv.res b/app/winapp/rtkconv/rtkconv.res
new file mode 100644
index 000000000..4076d64ba
Binary files /dev/null and b/app/winapp/rtkconv/rtkconv.res differ
diff --git a/app/rtkconv_qt/rtkconv_Icon.ico b/app/winapp/rtkconv/rtkconv_Icon.ico
similarity index 100%
rename from app/rtkconv_qt/rtkconv_Icon.ico
rename to app/winapp/rtkconv/rtkconv_Icon.ico
diff --git a/app/rtkconv/startdlg.cpp b/app/winapp/rtkconv/startdlg.cpp
similarity index 78%
rename from app/rtkconv/startdlg.cpp
rename to app/winapp/rtkconv/startdlg.cpp
index 03a158e5a..766519158 100644
--- a/app/rtkconv/startdlg.cpp
+++ b/app/winapp/rtkconv/startdlg.cpp
@@ -2,6 +2,7 @@
#include
#pragma hdrstop
+#include "rtklib.h"
#include "startdlg.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
@@ -17,9 +18,26 @@ __fastcall TStartDialog::TStartDialog(TComponent* Owner)
//---------------------------------------------------------------------------
void __fastcall TStartDialog::FormShow(TObject *Sender)
{
- char tstr[64];
+ AnsiString file=FileName;
+ FILE *fp;
+ uint32_t time=0;
+ uint8_t buff[80]={0};
+ char tstr[64],path_tag[1024],path[1024],*paths[1];
+
if (Time.time==0) {
- Time=utc2gpst(timeget());
+ Time=utc2gpst(timeget());
+ }
+ // read time tag file if exists
+ paths[0]=path;
+ if (expath(file.c_str(),paths,1)) {
+ sprintf(path_tag,"%s.tag",path);
+ if ((fp=fopen(path_tag,"rb"))) {
+ fread(buff,64,1,fp);
+ if (!strncmp((char *)buff,"TIMETAG",7)&&fread(&time,4,1,fp)) {
+ Time.time=time;
+ }
+ fclose(fp);
+ }
}
time2str(Time,tstr,0);
tstr[10]='\0';
@@ -36,8 +54,8 @@ void __fastcall TStartDialog::BtnOkClick(TObject *Sender)
Time=epoch2time(ep);
}
//---------------------------------------------------------------------------
-void __fastcall TStartDialog::TimeY1UDChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+void __fastcall TStartDialog::TimeY1UDChangingEx(TObject *Sender, bool &AllowChange,
+ int NewValue, TUpDownDirection Direction)
{
AnsiString TimeY1_Text=TimeY1->Text,s;
double ep[]={2000,1,1,0,0,0};
@@ -54,8 +72,8 @@ void __fastcall TStartDialog::TimeY1UDChangingEx(TObject *Sender,
TimeY1->SelStart=p>7||p==0?10:(p>4?7:4);
}
//---------------------------------------------------------------------------
-void __fastcall TStartDialog::TimeH1UDChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+void __fastcall TStartDialog::TimeH1UDChangingEx(TObject *Sender, bool &AllowChange,
+ int NewValue, TUpDownDirection Direction)
{
AnsiString TimeH1_Text=TimeH1->Text,s;
int hms[3]={0},sec,p=TimeH1->SelStart,ud=Direction==updUp?1:-1;
@@ -71,9 +89,15 @@ void __fastcall TStartDialog::BtnFileTimeClick(TObject *Sender)
{
FILETIME tc,ta,tw;
SYSTEMTIME st;
- AnsiString s;
+ AnsiString s,file=FileName;
HANDLE h;
-
+ char path[1024],*paths[1];
+
+ // extend wild-card and get first file
+ paths[0]=path;
+ if (expath(file.c_str(),paths,1)) {
+ FileName=path;
+ }
if ((h=CreateFile(FileName,GENERIC_READ,0,NULL,OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,0))==INVALID_HANDLE_VALUE) {
return;
diff --git a/app/rtkconv/startdlg.dfm b/app/winapp/rtkconv/startdlg.dfm
similarity index 89%
rename from app/rtkconv/startdlg.dfm
rename to app/winapp/rtkconv/startdlg.dfm
index 6c014ed91..5b11cc930 100644
--- a/app/rtkconv/startdlg.dfm
+++ b/app/winapp/rtkconv/startdlg.dfm
@@ -5,7 +5,7 @@ object StartDialog: TStartDialog
Caption = 'Start Time'
ClientHeight = 88
ClientWidth = 247
- Color = clBtnFace
+ Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
@@ -17,8 +17,8 @@ object StartDialog: TStartDialog
PixelsPerInch = 96
TextHeight = 13
object BtnOk: TButton
- Left = 46
- Top = 58
+ Left = 47
+ Top = 57
Width = 79
Height = 27
Caption = '&OK'
@@ -27,8 +27,8 @@ object StartDialog: TStartDialog
OnClick = BtnOkClick
end
object BtnCancel: TButton
- Left = 130
- Top = 58
+ Left = 129
+ Top = 57
Width = 79
Height = 27
Caption = '&Cancel'
@@ -46,9 +46,9 @@ object StartDialog: TStartDialog
object Label1: TLabel
Left = 10
Top = 8
- Width = 227
+ Width = 175
Height = 13
- Caption = 'Input Approx. Log Start Time (GPST)'
+ Caption = 'Approximated Log Start Time (GPST)'
end
object TimeY1: TEdit
Left = 10
@@ -61,7 +61,7 @@ object StartDialog: TStartDialog
object TimeY1UD: TUpDown
Left = 76
Top = 26
- Width = 19
+ Width = 20
Height = 23
Min = -32000
Max = 32000
@@ -80,7 +80,7 @@ object StartDialog: TStartDialog
object TimeH1UD: TUpDown
Left = 156
Top = 26
- Width = 19
+ Width = 20
Height = 23
Min = -32000
Max = 32000
@@ -89,7 +89,7 @@ object StartDialog: TStartDialog
OnChangingEx = TimeH1UDChangingEx
end
object BtnFileTime: TButton
- Left = 178
+ Left = 180
Top = 26
Width = 59
Height = 23
diff --git a/app/rtkconv/startdlg.h b/app/winapp/rtkconv/startdlg.h
similarity index 84%
rename from app/rtkconv/startdlg.h
rename to app/winapp/rtkconv/startdlg.h
index 2b316ea00..6314394f3 100644
--- a/app/rtkconv/startdlg.h
+++ b/app/winapp/rtkconv/startdlg.h
@@ -22,13 +22,13 @@ class TStartDialog : public TForm
TUpDown *TimeH1UD;
TLabel *Label1;
TButton *BtnFileTime;
- void __fastcall TimeY1UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
- void __fastcall TimeH1UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
void __fastcall FormShow(TObject *Sender);
void __fastcall BtnOkClick(TObject *Sender);
void __fastcall BtnFileTimeClick(TObject *Sender);
+ void __fastcall TimeH1UDChangingEx(TObject *Sender, bool &AllowChange, int NewValue,
+ TUpDownDirection Direction);
+ void __fastcall TimeY1UDChangingEx(TObject *Sender, bool &AllowChange, int NewValue,
+ TUpDownDirection Direction);
private:
public:
const char *FileName;
@@ -37,5 +37,5 @@ class TStartDialog : public TForm
};
//---------------------------------------------------------------------------
extern PACKAGE TStartDialog *StartDialog;
-//---------------------------------------------------------------------------
+//-----------------------
#endif
diff --git a/app/rtkget/clean.bat b/app/winapp/rtkget/clean.bat
similarity index 100%
rename from app/rtkget/clean.bat
rename to app/winapp/rtkget/clean.bat
diff --git a/app/rtkget/getmain.cpp b/app/winapp/rtkget/getmain.cpp
similarity index 87%
rename from app/rtkget/getmain.cpp
rename to app/winapp/rtkget/getmain.cpp
index 2099b21ca..af46a4de0 100644
--- a/app/rtkget/getmain.cpp
+++ b/app/winapp/rtkget/getmain.cpp
@@ -46,7 +46,7 @@ static int abortf=0; // abort flag
// show message in message area ---------------------------------------------
extern "C" {
-extern int showmsg(char *format,...)
+extern int showmsg(const char *format,...)
{
va_list arg;
AnsiString str;
@@ -86,6 +86,8 @@ __fastcall TMainForm::TMainForm(TComponent* Owner)
Locals =new TStringList;
TimerCnt=0;
+
+ LogViewer=NULL;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormCreate(TObject *Sender)
@@ -143,6 +145,36 @@ void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
SaveOpt();
}
//---------------------------------------------------------------------------
+void __fastcall TMainForm::Panel3Resize(TObject *Sender)
+{
+ TButton *btn[]={
+ BtnFile,BtnLog,BtnOpts,BtnTest,BtnDownload,BtnExit
+ };
+ int w=(((TPanel *)Sender)->Width-4)/6;
+
+ for (int i=0;i<6;i++) {
+ btn[i]->Width=w-2;
+ btn[i]->Left=w*i+2;
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMainForm::Panel2Resize(TObject *Sender)
+{
+ int w=((TPanel *)Sender)->Width;
+
+ Panel5->Width=w*140/502;
+ Panel9->Width=w*140/502;
+ ::PostMessage(Dir ->Handle,CB_SETEDITSEL,-1,0);
+ ::PostMessage(TimeInt->Handle,CB_SETEDITSEL,-1,0);
+}
+//---------------------------------------------------------------------------
+void __fastcall TMainForm::Panel6Resize(TObject *Sender)
+{
+ int w=((TPanel *)Sender)->Width;
+
+ SubType->Width=(w-2)/2;
+}
+//---------------------------------------------------------------------------
void __fastcall TMainForm::BtnFileClick(TObject *Sender)
{
AnsiString cmd="explorer",opt="",str;
@@ -158,12 +190,13 @@ void __fastcall TMainForm::BtnFileClick(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TMainForm::BtnLogClick(TObject *Sender)
{
- TTextViewer *viewer;
if (LogFile=="") return;
- viewer=new TTextViewer(Application);
- viewer->Caption=LogFile;
- viewer->Show();
- viewer->Read(LogFile);
+ if (!LogViewer) {
+ LogViewer=new TTextViewer(Application);
+ }
+ LogViewer->Caption=LogFile;
+ LogViewer->Show();
+ LogViewer->Read(LogFile);
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::BtnTestClick(TObject *Sender)
@@ -175,7 +208,8 @@ void __fastcall TMainForm::BtnTestClick(TObject *Sender)
url_t urls[MAX_URL_SEL];
gtime_t ts,te;
double ti;
- char *stas[MAX_STA],*dir="";
+ char *stas[MAX_STA];
+ const char *dir="";
int i,nsta,nurl;
if (BtnTest->Caption=="&Abort") {
@@ -251,7 +285,8 @@ void __fastcall TMainForm::BtnDownloadClick(TObject *Sender)
url_t urls[MAX_URL_SEL];
gtime_t ts,te;
double ti;
- char *stas[MAX_STA],*dir="",msg[1024],path[1024];
+ char *stas[MAX_STA],msg[1024],path[1024];
+ const char *dir="";
int i,nsta,nurl,seqnos=0,seqnoe=0,opts=0;
if (BtnDownload->Caption=="&Abort") {
@@ -316,6 +351,10 @@ void __fastcall TMainForm::BtnDownloadClick(TObject *Sender)
for (i=0;iEnabled) AddHist(Dir);
+
+ if (LogFile!=""&&LogViewer) {
+ LogViewer->Read(LogFile);
+ }
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::BtnExitClick(TObject *Sender)
@@ -332,16 +371,10 @@ void __fastcall TMainForm::BtnStasClick(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TMainForm::BtnDirClick(TObject *Sender)
{
-#ifdef TCPP
- AnsiString dir=Dir->Text;
- if (!SelectDirectory("Output Directory","",dir)) return;
- Dir->Text=dir;
-#else
UnicodeString dir=Dir->Text;
TSelectDirExtOpts opt=TSelectDirExtOpts()<Text=dir;
-#endif
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::DirChange(TObject *Sender)
@@ -458,7 +491,7 @@ void __fastcall TMainForm::StaListClick(TObject *Sender)
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::TimeY1UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction)
+ int NewValue, TUpDownDirection Direction)
{
AnsiString s,TimeY1_Text=TimeY1->Text;
double ep[]={2000,1,1,0,0,0};
@@ -477,7 +510,7 @@ void __fastcall TMainForm::TimeY1UDChangingEx(TObject *Sender, bool &AllowChange
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::TimeH1UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction)
+ int NewValue, TUpDownDirection Direction)
{
AnsiString s,TimeH1_Text=TimeH1->Text;
int hms[3]={0},sec,p=TimeH1->SelStart,ud=Direction==updUp?1:-1;
@@ -491,7 +524,7 @@ void __fastcall TMainForm::TimeH1UDChangingEx(TObject *Sender, bool &AllowChange
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::TimeY2UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction)
+ int NewValue, TUpDownDirection Direction)
{
AnsiString s,TimeY2_Text=TimeY2->Text;
double ep[]={2000,1,1,0,0,0};
@@ -510,7 +543,7 @@ void __fastcall TMainForm::TimeY2UDChangingEx(TObject *Sender, bool &AllowChange
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::TimeH2UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction)
+ int NewValue, TUpDownDirection Direction)
{
AnsiString s,TimeH2_Text=TimeH2->Text;
int hms[3]={0},sec,p=TimeH2->SelStart,ud=Direction==updUp?1:-1;
@@ -542,9 +575,9 @@ void __fastcall TMainForm::LoadOpt(void)
AnsiString stas,s;
char buff[8192],*p;
- TimeY1->Text =ini->ReadString ("opt","startd","2011/01/01");
+ TimeY1->Text =ini->ReadString ("opt","startd","2020/01/01");
TimeH1->Text =ini->ReadString ("opt","starth", "00:00");
- TimeY2->Text =ini->ReadString ("opt","endd", "2011/01/01");
+ TimeY2->Text =ini->ReadString ("opt","endd", "2020/01/01");
TimeH2->Text =ini->ReadString ("opt","endh", "00:00");
TimeInt->Text =ini->ReadString ("opt","timeint", "24H");
Number->Text =ini->ReadString ("opt","number", "0");
@@ -566,6 +599,8 @@ void __fastcall TMainForm::LoadOpt(void)
LocalDir ->Checked=ini->ReadInteger("opt","localdirena", 0);
Dir ->Text =ini->ReadString ("opt","localdir", "");
DataType ->Text =ini->ReadString ("opt","datatype", "");
+ Width =ini->ReadInteger("window","width", 532);
+ Height =ini->ReadInteger("window","height", 388);
StaList->Clear();
for (int i=0;i<10;i++) {
stas=ini->ReadString("sta",s.sprintf("station%d",i),"");
@@ -613,6 +648,8 @@ void __fastcall TMainForm::SaveOpt(void)
ini->WriteInteger("opt","localdirena",LocalDir ->Checked );
ini->WriteString ("opt","localdir", Dir ->Text );
ini->WriteString ("opt","datatype", DataType ->Text );
+ ini->WriteInteger("window","width", Width );
+ ini->WriteInteger("window","height", Height );
for (int i=0,j=0;i<10;i++) {
p=buff; *p='\0';
for (int k=0;k<256&&jCount;k++) {
@@ -633,7 +670,7 @@ void __fastcall TMainForm::LoadUrl(AnsiString file)
{
FILE *fp;
url_t *urls;
- char *p,*subtype,*sel[]={"*"};
+ char *p,*subtype,sel[]="*",*sels[]={sel};
int i,j,n;
urls=new url_t [MAX_URL];
@@ -649,7 +686,7 @@ void __fastcall TMainForm::LoadUrl(AnsiString file)
if (file=="") file=URL_FILE; // default url
- n=dl_readurls(file.c_str(),sel,1,urls,MAX_URL);
+ n=dl_readurls(file.c_str(),sels,1,urls,MAX_URL);
for (i=0;iAdd(urls[i].type);
@@ -712,7 +749,7 @@ void __fastcall TMainForm::GetTime(gtime_t *ts, gtime_t *te, double *ti)
*ts=epoch2time(eps);
*te=epoch2time(epe);
- *ti=86400.0,val;
+ *ti=86400.0;
str=TimeInt->Text;
if (sscanf(str.c_str(),"%lf%s",&val,unit)>=1) {
@@ -720,6 +757,9 @@ void __fastcall TMainForm::GetTime(gtime_t *ts, gtime_t *te, double *ti)
else if (!strcmp(unit,"min")) *ti=val*60.0;
else *ti=val*3600.0;
}
+ if (TimeInt->Text=="-") {
+ *te=*ts;
+ }
}
//---------------------------------------------------------------------------
int __fastcall TMainForm::SelectUrl(url_t *urls)
@@ -765,7 +805,8 @@ int __fastcall TMainForm::SelectSta(char **stas)
void __fastcall TMainForm::UpdateType(void)
{
AnsiString str;
- char buff[256],*p,*type,*subtype;
+ char buff[256],*p;
+ const char *type,*subtype;
int i;
DataList->Clear();
@@ -824,11 +865,16 @@ void __fastcall TMainForm::UpdateEnable(void)
Dir ->Enabled=LocalDir->Checked;
BtnDir->Enabled=LocalDir->Checked;
FtpPasswd->PasswordChar=HidePasswd->Checked?'*':'\0';
+ Label3 ->Enabled=TimeInt->Text!="-";
+ TimeY2 ->Enabled=TimeInt->Text!="-";
+ TimeY2UD->Enabled=TimeInt->Text!="-";
+ TimeH2 ->Enabled=TimeInt->Text!="-";
+ TimeH2UD->Enabled=TimeInt->Text!="-";
+ BtnTime2->Enabled=TimeInt->Text!="-";
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::PanelEnable(int ena)
{
- Panel1 ->Enabled=ena;
Panel2 ->Enabled=ena;
BtnFile ->Enabled=ena;
BtnLog ->Enabled=ena;
@@ -836,29 +882,6 @@ void __fastcall TMainForm::PanelEnable(int ena)
BtnTest ->Enabled=ena;
BtnDownload->Enabled=ena;
BtnExit ->Enabled=ena;
- BtnAll ->Enabled=ena;
- BtnStas ->Enabled=ena;
- DataType ->Enabled=ena;
- SubType ->Enabled=ena;
- DataList ->Enabled=ena;
- TimeY1 ->Enabled=ena;
- TimeY1UD ->Enabled=ena;
- TimeH1 ->Enabled=ena;
- TimeH1UD ->Enabled=ena;
- TimeY2 ->Enabled=ena;
- TimeY2UD ->Enabled=ena;
- TimeH2 ->Enabled=ena;
- TimeH2UD ->Enabled=ena;
- TimeInt ->Enabled=ena;
- Number ->Enabled=ena;
- StaList ->Enabled=ena;
- FtpLogin ->Enabled=ena;
- FtpPasswd ->Enabled=ena;
- SkipExist ->Enabled=ena;
- UnZip ->Enabled=ena;
- LocalDir ->Enabled=ena;
- Dir ->Enabled=ena;
- BtnDir ->Enabled=ena;
}
// --------------------------------------------------------------------------
void __fastcall TMainForm::ReadHist(TIniFile *ini, AnsiString key, TStrings *list)
@@ -907,5 +930,54 @@ int __fastcall TMainForm::ExecCmd(AnsiString cmd)
CloseHandle(info.hThread);
return 1;
}
+//--ComboCloseUp---------------------------------------------------------------
+void __fastcall TMainForm::ComboCloseUp(TObject *Sender)
+{
+ TComboBox *combo=(TComboBox *)Sender;
+
+ ::PostMessage(combo->Handle,CB_SETEDITSEL,-1,0);
+}
+//---------------------------------------------------------------------------
+void __fastcall TMainForm::TimeY1KeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
+{
+ bool allowchange;
+ if (Key==VK_UP||Key==VK_DOWN) {
+ TimeY1UDChangingEx(Sender,allowchange,0,Key==VK_UP?updUp:updDown);
+ Key=0;
+ }
+}
//---------------------------------------------------------------------------
+void __fastcall TMainForm::TimeH1KeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
+{
+ bool allowchange;
+ if (Key==VK_UP||Key==VK_DOWN) {
+ TimeH1UDChangingEx(Sender,allowchange,0,Key==VK_UP?updUp:updDown);
+ Key=0;
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMainForm::TimeH2KeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
+{
+ bool allowchange;
+ if (Key==VK_UP||Key==VK_DOWN) {
+ TimeH2UDChangingEx(Sender,allowchange,0,Key==VK_UP?updUp:updDown);
+ Key=0;
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMainForm::TimeY2KeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
+{
+ bool allowchange;
+ if (Key==VK_UP||Key==VK_DOWN) {
+ TimeY2UDChangingEx(Sender,allowchange,0,Key==VK_UP?updUp:updDown);
+ Key=0;
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMainForm::TimeIntChange(TObject *Sender)
+{
+ UpdateEnable();
+}
+//---------------------------------------------------------------------------
+
diff --git a/app/winapp/rtkget/getmain.dfm b/app/winapp/rtkget/getmain.dfm
new file mode 100644
index 000000000..71a31789b
--- /dev/null
+++ b/app/winapp/rtkget/getmain.dfm
@@ -0,0 +1,1067 @@
+object MainForm: TMainForm
+ AlignWithMargins = True
+ Left = 0
+ Top = 0
+ Margins.Left = 2
+ Margins.Top = 2
+ Margins.Right = 2
+ Margins.Bottom = 2
+ BorderIcons = [biSystemMenu, biMinimize]
+ Caption = 'RTKGET'
+ ClientHeight = 349
+ ClientWidth = 516
+ Color = clWhite
+ Constraints.MaxHeight = 800
+ Constraints.MaxWidth = 800
+ Constraints.MinHeight = 388
+ Constraints.MinWidth = 520
+ DoubleBuffered = True
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ OnClose = FormClose
+ OnCreate = FormCreate
+ OnShow = FormShow
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Panel2: TPanel
+ AlignWithMargins = True
+ Left = 2
+ Top = 2
+ Width = 512
+ Height = 236
+ Margins.Left = 2
+ Margins.Top = 2
+ Margins.Right = 2
+ Margins.Bottom = 2
+ Align = alClient
+ BevelOuter = bvNone
+ TabOrder = 0
+ OnResize = Panel2Resize
+ object Panel5: TPanel
+ AlignWithMargins = True
+ Left = 1
+ Top = 1
+ Width = 140
+ Height = 234
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 1
+ Align = alLeft
+ BevelOuter = bvNone
+ Constraints.MinWidth = 140
+ TabOrder = 0
+ object DataList: TListBox
+ Left = 0
+ Top = 23
+ Width = 140
+ Height = 211
+ Align = alClient
+ ItemHeight = 13
+ MultiSelect = True
+ TabOrder = 1
+ OnClick = DataListClick
+ end
+ object Panel6: TPanel
+ Left = 0
+ Top = 0
+ Width = 140
+ Height = 23
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 1
+ Align = alTop
+ BevelOuter = bvNone
+ TabOrder = 0
+ OnResize = Panel6Resize
+ object DataType: TComboBox
+ Left = 0
+ Top = 0
+ Width = 68
+ Height = 21
+ Align = alClient
+ AutoComplete = False
+ Style = csDropDownList
+ DropDownCount = 32
+ TabOrder = 0
+ OnChange = DataTypeChange
+ end
+ object SubType: TComboBox
+ Left = 70
+ Top = 0
+ Width = 70
+ Height = 21
+ Align = alRight
+ AutoComplete = False
+ Style = csDropDownList
+ DropDownCount = 32
+ Sorted = True
+ TabOrder = 1
+ OnChange = DataTypeChange
+ end
+ object Panel17: TPanel
+ Left = 68
+ Top = 0
+ Width = 2
+ Height = 23
+ Align = alRight
+ BevelOuter = bvNone
+ TabOrder = 2
+ end
+ end
+ end
+ object Panel7: TPanel
+ AlignWithMargins = True
+ Left = 143
+ Top = 1
+ Width = 368
+ Height = 234
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 1
+ Align = alClient
+ BevelOuter = bvNone
+ TabOrder = 1
+ object Panel8: TPanel
+ AlignWithMargins = True
+ Left = 1
+ Top = 213
+ Width = 367
+ Height = 21
+ Margins.Left = 1
+ Margins.Top = 2
+ Margins.Right = 0
+ Margins.Bottom = 0
+ Align = alBottom
+ BevelOuter = bvNone
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 1
+ object Dir: TComboBox
+ AlignWithMargins = True
+ Left = 5
+ Top = 0
+ Width = 335
+ Height = 21
+ Margins.Left = 5
+ Margins.Top = 0
+ Margins.Right = 2
+ Margins.Bottom = 0
+ Align = alClient
+ DropDownCount = 20
+ TabOrder = 0
+ OnChange = DirChange
+ OnCloseUp = ComboCloseUp
+ ExplicitLeft = -1
+ ExplicitWidth = 340
+ end
+ object BtnDir: TButton
+ Left = 342
+ Top = 0
+ Width = 25
+ Height = 21
+ Align = alRight
+ Caption = '...'
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -9
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 1
+ OnClick = BtnDirClick
+ ExplicitLeft = 340
+ ExplicitTop = 1
+ end
+ end
+ object Panel9: TPanel
+ Left = 228
+ Top = 0
+ Width = 140
+ Height = 211
+ Margins.Left = 1
+ Margins.Right = 1
+ Margins.Bottom = 1
+ Align = alRight
+ BevelOuter = bvNone
+ Constraints.MinWidth = 140
+ TabOrder = 2
+ object StaList: TListBox
+ AlignWithMargins = True
+ Left = 0
+ Top = 23
+ Width = 140
+ Height = 187
+ Hint = 'Station List'
+ Margins.Left = 0
+ Margins.Top = 0
+ Margins.Right = 0
+ Margins.Bottom = 1
+ Align = alClient
+ ItemHeight = 13
+ MultiSelect = True
+ ParentShowHint = False
+ ShowHint = True
+ TabOrder = 0
+ OnClick = StaListClick
+ ExplicitLeft = -1
+ ExplicitHeight = 186
+ end
+ object Panel15: TPanel
+ Left = 0
+ Top = 0
+ Width = 140
+ Height = 23
+ Margins.Left = 0
+ Margins.Top = 0
+ Margins.Right = 1
+ Margins.Bottom = 1
+ Align = alTop
+ BevelOuter = bvNone
+ TabOrder = 1
+ ExplicitTop = 1
+ object LabelSta: TLabel
+ Left = 5
+ Top = 4
+ Width = 56
+ Height = 13
+ Caption = 'Stations (0)'
+ end
+ object BtnAll: TButton
+ Left = 88
+ Top = 0
+ Width = 25
+ Height = 23
+ Hint = 'Select/Clear All'
+ Align = alRight
+ Caption = 'A'
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -9
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ ParentShowHint = False
+ ShowHint = True
+ TabOrder = 0
+ OnClick = BtnAllClick
+ end
+ object BtnStas: TButton
+ Left = 115
+ Top = 0
+ Width = 25
+ Height = 23
+ Hint = 'Load Station List'
+ Align = alRight
+ Caption = '...'
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -9
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ ParentShowHint = False
+ ShowHint = True
+ TabOrder = 1
+ OnClick = BtnStasClick
+ end
+ object Panel18: TPanel
+ Left = 113
+ Top = 0
+ Width = 2
+ Height = 23
+ Align = alRight
+ BevelOuter = bvNone
+ TabOrder = 2
+ end
+ end
+ end
+ object Panel10: TPanel
+ Left = 0
+ Top = 0
+ Width = 228
+ Height = 211
+ Align = alClient
+ BevelOuter = bvNone
+ TabOrder = 0
+ object Panel11: TPanel
+ Left = 0
+ Top = 0
+ Width = 228
+ Height = 21
+ Align = alTop
+ BevelOuter = bvNone
+ TabOrder = 0
+ object Label8: TLabel
+ Left = 10
+ Top = 4
+ Width = 85
+ Height = 13
+ Caption = 'Time Span (GPST)'
+ end
+ end
+ object Panel12: TPanel
+ Left = 0
+ Top = 21
+ Width = 228
+ Height = 26
+ Align = alTop
+ BevelOuter = bvNone
+ TabOrder = 1
+ ExplicitTop = 24
+ object Label1: TLabel
+ Left = 10
+ Top = 5
+ Width = 24
+ Height = 13
+ Caption = 'Start'
+ end
+ object BtnTime1: TSpeedButton
+ Left = 198
+ Top = 1
+ Width = 15
+ Height = 21
+ Caption = '?'
+ Flat = True
+ OnClick = BtnTime1Click
+ end
+ object TimeY1: TEdit
+ Left = 46
+ Top = 2
+ Width = 65
+ Height = 21
+ TabOrder = 0
+ Text = '2000/01/01'
+ OnKeyDown = TimeY1KeyDown
+ end
+ object TimeY1UD: TUpDown
+ Left = 113
+ Top = 1
+ Width = 20
+ Height = 23
+ TabOrder = 1
+ OnChangingEx = TimeY1UDChangingEx
+ end
+ object TimeH1: TEdit
+ Left = 136
+ Top = 2
+ Width = 38
+ Height = 21
+ TabOrder = 2
+ Text = '00:00'
+ OnKeyDown = TimeH1KeyDown
+ end
+ object TimeH1UD: TUpDown
+ Left = 176
+ Top = 1
+ Width = 20
+ Height = 23
+ TabOrder = 3
+ OnChangingEx = TimeH1UDChangingEx
+ end
+ end
+ object Panel13: TPanel
+ Left = 0
+ Top = 47
+ Width = 228
+ Height = 26
+ Align = alTop
+ BevelOuter = bvNone
+ TabOrder = 2
+ ExplicitTop = 50
+ object Label3: TLabel
+ Left = 10
+ Top = 5
+ Width = 18
+ Height = 13
+ Caption = 'End'
+ end
+ object BtnTime2: TSpeedButton
+ Left = 198
+ Top = 2
+ Width = 15
+ Height = 21
+ Caption = '?'
+ Flat = True
+ OnClick = BtnTime2Click
+ end
+ object TimeY2: TEdit
+ Left = 46
+ Top = 2
+ Width = 65
+ Height = 21
+ TabOrder = 0
+ Text = '2000/01/01'
+ OnKeyDown = TimeY2KeyDown
+ end
+ object TimeY2UD: TUpDown
+ Left = 113
+ Top = 2
+ Width = 20
+ Height = 23
+ TabOrder = 1
+ OnChangingEx = TimeY2UDChangingEx
+ end
+ object TimeH2: TEdit
+ Left = 136
+ Top = 2
+ Width = 38
+ Height = 21
+ TabOrder = 2
+ Text = '00:00'
+ OnKeyDown = TimeH2KeyDown
+ end
+ object TimeH2UD: TUpDown
+ Left = 176
+ Top = 2
+ Width = 20
+ Height = 23
+ TabOrder = 3
+ OnChangingEx = TimeH2UDChangingEx
+ end
+ end
+ object Panel4: TPanel
+ Left = 0
+ Top = 103
+ Width = 228
+ Height = 48
+ Align = alBottom
+ BevelOuter = bvNone
+ TabOrder = 4
+ object Label4: TLabel
+ Left = 10
+ Top = 6
+ Width = 46
+ Height = 13
+ Caption = 'FTP Login'
+ end
+ object FtpLogin: TEdit
+ Left = 6
+ Top = 22
+ Width = 102
+ Height = 21
+ TabOrder = 0
+ Text = 'anonymous'
+ end
+ object FtpPasswd: TEdit
+ Left = 110
+ Top = 22
+ Width = 102
+ Height = 21
+ PasswordChar = '*'
+ TabOrder = 2
+ Text = 'user@'
+ end
+ object HidePasswd: TCheckBox
+ Left = 110
+ Top = 4
+ Width = 97
+ Height = 17
+ Caption = 'Password'
+ TabOrder = 1
+ OnClick = HidePasswdClick
+ end
+ end
+ object Panel14: TPanel
+ Left = 0
+ Top = 73
+ Width = 228
+ Height = 26
+ Align = alTop
+ BevelOuter = bvNone
+ TabOrder = 3
+ ExplicitTop = 76
+ object Label7: TLabel
+ Left = 10
+ Top = 5
+ Width = 38
+ Height = 13
+ Caption = 'Interval'
+ end
+ object Label2: TLabel
+ Left = 118
+ Top = 5
+ Width = 17
+ Height = 13
+ Caption = 'No.'
+ end
+ object TimeInt: TComboBox
+ Left = 54
+ Top = 2
+ Width = 57
+ Height = 21
+ DropDownCount = 9
+ ItemIndex = 0
+ TabOrder = 0
+ Text = '-'
+ OnChange = TimeIntChange
+ OnCloseUp = ComboCloseUp
+ Items.Strings = (
+ '-'
+ '15min'
+ '30min'
+ '1H'
+ '3H'
+ '6H'
+ '12H'
+ '24H'
+ '7day')
+ end
+ object Number: TEdit
+ Left = 144
+ Top = 3
+ Width = 52
+ Height = 21
+ TabOrder = 1
+ Text = '0'
+ end
+ end
+ object Panel1: TPanel
+ Left = 0
+ Top = 151
+ Width = 228
+ Height = 60
+ Align = alBottom
+ BevelOuter = bvNone
+ TabOrder = 5
+ object BtnKeyword: TSpeedButton
+ Left = 119
+ Top = 41
+ Width = 15
+ Height = 19
+ Caption = '?'
+ Flat = True
+ OnClick = BtnKeywordClick
+ end
+ object SkipExist: TCheckBox
+ Left = 8
+ Top = 2
+ Width = 112
+ Height = 17
+ Caption = ' Skip Existing Files'
+ TabOrder = 0
+ end
+ object UnZip: TCheckBox
+ Left = 8
+ Top = 22
+ Width = 146
+ Height = 17
+ Caption = ' Unzip/Uncompact Files'
+ TabOrder = 1
+ end
+ object LocalDir: TCheckBox
+ Left = 8
+ Top = 42
+ Width = 110
+ Height = 17
+ Caption = ' Local Directory'
+ TabOrder = 2
+ OnClick = LocalDirClick
+ end
+ end
+ end
+ end
+ end
+ object Panel3: TPanel
+ AlignWithMargins = True
+ Left = 0
+ Top = 316
+ Width = 516
+ Height = 33
+ Margins.Left = 0
+ Margins.Top = 1
+ Margins.Right = 0
+ Margins.Bottom = 0
+ Align = alBottom
+ BevelOuter = bvNone
+ TabOrder = 4
+ OnResize = Panel3Resize
+ object BtnFile: TButton
+ Left = 1
+ Top = 1
+ Width = 77
+ Height = 29
+ Caption = '&Files...'
+ TabOrder = 0
+ OnClick = BtnFileClick
+ end
+ object BtnLog: TButton
+ Left = 78
+ Top = 1
+ Width = 77
+ Height = 29
+ Caption = '&Log...'
+ TabOrder = 1
+ OnClick = BtnLogClick
+ end
+ object BtnOpts: TButton
+ Left = 155
+ Top = 1
+ Width = 77
+ Height = 29
+ Caption = '&Options...'
+ TabOrder = 2
+ OnClick = BtnOptsClick
+ end
+ object BtnTest: TButton
+ Left = 232
+ Top = 1
+ Width = 77
+ Height = 29
+ Caption = '&Test...'
+ TabOrder = 3
+ OnClick = BtnTestClick
+ end
+ object BtnDownload: TButton
+ Left = 309
+ Top = 1
+ Width = 77
+ Height = 29
+ Caption = '&Download'
+ TabOrder = 4
+ OnClick = BtnDownloadClick
+ end
+ object BtnExit: TButton
+ Left = 386
+ Top = 1
+ Width = 77
+ Height = 29
+ Caption = '&Exit'
+ TabOrder = 5
+ OnClick = BtnExitClick
+ end
+ end
+ object Msg1: TPanel
+ AlignWithMargins = True
+ Left = 1
+ Top = 240
+ Width = 514
+ Height = 25
+ Margins.Left = 1
+ Margins.Top = 0
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Align = alBottom
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ DoubleBuffered = True
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clBlack
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentDoubleBuffered = False
+ ParentFont = False
+ ParentShowHint = False
+ ShowHint = True
+ TabOrder = 1
+ object MsgLabel1: TLabel
+ Left = 2
+ Top = 2
+ Width = 510
+ Height = 21
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 1
+ Align = alClient
+ Alignment = taCenter
+ Layout = tlCenter
+ ExplicitWidth = 3
+ ExplicitHeight = 13
+ end
+ end
+ object Msg3: TPanel
+ AlignWithMargins = True
+ Left = 1
+ Top = 290
+ Width = 514
+ Height = 25
+ Margins.Left = 1
+ Margins.Top = 0
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Align = alBottom
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ DoubleBuffered = True
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clGray
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentBackground = False
+ ParentDoubleBuffered = False
+ ParentFont = False
+ TabOrder = 3
+ object MsgLabel3: TLabel
+ Left = 25
+ Top = 2
+ Width = 464
+ Height = 21
+ Align = alClient
+ Alignment = taCenter
+ Color = clWhite
+ ParentColor = False
+ Layout = tlCenter
+ ExplicitWidth = 3
+ ExplicitHeight = 13
+ end
+ object BtnTray: TSpeedButton
+ Left = 489
+ Top = 2
+ Width = 23
+ Height = 21
+ Align = alRight
+ Flat = True
+ Glyph.Data = {
+ 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
+ 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF787878FFFFFF787878FFFFFF787878FF
+ FFFF000000000000000000FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFF000000FFFFFF000000FFFFFFFFFFFF00FFFFFFFFFFFF
+ 787878FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000FFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF787878FFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFF787878FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ 787878FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF787878FFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF787878FFFFFF787878FFFFFF787878FF
+ FFFF787878FFFFFF787878FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00}
+ OnClick = BtnTrayClick
+ ExplicitLeft = 478
+ end
+ object BtnHelp: TSpeedButton
+ Left = 2
+ Top = 2
+ Width = 23
+ Height = 21
+ Align = alLeft
+ Caption = '?'
+ Flat = True
+ OnClick = BtnHelpClick
+ ExplicitLeft = 13
+ ExplicitTop = 1
+ end
+ end
+ object Msg2: TPanel
+ AlignWithMargins = True
+ Left = 1
+ Top = 265
+ Width = 514
+ Height = 25
+ Margins.Left = 1
+ Margins.Top = 0
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Align = alBottom
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ DoubleBuffered = True
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clBlack
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentDoubleBuffered = False
+ ParentFont = False
+ ParentShowHint = False
+ ShowHint = True
+ TabOrder = 2
+ object MsgLabel2: TLabel
+ Left = 2
+ Top = 2
+ Width = 487
+ Height = 21
+ Align = alClient
+ Alignment = taCenter
+ Layout = tlCenter
+ ExplicitWidth = 3
+ ExplicitHeight = 13
+ end
+ object Panel16: TPanel
+ Left = 489
+ Top = 2
+ Width = 23
+ Height = 21
+ Align = alRight
+ BevelOuter = bvNone
+ TabOrder = 0
+ object Image1: TImage
+ Left = 6
+ Top = 5
+ Width = 12
+ Height = 12
+ Picture.Data = {
+ 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
+ 00000D0000000100040000000000680000000000000000000000100000000000
+ 0000000000000000800000800000008080008000000080008000808000008080
+ 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
+ FF00FFFFFFFFFFFFF000FFFFFFFFFFFFF000FF0F70000FFFF000FF000FFFF0FF
+ F000FF0007FFFF7FF000FF00FFFFFFFFF000FF0FFFFFFF0FF000FFFFFFFFF00F
+ F000FF7FFFF7000FF000FFF0FFFF000FF000FFFF00007F0FF000FFFFFFFFFFFF
+ F000FFFFFFFFFFFFF000}
+ Transparent = True
+ Visible = False
+ end
+ object Image2: TImage
+ Left = 6
+ Top = 5
+ Width = 12
+ Height = 12
+ Picture.Data = {
+ 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
+ 00000D0000000100040000000000680000000000000000000000100000000000
+ 0000000000000000800000800000008080008000000080008000808000008080
+ 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
+ FF00FFFFFFFFFFFFF000FFFFFFFFFFFFF000FFFF00000FFFF000F7F0FFFFF8FF
+ F000F00078FFFF8FF000F0007FFFFF0FF000F707FFFFF707F000FF0FFFFF7000
+ F000FF8FFFF87000F000FFF8FFFFF0F7F000FFFF00000FFFF000FFFFFFFFFFFF
+ F000FFFFFFFFFFFFF000}
+ Transparent = True
+ Visible = False
+ end
+ object Image3: TImage
+ Left = 6
+ Top = 5
+ Width = 12
+ Height = 12
+ Picture.Data = {
+ 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
+ 00000D0000000100040000000000680000000000000000000000100000000000
+ 0000000000000000800000800000008080008000000080008000808000008080
+ 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
+ FF00FFFFFFFFFFFFF000FFFFFFFFFFFFF000FFFF00078FFFF000FFF0FFFFF0FF
+ F000FF0FFFFFF00FF0007F0F7FFFF007F000F0008FFF7000F000F700FFFF8F0F
+ 7000FF00FFFFFF0FF000FFF0FFFFF0FFF000FFFF87000FFFF000FFFFFFFFFFFF
+ F000FFFFFFFFFFFFF000}
+ Transparent = True
+ Visible = False
+ end
+ object Image4: TImage
+ Left = 6
+ Top = 5
+ Width = 12
+ Height = 12
+ Picture.Data = {
+ 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
+ 00000D0000000100040000000000680000000000000000000000100000000000
+ 0000000000000000800000800000008080008000000080008000808000008080
+ 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
+ FF00FFFFFFFFFFFFF000FFFFFFFFFFFFF000FFFF00F70FFFF000FFF0FFFF007F
+ F000FF0FFFFFF007F000FF0FFFFF8000F000F80F7FFF7F08F000F0008FFFFF0F
+ F000F700FFFFFF0FF000FF700FFFF0FFF000FFFF07F00FFFF000FFFFFFFFFFFF
+ F000FFFFFFFFFFFFF000}
+ Transparent = True
+ Visible = False
+ end
+ object Image5: TImage
+ Left = 6
+ Top = 5
+ Width = 12
+ Height = 12
+ Picture.Data = {
+ 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
+ 00000D0000000100040000000000680000000000000000000000100000000000
+ 0000000000000000800000800000008080008000000080008000808000008080
+ 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
+ FF00FFFFFFFFFFFFF000FFFFFFFFFFFFF000FFFF7F00000FF000FFF0FFF000FF
+ F000FF0FFFFF007FF000FF0FFFFF7F0FF000FF0FFFFFFF0FF000FF0F7FFFFF0F
+ F000FF700FFFFF0FF000FFF000FFF0FFF000FF00000F7FFFF000FFFFFFFFFFFF
+ F000FFFFFFFFFFFFF000}
+ Transparent = True
+ Visible = False
+ end
+ object Image6: TImage
+ Left = 6
+ Top = 5
+ Width = 12
+ Height = 12
+ Picture.Data = {
+ 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
+ 00000D0000000100040000000000680000000000000000000000100000000000
+ 0000000000000000800000800000008080008000000080008000808000008080
+ 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
+ FF00FFFFFFFFFFFFF000FFFFFF7007FFF000FFFF80000FFFF000FFF8FF7000FF
+ F000FF0FFFF77F0FF000FF0FFFFF8F0FF000FF0FFFFFFF0FF000FF0F8FFFFF0F
+ F000FF0F77FFFF0FF000FFF0007FF8FFF000FFFF00008FFFF000FFF7007FFFFF
+ F000FFFFFFFFFFFFF000}
+ Transparent = True
+ Visible = False
+ end
+ object Image7: TImage
+ Left = 6
+ Top = 5
+ Width = 12
+ Height = 12
+ Picture.Data = {
+ 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
+ 00000D0000000100040000000000680000000000000000000000100000000000
+ 0000000000000000800000800000008080008000000080008000808000008080
+ 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
+ FF00FFFFFFF7FFFFF000FFFFF70FFFFFF000FFFF00000FFFF000FFF0000FF0FF
+ F000FF8FFF78FF0FF000FF7FFFFFFF0FF000FF0FFFFFFF0FF000FF0FFFFFFF7F
+ F000FF0FF78FFF8FF000FFF0FF0000FFF000FFFF00000FFFF000FFFFFF07FFFF
+ F000FFFFF7FFFFFFF000}
+ Transparent = True
+ Visible = False
+ end
+ object Image8: TImage
+ Left = 6
+ Top = 5
+ Width = 12
+ Height = 12
+ Picture.Data = {
+ 07544269746D6170DE000000424DDE0000000000000076000000280000000D00
+ 00000D0000000100040000000000680000000000000000000000100000000000
+ 0000000000000000800000800000008080008000000080008000808000008080
+ 8000C0C0C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
+ FF00FFFFFFFFFFFFF000FFFF708FFFFFF000FFF700000FFFF000FFF000FFF0FF
+ F000FF00F87FFF0FF000FF7FFFFFFF0FF000FFFFFFFFFFFFF000FF0FFFFFFF7F
+ F000FF0FFF78F00FF000FFF0FFF000FFF000FFFF000007FFF000FFFFFF807FFF
+ F000FFFFFFFFFFFFF000}
+ Transparent = True
+ Visible = False
+ end
+ end
+ end
+ object OpenDialog: TOpenDialog
+ Filter = 'Text File (*.txt)|*.txt|All Files (*.*)|*.*'
+ Title = 'Satation List File'
+ Left = 34
+ Top = 118
+ end
+ object SaveDialog: TSaveDialog
+ Left = 77
+ Top = 116
+ end
+ object Timer: TTimer
+ Enabled = False
+ Interval = 150
+ OnTimer = TimerTimer
+ Left = 34
+ Top = 164
+ end
+ object TrayIcon: TTrayIcon
+ Hint = 'RTKGET'
+ Icon.Data = {
+ 0000010001002020000001001800A80C00001600000028000000200000004000
+ 00000100180000000000800C000000000000000000000000000000000000CC48
+ 3FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC
+ 483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483F
+ CC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEDEDED00000000000000
+ 00007F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F000000000000000000
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000007F7F7FFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F
+ 000000363636FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000007F7F7FFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFF7F7F7F515151FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF0000007F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFF7F7F7F3D3D3DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF3C3C3CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFF7F7F7F3832327F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF3E3E3EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFF7F7F7F3E303000F2FF3330307F7F7FFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF3E3E3EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFF7F7F7F3D2F2F00F2FF00F2FF00F2FF3029297F7F7FF8F8F8FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF3E3E3EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFE8E8E80000000000007F
+ 7F7F3B2D2D00F2FF00F2FF00F2FF00F2FF00F2FF312A2A7F7F7F000000000000
+ FFFFFFFFFFFFFFFFFF3E3E3EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF000000000000FFFFFF7F7F7F3D
+ 2E2E00F2FF00F2FF00F2FF00F2FF00F2FF00F2FF00F2FF3532327F7F7FFFFFFF
+ 000000373737FFFFFF484848FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF0000003838387F7F7FFFFFFF7F7F7F3F393900
+ F2FF00F2FF00F2FF00F2FF00F2FF00F2FF00F2FF00F2FF00F2FF383F3F7F7F7F
+ FFFFFF7F7F7F000000414141FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF0000007F7F7FFFFFFFFFFFFF27252500000000
+ 000000000000F2FF00F2FF00F2FF00F2FF00F2FF0000000000000000001E1C1C
+ FFFFFFFFFFFF7F7F7F3B3B3BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFF8F7F7FF
+ FFFF00000000F2FF00F2FF00F2FF00F2FF00F2FF3B2B2BFFFFFFF7F5F5F8F8F8
+ EBEBEBFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFE9E9E9FFFFFFFFFFFFFF
+ FFFF00000000F2FF00F2FF00F2FF00F2FF00F2FF3B2E2EFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFF383838F6F6F6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFFFFFFFFFFFF
+ FFFF00000000F2FF00F2FF00F2FF00F2FF00F2FF3E3131FFFFFFFFFFFFFFFFFF
+ 363636000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F000000000000FF
+ FFFF00000000F2FF00F2FF00F2FF00F2FF00F2FF453838FFFFFF000000000000
+ 7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFC1C1C164696B8C9497ABB0B3CACED0ECEFF0FFFFFF7F
+ 7F7F00000000F2FF00F2FF00F2FF00F2FF00F2FF382E2E7F7F7FFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFF9EA4A65626176B240D5D2C19502F2444322D282728FF
+ FFFF000000000000000000000000000000000000000000FFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFF7D848A76380A92390090390091380098360048372BE9
+ EBEDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D9D9D
+ ADB3B5CDD1D3EBEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFF5E656E8F4F029C55009B55009B5500A45600353637FF
+ FFFFB4B7B9363D44562C1C5F2E18542F202F3339A5A8AAFFFFFFFFFFFF333739
+ 5E25134E2D2542322F3434373F494E727272FFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFF3A4251B47100AD6F00AC6F00AD6F00B47200454D5BCD
+ CFD239322D943B00943D00933E00943D00953C003D342FA8ABAEFFFFFF3B3634
+ 9430008E32008F31009230007E2E00656D72FFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFF343437CD8E00C08700C08700C28900B27F036F75843D
+ 424AA55C00A05C009E5D009E5D009E5D009F5C00A75B00393D43E9ECF04E3E2C
+ 9D50009650009650009A500078470E878D93FFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFE7E8ED52492EDFA500D29D00D29D00D7A000B28B13383F526F
+ 5B31BC7C00B37800B37800B37800B37800B37800BB7B007B5C2069707D6D5329
+ AE6B00A86900A86900AD6B00725018A6ABB1FFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFC9CBD36D5D25EEB600E2AF00E2AF00EBB400A38520373E5599
+ 771DD09600C99200C99200C99200C99200C99200CF9500A37D173A42578B6B21
+ C28500BC8200BC8200C48600675222C7CAD0FFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFA6A9B592781AFAC200F0BC00F0BC00FBC3008D782864697D88
+ 7026E7AF00DBA700DBA700DBA700DBA700DBA700E6AE0090782741485FAB8314
+ D39B00CE9800CE9800DA9F00574B2BE2E4E9FFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFF888C9BC09B0CFFD400FFCC00FFCA00FFD2006A5C2ADEE0E930
+ 3547FAC100EEB900EBB700EBB700EBB700EDB800FFC6003E3F43696F83CC9E03
+ E2AD00DFAB00DFAB00EFB6003C3A34FFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFF5F60654E4729756424947C1CB59411E9BA0048432EFFFFFFA6
+ A8AE49432EFFCF00FFCC00FEC800FFCB00FFD200544C2DA6A9B1464D65F7BE00
+ EDB900EDB900EDB900FEC40033394EFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFEBECF0CACCD5A7AAB7868A9A666A7E45464AFFFFFFFF
+ FFFF9C9EA62C2D338B751FBE9B0F9C81172C2F3B92949CFFFFFF383737FFD700
+ FDC700FAC500FAC500E9B80051576CFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFA7AAB5767A8AA2A5B1FDFEFFFFFFFFECECEE363226A58814
+ BD990EDDB105FFCE00DEB20173788AFFFFFFFFFFFFFFFFFFFFFFFFCC483FCC48
+ 3FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC
+ 483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483F
+ CC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483FCC483F0000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 000000000000000000000000000000000000000000000000000000000000}
+ OnDblClick = TrayIconDblClick
+ Left = 78
+ Top = 165
+ end
+end
diff --git a/app/rtkget/getmain.h b/app/winapp/rtkget/getmain.h
similarity index 81%
rename from app/rtkget/getmain.h
rename to app/winapp/rtkget/getmain.h
index 525c8bb8f..6a886067d 100644
--- a/app/rtkget/getmain.h
+++ b/app/winapp/rtkget/getmain.h
@@ -17,6 +17,7 @@
#else
#include
#endif
+#include "viewer.h"
#include "rtklib.h"
//---------------------------------------------------------------------------
@@ -24,33 +25,16 @@ class TMainForm : public TForm
{
__published:
TPanel *Panel2;
- TLabel *Label6;
TPanel *Panel3;
TPanel *Msg1;
TPanel *Msg3;
TButton *BtnDir;
TListBox *DataList;
TComboBox *DataType;
- TCheckBox *LocalDir;
TPanel *Msg2;
TLabel *LabelSta;
TOpenDialog *OpenDialog;
TListBox *StaList;
- TPanel *Panel1;
- TLabel *Label1;
- TEdit *TimeY1;
- TLabel *Label3;
- TEdit *TimeY2;
- TEdit *TimeH2;
- TEdit *TimeH1;
- TUpDown *TimeY1UD;
- TUpDown *TimeY2UD;
- TUpDown *TimeH2UD;
- TUpDown *TimeH1UD;
- TSpeedButton *BtnTime1;
- TSpeedButton *BtnTime2;
- TLabel *Label7;
- TComboBox *TimeInt;
TPanel *Panel4;
TLabel *Label4;
TEdit *FtpLogin;
@@ -58,15 +42,12 @@ class TMainForm : public TForm
TLabel *Label8;
TSaveDialog *SaveDialog;
TButton *BtnStas;
- TSpeedButton *BtnKeyword;
TCheckBox *HidePasswd;
TTimer *Timer;
TImage *Image1;
TImage *Image2;
TImage *Image3;
TImage *Image4;
- TCheckBox *UnZip;
- TCheckBox *SkipExist;
TTrayIcon *TrayIcon;
TComboBox *SubType;
TSpeedButton *BtnTray;
@@ -75,8 +56,6 @@ class TMainForm : public TForm
TImage *Image6;
TImage *Image7;
TImage *Image8;
- TEdit *Number;
- TLabel *Label2;
TButton *BtnAll;
TComboBox *Dir;
TLabel *MsgLabel2;
@@ -88,15 +67,50 @@ class TMainForm : public TForm
TButton *BtnTest;
TButton *BtnDownload;
TButton *BtnExit;
+ TPanel *Panel5;
+ TPanel *Panel6;
+ TPanel *Panel7;
+ TPanel *Panel8;
+ TPanel *Panel9;
+ TPanel *Panel10;
+ TPanel *Panel11;
+ TPanel *Panel12;
+ TLabel *Label1;
+ TEdit *TimeY1;
+ TUpDown *TimeY1UD;
+ TEdit *TimeH1;
+ TUpDown *TimeH1UD;
+ TSpeedButton *BtnTime1;
+ TPanel *Panel13;
+ TLabel *Label3;
+ TEdit *TimeY2;
+ TUpDown *TimeY2UD;
+ TEdit *TimeH2;
+ TUpDown *TimeH2UD;
+ TSpeedButton *BtnTime2;
+ TPanel *Panel14;
+ TLabel *Label7;
+ TComboBox *TimeInt;
+ TEdit *Number;
+ TLabel *Label2;
+ TPanel *Panel15;
+ TPanel *Panel1;
+ TCheckBox *SkipExist;
+ TCheckBox *UnZip;
+ TCheckBox *LocalDir;
+ TSpeedButton *BtnKeyword;
+ TPanel *Panel16;
+ TPanel *Panel17;
+ TPanel *Panel18;
void __fastcall TimeY1UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall TimeH1UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall TimeY2UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall TimeH2UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall BtnExitClick(TObject *Sender);
void __fastcall BtnOptsClick(TObject *Sender);
void __fastcall BtnLogClick(TObject *Sender);
@@ -122,8 +136,18 @@ class TMainForm : public TForm
void __fastcall FormCreate(TObject *Sender);
void __fastcall BtnAllClick(TObject *Sender);
void __fastcall DirChange(TObject *Sender);
+ void __fastcall Panel3Resize(TObject *Sender);
+ void __fastcall Panel2Resize(TObject *Sender);
+ void __fastcall Panel6Resize(TObject *Sender);
+ void __fastcall ComboCloseUp(TObject *Sender);
+ void __fastcall TimeY1KeyDown(TObject *Sender, WORD &Key, TShiftState Shift);
+ void __fastcall TimeH1KeyDown(TObject *Sender, WORD &Key, TShiftState Shift);
+ void __fastcall TimeH2KeyDown(TObject *Sender, WORD &Key, TShiftState Shift);
+ void __fastcall TimeY2KeyDown(TObject *Sender, WORD &Key, TShiftState Shift);
+ void __fastcall TimeIntChange(TObject *Sender);
private:
+ TTextViewer *LogViewer;
TStringList *Types;
TStringList *Urls;
TStringList *Locals;
diff --git a/app/rtkget/getoptdlg.cpp b/app/winapp/rtkget/getoptdlg.cpp
similarity index 100%
rename from app/rtkget/getoptdlg.cpp
rename to app/winapp/rtkget/getoptdlg.cpp
diff --git a/app/rtkget/getoptdlg.dfm b/app/winapp/rtkget/getoptdlg.dfm
similarity index 99%
rename from app/rtkget/getoptdlg.dfm
rename to app/winapp/rtkget/getoptdlg.dfm
index d2fff2a56..920423258 100644
--- a/app/rtkget/getoptdlg.dfm
+++ b/app/winapp/rtkget/getoptdlg.dfm
@@ -3,7 +3,7 @@ object DownOptDialog: TDownOptDialog
Top = 0
BorderStyle = bsDialog
Caption = 'Options'
- ClientHeight = 257
+ ClientHeight = 259
ClientWidth = 356
Color = clWhite
Font.Charset = DEFAULT_CHARSET
@@ -17,7 +17,7 @@ object DownOptDialog: TDownOptDialog
PixelsPerInch = 96
TextHeight = 13
object BtnOk: TButton
- Left = 193
+ Left = 192
Top = 227
Width = 79
Height = 29
diff --git a/app/rtkget/getoptdlg.h b/app/winapp/rtkget/getoptdlg.h
similarity index 100%
rename from app/rtkget/getoptdlg.h
rename to app/winapp/rtkget/getoptdlg.h
diff --git a/app/winapp/rtkget/install.bat b/app/winapp/rtkget/install.bat
new file mode 100644
index 000000000..7635fad03
--- /dev/null
+++ b/app/winapp/rtkget/install.bat
@@ -0,0 +1 @@
+copy Release_Build\rtkget.exe ..\..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkget/rtkget.cbproj b/app/winapp/rtkget/rtkget.cbproj
similarity index 82%
rename from app/rtkget/rtkget.cbproj
rename to app/winapp/rtkget/rtkget.cbproj
index e62bc9bc1..af3edc8d2 100644
--- a/app/rtkget/rtkget.cbproj
+++ b/app/winapp/rtkget/rtkget.cbproj
@@ -6,9 +6,9 @@
True
Release
VCL
- 18.6
- Win32
- 1
+ 18.8
+ Win64
+ 3
Application
@@ -74,24 +74,25 @@
None
CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
false
- ..\appcmn\;..\..\src\;$(IncludePath)
+ ..\appcmn\;..\..\..\src\;$(IncludePath)
None
1041
Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
true
- D:\proj\rtklib\app\downloader;$(BDS)\include;$(BDS)\include\vcl;..\..\src;$(TASM_IncludePath)
+ D:\proj\rtklib\app\downloader;$(BDS)\include;$(BDS)\include\vcl;..\..\..\src;$(TASM_IncludePath)
vclx.bpi;vcl.bpi;$(PackageImports)
Windows
- D:\proj\rtklib\app\downloader;$(BDS)\include;$(BDS)\include\vcl;..\..\src;$(BRCC_IncludePath)
- ..\..\src;D:\proj\rtklib\app\downloader;$(DCC_ObjPath)
- ..\..\src;D:\proj\rtklib\app\downloader;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\src;D:\proj\rtklib\app\downloader;$(ILINK_ObjectSearchPath)
+ D:\proj\rtklib\app\downloader;$(BDS)\include;$(BDS)\include\vcl;..\..\..\src;$(BRCC_IncludePath)
+ ..\..\..\src;D:\proj\rtklib\app\downloader;$(DCC_ObjPath)
+ ..\..\..\src;D:\proj\rtklib\app\downloader;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
+ ..\..\..\src;D:\proj\rtklib\app\downloader;$(ILINK_ObjectSearchPath)
rtl.lib;vcl.lib;vclx.lib;vclimg.lib
- ..\..\src;D:\proj\rtklib\app\downloader;$(DCC_ResourcePath)
+ ..\..\..\src;D:\proj\rtklib\app\downloader;$(DCC_ResourcePath)
true
- ..\..\src;D:\proj\rtklib\app\downloader;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\appcmn\;..\..\src\;$(BDS)\lib;$(ILINK_LibraryPath)
+ ..\..\..\src;D:\proj\rtklib\app\downloader;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
+ ..\appcmn\;..\..\..\src\;$(BDS)\lib;$(ILINK_LibraryPath)
JPHNE
+ WIN32;TRACE;$(BCC_Defines)
true
@@ -99,7 +100,6 @@
_RTLDLL;USEPACKAGES;WIN32;TRACE;$(TASM_Defines)
-tWM
_RTLDLL;USEPACKAGES;WIN32;TRACE;$(BRCC_Defines)
- WIN32;TRACE;$(BCC_Defines)
Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
$(BDSINCLUDE)\windows\vcl;$(IncludePath)
true
@@ -111,9 +111,14 @@
_RTLDLL;USEPACKAGES;WIN32;TRACE;$(TASM_Defines)
_RTLDLL;USEPACKAGES;WIN32;TRACE;$(BRCC_Defines)
- WIN32;TRACE;$(BCC_Defines)
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
-V
@@ -134,7 +139,6 @@
true
-tWM -k
_DEBUG;$(BCC_Defines);$(BCC_Defines)
- ..\icon\rtk8.ico
rtl.lib;vcl.lib;vclx.lib;vclimg.lib
$(BDS)\bin\default_app.manifest
true
@@ -142,6 +146,12 @@
_DEBUG;$(BCC_Defines);$(BCC_Defines)
+ true
+ PerMonitorV2
+ true
+ 1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
-$O+
@@ -163,6 +173,13 @@
NDEBUG;$(BCC_Defines);$(BCC_Defines)
+ true
+ rtl.lib;vcl.lib;vclx.lib;vclimg.lib
+ true
+ 1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
+ PerMonitorV2
@@ -216,10 +233,10 @@
staoptdlg.h
11
-
+
5
-
+
3
1
@@ -306,13 +323,13 @@
rtkget.cpp
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
+ Embarcadero C++Builder Office 2000 サーバー パッケージ
+ Embarcadero C++Builder Office XP サーバー パッケージ
True
- False
+ True
12
diff --git a/app/winapp/rtkget/rtkget.cbproj.local b/app/winapp/rtkget/rtkget.cbproj.local
new file mode 100644
index 000000000..ac6d8cbd7
--- /dev/null
+++ b/app/winapp/rtkget/rtkget.cbproj.local
@@ -0,0 +1,3 @@
+
+
+
diff --git a/app/rtkget/rtkget.cpp b/app/winapp/rtkget/rtkget.cpp
similarity index 96%
rename from app/rtkget/rtkget.cpp
rename to app/winapp/rtkget/rtkget.cpp
index 51fcfd213..5ee4fc217 100644
--- a/app/rtkget/rtkget.cpp
+++ b/app/winapp/rtkget/rtkget.cpp
@@ -29,7 +29,7 @@ USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
USEFORM("..\appcmn\viewer.cpp", TextViewer);
USEFORM("staoptdlg.cpp", StaListDialog);
//---------------------------------------------------------------------------
-WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
+int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
diff --git a/app/winapp/rtkget/rtkget.res b/app/winapp/rtkget/rtkget.res
new file mode 100644
index 000000000..96980d6e0
Binary files /dev/null and b/app/winapp/rtkget/rtkget.res differ
diff --git a/app/rtkget/staoptdlg.cpp b/app/winapp/rtkget/staoptdlg.cpp
similarity index 100%
rename from app/rtkget/staoptdlg.cpp
rename to app/winapp/rtkget/staoptdlg.cpp
diff --git a/app/rtkget/staoptdlg.dfm b/app/winapp/rtkget/staoptdlg.dfm
similarity index 100%
rename from app/rtkget/staoptdlg.dfm
rename to app/winapp/rtkget/staoptdlg.dfm
diff --git a/app/rtkget/staoptdlg.h b/app/winapp/rtkget/staoptdlg.h
similarity index 100%
rename from app/rtkget/staoptdlg.h
rename to app/winapp/rtkget/staoptdlg.h
diff --git a/app/rtklaunch/clean.bat b/app/winapp/rtklaunch/clean.bat
similarity index 100%
rename from app/rtklaunch/clean.bat
rename to app/winapp/rtklaunch/clean.bat
diff --git a/app/winapp/rtklaunch/install.bat b/app/winapp/rtklaunch/install.bat
new file mode 100644
index 000000000..47c79d290
--- /dev/null
+++ b/app/winapp/rtklaunch/install.bat
@@ -0,0 +1 @@
+copy Release\rtklaunch.exe ..\..\..\..\RTKLIB_bin\bin
diff --git a/app/rtklaunch/launchmain.cpp b/app/winapp/rtklaunch/launchmain.cpp
similarity index 81%
rename from app/rtklaunch/launchmain.cpp
rename to app/winapp/rtklaunch/launchmain.cpp
index 3d49e85eb..9619914a9 100644
--- a/app/rtklaunch/launchmain.cpp
+++ b/app/winapp/rtklaunch/launchmain.cpp
@@ -1,18 +1,22 @@
//---------------------------------------------------------------------------
// rtklaunch : rtklib ap launcher
//
-// Copyright (C) 2013-2016 by T.TAKASU, All rights reserved.
+// Copyright (C) 2013-2020 by T.TAKASU, All rights reserved.
//
-// options : rtklib launcher [-t title][-tray][-mkl|-win64]
+// options : rtklib launcher [-t title][-tray][-trace level]
//
-// -t title window title
-// -tray start as task tray icon
-// -mkl use rtkpost_mkl and rtknavi_mkl
-// -win64 use rtkpost_win64 and rtknavi_win64
+// -t title window title
+// -tray start as task tray icon
+// -trace level enable debug trace
//
// version : $Revision:$ $Date:$
// history : 2013/01/10 1.1 new
// 2016/09/03 1.2 add option -win64
+// 2020/11/30 1.3 force initial window in main-screen
+// delete RTKVIDEO button
+// delete Options button
+// delete commandline option -win64, -mkl
+// add commandline option -trace
//---------------------------------------------------------------------------
#include
#include
@@ -28,8 +32,9 @@
TMainForm *MainForm;
#define BTN_SIZE 42
-#define BTN_COUNT 8
+#define BTN_COUNT 7
#define MAX(x,y) ((x)>(y)?(x):(y))
+#define TRACE_FILE "rtklaunch.trace"
//---------------------------------------------------------------------------
__fastcall TMainForm::TMainForm(TComponent* Owner)
@@ -44,6 +49,7 @@ __fastcall TMainForm::TMainForm(TComponent* Owner)
IniFile=file;
Option=0;
Minimize=0;
+ Trace=0;
TIniFile *ini=new TIniFile(IniFile);
Left =ini->ReadInteger("pos","left", 0);
@@ -51,9 +57,17 @@ __fastcall TMainForm::TMainForm(TComponent* Owner)
Width =ini->ReadInteger("pos","width", 310);
Height=ini->ReadInteger("pos","height", 79);
Option=ini->ReadInteger("pos","option", 0);
- Minimize=ini->ReadInteger("pos","minimize",1);
+ Minimize=ini->ReadInteger("pos","minimize",0);
delete ini;
+ // move window inside main-screen
+ TRect rect;
+ ::SystemParametersInfo(SPI_GETWORKAREA,0,&rect,0);
+ if (Top<0) Top=0;
+ if (Top+Height>rect.Height()) Top=rect.Height()-Height;
+ if (Left<0) Left=0;
+ if (Left+Width>rect.Width()) Left=rect.Width()-Width;
+
Caption="RTKLIB v." VER_RTKLIB " " PATCH_LEVEL;
BtnRtklib->Hint="RTKLIB v." VER_RTKLIB " " PATCH_LEVEL;
TrayIcon->Hint=Caption;
@@ -68,8 +82,11 @@ __fastcall TMainForm::TMainForm(TComponent* Owner)
if (!strcmp(argv[i],"-t")&&i+1=1) {
+ traceopen(TRACE_FILE);
+ tracelevel(Trace);
}
UpdatePanel();
@@ -77,6 +94,8 @@ __fastcall TMainForm::TMainForm(TComponent* Owner)
Application->ShowMainForm=false;
TrayIcon->Visible=true;
}
+ trace(2,"screen: width=%d height=%d\n",rect.Width(),rect.Height());
+ trace(2,"window: left=%d top=%d width=%d height=%d\n",Left,Top,Width,Height);
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
@@ -89,6 +108,10 @@ void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
ini->WriteInteger("pos","option",Option);
ini->WriteInteger("pos","minimize",Minimize);
delete ini;
+
+ if (Trace>=1) {
+ traceclose();
+ }
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::BtnPlotClick(TObject *Sender)
@@ -116,12 +139,6 @@ void __fastcall TMainForm::BtnPostClick(TObject *Sender)
{
UnicodeString cmd1="rtkpost",cmd2="..\\..\\..\\bin\\rtkpost",opts="";
- if (Option==1) {
- cmd1=cmd1+"_mkl"; cmd2=cmd2+"_mkl";
- }
- else if (Option==2) {
- cmd1=cmd1+"_win64"; cmd2=cmd2+"_win64";
- }
if (!ExecCmd(cmd1+opts)) ExecCmd(cmd2+opts);
}
//---------------------------------------------------------------------------
@@ -136,12 +153,6 @@ void __fastcall TMainForm::BtnNaviClick(TObject *Sender)
{
UnicodeString cmd1="rtknavi",cmd2="..\\..\\..\\bin\\rtknavi",opts="";
- if (Option==1) {
- cmd1=cmd1+"_mkl"; cmd2=cmd2+"_mkl";
- }
- else if (Option==2) {
- cmd1=cmd1+"_win64"; cmd2=cmd2+"_win64";
- }
if (!ExecCmd(cmd1+opts)) ExecCmd(cmd2+opts);
}
//---------------------------------------------------------------------------
@@ -152,13 +163,6 @@ void __fastcall TMainForm::BtnGetClick(TObject *Sender)
if (!ExecCmd(cmd1+opts)) ExecCmd(cmd2+opts);
}
//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnVideoClick(TObject *Sender)
-{
- UnicodeString cmd1="rtkvideo",cmd2="..\\..\\..\\bin\\rtkvideo",opts="";
-
- if (!ExecCmd(cmd1+opts)) ExecCmd(cmd2+opts);
-}
-//---------------------------------------------------------------------------
int __fastcall TMainForm::ExecCmd(AnsiString cmd)
{
PROCESS_INFORMATION info;
@@ -226,11 +230,6 @@ void __fastcall TMainForm::MenuGetClick(TObject *Sender)
BtnGetClick(Sender);
}
//---------------------------------------------------------------------------
-void __fastcall TMainForm::MenuVideoClick(TObject *Sender)
-{
- BtnVideoClick(Sender);
-}
-//---------------------------------------------------------------------------
void __fastcall TMainForm::MenuExitClick(TObject *Sender)
{
Close();
@@ -239,27 +238,28 @@ void __fastcall TMainForm::MenuExitClick(TObject *Sender)
void __fastcall TMainForm::Panel1Resize(TObject *Sender)
{
TSpeedButton *btn[]={
- BtnPlot,BtnConv,BtnStr,BtnPost,BtnNtrip,BtnNavi,BtnGet,BtnVideo
+ BtnPlot,BtnConv,BtnStr,BtnPost,BtnNtrip,BtnNavi,BtnGet
};
int i,j,k,n,m,h;
-
+ int btn_size=BtnPlot->Width;
+
if (Minimize) return;
- n=MAX(1,Panel1->ClientWidth/BTN_SIZE);
- m=(BTN_COUNT-1)/n+1;
- h=BTN_SIZE*m+2;
+ n=MAX(1,Panel1->ClientWidth/btn_size);
+ m=(BTN_COUNT-1)/n+1;
+ h=btn_size*m+2;
Panel1->Constraints->MinHeight=h;
Panel1->Constraints->MaxHeight=h;
+ Panel1->Constraints->MinWidth=btn_size+2;
+ Panel1->Constraints->MaxWidth=btn_size*BTN_COUNT+2;
for (i=k=0;kTop =BTN_SIZE*i+1;
- btn[k]->Left=BTN_SIZE*j+1;
- btn[k]->Height=BTN_SIZE;
- btn[k]->Width =BTN_SIZE;
+ btn[k]->Top =btn_size*i+1;
+ btn[k]->Left=btn_size*j+1;
+ btn[k]->Height=btn_size;
+ btn[k]->Width =btn_size;
}
BtnTray->Left=Panel1->ClientWidth -BtnTray->Width;
BtnTray->Top =Panel1->ClientHeight-BtnTray->Height;
- BtnOption->Left=Panel1->ClientWidth -BtnOption->Width;
- BtnOption->Top =0;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::UpdatePanel(void)
@@ -278,12 +278,6 @@ void __fastcall TMainForm::UpdatePanel(void)
}
}
//---------------------------------------------------------------------------
-void __fastcall TMainForm::BtnOptionClick(TObject *Sender)
-{
- if (LaunchOptDialog->ShowModal()!=mrOk) return;
- UpdatePanel();
-}
-//---------------------------------------------------------------------------
void __fastcall TMainForm::BtnRtklibMouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{
diff --git a/app/rtklaunch/launchmain.dfm b/app/winapp/rtklaunch/launchmain.dfm
similarity index 90%
rename from app/rtklaunch/launchmain.dfm
rename to app/winapp/rtklaunch/launchmain.dfm
index dc61a0c4b..91203930c 100644
--- a/app/rtklaunch/launchmain.dfm
+++ b/app/winapp/rtklaunch/launchmain.dfm
@@ -806,117 +806,6 @@ object MainForm: TMainForm
ShowHint = True
OnClick = BtnStrClick
end
- object BtnVideo: TSpeedButton
- Left = 84
- Top = 44
- Width = 42
- Height = 42
- Hint = 'RTKVIDEO'
- Flat = True
- Glyph.Data = {
- 360C0000424D360C000000000000360000002800000020000000200000000100
- 180000000000000C000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4C2
- B2FFFFFFFFFFFFFFFFFFF2ECE6F3EFEBFFFFFFFFFFFFFFFFFFDFD2C6FFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4600
- 00EAE3D9FFFFFFFFFFFF956C5CB5977FFFFFFFFFFFFFFFFFFF370000EEE7E1FF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2EE
- E6520D00FFFFFFFFFFFFAF9073BBA08BFFFFFFFFFFFF895B38BCA18DFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF8A5D39B79C8CFFFFFFAE8F74B89B85FFFFFFF0EBE4520D00FFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFF3F0000FFFFFFB1917AB59880FFFFFF5A1900E9E1D9FFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFC8B3A088593AC7AF9DBBA089C9B4A9855531FFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFF723911AA896EB79B82571400FFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF753F184F09
- 0058170056140077421771390D6D330E7F4D205715005716005917004C0400F0
- EBE4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF5917009D7666FFFFFFFFFFFFFFFFFFFFFFFFC4AD998F6340FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3D8CC7B
- 4725FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF642900C3AD974C050079432EEAE2D7FFFFFFC6AF9CAC8B70FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFE9E57D
- 4A20FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF591800FFFFFFFFFFFFD5C5B564260678431E733C15B2947BFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECE5E189
- 5B36CDB9A7723A19FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF5A1900FFFFFFFFFFFFFFFFFFFFFFFF7E4A22C4AB97AA896EFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1EBE758
- 15009B735E6F3504FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF5A1900FFFFFFFFFFFFFFFFFFF4F0EC83522BD2C1B2A9876CFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECE5E085
- 5630FFFFFF5F1F00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF5A1900FFFFFFFFFFFFFFFFFFEEE7E1662A009D7657AE8D75FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECE5DF82
- 522AFFFFFF5F1F00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF591900FFFFFFE1D5C870391C5F2000C3AC97966C4BB5977DFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F7F65A
- 19008B5C476E3506FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF6124006629086E3418DCCFC1FFFFFFFFFFFFDED1C5703710FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB69A8094
- 6A49DACCBF7B451DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFA57E5DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA88796324
- 006B31016A30016A30016A30016A30016A30016A30016A3001692F00713815FF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFADB1B6313B3F465D646A7E869CAAB0C2C8CBCECFD0FFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF8992946C2514851D006F200259200A4420151E1917BDBEBEFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF636F78813C05914100924000953E00A43C003D2F23F0F2F4FFFF
- FFD3D4D484939A546B75768890C6C7C9FFFFFFFFFFFFFFFFFF726F6F64798099
- A8ADB5BDBFCDCFCFEDEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF3B4657A159009F5A009E5A009D5A00AE5F00232931FFFFFF6670
- 782826286424067C21006B2303332623445460FFFFFFFFFFFF4250557116005B
- 1D0A461F173B292637302F161817FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF1E283BC67C00B07400B07400B07400BD7900424D6190969C4A31
- 1EA44100964400934500954400A041006B3A123F4C5AFFFFFF222E389B380091
- 38009437009636009F34002F3C47FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFEFFFF312F28D89800C38C00C48C00C68E00BE89034D586F35393FBC68
- 00A26300A36300A36300A36300A26300B667003F3223D5D7DB333331A8590099
- 55009A55009B5500965300505B6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFD2D4DA554823E8AD00D7A100D7A100DCA400B78E16313B56836427BF82
- 00B87E00B87E00B87E00B87E00B87E00BC80009A6E16575F70594B34B87300AB
- 6E00AC6F00AF700090610C757C89FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFA9ABB580691DF2B900E6B100E6B100EFB800A38725323A539E7C21D69B
- 00CE9700CF9700CF9700CF9700CF9700D29900BE8F0B2F3A557C642DCA8D00BF
- 8800C08800C68B0087661A9094A0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF898D9DA78618F9C200F1BC00F1BD00FFC800806D257A7F907A6727F2B7
- 00E0AB00E1AC00E1AC00E1AC00E1AC00E8B000AD8D252E36509D7C24DAA100D3
- 9D00D39D00DFA300725D1DB2B5BDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF5F6581EDCA00FFF400FFE700FFD900FFDE00524A25FEFFFF010C32FFD8
- 01F2BB00EDB900EDBA00EDB900EEB800FFE3001A20346B7289C0960EE7B200E2
- AF00E2AE00F7BD00534924DADCE1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF5C5B58020D3A00001826211663511593921C262320FFFFFFD8D8D90000
- 1BFBDA07FFEC00FFD600FFE400FFED00222022B4B5BB515A79EAB500F0BC00EE
- BC00EEBB00FFCF002B2B27FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFCFDFFC2C4CD87899A717274FFFFFFFFFFFFE1E1
- E0000A3F1E1A136B5914382E1300002EB8B9BBFFFFFF1B2247FFFD00FFD700FF
- CB00FFC600FFDF00121A41FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFF8F9FCBABCC5E6E8EDFFFFFFFFFFFFFFFFFF000000281F1561511771
- 8029ACA71EE9C200343A5AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7C9D099
- 98A37879925F669092928EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF}
- Layout = blGlyphTop
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnVideoClick
- end
object BtnTray: TPanel
Left = 0
Top = 0
@@ -933,22 +822,6 @@ object MainForm: TMainForm
TabOrder = 0
OnClick = BtnTrayClick
end
- object BtnOption: TPanel
- Left = 2
- Top = 2
- Width = 12
- Height = 12
- Hint = 'Task Tray'
- BevelInner = bvRaised
- BevelOuter = bvLowered
- Color = clBtnHighlight
- ParentBackground = False
- ParentShowHint = False
- ShowCaption = False
- ShowHint = True
- TabOrder = 1
- OnClick = BtnOptionClick
- end
end
object Panel2: TPanel
Left = 0
@@ -1496,12 +1369,12 @@ object MainForm: TMainForm
00000000001FF80000000000003FFE0001000000003FFFFFFFC00000003F}
PopupMenu = PopupMenu
OnDblClick = TrayIconDblClick
- Left = 2
- Top = 42
+ Left = 140
+ Top = 48
end
object PopupMenu: TPopupMenu
- Left = 33
- Top = 43
+ Left = 107
+ Top = 48
object MenuExpand: TMenuItem
Caption = 'Expand'
OnClick = MenuExpandClick
@@ -2230,109 +2103,6 @@ object MainForm: TMainForm
Caption = '&NTRIP Browser'
OnClick = MenuNtripClick
end
- object MenuVideo: TMenuItem
- Bitmap.Data = {
- 360C0000424D360C000000000000360000002800000020000000200000000100
- 180000000000000C000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4C2
- B2FFFFFFFFFFFFFFFFFFF2ECE6F3EFEBFFFFFFFFFFFFFFFFFFDFD2C6FFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4600
- 00EAE3D9FFFFFFFFFFFF956C5CB5977FFFFFFFFFFFFFFFFFFF370000EEE7E1FF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2EE
- E6520D00FFFFFFFFFFFFAF9073BBA08BFFFFFFFFFFFF895B38BCA18DFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF8A5D39B79C8CFFFFFFAE8F74B89B85FFFFFFF0EBE4520D00FFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFF3F0000FFFFFFB1917AB59880FFFFFF5A1900E9E1D9FFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFC8B3A088593AC7AF9DBBA089C9B4A9855531FFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFF723911AA896EB79B82571400FFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF753F184F09
- 0058170056140077421771390D6D330E7F4D205715005716005917004C0400F0
- EBE4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF5917009D7666FFFFFFFFFFFFFFFFFFFFFFFFC4AD998F6340FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3D8CC7B
- 4725FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF642900C3AD974C050079432EEAE2D7FFFFFFC6AF9CAC8B70FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFE9E57D
- 4A20FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF591800FFFFFFFFFFFFD5C5B564260678431E733C15B2947BFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECE5E189
- 5B36CDB9A7723A19FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF5A1900FFFFFFFFFFFFFFFFFFFFFFFF7E4A22C4AB97AA896EFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1EBE758
- 15009B735E6F3504FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF5A1900FFFFFFFFFFFFFFFFFFF4F0EC83522BD2C1B2A9876CFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECE5E085
- 5630FFFFFF5F1F00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF5A1900FFFFFFFFFFFFFFFFFFEEE7E1662A009D7657AE8D75FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECE5DF82
- 522AFFFFFF5F1F00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF591900FFFFFFE1D5C870391C5F2000C3AC97966C4BB5977DFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F7F65A
- 19008B5C476E3506FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF6124006629086E3418DCCFC1FFFFFFFFFFFFDED1C5703710FFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB69A8094
- 6A49DACCBF7B451DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFA57E5DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA88796324
- 006B31016A30016A30016A30016A30016A30016A30016A3001692F00713815FF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFADB1B6313B3F465D646A7E869CAAB0C2C8CBCECFD0FFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF8992946C2514851D006F200259200A4420151E1917BDBEBEFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF636F78813C05914100924000953E00A43C003D2F23F0F2F4FFFF
- FFD3D4D484939A546B75768890C6C7C9FFFFFFFFFFFFFFFFFF726F6F64798099
- A8ADB5BDBFCDCFCFEDEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF3B4657A159009F5A009E5A009D5A00AE5F00232931FFFFFF6670
- 782826286424067C21006B2303332623445460FFFFFFFFFFFF4250557116005B
- 1D0A461F173B292637302F161817FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFF1E283BC67C00B07400B07400B07400BD7900424D6190969C4A31
- 1EA44100964400934500954400A041006B3A123F4C5AFFFFFF222E389B380091
- 38009437009636009F34002F3C47FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFEFFFF312F28D89800C38C00C48C00C68E00BE89034D586F35393FBC68
- 00A26300A36300A36300A36300A26300B667003F3223D5D7DB333331A8590099
- 55009A55009B5500965300505B6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFD2D4DA554823E8AD00D7A100D7A100DCA400B78E16313B56836427BF82
- 00B87E00B87E00B87E00B87E00B87E00BC80009A6E16575F70594B34B87300AB
- 6E00AC6F00AF700090610C757C89FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFA9ABB580691DF2B900E6B100E6B100EFB800A38725323A539E7C21D69B
- 00CE9700CF9700CF9700CF9700CF9700D29900BE8F0B2F3A557C642DCA8D00BF
- 8800C08800C68B0087661A9094A0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF898D9DA78618F9C200F1BC00F1BD00FFC800806D257A7F907A6727F2B7
- 00E0AB00E1AC00E1AC00E1AC00E1AC00E8B000AD8D252E36509D7C24DAA100D3
- 9D00D39D00DFA300725D1DB2B5BDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF5F6581EDCA00FFF400FFE700FFD900FFDE00524A25FEFFFF010C32FFD8
- 01F2BB00EDB900EDBA00EDB900EEB800FFE3001A20346B7289C0960EE7B200E2
- AF00E2AE00F7BD00534924DADCE1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF5C5B58020D3A00001826211663511593921C262320FFFFFFD8D8D90000
- 1BFBDA07FFEC00FFD600FFE400FFED00222022B4B5BB515A79EAB500F0BC00EE
- BC00EEBB00FFCF002B2B27FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFCFDFFC2C4CD87899A717274FFFFFFFFFFFFE1E1
- E0000A3F1E1A136B5914382E1300002EB8B9BBFFFFFF1B2247FFFD00FFD700FF
- CB00FFC600FFDF00121A41FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFF8F9FCBABCC5E6E8EDFFFFFFFFFFFFFFFFFF000000281F1561511771
- 8029ACA71EE9C200343A5AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7C9D099
- 98A37879925F669092928EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF}
- Caption = 'RTK&VIDEO'
- OnClick = MenuVideoClick
- end
object N1: TMenuItem
Caption = '-'
end
diff --git a/app/rtklaunch/launchmain.h b/app/winapp/rtklaunch/launchmain.h
similarity index 92%
rename from app/rtklaunch/launchmain.h
rename to app/winapp/rtklaunch/launchmain.h
index 2aee023f2..777809589 100644
--- a/app/rtklaunch/launchmain.h
+++ b/app/winapp/rtklaunch/launchmain.h
@@ -36,12 +36,9 @@ class TMainForm : public TForm
TMenuItem *MenuExpand;
TMenuItem *N2;
TPanel *Panel1;
- TPanel *BtnOption;
TSpeedButton *BtnRtklib;
TPanel *Panel2;
TPanel *BtnExit;
- TSpeedButton *BtnVideo;
- TMenuItem *MenuVideo;
void __fastcall BtnPlotClick(TObject *Sender);
void __fastcall BtnConvClick(TObject *Sender);
@@ -63,16 +60,13 @@ class TMainForm : public TForm
void __fastcall MenuExitClick(TObject *Sender);
void __fastcall MenuExpandClick(TObject *Sender);
void __fastcall Panel1Resize(TObject *Sender);
- void __fastcall BtnOptionClick(TObject *Sender);
void __fastcall BtnRtklibMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift,
int X, int Y);
void __fastcall BtnExitClick(TObject *Sender);
- void __fastcall BtnVideoClick(TObject *Sender);
- void __fastcall MenuVideoClick(TObject *Sender);
private:
AnsiString IniFile;
- int Tray;
+ int Tray,Trace;
void __fastcall UpdatePanel(void);
int __fastcall ExecCmd(AnsiString cmd);
diff --git a/app/rtklaunch/launchoptdlg.cpp b/app/winapp/rtklaunch/launchoptdlg.cpp
similarity index 100%
rename from app/rtklaunch/launchoptdlg.cpp
rename to app/winapp/rtklaunch/launchoptdlg.cpp
diff --git a/app/rtklaunch/launchoptdlg.dfm b/app/winapp/rtklaunch/launchoptdlg.dfm
similarity index 100%
rename from app/rtklaunch/launchoptdlg.dfm
rename to app/winapp/rtklaunch/launchoptdlg.dfm
diff --git a/app/rtklaunch/launchoptdlg.h b/app/winapp/rtklaunch/launchoptdlg.h
similarity index 90%
rename from app/rtklaunch/launchoptdlg.h
rename to app/winapp/rtklaunch/launchoptdlg.h
index 40b3f0062..daaeb560b 100644
--- a/app/rtklaunch/launchoptdlg.h
+++ b/app/winapp/rtklaunch/launchoptdlg.h
@@ -10,7 +10,7 @@
//---------------------------------------------------------------------------
class TLaunchOptDialog : public TForm
{
-__published: // IDE ŊǗR|[lg
+__published:
TRadioButton *OptMkl;
TRadioButton *OptWin64;
TButton *BtnCancel;
@@ -19,8 +19,8 @@ class TLaunchOptDialog : public TForm
TCheckBox *Minimize;
void __fastcall FormShow(TObject *Sender);
void __fastcall BtnOkClick(TObject *Sender);
-private: // [U[錾
-public: // [U[錾
+private:
+public:
__fastcall TLaunchOptDialog(TComponent* Owner);
};
//---------------------------------------------------------------------------
diff --git a/app/srctblbrows/srctblbrows.cbproj b/app/winapp/rtklaunch/rtklaunch.cbproj
similarity index 63%
rename from app/srctblbrows/srctblbrows.cbproj
rename to app/winapp/rtklaunch/rtklaunch.cbproj
index 03c7b901d..feb2acc14 100644
--- a/app/srctblbrows/srctblbrows.cbproj
+++ b/app/winapp/rtklaunch/rtklaunch.cbproj
@@ -1,14 +1,13 @@
- {FB551CE1-32A2-460B-9B61-6E5E1D41C8E6}
- CppVCLApplication
- srctblbrows.cpp
+ {B9D0F977-D158-4447-9818-D26CDBC2CE25}
+ 18.8
+ VCL
+ rtklaunch.cpp
True
Release
- VCL
- 18.6
- Win32
- 1
+ Win64
+ 3
Application
@@ -59,220 +58,125 @@
true
+ true
false
- false
false
- false
+ false
false
- srctblbrows
false
false
- ..\..\src\rcv\;..\appcmn\;..\..\src\;$(ILINK_LibraryPath)
- ..\..\src\rcv\;..\appcmn\;..\..\src\;$(IncludePath)
- false
- true
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
+ false
+ rtklaunch
+ vclx.bpi;vcl.bpi;$(PackageImports)
+ ..\..\..\src\;$(ILINK_LibraryPath)
+ ..\..\..\src\;$(IncludePath)
false
- None
- Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- false
- srctblbrows_Icon.ico
- 1041
- false
None
- ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(DCC_ObjPath)
- vclx.bpi;vcl.bpi;$(PackageImports)
- Windows
- ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
- false
- true
- ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(ILINK_ObjectSearchPath)
- false
- rtl.lib;vcl.lib;vclie.lib;bcbie.lib
- ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(DCC_ResourcePath)
+ true
+ ..\..\..\src;$(BCC_IncludePath)
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
+ 1033
+ None
+ <_TCHARMapping>char
+ CppVCLApplication
+ true
+ System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)
+ rtl.lib;vcl.lib
+ ..\icon\rtk5.ico
JPHNE
+ .\$(Config)
+ .\$(Config)
+ false
+ true
+ true
+ $(BDSLIB)\$(PLATFORM)\release\$(LANGDIR);$(ILINK_TranslatedLibraryPath)
+ WIN32;TRACE;$(BCC_Defines)
true
- exe
- _RTLDLL;WIN32;TRACE;$(TASM_Defines)
- -tWM
- _RTLDLL;WIN32;TRACE;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(BCC_Defines)
Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
$(BDSINCLUDE)\windows\vcl;$(IncludePath)
- true
- 1033
$(BDS)\bin\default_app.manifest
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
- _RTLDLL;WIN32;TRACE;$(TASM_Defines)
- _RTLDLL;WIN32;TRACE;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(BCC_Defines)
+ bindcompvcl;vcltouch;bcbsmp;vcldbx;vclribbon;vcl;vclib;dsnapcon;vclx;ibxpress;vclimg;bdertl;vclactnband;vcldb;bcbie;vcldsnap;$(PackageImports)
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
- -V
- DEBUG;$(DCC_Define);$(DCC_Define)
- Debug_Build
- true
- true
+ false
true
- true
- false
- Full
+ false
true
- $(BDS)\lib\debug;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
- true
+ false
+ None
+ DEBUG
+ true
true
+ true
+ true
+ Full
+ true
+ $(BDSLIB)\$(PLATFORM)\debug;$(ILINK_LibraryPath)
+ $(BDSLIB)\$(PLATFORM)\debug\$(LANGDIR);$(ILINK_TranslatedLibraryPath)
- true
- -tWM -k
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
+ _DEBUG;$(Defines)
+ -tray
$(BDS)\bin\default_app.manifest
- mgex.igs-ip.net:2101
- true
- rtl.lib;vcl.lib;vclie.lib;bcbie.lib
- 1033
+ rtl.lib;vcl.lib
+ true
+ Debug
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
+ _DEBUG;$(Defines)
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
+ rtl.bpi;vcl.bpi
+ true
- -$O+
- Release_Build
None
- true
- $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
true
- -tWM -r
- NDEBUG;$(BCC_Defines);$(BCC_Defines)
- mgex.igs-ip.net:2101
- rtl.lib;vcl.lib;vclie.lib;bcbie.lib
- true
- 1033
+ NDEBUG;$(Defines)
+ ..\icon\rtk9.ico
+ rtl.lib;vcl.lib
$(BDS)\bin\default_app.manifest
Debug
- NDEBUG;$(BCC_Defines);$(BCC_Defines)
+ NDEBUG;$(Defines)
+ true
+ rtl.lib;vcl.lib
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
+ ..\icon\rtk9.ico
+ D:\share
+ PerMonitorV2
-
- 5
-
- ..\appcmn\aboutdlg.h
- 16
-
-
-
- ..\appcmn\gmview.h
- 19
-
-
- 9
+
- browsmain.h
- 2
-
-
- -1
- 0
-
-
- -1
- 1
-
-
-
- staoptdlg.h
- 20
-
-
- 7
- 14
-
-
- 18
-
-
- 9
- 2
-
-
- 21
-
-
- 24
-
-
- 6
- 13
-
-
- 4
- 15
-
-
- 5
- 16
-
-
- 12
+ dfm
+ launchmain.h
1
-
- 17
-
-
- 22
-
-
- 23
-
-
- 8
-
-
- 11
+
0
-
- 25
-
-
- 3
- 10
-
-
- 3
- 10
-
-
- 7
- 14
-
-
- 6
- 13
-
-
- 4
- 15
+
+ 2
-
-
-
-
+
Cfg_2
Base
@@ -285,7 +189,6 @@
Base
-
CPlusPlusBuilder.Personality.12
CppVCLApplication
@@ -318,366 +221,324 @@
1.0.0.0
-
-
-
-
-
-
- False
-
-
-
-
-
-
- False
-
- False
-
- True
- False
-
-
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
-
-
- srctblbrows.cpp
-
False
True
True
False
+
+ rtklaunch.cpp
+
+
+ Embarcadero C++Builder Office 2000 サーバー パッケージ
+ Embarcadero C++Builder Office XP サーバー パッケージ
+
True
- False
+ True
-
-
- .\
- true
-
-
true
-
-
+
+
true
-
-
+
+
true
-
+
- srctblbrows.exe
true
-
+
- .\
true
-
-
+
+
true
-
+
- .\
true
-
-
- .\
+
+
true
-
-
- .\
+
+
true
-
-
- .\
+
+
+ rtklaunch.exe
true
-
-
+
+
.\
true
-
-
- .\
+
+
true
-
+
- .\
true
-
-
- .\
+
+
true
-
-
- .\
- true
+
+
+ 1
-
-
-
- .\
- true
+
+ Contents\MacOS
+ 1
-
-
- .\
- true
+ 0
-
-
-
- true
+
+
+
+ classes
+ 1
-
-
-
- true
+
+ classes
+ 1
-
-
-
- true
+
+
+
+ res\xml
+ 1
-
-
-
- true
+
+ res\xml
+ 1
-
-
-
- true
+
+
+
+ library\lib\armeabi-v7a
+ 1
-
-
-
- .\
- true
+
+
+
+ library\lib\armeabi
+ 1
-
-
-
- true
+
+ library\lib\armeabi
+ 1
-
-
-
- .\
- true
+
+
+
+ library\lib\armeabi-v7a
+ 1
-
-
-
- .\
- true
+
+
+
+ library\lib\mips
+ 1
-
-
-
- .\
- true
+
+ library\lib\mips
+ 1
-
-
-
- .\
- true
+
+
+
+ library\lib\armeabi-v7a
+ 1
-
-
-
- .\
- true
+
+ library\lib\arm64-v8a
+ 1
-
-
-
- true
+
+
+
+ library\lib\armeabi-v7a
+ 1
-
-
-
- true
+
+
+
+ res\drawable
+ 1
-
-
-
- true
+
+ res\drawable
+ 1
-
-
-
- .\
- true
+
+
+
+ res\values
+ 1
-
-
-
- true
+
+ res\values
+ 1
-
-
-
- true
+
+
+
+ res\values-v21
+ 1
-
-
-
- true
+
+ res\values-v21
+ 1
-
-
-
- true
+
+
+
+ res\values
+ 1
-
-
-
- .\
- true
+
+ res\values
+ 1
-
-
-
- true
+
+
+
+ res\drawable
+ 1
-
-
-
+
+ res\drawable
1
-
- Contents\MacOS
+
+
+
+ res\drawable-xxhdpi
1
-
- 0
+
+ res\drawable-xxhdpi
+ 1
-
+
- classes
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
1
-
+
- res\xml
+ res\drawable-hdpi
1
-
-
-
- library\lib\armeabi-v7a
+
+ res\drawable-hdpi
1
-
+
- library\lib\armeabi
+ res\drawable-xhdpi
1
-
-
-
- library\lib\mips
+
+ res\drawable-xhdpi
1
-
+
- library\lib\armeabi-v7a
+ res\drawable-mdpi
1
-
-
-
- res\drawable
+
+ res\drawable-mdpi
1
-
+
- res\values
+ res\drawable-hdpi
1
-
-
-
- res\values-v21
+
+ res\drawable-hdpi
1
-
+
- res\drawable
+ res\drawable-xhdpi
1
-
-
-
- res\drawable-xxhdpi
+
+ res\drawable-xhdpi
1
-
+
- res\drawable-ldpi
+ res\drawable-xxhdpi
1
-
-
-
- res\drawable-mdpi
+
+ res\drawable-xxhdpi
1
-
+
- res\drawable-hdpi
+ res\drawable-xxxhdpi
1
-
-
-
- res\drawable-xhdpi
+
+ res\drawable-xxxhdpi
1
@@ -686,24 +547,50 @@
res\drawable-small
1
+
+ res\drawable-small
+ 1
+
res\drawable-normal
1
+
+ res\drawable-normal
+ 1
+
res\drawable-large
1
+
+ res\drawable-large
+ 1
+
res\drawable-xlarge
1
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
@@ -792,6 +679,9 @@
0
+
+ 0
+
0
@@ -813,7 +703,62 @@
0
-
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
1
@@ -824,7 +769,7 @@
1
-
+
1
@@ -835,7 +780,7 @@
1
-
+
1
@@ -846,7 +791,117 @@
1
-
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
1
@@ -890,10 +945,35 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
+
+ 1
+
@@ -986,6 +1066,10 @@
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
1
@@ -1010,6 +1094,12 @@
0
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
1
@@ -1047,11 +1137,12 @@
+
12
+
-
diff --git a/app/winapp/rtklaunch/rtklaunch.cbproj.local b/app/winapp/rtklaunch/rtklaunch.cbproj.local
new file mode 100644
index 000000000..970d6abb4
--- /dev/null
+++ b/app/winapp/rtklaunch/rtklaunch.cbproj.local
@@ -0,0 +1,6 @@
+
+
+
+ 2020/12/01 21:08:29.000.476,D:\share\RTKLIB\app\winapp\rtklaunch\launchoptdlg.cpp=
+
+
diff --git a/app/rtklaunch/rtklaunch.cpp b/app/winapp/rtklaunch/rtklaunch.cpp
similarity index 83%
rename from app/rtklaunch/rtklaunch.cpp
rename to app/winapp/rtklaunch/rtklaunch.cpp
index b67655f73..763a9228e 100644
--- a/app/rtklaunch/rtklaunch.cpp
+++ b/app/winapp/rtklaunch/rtklaunch.cpp
@@ -22,9 +22,8 @@
USEFORM("launchmain.cpp", MainForm);
-USEFORM("launchoptdlg.cpp", LaunchOptDialog);
//---------------------------------------------------------------------------
-WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
+int WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
{
try
{
@@ -32,7 +31,6 @@ WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
Application->MainFormOnTaskBar = true;
Application->Title = "RTKLAUNCH";
Application->CreateForm(__classid(TMainForm), &MainForm);
- Application->CreateForm(__classid(TLaunchOptDialog), &LaunchOptDialog);
Application->Run();
}
catch (Exception &exception)
diff --git a/app/rtklaunch/rtklaunch.res b/app/winapp/rtklaunch/rtklaunch.res
similarity index 56%
rename from app/rtklaunch/rtklaunch.res
rename to app/winapp/rtklaunch/rtklaunch.res
index ae0ff8bb2..a2db38650 100644
Binary files a/app/rtklaunch/rtklaunch.res and b/app/winapp/rtklaunch/rtklaunch.res differ
diff --git a/app/rtklib_winapp.groupproj b/app/winapp/rtklib_winapp.groupproj
similarity index 56%
rename from app/rtklib_winapp.groupproj
rename to app/winapp/rtklib_winapp.groupproj
index e6765b4ce..c9c751aea 100644
--- a/app/rtklib_winapp.groupproj
+++ b/app/winapp/rtklib_winapp.groupproj
@@ -21,30 +21,12 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Default.Personality.12
@@ -107,24 +89,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -143,50 +107,14 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
-
+
diff --git a/app/rtklib_winapp.groupproj.local b/app/winapp/rtklib_winapp.groupproj.local
similarity index 58%
rename from app/rtklib_winapp.groupproj.local
rename to app/winapp/rtklib_winapp.groupproj.local
index 938ac45fe..121184d38 100644
--- a/app/rtklib_winapp.groupproj.local
+++ b/app/winapp/rtklib_winapp.groupproj.local
@@ -1,7 +1,6 @@
-
-
+
diff --git a/app/rtknavi/clean.bat b/app/winapp/rtknavi/clean.bat
similarity index 100%
rename from app/rtknavi/clean.bat
rename to app/winapp/rtknavi/clean.bat
diff --git a/app/winapp/rtknavi/install.bat b/app/winapp/rtknavi/install.bat
new file mode 100644
index 000000000..eca386a2e
--- /dev/null
+++ b/app/winapp/rtknavi/install.bat
@@ -0,0 +1 @@
+copy Release_Build\rtknavi.exe ..\..\..\..\RTKLIB_bin\bin
diff --git a/app/rtknavi/instrdlg.cpp b/app/winapp/rtknavi/instrdlg.cpp
similarity index 99%
rename from app/rtknavi/instrdlg.cpp
rename to app/winapp/rtknavi/instrdlg.cpp
index f50a0439f..deafb893e 100644
--- a/app/rtknavi/instrdlg.cpp
+++ b/app/winapp/rtknavi/instrdlg.cpp
@@ -330,13 +330,11 @@ void __fastcall TInputStrDialog::TcpOpt(int index, int opt)
TcpOptDialog->Opt=opt;
for (int i=0;i<10;i++) {
TcpOptDialog->History[i]=History[i];
- TcpOptDialog->MntpHist[i]=MntpHist[i];
}
if (TcpOptDialog->ShowModal()!=mrOk) return;
Paths[index][1]=TcpOptDialog->Path;
for (int i=0;i<10;i++) {
History[i]=TcpOptDialog->History[i];
- MntpHist[i]=TcpOptDialog->MntpHist[i];
}
}
//---------------------------------------------------------------------------
diff --git a/app/rtknavi/instrdlg.dfm b/app/winapp/rtknavi/instrdlg.dfm
similarity index 94%
rename from app/rtknavi/instrdlg.dfm
rename to app/winapp/rtknavi/instrdlg.dfm
index 165f2667f..2f6a34262 100644
--- a/app/rtknavi/instrdlg.dfm
+++ b/app/winapp/rtknavi/instrdlg.dfm
@@ -4,8 +4,8 @@ object InputStrDialog: TInputStrDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'Input Streams'
- ClientHeight = 257
- ClientWidth = 400
+ ClientHeight = 261
+ ClientWidth = 405
Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -32,7 +32,7 @@ object InputStrDialog: TInputStrDialog
Caption = 'Opt'
end
object Label10: TLabel
- Left = 40
+ Left = 41
Top = 3
Width = 63
Height = 13
@@ -61,24 +61,24 @@ object InputStrDialog: TInputStrDialog
end
object LabelF2: TLabel
Left = 155
- Top = 234
+ Top = 236
Width = 5
Height = 13
Caption = 's'
end
object LabelF3: TLabel
- Left = 103
- Top = 234
+ Left = 101
+ Top = 236
Width = 8
Height = 13
Caption = '+'
end
object LabelNmea: TLabel
- Left = 8
- Top = 87
- Width = 185
+ Left = 9
+ Top = 88
+ Width = 172
Height = 13
- Caption = 'Transmit NMEA GPGGA to Base Station'
+ Caption = 'Transmit NMEA GGA to Base Station'
end
object Label1: TLabel
Left = 375
@@ -110,7 +110,7 @@ object InputStrDialog: TInputStrDialog
end
object StreamC2: TCheckBox
Left = 8
- Top = 43
+ Top = 44
Width = 121
Height = 17
Caption = '(2) Base Station'
@@ -128,7 +128,7 @@ object InputStrDialog: TInputStrDialog
end
object TimeTagC: TCheckBox
Left = 7
- Top = 233
+ Top = 234
Width = 47
Height = 17
Caption = 'Time'
@@ -136,8 +136,8 @@ object InputStrDialog: TInputStrDialog
OnClick = TimeTagCClick
end
object BtnCancel: TButton
- Left = 311
- Top = 229
+ Left = 313
+ Top = 230
Width = 85
Height = 27
Caption = '&Cancel'
@@ -145,8 +145,8 @@ object InputStrDialog: TInputStrDialog
TabOrder = 0
end
object BtnOk: TButton
- Left = 220
- Top = 229
+ Left = 224
+ Top = 230
Width = 85
Height = 27
Caption = '&OK'
@@ -175,7 +175,7 @@ object InputStrDialog: TInputStrDialog
Left = 224
Top = 17
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -188,7 +188,7 @@ object InputStrDialog: TInputStrDialog
end
object Stream2: TComboBox
Left = 120
- Top = 41
+ Top = 42
Width = 103
Height = 21
Style = csDropDownList
@@ -205,9 +205,9 @@ object InputStrDialog: TInputStrDialog
end
object BtnStr2: TButton
Left = 224
- Top = 40
+ Top = 41
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -229,7 +229,7 @@ object InputStrDialog: TInputStrDialog
end
object Format2: TComboBox
Left = 275
- Top = 41
+ Top = 42
Width = 97
Height = 21
Style = csDropDownList
@@ -240,7 +240,7 @@ object InputStrDialog: TInputStrDialog
Left = 249
Top = 17
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -253,9 +253,9 @@ object InputStrDialog: TInputStrDialog
end
object BtnCmd2: TButton
Left = 249
- Top = 40
+ Top = 41
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -282,7 +282,7 @@ object InputStrDialog: TInputStrDialog
end
object TimeStartE: TEdit
Left = 113
- Top = 231
+ Top = 232
Width = 39
Height = 21
TabOrder = 30
@@ -292,7 +292,7 @@ object InputStrDialog: TInputStrDialog
Left = 373
Top = 160
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -307,7 +307,7 @@ object InputStrDialog: TInputStrDialog
Left = 373
Top = 182
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -335,8 +335,8 @@ object InputStrDialog: TInputStrDialog
'Reset and Single Sol')
end
object TimeSpeedL: TComboBox
- Left = 55
- Top = 231
+ Left = 50
+ Top = 232
Width = 49
Height = 21
DropDownCount = 20
@@ -372,7 +372,7 @@ object InputStrDialog: TInputStrDialog
Left = 373
Top = 101
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -394,7 +394,7 @@ object InputStrDialog: TInputStrDialog
Left = 373
Top = 204
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -407,7 +407,7 @@ object InputStrDialog: TInputStrDialog
end
object StreamC3: TCheckBox
Left = 8
- Top = 66
+ Top = 68
Width = 121
Height = 17
Caption = '(3) Correction'
@@ -416,7 +416,7 @@ object InputStrDialog: TInputStrDialog
end
object Stream3: TComboBox
Left = 120
- Top = 64
+ Top = 66
Width = 103
Height = 21
Style = csDropDownList
@@ -435,9 +435,9 @@ object InputStrDialog: TInputStrDialog
end
object BtnStr3: TButton
Left = 224
- Top = 63
+ Top = 65
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -450,7 +450,7 @@ object InputStrDialog: TInputStrDialog
end
object Format3: TComboBox
Left = 275
- Top = 64
+ Top = 66
Width = 97
Height = 21
Style = csDropDownList
@@ -459,9 +459,9 @@ object InputStrDialog: TInputStrDialog
end
object BtnCmd3: TButton
Left = 249
- Top = 63
+ Top = 65
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -476,7 +476,7 @@ object InputStrDialog: TInputStrDialog
Left = 373
Top = 17
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -489,9 +489,9 @@ object InputStrDialog: TInputStrDialog
end
object BtnRcvOpt2: TButton
Left = 373
- Top = 40
+ Top = 41
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -504,9 +504,9 @@ object InputStrDialog: TInputStrDialog
end
object BtnRcvOpt3: TButton
Left = 373
- Top = 63
+ Top = 65
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -542,7 +542,7 @@ object InputStrDialog: TInputStrDialog
end
object Chk64Bit: TCheckBox
Left = 166
- Top = 233
+ Top = 234
Width = 40
Height = 17
Caption = '64bit'
diff --git a/app/rtknavi/instrdlg.h b/app/winapp/rtknavi/instrdlg.h
similarity index 98%
rename from app/rtknavi/instrdlg.h
rename to app/winapp/rtknavi/instrdlg.h
index 502c0a47a..1edfc91ef 100644
--- a/app/rtknavi/instrdlg.h
+++ b/app/winapp/rtknavi/instrdlg.h
@@ -99,7 +99,7 @@ class TInputStrDialog : public TForm
double NmeaPos[3],MaxBL;
AnsiString Paths[3][4],Cmds[3][3],CmdsTcp[3][3],TimeStart,TimeSpeed;
AnsiString RcvOpt[3],ResetCmd;
- AnsiString History[10],MntpHist[10];
+ AnsiString History[10];
__fastcall TInputStrDialog(TComponent* Owner);
};
//---------------------------------------------------------------------------
diff --git a/app/rtknavi/logstrdlg.cpp b/app/winapp/rtknavi/logstrdlg.cpp
similarity index 98%
rename from app/rtknavi/logstrdlg.cpp
rename to app/winapp/rtknavi/logstrdlg.cpp
index e63a360f7..b7d86ccb7 100644
--- a/app/rtknavi/logstrdlg.cpp
+++ b/app/winapp/rtknavi/logstrdlg.cpp
@@ -173,13 +173,11 @@ void __fastcall TLogStrDialog::TcpOpt(int index, int opt)
TcpOptDialog->Opt=opt;
for (int i=0;i<10;i++) {
TcpOptDialog->History[i]=History[i];
- TcpOptDialog->MntpHist[i]=MntpHist[i];
}
if (TcpOptDialog->ShowModal()!=mrOk) return;
Paths[index][1]=TcpOptDialog->Path;
for (int i=0;i<10;i++) {
History[i]=TcpOptDialog->History[i];
- MntpHist[i]=TcpOptDialog->MntpHist[i];
}
}
//---------------------------------------------------------------------------
diff --git a/app/rtknavi/logstrdlg.dfm b/app/winapp/rtknavi/logstrdlg.dfm
similarity index 97%
rename from app/rtknavi/logstrdlg.dfm
rename to app/winapp/rtknavi/logstrdlg.dfm
index f65092b59..75c843014 100644
--- a/app/rtknavi/logstrdlg.dfm
+++ b/app/winapp/rtknavi/logstrdlg.dfm
@@ -4,8 +4,8 @@ object LogStrDialog: TLogStrDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'Log Streams'
- ClientHeight = 196
- ClientWidth = 390
+ ClientHeight = 198
+ ClientWidth = 394
Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -69,7 +69,7 @@ object LogStrDialog: TLogStrDialog
Caption = 'H'
end
object BtnCancel: TButton
- Left = 302
+ Left = 303
Top = 167
Width = 85
Height = 27
@@ -78,7 +78,7 @@ object LogStrDialog: TLogStrDialog
TabOrder = 0
end
object BtnOk: TButton
- Left = 212
+ Left = 215
Top = 167
Width = 85
Height = 27
@@ -127,7 +127,7 @@ object LogStrDialog: TLogStrDialog
Left = 237
Top = 16
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -142,7 +142,7 @@ object LogStrDialog: TLogStrDialog
Left = 237
Top = 39
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -171,7 +171,7 @@ object LogStrDialog: TLogStrDialog
Left = 363
Top = 97
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -186,7 +186,7 @@ object LogStrDialog: TLogStrDialog
Left = 363
Top = 119
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -254,7 +254,7 @@ object LogStrDialog: TLogStrDialog
Left = 237
Top = 62
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -276,7 +276,7 @@ object LogStrDialog: TLogStrDialog
Left = 363
Top = 141
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
diff --git a/app/rtknavi/logstrdlg.h b/app/winapp/rtknavi/logstrdlg.h
similarity index 98%
rename from app/rtknavi/logstrdlg.h
rename to app/winapp/rtknavi/logstrdlg.h
index 976a44bbc..f37d9a38a 100644
--- a/app/rtknavi/logstrdlg.h
+++ b/app/winapp/rtknavi/logstrdlg.h
@@ -64,7 +64,7 @@ class TLogStrDialog : public TForm
public:
int StreamC[3],Stream[3],LogTimeTag,LogAppend;
AnsiString Paths[3][4],SwapInterval;
- AnsiString History[10],MntpHist[10];
+ AnsiString History[10];
__fastcall TLogStrDialog(TComponent* Owner);
};
//---------------------------------------------------------------------------
diff --git a/app/rtknavi/mapdlg.cpp b/app/winapp/rtknavi/mapdlg.cpp
similarity index 100%
rename from app/rtknavi/mapdlg.cpp
rename to app/winapp/rtknavi/mapdlg.cpp
diff --git a/app/rtknavi/mapdlg.dfm b/app/winapp/rtknavi/mapdlg.dfm
similarity index 100%
rename from app/rtknavi/mapdlg.dfm
rename to app/winapp/rtknavi/mapdlg.dfm
diff --git a/app/rtknavi/mapdlg.h b/app/winapp/rtknavi/mapdlg.h
similarity index 100%
rename from app/rtknavi/mapdlg.h
rename to app/winapp/rtknavi/mapdlg.h
diff --git a/app/rtknavi/markdlg.cpp b/app/winapp/rtknavi/markdlg.cpp
similarity index 100%
rename from app/rtknavi/markdlg.cpp
rename to app/winapp/rtknavi/markdlg.cpp
diff --git a/app/rtknavi/markdlg.dfm b/app/winapp/rtknavi/markdlg.dfm
similarity index 100%
rename from app/rtknavi/markdlg.dfm
rename to app/winapp/rtknavi/markdlg.dfm
diff --git a/app/rtknavi/markdlg.h b/app/winapp/rtknavi/markdlg.h
similarity index 100%
rename from app/rtknavi/markdlg.h
rename to app/winapp/rtknavi/markdlg.h
diff --git a/app/rtknavi/mondlg.cpp b/app/winapp/rtknavi/mondlg.cpp
similarity index 67%
rename from app/rtknavi/mondlg.cpp
rename to app/winapp/rtknavi/mondlg.cpp
index 9c793a41b..8bc784b34 100644
--- a/app/rtknavi/mondlg.cpp
+++ b/app/winapp/rtknavi/mondlg.cpp
@@ -12,22 +12,20 @@
#define TOPMARGIN 2
#define LEFTMARGIN 3
#define MAXLINE 2048
-#define MAXLEN 200
+#define MAXLEN 256
+#define TYPE_WIDTH 90
-#define NMONITEM 29
-
-#define IONLON1 110.0
-#define IONLON2 165.0
-#define IONLAT1 55.0
-#define IONLAT2 15.0
-#define DIONLON 2.0
-#define DIONLAT 1.0
+#define NMONITEM 17
//---------------------------------------------------------------------------
extern rtksvr_t rtksvr; // rtk server struct
extern stream_t monistr; // monitor stream
+static const int sys_tbl[]={
+ SYS_ALL,SYS_GPS,SYS_GLO,SYS_GAL,SYS_QZS,SYS_CMP,SYS_IRN,SYS_SBS
+};
+
//---------------------------------------------------------------------------
__fastcall TMonitorDialog::TMonitorDialog(TComponent* Owner)
: TForm(Owner)
@@ -40,6 +38,7 @@ __fastcall TMonitorDialog::TMonitorDialog(TComponent* Owner)
ConBuff=new TStringList;
ConBuff->Add("");
DoubleBuffered=true;
+ Str1=Str2=0;
for (i=0;i<=MAXRCVFMT;i++) {
SelFmt->Items->Add(formatstrs[i]);
@@ -52,8 +51,6 @@ void __fastcall TMonitorDialog::FormShow(TObject *Sender)
{
TypeF=Type->ItemIndex;
Label->Caption="";
- FontScale=Screen->PixelsPerInch;
- Tbl->DefaultRowHeight=16*FontScale/96;
ClearTable();
}
//---------------------------------------------------------------------------
@@ -92,7 +89,7 @@ void __fastcall TMonitorDialog::TypeChange(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::SelFmtChange(TObject *Sender)
{
- AddConsole((unsigned char *)"\n",1,1);
+ AddConsole((uint8_t *)"\n",1,1);
if (ConFmt>=3&&ConFmt<17) {
free_raw(&raw);
@@ -104,39 +101,42 @@ void __fastcall TMonitorDialog::SelFmtChange(TObject *Sender)
}
}
//---------------------------------------------------------------------------
+void __fastcall TMonitorDialog::SelStrChange(TObject *Sender)
+{
+ Str1=SelStr->ItemIndex;
+ ConBuff->Clear();
+ ConBuff->Add("");
+ Console->Invalidate();
+}
+//---------------------------------------------------------------------------
+void __fastcall TMonitorDialog::SelStr2Change(TObject *Sender)
+{
+ Str2=SelStr2->ItemIndex;
+ ConBuff->Clear();
+ ConBuff->Add("");
+ Console->Invalidate();
+}
+//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::Timer1Timer(TObject *Sender)
{
if (!Visible) return;
switch (TypeF) {
case 0: ShowRtk(); break;
case 1: ShowObs(); break;
- case 2: ShowNav(SYS_GPS); break;
- case 3: ShowGnav(); break;
- case 4: ShowNav(SYS_GAL); break;
- case 5: ShowNav(SYS_QZS); break;
- case 6: ShowNav(SYS_CMP); break;
- case 7: ShowSbsNav(); break;
- case 8: ShowIonUtc(); break;
- case 9: ShowStr(); break;
- case 10: ShowSat(SYS_GPS); break;
- case 11: ShowSat(SYS_GLO); break;
- case 12: ShowSat(SYS_GAL); break;
- case 13: ShowSat(SYS_QZS); break;
- case 14: ShowSat(SYS_CMP); break;
- case 15: ShowSat(SYS_SBS); break;
- case 16: ShowEst(); break;
- case 17: ShowCov(); break;
- case 18: ShowSbsMsg(); break;
- case 19: ShowSbsLong(); break;
- case 20: ShowSbsIono(); break;
- case 21: ShowSbsFast(); break;
- case 22: ShowRtcm(); break;
- case 23: ShowRtcmDgps(); break;
- case 24: ShowRtcmSsr(); break;
- case 25: ShowLexMsg(); break;
- case 26: ShowLexEph(); break;
- case 27: ShowLexIon(); break;
- case 28: ShowIonCorr(); break;
+ case 2: ShowNav(); break;
+ case 3: ShowIonUtc(); break;
+ case 4: ShowStr(); break;
+ case 5: ShowSat(); break;
+ case 6: ShowEst(); break;
+ case 7: ShowCov(); break;
+ case 8: ShowSbsMsg(); break;
+ case 9: ShowSbsLong(); break;
+ case 10: ShowSbsIono(); break;
+ case 11: ShowSbsFast(); break;
+ case 12: ShowRtcm(); break;
+ case 13: ShowRtcmDgps(); break;
+ case 14: ShowRtcmSsr(); break;
+ case 15: ShowRefSta(); break;
}
}
//---------------------------------------------------------------------------
@@ -144,79 +144,69 @@ void __fastcall TMonitorDialog::ClearTable(void)
{
int console=0;
+ FontScale=Type->Width*96/TYPE_WIDTH;
+
switch (TypeF) {
case 0: SetRtk(); break;
case 1: SetObs(); break;
- case 2: SetNav(); break;
- case 3: SetGnav(); break;
- case 4: SetNav(); break;
- case 5: SetNav(); break;
- case 6: SetNav(); break;
- case 7: SetSbsNav(); break;
- case 8: SetIonUtc(); break;
- case 9: SetStr(); break;
- case 10: SetSat(); break;
- case 11: SetSat(); break;
- case 12: SetSat(); break;
- case 13: SetSat(); break;
- case 14: SetSat(); break;
- case 15: SetSat(); break;
- case 16: SetEst(); break;
- case 17: SetCov(); break;
- case 18: SetSbsMsg(); break;
- case 19: SetSbsLong(); break;
- case 20: SetSbsIono(); break;
- case 21: SetSbsFast(); break;
- case 22: SetRtcm(); break;
- case 23: SetRtcmDgps(); break;
- case 24: SetRtcmSsr(); break;
- case 25: SetLexMsg(); break;
- case 26: SetLexEph(); break;
- case 27: SetLexIon(); break;
- case 28: SetIonCorr(); break;
+ case 2: ; break;
+ case 3: SetIonUtc(); break;
+ case 4: SetStr(); break;
+ case 5: SetSat(); break;
+ case 6: SetEst(); break;
+ case 7: SetCov(); break;
+ case 8: SetSbsMsg(); break;
+ case 9: SetSbsLong(); break;
+ case 10: SetSbsIono(); break;
+ case 11: SetSbsFast(); break;
+ case 12: SetRtcm(); break;
+ case 13: SetRtcmDgps(); break;
+ case 14: SetRtcmSsr(); break;
+ case 15: SetRefSta(); break;
default: console=1; break;
}
Console ->Visible=console;
Scroll ->Visible=console;
- BtnPause->Visible=console;
- BtnDown ->Visible=console;
- BtnClear->Visible=console;
+ Panel2 ->Visible=console;
Tbl ->Visible=!console;
- SelFmt ->Visible=NMONITEM<=TypeF&&TypeF<=NMONITEM+2;
SelObs ->Visible=TypeF==1;
- SelSat ->Visible=(2<=TypeF&&TypeF<=7)||(10<=TypeF&&TypeF<=15);
- SelStr ->Visible=TypeF==18||TypeF==22||TypeF==24;
- SelEph ->Visible=2<=TypeF&&TypeF<=7;
- SelIon ->Visible=TypeF==28;
+ SelSys ->Visible=TypeF==1||TypeF==5;
+ SelSys2 ->Visible=TypeF==2||TypeF==14;
+ SelSat ->Visible=TypeF==2||TypeF==5;
+ SelStr ->Visible=TypeF==12||TypeF==14||TypeF==15||TypeF==16;
+ SelStr2 ->Visible=TypeF==17;
+ SelFmt ->Visible=TypeF==16;
+ SelEph ->Visible=TypeF==2;
+ SelStr ->Left=(TypeF==14)?SelSys->Left+SelSys->Width+1:Type->Left+Type->Width+1;
}
//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::Timer2Timer(TObject *Sender)
{
- unsigned char *msg;
+ uint8_t *msg;
char buff[256];
- int i,n,len,index=TypeF-NMONITEM;
+ int i,n,len;
- if (index<0||6<=index) return;
+ if (TypeF<16) return;
rtksvrlock(&rtksvr);
- if (index<3) { // input buffer
- len=rtksvr.npb[index];
- if (len>0&&(msg=(unsigned char *)malloc(len))) {
- memcpy(msg,rtksvr.pbuf[index],len);
- rtksvr.npb[index]=0;
+ if (TypeF==16) { // input buffer
+ len=rtksvr.npb[Str1];
+ if (len>0&&(msg=(uint8_t *)malloc(len))) {
+ memcpy(msg,rtksvr.pbuf[Str1],len);
+ rtksvr.npb[Str1]=0;
}
}
- else if (index<5) { // solution buffer
- len=rtksvr.nsb[index-3];
- if (len>0&&(msg=(unsigned char *)malloc(len))) {
- memcpy(msg,rtksvr.sbuf[index-3],len);
- rtksvr.nsb[index-3]=0;
+ else if (TypeF==17) { // solution buffer
+ len=rtksvr.nsb[Str2];
+ if (len>0&&(msg=(uint8_t *)malloc(len))) {
+ memcpy(msg,rtksvr.sbuf[Str2],len);
+ rtksvr.nsb[Str2]=0;
}
}
else { // error message buffer
len=rtksvr.rtk.neb;
- if (len>0&&(msg=(unsigned char *)malloc(len))) {
+ if (len>0&&(msg=(uint8_t *)malloc(len))) {
memcpy(msg,rtksvr.rtk.errbuf,len);
rtksvr.rtk.neb=0;
}
@@ -227,15 +217,18 @@ void __fastcall TMonitorDialog::Timer2Timer(TObject *Sender)
rtcm.outtype=raw.outtype=1;
- if (ConFmt<2||index>=3) {
- AddConsole(msg,len,index<3?ConFmt:1);
+ if (TypeF>=17) {
+ AddConsole(msg,len,1);
+ }
+ else if (ConFmt<2) {
+ AddConsole(msg,len,ConFmt);
}
else if (ConFmt==2) {
for (i=0;iInvalidate();
}
//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::AddConsole(unsigned char *msg, int len, int mode)
+void __fastcall TMonitorDialog::AddConsole(uint8_t *msg, int len, int mode)
{
AnsiString ConBuff_Str=ConBuff->Strings[ConBuff->Count-1];
char buff[MAXLEN+16],*p=buff;
@@ -367,9 +360,9 @@ void __fastcall TMonitorDialog::ShowRtk(void)
AnsiString sol[]={"-","Fix","Float","SBAS","DGPS","Single","PPP",""};
AnsiString mode[]={"Single","DGPS","Kinematic","Static","Moving-Base",
"Fixed","PPP-Kinematic","PPP-Static",""};
- AnsiString freq[]={"-","L1","L1+L2","L1+L2+L5","L1+L2+L5+L6","L1+L2+L5+L6+L7","L1+L2+L5+L6+L7+L8",""};
- double *del,*off1,*off2,runtime,rt[3]={0},dop[4]={0};
- double azel[MAXSAT*2],pos[3],vel[3];
+ AnsiString freq[]={"-","L1","L1+L2","L1+L2+L3","L1+L2+L3+L4","L1+L2+L3+L4+L5",""};
+ double *del,*off,runtime,rt[3]={0},dop[4]={0};
+ double azel[MAXSAT*2],pos[3],vel[3],rr[3]={0},enu[3]={0};
int i,j,k,thread,cycle,state,rtkstat,nsat0,nsat1,prcout,nave;
int cputime,nb[3]={0},nmsg[3][10]={{0}},ne;
char tstr[64],*ant,id[32],s1[64]="-",s2[64]="-",s3[64]="-";
@@ -421,11 +414,12 @@ void __fastcall TMonitorDialog::ShowRtk(void)
if (rtk.opt.navsys&SYS_GLO) navsys=navsys+"GLONASS ";
if (rtk.opt.navsys&SYS_GAL) navsys=navsys+"Galileo ";
if (rtk.opt.navsys&SYS_QZS) navsys=navsys+"QZSS ";
+ if (rtk.opt.navsys&SYS_CMP) navsys=navsys+"BDS ";
+ if (rtk.opt.navsys&SYS_IRN) navsys=navsys+"NavIC ";
if (rtk.opt.navsys&SYS_SBS) navsys=navsys+"SBAS ";
- if (rtk.opt.navsys&SYS_CMP) navsys=navsys+"BeiDou ";
Label->Caption="";
- Tbl->RowCount=57;
+ Tbl->RowCount=54+NFREQ*2;
i=1;
Tbl->Cells[0][i ]="RTKLIB Version";
@@ -450,31 +444,31 @@ void __fastcall TMonitorDialog::ShowRtk(void)
Tbl->Cells[1][i++]=s.sprintf("%.0f",rtk.opt.elmin*R2D);
Tbl->Cells[0][i ]="SNR Mask L1 (dBHz)";
- Tbl->Cells[1][i++]=!rtk.opt.snrmask.ena?s.sprintf(""):
- s.sprintf("%.0f,%.0f,%.0f,%.0f,%.0f,%.0f,%.0f,%.0f,%.0f",
+ Tbl->Cells[1][i++]=!rtk.opt.snrmask.ena[0]?s.sprintf(""):
+ s.sprintf("%.0f, %.0f, %.0f, %.0f, %.0f, %.0f, %.0f, %.0f, %.0f",
rtk.opt.snrmask.mask[0][0],rtk.opt.snrmask.mask[0][1],rtk.opt.snrmask.mask[0][2],
rtk.opt.snrmask.mask[0][3],rtk.opt.snrmask.mask[0][4],rtk.opt.snrmask.mask[0][5],
rtk.opt.snrmask.mask[0][6],rtk.opt.snrmask.mask[0][7],rtk.opt.snrmask.mask[0][8]);
Tbl->Cells[0][i ]="SNR Mask L2 (dBHz)";
- Tbl->Cells[1][i++]=!rtk.opt.snrmask.ena?s.sprintf(""):
- s.sprintf("%.0f,%.0f,%.0f,%.0f,%.0f,%.0f,%.0f,%.0f,%.0f",
+ Tbl->Cells[1][i++]=!rtk.opt.snrmask.ena[0]?s.sprintf(""):
+ s.sprintf("%.0f, %.0f, %.0f, %.0f, %.0f, %.0f, %.0f, %.0f, %.0f",
rtk.opt.snrmask.mask[1][0],rtk.opt.snrmask.mask[1][1],rtk.opt.snrmask.mask[1][2],
rtk.opt.snrmask.mask[1][3],rtk.opt.snrmask.mask[1][4],rtk.opt.snrmask.mask[1][5],
rtk.opt.snrmask.mask[1][6],rtk.opt.snrmask.mask[1][7],rtk.opt.snrmask.mask[1][8]);
-
- Tbl->Cells[0][i ]="SNR Mask L5 (dBHz)";
- Tbl->Cells[1][i++]=!rtk.opt.snrmask.ena?s.sprintf(""):
- s.sprintf("%.0f,%.0f,%.0f,%.0f,%.0f,%.0f,%.0f,%.0f,%.0f",
+
+ Tbl->Cells[0][i ]="SNR Mask L3 (dBHz)";
+ Tbl->Cells[1][i++]=!rtk.opt.snrmask.ena[0]?s.sprintf(""):
+ s.sprintf("%.0f, %.0f, %.0f, %.0f, %.0f, %.0f, %.0f, %.0f, %.0f",
rtk.opt.snrmask.mask[2][0],rtk.opt.snrmask.mask[2][1],rtk.opt.snrmask.mask[2][2],
rtk.opt.snrmask.mask[2][3],rtk.opt.snrmask.mask[2][4],rtk.opt.snrmask.mask[2][5],
rtk.opt.snrmask.mask[2][6],rtk.opt.snrmask.mask[2][7],rtk.opt.snrmask.mask[2][8]);
Tbl->Cells[0][i ]="Rec Dynamic/Earth Tides Correction";
- Tbl->Cells[1][i++]=s.sprintf("%s,%s",rtk.opt.dynamics?"ON":"OFF",rtk.opt.tidecorr?"ON":"OFF");
+ Tbl->Cells[1][i++]=s.sprintf("%s, %s",rtk.opt.dynamics?"ON":"OFF",rtk.opt.tidecorr?"ON":"OFF");
Tbl->Cells[0][i ]="Ionosphere/Troposphere Model";
- Tbl->Cells[1][i++]=s.sprintf("%s,%s",ionoopt[rtk.opt.ionoopt],tropopt[rtk.opt.tropopt]);
+ Tbl->Cells[1][i++]=s.sprintf("%s, %s",ionoopt[rtk.opt.ionoopt],tropopt[rtk.opt.tropopt]);
Tbl->Cells[0][i ]="Satellite Ephemeris";
Tbl->Cells[1][i++]=ephopt[rtk.opt.sateph];
@@ -501,22 +495,22 @@ void __fastcall TMonitorDialog::ShowRtk(void)
Tbl->Cells[1][i++]=s.sprintf("%d",prcout);
Tbl->Cells[0][i ]="Bytes in Input Buffer";
- Tbl->Cells[1][i++]=s.sprintf("%d,%d,%d",nb[0],nb[1],nb[2]);
+ Tbl->Cells[1][i++]=s.sprintf("%d, %d, %d",nb[0],nb[1],nb[2]);
Tbl->Cells[0][i ]="# of Input Data Rover";
- Tbl->Cells[1][i++]=s.sprintf("Obs(%d),Nav(%d),Gnav(%d),Ion(%d),Sbs(%d),Pos(%d),Dgps(%d),Ssr(%d),Lex(%d),Err(%d)",
- nmsg[0][0],nmsg[0][1],nmsg[0][6],nmsg[0][2],nmsg[0][3],
- nmsg[0][4],nmsg[0][5],nmsg[0][7],nmsg[0][8],nmsg[0][9]);
+ Tbl->Cells[1][i++]=s.sprintf("Obs(%d), Nav(%d), Ion(%d), Sbs(%d), Pos(%d), Dgps(%d), Ssr(%d), Err(%d)",
+ nmsg[0][0],nmsg[0][1]+nmsg[0][6],nmsg[0][2],nmsg[0][3],
+ nmsg[0][4],nmsg[0][5],nmsg[0][7],nmsg[0][9]);
- Tbl->Cells[0][i ]="# of Input Data Base/NRTK Station";
- Tbl->Cells[1][i++]=s.sprintf("Obs(%d),Nav(%d),Gnav(%d),Ion(%d),Sbs(%d),Pos(%d),Dgps(%d),Ssr(%d),Lex(%d),Err(%d)",
- nmsg[1][0],nmsg[1][1],nmsg[1][6],nmsg[1][2],nmsg[1][3],
- nmsg[1][4],nmsg[1][5],nmsg[1][7],nmsg[1][8],nmsg[1][9]);
+ Tbl->Cells[0][i ]="# of Input Data Base Station";
+ Tbl->Cells[1][i++]=s.sprintf("Obs(%d), Nav(%d), Ion(%d), Sbs(%d), Pos(%d), Dgps(%d), Ssr(%d), Err(%d)",
+ nmsg[1][0],nmsg[1][1]+nmsg[1][6],nmsg[1][2],nmsg[1][3],
+ nmsg[1][4],nmsg[1][5],nmsg[1][7],nmsg[1][9]);
Tbl->Cells[0][i ]="# of Input Data Ephemeris";
- Tbl->Cells[1][i++]=s.sprintf("Obs(%d),Nav(%d),Gnav(%d),Ion(%d),Sbs(%d),Pos(%d),Dgps(%d),Ssr(%d),Lex(%d),Err(%d)",
- nmsg[2][0],nmsg[2][1],nmsg[2][6],nmsg[2][2],nmsg[2][3],
- nmsg[2][4],nmsg[2][5],nmsg[2][7],nmsg[2][8],nmsg[2][9]);
+ Tbl->Cells[1][i++]=s.sprintf("Obs(%d), Nav(%d), Ion(%d), Sbs(%d), Pos(%d), Dgps(%d), Ssr(%d), Err(%d)",
+ nmsg[2][0],nmsg[2][1]+nmsg[2][6],nmsg[2][2],nmsg[2][3],
+ nmsg[2][4],nmsg[2][5],nmsg[2][7],nmsg[2][9]);
Tbl->Cells[0][i ]="Solution Status";
Tbl->Cells[1][i++]=sol[rtkstat];
@@ -526,7 +520,7 @@ void __fastcall TMonitorDialog::ShowRtk(void)
Tbl->Cells[1][i++]=rtk.sol.time.time?tstr:"-";
Tbl->Cells[0][i ] ="Time Sytem Offset/Receiver Bias (GLO-GPS,GAL-GPS,BDS-GPS,IRN-GPS) (ns)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f,%.3f",rtk.sol.dtr[1]*1E9,rtk.sol.dtr[2]*1E9,
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f, %.3f",rtk.sol.dtr[1]*1E9,rtk.sol.dtr[2]*1E9,
rtk.sol.dtr[3]*1E9,rtk.sol.dtr[4]*1E9);
Tbl->Cells[0][i ]="Solution Interval (s)";
@@ -541,14 +535,14 @@ void __fastcall TMonitorDialog::ShowRtk(void)
Tbl->Cells[0][i ]="# of Satellites Rover";
Tbl->Cells[1][i++]=s.sprintf("%d",nsat0);
- Tbl->Cells[0][i ]="# of Satellites Base/NRTK Station";
+ Tbl->Cells[0][i ]="# of Satellites Base Station";
Tbl->Cells[1][i++]=s.sprintf("%d",nsat1);
Tbl->Cells[0][i ]="# of Valid Satellites";
Tbl->Cells[1][i++]=s.sprintf("%d",rtk.sol.ns);
Tbl->Cells[0][i ]="GDOP/PDOP/HDOP/VDOP";
- Tbl->Cells[1][i++]=s.sprintf("%.1f,%.1f,%.1f,%.1f",dop[0],dop[1],dop[2],dop[3]);
+ Tbl->Cells[1][i++]=s.sprintf("%.1f, %.1f, %.1f, %.1f",dop[0],dop[1],dop[2],dop[3]);
Tbl->Cells[0][i ]="# of Real Estimated States";
Tbl->Cells[1][i++]=s.sprintf("%d",rtk.na);
@@ -557,75 +551,76 @@ void __fastcall TMonitorDialog::ShowRtk(void)
Tbl->Cells[1][i++]=s.sprintf("%d",rtk.nx);
Tbl->Cells[0][i ]="Pos X/Y/Z Single (m) Rover";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",rtk.sol.rr[0],rtk.sol.rr[1],rtk.sol.rr[2]);
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",rtk.sol.rr[0],rtk.sol.rr[1],rtk.sol.rr[2]);
if (norm(rtk.sol.rr,3)>0.0) ecef2pos(rtk.sol.rr,pos); else pos[0]=pos[1]=pos[2]=0.0;
Tbl->Cells[0][i ]="Lat/Lon/Height Single (deg,m) Rover";
- Tbl->Cells[1][i++]=s.sprintf("%.8f,%.8f,%.3f",pos[0]*R2D,pos[1]*R2D,pos[2]);
+ Tbl->Cells[1][i++]=s.sprintf("%.8f, %.8f, %.3f",pos[0]*R2D,pos[1]*R2D,pos[2]);
ecef2enu(pos,rtk.sol.rr+3,vel);
Tbl->Cells[0][i ]="Vel E/N/U (m/s) Rover";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",vel[0],vel[1],vel[2]);
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",vel[0],vel[1],vel[2]);
Tbl->Cells[0][i ]="Pos X/Y/Z Float (m) Rover";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",
rtk.x?rtk.x[0]:0,rtk.x?rtk.x[1]:0,rtk.x?rtk.x[2]:0);
Tbl->Cells[0][i ]="Pos X/Y/Z Float Std (m) Rover";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",
rtk.P?SQRT(rtk.P[0]):0,rtk.P?SQRT(rtk.P[1+1*rtk.nx]):0,rtk.P?SQRT(rtk.P[2+2*rtk.nx]):0);
Tbl->Cells[0][i ]="Pos X/Y/Z Fixed (m) Rover";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",
rtk.xa?rtk.xa[0]:0,rtk.xa?rtk.xa[1]:0,rtk.xa?rtk.xa[2]:0);
Tbl->Cells[0][i ]="Pos X/Y/Z Fixed Std (m) Rover";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",
rtk.Pa?SQRT(rtk.Pa[0]):0,rtk.Pa?SQRT(rtk.Pa[1+1*rtk.na]):0,rtk.Pa?SQRT(rtk.Pa[2+2*rtk.na]):0);
- Tbl->Cells[0][i ]="Pos X/Y/Z (m) Base/NRTK Station";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",rtk.rb[0],rtk.rb[1],rtk.rb[2]);
+ Tbl->Cells[0][i ]="Pos X/Y/Z (m) Base Station";
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",rtk.rb[0],rtk.rb[1],rtk.rb[2]);
if (norm(rtk.rb,3)>0.0) ecef2pos(rtk.rb,pos); else pos[0]=pos[1]=pos[2]=0.0;
- Tbl->Cells[0][i ]="Lat/Lon/Height (deg,m) Base/NRTK Station";
- Tbl->Cells[1][i++]=s.sprintf("%.8f,%.8f,%.3f",pos[0]*R2D,pos[1]*R2D,pos[2]);
+ Tbl->Cells[0][i ]="Lat/Lon/Height (deg,m) Base Station";
+ Tbl->Cells[1][i++]=s.sprintf("%.8f, %.8f, %.3f",pos[0]*R2D,pos[1]*R2D,pos[2]);
ecef2enu(pos,rtk.rb+3,vel);
- Tbl->Cells[0][i ]="Vel E/N/U (m/s) Base/NRTK Station";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",vel[0],vel[1],vel[2]);
+ Tbl->Cells[0][i ]="Vel E/N/U (m/s) Base Station";
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",vel[0],vel[1],vel[2]);
+
+ if (norm(rtk.rb,3)>0.0) {
+ for (k=0;k<3;k++) rr[k]=rtk.sol.rr[k]-rtk.rb[k];
+ ecef2enu(pos,rr,enu);
+ }
+ Tbl->Cells[0][i ]="Baseline Length/E/N/U (m) Rover-Base Station";
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f, %.3f",norm(rr,3),enu[0],enu[1],enu[2]);
- Tbl->Cells[0][i ]="# of Averaging Single Pos Base/NRTK Station";
+ Tbl->Cells[0][i ]="# of Averaging Single Pos Base Station";
Tbl->Cells[1][i++]=s.sprintf("%d",nave);
Tbl->Cells[0][i ]="Antenna Type Rover";
Tbl->Cells[1][i++]=rtk.opt.pcvr[0].type;
- off1=rtk.opt.pcvr[0].off[0];
- Tbl->Cells[0][i ]="Ant Phase Center L1 E/N/U (m) Rover";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",off1[0],off1[1],off1[2]);
-
- off2=rtk.opt.pcvr[0].off[1];
- Tbl->Cells[0][i ]="Ant Phase Center L2 E/N/U (m) Rover";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",off2[0],off2[1],off2[2]);
-
+ for (j=0;jCells[0][i ]=s.sprintf("Ant Phase Center L%d E/N/U (m) Rover",j+1);
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",off[0],off[1],off[2]);
+ }
del=rtk.opt.antdel[0];
Tbl->Cells[0][i ]="Ant Delta E/N/U (m) Rover";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",del[0],del[1],del[2]);
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",del[0],del[1],del[2]);
- Tbl->Cells[0][i ]="Antenna Type Base/NRTK Station";
+ Tbl->Cells[0][i ]="Antenna Type Base Station";
Tbl->Cells[1][i++]=rtk.opt.pcvr[1].type;
- off1=rtk.opt.pcvr[1].off[0];
- Tbl->Cells[0][i ]="Ant Phase Center L1 E/N/U (m) Base/NRTK Station";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",off1[0],off1[1],off1[2]);
-
- off2=rtk.opt.pcvr[1].off[1];
- Tbl->Cells[0][i ]="Ant Phase Center L2 E/N/U (m) Base/NRTK Station";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",off2[0],off2[1],off2[2]);
-
+ for (j=0;jCells[0][i ]=s.sprintf("Ant Phase Center L%d E/N/U (m) Base Station",j+1);
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",off[0],off[1],off[2]);
+ }
del=rtk.opt.antdel[1];
- Tbl->Cells[0][i ]="Ant Delta E/N/U (m) Base/NRTK Station";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",del[0],del[1],del[2]);
+ Tbl->Cells[0][i ]="Ant Delta E/N/U (m) Base Station";
+ Tbl->Cells[1][i++]=s.sprintf("%.3f, %.3f, %.3f",del[0],del[1],del[2]);
Tbl->Cells[0][i ]="Precise Ephemeris Time/# of Epoch";
Tbl->Cells[1][i++]=s.sprintf("%s-%s (%d)",s1,s2,ne);
@@ -639,97 +634,102 @@ void __fastcall TMonitorDialog::ShowRtk(void)
//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::SetSat(void)
{
- int i,j=0,freq[]={1,2,5,6,7,8};
+ int i,j=0;
AnsiString s,label[]={
- "SAT","PRN","Status","Azimuth (deg)","Elevation (deg)","LG (m)","PHW(cyc)",
+ "SAT","Status","Azimuth (deg)","Elevation (deg)","LG (m)","PHW(cyc)",
"P1-P2(m)","P1-C1(m)","P2-C2(m)"
};
- int width[]={25,25,30,45,45,60,60,40,40,40};
+ int width[]={25,30,45,45,60,40,40,40,40},nfreq;
+
+ rtksvrlock(&rtksvr);
+ nfreq=rtksvr.rtk.opt.nf;
+ rtksvrunlock(&rtksvr);
- Tbl->ColCount=10+NFREQ*9;
+ Tbl->ColCount=9+nfreq*8;
Tbl->RowCount=2;
- for (i=0;i<5;i++) {
+ for (i=0;i<4;i++) {
Tbl->ColWidths [j]=width[i]*FontScale/96;
Tbl->Cells[j ][0]=label[i];
Tbl->Cells[j++][1]="";
}
- for (i=0;iColWidths [j]=30*FontScale/96;
- Tbl->Cells[j ][0]=s.sprintf("L%d",freq[i]);
+ Tbl->Cells[j ][0]=s.sprintf("L%d",i+1);
Tbl->Cells[j++][1]="";
}
- for (i=0;iColWidths [j]=40*FontScale/96;
- Tbl->Cells[j ][0]=s.sprintf("Fix%d",freq[i]);
+ Tbl->Cells[j ][0]=s.sprintf("Fix%d",i+1);
Tbl->Cells[j++][1]="";
}
- for (i=0;iColWidths [j]=45*FontScale/96;
- Tbl->Cells[j ][0]=s.sprintf("P%d Residual(m)",freq[i]);
+ Tbl->Cells[j ][0]=s.sprintf("P%d Residual(m)",i+1);
Tbl->Cells[j++][1]="";
}
- for (i=0;iColWidths [j]=45*FontScale/96;
- Tbl->Cells[j ][0]=s.sprintf("L%d Residual(m)",freq[i]);
+ Tbl->Cells[j ][0]=s.sprintf("L%d Residual(m)",i+1);
Tbl->Cells[j++][1]="";
}
- for (i=0;iColWidths [j]=45*FontScale/96;
- Tbl->Cells[j ][0]=s.sprintf("Slip%d",freq[i]);
+ Tbl->Cells[j ][0]=s.sprintf("Slip%d",i+1);
Tbl->Cells[j++][1]="";
}
- for (i=0;iColWidths [j]=45*FontScale/96;
- Tbl->Cells[j ][0]=s.sprintf("Lock%d",freq[i]);
+ Tbl->Cells[j ][0]=s.sprintf("Lock%d",i+1);
Tbl->Cells[j++][1]="";
}
- for (i=0;iColWidths [j]=45*FontScale/96;
- Tbl->Cells[j ][0]=s.sprintf("Outage%d",freq[i]);
+ Tbl->Cells[j ][0]=s.sprintf("Outage%d",i+1);
Tbl->Cells[j++][1]="";
}
- for (i=0;iColWidths [j]=45*FontScale/96;
- Tbl->Cells[j ][0]=s.sprintf("Reject%d",freq[i]);
- Tbl->Cells[j++][1]="";
- }
- for (i=0;iColWidths [j]=50*FontScale/96;
- Tbl->Cells[j ][0]=s.sprintf("WaveL%d(m)",freq[i]);
+ Tbl->Cells[j ][0]=s.sprintf("Reject%d",i+1);
Tbl->Cells[j++][1]="";
}
- for (i=5;i<10;i++) {
+ for (i=4;i<9;i++) {
Tbl->ColWidths [j]=width[i]*FontScale/96;
Tbl->Cells[j ][0]=label[i];
Tbl->Cells[j++][1]="";
}
}
//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::ShowSat(int sys)
+void __fastcall TMonitorDialog::ShowSat(void)
{
rtk_t rtk;
ssat_t *ssat;
AnsiString s;
- int i,j,k,n,fix,prn;
+ int i,j,k,n,fix,prn,pmode,nfreq,sys=sys_tbl[SelSys->ItemIndex];
+ int vsat[MAXSAT]={0};
char id[32];
- double az,el,lam[MAXSAT][NFREQ],cbias[MAXSAT][3];
+ double az,el,cbias[MAXSAT][3];
+ SetSat();
+
rtksvrlock(&rtksvr);
rtk=rtksvr.rtk;
- for (i=0;iCaption="";
+ for (i=0;ivs;
+ }
for (i=0,n=1;iItemIndex==1&&!ssat->vs) continue;
+ if (SelSat->ItemIndex==1&&!vsat[i]) continue;
n++;
}
if (n<2) {
@@ -743,45 +743,40 @@ void __fastcall TMonitorDialog::ShowSat(int sys)
if (!(satsys(i+1,NULL)&sys)) continue;
j=0;
ssat=rtk.ssat+i;
- if (SelSat->ItemIndex==1&&!ssat->vs) continue;
+ if (SelSat->ItemIndex==1&&!vsat[i]) continue;
satno2id(i+1,id);
- satsys(i+1,&prn);
Tbl->Cells[j++][n]=id;
- Tbl->Cells[j++][n]=s.sprintf("%d",prn);
Tbl->Cells[j++][n]=ssat->vs?"OK":"-";
az=ssat->azel[0]*R2D; if (az<0.0) az+=360.0;
el=ssat->azel[1]*R2D;
Tbl->Cells[j++][n]=s.sprintf("%.1f",az);
Tbl->Cells[j++][n]=s.sprintf("%.1f",el);
- for (k=0;kCells[j++][n]=ssat->vsat[k]?"OK":"-";
}
- for (k=0;kfix[k];
Tbl->Cells[j++][n]=fix==1?"FLOAT":(fix==2?"FIX":(fix==3?"HOLD":"-"));
}
- for (k=0;kCells[j++][n]=s.sprintf("%.2f",ssat->resp[k]);
}
- for (k=0;kCells[j++][n]=s.sprintf("%.4f",ssat->resc[k]);
}
- for (k=0;kCells[j++][n]=s.sprintf("%d",ssat->slipc[k]);
}
- for (k=0;kCells[j++][n]=s.sprintf("%d",ssat->lock[k]);
}
- for (k=0;kCells[j++][n]=s.sprintf("%d",ssat->outc[k]);
}
- for (k=0;kCells[j++][n]=s.sprintf("%d",ssat->rejc[k]);
}
- for (k=0;kCells[j++][n]=s.sprintf("%7.5f",lam[i][k]);
- }
- Tbl->Cells[j++][n]=s.sprintf("%.3f",ssat->gf);
+ Tbl->Cells[j++][n]=s.sprintf("%.3f",ssat->gf[0]);
Tbl->Cells[j++][n]=s.sprintf("%.2f",ssat->phw);
Tbl->Cells[j++][n]=s.sprintf("%.2f",cbias[i][0]);
Tbl->Cells[j++][n]=s.sprintf("%.2f",cbias[i][1]);
@@ -931,8 +926,8 @@ void __fastcall TMonitorDialog::ShowCov(void)
//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::SetObs(void)
{
- AnsiString s,label[]={"Trcv (GPST)","SAT","RCV"};
- int i,j=0,width[]={135,25,25},freq[]={1,2,5,6,7,8};
+ AnsiString s,label[]={"Trcv (GPST)","SAT","STR"};
+ int i,j=0,width[]={135,25,25};
int nex=ObsMode?NEXOBS:0;
Tbl->ColCount=3+(NFREQ+nex)*6;
@@ -943,33 +938,33 @@ void __fastcall TMonitorDialog::SetObs(void)
Tbl->Cells[j++][1]="";
}
for (i=0;iColWidths [j]=80*FontScale/96;
- Tbl->Cells[j ][0]=iColWidths [j]=22*FontScale/96;
+ Tbl->Cells[j ][0]=iCells[j++][1]="";
}
for (i=0;iColWidths [j]=85*FontScale/96;
- Tbl->Cells[j ][0]=iColWidths [j]=30*FontScale/96;
+ Tbl->Cells[j ][0]=iCells[j++][1]="";
}
for (i=0;iColWidths [j]=60*FontScale/96;
- Tbl->Cells[j ][0]=iColWidths [j]=80*FontScale/96;
+ Tbl->Cells[j ][0]=iCells[j++][1]="";
}
for (i=0;iColWidths [j]=30*FontScale/96;
- Tbl->Cells[j ][0]=iColWidths [j]=85*FontScale/96;
+ Tbl->Cells[j ][0]=iCells[j++][1]="";
}
for (i=0;iColWidths [j]=15*FontScale/96;
- Tbl->Cells[j ][0]="I";
+ Tbl->ColWidths [j]=60*FontScale/96;
+ Tbl->Cells[j ][0]=iCells[j++][1]="";
}
for (i=0;iColWidths [j]=30*FontScale/96;
- Tbl->Cells[j ][0]=iColWidths [j]=15*FontScale/96;
+ Tbl->Cells[j ][0]="I";
Tbl->Cells[j++][1]="";
}
}
@@ -979,13 +974,15 @@ void __fastcall TMonitorDialog::ShowObs(void)
AnsiString s;
obsd_t obs[MAXOBS*2];
char tstr[64],id[32],*code;
- int i,j,k,n=0,nex=ObsMode?NEXOBS:0;
+ int i,j,k,n=0,nex=ObsMode?NEXOBS:0,sys=sys_tbl[SelSys->ItemIndex];
rtksvrlock(&rtksvr);
for (i=0;iCells[j++][i+1]=tstr;
satno2id(obs[i].sat,id);
Tbl->Cells[j++][i+1]=id;
- Tbl->Cells[j++][i+1]=s.sprintf("%d",obs[i].rcv);
+ Tbl->Cells[j++][i+1]=s.sprintf("(%d)",obs[i].rcv);
for (k=0;kCells[j++][i+1]=s.sprintf("%.3f",obs[i].P[k]);
+ code=code2obs(obs[i].code[k]);
+ if (*code) Tbl->Cells[j++][i+1]=s.sprintf("%s",code);
+ else Tbl->Cells[j++][i+1]="-";
}
for (k=0;kCells[j++][i+1]=s.sprintf("%.3f",obs[i].L[k]);
+ if (obs[i].SNR[k]) Tbl->Cells[j++][i+1]=s.sprintf("%.1f",obs[i].SNR[k]*SNR_UNIT);
+ else Tbl->Cells[j++][i+1]=s.sprintf("-");
}
for (k=0;kCells[j++][i+1]=s.sprintf("%.3f",obs[i].D[k]);
+ Tbl->Cells[j++][i+1]=s.sprintf("%.3f",obs[i].P[k]);
}
for (k=0;kCells[j++][i+1]=s.sprintf("%.1f",obs[i].SNR[k]*0.25);
+ Tbl->Cells[j++][i+1]=s.sprintf("%.3f",obs[i].L[k]);
}
for (k=0;kCells[j++][i+1]=s.sprintf("%d",obs[i].LLI[k]);
+ Tbl->Cells[j++][i+1]=s.sprintf("%.3f",obs[i].D[k]);
}
for (k=0;kCells[j++][i+1]=s.sprintf("L%s",code);
- else Tbl->Cells[j++][i+1]="";
+ Tbl->Cells[j++][i+1]=s.sprintf("%d",obs[i].LLI[k]);
}
}
}
//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::SetNav(void)
{
- AnsiString label[]={
- "SAT","PRN","Status","IODE","IODC","Accuracy","Health","Toe","Toc","Ttrans",
- "A (m)","e","i0 (deg)","OMEGA0 (deg)","omega (deg)","M0 (deg)",
- "deltan (deg/s)","OMEGAdot (deg/s)","IDOT (deg/s)",
- "af0 (ns)","af1 (ns/s)","af2 (ns/s2)","TGD (ns)","BGD5a(ns)","BGD5b(ns)",
- "Cuc(rad)","Cus(rad)","Crc(m)","Crs(m)","Cic(rad)","Cis(rad)","Code","Flag",
+ UTF8String label[]={
+ "SAT","PRN","Status","IODE","IODC","URA","SVH","Toe","Toc","Ttrans",
+ "A (m)","e","i0 (\302\260)","\316\2510 (\302\260)","\317\211 (\302\260)",
+ "M0 (\302\260)","\316\224n (\302\260/s)","\316\251dot (\302\260/s)",
+ "IDOT (\302\260/s)","Af0 (ns)","Af1 (ns/s)","Af2 (ns/s2)","TGD1 (ns)",
+ "TGD2 (ns)","Cuc (rad)","Cus (rad)","Crc (m)","Crs (m)","Cic (rad)",
+ "Cis (rad)","Code","Flag",
};
int i,width[]={
- 25,25,30,30,30,25,25,115,115,115, 80,70,60,60,60,60,70,70,70,60,
- 50,50,50,50,50,70,70,70,70,70, 70,30,30
+ 25,25,30,30,30,25,25,115,115,115, 80,80,60,60,60,60,70,70,70,70,
+ 50,50,50,50,70,70,50,50,70, 70,30,30
};
- Tbl->ColCount=33;
+ Tbl->ColCount=32;
Tbl->RowCount=2;
for (i=0;iColCount;i++) {
Tbl->ColWidths[i]=width[i]*FontScale/96;
@@ -1046,21 +1045,38 @@ void __fastcall TMonitorDialog::SetNav(void)
}
}
//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::ShowNav(int sys)
+void __fastcall TMonitorDialog::ShowNav(void)
{
eph_t eph[MAXSAT];
gtime_t time;
AnsiString s;
char tstr[64],id[32];
- int i,j,k,n,valid,prn,off=SelEph->ItemIndex?MAXSAT:0;
+ int i,j,k,n,valid,prn,off=SelEph->ItemIndex*MAXSAT;
+ int sys=sys_tbl[SelSys2->ItemIndex+1];
+
+ if (sys==SYS_GLO) {
+ SetGnav();
+ ShowGnav();
+ return;
+ }
+ if (sys==SYS_SBS) {
+ SetSbsNav();
+ ShowSbsNav();
+ return;
+ }
+ SetNav();
rtksvrlock(&rtksvr);
time=rtksvr.rtk.sol.time;
for (i=0;iCaption="";
-
+
+ if (sys==SYS_GAL) {
+ Label->Caption=(SelEph->ItemIndex%2)?"F/NAV":"I/NAV";
+ }
+ else {
+ Label->Caption="";
+ }
for (k=0,n=1;kCells[j++][n]=s;
Tbl->Cells[j++][n]=s.sprintf("%d",eph[k].sva);
- Tbl->Cells[j++][n]=s.sprintf("%02x",eph[k].svh);
+ Tbl->Cells[j++][n]=s.sprintf("%03x",eph[k].svh);
if (eph[k].toe.time!=0) time2str(eph[k].toe,tstr,0); else strcpy(tstr,"-");
Tbl->Cells[j++][n]=tstr;
if (eph[k].toc.time!=0) time2str(eph[k].toc,tstr,0); else strcpy(tstr,"-");
@@ -1104,36 +1120,36 @@ void __fastcall TMonitorDialog::ShowNav(int sys)
Tbl->Cells[j++][n]=s.sprintf("%.4E",eph[k].deln*R2D);
Tbl->Cells[j++][n]=s.sprintf("%.4E",eph[k].OMGd*R2D);
Tbl->Cells[j++][n]=s.sprintf("%.4E",eph[k].idot*R2D);
- Tbl->Cells[j++][n]=s.sprintf("%.1f",eph[k].f0*1E9);
+ Tbl->Cells[j++][n]=s.sprintf("%.2f",eph[k].f0*1E9);
Tbl->Cells[j++][n]=s.sprintf("%.4f",eph[k].f1*1E9);
Tbl->Cells[j++][n]=s.sprintf("%.4f",eph[k].f2*1E9);
- Tbl->Cells[j++][n]=s.sprintf("%.1f",eph[k].tgd[0]*1E9);
- Tbl->Cells[j++][n]=s.sprintf("%.1f",eph[k].tgd[1]*1E9);
- Tbl->Cells[j++][n]=s.sprintf("%.1f",eph[k].tgd[2]*1E9);
+ Tbl->Cells[j++][n]=s.sprintf("%.2f",eph[k].tgd[0]*1E9);
+ Tbl->Cells[j++][n]=s.sprintf("%.2f",eph[k].tgd[1]*1E9);
Tbl->Cells[j++][n]=s.sprintf("%.4E",eph[k].cuc);
Tbl->Cells[j++][n]=s.sprintf("%.4E",eph[k].cus);
- Tbl->Cells[j++][n]=s.sprintf("%.4E",eph[k].crc);
- Tbl->Cells[j++][n]=s.sprintf("%.4E",eph[k].crs);
+ Tbl->Cells[j++][n]=s.sprintf("%.3f",eph[k].crc);
+ Tbl->Cells[j++][n]=s.sprintf("%.3f",eph[k].crs);
Tbl->Cells[j++][n]=s.sprintf("%.4E",eph[k].cic);
Tbl->Cells[j++][n]=s.sprintf("%.4E",eph[k].cis);
- Tbl->Cells[j++][n]=s.sprintf("%d" ,eph[k].code);
- Tbl->Cells[j++][n]=s.sprintf("%d" ,eph[k].flag);
+ Tbl->Cells[j++][n]=s.sprintf("%03x",eph[k].code);
+ Tbl->Cells[j++][n]=s.sprintf("%02x",eph[k].flag);
n++;
}
}
//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::SetGnav(void)
{
- AnsiString label[]={
- "SAT","PRN","Status","IOD","Freq","Health","Age(days)","Toe","Tof",
- "X (m)","Y (m)","Z (m)","VX (m/s)","VY (m/s)","VZ (m/s)",
- "AX (m/s2)","AY (m/s2)","AZ (m/s2)","Tau (ns)","Gamma (ns/s)"
+ UTF8String label[]={
+ "SAT","PRN","Status","IOD","FCN","SVH","Age (days)","Toe","Tof",
+ "X (m)","Y (m)","Z (m)","Vx (m/s)","Vy (m/s)","Vz (m/s)",
+ "Ax (m/s\302\262)","Ay (m/s\302\262)","Az (m/s\302\262)",
+ "\317\204 (ns)","\316\263 (ns/s)","\316\224\317\204 (ns)"
};
int i,width[]={
- 25,25,30,30,30,25,25,115,115,75,75,75,70,70,70,65,65,65,60,60
+ 25,25,30,30,30,25,25,115,115,75,75,75,70,70,70,65,65,65,70,60,50
};
- Tbl->ColCount=20;
+ Tbl->ColCount=21;
Tbl->RowCount=2;
for (i=0;iColCount;i++) {
Tbl->ColWidths[i]=width[i]*FontScale/96;
@@ -1183,7 +1199,7 @@ void __fastcall TMonitorDialog::ShowGnav(void)
if (geph[i].iode<0) s="-"; else s.sprintf("%d",geph[i].iode);
Tbl->Cells[j++][n]=s;
Tbl->Cells[j++][n]=s.sprintf("%d",geph[i].frq);
- Tbl->Cells[j++][n]=s.sprintf("%d",geph[i].svh);
+ Tbl->Cells[j++][n]=s.sprintf("%02x",geph[i].svh);
Tbl->Cells[j++][n]=s.sprintf("%d",geph[i].age);
if (geph[i].toe.time!=0) time2str(geph[i].toe,tstr,0); else strcpy(tstr,"-");
Tbl->Cells[j++][n]=tstr;
@@ -1198,22 +1214,23 @@ void __fastcall TMonitorDialog::ShowGnav(void)
Tbl->Cells[j++][n]=s.sprintf("%.7f",geph[i].acc[0]);
Tbl->Cells[j++][n]=s.sprintf("%.7f",geph[i].acc[1]);
Tbl->Cells[j++][n]=s.sprintf("%.7f",geph[i].acc[2]);
- Tbl->Cells[j++][n]=s.sprintf("%.1f",geph[i].taun*1E9);
+ Tbl->Cells[j++][n]=s.sprintf("%.2f",geph[i].taun*1E9);
Tbl->Cells[j++][n]=s.sprintf("%.4f",geph[i].gamn*1E9);
+ Tbl->Cells[j++][n]=s.sprintf("%.2f",geph[i].dtaun*1E9);
n++;
}
}
//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::SetSbsNav(void)
{
- AnsiString label[]={
- "SAT","PRN","Status","T0","Tof","Health","URA","X (m)","Y (m)","Z (m)","VX (m/s)",
- "VY (m/s)","VZ (m/s)","AX (m/s2)","AY (m/s2)","AZ (m/s2)",
- "af0 (ns)","af1 (ns/s)"
+ UTF8String label[]={
+ "SAT","PRN","Status","T0","Tof","SVH","URA","X (m)","Y (m)","Z (m)",
+ "Vx (m/s)","Vy (m/s)","Vz (m/s)","Ax (m/s\302\262)","Ay (m/s\302\262)",
+ "Az (m/s\302\262)","Af0 (ns)","Af1 (ns/s)"
};
int i,width[]={25,25,30,115,115,30,30,75,75,75,70,70,70,65,65,65,60,60};
- Tbl->ColCount=17;
+ Tbl->ColCount=18;
Tbl->RowCount=2;
for (i=0;iColCount;i++) {
Tbl->ColWidths[i]=width[i]*FontScale/96;
@@ -1268,7 +1285,7 @@ void __fastcall TMonitorDialog::ShowSbsNav(void)
if (seph[i].tof.time) time2str(seph[i].tof,tstr,0);
else strcpy(tstr,"-");
Tbl->Cells[j++][n]=tstr;
- Tbl->Cells[j++][n]=s.sprintf("%2x", seph[i].svh);
+ Tbl->Cells[j++][n]=s.sprintf("%02x",seph[i].svh);
Tbl->Cells[j++][n]=s.sprintf("%d", seph[i].sva);
Tbl->Cells[j++][n]=s.sprintf("%.2f",seph[i].pos[0]);
Tbl->Cells[j++][n]=s.sprintf("%.2f",seph[i].pos[1]);
@@ -1279,7 +1296,7 @@ void __fastcall TMonitorDialog::ShowSbsNav(void)
Tbl->Cells[j++][n]=s.sprintf("%.7f",seph[i].acc[0]);
Tbl->Cells[j++][n]=s.sprintf("%.7f",seph[i].acc[1]);
Tbl->Cells[j++][n]=s.sprintf("%.7f",seph[i].acc[2]);
- Tbl->Cells[j++][n]=s.sprintf("%.1f",seph[i].af0*1E9);
+ Tbl->Cells[j++][n]=s.sprintf("%.2f",seph[i].af0*1E9);
Tbl->Cells[j++][n]=s.sprintf("%.4f",seph[i].af1*1E9);
n++;
}
@@ -1288,7 +1305,7 @@ void __fastcall TMonitorDialog::ShowSbsNav(void)
void __fastcall TMonitorDialog::SetIonUtc(void)
{
AnsiString label[]={"Parameter","Value"};
- int i,width[]={220,380};
+ int i,width[]={270,330};
Tbl->ColCount=2;
Tbl->RowCount=2;
@@ -1301,8 +1318,8 @@ void __fastcall TMonitorDialog::SetIonUtc(void)
//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::ShowIonUtc(void)
{
- double utc_gps[4],utc_glo[4],utc_gal[4],utc_qzs[4];
- double ion_gps[8],ion_gal[4],ion_qzs[8];
+ double utc_gps[8],utc_glo[8],utc_gal[8],utc_qzs[8],utc_cmp[8],utc_irn[9];
+ double ion_gps[8],ion_gal[4],ion_qzs[8],ion_cmp[8],ion_irn[8];
gtime_t time;
AnsiString s;
double tow=0.0;
@@ -1311,19 +1328,22 @@ void __fastcall TMonitorDialog::ShowIonUtc(void)
rtksvrlock(&rtksvr);
time=rtksvr.rtk.sol.time;
- for (i=0;i<4;i++) utc_gps[i]=rtksvr.nav.utc_gps[i];
- for (i=0;i<4;i++) utc_glo[i]=rtksvr.nav.utc_glo[i];
- for (i=0;i<4;i++) utc_gal[i]=rtksvr.nav.utc_gal[i];
- for (i=0;i<4;i++) utc_qzs[i]=rtksvr.nav.utc_qzs[i];
+ for (i=0;i<8;i++) utc_gps[i]=rtksvr.nav.utc_gps[i];
+ for (i=0;i<8;i++) utc_glo[i]=rtksvr.nav.utc_glo[i];
+ for (i=0;i<8;i++) utc_gal[i]=rtksvr.nav.utc_gal[i];
+ for (i=0;i<8;i++) utc_qzs[i]=rtksvr.nav.utc_qzs[i];
+ for (i=0;i<8;i++) utc_cmp[i]=rtksvr.nav.utc_cmp[i];
+ for (i=0;i<9;i++) utc_irn[i]=rtksvr.nav.utc_irn[i];
for (i=0;i<8;i++) ion_gps[i]=rtksvr.nav.ion_gps[i];
for (i=0;i<4;i++) ion_gal[i]=rtksvr.nav.ion_gal[i];
for (i=0;i<8;i++) ion_qzs[i]=rtksvr.nav.ion_qzs[i];
- leaps=rtksvr.nav.leaps;
+ for (i=0;i<8;i++) ion_cmp[i]=rtksvr.nav.ion_cmp[i];
+ for (i=0;i<8;i++) ion_irn[i]=rtksvr.nav.ion_irn[i];
rtksvrunlock(&rtksvr);
Label->Caption="";
- Tbl->RowCount=17;
+ Tbl->RowCount=21;
i=1;
time2str(timeget(),tstr,3);
@@ -1340,54 +1360,82 @@ void __fastcall TMonitorDialog::ShowIonUtc(void)
if (time.time!=0) tow=time2gpst(time,&week);
Tbl->Cells[0][i ]="GPS Week/Time (s)";
- Tbl->Cells[1][i++]=s.sprintf("%d,%.3f",week,tow);
+ Tbl->Cells[1][i++]=s.sprintf("%d, %.3f",week,tow);
+
+ Tbl->Cells[0][i ]="Leap Seconds dt_LS(s), WN_LSF,DN, dt_LSF(s)";
+ Tbl->Cells[1][i++]=s.sprintf("%.0f, %.0f, %.0f, %.0f",utc_gps[4],utc_gps[5],
+ utc_gps[6],utc_gps[7]);
+
+ Tbl->Cells[0][i ]="GPST-UTC Ref Week, Time(s), A0(ns), A1(ns/s)";
+ Tbl->Cells[1][i++]=s.sprintf("%.0f, %.0f, %.3f, %.5E",utc_gps[3],utc_gps[2],
+ utc_gps[0]*1E9,utc_gps[1]*1E9);
+
+ Tbl->Cells[0][i ]="GLOT-UTC Tau_C, Tau_GPS(ns)";
+ Tbl->Cells[1][i++]=s.sprintf("%.9f, %.3f",utc_glo[0],utc_glo[1]*1E9);
+
+ Tbl->Cells[0][i ]="GST-UTC Ref Week, Time(s), A0(ns), A1(ns/s)";
+ Tbl->Cells[1][i++]=s.sprintf("%.0f, %.0f, %.3f, %.5E",utc_gal[3],utc_gal[2],
+ utc_gal[0]*1E9,utc_gal[1]*1E9);
- Tbl->Cells[0][i ]="Leap Seconds (GPST-UTC) (s)";
- Tbl->Cells[1][i++]=s.sprintf("%d",leaps);
+ Tbl->Cells[0][i ]="QZSST-UTC Ref Week, Time(s), A0(ns), A1(ns/s)";
+ Tbl->Cells[1][i++]=s.sprintf("%.0f, %.0f, %.3f, %.5E",utc_qzs[3],utc_qzs[2],
+ utc_qzs[0]*1E9,utc_qzs[1]*1E9);
- Tbl->Cells[0][i ]="GPST-UTC Reference Week/Time (s)";
- Tbl->Cells[1][i++]=s.sprintf("%.0f,%.0f",utc_gps[3],utc_gps[2]);
+ Tbl->Cells[0][i ]="BDST-UTC Ref Week, Time(s), A0(ns), A1(ns/s)";
+ Tbl->Cells[1][i++]=s.sprintf("%.0f, %.0f, %.3f, %.5E",utc_cmp[3],utc_cmp[2],
+ utc_cmp[0]*1E9,utc_cmp[1]*1E9);
- Tbl->Cells[0][i ]="GPST-UTC A0(ns),A1(ns/s)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.6f",utc_gps[0]*1E9,utc_gps[1]*1E9);
+ Tbl->Cells[0][i ]="IRNT-UTC Ref Week,Time(s), A0(ns), A1(ns/s), A2(ns/s2)";
+ Tbl->Cells[1][i++]=s.sprintf("%.0f, %.0f, %.3f, %.5E, %.5E",utc_irn[3],
+ utc_irn[2],utc_irn[0]*1E9,utc_irn[1]*1E9,
+ utc_irn[8]*1E9);
- Tbl->Cells[0][i ]="GST-GPS Reference Week/Time (s)";
- Tbl->Cells[1][i++]=s.sprintf("%.0f,%.0f",utc_gal[3],utc_gal[2]);
+ Tbl->Cells[0][i ]="GPS Iono Parameters Alpha0-3";
+ Tbl->Cells[1][i++]=s.sprintf("%.5E, %.5E, %.5E, %.5E",
+ ion_gps[0],ion_gps[1],ion_gps[2],ion_gps[3]);
- Tbl->Cells[0][i ]="GST-GPS A0(ns),A1(ns/s)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.6f",utc_gal[0]*1E9,utc_gal[1]*1E9);
+ Tbl->Cells[0][i ]="GPS Iono Parameters Beta0-3";
+ Tbl->Cells[1][i++]=s.sprintf("%.5E, %.5E, %.5E, %.5E",
+ ion_gps[4],ion_gps[5],ion_gps[6],ion_gps[7]);
- Tbl->Cells[0][i ]="QZST-GPS Reference Week/Time (s)";
- Tbl->Cells[1][i++]=s.sprintf("%.0f,%.0f",utc_qzs[3],utc_qzs[2]);
+ Tbl->Cells[0][i ]="Galileo Iono Parameters 0-2";
+ Tbl->Cells[1][i++]=s.sprintf("%.5E, %.5E, %.5E",ion_gal[0],ion_gal[1],
+ ion_gal[2]);
- Tbl->Cells[0][i ]="QZST-GPS A0(ns),A1(ns/s)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.6f",utc_qzs[0]*1E9,utc_qzs[1]*1E9);
+ Tbl->Cells[0][i ]="QZSS Iono Parameters Alpha0-3";
+ Tbl->Cells[1][i++]=s.sprintf("%.5E, %.5E, %.5E, %.5E",
+ ion_qzs[0],ion_qzs[1],ion_qzs[2],ion_qzs[3]);
- Tbl->Cells[0][i ]="GPS Iono Parameters Alpha0-Alpha3";
- Tbl->Cells[1][i++]=s.sprintf("%.5E,%.5E,%.5E,%.5E",ion_gps[0],ion_gps[1],ion_gps[2],ion_gps[3]);
+ Tbl->Cells[0][i ]="QZSS Iono Parameters Beta0-3";
+ Tbl->Cells[1][i++]=s.sprintf("%.5E, %.5E, %.5E, %.5E",
+ ion_qzs[4],ion_qzs[5],ion_qzs[6],ion_qzs[7]);
- Tbl->Cells[0][i ]="GPS Iono Parameters Beta0-Beta3";
- Tbl->Cells[1][i++]=s.sprintf("%.5E,%.5E,%.5E,%.5E",ion_gps[4],ion_gps[5],ion_gps[6],ion_gps[7]);
+ Tbl->Cells[0][i ]="BDS Iono Parameters Alpha0-3";
+ Tbl->Cells[1][i++]=s.sprintf("%.5E, %.5E, %.5E, %.5E",
+ ion_cmp[0],ion_cmp[1],ion_cmp[2],ion_cmp[3]);
- Tbl->Cells[0][i ]="GALILEO Iono Parameters 0-2";
- Tbl->Cells[1][i++]=s.sprintf("%.5E,%.5E,%.5E",ion_gal[0],ion_gal[1],ion_gal[2]);
+ Tbl->Cells[0][i ]="BDS Iono Parameters Beta0-3";
+ Tbl->Cells[1][i++]=s.sprintf("%.5E, %.5E, %.5E, %.5E",
+ ion_cmp[4],ion_cmp[5],ion_cmp[6],ion_cmp[7]);
- Tbl->Cells[0][i ]="QZS Iono Parameters Alpha0-Alpha3";
- Tbl->Cells[1][i++]=s.sprintf("%.5E,%.5E,%.5E,%.5E",ion_qzs[0],ion_qzs[1],ion_qzs[2],ion_qzs[3]);
+ Tbl->Cells[0][i ]="NavIC Iono Parameters Alpha0-3";
+ Tbl->Cells[1][i++]=s.sprintf("%.5E, %.5E, %.5E, %.5E",
+ ion_irn[0],ion_irn[1],ion_irn[2],ion_irn[3]);
- Tbl->Cells[0][i ]="QZS Iono Parameters Beta0-Beta3";
- Tbl->Cells[1][i++]=s.sprintf("%.5E,%.5E,%.5E,%.5E",ion_qzs[4],ion_qzs[5],ion_qzs[6],ion_qzs[7]);
+ Tbl->Cells[0][i ]="NavIC Iono Parameters Beta0-3";
+ Tbl->Cells[1][i++]=s.sprintf("%.5E, %.5E, %.5E, %.5E",
+ ion_irn[4],ion_irn[5],ion_irn[6],ion_irn[7]);
}
//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::SetStr(void)
{
AnsiString label[]={
- "Stream","Type","Format","Mode","State","Input (bytes)","Input (bps)",
- "Output (bytes)","Output (bps)","Path","Message"
+ "STR","Stream","Type","Format","Mode","State","Input(bytes)","Input(bps)",
+ "Output(bytes)","Output(bps)","Path","Message"
};
- int i,width[]={95,70,80,35,35,70,70,70,70,220,220};
+ int i,width[]={25,95,70,80,35,35,70,70,70,70,220,220};
- Tbl->ColCount=11;
+ Tbl->ColCount=12;
Tbl->RowCount=2;
for (i=0;iColCount;i++) {
Tbl->ColWidths[i]=width[i]*FontScale/96;
@@ -1399,13 +1447,14 @@ void __fastcall TMonitorDialog::SetStr(void)
void __fastcall TMonitorDialog::ShowStr(void)
{
AnsiString ch[]={
- "Input Rover","Input Base/NRTK","Input Ephemeris","Output Solution 1",
- "Output Solution 2","Log Rover","Log Base/NRTK","Log Ephemeris",
- "Monitor Port"
+ "Input Rover","Input Base","Input Correction","Output Solution 1",
+ "Output Solution 2","Log Rover","Log Base","Log Correction",
+ "Monitor"
};
AnsiString type[]={
- "-","Serial","File","TCP Server","TCP Client","UDP","NTRIP Server",
- "NTRIP Client","FTP","HTTP","NTRIP Caster S","NTRIP Caster C"
+ "-","Serial","File","TCP Server","TCP Client","NTRIP Server",
+ "NTRIP Client","FTP","HTTP","NTRIP Caster","UDP Server",
+ "UDP Client",""
};
AnsiString outformat[]={
"Lat/Lon/Height","X/Y/Z-ECEF","E/N/U-Baseline","NMEA-0183"
@@ -1428,9 +1477,11 @@ void __fastcall TMonitorDialog::ShowStr(void)
Label->Caption="";
for (i=0;i<9;i++) {
j=0;
+ Tbl->Cells[j++][i+1]=s.sprintf("(%d)",i+1);
Tbl->Cells[j++][i+1]=ch[i];
Tbl->Cells[j++][i+1]=type[stream[i].type];
- if (i<3) form=formatstrs[format[i]];
+ if (!stream[i].type) form="-";
+ else if (i<3) form=formatstrs[format[i]];
else if (i<5||i==8) form=outformat[format[i]];
else form="-";
Tbl->Cells[j++][i+1]=form;
@@ -1463,11 +1514,11 @@ void __fastcall TMonitorDialog::ShowStr(void)
void __fastcall TMonitorDialog::SetSbsMsg(void)
{
AnsiString label[]={
- "Trcv","PRN","Type","Message","Contents"
+ "Trcv","PRN","STR","Type","Message","Contents"
};
- int i,width[]={115,25,25,420,200};
+ int i,width[]={115,25,25,25,420,200};
- Tbl->ColCount=5;
+ Tbl->ColCount=6;
Tbl->RowCount=2;
for (i=0;iColCount;i++) {
Tbl->ColWidths[i]=width[i]*FontScale/96;
@@ -1489,24 +1540,34 @@ void __fastcall TMonitorDialog::ShowSbsMsg(void)
"Mixed Fast Corrections/Long Term Satellite Error Corrections",
"Long Term Satellite Error Corrections","Ionospheric Delay Corrections",
"WAAS Service Messages","Clock-Ephemeris Covariance Matrix Message",
- "Internal Test Message","Null Message",""
+ "Internal Test Message","Null Message",
+ "QZSS: DC Report (JMA)","QZSS: DC Report (Other)",
+ "QZSS: Monitoring Station Info","QZSS: PRN Mask",
+ "QZSS: Data Issue Number","QZSS: DGPS Correction",
+ "QZSS: Satellite Health",
+ ""
};
- const int id[]={0,1,2,3,4,5,6,7,9,10,12,17,18,24,25,26,27,28,62,63,-1};
+ const int id[]={0,1,2,3,4,5,6,7,9,10,12,17,18,24,25,26,27,28,62,63,
+ 43,44,47,48,49,50,51,-1};
char str[256],*p;
- int i,j,k,n,type;
+ int i,j,k,n,type,prn;
+
rtksvrlock(&rtksvr); // lock
- n=rtksvr.nsbs;
- for (i=0;iRowCount=n<=0?2:n+1;
Label->Caption="";
for (i=0;iCells[j++][i+1]=str;
- Tbl->Cells[j++][i+1]=s.sprintf("%d",msg[i].prn);
+ Tbl->Cells[j++][i+1]=s.sprintf("%d",prn);
+ Tbl->Cells[j++][i+1]=s.sprintf("(%d)",msg[i].rcv);
type=msg[i].msg[1]>>2;
Tbl->Cells[j++][i+1]=s.sprintf("%d",type);
p=str;
@@ -1540,7 +1601,7 @@ void __fastcall TMonitorDialog::ShowSbsLong(void)
sbssat_t sbssat;
sbssatp_t *satp;
gtime_t time;
- int i,j,valid;
+ int i,j,n,valid;
char tstr[64],id[32];
rtksvrlock(&rtksvr); // lock
@@ -1549,10 +1610,10 @@ void __fastcall TMonitorDialog::ShowSbsLong(void)
rtksvrunlock(&rtksvr); // unlock
Label->Caption="";
- Tbl->RowCount=sbssat.nsat<=0?2:sbssat.nsat+1;
+ Tbl->RowCount=sbssat.nsat<=0?1:sbssat.nsat+1;
Label->Caption=s.sprintf("IODP:%2d System Latency:%2d s",
sbssat.iodp,sbssat.tlat);
- for (i=0;iRowCount;i++) {
+ for (i=0;ilcorr.t0)<=MAXSBSAGEL&&satp->lcorr.t0.time;
@@ -1642,7 +1703,7 @@ void __fastcall TMonitorDialog::ShowSbsFast(void)
sbssat_t sbssat;
sbssatp_t *satp;
gtime_t time;
- int i,j,valid;
+ int i,j,n,valid;
char tstr[64],id[32];
rtksvrlock(&rtksvr); // lock
@@ -1651,9 +1712,9 @@ void __fastcall TMonitorDialog::ShowSbsFast(void)
rtksvrunlock(&rtksvr); // unlock
Label->Caption="";
- Tbl->RowCount=sbssat.nsat<=0?2:sbssat.nsat+1;
- Label->Caption=s.sprintf("IODP:%2d System Latency:%2d s",sbssat.iodp,sbssat.tlat);
- for (i=0;iRowCount;i++) {
+ Tbl->RowCount=sbssat.nsat<=0?1:sbssat.nsat+1;
+ //Label->Caption=s.sprintf("IODP:%2d System Latency:%2d s",sbssat.iodp,sbssat.tlat);
+ for (i=0;ifcorr.t0))<=MAXSBSAGEF&&satp->fcorr.t0.time&&
@@ -1689,16 +1750,14 @@ void __fastcall TMonitorDialog::SetRtcm(void)
void __fastcall TMonitorDialog::ShowRtcm(void)
{
AnsiString s;
- rtcm_t rtcm;
+ static rtcm_t rtcm;
double pos[3]={0};
int i=1,j,format;
char tstr[64]="-",mstr1[1024]="",mstr2[1024]="",*p1=mstr1,*p2=mstr2;
- if (SelStr->ItemIndex>3) return;
-
rtksvrlock(&rtksvr);
- format=rtksvr.format[SelStr->ItemIndex];
- rtcm=rtksvr.rtcm[SelStr->ItemIndex];
+ format=rtksvr.format[Str1];
+ rtcm=rtksvr.rtcm[Str1];
rtksvrunlock(&rtksvr);
if (rtcm.time.time) time2str(rtcm.time,tstr,3);
@@ -1714,15 +1773,19 @@ void __fastcall TMonitorDialog::ShowRtcm(void)
if (rtcm.nmsg3[j]==0) continue;
p2+=sprintf(p2,"%s%d(%d)",p2>mstr2?",":"",j+1000,rtcm.nmsg3[j]);
}
+ for (j=300;j<399;j++) {
+ if (rtcm.nmsg3[j]==0) continue;
+ p2+=sprintf(p2,"%s%d(%d)",p2>mstr2?",":"",j+3770,rtcm.nmsg3[j]);
+ }
if (rtcm.nmsg3[0]>0) {
sprintf(p2,"%sother(%d)",p2>mstr2?",":"",rtcm.nmsg3[0]);
}
Label->Caption="";
- Tbl->RowCount=27;
+ Tbl->RowCount=16;
Tbl->Cells[0][i ]="Format";
- Tbl->Cells[1][i++]=format==STRFMT_RTCM2?"RTCM2":"RTCM3";
+ Tbl->Cells[1][i++]=format==STRFMT_RTCM2?"RTCM 2":"RTCM 3";
Tbl->Cells[0][i ]="Message Time";
Tbl->Cells[1][i++]=tstr;
@@ -1736,43 +1799,6 @@ void __fastcall TMonitorDialog::ShowRtcm(void)
Tbl->Cells[0][i ]="Sequence No";
Tbl->Cells[1][i++]=s.sprintf("%d",rtcm.seqno);
- Tbl->Cells[0][i ]="Station Pos X/Y/Z (m)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",rtcm.sta.pos[0],rtcm.sta.pos[1],rtcm.sta.pos[2]);
-
- if (norm(rtcm.sta.pos,3)>0.0) ecef2pos(rtcm.sta.pos,pos);
- Tbl->Cells[0][i ]="Station Lat/Lon/Height (deg,m)";
- Tbl->Cells[1][i++]=s.sprintf("%.8f,%.8f,%.3f",pos[0]*R2D,pos[1]*R2D,pos[2]);
-
- Tbl->Cells[0][i ]="ITRF Realization Year";
- Tbl->Cells[1][i++]=s.sprintf("%d",rtcm.sta.itrf);
-
- Tbl->Cells[0][i ]="Antenna Delta Type";
- Tbl->Cells[1][i++]=rtcm.sta.deltype?"X/Y/Z":"E/N/U";
-
- Tbl->Cells[0][i ]="Antenna Delta (m)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",rtcm.sta.del[0],rtcm.sta.del[1],rtcm.sta.del[2]);
-
- Tbl->Cells[0][i ]="Antenna Height (m)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f",rtcm.sta.hgt);
-
- Tbl->Cells[0][i ]="Antenna Descriptor";
- Tbl->Cells[1][i++]=rtcm.sta.antdes;
-
- Tbl->Cells[0][i ]="Antenna Setup Id";
- Tbl->Cells[1][i++]=s.sprintf("%d",rtcm.sta.antsetup);
-
- Tbl->Cells[0][i ]="Antenna Serial No";
- Tbl->Cells[1][i++]=rtcm.sta.antsno;
-
- Tbl->Cells[0][i ]="Receiver Type Descriptor";
- Tbl->Cells[1][i++]=rtcm.sta.rectype;
-
- Tbl->Cells[0][i ]="Receiver Firmware Version";
- Tbl->Cells[1][i++]=rtcm.sta.recver;
-
- Tbl->Cells[0][i ]="Receiver Serial No";
- Tbl->Cells[1][i++]=rtcm.sta.recsno;
-
Tbl->Cells[0][i ]="RTCM Special Message";
Tbl->Cells[1][i++]=rtcm.msg;
@@ -1797,8 +1823,11 @@ void __fastcall TMonitorDialog::ShowRtcm(void)
Tbl->Cells[0][i ]="MSM Signals for SBAS";
Tbl->Cells[1][i++]=rtcm.msmtype[4];
- Tbl->Cells[0][i ]="MSM Signals for BeiDou";
+ Tbl->Cells[0][i ]="MSM Signals for BDS";
Tbl->Cells[1][i++]=rtcm.msmtype[5];
+
+ Tbl->Cells[0][i ]="MSM Signals for NavIC";
+ Tbl->Cells[1][i++]=rtcm.msmtype[6];
}
//---------------------------------------------------------------------------
void __fastcall TMonitorDialog::SetRtcmDgps(void)
@@ -1875,25 +1904,24 @@ void __fastcall TMonitorDialog::ShowRtcmSsr(void)
AnsiString s;
gtime_t time;
ssr_t ssr[MAXSAT];
- int i,j,k,valid;
+ int i,j,k,n,valid,sat[MAXSAT],sys=sys_tbl[SelSys2->ItemIndex+1];
char tstr[64],id[32],buff[256]="",*p;
rtksvrlock(&rtksvr);
time=rtksvr.rtk.sol.time;
- for (i=0;iItemIndex<3) {
- ssr[i]=rtksvr.rtcm[SelStr->ItemIndex].ssr[i];
- }
- else ssr[i]=rtksvr.nav.ssr[i];
+ for (i=n=0;iCaption="";
- Tbl->RowCount=MAXSAT+1;
-
- for (i=0;iRowCount;i++) {
+ Tbl->RowCount=n+1;
+
+ for (i=0;iCells[j++][i+1]=id;
valid=ssr[i].t0[0].time&&fabs(timediff(time,ssr[i].t0[0]))<=1800.0;
Tbl->Cells[j++][i+1]=valid?"OK":"-";
@@ -1917,178 +1945,23 @@ void __fastcall TMonitorDialog::ShowRtcmSsr(void)
buff[0]='\0';
for (p=buff,k=0;kCells[j++][i+1]=buff;
buff[0]='\0';
for (p=buff,k=0;kCells[j++][i+1]=buff;
}
}
//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::SetLexMsg(void)
+void __fastcall TMonitorDialog::SetRefSta(void)
{
AnsiString label[]={"Parameter","Value"};
- int i,width[]={140,450};
-
- Tbl->ColCount=2;
- Tbl->RowCount=2;
- for (i=0;iColCount;i++) {
- Tbl->ColWidths[i]=width[i]*FontScale/96;
- Tbl->Cells[i][0]=label[i];
- Tbl->Cells[i][1]="";
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::ShowLexMsg(void)
-{
- AnsiString s;
- raw_t raw;
- int i=1,j,k,format;
- char tstr[64]="-",mstr[2048]="",*p;
-
- if (SelStr->ItemIndex>3) return;
-
- rtksvrlock(&rtksvr);
- format=rtksvr.format[SelStr->ItemIndex];
- raw=rtksvr.raw[SelStr->ItemIndex];
- rtksvrunlock(&rtksvr);
-
- Label->Caption="";
-
- if (format==STRFMT_LEXR&&raw.time.time) time2str(raw.time,tstr,3);
-
- Tbl->RowCount=15;
-
- Tbl->Cells[0][i ]="Receiver Time";
- Tbl->Cells[1][i++]=tstr;
-
- Tbl->Cells[0][i ]="Signal Tracking Status";
- Tbl->Cells[1][i++]=s.sprintf("%d",raw.lexmsg.stat);
-
- Tbl->Cells[0][i ]="Signal Tracking Time (s)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f",raw.lexmsg.ttt/1000.0);
-
- Tbl->Cells[0][i ]="Signal Level (dBHz)";
- Tbl->Cells[1][i++]=s.sprintf("%.1f",raw.lexmsg.snr*0.25);
-
- Tbl->Cells[0][i ]="PRN Number";
- Tbl->Cells[1][i++]=s.sprintf("%d",raw.lexmsg.prn);
-
- Tbl->Cells[0][i ]="Message Type";
- Tbl->Cells[1][i++]=s.sprintf("%d",raw.lexmsg.type);
-
- Tbl->Cells[0][i ]="Alert Flag";
- Tbl->Cells[1][i++]=s.sprintf("%d",raw.lexmsg.alert);
-
- for (j=0;j<7;j++) {
- p=mstr;
- for (k=0;k<32&&j*32+k<212;k++) {
- p+=sprintf(p,"%02X%s",raw.lexmsg.msg[j*32+k],k%4==3?" ":"");
- }
- Tbl->Cells[0][i ]=s.sprintf("Data Part (%d-%d)",j*32*8,
- (j*32+k)*8-1<1695?(j*32+k)*8-1:1694);
- Tbl->Cells[1][i++]=mstr;
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::SetLexEph(void)
-{
- AnsiString s,label[]={
- "SAT","Status","Tof","Health","Toe","URA","PosX(m)","PosY(m)","PosZ(m)",
- "VelX(m/s)","VelY(m/s)","VelZ(m/s)",
- "AccX(m/s2)","AccY(m/s2)","AccZ(m/s2)",
- "JerkX(m/s3)","JerkY(m/s3)","JerkZ(m/s3)",
- "Af0(ns)","Af1(ns/s)","TGD(ns)",
- "ISCL1C/A(ns)","ISCL2C(ns)","ISCL5I(ns)","ISCL5Q(ns)",
- "ISCL1CP(ns)","ISCL1CD(ns)","ISCLEX(ns)"
- };
- int i,width[]={
- 25,30,115,35,115,25,80,80,80,80,80,80,80,80,80,80,80,80,60,50,50,50,
- 50,50,50,50,50,50
- };
- char *code;
-
- Tbl->ColCount=28;
- Tbl->RowCount=2;
- for (i=0;i<28;i++) {
- Tbl->ColWidths[i]=width[i]*FontScale/96;
- Tbl->Cells[i][0]=label[i];
- Tbl->Cells[i][1]="";
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::ShowLexEph(void)
-{
- AnsiString s;
- gtime_t time;
- lexeph_t lexeph[MAXSAT];
- int i,j,k,n,sys,valid;
- char tstr[64],health[16],id[32],*p;
+ int i,width[]={220,520};
- rtksvrlock(&rtksvr);
- time=rtksvr.rtk.sol.time;
- for (i=0;iCaption="";
-
- for (i=0,n=1;iCells[j++][n]=id;
- valid=lexeph[i].toe.time&&fabs(timediff(time,lexeph[i].toe))<=360.0;
- Tbl->Cells[j++][n]=valid?"OK":"-";
-
- if (lexeph[i].tof.time==0) sprintf(tstr,"-");
- else time2str(lexeph[i].tof,tstr,0);
- Tbl->Cells[j++][n]=tstr;
-
- for (k=0,p=health;k<5;k++) {
- p+=sprintf(p,"%d",(lexeph[i].health>>(4-k))&1);
- }
- Tbl->Cells[j++][n]=health;
-
- if (lexeph[i].toe.time==0) sprintf(tstr,"-");
- else time2str(lexeph[i].toe,tstr,0);
- Tbl->Cells[j++][n]=tstr;
-
- Tbl->Cells[j++][n]=s.sprintf("%d",lexeph[i].ura);
-
- for (k=0;k<3;k++) {
- Tbl->Cells[j++][n]=s.sprintf("%.3f",lexeph[i].pos[k]);
- }
- for (k=0;k<3;k++) {
- Tbl->Cells[j++][n]=s.sprintf("%.6f",lexeph[i].vel[k]);
- }
- for (k=0;k<3;k++) {
- Tbl->Cells[j++][n]=s.sprintf("%.6E",lexeph[i].acc[k]);
- }
- for (k=0;k<3;k++) {
- Tbl->Cells[j++][n]=s.sprintf("%.6E",lexeph[i].jerk[k]);
- }
- Tbl->Cells[j++][n]=s.sprintf("%.1f",lexeph[i].af0*1E9);
- Tbl->Cells[j++][n]=s.sprintf("%.4f",lexeph[i].af1*1E9);
- Tbl->Cells[j++][n]=s.sprintf("%.1f",lexeph[i].tgd*1E9);
- for (k=0;k<7;k++) {
- Tbl->Cells[j++][n]=s.sprintf("%.1f",lexeph[i].isc[k]*1E9);
- }
- n++;
- }
- Tbl->RowCount=n;
-}
-//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::SetLexIon(void)
-{
- AnsiString label[]={"Parameter","Value"};
- int i,width[]={220,380};
-
Tbl->ColCount=2;
Tbl->RowCount=2;
for (i=0;iColCount;i++) {
@@ -2098,106 +1971,83 @@ void __fastcall TMonitorDialog::SetLexIon(void)
}
}
//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::ShowLexIon(void)
+void __fastcall TMonitorDialog::ShowRefSta(void)
{
AnsiString s;
- lexion_t lexion;
- int i=1,j;
+ gtime_t time;
+ sta_t sta;
+ double pos[3]={0};
+ int i=1,format;
char tstr[64]="-";
rtksvrlock(&rtksvr);
- lexion=rtksvr.nav.lexion;
+ format=rtksvr.format[Str1];
+ if (format==STRFMT_RTCM2||format==STRFMT_RTCM3) {
+ time=rtksvr.rtcm[Str1].time;
+ sta=rtksvr.rtcm[Str1].sta;
+ }
+ else {
+ time=rtksvr.raw[Str1].time;
+ sta=rtksvr.raw[Str1].sta;
+ }
rtksvrunlock(&rtksvr);
Label->Caption="";
- if (lexion.t0.time) time2str(lexion.t0,tstr,3);
+ Tbl->RowCount=17;
- Tbl->RowCount=10;
+ Tbl->Cells[0][i ]="Format";
+ Tbl->Cells[1][i++]=formatstrs[format];
- Tbl->Cells[0][i ]="Reference Time (GPST)";
+ if (time.time) time2str(time,tstr,3);
+ Tbl->Cells[0][i ]="Message Time";
Tbl->Cells[1][i++]=tstr;
- Tbl->Cells[0][i ]="Valid Time Tspan (s)";
- Tbl->Cells[1][i++]=s.sprintf("%.1f",lexion.tspan);
-
- Tbl->Cells[0][i ]="Origin of Approx Function Lat/Lon (deg)";
- Tbl->Cells[1][i++]=s.sprintf("%.4f %.4f",lexion.pos0[0]*R2D,lexion.pos0[1]*R2D);
+ Tbl->Cells[0][i ]="Station Pos X/Y/Z (m)";
+ Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",sta.pos[0],sta.pos[1],sta.pos[2]);
- Tbl->Cells[0][i ]="0-0 Degree Coefficient E00 (m)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f",lexion.coef[0][0]);
+ if (norm(sta.pos,3)>0.0) ecef2pos(sta.pos,pos);
+ Tbl->Cells[0][i ]="Station Lat/Lon/Height (deg,m)";
+ Tbl->Cells[1][i++]=s.sprintf("%.8f,%.8f,%.3f",pos[0]*R2D,pos[1]*R2D,pos[2]);
- Tbl->Cells[0][i ]="1-1 Degree Coefficient E10 (m/rad)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f",lexion.coef[1][0]);
+ Tbl->Cells[0][i ]="ITRF Realization Year";
+ Tbl->Cells[1][i++]=s.sprintf("%d",sta.itrf);
- Tbl->Cells[0][i ]="2-0 Degree Coefficient E20 (m/rad^2)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f",lexion.coef[2][0]);
+ Tbl->Cells[0][i ]="Antenna Delta Type";
+ Tbl->Cells[1][i++]=sta.deltype?"X/Y/Z":"E/N/U";
- Tbl->Cells[0][i ]="0-1 Degree Coefficient E01 (m/rad)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f",lexion.coef[0][1]);
+ Tbl->Cells[0][i ]="Antenna Delta (m)";
+ Tbl->Cells[1][i++]=s.sprintf("%.3f,%.3f,%.3f",sta.del[0],sta.del[1],sta.del[2]);
- Tbl->Cells[0][i ]="1-1 Degree Coefficient E11 (m/rad^2)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f",lexion.coef[1][1]);
+ Tbl->Cells[0][i ]="Antenna Height (m)";
+ Tbl->Cells[1][i++]=s.sprintf("%.3f",sta.hgt);
- Tbl->Cells[0][i ]="2-1 Degree Coefficient E21 (m/rad^3)";
- Tbl->Cells[1][i++]=s.sprintf("%.3f",lexion.coef[2][1]);
-}
-//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::SetIonCorr(void)
-{
- AnsiString s;
- int i,j;
+ Tbl->Cells[0][i ]="Antenna Descriptor";
+ Tbl->Cells[1][i++]=sta.antdes;
- Tbl->ColCount=(IONLON2-IONLON1)/DIONLON+2;
- Tbl->RowCount=(IONLAT1-IONLAT2)/DIONLAT+2;
+ Tbl->Cells[0][i ]="Antenna Setup Id";
+ Tbl->Cells[1][i++]=s.sprintf("%d",sta.antsetup);
- Tbl->ColWidths[0]=40*FontScale/96;
- Tbl->Cells[0][0]="";
+ Tbl->Cells[0][i ]="Antenna Serial No";
+ Tbl->Cells[1][i++]=sta.antsno;
- for (i=1;iColCount;i++) {
- Tbl->ColWidths[i]=40*FontScale/96;
- Tbl->Cells[i][0]=s.sprintf("%.0fE",IONLON1+(i-1)*DIONLON);
- }
- for (j=1;jRowCount;j++) {
- Tbl->Cells[0][j]=s.sprintf("%.0fN",IONLAT1-(j-1)*DIONLAT);
- }
- for (i=1;iColCount;i++)
- for (j=1;jRowCount;j++) Tbl->Cells[i][j]="-";
-}
-//---------------------------------------------------------------------------
-void __fastcall TMonitorDialog::ShowIonCorr(void)
-{
- AnsiString s;
- gtime_t time;
- nav_t nav={0};
- double lat,lon,pos[3]={0},ion,var,azel[]={0.0,PI/2.0};
- int i,j,ionoopt;
+ Tbl->Cells[0][i ]="Receiver Type Descriptor";
+ Tbl->Cells[1][i++]=sta.rectype;
- rtksvrlock(&rtksvr);
- time=rtksvr.rtk.sol.time;
- for (i=0;i<8;i++) nav.ion_gps[i]=rtksvr.nav.ion_gps[i];
- for (i=0;i<4;i++) nav.ion_gal[i]=rtksvr.nav.ion_gal[i];
- for (i=0;i<8;i++) nav.ion_qzs[i]=rtksvr.nav.ion_qzs[i];
- for (i=0;iCells[0][i ]="Receiver Firmware Version";
+ Tbl->Cells[1][i++]=sta.recver;
- Label->Caption="Vertical L1 Ionospheric Delay (m)";
+ Tbl->Cells[0][i ]="Receiver Serial No";
+ Tbl->Cells[1][i++]=sta.recsno;
- ionoopt=SelIon->ItemIndex;
+ Tbl->Cells[0][i ]="GLONASS Code-Phase Alignment";
+ Tbl->Cells[1][i++]=sta.glo_cp_align?"Aligned":"Not aligned";
- for (i=1;iColCount;i++)
- for (j=1;jRowCount;j++) {
- pos[0]=(IONLAT1-(j-1)*DIONLAT)*D2R;
- pos[1]=(IONLON1+(i-1)*DIONLON)*D2R;
-
- if (!ionocorr(time,&nav,0,pos,azel,ionoopt,&ion,&var)||ion==0.0) {
- Tbl->Cells[i][j]="-";
- }
- else {
- Tbl->Cells[i][j]=s.sprintf("%.2f",ion);
- }
- }
+ Tbl->Cells[0][i ]="GLONASS Code-Phase Bias C1/P1/C2/P2 (m)";
+ Tbl->Cells[1][i++]=s.sprintf("%.2f, %.2f, %.2f, %.2f",sta.glo_cp_bias[0],
+ sta.glo_cp_bias[1],sta.glo_cp_bias[2],
+ sta.glo_cp_bias[3]);
}
//---------------------------------------------------------------------------
+
diff --git a/app/winapp/rtknavi/mondlg.dfm b/app/winapp/rtknavi/mondlg.dfm
new file mode 100644
index 000000000..498ba70a4
--- /dev/null
+++ b/app/winapp/rtknavi/mondlg.dfm
@@ -0,0 +1,480 @@
+object MonitorDialog: TMonitorDialog
+ Left = 0
+ Top = 0
+ BorderIcons = [biSystemMenu]
+ Caption = 'RTK Monitor'
+ ClientHeight = 283
+ ClientWidth = 893
+ Color = clWhite
+ Constraints.MinHeight = 160
+ Constraints.MinWidth = 200
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ OnClose = FormClose
+ OnShow = FormShow
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Console: TPaintBox
+ Left = 0
+ Top = 24
+ Width = 876
+ Height = 259
+ Align = alClient
+ Color = clWhite
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Courier New'
+ Font.Style = []
+ ParentColor = False
+ ParentFont = False
+ OnPaint = ConsolePaint
+ ExplicitLeft = 128
+ ExplicitTop = 172
+ ExplicitWidth = 105
+ ExplicitHeight = 105
+ end
+ object Tbl: TStringGrid
+ Left = 0
+ Top = 24
+ Width = 876
+ Height = 259
+ TabStop = False
+ Align = alClient
+ BevelInner = bvNone
+ BorderStyle = bsNone
+ Color = clWhite
+ DefaultColWidth = 100
+ DefaultRowHeight = 15
+ FixedCols = 0
+ RowCount = 10
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goRangeSelect, goColSizing]
+ ParentFont = False
+ TabOrder = 0
+ ColWidths = (
+ 100
+ 100
+ 100
+ 100
+ 100)
+ RowHeights = (
+ 15
+ 15
+ 15
+ 15
+ 15
+ 15
+ 15
+ 15
+ 15
+ 15)
+ end
+ object Panel1: TPanel
+ Left = 0
+ Top = 0
+ Width = 893
+ Height = 24
+ Align = alTop
+ TabOrder = 1
+ object Label: TLabel
+ Left = 374
+ Top = 5
+ Width = 3
+ Height = 13
+ Color = clWhite
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clBlack
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentColor = False
+ ParentFont = False
+ end
+ object Type: TComboBox
+ Left = 1
+ Top = 2
+ Width = 90
+ Height = 21
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 0
+ AutoComplete = False
+ Style = csDropDownList
+ DropDownCount = 40
+ ItemIndex = 0
+ TabOrder = 0
+ TabStop = False
+ Text = 'RTK'
+ OnChange = TypeChange
+ Items.Strings = (
+ 'RTK'
+ 'Obs Data'
+ 'Nav Data'
+ 'Time/Iono'
+ 'Streams'
+ 'Sat Status'
+ 'States'
+ 'Covariance'
+ 'SBAS Msgs'
+ 'SBAS Long'
+ 'SBAS Iono'
+ 'SBAS Fast'
+ 'RTCM Msgs'
+ 'RTCM DGPS'
+ 'RTCM SSR'
+ 'Station Info'
+ 'Input'
+ 'Output'
+ 'Error/Warning')
+ end
+ object SelEph: TComboBox
+ AlignWithMargins = True
+ Left = 276
+ Top = 2
+ Width = 90
+ Height = 21
+ Hint = 'Stream'
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Style = csDropDownList
+ ItemIndex = 0
+ TabOrder = 1
+ Text = 'Current 1'
+ Visible = False
+ Items.Strings = (
+ 'Current 1'
+ 'Current 2'
+ 'Previous 1'
+ 'Previous 2')
+ end
+ object SelStr: TComboBox
+ AlignWithMargins = True
+ Left = 92
+ Top = 2
+ Width = 90
+ Height = 21
+ Hint = 'Stream'
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Style = csDropDownList
+ ItemIndex = 0
+ TabOrder = 2
+ Text = '(1) Rover'
+ Visible = False
+ OnChange = SelStrChange
+ Items.Strings = (
+ '(1) Rover'
+ '(2) Base Station'
+ '(3) Correction')
+ end
+ object SelSat: TComboBox
+ AlignWithMargins = True
+ Left = 184
+ Top = 2
+ Width = 90
+ Height = 21
+ Hint = 'Stream'
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Style = csDropDownList
+ ItemIndex = 0
+ TabOrder = 3
+ Text = 'ALL'
+ Visible = False
+ Items.Strings = (
+ 'ALL'
+ 'Only OK')
+ end
+ object SelObs: TComboBox
+ AlignWithMargins = True
+ Left = 184
+ Top = 2
+ Width = 90
+ Height = 21
+ Hint = 'Stream'
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Style = csDropDownList
+ ItemIndex = 0
+ TabOrder = 4
+ Text = 'Normal'
+ Visible = False
+ OnChange = SelObsChange
+ Items.Strings = (
+ 'Normal'
+ 'Extended')
+ end
+ object SelFmt: TComboBox
+ AlignWithMargins = True
+ Left = 184
+ Top = 2
+ Width = 90
+ Height = 21
+ Hint = 'Stream'
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Style = csDropDownList
+ DropDownCount = 32
+ ItemIndex = 1
+ TabOrder = 5
+ Text = 'ASCII'
+ Visible = False
+ OnChange = SelFmtChange
+ Items.Strings = (
+ 'HEX'
+ 'ASCII')
+ end
+ object SelSys: TComboBox
+ AlignWithMargins = True
+ Left = 92
+ Top = 2
+ Width = 90
+ Height = 21
+ Hint = 'Stream'
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Style = csDropDownList
+ ItemIndex = 0
+ TabOrder = 6
+ Text = 'ALL'
+ Visible = False
+ Items.Strings = (
+ 'ALL'
+ 'GPS'
+ 'GLONASS'
+ 'Galileo'
+ 'QZSS'
+ 'BDS'
+ 'NavIC'
+ 'SBAS')
+ end
+ object SelSys2: TComboBox
+ AlignWithMargins = True
+ Left = 92
+ Top = 2
+ Width = 90
+ Height = 21
+ Hint = 'Stream'
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Style = csDropDownList
+ ItemIndex = 0
+ TabOrder = 7
+ Text = 'GPS'
+ Visible = False
+ Items.Strings = (
+ 'GPS'
+ 'GLONASS'
+ 'Galileo'
+ 'QZSS'
+ 'BDS'
+ 'NavIC'
+ 'SBAS')
+ end
+ object SelStr2: TComboBox
+ AlignWithMargins = True
+ Left = 92
+ Top = 2
+ Width = 90
+ Height = 21
+ Hint = 'Stream'
+ Margins.Left = 1
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Style = csDropDownList
+ ItemIndex = 0
+ TabOrder = 8
+ Text = '(4) Solution 1'
+ OnChange = SelStr2Change
+ Items.Strings = (
+ '(4) Solution 1'
+ '(5) Solution 2')
+ end
+ object BtnClose: TButton
+ AlignWithMargins = True
+ Left = 821
+ Top = 1
+ Width = 70
+ Height = 22
+ Margins.Left = 2
+ Margins.Top = 0
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Align = alRight
+ Caption = '&Close'
+ ModalResult = 1
+ TabOrder = 9
+ OnClick = BtnCloseClick
+ end
+ object Panel2: TPanel
+ Left = 276
+ Top = 1
+ Width = 72
+ Height = 22
+ AutoSize = True
+ BevelOuter = bvNone
+ TabOrder = 10
+ object BtnClear: TSpeedButton
+ Left = 0
+ Top = 0
+ Width = 24
+ Height = 22
+ Hint = 'Clear'
+ Align = alLeft
+ Flat = True
+ Glyph.Data = {
+ 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
+ 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFF000000FFFFFFFFFFFF00FFFFFFFFFFFFB4B4B4000000FFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFF000000B4B4B4FFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFB4B4B4000000FFFFFFFFFFFFFFFFFF000000B4B4B4FFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFB4B4B4000000FFFFFF000000B4B4B4FFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4B4B4000000B4
+ B4B4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF000000B4B4B4000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFF000000B4B4B4FFFFFFB4B4B4000000FFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFF000000B4B4B4FFFFFFFFFFFFFFFFFFB4B4B4000000
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF000000B4B4B4FFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFB4B4B4000000FFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00}
+ ParentShowHint = False
+ ShowHint = True
+ OnClick = BtnClearClick
+ ExplicitTop = -1
+ end
+ object BtnDown: TSpeedButton
+ Left = 48
+ Top = 0
+ Width = 24
+ Height = 22
+ Hint = 'Scroll Down'
+ Align = alLeft
+ AllowAllUp = True
+ GroupIndex = 3
+ Down = True
+ Flat = True
+ Glyph.Data = {
+ 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
+ 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFF808080808080808080808080808080808080808080808080808080
+ 808080808080FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFF000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00}
+ ParentShowHint = False
+ ShowHint = True
+ OnClick = BtnDownClick
+ ExplicitLeft = 109
+ ExplicitTop = -2
+ end
+ object BtnPause: TSpeedButton
+ Left = 24
+ Top = 0
+ Width = 24
+ Height = 22
+ Hint = 'Pause'
+ Align = alLeft
+ AllowAllUp = True
+ GroupIndex = 2
+ Flat = True
+ Glyph.Data = {
+ 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
+ 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFF000000000000FFFFFF000000000000FFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFFFF000000000000FFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFFFF00
+ 0000000000FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF0000
+ 00000000FFFFFF000000000000FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFF000000000000FFFFFF000000000000FFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00}
+ ParentShowHint = False
+ ShowHint = True
+ ExplicitLeft = 21
+ ExplicitTop = 1
+ end
+ end
+ end
+ object Scroll: TScrollBar
+ Left = 876
+ Top = 24
+ Width = 17
+ Height = 259
+ Align = alRight
+ Ctl3D = True
+ DoubleBuffered = False
+ Kind = sbVertical
+ PageSize = 0
+ ParentCtl3D = False
+ ParentDoubleBuffered = False
+ ParentShowHint = False
+ ShowHint = False
+ TabOrder = 2
+ TabStop = False
+ Visible = False
+ OnChange = ScrollChange
+ end
+ object Timer1: TTimer
+ Interval = 100
+ OnTimer = Timer1Timer
+ Left = 8
+ Top = 286
+ end
+ object Timer2: TTimer
+ Interval = 100
+ OnTimer = Timer2Timer
+ Left = 36
+ Top = 286
+ end
+end
diff --git a/app/rtknavi/mondlg.h b/app/winapp/rtknavi/mondlg.h
similarity index 85%
rename from app/rtknavi/mondlg.h
rename to app/winapp/rtknavi/mondlg.h
index 6531b9271..1500d0649 100644
--- a/app/rtknavi/mondlg.h
+++ b/app/winapp/rtknavi/mondlg.h
@@ -15,7 +15,6 @@ class TMonitorDialog : public TForm
__published:
TStringGrid *Tbl;
TPanel *Panel1;
- TPanel *Panel2;
TButton *BtnClose;
TTimer *Timer1;
TLabel *Label;
@@ -29,9 +28,12 @@ class TMonitorDialog : public TForm
TComboBox *SelEph;
TComboBox *SelStr;
TComboBox *SelSat;
- TComboBox *SelIon;
TComboBox *SelObs;
TComboBox *SelFmt;
+ TComboBox *SelSys;
+ TComboBox *SelSys2;
+ TComboBox *SelStr2;
+ TPanel *Panel2;
void __fastcall FormShow(TObject *Sender);
void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
void __fastcall ConsolePaint(TObject *Sender);
@@ -44,8 +46,10 @@ class TMonitorDialog : public TForm
void __fastcall ScrollChange(TObject *Sender);
void __fastcall SelObsChange(TObject *Sender);
void __fastcall SelFmtChange(TObject *Sender);
+ void __fastcall SelStrChange(TObject *Sender);
+ void __fastcall SelStr2Change(TObject *Sender);
private:
- int TypeF,ConFmt,ScrollPos,FontScale,ObsMode;
+ int TypeF,ConFmt,Str1,Str2,ScrollPos,FontScale,ObsMode;
TStringList *ConBuff;
rtcm_t rtcm;
raw_t raw;
@@ -68,16 +72,13 @@ class TMonitorDialog : public TForm
void __fastcall SetRtcm(void);
void __fastcall SetRtcmDgps(void);
void __fastcall SetRtcmSsr(void);
- void __fastcall SetLexMsg(void);
- void __fastcall SetLexEph(void);
- void __fastcall SetLexIon(void);
- void __fastcall SetIonCorr(void);
+ void __fastcall SetRefSta(void);
void __fastcall ShowRtk(void);
- void __fastcall ShowSat(int sys);
+ void __fastcall ShowSat(void);
void __fastcall ShowEst(void);
void __fastcall ShowCov(void);
void __fastcall ShowObs(void);
- void __fastcall ShowNav(int sys);
+ void __fastcall ShowNav(void);
void __fastcall ShowGnav(void);
void __fastcall ShowSbsMsg(void);
void __fastcall ShowIonUtc(void);
@@ -89,11 +90,8 @@ class TMonitorDialog : public TForm
void __fastcall ShowRtcm(void);
void __fastcall ShowRtcmDgps(void);
void __fastcall ShowRtcmSsr(void);
- void __fastcall ShowLexMsg(void);
- void __fastcall ShowLexEph(void);
- void __fastcall ShowLexIon(void);
- void __fastcall ShowIonCorr(void);
- void __fastcall AddConsole(unsigned char *msg, int len, int mode);
+ void __fastcall ShowRefSta(void);
+ void __fastcall AddConsole(uint8_t *msg, int len, int mode);
void __fastcall ViewConsole(void);
public:
__fastcall TMonitorDialog(TComponent* Owner);
diff --git a/app/rtknavi/navimain.cpp b/app/winapp/rtknavi/navimain.cpp
similarity index 90%
rename from app/rtknavi/navimain.cpp
rename to app/winapp/rtknavi/navimain.cpp
index c79a6826f..3a5db349f 100644
--- a/app/rtknavi/navimain.cpp
+++ b/app/winapp/rtknavi/navimain.cpp
@@ -1,7 +1,7 @@
//---------------------------------------------------------------------------
-// rtknavi : real-time positioning ap
+// rtknavi : real-time positioning AP
//
-// Copyright (C) 2007-2017 by T.TAKASU, All rights reserved.
+// Copyright (C) 2007-2020 by T.TAKASU, All rights reserved.
//
// options : rtknavi [-t title][-i file][-auto][-tray]
//
@@ -19,6 +19,10 @@
// 2012/04/03 1.5 rtklib 2.4.2
// 2014/09/06 1.6 rtklib 2.4.3
// 2017/09/01 1.7 add option -auto and -tray
+// 2020/11/30 1.8 add "Output Velocity" option
+// support saving multiple sets of ephemeris
+// fix bug on unable deselecting antenna PCV
+// fix bug on unable saving TGD2 of ephemeris
//---------------------------------------------------------------------------
#include
#include
@@ -51,8 +55,7 @@ TMainForm *MainForm;
#define STATFILE "rtknavi_%Y%m%d%h%M.stat" // solution status file
#define CLORANGE (TColor)0x00AAFF
#define CLLGRAY (TColor)0xDDDDDD
-#define CHARDEG 0x00B0 // character code of degree
-#define SATSIZE 20 // satellite circle size in skyplot
+#define CHARDEG "\302\260" // character code of degree
#define MINSNR 10 // minimum snr
#define MAXSNR 60 // maximum snr
#define KEYF6 0x75 // code of function key F6
@@ -60,11 +63,13 @@ TMainForm *MainForm;
#define KEYF8 0x77 // code of function key F8
#define KEYF9 0x78 // code of function key F9
#define KEYF10 0x79 // code of function key F10
+#define PANELFONTNAME "Tahoma"
+#define PANELFONTSIZE 8
#define POSFONTNAME "Palatino Linotype"
-#define POSFONTSIZE 12
+#define POSFONTSIZE 10
#define MINBLLEN 0.01 // minimum baseline length to show
-#define KACYCLE 1000 // keep alive cycle (ms)
+#define KACYCLE 5000 // keep alive cycle (ms)
#define TIMEOUT 10000 // inactive timeout time (ms)
#define DEFAULTPORT 52001 // default monitor port number
#define MAXPORTOFF 9 // max port number offset
@@ -82,7 +87,7 @@ stream_t monistr; // monitor stream
// show message in message area ---------------------------------------------
extern "C" {
-extern int showmsg(char *format,...) {return 0;}
+extern int showmsg(const char *format,...) {return 0;}
}
// convert degree to deg-min-sec --------------------------------------------
static void degtodms(double deg, double *dms)
@@ -134,6 +139,7 @@ __fastcall TMainForm::TMainForm(TComponent* Owner)
}
PrcOpt=prcopt_default;
SolOpt=solopt_default;
+ PanelFont=new TFont;
PosFont=new TFont;
rtksvrinit(&rtksvr);
@@ -143,20 +149,18 @@ __fastcall TMainForm::TMainForm(TComponent* Owner)
Caption=Caption+" ver."+VER_RTKLIB+" "+PATCH_LEVEL;
DoubleBuffered=true;
- TLEData.n=TLEData.nmax=0;
- TLEData.data=NULL;
-
PanelStack=PanelMode=0;
for (int i=0;i<3;i++) {
TrkOri[i]=0.0;
}
+ TimerCycle=TimerInact=AutoRun=0;
}
// callback on form create --------------------------------------------------
void __fastcall TMainForm::FormCreate(TObject *Sender)
{
char *p,*argv[32],buff[1024],file[1024]="rtknavi.exe";
- int argc=0,autorun=0,tasktray=0;
+ int argc=0,tasktray=0;
trace(3,"FormCreate\n");
@@ -186,51 +190,46 @@ void __fastcall TMainForm::FormCreate(TObject *Sender)
for (int i=1;iShowMainForm=false;
TrayIcon->Visible=true;
}
- if (autorun) {
- SvrStart();
- }
}
// callback on form show ----------------------------------------------------
void __fastcall TMainForm::FormShow(TObject *Sender)
{
trace(3,"FormShow\n");
- if (TLEFileF!="") {
- tle_read(TLEFileF.c_str(),&TLEData);
- }
- if (TLESatFileF!="") {
- tle_name_read(TLESatFileF.c_str(),&TLEData);
- }
+ LoadOpt();
+ LoadNav(&rtksvr.nav);
+ OpenMoniPort(MoniPort);
+
UpdatePanel();
UpdateTimeSys();
UpdateSolType();
UpdateFont();
UpdatePos();
UpdateEnable();
+
+ if (AutoRun) {
+ SvrStart();
+ }
+ Timer->Enabled=true;
}
// callback on form close ---------------------------------------------------
void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
{
trace(3,"FormClose\n");
+ Timer->Enabled=false;
if (OpenPort>0) {
// send disconnect message
- strwrite(&monistr,(unsigned char *)MSG_DISCONN,strlen(MSG_DISCONN));
+ strwrite(&monistr,(uint8_t *)MSG_DISCONN,strlen(MSG_DISCONN));
strclose(&monistr);
}
@@ -318,11 +317,11 @@ void __fastcall TMainForm::Panel4Resize(TObject *Sender)
{
TBitBtn *btn[]={BtnStart,BtnMark,BtnPlot,BtnOpt,BtnExit};
TPanel *panel=(TPanel *)Sender;
- int w=panel->Width/5,h=panel->Height;
+ int w=(panel->Width-2)/5,h=panel->Height;
for (int i=0;i<5;i++) {
- btn[i]->Left=w*i+1;
+ btn[i]->Left=w*i+2;
btn[i]->Top=0;
- btn[i]->Width=w-2;
+ btn[i]->Width=w-4;
btn[i]->Height=h-2;
}
BtnStop->Left =BtnStart->Left;
@@ -513,8 +512,6 @@ void __fastcall TMainForm::BtnOptClick(TObject *Sender)
OptDialog->GeoidDataFileF=GeoidDataFileF;
OptDialog->DCBFileF =DCBFileF;
OptDialog->EOPFileF =EOPFileF;
- OptDialog->TLEFileF =TLEFileF;
- OptDialog->TLESatFileF=TLESatFileF;
OptDialog->LocalDirectory=LocalDirectory;
OptDialog->SvrCycle =SvrCycle;
@@ -539,7 +536,8 @@ void __fastcall TMainForm::BtnOptClick(TObject *Sender)
OptDialog->RovPos [i]=RovPos [i];
OptDialog->RefPos [i]=RefPos [i];
}
- OptDialog->PosFont->Assign(PosFont);
+ OptDialog->PanelFont->Assign(PanelFont);
+ OptDialog->PosFont ->Assign(PosFont);
if (OptDialog->ShowModal()!=mrOk) return;
@@ -564,8 +562,6 @@ void __fastcall TMainForm::BtnOptClick(TObject *Sender)
GeoidDataFileF=OptDialog->GeoidDataFileF;
DCBFileF =OptDialog->DCBFileF;
EOPFileF =OptDialog->EOPFileF;
- TLEFileF =OptDialog->TLEFileF;
- TLESatFileF=OptDialog->TLESatFileF;
LocalDirectory=OptDialog->LocalDirectory;
SvrCycle =OptDialog->SvrCycle;
@@ -583,7 +579,8 @@ void __fastcall TMainForm::BtnOptClick(TObject *Sender)
if (MoniPort!=OptDialog->MoniPort) chgmoni=1;
MoniPort =OptDialog->MoniPort;
PanelStack =OptDialog->PanelStack;
- PosFont->Assign(OptDialog->PosFont);
+ PanelFont->Assign(OptDialog->PanelFont);
+ PosFont ->Assign(OptDialog->PosFont );
UpdateFont();
if (panelstack==0&&PanelStack==1) {
Panel21->Width=170;
@@ -608,7 +605,7 @@ void __fastcall TMainForm::BtnOptClick(TObject *Sender)
// send disconnect message
if (OpenPort>0) {
- strwrite(&monistr,(unsigned char *)MSG_DISCONN,strlen(MSG_DISCONN));
+ strwrite(&monistr,(uint8_t *)MSG_DISCONN,strlen(MSG_DISCONN));
strclose(&monistr);
}
@@ -638,8 +635,7 @@ void __fastcall TMainForm::BtnInputStrClick(TObject *Sender)
InputStrDialog->CmdsTcp [i][j]=CmdsTcp [i][j];
}
for (i=0;i<10;i++) {
- InputStrDialog->History [i]=History [i];
- InputStrDialog->MntpHist[i]=MntpHist[i];
+ InputStrDialog->History[i]=History[i];
}
InputStrDialog->NmeaReq =NmeaReq;
InputStrDialog->TimeTag =InTimeTag;
@@ -668,8 +664,7 @@ void __fastcall TMainForm::BtnInputStrClick(TObject *Sender)
CmdsTcp [i][j]=InputStrDialog->CmdsTcp [i][j];
}
for (i=0;i<10;i++) {
- History [i]=InputStrDialog->History [i];
- MntpHist[i]=InputStrDialog->MntpHist[i];
+ History [i]=InputStrDialog->History[i];
}
NmeaReq=InputStrDialog->NmeaReq;
InTimeTag =InputStrDialog->TimeTag;
@@ -711,7 +706,7 @@ int __fastcall TMainForm::ConfOverwrite(const char *path)
if (!strcmp(buff1,buff2)) {
Message->Caption=s.sprintf("invalid output %s",buff1);
- Message->Parent->Hint=Message->Caption;
+ Message->Hint=Message->Caption;
return 0;
}
}
@@ -723,7 +718,7 @@ int __fastcall TMainForm::ConfOverwrite(const char *path)
void __fastcall TMainForm::BtnOutputStrClick(TObject *Sender)
{
int otype[]={
- STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPSVR,STR_NTRIPC_C,STR_FILE
+ STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPSVR,STR_NTRIPCAS,STR_FILE
};
int i,j,str,update[2]={0};
char *path;
@@ -737,8 +732,7 @@ void __fastcall TMainForm::BtnOutputStrClick(TObject *Sender)
for (j=0;j<4;j++) OutputStrDialog->Paths[i-3][j]=Paths[i][j];
}
for (i=0;i<10;i++) {
- OutputStrDialog->History [i]=History [i];
- OutputStrDialog->MntpHist[i]=MntpHist[i];
+ OutputStrDialog->History[i]=History[i];
}
OutputStrDialog->OutTimeTag=OutTimeTag;
OutputStrDialog->OutAppend =OutAppend;
@@ -760,8 +754,7 @@ void __fastcall TMainForm::BtnOutputStrClick(TObject *Sender)
for (j=0;j<4;j++) Paths[i][j]=OutputStrDialog->Paths[i-3][j];
}
for (i=0;i<10;i++) {
- History [i]=OutputStrDialog->History [i];
- MntpHist[i]=OutputStrDialog->MntpHist[i];
+ History [i]=OutputStrDialog->History[i];
}
OutTimeTag=OutputStrDialog->OutTimeTag;
OutAppend =OutputStrDialog->OutAppend;
@@ -793,7 +786,7 @@ void __fastcall TMainForm::BtnOutputStrClick(TObject *Sender)
void __fastcall TMainForm::BtnLogStrClick(TObject *Sender)
{
int otype[]={
- STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPSVR,STR_NTRIPC_C,STR_FILE
+ STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPSVR,STR_NTRIPCAS,STR_FILE
};
int i,j,str,update[3]={0};
char *path;
@@ -806,8 +799,7 @@ void __fastcall TMainForm::BtnLogStrClick(TObject *Sender)
for (j=0;j<4;j++) LogStrDialog->Paths[i-5][j]=Paths[i][j];
}
for (i=0;i<10;i++) {
- LogStrDialog->History [i]=History [i];
- LogStrDialog->MntpHist[i]=MntpHist[i];
+ LogStrDialog->History [i]=History[i];
}
LogStrDialog->LogTimeTag=LogTimeTag;
LogStrDialog->LogAppend =LogAppend;
@@ -827,8 +819,7 @@ void __fastcall TMainForm::BtnLogStrClick(TObject *Sender)
for (j=0;j<4;j++) Paths[i][j]=LogStrDialog->Paths[i-5][j];
}
for (i=0;i<10;i++) {
- History [i]=LogStrDialog->History [i];
- MntpHist[i]=LogStrDialog->MntpHist[i];
+ History[i]=LogStrDialog->History[i];
}
LogTimeTag=LogStrDialog->LogTimeTag;
LogAppend =LogStrDialog->LogAppend;
@@ -1053,12 +1044,7 @@ void __fastcall TMainForm::BtnAboutClick(TObject *Sender)
AnsiString prog=PRGNAME;
trace(3,"BtnAboutClick\n");
-#ifdef _WIN64
- prog+="_WIN64";
-#endif
-#ifdef MKL
- prog+="_MKL";
-#endif
+
AboutDialog->About=prog;
AboutDialog->IconIndex=5;
AboutDialog->ShowModal();
@@ -1133,7 +1119,7 @@ void __fastcall TMainForm::SvrStart(void)
STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPCLI,STR_FILE,STR_FTP,STR_HTTP
};
int otype[]={
- STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPSVR,STR_NTRIPC_C,STR_FILE
+ STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPSVR,STR_NTRIPCAS,STR_FILE
};
int i,strs[MAXSTRRTK]={0},sat,ex,stropt[8]={0};
char *paths[8],*cmds[3]={0},*cmds_periodic[3]={0},*rcvopts[3]={0};
@@ -1142,12 +1128,16 @@ void __fastcall TMainForm::SvrStart(void)
FILE *fp;
gtime_t time=timeget();
pcvs_t pcvr={0},pcvs={0};
- pcv_t *pcv;
+ pcv_t *pcv,pcv0={0};
trace(3,"SvrStart\n");
- Message->Caption=""; Message->Parent->Hint="";
+ Message->Caption=""; Message->Hint="";
+ if (DebugTraceF>0) {
+ traceopen(TRACEFILE);
+ tracelevel(DebugTraceF);
+ }
if (RovPosTypeF<=2) { // LLH,XYZ
PrcOpt.rovpos=POSOPT_POS;
PrcOpt.ru[0]=RovPos[0];
@@ -1164,14 +1154,10 @@ void __fastcall TMainForm::SvrStart(void)
PrcOpt.rb[1]=RefPos[1];
PrcOpt.rb[2]=RefPos[2];
}
- else if (RefPosTypeF==3) { // RTCM position
+ else if (RefPosTypeF==3) { // RTCM/Raw position
PrcOpt.refpos=POSOPT_RTCM;
for (i=0;i<3;i++) PrcOpt.rb[i]=0.0;
}
- else if (RefPosTypeF==4) { // raw position
- PrcOpt.refpos=POSOPT_RAW;
- for (i=0;i<3;i++) PrcOpt.rb[i]=0.0;
- }
else { // average of single position
PrcOpt.refpos=POSOPT_SINGLE;
for (i=0;i<3;i++) PrcOpt.rb[i]=0.0;
@@ -1189,9 +1175,11 @@ void __fastcall TMainForm::SvrStart(void)
}
if ((RovAntPcvF||RefAntPcvF)&&!readpcv(AntPcvFileF.c_str(),&pcvr)) {
Message->Caption=s.sprintf("rcv ant file read error %s",AntPcvFileF.c_str());
- Message->Parent->Hint=Message->Caption;
+ Message->Hint=Message->Caption;
return;
}
+ PrcOpt.pcvr[0]=PrcOpt.pcvr[1]=pcv0; // initialize antenna PCV
+
if (RovAntPcvF) {
type=RovAntF.c_str();
if ((pcv=searchpcv(0,type,time,&pcvr))) {
@@ -1199,7 +1187,7 @@ void __fastcall TMainForm::SvrStart(void)
}
else {
Message->Caption=s.sprintf("no antenna pcv %s",type);
- Message->Parent->Hint=Message->Caption;
+ Message->Hint=Message->Caption;
}
for (i=0;i<3;i++) PrcOpt.antdel[0][i]=RovAntDel[i];
}
@@ -1210,7 +1198,7 @@ void __fastcall TMainForm::SvrStart(void)
}
else {
Message->Caption=s.sprintf("no antenna pcv %s",type);
- Message->Parent->Hint=Message->Caption;
+ Message->Hint=Message->Caption;
}
for (i=0;i<3;i++) PrcOpt.antdel[1][i]=RefAntDel[i];
}
@@ -1220,7 +1208,7 @@ void __fastcall TMainForm::SvrStart(void)
if (PrcOpt.sateph==EPHOPT_PREC||PrcOpt.sateph==EPHOPT_SSRCOM) {
if (!readpcv(SatPcvFileF.c_str(),&pcvs)) {
Message->Caption=s.sprintf("sat ant file read error %s",SatPcvFileF.c_str());
- Message->Parent->Hint=Message->Caption;
+ Message->Hint=Message->Caption;
return;
}
for (i=0;i0) {
- traceopen(TRACEFILE);
- tracelevel(DebugTraceF);
- }
if (DebugStatusF>0) {
rtkopenstat(STATFILE,DebugStatusF);
}
@@ -1325,7 +1309,7 @@ void __fastcall TMainForm::SvrStart(void)
Svr->Color=CLORANGE;
SetTrayIcon(0);
}
-// strop rtk server ---------------------------------------------------------
+// stop rtk server ----------------------------------------------------------
void __fastcall TMainForm::SvrStop(void)
{
char *cmds[3]={0};
@@ -1364,7 +1348,7 @@ void __fastcall TMainForm::SvrStop(void)
if (n>0) {
ScbSol->Max=n-1; ScbSol->Position=m;
}
- Message->Caption=""; Message->Parent->Hint="";
+ Message->Caption=""; Message->Hint="";
if (DebugTraceF>0) traceclose();
if (DebugStatusF>0) rtkclosestat();
@@ -1373,13 +1357,14 @@ void __fastcall TMainForm::SvrStop(void)
// callback on interval timer -----------------------------------------------
void __fastcall TMainForm::TimerTimer(TObject *Sender)
{
- static int n=0,inactive=0;
sol_t *sol;
int i,update=0;
- unsigned char buff[8];
+ uint8_t buff[8];
trace(4,"TimerTimer\n");
+ TimerCycle++;
+
rtksvrlock(&rtksvr);
for (i=0;iInterval>TIMEOUT) SolCurrentStat=0;
+ if (++TimerInact*Timer->Interval>TIMEOUT) SolCurrentStat=0;
}
if (SolCurrentStat) {
Svr->Color=clLime;
@@ -1410,19 +1395,15 @@ void __fastcall TMainForm::TimerTimer(TObject *Sender)
Solution->Font->Color=clGray;
Svr->Color=rtksvr.state?clGreen:clWindow;
}
- if (!(++n%5)) UpdatePlot();
+ if (!(TimerCycle%5)) UpdatePlot();
UpdateStr();
// keep alive for monitor port
- if (!(++n%(KACYCLE/Timer->Interval))&&OpenPort) {
+ if (!(TimerCycle%(KACYCLE/Timer->Interval))&&OpenPort) {
buff[0]='\r';
strwrite(&monistr,buff,1);
}
}
-// change plot type ---------------------------------------------------------
-void __fastcall TMainForm::ChangePlot(void)
-{
-}
// update time-system -------------------------------------------------------
void __fastcall TMainForm::UpdateTimeSys(void)
{
@@ -1518,8 +1499,8 @@ void __fastcall TMainForm::UpdateTime(void)
void __fastcall TMainForm::UpdatePos(void)
{
TLabel *label[]={Plabel1,Plabel2,Plabel3,Pos1,Pos2,Pos3,LabelStd,LabelNSat};
- AnsiString sol[]={"----","FIX","FLOAT","SBAS","DGPS","SINGLE","PPP"};
- UnicodeString s[9],ext=L"";
+ UTF8String sol[]={"----","FIX","FLOAT","SBAS","DGPS","SINGLE","PPP"};
+ UTF8String s[9],ext="";
TColor color[]={clSilver,clGreen,CLORANGE,clFuchsia,clBlue,clRed,clTeal};
gtime_t time;
double *rr=SolRov+PSol*3,*rb=SolRef+PSol*3,*qr=Qr+PSol*9,pos[3]={0},Qe[9]={0};
@@ -1534,7 +1515,7 @@ void __fastcall TMainForm::UpdatePos(void)
else if (rtksvr.rtk.opt.mode==PMODE_FIXED||rtksvr.rtk.opt.mode==PMODE_PPP_FIXED) {
ext=" (F)";
}
- PlabelA->Caption=L"Solution"+ext+L":";
+ PlabelA->Caption="Solution"+ext+":";
Solution->Caption=sol[stat];
Solution->Font->Color=rtksvr.state?color[stat]:clGray;
IndSol->Color=rtksvr.state&&stat?color[stat]:clWhite;
@@ -1549,41 +1530,41 @@ void __fastcall TMainForm::UpdatePos(void)
degtodms(pos[1]*R2D,dms2);
if (SolOpt.height==1) pos[2]-=geoidh(pos); /* geodetic */
}
- s[0]=pos[0]<0?L"S:":L"N:"; s[1]=pos[1]<0?L"W:":L"E:";
- s[2]=SolOpt.height==1?L"H:":L"He:";
- s[3].sprintf(L"%.0f%c %02.0f' %07.4f\"",fabs(dms1[0]),CHARDEG,dms1[1],dms1[2]);
- s[4].sprintf(L"%.0f%c %02.0f' %07.4f\"",fabs(dms2[0]),CHARDEG,dms2[1],dms2[2]);
- s[5].sprintf(L"%.3f m",pos[2]);
- s[6].sprintf(L"N:%6.3f E:%6.3f U:%6.3f m",SQRT(Qe[4]),SQRT(Qe[0]),SQRT(Qe[8]));
+ s[0]=pos[0]<0?"S:":"N:"; s[1]=pos[1]<0?"W:":"E:";
+ s[2]=SolOpt.height==1?"H:":"He:";
+ s[3].sprintf("%.0f%s %02.0f' %07.4f\"",fabs(dms1[0]),CHARDEG,dms1[1],dms1[2]);
+ s[4].sprintf("%.0f%s %02.0f' %07.4f\"",fabs(dms2[0]),CHARDEG,dms2[1],dms2[2]);
+ s[5].sprintf("%.3f m",pos[2]);
+ s[6].sprintf("N:%6.3f E:%6.3f U:%6.3f m",SQRT(Qe[4]),SQRT(Qe[0]),SQRT(Qe[8]));
}
else if (SolType==1) {
if (norm(rr,3)>0.0) {
ecef2pos(rr,pos); covenu(pos,qr,Qe);
if (SolOpt.height==1) pos[2]-=geoidh(pos); /* geodetic */
}
- s[0]=pos[0]<0?L"S:":L"N:"; s[1]=pos[1]<0?L"W:":L"E:";
- s[2]=SolOpt.height==1?L"H:":L"He:";
- s[3].sprintf(L"%.8f %c",fabs(pos[0])*R2D,CHARDEG);
- s[4].sprintf(L"%.8f %c",fabs(pos[1])*R2D,CHARDEG);
- s[5].sprintf(L"%.3f m",pos[2]);
- s[6].sprintf(L"E:%6.3f N:%6.3f U:%6.3f m",SQRT(Qe[0]),SQRT(Qe[4]),SQRT(Qe[8]));
+ s[0]=pos[0]<0?"S:":"N:"; s[1]=pos[1]<0?"W:":"E:";
+ s[2]=SolOpt.height==1?"H:":"He:";
+ s[3].sprintf("%.8f %s",fabs(pos[0])*R2D,CHARDEG);
+ s[4].sprintf("%.8f %s",fabs(pos[1])*R2D,CHARDEG);
+ s[5].sprintf("%.3f m",pos[2]);
+ s[6].sprintf("E:%6.3f N:%6.3f U:%6.3f m",SQRT(Qe[0]),SQRT(Qe[4]),SQRT(Qe[8]));
}
else if (SolType==2) {
- s[0]=L"X:"; s[1]=L"Y:"; s[2]=L"Z:";
- s[3].sprintf(L"%.3f m",rr[0]);
- s[4].sprintf(L"%.3f m",rr[1]);
- s[5].sprintf(L"%.3f m",rr[2]);
- s[6].sprintf(L"X:%6.3f Y:%6.3f Z:%6.3f m",SQRT(qr[0]),SQRT(qr[4]),SQRT(qr[8]));
+ s[0]="X:"; s[1]="Y:"; s[2]="Z:";
+ s[3].sprintf("%.3f m",rr[0]);
+ s[4].sprintf("%.3f m",rr[1]);
+ s[5].sprintf("%.3f m",rr[2]);
+ s[6].sprintf("X:%6.3f Y:%6.3f Z:%6.3f m",SQRT(qr[0]),SQRT(qr[4]),SQRT(qr[8]));
}
else if (SolType==3) {
if (len>0.0) {
ecef2pos(rb,pos); ecef2enu(pos,bl,enu); covenu(pos,qr,Qe);
}
- s[0]=L"E:"; s[1]=L"N:"; s[2]=L"U:";
- s[3].sprintf(L"%.3f m",enu[0]);
- s[4].sprintf(L"%.3f m",enu[1]);
- s[5].sprintf(L"%.3f m",enu[2]);
- s[6].sprintf(L"E:%6.3f N:%6.3f U:%6.3f m",SQRT(Qe[0]),SQRT(Qe[4]),SQRT(Qe[8]));
+ s[0]="E:"; s[1]="N:"; s[2]="U:";
+ s[3].sprintf("%.3f m",enu[0]);
+ s[4].sprintf("%.3f m",enu[1]);
+ s[5].sprintf("%.3f m",enu[2]);
+ s[6].sprintf("E:%6.3f N:%6.3f U:%6.3f m",SQRT(Qe[0]),SQRT(Qe[4]),SQRT(Qe[8]));
}
else {
if (len>0.0) {
@@ -1591,14 +1572,14 @@ void __fastcall TMainForm::UpdatePos(void)
pitch=asin(enu[2]/len);
yaw=atan2(enu[0],enu[1]); if (yaw<0.0) yaw+=2.0*PI;
}
- s[0]=L"P:"; s[1]=L"Y:"; s[2]=L"L:";
- s[3].sprintf(L"%.3f %c",pitch*R2D,CHARDEG);
- s[4].sprintf(L"%.3f %c",yaw*R2D,CHARDEG);
- s[5].sprintf(L"%.3f m",len);
- s[6].sprintf(L"E:%6.3f N:%6.3f U:%6.3f m",SQRT(Qe[0]),SQRT(Qe[4]),SQRT(Qe[8]));
+ s[0]="P:"; s[1]="Y:"; s[2]="L:";
+ s[3].sprintf("%.3f %s",pitch*R2D,CHARDEG);
+ s[4].sprintf("%.3f %s",yaw*R2D,CHARDEG);
+ s[5].sprintf("%.3f m",len);
+ s[6].sprintf("E:%6.3f N:%6.3f U:%6.3f m",SQRT(Qe[0]),SQRT(Qe[4]),SQRT(Qe[8]));
}
- s[7].sprintf(L"Age:%4.1f s Ratio:%4.1f #Sat:%2d",Age[PSol],Ratio[PSol],Nvsat[PSol]);
- if (Ratio[PSol]>0.0) s[8].sprintf(L" R:%4.1f",Ratio[PSol]);
+ s[7].sprintf("Age:%4.1f s Ratio:%4.1f #Sat:%2d",Age[PSol],Ratio[PSol],Nvsat[PSol]);
+ if (Ratio[PSol]>0.0) s[8].sprintf(" R:%4.1f",Ratio[PSol]);
for (i=0;i<8;i++) label[i]->Caption=s[i];
for (i=3;i<6;i++) {
@@ -1626,30 +1607,29 @@ void __fastcall TMainForm::UpdateStr(void)
ind[i]->Color=color[sstat[i]+1];
if (sstat[i]) {
Message->Caption=msg;
- Message->Parent->Hint=Message->Caption;
+ Message->Hint=Message->Caption;
}
}
}
// draw solution plot -------------------------------------------------------
void __fastcall TMainForm::DrawPlot(TImage *plot, int type, int freq)
{
- UnicodeString s1,s2;
+ UTF8String s1,s2,fstr[NFREQ+2];
gtime_t time;
TCanvas *c=plot->Canvas;
TLabel *label[]={Plabel1,Plabel2,Plabel3,Pos1,Pos2,Pos3};
- wchar_t *fstr[]={
- (wchar_t *)L"" ,(wchar_t *)L"L1 ",(wchar_t *)L"L2 ",(wchar_t *)L"L5 ",
- (wchar_t *)L"L6 ",(wchar_t *)L"L7 ",(wchar_t *)L"L8 ",(wchar_t *)L""
- };
int w=plot->Parent->Width-2,h=plot->Parent->Height-2;
int i,j,x,sat[2][MAXSAT],ns[2],snr[2][MAXSAT][NFREQ],vsat[2][MAXSAT];
- int *snr0[MAXSAT],*snr1[MAXSAT];
+ int *snr0[MAXSAT],*snr1[MAXSAT],tm=PanelFont->Size*3/2;
char name[16];
double az[2][MAXSAT],el[2][MAXSAT],rr[3],rs[6],e[3],pos[3],azel[2];
trace(4,"DrawPlot\n");
- fstr[NFREQ+1]=(wchar_t *)L"SYS ";
+ for (i=0;i0.0) {
- satazel(pos,e,azel);
- az[i][j]=azel[0];
- el[i][j]=azel[1];
- }
- }
if (ns[i]>0) {
Nsat[i]=ns[i];
for (int j=0;j=h*2) { // horizontal
DrawSat(c,h,h,0,0,0,freq);
- DrawSnr(c,w-h,h-15,h,15,0,freq);
- DrawText(c,x,1,s1,clGray,0);
- DrawText(c,x+h,1,s2,clGray,0);
+ DrawSnr(c,w-h,h-tm,h,tm,0,freq);
+ DrawText(c,x,1,s1,clGray,1,2);
+ DrawText(c,x+h,1,s2,clGray,1,2);
}
else { // vertical
DrawSat(c,w,h/2,0,0,0,freq);
- DrawSnr(c,w,(h-12)/2,0,14+(h-12)/2,0,freq);
- DrawText(c,x,1,s1,clGray,0);
+ DrawSnr(c,w,(h-tm)/2,0,tm+(h-tm)/2,1,freq);
+ DrawText(c,x,1,s1,clGray,1,2);
}
}
else if (type==4) { // skyplot rover+base
- s1.sprintf(L"Rover %s",fstr[freq]);
- s2.sprintf(L"Base %s",fstr[freq]);
+ s1="Rover "+fstr[freq];
+ s2="Base "+fstr[freq];
if (w>=h) { // horizontal
DrawSat(c,w/2,h,0 ,0,0,freq);
DrawSat(c,w/2,h,w/2,0,1,freq);
- DrawText(c,x,1,s1,clGray,0);
- DrawText(c,x+w/2,1,s2,clGray,0);
+ DrawText(c,x,1,s1,clGray,1,2);
+ DrawText(c,x+w/2,1,s2,clGray,1,2);
}
else { // vertical
DrawSat(c,w,h/2,0,0 ,0,freq);
DrawSat(c,w,h/2,0,h/2,1,freq);
- DrawText(c,x,1,s1,clGray,0);
- DrawText(c,x,h/2+1,s2,clGray,0);
+ DrawText(c,x,1,s1,clGray,1,2);
+ DrawText(c,x,h/2+1,s2,clGray,1,2);
}
}
else if (type==5) { // baseline plot
DrawBL(plot,w,h);
- DrawText(c,x,1,L"Baseline",clGray,0);
+ DrawText(c,x,1,"Baseline",clGray,1,2);
}
else if (type==6) { // track plot
DrawTrk(plot);
- DrawText(c,x,3,L"Gnd Trk",clGray,0);
+ DrawText(c,x,3,"Gnd Trk",clGray,1,2);
}
}
// update solution plot ------------------------------------------------------
@@ -1789,7 +1759,7 @@ void __fastcall TMainForm::UpdatePlot(void)
TColor __fastcall TMainForm::SnrColor(int snr)
{
TColor color[]={clGreen,CLORANGE,clFuchsia,clBlue,clRed,clGray};
- unsigned int c1,c2,r1,r2,g1,g2,b1,b2;
+ uint32_t c1,c2,r1,r2,g1,g2,b1,b2;
double a;
int i;
@@ -1798,13 +1768,13 @@ TColor __fastcall TMainForm::SnrColor(int snr)
if (snr>47) return color[0];
a=(snr-27.5)/5.0;
i=(int)a; a-=i;
- c1=(unsigned int)color[3-i];
- c2=(unsigned int)color[4-i];
+ c1=(uint32_t)color[3-i];
+ c2=(uint32_t)color[4-i];
r1=c1&0xFF; g1=(c1>>8)&0xFF; b1=(c1>>16)&0xFF;
r2=c2&0xFF; g2=(c2>>8)&0xFF; b2=(c2>>16)&0xFF;
- r1=(unsigned int)(a*r1+(1.0-a)*r2)&0xFF;
- g1=(unsigned int)(a*g1+(1.0-a)*g2)&0xFF;
- b1=(unsigned int)(a*b1+(1.0-a)*b2)&0xFF;
+ r1=(uint32_t)(a*r1+(1.0-a)*r2)&0xFF;
+ g1=(uint32_t)(a*g1+(1.0-a)*g2)&0xFF;
+ b1=(uint32_t)(a*b1+(1.0-a)*b2)&0xFF;
return (TColor)((b1<<16)+(g1<<8)+r1);
}
@@ -1814,25 +1784,30 @@ void __fastcall TMainForm::DrawSnr(TCanvas *c, int w, int h, int x0, int y0,
{
static const TColor color[]={
(TColor)0x00008000,(TColor)0x00008080,(TColor)0x00A000A0,
- (TColor)0x00800000,(TColor)0x00000080,(TColor)0x00808080
+ (TColor)0x00800000,(TColor)0x00000080,(TColor)0x00808000,
+ (TColor)0x00808080
};
static const TColor color_sys[]={
- clGreen,(TColor)0xAAFF,clFuchsia,clBlue,clRed,clGray
+ clGreen,(TColor)0xAAFF,clFuchsia,clBlue,clRed,clTeal,clGray
};
- UnicodeString s;
- int i,j,k,l,n,x1,x2,y1,y2,y3,k1,hh=h-15,ww,www,snr[NFREQ+1],mask[6]={0};
- char id[16],sys[]="GREJCS",*q;
+ UTF8String s;
+ int i,j,k,l,n,x1,x2,y1,y2,y3,k1,tm,bm,hh,ww,www,snr[NFREQ+1],mask[7]={0};
+ char id[16],sys[]="GREJCIS",*q;
trace(4,"DrawSnr: w=%d h=%d x0=%d y0=%d index=%d freq=%d\n",w,h,x0,y0,index,freq);
+ tm=PanelFont->Size*3/4;
+ bm=PanelFont->Size*7/4;
+ y0+=tm;
+ hh=h-tm-bm;
c->Pen->Color=clSilver;
for (snr[0]=MINSNR+10;snr[0]MoveTo(x0+3,y1); c->LineTo(x0+w-13,y1);
- DrawText(c,x0+w-9,y1,s.sprintf(L"%d",snr[0]),clGray,1);
+ c->MoveTo(x0+2,y1); c->LineTo(x0+w-2,y1);
+ DrawText(c,x0+w-4,y1,s.sprintf("%d",snr[0]),clGray,2,0);
}
y1=y0+hh;
- TRect b(x0+1,y0,x0+w-2,y1);
+ TRect b(x0+2,y0,x0+w-2,y1);
c->Pen->Color=clGray;
c->Brush->Style=bsClear;
c->Rectangle(b);
@@ -1843,7 +1818,7 @@ void __fastcall TMainForm::DrawSnr(TCanvas *c, int w, int h, int x0, int y0,
www=ww-2<8?ww-2:8;
x1=x0+i*(w-16)/Nsat[index]+ww/2;
satno2id(Sat[index][i],id);
- l=(q=strchr(sys,id[0]))?(int)(q-sys):5;
+ l=(q=strchr(sys,id[0]))?(int)(q-sys):6;
for (j=snr[0]=0;jRectangle(r1);
}
}
- DrawText(c,x1+www/2,y1+6,(s=id+1),color[l],1);
+ DrawText(c,x1+www/2,y1,(s=id+1),color[l],0,2);
mask[l]=1;
}
- for (i=n=0;i<6;i++) if (mask[i]) n++;
- for (i=j=0;i<6;i++) {
+ for (i=n=0;i<7;i++) if (mask[i]) n++;
+ for (i=j=0;i<7;i++) {
if (!mask[i]) continue;
sprintf(id,"%c",sys[i]);
- DrawText(c,x0+w-15+8*(-n+j++),y0+3,(s=id),color[i],0);
+ DrawText(c,x0+w-tm*3/2+PanelFont->Size*9/8*(-n+j++),y0+tm,(s=id),color[i],0,2);
}
}
// draw satellites in skyplot -----------------------------------------------
@@ -1886,14 +1861,14 @@ void __fastcall TMainForm::DrawSat(TCanvas *c, int w, int h, int x0, int y0,
int index, int freq)
{
static const TColor color_sys[]={
- clGreen,(TColor)0xAAFF,clFuchsia,clBlue,clRed,clGray
+ clGreen,(TColor)0xAAFF,clFuchsia,clBlue,clRed,clTeal,clGray
};
TColor color_text;
- UnicodeString s;
+ UTF8String s;
TPoint p(w/2,h/2);
double r=MIN(w*0.95,h*0.95)/2,azel[MAXSAT*2],dop[4];
int i,j,k,l,d,x[MAXSAT],y[MAXSAT],snr[NFREQ+1],ns=0;
- char id[16],sys[]="GREJCS",*q;
+ char id[16],sys[]="GREJCIS",*q;
trace(4,"DrawSat: w=%d h=%d index=%d freq=%d\n",w,h,index,freq);
@@ -1904,18 +1879,18 @@ void __fastcall TMainForm::DrawSat(TCanvas *c, int w, int h, int x0, int y0,
for (j=snr[0]=0;jNFREQ)&&snr[j+1]>snr[0])) {
- snr[0]=snr[j+1];
+ snr[0]=snr[j+1]; // max snr
}
}
- if (Vsat[index][k]&&snr[freq]>0) {
+ if (Vsat[index][k]&&(snr[freq]>0||freq>NFREQ)) {
azel[ns*2]=Az[index][k]; azel[1+ns*2]=El[index][k];
ns++;
}
satno2id(Sat[index][k],id);
- l=(q=strchr(sys,id[0]))?(int)(q-sys):5;
+ l=(q=strchr(sys,id[0]))?(int)(q-sys):6;
x[i]=(int)(p.x+r*(90-El[index][k]*R2D)/90*sin(Az[index][k]))+x0;
y[i]=(int)(p.y-r*(90-El[index][k]*R2D)/90*cos(Az[index][k]))+y0;
- d=SATSIZE/2;
+ d=PanelFont->Size*3/2;
c->Brush->Color=!Vsat[index][k]?clSilver:
(freqBrush->Style=bsSolid;
@@ -1928,19 +1903,19 @@ void __fastcall TMainForm::DrawSat(TCanvas *c, int w, int h, int x0, int y0,
}
c->Ellipse(x[i]-d,y[i]-d,x[i]+d+1,y[i]+d+1);
c->Brush->Style=bsClear;
- DrawText(c,x[i],y[i],s=id,color_text,1);
+ DrawText(c,x[i],y[i],s=id,color_text,0,0);
}
c->Brush->Style=bsClear;
dops(ns,azel,0.0,dop);
- DrawText(c,x0+3,y0+h-15,s.sprintf(L"#Sat:%2d/%2d",ns,Nsat[index]),clGray,0);
- DrawText(c,x0+w-3,y0+h-15,s.sprintf(L"GDOP: %.1f",dop[0]),clGray,2);
+ DrawText(c,x0+3,y0+h,s.sprintf("#Sat:%2d/%2d",ns,Nsat[index]),clGray,1,1);
+ DrawText(c,x0+w-3,y0+h,s.sprintf("GDOP: %.1f",dop[0]),clGray,2,1);
}
// draw baseline plot -------------------------------------------------------
void __fastcall TMainForm::DrawBL(TImage *plot, int w, int h)
{
TCanvas *c=plot->Canvas;
TColor color[]={clSilver,clGreen,CLORANGE,clFuchsia,clBlue,clRed,clTeal};
- UnicodeString s,label[]={"N","E","S","W"};
+ UTF8String s,label[]={"N","E","S","W"};
TPoint p(w/2,h/2),p1,p2,pp;
double r=MIN(w*0.95,h*0.95)/2;
double *rr=SolRov+PSol*3,*rb=SolRef+PSol*3;
@@ -2006,7 +1981,7 @@ void __fastcall TMainForm::DrawBL(TImage *plot, int w, int h)
c->LineTo(p.x+x2,p.y-y2);
c->Brush->Color=clWhite;
if (a%90==0) {
- DrawText(c,p.x+x1,p.y-y1,label[a/90],clGray,1);
+ DrawText(c,p.x+x1,p.y-y1,label[a/90],clGray,0,0);
}
if (a==0) {
x1=(int)((r-d1*3/2)*sin(a*D2R-az));
@@ -2026,9 +2001,9 @@ void __fastcall TMainForm::DrawBL(TImage *plot, int w, int h)
c->Ellipse(pp.x-d2/2+2,pp.y-d2/2+2,pp.x+d2/2-1,pp.y+d2/2-1);
c->Brush->Color=clWhite;
digit=len<1000.0?3:(len<10000.0?2:(len<100000.0?1:0));
- DrawText(c,p.x,p.y ,s.sprintf(L"%.*f m",digit,len),clGray,1);
- DrawText(c,5, h-15,s.sprintf(L"Y: %.1f%c",yaw*R2D,CHARDEG),clGray,0);
- DrawText(c,w-3,h-15,s.sprintf(L"P: %.1f%c",pitch*R2D,CHARDEG),clGray,2);
+ DrawText(c,p.x,p.y,s.sprintf("%.*f m",digit,len),clGray,0,0);
+ DrawText(c,3, h,s.sprintf("Y: %.1f%s",yaw*R2D,CHARDEG),clGray,1,1);
+ DrawText(c,w-3,h,s.sprintf("P: %.1f%s",pitch*R2D,CHARDEG),clGray,2,1);
}
// draw track plot ----------------------------------------------------------
void __fastcall TMainForm::DrawTrk(TImage *plot)
@@ -2037,7 +2012,7 @@ void __fastcall TMainForm::DrawTrk(TImage *plot)
TGraph *graph = new TGraph(plot);
TColor *c;
TPoint p1,p2;
- AnsiString label;
+ UTF8String label;
double scale[]={
0.00021,0.00047,0.001,0.0021,0.0047,0.01,0.021,0.047,0.1,0.21,0.47,
1.0,2.1,4.7,10.0,21.0,47.0,100.0,210.0,470.0,1000.0,2100.0,4700.0,
@@ -2124,7 +2099,7 @@ void __fastcall TMainForm::DrawTrk(TImage *plot)
if (norm(ref,3)>1E-6) {
p1.x+=2;
p1.y=p2.y+11;
- label.sprintf("%.9f %.9f",pos[0]*R2D,pos[1]*R2D);
+ label.sprintf("%.9f%s %.9f%s",pos[0]*R2D,CHARDEG,pos[1]*R2D,CHARDEG);
graph->DrawText(p1,label,clGray,clWhite,1,1,0);
}
delete graph;
@@ -2135,7 +2110,7 @@ void __fastcall TMainForm::DrawTrk(TImage *plot)
// draw skyplot -------------------------------------------------------------
void __fastcall TMainForm::DrawSky(TCanvas *c, int w, int h, int x0, int y0)
{
- UnicodeString label[]={"N","E","S","W"};
+ UTF8String label[]={"N","E","S","W"};
TPoint p(x0+w/2,y0+h/2);
double r=MIN(w*0.95,h*0.95)/2;
int a,e,d,x,y;
@@ -2152,17 +2127,22 @@ void __fastcall TMainForm::DrawSky(TCanvas *c, int w, int h, int x0, int y0)
y=(int)(r*cos(a*D2R));
c->Pen->Color=clSilver;
c->MoveTo(p.x,p.y); c->LineTo(p.x+x,p.y-y);
- if (a%90==0) DrawText(c,p.x+x,p.y-y,label[a/90],clGray,1);
+ if (a%90==0) DrawText(c,p.x+x,p.y-y,label[a/90],clGray,0,0);
}
}
// draw text ----------------------------------------------------------------
-void __fastcall TMainForm::DrawText(TCanvas *c, int x, int y, UnicodeString s,
- TColor color, int align)
+void __fastcall TMainForm::DrawText(TCanvas *c, int x, int y, UTF8String s,
+ TColor color, int ha, int va)
{
- TSize off=c->TextExtent(s);
- c->Font->Charset=ANSI_CHARSET;
- if (align==1) {x-=off.cx/2; y-=off.cy/2;} else if (align==2) x-=off.cx;
+ // ha = horizontal alignment (0: center, 1: left, 2: right)
+ // va = vertical alignment (0: center, 1: bottom, 2: top )
+ c->Font->Assign(PanelFont);
c->Font->Color=color;
+ TSize off=c->TextExtent(s);
+ if (ha==0) x-=off.cx/2;
+ else if (ha==2) x-=off.cx;
+ if (va==0) y-=off.cy/2;
+ else if (va==1) y-=off.cy;
c->TextOut(x,y,s);
}
// draw arrow ---------------------------------------------------------------
@@ -2202,7 +2182,7 @@ void __fastcall TMainForm::OpenMoniPort(int port)
if (stropen(&monistr,STR_TCPSVR,STR_MODE_RW,path)) {
strsettimeout(&monistr,TimeoutTime,ReconTime);
if (i>0) Caption=s.sprintf("%s ver.%s %s (%d)",PRGNAME,VER_RTKLIB,PATCH_LEVEL,i+1);
- OpenPort=MoniPort+i;
+ OpenPort=port+i;
return;
}
}
@@ -2262,7 +2242,7 @@ void __fastcall TMainForm::SaveLog(void)
if (!SaveDialog->Execute()) return;
if (!(fp=fopen(SaveDialog_FileName.c_str(),"wt"))) {
Message->Caption="log file open error";
- Message->Parent->Hint=Message->Caption;
+ Message->Hint=Message->Caption;
return;
}
opt=SolOpt;
@@ -2302,14 +2282,14 @@ void __fastcall TMainForm::LoadNav(nav_t *nav)
trace(3,"LoadNav\n");
- for (i=0;iReadString("navi",s.sprintf("eph_%02d",i),""))=="") continue;
nav->eph[i]=eph0;
strcpy(buff,str.c_str());
if (!(p=strchr(buff,','))) continue;
*p='\0';
if (!(nav->eph[i].sat=satid2no(buff))) continue;
- sscanf(p+1,"%d,%d,%d,%d,%ld,%ld,%ld,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%d,%d",
+ sscanf(p+1,"%d,%d,%d,%d,%ld,%ld,%ld,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf,%d,%d,%lf",
&nav->eph[i].iode,
&nav->eph[i].iodc,
&nav->eph[i].sva ,
@@ -2339,7 +2319,8 @@ void __fastcall TMainForm::LoadNav(nav_t *nav)
&nav->eph[i].f2 ,
&nav->eph[i].tgd[0],
&nav->eph[i].code,
- &nav->eph[i].flag);
+ &nav->eph[i].flag,
+ &nav->eph[i].tgd[1]);
nav->eph[i].toe.time=toe_time;
nav->eph[i].toc.time=toc_time;
nav->eph[i].ttr.time=ttr_time;
@@ -2349,13 +2330,12 @@ void __fastcall TMainForm::LoadNav(nav_t *nav)
sscanf(str.c_str(),"%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf",
nav->ion_gps ,nav->ion_gps+1,nav->ion_gps+2,nav->ion_gps+3,
nav->ion_gps+4,nav->ion_gps+5,nav->ion_gps+6,nav->ion_gps+7);
- str=ini->ReadString("navi","utc","");
- for (i=0;i<4;i++) nav->utc_gps[i]=0.0;
- sscanf(str.c_str(),"%lf,%lf,%lf,%lf",
- nav->utc_gps,nav->utc_gps+1,nav->utc_gps+2,nav->utc_gps+3);
-
- nav->leaps=ini->ReadInteger("navi","leaps",0);
+ str=ini->ReadString("navi","utc","");
+ for (i=0;i<8;i++) nav->utc_gps[i]=0.0;
+ sscanf(str.c_str(),"%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf",
+ nav->utc_gps,nav->utc_gps+1,nav->utc_gps+2,nav->utc_gps+3,
+ nav->utc_gps+4,nav->utc_gps+5,nav->utc_gps+6,nav->utc_gps+7);
delete ini;
}
@@ -2369,7 +2349,7 @@ void __fastcall TMainForm::SaveNav(nav_t *nav)
trace(3,"SaveNav\n");
- for (i=0;ieph[i].ttr.time==0) continue;
str="";
satno2id(nav->eph[i].sat,id);
@@ -2404,6 +2384,7 @@ void __fastcall TMainForm::SaveNav(nav_t *nav)
str=str+s.sprintf("%.14E,",nav->eph[i].tgd[0]);
str=str+s.sprintf("%d,",nav->eph[i].code);
str=str+s.sprintf("%d,",nav->eph[i].flag);
+ str=str+s.sprintf("%.14E,",nav->eph[i].tgd[1]);
ini->WriteString("navi",s.sprintf("eph_%02d",i),str);
}
str="";
@@ -2411,11 +2392,9 @@ void __fastcall TMainForm::SaveNav(nav_t *nav)
ini->WriteString("navi","ion",str);
str="";
- for (i=0;i<4;i++) str=str+s.sprintf("%.14E,",nav->utc_gps[i]);
+ for (i=0;i<8;i++) str=str+s.sprintf("%.14E,",nav->utc_gps[i]);
ini->WriteString("navi","utc",str);
- ini->WriteInteger("navi","leaps",nav->leaps);
-
delete ini;
}
// set tray icon ------------------------------------------------------------
@@ -2528,6 +2507,7 @@ void __fastcall TMainForm::LoadOpt(void)
strcpy(SolOpt.sep,s.c_str());
SolOpt.outhead =ini->ReadInteger("solopt", "outhead", 0);
SolOpt.outopt =ini->ReadInteger("solopt", "outopt", 0);
+ SolOpt.outvel =ini->ReadInteger("solopt", "outvel", 0);
PrcOpt.outsingle=ini->ReadInteger("prcopt", "outsingle", 0);
SolOpt.maxsolstd=ini->ReadFloat ("solopt", "maxsolstd", 0.0);
SolOpt.datum =ini->ReadInteger("solopt", "datum", 0);
@@ -2550,8 +2530,6 @@ void __fastcall TMainForm::LoadOpt(void)
GeoidDataFileF =ini->ReadString ("setting","geoiddatafile", "");
DCBFileF =ini->ReadString ("setting","dcbfile", "");
EOPFileF =ini->ReadString ("setting","eopfile", "");
- TLEFileF =ini->ReadString ("setting","tlefile", "");
- TLESatFileF =ini->ReadString ("setting","tlesatfile", "");
LocalDirectory =ini->ReadString ("setting","localdirectory","C:\\Temp");
SvrCycle =ini->ReadInteger("setting","svrcycle", 10);
@@ -2622,9 +2600,6 @@ void __fastcall TMainForm::LoadOpt(void)
for (i=0;i<10;i++) {
History[i]=ini->ReadString ("tcpopt",s.sprintf("history%d", i),"");
}
- for (i=0;i<10;i++) {
- MntpHist[i]=ini->ReadString("tcpopt",s.sprintf("mntphist%d",i),"");
- }
NMapPnt =ini->ReadInteger("mapopt","nmappnt",0);
for (i=0;iReadString("mapopt",s.sprintf("pntname%d",i+1),"");
@@ -2632,12 +2607,16 @@ void __fastcall TMainForm::LoadOpt(void)
PntPos[i][0]=PntPos[i][1]=PntPos[i][2]=0.0;
sscanf(pos.c_str(),"%lf,%lf,%lf",PntPos[i],PntPos[i]+1,PntPos[i]+2);
}
+ PanelFont->Name=ini->ReadString ("setting","panelfontname",PANELFONTNAME);
+ PanelFont->Size=ini->ReadInteger("setting","panelfontsize",PANELFONTSIZE);
+ PanelFont->Color=(TColor)ini->ReadInteger("setting","panelfontcolor",(int)clBlack);
PosFont->Name=ini->ReadString ("setting","posfontname",POSFONTNAME);
PosFont->Size=ini->ReadInteger("setting","posfontsize",POSFONTSIZE);
PosFont->Color=(TColor)ini->ReadInteger("setting","posfontcolor",(int)clBlack);
if (ini->ReadInteger("setting","posfontbold", 0)) PosFont->Style=PosFont->Style<ReadInteger("setting","posfontitalic",0)) PosFont->Style=PosFont->Style<Charset=ANSI_CHARSET;
+ PanelFont->Charset=ANSI_CHARSET;
+ PosFont ->Charset=ANSI_CHARSET;
TTextViewer::Color1=(TColor)ini->ReadInteger("viewer","color1",(int)clBlack);
TTextViewer::Color2=(TColor)ini->ReadInteger("viewer","color2",(int)clWhite);
@@ -2775,6 +2754,7 @@ void __fastcall TMainForm::SaveOpt(void)
ini->WriteString ("solopt", "sep", SolOpt.sep );
ini->WriteInteger("solopt", "outhead", SolOpt.outhead );
ini->WriteInteger("solopt", "outopt", SolOpt.outopt );
+ ini->WriteInteger("solopt", "outvel", SolOpt.outvel );
ini->WriteInteger("prcopt", "outsingle", PrcOpt.outsingle );
ini->WriteFloat ("solopt", "maxsolstd", SolOpt.maxsolstd );
ini->WriteInteger("solopt", "datum", SolOpt.datum );
@@ -2797,8 +2777,6 @@ void __fastcall TMainForm::SaveOpt(void)
ini->WriteString ("setting","geoiddatafile",GeoidDataFileF );
ini->WriteString ("setting","dcbfile", DCBFileF );
ini->WriteString ("setting","eopfile", EOPFileF );
- ini->WriteString ("setting","tlefile", TLEFileF );
- ini->WriteString ("setting","tlesatfile", TLESatFileF );
ini->WriteString ("setting","localdirectory",LocalDirectory );
ini->WriteInteger("setting","svrcycle", SvrCycle );
@@ -2869,9 +2847,6 @@ void __fastcall TMainForm::SaveOpt(void)
for (i=0;i<10;i++) {
ini->WriteString("tcpopt",s.sprintf("history%d" ,i),History [i]);
}
- for (i=0;i<10;i++) {
- ini->WriteString("tcpopt",s.sprintf("mntphist%d",i),MntpHist[i]);
- }
ini->WriteInteger("mapopt","nmappnt",NMapPnt);
for (i=0;iWriteString("mapopt",s1.sprintf("pntpos%d" ,i+1),
s2.sprintf("%.4f,%.4f,%.4f",PntPos[i][0],PntPos[i][1],PntPos[i][2]));
}
+ ini->WriteString ("setting","panelfontname", PanelFont->Name);
+ ini->WriteInteger("setting","panelfontsize", PanelFont->Size);
+ ini->WriteInteger("setting","panelfontcolor",(int)PanelFont->Color);
ini->WriteString ("setting","posfontname", PosFont->Name );
ini->WriteInteger("setting","posfontsize", PosFont->Size );
ini->WriteInteger("setting","posfontcolor",(int)PosFont->Color);
@@ -2908,7 +2886,6 @@ void __fastcall TMainForm::SaveOpt(void)
}
delete ini;
}
-
//---------------------------------------------------------------------------
void __fastcall TMainForm::BtnMarkClick(TObject *Sender)
{
@@ -2923,7 +2900,3 @@ void __fastcall TMainForm::BtnMarkClick(TObject *Sender)
}
//---------------------------------------------------------------------------
-
-
-//---------------------------------------------------------------------------
-
diff --git a/app/rtknavi/navimain.dfm b/app/winapp/rtknavi/navimain.dfm
similarity index 98%
rename from app/rtknavi/navimain.dfm
rename to app/winapp/rtknavi/navimain.dfm
index 11dbcda51..998cefa83 100644
--- a/app/rtknavi/navimain.dfm
+++ b/app/winapp/rtknavi/navimain.dfm
@@ -3,8 +3,8 @@ object MainForm: TMainForm
Top = 0
BorderIcons = [biMinimize]
Caption = 'RTKNAVI'
- ClientHeight = 299
- ClientWidth = 575
+ ClientHeight = 300
+ ClientWidth = 660
Color = clWindow
Constraints.MaxHeight = 1600
Constraints.MaxWidth = 2400
@@ -14,7 +14,6 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
- Scaled = False
OnClose = FormClose
OnCreate = FormCreate
OnShow = FormShow
@@ -24,8 +23,8 @@ object MainForm: TMainForm
AlignWithMargins = True
Left = 1
Top = 51
- Width = 573
- Height = 187
+ Width = 658
+ Height = 188
Margins.Left = 1
Margins.Top = 1
Margins.Right = 1
@@ -39,7 +38,7 @@ object MainForm: TMainForm
Left = 380
Top = 0
Width = 4
- Height = 187
+ Height = 188
Beveled = True
Color = clWhite
ParentColor = False
@@ -51,7 +50,7 @@ object MainForm: TMainForm
Left = 384
Top = 0
Width = 4
- Height = 187
+ Height = 188
Beveled = True
Color = clWhite
ParentColor = False
@@ -62,7 +61,7 @@ object MainForm: TMainForm
Left = 376
Top = 0
Width = 4
- Height = 187
+ Height = 188
Beveled = True
Color = clWhite
ParentColor = False
@@ -74,7 +73,7 @@ object MainForm: TMainForm
Left = 187
Top = 0
Width = 4
- Height = 187
+ Height = 188
Beveled = True
Color = clWhite
ParentColor = False
@@ -85,16 +84,108 @@ object MainForm: TMainForm
Left = 0
Top = 0
Width = 187
- Height = 187
+ Height = 188
Align = alLeft
BevelOuter = bvNone
Color = clWhite
ParentBackground = False
TabOrder = 0
OnResize = Panel21Resize
+ object Panel213: TPanel
+ Left = 0
+ Top = 172
+ Width = 187
+ Height = 16
+ Align = alBottom
+ TabOrder = 1
+ object ScbSol: TScrollBar
+ Left = 1
+ Top = 1
+ Width = 160
+ Height = 14
+ Margins.Left = 2
+ Margins.Top = 2
+ Margins.Right = 2
+ Margins.Bottom = 2
+ Align = alClient
+ Ctl3D = True
+ DoubleBuffered = False
+ Max = 0
+ PageSize = 0
+ ParentCtl3D = False
+ ParentDoubleBuffered = False
+ ParentShowHint = False
+ ShowHint = False
+ TabOrder = 0
+ OnChange = ScbSolChange
+ end
+ object BtnSave: TButton
+ Left = 161
+ Top = 1
+ Width = 25
+ Height = 14
+ Align = alRight
+ Caption = '...'
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clGray
+ Font.Height = -9
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 1
+ OnClick = BtnSaveClick
+ end
+ end
+ object Panel212: TPanel
+ Left = 0
+ Top = 0
+ Width = 187
+ Height = 18
+ Align = alTop
+ BevelOuter = bvNone
+ TabOrder = 2
+ object Plabel0: TLabel
+ Left = 28
+ Top = 1
+ Width = 135
+ Height = 13
+ AutoSize = False
+ BiDiMode = bdLeftToRight
+ Caption = 'Lat/Lon/Height'
+ Font.Charset = ANSI_CHARSET
+ Font.Color = clGray
+ Font.Height = -12
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentBiDiMode = False
+ ParentFont = False
+ end
+ object BtnSolType: TSpeedButton
+ Left = 156
+ Top = 0
+ Width = 25
+ Height = 17
+ Hint = 'Switch Solution Type'
+ AllowAllUp = True
+ Flat = True
+ Glyph.Data = {
+ DE000000424DDE00000000000000360000002800000007000000070000000100
+ 180000000000A800000000000000000000000000000000000000FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF00
+ 0000FFFFFFFFFFFF000000000000000000FFFFFFFFFFFF000000FFFFFF000000
+ 000000000000000000000000FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00
+ 0000}
+ ParentShowHint = False
+ ShowHint = True
+ Spacing = 0
+ OnClick = BtnSolTypeClick
+ end
+ end
object Panel211: TPanel
Left = 0
- Top = 17
+ Top = 18
Width = 187
Height = 154
Align = alClient
@@ -122,10 +213,11 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
+ Layout = tlCenter
end
object LabelStd: TLabel
Left = 1
- Top = 98
+ Top = 99
Width = 172
Height = 17
Alignment = taCenter
@@ -137,10 +229,11 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
+ Layout = tlCenter
end
object Plabel1: TLabel
Left = 13
- Top = 30
+ Top = 31
Width = 15
Height = 18
Caption = 'N:'
@@ -150,6 +243,7 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
+ Layout = tlCenter
end
object Plabel2: TLabel
Left = 13
@@ -163,6 +257,7 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
+ Layout = tlCenter
end
object Plabel3: TLabel
Left = 13
@@ -176,6 +271,7 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
+ Layout = tlCenter
end
object PlabelA: TLabel
Left = 12
@@ -189,6 +285,7 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
+ Layout = tlCenter
end
object Pos1: TLabel
Left = 64
@@ -203,6 +300,7 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
+ Layout = tlCenter
end
object Pos2: TLabel
Left = 64
@@ -217,6 +315,7 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
+ Layout = tlCenter
end
object Pos3: TLabel
Left = 105
@@ -231,10 +330,11 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
+ Layout = tlCenter
end
object Solution: TLabel
Left = 93
- Top = 7
+ Top = 9
Width = 28
Height = 19
Alignment = taRightJustify
@@ -245,6 +345,7 @@ object MainForm: TMainForm
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentFont = False
+ Layout = tlCenter
end
object IndSol: TPanel
Left = 150
@@ -258,104 +359,12 @@ object MainForm: TMainForm
TabOrder = 0
end
end
- object Panel213: TPanel
- Left = 0
- Top = 171
- Width = 187
- Height = 16
- Align = alBottom
- TabOrder = 1
- object ScbSol: TScrollBar
- Left = 1
- Top = 1
- Width = 160
- Height = 14
- Margins.Left = 2
- Margins.Top = 2
- Margins.Right = 2
- Margins.Bottom = 2
- Align = alClient
- Ctl3D = True
- DoubleBuffered = False
- Max = 0
- PageSize = 0
- ParentCtl3D = False
- ParentDoubleBuffered = False
- ParentShowHint = False
- ShowHint = False
- TabOrder = 0
- OnChange = ScbSolChange
- end
- object BtnSave: TButton
- Left = 161
- Top = 1
- Width = 25
- Height = 14
- Align = alRight
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 1
- OnClick = BtnSaveClick
- end
- end
- object Panel212: TPanel
- Left = 0
- Top = 0
- Width = 187
- Height = 17
- Align = alTop
- BevelOuter = bvNone
- TabOrder = 2
- object Plabel0: TLabel
- Left = 30
- Top = 2
- Width = 143
- Height = 13
- AutoSize = False
- BiDiMode = bdLeftToRight
- Caption = 'Lat/Lon/Height'
- Font.Charset = ANSI_CHARSET
- Font.Color = clGray
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentBiDiMode = False
- ParentFont = False
- end
- object BtnSolType: TSpeedButton
- Left = 156
- Top = 0
- Width = 25
- Height = 17
- Hint = 'Switch Solution Type'
- AllowAllUp = True
- Flat = True
- Glyph.Data = {
- DE000000424DDE00000000000000360000002800000007000000070000000100
- 180000000000A800000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF00
- 0000FFFFFFFFFFFF000000000000000000FFFFFFFFFFFF000000FFFFFF000000
- 000000000000000000000000FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00
- 0000}
- ParentShowHint = False
- ShowHint = True
- Spacing = 0
- OnClick = BtnSolTypeClick
- end
- end
end
object Panel22: TPanel
Left = 191
Top = 0
Width = 185
- Height = 187
+ Height = 188
Align = alLeft
BevelOuter = bvNone
Color = clWhite
@@ -372,7 +381,7 @@ object MainForm: TMainForm
Height = 1000
end
object Plot1: TImage
- Left = 0
+ Left = 1
Top = 0
Width = 1200
Height = 1000
@@ -480,8 +489,8 @@ object MainForm: TMainForm
object Panel23: TPanel
Left = 388
Top = 0
- Width = 185
- Height = 187
+ Width = 270
+ Height = 188
Align = alClient
BevelOuter = bvNone
Color = clWhite
@@ -606,8 +615,8 @@ object MainForm: TMainForm
object Panel24: TPanel
Left = 388
Top = 0
- Width = 185
- Height = 187
+ Width = 270
+ Height = 188
Align = alClient
BevelOuter = bvNone
Color = clWhite
@@ -732,8 +741,8 @@ object MainForm: TMainForm
object Panel25: TPanel
Left = 388
Top = 0
- Width = 185
- Height = 187
+ Width = 270
+ Height = 188
Align = alClient
BevelOuter = bvNone
Color = clWhite
@@ -859,8 +868,8 @@ object MainForm: TMainForm
object Panel3: TPanel
AlignWithMargins = True
Left = 1
- Top = 240
- Width = 573
+ Top = 241
+ Width = 658
Height = 25
Margins.Left = 1
Margins.Top = 1
@@ -912,7 +921,7 @@ object MainForm: TMainForm
object Message: TLabel
Left = 25
Top = 2
- Width = 500
+ Width = 585
Height = 21
Align = alClient
Alignment = taCenter
@@ -932,7 +941,7 @@ object MainForm: TMainForm
ExplicitHeight = 19
end
object BtnAbout: TSpeedButton
- Left = 548
+ Left = 633
Top = 2
Width = 23
Height = 21
@@ -954,7 +963,7 @@ object MainForm: TMainForm
ExplicitHeight = 24
end
object BtnTaskTray: TSpeedButton
- Left = 525
+ Left = 610
Top = 2
Width = 23
Height = 21
@@ -992,8 +1001,8 @@ object MainForm: TMainForm
object Panel4: TPanel
AlignWithMargins = True
Left = 0
- Top = 267
- Width = 575
+ Top = 268
+ Width = 660
Height = 31
Margins.Left = 0
Margins.Top = 1
@@ -1185,7 +1194,7 @@ object MainForm: TMainForm
AlignWithMargins = True
Left = 1
Top = 30
- Width = 573
+ Width = 658
Height = 19
Margins.Left = 1
Margins.Top = 1
@@ -1201,7 +1210,7 @@ object MainForm: TMainForm
OnResize = Panel5Resize
object SolS: TLabel
Left = 40
- Top = 2
+ Top = 1
Width = 44
Height = 13
Alignment = taCenter
@@ -1215,14 +1224,14 @@ object MainForm: TMainForm
ParentFont = False
end
object SolQ: TLabel
- Left = 86
- Top = 2
- Width = 38
- Height = 13
+ Left = 87
+ Top = 0
+ Width = 44
+ Height = 14
Caption = 'Solution'
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
- Font.Height = -11
+ Font.Height = -12
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
@@ -1247,8 +1256,8 @@ object MainForm: TMainForm
OnClick = BtnSolTypeClick
end
object IndQ: TPanel
- Left = 32
- Top = 4
+ Left = 33
+ Top = 3
Width = 10
Height = 10
BevelInner = bvRaised
@@ -1307,7 +1316,7 @@ object MainForm: TMainForm
AlignWithMargins = True
Left = 1
Top = 1
- Width = 573
+ Width = 658
Height = 27
Margins.Left = 1
Margins.Top = 1
@@ -1318,7 +1327,7 @@ object MainForm: TMainForm
BevelOuter = bvLowered
TabOrder = 0
object LabelTime: TLabel
- Left = 4
+ Left = 5
Top = 6
Width = 144
Height = 15
@@ -1359,7 +1368,7 @@ object MainForm: TMainForm
end
end
object Panel12: TPanel
- Left = 384
+ Left = 469
Top = 2
Width = 187
Height = 23
@@ -1681,9 +1690,10 @@ object MainForm: TMainForm
end
end
object Timer: TTimer
- Interval = 40
+ Enabled = False
+ Interval = 100
OnTimer = TimerTimer
- Left = 292
+ Left = 293
Top = 156
end
object SaveDialog: TSaveDialog
@@ -1744,7 +1754,7 @@ object MainForm: TMainForm
Left = 274
Top = 91
Bitmap = {
- 494C010102000400200110001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
+ 494C010102000400040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
0000000000003600000028000000400000001000000001002000000000000010
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
diff --git a/app/rtknavi/navimain.h b/app/winapp/rtknavi/navimain.h
similarity index 96%
rename from app/rtknavi/navimain.h
rename to app/winapp/rtknavi/navimain.h
index c856c506c..1b66aa708 100644
--- a/app/rtknavi/navimain.h
+++ b/app/winapp/rtknavi/navimain.h
@@ -194,8 +194,6 @@ class TMainForm : public TForm
void __fastcall BtnPlotType4Click(TObject *Sender);
void __fastcall BtnFreqType4Click(TObject *Sender);
private:
- tle_t TLEData;
-
void __fastcall UpdateLog (int stat, gtime_t time, double *rr, float *qr,
double *rb, int ns, double age, double ratio);
void __fastcall SvrStart (void);
@@ -218,8 +216,8 @@ class TMainForm : public TForm
void __fastcall DrawBL (TImage *plot, int w, int h);
void __fastcall DrawTrk (TImage *plot);
void __fastcall DrawSky (TCanvas *c, int w, int h, int x0, int y0);
- void __fastcall DrawText (TCanvas *c, int x, int y, UnicodeString s,
- TColor color, int align);
+ void __fastcall DrawText (TCanvas *c, int x, int y, UTF8String s,
+ TColor color, int ha, int va);
void __fastcall DrawArrow (TCanvas *c, int x, int y, int siz,
int ang, TColor color);
void __fastcall OpenMoniPort (int port);
@@ -235,6 +233,7 @@ class TMainForm : public TForm
public:
AnsiString IniFile;
+ int TimerCycle,TimerInact;
int PanelStack,PanelMode;
int SvrCycle,SvrBuffSize,Scale,SolBuffSize,NavSelect,SavedSol;
int NmeaReq,NmeaCycle,InTimeTag,InTime64Bit;
@@ -248,7 +247,7 @@ class TMainForm : public TForm
int TrkType1,TrkType2,TrkType3,TrkType4;
int TrkScale1,TrkScale2,TrkScale3,TrkScale4;
int BLMode1,BLMode2,BLMode3,BLMode4;
- int MoniPort,OpenPort;
+ int MoniPort,OpenPort,AutoRun;
int PSol,PSolS,PSolE,Nsat[2],SolCurrentStat;
int Sat[2][MAXSAT],Snr[2][MAXSAT][NFREQ],Vsat[2][MAXSAT];
@@ -263,7 +262,7 @@ class TMainForm : public TForm
AnsiString OutSwapInterval,LogSwapInterval,ResetCmd;
prcopt_t PrcOpt;
solopt_t SolOpt;
- TFont *PosFont;
+ TFont *PanelFont,*PosFont;
int DebugTraceF,DebugStatusF,OutputGeoidF,BaselineC;
int RovPosTypeF,RefPosTypeF,RovAntPcvF,RefAntPcvF;
AnsiString RovAntF,RefAntF,SatPcvFileF,AntPcvFileF;
@@ -271,8 +270,8 @@ class TMainForm : public TForm
double Baseline[2];
AnsiString History[10],MntpHist[10];
- AnsiString GeoidDataFileF,StaPosFileF,DCBFileF,EOPFileF,TLEFileF;
- AnsiString TLESatFileF,LocalDirectory,PntName[MAXMAPPNT];
+ AnsiString GeoidDataFileF,StaPosFileF,DCBFileF,EOPFileF;
+ AnsiString LocalDirectory,PntName[MAXMAPPNT];
double PntPos[MAXMAPPNT][3];
int NMapPnt;
diff --git a/app/rtknavi/naviopt.cpp b/app/winapp/rtknavi/naviopt.cpp
similarity index 94%
rename from app/rtknavi/naviopt.cpp
rename to app/winapp/rtknavi/naviopt.cpp
index da33991f0..6151b3fce 100644
--- a/app/rtknavi/naviopt.cpp
+++ b/app/winapp/rtknavi/naviopt.cpp
@@ -8,6 +8,7 @@
#include "refdlg.h"
#include "navimain.h"
#include "maskoptdlg.h"
+#include "freqdlg.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
@@ -93,16 +94,21 @@ __fastcall TOptDialog::TOptDialog(TComponent* Owner)
: TForm(Owner)
{
AnsiString label,s;
- int freq[]={1,2,5,6,7,8,9},nglo=MAXPRNGLO,ngal=MAXPRNGAL,nqzs=MAXPRNQZS;
+ int nglo=MAXPRNGLO,ngal=MAXPRNGAL,nqzs=MAXPRNQZS;
int ncmp=MAXPRNCMP,nirn=MAXPRNIRN;
+
PrcOpt=prcopt_default;
SolOpt=solopt_default;
UpdateEnable();
+ PanelFont=new TFont;
PosFont=new TFont;
Freq->Items->Clear();
for (int i=0;i0?"+":"")+s.sprintf("L%d",freq[i]);
+ label="L1";
+ for (int j=1;j<=i;j++) {
+ label+=s.sprintf("+%d",j+1);
+ }
Freq->Items->Add(label);
}
if (nglo<=0) NavSys2->Enabled=false;
@@ -291,41 +297,28 @@ void __fastcall TOptDialog::BtnEOPViewClick(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TOptDialog::BtnLocalDirClick(TObject *Sender)
{
-#ifdef TCPP
- AnsiString dir=LocalDir->Text;
- if (!SelectDirectory("FTP/HTTP Local Directory","",dir)) return;
- LocalDir->Text=dir;
-#else
UnicodeString dir=LocalDir->Text;
TSelectDirExtOpts opt=TSelectDirExtOpts()<Text=dir;
-#endif
}
//---------------------------------------------------------------------------
-void __fastcall TOptDialog::BtnFontClick(TObject *Sender)
+void __fastcall TOptDialog::BtnFont1Click(TObject *Sender)
{
- AnsiString s;
- FontDialog->Font=FontLabel->Font;
+ UTF8String s;
+ FontDialog->Font=FontLabel1->Font;
if (!FontDialog->Execute()) return;
- FontLabel->Font=FontDialog->Font;
- FontLabel->Caption=FontLabel->Font->Name+s.sprintf(" %dpt",FontLabel->Font->Size);
+ FontLabel1->Font=FontDialog->Font;
+ FontLabel1->Caption=FontLabel1->Font->Name+s.sprintf(" %dpt",FontLabel1->Font->Size);
}
//---------------------------------------------------------------------------
-void __fastcall TOptDialog::BtnTLESatFileClick(TObject *Sender)
+void __fastcall TOptDialog::BtnFont2Click(TObject *Sender)
{
- OpenDialog->Title="TLE Satellite Number File";
- OpenDialog->FilterIndex=1;
- if (!OpenDialog->Execute()) return;
- TLESatFile->Text=OpenDialog->FileName;
-}
-//---------------------------------------------------------------------------
-void __fastcall TOptDialog::BtnTLEFileClick(TObject *Sender)
-{
- OpenDialog->Title="TLE Data File";
- OpenDialog->FilterIndex=1;
- if (!OpenDialog->Execute()) return;
- TLEFile->Text=OpenDialog->FileName;
+ UTF8String s;
+ FontDialog->Font=FontLabel2->Font;
+ if (!FontDialog->Execute()) return;
+ FontLabel2->Font=FontDialog->Font;
+ FontLabel2->Caption=FontLabel2->Font->Name+s.sprintf(" %dpt",FontLabel2->Font->Size);
}
//---------------------------------------------------------------------------
void __fastcall TOptDialog::FreqChange(TObject *Sender)
@@ -449,6 +442,7 @@ void __fastcall TOptDialog::GetOpt(void)
FieldSep ->Text =SolOpt.sep;
OutputHead ->ItemIndex=SolOpt.outhead;
OutputOpt ->ItemIndex=SolOpt.outopt;
+ OutputVel ->ItemIndex=SolOpt.outvel;
OutputSingle ->ItemIndex=PrcOpt.outsingle;
MaxSolStd ->Text =s.sprintf("%.2g",SolOpt.maxsolstd);
OutputDatum ->ItemIndex=SolOpt.datum;
@@ -499,8 +493,6 @@ void __fastcall TOptDialog::GetOpt(void)
GeoidDataFile->Text =GeoidDataFileF;
DCBFile ->Text =DCBFileF;
EOPFile ->Text =EOPFileF;
- TLEFile ->Text =TLEFileF;
- TLESatFile ->Text =TLESatFileF;
LocalDir ->Text =LocalDirectory;
ReadAntList();
@@ -519,8 +511,10 @@ void __fastcall TOptDialog::GetOpt(void)
SolBuffSizeE ->Text =s.sprintf("%d",SolBuffSize);
PanelStackE ->ItemIndex=PanelStack;
- FontLabel->Font->Assign(PosFont);
- FontLabel->Caption=FontLabel->Font->Name+s.sprintf(" %dpt",FontLabel->Font->Size);
+ FontLabel1->Font->Assign(PanelFont);
+ FontLabel1->Caption=FontLabel1->Font->Name+s.sprintf(" %dpt",FontLabel1->Font->Size);
+ FontLabel2->Font->Assign(PosFont);
+ FontLabel2->Caption=FontLabel2->Font->Name+s.sprintf(" %dpt",FontLabel2->Font->Size);
UpdateEnable();
}
//---------------------------------------------------------------------------
@@ -578,6 +572,7 @@ void __fastcall TOptDialog::SetOpt(void)
strcpy(SolOpt.sep,FieldSep_Text.c_str());
SolOpt.outhead =OutputHead ->ItemIndex;
SolOpt.outopt =OutputOpt ->ItemIndex;
+ SolOpt.outvel =OutputVel ->ItemIndex;
PrcOpt.outsingle =OutputSingle->ItemIndex;
SolOpt.maxsolstd =str2dbl(MaxSolStd->Text);
SolOpt.datum =OutputDatum ->ItemIndex;
@@ -628,8 +623,6 @@ void __fastcall TOptDialog::SetOpt(void)
GeoidDataFileF =GeoidDataFile->Text;
DCBFileF =DCBFile ->Text;
EOPFileF =EOPFile ->Text;
- TLEFileF =TLEFile ->Text;
- TLESatFileF =TLESatFile ->Text;
LocalDirectory =LocalDir ->Text;
SvrCycle =SvrCycleE ->Text.ToInt();
@@ -646,14 +639,15 @@ void __fastcall TOptDialog::SetOpt(void)
MoniPort =MoniPortE ->Text.ToInt();
PanelStack =PanelStackE ->ItemIndex;
- PosFont->Assign(FontLabel->Font);
+ PanelFont->Assign(FontLabel1->Font);
+ PosFont ->Assign(FontLabel2->Font);
UpdateEnable();
}
//---------------------------------------------------------------------------
void __fastcall TOptDialog::LoadOpt(AnsiString file)
{
int itype[]={STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPCLI,STR_FILE,STR_FTP,STR_HTTP};
- int otype[]={STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPSVR,STR_NTRIPC_C,STR_FILE};
+ int otype[]={STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPSVR,STR_NTRIPCAS,STR_FILE};
TEdit *editu[]={RovPos1,RovPos2,RovPos3};
TEdit *editr[]={RefPos1,RefPos2,RefPos3};
AnsiString s;
@@ -754,6 +748,7 @@ void __fastcall TOptDialog::LoadOpt(AnsiString file)
FieldSep ->Text =solopt.sep;
OutputHead ->ItemIndex =solopt.outhead;
OutputOpt ->ItemIndex =solopt.outopt;
+ OutputVel ->ItemIndex =solopt.outvel;
OutputSingle ->ItemIndex =prcopt.outsingle;
MaxSolStd ->Text =s.sprintf("%.2g",solopt.maxsolstd);
OutputDatum ->ItemIndex =solopt.datum;
@@ -793,8 +788,7 @@ void __fastcall TOptDialog::LoadOpt(AnsiString file)
RovPosTypeP ->ItemIndex =0;
RefPosTypeP ->ItemIndex =0;
if (prcopt.refpos==POSOPT_RTCM ) RefPosTypeP->ItemIndex=3;
- else if (prcopt.refpos==POSOPT_RAW ) RefPosTypeP->ItemIndex=4;
- else if (prcopt.refpos==POSOPT_SINGLE) RefPosTypeP->ItemIndex=5;
+ else if (prcopt.refpos==POSOPT_SINGLE) RefPosTypeP->ItemIndex=4;
RovPosTypeF =RovPosTypeP->ItemIndex;
RefPosTypeF =RefPosTypeP->ItemIndex;
@@ -825,7 +819,7 @@ void __fastcall TOptDialog::SaveOpt(AnsiString file)
AnsiString DCBFile_Text=DCBFile->Text;
AnsiString LocalDir_Text=LocalDir->Text;
int itype[]={STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPCLI,STR_FILE,STR_FTP,STR_HTTP};
- int otype[]={STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPSVR,STR_NTRIPC_C,STR_FILE};
+ int otype[]={STR_SERIAL,STR_TCPCLI,STR_TCPSVR,STR_NTRIPSVR,STR_NTRIPCAS,STR_FILE};
TEdit *editu[]={RovPos1,RovPos2,RovPos3};
TEdit *editr[]={RefPos1,RefPos2,RefPos3};
char buff[1024],*p,*q,id[32],comment[256],s[64];
@@ -882,7 +876,7 @@ void __fastcall TOptDialog::SaveOpt(AnsiString file)
if ((p=strchr(buff,'/'))&&(q=strchr(p+1,':'))) *q='\0';
strcpy(strpath[i],buff);
}
- else if (strtype[i]==STR_NTRIPC_S||strtype[i]==STR_NTRIPC_C) {
+ else if (strtype[i]==STR_NTRIPCAS) {
strcpy(buff,MainForm->Paths[i][1].c_str());
if ((p=strchr(buff,'/'))&&(q=strchr(p+1,':'))) *q='\0';
if ((p=strchr(buff,'@'))) {
@@ -970,6 +964,7 @@ void __fastcall TOptDialog::SaveOpt(AnsiString file)
strcpy(solopt.sep,FieldSep_Text.c_str());
solopt.outhead =OutputHead ->ItemIndex;
solopt.outopt =OutputOpt ->ItemIndex;
+ solopt.outvel =OutputVel ->ItemIndex;
prcopt.outsingle=OutputSingle->ItemIndex;
solopt.maxsolstd=str2dbl(MaxSolStd->Text);
solopt.datum =OutputDatum ->ItemIndex;
@@ -1007,8 +1002,7 @@ void __fastcall TOptDialog::SaveOpt(AnsiString file)
prcopt.rovpos=POSOPT_POS;
prcopt.refpos=POSOPT_POS;
if (RefPosTypeP->ItemIndex==3) prcopt.refpos=POSOPT_RTCM;
- else if (RefPosTypeP->ItemIndex==4) prcopt.refpos=POSOPT_RAW;
- else if (RefPosTypeP->ItemIndex==5) prcopt.refpos=POSOPT_SINGLE;
+ else if (RefPosTypeP->ItemIndex==4) prcopt.refpos=POSOPT_SINGLE;
if (prcopt.rovpos==POSOPT_POS) GetPos(RovPosTypeP->ItemIndex,editu,prcopt.ru);
if (prcopt.refpos==POSOPT_POS) GetPos(RefPosTypeP->ItemIndex,editr,prcopt.rb);
@@ -1078,16 +1072,16 @@ void __fastcall TOptDialog::UpdateEnable(void)
RovAntPcv ->Enabled=rel||ppp;
RovAnt ->Enabled=(rel||ppp)&&RovAntPcv->Checked;
- RovAntE ->Enabled=(rel||ppp)&&RovAntPcv->Checked;
- RovAntN ->Enabled=(rel||ppp)&&RovAntPcv->Checked;
- RovAntU ->Enabled=(rel||ppp)&&RovAntPcv->Checked;
- LabelRovAntD ->Enabled=(rel||ppp)&&RovAntPcv->Checked;
+ RovAntE ->Enabled=(rel||ppp)&&RovAntPcv->Checked&&RovAnt->Text!="*";
+ RovAntN ->Enabled=(rel||ppp)&&RovAntPcv->Checked&&RovAnt->Text!="*";
+ RovAntU ->Enabled=(rel||ppp)&&RovAntPcv->Checked&&RovAnt->Text!="*";
+ LabelRovAntD ->Enabled=(rel||ppp)&&RovAntPcv->Checked&&RovAnt->Text!="*";
RefAntPcv ->Enabled=rel;
RefAnt ->Enabled=rel&&RefAntPcv->Checked;
- RefAntE ->Enabled=rel&&RefAntPcv->Checked;
- RefAntN ->Enabled=rel&&RefAntPcv->Checked;
- RefAntU ->Enabled=rel&&RefAntPcv->Checked;
- LabelRefAntD ->Enabled=rel&&RefAntPcv->Checked;
+ RefAntE ->Enabled=rel&&RefAntPcv->Checked&&RefAnt->Text!="*";
+ RefAntN ->Enabled=rel&&RefAntPcv->Checked&&RefAnt->Text!="*";
+ RefAntU ->Enabled=rel&&RefAntPcv->Checked&&RefAnt->Text!="*";
+ LabelRefAntD ->Enabled=rel&&RefAntPcv->Checked&&RefAnt->Text!="*";
RovPosTypeP ->Enabled=PosMode->ItemIndex==PMODE_FIXED||PosMode->ItemIndex==PMODE_PPP_FIXED;
RovPos1 ->Enabled=RovPosTypeP->Enabled&&RovPosTypeP->ItemIndex<=2;
@@ -1101,9 +1095,9 @@ void __fastcall TOptDialog::UpdateEnable(void)
RefPos3 ->Enabled=RefPosTypeP->Enabled&&RefPosTypeP->ItemIndex<=2;
BtnRefPos ->Enabled=RefPosTypeP->Enabled&&RefPosTypeP->ItemIndex<=2;
- LabelMaxAveEp ->Visible=RefPosTypeP->ItemIndex==5;
- MaxAveEp ->Visible=RefPosTypeP->ItemIndex==5;
- ChkInitRestart ->Visible=RefPosTypeP->ItemIndex==5;
+ LabelMaxAveEp ->Visible=RefPosTypeP->ItemIndex==4;
+ MaxAveEp ->Visible=RefPosTypeP->ItemIndex==4;
+ ChkInitRestart ->Visible=RefPosTypeP->ItemIndex==4;
// SbasSatE ->Enabled=PosMode->ItemIndex==0;
}
@@ -1194,4 +1188,20 @@ void __fastcall TOptDialog::NavSys6Click(TObject *Sender)
UpdateEnable();
}
//---------------------------------------------------------------------------
+void __fastcall TOptDialog::BtnFreqClick(TObject *Sender)
+{
+ FreqDialog->ShowModal();
+}
+//---------------------------------------------------------------------------
+void __fastcall TOptDialog::RefAntClick(TObject *Sender)
+{
+ UpdateEnable();
+}
+//---------------------------------------------------------------------------
+void __fastcall TOptDialog::RovAntClick(TObject *Sender)
+{
+ UpdateEnable();
+}
+//---------------------------------------------------------------------------
+
diff --git a/app/rtknavi/naviopt.dfm b/app/winapp/rtknavi/naviopt.dfm
similarity index 94%
rename from app/rtknavi/naviopt.dfm
rename to app/winapp/rtknavi/naviopt.dfm
index 1c1dd70ba..033f793b5 100644
--- a/app/rtknavi/naviopt.dfm
+++ b/app/winapp/rtknavi/naviopt.dfm
@@ -4,7 +4,7 @@ object OptDialog: TOptDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'Options'
- ClientHeight = 295
+ ClientHeight = 297
ClientWidth = 411
Color = clWhite
Font.Charset = DEFAULT_CHARSET
@@ -26,17 +26,17 @@ object OptDialog: TOptDialog
end
object BtnCancel: TButton
Left = 310
- Top = 264
- Width = 99
+ Top = 265
+ Width = 96
Height = 29
Caption = '&Cancel'
ModalResult = 2
TabOrder = 1
end
object BtnOk: TButton
- Left = 211
- Top = 264
- Width = 99
+ Left = 212
+ Top = 265
+ Width = 96
Height = 29
Caption = '&OK'
ModalResult = 1
@@ -44,11 +44,11 @@ object OptDialog: TOptDialog
OnClick = BtnOkClick
end
object BtnSave: TButton
- Left = 100
- Top = 264
- Width = 99
+ Left = 102
+ Top = 265
+ Width = 96
Height = 29
- Caption = '&Save'
+ Caption = '&Save...'
TabOrder = 3
OnClick = BtnSaveClick
end
@@ -118,6 +118,16 @@ object OptDialog: TOptDialog
Height = 13
Caption = 'Excluded Satellites (+PRN: Included)'
end
+ object BtnFreq: TSpeedButton
+ Left = 158
+ Top = 24
+ Width = 18
+ Height = 22
+ Caption = '?'
+ Flat = True
+ Spacing = 0
+ OnClick = BtnFreqClick
+ end
object NavSys1: TCheckBox
Left = 24
Top = 210
@@ -126,7 +136,7 @@ object OptDialog: TOptDialog
Caption = 'GPS'
Checked = True
State = cbChecked
- TabOrder = 9
+ TabOrder = 17
end
object DynamicModel: TComboBox
Left = 248
@@ -135,7 +145,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 3
+ TabOrder = 5
Text = 'OFF'
Items.Strings = (
'OFF'
@@ -148,7 +158,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 5
+ TabOrder = 7
Text = 'OFF'
Items.Strings = (
'OFF'
@@ -157,8 +167,7 @@ object OptDialog: TOptDialog
'Iono-Free LC'
'Estimate STEC'
'IONEX TEC'
- 'QZSS Broadcast'
- 'QZSS LEX')
+ 'QZSS Broadcast')
end
object TropOpt: TComboBox
Left = 248
@@ -167,7 +176,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 6
+ TabOrder = 8
Text = 'OFF'
Items.Strings = (
'OFF'
@@ -220,7 +229,7 @@ object OptDialog: TOptDialog
Style = csDropDownList
Enabled = False
ItemIndex = 0
- TabOrder = 2
+ TabOrder = 4
Text = 'Forward'
Items.Strings = (
'Forward'
@@ -234,7 +243,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 7
+ TabOrder = 9
Text = 'Broadcast'
Items.Strings = (
'Broadcast'
@@ -249,40 +258,32 @@ object OptDialog: TOptDialog
Top = 184
Width = 179
Height = 21
- TabOrder = 8
+ TabOrder = 16
end
object NavSys2: TCheckBox
- Left = 68
+ Left = 66
Top = 210
Width = 71
Height = 17
- Caption = 'GLO'
- TabOrder = 10
+ Caption = 'GLONASS'
+ TabOrder = 18
OnClick = NavSys2Click
end
object NavSys3: TCheckBox
- Left = 114
+ Left = 134
Top = 210
Width = 61
Height = 17
Caption = 'Galileo'
- TabOrder = 11
+ TabOrder = 19
end
object NavSys4: TCheckBox
- Left = 168
+ Left = 188
Top = 210
Width = 61
Height = 17
Caption = 'QZSS'
- TabOrder = 12
- end
- object NavSys5: TCheckBox
- Left = 218
- Top = 210
- Width = 51
- Height = 17
- Caption = 'SBAS'
- TabOrder = 13
+ TabOrder = 20
end
object TideCorr: TComboBox
Left = 325
@@ -291,19 +292,19 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 4
+ TabOrder = 6
Text = 'OFF'
Items.Strings = (
'OFF'
'Solid')
end
object NavSys6: TCheckBox
- Left = 268
+ Left = 239
Top = 210
Width = 69
Height = 19
- Caption = 'BeiDou'
- TabOrder = 14
+ Caption = 'BDS'
+ TabOrder = 21
OnClick = NavSys6Click
end
object ElMask: TComboBox
@@ -313,7 +314,7 @@ object OptDialog: TOptDialog
Height = 21
AutoComplete = False
DropDownCount = 16
- TabOrder = 15
+ TabOrder = 2
Text = '15'
Items.Strings = (
'0'
@@ -338,7 +339,7 @@ object OptDialog: TOptDialog
Width = 61
Height = 17
Caption = 'Sat PCV'
- TabOrder = 16
+ TabOrder = 10
end
object PosOpt2: TCheckBox
Left = 82
@@ -346,7 +347,7 @@ object OptDialog: TOptDialog
Width = 62
Height = 17
Caption = 'Rec PCV'
- TabOrder = 17
+ TabOrder = 11
end
object PosOpt3: TCheckBox
Left = 142
@@ -354,7 +355,7 @@ object OptDialog: TOptDialog
Width = 69
Height = 17
Caption = 'PhWU'
- TabOrder = 18
+ TabOrder = 12
end
object PosOpt4: TCheckBox
Left = 191
@@ -362,7 +363,7 @@ object OptDialog: TOptDialog
Width = 68
Height = 17
Caption = 'Rej Ecl'
- TabOrder = 19
+ TabOrder = 13
end
object PosOpt5: TCheckBox
Left = 244
@@ -370,7 +371,7 @@ object OptDialog: TOptDialog
Width = 68
Height = 17
Caption = 'RAIM FDE'
- TabOrder = 20
+ TabOrder = 14
end
object BtnSnrMask: TButton
Left = 324
@@ -378,7 +379,7 @@ object OptDialog: TOptDialog
Width = 77
Height = 23
Caption = '...'
- TabOrder = 22
+ TabOrder = 3
OnClick = BtnSnrMaskClick
end
object PosOpt6: TCheckBox
@@ -387,21 +388,33 @@ object OptDialog: TOptDialog
Width = 68
Height = 17
Caption = 'DBCorr'
- TabOrder = 21
+ TabOrder = 15
end
object NavSys7: TCheckBox
- Left = 322
+ Left = 283
Top = 210
Width = 69
Height = 19
- Caption = 'IRNSS'
- TabOrder = 23
+ Caption = 'NavIC'
+ TabOrder = 22
OnClick = NavSys6Click
end
+ object NavSys5: TCheckBox
+ Left = 338
+ Top = 210
+ Width = 51
+ Height = 17
+ Caption = 'SBAS'
+ TabOrder = 23
+ end
end
object TabSheet2: TTabSheet
Caption = 'Setting&2'
ImageIndex = 1
+ ExplicitLeft = 0
+ ExplicitTop = 0
+ ExplicitWidth = 0
+ ExplicitHeight = 0
object Label25: TLabel
Left = 24
Top = 7
@@ -468,7 +481,7 @@ object OptDialog: TOptDialog
object AmbRes: TComboBox
Left = 248
Top = 4
- Width = 62
+ Width = 61
Height = 21
Style = csDropDownList
ItemIndex = 0
@@ -546,7 +559,7 @@ object OptDialog: TOptDialog
Text = '1'
end
object GloAmbRes: TComboBox
- Left = 312
+ Left = 311
Top = 4
Width = 43
Height = 21
@@ -640,7 +653,7 @@ object OptDialog: TOptDialog
'ON')
end
object BdsAmbRes: TComboBox
- Left = 357
+ Left = 356
Top = 4
Width = 43
Height = 21
@@ -665,6 +678,10 @@ object OptDialog: TOptDialog
object TabSheet3: TTabSheet
Caption = 'O&utput'
ImageIndex = 2
+ ExplicitLeft = 0
+ ExplicitTop = 0
+ ExplicitWidth = 0
+ ExplicitHeight = 0
object LabelSolFormat: TLabel
Left = 24
Top = 7
@@ -708,11 +725,11 @@ object OptDialog: TOptDialog
Caption = 'Geoid Model'
end
object Label20: TLabel
- Left = 24
+ Left = 23
Top = 29
- Width = 210
+ Width = 194
Height = 13
- Caption = 'Output Header / Output Processing Options'
+ Caption = 'Output Header / Proc. Options / Velocity'
end
object Label36: TLabel
Left = 24
@@ -760,7 +777,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 3
+ TabOrder = 4
Text = 'ww ssss GPST'
Items.Strings = (
'ww ssss GPST'
@@ -775,7 +792,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 5
+ TabOrder = 6
Text = 'ddd.ddddddd'
Items.Strings = (
'ddd.ddddddd'
@@ -786,7 +803,7 @@ object OptDialog: TOptDialog
Top = 72
Width = 32
Height = 21
- TabOrder = 6
+ TabOrder = 7
end
object OutputDatum: TComboBox
Left = 248
@@ -795,7 +812,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 9
+ TabOrder = 10
Text = 'WGS84'
Items.Strings = (
'WGS84')
@@ -807,7 +824,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 10
+ TabOrder = 11
Text = 'Ellipsoidal'
OnClick = OutputHeightClick
Items.Strings = (
@@ -821,7 +838,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 11
+ TabOrder = 12
Text = 'Internal'
Items.Strings = (
'Internal'
@@ -833,7 +850,7 @@ object OptDialog: TOptDialog
object OutputHead: TComboBox
Left = 248
Top = 28
- Width = 75
+ Width = 49
Height = 21
Style = csDropDownList
ItemIndex = 1
@@ -844,9 +861,9 @@ object OptDialog: TOptDialog
'ON')
end
object OutputOpt: TComboBox
- Left = 325
+ Left = 299
Top = 28
- Width = 75
+ Width = 49
Height = 21
Style = csDropDownList
Enabled = False
@@ -862,7 +879,7 @@ object OptDialog: TOptDialog
Top = 50
Width = 32
Height = 21
- TabOrder = 4
+ TabOrder = 5
Text = '3'
end
object DebugStatus: TComboBox
@@ -872,7 +889,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 12
+ TabOrder = 13
Text = 'OFF'
Items.Strings = (
'OFF'
@@ -884,7 +901,7 @@ object OptDialog: TOptDialog
Top = 184
Width = 75
Height = 21
- TabOrder = 14
+ TabOrder = 15
Text = '0'
end
object NmeaIntv2: TEdit
@@ -892,7 +909,7 @@ object OptDialog: TOptDialog
Top = 184
Width = 75
Height = 21
- TabOrder = 15
+ TabOrder = 16
Text = '1'
end
object DebugTrace: TComboBox
@@ -902,7 +919,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 13
+ TabOrder = 14
Text = 'OFF'
Items.Strings = (
'OFF'
@@ -920,7 +937,7 @@ object OptDialog: TOptDialog
Style = csDropDownList
Enabled = False
ItemIndex = 0
- TabOrder = 16
+ TabOrder = 17
Text = 'All'
Items.Strings = (
'All'
@@ -933,7 +950,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 7
+ TabOrder = 8
Text = 'OFF'
Items.Strings = (
'OFF'
@@ -944,9 +961,22 @@ object OptDialog: TOptDialog
Top = 94
Width = 75
Height = 21
- TabOrder = 8
+ TabOrder = 9
Text = '0'
end
+ object OutputVel: TComboBox
+ Left = 350
+ Top = 28
+ Width = 50
+ Height = 21
+ Style = csDropDownList
+ ItemIndex = 0
+ TabOrder = 3
+ Text = 'OFF'
+ Items.Strings = (
+ 'OFF'
+ 'ON')
+ end
end
object TabSheet4: TTabSheet
Caption = 'S&tatistics'
@@ -954,7 +984,7 @@ object OptDialog: TOptDialog
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
- ExplicitHeight = 231
+ ExplicitHeight = 0
object Label29: TLabel
Left = 34
Top = 213
@@ -1134,6 +1164,10 @@ object OptDialog: TOptDialog
object TabSheet5: TTabSheet
Caption = '&Positions'
ImageIndex = 4
+ ExplicitLeft = 0
+ ExplicitTop = 0
+ ExplicitWidth = 0
+ ExplicitHeight = 0
object Label4: TLabel
Left = 12
Top = 12
@@ -1148,8 +1182,8 @@ object OptDialog: TOptDialog
Caption = 'Station Position File'
end
object BtnStaPosView: TSpeedButton
- Left = 360
- Top = 208
+ Left = 351
+ Top = 209
Width = 21
Height = 21
Flat = True
@@ -1246,10 +1280,10 @@ object OptDialog: TOptDialog
Text = '0'
end
object BtnRefPos: TButton
- Left = 372
- Top = 14
- Width = 21
- Height = 21
+ Left = 368
+ Top = 13
+ Width = 25
+ Height = 23
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -1276,11 +1310,12 @@ object OptDialog: TOptDialog
Height = 21
DropDownCount = 16
TabOrder = 6
+ OnClick = RefAntClick
end
object RefPosTypeP: TComboBox
Left = 6
Top = 14
- Width = 137
+ Width = 142
Height = 21
Style = csDropDownList
ItemIndex = 0
@@ -1291,8 +1326,7 @@ object OptDialog: TOptDialog
'Lat/Lon/Height (deg/m)'
'Lat/Lon/Height (dms/m)'
'X/Y/Z-ECEF (m)'
- 'RTCM Antenna Position'
- 'Raw Antenna Position'
+ 'RTCM/Raw Antenna Position'
'Average of Single Position')
end
object MaxAveEp: TEdit
@@ -1314,17 +1348,17 @@ object OptDialog: TOptDialog
end
end
object StaPosFile: TEdit
- Left = 2
+ Left = 3
Top = 209
- Width = 356
+ Width = 347
Height = 21
TabOrder = 2
end
object BtnStaPosFile: TButton
- Left = 381
+ Left = 374
Top = 208
- Width = 21
- Height = 21
+ Width = 25
+ Height = 23
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -1398,10 +1432,10 @@ object OptDialog: TOptDialog
Text = '0'
end
object BtnRovPos: TButton
- Left = 372
- Top = 14
- Width = 21
- Height = 21
+ Left = 368
+ Top = 13
+ Width = 25
+ Height = 23
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -1428,11 +1462,12 @@ object OptDialog: TOptDialog
Height = 21
DropDownCount = 16
TabOrder = 6
+ OnClick = RovAntClick
end
object RovPosTypeP: TComboBox
Left = 6
Top = 14
- Width = 137
+ Width = 142
Height = 21
Style = csDropDownList
Enabled = False
@@ -1453,7 +1488,7 @@ object OptDialog: TOptDialog
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
- ExplicitHeight = 231
+ ExplicitHeight = 0
object Label1: TLabel
Left = 6
Top = 93
@@ -1792,6 +1827,13 @@ object OptDialog: TOptDialog
object TabSheet8: TTabSheet
Caption = '&Misc'
ImageIndex = 6
+ ExplicitLeft = 0
+ ExplicitTop = 0
+ ExplicitWidth = 0
+ ExplicitHeight = 0
+ DesignSize = (
+ 403
+ 235)
object Label19: TLabel
Left = 32
Top = 7
@@ -1800,25 +1842,27 @@ object OptDialog: TOptDialog
Caption = 'Process Cycle (ms) / Buffer Size (bytes)'
end
object Label40: TLabel
- Left = 147
- Top = 167
- Width = 39
+ Left = 32
+ Top = 190
+ Width = 63
Height = 13
- Caption = 'Sol Font'
+ Caption = 'Solution Font'
end
- object FontLabel: TLabel
- Left = 309
- Top = 164
- Width = 67
+ object FontLabel2: TLabel
+ Left = 265
+ Top = 188
+ Width = 80
Height = 18
Alignment = taRightJustify
- Caption = 'Font Label'
+ Anchors = [akRight, akBottom]
+ Caption = 'Font Label 2'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -15
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
+ Layout = tlCenter
end
object Label41: TLabel
Left = 32
@@ -1862,26 +1906,35 @@ object OptDialog: TOptDialog
Height = 13
Caption = 'HTTP / NTRIP Proxy'
end
- object Label15: TLabel
- Left = 8
- Top = 191
- Width = 43
- Height = 13
- Caption = 'TLE Data'
- end
- object Label39: TLabel
- Left = 8
- Top = 212
- Width = 32
+ object Label43: TLabel
+ Left = 32
+ Top = 214
+ Width = 62
Height = 13
- Caption = 'Sat No'
+ Caption = 'Panel Layout'
end
- object Label43: TLabel
+ object Label49: TLabel
Left = 32
Top = 167
- Width = 33
+ Width = 51
Height = 13
- Caption = 'Layout'
+ Caption = 'Panel Font'
+ end
+ object FontLabel1: TLabel
+ Left = 265
+ Top = 164
+ Width = 80
+ Height = 18
+ Alignment = taRightJustify
+ Anchors = [akRight, akBottom]
+ Caption = 'Font Label 1'
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -15
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ Layout = tlCenter
end
object SvrCycleE: TEdit
Left = 248
@@ -1899,11 +1952,11 @@ object OptDialog: TOptDialog
TabOrder = 5
Text = '32768'
end
- object BtnFont: TButton
- Left = 381
- Top = 163
- Width = 21
- Height = 23
+ object BtnFont2: TButton
+ Left = 358
+ Top = 185
+ Width = 25
+ Height = 24
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -1912,7 +1965,7 @@ object OptDialog: TOptDialog
Font.Style = []
ParentFont = False
TabOrder = 13
- OnClick = BtnFontClick
+ OnClick = BtnFont2Click
end
object SolBuffSizeE: TEdit
Left = 248
@@ -2000,54 +2053,10 @@ object OptDialog: TOptDialog
Height = 21
TabOrder = 11
end
- object TLEFile: TEdit
- Left = 55
- Top = 187
- Width = 325
- Height = 21
- TabOrder = 14
- end
- object BtnTLEFile: TButton
- Left = 381
- Top = 186
- Width = 21
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 15
- OnClick = BtnTLEFileClick
- end
- object TLESatFile: TEdit
- Left = 55
- Top = 209
- Width = 325
- Height = 21
- TabOrder = 16
- end
- object BtnTLESatFile: TButton
- Left = 381
- Top = 208
- Width = 21
- Height = 23
- Caption = '...'
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clWindowText
- Font.Height = -9
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 17
- OnClick = BtnTLESatFileClick
- end
object PanelStackE: TComboBox
- Left = 70
- Top = 163
- Width = 71
+ Left = 248
+ Top = 211
+ Width = 134
Height = 21
Style = csDropDownList
ItemIndex = 0
@@ -2057,31 +2066,46 @@ object OptDialog: TOptDialog
'Horizontal'
'Vertical')
end
+ object BtnFont1: TButton
+ Left = 358
+ Top = 160
+ Width = 25
+ Height = 24
+ Caption = '...'
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -9
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 14
+ OnClick = BtnFont1Click
+ end
end
end
object BtnLoad: TButton
- Left = 1
- Top = 264
- Width = 99
+ Left = 4
+ Top = 265
+ Width = 96
Height = 29
- Caption = '&Load'
+ Caption = '&Load...'
TabOrder = 2
OnClick = BtnLoadClick
end
object OpenDialog: TOpenDialog
Filter =
'All (*.*)|*.*|PCV File (*.pcv,*.atx)|*.pcv;*.atx|Position File (' +
- '*.pos)|*.pos|Options File (*.conf)|*.conf'
+ '*.pos,*.snx)|*.pos;*.snx|Options File (*.conf)|*.conf'
Options = [ofHideReadOnly, ofNoChangeDir, ofEnableSizing]
Title = 'Load File'
- Left = 96
- Top = 251
+ Left = 188
+ Top = 116
end
object SaveDialog: TSaveDialog
Filter = 'All (*.*)|*.*|Options File (*.conf)|*.conf'
Title = 'Save File'
- Left = 66
- Top = 250
+ Left = 160
+ Top = 117
end
object FontDialog: TFontDialog
Font.Charset = DEFAULT_CHARSET
@@ -2089,7 +2113,7 @@ object OptDialog: TOptDialog
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
- Left = 38
- Top = 250
+ Left = 131
+ Top = 115
end
end
diff --git a/app/rtknavi/naviopt.h b/app/winapp/rtknavi/naviopt.h
similarity index 94%
rename from app/rtknavi/naviopt.h
rename to app/winapp/rtknavi/naviopt.h
index 12b4f5177..46adbf211 100644
--- a/app/rtknavi/naviopt.h
+++ b/app/winapp/rtknavi/naviopt.h
@@ -136,8 +136,8 @@ class TOptDialog : public TForm
TEdit *SvrCycleE;
TEdit *SvrBuffSizeE;
TLabel *Label40;
- TButton *BtnFont;
- TLabel *FontLabel;
+ TButton *BtnFont2;
+ TLabel *FontLabel2;
TFontDialog *FontDialog;
TLabel *Label41;
TEdit *SolBuffSizeE;
@@ -210,12 +210,6 @@ class TOptDialog : public TForm
TCheckBox *PosOpt2;
TCheckBox *PosOpt3;
TCheckBox *PosOpt4;
- TEdit *TLEFile;
- TLabel *Label15;
- TButton *BtnTLEFile;
- TLabel *Label39;
- TEdit *TLESatFile;
- TButton *BtnTLESatFile;
TCheckBox *PosOpt5;
TButton *BtnSnrMask;
TComboBox *SyncSol;
@@ -230,6 +224,11 @@ class TOptDialog : public TForm
TCheckBox *NavSys7;
TComboBox *OutputSingle;
TEdit *MaxSolStd;
+ TComboBox *OutputVel;
+ TSpeedButton *BtnFreq;
+ TLabel *Label49;
+ TLabel *FontLabel1;
+ TButton *BtnFont1;
void __fastcall BtnOkClick(TObject *Sender);
void __fastcall RovAntPcvClick(TObject *Sender);
void __fastcall FormShow(TObject *Sender);
@@ -255,7 +254,7 @@ class TOptDialog : public TForm
void __fastcall RovPosTypePChange(TObject *Sender);
void __fastcall GetPos(int type, TEdit **edit, double *pos);
void __fastcall SetPos(int type, TEdit **edit, double *pos);
- void __fastcall BtnFontClick(TObject *Sender);
+ void __fastcall BtnFont2Click(TObject *Sender);
void __fastcall NmeaReqCClick(TObject *Sender);
void __fastcall DgpsCorrLChange(TObject *Sender);
void __fastcall BtnGeoidDataFileClick(TObject *Sender);
@@ -266,10 +265,12 @@ class TOptDialog : public TForm
void __fastcall BtnLocalDirClick(TObject *Sender);
void __fastcall BtnEOPFileClick(TObject *Sender);
void __fastcall BtnEOPViewClick(TObject *Sender);
- void __fastcall BtnTLESatFileClick(TObject *Sender);
- void __fastcall BtnTLEFileClick(TObject *Sender);
void __fastcall BtnSnrMaskClick(TObject *Sender);
void __fastcall NavSys6Click(TObject *Sender);
+ void __fastcall BtnFreqClick(TObject *Sender);
+ void __fastcall BtnFont1Click(TObject *Sender);
+ void __fastcall RefAntClick(TObject *Sender);
+ void __fastcall RovAntClick(TObject *Sender);
private:
void __fastcall GetOpt(void);
void __fastcall SetOpt(void);
@@ -280,7 +281,7 @@ class TOptDialog : public TForm
public:
prcopt_t PrcOpt;
solopt_t SolOpt;
- TFont *PosFont;
+ TFont *PanelFont,*PosFont;
int SvrCycle,SvrBuffSize,SolBuffSize,NavSelect,SavedSol;
int NmeaReq,NmeaCycle,TimeoutTime,ReconTime,DgpsCorr,SbasCorr;
int DebugTraceF,DebugStatusF;
@@ -288,7 +289,7 @@ class TOptDialog : public TForm
int MoniPort,FileSwapMargin,PanelStack;
AnsiString ExSats,LocalDirectory;
AnsiString RovAntF,RefAntF,SatPcvFileF,AntPcvFileF,StaPosFileF;
- AnsiString GeoidDataFileF,DCBFileF,EOPFileF,TLEFileF,TLESatFileF;
+ AnsiString GeoidDataFileF,DCBFileF,EOPFileF;
AnsiString ProxyAddr;
double RovAntDel[3],RefAntDel[3],RovPos[3],RefPos[3];
double Baseline[2],NmeaIntv[2];
diff --git a/app/rtknavi/outstrdlg.cpp b/app/winapp/rtknavi/outstrdlg.cpp
similarity index 98%
rename from app/rtknavi/outstrdlg.cpp
rename to app/winapp/rtknavi/outstrdlg.cpp
index be0bfe0c8..d986fcad5 100644
--- a/app/rtknavi/outstrdlg.cpp
+++ b/app/winapp/rtknavi/outstrdlg.cpp
@@ -143,13 +143,11 @@ void __fastcall TOutputStrDialog::TcpOpt(int index, int opt)
TcpOptDialog->Opt=opt;
for (int i=0;i<10;i++) {
TcpOptDialog->History[i]=History[i];
- TcpOptDialog->MntpHist[i]=MntpHist[i];
}
if (TcpOptDialog->ShowModal()!=mrOk) return;
Paths[index][1]=TcpOptDialog->Path;
for (int i=0;i<10;i++) {
History[i]=TcpOptDialog->History[i];
- MntpHist[i]=TcpOptDialog->MntpHist[i];
}
}
//---------------------------------------------------------------------------
diff --git a/app/rtknavi/outstrdlg.dfm b/app/winapp/rtknavi/outstrdlg.dfm
similarity index 98%
rename from app/rtknavi/outstrdlg.dfm
rename to app/winapp/rtknavi/outstrdlg.dfm
index ca855e12a..2f5d0f8ec 100644
--- a/app/rtknavi/outstrdlg.dfm
+++ b/app/winapp/rtknavi/outstrdlg.dfm
@@ -4,8 +4,8 @@ object OutputStrDialog: TOutputStrDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'Output Streams'
- ClientHeight = 156
- ClientWidth = 390
+ ClientHeight = 158
+ ClientWidth = 393
Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -116,7 +116,7 @@ object OutputStrDialog: TOutputStrDialog
Left = 237
Top = 17
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -131,7 +131,7 @@ object OutputStrDialog: TOutputStrDialog
Left = 237
Top = 40
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -199,7 +199,7 @@ object OutputStrDialog: TOutputStrDialog
Left = 361
Top = 79
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -221,7 +221,7 @@ object OutputStrDialog: TOutputStrDialog
Left = 361
Top = 101
Width = 25
- Height = 23
+ Height = 22
Caption = '...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
diff --git a/app/rtknavi/outstrdlg.h b/app/winapp/rtknavi/outstrdlg.h
similarity index 98%
rename from app/rtknavi/outstrdlg.h
rename to app/winapp/rtknavi/outstrdlg.h
index 7ee217490..31f6cc729 100644
--- a/app/rtknavi/outstrdlg.h
+++ b/app/winapp/rtknavi/outstrdlg.h
@@ -57,7 +57,7 @@ class TOutputStrDialog : public TForm
public:
int StreamC[2],Stream[2],Format[2],OutTimeTag,OutAppend;
AnsiString Paths[2][4],SwapInterval;
- AnsiString History[10],MntpHist[10];
+ AnsiString History[10];
__fastcall TOutputStrDialog(TComponent* Owner);
};
//---------------------------------------------------------------------------
diff --git a/app/rtknavi/rcvoptdlg.cpp b/app/winapp/rtknavi/rcvoptdlg.cpp
similarity index 100%
rename from app/rtknavi/rcvoptdlg.cpp
rename to app/winapp/rtknavi/rcvoptdlg.cpp
diff --git a/app/rtknavi/rcvoptdlg.dfm b/app/winapp/rtknavi/rcvoptdlg.dfm
similarity index 88%
rename from app/rtknavi/rcvoptdlg.dfm
rename to app/winapp/rtknavi/rcvoptdlg.dfm
index 1bd74b933..f3ba19724 100644
--- a/app/rtknavi/rcvoptdlg.dfm
+++ b/app/winapp/rtknavi/rcvoptdlg.dfm
@@ -4,9 +4,9 @@ object RcvOptDialog: TRcvOptDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'Receiver Option'
- ClientHeight = 58
+ ClientHeight = 61
ClientWidth = 221
- Color = clBtnFace
+ Color = clWhite
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
@@ -19,8 +19,8 @@ object RcvOptDialog: TRcvOptDialog
TextHeight = 13
object BtnOk: TButton
Left = 48
- Top = 29
- Width = 83
+ Top = 30
+ Width = 82
Height = 29
Caption = '&OK'
ModalResult = 1
@@ -29,8 +29,8 @@ object RcvOptDialog: TRcvOptDialog
end
object BnCancel: TButton
Left = 132
- Top = 29
- Width = 83
+ Top = 30
+ Width = 82
Height = 29
Caption = '&Cancel'
ModalResult = 2
diff --git a/app/rtknavi/rcvoptdlg.h b/app/winapp/rtknavi/rcvoptdlg.h
similarity index 100%
rename from app/rtknavi/rcvoptdlg.h
rename to app/winapp/rtknavi/rcvoptdlg.h
diff --git a/app/rtknavi/rtknavi.cbproj b/app/winapp/rtknavi/rtknavi.cbproj
similarity index 51%
rename from app/rtknavi/rtknavi.cbproj
rename to app/winapp/rtknavi/rtknavi.cbproj
index 39db0a47c..5fc42983c 100644
--- a/app/rtknavi/rtknavi.cbproj
+++ b/app/winapp/rtknavi/rtknavi.cbproj
@@ -1,14 +1,14 @@
- {2B11584B-35A8-46A8-8F18-AF3D7051B83C}
+ {42E6C10E-8653-47F0-A4FF-8FDB301373A3}
CppVCLApplication
rtknavi.cpp
True
Release
VCL
- 18.6
- Win32
- 1
+ 18.8
+ Win64
+ 3
Application
@@ -19,6 +19,11 @@
Base
true
+
+ true
+ Base
+ true
+
true
Base
@@ -30,6 +35,12 @@
true
true
+
+ true
+ Cfg_1
+ true
+ true
+
true
Base
@@ -41,19 +52,26 @@
true
true
+
+ true
+ Cfg_2
+ true
+ true
+
- true
- false
- false
+ WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;ENAIRN;NFREQ=5;NEXOBS=3;$(BCC_Defines)
false
- false
false
- rtknavi
- false
false
- ..\..\src\rcv\;..\appcmn\;..\..\src\;$(ILINK_LibraryPath)
- ..\..\src\rcv\;..\appcmn\;..\..\src\;$(IncludePath)
+ false
+ false
+ false
+ false
+ rtknavi
+ ..\..\..\src\rcv\;..\..\..\src\;..\appcmn\;..\rtknavi\;$(ILINK_LibraryPath)
+ ..\..\..\src\rcv\;..\..\..\src\;..\appcmn\;..\rtknavi\;$(IncludePath)
false
+ false
false
false
None
@@ -62,30 +80,28 @@
CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
None
1041
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\src\rcv;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\dinkumware;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(DCC_ObjPath)
- vclx.bpi;vcl.bpi;$(PackageImports)
- _RTLDLL;NO_STRICT;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- _RTLDLL;NO_STRICT;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\..\src\rcv;..\appcmn;..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\..\src\rcv;..\..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(DCC_ObjPath)
Windows
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENAIRN;ENACMP;NFREQ=3;NEXOBS=3;ENALEX;$(BCC_Defines)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\src\rcv;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\dinkumware;$(BDS)\include\vcl;$(BRCC_IncludePath)
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\..\src\rcv;..\appcmn;..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
false
- -tWM
true
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(ILINK_ObjectSearchPath)
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\..\src\rcv;..\..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\..\src\rcv;..\..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(ILINK_ObjectSearchPath)
false
- rtl.lib;vcl.lib;vclx.lib;bindengine.lib
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(DCC_ResourcePath)
+ rtl.lib;vcl.lib;vclx.lib;bindengine.lib;vclie.lib;bcbie.lib
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\..\src\rcv;..\..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\..\src\rcv;..\..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(DCC_ResourcePath)
JPHNE
- $(BDS)\include;..\appcmn;..\..\src;$(BCC_IncludePath)
+ $(BDS)\include;..\appcmn;..\..\..\src;$(BCC_IncludePath)
+ false
true
exe
- D:\proj\RTKLIB\app\rtklib_dll\Win32\Release;$(ILINK_LibraryPath)
+ _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
+ _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
+ -tWM
Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
$(BDSINCLUDE)\windows\vcl;$(IncludePath)
true
@@ -94,44 +110,62 @@
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ $(BDS)\bin\default_app.manifest
+ 1033
+ true
+ _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
+ _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
+ $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
+ $(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+
-V
- -tWM -k
DEBUG;$(DCC_Define);$(DCC_Define)
Debug_Build
true
true
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
true
true
false
Full
true
- $(BDS)\lib\debug;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
true
true
true
- false
+ -tWM -k
+ _DEBUG;$(BCC_Defines);$(BCC_Defines)
$(BDS)\bin\default_app.manifest
- rtl.lib;vcl.lib;vclx.lib;bindengine.lib
+ rtl.lib;vcl.lib;vclx.lib
true
false
1033
false
+ Debug
+
+
+ true
+ $(BDS)\bin\default_app.manifest
+ _DEBUG;$(BCC_Defines);$(BCC_Defines)
+ true
+ 1033
+ rtl.lib;vcl.lib;vclx.lib;bindengine.lib
+ Debug
-$O+
Release_Build
- NDEBUG;$(BCC_Defines);$(BCC_Defines)
- -tWM -r
None
true
- $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
true
+ -tWM -r
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
+ false
rtl.lib;vcl.lib;vclx.lib;bindengine.lib
false
true
@@ -139,121 +173,152 @@
1033
Debug
+
+ true
+ true
+ rtl.lib;vcl.lib;vclx.lib;bindengine.lib;vclie.lib;bcbie.lib
+ 1033
+ $(BDS)\bin\default_app.manifest
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
+ Debug
+ PerMonitorV2
+
- 8
+ dfm
..\appcmn\aboutdlg.h
- 25
+ 53
- 5
+ dfm
..\appcmn\cmdoptdlg.h
- 34
+ 61
+ dfm
..\appcmn\confdlg.h
- 24
+ 60
+
+
+
+ dfm
+ ..\appcmn\fileoptdlg.h
+ 52
+
+
+
+ dfm
+ ..\appcmn\freqdlg.h
+ 63
- 38
+ dfm
..\appcmn\ftpoptdlg.h
- 19
+ 51
..\appcmn\graph.h
- 59
+ 50
- 5
+ dfm
..\appcmn\keydlg.h
- 34
+ 59
+ dfm
..\appcmn\maskoptdlg.h
- 53
+ 58
+
+
+
+ dfm
+ ..\appcmn\mntpoptdlg.h
+ 62
- 39
+ dfm
..\appcmn\refdlg.h
- 18
+ 57
- 4
+ dfm
..\appcmn\serioptdlg.h
- 35
+ 49
- 6
+ dfm
..\appcmn\tcpoptdlg.h
- 27
+ 56
- 38
+ dfm
..\appcmn\viewer.h
- 19
+ 55
- 37
+ dfm
..\appcmn\vieweropt.h
- 20
+ 54
- 29
+ dfm
instrdlg.h
- 10
+ 59
- 32
+ dfm
logstrdlg.h
- 1
+ 58
+ dfm
markdlg.h
- 60
+ 62
- 41
+ dfm
mondlg.h
- 22
+ 61
- 31
+ dfm
navimain.h
- 2
+ 44
- 46
+ dfm
naviopt.h
- 17
+ 56
- 36
+ dfm
outstrdlg.h
- 3
+ 57
- 44
+ dfm
rcvoptdlg.h
- 13
+ 60
-1
@@ -263,145 +328,156 @@
-1
1
-
- 23
-
-
- 24
-
-
- 25
-
-
+
+ 7
26
-
- 27
+
+ 39
+ 18
-
- 28
+
+ 8
+ 25
-
- 29
+
+ 41
+ 22
-
+
+ 9
30
-
- 31
-
-
- 32
-
-
- 33
-
-
- 47
+
+ 40
+ 23
-
- 34
+
+ 36
+ 3
-
- 48
+
+ 4
+ 35
-
- 61
+
+ 50
-
- 49
+
+ 7
+ 26
-
- 50
+
+ 28
+ 11
-
- 51
+
+ 56
-
- 52
+
+ 9
+ 30
-
- 53
+
+ 43
+ 14
-
- 54
+
+ 43
+ 14
-
- 55
+
+ 51
-
+
56
-
- 57
-
-
- 58
+
+ 59
-
- 61
+
+ 33
+ 0
-
- 59
+
+ 31
+ 2
-
- 60
+
+ 48
+ 15
-
- 35
+
+ 47
+ 16
-
- 36
+
+ 6
+ 27
-
- 37
+
+ 47
+ 16
-
- 38
+
+ 48
+ 15
-
- 39
+
+ 54
-
- 40
+
+ 29
+ 10
-
- 41
+
+ 28
+ 11
-
+
42
+ 21
-
- 43
+
+ 40
+ 23
+
+
+ 45
+ 12
-
+
44
+ 13
-
- 45
+
+ 58
-
- 46
+
+ 53
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
+
+
+
-
Cfg_2
Base
@@ -468,8 +544,8 @@
False
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
+ Embarcadero C++Builder Office 2000 サーバー パッケージ
+ Embarcadero C++Builder Office XP サーバー パッケージ
False
@@ -483,8 +559,15 @@
True
+ True
+
+
+ .\
+ true
+
+
true
@@ -495,29 +578,29 @@
true
-
-
+
+
.\
true
-
+
+ .\
true
-
+
true
-
+
- .\
true
-
+
.\
true
@@ -528,54 +611,43 @@
true
-
-
- .\
- true
-
-
true
-
-
+
+
.\
true
-
+
.\
true
-
+
- true
-
-
-
-
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
@@ -585,8 +657,8 @@
true
-
-
+
+
.\
true
@@ -596,26 +668,32 @@
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
-
+
+
+ .\
+ true
+
+
+
+
.\
true
@@ -625,201 +703,617 @@
true
-
-
- .\
+
+
+ rtknavi.exe
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
true
- rtknavi.exe
+ rtknavi.exe
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
true
-
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+ .\
true
-
-
+
+
+ .\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
+ .\
true
-
+
.\
true
-
+
true
-
-
+
+
.\
true
-
+
+ .\
true
-
+
+
+ true
+
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
- .\
true
-
+
true
-
+
.\
true
-
+
.\
true
-
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
+ true
+
+
+
+
.\
true
-
+
.\
true
+
+
+ .\
+ true
+
+
true
+
+
+ true
+
+
true
-
+
+ .\
true
-
-
+
+
true
@@ -828,45 +1322,84 @@
true
-
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
.\
true
-
+
+
+ .\
+ true
+
+
+
+ .\
true
-
+
.\
true
-
+
.\
true
+
+
+ rtknavi.exe
+ true
+
+
true
-
+
+
+ .\
+ true
+
+
+
+ .\
true
-
+
+
+ .\
+ true
+
+
+
+ .\
true
-
+
.\
true
@@ -889,12 +1422,20 @@
classes
1
+
+ classes
+ 1
+
res\xml
1
+
+ res\xml
+ 1
+
@@ -907,75 +1448,199 @@
library\lib\armeabi
1
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
library\lib\mips
1
+
+ library\lib\mips
+ 1
+
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
res\values
1
+
+ res\values
+ 1
+
res\values-v21
1
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
-
+
res\drawable-xxhdpi
1
-
-
-
- res\drawable-ldpi
+
+ res\drawable-xxhdpi
1
-
+
- res\drawable-mdpi
+ res\drawable-xxxhdpi
1
-
-
-
- res\drawable-hdpi
+
+ res\drawable-xxxhdpi
1
-
+
- res\drawable-xhdpi
+ res\drawable-small
1
-
-
-
+
res\drawable-small
1
@@ -985,18 +1650,40 @@
res\drawable-normal
1
+
+ res\drawable-normal
+ 1
+
res\drawable-large
1
+
+ res\drawable-large
+ 1
+
res\drawable-xlarge
1
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
@@ -1085,6 +1772,9 @@
0
+
+ 0
+
0
@@ -1117,6 +1807,17 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1128,6 +1829,39 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1139,6 +1873,61 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1150,6 +1939,116 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1183,10 +2082,35 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
+
+ 1
+
@@ -1279,6 +2203,10 @@
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
1
@@ -1303,6 +2231,12 @@
0
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
1
@@ -1340,11 +2274,12 @@
+
12
-
+
diff --git a/app/winapp/rtknavi/rtknavi.cbproj.local b/app/winapp/rtknavi/rtknavi.cbproj.local
new file mode 100644
index 000000000..3bbddd6fe
--- /dev/null
+++ b/app/winapp/rtknavi/rtknavi.cbproj.local
@@ -0,0 +1,71 @@
+
+
+
+ 2020/11/30 16:13:15.000.759,D:\share\RTKLIB\lib\openblas\libopenblas.a=
+ 2020/11/30 16:50:39.000.983,=D:\share\RTKLIB\lib\openblas\libopenblas.a
+ 2020/12/01 13:17:31.000.494,=D:\share\RTKLIB\app\winapp\appcmn\mntpoptdlg.cpp
+ 2020/12/01 19:41:22.000.241,D:\share\RTKLIB\lib\openblas\libopenblas.a=
+ 2020/12/01 20:58:08.000.888,D:\share\RTKLIB\app\winapp\rtknavi\instrdlg.cpp=
+ 2020/12/01 20:58:09.000.518,D:\share\RTKLIB\app\winapp\rtknavi\rcvoptdlg.cpp=
+ 2020/12/01 20:58:09.000.018,D:\share\RTKLIB\app\winapp\rtknavi\logstrdlg.cpp=
+ 2020/12/01 20:58:09.000.465,D:\share\RTKLIB\app\winapp\rtknavi\outstrdlg.cpp=
+ 2020/12/01 20:58:09.000.408,D:\share\RTKLIB\app\winapp\rtknavi\naviopt.cpp=
+ 2020/12/01 20:58:09.000.213,D:\share\RTKLIB\app\winapp\rtknavi\mondlg.cpp=
+ 2020/12/01 20:58:09.000.353,D:\share\RTKLIB\app\winapp\rtknavi\navimain.cpp=
+ 2020/12/01 20:58:09.000.118,D:\share\RTKLIB\app\winapp\rtknavi\markdlg.cpp=
+ 2020/12/01 20:58:31.000.782,D:\share\RTKLIB\app\winapp\appcmn\ftpoptdlg.cpp=
+ 2020/12/01 20:58:31.000.917,D:\share\RTKLIB\app\winapp\appcmn\keydlg.cpp=
+ 2020/12/01 20:58:31.000.707,D:\share\RTKLIB\app\winapp\appcmn\confdlg.cpp=
+ 2020/12/01 20:58:31.000.488,D:\share\RTKLIB\app\winapp\appcmn\aboutdlg.cpp=
+ 2020/12/01 20:58:31.000.987,D:\share\RTKLIB\app\winapp\appcmn\maskoptdlg.cpp=
+ 2020/12/01 20:58:31.000.637,D:\share\RTKLIB\app\winapp\appcmn\cmdoptdlg.cpp=
+ 2020/12/01 20:58:31.000.847,D:\share\RTKLIB\app\winapp\appcmn\graph.cpp=
+ 2020/12/01 20:58:32.000.272,D:\share\RTKLIB\app\winapp\appcmn\tcpoptdlg.cpp=
+ 2020/12/01 20:58:32.000.342,D:\share\RTKLIB\app\winapp\appcmn\viewer.cpp=
+ 2020/12/01 20:58:32.000.407,D:\share\RTKLIB\app\winapp\appcmn\vieweropt.cpp=
+ 2020/12/01 20:58:32.000.137,D:\share\RTKLIB\app\winapp\appcmn\refdlg.cpp=
+ 2020/12/01 20:58:32.000.072,D:\share\RTKLIB\app\winapp\appcmn\mntpoptdlg.cpp=
+ 2020/12/01 20:58:32.000.207,D:\share\RTKLIB\app\winapp\appcmn\serioptdlg.cpp=
+ 2020/12/01 20:59:03.000.677,=D:\share\RTKLIB\app\winapp\rtknavi\outstrdlg.cpp
+ 2020/12/01 20:59:03.000.568,=D:\share\RTKLIB\app\winapp\rtknavi\rcvoptdlg.cpp
+ 2020/12/01 20:59:04.000.687,=D:\share\RTKLIB\app\winapp\rtknavi\logstrdlg.cpp
+ 2020/12/01 20:59:04.000.178,=D:\share\RTKLIB\app\winapp\rtknavi\navimain.cpp
+ 2020/12/01 20:59:04.000.443,=D:\share\RTKLIB\app\winapp\rtknavi\markdlg.cpp
+ 2020/12/01 20:59:04.000.561,=D:\share\RTKLIB\app\winapp\rtknavi\mapdlg.cpp
+ 2020/12/01 20:59:04.000.052,=D:\share\RTKLIB\app\winapp\rtknavi\naviopt.cpp
+ 2020/12/01 20:59:04.000.829,=D:\share\RTKLIB\app\winapp\rtknavi\instrdlg.cpp
+ 2020/12/01 20:59:04.000.349,=D:\share\RTKLIB\app\winapp\rtknavi\mondlg.cpp
+ 2020/12/01 21:01:02.000.469,D:\share\RTKLIB\app\winapp\rtknavi\mapdlg.cpp=
+ 2020/12/01 21:01:50.000.876,=D:\share\RTKLIB\app\winapp\appcmn\aboutdlg.cpp
+ 2020/12/01 21:01:50.000.547,=D:\share\RTKLIB\app\winapp\appcmn\graph.cpp
+ 2020/12/01 21:01:50.000.501,=D:\share\RTKLIB\app\winapp\appcmn\serioptdlg.cpp
+ 2020/12/01 21:01:50.000.672,=D:\share\RTKLIB\app\winapp\appcmn\ftpoptdlg.cpp
+ 2020/12/01 21:01:50.000.782,=D:\share\RTKLIB\app\winapp\appcmn\fileoptdlg.cpp
+ 2020/12/01 21:03:00.000.177,=D:\share\RTKLIB\app\winapp\appcmn\tcpoptdlg.cpp
+ 2020/12/01 21:03:00.000.443,=D:\share\RTKLIB\app\winapp\appcmn\keydlg.cpp
+ 2020/12/01 21:03:00.000.271,=D:\share\RTKLIB\app\winapp\appcmn\refdlg.cpp
+ 2020/12/01 21:03:00.000.599,=D:\share\RTKLIB\app\winapp\appcmn\cmdoptdlg.cpp
+ 2020/12/01 21:03:00.000.349,=D:\share\RTKLIB\app\winapp\appcmn\maskoptdlg.cpp
+ 2020/12/01 21:03:00.000.005,=D:\share\RTKLIB\app\winapp\appcmn\vieweropt.cpp
+ 2020/12/01 21:03:00.000.521,=D:\share\RTKLIB\app\winapp\appcmn\confdlg.cpp
+ 2020/12/01 21:03:00.000.099,=D:\share\RTKLIB\app\winapp\appcmn\viewer.cpp
+ 2020/12/01 21:03:38.000.522,=D:\share\RTKLIB\app\winapp\appcmn\mntpoptdlg.cpp
+ 2020/12/01 21:11:07.000.530,D:\share\RTKLIB\app\winapp\rtknavi\markdlg.cpp=
+ 2020/12/01 21:11:07.000.423,D:\share\RTKLIB\app\winapp\rtknavi\logstrdlg.cpp=
+ 2020/12/01 21:11:07.000.262,D:\share\RTKLIB\app\winapp\rtknavi\instrdlg.cpp=
+ 2020/12/01 21:11:07.000.621,D:\share\RTKLIB\app\winapp\rtknavi\mondlg.cpp=
+ 2020/12/01 21:11:15.000.899,D:\share\RTKLIB\app\winapp\rtknavi\outstrdlg.cpp=
+ 2020/12/01 21:11:15.000.818,D:\share\RTKLIB\app\winapp\rtknavi\naviopt.cpp=
+ 2020/12/01 21:11:16.000.030,D:\share\RTKLIB\app\winapp\rtknavi\rcvoptdlg.cpp=
+ 2020/12/01 21:12:13.000.809,=D:\share\RTKLIB\app\winapp\rtknavi\naviopt.cpp
+ 2020/12/01 21:12:44.000.674,=D:\share\RTKLIB\app\winapp\rtknavi\logstrdlg.cpp
+ 2020/12/01 21:12:44.000.843,=D:\share\RTKLIB\app\winapp\rtknavi\instrdlg.cpp
+ 2020/12/01 21:12:44.000.536,=D:\share\RTKLIB\app\winapp\rtknavi\outstrdlg.cpp
+ 2020/12/01 21:13:08.000.247,=D:\share\RTKLIB\app\winapp\rtknavi\rcvoptdlg.cpp
+ 2020/12/01 21:13:21.000.114,=D:\share\RTKLIB\app\winapp\rtknavi\mondlg.cpp
+ 2020/12/01 21:13:26.000.870,=D:\share\RTKLIB\app\winapp\rtknavi\markdlg.cpp
+ 2020/12/02 10:27:41.000.089,=D:\share\RTKLIB\app\winapp\appcmn\freqdlg.cpp
+ 2020/12/03 11:41:16.000.852,=D:\share\RTKLIB\app\winapp\appcmn\gmview.cpp
+ 2020/12/03 17:53:51.000.716,D:\share\RTKLIB\app\winapp\appcmn\gmview.cpp=
+
+
diff --git a/app/rtknavi/rtknavi.cpp b/app/winapp/rtknavi/rtknavi.cpp
similarity index 85%
rename from app/rtknavi/rtknavi.cpp
rename to app/winapp/rtknavi/rtknavi.cpp
index fe0e29156..5add65ef2 100644
--- a/app/rtknavi/rtknavi.cpp
+++ b/app/winapp/rtknavi/rtknavi.cpp
@@ -29,51 +29,58 @@
-
-USEFORM("..\appcmn\viewer.cpp", TextViewer);
-USEFORM("..\appcmn\tcpoptdlg.cpp", TcpOptDialog);
+#include
+#include
+USEFORM("..\appcmn\refdlg.cpp", RefDialog);
+USEFORM("..\appcmn\mntpoptdlg.cpp", MntpOptDialog);
+USEFORM("..\appcmn\maskoptdlg.cpp", MaskOptDialog);
USEFORM("..\appcmn\serioptdlg.cpp", SerialOptDialog);
USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
-USEFORM("markdlg.cpp", MarkDialog);
-USEFORM("logstrdlg.cpp", LogStrDialog);
-USEFORM("instrdlg.cpp", InputStrDialog);
-USEFORM("..\appcmn\refdlg.cpp", RefDialog);
+USEFORM("..\appcmn\viewer.cpp", TextViewer);
+USEFORM("..\appcmn\tcpoptdlg.cpp", TcpOptDialog);
+USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
USEFORM("..\appcmn\confdlg.cpp", ConfDialog);
USEFORM("..\appcmn\cmdoptdlg.cpp", CmdOptDialog);
USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog);
+USEFORM("..\appcmn\fileoptdlg.cpp", FileOptDialog);
USEFORM("..\appcmn\ftpoptdlg.cpp", FtpOptDialog);
-USEFORM("..\appcmn\maskoptdlg.cpp", MaskOptDialog);
-USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
-USEFORM("naviopt.cpp", OptDialog);
-USEFORM("navimain.cpp", MainForm);
+USEFORM("..\appcmn\freqdlg.cpp", FreqDialog);
+USEFORM("rcvoptdlg.cpp", RcvOptDialog);
+USEFORM("markdlg.cpp", MarkDialog);
+USEFORM("logstrdlg.cpp", LogStrDialog);
+USEFORM("instrdlg.cpp", InputStrDialog);
USEFORM("mondlg.cpp", MonitorDialog);
USEFORM("outstrdlg.cpp", OutputStrDialog);
-USEFORM("rcvoptdlg.cpp", RcvOptDialog);
+USEFORM("naviopt.cpp", OptDialog);
+USEFORM("navimain.cpp", MainForm);
//---------------------------------------------------------------------------
-WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
+int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->Title = "RTKNAVI";
Application->CreateForm(__classid(TMainForm), &MainForm);
- Application->CreateForm(__classid(TOutputStrDialog), &OutputStrDialog);
Application->CreateForm(__classid(TSerialOptDialog), &SerialOptDialog);
- Application->CreateForm(__classid(TCmdOptDialog), &CmdOptDialog);
+ Application->CreateForm(__classid(TFtpOptDialog), &FtpOptDialog);
+ Application->CreateForm(__classid(TFileOptDialog), &FileOptDialog);
+ Application->CreateForm(__classid(TAboutDialog), &AboutDialog);
+ Application->CreateForm(__classid(TViewerOptDialog), &ViewerOptDialog);
+ Application->CreateForm(__classid(TTextViewer), &TextViewer);
Application->CreateForm(__classid(TTcpOptDialog), &TcpOptDialog);
- Application->CreateForm(__classid(TOptDialog), &OptDialog);
Application->CreateForm(__classid(TRefDialog), &RefDialog);
- Application->CreateForm(__classid(TTextViewer), &TextViewer);
- Application->CreateForm(__classid(TViewerOptDialog), &ViewerOptDialog);
+ Application->CreateForm(__classid(TMaskOptDialog), &MaskOptDialog);
+ Application->CreateForm(__classid(TKeyDialog), &KeyDialog);
Application->CreateForm(__classid(TConfDialog), &ConfDialog);
- Application->CreateForm(__classid(TAboutDialog), &AboutDialog);
- Application->CreateForm(__classid(TInputStrDialog), &InputStrDialog);
+ Application->CreateForm(__classid(TCmdOptDialog), &CmdOptDialog);
+ Application->CreateForm(__classid(TMntpOptDialog), &MntpOptDialog);
+ Application->CreateForm(__classid(TOptDialog), &OptDialog);
+ Application->CreateForm(__classid(TOutputStrDialog), &OutputStrDialog);
Application->CreateForm(__classid(TLogStrDialog), &LogStrDialog);
- Application->CreateForm(__classid(TKeyDialog), &KeyDialog);
- Application->CreateForm(__classid(TFtpOptDialog), &FtpOptDialog);
+ Application->CreateForm(__classid(TInputStrDialog), &InputStrDialog);
Application->CreateForm(__classid(TRcvOptDialog), &RcvOptDialog);
- Application->CreateForm(__classid(TMaskOptDialog), &MaskOptDialog);
Application->CreateForm(__classid(TMarkDialog), &MarkDialog);
+ Application->CreateForm(__classid(TFreqDialog), &FreqDialog);
Application->Run();
}
catch (Exception &exception)
diff --git a/app/rtknavi/rtknavi.res b/app/winapp/rtknavi/rtknavi.res
similarity index 99%
rename from app/rtknavi/rtknavi.res
rename to app/winapp/rtknavi/rtknavi.res
index 1fc420b40..ddf53c350 100644
Binary files a/app/rtknavi/rtknavi.res and b/app/winapp/rtknavi/rtknavi.res differ
diff --git a/app/rtknavi/rtknavi_Icon.ico b/app/winapp/rtknavi/rtknavi_Icon.ico
similarity index 100%
rename from app/rtknavi/rtknavi_Icon.ico
rename to app/winapp/rtknavi/rtknavi_Icon.ico
diff --git a/app/rtknavi_mkl/clean.bat b/app/winapp/rtkplot/clean.bat
similarity index 100%
rename from app/rtknavi_mkl/clean.bat
rename to app/winapp/rtkplot/clean.bat
diff --git a/app/rtkplot/conndlg.cpp b/app/winapp/rtkplot/conndlg.cpp
similarity index 87%
rename from app/rtkplot/conndlg.cpp
rename to app/winapp/rtkplot/conndlg.cpp
index c1023df24..501c69294 100644
--- a/app/rtkplot/conndlg.cpp
+++ b/app/winapp/rtkplot/conndlg.cpp
@@ -140,24 +140,20 @@ void __fastcall TConnectDialog::TcpOpt1(int opt)
{
TcpOptDialog->Path=Paths1[1];
TcpOptDialog->Opt=opt;
- for (int i=0;iHistory [i]=TcpHistory [i];
- for (int i=0;iMntpHist[i]=TcpMntpHist[i];
+ for (int i=0;iHistory[i]=TcpHistory[i];
if (TcpOptDialog->ShowModal()!=mrOk) return;
Paths1[1]=TcpOptDialog->Path;
- for (int i=0;iHistory [i];
- for (int i=0;iMntpHist[i];
+ for (int i=0;iHistory[i];
}
//---------------------------------------------------------------------------
void __fastcall TConnectDialog::TcpOpt2(int opt)
{
TcpOptDialog->Path=Paths2[1];
TcpOptDialog->Opt=opt;
- for (int i=0;iHistory [i]=TcpHistory [i];
- for (int i=0;iMntpHist[i]=TcpMntpHist[i];
+ for (int i=0;iHistory[i]=TcpHistory[i];
if (TcpOptDialog->ShowModal()!=mrOk) return;
Paths2[1]=TcpOptDialog->Path;
- for (int i=0;iHistory [i];
- for (int i=0;iMntpHist[i];
+ for (int i=0;iHistory[i];
}
//---------------------------------------------------------------------------
void __fastcall TConnectDialog::FileOpt1(int opt)
@@ -190,12 +186,12 @@ void __fastcall TConnectDialog::UpdateEnable(void)
Label5 ->Enabled=SolFormat1->ItemIndex!=3||SolFormat2->ItemIndex!=3;
Label6 ->Enabled=SolFormat1->ItemIndex==0||SolFormat2->ItemIndex==0;
Label7 ->Enabled=SolFormat1->ItemIndex!=3||SolFormat2->ItemIndex!=3;
- Label8 ->Enabled=2<=SelStream1->ItemIndex&&SelStream1->ItemIndex<=4||
- 2<=SelStream2->ItemIndex&&SelStream2->ItemIndex<=4;
- TimeOutTimeE->Enabled=2<=SelStream1->ItemIndex&&SelStream1->ItemIndex<=4||
- 2<=SelStream2->ItemIndex&&SelStream2->ItemIndex<=4;
- ReConnTimeE ->Enabled=2<=SelStream1->ItemIndex&&SelStream1->ItemIndex<=4||
- 2<=SelStream2->ItemIndex&&SelStream2->ItemIndex<=4;
+ Label8 ->Enabled=(2<=SelStream1->ItemIndex&&SelStream1->ItemIndex<=4)||
+ (2<=SelStream2->ItemIndex&&SelStream2->ItemIndex<=4);
+ TimeOutTimeE->Enabled=(2<=SelStream1->ItemIndex&&SelStream1->ItemIndex<=4)||
+ (2<=SelStream2->ItemIndex&&SelStream2->ItemIndex<=4);
+ ReConnTimeE ->Enabled=(2<=SelStream1->ItemIndex&&SelStream1->ItemIndex<=4)||
+ (2<=SelStream2->ItemIndex&&SelStream2->ItemIndex<=4);
}
//---------------------------------------------------------------------------
diff --git a/app/rtkplot/conndlg.dfm b/app/winapp/rtkplot/conndlg.dfm
similarity index 96%
rename from app/rtkplot/conndlg.dfm
rename to app/winapp/rtkplot/conndlg.dfm
index 006d9a412..e53cfc082 100644
--- a/app/rtkplot/conndlg.dfm
+++ b/app/winapp/rtkplot/conndlg.dfm
@@ -3,7 +3,7 @@ object ConnectDialog: TConnectDialog
Top = 0
BorderStyle = bsDialog
Caption = 'Connection Settings'
- ClientHeight = 164
+ ClientHeight = 169
ClientWidth = 283
Color = clWhite
Font.Charset = DEFAULT_CHARSET
@@ -17,7 +17,7 @@ object ConnectDialog: TConnectDialog
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
- Left = 30
+ Left = 37
Top = 6
Width = 61
Height = 13
@@ -31,7 +31,7 @@ object ConnectDialog: TConnectDialog
Caption = 'Opt'
end
object Label3: TLabel
- Left = 176
+ Left = 180
Top = 6
Width = 75
Height = 13
@@ -45,21 +45,21 @@ object ConnectDialog: TConnectDialog
Caption = 'Cmd'
end
object Label5: TLabel
- Left = 26
+ Left = 28
Top = 72
Width = 59
Height = 13
Caption = 'Time Format'
end
object Label6: TLabel
- Left = 124
+ Left = 128
Top = 72
Width = 73
Height = 13
Caption = 'Lat/Lon Format'
end
object Label7: TLabel
- Left = 224
+ Left = 226
Top = 72
Width = 43
Height = 13
@@ -87,7 +87,7 @@ object ConnectDialog: TConnectDialog
Caption = '(2)'
end
object BtnOk: TButton
- Left = 94
+ Left = 95
Top = 134
Width = 89
Height = 29
@@ -187,9 +187,9 @@ object ConnectDialog: TConnectDialog
'hh:mm:ss JST')
end
object DegFormS: TComboBox
- Left = 114
+ Left = 115
Top = 86
- Width = 105
+ Width = 104
Height = 21
Style = csDropDownList
ItemIndex = 0
@@ -203,12 +203,12 @@ object ConnectDialog: TConnectDialog
object FieldSepS: TEdit
Left = 220
Top = 86
- Width = 53
+ Width = 54
Height = 21
TabOrder = 12
end
object TimeOutTimeE: TEdit
- Left = 164
+ Left = 166
Top = 110
Width = 53
Height = 21
@@ -218,7 +218,7 @@ object ConnectDialog: TConnectDialog
object ReConnTimeE: TEdit
Left = 220
Top = 110
- Width = 53
+ Width = 54
Height = 21
TabOrder = 14
Text = '10000'
diff --git a/app/rtkplot/conndlg.h b/app/winapp/rtkplot/conndlg.h
similarity index 97%
rename from app/rtkplot/conndlg.h
rename to app/winapp/rtkplot/conndlg.h
index 2e89d5ad5..5a1ca254e 100644
--- a/app/rtkplot/conndlg.h
+++ b/app/winapp/rtkplot/conndlg.h
@@ -60,7 +60,7 @@ class TConnectDialog : public TForm
int Stream1,Stream2,Format1,Format2,CmdEna1[2],CmdEna2[2];
int TimeForm,DegForm,TimeOutTime,ReConnTime;
AnsiString Path,Paths1[4],Paths2[4];
- AnsiString TcpHistory[MAXHIST],TcpMntpHist[MAXHIST];
+ AnsiString TcpHistory[MAXHIST];
AnsiString Cmds1[2],Cmds2[2],FieldSep;
__fastcall TConnectDialog(TComponent* Owner);
};
diff --git a/app/rtkplot/fileseldlg.cpp b/app/winapp/rtkplot/fileseldlg.cpp
similarity index 100%
rename from app/rtkplot/fileseldlg.cpp
rename to app/winapp/rtkplot/fileseldlg.cpp
diff --git a/app/rtkplot/fileseldlg.dfm b/app/winapp/rtkplot/fileseldlg.dfm
similarity index 100%
rename from app/rtkplot/fileseldlg.dfm
rename to app/winapp/rtkplot/fileseldlg.dfm
diff --git a/app/rtkplot/fileseldlg.h b/app/winapp/rtkplot/fileseldlg.h
similarity index 100%
rename from app/rtkplot/fileseldlg.h
rename to app/winapp/rtkplot/fileseldlg.h
diff --git a/app/winapp/rtkplot/install.bat b/app/winapp/rtkplot/install.bat
new file mode 100644
index 000000000..3bf507f7d
--- /dev/null
+++ b/app/winapp/rtkplot/install.bat
@@ -0,0 +1,3 @@
+copy Release_Build\rtkplot.exe ..\..\..\..\RTKLIB_bin\bin
+copy rtkplot_gm.htm ..\..\..\..\RTKLIB_bin\bin
+copy rtkplot_ll.htm ..\..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkplot/mapdlg.cpp b/app/winapp/rtkplot/mapoptdlg.cpp
similarity index 77%
rename from app/rtkplot/mapdlg.cpp
rename to app/winapp/rtkplot/mapoptdlg.cpp
index 110f6cf6c..16c2067c6 100644
--- a/app/rtkplot/mapdlg.cpp
+++ b/app/winapp/rtkplot/mapoptdlg.cpp
@@ -5,7 +5,7 @@
#pragma hdrstop
#include "plotmain.h"
-#include "mapdlg.h"
+#include "mapoptdlg.h"
#include "confdlg.h"
#define INC_LATLON 0.000001
@@ -14,7 +14,7 @@
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
-TMapAreaDialog *MapAreaDialog;
+TMapOptDialog *MapOptDialog;
//---------------------------------------------------------------------------
static double str2dbl(AnsiString str)
{
@@ -23,18 +23,18 @@ static double str2dbl(AnsiString str)
return val;
}
//---------------------------------------------------------------------------
-__fastcall TMapAreaDialog::TMapAreaDialog(TComponent* Owner)
+__fastcall TMapOptDialog::TMapOptDialog(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::FormShow(TObject *Sender)
+void __fastcall TMapOptDialog::FormShow(TObject *Sender)
{
UpdateField();
UpdateEnable();
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::BtnSaveClick(TObject *Sender)
+void __fastcall TMapOptDialog::BtnSaveClick(TObject *Sender)
{
FILE *fp;
AnsiString file=Plot->MapImageFile;
@@ -56,7 +56,7 @@ void __fastcall TMapAreaDialog::BtnSaveClick(TObject *Sender)
fclose(fp);
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::BtnCenterClick(TObject *Sender)
+void __fastcall TMapOptDialog::BtnCenterClick(TObject *Sender)
{
AnsiString s;
double rr[3],pos[3];
@@ -67,24 +67,24 @@ void __fastcall TMapAreaDialog::BtnCenterClick(TObject *Sender)
UpdateMap();
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::BtnUpdateClick(TObject *Sender)
+void __fastcall TMapOptDialog::BtnUpdateClick(TObject *Sender)
{
UpdateMap();
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::BtnCloseClick(TObject *Sender)
+void __fastcall TMapOptDialog::BtnCloseClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::ScaleEqClick(TObject *Sender)
+void __fastcall TMapOptDialog::ScaleEqClick(TObject *Sender)
{
UpdateMap();
UpdateEnable();
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::ScaleXUpDownChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+void __fastcall TMapOptDialog::ScaleXUpDownChangingEx(TObject *Sender,
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString s;
double scale=str2dbl(ScaleX->Text);
@@ -93,8 +93,8 @@ void __fastcall TMapAreaDialog::ScaleXUpDownChangingEx(TObject *Sender,
UpdateMap();
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::ScaleYUpDownChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+void __fastcall TMapOptDialog::ScaleYUpDownChangingEx(TObject *Sender,
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString s;
double scale=str2dbl(ScaleY->Text);
@@ -103,8 +103,8 @@ void __fastcall TMapAreaDialog::ScaleYUpDownChangingEx(TObject *Sender,
UpdateMap();
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::LatUpDownChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+void __fastcall TMapOptDialog::LatUpDownChangingEx(TObject *Sender,
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString s;
double lat=str2dbl(Lat->Text);
@@ -113,8 +113,8 @@ void __fastcall TMapAreaDialog::LatUpDownChangingEx(TObject *Sender,
UpdateMap();
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::LonUpDownChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+void __fastcall TMapOptDialog::LonUpDownChangingEx(TObject *Sender,
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString s;
double lon=str2dbl(Lon->Text);
@@ -123,7 +123,7 @@ void __fastcall TMapAreaDialog::LonUpDownChangingEx(TObject *Sender,
UpdateMap();
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::ScaleXKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
+void __fastcall TMapOptDialog::ScaleXKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
{
bool allowchange;
@@ -133,7 +133,7 @@ void __fastcall TMapAreaDialog::ScaleXKeyDown(TObject *Sender, WORD &Key, TShift
}
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::ScaleYKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
+void __fastcall TMapOptDialog::ScaleYKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
{
bool allowchange;
@@ -143,7 +143,7 @@ void __fastcall TMapAreaDialog::ScaleYKeyDown(TObject *Sender, WORD &Key, TShift
}
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::LatKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
+void __fastcall TMapOptDialog::LatKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
{
bool allowchange;
@@ -153,7 +153,7 @@ void __fastcall TMapAreaDialog::LatKeyDown(TObject *Sender, WORD &Key, TShiftSta
}
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::LonKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
+void __fastcall TMapOptDialog::LonKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
{
bool allowchange;
@@ -163,7 +163,7 @@ void __fastcall TMapAreaDialog::LonKeyDown(TObject *Sender, WORD &Key, TShiftSta
}
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::UpdateField(void)
+void __fastcall TMapOptDialog::UpdateField(void)
{
AnsiString s;
Caption=Plot->MapImageFile;
@@ -176,7 +176,7 @@ void __fastcall TMapAreaDialog::UpdateField(void)
ScaleEq->Checked=Plot->MapScaleEq;
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::UpdateMap(void)
+void __fastcall TMapOptDialog::UpdateMap(void)
{
Plot->MapScaleX=str2dbl(ScaleX->Text);
Plot->MapScaleY=str2dbl(ScaleY->Text);
@@ -186,7 +186,7 @@ void __fastcall TMapAreaDialog::UpdateMap(void)
Plot->UpdatePlot();
}
//---------------------------------------------------------------------------
-void __fastcall TMapAreaDialog::UpdateEnable(void)
+void __fastcall TMapOptDialog::UpdateEnable(void)
{
ScaleY ->Enabled=!ScaleEq->Checked;
ScaleYUpDown->Enabled=!ScaleEq->Checked;
diff --git a/app/rtkplot/mapdlg.dfm b/app/winapp/rtkplot/mapoptdlg.dfm
similarity index 97%
rename from app/rtkplot/mapdlg.dfm
rename to app/winapp/rtkplot/mapoptdlg.dfm
index 6867e6c48..e78ee62ad 100644
--- a/app/rtkplot/mapdlg.dfm
+++ b/app/winapp/rtkplot/mapoptdlg.dfm
@@ -1,10 +1,10 @@
-object MapAreaDialog: TMapAreaDialog
+object MapOptDialog: TMapOptDialog
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
- Caption = 'Map Image'
- ClientHeight = 122
+ Caption = 'Map Image Options'
+ ClientHeight = 124
ClientWidth = 341
Color = clWhite
Font.Charset = DEFAULT_CHARSET
diff --git a/app/rtkplot/mapdlg.h b/app/winapp/rtkplot/mapoptdlg.h
similarity index 84%
rename from app/rtkplot/mapdlg.h
rename to app/winapp/rtkplot/mapoptdlg.h
index da61b394c..30158b737 100644
--- a/app/rtkplot/mapdlg.h
+++ b/app/winapp/rtkplot/mapoptdlg.h
@@ -1,6 +1,6 @@
//---------------------------------------------------------------------------
-#ifndef mapdlgH
-#define mapdlgH
+#ifndef mapoptdlgH
+#define mapoptdlgH
//---------------------------------------------------------------------------
#include
#include
@@ -10,7 +10,7 @@
#include
#include
//---------------------------------------------------------------------------
-class TMapAreaDialog : public TForm
+class TMapOptDialog : public TForm
{
__published:
TButton *BtnClose;
@@ -36,16 +36,16 @@ class TMapAreaDialog : public TForm
TLabel *Label2;
void __fastcall FormShow(TObject *Sender);
void __fastcall ScaleXUpDownChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall LatUpDownChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall LonUpDownChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall BtnCloseClick(TObject *Sender);
void __fastcall BtnUpdateClick(TObject *Sender);
void __fastcall BtnSaveClick(TObject *Sender);
void __fastcall ScaleYUpDownChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall BtnCenterClick(TObject *Sender);
void __fastcall ScaleEqClick(TObject *Sender);
void __fastcall LonKeyDown(TObject *Sender, WORD &Key, TShiftState Shift);
@@ -58,10 +58,10 @@ class TMapAreaDialog : public TForm
void __fastcall UpdateEnable(void);
public:
- __fastcall TMapAreaDialog(TComponent* Owner);
+ __fastcall TMapOptDialog(TComponent* Owner);
void __fastcall UpdateField(void);
};
//---------------------------------------------------------------------------
-extern PACKAGE TMapAreaDialog *MapAreaDialog;
+extern PACKAGE TMapOptDialog *MapOptDialog;
//---------------------------------------------------------------------------
#endif
diff --git a/app/winapp/rtkplot/mapview.cpp b/app/winapp/rtkplot/mapview.cpp
new file mode 100644
index 000000000..f2bed7349
--- /dev/null
+++ b/app/winapp/rtkplot/mapview.cpp
@@ -0,0 +1,367 @@
+//---------------------------------------------------------------------------
+// mapview.c: map view
+//---------------------------------------------------------------------------
+#include
+#pragma hdrstop
+#include
+#include "rtklib.h"
+#include "mapview.h"
+#include "mapviewopt.h"
+#include "plotmain.h"
+
+#define RTKLIB_GM_TEMP "rtkplot_gm.htm"
+#define RTKLIB_GM_FILE "rtkplot_gm_a.htm"
+#define RTKLIB_LL_TEMP "rtkplot_ll.htm"
+#define RTKLIB_LL_FILE "rtkplot_ll_a.htm"
+#define URL_GM_API "http://maps.google.com/maps/api/js"
+#define MAP_OPACITY 0.8
+#define INIT_ZOOM 12 // initial zoom level
+
+//---------------------------------------------------------------------------
+#pragma package(smart_init)
+#pragma link "SHDocVw_OCX"
+#pragma resource "*.dfm"
+
+TMapView *MapView;
+//---------------------------------------------------------------------------
+__fastcall TMapView::TMapView(TComponent* Owner)
+ : TForm(Owner)
+{
+ MapSel=0;
+ Lat=Lon=0.0;
+ for (int i=0;i<2;i++) {
+ MapState[0]=MapState[1]=0;
+ MarkState[0]=MarkState[1]=0;
+ MarkPos[i][0]=MarkPos[i][1]=0.0;
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::FormShow(TObject *Sender)
+{
+ MapSel1->Checked=!MapSel;
+ MapSel2->Checked=MapSel;
+ SelectMap(MapSel);
+ ShowMap(MapSel);
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::BtnCloseClick(TObject *Sender)
+{
+ Close();
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::MapSel1Click(TObject *Sender)
+{
+ SelectMap(0);
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::MapSel2Click(TObject *Sender)
+{
+ SelectMap(1);
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::BtnOptClick(TObject *Sender)
+{
+ MapViewOptDialog->Top=Top+Height/2-MapViewOptDialog->Height/2;
+ MapViewOptDialog->Left=Left+Width/2-MapViewOptDialog->Width/2;
+
+ MapViewOptDialog->ApiKey=Plot->ApiKey;
+ for (int i=0;i<6;i++) for (int j=0;j<3;j++) {
+ MapViewOptDialog->MapStrs[i][j]=Plot->MapStrs[i][j];
+ }
+ if (MapViewOptDialog->ShowModal()!=mrOk) return;
+
+ Plot->ApiKey=MapViewOptDialog->ApiKey;
+ for (int i=0;i<6;i++) for (int j=0;j<3;j++) {
+ Plot->MapStrs[i][j]=MapViewOptDialog->MapStrs[i][j];
+ }
+ MapState[0]=MapState[1]=0;
+ ShowMap(MapSel);
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::BtnZoomOutClick(TObject *Sender)
+{
+ ExecFunc(MapSel,"ZoomOut()");
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::BtnZoomInClick(TObject *Sender)
+{
+ ExecFunc(MapSel,"ZoomIn()");
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::BtnSyncClick(TObject *Sender)
+{
+ if (BtnSync->Down) {
+ SetCent(Lat,Lon);
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::FormResize(TObject *Sender)
+{
+ if (BtnSync->Down) {
+ SetCent(Lat,Lon);
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::ShowMap(int map)
+{
+ if (!map&&!MapState[0]) {
+ ShowMapLL();
+ }
+ else if (map&&!MapState[1]) {
+ ShowMapGM();
+ }
+ else {
+ UpdateMap();
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::ShowMapLL(void)
+{
+ AnsiString exe,dir=".",ifile,ofile;
+ FILE *ifp,*ofp;
+ char *p,*q,buff[1024];
+ int i,j;
+
+ exe=Application->ExeName; // exe directory
+ p=exe.c_str();
+ if ((q=strrchr(p,'\\'))) {
+ dir=exe.SubString(1,q-p);
+ }
+ ifile=dir+"\\"+RTKLIB_LL_TEMP;
+ ofile=dir+"\\"+RTKLIB_LL_FILE;
+
+ if (!(ifp=fopen(ifile.c_str(),"r"))) {
+ return;
+ }
+ if (!(ofp=fopen(ofile.c_str(),"w"))) {
+ fclose(ifp);
+ return;
+ }
+ while (fgets(buff,sizeof(buff),ifp)) {
+ fputs(buff,ofp);
+ if (!strstr(buff,"// start map tiles")) continue;
+ for (i=0,j=1;i<6;i++) {
+ if (Plot->MapStrs[i][0]=="") continue;
+ UTF8String title=Plot->MapStrs[i][0];
+ UTF8String url =Plot->MapStrs[i][1];
+ UTF8String attr =Plot->MapStrs[i][2];
+
+ fprintf(ofp,"var tile%d = L.tileLayer('%s', {\n",j,url.c_str());
+ fprintf(ofp," attribution: \"%s\",\n",
+ attr.c_str(),title.c_str());
+ fprintf(ofp," opacity: %.1f});\n",MAP_OPACITY);
+ j++;
+ }
+ fprintf(ofp,"var basemaps = {");
+ for (i=0,j=1;i<6;i++) {
+ if (Plot->MapStrs[i][0]=="") continue;
+ UTF8String title=Plot->MapStrs[i][0];
+ fprintf(ofp,"%s\"%s\":tile%d",(j==1)?"":",",title.c_str(),j);
+ j++;
+ }
+ fprintf(ofp,"};\n");
+ }
+ fclose(ifp);
+ fclose(ofp);
+
+ UnicodeString url="file://"+ofile;
+ Browser1->Navigate(url.c_str());
+ Timer1->Enabled=true;
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::Timer1Timer(TObject *Sender)
+{
+ if (!GetState(0)) return;
+ MapState[0]=1;
+ SetView(0,Lat,Lon,INIT_ZOOM);
+ AddMark(0,1,MarkPos[0][0],MarkPos[0][1],MarkState[0]);
+ AddMark(0,2,MarkPos[1][0],MarkPos[1][1],MarkState[1]);
+ Timer1->Enabled=false;
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::ShowMapGM(void)
+{
+ AnsiString exe,dir=".",ifile,ofile;
+ FILE *ifp, *ofp;
+ char *p,*q,*key=Plot->ApiKey.c_str(),buff[1024];
+
+ exe=Application->ExeName; // exe directory
+ p=exe.c_str();
+ if ((q=strrchr(p,'\\'))) {
+ dir=exe.SubString(1,q-p);
+ }
+ ifile=dir+"\\"+RTKLIB_GM_TEMP;
+ ofile=dir+"\\"+RTKLIB_GM_FILE;
+
+ if (!(ifp=fopen(ifile.c_str(),"r"))) {
+ return;
+ }
+ if (!(ofp=fopen(ofile.c_str(),"w"))) {
+ fclose(ifp);
+ return;
+ }
+ while (fgets(buff,sizeof(buff),ifp)) {
+ if (*key&&(p=strstr(buff,URL_GM_API))) {
+ p+=strlen(URL_GM_API);
+ *p++='\0';
+ fprintf(ofp,"%s?key=%s&%s",buff,key,p);
+ }
+ else {
+ fputs(buff,ofp);
+ }
+ }
+ fclose(ifp);
+ fclose(ofp);
+
+ UnicodeString url="file://"+ofile;
+ Browser2->Navigate(url.c_str());
+ Timer2->Enabled=true;
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::Timer2Timer(TObject *Sender)
+{
+ if (!GetState(1)) return;
+ MapState[1]=1;
+ SetView(1,Lat,Lon,INIT_ZOOM);
+ AddMark(1,1,MarkPos[0][0],MarkPos[0][1],MarkState[0]);
+ AddMark(1,2,MarkPos[1][0],MarkPos[1][1],MarkState[1]);
+ Timer2->Enabled=false;
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::SetView(int map, double lat, double lon, int zoom)
+{
+ UTF8String func;
+
+ ExecFunc(map,func.sprintf("SetView(%.9f,%.9f,%d)",lat,lon,zoom));
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::AddMark(int map, int index, double lat, double lon,
+ int state)
+{
+ UTF8String func;
+
+ func.sprintf("AddMark(%.9f,%.9f,'SOL%d','SOLUTION %d')",lat,lon,index,index);
+ ExecFunc(map,func);
+ if (state) func.sprintf("ShowMark('SOL%d')",index);
+ else func.sprintf("HideMark('SOL%d')",index);
+ ExecFunc(map,func);
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::UpdateMap(void)
+{
+ SetCent(Lat,Lon);
+ for (int i=0;i<2;i++) {
+ SetMark(i+1,MarkPos[i][0],MarkPos[i][1]);
+ if (MarkState[i]) ShowMark(i+1); else HideMark(i+1);
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::SelectMap(int map)
+{
+ if (!map) {
+ Panel22->Visible=false;
+ Panel21->Visible=true;
+ }
+ else {
+ Panel21->Visible=false;
+ Panel22->Visible=true;
+ }
+ MapSel=map;
+ ShowMap(map);
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::SetCent(double lat, double lon)
+{
+ UTF8String func;
+
+ Lat=lat;
+ Lon=lon;
+ if (BtnSync->Down) {
+ ExecFunc(MapSel,func.sprintf("SetCent(%.9f,%.9f)",lat,lon));
+ }
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::SetMark(int index, double lat, double lon)
+{
+ UTF8String func;
+
+ MarkPos[index-1][0]=lat;
+ MarkPos[index-1][1]=lon;
+ func.sprintf("PosMark(%.9f,%.9f,'SOL%d')",lat,lon,index);
+ ExecFunc(MapSel,func);
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::ShowMark(int index)
+{
+ UTF8String func;
+
+ MarkState[index-1]=1;
+ ExecFunc(MapSel,func.sprintf("ShowMark('SOL%d')",index));
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapView::HideMark(int index)
+{
+ UTF8String func;
+
+ MarkState[index-1]=0;
+ ExecFunc(MapSel,func.sprintf("HideMark('SOL%d')",index));
+}
+//---------------------------------------------------------------------------
+int __fastcall TMapView::GetState(int map)
+{
+ TCppWebBrowser *browser[]={Browser1,Browser2};
+ IHTMLDocument3 *doc=NULL;
+ IHTMLElement *ele1=NULL;
+ VARIANT var;
+ int state=0;
+
+ if (!browser[map]->Document) return 0;
+ browser[map]->Document->QueryInterface(IID_IHTMLDocument3,(void **)&doc);
+ if (!doc) return 0;
+ BSTR bstr1=SysAllocString(L"state");
+ doc->getElementById(bstr1,&ele1);
+ SysFreeString(bstr1);
+ doc->Release();
+ if (!ele1) return 0;
+
+ VariantInit(&var);
+ BSTR bstr2=SysAllocString(L"value");
+ if (ele1->getAttribute(bstr2,0,&var)!=S_OK) {
+ SysFreeString(bstr2);
+ VariantClear(&var);
+ return 0;
+ }
+ SysFreeString(bstr2);
+ swscanf(var.bstrVal,L"%d",&state);
+ VariantClear(&var);
+ return state;
+}
+//---------------------------------------------------------------------------
+int __fastcall TMapView::ExecFunc(int map, UTF8String func)
+{
+ TCppWebBrowser *browser[]={Browser1,Browser2};
+ IHTMLWindow2 *win;
+ IHTMLDocument2 *doc=NULL;
+ VARIANT var;
+ HRESULT hr;
+ wchar_t func_w[1024]={0};
+
+ if (!browser[map]->Document) return 0;
+ browser[map]->Document->QueryInterface(IID_IHTMLDocument2,(void **)&doc);
+ if (!doc) return 0;
+ hr=doc->get_parentWindow(&win);
+ doc->Release();
+ if (hr!=S_OK) return 0;
+
+ VariantInit(&var);
+ ::MultiByteToWideChar(CP_UTF8,0,func.c_str(),-1,func_w,512);
+ BSTR bstr1=SysAllocString(func_w);
+ BSTR bstr2=SysAllocString(L"javascript");
+ hr=win->execScript(bstr1,bstr2,&var);
+ SysFreeString(bstr2);
+ VariantClear(&var);
+ return 1;
+}
+//---------------------------------------------------------------------------
+
+
diff --git a/app/rtkplot/gmview.dfm b/app/winapp/rtkplot/mapview.dfm
similarity index 62%
rename from app/rtkplot/gmview.dfm
rename to app/winapp/rtkplot/mapview.dfm
index 86d6734f4..779dae173 100644
--- a/app/rtkplot/gmview.dfm
+++ b/app/winapp/rtkplot/mapview.dfm
@@ -1,8 +1,8 @@
-object GoogleMapView: TGoogleMapView
+object MapView: TMapView
Left = 0
Top = 0
BorderIcons = [biSystemMenu, biMaximize]
- Caption = 'Google Map View'
+ Caption = 'Map View'
ClientHeight = 506
ClientWidth = 504
Color = clWhite
@@ -15,7 +15,6 @@ object GoogleMapView: TGoogleMapView
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
- OnCreate = FormCreate
OnResize = FormResize
OnShow = FormShow
PixelsPerInch = 96
@@ -26,13 +25,15 @@ object GoogleMapView: TGoogleMapView
Width = 504
Height = 27
Align = alTop
+ Color = clWhite
+ ParentBackground = False
TabOrder = 0
- object BtnFixCent: TSpeedButton
+ object BtnSync: TSpeedButton
Left = 1
Top = 1
Width = 25
Height = 25
- Hint = 'Fix Plot Center'
+ Hint = 'Sync Main Window'
Align = alLeft
AllowAllUp = True
GroupIndex = 1
@@ -60,13 +61,16 @@ object GoogleMapView: TGoogleMapView
FF00}
ParentShowHint = False
ShowHint = True
- OnClick = BtnFixCentClick
+ OnClick = BtnSyncClick
+ ExplicitTop = 0
end
- object BtnExpand: TSpeedButton
- Left = 176
+ object BtnZoomIn: TSpeedButton
+ Left = 91
Top = 1
Width = 25
Height = 25
+ Hint = 'Zoom In'
+ Align = alLeft
Flat = True
Glyph.Data = {
3E020000424D3E0200000000000036000000280000000D0000000D0000000100
@@ -88,13 +92,18 @@ object GoogleMapView: TGoogleMapView
B4000000000000000000B4B4B4FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00}
- OnClick = BtnExpandClick
+ ParentShowHint = False
+ ShowHint = True
+ OnClick = BtnZoomInClick
+ ExplicitLeft = 105
end
- object BtnShrink: TSpeedButton
- Left = 149
+ object BtnZoomOut: TSpeedButton
+ Left = 66
Top = 1
Width = 25
Height = 25
+ Hint = 'Zoom Out'
+ Align = alLeft
Flat = True
Glyph.Data = {
3E020000424D3E0200000000000036000000280000000D0000000D0000000100
@@ -116,28 +125,74 @@ object GoogleMapView: TGoogleMapView
B4000000000000000000B4B4B4FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00}
- OnClick = BtnShrinkClick
+ ParentShowHint = False
+ ShowHint = True
+ OnClick = BtnZoomOutClick
+ ExplicitLeft = 80
end
object Panel5: TPanel
- Left = 452
+ Left = 214
Top = 1
- Width = 51
+ Width = 289
Height = 25
Align = alRight
BevelOuter = bvNone
- Caption = 'Panel5'
TabOrder = 0
+ object MapSel1: TRadioButton
+ Left = 4
+ Top = 4
+ Width = 113
+ Height = 17
+ Caption = 'Leaflet'
+ Checked = True
+ TabOrder = 2
+ TabStop = True
+ OnClick = MapSel1Click
+ end
+ object MapSel2: TRadioButton
+ Left = 60
+ Top = 4
+ Width = 113
+ Height = 17
+ Caption = 'Google Maps'
+ TabOrder = 3
+ OnClick = MapSel2Click
+ end
+ object BtnOpt: TButton
+ AlignWithMargins = True
+ Left = 146
+ Top = 0
+ Width = 70
+ Height = 25
+ Margins.Left = 0
+ Margins.Top = 0
+ Margins.Right = 1
+ Margins.Bottom = 0
+ Align = alRight
+ Caption = 'Options...'
+ TabOrder = 0
+ OnClick = BtnOptClick
+ end
object BtnClose: TButton
- Left = 0
+ Left = 217
Top = 0
- Width = 51
+ Width = 72
Height = 25
- Align = alClient
+ Align = alRight
Caption = 'Close'
- TabOrder = 0
+ TabOrder = 1
OnClick = BtnCloseClick
end
end
+ object Panel3: TPanel
+ Left = 26
+ Top = 1
+ Width = 40
+ Height = 25
+ Align = alLeft
+ BevelOuter = bvNone
+ TabOrder = 1
+ end
end
object Panel2: TPanel
Left = 0
@@ -146,29 +201,79 @@ object GoogleMapView: TGoogleMapView
Height = 479
Align = alClient
Caption = 'Panel2'
+ Color = clWhite
+ ParentBackground = False
TabOrder = 1
- object WebBrowser: TCppWebBrowser
+ object Panel21: TPanel
Left = 1
Top = 1
Width = 502
Height = 477
Align = alClient
+ BevelOuter = bvNone
+ Color = clWhite
+ ParentBackground = False
TabOrder = 0
- ExplicitTop = 0
- ExplicitHeight = 482
- ControlData = {
- 4C000000E23300004D3100000000000000000000000000000000000000000000
- 000000004C000000000000000000000001000000E0D057007335CF11AE690800
- 2B2E12620B000000000000004C0000000114020000000000C000000000000046
- 8000000000000000000000000000000000000000000000000000000000000000
- 00000000000000000100000000000000000000000000000000000000}
+ object Browser1: TCppWebBrowser
+ Left = 0
+ Top = 0
+ Width = 502
+ Height = 477
+ Align = alClient
+ TabOrder = 0
+ ExplicitLeft = 2
+ ExplicitTop = 1
+ ControlData = {
+ 4C000000E23300004D3100000000000000000000000000000000000000000000
+ 000000004C000000000000000000000001000000E0D057007335CF11AE690800
+ 2B2E12620B000000000000004C0000000114020000000000C000000000000046
+ 8000000000000000000000000000000000000000000000000000000000000000
+ 00000000000000000100000000000000000000000000000000000000}
+ end
+ end
+ object Panel22: TPanel
+ Left = 1
+ Top = 1
+ Width = 502
+ Height = 477
+ Align = alClient
+ BevelOuter = bvNone
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 1
+ Visible = False
+ object Browser2: TCppWebBrowser
+ Left = 0
+ Top = 0
+ Width = 502
+ Height = 477
+ Align = alClient
+ TabOrder = 0
+ ExplicitLeft = 2
+ ExplicitTop = 2
+ ExplicitWidth = 200
+ ExplicitHeight = 200
+ ControlData = {
+ 4C000000E23300004D3100000000000000000000000000000000000000000000
+ 000000004C000000000000000000000001000000E0D057007335CF11AE690800
+ 2B2E12620B000000000000004C0000000114020000000000C000000000000046
+ 8000000000000000000000000000000000000000000000000000000000000000
+ 00000000000000000100000000000000000000000000000000000000}
+ end
end
end
object Timer1: TTimer
Enabled = False
Interval = 100
OnTimer = Timer1Timer
- Left = 419
- Top = 418
+ Left = 421
+ Top = 420
+ end
+ object Timer2: TTimer
+ Enabled = False
+ Interval = 100
+ OnTimer = Timer2Timer
+ Left = 452
+ Top = 420
end
end
diff --git a/app/winapp/rtkplot/mapview.h b/app/winapp/rtkplot/mapview.h
new file mode 100644
index 000000000..e70470919
--- /dev/null
+++ b/app/winapp/rtkplot/mapview.h
@@ -0,0 +1,75 @@
+//---------------------------------------------------------------------------
+#ifndef mapviewH
+#define mapviewH
+//---------------------------------------------------------------------------
+#include
+#include
+#include
+#include
+#include "SHDocVw_OCX.h"
+#include
+#include
+#include
+//---------------------------------------------------------------------------
+class TMapView : public TForm
+{
+__published:
+ TPanel *Panel1;
+ TPanel *Panel2;
+ TCppWebBrowser *Browser1;
+ TPanel *Panel5;
+ TButton *BtnClose;
+ TTimer *Timer1;
+ TSpeedButton *BtnSync;
+ TSpeedButton *BtnZoomIn;
+ TSpeedButton *BtnZoomOut;
+ TButton *BtnOpt;
+ TCppWebBrowser *Browser2;
+ TRadioButton *MapSel1;
+ TRadioButton *MapSel2;
+ TPanel *Panel3;
+ TTimer *Timer2;
+ TPanel *Panel21;
+ TPanel *Panel22;
+ void __fastcall BtnCloseClick(TObject *Sender);
+ void __fastcall Timer1Timer(TObject *Sender);
+ void __fastcall BtnZoomOutClick(TObject *Sender);
+ void __fastcall BtnZoomInClick(TObject *Sender);
+ void __fastcall BtnSyncClick(TObject *Sender);
+ void __fastcall FormResize(TObject *Sender);
+ void __fastcall FormShow(TObject *Sender);
+ void __fastcall BtnOptClick(TObject *Sender);
+ void __fastcall MapSel1Click(TObject *Sender);
+ void __fastcall MapSel2Click(TObject *Sender);
+ void __fastcall Timer2Timer(TObject *Sender);
+
+
+private:
+ int MapState[2],MarkState[2];
+ double Lat,Lon;
+ double MarkPos[2][2];
+
+ void __fastcall ShowMapLL(void);
+ void __fastcall ShowMapGM(void);
+ void __fastcall ShowMap(int map);
+ void __fastcall SetView(int map, double lat, double lon, int zoom);
+ void __fastcall AddMark(int map, int index, double lat, double lon,
+ int state);
+ void __fastcall UpdateMap(void);
+ void __fastcall SelectMap(int map);
+ int __fastcall GetState(int map);
+ int __fastcall ExecFunc(int map, UTF8String func);
+
+public:
+ int MapSel;
+
+ __fastcall TMapView(TComponent* Owner);
+ void __fastcall SetCent(double lat, double lon);
+ void __fastcall SetMark(int index, double lat, double lon);
+ void __fastcall ShowMark(int index);
+ void __fastcall HideMark(int index);
+};
+//---------------------------------------------------------------------------
+extern PACKAGE TMapView *MapView;
+//---------------------------------------------------------------------------
+#endif
diff --git a/app/winapp/rtkplot/mapviewopt.cpp b/app/winapp/rtkplot/mapviewopt.cpp
new file mode 100644
index 000000000..891e1cb2b
--- /dev/null
+++ b/app/winapp/rtkplot/mapviewopt.cpp
@@ -0,0 +1,66 @@
+//---------------------------------------------------------------------------
+
+#include
+#pragma hdrstop
+
+#include "viewer.h"
+#include "mapviewopt.h"
+//---------------------------------------------------------------------------
+#pragma package(smart_init)
+#pragma resource "*.dfm"
+TMapViewOptDialog *MapViewOptDialog;
+//---------------------------------------------------------------------------
+__fastcall TMapViewOptDialog::TMapViewOptDialog(TComponent* Owner)
+ : TForm(Owner)
+{
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapViewOptDialog::FormShow(TObject *Sender)
+{
+ TEdit *titles[]={
+ MapTitle1,MapTitle2,MapTitle3,MapTitle4,MapTitle5,MapTitle6
+ };
+ TEdit *tiles[]={
+ MapTile1,MapTile2,MapTile3,MapTile4,MapTile5,MapTile6
+ };
+ for (int i=0;i<6;i++) {
+ titles[i]->Text=MapStrs[i][0];
+ tiles [i]->Text=MapStrs[i][1];
+ }
+ EditApiKey->Text=ApiKey;
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapViewOptDialog::BtnOkClick(TObject *Sender)
+{
+ TEdit *titles[]={
+ MapTitle1,MapTitle2,MapTitle3,MapTitle4,MapTitle5,MapTitle6
+ };
+ TEdit *tiles[]={
+ MapTile1,MapTile2,MapTile3,MapTile4,MapTile5,MapTile6
+ };
+ for (int i=0;i<6;i++) {
+ MapStrs[i][0]=titles[i]->Text;
+ MapStrs[i][1]=tiles [i]->Text;
+ }
+ ApiKey=EditApiKey->Text;
+}
+//---------------------------------------------------------------------------
+void __fastcall TMapViewOptDialog::BtnNotesClick(TObject *Sender)
+{
+ AnsiString file;
+ TTextViewer *viewer;
+ char dir[1024],*p;
+
+ ::GetModuleFileName(NULL,dir,sizeof(dir));
+ if ((p=strrchr(dir,'\\'))) *p='\0';
+ file=dir;
+ file+="\\gmview_notes.txt";
+ viewer=new TTextViewer(Application);
+ viewer->Caption=file;
+ viewer->Option=0;
+ viewer->Show();
+ viewer->Read(file);
+}
+//---------------------------------------------------------------------------
+
+
diff --git a/app/winapp/rtkplot/mapviewopt.dfm b/app/winapp/rtkplot/mapviewopt.dfm
new file mode 100644
index 000000000..db95dd9a4
--- /dev/null
+++ b/app/winapp/rtkplot/mapviewopt.dfm
@@ -0,0 +1,167 @@
+object MapViewOptDialog: TMapViewOptDialog
+ Left = 0
+ Top = 0
+ BorderIcons = []
+ BorderStyle = bsDialog
+ Caption = 'Map View Options'
+ ClientHeight = 251
+ ClientWidth = 490
+ Color = clWhite
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ Position = poDefault
+ OnShow = FormShow
+ PixelsPerInch = 96
+ TextHeight = 13
+ object Label1: TLabel
+ Left = 10
+ Top = 178
+ Width = 102
+ Height = 13
+ Caption = 'Google Maps API Key'
+ end
+ object Label2: TLabel
+ Left = 35
+ Top = 26
+ Width = 20
+ Height = 13
+ Caption = 'Title'
+ end
+ object Label3: TLabel
+ Left = 248
+ Top = 26
+ Width = 61
+ Height = 13
+ Caption = 'Map Tile URL'
+ end
+ object Label5: TLabel
+ Left = 10
+ Top = 10
+ Width = 80
+ Height = 13
+ Caption = 'Leaflet Map Tiles'
+ end
+ object BtnNotes: TSpeedButton
+ Left = 128
+ Top = 176
+ Width = 23
+ Height = 18
+ Caption = '?'
+ Flat = True
+ OnClick = BtnNotesClick
+ end
+ object BtnOk: TButton
+ Left = 312
+ Top = 219
+ Width = 85
+ Height = 29
+ Caption = '&OK'
+ ModalResult = 1
+ TabOrder = 1
+ OnClick = BtnOkClick
+ end
+ object BtnCancel: TButton
+ Left = 400
+ Top = 219
+ Width = 85
+ Height = 29
+ Caption = '&Cancel'
+ ModalResult = 2
+ TabOrder = 0
+ end
+ object EditApiKey: TEdit
+ Left = 4
+ Top = 194
+ Width = 480
+ Height = 21
+ TabOrder = 14
+ end
+ object MapTitle1: TEdit
+ Left = 4
+ Top = 40
+ Width = 85
+ Height = 21
+ TabOrder = 2
+ end
+ object MapTile1: TEdit
+ Left = 90
+ Top = 40
+ Width = 393
+ Height = 21
+ TabOrder = 3
+ end
+ object MapTitle2: TEdit
+ Left = 4
+ Top = 62
+ Width = 85
+ Height = 21
+ TabOrder = 4
+ end
+ object MapTile2: TEdit
+ Left = 90
+ Top = 62
+ Width = 393
+ Height = 21
+ TabOrder = 5
+ end
+ object MapTitle3: TEdit
+ Left = 4
+ Top = 84
+ Width = 85
+ Height = 21
+ TabOrder = 6
+ end
+ object MapTile3: TEdit
+ Left = 90
+ Top = 84
+ Width = 393
+ Height = 21
+ TabOrder = 7
+ end
+ object MapTitle4: TEdit
+ Left = 4
+ Top = 106
+ Width = 85
+ Height = 21
+ TabOrder = 8
+ end
+ object MapTile4: TEdit
+ Left = 90
+ Top = 106
+ Width = 393
+ Height = 21
+ TabOrder = 9
+ end
+ object MapTitle5: TEdit
+ Left = 4
+ Top = 128
+ Width = 85
+ Height = 21
+ TabOrder = 10
+ end
+ object MapTile5: TEdit
+ Left = 90
+ Top = 128
+ Width = 393
+ Height = 21
+ TabOrder = 11
+ end
+ object MapTitle6: TEdit
+ Left = 4
+ Top = 150
+ Width = 85
+ Height = 21
+ TabOrder = 12
+ end
+ object MapTile6: TEdit
+ Left = 90
+ Top = 150
+ Width = 393
+ Height = 21
+ TabOrder = 13
+ end
+end
diff --git a/app/winapp/rtkplot/mapviewopt.h b/app/winapp/rtkplot/mapviewopt.h
new file mode 100644
index 000000000..d8396a344
--- /dev/null
+++ b/app/winapp/rtkplot/mapviewopt.h
@@ -0,0 +1,47 @@
+//---------------------------------------------------------------------------
+
+#ifndef mapviewoptH
+#define mapviewoptH
+//---------------------------------------------------------------------------
+#include
+#include
+#include
+#include
+#include
+//---------------------------------------------------------------------------
+class TMapViewOptDialog : public TForm
+{
+__published:
+ TButton *BtnCancel;
+ TEdit *EditApiKey;
+ TButton *BtnOk;
+ TLabel *Label1;
+ TEdit *MapTitle1;
+ TEdit *MapTile1;
+ TLabel *Label2;
+ TLabel *Label3;
+ TEdit *MapTitle2;
+ TEdit *MapTile2;
+ TEdit *MapTitle3;
+ TEdit *MapTile3;
+ TEdit *MapTitle4;
+ TEdit *MapTile4;
+ TLabel *Label5;
+ TEdit *MapTitle5;
+ TEdit *MapTile5;
+ TEdit *MapTitle6;
+ TEdit *MapTile6;
+ TSpeedButton *BtnNotes;
+ void __fastcall FormShow(TObject *Sender);
+ void __fastcall BtnOkClick(TObject *Sender);
+ void __fastcall BtnNotesClick(TObject *Sender);
+private:
+public:
+ UTF8String MapStrs[6][3];
+ UTF8String ApiKey;
+ __fastcall TMapViewOptDialog(TComponent* Owner);
+};
+//---------------------------------------------------------------------------
+extern PACKAGE TMapViewOptDialog *MapViewOptDialog;
+//---------------------------------------------------------------------------
+#endif
diff --git a/app/rtkplot/plotcmn.cpp b/app/winapp/rtkplot/plotcmn.cpp
similarity index 88%
rename from app/rtkplot/plotcmn.cpp
rename to app/winapp/rtkplot/plotcmn.cpp
index a55af0264..c59ff47fb 100644
--- a/app/rtkplot/plotcmn.cpp
+++ b/app/winapp/rtkplot/plotcmn.cpp
@@ -8,15 +8,15 @@
//---------------------------------------------------------------------------
extern "C" {
-int showmsg(char *format,...) {return 0;}
+int showmsg(const char *format,...) {return 0;}
}
//---------------------------------------------------------------------------
const char *PTypes[]={
- "Gnd Trk","Position","Velocity","Accel","NSat","Residuals",
+ "Gnd Trk","Position","Velocity","Accel","NSat","Residuals","Resid-EL",
"Sat Vis","Skyplot","DOP/NSat","SNR/MP/EL","SNR/MP-EL","MP-Skyplot",""
};
// show message in status-bar -----------------------------------------------
-void __fastcall TPlot::ShowMsg(AnsiString msg)
+void __fastcall TPlot::ShowMsg(UTF8String msg)
{
Message1->Caption=msg;
Panel21->Repaint();
@@ -65,7 +65,7 @@ double __fastcall TPlot::TimePos(gtime_t time)
return tow+(week-Week)*86400.0*7;
}
// show legand in status-bar ------------------------------------------------
-void __fastcall TPlot::ShowLegend(AnsiString *msgs)
+void __fastcall TPlot::ShowLegend(UTF8String *msgs)
{
TLabel *ql[]={QL1,QL2,QL3,QL4,QL5,QL6,QL7};
int i,sel=!BtnSol1->Down&&BtnSol2->Down?1:0;
@@ -77,7 +77,7 @@ void __fastcall TPlot::ShowLegend(AnsiString *msgs)
ql[i]->Caption=" "; ql[i]->Width=1;
}
else {
- ql[i]->Caption=A2U(msgs[i]);
+ ql[i]->Caption=msgs[i];
ql[i]->Font->Color=MColor[sel][i+1];
}
}
@@ -135,7 +135,7 @@ TIMEPOS * __fastcall TPlot::SolToPos(solbuf_t *sol, int index, int qflag, int ty
if (type==1&&index>sol->n-2) index=sol->n-2;
if (type==2&&index>sol->n-3) index=sol->n-3;
}
- for (i=index<0?0:index;data=getsol(sol,i);i++) {
+ for (i=(index<0)?0:index;(data=getsol(sol,i));i++) {
tint=TimeEna[2]?TimeInt:0.0;
@@ -180,7 +180,7 @@ TIMEPOS * __fastcall TPlot::SolToNsat(solbuf_t *sol, int index, int qflag)
ns=new TIMEPOS(index<0?sol->n:3,1);
- for (i=index<0?0:index;data=getsol(sol,i);i++) {
+ for (i=(index<0)?0:index;(data=getsol(sol,i));i++) {
if (qflag&&data->stat!=qflag) continue;
@@ -284,49 +284,58 @@ TColor __fastcall TPlot::SysColor(int sat)
case SYS_GAL: return MColor[0][3];
case SYS_QZS: return MColor[0][4];
case SYS_CMP: return MColor[0][5];
- case SYS_SBS: return MColor[0][6];
+ case SYS_IRN: return MColor[0][6];
+ case SYS_SBS: return MColor[0][0];
}
return MColor[0][0];
}
// get observation data color -----------------------------------------------
TColor __fastcall TPlot::ObsColor(const obsd_t *obs, double az, double el)
{
- TColor color=clBlack;
- AnsiString ObsType_Text;
- char *code="";
- int i;
+ TColor color;
+ AnsiString text=ObsType->Text;
+ const char *obstype;
+ int i,n,freq;
trace(4,"ObsColor\n");
- if (!SatSel[obs->sat-1]) return clBlack;
-
- if (PlotType==PLOT_SNR||PlotType==PLOT_SNRE) {
- ObsType_Text=ObsType2->Text;
- code=ObsType_Text.c_str()+1;
+ if (!SatSel[obs->sat-1]) {
+ return clBlack;
}
- else if (ObsType->ItemIndex) {
- ObsType_Text=ObsType->Text;
- code=ObsType_Text.c_str()+1;
+ if (PlotType==PLOT_SNR||PlotType==PLOT_SNRE) {
+ text=ObsType2->Text;
}
+ obstype=text.c_str();
+
if (SimObs) {
color=SysColor(obs->sat);
}
- else if (*code) {
- for (i=0;icode[i],NULL),code)) continue;
- color=SnrColor(obs->SNR[i]*0.25);
- break;
+ else if (!strcmp(obstype,"ALL")) {
+ for (i=n=0;iL[i]!=0.0||obs->P[i]!=0.0) n++;
+ }
+ if (n==0) {
+ return clBlack;
}
- if (i>=NFREQ+NEXOBS) return clBlack;
+ color=MColor[0][6-n];
+ }
+ else if (sscanf(obstype,"L%d",&freq)==1) {
+ if (obs->L[freq-1]==0.0&&obs->P[freq-1]==0.0) {
+ return clBlack;
+ }
+ color=SnrColor(obs->SNR[freq-1]*SNR_UNIT);
}
else {
- if (obs->L[0]!=0.0&&obs->L[1]!=0.0&&obs->L[2]) color=MColor[0][4];
- else if (obs->L[0]!=0.0&&obs->L[1]!=0.0) color=MColor[0][1];
- else if (obs->L[0]!=0.0&&obs->L[2]!=0.0) color=MColor[0][5];
- else if (obs->L[0]!=0.0) color=MColor[0][2];
- else if (obs->P[1]!=0.0) color=MColor[0][3];
- else if (obs->P[2]!=0.0) color=MColor[0][6];
- else return clBlack;
+ for (i=0;icode[i]),obstype)) break;
+ }
+ if (i>=NFREQ+NEXOBS) {
+ return clBlack;
+ }
+ if (obs->L[i]==0.0&&obs->P[i]==0.0) {
+ return clBlack;
+ }
+ color=SnrColor(obs->SNR[i]*SNR_UNIT);
}
if (el47.5) return MColor[0][1];
a=(snr-27.5)/5.0;
i=(int)a; a-=i;
- c1=(unsigned int)MColor[0][4-i];
- c2=(unsigned int)MColor[0][5-i];
+ c1=(uint32_t)MColor[0][4-i];
+ c2=(uint32_t)MColor[0][5-i];
r1=c1&0xFF; g1=(c1>>8)&0xFF; b1=(c1>>16)&0xFF;
r2=c2&0xFF; g2=(c2>>8)&0xFF; b2=(c2>>16)&0xFF;
- r1=(unsigned int)(a*r1+(1.0-a)*r2)&0xFF;
- g1=(unsigned int)(a*g1+(1.0-a)*g2)&0xFF;
- b1=(unsigned int)(a*b1+(1.0-a)*b2)&0xFF;
+ r1=(uint32_t)(a*r1+(1.0-a)*r2)&0xFF;
+ g1=(uint32_t)(a*g1+(1.0-a)*g2)&0xFF;
+ b1=(uint32_t)(a*b1+(1.0-a)*b2)&0xFF;
return (TColor)((b1<<16)+(g1<<8)+r1);
}
@@ -359,7 +368,7 @@ TColor __fastcall TPlot::SnrColor(double snr)
TColor __fastcall TPlot::MpColor(double mp)
{
TColor colors[5];
- unsigned int c1,c2,r1,r2,g1,g2,b1,b2;
+ uint32_t c1,c2,r1,r2,g1,g2,b1,b2;
double a;
int i;
@@ -373,13 +382,13 @@ TColor __fastcall TPlot::MpColor(double mp)
if (mp<=-0.6) return colors[0];
a=mp/0.4+0.6;
i=(int)a; a-=i;
- c1=(unsigned int)colors[i ];
- c2=(unsigned int)colors[i+1];
+ c1=(uint32_t)colors[i ];
+ c2=(uint32_t)colors[i+1];
r1=c1&0xFF; g1=(c1>>8)&0xFF; b1=(c1>>16)&0xFF;
r2=c2&0xFF; g2=(c2>>8)&0xFF; b2=(c2>>16)&0xFF;
- r1=(unsigned int)(a*r1+(1.0-a)*r2)&0xFF;
- g1=(unsigned int)(a*g1+(1.0-a)*g2)&0xFF;
- b1=(unsigned int)(a*b1+(1.0-a)*b2)&0xFF;
+ r1=(uint32_t)(a*r1+(1.0-a)*r2)&0xFF;
+ g1=(uint32_t)(a*g1+(1.0-a)*g2)&0xFF;
+ b1=(uint32_t)(a*b1+(1.0-a)*b2)&0xFF;
return (TColor)((b1<<16)+(g1<<8)+r1);
}
@@ -399,7 +408,7 @@ int __fastcall TPlot::SearchPos(int x, int y)
GraphT->GetScale(xs,ys);
r=(MarkSize/2+2)*xs;
- for (i=0;data=getsol(SolData+sel,i);i++) {
+ for (i=0;(data=getsol(SolData+sel,i));i++) {
if (QFlag->ItemIndex&&data->stat!=QFlag->ItemIndex) continue;
PosToXyz(data->time,data->rr,data->type,xyz);
@@ -413,7 +422,8 @@ int __fastcall TPlot::SearchPos(int x, int y)
void __fastcall TPlot::TimeStr(gtime_t time, int n, int tsys, char *str)
{
struct tm *t;
- char tstr[64],*label="";
+ char tstr[64];
+ const char *label="";
double tow;
int week;
@@ -440,9 +450,9 @@ void __fastcall TPlot::TimeStr(gtime_t time, int n, int tsys, char *str)
sprintf(str,"%s%s",tstr,label);
}
// latitude/longitude/height string -----------------------------------------
-AnsiString __fastcall TPlot::LatLonStr(const double *pos, int ndec)
+UTF8String __fastcall TPlot::LatLonStr(const double *pos, int ndec)
{
- AnsiString s;
+ UTF8String s;
double dms1[3],dms2[3];
if (LatLonFmt==0) {
diff --git a/app/rtkplot/plotdata.cpp b/app/winapp/rtkplot/plotdata.cpp
similarity index 86%
rename from app/rtkplot/plotdata.cpp
rename to app/winapp/rtkplot/plotdata.cpp
index 3f991ee8f..9e42d141b 100644
--- a/app/rtkplot/plotdata.cpp
+++ b/app/winapp/rtkplot/plotdata.cpp
@@ -3,9 +3,8 @@
//---------------------------------------------------------------------------
#include "rtklib.h"
#include "plotmain.h"
-#include "mapdlg.h"
+#include "mapoptdlg.h"
#include "pntdlg.h"
-#include "geview.h"
#define HEADXML "\n"
#define HEADGPX "\n"
@@ -14,21 +13,16 @@
#define MAX_SIMOBS 16384 // max genrated obs epochs
#define MAX_SKYIMG_R 2048 // max size of resampled sky image
-#define THRES_SLIP 2.0 // threshold of cycle-slip
-
static char path_str[MAXNFILE][1024];
static const char *XMLNS="http://www.topografix.com/GPX/1/1";
// read solutions -----------------------------------------------------------
void __fastcall TPlot::ReadSol(TStrings *files, int sel)
{
- FILETIME tc,ta,tw;
- SYSTEMTIME st;
- HANDLE h;
solbuf_t sol={0};
AnsiString s;
gtime_t ts,te;
- double tint,ep[6];
+ double tint;
int i,n=0;
char *paths[MAXNFILE];
@@ -40,23 +34,6 @@ void __fastcall TPlot::ReadSol(TStrings *files, int sel)
ReadWaitStart();
- s=files->Strings[0];
-
- if ((h=CreateFile(s.c_str(),GENERIC_READ,0,NULL,OPEN_EXISTING,
- FILE_ATTRIBUTE_NORMAL,0))==INVALID_HANDLE_VALUE) {
- return;
- }
- GetFileTime(h,&tc,&ta,&tw);
- CloseHandle(h);
- FileTimeToSystemTime(&tc,&st); // file create time
- ep[0]=st.wYear;
- ep[1]=st.wMonth;
- ep[2]=st.wDay;
- ep[3]=st.wHour;
- ep[4]=st.wMinute;
- ep[5]=st.wSecond;
- sol.time=utc2gpst(epoch2time(ep));
-
for (i=0;iCount&&nStrings[i]).c_str());
}
@@ -94,6 +71,7 @@ void __fastcall TPlot::ReadSol(TStrings *files, int sel)
UpdateOrigin();
}
SolIndex[0]=SolIndex[1]=ObsIndex=0;
+ TimeScroll->Position=0;
GEDataState[sel]=0;
@@ -260,6 +238,22 @@ int __fastcall TPlot::ReadObsRnx(TStrings *files, obs_t *obs, nav_t *nav,
memcpy(q+1,"BRDC",4);
strcpy(p+3,"N"); readrnxt(navfile,1,ts,te,tint,opt,NULL,nav,NULL);
}
+ else if (!strcmp(p-1,"O.rnx" )&&(p=strrchr(navfile,'_'))) { /* rinex 3 */
+ *p='\0';
+ if (!(p=strrchr(navfile,'_'))) continue;
+ *p='\0';
+ if (!(p=strrchr(navfile,'_'))) continue;
+ strcpy(p,"_*_*N.rnx");
+
+ n=nav->n;
+ readrnxt(navfile,1,ts,te,tint,opt,NULL,nav,NULL);
+
+ if (nav->n>n||!(q=strrchr(navfile,'\\'))) continue;
+
+ // read brdc navigation data
+ memcpy(q+1,"BRDC",4);
+ readrnxt(navfile,1,ts,te,tint,opt,NULL,nav,NULL);
+ }
}
if (obs->n<=0) {
ShowMsg(s.sprintf("no observation data: %s...",files->Strings[0].c_str()));
@@ -437,7 +431,7 @@ void __fastcall TPlot::ReadMapData(AnsiString file)
image->LoadFromFile(file);
}
catch (Exception &exception) {
- ShowMsg(s.sprintf("map file read error: %s",file));
+ ShowMsg(s.sprintf("map file read error: %s",file.c_str()));
ShowLegend(NULL);
return;
}
@@ -456,7 +450,7 @@ void __fastcall TPlot::ReadMapData(AnsiString file)
}
BtnShowImg->Down=true;
- MapAreaDialog->UpdateField();
+ MapOptDialog->UpdateField();
UpdateOrigin();
UpdatePlot();
UpdateEnable();
@@ -477,7 +471,7 @@ void __fastcall TPlot::ReadMapData(AnsiString file)
pix[1]=(BYTE)(a1*p1[1]+a2*p2[1]+a3*p1[4]+a4*p2[4]);\
pix[2]=(BYTE)(a1*p1[2]+a2*p2[2]+a3*p1[5]+a4*p2[5]);\
}
-// rotate coordintates roll-pitch-yaw ---------------------------------------
+// rotate coordinates roll-pitch-yaw ----------------------------------------
static void RPY(const double *rpy, double *R)
{
double sr=sin(-rpy[0]*D2R),cr=cos(-rpy[0]*D2R);
@@ -647,7 +641,7 @@ void __fastcall TPlot::ReadSkyData(AnsiString file)
image->LoadFromFile(file);
}
catch (Exception &exception) {
- ShowMsg(s.sprintf("sky image file read error: %s",file));
+ ShowMsg(s.sprintf("sky image file read error: %s",file.c_str()));
ShowLegend(NULL);
return;
}
@@ -747,20 +741,16 @@ void __fastcall TPlot::ReadShapeFile(TStrings *files)
UpdatePlot();
UpdateEnable();
}
-// read waypoint ------------------------------------------------------------
-void __fastcall TPlot::ReadWaypoint(AnsiString file)
+// read GPX file ------------------------------------------------------------
+void __fastcall TPlot::ReadGpxFile(AnsiString file)
{
- UTF8String label1(L""),label2(L"");
- AnsiString s;
+ AnsiString label1(L"=4) {
+ PntPos[NWayPnt][0]=pos[0];
+ PntPos[NWayPnt][1]=pos[1];
+ PntPos[NWayPnt][2]=pos[2];
+ UnicodeString unicode_str=(n>=5)?name:id;
+ AnsiString utf8_str=unicode_str;
+ PntName[NWayPnt++]=utf8_str;
+ }
+ }
+ fclose(fp);
+}
+// read waypoint ------------------------------------------------------------
+void __fastcall TPlot::ReadWaypoint(AnsiString file)
+{
+ AnsiString s;
+ int type=0;
+ char *p;
+
+ if ((p=strrchr(file.c_str(),'.'))&&!strcmp(p,".gpx")) type=1;
+
+ ReadWaitStart();
+ ShowMsg(s.sprintf("reading waypoint... %s",file.c_str()));
+
+ if (type) ReadGpxFile(file);
+ else ReadPosFile(file);
ReadWaitEnd();
ShowMsg("");
@@ -800,8 +833,8 @@ void __fastcall TPlot::ReadWaypoint(AnsiString file)
UpdateEnable();
PntDialog->SetPoint();
}
-// save waypoint ------------------------------------------------------------
-void __fastcall TPlot::SaveWaypoint(AnsiString file)
+// save GPX file ------------------------------------------------------------
+void __fastcall TPlot::SaveGpxFile(AnsiString file)
{
FILE *fp;
int i;
@@ -817,13 +850,48 @@ void __fastcall TPlot::SaveWaypoint(AnsiString file)
if (PntPos[i][2]!=0.0) {
fprintf(fp," %.4f\n",PntPos[i][2]);
}
- UTF8String str(PntName[i]);
- fprintf(fp," %s\n",str); // UTF-8
+ AnsiString str(PntName[i]);
+ fprintf(fp," %s\n",str.c_str()); // UTF-8
fprintf(fp,"\n");
}
fprintf(fp,"%s\n",TAILGPX);
fclose(fp);
}
+// save pos file ------------------------------------------------------------
+void __fastcall TPlot::SavePosFile(AnsiString file)
+{
+ FILE *fp;
+ int i;
+
+ if (!(fp=fopen(file.c_str(),"w"))) return;
+
+ fprintf(fp,"# WAYPOINTS by RTKLIB %s\n",VER_RTKLIB);
+
+ for (i=0;iText;
gtime_t time;
double tow;
- char sat[32],mp[32],tstr[64],*tlabel,*code=ObsTypeText.c_str()+1;
+ char sat[32],mp[32],tstr[64],*code=ObsTypeText.c_str()+1;
+ const char *tlabel;
int i,j,k,week;
trace(3,"SaveSnrMp: file=%s\n",file.c_str());
@@ -937,7 +1007,7 @@ void __fastcall TPlot::SaveSnrMp(AnsiString file)
if (Obs.data[j].sat!=i+1) continue;
for (k=0;k=NFREQ+NEXOBS) continue;
@@ -957,7 +1027,7 @@ void __fastcall TPlot::SaveSnrMp(AnsiString file)
time2str(timeadd(gpst2utc(time),9*3600.0),tstr,1);
}
fprintf(fp,"%s %6s %8.1f %8.1f %9.2f %10.4f\n",tstr,sat,Az[j]*R2D,
- El[j]*R2D,Obs.data[j].SNR[k]*0.25,!Mp[k]?0.0:Mp[k][j]);
+ El[j]*R2D,Obs.data[j].SNR[k]*SNR_UNIT,!Mp[k]?0.0:Mp[k][j]);
}
}
fclose(fp);
@@ -988,7 +1058,8 @@ void __fastcall TPlot::SaveElMask(AnsiString file)
void __fastcall TPlot::Connect(void)
{
AnsiString s;
- char *cmd,*path,buff[MAXSTRPATH],*name[2]={"",""},*p;
+ char *cmd,*path,buff[MAXSTRPATH],*p;
+ const char *name[2]={"",""};
int i,mode=STR_MODE_R;
trace(3,"Connect\n");
@@ -1023,7 +1094,7 @@ void __fastcall TPlot::Connect(void)
if (StrCmdEna[i][0]) {
cmd=StrCmds[i][0].c_str();
- strwrite(Stream+i,(unsigned char *)cmd,strlen(cmd));
+ strwrite(Stream+i,(uint8_t *)cmd,strlen(cmd));
}
ConnectState=1;
}
@@ -1038,6 +1109,7 @@ void __fastcall TPlot::Connect(void)
BtnSol12 ->Down=false;
BtnShowTrack->Down=true;
BtnFixHoriz->Down=true;
+ BtnFixCent ->Down=true;
BtnReload->Visible=false;
StrStatus->Left=Panel11->Width-BtnOptions->Width;
StrStatus->Visible=true;
@@ -1061,7 +1133,7 @@ void __fastcall TPlot::Disconnect(void)
for (i=0;i<2;i++) {
if (StrCmdEna[i][1]) {
cmd=StrCmds[i][1].c_str();
- strwrite(Stream+i,(unsigned char *)cmd,strlen(cmd));
+ strwrite(Stream+i,(uint8_t *)cmd,strlen(cmd));
}
strclose(Stream+i);
}
@@ -1096,13 +1168,9 @@ int __fastcall TPlot::CheckObs(AnsiString file)
// update observation data index, azimuth/elevation, satellite list ---------
void __fastcall TPlot::UpdateObs(int nobs)
{
- AnsiString s;
prcopt_t opt=prcopt_default;
- gtime_t time;
- sol_t sol={0};
- double pos[3],rr[3],e[3],azel[MAXOBS*2]={0},rs[6],dts[2],var;
- int i,j,k,svh,per,per_=-1;
- char msg[128],name[16];
+ double rr[3]={0};
+ int per,per_=-1;
trace(3,"UpdateObs\n");
@@ -1116,56 +1184,63 @@ void __fastcall TPlot::UpdateObs(int nobs)
Az=new double[Obs.n];
El=new double[Obs.n];
- opt.err[0]=900.0;
-
ReadWaitStart();
ShowLegend(NULL);
- for (i=0;iTTOL) break;
}
IndexObs[NObs++]=i;
-
- for (k=0;k0.0) satazel(pos,e,azel+k*2);
+ if (geodist(rs,rr,e)>0.0) {
+ satazel(pos,e,azel);
+ if (azel[0]<0.0) azel[0]+=2.0*PI;
}
- }
- // satellite azel by tle data
- for (k=0;k0.0) satazel(pos,e,azel+k*2);
- }
- for (k=0;kProcessMessages();
}
@@ -1181,81 +1256,55 @@ void __fastcall TPlot::UpdateMp(void)
{
AnsiString s;
obsd_t *data;
- double lam1,lam2,I,C,B;
- int i,j,k,f1,f2,sat,sys,per,per_=-1,n;
+ double freq1,freq2,freq,I,B;
+ int i,j,k,m,n,sat,per,per_=-1;
trace(3,"UpdateMp\n");
for (i=0;isat,NULL);
+ freq1=sat2freq(data->sat,data->code[0],&Nav);
+ freq2=sat2freq(data->sat,data->code[1],&Nav);
+ if (data->L[0]==0.0||data->L[1]==0.0||freq1==0.0||freq2==0.0) continue;
+ I=-CLIGHT*(data->L[0]/freq1-data->L[1]/freq2)/(1.0-SQR(freq1/freq2));
for (j=0;jcode[j],&f1);
-
- if (sys==SYS_CMP) {
- if (f1==5) f1=2; /* B2 */
- else if (f1==4) f1=3; /* B3 */
- }
- if (sys==SYS_GAL) f2=f1==1?3:1; /* E1/E5a */
- else if (sys==SYS_SBS) f2=f1==1?3:1; /* L1/L5 */
- else if (sys==SYS_CMP) f2=f1==1?2:1; /* B1/B2 */
- else f2=f1==1?2:1; /* L1/L2 */
-
- lam1=satwavelen(data->sat,f1-1,&Nav);
- lam2=satwavelen(data->sat,f2-1,&Nav);
- if (lam1==0.0||lam2==0.0) continue;
-
- if (data->P[j]!=0.0&&data->L[j]!=0.0&&data->L[f2-1]) {
- C=SQR(lam1)/(SQR(lam1)-SQR(lam2));
- I=lam1*data->L[j]-lam2*data->L[f2-1];
- Mp[j][i]=data->P[j]-lam1*data->L[j]+2.0*C*I;
- }
+ freq=sat2freq(data->sat,data->code[j],&Nav);
+ if (data->P[j]==0.0||data->L[j]==0.0||freq==0.0) continue;
+ Mp[j][i]=data->P[j]-CLIGHT*data->L[j]/freq-2.0*SQR(freq1/freq)*I;
}
}
- for (sat=1;sat<=MAXSAT;sat++) for (i=0;iTHRES_SLIP) {
-
- for (;ksat!=sat) continue;
+ if ((data->LLI[j]&1)||(data->LLI[0]&1)||(data->LLI[1]&1)||
+ fabs(Mp[j][i]-B)>5.0) {
+ for (k=m;k0) {
- for (;kDown=true;
BtnFixHoriz ->Down=true;
BtnFixVert ->Down=true;
+ BtnFixCent ->Down=true;
}
// clear obs data --------------------------------------------------------------
void __fastcall TPlot::ClearObs(void)
@@ -1367,10 +1417,11 @@ void __fastcall TPlot::Clear(void)
initsolbuf(SolData ,1,RtBuffSize+1);
initsolbuf(SolData+1,1,RtBuffSize+1);
}
- GoogleEarthView->Clear();
-
for (i=0;i<=360;i++) ElMaskData[i]=0.0;
+ NWayPnt=0;
+ SelWayPnt=-1;
+
UpdateTime();
UpdatePlot();
UpdateEnable();
diff --git a/app/rtkplot/plotdraw.cpp b/app/winapp/rtkplot/plotdraw.cpp
similarity index 72%
rename from app/rtkplot/plotdraw.cpp
rename to app/winapp/rtkplot/plotdraw.cpp
index 80e970189..8639a2e13 100644
--- a/app/rtkplot/plotdraw.cpp
+++ b/app/winapp/rtkplot/plotdraw.cpp
@@ -6,9 +6,11 @@
#include "plotmain.h"
#include "graph.h"
#include "refdlg.h"
-#include "geview.h"
-#include "gmview.h"
+#include "mapview.h"
+#define MS_FONT "Consolas" // monospace font name
+#define CHARGTE "\342\211\245" // grater equal charactor (UTF-8)
+#define CHARMUL "\303\227" // multiply charactor (UTF-8)
#define COL_ELMASK clRed
#define ATAN2(x,y) ((x)*(x)+(y)*(y)>1E-12?atan2(x,y):0.0)
@@ -54,6 +56,7 @@ void __fastcall TPlot::UpdateDisp(void)
case PLOT_SKY : DrawSky (level); break;
case PLOT_DOP : DrawDop (level); break;
case PLOT_RES : DrawRes (level); break;
+ case PLOT_RESE: DrawResE(level); break;
case PLOT_SNR : DrawSnr (level); break;
case PLOT_SNRE: DrawSnrE(level); break;
case PLOT_MPS : DrawMpS (level); break;
@@ -69,7 +72,7 @@ void __fastcall TPlot::UpdateDisp(void)
// draw track-plot ----------------------------------------------------------
void __fastcall TPlot::DrawTrk(int level)
{
- AnsiString label,header,s;
+ UTF8String header,s;
TIMEPOS *pos,*pos1,*pos2,*vel;
gtime_t time1={0},time2={0};
sol_t *sol;
@@ -216,13 +219,23 @@ void __fastcall TPlot::DrawTrk(int level)
delete pos1;
delete pos2;
}
- if (BtnShowMap->Down) {
+ if (level&&BtnShowMap->Down) {
for (i=0;i=0) {
+ pnt[0]=PntPos[SelWayPnt][0]*D2R;
+ pnt[1]=PntPos[SelWayPnt][1]*D2R;
+ pnt[2]=PntPos[SelWayPnt][2];
+ pos2ecef(pnt,rr);
+ AnsiString str=PntName[SelWayPnt];
+ DrawTrkPos(rr,0,16,clRed,str);
}
}
if (ShowCompass) {
@@ -237,6 +250,8 @@ void __fastcall TPlot::DrawTrk(int level)
delete vel;
}
if (ShowScale) {
+ UTF8String label;
+
GraphT->GetPos(p1,p2);
GraphT->GetTick(xt,yt);
GraphT->GetScale(sx,sy);
@@ -244,9 +259,9 @@ void __fastcall TPlot::DrawTrk(int level)
p2.y-=25;
DrawMark(GraphT,p2,11,CColor[2],(int)(xt/sx+0.5),0);
p2.y-=3;
- if (xt<0.01 ) label.sprintf("%.0f mm",xt*1000.0);
- else if (xt<1.0 ) label.sprintf("%.0f cm",xt*100.0);
- else if (xt<1000.0) label.sprintf("%.0f m" ,xt);
+ if (xt<0.0099) label.sprintf("%.0f mm",xt*1000.0);
+ else if (xt<0.999 ) label.sprintf("%.0f cm",xt*100.0);
+ else if (xt<999.0 ) label.sprintf("%.0f m" ,xt);
else label.sprintf("%.0f km",xt/1000.0);
DrawLabel(GraphT,p2,label,0,1);
}
@@ -255,7 +270,7 @@ void __fastcall TPlot::DrawTrk(int level)
GraphT->ToPoint(xt,yt,p1);
DrawMark(GraphT,p1,5,CColor[2],20,0);
}
- // update geview and gmview center
+ // update map view center
if (level) {
if (norm(OPos,3)>0.0) {
GraphT->GetCent(xt,yt);
@@ -265,10 +280,9 @@ void __fastcall TPlot::DrawTrk(int level)
enu2ecef(opos,enu,rr);
for (i=0;i<3;i++) rr[i]+=OPos[i];
ecef2pos(rr,cent);
- GoogleEarthView->SetCent(cent[0]*R2D,cent[1]*R2D);
- GoogleMapView ->SetCent(cent[0]*R2D,cent[1]*R2D);
+ MapView->SetCent(cent[0]*R2D,cent[1]*R2D);
}
- Refresh_GEView();
+ Refresh_MapView();
}
}
// draw map-image on track-plot ---------------------------------------------
@@ -297,7 +311,7 @@ void __fastcall TPlot::DrawTrkImage(int level)
TRect r(p1,p2);
c->StretchDraw(r,MapImage);
}
-// check in boundrary --------------------------------------------------------
+// check in boundary --------------------------------------------------------
#define P_IN_B(pos,bound) \
(pos[0]>=bound[0]&&pos[0]<=bound[1]&&pos[1]>=bound[2]&&pos[1]<=bound[3])
@@ -403,8 +417,8 @@ void __fastcall TPlot::DrawTrkMap(int level)
for (j=0,S=0.0;jDrawPatch(p,m,color,color,0);
+ color=S<0.0?CColor[0]:MapColorF[i];
+ GraphT->DrawPatch(p,m,MapColor[i],color,0);
delete [] p;
}
}
@@ -439,19 +453,19 @@ void __fastcall TPlot::DrawTrkPnt(const TIMEPOS *pos, int level, int style)
}
// draw point with label on track-plot --------------------------------------
void __fastcall TPlot::DrawTrkPos(const double *rr, int type, int siz,
- TColor color, AnsiString label)
+ TColor color, UTF8String label)
{
gtime_t time={0};
TPoint p1;
double xyz[3],xs,ys;
- trace(3,"DrawTrkPos: type=%d\n",type);
+ trace(3,"DrawTrkPos: type=%d rr=%.3f %.3f %.3f\n",type,rr[0],rr[1],rr[2]);
if (norm(rr,3)>0.0) {
GraphT->GetScale(xs,ys);
PosToXyz(time,rr,type,xyz);
GraphT->ToPoint(xyz[0],xyz[1],p1);
- DrawMark(GraphT,p1,5,color,siz+8,0);
+ DrawMark(GraphT,p1,5,color,siz+6,0);
DrawMark(GraphT,p1,1,color,siz ,0);
DrawMark(GraphT,p1,1,color,siz-6,0);
p1.y+=10;
@@ -459,9 +473,9 @@ void __fastcall TPlot::DrawTrkPos(const double *rr, int type, int siz,
}
}
// draw statistics on track-plot --------------------------------------------
-void __fastcall TPlot::DrawTrkStat(const TIMEPOS *pos, AnsiString header, int p)
+void __fastcall TPlot::DrawTrkStat(const TIMEPOS *pos, UTF8String header, int p)
{
- AnsiString s[6];
+ UTF8String s[6];
TPoint p1,p2;
double *d,ave[4],std[4],rms[4],opos[3];
int i,n=0,fonth=(int)(Disp->Font->Size*1.5);
@@ -556,7 +570,7 @@ void __fastcall TPlot::DrawTrkArrow(const TIMEPOS *pos)
// draw velocity-indicator on track-plot ------------------------------------
void __fastcall TPlot::DrawTrkVel(const TIMEPOS *vel)
{
- AnsiString label;
+ UTF8String label;
TPoint p1,p2;
double v=0.0,dir=0.0;
@@ -582,7 +596,7 @@ void __fastcall TPlot::DrawTrkVel(const TIMEPOS *vel)
// draw solution-plot -------------------------------------------------------
void __fastcall TPlot::DrawSol(int level, int type)
{
- AnsiString label[]={"E-W","N-S","U-D"},unit[]={"m","m/s","m/s" CHARUP2};
+ UTF8String label[]={"E-W","N-S","U-D"},unit[]={"m","m/s","m/s" CHARUP2};
TSpeedButton *btn[]={BtnOn1,BtnOn2,BtnOn3};
TIMEPOS *pos,*pos1,*pos2;
gtime_t time1={0},time2={0};
@@ -756,14 +770,14 @@ void __fastcall TPlot::DrawSolPnt(const TIMEPOS *pos, int level, int style)
delete [] x;
}
// draw statistics on solution-plot -----------------------------------------
-void __fastcall TPlot::DrawSolStat(const TIMEPOS *pos, AnsiString unit, int p)
+void __fastcall TPlot::DrawSolStat(const TIMEPOS *pos, UTF8String unit, int p)
{
TSpeedButton *btn[]={BtnOn1,BtnOn2,BtnOn3};
TPoint p1,p2;
double ave,std,rms,*y,opos[3];
int i,j=0,k=0,fonth=(int)(Disp->Font->Size*1.5);
char *u;
- AnsiString label,s;
+ UTF8String label,s;
trace(3,"DrawSolStat: p=%d\n",p);
@@ -795,7 +809,7 @@ void __fastcall TPlot::DrawSolStat(const TIMEPOS *pos, AnsiString unit, int p)
// draw number-of-satellite plot --------------------------------------------
void __fastcall TPlot::DrawNsat(int level)
{
- AnsiString label[]={
+ UTF8String label[]={
"# of Valid Satellites",
"Age of Differential (s)",
"Ratio Factor for AR Validation"
@@ -882,7 +896,6 @@ void __fastcall TPlot::DrawNsat(int level)
// draw observation-data-plot -----------------------------------------------
void __fastcall TPlot::DrawObs(int level)
{
- AnsiString label;
TPoint p1,p2,p;
gtime_t time;
obsd_t *obs;
@@ -926,6 +939,7 @@ void __fastcall TPlot::DrawObs(int level)
for (i=0,j=0;iText;
- obsd_t *obs;
- TPoint ps[2];
- double gfp[MAXSAT]={0},gf;
- const char *code;
- int i,j,slip;
-
- trace(3,"DrawObsSlip\n");
-
- code=ObsType->ItemIndex?ObsTypeText.c_str()+1:"";
-
- if (ShowHalfC) {
- for (i=0;isat-1]) continue;
- slip=0;
- for (j=0;jcode[j],NULL),code))&&
- (obs->LLI[j]&2)) slip=1;
+ AnsiString text=ObsType->Text;
+ const char *obstype=text.c_str();
+ double gfp[MAXSAT][NFREQ+NEXOBS]={{0}};
+
+ for (int i=0;isat-1]) continue;
+ if (ElMaskP&&El[i]sat,obs->code[0],&Nav))==0.0) continue;
+ LLI[i]=obs->LLI[0]&2;
+ for (j=1;jLLI[j]&2;
+ if ((freq2=sat2freq(obs->sat,obs->code[j],&Nav))==0.0) continue;
+ gf=CLIGHT*(obs->L[0]/freq1-obs->L[j]/freq2);
+ if (fabs(gfp[obs->sat-1][j]-gf)>THRESLIP) LLI[i]|=1;
+ gfp[obs->sat-1][j]=gf;
+ }
+ }
+ else {
+ if (sscanf(obstype,"L%d",&k)==1) {
+ j=k-1;
+ }
+ else {
+ for (j=0;jcode[j]),obstype)) break;
+ }
+ if (j>=NFREQ+NEXOBS) continue;
+ }
+ LLI[i]=obs->LLI[j]&2;
+ k=(j==0)?1:0;
+ if ((freq1=sat2freq(obs->sat,obs->code[k],&Nav))==0.0) continue;
+ if ((freq2=sat2freq(obs->sat,obs->code[j],&Nav))==0.0) continue;
+ gf=CLIGHT*(obs->L[k]/freq1-obs->L[j]/freq2);
+ if (fabs(gfp[obs->sat-1][j]-gf)>THRESLIP) LLI[i]|=1;
+ gfp[obs->sat-1][j]=gf;
}
- if (!slip) continue;
- if (!GraphR->ToPoint(TimePos(obs->time),yp[obs->sat-1],ps[0])) continue;
- ps[1].x=ps[0].x;
- ps[1].y=ps[0].y+MarkSize*3/2+1;
- ps[0].y=ps[0].y-MarkSize*3/2;
- GraphR->DrawPoly(ps,2,MColor[0][0],0);
}
- }
- if (ShowSlip) {
- for (i=0;isat-1]) continue;
- slip=0;
- if (ShowSlip==2) { // LLI
+ else {
+ if (!strcmp(obstype,"ALL")) {
for (j=0;jcode[j],NULL),code))&&
- (obs->LLI[j]&1)) slip=1;
+ LLI[i]|=obs->LLI[j];
}
}
- else if (!*code||!strcmp(code,"1")||!strcmp(code,"2")) {
- if (obs->L[0]!=0.0&&obs->L[1]!=0.0&&
- satsys(obs->sat,NULL)!=SYS_GLO) {
- gf=CLIGHT*(obs->L[0]/FREQ1-obs->L[1]/FREQ2);
- if (fabs(gfp[obs->sat-1]-gf)>THRESLIP) slip=1;
- gfp[obs->sat-1]=gf;
+ else {
+ if (sscanf(obstype,"L%d",&k)==1) {
+ j=k-1;
+ }
+ else {
+ for (j=0;jcode[j]),obstype)) break;
+ }
+ if (j>=NFREQ+NEXOBS) continue;
}
+ LLI[i]=obs->LLI[j];
}
- if (!slip) continue;
- if (!GraphR->ToPoint(TimePos(obs->time),yp[obs->sat-1],ps[0])) continue;
+ }
+ }
+}
+// draw slip on observation-data-plot ---------------------------------------
+void __fastcall TPlot::DrawObsSlip(double *yp)
+{
+ trace(3,"DrawObsSlip\n");
+
+ if (Obs.n<=0||(!ShowSlip&&!ShowHalfC)) return;
+
+ int *LLI=new int [Obs.n];
+
+ GenObsSlip(LLI);
+
+ for (int i=0;iToPoint(TimePos(obs->time),yp[obs->sat-1],ps[0])) {
ps[1].x=ps[0].x;
ps[1].y=ps[0].y+MarkSize*3/2+1;
ps[0].y=ps[0].y-MarkSize*3/2;
- GraphR->DrawPoly(ps,2,MColor[0][5],0);
+ if (ShowHalfC&&(LLI[i]&2)) GraphR->DrawPoly(ps,2,MColor[0][0],0);
+ if (ShowSlip &&(LLI[i]&1)) GraphR->DrawPoly(ps,2,MColor[0][5],0);
}
}
+ delete [] LLI;
}
// draw ephemeris on observation-data-plot ----------------------------------
void __fastcall TPlot::DrawObsEphem(double *yp)
@@ -1141,15 +1186,14 @@ void __fastcall TPlot::DrawSkyImage(int level)
void __fastcall TPlot::DrawSky(int level)
{
TPoint p1,p2;
- AnsiString s,ss,ObsTypeText=ObsType->Text;
+ AnsiString text=ObsType->Text;
+ const char *obstype=text.c_str();
obsd_t *obs;
gtime_t t[MAXSAT]={{0}};
- double p[MAXSAT][2]={{0}},gfp[MAXSAT]={0},p0[MAXSAT][2]={{0}};
- double x,y,xp,yp,xs,ys,dt,dx,dy,xl[2],yl[2],r,gf;
- int i,j,ind=ObsIndex;
+ double p[MAXSAT][2]={{0}},gfp[MAXSAT][NFREQ+NEXOBS]={{0}},p0[MAXSAT][2]={{0}};
+ double x,y,xp,yp,xs,ys,dt,dx,dy,xl[2],yl[2],r,gf,freq1,freq2;
+ int i,j,ind=ObsIndex,freq;
int hh=(int)(Disp->Font->Size*1.5),prn,color,slip;
- const char *code=ObsType->ItemIndex?ObsTypeText.c_str()+1:"";
- char id[16];
trace(3,"DrawSky: level=%d\n",level);
@@ -1196,8 +1240,10 @@ void __fastcall TPlot::DrawSky(int level)
if (p0[i][0]!=0.0||p0[i][1]!=0.0) {
TPoint pnt;
if (GraphS->ToPoint(p0[i][0],p0[i][1],pnt)) {
- satno2id(i+1,id); s=id;
- DrawLabel(GraphS,pnt,s,1,0);
+ char id[16];
+ satno2id(i+1,id);
+ UTF8String ustr=id;
+ DrawLabel(GraphS,pnt,ustr,1,0);
}
}
}
@@ -1205,26 +1251,13 @@ void __fastcall TPlot::DrawSky(int level)
if (!level) return;
if (ShowSlip&&PlotStyle<=2) {
+ int *LLI=new int [Obs.n];
+
+ GenObsSlip(LLI);
for (i=0;isat-1]||!SatSel[obs->sat-1]||El[i]<=0.0) continue;
-
- slip=0;
- if (ShowSlip==2) { // LLI
- for (j=0;jcode[j],NULL),code))&&
- (obs->LLI[j]&1)) slip=1;
- }
- }
- else if (!*code||!strcmp(code,"1")||!strcmp(code,"2")) {
- if (obs->L[0]!=0.0&&obs->L[1]!=0.0&&
- satsys(obs->sat,NULL)!=SYS_GLO) {
- gf=CLIGHT*(obs->L[0]/FREQ1-obs->L[1]/FREQ2);
- if (fabs(gfp[obs->sat-1]-gf)>THRESLIP) slip=1;
- gfp[obs->sat-1]=gf;
- }
- }
+ if (!(LLI[i]&1)) continue;
+ obs=Obs.data+i;
x=r*sin(Az[i])*(1.0-2.0*El[i]/PI);
y=r*cos(Az[i])*(1.0-2.0*El[i]/PI);
dt=timediff(obs->time,t[obs->sat-1]);
@@ -1234,12 +1267,9 @@ void __fastcall TPlot::DrawSky(int level)
p[obs->sat-1][0]=x;
p[obs->sat-1][1]=y;
if (fabs(dt)>300.0) continue;
- if (El[i]DrawMark(x,y,4,MColor[0][5],MarkSize*3+2,ATAN2(dy,dx)*R2D+90);
- }
+ GraphS->DrawMark(x,y,4,MColor[0][5],MarkSize*3+2,ATAN2(dy,dx)*R2D+90);
}
+ delete [] LLI;
}
if (ElMaskP) {
double *x=new double [361];
@@ -1265,28 +1295,39 @@ void __fastcall TPlot::DrawSky(int level)
x=r*sin(Az[i])*(1.0-2.0*El[i]/PI);
y=r*cos(Az[i])*(1.0-2.0*El[i]/PI);
+ char id[16];
satno2id(obs->sat,id);
+ UTF8String ustr=id;
GraphS->DrawMark(x,y,0,col,Disp->Font->Size*2+5,0);
GraphS->DrawMark(x,y,1,col==clBlack?MColor[0][0]:CColor[2],Disp->Font->Size*2+5,0);
- GraphS->DrawText(x,y,s=id,CColor[0],0,0,0);
+ GraphS->DrawText(x,y,ustr,CColor[0],0,0,0);
}
}
GraphS->GetPos(p1,p2);
p1.x+=10; p1.y+=8; p2.x-=10; p2.y=p1.y;
if (ShowStats&&!SimObs) {
- s.sprintf("MARKER: %s %s",Sta.name,Sta.marker);
- DrawLabel(GraphS,p1,s,1,2); p1.y+=hh;
- s.sprintf("REC: %s %s %s",Sta.rectype,Sta.recver,Sta.recsno);
- DrawLabel(GraphS,p1,s,1,2); p1.y+=hh;
- s.sprintf("ANT: %s %s",Sta.antdes,Sta.antsno);
- DrawLabel(GraphS,p1,s,1,2); p1.y+=hh;
+ UTF8String ustr;
+ ustr.sprintf("MARKER: %s %s",Sta.name,Sta.marker);
+ DrawLabel(GraphS,p1,ustr,1,2); p1.y+=hh;
+ ustr.sprintf("REC: %s %s %s",Sta.rectype,Sta.recver,Sta.recsno);
+ DrawLabel(GraphS,p1,ustr,1,2); p1.y+=hh;
+ ustr.sprintf("ANT: %s %s",Sta.antdes,Sta.antsno);
+ DrawLabel(GraphS,p1,ustr,1,2); p1.y+=hh;
}
// show statistics
if (ShowStats&&BtnShowTrack->Down&&0<=ind&&indDrawText(p2,ustr,clBlack,2,2,0,MS_FONT);
p2.y+=3;
for (i=IndexObs[ind];isat,id);
- s.sprintf("%-3s: ",id);
+ ustr.sprintf("%-3s: ",id);
- if (!*code) {
- for (j=0;jP[j]==0.0?"-":"C";
- for (j=0;jL[j]==0.0?"-":"L";
- s+=" : ";
- for (j=0;jSNR[j]*0.25);
- s+=": ";
- for (j=0;jLLI[j]);
+ if (!strcmp(obstype,"ALL")) {
+ for (j=0;jP[j]==0.0?"-":"C";
+ ustr+=" ";
+ for (j=0;jL[j]==0.0?"-":"L";
+ ustr+=" ";
+ for (j=0;jP[j]==0.0&&obs->L[j]==0.0) ustr+="-- ";
+ else ustr+=ss.sprintf("%02.0f ",obs->SNR[j]*SNR_UNIT);
+ }
+ for (j=0;jL[j]==0.0) ustr+="-";
+ else ustr+=ss.sprintf("%d",obs->LLI[j]);
+ }
+ }
+ else if (sscanf(obstype,"L%d",&freq)==1) {
+ if (!obs->code[freq-1]) continue;
+ ustr+=ss.sprintf("%3s %s %s %s ",code2obs(obs->code[freq-1]),
+ obs->P[freq-1]==0.0?"-":"C",obs->L[freq-1]==0.0?"-":"L",
+ obs->D[freq-1]==0.0?"-":"D");
+ if (obs->P[freq-1]==0.0&&obs->L[freq-1]==0.0) ustr+="---- ";
+ else ustr+=ss.sprintf("%4.1f ",obs->SNR[freq-1]*SNR_UNIT);
+ if (obs->L[freq-1]==0.0) ustr+=" -";
+ else ustr+=ss.sprintf("%2d",obs->LLI[freq-1]);
}
else {
for (j=0;jcode[j],NULL),code)) break;
+ if (!strcmp(code2obs(obs->code[j]),obstype)) break;
}
if (j>=NFREQ+NEXOBS) continue;
-
- s+=ss.sprintf("%s%s%s : %04.1f : %d : %s",obs->P[j]==0.0?"-":"C",
- obs->L[j]==0.0?"-":"L",obs->D[j]==0.0?"-":"D",
- obs->SNR[j]*0.25,obs->LLI[j],
- code2obs(obs->code[j],NULL));
+ ustr+=ss.sprintf("%3s %s %s %s ",code2obs(obs->code[j]),
+ obs->P[j]==0.0?"-":"C",obs->L[j]==0.0?"-":"L",
+ obs->D[j]==0.0?"-":"D");
+ if (obs->P[j]==0.0&&obs->L[j]==0.0) ustr+="---- ";
+ else ustr+=ss.sprintf("%4.1f ",obs->SNR[j]*SNR_UNIT);
+ if (obs->L[j]==0.0) ustr+=" -";
+ else ustr+=ss.sprintf("%2d",obs->LLI[j]);
}
TColor col=ObsColor(obs,Az[i],El[i]);
p2.y+=hh;
- GraphS->DrawText(p2,s,col==clBlack?MColor[0][0]:col,2,2,0);
+ GraphS->DrawText(p2,ustr,col==clBlack?MColor[0][0]:col,2,2,0,MS_FONT);
}
}
if (Nav.n<=0&&Nav.ng<=0&&!SimObs) {
@@ -1329,10 +1388,10 @@ void __fastcall TPlot::DrawSky(int level)
DrawLabel(GraphS,p2,"No Navigation Data",2,1);
}
}
-// draw dop and number-of-satellite plot ------------------------------------
+// draw DOP and number-of-satellite plot ------------------------------------
void __fastcall TPlot::DrawDop(int level)
{
- AnsiString label;
+ UTF8String label;
TPoint p1,p2;
gtime_t time;
double xp,xc,yc,xl[2],yl[2],azel[MAXSAT*2],*dop,*x,*y;
@@ -1345,7 +1404,8 @@ void __fastcall TPlot::DrawDop(int level)
GraphR->YLPos=1;
GraphR->Week=Week;
GraphR->GetLim(xl,yl);
- yl[0]=0.0; yl[1]=MaxDop;
+ yl[0]=0.0;
+ yl[1]=MaxDop;
GraphR->SetLim(xl,yl);
GraphR->SetTick(0.0,0.0);
@@ -1362,13 +1422,14 @@ void __fastcall TPlot::DrawDop(int level)
p1.x=Disp->Font->Size;
p1.y=(p1.y+p2.y)/2;
if (doptype==0) {
- label.sprintf("# OF SATELLITES / DOP (EL>=%.0f%s)",ElMask,CHARDEG);
+ label.sprintf("# OF SATELLITES / DOP %s 10 (EL %s %.0f%s)",CHARMUL,
+ CHARGTE,ElMask,CHARDEG);
}
else if (doptype==1) {
- label.sprintf("# OF SATELLITES (EL>=%.0f%s)",ElMask,CHARDEG);
+ label.sprintf("# OF SATELLITES (EL %s %.0f%s)",CHARGTE,ElMask,CHARDEG);
}
else {
- label.sprintf("DOP (EL>=%.0f%s)",ElMask,CHARDEG);
+ label.sprintf("DOP %s 10 (EL %s %.0f%s)",CHARMUL,CHARGTE,ElMask,CHARDEG);
}
GraphR->DrawText(p1,label,CColor[2],0,0,90);
@@ -1395,7 +1456,7 @@ void __fastcall TPlot::DrawDop(int level)
for (i=0;i<4;i++) {
if (doptype!=0&&doptype!=i+2) continue;
- for (j=0;jDrawMark(xl[0],dop[i],0,MColor[0][i+2],MarkSize*2+2,0);
+ GraphR->DrawMark(xl[0],dop[i]*10.0,0,MColor[0][i+2],MarkSize*2+2,0);
}
if (doptype==0||doptype==1) {
GraphR->DrawMark(xl[0],ns[0],0,MColor[0][1],MarkSize*2+2,0);
@@ -1462,23 +1523,22 @@ void __fastcall TPlot::DrawDop(int level)
delete [] dop;
delete [] ns;
}
-// draw statistics on dop and number-of-satellite plot ----------------------
+// draw statistics on DOP and number-of-satellite plot ----------------------
void __fastcall TPlot::DrawDopStat(double *dop, int *ns, int n)
{
AnsiString s0[MAXOBS+2],s1[MAXOBS+2],s2[MAXOBS+2];
- TPoint p1,p2,p3,p4;
double ave[4]={0};
- int i,j,m=0;
- int ndop[4]={0},nsat[MAXOBS]={0},fonth=(int)(Disp->Font->Size*1.5);
+ int nsat[MAXOBS]={0},ndop[4]={0},m=0;
trace(3,"DrawDopStat: n=%d\n",n);
if (!ShowStats) return;
- for (i=0;iMaxDop) continue;
ave[i]+=dop[i+j*4];
ndop[i]++;
@@ -1495,84 +1555,99 @@ void __fastcall TPlot::DrawDopStat(double *dop, int *ns, int n)
ndop[3],n>0?ndop[3]*100.0/n:0.0);
}
if (DopType->ItemIndex<=1) {
-
- for (i=0,j=0;iFont->Size*1.5);
+
GraphR->GetPos(p1,p2);
p1.x=p2.x-10;
p1.y+=8;
p2=p1; p2.x-=fonth*4;
p3=p2; p3.x-=fonth*8;
- for (i=0;iText;
- AnsiString label[]={"SNR","Multipath","Elevation"};
- AnsiString unit[]={"dBHz","m",CHARDEG};
- TPoint p1,p2;
- TColor *col,colp[MAXSAT];
+ UTF8String label[]={"SNR","Multipath","Elevation"};
+ UTF8String unit[]={"dBHz","m",CHARDEG};
+ AnsiString s;
gtime_t time={0};
- double *x,*y,xl[2],yl[2],off,xc,yc,xp,yp[MAXSAT],ave[3]={0},rms[3]={0};
- char *code=ObsTypeText.c_str()+1;
- int i,j,k,l,n,np,c,sat,ind=ObsIndex,nrms[3]={0};
trace(3,"DrawSnr: level=%d\n",level);
- if (0<=ind&&indDown) {
- time=Obs.data[IndexObs[ind]].time;
+ if (0<=ObsIndex&&ObsIndexDown) {
+ time=Obs.data[IndexObs[ObsIndex]].time;
}
- if (0<=ind&&indDown&&BtnFixHoriz->Down) {
+ if (0<=ObsIndex&&ObsIndexDown&&BtnFixHoriz->Down) {
+ double xc,yc,xp=TimePos(time);
+ double xl[2],yl[2];
+
GraphG[0]->GetLim(xl,yl);
- off=Xcent*(xl[1]-xl[0])/2.0;
- xp=TimePos(time);
- for (j=0;j<3;j++) {
- GraphG[j]->GetCent(xc,yc);
- GraphG[j]->SetCent(xp-off,yc);
+ xp-=Xcent*(xl[1]-xl[0])/2.0;
+ for (int i=0;i<3;i++) {
+ GraphG[i]->GetCent(xc,yc);
+ GraphG[i]->SetCent(xp,yc);
}
}
- j=0;
- for (i=0;i<3;i++) if (btn[i]->Down) j=i;
- for (i=0;i<3;i++) {
+ int j=0;
+ for (int i=0;i<3;i++) if (btn[i]->Down) j=i;
+ for (int i=0;i<3;i++) {
if (!btn[i]->Down) continue;
GraphG[i]->XLPos=TimeLabel?(i==j?6:5):(i==j?1:0);
GraphG[i]->Week=Week;
GraphG[i]->DrawAxis(ShowLabel,ShowLabel);
}
if (NObs>0&&BtnSol1->Down) {
- x=new double[NObs],
- y=new double[NObs];
- col=new TColor[NObs];
+ AnsiString text=ObsType2->Text;
+ const char *obstype=text.c_str();
+ double *x=new double[NObs];
+ double *y=new double[NObs];
+ TColor *col=new TColor[NObs];
- for (i=l=0;i<3;i++) {
+ for (int i=0,l=0;i<3;i++) {
+ TColor colp[MAXSAT];
+ double yp[MAXSAT],ave=0.0,rms=0.0;
+ int np=0,nrms=0;
+
if (!btn[i]->Down) continue;
- for (sat=1,np=0;sat<=MAXSAT;sat++) {
+ for (int sat=1,np=0;sat<=MAXSAT;sat++) {
if (SatMask[sat-1]||!SatSel[sat-1]) continue;
-
- for (j=n=0;jsat!=sat) continue;
+ if (sscanf(obstype,"L%d",&freq)==1) {
+ k=freq-1;
}
- if (k>=NFREQ+NEXOBS) continue;
+ else {
+ for (k=0;kcode[k]),obstype)) break;
+ }
+ if (k>=NFREQ+NEXOBS) continue;
+ }
+ if (obs->SNR[k]*SNR_UNIT<=0.0) continue;
- x[n]=TimePos(Obs.data[j].time);
+ x[n]=TimePos(obs->time);
if (i==0) {
- y[n]=Obs.data[j].SNR[k]*0.25;
+ y[n]=obs->SNR[k]*SNR_UNIT;
col[n]=MColor[0][4];
}
else if (i==1) {
@@ -1582,45 +1657,47 @@ void __fastcall TPlot::DrawSnr(int level)
}
else {
y[n]=El[j]*R2D;
- if (SimObs) col[n]=SysColor(Obs.data[j].sat);
- else col[n]=SnrColor(Obs.data[j].SNR[k]*0.25);
+ if (SimObs) col[n]=SysColor(obs->sat);
+ else col[n]=SnrColor(obs->SNR[k]*SNR_UNIT);
if (El[j]>0.0&&El[j]time)==0.0&&np30.0) break;
DrawPolyS(GraphG[i],x+j,y+j,k-j,CColor[3],0);
}
}
if (level&&PlotStyle<2) {
- for (j=0;jDrawMark(x[j],y[j],0,col[j],MarkSize,0);
}
}
- for (j=0;j0&&ShowStats&&!BtnShowTrack->Down) {
- ave[i]=ave[i]/nrms[i];
- rms[i]=SQRT(rms[i]/nrms[i]);
+ if (level&&i==1&&nrms>0&&ShowStats&&!BtnShowTrack->Down) {
+ TPoint p1,p2;
+ ave=ave/nrms;
+ rms=SQRT(rms/nrms);
GraphG[i]->GetPos(p1,p2);
p1.x=p2.x-8; p1.y+=3;
- DrawLabel(GraphG[i],p1,s.sprintf("AVE=%.4fm RMS=%.4fm",ave[i],
- rms[i]),2,2);
+ DrawLabel(GraphG[i],p1,s.sprintf("AVE=%.4fm RMS=%.4fm",ave,rms),2,2);
}
- if (BtnShowTrack->Down&&0<=ind&&indDown) {
+ if (BtnShowTrack->Down&&0<=ObsIndex&&ObsIndexDown) {
if (!btn[i]->Down) continue;
+ TPoint p1,p2;
+ double xl[2],yl[2];
GraphG[i]->GetLim(xl,yl);
xl[0]=xl[1]=TimePos(time);
GraphG[i]->DrawPoly(xl,yl,2,CColor[2],0);
@@ -1632,91 +1709,101 @@ void __fastcall TPlot::DrawSnr(int level)
GraphG[i]->DrawMark(xl[0],yl[1]-1E-6,1,CColor[2],9,0);
}
}
- for (k=0;kDrawMark(xl[0],yp[k],0,CColor[0],MarkSize*2+4,0);
GraphG[i]->DrawMark(xl[0],yp[k],0,colp[k],MarkSize*2+2,0);
}
if (np<=0||np>1||(i!=1&&yp[0]<=0.0)) continue;
-
GraphG[i]->GetPos(p1,p2);
p1.x=p2.x-8; p1.y+=3;
- DrawLabel(GraphG[i],p1,s.sprintf("%.*f %s",i==1?4:1,yp[0],unit[i]),2,2);
+ DrawLabel(GraphG[i],p1,s.sprintf("%.*f %s",i==1?4:1,yp[0],unit[i].c_str()),2,2);
}
}
delete [] x;
delete [] y;
delete [] col;
}
- for (i=0;i<3;i++) {
+ for (int i=0;i<3;i++) {
if (!btn[i]->Down) continue;
+ TPoint p1,p2;
GraphG[i]->GetPos(p1,p2);
p1.x+=5; p1.y+=3;
- DrawLabel(GraphG[i],p1,s.sprintf("%s (%s)",label[i],unit[i]),1,2);
+ DrawLabel(GraphG[i],p1,s.sprintf("%s (%s)",label[i].c_str(),unit[i].c_str()),1,2);
}
}
-// draw snr, mp-elevation-plot ----------------------------------------------
+// draw SNR/MP to evation plot ----------------------------------------------
void __fastcall TPlot::DrawSnrE(int level)
{
TSpeedButton *btn[]={BtnOn1,BtnOn2,BtnOn3};
- AnsiString s,ObsTypeText=ObsType2->Text;
- AnsiString label[]={"SNR (dBHz)","Multipath (m)"};
- TPoint p1,p2;
- TColor *col[2],colp[2][MAXSAT];
+ UTF8String label[]={"SNR (dBHz)","Multipath (m)"};
+ AnsiString s;
gtime_t time={0};
- double *x[2],*y[2],xl[2]={-0.001,90.0},yl[2][2]={{10.0,65.0},{-10.0,10.0}};
- double xp[2][MAXSAT],yp[2][MAXSAT],ave=0.0,rms=0.0;
- char *code=ObsTypeText.c_str()+1;
- int i,j,k,n[2],np[2]={0},sat,ind=ObsIndex,hh=(int)(Disp->Font->Size*1.5);
+ double ave=0.0,rms=0.0;
int nrms=0;
trace(3,"DrawSnrE: level=%d\n",level);
- yl[1][0]=-MaxMP; yl[1][1]=MaxMP;
-
- j=0;
- for (i=0;i<2;i++) if (btn[i]->Down) j=i;
- for (i=0;i<2;i++) {
+ int j=0;
+ for (int i=0;i<2;i++) if (btn[i]->Down) j=i;
+ for (int i=0;i<2;i++) {
+ TPoint p1,p2;
+ double xl[2]={-0.001,90.0},yl[2][2]={{10.0,65.0},{-MaxMP,MaxMP}};
+
if (!btn[i]->Down) continue;
GraphE[i]->XLPos=i==j?1:0;
GraphE[i]->YLPos=1;
GraphE[i]->SetLim(xl,yl[i]);
GraphE[i]->SetTick(0.0,0.0);
GraphE[i]->DrawAxis(1,1);
-
GraphE[i]->GetPos(p1,p2);
p1.x=Disp->Font->Size;
p1.y=(p1.y+p2.y)/2;
GraphE[i]->DrawText(p1,label[i],CColor[2],0,0,90);
if (i==j) {
+ UTF8String ustr="Elevation (" CHARDEG ")";
p2.x-=8; p2.y-=6;
- GraphE[i]->DrawText(p2,"Elevation (" CHARDEG ")",CColor[2],2,1,0);
+ GraphE[i]->DrawText(p2,ustr,CColor[2],2,1,0);
}
}
- if (0<=ind&&indDown) {
- time=Obs.data[IndexObs[ind]].time;
+ if (0<=ObsIndex&&ObsIndexDown) {
+ time=Obs.data[IndexObs[ObsIndex]].time;
}
if (NObs>0&&BtnSol1->Down) {
- for (i=0;i<2;i++) {
+ TColor *col[2],colp[2][MAXSAT];
+ AnsiString text=ObsType2->Text;
+ const char *obstype=text.c_str();
+ double *x[2],*y[2],xp[2][MAXSAT],yp[2][MAXSAT];
+ int n[2],np[2]={0};
+
+ for (int i=0;i<2;i++) {
x[i]=new double[NObs],
y[i]=new double[NObs];
col[i]=new TColor[NObs];
}
- for (sat=1;sat<=MAXSAT;sat++) {
+ for (int sat=1;sat<=MAXSAT;sat++) {
if (SatMask[sat-1]||!SatSel[sat-1]) continue;
+ n[0]=n[1]=0;
- for (j=n[0]=n[1]=0;j=NFREQ+NEXOBS) continue;
- if (El[j]<=0.0) continue;
+ if (obs->sat!=sat||El[j]<=0.0) continue;
+ if (sscanf(obstype,"L%d",&freq)==1) {
+ k=freq-1;
+ }
+ else {
+ for (k=0;kcode[k]),obstype)) break;
+ }
+ if (k>=NFREQ+NEXOBS) continue;
+ }
+ if (obs->SNR[k]*SNR_UNIT<=0.0) continue;
+
x[0][n[0]]=x[1][n[1]]=El[j]*R2D;
-
- y[0][n[0]]=Obs.data[j].SNR[k]*0.25;
+ y[0][n[0]]=obs->SNR[k]*SNR_UNIT;
y[1][n[1]]=!Mp[k]?0.0:Mp[k][j];
col[0][n[0]]=col[1][n[1]]=
@@ -1747,30 +1834,29 @@ void __fastcall TPlot::DrawSnrE(int level)
}
}
if (!level||!(PlotStyle%2)) {
- for (i=0;i<2;i++) {
+ for (int i=0;i<2;i++) {
if (!btn[i]->Down) continue;
DrawPolyS(GraphE[i],x[i],y[i],n[i],CColor[3],0);
}
}
if (level&&PlotStyle<2) {
- for (i=0;i<2;i++) {
+ for (int i=0;i<2;i++) {
if (!btn[i]->Down) continue;
- for (j=0;jDrawMark(x[i][j],y[i][j],0,col[i][j],MarkSize,0);
}
}
}
}
- for (i=0;i<2;i++) {
+ for (int i=0;i<2;i++) {
delete [] x[i];
delete [] y[i];
delete [] col[i];
}
- if (BtnShowTrack->Down&&0<=ind&&indDown) {
-
- for (i=0;i<2;i++) {
+ if (BtnShowTrack->Down&&0<=ObsIndex&&ObsIndexDown) {
+ for (int i=0;i<2;i++) {
if (!btn[i]->Down) continue;
- for (j=0;jDrawMark(xp[i][j],yp[i][j],0,CColor[0],MarkSize*2+8,0);
GraphE[i]->DrawMark(xp[i][j],yp[i][j],1,CColor[2],MarkSize*2+6,0);
GraphE[i]->DrawMark(xp[i][j],yp[i][j],0,colp[i][j],MarkSize*2+2,0);
@@ -1779,8 +1865,12 @@ void __fastcall TPlot::DrawSnrE(int level)
}
}
if (ShowStats) {
+ int i;
for (i=0;i<2;i++) if (btn[i]->Down) break;
if (i<2) {
+ TPoint p1,p2;
+ int hh=(int)(Disp->Font->Size*1.5);
+
GraphE[i]->GetPos(p1,p2);
p1.x+=8; p1.y+=6;
s.sprintf("MARKER: %s %s",Sta.name,Sta.marker);
@@ -1791,6 +1881,7 @@ void __fastcall TPlot::DrawSnrE(int level)
DrawLabel(GraphE[i],p1,s,1,2); p1.y+=hh;
}
if (btn[1]->Down&&nrms>0&&!BtnShowTrack->Down) {
+ TPoint p1,p2;
ave=ave/nrms;
rms=SQRT(rms/nrms);
GraphE[1]->GetPos(p1,p2);
@@ -1799,15 +1890,12 @@ void __fastcall TPlot::DrawSnrE(int level)
}
}
}
-// draw mp-skyplot ----------------------------------------------------------
+// draw MP-skyplot ----------------------------------------------------------
void __fastcall TPlot::DrawMpS(int level)
{
- AnsiString ObsTypeText=ObsType2->Text,s;
- TColor col;
- obsd_t *obs;
- double x,y,xp,yp,xs,ys,xl[2],yl[2],p[MAXSAT][2]={{0}},r;
- int i,j,sat,ind=ObsIndex;
- char *code=ObsTypeText.c_str()+1,id[32];
+ AnsiString text=ObsType2->Text;
+ const char *obstype=text.c_str();
+ double r,xl[2],yl[2],xs,ys;
trace(3,"DrawSnrS: level=%d\n",level);
@@ -1824,23 +1912,31 @@ void __fastcall TPlot::DrawMpS(int level)
GraphS->GetScale(xs,ys);
- for (sat=1;sat<=MAXSAT;sat++) {
+ for (int sat=1;sat<=MAXSAT;sat++) {
+ double p[MAXSAT][2]={{0}};
+
if (SatMask[sat-1]||!SatSel[sat-1]) continue;
- for (i=0;isat!=sat||El[i]<=0.0) continue;
- for (j=0;j=NFREQ+NEXOBS) continue;
- if (El[i]<=0.0) continue;
-
- x=r*sin(Az[i])*(1.0-2.0*El[i]/PI);
- y=r*cos(Az[i])*(1.0-2.0*El[i]/PI);
- xp=p[sat-1][0];
- yp=p[sat-1][1];
- col=MpColor(!Mp[j]?0.0:Mp[j][i]);
+ else {
+ for (j=0;jcode[j]),obstype)) break;
+ }
+ if (j>=NFREQ+NEXOBS) continue;
+ }
+ double x=r*sin(Az[i])*(1.0-2.0*El[i]/PI);
+ double y=r*cos(Az[i])*(1.0-2.0*El[i]/PI);
+ double xp=p[sat-1][0];
+ double yp=p[sat-1][1];
+ TColor col=MpColor(!Mp[j]?0.0:Mp[j][i]);
if ((x-xp)*(x-xp)+(y-yp)*(y-yp)>=xs*xs) {
int siz=PlotStyle<2?MarkSize:1;
@@ -1851,51 +1947,55 @@ void __fastcall TPlot::DrawMpS(int level)
}
}
}
- if (BtnShowTrack->Down&&0<=ind&&indsat-1]||!SatSel[obs->sat-1]||El[i]<=0.0) continue;
- for (j=0;jcode[j],NULL),code)) break;
- }
- if (j>=NFREQ+NEXOBS) continue;
- col=MpColor(!Mp[j]?0.0:Mp[j][i]);
+ if (BtnShowTrack->Down&&0<=ObsIndex&&ObsIndexsat-1]||!SatSel[obs->sat-1]||El[i]<=0.0) continue;
+ if (sscanf(obstype,"L%d",&freq)==1) {
+ j=freq-1;
+ }
+ else {
+ for (j=0;jcode[j]),obstype)) break;
+ }
+ if (j>=NFREQ+NEXOBS) continue;
+ }
+ TColor col=MpColor(!Mp[j]?0.0:Mp[j][i]);
+ double x=r*sin(Az[i])*(1.0-2.0*El[i]/PI);
+ double y=r*cos(Az[i])*(1.0-2.0*El[i]/PI);
+ UTF8String ustr;
+ char id[32];
satno2id(obs->sat,id);
+ ustr=id;
GraphS->DrawMark(x,y,0,col,Disp->Font->Size*2+5,0);
GraphS->DrawMark(x,y,1,CColor[2],Disp->Font->Size*2+5,0);
- GraphS->DrawText(x,y,s=id,CColor[0],0,0,0);
+ GraphS->DrawText(x,y,ustr,CColor[0],0,0,0);
}
}
}
-// draw residuals and snr/elevation plot ------------------------------------
+// draw residuals and SNR/elevation plot ------------------------------------
void __fastcall TPlot::DrawRes(int level)
{
- AnsiString label[]={
- "Pseudorange Residuals (m)",
- "Carrier-Phase Residuals (m)",
- "Elevation Angle (deg) / Signal Strength (dBHz)"
+ UTF8String label[]={
+ "Pseudorange Residuals (m)", "Carrier-Phase Residuals (m)",
+ "Elevation Angle (" CHARDEG ") / SNR (dBHz)"
};
- AnsiString str;
TSpeedButton *btn[]={BtnOn1,BtnOn2,BtnOn3};
- TPoint p1,p2;
- double xc,yc,xl[2],yl[2],res[2],sum[2]={0},sum2[2]={0};
- int i,j,sel=!BtnSol1->Down&&BtnSol2->Down?1:0,ind=SolIndex[sel];
- int frq=FrqType->ItemIndex+1;
+ int sel=!BtnSol1->Down&&BtnSol2->Down?1:0,ind=SolIndex[sel];
+ int frq=FrqType->ItemIndex+1,n=SolStat[sel].n;
trace(3,"DrawRes: level=%d\n",level);
if (0<=ind&&indDown&&BtnFixHoriz->Down) {
-
gtime_t t=SolData[sel].data[ind].time;
- for (i=0;i<3;i++) {
+ for (int i=0;i<3;i++) {
+ double off,xc,yc,xl[2],yl[2];
+
if (BtnFixHoriz->Down) {
- double off;
GraphG[i]->GetLim(xl,yl);
off=Xcent*(xl[1]-xl[0])/2.0;
GraphG[i]->GetCent(xc,yc);
@@ -1908,47 +2008,49 @@ void __fastcall TPlot::DrawRes(int level)
}
}
}
- j=-1;
- for (i=0;i<3;i++) if (btn[i]->Down) j=i;
- for (i=0;i<3;i++) {
+ int j=-1;
+ for (int i=0;i<3;i++) if (btn[i]->Down) j=i;
+ for (int i=0;i<3;i++) {
if (!btn[i]->Down) continue;
GraphG[i]->XLPos=TimeLabel?(i==j?6:5):(i==j?1:0);
GraphG[i]->Week=Week;
GraphG[i]->DrawAxis(ShowLabel,ShowLabel);
}
- double *x,*y[4];
- int n=SolStat[sel].n;
- int m,ns[2]={0},*q,*s;
-
if (n>0&&((sel==0&&BtnSol1->Down)||(sel==1&&BtnSol2->Down))) {
+ TColor *col[4];
+ double *x[4],*y[4],res[2],sum[2]={0},sum2[2]={0};
+ int ns[2]={0};
- q =new int[n];
- s =new int[n];
- x =new double[n],
- y[0]=new double[n];
- y[1]=new double[n];
- y[2]=new double[n];
- y[3]=new double[n];
-
+ for (int i=0;i<4;i++) {
+ x[i]=new double[n],
+ y[i]=new double[n];
+ col[i]=new TColor[n];
+ }
for (int sat=1;sat<=MAXSAT;sat++) {
- char id[32];
- satno2id(sat,id);
if (SatMask[sat-1]||!SatSel[sat-1]) continue;
- m=0;
+
+ int m[4]={0};
+
for (int i=0;isat!=sat||p->frq!=frq) continue;
- if (p->resp==0.0&&p->resc==0.0) continue;
- x[m]=TimePos(p->time);
- y[0][m]=p->resp;
- y[1][m]=p->resc;
- y[2][m]=p->el*R2D;
- y[3][m]=p->snr*0.25;
- if (!(p->flag>>5)) q[m]=0; // invalid
- else if ((p->flag&7)<=1) q[m]=2; // float
- else if ((p->flag&7)<=3) q[m]=1; // fixed
- else q[m]=6; // ppp
- s[m++]=(p->flag>>3)&0x3; // slip
+
+ x[0][m[0]]=x[1][m[1]]=x[2][m[2]]=x[3][m[3]]=TimePos(p->time);
+ y[0][m[0]]=p->resp;
+ y[1][m[1]]=p->resc;
+ y[2][m[2]]=p->el*R2D;
+ y[3][m[3]]=p->snr*SNR_UNIT;
+ if (!(p->flag>>5)) q=0; // invalid
+ else if ((p->flag&7)<=1) q=2; // float
+ else if ((p->flag&7)<=3) q=1; // fixed
+ else q=6; // ppp
+
+ col[0][m[0]]=MColor[0][q];
+ col[1][m[1]]=((p->flag>>3)&1)?clRed:MColor[0][q];
+ col[2][m[2]]=MColor[0][1];
+ col[3][m[3]]=MColor[0][4];
if (p->resp!=0.0) {
sum [0]+=p->resp;
@@ -1960,42 +2062,39 @@ void __fastcall TPlot::DrawRes(int level)
sum2[1]+=p->resc*p->resc;
ns[1]++;
}
+ m[0]++; m[1]++; m[2]++; m[3]++;
}
for (int i=0;i<3;i++) {
if (!btn[i]->Down) continue;
if (!level||!(PlotStyle%2)) {
- DrawPolyS(GraphG[i],x,y[i],m,CColor[3],0);
- if (i==2) DrawPolyS(GraphG[i],x,y[3],m,CColor[3],0);
+ DrawPolyS(GraphG[i],x[i],y[i],m[i],CColor[3],0);
+ if (i==2) DrawPolyS(GraphG[i],x[3],y[3],m[3],CColor[3],0);
}
if (level&&PlotStyle<2) {
- TColor color;
- for (int j=0;jDrawMark(x[j],y[i][j],0,color,MarkSize,0);
- if (i==2) GraphG[i]->DrawMark(x[j],y[3][j],0,MColor[0][4],MarkSize,0);
+ for (int j=0;jDrawMark(x[i][j],y[i][j],0,col[i][j],MarkSize,0);
}
- }
- if (level&&i==1) { /* slip */
- for (int j=0;jDrawMark(x[j],y[i][j],4,color,MarkSize*3,90);
+ if (i==2) {
+ for (int j=0;jDrawMark(x[3][j],y[3][j],0,col[3][j],MarkSize,0);
+ }
}
}
}
}
- delete [] x;
- delete [] q;
- delete [] s;
- delete [] y[0];
- delete [] y[1];
- delete [] y[2];
- delete [] y[3];
-
+ for (int i=0;i<4;i++) {
+ delete [] x[i];
+ delete [] y[i];
+ delete [] col[i];
+ }
if (ShowStats) {
for (int i=0;i<2;i++) {
if (!btn[i]->Down) continue;
+
+ AnsiString str;
+ TPoint p1,p2;
double ave,std,rms;
+
ave=ns[i]<=0?0.0:sum[i]/ns[i];
std=ns[i]<=1?0.0:SQRT((sum2[i]-2.0*sum[i]*ave+ns[i]*ave*ave)/(ns[i]-1));
rms=ns[i]<=0?0.0:SQRT(sum2[i]/ns[i]);
@@ -2009,7 +2108,10 @@ void __fastcall TPlot::DrawRes(int level)
if (BtnShowTrack->Down&&0<=ind&&indDown||BtnSol2->Down)) {
for (int i=0,j=0;i<3;i++) {
if (!btn[i]->Down) continue;
+
gtime_t t=SolData[sel].data[ind].time;
+ double xl[2],yl[2];
+
GraphG[i]->GetLim(xl,yl);
xl[0]=xl[1]=TimePos(t);
GraphG[i]->DrawPoly(xl,yl,2,ind==0?CColor[1]:CColor[2],0);
@@ -2020,13 +2122,127 @@ void __fastcall TPlot::DrawRes(int level)
}
}
}
- for (i=0;i<3;i++) {
+ for (int i=0;i<3;i++) {
if (!btn[i]->Down) continue;
+ TPoint p1,p2;
+
GraphG[i]->GetPos(p1,p2);
p1.x+=5; p1.y+=3;
DrawLabel(GraphG[i],p1,label[i],1,2);
}
}
+// draw residuals - elevation plot ------------------------------------------
+void __fastcall TPlot::DrawResE(int level)
+{
+ TSpeedButton *btn[]={BtnOn1,BtnOn2,BtnOn3};
+ UTF8String label[]={"Pseudorange Residuals (m)","Carrier-Phase Residuals (m)"};
+ int j,sel=!BtnSol1->Down&&BtnSol2->Down?1:0,ind=SolIndex[sel];
+ int frq=FrqType->ItemIndex+1,n=SolStat[sel].n;
+
+ trace(3,"DrawResE: level=%d\n",level);
+
+ j=0;
+ for (int i=0;i<2;i++) if (btn[i]->Down) j=i;
+ for (int i=0;i<2;i++) {
+ if (!btn[i]->Down) continue;
+
+ TPoint p1,p2;
+ double xl[2]={-0.001,90.0};
+ double yl[2][2]={{-MaxMP,MaxMP},{-MaxMP/100.0,MaxMP/100.0}};
+
+ GraphE[i]->XLPos=i==j?1:0;
+ GraphE[i]->YLPos=1;
+ GraphE[i]->SetLim(xl,yl[i]);
+ GraphE[i]->SetTick(0.0,0.0);
+ GraphE[i]->DrawAxis(1,1);
+ GraphE[i]->GetPos(p1,p2);
+ p1.x=Disp->Font->Size;
+ p1.y=(p1.y+p2.y)/2;
+ GraphE[i]->DrawText(p1,label[i],CColor[2],0,0,90);
+ if (i==j) {
+ UTF8String ustr="Elevation (" CHARDEG ")";
+ p2.x-=8; p2.y-=6;
+ GraphE[i]->DrawText(p2,ustr,CColor[2],2,1,0);
+ }
+ }
+ if (n>0&&((sel==0&&BtnSol1->Down)||(sel==1&&BtnSol2->Down))) {
+ TColor *col[2];
+ double *x[2],*y[2],sum[2]={0},sum2[2]={0};
+ int ns[2]={0};
+
+ for (int i=0;i<2;i++) {
+ x [i]=new double[n],
+ y [i]=new double[n];
+ col[i]=new TColor[n];
+ }
+ for (int sat=1;sat<=MAXSAT;sat++) {
+ if (SatMask[sat-1]||!SatSel[sat-1]) continue;
+ int q,m[2]={0};
+
+ for (int i=0;isat!=sat||p->frq!=frq) continue;
+
+ x[0][m[0]]=x[1][m[1]]=p->el*R2D;
+ y[0][m[0]]=p->resp;
+ y[1][m[1]]=p->resc;
+ if (!(p->flag>>5)) q=0; // invalid
+ else if ((p->flag&7)<=1) q=2; // float
+ else if ((p->flag&7)<=3) q=1; // fixed
+ else q=6; // ppp
+
+ col[0][m[0]]=MColor[0][q];
+ col[1][m[1]]=((p->flag>>3)&1)?clRed:MColor[0][q];
+
+ if (p->resp!=0.0) {
+ sum [0]+=p->resp;
+ sum2[0]+=p->resp*p->resp;
+ ns[0]++;
+ }
+ if (p->resc!=0.0) {
+ sum [1]+=p->resc;
+ sum2[1]+=p->resc*p->resc;
+ ns[1]++;
+ }
+ m[0]++; m[1]++;
+ }
+ for (int i=0;i<2;i++) {
+ if (!btn[i]->Down) continue;
+ if (!level||!(PlotStyle%2)) {
+ DrawPolyS(GraphE[i],x[i],y[i],m[i],CColor[3],0);
+ }
+ if (level&&PlotStyle<2) {
+ for (int j=0;jDrawMark(x[i][j],y[i][j],0,col[i][j],MarkSize,0);
+ }
+ }
+ }
+ }
+ for (int i=0;i<2;i++) {
+ delete [] x[i];
+ delete [] y[i];
+ delete [] col[i];
+ }
+ if (ShowStats) {
+ for (int i=0;i<2;i++) {
+ if (!btn[i]->Down) continue;
+
+ AnsiString str;
+ TPoint p1,p2;
+ double ave,std,rms;
+
+ ave=ns[i]<=0?0.0:sum[i]/ns[i];
+ std=ns[i]<=1?0.0:SQRT((sum2[i]-2.0*sum[i]*ave+ns[i]*ave*ave)/(ns[i]-1));
+ rms=ns[i]<=0?0.0:SQRT(sum2[i]/ns[i]);
+ GraphE[i]->GetPos(p1,p2);
+ p1.x=p2.x-5;
+ p1.y+=3;
+ str.sprintf("AVE=%.3fm STD=%.3fm RMS=%.3fm",ave,std,rms);
+ DrawLabel(GraphG[i],p1,str,2,2);
+ }
+ }
+ }
+}
// draw polyline without time-gaps ------------------------------------------
void __fastcall TPlot::DrawPolyS(TGraph *graph, double *x, double *y, int n,
TColor color, int style)
@@ -2039,7 +2255,7 @@ void __fastcall TPlot::DrawPolyS(TGraph *graph, double *x, double *y, int n,
}
}
// draw label with hemming --------------------------------------------------
-void __fastcall TPlot::DrawLabel(TGraph *g, TPoint p, AnsiString label, int ha,
+void __fastcall TPlot::DrawLabel(TGraph *g, TPoint p, UTF8String label, int ha,
int va)
{
g->DrawText(p,label,CColor[2],CColor[0],ha,va,0);
@@ -2050,102 +2266,35 @@ void __fastcall TPlot::DrawMark(TGraph *g, TPoint p, int mark, TColor color,
{
g->DrawMark(p,mark,color,CColor[0],size,rot);
}
-// refresh google earth/map view --------------------------------------------
-void __fastcall TPlot::Refresh_GEView(void)
+// refresh map view ---------------------------------------------------------
+void __fastcall TPlot::Refresh_MapView(void)
{
- AnsiString func;
- TIMEPOS *vel;
- TPoint p;
sol_t *sol;
- double pos[3]={0},heading,ddeg;
- int i,opts[12],sel=!BtnSol1->Down&&BtnSol2->Down?1:0;
-
- // get ge options
- GoogleEarthView->GetOpts(opts);
+ double pos[3]={0};
if (BtnShowTrack->Down) {
- // update mark
- if (BtnSol2->Down&&SolData[1].n>0) {
- sol=getsol(SolData+1,SolIndex[1]);
+ if (BtnSol2->Down&&SolData[1].n>0&&
+ (sol=getsol(SolData+1,SolIndex[1]))) {
ecef2pos(sol->rr,pos);
- pos[2]-=geoidh(pos);
- GoogleEarthView->SetMark(2,pos);
- GoogleEarthView->ShowMark(2);
- GoogleMapView->SetMark(2,pos);
- GoogleMapView->ShowMark(2);
+ MapView->SetMark(2,pos[0]*R2D,pos[1]*R2D);
+ MapView->ShowMark(2);
}
else {
- GoogleEarthView->HideMark(2);
- GoogleMapView->HideMark(2);
+ MapView->HideMark(2);
}
- if (BtnSol1->Down&&SolData[0].n>0) {
- sol=getsol(SolData,SolIndex[0]);
+ if (BtnSol1->Down&&SolData[0].n>0&&
+ (sol=getsol(SolData,SolIndex[0]))) {
ecef2pos(sol->rr,pos);
- pos[2]-=geoidh(pos);
- GoogleEarthView->SetMark(1,pos);
- GoogleEarthView->ShowMark(1);
- GoogleMapView->SetMark(1,pos);
- GoogleMapView->ShowMark(1);
+ MapView->SetMark(1,pos[0]*R2D,pos[1]*R2D);
+ MapView->ShowMark(1);
}
else {
- GoogleEarthView->HideMark(1);
- GoogleMapView->HideMark(1);
+ MapView->HideMark(1);
}
- // update heading
- if (opts[10]&&norm(pos,3)>0.0) {
- vel=SolToPos(SolData+sel,SolIndex[sel],0,1);
- heading=ATAN2(vel->x[0],vel->y[0])*R2D;
-
- // filter
- if (vel->x[0]*vel->x[0]+vel->y[0]*vel->y[0]>0.5) {
- ddeg=heading-GEHeading;
- if (ddeg<-180.0) ddeg+=360.0;
- else if (ddeg> 180.0) ddeg-=360.0;
- GEHeading+=0.5*ddeg;
- if (GEHeading<-180.0) GEHeading+=360.0;
- else if (GEHeading> 180.0) GEHeading-=360.0;
- }
- GoogleEarthView->SetHeading(GEHeading);
- delete vel;
- }
- }
- else {
- GoogleEarthView->HideMark(1);
- GoogleEarthView->HideMark(2);
- GoogleMapView->HideMark(1);
- GoogleMapView->HideMark(2);
- }
- // update track
- if (BtnSol1->Down&&!BtnConnect->Down) {
- if (!GEDataState[0]) {
- GoogleEarthView->HideTrack(1);
- GEDataState[0]=GoogleEarthView->UpdateTrack(1,SolData);
- }
- GoogleEarthView->ShowTrack(1);
- }
- else {
- GoogleEarthView->HideTrack(1);
- }
- if (BtnSol2->Down&&!BtnConnect->Down) {
- if (!GEDataState[1]) {
- GoogleEarthView->HideTrack(2);
- GEDataState[1]=GoogleEarthView->UpdateTrack(2,SolData+1);
- }
- GoogleEarthView->ShowTrack(2);
- }
- else {
- GoogleEarthView->HideTrack(2);
- }
- // update points
- if (BtnShowMap->Down) {
- GoogleEarthView->ShowPoint();
}
else {
- GoogleEarthView->HidePoint();
+ MapView->HideMark(1);
+ MapView->HideMark(2);
}
}
-// refresh google map view -----------------------------------------------------
-void __fastcall TPlot::Refresh_GMView(void)
-{
-}
diff --git a/app/rtkplot/plotinfo.cpp b/app/winapp/rtkplot/plotinfo.cpp
similarity index 85%
rename from app/rtkplot/plotinfo.cpp
rename to app/winapp/rtkplot/plotinfo.cpp
index 2b0e67eff..f06f455c2 100644
--- a/app/rtkplot/plotinfo.cpp
+++ b/app/winapp/rtkplot/plotinfo.cpp
@@ -1,6 +1,7 @@
//---------------------------------------------------------------------------
// plotinfo.c: rtkplot info functions
//---------------------------------------------------------------------------
+#include
#include "rtklib.h"
#include "plotmain.h"
@@ -24,11 +25,11 @@ void __fastcall TPlot::UpdateInfo(void)
// update time-information for observation-data plot ------------------------
void __fastcall TPlot::UpdateTimeObs(void)
{
- AnsiString msgs1[]={" OBS=L1/2 "," L1 "," L2 "," L1/2/5 "," L1/5 ",""," L5 "};
- AnsiString msgs2[]={" SNR=...45.","..40.","..35.","..30.","..25 ",""," <25 "};
- AnsiString msgs3[]={" SYS=GPS ","GLO ","GAL ","QZS ","BDS ","SBS ",""};
- AnsiString msgs4[]={" MP=..0.6","..0.3","..0.0..","-0.3..","-0.6..","",""};
- AnsiString msg,msgs[8],s;
+ UTF8String msgs1[]={" #FRQ=5 "," 4 "," 3 "," 2 "," 1 ","",""};
+ UTF8String msgs2[]={" SNR=...45.","..40.","..35.","..30.","..25 ",""," <25 "};
+ UTF8String msgs3[]={" SYS=GPS ","GLO ","GAL ","QZS ","BDS ","IRN ","SBS "};
+ UTF8String msgs4[]={" MP=..0.6","..0.3","..0.0..","-0.3..","-0.6..","",""};
+ UTF8String msg,msgs[8],s;
double azel[MAXOBS*2],dop[4]={0};
int i,ns=0,no=0,ind=ObsIndex;
char tstr[64];
@@ -80,7 +81,7 @@ void __fastcall TPlot::UpdateTimeSol(void)
{
const char *unit[]={"m","m/s","m/s2"},*u;
const char *sol[]={"","FIX","FLOAT","SBAS","DGPS","Single","PPP"};
- AnsiString msg,msgs[8],s;
+ UTF8String msg,msgs[8],s;
sol_t *data;
double xyz[3],pos[3],r,az,el;
int sel=BtnSol1->Down||!BtnSol2->Down?0:1,ind=SolIndex[sel];
@@ -98,10 +99,11 @@ void __fastcall TPlot::UpdateTimeSol(void)
msg+=" : ";
if (PLOT_SOLP<=PlotType&&PlotType<=PLOT_SOLA) {
- PosToXyz(data->time,data->rr,data->type,xyz);
+ TIMEPOS *p=SolToPos(SolData+sel,ind,0,PlotType-PLOT_SOLP);
u=unit[PlotType-PLOT_SOLP];
msg+=s.sprintf("E=%7.4f%s N=%7.4f%s U=%7.4f%s Q=",
- xyz[0],u,xyz[1],u,xyz[2],u);
+ p->x[0],u,p->y[0],u,p->z[0],u);
+ delete p;
}
else if (PlotType==PLOT_NSAT) {
msg+=s.sprintf("NS=%d AGE=%.1f RATIO=%.1f Q=",data->ns,data->age,
@@ -122,21 +124,21 @@ void __fastcall TPlot::UpdateTimeSol(void)
msgs[data->stat-1]=s.sprintf("%d:%s",data->stat,sol[data->stat]);
}
}
- ShowMsg(A2U(msg));
+ ShowMsg(msg);
ShowLegend(msgs);
}
// update statistics-information for observation-data plot ------------------
void __fastcall TPlot::UpdateInfoObs(void)
{
- AnsiString msgs0[]={" NSAT"," GDOP"," PDOP"," HDOP"," VDOP","",""};
- AnsiString msgs1[]={" OBS=L1/2 "," L1 "," L2 "," L1/2/5 "," L1/5 ",""," L5 "};
- AnsiString msgs2[]={" SNR=...45.","..40.","..35.","..30.","..25 ",""," <25 "};
- AnsiString msgs3[]={" SYS=GPS ","GLO ","GAL ","QZS ","BDS ","SBS ",""};
- AnsiString msgs4[]={" MP=..0.6","..0.3","..0.0..","-0.3..","-0.6..","",""};
- AnsiString msg,msgs[8];
+ UTF8String msgs0[]={" NSAT"," GDOP"," PDOP"," HDOP"," VDOP","",""};
+ UTF8String msgs1[]={" #FRQ= 5 "," 4 "," 3 "," 2 "," 1 ","",""};
+ UTF8String msgs2[]={" SNR=...45.","..40.","..35.","..30.","..25 ",""," <25 "};
+ UTF8String msgs3[]={" SYS=GPS ","GLO ","GAL ","QZS ","BDS ","IRN ","SBS "};
+ UTF8String msgs4[]={" MP=..0.6","..0.3","..0.0..","-0.3..","-0.6..","",""};
+ UTF8String msg,msgs[8];
gtime_t ts={0},te={0},t,tp={0};
int i,n=0,ne=0;
- char s1[64],s2[64];
+ char s1[64],s2[64],*p;
trace(3,"UpdateInfoObs:\n");
@@ -151,6 +153,7 @@ void __fastcall TPlot::UpdateInfoObs(void)
if (n>0) {
TimeStr(ts,0,0,s1);
TimeStr(te,0,1,s2);
+ if (TimeLabel&&(p=strrchr(s1,' '))) *p='\0';
msg.sprintf("[1]%s-%s : EP=%d N=%d",s1,s2+(TimeLabel?5:0),ne,n);
for (i=0;i<7;i++) {
@@ -174,13 +177,13 @@ void __fastcall TPlot::UpdateInfoObs(void)
// update statistics-information for solution plot --------------------------
void __fastcall TPlot::UpdateInfoSol(void)
{
- AnsiString msg,msgs[8],s;
+ UTF8String msg,msgs[8],s;
TIMEPOS *pos=NULL,*pos1,*pos2;
sol_t *data;
gtime_t ts={0},te={0};
double r[3],b,bl[2]={1E9,0.0};
int i,j,n=0,nq[8]={0},sel=BtnSol1->Down||!BtnSol2->Down?0:1;
- char s1[64],s2[64];
+ char s1[64],s2[64],*p;
trace(3,"UpdateInfoSol:\n");
@@ -202,7 +205,7 @@ void __fastcall TPlot::UpdateInfoSol(void)
}
delete pos;
}
- for (i=0;data=getsol(SolData+sel,i);i++) {
+ for (i=0;(data=getsol(SolData+sel,i));i++) {
if (data->type) {
b=norm(data->rr,3);
}
@@ -219,6 +222,7 @@ void __fastcall TPlot::UpdateInfoSol(void)
TimeStr(ts,0,0,s1);
TimeStr(te,0,1,s2);
+ if (TimeLabel&&(p=strrchr(s1,' '))) *p='\0';
msg+=s.sprintf("%s-%s : N=%d",s1,s2+(TimeLabel?5:0),n);
if (bl[0]+100.00||SolStat[1].n>0) {
PlotTypeS->AddItem(PTypes[PLOT_RES ],NULL);
+ PlotTypeS->AddItem(PTypes[PLOT_RESE],NULL);
}
if (NObs>0) {
PlotTypeS->AddItem(PTypes[PLOT_SNR ],NULL);
@@ -301,6 +306,7 @@ void __fastcall TPlot::UpdateSatList(void)
case SYS_GAL: strcpy(s,"E"); break;
case SYS_QZS: strcpy(s,"J"); break;
case SYS_CMP: strcpy(s,"C"); break;
+ case SYS_IRN: strcpy(s,"I"); break;
case SYS_SBS: strcpy(s,"S"); break;
}
SatList->Items->Add(s);
@@ -314,12 +320,17 @@ void __fastcall TPlot::UpdateSatList(void)
UpdateSatSel();
}
+// string compare --------------------------------------------------------------
+static int _strcmp(const void *str1, const void *str2)
+{
+ return strcmp(*(const char **)str1, *(const char **)str2);
+}
// update observation type pull-down menu --------------------------------------
void __fastcall TPlot::UpdateObsType(void)
{
- AnsiString s;
- char *codes[MAXCODE+1],freqs[]="125678";
- int i,j,n=0,cmask[MAXCODE+1]={0},fmask[6]={0};
+ UTF8String s;
+ char *obs,*codes[MAXCODE+1];
+ int i,j,n=0,cmask[MAXCODE+1]={0},fmask[10]={0};
trace(3,"UpdateObsType\n");
@@ -328,21 +339,22 @@ void __fastcall TPlot::UpdateObsType(void)
}
for (i=1;i<=MAXCODE;i++) {
if (!cmask[i]) continue;
- codes[n++]=code2obs(i,&j);
- fmask[j-1]=1;
+ if (!*(obs=code2obs((uint8_t)i))) continue;
+ codes[n++]=obs;
}
+ qsort(codes,n,sizeof(char *),_strcmp);
+
ObsType ->Items->Clear();
ObsType2->Items->Clear();
ObsType ->Items->Add("ALL");
- for (i=0;i<6;i++) {
- if (!fmask[i]) continue;
- ObsType ->Items->Add(s.sprintf("L%c",freqs[i]));
- ObsType2->Items->Add(s.sprintf("L%c",freqs[i]));
+ for (i=0;iItems->Add(s.sprintf("L%d",i+1));
+ ObsType2->Items->Add(s.sprintf("L%d",i+1));
}
for (i=0;iItems->Add(s.sprintf("L%s",codes[i]));
- ObsType2->Items->Add(s.sprintf("L%s",codes[i]));
+ ObsType ->Items->Add(s.sprintf("%s",codes[i]));
+ ObsType2->Items->Add(s.sprintf("%s",codes[i]));
}
ObsType ->ItemIndex=0;
ObsType2->ItemIndex=0;
@@ -355,7 +367,7 @@ void __fastcall TPlot::UpdatePoint(int x, int y)
double enu[3]={0},rr[3],pos[3],xx,yy,r,xl[2],yl[2],q[2],az,el,snr;
int i;
char tstr[64];
- AnsiString msg;
+ UTF8String msg;
trace(4,"UpdatePoint: x=%d y=%d\n",x,y);
@@ -392,7 +404,7 @@ void __fastcall TPlot::UpdatePoint(int x, int y)
msg.sprintf("AZ=%5.1f" CHARDEG " EL=%4.1f" CHARDEG,az,el);
}
}
- else if (PlotType==PLOT_SNRE) { // snr-el-plot
+ else if (PlotType==PLOT_SNRE||PlotType==PLOT_RESE) { // snr-el-plot
GraphE[0]->ToPos(p,q[0],q[1]);
msg.sprintf("EL=%4.1f " CHARDEG,q[0]);
}
@@ -405,6 +417,6 @@ void __fastcall TPlot::UpdatePoint(int x, int y)
msg=tstr;
}
Panel22->Visible=true;
- Message2->Caption=A2U(msg);
+ Message2->Caption=msg;
}
//---------------------------------------------------------------------------
diff --git a/app/rtkplot/plotmain.cpp b/app/winapp/rtkplot/plotmain.cpp
similarity index 89%
rename from app/rtkplot/plotmain.cpp
rename to app/winapp/rtkplot/plotmain.cpp
index bf0d1d4f7..2981c333e 100644
--- a/app/rtkplot/plotmain.cpp
+++ b/app/winapp/rtkplot/plotmain.cpp
@@ -1,7 +1,7 @@
//---------------------------------------------------------------------------
// rtkplot : visualization of solution and obs data ap
//
-// Copyright (C) 2007-2012 by T.TAKASU, All rights reserved.
+// Copyright (C) 2007-2020 by T.TAKASU, All rights reserved.
//
// options : rtkplot [-t title][-i file][-r][-p path][-x level][file ...]
//
@@ -27,6 +27,13 @@
// 2010/06/19 1.4 rtklib 2.4.1 p1
// 2012/11/21 1.5 rtklib 2.4.2
// 2016/06/11 1.6 rtklib 2.4.3
+// 2020/11/30 1.7 support NavIC/IRNSS
+// delete functions for Google Earth View
+// support Map API by Leaflet for Map View
+// move Google Map API Key option to Map View
+// modify order of ObsType selections
+// improve slip detection performance by LG jump
+// fix bug on MP computation for L3,L4,... freq.
//---------------------------------------------------------------------------
#include
#include
@@ -40,23 +47,23 @@
#include "plotopt.h"
#include "refdlg.h"
#include "tspandlg.h"
-#include "satdlg.h"
#include "aboutdlg.h"
#include "fileseldlg.h"
#include "conndlg.h"
#include "confdlg.h"
#include "console.h"
#include "pntdlg.h"
-#include "mapdlg.h"
+#include "mapoptdlg.h"
#include "skydlg.h"
-#include "geview.h"
-#include "gmview.h"
+#include "freqdlg.h"
+#include "mapview.h"
#include "viewer.h"
#include "vmapdlg.h"
#pragma link "SHDocVw_OCX"
#define YLIM_AGE 10.0 // ylimit of age of differential
#define YLIM_RATIO 20.0 // ylimit of raito factor
+#define MAXSHAPEFILE 16 // max number of shape files
// instance of TPLOT --------------------------------------------------------
TPlot *Plot;
@@ -73,7 +80,6 @@ __fastcall TPlot::TPlot(TComponent* Owner) : TForm(Owner)
AnsiString s;
double ep[]={2000,1,1,0,0,0},xl[2],yl[2];
double xs[]={-DEFTSPAN/2,DEFTSPAN/2};
- int i,nfreq=NFREQ;
char file[1024]="rtkplot.exe",*p;
::GetModuleFileName(NULL,file,sizeof(file));
@@ -86,7 +92,7 @@ __fastcall TPlot::TPlot(TComponent* Owner) : TForm(Owner)
IndexObs=NULL;
Week=Flush=PlotType=0;
AnimCycle=1;
- for (i=0;i<2;i++) {
+ for (int i=0;i<2;i++) {
initsolbuf(SolData+i,0,0);
SolStat[i]=solstat0;
SolIndex[i]=0;
@@ -103,9 +109,9 @@ __fastcall TPlot::TPlot(TComponent* Owner) : TForm(Owner)
GEState=GEDataState[0]=GEDataState[1]=0;
GEHeading=0.0;
OEpoch=t0;
- for (i=0;i<3;i++) OPos[i]=OVel[i]=0.0;
+ for (int i=0;i<3;i++) OPos[i]=OVel[i]=0.0;
Az=El=NULL;
- for (i=0;iFit=0;
- for (i=0;i<3;i++) {
+ for (int i=0;i<3;i++) {
GraphG[i]=new TGraph(Disp);
GraphG[i]->XLPos=0;
GraphG[i]->GetLim(xl,yl);
GraphG[i]->SetLim(xs,yl);
}
GraphR=new TGraph(Disp);
- for (i=0;i<2;i++) {
+ for (int i=0;i<2;i++) {
GraphE[i]=new TGraph(Disp);
}
GraphS=new TGraph(Disp);
@@ -146,12 +152,12 @@ __fastcall TPlot::TPlot(TComponent* Owner) : TForm(Owner)
SkyFov[0]=SkyFov[1]=SkyFov[2]=0.0;
SkyElMask=1;
SkyDestCorr=SkyRes=SkyFlip=0;
- for (i=0;i<10;i++) SkyDest[i]=0.0;
+ for (int i=0;i<10;i++) SkyDest[i]=0.0;
SkyBinarize=0;
SkyBinThres1=0.3;
SkyBinThres2=0.1;
- for (i=0;i<3;i++) TimeEna[i]=0;
+ for (int i=0;i<3;i++) TimeEna[i]=0;
TimeLabel=AutoScale=ShowStats=0;
ShowLabel=ShowGLabel=1;
ShowArrow=ShowSlip=ShowHalfC=ShowErr=ShowEph=0;
@@ -164,7 +170,7 @@ __fastcall TPlot::TPlot(TComponent* Owner) : TForm(Owner)
Console1=new TConsole(Owner);
Console2=new TConsole(Owner);
- for (i=0;i<361;i++) ElMaskData[i]=0.0;
+ for (int i=0;i<361;i++) ElMaskData[i]=0.0;
Trace=0;
ConnectState=OpenRaw=0;
@@ -174,12 +180,9 @@ __fastcall TPlot::TPlot(TComponent* Owner) : TForm(Owner)
strinit(Stream+1);
FrqType->Items->Clear();
- FrqType->Items->Add("L1/LC");
- if (nfreq>=2) FrqType->Items->Add("L2");
- if (nfreq>=3) FrqType->Items->Add("L5");
- if (nfreq>=4) FrqType->Items->Add("L6");
- if (nfreq>=5) FrqType->Items->Add("L7");
- if (nfreq>=6) FrqType->Items->Add("L8");
+ for (int i=0;iItems->Add(s.sprintf("L%d",i+1));
+ }
FrqType->ItemIndex=0;
TLEData.n=TLEData.nmax=0;
@@ -199,7 +202,8 @@ void __fastcall TPlot::FormShow(TObject *Sender)
{
AnsiString cmd,s;
int i,argc=0;
- char *p,*argv[32],buff[1024],*path1="",*path2="",str_path[256];
+ char *p,*argv[32],buff[1024],str_path[256];
+ const char *path1="",*path2="";
trace(3,"FormShow\n");
@@ -221,8 +225,6 @@ void __fastcall TPlot::FormShow(TObject *Sender)
for (i=1;iAdd(argv[i]);
}
}
+ if (Trace>0) {
+ traceopen(TRACEFILE);
+ tracelevel(Trace);
+ }
+ LoadOpt();
+
UpdateType(PlotType>=PLOT_OBS?PLOT_TRK:PlotType);
UpdateColor();
@@ -248,9 +256,23 @@ void __fastcall TPlot::FormShow(TObject *Sender)
else if (OpenFiles->Count<=0) {
Caption=Title!=""?Title:s.sprintf("%s ver.%s %s",PRGNAME,VER_RTKLIB,PATCH_LEVEL);
}
- if (Trace>0) {
- traceopen(TRACEFILE);
- tracelevel(Trace);
+ if (ShapeFile!="") {
+ TStringList *files=new TStringList;
+ char *paths[MAXSHAPEFILE];
+ for (int i=0;iAdd(paths[i]);
+ }
+ ReadShapeFile(files);
+
+ for (int i=0;iAdd(buff);
}
- strcpy(file,U2A(files->Strings[0]).c_str());
+ file=files->Strings[0];
- if (n==1&&(ext=strrchr(file,'.'))&&
+ if (n==1&&(ext=strrchr(file.c_str(),'.'))&&
(!strcmp(ext,".jpg")||!strcmp(ext,".jpeg")||
!strcmp(ext,".JPG")||!strcmp(ext,".JPEG"))) {
if (PlotType==PLOT_TRK) {
- ReadMapData(files->Strings[0]);
+ ReadMapData(file);
}
else if (PlotType==PLOT_SKY||PlotType==PLOT_MPS) {
- ReadSkyData(files->Strings[0]);
+ ReadSkyData(file);
}
}
- else if (CheckObs((s=file))) {
+ else if (CheckObs(file)) {
ReadObs(files);
}
else if (!BtnSol1->Down&&BtnSol2->Down) {
@@ -556,7 +578,6 @@ void __fastcall TPlot::MenuPortClick(TObject *Sender)
ConnectDialog->CmdEna2[i]=StrCmdEna[1][i];
}
for (i=0;i<10;i++) ConnectDialog->TcpHistory [i]=StrHistory [i];
- for (i=0;i<10;i++) ConnectDialog->TcpMntpHist[i]=StrMntpHist[i];
if (ConnectDialog->ShowModal()!=mrOk) return;
@@ -580,7 +601,6 @@ void __fastcall TPlot::MenuPortClick(TObject *Sender)
StrCmdEna[1][i]=ConnectDialog->CmdEna2[i];
}
for (i=0;i<10;i++) StrHistory [i]=ConnectDialog->TcpHistory [i];
- for (i=0;i<10;i++) StrMntpHist[i]=ConnectDialog->TcpMntpHist[i];
}
// callback on menu-reload --------------------------------------------------
void __fastcall TPlot::MenuReloadClick(TObject *Sender)
@@ -669,7 +689,7 @@ void __fastcall TPlot::MenuMapImgClick(TObject *Sender)
{
trace(3,"MenuMapImgClick\n");
- MapAreaDialog->Show();
+ MapOptDialog->Show();
}
// callback on menu-sky image -----------------------------------------------
void __fastcall TPlot::MenuSkyImgClick(TObject *Sender)
@@ -683,10 +703,7 @@ void __fastcall TPlot::MenuMapLayerClick(TObject *Sender)
{
trace(3,"MenuMapLayerClick\n");
- if (VecMapDialog->ShowModal()!=mrOk) return;
-
- UpdatePlot();
- UpdateEnable();
+ VecMapDialog->Show();
}
// callback on menu-solution-source -----------------------------------------
void __fastcall TPlot::MenuSrcSolClick(TObject *Sender)
@@ -706,15 +723,16 @@ void __fastcall TPlot::MenuSrcSolClick(TObject *Sender)
void __fastcall TPlot::MenuSrcObsClick(TObject *Sender)
{
TTextViewer *viewer;
- char file[1024],tmpfile[1024];
+ AnsiString file;
+ char tmpfile[1024];
int cstat;
trace(3,"MenuSrcObsClick\n");
if (ObsFiles->Count<=0) return;
- strcpy(file,U2A(ObsFiles->Strings[0]).c_str());
- cstat=rtk_uncompress(file,tmpfile);
+ file=ObsFiles->Strings[0];
+ cstat=rtk_uncompress(file.c_str(),tmpfile);
viewer=new TTextViewer(Application);
viewer->Caption=ObsFiles->Strings[0];
viewer->Option=0;
@@ -722,32 +740,6 @@ void __fastcall TPlot::MenuSrcObsClick(TObject *Sender)
viewer->Read(!cstat?file:tmpfile);
if (cstat) remove(tmpfile);
}
-// callback on menu-data-qc -------------------------------------------------
-void __fastcall TPlot::MenuQcObsClick(TObject *Sender)
-{
- TTextViewer *viewer;
- AnsiString cmd=QcCmd,cmdexec,tmpfile=QCTMPFILE,errfile=QCERRFILE;
- int i,stat;
-
- trace(3,"MenuQcObsClick\n");
-
- if (ObsFiles->Count<=0||cmd=="") return;
-
- for (i=0;iCount;i++) cmd+=" \""+ObsFiles->Strings[i]+"\"";
- for (i=0;iCount;i++) cmd+=" \""+NavFiles->Strings[i]+"\"";
-
- cmdexec=cmd+" > "+tmpfile;
- cmdexec+=" 2> "+errfile;
- stat=execcmd(cmdexec.c_str());
-
- viewer=new TTextViewer(Application);
- viewer->Option=0;
- viewer->Show();
- viewer->Read(stat?errfile:tmpfile);
- viewer->Caption=(stat?"QC Error: ":"")+cmd;
- remove(tmpfile.c_str());
- remove(errfile.c_str());
-}
// callback on menu-copy-to-clipboard ---------------------------------------
void __fastcall TPlot::MenyCopyClick(TObject *Sender)
{
@@ -759,15 +751,12 @@ void __fastcall TPlot::MenyCopyClick(TObject *Sender)
void __fastcall TPlot::MenuOptionsClick(TObject *Sender)
{
AnsiString tlefile=TLEFile,tlesatfile=TLESatFile;
- double oopos[3],range;
- char file[1024],str_path[256];
- int timesyncout=TimeSyncOut;
+ double oopos[3];
+ int timesyncout=TimeSyncOut,rcvpos=RcvPos;
trace(3,"MenuOptionsClick\n");
- int i,rcvpos=RcvPos;
- for (i=0;i<3;i++) oopos[i]=OOPos[i];
-
+ matcpy(oopos,OOPos,3,1);
PlotOptDialog->Left=Left+Width/2-PlotOptDialog->Width/2;
PlotOptDialog->Top=Top+Height/2-PlotOptDialog->Height/2;
PlotOptDialog->Plot=this;
@@ -776,7 +765,7 @@ void __fastcall TPlot::MenuOptionsClick(TObject *Sender)
SaveOpt();
- for (i=0;i<3;i++) oopos[i]-=OOPos[i];
+ for (int i=0;i<3;i++) oopos[i]-=OOPos[i];
if (TLEFile!=tlefile) {
free(TLEData.data);
@@ -796,20 +785,26 @@ void __fastcall TPlot::MenuOptionsClick(TObject *Sender)
UpdateInfo();
UpdateSatMask();
UpdateSatList();
- UpdateEnable();
Refresh();
Timer->Interval=RefCycle;
- for (i=0;iCount;i++) {
- strcpy(file,U2A(RangeList->Items->Strings[i]).c_str());
-
- if (sscanf(file,"%lf",&range)&&range==YRange) {
+ for (int i=0;iCount;i++) {
+ AnsiString str=RangeList->Items->Strings[i];
+ double range;
+ char unit[32]="";
+
+ if (sscanf(str.c_str(),"%lf%31s",&range,unit)<1) continue;
+ if (!strcmp(unit,"cm")) range*=0.01;
+ else if (!strcmp(unit,"km")) range*=1000.0;
+ if (range==YRange) {
RangeList->Selected[i]=true;
+ break;
}
}
if (!timesyncout&&TimeSyncOut) {
- sprintf(str_path,":%d",TimeSyncPort);
- stropen(&StrTimeSync,STR_TCPSVR,STR_MODE_RW,str_path);
+ char path[256];
+ sprintf(path,":%d",TimeSyncPort);
+ stropen(&StrTimeSync,STR_TCPSVR,STR_MODE_RW,path);
}
else if (timesyncout&&!TimeSyncOut) {
strclose(&StrTimeSync);
@@ -876,24 +871,14 @@ void __fastcall TPlot::MenuMonitor2Click(TObject *Sender)
Console2->Caption="Monitor RT Input 2";
Console2->Show();
}
-// callback on menu-google-earth-view ---------------------------------------
-void __fastcall TPlot::MenuGEClick(TObject *Sender)
-{
- AnsiString s;
-
- trace(3,"MenuGEClick\n");
-
- GoogleEarthView->Caption=
- s.sprintf("%s ver.%s %s: Google Earth View",PRGNAME,VER_RTKLIB,PATCH_LEVEL);
- GoogleEarthView->Show();
-}
// callback on menu-google-map-view -----------------------------------------
-void __fastcall TPlot::MenuGMClick(TObject *Sender)
+void __fastcall TPlot::MenuMapViewClick(TObject *Sender)
{
AnsiString s;
- GoogleMapView->Caption=
- s.sprintf("%s ver.%s %s: Google Map View",PRGNAME,VER_RTKLIB,PATCH_LEVEL);
- GoogleMapView->Show();
+
+ MapView->Caption=
+ s.sprintf("%s ver.%s %s: Map View",PRGNAME,VER_RTKLIB,PATCH_LEVEL);
+ MapView->Show();
}
// callback on menu-center-origin -------------------------------------------
void __fastcall TPlot::MenuCenterOriClick(TObject *Sender)
@@ -940,9 +925,9 @@ void __fastcall TPlot::MenuShowGridClick(TObject *Sender)
// callback on menu-show-map-image ------------------------------------------
void __fastcall TPlot::MenuShowImgClick(TObject *Sender)
{
- trace(3,"MenuShowMapClick\n");
+ trace(3,"MenuShowImgClick\n");
- BtnShowMap->Down=!BtnShowMap->Down;
+ BtnShowImg->Down=!BtnShowImg->Down;
UpdatePlot();
UpdateEnable();
}
@@ -994,9 +979,6 @@ void __fastcall TPlot::MenuShowMapClick(TObject *Sender)
BtnShowMap->Down=!BtnShowMap->Down;
-#if 0
- if (BtnShowPoint->Down) UpdatePntsGE();
-#endif
UpdatePlot();
UpdateEnable();
}
@@ -1023,43 +1005,10 @@ void __fastcall TPlot::MenuMaxClick(TObject *Sender)
Left=rect.Left;
Width=rect.Width();
Height=rect.Height();
- GoogleEarthView->Hide();
- GoogleMapView->Hide();
-}
-// callback on menu-windows-plot-ge -----------------------------------------
-void __fastcall TPlot::MenuPlotGEClick(TObject *Sender)
-{
- TRect rect;
- ::SystemParametersInfo(SPI_GETWORKAREA,0,&rect,0);
- Top=rect.Top;
- Left=rect.Left;
- Width=rect.Width()/2;
- Height=rect.Height();
- GoogleEarthView->Top=Top;
- GoogleEarthView->Left=Width;
- GoogleEarthView->Width=Width;
- GoogleEarthView->Height=Height;
- GoogleMapView->Hide();
- GoogleEarthView->Show();
-}
-// callback on menu-windows-plot-gm -----------------------------------------
-void __fastcall TPlot::MenuPlotGMClick(TObject *Sender)
-{
- TRect rect;
- ::SystemParametersInfo(SPI_GETWORKAREA,0,&rect,0);
- Top=rect.Top;
- Left=rect.Left;
- Width=rect.Width()/2;
- Height=rect.Height();
- GoogleMapView->Top=Top;
- GoogleMapView->Left=Width;
- GoogleMapView->Width=Width;
- GoogleMapView->Height=Height;
- GoogleEarthView->Hide();
- GoogleMapView->Show();
+ MapView->Hide();
}
-// callback on menu-windows-plot-ge/gm --------------------------------------
-void __fastcall TPlot::MenuPlotGEGMClick(TObject *Sender)
+// callback on menu-windows-plot-mapview ------------------------------------
+void __fastcall TPlot::MenuPlotMapViewClick(TObject *Sender)
{
TRect rect;
::SystemParametersInfo(SPI_GETWORKAREA,0,&rect,0);
@@ -1067,18 +1016,12 @@ void __fastcall TPlot::MenuPlotGEGMClick(TObject *Sender)
Left=rect.Left;
Width=rect.Width()/2;
Height=rect.Height();
- GoogleEarthView->Top=Top;
- GoogleEarthView->Left=Width;
- GoogleEarthView->Width=Width;
- GoogleEarthView->Height=Height/2;
- GoogleMapView->Top=Top+Height/2;
- GoogleMapView->Left=Width;
- GoogleMapView->Width=Width;
- GoogleMapView->Height=Height/2;
- GoogleEarthView->Show();
- GoogleMapView->Show();
+ MapView->Top=Top;
+ MapView->Left=Width;
+ MapView->Width=Width;
+ MapView->Height=Height;
+ MapView->Show();
}
-//---------------------------------------------------------------------------
void __fastcall TPlot::DispGesture(TObject *Sender, const TGestureEventInfo &EventInfo,
bool &Handled)
{
@@ -1222,15 +1165,19 @@ void __fastcall TPlot::BtnOn3Click(TObject *Sender)
// callback on button-range-list --------------------------------------------
void __fastcall TPlot::BtnRangeListClick(TObject *Sender)
{
+ TSpeedButton *btn=(TSpeedButton *)Sender;
+
trace(3,"BtnRangeListClick\n");
+ RangeList->Left=btn->Parent->Left+btn->Left+btn->Width-RangeList->Width;
+ RangeList->Height=RangeList->ItemHeight*RangeList->Items->Count+2;
RangeList->Visible=!RangeList->Visible;
}
// callback on button-range-list --------------------------------------------
void __fastcall TPlot::RangeListClick(TObject *Sender)
{
- double range;
- char file[1024];
+ AnsiString str;
+ char unit[32]="";
int i;
trace(3,"RangeListClick\n");
@@ -1238,11 +1185,11 @@ void __fastcall TPlot::RangeListClick(TObject *Sender)
RangeList->Visible=false;
if ((i=RangeList->ItemIndex)<0) return;
- strcpy(file,U2A(RangeList->Items->Strings[i]).c_str());
+ str=RangeList->Items->Strings[i];
+ if (sscanf(str.c_str(),"%lf%s",&YRange,unit)<1) return;
+ if (!strcmp(unit,"cm")) YRange*=0.01;
+ else if (!strcmp(unit,"km")) YRange*=1000.0;
- if (!sscanf(file,"%lf",&range)) return;
-
- YRange=range;
SetRange(0,YRange);
UpdatePlot();
UpdateEnable();
@@ -1321,19 +1268,12 @@ void __fastcall TPlot::BtnOptionsClick(TObject *Sender)
MenuOptionsClick(Sender);
}
-// callback on button-ge-view -----------------------------------------------
-void __fastcall TPlot::BtnGEClick(TObject *Sender)
-{
- trace(3,"BtnGEClick\n");
-
- MenuGEClick(Sender);
-}
// callback on button-gm-view -----------------------------------------------
-void __fastcall TPlot::BtnGMClick(TObject *Sender)
+void __fastcall TPlot::BtnMapViewClick(TObject *Sender)
{
- trace(3,"BtnGMClick\n");
+ trace(3,"BtnMapViewClick\n");
- MenuGMClick(Sender);
+ MenuMapViewClick(Sender);
}
// callback on button-animation ---------------------------------------------
void __fastcall TPlot::BtnAnimateClick(TObject *Sender)
@@ -1490,7 +1430,7 @@ void __fastcall TPlot::DispMouseUp(TObject *Sender, TMouseButton Button,
Drag=0;
Screen->Cursor=crDefault;
Refresh();
- Refresh_GEView();
+ Refresh_MapView();
}
// callback on mouse-double-click -------------------------------------------
void __fastcall TPlot::DispDblClick(TObject *Sender)
@@ -1506,7 +1446,7 @@ void __fastcall TPlot::DispDblClick(TObject *Sender)
GraphT->ToPos(p,x,y);
GraphT->SetCent(x,y);
Refresh();
- Refresh_GEView();
+ Refresh_MapView();
}
else if (PlotType<=PLOT_NSAT||PlotType==PLOT_RES||PlotType==PLOT_SNR) {
GraphG[0]->ToPos(p,x,y);
@@ -1896,7 +1836,7 @@ void __fastcall TPlot::TimerTimer(TObject *Sender)
TPanel *strstatus[]={StrStatus1,StrStatus2};
TConsole *console[]={Console1,Console2};
AnsiString connectmsg="",s;
- static unsigned char buff[16384];
+ static uint8_t buff[16384];
solopt_t opt=solopt_default;
sol_t *sol;
const gtime_t ts={0};
@@ -1942,8 +1882,7 @@ void __fastcall TPlot::TimerTimer(TObject *Sender)
time2gpst(SolData[i].time,&Week);
UpdateOrigin();
ecef2pos(SolData[i].data[0].rr,pos);
- GoogleEarthView->SetView(pos[0]*R2D,pos[1]*R2D,0.0,0.0);
- GoogleMapView->SetView(pos[0]*R2D,pos[1]*R2D,13);
+ MapView->SetCent(pos[0]*R2D,pos[1]*R2D);
}
nmsg[i]++;
}
@@ -1978,7 +1917,7 @@ void __fastcall TPlot::TimerTimer(TObject *Sender)
}
else if (TimeSyncOut) { // time sync
time.time = 0;
- while (strread(&StrTimeSync, (unsigned char *)StrBuff+NStrBuff, 1)) {
+ while (strread(&StrTimeSync, (uint8_t *)StrBuff+NStrBuff, 1)) {
if (++NStrBuff >= 1023) {
NStrBuff = 0;
continue;
@@ -2070,15 +2009,15 @@ void __fastcall TPlot::UpdateSize(void)
{
TSpeedButton *btn[]={BtnOn1,BtnOn2,BtnOn3};
TPoint p1(0,0),p2(Disp->Width,Disp->Height);
- double xs,ys;
+ double xs,ys,font_px=Disp->Font->Size*1.33;
int i,n,h,tmargin,bmargin,rmargin,lmargin;
trace(3,"UpdateSize\n");
- tmargin=5; // top margin
- bmargin=(int)(Disp->Font->Size*1.5)+3; // bottom
- rmargin=8; // right
- lmargin=Disp->Font->Size*3+15; // left
+ tmargin=(int)(font_px*0.9); // top margin (px)
+ bmargin=(int)(font_px*1.8); // bottom
+ rmargin=(int)(font_px*1.2); // right
+ lmargin=(int)(font_px*3.6); // left
GraphT->SetPos(p1,p2);
GraphS->SetPos(p1,p2);
@@ -2098,6 +2037,7 @@ void __fastcall TPlot::UpdateSize(void)
GraphG[i]->SetPos(p1,p2);
p1.y+=h;
}
+ p1.x+=(int)(font_px*1.2);
p1.y=tmargin; p2.y=p1.y;
for (i=n=0;i<2;i++) if (btn[i]->Down) n++;
for (i=0;i<2;i++) {
@@ -2136,7 +2076,7 @@ void __fastcall TPlot::UpdateTime(void)
trace(3,"UpdateTime\n");
// time-cursor change on solution-plot
- if (PlotType<=PLOT_NSAT||PlotType<=PLOT_RES) {
+ if (PlotType<=PLOT_NSAT||PlotType<=PLOT_RESE) {
TimeScroll->Max=MAX(1,SolData[sel].n-1);
TimeScroll->Position=SolIndex[sel];
if (!(sol=getsol(SolData+sel,SolIndex[sel]))) return;
@@ -2204,7 +2144,7 @@ void __fastcall TPlot::UpdateOrigin(void)
for (i=0;i<3;i++) opos[i]=sol->rr[i];
}
else if (Origin==ORG_AVEPOS) {
- for (i=0;sol=getsol(SolData,i);i++) {
+ for (i=0;(sol=getsol(SolData,i));i++) {
if (sol->type!=0) continue;
for (j=0;j<3;j++) opos[j]+=sol->rr[j];
n++;
@@ -2265,7 +2205,7 @@ void __fastcall TPlot::UpdateOrigin(void)
OPos[i]=opos[i];
OVel[i]=ovel[i];
}
- Refresh_GEView();
+ Refresh_MapView();
}
// update satellite mask ----------------------------------------------------
void __fastcall TPlot::UpdateSatMask(void)
@@ -2300,6 +2240,7 @@ void __fastcall TPlot::UpdateSatSel(void)
else if (SatListText=="E") sys=SYS_GAL;
else if (SatListText=="J") sys=SYS_QZS;
else if (SatListText=="C") sys=SYS_CMP;
+ else if (SatListText=="I") sys=SYS_IRN;
else if (SatListText=="S") sys=SYS_SBS;
for (i=0;iVisible=MenuStatusBar->Checked;
BtnConnect ->Down = ConnectState;
- BtnSol2 ->Enabled=PlotType<=PLOT_NSAT||PlotType==PLOT_RES;
+ BtnSol1 ->Enabled=true;
+ BtnSol2 ->Enabled=PlotType<=PLOT_NSAT||PlotType==PLOT_RES||PlotType==PLOT_RESE;
BtnSol12 ->Enabled=!ConnectState&&PlotType<=PLOT_SOLA&&SolData[0].n>0&&SolData[1].n>0;
-
QFlag ->Visible=PlotType==PLOT_TRK ||PlotType==PLOT_SOLP||
PlotType==PLOT_SOLV||PlotType==PLOT_SOLA||
PlotType==PLOT_NSAT;
ObsType ->Visible=PlotType==PLOT_OBS||PlotType==PLOT_SKY;
ObsType2 ->Visible=PlotType==PLOT_SNR||PlotType==PLOT_SNRE||PlotType==PLOT_MPS;
- FrqType ->Visible=PlotType==PLOT_RES;
+ FrqType ->Visible=PlotType==PLOT_RES||PlotType==PLOT_RESE;
DopType ->Visible=PlotType==PLOT_DOP;
- SatList ->Visible=PlotType==PLOT_RES||PlotType>=PLOT_OBS||
+ SatList ->Visible=PlotType==PLOT_RES||PlotType==PLOT_RESE||PlotType>=PLOT_OBS||
PlotType==PLOT_SKY||PlotType==PLOT_DOP||
PlotType==PLOT_SNR||PlotType==PLOT_SNRE||
PlotType==PLOT_MPS;
@@ -2339,40 +2280,25 @@ void __fastcall TPlot::UpdateEnable(void)
ObsType ->Enabled=data&&!SimObs;
ObsType2 ->Enabled=data&&!SimObs;
- BtnOn1 ->Enabled=plot||PlotType==PLOT_SNR||PlotType==PLOT_RES||PlotType==PLOT_SNRE;
- BtnOn2 ->Enabled=plot||PlotType==PLOT_SNR||PlotType==PLOT_RES||PlotType==PLOT_SNRE;
+ Panel102 ->Visible=PlotType==PLOT_SOLP||PlotType==PLOT_SOLV||
+ PlotType==PLOT_SOLA||PlotType==PLOT_NSAT||
+ PlotType==PLOT_RES ||PlotType==PLOT_RESE||
+ PlotType==PLOT_SNR ||PlotType==PLOT_SNRE;
+ BtnOn1 ->Enabled=plot||PlotType==PLOT_SNR||PlotType==PLOT_RES||
+ PlotType==PLOT_RESE||PlotType==PLOT_SNRE;
+ BtnOn2 ->Enabled=plot||PlotType==PLOT_SNR||PlotType==PLOT_RES||
+ PlotType==PLOT_RESE||PlotType==PLOT_SNRE;
BtnOn3 ->Enabled=plot||PlotType==PLOT_SNR||PlotType==PLOT_RES;
- BtnRangeList ->Left=23;
BtnCenterOri ->Visible=PlotType==PLOT_TRK ||PlotType==PLOT_SOLP||
PlotType==PLOT_SOLV||PlotType==PLOT_SOLA||
PlotType==PLOT_NSAT;
+ BtnCenterOri ->Enabled=PlotType!=PLOT_NSAT;
BtnRangeList ->Visible=PlotType==PLOT_TRK ||PlotType==PLOT_SOLP||
PlotType==PLOT_SOLV||PlotType==PLOT_SOLA||
PlotType==PLOT_NSAT;
- BtnCenterOri ->Enabled=PlotType!=PLOT_NSAT;
BtnRangeList ->Enabled=PlotType!=PLOT_NSAT;
- Panel102 ->Left=156;
- Panel103 ->Left=170;
- Panel104 ->Left=220;
- BtnFitHoriz ->Left=250;
- BtnFitVert ->Left=275;
- BtnShowTrack ->Left=300;
- BtnFixCent ->Left=325;
- BtnFixHoriz ->Left=350;
- BtnFixVert ->Left=375;
- BtnShowGrid ->Left=400;
- BtnShowSkyplot ->Left=425;
- BtnShowMap ->Left=450;
- BtnShowImg ->Left=475;
- BtnGE ->Left=500;
- BtnGM ->Left=525;
-
- Panel102 ->Visible=PlotType==PLOT_SOLP||PlotType==PLOT_SOLV||
- PlotType==PLOT_SOLA||PlotType==PLOT_NSAT||
- PlotType==PLOT_RES ||
- PlotType==PLOT_SNR ||PlotType==PLOT_SNRE;
BtnFitHoriz ->Visible=PlotType==PLOT_SOLP||PlotType==PLOT_SOLV||
PlotType==PLOT_SOLA||PlotType==PLOT_NSAT||
PlotType==PLOT_RES ||PlotType==PLOT_OBS ||
@@ -2382,16 +2308,13 @@ void __fastcall TPlot::UpdateEnable(void)
BtnFitVert ->Visible=PlotType==PLOT_TRK ||PlotType==PLOT_SOLP||
PlotType==PLOT_SOLV||PlotType==PLOT_SOLA;
BtnFitVert ->Enabled=data;
-
BtnShowTrack ->Enabled=data;
-
BtnFixCent ->Visible=PlotType==PLOT_TRK;
BtnFixCent ->Enabled=data;
BtnFixHoriz ->Visible=PlotType==PLOT_SOLP||PlotType==PLOT_SOLV||
PlotType==PLOT_SOLA||PlotType==PLOT_NSAT||
PlotType==PLOT_RES ||PlotType==PLOT_OBS ||
- PlotType==PLOT_DOP ||PlotType==PLOT_RES ||
- PlotType==PLOT_SNR;
+ PlotType==PLOT_DOP ||PlotType==PLOT_SNR;
BtnFixHoriz ->Enabled=data;
BtnFixVert ->Visible=PlotType==PLOT_SOLP||PlotType==PLOT_SOLV||
PlotType==PLOT_SOLA;
@@ -2402,10 +2325,11 @@ void __fastcall TPlot::UpdateEnable(void)
BtnShowMap ->Enabled=!BtnSol12->Down;
BtnShowImg ->Visible=PlotType==PLOT_TRK||PlotType==PLOT_SKY||
PlotType==PLOT_MPS;
+ BtnMapView ->Visible=PlotType==PLOT_TRK||PlotType==PLOT_SOLP;
+ Panel12 ->Visible=!ConnectState;
BtnAnimate ->Visible=data&&BtnShowTrack->Down;
- BtnGE ->Visible=PlotType==PLOT_TRK;
- BtnGM ->Visible=PlotType==PLOT_TRK;
TimeScroll ->Visible=data&&BtnShowTrack->Down;
+ TimeScroll ->Enabled=data&&BtnShowTrack->Down;
if (!BtnShowTrack->Down) {
BtnFixHoriz->Enabled=false;
@@ -2413,17 +2337,26 @@ void __fastcall TPlot::UpdateEnable(void)
BtnFixCent ->Enabled=false;
BtnAnimate ->Down =false;
}
+ BtnRangeList ->Left=BtnCenterOri ->Left+BtnCenterOri ->Width;
+ BtnFitHoriz ->Left=Panel104 ->Left+Panel104 ->Width;
+ BtnFitVert ->Left=BtnFitHoriz ->Left+BtnFitHoriz ->Width;
+ BtnShowTrack ->Left=BtnFitVert ->Left+BtnFitVert ->Width;
+ BtnFixCent ->Left=BtnShowTrack ->Left+BtnShowTrack ->Width;
+ BtnFixHoriz ->Left=BtnFixCent ->Left+BtnFixCent ->Width;
+ BtnFixVert ->Left=BtnFixHoriz ->Left+BtnFixHoriz ->Width;
+ BtnShowGrid ->Left=BtnFixVert ->Left+BtnFixVert ->Width;
+ BtnShowSkyplot ->Left=BtnShowGrid ->Left+BtnShowGrid ->Width;
+ BtnShowMap ->Left=BtnShowSkyplot->Left+BtnShowSkyplot->Width;
+ BtnShowImg ->Left=BtnShowMap ->Left+BtnShowMap ->Width;
+ BtnMapView ->Left=BtnShowImg ->Left+BtnShowImg ->Width;
+
+ BtnFreq ->Left=BtnClear ->Left-BtnFreq ->Width;
+
MenuMapImg ->Enabled=MapImage->Height>0;
MenuSkyImg ->Enabled=SkyImageI->Height>0;
MenuSrcSol ->Enabled=SolFiles[sel]->Count>0;
MenuSrcObs ->Enabled=ObsFiles->Count>0;
- MenuQcObs ->Enabled=ObsFiles->Count>0;
- int n=0;
- for (i=0;iEnabled=n>0;
-
+ MenuMapLayer ->Enabled=true;
MenuShowTrack ->Enabled=BtnShowTrack->Enabled;
MenuFitHoriz ->Enabled=BtnFitHoriz ->Enabled;
MenuFitVert ->Enabled=BtnFitVert ->Enabled;
@@ -2435,9 +2368,7 @@ void __fastcall TPlot::UpdateEnable(void)
MenuShowImg ->Enabled=BtnShowImg ->Enabled;
MenuShowSkyplot->Enabled=BtnShowSkyplot->Visible;
MenuShowGrid ->Enabled=BtnShowGrid ->Visible;
- MenuGE ->Enabled=BtnGE ->Enabled;
- MenuGM ->Enabled=BtnGM ->Enabled;
-
+ MenuMapView ->Enabled=BtnMapView ->Enabled;
MenuShowTrack ->Checked=BtnShowTrack->Down;
MenuFixCent ->Checked=BtnFixCent ->Down;
MenuFixHoriz ->Checked=BtnFixHoriz ->Down;
@@ -2446,11 +2377,8 @@ void __fastcall TPlot::UpdateEnable(void)
MenuShowGrid ->Checked=BtnShowGrid ->Down;
MenuShowMap ->Checked=BtnShowMap ->Down;
MenuShowImg ->Checked=BtnShowImg ->Down;
-
MenuAnimStart ->Enabled=!ConnectState&&BtnAnimate->Enabled&&!BtnAnimate->Down;
MenuAnimStop ->Enabled=!ConnectState&&BtnAnimate->Enabled&& BtnAnimate->Down;
- TimeScroll ->Enabled=data&&BtnShowTrack->Down;
-
MenuOpenSol1 ->Enabled=!ConnectState;
MenuOpenSol2 ->Enabled=!ConnectState;
MenuConnect ->Enabled=!ConnectState;
@@ -2461,10 +2389,10 @@ void __fastcall TPlot::UpdateEnable(void)
MenuOpenElevMask->Enabled=!ConnectState;
MenuReload ->Enabled=!ConnectState;
- BtnReload ->Visible=!ConnectState;
- StrStatus1 ->Visible= ConnectState;
- StrStatus2 ->Visible= ConnectState;
- Panel12 ->Visible=!ConnectState;
+ BtnReload ->Enabled=!ConnectState;
+ StrStatus ->Enabled= ConnectState;
+ BtnFreq ->Visible=FrqType->Visible||ObsType->Visible||ObsType2->Visible;
+ StrStatus ->Left=BtnOptions->Left-StrStatus->Width+1;
}
// linear-fitting of positions ----------------------------------------------
int __fastcall TPlot::FitPos(gtime_t *time, double *opos, double *ovel)
@@ -2477,7 +2405,7 @@ int __fastcall TPlot::FitPos(gtime_t *time, double *opos, double *ovel)
if (SolData[0].n<=0) return 0;
- for (i=0;sol=getsol(SolData,i);i++) {
+ for (i=0;(sol=getsol(SolData,i));i++) {
if (sol->type!=0) continue;
if (time->time==0) *time=sol->time;
t=timediff(sol->time,*time);
@@ -2509,6 +2437,7 @@ void __fastcall TPlot::FitTime(void)
sols=getsol(SolData+sel,0);
sole=getsol(SolData+sel,SolData[sel].n-1);
+
if (sols&&sole) {
tl[0]=MIN(tl[0],TimePos(sols->time));
tl[1]=MAX(tl[1],TimePos(sole->time));
@@ -2554,8 +2483,7 @@ void __fastcall TPlot::SetRange(int all, double range)
GraphT->SetScale(MAX(xs,ys),MAX(xs,ys));
if (norm(OPos,3)>0.0) {
ecef2pos(OPos,pos);
- GoogleEarthView->SetView(pos[0]*R2D,pos[1]*R2D,0.0,0.0);
- GoogleMapView->SetView(pos[0]*R2D,pos[1]*R2D,13);
+ MapView->SetCent(pos[0]*R2D,pos[1]*R2D);
}
}
if (PLOT_SOLP<=PlotType&&PlotType<=PLOT_SOLA) {
@@ -2576,8 +2504,8 @@ void __fastcall TPlot::SetRange(int all, double range)
}
else if (PlotTypeGetLim(tl,xp);
- xl[0]=-10.0; xl[1]=10.0;
- yl[0]= -0.1; yl[1]= 0.1;
+ xl[0]=-MaxMP; xl[1]=MaxMP;
+ yl[0]=-MaxMP/100.0; yl[1]=MaxMP/100.0;
zl[0]= 0.0; zl[1]=90.0;
GraphG[0]->SetLim(tl,xl);
GraphG[1]->SetLim(tl,yl);
@@ -2673,7 +2601,7 @@ void __fastcall TPlot::FitRange(int all)
}
if (all) {
if (BtnSol1->Down) {
- for (i=0;data=getsol(SolData,i);i++) {
+ for (i=0;(data=getsol(SolData,i));i++) {
ecef2pos(data->rr,llh);
lats[0]=MIN(lats[0],llh[0]*R2D);
lons[0]=MIN(lons[0],llh[1]*R2D);
@@ -2682,7 +2610,7 @@ void __fastcall TPlot::FitRange(int all)
}
}
if (BtnSol2->Down) {
- for (i=0;data=getsol(SolData+1,i);i++) {
+ for (i=0;(data=getsol(SolData+1,i));i++) {
ecef2pos(data->rr,llh);
lats[0]=MIN(lats[0],llh[0]*R2D);
lons[0]=MIN(lons[0],llh[1]*R2D);
@@ -2693,7 +2621,6 @@ void __fastcall TPlot::FitRange(int all)
if (lats[0]<=lats[1]&&lons[0]<=lons[1]) {
lat=(lats[0]+lats[1])/2.0;
lon=(lons[0]+lons[1])/2.0;
-// GoogleEarthView->SetView(lat,lon,0.0,0.0);
}
}
}
@@ -2715,14 +2642,11 @@ void __fastcall TPlot::SetTrkCent(double lat, double lon)
void __fastcall TPlot::LoadOpt(void)
{
TIniFile *ini=new TIniFile(IniFile);
- AnsiString s,s1;
- double range;
- char rangelist[64];
- int i,geopts[12];
+ AnsiString s;
trace(3,"LoadOpt\n");
- PlotType =ini->ReadInteger("plot","plottype", 0);
+// PlotType =ini->ReadInteger("plot","plottype", 0);
TimeLabel =ini->ReadInteger("plot","timelabel", 1);
LatLonFmt =ini->ReadInteger("plot","latlonfmt", 0);
AutoScale =ini->ReadInteger("plot","autoscale", 1);
@@ -2738,7 +2662,7 @@ void __fastcall TPlot::LoadOpt(void)
ShowEph =ini->ReadInteger("plot","showeph", 0);
PlotStyle =ini->ReadInteger("plot","plotstyle", 0);
MarkSize =ini->ReadInteger("plot","marksize", 2);
- NavSys =ini->ReadInteger("plot","navsys", SYS_GPS);
+ NavSys =ini->ReadInteger("plot","navsys", SYS_ALL);
AnimCycle =ini->ReadInteger("plot","animcycle", 10);
RefCycle =ini->ReadInteger("plot","refcycle", 100);
HideLowSat =ini->ReadInteger("plot","hidelowsat", 0);
@@ -2785,13 +2709,24 @@ void __fastcall TPlot::LoadOpt(void)
MapColor[9]=(TColor)ini->ReadInteger("plot","mapcolor10", 0xF0F0F0 );
MapColor[10]=(TColor)ini->ReadInteger("plot","mapcolor11", 0xF0F0F0 );
MapColor[11]=(TColor)ini->ReadInteger("plot","mapcolor12", 0xF0F0F0 );
+ MapColorF[0]=(TColor)ini->ReadInteger("plot","mapcolorf1", clWhite );
+ MapColorF[1]=(TColor)ini->ReadInteger("plot","mapcolorf2", clWhite );
+ MapColorF[2]=(TColor)ini->ReadInteger("plot","mapcolorf3", clWhite );
+ MapColorF[3]=(TColor)ini->ReadInteger("plot","mapcolorf4", clWhite );
+ MapColorF[4]=(TColor)ini->ReadInteger("plot","mapcolorf5", clWhite );
+ MapColorF[5]=(TColor)ini->ReadInteger("plot","mapcolorf6", clWhite );
+ MapColorF[6]=(TColor)ini->ReadInteger("plot","mapcolorf7", clWhite );
+ MapColorF[7]=(TColor)ini->ReadInteger("plot","mapcolorf8", clWhite );
+ MapColorF[8]=(TColor)ini->ReadInteger("plot","mapcolorf9", clWhite );
+ MapColorF[9]=(TColor)ini->ReadInteger("plot","mapcolorf10", clWhite );
+ MapColorF[10]=(TColor)ini->ReadInteger("plot","mapcolorf11", clWhite );
+ MapColorF[11]=(TColor)ini->ReadInteger("plot","mapcolorf12", clWhite );
CColor[0]=(TColor)ini->ReadInteger("plot","color1", (int)clWhite );
CColor[1]=(TColor)ini->ReadInteger("plot","color2", (int)clSilver );
CColor[2]=(TColor)ini->ReadInteger("plot","color3", (int)clBlack );
CColor[3]=(TColor)ini->ReadInteger("plot","color4", (int)clSilver );
RefDialog->StaPosFile=ini->ReadString ("plot","staposfile","");
- RefDialog->Format =ini->ReadInteger("plot","staposformat",0);
ElMask =ini->ReadFloat ("plot","elmask", 0.0);
MaxDop =ini->ReadFloat ("plot","maxdop",30.0);
@@ -2802,55 +2737,67 @@ void __fastcall TPlot::LoadOpt(void)
OOPos[0] =ini->ReadFloat ("plot","oopos1", 0);
OOPos[1] =ini->ReadFloat ("plot","oopos2", 0);
OOPos[2] =ini->ReadFloat ("plot","oopos3", 0);
- QcCmd =ini->ReadString ("plot","qccmd","teqc +qc +sym +l -rep -plot");
+ ShapeFile =ini->ReadString ("plot","shapefile","");
TLEFile =ini->ReadString ("plot","tlefile", "");
TLESatFile=ini->ReadString ("plot","tlesatfile","");
+ FontName =ini->ReadString ("plot","fontname","Tahoma");
+ FontSize =ini->ReadInteger("plot","fontsize",8);
Font->Charset=ANSI_CHARSET;
- Font->Name=ini->ReadString ("plot","fontname","Tahoma");
- Font->Size=ini->ReadInteger("plot","fontsize",8);
+ Font->Name=FontName;
+ Font->Size=FontSize;
RnxOpts =ini->ReadString ("plot","rnxopts","");
- ApiKey =ini->ReadString ("plot","apikey" ,"");
-
- for (i=0;i<11;i++) {
- geopts[i]=ini->ReadInteger("ge",s.sprintf("geopts_%d",i),0);
- }
- GoogleEarthView->SetOpts(geopts);
-
- for (i=0;i<2;i++) {
+
+ MapApi =ini->ReadInteger("mapview","mapapi" , 0);
+ ApiKey =ini->ReadString ("mapview","apikey" ,"");
+ MapStrs[0][0]=ini->ReadString("mapview","mapstrs_0_0","OpenStreetMap");
+ MapStrs[0][1]=ini->ReadString("mapview","mapstrs_0_1","https://tile.openstreetmap.org/{z}/{x}/{y}.png");
+ MapStrs[0][2]=ini->ReadString("mapview","mapstrs_0_2","https://osm.org/copyright");
+ for (int i=1;i<6;i++) for (int j=0;j<3;j++) {
+ MapStrs[i][j]=ini->ReadString("mapview",s.sprintf("mapstrs_%d_%d",i,j),"");
+ }
+ for (int i=0;i<2;i++) {
StrCmds [0][i]=ini->ReadString ("str",s.sprintf("strcmd1_%d", i),"");
StrCmds [1][i]=ini->ReadString ("str",s.sprintf("strcmd2_%d", i),"");
StrCmdEna[0][i]=ini->ReadInteger("str",s.sprintf("strcmdena1_%d", i), 0);
StrCmdEna[1][i]=ini->ReadInteger("str",s.sprintf("strcmdena2_%d", i), 0);
}
- for (i=0;i<3;i++) {
+ for (int i=0;i<3;i++) {
StrPaths[0][i]=ini->ReadString ("str",s.sprintf("strpath1_%d", i),"");
StrPaths[1][i]=ini->ReadString ("str",s.sprintf("strpath2_%d", i),"");
}
- for (i=0;i<10;i++) {
+ for (int i=0;i<10;i++) {
StrHistory [i]=ini->ReadString ("str",s.sprintf("strhistry_%d", i),"");
- StrMntpHist[i]=ini->ReadString ("str",s.sprintf("strmntphist_%d",i),"");
}
TTextViewer::Color1=(TColor)ini->ReadInteger("viewer","color1",(int)clBlack);
TTextViewer::Color2=(TColor)ini->ReadInteger("viewer","color2",(int)clWhite);
TTextViewer::FontD=new TFont;
- TTextViewer::FontD->Name=ini->ReadString ("viewer","fontname","Courier New");
+ TTextViewer::FontD->Name=ini->ReadString ("viewer","fontname","Consolas");
TTextViewer::FontD->Size=ini->ReadInteger("viewer","fontsize",9);
MenuBrowse->Checked=ini->ReadInteger("solbrows","show", 0);
PanelBrowse->Width =ini->ReadInteger("solbrows","split1", 100);
DirSel->Height =ini->ReadInteger("solbrows","split2", 150);
- DirSel->Directory =ini->ReadString ("solbrows","dir", "C:\\");
-
+ try {
+ DirSel->Directory=ini->ReadString("solbrows","dir", "C:\\");
+ }
+ catch (Exception &exception) {
+ ;
+ }
delete ini;
- for (i=0;iCount;i++) {
+ for (int i=0;iCount;i++) {
+ AnsiString s=RangeList->Items->Strings[i];
+ double range;
+ char unit[32]="";
- strcpy(rangelist,U2A(RangeList->Items->Strings[i]).c_str());
-
- if (sscanf(rangelist,"%lf",&range)&&range==YRange) {
+ if (sscanf(s.c_str(),"%lf%31s",&range,unit)<1) continue;
+ if (!strcmp(unit,"cm")) range*=0.01;
+ else if (!strcmp(unit,"km")) range*=1000.0;
+ if (range==YRange) {
RangeList->Selected[i]=true;
+ break;
}
}
}
@@ -2858,15 +2805,14 @@ void __fastcall TPlot::LoadOpt(void)
void __fastcall TPlot::SaveOpt(void)
{
TIniFile *ini=new TIniFile(IniFile);
- AnsiString s,s1;
- int i,geopts[12];
+ AnsiString s;
trace(3,"SaveOpt\n");
- ini->WriteInteger("plot","plottype", PlotType );
+// ini->WriteInteger("plot","plottype", PlotType );
ini->WriteInteger("plot","timelabel", TimeLabel );
ini->WriteInteger("plot","latlonfmt", LatLonFmt );
- ini->WriteInteger("plot","autoscale", AutoScale );
+ ini->WriteInteger("plot","autoscale", AutoScale );
ini->WriteInteger("plot","showstats", ShowStats );
ini->WriteInteger("plot","showlabel", ShowLabel );
ini->WriteInteger("plot","showglabel", ShowGLabel );
@@ -2926,13 +2872,24 @@ void __fastcall TPlot::SaveOpt(void)
ini->WriteInteger("plot","mapcolor10", (int)MapColor [9]);
ini->WriteInteger("plot","mapcolor11", (int)MapColor[10]);
ini->WriteInteger("plot","mapcolor12", (int)MapColor[11]);
+ ini->WriteInteger("plot","mapcolor1f", (int)MapColorF[0]);
+ ini->WriteInteger("plot","mapcolor2f", (int)MapColorF[1]);
+ ini->WriteInteger("plot","mapcolor3f", (int)MapColorF[2]);
+ ini->WriteInteger("plot","mapcolor4f", (int)MapColorF[3]);
+ ini->WriteInteger("plot","mapcolor5f", (int)MapColorF[4]);
+ ini->WriteInteger("plot","mapcolor6f", (int)MapColorF[5]);
+ ini->WriteInteger("plot","mapcolor7f", (int)MapColorF[6]);
+ ini->WriteInteger("plot","mapcolor8f", (int)MapColorF[7]);
+ ini->WriteInteger("plot","mapcolor9f", (int)MapColorF[8]);
+ ini->WriteInteger("plot","mapcolor10f", (int)MapColorF[9]);
+ ini->WriteInteger("plot","mapcolor11f", (int)MapColorF[10]);
+ ini->WriteInteger("plot","mapcolor12f", (int)MapColorF[11]);
ini->WriteInteger("plot","color1", (int)CColor[0]);
ini->WriteInteger("plot","color2", (int)CColor[1]);
ini->WriteInteger("plot","color3", (int)CColor[2]);
ini->WriteInteger("plot","color4", (int)CColor[3]);
ini->WriteString ("plot","staposfile", RefDialog->StaPosFile);
- ini->WriteInteger("plot","staposformat", RefDialog->Format);
ini->WriteFloat ("plot","elmask", ElMask );
ini->WriteFloat ("plot","maxdop", MaxDop );
@@ -2943,33 +2900,32 @@ void __fastcall TPlot::SaveOpt(void)
ini->WriteFloat ("plot","oopos1", OOPos[0] );
ini->WriteFloat ("plot","oopos2", OOPos[1] );
ini->WriteFloat ("plot","oopos3", OOPos[2] );
- ini->WriteString ("plot","qccmd", QcCmd );
+ ini->WriteString ("plot","shapefile", ShapeFile );
ini->WriteString ("plot","tlefile", TLEFile );
ini->WriteString ("plot","tlesatfile", TLESatFile );
- ini->WriteString ("plot","fontname", Font->Name );
- ini->WriteInteger("plot","fontsize", Font->Size );
+ ini->WriteString ("plot","fontname", FontName );
+ ini->WriteInteger("plot","fontsize", FontSize );
ini->WriteString ("plot","rnxopts", RnxOpts );
- ini->WriteString ("plot","apikey", ApiKey );
-
- GoogleEarthView->GetOpts(geopts);
- for (i=0;i<11;i++) {
- ini->WriteInteger("ge",s.sprintf("geopts_%d",i),geopts[i]);
+
+ ini->WriteString ("mapview","apikey", ApiKey );
+ ini->WriteInteger("mapview","mapapi", MapApi );
+ for (int i=0;i<6;i++) for (int j=0;j<3;j++) {
+ ini->WriteString("mapview",s.sprintf("mapstrs_%d_%d",i,j),MapStrs[i][j]);
}
- for (i=0;i<2;i++) {
- ini->WriteString ("str",s.sprintf("strcmd1_%d", i),StrCmds [0][i]);
- ini->WriteString ("str",s.sprintf("strcmd2_%d", i),StrCmds [1][i]);
- ini->WriteInteger("str",s.sprintf("strcmdena1_%d", i),StrCmdEna[0][i]);
- ini->WriteInteger("str",s.sprintf("strcmdena2_%d", i),StrCmdEna[1][i]);
+ for (int i=0;i<2;i++) {
+ ini->WriteString ("str",s.sprintf("strcmd1_%d", i),StrCmds [0][i]);
+ ini->WriteString ("str",s.sprintf("strcmd2_%d", i),StrCmds [1][i]);
+ ini->WriteInteger("str",s.sprintf("strcmdena1_%d",i),StrCmdEna[0][i]);
+ ini->WriteInteger("str",s.sprintf("strcmdena2_%d",i),StrCmdEna[1][i]);
}
- for (i=0;i<3;i++) {
- ini->WriteString ("str",s.sprintf("strpath1_%d", i),StrPaths[0][i]);
- ini->WriteString ("str",s.sprintf("strpath2_%d", i),StrPaths[1][i]);
+ for (int i=0;i<3;i++) {
+ ini->WriteString ("str",s.sprintf("strpath1_%d", i),StrPaths[0][i]);
+ ini->WriteString ("str",s.sprintf("strpath2_%d", i),StrPaths[1][i]);
}
- for (i=0;i<12;i++) {
- ini->WriteString ("str",s.sprintf("strhistry_%d", i),StrHistory [i]);
- ini->WriteString ("str",s.sprintf("strmntphist_%d",i),StrMntpHist[i]);
+ for (int i=0;i<12;i++) {
+ ini->WriteString ("str",s.sprintf("strhistry_%d", i),StrHistory [i]);
}
ini->WriteInteger("viewer","color1",(int)TTextViewer::Color1 );
ini->WriteInteger("viewer","color2",(int)TTextViewer::Color2 );
@@ -2984,7 +2940,6 @@ void __fastcall TPlot::SaveOpt(void)
delete ini;
}
//---------------------------------------------------------------------------
-
void __fastcall TPlot::FileMaskChange(TObject *Sender)
{
switch (FileMask->ItemIndex) {
@@ -2995,7 +2950,6 @@ void __fastcall TPlot::FileMaskChange(TObject *Sender)
}
}
//---------------------------------------------------------------------------
-
void __fastcall TPlot::FileListClick(TObject *Sender)
{
TStringList *file=new TStringList;
@@ -3004,17 +2958,20 @@ void __fastcall TPlot::FileListClick(TObject *Sender)
delete file;
}
//---------------------------------------------------------------------------
-
void __fastcall TPlot::Splitter1Moved(TObject *Sender)
{
UpdateSize();
Refresh();
}
//---------------------------------------------------------------------------
-
void __fastcall TPlot::BtnUdListClick(TObject *Sender)
{
FileList->Update();
}
//---------------------------------------------------------------------------
+void __fastcall TPlot::BtnFreqClick(TObject *Sender)
+{
+ if (FreqDialog->ShowModal()==mrOk) return;
+}
+//---------------------------------------------------------------------------
diff --git a/app/rtkplot/plotmain.dfm b/app/winapp/rtkplot/plotmain.dfm
similarity index 93%
rename from app/rtkplot/plotmain.dfm
rename to app/winapp/rtkplot/plotmain.dfm
index 811d0b58e..8684614d2 100644
--- a/app/rtkplot/plotmain.dfm
+++ b/app/winapp/rtkplot/plotmain.dfm
@@ -2,8 +2,8 @@ object Plot: TPlot
Left = 0
Top = 0
Caption = 'RTKPLOT'
- ClientHeight = 464
- ClientWidth = 634
+ ClientHeight = 461
+ ClientWidth = 646
Color = clWindow
Constraints.MinHeight = 320
Constraints.MinWidth = 320
@@ -15,7 +15,6 @@ object Plot: TPlot
KeyPreview = True
Menu = hh
OldCreateOrder = False
- Scaled = False
OnActivate = FormActivate
OnClose = FormClose
OnCreate = FormCreate
@@ -28,19 +27,20 @@ object Plot: TPlot
object Panel3: TPanel
Left = 0
Top = 25
- Width = 634
- Height = 421
+ Width = 646
+ Height = 418
Align = alClient
BevelOuter = bvNone
Color = clWhite
ParentBackground = False
TabOrder = 3
+ ExplicitWidth = 624
object Disp: TPaintBox
AlignWithMargins = True
Left = 154
Top = 0
- Width = 479
- Height = 421
+ Width = 491
+ Height = 418
Margins.Left = 1
Margins.Top = 0
Margins.Right = 1
@@ -63,7 +63,7 @@ object Plot: TPlot
object Splitter1: TSplitter
Left = 150
Top = 0
- Height = 421
+ Height = 418
Color = clWhite
ParentColor = False
ResizeStyle = rsUpdate
@@ -76,7 +76,7 @@ object Plot: TPlot
Left = 0
Top = 0
Width = 150
- Height = 421
+ Height = 418
Align = alLeft
BevelOuter = bvNone
Color = clWhite
@@ -130,7 +130,7 @@ object Plot: TPlot
Left = 0
Top = 158
Width = 150
- Height = 241
+ Height = 238
Margins.Left = 0
Margins.Top = 0
Margins.Right = 0
@@ -141,14 +141,14 @@ object Plot: TPlot
Color = clWhite
Constraints.MinHeight = 38
ExtendedSelect = False
- ItemHeight = 13
Mask = '*.pos'
+ ShowGlyphs = True
TabOrder = 2
OnClick = FileListClick
end
object Panel4: TPanel
Left = 0
- Top = 400
+ Top = 397
Width = 150
Height = 21
Align = alBottom
@@ -196,23 +196,23 @@ object Plot: TPlot
'NMEA (*.nmea)'
'Solution Status (*.stat)'
'All (*.*)')
- ExplicitWidth = 150
end
end
end
end
object Panel2: TPanel
Left = 0
- Top = 446
- Width = 634
+ Top = 443
+ Width = 646
Height = 18
Align = alBottom
BevelOuter = bvNone
Color = clWindow
ParentBackground = False
TabOrder = 0
+ ExplicitWidth = 624
object BtnMessage2: TSpeedButton
- Left = 618
+ Left = 630
Top = 0
Width = 16
Height = 18
@@ -232,7 +232,7 @@ object Plot: TPlot
ExplicitTop = -1
end
object Panel22: TPanel
- Left = 440
+ Left = 452
Top = 0
Width = 178
Height = 18
@@ -242,11 +242,12 @@ object Plot: TPlot
BorderWidth = 1
TabOrder = 0
Visible = False
+ ExplicitLeft = 430
object Message2: TLabel
Left = 2
Top = 2
- Width = 174
- Height = 14
+ Width = 3
+ Height = 13
Align = alClient
Alignment = taCenter
Color = clWhite
@@ -257,14 +258,12 @@ object Plot: TPlot
Font.Style = []
ParentColor = False
ParentFont = False
- ExplicitWidth = 3
- ExplicitHeight = 13
end
end
object Panel21: TPanel
Left = 0
Top = 0
- Width = 440
+ Width = 452
Height = 18
Align = alClient
AutoSize = True
@@ -279,97 +278,90 @@ object Plot: TPlot
Font.Style = []
ParentFont = False
TabOrder = 1
+ ExplicitWidth = 430
object QL3: TLabel
Left = 11
Top = 2
Width = 3
- Height = 14
+ Height = 13
Margins.Left = 0
Margins.Right = 0
Align = alLeft
Caption = ' '
- ExplicitHeight = 13
end
object Message1: TLabel
Left = 2
Top = 2
Width = 3
- Height = 14
+ Height = 13
Align = alLeft
- ExplicitHeight = 13
end
object QL1: TLabel
Left = 5
Top = 2
Width = 3
- Height = 14
+ Height = 13
Margins.Left = 0
Margins.Right = 0
Align = alLeft
Caption = ' '
- ExplicitHeight = 13
end
object QL2: TLabel
Left = 8
Top = 2
Width = 3
- Height = 14
+ Height = 13
Margins.Left = 0
Margins.Right = 0
Align = alLeft
Caption = ' '
- ExplicitHeight = 13
end
object QL4: TLabel
Left = 14
Top = 2
Width = 3
- Height = 14
+ Height = 13
Margins.Left = 0
Margins.Right = 0
Align = alLeft
Caption = ' '
- ExplicitHeight = 13
end
object QL5: TLabel
Left = 17
Top = 2
Width = 3
- Height = 14
+ Height = 13
Margins.Left = 0
Margins.Right = 0
Align = alLeft
Caption = ' '
- ExplicitHeight = 13
end
object QL6: TLabel
- Left = 23
+ Left = 20
Top = 2
Width = 3
- Height = 14
+ Height = 13
Margins.Left = 0
Margins.Right = 0
Align = alLeft
Caption = ' '
- ExplicitHeight = 13
end
object QL7: TLabel
- Left = 20
+ Left = 23
Top = 2
Width = 3
- Height = 14
+ Height = 13
Margins.Left = 0
Margins.Right = 0
Align = alLeft
Caption = ' '
- ExplicitHeight = 13
end
end
end
object Panel1: TPanel
Left = 0
Top = 0
- Width = 634
+ Width = 646
Height = 25
Margins.Left = 1
Margins.Top = 1
@@ -380,19 +372,22 @@ object Plot: TPlot
Color = clWindow
ParentBackground = False
TabOrder = 1
+ ExplicitWidth = 624
object Panel11: TPanel
- Left = 434
+ Left = 530
Top = 0
- Width = 200
+ Width = 116
Height = 25
Align = alRight
+ AutoSize = True
BevelOuter = bvNone
TabOrder = 0
TabStop = True
+ ExplicitLeft = 532
object BtnReload: TSpeedButton
- Left = 158
+ Left = 70
Top = 0
- Width = 21
+ Width = 23
Height = 25
Hint = 'Reload'
Align = alRight
@@ -411,14 +406,12 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnReloadClick
- ExplicitLeft = 25
- ExplicitHeight = 24
end
object ConnectMsg: TLabel
- Left = 113
+ Left = 0
Top = 0
Width = 3
- Height = 25
+ Height = 13
Align = alRight
Alignment = taRightJustify
Font.Charset = DEFAULT_CHARSET
@@ -428,12 +421,11 @@ object Plot: TPlot
Font.Style = []
ParentFont = False
Layout = tlCenter
- ExplicitHeight = 13
end
object BtnClear: TSpeedButton
- Left = 116
+ Left = 26
Top = 0
- Width = 21
+ Width = 23
Height = 25
Hint = 'Clear'
Align = alRight
@@ -463,13 +455,11 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnClearClick
- ExplicitLeft = 5
- ExplicitHeight = 24
end
object BtnOptions: TSpeedButton
- Left = 179
+ Left = 93
Top = 0
- Width = 21
+ Width = 23
Height = 25
Hint = 'Options'
Align = alRight
@@ -498,11 +488,24 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnOptionsClick
- ExplicitLeft = 45
- ExplicitHeight = 24
+ end
+ object BtnFreq: TSpeedButton
+ Left = 3
+ Top = 0
+ Width = 23
+ Height = 25
+ Hint = 'Help'
+ Align = alRight
+ AllowAllUp = True
+ Caption = ' ?'
+ Flat = True
+ ParentShowHint = False
+ ShowHint = True
+ Spacing = 0
+ OnClick = BtnFreqClick
end
object StrStatus: TPanel
- Left = 137
+ Left = 49
Top = 0
Width = 21
Height = 25
@@ -537,7 +540,7 @@ object Plot: TPlot
object Panel10: TPanel
Left = 0
Top = 0
- Width = 541
+ Width = 518
Height = 25
Margins.Left = 1
Margins.Top = 1
@@ -555,7 +558,7 @@ object Plot: TPlot
Hint = 'Data 1'
Align = alLeft
AllowAllUp = True
- GroupIndex = 2
+ GroupIndex = 12
Flat = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clBtnText
@@ -597,7 +600,7 @@ object Plot: TPlot
Hint = 'Data 1-2'
Align = alLeft
AllowAllUp = True
- GroupIndex = 4
+ GroupIndex = 13
Flat = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clBtnText
@@ -638,7 +641,7 @@ object Plot: TPlot
Hint = 'Data 2'
Align = alLeft
AllowAllUp = True
- GroupIndex = 3
+ GroupIndex = 14
Flat = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clBtnText
@@ -680,7 +683,7 @@ object Plot: TPlot
Hint = 'Fix Track Horizotal'
Align = alLeft
AllowAllUp = True
- GroupIndex = 9
+ GroupIndex = 5
Flat = True
Glyph.Data = {
3E020000424D3E0200000000000036000000280000000D0000000D0000000100
@@ -706,7 +709,7 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnFixHorizClick
- ExplicitLeft = 289
+ ExplicitLeft = 356
end
object BtnConnect: TSpeedButton
Left = 0
@@ -796,6 +799,8 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnConnectClick
+ ExplicitLeft = -1
+ ExplicitTop = 1
end
object BtnFitHoriz: TSpeedButton
Left = 265
@@ -875,7 +880,7 @@ object Plot: TPlot
Hint = 'Show Track Point'
Align = alLeft
AllowAllUp = True
- GroupIndex = 8
+ GroupIndex = 11
Flat = True
Glyph.Data = {
06050000424D060500000000000036040000280000000D0000000D0000000100
@@ -923,7 +928,7 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnShowTrackClick
- ExplicitLeft = 303
+ ExplicitLeft = 310
end
object BtnFixVert: TSpeedButton
Left = 380
@@ -933,7 +938,8 @@ object Plot: TPlot
Hint = 'Fix Track Vertical'
Align = alLeft
AllowAllUp = True
- GroupIndex = 10
+ GroupIndex = 6
+ Down = True
Flat = True
Glyph.Data = {
3E020000424D3E0200000000000036000000280000000D0000000D0000000100
@@ -959,7 +965,7 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnFixVertClick
- ExplicitLeft = 335
+ ExplicitLeft = 379
end
object BtnShowMap: TSpeedButton
Left = 449
@@ -969,7 +975,7 @@ object Plot: TPlot
Hint = 'Show Map/Waypoint'
Align = alLeft
AllowAllUp = True
- GroupIndex = 14
+ GroupIndex = 9
Flat = True
Glyph.Data = {
3E020000424D3E0200000000000036000000280000000D0000000D0000000100
@@ -1006,7 +1012,7 @@ object Plot: TPlot
Hint = 'Show Image'
Align = alLeft
AllowAllUp = True
- GroupIndex = 15
+ GroupIndex = 8
Flat = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clBtnText
@@ -1038,42 +1044,7 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnShowImgClick
- ExplicitLeft = 459
- ExplicitTop = -1
- end
- object BtnGE: TSpeedButton
- Left = 495
- Top = 0
- Width = 23
- Height = 25
- Hint = 'Google Earth View'
- Align = alLeft
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFCC483FCC483FCC483FCC483FCC483FFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFCC483FCC483FCC483FFFFFFCFF
- FFFCFFFFFCCC483FFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFCC483FCC483FFFFF
- FCFFFFFCFFFFFCCC483FCC483FCC483FCC483FFFFFFFFFFFFF00FFFFFFCC483F
- FFFFFCFFFFFCFFFFFCCC483FCC483FCC483FCC483FCC483FFFFFFCCC483FFFFF
- FF00FFFFFFCC483FFFFFFCCC483FCC483FCC483FCC483FCC483FFFFFFCFFFFFC
- FFFFFCCC483FFFFFFF00FFFFFFCC483FCC483FCC483FCC483FCC483FFFFFFCFF
- FFFCFFFFFCFFFFFCCC483FCC483FFFFFFF00FFFFFFCC483FCC483FCC483FCC48
- 3FFFFFFCFFFFFCFFFFFCCC483FCC483FCC483FCC483FFFFFFF00FFFFFFCC483F
- CC483FCC483FFFFFFCFFFFFCCC483FCC483FCC483FFFFFFCFFFFFCCC483FFFFF
- FF00FFFFFFFFFFFFCC483FFFFFFCFFFFFCCC483FCC483FCC483FFFFFFCFFFFFC
- CC483FFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFCC483FCC483FCC483FCC483FFF
- FFFCFFFFFCCC483FFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFCC48
- 3FCC483FCC483FCC483FCC483FFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- Spacing = 1
- OnClick = BtnGEClick
- ExplicitLeft = 473
+ ExplicitLeft = 471
end
object BtnFixCent: TSpeedButton
Left = 334
@@ -1083,7 +1054,8 @@ object Plot: TPlot
Hint = 'Fix Track Center'
Align = alLeft
AllowAllUp = True
- GroupIndex = 9
+ GroupIndex = 4
+ Down = True
Flat = True
Glyph.Data = {
3E020000424D3E0200000000000036000000280000000D0000000D0000000100
@@ -1109,16 +1081,17 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnFixCentClick
- ExplicitLeft = 330
+ ExplicitLeft = 333
ExplicitTop = 1
end
- object BtnGM: TSpeedButton
- Left = 518
+ object BtnMapView: TSpeedButton
+ Left = 495
Top = 0
Width = 23
Height = 25
- Hint = 'Google Map View'
+ Hint = 'Map View'
Align = alLeft
+ AllowAllUp = True
Flat = True
Glyph.Data = {
3E020000424D3E0200000000000036000000280000000D0000000D0000000100
@@ -1143,8 +1116,8 @@ object Plot: TPlot
ParentShowHint = False
ShowHint = True
Spacing = 1
- OnClick = BtnGMClick
- ExplicitLeft = 496
+ OnClick = BtnMapViewClick
+ ExplicitTop = 1
end
object BtnShowSkyplot: TSpeedButton
Left = 426
@@ -1154,7 +1127,7 @@ object Plot: TPlot
Hint = 'Show Skyplot'
Align = alLeft
AllowAllUp = True
- GroupIndex = 16
+ GroupIndex = 10
Down = True
Flat = True
Font.Charset = DEFAULT_CHARSET
@@ -1188,7 +1161,7 @@ object Plot: TPlot
Spacing = 1
Visible = False
OnClick = BtnShowSkyplotClick
- ExplicitLeft = 441
+ ExplicitLeft = 425
end
object BtnShowGrid: TSpeedButton
Left = 403
@@ -1198,7 +1171,7 @@ object Plot: TPlot
Hint = 'Show Grid'
Align = alLeft
AllowAllUp = True
- GroupIndex = 17
+ GroupIndex = 7
Down = True
Flat = True
Glyph.Data = {
@@ -1225,7 +1198,7 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnShowGridClick
- ExplicitLeft = 443
+ ExplicitLeft = 402
end
object Panel101: TPanel
AlignWithMargins = True
@@ -1267,12 +1240,13 @@ object Plot: TPlot
object Panel102: TPanel
AlignWithMargins = True
Left = 156
- Top = 1
+ Top = 2
Width = 12
Height = 21
Margins.Left = 1
- Margins.Top = 1
+ Margins.Top = 2
Margins.Right = 1
+ Margins.Bottom = 2
Align = alLeft
BevelOuter = bvNone
TabOrder = 1
@@ -1284,7 +1258,7 @@ object Plot: TPlot
Hint = 'Plot1'
Align = alTop
AllowAllUp = True
- GroupIndex = 11
+ GroupIndex = 15
Down = True
Flat = True
Margin = 0
@@ -1292,8 +1266,6 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnOn1Click
- ExplicitTop = -2
- ExplicitWidth = 19
end
object BtnOn2: TSpeedButton
Left = 0
@@ -1303,7 +1275,7 @@ object Plot: TPlot
Hint = 'Plot2'
Align = alTop
AllowAllUp = True
- GroupIndex = 12
+ GroupIndex = 16
Down = True
Flat = True
Margin = 0
@@ -1311,8 +1283,6 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnOn2Click
- ExplicitLeft = 145
- ExplicitWidth = 11
end
object BtnOn3: TSpeedButton
Left = 0
@@ -1322,7 +1292,7 @@ object Plot: TPlot
Hint = 'Plot3'
Align = alClient
AllowAllUp = True
- GroupIndex = 13
+ GroupIndex = 17
Down = True
Flat = True
Margin = 0
@@ -1330,8 +1300,7 @@ object Plot: TPlot
ShowHint = True
Spacing = 1
OnClick = BtnOn3Click
- ExplicitLeft = 145
- ExplicitWidth = 11
+ ExplicitHeight = 5
end
end
object Panel103: TPanel
@@ -1417,7 +1386,7 @@ object Plot: TPlot
Left = 0
Top = 1
Width = 48
- Height = 21
+ Height = 25
Hint = 'Obs Type'
Margins.Left = 0
Margins.Top = 1
@@ -1549,6 +1518,7 @@ object Plot: TPlot
ShowHint = True
Spacing = 0
OnClick = BtnCenterOriClick
+ ExplicitTop = 1
end
object BtnRangeList: TSpeedButton
Left = 23
@@ -1603,23 +1573,25 @@ object Plot: TPlot
end
end
object Panel12: TPanel
- Left = 541
+ Left = 518
Top = 0
- Width = 140
+ Width = 12
Height = 25
Margins.Left = 1
Margins.Top = 1
Margins.Right = 1
Margins.Bottom = 1
- Align = alLeft
+ Align = alClient
BevelOuter = bvNone
TabOrder = 2
+ ExplicitWidth = 140
object BtnAnimate: TSpeedButton
- Left = 2
+ Left = 0
Top = 0
- Width = 21
- Height = 24
+ Width = 23
+ Height = 25
Hint = 'Animation'
+ Align = alLeft
AllowAllUp = True
GroupIndex = 11
Flat = True
@@ -1697,16 +1669,18 @@ object Plot: TPlot
OnClick = BtnAnimateClick
end
object TimeScroll: TScrollBar
+ AlignWithMargins = True
Left = 25
Top = 4
- Width = 107
- Height = 16
+ Width = 225
+ Height = 17
Hint = 'Time Scroll'
Margins.Left = 2
- Margins.Top = 2
+ Margins.Top = 4
Margins.Right = 2
- Margins.Bottom = 2
+ Margins.Bottom = 4
ParentCustomHint = False
+ Align = alClient
BiDiMode = bdLeftToRight
Ctl3D = True
DoubleBuffered = False
@@ -1721,14 +1695,18 @@ object Plot: TPlot
TabOrder = 0
TabStop = False
OnChange = TimeScrollChange
+ ExplicitLeft = 24
+ ExplicitTop = 3
+ ExplicitWidth = 107
+ ExplicitHeight = 16
end
end
end
object RangeList: TListBox
- Left = 226
+ Left = 208
Top = 26
- Width = 44
- Height = 253
+ Width = 55
+ Height = 300
AutoComplete = False
BevelInner = bvNone
BevelKind = bkFlat
@@ -1736,25 +1714,29 @@ object Plot: TPlot
BorderStyle = bsNone
ItemHeight = 13
Items.Strings = (
- '0.05'
- '0.1'
- '0.2'
- '0.5'
- '1'
- '2'
- '5'
- '10'
- '20'
- '50'
- '100'
- '200'
- '500'
- '1000'
- '2000'
- '5000'
- '10000'
- '50000'
- '100000')
+ '5cm'
+ '10cm'
+ '20cm'
+ '50cm'
+ '1m'
+ '2m'
+ '5m'
+ '10m'
+ '20m'
+ '50m'
+ '100m'
+ '200m'
+ '500m'
+ '1km'
+ '2km'
+ '5km'
+ '10km'
+ '20km'
+ '50km'
+ '100km'
+ '200km'
+ '500km'
+ '1000km')
TabOrder = 2
Visible = False
OnClick = RangeListClick
@@ -1921,10 +1903,6 @@ object Plot: TPlot
Caption = 'Obs Data Source...'
OnClick = MenuSrcObsClick
end
- object MenuQcObs: TMenuItem
- Caption = 'Obs Data &QC...'
- OnClick = MenuQcObsClick
- end
object N8: TMenuItem
Caption = '-'
end
@@ -1961,13 +1939,9 @@ object Plot: TPlot
object N15: TMenuItem
Caption = '-'
end
- object MenuGE: TMenuItem
- Caption = '&Google Earth View...'
- OnClick = MenuGEClick
- end
- object MenuGM: TMenuItem
- Caption = 'Google &Map View...'
- OnClick = MenuGMClick
+ object MenuMapView: TMenuItem
+ Caption = '&Map View...'
+ OnClick = MenuMapViewClick
end
object N11: TMenuItem
Caption = '-'
@@ -2006,14 +1980,17 @@ object Plot: TPlot
end
object MenuFixCent: TMenuItem
Caption = 'Fix Track &Center'
+ Checked = True
OnClick = MenuFixCentClick
end
object MenuFixHoriz: TMenuItem
Caption = 'Fix Track &Horizontal'
+ Checked = True
OnClick = MenuFixHorizClick
end
object MenuFixVert: TMenuItem
Caption = 'Fix Track &Vertical'
+ Checked = True
OnClick = MenuFixVertClick
end
object N12: TMenuItem
@@ -2057,17 +2034,9 @@ object Plot: TPlot
object N17: TMenuItem
Caption = '-'
end
- object MenuPlotGE: TMenuItem
- Caption = 'Plot - GE View Horizontal'
- OnClick = MenuPlotGEClick
- end
- object MenuPlotGM: TMenuItem
- Caption = 'Plot - GM View Horizontal'
- OnClick = MenuPlotGMClick
- end
- object MenuPlotGEGM: TMenuItem
- Caption = 'Plot - GE/GM Views Horizontal'
- OnClick = MenuPlotGEGMClick
+ object MenuPlotMapView: TMenuItem
+ Caption = 'Plot - Map View Horizontal'
+ OnClick = MenuPlotMapViewClick
end
end
object MenuHelp: TMenuItem
@@ -2080,10 +2049,10 @@ object Plot: TPlot
end
object OpenObsDialog: TOpenDialog
Filter =
- 'RINEX OBS (*.obs,*.*o,*.*d)|*.obs;*.*o;*.*o.gz;*.*o.Z;*.*d;*.*d.' +
- 'gz;*.*d.Z|RINEX NAV (*.nav,*.gnav,*.hnav,*.qnav,*.*n,*.*g,*.*h,*' +
- '.*q,*.*p)|*.nav;*.gnav;*.hnav;*.qnav;*.*n;*.*g;*.*h;*.*q;*.*p|Al' +
- 'l (*.*)|*.*'
+ 'RINEX OBS (*.obs,*.*o,*.*d *O.rnx)|*.obs;*.*o;*.*o.gz;*.*o.Z;*.*' +
+ 'd;*.*d.gz;*.*d.Z;*O.rnx|RINEX NAV (*.nav,*.gnav,*.hnav,*.qnav,*.' +
+ '*n,*.*g,*.*h,*.*q,*.*p *N.rnx)|*.nav;*.gnav;*.hnav;*.qnav;*.*n;*' +
+ '.*g;*.*h;*.*q;*.*p;*N.rnx|All (*.*)|*.*'
Options = [ofHideReadOnly, ofNoChangeDir, ofAllowMultiSelect, ofEnableSizing]
Title = 'Open Obs/Nav Data'
Left = 306
@@ -2132,14 +2101,14 @@ object Plot: TPlot
Top = 220
end
object OpenWaypointDialog: TOpenDialog
- Filter = 'GPX File (*.gpx)|*.gpx|All (*.*)|*.*'
+ Filter = 'Waypoint File (*.gpx,*.pos)|*.gpx;*.pos|All (*.*)|*.*'
Title = 'Open Waypoint'
Left = 244
Top = 267
end
object SaveWaypointDialog: TSaveDialog
DefaultExt = 'gpx'
- Filter = 'GPX File (*.gpx)|*.gpx|All File (*.*)|*.*'
+ Filter = 'Waypoint File (*.gpx,*.pos)|*.gpx;*.pos|All File (*.*)|*.*'
Options = [ofOverwritePrompt, ofHideReadOnly, ofEnableSizing]
Title = 'Save Waypoint'
Left = 276
diff --git a/app/rtkplot/plotmain.h b/app/winapp/rtkplot/plotmain.h
similarity index 91%
rename from app/rtkplot/plotmain.h
rename to app/winapp/rtkplot/plotmain.h
index 287849d89..c63e564d0 100644
--- a/app/rtkplot/plotmain.h
+++ b/app/winapp/rtkplot/plotmain.h
@@ -22,7 +22,7 @@
#define MAXNFILE 256 // max number of solution files
#define MAXSTRBUFF 1024 // max length of stream buffer
-#define MAXWAYPNT 99 // max number of waypoints
+#define MAXWAYPNT 4096 // max number of waypoints
#define MAXMAPPATH 4096 // max number of map paths
#define MAXMAPLAYER 12 // max number of map layers
@@ -49,12 +49,13 @@
#define PLOT_SOLA 3 // plot-type: accel-plot
#define PLOT_NSAT 4 // plot-type: number-of-satellite-plot
#define PLOT_RES 5 // plot-type: residual-plot
-#define PLOT_OBS 6 // plot-type: observation-data-plot
-#define PLOT_SKY 7 // plot-type: sky-plot
-#define PLOT_DOP 8 // plot-type: dop-plot
-#define PLOT_SNR 9 // plot-type: snr/mp-plot
-#define PLOT_SNRE 10 // plot-type: snr/mp-el-plot
-#define PLOT_MPS 11 // plot-type: mp-skyplot
+#define PLOT_RESE 6 // plot-type: residual-elevation plot
+#define PLOT_OBS 7 // plot-type: observation-data-plot
+#define PLOT_SKY 8 // plot-type: sky-plot
+#define PLOT_DOP 9 // plot-type: dop-plot
+#define PLOT_SNR 10 // plot-type: snr/mp-plot
+#define PLOT_SNRE 11 // plot-type: snr/mp-el-plot
+#define PLOT_MPS 12 // plot-type: mp-skyplot
#define ORG_STARTPOS 0 // plot-origin: start position
#define ORG_ENDPOS 1 // plot-origin: end position
@@ -170,7 +171,6 @@ class TPlot : public TForm
TMenuItem *MenuWaypnt;
TMenuItem *MenuSrcSol;
TMenuItem *MenuSrcObs;
- TMenuItem *MenuQcObs;
TMenuItem *MenyCopy;
TMenuItem *MenuOptions;
@@ -219,8 +219,6 @@ class TPlot : public TForm
TMenuItem *MenuSaveImage;
TSavePictureDialog *SaveImageDialog;
TMenuItem *N15;
- TMenuItem *MenuGE;
- TSpeedButton *BtnGE;
TComboBox *FrqType;
TComboBox *ObsType2;
TMenuItem *MenuVisAna;
@@ -228,17 +226,15 @@ class TPlot : public TForm
TSpeedButton *BtnOptions;
TSpeedButton *BtnFixCent;
TMenuItem *MenuFixCent;
- TSpeedButton *BtnGM;
+ TSpeedButton *BtnMapView;
TMenuItem *MenuSaveSnrMp;
- TMenuItem *MenuGM;
+ TMenuItem *MenuMapView;
TMenuItem *MenuOpenSkyImage;
TMenuItem *MenuSkyImg;
TMenuItem *MenuShowSkyplot;
TMenuItem *Windows1;
TMenuItem *MenuMax;
- TMenuItem *MenuPlotGE;
- TMenuItem *MenuPlotGM;
- TMenuItem *MenuPlotGEGM;
+ TMenuItem *MenuPlotMapView;
TMenuItem *N17;
TPanel *Panel101;
TPanel *Panel102;
@@ -265,6 +261,7 @@ class TPlot : public TForm
TMenuItem *MenuShowGrid;
TPanel *Panel4;
TSpeedButton *BtnUdList;
+ TSpeedButton *BtnFreq;
void __fastcall FormCreate (TObject *Sender);
void __fastcall FormShow (TObject *Sender);
@@ -291,7 +288,6 @@ class TPlot : public TForm
void __fastcall MenuWaypointClick (TObject *Sender);
void __fastcall MenuSrcSolClick (TObject *Sender);
void __fastcall MenuSrcObsClick (TObject *Sender);
- void __fastcall MenuQcObsClick (TObject *Sender);
void __fastcall MenyCopyClick (TObject *Sender);
void __fastcall MenuOptionsClick (TObject *Sender);
@@ -356,22 +352,18 @@ class TPlot : public TForm
void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
void __fastcall MenuSaveDopClick(TObject *Sender);
void __fastcall MenuSaveImageClick(TObject *Sender);
- void __fastcall MenuGEClick(TObject *Sender);
- void __fastcall BtnGEClick(TObject *Sender);
void __fastcall MenuVisAnaClick(TObject *Sender);
void __fastcall BtnOptionsClick(TObject *Sender);
void __fastcall BtnFixCentClick(TObject *Sender);
void __fastcall MenuFixCentClick(TObject *Sender);
- void __fastcall BtnGMClick(TObject *Sender);
- void __fastcall MenuGMClick(TObject *Sender);
+ void __fastcall BtnMapViewClick(TObject *Sender);
+ void __fastcall MenuMapViewClick(TObject *Sender);
void __fastcall MenuSaveSnrMpClick(TObject *Sender);
void __fastcall MenuOpenSkyImageClick(TObject *Sender);
void __fastcall MenuSkyImgClick(TObject *Sender);
void __fastcall MenuShowSkyplotClick(TObject *Sender);
void __fastcall BtnShowSkyplotClick(TObject *Sender);
- void __fastcall MenuPlotGEClick(TObject *Sender);
- void __fastcall MenuPlotGMClick(TObject *Sender);
- void __fastcall MenuPlotGEGMClick(TObject *Sender);
+ void __fastcall MenuPlotMapViewClick(TObject *Sender);
void __fastcall MenuMaxClick(TObject *Sender);
void __fastcall DispGesture(TObject *Sender, const TGestureEventInfo &EventInfo,
bool &Handled);
@@ -388,6 +380,8 @@ class TPlot : public TForm
void __fastcall MenuShowGridClick(TObject *Sender);
void __fastcall BtnShowGridClick(TObject *Sender);
void __fastcall BtnUdListClick(TObject *Sender);
+ void __fastcall BtnFreqClick(TObject *Sender);
+
protected:
@@ -432,7 +426,7 @@ class TPlot : public TForm
int Drag,Xn,Yn;
double X0,Y0,Xc,Yc,Xs,Ys,Xcent,Xcent0;
- unsigned int MouseDownTick;
+ uint32_t MouseDownTick;
int GEState,GEDataState[2];
double GEHeading;
@@ -496,19 +490,20 @@ class TPlot : public TForm
void __fastcall DrawTrkImage (int level);
void __fastcall DrawTrkMap (int level);
void __fastcall DrawTrkPnt (const TIMEPOS *pos, int level, int style);
- void __fastcall DrawTrkPos (const double *rr, int type, int siz, TColor color, AnsiString label);
- void __fastcall DrawTrkStat (const TIMEPOS *pos, AnsiString header, int p);
+ void __fastcall DrawTrkPos (const double *rr, int type, int siz, TColor color, UTF8String label);
+ void __fastcall DrawTrkStat (const TIMEPOS *pos, UTF8String header, int p);
void __fastcall DrawTrkError (const TIMEPOS *pos, int style);
void __fastcall DrawTrkArrow (const TIMEPOS *pos);
void __fastcall DrawTrkVel (const TIMEPOS *vel);
- void __fastcall DrawLabel (TGraph *g, TPoint p, AnsiString label, int ha, int va);
+ void __fastcall DrawLabel (TGraph *g, TPoint p, UTF8String label, int ha, int va);
void __fastcall DrawMark (TGraph *g, TPoint p, int mark, TColor color, int size,
int rot);
void __fastcall DrawSol (int level, int type);
void __fastcall DrawSolPnt (const TIMEPOS *pos, int level, int style);
- void __fastcall DrawSolStat (const TIMEPOS *pos, AnsiString unit, int p);
+ void __fastcall DrawSolStat (const TIMEPOS *pos, UTF8String unit, int p);
void __fastcall DrawNsat (int level);
void __fastcall DrawRes (int level);
+ void __fastcall DrawResE (int level);
void __fastcall DrawPolyS (TGraph *graph, double *x, double *y, int n,
TColor color, int style);
@@ -536,7 +531,7 @@ class TPlot : public TForm
double &std, double &rms);
int __fastcall FitPos (gtime_t *time, double *opos, double *ovel);
- AnsiString __fastcall LatLonStr(const double *pos, int ndec);
+ UTF8String __fastcall LatLonStr(const double *pos, int ndec);
TColor __fastcall ObsColor (const obsd_t *obs, double az, double el);
TColor __fastcall SysColor (int sat);
TColor __fastcall SnrColor (double snr);
@@ -547,8 +542,8 @@ class TPlot : public TForm
double __fastcall TimePos (gtime_t time);
void __fastcall TimeStr(gtime_t time, int n, int tsys, char *str);
int __fastcall ExecCmd (AnsiString cmd);
- void __fastcall ShowMsg (AnsiString msg);
- void __fastcall ShowLegend (AnsiString *msgs);
+ void __fastcall ShowMsg (UTF8String msg);
+ void __fastcall ShowLegend (UTF8String *msgs);
void __fastcall LoadOpt (void);
void __fastcall SaveOpt (void);
@@ -563,10 +558,9 @@ class TPlot : public TForm
AnsiString MapImageFile;
AnsiString SkyImageFile;
AnsiString RnxOpts;
- AnsiString ApiKey;
tle_t TLEData;
gis_t Gis;
-
+
// connection settings
int RtStream[2];
AnsiString RtPath1,RtPath2;
@@ -588,7 +582,7 @@ class TPlot : public TForm
gtime_t TimeEnd;
double TimeInt;
- // map options
+ // map image options
int MapSize[2],MapScaleEq;
double MapScaleX,MapScaleY;
double MapLat,MapLon;
@@ -628,26 +622,32 @@ class TPlot : public TForm
double OOPos[3];
TColor MColor[2][8]; // {{mark1 0-7},{mark2 0-7}}
TColor CColor[4]; // {background,grid,text,line}
- TColor MapColor[MAXMAPLAYER]; // mapcolors
+ TColor MapColor [MAXMAPLAYER]; // mapcolor line
+ TColor MapColorF[MAXMAPLAYER]; // mapcolor fill
int PlotStyle;
int MarkSize;
int AnimCycle;
int RefCycle;
int Trace;
- AnsiString QcCmd,QcOpt;
+ AnsiString FontName;
+ int FontSize;
+ AnsiString ShapeFile;
AnsiString TLEFile;
AnsiString TLESatFile;
+ // map view options
+ int MapApi;
+ AnsiString MapStrs[6][3],ApiKey;
+
AnsiString Title;
- AnsiString PntName[MAXWAYPNT];
+ UnicodeString PntName[MAXWAYPNT];
double PntPos[MAXWAYPNT][3];
int NWayPnt,SelWayPnt;
int OPosType;
double OPos[3],OVel[3];
- AnsiString StrHistory [10];
- AnsiString StrMntpHist[10];
-
+ AnsiString StrHistory[10];
+
__fastcall TPlot(TComponent* Owner);
void __fastcall ReadSol (TStrings *files, int sel);
void __fastcall ReadObs (TStrings *files);
@@ -655,16 +655,20 @@ class TPlot : public TForm
void __fastcall ReadMapData(AnsiString file);
void __fastcall ReadSkyData(AnsiString file);
void __fastcall ReadSkyTag (AnsiString file);
+ void __fastcall ReadGpxFile(AnsiString file);
+ void __fastcall ReadPosFile(AnsiString file);
void __fastcall ReadWaypoint(AnsiString file);
+ void __fastcall SaveGpxFile(AnsiString file);
+ void __fastcall SavePosFile(AnsiString file);
void __fastcall SaveWaypoint(AnsiString file);
void __fastcall UpdateSky (void);
+ void __fastcall UpdatePlot (void);
+ void __fastcall GenObsSlip(int *LLI);
void __fastcall ReadElMaskData(AnsiString file);
int __fastcall GetCurrentPos(double *rr);
int __fastcall GetCenterPos(double *rr);
void __fastcall SetTrkCent(double lat, double lon);
- void __fastcall UpdatePlot(void);
- void __fastcall Refresh_GEView(void);
- void __fastcall Refresh_GMView(void);
+ void __fastcall Refresh_MapView(void);
};
//---------------------------------------------------------------------------
extern PACKAGE TPlot *Plot;
diff --git a/app/rtkplot/plotopt.cpp b/app/winapp/rtkplot/plotopt.cpp
similarity index 90%
rename from app/rtkplot/plotopt.cpp
rename to app/winapp/rtkplot/plotopt.cpp
index a981caf52..b37417e2a 100644
--- a/app/rtkplot/plotopt.cpp
+++ b/app/winapp/rtkplot/plotopt.cpp
@@ -29,7 +29,7 @@ void __fastcall TPlotOptDialog::FormShow(TObject *Sender)
{
char s1[64],s2[64];
AnsiString s;
- int i,marks[]={1,2,3,4,5,10,15,20};
+ int marks[]={1,2,3,4,5,10,15,20};
TimeLabel ->ItemIndex=Plot->TimeLabel;
LatLonFmt ->ItemIndex=Plot->LatLonFmt;
@@ -45,7 +45,7 @@ void __fastcall TPlotOptDialog::FormShow(TObject *Sender)
ShowScale ->ItemIndex=Plot->ShowScale;
ShowCompass->ItemIndex=Plot->ShowCompass;
PlotStyle ->ItemIndex=Plot->PlotStyle;
- for (i=0;i<8;i++) {
+ for (int i=0;i<8;i++) {
if (marks[i]==Plot->MarkSize) MarkSize->ItemIndex=i;
}
MColor1 ->Color=Plot->MColor[0][1];
@@ -65,13 +65,14 @@ void __fastcall TPlotOptDialog::FormShow(TObject *Sender)
Color3 ->Color=Plot->CColor[2];
Color4 ->Color=Plot->CColor[3];
- FontOpt->Assign(Plot->Font);
+ //FontOpt->Assign(Plot->Font);
+ FontOpt->Name=Plot->FontName;
+ FontOpt->Size=Plot->FontSize;
UpdateFont();
ElMask ->Text=s.sprintf("%g",Plot->ElMask);
MaxDop ->Text=s.sprintf("%g",Plot->MaxDop);
MaxMP ->Text=s.sprintf("%g",Plot->MaxMP );
- YRange ->Text=s.sprintf("%g",Plot->YRange);
Origin ->ItemIndex=Plot->Origin;
RcvPos ->ItemIndex=Plot->RcvPos;
RefPos1->Text=s.sprintf("%.9f",Plot->OOPos[0]*R2D);
@@ -92,17 +93,32 @@ void __fastcall TPlotOptDialog::FormShow(TObject *Sender)
BuffSize->Text=s.sprintf("%d",Plot->RtBuffSize);
ChkTimeSync->Checked=Plot->TimeSyncOut;
EditTimeSync->Text=s.sprintf("%d",Plot->TimeSyncPort);
- QcCmd ->Text=Plot->QcCmd;
RnxOpts->Text=Plot->RnxOpts;
- ApiKey ->Text=Plot->ApiKey;
+ ShapeFile->Text=Plot->ShapeFile;
TLEFile->Text=Plot->TLEFile;
TLESatFile->Text=Plot->TLESatFile;
+ for (int i=0;iItems->Count;i++) {
+ double range;
+ char unit[32]="";
+
+ s=YRange->Items->Strings[i];
+ if (sscanf(s.c_str(),"%lf%31s",&range,unit)<1) continue;
+ if (!strcmp(unit,"cm")) range*=0.01;
+ else if (!strcmp(unit,"km")) range*=1000.0;
+ if (range==Plot->YRange) {
+ YRange->ItemIndex=i;
+ break;
+ }
+ }
UpdateEnable();
}
//---------------------------------------------------------------------------
void __fastcall TPlotOptDialog::BtnOKClick(TObject *Sender)
{
+ AnsiString s;
+ double range;
+ char unit[32];
int marks[]={1,2,3,4,5,10,15,20};
Plot->TimeLabel =TimeLabel ->ItemIndex;
@@ -137,8 +153,10 @@ void __fastcall TPlotOptDialog::BtnOKClick(TObject *Sender)
Plot->CColor[2]=Color3 ->Color;
Plot->CColor[3]=Color4 ->Color;
+ Plot->FontName=FontOpt->Name;
+ Plot->FontSize=FontOpt->Size;
Plot->Font->Assign(FontOpt);
-
+
Plot->ElMask=str2dbl(ElMask->Text);
Plot->MaxDop=str2dbl(MaxDop->Text);
Plot->MaxMP =str2dbl(MaxMP ->Text);
@@ -163,11 +181,17 @@ void __fastcall TPlotOptDialog::BtnOKClick(TObject *Sender)
Plot->TimeSyncOut=ChkTimeSync->Checked;
Plot->TimeSyncPort=EditTimeSync->Text.ToInt();
Plot->ExSats=ExSats->Text;
- Plot->QcCmd =QcCmd->Text;
Plot->RnxOpts=RnxOpts->Text;
- Plot->ApiKey=ApiKey->Text;
+ Plot->ShapeFile=ShapeFile->Text;
Plot->TLEFile=TLEFile->Text;
Plot->TLESatFile=TLESatFile->Text;
+
+ s=YRange->Text;
+ if (sscanf(s.c_str(),"%lf%31s",&range,unit)>=1) {
+ if (!strcmp(unit,"cm")) range*=0.01;
+ else if (!strcmp(unit,"km")) range*=1000.0;
+ Plot->YRange=range;
+ }
}
//---------------------------------------------------------------------------
void __fastcall TPlotOptDialog::MColorClick(TObject *Sender)
@@ -214,16 +238,18 @@ void __fastcall TPlotOptDialog::BtnFontClick(TObject *Sender)
UpdateFont();
}
//---------------------------------------------------------------------------
-void __fastcall TPlotOptDialog::BtnQcCmdClick(TObject *Sender)
+void __fastcall TPlotOptDialog::BtnShapeFileClick(TObject *Sender)
{
- OpenDialog->FileName=QcCmd->Text;
+ OpenDialog->FileName=ShapeFile->Text;
+ OpenDialog->FilterIndex=3;
if (!OpenDialog->Execute()) return;
- QcCmd->Text=OpenDialog->FileName;
+ ShapeFile->Text=OpenDialog->FileName;
}
//---------------------------------------------------------------------------
void __fastcall TPlotOptDialog::BtnTLEFileClick(TObject *Sender)
{
OpenDialog->FileName=TLEFile->Text;
+ OpenDialog->FilterIndex=1;
if (!OpenDialog->Execute()) return;
TLEFile->Text=OpenDialog->FileName;
}
@@ -231,6 +257,7 @@ void __fastcall TPlotOptDialog::BtnTLEFileClick(TObject *Sender)
void __fastcall TPlotOptDialog::BtnTLESatFileClick(TObject *Sender)
{
OpenDialog->FileName=TLESatFile->Text;
+ OpenDialog->FilterIndex=1;
if (!OpenDialog->Execute()) return;
TLESatFile->Text=OpenDialog->FileName;
}
@@ -243,6 +270,7 @@ void __fastcall TPlotOptDialog::BtnRefPosClick(TObject *Sender)
RefDialog->RovPos[2]=str2dbl(RefPos3->Text);
RefDialog->Left=Left+Width/2-RefDialog->Width/2;
RefDialog->Top=Top+Height/2-RefDialog->Height/2;
+ RefDialog->Opt=1;
if (RefDialog->ShowModal()!=mrOk) return;
RefPos1->Text=s.sprintf("%.9f",RefDialog->Pos[0]);
RefPos2->Text=s.sprintf("%.9f",RefDialog->Pos[1]);
@@ -312,3 +340,4 @@ void __fastcall TPlotOptDialog::ChkTimeSyncClick(TObject *Sender)
}
//---------------------------------------------------------------------------
+
diff --git a/app/rtkplot/plotopt.dfm b/app/winapp/rtkplot/plotopt.dfm
similarity index 93%
rename from app/rtkplot/plotopt.dfm
rename to app/winapp/rtkplot/plotopt.dfm
index 23af25502..94ef27771 100644
--- a/app/rtkplot/plotopt.dfm
+++ b/app/winapp/rtkplot/plotopt.dfm
@@ -4,7 +4,7 @@ object PlotOptDialog: TPlotOptDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'Options'
- ClientHeight = 421
+ ClientHeight = 400
ClientWidth = 552
Color = clWhite
Font.Charset = DEFAULT_CHARSET
@@ -32,8 +32,7 @@ object PlotOptDialog: TPlotOptDialog
Color = clWhite
ParentBackground = False
TabOrder = 2
- ExplicitLeft = 4
- ExplicitTop = -4
+ ExplicitTop = -1
object Label1: TLabel
Left = 373
Top = 123
@@ -86,9 +85,9 @@ object PlotOptDialog: TPlotOptDialog
object Label8: TLabel
Left = 193
Top = 167
- Width = 68
+ Width = 60
Height = 13
- Caption = 'Y-Range (+/-)'
+ Caption = 'Y-Range ('#177')'
end
object Label10: TLabel
Left = 373
@@ -247,9 +246,9 @@ object PlotOptDialog: TPlotOptDialog
object Label30: TLabel
Left = 193
Top = 279
- Width = 39
+ Width = 56
Height = 13
- Caption = 'QC Cmd'
+ Caption = 'RINEX Opts'
end
object Label31: TLabel
Left = 12
@@ -275,20 +274,20 @@ object PlotOptDialog: TPlotOptDialog
object Label33: TLabel
Left = 193
Top = 301
- Width = 51
+ Width = 49
Height = 13
- Caption = 'RINEX Opt'
+ Caption = 'Shape File'
end
object Label34: TLabel
Left = 193
- Top = 325
+ Top = 323
Width = 43
Height = 13
Caption = 'TLE Data'
end
object Label35: TLabel
Left = 193
- Top = 347
+ Top = 345
Width = 52
Height = 13
Caption = 'TLE Sat No'
@@ -302,7 +301,7 @@ object PlotOptDialog: TPlotOptDialog
end
object BtnTLEView: TSpeedButton
Left = 500
- Top = 319
+ Top = 321
Width = 21
Height = 21
Flat = True
@@ -326,11 +325,12 @@ object PlotOptDialog: TPlotOptDialog
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00}
+ Spacing = 0
OnClick = BtnTLEViewClick
end
object BtnTLESatView: TSpeedButton
Left = 500
- Top = 341
+ Top = 343
Width = 21
Height = 21
Flat = True
@@ -354,6 +354,7 @@ object PlotOptDialog: TPlotOptDialog
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00}
+ Spacing = 0
OnClick = BtnTLESatViewClick
end
object Label37: TLabel
@@ -363,13 +364,6 @@ object PlotOptDialog: TPlotOptDialog
Height = 13
Caption = 'Max Multipath'
end
- object Label38: TLabel
- Left = 193
- Top = 369
- Width = 95
- Height = 13
- Caption = 'API Key for GMView'
- end
object Panel1: TPanel
Left = 361
Top = 186
@@ -428,9 +422,7 @@ object PlotOptDialog: TPlotOptDialog
Height = 21
Style = csDropDownList
DropDownCount = 20
- ItemIndex = 0
TabOrder = 22
- Text = 'Start Pos'
OnChange = OriginChange
Items.Strings = (
'Start Pos'
@@ -441,17 +433,7 @@ object PlotOptDialog: TPlotOptDialog
'Lat/Lon/Hgt'
'Auto Input'
'Image Center'
- 'Map Center'
- 'Waypnt1'
- 'Waypnt2'
- 'Waypnt3'
- 'Waypnt4'
- 'Waypnt5'
- 'Waypnt6'
- 'Waypnt7'
- 'Waypnt8'
- 'Waypnt9'
- 'Waypnt10')
+ 'Map Center')
end
object Color1: TPanel
Left = 467
@@ -612,7 +594,7 @@ object PlotOptDialog: TPlotOptDialog
OnClick = MColorClick
end
object MColor2: TPanel
- Left = 479
+ Left = 480
Top = 11
Width = 13
Height = 19
@@ -624,7 +606,7 @@ object PlotOptDialog: TPlotOptDialog
OnClick = MColorClick
end
object MColor3: TPanel
- Left = 491
+ Left = 493
Top = 11
Width = 13
Height = 19
@@ -636,7 +618,7 @@ object PlotOptDialog: TPlotOptDialog
OnClick = MColorClick
end
object MColor4: TPanel
- Left = 503
+ Left = 506
Top = 11
Width = 13
Height = 19
@@ -648,7 +630,7 @@ object PlotOptDialog: TPlotOptDialog
OnClick = MColorClick
end
object MColor5: TPanel
- Left = 515
+ Left = 519
Top = 11
Width = 13
Height = 19
@@ -740,25 +722,32 @@ object PlotOptDialog: TPlotOptDialog
Width = 77
Height = 21
DropDownCount = 20
- ItemIndex = 0
+ ItemIndex = 4
TabOrder = 20
- Text = '0.05'
+ Text = '1m'
Items.Strings = (
- '0.05'
- '0.1'
- '0.2'
- '0.5'
- '1'
- '2'
- '5'
- '10'
- '20'
- '50'
- '100'
- '500'
- '1000'
- '5000'
- '10000')
+ '5cm'
+ '10cm'
+ '20cm'
+ '5cm'
+ '1m'
+ '2m'
+ '5m'
+ '10m'
+ '20m'
+ '50m'
+ '100m'
+ '500m'
+ '1km'
+ '2km'
+ '5km'
+ '10km'
+ '20km'
+ '50km'
+ '100km'
+ '200km'
+ '500km'
+ '1000km')
end
object ShowLabel: TComboBox
Left = 283
@@ -831,14 +820,14 @@ object PlotOptDialog: TPlotOptDialog
object GroupBox1: TGroupBox
Left = 4
Top = 279
- Width = 174
+ Width = 175
Height = 61
Caption = 'Satellite System'
TabOrder = 11
object NavSys1: TCheckBox
Left = 8
- Top = 19
- Width = 45
+ Top = 17
+ Width = 40
Height = 17
Caption = 'GPS'
Checked = True
@@ -847,50 +836,50 @@ object PlotOptDialog: TPlotOptDialog
end
object NavSys2: TCheckBox
Left = 49
- Top = 19
- Width = 69
+ Top = 17
+ Width = 40
Height = 17
Caption = 'GLO'
TabOrder = 1
end
- object NavSys5: TCheckBox
- Left = 8
- Top = 41
- Width = 57
- Height = 17
- Caption = 'SBS'
- TabOrder = 4
- end
object NavSys3: TCheckBox
Left = 90
- Top = 19
- Width = 57
+ Top = 17
+ Width = 40
Height = 17
Caption = 'GAL'
TabOrder = 2
end
object NavSys4: TCheckBox
Left = 131
- Top = 19
- Width = 47
+ Top = 17
+ Width = 40
Height = 17
Caption = 'QZS'
TabOrder = 3
end
object NavSys6: TCheckBox
- Left = 49
- Top = 41
+ Left = 8
+ Top = 39
Width = 57
Height = 17
Caption = 'BDS'
- TabOrder = 5
+ TabOrder = 4
end
object NavSys7: TCheckBox
- Left = 90
- Top = 41
+ Left = 49
+ Top = 39
+ Width = 57
+ Height = 17
+ Caption = 'NavIC'
+ TabOrder = 5
+ end
+ object NavSys5: TCheckBox
+ Left = 100
+ Top = 39
Width = 57
Height = 17
- Caption = 'IRN'
+ Caption = 'SBS'
TabOrder = 6
end
end
@@ -1001,20 +990,20 @@ object PlotOptDialog: TPlotOptDialog
Width = 77
Height = 21
DropDownCount = 20
+ ItemIndex = 1
TabOrder = 9
Text = '30'
Items.Strings = (
'10'
'30'
'50'
- '100'
- '200'
- '500')
+ '80'
+ '100')
end
object ExSats: TEdit
Left = 86
Top = 342
- Width = 92
+ Width = 93
Height = 21
TabOrder = 12
end
@@ -1035,7 +1024,7 @@ object PlotOptDialog: TPlotOptDialog
Text = '100'
end
object MColor6: TPanel
- Left = 527
+ Left = 532
Top = 11
Width = 13
Height = 19
@@ -1046,13 +1035,12 @@ object PlotOptDialog: TPlotOptDialog
TabOrder = 28
OnClick = MColorClick
end
- object QcCmd: TEdit
+ object ShapeFile: TEdit
Left = 254
- Top = 276
- Width = 290
+ Top = 298
+ Width = 266
Height = 21
- TabOrder = 53
- Text = 'teqc'
+ TabOrder = 54
end
object RcvPos: TComboBox
Left = 102
@@ -1083,7 +1071,7 @@ object PlotOptDialog: TPlotOptDialog
OnClick = MColorClick
end
object MColor8: TPanel
- Left = 479
+ Left = 480
Top = 33
Width = 13
Height = 19
@@ -1095,7 +1083,7 @@ object PlotOptDialog: TPlotOptDialog
OnClick = MColorClick
end
object MColor9: TPanel
- Left = 491
+ Left = 493
Top = 33
Width = 13
Height = 19
@@ -1107,7 +1095,7 @@ object PlotOptDialog: TPlotOptDialog
OnClick = MColorClick
end
object MColor10: TPanel
- Left = 503
+ Left = 506
Top = 33
Width = 13
Height = 19
@@ -1119,7 +1107,7 @@ object PlotOptDialog: TPlotOptDialog
OnClick = MColorClick
end
object MColor11: TPanel
- Left = 515
+ Left = 519
Top = 33
Width = 13
Height = 19
@@ -1131,7 +1119,7 @@ object PlotOptDialog: TPlotOptDialog
OnClick = MColorClick
end
object MColor12: TPanel
- Left = 527
+ Left = 532
Top = 33
Width = 13
Height = 19
@@ -1157,21 +1145,21 @@ object PlotOptDialog: TPlotOptDialog
end
object RnxOpts: TEdit
Left = 254
- Top = 298
+ Top = 276
Width = 290
Height = 21
- TabOrder = 54
+ TabOrder = 53
end
object TLEFile: TEdit
Left = 254
Top = 320
Width = 245
Height = 21
- TabOrder = 55
+ TabOrder = 56
end
object BtnTLEFile: TButton
Left = 520
- Top = 319
+ Top = 320
Width = 25
Height = 22
Caption = '...'
@@ -1181,7 +1169,7 @@ object PlotOptDialog: TPlotOptDialog
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
- TabOrder = 56
+ TabOrder = 57
OnClick = BtnTLEFileClick
end
object TLESatFile: TEdit
@@ -1189,11 +1177,11 @@ object PlotOptDialog: TPlotOptDialog
Top = 342
Width = 245
Height = 21
- TabOrder = 57
+ TabOrder = 58
end
object BtnTLESatFile: TButton
Left = 520
- Top = 341
+ Top = 342
Width = 25
Height = 22
Caption = '...'
@@ -1203,7 +1191,7 @@ object PlotOptDialog: TPlotOptDialog
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
- TabOrder = 58
+ TabOrder = 59
OnClick = BtnTLESatFileClick
end
object MaxMP: TComboBox
@@ -1212,7 +1200,7 @@ object PlotOptDialog: TPlotOptDialog
Width = 77
Height = 21
DropDownCount = 20
- TabOrder = 59
+ TabOrder = 60
Text = '10'
Items.Strings = (
'1'
@@ -1228,7 +1216,7 @@ object PlotOptDialog: TPlotOptDialog
Top = 208
Width = 77
Height = 21
- TabOrder = 60
+ TabOrder = 61
Text = '0'
end
object ChkTimeSync: TCheckBox
@@ -1237,20 +1225,28 @@ object PlotOptDialog: TPlotOptDialog
Width = 87
Height = 17
Caption = 'Time Sync Port'
- TabOrder = 61
+ TabOrder = 62
OnClick = ChkTimeSyncClick
end
- object ApiKey: TEdit
- Left = 292
- Top = 364
- Width = 253
- Height = 21
- TabOrder = 62
+ object BtnShapeFile: TButton
+ Left = 520
+ Top = 298
+ Width = 25
+ Height = 22
+ Caption = '...'
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -9
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 55
+ OnClick = BtnShapeFileClick
end
end
object BtnCancel: TButton
- Left = 455
- Top = 388
+ Left = 453
+ Top = 367
Width = 92
Height = 29
Caption = '&Cancel'
@@ -1258,8 +1254,8 @@ object PlotOptDialog: TPlotOptDialog
TabOrder = 1
end
object BtnOK: TButton
- Left = 363
- Top = 388
+ Left = 357
+ Top = 367
Width = 92
Height = 29
Caption = '&OK'
@@ -1268,8 +1264,8 @@ object PlotOptDialog: TPlotOptDialog
OnClick = BtnOKClick
end
object ColorDialog: TColorDialog
- Left = 22
- Top = 374
+ Left = 30
+ Top = 371
end
object FontDialog: TFontDialog
Font.Charset = DEFAULT_CHARSET
@@ -1278,15 +1274,16 @@ object PlotOptDialog: TPlotOptDialog
Font.Name = 'Tahoma'
Font.Style = []
Options = []
- Left = 95
- Top = 373
+ Left = 86
+ Top = 371
end
object OpenDialog: TOpenDialog
Filter =
'Text File (*.txt)|*.txt|Position File (*.pos,*.snx)|*.pos;*.snx|' +
- 'All File (*.*)|*.*'
+ 'Shape File (*.shp)|*.shp|All File (*.*)|*.*'
Options = [ofHideReadOnly, ofNoChangeDir, ofEnableSizing]
- Left = 60
- Top = 374
+ Title = 'Open File'
+ Left = 58
+ Top = 371
end
end
diff --git a/app/rtkplot/plotopt.h b/app/winapp/rtkplot/plotopt.h
similarity index 97%
rename from app/rtkplot/plotopt.h
rename to app/winapp/rtkplot/plotopt.h
index fe9b5943d..a990efd36 100644
--- a/app/rtkplot/plotopt.h
+++ b/app/winapp/rtkplot/plotopt.h
@@ -106,7 +106,7 @@ class TPlotOptDialog : public TForm
TEdit *RefCycle;
TPanel *MColor6;
TCheckBox *NavSys6;
- TEdit *QcCmd;
+ TEdit *ShapeFile;
TLabel *Label30;
TLabel *Label31;
TComboBox *RcvPos;
@@ -135,8 +135,7 @@ class TPlotOptDialog : public TForm
TCheckBox *NavSys7;
TEdit *EditTimeSync;
TCheckBox *ChkTimeSync;
- TLabel *Label38;
- TEdit *ApiKey;
+ TButton *BtnShapeFile;
void __fastcall BtnOKClick(TObject *Sender);
void __fastcall FormShow(TObject *Sender);
void __fastcall BtnColor1Click(TObject *Sender);
@@ -150,11 +149,11 @@ class TPlotOptDialog : public TForm
void __fastcall BtnFontClick(TObject *Sender);
void __fastcall RcvPosChange(TObject *Sender);
void __fastcall BtnTLEFileClick(TObject *Sender);
- void __fastcall BtnQcCmdClick(TObject *Sender);
void __fastcall BtnTLESatFileClick(TObject *Sender);
void __fastcall BtnTLEViewClick(TObject *Sender);
void __fastcall BtnTLESatViewClick(TObject *Sender);
void __fastcall ChkTimeSyncClick(TObject *Sender);
+ void __fastcall BtnShapeFileClick(TObject *Sender);
private:
TFont *FontOpt;
void __fastcall UpdateFont(void);
diff --git a/app/rtkplot/pntdlg.cpp b/app/winapp/rtkplot/pntdlg.cpp
similarity index 86%
rename from app/rtkplot/pntdlg.cpp
rename to app/winapp/rtkplot/pntdlg.cpp
index 4f52a4abd..f9befc724 100644
--- a/app/rtkplot/pntdlg.cpp
+++ b/app/winapp/rtkplot/pntdlg.cpp
@@ -6,6 +6,9 @@
#include "refdlg.h"
#include "pntdlg.h"
#include "plotmain.h"
+
+#define PNTLIST_WIDTH 372
+
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
@@ -21,18 +24,19 @@ static double str2dbl(AnsiString str)
__fastcall TPntDialog::TPntDialog(TComponent* Owner)
: TForm(Owner)
{
- PntList->RowCount=MAXWAYPNT;
+ PntList->RowCount=1;
}
//---------------------------------------------------------------------------
void __fastcall TPntDialog::FormShow(TObject *Sender)
{
- int width[]={90,90,90};
+ double scale;
+ int width[]={90,90,80,90};
- FontScale=Screen->PixelsPerInch;
- for (int i=0;i<3;i++) {
- PntList->ColWidths[i]=width[i]*FontScale/96;
+ scale=(double)PntList->Width/PNTLIST_WIDTH;
+
+ for (int i=0;i<4;i++) {
+ PntList->ColWidths[i]=(int)(width[i]*scale);
}
- PntList->DefaultRowHeight=17*FontScale/96;
SetPoint();
}
//---------------------------------------------------------------------------
@@ -51,7 +55,8 @@ void __fastcall TPntDialog::BtnAddClick(TObject *Sender)
ecef2pos(rr,pos);
PntList->Cells[0][i]=s.sprintf("%.9f",pos[0]*R2D);
PntList->Cells[1][i]=s.sprintf("%.9f",pos[1]*R2D);
- PntList->Cells[2][i]=s.sprintf("Point%02d",i+1);
+ PntList->Cells[2][i]=s.sprintf("%.4f",pos[2]);
+ PntList->Cells[3][i]=s.sprintf("Point%02d",i+1);
UpdatePoint();
}
//---------------------------------------------------------------------------
@@ -92,8 +97,8 @@ void __fastcall TPntDialog::UpdatePoint(void)
if (PntList->Cells[2][i]=="") continue;
Plot->PntPos[n][0]=str2dbl(PntList->Cells[0][i]);
Plot->PntPos[n][1]=str2dbl(PntList->Cells[1][i]);
- Plot->PntPos[n][2]=0.0;
- Plot->PntName[n++]=PntList->Cells[2][i];
+ Plot->PntPos[n][2]=str2dbl(PntList->Cells[2][i]);
+ Plot->PntName[n++]=PntList->Cells[3][i];
}
Plot->NWayPnt=n;
Plot->UpdatePlot();
@@ -104,12 +109,12 @@ void __fastcall TPntDialog::SetPoint(void)
AnsiString s;
for (int i=0;iNWayPnt;i++) {
- wchar_t buff[256];
- ::MultiByteToWideChar(CP_UTF8,0,Plot->PntName[i].c_str(),-1,buff,512);
PntList->Cells[0][i]=s.sprintf("%.9f",Plot->PntPos[i][0]);
PntList->Cells[1][i]=s.sprintf("%.9f",Plot->PntPos[i][1]);
- PntList->Cells[2][i]=buff;
+ PntList->Cells[2][i]=s.sprintf("%.4f",Plot->PntPos[i][2]);
+ PntList->Cells[3][i]=Plot->PntName[i];
}
+ PntList->RowCount=Plot->NWayPnt;
}
//---------------------------------------------------------------------------
void __fastcall TPntDialog::PntListClick(TObject *Sender)
diff --git a/app/rtkplot/pntdlg.dfm b/app/winapp/rtkplot/pntdlg.dfm
similarity index 84%
rename from app/rtkplot/pntdlg.dfm
rename to app/winapp/rtkplot/pntdlg.dfm
index d8fcab243..dc2de3caf 100644
--- a/app/rtkplot/pntdlg.dfm
+++ b/app/winapp/rtkplot/pntdlg.dfm
@@ -4,11 +4,11 @@ object PntDialog: TPntDialog
BorderIcons = [biSystemMenu]
Caption = 'Waypoint'
ClientHeight = 344
- ClientWidth = 294
+ ClientWidth = 374
Color = clWhite
- Constraints.MaxWidth = 310
+ Constraints.MaxWidth = 390
Constraints.MinHeight = 200
- Constraints.MinWidth = 310
+ Constraints.MinWidth = 390
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
@@ -22,13 +22,14 @@ object PntDialog: TPntDialog
object Panel1: TPanel
Left = 0
Top = 0
- Width = 294
+ Width = 374
Height = 17
Align = alTop
BevelOuter = bvNone
TabOrder = 0
+ ExplicitWidth = 294
object Label2: TLabel
- Left = 213
+ Left = 290
Top = 2
Width = 27
Height = 13
@@ -48,26 +49,34 @@ object PntDialog: TPntDialog
Height = 13
Caption = 'Longitude ('#176')'
end
+ object Label4: TLabel
+ Left = 200
+ Top = 2
+ Width = 50
+ Height = 13
+ Caption = 'Height (m)'
+ end
end
object Panel2: TPanel
Left = 0
Top = 17
- Width = 294
+ Width = 374
Height = 290
Align = alClient
BevelInner = bvLowered
BevelOuter = bvNone
Caption = 'Panel2'
TabOrder = 1
+ ExplicitWidth = 294
object PntList: TStringGrid
Left = 1
Top = 1
- Width = 292
+ Width = 372
Height = 288
Align = alClient
BorderStyle = bsNone
Color = clSilver
- ColCount = 3
+ ColCount = 4
DefaultRowHeight = 17
FixedColor = clWhite
FixedCols = 0
@@ -80,22 +89,26 @@ object PntDialog: TPntDialog
OnClick = PntListClick
OnDblClick = PntListDblClick
OnSetEditText = PntListSetEditText
+ ExplicitTop = 0
+ ExplicitWidth = 382
ColWidths = (
89
95
- 76)
+ 76
+ 64)
end
end
object Panel3: TPanel
Left = 0
Top = 307
- Width = 294
+ Width = 374
Height = 37
Align = alBottom
BevelOuter = bvNone
TabOrder = 2
+ ExplicitWidth = 294
object BtnAdd: TButton
- Left = 1
+ Left = 3
Top = 6
Width = 75
Height = 29
@@ -104,7 +117,7 @@ object PntDialog: TPntDialog
OnClick = BtnAddClick
end
object BtnClose: TButton
- Left = 214
+ Left = 296
Top = 6
Width = 75
Height = 29
@@ -113,7 +126,7 @@ object PntDialog: TPntDialog
OnClick = BtnCloseClick
end
object BtnDel: TButton
- Left = 78
+ Left = 80
Top = 6
Width = 75
Height = 29
diff --git a/app/rtkplot/pntdlg.h b/app/winapp/rtkplot/pntdlg.h
similarity index 98%
rename from app/rtkplot/pntdlg.h
rename to app/winapp/rtkplot/pntdlg.h
index 3583fd400..b17518ad9 100644
--- a/app/rtkplot/pntdlg.h
+++ b/app/winapp/rtkplot/pntdlg.h
@@ -25,6 +25,7 @@ class TPntDialog : public TForm
TOpenDialog *OpenDialog;
TSaveDialog *SaveDialog;
TPanel *Panel3;
+ TLabel *Label4;
void __fastcall FormShow(TObject *Sender);
void __fastcall BtnDelClick(TObject *Sender);
void __fastcall BtnAddClick(TObject *Sender);
diff --git a/app/rtkplot/rtkplot.cbproj b/app/winapp/rtkplot/rtkplot.cbproj
similarity index 55%
rename from app/rtkplot/rtkplot.cbproj
rename to app/winapp/rtkplot/rtkplot.cbproj
index 55646f16b..f40f4f395 100644
--- a/app/rtkplot/rtkplot.cbproj
+++ b/app/winapp/rtkplot/rtkplot.cbproj
@@ -6,9 +6,9 @@
True
Release
VCL
- 18.6
- Win32
- 1
+ 18.8
+ Win64
+ 3
Application
@@ -52,6 +52,12 @@
true
true
+
+ true
+ Cfg_2
+ true
+ true
+
true
false
@@ -62,8 +68,8 @@
false
false
rtkplot
- ..\..\src\rcv\;..\..\src\;..\appcmn\;$(ILINK_LibraryPath)
- ..\..\src\rcv\;..\appcmn\;..\..\src\;$(IncludePath)
+ ..\..\..\src\;..\..\..\src\rcv\;..\..\src\rcv\;..\..\src\;..\appcmn\;$(ILINK_LibraryPath)
+ ..\..\..\src\;..\..\..\src\rcv\;..\..\src\rcv\;..\appcmn\;..\..\src\;$(IncludePath)
false
None
false
@@ -89,12 +95,12 @@
..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\..\src;..\rtkpost;..\src;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;D:\proj\rtklib_2.1\gui;$(DCC_ResourcePath)
JPHNE
$(BDS)\include;..\..\src;..\appcmn;$(BCC_IncludePath)
+ WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;ENAIRN;NFREQ=5;NEXOBS=3;$(BCC_Defines)
true
exe
_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(TASM_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;ENAIRN;NEXOBS=3;NFREQ=3;$(BCC_Defines)
_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(BRCC_Defines)
-tWM
Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
@@ -106,11 +112,16 @@
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;NEXOBS=3;NFREQ=3;$(BCC_Defines)
_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(TASM_Defines)
_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=3;$(BRCC_Defines)
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
-V
@@ -138,9 +149,17 @@
false
1033
false
+ Debug
_DEBUG;$(BCC_Defines);$(BCC_Defines)
+ true
+ rtl.lib;vcl.lib;vclx.lib;vclimg.lib;bindengine.lib;bcbie.lib;vclie.lib
+ D:\share
+ true
+ 1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
-$O+
@@ -158,6 +177,18 @@
1033
Debug
-x 4
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
+
+
+ true
+ rtl.lib;vcl.lib;vclx.lib;vclimg.lib;bindengine.lib;bcbie.lib;vclie.lib
+ true
+ 1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
+ -x 3
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
+ PerMonitorV2
@@ -190,6 +221,12 @@
..\appcmn\fileoptdlg.h
10
+
+
+ dfm
+ ..\appcmn\freqdlg.h
+ 63
+
30
@@ -207,6 +244,12 @@
..\appcmn\keydlg.h
27
+
+
+ dfm
+ ..\appcmn\mntpoptdlg.h
+ 62
+
34
@@ -255,21 +298,22 @@
conndlg.h
1
-
-
- dfm
- geview.h
- 48
+
+
+ mapoptdlg.h
+ 56
-
-
- gmview.h
- 49
+
+
+ dfm
+ mapview.h
+ 63
-
-
- mapdlg.h
- 56
+
+
+ dfm
+ mapviewopt.h
+ 63
39
@@ -313,12 +357,6 @@
-1
1
-
- 9
-
- satdlg.h
- 27
-
skydlg.h
@@ -330,141 +368,112 @@
vmapdlg.h
60
-
- 35
- 19
-
-
- 7
- 23
-
-
- 59
-
-
- 37
- 20
-
-
- 5
- 28
+
+ 44
-
+
45
- 15
-
- 51
+
+ 46
-
- 35
- 19
+
+ 47
-
- 50
+
+ 48
-
- 61
+
+ 49
-
- 37
- 20
+
+ 51
-
- 36
- 18
+
+ 43
-
- 44
- 16
+
+ 41
-
+
39
- 21
-
-
- 46
-
- 56
+
+ 38
-
- 58
+
+ 37
-
- 40
- 17
+
+ 36
-
- 38
- 22
+
+ 35
-
- 61
+
+ 34
-
- 36
- 18
+
+ 33
-
- 6
- 24
+
+ 31
-
+
52
-
+
53
-
+
54
-
+
55
-
- 4
- 32
+
+ 56
-
- 8
- 25
+
+ 57
-
- 5
- 28
+
+ 58
-
- 44
- 16
+
+ 59
-
- 48
+
+ 60
-
-
+
+ 61
+
+
+
+
+
-
-
-
-
+
+
+
-
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
Cfg_2
Base
@@ -531,8 +540,8 @@
False
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
+ Embarcadero C++Builder Office 2000 サーバー パッケージ
+ Embarcadero C++Builder Office XP サーバー パッケージ
False
@@ -546,7 +555,7 @@
True
- False
+ True
@@ -554,94 +563,108 @@
true
-
+
+ .\
true
-
+
- .\
true
-
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
+ true
+
+
+
+
+ true
+
+
+
+
.\
true
-
+
+ .\
true
-
-
+
+
.\
true
-
-
+
+
+ .\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
+ .\
true
-
+
+ .\
true
@@ -650,37 +673,50 @@
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
+ true
+
+
+
+
.\
true
-
+
+ .\
true
-
+
.\
true
-
+
+ .\
+ true
+
+
+
+
+ .\
true
@@ -690,163 +726,508 @@
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
+
+ rtkplot.exe
+ true
+
+
+
- .\
true
-
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
+ .\
true
-
+
+
+ true
+
+
+
true
-
-
+
+
+ .\
true
-
+
+ .\
true
-
-
+
+
+ .\
true
-
-
+
+
+ .\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
+ .\
true
-
+
+ .\
true
-
-
+
+
+ .\
true
-
+
.\
true
-
-
+
+
.\
true
-
-
- 1
+
+
+ .\
+ true
-
- Contents\MacOS
- 1
+
+
+
+ .\
+ true
-
- 0
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ rtkplot.exe
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ .\
+ true
+
+
+
+
+ 1
+
+
+ Contents\MacOS
+ 1
+
+
+ 0
@@ -854,12 +1235,20 @@
classes
1
+
+ classes
+ 1
+
res\xml
1
+
+ res\xml
+ 1
+
@@ -872,75 +1261,199 @@
library\lib\armeabi
1
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
library\lib\mips
1
+
+ library\lib\mips
+ 1
+
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
res\values
1
+
+ res\values
+ 1
+
res\values-v21
1
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-ldpi
+ 1
+
+
+ res\drawable-ldpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
-
+
res\drawable-xxhdpi
1
-
-
-
- res\drawable-ldpi
+
+ res\drawable-xxhdpi
1
-
+
- res\drawable-mdpi
+ res\drawable-xxxhdpi
1
-
-
-
- res\drawable-hdpi
+
+ res\drawable-xxxhdpi
1
-
+
- res\drawable-xhdpi
+ res\drawable-small
1
-
-
-
+
res\drawable-small
1
@@ -950,18 +1463,40 @@
res\drawable-normal
1
+
+ res\drawable-normal
+ 1
+
res\drawable-large
1
+
+ res\drawable-large
+ 1
+
res\drawable-xlarge
1
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
@@ -1050,6 +1585,9 @@
0
+
+ 0
+
0
@@ -1082,6 +1620,17 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1093,6 +1642,39 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1104,6 +1686,61 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1115,6 +1752,116 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1148,10 +1895,35 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
+
+ 1
+
@@ -1244,6 +2016,10 @@
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
1
@@ -1268,6 +2044,12 @@
0
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
1
@@ -1305,6 +2087,7 @@
+
12
diff --git a/app/winapp/rtkplot/rtkplot.cbproj.local b/app/winapp/rtkplot/rtkplot.cbproj.local
new file mode 100644
index 000000000..81420d768
--- /dev/null
+++ b/app/winapp/rtkplot/rtkplot.cbproj.local
@@ -0,0 +1,21 @@
+
+
+
+ 2020/12/01 13:18:15.000.203,=D:\share\RTKLIB\app\winapp\appcmn\mntpoptdlg.cpp
+ 2020/12/02 09:04:52.000.938,=D:\share\RTKLIB\app\winapp\rtkplot\Unit1.cpp
+ 2020/12/02 09:44:03.000.535,D:\share\RTKLIB\app\winapp\appcmn\freqdlg.h=D:\share\RTKLIB\app\winapp\rtkplot\Unit1.h
+ 2020/12/02 09:44:03.000.535,D:\share\RTKLIB\app\winapp\appcmn\freqdlg.dfm=D:\share\RTKLIB\app\winapp\rtkplot\Unit1.dfm
+ 2020/12/02 09:44:03.000.535,D:\share\RTKLIB\app\winapp\appcmn\freqdlg.cpp=D:\share\RTKLIB\app\winapp\rtkplot\Unit1.cpp
+ 2020/12/03 17:01:13.000.095,D:\share\RTKLIB\app\winapp\appcmn\gmviewopt.cpp=
+ 2020/12/03 17:03:10.000.583,=D:\share\RTKLIB\app\winapp\rtkplot\gmviewopt.cpp
+ 2020/12/03 17:06:43.000.884,D:\share\RTKLIB\app\winapp\rtkplot\gmviewopt.h=D:\share\RTKLIB\app\winapp\rtkplot\mapviewopt.h
+ 2020/12/03 17:06:43.000.884,D:\share\RTKLIB\app\winapp\rtkplot\gmviewopt.cpp=D:\share\RTKLIB\app\winapp\rtkplot\mapviewopt.cpp
+ 2020/12/03 17:06:43.000.884,D:\share\RTKLIB\app\winapp\rtkplot\gmviewopt.dfm=D:\share\RTKLIB\app\winapp\rtkplot\mapviewopt.dfm
+ 2020/12/03 17:08:34.000.524,D:\share\RTKLIB\app\winapp\rtkplot\mapdlg.cpp=D:\share\RTKLIB\app\winapp\rtkplot\mapoptdlg.cpp
+ 2020/12/03 17:08:34.000.524,D:\share\RTKLIB\app\winapp\rtkplot\mapdlg.h=D:\share\RTKLIB\app\winapp\rtkplot\mapoptdlg.h
+ 2020/12/03 17:08:34.000.524,D:\share\RTKLIB\app\winapp\rtkplot\mapdlg.dfm=D:\share\RTKLIB\app\winapp\rtkplot\mapoptdlg.dfm
+ 2020/12/03 17:25:52.000.270,D:\share\RTKLIB\app\winapp\rtkplot\gmview.cpp=
+ 2020/12/03 17:28:22.000.248,=D:\share\RTKLIB\app\winapp\rtkplot\mapview.cpp
+ 2020/12/03 17:29:18.000.146,D:\share\RTKLIB\app\winapp\rtkplot\satdlg.cpp=
+
+
diff --git a/app/rtkplot/rtkplot.cpp b/app/winapp/rtkplot/rtkplot.cpp
similarity index 83%
rename from app/rtkplot/rtkplot.cpp
rename to app/winapp/rtkplot/rtkplot.cpp
index 269a28456..ceac577d6 100644
--- a/app/rtkplot/rtkplot.cpp
+++ b/app/winapp/rtkplot/rtkplot.cpp
@@ -43,31 +43,32 @@
USEFORM("vmapdlg.cpp", VecMapDialog);
-USEFORM("..\appcmn\tcpoptdlg.cpp", TcpOptDialog);
-USEFORM("..\appcmn\serioptdlg.cpp", SerialOptDialog);
+USEFORM("skydlg.cpp", SkyImgDialog);
USEFORM("..\appcmn\refdlg.cpp", RefDialog);
-USEFORM("..\appcmn\timedlg.cpp", TimeDialog);
-USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
-USEFORM("..\appcmn\viewer.cpp", TextViewer);
-USEFORM("..\appcmn\tspandlg.cpp", SpanDialog);
+USEFORM("..\appcmn\mntpoptdlg.cpp", MntpOptDialog);
USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
+USEFORM("..\appcmn\serioptdlg.cpp", SerialOptDialog);
+USEFORM("..\appcmn\tspandlg.cpp", SpanDialog);
+USEFORM("..\appcmn\timedlg.cpp", TimeDialog);
+USEFORM("..\appcmn\tcpoptdlg.cpp", TcpOptDialog);
USEFORM("..\appcmn\confdlg.cpp", ConfDialog);
USEFORM("..\appcmn\cmdoptdlg.cpp", CmdOptDialog);
USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog);
USEFORM("..\appcmn\console.cpp", Console);
USEFORM("..\appcmn\ftpoptdlg.cpp", FtpOptDialog);
+USEFORM("..\appcmn\freqdlg.cpp", FreqDialog);
USEFORM("..\appcmn\fileoptdlg.cpp", FileOptDialog);
-USEFORM("pntdlg.cpp", PntDialog);
-USEFORM("plotopt.cpp", PlotOptDialog);
USEFORM("plotmain.cpp", Plot);
-USEFORM("skydlg.cpp", SkyImgDialog);
-USEFORM("satdlg.cpp", SatDialog);
-USEFORM("gmview.cpp", GoogleMapView);
-USEFORM("geview.cpp", GoogleEarthView);
+USEFORM("plotopt.cpp", PlotOptDialog);
+USEFORM("pntdlg.cpp", PntDialog);
USEFORM("conndlg.cpp", ConnectDialog);
-USEFORM("mapdlg.cpp", MapAreaDialog);
+USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
+USEFORM("..\appcmn\viewer.cpp", TextViewer);
+USEFORM("mapoptdlg.cpp", MapOptDialog);
+USEFORM("mapviewopt.cpp", MapViewOptDialog);
+USEFORM("mapview.cpp", MapView);
//---------------------------------------------------------------------------
-WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
+int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
@@ -75,7 +76,6 @@ WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
Application->Title = "RTKPLOT";
Application->CreateForm(__classid(TPlot), &Plot);
Application->CreateForm(__classid(TPlotOptDialog), &PlotOptDialog);
- Application->CreateForm(__classid(TSatDialog), &SatDialog);
Application->CreateForm(__classid(TRefDialog), &RefDialog);
Application->CreateForm(__classid(TAboutDialog), &AboutDialog);
Application->CreateForm(__classid(TSpanDialog), &SpanDialog);
@@ -90,13 +90,15 @@ WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
Application->CreateForm(__classid(TViewerOptDialog), &ViewerOptDialog);
Application->CreateForm(__classid(TPntDialog), &PntDialog);
Application->CreateForm(__classid(TConfDialog), &ConfDialog);
- Application->CreateForm(__classid(TGoogleEarthView), &GoogleEarthView);
Application->CreateForm(__classid(TFtpOptDialog), &FtpOptDialog);
Application->CreateForm(__classid(TConsole), &Console);
- Application->CreateForm(__classid(TGoogleMapView), &GoogleMapView);
- Application->CreateForm(__classid(TMapAreaDialog), &MapAreaDialog);
+ Application->CreateForm(__classid(TMapOptDialog), &MapOptDialog);
Application->CreateForm(__classid(TSkyImgDialog), &SkyImgDialog);
Application->CreateForm(__classid(TVecMapDialog), &VecMapDialog);
+ Application->CreateForm(__classid(TMntpOptDialog), &MntpOptDialog);
+ Application->CreateForm(__classid(TFreqDialog), &FreqDialog);
+ Application->CreateForm(__classid(TMapViewOptDialog), &MapViewOptDialog);
+ Application->CreateForm(__classid(TMapView), &MapView);
Application->Run();
}
catch (Exception &exception)
diff --git a/app/winapp/rtkplot/rtkplot.res b/app/winapp/rtkplot/rtkplot.res
new file mode 100644
index 000000000..b48ecdf8f
Binary files /dev/null and b/app/winapp/rtkplot/rtkplot.res differ
diff --git a/app/rtkplot_qt/rtkplot_Icon.ico b/app/winapp/rtkplot/rtkplot_Icon.ico
similarity index 100%
rename from app/rtkplot_qt/rtkplot_Icon.ico
rename to app/winapp/rtkplot/rtkplot_Icon.ico
diff --git a/app/rtkplot/Release_Build/rtkplot_gm.htm b/app/winapp/rtkplot/rtkplot_gm.htm
similarity index 77%
rename from app/rtkplot/Release_Build/rtkplot_gm.htm
rename to app/winapp/rtkplot/rtkplot_gm.htm
index a3f803900..af01deee6 100644
--- a/app/rtkplot/Release_Build/rtkplot_gm.htm
+++ b/app/winapp/rtkplot/rtkplot_gm.htm
@@ -16,15 +16,23 @@
var markh = null;
var markz = 0;
var info = null;
-var icon0="http://maps.google.co.jp/mapfiles/ms/icons/red-dot.png";
-var icon1="http://maps.google.co.jp/mapfiles/ms/icons/yellow-dot.png";
+//var icon0="http://maps.google.co.jp/mapfiles/ms/icons/yellow-dot.png";
+//var icon1="http://maps.google.co.jp/mapfiles/ms/icons/red-dot.png";
+var icon0="image/marker_yellow.png";
+var icon1="image/marker_red.png";
function init() {
var opt = {
center: new google.maps.LatLng(0,0),
- zoom: 2, minZoom: 2,
+ zoom: 12, minZoom: 2,
+ mapTypeControlOptions: {
+ position: google.maps.ControlPosition.TOP_RIGHT,
+ },
streetViewControl: false,
- mapTypeId: google.maps.MapTypeId.ROADMAP
+ fullscreenControl: false,
+ scaleControl: true,
+ mapTypeId: google.maps.MapTypeId.ROADMAP,
+ tilt: 0,
};
map = new google.maps.Map(document.getElementById("map"),opt);
document.getElementById('state').value='1';
@@ -41,9 +49,14 @@
map.setCenter(new google.maps.LatLng(lat,lon));
}
-function SetZoom(zoom) {
+function ZoomIn() {
if (map == null) return;
- map.setZoom(zoom);
+ map.setZoom(map.getZoom()+1);
+}
+
+function ZoomOut() {
+ if (map == null) return;
+ map.setZoom(map.getZoom()-1);
}
function ClearMark(lat,lon,title) {
@@ -56,8 +69,9 @@
function AddMark(lat,lon,title,msg) {
var pos = new google.maps.LatLng(lat,lon);
- var opt = {map: map, position: pos, title: title, icon: icon1};
+ var opt = {map: map, position: pos, title: title, icon: icon0};
var mark = new google.maps.Marker(opt);
+ if (title == "SOL2") mark.setIcon(icon1);
google.maps.event.addListener(mark,'click',function(event) {
if (info) {info.close();}
info = new google.maps.InfoWindow({content: msg});
diff --git a/app/winapp/rtkplot/rtkplot_ll.htm b/app/winapp/rtkplot/rtkplot_ll.htm
new file mode 100644
index 000000000..689839b16
--- /dev/null
+++ b/app/winapp/rtkplot/rtkplot_ll.htm
@@ -0,0 +1,108 @@
+
+
+
+RTKPLOT_MAP
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/rtkplot/skydlg.cpp b/app/winapp/rtkplot/skydlg.cpp
similarity index 97%
rename from app/rtkplot/skydlg.cpp
rename to app/winapp/rtkplot/skydlg.cpp
index 60ff16063..4b42e6e24 100644
--- a/app/rtkplot/skydlg.cpp
+++ b/app/winapp/rtkplot/skydlg.cpp
@@ -151,7 +151,7 @@ void __fastcall TSkyImgDialog::UpdateEnable(void)
}
//---------------------------------------------------------------------------
void __fastcall TSkyImgDialog::SkyFov2UpDownChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction)
+ int NewValue, TUpDownDirection Direction)
{
AnsiString s;
double fov=str2dbl(SkyFov2->Text);
@@ -163,7 +163,7 @@ void __fastcall TSkyImgDialog::SkyFov2UpDownChangingEx(TObject *Sender, bool &Al
}
//---------------------------------------------------------------------------
void __fastcall TSkyImgDialog::SkyFov1UpDownChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction)
+ int NewValue, TUpDownDirection Direction)
{
AnsiString s;
double fov=str2dbl(SkyFov1->Text);
@@ -175,7 +175,7 @@ void __fastcall TSkyImgDialog::SkyFov1UpDownChangingEx(TObject *Sender, bool &Al
}
//---------------------------------------------------------------------------
void __fastcall TSkyImgDialog::SkyFov3UpDownChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction)
+ int NewValue, TUpDownDirection Direction)
{
AnsiString s;
double fov=str2dbl(SkyFov3->Text);
@@ -187,7 +187,7 @@ void __fastcall TSkyImgDialog::SkyFov3UpDownChangingEx(TObject *Sender, bool &Al
}
//---------------------------------------------------------------------------
void __fastcall TSkyImgDialog::SkyCent1UpDownChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction)
+ int NewValue, TUpDownDirection Direction)
{
AnsiString s;
double cent=str2dbl(SkyCent1->Text);
@@ -198,7 +198,7 @@ void __fastcall TSkyImgDialog::SkyCent1UpDownChangingEx(TObject *Sender, bool &A
}
//---------------------------------------------------------------------------
void __fastcall TSkyImgDialog::SkyCent2UpDownChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction)
+ int NewValue, TUpDownDirection Direction)
{
AnsiString s;
double cent=str2dbl(SkyCent2->Text);
@@ -209,7 +209,7 @@ void __fastcall TSkyImgDialog::SkyCent2UpDownChangingEx(TObject *Sender, bool &A
}
//---------------------------------------------------------------------------
void __fastcall TSkyImgDialog::SkyScaleUpDownChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction)
+ int NewValue, TUpDownDirection Direction)
{
AnsiString s;
double scale=str2dbl(SkyScale->Text);
diff --git a/app/rtkplot/skydlg.dfm b/app/winapp/rtkplot/skydlg.dfm
similarity index 97%
rename from app/rtkplot/skydlg.dfm
rename to app/winapp/rtkplot/skydlg.dfm
index 056b1cc8f..a979e8765 100644
--- a/app/rtkplot/skydlg.dfm
+++ b/app/winapp/rtkplot/skydlg.dfm
@@ -4,7 +4,7 @@ object SkyImgDialog: TSkyImgDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'Sky Image'
- ClientHeight = 209
+ ClientHeight = 214
ClientWidth = 366
Color = clWhite
Font.Charset = DEFAULT_CHARSET
@@ -18,18 +18,18 @@ object SkyImgDialog: TSkyImgDialog
PixelsPerInch = 96
TextHeight = 13
object BtnClose: TButton
- Left = 289
- Top = 180
- Width = 78
+ Left = 296
+ Top = 182
+ Width = 66
Height = 29
Caption = '&Close'
TabOrder = 0
OnClick = BtnCloseClick
end
object BtnSave: TButton
- Left = -1
- Top = 180
- Width = 68
+ Left = 3
+ Top = 182
+ Width = 66
Height = 29
Caption = '&Save Tag'
ModalResult = 1
@@ -37,9 +37,9 @@ object SkyImgDialog: TSkyImgDialog
OnClick = BtnSaveClick
end
object BtnUpdate: TButton
- Left = 212
- Top = 180
- Width = 78
+ Left = 228
+ Top = 182
+ Width = 66
Height = 29
Caption = '&Update'
TabOrder = 1
@@ -498,9 +498,9 @@ object SkyImgDialog: TSkyImgDialog
end
end
object BtnLoad: TButton
- Left = 66
- Top = 180
- Width = 68
+ Left = 71
+ Top = 182
+ Width = 66
Height = 29
Caption = '&Load Tag...'
ModalResult = 1
@@ -508,9 +508,9 @@ object SkyImgDialog: TSkyImgDialog
OnClick = BtnLoadClick
end
object BtnGenMask: TButton
- Left = 139
- Top = 180
- Width = 68
+ Left = 148
+ Top = 182
+ Width = 66
Height = 29
Caption = '&Gen Mask'
ModalResult = 1
diff --git a/app/rtkplot/skydlg.h b/app/winapp/rtkplot/skydlg.h
similarity index 95%
rename from app/rtkplot/skydlg.h
rename to app/winapp/rtkplot/skydlg.h
index 200681f9b..7fadf2e0b 100644
--- a/app/rtkplot/skydlg.h
+++ b/app/winapp/rtkplot/skydlg.h
@@ -78,17 +78,17 @@ class TSkyImgDialog : public TForm
void __fastcall BtnCloseClick(TObject *Sender);
void __fastcall BtnUpdateClick(TObject *Sender);
void __fastcall BtnSaveClick(TObject *Sender);
- void __fastcall SkyFov2UpDownChangingEx(TObject *Sender, bool &AllowChange, short NewValue,
+ void __fastcall SkyFov2UpDownChangingEx(TObject *Sender, bool &AllowChange, int NewValue,
TUpDownDirection Direction);
- void __fastcall SkyFov1UpDownChangingEx(TObject *Sender, bool &AllowChange, short NewValue,
+ void __fastcall SkyFov1UpDownChangingEx(TObject *Sender, bool &AllowChange, int NewValue,
TUpDownDirection Direction);
- void __fastcall SkyFov3UpDownChangingEx(TObject *Sender, bool &AllowChange, short NewValue,
+ void __fastcall SkyFov3UpDownChangingEx(TObject *Sender, bool &AllowChange, int NewValue,
TUpDownDirection Direction);
- void __fastcall SkyCent1UpDownChangingEx(TObject *Sender, bool &AllowChange, short NewValue,
+ void __fastcall SkyCent1UpDownChangingEx(TObject *Sender, bool &AllowChange, int NewValue,
TUpDownDirection Direction);
- void __fastcall SkyCent2UpDownChangingEx(TObject *Sender, bool &AllowChange, short NewValue,
+ void __fastcall SkyCent2UpDownChangingEx(TObject *Sender, bool &AllowChange, int NewValue,
TUpDownDirection Direction);
- void __fastcall SkyScaleUpDownChangingEx(TObject *Sender, bool &AllowChange, short NewValue,
+ void __fastcall SkyScaleUpDownChangingEx(TObject *Sender, bool &AllowChange, int NewValue,
TUpDownDirection Direction);
void __fastcall SkyElMaskMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift,
int X, int Y);
diff --git a/app/rtkplot/vmapdlg.cpp b/app/winapp/rtkplot/vmapdlg.cpp
similarity index 55%
rename from app/rtkplot/vmapdlg.cpp
rename to app/winapp/rtkplot/vmapdlg.cpp
index 2a78b2ad2..4250a7b05 100644
--- a/app/rtkplot/vmapdlg.cpp
+++ b/app/winapp/rtkplot/vmapdlg.cpp
@@ -15,90 +15,6 @@ __fastcall TVecMapDialog::TVecMapDialog(TComponent* Owner)
{
}
//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor1Click(TObject *Sender)
-{
- ColorDialog->Color=Color1->Color;
- if (!ColorDialog->Execute()) return;
- Color1->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor2Click(TObject *Sender)
-{
- ColorDialog->Color=Color2->Color;
- if (!ColorDialog->Execute()) return;
- Color2->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor3Click(TObject *Sender)
-{
- ColorDialog->Color=Color3->Color;
- if (!ColorDialog->Execute()) return;
- Color3->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor4Click(TObject *Sender)
-{
- ColorDialog->Color=Color4->Color;
- if (!ColorDialog->Execute()) return;
- Color4->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor5Click(TObject *Sender)
-{
- ColorDialog->Color=Color5->Color;
- if (!ColorDialog->Execute()) return;
- Color5->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor6Click(TObject *Sender)
-{
- ColorDialog->Color=Color6->Color;
- if (!ColorDialog->Execute()) return;
- Color6->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor7Click(TObject *Sender)
-{
- ColorDialog->Color=Color7->Color;
- if (!ColorDialog->Execute()) return;
- Color7->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor8Click(TObject *Sender)
-{
- ColorDialog->Color=Color8->Color;
- if (!ColorDialog->Execute()) return;
- Color8->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor9Click(TObject *Sender)
-{
- ColorDialog->Color=Color9->Color;
- if (!ColorDialog->Execute()) return;
- Color9->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor10Click(TObject *Sender)
-{
- ColorDialog->Color=Color10->Color;
- if (!ColorDialog->Execute()) return;
- Color10->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor11Click(TObject *Sender)
-{
- ColorDialog->Color=Color11->Color;
- if (!ColorDialog->Execute()) return;
- Color11->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnColor12Click(TObject *Sender)
-{
- ColorDialog->Color=Color12->Color;
- if (!ColorDialog->Execute()) return;
- Color12->Color=ColorDialog->Color;
-}
-//---------------------------------------------------------------------------
void __fastcall TVecMapDialog::Layer1Click(TObject *Sender)
{
TRadioButton *layer[]={
@@ -108,6 +24,7 @@ void __fastcall TVecMapDialog::Layer1Click(TObject *Sender)
for (int i=0;iChecked=(layer[i]==(TRadioButton *)Sender);
}
+ UpdateMap();
}
//---------------------------------------------------------------------------
void __fastcall TVecMapDialog::BtnUpClick(TObject *Sender)
@@ -120,6 +37,10 @@ void __fastcall TVecMapDialog::BtnUpClick(TObject *Sender)
Color1,Color2,Color3,Color4,Color5,Color6,Color7,Color8,Color9,
Color10,Color11,Color12
};
+ TPanel *colorf[]={
+ Color1F,Color2F,Color3F,Color4F,Color5F,Color6F,Color7F,Color8F,
+ Color9F,Color10F,Color11F,Color12F
+ };
TColor col;
gisd_t *data;
char name[256];
@@ -138,12 +59,15 @@ void __fastcall TVecMapDialog::BtnUpClick(TObject *Sender)
data=Gis.data[i-1];
Gis.data[i-1]=Gis.data[i];
Gis.data[i]=data;
- //col=color[i-1]->Color;
- //color[i-1]->Color=color[i]->Color;
- //color[i]->Color=col;
+ col=color[i-1]->Color;
+ color[i-1]->Color=color[i]->Color;
+ color[i]->Color=col;
+ col=colorf[i-1]->Color;
+ colorf[i-1]->Color=colorf[i]->Color;
+ colorf[i]->Color=col;
layer[i-1]->Checked=true;
layer[i]->Checked=false;
- UpdateLayer();
+ UpdateMap();
}
//---------------------------------------------------------------------------
void __fastcall TVecMapDialog::BtnDownClick(TObject *Sender)
@@ -156,6 +80,10 @@ void __fastcall TVecMapDialog::BtnDownClick(TObject *Sender)
Color1,Color2,Color3,Color4,Color5,Color6,Color7,Color8,Color9,
Color10,Color11,Color12
};
+ TPanel *colorf[]={
+ Color1F,Color2F,Color3F,Color4F,Color5F,Color6F,Color7F,Color8F,
+ Color9F,Color10F,Color11F,Color12F
+ };
TColor col;
gisd_t *data;
char name[256];
@@ -174,12 +102,15 @@ void __fastcall TVecMapDialog::BtnDownClick(TObject *Sender)
data=Gis.data[i+1];
Gis.data[i+1]=Gis.data[i];
Gis.data[i]=data;
- //col=color[i+1]->Color;
- //color[i+1]->Color=color[i]->Color;
- //color[i]->Color=col;
+ col=color[i+1]->Color;
+ color[i+1]->Color=color[i]->Color;
+ color[i]->Color=col;
+ col=colorf[i+1]->Color;
+ colorf[i+1]->Color=colorf[i]->Color;
+ colorf[i]->Color=col;
layer[i+1]->Checked=true;
layer[i]->Checked=false;
- UpdateLayer();
+ UpdateMap();
}
//---------------------------------------------------------------------------
void __fastcall TVecMapDialog::BtnDeleteClick(TObject *Sender)
@@ -195,6 +126,7 @@ void __fastcall TVecMapDialog::Vis1Click(TObject *Sender)
for (int i=0;iChecked?1:0;
}
+ UpdateMap();
}
//---------------------------------------------------------------------------
void __fastcall TVecMapDialog::FormShow(TObject *Sender)
@@ -207,27 +139,50 @@ void __fastcall TVecMapDialog::FormShow(TObject *Sender)
Color1,Color2,Color3,Color4,Color5,Color6,Color7,Color8,Color9,
Color10,Color11,Color12
};
+ TPanel *colorf[]={
+ Color1F,Color2F,Color3F,Color4F,Color5F,Color6F,Color7F,Color8F,
+ Color9F,Color10F,Color11F,Color12F
+ };
Gis=Plot->Gis;
for (int i=0;iChecked=false;
- color[i]->Color=Plot->MapColor[i];
+ color [i]->Color=Plot->MapColor [i];
+ colorf[i]->Color=Plot->MapColorF[i];
}
- UpdateLayer();
+ UpdateMap();
}
//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::BtnOkClick(TObject *Sender)
+void __fastcall TVecMapDialog::BtnApplyClick(TObject *Sender)
+{
+ UpdateMap();
+}
+//---------------------------------------------------------------------------
+void __fastcall TVecMapDialog::BtnCloseClick(TObject *Sender)
+{
+ Close();
+}
+//---------------------------------------------------------------------------
+void __fastcall TVecMapDialog::ColorClick(TObject *Sender)
{
TPanel *color[]={
Color1,Color2,Color3,Color4,Color5,Color6,Color7,Color8,Color9,
- Color10,Color11,Color12
+ Color10,Color11,Color12,Color1F,Color2F,Color3F,Color4F,Color5F,
+ Color6F,Color7F,Color8F,Color9F,Color10F,Color11F,Color12F,NULL
};
- for (int i=0;iMapColor[i]=color[i]->Color;
+ int i;
+
+ for (i=0;color[i];i++) {
+ if (color[i]==(TPanel *)Sender) break;
+ }
+ if (color[i]) {
+ ColorDialog->Color=color[i]->Color;
+ if (!ColorDialog->Execute()) return;
+ color[i]->Color=ColorDialog->Color;
+ UpdateMap();
}
- Plot->Gis=Gis;
}
//---------------------------------------------------------------------------
-void __fastcall TVecMapDialog::UpdateLayer(void)
+void __fastcall TVecMapDialog::UpdateMap(void)
{
TRadioButton *layer[]={
Layer1,Layer2,Layer3,Layer4,Layer5,Layer6,Layer7,Layer8,Layer9,
@@ -236,10 +191,24 @@ void __fastcall TVecMapDialog::UpdateLayer(void)
TCheckBox *vis[]={
Vis1,Vis2,Vis3,Vis4,Vis5,Vis6,Vis7,Vis8,Vis9,Vis10,Vis11,Vis12
};
+ for (int i=0;iCaption=Gis.name[i];
vis[i]->Checked=Gis.flag[i];
+ Plot->MapColor [i]=color [i]->Color;
+ Plot->MapColorF[i]=colorf[i]->Color;
}
+ Plot->Gis=Gis;
+ Plot->UpdatePlot();
}
//---------------------------------------------------------------------------
diff --git a/app/rtkplot/vmapdlg.dfm b/app/winapp/rtkplot/vmapdlg.dfm
similarity index 57%
rename from app/rtkplot/vmapdlg.dfm
rename to app/winapp/rtkplot/vmapdlg.dfm
index 491ef79d7..21754d5a2 100644
--- a/app/rtkplot/vmapdlg.dfm
+++ b/app/winapp/rtkplot/vmapdlg.dfm
@@ -3,7 +3,7 @@ object VecMapDialog: TVecMapDialog
Top = 5
BorderStyle = bsDialog
Caption = 'Map Layer'
- ClientHeight = 333
+ ClientHeight = 335
ClientWidth = 398
Color = clWhite
Font.Charset = DEFAULT_CHARSET
@@ -16,28 +16,28 @@ object VecMapDialog: TVecMapDialog
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
- object BtnOk: TButton
- Left = 222
- Top = 301
+ object BtnApply: TButton
+ Left = 234
+ Top = 302
Width = 84
- Height = 30
- Caption = '&OK'
- ModalResult = 1
+ Height = 29
+ Caption = '&Apply'
TabOrder = 0
- OnClick = BtnOkClick
+ OnClick = BtnApplyClick
end
- object BtnCancel: TButton
- Left = 309
- Top = 301
- Width = 84
- Height = 30
- Caption = '&Cancel'
- ModalResult = 2
+ object BtnClose: TButton
+ Left = 321
+ Top = 302
+ Width = 74
+ Height = 29
+ Caption = '&Close'
+ ModalResult = 8
TabOrder = 1
+ OnClick = BtnCloseClick
end
object BtnUp: TBitBtn
- Left = 12
- Top = 301
+ Left = 4
+ Top = 302
Width = 63
Height = 29
Caption = '&Up'
@@ -54,8 +54,8 @@ object VecMapDialog: TVecMapDialog
OnClick = BtnUpClick
end
object BtnDown: TBitBtn
- Left = 76
- Top = 301
+ Left = 70
+ Top = 302
Width = 63
Height = 29
Caption = '&Down'
@@ -87,11 +87,11 @@ object VecMapDialog: TVecMapDialog
Caption = 'Layer'
end
object Label2: TLabel
- Left = 335
+ Left = 326
Top = 3
- Width = 25
+ Width = 19
Height = 13
- Caption = 'Color'
+ Caption = 'Line'
end
object Label3: TLabel
Left = 10
@@ -100,11 +100,19 @@ object VecMapDialog: TVecMapDialog
Height = 13
Caption = 'Show'
end
+ object Label4: TLabel
+ Left = 365
+ Top = 3
+ Width = 12
+ Height = 13
+ Caption = 'Fill'
+ end
object Panel21: TPanel
Left = 4
Top = 18
Width = 390
- Height = 281
+ Height = 280
+ AutoSize = True
BevelInner = bvRaised
BevelOuter = bvLowered
Caption = 'Panel21'
@@ -116,36 +124,32 @@ object VecMapDialog: TVecMapDialog
Top = 2
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 0
object Color1: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor1: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor1Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis1: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer1: TRadioButton
@@ -153,16 +157,24 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel2: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color1F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel12: TPanel
@@ -170,36 +182,32 @@ object VecMapDialog: TVecMapDialog
Top = 25
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 1
object Color2: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor2: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor2Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis2: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer2: TRadioButton
@@ -207,16 +215,24 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel3: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color2F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel13: TPanel
@@ -224,53 +240,57 @@ object VecMapDialog: TVecMapDialog
Top = 48
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 2
object Color3: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor3: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor3Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis3: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer3: TRadioButton
- Left = 32
- Top = 3
+ Left = 33
+ Top = 4
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel4: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color3F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel14: TPanel
@@ -278,36 +298,32 @@ object VecMapDialog: TVecMapDialog
Top = 71
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 3
object Color4: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor4: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor4Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis4: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer4: TRadioButton
@@ -315,53 +331,58 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel5: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color4F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel15: TPanel
Left = 2
- Top = 95
+ Top = 94
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 4
+ ExplicitTop = 95
object Color5: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor5: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor5Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis5: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer5: TRadioButton
@@ -369,53 +390,58 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel6: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color5F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel16: TPanel
Left = 2
- Top = 118
+ Top = 117
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 5
+ ExplicitTop = 118
object Color6: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor6: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor6Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis6: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer6: TRadioButton
@@ -423,53 +449,58 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel7: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color6F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel17: TPanel
Left = 2
- Top = 141
+ Top = 140
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 6
+ ExplicitTop = 141
object Color7: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor7: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor7Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis7: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer7: TRadioButton
@@ -477,53 +508,58 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel8: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color7F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel18: TPanel
Left = 2
- Top = 164
+ Top = 163
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 7
+ ExplicitTop = 164
object Color8: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor8: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor8Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis8: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer8: TRadioButton
@@ -531,53 +567,58 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel9: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color8F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel19: TPanel
Left = 2
- Top = 187
+ Top = 186
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 8
+ ExplicitTop = 187
object Color9: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor9: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor9Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis9: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer9: TRadioButton
@@ -585,53 +626,58 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel10: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color9F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel1A: TPanel
Left = 2
- Top = 210
+ Top = 209
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 9
+ ExplicitTop = 210
object Color10: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor10: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor10Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis10: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer10: TRadioButton
@@ -639,53 +685,58 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel20: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color10F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel1B: TPanel
Left = 2
- Top = 233
+ Top = 232
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 10
+ ExplicitTop = 233
object Color11: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor11: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor11Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis11: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer11: TRadioButton
@@ -693,53 +744,58 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
- object Panel24: TPanel
- Left = 6
- Top = 22
- Width = 304
- Height = 1
- BevelInner = bvLowered
- TabOrder = 4
+ object Color11F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
end
object Panel22: TPanel
Left = 2
- Top = 256
+ Top = 255
Width = 386
Height = 23
- BevelOuter = bvNone
+ Align = alTop
+ BevelOuter = bvLowered
Color = clWindow
ParentBackground = False
TabOrder = 11
+ ExplicitTop = 256
object Color12: TPanel
- Left = 311
- Top = 0
- Width = 48
- Height = 23
+ Left = 313
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clWhite
ParentBackground = False
TabOrder = 0
- end
- object BtnColor12: TButton
- Left = 358
- Top = 0
- Width = 28
- Height = 23
- Caption = '...'
- TabOrder = 1
- OnClick = BtnColor12Click
+ OnClick = ColorClick
+ ExplicitTop = 0
+ ExplicitHeight = 23
end
object Vis12: TCheckBox
Left = 8
Top = 3
Width = 19
Height = 17
- TabOrder = 2
+ TabOrder = 1
OnClick = Vis1Click
end
object Layer12: TRadioButton
@@ -747,15 +803,31 @@ object VecMapDialog: TVecMapDialog
Top = 3
Width = 278
Height = 17
- TabOrder = 3
+ TabOrder = 2
OnClick = Layer1Click
end
+ object Color12F: TPanel
+ Left = 349
+ Top = 1
+ Width = 36
+ Height = 21
+ Align = alRight
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Color = clWhite
+ ParentBackground = False
+ TabOrder = 3
+ OnClick = ColorClick
+ ExplicitLeft = 350
+ ExplicitTop = 0
+ ExplicitHeight = 23
+ end
end
end
end
object ColorDialog: TColorDialog
Options = [cdFullOpen]
- Left = 115
- Top = 295
+ Left = 182
+ Top = 147
end
end
diff --git a/app/rtkplot/vmapdlg.h b/app/winapp/rtkplot/vmapdlg.h
similarity index 64%
rename from app/rtkplot/vmapdlg.h
rename to app/winapp/rtkplot/vmapdlg.h
index d948ddee0..8e31e7b86 100644
--- a/app/rtkplot/vmapdlg.h
+++ b/app/winapp/rtkplot/vmapdlg.h
@@ -16,109 +16,89 @@
class TVecMapDialog : public TForm
{
__published:
- TButton *BtnOk;
- TButton *BtnCancel;
+ TButton *BtnApply;
+ TButton *BtnClose;
TCheckBox *Vis1;
TLabel *Label1;
TPanel *Color1;
TLabel *Label2;
- TButton *BtnColor1;
TPanel *Panel11;
TRadioButton *Layer1;
TLabel *Label3;
TPanel *Panel12;
TPanel *Color2;
- TButton *BtnColor2;
TCheckBox *Vis2;
TRadioButton *Layer2;
TPanel *Panel13;
TPanel *Color3;
- TButton *BtnColor3;
TCheckBox *Vis3;
TRadioButton *Layer3;
TPanel *Panel14;
TPanel *Color4;
- TButton *BtnColor4;
TCheckBox *Vis4;
TRadioButton *Layer4;
TPanel *Panel15;
TPanel *Color5;
- TButton *BtnColor5;
TCheckBox *Vis5;
TRadioButton *Layer5;
TPanel *Panel16;
TPanel *Color6;
- TButton *BtnColor6;
TCheckBox *Vis6;
TRadioButton *Layer6;
TPanel *Panel17;
TPanel *Color7;
- TButton *BtnColor7;
TCheckBox *Vis7;
TRadioButton *Layer7;
TPanel *Panel18;
TPanel *Color8;
- TButton *BtnColor8;
TCheckBox *Vis8;
TRadioButton *Layer8;
TPanel *Panel19;
TPanel *Color9;
- TButton *BtnColor9;
TCheckBox *Vis9;
TRadioButton *Layer9;
TPanel *Panel1A;
TPanel *Color10;
- TButton *BtnColor10;
TCheckBox *Vis10;
TRadioButton *Layer10;
TBitBtn *BtnUp;
TBitBtn *BtnDown;
TPanel *Panel1;
TColorDialog *ColorDialog;
- TPanel *Panel2;
- TPanel *Panel3;
- TPanel *Panel4;
- TPanel *Panel5;
- TPanel *Panel6;
- TPanel *Panel7;
- TPanel *Panel8;
- TPanel *Panel9;
- TPanel *Panel10;
TPanel *Panel21;
- TPanel *Panel20;
TPanel *Panel1B;
TPanel *Color11;
- TButton *BtnColor11;
TCheckBox *Vis11;
TRadioButton *Layer11;
- TPanel *Panel24;
TPanel *Panel22;
TPanel *Color12;
- TButton *BtnColor12;
TCheckBox *Vis12;
TRadioButton *Layer12;
- void __fastcall BtnColor1Click(TObject *Sender);
+ TLabel *Label4;
+ TPanel *Color1F;
+ TPanel *Color2F;
+ TPanel *Color3F;
+ TPanel *Color4F;
+ TPanel *Color5F;
+ TPanel *Color6F;
+ TPanel *Color7F;
+ TPanel *Color8F;
+ TPanel *Color9F;
+ TPanel *Color10F;
+ TPanel *Color11F;
+ TPanel *Color12F;
void __fastcall Layer1Click(TObject *Sender);
void __fastcall BtnUpClick(TObject *Sender);
void __fastcall BtnDownClick(TObject *Sender);
void __fastcall BtnDeleteClick(TObject *Sender);
void __fastcall FormShow(TObject *Sender);
- void __fastcall BtnColor2Click(TObject *Sender);
- void __fastcall BtnColor3Click(TObject *Sender);
- void __fastcall BtnColor4Click(TObject *Sender);
- void __fastcall BtnColor5Click(TObject *Sender);
- void __fastcall BtnColor6Click(TObject *Sender);
- void __fastcall BtnColor7Click(TObject *Sender);
- void __fastcall BtnColor8Click(TObject *Sender);
- void __fastcall BtnColor9Click(TObject *Sender);
- void __fastcall BtnColor10Click(TObject *Sender);
- void __fastcall BtnOkClick(TObject *Sender);
+ void __fastcall BtnApplyClick(TObject *Sender);
void __fastcall Vis1Click(TObject *Sender);
- void __fastcall BtnColor11Click(TObject *Sender);
- void __fastcall BtnColor12Click(TObject *Sender);
+ void __fastcall ColorClick(TObject *Sender);
+ void __fastcall BtnCloseClick(TObject *Sender);
private:
gis_t Gis;
- void __fastcall UpdateLayer(void);
+ void __fastcall UpdateMap(void);
public:
__fastcall TVecMapDialog(TComponent* Owner);
};
diff --git a/app/rtknavi_win64/clean.bat b/app/winapp/rtkpost/clean.bat
similarity index 100%
rename from app/rtknavi_win64/clean.bat
rename to app/winapp/rtkpost/clean.bat
diff --git a/app/winapp/rtkpost/install.bat b/app/winapp/rtkpost/install.bat
new file mode 100644
index 000000000..66851b43b
--- /dev/null
+++ b/app/winapp/rtkpost/install.bat
@@ -0,0 +1 @@
+copy Release_Build\rtkpost.exe ..\..\..\..\RTKLIB_bin\bin
diff --git a/app/rtkpost/kmzconv.cpp b/app/winapp/rtkpost/kmzconv.cpp
similarity index 97%
rename from app/rtkpost/kmzconv.cpp
rename to app/winapp/rtkpost/kmzconv.cpp
index 5d6cfcdf1..19a5e696d 100644
--- a/app/rtkpost/kmzconv.cpp
+++ b/app/winapp/rtkpost/kmzconv.cpp
@@ -197,7 +197,7 @@ void __fastcall TConvDialog::UpdateOutFile(void)
}
//---------------------------------------------------------------------------
void __fastcall TConvDialog::TimeY1UDChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString TimeY1_Text=TimeY1->Text,s;
double ep[]={2000,1,1,0,0,0};
@@ -215,7 +215,7 @@ void __fastcall TConvDialog::TimeY1UDChangingEx(TObject *Sender,
}
//---------------------------------------------------------------------------
void __fastcall TConvDialog::TimeH1UDChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString TimeH1_Text=TimeH1->Text,s;
int hms[3]={0},sec,p=TimeH1->SelStart,ud=Direction==updUp?1:-1;
@@ -228,7 +228,7 @@ void __fastcall TConvDialog::TimeH1UDChangingEx(TObject *Sender,
}
//---------------------------------------------------------------------------
void __fastcall TConvDialog::TimeY2UDChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString TimeY2_Text=TimeY2->Text,s;
double ep[]={2000,1,1,0,0,0};
@@ -246,7 +246,7 @@ void __fastcall TConvDialog::TimeY2UDChangingEx(TObject *Sender,
}
//---------------------------------------------------------------------------
void __fastcall TConvDialog::TimeH2UDChangingEx(TObject *Sender,
- bool &AllowChange, short NewValue, TUpDownDirection Direction)
+ bool &AllowChange, int NewValue, TUpDownDirection Direction)
{
AnsiString TimeH2_Text=TimeH2->Text,s;
int hms[3]={0},sec,p=TimeH2->SelStart,ud=Direction==updUp?1:-1;
diff --git a/app/rtkpost/kmzconv.dfm b/app/winapp/rtkpost/kmzconv.dfm
similarity index 97%
rename from app/rtkpost/kmzconv.dfm
rename to app/winapp/rtkpost/kmzconv.dfm
index c15817f8f..a27e23e7f 100644
--- a/app/rtkpost/kmzconv.dfm
+++ b/app/winapp/rtkpost/kmzconv.dfm
@@ -4,7 +4,7 @@ object ConvDialog: TConvDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'KML/GPX Converter'
- ClientHeight = 291
+ ClientHeight = 295
ClientWidth = 395
Color = clWhite
Font.Charset = DEFAULT_CHARSET
@@ -19,18 +19,18 @@ object ConvDialog: TConvDialog
TextHeight = 13
object BtnClose: TButton
Left = 300
- Top = 262
+ Top = 263
Width = 89
- Height = 27
+ Height = 29
Caption = '&Close'
TabOrder = 1
OnClick = BtnCloseClick
end
object BtnConvert: TButton
- Left = 204
- Top = 262
- Width = 89
- Height = 27
+ Left = 210
+ Top = 263
+ Width = 88
+ Height = 29
Caption = 'Con&vert'
TabOrder = 0
OnClick = BtnConvertClick
@@ -402,19 +402,19 @@ object ConvDialog: TConvDialog
end
end
object BtnGoogle: TButton
- Left = 97
- Top = 262
- Width = 89
- Height = 27
+ Left = 98
+ Top = 263
+ Width = 88
+ Height = 29
Caption = '&Google Earth'
TabOrder = 3
OnClick = BtnGoogleClick
end
object BtnView: TBitBtn
- Left = 7
- Top = 262
- Width = 89
- Height = 27
+ Left = 8
+ Top = 263
+ Width = 88
+ Height = 29
Caption = '&View...'
Glyph.Data = {
3E020000424D3E0200000000000036000000280000000D0000000D0000000100
diff --git a/app/rtkpost/kmzconv.h b/app/winapp/rtkpost/kmzconv.h
similarity index 92%
rename from app/rtkpost/kmzconv.h
rename to app/winapp/rtkpost/kmzconv.h
index cdd1689e6..77c0cc130 100644
--- a/app/rtkpost/kmzconv.h
+++ b/app/winapp/rtkpost/kmzconv.h
@@ -66,13 +66,13 @@ class TConvDialog : public TForm
void __fastcall BtnInputFileClick(TObject *Sender);
void __fastcall InputFileChange(TObject *Sender);
void __fastcall TimeY1UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall TimeH1UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall TimeY2UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall TimeH2UDChangingEx(TObject *Sender, bool &AllowChange,
- short NewValue, TUpDownDirection Direction);
+ int NewValue, TUpDownDirection Direction);
void __fastcall CompressClick(TObject *Sender);
void __fastcall FormShow(TObject *Sender);
void __fastcall GoogleEarthFileChange(TObject *Sender);
diff --git a/app/rtkpost/postmain.cpp b/app/winapp/rtkpost/postmain.cpp
similarity index 96%
rename from app/rtkpost/postmain.cpp
rename to app/winapp/rtkpost/postmain.cpp
index b25fdcf3a..ae3653eaa 100644
--- a/app/rtkpost/postmain.cpp
+++ b/app/winapp/rtkpost/postmain.cpp
@@ -1,7 +1,7 @@
//---------------------------------------------------------------------------
// rtkpost : post-processing analysis
//
-// Copyright (C) 2007-2012 by T.TAKASU, All rights reserved.
+// Copyright (C) 2007-2020 by T.TAKASU, All rights reserved.
//
// options : rtkpost [-t title][-i file][-r file][-b file][-n file ...]
// [-d dir][-o file]
@@ -19,14 +19,14 @@
// -ti tint time interval (s)
// -tu tunit time unit (hr)
//
-// version : $Revision: 1.1 $ $Date: 2008/07/17 22:14:45 $
+// version : $Revision:$ $Date:$
// history : 2008/07/14 1.0 new
// 2008/11/17 1.1 rtklib 2.1.1
// 2008/04/03 1.2 rtklib 2.3.1
// 2010/07/18 1.3 rtklib 2.4.0
// 2010/09/07 1.3 rtklib 2.4.1
// 2011/04/03 1.4 rtklib 2.4.2
-// 2016/06/11 1.5 rtklib 2.4.3
+// 2020/11/30 1.5 rtklib 2.4.3
//---------------------------------------------------------------------------
#include
#include
@@ -53,9 +53,7 @@ TMainForm *MainForm;
#define PRGNAME "RTKPOST"
#define MAXHIST 20
-#define GOOGLE_EARTH "C:\\Program Files\\Google\\Google Earth\\googleearth.exe"
-
-static const char version[]="$Revision: 1.1 $ $Date: 2008/07/17 22:14:45 $";
+#define GOOGLE_EARTH "C:\\Program Files\\Google\\Google Earth Pro\\client\\googleearth.exe"
// global variables ---------------------------------------------------------
static gtime_t tstart_={0}; // time start for progress-bar
@@ -66,7 +64,7 @@ static char base_[256]=""; // base-station name
extern "C" {
// show message in message area ---------------------------------------------
-extern int showmsg(char *format, ...)
+extern int showmsg(const char *format, ...)
{
va_list arg;
char buff[1024];
@@ -197,8 +195,9 @@ void __fastcall TMainForm::FormShow(TObject *Sender)
}
}
if (inputflag) SetOutFile();
-
+
UpdateEnable();
+ DisableHighlight();
}
// callback on form close ---------------------------------------------------
void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
@@ -939,9 +938,6 @@ int __fastcall TMainForm::GetOption(prcopt_t &prcopt, solopt_t &solopt,
prcopt.exsats[sat-1]=ex;
}
}
- // extended receiver error model option
- prcopt.exterr=ExtErr;
-
strcpy(prcopt.rnxopt[0],RnxOpts1.c_str());
strcpy(prcopt.rnxopt[1],RnxOpts2.c_str());
strcpy(prcopt.pppopt,PPPOpts.c_str());
@@ -954,6 +950,7 @@ int __fastcall TMainForm::GetOption(prcopt_t &prcopt, solopt_t &solopt,
solopt.degf =LatLonFormat;
solopt.outhead =OutputHead;
solopt.outopt =OutputOpt;
+ solopt.outvel =OutputVel;
solopt.maxsolstd=MaxSolStd;
solopt.datum =OutputDatum;
solopt.height =OutputHeight;
@@ -1029,7 +1026,7 @@ TStringList * __fastcall TMainForm::ReadList(TIniFile *ini, AnsiString cat,
for (i=0;i<100;i++) {
item=ini->ReadString(cat,s.sprintf("%s_%03d",key.c_str(),i),"");
- if (item!="") list->Add(item); else break;
+ if (item!=""&&list->IndexOf(item)<0) list->Add(item);
}
return list;
}
@@ -1258,6 +1255,7 @@ void __fastcall TMainForm::LoadOpt(void)
FieldSep =ini->ReadString ("opt","fieldsep", "");
OutputHead =ini->ReadInteger("opt","outputhead", 1);
OutputOpt =ini->ReadInteger("opt","outputopt", 1);
+ OutputVel =ini->ReadInteger("opt","outputvel", 0);
OutputSingle =ini->ReadInteger("opt","outputsingle", 0);
MaxSolStd =ini->ReadFloat ("opt","maxsolstd", 0.0);
OutputDatum =ini->ReadInteger("opt","outputdatum", 0);
@@ -1272,7 +1270,7 @@ void __fastcall TMainForm::LoadOpt(void)
MeasErr2 =ini->ReadFloat ("opt","measerr2", 0.003);
MeasErr3 =ini->ReadFloat ("opt","measerr3", 0.003);
MeasErr4 =ini->ReadFloat ("opt","measerr4", 0.000);
- MeasErr5 =ini->ReadFloat ("opt","measerr5", 10.000);
+ MeasErr5 =ini->ReadFloat ("opt","measerr5", 1.000);
SatClkStab =ini->ReadFloat ("opt","satclkstab", 5E-12);
PrNoise1 =ini->ReadFloat ("opt","prnoise1", 1E-4);
PrNoise2 =ini->ReadFloat ("opt","prnoise2", 1E-3);
@@ -1338,21 +1336,6 @@ void __fastcall TMainForm::LoadOpt(void)
for (p=BaseList.c_str();*p;p++) {
if ((p=strstr(p,"@@"))) strncpy(p,"\r\n",2); else break;
}
- ExtErr.ena[0] =ini->ReadInteger("opt","exterr_ena0", 0);
- ExtErr.ena[1] =ini->ReadInteger("opt","exterr_ena1", 0);
- ExtErr.ena[2] =ini->ReadInteger("opt","exterr_ena2", 0);
- ExtErr.ena[3] =ini->ReadInteger("opt","exterr_ena3", 0);
- for (int i=0;i<3;i++) for (int j=0;j<6;j++) {
- ExtErr.cerr[i][j]=ini->ReadFloat("opt",s.sprintf("exterr_cerr%d%d",i,j),0.3);
- }
- for (int i=0;i<3;i++) for (int j=0;j<6;j++) {
- ExtErr.perr[i][j]=ini->ReadFloat("opt",s.sprintf("exterr_perr%d%d",i,j),0.003);
- }
- ExtErr.gloicb[0] =ini->ReadFloat ("opt","exterr_gloicb0",0.0);
- ExtErr.gloicb[1] =ini->ReadFloat ("opt","exterr_gloicb1",0.0);
- ExtErr.gpsglob[0] =ini->ReadFloat ("opt","exterr_gpsglob0",0.0);
- ExtErr.gpsglob[1] =ini->ReadFloat ("opt","exterr_gpsglob1",0.0);
-
ConvDialog->TimeSpan ->Checked =ini->ReadInteger("conv","timespan", 0);
ConvDialog->TimeIntF ->Checked =ini->ReadInteger("conv","timeintf", 0);
ConvDialog->TimeY1 ->Text =ini->ReadString ("conv","timey1","2000/01/01");
@@ -1379,6 +1362,18 @@ void __fastcall TMainForm::LoadOpt(void)
Width=ini->ReadInteger("window","width",486);
delete ini;
}
+// disable highlight of combo-boxes -----------------------------------------
+void __fastcall TMainForm::DisableHighlight(void)
+{
+ ::PostMessage(InputFile1->Handle,CB_SETEDITSEL,-1,0);
+ ::PostMessage(InputFile2->Handle,CB_SETEDITSEL,-1,0);
+ ::PostMessage(InputFile3->Handle,CB_SETEDITSEL,-1,0);
+ ::PostMessage(InputFile4->Handle,CB_SETEDITSEL,-1,0);
+ ::PostMessage(InputFile5->Handle,CB_SETEDITSEL,-1,0);
+ ::PostMessage(InputFile6->Handle,CB_SETEDITSEL,-1,0);
+ ::PostMessage(OutputFile->Handle,CB_SETEDITSEL,-1,0);
+ ::PostMessage(TimeInt ->Handle,CB_SETEDITSEL,-1,0);
+}
// save options to ini file -------------------------------------------------
void __fastcall TMainForm::SaveOpt(void)
{
@@ -1469,6 +1464,7 @@ void __fastcall TMainForm::SaveOpt(void)
ini->WriteString ("opt","fieldsep", FieldSep );
ini->WriteInteger("opt","outputhead", OutputHead );
ini->WriteInteger("opt","outputopt", OutputOpt );
+ ini->WriteInteger("opt","outputvel", OutputVel );
ini->WriteInteger("opt","outputsingle",OutputSingle);
ini->WriteFloat ("opt","maxsolstd", MaxSolStd );
ini->WriteInteger("opt","outputdatum", OutputDatum );
@@ -1547,22 +1543,6 @@ void __fastcall TMainForm::SaveOpt(void)
for (int i=0;i<10;i++) {
ini->WriteString("opt",s.sprintf("baselist%d",i+1),BaseList.SubString(i*2000,2000));
}
- ini->WriteInteger("opt","exterr_ena0", ExtErr.ena[0]);
- ini->WriteInteger("opt","exterr_ena1", ExtErr.ena[1]);
- ini->WriteInteger("opt","exterr_ena2", ExtErr.ena[2]);
- ini->WriteInteger("opt","exterr_ena3", ExtErr.ena[3]);
-
- for (int i=0;i<3;i++) for (int j=0;j<6;j++) {
- ini->WriteFloat("opt",s.sprintf("exterr_cerr%d%d",i,j),ExtErr.cerr[i][j]);
- }
- for (int i=0;i<3;i++) for (int j=0;j<6;j++) {
- ini->WriteFloat("opt",s.sprintf("exterr_perr%d%d",i,j),ExtErr.perr[i][j]);
- }
- ini->WriteFloat ("opt","exterr_gloicb0",ExtErr.gloicb[0]);
- ini->WriteFloat ("opt","exterr_gloicb1",ExtErr.gloicb[1]);
- ini->WriteFloat ("opt","exterr_gpsglob0",ExtErr.gpsglob[0]);
- ini->WriteFloat ("opt","exterr_gpsglob1",ExtErr.gpsglob[1]);
-
ini->WriteInteger("conv","timespan", ConvDialog->TimeSpan ->Checked );
ini->WriteString ("conv","timey1", ConvDialog->TimeY1 ->Text );
ini->WriteString ("conv","timeh1", ConvDialog->TimeH1 ->Text );
@@ -1589,9 +1569,7 @@ void __fastcall TMainForm::SaveOpt(void)
ini->WriteInteger("window","width",Width);
delete ini;
}
-
//---------------------------------------------------------------------------
-
void __fastcall TMainForm::Panel4Resize(TObject *Sender)
{
TButton *btns[]={
@@ -1615,9 +1593,10 @@ void __fastcall TMainForm::Panel4Resize(TObject *Sender)
BtnInputView5->Left=BtnInputView6->Left-BtnInputView5->Width;
BtnInputView4->Left=BtnInputView5->Left-BtnInputView4->Width;
BtnInputView3->Left=BtnInputView4->Left-BtnInputView3->Width;
+
+ DisableHighlight();
}
//---------------------------------------------------------------------------
-
void __fastcall TMainForm::Panel5Resize(TObject *Sender)
{
int w=Panel5->Width;
@@ -1626,22 +1605,30 @@ void __fastcall TMainForm::Panel5Resize(TObject *Sender)
OutDir->Width=w-BtnOutDir->Width-OutDir->Left-6;
BtnOutputFile->Left=w-BtnOutputFile->Width-5;
OutputFile->Width=w-BtnOutputFile->Width-OutputFile->Left-6;
+
+ DisableHighlight();
}
//---------------------------------------------------------------------------
-
void __fastcall TMainForm::Panel2Resize(TObject *Sender)
{
TBitBtn *btns[]={
BtnPlot,BtnView,BtnToKML,BtnOption,BtnExec,BtnExit
};
- int w=(Panel2->Width-2)/6;
+ int w=(Panel2->Width-4)/6;
for (int i=0;i<6;i++) {
- btns[i]->Width=w;
- btns[i]->Left=i*w+1;
+ btns[i]->Width=w-2;
+ btns[i]->Left=i*w+2;
}
BtnAbort->Width=BtnExec->Width;
BtnAbort->Left =BtnExec->Left;
}
//---------------------------------------------------------------------------
+void __fastcall TMainForm::ComboCloseUp(TObject *Sender)
+{
+ TComboBox *combo=(TComboBox *)Sender;
+
+ ::PostMessage(combo->Handle,CB_SETEDITSEL,-1,0);
+}
+//---------------------------------------------------------------------------
diff --git a/app/rtkpost/postmain.dfm b/app/winapp/rtkpost/postmain.dfm
similarity index 83%
rename from app/rtkpost/postmain.dfm
rename to app/winapp/rtkpost/postmain.dfm
index d5edab0d0..b860880f7 100644
--- a/app/rtkpost/postmain.dfm
+++ b/app/winapp/rtkpost/postmain.dfm
@@ -6,8 +6,9 @@ object MainForm: TMainForm
ClientHeight = 347
ClientWidth = 472
Color = clWindow
- Constraints.MaxHeight = 385
- Constraints.MinHeight = 385
+ Constraints.MaxHeight = 386
+ Constraints.MaxWidth = 800
+ Constraints.MinHeight = 386
Constraints.MinWidth = 488
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -16,7 +17,6 @@ object MainForm: TMainForm
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
- Scaled = False
OnClose = FormClose
OnCreate = FormCreate
OnShow = FormShow
@@ -26,127 +26,10 @@ object MainForm: TMainForm
Left = 0
Top = 0
Width = 472
- Height = 318
+ Height = 281
Align = alTop
BevelOuter = bvNone
TabOrder = 0
- object Message: TPanel
- AlignWithMargins = True
- Left = 1
- Top = 282
- Width = 470
- Height = 25
- Margins.Left = 1
- Margins.Top = 1
- Margins.Right = 1
- Margins.Bottom = 1
- Align = alTop
- BevelInner = bvRaised
- BevelOuter = bvLowered
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- TabOrder = 3
- object BtnAbout: TSpeedButton
- Left = 445
- Top = 2
- Width = 23
- Height = 21
- Align = alRight
- Caption = '?'
- Flat = True
- Font.Charset = DEFAULT_CHARSET
- Font.Color = clGray
- Font.Height = -11
- Font.Name = 'Tahoma'
- Font.Style = []
- ParentFont = False
- OnClick = BtnAboutClick
- ExplicitLeft = 443
- end
- object BtnOutputView2: TSpeedButton
- Left = 25
- Top = 2
- Width = 23
- Height = 21
- Hint = 'Show Debug Trace'
- Align = alLeft
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFF00000000000000000000000000000000000000
- 0000000000000000000000000000FFFFFF00FFFFFF000000FFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000
- FFFFFF808080808080808080808080808080FFFFFFFFFFFFFFFFFF000000FFFF
- FF00FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF000000FFFFFF00FFFFFF000000FFFFFF808080808080808080FFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000FFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000
- FFFFFF808080808080808080808080808080808080808080FFFFFF000000FFFF
- FF00FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF000000FFFFFF00FFFFFF00000000000000000000000000000000000000
- 0000000000000000000000000000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOutputView2Click
- end
- object BtnOutputView1: TSpeedButton
- Left = 2
- Top = 2
- Width = 23
- Height = 21
- Hint = 'Show Stat File'
- Align = alLeft
- Flat = True
- Glyph.Data = {
- 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
- 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFF00FFFFFF00000000000000000000000000000000000000
- 0000000000000000000000000000FFFFFF00FFFFFF000000FFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000
- FFFFFF808080808080808080808080808080FFFFFFFFFFFFFFFFFF000000FFFF
- FF00FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF000000FFFFFF00FFFFFF000000FFFFFF808080808080808080FFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000FFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000
- FFFFFF808080808080808080808080808080808080808080FFFFFF000000FFFF
- FF00FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFF000000FFFFFF00FFFFFF00000000000000000000000000000000000000
- 0000000000000000000000000000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
- FF00}
- ParentShowHint = False
- ShowHint = True
- OnClick = BtnOutputView1Click
- end
- end
- object Progress: TProgressBar
- AlignWithMargins = True
- Left = 2
- Top = 309
- Width = 468
- Height = 7
- Margins.Left = 2
- Margins.Top = 1
- Margins.Right = 2
- Margins.Bottom = 1
- Align = alTop
- Smooth = True
- Step = 1
- TabOrder = 4
- end
object Panel3: TPanel
AlignWithMargins = True
Left = 1
@@ -161,20 +44,6 @@ object MainForm: TMainForm
BevelInner = bvRaised
BevelOuter = bvLowered
TabOrder = 0
- object LabelTimeInt: TLabel
- Left = 382
- Top = 21
- Width = 5
- Height = 13
- Caption = 's'
- end
- object LabelTimeUnit: TLabel
- Left = 450
- Top = 21
- Width = 7
- Height = 13
- Caption = 'H'
- end
object BtnTime1: TSpeedButton
Left = 118
Top = 1
@@ -279,32 +148,6 @@ object MainForm: TMainForm
Wrap = True
OnChangingEx = TimeH2UDChangingEx
end
- object TimeIntF: TCheckBox
- Left = 331
- Top = 2
- Width = 61
- Height = 17
- Caption = 'Interval'
- TabOrder = 10
- OnClick = TimeIntFClick
- end
- object TimeUnitF: TCheckBox
- Left = 398
- Top = 2
- Width = 45
- Height = 17
- Caption = 'Unit'
- TabOrder = 12
- OnClick = TimeUnitFClick
- end
- object TimeUnit: TEdit
- Left = 398
- Top = 18
- Width = 47
- Height = 21
- TabOrder = 13
- Text = '24'
- end
object TimeY1UD: TUpDown
Left = 69
Top = 17
@@ -316,28 +159,78 @@ object MainForm: TMainForm
Wrap = True
OnChangingEx = TimeY1UDChangingEx
end
- object TimeInt: TComboBox
+ object Panel6: TPanel
Left = 331
- Top = 18
- Width = 47
- Height = 21
- DropDownCount = 20
- TabOrder = 11
- Text = '0'
- Items.Strings = (
- '0'
- '0.05'
- '0.1'
- '0.2'
- '0.25'
- '0.5'
- '1'
- '2'
- '5'
- '10'
- '15'
- '30'
- '60')
+ Top = 2
+ Width = 137
+ Height = 39
+ Align = alRight
+ BevelOuter = bvNone
+ TabOrder = 10
+ object LabelTimeInt: TLabel
+ Left = 58
+ Top = 19
+ Width = 5
+ Height = 13
+ Caption = 's'
+ end
+ object LabelTimeUnit: TLabel
+ Left = 123
+ Top = 19
+ Width = 7
+ Height = 13
+ Caption = 'H'
+ end
+ object TimeIntF: TCheckBox
+ Left = 6
+ Top = 0
+ Width = 61
+ Height = 17
+ Caption = 'Interval'
+ TabOrder = 0
+ OnClick = TimeIntFClick
+ end
+ object TimeInt: TComboBox
+ Left = 6
+ Top = 16
+ Width = 47
+ Height = 21
+ DropDownCount = 20
+ TabOrder = 1
+ Text = '0'
+ OnCloseUp = ComboCloseUp
+ Items.Strings = (
+ '0'
+ '0.05'
+ '0.1'
+ '0.2'
+ '0.25'
+ '0.5'
+ '1'
+ '2'
+ '5'
+ '10'
+ '15'
+ '30'
+ '60')
+ end
+ object TimeUnitF: TCheckBox
+ Left = 72
+ Top = 0
+ Width = 45
+ Height = 17
+ Caption = 'Unit'
+ TabOrder = 2
+ OnClick = TimeUnitFClick
+ end
+ object TimeUnit: TEdit
+ Left = 72
+ Top = 16
+ Width = 47
+ Height = 21
+ TabOrder = 3
+ Text = '24'
+ end
end
end
object Panel4: TPanel
@@ -622,13 +515,15 @@ object MainForm: TMainForm
ParentFont = False
end
object InputFile1: TComboBox
- Left = 4
+ Left = 3
Top = 18
Width = 434
Height = 21
+ AutoComplete = False
DropDownCount = 20
TabOrder = 0
OnChange = InputFile1Change
+ OnCloseUp = ComboCloseUp
end
object BtnInputFile1: TButton
Left = 439
@@ -665,8 +560,10 @@ object MainForm: TMainForm
Top = 92
Width = 434
Height = 21
+ AutoComplete = False
DropDownCount = 20
TabOrder = 4
+ OnCloseUp = ComboCloseUp
end
object BtnInputFile2: TButton
Left = 439
@@ -688,16 +585,20 @@ object MainForm: TMainForm
Top = 55
Width = 434
Height = 21
+ AutoComplete = False
DropDownCount = 20
TabOrder = 2
+ OnCloseUp = ComboCloseUp
end
object InputFile4: TComboBox
Left = 4
Top = 114
Width = 434
Height = 21
+ AutoComplete = False
DropDownCount = 20
TabOrder = 6
+ OnCloseUp = ComboCloseUp
end
object BtnInputFile4: TButton
Left = 439
@@ -719,8 +620,10 @@ object MainForm: TMainForm
Top = 136
Width = 434
Height = 21
+ AutoComplete = False
DropDownCount = 20
TabOrder = 8
+ OnCloseUp = ComboCloseUp
end
object BtnInputFile5: TButton
Left = 439
@@ -742,8 +645,10 @@ object MainForm: TMainForm
Top = 158
Width = 434
Height = 21
+ AutoComplete = False
DropDownCount = 20
TabOrder = 10
+ OnCloseUp = ComboCloseUp
end
object BtnInputFile6: TButton
Left = 439
@@ -778,14 +683,14 @@ object MainForm: TMainForm
OnResize = Panel5Resize
object Label1: TLabel
Left = 6
- Top = 6
+ Top = 5
Width = 38
Height = 13
Caption = 'Solution'
end
object LabelOutDir: TLabel
Left = 65
- Top = 6
+ Top = 5
Width = 13
Height = 13
Caption = 'Dir'
@@ -803,8 +708,10 @@ object MainForm: TMainForm
Top = 24
Width = 434
Height = 21
+ AutoComplete = False
DropDownCount = 20
TabOrder = 3
+ OnCloseUp = ComboCloseUp
end
object BtnOutputFile: TButton
Left = 439
@@ -849,11 +756,16 @@ object MainForm: TMainForm
end
end
object Panel2: TPanel
- Left = 0
- Top = 318
- Width = 472
- Height = 29
- Align = alClient
+ AlignWithMargins = True
+ Left = 2
+ Top = 316
+ Width = 469
+ Height = 30
+ Margins.Left = 2
+ Margins.Top = 1
+ Margins.Right = 1
+ Margins.Bottom = 1
+ Align = alBottom
BevelOuter = bvNone
TabOrder = 1
OnResize = Panel2Resize
@@ -1022,6 +934,123 @@ object MainForm: TMainForm
OnClick = BtnExitClick
end
end
+ object Progress: TProgressBar
+ AlignWithMargins = True
+ Left = 2
+ Top = 279
+ Width = 468
+ Height = 7
+ Margins.Left = 2
+ Margins.Top = 1
+ Margins.Right = 2
+ Margins.Bottom = 1
+ Align = alBottom
+ Smooth = True
+ Step = 1
+ TabOrder = 2
+ end
+ object Message: TPanel
+ AlignWithMargins = True
+ Left = 1
+ Top = 289
+ Width = 470
+ Height = 25
+ Margins.Left = 1
+ Margins.Top = 2
+ Margins.Right = 1
+ Margins.Bottom = 1
+ Align = alBottom
+ BevelInner = bvRaised
+ BevelOuter = bvLowered
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clGray
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 3
+ object BtnAbout: TSpeedButton
+ Left = 445
+ Top = 2
+ Width = 23
+ Height = 21
+ Align = alRight
+ Caption = '?'
+ Flat = True
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clGray
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ OnClick = BtnAboutClick
+ ExplicitLeft = 443
+ end
+ object BtnOutputView2: TSpeedButton
+ Left = 25
+ Top = 2
+ Width = 23
+ Height = 21
+ Hint = 'Show Debug Trace'
+ Align = alLeft
+ Flat = True
+ Glyph.Data = {
+ 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
+ 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFF00000000000000000000000000000000000000
+ 0000000000000000000000000000FFFFFF00FFFFFF000000FFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000
+ FFFFFF808080808080808080808080808080FFFFFFFFFFFFFFFFFF000000FFFF
+ FF00FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFF000000FFFFFF00FFFFFF000000FFFFFF808080808080808080FFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000FFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000
+ FFFFFF808080808080808080808080808080808080808080FFFFFF000000FFFF
+ FF00FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFF000000FFFFFF00FFFFFF00000000000000000000000000000000000000
+ 0000000000000000000000000000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00}
+ ParentShowHint = False
+ ShowHint = True
+ OnClick = BtnOutputView2Click
+ end
+ object BtnOutputView1: TSpeedButton
+ Left = 2
+ Top = 2
+ Width = 23
+ Height = 21
+ Hint = 'Show Stat File'
+ Align = alLeft
+ Flat = True
+ Glyph.Data = {
+ 3E020000424D3E0200000000000036000000280000000D0000000D0000000100
+ 1800000000000802000000000000000000000000000000000000FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFF00FFFFFF00000000000000000000000000000000000000
+ 0000000000000000000000000000FFFFFF00FFFFFF000000FFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000
+ FFFFFF808080808080808080808080808080FFFFFFFFFFFFFFFFFF000000FFFF
+ FF00FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFF000000FFFFFF00FFFFFF000000FFFFFF808080808080808080FFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000FFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFF00FFFFFF000000
+ FFFFFF808080808080808080808080808080808080808080FFFFFF000000FFFF
+ FF00FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFF000000FFFFFF00FFFFFF00000000000000000000000000000000000000
+ 0000000000000000000000000000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FF00}
+ ParentShowHint = False
+ ShowHint = True
+ OnClick = BtnOutputView1Click
+ end
+ end
object OpenDialog: TOpenDialog
Filter =
'All (*.*)|*.*|RINEX OBS (*.obs,*.*O,*.*D)|*.obs;*.*O;*.*D|RINEX ' +
diff --git a/app/rtkpost/postmain.h b/app/winapp/rtkpost/postmain.h
similarity index 97%
rename from app/rtkpost/postmain.h
rename to app/winapp/rtkpost/postmain.h
index 47d0a04ff..e81227d2d 100644
--- a/app/rtkpost/postmain.h
+++ b/app/winapp/rtkpost/postmain.h
@@ -96,6 +96,7 @@ class TMainForm : public TForm
TBitBtn *BtnToKML;
TBitBtn *BtnExit;
TLabel *Debug;
+ TPanel *Panel6;
void __fastcall FormCreate (TObject *Sender);
void __fastcall FormShow (TObject *Sender);
@@ -153,6 +154,7 @@ class TMainForm : public TForm
TUpDownDirection Direction);
void __fastcall TimeH2UDChangingEx(TObject *Sender, bool &AllowChange, int NewValue,
TUpDownDirection Direction);
+ void __fastcall ComboCloseUp(TObject *Sender);
private:
void __fastcall DropFiles (TWMDropFiles msg); // for files drop
@@ -177,6 +179,7 @@ class TMainForm : public TForm
void __fastcall SetTime1(gtime_t time);
void __fastcall SetTime2(gtime_t time);
void __fastcall UpdateEnable(void);
+ void __fastcall DisableHighlight(void);
void __fastcall LoadOpt(void);
void __fastcall SaveOpt(void);
@@ -193,7 +196,7 @@ class TMainForm : public TForm
int OutCntResetAmb,FixCntHoldAmb,LockCntFixAmb,RovPosType,RefPosType;
int SatEphem,NavSys;
int RovAntPcv,RefAntPcv,AmbRes,GloAmbRes,BdsAmbRes;
- int OutputHead,OutputOpt,OutputSingle,OutputDatum;
+ int OutputHead,OutputOpt,OutputVel,OutputSingle,OutputDatum;
int OutputHeight,OutputGeoid,DebugTrace,DebugStatus,BaseLineConst;
int SolFormat,TimeFormat,LatLonFormat,IntpRefObs,NetRSCorr,SatClkCorr;
int SbasCorr,SbasCorr1,SbasCorr2,SbasCorr3,SbasCorr4,TimeDecimal;
@@ -208,7 +211,6 @@ class TMainForm : public TForm
double RovPos[3],RefPos[3],BaseLine[2];
double MaxSolStd;
snrmask_t SnrMask;
- exterr_t ExtErr;
AnsiString RnxOpts1,RnxOpts2,PPPOpts;
AnsiString FieldSep,RovAnt,RefAnt,AntPcvFile,StaPosFile,PrecEphFile;
diff --git a/app/rtkpost/postopt.cpp b/app/winapp/rtkpost/postopt.cpp
similarity index 97%
rename from app/rtkpost/postopt.cpp
rename to app/winapp/rtkpost/postopt.cpp
index 037bd7fbd..5be742db4 100644
--- a/app/rtkpost/postopt.cpp
+++ b/app/winapp/rtkpost/postopt.cpp
@@ -7,8 +7,8 @@
#include "keydlg.h"
#include "viewer.h"
#include "refdlg.h"
-#include "extopt.h"
#include "maskoptdlg.h"
+#include "freqdlg.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
@@ -25,17 +25,17 @@ __fastcall TOptDialog::TOptDialog(TComponent* Owner)
: TForm(Owner)
{
AnsiString label,s;
- int freq[]={1,2,5,6,7,8,9};
int nglo=MAXPRNGLO,ngal=MAXPRNGAL,nqzs=MAXPRNQZS,ncmp=MAXPRNCMP;
int nirn=MAXPRNIRN;
-#if 0
Freq->Items->Clear();
for (int i=0;i0?"+":"L")+s.sprintf("%d",freq[i]);
- Freq->Items->Add(label);
+ label="L1";
+ for (int j=1;j<=i;j++) {
+ label+=s.sprintf("+%d",j+1);
+ }
+ Freq->Items->Add(label);
}
-#endif
if (nglo<=0) NavSys2->Enabled=false;
if (ngal<=0) NavSys3->Enabled=false;
if (nqzs<=0) NavSys4->Enabled=false;
@@ -370,13 +370,13 @@ void __fastcall TOptDialog::GetOpt(void)
NavSys4 ->Checked =MainForm->NavSys&SYS_QZS;
NavSys5 ->Checked =MainForm->NavSys&SYS_SBS;
NavSys6 ->Checked =MainForm->NavSys&SYS_CMP;
+ NavSys7 ->Checked =MainForm->NavSys&SYS_IRN;
PosOpt1 ->Checked =MainForm->PosOpt[0];
PosOpt2 ->Checked =MainForm->PosOpt[1];
PosOpt3 ->Checked =MainForm->PosOpt[2];
PosOpt4 ->Checked =MainForm->PosOpt[3];
PosOpt5 ->Checked =MainForm->PosOpt[4];
PosOpt6 ->Checked =MainForm->PosOpt[5];
-// MapFunc ->ItemIndex =MainForm->MapFunc;
AmbRes ->ItemIndex =MainForm->AmbRes;
GloAmbRes ->ItemIndex =MainForm->GloAmbRes;
@@ -406,6 +406,7 @@ void __fastcall TOptDialog::GetOpt(void)
FieldSep ->Text =MainForm->FieldSep;
OutputHead ->ItemIndex =MainForm->OutputHead;
OutputOpt ->ItemIndex =MainForm->OutputOpt;
+ OutputVel ->ItemIndex =MainForm->OutputVel;
OutputSingle ->ItemIndex =MainForm->OutputSingle;
MaxSolStd ->Text =s.sprintf("%.2g",MainForm->MaxSolStd);
OutputDatum ->ItemIndex =MainForm->OutputDatum;
@@ -464,8 +465,6 @@ void __fastcall TOptDialog::GetOpt(void)
RovList ->Text =MainForm->RovList;
BaseList ->Text =MainForm->BaseList;
- ExtErr =MainForm->ExtErr;
-
UpdateEnable();
}
//---------------------------------------------------------------------------
@@ -492,13 +491,13 @@ void __fastcall TOptDialog::SetOpt(void)
if (NavSys4->Checked) MainForm->NavSys|=SYS_QZS;
if (NavSys5->Checked) MainForm->NavSys|=SYS_SBS;
if (NavSys6->Checked) MainForm->NavSys|=SYS_CMP;
+ if (NavSys7->Checked) MainForm->NavSys|=SYS_IRN;
MainForm->PosOpt[0] =PosOpt1 ->Checked;
MainForm->PosOpt[1] =PosOpt2 ->Checked;
MainForm->PosOpt[2] =PosOpt3 ->Checked;
MainForm->PosOpt[3] =PosOpt4 ->Checked;
MainForm->PosOpt[4] =PosOpt5 ->Checked;
MainForm->PosOpt[5] =PosOpt6 ->Checked;
-// MainForm->MapFunc =MapFunc ->ItemIndex;
MainForm->AmbRes =AmbRes ->ItemIndex;
MainForm->GloAmbRes =GloAmbRes ->ItemIndex;
@@ -529,6 +528,7 @@ void __fastcall TOptDialog::SetOpt(void)
MainForm->FieldSep =FieldSep ->Text;
MainForm->OutputHead =OutputHead ->ItemIndex;
MainForm->OutputOpt =OutputOpt ->ItemIndex;
+ MainForm->OutputVel =OutputVel ->ItemIndex;
MainForm->OutputSingle =OutputSingle->ItemIndex;
MainForm->MaxSolStd =str2dbl(MaxSolStd->Text);
MainForm->OutputDatum =OutputDatum->ItemIndex;
@@ -584,8 +584,6 @@ void __fastcall TOptDialog::SetOpt(void)
MainForm->RovList =RovList ->Text;
MainForm->BaseList =BaseList ->Text;
- MainForm->ExtErr =ExtErr;
-
UpdateEnable();
}
//---------------------------------------------------------------------------
@@ -634,7 +632,6 @@ void __fastcall TOptDialog::LoadOpt(AnsiString file)
PosOpt4 ->Checked =prcopt.posopt[3];
PosOpt5 ->Checked =prcopt.posopt[4];
PosOpt6 ->Checked =prcopt.posopt[5];
-// MapFunc ->ItemIndex =prcopt.mapfunc;
AmbRes ->ItemIndex =prcopt.modear;
GloAmbRes ->ItemIndex =prcopt.glomodear;
@@ -923,16 +920,16 @@ void __fastcall TOptDialog::UpdateEnable(void)
RovAntPcv ->Enabled=rel||ppp;
RovAnt ->Enabled=(rel||ppp)&&RovAntPcv->Checked;
- RovAntE ->Enabled=(rel||ppp)&&RovAntPcv->Checked;
- RovAntN ->Enabled=(rel||ppp)&&RovAntPcv->Checked;
- RovAntU ->Enabled=(rel||ppp)&&RovAntPcv->Checked;
- LabelRovAntD ->Enabled=(rel||ppp)&&RovAntPcv->Checked;
+ RovAntE ->Enabled=(rel||ppp)&&RovAntPcv->Checked&&RovAnt->Text!="*";
+ RovAntN ->Enabled=(rel||ppp)&&RovAntPcv->Checked&&RovAnt->Text!="*";
+ RovAntU ->Enabled=(rel||ppp)&&RovAntPcv->Checked&&RovAnt->Text!="*";
+ LabelRovAntD ->Enabled=(rel||ppp)&&RovAntPcv->Checked&&RovAnt->Text!="*";
RefAntPcv ->Enabled=rel;
RefAnt ->Enabled=rel&&RefAntPcv->Checked;
- RefAntE ->Enabled=rel&&RefAntPcv->Checked;
- RefAntN ->Enabled=rel&&RefAntPcv->Checked;
- RefAntU ->Enabled=rel&&RefAntPcv->Checked;
- LabelRefAntD ->Enabled=rel&&RefAntPcv->Checked;
+ RefAntE ->Enabled=rel&&RefAntPcv->Checked&&RefAnt->Text!="*";
+ RefAntN ->Enabled=rel&&RefAntPcv->Checked&&RefAnt->Text!="*";
+ RefAntU ->Enabled=rel&&RefAntPcv->Checked&&RefAnt->Text!="*";
+ LabelRefAntD ->Enabled=rel&&RefAntPcv->Checked&&RefAnt->Text!="*";
RovPosType ->Enabled=PosMode->ItemIndex==PMODE_FIXED||PosMode->ItemIndex==PMODE_PPP_FIXED;
RovPos1 ->Enabled=RovPosType->Enabled&&RovPosType->ItemIndex<=2;
@@ -1049,11 +1046,6 @@ void __fastcall TOptDialog::ExtEna2Click(TObject *Sender)
UpdateEnable();
}
//---------------------------------------------------------------------------
-void __fastcall TOptDialog::BtnExtOptClick(TObject *Sender)
-{
- ExtOptDialog->ShowModal();
-}
-//---------------------------------------------------------------------------
void __fastcall TOptDialog::BtnMaskClick(TObject *Sender)
{
MaskOptDialog->Mask=SnrMask;
@@ -1066,5 +1058,9 @@ void __fastcall TOptDialog::NavSys6Click(TObject *Sender)
UpdateEnable();
}
//---------------------------------------------------------------------------
-
+void __fastcall TOptDialog::BtnFreqClick(TObject *Sender)
+{
+ FreqDialog->ShowModal();
+}
+//---------------------------------------------------------------------------
diff --git a/app/rtkpost/postopt.dfm b/app/winapp/rtkpost/postopt.dfm
similarity index 95%
rename from app/rtkpost/postopt.dfm
rename to app/winapp/rtkpost/postopt.dfm
index 1252549cc..31e38bdef 100644
--- a/app/rtkpost/postopt.dfm
+++ b/app/winapp/rtkpost/postopt.dfm
@@ -4,7 +4,7 @@ object OptDialog: TOptDialog
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Caption = 'Options'
- ClientHeight = 295
+ ClientHeight = 298
ClientWidth = 411
Color = clWhite
Font.Charset = DEFAULT_CHARSET
@@ -54,17 +54,17 @@ object OptDialog: TOptDialog
end
object BtnCancel: TButton
Left = 310
- Top = 264
- Width = 99
+ Top = 266
+ Width = 96
Height = 29
Caption = '&Cancel'
ModalResult = 2
TabOrder = 1
end
object BtnOk: TButton
- Left = 211
- Top = 264
- Width = 99
+ Left = 212
+ Top = 266
+ Width = 96
Height = 29
Caption = '&OK'
ModalResult = 1
@@ -72,18 +72,18 @@ object OptDialog: TOptDialog
OnClick = BtnOkClick
end
object BtnSave: TButton
- Left = 100
- Top = 264
- Width = 99
+ Left = 102
+ Top = 266
+ Width = 96
Height = 29
Caption = '&Save...'
TabOrder = 3
OnClick = BtnSaveClick
end
object BtnLoad: TButton
- Left = 1
- Top = 264
- Width = 99
+ Left = 4
+ Top = 266
+ Width = 96
Height = 29
Caption = '&Load...'
TabOrder = 2
@@ -98,7 +98,6 @@ object OptDialog: TOptDialog
TabOrder = 4
object TabSheet1: TTabSheet
Caption = 'Setting&1'
- ExplicitHeight = 234
object Label3: TLabel
Left = 24
Top = 73
@@ -155,6 +154,16 @@ object OptDialog: TOptDialog
Height = 13
Caption = 'Troposphere Correction'
end
+ object BtnFreq: TSpeedButton
+ Left = 152
+ Top = 23
+ Width = 18
+ Height = 22
+ Caption = '?'
+ Flat = True
+ Spacing = 0
+ OnClick = BtnFreqClick
+ end
object DynamicModel: TComboBox
Left = 248
Top = 70
@@ -187,9 +196,7 @@ object OptDialog: TOptDialog
'Iono-Free LC'
'Estimate TEC'
'IONEX TEC'
- 'QZSS Broardcast'
- 'QZSS LEX'
- 'Input TEC')
+ 'QZSS Broardcast')
end
object TropOpt: TComboBox
Left = 248
@@ -206,8 +213,7 @@ object OptDialog: TOptDialog
'Saastamoinen'
'SBAS'
'Estimate ZTD'
- 'Estimate ZTD+Grad'
- 'Input ZTD')
+ 'Estimate ZTD+Grad')
end
object PosMode: TComboBox
Left = 248
@@ -243,9 +249,10 @@ object OptDialog: TOptDialog
OnChange = FreqChange
Items.Strings = (
'L1'
- 'L1+L2'
- 'L1+L2+L5'
- 'L1+L5')
+ 'L1+2'
+ 'L1+2+3'
+ 'L1+2+3+4'
+ 'L1+2+3+4+5')
end
object Solution: TComboBox
Left = 325
@@ -277,8 +284,7 @@ object OptDialog: TOptDialog
'Precise'
'Broadcast+SBAS'
'Broadcast+SSR APC'
- 'Broadcast+SSR CoM'
- 'QZSS LEX')
+ 'Broadcast+SSR CoM')
end
object ExSats: TEdit
Left = 221
@@ -289,7 +295,7 @@ object OptDialog: TOptDialog
end
object NavSys1: TCheckBox
Left = 24
- Top = 210
+ Top = 211
Width = 49
Height = 17
Caption = 'GPS'
@@ -298,38 +304,30 @@ object OptDialog: TOptDialog
TabOrder = 17
end
object NavSys2: TCheckBox
- Left = 68
- Top = 210
+ Left = 66
+ Top = 211
Width = 71
Height = 17
- Caption = 'GLO'
+ Caption = 'GLONASS'
TabOrder = 18
OnClick = NavSys2Click
end
object NavSys3: TCheckBox
- Left = 114
- Top = 210
+ Left = 135
+ Top = 211
Width = 61
Height = 17
Caption = 'Galileo'
TabOrder = 19
end
object NavSys4: TCheckBox
- Left = 169
- Top = 210
+ Left = 188
+ Top = 211
Width = 61
Height = 17
Caption = 'QZSS'
TabOrder = 20
end
- object NavSys5: TCheckBox
- Left = 222
- Top = 210
- Width = 61
- Height = 17
- Caption = 'SBAS'
- TabOrder = 21
- end
object TideCorr: TComboBox
Left = 325
Top = 70
@@ -346,12 +344,12 @@ object OptDialog: TOptDialog
'Solid/OTL')
end
object NavSys6: TCheckBox
- Left = 274
- Top = 210
+ Left = 239
+ Top = 211
Width = 61
Height = 17
- Caption = 'BeiDou'
- TabOrder = 22
+ Caption = 'BDS'
+ TabOrder = 21
OnClick = NavSys6Click
end
object ElMask: TComboBox
@@ -439,19 +437,26 @@ object OptDialog: TOptDialog
TabOrder = 15
end
object NavSys7: TCheckBox
- Left = 328
- Top = 210
+ Left = 284
+ Top = 211
Width = 61
Height = 17
- Caption = 'IRNSS'
- TabOrder = 23
+ Caption = 'NavIC'
+ TabOrder = 22
OnClick = NavSys6Click
end
+ object NavSys5: TCheckBox
+ Left = 338
+ Top = 211
+ Width = 61
+ Height = 17
+ Caption = 'SBAS'
+ TabOrder = 23
+ end
end
object TabSheet2: TTabSheet
Caption = 'Setting&2'
ImageIndex = 1
- ExplicitHeight = 234
object Label25: TLabel
Left = 24
Top = 7
@@ -718,7 +723,6 @@ object OptDialog: TOptDialog
object TabSheet3: TTabSheet
Caption = 'O&utput'
ImageIndex = 2
- ExplicitHeight = 234
object LabelSolFormat: TLabel
Left = 24
Top = 9
@@ -763,17 +767,17 @@ object OptDialog: TOptDialog
end
object Label20: TLabel
Left = 24
- Top = 31
- Width = 210
+ Top = 30
+ Width = 194
Height = 13
- Caption = 'Output Header / Output Processing Options'
+ Caption = 'Output Header / Proc. Options / Velocity'
end
object Label36: TLabel
Left = 24
Top = 211
- Width = 217
+ Width = 180
Height = 13
- Caption = 'Output Solution Status / Output Debug Trace'
+ Caption = 'Output Solution Status / Debug Trace'
end
object Label21: TLabel
Left = 24
@@ -813,7 +817,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 3
+ TabOrder = 4
Text = 'ww ssss GPST'
Items.Strings = (
'ww ssss GPST'
@@ -828,7 +832,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 4
+ TabOrder = 5
Text = 'ddd.dddddd'
Items.Strings = (
'ddd.dddddd'
@@ -839,7 +843,7 @@ object OptDialog: TOptDialog
Top = 72
Width = 32
Height = 21
- TabOrder = 5
+ TabOrder = 6
end
object OutputDatum: TComboBox
Left = 248
@@ -848,7 +852,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 6
+ TabOrder = 7
Text = 'WGS84'
Items.Strings = (
'WGS84')
@@ -860,7 +864,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 7
+ TabOrder = 8
Text = 'Ellipsoidal'
OnClick = OutputHeightClick
Items.Strings = (
@@ -874,7 +878,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 8
+ TabOrder = 9
Text = 'Internal'
Items.Strings = (
'Internal'
@@ -885,8 +889,8 @@ object OptDialog: TOptDialog
end
object OutputHead: TComboBox
Left = 248
- Top = 28
- Width = 75
+ Top = 27
+ Width = 49
Height = 21
Style = csDropDownList
ItemIndex = 1
@@ -897,9 +901,9 @@ object OptDialog: TOptDialog
'ON')
end
object OutputOpt: TComboBox
- Left = 325
- Top = 28
- Width = 75
+ Left = 299
+ Top = 27
+ Width = 49
Height = 21
Style = csDropDownList
ItemIndex = 0
@@ -916,7 +920,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 9
+ TabOrder = 10
Text = 'OFF'
Items.Strings = (
'OFF'
@@ -933,7 +937,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 10
+ TabOrder = 11
Text = 'OFF'
Items.Strings = (
'OFF'
@@ -945,7 +949,7 @@ object OptDialog: TOptDialog
Top = 50
Width = 32
Height = 21
- TabOrder = 11
+ TabOrder = 12
Text = '3'
end
object NmeaIntv1: TEdit
@@ -954,7 +958,7 @@ object OptDialog: TOptDialog
Width = 75
Height = 21
Enabled = False
- TabOrder = 12
+ TabOrder = 13
Text = '0'
end
object NmeaIntv2: TEdit
@@ -963,7 +967,7 @@ object OptDialog: TOptDialog
Width = 75
Height = 21
Enabled = False
- TabOrder = 13
+ TabOrder = 14
Text = '0'
end
object SolStatic: TComboBox
@@ -973,7 +977,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 14
+ TabOrder = 15
Text = 'All'
Items.Strings = (
'All'
@@ -986,7 +990,7 @@ object OptDialog: TOptDialog
Height = 21
Style = csDropDownList
ItemIndex = 0
- TabOrder = 15
+ TabOrder = 16
Text = 'OFF'
Items.Strings = (
'OFF'
@@ -997,13 +1001,30 @@ object OptDialog: TOptDialog
Top = 94
Width = 75
Height = 21
- TabOrder = 16
+ TabOrder = 17
Text = '0'
end
+ object OutputVel: TComboBox
+ Left = 350
+ Top = 27
+ Width = 50
+ Height = 21
+ Style = csDropDownList
+ ItemIndex = 0
+ TabOrder = 3
+ Text = 'OFF'
+ Items.Strings = (
+ 'OFF'
+ 'ON')
+ end
end
object TabSheet4: TTabSheet
Caption = 'S&tatistics'
ImageIndex = 3
+ ExplicitLeft = 0
+ ExplicitTop = 0
+ ExplicitWidth = 0
+ ExplicitHeight = 0
object Label29: TLabel
Left = 34
Top = 213
@@ -1183,7 +1204,6 @@ object OptDialog: TOptDialog
object TabSheet5: TTabSheet
Caption = '&Positions'
ImageIndex = 4
- ExplicitHeight = 234
object Label4: TLabel
Left = 12
Top = 12
@@ -1227,7 +1247,7 @@ object OptDialog: TOptDialog
end
object GroupRefAnt: TGroupBox
Left = 1
- Top = 95
+ Top = 98
Width = 397
Height = 99
Caption = 'Base Station'
@@ -1239,12 +1259,20 @@ object OptDialog: TOptDialog
Height = 13
Caption = 'Delta-E/N/U (m)'
end
+ object Label24: TLabel
+ Left = 149
+ Top = 17
+ Width = 31
+ Height = 13
+ Caption = 'Datum'
+ Enabled = False
+ end
object RefAntE: TEdit
Left = 238
Top = 74
Width = 51
Height = 21
- TabOrder = 7
+ TabOrder = 8
Text = '0'
end
object RefAntN: TEdit
@@ -1252,7 +1280,7 @@ object OptDialog: TOptDialog
Top = 74
Width = 51
Height = 21
- TabOrder = 8
+ TabOrder = 9
Text = '0'
end
object RefAntU: TEdit
@@ -1260,7 +1288,7 @@ object OptDialog: TOptDialog
Top = 74
Width = 51
Height = 21
- TabOrder = 9
+ TabOrder = 10
Text = '0'
end
object RefPos1: TEdit
@@ -1268,7 +1296,7 @@ object OptDialog: TOptDialog
Top = 36
Width = 126
Height = 21
- TabOrder = 1
+ TabOrder = 2
Text = '0'
end
object RefPos2: TEdit
@@ -1276,7 +1304,7 @@ object OptDialog: TOptDialog
Top = 36
Width = 129
Height = 21
- TabOrder = 2
+ TabOrder = 3
Text = '0'
end
object RefPos3: TEdit
@@ -1284,7 +1312,7 @@ object OptDialog: TOptDialog
Top = 36
Width = 129
Height = 21
- TabOrder = 3
+ TabOrder = 4
Text = '0'
end
object BtnRefPos: TButton
@@ -1299,7 +1327,7 @@ object OptDialog: TOptDialog
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
- TabOrder = 4
+ TabOrder = 5
OnClick = BtnRefPosClick
end
object RefAntPcv: TCheckBox
@@ -1308,7 +1336,7 @@ object OptDialog: TOptDialog
Width = 155
Height = 17
Caption = 'Antenna Type (*: Auto)'
- TabOrder = 5
+ TabOrder = 6
OnClick = RovAntPcvClick
end
object RefAnt: TComboBox
@@ -1317,7 +1345,7 @@ object OptDialog: TOptDialog
Width = 230
Height = 21
DropDownCount = 16
- TabOrder = 6
+ TabOrder = 7
OnClick = RefAntClick
end
object RefPosType: TComboBox
@@ -1338,6 +1366,24 @@ object OptDialog: TOptDialog
'Get from Position File'
'RINEX Header Postion')
end
+ object DatumRef: TComboBox
+ Left = 186
+ Top = 14
+ Width = 76
+ Height = 21
+ Enabled = False
+ TabOrder = 1
+ Text = 'ITRF2014'
+ Items.Strings = (
+ 'ITRF2014'
+ 'NAD83'
+ 'ETRF2000'
+ 'SIRGAS95'
+ 'SIRGAS2000'
+ 'GDA94'
+ 'DREF91'
+ 'JGD2011')
+ end
end
object StaPosFile: TEdit
Left = 2
@@ -1480,6 +1526,10 @@ object OptDialog: TOptDialog
object TabSheet7: TTabSheet
Caption = '&Files'
ImageIndex = 6
+ ExplicitLeft = 0
+ ExplicitTop = 0
+ ExplicitWidth = 0
+ ExplicitHeight = 0
object Label1: TLabel
Left = 6
Top = 199
@@ -1820,7 +1870,6 @@ object OptDialog: TOptDialog
object TabSheet6: TTabSheet
Caption = '&Misc'
ImageIndex = 6
- ExplicitHeight = 234
object Label19: TLabel
Left = 184
Top = 136
@@ -2020,17 +2069,6 @@ object OptDialog: TOptDialog
end
end
end
- object BtnExtOpt: TButton
- Left = 1
- Top = 264
- Width = 69
- Height = 29
- Caption = 'Ext Opt...'
- Enabled = False
- TabOrder = 5
- Visible = False
- OnClick = BtnExtOptClick
- end
object OpenDialog: TOpenDialog
Filter =
'All (*.*)|*.*|PCV File (*.pcv,*.atx)|*.pcv;*.atx|Position File (' +
@@ -2039,14 +2077,14 @@ object OptDialog: TOptDialog
'(*.blq)|*.blq|Ionosphere Data File (*.*i,*stec)|*.*i;*.stec'
Options = [ofHideReadOnly, ofNoChangeDir, ofEnableSizing]
Title = 'Load File'
- Left = 81
- Top = 253
+ Left = 134
+ Top = 226
end
object SaveDialog: TSaveDialog
Filter = 'All (*.*)|*.*|Options File (*.conf)|*.conf'
Options = [ofHideReadOnly, ofNoChangeDir, ofEnableSizing]
Title = 'Save File'
- Left = 51
- Top = 253
+ Left = 104
+ Top = 227
end
end
diff --git a/app/rtkpost/postopt.h b/app/winapp/rtkpost/postopt.h
similarity index 98%
rename from app/rtkpost/postopt.h
rename to app/winapp/rtkpost/postopt.h
index d7b1b58a6..c62669a8a 100644
--- a/app/rtkpost/postopt.h
+++ b/app/winapp/rtkpost/postopt.h
@@ -203,7 +203,6 @@ class TOptDialog : public TForm
TLabel *Label17;
TEdit *RnxOpts1;
TLabel *Label60;
- TButton *BtnExtOpt;
TLabel *Label12;
TEdit *RnxOpts2;
TEdit *ThresAR2;
@@ -225,6 +224,10 @@ class TOptDialog : public TForm
TCheckBox *NavSys7;
TComboBox *OutputSingle;
TEdit *MaxSolStd;
+ TComboBox *OutputVel;
+ TSpeedButton *BtnFreq;
+ TLabel *Label24;
+ TComboBox *DatumRef;
void __fastcall BtnOkClick(TObject *Sender);
void __fastcall RovAntPcvClick(TObject *Sender);
void __fastcall FormShow(TObject *Sender);
@@ -273,9 +276,9 @@ class TOptDialog : public TForm
void __fastcall BtnBLQFileClick(TObject *Sender);
void __fastcall BtnEOPFileClick(TObject *Sender);
void __fastcall BtnEOPViewClick(TObject *Sender);
- void __fastcall BtnExtOptClick(TObject *Sender);
void __fastcall BtnMaskClick(TObject *Sender);
void __fastcall NavSys6Click(TObject *Sender);
+ void __fastcall BtnFreqClick(TObject *Sender);
private:
snrmask_t SnrMask;
int RovPosTypeP,RefPosTypeP;
@@ -287,7 +290,6 @@ class TOptDialog : public TForm
void __fastcall UpdateEnable(void);
void __fastcall UpdateEnableExtErr(void);
public:
- exterr_t ExtErr;
__fastcall TOptDialog(TComponent* Owner);
};
diff --git a/app/rtknavi_win64/rtknavi_win64.cbproj b/app/winapp/rtkpost/rtkpost.cbproj
similarity index 64%
rename from app/rtknavi_win64/rtknavi_win64.cbproj
rename to app/winapp/rtkpost/rtkpost.cbproj
index ed756c751..2351d81d3 100644
--- a/app/rtknavi_win64/rtknavi_win64.cbproj
+++ b/app/winapp/rtkpost/rtkpost.cbproj
@@ -1,13 +1,13 @@
- {42E6C10E-8653-47F0-A4FF-8FDB301373A3}
+ {E5CEB647-183C-40E4-9031-38756E3D2A91}
CppVCLApplication
- rtknavi_win64.cpp
+ rtkpost.cpp
True
Release
VCL
- 18.6
- Win32
+ 18.8
+ Win64
3
Application
@@ -59,50 +59,49 @@
true
- WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;ENAIRN;NFREQ=3;NEXOBS=3;$(BCC_Defines)
- false
+ true
false
false
- false
- false
false
+ false
+ false
+ false
false
- rtknavi_win64
- ..\..\src\rcv\;..\appcmn\;..\..\src\;..\rtknavi\;$(ILINK_LibraryPath)
- ..\..\src\rcv\;..\appcmn\;..\..\src\;..\rtknavi\;$(IncludePath)
+ rtkpost
+ ..\..\..\src\;..\appcmn\;..\..\src\;$(IncludePath)
+ ..\..\..\src\;..\appcmn\;..\..\src\;$(ILINK_LibraryPath)
false
false
- false
+ None
false
- None
- rtknavi_Icon.ico
+ rtkpost_Icon.ico
+ false
Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
- None
1041
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\src\rcv;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(DCC_ObjPath)
+ ..\..\..\rtklib_extlex;..\..\extion;..\..\extlex;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\extion;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;$(DCC_ObjPath)
vclx.bpi;vcl.bpi;$(PackageImports)
Windows
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\src\rcv;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
+ ..\..\..\rtklib_extlex;..\..\extion;..\..\extlex;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
false
true
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(ILINK_ObjectSearchPath)
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\extion;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\extion;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\..\src;..\src;$(ILINK_ObjectSearchPath)
false
- rtl.lib;vcl.lib;vclx.lib;bindengine.lib
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(DCC_ResourcePath)
+ rtl.lib;vcl.lib;vclx.lib
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\extion;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
+ ..\..\..\rtklib_extlex;..\..\extlex;..\..\extion;..\..\src\qzsext;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;$(DCC_ResourcePath)
JPHNE
- $(BDS)\include;..\appcmn;..\..\src;$(BCC_IncludePath)
+ WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;ENAIRN;NFREQ=5;LAPACK;$(BCC_Defines)
true
exe
_RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
_RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- -tWM
- ..\..\lib\omf\;$(ILINK_LibraryPath)
+ -tWM -AT -xp
+ C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.4.311\windows\mkl\lib\intel64_win\;D:\proj\rtklib\lib\iers\;$(ILINK_LibraryPath)
Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
$(BDSINCLUDE)\windows\vcl;$(IncludePath)
true
@@ -112,361 +111,251 @@
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
- $(BDS)\bin\default_app.manifest
- 1033
- true
_RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
_RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+ D:\share\RTKLIB\lib\openblas\;D:\share\RTKLIB\lib\OpenBLAS-v0.2.14-Win64-int32\lib\;D:\share\RTKLIB\lib\omf\;$(ILINK_LibraryPath)
- -V
- DEBUG;$(DCC_Define);$(DCC_Define)
- Debug_Build
+ None
true
true
+ true
true
- true
false
- Full
- true
- true
- true
+ -$O+
+ debug_build
+ None
+ $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
true
- -tWM -k
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
- $(BDS)\bin\default_app.manifest
- rtl.lib;vcl.lib;vclx.lib
+ -tWM -AT -xp -r
+ _Debug;$(BCC_Defines);$(BCC_Defines)
+ Debug_Build
true
- false
1033
- false
+ $(BDS)\bin\default_app.manifest
+ rtl.lib;vcl.lib;vclx.lib
+ Debug
+ _Debug;$(BCC_Defines);$(BCC_Defines)
true
+ rtl.lib;vcl.lib;vclx.lib
+ true
+ 1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
$(BDS)\bin\default_app.manifest
- _DEBUG;$(BCC_Defines);$(BCC_Defines)
- PerMonitor
- -$O+
- Release_Build
- None
- true
+ true
+ true
+ release_build
+ true
+ $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
true
- -tWM -r
- NDEBUG;$(BCC_Defines);$(BCC_Defines)
- false
- rtl.lib;vcl.lib;vclx.lib;bindengine.lib
- false
- true
+ rtl.lib;vcl.lib;vclx.lib
$(BDS)\bin\default_app.manifest
+ false
+ true
+ Release_Build
+ false
+ false
+ None
1033
+ true
Debug
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
- true
+ false
true
- rtl.lib;vcl.lib;vclx.lib;bindengine.lib
+ rtl.lib;vcl.lib;vclx.lib
+ true
1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
$(BDS)\bin\default_app.manifest
NDEBUG;$(BCC_Defines);$(BCC_Defines)
- Debug
- PerMonitor
+ PerMonitorV2
- 8
+ 3
..\appcmn\aboutdlg.h
- 25
-
-
- 5
-
- ..\appcmn\cmdoptdlg.h
- 34
+ 19
+ 6
..\appcmn\confdlg.h
- 24
-
-
- 38
-
- ..\appcmn\ftpoptdlg.h
- 19
+ 18
-
- ..\appcmn\graph.h
- 60
+
+
+ dfm
+ ..\appcmn\freqdlg.h
+ 41
- 5
+ 27
..\appcmn\keydlg.h
- 34
+ 11
..\appcmn\maskoptdlg.h
- 55
+ 36
- 39
+ 4
..\appcmn\refdlg.h
- 18
-
-
- 4
-
- ..\appcmn\serioptdlg.h
- 35
+ 16
-
- 6
-
- ..\appcmn\tcpoptdlg.h
- 27
+
+ 5
+
+ ..\appcmn\timedlg.h
+ 17
- 38
+ 26
..\appcmn\viewer.h
- 19
+ 14
- 37
..\appcmn\vieweropt.h
- 20
-
-
- 29
-
- ..\rtknavi\instrdlg.h
- 10
-
-
- 32
-
- ..\rtknavi\logstrdlg.h
- 1
+ 15
-
-
- ..\rtknavi\markdlg.h
- 61
+
+ 3
+
+ kmzconv.h
+ 19
-
- 41
-
- ..\rtknavi\mondlg.h
+
22
-
-
- 31
- ..\rtknavi\navimain.h
+ postmain.h
2
-
- 46
+
+ 25
- ..\rtknavi\naviopt.h
- 17
-
-
- 36
-
- ..\rtknavi\outstrdlg.h
- 3
-
-
- 44
-
- ..\rtknavi\rcvoptdlg.h
+ postopt.h
13
-
+
-1
0
-
+
+
-1
1
-
- 7
- 26
-
-
- 39
- 18
-
-
- 8
- 25
-
-
- 41
- 22
-
-
- 9
- 30
-
-
+
40
- 23
-
-
- 36
- 3
-
-
- 4
- 35
-
-
- 50
-
-
- 57
-
-
- 7
- 26
+ true
+
+
+ 15
-
- 57
+
+ 16
-
- 28
- 11
+
+ 17
-
- 56
+
+ 18
-
- 62
+
+ 19
-
- 9
- 30
+
+ 20
-
- 42
+
21
-
- 43
- 14
-
-
- 43
- 14
-
-
- 51
-
-
- 56
-
-
- 59
-
-
- 33
- 0
+
+ 22
-
- 31
- 2
+
+ 23
-
- 60
+
+ 24
-
- 48
- 15
+
+ 25
-
- 47
- 16
+
+ 26
-
- 6
+
27
-
- 47
- 16
+
+ 29
-
- 48
- 15
+
+ 31
-
- 54
+
+ 32
-
- 29
- 10
+
+ 33
-
- 28
- 11
+
+ 34
-
- 42
- 21
+
+ 35
-
- 40
- 23
+
+ 36
-
- 45
- 12
+
+ 37
-
- 44
- 13
+
+ 38
-
- 58
+
+ 39
-
- 53
+
+ 40
+
+
-
-
-
-
-
-
-
-
+
-
-
+
+
-
-
-
-
-
+
+
+
Cfg_2
Base
@@ -533,8 +422,8 @@
False
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
+ Embarcadero C++Builder Office 2000 サーバー パッケージ
+ Embarcadero C++Builder Office XP サーバー パッケージ
False
@@ -543,7 +432,7 @@
False
- rtknavi_win64.cpp
+ rtkpost.cpp
@@ -556,19 +445,14 @@
true
-
-
- true
-
-
-
-
+
+
.\
true
-
-
+
+
.\
true
@@ -578,128 +462,114 @@
true
-
+
+ .\
true
-
-
+
+
.\
true
-
-
+
+
+ rtkpost.exe
true
-
+
.\
true
-
-
+
+
.\
true
-
+
+ .\
true
-
+
- .\
true
-
-
+
+
.\
true
-
-
- .\
+
+
true
-
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
-
- true
-
-
-
+
.\
true
-
-
- true
-
-
-
+
.\
true
-
-
+
+
.\
true
-
+
- rtknavi_win64.exe
- true
-
-
-
-
+ .\
true
-
-
- .\
+
+
+ rtkpost.exe
true
-
-
+
+
.\
true
-
-
+
+
.\
true
@@ -709,25 +579,19 @@
true
-
+
.\
true
-
-
- .\
- true
-
-
-
+
.\
true
-
+
.\
true
@@ -738,74 +602,68 @@
true
-
-
- .\
- true
-
-
-
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
@@ -815,19 +673,19 @@
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
@@ -843,240 +701,237 @@
true
-
-
+
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
+ .\
true
-
-
- true
-
-
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
+ .\
true
-
+
+ .\
true
-
+
- rtknavi_win64.exe
+ .\
true
-
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
+ .\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
+ rtkpost.exe
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
+
+ .\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
-
- true
-
-
-
-
+
+
+ .\
true
@@ -1085,89 +940,78 @@
true
-
-
- true
-
-
true
-
+
- .\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
-
- true
-
-
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
.\
true
@@ -1189,12 +1033,20 @@
classes
1
+
+ classes
+ 1
+
res\xml
1
+
+ res\xml
+ 1
+
@@ -1207,96 +1059,242 @@
library\lib\armeabi
1
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
library\lib\mips
1
+
+ library\lib\mips
+ 1
+
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
res\values
1
+
+ res\values
+ 1
+
res\values-v21
1
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
res\drawable-xxhdpi
1
+
+ res\drawable-xxhdpi
+ 1
+
res\drawable-ldpi
1
+
+ res\drawable-ldpi
+ 1
+
res\drawable-mdpi
1
+
+ res\drawable-mdpi
+ 1
+
res\drawable-hdpi
1
+
+ res\drawable-hdpi
+ 1
+
res\drawable-xhdpi
1
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
res\drawable-small
1
+
+ res\drawable-small
+ 1
+
res\drawable-normal
1
+
+ res\drawable-normal
+ 1
+
res\drawable-large
1
+
+ res\drawable-large
+ 1
+
res\drawable-xlarge
1
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
@@ -1385,6 +1383,9 @@
0
+
+ 0
+
0
@@ -1406,7 +1407,161 @@
0
-
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
1
@@ -1417,7 +1572,7 @@
1
-
+
1
@@ -1428,7 +1583,7 @@
1
-
+
1
@@ -1439,7 +1594,18 @@
1
-
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
1
@@ -1483,10 +1649,35 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
+
+ 1
+
@@ -1579,6 +1770,10 @@
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
1
@@ -1603,6 +1798,12 @@
0
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
1
@@ -1631,20 +1832,21 @@
1
-
+
-
+
+
12
-
-
+
+
diff --git a/app/winapp/rtkpost/rtkpost.cbproj.local b/app/winapp/rtkpost/rtkpost.cbproj.local
new file mode 100644
index 000000000..b72371fe8
--- /dev/null
+++ b/app/winapp/rtkpost/rtkpost.cbproj.local
@@ -0,0 +1,8 @@
+
+
+
+ 2020/12/02 10:22:14.000.930,=D:\share\RTKLIB\app\winapp\appcmn\freqdlg.cpp
+ 2020/12/03 11:52:10.000.732,=D:\share\RTKLIB\app\winapp\appcmn\gmview.cpp
+ 2020/12/03 19:55:07.000.688,D:\share\RTKLIB\app\winapp\appcmn\gmview.cpp=
+
+
diff --git a/app/rtkpost/rtkpost.cpp b/app/winapp/rtkpost/rtkpost.cpp
similarity index 92%
rename from app/rtkpost/rtkpost.cpp
rename to app/winapp/rtkpost/rtkpost.cpp
index cab9ac3ed..e651721cf 100644
--- a/app/rtkpost/rtkpost.cpp
+++ b/app/winapp/rtkpost/rtkpost.cpp
@@ -4,20 +4,20 @@
#pragma hdrstop
//---------------------------------------------------------------------------
+USEFORM("..\appcmn\refdlg.cpp", RefDialog);
+USEFORM("..\appcmn\timedlg.cpp", TimeDialog);
+USEFORM("..\appcmn\viewer.cpp", TextViewer);
+USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
USEFORM("kmzconv.cpp", ConvDialog);
-USEFORM("postmain.cpp", MainForm);
-USEFORM("extopt.cpp", ExtOptDialog);
-USEFORM("postopt.cpp", OptDialog);
-USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
-USEFORM("..\appcmn\maskoptdlg.cpp", MaskOptDialog);
USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog);
USEFORM("..\appcmn\confdlg.cpp", ConfDialog);
-USEFORM("..\appcmn\viewer.cpp", TextViewer);
-USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
-USEFORM("..\appcmn\refdlg.cpp", RefDialog);
-USEFORM("..\appcmn\timedlg.cpp", TimeDialog);
+USEFORM("..\appcmn\freqdlg.cpp", FreqDialog);
+USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
+USEFORM("..\appcmn\maskoptdlg.cpp", MaskOptDialog);
+USEFORM("postmain.cpp", MainForm);
+USEFORM("postopt.cpp", OptDialog);
//---------------------------------------------------------------------------
-WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
+int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
@@ -34,8 +34,8 @@ WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
Application->CreateForm(__classid(TConfDialog), &ConfDialog);
Application->CreateForm(__classid(TAboutDialog), &AboutDialog);
Application->CreateForm(__classid(TKeyDialog), &KeyDialog);
- Application->CreateForm(__classid(TExtOptDialog), &ExtOptDialog);
Application->CreateForm(__classid(TMaskOptDialog), &MaskOptDialog);
+ Application->CreateForm(__classid(TFreqDialog), &FreqDialog);
Application->Run();
}
catch (Exception &exception)
diff --git a/app/winapp/rtkpost/rtkpost.res b/app/winapp/rtkpost/rtkpost.res
new file mode 100644
index 000000000..b87527f23
Binary files /dev/null and b/app/winapp/rtkpost/rtkpost.res differ
diff --git a/app/rtkpost_qt/rtkpost_Icon.ico b/app/winapp/rtkpost/rtkpost_Icon.ico
similarity index 100%
rename from app/rtkpost_qt/rtkpost_Icon.ico
rename to app/winapp/rtkpost/rtkpost_Icon.ico
diff --git a/app/srctblbrows/browsmain.cpp b/app/winapp/srctblbrows/browsmain.cpp
similarity index 82%
rename from app/srctblbrows/browsmain.cpp
rename to app/winapp/srctblbrows/browsmain.cpp
index 198058b5a..0d588245a 100644
--- a/app/srctblbrows/browsmain.cpp
+++ b/app/winapp/srctblbrows/browsmain.cpp
@@ -13,13 +13,14 @@
#pragma resource "*.dfm"
TMainForm *MainForm;
-#define PRGNAME "Ntrip Browser"
+#define PRGNAME "NTRIP Browser"
#define NTRIP_HOME "rtcm-ntrip.org:2101" // caster list home
#define NTRIP_TIMEOUT 10000 // response timeout (ms)
#define NTRIP_CYCLE 50 // processing cycle (ms)
#define MAXSRCTBL 512000 // max source table size (bytes)
#define ENDSRCTBL "ENDSOURCETABLE" // end marker of table
#define MAXLINE 1024 // max line size (byte)
+#define ADDRESS_WIDTH 184 // width of Address (px)
static char buff[MAXSRCTBL]; // source table buffer
@@ -36,9 +37,9 @@ static char *getsrctbl(const char *path)
static int lock=0;
AnsiString s;
stream_t str;
- char *p=buff,msg[MAXSTRMSG];
- int ns,stat,len=strlen(ENDSRCTBL);
- unsigned int tick=tickget();
+ char *p=buff,msg[MAXSTRMSG]="";
+ int ns,stat;
+ uint32_t tick=tickget();
if (lock) return NULL; else lock=1;
@@ -51,13 +52,13 @@ static char *getsrctbl(const char *path)
MainForm->ShowMsg("connecting...");
while(pbuff&&strstr(p-len-3,ENDSRCTBL)) break;
- p+=ns;
+ ns=strread(&str,(uint8_t *)p,buff+MAXSRCTBL-p-1);
+ p+=ns; *p='\0';
Sleep(NTRIP_CYCLE);
stat=strstat(&str,msg);
- MainForm->ShowMsg(msg);
- if (stat<0) break;
+ MainForm->ShowMsg(msg);
+ if (stat<=0) break;
+ if (strstr(buff,ENDSRCTBL)) break;
if ((int)(tickget()-tick)>NTRIP_TIMEOUT) {
MainForm->ShowMsg("response timeout");
break;
@@ -85,18 +86,16 @@ __fastcall TMainForm::TMainForm(TComponent* Owner)
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormShow(TObject *Sender)
{
- AnsiString colw0="74,116,56,244,18,52,62,28,50,50,18,18,120,28,18,18,40,600,";
- AnsiString colw1="112,40,96,126,18,28,50,50,160,40,600,0,0,0,0,0,0,0,";
- AnsiString colw2="80,126,18,18,300,300,300,600,0,0,0,0,0,0,0,0,0,0,";
+ AnsiString colw0="30,74,116,56,244,18,52,62,28,50,50,18,18,120,28,18,18,40,300,";
+ AnsiString colw1="30,112,40,96,126,18,28,50,50,160,40,600,0,0,0,0,0,0,0,";
+ AnsiString colw2="30,80,126,18,18,300,300,300,600,0,0,0,0,0,0,0,0,0,0,";
TIniFile *ini=new TIniFile(IniFile);
AnsiString title,list,colw,cmd,url="",s,stas;
- int i,w,argc=0;
+ double scale;
+ int i,w,argc=0;
char *p,*q,buff[8192],*argv[32];
- FontScale=Screen->PixelsPerInch;
- Table0->DefaultRowHeight=16*FontScale/96;
- Table1->DefaultRowHeight=16*FontScale/96;
- Table2->DefaultRowHeight=16*FontScale/96;
+ scale=(double)Address->Width/ADDRESS_WIDTH;
cmd=GetCommandLine();
strcpy(buff,cmd.c_str());
@@ -117,25 +116,24 @@ void __fastcall TMainForm::FormShow(TObject *Sender)
}
if (url!="") {
Address->Text=url;
- UpdateTable();
}
else {
Address->Text=ini->ReadString("srctbl","address","");
}
colw=ini->ReadString("srctbl","colwidth0",colw0);
- for (i=0,p=colw.c_str();i<18&&*p;i++,p=q+1) {
+ for (i=0,p=colw.c_str();i<19&&*p;i++,p=q+1) {
if (!(q=strchr(p,','))) break; else *q='\0';
- Table0->ColWidths[i]=atoi(p)*FontScale/96;
+ Table0->ColWidths[i]=(int)(atoi(p)*scale);
}
colw=ini->ReadString("srctbl","colwidth1",colw1);
- for (i=0,p=colw.c_str();i<18&&*p;i++,p=q+1) {
+ for (i=0,p=colw.c_str();i<19&&*p;i++,p=q+1) {
if (!(q=strchr(p,','))) break; else *q='\0';
- Table1->ColWidths[i]=atoi(p)*FontScale/96;
+ Table1->ColWidths[i]=(int)(atoi(p)*scale);
}
colw=ini->ReadString("srctbl","colwidth2",colw2);
- for (i=0,p=colw.c_str();i<18&&*p;i++,p=q+1) {
+ for (i=0,p=colw.c_str();i<19&&*p;i++,p=q+1) {
if (!(q=strchr(p,','))) break; else *q='\0';
- Table2->ColWidths[i]=atoi(p)*FontScale/96;
+ Table2->ColWidths[i]=(int)(atoi(p)*scale);
}
StaList->Clear();
for (int i=0;i<10;i++) {
@@ -149,14 +147,26 @@ void __fastcall TMainForm::FormShow(TObject *Sender)
ShowTable();
UpdateEnable();
+ ::PostMessage(Address->Handle,CB_SETEDITSEL,-1,0);
+
+ if (url!="") Timer1->Enabled=true;
+}
+//---------------------------------------------------------------------------
+void __fastcall TMainForm::Timer1Timer(TObject *Sender)
+{
+ UpdateTable();
+ Timer1->Enabled=false;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
{
TIniFile *ini=new TIniFile(IniFile);
AnsiString s,list,colw,sta;
+ double scale;
char buff[8192]="",*p;
+ scale=(double)Address->Width/ADDRESS_WIDTH;
+
ini->WriteString("srctbl","address",Address->Text);
for (int i=0;iItems->Count;i++) {
list=list+Address->Items->Strings[i]+"@";
@@ -164,17 +174,17 @@ void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
ini->WriteString("srctbl","addrlist",list);
colw="";
for (int i=0;iColCount;i++) {
- colw=colw+s.sprintf("%d,",Table0->ColWidths[i]*96/FontScale);
+ colw=colw+s.sprintf("%d,",(int)(Table0->ColWidths[i]/scale));
}
ini->WriteString("srctbl","colwidth0",colw);
colw="";
for (int i=0;iColCount;i++) {
- colw=colw+s.sprintf("%d,",Table1->ColWidths[i]*96/FontScale);
+ colw=colw+s.sprintf("%d,",(int)(Table1->ColWidths[i]/scale));
}
ini->WriteString("srctbl","colwidth1",colw);
colw="";
for (int i=0;iColCount;i++) {
- colw=colw+s.sprintf("%d,",Table2->ColWidths[i]*96/FontScale);
+ colw=colw+s.sprintf("%d,",(int)(Table2->ColWidths[i]/scale));
}
ini->WriteString("srctbl","colwidth2",colw);
@@ -265,7 +275,7 @@ void __fastcall TMainForm::MenuAboutClick(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TMainForm::BtnMapClick(TObject *Sender)
{
- Timer->Enabled=true;
+ Timer2->Enabled=true;
GoogleMapView->Show();
}
//---------------------------------------------------------------------------
@@ -273,9 +283,9 @@ void __fastcall TMainForm::Table0SelectCell(TObject *Sender, int ACol, int ARow,
{
AnsiString title;
if (0RowCount) {
- title=Table0->Cells[0][ARow];
+ title=Table0->Cells[1][ARow];
GoogleMapView->HighlightMark(title);
- GoogleMapView->Caption="NTRIP STR Map: "+Address->Text+"/"+title;
+ GoogleMapView->Caption="NTRIP Data Stream Map: "+Address->Text+"/"+title;
}
}
//---------------------------------------------------------------------------
@@ -324,11 +334,11 @@ void __fastcall TMainForm::TypeChange(TObject *Sender)
ShowTable();
}
//---------------------------------------------------------------------------
-void __fastcall TMainForm::TimerTimer(TObject *Sender)
+void __fastcall TMainForm::Timer2Timer(TObject *Sender)
{
if (!GoogleMapView->GetState()) return;
UpdateMap();
- Timer->Enabled=false;
+ Timer2->Enabled=false;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::Table0MouseDown(TObject *Sender,
@@ -361,7 +371,8 @@ void __fastcall TMainForm::UpdateCaster(void)
{
AnsiString Address_Text=Address->Text;
AnsiString text,item[3];
- char buff[MAXLINE],*p,*q,*r,*srctbl,*addr=NTRIP_HOME;
+ char buff[MAXLINE],*p,*q,*r,*srctbl;
+ const char *addr=NTRIP_HOME;
int i,n;
if (Address_Text!="") addr=Address_Text.c_str();
@@ -379,13 +390,14 @@ void __fastcall TMainForm::UpdateCaster(void)
Address->AddItem(item[1]+":"+item[2],NULL);
}
if (Address->Items->Count>1) Address->Text=Address->Items->Strings[1];
- ShowMsg("update caster list");
+
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::UpdateTable(void)
{
AnsiString Address_Text=Address->Text;
- char *srctbl,*addr=NTRIP_HOME;
+ char *srctbl;
+ const char *addr=NTRIP_HOME;
if (Address_Text!="") addr=Address_Text.c_str();
@@ -398,18 +410,18 @@ void __fastcall TMainForm::UpdateTable(void)
//---------------------------------------------------------------------------
void __fastcall TMainForm::ShowTable(void)
{
- const char *ti[][18]={
- {"Mountpoint","ID","Format","Format-Details","Carrier","Nav-System",
+ const char *ti[][19]={
+ {"No","Mountpoint","ID","Format","Format-Details","Carrier","Nav-System",
"Network","Country","Latitude","Longitude","NMEA","Solution",
"Generator","Compr-Encrp","Authentication","Fee","Bitrate",""},
- {"Host","Port","ID","Operator","NMEA","Country","Latitude","Longitude",
+ {"No","Host","Port","ID","Operator","NMEA","Country","Latitude","Longitude",
"Fallback_Host","Fallback_Port","","","","","","","",""},
- {"ID","Operator","Authentication","Fee","Web-Net","Web-Str","Web-Reg",
+ {"No","ID","Operator","Authentication","Fee","Web-Net","Web-Str","Web-Reg",
"","","","","","","","","","",""}
};
TStringGrid *table[]={Table0,Table1,Table2};
TMenuItem *menu[]={MenuViewStr,MenuViewCas,MenuViewNet,MenuViewSrc};
- char buff[MAXLINE],*p,*q,*r,*s;
+ char buff[MAXLINE],no[16],*p,*q,*r,*s;
int i,j,n,ns,type;
Table3->Visible=false; for (i=0;i<3;i++) table[i]->Visible=false;
@@ -453,12 +465,16 @@ void __fastcall TMainForm::ShowTable(void)
case 1: if (!strncmp(buff,"CAS",3)) break; else continue;
case 2: if (!strncmp(buff,"NET",3)) break; else continue;
}
- for (i=0,r=buff;i<18&&*r;i++) {
+ sprintf(no,"%d",j);
+ table[type]->Cells[0][j]=no;
+
+ for (i=0,r=buff;i<19&&*r;i++) {
+
if ((s=strchr(r,';'))) {
- *s='\0'; if (i>0) table[type]->Cells[i-1][j]=r; r=s+1;
+ *s='\0'; if (i>0) table[type]->Cells[i][j]=r; r=s+1;
}
else {
- if (i>0) table[type]->Cells[i-1][j]=r;
+ if (i>0) table[type]->Cells[i][j]=r;
break;
}
}
@@ -504,26 +520,26 @@ void __fastcall TMainForm::UpdateMap(void)
double lat,lon;
if (Address->Text=="") {
- GoogleMapView->Caption="NTRIP STR Map";
+ GoogleMapView->Caption="NTRIP Data Stream Map";
}
else {
- GoogleMapView->Caption="NTRIP STR Map: "+Address->Text;
+ GoogleMapView->Caption="NTRIP Data Stream Map: "+Address->Text;
}
GoogleMapView->ClearMark();
for (int i=1;iRowCount;i++) {
- if (Table0->Cells[8][i]=="") continue;
- LatText=Table0->Cells[8][i];
- LonText=Table0->Cells[9][i];
+ if (Table0->Cells[9][i]=="") continue;
+ LatText=Table0->Cells[9][i];
+ LonText=Table0->Cells[10][i];
lat=str2dbl(LatText);
lon=str2dbl(LonText);
- title=Table0->Cells[0][i];
- msg=""+Table0->Cells[0][i]+": "+
- Table0->Cells[1][i]+" ("+Table0->Cells[7][i]+"), POS: "+
- Table0->Cells[8][i]+", "+Table0->Cells[9][i]+"
"+
- Table0->Cells[2][i]+": "+Table0->Cells[3][i]+"
"+
- Table0->Cells[5][i]+", "+Table0->Cells[6][i]+", "+
- Table0->Cells[12][i];
+ title=Table0->Cells[1][i];
+ msg=""+Table0->Cells[1][i]+": "+Table0->Cells[2][i]+" ("+Table0->Cells[8][i]+")
"+
+ "Format: "+Table0->Cells[3][i]+", "+Table0->Cells[4][i]+",
"+
+ "Nav-Sys: "+Table0->Cells[6][i]+"
"+
+ "Network: "+Table0->Cells[7][i]+"
"+
+ "Latitude/Longitude: "+Table0->Cells[9][i]+", "+Table0->Cells[10][i]+"
"+
+ "Generator: "+Table0->Cells[13][i];
GoogleMapView->AddMark(lat,lon,title,msg);
}
}
@@ -543,4 +559,11 @@ void __fastcall TMainForm::StaMaskClick(TObject *Sender)
UpdateEnable();
}
//---------------------------------------------------------------------------
+void __fastcall TMainForm::AddressCloseUp(TObject *Sender)
+{
+ TComboBox *combo=(TComboBox *)Sender;
+
+ ::PostMessage(combo->Handle,CB_SETEDITSEL,-1,0);
+}
+//---------------------------------------------------------------------------
diff --git a/app/srctblbrows/browsmain.dfm b/app/winapp/srctblbrows/browsmain.dfm
similarity index 87%
rename from app/srctblbrows/browsmain.dfm
rename to app/winapp/srctblbrows/browsmain.dfm
index 9a96ace73..0bd911403 100644
--- a/app/srctblbrows/browsmain.dfm
+++ b/app/winapp/srctblbrows/browsmain.dfm
@@ -4,7 +4,7 @@ object MainForm: TMainForm
Caption = 'NTRIP Browser'
ClientHeight = 322
ClientWidth = 634
- Color = clBtnFace
+ Color = clWhite
Constraints.MinHeight = 150
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -13,7 +13,6 @@ object MainForm: TMainForm
Font.Style = []
Menu = MainMenu
OldCreateOrder = False
- Scaled = False
OnClose = FormClose
OnShow = FormShow
PixelsPerInch = 96
@@ -25,12 +24,15 @@ object MainForm: TMainForm
Height = 22
Align = alTop
BevelOuter = bvNone
+ Color = clWhite
+ ParentBackground = False
TabOrder = 0
object BtnList: TSpeedButton
- Left = 3
- Top = 1
+ Left = 4
+ Top = 2
Width = 21
Height = 21
+ Hint = 'Update Caster List'
Flat = True
Glyph.Data = {
DE000000424DDE0000000000000076000000280000000D0000000D0000000100
@@ -41,13 +43,16 @@ object MainForm: TMainForm
F000FFFFFFFFF00FF000FF0FFFFFFF0FF000FF00FFFFFFFFF000FF0007FFFF7F
F000FF000FFFF0FFF000FF0F70000FFFF000FFFFFFFFFFFFF000FFFFFFFFFFFF
F000}
+ ParentShowHint = False
+ ShowHint = True
OnClick = BtnListClick
end
object BtnUpdate: TSpeedButton
- Left = 209
+ Left = 211
Top = 1
Width = 21
Height = 21
+ Hint = 'Update Data Streams'
Flat = True
Glyph.Data = {
DE000000424DDE0000000000000076000000280000000D0000000D0000000100
@@ -58,17 +63,22 @@ object MainForm: TMainForm
F000F700000000FFF000FF700087008FF000FFF700FFF00FF000FFFF70FFF00F
F000FFFFF8FFF00FF000FFFFFFFFF00FF000FFFFFFFFF00FF000FFFFFFFFFFFF
F000}
+ ParentShowHint = False
+ ShowHint = True
OnClick = BtnUpdateClick
end
object TypeStr: TSpeedButton
- Left = 250
- Top = 0
+ Left = 251
+ Top = 1
Width = 25
Height = 22
+ Hint = 'Data Streams'
GroupIndex = 1
Down = True
Caption = 'STR'
Flat = True
+ ParentShowHint = False
+ ShowHint = True
Spacing = 2
OnClick = TypeStrClick
end
@@ -77,9 +87,12 @@ object MainForm: TMainForm
Top = 0
Width = 27
Height = 22
+ Hint = 'Casters'
GroupIndex = 1
Caption = 'CAS'
Flat = True
+ ParentShowHint = False
+ ShowHint = True
Spacing = 2
OnClick = TypeCasClick
end
@@ -88,9 +101,12 @@ object MainForm: TMainForm
Top = 0
Width = 25
Height = 22
+ Hint = 'Networks'
GroupIndex = 1
Caption = 'NET'
Flat = True
+ ParentShowHint = False
+ ShowHint = True
Spacing = 2
OnClick = TypeNetClick
end
@@ -99,19 +115,25 @@ object MainForm: TMainForm
Top = 0
Width = 25
Height = 22
+ Hint = 'Source Table'
GroupIndex = 1
Caption = 'SRC'
Flat = True
+ ParentShowHint = False
+ ShowHint = True
Spacing = 2
OnClick = TypeSrcClick
end
object BtnMap: TSpeedButton
- Left = 356
+ Left = 357
Top = 0
Width = 25
Height = 22
+ Hint = 'Data Stream Map'
Caption = 'MAP'
Flat = True
+ ParentShowHint = False
+ ShowHint = True
OnClick = BtnMapClick
end
object Address: TComboBox
@@ -119,9 +141,13 @@ object MainForm: TMainForm
Top = 1
Width = 184
Height = 21
+ Hint = 'Caster Address:Port'
DropDownCount = 40
+ ParentShowHint = False
+ ShowHint = True
TabOrder = 0
OnChange = AddressChange
+ OnCloseUp = AddressCloseUp
OnKeyPress = AddressKeyPress
end
object StaMask: TCheckBox
@@ -176,11 +202,11 @@ object MainForm: TMainForm
Align = alClient
BevelInner = bvNone
BevelOuter = bvNone
- ColCount = 18
+ ColCount = 19
DefaultRowHeight = 15
FixedCols = 0
RowCount = 100
- Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goColSizing, goEditing, goAlwaysShowEditor]
+ Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goColSizing, goEditing]
TabOrder = 3
OnMouseDown = Table2MouseDown
ColWidths = (
@@ -201,7 +227,8 @@ object MainForm: TMainForm
8
9
12
- 10)
+ 10
+ 64)
end
object Table3: TMemo
Left = 0
@@ -236,11 +263,11 @@ object MainForm: TMainForm
Align = alClient
BevelInner = bvNone
BevelOuter = bvNone
- ColCount = 18
+ ColCount = 19
DefaultRowHeight = 15
FixedCols = 0
RowCount = 100
- Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goColSizing, goEditing, goAlwaysShowEditor]
+ Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goColSizing, goEditing]
TabOrder = 2
OnMouseDown = Table1MouseDown
ColWidths = (
@@ -261,7 +288,8 @@ object MainForm: TMainForm
7
8
6
- 6)
+ 6
+ 64)
end
object Table0: TStringGrid
Left = 0
@@ -275,7 +303,7 @@ object MainForm: TMainForm
Align = alClient
BevelInner = bvNone
BevelOuter = bvNone
- ColCount = 18
+ ColCount = 19
DefaultRowHeight = 15
FixedCols = 0
RowCount = 100
@@ -301,7 +329,8 @@ object MainForm: TMainForm
27
27
43
- 623)
+ 623
+ 64)
end
object Panel2: TPanel
Left = 0
@@ -320,6 +349,8 @@ object MainForm: TMainForm
BevelInner = bvLowered
BevelOuter = bvNone
BorderWidth = 1
+ Color = clWhite
+ ParentBackground = False
TabOrder = 0
object Message: TLabel
Left = 4
@@ -416,11 +447,18 @@ object MainForm: TMainForm
end
end
end
- object Timer: TTimer
+ object Timer2: TTimer
+ Enabled = False
+ Interval = 100
+ OnTimer = Timer2Timer
+ Left = 283
+ Top = 277
+ end
+ object Timer1: TTimer
Enabled = False
Interval = 100
- OnTimer = TimerTimer
- Left = 468
- Top = 276
+ OnTimer = Timer1Timer
+ Left = 254
+ Top = 277
end
end
diff --git a/app/srctblbrows/browsmain.h b/app/winapp/srctblbrows/browsmain.h
similarity index 95%
rename from app/srctblbrows/browsmain.h
rename to app/winapp/srctblbrows/browsmain.h
index 284e9ccae..4236d495a 100644
--- a/app/srctblbrows/browsmain.h
+++ b/app/winapp/srctblbrows/browsmain.h
@@ -52,10 +52,11 @@ class TMainForm : public TForm
TLabel *Message;
TPanel *Panel3;
TSpeedButton *BtnMap;
- TTimer *Timer;
+ TTimer *Timer2;
TComboBox *FiltFmt;
TCheckBox *StaMask;
TButton *BtnSta;
+ TTimer *Timer1;
void __fastcall FormShow(TObject *Sender);
void __fastcall BtnUpdateClick(TObject *Sender);
@@ -85,10 +86,12 @@ class TMainForm : public TForm
void __fastcall TypeNetClick(TObject *Sender);
void __fastcall TypeSrcClick(TObject *Sender);
void __fastcall BtnMapClick(TObject *Sender);
- void __fastcall TimerTimer(TObject *Sender);
+ void __fastcall Timer2Timer(TObject *Sender);
void __fastcall Table0SelectCell(TObject *Sender, int ACol, int ARow, bool &CanSelect);
void __fastcall BtnStaClick(TObject *Sender);
void __fastcall StaMaskClick(TObject *Sender);
+ void __fastcall AddressCloseUp(TObject *Sender);
+ void __fastcall Timer1Timer(TObject *Sender);
private:
AnsiString AddrList,AddrCaster,SrcTable,IniFile;
diff --git a/app/rtkplot/clean.bat b/app/winapp/srctblbrows/clean.bat
similarity index 100%
rename from app/rtkplot/clean.bat
rename to app/winapp/srctblbrows/clean.bat
diff --git a/app/winapp/srctblbrows/install.bat b/app/winapp/srctblbrows/install.bat
new file mode 100644
index 000000000..3a7f41cb9
--- /dev/null
+++ b/app/winapp/srctblbrows/install.bat
@@ -0,0 +1,2 @@
+copy Release_Build\srctblbrows.exe ..\..\..\..\RTKLIB_bin\bin
+copy rtklib_gmap.htm ..\..\..\..\RTKLIB_bin\bin
diff --git a/app/winapp/srctblbrows/rtklib_gmap.htm b/app/winapp/srctblbrows/rtklib_gmap.htm
new file mode 100644
index 000000000..2d473146a
--- /dev/null
+++ b/app/winapp/srctblbrows/rtklib_gmap.htm
@@ -0,0 +1,85 @@
+
+
+
+RTKLIB_GM
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/rtkpost_win64/rtkpost_win64.cbproj b/app/winapp/srctblbrows/srctblbrows.cbproj
similarity index 63%
rename from app/rtkpost_win64/rtkpost_win64.cbproj
rename to app/winapp/srctblbrows/srctblbrows.cbproj
index 4782f90d1..f4aada025 100644
--- a/app/rtkpost_win64/rtkpost_win64.cbproj
+++ b/app/winapp/srctblbrows/srctblbrows.cbproj
@@ -1,12 +1,12 @@
- {847BBB4D-C849-4EDB-A4CD-74DDF0E6E9D6}
+ {FB551CE1-32A2-460B-9B61-6E5E1D41C8E6}
CppVCLApplication
- rtkpost_win64.cpp
+ srctblbrows.cpp
True
Release
VCL
- 18.6
+ 18.8
Win64
3
Application
@@ -59,300 +59,216 @@
true
- WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;ENAIRN;NFREQ=3;NEXOBS=3;$(BCC_Defines)
- false
- false
false
- false
+ false
false
- false
false
- rtkpost_win64
- ..\rtkpost\;..\appcmn\;..\..\src\;$(ILINK_LibraryPath)
- ..\rtkpost\;..\appcmn\;..\..\src\;$(IncludePath)
+ false
+ srctblbrows
+ false
+ false
+ ..\..\..\src\;..\..\..\src\rcv\;..\appcmn\;$(ILINK_LibraryPath)
+ ..\..\..\src\;..\..\..\src\rcv\;..\appcmn\;$(IncludePath)
false
- true
- None
+ true
CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
+ false
+ None
Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- rtkpost_mkl_Icon.ico
+ false
+ srctblbrows_Icon.ico
1041
+ false
None
- ..\rtkpost;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\extion;..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\rtkpost;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;$(DCC_ObjPath)
+ ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
+ ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(DCC_ObjPath)
vclx.bpi;vcl.bpi;$(PackageImports)
Windows
- ..\rtkpost;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
+ ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
false
true
- ..\..\extion;..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\rtkpost;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\extion;..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\rtkpost;..\appcmn;..\..\src\rcv;..\..\src;..\src;$(ILINK_ObjectSearchPath)
+ ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
+ ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(ILINK_ObjectSearchPath)
false
- rtl.lib;vcl.lib;vclx.lib
- ..\..\extion;..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\rtkpost;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;C:\Documents and Settings\TTAKA\My Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\extion;..\..\extlex;..\..\qzslex;..\..\src\qzsext;..\rtkpost;..\appcmn;..\..\src\rcv;..\src;..\..\src;K:\proj\rtklib_1.1\util\gui;$(DCC_ResourcePath)
+ rtl.lib;vcl.lib;vclie.lib;bcbie.lib
+ ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
+ ..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(DCC_ResourcePath)
JPHNE
+ WIN32;TRACE;$(BCC_Defines)
true
exe
- _RTLDLL;WIN32;TRACE;MKL;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;MKL;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- -tWM -AT -xp
- ..\..\lib\omf;$(ILINK_LibraryPath)
+ _RTLDLL;WIN32;TRACE;$(TASM_Defines)
+ -tWM
+ _RTLDLL;WIN32;TRACE;$(BRCC_Defines)
Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
$(BDSINCLUDE)\windows\vcl;$(IncludePath)
+ true
1033
$(BDS)\bin\default_app.manifest
- true
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
- $(BDS)\bin\default_app.manifest
- true
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
- 1033
- _RTLDLL;WIN32;TRACE;MKL;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- _RTLDLL;WIN32;TRACE;MKL;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
+ _RTLDLL;WIN32;TRACE;$(TASM_Defines)
+ _RTLDLL;WIN32;TRACE;$(BRCC_Defines)
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
+ false
- true
- true
- true
- -$O+
+ -V
+ DEBUG;$(DCC_Define);$(DCC_Define)
Debug_Build
- None
- false
- $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
+ true
+ true
+ true
+ true
+ false
+ Full
+ true
+ $(BDS)\lib\debug;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
+ true
+ true
true
- -tWM -AT -xp -r
+ -tWM -k
+ _DEBUG;$(BCC_Defines);$(BCC_Defines)
$(BDS)\bin\default_app.manifest
- None
- true
- rtl.lib;vcl.lib;vclx.lib
+ mgex.igs-ip.net:2101
true
- false
+ rtl.lib;vcl.lib;vclie.lib;bcbie.lib
1033
- false
+ _DEBUG;$(BCC_Defines);$(BCC_Defines)
true
- PerMonitor
+ PerMonitorV2
+ true
+ 1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
- true
+ -$O+
Release_Build
+ None
+ true
$(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
- rtkpost_win64_Icon.ico
true
- false
- rtl.lib;vcl.lib;vclx.lib
- false
+ -tWM -r
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
+ mgex.igs-ip.net:2101
+ rtl.lib;vcl.lib;vclie.lib;bcbie.lib
true
- $(BDS)\bin\default_app.manifest
1033
+ $(BDS)\bin\default_app.manifest
Debug
- rtkpost_win64_Icon.ico
- true
+ NDEBUG;$(BCC_Defines);$(BCC_Defines)
true
+ rtl.lib;vcl.lib;vclie.lib;bcbie.lib
+ true
1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
$(BDS)\bin\default_app.manifest
- rtl.lib;vcl.lib;vclx.lib
- Debug
- PerMonitor
+ false
+ PerMonitorV2
- 28
+ 5
..\appcmn\aboutdlg.h
16
-
- 29
-
- ..\appcmn\confdlg.h
- 15
-
-
- 29
-
- ..\appcmn\keydlg.h
- 15
-
-
-
- ..\appcmn\maskoptdlg.h
- 37
-
-
- 27
-
- ..\appcmn\refdlg.h
- 13
-
-
- 26
-
- ..\appcmn\timedlg.h
- 14
-
-
- 33
-
- ..\appcmn\viewer.h
- 11
-
-
- 32
-
- ..\appcmn\vieweropt.h
- 12
-
-
-
- dfm
- ..\rtkpost\extopt.h
- 35
-
-
- 4
-
- ..\rtkpost\kmzconv.h
- 18
-
-
- 7
-
- ..\rtkpost\postmain.h
+
+
+ ..\appcmn\gmview.h
19
-
- 6
-
- ..\rtkpost\postopt.h
- 20
+
+ 9
+
+ browsmain.h
+ 2
-
+
-1
0
-
+
-1
1
-
- 39
-
-
- 7
- 19
+
+
+ staoptdlg.h
+ 20
-
- 24
- 2
+
+ 20
-
- 24
- 2
+
+ 25
-
- 26
- 14
+
+ 19
-
- 3
- 23
+
+ 17
-
- 21
- 1
+
+ 15
-
- 3
- 23
+
+ 14
-
- 4
- 18
+
+ 13
-
- 22
- 0
+
+ 12
-
- 33
+
11
-
- 37
-
-
- 5
- 17
-
-
- 38
-
-
- 8
- 25
-
-
- 8
- 25
-
-
- 30
+
10
-
+
9
- 31
-
- 36
-
-
- 5
- 17
+
+ 7
-
- 6
- 20
+
+ 23
-
- 30
- 10
+
+ 24
-
- 9
- 31
+
+ 25
-
- 38
+
+ 26
-
-
-
-
-
+
+
-
-
-
-
-
-
+
Cfg_2
Base
@@ -419,18 +335,18 @@
False
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
+ Embarcadero C++Builder Office 2000 サーバー パッケージ
+ Embarcadero C++Builder Office XP サーバー パッケージ
+
+ srctblbrows.cpp
+
False
True
True
False
-
- rtkpost_win64.cpp
-
True
@@ -442,198 +358,137 @@
true
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
+
.\
true
-
+
.\
true
-
-
- true
-
-
-
+
.\
true
-
-
- true
-
-
-
+
- .\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
-
- true
-
-
-
+
.\
true
-
+
.\
true
-
-
- .\
+
+
true
-
-
+
+
.\
true
-
-
- .\
+
+
true
-
-
+
+
.\
true
-
+
+ .\
true
-
+
.\
true
-
-
- true
-
-
-
+
.\
true
-
+
.\
true
-
-
- .\
- true
-
-
-
+
.\
true
-
+
- .\
true
-
+
.\
true
-
-
- true
-
-
-
+
.\
true
-
+
.\
true
-
-
+
+
+ .\
true
@@ -647,236 +502,183 @@
true
-
-
- .\
- true
-
-
-
+
- .\
+ srctblbrows.exe
true
-
+
- .\
true
-
+
+ srctblbrows.exe
true
-
+
.\
true
-
-
- true
-
-
-
+
.\
true
-
+
- .\
true
-
+
- rtkpost_win64.exe
- true
-
-
-
-
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
true
-
+
- .\
true
-
-
- .\
+
+
true
-
-
- .\
+
+
true
-
+
.\
true
-
-
+
+
true
-
-
+
+
true
-
+
+ .\
true
-
-
+
+
+ .\
true
-
+
.\
true
-
+
- rtkpost_win64.exe
true
-
-
+
+
.\
true
-
-
+
+
.\
true
-
-
+
+
true
-
+
true
-
+
.\
true
-
-
- true
-
-
-
-
- .\
- true
-
-
-
-
- true
-
-
-
-
- .\
- true
-
-
-
+
- true
-
-
-
-
- .\
- true
-
-
-
-
.\
true
@@ -898,12 +700,20 @@
classes
1
+
+ classes
+ 1
+
res\xml
1
+
+ res\xml
+ 1
+
@@ -916,96 +726,242 @@
library\lib\armeabi
1
+
+ library\lib\armeabi
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
library\lib\mips
1
+
+ library\lib\mips
+ 1
+
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
+
+
+
+ library\lib\armeabi-v7a
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
res\values
1
+
+ res\values
+ 1
+
res\values-v21
1
+
+ res\values-v21
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
res\drawable
1
+
+ res\drawable
+ 1
+
res\drawable-xxhdpi
1
+
+ res\drawable-xxhdpi
+ 1
+
res\drawable-ldpi
1
+
+ res\drawable-ldpi
+ 1
+
res\drawable-mdpi
1
+
+ res\drawable-mdpi
+ 1
+
res\drawable-hdpi
1
+
+ res\drawable-hdpi
+ 1
+
res\drawable-xhdpi
1
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-mdpi
+ 1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
+ res\drawable-xxxhdpi
+ 1
+
res\drawable-small
1
+
+ res\drawable-small
+ 1
+
res\drawable-normal
1
+
+ res\drawable-normal
+ 1
+
res\drawable-large
1
+
+ res\drawable-large
+ 1
+
res\drawable-xlarge
1
+
+ res\drawable-xlarge
+ 1
+
+
+
+
+ res\values
+ 1
+
+
+ res\values
+ 1
+
@@ -1094,6 +1050,9 @@
0
+
+ 0
+
0
@@ -1126,6 +1085,17 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1137,6 +1107,39 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1148,6 +1151,61 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1159,6 +1217,116 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -1192,10 +1360,35 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
+
+ 1
+
@@ -1288,6 +1481,10 @@
library\lib\armeabi-v7a
1
+
+ library\lib\arm64-v8a
+ 1
+
1
@@ -1312,6 +1509,12 @@
0
+
+
+ library\lib\armeabi-v7a
+ 1
+
+
1
@@ -1349,6 +1552,7 @@
+
12
diff --git a/app/winapp/srctblbrows/srctblbrows.cbproj.local b/app/winapp/srctblbrows/srctblbrows.cbproj.local
new file mode 100644
index 000000000..4093e2086
--- /dev/null
+++ b/app/winapp/srctblbrows/srctblbrows.cbproj.local
@@ -0,0 +1,6 @@
+
+
+
+ 2020/11/29 11:21:16.000.067,D:\share\RTKLIB\app\winapp\appcmn\gmviewopt.cpp=
+
+
diff --git a/app/srctblbrows/srctblbrows.cpp b/app/winapp/srctblbrows/srctblbrows.cpp
similarity index 95%
rename from app/srctblbrows/srctblbrows.cpp
rename to app/winapp/srctblbrows/srctblbrows.cpp
index 4e4cbf5fd..0e6e01064 100644
--- a/app/srctblbrows/srctblbrows.cpp
+++ b/app/winapp/srctblbrows/srctblbrows.cpp
@@ -19,7 +19,7 @@ USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog);
USEFORM("..\appcmn\gmview.cpp", GoogleMapView);
USEFORM("browsmain.cpp", MainForm);
//---------------------------------------------------------------------------
-WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
+int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
diff --git a/app/winapp/srctblbrows/srctblbrows.res b/app/winapp/srctblbrows/srctblbrows.res
new file mode 100644
index 000000000..a692ea16f
Binary files /dev/null and b/app/winapp/srctblbrows/srctblbrows.res differ
diff --git a/app/srctblbrows_qt/srctblbrows_Icon.ico b/app/winapp/srctblbrows/srctblbrows_Icon.ico
similarity index 100%
rename from app/srctblbrows_qt/srctblbrows_Icon.ico
rename to app/winapp/srctblbrows/srctblbrows_Icon.ico
diff --git a/app/srctblbrows/staoptdlg.cpp b/app/winapp/srctblbrows/staoptdlg.cpp
similarity index 100%
rename from app/srctblbrows/staoptdlg.cpp
rename to app/winapp/srctblbrows/staoptdlg.cpp
diff --git a/app/srctblbrows/staoptdlg.dfm b/app/winapp/srctblbrows/staoptdlg.dfm
similarity index 100%
rename from app/srctblbrows/staoptdlg.dfm
rename to app/winapp/srctblbrows/staoptdlg.dfm
diff --git a/app/srctblbrows/staoptdlg.h b/app/winapp/srctblbrows/staoptdlg.h
similarity index 100%
rename from app/srctblbrows/staoptdlg.h
rename to app/winapp/srctblbrows/staoptdlg.h
diff --git a/app/rtkpost/clean.bat b/app/winapp/strsvr/clean.bat
similarity index 100%
rename from app/rtkpost/clean.bat
rename to app/winapp/strsvr/clean.bat
diff --git a/app/strsvr/convdlg.cpp b/app/winapp/strsvr/convdlg.cpp
similarity index 100%
rename from app/strsvr/convdlg.cpp
rename to app/winapp/strsvr/convdlg.cpp
diff --git a/app/strsvr/convdlg.dfm b/app/winapp/strsvr/convdlg.dfm
similarity index 100%
rename from app/strsvr/convdlg.dfm
rename to app/winapp/strsvr/convdlg.dfm
diff --git a/app/strsvr/convdlg.h b/app/winapp/strsvr/convdlg.h
similarity index 100%
rename from app/strsvr/convdlg.h
rename to app/winapp/strsvr/convdlg.h
diff --git a/app/winapp/strsvr/install.bat b/app/winapp/strsvr/install.bat
new file mode 100644
index 000000000..4b6bde893
--- /dev/null
+++ b/app/winapp/strsvr/install.bat
@@ -0,0 +1 @@
+copy Release_Build\strsvr.exe ..\..\..\..\RTKLIB_bin\bin
diff --git a/app/strsvr/mondlg.cpp b/app/winapp/strsvr/mondlg.cpp
similarity index 93%
rename from app/strsvr/mondlg.cpp
rename to app/winapp/strsvr/mondlg.cpp
index 747a75c3b..ae51dbcd1 100644
--- a/app/strsvr/mondlg.cpp
+++ b/app/winapp/strsvr/mondlg.cpp
@@ -65,7 +65,7 @@ void __fastcall TStrMonDialog::SelFmtChange(TObject *Sender)
Console->Invalidate();
}
//---------------------------------------------------------------------------
-void __fastcall TStrMonDialog::AddMsg(unsigned char *msg, int len)
+void __fastcall TStrMonDialog::AddMsg(uint8_t *msg, int len)
{
char buff[256];
int i,n;
@@ -77,7 +77,7 @@ void __fastcall TStrMonDialog::AddMsg(unsigned char *msg, int len)
input_rtcm2(&rtcm,msg[i]);
if (rtcm.msgtype[0]) {
n=sprintf(buff,"%s\n",rtcm.msgtype);
- AddConsole((unsigned char *)buff,n,1);
+ AddConsole((uint8_t *)buff,n,1);
rtcm.msgtype[0]='\0';
}
}
@@ -87,7 +87,7 @@ void __fastcall TStrMonDialog::AddMsg(unsigned char *msg, int len)
input_rtcm3(&rtcm,msg[i]);
if (rtcm.msgtype[0]) {
n=sprintf(buff,"%s\n",rtcm.msgtype);
- AddConsole((unsigned char *)buff,n,1);
+ AddConsole((uint8_t *)buff,n,1);
rtcm.msgtype[0]='\0';
}
}
@@ -97,7 +97,7 @@ void __fastcall TStrMonDialog::AddMsg(unsigned char *msg, int len)
input_raw(&raw,StrFmt-3,msg[i]);
if (raw.msgtype[0]) {
n=sprintf(buff,"%s\n",raw.msgtype);
- AddConsole((unsigned char *)buff,n,1);
+ AddConsole((uint8_t *)buff,n,1);
raw.msgtype[0]='\0';
}
}
@@ -112,13 +112,14 @@ void __fastcall TStrMonDialog::AddMsg(unsigned char *msg, int len)
}
}
//---------------------------------------------------------------------------
-void __fastcall TStrMonDialog::AddConsole(unsigned char *msg, int n, int mode)
+void __fastcall TStrMonDialog::AddConsole(uint8_t *msg, int n, int mode)
{
+ AnsiString str=ConBuff->Strings[ConBuff->Count-1];
char buff[MAXLEN+16],*p=buff,c;
if (n<=0||Stop) return;
- p+=sprintf(p,"%s",ConBuff->Strings[ConBuff->Count-1].c_str());
+ p+=sprintf(p,"%s",str.c_str());
for (int i=0;i
- {668D41D5-BDEE-4D2E-A18A-2A7EA88B55BD}
+ {6CC55884-96E0-4A72-9A4A-8E61C5FF5950}
CppVCLApplication
- rtknavi_mkl.cpp
+ strsvr.cpp
True
Release
VCL
- 18.6
- Win32
- 1
+ 19.2
+ Win64
+ 3
Application
@@ -59,64 +59,70 @@
true
- false
+ true
false
false
+ false
+ false
false
false
false
- false
- rtknavi_mkl
- ..\..\src\rcv\;..\appcmn\;..\..\src\;..\rtknavi\;$(ILINK_LibraryPath)
- ..\..\src\rcv\;..\appcmn\;..\..\src\;..\rtknavi\;$(IncludePath)
+ strsvr
+ ..\appcmn\;..\..\..\src\rcv\;..\..\..\src\;$(IncludePath)
+ ..\appcmn\;..\..\..\src\rcv\;..\..\..\src\;$(ILINK_LibraryPath)
false
+ CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
false
- false
false
- None
- rtknavi_Icon.ico
Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
- CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=
- None
+ None
+ strsvr_Icon.ico
1041
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\src\rcv;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(DCC_ObjPath)
+ None
+ false
+ true
+ ..\..\..\src\rcv;..\appcmn;..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(TASM_IncludePath)
+ ..\..\extlex;..\..\qzslex;..\..\..\src\rcv;..\appcmn;..\..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(DCC_ObjPath)
vclx.bpi;vcl.bpi;$(PackageImports)
Windows
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\src\rcv;..\appcmn;..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
+ ..\..\..\src\rcv;..\appcmn;..\..\..\src;$(BDS)\include;$(BDS)\include\vcl;$(BRCC_IncludePath)
false
true
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(ILINK_ObjectSearchPath)
+ ..\..\extlex;..\..\qzslex;..\..\..\src\rcv;..\appcmn;..\..\..\src;G:\rtklib_2.1.1\app\rtksvr;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_IncludePath)
+ ..\..\extlex;..\..\qzslex;..\..\..\src\rcv;..\appcmn;..\..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(ILINK_ObjectSearchPath)
false
- rtl.lib;vcl.lib;vclx.lib;bindengine.lib
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
- ..\..\..\rtklib_extlex;..\..\extlex;..\..\qzslex;..\..\src\rcv;..\..\src;..\appcmn;G:\rtklib_2.2\app\rtknavi;$(DCC_ResourcePath)
+ rtl.lib;vcl.lib;vclx.lib
+ ..\..\extlex;..\..\qzslex;..\..\..\src\rcv;..\appcmn;..\..\src;G:\rtklib_2.1.1\app\rtksvr;C:\Users\ttaka\Documents\Borland Studio Projects;$(BDS)\lib;$(BDS)\lib\obj;$(DCC_UnitSearchPath)
+ ..\..\extlex;..\..\qzslex;..\..\src\rcv;..\appcmn;..\..\..\src;G:\rtklib_2.1.1\app\rtksvr;$(DCC_ResourcePath)
JPHNE
- $(BDS)\include;..\appcmn;..\..\src;$(BCC_IncludePath)
+ WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;ENAIRN;NFREQ=5;NEXOBS=3;SVR_REUSEADDR;$(BCC_Defines)
true
exe
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENACMP;ENAIRN;NFREQ=3;NEXOBS=3;MKL;$(BCC_Defines)
+ _RTLDLL;WIN32;TRACE;$(BRCC_Defines)
+ _RTLDLL;WIN32;TRACE;$(TASM_Defines)
-tWM
- ..\..\lib\omf\;$(ILINK_LibraryPath)
- Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
+ -x 2
$(BDSINCLUDE)\windows\vcl;$(IncludePath)
- true
- 1033
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
$(BDS)\bin\default_app.manifest
+ 1033
+ true
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(TASM_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;NFREQ=3;$(BRCC_Defines)
- _RTLDLL;WIN32;TRACE;ENAGLO;ENAQZS;ENAGAL;ENACMP;NFREQ=3;NEXOBS=3;MKL;$(BCC_Defines)
+ _RTLDLL;WIN32;TRACE;$(TASM_Defines)
+ _RTLDLL;WIN32;TRACE;$(BRCC_Defines)
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png
$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png
+ Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
+ Debug
+ true
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ 1033
+ $(BDS)\bin\default_app.manifest
-V
@@ -129,339 +135,250 @@
false
Full
true
+ $(BDS)\lib\debug;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
true
true
- true
-tWM -k
_DEBUG;$(BCC_Defines);$(BCC_Defines)
- $(BDS)\bin\default_app.manifest
- rtl.lib;vcl.lib;vclx.lib
true
- false
+ rtl.lib;vcl.lib;vclx.lib
1033
- false
+ Debug
+ $(BDS)\bin\default_app.manifest
+ true
_DEBUG;$(BCC_Defines);$(BCC_Defines)
+ true
+ rtl.lib;vcl.lib;vclx.lib
+ true
+ 1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
-$O+
Release_Build
None
true
+ $(BDS)\lib\release;$(ILINK_LibraryPath);$(ILINK_LibraryPath)
true
-tWM -r
NDEBUG;$(BCC_Defines);$(BCC_Defines)
- false
- rtl.lib;vcl.lib;vclx.lib;bindengine.lib
- false
true
$(BDS)\bin\default_app.manifest
1033
+ rtl.lib;vcl.lib;vclx.lib
Debug
NDEBUG;$(BCC_Defines);$(BCC_Defines)
+ true
+ rtl.lib;vcl.lib;vclx.lib
+ true
+ 1033
+ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
+ $(BDS)\bin\default_app.manifest
+ PerMonitorV2
- 8
+ 31
..\appcmn\aboutdlg.h
- 25
+ 11
- 5
+ 6
..\appcmn\cmdoptdlg.h
- 34
+ 20
..\appcmn\confdlg.h
- 24
+ 38
+
+
+ 7
+
+ ..\appcmn\fileoptdlg.h
+ 19
- 38
+ 9
..\appcmn\ftpoptdlg.h
- 19
-
-
- ..\appcmn\graph.h
- 60
+ 29
- 5
+ 24
..\appcmn\keydlg.h
- 34
+ 2
-
-
- ..\appcmn\maskoptdlg.h
- 55
+
+
+ dfm
+ ..\appcmn\mntpoptdlg.h
+ 42
- 39
+ 28
..\appcmn\refdlg.h
- 18
+ 14
- 4
+ 8
..\appcmn\serioptdlg.h
- 35
+ 30
- 6
+ 22
..\appcmn\tcpoptdlg.h
- 27
+ 0
- 38
+ dfm
..\appcmn\viewer.h
- 19
+ 39
- 37
+ dfm
..\appcmn\vieweropt.h
- 20
+ 40
-
+
+ 9
+
+ convdlg.h
29
-
- ..\rtknavi\instrdlg.h
- 10
-
-
- 32
-
- ..\rtknavi\logstrdlg.h
- 1
-
-
-
- ..\rtknavi\markdlg.h
- 61
-
-
- 41
-
- ..\rtknavi\mondlg.h
- 22
-
-
- 31
-
- ..\rtknavi\navimain.h
- 2
-
- 46
-
- ..\rtknavi\naviopt.h
- 17
-
-
- 36
-
- ..\rtknavi\outstrdlg.h
- 3
-
-
- 44
-
- ..\rtknavi\rcvoptdlg.h
- 13
+
+
+ mondlg.h
+ 38
-
+
-1
0
-
+
-1
1
-
- 52
- true
-
-
- 53
- true
-
-
- 7
- 26
-
-
- 39
- 18
-
-
- 8
- 25
-
-
- 41
- 22
+
+ 24
+
+ svrmain.h
+ 2
-
- 9
- 30
+
+ 5
+
+ svroptdlg.h
+ 17
-
+
40
- 23
-
-
- 36
- 3
-
-
- 4
- 35
-
-
- 50
-
- 57
+
+ 25
+ 13
-
- 7
- 26
+
+ 33
-
- 57
+
+ 16
-
- 28
- 11
+
+ 36
-
- 56
+
+ 27
-
- 62
+
+ 29
-
- 9
+
30
-
- 42
- 21
-
-
- 43
- 14
-
-
- 43
- 14
-
-
- 51
+
+ 31
-
- 56
+
+ 36
-
- 59
+
+ 37
-
+
33
- 0
-
-
- 31
- 2
-
-
- 62
-
-
- 48
- 15
-
- 47
- 16
+
+ 34
-
- 6
- 27
+
+ 35
-
- 47
- 16
+
+ 31
-
- 48
- 15
+
+ 32
-
- 54
+
+ 33
-
- 29
- 10
+
+ 34
-
- 28
- 11
+
+ 3
+ 23
-
- 42
+
21
+ 1
-
- 40
- 23
-
-
- 45
+
+ 26
12
-
- 44
- 13
-
-
- 58
+
+ 4
+ 18
-
- 53
+
+ 26
+ 12
-
-
-
-
-
-
-
+
+
-
-
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
Cfg_2
Base
@@ -511,7 +428,7 @@
-
+ -t NovAtel
False
@@ -528,8 +445,8 @@
False
- Embarcadero C++Builder Office 2000 サーバー パッケージ
- Embarcadero C++Builder Office XP サーバー パッケージ
+ Embarcadero C++Builder Office 2000 サーバー パッケージ
+ Embarcadero C++Builder Office XP サーバー パッケージ
False
@@ -538,14 +455,19 @@
False
- rtknavi_mkl.cpp
+ strsvr.cpp
True
- False
+ True
+
+
+ true
+
+
true
@@ -556,42 +478,43 @@
true
-
-
+
+
.\
true
-
+
+ .\
true
-
-
+
+
+ .\
true
-
+
- .\
true
-
+
.\
true
-
-
+
+
+ .\
true
-
+
- .\
true
@@ -600,14 +523,13 @@
true
-
-
- .\
+
+
true
-
-
+
+
.\
true
@@ -617,266 +539,285 @@
true
-
+
.\
true
-
-
+
+
.\
true
-
-
- .\
+
+
true
-
+
.\
true
-
-
+
+
+ .\
true
-
+
- .\
true
-
-
+
+
+ .\
true
-
+
.\
true
-
+
.\
true
-
+
- .\
true
-
+
+ .\
true
-
-
- .\
+
+
true
-
+
.\
true
-
+
.\
true
-
-
+
+
+ .\
true
-
+
+ .\
true
-
-
+
+
true
-
+
- .\
true
-
+
.\
true
-
-
+
+
.\
true
-
+
+ .\
true
-
+
+ true
+
+
+
+
.\
true
-
-
+
+
+ .\
true
-
+
- rtknavi_mkl.exe
+ .\
true
-
-
+
+
.\
true
-
-
+
+
true
-
-
+
+
+ true
+
+
+
+
.\
true
-
+
- .\
+ strsvr.exe
+ true
+
+
+
+
true
-
+
.\
true
-
+
.\
true
-
+
- .\
true
-
+
.\
true
-
+
.\
true
-
+
+ .\
true
-
-
+
+
.\
true
-
-
+
+