/// <summary> /// Loads the specified parent node. /// </summary> /// <param name="parentNode">The parent node.</param> public void Load( System.Windows.Forms.TreeNode parentNode ) { foreach ( PluginInfo pi in Settings.Instance.PluginSettings.Plugins ) { OptionItemTreeNode oitn = new OptionItemTreeNode ( ); oitn.Text = pi.Name; PropertyGridEditor pge = new PropertyGridEditor ( ); /*pge.PropertyValueChanged += delegate ( object s, PropertyValueChangedEventArgs e ) { GridItem gi = e.ChangedItem; switch ( gi.Label ) { case "Enabled": pi.Enabled = (bool)gi.Value; break; case "ExecuteOnUnload": pi.ExecuteOnUnload = (bool)gi.Value; break; case "ExecuteOnLoad": pi.ExecuteOnLoad = (bool)gi.Value; break; } };*/ pi.Plugin = Settings.Instance.PluginSettings.GetPlugin ( pi.ID.Replace ( " ", string.Empty ) ); oitn.UIEditor = pge; oitn.UIEditor.SetSourceObject ( pi ); parentNode.Nodes.Add ( oitn ); } }
public void Load( TreeNode parentNode ) { foreach ( string sn in KnownDeviceManager.Instance.GetKnownDevices ( ) ) { // if we dont have a serial number, we dont have a device... if ( string.IsNullOrEmpty ( sn ) ) { continue; } KnownDevice kd = new KnownDevice ( ); kd.SerialNumber = sn; kd.DisplayName = KnownDeviceManager.Instance.GetDeviceFriendlyName ( kd.SerialNumber ); kd.Guid = KnownDeviceManager.Instance.GetDeviceGuid ( kd.SerialNumber ); OptionItemTreeNode tn = new OptionItemTreeNode ( kd.SerialNumber ); PropertyGridEditor pge = new PropertyGridEditor ( ); pge.PropertyValueChanged += delegate ( object s, PropertyValueChangedEventArgs e ) { GridItem gi = e.ChangedItem; KnownDevice kdi = ( s as PropertyGridEditor ).SelectedObject as KnownDevice; switch ( gi.Label ) { case "DisplayName": KnownDeviceManager.Instance.SetDeviceFriendlyName ( kdi.SerialNumber, gi.Value.ToString ( ) ); break; } }; tn.UIEditor = pge; tn.UIEditor.SetSourceObject ( kd ); try { OptionItemTreeNode propItem = new OptionItemTreeNode ( "Properties" ); propItem.UIEditor = new DevicePropertiesEditor ( kd.SerialNumber ); tn.Nodes.Add ( propItem ); } catch ( AdbException ex ) { this.LogWarn ( ex.Message, ex ); } parentNode.Nodes.Add ( tn ); } }