I decided to write this small code to help me identify each.
It may seem silly, but the truth is that it is very useful when there are many details involved. Hope will be as useful as it has been to me.
Code: Select all
;// MiniHelpGadget. Toni 2013
;// For free use, no limits, no demo, north? ;-)
;//
Structure tipo
Gadget.l
Name.s
EndStructure
Global NewList GadgetHelp.tipo()
Procedure AddGadgetHelp(Gadget.l,Name.s)
AddElement(GadgetHelp())
GadgetHelp()\Gadget = Gadget
GadgetHelp()\Name = Name
ProcedureReturn Gadget
EndProcedure
Procedure FindGadgetNumberHelp(Name.s)
Protected Gadget.l = -1
ForEach GadgetHelp()
If Mode = 1
If LCase(GadgetHelp()\Name) = LCase(Name)
Gadget = GadgetHelp()\Gadget
EndIf
Else
If GadgetHelp()\Name = Name
Gadget = GadgetHelp()\Gadget
EndIf
EndIf
Next
ProcedureReturn Gadget
EndProcedure
Procedure.s FindGadgetNameHelp(Gadget.l)
Protected Name.s = ""
ForEach GadgetHelp()
If GadgetHelp()\Gadget = Gadget
Name = GadgetHelp()\Name
EndIf
Next
ProcedureReturn Name
EndProcedure
Global Window_0
Global Button_0
Define.l Event, EventWindow, EventGadget, EventType, EventMenu
Procedure OpenWindow_Window_0()
Window_0 = OpenWindow(#PB_Any, 495, 221, 400, 309, "GadgetHelp by Toni", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
If Window_0
Button_0 = AddGadgetHelp(ButtonGadget(#PB_Any, 5, 10, 75, 25, "Stop"), "Button stop")
Button_1 = AddGadgetHelp(ButtonGadget(#PB_Any, 5, 40, 75, 25, "Play"), "Button play")
Button_2 = AddGadgetHelp(ButtonGadget(#PB_Any, 5, 70, 75, 25, "Hello"),"Button hello")
Button_3 = AddGadgetHelp(ButtonGadget(#PB_Any, 5, 100, 75, 25, "Bye!"), "Button exit")
EndIf
EndProcedure
CompilerIf Not #PB_Compiler_IsIncludeFile ; when not is include, run the next code
OpenWindow_Window_0()
Repeat
Event = WaitWindowEvent(1)
Select Event
Case #PB_Event_Gadget
EventGadget = EventGadget()
EventType = EventType()
If GadgetType(EventGadget) = #PB_GadgetType_Button
Name$=FindGadgetNameHelp(EventGadget)
MessageRequester("GadgetHelp","Gadget name: "+Name$+Chr(13)+"Gadget Nº : "+FindGadgetNumberHelp(Name$))
EndIf
Case #PB_Event_CloseWindow
EventWindow = EventWindow()
If EventWindow = Window_0
CloseWindow(Window_0)
Window_0 = 0
Break
EndIf
EndSelect
ForEver
CompilerEndIf