コード例 #1
0
 protected OneValueForEachColumnOrRow(IValuePerCell <T> next, WhichWay ww)
 {
     _next          = next;
     _ww            = ww;
     _cache         = new Dictionary <int, T> ();
     _next.changed += (object sender, CellCoords e) => {
         _cache.Clear();                 // TODO this is too heavy-handed, probably
         changed(this, e);
     };
 }
        public void SetGeometryVertexCounts(WhichWay which, int[] counts, out int successCode)
        {
            if (!_active)
            {
                _engine.SetGeometryVertexCounts(which, counts, out successCode);
                return;
            }

            try
            {
                DoStart("SetGeometryVertexCounts", which, counts);

                _engine.SetGeometryVertexCounts(which, counts, out successCode);
            }
            catch (System.Exception exception)
            {
                DoCatch(exception);
                successCode = SuccessCodeUnassigned;
            }
            finally
            {
                DoFinally();
            }
        }
        public void SetGeometryCoords(WhichWay which, GeometryPassingOptions options, double[] coords, out int successCode)
        {
            if (!_active)
            {
                _engine.SetGeometryCoords(which, options, coords, out successCode);
                return;
            }

            try
            {
                DoStart("SetGeometryCoords", which, options, coords);

                _engine.SetGeometryCoords(which, options, coords, out successCode);
            }
            catch (System.Exception exception)
            {
                DoCatch(exception);
                successCode = SuccessCodeUnassigned;
            }
            finally
            {
                DoFinally();
            }
        }