1 |
using System; |
2 |
using System.Collections.Generic; |
3 |
using System.ComponentModel; |
4 |
using System.Data; |
5 |
using System.Drawing; |
6 |
using System.Linq; |
7 |
using System.Text; |
8 |
using System.Windows.Forms; |
9 |
using WeifenLuo.WinFormsUI.Docking; |
10 |
using RomCheater.PluginFramework.Interfaces; |
11 |
using RomCheater.PluginFramework.Events; |
12 |
using System.Diagnostics; |
13 |
|
14 |
namespace RomCheater.Docking |
15 |
{ |
16 |
public partial class FloatingMemoryView : DockContent, |
17 |
IAcceptsPlugin<IConfigPlugin>, |
18 |
IAcceptsProcess<Process>, |
19 |
IAcceptsProcessAndConfig, IAcceptsExternalMemoryAddress |
20 |
{ |
21 |
public FloatingMemoryView() { |
22 |
InitializeComponent(); |
23 |
this.AcceptedPlugin = null; |
24 |
this.AcceptedProcess = null; |
25 |
//this.MemoryStart = uint.MinValue; |
26 |
//this.MemorySize = uint.MaxValue; |
27 |
} |
28 |
public FloatingMemoryView(IConfigPlugin config) : this() { this.AcceptedPlugin = config; } |
29 |
public FloatingMemoryView(IConfigPlugin config, Process process) : this() { this.AcceptedPlugin = config; this.AcceptedProcess = process; } |
30 |
#region IAcceptsProcess<Process> Members |
31 |
public Process AcceptedProcess { get { return MemView.AcceptedProcess; } set { MemView.AcceptedProcess = value; } } |
32 |
#endregion |
33 |
#region IAcceptsPlugin<IConfigPlugin> Members |
34 |
public IConfigPlugin AcceptedPlugin { get { return MemView.AcceptedPlugin; } set { MemView.AcceptedPlugin = value; } } |
35 |
#endregion |
36 |
#region IAcceptsMemoryRange members |
37 |
private int MemoryStart { get { return MemView.MemoryStart; } } |
38 |
private uint MemorySize { get { return MemView.MemorySize; } } |
39 |
#endregion |
40 |
|
41 |
#region IAcceptsExternalMemoryAddress |
42 |
public bool AcceptExternalMemoryAddress(int address) |
43 |
{ |
44 |
if (!((MemoryStart <= address) && (address <= (MemoryStart + MemorySize)))) { return false; } |
45 |
MemView.GotoAddress(address); |
46 |
return true; |
47 |
} |
48 |
#endregion |
49 |
} |
50 |
} |