Bläddra i källkod

- Now all *_icon.lrs are in the 'icons' subdirectory
- Now all *.lpi has Debug and Release compilation modes (added 'automatically' with Lazarus)
- Now licence and readme are in the 'docs' subdirectory
- Added 'LoadFromFile' and 'SaveToFile' methods for some components
- Deleted DataType.inc, added the code directly in bgraimagemanipulation.pas, since no other unit is using it

lainz 11 år sedan
förälder
incheckning
ae867bcf36
44 ändrade filer med 583 tillägg och 80 borttagningar
  1. 0 2
      DataType.inc
  2. 2 4
      bcbutton.pas
  3. 1 1
      bcgamegrid.pas
  4. 1 1
      bcimagebutton.pas
  5. 41 4
      bclabel.pas
  6. 40 1
      bcpanel.pas
  7. 40 1
      bgraflashprogressbar.pas
  8. 1 1
      bgragraphiccontrol.pas
  9. 1 1
      bgraimagelist.pas
  10. 26 3
      bgraimagemanipulation.pas
  11. 40 1
      bgraknob.pas
  12. 40 1
      bgrashape.pas
  13. 1 1
      bgraspeedbutton.pas
  14. 1 1
      bgraspriteanimation.pas
  15. 2 2
      bgravirtualscreen.pas
  16. 0 0
      docs/COPYING.LGPL.txt
  17. 0 0
      docs/COPYING.modifiedLGPL.txt
  18. 0 0
      docs/readme.txt
  19. 0 0
      icons/bcbutton_icon.lrs
  20. 0 0
      icons/bcgamegrid_icon.lrs
  21. 0 0
      icons/bcimagebutton_icon.lrs
  22. 0 0
      icons/bclabel_icon.lrs
  23. 0 0
      icons/bcpanel_icon.lrs
  24. 0 0
      icons/bgraflashprogressbar_icon.lrs
  25. 0 0
      icons/bgragraphiccontrol_icon.lrs
  26. 0 0
      icons/bgraimagelist_icon.lrs
  27. 0 0
      icons/bgraimagemanipulation_icon.lrs
  28. 0 0
      icons/bgraknob_icon.lrs
  29. 0 0
      icons/bgrashape_icon.lrs
  30. 0 0
      icons/bgraspeedbutton_icon.lrs
  31. 0 0
      icons/bgraspriteanimation_icon.lrs
  32. 0 0
      icons/bgravirtualscreen_icon.lrs
  33. 17 4
      test/test_bccontrols/test_bcbutton/bcsample.lpi
  34. 22 3
      test/test_bccontrols/test_bccontrols/bctest.lpi
  35. 57 3
      test/test_bccontrols/test_bcfilters/test_bcfilters.lpi
  36. 22 3
      test/test_bccontrols/test_bcgamegrid/test_bcgamegrid.lpi
  37. 22 3
      test/test_bccontrols/test_bcimagebutton/test.lpi
  38. 22 3
      test/test_bccontrols/test_bcxbutton/test_bcxbutton.lpi
  39. 39 9
      test/test_bgracontrols/test_bgraimagemanipulation/ProjectBGRAImageManipulationDemo.lpi
  40. 57 3
      test/test_extra/effect_fading/fading.lpi
  41. 22 3
      test/test_extra/game_maze/testbgragame.lpi
  42. 18 5
      test/test_extra/game_puzzle/maparray.lpi
  43. 26 13
      test/test_extra/slicescaling_customdrawn_win7/test_customdrawn_win7.lpi
  44. 22 3
      test/test_extra/slicescaling_tachart/animatedemo.lpi

+ 0 - 2
DataType.inc

@@ -1,2 +0,0 @@
-type
-  TCoord = packed record
    x1 : LongInt;
    y1 : LongInt;
    x2 : LongInt;
    y2 : LongInt;
  end;

  TRatio = packed record
    Horizontal : LongInt;
    Vertical : LongInt;
  end;

  TCardinalDirection = (NORTH, SOUTH, WEST, EAST);
  TDirection = set of TCardinalDirection;

  TSizeLimits = packed record
    minWidth  : LongInt;
    maxWidth  : LongInt;
    minHeight : LongInt;
    maxHeight : LongInt;
  end;


+ 2 - 4
bcbutton.pas

@@ -333,7 +333,7 @@ end;
 
 procedure Register;
 begin
-  {$I bcbutton_icon.lrs}
+  {$I icons\bcbutton_icon.lrs}
   RegisterComponents('BGRA Controls', [TBCButton]);
   RegisterPropertyEditor(TypeInfo(Integer), TBCButton,
     'ImageIndex', TBCButtonImageIndexPropertyEditor);
@@ -1356,9 +1356,7 @@ end;
 procedure TCustomBCButton.OnFindClass(Reader: TReader;
   const AClassName: string; var ComponentClass: TComponentClass);
 begin
-  if CompareText(AClassName, 'TCustomBCButton') = 0 then
-    ComponentClass := TCustomBCButton
-  else if CompareText(AClassName, 'TBCButton') = 0 then
+  if CompareText(AClassName, 'TBCButton') = 0 then
     ComponentClass := TBCButton;
 end;
 

+ 1 - 1
bcgamegrid.pas

