private static void LoadPlugin() { lock (_loaderLock) { if (Plugin != null) { return; } try { Assembly assembly = Assembly.LoadFrom(DllPath); Type baseType = assembly.GetType("ADAM.Adam"); Plugin = Activator.CreateInstance(baseType); Enable = Plugin.GetType().GetMethod("EnablePlugin"); Disable = Plugin.GetType().GetMethod("DisablePlugin"); ButtonPress = Plugin.GetType().GetMethod("OnButtonPress"); if (PluginManager.GetEnabledPlugins().Any(n => n == "Allagan Data Acquisition Module")) { Enable.Invoke(Plugin, null); } } catch (Exception e) { FailLoad("Unable to load ADAM assembly.", e); } } }
public override void OnEnabled() { if (Plugin == null) { UpdatePlugin(); } if (Plugin != null) { Enable.Invoke(Plugin, null); } }
private void EnableHandler(string name) { Logger.Trace("EnableHandler called"); var currentAutoStarts = GetCurrentAutoStarts(); foreach (var currentAutoStart in currentAutoStarts) { if (currentAutoStart.Value == name) { Enable?.Invoke(currentAutoStart); } } }
private void EnableHandler(string name) { Logger.Trace("EnableHandler called"); var currentAutoStarts = GetCurrentAutoStarts(); foreach (var currentAutoStart in currentAutoStarts) { var currentDisableName = currentAutoStart.Path.Substring(currentAutoStart.Path.LastIndexOf('\\') + 1); if (currentDisableName == name) { Enable?.Invoke(currentAutoStart); } } }
private void ChangeHandler(object sender, RegistryChangeEventArgs e) { Logger.Trace("ChangeHandler called for {DisableBasePath}", DisableBasePath); var newEnableStatus = GetCurrentEnableStatus(); foreach (var newStatus in newEnableStatus) { var name = newStatus.Key; var nowEnabled = newStatus.Value; var wasEnabled = true; if (lastEnableStatus.ContainsKey(name)) { wasEnabled = lastEnableStatus[name]; } if (wasEnabled != nowEnabled) { if (nowEnabled) { Enable?.Invoke(name); } else { Disable?.Invoke(name); } } } foreach (var lastStatus in lastEnableStatus) { var name = lastStatus.Key; var wasEnabled = lastStatus.Value; if (newEnableStatus.ContainsKey(name)) { continue; } if (!wasEnabled) { Enable?.Invoke(name); } } lastEnableStatus = newEnableStatus; }
private void CheckCurrentState() { if (SoundOutModes.Any(x => x.Devices.Count > 0)) { if (IsAvailable) { return; } IsAvailable = true; Enable?.Invoke(this, EventArgs.Empty); return; } if (!IsAvailable) { return; } IsAvailable = false; Disable?.Invoke(this, EventArgs.Empty); }
private void CheckCurrentState() { if ( SoundOutList.Any( soundOutRepresenter => soundOutRepresenter.AudioDevices.Any(x => x.ID != DefaultDevicePlaceholder))) { if (_enabled == true) { return; } _enabled = true; Enable?.Invoke(this, EventArgs.Empty); return; } if (_enabled == true) { _enabled = false; Disable?.Invoke(this, EventArgs.Empty); } }
private void EnableHandler(AutoStartEntry e) { Logger.Trace("EnableHandler called"); Enable?.Invoke(e); }
private void OnEnable() => Enable?.Invoke();