1. RxDBGrid - fix paint multiline caption after show dialogs over grid

2. RxDBGrid - fix show filter values after add new record


git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2698 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
alexs75
2013-03-12 14:08:34 +00:00
parent f08de69e4e
commit 09e5252262
2 changed files with 315 additions and 160 deletions

View File

@ -54,7 +54,7 @@
<MinVersion Major="1" Release="18" Build="56" Valid="True"/> <MinVersion Major="1" Release="18" Build="56" Valid="True"/>
</Item4> </Item4>
</RequiredPackages> </RequiredPackages>
<Units Count="93"> <Units Count="88">
<Unit0> <Unit0>
<Filename Value="RxDBGridDemo.lpr"/> <Filename Value="RxDBGridDemo.lpr"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
@ -62,7 +62,7 @@
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<CursorPos X="9" Y="16"/> <CursorPos X="9" Y="16"/>
<UsageCount Value="88"/> <UsageCount Value="89"/>
</Unit0> </Unit0>
<Unit1> <Unit1>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="rxdbgridmainunit.pas"/>
@ -71,12 +71,11 @@
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<UnitName Value="RxDBGridMainUnit"/> <UnitName Value="RxDBGridMainUnit"/>
<IsVisibleTab Value="True"/>
<EditorIndex Value="0"/> <EditorIndex Value="0"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="233"/> <TopLine Value="1"/>
<CursorPos X="24" Y="262"/> <CursorPos X="12" Y="9"/>
<UsageCount Value="88"/> <UsageCount Value="89"/>
<Loaded Value="True"/> <Loaded Value="True"/>
<LoadedDesigner Value="True"/> <LoadedDesigner Value="True"/>
</Unit1> </Unit1>
@ -103,14 +102,17 @@
<Unit5> <Unit5>
<Filename Value="../../rxdbgrid.pas"/> <Filename Value="../../rxdbgrid.pas"/>
<UnitName Value="rxdbgrid"/> <UnitName Value="rxdbgrid"/>
<IsVisibleTab Value="True"/>
<EditorIndex Value="1"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="3589"/> <TopLine Value="3900"/>
<CursorPos X="28" Y="3600"/> <CursorPos X="1" Y="3921"/>
<UsageCount Value="13"/> <UsageCount Value="13"/>
<Bookmarks Count="2"> <Bookmarks Count="2">
<Item0 X="1" Y="1089" ID="1"/> <Item0 X="3" Y="1230" ID="2"/>
<Item1 X="3" Y="1230" ID="2"/> <Item1 X="1" Y="3831" ID="1"/>
</Bookmarks> </Bookmarks>
<Loaded Value="True"/>
</Unit5> </Unit5>
<Unit6> <Unit6>
<Filename Value="../../../lcl/lresources.pp"/> <Filename Value="../../../lcl/lresources.pp"/>
@ -496,96 +498,83 @@
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit57> </Unit57>
<Unit58> <Unit58>
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/> <Filename Value="../../../../lcl/dbgrids.pas"/>
<UnitName Value="rxdbgrid"/>
<WindowIndex Value="0"/>
<TopLine Value="836"/>
<CursorPos X="7" Y="858"/>
<UsageCount Value="25"/>
<Bookmarks Count="3">
<Item0 X="1" Y="3450" ID="3"/>
<Item1 X="1" Y="1838" ID="4"/>
<Item2 X="1" Y="2672" ID="1"/>
</Bookmarks>
</Unit58>
<Unit59>
<Filename Value="/usr/local/share/lazarus/lcl/dbgrids.pas"/>
<UnitName Value="DBGrids"/> <UnitName Value="DBGrids"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="443"/> <TopLine Value="443"/>
<CursorPos X="14" Y="463"/> <CursorPos X="14" Y="463"/>
<UsageCount Value="18"/> <UsageCount Value="18"/>
</Unit59> </Unit58>
<Unit60> <Unit59>
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/> <Filename Value="../../../../lcl/grids.pas"/>
<UnitName Value="Grids"/> <UnitName Value="Grids"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="2558"/> <TopLine Value="2558"/>
<CursorPos X="1" Y="2580"/> <CursorPos X="1" Y="2580"/>
<UsageCount Value="21"/> <UsageCount Value="21"/>
</Unit60> </Unit59>
<Unit61> <Unit60>
<Filename Value="../../../../../../install/fpcsrc/rtl/objpas/classes/classesh.inc"/> <Filename Value="../../../../../../install/fpcsrc/rtl/objpas/classes/classesh.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="1554"/> <TopLine Value="1554"/>
<CursorPos X="38" Y="1569"/> <CursorPos X="38" Y="1569"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit61> </Unit60>
<Unit62> <Unit61>
<Filename Value="/usr/local/share/lazarus/lcl/buttons.pp"/> <Filename Value="../../../../lcl/buttons.pp"/>
<UnitName Value="Buttons"/> <UnitName Value="Buttons"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="333"/> <TopLine Value="333"/>
<CursorPos X="3" Y="360"/> <CursorPos X="3" Y="360"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit62> </Unit61>
<Unit63> <Unit62>
<Filename Value="../../../../../../install/fpcsrc/packages/fcl-db/src/base/db.pas"/> <Filename Value="../../../../../../install/fpcsrc/packages/fcl-db/src/base/db.pas"/>
<UnitName Value="db"/> <UnitName Value="db"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="1588"/> <TopLine Value="1588"/>
<CursorPos X="15" Y="1609"/> <CursorPos X="15" Y="1609"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit63> </Unit62>
<Unit64> <Unit63>
<Filename Value="/usr/local/share/lazarus/components/rxnew/vclutils.pas"/> <Filename Value="../../vclutils.pas"/>
<UnitName Value="vclutils"/> <UnitName Value="vclutils"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<CursorPos X="1" Y="35"/> <CursorPos X="1" Y="35"/>
<UsageCount Value="9"/> <UsageCount Value="9"/>
</Unit64> </Unit63>
<Unit65> <Unit64>
<Filename Value="/usr/local/share/lazarus/lcl/include/canvas.inc"/> <Filename Value="../../../../lcl/include/canvas.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="1317"/> <TopLine Value="1317"/>
<CursorPos X="1" Y="1338"/> <CursorPos X="1" Y="1338"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit65> </Unit64>
<Unit66> <Unit65>
<Filename Value="/usr/local/share/lazarus/lcl/graphics.pp"/> <Filename Value="../../../../lcl/graphics.pp"/>
<UnitName Value="Graphics"/> <UnitName Value="Graphics"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="93"/> <TopLine Value="93"/>
<CursorPos X="3" Y="99"/> <CursorPos X="3" Y="99"/>
<UsageCount Value="8"/> <UsageCount Value="8"/>
</Unit66> </Unit65>
<Unit67> <Unit66>
<Filename Value="/usr/local/share/lazarus/lcl/include/lclintf.inc"/> <Filename Value="../../../../lcl/include/lclintf.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="132"/> <TopLine Value="132"/>
<CursorPos X="1" Y="155"/> <CursorPos X="1" Y="155"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit67> </Unit66>
<Unit68> <Unit67>
<Filename Value="/usr/local/share/lazarus/lcl/interfaces/gtk2/gtk2lclintf.inc"/> <Filename Value="../../../../lcl/interfaces/gtk2/gtk2lclintf.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="167"/> <TopLine Value="167"/>
<CursorPos X="1" Y="190"/> <CursorPos X="1" Y="190"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit68> </Unit67>
<Unit69> <Unit68>
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxsortby.pas"/> <Filename Value="../../rxsortby.pas"/>
<ComponentName Value="rxSortByForm"/> <ComponentName Value="rxSortByForm"/>
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
@ -594,9 +583,9 @@
<TopLine Value="50"/> <TopLine Value="50"/>
<CursorPos X="14" Y="65"/> <CursorPos X="14" Y="65"/>
<UsageCount Value="9"/> <UsageCount Value="9"/>
</Unit69> </Unit68>
<Unit70> <Unit69>
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxfilterby.pas"/> <Filename Value="../../rxfilterby.pas"/>
<ComponentName Value="rxFilterByForm"/> <ComponentName Value="rxFilterByForm"/>
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
@ -605,208 +594,264 @@
<TopLine Value="315"/> <TopLine Value="315"/>
<CursorPos X="1" Y="350"/> <CursorPos X="1" Y="350"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit70> </Unit69>
<Unit71> <Unit70>
<Filename Value="../../../../../../install/source/fpcsrc/rtl/objpas/classes/classesh.inc"/> <Filename Value="../../../../../../install/source/fpcsrc/rtl/objpas/classes/classesh.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="72"/> <TopLine Value="72"/>
<CursorPos X="30" Y="95"/> <CursorPos X="30" Y="95"/>
<UsageCount Value="11"/> <UsageCount Value="11"/>
</Unit71> </Unit70>
<Unit72> <Unit71>
<Filename Value="../../../../../../install/source/fpcsrc/rtl/objpas/classes/stringl.inc"/> <Filename Value="../../../../../../install/source/fpcsrc/rtl/objpas/classes/stringl.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="593"/> <TopLine Value="593"/>
<CursorPos X="3" Y="598"/> <CursorPos X="3" Y="598"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit72> </Unit71>
<Unit73> <Unit72>
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxstrutils.pas"/> <Filename Value="../../rxstrutils.pas"/>
<UnitName Value="rxstrutils"/> <UnitName Value="rxstrutils"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="140"/> <TopLine Value="140"/>
<CursorPos X="23" Y="168"/> <CursorPos X="23" Y="168"/>
<UsageCount Value="7"/> <UsageCount Value="7"/>
</Unit73> </Unit72>
<Unit74> <Unit73>
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxlookup.pas"/> <Filename Value="../../rxlookup.pas"/>
<UnitName Value="rxlookup"/> <UnitName Value="rxlookup"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="1176"/> <TopLine Value="1176"/>
<CursorPos X="3" Y="1196"/> <CursorPos X="3" Y="1196"/>
<UsageCount Value="14"/> <UsageCount Value="14"/>
</Unit74> </Unit73>
<Unit75> <Unit74>
<Filename Value="../../../../../../install/source/fpcsrc/packages/fcl-db/src/base/db.pas"/> <Filename Value="../../../../../../install/source/fpcsrc/packages/fcl-db/src/base/db.pas"/>
<UnitName Value="db"/> <UnitName Value="db"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="1776"/> <TopLine Value="1776"/>
<CursorPos X="14" Y="1796"/> <CursorPos X="14" Y="1796"/>
<UsageCount Value="14"/> <UsageCount Value="14"/>
</Unit75> </Unit74>
<Unit76> <Unit75>
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxpopupunit.pas"/>
<UnitName Value="rxpopupunit"/>
<WindowIndex Value="0"/>
<TopLine Value="275"/>
<CursorPos X="1" Y="298"/>
<UsageCount Value="14"/>
</Unit76>
<Unit77>
<Filename Value="../../../../../../install/source/fpcsrc/rtl/objpas/classes/collect.inc"/> <Filename Value="../../../../../../install/source/fpcsrc/rtl/objpas/classes/collect.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="397"/> <TopLine Value="397"/>
<CursorPos X="3" Y="399"/> <CursorPos X="3" Y="399"/>
<UsageCount Value="11"/> <UsageCount Value="11"/>
</Unit77> </Unit75>
<Unit78> <Unit76>
<Filename Value="../../../../../../install/source/fpcsrc/rtl/objpas/classes/lists.inc"/> <Filename Value="../../../../../../install/source/fpcsrc/rtl/objpas/classes/lists.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="131"/> <TopLine Value="131"/>
<CursorPos X="3" Y="133"/> <CursorPos X="3" Y="133"/>
<UsageCount Value="11"/> <UsageCount Value="11"/>
</Unit78> </Unit76>
<Unit79> <Unit77>
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxsortmemds.pas"/> <Filename Value="../../rxsortmemds.pas"/>
<UnitName Value="rxsortmemds"/> <UnitName Value="rxsortmemds"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="16"/> <TopLine Value="16"/>
<CursorPos X="1" Y="1"/> <CursorPos X="1" Y="1"/>
<UsageCount Value="8"/> <UsageCount Value="8"/>
</Unit79> </Unit77>
<Unit80> <Unit78>
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxmemds.pas"/> <Filename Value="../../../../lcl/controls.pp"/>
<UnitName Value="rxmemds"/>
<WindowIndex Value="0"/>
<TopLine Value="1629"/>
<CursorPos X="3" Y="1641"/>
<UsageCount Value="8"/>
</Unit80>
<Unit81>
<Filename Value="../../../../lcl/graphics.pp"/>
<UnitName Value="Graphics"/>
<WindowIndex Value="0"/>
<TopLine Value="524"/>
<CursorPos X="17" Y="542"/>
<UsageCount Value="12"/>
</Unit81>
<Unit82>
<Filename Value="/usr/local/share/lazarus/lcl/controls.pp"/>
<UnitName Value="Controls"/> <UnitName Value="Controls"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="1843"/> <TopLine Value="1843"/>
<CursorPos X="15" Y="1865"/> <CursorPos X="15" Y="1865"/>
<UsageCount Value="11"/> <UsageCount Value="11"/>
</Unit82> </Unit78>
<Unit83> <Unit79>
<Filename Value="/usr/local/share/lazarus/components/rxnew/Demos/RxDBGrid/rxdbgridmainunit.pas"/> <Filename Value="../../../../lcl/stdctrls.pp"/>
<UnitName Value="RxDBGridMainUnit"/>
<WindowIndex Value="0"/>
<TopLine Value="136"/>
<CursorPos X="1" Y="162"/>
<UsageCount Value="9"/>
</Unit83>
<Unit84>
<Filename Value="/usr/local/share/lazarus/lcl/stdctrls.pp"/>
<UnitName Value="StdCtrls"/> <UnitName Value="StdCtrls"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="233"/> <TopLine Value="233"/>
<CursorPos X="3" Y="254"/> <CursorPos X="3" Y="254"/>
<UsageCount Value="9"/> <UsageCount Value="9"/>
</Unit84> </Unit79>
<Unit85> <Unit80>
<Filename Value="/usr/local/share/lazarus/lcl/lcltype.pp"/> <Filename Value="../../../../lcl/lcltype.pp"/>
<UnitName Value="LCLType"/> <UnitName Value="LCLType"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="1115"/> <TopLine Value="1115"/>
<CursorPos X="3" Y="1136"/> <CursorPos X="3" Y="1136"/>
<UsageCount Value="9"/> <UsageCount Value="9"/>
</Unit85> </Unit80>
<Unit86> <Unit81>
<Filename Value="/usr/local/share/lazarus/lcl/include/customcontrol.inc"/> <Filename Value="../../../../lcl/include/customcontrol.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="70"/> <TopLine Value="70"/>
<CursorPos X="3" Y="79"/> <CursorPos X="3" Y="79"/>
<UsageCount Value="9"/> <UsageCount Value="9"/>
</Unit86> </Unit81>
<Unit87> <Unit82>
<Filename Value="/usr/local/share/lazarus/lcl/include/wincontrol.inc"/> <Filename Value="../../../../lcl/include/wincontrol.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="7674"/> <TopLine Value="7674"/>
<CursorPos X="1" Y="7696"/> <CursorPos X="1" Y="7696"/>
<UsageCount Value="11"/> <UsageCount Value="11"/>
</Unit87> </Unit82>
<Unit88> <Unit83>
<Filename Value="../../../../../../install/source/fpcsrc/rtl/objpas/types.pp"/> <Filename Value="../../../../../../install/source/fpcsrc/rtl/objpas/types.pp"/>
<UnitName Value="types"/> <UnitName Value="types"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="70"/> <TopLine Value="70"/>
<CursorPos X="16" Y="91"/> <CursorPos X="16" Y="91"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit88> </Unit83>
<Unit89> <Unit84>
<Filename Value="/usr/local/share/lazarus/lcl/include/control.inc"/> <Filename Value="../../../../lcl/include/control.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="5414"/> <TopLine Value="5414"/>
<CursorPos X="1" Y="5435"/> <CursorPos X="1" Y="5435"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit89> </Unit84>
<Unit90> <Unit85>
<Filename Value="/usr/local/share/lazarus/lcl/include/scrollingwincontrol.inc"/> <Filename Value="../../../../lcl/include/scrollingwincontrol.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="65"/> <TopLine Value="65"/>
<CursorPos X="1" Y="87"/> <CursorPos X="1" Y="87"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit90> </Unit85>
<Unit91> <Unit86>
<Filename Value="/usr/local/share/lazarus/lcl/include/customform.inc"/> <Filename Value="../../../../lcl/include/customform.inc"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="732"/> <TopLine Value="732"/>
<CursorPos X="1" Y="761"/> <CursorPos X="1" Y="761"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit91> </Unit86>
<Unit92> <Unit87>
<Filename Value="/usr/local/share/lazarus/lcl/editbtn.pas"/> <Filename Value="../../../../lcl/editbtn.pas"/>
<UnitName Value="EditBtn"/> <UnitName Value="EditBtn"/>
<WindowIndex Value="0"/> <WindowIndex Value="0"/>
<TopLine Value="648"/> <TopLine Value="648"/>
<CursorPos X="1" Y="670"/> <CursorPos X="1" Y="670"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit92> </Unit87>
</Units> </Units>
<JumpHistory Count="8" HistoryIndex="7"> <JumpHistory Count="30" HistoryIndex="29">
<Position1> <Position1>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="../../rxdbgrid.pas"/>
<Caret Line="73" Column="1" TopLine="53"/> <Caret Line="2861" Column="22" TopLine="2826"/>
</Position1> </Position1>
<Position2> <Position2>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="../../rxdbgrid.pas"/>
<Caret Line="75" Column="1" TopLine="54"/> <Caret Line="2862" Column="34" TopLine="2827"/>
</Position2> </Position2>
<Position3> <Position3>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="../../rxdbgrid.pas"/>
<Caret Line="260" Column="38" TopLine="241"/> <Caret Line="2886" Column="16" TopLine="2851"/>
</Position3> </Position3>
<Position4> <Position4>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="../../rxdbgrid.pas"/>
<Caret Line="262" Column="43" TopLine="239"/> <Caret Line="2891" Column="34" TopLine="2858"/>
</Position4> </Position4>
<Position5> <Position5>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="../../rxdbgrid.pas"/>
<Caret Line="260" Column="43" TopLine="240"/> <Caret Line="2892" Column="59" TopLine="2858"/>
</Position5> </Position5>
<Position6> <Position6>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="../../rxdbgrid.pas"/>
<Caret Line="260" Column="43" TopLine="240"/> <Caret Line="2903" Column="18" TopLine="2869"/>
</Position6> </Position6>
<Position7> <Position7>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="../../rxdbgrid.pas"/>
<Caret Line="262" Column="24" TopLine="240"/> <Caret Line="3327" Column="13" TopLine="3293"/>
</Position7> </Position7>
<Position8> <Position8>
<Filename Value="rxdbgridmainunit.pas"/> <Filename Value="../../rxdbgrid.pas"/>
<Caret Line="262" Column="24" TopLine="240"/> <Caret Line="3378" Column="34" TopLine="3344"/>
</Position8> </Position8>
<Position9>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3380" Column="36" TopLine="3346"/>
</Position9>
<Position10>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3791" Column="30" TopLine="3756"/>
</Position10>
<Position11>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3888" Column="29" TopLine="3847"/>
</Position11>
<Position12>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3935" Column="29" TopLine="3899"/>
</Position12>
<Position13>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="1" Column="1" TopLine="1"/>
</Position13>
<Position14>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="472" Column="20" TopLine="438"/>
</Position14>
<Position15>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3893" Column="3" TopLine="3886"/>
</Position15>
<Position16>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3830" Column="31" TopLine="3807"/>
</Position16>
<Position17>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="1" Column="1" TopLine="1"/>
</Position17>
<Position18>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3091" Column="79" TopLine="3055"/>
</Position18>
<Position19>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3830" Column="48" TopLine="3796"/>
</Position19>
<Position20>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3918" Column="24" TopLine="3881"/>
</Position20>
<Position21>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3931" Column="80" TopLine="3897"/>
</Position21>
<Position22>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="1" Column="1" TopLine="1"/>
</Position22>
<Position23>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3089" Column="79" TopLine="3055"/>
</Position23>
<Position24>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3830" Column="48" TopLine="3796"/>
</Position24>
<Position25>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3915" Column="24" TopLine="3881"/>
</Position25>
<Position26>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3933" Column="1" TopLine="3904"/>
</Position26>
<Position27>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="1" Column="1" TopLine="1"/>
</Position27>
<Position28>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3089" Column="79" TopLine="3055"/>
</Position28>
<Position29>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3831" Column="18" TopLine="3796"/>
</Position29>
<Position30>
<Filename Value="../../rxdbgrid.pas"/>
<Caret Line="3829" Column="31" TopLine="3808"/>
</Position30>
</JumpHistory> </JumpHistory>
</ProjectOptions> </ProjectOptions>
<CompilerOptions> <CompilerOptions>
@ -852,10 +897,13 @@
<Expression Value="K1"/> <Expression Value="K1"/>
</Item5> </Item5>
</Watches> </Watches>
<Exceptions Count="1"> <Exceptions Count="2">
<Item1> <Item1>
<Name Value="EInvalidOp"/> <Name Value="EInvalidOp"/>
</Item1> </Item1>
<Item2>
<Name Value="EConvertError"/>
</Item2>
</Exceptions> </Exceptions>
</Debugging> </Debugging>
<EditorMacros Count="0"/> <EditorMacros Count="0"/>