@@ -79,7 +79,7 @@ implementation
 
 procedure Register;
 begin
-  {$I bcgamegrid_icon.lrs}
+  {$I icons\bcgamegrid_icon.lrs}
   RegisterComponents('BGRA Controls', [TBCGameGrid]);
 end;
 

+ 1 - 1
bcimagebutton.pas

@@ -249,7 +249,7 @@ implementation
 
 procedure Register;
 begin
-  {$I bcimagebutton_icon.lrs}
+  {$I icons\bcimagebutton_icon.lrs}
   RegisterComponents('BGRA Controls', [TBCImageButton]);
   RegisterComponents('BGRA Controls', [TBCXButton]);
 end;

+ 41 - 4
bclabel.pas

@@ -91,8 +91,12 @@ type
     constructor Create(AOwner: TComponent); override;
     destructor Destroy; override;
     procedure UpdateControl; override; // Called by EndUpdate
-  published
-    { Published declarations }
+  public
+    { Streaming }
+    procedure SaveToFile(AFileName: string);
+    procedure LoadFromFile(AFileName: string);
+    procedure OnFindClass(Reader: TReader; const AClassName: string;
+      var ComponentClass: TComponentClass);
   end;
 
   { TBCLabel }
@@ -134,7 +138,7 @@ uses BCTools;
 
 procedure Register;
 begin
-  {$I bclabel_icon.lrs}
+  {$I icons\bclabel_icon.lrs}
   RegisterComponents('BGRA Controls',[TBCLabel]);
 end;
 
@@ -278,6 +282,39 @@ begin
   inherited UpdateControl; // invalidate
 end;
 
+procedure TCustomBCLabel.SaveToFile(AFileName: string);
+var
+  AStream: TMemoryStream;
+begin
+  AStream := TMemoryStream.Create;
+  try
+    WriteComponentAsTextToStream(AStream, Self);
+    AStream.SaveToFile(AFileName);
+  finally
+    AStream.Free;
+  end;
+end;
+
+procedure TCustomBCLabel.LoadFromFile(AFileName: string);
+var
+  AStream: TMemoryStream;
+begin
+  AStream := TMemoryStream.Create;
+  try
+    AStream.LoadFromFile(AFileName);
+    ReadComponentFromTextStream(AStream, TComponent(Self), @OnFindClass);
+  finally
+    AStream.Free;
+  end;
+end;
+
+procedure TCustomBCLabel.OnFindClass(Reader: TReader; const AClassName: string;
+  var ComponentClass: TComponentClass);
+begin
+  if CompareText(AClassName, 'TBCLabel') = 0 then
+    ComponentClass := TBCLabel;
+end;
+
 constructor TCustomBCLabel.Create(AOwner: TComponent);
 begin
   inherited Create(AOwner);
@@ -324,4 +361,4 @@ begin
   inherited Destroy;
 end;
 
-end.
+end.

+ 40 - 1
bcpanel.pas

@@ -108,6 +108,12 @@ type
     constructor Create(TheOwner: TComponent); override;
     destructor Destroy; override;
     procedure UpdateControl; override; // Called by EndUpdate
+  public
+    { Streaming }
+    procedure SaveToFile(AFileName: string);
+    procedure LoadFromFile(AFileName: string);
+    procedure OnFindClass(Reader: TReader; const AClassName: string;
+      var ComponentClass: TComponentClass);
   end;
 
   { TBCPanel }
@@ -174,7 +180,7 @@ uses BCTools;
 
 procedure Register;
 begin
-  {$I bcpanel_icon.lrs}
+  {$I icons\bcpanel_icon.lrs}
   RegisterComponents('BGRA Controls', [TBCPanel]);
 end;
 
@@ -448,4 +454,37 @@ begin
   inherited UpdateControl; // invalidate
 end;
 
+procedure TCustomBCPanel.SaveToFile(AFileName: string);
+var
+  AStream: TMemoryStream;
+begin
+  AStream := TMemoryStream.Create;
+  try
+    WriteComponentAsTextToStream(AStream, Self);
+    AStream.SaveToFile(AFileName);
+  finally
+    AStream.Free;
+  end;
+end;
+
+procedure TCustomBCPanel.LoadFromFile(AFileName: string);
+var
+  AStream: TMemoryStream;
+begin
+  AStream := TMemoryStream.Create;
+  try
+    AStream.LoadFromFile(AFileName);
+    ReadComponentFromTextStream(AStream, TComponent(Self), @OnFindClass);
+  finally
+    AStream.Free;
+  end;
+end;
+
+procedure TCustomBCPanel.OnFindClass(Reader: TReader; const AClassName: string;
+  var ComponentClass: TComponentClass);
+begin
+  if CompareText(AClassName, 'TBCPanel') = 0 then
+    ComponentClass := TBCPanel;
+end;
+
 end.

+ 40 - 1
bgraflashprogressbar.pas

@@ -33,6 +33,12 @@ type
     { Public declarations }
     constructor Create(AOwner: TComponent); override;
     destructor Destroy; override;
+  public
+    { Streaming }
+    procedure SaveToFile(AFileName: string);
+    procedure LoadFromFile(AFileName: string);
+    procedure OnFindClass(Reader: TReader; const AClassName: string;
+      var ComponentClass: TComponentClass);
   published
     { Published declarations }
     property Align;
