Selaa lähdekoodia

Intoducing Threads in QueryWindow
modified: TurboBird.lpi
modified: TurboBird.lpr
modified: TurboBird.res
modified: main.lfm
modified: main.lrs
modified: main.pas
modified: querywindow.lfm
modified: querywindow.lrs
modified: querywindow.pas

motaz 12 vuotta sitten
vanhempi
commit
ef1bc7bd82
9 muutettua tiedostoa jossa 553 lisäystä ja 304 poistoa
  1. 111 100
      TurboBird.lpi
  2. 7 4
      TurboBird.lpr
  3. BIN
      TurboBird.res
  4. 6 6
      main.lfm
  5. 6 6
      main.lrs
  6. 14 0
      main.pas
  7. 43 4
      querywindow.lfm
  8. 187 153
      querywindow.lrs
  9. 179 31
      querywindow.pas

+ 111 - 100
TurboBird.lpi

@@ -17,8 +17,8 @@
       <UseVersionInfo Value="True"/>
       <AutoIncrementBuild Value="True"/>
       <MinorVersionNr Value="9"/>
-      <RevisionNr Value="6"/>
-      <BuildNr Value="1080"/>
+      <RevisionNr Value="7"/>
+      <BuildNr Value="1087"/>
       <StringTable ProductVersion="0.9"/>
     </VersionInfo>
     <BuildModes Count="1">
@@ -55,15 +55,15 @@
         <PackageName Value="LCL"/>
       </Item5>
     </RequiredPackages>
-    <Units Count="107">
+    <Units Count="110">
       <Unit0>
         <Filename Value="TurboBird.lpr"/>
         <IsPartOfProject Value="True"/>
         <UnitName Value="TurboBird"/>
         <EditorIndex Value="0"/>
         <WindowIndex Value="0"/>
-        <TopLine Value="7"/>
-        <CursorPos X="19" Y="27"/>
+        <TopLine Value="31"/>
+        <CursorPos X="4" Y="16"/>
         <UsageCount Value="200"/>
         <Loaded Value="True"/>
       </Unit0>
@@ -76,8 +76,8 @@
         <UnitName Value="main"/>
         <EditorIndex Value="6"/>
         <WindowIndex Value="0"/>
-        <TopLine Value="3105"/>
-        <CursorPos X="48" Y="3132"/>
+        <TopLine Value="2727"/>
+        <CursorPos X="6" Y="2732"/>
         <UsageCount Value="200"/>
         <Loaded Value="True"/>
         <LoadedDesigner Value="True"/>
@@ -89,13 +89,10 @@
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
         <UnitName Value="CreateDb"/>
-        <EditorIndex Value="10"/>
         <WindowIndex Value="0"/>
         <TopLine Value="1"/>
         <CursorPos X="76" Y="6"/>
         <UsageCount Value="200"/>
-        <Loaded Value="True"/>
-        <LoadedDesigner Value="True"/>
       </Unit2>
       <Unit3>
         <Filename Value="reg.pas"/>
@@ -104,13 +101,10 @@
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
         <UnitName Value="Reg"/>
-        <EditorIndex Value="9"/>
         <WindowIndex Value="0"/>
         <TopLine Value="237"/>
         <CursorPos X="22" Y="270"/>
         <UsageCount Value="200"/>
-        <Loaded Value="True"/>
-        <LoadedDesigner Value="True"/>
       </Unit3>
       <Unit4>
         <Filename Value="/usr/lib/lazarus/0.9.28.2/lcl/buttons.pp"/>
@@ -126,10 +120,11 @@
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
         <UnitName Value="QueryWindow"/>
-        <EditorIndex Value="13"/>
+        <IsVisibleTab Value="True"/>
+        <EditorIndex Value="9"/>
         <WindowIndex Value="0"/>
-        <TopLine Value="374"/>
-        <CursorPos X="20" Y="377"/>
+        <TopLine Value="579"/>
+        <CursorPos X="25" Y="597"/>
         <UsageCount Value="200"/>
         <Loaded Value="True"/>
         <LoadedDesigner Value="True"/>
@@ -234,7 +229,7 @@
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
         <UnitName Value="EnterPass"/>
-        <EditorIndex Value="17"/>
+        <EditorIndex Value="13"/>
         <WindowIndex Value="0"/>
         <TopLine Value="4"/>
         <CursorPos X="18" Y="22"/>
@@ -249,7 +244,7 @@
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
         <UnitName Value="About"/>
-        <EditorIndex Value="14"/>
+        <EditorIndex Value="10"/>
         <WindowIndex Value="0"/>
         <TopLine Value="13"/>
         <CursorPos X="8" Y="19"/>
@@ -553,8 +548,7 @@
         <Filename Value="scriptdb.pas"/>
         <IsPartOfProject Value="True"/>
         <UnitName Value="Scriptdb"/>
-        <IsVisibleTab Value="True"/>
-        <EditorIndex Value="18"/>
+        <EditorIndex Value="14"/>
         <WindowIndex Value="0"/>
         <TopLine Value="491"/>
         <CursorPos X="46" Y="518"/>
@@ -596,13 +590,10 @@
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
         <UnitName Value="TableManage"/>
-        <EditorIndex Value="12"/>
         <WindowIndex Value="0"/>
         <TopLine Value="384"/>
         <CursorPos X="1" Y="405"/>
         <UsageCount Value="200"/>
-        <Loaded Value="True"/>
-        <LoadedDesigner Value="True"/>
       </Unit55>
       <Unit56>
         <Filename Value="/usr/lib/lazarus/0.9.29/lcl/grids.pas"/>
@@ -717,7 +708,7 @@
         <WindowIndex Value="0"/>
         <TopLine Value="3"/>
         <CursorPos X="24" Y="12"/>
-        <UsageCount Value="176"/>
+        <UsageCount Value="184"/>
         <Loaded Value="True"/>
         <LoadedDesigner Value="True"/>
       </Unit68>
@@ -728,11 +719,11 @@
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
         <UnitName Value="ChangePass"/>
-        <EditorIndex Value="15"/>
+        <EditorIndex Value="11"/>
         <WindowIndex Value="0"/>
         <TopLine Value="3"/>
         <CursorPos X="88" Y="14"/>
-        <UsageCount Value="175"/>
+        <UsageCount Value="183"/>
         <Loaded Value="True"/>
         <LoadedDesigner Value="True"/>
       </Unit69>
@@ -747,7 +738,7 @@
         <WindowIndex Value="0"/>
         <TopLine Value="274"/>
         <CursorPos X="25" Y="289"/>
-        <UsageCount Value="173"/>
+        <UsageCount Value="181"/>
         <Loaded Value="True"/>
         <LoadedDesigner Value="True"/>
       </Unit70>
@@ -758,11 +749,11 @@
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
         <UnitName Value="SQLHistory"/>
-        <EditorIndex Value="16"/>
+        <EditorIndex Value="12"/>
         <WindowIndex Value="0"/>
         <TopLine Value="56"/>
         <CursorPos X="20" Y="89"/>
-        <UsageCount Value="158"/>
+        <UsageCount Value="166"/>
         <Loaded Value="True"/>
         <LoadedDesigner Value="True"/>
       </Unit71>
@@ -787,13 +778,10 @@
         <HasResources Value="True"/>
         <ResourceBaseClass Value="Form"/>
         <UnitName Value="CopyTable"/>
-        <EditorIndex Value="11"/>
         <WindowIndex Value="0"/>
         <TopLine Value="1"/>
         <CursorPos X="51" Y="14"/>
-        <UsageCount Value="129"/>
-        <Loaded Value="True"/>
-        <LoadedDesigner Value="True"/>
+        <UsageCount Value="137"/>
       </Unit74>
       <Unit75>
         <Filename Value="/usr/lib/lazarus/0.9.30/lcl/comctrls.pp"/>
@@ -985,9 +973,9 @@
         <UnitName Value="dbInfo"/>
         <EditorIndex Value="7"/>
         <WindowIndex Value="0"/>
-        <TopLine Value="39"/>
-        <CursorPos X="3" Y="64"/>
-        <UsageCount Value="97"/>
+        <TopLine Value="1"/>
+        <CursorPos X="1" Y="1"/>
+        <UsageCount Value="105"/>
         <Loaded Value="True"/>
         <LoadedDesigner Value="True"/>
       </Unit98>
@@ -1025,7 +1013,7 @@
         <WindowIndex Value="0"/>
         <TopLine Value="244"/>
         <CursorPos X="15" Y="255"/>
-        <UsageCount Value="84"/>
+        <UsageCount Value="92"/>
         <Loaded Value="True"/>
         <LoadedDesigner Value="True"/>
       </Unit102>
@@ -1061,126 +1049,152 @@
         <WindowIndex Value="0"/>
         <TopLine Value="1"/>
         <CursorPos X="1" Y="1"/>
-        <UsageCount Value="30"/>
+        <UsageCount Value="38"/>
       </Unit106>
+      <Unit107>
+        <Filename Value="../../../lazarus/lcl/interfaces/win32/win32object.inc"/>
+        <WindowIndex Value="0"/>
+        <TopLine Value="361"/>
+        <CursorPos X="23" Y="375"/>
+        <UsageCount Value="12"/>
+      </Unit107>
+      <Unit108>
+        <Filename Value="../../../lazarus/fpc/2.6.0/source/packages/fcl-db/src/sqldb/sqldb.pp"/>
+        <UnitName Value="sqldb"/>
+        <WindowIndex Value="0"/>
+        <TopLine Value="342"/>
+        <CursorPos X="14" Y="360"/>
+        <UsageCount Value="12"/>
+      </Unit108>
+      <Unit109>
+        <Filename Value="../../../lazarus/fpc/2.6.0/source/rtl/objpas/classes/classesh.inc"/>
+        <WindowIndex Value="0"/>
+        <TopLine Value="1510"/>
+        <CursorPos X="15" Y="1527"/>
+        <UsageCount Value="12"/>
+      </Unit109>
     </Units>
-    <JumpHistory Count="29" HistoryIndex="28">
+    <JumpHistory Count="30" HistoryIndex="29">
       <Position1>
-        <Filename Value="main.pas"/>
-        <Caret Line="2992" Column="78" TopLine="2971"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="580" Column="21" TopLine="571"/>
       </Position1>
       <Position2>
-        <Filename Value="main.pas"/>
-        <Caret Line="3002" Column="58" TopLine="2981"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="30" Column="41" TopLine="10"/>
       </Position2>
       <Position3>
-        <Filename Value="main.pas"/>
-        <Caret Line="3005" Column="61" TopLine="2981"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="29" Column="41" TopLine="10"/>
       </Position3>
       <Position4>
-        <Filename Value="main.pas"/>
-        <Caret Line="3136" Column="90" TopLine="3121"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="204" Column="1" TopLine="200"/>
       </Position4>
       <Position5>
-        <Filename Value="main.pas"/>
-        <Caret Line="3131" Column="52" TopLine="3115"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="30" Column="21" TopLine="10"/>
       </Position5>
       <Position6>
-        <Filename Value="main.pas"/>
-        <Caret Line="3106" Column="9" TopLine="3098"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="201" Column="34" TopLine="201"/>
       </Position6>
       <Position7>
-        <Filename Value="main.pas"/>
-        <Caret Line="3134" Column="57" TopLine="3116"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="194" Column="1" TopLine="175"/>
       </Position7>
       <Position8>
-        <Filename Value="main.pas"/>
-        <Caret Line="3136" Column="102" TopLine="3111"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="183" Column="22" TopLine="165"/>
       </Position8>
       <Position9>
-        <Filename Value="systables.pas"/>
-        <Caret Line="674" Column="32" TopLine="609"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="622" Column="25" TopLine="558"/>
       </Position9>
       <Position10>
-        <Filename Value="systables.pas"/>
-        <Caret Line="1" Column="1" TopLine="1"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="181" Column="3" TopLine="175"/>
       </Position10>
       <Position11>
-        <Filename Value="systables.pas"/>
-        <Caret Line="638" Column="50" TopLine="610"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="182" Column="9" TopLine="175"/>
       </Position11>
       <Position12>
-        <Filename Value="systables.pas"/>
-        <Caret Line="676" Column="46" TopLine="649"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="192" Column="9" TopLine="175"/>
       </Position12>
       <Position13>
-        <Filename Value="systables.pas"/>
-        <Caret Line="1" Column="1" TopLine="1"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="200" Column="9" TopLine="175"/>
       </Position13>
       <Position14>
-        <Filename Value="main.pas"/>
-        <Caret Line="2407" Column="50" TopLine="2389"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="431" Column="39" TopLine="401"/>
       </Position14>
       <Position15>
-        <Filename Value="main.pas"/>
-        <Caret Line="1" Column="1" TopLine="1"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="581" Column="1" TopLine="552"/>
       </Position15>
       <Position16>
-        <Filename Value="main.pas"/>
-        <Caret Line="1900" Column="68" TopLine="1873"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="255" Column="1" TopLine="223"/>
       </Position16>
       <Position17>
-        <Filename Value="main.pas"/>
-        <Caret Line="2128" Column="68" TopLine="2101"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="244" Column="39" TopLine="227"/>
       </Position17>
       <Position18>
-        <Filename Value="main.pas"/>
-        <Caret Line="2407" Column="32" TopLine="2379"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="257" Column="3" TopLine="223"/>
       </Position18>
       <Position19>
-        <Filename Value="main.pas"/>
-        <Caret Line="2475" Column="28" TopLine="2447"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="322" Column="3" TopLine="320"/>
       </Position19>
       <Position20>
-        <Filename Value="main.pas"/>
-        <Caret Line="2501" Column="73" TopLine="2474"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="134" Column="1" TopLine="124"/>
       </Position20>
       <Position21>
-        <Filename Value="main.pas"/>
-        <Caret Line="2668" Column="76" TopLine="2640"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="244" Column="27" TopLine="211"/>
       </Position21>
       <Position22>
-        <Filename Value="main.pas"/>
-        <Caret Line="2686" Column="76" TopLine="2659"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="334" Column="18" TopLine="315"/>
       </Position22>
       <Position23>
-        <Filename Value="main.pas"/>
-        <Caret Line="3003" Column="63" TopLine="2976"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="728" Column="38" TopLine="716"/>
       </Position23>
       <Position24>
-        <Filename Value="scriptdb.pas"/>
-        <Caret Line="1" Column="1" TopLine="1"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="231" Column="3" TopLine="222"/>
       </Position24>
       <Position25>
-        <Filename Value="scriptdb.pas"/>
-        <Caret Line="175" Column="66" TopLine="151"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="180" Column="3" TopLine="174"/>
       </Position25>
       <Position26>
