rx corx component: updated to version 1.1.4.93
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@246 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
parent
a670b3cc11
commit
fdc71696d7
@ -47,7 +47,7 @@
|
|||||||
<CursorPos X="3" Y="11"/>
|
<CursorPos X="3" Y="11"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="2"/>
|
<EditorIndex Value="2"/>
|
||||||
<UsageCount Value="21"/>
|
<UsageCount Value="22"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit0>
|
</Unit0>
|
||||||
<Unit1>
|
<Unit1>
|
||||||
@ -56,10 +56,10 @@
|
|||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<ResourceFilename Value="rxdbgridmainunit.lrs"/>
|
<ResourceFilename Value="rxdbgridmainunit.lrs"/>
|
||||||
<UnitName Value="RxDBGridMainUnit"/>
|
<UnitName Value="RxDBGridMainUnit"/>
|
||||||
<CursorPos X="20" Y="34"/>
|
<CursorPos X="78" Y="70"/>
|
||||||
<TopLine Value="14"/>
|
<TopLine Value="37"/>
|
||||||
<EditorIndex Value="0"/>
|
<EditorIndex Value="0"/>
|
||||||
<UsageCount Value="21"/>
|
<UsageCount Value="22"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit1>
|
</Unit1>
|
||||||
<Unit2>
|
<Unit2>
|
||||||
@ -88,7 +88,7 @@
|
|||||||
<CursorPos X="13" Y="626"/>
|
<CursorPos X="13" Y="626"/>
|
||||||
<TopLine Value="608"/>
|
<TopLine Value="608"/>
|
||||||
<EditorIndex Value="3"/>
|
<EditorIndex Value="3"/>
|
||||||
<UsageCount Value="11"/>
|
<UsageCount Value="12"/>
|
||||||
<Bookmarks Count="1">
|
<Bookmarks Count="1">
|
||||||
<Item0 X="3" Y="1444" ID="1"/>
|
<Item0 X="3" Y="1444" ID="1"/>
|
||||||
</Bookmarks>
|
</Bookmarks>
|
||||||
@ -114,127 +114,51 @@
|
|||||||
<CursorPos X="14" Y="455"/>
|
<CursorPos X="14" Y="455"/>
|
||||||
<TopLine Value="437"/>
|
<TopLine Value="437"/>
|
||||||
<EditorIndex Value="1"/>
|
<EditorIndex Value="1"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="11"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit8>
|
</Unit8>
|
||||||
</Units>
|
</Units>
|
||||||
<JumpHistory Count="29" HistoryIndex="28">
|
<JumpHistory Count="10" HistoryIndex="9">
|
||||||
<Position1>
|
<Position1>
|
||||||
<Filename Value="RxDBGridDemo.lpr"/>
|
<Filename Value="rxdbgridmainunit.pas"/>
|
||||||
<Caret Line="5" Column="37" TopLine="1"/>
|
<Caret Line="34" Column="20" TopLine="14"/>
|
||||||
</Position1>
|
</Position1>
|
||||||
<Position2>
|
<Position2>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="rxdbgridmainunit.pas"/>
|
||||||
<Caret Line="30" Column="40" TopLine="9"/>
|
<Caret Line="62" Column="5" TopLine="19"/>
|
||||||
</Position2>
|
</Position2>
|
||||||
<Position3>
|
<Position3>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="rxdbgridmainunit.pas"/>
|
||||||
<Caret Line="29" Column="7" TopLine="9"/>
|
<Caret Line="36" Column="49" TopLine="35"/>
|
||||||
</Position3>
|
</Position3>
|
||||||
<Position4>
|
<Position4>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="rxdbgridmainunit.pas"/>
|
||||||
<Caret Line="17" Column="20" TopLine="9"/>
|
<Caret Line="35" Column="48" TopLine="34"/>
|
||||||
</Position4>
|
</Position4>
|
||||||
<Position5>
|
<Position5>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="rxdbgridmainunit.pas"/>
|
||||||
<Caret Line="22" Column="5" TopLine="9"/>
|
<Caret Line="39" Column="9" TopLine="37"/>
|
||||||
</Position5>
|
</Position5>
|
||||||
<Position6>
|
<Position6>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="rxdbgridmainunit.pas"/>
|
||||||
<Caret Line="48" Column="1" TopLine="19"/>
|
<Caret Line="79" Column="10" TopLine="55"/>
|
||||||
</Position6>
|
</Position6>
|
||||||
<Position7>
|
<Position7>
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
<Filename Value="rxdbgridmainunit.pas"/>
|
||||||
<Caret Line="23" Column="45" TopLine="16"/>
|
<Caret Line="53" Column="30" TopLine="49"/>
|
||||||
</Position7>
|
</Position7>
|
||||||
<Position8>
|
<Position8>
|
||||||
<Filename Value="..\..\rxdbgrid.pas"/>
|
<Filename Value="rxdbgridmainunit.pas"/>
|
||||||
<Caret Line="945" Column="14" TopLine="917"/>
|
<Caret Line="32" Column="37" TopLine="31"/>
|
||||||
</Position8>
|
</Position8>
|
||||||
<Position9>
|
<Position9>
|
||||||
<Filename Value="..\..\rxdbgrid.pas"/>
|
<Filename Value="rxdbgridmainunit.pas"/>
|
||||||
<Caret Line="625" Column="14" TopLine="612"/>
|
<Caret Line="33" Column="38" TopLine="31"/>
|
||||||
</Position9>
|
</Position9>
|
||||||
<Position10>
|
<Position10>
|
||||||
<Filename Value="..\..\rxdbgrid.pas"/>
|
<Filename Value="rxdbgridmainunit.pas"/>
|
||||||
<Caret Line="326" Column="23" TopLine="308"/>
|
<Caret Line="34" Column="38" TopLine="31"/>
|
||||||
</Position10>
|
</Position10>
|
||||||
<Position11>
|
|
||||||
<Filename Value="..\..\rxdbgrid.pas"/>
|
|
||||||
<Caret Line="326" Column="23" TopLine="308"/>
|
|
||||||
</Position11>
|
|
||||||
<Position12>
|
|
||||||
<Filename Value="..\..\rxdbgrid.pas"/>
|
|
||||||
<Caret Line="626" Column="53" TopLine="607"/>
|
|
||||||
</Position12>
|
|
||||||
<Position13>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="41" Column="5" TopLine="27"/>
|
|
||||||
</Position13>
|
|
||||||
<Position14>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="20" Column="28" TopLine="9"/>
|
|
||||||
</Position14>
|
|
||||||
<Position15>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="27" Column="47" TopLine="13"/>
|
|
||||||
</Position15>
|
|
||||||
<Position16>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="53" Column="21" TopLine="35"/>
|
|
||||||
</Position16>
|
|
||||||
<Position17>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="45" Column="44" TopLine="35"/>
|
|
||||||
</Position17>
|
|
||||||
<Position18>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="16" Column="30" TopLine="9"/>
|
|
||||||
</Position18>
|
|
||||||
<Position19>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="27" Column="5" TopLine="26"/>
|
|
||||||
</Position19>
|
|
||||||
<Position20>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="49" Column="4" TopLine="38"/>
|
|
||||||
</Position20>
|
|
||||||
<Position21>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="27" Column="1" TopLine="9"/>
|
|
||||||
</Position21>
|
|
||||||
<Position22>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="62" Column="1" TopLine="32"/>
|
|
||||||
</Position22>
|
|
||||||
<Position23>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="28" Column="48" TopLine="28"/>
|
|
||||||
</Position23>
|
|
||||||
<Position24>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="57" Column="1" TopLine="39"/>
|
|
||||||
</Position24>
|
|
||||||
<Position25>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="30" Column="60" TopLine="29"/>
|
|
||||||
</Position25>
|
|
||||||
<Position26>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="56" Column="1" TopLine="41"/>
|
|
||||||
</Position26>
|
|
||||||
<Position27>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="32" Column="1" TopLine="14"/>
|
|
||||||
</Position27>
|
|
||||||
<Position28>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="24" Column="26" TopLine="14"/>
|
|
||||||
</Position28>
|
|
||||||
<Position29>
|
|
||||||
<Filename Value="rxdbgridmainunit.pas"/>
|
|
||||||
<Caret Line="25" Column="26" TopLine="14"/>
|
|
||||||
</Position29>
|
|
||||||
</JumpHistory>
|
</JumpHistory>
|
||||||
</ProjectOptions>
|
</ProjectOptions>
|
||||||
<CompilerOptions>
|
<CompilerOptions>
|
||||||
@ -258,7 +182,7 @@
|
|||||||
</Other>
|
</Other>
|
||||||
</CompilerOptions>
|
</CompilerOptions>
|
||||||
<Debugging>
|
<Debugging>
|
||||||
<BreakPoints Count="2">
|
<BreakPoints Count="3">
|
||||||
<Item1>
|
<Item1>
|
||||||
<Source Value="..\..\rxlookup.pas"/>
|
<Source Value="..\..\rxlookup.pas"/>
|
||||||
<Line Value="1013"/>
|
<Line Value="1013"/>
|
||||||
@ -267,6 +191,10 @@
|
|||||||
<Source Value="..\..\rxpopupunit.pas"/>
|
<Source Value="..\..\rxpopupunit.pas"/>
|
||||||
<Line Value="267"/>
|
<Line Value="267"/>
|
||||||
</Item2>
|
</Item2>
|
||||||
|
<Item3>
|
||||||
|
<Source Value="rxdbgridmainunit.pas"/>
|
||||||
|
<Line Value="51"/>
|
||||||
|
</Item3>
|
||||||
</BreakPoints>
|
</BreakPoints>
|
||||||
<Watches Count="1">
|
<Watches Count="1">
|
||||||
<Item1>
|
<Item1>
|
||||||
|
@ -2,18 +2,18 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
Left = 353
|
Left = 353
|
||||||
Height = 582
|
Height = 582
|
||||||
Top = 161
|
Top = 161
|
||||||
Width = 652
|
Width = 827
|
||||||
HorzScrollBar.Page = 651
|
HorzScrollBar.Page = 826
|
||||||
VertScrollBar.Page = 581
|
VertScrollBar.Page = 581
|
||||||
ActiveControl = RxDBGrid1
|
ActiveControl = RxDBGrid1
|
||||||
Caption = 'RxDBGrid Demo (ver 2) ...'
|
Caption = 'RxDBGrid Demo (ver 2) ...'
|
||||||
ClientHeight = 582
|
ClientHeight = 582
|
||||||
ClientWidth = 652
|
ClientWidth = 827
|
||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
object RxDBGrid1: TRxDBGrid
|
object RxDBGrid1: TRxDBGrid
|
||||||
Height = 532
|
Height = 532
|
||||||
Top = 50
|
Top = 50
|
||||||
Width = 652
|
Width = 827
|
||||||
Columns = <
|
Columns = <
|
||||||
item
|
item
|
||||||
Title.Alignment = taCenter
|
Title.Alignment = taCenter
|
||||||
@ -22,6 +22,7 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
Footer.Alignment = taRightJustify
|
Footer.Alignment = taRightJustify
|
||||||
Footer.DisplayFormat = 'Count: %d'
|
Footer.DisplayFormat = 'Count: %d'
|
||||||
Footer.ValueType = fvtCount
|
Footer.ValueType = fvtCount
|
||||||
|
Filter.Color = clLime
|
||||||
Filter.ItemIndex = -1
|
Filter.ItemIndex = -1
|
||||||
end
|
end
|
||||||
item
|
item
|
||||||
@ -29,6 +30,14 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
Title.Caption = 'Software Name'
|
Title.Caption = 'Software Name'
|
||||||
Width = 450
|
Width = 450
|
||||||
FieldName = 'NAME'
|
FieldName = 'NAME'
|
||||||
|
Filter.Color = clLime
|
||||||
|
Filter.ItemIndex = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Width = 150
|
||||||
|
FieldName = 'Developer'
|
||||||
|
Filter.Color = clLime
|
||||||
Filter.ItemIndex = -1
|
Filter.ItemIndex = -1
|
||||||
end
|
end
|
||||||
item
|
item
|
||||||
@ -41,11 +50,13 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
Footer.DisplayFormat = '#,##0.00'
|
Footer.DisplayFormat = '#,##0.00'
|
||||||
Footer.FieldName = 'PRICE'
|
Footer.FieldName = 'PRICE'
|
||||||
Footer.ValueType = fvtSum
|
Footer.ValueType = fvtSum
|
||||||
|
Filter.Color = clLime
|
||||||
Filter.ItemIndex = -1
|
Filter.ItemIndex = -1
|
||||||
end>
|
end>
|
||||||
OptionsRx = [rdgFooterRows]
|
OptionsRx = [rdgFooterRows]
|
||||||
FooterColor = clYellow
|
FooterColor = clYellow
|
||||||
FooterRowCount = 1
|
FooterRowCount = 1
|
||||||
|
OnFiltred = RxDBGrid1Filtred
|
||||||
Align = alClient
|
Align = alClient
|
||||||
FocusColor = clRed
|
FocusColor = clRed
|
||||||
SelectedColor = clHighlight
|
SelectedColor = clHighlight
|
||||||
@ -61,10 +72,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
end
|
end
|
||||||
object Panel1: TPanel
|
object Panel1: TPanel
|
||||||
Height = 50
|
Height = 50
|
||||||
Width = 652
|
Width = 827
|
||||||
Align = alTop
|
Align = alTop
|
||||||
ClientHeight = 50
|
ClientHeight = 50
|
||||||
ClientWidth = 652
|
ClientWidth = 827
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
object Button1: TButton
|
object Button1: TButton
|
||||||
Left = 8
|
Left = 8
|
||||||
@ -84,9 +95,18 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
BorderSpacing.InnerBorder = 4
|
BorderSpacing.InnerBorder = 4
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
end
|
end
|
||||||
|
object CheckBox1: TCheckBox
|
||||||
|
Left = 241
|
||||||
|
Height = 13
|
||||||
|
Top = 8
|
||||||
|
Width = 61
|
||||||
|
Caption = 'Use filter'
|
||||||
|
OnChange = CheckBox1Change
|
||||||
|
TabOrder = 2
|
||||||
|
UseOnChange = True
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object RxMemoryData1: TRxMemoryData
|
object RxMemoryData1: TRxMemoryData
|
||||||
Active = True
|
|
||||||
FieldDefs = <
|
FieldDefs = <
|
||||||
item
|
item
|
||||||
Name = 'ID'
|
Name = 'ID'
|
||||||
@ -105,9 +125,45 @@ object RxDBGridMainForm: TRxDBGridMainForm
|
|||||||
DataType = ftFloat
|
DataType = ftFloat
|
||||||
Precision = 2
|
Precision = 2
|
||||||
Size = 12
|
Size = 12
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Developer'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 150
|
||||||
end>
|
end>
|
||||||
left = 152
|
OnFilterRecordEx = RxMemoryData1FilterRecordEx
|
||||||
|
left = 144
|
||||||
top = 264
|
top = 264
|
||||||
|
object RxMemoryData1ID1: TLongintField
|
||||||
|
AlignMent = taRightJustify
|
||||||
|
DisplayWidth = 10
|
||||||
|
FieldName = 'ID'
|
||||||
|
ProviderFlags = [pfInUpdate, pfInWhere]
|
||||||
|
end
|
||||||
|
object RxMemoryData1NAME1: TStringField
|
||||||
|
DisplayWidth = 150
|
||||||
|
FieldName = 'NAME'
|
||||||
|
Index = 1
|
||||||
|
ProviderFlags = [pfInUpdate, pfInWhere]
|
||||||
|
Size = 150
|
||||||
|
end
|
||||||
|
object RxMemoryData1PRICE1: TFloatField
|
||||||
|
AlignMent = taRightJustify
|
||||||
|
DisplayWidth = 10
|
||||||
|
FieldName = 'PRICE'
|
||||||
|
Index = 2
|
||||||
|
ProviderFlags = [pfInUpdate, pfInWhere]
|
||||||
|
DisplayFormat = '#,##0.00'
|
||||||
|
Precision = 2
|
||||||
|
end
|
||||||
|
object RxMemoryData1Developer1: TStringField
|
||||||
|
DisplayWidth = 150
|
||||||
|
FieldName = 'Developer'
|
||||||
|
Index = 3
|
||||||
|
ProviderFlags = [pfInUpdate, pfInWhere]
|
||||||
|
Size = 150
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object Datasource1: TDatasource
|
object Datasource1: TDatasource
|
||||||
DataSet = RxMemoryData1
|
DataSet = RxMemoryData1
|
||||||
|
@ -2,51 +2,68 @@
|
|||||||
|
|
||||||
LazarusResources.Add('TRxDBGridMainForm','FORMDATA',[
|
LazarusResources.Add('TRxDBGridMainForm','FORMDATA',[
|
||||||
'TPF0'#17'TRxDBGridMainForm'#16'RxDBGridMainForm'#4'Left'#3'a'#1#6'Height'#3
|
'TPF0'#17'TRxDBGridMainForm'#16'RxDBGridMainForm'#4'Left'#3'a'#1#6'Height'#3
|
||||||
+'F'#2#3'Top'#3#161#0#5'Width'#3#140#2#18'HorzScrollBar.Page'#3#139#2#18'Vert'
|
+'F'#2#3'Top'#3#161#0#5'Width'#3';'#3#18'HorzScrollBar.Page'#3':'#3#18'VertSc'
|
||||||
+'ScrollBar.Page'#3'E'#2#13'ActiveControl'#7#9'RxDBGrid1'#7'Caption'#6#26'RxD'
|
+'rollBar.Page'#3'E'#2#13'ActiveControl'#7#9'RxDBGrid1'#7'Caption'#6#26'RxDBG'
|
||||||
+'BGrid Demo (ver 2) ...'#12'ClientHeight'#3'F'#2#11'ClientWidth'#3#140#2#8
|
+'rid Demo (ver 2) ...'#12'ClientHeight'#3'F'#2#11'ClientWidth'#3';'#3#8'OnC'
|
||||||
+'OnCreate'#7#10'FormCreate'#0#9'TRxDBGrid'#9'RxDBGrid1'#6'Height'#3#20#2#3'T'
|
+'reate'#7#10'FormCreate'#0#9'TRxDBGrid'#9'RxDBGrid1'#6'Height'#3#20#2#3'Top'
|
||||||
+'op'#2'2'#5'Width'#3#140#2#7'Columns'#14#1#15'Title.Alignment'#7#8'taCenter'
|
+#2'2'#5'Width'#3';'#3#7'Columns'#14#1#15'Title.Alignment'#7#8'taCenter'#13'T'
|
||||||
+#13'Title.Caption'#6#4'Code'#9'FieldName'#6#2'ID'#16'Footer.Alignment'#7#14
|
+'itle.Caption'#6#4'Code'#9'FieldName'#6#2'ID'#16'Footer.Alignment'#7#14'taRi'
|
||||||
+'taRightJustify'#20'Footer.DisplayFormat'#6#9'Count: %d'#16'Footer.ValueType'
|
+'ghtJustify'#20'Footer.DisplayFormat'#6#9'Count: %d'#16'Footer.ValueType'#7#8
|
||||||
+#7#8'fvtCount'#16'Filter.ItemIndex'#2#255#0#1#15'Title.Alignment'#7#8'taCent'
|
+'fvtCount'#12'Filter.Color'#7#6'clLime'#16'Filter.ItemIndex'#2#255#0#1#15'Ti'
|
||||||
+'er'#13'Title.Caption'#6#13'Software Name'#5'Width'#3#194#1#9'FieldName'#6#4
|
+'tle.Alignment'#7#8'taCenter'#13'Title.Caption'#6#13'Software Name'#5'Width'
|
||||||
+'NAME'#16'Filter.ItemIndex'#2#255#0#1#15'Title.Alignment'#7#8'taCenter'#13'T'
|
+#3#194#1#9'FieldName'#6#4'NAME'#12'Filter.Color'#7#6'clLime'#16'Filter.ItemI'
|
||||||
+'itle.Caption'#6#4'Cost'#5'Width'#2'Z'#9'FieldName'#6#5'PRICE'#13'DisplayFor'
|
+'ndex'#2#255#0#1#15'Title.Alignment'#7#8'taCenter'#5'Width'#3#150#0#9'FieldN'
|
||||||
+'mat'#6#8'#,##0.00'#16'Footer.Alignment'#7#14'taRightJustify'#20'Footer.Disp'
|
+'ame'#6#9'Developer'#12'Filter.Color'#7#6'clLime'#16'Filter.ItemIndex'#2#255
|
||||||
+'layFormat'#6#8'#,##0.00'#16'Footer.FieldName'#6#5'PRICE'#16'Footer.ValueTyp'
|
+#0#1#15'Title.Alignment'#7#8'taCenter'#13'Title.Caption'#6#4'Cost'#5'Width'#2
|
||||||
+'e'#7#6'fvtSum'#16'Filter.ItemIndex'#2#255#0#0#9'OptionsRx'#11#13'rdgFooterR'
|
+'Z'#9'FieldName'#6#5'PRICE'#13'DisplayFormat'#6#8'#,##0.00'#16'Footer.Alignm'
|
||||||
+'ows'#0#11'FooterColor'#7#8'clYellow'#14'FooterRowCount'#2#1#5'Align'#7#8'al'
|
+'ent'#7#14'taRightJustify'#20'Footer.DisplayFormat'#6#8'#,##0.00'#16'Footer.'
|
||||||
+'Client'#10'FocusColor'#7#5'clRed'#13'SelectedColor'#7#11'clHighlight'#10'Da'
|
+'FieldName'#6#5'PRICE'#16'Footer.ValueType'#7#6'fvtSum'#12'Filter.Color'#7#6
|
||||||
+'taSource'#7#11'Datasource1'#10'FixedColor'#7#9'clBtnFace'#7'Options'#11#9'd'
|
+'clLime'#16'Filter.ItemIndex'#2#255#0#0#9'OptionsRx'#11#13'rdgFooterRows'#0
|
||||||
+'gEditing'#8'dgTitles'#11'dgIndicator'#14'dgColumnResize'#12'dgColumnMove'#10
|
+#11'FooterColor'#7#8'clYellow'#14'FooterRowCount'#2#1#9'OnFiltred'#7#16'RxDB'
|
||||||
+'dgColLines'#10'dgRowLines'#6'dgTabs'#21'dgAlwaysShowSelection'#15'dgConfirm'
|
+'Grid1Filtred'#5'Align'#7#8'alClient'#10'FocusColor'#7#5'clRed'#13'SelectedC'
|
||||||
+'Delete'#14'dgCancelOnExit'#13'dgMultiselect'#0#12'OptionsExtra'#11#14'dgeAu'
|
+'olor'#7#11'clHighlight'#10'DataSource'#7#11'Datasource1'#10'FixedColor'#7#9
|
||||||
+'toColumns'#17'dgeCheckboxColumn'#0#11'ParentColor'#8#9'PopupMenu'#7#10'Popu'
|
+'clBtnFace'#7'Options'#11#9'dgEditing'#8'dgTitles'#11'dgIndicator'#14'dgColu'
|
||||||
+'pMenu1'#10'Scrollbars'#7#6'ssBoth'#8'TabOrder'#2#0#7'TabStop'#9#0#0#6'TPane'
|
+'mnResize'#12'dgColumnMove'#10'dgColLines'#10'dgRowLines'#6'dgTabs'#21'dgAlw'
|
||||||
+'l'#6'Panel1'#6'Height'#2'2'#5'Width'#3#140#2#5'Align'#7#5'alTop'#12'ClientH'
|
+'aysShowSelection'#15'dgConfirmDelete'#14'dgCancelOnExit'#13'dgMultiselect'#0
|
||||||
+'eight'#2'2'#11'ClientWidth'#3#140#2#8'TabOrder'#2#1#0#7'TButton'#7'Button1'
|
+#12'OptionsExtra'#11#14'dgeAutoColumns'#17'dgeCheckboxColumn'#0#11'ParentCol'
|
||||||
+#4'Left'#2#8#6'Height'#2#25#3'Top'#2#8#5'Width'#2'K'#6'Action'#7#12'actCalcT'
|
+'or'#8#9'PopupMenu'#7#10'PopupMenu1'#10'Scrollbars'#7#6'ssBoth'#8'TabOrder'#2
|
||||||
+'otal'#25'BorderSpacing.InnerBorder'#2#4#8'TabOrder'#2#0#0#0#7'TButton'#7'Bu'
|
+#0#7'TabStop'#9#0#0#6'TPanel'#6'Panel1'#6'Height'#2'2'#5'Width'#3';'#3#5'Ali'
|
||||||
+'tton2'#4'Left'#2'X'#6'Height'#2#25#3'Top'#2#8#5'Width'#3#136#0#6'Action'#7
|
+'gn'#7#5'alTop'#12'ClientHeight'#2'2'#11'ClientWidth'#3';'#3#8'TabOrder'#2#1
|
||||||
+#26'actOptimizeColumnsWidthAll'#25'BorderSpacing.InnerBorder'#2#4#8'TabOrder'
|
+#0#7'TButton'#7'Button1'#4'Left'#2#8#6'Height'#2#25#3'Top'#2#8#5'Width'#2'K'
|
||||||
+#2#1#0#0#0#13'TRxMemoryData'#13'RxMemoryData1'#6'Active'#9#9'FieldDefs'#14#1
|
+#6'Action'#7#12'actCalcTotal'#25'BorderSpacing.InnerBorder'#2#4#8'TabOrder'#2
|
||||||
+#4'Name'#6#2'ID'#8'DataType'#7#9'ftInteger'#9'Precision'#2#255#4'Size'#2#7#0
|
+#0#0#0#7'TButton'#7'Button2'#4'Left'#2'X'#6'Height'#2#25#3'Top'#2#8#5'Width'
|
||||||
+#1#4'Name'#6#4'NAME'#8'DataType'#7#8'ftString'#9'Precision'#2#255#4'Size'#3
|
+#3#136#0#6'Action'#7#26'actOptimizeColumnsWidthAll'#25'BorderSpacing.InnerBo'
|
||||||
+#150#0#0#1#4'Name'#6#5'PRICE'#8'DataType'#7#7'ftFloat'#9'Precision'#2#2#4'Si'
|
+'rder'#2#4#8'TabOrder'#2#1#0#0#9'TCheckBox'#9'CheckBox1'#4'Left'#3#241#0#6'H'
|
||||||
+'ze'#2#12#0#0#4'left'#3#152#0#3'top'#3#8#1#0#0#11'TDatasource'#11'Datasource'
|
+'eight'#2#13#3'Top'#2#8#5'Width'#2'='#7'Caption'#6#10'Use filter'#8'OnChange'
|
||||||
+'1'#7'DataSet'#7#13'RxMemoryData1'#4'left'#2'x'#3'top'#3#8#1#0#0#10'TPopupMe'
|
+#7#15'CheckBox1Change'#8'TabOrder'#2#2#11'UseOnChange'#9#0#0#0#13'TRxMemoryD'
|
||||||
+'nu'#10'PopupMenu1'#4'left'#3#152#0#3'top'#3#197#0#0#9'TMenuItem'#9'MenuItem'
|
+'ata'#13'RxMemoryData1'#9'FieldDefs'#14#1#4'Name'#6#2'ID'#8'DataType'#7#9'ft'
|
||||||
+'1'#6'Action'#7#20'actOptimizeWidthCol1'#7'OnClick'#7#27'actOptimizeWidthCol'
|
+'Integer'#9'Precision'#2#255#4'Size'#2#7#0#1#4'Name'#6#4'NAME'#8'DataType'#7
|
||||||
+'1Execute'#0#0#9'TMenuItem'#9'MenuItem2'#7'Caption'#6#1'-'#0#0#9'TMenuItem'#9
|
+#8'ftString'#9'Precision'#2#255#4'Size'#3#150#0#0#1#4'Name'#6#5'PRICE'#8'Dat'
|
||||||
+'MenuItem4'#6'Action'#7#12'actCalcTotal'#7'OnClick'#7#19'actCalcTotalExecute'
|
+'aType'#7#7'ftFloat'#9'Precision'#2#2#4'Size'#2#12#0#1#4'Name'#6#9'Developer'
|
||||||
+#0#0#9'TMenuItem'#9'MenuItem3'#6'Action'#7#26'actOptimizeColumnsWidthAll'#7
|
+#8'DataType'#7#8'ftString'#9'Precision'#2#255#4'Size'#3#150#0#0#0#16'OnFilte'
|
||||||
+'OnClick'#7'!actOptimizeColumnsWidthAllExecute'#0#0#0#11'TActionList'#11'Act'
|
+'rRecordEx'#7#27'RxMemoryData1FilterRecordEx'#4'left'#3#144#0#3'top'#3#8#1#0
|
||||||
+'ionList1'#4'left'#3#206#0#3'top'#3#197#0#0#7'TAction'#12'actCalcTotal'#7'Ca'
|
+#13'TLongintField'#16'RxMemoryData1ID1'#9'AlignMent'#7#14'taRightJustify'#12
|
||||||
+'ption'#6#13'Calc total...'#18'DisableIfNoHandler'#9#9'OnExecute'#7#19'actCa'
|
+'DisplayWidth'#2#10#9'FieldName'#6#2'ID'#13'ProviderFlags'#11#10'pfInUpdate'
|
||||||
+'lcTotalExecute'#0#0#7'TAction'#26'actOptimizeColumnsWidthAll'#7'Caption'#6
|
+#9'pfInWhere'#0#0#0#12'TStringField'#18'RxMemoryData1NAME1'#12'DisplayWidth'
|
||||||
+#25'Optimize width for all...'#18'DisableIfNoHandler'#9#9'OnExecute'#7'!actO'
|
+#3#150#0#9'FieldName'#6#4'NAME'#5'Index'#2#1#13'ProviderFlags'#11#10'pfInUpd'
|
||||||
+'ptimizeColumnsWidthAllExecute'#0#0#7'TAction'#20'actOptimizeWidthCol1'#7'Ca'
|
+'ate'#9'pfInWhere'#0#4'Size'#3#150#0#0#0#11'TFloatField'#19'RxMemoryData1PRI'
|
||||||
+'ption'#6#17'Optimize width...'#18'DisableIfNoHandler'#9#9'OnExecute'#7#27'a'
|
+'CE1'#9'AlignMent'#7#14'taRightJustify'#12'DisplayWidth'#2#10#9'FieldName'#6
|
||||||
+'ctOptimizeWidthCol1Execute'#0#0#0#0
|
+#5'PRICE'#5'Index'#2#2#13'ProviderFlags'#11#10'pfInUpdate'#9'pfInWhere'#0#13
|
||||||
|
+'DisplayFormat'#6#8'#,##0.00'#9'Precision'#2#2#0#0#12'TStringField'#23'RxMem'
|
||||||
|
+'oryData1Developer1'#12'DisplayWidth'#3#150#0#9'FieldName'#6#9'Developer'#5
|
||||||
|
+'Index'#2#3#13'ProviderFlags'#11#10'pfInUpdate'#9'pfInWhere'#0#4'Size'#3#150
|
||||||
|
+#0#0#0#0#11'TDatasource'#11'Datasource1'#7'DataSet'#7#13'RxMemoryData1'#4'le'
|
||||||
|
+'ft'#2'x'#3'top'#3#8#1#0#0#10'TPopupMenu'#10'PopupMenu1'#4'left'#3#152#0#3't'
|
||||||
|
+'op'#3#197#0#0#9'TMenuItem'#9'MenuItem1'#6'Action'#7#20'actOptimizeWidthCol1'
|
||||||
|
+#7'OnClick'#7#27'actOptimizeWidthCol1Execute'#0#0#9'TMenuItem'#9'MenuItem2'#7
|
||||||
|
+'Caption'#6#1'-'#0#0#9'TMenuItem'#9'MenuItem4'#6'Action'#7#12'actCalcTotal'#7
|
||||||
|
+'OnClick'#7#19'actCalcTotalExecute'#0#0#9'TMenuItem'#9'MenuItem3'#6'Action'#7
|
||||||
|
+#26'actOptimizeColumnsWidthAll'#7'OnClick'#7'!actOptimizeColumnsWidthAllExec'
|
||||||
|
+'ute'#0#0#0#11'TActionList'#11'ActionList1'#4'left'#3#206#0#3'top'#3#197#0#0
|
||||||
|
+#7'TAction'#12'actCalcTotal'#7'Caption'#6#13'Calc total...'#18'DisableIfNoHa'
|
||||||
|
+'ndler'#9#9'OnExecute'#7#19'actCalcTotalExecute'#0#0#7'TAction'#26'actOptimi'
|
||||||
|
+'zeColumnsWidthAll'#7'Caption'#6#25'Optimize width for all...'#18'DisableIfN'
|
||||||
|
+'oHandler'#9#9'OnExecute'#7'!actOptimizeColumnsWidthAllExecute'#0#0#7'TActio'
|
||||||
|
+'n'#20'actOptimizeWidthCol1'#7'Caption'#6#17'Optimize width...'#18'DisableIf'
|
||||||
|
,'NoHandler'#9#9'OnExecute'#7#27'actOptimizeWidthCol1Execute'#0#0#0#0
|
||||||
]);
|
]);
|
||||||
|
@ -6,7 +6,7 @@ interface
|
|||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, rxmemds,
|
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, rxmemds,
|
||||||
DB, rxdbgrid, ExtCtrls, Buttons, Menus, ActnList;
|
DB, rxdbgrid, ExtCtrls, Buttons, Menus, ActnList, StdCtrls;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
@ -19,6 +19,7 @@ type
|
|||||||
ActionList1: TActionList;
|
ActionList1: TActionList;
|
||||||
Button1: TButton;
|
Button1: TButton;
|
||||||
Button2: TButton;
|
Button2: TButton;
|
||||||
|
CheckBox1: TCheckBox;
|
||||||
Datasource1: TDatasource;
|
Datasource1: TDatasource;
|
||||||
MenuItem1: TMenuItem;
|
MenuItem1: TMenuItem;
|
||||||
MenuItem2: TMenuItem;
|
MenuItem2: TMenuItem;
|
||||||
@ -28,12 +29,20 @@ type
|
|||||||
PopupMenu1: TPopupMenu;
|
PopupMenu1: TPopupMenu;
|
||||||
RxDBGrid1: TRxDBGrid;
|
RxDBGrid1: TRxDBGrid;
|
||||||
RxMemoryData1: TRxMemoryData;
|
RxMemoryData1: TRxMemoryData;
|
||||||
|
RxMemoryData1Developer1: TStringField;
|
||||||
|
RxMemoryData1ID1: TLongintField;
|
||||||
|
RxMemoryData1NAME1: TStringField;
|
||||||
|
RxMemoryData1PRICE1: TFloatField;
|
||||||
procedure actCalcTotalExecute(Sender: TObject);
|
procedure actCalcTotalExecute(Sender: TObject);
|
||||||
procedure actOptimizeColumnsWidthAllExecute(Sender: TObject);
|
procedure actOptimizeColumnsWidthAllExecute(Sender: TObject);
|
||||||
procedure actOptimizeWidthCol1Execute(Sender: TObject);
|
procedure actOptimizeWidthCol1Execute(Sender: TObject);
|
||||||
|
procedure CheckBox1Change(Sender: TObject);
|
||||||
procedure FormCreate(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
||||||
|
procedure RxDBGrid1Filtred(Sender: TObject);
|
||||||
|
procedure RxMemoryData1FilterRecordEx(DataSet: TDataSet; var Accept: Boolean
|
||||||
|
);
|
||||||
private
|
private
|
||||||
{ private declarations }
|
procedure DoFillFilters;
|
||||||
public
|
public
|
||||||
{ public declarations }
|
{ public declarations }
|
||||||
end;
|
end;
|
||||||
@ -48,13 +57,62 @@ implementation
|
|||||||
procedure TRxDBGridMainForm.FormCreate(Sender: TObject);
|
procedure TRxDBGridMainForm.FormCreate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
RxMemoryData1.Open;
|
RxMemoryData1.Open;
|
||||||
RxMemoryData1.AppendRecord([1, 'Lazarus 0.9.23', 0]);
|
RxMemoryData1.AppendRecord([1, 'Lazarus 0.9.23', 0, 'Open source']);
|
||||||
RxMemoryData1.AppendRecord([2, 'Delphi 7.0 Prof', 990]);
|
RxMemoryData1.AppendRecord([2, 'Delphi 7.0 Prof', 990, 'Borland']);
|
||||||
RxMemoryData1.AppendRecord([3, 'Open Office 2.2.0', 0]);
|
RxMemoryData1.AppendRecord([3, 'Open Office 2.2.0', 0, 'Open source']);
|
||||||
RxMemoryData1.AppendRecord([4, 'Microsof Office', 150]);
|
RxMemoryData1.AppendRecord([4, 'Microsoft Office', 150, 'Microsoft']);
|
||||||
|
RxMemoryData1.AppendRecord([5, 'Microsoft Windows 95', 50, 'Microsoft']);
|
||||||
|
RxMemoryData1.AppendRecord([6, 'Microsoft Windows 98', 90, 'Microsoft']);
|
||||||
|
RxMemoryData1.AppendRecord([7, 'Microsoft Windows ME', 90, 'Microsoft']);
|
||||||
|
RxMemoryData1.AppendRecord([8, 'Microsoft Windows NT 4.0', 250, 'Microsoft']);
|
||||||
|
RxMemoryData1.AppendRecord([9, 'Microsoft Windows 2000', 150, 'Microsoft']);
|
||||||
|
RxMemoryData1.AppendRecord([10, 'Microsoft Windows XP', 130, 'Microsoft']);
|
||||||
|
RxMemoryData1.AppendRecord([11, 'Microsoft Windows Vista', 180, 'Microsoft']);
|
||||||
|
DoFillFilters;
|
||||||
|
RxMemoryData1.First;
|
||||||
RxDBGrid1.CalcStatTotals; //fix error in GotoBookmark
|
RxDBGrid1.CalcStatTotals; //fix error in GotoBookmark
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TRxDBGridMainForm.RxDBGrid1Filtred(Sender: TObject);
|
||||||
|
begin
|
||||||
|
RxMemoryData1.First;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TRxDBGridMainForm.RxMemoryData1FilterRecordEx(DataSet: TDataSet;
|
||||||
|
var Accept: Boolean);
|
||||||
|
var
|
||||||
|
i:integer;
|
||||||
|
begin
|
||||||
|
Accept:=true;
|
||||||
|
for i:=0 to RxDBGrid1.Columns.Count-1 do
|
||||||
|
begin
|
||||||
|
with TRxColumn(RxDBGrid1.Columns[i]) do
|
||||||
|
if (Filter.Value<>'') and (Filter.Value<>Field.AsString) then
|
||||||
|
begin
|
||||||
|
Accept:=false;
|
||||||
|
exit;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TRxDBGridMainForm.DoFillFilters;
|
||||||
|
var
|
||||||
|
C:TRxColumn;
|
||||||
|
i:integer;
|
||||||
|
begin
|
||||||
|
RxMemoryData1.First;
|
||||||
|
while not RxMemoryData1.EOF do
|
||||||
|
begin
|
||||||
|
for i:=0 to RxDBGrid1.Columns.Count-1 do
|
||||||
|
begin
|
||||||
|
C:=TRxColumn(RxDBGrid1.Columns[i]);
|
||||||
|
if C.Filter.ValueList.IndexOf(C.Field.AsString)<0 then
|
||||||
|
C.Filter.ValueList.Add(C.Field.AsString);
|
||||||
|
end;
|
||||||
|
RxMemoryData1.Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TRxDBGridMainForm.actCalcTotalExecute(Sender: TObject);
|
procedure TRxDBGridMainForm.actCalcTotalExecute(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
RxDBGrid1.CalcStatTotals; //fix error in GotoBookmark
|
RxDBGrid1.CalcStatTotals; //fix error in GotoBookmark
|
||||||
@ -70,6 +128,15 @@ begin
|
|||||||
TRxColumn(RxDBGrid1.SelectedColumn).OptimizeWidth;
|
TRxColumn(RxDBGrid1.SelectedColumn).OptimizeWidth;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TRxDBGridMainForm.CheckBox1Change(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if CheckBox1.Checked then
|
||||||
|
RxDBGrid1.OptionsRx:=RxDBGrid1.OptionsRx + [rdgFilter]
|
||||||
|
else
|
||||||
|
RxDBGrid1.OptionsRx:=RxDBGrid1.OptionsRx - [rdgFilter];
|
||||||
|
RxMemoryData1.Filtered:=CheckBox1.Checked;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
initialization
|
initialization
|
||||||
{$I rxdbgridmainunit.lrs}
|
{$I rxdbgridmainunit.lrs}
|
||||||
|
Binary file not shown.
@ -1,3 +1,13 @@
|
|||||||
|
12.08.2007 - version 1.1.4.93
|
||||||
|
+ in TRxDBComboBox publishe any property
|
||||||
|
+ in TRxDBLookupCombo add event OnGetGridCellProps
|
||||||
|
+ in rx.inc new define
|
||||||
|
RXDBGRID_OPTIONS_WO_CANCEL_ON_EXIT
|
||||||
|
- in RxDBGrid fix error lose focuse after close filte list
|
||||||
|
+ in demo for RxDBGrid add demos ¤for visual filtring data
|
||||||
|
+ add new component - TAutoPanel ( Dmitry V. Bolshakov) -
|
||||||
|
doc ifn folder auto_panel_doc
|
||||||
|
+ in property OptionsRX add new flag - rdgMrOkOnDblClik
|
||||||
25.06.2007 - version 1.1.3.86
|
25.06.2007 - version 1.1.3.86
|
||||||
- fix error in TRxMemoryData.SortOnFields
|
- fix error in TRxMemoryData.SortOnFields
|
||||||
+ add sorting in RxDBGrid for TRxMemoryData
|
+ add sorting in RxDBGrid for TRxMemoryData
|
||||||
|
@ -1,3 +1,18 @@
|
|||||||
|
12.08.2007 - версия 1.1.4.93
|
||||||
|
+ В TRxDBComboBox опубликованы недостающие поля
|
||||||
|
+ В TRxDBLookupCombo добавлено обработчик OnGetGridCellProps
|
||||||
|
- позволяет задавать при отрисовке фон в выпадающем списке
|
||||||
|
+ В rx.inc ввёл новую дерективу компиляции
|
||||||
|
RXDBGRID_OPTIONS_WO_CANCEL_ON_EXIT
|
||||||
|
если она определени - то в свойстве TRxDbGrid.Options выключается флаг
|
||||||
|
dgCancelOnExit (см. пункт 5 из readmy.txt)
|
||||||
|
- В RxDBGrid исправлена ошибка потери фокуса после закрытия списка фильтра
|
||||||
|
+ В примере на RxDBGrid добавлен промер на визуальную фильтрацию данных
|
||||||
|
+ Добавлен компонент TAutoPanel (автор Dmitry V. Bolshakov) -
|
||||||
|
документация в папке auto_panel_doc
|
||||||
|
+ В свойстве OptionsRX добавлен новый флаг - rdgMrOkOnDblClik
|
||||||
|
при его установке при двойном нажатии на RxDbGrid форме, которой принадлежит
|
||||||
|
RxDbGrid присиваивается ModalResult:=mrOk;
|
||||||
25.06.2007 - версия 1.1.3.86
|
25.06.2007 - версия 1.1.3.86
|
||||||
- Исправлена ошибка в методе TRxMemoryData.SortOnFields
|
- Исправлена ошибка в методе TRxMemoryData.SortOnFields
|
||||||
+ Добавлена поддержка сортировок из RxDBGrid на TRxMemoryData
|
+ Добавлена поддержка сортировок из RxDBGrid на TRxMemoryData
|
||||||
|
@ -1,184 +0,0 @@
|
|||||||
12.01.2006 - версия 1.0.12.38
|
|
||||||
+ в RxDbGrid в заголовке колонки добавлено свойство Orientation - отвечает за
|
|
||||||
направление отрисовки текста в заголовке столбца
|
|
||||||
+ добавлена демка для демонстрацииотрисовки текста вертикально (под углом 90
|
|
||||||
градусов)
|
|
||||||
21.12.2005
|
|
||||||
+ в RxDbGrid добавлено свойство AllowedOperation - для запрета выплнения некоторых
|
|
||||||
операций
|
|
||||||
+ в RxDbGrid доработан обработчик события OnGetCellProps
|
|
||||||
+ в TRxMemoryData введено свойство OnFilterRecordEx - временно, пока в TDataSet
|
|
||||||
не реализуют работу свойства OnFilterRecord
|
|
||||||
16.12.2005 - версия 1.0.11.35
|
|
||||||
+ доработано поведение TToolbarButton для коректной работы
|
|
||||||
в последних сборках Lazarus
|
|
||||||
+ исправлен регистр в названиях некоторых модулей
|
|
||||||
+ пробная сборка под Linux
|
|
||||||
27.11.2005 - версия 1.0.11.34
|
|
||||||
- TToolPanel - исправлена ошибка сохранения свойств панели при
|
|
||||||
редактировании её в runtime
|
|
||||||
22.10.2005 - версия 1.0.10.33
|
|
||||||
+ TRxLabel - перенесён компонент
|
|
||||||
+ TSecretPanel - перенесён компонент
|
|
||||||
- TRxMemoryData - внесён код, обходящий ошибку востановления свойства FieldDefs
|
|
||||||
в модуле DB - работает вроде теперь всё правильно
|
|
||||||
+ TRxLoginDialog - начат перенесён
|
|
||||||
- TRxDBComboBox - небольшой багфикс
|
|
||||||
15.10.2005 - версия 1.0.9.30
|
|
||||||
+ TRxCustomDBLookupCombo - Улучшена отрисовка
|
|
||||||
(старый стиль отрисовки будет при включённом Flat)
|
|
||||||
+ TRxCustomDBLookupCombo - При нажатии клавишы ESC поле очищается (метод DataField.Clear)
|
|
||||||
- TRxCustomDBLookupCombo - Исправлена ошибка отрисовки пустого значения DataField в режиме
|
|
||||||
DisplayAllFields - отображается значение свойства EmptyValue
|
|
||||||
- TRxCustomDBLookupCombo - Исправлена ошибка открытия списка допустимых значений при
|
|
||||||
пустом DataField (список стоял на последней записи)
|
|
||||||
- TRxCustomDBLookupCombo - исправлен расчёт высоты выпадающего списка в зависимости
|
|
||||||
от значения свойства DropDownCount
|
|
||||||
- TRxCustomDBLookupCombo - исправлен выбор значения в выпадающем спсике нажатием
|
|
||||||
клавишы Enter
|
|
||||||
+ TRxMemoryData - Введён код для обхода глюка Lazarus с не корректным созданием полей
|
|
||||||
по данным FieldDefs, которые были созданы в Design-time
|
|
||||||
+ TRxMemoryData - реализован редактор компоненты - копия струтктуры из другого
|
|
||||||
DataSet-а
|
|
||||||
+ TRxDBGrid - подключен редактор свойства FieldName у колонки
|
|
||||||
+ TRxDBGrid - реализована возможность подстановки значений для отображения
|
|
||||||
через свойства KeyList и PickList (аналогично TRxDBComboBox)
|
|
||||||
10.10.2005
|
|
||||||
- Исправлена ошибка при рисовании изображения в RxDbGrid из ImageList,
|
|
||||||
также операция немного ускорена
|
|
||||||
- исправлена ошибка при изменении ширины колонки (деление на 0)
|
|
||||||
+ начата работа над сохранением состояния колонок RxDbGrid через FormStorage
|
|
||||||
- Небольшой багофикс при работе с изображениями в TToolPanel
|
|
||||||
+ Добавил компонент TPageManager
|
|
||||||
+ Написал новый компонент TRxAppIcon - это для тех кто не хочет возиться с
|
|
||||||
ресурсами - в момент запуска приложению будет сопоставлена указанная иконка.
|
|
||||||
т.к. она хранится не в стандартном виндовом ресурсе - поэтому проводник
|
|
||||||
будет показывать на приложении обычную иконку - но в момент запуска
|
|
||||||
появится указанная. Работает только под Windows - если кто знает как это
|
|
||||||
делается в других системах - допишите.
|
|
||||||
Когда в лазаре доделают нормальную работу с иконками - компоненту надо
|
|
||||||
переписать - а может лазарь научится создавать стандартный ресурс виндовый
|
|
||||||
для программы - тогда в этой компоненте надобность вобще отпадёт
|
|
||||||
|
|
||||||
08.10.2005
|
|
||||||
+ Окно настройки теперь вегда сверху
|
|
||||||
+ Для более тонкой настройки отображения кнопок добави в опциях тулбара
|
|
||||||
два дополнительных флага - tpGlyphPopup, tpCaptionPopup
|
|
||||||
- небольшие багофиксы
|
|
||||||
+ реализована работа с изображениями в RxDbGrid через ImageList (см. readmy.txt)
|
|
||||||
+ Добавлен компонент TRXXPManifest - работает только под Windows -
|
|
||||||
поддержка XP манифеста
|
|
||||||
05.10.2005
|
|
||||||
+ убрал свойстов Flat, TransparentBtn
|
|
||||||
+ Добавил свойство Options, включающее tpFlatBtns, tpTransparentBtns
|
|
||||||
+ Добавил включение окна настройки подвойному клику на панели
|
|
||||||
правой кнопкой мышки с зажатым Ctrl
|
|
||||||
- исправл баг множественного открытия окна настройки панели
|
|
||||||
+ у TToolbarItem добавил свойство Tag
|
|
||||||
|
|
||||||
04.10.2005
|
|
||||||
+ в TToolPanel пофиксил баг не верного начального размера кнопки
|
|
||||||
+ Добавлена возможность прорисовки кнопок в стиле WindowsXP
|
|
||||||
+ При в стиле Flat и WindowsXP при наведении курсора на кнопку
|
|
||||||
она приподнимается для лучшего визуализации
|
|
||||||
- т.к. TImageList.Draw не умеет рисовать запроещённое состояние
|
|
||||||
изоражения при задисабливании Action не дисаблится картинка
|
|
||||||
также из-за этого нет возможности сделать изображение с тенью
|
|
||||||
- вылазиет баг в лазаре если в дизайнере удалить напрямую с панели
|
|
||||||
кнопку (не через Items) - ещё не знаю как в лазаре в дизайнере
|
|
||||||
для некоторых элементов запретить удаление
|
|
||||||
+ Добавил демку для TToolPanel
|
|
||||||
|
|
||||||
03.10.2005
|
|
||||||
+ перевёл все имена файлов к нижнему регистру
|
|
||||||
+ в TToolPanel пофиксил некторые баги
|
|
||||||
+ работает окно настройки панели
|
|
||||||
+ Поддерживается DropDownMenu в стиле полного нажатия кнопки
|
|
||||||
+ скрытие не нужных кнопок (настройка в run-time)
|
|
||||||
|
|
||||||
|
|
||||||
02.10.2005 (beta)
|
|
||||||
+ Начата реализация (полностью своя) TToolPanel - аналог RxToolbar
|
|
||||||
по функциональности похоже на стандартный ToolBar - точно
|
|
||||||
также работает через Actions (для добавления кнопок использовать метод Items)
|
|
||||||
полностью моя перерисовка кнопок - нормальный внешний вид.
|
|
||||||
работает:
|
|
||||||
+ кустомизация расположения кнопок и внешнего вида в run-time
|
|
||||||
+ сохранение во внешний конфигурационный файл через propstorage
|
|
||||||
будут реализованы:
|
|
||||||
- DropDownMenu - в зависимости от стиля кнопки либо выпадает
|
|
||||||
при нажатии на кнопку, либо будет отдельнная облясть кнопки (суб.кнопка) для
|
|
||||||
вызова меню
|
|
||||||
- скрытие ненужных кнопок (настройка в run-time)
|
|
||||||
- стили отображения (сейчас стандарт Win9x, Flat) - добавляю как в WinXP
|
|
||||||
- мастер создания панели в DesignTime в лазаре
|
|
||||||
змеченые глюки
|
|
||||||
- не всегда коректно востанавливается при ширина кнопок
|
|
||||||
|
|
||||||
принимаю заявки на функциональность и ошибки
|
|
||||||
|
|
||||||
30.10.2005
|
|
||||||
+ перенёс
|
|
||||||
+ перенёс RxDice, RxSwith, TRxDBComboBox
|
|
||||||
+ Разбил на 2 закладки - RX и RX DBAware
|
|
||||||
- исправил баг с начальным размером у TRxDBLookupCombo
|
|
||||||
|
|
||||||
|
|
||||||
28.10.2005
|
|
||||||
+ практически работает Currency edit (не проверил под линухом)
|
|
||||||
- из-за ошибки в функиции FormatFloat из FCL нельзя использовать в строке
|
|
||||||
форматирования одинарные или двойные кавычки - повесится
|
|
||||||
19.10.2005
|
|
||||||
+ TRxMemoryData - работает почти полностью - нет поддержки blob - надо разбирать
|
|
||||||
+ начал перенос Currency edit
|
|
||||||
+ правил ошибки
|
|
||||||
- ещё не всё проверил в линуксе - теоретически должно собраться и работать
|
|
||||||
05.10.2005
|
|
||||||
+ Добавлен TRxDBGrid - написан по "мотивам оригинального, ещё есть что переносить
|
|
||||||
самое главное, почему его начал переносить - захотелось сделать сортировку
|
|
||||||
наборов данных как в DBGridEh из EhLib. Я вышел с предложением на
|
|
||||||
Jesus Reyes (автор DBGrid-а о добавлении функциональности) - он сказал, что нефиг
|
|
||||||
превращать стандартный компонент в новогоднюю ёлку. Поэтому стал сам доделывать
|
|
||||||
наследника.
|
|
||||||
Сейчас работает многострочные заголовки, подерживается нажатие на заголовок
|
|
||||||
как на кнопку с опциональным отображением символа сортировки (соответсвующее событие)
|
|
||||||
|
|
||||||
также добавил механизм автосортировки см. файл exSortFB.pas - тут наиболее лаконично
|
|
||||||
всё. Кратко - для необходимых типов источноков данных
|
|
||||||
пишется обёртка (наследник от TExDBGridSortEngine) который умеет в этом
|
|
||||||
источнике данных переупорядочивать записи. Мой TFBDataSet (работаю с FireBird)
|
|
||||||
умеет сам в локальном кэше сортировать запис - поэтому там всё просто.
|
|
||||||
exsortmds.pas - этот модуль для сортировки данных в стандартном MemDS
|
|
||||||
немного кривовато написано - практически нет механизмов добраться до внутреннего
|
|
||||||
буфера данных (кстати в MemDS есть баг позиционирования курсора на 1-ю запись)
|
|
||||||
|
|
||||||
- TRxMemoryData - вроде всё скомпилировалось практически без правки - но чтото при
|
|
||||||
добавлении записи - ошибка (подозреваю не совместимость DataSet-а из дельфей и Лазаря)
|
|
||||||
надо разобраться. Стандартный MemDS ограничен - нет блоб и прочего.
|
|
||||||
31.09.2005
|
|
||||||
+ Add component TFolderLister - это моя разработка - на основе неё добавлю
|
|
||||||
ещё компонент для построения меню, содержащее отчёты для LazReport-a
|
|
||||||
(аналог у меня в дельфях моей также разработки)
|
|
||||||
07.01.2005
|
|
||||||
i'm port next RX components:
|
|
||||||
TDBDateEdit - не даёт вводить значения руками - наследство от оригинального
|
|
||||||
TDateEdit
|
|
||||||
TRxDBCalcEdit
|
|
||||||
TRXLookupEdit,
|
|
||||||
TRxDBLookupCombo - тут баг - при кидании на форму не коректно устанавливаются
|
|
||||||
размеры, приходится руками ресайзить - когда нить доделаю - или кто сможет -
|
|
||||||
помогайте.
|
|
||||||
|
|
||||||
|
|
||||||
and next modules:
|
|
||||||
DateUtil.pas
|
|
||||||
DbUtils.pas
|
|
||||||
rxdconst.pas
|
|
||||||
RXStrutils.pas
|
|
||||||
VCLUtils.pas
|
|
||||||
|
|
||||||
жду замечаний и предложений
|
|
||||||
Лагунов Алексей (alexs)
|
|
||||||
|
|
||||||
ALEXS75-на-YANDEX-точка-RU
|
|
||||||
|
|
@ -35,4 +35,17 @@
|
|||||||
4. Для нормальной работы используйте последнюю версию Lazarus
|
4. Для нормальной работы используйте последнюю версию Lazarus
|
||||||
сборкой не ниже 0.9.19 (10151) - появилась в SVN 01.11.2006
|
сборкой не ниже 0.9.19 (10151) - появилась в SVN 01.11.2006
|
||||||
|
|
||||||
5. Вопросы задавать мылом или на форуме FreePascal.ru (предпочтительней)
|
5. Замечание о RXDBGRID_OPTIONS_WO_CANCEL_ON_EXIT и флаге dgCancelOnExit в
|
||||||
|
TRxDbGrid.Options
|
||||||
|
в случае использования следующей схемы под линуксом:
|
||||||
|
В форму ложим список TRxDbGrid с открытым набором данных и отдельную кнопку (TSpeedButton) на
|
||||||
|
добавление новой записи в набор данных с вызовом другой модальной формы для редактирования
|
||||||
|
добовляемых значение
|
||||||
|
при открытии формы редактирования набор данных, связанный с TRxDbGrid переходит в состояние
|
||||||
|
редактирования
|
||||||
|
это поведени наблюдается только по Linux
|
||||||
|
|
||||||
|
объяснение заключается в том что при потере фокуса TDbGrid и его наследниеи вызывают
|
||||||
|
метод Cancel
|
||||||
|
|
||||||
|
6. Вопросы задавать мылом или на форуме FreePascal.ru (предпочтительней)
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
del rx.lrs
|
del rx.lrs
|
||||||
C:\lazarus\tools\lazres.exe rx.lrs TDBDateEdit.xpm TRXLookUpEdit.xpm TRxDBCalcEdit.xpm TRxDBLookupCombo.xpm TRxDBGrid.xpm TDualListDialog.xpm TFolderLister.xpm TRxMemoryData.xpm TCURRENCYEDIT.xpm TRXSWITCH.xpm TRXDICE.xpm TRXDBCOMBOBOX.xpm ttoolpanel.xpm trxxpmanifest.xpm TPAGEMANAGER.xpm TRXAPPICON.xpm TSECRETPANEL.xpm TRXLABEL.xpm
|
C:\lazarus\tools\lazres.exe rx.lrs TDBDateEdit.xpm TRXLookUpEdit.xpm TRxDBCalcEdit.xpm TRxDBLookupCombo.xpm TRxDBGrid.xpm TDualListDialog.xpm TFolderLister.xpm TRxMemoryData.xpm TCURRENCYEDIT.xpm TRXSWITCH.xpm TRXDICE.xpm TRXDBCOMBOBOX.xpm ttoolpanel.xpm trxxpmanifest.xpm TPAGEMANAGER.xpm TRXAPPICON.xpm TSECRETPANEL.xpm TRXLABEL.xpm tautopanel.xpm
|
||||||
|
@ -12,7 +12,8 @@ procedure Register;
|
|||||||
implementation
|
implementation
|
||||||
uses PropEdits, dbdateedit, rxlookup, folderlister, rxdbgrid, rxmemds, duallist,
|
uses PropEdits, dbdateedit, rxlookup, folderlister, rxdbgrid, rxmemds, duallist,
|
||||||
curredit, rxswitch, rxdice, rxdbcomb, rxtoolbar, rxxpman, PageMngr, RxAppIcon,
|
curredit, rxswitch, rxdice, rxdbcomb, rxtoolbar, rxxpman, PageMngr, RxAppIcon,
|
||||||
Dialogs, ComponentEditors, seldsfrm, DBPropEdits, DB, rxctrls, RxLogin, RxCustomChartPanel;
|
Dialogs, ComponentEditors, seldsfrm, DBPropEdits, DB, rxctrls, RxLogin,
|
||||||
|
RxCustomChartPanel, AutoPanel;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
@ -209,6 +210,10 @@ begin
|
|||||||
RegisterComponents('RX',[TRxChart]);
|
RegisterComponents('RX',[TRxChart]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure RegisterAutoPanel;
|
||||||
|
begin
|
||||||
|
RegisterComponents('RX',[TAutoPanel]);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure Register;
|
procedure Register;
|
||||||
begin
|
begin
|
||||||
@ -231,6 +236,8 @@ begin
|
|||||||
RegisterUnit('rxdbgrid', @RegisterRxDbGrid);
|
RegisterUnit('rxdbgrid', @RegisterRxDbGrid);
|
||||||
RegisterUnit('rxmemds', @RegisterRxMemDS);
|
RegisterUnit('rxmemds', @RegisterRxMemDS);
|
||||||
RegisterUnit('rxdbcomb', @RegisterRxDBComb);
|
RegisterUnit('rxdbcomb', @RegisterRxDBComb);
|
||||||
|
RegisterUnit('AutoPanel', @RegisterAutoPanel);
|
||||||
|
|
||||||
|
|
||||||
//Component Editors
|
//Component Editors
|
||||||
RegisterComponentEditor(TRxAppIcon, TRxAppIconEditor);
|
RegisterComponentEditor(TRxAppIcon, TRxAppIconEditor);
|
||||||
|
@ -5,3 +5,4 @@
|
|||||||
{$DEFINE HASVARIANT}
|
{$DEFINE HASVARIANT}
|
||||||
{.$DEFINE ENABLE_Child_Defs}
|
{.$DEFINE ENABLE_Child_Defs}
|
||||||
{$DEFINE NEW_STYLE_TITLE_ALIGNMENT_RXDBGRID}
|
{$DEFINE NEW_STYLE_TITLE_ALIGNMENT_RXDBGRID}
|
||||||
|
{$DEFINE RXDBGRID_OPTIONS_WO_CANCEL_ON_EXIT}
|
||||||
|
@ -267,3 +267,21 @@ LazarusResources.Add('TRXLABEL','XPM',[
|
|||||||
+'........................",'#10'"........................",'#10'"...........'
|
+'........................",'#10'"........................",'#10'"...........'
|
||||||
+'.............",'#10'"........................"};'#10
|
+'.............",'#10'"........................"};'#10
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
LazarusResources.Add('tautopanel','XPM',[
|
||||||
|
'/* XPM */'#10'static char *tautopanel_xpm[] = {'#10'/* width height num_colo'
|
||||||
|
+'rs chars_per_pixel */'#10'" 24 24 8 1",'#10'/* colo'
|
||||||
|
+'rs */'#10'"` c #808000",'#10'". c #808080",'#10'"# c #ffffff",'#10'"a c #ff'
|
||||||
|
+'0000",'#10'"b c #000000",'#10'"c c #000000",'#10'"d c #000000",'#10'"e c #0'
|
||||||
|
+'00000",'#10'/* pixels */'#10'"````````````````````````",'#10'"`````````````'
|
||||||
|
+'```````````",'#10'"``...................```",'#10'"``.#################`#``'
|
||||||
|
+'",'#10'"``.#````````````````.#``",'#10'"``.#````````````````.#``",'#10'"``.'
|
||||||
|
+'#````````````````.#``",'#10'"``.#aa``````````````.#``",'#10'"``.a``a```````'
|
||||||
|
+'a`````.#``",'#10'"``.a``a```````a`````.#``",'#10'"``.a``a`a``a`aaa```aa#``"'
|
||||||
|
+','#10'"``.aaaa`a``a``a```a`.a``",'#10'"``.a``a`a``a``a```a`.a``",'#10'"``.a'
|
||||||
|
+'``a`a``a``a```a`.a``",'#10'"``.a``a`a``a``a```a`.a``",'#10'"``.a``a``aaa``a'
|
||||||
|
+'a```aa#``",'#10'"``.#````````````````.#``",'#10'"``.#````````````````.#``",'
|
||||||
|
+#10'"``.#````````````````.#``",'#10'"``.#````````````````.#``",'#10'"``.`...'
|
||||||
|
+'..............#``",'#10'"```###################``",'#10'"``````````````````'
|
||||||
|
+'``````",'#10'"````````````````````````"'#10'};'#10
|
||||||
|
]);
|
||||||
|
@ -83,6 +83,10 @@ type
|
|||||||
constructor Create(AOwner: TComponent); override;
|
constructor Create(AOwner: TComponent); override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
published
|
published
|
||||||
|
property Anchors;
|
||||||
|
property ArrowKeysTraverseList;
|
||||||
|
property AutoDropDown;
|
||||||
|
property BorderSpacing;
|
||||||
property Style; { must be published before Items }
|
property Style; { must be published before Items }
|
||||||
property Color;
|
property Color;
|
||||||
property Ctl3D;
|
property Ctl3D;
|
||||||
@ -94,11 +98,12 @@ type
|
|||||||
property Enabled;
|
property Enabled;
|
||||||
property EnableValues: Boolean read FEnableValues write SetEnableValues;
|
property EnableValues: Boolean read FEnableValues write SetEnableValues;
|
||||||
property Font;
|
property Font;
|
||||||
property Anchors;
|
|
||||||
property Constraints;
|
property Constraints;
|
||||||
property DragKind;
|
property DragKind;
|
||||||
property ItemHeight;
|
property ItemHeight;
|
||||||
property Items;
|
property Items;
|
||||||
|
property ItemWidth;
|
||||||
|
property MaxLength default -1;
|
||||||
property ParentColor;
|
property ParentColor;
|
||||||
property ParentCtl3D;
|
property ParentCtl3D;
|
||||||
property ParentFont;
|
property ParentFont;
|
||||||
|
@ -11,11 +11,14 @@ uses
|
|||||||
|
|
||||||
type
|
type
|
||||||
TSortMarker = (smNone, smDown, smUp);
|
TSortMarker = (smNone, smDown, smUp);
|
||||||
|
|
||||||
TGetBtnParamsEvent = procedure (Sender: TObject; Field: TField;
|
TGetBtnParamsEvent = procedure (Sender: TObject; Field: TField;
|
||||||
AFont: TFont; var Background: TColor; var SortMarker: TSortMarker;
|
AFont: TFont; var Background: TColor; var SortMarker: TSortMarker;
|
||||||
IsDown: Boolean) of object;
|
IsDown: Boolean) of object;
|
||||||
|
|
||||||
TGetCellPropsEvent = procedure (Sender: TObject; Field: TField;
|
TGetCellPropsEvent = procedure (Sender: TObject; Field: TField;
|
||||||
AFont: TFont; var Background: TColor) of object;
|
AFont: TFont; var Background: TColor) of object;
|
||||||
|
|
||||||
TRxDBGridAllowedOperation = (aoInsert, aoUpdate, aoDelete, aoAppend);
|
TRxDBGridAllowedOperation = (aoInsert, aoUpdate, aoDelete, aoAppend);
|
||||||
TRxDBGridAllowedOperations = set of TRxDBGridAllowedOperation;
|
TRxDBGridAllowedOperations = set of TRxDBGridAllowedOperation;
|
||||||
|
|
||||||
@ -30,7 +33,8 @@ type
|
|||||||
rdgFooterRows,
|
rdgFooterRows,
|
||||||
rdgXORColSizing,
|
rdgXORColSizing,
|
||||||
rdgFilter,
|
rdgFilter,
|
||||||
rdgMultiTitleLines
|
rdgMultiTitleLines,
|
||||||
|
rdgMrOkOnDblClik
|
||||||
);
|
);
|
||||||
|
|
||||||
TOptionsRx = set of TOptionRx;
|
TOptionsRx = set of TOptionRx;
|
||||||
@ -274,6 +278,7 @@ type
|
|||||||
procedure FFilterListEditorOnChange(Sender: TObject);
|
procedure FFilterListEditorOnChange(Sender: TObject);
|
||||||
procedure FFilterListEditorOnCloseUp(Sender: TObject);
|
procedure FFilterListEditorOnCloseUp(Sender: TObject);
|
||||||
procedure InternalOptimizeColumnsWidth(AColList:TList);
|
procedure InternalOptimizeColumnsWidth(AColList:TList);
|
||||||
|
function IsDefaultRowHeightStored:boolean;
|
||||||
public
|
public
|
||||||
constructor Create(AOwner: TComponent); override;
|
constructor Create(AOwner: TComponent); override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
@ -330,7 +335,7 @@ type
|
|||||||
property Constraints;
|
property Constraints;
|
||||||
property DataSource;
|
property DataSource;
|
||||||
property DefaultDrawing;
|
property DefaultDrawing;
|
||||||
property DefaultRowHeight default 18;
|
property DefaultRowHeight stored IsDefaultRowHeightStored default 18 ;
|
||||||
//property DragCursor;
|
//property DragCursor;
|
||||||
//property DragKind;
|
//property DragKind;
|
||||||
//property DragMode;
|
//property DragMode;
|
||||||
@ -1269,8 +1274,18 @@ begin
|
|||||||
inherited MouseDown(Button, Shift, X, Y);
|
inherited MouseDown(Button, Shift, X, Y);
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
begin
|
||||||
|
if rdgMrOkOnDblClik in FOptionsRx then
|
||||||
|
begin
|
||||||
|
if (Cell.Y > 0) and (Cell.X >= ord(dgIndicator in Options)) and (ssDouble in Shift) then
|
||||||
|
begin
|
||||||
|
if Owner is TCustomForm then
|
||||||
|
TCustomForm(Owner).ModalResult:=mrOk;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
inherited MouseDown(Button, Shift, X, Y);
|
inherited MouseDown(Button, Shift, X, Y);
|
||||||
end;
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TRxDBGrid.MouseUp(Button: TMouseButton; Shift: TShiftState; X,
|
procedure TRxDBGrid.MouseUp(Button: TMouseButton; Shift: TShiftState; X,
|
||||||
Y: Integer);
|
Y: Integer);
|
||||||
@ -1466,6 +1481,7 @@ procedure TRxDBGrid.FFilterListEditorOnCloseUp(Sender: TObject);
|
|||||||
begin
|
begin
|
||||||
FFilterListEditor.Hide;
|
FFilterListEditor.Hide;
|
||||||
FFilterListEditor.Changed;
|
FFilterListEditor.Changed;
|
||||||
|
SetFocus;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TRxDBGrid.InternalOptimizeColumnsWidth(AColList: TList);
|
procedure TRxDBGrid.InternalOptimizeColumnsWidth(AColList: TList);
|
||||||
@ -1510,6 +1526,11 @@ begin
|
|||||||
FreeMem(WA, SizeOf(Integer) * AColList.Count);
|
FreeMem(WA, SizeOf(Integer) * AColList.Count);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TRxDBGrid.IsDefaultRowHeightStored: boolean;
|
||||||
|
begin
|
||||||
|
Result:=DefaultRowHeight = Canvas.TextHeight('W');
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TRxDBGrid.CalcStatTotals;
|
procedure TRxDBGrid.CalcStatTotals;
|
||||||
var
|
var
|
||||||
P:TBookmark;
|
P:TBookmark;
|
||||||
@ -1593,6 +1614,9 @@ end;
|
|||||||
constructor TRxDBGrid.Create(AOwner: TComponent);
|
constructor TRxDBGrid.Create(AOwner: TComponent);
|
||||||
begin
|
begin
|
||||||
inherited Create(AOwner);
|
inherited Create(AOwner);
|
||||||
|
{$IFDEF RXDBGRID_OPTIONS_WO_CANCEL_ON_EXIT}
|
||||||
|
Options:=Options - [dgCancelOnExit];
|
||||||
|
{$ENDIF}
|
||||||
|
|
||||||
FMarkerUp := TBitmap.Create;
|
FMarkerUp := TBitmap.Create;
|
||||||
FMarkerUp.Handle := CreatePixmapIndirect(@IMGMarkerUp[0],
|
FMarkerUp.Handle := CreatePixmapIndirect(@IMGMarkerUp[0],
|
||||||
@ -2099,9 +2123,9 @@ end;
|
|||||||
initialization
|
initialization
|
||||||
ExDBGridSortEngineList:=TStringList.Create;
|
ExDBGridSortEngineList:=TStringList.Create;
|
||||||
ExDBGridSortEngineList.Sorted:=true;
|
ExDBGridSortEngineList.Sorted:=true;
|
||||||
|
|
||||||
finalization
|
finalization
|
||||||
while (ExDBGridSortEngineList.Count>0) do begin
|
while (ExDBGridSortEngineList.Count>0) do
|
||||||
|
begin
|
||||||
ExDBGridSortEngineList.Objects[0].Free;
|
ExDBGridSortEngineList.Objects[0].Free;
|
||||||
ExDBGridSortEngineList.Delete(0);
|
ExDBGridSortEngineList.Delete(0);
|
||||||
end;
|
end;
|
||||||
|
@ -144,6 +144,7 @@ type
|
|||||||
function GetFlat: Boolean;
|
function GetFlat: Boolean;
|
||||||
function GetGlyph: TBitmap;
|
function GetGlyph: TBitmap;
|
||||||
function GetNumGlyphs: Integer;
|
function GetNumGlyphs: Integer;
|
||||||
|
function GetOnGetGridCellProps: TGetCellPropsEvent;
|
||||||
function GetPopupVisible: boolean;
|
function GetPopupVisible: boolean;
|
||||||
procedure SetButtonNeedsFocus(const AValue: Boolean);
|
procedure SetButtonNeedsFocus(const AValue: Boolean);
|
||||||
procedure SetButtonWidth(const AValue: Integer);
|
procedure SetButtonWidth(const AValue: Integer);
|
||||||
@ -161,6 +162,7 @@ type
|
|||||||
procedure SetLookupField(const AValue: string);
|
procedure SetLookupField(const AValue: string);
|
||||||
procedure SetLookupSource(const AValue: TDataSource);
|
procedure SetLookupSource(const AValue: TDataSource);
|
||||||
procedure SetNumGlyphs(const AValue: Integer);
|
procedure SetNumGlyphs(const AValue: Integer);
|
||||||
|
procedure SetOnGetGridCellProps(const AValue: TGetCellPropsEvent);
|
||||||
procedure SetPopUpFormOptions(const AValue: TPopUpFormOptions);
|
procedure SetPopUpFormOptions(const AValue: TPopUpFormOptions);
|
||||||
procedure SetReadOnly(const AValue: boolean);
|
procedure SetReadOnly(const AValue: boolean);
|
||||||
function StoreEmpty: boolean;
|
function StoreEmpty: boolean;
|
||||||
@ -220,6 +222,8 @@ type
|
|||||||
property LookupDisplayIndex: Integer read FLookupDisplayIndex write SetLookupDisplayIndex default 0;
|
property LookupDisplayIndex: Integer read FLookupDisplayIndex write SetLookupDisplayIndex default 0;
|
||||||
property LookupField: string read FLookupField write SetLookupField;
|
property LookupField: string read FLookupField write SetLookupField;
|
||||||
property LookupSource: TDataSource read GetLookupSource write SetLookupSource;
|
property LookupSource: TDataSource read GetLookupSource write SetLookupSource;
|
||||||
|
property OnGetGridCellProps: TGetCellPropsEvent read GetOnGetGridCellProps
|
||||||
|
write SetOnGetGridCellProps;
|
||||||
public
|
public
|
||||||
constructor Create(AOwner: TComponent); override;
|
constructor Create(AOwner: TComponent); override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
@ -267,6 +271,7 @@ type
|
|||||||
property OnMouseMove;
|
property OnMouseMove;
|
||||||
property OnMouseUp;
|
property OnMouseUp;
|
||||||
property OnStartDrag;
|
property OnStartDrag;
|
||||||
|
property OnGetGridCellProps;
|
||||||
property ParentColor;
|
property ParentColor;
|
||||||
property ParentCtl3D;
|
property ParentCtl3D;
|
||||||
property ParentFont;
|
property ParentFont;
|
||||||
@ -296,7 +301,7 @@ uses VCLUtils, Math;
|
|||||||
function CreateArrowBitmap:TBitmap;
|
function CreateArrowBitmap:TBitmap;
|
||||||
begin
|
begin
|
||||||
Result:=Graphics.TBitmap.Create;
|
Result:=Graphics.TBitmap.Create;
|
||||||
Result.LoadFromLazarusResource('btn_downarrow');
|
Result.LoadFromLazarusResource('rxbtn_downarrow');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ TCustomDBLookupEdit }
|
{ TCustomDBLookupEdit }
|
||||||
@ -604,6 +609,11 @@ begin
|
|||||||
else Result:=0;
|
else Result:=0;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TRxCustomDBLookupCombo.GetOnGetGridCellProps: TGetCellPropsEvent;
|
||||||
|
begin
|
||||||
|
Result:=FPopUpFormOptions.OnGetCellProps;
|
||||||
|
end;
|
||||||
|
|
||||||
function TRxCustomDBLookupCombo.GetPopupVisible: boolean;
|
function TRxCustomDBLookupCombo.GetPopupVisible: boolean;
|
||||||
begin
|
begin
|
||||||
Result:=Assigned(FRxPopUpForm);
|
Result:=Assigned(FRxPopUpForm);
|
||||||
@ -735,6 +745,12 @@ begin
|
|||||||
FButton.NumGlyphs:=AValue;
|
FButton.NumGlyphs:=AValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TRxCustomDBLookupCombo.SetOnGetGridCellProps(
|
||||||
|
const AValue: TGetCellPropsEvent);
|
||||||
|
begin
|
||||||
|
FPopUpFormOptions.OnGetCellProps:=AValue;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TRxCustomDBLookupCombo.SetPopUpFormOptions(
|
procedure TRxCustomDBLookupCombo.SetPopUpFormOptions(
|
||||||
const AValue: TPopUpFormOptions);
|
const AValue: TPopUpFormOptions);
|
||||||
begin
|
begin
|
||||||
@ -1323,4 +1339,10 @@ begin
|
|||||||
FDataControl.LookupDataSetChanged;
|
FDataControl.LookupDataSetChanged;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
LazarusResources.Add('rxbtn_downarrow','XPM',[
|
||||||
|
'/* XPM */'#13#10'static char * btn_downarrow_xpm[] = {'#13#10'"5 3 2 1",'#13
|
||||||
|
+#10'" '#9'c None",'#13#10'".'#9'c #000000",'#13#10'".....",'#13#10'" ... ",'
|
||||||
|
+#13#10'" . "};'#13#10
|
||||||
|
]);
|
||||||
end.
|
end.
|
||||||
|
@ -23,8 +23,8 @@ translate to Lazarus by alexs in 2005 - 2007
|
|||||||
"/>
|
"/>
|
||||||
<License Value="free ware
|
<License Value="free ware
|
||||||
"/>
|
"/>
|
||||||
<Version Major="1" Minor="1" Release="3" Build="86"/>
|
<Version Major="1" Minor="1" Release="4" Build="93"/>
|
||||||
<Files Count="37">
|
<Files Count="38">
|
||||||
<Item1>
|
<Item1>
|
||||||
<Filename Value="rxlookup.pas"/>
|
<Filename Value="rxlookup.pas"/>
|
||||||
<UnitName Value="rxlookup"/>
|
<UnitName Value="rxlookup"/>
|
||||||
@ -174,6 +174,10 @@ translate to Lazarus by alexs in 2005 - 2007
|
|||||||
<Filename Value="rxsortmemds.pas"/>
|
<Filename Value="rxsortmemds.pas"/>
|
||||||
<UnitName Value="rxsortmemds"/>
|
<UnitName Value="rxsortmemds"/>
|
||||||
</Item37>
|
</Item37>
|
||||||
|
<Item38>
|
||||||
|
<Filename Value="autopanel.pas"/>
|
||||||
|
<UnitName Value="AutoPanel"/>
|
||||||
|
</Item38>
|
||||||
</Files>
|
</Files>
|
||||||
<Type Value="RunAndDesignTime"/>
|
<Type Value="RunAndDesignTime"/>
|
||||||
<RequiredPkgs Count="4">
|
<RequiredPkgs Count="4">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ This file was automatically created by Lazarus. Do not edit!
|
{ Этот файл был автоматически создан Lazarus. Не редактировать!
|
||||||
This source is only used to compile and install the package.
|
Исходный код используется только для компиляции и установки пакета.
|
||||||
}
|
}
|
||||||
|
|
||||||
unit rxnew;
|
unit rxnew;
|
||||||
@ -12,7 +12,7 @@ uses
|
|||||||
duallist, boxprocs, tooledit, rxswitch, rxdice, rxdbcomb, rxtoolbar,
|
duallist, boxprocs, tooledit, rxswitch, rxdice, rxdbcomb, rxtoolbar,
|
||||||
rxtbrsetup, fduallst, rxxpman, pagemngr, rxappicon, seldsfrm, rxctrls,
|
rxtbrsetup, fduallst, rxxpman, pagemngr, rxappicon, seldsfrm, rxctrls,
|
||||||
rxlogin, rxdbgrid_findunit, rxdbgrid_columsunit, rxpopupunit,
|
rxlogin, rxdbgrid_findunit, rxdbgrid_columsunit, rxpopupunit,
|
||||||
rxcustomchartpanel, rxsortmemds, LazarusPackageIntf;
|
rxcustomchartpanel, rxsortmemds, AutoPanel, LazarusPackageIntf;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
@ -117,6 +117,7 @@ type
|
|||||||
FColumns: TPopUpFormColumns;
|
FColumns: TPopUpFormColumns;
|
||||||
FDropDownCount: integer;
|
FDropDownCount: integer;
|
||||||
FDropDownWidth: integer;
|
FDropDownWidth: integer;
|
||||||
|
FOnGetCellProps: TGetCellPropsEvent;
|
||||||
FOptions: TPopUpGridOptions;
|
FOptions: TPopUpGridOptions;
|
||||||
FShowTitles: boolean;
|
FShowTitles: boolean;
|
||||||
FTitleButtons: boolean;
|
FTitleButtons: boolean;
|
||||||
@ -144,6 +145,8 @@ type
|
|||||||
property ShowTitles:boolean read FShowTitles write SetShowTitles default false;
|
property ShowTitles:boolean read FShowTitles write SetShowTitles default false;
|
||||||
property TitleButtons:boolean read FTitleButtons write SetTitleButtons default false;
|
property TitleButtons:boolean read FTitleButtons write SetTitleButtons default false;
|
||||||
property TitleStyle:TTitleStyle read FTitleStyle write SetTitleStyle default tsLazarus;
|
property TitleStyle:TTitleStyle read FTitleStyle write SetTitleStyle default tsLazarus;
|
||||||
|
property OnGetCellProps: TGetCellPropsEvent read FOnGetCellProps
|
||||||
|
write FOnGetCellProps;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ TPopUpForm }
|
{ TPopUpForm }
|
||||||
@ -466,6 +469,7 @@ begin
|
|||||||
FGrid.TitleButtons:=FPopUpFormOptions.TitleButtons;
|
FGrid.TitleButtons:=FPopUpFormOptions.TitleButtons;
|
||||||
FGrid.TitleStyle:=FPopUpFormOptions.TitleStyle;
|
FGrid.TitleStyle:=FPopUpFormOptions.TitleStyle;
|
||||||
FGrid.BorderStyle:=FPopUpFormOptions.BorderStyle;
|
FGrid.BorderStyle:=FPopUpFormOptions.BorderStyle;
|
||||||
|
FGrid.OnGetCellProps:=FPopUpFormOptions.OnGetCellProps;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ TPopUpFormOptions }
|
{ TPopUpFormOptions }
|
||||||
|
Loading…
Reference in New Issue
Block a user