@@ -57,7 +63,7 @@ uses BGRABitmapTypes, BGRAGradients, Types;
 
 procedure Register;
 begin
-  {$I bgraflashprogressbar_icon.lrs}
+  {$I icons\bgraflashprogressbar_icon.lrs}
   RegisterComponents('BGRA Controls', [TBGRAFlashProgressBar]);
 end;
 
@@ -207,6 +213,39 @@ begin
   inherited Destroy;
 end;
 
+procedure TBGRAFlashProgressBar.SaveToFile(AFileName: string);
+var
+  AStream: TMemoryStream;
+begin
+  AStream := TMemoryStream.Create;
+  try
+    WriteComponentAsTextToStream(AStream, Self);
+    AStream.SaveToFile(AFileName);
+  finally
+    AStream.Free;
+  end;
+end;
+
+procedure TBGRAFlashProgressBar.LoadFromFile(AFileName: string);
+var
+  AStream: TMemoryStream;
+begin
+  AStream := TMemoryStream.Create;
+  try
+    AStream.LoadFromFile(AFileName);
+    ReadComponentFromTextStream(AStream, TComponent(Self), @OnFindClass);
+  finally
+    AStream.Free;
+  end;
+end;
+
+procedure TBGRAFlashProgressBar.OnFindClass(Reader: TReader;
+  const AClassName: string; var ComponentClass: TComponentClass);
+begin
+  if CompareText(AClassName, 'TBGRAFlashProgressBar') = 0 then
+    ComponentClass := TBGRAFlashProgressBar;
+end;
+
 procedure TBGRAFlashProgressBar.SetMaxValue(const AValue: integer);
 begin
   if FMaxValue = AValue then

+ 1 - 1
bgragraphiccontrol.pas

@@ -74,7 +74,7 @@ uses BGRABitmapTypes, Types;
 
 procedure Register;
 begin
-  {$I bgragraphiccontrol_icon.lrs}
+  {$I icons\bgragraphiccontrol_icon.lrs}
   RegisterComponents('BGRA Controls', [TBGRAGraphicControl]);
 end;
 

+ 1 - 1
bgraimagelist.pas

@@ -79,7 +79,7 @@ implementation
 
 procedure Register;
 begin
-  {$I bgraimagelist_icon.lrs}
+  {$I icons\bgraimagelist_icon.lrs}
   RegisterComponents('BGRA Controls', [TBGRAImageList]);
 end;
 

+ 26 - 3
bgraimagemanipulation.pas

@@ -64,6 +64,9 @@ unit BGRAImageManipulation;
              - Add multi crop areas
              - Add get Bitmap not resampled (original scale)
 
+  2014-08-04 - lainz-007-
+             - Included DataType.inc inside the unit
+
   ============================================================================
 }
 
@@ -75,9 +78,29 @@ uses
   Classes, Contnrs, SysUtils, LResources, Forms, Controls, BGRABitmap, BGRABitmapTypes,
   Graphics, Dialogs, LCLIntf, BGRAGradientScanner;
 
-{$INCLUDE DataType.inc}
-
 type
+  TCoord = packed record
+    x1 : LongInt;
+    y1 : LongInt;
+    x2 : LongInt;
+    y2 : LongInt;
+  end;
+
+  TRatio = packed record
+    Horizontal : LongInt;
+    Vertical : LongInt;
+  end;
+
+  TCardinalDirection = (NORTH, SOUTH, WEST, EAST);
+  TDirection = set of TCardinalDirection;
+
+  TSizeLimits = packed record
+    minWidth  : LongInt;
+    maxWidth  : LongInt;
+    minHeight : LongInt;
+    maxHeight : LongInt;
+  end;
+
   TBGRAImageManipulation = class;
 
   { TCropArea }
@@ -2639,7 +2662,7 @@ end;
 
 procedure Register;
 begin
-  {$I BGRAImageManipulation_icon.lrs}
+  {$I icons\BGRAImageManipulation_icon.lrs}
   RegisterComponents('BGRA Controls', [TBGRAImageManipulation]);
 end;
 

+ 40 - 1
bgraknob.pas

@@ -64,6 +64,12 @@ type
     { Public declarations }
     constructor Create(AOwner: TComponent); override;
     destructor Destroy; override;
+  public
+    { Streaming }
+    procedure SaveToFile(AFileName: string);
+    procedure LoadFromFile(AFileName: string);
+    procedure OnFindClass(Reader: TReader; const AClassName: string;
+      var ComponentClass: TComponentClass);
   published
     { Published declarations }
     property Anchors;
@@ -94,7 +100,7 @@ uses Math;
 
 procedure Register;
 begin
-  {$I bgraknob_icon.lrs}
+  {$I icons\bgraknob_icon.lrs}
   RegisterComponents('BGRA Controls', [TBGRAKnob]);
 end;
 
@@ -478,5 +484,38 @@ begin
   inherited Destroy;
 end;
 
