Procházet zdrojové kódy

+ Added gpsapi and todaycmn units by Vasil.

git-svn-id: trunk@10901 -
yury před 17 roky
rodič
revize
4ea565e9a6

+ 2 - 0
.gitattributes

@@ -4450,6 +4450,7 @@ packages/winceunits/src/aygshell.pp svneol=native#text/plain
 packages/winceunits/src/buildwinceunits.pp svneol=native#text/plain
 packages/winceunits/src/commctrl.pp svneol=native#text/plain
 packages/winceunits/src/commdlg.pp svneol=native#text/plain
+packages/winceunits/src/gpsapi.pp svneol=native#text/plain
 packages/winceunits/src/iphlpapi.pp svneol=native#text/plain
 packages/winceunits/src/notify.pp svneol=native#text/plain
 packages/winceunits/src/oleaut32.pp svneol=native#text/plain
@@ -4457,6 +4458,7 @@ packages/winceunits/src/power.pp svneol=native#text/plain
 packages/winceunits/src/shellapi.pp svneol=native#text/plain
 packages/winceunits/src/simmgr.pp svneol=native#text/plain
 packages/winceunits/src/tapi.pp svneol=native#text/plain
+packages/winceunits/src/todaycmn.pp svneol=native#text/plain
 packages/winunits-base/Makefile svneol=native#text/plain
 packages/winunits-base/Makefile.fpc svneol=native#text/plain
 packages/winunits-base/fpmake.pp svneol=native#text/plain

+ 57 - 57
packages/winceunits/Makefile

@@ -425,175 +425,175 @@ ifeq ($(FULL_TARGET),armeb-embedded)
 override TARGET_UNITS+=buildwinceunits
 endif
 ifeq ($(FULL_TARGET),i386-linux)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-go32v2)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-win32)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-os2)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-freebsd)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-beos)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-netbsd)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-solaris)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-qnx)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-netware)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-openbsd)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-wdosx)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-darwin)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-emx)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-watcom)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-netwlibc)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-wince)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-embedded)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-symbian)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),m68k-linux)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),m68k-freebsd)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),m68k-netbsd)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),m68k-amiga)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),m68k-atari)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),m68k-openbsd)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),m68k-palmos)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),m68k-embedded)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),powerpc-linux)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),powerpc-netbsd)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),powerpc-amiga)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),powerpc-macos)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),powerpc-darwin)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),powerpc-morphos)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),powerpc-embedded)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),sparc-linux)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),sparc-netbsd)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),sparc-solaris)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),sparc-embedded)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),x86_64-linux)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),x86_64-win64)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),x86_64-embedded)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),arm-linux)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),arm-palmos)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),arm-wince)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),arm-gba)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),arm-nds)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),arm-embedded)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),arm-symbian)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),powerpc64-linux)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),powerpc64-darwin)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),powerpc64-embedded)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),avr-embedded)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),armeb-linux)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),armeb-embedded)
-override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+override TARGET_IMPLICITUNITS+=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi gpsapi todaycmn
 endif
 ifeq ($(FULL_TARGET),i386-linux)
 override TARGET_RSTS+=jwawintype comconst

+ 2 - 1
packages/winceunits/Makefile.fpc

@@ -8,7 +8,8 @@ version=2.3.1
 
 [target]
 units=buildwinceunits
-implicitunits=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi
+implicitunits=aygshell commctrl commdlg iphlpapi notify oleaut32 power shellapi simmgr tapi \
+              gpsapi todaycmn
 
 examples=examples
 

+ 2 - 1
packages/winceunits/src/buildwinceunits.pp

@@ -21,7 +21,8 @@ unit buildwinceunits;
 interface
 
 uses
-  aygshell,commctrl,commdlg,iphlpapi,notify,oleaut32,power,shellapi,simmgr,tapi;
+  aygshell,commctrl,commdlg,iphlpapi,notify,oleaut32,power,shellapi,simmgr,tapi,
+  gpsapi,todaycmn;
 
 implementation
 

+ 172 - 0
packages/winceunits/src/gpsapi.pp

