mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-12-06 01:57:16 +01:00
Cocoa: fix TComboBoxEx.ItemIndex always return 0
This commit is contained in:
parent
22df40bcce
commit
fa35acd164
@ -323,6 +323,7 @@ type
|
||||
|
||||
isOwnerDrawn: Boolean;
|
||||
isOwnerMeasure: Boolean;
|
||||
isComboBoxEx: Boolean;
|
||||
function acceptsFirstResponder: LCLObjCBoolean; override;
|
||||
procedure dealloc; override;
|
||||
function lclGetCallback: ICommonCallback; override;
|
||||
@ -491,7 +492,13 @@ begin
|
||||
mn := FOwner.itemAtIndex(Index);
|
||||
if not Assigned(mn) then Exit;
|
||||
|
||||
astr := NSStringUtf8(S);
|
||||
// for TComboBoxEx, the parameter S passed in is always emtpy,
|
||||
// and NSPopUpButton always automatically sets the itemIndex according to
|
||||
// the title, so a unique title needs to be set.
|
||||
if not FOwner.isComboBoxEx then
|
||||
astr := NSStringUtf8(S)
|
||||
else
|
||||
astr := NSStringUtf8(Index.ToString);
|
||||
mn.setTitle(astr);
|
||||
astr.release;
|
||||
|
||||
|
||||
@ -1880,6 +1880,7 @@ begin
|
||||
begin
|
||||
rocmb := NSView(TCocoaReadOnlyComboBox.alloc).lclInitWithCreateParams(AParams);
|
||||
if not Assigned(rocmb) then Exit;
|
||||
rocmb.isComboBoxEx:= not (AWinControl is TComboBox);
|
||||
rocmb.list:=TCocoaReadOnlyComboBoxList.Create(rocmb);
|
||||
rocmb.setTarget(rocmb);
|
||||
rocmb.setAction(objcselector('comboboxAction:'));
|
||||
|
||||
Loading…
Reference in New Issue
Block a user