Ejemplo n.º 1
0
    public static XChangeLog Update(string path, string value)
    {
        var log = PathMover.Update(root, path, value);

        XChangeLogBank.GiveBack(log);
        return(log);
    }
Ejemplo n.º 2
0
    private static void CreateChangeLog(string path, Type type, object before, object after)
    {
        var log = XChangeLogBank.Take();

        log.before = before;
        log.after  = after;
        log.path   = path;
        log.delta  = 0;
        log.type   = type;
        if (type == typeof(int))
        {
            var b     = (int)before;
            var a     = (int)after;
            var delta = a - b;
            log.delta = delta;
        }
        else if (type == typeof(float))
        {
            var b     = (float)before;
            var a     = (float)after;
            var delta = a - b;
            log.delta = delta;
        }
        else if (type == typeof(double))
        {
            var b     = (double)before;
            var a     = (double)after;
            var delta = a - b;
            log.delta = delta;
        }
        changeLog = log;
    }
Ejemplo n.º 3
0
    public static List <XChangeLog> UpdateAll(List <XTransaction> list)
    {
        var ret = new List <XChangeLog>();

        foreach (var t in list)
        {
            var log = PathMover.Update(root, t.path, t.val);
            ret.Add(log);
        }
        foreach (var log in ret)
        {
            XChangeLogBank.GiveBack(log);
        }
        return(ret);
    }