Public Sub AddItem(Text As String, Image As Bitmap, ReturnValue As Object, tag As Int)
Utilities.LogM(0,"Add Item has been called:" & Text & " tag=" & tag & " Value="& ReturnValue)
Dim item As ActionItem
item.Initialize
item.Text = Text
item.Image = Image
item.Value = ReturnValue
item.tag = tag
If Not(Image.IsInitialized) Then
If (showNoImageToLeft) Then
mListView.AddTwoLines2(Text,"",item)
Else
mListView.AddTwoLinesAndBitmap2(Text, "", Null, item)
End If
Else
Utilities.LogM(0,"has image of h=" & Image.Height & " w=" & Image.Width)
mListView.AddTwoLinesAndBitmap2(Text, "", Image, item)
hasImage = True
End If
'Log (mListView.Size & " items Hight:" & (mListView.Size * itemHeight))
'mSlidePanel.Height = mListView.Size * itemHeight - 2
'If (mSlidePanel.Height > 100%y - mSlidePanel.Top) Then mSlidePanel.Height = 100%y - mSlidePanel.Top
mSlidePanel.Height = mListView.Size * itemHeight - 2
If (mSlidePanel.Height > 100%y) Then mSlidePanel.Height = 100%y
mSlidePanel.Top = 100%y-mSlidePanel.Height ' set to grow from the bottom
mListView.Height = mSlidePanel.Height
'log ("width=" & mlistView.Width)
Dim c As Canvas
c.Initialize(mListView)
Dim w As Int = c.MeasureStringWidth(Text,mListView.TwoLinesAndBitmap.Label.Typeface,mListView.TwoLinesAndBitmap.Label.TextSize) + mListView.TwoLinesAndBitmap.Label.Left+ 10
'Log ("w=" & w)
If (w>100%x) Then w = 100%x
If (w > mSlidePanel.Width ) Then ' if smaller no need to change, leave the width as the wider of all labels
'Log ("setting width to be:" & w)
mSlidePanel.Width = w
mListView.Width = w
End If
End Sub