コード例 #1
0
 private void BuildTable_Info(StringBuilder stb, string sortby = null, string sortorder = null)
 {
     StatusPage.BuildTable_Info(stb,
                                ((HSPI)plugin).controller.UsedDevices,
                                page_name: page_link,
                                sortby: sortby,
                                sortorder: sortorder,
                                inSlider: false
                                );
 }
コード例 #2
0
        /// <summary>
        /// Initialize the plugin and associated hardware/software, start any threads
        /// </summary>
        /// <param name="port">The COM port for the plugin if required.</param>
        /// <returns>Warning message or empty for success.</returns>
        public override string InitIO(string port)
        {
            // Connect() should call it, but doesn't hurt to call again
            Connected(true);

            // First time create Controller
            if (controller == null)
            {
                controller = new Controller(this);
            }

            // After reconnect - just update, don't recreate
            controller.Update(settings.InitIOinThread);

            // Create and register the web pages

            statusPage = new StatusPage(this);

            //configPage = new HSPI_Config(this);

            // Register help page
            RegisterWebPageDesc(Name + " Help", "AKSmartDevice/AKSmartDeviceVer1.htm", "Help1", helplink: true);
            RegisterWebPageDesc("Help", "/AKSmartDevice/AKSmartDeviceVer1.htm", "Help2", helplink: false);
            RegisterWebPageDesc("Youtube Video", "http://www.youtube.com/watch?v=mmyrx8kXnWY", "Help2");

            // Note: SetIOMulti() is called ONLY for devices owned by this plugin
            // To recive value update for device from another plugin need to
            // RegisterEventCB(HSEvent.VALUE_CHANGE), then HSEvent() is called for EVERY device
            Callback.RegisterEventCB(Enums.HSEvent.VALUE_CHANGE, GetName(), InstanceFriendlyName());
            Callback.RegisterEventCB(Enums.HSEvent.CONFIG_CHANGE, GetName(), InstanceFriendlyName());

            //AppDomain currentDomain = AppDomain.CurrentDomain;
            //currentDomain.AssemblyResolve += new ResolveEventHandler(Utils.LoadFromSameFolder);

            return(base.InitIO(null));
        }