コード例 #1
0
        /// <summary>
        /// Button click to save gateway selection
        /// </summary>
        private void SaveGatewaySelection_Click(object sender, RoutedEventArgs e)
        {
            hasSaved = true;
            var currentApp = (App)App.Current;

            currentApp.SaveGatewayInfo(this.CurrentGateway.Text, GatewayList.ToList());
        }
コード例 #2
0
        //private void OnCreateStopwordList(TokenDictStatusResponse response, Dictionary<string, object> customData)
        //{
        //    Log.Debug("TestDiscovery.OnCreateStopwordList()", "Response: {0}", customData["json"].ToString());
        //    Test(response != null);
        //    Test(response.Status == "pending");
        //    _createStopwordListTested = true;
        //}

        //private void OnDeleteStopwordList(object response, Dictionary<string, object> customData)
        //{
        //    Log.Debug("TestDiscovery.OnDeleteStopwordList()", "Success!");
        //    Test(response != null);
        //    _deleteStopwordListTested = true;
        //}

        private void OnListGateways(GatewayList response, Dictionary <string, object> customData)
        {
            Log.Debug("TestDiscovery.OnListGateways()", "Response: {0}", customData["json"].ToString());
            Test(response != null);
            Test(response.Gateways != null);
            _listGatewaysTested = true;
        }
コード例 #3
0
 private void SelectedGateway_Event(object sender, SelectionChangedEventArgs e)
 {
     if (e.AddedItems.Count > 0)
     {
         var item = e.AddedItems[0] as OneServerInfo;
         this.CurrentGateway.Text = item.HostName;
         var idx = GatewayList.IndexOf(item);
         var cnt = GatewayList.Count;
         if (idx >= 0)
         {
             var minShow = MinItemShowed;
             var maxShow = MinItemShowed + NumberItemShowed - 1;
             var midShow = (minShow + maxShow) / 2;
             var diff    = idx - midShow;
             if (diff != 0)
             {
                 var           newMinShow = MinItemShowed;
                 OneServerInfo scrollItem = null;
                 if (diff < 0)
                 {
                     newMinShow = Math.Max(0, MinItemShowed + diff);
                 }
                 else
                 {
                     maxShow    = Math.Min(cnt - 1, MinItemShowed + diff + NumberItemShowed - 1);
                     newMinShow = Math.Max(0, maxShow - NumberItemShowed + 1);
                 }
                 if (newMinShow != MinItemShowed)
                 {
                     int scrollidx = 0;
                     if (diff < 0)
                     {
                         scrollItem = GatewayList[newMinShow];
                         scrollidx  = newMinShow;
                     }
                     else
                     {
                         scrollItem = GatewayList[maxShow];
                         scrollidx  = maxShow;
                     }
                     MinItemShowed = newMinShow;
                     this.ViewOfGateway.ScrollIntoView(scrollItem);
                 }
             }
         }
     }
 }
コード例 #4
0
        public GenericZone(XmlNode settings, GatewayList gateways, DeviceStateChangedDelegate stateChanged,
                           FeedbackReceivedFromDeviceDelegate feedbackReceived)
        {
            _zoneName   = settings.Attributes["name"].InnerText;
            _zoneNumber = int.Parse(settings.Attributes["number"].InnerText);

            foreach (XmlNode childNode in settings.ChildNodes)
            {
                GenericDeviceGateway gtw = gateways[childNode.Attributes["gateway"].InnerText];
                Type          typ        = Type.GetType(childNode.Attributes["type"].InnerText);
                GenericDevice dev        = (GenericDevice)Activator.CreateInstance(typ, childNode, this, gtw);
                dev.DeviceEventRaised += feedbackReceived;
                if (dev is IStatefulDevice)
                {
                    ((IStatefulDevice)dev).StateChanged += stateChanged;
                    ((IStatefulDevice)dev).ForceStateRefresh();
                }

                _devices.Add(dev);
            }
        }
コード例 #5
0
 public async Task<GatewayList.response> GatewayList(GatewayList.request request, CancellationToken? token = null)
 {
     return await SendAsync<GatewayList.response>(request.ToXmlString(), token.GetValueOrDefault(CancellationToken.None));
 }