View File

@ -198,6 +198,7 @@ type
Hegth: integer; Hegth: integer;
Next: TMLCaptionItem; Next: TMLCaptionItem;
Prior: TMLCaptionItem; Prior: TMLCaptionItem;
FInvalidDraw:integer;
Col: TGridColumn; Col: TGridColumn;
end; end;
@ -550,6 +551,9 @@ type
procedure UpdateRowsHeight; procedure UpdateRowsHeight;
procedure ResetRowHeght; procedure ResetRowHeght;
procedure DoClearInvalidTitle;
procedure DoDrawInvalidTitle;
protected protected
function DatalinkActive: boolean; function DatalinkActive: boolean;
procedure LinkActive(Value: Boolean); override; procedure LinkActive(Value: Boolean); override;
@ -2368,6 +2372,64 @@ begin
RowHeights[i] := DefaultRowHeight; RowHeights[i] := DefaultRowHeight;
end; end;
procedure TRxDBGrid.DoClearInvalidTitle;
var
i, j:integer;
FTitle:TRxColumnTitle;
begin
for i:=0 to Columns.Count-1 do
begin
FTitle:=TRxColumnTitle(Columns[i].Title);
for j:=0 to FTitle.CaptionLinesCount-1 do
FTitle.CaptionLine(j).FInvalidDraw:=0;
end;
end;
procedure TRxDBGrid.DoDrawInvalidTitle;
var
{C, }i, j{, CB, CE}:integer;
MLI:TMLCaptionItem;
FTitle:TRxColumnTitle;
begin
{ CE:=-1;
CB:=Columns.Count;}
for i:=0 to Columns.Count-1 do
begin
FTitle:=TRxColumnTitle(Columns[i].Title);
for j:=0 to FTitle.CaptionLinesCount - 1 do
begin
MLI:=FTitle.CaptionLine(j);
if MLI.FInvalidDraw<0 then
begin
InvalidateRow(0);
{ CE:=Max(CE, i);
while Assigned(MLI.Prior) do
MLI:=MLI.Prior;
CB:=Min(MLI.Col.Index, CB);}
exit;
end;
end;
end;
(*
if CE>=CB then
begin
DebugLn('------');
InvalidateRow(0);
{ for i:=CE downto CB do
begin
DebugLn(['DoTestInvalidCaption', CE, ' ', CB, ' ', i]);
if i = 2 then
begin
end;
InvalidateCell(i, 0, true);
end; }
end;
*)
end;
procedure TRxDBGrid.DefaultDrawCellA(aCol, aRow: integer; aRect: TRect; procedure TRxDBGrid.DefaultDrawCellA(aCol, aRow: integer; aRect: TRect;
aState: TGridDrawState); aState: TGridDrawState);
@ -2385,6 +2447,15 @@ end;
procedure TRxDBGrid.DefaultDrawTitle(aCol, aRow: integer; aRect: TRect; procedure TRxDBGrid.DefaultDrawTitle(aCol, aRow: integer; aRect: TRect;
aState: TGridDrawState); aState: TGridDrawState);
procedure DoClearMLIInvalid(MLI1: TMLCaptionItem);
begin
while Assigned(MLI1) do
begin
inc(MLI1.FInvalidDraw);
MLI1:=MLI1.Next;
end;
end;
var var
ASortMarker: TSortMarker; ASortMarker: TSortMarker;
ASortPosition: integer; ASortPosition: integer;
@ -2397,7 +2468,7 @@ var
FTitle: TRxColumnTitle; FTitle: TRxColumnTitle;
GrdCol: TRxColumn; GrdCol: TRxColumn;
MLI, MLINext: TMLCaptionItem; MLI, MLINext, MLI1: TMLCaptionItem;
begin begin
if (dgIndicator in Options) and (aCol = 0) then if (dgIndicator in Options) and (aCol = 0) then
@ -2492,20 +2563,36 @@ begin
if Assigned(MLI.Prior) then if Assigned(MLI.Prior) then
begin begin
if aCol = LeftCol then if aCol = LeftCol then
begin
OutCaptionMLCellText(aCol, aRow, aRect2, aState, MLI); OutCaptionMLCellText(aCol, aRow, aRect2, aState, MLI);
DoClearMLIInvalid(MLI);
end
else
Dec(MLI.FInvalidDraw);
end end
else else
begin
OutCaptionMLCellText(aCol, aRow, aRect2, aState, MLI); OutCaptionMLCellText(aCol, aRow, aRect2, aState, MLI);
DoClearMLIInvalid(MLI);
end;
end end
else else
begin begin
if not Assigned(MLI.Prior) then if not Assigned(MLI.Prior) then
begin begin
OutCaptionCellText(aCol, aRow, aRect2, aState, MLI.Caption); OutCaptionCellText(aCol, aRow, aRect2, aState, MLI.Caption);
DoClearMLIInvalid(MLI);
end end
else else
if aCol = LeftCol then begin
OutCaptionMLCellText(aCol, aRow, aRect2, aState, MLI); if aCol = LeftCol then
begin
OutCaptionMLCellText(aCol, aRow, aRect2, aState, MLI);
DoClearMLIInvalid(MLI);
end
else
Dec(MLI.FInvalidDraw);
end;
end; end;
aRect2.Top := aRect2.Bottom; aRect2.Top := aRect2.Bottom;
end; end;
@ -3371,7 +3458,12 @@ begin
if rdgWordWrap in FOptionsRx then if rdgWordWrap in FOptionsRx then
UpdateRowsHeight; UpdateRowsHeight;
DoClearInvalidTitle;
inherited Paint; inherited Paint;
DoDrawInvalidTitle;
if FFooterOptions.Active and (FFooterOptions.RowCount > 0) then if FFooterOptions.Active and (FFooterOptions.RowCount > 0) then
DrawFooterRows; DrawFooterRows;
end; end;
@ -3717,14 +3809,29 @@ end;
procedure TRxDBGrid.BeforePo(DataSet: TDataSet); procedure TRxDBGrid.BeforePo(DataSet: TDataSet);
var var
i: integer; i: integer;
C:TRxColumn;
begin begin
if FooterOptions.Active and (DatalinkActive) then if DatalinkActive then
begin
if FooterOptions.Active then
for i := 0 to Columns.Count - 1 do for i := 0 to Columns.Count - 1 do
begin
if not TRxColumn(Columns[i]).Footer.PostTestValue then if not TRxColumn(Columns[i]).Footer.PostTestValue then
begin begin
FInProcessCalc := -1; FInProcessCalc := -1;
Break; Break;
end; end;
end;
if rdgFilter in OptionsRx then
for i := 0 to Columns.Count - 1 do
begin
C:=TRxColumn(Columns[i]);
if Assigned(C.Field) and (C.Filter.ValueList.IndexOf(C.Field.DisplayText)< 0) then
C.Filter.ValueList.Add(C.Field.DisplayText);
end;
end;
if Assigned(F_EventOnBeforePost) then if Assigned(F_EventOnBeforePost) then
F_EventOnBeforePost(DataSet); F_EventOnBeforePost(DataSet);
end; end;