You've already forked lazarus-ccr
RxDBGrid - add new KeyStroke - Copy cell value. Default - Ctrl+C
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2885 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -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="96">
|
<Units Count="101">
|
||||||
<Unit0>
|
<Unit0>
|
||||||
<Filename Value="RxDBGridDemo.lpr"/>
|
<Filename Value="RxDBGridDemo.lpr"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
@ -71,6 +71,7 @@
|
|||||||
<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="134"/>
|
<TopLine Value="134"/>
|
||||||
@ -102,15 +103,14 @@
|
|||||||
<Unit5>
|
<Unit5>
|
||||||
<Filename Value="../../rxdbgrid.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<UnitName Value="rxdbgrid"/>
|
<UnitName Value="rxdbgrid"/>
|
||||||
<IsVisibleTab Value="True"/>
|
|
||||||
<EditorIndex Value="1"/>
|
<EditorIndex Value="1"/>
|
||||||
<WindowIndex Value="0"/>
|
<WindowIndex Value="0"/>
|
||||||
<TopLine Value="3955"/>
|
<TopLine Value="5421"/>
|
||||||
<CursorPos X="19" Y="3985"/>
|
<CursorPos X="1" Y="5446"/>
|
||||||
<UsageCount Value="16"/>
|
<UsageCount Value="16"/>
|
||||||
<Bookmarks Count="2">
|
<Bookmarks Count="2">
|
||||||
<Item0 X="1" Y="4281" ID="1"/>
|
<Item0 X="1" Y="2509" ID="2"/>
|
||||||
<Item1 X="1" Y="2506" ID="2"/>
|
<Item1 X="48" Y="4306" ID="1"/>
|
||||||
</Bookmarks>
|
</Bookmarks>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit5>
|
</Unit5>
|
||||||
@ -200,9 +200,12 @@
|
|||||||
<Unit18>
|
<Unit18>
|
||||||
<Filename Value="../../rxdconst.pas"/>
|
<Filename Value="../../rxdconst.pas"/>
|
||||||
<UnitName Value="rxdconst"/>
|
<UnitName Value="rxdconst"/>
|
||||||
<TopLine Value="126"/>
|
<EditorIndex Value="2"/>
|
||||||
<CursorPos X="15" Y="155"/>
|
<WindowIndex Value="0"/>
|
||||||
<UsageCount Value="5"/>
|
<TopLine Value="98"/>
|
||||||
|
<CursorPos X="31" Y="114"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
</Unit18>
|
</Unit18>
|
||||||
<Unit19>
|
<Unit19>
|
||||||
<Filename Value="../../../lcl/include/winapih.inc"/>
|
<Filename Value="../../../lcl/include/winapih.inc"/>
|
||||||
@ -500,7 +503,7 @@
|
|||||||
<Unit58>
|
<Unit58>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
||||||
<UnitName Value="DBGrids"/>
|
<UnitName Value="DBGrids"/>
|
||||||
<EditorIndex Value="2"/>
|
<EditorIndex Value="3"/>
|
||||||
<WindowIndex Value="0"/>
|
<WindowIndex Value="0"/>
|
||||||
<TopLine Value="3021"/>
|
<TopLine Value="3021"/>
|
||||||
<CursorPos X="1" Y="3049"/>
|
<CursorPos X="1" Y="3049"/>
|
||||||
@ -510,7 +513,7 @@
|
|||||||
<Unit59>
|
<Unit59>
|
||||||
<Filename Value="../../../../lcl/grids.pas"/>
|
<Filename Value="../../../../lcl/grids.pas"/>
|
||||||
<UnitName Value="Grids"/>
|
<UnitName Value="Grids"/>
|
||||||
<EditorIndex Value="3"/>
|
<EditorIndex Value="4"/>
|
||||||
<WindowIndex Value="0"/>
|
<WindowIndex Value="0"/>
|
||||||
<TopLine Value="1054"/>
|
<TopLine Value="1054"/>
|
||||||
<CursorPos X="14" Y="1068"/>
|
<CursorPos X="14" Y="1068"/>
|
||||||
@ -797,123 +800,159 @@
|
|||||||
<CursorPos X="1" Y="63"/>
|
<CursorPos X="1" Y="63"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="10"/>
|
||||||
</Unit95>
|
</Unit95>
|
||||||
|
<Unit96>
|
||||||
|
<Filename Value="/home/alexs/install/source/fpcsrc/rtl/objpas/classes/classesh.inc"/>
|
||||||
|
<WindowIndex Value="0"/>
|
||||||
|
<TopLine Value="511"/>
|
||||||
|
<CursorPos X="14" Y="527"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit96>
|
||||||
|
<Unit97>
|
||||||
|
<Filename Value="/home/alexs/install/source/fpcsrc/rtl/objpas/classes/classes.inc"/>
|
||||||
|
<WindowIndex Value="0"/>
|
||||||
|
<TopLine Value="846"/>
|
||||||
|
<CursorPos X="3" Y="851"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit97>
|
||||||
|
<Unit98>
|
||||||
|
<Filename Value="../../../../lcl/clipbrd.pp"/>
|
||||||
|
<UnitName Value="Clipbrd"/>
|
||||||
|
<WindowIndex Value="0"/>
|
||||||
|
<TopLine Value="176"/>
|
||||||
|
<CursorPos X="15" Y="190"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit98>
|
||||||
|
<Unit99>
|
||||||
|
<Filename Value="../../../../lcl/include/clipbrd.inc"/>
|
||||||
|
<WindowIndex Value="0"/>
|
||||||
|
<TopLine Value="178"/>
|
||||||
|
<CursorPos X="3" Y="180"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit99>
|
||||||
|
<Unit100>
|
||||||
|
<Filename Value="/home/alexs/install/source/fpcsrc/rtl/objpas/classes/collect.inc"/>
|
||||||
|
<WindowIndex Value="0"/>
|
||||||
|
<TopLine Value="153"/>
|
||||||
|
<CursorPos X="3" Y="156"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit100>
|
||||||
</Units>
|
</Units>
|
||||||
<JumpHistory Count="29" HistoryIndex="28">
|
<JumpHistory Count="29" HistoryIndex="28">
|
||||||
<Position1>
|
<Position1>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="271" Column="1" TopLine="248"/>
|
<Caret Line="673" Column="15" TopLine="658"/>
|
||||||
</Position1>
|
</Position1>
|
||||||
<Position2>
|
<Position2>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="9" Column="7" TopLine="1"/>
|
<Caret Line="5325" Column="3" TopLine="5323"/>
|
||||||
</Position2>
|
</Position2>
|
||||||
<Position3>
|
<Position3>
|
||||||
<Filename Value="../../rxdbgrid.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="46" Column="3" TopLine="25"/>
|
<Caret Line="5326" Column="18" TopLine="5323"/>
|
||||||
</Position3>
|
</Position3>
|
||||||
<Position4>
|
<Position4>
|
||||||
<Filename Value="../../rxdbgrid.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="33" Column="1" TopLine="28"/>
|
<Caret Line="119" Column="15" TopLine="112"/>
|
||||||
</Position4>
|
</Position4>
|
||||||
<Position5>
|
<Position5>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="274" Column="1" TopLine="244"/>
|
<Caret Line="138" Column="23" TopLine="113"/>
|
||||||
</Position5>
|
</Position5>
|
||||||
<Position6>
|
<Position6>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="151" Column="27" TopLine="149"/>
|
<Caret Line="140" Column="21" TopLine="115"/>
|
||||||
</Position6>
|
</Position6>
|
||||||
<Position7>
|
<Position7>
|
||||||
<Filename Value="../../rxdbgrid.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="782" Column="14" TopLine="768"/>
|
<Caret Line="142" Column="57" TopLine="117"/>
|
||||||
</Position7>
|
</Position7>
|
||||||
<Position8>
|
<Position8>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="473" Column="82" TopLine="459"/>
|
<Caret Line="5356" Column="3" TopLine="5354"/>
|
||||||
</Position8>
|
</Position8>
|
||||||
<Position9>
|
<Position9>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="568" Column="27" TopLine="543"/>
|
<Caret Line="4469" Column="3" TopLine="4448"/>
|
||||||
</Position9>
|
</Position9>
|
||||||
<Position10>
|
<Position10>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="3047" Column="30" TopLine="3020"/>
|
<Caret Line="1704" Column="48" TopLine="1676"/>
|
||||||
</Position10>
|
</Position10>
|
||||||
<Position11>
|
<Position11>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="3048" Column="20" TopLine="3021"/>
|
<Caret Line="1705" Column="19" TopLine="1675"/>
|
||||||
</Position11>
|
</Position11>
|
||||||
<Position12>
|
<Position12>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="429" Column="26" TopLine="415"/>
|
<Caret Line="3566" Column="45" TopLine="3539"/>
|
||||||
</Position12>
|
</Position12>
|
||||||
<Position13>
|
<Position13>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="3036" Column="35" TopLine="3021"/>
|
<Caret Line="4292" Column="33" TopLine="4292"/>
|
||||||
</Position13>
|
</Position13>
|
||||||
<Position14>
|
<Position14>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="429" Column="26" TopLine="415"/>
|
<Caret Line="4366" Column="1" TopLine="4359"/>
|
||||||
</Position14>
|
</Position14>
|
||||||
<Position15>
|
<Position15>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="3045" Column="25" TopLine="3018"/>
|
<Caret Line="4310" Column="51" TopLine="4291"/>
|
||||||
</Position15>
|
</Position15>
|
||||||
<Position16>
|
<Position16>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="429" Column="15" TopLine="415"/>
|
<Caret Line="652" Column="30" TopLine="639"/>
|
||||||
</Position16>
|
</Position16>
|
||||||
<Position17>
|
<Position17>
|
||||||
<Filename Value="../../../../lcl/grids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="984" Column="26" TopLine="971"/>
|
<Caret Line="1705" Column="62" TopLine="1681"/>
|
||||||
</Position17>
|
</Position17>
|
||||||
<Position18>
|
<Position18>
|
||||||
<Filename Value="../../../../lcl/grids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="1204" Column="35" TopLine="1177"/>
|
<Caret Line="3566" Column="40" TopLine="3542"/>
|
||||||
</Position18>
|
</Position18>
|
||||||
<Position19>
|
<Position19>
|
||||||
<Filename Value="../../../../lcl/grids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="1228" Column="26" TopLine="1202"/>
|
<Caret Line="3553" Column="5" TopLine="3542"/>
|
||||||
</Position19>
|
</Position19>
|
||||||
<Position20>
|
<Position20>
|
||||||
<Filename Value="../../../../lcl/grids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="1352" Column="79" TopLine="1327"/>
|
<Caret Line="3555" Column="1" TopLine="3542"/>
|
||||||
</Position20>
|
</Position20>
|
||||||
<Position21>
|
<Position21>
|
||||||
<Filename Value="../../../../lcl/grids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="1457" Column="27" TopLine="1432"/>
|
<Caret Line="5436" Column="1" TopLine="5420"/>
|
||||||
</Position21>
|
</Position21>
|
||||||
<Position22>
|
<Position22>
|
||||||
<Filename Value="../../../../lcl/grids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="1673" Column="27" TopLine="1648"/>
|
<Caret Line="5437" Column="1" TopLine="5420"/>
|
||||||
</Position22>
|
</Position22>
|
||||||
<Position23>
|
<Position23>
|
||||||
<Filename Value="../../../../lcl/grids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="3380" Column="34" TopLine="3353"/>
|
<Caret Line="5439" Column="1" TopLine="5420"/>
|
||||||
</Position23>
|
</Position23>
|
||||||
<Position24>
|
<Position24>
|
||||||
<Filename Value="../../../../lcl/grids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="6193" Column="20" TopLine="6167"/>
|
<Caret Line="5439" Column="1" TopLine="5420"/>
|
||||||
</Position24>
|
</Position24>
|
||||||
<Position25>
|
<Position25>
|
||||||
<Filename Value="../../../../lcl/grids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="6205" Column="20" TopLine="6179"/>
|
<Caret Line="5440" Column="1" TopLine="5420"/>
|
||||||
</Position25>
|
</Position25>
|
||||||
<Position26>
|
<Position26>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="429" Column="26" TopLine="415"/>
|
<Caret Line="5439" Column="1" TopLine="5420"/>
|
||||||
</Position26>
|
</Position26>
|
||||||
<Position27>
|
<Position27>
|
||||||
<Filename Value="../../../../lcl/dbgrids.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="3040" Column="21" TopLine="3021"/>
|
<Caret Line="5440" Column="1" TopLine="5420"/>
|
||||||
</Position27>
|
</Position27>
|
||||||
<Position28>
|
<Position28>
|
||||||
<Filename Value="../../rxdbgrid.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="3977" Column="3" TopLine="3954"/>
|
<Caret Line="5439" Column="1" TopLine="5420"/>
|
||||||
</Position28>
|
</Position28>
|
||||||
<Position29>
|
<Position29>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="../../rxdbgrid.pas"/>
|
||||||
<Caret Line="151" Column="27" TopLine="149"/>
|
<Caret Line="5446" Column="2" TopLine="5420"/>
|
||||||
</Position29>
|
</Position29>
|
||||||
</JumpHistory>
|
</JumpHistory>
|
||||||
</ProjectOptions>
|
</ProjectOptions>
|
||||||
@ -943,6 +982,29 @@
|
|||||||
</Other>
|
</Other>
|
||||||
</CompilerOptions>
|
</CompilerOptions>
|
||||||
<Debugging>
|
<Debugging>
|
||||||
|
<BreakPoints Count="3">
|
||||||
|
<Item1>
|
||||||
|
<Kind Value="bpkSource"/>
|
||||||
|
<WatchScope Value="wpsLocal"/>
|
||||||
|
<WatchKind Value="wpkWrite"/>
|
||||||
|
<Source Value="../../rxdbgrid.pas"/>
|
||||||
|
<Line Value="4306"/>
|
||||||
|
</Item1>
|
||||||
|
<Item2>
|
||||||
|
<Kind Value="bpkSource"/>
|
||||||
|
<WatchScope Value="wpsLocal"/>
|
||||||
|
<WatchKind Value="wpkWrite"/>
|
||||||
|
<Source Value="../../rxdbgrid.pas"/>
|
||||||
|
<Line Value="3553"/>
|
||||||
|
</Item2>
|
||||||
|
<Item3>
|
||||||
|
<Kind Value="bpkSource"/>
|
||||||
|
<WatchScope Value="wpsLocal"/>
|
||||||
|
<WatchKind Value="wpkWrite"/>
|
||||||
|
<Source Value="../../rxdbgrid.pas"/>
|
||||||
|
<Line Value="5442"/>
|
||||||
|
</Item3>
|
||||||
|
</BreakPoints>
|
||||||
<Watches Count="5">
|
<Watches Count="5">
|
||||||
<Item1>
|
<Item1>
|
||||||
<Expression Value="K"/>
|
<Expression Value="K"/>
|
||||||
|
@ -1,20 +1,20 @@
|
|||||||
object RxDBGridMainForm: TRxDBGridMainForm
|
object RxDBGridMainForm: TRxDBGridMainForm
|
||||||
Left = 306
|
Left = 59
|
||||||
Height = 721
|
Height = 721
|
||||||
Top = 142
|
Top = 36
|
||||||
Width = 1187
|
Width = 1187
|
||||||
ActiveControl = Panel1
|
ActiveControl = Panel1
|
||||||
Caption = 'RxDBGrid Demo'
|
Caption = 'RxDBGrid Demo'
|
||||||
ClientHeight = 698
|
ClientHeight = 696
|
||||||
ClientWidth = 1187
|
ClientWidth = 1187
|
||||||
Menu = MainMenu1
|
Menu = MainMenu1
|
||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
ShowHint = True
|
ShowHint = True
|
||||||
LCLVersion = '1.1'
|
LCLVersion = '1.3'
|
||||||
object RxDBGrid1: TRxDBGrid
|
object RxDBGrid1: TRxDBGrid
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 634
|
Height = 630
|
||||||
Top = 64
|
Top = 66
|
||||||
Width = 1187
|
Width = 1187
|
||||||
TitleButtons = True
|
TitleButtons = True
|
||||||
AutoSort = True
|
AutoSort = True
|
||||||
@ -241,6 +241,11 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
Command = rxgcHideQuickFilter
|
Command = rxgcHideQuickFilter
|
||||||
ShortCut = 16456
|
ShortCut = 16456
|
||||||
Enabled = True
|
Enabled = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Command = rxgcCopyCellValue
|
||||||
|
ShortCut = 16451
|
||||||
|
Enabled = True
|
||||||
end>
|
end>
|
||||||
FooterOptions.Active = True
|
FooterOptions.Active = True
|
||||||
FooterOptions.Color = clYellow
|
FooterOptions.Color = clYellow
|
||||||
@ -268,22 +273,22 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
end
|
end
|
||||||
object Panel1: TPanel
|
object Panel1: TPanel
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 64
|
Height = 66
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 1187
|
Width = 1187
|
||||||
Align = alTop
|
Align = alTop
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
ClientHeight = 64
|
ClientHeight = 66
|
||||||
ClientWidth = 1187
|
ClientWidth = 1187
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
object Label1: TLabel
|
object Label1: TLabel
|
||||||
AnchorSideLeft.Control = Button2
|
AnchorSideLeft.Control = Button2
|
||||||
AnchorSideLeft.Side = asrBottom
|
AnchorSideLeft.Side = asrBottom
|
||||||
AnchorSideTop.Control = Panel1
|
AnchorSideTop.Control = Panel1
|
||||||
Left = 270
|
Left = 260
|
||||||
Height = 15
|
Height = 19
|
||||||
Top = 7
|
Top = 7
|
||||||
Width = 35
|
Width = 33
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'Mode'
|
Caption = 'Mode'
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
@ -292,9 +297,9 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
AnchorSideLeft.Control = Panel1
|
AnchorSideLeft.Control = Panel1
|
||||||
AnchorSideTop.Control = Panel1
|
AnchorSideTop.Control = Panel1
|
||||||
Left = 7
|
Left = 7
|
||||||
Height = 27
|
Height = 31
|
||||||
Top = 7
|
Top = 7
|
||||||
Width = 86
|
Width = 85
|
||||||
Action = actCalcTotal
|
Action = actCalcTotal
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
@ -304,10 +309,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
AnchorSideLeft.Control = Button1
|
AnchorSideLeft.Control = Button1
|
||||||
AnchorSideLeft.Side = asrBottom
|
AnchorSideLeft.Side = asrBottom
|
||||||
AnchorSideTop.Control = Panel1
|
AnchorSideTop.Control = Panel1
|
||||||
Left = 99
|
Left = 98
|
||||||
Height = 27
|
Height = 31
|
||||||
Top = 7
|
Top = 7
|
||||||
Width = 165
|
Width = 156
|
||||||
Action = actOptimizeColumnsWidthAll
|
Action = actOptimizeColumnsWidthAll
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
@ -318,11 +323,11 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
AnchorSideLeft.Side = asrBottom
|
AnchorSideLeft.Side = asrBottom
|
||||||
AnchorSideTop.Control = CheckBox2
|
AnchorSideTop.Control = CheckBox2
|
||||||
AnchorSideTop.Side = asrBottom
|
AnchorSideTop.Side = asrBottom
|
||||||
Left = 499
|
Left = 489
|
||||||
Height = 22
|
Height = 23
|
||||||
Hint = 'Use filter line'
|
Hint = 'Use filter line'
|
||||||
Top = 35
|
Top = 36
|
||||||
Width = 83
|
Width = 79
|
||||||
BorderSpacing.Left = 6
|
BorderSpacing.Left = 6
|
||||||
Caption = 'Use filter'
|
Caption = 'Use filter'
|
||||||
OnChange = CheckBox1Change
|
OnChange = CheckBox1Change
|
||||||
@ -332,9 +337,9 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
AnchorSideLeft.Control = Label1
|
AnchorSideLeft.Control = Label1
|
||||||
AnchorSideTop.Control = Label1
|
AnchorSideTop.Control = Label1
|
||||||
AnchorSideTop.Side = asrBottom
|
AnchorSideTop.Side = asrBottom
|
||||||
Left = 276
|
Left = 266
|
||||||
Height = 25
|
Height = 27
|
||||||
Top = 28
|
Top = 32
|
||||||
Width = 217
|
Width = 217
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
ItemHeight = 0
|
ItemHeight = 0
|
||||||
@ -352,11 +357,11 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
AnchorSideLeft.Control = ComboBox1
|
AnchorSideLeft.Control = ComboBox1
|
||||||
AnchorSideLeft.Side = asrBottom
|
AnchorSideLeft.Side = asrBottom
|
||||||
AnchorSideTop.Control = Panel1
|
AnchorSideTop.Control = Panel1
|
||||||
Left = 499
|
Left = 489
|
||||||
Height = 22
|
Height = 23
|
||||||
Hint = 'Auto fill column width'
|
Hint = 'Auto fill column width'
|
||||||
Top = 7
|
Top = 7
|
||||||
Width = 133
|
Width = 125
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'Auto fill columns'
|
Caption = 'Auto fill columns'
|
||||||
OnChange = CheckBox2Change
|
OnChange = CheckBox2Change
|
||||||
@ -366,10 +371,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
AnchorSideLeft.Control = CheckBox2
|
AnchorSideLeft.Control = CheckBox2
|
||||||
AnchorSideLeft.Side = asrBottom
|
AnchorSideLeft.Side = asrBottom
|
||||||
AnchorSideTop.Control = Panel1
|
AnchorSideTop.Control = Panel1
|
||||||
Left = 638
|
Left = 620
|
||||||
Height = 22
|
Height = 23
|
||||||
Top = 7
|
Top = 7
|
||||||
Width = 120
|
Width = 115
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'Show indicator'
|
Caption = 'Show indicator'
|
||||||
Checked = True
|
Checked = True
|
||||||
@ -382,10 +387,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
AnchorSideLeft.Side = asrBottom
|
AnchorSideLeft.Side = asrBottom
|
||||||
AnchorSideTop.Control = CheckBox3
|
AnchorSideTop.Control = CheckBox3
|
||||||
AnchorSideTop.Side = asrBottom
|
AnchorSideTop.Side = asrBottom
|
||||||
Left = 638
|
Left = 620
|
||||||
Height = 22
|
Height = 23
|
||||||
Top = 35
|
Top = 36
|
||||||
Width = 115
|
Width = 110
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
Caption = 'Show headers'
|
Caption = 'Show headers'
|
||||||
Checked = True
|
Checked = True
|
||||||
@ -397,8 +402,8 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
AnchorSideLeft.Control = CheckBox3
|
AnchorSideLeft.Control = CheckBox3
|
||||||
AnchorSideLeft.Side = asrBottom
|
AnchorSideLeft.Side = asrBottom
|
||||||
AnchorSideTop.Control = Panel1
|
AnchorSideTop.Control = Panel1
|
||||||
Left = 764
|
Left = 741
|
||||||
Height = 22
|
Height = 23
|
||||||
Top = 7
|
Top = 7
|
||||||
Width = 93
|
Width = 93
|
||||||
BorderSpacing.Around = 6
|
BorderSpacing.Around = 6
|
||||||
@ -543,7 +548,7 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
Size = 15
|
Size = 15
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object Datasource1: TDatasource
|
object Datasource1: TDataSource
|
||||||
DataSet = RxMemoryData1
|
DataSet = RxMemoryData1
|
||||||
left = 120
|
left = 120
|
||||||
top = 264
|
top = 264
|
||||||
@ -607,7 +612,7 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
OnExecute = hlpAboutExecute
|
OnExecute = hlpAboutExecute
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object Datasource2: TDatasource
|
object Datasource2: TDataSource
|
||||||
DataSet = RxMemoryData2
|
DataSet = RxMemoryData2
|
||||||
left = 288
|
left = 288
|
||||||
top = 368
|
top = 368
|
||||||
|
@ -225,6 +225,10 @@ msgstr "Tomar estructura..."
|
|||||||
msgid "Copy only metadata"
|
msgid "Copy only metadata"
|
||||||
msgstr "Copiar solo metadata"
|
msgstr "Copiar solo metadata"
|
||||||
|
|
||||||
|
#: rxdconst.srxdbgridcopycellvalue
|
||||||
|
msgid "Copy cell value"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: rxdconst.srxdbgridemptifilter
|
#: rxdconst.srxdbgridemptifilter
|
||||||
msgid "(Empty)"
|
msgid "(Empty)"
|
||||||
msgstr "(Todos)"
|
msgstr "(Todos)"
|
||||||
|
@ -225,6 +225,10 @@ msgstr ""
|
|||||||
msgid "Copy only metadata"
|
msgid "Copy only metadata"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: rxdconst.srxdbgridcopycellvalue
|
||||||
|
msgid "Copy cell value"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: rxdconst.srxdbgridemptifilter
|
#: rxdconst.srxdbgridemptifilter
|
||||||
msgid "(Empty)"
|
msgid "(Empty)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -225,6 +225,10 @@ msgstr "Обзор структуры..."
|
|||||||
msgid "Copy only metadata"
|
msgid "Copy only metadata"
|
||||||
msgstr "Копировать только метаданные..."
|
msgstr "Копировать только метаданные..."
|
||||||
|
|
||||||
|
#: rxdconst.srxdbgridcopycellvalue
|
||||||
|
msgid "Copy cell value"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: rxdconst.srxdbgridemptifilter
|
#: rxdconst.srxdbgridemptifilter
|
||||||
msgid "(Empty)"
|
msgid "(Empty)"
|
||||||
msgstr "(Нет)"
|
msgstr "(Нет)"
|
||||||
|
@ -234,6 +234,10 @@ msgstr "Огляд структури ..."
|
|||||||
msgid "Copy only metadata"
|
msgid "Copy only metadata"
|
||||||
msgstr "Копіювати тільки метадані ..."
|
msgstr "Копіювати тільки метадані ..."
|
||||||
|
|
||||||
|
#: rxdconst.srxdbgridcopycellvalue
|
||||||
|
msgid "Copy cell value"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: rxdconst.srxdbgridemptifilter
|
#: rxdconst.srxdbgridemptifilter
|
||||||
msgid "(Empty)"
|
msgid "(Empty)"
|
||||||
msgstr "(Немає)"
|
msgstr "(Немає)"
|
||||||
|
@ -107,7 +107,7 @@ type
|
|||||||
TRxDBGridCommand = (rxgcNone, rxgcShowFindDlg, rxgcShowColumnsDlg,
|
TRxDBGridCommand = (rxgcNone, rxgcShowFindDlg, rxgcShowColumnsDlg,
|
||||||
rxgcShowFilterDlg, rxgcShowSortDlg, rxgcShowQuickFilter,
|
rxgcShowFilterDlg, rxgcShowSortDlg, rxgcShowQuickFilter,
|
||||||
rxgcHideQuickFilter, rxgcSelectAll, rxgcDeSelectAll, rxgcInvertSelection,
|
rxgcHideQuickFilter, rxgcSelectAll, rxgcDeSelectAll, rxgcInvertSelection,
|
||||||
rxgcOptimizeColumnsWidth
|
rxgcOptimizeColumnsWidth, rxgcCopyCellValue
|
||||||
|
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -649,6 +649,7 @@ type
|
|||||||
procedure OnSortBy(Sender: TObject);
|
procedure OnSortBy(Sender: TObject);
|
||||||
procedure OnChooseVisibleFields(Sender: TObject);
|
procedure OnChooseVisibleFields(Sender: TObject);
|
||||||
procedure OnSelectAllRows(Sender: TObject);
|
procedure OnSelectAllRows(Sender: TObject);
|
||||||
|
procedure OnCopyCellValue(Sender: TObject);
|
||||||
procedure Loaded; override;
|
procedure Loaded; override;
|
||||||
procedure UpdateFooterRowOnUpdateActive;
|
procedure UpdateFooterRowOnUpdateActive;
|
||||||
|
|
||||||
@ -820,10 +821,10 @@ procedure RegisterRxDBGridSortEngine(RxDBGridSortEngineClass: TRxDBGridSortEngin
|
|||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses Math, rxdconst, rxstrutils, rxdbgrid_findunit, rxdbgrid_columsunit,
|
uses Math, rxdconst, rxstrutils, rxdbgrid_findunit, rxdbgrid_columsunit,
|
||||||
rxlookup, tooledit, LCLProc, rxfilterby, rxsortby, variants;
|
rxlookup, tooledit, LCLProc, Clipbrd, rxfilterby, rxsortby, variants;
|
||||||
|
|
||||||
const
|
const
|
||||||
EditorCommandStrs: array[0..10] of TIdentMapEntry =
|
EditorCommandStrs: array[rxgcNone .. High(TRxDBGridCommand)] of TIdentMapEntry =
|
||||||
(
|
(
|
||||||
(Value: Ord(rxgcNone); Name: 'rxcgNone'),
|
(Value: Ord(rxgcNone); Name: 'rxcgNone'),
|
||||||
(Value: Ord(rxgcShowFindDlg); Name: 'rxgcShowFindDlg'),
|
(Value: Ord(rxgcShowFindDlg); Name: 'rxgcShowFindDlg'),
|
||||||
@ -835,7 +836,8 @@ const
|
|||||||
(Value: Ord(rxgcSelectAll); Name: 'rxgcSelectAll'),
|
(Value: Ord(rxgcSelectAll); Name: 'rxgcSelectAll'),
|
||||||
(Value: Ord(rxgcDeSelectAll); Name: 'rxgcDeSelectAll'),
|
(Value: Ord(rxgcDeSelectAll); Name: 'rxgcDeSelectAll'),
|
||||||
(Value: Ord(rxgcInvertSelection); Name: 'rxgcInvertSelection'),
|
(Value: Ord(rxgcInvertSelection); Name: 'rxgcInvertSelection'),
|
||||||
(Value: Ord(rxgcOptimizeColumnsWidth); Name: 'rxgcOptimizeColumnsWidth')
|
(Value: Ord(rxgcOptimizeColumnsWidth); Name: 'rxgcOptimizeColumnsWidth'),
|
||||||
|
(Value: Ord(rxgcCopyCellValue); Name: 'rxgcCopyCellValue')
|
||||||
);
|
);
|
||||||
|
|
||||||
var
|
var
|
||||||
@ -1700,6 +1702,7 @@ begin
|
|||||||
CreateMenuItem('C', sRxDBGridSortByColumns, @OnSortBy);
|
CreateMenuItem('C', sRxDBGridSortByColumns, @OnSortBy);
|
||||||
CreateMenuItem('W', sRxDBGridSelectColumns, @OnChooseVisibleFields);
|
CreateMenuItem('W', sRxDBGridSelectColumns, @OnChooseVisibleFields);
|
||||||
CreateMenuItem('A', sRxDBGridSelectAllRows, @OnSelectAllRows);
|
CreateMenuItem('A', sRxDBGridSelectAllRows, @OnSelectAllRows);
|
||||||
|
CreateMenuItem(#0, sRxDBGridCopyCellValue, @OnCopyCellValue);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{$IFDEF RxDBGridDepricatedProps}
|
{$IFDEF RxDBGridDepricatedProps}
|
||||||
@ -3560,6 +3563,7 @@ begin
|
|||||||
rxgcDeSelectAll: DeSelectAllRows;
|
rxgcDeSelectAll: DeSelectAllRows;
|
||||||
rxgcInvertSelection:InvertSelection;
|
rxgcInvertSelection:InvertSelection;
|
||||||
rxgcOptimizeColumnsWidth:OptimizeColumnsWidthAll;
|
rxgcOptimizeColumnsWidth:OptimizeColumnsWidthAll;
|
||||||
|
rxgcCopyCellValue:OnCopyCellValue(Self);
|
||||||
else
|
else
|
||||||
exit;
|
exit;
|
||||||
end;
|
end;
|
||||||
@ -4297,6 +4301,19 @@ begin
|
|||||||
SelectAllRows;
|
SelectAllRows;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TRxDBGrid.OnCopyCellValue(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if DatalinkActive and Assigned(SelectedField) then
|
||||||
|
begin
|
||||||
|
try
|
||||||
|
Clipboard.Open;
|
||||||
|
Clipboard.AsText:=SelectedField.DisplayText;
|
||||||
|
finally
|
||||||
|
Clipboard.Close;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TRxDBGrid.Loaded;
|
procedure TRxDBGrid.Loaded;
|
||||||
begin
|
begin
|
||||||
inherited Loaded;
|
inherited Loaded;
|
||||||
@ -5350,23 +5367,16 @@ begin
|
|||||||
inherited SetItem(Index, AValue);
|
inherited SetItem(Index, AValue);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{function TRxDBGridKeyStrokes.GetOwner: TPersistent;
|
|
||||||
begin
|
|
||||||
Result:=FOwn;
|
|
||||||
end;
|
|
||||||
}
|
|
||||||
procedure TRxDBGridKeyStrokes.Update(Item: TCollectionItem);
|
procedure TRxDBGridKeyStrokes.Update(Item: TCollectionItem);
|
||||||
begin
|
begin
|
||||||
inherited Update(Item);
|
inherited Update(Item);
|
||||||
if (UpdateCount = 0) and Assigned(Owner) and
|
if (UpdateCount = 0) and Assigned(Owner) and Assigned(TRxDBGrid(Owner).FKeyStrokes) then
|
||||||
Assigned(TRxDBGrid(Owner).FKeyStrokes) then
|
|
||||||
TRxDBGrid(Owner).UpdateJMenuKeys;
|
TRxDBGrid(Owner).UpdateJMenuKeys;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
constructor TRxDBGridKeyStrokes.Create(AOwner: TPersistent);
|
constructor TRxDBGridKeyStrokes.Create(AOwner: TPersistent);
|
||||||
begin
|
begin
|
||||||
//FOwn := AOwner;
|
|
||||||
inherited Create(AOwner, TRxDBGridKeyStroke);
|
inherited Create(AOwner, TRxDBGridKeyStroke);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -5414,6 +5424,7 @@ begin
|
|||||||
AddE(rxgcDeSelectAll, Menus.ShortCut(Ord('-'), [ssCtrl]));
|
AddE(rxgcDeSelectAll, Menus.ShortCut(Ord('-'), [ssCtrl]));
|
||||||
AddE(rxgcInvertSelection, Menus.ShortCut(Ord('*'), [ssCtrl]));
|
AddE(rxgcInvertSelection, Menus.ShortCut(Ord('*'), [ssCtrl]));
|
||||||
AddE(rxgcOptimizeColumnsWidth, Menus.ShortCut(Ord('+'), [ssCtrl]));
|
AddE(rxgcOptimizeColumnsWidth, Menus.ShortCut(Ord('+'), [ssCtrl]));
|
||||||
|
AddE(rxgcCopyCellValue, Menus.ShortCut(Ord('C'), [ssCtrl]));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TRxDBGridKeyStrokes.FindRxCommand(AKey: word;
|
function TRxDBGridKeyStrokes.FindRxCommand(AKey: word;
|
||||||
|
@ -111,6 +111,7 @@ resourcestring
|
|||||||
sRxDBGridSelectColumns = 'Select visible collumns';// Ctrl+W';'Seleccionar Columnas Ctrl+W';
|
sRxDBGridSelectColumns = 'Select visible collumns';// Ctrl+W';'Seleccionar Columnas Ctrl+W';
|
||||||
sRxDBGridEmptiFilter = '(Empty)';
|
sRxDBGridEmptiFilter = '(Empty)';
|
||||||
sRxDBGridSelectAllRows = 'Select all rows';// Ctrl+W';'Seleccionar Columnas Ctrl+W';
|
sRxDBGridSelectAllRows = 'Select all rows';// Ctrl+W';'Seleccionar Columnas Ctrl+W';
|
||||||
|
sRxDBGridCopyCellValue = 'Copy cell value';// Ctrl+W';'Seleccionar Columnas Ctrl+W';
|
||||||
|
|
||||||
//RxDBGrid filter form
|
//RxDBGrid filter form
|
||||||
sRxFilterFormSelectExp = 'Enter filter expression for data in table:';
|
sRxFilterFormSelectExp = 'Enter filter expression for data in table:';
|
||||||
|
Reference in New Issue
Block a user