-        <Filename Value="scriptdb.pas"/>
-        <Caret Line="212" Column="13" TopLine="185"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="232" Column="5" TopLine="223"/>
       </Position26>
       <Position27>
-        <Filename Value="scriptdb.pas"/>
-        <Caret Line="227" Column="31" TopLine="200"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="321" Column="3" TopLine="319"/>
       </Position27>
       <Position28>
-        <Filename Value="scriptdb.pas"/>
-        <Caret Line="442" Column="38" TopLine="414"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="1304" Column="3" TopLine="1275"/>
       </Position28>
       <Position29>
-        <Filename Value="scriptdb.pas"/>
-        <Caret Line="510" Column="57" TopLine="482"/>
+        <Filename Value="querywindow.pas"/>
+        <Caret Line="740" Column="8" TopLine="693"/>
       </Position29>
+      <Position30>
+        <Filename Value="dbinfo.pas"/>
+        <Caret Line="64" Column="3" TopLine="39"/>
+      </Position30>
     </JumpHistory>
   </ProjectOptions>
   <CompilerOptions>
@@ -1197,11 +1211,8 @@
     </CodeGeneration>
     <Linking>
       <Debugging>
-        <GenerateDebugInfo Value="False"/>
         <UseLineInfoUnit Value="False"/>
-        <StripSymbols Value="True"/>
       </Debugging>
-      <LinkSmart Value="True"/>
       <Options>
         <Win32>
           <GraphicApplication Value="True"/>

+ 7 - 4
TurboBird.lpr

