I'm just looking for an explanation as to why '[ERROR] There is no current GadgetList' occurs when Help button is clicked prior to a number button being clicked.
Code: Select all
DTops=ExamineDesktops()
Global DWx=DesktopWidth(0)/2
Global DHy=DesktopHeight(0)/2
If OpenWindow(0, 0, 0, DWx, DHy, "", #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered) = 0
MessageRequester("Error", "Can't open window", 0)
End
EndIf
Procedure ShowHelp()
If OpenWindow(1, 0, 0, DWx, DHy, "Help", #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered) = 0
MessageRequester("Error", "Can't open help window", 0)
End
EndIf
EditorGadget(30, 10, 10, DWx-20, DHy-20, #PB_Editor_ReadOnly | #PB_Editor_WordWrap)
AddGadgetItem(30, -1, "")
AddGadgetItem(30, -1, "Help")
AddGadgetItem(30, -1, "")
Repeat
Event = WaitWindowEvent()
Select Event
Case #PB_Event_CloseWindow
CloseWindow(1)
ProcedureReturn
EndSelect
ForEver
EndProcedure
Procedure Startup()
TextGadget(0, 10, 10, DWx-20, 60, "")
SetGadgetText(0, "Pick a number 1,2 or 3")
ButtonGadget(1, 72, 80, 40, 40, "1")
ButtonGadget(2, 114, 80, 40, 40, "2")
ButtonGadget(3, 156, 80, 40, 40, "3")
ButtonGadget(4, 10, 80, 60, 40, "Help")
Repeat
PickNumber = 0
Event = WaitWindowEvent(1000)
Select Event
Case #PB_Event_CloseWindow
End
Case #PB_Event_Gadget
PickNumber = EventGadget()
EndSelect
If PickNumber = 4
ShowHelp()
PickNumber = 0
EndIf
Until PickNumber > 0
SetGadgetText(0, "Do you want gravy?")
; [ERROR] There is no current GadgetList. Occurs if Help clicked prior to a number.
ButtonGadget(5, 10, 130, 60, 40, "Yes")
ButtonGadget(6, 72, 130, 60, 40, "No")
Repeat
WantGravy = 0
Event = WaitWindowEvent(1000)
Select Event
Case #PB_Event_CloseWindow
End
Case #PB_Event_Gadget
WantGravy = EventGadget()
EndSelect
Until WantGravy > 0
SetGadgetText(0, "")
EndProcedure
Startup()
End