private void canvas_MouseMove(object sender, MouseEventArgs e)
{
Point pos = canvas.PointToClient(Cursor.Position);
int cellSizeZoomed = (int)Math.Round(kCellSize * mZoom);
int maxRows = Math.Min(mItemCount, kMaxRows);
int x = pos.X / cellSizeZoomed;
int y = (canvas.Height - pos.Y - maxRows - kBottomOffset) / cellSizeZoomed;
List<JsonFileData> list;
if (mNetWorthValues.TryGetValue(x + 1, out list))
{
if (y < list.Count && y >= 0)
{
if (list[y] != mHoveredFileData)
{
pos.X = pos.X + 2;
pos.Y = pos.Y + 2;
mHoveredFileData = list[y];
string tooltip = mHoveredFileData.FileName;
if (mHoveredFileData.RecommendedMinNetWorth >= 0)
{
tooltip = tooltip + "\n Recommended Net Worth: " + mHoveredFileData.RecommendedMinNetWorth + " - " + (mHoveredFileData.RecommendedMaxNetWorth * kMaxRecommendedMultiplier);
tooltip = tooltip + "\n Average: " + mHoveredFileData.RecommendedMaxNetWorth;
}
imageTooltip.Show(tooltip, canvas, pos);
}
return;
}
}
mHoveredFileData = null;
imageTooltip.Hide(canvas);
}