Qt: TQtComboBox, no more unnecessary removeItem() insertItem(), now we use setItemText() in qtprivate.TQtComboStrings.Put().

git-svn-id: trunk@16416 -
This commit is contained in:
zeljko 2008-09-04 18:18:48 +00:00
parent 9f570dee58
commit bdff789799
2 changed files with 14 additions and 3 deletions

View File

@ -401,9 +401,7 @@ end;
procedure TQtComboStrings.Put(Index: Integer; const S: string);
begin
inherited Put(Index, S);
FOwner.removeItem(Index);
FOwner.insertItem(Index, S);
FOwner.setItemText(Index, S);
end;
procedure TQtComboStrings.InsertItem(Index: Integer; const S: string);

View File

@ -695,6 +695,7 @@ type
procedure setCurrentIndex(index: Integer);
procedure setMaxVisibleItems(ACount: Integer);
procedure setEditable(const AValue: Boolean);
procedure setItemText(AIndex: Integer; AText: String);
procedure setText(const W: WideString); override;
procedure removeItem(AIndex: Integer);
@ -5833,6 +5834,18 @@ begin
end;
end;
procedure TQtComboBox.setItemText(AIndex: Integer; AText: String);
var
Str: WideString;
begin
if (AIndex >= 0) and (AIndex < QComboBox_count(QComboBoxH(Widget))) then
begin
Str := GetUTF8String(AText);
QComboBox_setItemText(QComboBoxH(Widget), AIndex, @Str);
end else
insertItem(AIndex, AText);
end;
procedure TQtComboBox.setText(const W: WideString);
begin
if FLineEdit = nil then