예제 #1
0
        /* private methods */
        internal bool GetValue(TreeIter iter, int dimension, out IComparable val)
        {
            val = null;

            if (model == null || iter.Equals(TreeIter.Zero))
            {
                return(false);
            }

            if (col_nums.ContainsKey(dimension))
            {
                int col = (int)col_nums[dimension];

                val = (IComparable)model.GetValue(iter, col);
                return(true);
            }

            if (data_funcs.ContainsKey(dimension))
            {
                PlotValueDataFunc func = data_funcs[dimension] as PlotValueDataFunc;
                if (func == null)
                {
                    return(false);
                }

                val = func(this, dimension, model, iter, cb_data[dimension]);
                return(true);
            }
            return(false);
        }
예제 #2
0
        public void SetValueDataFunc(int dimension, PlotValueDataFunc func, object data)
        {
            if (col_nums.ContainsKey(dimension))
            {
                col_nums.Remove(dimension);
            }

            data_funcs[dimension] = func;
            cb_data[dimension]    = data;
        }