Page 1 of 1

Setting and Getting GadgetITemData on a ListIconGadget

Posted: Fri Apr 12, 2024 8:07 pm
by tikidays
Hi, SETGADGETITEMDATA and GETGADGETITEMDATA dont appear to work with ListIconGadget, see example below, why is this not working? I've tried this with 6.03 LTS Windows 11 and 6.10 LTS - C Backend (MacOS X - arm64), the manual says it should support this.

Code: Select all

; Shows possible flags of ListIconGadget in action...
  If OpenWindow(0, 0, 0, 700, 300, "ListIconGadgets", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    ; left column
    TextGadget    (6,  10,  10, 330, 20, "ListIcon Standard", #PB_Text_Center)
    ListIconGadget(0,  10,  25, 330, 70, "Column 1", 100)
    TextGadget    (7,  10, 105, 330, 20, "ListIcon with Checkbox", #PB_Text_Center)
    ListIconGadget(1,  10, 120, 330, 70, "Column 1", 100, #PB_ListIcon_CheckBoxes)  ; ListIcon with checkbox
    TextGadget    (8,  10, 200, 330, 20, "ListIcon with Multi-Selection", #PB_Text_Center)
    ListIconGadget(2,  10, 215, 330, 70, "Column 1", 100, #PB_ListIcon_MultiSelect) ; ListIcon with multi-selection
    ; right column
    TextGadget    (9, 360,  10, 330, 20, "ListIcon with separator lines",#PB_Text_Center)
    ListIconGadget(3, 360,  25, 330, 70, "Column 1", 100, #PB_ListIcon_GridLines)
    TextGadget   (10, 360, 105, 330, 20, "ListIcon with FullRowSelect and AlwaysShowSelection",#PB_Text_Center)
    ListIconGadget(4, 360, 120, 330, 70, "Column 1", 100, #PB_ListIcon_FullRowSelect | #PB_ListIcon_AlwaysShowSelection)
    TextGadget   (11, 360, 200, 330, 20, "ListIcon Standard with large icons",#PB_Text_Center)
    ListIconGadget(5, 360, 220, 330, 65, "", 200,#PB_ListIcon_GridLines)
    For a = 0 To 4            ; add columns to each of the first 5 listicons
      For b = 2 To 4          ; add 3 more columns to each listicon
        AddGadgetColumn(a, b, "Column " + Str(b), 65)
      Next
      For b = 0 To 2          ; add 4 items to each line of the listicons
        AddGadgetItem(a, b, "Item 1"+Chr(10)+"Item 2"+Chr(10)+"Item 3"+Chr(10)+"Item 4")
      Next
    Next
   
    ; Here we change the ListIcon display to large icons and show an image
    If LoadImage(0, #PB_Compiler_Home+"examples/sources/Data/File.bmp")     ; change path/filename to your own 32x32 pixel image
      SetGadgetAttribute(5, #PB_ListIcon_DisplayMode, #PB_ListIcon_LargeIcon)
      AddGadgetItem(5, 1, "Picture 1", ImageID(0))
      AddGadgetItem(5, 2, "Picture 2", ImageID(0))
      SetGadgetItemData(5,2,1234)  ; <<<< Setting to 1234
    EndIf
    
    Debug GetGadgetItemData(5,2) ; <<<< Why is this zero?
    
    Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
  EndIf

Re: Setting and Getting GadgetITemData on a ListIconGadget

Posted: Fri Apr 12, 2024 8:30 pm
by HeX0R
There is no item at index 2, therefore nothing will be set!
AddGadgetItem(5, 1, "Picture 1", ImageID(0)) on an empty List will NOT add it to position 1, but to position 0

Re: Setting and Getting GadgetITemData on a ListIconGadget

Posted: Fri Apr 12, 2024 10:32 pm
by infratec
What HeXOR mean:

Code: Select all

If LoadImage(0, #PB_Compiler_Home+"examples/sources/Data/File.bmp")     ; change path/filename to your own 32x32 pixel image
      SetGadgetAttribute(5, #PB_ListIcon_DisplayMode, #PB_ListIcon_LargeIcon)
      AddGadgetItem(5, 0, "Picture 1", ImageID(0))
      AddGadgetItem(5, 1, "Picture 2", ImageID(0))
      SetGadgetItemData(5,1,1234)  ; <<<< Setting to 1234
    EndIf
    
    Debug GetGadgetItemData(5,1)

Re: Setting and Getting GadgetITemData on a ListIconGadget

Posted: Sat Apr 13, 2024 3:50 am
by tikidays
Odd This was copied as is from the Help example, I only added the SET and GET... so it has incorrectly got 1 and 2 instead of 0 and 1?

Re: Setting and Getting GadgetITemData on a ListIconGadget

Posted: Sat Apr 13, 2024 9:18 am
by infratec

Re: Setting and Getting GadgetITemData on a ListIconGadget

Posted: Sun Apr 14, 2024 1:12 pm
by charvista
We all have nine fingers. The first one is the zeroth one. :o
At school, we learned to count from one, not from zero.... hence the confusion. :mrgreen:

Re: Setting and Getting GadgetITemData on a ListIconGadget

Posted: Sun Apr 14, 2024 1:34 pm
by BarryG
charvista wrote: Sun Apr 14, 2024 1:12 pmAt school, we learned to count from one, not from zero
Reminds me of this -> https://youtu.be/76J3mHnHHOE?si=loTImLs-VuU0YJeE&t=89 :mrgreen:

Re: Setting and Getting GadgetITemData on a ListIconGadget

Posted: Sun Apr 14, 2024 3:34 pm
by mk-soft
I have 11 fingers ...

left side. 10, 9, 8, 7, 6 and right side 5, together 11 8)