Posted: Sat Mar 01, 2008 8:47 pm
Try using a virtual (list-view) ListIconGadget with #LVS_OWNERDATA and #LVN_GETDISPINFO. They can be quite fast when using thousands of items. 

http://www.purebasic.com
https://www.purebasic.fr/english/
Yes, I use a #WM_SETREDRAW before and after the list is populated. Populating the list is fast on both machines, it seems to just freeze after the list is populated (on slower computers). This is why I just want to know how I can use the windows api to get the top visible item in the list, and the amount per page. There should be an elegant way of doing this, unless I'm mistaken.. #LVM_GETCOUNTPERPAGE and #LVM_GETTOPINDEX only seems to work for normal lists without icons.Fluid Byte wrote:By the way, do you disable redrawing before you add the items?
Could you be a little more specific? I've never used virtual lists.Sparkie wrote:Try using a virtual (list-view) ListIconGadget with #LVS_OWNERDATA and #LVN_GETDISPINFO. They can be quite fast when using thousands of items.
Code: Select all
;... We'll use 10000 items
#ItemCount = 10000
#LVSICF_NOINVALIDATEALL = 1
UsePNGImageDecoder()
img0 = CatchImage(0, ?myImage)
;... Array to hold data
Global Dim myItems.s(#ItemCount)
Procedure MainProc(hwnd, msg, wParam, lParam)
result = #PB_ProcessPureBasicEvents
Select msg
Case #WM_NOTIFY
*pnmh.NMHDR = lParam
Select *pnmh\code
Case #LVN_GETDISPINFO
*pnmlvdi.NMLVDISPINFO = lParam
If *pnmlvdi\item\mask & #LVIF_IMAGE
;... Image info is being requested
*pnmlvdi\item\iImage = *pnmlvdi\item\iItem
EndIf
If *pnmlvdi\item\mask & #LVIF_TEXT
;... Item text is being requested
*pnmlvdi\item\pszText = @myItems(*pnmlvdi\item\iItem)
EndIf
EndSelect
EndSelect
ProcedureReturn result
EndProcedure
If OpenWindow(0, 100, 100, 300, 300, "Virtual ListIconGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0))
SetWindowCallback(@MainProc())
CreateStatusBar(0, WindowID(0))
AddStatusBarField(300)
ListIconGadget(1, 5, 5, 290, 250, "Item", 290, #LVS_OWNERDATA)
;... Set desired number of ListIconGdaget items
SendMessage_(GadgetID(1), #LVM_SETITEMCOUNT, #ItemCount, #LVSICF_NOINVALIDATEALL)
;... Create our ImageList
imgList = ImageList_Create_(32, 32, #ILC_COLOR32, 0, #ItemCount)
For i = 0 To #ItemCount - 1
;... Add item text to our array
myItems(i) = "Otis Number " + Str(i)
SetGadgetItemText(1, i, myItems(i))
;... Add out image to the ImageList
ImageList_Add_(imgList, img0, 0)
Next
;... Assign our ImageList top the ListIconGadget
SendMessage_(GadgetID(1), #LVM_SETIMAGELIST, #LVSIL_SMALL, imgList)
Repeat
event = WaitWindowEvent()
If event = #PB_Event_Gadget And EventGadget() = 1
selectedItem = GetGadgetState(1)
GetGadgetItemText(1, selectedItem)
StatusBarText(0, 0, GetGadgetItemText(1, selectedItem) + " is selected")
EndIf
Until event = #PB_Event_CloseWindow
EndIf
DataSection
myImage:
Data.b $89,$50,$4E,$47,$0D,$0A,$1A,$0A,$00,$00,$00,$0D,$49,$48,$44,$52
Data.b $00,$00,$00,$20,$00,$00,$00,$20,$08,$02,$00,$00,$00,$FC,$18,$ED
Data.b $A3,$00,$00,$00,$09,$70,$48,$59,$73,$00,$00,$0E,$C3,$00,$00,$0E
Data.b $C3,$01,$C7,$6F,$A8,$64,$00,$00,$0B,$64,$49,$44,$41,$54,$78,$9C
Data.b $4D,$94,$69,$50,$5B,$D7,$19,$86,$F5,$D3,$69,$83,$59,$6D,$90,$10
Data.b $20,$B4,$EF,$42,$BA,$92,$D0,$72,$A5,$AB,$7D,$BD,$DA,$D0,$2E,$24
Data.b $B4,$83,$10,$02,$49,$06,$CC,$16,$08,$98,$C5,$32,$C6,$2C,$5E,$B1
Data.b $1D,$EC,$30,$26,$5E,$82,$ED,$86,$C4,$89,$71,$5C,$2F,$6D,$DD,$A6
Data.b $93,$AD,$99,$24,$4D,$D2,$71,$F7,$36,$6D,$33,$89,$DB,$A6,$CB,$74
Data.b $5A,$C7,$69,$0F,$9D,$FE,$E8,$99,$67,$BE,$B9,$F7,$CF,$FB,$9E,$F7
Data.b $FB,$CE,$39,$98,$5C,$3E,$DF,$9B,$CF,$17,$FB,$FB,$87,$46,$47,$27
Data.b $26,$A7,$66,$E6,$4A,$B3,$A5,$D2,$5C,$69,$7E,$7A,$6E,$0E,$7C,$E7
Data.b $0B,$45,$2B,$9F,$33,$58,$48,$7A,$9D,$1A,$EC,$9E,$B2,$26,$5C,$25
Data.b $A1,$7E,$87,$66,$7C,$25,$11,$5F,$49,$C0,$57,$36,$60,$CB,$1B,$B1
Data.b $E5,$B8,$BD,$65,$B8,$3D,$DF,$AC,$A9,$FC,$46,$33,$AE,$82,$55,$5F
Data.b $26,$E0,$90,$3D,$76,$4D,$AE,$33,$10,$0E,$7A,$31,$C9,$74,$A7,$5A
Data.b $AB,$31,$18,$8C,$66,$8B,$D5,$62,$DD,$01,$45,$6D,$26,$B3,$D9,$60
Data.b $30,$84,$42,$91,$44,$3C,$AE,$25,$13,$86,$0A,$09,$AF,$1D,$69,$C2
Data.b $EE,$26,$D4,$57,$90,$1A,$2A,$77,$C0,$83,$5A,$45,$C6,$EF,$40,$AA
Data.b $AF,$6A,$AC,$AB,$68,$AC,$2D,$C3,$EF,$01,$EC,$E6,$E0,$CA,$84,$5C
Data.b $8A,$D7,$A9,$4D,$47,$1C,$76,$AB,$11,$E3,$F5,$FB,$15,$88,$52,$AD
Data.b $D1,$02,$51,$B3,$D5,$6A,$B2,$58,$4C,$66,$8B,$D1,$68,$D2,$E9,$F5
Data.b $C1,$60,$D8,$E7,$72,$A8,$1B,$F1,$83,$7D,$71,$54,$2F,$6E,$C6,$95
Data.b $03,$5D,$4A,$63,$15,$B5,$B1,$9A,$DA,$54,$2D,$61,$37,$CC,$A6,$75
Data.b $CB,$59,$CB,$54,$97,$37,$1D,$70,$D3,$09,$B5,$04,$EC,$6E,$FC,$DE
Data.b $32,$4A,$6D,$99,$0C,$62,$06,$3D,$86,$44,$3B,$AA,$43,$5A,$31,$A1
Data.b $F6,$F6,$40,$30,$D0,$1E,$89,$C4,$13,$C9,$54,$1A,$AC,$CE,$54,$2A
Data.b $1D,$8F,$27,$C1,$6F,$B6,$A7,$D7,$86,$C0,$DA,$46,$5C,$7F,$6F,$87
Data.b $51,$05,$51,$F1,$35,$64,$7C,$0D,$A9,$BE,$9A,$8A,$AF,$06,$D5,$24
Data.b $61,$DC,$3C,$D2,$7B,$79,$D0,$34,$ED,$E3,$94,$12,$AA,$7D,$41,$13
Data.b $83,$80,$6D,$C6,$56,$34,$D5,$55,$48,$21,$66,$BB,$DB,$10,$74,$EB
Data.b $D4,$72,$08,$A3,$54,$21,$52,$B9,$5C,$AE,$50,$68,$75,$7A,$8B,$15
Data.b $05,$21,$8C,$26,$93,$13,$B5,$76,$84,$82,$B9,$A8,$77,$79,$5F,$78
Data.b $7D,$C8,$8B,$B4,$90,$94,$EC,$06,$BF,$B8,$BE,$A8,$C6,$1D,$34,$D7
Data.b $1E,$46,$71,$4B,$11,$D1,$B1,$BC,$77,$C4,$CE,$E8,$D6,$71,$4A,$B9
Data.b $BC,$DF,$6C,$71,$29,$5B,$FA,$23,$28,$CC,$A3,$31,$09,$75,$AC,$66
Data.b $AC,$AA,$95,$AD,$96,$B7,$A8,$64,$7C,$0C,$A2,$56,$C1,$4A,$05,$AC
Data.b $DC,$E9,$92,$D9,$62,$01,$33,$E8,$8E,$06,$87,$7B,$92,$1D,$0E,$5D
Data.b $DE,$D6,$B2,$9A,$81,$37,$C6,$63,$03,$ED,$A6,$FB,$C7,$72,$97,$FA
Data.b $64,$AB,$19,$CD,$4A,$04,$9A,$75,$50,$B6,$0E,$84,$1E,$FD,$60,$7D
Data.b $ED,$40,$FE,$EA,$C9,$C5,$DF,$FD,$E8,$FD,$CD,$E3,$67,$46,$BB,$7B
Data.b $85,$4C,$4A,$D2,$65,$80,$A8,$8D,$CC,$A6,$5A,$60,$C3,$23,$E3,$25
Data.b $7C,$06,$A6,$3B,$9B,$C9,$66,$BB,$7B,$7B,$7B,$73,$BD,$BD,$5D,$5D
Data.b $99,$BE,$74,$FC,$99,$9E,$68,$2E,$84,$C6,$35,$8C,$31,$94,$DC,$AB
Data.b $6E,$18,$76,$70,$EE,$AD,$8D,$BF,$79,$71,$F6,$FA,$6C,$66,$73,$61
Data.b $74,$6B,$6D,$E9,$CA,$4C,$F6,$B9,$E1,$F0,$C6,$64,$E2,$8D,$F5,$D1
Data.b $5B,$6B,$2B,$1F,$DF,$BB,$FD,$F6,$F5,$AD,$4E,$A7,$AE,$D8,$E1,$50
Data.b $0B,$B9,$3E,$BD,$8C,$49,$A8,$A5,$36,$EC,$61,$11,$EA,$04,$B4,$26
Data.b $0C,$2C,$20,$6B,$24,$2C,$23,$22,$B0,$E9,$64,$A9,$76,$CF,$E1,$E1
Data.b $DC,$81,$42,$BA,$D8,$26,$05,$F1,$07,$9D,$A6,$EB,$AB,$AB,$EB,$47
Data.b $A6,$1F,$DE,$39,$F7,$CA,$89,$89,$9F,$DC,$3A,$F7,$60,$F3,$CC,$C6
Data.b $F1,$85,$4F,$5E,$BF,$F0,$60,$7D,$FA,$DB,$27,$8A,$17,$86,$D0,$ED
Data.b $E5,$D4,$5B,$AF,$AC,$3D,$B8,$B6,$B9,$3E,$77,$70,$2E,$13,$F1,$EB
Data.b $A5,$11,$2B,$22,$A2,$13,$38,$44,$2C,$A3,$A9,$96,$DE,$54,$8B,$91
Data.b $F2,$08,$30,$9F,$A8,$84,$C8,$21,$AB,$72,$E5,$D9,$E2,$C2,$58,$7E
Data.b $BC,$37,$D9,$65,$E6,$74,$5A,$F4,$5F,$7C,$F0,$D1,$1F,$7F,$FA,$E3
Data.b $EF,$9C,$9F,$B8,$B9,$9C,$FF,$F0,$D5,$B3,$5F,$7E,$74,$EF,$A3,$1B
Data.b $A7,$D7,$66,$06,$1E,$DE,$D9,$F8,$D5,$F7,$AF,$7E,$F8,$CA,$E9,$E7
Data.b $07,$6D,$37,$E7,$5C,$9B,$73,$51,$AB,$8C,$1B,$6F,$B3,$16,$42,$D6
Data.b $4C,$00,$0D,$9B,$61,$B7,$1E,$E1,$53,$F0,$5C,$12,$8E,$45,$C4,$01
Data.b $83,$66,$79,$0B,$51,$C1,$27,$95,$06,$3A,$4F,$CF,$0D,$1F,$1C,$CE
Data.b $8F,$A5,$5C,$02,$1A,$E1,$AD,$57,$B7,$EF,$5F,$79,$E1,$CD,$AD,$E3
Data.b $6F,$9C,$CD,$6E,$4E,$85,$3F,$7E,$7D,$E3,$D3,$EF,$5D,$FA,$C9,$2B
Data.b $4B,$57,$0E,$C4,$7E,$76,$F3,$C4,$2F,$EF,$6D,$AC,$1C,$18,$99,$2C
Data.b $74,$AD,$F5,$3B,$1E,$AC,$04,$A7,$22,$8A,$84,$81,$AD,$17,$D1,$29
Data.b $CD,$F8,$A0,$45,$8D,$AA,$61,$60,$C0,$A7,$36,$B4,$90,$F1,$18,$59
Data.b $4B,$33,$0C,$0C,$04,$E4,$D9,$7D,$E9,$A3,$13,$85,$67,$73,$51,$88
Data.b $DE,$5C,$1A,$CC,$17,$C2,$9E,$A0,$46,$78,$EB,$68,$E7,$F6,$A1,$C8
Data.b $F2,$48,$76,$A4,$2F,$F3,$C9,$AD,$73,$EF,$5C,$9E,$BB,$30,$1E,$FA
Data.b $F9,$AD,$D5,$BF,$BE,$77,$3D,$68,$D5,$E4,$B2,$3D,$17,$4F,$94,$D6
Data.b $87,$5C,$F7,$E7,$5D,$5E,$98,$56,$55,$B6,$AB,$E2,$E9,$5D,$22,$36
Data.b $D5,$8A,$C8,$78,$24,$1C,$44,$6F,$84,$A8,$0D,$18,$39,$0F,$18,$34
Data.b $23,$10,$39,$E5,$31,$2D,$8F,$17,$DD,$5A,$09,$B9,$11,$1B,$B6,$48
Data.b $93,$3A,$EA,$91,$AC,$F9,$83,$F3,$5D,$77,$57,$47,$CE,$9F,$3A,$AA
Data.b $45,$90,$B7,$BF,$75,$EC,$BD,$EB,$2B,$37,$CF,$CC,$3C,$BC,$7B,$E9
Data.b $F3,$77,$6F,$84,$1C,$D6,$B0,$CF,$AF,$84,$F8,$09,$9F,$EB,$4C,$4E
Data.b $21,$21,$57,$55,$94,$ED,$AA,$7C,$7A,$17,$6E,$4F,$65,$A4,$CD,$DE
Data.b $58,$5B,$21,$A4,$37,$89,$68,$8D,$18,$98,$4F,$02,$FD,$51,$08,$88
Data.b $5A,$31,$7D,$30,$E5,$87,$F9,$0C,$6C,$4D,$D9,$DE,$CA,$6F,$06,$54
Data.b $AC,$1F,$1C,$8B,$5C,$1D,$B3,$1C,$79,$A6,$18,$F6,$78,$22,$81,$E0
Data.b $F3,$0B,$93,$BF,$F9,$E1,$8D,$B7,$6E,$6E,$3E,$FC,$E1,$ED,$37,$6E
Data.b $5C,$F1,$D9,$6C,$93,$53,$0B,$43,$93,$45,$8F,$DD,$9E,$D0,$51,$C5
Data.b $C4,$8A,$EA,$DD,$4F,$11,$EA,$2A,$B8,$24,$2C,$09,$57,$5D,$5B,$F9
Data.b $B4,$80,$DA,$D0,$CA,$6C,$C2,$80,$01,$28,$05,$24,$15,$44,$46,$20
Data.b $4A,$D8,$2C,$93,$F3,$99,$D5,$E5,$4F,$D5,$54,$3C,$45,$C1,$55,$DE
Data.b $9E,$43,$8B,$7E,$8D,$C7,$6C,$DC,$3F,$37,$51,$4C,$64,$FA,$52,$A9
Data.b $F7,$5E,$BF,$7A,$ED,$C4,$81,$73,$F3,$63,$17,$4E,$2E,$E6,$3B,$3B
Data.b $B3,$C1,$76,$BF,$4E,$AE,$95,$8A,$A3,$6A,$22,$44,$28,$6F,$AC,$2D
Data.b $97,$B2,$09,$30,$97,$08,$3C,$1A,$F6,$96,$8B,$E8,$8D,$12,$26,$01
Data.b $1C,$53,$B0,$7D,$92,$52,$48,$D2,$88,$69,$9D,$5E,$33,$97,$4A,$A8
Data.b $DA,$BD,$AB,$BE,$A6,$4C,$48,$AB,$3F,$9F,$87,$15,$3C,$52,$C2,$EB
Data.b $DB,$17,$0F,$65,$9C,$AE,$85,$A9,$03,$2F,$9D,$2E,$BD,$70,$78,$60
Data.b $2A,$17,$1D,$4D,$F9,$8A,$D9,$6C,$2A,$18,$1A,$CA,$17,$63,$4E,$FD
Data.b $4C,$58,$24,$22,$56,$50,$F0,$35,$E0,$CE,$23,$7C,$92,$94,$D5,$44
Data.b $C3,$D7,$88,$99,$4D,$32,$0E,$11,$83,$08,$C9,$4A,$88,$A4,$15,$53
Data.b $51,$65,$4B,$3A,$E0,$6C,$A1,$60,$F7,$54,$3C,$C5,$6E,$AE,$35,$C9
Data.b $E8,$D3,$61,$41,$CE,$C6,$0B,$DA,$4D,$E1,$36,$77,$4F,$3C,$31,$3D
Data.b $B2,$BF,$D4,$1B,$7C,$7E,$B6,$30,$1C,$77,$24,$50,$04,$55,$29,$0E
Data.b $1F,$2C,$9D,$5C,$5E,$D9,$1F,$75,$AC,$15,$75,$10,$B1,$8A,$D1,$B4
Data.b $57,$03,$51,$D4,$02,$B2,$92,$47,$02,$CD,$91,$72,$88,$30,$97,$84
Data.b $01,$EA,$08,$44,$D2,$49,$A8,$26,$39,$C3,$20,$65,$C0,$3C,$42,$63
Data.b $ED,$6E,$25,$9F,$68,$81,$99,$CF,$46,$24,$97,$47,$CD,$87,$F7,$85
Data.b $4F,$2D,$2F,$1F,$5B,$5C,$9E,$2C,$E4,$C6,$92,$BE,$E3,$53,$03,$4B
Data.b $23,$99,$E1,$6C,$AA,$3B,$E4,$CB,$C4,$E2,$53,$C3,$83,$13,$49,$F3
Data.b $A5,$31,$0B,$BB,$A1,$02,$5C,$60,$60,$A0,$15,$52,$D4,$10,$05,$69
Data.b $21,$2B,$78,$44,$50,$31,$9A,$56,$AA,$5E,$42,$33,$C8,$69,$66,$98
Data.b $01,$90,$B0,$1A,$28,$F8,$2A,$14,$66,$39,$54,$9C,$01,$BF,$E4,$C1
Data.b $D1,$D0,$D1,$82,$E3,$C4,$DC,$F8,$C1,$C9,$A9,$13,$87,$0E,$AE,$2D
Data.b $CC,$BE,$BE,$F5,$D2,$E5,$E7,$CE,$9C,$58,$5A,$9C,$1D,$1E,$4A,$45
Data.b $22,$49,$BF,$73,$3C,$AA,$3E,$96,$81,$19,$B8,$72,$F0,$F8,$E8,$44
Data.b $34,$43,$2B,$5D,$2B,$A2,$EA,$44,$74,$B5,$80,$A2,$E2,$53,$30,$06
Data.b $19,$DD,$28,$A3,$03,$69,$0B,$CC,$B0,$21,$2C,$01,$15,$DB,$CA,$C4
Data.b $3B,$D5,$5C,$97,$96,$D7,$ED,$12,$DF,$59,$F0,$6F,$4E,$38,$4B,$FB
Data.b $A2,$43,$B9,$CC,$FC,$CC,$CC,$C6,$D9,$33,$BF,$FF,$F4,$0F,$8F,$3E
Data.b $7F,$74,$7B,$FB,$DB,$F9,$6C,$CE,$DF,$E6,$72,$68,$E4,$31,$2D,$6B
Data.b $C4,$DB,$E2,$91,$93,$B9,$A4,$3A,$93,$84,$6E,$94,$30,$40,$35,$88
Data.b $E9,$3A,$21,$4D,$0D,$51,$81,$01,$CD,$28,$67,$58,$95,$2C,$80,$0D
Data.b $61,$5B,$15,$0C,$87,$8A,$ED,$D6,$72,$DB,$B4,$DC,$84,$4D,$F8,$5A
Data.b $C9,$7F,$6D,$C2,$BA,$D8,$E7,$E8,$EE,$08,$8D,$EE,$1F,$3E,$7E,$F4
Data.b $E4,$97,$5F,$FE,$FD,$AB,$AF,$9E,$3C,$7C,$F8,$AB,$43,$07,$0F,$07
Data.b $FD,$01,$A5,$44,$EC,$51,$B2,$9F,$09,$CB,$0E,$A5,$B5,$3C,$12,$D6
Data.b $2A,$63,$5A,$E5,$00,$96,$59,$CA,$D2,$83,$28,$10,$05,$63,$94,$D3
Data.b $2D,$4A,$E6,$7F,$D5,$59,$76,$84,$E5,$50,$73,$DA,$FE,$AB,$EE,$D1
Data.b $71,$43,$26,$E1,$CB,$07,$FD,$CF,$15,$75,$F3,$69,$8D,$17,$35,$82
Data.b $67,$F7,$E2,$0B,$9B,$73,$B3,$0B,$85,$9E,$7E,$97,$DD,$63,$D4,$19
Data.b $93,$B1,$24,$87,$49,$67,$36,$D7,$97,$BA,$AD,$4B,$19,$3D,$44,$C3
Data.b $A3,$30,$DB,$22,$67,$A2,$72,$96,$45,$CA,$32,$4A,$E9,$7A,$11,$0D
Data.b $63,$56,$30,$50,$84,$85,$EE,$48,$B3,$DB,$B4,$1C,$B0,$77,$AF,$81
Data.b $B7,$83,$8E,$D7,$6E,$11,$7D,$EF,$FC,$10,$30,$18,$F1,$89,$D5,$12
Data.b $68,$FF,$C0,$60,$D0,$17,$72,$3B,$DC,$99,$74,$B6,$3F,$3F,$88,$1A
Data.b $2D,$3E,$B7,$8F,$4D,$A7,$D7,$ED,$A9,$FA,$D6,$CA,$BE,$3E,$1B,$9F
Data.b $43,$AC,$73,$28,$39,$36,$98,$65,$83,$D9,$20,$84,$45,$CE,$32,$49
Data.b $19,$18,$BB,$9A,$0D,$D4,$6D,$2A,$96,$53,$C3,$76,$69,$B9,$6E,$3D
Data.b $CF,$6F,$E4,$FB,$8C,$2D,$01,$B3,$20,$6A,$97,$7E,$77,$63,$F6,$F6
Data.b $B1,$4E,$14,$22,$8A,$79,$8C,$64,$47,$2C,$E8,$F1,$77,$26,$BA,$56
Data.b $4F,$9E,$9B,$99,$2A,$59,$35,$7A,$BD,$52,$25,$E0,$70,$B0,$B5,$D5
Data.b $57,$E6,$73,$3E,$29,$91,$D1,$B4,$C7,$89,$70,$1D,$C8,$8E,$07,$08
Data.b $81,$2A,$38,$16,$19,$13,$E3,$D6,$F3,$DB,$74,$3C,$B7,$9E,$EB,$D6
Data.b $71,$DD,$06,$9E,$CF,$C8,$0F,$9A,$05,$21,$8B,$30,$64,$15,$76,$D8
Data.b $C4,$57,$97,$FA,$BF,$7F,$65,$C1,$28,$A6,$71,$68,$24,$AD,$4A,$D3
Data.b $E1,$0D,$A4,$3C,$DE,$B0,$DB,$EF,$B1,$B7,$65,$BC,$BE,$74,$47,$A2
Data.b $85,$CD,$69,$C2,$D7,$1D,$EB,$F7,$68,$59,$B5,$6C,$52,$5D,$9B,$A6
Data.b $C5,$AB,$13,$80,$EA,$54,$71,$6D,$C0,$49,$C1,$C6,$F8,$CD,$42,$9F
Data.b $51,$E0,$33,$81,$5D,$03,$5D,$28,$64,$86,$22,$A8,$30,$82,$8A,$23
Data.b $36,$71,$D4,$21,$BD,$7F,$6E,$F2,$E5,$B3,$33,$4E,$25,$57,$02,$41
Data.b $7E,$AF,$6F,$7A,$7C,$6A,$7F,$5F,$BF,$C3,$64,$D5,$23,$9A,$C9,$B1
Data.b $D9,$ED,$ED,$7B,$A9,$64,$8A,$48,$20,$5C,$3A,$10,$87,$29,$35,$E0
Data.b $9D,$F0,$68,$77,$0C,$00,$6E,$2D,$DF,$A5,$6E,$71,$20,$5C,$4C,$10
Data.b $15,$05,$AD,$00,$61,$C4,$2E,$89,$3A,$64,$1D,$F6,$D6,$84,$53,$1A
Data.b $73,$49,$63,$0E,$49,$C2,$25,$7B,$FF,$A5,$E5,$0B,$8B,$23,$76,$9D
Data.b $4C,$A5,$50,$4E,$4E,$4C,$AD,$1E,$5F,$9D,$1A,$9F,$8E,$05,$C3,$C1
Data.b $36,$DF,$C2,$74,$E9,$B5,$AD,$9B,$E3,$63,$E3,$0D,$38,$DC,$44,$44
Data.b $41,$C7,$96,$23,$02,$92,$DF,$C0,$0F,$18,$21,$9F,$5E,$00,$70,$6B
Data.b $F8,$20,$0A,$26,$84,$8A,$DB,$51,$71,$D8,$D6,$0A,$A4,$A3,$4E,$49
Data.b $CC,$25,$4B,$BA,$E1,$B4,$5B,$91,$6A,$93,$A7,$3D,$8A,$4F,$6E,$9D
Data.b $3A,$33,$9D,$33,$22,$AD,$6C,$26,$73,$64,$F8,$99,$E1,$E2,$C0,$99
Data.b $85,$A5,$E3,$B3,$A5,$91,$5C,$61,$F3,$B9,$F3,$4B,$B3,$F3,$85,$9E
Data.b $3E,$7C,$DD,$DE,$A9,$F6,$56,$3A,$BE,$5A,$2F,$A6,$05,$4C,$50,$C0
Data.b $24,$F4,$9B,$84,$20,$84,$6F,$07,$68,$27,$C1,$4E,$37,$9C,$92,$0E
Data.b $87,$24,$EE,$92,$01,$D1,$6E,$BF,$2A,$E3,$57,$75,$7A,$E0,$8C,$0F
Data.b $79,$EB,$F2,$DC,$FA,$A1,$82,$45,$2D,$61,$52,$29,$B9,$4C,$0F,$78
Data.b $91,$16,$27,$A7,$EF,$6D,$DF,$FD,$F0,$BD,$1F,$BF,$7A,$75,$EB,$D9
Data.b $E1,$09,$97,$CD,$41,$C6,$55,$1F,$89,$40,$3A,$3E,$01,$8C,$37,$64
Data.b $06,$ED,$95,$84,$CC,$A2,$A0,$51,$E8,$37,$80,$28,$10,$A6,$C3,$25
Data.b $8B,$ED,$20,$4D,$B6,$C1,$29,$0F,$DC,$E5,$53,$66,$02,$2A,$E0,$D1
Data.b $ED,$53,$02,$EE,$AF,$8D,$BC,$76,$7A,$CC,$87,$6A,$04,$5C,$26,$2C
Data.b $95,$ED,$2F,$0C,$AC,$AF,$9E,$BD,$F3,$E2,$D6,$DD,$6B,$37,$1F,$BC
Data.b $7A,$EB,$83,$B7,$DF,$69,$F7,$78,$0E,$65,$D0,$CD,$21,$43,$BB,$8A
Data.b $D1,$A6,$E5,$C5,$EC,$92,$B8,$53,$16,$B1,$B6,$FA,$0D,$C2,$A0,$49
Data.b $14,$30,$8A,$30,$31,$37,$9C,$70,$C3,$49,$8F,$22,$ED,$43,$32,$01
Data.b $24,$1B,$54,$F5,$84,$34,$B9,$90,$7A,$A7,$B6,$EB,$B6,$96,$FA,$7E
Data.b $71,$FB,$78,$6F,$CC,$D3,$9B,$49,$25,$A2,$1D,$8B,$F3,$F3,$5F,$7C
Data.b $FE,$C5,$E3,$C7,$8F,$BF,$7E,$F2,$F5,$EF,$3F,$FD,$6C,$65,$76,$FE
Data.b $50,$21,$72,$7F,$29,$BD,$3D,$EB,$E1,$34,$56,$BB,$34,$FF,$33,$00
Data.b $B3,$0C,$59,$C5,$41,$93,$10,$E4,$C0,$A4,$3C,$0A,$A0,$DE,$05,$B6
Data.b $1C,$D2,$F4,$45,$F4,$7D,$11,$43,$6F,$44,$9F,$8F,$E8,$0B,$11,$FD
Data.b $60,$DC,$F4,$C1,$CB,$8B,$BF,$BE,$73,$F2,$C6,$F9,$F9,$3F,$3D,$7A
Data.b $F4,$E7,$3F,$7D,$F1,$E4,$C9,$93,$AF,$1E,$3F,$FE,$EC,$B7,$BF,$BE
Data.b $B6,$71,$71,$61,$62,$F4,$EE,$8B,$A7,$BE,$7C,$F7,$DA,$F6,$B4,$7B
Data.b $75,$22,$17,$B7,$23,$36,$05,$2B,$05,$DA,$E0,$56,$24,$DB,$14,$E0
Data.b $0E,$45,$AC,$12,$00,$26,$0D,$3A,$1E,$D4,$74,$87,$B4,$3D,$61,$5D
Data.b $3E,$66,$CA,$47,$8D,$FB,$12,$96,$42,$CC,$38,$90,$B4,$1E,$D9,$1F
Data.b $FC,$EC,$C1,$E9,$BF,$BD,$7F,$E5,$C6,$B9,$F9,$7F,$FE,$E3,$1F,$FF
Data.b $FE,$BF,$F5,$F5,$57,$FF,$FA,$CB,$4F,$DF,$F9,$EB,$C7,$77,$FF,$FC
Data.b $E6,$C5,$F5,$21,$67,$2A,$96,$7A,$F7,$E5,$53,$FD,$11,$5D,$76,$67
Data.b $7E,$EA,$2E,$9F,$2A,$E5,$56,$46,$C1,$B1,$B4,$C9,$FE,$03,$57,$58
Data.b $30,$31,$4C,$FD,$20,$E8,$00,$00,$00,$00,$49,$45,$4E,$44,$AE,$42
Data.b $60,$82
EndDataSection
Code: Select all
myItems(i) = "Otis Number " + Str(i)
SetGadgetItemText(1, i, myItems(i))
Code: Select all
CatchImage(0, ?myImage)
If OpenWindow(0, 0, 0, 200, 160, "Test", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0))
ListIconGadget(1, 5, 5, 190, 150, "Item", 150)
For i = 0 To 5
AddGadgetItem(1, i, "Item Number " + Str(i) , ImageID(0))
Next
Repeat
event = WaitWindowEvent()
Until event = #PB_Event_CloseWindow
EndIf
DataSection
myImage:
Data.b $00,$00,$01,$00,$01,$00,$10,$10,$00,$00,$01,$00,$08,$00,$68,$05
Data.b $00,$00,$16,$00,$00,$00,$28,$00,$00,$00,$10,$00,$00,$00,$20,$00
Data.b $00,$00,$01,$00,$08,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$80,$80,$80,$00,$00,$CA,$FF,$00,$30,$FF,$5A,$00,$00,$CC
Data.b $FF,$00,$00,$D1,$FF,$00,$C1,$FF,$FF,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$FF,$FF,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01
Data.b $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$06,$06
Data.b $06,$06,$06,$06,$06,$06,$06,$06,$06,$06,$06,$06,$06,$06,$02,$02
Data.b $02,$02,$01,$02,$02,$01,$01,$02,$02,$01,$02,$02,$02,$02,$01,$01
Data.b $01,$01,$01,$01,$02,$01,$01,$02,$01,$01,$01,$01,$01,$01,$01,$FF
Data.b $FF,$FF,$01,$02,$01,$01,$01,$01,$02,$01,$FF,$FF,$FF,$01,$01,$FF
Data.b $FF,$FF,$01,$02,$02,$02,$02,$02,$02,$01,$FF,$FF,$FF,$01,$00,$01
Data.b $01,$01,$01,$02,$02,$02,$02,$02,$02,$01,$01,$01,$01,$00,$00,$01
Data.b $02,$04,$05,$02,$02,$01,$01,$02,$02,$02,$02,$02,$01,$00,$00,$00
Data.b $02,$02,$01,$01,$01,$01,$01,$01,$01,$01,$02,$02,$00,$00,$00,$00
Data.b $01,$02,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$02,$01,$00,$00,$00,$00
Data.b $01,$02,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$02,$01,$00,$00,$00,$00
Data.b $01,$02,$02,$02,$02,$02,$02,$02,$02,$02,$02,$01,$00,$00,$00,$00
Data.b $00,$01,$02,$03,$03,$03,$03,$03,$03,$02,$01,$00,$00,$00,$00,$00
Data.b $00,$00,$01,$01,$01,$01,$01,$01,$01,$01,$00,$00,$00,$00,$C7,$E3
Data.b $00,$00,$C7,$E3,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
Data.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$01
Data.b $00,$00,$80,$01,$00,$00,$C0,$03,$00,$00,$C0,$03,$00,$00,$C0,$03
Data.b $00,$00,$C0,$03,$00,$00,$E0,$07,$00,$00,$F0,$0F,$00,$00
EndDataSection
Code: Select all
; fill up var to set subitem image and text
var.lvitem
Var\mask = #LVIF_IMAGE | #LVIF_TEXT
Var\iItem = 1 ; row number for change
Var\iSubItem = 1 ; item
Var\pszText = @"Item" ; text to change to
Var\iImage = 1; index of image in the list
SendMessage_(GadgetID(1), #LVM_SETITEM, 0, @Var)
Code: Select all
#MainWindow=0
#ListIconGadget1=1
#Font=5
#LVM_SETEXTENDEDLISTVIEWSTYLE=4150
#LVS_EX_SUBITEMIMAGES=2
UsePNGImageDecoder()
UseJPEGImageDecoder()
Procedure ExtendListIconGadget(hListIcon, IconWidth, IconHeight, hDefaultImage, hDefaultImageMask)
hImageList=ImageList_Create_(IconWidth,IconHeight,#ILC_MASK|#ILC_COLOR32,0,100)
; Assign the image list to the listicongadget
SendMessage_(hListIcon,#LVM_SETIMAGELIST,#LVSIL_SMALL,hImageList)
; Set background color to CLR_NONE so images are drawn transparently using the mask
ImageList_SetBkColor_(hImageList,#CLR_NONE)
; Set extended style to the listicongadget to allow images for subitems
SendMessage_(hListIcon,#LVM_SETEXTENDEDLISTVIEWSTYLE,#LVS_EX_SUBITEMIMAGES,#LVS_EX_SUBITEMIMAGES)
; If no default image is specified then set the default image to transparent
If Not hDefaultImage
ImageID=CreateImage(#PB_Any,32,32)
ImageList_AddMasked_(hImageList,ImageID(ImageID),#Black)
FreeImage(ImageID)
Else
ImageList_Add_(hImageList,hDefaultImage,hImageMask)
EndIf
ProcedureReturn hImageList
EndProcedure
Procedure AddImageListElement(hImageList, hImage, hImageMask)
ImageIndex=ImageList_Add_(hImageList,hImage,hImageMask)
ProcedureReturn ImageIndex
EndProcedure
; Procedure ResizeImageList(hImageList, Width, Height)
;
; EndProcedure
Procedure SetListIconElement(hListIcon, ImageListIndex, Row, Column, Text.s, ReplaceText)
Var.LV_ITEM
Var\mask=#LVIF_IMAGE|#LVIF_TEXT
Var\iItem=Row ; row number for change
Var\iSubItem=Column ; column
Var\iImage=ImageListIndex; index of icon in the list
If ReplaceText=1
Var\pszText=@Text.s ; text
Else
GadgetPBID=GetProp_(hListIcon,"PB_ID")
If IsGadget(GadgetPBID)
Text.s=GetGadgetItemText(GadgetPBID,Row,Column)
Var\pszText=@Text.s
EndIf
EndIf
SendMessage_(hListIcon,#LVM_SETITEM,0,@Var)
EndProcedure
If OpenWindow(#MainWindow,0,0,320,240,"Icon List",#PB_Window_ScreenCentered|#PB_Window_SystemMenu)
If CreateGadgetList(WindowID(#MainWindow)) And ListIconGadget(#ListIconGadget1,0,0,320,240,"Column 1",298/3 ,#PB_ListIcon_FullRowSelect)
AddGadgetColumn(#ListIconGadget1,1,"Column 2",298/3)
AddGadgetColumn(#ListIconGadget1,2,"Column 3",298/3)
EndIf
FontID=LoadFont(#Font,"ARIAL",9)
SetGadgetFont(#ListIconGadget1,FontID)
hImageList=ExtendListIconGadget(GadgetID(#ListIconGadget1),32,32,0,0)
For i=0 To 4
AddGadgetItem(#ListIconGadget1,i,"Item "+Str(i))
Next i
ImageID=CatchImage(#PB_Any,?myImage)
ImageIndex=AddImageListElement(hImageList,ImageID(ImageID),0)
If ImageIndex=-1
Debug "Failed to load image"
EndIf
FreeImage(ImageID)
For i=0 To 4
SetGadgetItemText(#ListIconGadget1,i,"Item "+Str(i),1)
SetGadgetItemText(#ListIconGadget1,i,"Item "+Str(i),2)
Next i
For i=2 To 3
SetListIconElement(GadgetID(#ListIconGadget1),ImageIndex,i,1,"Alt "+Str(i),1)
Next
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Quit=1
EndSelect
Until Quit
If HwndIm_List
ImageList_Destroy_(HwndIm_List)
EndIf
EndIf
End
DataSection
myImage:
Data.b $89,$50,$4E,$47,$0D,$0A,$1A,$0A,$00,$00,$00,$0D,$49,$48,$44,$52
Data.b $00,$00,$00,$20,$00,$00,$00,$20,$08,$02,$00,$00,$00,$FC,$18,$ED
Data.b $A3,$00,$00,$00,$09,$70,$48,$59,$73,$00,$00,$0E,$C3,$00,$00,$0E
Data.b $C3,$01,$C7,$6F,$A8,$64,$00,$00,$0B,$64,$49,$44,$41,$54,$78,$9C
Data.b $4D,$94,$69,$50,$5B,$D7,$19,$86,$F5,$D3,$69,$83,$59,$6D,$90,$10
Data.b $20,$B4,$EF,$42,$BA,$92,$D0,$72,$A5,$AB,$7D,$BD,$DA,$D0,$2E,$24
Data.b $B4,$83,$10,$02,$49,$06,$CC,$16,$08,$98,$C5,$32,$C6,$2C,$5E,$B1
Data.b $1D,$EC,$30,$26,$5E,$82,$ED,$86,$C4,$89,$71,$5C,$2F,$6D,$DD,$A6
Data.b $93,$AD,$99,$24,$4D,$D2,$71,$F7,$36,$6D,$33,$89,$DB,$A6,$CB,$74
Data.b $5A,$C7,$69,$0F,$9D,$FE,$E8,$99,$67,$BE,$B9,$F7,$CF,$FB,$9E,$F7
Data.b $FB,$CE,$39,$98,$5C,$3E,$DF,$9B,$CF,$17,$FB,$FB,$87,$46,$47,$27
Data.b $26,$A7,$66,$E6,$4A,$B3,$A5,$D2,$5C,$69,$7E,$7A,$6E,$0E,$7C,$E7
Data.b $0B,$45,$2B,$9F,$33,$58,$48,$7A,$9D,$1A,$EC,$9E,$B2,$26,$5C,$25
Data.b $A1,$7E,$87,$66,$7C,$25,$11,$5F,$49,$C0,$57,$36,$60,$CB,$1B,$B1
Data.b $E5,$B8,$BD,$65,$B8,$3D,$DF,$AC,$A9,$FC,$46,$33,$AE,$82,$55,$5F
Data.b $26,$E0,$90,$3D,$76,$4D,$AE,$33,$10,$0E,$7A,$31,$C9,$74,$A7,$5A
Data.b $AB,$31,$18,$8C,$66,$8B,$D5,$62,$DD,$01,$45,$6D,$26,$B3,$D9,$60
Data.b $30,$84,$42,$91,$44,$3C,$AE,$25,$13,$86,$0A,$09,$AF,$1D,$69,$C2
Data.b $EE,$26,$D4,$57,$90,$1A,$2A,$77,$C0,$83,$5A,$45,$C6,$EF,$40,$AA
Data.b $AF,$6A,$AC,$AB,$68,$AC,$2D,$C3,$EF,$01,$EC,$E6,$E0,$CA,$84,$5C
Data.b $8A,$D7,$A9,$4D,$47,$1C,$76,$AB,$11,$E3,$F5,$FB,$15,$88,$52,$AD
Data.b $D1,$02,$51,$B3,$D5,$6A,$B2,$58,$4C,$66,$8B,$D1,$68,$D2,$E9,$F5
Data.b $C1,$60,$D8,$E7,$72,$A8,$1B,$F1,$83,$7D,$71,$54,$2F,$6E,$C6,$95
Data.b $03,$5D,$4A,$63,$15,$B5,$B1,$9A,$DA,$54,$2D,$61,$37,$CC,$A6,$75
Data.b $CB,$59,$CB,$54,$97,$37,$1D,$70,$D3,$09,$B5,$04,$EC,$6E,$FC,$DE
Data.b $32,$4A,$6D,$99,$0C,$62,$06,$3D,$86,$44,$3B,$AA,$43,$5A,$31,$A1
Data.b $F6,$F6,$40,$30,$D0,$1E,$89,$C4,$13,$C9,$54,$1A,$AC,$CE,$54,$2A
Data.b $1D,$8F,$27,$C1,$6F,$B6,$A7,$D7,$86,$C0,$DA,$46,$5C,$7F,$6F,$87
Data.b $51,$05,$51,$F1,$35,$64,$7C,$0D,$A9,$BE,$9A,$8A,$AF,$06,$D5,$24
Data.b $61,$DC,$3C,$D2,$7B,$79,$D0,$34,$ED,$E3,$94,$12,$AA,$7D,$41,$13
Data.b $83,$80,$6D,$C6,$56,$34,$D5,$55,$48,$21,$66,$BB,$DB,$10,$74,$EB
Data.b $D4,$72,$08,$A3,$54,$21,$52,$B9,$5C,$AE,$50,$68,$75,$7A,$8B,$15
Data.b $05,$21,$8C,$26,$93,$13,$B5,$76,$84,$82,$B9,$A8,$77,$79,$5F,$78
Data.b $7D,$C8,$8B,$B4,$90,$94,$EC,$06,$BF,$B8,$BE,$A8,$C6,$1D,$34,$D7
Data.b $1E,$46,$71,$4B,$11,$D1,$B1,$BC,$77,$C4,$CE,$E8,$D6,$71,$4A,$B9
Data.b $BC,$DF,$6C,$71,$29,$5B,$FA,$23,$28,$CC,$A3,$31,$09,$75,$AC,$66
Data.b $AC,$AA,$95,$AD,$96,$B7,$A8,$64,$7C,$0C,$A2,$56,$C1,$4A,$05,$AC
Data.b $DC,$E9,$92,$D9,$62,$01,$33,$E8,$8E,$06,$87,$7B,$92,$1D,$0E,$5D
Data.b $DE,$D6,$B2,$9A,$81,$37,$C6,$63,$03,$ED,$A6,$FB,$C7,$72,$97,$FA
Data.b $64,$AB,$19,$CD,$4A,$04,$9A,$75,$50,$B6,$0E,$84,$1E,$FD,$60,$7D
Data.b $ED,$40,$FE,$EA,$C9,$C5,$DF,$FD,$E8,$FD,$CD,$E3,$67,$46,$BB,$7B
Data.b $85,$4C,$4A,$D2,$65,$80,$A8,$8D,$CC,$A6,$5A,$60,$C3,$23,$E3,$25
Data.b $7C,$06,$A6,$3B,$9B,$C9,$66,$BB,$7B,$7B,$7B,$73,$BD,$BD,$5D,$5D
Data.b $99,$BE,$74,$FC,$99,$9E,$68,$2E,$84,$C6,$35,$8C,$31,$94,$DC,$AB
Data.b $6E,$18,$76,$70,$EE,$AD,$8D,$BF,$79,$71,$F6,$FA,$6C,$66,$73,$61
Data.b $74,$6B,$6D,$E9,$CA,$4C,$F6,$B9,$E1,$F0,$C6,$64,$E2,$8D,$F5,$D1
Data.b $5B,$6B,$2B,$1F,$DF,$BB,$FD,$F6,$F5,$AD,$4E,$A7,$AE,$D8,$E1,$50
Data.b $0B,$B9,$3E,$BD,$8C,$49,$A8,$A5,$36,$EC,$61,$11,$EA,$04,$B4,$26
Data.b $0C,$2C,$20,$6B,$24,$2C,$23,$22,$B0,$E9,$64,$A9,$76,$CF,$E1,$E1
Data.b $DC,$81,$42,$BA,$D8,$26,$05,$F1,$07,$9D,$A6,$EB,$AB,$AB,$EB,$47
Data.b $A6,$1F,$DE,$39,$F7,$CA,$89,$89,$9F,$DC,$3A,$F7,$60,$F3,$CC,$C6
Data.b $F1,$85,$4F,$5E,$BF,$F0,$60,$7D,$FA,$DB,$27,$8A,$17,$86,$D0,$ED
Data.b $E5,$D4,$5B,$AF,$AC,$3D,$B8,$B6,$B9,$3E,$77,$70,$2E,$13,$F1,$EB
Data.b $A5,$11,$2B,$22,$A2,$13,$38,$44,$2C,$A3,$A9,$96,$DE,$54,$8B,$91
Data.b $F2,$08,$30,$9F,$A8,$84,$C8,$21,$AB,$72,$E5,$D9,$E2,$C2,$58,$7E
Data.b $BC,$37,$D9,$65,$E6,$74,$5A,$F4,$5F,$7C,$F0,$D1,$1F,$7F,$FA,$E3
Data.b $EF,$9C,$9F,$B8,$B9,$9C,$FF,$F0,$D5,$B3,$5F,$7E,$74,$EF,$A3,$1B
Data.b $A7,$D7,$66,$06,$1E,$DE,$D9,$F8,$D5,$F7,$AF,$7E,$F8,$CA,$E9,$E7
Data.b $07,$6D,$37,$E7,$5C,$9B,$73,$51,$AB,$8C,$1B,$6F,$B3,$16,$42,$D6
Data.b $4C,$00,$0D,$9B,$61,$B7,$1E,$E1,$53,$F0,$5C,$12,$8E,$45,$C4,$01
Data.b $83,$66,$79,$0B,$51,$C1,$27,$95,$06,$3A,$4F,$CF,$0D,$1F,$1C,$CE
Data.b $8F,$A5,$5C,$02,$1A,$E1,$AD,$57,$B7,$EF,$5F,$79,$E1,$CD,$AD,$E3
Data.b $6F,$9C,$CD,$6E,$4E,$85,$3F,$7E,$7D,$E3,$D3,$EF,$5D,$FA,$C9,$2B
Data.b $4B,$57,$0E,$C4,$7E,$76,$F3,$C4,$2F,$EF,$6D,$AC,$1C,$18,$99,$2C
Data.b $74,$AD,$F5,$3B,$1E,$AC,$04,$A7,$22,$8A,$84,$81,$AD,$17,$D1,$29
Data.b $CD,$F8,$A0,$45,$8D,$AA,$61,$60,$C0,$A7,$36,$B4,$90,$F1,$18,$59
Data.b $4B,$33,$0C,$0C,$04,$E4,$D9,$7D,$E9,$A3,$13,$85,$67,$73,$51,$88
Data.b $DE,$5C,$1A,$CC,$17,$C2,$9E,$A0,$46,$78,$EB,$68,$E7,$F6,$A1,$C8
Data.b $F2,$48,$76,$A4,$2F,$F3,$C9,$AD,$73,$EF,$5C,$9E,$BB,$30,$1E,$FA
Data.b $F9,$AD,$D5,$BF,$BE,$77,$3D,$68,$D5,$E4,$B2,$3D,$17,$4F,$94,$D6
Data.b $87,$5C,$F7,$E7,$5D,$5E,$98,$56,$55,$B6,$AB,$E2,$E9,$5D,$22,$36
Data.b $D5,$8A,$C8,$78,$24,$1C,$44,$6F,$84,$A8,$0D,$18,$39,$0F,$18,$34
Data.b $23,$10,$39,$E5,$31,$2D,$8F,$17,$DD,$5A,$09,$B9,$11,$1B,$B6,$48
Data.b $93,$3A,$EA,$91,$AC,$F9,$83,$F3,$5D,$77,$57,$47,$CE,$9F,$3A,$AA
Data.b $45,$90,$B7,$BF,$75,$EC,$BD,$EB,$2B,$37,$CF,$CC,$3C,$BC,$7B,$E9
Data.b $F3,$77,$6F,$84,$1C,$D6,$B0,$CF,$AF,$84,$F8,$09,$9F,$EB,$4C,$4E
Data.b $21,$21,$57,$55,$94,$ED,$AA,$7C,$7A,$17,$6E,$4F,$65,$A4,$CD,$DE
Data.b $58,$5B,$21,$A4,$37,$89,$68,$8D,$18,$98,$4F,$02,$FD,$51,$08,$88
Data.b $5A,$31,$7D,$30,$E5,$87,$F9,$0C,$6C,$4D,$D9,$DE,$CA,$6F,$06,$54
Data.b $AC,$1F,$1C,$8B,$5C,$1D,$B3,$1C,$79,$A6,$18,$F6,$78,$22,$81,$E0
Data.b $F3,$0B,$93,$BF,$F9,$E1,$8D,$B7,$6E,$6E,$3E,$FC,$E1,$ED,$37,$6E
Data.b $5C,$F1,$D9,$6C,$93,$53,$0B,$43,$93,$45,$8F,$DD,$9E,$D0,$51,$C5
Data.b $C4,$8A,$EA,$DD,$4F,$11,$EA,$2A,$B8,$24,$2C,$09,$57,$5D,$5B,$F9
Data.b $B4,$80,$DA,$D0,$CA,$6C,$C2,$80,$01,$28,$05,$24,$15,$44,$46,$20
Data.b $4A,$D8,$2C,$93,$F3,$99,$D5,$E5,$4F,$D5,$54,$3C,$45,$C1,$55,$DE
Data.b $9E,$43,$8B,$7E,$8D,$C7,$6C,$DC,$3F,$37,$51,$4C,$64,$FA,$52,$A9
Data.b $F7,$5E,$BF,$7A,$ED,$C4,$81,$73,$F3,$63,$17,$4E,$2E,$E6,$3B,$3B
Data.b $B3,$C1,$76,$BF,$4E,$AE,$95,$8A,$A3,$6A,$22,$44,$28,$6F,$AC,$2D
Data.b $97,$B2,$09,$30,$97,$08,$3C,$1A,$F6,$96,$8B,$E8,$8D,$12,$26,$01
Data.b $1C,$53,$B0,$7D,$92,$52,$48,$D2,$88,$69,$9D,$5E,$33,$97,$4A,$A8
Data.b $DA,$BD,$AB,$BE,$A6,$4C,$48,$AB,$3F,$9F,$87,$15,$3C,$52,$C2,$EB
Data.b $DB,$17,$0F,$65,$9C,$AE,$85,$A9,$03,$2F,$9D,$2E,$BD,$70,$78,$60
Data.b $2A,$17,$1D,$4D,$F9,$8A,$D9,$6C,$2A,$18,$1A,$CA,$17,$63,$4E,$FD
Data.b $4C,$58,$24,$22,$56,$50,$F0,$35,$E0,$CE,$23,$7C,$92,$94,$D5,$44
Data.b $C3,$D7,$88,$99,$4D,$32,$0E,$11,$83,$08,$C9,$4A,$88,$A4,$15,$53
Data.b $51,$65,$4B,$3A,$E0,$6C,$A1,$60,$F7,$54,$3C,$C5,$6E,$AE,$35,$C9
Data.b $E8,$D3,$61,$41,$CE,$C6,$0B,$DA,$4D,$E1,$36,$77,$4F,$3C,$31,$3D
Data.b $B2,$BF,$D4,$1B,$7C,$7E,$B6,$30,$1C,$77,$24,$50,$04,$55,$29,$0E
Data.b $1F,$2C,$9D,$5C,$5E,$D9,$1F,$75,$AC,$15,$75,$10,$B1,$8A,$D1,$B4
Data.b $57,$03,$51,$D4,$02,$B2,$92,$47,$02,$CD,$91,$72,$88,$30,$97,$84
Data.b $01,$EA,$08,$44,$D2,$49,$A8,$26,$39,$C3,$20,$65,$C0,$3C,$42,$63
Data.b $ED,$6E,$25,$9F,$68,$81,$99,$CF,$46,$24,$97,$47,$CD,$87,$F7,$85
Data.b $4F,$2D,$2F,$1F,$5B,$5C,$9E,$2C,$E4,$C6,$92,$BE,$E3,$53,$03,$4B
Data.b $23,$99,$E1,$6C,$AA,$3B,$E4,$CB,$C4,$E2,$53,$C3,$83,$13,$49,$F3
Data.b $A5,$31,$0B,$BB,$A1,$02,$5C,$60,$60,$A0,$15,$52,$D4,$10,$05,$69
Data.b $21,$2B,$78,$44,$50,$31,$9A,$56,$AA,$5E,$42,$33,$C8,$69,$66,$98
Data.b $01,$90,$B0,$1A,$28,$F8,$2A,$14,$66,$39,$54,$9C,$01,$BF,$E4,$C1
Data.b $D1,$D0,$D1,$82,$E3,$C4,$DC,$F8,$C1,$C9,$A9,$13,$87,$0E,$AE,$2D
Data.b $CC,$BE,$BE,$F5,$D2,$E5,$E7,$CE,$9C,$58,$5A,$9C,$1D,$1E,$4A,$45
Data.b $22,$49,$BF,$73,$3C,$AA,$3E,$96,$81,$19,$B8,$72,$F0,$F8,$E8,$44
Data.b $34,$43,$2B,$5D,$2B,$A2,$EA,$44,$74,$B5,$80,$A2,$E2,$53,$30,$06
Data.b $19,$DD,$28,$A3,$03,$69,$0B,$CC,$B0,$21,$2C,$01,$15,$DB,$CA,$C4
Data.b $3B,$D5,$5C,$97,$96,$D7,$ED,$12,$DF,$59,$F0,$6F,$4E,$38,$4B,$FB
Data.b $A2,$43,$B9,$CC,$FC,$CC,$CC,$C6,$D9,$33,$BF,$FF,$F4,$0F,$8F,$3E
Data.b $7F,$74,$7B,$FB,$DB,$F9,$6C,$CE,$DF,$E6,$72,$68,$E4,$31,$2D,$6B
Data.b $C4,$DB,$E2,$91,$93,$B9,$A4,$3A,$93,$84,$6E,$94,$30,$40,$35,$88
Data.b $E9,$3A,$21,$4D,$0D,$51,$81,$01,$CD,$28,$67,$58,$95,$2C,$80,$0D
Data.b $61,$5B,$15,$0C,$87,$8A,$ED,$D6,$72,$DB,$B4,$DC,$84,$4D,$F8,$5A
Data.b $C9,$7F,$6D,$C2,$BA,$D8,$E7,$E8,$EE,$08,$8D,$EE,$1F,$3E,$7E,$F4
Data.b $E4,$97,$5F,$FE,$FD,$AB,$AF,$9E,$3C,$7C,$F8,$AB,$43,$07,$0F,$07
Data.b $FD,$01,$A5,$44,$EC,$51,$B2,$9F,$09,$CB,$0E,$A5,$B5,$3C,$12,$D6
Data.b $2A,$63,$5A,$E5,$00,$96,$59,$CA,$D2,$83,$28,$10,$05,$63,$94,$D3
Data.b $2D,$4A,$E6,$7F,$D5,$59,$76,$84,$E5,$50,$73,$DA,$FE,$AB,$EE,$D1
Data.b $71,$43,$26,$E1,$CB,$07,$FD,$CF,$15,$75,$F3,$69,$8D,$17,$35,$82
Data.b $67,$F7,$E2,$0B,$9B,$73,$B3,$0B,$85,$9E,$7E,$97,$DD,$63,$D4,$19
Data.b $93,$B1,$24,$87,$49,$67,$36,$D7,$97,$BA,$AD,$4B,$19,$3D,$44,$C3
Data.b $A3,$30,$DB,$22,$67,$A2,$72,$96,$45,$CA,$32,$4A,$E9,$7A,$11,$0D
Data.b $63,$56,$30,$50,$84,$85,$EE,$48,$B3,$DB,$B4,$1C,$B0,$77,$AF,$81
Data.b $B7,$83,$8E,$D7,$6E,$11,$7D,$EF,$FC,$10,$30,$18,$F1,$89,$D5,$12
Data.b $68,$FF,$C0,$60,$D0,$17,$72,$3B,$DC,$99,$74,$B6,$3F,$3F,$88,$1A
Data.b $2D,$3E,$B7,$8F,$4D,$A7,$D7,$ED,$A9,$FA,$D6,$CA,$BE,$3E,$1B,$9F
Data.b $43,$AC,$73,$28,$39,$36,$98,$65,$83,$D9,$20,$84,$45,$CE,$32,$49
Data.b $19,$18,$BB,$9A,$0D,$D4,$6D,$2A,$96,$53,$C3,$76,$69,$B9,$6E,$3D
Data.b $CF,$6F,$E4,$FB,$8C,$2D,$01,$B3,$20,$6A,$97,$7E,$77,$63,$F6,$F6
Data.b $B1,$4E,$14,$22,$8A,$79,$8C,$64,$47,$2C,$E8,$F1,$77,$26,$BA,$56
Data.b $4F,$9E,$9B,$99,$2A,$59,$35,$7A,$BD,$52,$25,$E0,$70,$B0,$B5,$D5
Data.b $57,$E6,$73,$3E,$29,$91,$D1,$B4,$C7,$89,$70,$1D,$C8,$8E,$07,$08
Data.b $81,$2A,$38,$16,$19,$13,$E3,$D6,$F3,$DB,$74,$3C,$B7,$9E,$EB,$D6
Data.b $71,$DD,$06,$9E,$CF,$C8,$0F,$9A,$05,$21,$8B,$30,$64,$15,$76,$D8
Data.b $C4,$57,$97,$FA,$BF,$7F,$65,$C1,$28,$A6,$71,$68,$24,$AD,$4A,$D3
Data.b $E1,$0D,$A4,$3C,$DE,$B0,$DB,$EF,$B1,$B7,$65,$BC,$BE,$74,$47,$A2
Data.b $85,$CD,$69,$C2,$D7,$1D,$EB,$F7,$68,$59,$B5,$6C,$52,$5D,$9B,$A6
Data.b $C5,$AB,$13,$80,$EA,$54,$71,$6D,$C0,$49,$C1,$C6,$F8,$CD,$42,$9F
Data.b $51,$E0,$33,$81,$5D,$03,$5D,$28,$64,$86,$22,$A8,$30,$82,$8A,$23
Data.b $36,$71,$D4,$21,$BD,$7F,$6E,$F2,$E5,$B3,$33,$4E,$25,$57,$02,$41
Data.b $7E,$AF,$6F,$7A,$7C,$6A,$7F,$5F,$BF,$C3,$64,$D5,$23,$9A,$C9,$B1
Data.b $D9,$ED,$ED,$7B,$A9,$64,$8A,$48,$20,$5C,$3A,$10,$87,$29,$35,$E0
Data.b $9D,$F0,$68,$77,$0C,$00,$6E,$2D,$DF,$A5,$6E,$71,$20,$5C,$4C,$10
Data.b $15,$05,$AD,$00,$61,$C4,$2E,$89,$3A,$64,$1D,$F6,$D6,$84,$53,$1A
Data.b $73,$49,$63,$0E,$49,$C2,$25,$7B,$FF,$A5,$E5,$0B,$8B,$23,$76,$9D
Data.b $4C,$A5,$50,$4E,$4E,$4C,$AD,$1E,$5F,$9D,$1A,$9F,$8E,$05,$C3,$C1
Data.b $36,$DF,$C2,$74,$E9,$B5,$AD,$9B,$E3,$63,$E3,$0D,$38,$DC,$44,$44
Data.b $41,$C7,$96,$23,$02,$92,$DF,$C0,$0F,$18,$21,$9F,$5E,$00,$70,$6B
Data.b $F8,$20,$0A,$26,$84,$8A,$DB,$51,$71,$D8,$D6,$0A,$A4,$A3,$4E,$49
Data.b $CC,$25,$4B,$BA,$E1,$B4,$5B,$91,$6A,$93,$A7,$3D,$8A,$4F,$6E,$9D
Data.b $3A,$33,$9D,$33,$22,$AD,$6C,$26,$73,$64,$F8,$99,$E1,$E2,$C0,$99
Data.b $85,$A5,$E3,$B3,$A5,$91,$5C,$61,$F3,$B9,$F3,$4B,$B3,$F3,$85,$9E
Data.b $3E,$7C,$DD,$DE,$A9,$F6,$56,$3A,$BE,$5A,$2F,$A6,$05,$4C,$50,$C0
Data.b $24,$F4,$9B,$84,$20,$84,$6F,$07,$68,$27,$C1,$4E,$37,$9C,$92,$0E
Data.b $87,$24,$EE,$92,$01,$D1,$6E,$BF,$2A,$E3,$57,$75,$7A,$E0,$8C,$0F
Data.b $79,$EB,$F2,$DC,$FA,$A1,$82,$45,$2D,$61,$52,$29,$B9,$4C,$0F,$78
Data.b $91,$16,$27,$A7,$EF,$6D,$DF,$FD,$F0,$BD,$1F,$BF,$7A,$75,$EB,$D9
Data.b $E1,$09,$97,$CD,$41,$C6,$55,$1F,$89,$40,$3A,$3E,$01,$8C,$37,$64
Data.b $06,$ED,$95,$84,$CC,$A2,$A0,$51,$E8,$37,$80,$28,$10,$A6,$C3,$25
Data.b $8B,$ED,$20,$4D,$B6,$C1,$29,$0F,$DC,$E5,$53,$66,$02,$2A,$E0,$D1
Data.b $ED,$53,$02,$EE,$AF,$8D,$BC,$76,$7A,$CC,$87,$6A,$04,$5C,$26,$2C
Data.b $95,$ED,$2F,$0C,$AC,$AF,$9E,$BD,$F3,$E2,$D6,$DD,$6B,$37,$1F,$BC
Data.b $7A,$EB,$83,$B7,$DF,$69,$F7,$78,$0E,$65,$D0,$CD,$21,$43,$BB,$8A
Data.b $D1,$A6,$E5,$C5,$EC,$92,$B8,$53,$16,$B1,$B6,$FA,$0D,$C2,$A0,$49
Data.b $14,$30,$8A,$30,$31,$37,$9C,$70,$C3,$49,$8F,$22,$ED,$43,$32,$01
Data.b $24,$1B,$54,$F5,$84,$34,$B9,$90,$7A,$A7,$B6,$EB,$B6,$96,$FA,$7E
Data.b $71,$FB,$78,$6F,$CC,$D3,$9B,$49,$25,$A2,$1D,$8B,$F3,$F3,$5F,$7C
Data.b $FE,$C5,$E3,$C7,$8F,$BF,$7E,$F2,$F5,$EF,$3F,$FD,$6C,$65,$76,$FE
Data.b $50,$21,$72,$7F,$29,$BD,$3D,$EB,$E1,$34,$56,$BB,$34,$FF,$33,$00
Data.b $B3,$0C,$59,$C5,$41,$93,$10,$E4,$C0,$A4,$3C,$0A,$A0,$DE,$05,$B6
Data.b $1C,$D2,$F4,$45,$F4,$7D,$11,$43,$6F,$44,$9F,$8F,$E8,$0B,$11,$FD
Data.b $60,$DC,$F4,$C1,$CB,$8B,$BF,$BE,$73,$F2,$C6,$F9,$F9,$3F,$3D,$7A
Data.b $F4,$E7,$3F,$7D,$F1,$E4,$C9,$93,$AF,$1E,$3F,$FE,$EC,$B7,$BF,$BE
Data.b $B6,$71,$71,$61,$62,$F4,$EE,$8B,$A7,$BE,$7C,$F7,$DA,$F6,$B4,$7B
Data.b $75,$22,$17,$B7,$23,$36,$05,$2B,$05,$DA,$E0,$56,$24,$DB,$14,$E0
Data.b $0E,$45,$AC,$12,$00,$26,$0D,$3A,$1E,$D4,$74,$87,$B4,$3D,$61,$5D
Data.b $3E,$66,$CA,$47,$8D,$FB,$12,$96,$42,$CC,$38,$90,$B4,$1E,$D9,$1F
Data.b $FC,$EC,$C1,$E9,$BF,$BD,$7F,$E5,$C6,$B9,$F9,$7F,$FE,$E3,$1F,$FF
Data.b $FE,$BF,$F5,$F5,$57,$FF,$FA,$CB,$4F,$DF,$F9,$EB,$C7,$77,$FF,$FC
Data.b $E6,$C5,$F5,$21,$67,$2A,$96,$7A,$F7,$E5,$53,$FD,$11,$5D,$76,$67
Data.b $7E,$EA,$2E,$9F,$2A,$E5,$56,$46,$C1,$B1,$B4,$C9,$FE,$03,$57,$58
Data.b $30,$31,$4C,$FD,$20,$E8,$00,$00,$00,$00,$49,$45,$4E,$44,$AE,$42
Data.b $60,$82
EndDataSection
Code: Select all
Procedure.l x_getlisticontopline(gadget_nr.l) ; what entry is currently shown on first line of a listicongadget
Global x_retval.l
;
; *** get the item number of the first visible line at the top of a listicon gadget
;
x_retval = SendMessage_(GadgetID(gadget_nr),#LVM_GETTOPINDEX,0,0)
ProcedureReturn x_retval
EndProcedure
Procedure.l x_getlisticonnextselected(gadget_nr.l, startpos.l) ; find the next selected entry in a listicongadget
Global x_retval.l
;
; *** find the next selected entry in a listicongadget
;
; in: gadget_nr.l - pb listicongadget number
; startpos.l = -1 - start at the top
; = n - start searching from the specified entry
; retval: n - number of entry found
; -1 - no more found
;
If startpos = -1
x_retval = SendMessage_(GadgetID(gadget_nr),#LVM_GETNEXTITEM,-1,#LVNI_SELECTED)
Else
x_retval = SendMessage_(GadgetID(gadget_nr),#LVM_GETNEXTITEM,startpos,#LVNI_SELECTED|#LVNI_BELOW)
EndIf
ProcedureReturn x_retval
EndProcedure
Procedure x_setlisticonvisibleline(gadget_nr.l,position.l) ; make sure line n is visible
SendMessage_(GadgetID(gadget_nr),#LVM_ENSUREVISIBLE,position,0)
EndProcedure
Procedure x_setlisticontopline(gadget_nr.l,position.l) ; show line n as topline in listicon gadget
;
; *** selected line will become first line in gadget
;
SendMessage_(GadgetID(gadget_nr),#LVM_ENSUREVISIBLE,position,0)
position = 2*position-SendMessage_(GadgetID(gadget_nr),#LVM_GETTOPINDEX,0,0)
SendMessage_(GadgetID(gadget_nr),#LVM_ENSUREVISIBLE,position,0)
EndProcedure
Code: Select all
#MainWindow=0
#ListIconGadget1=1
#Font=5
#LVM_SETEXTENDEDLISTVIEWSTYLE=4150
#LVS_EX_SUBITEMIMAGES=2
UsePNGImageDecoder()
UseJPEGImageDecoder()
Procedure ExtendListCallback(hWnd, uMsg, wParam, lParam)
Result=#PB_ProcessPureBasicEvents
If uMsg=#WM_NOTIFY
*nmhdr.NMHEADER=lParam
If *nmhdr\hdr\code=#HDN_ITEMCHANGING And *nmhdr\iItem=0
*nmdata.HD_ITEM=*nmhdr\pitem
*nmdata\cxy=0
EndIf
EndIf
ProcedureReturn Result
EndProcedure
Procedure ExtendListIconGadget(hListIcon, IconWidth, IconHeight, ParentWindowID)
hImageList=ImageList_Create_(IconWidth,IconHeight,#ILC_MASK|#ILC_COLOR32,0,100)
; Assign the image list to the listicongadget
SendMessage_(hListIcon,#LVM_SETIMAGELIST,#LVSIL_SMALL,hImageList)
; Set background color to CLR_NONE so images are drawn transparently using the mask
ImageList_SetBkColor_(hImageList,#CLR_NONE)
; Set extended style to the listicongadget to allow images for subitems
SendMessage_(hListIcon,#LVM_SETEXTENDEDLISTVIEWSTYLE,#LVS_EX_SUBITEMIMAGES,#LVS_EX_SUBITEMIMAGES)
; Set the width of column 0 to 0 pixels
lvcolumn.LVCOLUMN\mask=#LVCF_WIDTH
lvcolumn.LVCOLUMN\cx=0 ; width
SendMessage_(GadgetID(#ListIconGadget1),#LVM_SETCOLUMN,0,@lvcolumn.LVCOLUMN)
; Set the window callback for the listicon gadget's parent window to capture resize messages
SetWindowCallback(@ExtendListCallback(),ParentWindowID)
ProcedureReturn hImageList
EndProcedure
Procedure AddImageListElement(hImageList, hImage, hImageMask)
ImageIndex=ImageList_Add_(hImageList,hImage,hImageMask)
ProcedureReturn ImageIndex
EndProcedure
; Procedure ResizeImageList(hImageList, Width, Height)
;
; EndProcedure
Procedure SetListIconElement(hListIcon, ImageListIndex, Row, Column, Text.s, ReplaceText)
Var.LV_ITEM
Var\mask=#LVIF_IMAGE
If ReplaceText=1
Var\mask|#LVIF_TEXT
EndIf
Var\iItem=Row ; row number for change
Var\iSubItem=Column ; column
Var\iImage=ImageListIndex; index of icon in the list
Var\pszText=@Text.s ; text
SendMessage_(hListIcon,#LVM_SETITEM,0,@Var)
EndProcedure
If OpenWindow(#MainWindow,0,0,320,240,"Icon List",#PB_Window_ScreenCentered|#PB_Window_SystemMenu)
CreateGadgetList(WindowID(#MainWindow))
ListIconGadget(#ListIconGadget1,0,0,320,240,"Original",298/3,#PB_ListIcon_FullRowSelect)
hImageList=ExtendListIconGadget(GadgetID(#ListIconGadget1),32,32,#MainWindow)
AddGadgetColumn(#ListIconGadget1,1,"Column 1",298/3)
AddGadgetColumn(#ListIconGadget1,2,"Column 2",298/3)
AddGadgetColumn(#ListIconGadget1,3,"Column 3",298/3)
FontID=LoadFont(#Font,"ARIAL",9)
SetGadgetFont(#ListIconGadget1,FontID)
For i=0 To 4
; When using ExtendListIconGadget, text added using AddGadgetItem is placed into column 0 and is not visible.
; Use SetGadgetItemText to set the text for the first visible row
AddGadgetItem(#ListIconGadget1,i,"")
Next i
ImageID=CatchImage(#PB_Any,?MyImage)
ImageIndex=AddImageListElement(hImageList,ImageID(ImageID),0)
If ImageIndex=-1
Debug "Failed to load image"
EndIf
FreeImage(ImageID)
For i=0 To 4
SetGadgetItemText(#ListIconGadget1,i,"Item "+Str(i),1)
SetGadgetItemText(#ListIconGadget1,i,"Item "+Str(i),2)
SetGadgetItemText(#ListIconGadget1,i,"Item "+Str(i),3)
Next i
For i=1 To 3
SetListIconElement(GadgetID(#ListIconGadget1),ImageIndex,i,1,"Alt "+Str(i),1)
Next
For i=0 To 2
SetListIconElement(GadgetID(#ListIconGadget1),ImageIndex,i,2,"Alt "+Str(i),1)
Next
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Quit=1
EndSelect
Until Quit
If HwndIm_List
ImageList_Destroy_(HwndIm_List)
EndIf
EndIf
End
DataSection
MyImage:
Data.b $89,$50,$4E,$47,$0D,$0A,$1A,$0A,$00,$00,$00,$0D,$49,$48,$44,$52,$00,$00,$00,$20
Data.b $00,$00,$00,$20,$08,$02,$00,$00,$00,$FC,$18,$ED,$A3,$00,$00,$00,$19,$74,$45,$58
Data.b $74,$53,$6F,$66,$74,$77,$61,$72,$65,$00,$41,$64,$6F,$62,$65,$20,$49,$6D,$61,$67
Data.b $65,$52,$65,$61,$64,$79,$71,$C9,$65,$3C,$00,$00,$0A,$42,$49,$44,$41,$54,$78,$DA
Data.b $3C,$96,$69,$8C,$DC,$65,$1D,$C7,$9F,$EB,$7F,$CF,$BD,$33,$BB,$33,$7B,$75,$EF,$ED
Data.b $F6,$58,$B6,$F6,$A2,$85,$16,$52,$6A,$A0,$05,$11,$0A,$22,$09,$8D,$45,$63,$D4,$F8
Data.b $42,$34,$51,$63,$E2,$1B,$49,$78,$E3,$2B,$13,$63,$D2,$17,$92,$18,$40,$31,$46,$42
Data.b $03,$8D,$10,$85,$0A,$2D,$2D,$F4,$DA,$A5,$ED,$DE,$67,$DB,$9D,$99,$EE,$EE,$CC,$EC
Data.b $DC,$F3,$BF,$9F,$E7,$F1,$99,$42,$7C,$F2,$64,$32,$93,$3C,$F3,$3C,$BF,$F3,$F3,$FD
Data.b $C1,$DF,$FE,$EE,$34,$80,$04,$00,$0E,$C4,$E2,$90,$03,$E4,$52,$AA,$06,$23,$D9,$D9
Data.b $89,$1B,$E7,$FE,$01,$10,$A1,$C0,$F6,$20,$85,$58,$82,$9C,$42,$CA,$90,$38,$C3,$39
Data.b $96,$14,$00,$30,$24,$CC,$F1,$6D,$85,$18,$1A,$94,$AA,$0E,$62,$18,$63,$BF,$1E,$6B
Data.b $ED,$1A,$79,$F0,$B1,$60,$24,$0E,$20,$E0,$CC,$25,$1C,$E1,$58,$4B,$07,$E3,$14,$50
Data.b $08,$31,$A2,$8C,$71,$62,$14,$B2,$4B,$4B,$17,$DF,$23,$66,$89,$6B,$01,$1B,$98,$12
Data.b $51,$3A,$62,$51,$E6,$D3,$5A,$B9,$62,$BA,$1E,$04,$0C,$B8,$35,$CB,$03,$94,$60,$99
Data.b $23,$8B,$6E,$52,$2D,$4C,$80,$E6,$9A,$55,$13,$1B,$2C,$9B,$AD,$E6,$F3,$1D,$7D,$23
Data.b $98,$48,$85,$8D,$55,$02,$9B,$C7,$A9,$D8,$00,$62,$C8,$A1,$4B,$A1,$5D,$B9,$37,$FD
Data.b $D1,$1B,$76,$F9,$9E,$62,$04,$5B,$12,$81,$64,$5B,$BB,$A4,$06,$6F,$CC,$64,$30,$86
Data.b $B1,$54,$C8,$A9,$D4,$1B,$96,$2D,$31,$42,$98,$6B,$D9,$9E,$05,$91,$C4,$A9,$5F,$2F
Data.b $21,$59,$83,$50,$C7,$AC,$5E,$75,$02,$F3,$E3,$97,$3A,$06,$06,$A3,$89,$0E,$08,$20
Data.b $12,$8E,$34,$B7,$88,$0E,$01,$0C,$13,$B7,$92,$CF,$5F,$7E,$CB,$DE,$98,$97,$64,$D5
Data.b $E1,$54,$22,$34,$16,$8D,$CE,$2D,$AF,$2E,$CD,$CE,$AF,$DD,$9E,$BB,$7D,$AF,$D0,$1E
Data.b $0E,$F9,$18,$6E,$BA,$B6,$09,$7D,$9D,$00,$8F,$B2,$2A,$47,$45,$CF,$A4,$CE,$86,$C9
Data.b $0D,$CF,$35,$55,$CD,$CF,$E5,$AB,$73,$D7,$3F,$83,$DC,$43,$50,$DC,$8A,$01,$40,$40
Data.b $78,$01,$98,$B0,$0A,$5A,$E9,$8B,$4B,$B7,$AE,$6C,$56,$3C,$2A,$29,$36,$F0,$59,$9E
Data.b $6C,$D4,$16,$47,$C2,$CE,$AF,$5E,$3B,$1A,$09,$46,$E6,$27,$F3,$A6,$2B,$DC,$08,$9F
Data.b $99,$9A,$A3,$D4,$41,$12,$09,$30,$BF,$E1,$03,$8A,$B5,$B2,$6F,$C7,$8D,$FA,$EE,$C1
Data.b $AD,$97,$57,$72,$44,$D1,$56,$A6,$A6,$07,$C6,$0E,$C8,$9A,$42,$9A,$B9,$45,$C2,$7E
Data.b $00,$25,$19,$D5,$32,$9B,$4B,$D7,$D6,$F3,$95,$BC,$47,$3A,$E2,$AC,$B7,$85,$EC,$1A
Data.b $EE,$38,$B1,$BF,$63,$F4,$C9,$3D,$38,$11,$14,$75,$B0,$6F,$7F,$E1,$F2,$07,$D3,$6F
Data.b $DF,$5A,$27,$18,$CB,$44,$F3,$19,$4B,$C4,$C2,$7E,$A5,$6A,$39,$A0,$E1,$B1,$EF,$6F
Data.b $93,$B7,$44,$D4,$F1,$34,$F1,$61,$DD,$B4,$61,$7A,$69,$66,$E0,$81,$DD,$F7,$3D,$C0
Data.b $00,$21,$E4,$51,$AE,$54,$97,$EB,$95,$6A,$C6,$65,$41,$89,$1F,$1A,$0A,$1C,$3D,$B4
Data.b $6B,$6F,$DC,$68,$EF,$4B,$31,$0A,$9C,$AA,$C3,$09,$92,$DA,$93,$0F,$7E,$47,$7E,$32
Data.b $B3,$F6,$E7,$F3,$35,$04,$65,$97,$7A,$25,$97,$CA,$9A,$5C,$B0,$1A,$03,$6D,$E1,$AD
Data.b $11,$6D,$7C,$71,$D1,$40,$4A,$D1,$2D,$77,$8D,$3C,$E4,$58,$8E,$6B,$D6,$88,$04,$81
Data.b $22,$DE,$80,$C8,$71,$DD,$84,$EA,$7A,$9E,$5F,$63,$A0,$2F,$1A,$3E,$72,$60,$7F,$E7
Data.b $50,$CA,$80,$0E,$85,$BA,$57,$54,$20,$D2,$A0,$E7,$7B,$BC,$86,$43,$F8,$E5,$53,$47
Data.b $4D,$86,$DE,$FB,$7C,$D9,$A2,$54,$14,$9F,$84,$20,$26,$B8,$3D,$AA,$65,$73,$25,$43
Data.b $02,$01,$02,$33,$75,$27,$1C,$0C,$76,$0F,$0C,$5B,$96,$25,$D2,$00,$10,$07,$9C,$D3
Data.b $90,$A6,$E8,$A9,$DE,$62,$CD,$12,$29,$2F,$79,$BE,$A2,$EB,$12,$64,$4C,$8F,$F9,$24
Data.b $0E,$81,$0C,$D6,$2D,$50,$31,$D5,$08,$02,$B2,$51,$47,$81,$44,$3C,$D4,$2D,$6E,$72
Data.b $1C,$CE,$A0,$08,$97,$2A,$CB,$73,$6B,$95,$D5,$9A,$13,$55,$B5,$56,$03,$F9,$90,$38
Data.b $8D,$62,$2C,$DE,$4A,$24,$89,$34,$13,$20,$6A,$88,$72,$88,$68,$23,$D8,$87,$43,$6D
Data.b $0A,$28,$94,$1B,$E6,$5C,$7A,$AD,$AF,$27,$A9,$27,$FA,$90,$E8,$0D,$DF,$F7,$2D,$53
Data.b $57,$CC,$CD,$05,$EB,$2F,$EF,$8E,$5F,$B8,$34,$AF,$02,$1A,$D0,$F4,$B8,$22,$DF,$B6
Data.b $EC,$B0,$1E,$D2,$55,$5E,$AF,$99,$E9,$9A,$9B,$D2,$14,$66,$89,$D6,$93,$D6,$36,$E6
Data.b $D3,$2B,$93,$89,$8E,$1E,$D4,$EC,$60,$91,$61,$D1,$9F,$D4,$77,$81,$12,$EF,$DB,$61
Data.b $00,$E0,$39,$74,$7E,$BD,$EA,$95,$4B,$CE,$FA,$0A,$0E,$71,$12,$95,$11,$B4,$2E,$5E
Data.b $99,$FC,$E1,$AF,$DF,$7C,$FB,$EC,$65,$5E,$B5,$2A,$65,$5B,$23,$78,$7B,$6F,$94,$88
Data.b $98,$7A,$BE,$2E,$23,$45,$42,$63,$3D,$49,$06,$99,$EB,$38,$B6,$EF,$7B,$76,$B5,$90
Data.b $BB,$83,$88,$48,$6E,$33,$CB,$90,$71,$CE,$28,$73,$7D,$D6,$3F,$BA,$2F,$28,$4B,$0A
Data.b $A7,$E9,$0D,$F3,$B6,$0B,$16,$33,$59,$93,$99,$5E,$08,$CE,$4C,$4D,$9D,$7E,$E3,$E3
Data.b $52,$D9,$6E,$EF,$6C,$BF,$87,$81,$A5,$4B,$8F,$EE,$1D,$DA,$33,$90,$92,$31,$B7,$3D
Data.b $1A,$24,$92,$80,$07,$C6,$A4,$2B,$16,$C9,$5B,$E2,$7A,$CB,$73,$3D,$86,$28,$51,$30
Data.b $51,$10,$11,$1E,$61,$0C,$64,$04,$08,$F6,$BB,$FB,$06,$FA,$86,$86,$D2,$2B,$B3,$B9
Data.b $62,$F5,$CC,$BF,$AE,$CA,$C0,$B5,$FE,$33,$B5,$7B,$6B,$C7,$A3,$21,$3E,$BC,$A5,$2D
Data.b $98,$AF,$9B,$8E,$D9,$3F,$10,$DF,$3B,$D8,$7D,$E2,$D8,$EE,$B3,$1F,$4E,$28,$80,$4B
Data.b $00,$48,$10,$07,$65,$F9,$9B,$0F,$6C,$B1,$AB,$B5,$D9,$C2,$CD,$96,$A8,$21,$61,$18
Data.b $0A,$27,$08,$56,$88,$AA,$81,$48,$10,$73,$06,$30,$02,$BA,$8A,$BC,$40,$A8,$A7,$BF
Data.b $B7,$96,$5E,$B0,$EB,$E6,$F4,$AA,$17,$8E,$C6,$E7,$67,$D7,$56,$16,$D6,$9E,$F9,$CD
Data.b $89,$EF,$BD,$D4,$3D,$35,$97,$D9,$91,$68,$51,$2C,$3B,$92,$8C,$94,$72,$F9,$3B,$CB
Data.b $F7,$22,$8A,$14,$56,$61,$22,$A0,$95,$6D,$3F,$5B,$AC,$7E,$31,$BD,$5A,$77,$E9,$C1
Data.b $E1,$6D,$E5,$C6,$E6,$F6,$91,$1D,$14,$30,$24,$5A,$4D,$91,$B8,$44,$38,$06,$5C,$C4
Data.b $53,$D3,$A4,$FE,$91,$01,$23,$18,$70,$1A,$76,$7A,$AD,$C6,$39,$3C,$B2,$B3,$77,$AC
Data.b $53,$A0,$51,$D1,$B9,$12,$47,$50,$85,$B8,$FD,$81,$ED,$BA,$AC,$67,$26,$D7,$1C,$DF
Data.b $E9,$0A,$2B,$61,$45,$D3,$08,$53,$98,$FF,$FA,$27,$33,$EF,$5E,$5B,$8E,$AB,$F2,$DD
Data.b $D5,$E5,$6D,$7B,$1F,$1B,$D9,$36,$26,$03,$0F,$11,$28,$1C,$04,$12,$02,$1A,$01,$2A
Data.b $E7,$BE,$47,$07,$76,$ED,$E9,$1A,$19,$94,$85,$6B,$B6,$3B,$18,$D5,$9E,$E8,$6F,$1B
Data.b $4B,$C6,$DA,$64,$B4,$39,$BB,$3C,$39,$B3,$CC,$82,$AA,$D9,$30,$33,$C5,$B2,$28,$A4
Data.b $E1,$64,$3C,$1E,$8D,$56,$28,$BF,$5B,$2C,$13,$40,$33,$9B,$A6,$A2,$1B,$D4,$77,$86
Data.b $76,$EE,$3A,$7E,$EC,$79,$BB,$51,$53,$24,$80,$9A,$11,$BC,$BF,$91,$68,$4D,$C1,$27
Data.b $DB,$8E,$26,$3A,$07,$47,$F7,$B5,$44,$34,$88,$F1,$DC,$F2,$BA,$C6,$59,$5C,$27,$AA
Data.b $AA,$24,$BB,$5B,$05,$FE,$2F,$5E,$9F,$7E,$FD,$AF,$1F,$94,$64,$B8,$E5,$50,$4F,$A8
Data.b $23,$60,$52,$2F,$DF,$28,$97,$6D,$D1,$D4,$BE,$C7,$44,$AD,$F3,$47,$8F,$3D,$F9,$D3
Data.b $1F,$BD,$42,$CD,$B2,$43,$DD,$26,$4D,$45,$0D,$49,$5C,$34,$12,$C0,$CC,$15,$D5,$A1
Data.b $00,$71,$92,$EF,$3E,$78,$38,$D1,$9A,$8A,$1A,$78,$72,$AD,$F8,$B7,$89,$A5,$06,$70
Data.b $6F,$5E,$9B,$3C,$73,$EE,$C6,$AD,$75,$F7,$EF,$67,$AE,$2E,$DE,$29,$F7,$0C,$0F,$46
Data.b $FA,$53,$23,$03,$2D,$C7,$C7,$BA,$DB,$C2,$3A,$E5,$C0,$E6,$3C,$AA,$72,$E0,$D8,$A9
Data.b $8E,$1E,$CB,$13,$5A,$E1,$A4,$82,$50,$93,$01,$7E,$E1,$D9,$13,$91,$50,$48,$14,$2A
Data.b $02,$4C,$68,$95,$F8,$04,$BE,$13,$0B,$06,$93,$3D,$43,$EB,$E9,$BB,$F9,$DC,$C6,$62
Data.b $B1,$96,$0C,$91,$72,$AD,$36,$BE,$9C,$73,$05,$D1,$83,$4A,$D7,$40,$D7,$B6,$78,$74
Data.b $7D,$2E,$B3,$B4,$51,$0B,$26,$E3,$14,$92,$42,$CD,$34,$54,$39,$15,$90,$25,$CE,$EF
Data.b $AE,$E5,$E7,$A6,$6E,$24,$C2,$DA,$C3,$63,$A3,$AE,$D5,$C0,$2F,$9E,$F8,$56,$2C,$A4
Data.b $23,$E6,$21,$21,$79,$02,$DF,$1C,$28,$A8,$99,$EE,$64,$32,$31,$3A,$D2,$21,$57,$32
Data.b $D9,$6C,$E5,$DA,$7C,$AE,$A7,$2B,$92,$48,$45,$2D,$D3,$6C,$6D,$89,$F9,$9C,$CF,$5D
Data.b $9B,$99,$99,$CB,$B6,$6C,$ED,$93,$E2,$C1,$7C,$A5,$86,$38,$97,$21,$76,$AA,$75,$99
Data.b $40,$3D,$64,$78,$5C,$D2,$02,$E1,$AE,$54,$62,$62,$7C,$02,$9F,$7C,$F6,$A9,$58,$C0
Data.b $60,$DC,$D7,$10,$14,$5D,$27,$E1,$FB,$5B,$BC,$41,$59,$4B,$24,$D0,$15,$B0,$1F,$D9
Data.b $F7,$8D,$42,$DD,$3F,$7F,$73,$AE,$3F,$15,$36,$5C,$AF,$51,$A8,$05,$90,$12,$8E,$05
Data.b $F6,$3E,$BC,$73,$DB,$9E,$FE,$85,$D5,$B5,$85,$BB,$9B,$98,$73,$B3,$58,$31,$AB,$0D
Data.b $59,$C6,$A1,$AE,$E1,$96,$A1,$5D,$B6,$65,$BD,$71,$FA,$F4,$D5,$2F,$6F,$E1,$93,$CF
Data.b $3C,$15,$09,$0A,$D6,$73,$D1,$07,$58,$80,$4F,$F0,$5B,$F0,$49,$00,$1C,$30,$4D,$57
Data.b $D4,$78,$B2,$A3,$33,$F5,$E2,$D3,$4F,$50,$3D,$F4,$CE,$D9,$4F,$93,$49,$7D,$68,$C7
Data.b $88,$4C,$68,$9D,$F8,$6A,$4B,$24,$5B,$35,$EF,$64,$8B,$E5,$8A,$E5,$E6,$8B,$84,$53
Data.b $84,$19,$53,$02,$46,$FF,$01,$28,$EB,$AB,$D3,$33,$0B,$93,$37,$45,$6E,$08,$66,$BE
Data.b $0C,$1D,$89,$08,$E6,$36,$A9,$2A,$E8,$07,$31,$C0,$58,$11,$02,$2D,$DC,$D2,$43,$11
Data.b $CF,$A7,$54,$56,$5F,$F9,$C9,$A9,$CE,$64,$CB,$E2,$EC,$6C,$81,$17,$CC,$46,$1E,$FB
Data.b $8C,$4B,$DB,$1A,$35,$AF,$5E,$B1,$DD,$5C,$51,$F4,$10,$D1,$75,$97,$B9,$E1,$DE,$9D
Data.b $24,$10,$28,$17,$37,$17,$E7,$26,$85,$C9,$84,$88,$2D,$71,$5D,$95,$A0,$A0,$1D,$16
Data.b $65,$29,$80,$D2,$54,$37,$C1,$77,$81,$28,$CF,$25,$D4,$67,$82,$57,$96,$47,$55,$CB
Data.b $1A,$D9,$36,$FA,$79,$1A,$14,$E7,$3F,$ED,$D1,$03,$C1,$96,$54,$7A,$AD,$14,$E4,$7E
Data.b $31,$93,$73,$AA,$A6,$DE,$16,$B0,$1A,$B5,$AD,$0F,$1D,$B1,$B5,$6E,$31,$79,$DC,$BC
Data.b $7C,$A1,$52,$CC,$AB,$04,$DB,$E2,$EF,$86,$22,$87,$0C,$24,$50,$87,$90,$4C,$64,$84
Data.b $65,$61,$0C,$47,$22,$6B,$6E,$B3,$7C,$B9,$D0,$04,$A1,$D6,$E2,$75,$02,$3F,$9B,$4E
Data.b $97,$37,$37,$CA,$25,$33,$6D,$84,$14,$66,$FB,$9B,$19,$C5,$B1,$1A,$0E,$8F,$18,$8A
Data.b $5F,$6F,$0C,$1E,$78,$68,$E0,$F0,$F3,$5F,$9C,$FB,$64,$EA,$C6,$C4,$9D,$85,$05,$21
Data.b $26,$B6,$4F,$35,$15,$20,$C3,$00,$9A,$CC,$C5,$37,$55,$E1,$44,$E1,$C0,$E0,$50,$FD
Data.b $0A,$60,$00,$AB,$80,$10,$AE,$29,$30,$A4,$C1,$FC,$7A,$7E,$7B,$5F,$E7,$E3,$8F,$EC
Data.b $6D,$ED,$4C,$69,$9D,$83,$72,$DB,$A0,$0D,$B4,$4C,$A1,$41,$9B,$47,$BC,$D1,$B1,$03
Data.b $3F,$FF,$FD,$9B,$99,$DB,$1B,$33,$B7,$6E,$5E,$BF,$3E,$91,$8C,$A8,$0C,$20,$21,$31
Data.b $C2,$6A,$24,$26,$36,$AC,$8B,$EB,$55,$AE,$21,$AE,$35,$47,$80,$E6,$84,$C1,$9B,$42
Data.b $2D,$DE,$50,$A2,$3A,$89,$05,$0B,$55,$F3,$E5,$5F,$BC,$FA,$C9,$7F,$CF,$BD,$74,$F2
Data.b $C5,$5F,$BE,$FA,$DA,$96,$A1,$61,$50,$AB,$B2,$5A,$59,$4C,$72,$40,$10,$62,$AD,$34
Data.b $5B,$AC,$7F,$36,$FE,$E5,$87,$67,$FF,$79,$67,$69,$76,$FF,$48,$BB,$68,$7B,$41,$7E
Data.b $A8,$48,$3F,$3E,$F5,$1C,$01,$B2,$0C,$34,$24,$06,$14,$70,$5F,$79,$BE,$1A,$21,$9B
Data.b $8B,$40,$85,$E0,$A5,$2B,$B7,$2E,$4D,$97,$8A,$9E,$4E,$51,$78,$E2,$CA,$B5,$F5,$EC
Data.b $C6,$48,$EF,$C0,$D5,$8E,$B6,$CC,$4D,$A6,$32,$DB,$45,$A0,$5C,$2E,$03,$A2,$BE,$FF
Data.b $E9,$E7,$6F,$7D,$F4,$78,$AF,$8E,$8E,$EC,$E9,$CF,$E5,$AA,$A5,$92,$25,$30,$F9,$B3
Data.b $EF,$1E,$FF,$C1,$A9,$E7,$05,$E1,$84,$EA,$F3,$AF,$0D,$47,$F7,$AF,$16,$BF,$28,$90
Data.b $24,$5C,$DD,$A8,$BC,$F3,$EF,$DB,$2B,$36,$8A,$C7,$60,$CF,$E0,$E0,$B9,$F7,$FF,$FE
Data.b $DC,$91,$43,$A3,$BD,$BD,$89,$47,$8E,$25,$BA,$BA,$5A,$36,$E7,$6C,$C7,$5F,$2B,$A3
Data.b $EE,$23,$2F,$78,$37,$A7,$2F,$5D,$B8,$10,$1C,$4E,$8C,$2F,$6C,$E4,$D2,$05,$88,$58
Data.b $38,$60,$3C,$7D,$FC,$31,$57,$E8,$C1,$D7,$24,$72,$EE,$C7,$E4,$FF,$0B,$43,$31,$C6
Data.b $2C,$AE,$D8,$76,$7B,$77,$17,$73,$78,$C3,$13,$68,$94,$65,$92,$DD,$2C,$15,$57,$73
Data.b $C3,$94,$8C,$1E,$3E,$5C,$82,$06,$B7,$D7,$FB,$F6,$1F,$85,$B1,$B6,$5C,$E1,$E3,$58
Data.b $4C,$B9,$5D,$F1,$55,$C6,$0D,$24,$A5,$29,$FD,$D3,$1F,$FF,$70,$F0,$F1,$6F,$4F,$CC
Data.b $CC,$10,$28,$71,$AC,$E1,$FB,$C2,$7F,$DF,$09,$5F,$CC,$DA,$44,$24,$C8,$CC,$36,$EE
Data.b $6E,$98,$12,$B6,$AD,$CD,$92,$EB,$A2,$CC,$CA,$9C,$28,$DF,$96,$60,$C0,$33,$D8,$FC
Data.b $AD,$F1,$52,$21,$A7,$A9,$4A,$BE,$88,$BB,$97,$B3,$EB,$5F,$5C,$35,$0B,$F9,$84,$2C
Data.b $02,$8D,$54,$00,$D2,$F5,$7A,$2C,$9E,$38,$78,$E8,$E1,$B5,$92,$AD,$1A,$51,$D2,$68
Data.b $98,$B3,$33,$19,$FE,$D5,$03,$CD,$39,$15,$F2,$52,$DD,$2E,$F1,$7C,$09,$98,$3E,$F0
Data.b $1B,$B5,$C2,$66,$A9,$DE,$70,$6D,$CF,$D1,$B4,$40,$53,$5B,$91,$60,$30,$09,$B6,$B5
Data.b $9E,$3C,$F9,$72,$3E,$73,$2F,$B3,$91,$9D,$9E,$BC,$91,$D0,$03,$42,$9A,$C4,$08,$64
Data.b $53,$EA,$EA,$46,$48,$D7,$2F,$9E,$3F,$FF,$E0,$E1,$87,$A1,$6B,$FD,$4F,$80,$01,$00
Data.b $EE,$11,$56,$24,$33,$0A,$3C,$CC,$00,$00,$00,$00,$49,$45,$4E,$44,$AE,$42,$60,$82
EndDataSection