Page 1 of 1

Unexpected BindGadgetEvent() callback

Posted: Tue Feb 28, 2023 6:27 am
by Comfort
Is this a feature or an annoyance?

Code: Select all

Procedure Test()
  If GetGadgetText(EventGadget()) = "Binded Button"
    MessageRequester("Button Test","As it should be!")
    FreeGadget(0)
    UnbindedButton = ButtonGadget(0, 10, 10, 200, 20, "Unbinded Button")
  Else
    MessageRequester("Button Test","Not expected."+Chr(13)+Chr(13)+"UnbindGadgetEvent() needs to be called before freeing it.")
  EndIf  
EndProcedure

If OpenWindow(0, 0, 0, 222, 200, "Button Bind Check", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  BindedButton = ButtonGadget(0, 10, 10, 200, 20, "Binded Button")
  BindGadgetEvent(0, @Test())
  Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf

Re: Unexpected BindGadgetEvent() callback

Posted: Tue Feb 28, 2023 7:27 am
by PeDe
The behavior has changed with PB v6.01b4, no second message box appears.
Tested with Windows 7 32-bit, PB 5.73/6.01b4

Re: Unexpected BindGadgetEvent() callback

Posted: Tue Feb 28, 2023 8:58 am
by mk-soft
Fixed with PB v6.01 Beta 4. This means that UnbindGadgetEvent no longer has to be called for FreeGadget. Now cleans up PB internally automatically.
Was once reported as a bug.

Re: Unexpected BindGadgetEvent() callback

Posted: Tue Feb 28, 2023 10:38 am
by Comfort
So, not a feature then.

Thanks.