Click on gadget
Quote:
[13:20:09] [ERROR] *** -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0]
Code:
OpenWindow(0, 0, 0, 200, 200, "ComboBox macOS")
ComboBoxGadget(0, 5, 5, 190, 24)
SetGadgetFont(0, #PB_Default)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
Workaround
Code:
;-TOP
; Comment: Fix Set default font on macOS
; Version: v1.0.0
; Author : mk-soft
; Create : 1.1.2021
CompilerIf #PB_Compiler_OS = #PB_OS_MacOS
Macro _PB_(Function)
Function
EndMacro
Procedure FixSetGadgetFont(Gadget, FontID)
Static SystemFontID
Protected FontSize.CGFloat
If FontID = #PB_Default
If Not SystemFontID
CocoaMessage(@FontSize, 0, "NSFont systemFontSize") : FontSize - 1
SystemFontID = CocoaMessage(0, 0, "NSFont systemFontOfSize:@", @FontSize)
EndIf
_PB_(SetGadgetFont)(Gadget, SystemFontID)
Else
_PB_(SetGadgetFont)(Gadget, FontID)
EndIf
EndProcedure
Macro SetGadgetFont(Gadget, FontID)
FixSetGadgetFont(Gadget, FontID)
EndMacro
CompilerEndIf
; ****
CompilerIf #PB_Compiler_IsMainFile
OpenWindow(0, 0, 0, 200, 200, "ComboBox macOS")
ComboBoxGadget(0, 5, 5, 190, 30, #PB_ComboBox_Editable)
StringGadget(1, 5, 40, 190, 30, "Item 1")
AddGadgetItem(0, -1, "Item 1")
AddGadgetItem(0, -1, "Item 2")
SetGadgetFont(0, #PB_Default)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
CompilerEndIf