public JsonResult Columns_Create(ColumnModel model)
        {
            int lastID = ColumnsList.Select(m => m.ID).Max();
            int order  = ColumnsList.Select(m => m.Order).Max();

            model.ID     = lastID + 1;
            model.Order  = order + 1;
            model.Status = model.Text.ToLowerInvariant();
            ColumnsList.Add(model);

            return(Json(model));
        }
        public XmlNode GetSettings(XmlDocument document)
        {
            var parent = document.CreateElement("Settings");

            parent.AppendChild(ToElement(document, "Version", "1.5"));
            parent.AppendChild(ToElement(document, CurrentSplitTopColor, "CurrentSplitTopColor"));
            parent.AppendChild(ToElement(document, CurrentSplitBottomColor, "CurrentSplitBottomColor"));
            parent.AppendChild(ToElement(document, "VisualSplitCount", VisualSplitCount));
            parent.AppendChild(ToElement(document, "SplitPreviewCount", SplitPreviewCount));
            parent.AppendChild(ToElement(document, "DisplayIcons", DisplayIcons));
            parent.AppendChild(ToElement(document, "ShowThinSeparators", ShowThinSeparators));
            parent.AppendChild(ToElement(document, "AlwaysShowLastSplit", AlwaysShowLastSplit));
            parent.AppendChild(ToElement(document, "SplitWidth", SplitWidth));
            parent.AppendChild(ToElement(document, "SplitTimesAccuracy", SplitTimesAccuracy));
            parent.AppendChild(ToElement(document, BeforeNamesColor, "BeforeNamesColor"));
            parent.AppendChild(ToElement(document, CurrentNamesColor, "CurrentNamesColor"));
            parent.AppendChild(ToElement(document, AfterNamesColor, "AfterNamesColor"));
            parent.AppendChild(ToElement(document, "OverrideTextColor", OverrideTextColor));
            parent.AppendChild(ToElement(document, BeforeTimesColor, "BeforeTimesColor"));
            parent.AppendChild(ToElement(document, CurrentTimesColor, "CurrentTimesColor"));
            parent.AppendChild(ToElement(document, AfterTimesColor, "AfterTimesColor"));
            parent.AppendChild(ToElement(document, "OverrideTimesColor", OverrideTimesColor));
            parent.AppendChild(ToElement(document, "ShowBlankSplits", ShowBlankSplits));
            parent.AppendChild(ToElement(document, "LockLastSplit", LockLastSplit));
            parent.AppendChild(ToElement(document, "IconSize", IconSize));
            parent.AppendChild(ToElement(document, "IconShadows", IconShadows));
            parent.AppendChild(ToElement(document, "SplitHeight", SplitHeight));
            parent.AppendChild(ToElement(document, "CurrentSplitGradient", CurrentSplitGradient));
            parent.AppendChild(ToElement(document, BackgroundColor, "BackgroundColor"));
            parent.AppendChild(ToElement(document, BackgroundColor2, "BackgroundColor2"));
            parent.AppendChild(ToElement(document, "BackgroundGradient", BackgroundGradient));
            parent.AppendChild(ToElement(document, "SeparatorLastSplit", SeparatorLastSplit));
            parent.AppendChild(ToElement(document, "DeltasAccuracy", DeltasAccuracy));
            parent.AppendChild(ToElement(document, "DropDecimals", DropDecimals));
            parent.AppendChild(ToElement(document, "OverrideDeltasColor", OverrideDeltasColor));
            parent.AppendChild(ToElement(document, DeltasColor, "DeltasColor"));
            parent.AppendChild(ToElement(document, "Display2Rows", Display2Rows));
            parent.AppendChild(ToElement(document, "HideIconsIfAllBlank", HideIconsIfAllBlank));
            parent.AppendChild(ToElement(document, "ShowColumnLabels", ShowColumnLabels));
            parent.AppendChild(ToElement(document, LabelsColor, "LabelsColor"));

            var columnsElement = document.CreateElement("Columns");

            foreach (var columnData in ColumnsList.Select(x => x.Data))
            {
                columnsElement.AppendChild(columnData.ToXml(document));
            }
            parent.AppendChild(columnsElement);

            return(parent);
        }
