public HitTestArea GetHitArea(Point clientPoint, TableChartGroup g, TableChartCell c, double threshold) { var area = HitTestArea.None; var gs = GetClientX(g.Start); var ge = GetClientX(g.End); if (gs + threshold >= clientPoint.X && gs - threshold <= clientPoint.X) { area |= HitTestArea.GroupStart; } else if (ge + threshold >= clientPoint.X && ge - threshold <= clientPoint.X) { area |= HitTestArea.GroupEnd; } else if (gs + threshold < clientPoint.X && ge - threshold > clientPoint.X) { area |= HitTestArea.GroupBody; } if (c == null) { return(area); } var cs = GetClientY(c.Start); var ce = GetClientY(c.End); if (cs + threshold >= clientPoint.Y && cs - threshold <= clientPoint.Y) { area |= HitTestArea.CellStart; } else if (ce + threshold >= clientPoint.Y && ce - threshold <= clientPoint.Y) { area |= HitTestArea.CellEnd; } else if (cs + threshold < clientPoint.Y && ce - threshold > clientPoint.Y) { area |= HitTestArea.CellBody; } return(area); }
public TableChartEventArgs(List <int> changedCells, TableChartGroup group) { _changedCells = changedCells; _group = group; }
public void RequestModelUpdate(List <int> changedCells, TableChartGroup group) { OnDataChanged(new TableChartEventArgs(changedCells, group)); }