For Each colpbp As Map In pbp
s2 = colpbp.Get("s2")
desc = colpbp.Get("desc")
If sf.instring(desc, "'") > 0 Then 'Player name has apostrophe
desc = sf.Stuff(desc, "'", "'")
End If
s1 = colpbp.Get("s1")
tno = colpbp.Get("tno")
lead = colpbp.Get("lead")
gt = colpbp.Get("gt")
typ = colpbp.Get("typ")
period = colpbp.Get("period")
Scoring = colpbp.Get("scoring")
Dim lbl1, lbl2, lbl3, lbl4, lbl5 As Label
lbl1.Initialize("")
lbl2.Initialize("")
lbl3.Initialize("")
lbl4.Initialize("")
lbl5.Initialize("")
lbl1.Text = "Q" & period & " " & gt
lbl3.Text = s1 & ":" & s2
lbl5.Text = lead
If tno = "1" Then
lbl2.Text = desc
Else
lbl4.Text = desc
End If
If (desc.Contains("made") OR desc.Contains("dunk") OR desc.Contains("tip in")) AND ScoringOnlyButton.Selected = True Then 'Collect only scoring (made) events
If AllButton.Selected = True Then 'All Quarters button selected & so collect events
tv1.Items.Add(Array As Object(WrapLabel(lbl1, "CENTER_LEFT") , WrapLabel(lbl2, "CENTER_LEFT") , WrapLabel(lbl3, "CENTER"), WrapLabel(lbl4, "CENTER_LEFT"), WrapLabel(lbl5, "CENTER")))
Else
If Q1Button.Selected = True AND period = "1" Then 'Q1 button selected & so collect only period 1 events
'tv1.Items.Add(row)
tv1.Items.Add(Array As Object(WrapLabel(lbl1, "CENTER_LEFT") , WrapLabel(lbl2, "CENTER_LEFT") , WrapLabel(lbl3, "CENTER"), WrapLabel(lbl4, "CENTER_LEFT"), WrapLabel(lbl5, "CENTER")))
End If
If Q2Button.Selected = True AND period = "2" Then 'Q2 button selected & so collect only period 2 events
'tv1.Items.Add(row)
tv1.Items.Add(Array As Object(WrapLabel(lbl1, "CENTER_LEFT") , WrapLabel(lbl2, "CENTER_LEFT") , WrapLabel(lbl3, "CENTER"), WrapLabel(lbl4, "CENTER_LEFT"), WrapLabel(lbl5, "CENTER")))
End If
If Q3Button.Selected = True AND period = "3" Then 'Q3 button selected & so collect only period 3 events
'tv1.Items.Add(row)
tv1.Items.Add(Array As Object(WrapLabel(lbl1, "CENTER_LEFT") , WrapLabel(lbl2, "CENTER_LEFT") , WrapLabel(lbl3, "CENTER"), WrapLabel(lbl4, "CENTER_LEFT"), WrapLabel(lbl5, "CENTER")))
End If
If Q4Button.Selected = True AND period = "4" Then 'Q4 button selected & so collect only period 4 events
'tv1.Items.Add(row)
tv1.Items.Add(Array As Object(WrapLabel(lbl1, "CENTER_LEFT") , WrapLabel(lbl2, "CENTER_LEFT") , WrapLabel(lbl3, "CENTER"), WrapLabel(lbl4, "CENTER_LEFT"), WrapLabel(lbl5, "CENTER")))
End If
End If
End If
If ScoringOnlyButton.Selected = False Then 'Collect all events
If AllButton.Selected = True Then 'All Quarters button selected & so collect events
tv1.Items.Add(Array As Object(WrapLabel(lbl1, "CENTER_LEFT") , WrapLabel(lbl2, "CENTER_LEFT") , WrapLabel(lbl3, "CENTER"), WrapLabel(lbl4, "CENTER_LEFT"), WrapLabel(lbl5, "CENTER")))
Else
If Q1Button.Selected = True AND period = "1" Then 'Q1 button selected & so collect only period 1 events
'tv1.Items.Add(row)
tv1.Items.Add(Array As Object(WrapLabel(lbl1, "CENTER_LEFT") , WrapLabel(lbl2, "CENTER_LEFT") , WrapLabel(lbl3, "CENTER"), WrapLabel(lbl4, "CENTER_LEFT"), WrapLabel(lbl5, "CENTER")))
End If
If Q2Button.Selected = True AND period = "2" Then 'Q2 button selected & so collect only period 2 events
'tv1.Items.Add(row)
tv1.Items.Add(Array As Object(WrapLabel(lbl1, "CENTER_LEFT") , WrapLabel(lbl2, "CENTER_LEFT") , WrapLabel(lbl3, "CENTER"), WrapLabel(lbl4, "CENTER_LEFT"), WrapLabel(lbl5, "CENTER")))
End If
If Q3Button.Selected = True AND period = "3" Then 'Q3 button selected & so collect only period 3 events
'tv1.Items.Add(row)
tv1.Items.Add(Array As Object(WrapLabel(lbl1, "CENTER_LEFT") , WrapLabel(lbl2, "CENTER_LEFT") , WrapLabel(lbl3, "CENTER"), WrapLabel(lbl4, "CENTER_LEFT"), WrapLabel(lbl5, "CENTER")))
End If
If Q4Button.Selected = True AND period = "4" Then 'Q4 button selected & so collect only period 4 events
'tv1.Items.Add(row)
tv1.Items.Add(Array As Object(WrapLabel(lbl1, "CENTER_LEFT") , WrapLabel(lbl2, "CENTER_LEFT") , WrapLabel(lbl3, "CENTER"), WrapLabel(lbl4, "CENTER_LEFT"), WrapLabel(lbl5, "CENTER")))
End If
End If
End If
Next
Sub WrapLabel(lbl As Label, Alignment As String) As Pane
'For alignment of tbleview cells
Dim pn1 As AnchorPane
pn1.Initialize("")
pn1.AddNode(lbl, 0, 0, -1, -1)
pn1.FillHorizontally(lbl, 0, 0)
Dim jo1 = lbl As JavaObject
jo1.RunMethod("setAlignment", Array As Object(Alignment))
Return pn1
End Sub