public override string ToString()
        {
            var sb = new StringBuilder(
                string.Format(
                    "TotalSeats: {12}\n Background: {0}\n InPositionForeground: {1}\n OutOfPositionForeground: {2}\n PositioningMuckedCards: {3}\n PreferredSeat: {4}\n ShowFlop: {5}\n ShowHarringtonM: {6}\n ShowPreFlop: {7}\n ShowRiver: {8}\n ShowTurn: {9}\n StatisticsPanelHeight: {10}\n StatisticsPanelWidth: {11}\n BoardPosition: {13}",
                    _background,
                    _inPositionForeground,
                    _outOfPositionForeground,
                    _positioningMuckedCards,
                    _preferredSeat,
                    _showFlop,
                    _showHarringtonM,
                    _showPreFlop,
                    _showRiver,
                    _showTurn,
                    _statisticsPanelHeight,
                    _statisticsPanelWidth,
                    TotalSeats,
                    BoardPosition));

            sb.AppendLine("\nPlayerStatisticsPanelPositions: ");
            PlayerStatisticsPanelPositions.ForEach(s => sb.AppendFormat("[{0}]", s));

            sb.AppendLine("\nHarringtonMPositions : ");
            HarringtonMPositions.ForEach(s => sb.AppendFormat("[{0}]", s));

            sb.AppendLine("\nHoleCardsPositions : ");
            HoleCardsPositions.ForEach(s => sb.AppendFormat("[{0}]", s));
            return(sb.ToString());
        }
        void RegisterSettingsModificationEvents()
        {
            Background.PropertyChanged += SettingsModified;
            OutOfPositionForeground.PropertyChanged += SettingsModified;
            InPositionForeground.PropertyChanged    += SettingsModified;

            PlayerStatisticsPanelPositions.ForEach(p => p.PropertyChanged += SettingsModified);
            HarringtonMPositions.ForEach(p => p.PropertyChanged           += SettingsModified);
            HoleCardsPositions.ForEach(p => p.PropertyChanged             += SettingsModified);

            BoardPosition.PropertyChanged          += SettingsModified;
            OverlayDetailsPosition.PropertyChanged += SettingsModified;

            PropertyChanged += SettingsModified;
        }