This routine gets called each time a string of data is requested from the database.
I'll work up a smaller example on the weekend and I net it works too (Rolls eyes) but the main program wonts.
Code: Select all
; Handle all list display jobs from add, edit, list, import modes etc
Procedure DisplayTitleString(LineNumber.i, DisplayMode.s)
Select DisplayMode.s
Case "AddMode"
; Add Keeper items to the list
TitleString.s = Keeper\Title + " (" + Keeper\Attachments + ")" + #LF$
CategoryString.s = Keeper\Category + #LF$
;InformationString.s = Keeper\Information + #LF$
FavouriteString.s = Keeper\Favourite + #LF$
LockedString.s = Keeper\Locked + #LF$
DeletedString.s = Keeper\Deleted + #LF$
UpdatedString.s = Keeper\Updated + #LF$
OwnerString.s = Keeper\Owner + #LF$
AttachmentString.s = Keeper\Attachments + #LF$
RecordString.s = Keeper\Record
;
ListString.s = TitleString.s + CategoryString.s + FavouriteString.s
ListString.s + LockedString.s + DeletedString.s + UpdatedString.s
ListString.s + OwnerString.s + AttachmentString.s + RecordString.s
;
AddGadgetItem(#Gadget_Keeper_Titles, #AtTheEndOfTheList, KillQuote(ListString.s))
; Set a single colum to a different colour
;SetGadgetItemColor(#Gadget_Keeper_Titles, #PB_All, #PB_Gadget_FrontColor, $800080, #TitleColumn)
;SetGadgetItemColor(#Gadget_Keeper_Titles, #PB_All, #PB_Gadget_FrontColor, $800080, #CategoryColumn)
;SetGadgetItemColor(#Gadget_Keeper_Titles, #PB_All, #PB_Gadget_FrontColor, $800080, #FavouriteColumn)
;SetGadgetItemColor(#Gadget_Keeper_Titles, #PB_All, #PB_Gadget_FrontColor, $800080, #LockedColumn)
;SetGadgetItemColor(#Gadget_Keeper_Titles, #PB_All, #PB_Gadget_FrontColor, $800080, #DeletedColumn)
;SetGadgetItemColor(#Gadget_Keeper_Titles, #PB_All, #PB_Gadget_FrontColor, $800080, #UpdatedColumn)
;SetGadgetItemColor(#Gadget_Keeper_Titles, #PB_All, #PB_Gadget_FrontColor, $FF0000, #OwnerColumn)
;SetGadgetItemColor(#Gadget_Keeper_Titles, #PB_All, #PB_Gadget_FrontColor, $800080, #AttachmentsColumn)
;SetGadgetItemColor(#Gadget_Keeper_Titles, #PB_All, #PB_Gadget_FrontColor, $800080, #RecordColumn)
;
ListString.s = #Empty$
; Update columns in the list for an edited record
Case "EditMode"
; Update the details in the list for the selected record
SetGadgetItemText(#Gadget_Keeper_Titles, LineNumber.i, KillQuote(Keeper\Title) + " (" + Keeper\Attachments + ")", #TitleColumn)
SetGadgetItemText(#Gadget_Keeper_Titles, LineNumber.i, KillQuote(Keeper\Category), #CategoryColumn)
;SetGadgetItemText(#Gadget_Keeper_Titles, LineNumber.i, KillQuote(Keeper\Information), #InformationColumn)
SetGadgetItemText(#Gadget_Keeper_Titles, LineNumber.i, Keeper\Favourite, #FavouriteColumn)
SetGadgetItemText(#Gadget_Keeper_Titles, LineNumber.i, Keeper\Locked, #LockedColumn)
SetGadgetItemText(#Gadget_Keeper_Titles, LineNumber.i, Keeper\Deleted, #DeletedColumn)
SetGadgetItemText(#Gadget_Keeper_Titles, LineNumber.i, Keeper\Updated, #UpdatedColumn)
SetGadgetItemText(#Gadget_Keeper_Titles, LineNumber.i, Keeper\Owner, #OwnerColumn)
SetGadgetItemText(#Gadget_Keeper_Titles, LineNumber.i, Keeper\Attachments, #AttachmentsColumn)
SetGadgetItemText(#Gadget_Keeper_Titles, LineNumber.i, Keeper\Record, #RecordColumn)
;
EndSelect
; Toggle individual rows to different colours
If Toggle\ColourBand = #True ;: Debug "Colour band is enabled: " + Str(Toggle\ColourBand)
If Program\AlternateRow = #True ;: Debug "Alternate row is: " + Str(Program\AlternateRow) : Debug "Line number is: " + Str(LineNumber.i)
Program\AlternateRow = #False ;: Debug "Alternate row is: " + Str(Program\AlternateRow) : Debug "------------------------------------------------------------"
SetGadgetItemColor(#Gadget_Keeper_Titles, LineNumber.i, #PB_Gadget_BackColor, $D4D4D4, -1)
SetGadgetItemColor(#Gadget_Keeper_Titles, LineNumber.i, #PB_Gadget_FrontColor, $000000, -1)
ElseIf Program\AlternateRow = #False ;: Debug "Alternate row is: " + Str(Program\AlternateRow)
Program\AlternateRow = #True ;: Debug "Alternate row is: " + Str(Program\AlternateRow) : Debug "------------------------------------------------------------"
SetGadgetItemColor(#Gadget_Keeper_Titles, LineNumber.i, #PB_Gadget_BackColor, $C1C1C1, -1)
SetGadgetItemColor(#Gadget_Keeper_Titles, LineNumber.i, #PB_Gadget_FrontColor, $FFFFFF, -1)
EndIf
EndIf
If Keeper\Locked = "1"
SetGadgetItemImage(#Gadget_Keeper_Titles, LineNumber.i, ImageID(#Image_ListLocked))
ElseIf Keeper\Locked <> "1"
If Keeper\Deleted = "1"
SetGadgetItemData(#Gadget_Keeper_Titles, LineNumber.i, Val(Keeper\Deleted))
RedrawWindow_(GadgetID(#Gadget_Keeper_Titles), 0, 0, #RDW_INVALIDATE | #RDW_ERASE)
SetGadgetItemImage(#Gadget_Keeper_Titles, LineNumber.i, ImageID(#Image_ListDeleted))
ElseIf Keeper\Deleted <> "1"
If Keeper\Favourite = "1"
SetGadgetItemImage(#Gadget_Keeper_Titles, LineNumber.i, ImageID(#Image_ListFavourite))
ElseIf Keeper\Favourite <> "1"
SetGadgetItemImage(#Gadget_Keeper_Titles, LineNumber.i, ImageID(#Image_ListNormal))
EndIf
EndIf
EndIf
EndProcedure