mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-17 04:29:28 +02:00
qt: improve check of handle availability in TQtWSCustomListView class
git-svn-id: trunk@11914 -
This commit is contained in:
parent
d3b2a9f827
commit
9c1f90ed0a
@ -738,7 +738,7 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
begin
|
begin
|
||||||
if not ALV.HandleAllocated then
|
if not WSCheckHandleAllocated(ALV, 'ColumnDelete') then
|
||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
@ -759,7 +759,7 @@ var
|
|||||||
HV: QHeaderViewH;
|
HV: QHeaderViewH;
|
||||||
Str: WideString;
|
Str: WideString;
|
||||||
begin
|
begin
|
||||||
if not ALV.HandleAllocated then
|
if not WSCheckHandleAllocated(ALV, 'ColumnInsert') then
|
||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
@ -795,6 +795,9 @@ class function TQtWSCustomListView.ColumnGetWidth(const ALV: TCustomListView; c
|
|||||||
var
|
var
|
||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'ColumnGetWidth') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
Result := QTreeView_columnWidth(QTreeViewH(TW), AIndex);
|
Result := QTreeView_columnWidth(QTreeViewH(TW), AIndex);
|
||||||
end;
|
end;
|
||||||
@ -809,7 +812,7 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
HV: QHeaderViewH;
|
HV: QHeaderViewH;
|
||||||
begin
|
begin
|
||||||
if not ALV.HandleAllocated then
|
if not WSCheckHandleAllocated(ALV, 'ColumnMove') then
|
||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
@ -828,7 +831,7 @@ var
|
|||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
FAlign: QtAlignment;
|
FAlign: QtAlignment;
|
||||||
begin
|
begin
|
||||||
if not ALV.HandleAllocated then
|
if not WSCheckHandleAllocated(ALV, 'ColumnSetAlignment') then
|
||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
@ -856,7 +859,7 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
HV: QHeaderViewH;
|
HV: QHeaderViewH;
|
||||||
begin
|
begin
|
||||||
if not ALV.HandleAllocated then
|
if not WSCheckHandleAllocated(ALV, 'ColumnSetAutoSize') then
|
||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
@ -865,7 +868,6 @@ begin
|
|||||||
QHeaderView_setResizeMode(HV, AIndex, QHeaderViewResizeToContents)
|
QHeaderView_setResizeMode(HV, AIndex, QHeaderViewResizeToContents)
|
||||||
else
|
else
|
||||||
QHeaderView_setResizeMode(HV, AIndex, QHeaderViewInteractive);
|
QHeaderView_setResizeMode(HV, AIndex, QHeaderViewInteractive);
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{------------------------------------------------------------------------------
|
{------------------------------------------------------------------------------
|
||||||
@ -879,8 +881,9 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
begin
|
begin
|
||||||
if not ALV.HandleAllocated then
|
if not WSCheckHandleAllocated(ALV, 'ColumnSetAutoSize') then
|
||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_headerItem(TW);
|
TWI := QTreeWidget_headerItem(TW);
|
||||||
if TWI <> NiL then
|
if TWI <> NiL then
|
||||||
@ -900,6 +903,8 @@ class procedure TQtWSCustomListView.ColumnSetImage(const ALV: TCustomListView; c
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
TWI: QTreeWidgetItemH;}
|
TWI: QTreeWidgetItemH;}
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'ColumnSetImage') then
|
||||||
|
Exit;
|
||||||
{$note review}
|
{$note review}
|
||||||
{ TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
{ TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_headerItem(TW);
|
TWI := QTreeWidget_headerItem(TW);
|
||||||
@ -920,8 +925,9 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
HV: QHeaderViewH;
|
HV: QHeaderViewH;
|
||||||
begin
|
begin
|
||||||
if not ALV.HandleAllocated then
|
if not WSCheckHandleAllocated(ALV, 'ColumnSetMinWidth') then
|
||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
HV := QTreeView_header(TW);
|
HV := QTreeView_header(TW);
|
||||||
QHeaderView_setMinimumSectionSize(HV, AMinWidth);
|
QHeaderView_setMinimumSectionSize(HV, AMinWidth);
|
||||||
@ -936,8 +942,9 @@ class procedure TQtWSCustomListView.ColumnSetWidth(const ALV: TCustomListView; c
|
|||||||
var
|
var
|
||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
begin
|
begin
|
||||||
if not ALV.HandleAllocated then
|
if not WSCheckHandleAllocated(ALV, 'ColumnSetWidth') then
|
||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
QTreeView_setColumnWidth(QTreeViewH(TW), AIndex, AWidth);
|
QTreeView_setColumnWidth(QTreeViewH(TW), AIndex, AWidth);
|
||||||
end;
|
end;
|
||||||
@ -951,8 +958,9 @@ class procedure TQtWSCustomListView.ColumnSetVisible(const ALV: TCustomListView;
|
|||||||
var
|
var
|
||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
begin
|
begin
|
||||||
if not ALV.HandleAllocated then
|
if not WSCheckHandleAllocated(ALV, 'ColumnSetVisible') then
|
||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
QTreeView_setColumnHidden(QTreeViewH(TW), AIndex, not AVisible);
|
QTreeView_setColumnHidden(QTreeViewH(TW), AIndex, not AVisible);
|
||||||
end;
|
end;
|
||||||
@ -967,6 +975,9 @@ class procedure TQtWSCustomListView.ItemDelete(const ALV: TCustomListView; const
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
TWI: QTreeWidgetItemH;}
|
TWI: QTreeWidgetItemH;}
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'ItemDelete') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
{ TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
{ TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_takeTopLevelItem(TW, AIndex);}
|
TWI := QTreeWidget_takeTopLevelItem(TW, AIndex);}
|
||||||
{$note implement}
|
{$note implement}
|
||||||
@ -983,6 +994,9 @@ var
|
|||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
AState: QtCheckState;
|
AState: QtCheckState;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'ItemGetChecked') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
||||||
AState := QTreeWidgetItem_checkState(TWI, 0);
|
AState := QTreeWidgetItem_checkState(TWI, 0);
|
||||||
@ -1003,6 +1017,9 @@ var
|
|||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
R: TRect;
|
R: TRect;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'ItemGetPosition') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
||||||
QTreeWidget_visualItemRect(TW, @R, TWI);
|
QTreeWidget_visualItemRect(TW, @R, TWI);
|
||||||
@ -1022,9 +1039,10 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'ItemGetState') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
|
|
||||||
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
||||||
|
|
||||||
case AState of
|
case AState of
|
||||||
@ -1048,6 +1066,9 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'ItemSetChecked') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
||||||
if AChecked then
|
if AChecked then
|
||||||
@ -1066,8 +1087,10 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
begin
|
begin
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
if not WSCheckHandleAllocated(ALV, 'ItemSetState') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
||||||
|
|
||||||
case AState of
|
case AState of
|
||||||
@ -1089,8 +1112,10 @@ var
|
|||||||
Str: WideString;
|
Str: WideString;
|
||||||
i: Integer;
|
i: Integer;
|
||||||
begin
|
begin
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
if not WSCheckHandleAllocated(ALV, 'ItemInsert') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidgetItem_create(TW, 0);
|
TWI := QTreeWidgetItem_create(TW, 0);
|
||||||
Str := UTF8Decode(AItem.Caption);
|
Str := UTF8Decode(AItem.Caption);
|
||||||
|
|
||||||
@ -1124,8 +1149,10 @@ var
|
|||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
Str: WideString;
|
Str: WideString;
|
||||||
begin
|
begin
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
if not WSCheckHandleAllocated(ALV, 'ItemSetText') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
Str := UTF8Decode(AText);
|
Str := UTF8Decode(AText);
|
||||||
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
||||||
if TWI <> NiL then
|
if TWI <> NiL then
|
||||||
@ -1142,6 +1169,9 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'ItemShow') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
||||||
QTreeWidget_setItemHidden(TW, TWI, False);
|
QTreeWidget_setItemHidden(TW, TWI, False);
|
||||||
@ -1158,6 +1188,9 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'ItemDisplayRect') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
TWI := QTreeWidget_topLevelItem(TW, AIndex);
|
||||||
if QTreeWidgetItem_childCount(TWI) > 0 then
|
if QTreeWidgetItem_childCount(TWI) > 0 then
|
||||||
@ -1177,6 +1210,9 @@ var
|
|||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
i: Integer;
|
i: Integer;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'GetFocused') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_currentItem(TW);
|
TWI := QTreeWidget_currentItem(TW);
|
||||||
i := QTreeWidget_indexOfTopLevelItem(TW, TWI);
|
i := QTreeWidget_indexOfTopLevelItem(TW, TWI);
|
||||||
@ -1196,6 +1232,9 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
TWI: QTreeWidgetItemH;
|
TWI: QTreeWidgetItemH;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'GetItemAt') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
TWI := QTreeWidget_itemAt(TW, x, y);
|
TWI := QTreeWidget_itemAt(TW, x, y);
|
||||||
Result := QTreeWidget_indexOfTopLevelItem(TW, TWI);
|
Result := QTreeWidget_indexOfTopLevelItem(TW, TWI);
|
||||||
@ -1211,6 +1250,9 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
FPInts: TIntArray;
|
FPInts: TIntArray;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'GetSelCount') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
QTreeWidget_selectedItems(TW, @FPInts);
|
QTreeWidget_selectedItems(TW, @FPInts);
|
||||||
Result := length(FPInts);
|
Result := length(FPInts);
|
||||||
@ -1226,6 +1268,9 @@ var
|
|||||||
TW: QTreeWidgetH;
|
TW: QTreeWidgetH;
|
||||||
FPInts: TIntArray;
|
FPInts: TIntArray;
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'GetSelection') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
{implement selection event so we can return Alv.Selected.Index}
|
{implement selection event so we can return Alv.Selected.Index}
|
||||||
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);
|
||||||
QTreeWidget_selectedItems(TW, @FPInts);
|
QTreeWidget_selectedItems(TW, @FPInts);
|
||||||
@ -1244,6 +1289,9 @@ class procedure TQtWSCustomListView.SetSort(const ALV: TCustomListView; const AT
|
|||||||
{var
|
{var
|
||||||
TW: QTreeWidgetH;}
|
TW: QTreeWidgetH;}
|
||||||
begin
|
begin
|
||||||
|
if not WSCheckHandleAllocated(ALV, 'SetSort') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
{TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);}
|
{TW := QTreeWidgetH(TQtTreeWidget(ALV.Handle).Widget);}
|
||||||
if AType <> stNone then
|
if AType <> stNone then
|
||||||
begin
|
begin
|
||||||
@ -1260,7 +1308,10 @@ end;
|
|||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
class function TQtWSCustomListView.GetBoundingRect(const ALV: TCustomListView): TRect;
|
class function TQtWSCustomListView.GetBoundingRect(const ALV: TCustomListView): TRect;
|
||||||
begin
|
begin
|
||||||
QWidget_frameGeometry(TQtWidget(ALV.Handle).Widget, @Result);
|
if not WSCheckHandleAllocated(ALV, 'GetBoundingRect') then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
Result := TQtWidget(ALV.Handle).getFrameGeometry;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
initialization
|
initialization
|
||||||
|
Loading…
Reference in New Issue
Block a user