public LiveHexUI(ISaveFileProvider sav, IPKMView editor) { SAV = sav; Remote = new LiveHexController(sav, editor); InitializeComponent(); TB_IP.Text = Properties.Settings.Default.LatestIP; // add an event to the editor // ReSharper disable once SuspiciousTypeConversion.Global BoxSelect = ((Control)sav).Controls.Find("CB_BoxSelect", true).FirstOrDefault() as ComboBox; if (BoxSelect != null) { BoxSelect.SelectedIndexChanged += ChangeBox; } var type = sav.GetType(); var fields = type.GetTypeInfo().DeclaredFields; var test = fields.First(z => z.Name == "EditEnv"); x = (SaveDataEditor <PictureBox>)test.GetValue(sav); x.Slots.Publisher.Subscribers.Add(this); TB_Port.Text = Remote.Bot.Port.ToString(); CenterToParent(); }
private readonly ComboBox?BoxSelect; // this is just us holding a reference; disposal is done by its parent #pragma warning restore CA2213 // Disposable fields should be disposed public LiveHeXUI(ISaveFileProvider sav, IPKMView editor) { SAV = sav; CurrentInjectionType = AutoLegality.Default.USBBotBasePreferred ? InjectorCommunicationType.USB : InjectorCommunicationType.SocketNetwork; Remote = new LiveHeXController(sav, editor, CurrentInjectionType); InitializeComponent(); this.TranslateInterface(WinFormsTranslator.CurrentLanguage); TB_IP.Text = AutoLegality.Default.LatestIP; SetInjectionTypeView(); // add an event to the editor // ReSharper disable once SuspiciousTypeConversion.Global BoxSelect = ((Control)sav).Controls.Find("CB_BoxSelect", true).FirstOrDefault() as ComboBox; if (BoxSelect != null) { BoxSelect.SelectedIndexChanged += ChangeBox; Closing += (s, e) => BoxSelect.SelectedIndexChanged -= ChangeBox; } var type = sav.GetType(); var fields = type.GetTypeInfo().DeclaredFields; var test = fields.First(z => z.Name == "EditEnv"); x = (SaveDataEditor <PictureBox>)test.GetValue(sav); x.Slots.Publisher.Subscribers.Add(this); TB_Port.Text = Remote.Bot.com.Port.ToString(); CenterToParent(); }
public LiveHeXController(ISaveFileProvider boxes, IPKMView editor, InjectorCommunicationType ict) { SAV = boxes; Editor = editor; var ValidVers = RamOffsets.GetValidVersions(boxes.SAV); Bot = new PokeSysBotMini(ValidVers[0], ict); }
public void Initialize(params object[] args) { Console.WriteLine($"{Name} is starting up"); SaveFileEditor = (ISaveFileProvider)Array.Find(args, z => z is ISaveFileProvider); var getMenu = (ToolStrip)Array.Find(args, z => z is ToolStrip); LoadMenuStrip(getMenu); }
private void AddItem(ISaveFileProvider SAV, ToolStripDropDownItem parent, IBoxManip item) { var name = item.Type.ToString(); ManipTypeImage.TryGetValue(item.Type, out var img); var tsi = new ToolStripMenuItem { Name = $"mnu_{name}", Text = name, Image = img }; tsi.Click += (s, e) => Manipulator.Execute(item, SAV.CurrentBox, All, Reverse); parent.DropDownItems.Add(tsi); CustomItems.Add(new ItemVisibility(tsi, item)); }
private static void Export(ISaveFileProvider provider) { try { var str = provider.GetRegenSetsFromBoxCurrent(); if (string.IsNullOrWhiteSpace(str)) { return; } Clipboard.SetText(str); WinFormsUtil.Alert("Exported the active box to RegenTemplate format"); } catch (Exception e) { WinFormsUtil.Error("Unable to export text to clipboard.", e.Message); } }
public void Initialize(params object[] args) { Debug.WriteLine("[Display Raids Plugin] Loading"); SaveFileEditor = (ISaveFileProvider)Array.Find(args, z => z is ISaveFileProvider); var menu = (ToolStrip)Array.Find(args, z => z is ToolStrip); var items = menu.Items; if (!(items.Find("Menu_Tools", false)[0] is ToolStripDropDownItem tools)) { return; } var ctrl = new ToolStripMenuItem(Name) { }; ctrl.Click += (s, e) => Open(SaveFileEditor.SAV); tools.DropDownItems.Add(ctrl); }
public LiveHexController(ISaveFileProvider boxes, IPKMView editor) { SAV = boxes; Editor = editor; }
/// <summary> /// Exports the <see cref="SaveFile.CurrentBox"/> to <see cref="ShowdownSet"/> as a single string. /// </summary> /// <param name="sav">Save File to export from</param> /// <returns>Concatenated string of all sets in the current box.</returns> public static string GetRegenSetsFromBoxCurrent(this ISaveFileProvider provider) => GetRegenSetsFromBox(provider.SAV, provider.CurrentBox);
public LiveHexController(ISaveFileProvider boxes, IPKMView editor) { SAV = boxes; Editor = editor; Bot = new PokeSysBotMini(LiveHeXVersion.SWSH_Rigel1); }
public LiveHeXController(ISaveFileProvider boxes, IPKMView editor) { SAV = boxes; Editor = editor; Bot = new PokeSysBotMini(0); }