//====== override: Window

        protected override void PaintContent(TextCanvas canvas)
        {
            var list = hiScoresList.GetList();

            for (int i = 0; i < hiScoresList.Capacity; i++)
            {
                HiScoresEntry entry = (i < list.Count) ? list[i] : null;

                PrintHiScoreItem(canvas, new Point(2, 1 + i), i, entry);
            }
        }
            public static __HiScores FromHiScores(IHiScores hiScores)
            {
                Verify.NotNull(hiScores, nameof(hiScores));

                List <__HiScoresEntry> entries =
                    hiScores
                    .GetList()
                    .Select(__HiScoresEntry.FromHiScoresEntry)
                    .ToList();

                return(new __HiScores
                {
                    Capacity = hiScores.Capacity,
                    List = entries
                });
            }
        public static bool IsEmpty(this IHiScores me)
        {
            Verify.NotNull(me, nameof(me));

            return(me.GetList().Count == 0);
        }