+procedure TBGRAKnob.SaveToFile(AFileName: string);
+var
+  AStream: TMemoryStream;
+begin
+  AStream := TMemoryStream.Create;
+  try
+    WriteComponentAsTextToStream(AStream, Self);
+    AStream.SaveToFile(AFileName);
+  finally
+    AStream.Free;
+  end;
+end;
+
+procedure TBGRAKnob.LoadFromFile(AFileName: string);
+var
+  AStream: TMemoryStream;
+begin
+  AStream := TMemoryStream.Create;
+  try
+    AStream.LoadFromFile(AFileName);
+    ReadComponentFromTextStream(AStream, TComponent(Self), @OnFindClass);
+  finally
+    AStream.Free;
+  end;
+end;
+
+procedure TBGRAKnob.OnFindClass(Reader: TReader; const AClassName: string;
+  var ComponentClass: TComponentClass);
+begin
+  if CompareText(AClassName, 'TBGRAKnob') = 0 then
+    ComponentClass := TBGRAKnob;
+end;
+
 end.
 

+ 40 - 1
bgrashape.pas

@@ -57,6 +57,12 @@ type
     { Public declarations }
     constructor Create(AOwner: TComponent); override;
     destructor Destroy; override;
+  public
+    { Streaming }
+    procedure SaveToFile(AFileName: string);
+    procedure LoadFromFile(AFileName: string);
+    procedure OnFindClass(Reader: TReader; const AClassName: string;
+      var ComponentClass: TComponentClass);
   published
     { Published declarations }
     property AutoSize;
@@ -104,7 +110,7 @@ uses BCTools;
 
 procedure Register;
 begin
-  {$I bgrashape_icon.lrs}
+  {$I icons\bgrashape_icon.lrs}
   RegisterComponents('BGRA Controls', [TBGRAShape]);
 end;
 
@@ -391,4 +397,37 @@ begin
   inherited Destroy;
 end;
 
+procedure TBGRAShape.SaveToFile(AFileName: string);
+var
+  AStream: TMemoryStream;
+begin
+  AStream := TMemoryStream.Create;
+  try
+    WriteComponentAsTextToStream(AStream, Self);
+    AStream.SaveToFile(AFileName);
+  finally
+    AStream.Free;
+  end;
+end;
+
+procedure TBGRAShape.LoadFromFile(AFileName: string);
+var
+  AStream: TMemoryStream;
+begin
+  AStream := TMemoryStream.Create;
+  try
+    AStream.LoadFromFile(AFileName);
+    ReadComponentFromTextStream(AStream, TComponent(Self), @OnFindClass);
+  finally
+    AStream.Free;
+  end;
+end;
+
+procedure TBGRAShape.OnFindClass(Reader: TReader; const AClassName: string;
+  var ComponentClass: TComponentClass);
+begin
+  if CompareText(AClassName, 'TBGRAShape') = 0 then
+    ComponentClass := TBGRAShape;
+end;
+
 end.

+ 1 - 1
bgraspeedbutton.pas

@@ -79,7 +79,7 @@ implementation
 
 procedure Register;
 begin
-  {$I bgraspeedbutton_icon.lrs}
+  {$I icons\bgraspeedbutton_icon.lrs}
   RegisterComponents('BGRA Controls', [TBGRASpeedButton]);
 end;
 

+ 1 - 1
bgraspriteanimation.pas

@@ -133,7 +133,7 @@ implementation
 
 procedure Register;
 begin
-  {$I bgraspriteanimation_icon.lrs}
+  {$I icons\bgraspriteanimation_icon.lrs}
   RegisterComponents('BGRA Controls', [TBGRASpriteAnimation]);
 end;
 

+ 2 - 2
bgravirtualscreen.pas

@@ -121,7 +121,7 @@ uses BGRABitmapTypes, Types;
 
 procedure Register;
 begin
-  {$I bgravirtualscreen_icon.lrs}
+  {$I icons\bgravirtualscreen_icon.lrs}
   RegisterComponents('BGRA Controls', [TBGRAVirtualScreen]);
 end;
 
@@ -292,4 +292,4 @@ begin
   inherited Destroy;
 end;
 
-end.
+end.

+ 0 - 0
COPYING.LGPL.txt → docs/COPYING.LGPL.txt


+ 0 - 0
COPYING.modifiedLGPL.txt → docs/COPYING.modifiedLGPL.txt


+ 0 - 0
readme.txt → docs/readme.txt


+ 0 - 0
bcbutton_icon.lrs → icons/bcbutton_icon.lrs


+ 0 - 0
bcgamegrid_icon.lrs → icons/bcgamegrid_icon.lrs


+ 0 - 0
bcimagebutton_icon.lrs → icons/bcimagebutton_icon.lrs


+ 0 - 0
bclabel_icon.lrs → icons/bclabel_icon.lrs


+ 0 - 0
bcpanel_icon.lrs → icons/bcpanel_icon.lrs


+ 0 - 0
bgraflashprogressbar_icon.lrs → icons/bgraflashprogressbar_icon.lrs


+ 0 - 0
bgragraphiccontrol_icon.lrs → icons/bgragraphiccontrol_icon.lrs


+ 0 - 0
bgraimagelist_icon.lrs → icons/bgraimagelist_icon.lrs


+ 0 - 0
bgraimagemanipulation_icon.lrs → icons/bgraimagemanipulation_icon.lrs


+ 0 - 0
bgraknob_icon.lrs → icons/bgraknob_icon.lrs


