Code: Select all
CreateImage(0,64,64,32)
OpenWindow(0, 0, 0, 200, 105, "ImageGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
ImageGadget(1, 60, 10, 100, 83, ImageID(0), #PB_Image_Border)
Repeat
ev = WaitWindowEvent()
Select ev
Case #PB_Event_Gadget
gadget = EventGadget()
Select EventType()
Case #PB_EventType_LeftClick
detectedevent = #PB_EventType_LeftClick ; Start with single click but don't report yet
;
; Enter wait state to see if it'll change to a doubleclick event
start = ElapsedMilliseconds()
Repeat
tmp = WaitWindowEvent(1)
If tmp = #PB_Event_Gadget And EventGadget() = gadget
If EventType() = #PB_EventType_LeftDoubleClick
detectedevent = #PB_EventType_LeftDoubleClick
Break ; Got the changed event, no need to keep waiting
EndIf
EndIf
Until ElapsedMilliseconds()-start >= GetDoubleClickTime_()/3*2
;
Debug detectedevent ; 0=single, 2=double
EndSelect
EndSelect
Until ev = #PB_Event_CloseWindow