示例#1
0
文件: Form1.cs 项目: cocfire/Docs
        private void btnWriteParameters_Click(object sender, EventArgs e)//下载设备参数
        {
            if (btnStart.Enabled)
            {
                MessageBox.Show("服务未启动");
                return;
            }


            List <ParamItem> parameters = new List <ParamItem>();

            try
            {
                parameters.Add(ParamItem.New(Convert.ToInt32(txtParamId.Text), txtParamVal.Text));
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return;
            }
            if (parameters.Count > 115)
            {
                MessageBox.Show("一次性下发参数数量不能超过115个");
                return;
            }
            rsServer.WriteParam(Convert.ToInt32(txtDeviceID.Text), parameters);
        }
        public ActionResult <string> PostCall(ParamItem TempItem)
        {
            var client  = new RestClient("http://localhost:5000/");
            var request = new RestRequest($"fizzbuzz/{TempItem.Param}", Method.GET);

            var response = client.Execute(request);

            return(response.Content.Replace("\"", ""));
        }
示例#3
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        internal ParamItem GetAngle(string name)
        {
            ParamItem pi = new ParamItem();

            pi.Name        = name;
            pi.DisplayName = AddinUtils._(addin, name);
            pi.Type        = typeof(double);
            pi.Value       = (double)numAngle.Value;
            return(pi);
        }
示例#4
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        internal ParamItem GetMode(string name)
        {
            ParamItem pi = new ParamItem();

            pi.Name        = name;
            pi.DisplayName = AddinUtils._(addin, name);
            pi.Type        = typeof(RotateFlipType);
            pi.Value       = flip;
            return(pi);
        }
示例#5
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        internal ParamItem GetKeepSize(string name)
        {
            ParamItem pi = new ParamItem();

            pi.Name        = name;
            pi.DisplayName = AddinUtils._(addin, name);
            pi.Type        = typeof(bool);
            pi.Value       = chkKeepSize.Checked;
            return(pi);
        }
示例#6
0
    // 分隔串,没考虑合法性
    public static void parseItem(string str, List <ParamItem> result)
    {
        string[] arr = str.Split(';');
        int      i   = 0;

        for (; i < arr.Length; i++)
        {
            string[]  tmp  = Tool.split(arr[i], ' ', StringSplitOptions.RemoveEmptyEntries);
            ParamItem item = new ParamItem();
            item.m_itemId    = Convert.ToInt32(tmp[0]);
            item.m_itemCount = Convert.ToInt32(tmp[1]);
            result.Add(item);
        }
    }
        public object Create(object parent, object configContext, XmlNode section)
        {
            var list = section.SelectNodes("param");

            if (list == null || list.Count == 0)
            {
                return(null);
            }

            var pi = new ParamItem[list.Count];

            for (var i = 0; i < pi.Length; i++)
            {
                pi[i] = new ParamItem((XmlElement)list[i]);
            }

            return(pi);
        }
示例#8
0
    // 从字典内解析道具列表
    public static bool parseItemFromDic(Dictionary <string, object> dic, List <ParamItem> result)
    {
        if (result == null || dic == null)
        {
            return(false);
        }

        int i = 0;

        for (; i < dic.Count; i++)
        {
            Dictionary <string, object> tmp = dic[i.ToString()] as Dictionary <string, object>;
            ParamItem item = new ParamItem();
            item.m_itemId    = Convert.ToInt32(tmp["itemId"]);
            item.m_itemCount = Convert.ToInt32(tmp["itemCount"]);
            result.Add(item);
        }
        return(true);
    }
示例#9
0
 public static void TrySaveParam(string key, string value)
 {
     try
     {
         if (!_cache.ContainsKey(key) || _cache[key] != value)
         {
             _cache[key] = value;
             var item = new ParamItem
             {
                 Key   = key,
                 Value = value
             };
             _db.SaveOneRecord(item);
         }
     }
     catch (Exception e)
     {
         Log.Exception(e);
     }
 }
示例#10
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="name"></param>
 /// <param name="value"></param>
 internal void SetAngle(string name, ParamItem value)
 {
     angle          = Convert.ToDouble(value.Value);
     numAngle.Value = Convert.ToDecimal(angle);
 }
示例#11
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="name"></param>
 /// <param name="value"></param>
 internal void SetKeepSize(string name, ParamItem value)
 {
     keepSize            = (bool)value.Value;
     chkKeepSize.Checked = keepSize;
 }
示例#12
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="name"></param>
 /// <param name="value"></param>
 internal void SetMode(string name, ParamItem value)
 {
     flip = (RotateFlipType)value.Value;
 }
示例#13
0
 public BitMap(ParamItem parent)
 {
     this.parent = parent;
 }
示例#14
0
        public static List <ParamItem> ParamList_GetFromXml()
        {
            List <ParamItem> items  = new List <ParamItem>();
            XmlDocument      xmlDoc = new XmlDocument();

            XmlReaderSettings settings = new XmlReaderSettings();

            settings.IgnoreComments = true;//忽略文档里面的注释

            try
            {
                XmlReader reader = XmlReader.Create(Application.StartupPath + "/paramList.xml", settings);

                xmlDoc.Load(reader);
                XmlNodeList nodelist = xmlDoc.SelectNodes("paramList/param");
                foreach (XmlNode node in nodelist)
                {
                    ParamItem entity = new ParamItem();
                    // 将节点转换为元素,便于得到节点的属性值
                    XmlElement xe = (XmlElement)node;
                    // 得到id和name两个属性的属性值
                    entity.id          = Convert.ToInt32(xe.GetAttribute("id").ToString());
                    entity.name        = xe.GetAttribute("name").ToString();
                    entity.type        = Convert.ToInt32(xe.GetAttribute("type").ToString());
                    entity.formula     = xe.GetAttribute("formula").ToString();
                    entity.unit        = xe.GetAttribute("unit").ToString();
                    entity.description = xe.GetAttribute("description").ToString();

                    // 得到所有子节点
                    XmlNodeList xnl0 = xe.ChildNodes;
                    foreach (XmlNode childNode in xnl0)
                    {
                        XmlElement param = (XmlElement)childNode;
                        if (param.Name.Equals("bitmap"))
                        {
                            BitMap bitmap = new BitMap(entity);
                            bitmap.bitstart    = Convert.ToInt32(param.GetAttribute("bitstart").ToString());
                            bitmap.bitend      = Convert.ToInt32(param.GetAttribute("bitend").ToString());
                            bitmap.name        = param.GetAttribute("name").ToString();
                            bitmap.formula     = param.GetAttribute("formula").ToString();
                            bitmap.unit        = param.GetAttribute("unit").ToString();
                            bitmap.description = param.GetAttribute("description").ToString();
                            entity.bitMap.Add(bitmap);
                        }
                    }
                    items.Add(entity);
                }
                reader.Close();
                /* 排序 */
                items.Sort((left, right) =>
                {
                    if (left.id > right.id)
                    {
                        return(1);
                    }
                    else if (left.id == right.id)
                    {
                        return(0);
                    }
                    else
                    {
                        return(-1);
                    }
                });
            }
            catch (Exception)
            { }
#if false
            /* id不连续时插入空的条目 */
            int count = items.Count;
            for (int i = 1; i < count; i++)
            {
                if (items[i - 1].id + 1 != items[i].id)
                {
                    ParamItem item = new ParamItem(i, "", "");
                    items.Insert(i, item);
                    count++;
                }
            }
#endif
            return(items);
        }