@@ -0,0 +1,172 @@
+{
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2008 Free Pascal development team.
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+//
+// GPS Intermediate Driver API
+//
+// gpsapi.h
+//
+//*********************************************************
+
+//
+// Microsoft Windows Mobile 5.0 for PocketPC SDK.
+//
+
+unit GPSApi;
+
+{$CALLING cdecl}
+
+interface
+
+uses Windows;
+
+const
+      GPS_MAX_SATELLITES    = 12;
+      GPS_MAX_PREFIX_NAME   = 16;
+      GPS_MAX_FRIENDLY_NAME = 64;
+
+      GPS_VERSION_1         = 1;
+      GPS_VERSION_CURRENT   = GPS_VERSION_1;
+
+type
+     GPS_FIX_TYPE = (GPS_FIX_UNKNOWN := 0,
+                     GPS_FIX_2D,
+                     GPS_FIX_3D);
+
+     GPS_FIX_SELECTION = (GPS_FIX_SELECTION_UNKNOWN := 0,
+                          GPS_FIX_SELECTION_AUTO,
+                          GPS_FIX_SELECTION_MANUAL);
+
+     GPS_FIX_QUALITY = (GPS_FIX_QUALITY_UNKNOWN := 0,
+                        GPS_FIX_QUALITY_GPS,
+                        GPS_FIX_QUALITY_DGPS);
+
+//
+// GPS_VALID_XXX bit flags in GPS_POSITION structure are valid.
+//
+const
+      GPS_VALID_UTC_TIME                                 = $00000001;
+      GPS_VALID_LATITUDE                                 = $00000002;
+      GPS_VALID_LONGITUDE                                = $00000004;
+      GPS_VALID_SPEED                                    = $00000008;
+      GPS_VALID_HEADING                                  = $00000010;
+      GPS_VALID_MAGNETIC_VARIATION                       = $00000020;
+      GPS_VALID_ALTITUDE_WRT_SEA_LEVEL                   = $00000040;
+      GPS_VALID_ALTITUDE_WRT_ELLIPSOID                   = $00000080;
+      GPS_VALID_POSITION_DILUTION_OF_PRECISION           = $00000100;
+      GPS_VALID_HORIZONTAL_DILUTION_OF_PRECISION         = $00000200;
+      GPS_VALID_VERTICAL_DILUTION_OF_PRECISION           = $00000400;
+      GPS_VALID_SATELLITE_COUNT                          = $00000800;
+      GPS_VALID_SATELLITES_USED_PRNS                     = $00001000;
+      GPS_VALID_SATELLITES_IN_VIEW                       = $00002000;
+      GPS_VALID_SATELLITES_IN_VIEW_PRNS                  = $00004000;
+      GPS_VALID_SATELLITES_IN_VIEW_ELEVATION             = $00008000;
+      GPS_VALID_SATELLITES_IN_VIEW_AZIMUTH               = $00010000;
+      GPS_VALID_SATELLITES_IN_VIEW_SIGNAL_TO_NOISE_RATIO = $00020000;
+
+
+//
+// GPS_DATA_FLAGS_XXX bit flags set in GPS_POSITION dwFlags field
+// provide additional information about the state of the query.
+// 
+
+// Set when GPS hardware is not connected to GPSID and we 
+// are returning cached data.
+const
+      GPS_DATA_FLAGS_HARDWARE_OFF = $00000001;
+
+//
+// GPS_POSITION contains our latest physical coordinates, the time,
+// and satellites used in determining these coordinates.
+//
+
+type
+     _GPS_POSITION = record
+	      dwVersion:DWORD;             // Current version of GPSID client is using.
+	      dwSize:DWORD;                // sizeof(_GPS_POSITION)
+
+      // Not all fields in the structure below are guaranteed to be valid.
+	     // Which fields are valid depend on GPS device being used, how stale the API allows
+	     // the data to be, and current signal.
+	     // Valid fields are specified in dwValidFields, based on GPS_VALID_XXX flags.
+	      dwValidFields:DWORD;
+
+      // Additional information about this location structure (GPS_DATA_FLAGS_XXX)
+	      dwFlags:DWORD;
+
+      //** Time related
+	      stUTCTime:SYSTEMTIME; 	//  UTC according to GPS clock.
+
+      //** Position + heading related
+       dblLatitude:double;            // Degrees latitude.  North is positive
+       dblLongitude:double;           // Degrees longitude.  East is positive
+       flSpeed:single;                // Speed in knots
+       flHeading:single;              // Degrees heading (course made good).  True North=0
+       dblMagneticVariation:double;   // Magnetic variation.  East is positive
+       flAltitudeWRTSeaLevel:single;  // Altitute with regards to sea level, in meters
+       flAltitudeWRTEllipsoid:single; // Altitude with regards to ellipsoid, in meters
+
+      //** Quality of this fix
+       FixQuality:GPS_FIX_QUALITY;             // Where did we get fix from?
+       FixType:GPS_FIX_TYPE;                   // Is this 2d or 3d fix?
+       SelectionType:GPS_FIX_SELECTION;        // Auto or manual selection between 2d or 3d mode
+       flPositionDilutionOfPrecision:single;   // Position Dilution Of Precision
+       flHorizontalDilutionOfPrecision:single; // Horizontal Dilution Of Precision
+       flVerticalDilutionOfPrecision:single;   // Vertical Dilution Of Precision
+
+      //** Satellite information
+       dwSatelliteCount:DWORD;                                               // Number of satellites used in solution
+       rgdwSatellitesUsedPRNs:array[0..GPS_MAX_SATELLITES-1] of DWORD;       // PRN numbers of satellites used in the solution
+
+       dwSatellitesInView:DWORD;                      	                      // Number of satellites in view.  From 0-GPS_MAX_SATELLITES
+       rgdwSatellitesInViewPRNs:array[0..GPS_MAX_SATELLITES-1] of DWORD;     // PRN numbers of satellites in view
+       rgdwSatellitesInViewElevation:array[0..GPS_MAX_SATELLITES-1] of DWORD;// Elevation of each satellite in view
+       rgdwSatellitesInViewAzimuth:array[0..GPS_MAX_SATELLITES-1] of DWORD;  // Azimuth of each satellite in view
+       rgdwSatellitesInViewSignalToNoiseRatio:array[0..GPS_MAX_SATELLITES-1] of DWORD; // Signal to noise ratio of each satellite in view
+     end;
+     GPS_POSITION = _GPS_POSITION;
+     PGPS_POSITION = ^GPS_POSITION;
+
+
+//
+// GPS_DEVICE contains information about the device driver and the
+// service itself and is returned on a call to GPSGetDeviceState().
+// States are indicated with SERVICE_STATE_XXX flags defined in service.h
+// 
+type
+     _GPS_DEVICE = record
+       dwVersion:DWORD;                                 // Current version of GPSID client is using.
+	      dwSize:DWORD;                                    // sizeof this structure
+	      dwServiceState:DWORD;                            // State of the GPS Intermediate Driver service.
+	      dwDeviceState:DWORD;                             // Status of the actual GPS device driver.
+	      ftLastDataReceived:FILETIME;                     // Last time that the actual GPS device sent information to the intermediate driver.
+       szGPSDriverPrefix:array[0..GPS_MAX_PREFIX_NAME-1] of WCHAR;    // Prefix name we are using to communicate to the base GPS driver
+	      szGPSMultiplexPrefix:array[0..GPS_MAX_PREFIX_NAME-1] of WCHAR; // Prefix name that GPS Intermediate Driver Multiplexer is running on
+	      szGPSFriendlyName:array[0..GPS_MAX_FRIENDLY_NAME-1] of WCHAR;  // Friendly name real GPS device we are currently using
+     end;
+     GPS_DEVICE = _GPS_DEVICE;
+     PGPS_DEVICE = ^_GPS_DEVICE;
+
+const
+      gpsapidll = 'gpsapi.dll';
+
+function GPSOpenDevice(hNewLocationData:HANDLE; hDeviceStateChange:HANDLE; const szDeviceName:PWCHAR; dwFlags:DWORD):HANDLE; external gpsapidll name 'GPSOpenDevice';
+
+function GPSCloseDevice(hGPSDevice:HANDLE):DWORD; external gpsapidll name 'GPSCloseDevice';
+
+function GPSGetPosition(hGPSDevice:HANDLE; pGPSPosition:PGPS_POSITION; dwMaximumAge:DWORD; dwFlags:DWORD):DWORD; external gpsapidll name 'GPSGetPosition';
+
+function GPSGetDeviceState(pGPSDevice:PGPS_DEVICE):DWORD; external gpsapidll name 'GPSGetDeviceState';
+
+implementation
+
+end.

+ 147 - 0
packages/winceunits/src/todaycmn.pp

@@ -0,0 +1,147 @@
+{
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 2007-2008 Free Pascal development team.
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+}
+//*****************************************************************************/
+//*                                                                           */
+//*  TodayCmn.h                                                               */
+//*                                                                           */
+//*  Today screen common header file                                          */
+//*                                                                           */
+//*****************************************************************************/
+
+//
+// Microsoft Windows Mobile 6.0 for PocketPC SDK.
+//
+
+unit TodayCmn;
+
+interface
+
+uses Windows;
+
+// list item types
+type
+     _TODAYLISTITEMTYPE = (tlitOwnerInfo := 0,  // name, company
+                           tlitAppointments,   // today's appointments, events
+                           tlitMail,           // message information
+                           tlitTasks,          // overdue and upcoming tasks
+                           tlitCustom,         // other
+                           tlitReserved1,      // reserved value
+                           tlitReserved2,      // reserved value
+                           tlitNil);           // sentinel
+
+     TODAYLISTITEMTYPE = _TODAYLISTITEMTYPE;
+
+
+const
+      MAX_ITEMNAME    = 32;
+
+type
+     TODAY_SELECTABILITY = (TODAY_SELECTABILITY_NOTSELECTABLE := 0,
+                            TODAY_SELECTABILITY_SELECTABLE,
+                            TODAY_SELECTABILITY_CUSTOMSELECTION,
+                            TODAY_SELECTABILITY_LAST);
+
+// information for a single today item
+type
+     _TODAYLISTITEM = record
+       szName:array[0..MAX_ITEMNAME-1] of WideChar;
+       tlit:TODAYLISTITEMTYPE;
+       dwOrder:DWORD;
+       cyp:DWORD;
+       fEnabled:BOOL;
+       fOptions:BOOL;
+       grfFlags:DWORD;
+       szDLLPath:array[0..MAX_PATH-1] of WideChar;
+       hinstDLL:HINST;
+       hwndCustom:HWND;
+       fSizeOnDraw:BOOL;
+       prgbCachedData:LPBYTE;
+       cbCachedData:DWORD;
+       dwSelectability:DWORD;
+     end;
+     TODAYLISTITEM = _TODAYLISTITEM;
+     LPTODAYLISTITEM = ^_TODAYLISTITEM;
+
+const
+      TODAYM_GETCOLOR            = WM_USER + 100; // wParam == TODAYCOLOR_*
+      TODAYCOLOR_TEXT            = $10000004;
+      TODAYCOLOR_HIGHLIGHT       = $10000022;
+      TODAYCOLOR_HIGHLIGHTEDTEXT = $10000023;
+
+
+const
+      TODAYM_DRAWWATERMARK       = WM_USER + 101; // lParam == TODAYDRAWWATERMARKINFO*
+
+type
+     TODAYDRAWWATERMARKINFO = record
+       _hdc:HDC;
+       rc:RECT;
+       _hwnd:HWND;
+     end;
+     LPTODAYDRAWWATERMARKINFO = ^TODAYDRAWWATERMARKINFO;
+
+
+const
+      TODAYM_TOOKSELECTION       = WM_USER + 102;
+
+
+const
+      TODAYM_REQUESTREFRESH      = WM_USER + 103;
+      TODAYREFRESH_NOHEIGHTCHANGE = $00000001;
+
+
+// the following block of message id #'s is reserved for internal use
+const
+      TODAYM_RESERVEDSTART      = WM_USER + 300;
+      TODAYM_RESERVEDEND        = WM_USER + 399;
+
+      
+// maximum number of today items
+const
+      k_cTodayItemsMax          = 30;
+
+
+// custom DLL resources
+const
+      IDI_ICON                  = 128;
+      IDD_TODAY_CUSTOM          = 500;
+
+
+// custom DLL functions
+const
+      ORDINAL_INITIALIZEITEM    = 240;
+
+type
+     PFNCUSTOMINITIALIZEITEM = function(ptli:LPTODAYLISTITEM; hwndParent:HWND):HWND; cdecl;
+     TInitializeCustomItemProc = PFNCUSTOMINITIALIZEITEM;
+
+const
+      ORDINAL_OPTIONSDIALOGPROC = 241;
+
+type
+     PFNCUSTOMOPTIONSDLGPROC = function(_hDlg:HWND; _message:UINT; wParam:UINT; lParam:LONG):BOOL; cdecl;
+     TCustomItemOptionsDlgProc = PFNCUSTOMOPTIONSDLGPROC;
+
+
+// custom DLL messages
+const
+      WM_TODAYCUSTOM_CLEARCACHE           = WM_USER+242;
+      WM_TODAYCUSTOM_QUERYREFRESHCACHE    = WM_USER+243;
+      WM_TODAYCUSTOM_RECEIVEDSELECTION    = WM_USER+244;
+      WM_TODAYCUSTOM_LOSTSELECTION        = WM_USER+245;
+      WM_TODAYCUSTOM_USERNAVIGATION       = WM_USER+246;
+      WM_TODAYCUSTOM_ACTION               = WM_USER+247;
+      WM_TODAYCUSTOM_CLOSEDATABASES       = WM_USER+248;
+
+implementation
+
+end.