+ 0 - 0
bgrashape_icon.lrs → icons/bgrashape_icon.lrs


+ 0 - 0
bgraspeedbutton_icon.lrs → icons/bgraspeedbutton_icon.lrs


+ 0 - 0
bgraspriteanimation_icon.lrs → icons/bgraspriteanimation_icon.lrs


+ 0 - 0
bgravirtualscreen_icon.lrs → icons/bgravirtualscreen_icon.lrs


+ 17 - 4
test/test_bccontrols/test_bcbutton/bcsample.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -18,7 +18,7 @@
     </VersionInfo>
     <BuildModes Count="2">
       <Item1 Name="Debug" Default="True"/>
-      <Item2 Name="Test">
+      <Item2 Name="Release">
         <CompilerOptions>
           <Version Value="11"/>
           <PathDelim Value="\"/>
@@ -32,14 +32,12 @@
           <CodeGeneration>
             <SmartLinkUnit Value="True"/>
             <Optimizations>
-              <VariablesInRegisters Value="True"/>
               <OptimizationLevel Value="3"/>
             </Optimizations>
           </CodeGeneration>
           <Linking>
             <Debugging>
               <GenerateDebugInfo Value="False"/>
-              <StripSymbols Value="True"/>
             </Debugging>
             <LinkSmart Value="True"/>
             <Options>
@@ -101,9 +99,24 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+    </CodeGeneration>
     <Linking>
       <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
         <UseHeaptrc Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
       </Debugging>
       <Options>
         <Win32>

+ 22 - 3
test/test_bccontrols/test_bccontrols/bctest.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -21,7 +21,7 @@
     </VersionInfo>
     <BuildModes Count="2">
       <Item1 Name="Debug" Default="True"/>
-      <Item2 Name="Test">
+      <Item2 Name="Release">
         <CompilerOptions>
           <Version Value="11"/>
           <PathDelim Value="\"/>
@@ -35,8 +35,8 @@
           <CodeGeneration>
             <SmartLinkUnit Value="True"/>
             <Optimizations>
-              <VariablesInRegisters Value="True"/>
               <OptimizationLevel Value="3"/>
+              <VariablesInRegisters Value="True"/>
             </Optimizations>
           </CodeGeneration>
           <Linking>
@@ -109,9 +109,28 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+      <Optimizations>
+        <VariablesInRegisters Value="True"/>
+      </Optimizations>
+    </CodeGeneration>
     <Linking>
       <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
         <UseHeaptrc Value="True"/>
+        <StripSymbols Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
       </Debugging>
       <Options>
         <Win32>

+ 57 - 3
test/test_bccontrols/test_bcfilters/test_bcfilters.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -16,8 +16,44 @@
     <VersionInfo>
       <StringTable ProductVersion=""/>
     </VersionInfo>
-    <BuildModes Count="1">
-      <Item1 Name="Default" Default="True"/>
+    <BuildModes Count="2">
+      <Item1 Name="Debug" Default="True"/>
+      <Item2 Name="Release">
+        <CompilerOptions>
+          <Version Value="11"/>
+          <PathDelim Value="\"/>
+          <Target>
+            <Filename Value="test_bcfilters"/>
+          </Target>
+          <SearchPaths>
+            <IncludeFiles Value="$(ProjOutDir)"/>
+            <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
+          </SearchPaths>
+          <CodeGeneration>
+            <SmartLinkUnit Value="True"/>
+            <Optimizations>
+              <OptimizationLevel Value="3"/>
+            </Optimizations>
+          </CodeGeneration>
+          <Linking>
+            <Debugging>
+              <GenerateDebugInfo Value="False"/>
+            </Debugging>
+            <LinkSmart Value="True"/>
+            <Options>
+              <Win32>
+                <GraphicApplication Value="True"/>
+              </Win32>
+            </Options>
+          </Linking>
+          <Other>
+            <CompilerMessages>
+              <MsgFileName Value=""/>
+            </CompilerMessages>
+            <CompilerPath Value="$(CompPath)"/>
+          </Other>
+        </CompilerOptions>
+      </Item2>
     </BuildModes>
     <PublishOptions>
       <Version Value="2"/>
@@ -63,7 +99,25 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+    </CodeGeneration>
     <Linking>
+      <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
+        <UseHeaptrc Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
+      </Debugging>
       <Options>
         <Win32>
           <GraphicApplication Value="True"/>

+ 22 - 3
test/test_bccontrols/test_bcgamegrid/test_bcgamegrid.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -18,7 +18,7 @@
     </VersionInfo>
     <BuildModes Count="2">
       <Item1 Name="Debug" Default="True"/>
-      <Item2 Name="Test">
+      <Item2 Name="Release">
         <CompilerOptions>
           <Version Value="11"/>
           <PathDelim Value="\"/>
@@ -32,8 +32,8 @@
           <CodeGeneration>
             <SmartLinkUnit Value="True"/>
             <Optimizations>
-              <VariablesInRegisters Value="True"/>
               <OptimizationLevel Value="3"/>
+              <VariablesInRegisters Value="True"/>
             </Optimizations>
           </CodeGeneration>
           <Linking>
@@ -101,9 +101,28 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+      <Optimizations>
+        <VariablesInRegisters Value="True"/>
+      </Optimizations>
+    </CodeGeneration>
     <Linking>
       <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
         <UseHeaptrc Value="True"/>