@@ -2,7 +2,7 @@
 {  TurboBird: FireBird database administration and management tool          }
 {  Developed by: Motaz Abdel Azeem http://code.sd/                          }
 {  Start development :  5.Dec.2009                                          }
-{  Last updated      : 23.Dec.2012                                          }
+{  Last updated      : 29.Dec.2012                                          }
 {  License           : GPL for GUI, LGPL for Units                          }
 {***************************************************************************}
 
@@ -11,9 +11,9 @@ program TurboBird;
 {$mode objfpc}{$H+}
 
 uses
-  {$IFDEF UNIX}{$IFDEF UseCThreads}
+  {$IFDEF UNIX}
   cthreads,
-  {$ENDIF}{$ENDIF}
+  {$ENDIF}
   Interfaces, // this includes the LCL widgetset
   Forms, Controls, memdslaz, main, CreateDb, Reg, QueryWindow, ViewView,
   ViewTrigger, ViewSProc, ViewGen, NewTable, NewGen, EnterPass, About,
@@ -24,7 +24,7 @@ uses
   sysutils, Comparison;
 
 const
-  Version = '0.9.6';
+  Version = '0.9.7';
   VersionDate = '2010 - Dec 2012';
 {$IFDEF Unix}
 {$DEFINE extdecl:=cdecl}
@@ -34,6 +34,7 @@ const
   {$DEFINE extdecl:=stdcall}
    fbclib = 'fbclient.dll';
    seclib = 'gds32.dll';
+   thirdlib = 'fbembed.dll';
 {$ENDIF}
 
 {$R *.res}
@@ -47,6 +48,8 @@ begin
   {$IFDEF Windows}
   if IBaseLibraryHandle = NilHandle then
     IBaseLibraryHandle:= LoadLibrary(seclib);
+  if IBaseLibraryHandle = NilHandle then
+    IBaseLibraryHandle:= LoadLibrary(thirdlib);
   {$ENDIF}
 
   // Check Firebird library existance

BIN
TurboBird.res


+ 6 - 6
main.lfm

@@ -5,7 +5,7 @@ object fmMain: TfmMain
   Width = 1024
   ActiveControl = tvMain
   Caption = 'TurboBird Admin for FireBird'
-  ClientHeight = 617
+  ClientHeight = 620
   ClientWidth = 1024
   Color = clWhite
   Font.Name = 'Sans'
@@ -17,7 +17,7 @@ object fmMain: TfmMain
   LCLVersion = '1.0.4.0'
   object tvMain: TTreeView
     Left = 0
-    Height = 617
+    Height = 620
     Top = 0
     Width = 360
     Align = alLeft
@@ -37,14 +37,14 @@ object fmMain: TfmMain
   end
   object Splitter1: TSplitter
     Left = 360
-    Height = 617
+    Height = 620
     Top = 0
     Width = 14
     Beveled = True
   end
   object PageControl1: TPageControl
     Left = 377
-    Height = 610
+    Height = 613
     Top = 3
     Width = 644
     ActivePage = TabSheet1
@@ -64,8 +64,8 @@ object fmMain: TfmMain
     object TabSheet1: TTabSheet
       BorderWidth = 1
       Caption = 'Main'
-      ClientHeight = 580
-      ClientWidth = 640
+      ClientHeight = 582
+      ClientWidth = 636
       Font.Color = clNavy
       Font.Name = 'Arial'
       ParentFont = False

+ 6 - 6
main.lrs

@@ -3,27 +3,27 @@
 LazarusResources.Add('TfmMain','FORMDATA',[
   'TPF0'#7'TfmMain'#6'fmMain'#4'Left'#3#244#0#6'Height'#3#128#2#3'Top'#3#139#0#5
   +'Width'#3#0#4#13'ActiveControl'#7#6'tvMain'#7'Caption'#6#28'TurboBird Admin '
-  +'for FireBird'#12'ClientHeight'#3'i'#2#11'ClientWidth'#3#0#4#5'Color'#7#7'cl'
+  +'for FireBird'#12'ClientHeight'#3'l'#2#11'ClientWidth'#3#0#4#5'Color'#7#7'cl'
   +'White'#9'Font.Name'#6#4'Sans'#4'Menu'#7#9'MainMenu1'#10'OnActivate'#7#12'Fo'
   +'rmActivate'#7'OnClose'#7#9'FormClose'#8'OnCreate'#7#10'FormCreate'#8'Positi'
   +'on'#7#14'poScreenCenter'#10'LCLVersion'#6#7'1.0.4.0'#0#9'TTreeView'#6'tvMai'
-  +'n'#4'Left'#2#0#6'Height'#3'i'#2#3'Top'#2#0#5'Width'#3'h'#1#5'Align'#7#6'alL'
+  +'n'#4'Left'#2#0#6'Height'#3'l'#2#3'Top'#2#0#5'Width'#3'h'#1#5'Align'#7#6'alL'
   +'eft'#15'BackgroundColor'#7#7'clWhite'#5'Color'#7#7'clCream'#13'HideSelectio'
   +'n'#8#6'Images'#7#10'ImageList1'#6'Indent'#2#25#8'ReadOnly'#9#16'RightClickS'
   +'elect'#9#9'ShowLines'#8#8'TabOrder'#2#0#10'OnDblClick'#7#14'tvMainDblClick'
   +#10'OnExpanded'#7#14'tvMainExpanded'#7'Options'#11#17'tvoAutoItemHeight'#21
   +'tvoKeepCollapsedNodes'#11'tvoReadOnly'#19'tvoRightClickSelect'#14'tvoShowBu'
   +'ttons'#11'tvoShowRoot'#11'tvoToolTips'#0#15'ExpandSignColor'#7#8'clMaroon'#0
-  +#0#9'TSplitter'#9'Splitter1'#4'Left'#3'h'#1#6'Height'#3'i'#2#3'Top'#2#0#5'Wi'
+  +#0#9'TSplitter'#9'Splitter1'#4'Left'#3'h'#1#6'Height'#3'l'#2#3'Top'#2#0#5'Wi'
   +'dth'#2#14#7'Beveled'#9#0#0#12'TPageControl'#12'PageControl1'#4'Left'#3'y'#1
-  +#6'Height'#3'b'#2#3'Top'#2#3#5'Width'#3#132#2#10'ActivePage'#7#9'TabSheet1'#5
+  +#6'Height'#3'e'#2#3'Top'#2#3#5'Width'#3#132#2#10'ActivePage'#7#9'TabSheet1'#5
   +'Align'#7#8'alClient'#18'BorderSpacing.Left'#2#1#17'BorderSpacing.Top'#2#1#19
   +'BorderSpacing.Right'#2#1#20'BorderSpacing.Bottom'#2#2#20'BorderSpacing.Arou'
   +'nd'#2#2#25'BorderSpacing.InnerBorder'#2#1#9'Font.Name'#6#4'Sans'#10'ParentF'
   +'ont'#8#8'TabIndex'#2#0#8'TabOrder'#2#2#17'OnCloseTabClicked'#7#27'PageContr'
   +'ol1CloseTabClicked'#7'Options'#11#20'nboHidePageListPopup'#0#0#9'TTabSheet'
-  +#9'TabSheet1'#11'BorderWidth'#2#1#7'Caption'#6#4'Main'#12'ClientHeight'#3'D'
-  +#2#11'ClientWidth'#3#128#2#10'Font.Color'#7#6'clNavy'#9'Font.Name'#6#5'Arial'
+  +#9'TabSheet1'#11'BorderWidth'#2#1#7'Caption'#6#4'Main'#12'ClientHeight'#3'F'
+  +#2#11'ClientWidth'#3'|'#2#10'Font.Color'#7#6'clNavy'#9'Font.Name'#6#5'Arial'
   +#10'ParentFont'#8#0#7'TBitBtn'#11'bbRestoreDB'#4'Left'#2#3#6'Height'#2']'#3
   +'Top'#3#216#0#5'Width'#3#208#0#7'Caption'#6#16'Restore Database'#5'Color'#7#7
   +'clCream'#9'Font.Name'#6#4'Sans'#10'Glyph.Data'#10':'#16#0#0'6'#16#0#0'BM6'

+ 14 - 0
main.pas

@@ -2755,6 +2755,8 @@ begin
   DBIndex:= Node.Parent.OverlayIndex;
   Rec:= RegisteredDatabases[DBIndex].RegRec;
   Objects:= TStringList.Create;
+  Screen.Cursor:= crSQLWait;
+  try
 
   ANodeText:= Node.Text;
   if Pos('(', ANodeText) > 0 then
@@ -2937,7 +2939,19 @@ begin
 
   if not Node.Expanded then
     Node.Expand(False);
+
+
+  except
+  on e: exception do
+  begin
+    Screen.Cursor:= crDefault;
+    ShowMessage(e.Message);
+  end;
+
+  end;
+
   Objects.Free;
+  Screen.Cursor:= crDefault;
 
 end;
 

+ 43 - 4
querywindow.lfm

@@ -1,7 +1,7 @@
 object fmQueryWindow: TfmQueryWindow
-  Left = 718
+  Left = 533
   Height = 601
-  Top = 115
+  Top = 204
   Width = 720
   ActiveControl = Panel1
   Caption = 'fmQueryWindow'
@@ -179,6 +179,13 @@ object fmQueryWindow: TfmQueryWindow
         ParentShowHint = False
         ShowHint = True
       end
+      object ToolButton1: TToolButton
+        Left = 386
+        Hint = 'Cancel'
+        Top = 2
+        Caption = 'Cancel'
+        OnClick = ToolButton1Click
+      end
     end
   end
   object Splitter1: TSplitter
@@ -984,7 +991,7 @@ object fmQueryWindow: TfmQueryWindow
     left = 212
     top = 500
     Bitmap = {
-      4C69060000001000000010000000F0F7FFFFFDFFFF00FFFFF2FFFFFFF2FFFFFF
+      4C69070000001000000010000000F0F7FFFFFDFFFF00FFFFF2FFFFFFF2FFFFFF
       F9FFFBF4F1FFFFFFFCFFFFFFFCFFFFFFFCFFFFFFFCFFFFFFFCFFFFFBF4FFFFFF
       F2FFFFFFF5FFFBFDFEFFF6FDFFFFF8FEFFFFFAFAFAFFFFF8EAFFFFFFF1FFFFFF
       F8FFFFFFFBFFFFFFFBFFFFF5F1FFFFFBF7FFFFFCF8FFFFFFFBFFFFFBF3FFFFFF
@@ -1176,7 +1183,39 @@ object fmQueryWindow: TfmQueryWindow
       FFFFFDFCFFFFFBF9FFFFFAF8FFFFFAF8FFFFFBF9FFFFFDFCFFFFFDFDFFFFFEFD
       FFFFFFFEFFFFFEFCFCFFFDFBFAFFFFFFFE00FDFBFAFFFFFEFFFFFFFEFFFFFAFA
       FFFFFDFCFFFFFBF9FFFFFDFBFFFFFDFBFFFFFBFAFFFFFDFCFFFFFAFAFFFFFFFE
-      FFFFFFFFFFFFFDFBFBFFFFFFFE00
+      FFFFFFFFFFFFFDFBFBFFFFFFFE00000000000000000000000000000000000000
+      0000000000000000000000000000000000000000000000000000000000000000
+      0000000000000000000000000000000000000000000000000000000000000000
+      0000000000000000000000000000000000000000000000000000000000000000
+      0000000000000000000000000000000000000000000000000000000000000000
+      0000000000000000000000000000000000000000000000000000000000000000
+      0000000000000000000000000000000000000000000000000000000000000505
+      A8000000580D1C1CA0413333B96D3333B86E1A1A9944000043111D1D00000A0A
+      00000000000000000000000000000000000000000000393900001414CC000E0E
+      8F1C4444CD986B6BE5EC7676EBFE7373EAFD6565E4EC4040CA9913137622FFFF
+      000033330900000000000000000000000000000000001B1B8D00000069094343
+      D1946E6EEAFD6F6FECFF6C6CEBFF6969EBFF6767EBFF6666E9FD4040CD971C1C
+      560F1B1B83004747490000000000000000006D6D53001E1ED3002828BD365C5C
+      E4E86161EBFF5F5FEBFF5F5FEBFF5D5DEBFF5555E9FF4C4CE8FF4747E2E82A2A
+      AF3E0000FF005F5F5D000000000000000000898967002D2DF5003434CF5E5050
+      E7FC4949E9FF4949EAFF4343EAFF3737E9FF2929E6FF1E1EE3FF2F2FE4FB3434
+      C9640000FF00787874000000000000000000A8A87B002222EA003131D25C3333
+      E5FB2121E5FF2424E8FF2323EAFF2222E9FF2020E8FF1D1DE5FF3030E4FB3838
+      CE620000FF0091918C000000000000000000D9D990001D1DD3002D2DCD303737
+      E3E42222E7FF2121E9FF2626ECFF2626ECFF2222E9FF2323E7FF3838E3E43F3F
+      C9360000E500A7A7A3000000000000000000000000003E3EC8003535B4053535
+      DC873535E7FB2626EAFF2525ECFF2525ECFF2626EAFF3535E7FB3B3BDB8A7E7E
+      BC086363C700DFDFF500000000000000000000000000000000005151FF002B2B
+      C2133636DA873A3AE5E43636E9FB3636E9FB3A3AE5E43A3ADB8A4F4FC2170000
+      FF00000000000000000000000000000000000000000000000000000000020000
+      0002232377092F2FC0323535D05B3737D05C3838C23448487E0B0B0B00030000
+      0002000000010000000000000000000000000000000000000000000000000000
+      0001000000020000000100000000000000000000000100000002000000010000
+      0001000000000000000000000000000000000000000000000000000000000000
+      0000000000000000000000000000000000000000000000000000000000000000
+      0000000000000000000000000000000000000000000000000000000000000000
+      0000000000000000000000000000000000000000000000000000000000000000
+      0000000000000000000000000000
     }
   end
   object imTools: TImageList

+ 187 - 153
querywindow.lrs

@@ -1,13 +1,13 @@
 { This is an automatically generated lazarus resource file }
 
 LazarusResources.Add('TfmQueryWindow','FORMDATA',[
-  'TPF0'#14'TfmQueryWindow'#13'fmQueryWindow'#4'Left'#3#206#2#6'Height'#3'Y'#2#3
-  +'Top'#2's'#5'Width'#3#208#2#13'ActiveControl'#7#6'Panel1'#7'Caption'#6#13'fm'
-  +'QueryWindow'#12'ClientHeight'#3'Y'#2#11'ClientWidth'#3#208#2#5'Color'#7#6'c'
-  +'lForm'#4'Menu'#7#9'MainMenu1'#7'OnClose'#7#9'FormClose'#6'OnShow'#7#8'FormS'
-  +'how'#9'PopupMenu'#7#5'pmTab'#8'Position'#7#14'poScreenCenter'#10'LCLVersion'
-  +#6#7'1.0.4.0'#0#6'TPanel'#6'Panel1'#4'Left'#2#0#6'Height'#2'<'#3'Top'#2#0#5
-  +'Width'#3#208#2#5'Align'#7#5'alTop'#12'ClientHeight'#2'<'#11'ClientWidth'#3
+  'TPF0'#14'TfmQueryWindow'#13'fmQueryWindow'#4'Left'#3#21#2#6'Height'#3'Y'#2#3
+  +'Top'#3#204#0#5'Width'#3#208#2#13'ActiveControl'#7#6'Panel1'#7'Caption'#6#13
+  +'fmQueryWindow'#12'ClientHeight'#3'Y'#2#11'ClientWidth'#3#208#2#5'Color'#7#6
+  +'clForm'#4'Menu'#7#9'MainMenu1'#7'OnClose'#7#9'FormClose'#6'OnShow'#7#8'Form'
+  +'Show'#9'PopupMenu'#7#5'pmTab'#8'Position'#7#14'poScreenCenter'#10'LCLVersio'
+  +'n'#6#7'1.0.4.0'#0#6'TPanel'#6'Panel1'#4'Left'#2#0#6'Height'#2'<'#3'Top'#2#0
+  +#5'Width'#3#208#2#5'Align'#7#5'alTop'#12'ClientHeight'#2'<'#11'ClientWidth'#3
   +#208#2#5'Color'#7#6'clForm'#11'ParentColor'#8#8'TabOrder'#2#1#0#7'TBitBtn'#7
   +'bbClose'#4'Left'#3#180#2#6'Height'#2#24#3'Top'#2#253#5'Width'#2#27#7'Anchor'
   +'s'#11#5'akTop'#7'akRight'#0#7'Caption'#6#4' X  '#5'Color'#4#219#242#247#0#10
@@ -48,27 +48,29 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#14'ParentShowHint'#8#8'ShowHint'#9#0#0#11'TToolButton'#19'tbRollbackRetaini'
   +'ng'#4'Left'#3#222#0#4'Hint'#6#18'Rollback Retaining'#3'Top'#2#2#8'AutoSize'
   +#9#7'Caption'#6#19'tbRollbackRetaining'#10'ImageIndex'#2#10#7'OnClick'#7#24
-  +'tbRollbackRetainingClick'#14'ParentShowHint'#8#8'ShowHint'#9#0#0#0#0#9'TSpl'
-  +'itter'#9'Splitter1'#6'Cursor'#7#8'crVSplit'#4'Left'#2#0#6'Height'#2#12#3'To'
-  +'p'#3'J'#1#5'Width'#3#208#2#5'Align'#7#5'alTop'#12'ResizeAnchor'#7#5'akTop'#0
-  +#0#6'TPanel'#6'Panel2'#4'Left'#2#0#6'Height'#3#3#1#3'Top'#3'V'#1#5'Width'#3
-  +#208#2#5'Align'#7#8'alClient'#12'ClientHeight'#3#3#1#11'ClientWidth'#3#208#2
-  +#8'TabOrder'#2#3#0#12'TPageControl'#12'PageControl1'#4'Left'#2#1#6'Height'#3
-  +#1#1#3'Top'#2#1#5'Width'#3#206#2#5'Align'#7#8'alClient'#6'Images'#7#6'imTabs'
-  +#8'TabOrder'#2#0#0#0#0#244#8'TSynEdit'#7'meQuery'#4'Left'#2#0#6'Height'#3#14
-  +#1#3'Top'#2'<'#5'Width'#3#208#2#5'Align'#7#5'alTop'#11'BlockIndent'#2#3#11'F'
-  +'ont.Height'#2#240#9'Font.Name'#6#11'Courier New'#10'Font.Pitch'#7#7'fpFixed'
-  +#12'Font.Quality'#7#16'fqNonAntialiased'#11'ParentColor'#8#10'ParentFont'#8#9
-  +'PopupMenu'#7#6'pmMemo'#8'TabOrder'#2#0#11'BorderStyle'#7#6'bsNone'#12'Gutte'
-  +'r.Color'#4#246#241#246#0#12'Gutter.Width'#2'='#19'Gutter.MouseActions'#14#1
-  +#10'ClickCount'#7#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Command'#7#20'emcOnMain'
-  +'GutterClick'#0#1#6'Button'#7#7'mbRight'#7'Command'#7#14'emcContextMenu'#0#0
-  +#17'RightGutter.Width'#2#0#24'RightGutter.MouseActions'#14#1#10'ClickCount'#7
-  +#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Command'#7#20'emcOnMainGutterClick'#0#1#6
-  ,'Button'#7#7'mbRight'#7'Command'#7#14'emcContextMenu'#0#0#11'Highlighter'#7
-  +#10'SynSQLSyn1'#10'Keystrokes'#14#1#7'Command'#7#4'ecUp'#8'ShortCut'#2'&'#0#1
-  +#7'Command'#7#7'ecSelUp'#8'ShortCut'#3'& '#0#1#7'Command'#7#10'ecScrollUp'#8
-  +'ShortCut'#3'&@'#0#1#7'Command'#7#6'ecDown'#8'ShortCut'#2'('#0#1#7'Command'#7
+  +'tbRollbackRetainingClick'#14'ParentShowHint'#8#8'ShowHint'#9#0#0#11'TToolBu'
+  +'tton'#11'ToolButton1'#4'Left'#3#130#1#4'Hint'#6#6'Cancel'#3'Top'#2#2#7'Capt'
+  +'ion'#6#6'Cancel'#7'OnClick'#7#16'ToolButton1Click'#0#0#0#0#9'TSplitter'#9'S'
+  +'plitter1'#6'Cursor'#7#8'crVSplit'#4'Left'#2#0#6'Height'#2#12#3'Top'#3'J'#1#5
+  +'Width'#3#208#2#5'Align'#7#5'alTop'#12'ResizeAnchor'#7#5'akTop'#0#0#6'TPanel'
+  +#6'Panel2'#4'Left'#2#0#6'Height'#3#3#1#3'Top'#3'V'#1#5'Width'#3#208#2#5'Alig'
+  +'n'#7#8'alClient'#12'ClientHeight'#3#3#1#11'ClientWidth'#3#208#2#8'TabOrder'
+  +#2#3#0#12'TPageControl'#12'PageControl1'#4'Left'#2#1#6'Height'#3#1#1#3'Top'#2
+  +#1#5'Width'#3#206#2#5'Align'#7#8'alClient'#6'Images'#7#6'imTabs'#8'TabOrder'
+  +#2#0#0#0#0#244#8'TSynEdit'#7'meQuery'#4'Left'#2#0#6'Height'#3#14#1#3'Top'#2
+  +'<'#5'Width'#3#208#2#5'Align'#7#5'alTop'#11'BlockIndent'#2#3#11'Font.Height'
+  +#2#240#9'Font.Name'#6#11'Courier New'#10'Font.Pitch'#7#7'fpFixed'#12'Font.Qu'
+  +'ality'#7#16'fqNonAntialiased'#11'ParentColor'#8#10'ParentFont'#8#9'PopupMen'
+  +'u'#7#6'pmMemo'#8'TabOrder'#2#0#11'BorderStyle'#7#6'bsNone'#12'Gutter.Color'
+  +#4#246#241#246#0#12'Gutter.Width'#2'='#19'Gutter.MouseActions'#14#1#10'Click'
+  +'Count'#7#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Command'#7#20'emcOnMainGutterCl'
+  +'ick'#0#1#6'Button'#7#7'mbRight'#7'Command'#7#14'emcContextMenu'#0#0#17'Righ'
+  ,'tGutter.Width'#2#0#24'RightGutter.MouseActions'#14#1#10'ClickCount'#7#5'ccA'
+  +'ny'#8'ClickDir'#7#6'cdDown'#7'Command'#7#20'emcOnMainGutterClick'#0#1#6'But'
+  +'ton'#7#7'mbRight'#7'Command'#7#14'emcContextMenu'#0#0#11'Highlighter'#7#10
+  +'SynSQLSyn1'#10'Keystrokes'#14#1#7'Command'#7#4'ecUp'#8'ShortCut'#2'&'#0#1#7
+  +'Command'#7#7'ecSelUp'#8'ShortCut'#3'& '#0#1#7'Command'#7#10'ecScrollUp'#8'S'
+  +'hortCut'#3'&@'#0#1#7'Command'#7#6'ecDown'#8'ShortCut'#2'('#0#1#7'Command'#7
   +#9'ecSelDown'#8'ShortCut'#3'( '#0#1#7'Command'#7#12'ecScrollDown'#8'ShortCut'
   +#3'(@'#0#1#7'Command'#7#6'ecLeft'#8'ShortCut'#2'%'#0#1#7'Command'#7#9'ecSelL'
   +'eft'#8'ShortCut'#3'% '#0#1#7'Command'#7#10'ecWordLeft'#8'ShortCut'#3'%@'#0#1
@@ -127,9 +129,9 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +'EcFoldCurrent'#8'ShortCut'#4'-'#160#0#0#0#1#7'Command'#7#15'EcUnFoldCurrent'
   +#8'ShortCut'#4'+'#160#0#0#0#1#7'Command'#7#18'EcToggleMarkupWord'#8'ShortCut'
   +#4'M'#128#0#0#0#1#7'Command'#7#14'ecNormalSelect'#8'ShortCut'#3'N`'#0#1#7'Co'
-  +'mmand'#7#14'ecColumnSelect'#8'ShortCut'#3'C`'#0#1#7'Command'#7#12'ecLineSel'
+  ,'mmand'#7#14'ecColumnSelect'#8'ShortCut'#3'C`'#0#1#7'Command'#7#12'ecLineSel'
   +'ect'#8'ShortCut'#3'L`'#0#1#7'Command'#7#5'ecTab'#8'ShortCut'#2#9#0#1#7'Comm'
-  ,'and'#7#10'ecShiftTab'#8'ShortCut'#3#9' '#0#1#7'Command'#7#14'ecMatchBracket'
+  +'and'#7#10'ecShiftTab'#8'ShortCut'#3#9' '#0#1#7'Command'#7#14'ecMatchBracket'
   +#8'ShortCut'#3'B`'#0#1#7'Command'#7#10'ecColSelUp'#8'ShortCut'#4'&'#160#0#0#0
   +#1#7'Command'#7#12'ecColSelDown'#8'ShortCut'#4'('#160#0#0#0#1#7'Command'#7#12
   +'ecColSelLeft'#8'ShortCut'#4'%'#160#0#0#0#1#7'Command'#7#13'ecColSelRight'#8
@@ -191,9 +193,9 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +'OpenDialog1'#5'Width'#3#139#3#6'Height'#3#128#2#10'DefaultExt'#6#4'.sql'#6
   +'Filter'#6#29'SQL Files|*.sql|All Files|*.*'#4'left'#3#222#0#3'top'#3#134#0#0
   +#0#11'TSaveDialog'#11'SaveDialog1'#7'Options'#11#17'ofOverwritePrompt'#14'of'
-  +'EnableSizing'#12'ofViewDetail'#0#4'left'#3#222#0#3'top'#3#208#0#0#0#10'TSyn'
+  ,'EnableSizing'#12'ofViewDetail'#0#4'left'#3#222#0#3'top'#3#208#0#0#0#10'TSyn'
   +'SQLSyn'#10'SynSQLSyn1'#13'DefaultFilter'#6#23'SQL Files (*.sql)|*.sql'#7'En'
-  ,'abled'#8#23'CommentAttri.Foreground'#7#6'clTeal'#23'CommentAttri.FrameEdges'
+  +'abled'#8#23'CommentAttri.Foreground'#7#6'clTeal'#23'CommentAttri.FrameEdges'
   +#7#9'sfeAround'#24'DataTypeAttri.FrameEdges'#7#9'sfeAround'#30'DefaultPackag'
   +'eAttri.FrameEdges'#7#9'sfeAround'#25'ExceptionAttri.FrameEdges'#7#9'sfeArou'
   +'nd'#24'FunctionAttri.FrameEdges'#7#9'sfeAround'#26'IdentifierAttri.Foregrou'
@@ -234,7 +236,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#7#15'lmCloseTabClick'#0#0#0#9'TMainMenu'#9'MainMenu1'#4'left'#2'{'#3'top'#2
   +'L'#0#9'TMenuItem'#9'MenuItem3'#7'Caption'#6#3'Run'#8'ShortCut'#2't'#7'Visib'
   +'le'#8#7'OnClick'#7#10'bbRunClick'#0#0#0#10'TImageList'#6'imTabs'#4'left'#3
-  +#212#0#3'top'#3#244#1#6'Bitmap'#10#14#24#0#0'Li'#6#0#0#0#16#0#0#0#16#0#0#0
+  +#212#0#3'top'#3#244#1#6'Bitmap'#10#14#28#0#0'Li'#7#0#0#0#16#0#0#0#16#0#0#0
   +#240#247#255#255#253#255#255#0#255#255#242#255#255#255#242#255#255#255#249
   +#255#251#244#241#255#255#255#252#255#255#255#252#255#255#255#252#255#255#255
   +#252#255#255#255#252#255#255#251#244#255#255#255#242#255#255#255#245#255#251
@@ -255,9 +257,9 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#241#255#255#255#241#255#255#255#238#255#255#255#242#255#255#250#232#255
   +#255#255#234#255'~iS'#255#255#255#248#255#254#252#251#255#255#255#254#255#255
   +#255#248#255'{fP'#255#255#255#234#255#168#149#128#255#173#155#138#255#164#144
-  +#127#255#255#255#240#255#167#147#129#255#169#152#133#255#255#255#241#255#171
+  ,#127#255#255#255#240#255#167#147#129#255#169#152#133#255#255#255#241#255#171
   +#152#131#255#255#255#233#255#131'nX'#255#255#248#239#255#255#255#254#255#255
-  ,#255#255#255#255#249#242#255#130'oZ'#255#255#255#234#255#255#254#236#255#255
+  +#255#255#255#255#249#242#255#130'oZ'#255#255#255#234#255#255#254#236#255#255
   +#255#241#255#255#255#241#255#255#255#237#255#255#255#240#255#255#255#241#255
   +#255#255#240#255#255#255#238#255#255#255#234#255#129'nY'#255#255#255#249#255
   +#249#249#249#255#253#255#255#0#252#248#243#255#132's`'#255#255#255#235#255
@@ -319,9 +321,9 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#251#255#244#255'kwa'#255'myc'#255'_iX'#255#245#252#245#255#248#253#252
   +#255#253#254#255#255#253#254#255#255#255#255#254#255#250#252#246#255#254#255
   +#251#255#255#255#254#255#253#254#255#255#253#254#255#255#247#252#251#255#251
-  +#255#251#255#251#255#244#255'o|d'#255'r'#127'g'#255'R\K'#255#248#255#248#255
+  ,#255#251#255#251#255#244#255'o|d'#255'r'#127'g'#255'R\K'#255#248#255#248#255
   +#251#255#255#255#236#237#241#255#253#254#255#255#250#251#249#255#255#255#252
-  ,#0#255#255#252#0#238#239#237#255#253#254#255#255#245#246#250#255#251#255#255
+  +#0#255#255#252#0#238#239#237#255#253#254#255#255#245#246#250#255#251#255#255
   +#255#251#255#249#255#242#253#233#255'w'#132'l'#255'o|d'#255'alX'#255#251#255
   +#249#255#251#255#255#255#253#254#255#255#251#252#255#255#252#253#251#255#252
   +#253#249#255#250#251#247#255#255#255#254#255#253#254#255#255#249#250#254#255
@@ -383,9 +385,9 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#252#255#254#253#249#255#255#255#252#255#253#252#248#255#255#255#254#255#249
   +#250#248#255#253#255#255#255#249#251#251#255#250#254#255#255#251#255#255#255
   +#255#251#255#255#255#244#250#255#250#254#255#255#246#255#255#255#250#255#248
-  +#255#251#255#249#255#253#252#255#255#248#247#255#255#251#250#255#255#244#246
+  ,#255#251#255#249#255#253#252#255#255#248#247#255#255#251#250#255#255#244#246
   +#254#255#255#255#251#255#244#252#242#255#246#255#255#255#250#254#255#255#250
-  ,#238#244#255#255#251#255#255#255#245#245#255#255#249#255#255#236#234#255#255
+  +#238#244#255#255#251#255#255#255#245#245#255#255#249#255#255#236#234#255#255
   +#241#241#255#255#245#245#255#255#250#246#255#255#248#243#255#255#243#239#255
   +#255#248#241#255#255#248#243#255#255#243#239#255#255#246#246#255#255#235#235
   +#255#255#243#241#255#255#255#249#255#255#255#245#245#255#253#255#249#255#237
@@ -447,9 +449,9 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#248#255#0#22#7#255#164#196#172#255#152#191#159#255#171#214#177#255#171
   +#214#177#255#152#191#159#255#166#195#172#255#0#22#7#255#243#255#248#255#250
   +#255#254#255#255#253#255#255#252#246#255#255#255#249#255#255#255#244#254#255
-  +#255#254#255#255#11#28#15#255#171#207#171#255#153#204#154#255#164#225#169#255
+  ,#255#254#255#255#11#28#15#255#171#207#171#255#153#204#154#255#164#225#169#255
   +#134#202#143#255#134#202#143#255#162#225#169#255#153#204#154#255#171#207#171
-  ,#255#11#28#15#255#253#254#255#255#255#244#254#255#255#249#255#255#255#250#255
+  +#255#11#28#15#255#253#254#255#255#255#244#254#255#255#249#255#255#255#250#255
   +#255#255#250#255#255#21#23#23#255#7#24#11#255#168#203#169#255#153#202#156#255
   +#154#212#158#255#145#210#154#255#147#210#154#255#152#212#158#255#155#202#156
   +#255#168#203#169#255#7#24#11#255#21#23#23#255#255#250#255#255#255#250#255#255
@@ -511,9 +513,9 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#167#168#188#255#179#180#200#255#179#180#200#255#167#169#187#255#184#184
   +#202#255#176#177#191#255'FFR'#255#251#253#255#255#248#247#255#255#253#253#255
   +#255#246#246#252#255#253#253#255#255#243#245#253#255'EFP'#255#177#177#191#255
-  +#170#170#186#255#193#193#211#255#180#181#201#255#180#181#201#255#191#193#211
+  ,#170#170#186#255#193#193#211#255#180#181#201#255#180#181#201#255#191#193#211
   +#255#170#170#186#255#176#177#191#255'EEQ'#255#243#245#253#255#253#253#255#255
-  ,#246#246#252#255#253#254#255#255#244#244#250#255#253#252#255#255'LMW'#255#181
+  +#246#246#252#255#253#254#255#255#244#244#250#255#253#252#255#255'LMW'#255#181
   +#181#195#255#185#185#201#255#175#175#193#255#172#172#190#255#172#172#190#255
   +#175#175#193#255#186#185#201#255#181#181#193#255'NMW'#255#253#252#255#255#244
   +#244#250#255#253#254#255#255#243#244#248#255#253#254#255#255#253#253#255#255
@@ -531,9 +533,42 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#254#255#255#254#252#252#255#253#251#250#255#255#255#254#0#253#251#250#255
   +#255#254#255#255#255#254#255#255#250#250#255#255#253#252#255#255#251#249#255
   +#255#253#251#255#255#253#251#255#255#251#250#255#255#253#252#255#255#250#250
-  +#255#255#255#254#255#255#255#255#255#255#253#251#251#255#255#255#254#0#0#0#10
-  +'TImageList'#7'imTools'#6'Height'#2' '#5'Width'#2' '#4'left'#3#6#2#3'top'#2
-  +'~'#6'Bitmap'#10#14#176#0#0'Li'#11#0#0#0' '#0#0#0' '#0#0#0#255#255#255#0#255
+  +#255#255#255#254#255#255#255#255#255#255#253#251#251#255#255#255#254#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#5#5#168#0#0#0'X'#13#28#28#160'A33'#185'm33'
+  +#184'n'#26#26#153'D'#0#0'C'#17#29#29#0#0#10#10#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +#0#0#0#0#0#0#0'99'#0#0#20#20#204#0#14#14#143#28'DD'#205#152'kk'#229#236'vv'
+  +#235#254'ss'#234#253'ee'#228#236'@@'#202#153#19#19'v"'#255#255#0#0'33'#9#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#27#27#141#0#0#0'i'#9'CC'#209#148'nn'#234#253
+  +'oo'#236#255'll'#235#255'ii'#235#255'gg'#235#255'ff'#233#253'@@'#205#151#28
+  +#28'V'#15#27#27#131#0'GGI'#0#0#0#0#0#0#0#0#0'mmS'#0#30#30#211#0'(('#189'6\\'
+  +#228#232'aa'#235#255'__'#235#255'__'#235#255']]'#235#255'UU'#233#255'LL'#232
+  +#255'GG'#226#232'**'#175'>'#0#0#255#0'__]'#0#0#0#0#0#0#0#0#0#137#137'g'#0'--'
+  +#245#0'44'#207'^PP'#231#252'II'#233#255'II'#234#255'CC'#234#255'77'#233#255
+  +'))'#230#255#30#30#227#255'//'#228#251'44'#201'd'#0#0#255#0'xxt'#0#0#0#0#0#0
+  +#0#0#0#168#168'{'#0'""'#234#0'11'#210'\33'#229#251'!!'#229#255'$$'#232#255'#'
+  +'#'#234#255'""'#233#255'  '#232#255#29#29#229#255'00'#228#251'88'#206'b'#0#0
+  +#255#0#145#145#140#0#0#0#0#0#0#0#0#0#217#217#144#0#29#29#211#0'--'#205'077'
+  +#227#228'""'#231#255'!!'#233#255'&&'#236#255'&&'#236#255'""'#233#255'##'#231
+  +#255'88'#227#228'??'#201'6'#0#0#229#0#167#167#163#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +'>>'#200#0'55'#180#5'55'#220#135'55'#231#251'&&'#234#255'%%'#236#255'%%'#236
+  +#255'&&'#234#255'55'#231#251';;'#219#138'~~'#188#8'cc'#199#0#223#223#245#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0'QQ'#255#0'++'#194#19'66'#218#135'::'#229#228
+  +'66'#233#251'66'#233#251'::'#229#228'::'#219#138'OO'#194#23#0#0#255#0#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#2#0#0#0#2'##w'#9'//'#192'255'
+  +#208'[77'#208'\88'#194'4HH~'#11#11#11#0#3#0#0#0#2#0#0#0#1#0#0#0#0#0#0#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#1#0#0#0#2#0#0#0#1#0#0#0#0#0#0#0#0#0#0#0#1
+  +#0#0#0#2#0#0#0#1#0#0#0#1#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+  +#0#0#10'TImageList'#7'imTools'#6'Height'#2' '#5'Width'#2' '#4'left'#3#6#2#3
+  +'top'#2'~'#6'Bitmap'#10#14#176#0#0'Li'#11#0#0#0' '#0#0#0' '#0#0#0#255#255#255
+  +#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
@@ -542,7 +577,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
-  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  ,#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
@@ -563,59 +598,58 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
-  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
-  +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#171#171#171#150#171#171
-  +#171#255#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#171
+  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#171#171#171#150#171
   +#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255
-  +#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#170#170#170
-  +#255#167#167#167#255#167#167#167#255#169#169#169#153#171#171#171#0#171#171
-  +#171#0#171#171#171#0#171#171#171#0#171#171#171#0#255#255#255#0#255#255#255#0
-  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
-  +#255#255#0#170#170#170#255#239#239#239#255#243#243#243#255#243#243#243#255
-  +#243#243#243#255#243#243#243#255#243#243#243#255#243#243#243#255#243#243#243
+  +#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171
+  +#255#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#170#170
+  +#170#255#167#167#167#255#167#167#167#255#169#169#169#153#171#171#171#0#171
+  +#171#171#0#171#171#171#0#171#171#171#0#171#171#171#0#255#255#255#0#255#255
+  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  +#255#255#255#0#170#170#170#255#239#239#239#255#243#243#243#255#243#243#243
   +#255#243#243#243#255#243#243#243#255#243#243#243#255#243#243#243#255#243#243
-  +#243#255#243#243#243#255#239#239#239#255#213#213#213#255#197#197#197#255#183
-  +#183#183#255#170#170#170#132#171#171#171#0#171#171#171#0#171#171#171#0#171
+  +#243#255#243#243#243#255#243#243#243#255#243#243#243#255#243#243#243#255#243
+  +#243#243#255#243#243#243#255#239#239#239#255#213#213#213#255#197#197#197#255
+  +#183#183#183#255#170#170#170#132#171#171#171#0#171#171#171#0#171#171#171#0
+  +#171#171#171#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#169#169#169#255#241#240
+  +#241#255#240#240#240#255#240#240#240#255#240#240#240#255#240#240#240#255#240
+  +#240#240#255#240#240#240#255#240#240#240#255#240#240#240#255#240#240#240#255
+  +#240#240#240#255#240#240#240#255#240#240#240#255#240#240#240#255#235#235#235
+  +#255#208#208#208#255#185#185#185#255#220#220#220#255#178#178#178#255#169#169
+  +#169'c'#171#171#171#0#171#171#171#0#171#171#171#0#255#255#255#0#255#255#255#0
+  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  +#255#255#0#167#167#167#255#242#242#242#255#242#241#241#255#241#241#241#255
+  +#241#241#241#255#241#241#241#255#241#242#241#255#241#241#241#255#242#241#242
+  +#255#242#241#242#255#242#241#241#255#241#242#241#255#241#241#241#255#241#241
+  +#241#255#242#242#241#255#237#237#237#255#210#210#210#255#184#184#184#255#226
+  +#226#226#255#222#222#222#255#169#169#169#255#167#167#167'-'#171#171#171#0#171
   +#171#171#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#169#169#169#255#241#240#241
+  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#166#166#166#255#240#240#240
   +#255#240#240#240#255#240#240#240#255#240#240#240#255#240#240#240#255#240#240
   +#240#255#240#240#240#255#240#240#240#255#240#240#240#255#240#240#240#255#240
   +#240#240#255#240#240#240#255#240#240#240#255#240#240#240#255#235#235#235#255
-  +#208#208#208#255#185#185#185#255#220#220#220#255#178#178#178#255#169#169#169
-  +'c'#171#171#171#0#171#171#171#0#171#171#171#0#255#255#255#0#255#255#255#0#255
-  +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  +#255#0#167#167#167#255#242#242#242#255#242#241#241#255#241#241#241#255#241
-  +#241#241#255#241#241#241#255#241#242#241#255#241#241#241#255#242#241#242#255
-  +#242#241#242#255#242#241#241#255#241#242#241#255#241#241#241#255#241#241#241
-  +#255#242#242#241#255#237#237#237#255#210#210#210#255#184#184#184#255#226#226
-  +#226#255#222#222#222#255#169#169#169#255#167#167#167'-'#171#171#171#0#171#171
-  +#171#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
-  +#255#255#255#0#255#255#255#0#255#255#255#0#166#166#166#255#240#240#240#255
-  +#240#240#240#255#240#240#240#255#240#240#240#255#240#240#240#255#240#240#240
-  +#255#240#240#240#255#240#240#240#255#240#240#240#255#240#240#240#255#240#240
-  +#240#255#240#240#240#255#240#240#240#255#240#240#240#255#235#235#235#255#205
-  +#205#205#255#182#182#182#255#215#216#216#255#225#225#225#255#196#196#196#255
-  +#163#163#163#156#171#171#171#1#171#171#171#0#255#255#255#0#255#255#255#0#255
-  +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  +#255#0#164#164#164#255#239#239#239#255#238#238#238#255#238#238#238#255#239
-  +#238#238#255#238#238#238#255#238#238#238#255#238#239#238#255#238#238#238#255
-  +#238#238#239#255#238#238#238#255#238#238#238#255#239#238#238#255#238#238#238
-  +#255#238#238#238#255#234#233#234#255#199#199#200#255#174#174#174#255#180#180
-  +#180#255#183#183#183#255#183#183#183#255#157#157#157#255#171#171#171#7#171
-  +#171#171#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#162#162#162#255#237#237#237
-  +#255#236#237#237#255#237#237#237#255#237#237#236#255#237#236#237#255#237#237
-  +#237#255#236#237#236#255#237#236#237#255#237#237#237#255#236#237#237#255#237
-  +#237#237#255#237#237#237#255#237#237#237#255#237#237#237#255#234#234#234#255
-  +#220#220#220#255#218#218#218#255#221#221#221#255#223#223#223#255#222#222#222
-  +#255#160#160#160#255#171#171#171#9#171#171#171#0#255#255#255#0#255#255#255#0
-  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
-  +#255#255#0#160#160#160#255#235#235#235#255#235#235#235#255#235#234#234#255
-  +#234#235#234#255#234#234#234#255#235#235#235#255#235#235#235#255#235#235#234
-  +#255#235#234#234#255#235#234#234#255#235#234#234#255#235#235#234#255#235#235
-  +#234#255#234#234#235#255#233#234#233#255#234#233#234#255#234#234#233#255#235
-  +#234#234#255#235#235#235#255#232#232#232#255#158#158#158#255#171#171#171#4
+  +#205#205#205#255#182#182#182#255#215#216#216#255#225#225#225#255#196#196#196
+  +#255#163#163#163#156#171#171#171#1#171#171#171#0#255#255#255#0#255#255#255#0
+  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  +#255#255#0#164#164#164#255#239#239#239#255#238#238#238#255#238#238#238#255
+  +#239#238#238#255#238#238#238#255#238#238#238#255#238#239#238#255#238#238#238
+  +#255#238#238#239#255#238#238#238#255#238#238#238#255#239#238#238#255#238#238
+  +#238#255#238#238#238#255#234#233#234#255#199#199#200#255#174#174#174#255#180
+  +#180#180#255#183#183#183#255#183#183#183#255#157#157#157#255#171#171#171#7
   +#171#171#171#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#162#162#162#255#237#237
+  +#237#255#236#237#237#255#237#237#237#255#237#237#236#255#237#236#237#255#237
+  +#237#237#255#236#237#236#255#237#236#237#255#237#237#237#255#236#237#237#255
+  +#237#237#237#255#237#237#237#255#237#237#237#255#237#237#237#255#234#234#234
+  ,#255#220#220#220#255#218#218#218#255#221#221#221#255#223#223#223#255#222#222
+  +#222#255#160#160#160#255#171#171#171#9#171#171#171#0#255#255#255#0#255#255
+  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  +#255#255#255#0#160#160#160#255#235#235#235#255#235#235#235#255#235#234#234
+  +#255#234#235#234#255#234#234#234#255#235#235#235#255#235#235#235#255#235#235
+  +#234#255#235#234#234#255#235#234#234#255#235#234#234#255#235#235#234#255#235
+  +#235#234#255#234#234#235#255#233#234#233#255#234#233#234#255#234#234#233#255
+  +#235#234#234#255#235#235#235#255#232#232#232#255#158#158#158#255#171#171#171
+  +#4#171#171#171#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#158#158#158#255#234#234
   +#234#255#233#233#233#255#233#233#233#255#233#233#233#255#233#233#233#255#233
   +#233#233#255#233#233#233#255#233#233#233#255#233#233#233#255#233#233#233#255
@@ -641,7 +675,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#227#255#226#226#226#255#226#226#226#255#225#225#225#255#223#223#223#255#223
   +#223#223#255#222#223#222#255#223#223#223#255#223#223#223#255#223#222#223#255
   +#223#222#223#255#223#223#223#255#221#221#221#255#151#151#152#255#255#255#255
-  ,#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  +#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#149#149#150#255#226#226
   +#226#255#225#225#226#255#225#226#225#255#225#226#225#255#225#225#225#255#225
   +#225#225#255#224#224#224#255#223#223#223#255#222#222#222#255#222#222#222#255
@@ -671,7 +705,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#140#140#141#255#213#213
   +#213#255#211#211#211#255#210#210#210#255#210#210#210#255#210#210#210#255#210
   +#210#210#255#210#210#210#255#210#210#210#255#210#210#210#255#210#210#210#255
-  +#210#210#210#255#210#210#210#255#210#210#210#255#210#210#210#255#210#210#210
+  ,#210#210#210#255#210#210#210#255#210#210#210#255#210#210#210#255#210#210#210
   +#255#210#210#210#255#210#210#210#255#210#210#210#255#210#210#210#255#212#212
   +#212#255#140#140#141#255#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
@@ -705,7 +739,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#204#204#255#204#204#204#255#204#204#204#255#204#204#204#255#204#204#204#255
   +#204#204#204#255#204#204#204#255#204#204#204#255#204#204#204#255#204#204#204
   +#255#204#204#204#255#204#204#204#255#204#204#204#255#204#204#204#255#204#204
-  ,#204#255#207#207#207#255#130#130#131#255#0#0#0#1#0#0#0#0#255#255#255#0#255
+  +#204#255#207#207#207#255#130#130#131#255#0#0#0#1#0#0#0#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#128#128#128#2#129#129#130#255#206#206#206#255#203#203#203#255#203#203
   +#203#255#203#203#203#255#203#203#203#255#203#203#203#255#203#203#203#255#203
@@ -735,7 +769,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
-  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  ,#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
@@ -769,7 +803,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#233#234#255#227#226#226#255#202#201#201#255#178#178#178#255#170#170#170#156
   +#170#170#170'3'#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#170#170#170#0#170#170#170#0#170#170#170#0#255#255#255#0#255#255
-  ,#255#0#255#255#255#0#255#255#255#0#169#169#169#0#169#169#169#0#255#255#255#0
+  +#255#0#255#255#255#0#255#255#255#0#169#169#169#0#169#169#169#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#169#169#169#138#177#177#177#255#218#215#216#255
   +#248#243#243#255#249#242#243#255#245#237#239#255#243#234#235#255#241#234#235
   +#255#241#237#238#255#243#241#242#255#244#243#243#255#246#244#244#255#245#244
@@ -799,7 +833,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#231#255#239#238#239#255#236#235#236#255#236#235#236#255#235#235#236#255#235
   +#235#237#255#236#234#237#255#235#230#235#255#233#228#233#255#232#231#234#255
   +#231#234#237#255#230#234#236#255#230#234#236#255#230#234#236#255#231#234#235
-  +#255#232#235#235#255#234#235#236#255#235#235#236#255#239#238#239#255#236#235
+  ,#255#232#235#235#255#234#235#236#255#235#235#236#255#239#238#239#255#236#235
   +#235#255#170#170#170#255#163#163#163'6'#163#163#163#0#163#163#163#0#163#163
   +#163#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#161#161#161#0
   +#161#161#161#159#203#202#203#255#237#236#237#255#235#234#235#255#234#234#235
@@ -833,7 +867,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#203#205#207#255#211#211#211#155#253#255#255'Z'#253#255#255'Z'#255#255
   +#255'Y'#255#255#255'Y'#211#211#211#155#202#204#207#255#220#228#232#255#219
   +#226#230#255#221#226#230#255#224#227#230#255#226#228#230#255#228#228#230#255
-  ,#231#230#231#255#217#214#215#255#152#152#153#228#171#171#171#0#171#171#171#0
+  +#231#230#231#255#217#214#215#255#152#152#153#228#171#171#171#0#171#171#171#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#150#150#151#249#214
   +#212#213#255#229#228#228#255#228#227#228#255#226#226#228#255#224#226#228#255
   +#222#226#228#255#220#225#228#255#220#226#231#255#191#191#192#255#237#237#237
@@ -863,7 +897,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +'222'#13#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#141#141#142
   +'x'#174#173#174#255#212#207#210#255#206#202#205#255#204#201#205#255#201#201
   +#205#255#197#200#205#255#194#200#204#255#194#202#208#255#199#210#216#255#177
-  +#188#193#255#163#163#163#255#237#237#237#255#201#201#201#255'r'#202#250#255
+  ,#188#193#255#163#163#163#255#237#237#237#255#201#201#201#255'r'#202#250#255
   +'{'#205#250#255'y'#205#250#255'v'#203#250#255'u'#203#250#255's'#203#250#255
   +'r'#202#249#255'q'#201#249#255'j'#199#249#255'M'#188#248#255#201#201#201#255
   +#237#237#237#255#163#163#163#255'222'#18#255#255#255#0#255#255#255#0#255#255
@@ -897,7 +931,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#206#208#255#199#199#200#255#192#192#194#255#192#191#194#255#191#191#194#255
   +#177#178#182#255#141#141#142#255#237#237#237#255#201#201#201#255#11'V'#206
   +#255#13'W'#207#255#19'\'#208#255#25'`'#210#255#30'c'#211#255'!e'#211#255'"g'
-  ,#212#255'$h'#212#255'+m'#213#255'=z'#217#255#201#201#201#255#237#237#237#255
+  +#212#255'$h'#212#255'+m'#213#255'=z'#217#255#201#201#201#255#237#237#237#255
   +#141#141#142#255'222'#20#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#130#130#131#0#0#0#0#1#128#128#128#2'fff'#5#129#129#130#151#153#153#154
   +#255#207#206#207#255#205#202#204#255#196#194#196#255#192#190#193#255#178#174
@@ -927,7 +961,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#0#255#255#255#0#255#255#255#0'}}~'#0'}}~'#0'}}~'#0#0#0#0#1#0#0#0#1
   +#128#128#128#2#128#128#128#2#128#128#128#2'UUU'#3'@@@'#4'VVV'#7'III'#11'<<<'
   +#19':::'#24'999'#26';;;'#25'>>>'#24'666'#23'888'#22'888'#22'888'#22'000'#21
-  +'000'#21'222'#20'222'#18'222'#13'222'#6'222'#2#255#255#255#0#255#255#255#0
+  ,'000'#21'222'#20'222'#18'222'#13'222'#6'222'#2#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
@@ -961,7 +995,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#171#171#171#150#171
   +#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255
   +#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171
-  ,#255#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#170#170
+  +#255#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#170#170
   +#170#255#167#167#167#255#167#167#167#255#169#169#169#153#171#171#171#0#171
   +#171#171#0#171#171#171#0#171#171#171#0#171#171#171#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
@@ -991,7 +1025,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#205#205#205#255#182#182#182#255#215#216#216#255#225#225#225#255#196#196#196
   +#255#163#163#163#156#171#171#171#1#171#171#171#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
-  +#255#255#0#164#164#164#255#239#239#239#255#238#238#238#255#238#238#238#255
+  ,#255#255#0#164#164#164#255#239#239#239#255#238#238#238#255#238#238#238#255
   +#172#172#172#255'}}~'#255'}}~'#255'}}~'#255#172#172#172#255#238#238#239#255
   +#238#238#238#255#238#238#238#255#239#238#238#255#172#172#172#255'}}~'#255'zz'
   +'{'#255#134#134#135#255#168#168#169#255#180#180#180#255#183#183#183#255#183
@@ -1025,7 +1059,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#154#154#255#230#230#230#255#229#229#229#255#229#229#229#255'ggg'#255#146#146
   +#147#255#145#145#146#255#137#137#138#255#211#211#211#255#206#127#199#255#206
   +#127#199#255#206#127#199#255#206#127#199#255#211#211#211#255#137#137#138#255
-  ,#145#145#146#255#128#128#129#255'ggg'#255#224#223#224#255#224#223#224#255#222
+  +#145#145#146#255#128#128#129#255'ggg'#255#224#223#224#255#224#223#224#255#222
   +#221#222#255#154#154#154#255#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#151#151#152#255#228#228#228#255#227#227#227#255#227#227
@@ -1055,7 +1089,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#0#142#142#143#255#214#214#214#255#212#212#212#255#211#211#211#255'H'
   +'HI'#255'sst'#255#151#151#151#255']]]'#255#171#171#171#255#171#171#171#255
   +#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255']]]'#255#151
-  +#151#151#255'sst'#255'HHI'#255#210#210#210#255#210#210#210#255#212#212#212
+  ,#151#151#255'sst'#255'HHI'#255#210#210#210#255#210#210#210#255#212#212#212
   +#255#142#142#143#255#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#140#140#141#255#213#213#213#255#211#211#211#255#210#210#210#255'C'
@@ -1089,7 +1123,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#130#131#255#207#207#207#255#204#204#204#255#204#204#204#255#204#204#204#255
   +#204#204#204#255#204#204#204#255#204#204#204#255#204#204#204#255#204#204#204
   +#255#204#204#204#255#204#204#204#255#204#204#204#255#204#204#204#255#204#204
-  ,#204#255#204#204#204#255#204#204#204#255#204#204#204#255#204#204#204#255#204
+  +#204#255#204#204#204#255#204#204#204#255#204#204#204#255#204#204#204#255#204
   +#204#204#255#207#207#207#255#130#130#131#255#0#0#0#1#0#0#0#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#128#128#128#2#129#129#130#255#206#206#206#255#203#203#203#255#203
@@ -1119,7 +1153,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#128#128#2#128#128#128#2#0#0#0#1#0#0#0#1#0#0#0#0#0#0#0#0#0#0#0#0#255#255#255
   +#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
@@ -1153,7 +1187,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
-  ,#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0'222'#4'222'#15'222'#24
   +'222'#15'222'#4'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'
   +#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0#255#255#255#0#255#255#255#0#255
@@ -1183,7 +1217,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#226#206#255'}'#231#213#255#130#230#210#255'M'#204#173#255#11#175'~'#255#17
   +#140'g'#174'&SED222'#27'222'#9'222'#1'g'#233#216#0'g'#233#216#0'222'#0'222'#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
-  +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
+  ,#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0'222-'#6#168'v'#255'U'#222#198#255'R'#221#196#255'R'#221
   +#196#255'R'#221#196#255'R'#221#196#255'U'#221#198#255'd'#225#203#255'z'#230
   +#211#255#131#230#212#255'V'#206#176#255#17#173'~'#255#16#140'f'#184' cNW222'
@@ -1217,7 +1251,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#205#169#255':'#205#169#255':'#205#169#255':'#205#169#255';'#205#170#255'A'
   +#209#175#255'M'#216#186#255'Q'#216#188#255','#178#139#255#11#147'`'#255#21'v'
   +'R'#167'/850222'#13'222'#1#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0'222-'#9#141'Y'#255'<'#205#170#255
   +'8'#202#166#255'8'#202#166#255'8'#202#166#255'8'#202#166#255'8'#202#166#255
   +'9'#202#167#255'>'#206#172#255'I'#212#182#255'Q'#214#187#255'1'#181#142#255
@@ -1247,7 +1281,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#25#142'^'#255#17'oB'#210#27'\=z222"222'#12'222'#3'222'#0'222'#0'222'#0
   +'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +'222'#15#24'a=|'#16'o@'#212#26'^<'#133'222%222'#14'222'#4'222'#0'222'#0'222'
   +#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0'222'#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
@@ -1281,7 +1315,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
@@ -1311,7 +1345,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#4#182#132#0#4#182#132#0#4#182#132#0#4#182#132#0#4#182#132#0#4#182#132#0#4
   +#182#132'3'#4#182#132#156#21#188#142#255'K'#206#172#255'}'#223#200#255#139
-  +#228#208#255#171#238#226#255#171#238#226#255#139#228#208#255'}'#223#200#255
+  ,#228#208#255#171#238#226#255#171#238#226#255#139#228#208#255'}'#223#200#255
   +'K'#206#172#255#21#188#142#255#4#182#132#156#4#182#132'3'#4#182#132#0#4#182
   +#132#0#4#182#132#0#4#182#132#0#4#182#132#0#4#182#132#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#4#180#131#0#4
@@ -1345,7 +1379,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255'S'#222#198#255'W'#223#199#255'T'#187#169#255'W'#223#199#255'd'#226#204
   +#255'j'#221#199#255#17#176#130#255#6#170'y6'#6#170'y'#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#6#167'u'#0#6
-  ,#167'u'#159'>'#199#166#255'h'#224#202#255'S'#221#197#255'R'#221#196#255'R'
+  +#167'u'#159'>'#199#166#255'h'#224#202#255'S'#221#197#255'R'#221#196#255'R'
   +#221#196#255'R'#221#196#255'R'#221#196#255'R'#221#196#255'R'#221#196#255'R'
   +#221#196#255'R'#221#196#255'R'#221#196#255'R'#221#196#255'R'#221#196#255'R'
   +#221#196#255'Y'#223#199#255'V'#186#168#255';NK'#255'^'#224#200#255'S'#221#197
@@ -1375,7 +1409,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255'@@@'#255']'#161#148#255'b'#222#198#255'N'#217#191#255'N'#217#191#255'N'
   +#217#191#255'N'#217#191#255'S'#219#192#255'<'#204#171#255#7#155'h'#228#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  +#255#0#8#152'e'#249'@'#209#175#255'O'#217#190#255'L'#217#189#255'M'#217#189
+  ,#255#0#8#152'e'#249'@'#209#175#255'O'#217#190#255'L'#217#189#255'M'#217#189
   +#255't'#222#201#255'k'#194#177#255'k'#194#177#255'k'#194#177#255't'#224#202
   +#255'V'#219#193#255'L'#217#189#255'V'#219#193#255't'#222#201#255'Qnh'#255'CC'
   +'C'#255'U{s'#255'g'#223#199#255'L'#217#189#255'L'#217#189#255'L'#217#189#255
@@ -1409,7 +1443,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#213#190#255'\lh'#255'TTT'#255'[kg'#255#127#216#193#255'F'#205#170#255'5'#200
   +#162#255'5'#200#162#255'5'#200#162#255'5'#200#162#255'5'#200#162#255'5'#200
   +#162#255'5'#200#162#255':'#203#167#255'A'#207#173#255#16#144'^'#255#10#136'T'
-  ,#27#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  +#27#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#10#133'P'#0#10#133'P'#150','#178#136#255'?'#207#172#255'4'#199#161
   +#255'3'#199#160#255'3'#199#160#255'3'#199#160#255'3'#199#160#255'U'#208#176
   +#255#128#207#186#255'^nj'#255'}'#199#180#255'V'#208#176#255'3'#199#160#255'3'
@@ -1439,7 +1473,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#153#255'-'#194#153#255'-'#194#153#255'-'#194#153#255'-'#194#153#255'-'#194
   +#153#255'3'#198#159#255'?'#206#171#255'G'#209#176#255#29#148'f'#255#13'yF'
   +#152'III'#7'UUU'#3#0#0#0#1#11'zF'#0#255#255#255#0#255#255#255#0#255#255#255#0
-  +#255#255#255#0#255#255#255#0#255#255#255#0#12'xC'#0#128#128#128#2'mmm'#7'UUU'
+  ,#255#255#255#0#255#255#255#0#255#255#255#0#12'xC'#0#128#128#128#2'mmm'#7'UUU'
   +#18'UUU!'#23'sF'#157#16'~K'#255'4'#177#138#255'J'#212#181#255'C'#208#175#255
   +':'#202#165#255'3'#198#158#255'0'#196#155#255'0'#196#155#255'3'#198#158#255
   +':'#202#165#255'C'#208#175#255'J'#212#181#255'4'#177#138#255#16'~K'#255#24't'
@@ -1473,7 +1507,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
@@ -1503,7 +1537,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +'?'#213#27#11'?'#213#0#11'?'#213#0#11'?'#213#0#11'?'#213#0#11'?'#213#0#11'?'
   +#213#0#11'?'#213#0#11'?'#213#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#11'?'#212#0#11'?'#212#0#11'?'#212#0#11
-  +'?'#212#0#11'?'#212#0#11'?'#212#0#11'?'#212'3'#11'?'#212#156#25'K'#215#255'I'
+  ,'?'#212#0#11'?'#212#0#11'?'#212#0#11'?'#212'3'#11'?'#212#156#25'K'#215#255'I'
   +'q'#223#255'u'#148#231#255#129#157#234#255#157#180#239#255#157#180#239#255
   +#129#157#234#255'u'#148#231#255'Iq'#223#255#25'K'#215#255#11'?'#212#156#11'?'
   +#212'3'#11'?'#212#0#11'?'#212#0#11'?'#212#0#11'?'#212#0#11'?'#212#0#11'?'#212
@@ -1537,7 +1571,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +'Js'#225#255'd'#135#229#255'V}'#226#255#18'C'#207#255#10'<'#205'6'#10'<'#205
   +#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#10'<'#203#0#10'<'#203#159'/\'#217#255'`'#132#229#255'Js'#225#255
-  ,'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'
+  +'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'
   +#225#255'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'#225#255'Hr'#225
   +#255'Hr'#225#255'Hr'#225#255'Hr'#225#255'Js'#225#255'`'#132#229#255'/\'#217
   +#255#10'<'#203#159#10'<'#203#0#255#255#255#0#255#255#255#0#255#255#255#0#255
@@ -1567,7 +1601,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +':::'#255':::'#255':::'#255':::'#255':::'#255':::'#255':::'#255'Z~'#227#255
   +'@j'#223#255'@j'#223#255'@j'#223#255'Bl'#223#255#31'R'#217#255#9'9'#194#249
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
-  +#255#255#0#9'8'#191#249#31'S'#218#255#30'P'#217#255#29'O'#217#255#29'O'#217
+  ,#255#255#0#9'8'#191#249#31'S'#218#255#30'P'#217#255#29'O'#217#255#29'O'#217
   +#255#29'O'#217#255'Qw'#226#255'EEE'#255'EEE'#255'EEE'#255'EEE'#255'EEE'#255
   +'EEE'#255'EEE'#255'EEE'#255'EEE'#255'EEE'#255'EEE'#255'EEE'#255'Qw'#226#255
   +#29'O'#217#255#29'O'#217#255#29'O'#217#255#30'P'#217#255#31'S'#218#255#9'8'
@@ -1601,7 +1635,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#19'F'#214#255#19'F'#214#255#19'F'#214#255#19'F'#214#255#19'G'#214#255#27
   +'R'#219#255#21'H'#205#255#8'5'#182#150#8'5'#182#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#8'5'#180#0#8'5'#180
-  ,'-'#10'8'#184#255#28'S'#220#255#23'M'#218#255#17'D'#214#255#17'D'#214#255#17
+  +'-'#10'8'#184#255#28'S'#220#255#23'M'#218#255#17'D'#214#255#17'D'#214#255#17
   +'D'#214#255#17'D'#214#255#17'D'#214#255#17'D'#214#255#17'D'#214#255#17'D'#214
   +#255#17'D'#214#255#17'D'#214#255#17'D'#214#255#17'D'#214#255#17'D'#214#255#17
   +'D'#214#255#17'D'#214#255#17'D'#214#255#23'M'#218#255#28'S'#220#255#10'8'#184
@@ -1631,7 +1665,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#0#255#255#255#0#7'2'#173#0'UUU'#3']]]'#11'XXX'#29'WWW5XXXK:Jyv'#24':'#156
   +#189#9'6'#178#255#19'E'#195#255#27'U'#213#255#30'Y'#218#255'"`'#226#255'"`'
   +#226#255#30'Y'#218#255#27'U'#213#255#19'E'#195#255#9'6'#178#255#24':'#155#190
-  +':JxyXXXQVVV>WWW&UUU'#18'UUU'#6#0#0#0#1#255#255#255#0#255#255#255#0#255#255
+  ,':JxyXXXQVVV>WWW&UUU'#18'UUU'#6#0#0#0#1#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#7'2'#172#0#128#128#128#2'mm'
   +'m'#7'UUU'#18'UUU!WWW/WWW8YYY<@MqR'#30'='#147#144#16'6'#163#202#13'5'#166#220
   +#9'3'#170#245#9'3'#170#245#13'5'#166#220#16'6'#163#203#31'='#146#146'BNrSXXX'
@@ -1665,7 +1699,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
@@ -1695,7 +1729,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#169#164#159#255#167#167#166#255#167#167#166#255#169#164#159#255#169#160
   +#152#255#176#158#142#255#192#167#138#255#229#208#158#255#248#231#185#255#248
   +#230#179#255#221#166'm'#255#201'w;'#150#255#255#255#0#201'w;'#0#201'w;'#0#255
-  +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
+  ,#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0'ddd'#0'ddd'#0#198't:'#139#204#142'V'#255#220#207#175#255#237#237#236
   +#255#217#207#198#255#185#160#138#255#173#163#155#255#178#178#178#255#188#188
   +#188#255#195#195#195#255#199#199#199#255#199#199#199#255#195#195#195#255#188
@@ -1729,7 +1763,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#193'l6'
   +#189#223#170'c'#255#234#206#156#255#193#162#127#255#192#180#172#255#220#220
   +#221#255#235#235#235#255#239#239#239#255#240#240#240#255#240#240#240#255#240
-  ,#240#240#255#240#240#240#255#240#240#240#255'aaa'#255#240#240#240#255#240#240
+  +#240#240#255#240#240#240#255#240#240#240#255'aaa'#255#240#240#240#255#240#240
   +#240#255#240#240#240#255#240#240#240#255#239#239#239#255#234#234#234#255#219
   +#219#219#255#193#174#155#255#212#174'~'#255#242#213#160#255#224#171'c'#255
   +#193'l6'#189#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
@@ -1759,7 +1793,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#246#255#245#245#245#255#228#224#222#255#187#155#137#255#202#183#152#255#214
   +#167'f'#255#186'c2'#228#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255
   +#0#255#255#255#0#255#255#255#0#184'a1'#186#218#159']'#255#231#187'y'#255#196
-  +#147'`'#255#215#200#191#255#246#246#246#255#247#247#247#255#247#247#247#255
+  ,#147'`'#255#215#200#191#255#246#246#246#255#247#247#247#255#247#247#247#255
   +#247#247#247#255#247#247#247#255#247#247#247#255#247#247#247#255#247#247#247
   +#255#247#247#247#255#204#204#238#255#201#201#237#255#247#247#247#255#247#247
   +#247#255#247#247#247#255#247#247#247#255#246#246#246#255#217#204#196#255#196
@@ -1793,7 +1827,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +'-'#135#190'q?'#255#215#170'l'#255#205#191#173#255#200#164#134#255#192#131'X'
   +#255#227#201#184#255#253#253#253#255#253#253#253#255#253#253#253#255#253#253
   +#253#255#253#253#253#255#253#253#253#255#253#253#253#255#253#253#253#255#231
-  ,#216#209#255#189#147#127#255#199#179#169#255#206#205#204#255#202#170#128#255
+  +#216#209#255#189#147#127#255#199#179#169#255#206#205#204#255#202#170#128#255
   +#185'n='#255#177'X-'#135#235#235#235#0'ddd'#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0'ddd'#0'ddd'#0#235#235
   +#235#0#176'V,'#147#194'yF'#255#209#167'm'#255#205#192#178#255#213#202#197#255
@@ -1823,7 +1857,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#0#255#255#255#0#255#255#255#0#255#255#255#0#172'Q*'#0#0#0#0#1#128#128#128#2
   +'fff'#5'MMM'#10'[[['#14'ZZZ'#17'UUU'#18'YYY'#20'UUU'#24'RRR'#28'XXX'#29'UUU'
   +#30'UUU'#30'UUU'#30'XXX'#29'XXX'#26'UUU'#21'QQQ'#19'ZZZ'#17'UUU'#15'UUU'#12
-  +'III'#7'UUU'#3#0#0#0#1'ddd'#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  ,'III'#7'UUU'#3#0#0#0#1'ddd'#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#172'Q*'#0#172'Q*'#0'ddd'#0#0#0#0#1#0#0
   +#0#1#128#128#128#2#128#128#128#2#128#128#128#2'UUU'#3'@@@'#4'fff'#5'fff'#5'U'
   +'UU'#6'UUU'#6'UUU'#6'fff'#5#128#128#128#4'UUU'#3#128#128#128#2#128#128#128#2
@@ -1857,7 +1891,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#230#177'N'#255#230#177'N'#255#230#177'N'#255#230#177'N'#255#230#177'N'#255
   +#230#177'N'#255#230#177'N'#255#230#177'N'#255#230#177'N'#255#235#191'o'#255
   +#201'y '#255'XXX'#0'XXX'#0'XXX'#0'XXX'#0'XXX'#0'XXX'#0'XXX'#0'XXX'#0'XXX'#0
-  ,'XXX'#0'XXX'#0'XXX'#0'XXX'#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  +'XXX'#0'XXX'#0'XXX'#0'XXX'#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#171#171#171#0#181#147'q'#255#171#171#171#255#171#171
   +#171#255#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#171
   +#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255#171#171#171#255
@@ -1887,7 +1921,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#19#165#165#166#255#249#249#249#255#249#249#249#255#174#174#174#255#164#164
   +#164#255#174#174#174#255#142#142#142#255#175#175#175#255#175#175#175#255#142
   +#142#142#255#175#175#175#255#251#251#251#255#251#251#251#255#251#251#251#255
-  +#251#251#251#255#251#251#251#255#251#251#251#255#251#251#251#255#250#250#250
+  ,#251#251#251#255#251#251#251#255#251#251#251#255#251#251#251#255#250#250#250
   +#255#250#250#250#255#250#250#250#255#250#250#250#255#249#249#249#255#249#249
   +#249#255#165#165#166#255'XXX'#19#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0'XXX'#21#164#164#164#255#247#247#247#255#247#247
@@ -1921,7 +1955,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#128#128#128#255#209#209#209#255#169#169#169#255#169#169#169#255#199#199
   +#199#255#199#199#199#255#199#199#199#255#238#238#238#255#238#238#238#255#238
   +#238#238#255#237#237#237#255#237#237#237#255#237#237#237#255#236#236#236#255
-  ,#240#240#240#255#155#155#155#255'XXX'#21#255#255#255#0#255#255#255#0#255#255
+  +#240#240#240#255#155#155#155#255'XXX'#21#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0'XXX'#21#153#153#153#255#238#238#238#255
   +#233#233#233#255#234#234#234#255#234#234#234#255#235#235#235#255#176#176#176
   +#255#236#236#236#255#236#236#236#255#236#236#236#255#237#237#237#255#237#237
@@ -1951,7 +1985,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#0'XXX'#21#143#143#144#255#231#231#231#255#223#223#223#255#151#151
   +#151#255#170#170#170#255#225#225#225#255#226#226#226#255#226#226#226#255#227
   +#227#227#255#227#227#227#255#228#228#228#255#228#228#228#255#228#228#228#255
-  +#228#228#228#255#228#228#228#255#227#227#227#255#227#227#227#255#226#226#226
+  ,#228#228#228#255#228#228#228#255#227#227#227#255#227#227#227#255#226#226#226
   +#255#226#226#226#255#225#225#225#255#224#224#224#255#224#224#224#255#223#223
   +#223#255#231#231#231#255#143#143#144#255'XXX'#21#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0'XXX'#21#141#141#142#255#230#230
@@ -1985,7 +2019,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#156#156#156#255#131#131#131#255#217#217#217#255#200#200#200#255#131#131#131
   +#255#157#157#157#255'rrr'#255#198#198#198#255#215#215#215#255#214#214#214#255
   +#214#214#214#255#213#213#213#255#212#212#212#255#211#211#211#255#224#224#224
-  ,#255#132#132#133#255'XXX'#21#255#255#255#0#255#255#255#0#255#255#255#0#255
+  +#255#132#132#133#255'XXX'#21#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0'XXX'#21#131#131#131#255#223#223#223#255#209#209#209
   +#255#153#153#153#255#145#145#145#255'yyy'#255#138#138#138#255#163#163#163#255
   +#155#155#155#255#155#155#155#255'zzz'#255#215#215#215#255#164#164#164#255#173
@@ -2015,7 +2049,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#127'XXX'#127'XXX'#127'XXX'#127'XXX'#127'XXX'#127'XXX'#127'XXXqXXXUXXX+XXX'
   +#14#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0'XX'
   +'X'#7'XXX'#21'XXX+XXX9XXX@XXX@XXX@XXX@XXX@XXX@XXX@XXX@XXX@XXX@XXX@XXX@XXX@XX'
-  +'X@XXX@XXX@XXX@XXX@XXX@XXX9XXX+XXX'#21'XXX'#7#255#255#255#0#255#255#255#0#255
+  ,'X@XXX@XXX@XXX@XXX@XXX@XXX9XXX+XXX'#21'XXX'#7#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0'XXX'#2'XXX'#7'XXX'#14'XXX'#19'XXX'#21
   +'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'
   +#21'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'#21'XXX'#19
@@ -2049,7 +2083,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
@@ -2079,7 +2113,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0'XXX'#0'XXX'#1'XXX'#1'XXX'#3'XXX'#4'XXX'#6'XXX'#6
   +'XXX'#7'XXX'#7'XXX'#7'XXX'#7'XXX'#7'XXX'#7'XXX'#7'XXX'#7'XXX'#7'XXX'#7'XXX'#7
   +'XXX'#7'XXX'#6'XXX'#6'XXX'#4'XXX'#3'XXX'#1'XXX'#1'XXX'#0#255#255#255#0#255
@@ -2113,7 +2147,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +'O'#217#255#30'O'#217#255#30'O'#217#255#30'O'#217#255#30'O'#217#255#30'O'#217
   +#255#30'O'#217#255#30'O'#217#255#30'O'#217#255#30'O'#217#255#30'O'#217#255#30
   +'O'#217#255'!S'#219#255#9'9'#192#255'XXX$XXX'#18'XXX'#6#255#255#255#0#255#255
-  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0'XXX'#6'XXX'#18
+  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0'XXX'#6'XXX'#18
   +'XXX$'#8'6'#186#255#25'M'#217#255#22'I'#215#255#22'I'#215#255#22'I'#215#255
   +#22'I'#215#255#22'I'#215#255#22'I'#215#255#22'I'#215#255#22'I'#215#255#22'I'
   +#215#255#22'I'#215#255#22'I'#215#255#22'I'#215#255#22'I'#215#255#22'I'#215
@@ -2143,7 +2177,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +'XXX'#7'XXX'#7'XXX'#7'XXX'#7'XXX'#7'XXX'#6'XXX'#6'XXX'#4'XXX'#3'XXX'#1'XXX'#1
   +'XXX'#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
-  +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
+  ,#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
@@ -2177,7 +2211,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
@@ -2207,7 +2241,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
   +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#128'U+'#6
   +#135'I'#31#198#170'|['#173#171'|['#201#156'fA'#225#160'kD'#239#178#131'b'#253
-  +#205#171#144#255#207#173#147#255#204#167#140#255#203#166#138#255#207#173#148
+  ,#205#171#144#255#207#173#147#255#204#167#140#255#203#166#138#255#207#173#148
   +#255#193#153'|'#255#138'M!'#233#133'G'#31#25#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
   +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
   +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#134'J'#31'r'#145'Z2'#215#143'U-'#234#135'L'#31
@@ -2241,7 +2275,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#0#0#0#0#0#0#0#0#0#0#0#0'SSSY'#151#151#151#255#248#248#248#255#229#229#229
   +#255#195#173#156#255#149'^8'#255#194#153'z'#255#200#161#131#255#201#163#134
   +#255#203#166#138#255#204#168#141#255#184#133'_'#255#183#132']'#255#182#130'['
-  ,#255#207#175#148#255#208#176#151#255#209#178#153#255#209#177#152#255#176#130
+  +#255#207#175#148#255#208#176#151#255#209#178#153#255#209#177#152#255#176#130
   +'a'#255#155'jH'#255#219#218#217#255#237#237#237#255'~~~'#255'TTTC'#0#0#0#0#0
   +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0'SSS'#188#223#223#223
   +#255#236#236#236#255#224#224#224#255#227#227#227#255#185#155#134#255#152'a:'
@@ -2271,7 +2305,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +'l='#255#198#157'~'#255#162'pJ'#255#159'vX'#255#208#208#208#255#209#209#209
   +#255#210#210#210#255#212#212#212#255#214#214#214#255#222#222#222#255#212#212
   +#212#255#229#229#229#255#127#127#127#255'QQQH'#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
-  +#0'SSS'#179#216#216#216#255#231#231#231#255#220#220#220#255#227#227#227#255
+  ,#0'SSS'#179#216#216#216#255#231#231#231#255#220#220#220#255#227#227#227#255
   +#223#223#223#255#214#214#214#255#213#213#213#255#213#213#213#255#212#212#212
   +#255#209#209#209#255#198#191#186#255#142'W/'#255#177#130'^'#255#202#165#137
   +#255#173'|Y'#255#147'`<'#255#197#195#193#255#202#202#202#255#204#204#204#255
@@ -2305,7 +2339,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#240#240#240#255#224#224#224#255#225#225#225#255#225#225#225#255#224#224#224
   +#255#224#224#224#255#223#223#223#255#223#223#223#255#222#222#222#255#221#221
   +#221#255#221#221#221#255#221#221#221#255#220#220#220#255#220#220#220#255#219
-  ,#219#219#255#219#219#219#255#218#218#218#255#218#218#218#255#218#218#218#255
+  +#219#219#255#219#219#219#255#218#218#218#255#218#218#218#255#218#218#218#255
   +#217#217#217#255#216#216#216#255#215#215#215#255#215#215#215#255#214#214#214
   +#255#214#214#214#255#213#213#213#255#213#213#213#255#208#208#208#255'SSS'#255
   +#0#0#0#0#0#0#0#0'SSS'#255#236#236#236#255#186#186#186#255#186#186#186#255#185
@@ -2335,7 +2369,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#145#145#145#255#192#192#192#255#143#143#143#255#191#191#191#255#159#159#159
   +#255#178#178#178#255'SSS'#255#0#0#0#0#0#0#0#0'SSS'#255#228#228#228#255#186
   +#186#186#255#184#184#184#255#184#184#184#255#181#181#181#255#185#185#185#255
-  +#179#179#179#255#176#176#176#255#175#175#175#255#172#172#172#255#173#173#173
+  ,#179#179#179#255#176#176#176#255#175#175#175#255#172#172#172#255#173#173#173
   +#255#170#170#170#255#172#172#172#255#172#172#172#255#170#170#170#255#169#169
   +#169#255#151#151#151#255#196#196#196#255#149#149#149#255#195#195#195#255#147
   +#147#147#255#193#193#193#255#144#144#144#255#191#191#191#255#143#143#143#255
@@ -2369,7 +2403,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#1#0#160#197#131#0#153#204#15#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
-  ,#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#0#164#200#14#0#163#198#188#0
   +#160#196#255#0#159#191#16#255#255#255#0#255#255#255#0#255#255#255#0#255#255
@@ -2399,7 +2433,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#197#248#0#159#191#16#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
-  +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
+  ,#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#0#159#199' '#2#163#198#219'l'#210#228#250#175
   +#240#248#255'{'#232#245#255'e'#229#244#255'_'#228#243#255#169#240#248#255#5
   +#163#197#248#0#159#191#16#255#255#255#0#255#255#255#0#255#255#255#0#255#255
@@ -2433,7 +2467,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#255#0#0#163#198'o '#174#205#246#154#233#243#255#139#235#246#255'c'
   +#228#243#255'd'#228#244#255'd'#228#244#255'b'#228#243#255'_'#228#243#255'P'
   +#225#242#255#14#214#237#255#0#212#237#255#0#212#237#255#0#212#237#255#0#212
-  ,#237#255#0#212#237#255#0#212#237#255#0#212#237#255#0#212#237#255#26#216#238
+  +#237#255#0#212#237#255#0#212#237#255#0#212#237#255#0#212#237#255#26#216#238
   +#255'u'#231#244#255'1'#191#217#248#0#162#198#142#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#0#161#196'I'#14#167#200#244#135#226
@@ -2463,7 +2497,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#0#255#255#1#0#162#198#135#16#170#203#246
   +'b'#222#239#255'D'#223#241#255#2#212#237#255'n'#230#244#255#4#163#197#248#0
-  +#159#191#16#255#255#255#0#255#255#255#0#0#146#182#7#0#160#197#132#7#164#198
+  ,#159#191#16#255#255#255#0#255#255#255#0#0#146#182#7#0#160#197#132#7#164#198
   +#247'J'#218#237#255'-'#219#240#255#0#212#237#255#26#216#238#255'@'#210#231
   +#255#0#163#199#183#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
   +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
@@ -2497,7 +2531,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#0#255#255#255#0#255#255#255#0#0#0#0#1#0#0#0#3#0#0#0#5#0#0#0#7#0#0#0
   +#8#0#0#0#10#0#0#0#12#0#0#0#13#0#0#0#14#0#0#0#15#0#0#0#16#0#0#0#17#0#0#0#17#0
   +#14#14#18#0#0#0#17#0#0#0#17#0#0#0#16#0#0#0#15#0'(6'#19#0#163#198#219#22#203
-  ,#229#239#27#215#238#236#8#177#210#238#0#158#191'z'#0#0#0#4#0#0#0#2#255#255
+  +#229#239#27#215#238#236#8#177#210#238#0#158#191'z'#0#0#0#4#0#0#0#2#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#0#0#0#2#0#0#0
   +#4#0#0#0#6#0#0#0#8#0#0#0#10#0#0#0#12#0#0#0#14#0#0#0#16#0#0#0#18#0#0#0#19#0#0
   +#0#21#0#0#0#22#0#0#0#23#0#0#0#24#0#0#0#24#0#0#0#23#0#0#0#23#0#0#0#22#0#0#0#20
@@ -2527,7 +2561,7 @@ LazarusResources.Add('TfmQueryWindow','FORMDATA',[
   +#255#255#255#0#255#255#255#0#0#0#0#1#0#0#0#3#0#0#0#5#0#0#0#6#0#0#0#7#0#0#0#8
   +#0#0#0#9#0#0#0#9#0#0#0#9#0#0#0#10#0#0#0#9#0#0#0#9#0#0#0#8#0#0#0#8#0#0#0#7#0#0
   +#0#5#0#0#0#3#0#0#0#1#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0
-  +#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
+  ,#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255
   +#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255
   +#255#0#255#255#255#0#255#255#255#0#255#255#255#0#255#255#255#0#0#0#0#1#0#0#0
   +#1#0#0#0#1#0#0#0#2#0#0#0#1#0#0#0#1#0#0#0#1#0#0#0#1#255#255#255#0#255#255#255

+ 179 - 31
querywindow.pas

@@ -12,6 +12,24 @@ uses
 
 type
 
+  { TQueryThread }
+
+  TQueryThread = class(TThread)
+    private
+      fSQLQuery: TSQLQuery;
+      fTrans: TSQLTransaction;
+
+    public
+      Error: Boolean;
+      ErrorMsg: string;
+      fTerminated: Boolean;
+      fType: string;
+      property Query: TSQLQuery read fSQLQuery write fSQLQuery;
+      property Trans: TSQLTransaction read fTrans write fTrans;
+      procedure Execute; override;
+      constructor Create(aType: string);
+  end;
+
   { TfmQueryWindow }
 
   TfmQueryWindow = class(TForm)
@@ -65,6 +83,7 @@ type
     tbRollback: TToolButton;
     tbCommitRetaining: TToolButton;
     tbRollbackRetaining: TToolButton;
+    ToolButton1: TToolButton;
     ToolButton2: TToolButton;
     ToolButton3: TToolButton;
     tbHistory: TToolButton;
@@ -108,6 +127,7 @@ type
     procedure tbRollbackRetainingClick(Sender: TObject);
     procedure tbRunClick(Sender: TObject);
     procedure tbSaveClick(Sender: TObject);
+    procedure ToolButton1Click(Sender: TObject);
   private
     { private declarations }
     fdbIndex: Integer;
@@ -117,6 +137,8 @@ type
     fOptions: set of TSynSearchOption;
     ibConnection: TIBConnection;
     SqlTrans: TSQLTransaction;
+    fCanceled: Boolean;
+    procedure ExecuteQuery(fQueryType: Integer);
     function GetNewTabNum: string;
   public
     OnCommit: TNotifyEvent;
@@ -125,7 +147,6 @@ type
     function GetQuery: string;
     function CreateResultTab(QueryType: Byte; var SqlQuery: TSQLQuery; var SQLScript: TSqlScript;
       var meResult: TMemo; AdditionalTitle: string = ''): TTabSheet;
-    procedure ExecuteQuery(QueryType: Integer);
     function ExecuteScript(Script: string): Boolean;
     procedure AddResultControl(ParentControl: TObject; AControl: TObject);
     procedure RemoveControls;
@@ -134,6 +155,7 @@ type
     function GetSQLSegment(QueryList: TStringList; StartLine: Integer; var QueryType, EndLine: Integer;
       var SQLSegment: string; var IsDDL: Boolean): Boolean;
     procedure QueryAfterScroll(DataSet: TDataSet);
+    procedure CallExecuteQuery(QueryType: Integer);
 
     { public declarations }
   end; 
@@ -147,6 +169,41 @@ implementation
 
 uses main, SQLHistory;
 
+{ TQueryThread }
+
+procedure TQueryThread.Execute;
+begin
+  try
+    fTerminated:= False;
+    if fType = 'open' then
+      fSQLQuery.Open
+    else
+    if fType = 'exec' then
+      fSQLQuery.ExecSQL
+    else
+    if fType = 'commit' then
+      fTrans.Commit;
+
+    fTerminated:= True;
+    Error:= False;
+
+  except
+  on e: exception do
+  begin
+    Error:= True;
+    ErrorMsg:= e.Message;
+    fTerminated:= True;
+  end;
+  end;
+end;
+
+constructor TQueryThread.Create(aType: string);
+begin
+  inherited Create(True);
+  fType:= aType;
+  FreeOnTerminate:= False;
+end;
+
 procedure TfmQueryWindow.SQLScript1Exception(Sender: TObject;
   Statement: TStrings; TheException: Exception; var Continue: boolean);
 begin
@@ -165,16 +222,33 @@ var
   SqlQuery: TSQLQuery;
   SqlScript: TSQLScript;
   ATab: TTabSheet;
+  QT: TQueryThread;
 begin
   RemoveControls;
-  SqlTrans.Commit;
   ATab:= CreateResultTab(2, SqlQuery, SqlScript, meResult);
-  ATab.ImageIndex:= 4;
-  meResult.Lines.Add('Commited');
-  meResult.Font.Color:= clGreen;
-  if OnCommit <> nil then
-    OnCommit(self);
-  OnCommit:= nil;
+  QT:= TQueryThread.Create('commit');
+  QT.Trans:= SqlTrans;
+  ATab.ImageIndex:= 6;
+  QT.Resume;
+  repeat
+    application.ProcessMessages;
+  until QT.fTerminated or (fCanceled);
+  if QT.Error then
+  begin
+    ATab.ImageIndex:= 3;
+    meResult.Lines.Text:= QT.ErrorMsg;
+    meResult.Font.Color:= clRed;
+  end
+  else
+  begin
+    ATab.ImageIndex:= 4;
+    meResult.Lines.Add('Commited');
+    meResult.Font.Color:= clGreen;
+    if OnCommit <> nil then
+      OnCommit(self);
+    OnCommit:= nil;
+  end;
+  QT.Free;
 end;
 
 procedure TfmQueryWindow.tbCommitRetainingClick(Sender: TObject);
@@ -239,7 +313,7 @@ end;
 
 procedure TfmQueryWindow.tbRunClick(Sender: TObject);
 begin
-  ExecuteQuery(0);
+  CallExecuteQuery(0);
 end;
 
 procedure TfmQueryWindow.tbSaveClick(Sender: TObject);
@@ -249,6 +323,12 @@ begin
     meQuery.Lines.SaveToFile(SaveDialog1.FileName);
 end;
 
+procedure TfmQueryWindow.ToolButton1Click(Sender: TObject);
+begin
+{  if Assigned(fQT) and (not fQT.Suspended) then
+  fQT.Terminate;}
+end;
+
 function TfmQueryWindow.GetNewTabNum: string;
 var
   i: Integer;
@@ -265,7 +345,11 @@ procedure TfmQueryWindow.Init(dbIndex: Integer);
 begin
   fdbIndex:= dbIndex;
   RegRec:= fmMain.RegisteredDatabases[dbIndex].RegRec;
-  ibConnection:= fmMain.RegisteredDatabases[dbIndex].IBConnection;
+//  ibConnection:= fmMain.RegisteredDatabases[dbIndex].IBConnection;
+  ibConnection:= TIBConnection.Create(nil);
+  SqlTrans:= TSQLTransaction.Create(nil);
+  SqlTrans.DataBase:= ibConnection;
+
   with fmMain.RegisteredDatabases[dbIndex] do
   begin
   //  Self.ibConnection.Close;
@@ -275,7 +359,7 @@ begin
     Self.IBConnection.CharSet:= RegRec.Charset;
     Self.ibConnection.Role:= RegRec.Role;
   end;
-  SqlTrans:= fmMain.RegisteredDatabases[dbIndex].SQLTrans;
+  //SqlTrans:= fmMain.RegisteredDatabases[dbIndex].SQLTrans;
 
   SynSQLSyn1.TableNames.CommaText:= fmMain.GetTableNames(dbIndex);
 end;
@@ -433,7 +517,7 @@ end;
 
 (***************  Execute Query   ******************)
 
-procedure TfmQueryWindow.ExecuteQuery(QueryType: Integer);
+procedure TfmQueryWindow.ExecuteQuery(fQueryType: Integer);
 var
   Query: string;
   StartTime: TDateTime;
@@ -451,19 +535,29 @@ var
   IsDDL: Boolean;
   Affected: Integer;
   ModifyCount: Integer;
+  aText: string;
+  j: Integer;
+  fQT: TQueryThread;
 begin
   try
+     tbRun.Enabled:= False;
+     tbCommit.Enabled:= False;
+    tbCommitRetaining.Enabled:= False;
+    tbRollback.Enabled:= False;
+    tbRollbackRetaining.Enabled:= False;
+
     ModifyCount:= 0;
+    fCanceled:= False;
     RemoveControls;
     Query:= Trim(GetQuery);
 
-    if QueryType = 0 then // Auto
-      QueryType:= GetQueryType(Query);
+    if fQueryType = 0 then // Auto
+      fQueryType:= GetQueryType(Query);
 
     Cnt:= 0;
 
     // Script
-    if (QueryType = 3) then
+    if (fQueryType = 3) then
     begin
       ExecuteScript(Query);
       Inc(ModifyCount);
@@ -477,7 +571,7 @@ begin
       StartLine:= 0;
       repeat
         Inc(Cnt);
-        if not GetSQLSegment(List, Startline, QueryType, EndLine, QueryPart, IsDDL) then
+        if not GetSQLSegment(List, Startline, fQueryType, EndLine, QueryPart, IsDDL) then
           Break;
 
         if EndLine < StartLine then
@@ -486,19 +580,39 @@ begin
           StartLine:= EndLine + 1;
 
         if Trim(QueryPart) <> '' then   // Select
-        if QueryType = 1 then
+        if fQueryType = 1 then
         begin
           ATab:= nil;
           try
             ATab:= CreateResultTab(1, SqlQuery, SqlScript, meResult);
-            ATab.ImageIndex:= 0;
+            ATab.ImageIndex:= 6;
+            ATab.Hint:= QueryPart;
+            ATab.ShowHint:= True;
             SQLQuery.SQL.Text:= QueryPart;
-            SQLQuery.Open;
+            fQT:= TQueryThread.Create('open');
+            fQT.Query:= SqlQuery;
+            fQT.Resume;
+            aText:= ATab.Caption;
+            ATab.Caption:= 'Running..';
+            {$ifdef UNIX}
+            fQT.WaitFor;
+            {$endif}
+
+            {$ifdef windows}
+            repeat
+              application.ProcessMessages;
+            until fQT.fTerminated or (fCanceled);
+            {$endif}
+
+            fQT.Free;
+            ATab.Caption:= aText;
+            ATab.ImageIndex:= 0;
             fmMain.AddToSQLHistory(RegRec.Title, 'SELECT', QueryPart);
 
           except
           on e: exception do
           begin
+            fCanceled:= True;
             if Assigned(ATab) then
               ATab.TabVisible:= False;
             SetLength(ResultControls, High(ResultControls));
@@ -515,10 +629,11 @@ begin
           end;
         end
         else  // Execute
-        if QueryType = 2 then
+        if fQueryType = 2 then
         begin
           ATab:= nil;
           ATab:= CreateResultTab(2, SqlQuery, SqlScript, meResult);
+
           ATab.ImageIndex:= 1;
           SqlType:= GetSQLType(QueryPart, Command);
           StartTime:= Now;
@@ -530,7 +645,24 @@ begin
             begin   // DML
               SqlQuery.Close;
               SqlQuery.SQL.Text:= QueryPart;
-              SqlQuery.ExecSQL;
+              ATab.ImageIndex:= 6;
+              ATab.Hint:= QueryPart;
+              ATab.ShowHint:= True;
+              SQLQuery.SQL.Text:= QueryPart;
+              fQT:= TQueryThread.Create('exec');
+              fQT.Query:= SqlQuery;
+              fQT.Resume;
+              aText:= ATab.Caption;
+              ATab.Caption:= 'Running..';
+              j:= 0;
+              repeat
+                application.ProcessMessages;
+              until (fQT.fTerminated) or (fCanceled);
+              if fQT.Error then
+                raise Exception.Create(fQT.ErrorMsg);
+              fQT.Free;
+              ATab.Caption:= aText;
+              ATab.ImageIndex:= 1;
               Affected:= sqlQuery.RowsAffected;
             end;
             Inc(ModifyCount);
@@ -553,6 +685,7 @@ begin
           except
           on e: exception do
           begin
+            fCanceled:= True;
             if Assigned(ATab) then
               ATab.TabVisible:= False;
             ATab:= CreateResultTab(2, SqlQuery, SqlScript, meResult);
@@ -602,9 +735,16 @@ begin
     meResult.Text:= e.message;
     meResult.Lines.Add(QueryPart);
     meResult.Font.Color:= clRed;
+    fCanceled:= True;
   end;
   end;
 
+  tbRun.Enabled:= True;
+  tbCommit.Enabled:= True;
+  tbCommitRetaining.Enabled:= True;
+  tbRollback.Enabled:= True;
+  tbRollbackRetaining.Enabled:= True;
+
 end;
 
 function TfmQueryWindow.ExecuteScript(Script: string): Boolean;
@@ -660,12 +800,14 @@ begin
   for i:= High(ResultControls) downto  0 do
   begin
     if ResultControls[i] is TSQLQuery then
+    begin
+      (ResultControls[i] as TSQLQuery).AfterScroll:= nil;
       (ResultControls[i] as TSQLQuery).Close;
+      (ResultControls[i] as TSQLQuery).DataSource:= nil;
+    end;
 
-    //    CannotFree:= (ResultControls[i] is TStatusBar) or (ResultControls[i] is TSQLQuery);
-
-    //  if not CannotFree then
-    ResultControls[i].Free;
+      ResultControls[i].Free;
+      ResultControls[i]:= nil;
   end;
 
   SetLength(ResultControls, 0);
@@ -831,11 +973,10 @@ end;
 
 procedure TfmQueryWindow.bbRunClick(Sender: TObject);
 begin
-  ExecuteQuery(0);
+  CallExecuteQuery(0);
 end;
 
 
-
 procedure TfmQueryWindow.DBGrid1DblClick(Sender: TObject);
 begin
   if (Sender as TDBGrid).SelectedField.DataType in [ftBlob, ftMemo] then
@@ -1093,22 +1234,22 @@ end;
 
 procedure TfmQueryWindow.lmRunClick(Sender: TObject);
 begin
-  ExecuteQuery(0);
+  CallExecuteQuery(0);
 end;
 
 procedure TfmQueryWindow.lmRunExecClick(Sender: TObject);
 begin
-  ExecuteQuery(2);
+  CallExecuteQuery(2);
 end;
 
 procedure TfmQueryWindow.lmRunScriptClick(Sender: TObject);
 begin
-  ExecuteQuery(3);
+  CallExecuteQuery(3);
 end;
 
 procedure TfmQueryWindow.lmRunSelectClick(Sender: TObject);
 begin
-  ExecuteQuery(1);
+  CallExecuteQuery(1);
 end;
 
 procedure TfmQueryWindow.lmSelectAllClick(Sender: TObject);
@@ -1142,6 +1283,7 @@ begin
   TabSheet:= nil;
   // Get DataSet's TTabsheet
   for i:= 0 to High(ResultControls) do
+  if ResultControls[i] <> nil then
   if DataSet = ResultControls[i] then
   begin
     TabSheet:= ParentResultControls[i] as TTabSheet;
@@ -1150,6 +1292,7 @@ begin
 
   if TabSheet <> nil then
   for i:= 0 to High(ResultControls) do
+  if ResultControls[i] <> nil then
     if  (ParentResultControls[i] <> nil) and ((ParentResultControls[i] as TTabSheet) = TabSheet)
       and (ResultControls[i] is TStatusBar) then
       begin
@@ -1160,6 +1303,11 @@ begin
 
 end;
 
+procedure TfmQueryWindow.CallExecuteQuery(QueryType: Integer);
+begin
+  ExecuteQuery(QueryType);
+end;
+
 initialization
   {$I querywindow.lrs}