ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/RomCheater/trunk/RomCheater.ScratchPad/ScratchPad.cs
Revision: 774
Committed: Thu Jun 20 22:33:04 2013 UTC (9 years, 11 months ago) by william
File size: 5962 byte(s)
Log Message:

File Contents

# Content
1 #region Logging Defines
2 // include this any class or method that required logging, and comment-out what is not needed
3 #define LOGGING_ENABLED // this is only valid within the logger class
4 #region Enabled logging levels
5 #define LOGGING_ENABLE_INFO
6 #define LOGGING_ENABLE_WARN
7 #define LOGGING_ENABLE_DEBUG
8 #define LOGGING_ENABLE_VERBOSEDEBUG
9 #define LOGGING_ENABLE_ERROR
10 #define LOGGING_ENABLE_VERBOSEERROR
11 #define LOGGING_ENABLE_PROFILER
12 #endregion
13 #endregion
14 using System;
15 using System.Collections.Generic;
16 using System.ComponentModel;
17 using System.Data;
18 using System.Drawing;
19 using System.Linq;
20 using System.Text;
21 using System.Windows.Forms;
22 using WeifenLuo.WinFormsUI.Docking;
23 using System.IO;
24 using RomCheater.Logging;
25 using RomCheater.Core;
26 using RomCheater.PluginFramework.Core;
27
28 namespace RomCheater.ScratchPad
29 {
30 public partial class ScratchPad : DockContent
31 {
32 List<ScratchPadDocument> docuemntList = new List<ScratchPadDocument>();
33 private UserControlPlugin plugin;
34 private bool PostInitDone = false;
35 public ScratchPad(UserControlPlugin plugin)
36 {
37 this.plugin = plugin;
38 InitPluginFramework();
39 InitializeComponent();
40 }
41
42
43 private void InitPluginFramework()
44 {
45 if (this.plugin == null) { return; }
46 this.plugin.OnSelectedProcessChanged += new BaseEventHandler<ProcessChangedEventArgs>(plugin_OnSelectedProcessChanged);
47 this.plugin.OnSelectedConfigChanged += new BaseEventHandler<ConfigChangedEventArgs>(plugin_OnSelectedConfigChanged);
48 this.plugin.OnPEDataUpdated += new BaseEventHandler<PEViewerDataUpdatedEventArgs>(plugin_OnPEDataUpdated);
49 RaisePluginFrameworkEvents();
50 }
51
52 bool EventsRaised = false;
53 private void RaisePluginFrameworkEvents()
54 {
55
56 if (this.plugin == null) { EventsRaised = true; return; }
57 if (!EventsRaised)
58 {
59 this.plugin.RaisePluginFrameworkEvents();
60 EventsRaised = true;
61 }
62 }
63
64 void plugin_OnPEDataUpdated(PEViewerDataUpdatedEventArgs e)
65 {
66 //logger.Warn.WriteLine("plugin_OnPEDataUpdated::has not been implemented!");
67 }
68 void plugin_OnSelectedConfigChanged(ConfigChangedEventArgs e)
69 {
70 //logger.Warn.WriteLine("plugin_OnSelectedConfigChanged::has not been implemented!");
71 }
72 void plugin_OnSelectedProcessChanged(ProcessChangedEventArgs e)
73 {
74 //logger.Warn.WriteLine("plugin_OnSelectedProcessChanged::has not been implemented!");
75 }
76
77
78
79
80
81
82
83
84
85
86
87 private void ScratchPad_FormClosing(object sender, FormClosingEventArgs e)
88 {
89 //if (txtScratchPad.Text != string.Empty && PostInitDone)
90 //{
91 // DialogResult result = MessageBox.Show("Would you like to save the ScratchPad data before Closing?", "", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
92 // if (result == DialogResult.Cancel)
93 // {
94 // e.Cancel = true;
95 // return;
96 // }
97 // if (result == DialogResult.Yes)
98 // {
99 // mnuItemSave.PerformClick();
100 // }
101 //}
102 for (int i = 0; i < docuemntList.Count; i++)
103 {
104 var Document = docuemntList[i];
105 Document.OnDocumentQuit();
106 }
107 }
108
109 private void ScratchPad_Deactivate<T>(object sender, T e) where T: EventArgs
110 {
111 try
112 {
113 FormClosingEventArgs args = (e as FormClosingEventArgs);
114 ScratchPad_FormClosing(sender, args);
115 }
116 catch { }
117 }
118
119 private void mnuItemNew_Click(object sender, EventArgs e)
120 {
121 // create new document
122 int tp_index = this.tb.TabPages.Count;
123 ScratchPadDocument t = new ScratchPadDocument(tp_index);
124 t.DocumentClosing += new BaseEventHandler<ControlClosingEventArgs<int>>(t_DocumentClosing);
125 docuemntList.Add(t);
126 this.tb.TabPages.Add(t.DocumentTab);
127 }
128
129 private void ScratchPad_Load(object sender, EventArgs e)
130 {
131 int tp_index = this.tb.TabPages.Count;
132 ScratchPadDocument t = new ScratchPadDocument(tp_index);
133 t.DocumentClosing += new BaseEventHandler<ControlClosingEventArgs<int>>(t_DocumentClosing);
134 docuemntList.Add(t);
135 this.tb.TabPages.Add(t.DocumentTab);
136 }
137
138 void t_DocumentClosing(ControlClosingEventArgs<int> e)
139 {
140 int index = e.Args;
141 this.docuemntList.RemoveAt(index);
142 }
143
144 //private void txtScratchPad_LinkClicked(object sender, LinkClickedEventArgs e)
145 //{
146 // //System.Diagnostics.Process.Start(e.LinkText);
147 // if (this.plugin != null)
148 // {
149 // var p = this.plugin.WebBrowserInterface;
150 // if (p != null)
151 // {
152 // p.Navigate(e.LinkText);
153 // }
154 // else
155 // {
156 // logger.Debug.WriteLine("Could not navigate to url: '{0}'", e.LinkText);
157 // logger.Debug.WriteLine("Could not obtain a handle to the WebBrowser Provider's Interface.");
158 // }
159 // }
160 // else
161 // {
162 // logger.Debug.WriteLine("Could not navigate to url: '{0}'", e.LinkText);
163 // logger.Debug.WriteLine("Loaded plugin is null");
164 // }
165 //}
166 }
167 }