+        <StripSymbols Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
       </Debugging>
       <Options>
         <Win32>

+ 22 - 3
test/test_bccontrols/test_bcimagebutton/test.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -18,7 +18,7 @@
     </VersionInfo>
     <BuildModes Count="2">
       <Item1 Name="Debug" Default="True"/>
-      <Item2 Name="Test">
+      <Item2 Name="Release">
         <CompilerOptions>
           <Version Value="11"/>
           <PathDelim Value="\"/>
@@ -32,8 +32,8 @@
           <CodeGeneration>
             <SmartLinkUnit Value="True"/>
             <Optimizations>
-              <VariablesInRegisters Value="True"/>
               <OptimizationLevel Value="3"/>
+              <VariablesInRegisters Value="True"/>
             </Optimizations>
           </CodeGeneration>
           <Linking>
@@ -101,9 +101,28 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+      <Optimizations>
+        <VariablesInRegisters Value="True"/>
+      </Optimizations>
+    </CodeGeneration>
     <Linking>
       <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
         <UseHeaptrc Value="True"/>
+        <StripSymbols Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
       </Debugging>
       <Options>
         <Win32>

+ 22 - 3
test/test_bccontrols/test_bcxbutton/test_bcxbutton.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -18,7 +18,7 @@
     </VersionInfo>
     <BuildModes Count="2">
       <Item1 Name="Debug" Default="True"/>
-      <Item2 Name="Test">
+      <Item2 Name="Release">
         <CompilerOptions>
           <Version Value="11"/>
           <PathDelim Value="\"/>
@@ -32,8 +32,8 @@
           <CodeGeneration>
             <SmartLinkUnit Value="True"/>
             <Optimizations>
-              <VariablesInRegisters Value="True"/>
               <OptimizationLevel Value="3"/>
+              <VariablesInRegisters Value="True"/>
             </Optimizations>
           </CodeGeneration>
           <Linking>
@@ -101,9 +101,28 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+      <Optimizations>
+        <VariablesInRegisters Value="True"/>
+      </Optimizations>
+    </CodeGeneration>
     <Linking>
       <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
         <UseHeaptrc Value="True"/>
+        <StripSymbols Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
       </Debugging>
       <Options>
         <Win32>

+ 39 - 9
test/test_bgracontrols/test_bgraimagemanipulation/ProjectBGRAImageManipulationDemo.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -20,9 +20,9 @@
       <MinorVersionNr Value="2"/>
       <StringTable ProductVersion=""/>
     </VersionInfo>
-    <BuildModes Count="2" Active="Test">
+    <BuildModes Count="2" Active="Release">
       <Item1 Name="Debug" Default="True"/>
-      <Item2 Name="Test">
+      <Item2 Name="Release">
         <CompilerOptions>
           <Version Value="11"/>
           <Target>
@@ -35,8 +35,8 @@
           <CodeGeneration>
             <SmartLinkUnit Value="True"/>
             <Optimizations>
-              <VariablesInRegisters Value="True"/>
               <OptimizationLevel Value="3"/>
+              <VariablesInRegisters Value="True"/>
             </Optimizations>
           </CodeGeneration>
           <Linking>
@@ -79,7 +79,7 @@
         <PackageName Value="LCL"/>
       </Item2>
     </RequiredPackages>
-    <Units Count="37">
+    <Units Count="38">
       <Unit0>
         <Filename Value="ProjectBGRAImageManipulationDemo.lpr"/>
         <IsPartOfProject Value="True"/>
@@ -100,7 +100,7 @@
         <EditorIndex Value="0"/>
         <WindowIndex Value="0"/>
         <TopLine Value="25"/>
-        <CursorPos X="25" Y="36"/>
+        <CursorPos X="35" Y="44"/>
         <UsageCount Value="228"/>
         <Loaded Value="True"/>
         <LoadedDesigner Value="True"/>
@@ -254,7 +254,7 @@
         <UsageCount Value="9"/>
       </Unit17>
       <Unit18>
-        <Filename Value="../../../../../../../emerson/Projects/Morey/AccessControlServer/trunk/projectaccesscontrolserver.lpr"/>
+        <Filename Value="../../../../../emerson/Projects/Morey/AccessControlServer/trunk/projectaccesscontrolserver.lpr"/>
         <UnitName Value="projectaccesscontrolserver"/>
         <WindowIndex Value="0"/>
         <TopLine Value="1"/>
@@ -262,7 +262,7 @@
         <UsageCount Value="5"/>
       </Unit18>
       <Unit19>
-        <Filename Value="../../../../../../../emerson/Projects/Morey/AccessControlServer/trunk/library/synaser/synafpc.pas"/>
+        <Filename Value="../../../../../emerson/Projects/Morey/AccessControlServer/trunk/library/synaser/synafpc.pas"/>
         <UnitName Value="synafpc"/>
         <WindowIndex Value="0"/>
         <TopLine Value="96"/>
@@ -270,7 +270,7 @@
         <UsageCount Value="2"/>
       </Unit19>
       <Unit20>
