Enumerate Gadgets
Posted: Sat Dec 31, 2016 3:31 am
Happy New Year everybody
Edit :Modified
Code: Select all
CompilerIf #PB_Compiler_OS = #PB_OS_Windows
Import ""
CompilerElse
ImportC ""
CompilerEndIf
PB_Object_EnumerateStart(*object)
PB_Object_EnumerateNext(*object,*id.Integer)
PB_Object_EnumerateAbort(*object)
PB_Gadget_Objects.i
PB_Image_Objects.i
EndImport
Procedure EnumerateGadget()
PB_Object_EnumerateStart(PB_Image_Objects)
While PB_Object_EnumerateNext(PB_Image_Objects, @im)
AddGadgetItem(23,-1, "Image ID : "+Str(im ))
AddGadgetItem(23,-1, "Image Handle : "+ImageID(im))
AddGadgetItem(23,-1, "*************")
Wend
PB_Object_EnumerateAbort(*object)
PB_Object_EnumerateStart(PB_Gadget_Objects)
While PB_Object_EnumerateNext(PB_Gadget_Objects, @id)
AddGadgetItem(23,-1, "Gadget ID : "+Str(id ))
Select GadgetType(id)
Case #PB_GadgetType_Button :AddGadgetItem(23,-1, "GadgetType : ButtonGadget()")
Case #PB_GadgetType_ButtonImage :AddGadgetItem(23,-1, "GadgetType : ButtonImageGadget()")
Case #PB_GadgetType_Calendar :AddGadgetItem(23,-1, "GadgetType : CalendarGadget()")
Case #PB_GadgetType_Canvas :AddGadgetItem(23,-1, "GadgetType : CanvasGadget()")
Case #PB_GadgetType_CheckBox :AddGadgetItem(23,-1, "GadgetType : CheckBoxGadget()")
Case #PB_GadgetType_ComboBox :AddGadgetItem(23,-1, "GadgetType : ComboBoxGadget()")
Case #PB_GadgetType_Container :AddGadgetItem(23,-1, "GadgetType : ContainerGadget()")
Case #PB_GadgetType_Date :AddGadgetItem(23,-1, "GadgetType : DateGadget()")
Case #PB_GadgetType_Editor :AddGadgetItem(23,-1, "GadgetType : EditorGadget()")
Case #PB_GadgetType_ExplorerCombo :AddGadgetItem(23,-1, "GadgetType : ExplorerComboGadget()")
Case #PB_GadgetType_ExplorerList :AddGadgetItem(23,-1, "GadgetType : ExplorerListGadget()")
Case #PB_GadgetType_ExplorerTree :AddGadgetItem(23,-1, "GadgetType : ExplorerTreeGadget()")
Case #PB_GadgetType_Frame :AddGadgetItem(23,-1, "GadgetType : FrameGadget()")
Case #PB_GadgetType_HyperLink :AddGadgetItem(23,-1, "GadgetType : HyperLinkGadget()")
Case #PB_GadgetType_Image :AddGadgetItem(23,-1, "GadgetType : ImageGadget()")
Case #PB_GadgetType_IPAddress :AddGadgetItem(23,-1, "GadgetType : IPAddressGadget()")
Case #PB_GadgetType_ListIcon :AddGadgetItem(23,-1, "GadgetType : ListIconGadget()")
Case #PB_GadgetType_ListView :AddGadgetItem(23,-1, "GadgetType : ListViewGadget()")
Case #PB_GadgetType_MDI :AddGadgetItem(23,-1, "GadgetType : MDIGadget()")
Case #PB_GadgetType_Option :AddGadgetItem(23,-1, "GadgetType : OptionGadget()")
Case #PB_GadgetType_Panel :AddGadgetItem(23,-1, "GadgetType : PanelGadget()")
Case #PB_GadgetType_ProgressBar :AddGadgetItem(23,-1, "GadgetType : ProgressBarGadget()")
Case #PB_GadgetType_Scintilla :AddGadgetItem(23,-1, "GadgetType : ScintillaGadget()")
Case #PB_GadgetType_ScrollArea :AddGadgetItem(23,-1, "GadgetType : ScrollAreaGadget()")
Case #PB_GadgetType_ScrollBar :AddGadgetItem(23,-1, "GadgetType : ScrollBarGadget()")
Case #PB_GadgetType_Shortcut :AddGadgetItem(23,-1, "GadgetType : ShortcutGadget()")
Case #PB_GadgetType_Spin :AddGadgetItem(23,-1, "GadgetType : SpinGadget()")
Case #PB_GadgetType_Splitter :AddGadgetItem(23,-1, "GadgetType : SplitterGadget()")
Case #PB_GadgetType_String :AddGadgetItem(23,-1, "GadgetType : StringGadget()")
Case #PB_GadgetType_Text :AddGadgetItem(23,-1, "GadgetType : TextGadget()")
Case #PB_GadgetType_TrackBar :AddGadgetItem(23,-1, "GadgetType : TrackBarGadget()")
Case #PB_GadgetType_Tree :AddGadgetItem(23,-1, "GadgetType : TreeGadget()")
Case #PB_GadgetType_Web :AddGadgetItem(23,-1, "GadgetType : WebGadget()")
EndSelect
AddGadgetItem(23,-1, "*************")
Wend
PB_Object_EnumerateAbort(*object)
EndProcedure
LoadImage(0, #PB_Compiler_Home + "Examples\Sources\Data\GeeBee2.bmp")
LoadImage(1, #PB_Compiler_Home + "Examples\Sources\Data\PureBasicLogo.bmp")
OpenWindow(0, 0, 0, 800, 600, "Enumurate Gadgets",#PB_Window_SystemMenu| #PB_Window_ScreenCentered |#PB_Window_Invisible)
ButtonGadget(10, 10, 10, 100, 20 , "Click to Enumerate")
ButtonImageGadget(12, 400, 10, 100, 90 ,ImageID(0))
ComboBoxGadget(14, 510, 10, 250, 20, #PB_ComboBox_Editable)
CheckBoxGadget(16, 510, 30, 250, 20, "CheckBox standard")
OptionGadget(18, 510, 50, 60, 20, "Option 1")
OptionGadget(19, 510, 70, 60, 20, "Option 2")
OptionGadget(20, 510, 90, 60, 20, "Option 3")
EditorGadget(23, 10, 40, 380, 540 )
SetGadgetColor(23,#PB_Gadget_BackColor,$DCFEFE)
SetGadgetColor(23,#PB_Gadget_FrontColor,$F1000C)
ContainerGadget(26,400,110,800,470)
CalendarGadget(28, 0, 0, 230, 180)
WebGadget(30, 0, 190, 380, 400, "http://www.purebasic.com")
CloseGadgetList()
While WindowEvent() : Wend
HideWindow(0,0)
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Quit = 1
Case #PB_Event_Gadget
Select EventGadget()
Case 10
EnumerateGadget()
EndSelect
EndSelect
Until Quit = 1