fix error in rxdbgrid

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@893 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
alexs75
2009-07-02 16:37:41 +00:00
parent 60af6c3393
commit 8f8177ebc0
5 changed files with 132 additions and 82 deletions

View File

@ -10,6 +10,15 @@
+ In TRxDateEdit add new property - ValidDate. Check valid input.
+ add 2 component from original RX: TRxSpinButton � TRxSpinEdit (Edward Ivanov)
- fix images for TRxClock, TRxDateEdit, TAutoPanel (Edward Ivanov)
- fix error in TRxDatePicker (Edward Ivanov)
+ Add new components: TRxDBSpinEdit, TRxTimeEdit, TRxDBTimeEdit
+ TRxLoginDialo now work.
+ Rewrite code for draw vertical text in titles RXDBGrid. Code from TAChart
+ published BorderSpacing in TRxLabel
+ add demo application for AutoSort in RxDBGrid
- fix sort order in TRxMemDataSet
- fix draw buttons in ToolPanel with use system themes
- fix error in TRxDBComboBox
22.05.2008 - version 2.0.0.136 (svn revision 100)
+ In TRxCustomDBLookupCombo add check for CircularDataLink
+ in TRxCustomDBLookupCombo accelerated drawing data

View File

@ -15,13 +15,14 @@
+ Добавлены компоненты TRxDBSpinEdit, TRxTimeEdit, TRxDBTimeEdit
+ TRxLoginDialo теперь работает. По сравнению с оригинальным функционал сильно расширен.
Изменён дизайн формы
+ Улучшена отриосвка вертикальных заголовков в гриде. Код из TAChart
+ Улучшена отрисовка вертикальных заголовков в гриде. Код из TAChart
+ Опубликова BorderSpacing в TRxLabel
+ Добавлен пример для использования автоматической сортировки в RxDBGrid
- Исправлена сортировка при использовании TRxMemDataSet
- Исправлена отрисова кнопки в ToolPanel при отрисовке с использованием текущей темы
+ Реализована возможность объединения ячеек в заголовке таблицы
(смотрите в демке на RxDBGrid)
- Исправлена ошибка установки значения для TRxDBComboBox
22.05.2008 - версия 2.0.0.136 (svn revision 100)
+ У объекта TRxCustomDBLookupCombo введён контроль на CircularDataLink
+ У объекта TRxCustomDBLookupCombo ускорена отрисовка данных

View File

@ -0,0 +1,32 @@
<?xml version="1.0"?>
<fpdoc-descriptions>
<package name="dcl_rx_fpc"/>
<package name="rxfpc">
<module name="rxdbgrid"/>
<module name="rxctrls">
<topic name="TRxLabel">
<descr>Unit
RxCtrls
Description
Компонента TRxLabel аналогична стандартной компоненте VCL TLabel, однако дополнительно позволяет придать тексту статического элемента управления (Label) 3-мерный вид, либо отобразить "тень" текста.
С помощью свойст ShadowPos, ShadowColor и ShadowSize вы можете задать расположение, цвет и толщину "тени" букв текста. Значения, заданные для этих свойств по умолчанию, создают "трехмерный" эффект изображения текс</descr>
</topic>
<element name="Align"/>
<element name="Alignment"/>
<element name="Alignment"/>
<element name="Alignment"/>
<element name="Color"/>
<element name="DragCursor"/>
<element name="DragMode"/>
<element name="Enabled"/>
<element name="TRxLabelENodeName"/>
<element name="Constraints"/>
<topic name="Constraints">
<element name="TRxLabelENodeNameENodeName"/>
</topic>
<element name="TRxLabelENodeNameENodeName">
<element name="TRxLabelENodeNameENodeNameENodeName"/>
</element>
</module>
</package>
</fpdoc-descriptions>

View File

@ -191,7 +191,6 @@ end;
procedure TCustomDBComboBox.UpdateData(Sender: TObject);
begin
FDataLink.Field.Text := ComboText;
FDataLink.Field.AsString := ComboText;
end;
@ -238,6 +237,7 @@ procedure TCustomDBComboBox.Change;
begin
FDataLink.Edit;
inherited Change;
FDataLink.UpdateRecord;
FDataLink.Modified;
end;

View File

@ -867,7 +867,11 @@ var
rxTit, rxTitleNext:TRxColumnTitle;
MLRec1:TMLCaptionItem;
MLRec2:TMLCaptionItem;
tmpCanvas: TCanvas;
begin
if RowCount = 0 then exit;
tmpCanvas := GetWorkingCanvas(Canvas);
try
H:=1;
ClearMLCaptionPointers;
for i:=0 to Columns.Count-1 do
@ -879,7 +883,7 @@ begin
if Assigned(rxTit) then
begin
if rxTit.Orientation in [toVertical270, toVertical90] then
H:=Max((Canvas.TextWidth(Columns[i].Title.Caption)+ Canvas.TextWidth('W')) div DefaultRowHeight, H)
H:=Max((tmpCanvas.TextWidth(Columns[i].Title.Caption)+ tmpCanvas.TextWidth('W')) div DefaultRowHeight, H)
else
begin
rxColNext:=nil;
@ -917,7 +921,7 @@ begin
end;
end;
MLRec1.Width:=Canvas.TextWidth(MLRec1.Caption)+2;
MLRec1.Width:=tmpCanvas.TextWidth(MLRec1.Caption)+2;
if W > MLRec1.Width then
H2:=1
@ -932,7 +936,7 @@ begin
end
else
begin
H1:=Max((Canvas.TextWidth(rxTit.Caption)+2) div W + 1, H);
H1:=Max((tmpCanvas.TextWidth(rxTit.Caption)+2) div W + 1, H);
if H1>WordCount(rxTit.Caption, [' ']) then
H1:=WordCount(rxTit.Caption, [' ']);
end;
@ -950,13 +954,17 @@ begin
end;
end;
RowHeights[0] := DefaultRowHeight * ({FTitleLines+}H);
if rdgFilter in OptionsRx then
begin
RowHeights[0] := RowHeights[0] + DefaultRowHeight;
end;
finally
if TmpCanvas<>Canvas then
FreeWorkingCanvas(tmpCanvas);
end;
end;
procedure TRxDBGrid.ClearMLCaptionPointers;
@ -1121,7 +1129,7 @@ begin
BeginUpdate;
try
inherited CreateWnd;
// CalcTitle;
CalcTitle;
finally
EndUpdate;
end;
@ -1906,7 +1914,7 @@ end;
procedure TRxDBGrid.VisualChange;
begin
inherited VisualChange;
if Canvas.HandleAllocated then
// if Canvas.HandleAllocated then
CalcTitle;
end;