Changeset 541 for cprs/branches/tmg-cprs/CPRS-Chart
- Timestamp:
- Aug 12, 2009, 7:14:16 PM (15 years ago)
- Location:
- cprs/branches/tmg-cprs/CPRS-Chart
- Files:
-
- 112 added
- 35 edited
Legend:
- Unmodified
- Added
- Removed
-
cprs/branches/tmg-cprs/CPRS-Chart/Accessibility_TLB.pas
r496 r541 13 13 14 14 // PASTLWTR : 1.2 15 // File generated on 2/18/2009 8:07:41 AM from Type Library described below.15 // File generated on 8/12/2009 5:54:14 PM from Type Library described below. 16 16 17 17 // ************************************************************************ // -
cprs/branches/tmg-cprs/CPRS-Chart/CPRSChart.cfg
r494 r541 37 37 -LE"c:\program files\borland\delphi7\Projects\Bpl" 38 38 -LN"c:\program files\borland\delphi7\Projects\Bpl" 39 -U"c:\program files\borland\delphi7\Lib\Debug;c:\program files\borland\delphi7\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff "40 -O"c:\program files\borland\delphi7\Lib\Debug;c:\program files\borland\delphi7\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff "41 -I"c:\program files\borland\delphi7\Lib\Debug;c:\program files\borland\delphi7\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff "42 -R"c:\program files\borland\delphi7\Lib\Debug;c:\program files\borland\delphi7\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff "39 -U"c:\program files\borland\delphi7\Lib\Debug;c:\program files\borland\delphi7\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\EmbeddedED;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit" 40 -O"c:\program files\borland\delphi7\Lib\Debug;c:\program files\borland\delphi7\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\EmbeddedED;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit" 41 -I"c:\program files\borland\delphi7\Lib\Debug;c:\program files\borland\delphi7\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\EmbeddedED;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit" 42 -R"c:\program files\borland\delphi7\Lib\Debug;c:\program files\borland\delphi7\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\EmbeddedED;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit" 43 43 -DMSWINDOWS 44 44 -w-UNSAFE_TYPE -
cprs/branches/tmg-cprs/CPRS-Chart/CPRSChart.dof
r496 r541 95 95 PackageDLLOutputDir= 96 96 PackageDCPOutputDir= 97 SearchPath=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff 97 SearchPath=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\EmbeddedED;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit 98 98 Packages=vcl;rtl;vclx;VclSmp;vclshlctrls;dbrtl;adortl;vcldb;qrpt;bdertl;vcldbx;dsnap;cds;bdecds;teeui;teedb;tee;teeqr;ibxpress;visualclx;visualdbclx;vclie;xmlrtl;inet;inetdbbde;inetdbxpress;inetdb;nmfast;dbexpress;dbxcds;indy;dclOffice2k;soaprtl;XWB_R60 99 99 Conditionals=MSWINDOWS … … 101 101 UsePackages=0 102 102 [Parameters] 103 RunParams= s=s1.sequencemanagers.com p=53104CCOW=disable103 RunParams=CCOW=disable 104 104 HostApplication= 105 105 Launcher= … … 116 116 MinorVer=0 117 117 Release=26 118 Build= 76118 Build=69 119 119 Debug=0 120 120 PreRelease=0 … … 127 127 CompanyName=Department of Veterans Affairs 128 128 FileDescription=7/20/08 129 FileVersion=1.0.26. 76130 InternalName=1.0.26. 76server required129 FileVersion=1.0.26.69 130 InternalName=1.0.26.69 server required 131 131 LegalCopyright=Unauthorized access or misuse of this system and/or its data is a federal crime. Use of all data shall be in accordance with VA policy on security and privacy. 132 132 LegalTrademarks= … … 134 134 ProductName=Computerized Patient Record System 135 135 ProductVersion=1.0.0.0 136 Comments=1.0.26. 76136 Comments=1.0.26.69 137 137 [HistoryLists\hlDebugSourcePath] 138 138 Count=1 … … 146 146 Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; 147 147 [HistoryLists\hlSearchPath] 148 Count=15 149 Item0=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff 150 Item1=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics 151 Item2=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source 152 Item3=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01 153 Item4=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib 154 Item5=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages 155 Item6=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU 156 Item7=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu 157 Item8=$(DELPHI)\Lib\Debug;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Chart;C:\Vista\cprs\OR_3_270V26_69\CPRS-Chart\DCU;$(DELPHI)\Source\ToolsAPI 158 Item9=$(DELPHI)\Lib\Debug;C:\Program Files\Borland\Delphi7\Source\Rtl\Sys;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Chart;C:\Vista\cprs\OR_3_270V26_69\CPRS-Chart\DCU;$(DELPHI)\Source\ToolsAPI 159 Item10=$(DELPHI)\Lib\Debug;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Chart;C:\Vista\cprs\OR_3_270V26_69\CPRS-Chart\DCU;$(DELPHI)\Source\ToolsAPI;C:\Program Files\Borland\Delphi7\Source\Rtl\Sys 160 Item11=$(DELPHI)\Lib\Debug;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Chart;C:\Vista\cprs\OR_3_270V26_69\CPRS-Chart\DCU 161 Item12=$(DELPHI)\Lib\Debug;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Lib 162 Item13=$(DELPHI)\Lib\Debug;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib 163 Item14=C:\Vista\cprs\OR_3_215V26_69\CPRS-Lib 148 Count=18 149 Item0=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\EmbeddedED;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit 150 Item1=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra;P:\vista\tmg-cprs\TMG_Extra\HTMLEdit\EmbeddedED;P:\vista\tmg-cprs\TMG_Extra\HTMLEdit 151 Item2=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra 152 Item3=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics;P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\SkinStuff 153 Item4=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source;P:\Vista\tmg-cprs\TPNGGraphics 154 Item5=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01;P:\Vista\tmg-cprs\TntWare\Delphi Unicode Controls\Source 155 Item6=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib;P:\Vista\tmg-cprs\dklang-package-3.01 156 Item7=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages;P:\Vista\tmg-cprs\CPRS-Lib 157 Item8=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU;P:\Vista\tmg-cprs\Packages 158 Item9=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu;P:\Vista\tmg-cprs\CPRS-Lib\DCU 159 Item10=$(DELPHI)\Lib\Debug;$(DELPHI)\Source\ToolsAPI;P:\Vista\tmg-cprs\CPRS-Chart;P:\Vista\tmg-cprs\CPRS-Chart\dcu 160 Item11=$(DELPHI)\Lib\Debug;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Chart;C:\Vista\cprs\OR_3_270V26_69\CPRS-Chart\DCU;$(DELPHI)\Source\ToolsAPI 161 Item12=$(DELPHI)\Lib\Debug;C:\Program Files\Borland\Delphi7\Source\Rtl\Sys;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Chart;C:\Vista\cprs\OR_3_270V26_69\CPRS-Chart\DCU;$(DELPHI)\Source\ToolsAPI 162 Item13=$(DELPHI)\Lib\Debug;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Chart;C:\Vista\cprs\OR_3_270V26_69\CPRS-Chart\DCU;$(DELPHI)\Source\ToolsAPI;C:\Program Files\Borland\Delphi7\Source\Rtl\Sys 163 Item14=$(DELPHI)\Lib\Debug;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Chart;C:\Vista\cprs\OR_3_270V26_69\CPRS-Chart\DCU 164 Item15=$(DELPHI)\Lib\Debug;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib;C:\Program Files\Borland\Delphi7\Projects\OR_SRC_CREATION FILE 12 06 06 OR_3_270\OR_SRC_CREATION\CPRS-Lib 165 Item16=$(DELPHI)\Lib\Debug;C:\Vista\cprs\OR_3_270V26_69\CPRS-Lib 166 Item17=C:\Vista\cprs\OR_3_215V26_69\CPRS-Lib 164 167 [HistoryLists\hlUnitOutputDirectory] 165 168 Count=3 -
cprs/branches/tmg-cprs/CPRS-Chart/CPRSChart.dpr
r490 r541 314 314 fPtAdd in 'TMG_Extra\fPtAdd.pas' {frmPtAdd}, 315 315 fPtDemoEdit in 'TMG_Extra\fPtDemoEdit.pas' {frmPtDemoEdit}, 316 fWebTab in 'TMG_Extra\fWebTab.pas' {frmWebTab}; 316 fWebTab in 'TMG_Extra\fWebTab.pas' {frmWebTab}, 317 SubfilesU in 'TMG_Extra\SubfilesU.pas', 318 SelDateTimeU in 'TMG_Extra\SelDateTimeU.pas' {SelDateTimeForm}, 319 SetSelU in 'TMG_Extra\SetSelU.pas' {SetSelForm}, 320 FMErrorU in 'TMG_Extra\FMErrorU.pas' {FMErrorForm}, 321 LookupU in 'TMG_Extra\LookupU.pas' {FieldLookupForm}, 322 PostU in 'TMG_Extra\PostU.pas' {PostForm}, 323 EditTextU in 'TMG_Extra\EditTextU.pas' {EditTextForm}; 317 324 318 325 {$R *.TLB} … … 339 346 Application.CreateForm(TdmodShared, dmodShared); 340 347 Application.CreateForm(TfrmFrame, frmFrame); 341 Application.CreateForm(TfrmSearchStop, frmSearchStop); 342 Application.CreateForm(TfrmImages, frmImages); 343 Application.CreateForm(TUploadForm, UploadForm); 344 Application.CreateForm(TUploadProgressForm, UploadProgressForm); 345 Application.CreateForm(TfrmODAllergy, frmODAllergy); 346 Application.CreateForm(TfrmDeviceSelect, frmDeviceSelect); 347 Application.CreateForm(TfrmPtAdd, frmPtAdd); 348 Application.CreateForm(TfrmPtDemoEdit, frmPtDemoEdit); 349 //kt Application.CreateForm(TfrmWebTab, frmWebTab); 350 frmSplash.Free; // close & free splash screen 351 Application.Run; 352 end; 348 if frmframe.TMGAbort = False then begin //kt 3/25/09 349 Application.CreateForm(TfrmSearchStop, frmSearchStop); 350 Application.CreateForm(TfrmImages, frmImages); 351 Application.CreateForm(TUploadForm, UploadForm); 352 Application.CreateForm(TUploadProgressForm, UploadProgressForm); 353 Application.CreateForm(TfrmODAllergy, frmODAllergy); 354 Application.CreateForm(TfrmDeviceSelect, frmDeviceSelect); 355 Application.CreateForm(TfrmPtAdd, frmPtAdd); 356 Application.CreateForm(TfrmPtDemoEdit, frmPtDemoEdit); 357 Application.CreateForm(TSelDateTimeForm, SelDateTimeForm); 358 Application.CreateForm(TSetSelForm, SetSelForm); 359 Application.CreateForm(TFMErrorForm, FMErrorForm); 360 Application.CreateForm(TFieldLookupForm, FieldLookupForm); 361 Application.CreateForm(TPostForm, PostForm); 362 Application.CreateForm(TEditTextForm, EditTextForm); 363 //kt Application.CreateForm(TfrmWebTab, frmWebTab); 364 frmSplash.Free; // close & free splash screen 365 Application.Run; 366 end; 367 end; //kt 3/25/09 353 368 end. -
cprs/branches/tmg-cprs/CPRS-Chart/CPRSChart.drc
r496 r541 9 9 */ 10 10 11 #define IdResourceStrings_RSStackESHUTDOWN 64928 12 #define IdResourceStrings_RSStackETOOMANYREFS 64929 13 #define IdResourceStrings_RSStackETIMEDOUT 64930 14 #define IdResourceStrings_RSStackECONNREFUSED 64931 15 #define IdResourceStrings_RSStackELOOP 64932 16 #define IdResourceStrings_RSStackENAMETOOLONG 64933 17 #define IdResourceStrings_RSStackEHOSTDOWN 64934 18 #define IdResourceStrings_RSStackEHOSTUNREACH 64935 19 #define IdResourceStrings_RSStackENOTEMPTY 64936 20 #define IdResourceStrings_RSStackHOST_NOT_FOUND 64937 21 #define JConsts_sChangeJPGSize 64938 22 #define JConsts_sJPEGError 64939 23 #define JConsts_sJPEGImageFile 64940 24 #define IdResourceStrings_RSStackENOPROTOOPT 64944 25 #define IdResourceStrings_RSStackEPROTONOSUPPORT 64945 26 #define IdResourceStrings_RSStackESOCKTNOSUPPORT 64946 27 #define IdResourceStrings_RSStackEOPNOTSUPP 64947 28 #define IdResourceStrings_RSStackEPFNOSUPPORT 64948 29 #define IdResourceStrings_RSStackEAFNOSUPPORT 64949 30 #define IdResourceStrings_RSStackEADDRINUSE 64950 31 #define IdResourceStrings_RSStackEADDRNOTAVAIL 64951 32 #define IdResourceStrings_RSStackENETDOWN 64952 33 #define IdResourceStrings_RSStackENETUNREACH 64953 34 #define IdResourceStrings_RSStackENETRESET 64954 35 #define IdResourceStrings_RSStackECONNABORTED 64955 36 #define IdResourceStrings_RSStackECONNRESET 64956 37 #define IdResourceStrings_RSStackENOBUFS 64957 38 #define IdResourceStrings_RSStackEISCONN 64958 39 #define IdResourceStrings_RSStackENOTCONN 64959 40 #define IdResourceStrings_RSWS2LoadError 64960 41 #define IdResourceStrings_RSInvalidServiceName 64961 42 #define IdResourceStrings_RSStackError 64962 43 #define IdResourceStrings_RSStackEINTR 64963 44 #define IdResourceStrings_RSStackEBADF 64964 45 #define IdResourceStrings_RSStackEACCES 64965 46 #define IdResourceStrings_RSStackEFAULT 64966 47 #define IdResourceStrings_RSStackEINVAL 64967 48 #define IdResourceStrings_RSStackEMFILE 64968 49 #define IdResourceStrings_RSStackEWOULDBLOCK 64969 50 #define IdResourceStrings_RSStackEINPROGRESS 64970 51 #define IdResourceStrings_RSStackEALREADY 64971 52 #define IdResourceStrings_RSStackENOTSOCK 64972 53 #define IdResourceStrings_RSStackEDESTADDRREQ 64973 54 #define IdResourceStrings_RSStackEMSGSIZE 64974 55 #define IdResourceStrings_RSStackEPROTOTYPE 64975 56 #define pnglang_EPNGInvalidFileHeaderText 64976 57 #define pnglang_EPNGIHDRNotFirstText 64977 58 #define pnglang_EPNGSizeExceedsText 64978 59 #define pnglang_EPNGUnknownPalEntryText 64979 60 #define pnglang_EPNGUnknownCriticalChunkText 64980 61 #define pnglang_EPNGUnknownCompressionText 64981 62 #define pnglang_EPNGUnknownInterlaceText 64982 63 #define pnglang_EPNGCannotAssignChunkText 64983 64 #define pnglang_EPNGUnexpectedEndText 64984 65 #define pnglang_EPNGNoImageDataText 64985 66 #define pnglang_EPNGCannotChangeSizeText 64986 67 #define pnglang_EPNGOutMemoryText 64987 68 #define pnglang_EPNGHeaderNotPresentText 64988 69 #define IdResourceStrings_RSWinsockInitializationError 64989 70 #define IdResourceStrings_RSSetSizeExceeded 64990 71 #define IdResourceStrings_RSWS2CallError 64991 72 #define VDBConsts_SFirstRecord 64992 73 #define VDBConsts_SPriorRecord 64993 74 #define VDBConsts_SNextRecord 64994 75 #define VDBConsts_SLastRecord 64995 76 #define VDBConsts_SInsertRecord 64996 77 #define VDBConsts_SDeleteRecord 64997 78 #define VDBConsts_SEditRecord 64998 79 #define VDBConsts_SPostEdit 64999 80 #define VDBConsts_SCancelEdit 65000 81 #define VDBConsts_SRefreshRecord 65001 82 #define VDBConsts_SRemoteLogin 65002 83 #define pnglang_EPngInvalidCRCText 65003 84 #define pnglang_EPNGInvalidIHDRText 65004 85 #define pnglang_EPNGMissingMultipleIDATText 65005 86 #define pnglang_EPNGZLIBErrorText 65006 87 #define pnglang_EPNGInvalidPaletteText 65007 88 #define QConsts_SUnknownImageFormat 65008 89 #define QConsts_SUnableToWrite 65009 90 #define QConsts_SUndo 65010 91 #define QConsts_SRedo 65011 92 #define QConsts_SLine 65012 93 #define QConsts_SCut 65013 94 #define QConsts_SCopy 65014 95 #define QConsts_SPaste 65015 96 #define QConsts_SClear 65016 97 #define QConsts_SSelectAll 65017 98 #define QConsts_SNoAppInLib 65018 99 #define QConsts_SDuplicateApp 65019 100 #define DBConsts_SBcdOverflow 65020 101 #define DBConsts_SInvalidBcdValue 65021 102 #define DBConsts_SCouldNotParseTimeStamp 65022 103 #define DBConsts_SInvalidSqlTimeStamp 65023 104 #define QConsts_SMsgDlgInformation 65024 105 #define QConsts_SMsgDlgConfirm 65025 106 #define QConsts_SUnnamed 65026 107 #define QConsts_SName 65027 108 #define QConsts_SSize 65028 109 #define QConsts_SType 65029 110 #define QConsts_SDate 65030 111 #define QConsts_SAttributes 65031 112 #define QConsts_SDuplicateMenus 65032 113 #define QConsts_SImageIndexError 65033 114 #define QConsts_SInvalidImageDimensions 65034 115 #define QConsts_SInvalidImageDimension 65035 116 #define QConsts_SInvalidMimeSourceStream 65036 117 #define QConsts_SMimeNotSupportedForIcon 65037 118 #define QConsts_SOpen 65038 119 #define QConsts_SSave 65039 120 #define QConsts_SNotAnMDIForm 65040 121 #define QConsts_SMDIChildNotVisible 65041 122 #define QConsts_SControlParentSetToSelf 65042 123 #define QConsts_SOKButton 65043 124 #define QConsts_SCancelButton 65044 125 #define QConsts_SYesButton 65045 126 #define QConsts_SNoButton 65046 127 #define QConsts_SHelpButton 65047 128 #define QConsts_SCloseButton 65048 129 #define QConsts_SIgnoreButton 65049 130 #define QConsts_SRetryButton 65050 131 #define QConsts_SAbortButton 65051 132 #define QConsts_SAllButton 65052 133 #define QConsts_SCannotDragForm 65053 134 #define QConsts_SMsgDlgWarning 65054 135 #define QConsts_SMsgDlgError 65055 136 #define QConsts_SmkcAlt 65056 137 #define QConsts_SInvalidPixelFormat 65057 138 #define QConsts_SNoCanvasHandle 65058 139 #define QConsts_SInvalidCanvasState 65059 140 #define QConsts_SInvalidImageSize 65060 141 #define QConsts_SInvalidColorDepth 65061 142 #define QConsts_SCannotFocus 65062 143 #define QConsts_SParentRequired 65063 144 #define QConsts_SVisibleChanged 65064 145 #define QConsts_SMenuIndexError 65065 146 #define QConsts_SMenuReinserted 65066 147 #define QConsts_SNoMenuRecursion 65067 148 #define QConsts_SMenuNotFound 65068 149 #define QConsts_SMenuSetFormError 65069 150 #define QConsts_SGroupIndexTooLow 65070 151 #define QConsts_SNoMDIForm 65071 152 #define QConsts_SmkcEsc 65072 153 #define QConsts_SmkcReturn 65073 154 #define QConsts_SmkcEnter 65074 155 #define QConsts_SmkcSpace 65075 156 #define QConsts_SmkcPgUp 65076 157 #define QConsts_SmkcPgDn 65077 158 #define QConsts_SmkcEnd 65078 159 #define QConsts_SmkcHome 65079 160 #define QConsts_SmkcLeft 65080 161 #define QConsts_SmkcUp 65081 162 #define QConsts_SmkcRight 65082 163 #define QConsts_SmkcDown 65083 164 #define QConsts_SmkcIns 65084 165 #define QConsts_SmkcDel 65085 166 #define QConsts_SmkcShift 65086 167 #define QConsts_SmkcCtrl 65087 168 #define DKLang_SDKLangErrMsg_ErrorLoadingTran 65088 169 #define DKLang_SDKLangErrMsg_InvalidConstName 65089 170 #define DKLang_SDKLangErrMsg_DuplicateConstName 65090 171 #define DKLang_SDKLangErrMsg_ConstantNotFound 65091 172 #define DKLang_SDKLangErrMsg_LangManagerCalledAtDT 65092 173 #define DKLang_SDKLangErrMsg_StreamVersionTooHigh 65093 174 #define OleConst_SCannotActivate 65094 175 #define OleConst_SNoWindowHandle 65095 176 #define OleConst_SInvalidLicense 65096 177 #define OleConst_SNotLicensed 65097 178 #define OleConst_sNoRunningObject 65098 179 #define QConsts_SInvalidCreateWidget 65099 180 #define QConsts_STooManyMessageBoxButtons 65100 181 #define QConsts_SmkcBkSp 65101 182 #define QConsts_SmkcTab 65102 183 #define QConsts_SmkcBackTab 65103 184 #define TeeConst_TeeMsg_CheckPointerSize 65104 185 #define TeeConst_TeeMsg_FunctionPeriod 65105 186 #define TeeConst_TeeMsg_PieOther 65106 187 #define TeeConst_TeeMsg_ValuesX 65107 188 #define TeeConst_TeeMsg_ValuesY 65108 189 #define TeeConst_TeeMsg_ValuesPie 65109 190 #define TeeConst_TeeMsg_ValuesBar 65110 191 #define TeeConst_TeeMsg_ValuesAngle 65111 192 #define TeeConst_TeeMsg_ValuesGanttStart 65112 193 #define TeeConst_TeeMsg_ValuesGanttEnd 65113 194 #define TeeConst_TeeMsg_ValuesGanttNextTask 65114 195 #define TeeConst_TeeMsg_ValuesArrowEndX 65115 196 #define TeeConst_TeeMsg_ValuesArrowEndY 65116 197 #define TntSystem_SBufferOverflow 65117 198 #define TntSystem_SInvalidUTF7 65118 199 #define DKLang_SDKLangErrMsg_DuplicatePropValueID 65119 200 #define TeeConst_TeeMsg_GanttSample4 65120 201 #define TeeConst_TeeMsg_GanttSample5 65121 202 #define TeeConst_TeeMsg_GanttSample6 65122 203 #define TeeConst_TeeMsg_GanttSample7 65123 204 #define TeeConst_TeeMsg_GanttSample8 65124 205 #define TeeConst_TeeMsg_GanttSample9 65125 206 #define TeeConst_TeeMsg_GanttSample10 65126 207 #define TeeConst_TeeMsg_DefaultFontSize 65127 208 #define TeeConst_TeeMsg_FunctionAdd 65128 209 #define TeeConst_TeeMsg_FunctionSubtract 65129 210 #define TeeConst_TeeMsg_FunctionMultiply 65130 211 #define TeeConst_TeeMsg_FunctionDivide 65131 212 #define TeeConst_TeeMsg_FunctionHigh 65132 213 #define TeeConst_TeeMsg_FunctionLow 65133 214 #define TeeConst_TeeMsg_FunctionAverage 65134 215 #define TeeConst_TeeMsg_DefaultFontName 65135 216 #define TeeConst_TeeMsg_Rotation 65136 217 #define TeeConst_TeeMsg_PieSample1 65137 218 #define TeeConst_TeeMsg_PieSample2 65138 219 #define TeeConst_TeeMsg_PieSample3 65139 220 #define TeeConst_TeeMsg_PieSample4 65140 221 #define TeeConst_TeeMsg_PieSample5 65141 222 #define TeeConst_TeeMsg_PieSample6 65142 223 #define TeeConst_TeeMsg_PieSample7 65143 224 #define TeeConst_TeeMsg_PieSample8 65144 225 #define TeeConst_TeeMsg_GalleryStandard 65145 226 #define TeeConst_TeeMsg_GalleryFunctions 65146 227 #define TeeConst_TeeMsg_GalleryArrow 65147 228 #define TeeConst_TeeMsg_GalleryGantt 65148 229 #define TeeConst_TeeMsg_GanttSample1 65149 230 #define TeeConst_TeeMsg_GanttSample2 65150 231 #define TeeConst_TeeMsg_GanttSample3 65151 232 #define TeeConst_TeeMsg_3dPercent 65152 233 #define TeeConst_TeeMsg_CircularSeries 65153 234 #define TeeConst_TeeMsg_BarWidthPercent 65154 235 #define TeeConst_TeeMsg_BarOffsetPercent 65155 236 #define TeeConst_TeeMsg_DefaultPercentOf 65156 237 #define TeeConst_TeeMsg_DefPercentFormat 65157 238 #define TeeConst_TeeMsg_DefValueFormat 65158 239 #define TeeConst_TeeMsg_AxisTitle 65159 240 #define TeeConst_TeeMsg_AxisLabels 65160 241 #define TeeConst_TeeMsg_GalleryLine 65161 242 #define TeeConst_TeeMsg_GalleryPoint 65162 243 #define TeeConst_TeeMsg_GalleryArea 65163 244 #define TeeConst_TeeMsg_GalleryBar 65164 245 #define TeeConst_TeeMsg_GalleryHorizBar 65165 246 #define TeeConst_TeeMsg_GalleryPie 65166 247 #define TeeConst_TeeMsg_GalleryFastLine 65167 248 #define ComConst_SNoCloseActiveServer2 65168 249 #define TeeConst_TeeMsg_LegendTopPos 65169 250 #define TeeConst_TeeMsg_LegendFirstValue 65170 251 #define TeeConst_TeeMsg_LegendColorWidth 65171 252 #define TeeConst_TeeMsg_SeriesSetDataSource 65172 253 #define TeeConst_TeeMsg_SeriesInvDataSource 65173 254 #define TeeConst_TeeMsg_FillSample 65174 255 #define TeeConst_TeeMsg_Angle 65175 256 #define TeeConst_TeeMsg_AxisLogDateTime 65176 257 #define TeeConst_TeeMsg_AxisLogNotPositive 65177 258 #define TeeConst_TeeMsg_AxisLabelSep 65178 259 #define TeeConst_TeeMsg_AxisIncrementNeg 65179 260 #define TeeConst_TeeMsg_AxisMinMax 65180 261 #define TeeConst_TeeMsg_AxisMaxMin 65181 262 #define TeeConst_TeeMsg_AxisLogBase 65182 263 #define TeeConst_TeeMsg_MaxPointsPerPage 65183 264 #define ComStrs_sFailSetCalMinMaxRange 65184 265 #define ComStrs_sFailsetCalSelRange 65185 266 #define WinHelpViewer_hNoKeyword 65186 267 #define ComConst_SCreateRegKeyError 65187 268 #define ComConst_SOleError 65188 269 #define ComConst_SObjectFactoryMissing 65189 270 #define ComConst_STypeInfoMissing 65190 271 #define ComConst_SBadTypeInfo 65191 272 #define ComConst_SDispIntfMissing 65192 273 #define ComConst_SNoMethod 65193 274 #define ComConst_SVarNotObject 65194 275 #define ComConst_STooManyParams 65195 276 #define ComConst_SDCOMNotInstalled 65196 277 #define ComConst_SDAXError 65197 278 #define ComConst_SAutomationWarning 65198 279 #define ComConst_SNoCloseActiveServer1 65199 280 #define ComStrs_sTabFailSet 65200 281 #define ComStrs_sTabFailSetObject 65201 282 #define ComStrs_sTabMustBeMultiLine 65202 283 #define ComStrs_sInvalidIndex 65203 284 #define ComStrs_sInsertError 65204 285 #define ComStrs_sInvalidOwner 65205 286 #define ComStrs_sRichEditInsertError 65206 287 #define ComStrs_sRichEditLoadFail 65207 288 #define ComStrs_sRichEditSaveFail 65208 289 #define ComStrs_sUDAssociated 65209 290 #define ComStrs_sPageIndexError 65210 291 #define ComStrs_sInvalidComCtl32 65211 292 #define ComStrs_sDateTimeMax 65212 293 #define ComStrs_sDateTimeMin 65213 294 #define ComStrs_sFailSetCalDateTime 65214 295 #define ComStrs_sFailSetCalMaxSelRange 65215 296 #define ExtCtrls_clNameInactiveCaptionText 65216 297 #define ExtCtrls_clNameInfoBk 65217 298 #define ExtCtrls_clNameInfoText 65218 299 #define ExtCtrls_clNameMenu 65219 300 #define ExtCtrls_clNameMenuText 65220 301 #define ExtCtrls_clNameNone 65221 302 #define ExtCtrls_clNameScrollBar 65222 303 #define ExtCtrls_clName3DDkShadow 65223 304 #define ExtCtrls_clName3DLight 65224 305 #define ExtCtrls_clNameWindow 65225 306 #define ExtCtrls_clNameWindowFrame 65226 307 #define ExtCtrls_clNameWindowText 65227 308 #define ComStrs_sTabFailClear 65228 309 #define ComStrs_sTabFailDelete 65229 310 #define ComStrs_sTabFailRetrieve 65230 311 #define ComStrs_sTabFailGetObject 65231 312 #define ExtCtrls_clNameMedGray 65232 313 #define ExtCtrls_clNameActiveBorder 65233 314 #define ExtCtrls_clNameActiveCaption 65234 315 #define ExtCtrls_clNameAppWorkSpace 65235 316 #define ExtCtrls_clNameBackground 65236 317 #define ExtCtrls_clNameBtnFace 65237 318 #define ExtCtrls_clNameBtnHighlight 65238 319 #define ExtCtrls_clNameBtnShadow 65239 320 #define ExtCtrls_clNameBtnText 65240 321 #define ExtCtrls_clNameCaptionText 65241 322 #define ExtCtrls_clNameDefault 65242 323 #define ExtCtrls_clNameGrayText 65243 324 #define ExtCtrls_clNameHighlight 65244 325 #define ExtCtrls_clNameHighlightText 65245 326 #define ExtCtrls_clNameInactiveBorder 65246 327 #define ExtCtrls_clNameInactiveCaption 65247 328 #define ExtCtrls_clNameOlive 65248 329 #define ExtCtrls_clNameNavy 65249 330 #define ExtCtrls_clNamePurple 65250 331 #define ExtCtrls_clNameTeal 65251 332 #define ExtCtrls_clNameGray 65252 333 #define ExtCtrls_clNameSilver 65253 334 #define ExtCtrls_clNameRed 65254 335 #define ExtCtrls_clNameLime 65255 336 #define ExtCtrls_clNameYellow 65256 337 #define ExtCtrls_clNameBlue 65257 338 #define ExtCtrls_clNameFuchsia 65258 339 #define ExtCtrls_clNameAqua 65259 340 #define ExtCtrls_clNameWhite 65260 341 #define ExtCtrls_clNameMoneyGreen 65261 342 #define ExtCtrls_clNameSkyBlue 65262 343 #define ExtCtrls_clNameCream 65263 344 #define Consts_SDockedCtlNeedsName 65264 345 #define Consts_SDockTreeRemoveError 65265 346 #define Consts_SDockZoneNotFound 65266 347 #define Consts_SDockZoneHasNoCtl 65267 348 #define Consts_SMultiSelectRequired 65268 349 #define Consts_SSeparator 65269 350 #define Consts_SErrorSettingCount 65270 351 #define Consts_SListBoxMustBeVirtual 65271 352 #define Consts_SNoGetItemEventHandler 65272 353 #define HelpIntfs_hNoTableOfContents 65273 354 #define HelpIntfs_hNothingFound 65274 355 #define HelpIntfs_hNoContext 65275 356 #define HelpIntfs_hNoTopics 65276 357 #define ExtCtrls_clNameBlack 65277 358 #define ExtCtrls_clNameMaroon 65278 359 #define ExtCtrls_clNameGreen 65279 360 #define Consts_SmkcAlt 65280 361 #define Consts_srNone 65281 362 #define Consts_SOutOfRange 65282 363 #define Consts_sAllFilter 65283 364 #define Consts_SInsertLineError 65284 365 #define Consts_SInvalidClipFmt 65285 366 #define Consts_SIconToClipboard 65286 367 #define Consts_SCannotOpenClipboard 65287 368 #define Consts_SInvalidMemoSize 65288 369 #define Consts_SInvalidPrinterOp 65289 370 #define Consts_SNoDefaultPrinter 65290 371 #define Consts_SDuplicateMenus 65291 372 #define Consts_SPictureLabel 65292 373 #define Consts_SPictureDesc 65293 374 #define Consts_SPreviewLabel 65294 375 #define Consts_SCannotOpenAVI 65295 376 #define Consts_SmkcTab 65296 377 #define Consts_SmkcEsc 65297 378 #define Consts_SmkcEnter 65298 379 #define Consts_SmkcSpace 65299 380 #define Consts_SmkcPgUp 65300 381 #define Consts_SmkcPgDn 65301 382 #define Consts_SmkcEnd 65302 383 #define Consts_SmkcHome 65303 384 #define Consts_SmkcLeft 65304 385 #define Consts_SmkcUp 65305 386 #define Consts_SmkcRight 65306 387 #define Consts_SmkcDown 65307 388 #define Consts_SmkcIns 65308 389 #define Consts_SmkcDel 65309 390 #define Consts_SmkcShift 65310 391 #define Consts_SmkcCtrl 65311 392 #define Consts_SMsgDlgWarning 65312 393 #define Consts_SMsgDlgError 65313 394 #define Consts_SMsgDlgInformation 65314 395 #define Consts_SMsgDlgConfirm 65315 396 #define Consts_SMsgDlgYes 65316 397 #define Consts_SMsgDlgNo 65317 398 #define Consts_SMsgDlgOK 65318 399 #define Consts_SMsgDlgCancel 65319 400 #define Consts_SMsgDlgHelp 65320 401 #define Consts_SMsgDlgAbort 65321 402 #define Consts_SMsgDlgRetry 65322 403 #define Consts_SMsgDlgIgnore 65323 404 #define Consts_SMsgDlgAll 65324 405 #define Consts_SMsgDlgNoToAll 65325 406 #define Consts_SMsgDlgYesToAll 65326 407 #define Consts_SmkcBkSp 65327 408 #define Consts_SCancelButton 65328 409 #define Consts_SYesButton 65329 410 #define Consts_SNoButton 65330 411 #define Consts_SHelpButton 65331 412 #define Consts_SCloseButton 65332 413 #define Consts_SIgnoreButton 65333 414 #define Consts_SRetryButton 65334 415 #define Consts_SAbortButton 65335 416 #define Consts_SAllButton 65336 417 #define Consts_SCannotDragForm 65337 418 #define Consts_SVMetafiles 65338 419 #define Consts_SVEnhMetafiles 65339 420 #define Consts_SVIcons 65340 421 #define Consts_SVBitmaps 65341 422 #define Consts_SMaskErr 65342 423 #define Consts_SMaskEditErr 65343 11 #define pnglang_EPNGIHDRNotFirstText 64928 12 #define pnglang_EPNGSizeExceedsText 64929 13 #define pnglang_EPNGUnknownPalEntryText 64930 14 #define pnglang_EPNGUnknownCriticalChunkText 64931 15 #define pnglang_EPNGUnknownCompressionText 64932 16 #define pnglang_EPNGUnknownInterlaceText 64933 17 #define pnglang_EPNGCannotAssignChunkText 64934 18 #define pnglang_EPNGUnexpectedEndText 64935 19 #define pnglang_EPNGNoImageDataText 64936 20 #define pnglang_EPNGCannotChangeSizeText 64937 21 #define pnglang_EPNGOutMemoryText 64938 22 #define pnglang_EPNGHeaderNotPresentText 64939 23 #define JConsts_sChangeJPGSize 64940 24 #define JConsts_sJPEGError 64941 25 #define JConsts_sJPEGImageFile 64942 26 #define IdResourceStrings_RSStackESHUTDOWN 64944 27 #define IdResourceStrings_RSStackETOOMANYREFS 64945 28 #define IdResourceStrings_RSStackETIMEDOUT 64946 29 #define IdResourceStrings_RSStackECONNREFUSED 64947 30 #define IdResourceStrings_RSStackELOOP 64948 31 #define IdResourceStrings_RSStackENAMETOOLONG 64949 32 #define IdResourceStrings_RSStackEHOSTDOWN 64950 33 #define IdResourceStrings_RSStackEHOSTUNREACH 64951 34 #define IdResourceStrings_RSStackENOTEMPTY 64952 35 #define IdResourceStrings_RSStackHOST_NOT_FOUND 64953 36 #define pnglang_EPngInvalidCRCText 64954 37 #define pnglang_EPNGInvalidIHDRText 64955 38 #define pnglang_EPNGMissingMultipleIDATText 64956 39 #define pnglang_EPNGZLIBErrorText 64957 40 #define pnglang_EPNGInvalidPaletteText 64958 41 #define pnglang_EPNGInvalidFileHeaderText 64959 42 #define IdResourceStrings_RSStackENOPROTOOPT 64960 43 #define IdResourceStrings_RSStackEPROTONOSUPPORT 64961 44 #define IdResourceStrings_RSStackESOCKTNOSUPPORT 64962 45 #define IdResourceStrings_RSStackEOPNOTSUPP 64963 46 #define IdResourceStrings_RSStackEPFNOSUPPORT 64964 47 #define IdResourceStrings_RSStackEAFNOSUPPORT 64965 48 #define IdResourceStrings_RSStackEADDRINUSE 64966 49 #define IdResourceStrings_RSStackEADDRNOTAVAIL 64967 50 #define IdResourceStrings_RSStackENETDOWN 64968 51 #define IdResourceStrings_RSStackENETUNREACH 64969 52 #define IdResourceStrings_RSStackENETRESET 64970 53 #define IdResourceStrings_RSStackECONNABORTED 64971 54 #define IdResourceStrings_RSStackECONNRESET 64972 55 #define IdResourceStrings_RSStackENOBUFS 64973 56 #define IdResourceStrings_RSStackEISCONN 64974 57 #define IdResourceStrings_RSStackENOTCONN 64975 58 #define IdResourceStrings_RSWS2LoadError 64976 59 #define IdResourceStrings_RSInvalidServiceName 64977 60 #define IdResourceStrings_RSStackError 64978 61 #define IdResourceStrings_RSStackEINTR 64979 62 #define IdResourceStrings_RSStackEBADF 64980 63 #define IdResourceStrings_RSStackEACCES 64981 64 #define IdResourceStrings_RSStackEFAULT 64982 65 #define IdResourceStrings_RSStackEINVAL 64983 66 #define IdResourceStrings_RSStackEMFILE 64984 67 #define IdResourceStrings_RSStackEWOULDBLOCK 64985 68 #define IdResourceStrings_RSStackEINPROGRESS 64986 69 #define IdResourceStrings_RSStackEALREADY 64987 70 #define IdResourceStrings_RSStackENOTSOCK 64988 71 #define IdResourceStrings_RSStackEDESTADDRREQ 64989 72 #define IdResourceStrings_RSStackEMSGSIZE 64990 73 #define IdResourceStrings_RSStackEPROTOTYPE 64991 74 #define DBConsts_SCouldNotParseTimeStamp 64992 75 #define DBConsts_SInvalidSqlTimeStamp 64993 76 #define VDBConsts_SFirstRecord 64994 77 #define VDBConsts_SPriorRecord 64995 78 #define VDBConsts_SNextRecord 64996 79 #define VDBConsts_SLastRecord 64997 80 #define VDBConsts_SInsertRecord 64998 81 #define VDBConsts_SDeleteRecord 64999 82 #define VDBConsts_SEditRecord 65000 83 #define VDBConsts_SPostEdit 65001 84 #define VDBConsts_SCancelEdit 65002 85 #define VDBConsts_SRefreshRecord 65003 86 #define VDBConsts_SRemoteLogin 65004 87 #define IdResourceStrings_RSWinsockInitializationError 65005 88 #define IdResourceStrings_RSSetSizeExceeded 65006 89 #define IdResourceStrings_RSWS2CallError 65007 90 #define QConsts_SOpen 65008 91 #define QConsts_SSave 65009 92 #define QConsts_SUnknownImageFormat 65010 93 #define QConsts_SUnableToWrite 65011 94 #define QConsts_SUndo 65012 95 #define QConsts_SRedo 65013 96 #define QConsts_SLine 65014 97 #define QConsts_SCut 65015 98 #define QConsts_SCopy 65016 99 #define QConsts_SPaste 65017 100 #define QConsts_SClear 65018 101 #define QConsts_SSelectAll 65019 102 #define QConsts_SNoAppInLib 65020 103 #define QConsts_SDuplicateApp 65021 104 #define DBConsts_SBcdOverflow 65022 105 #define DBConsts_SInvalidBcdValue 65023 106 #define QConsts_SMsgDlgWarning 65024 107 #define QConsts_SMsgDlgError 65025 108 #define QConsts_SMsgDlgInformation 65026 109 #define QConsts_SMsgDlgConfirm 65027 110 #define QConsts_SUnnamed 65028 111 #define QConsts_SName 65029 112 #define QConsts_SSize 65030 113 #define QConsts_SType 65031 114 #define QConsts_SDate 65032 115 #define QConsts_SAttributes 65033 116 #define QConsts_SDuplicateMenus 65034 117 #define QConsts_SImageIndexError 65035 118 #define QConsts_SInvalidImageDimensions 65036 119 #define QConsts_SInvalidImageDimension 65037 120 #define QConsts_SInvalidMimeSourceStream 65038 121 #define QConsts_SMimeNotSupportedForIcon 65039 122 #define QConsts_SGroupIndexTooLow 65040 123 #define QConsts_SNoMDIForm 65041 124 #define QConsts_SNotAnMDIForm 65042 125 #define QConsts_SMDIChildNotVisible 65043 126 #define QConsts_SControlParentSetToSelf 65044 127 #define QConsts_SOKButton 65045 128 #define QConsts_SCancelButton 65046 129 #define QConsts_SYesButton 65047 130 #define QConsts_SNoButton 65048 131 #define QConsts_SHelpButton 65049 132 #define QConsts_SCloseButton 65050 133 #define QConsts_SIgnoreButton 65051 134 #define QConsts_SRetryButton 65052 135 #define QConsts_SAbortButton 65053 136 #define QConsts_SAllButton 65054 137 #define QConsts_SCannotDragForm 65055 138 #define QConsts_SmkcShift 65056 139 #define QConsts_SmkcCtrl 65057 140 #define QConsts_SmkcAlt 65058 141 #define QConsts_SInvalidPixelFormat 65059 142 #define QConsts_SNoCanvasHandle 65060 143 #define QConsts_SInvalidCanvasState 65061 144 #define QConsts_SInvalidImageSize 65062 145 #define QConsts_SInvalidColorDepth 65063 146 #define QConsts_SCannotFocus 65064 147 #define QConsts_SParentRequired 65065 148 #define QConsts_SVisibleChanged 65066 149 #define QConsts_SMenuIndexError 65067 150 #define QConsts_SMenuReinserted 65068 151 #define QConsts_SNoMenuRecursion 65069 152 #define QConsts_SMenuNotFound 65070 153 #define QConsts_SMenuSetFormError 65071 154 #define QConsts_SmkcTab 65072 155 #define QConsts_SmkcBackTab 65073 156 #define QConsts_SmkcEsc 65074 157 #define QConsts_SmkcReturn 65075 158 #define QConsts_SmkcEnter 65076 159 #define QConsts_SmkcSpace 65077 160 #define QConsts_SmkcPgUp 65078 161 #define QConsts_SmkcPgDn 65079 162 #define QConsts_SmkcEnd 65080 163 #define QConsts_SmkcHome 65081 164 #define QConsts_SmkcLeft 65082 165 #define QConsts_SmkcUp 65083 166 #define QConsts_SmkcRight 65084 167 #define QConsts_SmkcDown 65085 168 #define QConsts_SmkcIns 65086 169 #define QConsts_SmkcDel 65087 170 #define TntSystem_SInvalidUTF7 65088 171 #define DKLang_SDKLangErrMsg_DuplicatePropValueID 65089 172 #define DKLang_SDKLangErrMsg_ErrorLoadingTran 65090 173 #define DKLang_SDKLangErrMsg_InvalidConstName 65091 174 #define DKLang_SDKLangErrMsg_DuplicateConstName 65092 175 #define DKLang_SDKLangErrMsg_ConstantNotFound 65093 176 #define DKLang_SDKLangErrMsg_LangManagerCalledAtDT 65094 177 #define DKLang_SDKLangErrMsg_StreamVersionTooHigh 65095 178 #define OleConst_SCannotActivate 65096 179 #define OleConst_SNoWindowHandle 65097 180 #define OleConst_SInvalidLicense 65098 181 #define OleConst_SNotLicensed 65099 182 #define OleConst_sNoRunningObject 65100 183 #define QConsts_SInvalidCreateWidget 65101 184 #define QConsts_STooManyMessageBoxButtons 65102 185 #define QConsts_SmkcBkSp 65103 186 #define TeeConst_TeeMsg_FunctionAverage 65104 187 #define TeeConst_TeeMsg_DefaultFontName 65105 188 #define TeeConst_TeeMsg_CheckPointerSize 65106 189 #define TeeConst_TeeMsg_FunctionPeriod 65107 190 #define TeeConst_TeeMsg_PieOther 65108 191 #define TeeConst_TeeMsg_ValuesX 65109 192 #define TeeConst_TeeMsg_ValuesY 65110 193 #define TeeConst_TeeMsg_ValuesPie 65111 194 #define TeeConst_TeeMsg_ValuesBar 65112 195 #define TeeConst_TeeMsg_ValuesAngle 65113 196 #define TeeConst_TeeMsg_ValuesGanttStart 65114 197 #define TeeConst_TeeMsg_ValuesGanttEnd 65115 198 #define TeeConst_TeeMsg_ValuesGanttNextTask 65116 199 #define TeeConst_TeeMsg_ValuesArrowEndX 65117 200 #define TeeConst_TeeMsg_ValuesArrowEndY 65118 201 #define TntSystem_SBufferOverflow 65119 202 #define TeeConst_TeeMsg_GanttSample2 65120 203 #define TeeConst_TeeMsg_GanttSample3 65121 204 #define TeeConst_TeeMsg_GanttSample4 65122 205 #define TeeConst_TeeMsg_GanttSample5 65123 206 #define TeeConst_TeeMsg_GanttSample6 65124 207 #define TeeConst_TeeMsg_GanttSample7 65125 208 #define TeeConst_TeeMsg_GanttSample8 65126 209 #define TeeConst_TeeMsg_GanttSample9 65127 210 #define TeeConst_TeeMsg_GanttSample10 65128 211 #define TeeConst_TeeMsg_DefaultFontSize 65129 212 #define TeeConst_TeeMsg_FunctionAdd 65130 213 #define TeeConst_TeeMsg_FunctionSubtract 65131 214 #define TeeConst_TeeMsg_FunctionMultiply 65132 215 #define TeeConst_TeeMsg_FunctionDivide 65133 216 #define TeeConst_TeeMsg_FunctionHigh 65134 217 #define TeeConst_TeeMsg_FunctionLow 65135 218 #define TeeConst_TeeMsg_GalleryPie 65136 219 #define TeeConst_TeeMsg_GalleryFastLine 65137 220 #define TeeConst_TeeMsg_Rotation 65138 221 #define TeeConst_TeeMsg_PieSample1 65139 222 #define TeeConst_TeeMsg_PieSample2 65140 223 #define TeeConst_TeeMsg_PieSample3 65141 224 #define TeeConst_TeeMsg_PieSample4 65142 225 #define TeeConst_TeeMsg_PieSample5 65143 226 #define TeeConst_TeeMsg_PieSample6 65144 227 #define TeeConst_TeeMsg_PieSample7 65145 228 #define TeeConst_TeeMsg_PieSample8 65146 229 #define TeeConst_TeeMsg_GalleryStandard 65147 230 #define TeeConst_TeeMsg_GalleryFunctions 65148 231 #define TeeConst_TeeMsg_GalleryArrow 65149 232 #define TeeConst_TeeMsg_GalleryGantt 65150 233 #define TeeConst_TeeMsg_GanttSample1 65151 234 #define TeeConst_TeeMsg_AxisLogBase 65152 235 #define TeeConst_TeeMsg_MaxPointsPerPage 65153 236 #define TeeConst_TeeMsg_3dPercent 65154 237 #define TeeConst_TeeMsg_CircularSeries 65155 238 #define TeeConst_TeeMsg_BarWidthPercent 65156 239 #define TeeConst_TeeMsg_BarOffsetPercent 65157 240 #define TeeConst_TeeMsg_DefaultPercentOf 65158 241 #define TeeConst_TeeMsg_DefPercentFormat 65159 242 #define TeeConst_TeeMsg_DefValueFormat 65160 243 #define TeeConst_TeeMsg_AxisTitle 65161 244 #define TeeConst_TeeMsg_AxisLabels 65162 245 #define TeeConst_TeeMsg_GalleryLine 65163 246 #define TeeConst_TeeMsg_GalleryPoint 65164 247 #define TeeConst_TeeMsg_GalleryArea 65165 248 #define TeeConst_TeeMsg_GalleryBar 65166 249 #define TeeConst_TeeMsg_GalleryHorizBar 65167 250 #define ComConst_SAutomationWarning 65168 251 #define ComConst_SNoCloseActiveServer1 65169 252 #define ComConst_SNoCloseActiveServer2 65170 253 #define TeeConst_TeeMsg_LegendTopPos 65171 254 #define TeeConst_TeeMsg_LegendFirstValue 65172 255 #define TeeConst_TeeMsg_LegendColorWidth 65173 256 #define TeeConst_TeeMsg_SeriesSetDataSource 65174 257 #define TeeConst_TeeMsg_SeriesInvDataSource 65175 258 #define TeeConst_TeeMsg_FillSample 65176 259 #define TeeConst_TeeMsg_Angle 65177 260 #define TeeConst_TeeMsg_AxisLogDateTime 65178 261 #define TeeConst_TeeMsg_AxisLogNotPositive 65179 262 #define TeeConst_TeeMsg_AxisLabelSep 65180 263 #define TeeConst_TeeMsg_AxisIncrementNeg 65181 264 #define TeeConst_TeeMsg_AxisMinMax 65182 265 #define TeeConst_TeeMsg_AxisMaxMin 65183 266 #define ComStrs_sFailSetCalDateTime 65184 267 #define ComStrs_sFailSetCalMaxSelRange 65185 268 #define ComStrs_sFailSetCalMinMaxRange 65186 269 #define ComStrs_sFailsetCalSelRange 65187 270 #define WinHelpViewer_hNoKeyword 65188 271 #define ComConst_SCreateRegKeyError 65189 272 #define ComConst_SOleError 65190 273 #define ComConst_SObjectFactoryMissing 65191 274 #define ComConst_STypeInfoMissing 65192 275 #define ComConst_SBadTypeInfo 65193 276 #define ComConst_SDispIntfMissing 65194 277 #define ComConst_SNoMethod 65195 278 #define ComConst_SVarNotObject 65196 279 #define ComConst_STooManyParams 65197 280 #define ComConst_SDCOMNotInstalled 65198 281 #define ComConst_SDAXError 65199 282 #define ComStrs_sTabFailGetObject 65200 283 #define ComStrs_sTabFailSet 65201 284 #define ComStrs_sTabFailSetObject 65202 285 #define ComStrs_sTabMustBeMultiLine 65203 286 #define ComStrs_sInvalidIndex 65204 287 #define ComStrs_sInsertError 65205 288 #define ComStrs_sInvalidOwner 65206 289 #define ComStrs_sRichEditInsertError 65207 290 #define ComStrs_sRichEditLoadFail 65208 291 #define ComStrs_sRichEditSaveFail 65209 292 #define ComStrs_sUDAssociated 65210 293 #define ComStrs_sPageIndexError 65211 294 #define ComStrs_sInvalidComCtl32 65212 295 #define ComStrs_sDateTimeMax 65213 296 #define ComStrs_sDateTimeMin 65214 297 #define ComStrs_sNeedAllowNone 65215 298 #define ExtCtrls_clNameInactiveCaption 65216 299 #define ExtCtrls_clNameInactiveCaptionText 65217 300 #define ExtCtrls_clNameInfoBk 65218 301 #define ExtCtrls_clNameInfoText 65219 302 #define ExtCtrls_clNameMenu 65220 303 #define ExtCtrls_clNameMenuText 65221 304 #define ExtCtrls_clNameNone 65222 305 #define ExtCtrls_clNameScrollBar 65223 306 #define ExtCtrls_clName3DDkShadow 65224 307 #define ExtCtrls_clName3DLight 65225 308 #define ExtCtrls_clNameWindow 65226 309 #define ExtCtrls_clNameWindowFrame 65227 310 #define ExtCtrls_clNameWindowText 65228 311 #define ComStrs_sTabFailClear 65229 312 #define ComStrs_sTabFailDelete 65230 313 #define ComStrs_sTabFailRetrieve 65231 314 #define ExtCtrls_clNameCream 65232 315 #define ExtCtrls_clNameMedGray 65233 316 #define ExtCtrls_clNameActiveBorder 65234 317 #define ExtCtrls_clNameActiveCaption 65235 318 #define ExtCtrls_clNameAppWorkSpace 65236 319 #define ExtCtrls_clNameBackground 65237 320 #define ExtCtrls_clNameBtnFace 65238 321 #define ExtCtrls_clNameBtnHighlight 65239 322 #define ExtCtrls_clNameBtnShadow 65240 323 #define ExtCtrls_clNameBtnText 65241 324 #define ExtCtrls_clNameCaptionText 65242 325 #define ExtCtrls_clNameDefault 65243 326 #define ExtCtrls_clNameGrayText 65244 327 #define ExtCtrls_clNameHighlight 65245 328 #define ExtCtrls_clNameHighlightText 65246 329 #define ExtCtrls_clNameInactiveBorder 65247 330 #define ExtCtrls_clNameGreen 65248 331 #define ExtCtrls_clNameOlive 65249 332 #define ExtCtrls_clNameNavy 65250 333 #define ExtCtrls_clNamePurple 65251 334 #define ExtCtrls_clNameTeal 65252 335 #define ExtCtrls_clNameGray 65253 336 #define ExtCtrls_clNameSilver 65254 337 #define ExtCtrls_clNameRed 65255 338 #define ExtCtrls_clNameLime 65256 339 #define ExtCtrls_clNameYellow 65257 340 #define ExtCtrls_clNameBlue 65258 341 #define ExtCtrls_clNameFuchsia 65259 342 #define ExtCtrls_clNameAqua 65260 343 #define ExtCtrls_clNameWhite 65261 344 #define ExtCtrls_clNameMoneyGreen 65262 345 #define ExtCtrls_clNameSkyBlue 65263 346 #define Consts_SCannotOpenAVI 65264 347 #define Consts_SDockedCtlNeedsName 65265 348 #define Consts_SDockTreeRemoveError 65266 349 #define Consts_SDockZoneNotFound 65267 350 #define Consts_SDockZoneHasNoCtl 65268 351 #define Consts_SMultiSelectRequired 65269 352 #define Consts_SSeparator 65270 353 #define Consts_SErrorSettingCount 65271 354 #define Consts_SListBoxMustBeVirtual 65272 355 #define Consts_SNoGetItemEventHandler 65273 356 #define HelpIntfs_hNoTableOfContents 65274 357 #define HelpIntfs_hNothingFound 65275 358 #define HelpIntfs_hNoContext 65276 359 #define HelpIntfs_hNoTopics 65277 360 #define ExtCtrls_clNameBlack 65278 361 #define ExtCtrls_clNameMaroon 65279 362 #define Consts_SmkcCtrl 65280 363 #define Consts_SmkcAlt 65281 364 #define Consts_srNone 65282 365 #define Consts_SOutOfRange 65283 366 #define Consts_sAllFilter 65284 367 #define Consts_SInsertLineError 65285 368 #define Consts_SInvalidClipFmt 65286 369 #define Consts_SIconToClipboard 65287 370 #define Consts_SCannotOpenClipboard 65288 371 #define Consts_SInvalidMemoSize 65289 372 #define Consts_SInvalidPrinterOp 65290 373 #define Consts_SNoDefaultPrinter 65291 374 #define Consts_SDuplicateMenus 65292 375 #define Consts_SPictureLabel 65293 376 #define Consts_SPictureDesc 65294 377 #define Consts_SPreviewLabel 65295 378 #define Consts_SmkcBkSp 65296 379 #define Consts_SmkcTab 65297 380 #define Consts_SmkcEsc 65298 381 #define Consts_SmkcEnter 65299 382 #define Consts_SmkcSpace 65300 383 #define Consts_SmkcPgUp 65301 384 #define Consts_SmkcPgDn 65302 385 #define Consts_SmkcEnd 65303 386 #define Consts_SmkcHome 65304 387 #define Consts_SmkcLeft 65305 388 #define Consts_SmkcUp 65306 389 #define Consts_SmkcRight 65307 390 #define Consts_SmkcDown 65308 391 #define Consts_SmkcIns 65309 392 #define Consts_SmkcDel 65310 393 #define Consts_SmkcShift 65311 394 #define Consts_SMaskEditErr 65312 395 #define Consts_SMsgDlgWarning 65313 396 #define Consts_SMsgDlgError 65314 397 #define Consts_SMsgDlgInformation 65315 398 #define Consts_SMsgDlgConfirm 65316 399 #define Consts_SMsgDlgYes 65317 400 #define Consts_SMsgDlgNo 65318 401 #define Consts_SMsgDlgOK 65319 402 #define Consts_SMsgDlgCancel 65320 403 #define Consts_SMsgDlgHelp 65321 404 #define Consts_SMsgDlgAbort 65322 405 #define Consts_SMsgDlgRetry 65323 406 #define Consts_SMsgDlgIgnore 65324 407 #define Consts_SMsgDlgAll 65325 408 #define Consts_SMsgDlgNoToAll 65326 409 #define Consts_SMsgDlgYesToAll 65327 410 #define Consts_SOKButton 65328 411 #define Consts_SCancelButton 65329 412 #define Consts_SYesButton 65330 413 #define Consts_SNoButton 65331 414 #define Consts_SHelpButton 65332 415 #define Consts_SCloseButton 65333 416 #define Consts_SIgnoreButton 65334 417 #define Consts_SRetryButton 65335 418 #define Consts_SAbortButton 65336 419 #define Consts_SAllButton 65337 420 #define Consts_SCannotDragForm 65338 421 #define Consts_SVMetafiles 65339 422 #define Consts_SVEnhMetafiles 65340 423 #define Consts_SVIcons 65341 424 #define Consts_SVBitmaps 65342 425 #define Consts_SMaskErr 65343 424 426 #define Consts_SVisibleChanged 65344 425 427 #define Consts_SCannotShowModal 65345 … … 432 434 #define Consts_SNotPrinting 65352 433 435 #define Consts_SPrinting 65353 434 #define Consts_S InvalidPrinter 65354435 #define Consts_S DeviceOnPort65355436 #define Consts_S GroupIndexTooLow65356437 #define Consts_S NoMDIForm65357438 #define Consts_S ControlParentSetToSelf65358439 #define Consts_S OKButton65359436 #define Consts_SPrinterIndexError 65354 437 #define Consts_SInvalidPrinter 65355 438 #define Consts_SDeviceOnPort 65356 439 #define Consts_SGroupIndexTooLow 65357 440 #define Consts_SNoMDIForm 65358 441 #define Consts_SControlParentSetToSelf 65359 440 442 #define Consts_SUnknownExtension 65360 441 443 #define Consts_SUnknownClipboardFormat 65361 … … 616 618 STRINGTABLE 617 619 BEGIN 620 pnglang_EPNGIHDRNotFirstText, "This \"Portable Network Graphics\" image is not supported or it might be invalid.\r\n(IHDR chunk is not the first)" 621 pnglang_EPNGSizeExceedsText, "This \"Portable Network Graphics\" image is not supported because either it's width or height exceeds the maximum size, which is 65535 pixels length." 622 pnglang_EPNGUnknownPalEntryText, "There is no such palette entry." 623 pnglang_EPNGUnknownCriticalChunkText, "This \"Portable Network Graphics\" image contains an unknown critical part which could not be decoded." 624 pnglang_EPNGUnknownCompressionText, "This \"Portable Network Graphics\" image is encoded with an unknown compression scheme which could not be decoded." 625 pnglang_EPNGUnknownInterlaceText, "This \"Portable Network Graphics\" image uses an unknown interlace scheme which could not be decoded." 626 pnglang_EPNGCannotAssignChunkText, "The chunks must be compatible to be assigned." 627 pnglang_EPNGUnexpectedEndText, "This \"Portable Network Graphics\" image is invalid because the decoder found an unexpected end of the file." 628 pnglang_EPNGNoImageDataText, "This \"Portable Network Graphics\" image contains no data." 629 pnglang_EPNGCannotChangeSizeText, "The \"Portable Network Graphics\" image can not be resize by changing width and height properties. Try assigning the image from a bitmap." 630 pnglang_EPNGOutMemoryText, "Some operation could not be performed because the system is out of resources. Close some windows and try again." 631 pnglang_EPNGHeaderNotPresentText, "This operation is not valid because the current image contains no valid header." 632 JConsts_sChangeJPGSize, "Cannot change the size of a JPEG image" 633 JConsts_sJPEGError, "JPEG error #%d" 634 JConsts_sJPEGImageFile, "JPEG Image File" 618 635 IdResourceStrings_RSStackESHUTDOWN, "Cannot send or receive after socket is closed." 619 636 IdResourceStrings_RSStackETOOMANYREFS, "Too many references, cannot splice." … … 626 643 IdResourceStrings_RSStackENOTEMPTY, "Directory not empty" 627 644 IdResourceStrings_RSStackHOST_NOT_FOUND, "Host not found." 628 JConsts_sChangeJPGSize, "Cannot change the size of a JPEG image" 629 JConsts_sJPEGError, "JPEG error #%d" 630 JConsts_sJPEGImageFile, "JPEG Image File" 645 pnglang_EPngInvalidCRCText, "This \"Portable Network Graphics\" image is not valid because it contains invalid pieces of data (crc error)" 646 pnglang_EPNGInvalidIHDRText, "The \"Portable Network Graphics\" image could not be loaded because one of its main piece of data (ihdr) might be corrupted" 647 pnglang_EPNGMissingMultipleIDATText, "This \"Portable Network Graphics\" image is invalid because it has missing image parts." 648 pnglang_EPNGZLIBErrorText, "Could not decompress the image because it contains invalid compressed data.\r\n Description: " 649 pnglang_EPNGInvalidPaletteText, "The \"Portable Network Graphics\" image contains an invalid palette." 650 pnglang_EPNGInvalidFileHeaderText, "The file being readed is not a valid \"Portable Network Graphics\" image because it contains an invalid header. This file may be corruped, try obtaining it again." 631 651 IdResourceStrings_RSStackENOPROTOOPT, "Bad protocol option." 632 652 IdResourceStrings_RSStackEPROTONOSUPPORT, "Protocol not supported." … … 661 681 IdResourceStrings_RSStackEMSGSIZE, "Message too long." 662 682 IdResourceStrings_RSStackEPROTOTYPE, "Protocol wrong type for socket." 663 pnglang_EPNGInvalidFileHeaderText, "The file being readed is not a valid \"Portable Network Graphics\" image because it contains an invalid header. This file may be corruped, try obtaining it again." 664 pnglang_EPNGIHDRNotFirstText, "This \"Portable Network Graphics\" image is not supported or it might be invalid.\r\n(IHDR chunk is not the first)" 665 pnglang_EPNGSizeExceedsText, "This \"Portable Network Graphics\" image is not supported because either it's width or height exceeds the maximum size, which is 65535 pixels length." 666 pnglang_EPNGUnknownPalEntryText, "There is no such palette entry." 667 pnglang_EPNGUnknownCriticalChunkText, "This \"Portable Network Graphics\" image contains an unknown critical part which could not be decoded." 668 pnglang_EPNGUnknownCompressionText, "This \"Portable Network Graphics\" image is encoded with an unknown compression scheme which could not be decoded." 669 pnglang_EPNGUnknownInterlaceText, "This \"Portable Network Graphics\" image uses an unknown interlace scheme which could not be decoded." 670 pnglang_EPNGCannotAssignChunkText, "The chunks must be compatible to be assigned." 671 pnglang_EPNGUnexpectedEndText, "This \"Portable Network Graphics\" image is invalid because the decoder found an unexpected end of the file." 672 pnglang_EPNGNoImageDataText, "This \"Portable Network Graphics\" image contains no data." 673 pnglang_EPNGCannotChangeSizeText, "The \"Portable Network Graphics\" image can not be resize by changing width and height properties. Try assigning the image from a bitmap." 674 pnglang_EPNGOutMemoryText, "Some operation could not be performed because the system is out of resources. Close some windows and try again." 675 pnglang_EPNGHeaderNotPresentText, "This operation is not valid because the current image contains no valid header." 676 IdResourceStrings_RSWinsockInitializationError, "Winsock Initialization Error." 677 IdResourceStrings_RSSetSizeExceeded, "Set Size Exceeded." 678 IdResourceStrings_RSWS2CallError, "Error on call Winsock2 library function %s" 683 DBConsts_SCouldNotParseTimeStamp, "Could not parse SQL TimeStamp string" 684 DBConsts_SInvalidSqlTimeStamp, "Invalid SQL date/time values" 679 685 VDBConsts_SFirstRecord, "First record" 680 686 VDBConsts_SPriorRecord, "Prior record" … … 688 694 VDBConsts_SRefreshRecord, "Refresh data" 689 695 VDBConsts_SRemoteLogin, "Remote Login" 690 pnglang_EPngInvalidCRCText, "This \"Portable Network Graphics\" image is not valid because it contains invalid pieces of data (crc error)"691 pnglang_EPNGInvalidIHDRText, "The \"Portable Network Graphics\" image could not be loaded because one of its main piece of data (ihdr) might be corrupted"692 pnglang_EPNGMissingMultipleIDATText, "This \"Portable Network Graphics\" image is invalid because it has missing image parts."693 pnglang_EPNGZLIBErrorText, "Could not decompress the image because it contains invalid compressed data.\r\n Description:"694 pnglang_EPNGInvalidPaletteText, "The \"Portable Network Graphics\" image contains an invalid palette."696 IdResourceStrings_RSWinsockInitializationError, "Winsock Initialization Error." 697 IdResourceStrings_RSSetSizeExceeded, "Set Size Exceeded." 698 IdResourceStrings_RSWS2CallError, "Error on call Winsock2 library function %s" 699 QConsts_SOpen, "Open" 700 QConsts_SSave, "Save" 695 701 QConsts_SUnknownImageFormat, "Image format not recognized" 696 702 QConsts_SUnableToWrite, "Unable to write bitmap" … … 707 713 DBConsts_SBcdOverflow, "BCD overflow" 708 714 DBConsts_SInvalidBcdValue, "%s is not a valid BCD value" 709 DBConsts_SCouldNotParseTimeStamp, "Could not parse SQL TimeStamp string"710 DBConsts_SInvalidSqlTimeStamp, "Invalid SQL date/time values"715 QConsts_SMsgDlgWarning, "Warning" 716 QConsts_SMsgDlgError, "Error" 711 717 QConsts_SMsgDlgInformation, "Information" 712 718 QConsts_SMsgDlgConfirm, "Confirm" … … 723 729 QConsts_SInvalidMimeSourceStream, "MimeSource format must have an associated data stream" 724 730 QConsts_SMimeNotSupportedForIcon, "Mime format not supported for TIcon" 725 QConsts_S Open, "Open"726 QConsts_S Save, "Save"731 QConsts_SGroupIndexTooLow, "GroupIndex cannot be less than a previous menu item's GroupIndex" 732 QConsts_SNoMDIForm, "Cannot create form. No MDI forms are currently active" 727 733 QConsts_SNotAnMDIForm, "Invalid MDIParent for class %s" 728 734 QConsts_SMDIChildNotVisible, "Cannot hide an MDI Child Form" … … 739 745 QConsts_SAllButton, "&All" 740 746 QConsts_SCannotDragForm, "Cannot drag a form" 741 QConsts_S MsgDlgWarning, "Warning"742 QConsts_S MsgDlgError, "Error"747 QConsts_SmkcShift, "Shift+" 748 QConsts_SmkcCtrl, "Ctrl+" 743 749 QConsts_SmkcAlt, "Alt+" 744 750 QConsts_SInvalidPixelFormat, "Invalid pixel format" … … 755 761 QConsts_SMenuNotFound, "Sub-menu is not in menu" 756 762 QConsts_SMenuSetFormError, "TMenu.SetForm: argument must be TCustomForm" 757 QConsts_S GroupIndexTooLow, "GroupIndex cannot be less than a previous menu item's GroupIndex"758 QConsts_S NoMDIForm, "Cannot create form. No MDI forms are currently active"763 QConsts_SmkcTab, "Tab" 764 QConsts_SmkcBackTab, "BackTab" 759 765 QConsts_SmkcEsc, "Esc" 760 766 QConsts_SmkcReturn, "Return" … … 771 777 QConsts_SmkcIns, "Ins" 772 778 QConsts_SmkcDel, "Del" 773 QConsts_SmkcShift, "Shift+"774 QConsts_SmkcCtrl, "Ctrl+"779 TntSystem_SInvalidUTF7, "Invalid UTF7" 780 DKLang_SDKLangErrMsg_DuplicatePropValueID, "Duplicate property value translation ID (%d)" 775 781 DKLang_SDKLangErrMsg_ErrorLoadingTran, "Loading translations failed.\r\nLine %d: %s" 776 782 DKLang_SDKLangErrMsg_InvalidConstName, "Invalid constant name (\"%s\")" … … 787 793 QConsts_STooManyMessageBoxButtons, "Too many buttons specified for message box" 788 794 QConsts_SmkcBkSp, "Backspace" 789 QConsts_SmkcTab, "Tab"790 QConsts_SmkcBackTab, "BackTab"795 TeeConst_TeeMsg_FunctionAverage, "Average" 796 TeeConst_TeeMsg_DefaultFontName, "Arial" 791 797 TeeConst_TeeMsg_CheckPointerSize, "Pointer size must be greater than zero" 792 798 TeeConst_TeeMsg_FunctionPeriod, "Function Period should be >= 0" … … 803 809 TeeConst_TeeMsg_ValuesArrowEndY, "EndY" 804 810 TntSystem_SBufferOverflow, "Buffer overflow" 805 T ntSystem_SInvalidUTF7, "Invalid UTF7"806 DKLang_SDKLangErrMsg_DuplicatePropValueID, "Duplicate property value translation ID (%d)"811 TeeConst_TeeMsg_GanttSample2, "Prototyping" 812 TeeConst_TeeMsg_GanttSample3, "Development" 807 813 TeeConst_TeeMsg_GanttSample4, "Sales" 808 814 TeeConst_TeeMsg_GanttSample5, "Marketing" … … 819 825 TeeConst_TeeMsg_FunctionHigh, "High" 820 826 TeeConst_TeeMsg_FunctionLow, "Low" 821 TeeConst_TeeMsg_ FunctionAverage, "Average"822 TeeConst_TeeMsg_ DefaultFontName, "Arial"827 TeeConst_TeeMsg_GalleryPie, "Pie" 828 TeeConst_TeeMsg_GalleryFastLine, "Fast Line" 823 829 TeeConst_TeeMsg_Rotation, "Rotation" 824 830 TeeConst_TeeMsg_PieSample1, "Cars" … … 835 841 TeeConst_TeeMsg_GalleryGantt, "Gantt" 836 842 TeeConst_TeeMsg_GanttSample1, "Design" 837 TeeConst_TeeMsg_ GanttSample2, "Prototyping"838 TeeConst_TeeMsg_ GanttSample3, "Development"843 TeeConst_TeeMsg_AxisLogBase, "Axis Logarithmic Base should be >= 2" 844 TeeConst_TeeMsg_MaxPointsPerPage, "MaxPointsPerPage must be >= 0" 839 845 TeeConst_TeeMsg_3dPercent, "3D effect percent must be between %d and %d" 840 846 TeeConst_TeeMsg_CircularSeries, "Circular Series dependences are not allowed" … … 851 857 TeeConst_TeeMsg_GalleryBar, "Bar" 852 858 TeeConst_TeeMsg_GalleryHorizBar, "Horiz. Bar" 853 TeeConst_TeeMsg_GalleryPie, "Pie"854 TeeConst_TeeMsg_GalleryFastLine, "Fast Line"859 ComConst_SAutomationWarning, "COM Server Warning" 860 ComConst_SNoCloseActiveServer1, "There are still active COM objects in this application. One or more clients may have references to these objects, so manually closing " 855 861 ComConst_SNoCloseActiveServer2, "this application may cause those client application(s) to fail.\r\n\r\nAre you sure you want to close this application?" 856 862 TeeConst_TeeMsg_LegendTopPos, "Top Legend Position must be between 0 and 100 %" … … 867 873 TeeConst_TeeMsg_AxisMinMax, "Axis Minimum Value must be <= Maximum" 868 874 TeeConst_TeeMsg_AxisMaxMin, "Axis Maximum Value must be >= Minimum" 869 TeeConst_TeeMsg_AxisLogBase, "Axis Logarithmic Base should be >= 2"870 TeeConst_TeeMsg_MaxPointsPerPage, "MaxPointsPerPage must be >= 0"875 ComStrs_sFailSetCalDateTime, "Failed to set calendar date or time" 876 ComStrs_sFailSetCalMaxSelRange, "Failed to set maximum selection range" 871 877 ComStrs_sFailSetCalMinMaxRange, "Failed to set calendar min/max range" 872 878 ComStrs_sFailsetCalSelRange, "Failed to set calendar selected range" … … 883 889 ComConst_SDCOMNotInstalled, "DCOM not installed" 884 890 ComConst_SDAXError, "DAX Error" 885 ComConst_SAutomationWarning, "COM Server Warning" 886 ComConst_SNoCloseActiveServer1, "There are still active COM objects in this application. One or more clients may have references to these objects, so manually closing " 891 ComStrs_sTabFailGetObject, "Failed to get object at index %d" 887 892 ComStrs_sTabFailSet, "Failed to set tab \"%s\" at index %d" 888 893 ComStrs_sTabFailSetObject, "Failed to set object at index %d" … … 899 904 ComStrs_sDateTimeMax, "Date exceeds maximum of %s" 900 905 ComStrs_sDateTimeMin, "Date is less than minimum of %s" 901 ComStrs_s FailSetCalDateTime, "Failed to set calendar date or time"902 ComStrs_sFailSetCalMaxSelRange, "Failed to set maximum selection range"906 ComStrs_sNeedAllowNone, "You must be in ShowCheckbox mode to set to this date" 907 ExtCtrls_clNameInactiveCaption, "Inactive Caption" 903 908 ExtCtrls_clNameInactiveCaptionText, "Inactive Caption Text" 904 909 ExtCtrls_clNameInfoBk, "Info Background" … … 916 921 ComStrs_sTabFailDelete, "Failed to delete tab at index %d" 917 922 ComStrs_sTabFailRetrieve, "Failed to retrieve tab at index %d" 918 ComStrs_sTabFailGetObject, "Failed to get object at index %d"923 ExtCtrls_clNameCream, "Cream" 919 924 ExtCtrls_clNameMedGray, "Medium Gray" 920 925 ExtCtrls_clNameActiveBorder, "Active Border" … … 932 937 ExtCtrls_clNameHighlightText, "Highlight Text" 933 938 ExtCtrls_clNameInactiveBorder, "Inactive Border" 934 ExtCtrls_clName InactiveCaption, "Inactive Caption"939 ExtCtrls_clNameGreen, "Green" 935 940 ExtCtrls_clNameOlive, "Olive" 936 941 ExtCtrls_clNameNavy, "Navy" … … 948 953 ExtCtrls_clNameMoneyGreen, "Money Green" 949 954 ExtCtrls_clNameSkyBlue, "Sky Blue" 950 ExtCtrls_clNameCream, "Cream"955 Consts_SCannotOpenAVI, "Cannot open AVI" 951 956 Consts_SDockedCtlNeedsName, "Docked control must have a name" 952 957 Consts_SDockTreeRemoveError, "Error removing control from dock tree" … … 964 969 ExtCtrls_clNameBlack, "Black" 965 970 ExtCtrls_clNameMaroon, "Maroon" 966 ExtCtrls_clNameGreen, "Green"971 Consts_SmkcCtrl, "Ctrl+" 967 972 Consts_SmkcAlt, "Alt+" 968 973 Consts_srNone, "(None)" … … 980 985 Consts_SPictureDesc, " (%dx%d)" 981 986 Consts_SPreviewLabel, "Preview" 982 Consts_S CannotOpenAVI, "Cannot open AVI"987 Consts_SmkcBkSp, "BkSp" 983 988 Consts_SmkcTab, "Tab" 984 989 Consts_SmkcEsc, "Esc" … … 996 1001 Consts_SmkcDel, "Del" 997 1002 Consts_SmkcShift, "Shift+" 998 Consts_S mkcCtrl, "Ctrl+"1003 Consts_SMaskEditErr, "Invalid input value. Use escape key to abandon changes" 999 1004 Consts_SMsgDlgWarning, "Warning" 1000 1005 Consts_SMsgDlgError, "Error" … … 1012 1017 Consts_SMsgDlgNoToAll, "N&o to All" 1013 1018 Consts_SMsgDlgYesToAll, "Yes to &All" 1014 Consts_S mkcBkSp, "BkSp"1019 Consts_SOKButton, "OK" 1015 1020 Consts_SCancelButton, "Cancel" 1016 1021 Consts_SYesButton, "&Yes" … … 1028 1033 Consts_SVBitmaps, "Bitmaps" 1029 1034 Consts_SMaskErr, "Invalid input value" 1030 Consts_SMaskEditErr, "Invalid input value. Use escape key to abandon changes"1031 1035 Consts_SVisibleChanged, "Cannot change Visible in OnShow or OnHide" 1032 1036 Consts_SCannotShowModal, "Cannot make a visible window modal" … … 1039 1043 Consts_SNotPrinting, "Printer is not currently printing" 1040 1044 Consts_SPrinting, "Printing in progress" 1045 Consts_SPrinterIndexError, "Printer index out of range" 1041 1046 Consts_SInvalidPrinter, "Printer selected is not valid" 1042 1047 Consts_SDeviceOnPort, "%s on %s" … … 1044 1049 Consts_SNoMDIForm, "Cannot create form. No MDI forms are currently active" 1045 1050 Consts_SControlParentSetToSelf, "A control cannot have itself as its parent" 1046 Consts_SOKButton, "OK"1047 1051 Consts_SUnknownExtension, "Unknown picture file extension (.%s)" 1048 1052 Consts_SUnknownClipboardFormat, "Unsupported clipboard format" -
cprs/branches/tmg-cprs/CPRS-Chart/CPRSChart.dsk
r498 r541 1 1 [Closed Files] 2 File_0=SourceModule,' C:\PROGRA~1\VISTA\BDK32\Source\TRPCB.pas',0,1,654,1,663,0,03 File_1=SourceModule,' P:\vista\tmg-cprs\CPRS-Chart\Encounter\rPCE.pas',0,1,879,15,887,0,04 File_2=SourceModule,'P:\vista\tmg-cprs\CPRS-Chart\ Encounter\fPCEBase.pas',0,1,312,1,321,0,05 File_3=SourceModule,'P:\vista\tmg-cprs\CPRS-Chart\ Encounter\fVisitType.pas',0,1,31,39,16,0,06 File_4=SourceModule,'P:\vista\tmg-cprs\CPRS-Chart\ Consults\fEditProc.pas',0,1,1,1,1,0,07 File_5=SourceModule,' P:\vista\tmg-cprs\CPRS-Chart\Consults\fEditConsult.pas',0,1,1,1,1,0,08 File_6=SourceModule,' P:\vista\tmg-cprs\CPRS-Chart\Encounter\fEncVitals.pas',0,1,1,1,1,0,09 File_7=SourceModule,'c:\program files\borland\delphi7\source\ rtl\Win\Windows.pas',0,1,28836,1,28850,0,010 File_8=SourceModule,'P:\vista\ tmg-cprs\CPRS-Chart\fDCSumm.pas',0,1,932,1,954,0,011 File_9=SourceModule,' c:\program files\borland\delphi7\source\rtl\Win\Messages.pas',0,1,28,1,13,0,02 File_0=SourceModule,'P:\vista\CPRS-1.0.23.15\CPRS-Chart\fNotes.pas',0,1,1592,1,1601,0,0 3 File_1=SourceModule,'c:\program files\borland\delphi7\source\vcl\Forms.pas',0,1,6867,19,6878,0,0 4 File_2=SourceModule,'P:\vista\tmg-cprs\CPRS-Chart\fReminderDialog.pas',0,1,1177,15,1199,0,0 5 File_3=SourceModule,'P:\vista\tmg-cprs\CPRS-Chart\Templates\uTemplates.pas',0,1,1924,78,1955,0,0 6 File_4=SourceModule,'P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\fPtDemoEdit.pas',0,1,1713,1,1713,0,0 7 File_5=SourceModule,'c:\program files\borland\delphi7\source\rtl\common\classes.pas',0,1,10956,1,10969,0,0 8 File_6=SourceModule,'c:\program files\borland\delphi7\source\vcl\grids.pas',0,1,3918,1,3930,0,0 9 File_7=SourceModule,'c:\program files\borland\delphi7\source\vcl\Controls.pas',0,1,6228,1,6245,0,0 10 File_8=SourceModule,'P:\vista\CPRS-1.0.23.15\CPRS-Chart\fFrame.pas',0,1,2774,1,2791,0,0 11 File_9=SourceModule,'P:\vista\tmg-cprs\CPRS-Chart\fSplash.pas',0,1,1,85,11,0,0 12 12 13 13 [Modules] 14 Module0=P:\vista\tmg-cprs\CPRS-Chart\Options\fOptionsOther.pas 15 Module1=P:\vista\tmg-cprs\CPRS-Chart\Options\fOptions.pas 16 Module2=P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\fPtDemoEdit.pas 17 Module3=c:\program files\borland\delphi7\source\rtl\Sys\variants.pas 18 Module4=P:\vista\tmg-cprs\CPRS-Chart\fPtSel.pas 19 Module5=P:\Vista\tmg-cprs\CPRS-Chart\fFrame.pas 20 Module6=P:\vista\tmg-cprs\CPRS-Chart\CPRSChart.dpr 21 Count=7 14 Module0=C:\PROGRA~1\VISTA\BDK32\Source\wsockc.pas 15 Module1=P:\vista\tmg-cprs\CPRS-Chart\fPtSel.pas 16 Module2=P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\TMGHTML2.pas 17 Module3=P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\EmbeddedED\EmbeddedED.pas 18 Module4=P:\vista\tmg-cprs\CPRS-Chart\fNotes.pas 19 Module5=c:\program files\borland\delphi7\source\rtl\Sys\system.pas 20 Module6=P:\vista\tmg-cprs\CPRS-Chart\fFrame.pas 21 Module7=P:\vista\CPRS-1.0.23.15\CPRS-Chart\fDrawers.pas 22 Module8=P:\vista\tmg-cprs\CPRS-Chart\uReminders.pas 23 Module9=P:\vista\tmg-cprs\CPRS-Chart\fDrawers.pas 24 Module10=P:\vista\tmg-cprs\CPRS-Chart\fNotePrt.pas 25 Module11=P:\vista\tmg-cprs\CPRSChart.ini 26 Module12=P:\vista\tmg-cprs\CPRS-Chart\Options\fOptionsOther.pas 27 Module13=P:\vista\tmg-cprs\CPRS-Chart\Options\fOptions.pas 28 Module14=P:\vista\tmg-cprs\CPRS-Chart\rHTMLTools.pas 29 Module15=P:\vista\tmg-cprs\CPRS-Chart\Options\fOptionsNotes.pas 30 Count=16 22 31 EditWindowCount=1 23 32 TypeLibWindowCount=1 24 33 34 [C:\PROGRA~1\VISTA\BDK32\Source\wsockc.pas] 35 ModuleType=SourceModule 36 FormState=0 37 FormOnTop=0 38 39 [P:\vista\tmg-cprs\CPRS-Chart\fPtSel.pas] 40 ModuleType=SourceModule 41 FormState=0 42 FormOnTop=0 43 44 [P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\TMGHTML2.pas] 45 ModuleType=SourceModule 46 FormState=0 47 FormOnTop=0 48 49 [P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\EmbeddedED\EmbeddedED.pas] 50 ModuleType=SourceModule 51 FormState=0 52 FormOnTop=0 53 54 [P:\vista\tmg-cprs\CPRS-Chart\fNotes.pas] 55 ModuleType=SourceModule 56 FormState=0 57 FormOnTop=0 58 59 [c:\program files\borland\delphi7\source\rtl\Sys\system.pas] 60 ModuleType=SourceModule 61 FormState=0 62 FormOnTop=0 63 64 [P:\vista\tmg-cprs\CPRS-Chart\fFrame.pas] 65 ModuleType=SourceModule 66 FormState=0 67 FormOnTop=0 68 69 [P:\vista\CPRS-1.0.23.15\CPRS-Chart\fDrawers.pas] 70 ModuleType=SourceModule 71 FormState=0 72 FormOnTop=0 73 74 [P:\vista\tmg-cprs\CPRS-Chart\uReminders.pas] 75 ModuleType=SourceModule 76 FormState=0 77 FormOnTop=0 78 79 [P:\vista\tmg-cprs\CPRS-Chart\fDrawers.pas] 80 ModuleType=SourceModule 81 FormState=0 82 FormOnTop=0 83 84 [P:\vista\tmg-cprs\CPRS-Chart\fNotePrt.pas] 85 ModuleType=SourceModule 86 FormState=0 87 FormOnTop=0 88 89 [P:\vista\tmg-cprs\CPRSChart.ini] 90 ModuleType=SourceModule 91 FormState=0 92 FormOnTop=0 93 25 94 [P:\vista\tmg-cprs\CPRS-Chart\Options\fOptionsOther.pas] 26 95 ModuleType=SourceModule … … 30 99 [P:\vista\tmg-cprs\CPRS-Chart\Options\fOptions.pas] 31 100 ModuleType=SourceModule 32 FormState=1 33 FormOnTop=0 34 35 [P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\fPtDemoEdit.pas] 36 ModuleType=SourceModule 37 FormState=0 38 FormOnTop=1 39 40 [c:\program files\borland\delphi7\source\rtl\Sys\variants.pas] 41 ModuleType=SourceModule 42 FormState=0 43 FormOnTop=0 44 45 [P:\vista\tmg-cprs\CPRS-Chart\fPtSel.pas] 46 ModuleType=SourceModule 47 FormState=0 48 FormOnTop=1 49 50 [P:\Vista\tmg-cprs\CPRS-Chart\fFrame.pas] 51 ModuleType=SourceModule 101 FormState=0 102 FormOnTop=0 103 104 [P:\vista\tmg-cprs\CPRS-Chart\rHTMLTools.pas] 105 ModuleType=SourceModule 106 FormState=0 107 FormOnTop=0 108 109 [P:\vista\tmg-cprs\CPRS-Chart\Options\fOptionsNotes.pas] 110 ModuleType=SourceModule 111 FormState=0 112 FormOnTop=0 113 114 [C:\Program Files\Borland\Delphi7\Projects\ProjectGroup1.bpg] 52 115 FormState=0 53 116 FormOnTop=0 54 117 55 118 [P:\vista\tmg-cprs\CPRS-Chart\CPRSChart.dpr] 56 ModuleType=SourceModule57 FormState=058 FormOnTop=059 60 [C:\Program Files\Borland\Delphi7\Projects\ProjectGroup1.bpg]61 119 FormState=0 62 120 FormOnTop=0 … … 70 128 FormOnTop=0 71 129 130 [P:\vista\tmg-cprs\CPRS-Chart\dShared.pas] 131 FormState=0 132 FormOnTop=0 133 72 134 [P:\vista\tmg-cprs\CPRS-Chart\fHSplit.pas] 73 135 FormState=0 … … 78 140 FormOnTop=0 79 141 80 [P:\vista\tmg-cprs\CPRS-Chart\Encounter\mVisitRelated.pas]81 FormState=082 FormOnTop=083 84 [P:\vista\tmg-cprs\CPRS-Chart\dShared.pas]85 FormState=086 FormOnTop=087 88 142 [EditWindow0] 89 ViewCount= 790 CurrentView= 5143 ViewCount=16 144 CurrentView=9 91 145 View0=0 92 146 View1=1 … … 96 150 View5=5 97 151 View6=6 152 View7=7 153 View8=8 154 View9=9 155 View10=10 156 View11=11 157 View12=12 158 View13=13 159 View14=14 160 View15=15 98 161 CodeExplorer=CodeExplorer@EditWindow0 99 162 MessageView=MessageView@EditWindow0 … … 101 164 Visible=1 102 165 State=0 103 Left= 81104 Top= 156105 Width= 780106 Height=5 88107 MaxLeft=- 1108 MaxTop= -1109 ClientWidth= 772110 ClientHeight= 554166 Left=-729 167 Top=284 168 Width=663 169 Height=502 170 MaxLeft=-4 171 MaxTop=104 172 ClientWidth=655 173 ClientHeight=468 111 174 LeftPanelSize=0 112 LeftPanelClients= CodeExplorer@EditWindow0113 LeftPanelData=00000400010000000 C000000436F64654578706C6F726572000000000000000000000000000000000001000000000000000000000000FFFFFFFF175 LeftPanelClients=DockSite0 176 LeftPanelData=000004000100000009000000446F636B5369746530000000000000000000000000000000000001000000000000000000000000FFFFFFFF 114 177 RightPanelSize=0 115 178 BottomPanelSize=0 116 179 BottomPanelClients=MessageView@EditWindow0 117 BottomPanelData=00000400010000000B0000004D65737361676556696577 040300000000000002BB000000000000000100000000000000000000000001000000000103000000000000010000000001030000000000000100000000C702000000000000010000000004030000000000000100000000040300000B0000004D65737361676556696577FFFFFFFF180 BottomPanelData=00000400010000000B0000004D657373616765566965778F020000000000000257000000000000000100000000000000000000000001000000002303000000000000010000000023030000000000000100000000230300000000000001000000008F0200000B0000004D65737361676556696577FFFFFFFF 118 181 119 182 [View0] 120 Module=P:\vista\tmg-cprs\CPRS-Chart\CPRSChart.dpr 121 CursorX=1 122 CursorY=12 183 Module=P:\vista\tmg-cprs\CPRS-Chart\fNotes.pas 184 CursorX=1 185 CursorY=4515 186 TopLine=4502 187 LeftCol=1 188 189 [View1] 190 Module=P:\vista\tmg-cprs\CPRS-Chart\fFrame.pas 191 CursorX=1 192 CursorY=3764 193 TopLine=3752 194 LeftCol=1 195 196 [View2] 197 Module=P:\vista\tmg-cprs\CPRS-Chart\Options\fOptionsNotes.pas 198 CursorX=13 199 CursorY=313 200 TopLine=311 201 LeftCol=1 202 203 [View3] 204 Module=P:\vista\tmg-cprs\CPRS-Chart\fDrawers.pas 205 CursorX=1 206 CursorY=207 207 TopLine=189 208 LeftCol=1 209 210 [View4] 211 Module=P:\vista\tmg-cprs\CPRS-Chart\uReminders.pas 212 CursorX=3 213 CursorY=9 123 214 TopLine=1 124 215 LeftCol=1 125 216 126 [View1] 127 Module=P:\Vista\tmg-cprs\CPRS-Chart\fFrame.pas 128 CursorX=15 129 CursorY=19 130 TopLine=11 131 LeftCol=1 132 133 [View2] 217 [View5] 218 Module=c:\program files\borland\delphi7\source\rtl\Sys\system.pas 219 CursorX=1 220 CursorY=11844 221 TopLine=11822 222 LeftCol=1 223 224 [View6] 225 Module=P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\EmbeddedED\EmbeddedED.pas 226 CursorX=1 227 CursorY=2023 228 TopLine=2010 229 LeftCol=1 230 231 [View7] 232 Module=P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\HTMLEdit\TMGHTML2.pas 233 CursorX=1 234 CursorY=189 235 TopLine=178 236 LeftCol=1 237 238 [View8] 134 239 Module=P:\vista\tmg-cprs\CPRS-Chart\fPtSel.pas 135 CursorX=5136 CursorY=39137 TopLine=31138 LeftCol=1139 140 [View3]141 Module=P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\fPtDemoEdit.pas142 CursorX=43143 CursorY=299144 TopLine=292145 LeftCol=1146 147 [View4]148 Module=P:\vista\tmg-cprs\CPRS-Chart\Options\fOptions.pas149 CursorX=1150 CursorY=390151 TopLine=385152 LeftCol=1153 154 [View5]155 Module=P:\vista\tmg-cprs\CPRS-Chart\Options\fOptionsOther.pas156 240 CursorX=1 157 241 CursorY=1 … … 159 243 LeftCol=1 160 244 161 [View6] 162 Module=c:\program files\borland\delphi7\source\rtl\Sys\variants.pas 163 CursorX=1 164 CursorY=609 165 TopLine=595 245 [View9] 246 Module=C:\PROGRA~1\VISTA\BDK32\Source\wsockc.pas 247 CursorX=1 248 CursorY=1479 249 TopLine=1468 250 LeftCol=1 251 252 [View10] 253 Module=P:\vista\CPRS-1.0.23.15\CPRS-Chart\fDrawers.pas 254 CursorX=1 255 CursorY=1614 256 TopLine=1605 257 LeftCol=1 258 259 [View11] 260 Module=P:\vista\tmg-cprs\CPRS-Chart\rHTMLTools.pas 261 CursorX=41 262 CursorY=562 263 TopLine=551 264 LeftCol=1 265 266 [View12] 267 Module=P:\vista\tmg-cprs\CPRS-Chart\Options\fOptions.pas 268 CursorX=1 269 CursorY=736 270 TopLine=731 271 LeftCol=1 272 273 [View13] 274 Module=P:\vista\tmg-cprs\CPRS-Chart\Options\fOptionsOther.pas 275 CursorX=29 276 CursorY=349 277 TopLine=343 278 LeftCol=1 279 280 [View14] 281 Module=P:\vista\tmg-cprs\CPRSChart.ini 282 CursorX=9 283 CursorY=18 284 TopLine=1 285 LeftCol=1 286 287 [View15] 288 Module=P:\vista\tmg-cprs\CPRS-Chart\fNotePrt.pas 289 CursorX=19 290 CursorY=242 291 TopLine=231 166 292 LeftCol=1 167 293 … … 181 307 182 308 [Watches] 183 Count=10 184 Watch0='Control',256,0,18,1,0,'Watches' 185 Watch1='TabIndex',256,0,18,1,0,'Watches' 186 Watch2='FCount',256,0,18,1,0,'Watches' 187 Watch3='pageControl',16,0,18,1,0,'Watches' 188 Watch4='ALabel',256,0,18,1,0,'Watches' 189 Watch5='colorIndex',256,0,18,1,0,'Watches' 190 Watch6='GetCapture',256,0,18,1,0,'Watches' 191 Watch7='FOnException',8,0,18,1,0,'Watches' 192 Watch8='E',16,0,18,1,0,'Watches' 193 Watch9='actiontype',256,0,18,1,0,'Watches' 309 Count=4 310 Watch0='CachedWPField',256,0,18,1,0,'Watches' 311 Watch1='DataForGrid.indexof',256,0,18,1,0,'Watches' 312 Watch2='E',256,0,18,1,0,'Watches' 313 Watch3='MarkForDelete',256,0,18,1,0,'Watches' 194 314 195 315 [WatchWindow] … … 197 317 WatchShowColumnHeaders=1 198 318 Create=1 199 Visible= 0200 State=0 201 Left= 26202 Top= 330203 Width= 885204 Height= 260205 MaxLeft=-1 206 MaxTop=-1 207 ClientWidth= 877208 ClientHeight= 234319 Visible=1 320 State=0 321 Left=0 322 Top=0 323 Width=207 324 Height=621 325 MaxLeft=-1 326 MaxTop=-1 327 ClientWidth=207 328 ClientHeight=621 209 329 TBDockHeight=234 210 330 LRDockWidth=421 … … 212 332 213 333 [Breakpoints] 214 Count=0 334 Count=7 335 Breakpoint0='P:\vista\tmg-cprs\CPRS-Chart\rCover.pas',315,'',0,1,'',1,0,0,'',1,'','','' 336 Breakpoint1='P:\vista\tmg-cprs\TMG_Extra\HTMLEdit\TMGHTML2.pas',688,'',0,1,'',1,0,0,'',1,'','','' 337 Breakpoint2='P:\vista\tmg-cprs\TMG_Extra\HTMLEdit\EmbeddedED\EmbeddedED.pas',1516,'',0,1,'',1,0,0,'',1,'','','' 338 Breakpoint3='P:\vista\tmg-cprs\TMG_Extra\HTMLEdit\EmbeddedED\EmbeddedED.pas',1540,'',0,1,'',1,0,0,'',1,'','','' 339 Breakpoint4='P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\fPtDemoEdit.pas',1710,'',0,1,'',1,0,0,'',1,'','','' 340 Breakpoint5='P:\vista\tmg-cprs\CPRS-Chart\TMG_Extra\fPtDemoEdit.pas',1787,'',0,1,'',1,0,0,'',1,'','','' 341 Breakpoint6='P:\vista\tmg-cprs\CPRS-Chart\fNotes.pas',4512,'',0,1,'',1,0,0,'',1,'','','' 215 342 216 343 [AddressBreakpoints] … … 221 348 Visible=1 222 349 State=2 223 Left=1 064224 Top= 175225 Width= 123350 Left=170 351 Top=3 352 Width=854 226 353 Height=112 227 354 MaxLeft=-4 228 355 MaxTop=-4 229 MaxWidth= 1032356 MaxWidth=808 230 357 MaxHeight=112 231 ClientWidth= 1024358 ClientWidth=800 232 359 ClientHeight=78 233 360 … … 268 395 Visible=0 269 396 State=0 270 Left=2 87271 Top=1 37397 Left=220 398 Top=110 272 399 Width=800 273 400 Height=561 … … 300 427 Left=0 301 428 Top=0 302 Width= 242303 Height=4 84304 MaxLeft=-1 305 MaxTop=-1 306 ClientWidth= 242307 ClientHeight=4 84429 Width=326 430 Height=427 431 MaxLeft=-1 432 MaxTop=-1 433 ClientWidth=326 434 ClientHeight=427 308 435 TBDockHeight=527 309 436 LRDockWidth=250 … … 311 438 SplitPos=128 312 439 ArrangeBy=Name 313 SelectedItem= Position314 ExpandedItems=Anchors 440 SelectedItem=Top 441 ExpandedItems=Anchors,Options 315 442 HiddenCategories=Legacy 316 443 … … 339 466 [CallStackWindow] 340 467 Create=1 341 Visible= 1342 State=0 343 Left= -764344 Top= 199345 Width=4 77346 Height=4 81347 MaxLeft=-1 348 MaxTop=-1 349 ClientWidth=4 69350 ClientHeight= 455468 Visible=0 469 State=0 470 Left=592 471 Top=324 472 Width=420 473 Height=412 474 MaxLeft=-1 475 MaxTop=-1 476 ClientWidth=412 477 ClientHeight=386 351 478 TBDockHeight=355 352 479 LRDockWidth=233 … … 379 506 Left=0 380 507 Top=0 381 Width= 242382 Height=4 84383 MaxLeft=-1 384 MaxTop=-1 385 ClientWidth= 242386 ClientHeight=4 84508 Width=326 509 Height=427 510 MaxLeft=-1 511 MaxTop=-1 512 ClientWidth=326 513 ClientHeight=427 387 514 TBDockHeight=527 388 515 LRDockWidth=250 … … 499 626 [CodeExplorer@EditWindow0] 500 627 Create=1 628 Visible=1 629 State=0 630 Left=0 631 Top=0 632 Width=207 633 Height=621 634 MaxLeft=-1 635 MaxTop=-1 636 ClientWidth=207 637 ClientHeight=621 638 TBDockHeight=305 639 LRDockWidth=140 640 Dockable=1 641 642 [MessageView@EditWindow0] 643 Create=1 644 Visible=0 645 State=0 646 Left=12 647 Top=0 648 Width=643 649 Height=87 650 MaxLeft=-1 651 MaxTop=-1 652 ClientWidth=643 653 ClientHeight=87 654 TBDockHeight=87 655 LRDockWidth=443 656 Dockable=1 657 658 [DockHosts] 659 DockHostCount=2 660 661 [DockSite0] 662 DockSiteType=1 663 Create=1 501 664 Visible=0 502 665 State=0 503 666 Left=0 504 667 Top=12 505 Width=140 506 Height=351 507 MaxLeft=-1 508 MaxTop=-1 509 ClientWidth=140 510 ClientHeight=351 511 TBDockHeight=305 512 LRDockWidth=140 513 Dockable=1 514 515 [MessageView@EditWindow0] 516 Create=1 517 Visible=0 518 State=0 519 Left=12 520 Top=0 521 Width=760 522 Height=187 523 MaxLeft=-1 524 MaxTop=-1 525 ClientWidth=760 526 ClientHeight=187 527 TBDockHeight=187 528 LRDockWidth=443 529 Dockable=1 530 531 [DockHosts] 532 DockHostCount=1 533 534 [DockSite0] 668 Width=215 669 Height=650 670 MaxLeft=-1 671 MaxTop=-1 672 ClientWidth=215 673 ClientHeight=650 674 TBDockHeight=94 675 LRDockWidth=215 676 Dockable=1 677 TabPosition=0 678 ActiveTab=Watch List 679 TabDockClients=CodeExplorer@EditWindow0,WatchWindow 680 681 [DockSite1] 535 682 DockSiteType=1 536 683 Create=1 537 684 Visible=1 538 685 State=0 539 Left=- 278540 Top= 186541 Width= 258542 Height= 539543 MaxLeft=-1 544 MaxTop=-1 545 ClientWidth= 250546 ClientHeight= 513686 Left=-794 687 Top=291 688 Width=342 689 Height=482 690 MaxLeft=-1 691 MaxTop=-1 692 ClientWidth=334 693 ClientHeight=456 547 694 TBDockHeight=539 548 695 LRDockWidth=258 -
cprs/branches/tmg-cprs/CPRS-Chart/CPRSChart_TLB.pas
r496 r541 13 13 14 14 // PASTLWTR : 1.2 15 // File generated on 2/18/2009 8:07:41 AM from Type Library described below.15 // File generated on 8/12/2009 5:54:14 PM from Type Library described below. 16 16 17 17 // ************************************************************************ // -
cprs/branches/tmg-cprs/CPRS-Chart/Consults/fConsult513Prt.pas
r453 r541 195 195 begin 196 196 FReportText.Lines.Assign(GetFormattedSF513(FConsult, ChartCopy)); 197 PrintWindowsReport(FReportText, PAGE_BREAK, Self.Caption, ErrMsg );197 PrintWindowsReport(FReportText, PAGE_BREAK, Self.Caption, ErrMsg, Application); //kt 8/09, Added ',Application' 198 198 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 199 199 end; -
cprs/branches/tmg-cprs/CPRS-Chart/Consults/fPreReq.pas
r453 r541 167 167 end; 168 168 until LastLine >= memReport.Lines.Count - 1; 169 PrintWindowsReport(memPrintReport, PAGE_BREAK, Self.Caption, ErrMsg );169 PrintWindowsReport(memPrintReport, PAGE_BREAK, Self.Caption, ErrMsg, Application); //kt 8/09, Added ',Application' 170 170 end; 171 171 finally -
cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptions.dfm
r498 r541 87 87 Height = 323 88 88 HelpContext = 9999 89 ActivePage = ts CoverSheet89 ActivePage = tsNotes 90 90 Align = alClient 91 91 TabOrder = 0 … … 1770 1770 Width = 281 1771 1771 Height = 241 1772 Enabled = False 1772 1773 Font.Charset = DEFAULT_CHARSET 1773 1774 Font.Color = clWindowText … … 1789 1790 Caption = 'Load last selected skin when starting program' 1790 1791 Checked = True 1792 Enabled = False 1791 1793 State = cbChecked 1792 1794 TabOrder = 1 … … 1798 1800 Height = 25 1799 1801 Caption = '&More skins...' 1802 Enabled = False 1800 1803 TabOrder = 2 1801 1804 OnClick = btnMoreSkinsClick … … 1807 1810 Height = 25 1808 1811 Caption = '&Disable skin' 1812 Enabled = False 1809 1813 ModalResult = 7 1810 1814 TabOrder = 3 … … 1817 1821 Height = 25 1818 1822 Caption = '&Apply skin' 1823 Enabled = False 1819 1824 TabOrder = 4 1820 1825 OnClick = btnApplySkinClick -
cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptionsNotes.dfm
r453 r541 6 6 BorderStyle = bsSingle 7 7 Caption = 'Notes' 8 ClientHeight = 1509 ClientWidth = 39 98 ClientHeight = 226 9 ClientWidth = 398 10 10 Color = clBtnFace 11 11 Font.Charset = DEFAULT_CHARSET … … 17 17 OldCreateOrder = False 18 18 Position = poScreenCenter 19 OnCreate = FormCreate 19 20 OnShow = FormShow 20 21 PixelsPerInch = 96 … … 40 41 Height = 13 41 42 Caption = 'of notes (sec):' 43 end 44 object lblHTMLViewSize: TLabel 45 Left = 8 46 Top = 144 47 Width = 159 48 Height = 13 49 Caption = 'Formatted Text (HTML) View Size' 42 50 end 43 51 object txtAutoSave: TCaptionEdit … … 113 121 object pnlBottom: TPanel 114 122 Left = 0 115 Top = 1 17116 Width = 39 9123 Top = 193 124 Width = 398 117 125 Height = 33 118 126 HelpContext = 9110 … … 124 132 Left = 0 125 133 Top = 0 126 Width = 39 9134 Width = 398 127 135 Height = 2 128 136 Align = alTop … … 152 160 end 153 161 end 162 object cboHTMLViewSize: TComboBox 163 Left = 8 164 Top = 162 165 Width = 153 166 Height = 21 167 ItemHeight = 13 168 TabOrder = 6 169 Text = '<View Size>' 170 OnChange = cboHTMLViewSizeChange 171 Items.Strings = ( 172 'Smallest' 173 'Small' 174 'Medium' 175 'Large' 176 'Largest') 177 end 178 object cbDefaultHTMLMode: TCheckBox 179 Left = 8 180 Top = 120 181 Width = 225 182 Height = 17 183 Caption = 'Start notes in Formatted (HTML) Mode' 184 TabOrder = 7 185 OnClick = cbDefaultHTMLModeClick 186 end 154 187 object DKLanguageController1: TDKLanguageController 155 Left = 192156 Top = 8 0188 Left = 352 189 Top = 88 157 190 LangData = { 158 191 0F0066726D4F7074696F6E734E6F746573010200000001000000070043617074 159 696F6E02000000080048656C7046696C65010 C0000000C006C626C4175746F53192 696F6E02000000080048656C7046696C65010F0000000C006C626C4175746F53 160 193 61766531010100000003000000070043617074696F6E000B006C626C436F7369 161 194 676E6572010100000004000000070043617074696F6E000C006C626C4175746F … … 167 200 6F74746F6D0000090062766C426F74746F6D0000050062746E4F4B0101000000 168 201 09000000070043617074696F6E00090062746E43616E63656C01010000000A00 169 0000070043617074696F6E00} 202 0000070043617074696F6E000F006C626C48544D4C5669657753697A65010100 203 00000B000000070043617074696F6E000F0063626F48544D4C5669657753697A 204 6501020000000D00000005004974656D730C0000000400546578740011006362 205 44656661756C7448544D4C4D6F646501010000000E000000070043617074696F 206 6E00} 170 207 end 171 208 end -
cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptionsNotes.pas
r453 r541 4 4 interface 5 5 6 { //kt 8/09 The following objects were addeded to the *FORM* of this unit 7 8 object lblHTMLViewSize: TLabel 9 Left = 8 10 Top = 144 11 Width = 159 12 Height = 13 13 Caption = 'Formatted Text (HTML) View Size' 14 end 15 object cboHTMLViewSize: TComboBox 16 Left = 8 17 Top = 162 18 Width = 153 19 Height = 21 20 ItemHeight = 13 21 TabOrder = 6 22 Text = '<View Size>' 23 OnClick = cboHTMLViewSizeClick 24 Items.Strings = ( 25 'Smallest' 26 'Small' 27 'Medium' 28 'Large' 29 'Largest') 30 end 31 object cbDefaultHTMLMode: TCheckBox 32 Left = 8 33 Top = 112 34 Width = 225 35 Height = 17 36 Caption = 'Start notes in Formatted (HTML) Mode' 37 TabOrder = 7 38 OnClick = cbDefaultHTMLModeClick 39 } 40 41 6 42 uses 7 43 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, 44 IniFiles, //kt for IniFile 8 45 StdCtrls, ExtCtrls, ORCtrls, ORFn, ComCtrls, DKLang; 9 46 … … 22 59 btnCancel: TButton; 23 60 lblAutoSave2: TLabel; 24 DKLanguageController1: TDKLanguageController; 61 cboHTMLViewSize: TComboBox; //kt 8/09 62 lblHTMLViewSize: TLabel; //kt 8/09 63 cbDefaultHTMLMode: TCheckBox; //kt 8/09 64 DKLanguageController1: TDKLanguageController; //kt 25 65 procedure FormShow(Sender: TObject); 26 66 procedure btnOKClick(Sender: TObject); … … 32 72 Direction, InsertAt: Integer); 33 73 procedure cboCosignerExit(Sender: TObject); 74 procedure FormCreate(Sender: TObject); //kt 8/09 75 procedure cbDefaultHTMLModeClick(Sender: TObject); //kt 8/09 76 procedure cboHTMLViewSizeChange(Sender: TObject); //kt 8/09 34 77 private 35 78 { Private declarations } … … 40 83 var 41 84 frmOptionsNotes: TfrmOptionsNotes; 85 OptionsNotesIniFile : TIniFile; //kt 8/09 86 DefaultEditHTMLMode : boolean; //kt 8/09 87 FHTMLEditTextSize : integer; //kt 8/09 42 88 43 89 procedure DialogOptionsNotes(topvalue, leftvalue, fontsize: integer; var actiontype: Integer); 90 procedure SetDefaultEditHTMLMode(Value : boolean); //kt 8/09 91 procedure Loaded; //kt 8/09 44 92 45 93 implementation … … 48 96 49 97 uses 98 uCore, //kt 8/09 99 Registry, //kt 8/09 50 100 rOptions, uOptions, rCore, rTIU, rDCSumm; 101 102 const 103 DEFAULT_HTML_EDIT_MODE = 'Edit-in-HTML default mode'; //kt 8/09 104 DEFAULT_HTML_TEXT_SIZE = 'Edit-in-HTML default text size'; //kt 8/09 105 106 procedure SetRegHTMLViewSize(Size : integer); forward; //kt 8/09 51 107 52 108 procedure DialogOptionsNotes(topvalue, leftvalue, fontsize: integer; var actiontype: Integer); … … 102 158 chkAskSubject.Checked := rpcGetSubject; 103 159 if chkAskSubject.Checked then chkAskSubject.Tag := 1; 160 cbDefaultHTMLMode.Checked := DefaultEditHTMLMode; //kt 104 161 end; 105 162 … … 207 264 end; 208 265 266 267 procedure SetRegHTMLViewSize(Size : integer); 268 //kt added entire function 8/09 269 //NOTE: The only way to affect the view size of the HTML renderer (IE) is to 270 // change a system-wide setting in the registry. Then CPRS has to be 271 // restarted for changes to take effect. 272 var 273 FontSizeData : array[0..3] of byte; 274 ZoomReg : TRegistry; 275 begin 276 if (Size < 0) or (Size > 255) then exit; 277 ZoomReg := TRegistry.Create; 278 FontSizeData[0] := Lo(Size); FontSizeData[1] := 0; FontSizeData[2] := 0; FontSizeData[3] := 0; 279 try 280 ZoomReg.Rootkey := HKEY_CURRENT_USER; 281 if ZoomReg.OpenKey('\Software\Microsoft\Internet Explorer\International\Scripts\3', False) then begin 282 ZoomReg.WriteBinaryData('IEFontSize',FontSizeData,SizeOf(FontSizeData)); 283 end; 284 finally 285 ZoomReg.Free; 286 end; 287 end; 288 289 procedure SetDefaultEditHTMLMode(Value : boolean); 290 //kt added entire function 8/09 291 begin 292 if Value <> DefaultEditHTMLMode then begin 293 OptionsNotesIniFile.WriteBool(User.Name,DEFAULT_HTML_EDIT_MODE,Value); 294 DefaultEditHTMLMode := Value; 295 end; 296 end; 297 298 procedure TfrmOptionsNotes.cbDefaultHTMLModeClick(Sender: TObject); 299 //kt added entire function 8/09 300 begin 301 SetDefaultEditHTMLMode(cbDefaultHTMLMode.Checked); 302 end; 303 304 procedure TfrmOptionsNotes.cboHTMLViewSizeChange(Sender: TObject); 305 //kt added entire function 8/09 306 begin 307 SetRegHTMLViewSize(cboHTMLViewSize.ItemIndex); 308 OptionsNotesIniFile.WriteInteger(User.Name,DEFAULT_HTML_TEXT_SIZE,cboHTMLViewSize.ItemIndex); 309 MessageDlg('Formated text size change will take '+#10+#13+ 310 'effect next time CPRS is restarted.',mtInformation,[mbOK],0); 311 end; 312 313 procedure Loaded; 314 //kt added entire function 8/09 315 begin 316 //Code was put in global access space because object is not instantiated until 317 //after user shows options (which could be never) 318 OptionsNotesIniFile := TIniFile.Create(ChangeFileExt(Application.ExeName, '.INI')); //kt 319 DefaultEditHTMLMode := OptionsNotesIniFile.ReadBool(User.Name,DEFAULT_HTML_EDIT_MODE,false); 320 FHTMLEditTextSize := OptionsNotesIniFile.ReadInteger(User.Name,DEFAULT_HTML_TEXT_SIZE,2); 321 SetRegHTMLViewSize(FHTMLEditTextSize); 322 end; 323 324 procedure TfrmOptionsNotes.FormCreate(Sender: TObject); 325 //kt added entire function 8/09 326 //NOTE: form is not created until first time needed. 327 begin 328 //NOTE: FHTMLEditTextSize is set in Loaded function (has to be called after sign on (so User.Name is available) 329 if (FHTMLEditTextSize > -1) and (FHTMLEditTextSize < cboHTMLViewSize.Items.Count) then begin 330 cboHTMLViewSize.ItemIndex := FHTMLEditTextSize; 331 cboHTMLViewSize.Text := cboHTMLViewSize.Items[FHTMLEditTextSize]; 332 SetRegHTMLViewSize(cboHTMLViewSize.ItemIndex); 333 end; 334 end; 335 336 initialization 337 338 finalization 339 OptionsNotesIniFile.Free; //kt 8/09 340 209 341 end. -
cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptionsOther.dfm
r498 r541 8 8 BorderStyle = bsDialog 9 9 Caption = 'Other Parameters' 10 ClientHeight = 4 3610 ClientHeight = 463 11 11 ClientWidth = 391 12 12 Color = clBtnFace … … 26 26 object lblMedsTab: TLabel 27 27 Left = 7 28 Top = 1 6828 Top = 184 29 29 Width = 170 30 30 Height = 13 … … 44 44 object Bevel1: TBevel 45 45 Left = 1 46 Top = 1 5046 Top = 174 47 47 Width = 392 48 48 Height = 3 … … 50 50 object lblEncAppts: TLabel 51 51 Left = 8 52 Top = 2 6952 Top = 285 53 53 Width = 207 54 54 Height = 13 … … 61 61 object Bevel2: TBevel 62 62 Left = 1 63 Top = 2 5663 Top = 272 64 64 Width = 392 65 65 Height = 2 … … 72 72 Caption = 'Select Tab Positioning' 73 73 end 74 object Label2: TLabel75 Left = 8 76 Top = 1 0474 object lblTabColors: TLabel 75 Left = 8 76 Top = 128 77 77 Width = 83 78 78 Height = 13 79 79 Caption = 'Adjust Tab Colors' 80 80 end 81 object Label3: TLabel81 object lblEditTabColor: TLabel 82 82 Left = 232 83 Top = 1 0483 Top = 128 84 84 Width = 138 85 85 Height = 13 … … 88 88 object pnlBottom: TPanel 89 89 Left = 0 90 Top = 4 0390 Top = 430 91 91 Width = 391 92 92 Height = 33 … … 129 129 object stStart: TStaticText 130 130 Left = 7 131 Top = 191131 Top = 207 132 132 Width = 55 133 133 Height = 17 … … 137 137 object stStop: TStaticText 138 138 Left = 199 139 Top = 191139 Top = 207 140 140 Width = 55 141 141 Height = 17 … … 145 145 object dtStart: TORDateBox 146 146 Left = 7 147 Top = 2 10147 Top = 226 148 148 Width = 178 149 149 Height = 21 … … 157 157 object dtStop: TORDateBox 158 158 Left = 200 159 Top = 2 09159 Top = 225 160 160 Width = 186 161 161 Height = 21 … … 216 216 object stStartEncAppts: TStaticText 217 217 Left = 9 218 Top = 296218 Top = 312 219 219 Width = 55 220 220 Height = 17 … … 224 224 object txtTodayMinus: TStaticText 225 225 Left = 38 226 Top = 3 21226 Top = 337 227 227 Width = 64 228 228 Height = 17 … … 235 235 object txtEncStart: TCaptionEdit 236 236 Left = 110 237 Top = 3 18237 Top = 334 238 238 Width = 50 239 239 Height = 21 … … 248 248 object txtDaysMinus: TStaticText 249 249 Left = 178 250 Top = 3 22250 Top = 338 251 251 Width = 26 252 252 Height = 17 … … 259 259 Tag = 30 260 260 Left = 160 261 Top = 3 18261 Top = 334 262 262 Width = 15 263 263 Height = 21 … … 271 271 object txtDaysPlus: TStaticText 272 272 Left = 180 273 Top = 3 74273 Top = 390 274 274 Width = 26 275 275 Height = 17 … … 282 282 Tag = 30 283 283 Left = 162 284 Top = 3 69284 Top = 385 285 285 Width = 15 286 286 Height = 21 … … 294 294 object txtEncStop: TCaptionEdit 295 295 Left = 112 296 Top = 3 69296 Top = 385 297 297 Width = 50 298 298 Height = 21 … … 307 307 object txtTodayPlus: TStaticText 308 308 Left = 46 309 Top = 3 72309 Top = 388 310 310 Width = 56 311 311 Height = 17 … … 318 318 object stStopEncAppts: TStaticText 319 319 Left = 10 320 Top = 3 48320 Top = 364 321 321 Width = 55 322 322 Height = 17 … … 326 326 object btnEncDefaults: TButton 327 327 Left = 248 328 Top = 287328 Top = 303 329 329 Width = 75 330 330 Height = 22 … … 358 358 object pnlShowColor: TPanel 359 359 Left = 232 360 Top = 1 20360 Top = 144 361 361 Width = 145 362 362 Height = 22 … … 367 367 object cboTabColors: TComboBox 368 368 Left = 8 369 Top = 1 20369 Top = 144 370 370 Width = 217 371 371 Height = 21 … … 378 378 ' ') 379 379 end 380 object cbEnableTabColors: TCheckBox 381 Left = 9 382 Top = 110 383 Width = 169 384 Height = 17 385 Caption = 'Enable Custom Tab Colors' 386 Checked = True 387 Enabled = False 388 State = cbChecked 389 TabOrder = 26 390 Visible = False 391 OnClick = cbEnableTabColorsClick 392 end 380 393 object DKLanguageController1: TDKLanguageController 381 394 Left = 152 … … 383 396 LangData = { 384 397 0F0066726D4F7074696F6E734F74686572010300000002000000070043617074 385 696F6E03000000080048656C7046696C6501000000040048696E74012 2000000398 696F6E03000000080048656C7046696C6501000000040048696E740123000000 386 399 0A006C626C4D656473546162010200000005000000070043617074696F6E0400 387 400 0000040048696E740006006C626C546162010100000006000000070043617074 … … 409 422 43617074696F6E001300546162506F736974696F6E436F6D626F426F78010200 410 423 00001C00000005004974656D731B0000000400546578740006004C6162656C31 411 01010000001D000000070043617074696F6E0006004C6162656C320101000000 412 1E000000070043617074696F6E000C00706E6C53686F77436F6C6F7200000B00 413 436F6C6F724469616C6F67000006004C6162656C3301010000001F0000000700 414 43617074696F6E000C0063626F546162436F6C6F72730000} 424 01010000001D000000070043617074696F6E000C006C626C546162436F6C6F72 425 7301010000001E000000070043617074696F6E000C00706E6C53686F77436F6C 426 6F7200000B00436F6C6F724469616C6F6700000F006C626C4564697454616243 427 6F6C6F7201010000001F000000070043617074696F6E000C0063626F54616243 428 6F6C6F7273000011006362456E61626C65546162436F6C6F7273010100000020 429 000000070043617074696F6E00} 415 430 end 416 431 object ColorDialog: TColorDialog -
cprs/branches/tmg-cprs/CPRS-Chart/Options/fOptionsOther.pas
r473 r541 41 41 TabPositionComboBox: TComboBox; 42 42 Label1: TLabel; 43 Label2: TLabel;43 lblTabColors: TLabel; 44 44 pnlShowColor: TPanel; 45 45 ColorDialog: TColorDialog; 46 Label3: TLabel;46 lblEditTabColor: TLabel; 47 47 cboTabColors: TComboBox; 48 cbEnableTabColors: TCheckBox; 48 49 procedure FormShow(Sender: TObject); 49 50 procedure btnOKClick(Sender: TObject); … … 60 61 procedure cboTabColorsChange(Sender: TObject); 61 62 procedure pnlShowColorClick(Sender: TObject); 63 procedure cbEnableTabColorsClick(Sender: TObject); 62 64 private 63 65 { Private declarations } … … 121 123 values, tab: string; 122 124 begin 123 cboTabColors.Items.Assign(uTabColorsList); //kt added8808 124 cboTabColors.ItemIndex := 0; //kt 125 cboTab.Items.Assign(rpcGetOtherTabs); //kt 126 cboTabColorsChange(nil); //kt 125 cboTabColors.Items.Assign(frmFrame.tabPage.Tabs); //kt 8/09 126 //cboTabColors.Items.Assign(uTabColorsList); //kt added8808 127 cboTabColors.ItemIndex := 0; //kt 128 cboTab.Items.Assign(rpcGetOtherTabs); //kt 129 cboTabColorsChange(nil); //kt 130 cbEnableTabColors.Checked := uTabColorsEnabled; //kt 8/09 127 131 //if (cboTab.Items.IndexOf('Surgery') > -1) and (not ShowSurgeryTab) then <-- original line. //kt 8/8/2007 128 132 if (cboTab.Items.IndexOf(DKLangConstW('fOptionsOther_Surgery')) > -1) and (not ShowSurgeryTab) then //kt added 8/8/2007 … … 344 348 end; 345 349 350 procedure TfrmOptionsOther.cbEnableTabColorsClick(Sender: TObject); 351 //kt added 352 begin 353 uTabColorsEnabled := cbEnableTabColors.Checked; 354 cboTabColors.Enabled := uTabColorsEnabled; 355 lblEditTabColor.Enabled := uTabColorsEnabled; 356 lblTabColors.Enabled := uTabColorsEnabled; 357 pnlShowColor.Enabled := uTabColorsEnabled; 358 end; 359 346 360 end. -
cprs/branches/tmg-cprs/CPRS-Chart/TMG_Extra/fPtDemoEdit.dfm
r498 r541 1 1 object frmPtDemoEdit: TfrmPtDemoEdit 2 Left = 3223 Top = 1 162 Left = 279 3 Top = 142 4 4 Width = 684 5 5 Height = 498 … … 58 58 Width = 676 59 59 Height = 424 60 ActivePage = DemoTabSheet60 ActivePage = Advanced 61 61 Align = alTop 62 62 Anchors = [akLeft, akTop, akRight, akBottom] 63 63 TabOrder = 3 64 OnChange = PageControlChange 65 OnChanging = PageControlChanging 64 66 object DemoTabSheet: TTabSheet 65 67 Caption = 'Demographics' … … 581 583 end 582 584 end 585 object Advanced: TTabSheet 586 Caption = 'Advanced' 587 ImageIndex = 1 588 object gridPatientDemo: TStringGrid 589 Left = 0 590 Top = 0 591 Width = 665 592 Height = 393 593 Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goEditing] 594 TabOrder = 0 595 OnSelectCell = gridPatientDemoSelectCell 596 OnSetEditText = gridPatientDemoSetEditText 597 end 598 end 583 599 end 584 600 object DKLanguageController1: TDKLanguageController … … 587 603 LangData = { 588 604 0D0066726D507444656D6F45646974010100000001000000070043617074696F 589 6E013 900000005004F4B42746E010100000002000000070043617074696F6E00605 6E013B00000005004F4B42746E010100000002000000070043617074696F6E00 590 606 090043616E63656C42746E010100000003000000070043617074696F6E000800 591 607 4170706C7942746E010100000004000000070043617074696F6E000B00506167 … … 634 650 617074696F6E0006004C6162656C3201010000002B000000070043617074696F 635 651 6E0006004C6162656C3301010000002C000000070043617074696F6E00090045 636 4D61696C456469740000} 652 4D61696C4564697400000800416476616E63656401010000002D000000070043 653 617074696F6E000F006772696450617469656E7444656D6F0000} 637 654 end 638 655 end -
cprs/branches/tmg-cprs/CPRS-Chart/TMG_Extra/fPtDemoEdit.pas
r498 r541 6 6 uses 7 7 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 8 Dialogs, ComCtrls, StdCtrls, ExtCtrls, DKLang ;8 Dialogs, ComCtrls, StdCtrls, ExtCtrls, DKLang, Grids; 9 9 10 10 type 11 11 BoolUC = (bucFalse, bucTrue, bucUnchanged); 12 12 13 tFileEntry = record 14 Field : string; 15 FileNum : string; 16 FieldName : String; 17 IENS : string; 18 oldValue,newValue : string; 19 end; 20 21 TGridInfo = class; //forward declaration 22 TGridDataLoader = procedure (GridInfo: TGridInfo) of object; 23 TGridInfo = class (TObject) 24 public 25 Grid : TStringGrid; //doesn't own object 26 FileNum : string; 27 IENS : string; 28 BasicMode : Boolean; 29 Data : TStringList; //doesn't own object 30 Message : string; //optional text. 31 DataLoadProc : TGridDataLoader; 32 ApplyBtn : TButton; 33 RevertBtn : TButton; 34 end; 35 13 36 TPatientInfo = class(TObject) 14 37 public … … 58 81 59 82 Modified : boolean; 60 83 61 84 constructor Create; 62 85 destructor Destroy; override; … … 126 149 DKLanguageController1: TDKLanguageController; 127 150 EMailEdit: TEdit; 151 Advanced: TTabSheet; 152 gridPatientDemo: TStringGrid; 128 153 procedure AliasComboBoxChange(Sender: TObject); 129 154 procedure FormCreate(Sender: TObject); … … 162 187 procedure DOBEditChange(Sender: TObject); 163 188 procedure SSNumEditChange(Sender: TObject); 189 procedure PageControlChange(Sender: TObject); 190 procedure gridPatientDemoSelectCell(Sender: TObject; ACol, 191 ARow: Integer; var CanSelect: Boolean); 192 procedure gridPatientDemoSetEditText(Sender: TObject; ACol, 193 ARow: Integer; const Value: String); 194 procedure PageControlChanging(Sender: TObject; 195 var AllowChange: Boolean); 164 196 private 165 197 { Private declarations } … … 167 199 FServerPatientInfo : TPatientInfo; 168 200 FCurAliasEdit : integer; 201 CurrentAnyFileData : TStringList; 169 202 ProgAliasChangeOccuring : boolean; 203 CurrentPatientData : TStringList; 170 204 ProgNameChangeOccuring : boolean; 171 205 ProgPhoneChangeOccuring : boolean; 206 FLastSelectedRow,FLastSelectedCol : integer; 172 207 ProgAddressChangeOccuring : boolean; 208 DataForGrid : TStringList; 173 209 MaxAliasIEN : integer; 210 Data : TStringList; 174 211 ChangesMade : boolean; 212 BasicTemplate : TStringList; 213 FLoadingGrid: boolean; 214 CachedWPField : TStringList; 175 215 procedure GetPtInfo(PatientInfo : TPatientInfo); 176 216 procedure PostChangedInfo(PatientInfo : TPatientInfo); 177 217 procedure ShowAliasInfo(Patient : TPatientInfo); 218 procedure GetPatientInfo(GridInfo: TGridInfo); 178 219 procedure ShowPtInfo(Patient : TPatientInfo); 179 220 function CombinedName : string; 221 procedure AddGridInfo(Grid: TStringGrid; 222 Data : TStringList; 223 BasicMode : boolean; 224 DataLoader : TGridDataLoader; 225 FileNum : string); 180 226 procedure NameParts(CombinedName: string; var LName, FName, MName : string); 227 function ExtractNum (S : String; StartPos : integer) : string; 181 228 procedure SetModified(value : boolean); 182 229 procedure SetAliasEnabled(value : boolean); 230 function PostChanges(Grid : TStringGrid) : TModalResult; 231 procedure CompileChanges(Grid : TStringGrid; CurrentUserData,Changes : TStringList); 232 procedure RegisterGridInfo(GridInfo : TGridInfo); 183 233 public 184 234 { Public declarations } 235 function GetInfoForGrid(Grid : TStringGrid) : TGridInfo; 236 procedure LoadAnyGrid(Grid : TStringGrid; BasicMode: boolean; FileNum : string; 237 IENS : string; 238 CurrentData : TStringList); 239 procedure LoadAnyGridFromInfo(GridInfo : TGridInfo); 240 function IsWPField(FileNum,FieldNum : string) : boolean; 241 function IsSubFile(FieldDef: string ; var SubFileNum : string) : boolean; 242 function GetInfoIndexForGrid(Grid : TStringGrid) : integer; 243 function PostVisibleGrid: TModalResult; 244 function GetLineInfo(Grid : TStringGrid; CurrentUserData : TStringList; ARow: integer) : tFileEntry; 245 procedure GetOneRecord(FileNum, IENS : string; Data, BlankFileInfo: TStringList); 246 //procedure GridSelectCell(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean); 247 function GetUserLine(CurrentUserData : TStringList; Grid : TStringGrid; ARow: integer) : integer; 248 function FindInStrings(fieldNum : string; Strings : TStringList; var fileNum : string) : integer; 185 249 end; 186 250 … … 188 252 frmPtDemoEdit: TfrmPtDemoEdit; 189 253 254 Const 255 DEF_GRID_ROW_HEIGHT = 17; 256 CLICK_FOR_SUBS = '<CLICK for Sub-Entries>'; 257 COMPUTED_FIELD = '<Computed Field --> CAN''T EDIT>'; 258 CLICK_TO_EDIT = '<CLICK to Edit Text>'; 259 HIDDEN_FIELD = '<Hidden>'; 260 190 261 implementation 191 262 … … 193 264 194 265 uses 195 IniFiles,Trpcb,ORNet,uCore, mfunstr, strutils; 266 IniFiles,Trpcb,ORNet,uCore, mfunstr, subfilesU, strutils, LookupU, SetSelU, 267 SelDateTimeU, PostU, EditTextU, FMErrorU; 196 268 197 269 const … … 218 290 begin 219 291 AliasInfo := TStringList.Create; 292 220 293 Clear; 221 294 end; … … 250 323 DOB:= ''; 251 324 SSNum:= ''; 325 EMail:= ''; 252 326 ClearAliasInfo; 253 327 AddressLine1:= ''; … … 300 374 DOB:=Source.DOB; 301 375 SSNum:=Source.SSNum; 376 EMail:=Source.EMail; 302 377 303 378 ClearAliasInfo; … … 424 499 CompStrs(DOB, OldInfo.DOB); 425 500 CompStrs(SSNum, OldInfo.SSNum); 501 CompStrs(EMail, OldInfo.EMail); 426 502 427 503 CompStrs(AddressLine1, OldInfo.AddressLine1); … … 554 630 Sex:= tempINI.ReadString('DATA','SEX',''); 555 631 SSNum:= tempINI.ReadString('DATA','SS_NUM',''); 632 EMail:= tempINI.ReadString('DATA','EMAIL',''); 556 633 AddressLine1:= tempINI.ReadString('DATA','ADDRESS_LINE_1',''); 557 634 AddressLine2:= tempINI.ReadString('DATA','ADDRESS_LINE_2',''); … … 621 698 CheckPost('SEX',Sex); 622 699 CheckPost('SS_NUM',SSNum); 700 CheckPost('EMAIL',EMail); 623 701 CheckPost('ADDRESS_LINE_1',AddressLine1); 624 702 CheckPost('ADDRESS_LINE_2',AddressLine2); … … 690 768 DOBEdit.Text := DOB; 691 769 SSNumEdit.Text := SSNum; 770 EMailEdit.Text := EMail; 692 771 if Sex='MALE' then SexComboBox.ItemIndex := 0 else SexComboBox.ItemIndex := 1; 693 772 AliasComboBox.Items.Clear; … … 748 827 end; 749 828 ShowAliasInfo(FCurPatientInfo); 750 end; 829 end; 751 830 end; 752 831 … … 756 835 FCurPatientInfo := TPatientInfo.Create; 757 836 FServerPatientInfo := TPatientInfo.Create; 837 DataForGrid := TStringList.Create; //will own GridInfo objects. 758 838 ProgAliasChangeOccuring := false; 759 839 ProgNameChangeOccuring := false; … … 762 842 MaxAliasIEN := 0; 763 843 ChangesMade := false; 844 CurrentPatientData := TStringList.Create; 845 AddGridInfo(GridPatientDemo,CurrentPatientData,false,GetPatientInfo,'2'); 846 764 847 end; 765 848 766 849 procedure TfrmPtDemoEdit.FormDestroy(Sender: TObject); 767 850 begin 851 DataForGrid.Free; 768 852 FCurPatientInfo.Destroy; 769 853 FServerPatientInfo.Destroy; 854 CurrentPatientData.Free; 770 855 end; 771 856 … … 887 972 procedure TfrmPtDemoEdit.FormShow(Sender: TObject); 888 973 begin 974 PageControl.ActivePageIndex := 0; 889 975 GetPtInfo(FServerPatientInfo); 890 976 FCurPatientInfo.Assign(FServerPatientInfo); 891 ShowPtInfo(FCurPatientInfo); 977 ShowPtInfo(FCurPatientInfo); 892 978 end; 893 979 … … 1178 1264 var TempPatientInfo : tPatientInfo; 1179 1265 begin 1266 if pagecontrol.ActivePageIndex = 0 then begin 1180 1267 TempPatientInfo := tPatientInfo.Create; 1181 1268 TempPatientInfo.Assign(FCurPatientInfo); … … 1184 1271 TempPatientInfo.Destroy; 1185 1272 SetModified(false); 1186 end; 1273 end else begin 1274 PostVisibleGrid; 1275 SetModified(false); 1276 end; 1277 end; 1278 function TfrmPtDemoEdit.PostVisibleGrid: TModalResult; 1279 begin 1280 result := PostChanges(gridPatientDemo); 1281 end; 1282 1283 function TfrmPtDemoEdit.PostChanges(Grid : TStringGrid) : TModalResult; 1284 //Results: mrNone -- no post done (not needed) 1285 // mrCancel -- user pressed cancel on confirmation screen. 1286 // mrNo -- signals posting error. 1287 var Changes : TStringList; 1288 PostResult : TModalResult; 1289 CurrentData : TStringList; 1290 GridInfo : TGridInfo; 1291 IENS : string; 1292 begin 1293 Result := mrNone; //default to No changes 1294 GridInfo := GetInfoForGrid(Grid); 1295 if GridInfo=nil then exit; 1296 CurrentData := GridInfo.Data; 1297 if CurrentData=nil then exit; 1298 if CurrentData.Count = 0 then exit; 1299 IENS := Patient.DFN; 1300 if IENS='' then exit; 1301 Changes := TStringList.Create; 1302 CompileChanges(Grid,CurrentData,Changes); 1303 if Changes.Count>0 then begin 1304 PostForm.PrepForm(Changes); 1305 PostResult := PostForm.ShowModal; 1306 if PostResult = mrOK then begin 1307 //if DisuserChanged(Changes) then begin //looks for change in file 200, field 4 1308 // InitializeUsersTreeView; 1309 //end else begin 1310 if Pos('+',IENS)>0 then begin 1311 GridInfo.IENS := PostForm.GetNewIENS(IENS); 1312 end; 1313 if assigned(GridInfo.DataLoadProc) then begin 1314 GridInfo.DataLoadProc(GridInfo); 1315 end; 1316 { 1317 if CurrentData = CurrentUserData then begin 1318 LoadUserData(IENS,CurrentData); //reload record from server. 1319 end else if CurrentData = CurrentSettingsData then begin 1320 GetSettingsInfo(GridInfo.FileNum, GridInfo.IENS, CurrentData); 1321 end else if CurrentData = CurrentPatientData then begin 1322 GetPatientInfo(GridInfo.IENS, CurrentData); 1323 end else if CurrentData = CurrentAnyFileData then begin 1324 GetAnyFileInfo(GridInfo.FileNum, GridInfo.IENS, CurrentData); 1325 end; 1326 } 1327 //end; 1328 end else if PostResult = mrNo then begin //mrNo is signal of post Error 1329 // show error... 1330 end; 1331 Result := PostResult; 1332 end else begin 1333 Result := mrNone; 1334 end; 1335 Changes.Free; 1336 end; 1337 1338 procedure TfrmPtDemoEdit.CompileChanges(Grid : TStringGrid; CurrentUserData,Changes : TStringList); 1339 //Output format: 1340 // FileNum^IENS^FieldNum^FieldName^newValue^oldValue 1341 1342 var row : integer; 1343 Entry : tFileEntry; 1344 oneEntry : string; 1345 begin 1346 for row := 1 to Grid.RowCount-1 do begin 1347 Entry := GetLineInfo(Grid,CurrentUserData, row); 1348 if Entry.oldValue <> Entry.newValue then begin 1349 if (Entry.newValue <> CLICK_FOR_SUBS) and 1350 (Entry.newValue <> COMPUTED_FIELD) and 1351 (Entry.newValue <> CLICK_TO_EDIT) then begin 1352 oneEntry := Entry.FileNum + '^' + Entry.IENS + '^' + Entry.Field + '^' + Entry.FieldName; 1353 oneEntry := oneEntry + '^' + Entry.newValue + '^' + Entry.oldValue; 1354 Changes.Add(oneEntry); 1355 end; 1356 end; 1357 end; 1358 end; 1187 1359 1188 1360 procedure TfrmPtDemoEdit.SetModified(value : boolean); … … 1219 1391 case MessageDlg('Apply Changes?',mtConfirmation,mbYesNoCancel,0) of 1220 1392 mrYes : begin 1221 ApplyBtnClick(Sender); 1222 frmPtDemoEdit.ModalResult := mrOK; //closes form 1393 ApplyBtnClick(Sender); 1394 frmPtDemoEdit.ModalResult := mrOK; //closes form 1223 1395 end; 1224 1396 mrNo : begin … … 1249 1421 1250 1422 1251 1423 procedure TfrmPtDemoEdit.PageControlChange(Sender: TObject); 1424 var 1425 GridInfo : TGridInfo; 1426 IEN : longInt; 1427 ModalResult : TModalResult; 1428 1429 begin 1430 if pagecontrol.ActivePageIndex = 0 then begin 1431 GetPtInfo(FServerPatientInfo); 1432 FCurPatientInfo.Assign(FServerPatientInfo); 1433 ShowPtInfo(FCurPatientInfo); 1434 end else begin 1435 IEN := strtoint(patient.dfn); //get info from selected patient 1436 if IEN = 0 then exit; 1437 GridInfo := GetInfoForGrid(gridPatientDemo); 1438 if GridInfo = nil then exit; 1439 GridInfo.IENS := IntToStr(IEN)+','; 1440 GetPatientInfo(GridInfo); 1441 end; 1442 1443 end; 1444 1445 procedure TfrmPtDemoEdit.GetPatientInfo(GridInfo: TGridInfo); 1446 1447 var cmd,RPCResult : string; 1448 IENS : String; 1449 grid : TStringGrid; 1450 begin 1451 // IENS := Patient.DFN; 1452 IENS := GridInfo.IENS; 1453 // Data := GridInfo.Data; 1454 grid := GridInfo.Grid; 1455 grid.Cells[0,1] := ''; 1456 grid.Cells[1,1] := ''; 1457 grid.Cells[2,1] := ''; 1458 grid.RowCount :=2; 1459 grid.Cursor := crHourGlass; 1460 if IENS <> '0,' then begin 1461 RPCBrokerV.remoteprocedure := 'TMG CHANNEL'; 1462 RPCBrokerV.param[0].ptype := list; 1463 cmd := 'GET ONE RECORD^2^' + IENS; 1464 RPCBrokerV.Param[0].Mult['"REQUEST"'] := cmd; 1465 RPCBrokerV.Call; 1466 RPCResult := RPCBrokerV.Results[0]; //returns: error: -1; success=1 1467 //Results[1]='FileNum^IENS^FieldNum^ExtValue^FieldName^DDInfo... 1468 //Results[2]='FileNum^IENS^FieldNum^ExtValue^FieldName^DDInfo... 1469 if piece(RPCResult,'^',1)='-1' then begin 1470 messagedlg(RPCBrokerV.Results[1],mtError,mbOKCancel,0); 1471 //FMErrorForm.Memo.Lines.Assign(RPCBrokerV.Results); 1472 end else begin 1473 GridInfo.Data.Assign(RPCBrokerV.results); 1474 //LoadAnyGrid(grid,false,'2',IENS,Data); 1475 LoadAnyGridFromInfo(GridInfo); 1476 end; 1477 end; 1478 gridPatientDemo.Cursor := crDefault; 1479 end; 1480 1481 procedure TfrmPtDemoEdit.LoadAnyGrid(Grid : TStringGrid; //the TStringGrid to load 1482 BasicMode: boolean; 1483 FileNum : string; 1484 IENS : string; 1485 CurrentData : TStringList); 1486 var 1487 GridInfo : TGridInfo; 1488 begin 1489 GridInfo := TGridInfo.Create; 1490 //This stores load information into a GridInfo 1491 GridInfo.Grid := Grid; 1492 GridInfo.BasicMode := BasicMode; 1493 GridInfo.FileNum := FileNum; 1494 GridInfo.IENS := IENS; 1495 GridInfo.Data := CurrentData; 1496 LoadAnyGridFromInfo(GridInfo); 1497 GridInfo.Free; 1498 end; 1499 1500 procedure TfrmPtDemoEdit.LoadAnyGridFromInfo(GridInfo : TGridInfo); 1501 //This assumes that GridInfo already has loaded info. 1502 var 1503 Grid : TStringGrid; //the TStringGrid to load 1504 BasicMode: boolean; 1505 FileNum : string; 1506 IENS : string; 1507 CurrentData : TStringList; 1508 1509 procedure LoadOneLine (Grid : TStringGrid; oneEntry : string; GridRow : integer); 1510 var 1511 tempFile,IENS : string; 1512 fieldNum,fieldName,fieldDef : string; 1513 subFileNum : string; 1514 value : string; 1515 begin 1516 tempFile := Piece(oneEntry,'^',1); 1517 if tempFile = FileNum then begin //handle subfiles later... 1518 IENS := Piece(oneEntry,'^',2); 1519 fieldNum := Piece(oneEntry,'^',3); 1520 value := Piece(oneEntry,'^',4); 1521 fieldName := Piece(oneEntry,'^',5); 1522 fieldDef := Piece(oneEntry,'^',6); 1523 Grid.RowCount := GridRow + 1; 1524 Grid.Cells[0,GridRow] := fieldNum; 1525 Grid.Cells[1,GridRow] := fieldName; 1526 if Pos('W',fieldDef)>0 then begin 1527 Grid.Cells[2,GridRow] := CLICK_TO_EDIT; 1528 end else if IsSubFile(fieldDef, subFileNum) then begin 1529 if IsWPField(FileNum,fieldNum) then begin 1530 Grid.Cells[2,GridRow] := CLICK_TO_EDIT; 1531 end else begin 1532 Grid.Cells[2,GridRow] := CLICK_FOR_SUBS; 1533 end; 1534 end else if Pos('C',fieldDef)>0 then begin 1535 Grid.Cells[2,GridRow] := COMPUTED_FIELD; 1536 end else begin 1537 Grid.Cells[2,GridRow] := value; 1538 end; 1539 Grid.RowHeights[GridRow] := DEF_GRID_ROW_HEIGHT; 1540 end; 1541 end; 1542 1543 function getOneLine(CurrentData : TStringList; oneFileNum,oneFieldNum : string) : string; 1544 var i : integer; 1545 FileNum,FieldNum : string; 1546 begin 1547 result := ''; 1548 // FileNum^IENS^FieldNum^FieldName^newValue^oldValue 1549 for i := 1 to CurrentData.Count - 1 do begin 1550 FileNum := piece(CurrentData.Strings[i],'^',1); 1551 if FileNum <> oneFileNum then continue; 1552 FieldNum := piece(CurrentData.Strings[i],'^',3); 1553 if FieldNum <> oneFieldNum then continue; 1554 result := CurrentData.Strings[i]; 1555 break; 1556 end; 1557 end; 1558 1559 var i : integer; 1560 oneEntry : string; 1561 oneFileNum,oneFieldNum : string; 1562 gridRow : integer; 1563 1564 begin 1565 FLoadingGrid := true; 1566 if GridInfo=nil then exit; 1567 Grid := GridInfo.Grid; 1568 BasicMode := GridInfo.BasicMode; 1569 FileNum := GridInfo.FileNum; 1570 IENS := GridInfo.IENS; 1571 CurrentData := GridInfo.Data; 1572 1573 Grid.Cells[0,1] := ''; 1574 Grid.Cells[1,1] := ''; 1575 Grid.Cells[2,1] := ''; 1576 Grid.RowCount :=2; 1577 Grid.ColWidths[0] := 50; 1578 Grid.ColWidths[1] := 200; 1579 Grid.ColWidths[2] := 300; 1580 Grid.Cells[0,0] := '#'; 1581 Grid.Cells[1,0] := 'Name'; 1582 Grid.Cells[2,0] := 'Value'; 1583 1584 if BasicMode=false then begin 1585 for i := 1 to CurrentData.Count-1 do begin //start at 1 because [0] = 1^Success 1586 oneEntry := CurrentData.Strings[i]; 1587 LoadOneLine (Grid,oneEntry,i); 1588 end; 1589 end else if BasicMode=true then begin 1590 gridRow := 1; 1591 for i := 0 to BasicTemplate.Count-1 do begin 1592 oneFileNum := Piece(BasicTemplate.Strings[i],'^',1); 1593 if oneFileNum <> fileNum then continue; 1594 oneFieldNum := Piece(BasicTemplate.Strings[i],'^',2); 1595 oneEntry := getOneLine(CurrentData,oneFileNum,oneFieldNum); 1596 LoadOneLine (Grid,oneEntry,gridRow); 1597 Inc(GridRow); 1598 end; 1599 end; 1600 FLoadingGrid := false; 1601 end; 1602 1603 function TfrmPtDemoEdit.GetInfoForGrid(Grid : TStringGrid) : TGridInfo; 1604 var i : integer; 1605 begin 1606 i := GetInfoIndexForGrid(Grid); 1607 if i > -1 then begin 1608 result := TGridInfo(DataForGrid.Objects[i]); 1609 end else begin 1610 result := nil; 1611 end; 1612 end; 1613 1614 1615 function TfrmPtDemoEdit.GetInfoIndexForGrid(Grid : TStringGrid) : integer; 1616 var s : string; 1617 begin 1618 s := IntToStr(integer(Grid)); 1619 result := Dataforgrid.indexof(s); 1620 end; 1621 1622 function TfrmPtDemoEdit.IsSubFile(FieldDef: string ; var SubFileNum : string) : boolean; 1623 //SubFileNum is OUT parameter 1624 begin 1625 SubFileNum := ExtractNum(FieldDef,1); 1626 result := (SubFileNum <> ''); 1627 end; 1628 1629 function TfrmPtDemoEdit.IsWPField(FileNum,FieldNum : string) : boolean; 1630 var RPCResult : string; 1631 SrchStr : string; 1632 Idx: integer; 1633 begin 1634 SrchStr := FileNum + '^' + FieldNum + '^'; 1635 //Idx := CachedWPField.IndexOf(SrchStr + 'YES'); 1636 //if Idx > -1 then begin Result := true; exit; end; 1637 //Idx := CachedWPField.IndexOf(SrchStr + 'NO'); 1638 //if Idx > -1 then begin Result := false; exit; end; 1639 1640 result := false; 1641 RPCBrokerV.remoteprocedure := 'TMG CHANNEL'; 1642 RPCBrokerV.param[0].ptype := list; 1643 RPCBrokerV.Param[0].Mult['"REQUEST"'] := 'IS WP FIELD^' + FileNum + '^' + FieldNum; 1644 RPCBrokerV.Call; 1645 RPCResult := RPCBrokerV.Results[0]; //returns: error: -1; success=1 1646 if piece(RPCResult,'^',1)='-1' then begin 1647 //FMErrorForm.Memo.Lines.Assign(RPCBrokerV.Results); 1648 //FMErrorForm.PrepMessage; 1649 //FMErrorForm.ShowModal; 1650 end else begin 1651 RPCResult := piece(RPCResult,'^',3); 1652 result := (RPCResult = 'YES'); 1653 //CachedWPField.Add(SrchStr + RPCResult); 1654 end; 1655 end; 1656 1657 function TfrmPtDemoEdit.ExtractNum (S : String; StartPos : integer) : string; 1658 var i : integer; 1659 ch : char; 1660 begin 1661 result := ''; 1662 if (S = '') or (StartPos < 0) then exit; 1663 i := StartPos; 1664 repeat 1665 ch := S[i]; 1666 i := i + 1; 1667 if ch in ['0'..'9','.'] then begin 1668 Result := Result + ch; 1669 end; 1670 until (i > length(S)) or not (ch in ['0'..'9','.']) 1671 end; 1672 1673 procedure TfrmPtDemoEdit.gridPatientDemoSelectCell(Sender: TObject; ACol, 1674 ARow: Integer; var CanSelect: Boolean); 1675 (* 1676 For Field def, here is the legend 1677 character meaning 1678 1679 BC The data is Boolean Computed (true or false). 1680 C The data is Computed. 1681 Cm The data is multiline Computed. 1682 DC The data is Date-valued, Computed. 1683 D The data is Date-valued. 1684 F The data is Free text. 1685 I The data is uneditable. 1686 Pn The data is a Pointer reference to file "n". 1687 S The data is from a discrete Set of codes. 1688 1689 N The data is Numeric-valued. 1690 1691 Jn To specify a print length of n characters. 1692 Jn,d To specify printing n characters with decimals. 1693 1694 V The data is a Variable pointer. 1695 W The data is Word processing. 1696 WL The Word processing data is normally printed in Line mode (i.e., without word wrap). 1697 *) 1698 var oneEntry,FieldDef : string; 1699 date,time: string; 1700 FileNum,FieldNum,SubFileNum : string; 1701 GridFileNum : string; 1702 UserLine : integer; 1703 Grid : TStringGrid; 1704 IEN : int64; 1705 IENS : string; 1706 CurrentData : TStringList; 1707 GridInfo : TGridInfo; 1708 SubFileForm : TSubFileForm; 1709 begin 1710 if FLoadingGrid then exit; //prevent pseudo-clicks during loading... 1711 Grid := (Sender as TStringGrid); 1712 GridInfo := GetInfoForGrid(Grid); 1713 if GridInfo=nil then exit; 1714 GridFileNum := GridInfo.FileNum; 1715 CanSelect := false; //default to NOT selectable. 1716 CurrentData := GridInfo.Data; 1717 if CurrentData=nil then exit; 1718 if CurrentData.Count = 0 then exit; 1719 UserLine := GetUserLine(CurrentData,Grid,ARow); 1720 if UserLine = -1 then exit; 1721 oneEntry := CurrentData.Strings[UserLine]; 1722 FieldDef := Piece(oneEntry,'^',6); 1723 if Pos('F',FieldDef)>0 then begin //Free text 1724 CanSelect := true; 1725 end else if IsSubFile(FieldDef,SubFileNum) then begin //Subfiles. 1726 FileNum := Piece(oneEntry,'^',1); 1727 FieldNum := Piece(oneEntry,'^',3); 1728 if IsWPField(FileNum,FieldNum) then begin 1729 IENS := Piece(oneEntry,'^',2); 1730 EditTextForm.PrepForm(FileNum,FieldNum,IENS); 1731 EditTextForm.ShowModal; 1732 end else begin 1733 //handle subfiles here 1734 IENS := ''; 1735 if GridInfo.Message = MSG_SUB_FILE then begin //used message from subfile Grid 1736 IENS := GridInfo.IENS; 1737 end; // else if LastSelTreeNode <> nil then begin //this is one of the selction trees. 1738 IEN := strtoint(Patient.DFN); //longInt(LastSelTreeNode.Data); 1739 if IEN > 0 then IENS := InttoStr(IEN) + ','; 1740 if GridInfo.Data = CurrentAnyFileData then begin 1741 IEN := strtoint(patient.dfn); //get info from selected record 1742 if IEN > 0 then IENS := InttoStr(IEN) + ','; 1743 end; 1744 if IENS <> '' then begin 1745 SubFileForm := TSubFileForm.Create(self); 1746 SubFileForm.PrepForm(SubFileNum,IENS); 1747 SubfileForm.ShowModal; // note: may call this function again recursively for sub-sub-files etc. 1748 SubFileForm.Free; 1749 end else begin 1750 MessageDlg('IENS for File="". Can''t process.',mtInformation,[MBOK],0); 1751 end; 1752 end; 1753 end else if Pos('C',FieldDef)>0 then begin //computed fields. 1754 CanSelect := false; 1755 end else if Pos('D',FieldDef)>0 then begin //date field 1756 date := piece(Grid.Cells[ACol,ARow],'@',1); 1757 time := piece(Grid.Cells[ACol,ARow],'@',2); 1758 if date <> '' then begin 1759 SelDateTimeForm.DateTimePicker.Date := StrToDate(date); 1760 end else begin 1761 SelDateTimeForm.DateTimePicker.Date := SysUtils.Date; 1762 end; 1763 if SelDateTimeForm.ShowModal = mrOK then begin 1764 date := DateToStr(SelDateTimeForm.DateTimePicker.Date); 1765 time := TimeToStr(SelDateTimeForm.DateTimePicker.Time); 1766 if time <> '' then date := date; // + '@' + time; elh 8/15/08 1767 Grid.Cells[ACol,ARow] := date; 1768 end; 1769 CanSelect := true; 1770 end else if Pos('S',FieldDef)>0 then begin //Set of Codes 1771 SetSelForm.PrepForm(Piece(oneEntry,'^',7)); 1772 if SetSelForm.ShowModal = mrOK then begin 1773 Grid.Cells[ACol,ARow] := SetSelForm.ComboBox.Text; 1774 CanSelect := true; 1775 end; 1776 end else if Pos('I',FieldDef)>0 then begin //uneditable 1777 ShowMessage('Sorry. Flagged as UNEDITABLE.'); 1778 end else if Pos('P',FieldDef)>0 then begin //Pointer to file. 1779 FileNum := ExtractNum (FieldDef,Pos('P',FieldDef)+1); 1780 //check for validity here... 1781 FieldLookupForm.PrepForm(FileNum,Grid.Cells[ACol,ARow]); 1782 if FieldLookupForm.ShowModal = mrOK then begin 1783 Grid.Cells[ACol,ARow] := FieldLookupForm.ORComboBox.Text; 1784 CanSelect := true; 1785 end; 1786 end; 1787 if CanSelect then begin 1788 FLastSelectedRow := ARow; 1789 FLastSelectedCol := ACol; 1790 SetModified(True); 1791 end; 1792 //GridInfo.ApplyBtn.Enabled := true; 1793 //GridInfo.RevertBtn.Enabled := true; 1794 end; 1795 1796 function TfrmPtDemoEdit.GetLineInfo(Grid : TStringGrid; CurrentUserData : TStringList; ARow: integer) : tFileEntry; 1797 var fieldNum : string; 1798 oneEntry : string; 1799 fileNum : string; 1800 gridRow : integer; 1801 begin 1802 fieldNum := Grid.Cells[0,ARow]; 1803 gridRow := FindInStrings(fieldNum, CurrentUserData, fileNum); 1804 if gridRow > -1 then begin 1805 oneEntry := CurrentUserData.Strings[gridRow]; 1806 Result.Field := fieldNum; 1807 Result.FieldName := Grid.Cells[1,ARow]; 1808 Result.FileNum := fileNum; 1809 Result.IENS := Piece(oneEntry,'^',2); 1810 Result.oldValue := Piece(oneEntry,'^',4); 1811 Result.newValue := Grid.Cells[2,ARow]; 1812 end else begin 1813 Result.Field := ''; 1814 Result.FieldName := ''; 1815 Result.FileNum := ''; 1816 Result.IENS := ''; 1817 Result.oldValue := ''; 1818 Result.newValue := ''; 1819 end; 1820 end; 1821 1822 procedure TfrmPtDemoEdit.GetOneRecord(FileNum, IENS : string; Data, BlankFileInfo: TStringList); 1823 var cmd,RPCResult : string; 1824 i : integer; 1825 oneEntry : string; 1826 begin 1827 Data.Clear; 1828 if (IENS='') then exit; 1829 if Pos('+',IENS)=0 then begin //don't ask server to load +1 records. 1830 RPCBrokerV.remoteprocedure := 'TMG CHANNEL'; 1831 RPCBrokerV.Param[0].Value := '.X'; // not used 1832 RPCBrokerV.param[0].ptype := list; 1833 cmd := 'GET ONE RECORD^' + FileNum + '^' + IENS; 1834 RPCBrokerV.Param[0].Mult['"REQUEST"'] := cmd; 1835 RPCBrokerV.Call; 1836 RPCResult := RPCBrokerV.Results[0]; //returns: error: -1; success=1 1837 if piece(RPCResult,'^',1)='-1' then begin 1838 FMErrorForm.Memo.Lines.Assign(RPCBrokerV.Results); 1839 FMErrorForm.PrepMessage; 1840 FMErrorForm.ShowModal; 1841 end else begin 1842 Data.Assign(RPCBrokerV.Results); 1843 end; 1844 end else begin 1845 Data.Add('1^Success'); //to keep same as call to server 1846 if BlankFileInfo.Count = 0 then begin 1847 //Format is: FileNum^^FieldNum^^DDInfo... 1848 // elh GetBlankFileInfo(FileNum,BlankFileInfo); 1849 end; 1850 for i := 1 to BlankFileInfo.Count-1 do begin //0 is 1^success 1851 oneEntry := BlankFileInfo.Strings[i]; 1852 // elh SetPiece(oneEntry,'^',2,IENS); 1853 Data.Add(oneEntry); 1854 end; 1855 end; 1856 end; 1857 1858 function TfrmPtDemoEdit.GetUserLine(CurrentUserData : TStringList; Grid : TStringGrid; ARow: integer) : integer; 1859 var fieldNum: string; 1860 tempFileNum : string; 1861 begin 1862 fieldNum := Grid.Cells[0,ARow]; 1863 Result := FindInStrings(fieldNum,CurrentUserData,tempFileNum); 1864 end; 1865 1866 function TfrmPtDemoEdit.FindInStrings(fieldNum : string; Strings : TStringList; var fileNum : string) : integer; 1867 //Note: if fileNum is passed blank, then first matching file will be placed in it (i.e. OUT parameter) 1868 var tempFieldNum : string; 1869 oneEntry,tempFile : string; 1870 i : integer; 1871 begin 1872 result := -1; 1873 fileNum := ''; 1874 for i := 1 to Strings.Count-1 do begin //0 --> 1^success 1875 oneEntry := Strings.Strings[i]; 1876 tempFile := Piece(oneEntry,'^',1); 1877 if fileNum='' then fileNum := tempFile; 1878 if tempFile <> fileNum then continue; //ignore subfiles 1879 tempFieldNum := Piece(oneEntry,'^',3); 1880 if tempFieldNum <> fieldNum then continue; 1881 Result := i; 1882 break; 1883 end; 1884 end; 1885 1886 procedure TfrmPtDemoEdit.AddGridInfo(Grid: TStringGrid; 1887 Data : TStringList; 1888 BasicMode : boolean; 1889 DataLoader : TGridDataLoader; 1890 FileNum : string); 1891 var tempGridInfo : TGridInfo; 1892 begin 1893 tempGridInfo := TGridInfo.Create; 1894 tempGridInfo.Grid := Grid; 1895 tempGridInfo.Data := Data; 1896 tempGridInfo.BasicMode := BasicMode; 1897 tempGridInfo.FileNum := FileNum; 1898 tempGridInfo.DataLoadProc := DataLoader; 1899 //tempGridInfo.ApplyBtn := ApplyBtn; 1900 //tempGridInfo.RevertBtn := RevertBtn; 1901 RegisterGridInfo(tempGridInfo); 1902 end; 1903 1904 procedure TfrmPtDemoEdit.RegisterGridInfo(GridInfo : TGridInfo); 1905 var s : string; 1906 begin 1907 if GridInfo = nil then exit; 1908 s := IntToStr(integer(GridInfo.Grid)); 1909 DataForGrid.AddObject(s,GridInfo); 1910 end; 1911 1912 procedure TfrmPtDemoEdit.gridPatientDemoSetEditText(Sender: TObject; ACol, 1913 ARow: Integer; const Value: String); 1914 begin 1915 SetModified(True); 1916 end; 1917 1918 procedure TfrmPtDemoEdit.PageControlChanging(Sender: TObject; 1919 var AllowChange: Boolean); 1920 var 1921 intAnswer : Integer; 1922 begin 1923 //Before changing the form, find out if changes need to be applied and 1924 //prompt user. elh 1925 if ApplyBtn.enabled = True then begin 1926 intAnswer := messagedlg('Do you want to apply your changes?', mtWarning,mbYesNoCancel,0); 1927 if intAnswer = mrYes then begin //Yes 1928 ApplyBtnClick(Sender); 1929 //messagedlg('Changes Saved.', mtWarning,[mbOK],0); 1930 SetModified(False); 1931 end else if intAnswer = mrNo then begin //No 1932 SetModified(False); 1933 end else if intAnswer = mrCancel then begin //Cancel 1934 AllowChange := False; 1935 end; 1936 end; 1937 end; 1252 1938 end. -
cprs/branches/tmg-cprs/CPRS-Chart/Templates/uTemplates.pas
r453 r541 284 284 ConsultsTemplate: TTemplate = nil; 285 285 ProceduresTemplate: TTemplate = nil; 286 bUsingHTMLMode : boolean = false; //kt 8/09 286 287 287 288 implementation … … 291 292 XMLUtils, fTemplateImport, Word97, uSpell, rCore, uConst, ORCtrls, uEventHooks, 292 293 fReminderDialog, rODBase 293 , DKLang //kt294 , rHTMLTools, DKLang //kt 294 295 ; 295 296 … … 1943 1944 // FDialogAborted := DoTemplateDialog(TmpSL, 'Template: ' + FPrintName, TemplatePreviewMode); <-- original line. //kt 8/8/2007 1944 1945 FDialogAborted := DoTemplateDialog(TmpSL, DKLangConstW('uTemplates_Templatex') + FPrintName, TemplatePreviewMode); //kt added 8/8/2007 1946 if bUsingHTMLMode then begin //kt 8/09 1947 if rHTMLTools.IsHTML(TmpSL.Text) then begin //kt 8/09 1948 TmpSL.Text := rHTMLTools.FixHTMLCRLF(TmpSL.Text); //kt 8/09 1949 TmpSL.Text := rHTMLTools.ProtectHTMLSpaces(TmpSL.Text); //kt 8/09 1950 TmpSL.Text := rHTMLTools.UnwrapHTML(TmpSL.Text); //kt 8/09 1951 end else begin //kt 8/09 1952 TmpSL.Text := rHTMLTools.Text2HTML(TmpSL); //kt 8/09 1953 end; //kt 8/09 1954 bUsingHTMLMode := false; //force reset each call. //kt 8/09 1955 end; //kt 8/09 1945 1956 Result := TmpSL.Text; 1946 1957 finally -
cprs/branches/tmg-cprs/CPRS-Chart/fDrawers.pas
r496 r541 11 11 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, 12 12 ExtCtrls, StdCtrls, Buttons, ORCtrls, ComCtrls, ImgList, uTemplates, 13 TMGHTML2, rHTMLTools, StrUtils, //kt added uses on this line. 8/09 13 14 Menus, ORClasses, ORFn, DKLang; 14 15 15 16 type 17 THTMLModeSwitcher = procedure(HTMLMode : boolean; Quiet : boolean) of object; //kt 8/09 16 18 TDrawer = (odNone, odTemplates, odEncounter, odReminders, odOrders); 17 19 TDrawers = set of TDrawer; … … 114 116 FindNextText : string; //kt 115 117 //kt End Mod ------------------- 118 FHtmlEditControl: THtmlObj; //kt 8/09 119 FHtmlModeSwitcher : THTMLModeSwitcher; //kt 8/09 116 120 FOpenToNode: string; 117 121 FOldMouseUp: TMouseEvent; … … 155 159 procedure ReloadTemplates; 156 160 procedure SetRichEditControl(const Value: TRichEdit); 161 procedure SetHTMLEditControl(const Value: THtmlObj); //kt 8/09 157 162 procedure CheckAsk; 158 163 procedure FontChanged(Sender: TObject); … … 167 172 procedure AddTemplateNode(const tmpl: TTemplate; const Owner: TTreeNode = nil); 168 173 procedure MoveCaret(X, Y: integer); 174 procedure MoveHTMLCaret(X, Y: integer); //kt 8/09 169 175 procedure NewRECDragDrop(Sender, Source: TObject; X, Y: Integer); 170 176 procedure NewRECDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; 171 177 var Accept: Boolean); 178 procedure NewRECHTMLDragDrop(Sender, Source: TObject; X, Y: Integer); //kt 8/09 179 procedure NewRECHTMLDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; 180 var Accept: Boolean); //kt 8/09 172 181 procedure InsertText; 173 182 procedure SetSplitter(const Value: TSplitter); … … 175 184 procedure SetSplitterActive(Active: boolean); 176 185 function EnableDrawer(Drawer: TDrawer; EnableIt: boolean): boolean; 177 function InsertOK(Ask: boolean): boolean; 186 //kt 8/09 function InsertOK(Ask: boolean): boolean; 187 function InsertOK(Ask: boolean; TemplateIsHTML : boolean = false): boolean; //kt 8/09 178 188 procedure OpenToNode(Path: string = ''); 179 189 property FindNext: boolean read FFindNext write SetFindNext; … … 196 206 procedure ResetTemplates; 197 207 property RichEditControl: TRichEdit read FRichEditControl write SetRichEditControl; 208 property HTMLEditControl : THtmlObj read FHtmlEditControl write SetHTMLEditControl; //kt 8/09 209 property HTMLModeSwitcher : THTMLModeSwitcher read FHtmlModeSwitcher write FHtmlModeSwitcher; //kt 8/09 198 210 property NewNoteButton: TButton read FNewNoteButton write FNewNoteButton; 199 211 property Splitter: TSplitter read FSplitter write SetSplitter; … … 202 214 property DefTempPiece: integer read FDefTempPiece write FDefTempPiece; 203 215 property TheOpenDrawer: TDrawer read FOpenDrawer; 216 function HTMLEditActive : boolean; //kt 8/09 204 217 published 205 218 property Align: TAlign read GetAlign write SetAlign; … … 218 231 uses fTemplateView, uCore, rTemplates, fTemplateEditor, dShared, uReminders, 219 232 fReminderDialog, RichEdit, fRptBox, Clipbrd, fTemplateDialog, fIconLegend, 233 Inifiles, //kt 8/09 220 234 uAccessibleTreeView, uAccessibleTreeNode; 221 235 … … 846 860 end; 847 861 862 procedure TfrmDrawers.SetHTMLEditControl(const Value: THtmlObj); 863 //kt added this function 8/09 864 begin 865 if (FHtmlEditControl <> Value) then begin 866 if (assigned(FHtmlEditControl)) then begin 867 FHtmlEditControl.OnDragDrop := FOldDragDrop; 868 FHtmlEditControl.OnDragOver := FOldDragOver; 869 end; 870 FHtmlEditControl := Value; 871 if (assigned(FHtmlEditControl)) then begin 872 FOldDragDrop := FHtmlEditControl.OnDragDrop; 873 FOldDragOver := FHtmlEditControl.OnDragOver; 874 FHtmlEditControl.OnDragDrop := NewRECHTMLDragDrop; 875 FHtmlEditControl.OnDragOver := NewRECHTMLDragOver; 876 end; 877 end; 878 end; 879 880 function TfrmDrawers.HTMLEditActive : boolean; 881 //kt added this function 8/09 882 begin 883 if assigned(FHtmlEditControl) then begin 884 Result := FHtmlEditControl.Active; 885 end else Result := false; 886 end; 848 887 849 888 procedure TfrmDrawers.MoveCaret(X, Y: integer); … … 857 896 end; 858 897 898 procedure TfrmDrawers.MoveHTMLCaret(X, Y: integer); 899 //kt added entire function 8/09 900 var pt: TPoint; 901 begin 902 FHtmlEditControl.SetFocus; 903 pt := Point(x, y); 904 FHTMLEditControl.MoveCaretToPos(pt); 905 end; 859 906 860 907 procedure TfrmDrawers.NewRECDragDrop(Sender, Source: TObject; X, … … 889 936 end; 890 937 938 procedure TfrmDrawers.NewRECHTMLDragDrop(Sender, Source: TObject; X, Y: Integer); 939 //kt added function 8/09 940 //NOTE: I think this can be combined with NewRECDragDrop, but must fix MoveCaret 941 begin 942 if (Source = tvTemplates) then begin 943 MoveHTMLCaret(X, Y); 944 InsertText; 945 end else if(assigned(FOldDragDrop)) then begin 946 FOldDragDrop(Sender, Source, X, Y); 947 end; 948 end; 949 950 procedure TfrmDrawers.NewRECHTMLDragOver(Sender, Source: TObject; 951 X, Y: Integer; State: TDragState; 952 var Accept: Boolean); 953 //kt added function 8/09 954 begin 955 Accept := FALSE; 956 if (Source = tvTemplates) then begin 957 if (assigned(FDragNode)) 958 and (TTemplate(FDragNode.Data).RealType in [ttDoc, ttGroup]) then begin 959 Accept := TRUE; 960 MoveHTMLCaret(X, Y); 961 end; 962 end else if (assigned(FOldDragOver)) then begin 963 FOldDragOver(Sender, Source, X, Y, State, Accept); 964 end; 965 end; 966 891 967 procedure TfrmDrawers.InsertText; 892 968 var … … 894 970 txt, DocInfo: string; 895 971 Template: TTemplate; 972 TemplateIsHTML : boolean; //kt 8/09 896 973 897 974 begin 898 975 DocInfo := ''; 899 if InsertOK(TRUE) and (dmodShared.TemplateOK(tvTemplates.Selected.Data)) then900 begin976 //kt if InsertOK(TRUE) and (dmodShared.TemplateOK(tvTemplates.Selected.Data)) then begin 977 if (dmodShared.TemplateOK(tvTemplates.Selected.Data)) then begin //kt 901 978 Template := TTemplate(tvTemplates.Selected.Data); 979 TemplateIsHTML := rHTMLTools.IsHTML(Template.Text); //kt 980 if not InsertOK(TRUE,TemplateIsHTML) then exit; //kt 902 981 Template.TemplatePreviewMode := FALSE; 903 982 if Template.IsReminderDialog then … … 908 987 txt := Template.COMObjectText('', DocInfo) 909 988 else 989 uTemplates.bUsingHTMLMode := HTMLEditActive; //kt 8/09 Will be used in TTemplate.GetText 910 990 txt := Template.Text; 911 991 if(txt <> '') then … … 913 993 // CheckBoilerplate4Fields(txt, 'Template: ' + Template.PrintName); <-- original line. //kt 7/15/2007 914 994 CheckBoilerplate4Fields(txt, DKLangConstW('fDrawers_Templatex') + Template.PrintName); //kt added 7/15/2007 915 BeforeLine := SendMessage(FRichEditControl.Handle, EM_EXLINEFROMCHAR, 0, FRichEditControl.SelStart); 916 FRichEditControl.SelText := txt; 917 FRichEditControl.SetFocus; 918 SendMessage(FRichEditControl.Handle, EM_SCROLLCARET, 0, 0); 919 AfterTop := SendMessage(FRichEditControl.Handle, EM_GETFIRSTVISIBLELINE, 0, 0); 920 SendMessage(FRichEditControl.Handle, EM_LINESCROLL, 0, -1 * (AfterTop - BeforeLine)); 995 if HTMLEditActive then begin //kt added block 8/09 996 //FHtmlEditControl.InsertTextAtCaret(txt); 997 FHtmlEditControl.SelText := txt; 998 FHtmlEditControl.SetFocus; 999 end else begin //kt original below 8/09 1000 BeforeLine := SendMessage(FRichEditControl.Handle, EM_EXLINEFROMCHAR, 0, FRichEditControl.SelStart); 1001 FRichEditControl.SelText := txt; 1002 FRichEditControl.SetFocus; 1003 SendMessage(FRichEditControl.Handle, EM_SCROLLCARET, 0, 0); 1004 AfterTop := SendMessage(FRichEditControl.Handle, EM_GETFIRSTVISIBLELINE, 0, 0); 1005 SendMessage(FRichEditControl.Handle, EM_LINESCROLL, 0, -1 * (AfterTop - BeforeLine)); 1006 end; //kt 8/09 921 1007 end; 922 1008 end; … … 1497 1583 end; 1498 1584 1499 function TfrmDrawers.InsertOK(Ask: boolean): boolean; 1500 1501 function REOK: boolean; 1502 begin 1503 Result := assigned(FRichEditControl) and 1504 FRichEditControl.Visible and 1505 FRichEditControl.Parent.Visible; 1506 end; 1507 1508 begin 1509 Result := REOK; 1585 1586 //kt 8/09 function TfrmDrawers.InsertOK(Ask: boolean): boolean; 1587 function TfrmDrawers.InsertOK(Ask: boolean; TemplateIsHTML : boolean): boolean; //kt 8/09 1588 1589 function EditControlOK: boolean; //kt 8/09 renamed. Was REOK 1590 begin 1591 if HTMLEditActive then begin //kt added this part 8/09 1592 Result := assigned(FHtmlEditControl) and 1593 FHtmlEditControl.Visible and 1594 TWinControl(FHtmlEditControl).Parent.Visible; 1595 end else begin //kt original below. 1596 Result := assigned(FRichEditControl) and 1597 FRichEditControl.Visible and 1598 FRichEditControl.Parent.Visible and 1599 FRichEditControl.Parent.Parent.Visible; //kt added last line 1600 end; 1601 end; 1602 1603 begin 1604 Result := EditControlOK; //kt renamed function. 1510 1605 if (not ask) and (not Result) and (assigned(FNewNoteButton)) then 1511 1606 Result := TRUE … … 1515 1610 begin 1516 1611 FNewNoteButton.Click; 1517 Result := REOK; 1612 if TemplateIsHTML and Assigned(FHtmlModeSwitcher) then begin //kt 8/09 1613 FHtmlModeSwitcher(TemplateIsHTML, true); //kt 8/09 1614 FHtmlEditControl.MoveCaretToEnd; //kt 8/09 1615 end; //kt 8/09 1616 Result := EditControlOK; //kt 8/09 Renamed function. 1518 1617 end; 1519 1618 end; -
cprs/branches/tmg-cprs/CPRS-Chart/fFrame.pas
r490 r541 375 375 SkinChanged : boolean; //kt 9/8/08 376 376 CurrentSkinFile : string; //kt 9/8/08 377 TMGAbort : boolean; //kt 3/25/09 377 378 procedure ActivateCurrentSkin; //kt 9/8/08 378 379 procedure InactivateSkin; //kt 9/8/08 … … 407 408 uTabList: TStringList; 408 409 uTabColorsList : TStringList; //kt added 8/8/08 410 uTabColorsEnabled : Boolean; //kt 8/09 409 411 uRemoteType : string; 410 412 FlaggedPTList: TStringList; … … 803 805 {$ENDIF} 804 806 807 TMGAbort := False; //kt 3/25/09 805 808 if not ConnectToServer(TX_OPTION) then 806 809 begin … … 809 812 InfoBox(RPCBrokerV.RPCBError, DKLangConstW('fFrame_Error'), MB_OK or MB_ICONERROR); //kt added 7/17/2007 810 813 Close; 814 TMGAbort := True; //kt 3/25/09 811 815 Exit; 812 816 end; … … 3755 3759 frmNotes := TfrmNotes.Create(Self); 3756 3760 frmNotes.Parent := pnlPage; 3761 //kt Note: The following two lines must be done **AFTER** 3762 // the assigment of Parent to pnlPage. Otherwise 3763 // the ActiveX object looses its attachement point 3764 // or something and the document objects turns nil. 3765 frmNotes.HtmlViewer.Loaded; //kt 8/09 3766 frmNotes.HtmlEditor.Loaded; //kt 8/09 3757 3767 end; 3758 3768 CT_CONSULTS : begin … … 3807 3817 tabPage.Tabs.Add(ALabel); 3808 3818 end; 3809 if uTabColorsList.IndexOf(ALabel) < 0 then //kt added 8/8/08 3810 uTabColorsList.Add(ALabel); //will put colors in later... //kt 3819 uTabColorsList.Add(IntToStr(ATabID)); //will put colors in later... //kt 3820 {if uTabColorsList.IndexOf(ALabel) < 0 then //kt added 8/8/08 3821 uTabColorsList.Add(ALabel); //will put colors in later... //kt } 3811 3822 end; 3812 3823 … … 3818 3829 begin 3819 3830 value :=0; 3831 uTabColorsEnabled := INIFile.ReadBool('TAB_COLORS','ENABLE',true); 3820 3832 for i := 0 to ColorsList.Count-1 do begin 3821 sValue := INIFile.ReadString('TAB_COLORS',ColorsList.Strings[i],IntToStr($00FFFF)); 3833 //sValue := INIFile.ReadString('TAB_COLORS',ColorsList.Strings[i],IntToStr($00FFFF)); 3834 sValue := INIFile.ReadString('TAB_COLORS','Tab '+IntToStr(i),IntToStr($00FFFF)); 3822 3835 try 3823 3836 value := StrToInt(sValue) … … 3834 3847 begin 3835 3848 for i := 0 to ColorsList.Count-1 do begin 3836 INIFile.WriteInteger('TAB_COLORS',ColorsList.Strings[i],longword(ColorsList.Objects[i])); 3837 end; 3849 //INIFile.WriteInteger('TAB_COLORS',ColorsList.Strings[i],longword(ColorsList.Objects[i])); 3850 INIFile.WriteInteger('TAB_COLORS','Tab '+IntToStr(i),longword(ColorsList.Objects[i])); 3851 end; 3852 INIFile.WriteBool('TAB_COLORS','ENABLE',uTabColorsEnabled); //kt 8/09 3838 3853 end; 3839 3854 … … 4957 4972 procedure TfrmFrame.tabPageDrawTab(Control: TCustomTabControl; TabIndex: Integer; 4958 4973 const Rect: TRect; Active: Boolean); 4974 //kt added 4959 4975 var ALabel : string; 4960 4976 colorIndex : Integer; 4961 4977 color : TColor; 4962 4978 begin 4963 ALabel := TTabControl(Control).Tabs[TabIndex]; 4964 colorIndex := uTabColorsList.IndexOf(ALabel); 4965 if colorIndex < 0 then color := clYellow 4966 else color := TColor(uTabColorsList.Objects[colorIndex]); 4967 DrawTab(Control,TabIndex,Rect,color,Active); 4979 if uTabColorsEnabled then begin 4980 ALabel := TTabControl(Control).Tabs[TabIndex]; 4981 { 4982 colorIndex := uTabColorsList.IndexOf(ALabel); 4983 if colorIndex < 0 then color := clYellow 4984 else color := TColor(uTabColorsList.Objects[colorIndex]); 4985 } 4986 color := TColor(uTabColorsList.Objects[TabIndex]); 4987 DrawTab(Control,TabIndex,Rect,color,Active); 4988 end else begin 4989 //this isn't working... This is not what I want. Fix later... 4990 //For now, uTabColorsEnabled should always be TRUE. 4991 Control.Canvas.FillRect(Rect); 4992 end; 4968 4993 end; 4969 4994 … … 4980 5005 tf : TFont; 4981 5006 Degrees : integer; 4982 inactiveColor : TColor; 4983 4984 (* 4985 function DecRed(Color : TColor; Amount : byte) : TColor; 5007 inactiveColor : TColor; 5008 5009 function DarkenRed(Color : TColor; Percent : byte) : TColor; 4986 5010 var red : longWord; 4987 5011 begin 4988 5012 red := (Color and $0000FF); 4989 if red > Amount then red := red - Amount 4990 else red := 0; 5013 red := Round (red * (Percent/100)); 4991 5014 Result := (Color and $FFFF00) or red; 4992 5015 end; 4993 5016 4994 function D ecGreen(Color : TColor; Amount : byte) : TColor;5017 function DarkenGreen(Color : TColor; Percent : byte) : TColor; 4995 5018 var green : longWord; 4996 5019 begin 4997 5020 green := (Color and $00FF00); 4998 5021 green := green shr 8; 4999 if green > Amount then green := green - Amount 5000 else green := 0; 5022 green := Round(green * (Percent/100)); 5001 5023 green := green shl 8; 5002 5024 Result := (Color and $FF00FF) or green; 5003 5025 end; 5004 5026 5005 function D ecBlue(Color : TColor; Amount : byte) : TColor;5027 function DarkenBlue(Color : TColor; Percent : byte) : TColor; 5006 5028 var blue : longWord; 5007 5029 begin 5008 5030 blue := (Color and $FF0000); 5009 5031 blue := blue shr 16; 5010 if blue > Amount then blue := blue - Amount 5011 else blue := 0; 5032 Blue := Round (blue * (Percent/100)); 5012 5033 blue := blue shl 16; 5013 5034 Result := (Color and $00FFFF) or blue; 5014 5035 end; 5015 5036 5016 function Darken(Color : TColor; Amount : byte) : TColor;5037 function Darken(Color : TColor; Percent : byte) : TColor; 5017 5038 begin 5018 result:= DecRed(Color, Amount); 5019 result := DecBlue(result,Amount); 5020 result := DecGreen(result,Amount); 5039 if Percent=0 then begin result := Color; exit; end; 5040 result:= DarkenRed(Color, Percent); 5041 result := DarkenBlue(result,Percent); 5042 result := DarkenGreen(result,Percent); 5021 5043 end; 5022 *)5023 5024 var5025 DecAmount : Byte;5026 5044 5027 5045 begin 5028 5046 oRect := Rect; 5029 //DecAmount := 50; 5030 //inactiveColor := Darken(Color,DecAmount); 5031 inactiveColor := Color; 5047 inactiveColor := Darken(Color,75); //75% 5032 5048 5033 5049 TabControl := TTabControl(Control); … … 5039 5055 5040 5056 Control.Canvas.Font.Name := 'Tahoma'; 5041 if Active then Control.Canvas.Font.Style := Control.Canvas.Font.Style + [fsBold]; 5042 if Active then Control.Canvas.Font.Color := clBlack 5043 else Control.Canvas.Font.Color := clWhite; 5057 if Active then begin 5058 Control.Canvas.Font.Style := Control.Canvas.Font.Style + [fsBold]; 5059 Control.Canvas.Font.Color := clBlack 5060 end else begin 5061 Control.Canvas.Font.Style := Control.Canvas.Font.Style - [fsBold]; 5062 //Control.Canvas.Font.Color := clBlack 5063 Control.Canvas.Font.Color := clWhite; 5064 end; 5044 5065 5045 5066 if (TabControl.TabPosition = tpLeft) or (TabControl.TabPosition = tpRight) then begin … … 5073 5094 end; 5074 5095 5096 if (TabControl.TabPosition = tpBottom) and (not Active) then begin 5097 iTop := iTop - 2; 5098 end; 5099 5075 5100 if Active then begin 5076 //Control.Canvas.Brush.Color := TColor($0000FFFF); //Bright yellow5077 5101 Control.Canvas.Brush.Color := Color; 5078 Control.Canvas.FillRect(Rect);5079 5102 end else begin 5080 //Control.Canvas.Brush.Color := TColor($000079EFE8); //dull yellow5081 5103 Control.Canvas.Brush.Color := inactiveColor; 5082 Control.Canvas.FillRect(Rect);5083 end;5104 end; 5105 Control.Canvas.FillRect(Rect); 5084 5106 Control.Canvas.TextOut(iLeft,iTop,sCaption); 5085 5107 end; -
cprs/branches/tmg-cprs/CPRS-Chart/fLabPrint.pas
r453 r541 202 202 Lines.Assign(GetFormattedLabReport(FReports, FDaysBack, Patient.DFN, 203 203 frmLabs.lstTests.Items, date1, date2, RemoteSiteID, RemoteQuery)); 204 PrintWindowsReport(FReportText, PAGE_BREAK, Self.Caption, ErrMsg );204 PrintWindowsReport(FReportText, PAGE_BREAK, Self.Caption, ErrMsg, Application); //kt 8/09 added 'Application' 205 205 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 206 206 end; -
cprs/branches/tmg-cprs/CPRS-Chart/fNotePrt.pas
r453 r541 1 //kt -- Modified with SourceScanner on 8/25/2007 1 //kt -- Modified with SourceScanner on 8/25/2007, also 8/09 2 2 unit fNotePrt; 3 3 … … 54 54 {$R *.DFM} 55 55 56 uses rCore, rTIU, rReports, uCore, Printers; 56 uses rCore, rTIU, rReports, uCore, Printers, 57 rHTMLTools; //kt 8/09 58 57 59 58 60 const … … 206 208 RemoteSiteID: string; //for Remote site printing 207 209 RemoteQuery: string; //for Remote site printing 210 TempLines: TStringList; //kt added 5-31-05 208 211 begin 209 212 SetupVars; //kt added 8/25/2007 to replace constants with vars. … … 223 226 224 227 225 if Piece(cboDevice.ItemID, ';', 1) = 'WIN' then 226 begin 227 if dlgWinPrinter.Execute then 228 begin 229 FReportText.Lines.Assign(GetFormattedNote(FNote, ChartCopy)); 230 PrintWindowsReport(FReportText, PAGE_BREAK, Self.Caption, ErrMsg); 231 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 232 end 233 end 234 else 235 begin 228 if Piece(cboDevice.ItemID, ';', 1) = 'WIN' then begin 229 if dlgWinPrinter.Execute then begin 230 //kt ----- Begin original code ------------- 8/09 231 //kt FReportText.Lines.Assign(GetFormattedNote(FNote, ChartCopy)); 232 //kt PrintWindowsReport(FReportText, PAGE_BREAK, Self.Caption, ErrMsg); 233 //kt if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 234 //kt ----- End original code ------------- 235 TempLines := TStringList.Create; //kt 8/09 236 TempLines.Assign(GetFormattedNote(FNote, ChartCopy)); //kt 8/09 237 if not rHTMLTools.IsHTML(TempLines) then begin //kt 8/09 238 //NOTE: If HTML, then bypass this printer dialog, because it will be //kt 8/09 239 // replaced by a printer dialog that internet explorer uses. //kt 8/09 240 if dlgWinPrinter.Execute then begin //kt 8/09 241 FReportText.Lines.Assign(TempLines); //kt 8/09 242 PrintWindowsReport(FReportText, PAGE_BREAK, Self.Caption, ErrMsg,Application); //kt 8/09 243 end; //kt 8/09 244 end else begin //kt 8/09 245 LoadDocumentText(TempLines, FNote); //Get document without headers/footers //kt 8/09 246 PrintHTMLReport(TempLines, ErrMsg, Patient.Name, //kt 8/09 247 FormatFMDateTime('mm/dd/yyyy', Patient.DOB), //kt 8/09 248 Patient.WardService, Application); //kt 8/09 249 end; //kt 8/09 250 TempLines.Free; //kt 8/09 251 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); //kt 8/09 252 end; //kt 8/09 253 end else begin 236 254 ADevice := Piece(cboDevice.ItemID, ';', 2); 237 255 PrintNoteToDevice(FNote, ADevice, ChartCopy, ErrMsg); … … 243 261 if chkDefault.Checked then 244 262 SaveDefaultPrinter(Piece(cboDevice.ItemID, ';', 1)); 245 263 246 264 User.CurrentPrinter := cboDevice.ItemID; 247 265 Close; -
cprs/branches/tmg-cprs/CPRS-Chart/fNotes.dfm
r453 r541 177 177 Visible = False 178 178 OnResize = pnlWriteResize 179 object memNewNote: TRichEdit180 Left = 0181 Top = 67182 Width = 611183 Height = 234184 Align = alClient185 Font.Charset = DEFAULT_CHARSET186 Font.Color = clWindowText187 Font.Height = -11188 Font.Name = 'Courier New'189 Font.Style = []190 ParentFont = False191 PlainText = True192 PopupMenu = popNoteMemo193 ScrollBars = ssBoth194 TabOrder = 1195 WantTabs = True196 OnChange = memNewNoteChange197 OnKeyDown = memNewNoteKeyDown198 OnKeyPress = memNewNoteKeyPress199 OnKeyUp = memNewNoteKeyUp200 end201 179 object pnlFields: TPanel 202 180 Left = 0 … … 320 298 Text = 'txtSubject' 321 299 Caption = 'Subject' 300 end 301 end 302 object pnlTextWrite: TPanel 303 Left = 0 304 Top = 67 305 Width = 611 306 Height = 234 307 Align = alClient 308 BevelOuter = bvNone 309 Caption = 'pnlTextWrite' 310 TabOrder = 1 311 object memNewNote: TRichEdit 312 Left = 0 313 Top = 0 314 Width = 611 315 Height = 234 316 Align = alClient 317 Font.Charset = DEFAULT_CHARSET 318 Font.Color = clWindowText 319 Font.Height = -11 320 Font.Name = 'Courier New' 321 Font.Style = [] 322 ParentFont = False 323 PlainText = True 324 PopupMenu = popNoteMemo 325 ScrollBars = ssBoth 326 TabOrder = 0 327 WantTabs = True 328 OnChange = memNewNoteChange 329 OnKeyDown = memNewNoteKeyDown 330 OnKeyPress = memNewNoteKeyPress 331 OnKeyUp = memNewNoteKeyUp 332 end 333 end 334 object pnlHTMLWrite: TPanel 335 Left = 0 336 Top = 67 337 Width = 611 338 Height = 234 339 Align = alClient 340 BevelOuter = bvNone 341 Color = clInactiveBorder 342 TabOrder = 2 343 Visible = False 344 object pnlHTMLEdit: TPanel 345 Left = 0 346 Top = 25 347 Width = 611 348 Height = 209 349 Align = alClient 350 BevelOuter = bvNone 351 TabOrder = 0 352 end 353 object ToolBar: TToolBar 354 Left = 0 355 Top = 0 356 Width = 611 357 Height = 25 358 AutoSize = True 359 ButtonHeight = 21 360 Caption = 'ToolBar' 361 TabOrder = 1 362 TabStop = True 363 object cbFontNames: TComboBox 364 Left = 0 365 Top = 2 366 Width = 145 367 Height = 21 368 ItemHeight = 13 369 ParentShowHint = False 370 ShowHint = True 371 TabOrder = 0 372 Text = '<Pick A Font>' 373 OnClick = cbFontNamesChange 374 end 375 object cbFontSize: TComboBox 376 Left = 145 377 Top = 2 378 Width = 75 379 Height = 21 380 ItemHeight = 13 381 ItemIndex = 2 382 TabOrder = 1 383 Text = '3 (12 pt)' 384 OnClick = cbFontSizeChange 385 Items.Strings = ( 386 '1 (8 pt)' 387 '2 (10 pt)' 388 '3 (12 pt)' 389 '4 (14 pt)' 390 '5 (18 pt)' 391 '6 (24 pt)' 392 '7 (36 pt)') 393 end 394 object btnFonts: TSpeedButton 395 Left = 220 396 Top = 2 397 Width = 23 398 Height = 21 399 Hint = 'Text Font' 400 Glyph.Data = { 401 82020000424D8202000000000000420000002800000012000000100000000100 402 10000300000040020000130B0000130B0000000000000000000000F80000E007 403 00001F000000FFFF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 404 5AEF5AEF5AEF5AEF5AEF5AEF100010005AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 405 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF100010005AEF7BEF5AEF5AEF5AEF5AEF 406 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF100010005AEF5AEF5AEF5AEF 407 5AEF5AEF5AEF5AEF5AEF53AD008053AD5AEF5AEF5AEF5AEF1000100010005AEF 408 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF00805AEF5AEF5AEF5AEF5AEF10001000 409 5AEF5AEF7BEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF00805AEF53AD5AEF5AEF5AEF 410 100010005AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF0080008000805AEF 411 5AEF5AEF10001000100010005AEF5AEF108010805AEF5AEF5AEF5AEF00805AEF 412 53AD5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF53AD10805AEF5AEF5AEF 413 00805AEF5AEF53AD5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF10805AEF 414 5AEF53AD00800080008000805AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 415 10805AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 416 5AEF1080108010805AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 417 5AEF5AEF5AEF5AEF10805AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 418 5AEF5AEF5AEF5AEF5AEF5AEF108053AD5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 419 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF108010805AEF5AEF5AEF5AEF5AEF 420 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 421 5AEF5AEF5AEF} 422 ParentShowHint = False 423 ShowHint = True 424 OnClick = btnFontsClick 425 end 426 object btnItalic: TSpeedButton 427 Left = 243 428 Top = 2 429 Width = 23 430 Height = 21 431 Hint = 'Italics' 432 Glyph.Data = { 433 42020000424D4202000000000000420000002800000010000000100000000100 434 10000300000000020000130B0000130B0000000000000000000000F80000E007 435 00001F000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 436 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 437 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 438 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 439 FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000FFFFFFFFFFFFFFFF 440 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000001084FFFFFFFFFFFFFFFFFFFF 441 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF108400000000FFFFFFFFFFFFFFFFFFFF 442 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000001084FFFFFFFFFFFFFFFF 443 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF108400000000FFFFFFFFFFFFFFFF 444 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000001084FFFFFFFFFFFF 445 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF108400000000FFFFFFFFFFFF 446 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000001084FFFFFFFF 447 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000000000000000FFFF 448 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 449 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 450 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 451 FFFFFFFFFFFF} 452 ParentShowHint = False 453 ShowHint = True 454 OnClick = btnItalicClick 455 end 456 object btnBold: TSpeedButton 457 Left = 266 458 Top = 2 459 Width = 23 460 Height = 21 461 Hint = 'Bold' 462 Glyph.Data = { 463 42020000424D4202000000000000420000002800000010000000100000000100 464 10000300000000020000130B0000130B00000000000000000000007C0000E003 465 00001F000000FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F 466 FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F 467 FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F 468 FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F 469 FF7FFF7FFF7FFF7FFF7FFF7F00000000000000000000000000000000FF7FFF7F 470 FF7FFF7FFF7FFF7FFF7FFF7FFF7F000000000000FF7FFF7F000000000000FF7F 471 FF7FFF7FFF7FFF7FFF7FFF7FFF7F000000000000FF7FFF7F000000000000FF7F 472 FF7FFF7FFF7FFF7FFF7FFF7FFF7F000000000000FF7FFF7F000000000000FF7F 473 FF7FFF7FFF7FFF7FFF7FFF7FFF7F0000000000000000000000000000FF7FFF7F 474 FF7FFF7FFF7FFF7FFF7FFF7FFF7F000000000000FF7FFF7F000000000000FF7F 475 FF7FFF7FFF7FFF7FFF7FFF7FFF7F000000000000FF7FFF7F000000000000FF7F 476 FF7FFF7FFF7FFF7FFF7FFF7FFF7F000000000000FF7FFF7F000000000000FF7F 477 FF7FFF7FFF7FFF7FFF7FFF7F00000000000000000000000000000000FF7FFF7F 478 FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F 479 FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F 480 FF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7FFF7F 481 FF7FFF7FFF7F} 482 ParentShowHint = False 483 ShowHint = True 484 OnClick = btnBoldClick 485 end 486 object btnUnderline: TSpeedButton 487 Left = 289 488 Top = 2 489 Width = 23 490 Height = 21 491 Hint = 'Underline' 492 Glyph.Data = { 493 42020000424D4202000000000000420000002800000010000000100000000100 494 10000300000000020000130B0000130B0000000000000000000000F80000E007 495 00001F000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 496 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 497 FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000FFFF 498 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 499 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000000000000000FFFFFFFFFFFF 500 FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000001084FFFF108400000000FFFFFFFF 501 FFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF00000000FFFFFFFF 502 FFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF00000000FFFFFFFF 503 FFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF00000000FFFFFFFF 504 FFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF00000000FFFFFFFF 505 FFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF00000000FFFFFFFF 506 FFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF00000000FFFFFFFF 507 FFFFFFFFFFFFFFFFFFFFFFFF0000000000000000FFFF0000000000000000FFFF 508 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 509 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 510 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 511 FFFFFFFFFFFF} 512 ParentShowHint = False 513 ShowHint = True 514 OnClick = btnUnderlineClick 515 end 516 object btnBullets: TSpeedButton 517 Left = 312 518 Top = 2 519 Width = 23 520 Height = 21 521 Hint = 'Bullets' 522 Glyph.Data = { 523 42020000424D4202000000000000420000002800000010000000100000000100 524 10000300000000020000130B0000130B0000000000000000000000F80000E007 525 00001F000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 526 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 527 FFFFFFFFFFFF100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 528 FFFFFFFFFFFF100010001000FFFFFFFF00000000000000000000000000000000 529 0000FFFFFFFF100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 530 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 531 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 532 FFFFFFFFFFFF100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 533 FFFFFFFFFFFF100010001000FFFFFFFF00000000000000000000000000000000 534 0000FFFFFFFF100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 535 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 536 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 537 FFFFFFFFFFFF100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 538 FFFFFFFFFFFF100010001000FFFFFFFF00000000000000000000000000000000 539 0000FFFFFFFF100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 540 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 541 FFFFFFFFFFFF} 542 ParentShowHint = False 543 ShowHint = True 544 OnClick = btnBulletsClick 545 end 546 object btnNumbers: TSpeedButton 547 Left = 335 548 Top = 2 549 Width = 23 550 Height = 21 551 Hint = 'Numbering' 552 Glyph.Data = { 553 42020000424D4202000000000000420000002800000010000000100000000100 554 10000300000000020000130B0000130B0000000000000000000000F80000E007 555 00001F000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 556 FFFFFFFFFFFF10001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 557 FFFFFFFFFFFFFFFFFFFF1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 558 FFFFFFFFFFFFFFFF1000FFFFFFFFFFFF00000000000000000000000000000000 559 0000FFFFFFFF100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 560 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 561 FFFFFFFFFFFF100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 562 FFFFFFFFFFFFFFFF1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 563 FFFFFFFFFFFFFFFFFFFF1000FFFFFFFF00000000000000000000000000000000 564 0000FFFFFFFF10001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 565 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 566 FFFFFFFFFFFF100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 567 FFFFFFFFFFFFFFFF1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 568 FFFFFFFFFFFF10001000FFFFFFFFFFFF00000000000000000000000000000000 569 0000FFFFFFFFFFFF1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 570 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 571 FFFFFFFFFFFF} 572 ParentShowHint = False 573 ShowHint = True 574 OnClick = btnNumbersClick 575 end 576 object btnLeftAlign: TSpeedButton 577 Left = 358 578 Top = 2 579 Width = 23 580 Height = 21 581 Hint = 'Align Left' 582 Glyph.Data = { 583 42020000424D4202000000000000420000002800000010000000100000000100 584 10000300000000020000130B0000130B0000000000000000000000F80000E007 585 00001F000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 586 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 587 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 588 FFFFFFFFFFFF0000000000000000000000000000000000000000FFFFFFFFFFFF 589 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 590 FFFFFFFFFFFF0000000000000000000000000000000000000000000000000000 591 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 592 FFFFFFFFFFFF0000000000000000000000000000000000000000FFFFFFFFFFFF 593 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 594 FFFFFFFFFFFF0000000000000000000000000000000000000000000000000000 595 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 596 FFFFFFFFFFFF0000000000000000000000000000000000000000FFFFFFFFFFFF 597 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 598 FFFFFFFFFFFF0000000000000000000000000000000000000000000000000000 599 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 600 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 601 FFFFFFFFFFFF} 602 ParentShowHint = False 603 ShowHint = True 604 OnClick = btnLeftAlignClick 605 end 606 object btnCenterAlign: TSpeedButton 607 Left = 381 608 Top = 2 609 Width = 23 610 Height = 21 611 Hint = 'Align Center' 612 Glyph.Data = { 613 42020000424D4202000000000000420000002800000010000000100000000100 614 10000300000000020000130B0000130B0000000000000000000000F80000E007 615 00001F000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 616 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 617 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 618 FFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000FFFF 619 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 620 FFFFFFFFFFFF0000000000000000000000000000000000000000000000000000 621 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 622 FFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000FFFF 623 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 624 FFFFFFFFFFFF0000000000000000000000000000000000000000000000000000 625 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 626 FFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000FFFF 627 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 628 FFFFFFFFFFFF0000000000000000000000000000000000000000000000000000 629 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 630 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 631 FFFFFFFFFFFF} 632 ParentShowHint = False 633 ShowHint = True 634 OnClick = btnCenterAlignClick 635 end 636 object btnRightAlign: TSpeedButton 637 Left = 404 638 Top = 2 639 Width = 23 640 Height = 21 641 Hint = 'Align Right' 642 Glyph.Data = { 643 42020000424D4202000000000000420000002800000010000000100000000100 644 10000300000000020000130B0000130B0000000000000000000000F80000E007 645 00001F000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 646 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 647 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 648 FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000 649 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 650 FFFFFFFFFFFF0000000000000000000000000000000000000000000000000000 651 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 652 FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000 653 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 654 FFFFFFFFFFFF0000000000000000000000000000000000000000000000000000 655 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 656 FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000 657 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 658 FFFFFFFFFFFF0000000000000000000000000000000000000000000000000000 659 0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 660 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 661 FFFFFFFFFFFF} 662 ParentShowHint = False 663 ShowHint = True 664 OnClick = btnRightAlignClick 665 end 666 object btnMoreIndent: TSpeedButton 667 Left = 427 668 Top = 2 669 Width = 23 670 Height = 21 671 Hint = 'Indent' 672 Glyph.Data = { 673 42020000424D4202000000000000420000002800000010000000100000000100 674 10000300000000020000130B0000130B0000000000000000000000F80000E007 675 00001F000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 676 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FFFFFFFFFFFFFFFFFFFF 677 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 678 FFFFFFFFFFFFFFFFFFFF0000000000000000FFFF00000000FFFFFFFFFFFFFFFF 679 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 680 FFFFFFFFFFFFFFFFFFFF0000000000000000FFFF000000000000000000000000 681 000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 682 FFFFFFFFFFFFFFFFFFFF1000FFFFFFFFFFFFFFFF000000000000000000000000 683 FFFFFFFFFFFFFFFFFFFF10001000FFFFFFFFFFFF000000000000000000000000 684 FFFFFFFFFFFF10001000100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 685 FFFFFFFFFFFFFFFFFFFF10001000FFFFFFFFFFFF000000000000000000000000 686 000000000000FFFFFFFF1000FFFFFFFFFFFFFFFF000000000000000000000000 687 000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 688 FFFFFFFFFFFFFFFFFFFF0000000000000000FFFF000000000000000000000000 689 000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 690 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FFFFFFFFFFFFFFFFFFFF 691 FFFFFFFFFFFF} 692 ParentShowHint = False 693 ShowHint = True 694 OnClick = btnMoreIndentClick 695 end 696 object btnLessIndent: TSpeedButton 697 Left = 450 698 Top = 2 699 Width = 23 700 Height = 21 701 Hint = 'Outdent' 702 Glyph.Data = { 703 42020000424D4202000000000000420000002800000010000000100000000100 704 10000300000000020000130B0000130B0000000000000000000000F80000E007 705 00001F000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 706 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FFFFFFFFFFFFFFFFFFFF 707 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 708 FFFFFFFFFFFFFFFFFFFF0000000000000000FFFF00000000FFFFFFFFFFFFFFFF 709 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 710 FFFFFFFFFFFFFFFFFFFF0000000000000000FFFF000000000000000000000000 711 000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 712 FFFFFFFFFFFFFFFFFFFF1000FFFFFFFFFFFFFFFF000000000000000000000000 713 FFFFFFFFFFFFFFFF10001000FFFFFFFFFFFFFFFF000000000000000000000000 714 FFFFFFFFFFFF10001000100010001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 715 FFFFFFFFFFFFFFFF10001000FFFFFFFFFFFFFFFF000000000000000000000000 716 000000000000FFFFFFFF1000FFFFFFFFFFFFFFFF000000000000000000000000 717 000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 718 FFFFFFFFFFFFFFFFFFFF0000000000000000FFFF000000000000000000000000 719 000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 720 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FFFFFFFFFFFFFFFFFFFF 721 FFFFFFFFFFFF} 722 ParentShowHint = False 723 ShowHint = True 724 OnClick = btnLessIndentClick 725 end 726 object btnTextColor: TSpeedButton 727 Left = 473 728 Top = 2 729 Width = 23 730 Height = 21 731 Hint = 'Text Color' 732 Glyph.Data = { 733 42020000424D4202000000000000420000002800000010000000100000000100 734 10000300000000020000130B0000130B0000000000000000000000F80000E007 735 00001F000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 736 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000FFFFFFFF 737 FFFFFFFFFFFF10001000FFFF0000000010841084108410841084108400000000 738 FFFFFFFFFFFF10001000100010841084E0FFF7BDE0FF1F001F00F7BD10841084 739 0000FFFFFFFFF7BD1000FFFFF7BDE0FFF7BDE0FF1F001F001F001F00F7BDE0FF 740 10840000FFFFF7BD1084FFFFE0FF00F800F8F7BDE0FF1F001F00F7BDE0FFF7BD 741 10840000FFFF1084FFFFE0FF00F800F800F800F8F7BDE0FFFFFFFFFFF7BDE0FF 742 10840000FFFF1084FFFFF7BDE0FF00F800F8F7BDE0FF108410001000FFFFF7BD 743 10840000FFFF1084FFFFE0FFF7BDE0FFF7BDE0FF10841000FF07100010001084 744 00000000FFFF1084FFFFF7BD00040004E0FFF7BDE0FF10841000FF0710001000 745 0000FFFFFFFF1084FFFF0004000400040004E0FFF7BDE0FF10841000E0FF0084 746 0084FFFFFFFF1084FFFFF7BD00040004E0FF1FF81FF8F7BDE0FF10840084E0FF 747 00840000FFFF1084FFFFE0FFF7BDE0FF1FF81FF81FF8E0FFFFFF1084FFFF0084 748 000000000000FFFF1084FFFFE0FFF7BD1FF81FF81FF8FFFF1084FFFFFFFFFFFF 749 0000F7BD0000FFFFFFFF1084FFFFFFFFFFFFFFFFFFFF10841084FFFFFFFFFFFF 750 FFFF00000000FFFFFFFFFFFF10841084108410841084FFFFFFFFFFFFFFFFFFFF 751 FFFFFFFF0000} 752 ParentShowHint = False 753 ShowHint = True 754 OnClick = btnTextColorClick 755 end 756 object btnBackColor: TSpeedButton 757 Left = 496 758 Top = 2 759 Width = 23 760 Height = 21 761 Hint = 'Background Color' 762 Glyph.Data = { 763 12030000424D1203000000000000420000002800000014000000120000000100 764 100003000000D0020000130B0000130B0000000000000000000000F80000E007 765 00001F0000005AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 766 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 767 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF0000 768 0000000000000000000000000000000000000000000000005AEF5AEF5AEF5AEF 769 5AEF5AEF5AEF0000E007E007E0070000FF07FF07FF0700001FF81FF81FF80000 770 5AEF5AEF5AEF5AEF5AEF5AEF5AEF0000E007E007E0070000FF07FF07FF070000 771 1FF81FF81FF800005AEF5AEF5AEF5AEF5AEF5AEF5AEF0000E007E007E0070000 772 FF07FF07FF0700001FF81FF81FF800005AEF5AEF5AEF5AEF5AEF5AEF5AEF0000 773 0000000000000000000000000000000000000000000000005AEF5AEF5AEF5AEF 774 5AEF5AEF5AEF000053AD53AD53AD0000FFFFFFFFFFFF00000000000000000000 775 5AEF5AEF5AEF5AEF5AEF5AEF5AEF000053AD53AD53AD0000FFFFFFFFFFFF0000 776 00000000000000005AEF5AEF5AEF5AEF5AEF5AEF5AEF000053AD53AD53AD0000 777 FFFFFFFFFFFF000000000000000000005AEF5AEF5AEF5AEF5AEF5AEF5AEF0000 778 0000000000000000000000000000000000000000000000005AEF5AEF5AEF5AEF 779 5AEF5AEF5AEF000000F800F800F80000E0FFE0FFE0FF00001F001F001F000000 780 5AEF5AEF5AEF5AEF5AEF5AEF5AEF000000F800F800F80000E0FFE0FFE0FF0000 781 1F001F001F0000005AEF5AEF5AEF5AEF5AEF5AEF5AEF000000F800F800F80000 782 E0FFE0FFE0FF00001F001F001F0000005AEF5AEF5AEF5AEF5AEF5AEF5AEF0000 783 0000000000000000000000000000000000000000000000005AEF5AEF5AEF5AEF 784 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 785 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 786 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF 787 5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF5AEF} 788 ParentShowHint = False 789 ShowHint = True 790 OnClick = btnBackColorClick 791 end 322 792 end 323 793 end … … 360 830 Align = alClient 361 831 TabOrder = 2 362 OnCommandStateChange = WebBrowser1CommandStateChange363 OnDocumentComplete = WebBrowser1DocumentComplete364 832 ControlData = { 365 833 4C000000263F00001F1300000000000000000000000000000000000000000000 … … 445 913 Caption = 'No Progress Notes Found' 446 914 end 915 object pnlHtmlViewer: TPanel 916 Left = 0 917 Top = 116 918 Width = 611 919 Height = 185 920 Align = alClient 921 BevelOuter = bvNone 922 Color = clBtnShadow 923 TabOrder = 3 924 end 447 925 end 448 926 end … … 771 1249 Visible = False 772 1250 OnClick = popNoteMemoSaveContinueClick 1251 end 1252 object popNoteMemoHTMLFormat: TMenuItem 1253 Caption = 'Change Edit M&ode to Formatted Text' 1254 OnClick = popNoteMemoHTMLFormatClick 773 1255 end 774 1256 object Z11: TMenuItem … … 948 1430 LangData = { 949 1431 080066726D4E6F746573010200000001000000070043617074696F6E02000000 950 080048656C7046696C6501 8D0000000D0073687050616765426F74746F6D00001432 080048656C7046696C6501A20000000D0073687050616765426F74746F6D0000 951 1433 0700737074486F727A00000700706E6C4C65667400000800706E6C5269676874 952 1434 000008006C626C4E6F746573010100000003000000070043617074696F6E0009 … … 1086 1568 0000007B000000070043617074696F6E000B0074696D4175746F536176650000 1087 1569 0B00646C6746696E645465787400000E00646C675265706C6163655465787400 1088 00} 1570 000D00706E6C48746D6C56696577657200000C00706E6C546578745772697465 1571 01010000008D000000070043617074696F6E001500706F704E6F74654D656D6F 1572 48544D4C466F726D617401010000008E000000070043617074696F6E000C0070 1573 6E6C48544D4C577269746500000B00706E6C48544D4C4564697400000700546F 1574 6F6C42617201010000008F000000070043617074696F6E000B006362466F6E74 1575 4E616D6573010100000090000000040054657874000A006362466F6E7453697A 1576 6501020000009200000005004974656D73910000000400546578740008006274 1577 6E466F6E7473010100000093000000040048696E7400090062746E4974616C69 1578 63010100000094000000040048696E7400070062746E426F6C64010100000095 1579 000000040048696E74000C0062746E556E6465726C696E650101000000960000 1580 00040048696E74000A0062746E42756C6C657473010100000097000000040048 1581 696E74000A0062746E4E756D62657273010100000098000000040048696E7400 1582 0C0062746E4C656674416C69676E010100000099000000040048696E74000E00 1583 62746E43656E746572416C69676E01010000009A000000040048696E74000D00 1584 62746E5269676874416C69676E01010000009B000000040048696E74000D0062 1585 746E4D6F7265496E64656E7401010000009C000000040048696E74000D006274 1586 6E4C657373496E64656E7401010000009D000000040048696E74000C0062746E 1587 54657874436F6C6F7201010000009E000000040048696E74000C0062746E4261 1588 636B436F6C6F7201010000009F000000040048696E7400} 1089 1589 end 1090 1590 end -
cprs/branches/tmg-cprs/CPRS-Chart/fNotes.pas
r453 r541 1 //kt -- Modified with SourceScanner on 7/19/2007 1 //kt -- Modified with SourceScanner on 7/19/2007, also 8/09 2 2 unit fNotes; 3 3 {$O-} … … 9 9 fHSplit, StdCtrls, ExtCtrls, Menus, ComCtrls, ORCtrls, ORFn, uConst, ORDtTm, 10 10 uPCE, ORClasses, fDrawers, ImgList, rTIU, uTIU, uDocTree, fRptBox, fPrintList, 11 fNoteST, ORNet, fNoteSTStop, OleCtrls, SHDocVw, DKLang; 11 MSHTML,TMGHTML2,ActiveX, //kt added this line 8/09 for HTML editing 12 fNoteST, ORNet, fNoteSTStop, OleCtrls, SHDocVw, DKLang, Buttons, ToolWin; 13 14 type 15 TEditModes = (emNone,emText,emHTML); //kt 8/09 16 TViewModes = (vmEdit,vmView,vmText,vmHTML); //kt 8/09 17 TViewModeSet = Set of TViewModes; //kt 8/09 18 const 19 vmHTML_MODE : array [false..true] of TViewModes = (vmText,vmHTML); //kt 8/09 20 emHTML_MODE : array [false..true] of TEditModes = (emText,emHTML); //kt 8/09 12 21 13 22 type … … 150 159 mnuViewRemoteData: TMenuItem; 151 160 mnuViewPostings: TMenuItem; 161 pnlHtmlViewer: TPanel; //kt 8/09 162 pnlTextWrite: TPanel; //kt 8/09 163 popNoteMemoHTMLFormat: TMenuItem; //kt 8/09 164 pnlHTMLWrite: TPanel; //kt 8/09 165 pnlHTMLEdit: TPanel; //kt 8/09 166 ToolBar: TToolBar; //kt 8/09 167 cbFontNames: TComboBox; //kt 8/09 168 cbFontSize: TComboBox; //kt 8/09 169 btnFonts: TSpeedButton; //kt 8/09 170 btnItalic: TSpeedButton; //kt 8/09 171 btnBold: TSpeedButton; //kt 8/09 172 btnUnderline: TSpeedButton; //kt 8/09 173 btnBullets: TSpeedButton; //kt 8/09 174 btnNumbers: TSpeedButton; //kt 8/09 175 btnLeftAlign: TSpeedButton; //kt 8/09 176 btnCenterAlign: TSpeedButton; //kt 8/09 177 btnRightAlign: TSpeedButton; //kt 8/09 178 btnMoreIndent: TSpeedButton; //kt 8/09 179 btnLessIndent: TSpeedButton; //kt 8/09 180 btnTextColor: TSpeedButton; //kt 8/09 181 btnBackColor: TSpeedButton; //kt 8/09 152 182 procedure mnuChartTabClick(Sender: TObject); 153 183 procedure lstNotesClick(Sender: TObject); … … 222 252 procedure memNewNoteKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); 223 253 procedure sptHorzCanResize(Sender: TObject; var NewSize: Integer; var Accept: Boolean); 224 procedure WebBrowser1DocumentComplete(Sender: TObject; //kt added 225 const pDisp: IDispatch; var URL: OleVariant); //kt added 254 //kt procedure WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant); //kt added 226 255 procedure popNoteMemoInsTemplateClick(Sender: TObject); 227 256 procedure popNoteMemoPreviewClick(Sender: TObject); … … 235 264 procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, 236 265 Y: Integer); 237 procedure WebBrowser1CommandStateChange(Sender: TObject;238 Command: Integer; Enable: WordBool); //kt239 266 procedure memNewNoteKeyPress(Sender: TObject; var Key: Char); 240 267 procedure memNewNoteKeyUp(Sender: TObject; var Key: Word; … … 245 272 procedure ViewInfo(Sender: TObject); 246 273 procedure mnuViewInformationClick(Sender: TObject); 274 procedure btnBackColorClick(Sender: TObject); //kt 8/09 275 procedure btnBoldClick(Sender: TObject); //kt 8/09 276 procedure btnBulletsClick(Sender: TObject); //kt 8/09 277 procedure btnCenterAlignClick(Sender: TObject); //kt 8/09 278 procedure btnFontsClick(Sender: TObject); //kt 8/09 279 procedure btnItalicClick(Sender: TObject); //kt 8/09 280 procedure btnLeftAlignClick(Sender: TObject); //kt 8/09 281 procedure btnLessIndentClick(Sender: TObject); //kt 8/09 282 procedure btnMoreIndentClick(Sender: TObject); //kt 8/09 283 procedure btnNumbersClick(Sender: TObject); //kt 8/09 284 procedure btnRightAlignClick(Sender: TObject); //kt 8/09 285 procedure btnTextColorClick(Sender: TObject); //kt 8/09 286 procedure btnUnderlineClick(Sender: TObject); //kt 8/09 287 procedure cbFontNamesChange(Sender: TObject); //kt 8/09 288 procedure cbFontSizeChange(Sender: TObject); //kt 8/09 289 procedure popNoteMemoHTMLFormatClick(Sender: TObject); //kt 8/09 247 290 private 248 291 FNavigatingTab : Boolean; //Currently Using tab to navigate … … 256 299 FImageFlag: TBitmap; 257 300 FEditNote: TEditNoteRec; 301 FViewNote : TStringList; //kt 8/09 302 FWarmedUp : boolean; //kt 8/09 258 303 FVerifyNoteTitle: Integer; 259 304 FDocList: TStringList; … … 271 316 LastAuthor: Int64; //kt 6-1-05 272 317 LastAuthorName: string; //kt 6-1-05 318 FHTMLEditMode : TEditModes; //kt 7/09 This is the mode of the note being edited (even if not actively displayed) 319 FViewMode : TViewModeSet; //kt 7/09 This is the status of the display 273 320 procedure frmFramePnlPatientExit(Sender: TObject); 274 321 procedure frmDrawerPnlTemplatesButtonExit(Sender: TObject); … … 307 354 function SetNoteTreeLabel(AContext: TTIUContext): string; 308 355 procedure UpdateNoteAuthor(DocInfo: string); 356 procedure SetHTMLEditMode(HTMLEditMode : boolean; Quiet : Boolean=false); //kt 357 procedure ToggleHTMLEditMode; //kt 358 procedure BroadcastImages(Note: TStrings); //kt 359 procedure ProperRepaint(Editing : Boolean); //kt 360 procedure SetEditorFocus; //kt 361 function EditorHasText : boolean; //kt 309 362 public 310 HTMLfilename : string; //kt added 363 HtmlEditor : THtmlObj; //kt 8/09 364 HtmlViewer : THtmlObj; //kt 8/09 365 procedure SetDisplayToHTMLvsText(Mode :TViewModeSet; Lines : TStrings; ActivateOnly : boolean=False); //kt 8/09 311 366 function ActiveEditOf(AnIEN: Int64; ARequest: integer): Boolean; 312 367 function AllowContextChange(var WhyNot: string): Boolean; override; … … 319 374 procedure AssignRemForm; 320 375 property OrderID: string read FOrderID; 376 property ViewMode :TViewModeSet read FViewMode; //kt 8/09 321 377 procedure LstNotesToPrint; 378 constructor Create(AOwner: TComponent); override; //kt 8/09 379 destructor Destroy; override; //kt 8/09 322 380 published 323 381 property Drawers: TFrmDrawers read GetDrawers; // Keep Drawers published … … 339 397 uAccessibleTreeView, uAccessibleTreeNode, fTemplateDialog, DateUtils, 340 398 StrUtils {//KT added 1-1-05}, 341 mshtml, {//kt added 5-2-05}342 f Images, {//kt added 9-20-05}399 //fImages, {//kt added 9-20-05} 400 fOptionsNotes, //kt 8/09 343 401 rHTMLTools; {//kt added 5-27-05 for IsHTMLDocument} 344 402 … … 352 410 NT_ACT_EDIT_NOTE = 4; 353 411 NT_ACT_ID_ENTRY = 5; 412 413 VIEW_ACTIVATE_ONLY = true; //kt 8/09 354 414 355 415 //TX_NEED_VISIT = 'A visit is required before creating a new progress note.'; <-- original line. //kt 7/19/2007 … … 534 594 uIDNotesActive: Boolean; 535 595 596 constructor TfrmNotes.Create(AOwner: TComponent); 597 //kt Added function 8/09 598 begin 599 inherited Create(AOwner); 600 FViewNote := TStringList.Create; 601 end; 602 603 destructor TfrmNotes.Destroy; 604 //kt Added function 8/09 605 begin 606 FViewNote.Free; 607 FEditNote.Lines.Free; //kt 608 inherited Destroy; 609 end; 610 536 611 537 612 { TPage common methods --------------------------------------------------------------------- } … … 578 653 case BOOLCHAR[frmFrame.CCOWContextChanging] of 579 654 '1': begin 580 if memNewNote.GetTextLen > 0 then 655 if ((vmHTML in FViewMode) and (HTMLEditor.Text <> '')) //kt 8/09 656 or ((not (vmHTML in FViewMode)) and (memNewNote.GetTextLen > 0 )) then begin //kt 581 657 // WhyNot := WhyNot + 'A note in progress will be saved as unsigned. ' <-- original line. //kt 7/19/2007 582 658 WhyNot := WhyNot + DKLangConstW('fNotes_A_note_in_progress_will_be_saved_as_unsignedx') //kt added 7/19/2007 583 e lse659 end else begin //kt 584 660 // WhyNot := WhyNot + 'An empty note in progress will be deleted. '; <-- original line. //kt 7/19/2007 585 661 WhyNot := WhyNot + DKLangConstW('fNotes_An_empty_note_in_progress_will_be_deletedx'); //kt added 7/19/2007 662 end; //kt 586 663 Result := False; 587 664 end; … … 649 726 lstNotes.Clear; 650 727 memNote.Clear; 728 HTMLViewer.Clear; //kt 729 HTMLEditor.Clear; //kt 730 FWarmedUp := false; //kt 731 SetDisplayToHTMLvsText([vmText,vmView],nil,VIEW_ACTIVATE_ONLY); //kt 651 732 memPCEShow.Clear; 652 733 uPCEShow.Clear; … … 774 855 Addend := 0; 775 856 {LastCosigner & LastCosignerName aren't cleared because they're used as default for next note.} 776 Lines := nil; 857 //kt 8/09 Lines := nil; 858 if Assigned (Lines) then Lines.Clear; //kt 8/09 777 859 PRF_IEN := 0; 778 860 ActionIEN := ''; … … 781 863 txtSubject.Text := ''; 782 864 if memNewNote <> nil then memNewNote.Clear; //CQ7012 Added test for nil 865 HTMLEditor.Clear; //kt 8/09 866 HTMLViewer.Clear; //kt 8/09 867 FHTMLEditMode := emNone; //kt 8/09 783 868 timAutoSave.Enabled := False; 784 869 // clear the PCE object for editing … … 795 880 if(ShouldShow) then 796 881 sptVert.Top := memPCEShow.Top - sptVert.Height; 797 memNote.Invalidate; 882 if (vmHTML in FViewMode) then begin //kt 8/09 883 HTMLViewer.Invalidate; //kt 8/09 884 end else begin //kt 8/09 885 memNote.Invalidate; 886 end; //kt 8/09 798 887 end; 799 888 … … 1047 1136 x, WhyNot, DocInfo: string; 1048 1137 tempPos : integer; //kt 6-1-05 1138 Mode : TViewModeSet; //kt 8/09 1139 BoilerplateIsHTML : boolean;//kt 8/09 1049 1140 1050 1141 begin … … 1057 1148 try 1058 1149 ClearEditControls; 1150 FEditNote.Lines.Free; //(done d/t full wipe-out on line below} //kt 8/09 1059 1151 FillChar(FEditNote, SizeOf(FEditNote), 0); //v15.7 1152 FEditNote.Lines := TStringList.Create; //Freed in Destructor //kt 8/09 1060 1153 with FEditNote do 1061 1154 begin … … 1074 1167 TitleName := ''; 1075 1168 end; 1076 //DateTime := FMNow; //kt 6-1-051077 DateTime := Encounter.DateTime; //kt 6-1-051169 //DateTime := FMNow; //kt 6-1-05 1170 DateTime := Encounter.DateTime; //kt 6-1-05 1078 1171 //kt begin changes -------------- 6-1-05 1079 1172 if LastAuthor<>0 then begin … … 1174 1267 FChanged := False; 1175 1268 cmdChangeClick(Self); // will set captions, sign state for Changes 1269 Mode := [vmEdit] + [vmHTML_MODE[fOptionsNotes.DefaultEditHTMLMode]]; //kt 8/09 1270 SetDisplayToHTMLvsText(Mode, nil, VIEW_ACTIVATE_ONLY); // kt 8/09 1176 1271 lstNotesClick(Self); // will make pnlWrite visible 1177 1272 if timAutoSave.Interval <> 0 then EnableAutosave := TRUE; 1178 if txtSubject.Visible then txtSubject.SetFocus else memNewNote.SetFocus; 1273 //kt 6/3/09 original --> if txtSubject.Visible then txtSubject.SetFocus else memNewNote.SetFocus; 1274 if txtSubject.Visible then begin //kt 8/09 1275 txtSubject.SetFocus; //kt 8/09 1276 end else begin //kt 8/09 1277 SetEditorFocus; //kt memNewNote.SetFocus; //kt 8/09 1278 end; //kt 8/09 1179 1279 end else 1180 1280 begin … … 1195 1295 DocInfo := MakeXMLParamTIU(IntToStr(CreatedNote.IEN), FEditNote); 1196 1296 ExecuteTemplateOrBoilerPlate(TmpBoilerPlate, FEditNote.Title, ltTitle, Self, 'Title: ' + FEditNote.TitleName, DocInfo); 1197 memNewNote.Lines.Assign(TmpBoilerPlate); 1297 //kt original --> memNewNote.Lines.Assign(TmpBoilerPlate); 1298 BoilerplateIsHTML := rHTMLTools.IsHTML(TmpBoilerPlate.Text); //kt 8/09 1299 FEditNote.Lines.Assign(TmpBoilerPlate); //kt 8/09 1300 if not ((vmHTML in FViewMode)) and BoilerplateIsHTML then begin //kt 8/09 1301 FViewMode := FViewMode - [vmText] + [vmHTML]; //kt 8/09 1302 end; //kt 8/09 1303 SetDisplayToHTMLvsText(FViewMode,FEditNote.Lines); //kt 8/09 1304 if (vmHTML in FViewMode) then begin //kt 8/09 1305 HtmlEditor.MoveCaretToEnd; //kt 8/09 1306 Application.ProcessMessages; //kt 8/09 1307 end; //kt 8/09 1198 1308 UpdateNoteAuthor(DocInfo); 1199 1309 TmpBoilerPlate.Free; … … 1204 1314 frmNotes.pnlWriteResize(Self); 1205 1315 end; 1316 1317 1318 procedure TfrmNotes.SetEditorFocus; 1319 //kt added function 8/09 1320 begin 1321 try 1322 if (vmHTML in FViewMode) then begin //kt 8/09 1323 HtmlEditor.SetFocus; //kt 8/09 1324 end else begin //kt 8/09 1325 memNewNote.SetFocus; 1326 end; //kt 8/09 1327 except 1328 on E: Exception do begin 1329 // ignore error. Info in E 1330 end; 1331 end; 1332 end; 1333 1206 1334 1207 1335 procedure TfrmNotes.InsertAddendum; … … 1290 1418 lstNotesClick(Self); // will make pnlWrite visible 1291 1419 if timAutoSave.Interval <> 0 then timAutoSave.Enabled := True; 1292 memNewNote.SetFocus;1420 SetEditorFocus; //kt memNewNote.SetFocus; //kt 8/09 1293 1421 end else 1294 1422 begin … … 1307 1435 tmpNode: TTreeNode; 1308 1436 x: string; 1437 Mode : TViewModeSet; //kt 1438 1309 1439 begin 1310 1440 ClearEditControls; … … 1313 1443 Changes.Add(CH_DOC, lstNotes.ItemID, GetTitleText(EditingIndex), '', CH_SIGN_YES); 1314 1444 GetNoteForEdit(FEditNote, lstNotes.ItemIEN); 1315 memNewNote.Lines.Assign(FEditNote.Lines); 1445 Mode := [vmEdit] + [vmHTML_MODE[IsHTML(FEditNote.Lines) or (vmHTML in FViewMode)]]; //kt 8/09 1446 SetDisplayToHTMLvsText(Mode,FEditNote.Lines); //kt 8/09 1447 //kt memNewNote.Lines.Assign(FEditNote.Lines); //kt 8/09 1316 1448 FChanged := False; 1317 1449 if FEditNote.Title = TYP_ADDENDUM then … … 1361 1493 lstNotesClick(Self); // will make pnlWrite visible 1362 1494 if timAutoSave.Interval <> 0 then timAutoSave.Enabled := True; 1363 memNewNote.SetFocus;1495 SetEditorFocus; //kt memNewNote.SetFocus; //kt 8/09 1364 1496 end; 1365 1497 … … 1369 1501 UpdatedNote: TCreatedDoc; 1370 1502 x: string; 1503 EmptyNote : boolean; //kt 1504 1371 1505 begin 1372 1506 SetupVars; //kt added 7/19/2007 to replace constants with vars. 1373 1507 Saved := False; 1374 if (memNewNote.GetTextLen = 0) or (not ContainsVisibleChar(memNewNote.Text)) then 1375 begin 1508 if not (vmHTML in FViewMode) then begin //kt 8/09 1509 EmptyNote := (memNewNote.GetTextLen = 0) //kt 8/09 1510 or (not ContainsVisibleChar(memNewNote.Text)); //kt 8/09 1511 end else begin //kt 8/09 1512 EmptyNote := (HtmlEditor.GetTextLen = 0) //kt 8/09 1513 or (not ContainsVisibleChar(HtmlEditor.Text)); //kt 8/09 1514 end; //kt 8/09 1515 //kt 8/09 if (memNewNote.GetTextLen = 0) or (not ContainsVisibleChar(memNewNote.Text)) then 1516 //kt 8/09 begin 1517 if EmptyNote then begin 1376 1518 lstNotes.ItemIndex := EditingIndex; 1377 1519 x := lstNotes.ItemID; … … 1395 1537 end; 1396 1538 //ExpandTabsFilter(memNewNote.Lines, TAB_STOP_CHARS); 1397 FEditNote.Lines := memNewNote.Lines; 1539 if FEditNote.Lines = nil then FEditNote.Lines := TStringList.Create; //kt 1540 //kt 8/09 FEditNote.Lines := memNewNote.Lines; 1541 if (vmHTML in FViewMode) then begin //kt 8/09 1542 SplitToArray(WrapHTML(HtmlEditor.HTMLText), FEditNote.Lines); //kt 8/09 1543 end else begin //kt 8/09 1544 FEditNote.Lines.Assign(memNewNote.Lines); //kt 8/09 1545 end; //kt 8/09 1398 1546 //FEditNote.Lines:= SetLinesTo74ForSave(memNewNote.Lines, Self); 1399 1547 FEditNote.Subject := txtSubject.Text; … … 1417 1565 FNewIDChild := False; 1418 1566 FChanged := False; 1567 HTMLEditor.KeyStruck := false; //kt 1419 1568 end else 1420 1569 begin … … 1438 1587 begin 1439 1588 inherited; 1440 //kt --- Begin Modification 9-2005 kt1589 //kt --- Begin Modification 9-2005, 8/09 ------------- 1441 1590 CacheDir := ExtractFilePath(ParamStr(0))+ 'Cache'; //kt 9-05 1442 if not DirectoryExists(CacheDir) then begin 1443 CreateDir(CacheDir); 1444 end; 1445 HTMLfilename := CacheDir + '\html_note.html'; //kt 5-05 1591 if not DirectoryExists(CacheDir) then CreateDir(CacheDir); 1592 //kt HTMLfilename := CacheDir + '\html_note.html'; //kt 5-05 1446 1593 LastAuthor :=0; //kt 5-05 1447 1594 LastAuthorName:=''; //kt 5-05 1448 //kt --- End Modification 9-2005 kt 1595 DesiredHTMLFontSize := 2; //Used later to downsize during printing. 1596 SetRegHTMLFontSize(DesiredHTMLFontSize); //0=SMALLEST ... 4=LARGEST 1597 //kt Note: On creation, THtmlObj will remember Application.OnMessage. But if 1598 // another object (say a prior THtmlObj) has become active and already 1599 // changed the handler, then there will be a problem. So probably best 1600 // to create them all at one. //kt 1601 HtmlViewer := THtmlObj.Create(pnlHTMLViewer,Application); 1602 HtmlEditor := THtmlObj.Create(pnlHTMLEdit,Application); 1603 TWinControl(HtmlViewer).Parent:=pnlHTMLViewer; 1604 TWinControl(HtmlViewer).Align:=alClient; 1605 HtmlEditor.PrevControl := cmdPCE; 1606 HtmlEditor.NextControl := cmdChange; 1607 //Note: A 'loaded' function will initialize the THtmlObj's, but it can't be 1608 // done until after this constructor is done, and this TfrmNotes has been 1609 // assigned a parent. So done elsewhere. 1610 HtmlViewer.PopupMenu := popNoteMemo; 1611 TWinControl(HtmlEditor).Parent:=pnlHTMLEdit; 1612 TWinControl(HtmlEditor).Align:=alClient; 1613 HtmlEditor.PopupMenu := popNoteMemo; 1614 cbFontNames.Items.Assign(Screen.Fonts); 1615 FViewMode := [vmView,vmText]; 1616 FHTMLEditMode := emNone; 1617 HTMLViewer.BackgroundColor := ReadOnlyColor; 1618 //kt --- End Modification 9-2005, 8/09 ------ 1449 1619 PageID := CT_NOTES; 1450 1620 memNote.Color := ReadOnlyColor; … … 1458 1628 frmDrawers.Align := alBottom; 1459 1629 frmDrawers.RichEditControl := memNewNote; 1630 frmDrawers.HTMLEditControl := HtmlEditor; //kt 8/09 1631 frmDrawers.HTMLModeSwitcher := SetHTMLEditMode; //kt 8/09 1460 1632 frmDrawers.NewNoteButton := cmdNewNote; 1461 1633 frmDrawers.Splitter := splDrawers; … … 1468 1640 FDocList := TStringList.Create; 1469 1641 TAccessibleTreeView.WrapControl(tvNotes); 1642 RestoreRegHTMLFontSize; //kt, elh 8/09 1470 1643 end; 1471 1644 … … 1475 1648 inherited; 1476 1649 pnlRight.Refresh; 1477 memNote.Repaint; 1650 if (vmHTML in FViewMode) then begin //kt 8/09 1651 HTMLViewer.Repaint; //kt 8/09 1652 end else begin //kt 8/09 1653 memNote.Repaint 1654 end; //kt 8/09 1478 1655 end; 1479 1656 … … 1483 1660 begin 1484 1661 inherited; 1662 //kt NOTE: I don't know how to do the equivalent for HTML. Actually, I don't think it applies. 1485 1663 LimitEditWidth(memNewNote, MAX_PROGRESSNOTE_WIDTH - 1); 1486 1664 … … 1498 1676 { loads the text for the selected note or displays the editing panel for the selected note } 1499 1677 var 1500 ImageList : TStringList; //kt added 1/1/05 1501 i : integer; //kt added 1/1/05 1502 begin 1503 inherited; 1504 with lstNotes do if ItemIndex = -1 then Exit 1505 else if ItemIndex = EditingIndex then 1506 begin 1507 pnlWrite.Visible := True; 1508 pnlRead.Visible := False; 1509 mnuViewDetail.Enabled := False; 1510 if (FEditNote.IDParent <> 0) and (not FNewIDChild) then 1511 mnuActChange.Enabled := False 1512 else 1513 mnuActChange.Enabled := True; 1514 mnuActLoadBoiler.Enabled := True; 1515 UpdateReminderFinish; 1516 end else 1517 begin 1518 // StatusText('Retrieving selected progress note...'); <-- original line. //kt 7/19/2007 1519 StatusText(DKLangConstW('fNotes_Retrieving_selected_progress_notexxx')); //kt added 7/19/2007 1520 Screen.Cursor := crAppStart; //kt changed from crHourGlass; 1/1/05 1521 //Screen.Cursor := crHourGlass; //kt 1522 pnlRead.Visible := True; 1523 pnlWrite.Visible := False; 1524 UpdateReminderFinish; 1525 lblTitle.Caption := Piece(Piece(Items[ItemIndex], U, 8), ';', 1) + #9 + Piece(Items[ItemIndex], U, 2) + ', ' + 1526 Piece(Items[ItemIndex], U, 6) + ', ' + Piece(Piece(Items[ItemIndex], U, 5), ';', 2) + 1527 ' (' + FormatFMDateTime('mmm dd,yy@hh:nn', MakeFMDateTime(Piece(Items[ItemIndex], U, 3))) 1528 + ')'; 1529 lvNotes.Caption := lblTitle.Caption; 1530 LoadDocumentText(memNote.Lines, ItemIEN); 1531 memNote.SelStart := 0; 1532 mnuViewDetail.Enabled := True; 1533 mnuViewDetail.Checked := False; 1534 mnuActChange.Enabled := False; 1535 mnuActLoadBoiler.Enabled := False; 1536 Screen.Cursor := crDefault; 1537 StatusText(''); 1538 end; 1539 if(assigned(frmReminderTree)) then 1540 frmReminderTree.EnableActions; 1541 1542 //kt changed to following block 5/31/05 1543 if IsHTMLDocument(MemNote.Lines) then begin 1544 rHTMLTools.ActivateWebBrowser; 1545 end else begin 1546 rHTMLTools.ActivateMemo; 1547 end; 1548 //------end block -------- 1549 1678 Note : TStrings; //kt 6/09. Will be pointer to FViewNote, or FEditNote.Lines 1679 Editing : boolean; //kt 8/09 1680 Mode : TViewModeSet; //kt 8/09 1681 IsHTML : boolean; //kt 8/09 1682 1683 begin 1684 inherited; 1685 //kt 8/09 with lstNotes do if ItemIndex = -1 then Exit 1686 //kt 8/09 else if ItemIndex = EditingIndex then 1687 1688 with lstNotes do begin //kt 8/09 1689 if ItemIndex = -1 then Exit; //kt 8/09 1690 Editing := (ItemIndex = EditingIndex); //kt 8/09 1691 if Editing then begin //kt 8/09 1692 if FEditNote.Lines = nil then FEditNote.Lines := TStringList.Create; //kt 8/09 1693 Note := FEditNote.Lines; //kt 8/09 1694 {pnlWrite.Visible := True; //kt 8/09 1695 pnlRead.Visible := False; } //kt done in SetHTMLorTextEditor //kt 8/09 1696 mnuViewDetail.Enabled := False; 1697 if (FEditNote.IDParent <> 0) and (not FNewIDChild) then 1698 mnuActChange.Enabled := False 1699 else 1700 mnuActChange.Enabled := True; 1701 mnuActLoadBoiler.Enabled := True; 1702 UpdateReminderFinish; 1703 Mode := [vmEdit] + [vmHTML_MODE[(FHTMLEditMode=emHTML)]]; //kt 8/09 1704 SetDisplayToHTMLvsText(Mode,FEditNote.Lines,VIEW_ACTIVATE_ONLY); //kt 8/09 1705 FWarmedUp := true; //kt 8/09 1706 end else begin 1707 // StatusText('Retrieving selected progress note...'); <-- original line. //kt 7/19/2007 1708 StatusText(DKLangConstW('fNotes_Retrieving_selected_progress_notexxx')); //kt added 7/19/2007 1709 Screen.Cursor := crAppStart; //kt changed from crHourGlass; 1/1/05 1710 //kt 8/09 pnlRead.Visible := True; 1711 //kt 8/09 pnlWrite.Visible := False; 1712 UpdateReminderFinish; 1713 lblTitle.Caption := Piece(Piece(Items[ItemIndex], U, 8), ';', 1) + #9 + Piece(Items[ItemIndex], U, 2) + ', ' + 1714 Piece(Items[ItemIndex], U, 6) + ', ' + Piece(Piece(Items[ItemIndex], U, 5), ';', 2) + 1715 ' (' + FormatFMDateTime('mmm dd,yy@hh:nn', MakeFMDateTime(Piece(Items[ItemIndex], U, 3))) 1716 + ')'; 1717 lvNotes.Caption := lblTitle.Caption; 1718 //kt 8/09 LoadDocumentText(memNote.Lines, ItemIEN); 1719 LoadDocumentText(FViewNote, ItemIEN); //kt 8/09 1720 Note := FViewNote; //kt 8/09 1721 memNote.SelStart := 0; 1722 mnuViewDetail.Enabled := True; 1723 mnuViewDetail.Checked := False; 1724 mnuActChange.Enabled := False; 1725 mnuActLoadBoiler.Enabled := False; 1726 Screen.Cursor := crDefault; 1727 StatusText(''); 1728 IsHTML := rHTMLTools.IsHTML(FViewNote); //kt 8/09 1729 Mode := [vmView] + [vmHTML_MODE[IsHTML]]; //kt 8/09 1730 SetDisplayToHTMLvsText(Mode,FViewNote); //kt 8/09 1731 if not FWarmedUp and IsHTML then begin //kt 8/09 1732 FWarmedUp := true; //kt 8/09 1733 //First HTML page won't display without this... //kt 8/09 1734 SetDisplayToHTMLvsText(Mode,FViewNote); //kt 8/09 1735 end; //kt 8/09 1736 end; 1737 end; //kt 8/09 1738 1739 if(assigned(frmReminderTree)) then frmReminderTree.EnableActions; 1550 1740 //DisplayPCE; //kt 5-31-05 (moved down below) 1551 1741 pnlRight.Refresh; 1552 memNewNote.Repaint; 1553 memNote.Repaint; 1742 ProperRepaint(Editing); //kt 8/09 1743 //kt 8/09 memNewNote.Repaint; 1744 //kt 8/09 memNote.Repaint; 1554 1745 NotifyOtherApps(NAE_REPORT, 'TIU^' + lstNotes.ItemID); 1555 DisplayPCE; //kt 5-31-05 (move down from above) 1746 //kt RESTORE LATER... frmImages.NewNoteSelected(Editing); //kt 9/05 1747 DisplayPCE; //kt 5-31-05 (move down from above) 1748 BroadcastImages(Note); //kt 8/09 1556 1749 1557 1750 //----------------------------- 1558 frmImages.NewNoteSelected(lstNotes.ItemIndex=EditingIndex); //kt added 9-20-05 1559 //kt added the following block: 1/1/05 1751 //kt RESTORE LATER... frmImages.NewNoteSelected(lstNotes.ItemIndex=EditingIndex); //kt added 9-20-05 1752 end; 1753 1754 procedure TfrmNotes.ProperRepaint(Editing : Boolean); 1755 //kt Added function 8/09 1756 begin 1757 if Editing then begin 1758 if (vmHTML in FViewMode) then begin 1759 HtmlEditor.Repaint; 1760 end else begin 1761 memNewNote.Repaint; 1762 end; 1763 end else begin 1764 if (vmHTML in FViewMode) then begin 1765 HtmlViewer.Repaint; 1766 end else begin 1767 memNote.Repaint; 1768 end; 1769 end; 1770 Application.ProcessMessages; 1771 end; 1772 1773 procedure TfrmNotes.BroadcastImages(Note: TStrings); 1774 //kt added function 8/09 1775 var 1776 ImageList : TStringList; 1777 i : integer; 1778 begin 1560 1779 ImageList := TStringList.Create; 1561 if rHTMLTools.CheckForImageLink( memNote.Lines, ImageList) then begin1780 if rHTMLTools.CheckForImageLink(Note, ImageList) then begin 1562 1781 for i:= 0 to ImageList.Count-1 do begin 1563 1782 NotifyOtherApps(NAE_REPORT, 'IMAGE^' + ImageList.Strings[i]); … … 1565 1784 end; 1566 1785 ImageList.Free; 1567 //kt end of addition 1/1/05 1568 //----------------------------- 1786 end; 1787 1788 function TfrmNotes.EditorHasText : boolean; 1789 //kt added function 8/09 1790 begin 1791 if (vmHTML in FViewMode) then begin 1792 Result := (HTMLViewer.Text <> ''); 1793 end else begin 1794 Result := (memNote.Lines.Count > 0); 1795 end; 1569 1796 end; 1570 1797 … … 1590 1817 PCEObj := nil; 1591 1818 AnIEN := lstNotes.ItemIEN; 1592 if (AnIEN <> 0) and (memNote.Lines.Count > 0) then 1819 //kt 8/09 if (AnIEN <> 0) and (memNote.Lines.Count > 0) then 1820 if (AnIEN <> 0) and EditorHasText then //kt 8/09 1593 1821 begin 1594 1822 ActOnDocument(ActionSts, AnIEN, 'VIEW'); … … 1650 1878 begin 1651 1879 ExecuteTemplateOrBoilerPlate(BoilerText, FEditNote.Title, ltTitle, Self, 'Title: ' + FEditNote.TitleName, DocInfo); 1652 memNewNote.Lines.Assign(BoilerText); 1880 SetDisplayToHTMLvsText([vmHTML,vmEdit],BoilerText); //kt 8/09 1881 //kt 8/09 memNewNote.Lines.Assign(BoilerText); 1653 1882 UpdateNoteAuthor(DocInfo); 1654 1883 FChanged := False; … … 1661 1890 BoilerText := TStringList.Create; 1662 1891 try 1663 NoteEmpty := memNewNote.Text = ''; 1892 if (vmHTML in FViewMode) then begin //kt 8/09 1893 NoteEmpty := (HTMLEditor.Text = ''); //kt 8/09 1894 end else begin //kt 8/09 1895 NoteEmpty := memNewNote.Text = ''; 1896 end; //kt 8/09 1664 1897 LoadBoilerPlate(BoilerText, FEditNote.Title); 1665 1898 if (BoilerText.Text <> '') or … … 1673 1906 1: begin 1674 1907 ExecuteTemplateOrBoilerPlate(BoilerText, FEditNote.Title, ltTitle, Self, 'Title: ' + FEditNote.TitleName, DocInfo); 1675 memNewNote.Lines.AddStrings(BoilerText); // append 1908 if (vmHTML in FViewMode) then begin //kt 8/09 1909 HTMLEditor.Text := HTMLEditor.Text + Text2HTML(BoilerText); //kt 8/09 1910 end else begin //kt 8/09 1911 memNewNote.Lines.AddStrings(BoilerText); // append 1912 end; //kt 8/09 1676 1913 UpdateNoteAuthor(DocInfo); 1677 1914 end; … … 1687 1924 if not NoteEmpty then 1688 1925 // if not FChanged and (InfoBox(TX_BLR_CLEAR, TC_BLR_CLEAR, MB_YESNO) = ID_YES) 1689 if (InfoBox(TX_BLR_CLEAR, TC_BLR_CLEAR, MB_YESNO) = ID_YES) 1690 then memNewNote.Lines.Clear; 1926 if (InfoBox(TX_BLR_CLEAR, TC_BLR_CLEAR, MB_YESNO) = ID_YES) then begin 1927 if (vmHTML in FViewMode) then begin //kt 8/09 1928 HTMLEditor.Clear; //kt 8/09 1929 end else begin //kt 8/09 1930 memNewNote.Lines.Clear; 1931 end; //kt 8/09 1932 end; 1691 1933 end; 1692 1934 end; {if BoilerText.Text <> ''} … … 1783 2025 begin 1784 2026 inherited; 2027 //kt 8/09 NOTE: the equivalent functionality for HTML is HTMLEditor.Keystruck. Don't have to set here. 1785 2028 FChanged := True; 1786 2029 end; … … 1798 2041 var 1799 2042 ErrMsg: string; 1800 begin 1801 if (EditingIndex > -1) and FChanged then 2043 Changed : boolean; //kt 8/09 2044 begin 2045 Changed := false; //kt 8/09 2046 if (vmHTML in FViewMode) then begin //kt 8/09 2047 Changed := HTMLEditor.KeyStruck; //kt 8/09 2048 end else begin //kt 8/09 2049 Changed := FChanged; //kt 8/09 2050 end; //kt 8/09 2051 //kt 8/09 if (EditingIndex > -1) and FChanged then 2052 if (EditingIndex > -1) and Changed then //kt 8/09 1802 2053 begin 1803 2054 // StatusText('Autosaving note...'); <-- original line. //kt 7/19/2007 … … 1806 2057 timAutoSave.Enabled := False; 1807 2058 try 2059 if (vmHTML in FViewMode) then begin //kt 2060 rHTMLTools.SplitToArray (HTMLEditor.HTMLText, FEditNote.Lines); //kt 2061 SetText(ErrMsg, FEditNote.Lines, lstNotes.GetIEN(EditingIndex),Suppress);//kt 2062 end else begin //kt 1808 2063 SetText(ErrMsg, memNewNote.Lines, lstNotes.GetIEN(EditingIndex), Suppress); 2064 end; //kt 1809 2065 finally 1810 2066 timAutoSave.Enabled := True; 1811 2067 end; 1812 2068 FChanged := False; 2069 HTMLEditor.KeyStruck := false; //kt 1813 2070 StatusText(''); 1814 2071 end; … … 2259 2516 if tvNotes.Selected <> nil then tvNotesChange(Self, tvNotes.Selected) else 2260 2517 begin*) 2518 FHTMLEditMode := emNone; //kt 8/09 2261 2519 pnlWrite.Visible := False; 2262 2520 pnlRead.Visible := True; … … 2530 2788 2531 2789 procedure TfrmNotes.popNoteMemoPopup(Sender: TObject); 2790 const FORMAT_MODE : array[false..true] of string = ('fNotes_Formatted_Text','fNotes_Plain_Text'); //kt 8/09 2532 2791 begin 2533 2792 inherited; … … 2545 2804 end else 2546 2805 begin 2806 popNoteMemoHTMLFormat.Enabled := False; //kt 8/09 2547 2807 popNoteMemoCut.Enabled := False; 2548 2808 popNoteMemoCopy.Enabled := False; … … 2550 2810 popNoteMemoTemplate.Enabled := False; 2551 2811 end; 2812 popNoteMemoHTMLFormat.Caption := DKLangConstW('fNotes_Change_Edit_Mode_To') + ' ' + //kt 8/09 2813 DKLangConstW(FORMAT_MODE[(vmHTML in FViewMode)]); //kt 8/09 2814 popNoteMemoHTMLFormat.Enabled := pnlWrite.Visible; //kt 8/09 2552 2815 if pnlWrite.Visible then 2553 2816 begin 2554 popNoteMemoSpell.Enabled := True; 2555 popNoteMemoGrammar.Enabled := True; 2556 popNoteMemoReformat.Enabled := True; 2817 //kt 8/09 popNoteMemoSpell.Enabled := True; 2818 //kt 8/09 popNoteMemoGrammar.Enabled := True; 2819 //kt 8/09 popNoteMemoReformat.Enabled := True; 2820 popNoteMemoSpell.Enabled := not pnlHTMLWrite.Visible; //kt 8/09 2821 popNoteMemoGrammar.Enabled := not pnlHTMLWrite.Visible; //kt 8/09 2822 popNoteMemoReformat.Enabled := not pnlHTMLWrite.Visible; //kt 8/09 2557 2823 popNoteMemoReplace.Enabled := (FEditCtrl.GetTextLen > 0); 2558 2824 popNoteMemoPreview.Enabled := (frmDrawers.TheOpenDrawer = odTemplates) and Assigned(frmDrawers.tvTemplates.Selected); … … 2567 2833 popNoteMemoInsTemplate.Enabled := False; 2568 2834 end; 2835 end; 2836 2837 (*//kt 8/09 NOTICE: 2838 On the form, popNoteMenu was edited to add a new item as below 2839 popNoteMemoHTMLFormat : TMenuItem 2840 Captions: ~ Edit as Formatted Text 2841 OnClick -- popNoteMemoHTMLFormatClick 2842 *) 2843 2844 procedure TfrmNotes.popNoteMemoHTMLFormatClick(Sender: TObject); 2845 //kt added function 8/09 2846 begin 2847 inherited; 2848 ToggleHTMLEditMode; 2569 2849 end; 2570 2850 … … 2698 2978 StatusText(DKLangConstW('fNotes_Retrieving_progress_note_detailsxxx')); //kt added 7/19/2007 2699 2979 Screen.Cursor := crAppStart; //kt, was crHourGlass; 2700 LoadDetailText(memNote.Lines, lstNotes.ItemIEN); 2980 //kt LoadDetailText(memNote.Lines, lstNotes.ItemIEN); 2981 LoadDetailText(FViewNote, lstNotes.ItemIEN); //kt 8/09 2982 SetDisplayToHTMLvsText(FViewMode,FViewNote); //kt 8/09 2701 2983 Screen.Cursor := crDefault; 2702 2984 StatusText(''); 2703 2985 memNote.SelStart := 0; 2704 memNote.Repaint; 2986 if not (vmHTML in FViewMode) then //kt 8/09 2987 memNote.Repaint; 2705 2988 end 2706 2989 else 2707 2990 lstNotesClick(Self); 2708 SendMessage(memNote.Handle, WM_VSCROLL, SB_TOP, 0); 2991 if (vmHTML in FViewMode) then begin //kt 8/09 2992 SendMessage(HTMLViewer.Handle, WM_VSCROLL, SB_TOP, 0); //kt 8/09 2993 end else begin //kt 8/09 2994 SendMessage(memNote.Handle, WM_VSCROLL, SB_TOP, 0); 2995 end; //kt 8/09 2709 2996 end; 2710 2997 … … 2720 3007 begin 2721 3008 FSilent := True; 2722 if memNewNote.GetTextLen > 0 then SaveCurrentNote(Saved) 3009 //kt 8/09 if memNewNote.GetTextLen > 0 then SaveCurrentNote(Saved) 3010 if EditorHasText then SaveCurrentNote(Saved) //kt 8/09 2723 3011 else 2724 3012 begin … … 2968 3256 lvNotes.Items.Clear; 2969 3257 memNote.Clear; 3258 HTMLViewer.Clear; //kt 8/09 2970 3259 tvNotes.FullCollapse; 2971 3260 tvNotes.Selected := tvNotes.TopItem; … … 3041 3330 //kt note: The Images tab will delete all files in .\Cache, which 3042 3331 // might include HTMLfilename. No harm if already deleted. 3043 DeleteFile(HTMLfilename); //kt added 5-2-053332 //kt 8/09 DeleteFile(HTMLfilename); //kt added 5-2-05 3044 3333 TAccessibleTreeView.UnwrapControl(tvNotes); 3045 3334 FDocList.Free; 3046 3335 FImageFlag.Free; 3047 3336 KillDocTreeObjects(tvNotes); 3337 HtmlEditor.Free; //kt 6/7/09 3338 HtmlViewer.Free; //kt 6/7/09 3048 3339 inherited; 3049 3340 end; … … 3056 3347 procedure TfrmNotes.AssignRemForm; 3057 3348 begin 3349 //kt 8/09 ReminderDialog interaction has not yet been debugged with HTML formatted text. 3058 3350 with RemForm do 3059 3351 begin … … 3065 3357 Drawers := frmDrawers; 3066 3358 NewNoteRE := memNewNote; 3359 NewNoteHTMLE := HTMLEditor; //kt 3067 3360 NoteList := lstNotes; 3068 3361 end; … … 3093 3386 uChanging := True; 3094 3387 RedrawSuspend(memNote.Handle); 3388 RedrawSuspend(HTMLViewer.Handle); //kt 8/09 3095 3389 RedrawSuspend(lvNotes.Handle); 3096 3390 tvNotes.Items.BeginUpdate; … … 3101 3395 lvNotes.Items.Clear; 3102 3396 memNote.Clear; 3397 HTMLViewer.Clear; //kt 8/09 3103 3398 memNote.Invalidate; 3104 3399 lblTitle.Caption := ''; … … 3217 3512 end; 3218 3513 memNote.Clear; 3514 HTMLViewer.Clear; //kt 8/09 3219 3515 with lvNotes do 3220 3516 begin … … 3240 3536 end; 3241 3537 finally 3242 RedrawActivate(memNote.Handle); 3538 //kt NOTE: Is this enough?? 3539 if (vmHTML in FViewMode) then begin //kt 8/09 3540 RedrawActivate(HtmlViewer.Handle); //kt 8/09 3541 end else begin //kt 8/09 3542 RedrawActivate(memNote.Handle); 3543 end; //kt 8/09 3243 3544 RedrawActivate(lvNotes.Handle); 3244 3545 tmpList.Free; … … 3264 3565 i: integer; 3265 3566 WhyNot: string; 3567 Mode : TViewModeSet; //kt 8/09 3266 3568 begin 3267 3569 if uChanging then Exit; … … 3272 3574 begin 3273 3575 memNote.Clear; 3576 HTMLViewer.Clear; //kt 8/09 3274 3577 if Selected = nil then Exit; 3275 3578 if uIDNotesActive then … … 3292 3595 RedrawSuspend(lvNotes.Handle); 3293 3596 RedrawSuspend(memNote.Handle); 3597 RedrawSuspend(HTMLViewer.Handle); //kt 8/09 3294 3598 popNoteListExpandSelected.Enabled := Selected.HasChildren; 3295 3599 popNoteListCollapseSelected.Enabled := Selected.HasChildren; … … 3354 3658 ShowPCEControls(False); 3355 3659 end; 3356 pnlWrite.Visible := False; 3357 pnlRead.Visible := True; 3660 //kt 8/09 3661 //kt NOTE: At this point the list has changed. But what is the new note-to-view's format? 3662 // We can't just use FViewMode. Because that just states what mode was used on the last note. 3663 Mode := [vmView] + [vmHTML_MODE[vmHTML in FViewMode]]; //kt 8/09 3664 SetDisplayToHTMLvsText(Mode,nil,VIEW_ACTIVATE_ONLY); //kt 8/09 3665 //kt 8/09 pnlWrite.Visible := False; 3666 //kt 8/09 pnlRead.Visible := True; 3358 3667 // uncommented next 4 lines in v17.5 (RV) 3359 3668 //----------------------------- … … 3368 3677 begin 3369 3678 memNote.Clear; 3679 HTMLViewer.Clear; //kt 8/09 3370 3680 lvNotes.Visible := False; 3371 3681 lstNotes.SelectByID(Piece(x, U, 1)); 3372 3682 lstNotesClick(Self); 3373 SendMessage(memNote.Handle, WM_VSCROLL, SB_TOP, 0); 3683 if (vmHTML in FViewMode) then begin //kt 8/09 3684 SendMessage(HTMLViewer.Handle, WM_VSCROLL, SB_TOP, 0); //kt 8/09 3685 end else begin //kt 8/09 3686 SendMessage(memNote.Handle, WM_VSCROLL, SB_TOP, 0); 3687 end; //kt 8/09 3374 3688 end; 3375 3689 SendMessage(tvNotes.Handle, WM_HSCROLL, SB_THUMBTRACK, 0); 3376 3690 RedrawActivate(lvNotes.Handle); 3377 RedrawActivate(memNote.Handle); 3691 if (vmHTML in FViewMode) then begin //kt 8/09 3692 RedrawActivate(HtmlViewer.Handle); //kt 8/09 3693 end else begin //kt 8/09 3694 RedrawActivate(memNote.Handle); 3695 end; //kt 8/09 3378 3696 end; 3379 3697 end; … … 3599 3917 lstNotes.SelectByID(Item.SubItems[5]); 3600 3918 lstNotesClick(Self); 3601 SendMessage(memNote.Handle, WM_VSCROLL, SB_TOP, 0); 3919 if (vmHTML in FViewMode) then begin //kt 8/09 3920 SendMessage(HTMLViewer.Handle, WM_VSCROLL, SB_TOP, 0); //kt 8/09 3921 end else begin //kt 8/09 3922 SendMessage(memNote.Handle, WM_VSCROLL, SB_TOP, 0); 3923 end; //kt 8/09 3602 3924 end; 3603 3925 end; … … 3900 4222 end; 3901 4223 4224 (* 3902 4225 //kt 5-2-05 added following function (initially copied from fReports.pas) 3903 4226 procedure TfrmNotes.WebBrowser1DocumentComplete(Sender: TObject; … … 3920 4243 } 3921 4244 end; 3922 4245 *) 3923 4246 3924 4247 procedure TfrmNotes.popNoteMemoInsTemplateClick(Sender: TObject); … … 4075 4398 end; 4076 4399 4400 procedure TfrmNotes.SetHTMLEditMode(HTMLEditMode : boolean; Quiet : boolean); 4401 //kt added function 7/09 4402 var Mode : TViewModeSet; //kt 4403 const HTML_MODE_S : Array[false..true] of string[16] = ('PLAIN','FORMATTED'); 4404 begin 4405 if FEditNote.Lines = nil then FEditNote.Lines := TStringList.Create; //kt 4406 if HTMLEditMode then begin 4407 if (FViewMode = [vmHTML,vmEdit]) then exit; //no change needed. 4408 FEditNote.Lines.Assign(memNewNote.Lines); 4409 end else begin 4410 if (FViewMode = [vmText,vmEdit]) then exit; //no change needed. 4411 if HtmlEditor.GetTextLen > 0 then begin 4412 if MessageDlg('Do you want to convert this note to PLAIN TEXT?'+#10#13+ 4413 '(May cause loss of formatting information.)',mtWarning, mbOKCancel,0) <> mrOK then begin 4414 exit; 4415 end; 4416 end; 4417 FEditNote.Lines.Text := HTMLEditor.Text; 4418 end; 4419 Mode := [vmEdit] + [vmHTML_MODE[HTMLEditMode]]; //kt 4420 SetDisplayToHTMLvsText(Mode,FEditNote.Lines); 4421 if not Quiet then begin 4422 if MessageDlg('Start new notes in '+HTML_MODE_S[HTMLEditMode]+' TEXT by default?',mtConfirmation,[mbYES,mbNO],0) = mrYES then begin 4423 fOptionsNotes.SetDefaultEditHTMLMode(HTMLEditMode); 4424 end; 4425 end; 4426 end; 4427 4428 procedure TfrmNotes.ToggleHTMLEditMode; 4429 //kt added function 6/09 4430 var NewHTMLMode: boolean; 4431 begin 4432 if not (vmEdit in FViewMode) then exit; //quit if not in edit mode 4433 NewHTMLMode := not (vmHTML in FViewMode); 4434 SetHTMLEditMode(NewHTMLMode); 4435 end; 4436 4437 4438 procedure TfrmNotes.SetDisplayToHTMLvsText(Mode : TViewModeSet; 4439 Lines : TStrings; 4440 ActivateOnly : boolean {default=False}); 4441 //kt added function 7/09 4442 //If ActivateOnly=True, then the visibility is set, but the control is not filled with text. 4443 4444 type 4445 TPanelVisibilityMode = (pvmReadMode, pvmWriteMode); //kt 4446 4447 procedure SetPanelVisibility(Mode: TPanelVisibilityMode; HTMLMode : boolean); 4448 4449 procedure SetpnlReadVisibility(Visible : boolean; HTMLMode : boolean); 4450 begin 4451 pnlRead.Visible := Visible; 4452 if Visible then begin 4453 memNote.Visible := not HTMLMode; 4454 memNote.TabStop := not HTMLMode; 4455 pnlHTMLViewer.Visible := HTMLMode; 4456 HTMLViewer.Visible := HTMLMode; 4457 if HTMLMode then begin 4458 HtmlViewer.BringToFront; 4459 end else begin 4460 MemNote.BringToFront; 4461 end; 4462 end else begin 4463 memNote.Visible := false; 4464 memNote.TabStop := false; 4465 pnlHTMLViewer.Visible := false; 4466 HTMLViewer.Visible := false; 4467 end; 4468 end; {SetDisplayToHTMLvsText.SetPanelVisibility.SetpnlReadVisibility} 4469 4470 procedure SetpnlWriteVisibility(Visible : boolean; HTMLMode : boolean); 4471 begin 4472 pnlWrite.Visible := Visible; 4473 if Visible then begin 4474 pnlHTMLWrite.Visible := HTMLMode; 4475 pnlHTMLEdit.Visible := HTMLMode; 4476 HTMLEditor.Visible := HTMLMode; 4477 pnlTextWrite.Visible := not HTMLMode; 4478 MemNewNote.Visible := not HTMLMode; 4479 if HTMLMode then begin 4480 HTMLEditor.BringToFront; 4481 end else begin 4482 MemNewNote.BringToFront; 4483 end; 4484 end else begin 4485 pnlHTMLWrite.Visible := false; 4486 pnlHTMLEdit.Visible := false; 4487 HTMLEditor.Visible := false; 4488 pnlTextWrite.Visible := false; 4489 memNewNote.Visible := false; 4490 end; 4491 end; {SetDisplayToHTMLvsText.SetPanelVisibility.SetpnlWriteVisibility} 4492 4493 begin {SetDisplayToHTMLvsText.SetPanelVisibility} 4494 SetpnlReadVisibility ((Mode=pvmReadMode), HTMLMode); 4495 SetpnlWriteVisibility((Mode=pvmWriteMode),HTMLMode); 4496 Application.ProcessMessages; 4497 end; {SetDisplayToHTMLvsText.SetPanelVisibility} 4498 4499 procedure SetHTMLorTextEditor(HTMLEditMode : boolean; 4500 Lines : TStrings; 4501 ActivateOnly : boolean {default=False}); 4502 procedure ActivateHtmlEditor(Lines : TStrings); 4503 var HTMLText : string; 4504 begin 4505 HtmlEditor.Editable := true; 4506 if ActivateOnly=false then begin 4507 if Lines <> nil then begin 4508 if rHTMLTools.IsHTML(Lines) then begin 4509 HTMLText := Lines.Text; 4510 end else begin 4511 HTMLText := Text2HTML(Lines); 4512 if HTMLText='' then HTMLText := ' '; 4513 end; 4514 end else HTMLText := ' '; 4515 HtmlEditor.HTMLText := HTMLText; 4516 HTMLEditor.KeyStruck := false; 4517 end; 4518 end; {SetDisplayToHTMLvsText.SetHTMLorTextEditor.ActivateHtmlEditor} 4519 4520 procedure ActiveMemoEditor(Lines : TStrings); 4521 begin 4522 if ActivateOnly=false then begin 4523 memNewNote.Lines.Assign(Lines); //kt new 4524 end; 4525 //kt HtmlEditor.Active := false; //stop intercepting OnMessages 4526 HtmlEditor.Clear; 4527 end; {SetDisplayToHTMLvsText.SetHTMLorTextEditor.ActiveMemoEditor} 4528 4529 begin {SetDisplayToHTMLvsText.SetHTMLorTextEditor} 4530 FHTMLEditMode := emHTML_MODE[HTMLEditMode]; 4531 FViewMode := [vmEdit] + [vmHTML_MODE[HTMLEditMode]]; 4532 SetPanelVisibility(pvmWriteMode,HTMLEditMode); 4533 pnlRight.Repaint; //kt TEMP 4534 if HTMLEditMode then begin 4535 ActivateHtmlEditor(Lines); 4536 end else begin 4537 ActiveMemoEditor(Lines); 4538 end; 4539 pnlRight.Repaint; //kt TEMP 4540 end; {SetDisplayToHTMLvsText.SetHTMLorTextEditor} 4541 4542 procedure SetHTMLorTextViewer(HTMLViewMode : boolean; 4543 Lines : TStrings; 4544 ActivateOnly : boolean); //kt 4545 //Set forms such that either HTML Viewer is visible, or standard edit window. 4546 procedure ActivateHtmlViewer(Lines : TStrings); 4547 begin 4548 with frmNotes do begin 4549 //ScanForSubs(MemNote.Lines); 4550 pnlHtmlViewer.Visible := true; 4551 //memNote.Visible := false; 4552 //memNote.TabStop := false; 4553 HtmlViewer.BringToFront; 4554 if ActivateOnly=False then begin 4555 FixHTML(Lines); 4556 HtmlViewer.HTMLText := Lines.Text; 4557 end; 4558 HtmlViewer.Editable := false; 4559 HtmlViewer.BackgroundColor := clCream; 4560 HtmlViewer.TabStop := true; 4561 RedrawActivate(HtmlViewer.Handle); 4562 end; 4563 end; {SetDisplayToHTMLvsText.SetHTMLorTextViewer.ActivateHtmlViewer} 4564 4565 procedure ActivateMemoViewer(Lines : TStrings); 4566 begin 4567 with frmNotes do begin 4568 pnlHtmlViewer.Visible := false; 4569 HtmlViewer.Clear; 4570 //HtmlEditor.Clear; //don't this here. Only clear in ClearEditControls... 4571 HtmlViewer.TabStop := false; 4572 if ActivateOnly=False then memNote.Lines.Assign(Lines); //new 4573 memNote.Visible := true; 4574 memNote.TabStop := true; 4575 memNote.BringToFront; 4576 RedrawActivate(memNote.Handle); 4577 end; 4578 end; {SetDisplayToHTMLvsText.SetHTMLorTextViewer.ActivateMemoViewer} 4579 4580 begin {SetHTMLorTextViewer} 4581 FViewMode := [vmView] + [vmHTML_MODE[HTMLViewMode]]; 4582 SetPanelVisibility(pvmReadMode,HTMLviewMode); 4583 //pnlRight.Repaint; //kt TEMP 4584 if HTMLViewMode then begin 4585 ActivateHtmlViewer(Lines); 4586 end else begin 4587 ActivateMemoViewer(Lines); 4588 HtmlViewer.Clear; 4589 end; 4590 pnlRight.Repaint; //kt TEMP 4591 end; {SetDisplayToHTMLvsText.SetHTMLorTextViewer} 4592 4593 begin {SetDisplayToHTMLvsText} 4594 if vmEdit in Mode then begin 4595 SetHTMLorTextEditor((vmHTML in Mode),Lines,ActivateOnly); 4596 end else begin 4597 SetHTMLorTextViewer((vmHTML in Mode),Lines,ActivateOnly); 4598 end; 4599 end; {SetDisplayToHTMLvsText} 4600 4601 procedure TfrmNotes.btnBoldClick(Sender: TObject); 4602 //kt added function 4603 begin 4604 inherited; 4605 HtmlEditor.ToggleBold; 4606 end; 4607 4608 procedure TfrmNotes.btnItalicClick(Sender: TObject); 4609 //kt added function 4610 begin 4611 inherited; 4612 HtmlEditor.ToggleItalic; 4613 end; 4614 4615 procedure TfrmNotes.btnLessIndentClick(Sender: TObject); 4616 //kt added function 4617 begin 4618 inherited; 4619 HtmlEditor.Outdent; 4620 end; 4621 4622 procedure TfrmNotes.btnMoreIndentClick(Sender: TObject); 4623 //kt added function 4624 begin 4625 inherited; 4626 HtmlEditor.Indent; 4627 end; 4628 4629 procedure TfrmNotes.btnRightAlignClick(Sender: TObject); 4630 //kt added function 4631 begin 4632 inherited; 4633 HtmlEditor.AlignRight; 4634 end; 4635 4636 procedure TfrmNotes.btnCenterAlignClick(Sender: TObject); 4637 //kt added function 4638 begin 4639 inherited; 4640 HtmlEditor.AlignCenter; 4641 end; 4642 4643 procedure TfrmNotes.btnLeftAlignClick(Sender: TObject); 4644 //kt added function 4645 begin 4646 inherited; 4647 HtmlEditor.AlignLeft; 4648 end; 4649 4650 procedure TfrmNotes.btnNumbersClick(Sender: TObject); 4651 //kt added function 4652 begin 4653 inherited; 4654 HtmlEditor.ToggleNumbering; 4655 end; 4656 4657 procedure TfrmNotes.btnBulletsClick(Sender: TObject); 4658 //kt added function 4659 begin 4660 inherited; 4661 HtmlEditor.ToggleBullet; 4662 end; 4663 4664 procedure TfrmNotes.btnUnderlineClick(Sender: TObject); 4665 //kt added function 4666 begin 4667 inherited; 4668 HtmlEditor.ToggleUnderline; 4669 end; 4670 4671 procedure TfrmNotes.btnTextColorClick(Sender: TObject); 4672 //kt added function 4673 begin 4674 inherited; 4675 HtmlEditor.TextForeColorDialog; 4676 end; 4677 4678 procedure TfrmNotes.btnBackColorClick(Sender: TObject); 4679 //kt added function 4680 begin 4681 inherited; 4682 HtmlEditor.TextBackColorDialog; 4683 end; 4684 4685 procedure TfrmNotes.btnFontsClick(Sender: TObject); 4686 //kt added function 4687 begin 4688 inherited; 4689 HtmlEditor.FontDialog; 4690 end; 4691 4692 procedure TfrmNotes.cbFontSizeChange(Sender: TObject); 4693 //kt added function 4694 const 4695 FontSizes : array [0..6] of byte = (8,10,12,14,18,24,36); 4696 begin 4697 inherited; 4698 //HtmlEditor.FontSize := StrToInt(cbFontSize.Text); 4699 HtmlEditor.FontSize := FontSizes[cbFontSize.ItemIndex]; 4700 end; 4701 4702 procedure TfrmNotes.cbFontNamesChange(Sender: TObject); 4703 //kt added function 4704 var i : integer; 4705 FontName : string; 4706 const 4707 TEXT_BAR = '---------------'; 4708 begin 4709 inherited; 4710 if cbFontNames.Text[1]='<' then exit; 4711 FontName := cbFontNames.Text; 4712 HtmlEditor.FontName := FontName; 4713 i := cbFontNames.Items.IndexOf(TEXT_BAR); 4714 if i < 1 then cbFontNames.Items.Insert(0,TEXT_BAR); 4715 if i > 5 then cbFontNames.Items.Delete(5); 4716 if cbFontNames.Items.IndexOf(FontName)> i then begin 4717 cbFontNames.Items.Insert(0,FontName); 4718 end; 4719 end; 4720 4721 (* 4077 4722 //kt made this entire temp function 4078 4723 procedure TfrmNotes.WebBrowser1CommandStateChange(Sender: TObject; … … 4101 4746 end; 4102 4747 end; 4748 *) 4103 4749 4104 4750 procedure TfrmNotes.memNewNoteKeyPress(Sender: TObject; var Key: Char); -
cprs/branches/tmg-cprs/CPRS-Chart/fPtDemo.pas
r453 r541 155 155 end; 156 156 until LastLine >= memPtDemo.Lines.Count - 1; 157 PrintWindowsReport(memPrintReport, PAGE_BREAK, Self.Caption, ErrMsg );157 PrintWindowsReport(memPrintReport, PAGE_BREAK, Self.Caption, ErrMsg, Application); //kt 8/09 added 'Application' 158 158 end; 159 159 finally -
cprs/branches/tmg-cprs/CPRS-Chart/fPtSel.dfm
r453 r541 159 159 object TMGcmdAdd: TButton 160 160 Left = 584 161 Top = 2 4162 Width = 7 3163 Height = 17161 Top = 22 162 Width = 75 163 Height = 20 164 164 Caption = 'Add Patient' 165 165 TabOrder = 5 -
cprs/branches/tmg-cprs/CPRS-Chart/fReminderDialog.pas
r496 r541 991 991 WHArray: TStringlist; 992 992 GecRemIen, GecRemStr, RemWipe: String; 993 HTMLEditing : boolean; //kt 8/09 993 994 994 995 procedure Add(PCEItemClass: TPCEItemClass); … … 1073 1074 repeat 1074 1075 //AGP Added RemWipe section this section will determine if the Dialog is a patient specific 1075 if FProcessingTemplate or (i < RemindersInProcess.Count) then 1076 begin 1077 if FProcessingTemplate then 1078 begin 1079 Rem := FReminder; 1080 if Rem.RemWipe = 1 then 1081 RemWipe := Piece(Rem.DlgData,U,1); 1082 end 1083 else 1084 begin 1085 Rem := TReminder(RemindersInProcess.Objects[i]); 1086 if TReminderDialog(TReminder(RemindersInProcess.Objects[i])).RemWipe = 1 then 1087 begin 1088 if RemWipe ='' then RemWipe := TReminder(RemindersInProcess.Objects[i]).IEN 1089 else RemWipe := RemWipe + U + TReminder(RemindersInProcess.Objects[i]).IEN; 1090 end; 1091 end; 1076 if FProcessingTemplate or (i < RemindersInProcess.Count) then begin 1077 if FProcessingTemplate then begin 1078 Rem := FReminder; 1079 if Rem.RemWipe = 1 then 1080 RemWipe := Piece(Rem.DlgData,U,1); 1081 end else begin 1082 Rem := TReminder(RemindersInProcess.Objects[i]); 1083 if TReminderDialog(TReminder(RemindersInProcess.Objects[i])).RemWipe = 1 then begin 1084 if RemWipe ='' then RemWipe := TReminder(RemindersInProcess.Objects[i]).IEN 1085 else RemWipe := RemWipe + U + TReminder(RemindersInProcess.Objects[i]).IEN; 1086 end; 1087 end; 1092 1088 1093 1089 Flds := FALSE; 1094 1090 OldCount := TmpList.Count; 1095 1091 Rem.FinishProblems(TmpList, Flds); 1096 if(OldCount <> TmpList.Count) or Flds then 1097 begin 1092 if(OldCount <> TmpList.Count) or Flds then begin 1098 1093 TmpList.Insert(OldCount, ''); 1099 1094 if not FProcessingTemplate then … … 1113 1108 1114 1109 Process := TRUE; 1115 if(TmpList.Count > 0) then 1116 begin 1110 if(TmpList.Count > 0) then begin 1117 1111 Msg := REQ_TXT + TmpList.Text; 1118 1112 InfoBox(Msg, REQ_HDR, MB_OK); 1119 1113 Process := FALSE; 1120 end 1121 else 1122 begin 1114 end else begin 1123 1115 TmpText := TStringList.Create; 1124 1116 try 1125 if (not FProcessingTemplate) and (not InsertRemTextAtCursor) then 1126 RemForm.NewNoteRE.SelStart := MaxInt; // Move to bottom of note 1127 AddLine := FALSE; 1128 BeforeLine := SendMessage(RemForm.NewNoteRE.Handle, EM_EXLINEFROMCHAR, 0, RemForm.NewNoteRE.SelStart); 1129 if (SendMessage(RemForm.NewNoteRE.Handle, EM_LINEINDEX, BeforeLine, 0) <> RemForm.NewNoteRE.SelStart) then 1130 begin 1131 RemForm.NewNoteRE.SelStart := SendMessage(RemForm.NewNoteRE.Handle, EM_LINEINDEX, BeforeLine+1, 0); 1132 inc(BeforeLine); 1133 end; 1134 if(RemForm.NewNoteRE.SelStart > 0) then 1135 begin 1136 if(RemForm.NewNoteRE.SelStart = 1) then 1137 AddLine := TRUE 1138 else 1139 begin 1140 TR.chrg.cpMin := RemForm.NewNoteRE.SelStart-2; 1141 TR.chrg.cpMax := TR.chrg.cpMin+2; 1142 TR.lpstrText := @buf; 1143 SendMessage(RemForm.NewNoteRE.Handle, EM_GETTEXTRANGE, 0, LPARAM(@TR)); 1144 if(buf[0] <> #13) or (buf[1] <> #10) then 1145 AddLine := TRUE; 1117 if (RemForm.Form is TfrmNotes) and Assigned(RemForm.NewNoteHTMLE) then begin //kt 1118 HTMLEditing := (vmHTML in TfrmNotes(RemForm.Form).ViewMode); //kt 1119 end else HTMLEditing := false; //kt 1120 if HTMLEditing then begin //kt added this entire block //kt 1121 if (not FProcessingTemplate) and (not InsertRemTextAtCursor) then begin //kt 1122 RemForm.NewNoteHTMLE.MoveCaretToEnd; //kt 1123 end; //kt 1124 AddLine := TRUE; //kt 1125 end else begin //kt (original code below) 1126 if (not FProcessingTemplate) and (not InsertRemTextAtCursor) then 1127 RemForm.NewNoteRE.SelStart := MaxInt; // Move to bottom of note 1128 AddLine := FALSE; 1129 BeforeLine := SendMessage(RemForm.NewNoteRE.Handle, EM_EXLINEFROMCHAR, 0, RemForm.NewNoteRE.SelStart); 1130 if (SendMessage(RemForm.NewNoteRE.Handle, EM_LINEINDEX, BeforeLine, 0) <> RemForm.NewNoteRE.SelStart) then begin 1131 RemForm.NewNoteRE.SelStart := SendMessage(RemForm.NewNoteRE.Handle, EM_LINEINDEX, BeforeLine+1, 0); 1132 inc(BeforeLine); 1146 1133 end; 1147 end; 1134 if(RemForm.NewNoteRE.SelStart > 0) then begin 1135 if(RemForm.NewNoteRE.SelStart = 1) then 1136 AddLine := TRUE 1137 else begin 1138 TR.chrg.cpMin := RemForm.NewNoteRE.SelStart-2; 1139 TR.chrg.cpMax := TR.chrg.cpMin+2; 1140 TR.lpstrText := @buf; 1141 SendMessage(RemForm.NewNoteRE.Handle, EM_GETTEXTRANGE, 0, LPARAM(@TR)); 1142 if(buf[0] <> #13) or (buf[1] <> #10) then 1143 AddLine := TRUE; 1144 end; 1145 end; 1146 end; //kt 8/09 1148 1147 if FProcessingTemplate then 1149 1148 FReminder.AddText(TmpText) 1150 else 1151 begin 1149 else begin 1152 1150 for i := 0 to RemindersInProcess.Count-1 do 1153 1151 TReminder(RemindersInProcess.Objects[i]).AddText(TmpText); 1154 1152 end; 1155 if(TmpText.Count > 0) then 1156 begin 1157 if not FProcessingTemplate then 1158 begin 1153 if(TmpText.Count > 0) then begin 1154 if not FProcessingTemplate then begin 1159 1155 tmp := ClinRemText; 1160 if(tmp <> '') then1161 begin1156 //kt if(tmp <> '') then begin 1157 if(tmp <> '') and (not HTMLEditing) then begin //kt 8/09 1162 1158 i := RemForm.NewNoteRE.Lines.IndexOf(tmp); 1163 if(i < 0) or (i > BeforeLine) then 1164 begin 1159 if(i < 0) or (i > BeforeLine) then begin 1165 1160 TmpText.Insert(0, tmp); 1166 1161 if(RemForm.NewNoteRE.SelStart > 0) then … … 1177 1172 if TmpText.Count = 0 then 1178 1173 Process := FALSE 1179 else 1180 begin 1174 else begin 1181 1175 if RemForm.PCEObj.NeedProviderInfo and MissingProviderInfo(RemForm.PCEObj, PCEType) then 1182 1176 Process := FALSE 1183 else 1184 RemForm.NewNoteRE.SelText := TmpText.Text; 1177 else begin 1178 If HTMLEditing then begin //kt 8/09 1179 for i := 0 to TmpText.count-1 do begin //kt 8/09 1180 RemForm.NewNoteHTMLE.InsertTextAtCaret(TmpText.Strings[i]+'<BR>'); //kt 8/09 1181 end; //kt 8/09 1182 end else begin //kt 8/09 1183 RemForm.NewNoteRE.SelText := TmpText.Text; 1184 end; //kt 8/09 1185 end; 1185 1186 end; 1186 1187 end; 1187 if(Process) then1188 begin1188 //kt if(Process) then begin 1189 if(Process) and (not HTMLEditing) then begin //kt 1189 1190 SendMessage(RemForm.NewNoteRE.Handle, EM_SCROLLCARET, 0, 0); 1190 1191 AfterTop := SendMessage(RemForm.NewNoteRE.Handle, EM_GETFIRSTVISIBLELINE, 0, 0); -
cprs/branches/tmg-cprs/CPRS-Chart/fReportsPrint.pas
r453 r541 345 345 Patient.DFN, uHSComponents, RemoteSiteID, RemoteQuery, uHState)); 346 346 aCaption := piece(uRemoteType,'^',4); 347 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg );347 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg, Application); //kt 8/09, Added ',Application' 348 348 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 349 349 end; … … 360 360 Patient.DFN, uHSComponents, RemoteSiteID, RemoteQuery, uHState)); 361 361 aCaption := piece(uRemoteType,'^',4); 362 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg );362 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg, Application); //kt 8/09, Added ',Application' 363 363 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 364 364 end; … … 374 374 FindVType; 375 375 aCaption := piece(uRemoteType,'^',4) + ';1'; 376 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg );376 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg, Application); //kt 8/09, Added ',Application' 377 377 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 378 378 end … … 382 382 Patient.DFN, uHSComponents, RemoteSiteID, RemoteQuery, uHState)); 383 383 aCaption := piece(uRemoteType,'^',4); 384 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg );384 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg, Application); //kt 8/09, Added ',Application' 385 385 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 386 386 end; … … 396 396 FindVType; 397 397 aCaption := piece(uRemoteType,'^',4) + ';1'; 398 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg );398 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg, Application); //kt 8/09, Added ',Application' 399 399 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 400 400 end … … 404 404 Patient.DFN, uHSComponents, RemoteSiteID, RemoteQuery, uHState)); 405 405 aCaption := piece(uRemoteType,'^',4); 406 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg );406 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg, Application); //kt 8/09, Added ',Application' 407 407 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 408 408 end; … … 419 419 Patient.DFN, uHSComponents, RemoteSiteID, RemoteQuery, uHState)); 420 420 aCaption := piece(uRemoteType,'^',4); 421 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg );421 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg, Application); //kt 8/09, Added ',Application' 422 422 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 423 423 end; … … 434 434 Patient.DFN, uHSComponents, RemoteSiteID, RemoteQuery, uHState)); 435 435 aCaption := piece(uRemoteType,'^',4); 436 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg );436 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg, Application); //kt 8/09, Added ',Application' 437 437 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 438 438 end; … … 452 452 Patient.DFN, uHSComponents, RemoteSiteID, RemoteQuery, uHState)); 453 453 aCaption := piece(uRemoteType,'^',4); 454 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg );454 PrintWindowsReport(FReportText, PAGE_BREAK, aCaption, ErrMsg, Application); //kt 8/09, Added ',Application' 455 455 if Length(ErrMsg) > 0 then InfoBox(ErrMsg, TX_ERR_CAP, MB_OK); 456 456 end; -
cprs/branches/tmg-cprs/CPRS-Chart/fRptBox.pas
r453 r541 187 187 end; 188 188 until LastLine >= StringText.Count - 1; 189 PrintWindowsReport(memPrintReport, PAGE_BREAK, Title, ErrMsg );189 PrintWindowsReport(memPrintReport, PAGE_BREAK, Title, ErrMsg, Application); //kt 8/09, Added ',Application' 190 190 end; 191 191 finally -
cprs/branches/tmg-cprs/CPRS-Chart/fSplash.dfm
r496 r541 4143 4143 Alignment = taCenter 4144 4144 AutoSize = False 4145 Caption = 'TMG Customization 1. 0'4145 Caption = 'TMG Customization 1.1' 4146 4146 Font.Charset = ANSI_CHARSET 4147 4147 Font.Color = clGray -
cprs/branches/tmg-cprs/CPRS-Chart/rHTMLTools.pas
r453 r541 1 1 unit rHTMLTools; 2 (* 3 This entire unit was created by K. Toppenberg, starting on 5/27/05 2 (*This entire unit was created by K. Toppenberg, starting on 5/27/05 4 3 It will hold additional functions to support HTML display of notes 5 and printing of HTML notes. 6 *) 4 and printing of HTML notes. *) 7 5 8 6 interface 9 7 10 uses Windows, SysUtils, Classes, Printers, ComCtrls, 11 ShDocVw, {//kt added ShDocVw 5-2-05 for TWebBrowser access} 12 ORFn; {//kt for RedrawActivate} 13 14 procedure PrintHTMLReport(Lines: TStringList; var ErrMsg: string); //kt added 5-2-05 15 function IsHTMLDocument(Lines : TStrings): boolean; //kt added 5-2-05 16 procedure WaitForBrowserOK(MaxSecDelay: integer); 17 procedure ActivateWebBrowser; 18 procedure ActivateMemo; 19 function CheckForImageLink(Lines: TStrings; ImageList : TStringList) : boolean; 20 8 uses Windows, SysUtils, Classes, Printers, ComCtrls, 9 ShDocVw, {//kt added ShDocVw 5-2-05 for TWebBrowser access} 10 Dialogs, 11 Forms, 12 Registry, {elh 6/19/09} 13 ORFn; {//kt for RedrawActivate} 14 15 var 16 DesiredHTMLFontSize : byte; 17 18 procedure PrintHTMLReport(Lines: TStringList; var ErrMsg: string; PtName:string; 19 DOB:string; Location:string; Application : TApplication); //kt added 5-2-05 20 function IsHTML(Lines : TStrings): boolean; overload; 21 function IsHTML(Line : String): boolean; overload; 22 function HasHTMLTags(Text: string) : boolean; 23 procedure FixHTML(Lines : TStrings); 24 function FixHTMLCRLF(Text : String) : string; 25 procedure SplitToArray (HTMLText: string; Lines : TStrings); 26 procedure StripBeforeAfterHTML(Lines,OutBefore,OutAfter : TStrings); 27 function UnwrapHTML(HTMLText : string) : string; 28 function WrapHTML(HTMLText : string) : string; 29 // function WaitForBrowserOK(MaxSecDelay: integer; Application : TApplication) : boolean; 30 function CheckForImageLink(Lines: TStrings; ImageList : TStringList) : boolean; 31 function ProtectHTMLSpaces(Text : String) : string; 32 function Text2HTML(Lines : TStrings) : String; overload; 33 function Text2HTML(text : string) : String; overload; 34 procedure SetRegHTMLFontSize(Size: byte); 35 procedure RestoreRegHTMLFontSize; 36 procedure SetupHTMLPrinting(Name,DOB,Location,Institution : string); 37 procedure RestoreIEPrinting; 38 21 39 implementation 22 40 23 uses fNotes, 24 fImages, 25 StrUtils; {//kt added 5-2-05 rTIU for frmNotes.WebBrowser access} 26 27 28 procedure PrintHTMLReport(Lines: TStringList; var ErrMsg: string); 29 //Note: 30 // I use two web browsers because sometimes the display web browser 31 // would be changed by other parts of CPRS during the printing 32 // process, causing the incorrect page to print out. By having a 33 // browser just for printing, this will hopefully not happen. 34 // 35 // Web browser printing options: 36 // OLECMDEXECOPT_DODEFAULT Use the default behavior, whether prompting the user for input or not. 37 // OLECMDEXECOPT_PROMPTUSER Execute the command after obtaining user input. 38 // OLECMDEXECOPT_DONTPROMPTUSER Execute the command without prompting the user. 39 40 var 41 Status: OLECMDF; 42 HTMLfilename : string; 43 //Pauses : integer; 44 begin 45 try 41 uses fNotes, 42 fImages, 43 Messages, 44 Graphics, //For color constants 45 fTMGPrintingAnimation, 46 StrUtils; 47 48 const CRLF = #$0D#$0A; 49 50 51 function GetCurrentPrinterName : string; 52 //var ResStr: array[0..255] of Char; 53 begin 54 //GetProfileString('Windows', 'device', '', ResStr, 255); 55 //Result := StrPas(ResStr); 56 if (Printer.PrinterIndex > 0)then begin 57 Result := Printer.Printers[Printer.PrinterIndex]; 58 end else begin 59 Result := ''; 60 end; 61 end; 62 63 procedure SetDefaultPrinter(PrinterName: String) ; 64 var 65 j : Integer; 66 Device, Driver, Port : PChar; 67 HdeviceMode : THandle; 68 aPrinter : TPrinter; 69 begin 70 Printer.PrinterIndex := -1; 71 getmem(Device, 255) ; 72 getmem(Driver, 255) ; 73 getmem(Port, 255) ; 74 aPrinter := TPrinter.create; 75 j := Printer.Printers.IndexOf(PrinterName); 76 if j >= 0 then begin 77 aprinter.printerindex := j; 78 aPrinter.getprinter(device, driver, port, HdeviceMode) ; 79 StrCat(Device, ',') ; 80 StrCat(Device, Driver ) ; 81 StrCat(Device, Port ) ; 82 WriteProfileString('windows', 'device', Device) ; 83 StrCopy( Device, 'windows' ) ; 84 //SendMessage(HWND_BROADCAST, WM_WININICHANGE, 0, Longint(@Device)) ; 85 end; 86 Freemem(Device, 255) ; 87 Freemem(Driver, 255) ; 88 Freemem(Port, 255) ; 89 aPrinter.Free; 90 end; 91 92 93 procedure Wait(Sec : byte; Application : TApplication); 94 var StartTime : TDateTime; 95 const OneSec = 0.000012; 96 begin 97 StartTime := GetTime; 98 repeat 99 Application.ProcessMessages; 100 until (GetTime-StartTime) > (OneSec*Sec); 101 end; 102 103 procedure PrintHTMLReport(Lines: TStringList; var ErrMsg: string; 104 PtName, DOB, Location:string; 105 Application : TApplication); 106 // Web browser printing options: 107 // OLECMDEXECOPT_DODEFAULT Use the default behavior, whether prompting the user for input or not. 108 // OLECMDEXECOPT_PROMPTUSER Execute the command after obtaining user input. 109 // OLECMDEXECOPT_DONTPROMPTUSER Execute the command without prompting the user. 110 111 {Notice: When IE is asked to print, it immediately returns from the function, 112 but the printing has not yet occured. If UI is requested, then the 113 printing will not start until after the user selects a printer and 114 presses [OK]. I could not find any reliable way to determine when the 115 print job had been created. I had to know this event because I need to 116 restore some IE settings AFTER the printing has finished. I even tried to 117 get the active windows and see if it was a print dialog. But IE print dlg 118 apparently is owned by another thread than CPRS, because GetActiveWindow would 119 not bring back a handle to the printer dialog window. I therefore told IE 120 to print WITHOUT asking which printer via UI. In that case it prints to the 121 system wide default printer. So I have to set the default printer to the 122 user's choice, and then change it back again. This is bit of a kludge, 123 but I couldn't figure out any other way after hours of trial and error. 124 NOTE: I tried to query IE to see if it was able to print, thinking that it 125 would return NO if in the process of currently printing. It didn't work, 126 and would return OK immediately. } 127 128 var 129 UseUI : OleVariant; 130 NewPrinterName,DefaultPrinter: string; 131 dlgWinPrinter: TPrintDialog; 132 begin 133 DefaultPrinter := GetCurrentPrinterName; 134 dlgWinPrinter := TPrintDialog.Create(nil); 135 frmTMGPrinting.Show; 136 if dlgWinPrinter.Execute then begin //only sets a local printer 137 NewPrinterName := GetCurrentPrinterName; 138 SetDefaultPrinter(NewPrinterName); //Set global setting that IE will use. 139 try 140 //frmNotes.SetHTMLorTextViewer(True,Lines); //ActivateHtmlViewer(Lines); 141 frmNotes.SetDisplayToHTMLvsText([vmView,vmHTML],Lines); //ActivateHtmlViewer(Lines); 142 if frmNotes.HtmlViewer.WaitForDocComplete = false then begin 143 ErrMsg := 'The web browser timed out trying to set up document.'; 144 exit; 145 end; 146 SetupHTMLPrinting(PtName,DOB,Location,' '); {elh 6/19/09} //kt 147 frmNotes.HtmlViewer.PrintFinished := false; 148 UseUI := false; //UseUI := true; 149 frmNotes.HtmlViewer.PrintDocument(UseUI); //Returns immediately, not after printing done. 150 Wait(4,Application); //give IE x sec to complete print document. Is this always enough? 151 //WaitForBrowserOK(10, Application); //wait up to 10 seconds //Note: this doesn't do what I want. Status is immediately OK. 152 RestoreIEPrinting; {elh 6/19/09} //kt 153 finally //any needed final code goes here. 154 SetDefaultPrinter(DefaultPrinter); 155 //beep; 156 end; 157 end; 158 dlgWinPrinter.Free; 159 frmTMGPrinting.Hide; 160 end; 161 162 (* 163 function WaitForBrowserOK(MaxSecDelay: integer; Application : TApplication) : boolean; 164 //Returns TRUE if can print 165 var 166 StartTime : TDateTime; 167 Status: OLECMDF; 168 MaxDelay,ElapsedTime : Double; 169 CanPrint : boolean; 170 const 171 OneMin = 0.0007; //note: 0.0007 is about 1 minute 172 begin 173 StartTime := GetTime; 174 MaxDelay := OneMin * MaxSecDelay; 175 repeat 176 Status := frmNotes.HtmlViewer.QueryStatusWB(OLECMDID_PRINT); //"can you print?" -- get print command status 177 CanPrint := (Status and OLECMDF_ENABLED) > 0; 178 ElapsedTime := GetTime-StartTime; 179 Application.ProcessMessages; 180 until (ElapsedTime > MaxDelay) or CanPrint or frmNotes.HtmlViewer.PrintFinished; 181 Result := CanPrint; 182 end; 183 *) 184 185 Procedure ScanForSubs(Lines : TStrings); 186 //Purpose: To scan note for constant $CPRS$ and replace with CPRS's actual directory 187 var i : integer; 188 CPRSDir : string; 189 begin 190 for i := 0 to Lines.Count-1 do begin 191 if Pos('$CPRSDIR$',Lines.Strings[i])>0 then begin 192 CPRSDir := ExcludeTrailingPathDelimiter(ExtractFilePath(ParamStr(0))); 193 Lines.Strings[i] := AnsiReplaceStr(Lines.Strings[i],'$CPRSDIR$',CPRSDir); 194 //Ensure images are downloaded before passing page to web browser 195 frmImages.timLoadImagesTimer(nil); 196 end; 197 end; 198 end; 199 200 201 function IsHTML(Line : String): boolean; 202 {Purpose: To look at the Text and determine if it is an HTML document. 203 Test used: if document contains <!DOCTYPE HTML" or <HTML> or </BODY> 204 This is not a fool-proof test... 205 NOTE: **This does NOT call ScanForSubs as the other IsHTML(TStrings) function does. } 206 207 begin 208 Result := false; //default of false 209 Line := UpperCase(Line); 210 if (Pos('<!DOCTYPE HTML',Line) > 0) 211 or (Pos('<HTML>',Line) > 0) 212 or (Pos('</BODY>',Line) > 0)then begin 213 Result := true; 214 end; 215 end; 216 217 218 function IsHTML(Lines : TStrings): boolean; 219 //Purpose: To look at the note loaded into Lines and determine if it is 220 // an HTML document. See other IsHTML(String) function for test used. 221 begin 222 Result := false; 223 if Lines = nil then exit; 224 Result := IsHTML(Lines.Text); 225 if Result = true then ScanForSubs(Lines); 226 end; 227 228 229 function HasHTMLTags(Text: string) : boolean; 230 function GetTag(p1,p2 : integer; var Text : string) : string; 231 var i : integer; 46 232 begin 47 HTMLfilename := ExtractFilePath(ParamStr(0)) + 'printing_html_note.html'; 48 Lines.SaveToFile(HTMLfilename); //write the note to a file, 49 frmNotes.WebBrowser1.Navigate(HTMLfilename); //now navigate to file. 50 ActivateWebBrowser; 51 Status := frmNotes.WebBrowser1.QueryStatusWB(OLECMDID_PRINT); //"can you print?" -- get print command status 52 //Note: If I print multiple documents, I think there may be a problem if 53 // document #2 asks to print, and it is not yet done with doc #1 54 // As it is now, it will simply report an error. Solutions would 55 // be to wait a certain period of time and then ask for status again. 56 // OR, I could wait after printing until it is done.... 57 WaitForBrowserOK(10); //wait up to 10 seconds 58 if (Status and OLECMDF_ENABLED)>0 then begin 59 frmNotes.WebBrowser1.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_PROMPTUSER); 60 //Here I want to wait until it is done printing. 61 //Note: this doesn't do what I want. Status is immediately OK. 62 WaitForBrowserOK(10); //wait up to 10 seconds 233 Result := MidStr(Text,p1, p2-p1); 234 if Result[1] = '/' then Result := MidStr(Result,2,999); 235 i := Pos(' ',Result); 236 if i >0 then Result := MidStr(Result,1,i-1); 237 end; 238 239 var p1,p2: integer; 240 Tag : string; 241 begin 242 Result := False; //default to ignore 243 Text := UpperCase(Text); 244 if (Pos('&NBSP;',Text)>0) then Result := true 245 else if (Pos('<P>',Text)>0) then Result := true 246 else if (Pos('<BR>',Text)>0) then Result := true 247 else if (Pos('<HTML>',Text)>0) then Result := true 248 else begin 249 p1 := Pos('<',Text); if p1 = 0 then exit; 250 p2 := Pos('>',Text); if p2 = 0 then exit; 251 Tag := GetTag(p1,p2,Text); 252 if Tag='' then exit; 253 if Pos('/'+Tag+'>',Text)>0 then result := true; 254 end; 255 { 256 if (Pos('<BR>',Text)>0) or 257 (Pos('</P>',Text)>0) or 258 (Pos('<UL>',Text)>0) or 259 (Pos('</UL>',Text)>0) or 260 (Pos('<LI>',Text)>0) or 261 (Pos('</LI>',Text)>0) or 262 (Pos('<OL>',Text)>0) or 263 (Pos('</OL>',Text)>0) or 264 (Pos('&NBSP;',Text)>0) or 265 (Pos('<P>',Text)>0) then begin 266 Result := true; 267 end; 268 } 269 end; 270 271 272 function LineAfterTag(Lines : TStrings; Tag : string) : integer; 273 //returns index of line directly after tag (-1 if not found) 274 //Note: only 1st tag is found (stops looking after that) 275 var p,i : integer; 276 s,s1,s2 : string; 277 begin 278 result := -1; 279 Tag := UpperCase(Tag); 280 for i := 0 to Lines.Count-1 do begin 281 s := UpperCase(Lines.Strings[i]); 282 p := Pos(Tag,s); 283 if p=0 then continue; 284 if (p+length(Tag)-1) < length(s) then begin //extra stuff after tag on line --> split line 285 s1 := MidStr(Lines.Strings[i],1,p+length(Tag)-1); 286 s2 := MidStr(Lines.Strings[i],p+length(Tag),9999); 287 Lines.Strings[i] := s1; 288 Lines.Insert(i+1,s2); 289 end; 290 //Lines.Insert(i+1,''); 291 result := i+1; 292 break; 293 end; 294 end; 295 296 function LineBeforeTag(Lines : TStrings; Tag : string) : integer; 297 //returns index of newly added blank line, directly before tag (-1 if not found) 298 //Note: only 1st tag is found (stops looking after that) 299 var p,i,idx : integer; 300 s,s1,s2 : string; 301 begin 302 result := -1; 303 idx := -1; 304 Tag := UpperCase(Tag); 305 for i := 0 to Lines.Count-1 do begin 306 s := UpperCase(Lines.Strings[i]); 307 p := Pos(Tag,s); 308 if p>0 then begin 309 idx := i; 310 break; 311 end; 312 end; 313 if idx <> -1 then begin 314 p := Pos(Tag,UpperCase(Lines.Strings[idx])); 315 if p>1 then begin //extra stuff after tag on line --> split line 316 s1 := MidStr(Lines.Strings[idx],1,p-1); 317 s2 := MidStr(Lines.Strings[idx],p,9999); 318 Lines.Strings[idx] := s1; 319 Lines.Insert(idx+1,s2); 320 inc(idx); 321 end; 322 //Lines.Insert(idx-1,''); 323 result := idx; 324 end; 325 end; 326 327 procedure SplitLineAfterTag(Lines : TStrings; Tag : string); 328 //Purpose: To ensure that text that occurs after Tag is split and wrapped 329 // to the next line. 330 //Note: It is assumed that tag is in form of <TAGName> or <SomeReallyLongText... 331 // if a closing '>' is not provided in the tag name, then the part provided 332 // is used for matching, and then a search for the closing '>' is made, and 333 // the split will occur after that. 334 //Note: Only the first instance of Tag will be found, stops searching after that. 335 //Note: Tag beginning and ending MUST occur on same line (wrapping of a long tag NOT supported) 336 var i,p1,p2 : integer; 337 s,s1,s2 : string; 338 begin 339 Tag := UpperCase(Tag); 340 for i := 0 to Lines.Count-1 do begin 341 s := UpperCase(Lines.Strings[i]); 342 p1 := Pos(Tag,s); 343 if p1=0 then continue; 344 p2 := PosEx('>',s,p1); 345 if p2=0 then continue; //this is a problem, no closing '>' found... ignore for now. 346 if p2 = length(s) then break; 347 s1 := MidStr(Lines.Strings[i],1,p2); 348 S2 := MidStr(Lines.Strings[i],p2+1,999); 349 Lines.Strings[i] := s1; 350 Lines.Insert(i+1,s2); 351 break; 352 end; 353 end; 354 355 procedure SplitLineBeforeTag(Lines : TStrings; Tag : string); 356 //Purpose: To ensure that text that occurs before Tag is split and Tag 357 // is wrapped to the next line. 358 //Note: It is assumed that tag is in form of <TAGName> or <SomeReallyLongText... 359 //Note: Only the first instance of Tag will be found, stops searching after that. 360 var i,p1 : integer; 361 s1,s2 : string; 362 begin 363 Tag := UpperCase(Tag); 364 for i := 0 to Lines.Count-1 do begin 365 p1 := Pos(Tag,UpperCase(Lines.Strings[i])); 366 if p1=0 then continue; 367 s1 := MidStr(Lines.Strings[i],1,p1-1); 368 S2 := MidStr(Lines.Strings[i],p1,999); 369 Lines.Strings[i] := s1; 370 Lines.Insert(i+1,s2); 371 break; 372 end; 373 end; 374 375 function IndexOfHoldingLine(Lines : TStrings; Tag : string) : integer; 376 var i : integer; 377 s : string; 378 begin 379 result := -1; 380 Tag := UpperCase(Tag); 381 for i := 0 to Lines.Count-1 do begin 382 s := UpperCase(Lines.Strings[i]); 383 if Pos (Tag,s)=0 then continue; 384 result := i; 385 break; 386 end; 387 end; 388 389 procedure EnsureTrailingBR(Lines : TStrings); 390 var p,i : integer; 391 begin 392 for i := 0 to Lines.Count-1 do begin //Ensure each line ends with <BR> 393 p := Pos('<BR>',Lines.Strings[i]); 394 if p+3=length(Lines.Strings[i]) then continue; 395 Lines.Strings[i] := Lines.Strings[i] + '<BR>'; 396 end; 397 end; 398 399 procedure MergeLines(Lines,BeforeLines,AfterLines : TStrings); 400 var i : integer; 401 Result : TStringList; 402 begin 403 Result := TStringList.Create; 404 SplitLineAfterTag(Lines,'<!DOCTYPE HTML'); 405 SplitLineBeforeTag(Lines,'</BODY>'); 406 Result.Add(Lines.Strings[0]); //Should be line with <!DOCTYPE HTML... 407 for i := 0 to BeforeLines.Count-1 do begin //Add Before-Lines text 408 Result.Add(BeforeLines.Strings[i]); 409 end; 410 for i := 1 to Lines.Count-2 do begin //Add back regular lines text 411 Result.Add(Lines.Strings[i]); 412 end; 413 for i := 1 to AfterLines.Count-1 do begin //Add After-Lines text 414 Result.Add(AfterLines.Strings[i]); 415 end; 416 Result.Add(Lines.Strings[Lines.count-1]); //Should be '</BODY></HTML>' line 417 418 Lines.Assign(Result); 419 end; 420 421 procedure StripBeforeAfterHTML(Lines,OutBefore,OutAfter : TStrings); 422 //Purpose: Strip all text that comes before <!DOCTYPE ... line and store in OutBefore; 423 // Strip all text that comes after </HTML> ... line and store in OutAfter; 424 var i : integer; 425 DocTypeLine,EndHTMLLine: integer; 426 begin 427 OutBefore.Clear; 428 OutAfter.Clear; 429 DocTypeLine := IndexOfHoldingLine(Lines,'<!DOCTYPE HTML'); 430 if DocTypeLine>1 then begin 431 for i := 0 to DocTypeLine-1 do OutBefore.Add(Lines.Strings[i]); 432 for i := 0 to DocTypeLine-1 do Lines.Delete(0); 433 end; 434 EndHTMLLine := IndexOfHoldingLine(Lines,'</HTML>'); 435 if (EndHTMLLine>0) and (EndHTMLLine < (Lines.Count-1)) then begin 436 for i := EndHTMLLine+1 to Lines.Count-1 do OutAfter.Add(Lines.Strings[i]); 437 for i := EndHTMLLine+1 to Lines.Count-1 do Lines.Delete(EndHTMLLine+1); 438 end; 439 end; 440 441 Function FixHTMLCRLF(Text : String) : string; 442 begin 443 Result := AnsiReplaceText(Text,'<NO DATA>',#$1E); //protect sequences we want 444 Result := AnsiReplaceText(Result,'>'+CRLF,'>'#$1F); //protect sequences we want 445 Result := AnsiReplaceText(Result,CRLF,'<BR>'+CRLF); //Add <BR>'s to CrLf's 446 Result := AnsiReplaceText(Result,'>'#$1F,'>'+CRLF); //Restore sequences we wanted 447 Result := AnsiReplaceText(Result,#$1E,'<NO DATA>'); //Restore sequences we wanted 448 end; 449 450 451 procedure FixHTML(Lines : TStrings); //kt 6/20/09 452 //Purpose: to put header info that VistA adds to note into proper formatting. 453 var BeforeLines,AfterLines : TStringList; 454 begin 455 BeforeLines := TStringList.Create; 456 AfterLines := TStringList.Create; 457 StripBeforeAfterHTML(Lines,BeforeLines,AfterLines); 458 EnsureTrailingBR(BeforeLines); 459 if BeforeLines.Count>0 then begin //Wrap Before-Lines with formatting 460 BeforeLines.Insert(0,'<CODE>'); 461 //<---Existing text remains in between ---> 462 BeforeLines.Add('</CODE>'); 463 BeforeLines.Add('<HR><P>'); //horizontal line 464 end; 465 EnsureTrailingBR(AfterLines); 466 if AfterLines.Count > 0 then begin //Wrap After-Lines with formatting 467 AfterLines.Insert(0,'<P><CODE>'); 468 //<---Existing text remains in between ---> 469 AfterLines.Add('</CODE>'); 470 end; 471 MergeLines(Lines,BeforeLines,AfterLines); 472 BeforeLines.Free; 473 AfterLines.Free; 474 end; 475 476 procedure SplitToArray (HTMLText: string; Lines : TStrings); 477 var tempS : string; 478 InEscapeCode, InTagCode : boolean; 479 i, LastGoodBreakI : integer; 480 TagStart,TagEnd : integer; 481 TagText : string; 482 TextLen : integer; 483 MaxLineLen : integer; 484 begin 485 Lines.Clear; 486 MaxLineLen := 80; 487 Repeat 488 InEscapeCode := False; 489 InTagCode := False; 490 LastGoodBreakI := 0; 491 TextLen := length(HTMLText); 492 TagText := ''; 493 TagStart := 0; TagEnd := 0; 494 if TextLen > 80 then TextLen := MaxLineLen; 495 for i := 1 to TextLen do begin 496 if (HTMLText[i] = '<') then begin 497 InTagCode := True; 498 TagStart := i; 499 TagText := ''; 500 LastGoodBreakI := i-1; 501 end; 502 if (HTMLText[i] = '&') then begin 503 InEscapeCode := True; 504 LastGoodBreakI := i-1; 505 end; 506 if InEscapeCode and (HTMLText[i] = ';') then begin 507 InEscapeCode := False; 508 LastGoodBreakI := i; 509 end; 510 if InTagCode and (HTMLText[i] = '>') then begin 511 InTagCode := False; 512 TagEnd := i; 513 TagText := UpperCase(MidStr(HTMLText,TagStart+1,(TagEnd-TagStart-1))); 514 LastGoodBreakI := i; 515 end; 516 if (HTMLText[i] = ',') and (MaxLineLen > 80) then begin 517 LastGoodBreakI := i; 518 break; 519 end; 520 if (TagText='BR') or (TagText='/P') then begin 521 LastGoodBreakI := TagEnd; 522 break; 523 end else TagText := '';; 524 if (not InTagCode) and (not InEscapeCode) 525 and (HTMLText[i] = ' ') then LastGoodBreakI := i; 526 end; 527 if LastGoodBreakI > 0 then begin 528 tempS := MidStr(HTMLText,1,LastGoodBreakI); //get next 80 chars, or less if at the end. 529 HTMLText := Rightstr(HTMLText, length(HTMLText)- LastGoodBreakI); //characters 81 ... the end 530 Lines.Add(tempS); 63 531 end else begin 64 ErrMsg := 'The web browser reports being unable to print. Trying printing this document by itself.'; 65 end; 66 end; 67 finally 532 if MaxLineLen < 250 then begin 533 MaxLineLen := 250; //emergency mode 534 end else begin //i.e. couldn't find any break within 250 chars. So just chop off. 535 tempS := MidStr(HTMLText,1,80); 536 HTMLText := Rightstr(HTMLText, length(HTMLText)- 80); //characters 81 ... the end 537 Lines.Add(tempS); 538 end; 539 end; 540 until length(HTMLText)=0; 541 end; 542 543 544 function WrapHTML(HTMLText : string) : string; //kt 6/3/09 545 //Purpose: take HTML formatted text and sure it has proper headers and footers etc. 546 // i.e. 'wrap' partial HTML into formal format. 547 begin 548 if Pos('<BODY>',HTMLText)=0 then HTMLText := '<BODY>' + HTMLText; 549 if Pos('</BODY>',HTMLText)=0 then HTMLText := HTMLText + '</BODY>'; 550 if Pos('<HTML>',HTMLText)=0 then HTMLText := '<HTML>' + HTMLText; 551 if Pos('</HTML>',HTMLText)=0 then HTMLText := HTMLText + '</HTML>'; 552 if Pos('<!DOCTYPE HTML',HTMLText)=0 then begin 553 HTMLText := '<!DOCTYPE HTML PUBLIC "-//WC3//DTD HTML 3.2//EN">'+ #10#13 + HTMLText; 554 end; 555 result := HTMLText; 556 end; 557 558 function UnwrapHTML(HTMLText : string) : string; 559 //Purpose: take HTML formatted text and remove proper headers and footers etc. 560 // i.e. 'unwrap' formal HTML into partial HTML format. 561 begin 562 HTMLText := piece(HTMLText,'<HTML>',2); 563 HTMLText := piece(HTMLText,'</HTML>',1); 564 HTMLText := piece(HTMLText,'<BODY>',2); 565 HTMLText := piece(HTMLText,'</BODY>',1); 566 result := HTMLText; 567 end; 568 569 function CheckForImageLink(Lines: TStrings; ImageList : TStringList) : boolean; 570 {Purpose: To scan memNote memo for a link to an image. If found, return link(s) 571 input: none: 572 output: Will return a string list holding 1 or more links 573 Notes: Here will be the <img .. > format scanned for: 574 575 Here is some opening text... 576 <img src="http://www.geocities.com/kdtop3/OpenVistA.jpg" alt="Image Title 1"> 577 And here is some more text 578 <img src="http://www.geocities.com/kdtop3/OpenVistA_small.jpg" alt="Image Title 2"> 579 And the saga continues... 580 <img src="http://www.geocities.com/kdtop3/pics/Image100.gif" alt="Image Title 3"> 581 As with html, end-of-lines and white space is not preserved or significant 582 } 583 584 function GetBetween (var Text : AnsiString; OpenTag,CloseTag : string; 585 KeepTags : Boolean) : string; 586 {Purpose: Gets text between Open and Close tags. Removes any CR's or LF's 587 Input: Text - the text to work on. It IS changed as code is removed 588 KeepTags - true if want tag return in result 589 false if tag not in result (still is removed from Text) 590 Output: Text is changed. 591 Result=the code between the opening and closing tags 592 Note: Both OpenTag and CloseTag MUST be present for anything to happen. 593 } 594 595 procedure CutInThree(var Text : AnsiString; p1, p2 : Integer; var s1,s2,s3 : AnsiString); 596 {Purpose: Cut input string Text into 3 parts, with cut points given by p1 & p2. 597 p1 points to first character to be in s2 598 p2 points to last character to be in s2 } 599 begin 600 s1 := ''; s2 := ''; s3 := ''; 601 if p1 > 1 then s1 := MidStr(Text, 1, p1-1); 602 s2 := MidStr(Text, p1, p2-p1+1); 603 s3 := MidStr(Text, p2+1, Length(Text)-p2); 604 end; 605 606 var 607 p1,p2 : integer; 608 s1,s2,s3 : AnsiString; 609 68 610 begin 69 //any needed final code goes here. 70 end; 71 end; 72 end; 73 74 75 procedure WaitForBrowserOK(MaxSecDelay: integer); 76 var 77 CumulativeDelay : integer; 78 Status: OLECMDF; 79 MaxMSDelay: integer; 80 81 const 82 DelayStep = 1000; 83 begin 84 MaxMSDelay:=MaxSecDelay*1000; 85 CumulativeDelay := 0; 86 while ((Status and OLECMDF_ENABLED)<=0) and (CumulativeDelay < MaxMSDelay) do begin 87 sleep(DelayStep); 88 CumulativeDelay := CumulativeDelay + DelayStep; 89 Status := frmNotes.WebBrowser1.QueryStatusWB(OLECMDID_PRINT); //"can you print?" -- get print command status 90 //Beep; 91 end; 92 end; 93 94 95 Procedure ScanForSubs(Lines : TStrings); 96 //Purpose: To scan note for constant $CPRS$ and replace with CPRS's actual directory 97 var i : integer; 98 CPRSDir : string; 99 begin 100 for i := 0 to Lines.Count-1 do begin 101 if Pos('$CPRSDIR$',Lines.Strings[i])>0 then begin 102 CPRSDir := ExcludeTrailingPathDelimiter(ExtractFilePath(ParamStr(0))); 103 Lines.Strings[i] := AnsiReplaceStr(Lines.Strings[i],'$CPRSDIR$',CPRSDir); 104 //Ensure images are downloaded before passing page to web browser 105 frmImages.timLoadImagesTimer(nil); //only downloads 1 image each call 106 end; 107 end; 108 end; 109 110 111 //kt added following 5-2-05 112 function IsHTMLDocument(Lines : TStrings): boolean; 113 {purpose: To look at the note loaded into Lines and determine if it is 114 an HTML document. 115 Test used: if document contains <!DOCTYPE HTML" or <HTML> 116 This is not a fool-proof test... } 117 var 118 i:integer; s : string; 119 begin 120 i := 0; 121 Result := false; //default of false 122 while (i <= Lines.Count-1) do begin 123 s := UpperCase(Lines.Strings[i]); 124 if (Pos('<!DOCTYPE HTML',s) > 0) or (Pos('<HTML>',s) > 0) then begin 125 Result := true; 126 break; 127 end; 128 Inc(i); 129 end; 130 if Result = true then ScanForSubs(Lines); 131 end; 132 //kt end of addition from 5-2-05 133 134 135 procedure ActivateWebBrowser; 136 begin 137 with frmNotes do begin 138 MemNote.Lines.SaveToFile(HTMLfilename); //write the note to a file, 139 //kt I later delete the file on destruction of this form (on CPRS exiting) 140 WebBrowser1.Visible := true; 141 WebBrowser1.TabStop := true; 142 WebBrowser1.Navigate(HTMLfilename); //now navigate to file. 143 WebBrowser1.BringToFront; 144 memNote.Visible := false; 145 memNote.TabStop := false; 146 end; 147 end; 148 149 procedure ActivateMemo; 150 begin 151 with frmNotes do begin 152 WebBrowser1.Visible := false; 153 //WebBrowser1.Navigate('about:blank'); //if I leave this here, "Print Selected" doesn't work properly 154 //DeleteFile(HTMLfilename); //no error if file doesn't exist. 155 WebBrowser1.TabStop := false; 156 memNote.Visible := true; 157 memNote.TabStop := true; 158 memNote.BringToFront; 159 RedrawActivate(frmNotes.memNote.Handle); 160 end; 161 end; 162 163 164 165 //kt added the following 1/1/05 166 function CheckForImageLink(Lines: TStrings; ImageList : TStringList) : boolean; 167 {Purpose: To scan memNote memo for a link to an image. If found, return link(s) 168 input: none: 169 output: Will return a string list holding 1 or more links 170 Notes: Here will be the <img .. > format scanned for: 171 172 Here is some opening text... 173 <img src="http://www.geocities.com/kdtop3/OpenVistA.jpg" alt="Image Title 1"> 174 And here is some more text 175 <img src="http://www.geocities.com/kdtop3/OpenVistA_small.jpg" alt="Image Title 2"> 176 And the saga continues... 177 <img src="http://www.geocities.com/kdtop3/pics/Image100.gif" alt="Image Title 3"> 178 As with html, end-of-lines and white space is not preserved or significant 179 } 180 181 function GetBetween (var Text : AnsiString; OpenTag,CloseTag : string; 182 KeepTags : Boolean) : string; 183 {Purpose: Gets text between Open and Close tags. Removes any CR's or LF's 184 Input: Text - the text to work on. It IS changed as code is removed 185 KeepTags - true if want tag return in result 186 false if tag not in result (still is removed from Text) 187 Output: Text is changed. 188 Result=the code between the opening and closing tags 189 Note: Both OpenTag and CloseTag MUST be present for anything to happen. 190 } 191 192 procedure CutInThree(var Text : AnsiString; p1, p2 : Integer; var s1,s2,s3 : AnsiString); 193 {Purpose: Cut input string Text into 3 parts, with cut points given by p1 & p2. 194 p1 points to first character to be in s2 195 p2 points to last character to be in s2 } 196 begin 197 s1 := ''; s2 := ''; s3 := ''; 198 if p1 > 1 then s1 := MidStr(Text, 1, p1-1); 199 s2 := MidStr(Text, p1, p2-p1+1); 200 s3 := MidStr(Text, p2+1, Length(Text)-p2); 611 Result := ''; //default of no result. 612 613 p1 := Pos(UpperCase(OpenTag), UpperCase(Text)); 614 if (p1 > 0) then begin 615 p2 := Pos(UpperCase(CloseTag),UpperCase(Text)) + Length(CloseTag) -1; 616 if ((p2 > 0) and (p2 > p1)) then begin 617 CutInThree (Text, p1,p2, s1,Result,s3); 618 Text := s1+s3; 619 //Now, remove any CR's or LF's 620 repeat 621 p1 := Pos (Chr(13),Result); 622 if p1= 0 then p1 := Pos (Chr(10),Result); 623 if (p1 > 0) then begin 624 CutInThree (Result, p1,p1, s1,s2,s3); 625 Result := s1+s3; 626 // Text := MidStr(Text,1,p1-1) + MidStr(Text,p1+1,Length(Text)-p1); 627 end; 628 until (p1=0); 629 //Now cut off boundry tags if requested. 630 if not KeepTags then begin 631 p1 := Length(OpenTag) + 1; 632 p2 := Length (Result) - Length (CloseTag); 633 CutInThree (Result, p1,p2, s1,s2,s3); 634 Result := s2; 635 end; 636 end; 637 end; 201 638 end; 202 639 203 640 var 204 p1,p2 : integer; 205 s1,s2,s3 : AnsiString; 206 207 begin 208 Result := ''; //default of no result. 209 210 p1 := Pos(UpperCase(OpenTag), UpperCase(Text)); 211 if (p1 > 0) then begin 212 p2 := Pos(UpperCase(CloseTag),UpperCase(Text)) + Length(CloseTag) -1; 213 if ((p2 > 0) and (p2 > p1)) then begin 214 CutInThree (Text, p1,p2, s1,Result,s3); 215 Text := s1+s3; 216 //Now, remove any CR's or LF's 217 repeat 218 p1 := Pos (Chr(13),Result); 219 if p1= 0 then p1 := Pos (Chr(10),Result); 220 if (p1 > 0) then begin 221 CutInThree (Result, p1,p1, s1,s2,s3); 222 Result := s1+s3; 223 // Text := MidStr(Text,1,p1-1) + MidStr(Text,p1+1,Length(Text)-p1); 224 end; 225 until (p1=0); 226 //Now cut off boundry tags if requested. 227 if not KeepTags then begin 228 p1 := Length(OpenTag) + 1; 229 p2 := Length (Result) - Length (CloseTag); 230 CutInThree (Result, p1,p2, s1,s2,s3); 231 Result := s2; 232 end; 233 end; 234 end; 235 end; 236 237 var 238 Text : AnsiString; 239 Line : string; 240 241 begin 242 Result := false; //set default 243 if (ImageList <> nil) then begin 641 Text : AnsiString; 642 LineStr : string; 643 644 begin 645 Result := false; //set default 646 if (ImageList = nil) or (Lines = nil) then exit; 244 647 ImageList.Clear; //set default 245 648 Text := Lines.Text; //Get entire note into one long string 246 649 repeat 247 Line := GetBetween (Text, '<img', '>', true);248 if Line <> '' then begin249 ImageList.Add(Line );650 LineStr := GetBetween (Text, '<img', '>', true); 651 if LineStr <> '' then begin 652 ImageList.Add(LineStr); 250 653 Result := true; 251 654 end; 252 until Line = '';655 until LineStr = ''; 253 656 //Note: The following works, but need to replace removed links 254 657 // with "[Title]" Work on later... 255 658 //memNote.Lines.Text := Text; 256 659 end; 257 end; 258 259 260 660 661 function ProtectHTMLSpaces(Text : String) : string; 662 begin 663 Result := AnsiReplaceStr(Text, #9, ' '); 664 while Pos(' ',Result)>0 do begin //preserve whitespace 665 Result := AnsiReplaceStr(Result, ' ', ' '); 666 end; 667 end; 668 669 function Text2HTML(Lines : TStrings) : String; 670 //Purpose: Take plain text, and prep for viewing in HTML viewer. 671 //i.e. convert TABs into  's and add <br> at end of line etc. 672 var i : integer; 673 tempS : string; 674 begin 675 for i := 0 to Lines.Count-1 do begin 676 tempS := TrimRight(Lines.Strings[i]); 677 if i = Lines.Count-1 then tempS := tempS + '<P>' 678 else tempS := tempS + '<BR>'; 679 Lines.Strings[i] := tempS; 680 end; 681 Result := ProtectHTMLSpaces(Lines.Text) 682 end; 683 684 function Text2HTML(text : string) : String; overload; 685 var Lines : TStringList; 686 begin 687 Lines := TStringList.create; 688 Lines.Text := text; 689 Result := Text2HTML(Lines); 690 Lines.Free; 691 end; 692 693 type 694 TFontSizeData = record 695 case byte of 1: (Data : array[0..3] of byte); 696 2: (Size : byte; Filler : array[1..3] of byte); 697 end; 698 699 var 700 StoredFontSize : TFontSizeData; 701 FontSizeReg: TRegistry; 702 703 procedure SetRegHTMLFontSize(Size: byte); 704 //Purpose: To set the internet explorer Font Size value via the registry. 705 //Expected input: HTML_SMALLEST, HTML_SMALL, HTML_MEDIUM,HTML_LARGE, HTML_LARGEST 706 // Value should be 0 (smallest) - 4 (largest) 707 const HTML_BLANK : TFontSizeData =(Data: (0,0,0,0)); 708 var Value : TFontSizeData; 709 710 begin 711 if Size > 4 then Size := 4; 712 Value := HTML_BLANK; Value.Size := Size; 713 FontSizeReg := TRegistry.Create; //To be freed in RestoreRegHTMLFontSize 714 try 715 FontSizeReg.Rootkey := HKEY_CURRENT_USER; 716 if FontSizeReg.OpenKey('\Software\Microsoft\Internet Explorer\International\Scripts\3', False) then begin 717 FontSizeReg.ReadBinaryData('IEFontSize',StoredFontSize,Sizeof(StoredFontSize)); 718 FontSizeReg.WriteBinaryData('IEFontSize',Value,SizeOf(Value)); 719 end; 720 finally 721 end; 722 end; 723 724 procedure RestoreRegHTMLFontSize; 725 //Purpose: To restore the Internet Explorer zoom value to a stored value.. 726 //elh 6/19/09 727 begin 728 if not assigned(FontSizeReg) then FontSizeReg := TRegistry.Create; 729 try 730 FontSizeReg.WriteBinaryData('IEFontSize',StoredFontSize,SizeOf(StoredFontSize)); 731 finally 732 FontSizeReg.Free; 733 end; 734 end; 735 736 var 737 StoredIEHeader, StoredIEFooters : string; 738 Reg : TRegistry; 739 740 procedure SetupHTMLPrinting(Name,DOB,Location,Institution : string); 741 //Purpose: To open the IE header and footer registry keys, save the 742 //current value and then replace with passed patient data. elh 6/19/09 743 //NOTE: There does not seem to be any other way to do this programatically. 744 var NewHeader,NewFooter : string; 745 begin 746 if DesiredHTMLFontSize > 0 then begin 747 SetRegHTMLFontSize(DesiredHTMLFontSize-1); //Downsize by 1 step 748 end; 749 NewHeader := Location + ' &b ' + Institution + ' &b Printed: &d &t'; 750 NewFooter := Name + ' &b DOB: ' + DOB + ' &b &p of &P'; 751 Reg := TRegistry.Create; //to be freed in RestoreIEPrinting 752 try 753 Reg.Rootkey := HKEY_CURRENT_USER; 754 if Reg.OpenKey('\Software\Microsoft\Internet Explorer\PageSetup', False) then begin 755 StoredIEFooters := Reg.ReadString('footer'); 756 StoredIEHeader := Reg.ReadString('header'); 757 Reg.WriteString('header',NewHeader); 758 Reg.WriteString('footer',NewFooter); 759 end; 760 finally 761 end; 762 end; 763 764 procedure RestoreIEPrinting; 765 //Purpose: To restore the IE header and footer registry with the initial value 766 //elh 6/19/09 767 begin 768 if not assigned(Reg) then Reg := TRegistry.Create; 769 try 770 Reg.WriteString('footer',StoredIEFooters); 771 Reg.WriteString('header',StoredIEHeader); 772 RestoreRegHTMLFontSize; 773 finally 774 Reg.Free; 775 end; 776 end; 777 778 begin 779 DesiredHTMLFontSize := 2; //probably overwritten in fNotes initialization 261 780 end. -
cprs/branches/tmg-cprs/CPRS-Chart/rReports.pas
r453 r541 4 4 interface 5 5 6 uses Windows, SysUtils, Classes, ORNet, ORFn, ComCtrls, Chart, graphics; 6 uses 7 Windows, SysUtils, Classes, ORNet, ORFn, 8 Forms, //kt 8/09 9 ComCtrls, Chart, graphics; 7 10 8 11 { Consults } … … 47 50 aComponents: TStringlist; ARemoteSiteID, ARemoteQuery, AHSTag: string): TStrings; 48 51 procedure PrintWindowsReport(ARichEdit: TRichEdit; APageBreak, ATitle: string; 49 var ErrMsg: string);52 var ErrMsg: string; Application : TApplication); //kt 8/09 added Application 50 53 function DefaultToWindowsPrinter: Boolean; 51 54 procedure PrintGraph(GraphImage: TChart; PageTitle: string); … … 63 66 64 67 uses uCore, rCore, Printers, clipbrd, uReports, fReports, 68 rHTMLTools, //kt 8/09 65 69 DKLang //kt 66 70 ; … … 541 545 end; 542 546 543 procedure PrintWindowsReport(ARichEdit: TRichEdit; APageBreak, Atitle: string; var ErrMsg: string); 547 procedure PrintWindowsReport(ARichEdit: TRichEdit; APageBreak, Atitle: string; 548 var ErrMsg: string; 549 Application : TApplication //kt added 8/09 550 ); 544 551 var 545 552 i, j, x, y, LineHeight: integer; 546 553 aGoHead: string; 547 554 aHeader: TStringList; 555 Header,Footer,TempLines: TStringList; //kt added 8/09 556 IsHTML : Boolean; //kt added 8/09 557 548 558 const 549 559 //TX_ERR_CAP = 'Print Error'; <-- original line. //kt 8/20/2007 … … 566 576 end; 567 577 CreatePatientHeader(aHeader ,ATitle); 568 with ARichEdit do 569 begin 570 (* if Lines[Lines.Count - 1] = APageBreak then // remove trailing form feed 578 IsHTML := rHTMLTools.IsHTML(ARichEdit.Lines); //kt 8/09 579 if not IsHTML then begin //kt 8/09 580 with ARichEdit do begin 581 (* if Lines[Lines.Count - 1] = APageBreak then // remove trailing form feed 571 582 Lines.Delete(Lines.Count - 1); 572 583 while (Lines[0] = '') or (Lines[0] = APageBreak) do 573 584 Lines.Delete(0); // remove leading blank lines and form feeds*) 574 585 575 {v20.4 - SFC-0602-62899 - RV} 576 while (Lines.Count > 0) and ((Lines[Lines.Count - 1] = '') or (Lines[Lines.Count - 1] = APageBreak)) do 577 Lines.Delete(Lines.Count - 1); // remove trailing blank lines and form feeds 578 while (Lines.Count > 0) and ((Lines[0] = '') or (Lines[0] = APageBreak)) do 579 Lines.Delete(0); // remove leading blank lines and form feeds 580 581 if Lines.Count > 1 then 582 begin 583 (* i := Lines.IndexOf(APageBreak); 584 if ((i >= 0 ) and (i < Lines.Count - 1)) then // removed in v15.9 (RV) 585 begin*) 586 Printer.Canvas.Font.Size := TX_FONT_SIZE; 587 Printer.Canvas.Font.Name := TX_FONT_NAME; 588 Printer.Title := ATitle; 589 x := Trunc(Printer.Canvas.TextWidth(StringOfChar('=', TX_FONT_SIZE)) * 0.75); 590 LineHeight := Printer.Canvas.TextHeight(TX_FONT_NAME); 591 y := LineHeight * 5; // 5 lines = .83" top margin v15.9 (RV) 592 Printer.BeginDoc; 593 for i := 0 to Lines.Count - 1 do 594 begin 595 if Lines[i] = APageBreak then 596 begin 597 Printer.NewPage; 598 y := LineHeight * 5; // 5 lines = .83" top margin v15.9 (RV) 599 if aGoHead = '1' then 600 begin 601 for j := 0 to aHeader.Count - 1 do 602 begin 603 Printer.Canvas.TextOut(x, y, aHeader[j]); 604 y := y + LineHeight; 605 end; 606 end; 607 end 608 else 609 begin 610 Printer.Canvas.TextOut(x, y, Lines[i]); 611 y := y + LineHeight; 612 end; 613 end; 614 Printer.EndDoc; 615 (* end 616 else // removed in v15.9 (RV) TRichEdit.Print no longer used. 586 {v20.4 - SFC-0602-62899 - RV} 587 while (Lines.Count > 0) and ((Lines[Lines.Count - 1] = '') or (Lines[Lines.Count - 1] = APageBreak)) do 588 Lines.Delete(Lines.Count - 1); // remove trailing blank lines and form feeds 589 while (Lines.Count > 0) and ((Lines[0] = '') or (Lines[0] = APageBreak)) do 590 Lines.Delete(0); // remove leading blank lines and form feeds 591 592 if Lines.Count > 1 then begin 593 (* i := Lines.IndexOf(APageBreak); 594 if ((i >= 0 ) and (i < Lines.Count - 1)) then // removed in v15.9 (RV) 595 begin*) 596 Printer.Canvas.Font.Size := TX_FONT_SIZE; 597 Printer.Canvas.Font.Name := TX_FONT_NAME; 598 Printer.Title := ATitle; 599 x := Trunc(Printer.Canvas.TextWidth(StringOfChar('=', TX_FONT_SIZE)) * 0.75); 600 LineHeight := Printer.Canvas.TextHeight(TX_FONT_NAME); 601 y := LineHeight * 5; // 5 lines = .83" top margin v15.9 (RV) 602 Printer.BeginDoc; 603 for i := 0 to Lines.Count - 1 do begin 604 if Lines[i] = APageBreak then begin 605 Printer.NewPage; 606 y := LineHeight * 5; // 5 lines = .83" top margin v15.9 (RV) 607 if aGoHead = '1' then begin 608 for j := 0 to aHeader.Count - 1 do begin 609 Printer.Canvas.TextOut(x, y, aHeader[j]); 610 y := y + LineHeight; 611 end; 612 end; 613 end else begin 614 Printer.Canvas.TextOut(x, y, Lines[i]); 615 y := y + LineHeight; 616 end; 617 end; 618 Printer.EndDoc; 619 (* end 620 else // removed in v15.9 (RV) TRichEdit.Print no longer used. 617 621 try 618 622 Font.Size := TX_FONT_SIZE; … … 622 626 ErrMsg := TX_ERR_CAP; 623 627 end;*) 624 end 625 else if ARichEdit.Lines.Count = 1 then 628 end else if ARichEdit.Lines.Count = 1 then 626 629 if Piece(ARichEdit.Lines[0], U, 1) <> '0' then 627 630 ErrMsg := Piece(ARichEdit.Lines[0], U, 2); 628 631 end; 632 end else begin //kt added this entire block. 8/09 633 TempLines := TStringList.Create; 634 Header := TStringList.Create; 635 Footer := TStringList.Create; 636 TempLines.Assign(ARichEdit.Lines); 637 StripBeforeAfterHTML(TempLines,Header,Footer); 638 //LoadDocumentText(TempLines, FNote); //Get document without headers/footers 639 PrintHTMLReport(TempLines,ErrMsg, 640 Patient.Name, 641 FormatFMDateTime('mm/dd/yyyy', Patient.DOB), 642 Encounter.LocationName, Application); 643 TempLines.Free; 644 Header.Free; 645 Footer.Free; 646 end; //kt end of added block 8/09 629 647 aHeader.Free; 630 648 end; -
cprs/branches/tmg-cprs/CPRS-Chart/uReminders.pas
r453 r541 7 7 Windows, Messages, Classes, Controls, StdCtrls, SysUtils, ComCtrls, Menus, 8 8 Graphics, Forms, ORClasses, ORCtrls, ORDtTm, ORFn, ORNet, Dialogs, uPCE, uVitals, 9 TMGHTML2, //kt added 8/09 9 10 ExtCtrls, fDrawers, fDeviceSelect; 10 11 … … 289 290 Drawers: TFrmDrawers; 290 291 NewNoteRE: TRichEdit; 292 NewNoteHTMLE : THTMLObj; //kt 8/09 291 293 NoteList: TORListBox; 292 294 end;
Note:
See TracChangeset
for help on using the changeset viewer.