This does not happen often but sometimes the compiler identifies a faulty code line, but displays the marker on a different line.



Code: Select all
OpenWindow(0,0,0,400,400,"")
EditorGadget(1,10,10,50,30)
Repeat
Event = WaitWindowEvent()
Select Event
Case #PB_Event_Gadget
SetGadgetText(1,"Синий")
Debug "Somehow it includes cycle"
EndSelect
Until Event = #PB_Event_CloseWindow
End

It is not true.You get a loop because always a #PB_EventType_Change is produced.
Code: Select all
OpenWindow(0,0,0,400,400,"")
EditorGadget(1,10,10,50,30)
EditorGadget(2,110,110,50,30)
; The following events are supported through EventType():
; 768 #PB_EventType_Change : the Text has been modified by the user.
; 14000 #PB_EventType_Focus : the editor has got the focus.
; 14001 #PB_EventType_LostFocus: the editor has lost the focus.
Debug #PB_EventType_LostFocus
Repeat
Event = WaitWindowEvent()
Select Event
Case #PB_Event_Gadget
Debug "Somehow it includes cycle "+EventType() ; 1024 Why?????????????????????
SetGadgetText(1,"Blue")
; Select EventType()
; Case #PB_EventType_Change
; Select EventGadget()
; Case 1
; SetGadgetText(1,"Blue")
; Case 2
; SetGadgetText(2,"Red")
; EndSelect
; EndSelect
Debug "Somehow it includes cycle "+EventGadget()
EndSelect
Until Event = #PB_Event_CloseWindow
EndCode: Select all
OpenWindow(0,0,0,400,400,"")
EditorGadget(1,10,10,50,30)
ButtonGadget(2,110,110,80,30, "SetText")
Repeat
Event = WaitWindowEvent()
Select Event
Case #PB_Event_Gadget
Select EventGadget()
Case 1
Debug "EditorGadget event: " + Str(EventType())
Select EventType()
Case #PB_EventType_Change
Debug "Changed"
Case #PB_EventType_Focus
Debug "Focus"
Case #PB_EventType_LostFocus
Debug "LostFocus"
EndSelect
Case 2
SetGadgetText(1,"Test")
EndSelect
EndSelect
Until Event = #PB_Event_CloseWindow
End