-        <Filename Value="../../../../../../../emerson/Projects/Morey/AccessControlServer/trunk/library/synaser/synaser.pas"/>
+        <Filename Value="../../../../../emerson/Projects/Morey/AccessControlServer/trunk/library/synaser/synaser.pas"/>
         <UnitName Value="synaser"/>
         <WindowIndex Value="0"/>
         <TopLine Value="2145"/>
@@ -411,6 +411,16 @@
         <CursorPos X="1" Y="1"/>
         <UsageCount Value="34"/>
       </Unit36>
+      <Unit37>
+        <Filename Value="../../../bgraimagemanipulation.pas"/>
+        <UnitName Value="BGRAImageManipulation"/>
+        <EditorIndex Value="1"/>
+        <WindowIndex Value="0"/>
+        <TopLine Value="61"/>
+        <CursorPos X="29" Y="68"/>
+        <UsageCount Value="10"/>
+        <Loaded Value="True"/>
+      </Unit37>
     </Units>
     <JumpHistory Count="2" HistoryIndex="1">
       <Position1>
@@ -432,9 +442,28 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib/$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+      <Optimizations>
+        <VariablesInRegisters Value="True"/>
+      </Optimizations>
+    </CodeGeneration>
     <Linking>
       <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
         <UseHeaptrc Value="True"/>
+        <StripSymbols Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
       </Debugging>
       <Options>
         <Win32>
@@ -462,4 +491,5 @@
       </Item3>
     </Exceptions>
   </Debugging>
+  <EditorMacros Count="0"/>
 </CONFIG>

+ 57 - 3
test/test_extra/effect_fading/fading.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -16,8 +16,44 @@
     <VersionInfo>
       <StringTable ProductVersion=""/>
     </VersionInfo>
-    <BuildModes Count="1">
-      <Item1 Name="Default" Default="True"/>
+    <BuildModes Count="2">
+      <Item1 Name="Debug" Default="True"/>
+      <Item2 Name="Release">
+        <CompilerOptions>
+          <Version Value="11"/>
+          <PathDelim Value="\"/>
+          <Target>
+            <Filename Value="fading"/>
+          </Target>
+          <SearchPaths>
+            <IncludeFiles Value="$(ProjOutDir)"/>
+            <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
+          </SearchPaths>
+          <CodeGeneration>
+            <SmartLinkUnit Value="True"/>
+            <Optimizations>
+              <OptimizationLevel Value="3"/>
+            </Optimizations>
+          </CodeGeneration>
+          <Linking>
+            <Debugging>
+              <GenerateDebugInfo Value="False"/>
+            </Debugging>
+            <LinkSmart Value="True"/>
+            <Options>
+              <Win32>
+                <GraphicApplication Value="True"/>
+              </Win32>
+            </Options>
+          </Linking>
+          <Other>
+            <CompilerMessages>
+              <MsgFileName Value=""/>
+            </CompilerMessages>
+            <CompilerPath Value="$(CompPath)"/>
+          </Other>
+        </CompilerOptions>
+      </Item2>
     </BuildModes>
     <PublishOptions>
       <Version Value="2"/>
@@ -63,7 +99,25 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+    </CodeGeneration>
     <Linking>
+      <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
+        <UseHeaptrc Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
+      </Debugging>
       <Options>
         <Win32>
           <GraphicApplication Value="True"/>

+ 22 - 3
test/test_extra/game_maze/testbgragame.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -21,7 +21,7 @@
     </VersionInfo>
     <BuildModes Count="2">
       <Item1 Name="Debug" Default="True"/>
-      <Item2 Name="Test">
+      <Item2 Name="Release">
         <CompilerOptions>
           <Version Value="11"/>
           <PathDelim Value="\"/>
@@ -35,8 +35,8 @@
           <CodeGeneration>
             <SmartLinkUnit Value="True"/>
             <Optimizations>
-              <VariablesInRegisters Value="True"/>
               <OptimizationLevel Value="3"/>
+              <VariablesInRegisters Value="True"/>
             </Optimizations>
           </CodeGeneration>
           <Linking>
@@ -109,9 +109,28 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+      <Optimizations>
+        <VariablesInRegisters Value="True"/>
+      </Optimizations>
+    </CodeGeneration>
     <Linking>
       <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
         <UseHeaptrc Value="True"/>
+        <StripSymbols Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
       </Debugging>
       <Options>
         <Win32>

+ 18 - 5
test/test_extra/game_puzzle/maparray.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -20,8 +20,8 @@
       <StringTable ProductVersion=""/>
     </VersionInfo>
     <BuildModes Count="2">
-      <Item1 Name="Default" Default="True"/>
-      <Item2 Name="Test">
+      <Item1 Name="Debug" Default="True"/>
+      <Item2 Name="Release">
         <CompilerOptions>
           <Version Value="11"/>
           <PathDelim Value="\"/>
@@ -35,14 +35,12 @@
           <CodeGeneration>
             <SmartLinkUnit Value="True"/>
             <Optimizations>
-              <VariablesInRegisters Value="True"/>
               <OptimizationLevel Value="3"/>
             </Optimizations>
           </CodeGeneration>
           <Linking>
             <Debugging>
               <GenerateDebugInfo Value="False"/>
-              <StripSymbols Value="True"/>
             </Debugging>
             <LinkSmart Value="True"/>
             <Options>