Beispiel #3
0
        private int CreateSettingsNode(XmlDocument document, XmlElement parent)
        {
            var hashCode = SettingsHelper.CreateSetting(document, parent, "Version", "1.6") ^
                           SettingsHelper.CreateSetting(document, parent, "CurrentSplitTopColor", CurrentSplitTopColor) ^
                           SettingsHelper.CreateSetting(document, parent, "CurrentSplitBottomColor", CurrentSplitBottomColor) ^
                           SettingsHelper.CreateSetting(document, parent, "VisualSplitCount", VisualSplitCount) ^
                           SettingsHelper.CreateSetting(document, parent, "SplitPreviewCount", SplitPreviewCount) ^
                           SettingsHelper.CreateSetting(document, parent, "DisplayIcons", DisplayIcons) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowThinSeparators", ShowThinSeparators) ^
                           SettingsHelper.CreateSetting(document, parent, "AlwaysShowLastSplit", AlwaysShowLastSplit) ^
                           SettingsHelper.CreateSetting(document, parent, "SplitWidth", SplitWidth) ^
                           SettingsHelper.CreateSetting(document, parent, "SplitTimesAccuracy", SplitTimesAccuracy) ^
                           SettingsHelper.CreateSetting(document, parent, "AutomaticAbbreviations", AutomaticAbbreviations) ^
                           SettingsHelper.CreateSetting(document, parent, "BeforeNamesColor", BeforeNamesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "CurrentNamesColor", CurrentNamesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "AfterNamesColor", AfterNamesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "OverrideTextColor", OverrideTextColor) ^
                           SettingsHelper.CreateSetting(document, parent, "BeforeTimesColor", BeforeTimesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "CurrentTimesColor", CurrentTimesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "AfterTimesColor", AfterTimesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "OverrideTimesColor", OverrideTimesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowBlankSplits", ShowBlankSplits) ^
                           SettingsHelper.CreateSetting(document, parent, "LockLastSplit", LockLastSplit) ^
                           SettingsHelper.CreateSetting(document, parent, "IconSize", IconSize) ^
                           SettingsHelper.CreateSetting(document, parent, "IconShadows", IconShadows) ^
                           SettingsHelper.CreateSetting(document, parent, "SplitHeight", SplitHeight) ^
                           SettingsHelper.CreateSetting(document, parent, "CurrentSplitGradient", CurrentSplitGradient) ^
                           SettingsHelper.CreateSetting(document, parent, "BackgroundColor", BackgroundColor) ^
                           SettingsHelper.CreateSetting(document, parent, "BackgroundColor2", BackgroundColor2) ^
                           SettingsHelper.CreateSetting(document, parent, "BackgroundGradient", BackgroundGradient) ^
                           SettingsHelper.CreateSetting(document, parent, "SeparatorLastSplit", SeparatorLastSplit) ^
                           SettingsHelper.CreateSetting(document, parent, "DeltasAccuracy", DeltasAccuracy) ^
                           SettingsHelper.CreateSetting(document, parent, "DropDecimals", DropDecimals) ^
                           SettingsHelper.CreateSetting(document, parent, "OverrideDeltasColor", OverrideDeltasColor) ^
                           SettingsHelper.CreateSetting(document, parent, "DeltasColor", DeltasColor) ^
                           SettingsHelper.CreateSetting(document, parent, "Display2Rows", Display2Rows) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowColumnLabels", ShowColumnLabels) ^
                           SettingsHelper.CreateSetting(document, parent, "LabelsColor", LabelsColor);

            XmlElement columnsElement = null;

            if (document != null)
            {
                columnsElement = document.CreateElement("Columns");
                parent.AppendChild(columnsElement);
            }

            var count = 1;

            foreach (var columnData in ColumnsList.Select(x => x.Data))
            {
                XmlElement settings = null;
                if (document != null)
                {
                    settings = document.CreateElement("Settings");
                    columnsElement.AppendChild(settings);
                }
                hashCode ^= columnData.CreateElement(document, settings) * count;
                count++;
            }

            return(hashCode);
        }
        private int CreateSettingsNode(XmlDocument document, XmlElement parent)
        {
            var hashCode = SettingsHelper.CreateSetting(document, parent, "Version", "1.6") ^
                           SettingsHelper.CreateSetting(document, parent, "VisualSplitCount", VisualSplitCount) ^
                           SettingsHelper.CreateSetting(document, parent, "SplitPreviewCount", SplitPreviewCount) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowThinSeparators", ShowThinSeparators) ^
                           SettingsHelper.CreateSetting(document, parent, "AlwaysShowLastSplit", AlwaysShowLastSplit) ^
                           SettingsHelper.CreateSetting(document, parent, "SplitWidth", SplitWidth) ^
                           SettingsHelper.CreateSetting(document, parent, "SplitTimesAccuracy", SplitTimesAccuracy) ^
                           SettingsHelper.CreateSetting(document, parent, "AutomaticAbbreviations", AutomaticAbbreviations) ^
                           SettingsHelper.CreateSetting(document, parent, "BeforeNamesColor", BeforeNamesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "CurrentNamesColor", CurrentNamesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "AfterNamesColor", AfterNamesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "OverrideTextColor", OverrideTextColor) ^
                           SettingsHelper.CreateSetting(document, parent, "BeforeTimesColor", BeforeTimesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "CurrentTimesColor", CurrentTimesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "AfterTimesColor", AfterTimesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "OverrideTimesColor", OverrideTimesColor) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowBlankSplits", ShowBlankSplits) ^
                           SettingsHelper.CreateSetting(document, parent, "LockLastSplit", LockLastSplit) ^
                           SettingsHelper.CreateSetting(document, parent, "SplitHeight", SplitHeight) ^
                           SettingsHelper.CreateSetting(document, parent, "SeparatorLastSplit", SeparatorLastSplit) ^
                           SettingsHelper.CreateSetting(document, parent, "DeltasAccuracy", DeltasAccuracy) ^
                           SettingsHelper.CreateSetting(document, parent, "DropDecimals", DropDecimals) ^
                           SettingsHelper.CreateSetting(document, parent, "OverrideDeltasColor", OverrideDeltasColor) ^
                           SettingsHelper.CreateSetting(document, parent, "DeltasColor", DeltasColor) ^
                           SettingsHelper.CreateSetting(document, parent, "Display2Rows", Display2Rows) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowColumnLabels", ShowColumnLabels) ^
                           SettingsHelper.CreateSetting(document, parent, "LabelsColor", LabelsColor) ^
                           SettingsHelper.CreateSetting(document, parent, "SplitsLabel", SplitsLabel) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowTitle", ShowTitle) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowGameName", ShowGameName) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowCategoryName", ShowCategoryName) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowFinishedRunsCount", ShowFinishedRunsCount) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowAttemptCount", ShowAttemptCount) ^
                           SettingsHelper.CreateSetting(document, parent, "DisplayGameIcon", DisplayGameIcon) ^
                           SettingsHelper.CreateSetting(document, parent, "CenterTitle", CenterTitle) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowRegion", ShowRegion) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowPlatform", ShowPlatform) ^
                           SettingsHelper.CreateSetting(document, parent, "ShowVariables", ShowVariables);

            XmlElement columnsElement = null;

            if (document != null)
            {
                columnsElement = document.CreateElement("Columns");
                parent.AppendChild(columnsElement);
            }

            var count = 1;

            foreach (var columnData in ColumnsList.Select(x => x.Data))
            {
                XmlElement settings = null;
                if (document != null)
                {
                    settings = document.CreateElement("Settings");
                    columnsElement.AppendChild(settings);
                }
                hashCode ^= columnData.CreateElement(document, settings) * count;
                count++;
            }

            return(hashCode);
        }
Beispiel #5
0
        private async Task UpdateColumnsWidth()
        {
            var values = await JsRuntime.InvokeAsync <string[]>("mcomponents.getColumnSizes", new object[] { mTableReference, ColumnsList.Select(c => c.Identifier).ToArray() });

            if (values == null || values.Length <= 0)
            {
                return;
            }

            mTableBorderTop  = values[0].FromPixelToDouble();
            mTableBorderLeft = values[1].FromPixelToDouble();

            mFieldBoundingBox = new BoundingBox()
            {
                BorderRight    = values[2].FromPixelToDouble(),
                BorderTop      = values[3].FromPixelToDouble(),
                BorderSpace    = values[4].FromPixelToDouble(),
                BorderCollapse = values[5],
                Height         = values[6].FromPixelToDouble(),
            };

            mColumnsWidth = values.Skip(7).Select(v => v.FromPixelToDouble()).ToArray();
        }