diff --git a/components/rx/trunk/Demos/RxDBGrid/RxDBGridDemo.lpi b/components/rx/trunk/Demos/RxDBGrid/RxDBGridDemo.lpi
index 438b689c0..c087a5fa0 100644
--- a/components/rx/trunk/Demos/RxDBGrid/RxDBGridDemo.lpi
+++ b/components/rx/trunk/Demos/RxDBGrid/RxDBGridDemo.lpi
@@ -55,13 +55,13 @@
-
+
-
+
@@ -72,30 +72,37 @@
-
+
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
-
+
@@ -107,6 +114,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/components/rx/trunk/languages/rxdconst.es.po b/components/rx/trunk/languages/rxdconst.es.po
index a237f0fd2..2622a9e5f 100644
--- a/components/rx/trunk/languages/rxdconst.es.po
+++ b/components/rx/trunk/languages/rxdconst.es.po
@@ -470,6 +470,10 @@ msgstr "Hacia Delante"
msgid "Text to find"
msgstr "Texto a Buscar"
+#: rxdconst.srxdbgridoptimizecolwidth
+msgid "Optimize column width"
+msgstr ""
+
#: rxdconst.srxdbgridselapplycaption
#, fuzzy
msgctxt "rxdconst.srxdbgridselapplycaption"
diff --git a/components/rx/trunk/languages/rxdconst.po b/components/rx/trunk/languages/rxdconst.po
index a3b7cb576..55f6e5481 100644
--- a/components/rx/trunk/languages/rxdconst.po
+++ b/components/rx/trunk/languages/rxdconst.po
@@ -456,6 +456,10 @@ msgstr ""
msgid "Text to find"
msgstr ""
+#: rxdconst.srxdbgridoptimizecolwidth
+msgid "Optimize column width"
+msgstr ""
+
#: rxdconst.srxdbgridselapplycaption
msgctxt "rxdconst.srxdbgridselapplycaption"
msgid "Apply"
diff --git a/components/rx/trunk/languages/rxdconst.ru.po b/components/rx/trunk/languages/rxdconst.ru.po
index 1777808f7..838bc8809 100644
--- a/components/rx/trunk/languages/rxdconst.ru.po
+++ b/components/rx/trunk/languages/rxdconst.ru.po
@@ -466,6 +466,10 @@ msgstr "Вперёд"
msgid "Text to find"
msgstr "Текст для поиска"
+#: rxdconst.srxdbgridoptimizecolwidth
+msgid "Optimize column width"
+msgstr ""
+
#: rxdconst.srxdbgridselapplycaption
msgctxt "rxdconst.srxdbgridselapplycaption"
msgid "Apply"
diff --git a/components/rx/trunk/languages/rxdconst.uk.po b/components/rx/trunk/languages/rxdconst.uk.po
index a72e38cb5..c95471c3e 100644
--- a/components/rx/trunk/languages/rxdconst.uk.po
+++ b/components/rx/trunk/languages/rxdconst.uk.po
@@ -468,6 +468,10 @@ msgstr "Вперед"
msgid "Text to find"
msgstr "Текст для пошуку"
+#: rxdconst.srxdbgridoptimizecolwidth
+msgid "Optimize column width"
+msgstr ""
+
#: rxdconst.srxdbgridselapplycaption
#, fuzzy
msgctxt "rxdconst.srxdbgridselapplycaption"
diff --git a/components/rx/trunk/rxdbgrid.pas b/components/rx/trunk/rxdbgrid.pas
index 71b1befd1..a4b5e2558 100644
--- a/components/rx/trunk/rxdbgrid.pas
+++ b/components/rx/trunk/rxdbgrid.pas
@@ -738,6 +738,7 @@ type
procedure OnChooseVisibleFields(Sender: TObject);
procedure OnSelectAllRows(Sender: TObject);
procedure OnCopyCellValue(Sender: TObject);
+ procedure OnOptimizeColWidth(Sender: TObject);
procedure Loaded; override;
procedure UpdateFooterRowOnUpdateActive;
@@ -2499,6 +2500,7 @@ begin
CreateToolMenuItem('W', sRxDBGridSelectColumns, @OnChooseVisibleFields);
CreateToolMenuItem('A', sRxDBGridSelectAllRows, @OnSelectAllRows);
CreateToolMenuItem(#0, sRxDBGridCopyCellValue, @OnCopyCellValue);
+ CreateToolMenuItem(#0, sRxDBGridOptimizeColWidth, @OnOptimizeColWidth);
end;
function TRxDBGrid.GetPropertyStorage: TCustomPropertyStorage;
@@ -5416,6 +5418,11 @@ begin
end;
end;
+procedure TRxDBGrid.OnOptimizeColWidth(Sender: TObject);
+begin
+ OptimizeColumnsWidthAll;
+end;
+
procedure TRxDBGrid.Loaded;
begin
inherited Loaded;
diff --git a/components/rx/trunk/rxdconst.pas b/components/rx/trunk/rxdconst.pas
index 341b668a4..4c67e0687 100644
--- a/components/rx/trunk/rxdconst.pas
+++ b/components/rx/trunk/rxdconst.pas
@@ -108,16 +108,17 @@ resourcestring
SFieldReadOnly = 'SFieldReadOnly %s';
//RXDBgrid
- sRxDBGridFind = 'Find data'; //// 'Buscar Ctrl+F';
- sRxDBGridFilter = 'Filter data';//'Filtrar Ctrl+T';
- sRxDBGridFilterSimple = 'Filter in table';// Ctrl+E'; 'Filtrar en Encabezado Ctrl+E';
- sRxDBGridFilterClear = 'Clear filter';// Ctrl+Q';'Quitar Filtro Ctrl+Q';
- sRxDBGridSortByColumns = 'Sort data for columns';// Ctrl+C';'Ordenar por Columnas Ctrl+C';
- sRxDBGridSelectColumns = 'Select visible columns';// Ctrl+W';'Seleccionar Columnas Ctrl+W';
- sRxDBGridEmptiFilter = '(Empty)';
- sRxDBGridAllFilter = '(All values)';
- sRxDBGridSelectAllRows = 'Select all rows';// Ctrl+W';'Seleccionar Columnas Ctrl+W';
- sRxDBGridCopyCellValue = 'Copy cell value';// Ctrl+W';'Seleccionar Columnas Ctrl+W';
+ sRxDBGridFind = 'Find data';
+ sRxDBGridFilter = 'Filter data';
+ sRxDBGridFilterSimple = 'Filter in table';
+ sRxDBGridFilterClear = 'Clear filter';
+ sRxDBGridSortByColumns = 'Sort data for columns';
+ sRxDBGridSelectColumns = 'Select visible columns';
+ sRxDBGridEmptiFilter = '(Empty)';
+ sRxDBGridAllFilter = '(All values)';
+ sRxDBGridSelectAllRows = 'Select all rows';
+ sRxDBGridCopyCellValue = 'Copy cell value';
+ sRxDBGridOptimizeColWidth = 'Optimize column width';
//RxDBGrid filter form
sRxFilterFormSelectExp = 'Enter filter expression for data in table:';