示例#1
0
        /// <summary>
        /// Given a variable ID, this method returns metadata about the variable and all the sites measuring the variable
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public VirtualVariable GetVirtualVariableInfo(int id)
        {
            string          sql = "select * from " + Configuration.VariablesTableName + " where VariableID =" + id;
            DataTable       dt  = mDbase.QueryDataTable(sql);
            DataRow         dr  = dt.Rows[0];
            VirtualVariable p   = new VirtualVariable(id)
            {
                Name            = dr["VariableName"].ToString(),
                Code            = dr["VariableCode"].ToString(),
                TimeSupport     = Convert.ToDouble(dr["TimeSupport"].ToString()),
                Specification   = dr["Specification"].ToString(),
                SampleMedium    = dr["SampleMedium"].ToString(),
                NoDataValue     = Convert.ToDouble(dr["NoDataValue"].ToString()),
                GeneralCategory = dr["GeneralCategory"].ToString(),
            };
            int timeUnitId = Convert.ToInt32(dr["TimeUnitsID"].ToString());

            p.TimeUnits = (TimeUnits)timeUnitId;

            sql = "select * from " + Configuration.SeriesCatalogTableName + " where VariableID =" + id;
            dt  = mDbase.QueryDataTable(sql);
            if (dt != null)
            {
                foreach (DataRow r in dt.Rows)
                {
                    int sid = Convert.ToInt32(r["SiteID"].ToString());
                    p.SitesMeasured.Add(GetSiteInfo(sid));
                }
            }
            return(p);
        }
        public VariablesControl()
        {
            InitializeComponent();

            _exceptionVariable = new VirtualVariable("$exception", NullValue.Instance);
            _exceptionVariableItem = CreateVariableItem(_exceptionVariable, null);

            _componentMuiIdentifiers = new Dictionary<object, string>()
            {
                {columnHeader1, "VariablesContent.ListHeaders.Name"},
                {columnHeader2, "VariablesContent.ListHeaders.Value"},
                {columnHeader3, "VariablesContent.ListHeaders.Type"},
            };

            contextMenuStrip1.Renderer = DebuggerBase.Instance.ExtensionHost.ControlManager.MenuRenderer;
            DebuggerBase.Instance.ExtensionHost.UILanguageChanged += ExtensionHost_UILanguageChanged;
            ExtensionHost_UILanguageChanged(null, null);
        }
示例#3
0
        public VariablesControl()
        {
            InitializeComponent();

            _exceptionVariable     = new VirtualVariable("$exception", NullValue.Instance);
            _exceptionVariableItem = CreateVariableItem(_exceptionVariable, null);

            _componentMuiIdentifiers = new Dictionary <object, string>()
            {
                { columnHeader1, "VariablesContent.ListHeaders.Name" },
                { columnHeader2, "VariablesContent.ListHeaders.Value" },
                { columnHeader3, "VariablesContent.ListHeaders.Type" },
            };

            contextMenuStrip1.Renderer = DebuggerBase.Instance.ExtensionHost.ControlManager.MenuRenderer;
            DebuggerBase.Instance.ExtensionHost.UILanguageChanged += ExtensionHost_UILanguageChanged;
            ExtensionHost_UILanguageChanged(null, null);
        }
示例#4
0
        public IVariable <T> RegisterVariable <T>(VirtualVariableInfo <T> info)
        {
            if (info == null)
            {
                throw new ArgumentNullException(nameof(info));
            }

            if (CheckForCommandExistence <IVariable <T> >(info.Name, out var existingCommand))
            {
                return(existingCommand);
            }

            var typeProxy = info._typeProxy ?? _commandSystem.GetTypeProxy <T>();

            var variable = new VirtualVariable <T>(this, info.Name, info.Value, info._isReadOnly ?? false, info.Flags, info.HelpInfo, typeProxy, info.CreateChangeHandlerList(), info.Tag);

            _commands.Add(variable.Name, variable);

            CommandAdded?.Invoke(variable);

            return(variable);
        }
示例#5
0
        public VirtualVariable [] GetVirtualVariables()
        {
            string    sql = "select * from " + Configuration.VariablesTableName + " order by VariableName";
            DataTable dt  = mDbase.QueryDataTable(sql);

            if (dt != null)
            {
                VirtualVariable[] results = new VirtualVariable[dt.Rows.Count];
                int i = 0;
                foreach (DataRow dr in dt.Rows)
                {
                    int id = Convert.ToInt32(dr["VariableID"].ToString());
                    results[i] = GetVirtualVariableInfo(id);
                    i++;
                }
                return(results);
            }
            else
            {
                return(null);
            }
        }