diff --git a/components/rx/Demos/RxDBGrid/RxDBGridDemo.lpi b/components/rx/Demos/RxDBGrid/RxDBGridDemo.lpi
index bdd755f49..7024a2bda 100644
--- a/components/rx/Demos/RxDBGrid/RxDBGridDemo.lpi
+++ b/components/rx/Demos/RxDBGrid/RxDBGridDemo.lpi
@@ -11,7 +11,7 @@
-
+
@@ -34,27 +34,31 @@
-
+
-
+
-
+
+
+
+
+
-
+
-
+
-
+
@@ -62,10 +66,10 @@
-
-
+
+
-
+
@@ -93,12 +97,10 @@
-
-
@@ -161,127 +163,177 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -302,6 +354,16 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/components/rx/Demos/RxDBGrid/RxDBGridDemo.rc b/components/rx/Demos/RxDBGrid/RxDBGridDemo.rc
index dc280a109..773dd2c83 100644
--- a/components/rx/Demos/RxDBGrid/RxDBGridDemo.rc
+++ b/components/rx/Demos/RxDBGrid/RxDBGridDemo.rc
@@ -24,10 +24,4 @@ PRODUCTVERSION 3,1,1,0
}
}
-#define RT_MANIFEST 24
-#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1
-#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID 2
-#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID 3
-
-CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "RxDBGridDemo.manifest"
MAINICON ICON "RxDBGridDemo.ico"
diff --git a/components/rx/Demos/RxDBGrid/rxdbgridmainunit.lfm b/components/rx/Demos/RxDBGrid/rxdbgridmainunit.lfm
index 142080b18..1d8f9b50e 100644
--- a/components/rx/Demos/RxDBGrid/rxdbgridmainunit.lfm
+++ b/components/rx/Demos/RxDBGrid/rxdbgridmainunit.lfm
@@ -99,7 +99,8 @@ object RxDBGridMainForm: TRxDBGridMainForm
Filter.EmptyFont.Style = [fsItalic]
Filter.ItemIndex = -1
end>
- OptionsRx = [rdgAllowColumnsForm, rdgAllowDialogFind, rdgFooterRows, rdgAllowQuickSearch]
+ PropertyStorage = XMLPropStorage1
+ OptionsRx = [rdgAllowColumnsForm, rdgAllowDialogFind, rdgFooterRows, rdgAllowQuickSearch, rdgAllowToolMenu]
FooterColor = clYellow
FooterRowCount = 1
OnFiltred = RxDBGrid1Filtred
@@ -126,10 +127,10 @@ object RxDBGridMainForm: TRxDBGridMainForm
ClientWidth = 969
TabOrder = 1
object Label1: TLabel
- AnchorSideLeft.Control = CheckBox1
+ AnchorSideLeft.Control = Button2
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = Panel1
- Left = 378
+ Left = 287
Height = 18
Top = 6
Width = 40
@@ -165,14 +166,14 @@ object RxDBGridMainForm: TRxDBGridMainForm
TabOrder = 1
end
object CheckBox1: TCheckBox
- AnchorSideLeft.Control = Button2
+ AnchorSideLeft.Control = ComboBox1
AnchorSideLeft.Side = asrBottom
- AnchorSideTop.Control = Button1
- AnchorSideTop.Side = asrCenter
- Left = 287
- Height = 21
- Top = 14
- Width = 85
+ AnchorSideTop.Control = CheckBox2
+ AnchorSideTop.Side = asrBottom
+ Left = 516
+ Height = 19
+ Top = 31
+ Width = 82
BorderSpacing.Left = 6
Caption = 'Use filter'
OnChange = CheckBox1Change
@@ -182,7 +183,7 @@ object RxDBGridMainForm: TRxDBGridMainForm
AnchorSideLeft.Control = Label1
AnchorSideTop.Control = Label1
AnchorSideTop.Side = asrBottom
- Left = 384
+ Left = 293
Height = 31
Top = 30
Width = 217
@@ -198,6 +199,21 @@ object RxDBGridMainForm: TRxDBGridMainForm
TabOrder = 3
Text = 'Edit mode'
end
+ object CheckBox2: TCheckBox
+ AnchorSideLeft.Control = ComboBox1
+ AnchorSideLeft.Side = asrBottom
+ AnchorSideTop.Control = Panel1
+ Left = 516
+ Height = 19
+ Top = 6
+ Width = 134
+ BorderSpacing.Around = 6
+ Caption = 'Auto fill columns'
+ Checked = True
+ OnChange = CheckBox2Change
+ State = cbChecked
+ TabOrder = 4
+ end
end
object RxMemoryData1: TRxMemoryData
AutoCalcFields = False
@@ -415,4 +431,9 @@ object RxDBGridMainForm: TRxDBGridMainForm
Size = 130
end
end
+ object XMLPropStorage1: TXMLPropStorage
+ StoredValues = <>
+ left = 241
+ top = 128
+ end
end
diff --git a/components/rx/Demos/RxDBGrid/rxdbgridmainunit.lrs b/components/rx/Demos/RxDBGrid/rxdbgridmainunit.lrs
index c941bcdbb..aef92f909 100644
--- a/components/rx/Demos/RxDBGrid/rxdbgridmainunit.lrs
+++ b/components/rx/Demos/RxDBGrid/rxdbgridmainunit.lrs
@@ -39,101 +39,107 @@ LazarusResources.Add('TRxDBGridMainForm','FORMDATA',[
+'Width'#3#163#0#9'FieldName'#6#12'DEVELOPER_ID'#17'Filter.Font.Style'#11#8'f'
+'sItalic'#0#19'Filter.DropDownRows'#2#0#17'Filter.EmptyValue'#6#8'('#208#157
+#208#181#209#130')'#22'Filter.EmptyFont.Style'#11#8'fsItalic'#0#16'Filter.It'
- +'emIndex'#2#255#0#0#9'OptionsRx'#11#19'rdgAllowColumnsForm'#18'rdgAllowDialo'
- +'gFind'#13'rdgFooterRows'#19'rdgAllowQuickSearch'#0#11'FooterColor'#7#8'clYe'
- +'llow'#14'FooterRowCount'#2#1#9'OnFiltred'#7#16'RxDBGrid1Filtred'#5'Align'#7
- +#8'alClient'#15'AutoFillColumns'#9#10'FocusColor'#7#5'clRed'#13'SelectedColo'
- +'r'#7#11'clHighlight'#13'GridLineStyle'#7#7'psSolid'#10'DataSource'#7#11'Dat'
- +'asource1'#7'Options'#11#9'dgEditing'#8'dgTitles'#11'dgIndicator'#14'dgColum'
- +'nResize'#12'dgColumnMove'#10'dgColLines'#10'dgRowLines'#6'dgTabs'#21'dgAlwa'
- +'ysShowSelection'#15'dgConfirmDelete'#14'dgCancelOnExit'#13'dgMultiselect'#18
- +'dgHeaderPushedLook'#0#11'ParentColor'#8#9'PopupMenu'#7#10'PopupMenu1'#8'Tab'
- +'Order'#2#0#10'TitleStyle'#7#8'tsNative'#0#0#6'TPanel'#6'Panel1'#4'Left'#2#0
- +#6'Height'#2'C'#3'Top'#2#0#5'Width'#3#201#3#5'Align'#7#5'alTop'#8'AutoSize'#9
- +#12'ClientHeight'#2'C'#11'ClientWidth'#3#201#3#8'TabOrder'#2#1#0#6'TLabel'#6
- +'Label1'#22'AnchorSideLeft.Control'#7#9'CheckBox1'#19'AnchorSideLeft.Side'#7
- +#9'asrBottom'#21'AnchorSideTop.Control'#7#6'Panel1'#4'Left'#3'z'#1#6'Height'
- +#2#18#3'Top'#2#6#5'Width'#2'('#20'BorderSpacing.Around'#2#6#7'Caption'#6#4'M'
- +'ode'#11'ParentColor'#8#0#0#7'TButton'#7'Button1'#22'AnchorSideLeft.Control'
- +#7#6'Panel1'#21'AnchorSideTop.Control'#7#6'Panel1'#4'Left'#2#6#6'Height'#2'%'
- +#3'Top'#2#6#5'Width'#2'_'#6'Action'#7#12'actCalcTotal'#8'AutoSize'#9#20'Bord'
- +'erSpacing.Around'#2#6#25'BorderSpacing.InnerBorder'#2#4#8'TabOrder'#2#0#0#0
- +#7'TButton'#7'Button2'#22'AnchorSideLeft.Control'#7#7'Button1'#19'AnchorSide'
- +'Left.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'#7#6'Panel1'#4'Left'#2'k'
- +#6'Height'#2'%'#3'Top'#2#6#5'Width'#3#174#0#6'Action'#7#26'actOptimizeColumn'
- +'sWidthAll'#8'AutoSize'#9#20'BorderSpacing.Around'#2#6#25'BorderSpacing.Inne'
- +'rBorder'#2#4#8'TabOrder'#2#1#0#0#9'TCheckBox'#9'CheckBox1'#22'AnchorSideLef'
- +'t.Control'#7#7'Button2'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSid'
- +'eTop.Control'#7#7'Button1'#18'AnchorSideTop.Side'#7#9'asrCenter'#4'Left'#3
- ,#31#1#6'Height'#2#21#3'Top'#2#14#5'Width'#2'U'#18'BorderSpacing.Left'#2#6#7
- +'Caption'#6#10'Use filter'#8'OnChange'#7#15'CheckBox1Change'#8'TabOrder'#2#2
- +#0#0#9'TComboBox'#9'ComboBox1'#22'AnchorSideLeft.Control'#7#6'Label1'#21'Anc'
- +'horSideTop.Control'#7#6'Label1'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Lef'
- +'t'#3#128#1#6'Height'#2#31#3'Top'#2#30#5'Width'#3#217#0#20'BorderSpacing.Aro'
- +'und'#2#6#10'ItemHeight'#2#0#9'ItemIndex'#2#0#13'Items.Strings'#1#6#9'Edit m'
- +'ode'#6#17'Quick search mode'#0#8'OnChange'#7#15'ComboBox1Change'#5'Style'#7
- +#14'csDropDownList'#8'TabOrder'#2#3#4'Text'#6#9'Edit mode'#0#0#0#13'TRxMemor'
- +'yData'#13'RxMemoryData1'#14'AutoCalcFields'#8#9'FieldDefs'#14#1#4'Name'#6#2
- +'ID'#8'DataType'#7#9'ftInteger'#9'Precision'#2#255#4'Size'#2#7#0#1#4'Name'#6
- +#4'NAME'#8'DataType'#7#8'ftString'#9'Precision'#2#255#4'Size'#3#150#0#0#1#4
- +'Name'#6#5'PRICE'#8'DataType'#7#7'ftFloat'#9'Precision'#2#2#4'Size'#2#12#0#1
- +#4'Name'#6#9'Developer'#8'DataType'#7#8'ftString'#9'Precision'#2#255#4'Size'
- +#3#150#0#0#1#4'Name'#6#12'Date_Present'#8'DataType'#7#6'ftDate'#9'Precision'
- +#2#0#4'Size'#2#0#0#1#4'Name'#6#12'DEVELOPER_ID'#8'DataType'#7#9'ftInteger'#9
- +'Precision'#2#0#4'Size'#2#0#0#0#16'OnFilterRecordEx'#7#27'RxMemoryData1Filte'
- +'rRecordEx'#4'left'#3#152#0#3'top'#3#8#1#0#13'TLongintField'#16'RxMemoryData'
- +'1ID1'#12'DisplayWidth'#2#10#9'FieldKind'#7#6'fkData'#9'FieldName'#6#2'ID'#5
- +'Index'#2#0#11'LookupCache'#8#13'ProviderFlags'#11#10'pfInUpdate'#9'pfInWher'
- +'e'#0#8'ReadOnly'#8#8'Required'#8#0#0#12'TStringField'#18'RxMemoryData1NAME1'
- +#12'DisplayWidth'#3#150#0#9'FieldKind'#7#6'fkData'#9'FieldName'#6#4'NAME'#5
- +'Index'#2#1#11'LookupCache'#8#13'ProviderFlags'#11#10'pfInUpdate'#9'pfInWher'
- +'e'#0#8'ReadOnly'#8#8'Required'#8#4'Size'#3#150#0#0#0#11'TFloatField'#19'RxM'
- +'emoryData1PRICE1'#12'DisplayWidth'#2#10#9'FieldKind'#7#6'fkData'#9'FieldNam'
- +'e'#6#5'PRICE'#5'Index'#2#2#11'LookupCache'#8#13'ProviderFlags'#11#10'pfInUp'
- +'date'#9'pfInWhere'#0#8'ReadOnly'#8#8'Required'#8#13'DisplayFormat'#6#8'#,##'
- +'0.00'#8'MaxValue'#5#0#0#0#0#0#0#0#0#0#0#8'MinValue'#5#0#0#0#0#0#0#0#0#0#0#9
- +'Precision'#2#2#0#0#12'TStringField'#23'RxMemoryData1Developer1'#12'DisplayW'
- +'idth'#3#150#0#9'FieldKind'#7#6'fkData'#9'FieldName'#6#9'Developer'#5'Index'
- +#2#3#11'LookupCache'#8#13'ProviderFlags'#11#10'pfInUpdate'#9'pfInWhere'#0#8
- +'ReadOnly'#8#8'Required'#8#4'Size'#3#150#0#0#0#10'TDateField'#26'RxMemoryDat'
- +'a1Date_Present1'#12'DisplayWidth'#2#10#9'FieldKind'#7#6'fkData'#9'FieldName'
- +#6#12'Date_Present'#5'Index'#2#4#11'LookupCache'#8#13'ProviderFlags'#11#10'p'
- +'fInUpdate'#9'pfInWhere'#0#8'ReadOnly'#8#8'Required'#8#0#0#13'TLongintField'
- +#26'RxMemoryData1DEVELOPER_ID1'#12'DisplayWidth'#2#10#9'FieldKind'#7#6'fkDat'
- +'a'#9'FieldName'#6#12'DEVELOPER_ID'#5'Index'#2#5#9'KeyFields'#6#12'DEVELOPER'
- +'_ID'#11'LookupCache'#8#13'LookupDataSet'#7#13'RxMemoryData2'#15'LookupKeyFi'
- +'elds'#6#12'DEVELOPER_ID'#17'LookupResultField'#6#14'DEVELOPER_NAME'#13'Prov'
- +'iderFlags'#11#10'pfInUpdate'#9'pfInWhere'#0#8'ReadOnly'#8#8'Required'#8#0#0
- +#0#11'TDatasource'#11'Datasource1'#7'DataSet'#7#13'RxMemoryData1'#4'left'#2
- +'x'#3'top'#3#8#1#0#0#10'TPopupMenu'#10'PopupMenu1'#4'left'#3#152#0#3'top'#3
- +#197#0#0#9'TMenuItem'#9'MenuItem1'#6'Action'#7#20'actOptimizeWidthCol1'#7'On'
- +'Click'#7#27'actOptimizeWidthCol1Execute'#0#0#9'TMenuItem'#9'MenuItem2'#7'Ca'
- +'ption'#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#9'TMenuItem'#9'MenuItem5'#7'Caption'#6#1'-'#0#0#9'TMenuItem'#9'Men'
- +'uItem7'#6'Action'#7#17'showColumnsDialog'#7'OnClick'#7#24'showColumnsDialog'
- +'Execute'#0#0#9'TMenuItem'#9'MenuItem6'#6'Action'#7#14'showFindDialog'#7'OnC'
- +'lick'#7#21'showFindDialogExecute'#0#0#0#11'TActionList'#11'ActionList1'#4'l'
- +'eft'#3#206#0#3'top'#3#197#0#0#7'TAction'#12'actCalcTotal'#7'Caption'#6#13'C'
- +'alc total...'#9'OnExecute'#7#19'actCalcTotalExecute'#0#0#7'TAction'#26'actO'
- +'ptimizeColumnsWidthAll'#7'Caption'#6#25'Optimize width for all...'#9'OnExec'
- +'ute'#7'!actOptimizeColumnsWidthAllExecute'#0#0#7'TAction'#20'actOptimizeWid'
- +'thCol1'#7'Caption'#6#17'Optimize width...'#9'OnExecute'#7#27'actOptimizeWid'
- +'thCol1Execute'#0#0#7'TAction'#14'showFindDialog'#7'Caption'#6#19'Show find '
- +'dialog...'#9'OnExecute'#7#21'showFindDialogExecute'#0#0#7'TAction'#17'showC'
- +'olumnsDialog'#7'Caption'#6#22'Show columns dialog...'#9'OnExecute'#7#24'sho'
- +'wColumnsDialogExecute'#0#0#0#11'TDatasource'#11'Datasource2'#7'DataSet'#7#13
- +'RxMemoryData2'#4'left'#3#207#0#3'top'#3#8#1#0#0#13'TRxMemoryData'#13'RxMemo'
- +'ryData2'#14'AutoCalcFields'#8#9'FieldDefs'#14#1#4'Name'#6#12'DEVELOPER_ID'#8
- +'DataType'#7#9'ftInteger'#9'Precision'#2#0#4'Size'#2#0#0#1#4'Name'#6#14'DEVE'
- +'LOPER_NAME'#8'DataType'#7#8'ftString'#9'Precision'#2#0#4'Size'#3#130#0#0#0#4
- +'left'#3#240#0#3'top'#3#8#1#0#13'TLongintField'#26'RxMemoryData2DEVELOPER_ID'
- ,'1'#12'DisplayWidth'#2#10#9'FieldKind'#7#6'fkData'#9'FieldName'#6#12'DEVELOP'
- +'ER_ID'#5'Index'#2#0#11'LookupCache'#8#13'ProviderFlags'#11#10'pfInUpdate'#9
- +'pfInWhere'#0#8'ReadOnly'#8#8'Required'#8#0#0#12'TStringField'#28'RxMemoryDa'
- +'ta2DEVELOPER_NAME1'#12'DisplayWidth'#3#130#0#9'FieldKind'#7#6'fkData'#9'Fie'
- +'ldName'#6#14'DEVELOPER_NAME'#5'Index'#2#1#11'LookupCache'#8#13'ProviderFlag'
- +'s'#11#10'pfInUpdate'#9'pfInWhere'#0#8'ReadOnly'#8#8'Required'#8#4'Size'#3
- +#130#0#0#0#0#0
+ +'emIndex'#2#255#0#0#15'PropertyStorage'#7#15'XMLPropStorage1'#9'OptionsRx'#11
+ +#19'rdgAllowColumnsForm'#18'rdgAllowDialogFind'#13'rdgFooterRows'#19'rdgAllo'
+ +'wQuickSearch'#16'rdgAllowToolMenu'#0#11'FooterColor'#7#8'clYellow'#14'Foote'
+ +'rRowCount'#2#1#9'OnFiltred'#7#16'RxDBGrid1Filtred'#5'Align'#7#8'alClient'#15
+ +'AutoFillColumns'#9#10'FocusColor'#7#5'clRed'#13'SelectedColor'#7#11'clHighl'
+ +'ight'#13'GridLineStyle'#7#7'psSolid'#10'DataSource'#7#11'Datasource1'#7'Opt'
+ +'ions'#11#9'dgEditing'#8'dgTitles'#11'dgIndicator'#14'dgColumnResize'#12'dgC'
+ +'olumnMove'#10'dgColLines'#10'dgRowLines'#6'dgTabs'#21'dgAlwaysShowSelection'
+ +#15'dgConfirmDelete'#14'dgCancelOnExit'#13'dgMultiselect'#18'dgHeaderPushedL'
+ +'ook'#0#11'ParentColor'#8#9'PopupMenu'#7#10'PopupMenu1'#8'TabOrder'#2#0#10'T'
+ +'itleStyle'#7#8'tsNative'#0#0#6'TPanel'#6'Panel1'#4'Left'#2#0#6'Height'#2'C'
+ +#3'Top'#2#0#5'Width'#3#201#3#5'Align'#7#5'alTop'#8'AutoSize'#9#12'ClientHeig'
+ +'ht'#2'C'#11'ClientWidth'#3#201#3#8'TabOrder'#2#1#0#6'TLabel'#6'Label1'#22'A'
+ +'nchorSideLeft.Control'#7#7'Button2'#19'AnchorSideLeft.Side'#7#9'asrBottom'
+ +#21'AnchorSideTop.Control'#7#6'Panel1'#4'Left'#3#31#1#6'Height'#2#18#3'Top'#2
+ +#6#5'Width'#2'('#20'BorderSpacing.Around'#2#6#7'Caption'#6#4'Mode'#11'Parent'
+ +'Color'#8#0#0#7'TButton'#7'Button1'#22'AnchorSideLeft.Control'#7#6'Panel1'#21
+ +'AnchorSideTop.Control'#7#6'Panel1'#4'Left'#2#6#6'Height'#2'%'#3'Top'#2#6#5
+ +'Width'#2'_'#6'Action'#7#12'actCalcTotal'#8'AutoSize'#9#20'BorderSpacing.Aro'
+ +'und'#2#6#25'BorderSpacing.InnerBorder'#2#4#8'TabOrder'#2#0#0#0#7'TButton'#7
+ +'Button2'#22'AnchorSideLeft.Control'#7#7'Button1'#19'AnchorSideLeft.Side'#7#9
+ +'asrBottom'#21'AnchorSideTop.Control'#7#6'Panel1'#4'Left'#2'k'#6'Height'#2'%'
+ +#3'Top'#2#6#5'Width'#3#174#0#6'Action'#7#26'actOptimizeColumnsWidthAll'#8'Au'
+ +'toSize'#9#20'BorderSpacing.Around'#2#6#25'BorderSpacing.InnerBorder'#2#4#8
+ +'TabOrder'#2#1#0#0#9'TCheckBox'#9'CheckBox1'#22'AnchorSideLeft.Control'#7#9
+ +'ComboBox1'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'
+ ,#7#9'CheckBox2'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#3#4#2#6'Height'
+ +#2#19#3'Top'#2#31#5'Width'#2'R'#18'BorderSpacing.Left'#2#6#7'Caption'#6#10'U'
+ +'se filter'#8'OnChange'#7#15'CheckBox1Change'#8'TabOrder'#2#2#0#0#9'TComboBo'
+ +'x'#9'ComboBox1'#22'AnchorSideLeft.Control'#7#6'Label1'#21'AnchorSideTop.Con'
+ +'trol'#7#6'Label1'#18'AnchorSideTop.Side'#7#9'asrBottom'#4'Left'#3'%'#1#6'He'
+ +'ight'#2#31#3'Top'#2#30#5'Width'#3#217#0#20'BorderSpacing.Around'#2#6#10'Ite'
+ +'mHeight'#2#0#9'ItemIndex'#2#0#13'Items.Strings'#1#6#9'Edit mode'#6#17'Quick'
+ +' search mode'#0#8'OnChange'#7#15'ComboBox1Change'#5'Style'#7#14'csDropDownL'
+ +'ist'#8'TabOrder'#2#3#4'Text'#6#9'Edit mode'#0#0#9'TCheckBox'#9'CheckBox2'#22
+ +'AnchorSideLeft.Control'#7#9'ComboBox1'#19'AnchorSideLeft.Side'#7#9'asrBotto'
+ +'m'#21'AnchorSideTop.Control'#7#6'Panel1'#4'Left'#3#4#2#6'Height'#2#19#3'Top'
+ +#2#6#5'Width'#3#134#0#20'BorderSpacing.Around'#2#6#7'Caption'#6#17'Auto fill'
+ +' columns'#7'Checked'#9#8'OnChange'#7#15'CheckBox2Change'#5'State'#7#9'cbChe'
+ +'cked'#8'TabOrder'#2#4#0#0#0#13'TRxMemoryData'#13'RxMemoryData1'#14'AutoCalc'
+ +'Fields'#8#9'FieldDefs'#14#1#4'Name'#6#2'ID'#8'DataType'#7#9'ftInteger'#9'Pr'
+ +'ecision'#2#255#4'Size'#2#7#0#1#4'Name'#6#4'NAME'#8'DataType'#7#8'ftString'#9
+ +'Precision'#2#255#4'Size'#3#150#0#0#1#4'Name'#6#5'PRICE'#8'DataType'#7#7'ftF'
+ +'loat'#9'Precision'#2#2#4'Size'#2#12#0#1#4'Name'#6#9'Developer'#8'DataType'#7
+ +#8'ftString'#9'Precision'#2#255#4'Size'#3#150#0#0#1#4'Name'#6#12'Date_Presen'
+ +'t'#8'DataType'#7#6'ftDate'#9'Precision'#2#0#4'Size'#2#0#0#1#4'Name'#6#12'DE'
+ +'VELOPER_ID'#8'DataType'#7#9'ftInteger'#9'Precision'#2#0#4'Size'#2#0#0#0#16
+ +'OnFilterRecordEx'#7#27'RxMemoryData1FilterRecordEx'#4'left'#3#152#0#3'top'#3
+ +#8#1#0#13'TLongintField'#16'RxMemoryData1ID1'#12'DisplayWidth'#2#10#9'FieldK'
+ +'ind'#7#6'fkData'#9'FieldName'#6#2'ID'#5'Index'#2#0#11'LookupCache'#8#13'Pro'
+ +'viderFlags'#11#10'pfInUpdate'#9'pfInWhere'#0#8'ReadOnly'#8#8'Required'#8#0#0
+ +#12'TStringField'#18'RxMemoryData1NAME1'#12'DisplayWidth'#3#150#0#9'FieldKin'
+ +'d'#7#6'fkData'#9'FieldName'#6#4'NAME'#5'Index'#2#1#11'LookupCache'#8#13'Pro'
+ +'viderFlags'#11#10'pfInUpdate'#9'pfInWhere'#0#8'ReadOnly'#8#8'Required'#8#4
+ +'Size'#3#150#0#0#0#11'TFloatField'#19'RxMemoryData1PRICE1'#12'DisplayWidth'#2
+ +#10#9'FieldKind'#7#6'fkData'#9'FieldName'#6#5'PRICE'#5'Index'#2#2#11'LookupC'
+ +'ache'#8#13'ProviderFlags'#11#10'pfInUpdate'#9'pfInWhere'#0#8'ReadOnly'#8#8
+ +'Required'#8#13'DisplayFormat'#6#8'#,##0.00'#8'MaxValue'#5#0#0#0#0#0#0#0#0#0
+ +#0#8'MinValue'#5#0#0#0#0#0#0#0#0#0#0#9'Precision'#2#2#0#0#12'TStringField'#23
+ +'RxMemoryData1Developer1'#12'DisplayWidth'#3#150#0#9'FieldKind'#7#6'fkData'#9
+ +'FieldName'#6#9'Developer'#5'Index'#2#3#11'LookupCache'#8#13'ProviderFlags'
+ +#11#10'pfInUpdate'#9'pfInWhere'#0#8'ReadOnly'#8#8'Required'#8#4'Size'#3#150#0
+ +#0#0#10'TDateField'#26'RxMemoryData1Date_Present1'#12'DisplayWidth'#2#10#9'F'
+ +'ieldKind'#7#6'fkData'#9'FieldName'#6#12'Date_Present'#5'Index'#2#4#11'Looku'
+ +'pCache'#8#13'ProviderFlags'#11#10'pfInUpdate'#9'pfInWhere'#0#8'ReadOnly'#8#8
+ +'Required'#8#0#0#13'TLongintField'#26'RxMemoryData1DEVELOPER_ID1'#12'Display'
+ +'Width'#2#10#9'FieldKind'#7#6'fkData'#9'FieldName'#6#12'DEVELOPER_ID'#5'Inde'
+ +'x'#2#5#9'KeyFields'#6#12'DEVELOPER_ID'#11'LookupCache'#8#13'LookupDataSet'#7
+ +#13'RxMemoryData2'#15'LookupKeyFields'#6#12'DEVELOPER_ID'#17'LookupResultFie'
+ +'ld'#6#14'DEVELOPER_NAME'#13'ProviderFlags'#11#10'pfInUpdate'#9'pfInWhere'#0
+ +#8'ReadOnly'#8#8'Required'#8#0#0#0#11'TDatasource'#11'Datasource1'#7'DataSet'
+ +#7#13'RxMemoryData1'#4'left'#2'x'#3'top'#3#8#1#0#0#10'TPopupMenu'#10'PopupMe'
+ +'nu1'#4'left'#3#152#0#3'top'#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'A'
+ +'ction'#7#12'actCalcTotal'#7'OnClick'#7#19'actCalcTotalExecute'#0#0#9'TMenuI'
+ +'tem'#9'MenuItem3'#6'Action'#7#26'actOptimizeColumnsWidthAll'#7'OnClick'#7'!'
+ +'actOptimizeColumnsWidthAllExecute'#0#0#9'TMenuItem'#9'MenuItem5'#7'Caption'
+ +#6#1'-'#0#0#9'TMenuItem'#9'MenuItem7'#6'Action'#7#17'showColumnsDialog'#7'On'
+ +'Click'#7#24'showColumnsDialogExecute'#0#0#9'TMenuItem'#9'MenuItem6'#6'Actio'
+ +'n'#7#14'showFindDialog'#7'OnClick'#7#21'showFindDialogExecute'#0#0#0#11'TAc'
+ +'tionList'#11'ActionList1'#4'left'#3#206#0#3'top'#3#197#0#0#7'TAction'#12'ac'
+ +'tCalcTotal'#7'Caption'#6#13'Calc total...'#9'OnExecute'#7#19'actCalcTotalEx'
+ +'ecute'#0#0#7'TAction'#26'actOptimizeColumnsWidthAll'#7'Caption'#6#25'Optimi'
+ +'ze width for all...'#9'OnExecute'#7'!actOptimizeColumnsWidthAllExecute'#0#0
+ +#7'TAction'#20'actOptimizeWidthCol1'#7'Caption'#6#17'Optimize width...'#9'On'
+ +'Execute'#7#27'actOptimizeWidthCol1Execute'#0#0#7'TAction'#14'showFindDialog'
+ +#7'Caption'#6#19'Show find dialog...'#9'OnExecute'#7#21'showFindDialogExecut'
+ +'e'#0#0#7'TAction'#17'showColumnsDialog'#7'Caption'#6#22'Show columns dialog'
+ +'...'#9'OnExecute'#7#24'showColumnsDialogExecute'#0#0#0#11'TDatasource'#11'D'
+ ,'atasource2'#7'DataSet'#7#13'RxMemoryData2'#4'left'#3#207#0#3'top'#3#8#1#0#0
+ +#13'TRxMemoryData'#13'RxMemoryData2'#14'AutoCalcFields'#8#9'FieldDefs'#14#1#4
+ +'Name'#6#12'DEVELOPER_ID'#8'DataType'#7#9'ftInteger'#9'Precision'#2#0#4'Size'
+ +#2#0#0#1#4'Name'#6#14'DEVELOPER_NAME'#8'DataType'#7#8'ftString'#9'Precision'
+ +#2#0#4'Size'#3#130#0#0#0#4'left'#3#240#0#3'top'#3#8#1#0#13'TLongintField'#26
+ +'RxMemoryData2DEVELOPER_ID1'#12'DisplayWidth'#2#10#9'FieldKind'#7#6'fkData'#9
+ +'FieldName'#6#12'DEVELOPER_ID'#5'Index'#2#0#11'LookupCache'#8#13'ProviderFla'
+ +'gs'#11#10'pfInUpdate'#9'pfInWhere'#0#8'ReadOnly'#8#8'Required'#8#0#0#12'TSt'
+ +'ringField'#28'RxMemoryData2DEVELOPER_NAME1'#12'DisplayWidth'#3#130#0#9'Fiel'
+ +'dKind'#7#6'fkData'#9'FieldName'#6#14'DEVELOPER_NAME'#5'Index'#2#1#11'Lookup'
+ +'Cache'#8#13'ProviderFlags'#11#10'pfInUpdate'#9'pfInWhere'#0#8'ReadOnly'#8#8
+ +'Required'#8#4'Size'#3#130#0#0#0#0#15'TXMLPropStorage'#15'XMLPropStorage1'#12
+ +'StoredValues'#14#0#4'left'#3#241#0#3'top'#3#128#0#0#0#0
]);
diff --git a/components/rx/Demos/RxDBGrid/rxdbgridmainunit.pas b/components/rx/Demos/RxDBGrid/rxdbgridmainunit.pas
index 7e9511793..8841f1f1e 100644
--- a/components/rx/Demos/RxDBGrid/rxdbgridmainunit.pas
+++ b/components/rx/Demos/RxDBGrid/rxdbgridmainunit.pas
@@ -6,7 +6,8 @@ interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, rxmemds,
- DB, rxdbgrid, ExtCtrls, Buttons, Menus, ActnList, StdCtrls, DBGrids;
+ DB, rxdbgrid, ExtCtrls, Buttons, Menus, ActnList, StdCtrls, DBGrids,
+ XMLPropStorage, IDEWindowIntf;
type
@@ -14,6 +15,7 @@ type
TRxDBGridMainForm = class(TForm)
actCalcTotal: TAction;
+ CheckBox2: TCheckBox;
MenuItem5: TMenuItem;
MenuItem6: TMenuItem;
MenuItem7: TMenuItem;
@@ -46,10 +48,12 @@ type
RxMemoryData2: TRxMemoryData;
RxMemoryData2DEVELOPER_ID1: TLongintField;
RxMemoryData2DEVELOPER_NAME1: TStringField;
+ XMLPropStorage1: TXMLPropStorage;
procedure actCalcTotalExecute(Sender: TObject);
procedure actOptimizeColumnsWidthAllExecute(Sender: TObject);
procedure actOptimizeWidthCol1Execute(Sender: TObject);
procedure CheckBox1Change(Sender: TObject);
+ procedure CheckBox2Change(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure RxDBGrid1Filtred(Sender: TObject);
@@ -95,7 +99,7 @@ begin
RxMemoryData1.AppendRecord([14, 'Бух. комплекс "45-я Параллель"', 180, 'ООО "Boot"', EncodeDate(2007, 2, 1), 3]);
RxMemoryData1.AppendRecord([15, 'Консультант+', 380, 'Консультант+', EncodeDate(2007, 2, 1), 3]);
RxMemoryData1.AppendRecord([16, 'Гарант', 480, 'Гарант', EncodeDate(2007, 2, 1), 3]);
- DoFillFilters;
+// DoFillFilters;
RxMemoryData1.First;
RxDBGrid1.CalcStatTotals; //fix error in GotoBookmark
end;
@@ -181,6 +185,11 @@ begin
RxMemoryData1.Filtered:=CheckBox1.Checked;
end;
+procedure TRxDBGridMainForm.CheckBox2Change(Sender: TObject);
+begin
+ RxDBGrid1.AutoFillColumns:=CheckBox2.Checked;
+end;
+
procedure TRxDBGridMainForm.ComboBox1Change(Sender: TObject);
begin
RxDBGrid1.ReadOnly:=ComboBox1.ItemIndex <> 0;
diff --git a/components/rx/rxdbgrid_columsunit.lfm b/components/rx/rxdbgrid_columsunit.lfm
index c15cce8f2..2be4e6d28 100644
--- a/components/rx/rxdbgrid_columsunit.lfm
+++ b/components/rx/rxdbgrid_columsunit.lfm
@@ -10,7 +10,7 @@ object rxDBGridColumsForm: TrxDBGridColumsForm
OnCreate = FormCreate
Position = poScreenCenter
ShowHint = True
- LCLVersion = '0.9.27'
+ LCLVersion = '0.9.29'
object CheckListBox1: TCheckListBox
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = Owner
@@ -18,7 +18,7 @@ object rxDBGridColumsForm: TrxDBGridColumsForm
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = ButtonPanel1
Left = 6
- Height = 315
+ Height = 317
Top = 6
Width = 436
Anchors = [akTop, akLeft, akRight, akBottom]
@@ -29,8 +29,8 @@ object rxDBGridColumsForm: TrxDBGridColumsForm
end
object ButtonPanel1: TButtonPanel
Left = 6
- Height = 42
- Top = 327
+ Height = 40
+ Top = 329
Width = 436
TabOrder = 1
ShowButtons = [pbOK, pbCancel, pbHelp]
@@ -41,7 +41,7 @@ object rxDBGridColumsForm: TrxDBGridColumsForm
AnchorSideBottom.Control = SpeedButton1
AnchorSideBottom.Side = asrBottom
Left = 143
- Height = 34
+ Height = 32
Top = 0
Width = 23
Anchors = [akTop, akLeft, akBottom]
@@ -84,13 +84,14 @@ object rxDBGridColumsForm: TrxDBGridColumsForm
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
+ OnClick = SpeedButton2Click
end
object SpeedButton1: TSpeedButton
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = ButtonPanel1
AnchorSideBottom.Side = asrBottom
Left = 114
- Height = 34
+ Height = 32
Top = 0
Width = 23
Anchors = [akTop, akLeft, akBottom]
@@ -133,6 +134,7 @@ object rxDBGridColumsForm: TrxDBGridColumsForm
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
+ OnClick = SpeedButton1Click
end
end
end
diff --git a/components/rx/rxdbgrid_columsunit.lrs b/components/rx/rxdbgrid_columsunit.lrs
index 7149348bc..fa49aa533 100644
--- a/components/rx/rxdbgrid_columsunit.lrs
+++ b/components/rx/rxdbgrid_columsunit.lrs
@@ -1,23 +1,23 @@
-{ - , lazarus }
+{ Это - файл ресурсов, автоматически созданный lazarus }
LazarusResources.Add('TrxDBGridColumsForm','FORMDATA',[
'TPF0'#19'TrxDBGridColumsForm'#18'rxDBGridColumsForm'#4'Left'#3#233#1#6'Heigh'
+'t'#3'w'#1#3'Top'#3#248#0#5'Width'#3#192#1#13'ActiveControl'#7#13'CheckListB'
+'ox1'#7'Caption'#6#11'Grid colums'#12'ClientHeight'#3'w'#1#11'ClientWidth'#3
+#192#1#8'OnCreate'#7#10'FormCreate'#8'Position'#7#14'poScreenCenter'#8'ShowH'
- +'int'#9#10'LCLVersion'#6#6'0.9.27'#0#13'TCheckListBox'#13'CheckListBox1'#22
+ +'int'#9#10'LCLVersion'#6#6'0.9.29'#0#13'TCheckListBox'#13'CheckListBox1'#22
+'AnchorSideLeft.Control'#7#5'Owner'#21'AnchorSideTop.Control'#7#5'Owner'#23
+'AnchorSideRight.Control'#7#5'Owner'#20'AnchorSideRight.Side'#7#9'asrBottom'
- +#24'AnchorSideBottom.Control'#7#12'ButtonPanel1'#4'Left'#2#6#6'Height'#3';'#1
+ +#24'AnchorSideBottom.Control'#7#12'ButtonPanel1'#4'Left'#2#6#6'Height'#3'='#1
+#3'Top'#2#6#5'Width'#3#180#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'a'
+'kBottom'#0#20'BorderSpacing.Around'#2#6#10'ItemHeight'#2#0#8'TabOrder'#2#0#8
+'TopIndex'#2#255#0#0#12'TButtonPanel'#12'ButtonPanel1'#4'Left'#2#6#6'Height'
- +#2'*'#3'Top'#3'G'#1#5'Width'#3#180#1#8'TabOrder'#2#1#11'ShowButtons'#11#4'pb'
+ +#2'('#3'Top'#3'I'#1#5'Width'#3#180#1#8'TabOrder'#2#1#11'ShowButtons'#11#4'pb'
+'OK'#8'pbCancel'#6'pbHelp'#0#0#12'TSpeedButton'#12'SpeedButton2'#22'AnchorSi'
+'deLeft.Control'#7#12'SpeedButton1'#19'AnchorSideLeft.Side'#7#9'asrBottom'#21
+'AnchorSideTop.Control'#7#12'SpeedButton1'#24'AnchorSideBottom.Control'#7#12
+'SpeedButton1'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#3#143#0#6'He'
- +'ight'#2'"'#3'Top'#2#0#5'Width'#2#23#7'Anchors'#11#5'akTop'#6'akLeft'#8'akBo'
+ +'ight'#2' '#3'Top'#2#0#5'Width'#2#23#7'Anchors'#11#5'akTop'#6'akLeft'#8'akBo'
+'ttom'#0#18'BorderSpacing.Left'#2#6#5'Color'#7#9'clBtnFace'#10'Glyph.Data'#10
+':'#4#0#0'6'#4#0#0'BM6'#4#0#0#0#0#0#0'6'#0#0#0'('#0#0#0#16#0#0#0#16#0#0#0#1#0
+' '#0#0#0#0#0#0#4#0#0'd'#0#0#0'd'#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
@@ -50,42 +50,43 @@ LazarusResources.Add('TrxDBGridColumsForm','FORMDATA',[
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#9'NumGlyphs'#2#0#0
- +#0#12'TSpeedButton'#12'SpeedButton1'#19'AnchorSideLeft.Side'#7#9'asrBottom'
- +#21'AnchorSideTop.Control'#7#12'ButtonPanel1'#21'AnchorSideBottom.Side'#7#9
- +'asrBottom'#4'Left'#2'r'#6'Height'#2'"'#3'Top'#2#0#5'Width'#2#23#7'Anchors'
- +#11#5'akTop'#6'akLeft'#8'akBottom'#0#18'BorderSpacing.Left'#2#18#5'Color'#7#9
- +'clBtnFace'#10'Glyph.Data'#10':'#4#0#0'6'#4#0#0'BM6'#4#0#0#0#0#0#0'6'#0#0#0
- +'('#0#0#0#16#0#0#0#16#0#0#0#1#0' '#0#0#0#0#0#0#4#0#0'd'#0#0#0'd'#0#0#0#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#9'NumGlyphs'#2#0#7
+ +'OnClick'#7#17'SpeedButton2Click'#0#0#12'TSpeedButton'#12'SpeedButton1'#19'A'
+ +'nchorSideLeft.Side'#7#9'asrBottom'#21'AnchorSideTop.Control'#7#12'ButtonPan'
+ +'el1'#21'AnchorSideBottom.Side'#7#9'asrBottom'#4'Left'#2'r'#6'Height'#2' '#3
+ +'Top'#2#0#5'Width'#2#23#7'Anchors'#11#5'akTop'#6'akLeft'#8'akBottom'#0#18'Bo'
+ +'rderSpacing.Left'#2#18#5'Color'#7#9'clBtnFace'#10'Glyph.Data'#10':'#4#0#0'6'
+ +#4#0#0'BM6'#4#0#0#0#0#0#0'6'#0#0#0'('#0#0#0#16#0#0#0#16#0#0#0#1#0' '#0#0#0#0
+ +#0#0#4#0#0'd'#0#0#0'd'#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#0#0
- +#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#128#128#0#255#128
- ,#128#0#255#128#128#0#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#128#128#0#255#128
- +#128#0#255#128#128#0#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#128#128#0#255#128
- +#128#0#255#128#128#0#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#128#128#0#255
- +#128#128#0#255#128#128#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#128#128#0#255#128#128#0
- +#255#128#128#0#255#128#128#0#255#128#128#0#255#128#128#0#255#128#128#0#255#0
- +#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0#255#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+ ,#0#0#0#0#0#0#255#128#128#0#255#128#128#0#255#128#128#0#255#0#0#0#255#0#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+ +#0#0#0#0#0#255#128#128#0#255#128#128#0#255#128#128#0#255#0#0#0#255#0#0#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+ +#0#0#0#0#255#128#128#0#255#128#128#0#255#128#128#0#255#0#0#0#255#0#0#0#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#0#0#0#255#0#0
+ +#0#255#0#0#0#255#128#128#0#255#128#128#0#255#128#128#0#255#0#0#0#255#0#0#0
+ +#255#0#0#0#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#255#128#128#0#255#128#128#0#255#128#128#0#255#128#128#0#255#128#128#0#255
- +#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#255#128#128#0#255#128#128#0#255#128#128#0#255#0#0#0#255
- +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#0#0#0#255#128#128#0#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#0#0#0#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+ +#128#128#0#255#128#128#0#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#128#128#0#255#128#128#0#255#128#128#0
+ +#255#128#128#0#255#128#128#0#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#128#128#0#255#128
+ +#128#0#255#128#128#0#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#128#128#0
+ +#255#0#0#0#255#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#255#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
+#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0
- +#0#0#0#0#9'NumGlyphs'#2#0#0#0#0#0
+ +#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#9'NumGlyphs'#2#0#7'OnClick'#7#17
+ +'SpeedButton1Click'#0#0#0#0
]);
diff --git a/components/rx/rxdbgrid_columsunit.pas b/components/rx/rxdbgrid_columsunit.pas
index 3757e3ff3..5a25b76ed 100644
--- a/components/rx/rxdbgrid_columsunit.pas
+++ b/components/rx/rxdbgrid_columsunit.pas
@@ -18,10 +18,12 @@ type
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
procedure FormCreate(Sender: TObject);
+ procedure SpeedButton1Click(Sender: TObject);
+ procedure SpeedButton2Click(Sender: TObject);
private
FGrid:TRxDBGrid;
procedure SetGrid(AGrid:TRxDBGrid);
- procedure SetGridColumnsVisible;
+ procedure SetGridColumnsParams;
public
{ public declarations }
end;
@@ -38,7 +40,10 @@ begin
rxDBGridColumsForm:=TrxDBGridColumsForm.Create(Application);
rxDBGridColumsForm.SetGrid(Grid);
if rxDBGridColumsForm.ShowModal = mrOk then
- rxDBGridColumsForm.SetGridColumnsVisible;
+ begin
+ if Assigned(Grid) then
+ rxDBGridColumsForm.SetGridColumnsParams;
+ end;
rxDBGridColumsForm.Free;
end;
@@ -55,6 +60,42 @@ begin
SpeedButton2.Hint:=sRxDbGridSelColHint2;
end;
+procedure TrxDBGridColumsForm.SpeedButton1Click(Sender: TObject);
+var
+ S:string;
+ i:integer;
+begin
+ if CheckListBox1.Items.Count > 1 then
+ begin
+ if CheckListBox1.ItemIndex>0 then
+ begin
+ i:=CheckListBox1.ItemIndex-1;
+ S:=CheckListBox1.Items[CheckListBox1.ItemIndex];
+ CheckListBox1.Items[CheckListBox1.ItemIndex]:=CheckListBox1.Items[i];
+ CheckListBox1.Items[i]:=S;
+ CheckListBox1.ItemIndex:=i;
+ end;
+ end;
+end;
+
+procedure TrxDBGridColumsForm.SpeedButton2Click(Sender: TObject);
+var
+ S:string;
+ i:integer;
+begin
+ if CheckListBox1.Items.Count > 1 then
+ begin
+ if CheckListBox1.ItemIndex