Code: Alles auswählen
;======= Set/GetGadgetItemData for Panel ==================
; Author: Thomas Schulz (ts-soft)
; Date: December 19, 2010
; Target OS: All
; Target Compiler: Requires PureBasic 4.50
;==========================================================
EnableExplicit
Structure _PanelGadgetItem_
Map Item.i()
EndStructure
NewMap _PanelItemData_._PanelGadgetItem_()
Procedure _SetGadgetItemData(Gadget, Item, Value)
Shared _PanelItemData_._PanelGadgetItem_()
If GadgetType(Gadget) = #PB_GadgetType_Panel
_PanelItemData_(Str(Gadget))\Item(Str(Item)) = Value
Else
ProcedureReturn SetGadgetItemData(Gadget, Item, Value)
EndIf
EndProcedure
Procedure _GetGadgetItemData(Gadget, Item)
Shared _PanelItemData_._PanelGadgetItem_()
If GadgetType(Gadget) = #PB_GadgetType_Panel
ProcedureReturn _PanelItemData_(Str(Gadget))\Item(Str(Item))
Else
ProcedureReturn GetGadgetItemData(Gadget, Item)
EndIf
EndProcedure
Macro SetGadgetItemData(Gadget, Item, Value)
_SetGadgetItemData(Gadget, Item, Value)
EndMacro
Macro GetGadgetItemData(Gadget, Item)
_GetGadgetItemData(Gadget, Item)
EndMacro
Procedure DeletePanelGadgetItemData(Gadget)
Shared _PanelItemData_._PanelGadgetItem_()
ClearMap(_PanelItemData_(Str(Gadget))\Item())
DeleteMapElement(_PanelItemData_(), Str(Gadget))
EndProcedure
Gruß
Thomas