public void AttachToAct(FFXIVTranslatePlugin plugin) { _plugin = plugin; var parentTabPage = plugin.ParentTabPage; parentTabPage.Controls.Add(this); parentTabPage.Resize += ParentTabPageOnResize; ParentTabPageOnResize(parentTabPage, null); var settings = plugin.Settings; // add settings settings.AddControlSetting(numericUpDownX); settings.AddControlSetting(numericUpDownY); settings.AddControlSetting(numericUpDownWidth); settings.AddControlSetting(numericUpDownHeight); settings.AddControlSetting(trackBarOpacity); settings.AddControlSetting(checkBoxClickthrough); settings.AddControlSetting(checkBoxShowOverlay); settings.AddControlSetting(checkBoxAutoHide); settings.AddControlSetting(checkBoxAddTimestamp); settings.AddControlSetting(checkBox24Hour); settings.AddControlSetting(checkBoxCheckUpdate); settings.AddControlSetting(checkBoxNotifyStableOnly); foreach (var cs in _channelSettings) { settings.AddControlSetting(cs.CheckBoxFilter); cs.CheckBoxFilter.CheckedChanged += CheckBoxChannelFilterOnCheckedChanged; settings.AddControlSetting(cs.CheckBoxLabel); cs.CheckBoxLabel.CheckedChanged += CheckBoxChannelLabelOnCheckedChanged; settings.AddControlSetting(cs.ButtonColor); cs.ButtonColor.Click += ButtonChannelColorClick; cs.ButtonColor.TextChanged += ButtonColorOnTextChanged; } _controller = plugin.Controller; numericUpDownX.ValueChanged += NumericUpDownPositionOnValueChanged; numericUpDownY.ValueChanged += NumericUpDownPositionOnValueChanged; numericUpDownWidth.ValueChanged += NumericUpDownSizeOnValueChanged; numericUpDownHeight.ValueChanged += NumericUpDownSizeOnValueChanged; checkBoxClickthrough.CheckedChanged += CheckBoxClickthroughOnCheckedChanged; comboBoxLanguage.SelectedIndexChanged += ComboBoxLanguageSelectedIndexChanged; checkBoxAddTimestamp.CheckedChanged += CheckBoxAddTimestampOnCheckedChanged; checkBox24Hour.CheckedChanged += CheckBox24HourOnCheckedChanged; _controller.SettingsLoaded += ControllerOnSettingsLoaded; _controller.OverlayMoved += ControllerOnOverlayMoved; _controller.OverlayResized += ControllerOnOverlayResized; _controller.LanguageChanged += ControllerOnLanguageChanged; _controller.LogMessageAppend += ControllerOnLogMessageAppend; _controller.OverlayFontChanged += ControllerOnOverlayFontChanged; _controller.ChannelColorChanged += ControllerOnChannelColorChanged; _controller.ProxyChanged += ControllerOnProxyChanged; _controller.UpdateCheckingStarted += ControllerOnUpdateCheckingStarted; _controller.VersionChecked += ControllerOnVersionChecked; _controller.ShortcutChanged += ControllerOnShortcutChanged; _controller.ShortcutRegister += ControllerOnShortcutRegister; _controller.ShortcutFired += ControllerOnShortcutFired; _controller.BatchTranslateCompleted += ControllerOnBatchTranslateCompleted; translateProviderPanel.AttachToAct(plugin); }