new property in TRxCollumn - DirectInput - allow select input values in RxDBGrid only from PickList
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1985 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
parent
9a38af1143
commit
439af454af
@ -20,7 +20,7 @@
|
||||
<MinorVersionNr Value="4"/>
|
||||
<RevisionNr Value="1"/>
|
||||
<BuildNr Value="1"/>
|
||||
<StringTable FileDescription="Demo application from RXFPC library" LegalCopyright="Lagunov Aleksey, GPL 2" ProductName="Demo application from RXFPC library" ProductVersion="3.1.1.0"/>
|
||||
<StringTable ProductName="Demo application from RXFPC library" LegalCopyright="Lagunov Aleksey, GPL 2" ProductVersion="3.1.1.0" FileDescription="Demo application from RXFPC library"/>
|
||||
</VersionInfo>
|
||||
<BuildModes Count="1">
|
||||
<Item1 Name="default" Default="True"/>
|
||||
@ -51,20 +51,18 @@
|
||||
</Item3>
|
||||
<Item4>
|
||||
<PackageName Value="rxnew"/>
|
||||
<MinVersion Major="1" Release="18" Build="56" Valid="True"/>
|
||||
<MinVersion Build="56" Major="1" Valid="True" Release="18"/>
|
||||
</Item4>
|
||||
</RequiredPackages>
|
||||
<Units Count="65">
|
||||
<Units Count="58">
|
||||
<Unit0>
|
||||
<Filename Value="RxDBGridDemo.lpr"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="RxDBGridDemo"/>
|
||||
<EditorIndex Value="2"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="5" Y="17"/>
|
||||
<CursorPos X="9" Y="16"/>
|
||||
<UsageCount Value="54"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
<Filename Value="rxdbgridmainunit.pas"/>
|
||||
@ -72,10 +70,11 @@
|
||||
<ComponentName Value="RxDBGridMainForm"/>
|
||||
<ResourceBaseClass Value="Form"/>
|
||||
<UnitName Value="RxDBGridMainUnit"/>
|
||||
<IsVisibleTab Value="True"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="87"/>
|
||||
<CursorPos X="11" Y="9"/>
|
||||
<TopLine Value="93"/>
|
||||
<CursorPos X="3" Y="97"/>
|
||||
<UsageCount Value="54"/>
|
||||
<Loaded Value="True"/>
|
||||
<LoadedDesigner Value="True"/>
|
||||
@ -215,55 +214,55 @@
|
||||
<UsageCount Value="8"/>
|
||||
</Unit20>
|
||||
<Unit21>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxaboutdialog.pas"/>
|
||||
<Filename Value="../../rxaboutdialog.pas"/>
|
||||
<UnitName Value="RxAboutDialog"/>
|
||||
<TopLine Value="10"/>
|
||||
<CursorPos X="73" Y="30"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit21>
|
||||
<Unit22>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/registerrx.pas"/>
|
||||
<Filename Value="../../registerrx.pas"/>
|
||||
<UnitName Value="registerrx"/>
|
||||
<TopLine Value="174"/>
|
||||
<CursorPos X="18" Y="201"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit22>
|
||||
<Unit23>
|
||||
<Filename Value="/usr/local/share/lazarus/ideintf/idewindowintf.pas"/>
|
||||
<Filename Value="../../../../ideintf/idewindowintf.pas"/>
|
||||
<UnitName Value="IDEWindowIntf"/>
|
||||
<TopLine Value="31"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit23>
|
||||
<Unit24>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/extdlgs.pas"/>
|
||||
<Filename Value="../../../../lcl/extdlgs.pas"/>
|
||||
<UnitName Value="ExtDlgs"/>
|
||||
<TopLine Value="105"/>
|
||||
<CursorPos X="35" Y="122"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit24>
|
||||
<Unit25>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/dialogs.pp"/>
|
||||
<Filename Value="../../../../lcl/dialogs.pp"/>
|
||||
<UnitName Value="Dialogs"/>
|
||||
<TopLine Value="62"/>
|
||||
<CursorPos X="21" Y="79"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit25>
|
||||
<Unit26>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/include/commondialog.inc"/>
|
||||
<Filename Value="../../../../lcl/include/commondialog.inc"/>
|
||||
<TopLine Value="80"/>
|
||||
<CursorPos X="17" Y="84"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit26>
|
||||
<Unit27>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/widgetset/wsdialogs.pp"/>
|
||||
<Filename Value="../../../../lcl/widgetset/wsdialogs.pp"/>
|
||||
<UnitName Value="WSDialogs"/>
|
||||
<TopLine Value="132"/>
|
||||
<CursorPos X="3" Y="136"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit27>
|
||||
<Unit28>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxaboutformunit.pas"/>
|
||||
<Filename Value="../../rxaboutformunit.pas"/>
|
||||
<ComponentName Value="rxAboutFormForm"/>
|
||||
<ResourceBaseClass Value="Form"/>
|
||||
<UnitName Value="rxAboutFormUnit"/>
|
||||
@ -272,47 +271,40 @@
|
||||
<UsageCount Value="9"/>
|
||||
</Unit28>
|
||||
<Unit29>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxversinfo.pas"/>
|
||||
<Filename Value="../../rxversinfo.pas"/>
|
||||
<UnitName Value="RxVersInfo"/>
|
||||
<TopLine Value="72"/>
|
||||
<CursorPos X="49" Y="105"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit29>
|
||||
<Unit30>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/include/control.inc"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="3150"/>
|
||||
<CursorPos X="89" Y="3171"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit30>
|
||||
<Unit31>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/buttonpanel.pas"/>
|
||||
<Filename Value="../../../../lcl/buttonpanel.pas"/>
|
||||
<UnitName Value="ButtonPanel"/>
|
||||
<TopLine Value="11"/>
|
||||
<CursorPos X="6" Y="15"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit31>
|
||||
<Unit32>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/extctrls.pp"/>
|
||||
</Unit30>
|
||||
<Unit31>
|
||||
<Filename Value="../../../../lcl/extctrls.pp"/>
|
||||
<UnitName Value="ExtCtrls"/>
|
||||
<TopLine Value="604"/>
|
||||
<CursorPos X="15" Y="607"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit32>
|
||||
<Unit33>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/include/customimage.inc"/>
|
||||
</Unit31>
|
||||
<Unit32>
|
||||
<Filename Value="../../../../lcl/include/customimage.inc"/>
|
||||
<TopLine Value="67"/>
|
||||
<CursorPos X="3" Y="69"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit33>
|
||||
<Unit34>
|
||||
</Unit32>
|
||||
<Unit33>
|
||||
<Filename Value="../../../../../../install/fpcsrc/rtl/objpas/classes/classesh.inc"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="426"/>
|
||||
<CursorPos X="17" Y="448"/>
|
||||
<UsageCount Value="16"/>
|
||||
</Unit34>
|
||||
<Unit35>
|
||||
</Unit33>
|
||||
<Unit34>
|
||||
<Filename Value="../../../../../smsprog/sms_send_deamon/smsSendGui/smssendaboutunit.pas"/>
|
||||
<ComponentName Value="smsSendAboutForm"/>
|
||||
<HasResources Value="True"/>
|
||||
@ -321,22 +313,22 @@
|
||||
<TopLine Value="28"/>
|
||||
<CursorPos X="1" Y="57"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit35>
|
||||
<Unit36>
|
||||
</Unit34>
|
||||
<Unit35>
|
||||
<Filename Value="../../../../../smsprog/sms_shared/smsabstarctconstunit.pas"/>
|
||||
<UnitName Value="smsAbstarctConstUnit"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="42" Y="11"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit36>
|
||||
<Unit37>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxconst.pas"/>
|
||||
</Unit35>
|
||||
<Unit36>
|
||||
<Filename Value="../../rxconst.pas"/>
|
||||
<UnitName Value="rxconst"/>
|
||||
<TopLine Value="34"/>
|
||||
<CursorPos X="3" Y="51"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit37>
|
||||
<Unit38>
|
||||
</Unit36>
|
||||
<Unit37>
|
||||
<Filename Value="../../../rxnet/demo/send_demo/smssendparamsunit.pas"/>
|
||||
<ComponentName Value="smssendParamsForm"/>
|
||||
<HasResources Value="True"/>
|
||||
@ -345,8 +337,8 @@
|
||||
<TopLine Value="49"/>
|
||||
<CursorPos X="34" Y="60"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit38>
|
||||
<Unit39>
|
||||
</Unit37>
|
||||
<Unit38>
|
||||
<Filename Value="../../../rxnet/demo/send_demo/smssenddemomainunit.pas"/>
|
||||
<ComponentName Value="smsSendDemoMainForm"/>
|
||||
<HasResources Value="True"/>
|
||||
@ -355,74 +347,51 @@
|
||||
<TopLine Value="41"/>
|
||||
<CursorPos X="105" Y="29"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit39>
|
||||
<Unit40>
|
||||
</Unit38>
|
||||
<Unit39>
|
||||
<Filename Value="../../../rxnet/demo/send_demo/send_demo.lpr"/>
|
||||
<UnitName Value="send_demo"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit40>
|
||||
<Unit41>
|
||||
</Unit39>
|
||||
<Unit40>
|
||||
<Filename Value="../../../../doceditor/lazdeopts.pp"/>
|
||||
<UnitName Value="LazDEOpts"/>
|
||||
<TopLine Value="43"/>
|
||||
<CursorPos X="1" Y="56"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit41>
|
||||
<Unit42>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxfileutils.pas"/>
|
||||
</Unit40>
|
||||
<Unit41>
|
||||
<Filename Value="../../rxfileutils.pas"/>
|
||||
<UnitName Value="rxFileUtils"/>
|
||||
<TopLine Value="18"/>
|
||||
<CursorPos X="33" Y="42"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit42>
|
||||
<Unit43>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/dbgrids.pas"/>
|
||||
<UnitName Value="DBGrids"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="3153"/>
|
||||
<CursorPos X="18" Y="3171"/>
|
||||
<UsageCount Value="14"/>
|
||||
</Unit43>
|
||||
<Unit44>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/registerrxdb.pas"/>
|
||||
</Unit41>
|
||||
<Unit42>
|
||||
<Filename Value="../../registerrxdb.pas"/>
|
||||
<UnitName Value="RegisterRxDB"/>
|
||||
<TopLine Value="2"/>
|
||||
<CursorPos X="20" Y="17"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit44>
|
||||
<Unit45>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<UnitName Value="rxdbgrid"/>
|
||||
<EditorIndex Value="3"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="2537"/>
|
||||
<CursorPos X="3" Y="2542"/>
|
||||
<UsageCount Value="17"/>
|
||||
<Bookmarks Count="3">
|
||||
<Item0 X="3" Y="2250" ID="3"/>
|
||||
<Item1 X="13" Y="1203" ID="1"/>
|
||||
<Item2 X="11" Y="1606" ID="2"/>
|
||||
</Bookmarks>
|
||||
<Loaded Value="True"/>
|
||||
</Unit45>
|
||||
<Unit46>
|
||||
<Filename Value="/usr/local/share/lazarus/ideintf/dbpropedits.pas"/>
|
||||
</Unit42>
|
||||
<Unit43>
|
||||
<Filename Value="../../../../ideintf/dbpropedits.pas"/>
|
||||
<UnitName Value="DBPropEdits"/>
|
||||
<TopLine Value="13"/>
|
||||
<CursorPos X="6" Y="19"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit46>
|
||||
<Unit47>
|
||||
<Filename Value="/usr/local/share/lazarus/ideintf/propedits.pp"/>
|
||||
</Unit43>
|
||||
<Unit44>
|
||||
<Filename Value="../../../../ideintf/propedits.pp"/>
|
||||
<UnitName Value="PropEdits"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="6" Y="26"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit47>
|
||||
<Unit48>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid_findunit.pas"/>
|
||||
</Unit44>
|
||||
<Unit45>
|
||||
<Filename Value="../../rxdbgrid_findunit.pas"/>
|
||||
<ComponentName Value="rxDBGridFindForm"/>
|
||||
<HasResources Value="True"/>
|
||||
<ResourceBaseClass Value="Form"/>
|
||||
@ -430,42 +399,32 @@
|
||||
<TopLine Value="78"/>
|
||||
<CursorPos X="1" Y="94"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit48>
|
||||
<Unit49>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid_columsunit.pas"/>
|
||||
<ComponentName Value="rxDBGridColumsForm"/>
|
||||
<HasResources Value="True"/>
|
||||
<ResourceBaseClass Value="Form"/>
|
||||
<UnitName Value="rxdbgrid_columsunit"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="25" Y="1"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit49>
|
||||
<Unit50>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxtoolbar.pas"/>
|
||||
</Unit45>
|
||||
<Unit46>
|
||||
<Filename Value="../../rxtoolbar.pas"/>
|
||||
<UnitName Value="rxtoolbar"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="52" Y="26"/>
|
||||
<UsageCount Value="11"/>
|
||||
</Unit50>
|
||||
<Unit51>
|
||||
<Filename Value="/usr/local/share/lazarus/components/synedit/synedit.pp"/>
|
||||
</Unit46>
|
||||
<Unit47>
|
||||
<Filename Value="../../../synedit/synedit.pp"/>
|
||||
<UnitName Value="SynEdit"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="5699"/>
|
||||
<CursorPos X="1" Y="5702"/>
|
||||
<UsageCount Value="16"/>
|
||||
</Unit51>
|
||||
<Unit52>
|
||||
<Filename Value="/usr/local/share/lazarus/components/synedit/syneditkeycmds.pp"/>
|
||||
</Unit47>
|
||||
<Unit48>
|
||||
<Filename Value="../../../synedit/syneditkeycmds.pp"/>
|
||||
<UnitName Value="SynEditKeyCmds"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="750"/>
|
||||
<CursorPos X="3" Y="752"/>
|
||||
<UsageCount Value="12"/>
|
||||
</Unit52>
|
||||
<Unit53>
|
||||
</Unit48>
|
||||
<Unit49>
|
||||
<Filename Value="../../../../../../install/fpcsrc/rtl/objpas/classes/classes.inc"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="429"/>
|
||||
@ -473,9 +432,9 @@
|
||||
<SyntaxHighlighter Value="FreePascal"/>
|
||||
<UsageCount Value="9"/>
|
||||
<DefaultSyntaxHighlighter Value="Text"/>
|
||||
</Unit53>
|
||||
<Unit54>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/actnlist.pas"/>
|
||||
</Unit49>
|
||||
<Unit50>
|
||||
<Filename Value="../../../../lcl/actnlist.pas"/>
|
||||
<UnitName Value="ActnList"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="206"/>
|
||||
@ -483,9 +442,9 @@
|
||||
<SyntaxHighlighter Value="FreePascal"/>
|
||||
<UsageCount Value="9"/>
|
||||
<DefaultSyntaxHighlighter Value="Text"/>
|
||||
</Unit54>
|
||||
<Unit55>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/lclproc.pas"/>
|
||||
</Unit50>
|
||||
<Unit51>
|
||||
<Filename Value="../../../../lcl/lclproc.pas"/>
|
||||
<UnitName Value="LCLProc"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="1154"/>
|
||||
@ -493,8 +452,8 @@
|
||||
<SyntaxHighlighter Value="FreePascal"/>
|
||||
<UsageCount Value="9"/>
|
||||
<DefaultSyntaxHighlighter Value="Text"/>
|
||||
</Unit55>
|
||||
<Unit56>
|
||||
</Unit51>
|
||||
<Unit52>
|
||||
<Filename Value="rxdbgridmainunit.lfm"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="100"/>
|
||||
@ -502,192 +461,59 @@
|
||||
<SyntaxHighlighter Value="LFM"/>
|
||||
<UsageCount Value="9"/>
|
||||
<DefaultSyntaxHighlighter Value="Text"/>
|
||||
</Unit56>
|
||||
<Unit57>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/Demos/RxDBGrid/RxDBGridDemo.lpr"/>
|
||||
<UnitName Value="RxDBGridDemo"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="1" Y="15"/>
|
||||
<SyntaxHighlighter Value="FreePascal"/>
|
||||
<UsageCount Value="9"/>
|
||||
<DefaultSyntaxHighlighter Value="Text"/>
|
||||
</Unit57>
|
||||
<Unit58>
|
||||
</Unit52>
|
||||
<Unit53>
|
||||
<Filename Value="../../../../../../install/fpcsrc/rtl/objpas/classes/collect.inc"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="286"/>
|
||||
<CursorPos X="1" Y="288"/>
|
||||
<UsageCount Value="15"/>
|
||||
</Unit58>
|
||||
<Unit59>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<UnitName Value="Grids"/>
|
||||
<EditorIndex Value="4"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="3866"/>
|
||||
<CursorPos X="1" Y="3891"/>
|
||||
<UsageCount Value="14"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit59>
|
||||
<Unit60>
|
||||
</Unit53>
|
||||
<Unit54>
|
||||
<Filename Value="../../../../../../wine/1/1/rx.diff"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="1" Y="9"/>
|
||||
<UsageCount Value="10"/>
|
||||
<DefaultSyntaxHighlighter Value="Diff"/>
|
||||
</Unit60>
|
||||
<Unit61>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxmemds.pas"/>
|
||||
<UnitName Value="rxmemds"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="1088"/>
|
||||
<CursorPos X="1" Y="1113"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit61>
|
||||
<Unit62>
|
||||
</Unit54>
|
||||
<Unit55>
|
||||
<Filename Value="../../../../../../install/fpcsrc/packages/fcl-db/src/base/db.pas"/>
|
||||
<UnitName Value="db"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="541"/>
|
||||
<CursorPos X="1" Y="569"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit62>
|
||||
<Unit63>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/include/canvas.inc"/>
|
||||
<EditorIndex Value="5"/>
|
||||
</Unit55>
|
||||
<Unit56>
|
||||
<Filename Value="../../../../lcl/include/canvas.inc"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="1116"/>
|
||||
<CursorPos X="1" Y="1132"/>
|
||||
<UsageCount Value="11"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit63>
|
||||
<Unit64>
|
||||
</Unit56>
|
||||
<Unit57>
|
||||
<Filename Value="../../exsortsql.pas"/>
|
||||
<UnitName Value="exsortsql"/>
|
||||
<IsVisibleTab Value="True"/>
|
||||
<EditorIndex Value="1"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="1"/>
|
||||
<TopLine Value="69"/>
|
||||
<CursorPos X="49" Y="3"/>
|
||||
<UsageCount Value="10"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit64>
|
||||
</Unit57>
|
||||
</Units>
|
||||
<JumpHistory Count="28" HistoryIndex="27">
|
||||
<JumpHistory Count="3" HistoryIndex="2">
|
||||
<Position1>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="3141" Column="1" TopLine="3126"/>
|
||||
</Position1>
|
||||
<Position2>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="3142" Column="1" TopLine="3126"/>
|
||||
</Position2>
|
||||
<Position3>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="3354" Column="1" TopLine="3339"/>
|
||||
</Position3>
|
||||
<Position4>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="3359" Column="1" TopLine="3339"/>
|
||||
</Position4>
|
||||
<Position5>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="3378" Column="1" TopLine="3363"/>
|
||||
</Position5>
|
||||
<Position6>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="3380" Column="1" TopLine="3363"/>
|
||||
</Position6>
|
||||
<Position7>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="3381" Column="1" TopLine="3363"/>
|
||||
</Position7>
|
||||
<Position8>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="3382" Column="1" TopLine="3363"/>
|
||||
</Position8>
|
||||
<Position9>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="3388" Column="1" TopLine="3363"/>
|
||||
</Position9>
|
||||
<Position10>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="3366" Column="1" TopLine="3360"/>
|
||||
</Position10>
|
||||
<Position11>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3866" Column="1" TopLine="3861"/>
|
||||
</Position11>
|
||||
<Position12>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3868" Column="1" TopLine="3861"/>
|
||||
</Position12>
|
||||
<Position13>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3869" Column="1" TopLine="3861"/>
|
||||
</Position13>
|
||||
<Position14>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3871" Column="1" TopLine="3861"/>
|
||||
</Position14>
|
||||
<Position15>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3873" Column="1" TopLine="3861"/>
|
||||
</Position15>
|
||||
<Position16>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3878" Column="1" TopLine="3861"/>
|
||||
</Position16>
|
||||
<Position17>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3880" Column="1" TopLine="3861"/>
|
||||
</Position17>
|
||||
<Position18>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3882" Column="1" TopLine="3861"/>
|
||||
</Position18>
|
||||
<Position19>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3884" Column="1" TopLine="3861"/>
|
||||
</Position19>
|
||||
<Position20>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3887" Column="1" TopLine="3862"/>
|
||||
</Position20>
|
||||
<Position21>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3888" Column="1" TopLine="3863"/>
|
||||
</Position21>
|
||||
<Position22>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/include/canvas.inc"/>
|
||||
<Caret Line="1131" Column="1" TopLine="1116"/>
|
||||
</Position22>
|
||||
<Position23>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/include/canvas.inc"/>
|
||||
<Caret Line="1132" Column="1" TopLine="1116"/>
|
||||
</Position23>
|
||||
<Position24>
|
||||
<Filename Value="/usr/local/share/lazarus/lcl/grids.pas"/>
|
||||
<Caret Line="3891" Column="1" TopLine="3866"/>
|
||||
</Position24>
|
||||
<Position25>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="2046" Column="1" TopLine="2031"/>
|
||||
</Position25>
|
||||
<Position26>
|
||||
<Filename Value="rxdbgridmainunit.pas"/>
|
||||
<Caret Line="9" Column="11" TopLine="1"/>
|
||||
</Position26>
|
||||
<Position27>
|
||||
<Filename Value="/usr/local/share/lazarus/components/rxnew/rxdbgrid.pas"/>
|
||||
<Caret Line="187" Column="49" TopLine="162"/>
|
||||
</Position27>
|
||||
<Position28>
|
||||
<Filename Value="../../exsortsql.pas"/>
|
||||
<Caret Line="3" Column="21" TopLine="1"/>
|
||||
</Position28>
|
||||
</Position1>
|
||||
<Position2>
|
||||
<Filename Value="rxdbgridmainunit.pas"/>
|
||||
<Caret Line="88" Column="11" TopLine="70"/>
|
||||
</Position2>
|
||||
<Position3>
|
||||
<Filename Value="rxdbgridmainunit.pas"/>
|
||||
<Caret Line="96" Column="3" TopLine="92"/>
|
||||
</Position3>
|
||||
</JumpHistory>
|
||||
</ProjectOptions>
|
||||
<CompilerOptions>
|
||||
@ -705,6 +531,10 @@
|
||||
</SyntaxOptions>
|
||||
</Parsing>
|
||||
<Linking>
|
||||
<Debugging>
|
||||
<GenerateDebugInfo Value="True"/>
|
||||
<DebugInfoType Value="dsAuto"/>
|
||||
</Debugging>
|
||||
<Options>
|
||||
<Win32>
|
||||
<GraphicApplication Value="True"/>
|
||||
|
@ -1,21 +1,21 @@
|
||||
object RxDBGridMainForm: TRxDBGridMainForm
|
||||
Left = 299
|
||||
Height = 786
|
||||
Top = 1
|
||||
Width = 1012
|
||||
Top = 6
|
||||
Width = 1187
|
||||
ActiveControl = Panel1
|
||||
Caption = 'RxDBGrid Demo'
|
||||
ClientHeight = 759
|
||||
ClientWidth = 1012
|
||||
ClientHeight = 761
|
||||
ClientWidth = 1187
|
||||
Menu = MainMenu1
|
||||
OnCreate = FormCreate
|
||||
ShowHint = True
|
||||
LCLVersion = '0.9.31'
|
||||
object RxDBGrid1: TRxDBGrid
|
||||
Left = 0
|
||||
Height = 695
|
||||
Top = 64
|
||||
Width = 1012
|
||||
Height = 696
|
||||
Top = 65
|
||||
Width = 1187
|
||||
TitleButtons = True
|
||||
AutoSort = True
|
||||
Columns = <
|
||||
@ -141,6 +141,25 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
Filter.EmptyValue = '(Нет)'
|
||||
Filter.EmptyFont.Style = [fsItalic]
|
||||
Filter.ItemIndex = -1
|
||||
end
|
||||
item
|
||||
ButtonStyle = cbsPickList
|
||||
PickList.Strings = (
|
||||
''
|
||||
'Positive'
|
||||
'Negative'
|
||||
)
|
||||
Title.Alignment = taCenter
|
||||
Title.Caption = 'Rait'
|
||||
Title.PrefixOption = poNone
|
||||
Title.Orientation = toHorizontal
|
||||
FieldName = 'RAIT'
|
||||
Filter.Font.Style = [fsItalic]
|
||||
Filter.DropDownRows = 0
|
||||
Filter.EmptyValue = '(Нет)'
|
||||
Filter.EmptyFont.Style = [fsItalic]
|
||||
Filter.ItemIndex = -1
|
||||
DirectInput = False
|
||||
end>
|
||||
KeyStrokes = <
|
||||
item
|
||||
@ -195,22 +214,22 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
end
|
||||
object Panel1: TPanel
|
||||
Left = 0
|
||||
Height = 64
|
||||
Height = 65
|
||||
Top = 0
|
||||
Width = 1012
|
||||
Width = 1187
|
||||
Align = alTop
|
||||
AutoSize = True
|
||||
ClientHeight = 64
|
||||
ClientWidth = 1012
|
||||
ClientHeight = 65
|
||||
ClientWidth = 1187
|
||||
TabOrder = 1
|
||||
object Label1: TLabel
|
||||
AnchorSideLeft.Control = Button2
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = Panel1
|
||||
Left = 269
|
||||
Left = 260
|
||||
Height = 18
|
||||
Top = 7
|
||||
Width = 37
|
||||
Width = 36
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Mode'
|
||||
ParentColor = False
|
||||
@ -219,9 +238,9 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
AnchorSideLeft.Control = Panel1
|
||||
AnchorSideTop.Control = Panel1
|
||||
Left = 7
|
||||
Height = 27
|
||||
Height = 29
|
||||
Top = 7
|
||||
Width = 86
|
||||
Width = 84
|
||||
Action = actCalcTotal
|
||||
AutoSize = True
|
||||
BorderSpacing.Around = 6
|
||||
@ -231,10 +250,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
AnchorSideLeft.Control = Button1
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = Panel1
|
||||
Left = 99
|
||||
Height = 27
|
||||
Left = 97
|
||||
Height = 29
|
||||
Top = 7
|
||||
Width = 164
|
||||
Width = 157
|
||||
Action = actOptimizeColumnsWidthAll
|
||||
AutoSize = True
|
||||
BorderSpacing.Around = 6
|
||||
@ -245,11 +264,11 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = CheckBox2
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 498
|
||||
Left = 489
|
||||
Height = 22
|
||||
Hint = 'Use filter line'
|
||||
Top = 35
|
||||
Width = 84
|
||||
Width = 81
|
||||
BorderSpacing.Left = 6
|
||||
Caption = 'Use filter'
|
||||
OnChange = CheckBox1Change
|
||||
@ -259,8 +278,8 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
AnchorSideLeft.Control = Label1
|
||||
AnchorSideTop.Control = Label1
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 275
|
||||
Height = 25
|
||||
Left = 266
|
||||
Height = 27
|
||||
Top = 31
|
||||
Width = 217
|
||||
BorderSpacing.Around = 6
|
||||
@ -279,11 +298,11 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
AnchorSideLeft.Control = ComboBox1
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = Panel1
|
||||
Left = 498
|
||||
Left = 489
|
||||
Height = 22
|
||||
Hint = 'Auto fill column width'
|
||||
Top = 7
|
||||
Width = 133
|
||||
Width = 129
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Auto fill columns'
|
||||
OnChange = CheckBox2Change
|
||||
@ -293,10 +312,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
AnchorSideLeft.Control = CheckBox2
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = Panel1
|
||||
Left = 637
|
||||
Left = 624
|
||||
Height = 22
|
||||
Top = 7
|
||||
Width = 121
|
||||
Width = 117
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Show indicator'
|
||||
Checked = True
|
||||
@ -309,10 +328,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
AnchorSideLeft.Side = asrBottom
|
||||
AnchorSideTop.Control = CheckBox3
|
||||
AnchorSideTop.Side = asrBottom
|
||||
Left = 637
|
||||
Left = 624
|
||||
Height = 22
|
||||
Top = 35
|
||||
Width = 116
|
||||
Width = 114
|
||||
BorderSpacing.Around = 6
|
||||
Caption = 'Show headers'
|
||||
Checked = True
|
||||
@ -359,6 +378,12 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
DataType = ftInteger
|
||||
Precision = 0
|
||||
Size = 0
|
||||
end
|
||||
item
|
||||
Name = 'RAIT'
|
||||
DataType = ftString
|
||||
Precision = 0
|
||||
Size = 15
|
||||
end>
|
||||
OnFilterRecord = RxMemoryData1FilterRecordEx
|
||||
OnFilterRecordEx = RxMemoryData1FilterRecordEx
|
||||
@ -434,6 +459,17 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
||||
ReadOnly = False
|
||||
Required = False
|
||||
end
|
||||
object RxMemoryData1RAIT: TStringField
|
||||
DisplayWidth = 15
|
||||
FieldKind = fkData
|
||||
FieldName = 'RAIT'
|
||||
Index = 6
|
||||
LookupCache = False
|
||||
ProviderFlags = [pfInUpdate, pfInWhere]
|
||||
ReadOnly = False
|
||||
Required = False
|
||||
Size = 15
|
||||
end
|
||||
end
|
||||
object Datasource1: TDatasource
|
||||
DataSet = RxMemoryData1
|
||||
|
@ -20,6 +20,7 @@ type
|
||||
MenuItem8: TMenuItem;
|
||||
MenuItem9: TMenuItem;
|
||||
RxAboutDialog1: TRxAboutDialog;
|
||||
RxMemoryData1RAIT: TStringField;
|
||||
sysExit: TAction;
|
||||
hlpAbout: TAction;
|
||||
CheckBox2: TCheckBox;
|
||||
|
@ -66,6 +66,11 @@
|
||||
добавлено новое свойство KeyStrokes
|
||||
+ Добавлен новый компонент RxCurredit
|
||||
+ Добавлен новый компонент- TRxViewsPanel
|
||||
|
||||
+ у компоненты TRxMemoryData убрана зависимость от модуля Forms
|
||||
+ Улучшено отображение редактора полей типа TDateTime/TDate в RxDBGrid
|
||||
+ У TRxCollumn компоненты TRxDBGrid для стиля cbsPickList добавлено свойство DirectInput.
|
||||
Если оно установлено в false - значения поля можно выбрать только из выпадающего списка
|
||||
22.05.2008 - версия 2.0.0.136 (svn revision 100)
|
||||
+ У объекта TRxCustomDBLookupCombo введён контроль на CircularDataLink
|
||||
+ У объекта TRxCustomDBLookupCombo ускорена отрисовка данных
|
||||
|
@ -23,7 +23,7 @@ msgstr ""
|
||||
|
||||
#: rxconst.sbuttonalign
|
||||
msgid "Button align"
|
||||
msgstr "Alineación de Botones"
|
||||
msgstr "Alineaci?n de Botones"
|
||||
|
||||
#: rxconst.sbuttonalign1
|
||||
msgid "None"
|
||||
@ -111,7 +111,7 @@ msgstr "Proximo Mes|"
|
||||
|
||||
#: rxconst.snextyear
|
||||
msgid "Next Year|"
|
||||
msgstr "Proximo Año|"
|
||||
msgstr "Proximo A?o|"
|
||||
|
||||
#: rxconst.snotimplemented
|
||||
msgid "Function not yet implemented"
|
||||
@ -131,7 +131,7 @@ msgstr "Anterior Mes|"
|
||||
|
||||
#: rxconst.sprevyear
|
||||
msgid "Previous Year|"
|
||||
msgstr "Anterior Año|"
|
||||
msgstr "Anterior A?o|"
|
||||
|
||||
#: rxconst.sqtwidgetset
|
||||
msgid "QT widget set"
|
||||
|
@ -269,6 +269,7 @@ type
|
||||
|
||||
TRxColumn = class(TColumn)
|
||||
private
|
||||
FDirectInput: boolean;
|
||||
FFooter: TRxColumnFooter;
|
||||
FFilter: TRxColumnFilter;
|
||||
FImageList: TImageList;
|
||||
@ -294,6 +295,7 @@ type
|
||||
property NotInKeyListIndex: integer read FNotInKeyListIndex
|
||||
write SetNotInKeyListIndex default -1;
|
||||
property Filter: TRxColumnFilter read FFilter write SetFilter;
|
||||
property DirectInput : boolean read FDirectInput write FDirectInput default true;
|
||||
end;
|
||||
|
||||
{ TRxDbGridColumns }
|
||||
@ -690,6 +692,7 @@ type
|
||||
procedure msg_SelectAll(var Msg: TGridMessage); message GM_SELECTALL;
|
||||
|
||||
public
|
||||
constructor Create(Aowner : TComponent); override;
|
||||
// procedure SetBounds(aLeft, aTop, aWidth, aHeight: integer); override;
|
||||
procedure EditingDone; override;
|
||||
end;
|
||||
@ -791,6 +794,17 @@ end;
|
||||
|
||||
procedure TRxDBGridDateEditor.WndProc(var TheMessage: TLMessage);
|
||||
begin
|
||||
if FGrid<>nil then
|
||||
case TheMessage.Msg of
|
||||
LM_CLEAR,
|
||||
LM_CUT,
|
||||
LM_PASTE:
|
||||
begin
|
||||
if FGrid.EditorIsReadOnly then
|
||||
exit;
|
||||
end;
|
||||
end;
|
||||
|
||||
if TheMessage.msg = LM_KILLFOCUS then
|
||||
begin
|
||||
if HWND(TheMessage.WParam) = HWND(Handle) then
|
||||
@ -829,6 +843,12 @@ begin
|
||||
SelectAll;
|
||||
end;
|
||||
|
||||
constructor TRxDBGridDateEditor.Create(Aowner: TComponent);
|
||||
begin
|
||||
inherited Create(Aowner);
|
||||
AutoSize := false;
|
||||
end;
|
||||
|
||||
{procedure TRxDBGridDateEditor.SetBounds(aLeft, aTop, aWidth, aHeight: integer);
|
||||
begin
|
||||
BeginUpdateBounds;
|
||||
@ -945,6 +965,7 @@ begin
|
||||
inherited Create(AOwner);
|
||||
FLDS := TDataSource.Create(nil);
|
||||
LookupSource := FLDS;
|
||||
AutoSize := false;
|
||||
end;
|
||||
|
||||
destructor TRxDBGridLookupComboEditor.Destroy;
|
||||
@ -983,7 +1004,7 @@ begin
|
||||
CnvW := Max(DrawRect.Right - DrawRect.Left, 1);
|
||||
W := (ACanvas.TextWidth(Text) div CnvW) + 1;
|
||||
|
||||
DrawRect.Top := ((ARect.Top + ARect.Bottom) div 2) - W * ACanvas.TextHeight('W') div 2;
|
||||
DrawRect.Top := ((ARect.Top + ARect.Bottom) div 2) - W * ACanvas.TextHeight('Wg') div 2;
|
||||
if DrawRect.Top < ARect.Top + 1 then
|
||||
DrawRect.Top := ARect.Top + 1;
|
||||
|
||||
@ -2646,7 +2667,7 @@ end;
|
||||
|
||||
function TRxDBGrid.IsDefaultRowHeightStored: boolean;
|
||||
begin
|
||||
Result := DefaultRowHeight = Canvas.TextHeight('W');
|
||||
Result := DefaultRowHeight = Canvas.TextHeight('Wg');
|
||||
end;
|
||||
|
||||
procedure TRxDBGrid.VisualChange;
|
||||
@ -2680,6 +2701,15 @@ begin
|
||||
end;
|
||||
end;
|
||||
Result := inherited EditorByStyle(Style);
|
||||
|
||||
if (Style = cbsPickList) and (Result is TCustomComboBox) then
|
||||
begin
|
||||
if TRxColumn(SelectedColumn).DirectInput then
|
||||
TCustomComboBox(Result).Style:=csDropDown
|
||||
else
|
||||
TCustomComboBox(Result).Style:=csDropDownList;
|
||||
end;
|
||||
|
||||
end;
|
||||
|
||||
procedure TRxDBGrid.CalcStatTotals;
|
||||
@ -3191,6 +3221,7 @@ begin
|
||||
FNotInKeyListIndex := -1;
|
||||
FFooter := TRxColumnFooter.Create(Self);
|
||||
FFilter := TRxColumnFilter.Create(Self);
|
||||
FDirectInput := true;
|
||||
end;
|
||||
|
||||
destructor TRxColumn.Destroy;
|
||||
|
@ -37,7 +37,7 @@ unit rxmemds;
|
||||
interface
|
||||
|
||||
|
||||
uses SysUtils, Classes, Controls, DB, dbutils;
|
||||
uses SysUtils, Classes, DB;
|
||||
|
||||
{ TRxMemoryData }
|
||||
|
||||
@ -234,7 +234,7 @@ type
|
||||
implementation
|
||||
|
||||
|
||||
uses Forms, rxdconst, dbconst, Variants;
|
||||
uses CustApp, rxdconst, dbconst, Variants, math;
|
||||
|
||||
const
|
||||
ftBlobTypes = [ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle,
|
||||
@ -984,7 +984,8 @@ begin
|
||||
OnFilterRecord(Self, Result);
|
||||
{$ENDIF}
|
||||
except
|
||||
Application.HandleException(Self);
|
||||
// Application.HandleException(Self);
|
||||
CustomApplication.HandleException(Self);
|
||||
end;
|
||||
RestoreState(SaveState);
|
||||
end
|
||||
@ -1241,7 +1242,8 @@ end;
|
||||
|
||||
procedure TRxMemoryData.InternalHandleException;
|
||||
begin
|
||||
Application.HandleException(Self);
|
||||
CustomApplication.HandleException(Self);
|
||||
//Application.HandleException(Self);
|
||||
end;
|
||||
|
||||
procedure TRxMemoryData.InternalInitFieldDefs;
|
||||
@ -1282,6 +1284,84 @@ begin
|
||||
Result := not Filtered;
|
||||
end;
|
||||
|
||||
{ DataSet locate routines }
|
||||
function DataSetLocateThrough(DataSet: TDataSet; const KeyFields: string;
|
||||
const KeyValues: Variant; Options: TLocateOptions): Boolean;
|
||||
var
|
||||
FieldCount: Integer;
|
||||
Fields: TList;
|
||||
Bookmark: TBookmarkStr;
|
||||
|
||||
function CompareField(Field: TField; Value: Variant): Boolean;
|
||||
var
|
||||
S,S1: string;
|
||||
|
||||
begin
|
||||
if Field.DataType = ftString then
|
||||
begin
|
||||
S := Field.AsString;
|
||||
S1:=Value;
|
||||
if (loPartialKey in Options) then
|
||||
Delete(S, Length(S1) + 1, MaxInt);
|
||||
|
||||
if (loCaseInsensitive in Options) then
|
||||
Result := AnsiCompareText(S, S1) = 0
|
||||
else
|
||||
Result := AnsiCompareStr(S, S1) = 0;
|
||||
end
|
||||
// else Result := false //(Field.Value = Value);
|
||||
else Result := (Field.Value = Value);
|
||||
end;
|
||||
|
||||
function CompareRecord: Boolean;
|
||||
var
|
||||
I: Integer;
|
||||
begin
|
||||
if FieldCount = 1 then
|
||||
Result := CompareField(TField(Fields.First), KeyValues)
|
||||
else begin
|
||||
Result := True;
|
||||
for I := 0 to FieldCount - 1 do
|
||||
Result := Result and CompareField(TField(Fields[I]), KeyValues[I]);
|
||||
end;
|
||||
end;
|
||||
|
||||
begin
|
||||
Result := False;
|
||||
with DataSet do begin
|
||||
CheckBrowseMode;
|
||||
if BOF and EOF then Exit;
|
||||
end;
|
||||
Fields := TList.Create;
|
||||
try
|
||||
DataSet.GetFieldList(Fields, KeyFields);
|
||||
FieldCount := Fields.Count;
|
||||
Result := CompareRecord;
|
||||
if Result then Exit;
|
||||
DataSet.DisableControls;
|
||||
try
|
||||
Bookmark := DataSet.Bookmark;
|
||||
try
|
||||
with DataSet do begin
|
||||
First;
|
||||
while not EOF do begin
|
||||
Result := CompareRecord;
|
||||
if Result then Break;
|
||||
Next;
|
||||
end;
|
||||
end;
|
||||
finally
|
||||
if not Result and DataSet.BookmarkValid(PChar(Bookmark)) then
|
||||
DataSet.Bookmark := Bookmark;
|
||||
end;
|
||||
finally
|
||||
DataSet.EnableControls;
|
||||
end;
|
||||
finally
|
||||
Fields.Free;
|
||||
end;
|
||||
end;
|
||||
|
||||
function TRxMemoryData.Locate(const KeyFields: string;
|
||||
const KeyValues: Variant; Options: TLocateOptions): Boolean;
|
||||
begin
|
||||
@ -1344,6 +1424,35 @@ begin
|
||||
CheckDataTypes(FieldDefs);
|
||||
CreateFields;
|
||||
end;
|
||||
procedure AssignRecord(Source, Dest: TDataSet; ByName: Boolean);
|
||||
var
|
||||
I: Integer;
|
||||
F, FSrc: TField;
|
||||
begin
|
||||
// if not (Dest.State in dsEditModes) then DBError(SNotEditing);
|
||||
if ByName then begin
|
||||
for I := 0 to Source.FieldCount - 1 do begin
|
||||
F := Dest.FindField(Source.Fields[I].FieldName);
|
||||
if F <> nil then begin
|
||||
if (F.DataType = Source.Fields[I].DataType) and
|
||||
(F.DataSize = Source.Fields[I].DataSize) then
|
||||
F.Assign(Source.Fields[I])
|
||||
else F.AsString := Source.Fields[I].AsString;
|
||||
end;
|
||||
end;
|
||||
end
|
||||
else begin
|
||||
for I := 0 to Min(Source.FieldDefs.Count - 1, Dest.FieldDefs.Count - 1) do
|
||||
begin
|
||||
F := Dest.FindField(Dest.FieldDefs[I].Name);
|
||||
FSrc := Source.FindField(Source.FieldDefs[I].Name);
|
||||
if (F <> nil) and (FSrc <> nil) then begin
|
||||
if F.DataType = FSrc.DataType then F.Assign(FSrc)
|
||||
else F.AsString := FSrc.AsString;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
function TRxMemoryData.LoadFromDataSet(Source: TDataSet; ARecordCount: Integer;
|
||||
Mode: TLoadMode): Integer;
|
||||
@ -1614,7 +1723,8 @@ begin
|
||||
try
|
||||
FDataSet.DataEvent(deFieldChange, ptrint(FField));
|
||||
except
|
||||
Application.HandleException(Self);
|
||||
CustomApplication.HandleException(Self);
|
||||
// Application.HandleException(Self);
|
||||
end;
|
||||
end;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user