AlphaTab.Settings.ToJson C# (CSharp) Method

ToJson() public method

public ToJson ( ) : dynamic
return dynamic
        public dynamic ToJson()
        {
            dynamic json = Std.NewObject();

            json.scale = Scale;
            json.width = Width;
            json.height = Height;
            json.engine = Engine;
            json.stretchForce = StretchForce;
            json.forcePianoFingering = ForcePianoFingering;

            json.atRoot = ScriptFile;

            json.layout = Std.NewObject();
            json.layout.mode = Layout.Mode;
            json.layout.additionalSettings = Std.NewObject();
            foreach (string setting in Layout.AdditionalSettings)
            {
                json.layout.additionalSettings[setting] = Layout.AdditionalSettings[setting];
            }

            FastList<dynamic> staves = new FastList<dynamic>();
            json.staves = staves;

            foreach (var staff in Staves)
            {
                var s = Std.NewObject();
                s.id = staff.Id;
                s.additionalSettings = Std.NewObject();
                foreach (var additionalSetting in staff.AdditionalSettings)
                {
                    s.additionalSettings[additionalSetting] = staff.AdditionalSettings[additionalSetting];
                }
                staves.Add(s);
            }

            return json;
        }