@@ -114,9 +112,24 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+    </CodeGeneration>
     <Linking>
       <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
         <UseHeaptrc Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
       </Debugging>
       <Options>
         <Win32>

+ 26 - 13
test/test_extra/slicescaling_customdrawn_win7/test_customdrawn_win7.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -18,9 +18,9 @@
     <VersionInfo>
       <StringTable ProductVersion=""/>
     </VersionInfo>
-    <BuildModes Count="2" Active="Debug">
+    <BuildModes Count="2" Active="Release">
       <Item1 Name="Debug" Default="True"/>
-      <Item2 Name="Test">
+      <Item2 Name="Release">
         <CompilerOptions>
           <Version Value="11"/>
           <PathDelim Value="\"/>
@@ -34,8 +34,8 @@
           <CodeGeneration>
             <SmartLinkUnit Value="True"/>
             <Optimizations>
-              <VariablesInRegisters Value="True"/>
               <OptimizationLevel Value="3"/>
+              <VariablesInRegisters Value="True"/>
             </Optimizations>
           </CodeGeneration>
           <Linking>
@@ -82,12 +82,10 @@
         <Filename Value="test_customdrawn_win7.lpr"/>
         <IsPartOfProject Value="True"/>
         <UnitName Value="test_customdrawn_win7"/>
-        <EditorIndex Value="2"/>
         <WindowIndex Value="0"/>
         <TopLine Value="1"/>
         <CursorPos X="81" Y="10"/>
         <UsageCount Value="38"/>
-        <Loaded Value="True"/>
       </Unit0>
       <Unit1>
         <Filename Value="utest.pas"/>
@@ -99,7 +97,7 @@
         <IsVisibleTab Value="True"/>
         <EditorIndex Value="0"/>
         <WindowIndex Value="0"/>
-        <TopLine Value="1"/>
+        <TopLine Value="28"/>
         <CursorPos X="50" Y="12"/>
         <UsageCount Value="38"/>
         <Loaded Value="True"/>
@@ -111,7 +109,7 @@
         <UnitName Value="customdrawn_windows7"/>
         <EditorIndex Value="1"/>
         <WindowIndex Value="0"/>
-        <TopLine Value="431"/>
+        <TopLine Value="422"/>
         <CursorPos X="76" Y="438"/>
         <UsageCount Value="38"/>
         <Loaded Value="True"/>
@@ -329,7 +327,7 @@
         <UsageCount Value="10"/>
       </Unit29>
     </Units>
-    <JumpHistory Count="17" HistoryIndex="16">
+    <JumpHistory Count="16" HistoryIndex="15">
       <Position1>
         <Filename Value="customdrawn_windows7.pas"/>
         <Caret Line="421" Column="28" TopLine="411"/>
@@ -394,10 +392,6 @@
         <Filename Value="customdrawn_windows7.pas"/>
         <Caret Line="1253" Column="3" TopLine="1240"/>
       </Position16>
-      <Position17>
-        <Filename Value="utest.pas"/>
-        <Caret Line="156" Column="57" TopLine="212"/>
-      </Position17>
     </JumpHistory>
   </ProjectOptions>
   <CompilerOptions>
@@ -410,9 +404,28 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+      <Optimizations>
+        <VariablesInRegisters Value="True"/>
+      </Optimizations>
+    </CodeGeneration>
     <Linking>
       <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
         <UseHeaptrc Value="True"/>
+        <StripSymbols Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
       </Debugging>
       <Options>
         <Win32>

+ 22 - 3
test/test_extra/slicescaling_tachart/animatedemo.lpi

@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <CONFIG>
   <ProjectOptions>
     <Version Value="9"/>
@@ -18,7 +18,7 @@
     </VersionInfo>
     <BuildModes Count="2">
       <Item1 Name="Debug" Default="True"/>
-      <Item2 Name="Test">
+      <Item2 Name="Release">
         <CompilerOptions>
           <Version Value="11"/>
           <PathDelim Value="\"/>
@@ -32,8 +32,8 @@
           <CodeGeneration>
             <SmartLinkUnit Value="True"/>
             <Optimizations>
-              <VariablesInRegisters Value="True"/>
               <OptimizationLevel Value="3"/>
+              <VariablesInRegisters Value="True"/>
             </Optimizations>
           </CodeGeneration>
           <Linking>
@@ -107,9 +107,28 @@
       <IncludeFiles Value="$(ProjOutDir)"/>
       <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
+    <Parsing>
+      <SyntaxOptions>
+        <IncludeAssertionCode Value="True"/>
+      </SyntaxOptions>
+    </Parsing>
+    <CodeGeneration>
+      <Checks>
+        <IOChecks Value="True"/>
+        <RangeChecks Value="True"/>
+        <OverflowChecks Value="True"/>
+        <StackChecks Value="True"/>
+      </Checks>
+      <Optimizations>
+        <VariablesInRegisters Value="True"/>
+      </Optimizations>
+    </CodeGeneration>
     <Linking>
       <Debugging>
+        <DebugInfoType Value="dsDwarf2Set"/>
         <UseHeaptrc Value="True"/>
+        <StripSymbols Value="True"/>
+        <UseExternalDbgSyms Value="True"/>
       </Debugging>
       <Options>
         <Win32>