/[RomCheater]/trunk/RomCheater.RVAScratchPad/Form1.cs
ViewVC logotype

Diff of /trunk/RomCheater.RVAScratchPad/Form1.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 724 by william, Tue Jun 18 20:22:08 2013 UTC revision 731 by william, Wed Jun 19 15:13:24 2013 UTC
# Line 26  namespace RomCheater.RVAScratchPad Line 26  namespace RomCheater.RVAScratchPad
26          IUserControlPlugin ScratchPadPlugin = null;          IUserControlPlugin ScratchPadPlugin = null;
27    
28          private DeserializeDockContent m_deserializeDockContent;          private DeserializeDockContent m_deserializeDockContent;
29          private FloatingLogWindow m_LogWindow = new FloatingLogWindow();          //private FloatingLogWindow m_LogWindow = new FloatingLogWindow();
30          private FloatingWebBrowser m_wb = new FloatingWebBrowser();          //private FloatingWebBrowser m_wb = new FloatingWebBrowser();
31    
32            //public IWebBrowserProvider WebBrowserProvider
33            //{
34            //    get { return new WebBrowserProvider(m_wb); }
35            //}
36          #region LogWriterSupport          #region LogWriterSupport
37          static LogWriter _LoggerInstance;          static LogWriter _LoggerInstance;
38          static LogWriter LoggerInstance          static LogWriter LoggerInstance
# Line 46  namespace RomCheater.RVAScratchPad Line 50  namespace RomCheater.RVAScratchPad
50              SettingsSubscriber.AddSubscriber(this, RomCheater.Properties.Settings.Default);                            SettingsSubscriber.AddSubscriber(this, RomCheater.Properties.Settings.Default);              
51              load_loggerflags();              load_loggerflags();
52              SetupDocks();              SetupDocks();
53              LoggerInstance = m_LogWindow.Logwriter;              //LoggerInstance = m_LogWindow.Logwriter;
54                LoggerInstance = new LogWriter(!no_console_redirect);
55              LoggerInstance.CreateNewLog(false);              LoggerInstance.CreateNewLog(false);
56              logger.ForceLog.Info.WriteLine("LoggingFlags = 0x{0:x4} ({1})", logger.GetLoggingFlags().Value, logger.GetLoggingFlags().Name);              logger.ForceLog.Info.WriteLine("LoggingFlags = 0x{0:x4} ({1})", logger.GetLoggingFlags().Value, logger.GetLoggingFlags().Name);
57              load_plugins();              load_plugins();
# Line 78  namespace RomCheater.RVAScratchPad Line 83  namespace RomCheater.RVAScratchPad
83                  ConfigPlugin = loader.GetPluginByGuid<IConfigPlugin>(config.ID.ToString());                  ConfigPlugin = loader.GetPluginByGuid<IConfigPlugin>(config.ID.ToString());
84              }              }
85    
86                // update the Config plugin's reference to the webbrowswer
87                //ConfigPlugin.WebBrowserProvider = this.WebBrowserProvider;
88    
89              SettingsSubscriber.SetValue("LastConfigPlugin", ConfigPlugin.ToString());              SettingsSubscriber.SetValue("LastConfigPlugin", ConfigPlugin.ToString());
90    
91              var scratchpad = PluginCollection.GetPluginByName(PluginNames.ScratchPadPlugin);              var scratchpad = PluginCollection.GetPluginByName(PluginNames.ScratchPadPlugin);
92              var rvacalc = PluginCollection.GetPluginByName(PluginNames.RVACalculatorPlugin);                          var rvacalc = PluginCollection.GetPluginByName(PluginNames.RVACalculatorPlugin);
93              ScratchPadPlugin = loader.GetPluginByGuid<IUserControlPlugin>(scratchpad.ID.ToString());              ScratchPadPlugin = loader.GetPluginByGuid<IUserControlPlugin>(scratchpad.ID.ToString());
94              RVACalcPlugin = loader.GetPluginByGuid<IUserControlPlugin>(rvacalc.ID.ToString());              RVACalcPlugin = loader.GetPluginByGuid<IUserControlPlugin>(rvacalc.ID.ToString());
95    
96                // update config of each plugin
97                ScratchPadPlugin.SetAcceptedConfig(ConfigPlugin);
98                RVACalcPlugin.SetAcceptedConfig(ConfigPlugin);
99          }          }
100    
101    
# Line 91  namespace RomCheater.RVAScratchPad Line 103  namespace RomCheater.RVAScratchPad
103          #region Dock Support          #region Dock Support
104          private IDockContent GetContentFromPersistString(string persistString)          private IDockContent GetContentFromPersistString(string persistString)
105          {          {
106              if (persistString == typeof(FloatingLogWindow).ToString()) { return m_LogWindow; }              //if (persistString == typeof(FloatingLogWindow).ToString()) { return m_LogWindow; }
107              if (persistString == typeof(FloatingWebBrowser).ToString()) { return m_wb; }              //if (persistString == typeof(FloatingWebBrowser).ToString()) { return m_wb; }
108              if (RVACalcPlugin != null) { if (persistString == RVACalcPlugin.IDockContentTypeName) { return RVACalcPlugin.DockContent; } }              if (RVACalcPlugin != null) { if (persistString == RVACalcPlugin.IDockContentTypeName) { return RVACalcPlugin.DockContent; } }
109              if (ScratchPadPlugin != null) { if (persistString == ScratchPadPlugin.IDockContentTypeName) { return ScratchPadPlugin.DockContent; } }                          if (ScratchPadPlugin != null) { if (persistString == ScratchPadPlugin.IDockContentTypeName) { return ScratchPadPlugin.DockContent; } }
110              return null;              return null;
111          }          }
112          public void SetupDocks()          public void SetupDocks()
113          {          {
114              m_LogWindow = new FloatingLogWindow();              //m_LogWindow = new FloatingLogWindow();
115              m_LogWindow.CloseButton = false;              //m_LogWindow.CloseButton = false;
116              m_LogWindow.CloseButtonVisible = false;              //m_LogWindow.CloseButtonVisible = false;
117    
118              m_wb = new FloatingWebBrowser();              //m_wb = new FloatingWebBrowser();
119              m_wb.CloseButton = false;              //m_wb.CloseButton = false;
120              m_wb.CloseButtonVisible = false;              //m_wb.CloseButtonVisible = false;
121    
122                if (RVACalcPlugin != null)
123                {
124                    RVACalcPlugin.DockHandler.CloseButton = false;
125                    RVACalcPlugin.DockHandler.CloseButtonVisible = false;
126                    RVACalcPlugin.DockHandler.AllowEndUserDocking = false;
127                }
128                if (ScratchPadPlugin != null)
129                {
130                    ScratchPadPlugin.DockHandler.CloseButton = false;
131                    ScratchPadPlugin.DockHandler.CloseButtonVisible = false;
132                    ScratchPadPlugin.DockHandler.AllowEndUserDocking = false;
133                }
134    
135              m_deserializeDockContent = new DeserializeDockContent(GetContentFromPersistString);              m_deserializeDockContent = new DeserializeDockContent(GetContentFromPersistString);
136          }          }
137          #region SetupDockWindowHandler support          #region SetupDockWindowHandler support
138          public void SetupDockWindowHandler()          public void SetupDockWindowHandler()
139          {          {
140              SetupLogWindowHandler();              //SetupLogWindowHandler();
141              SetupWebBrowserWindowHandler();              //SetupWebBrowserWindowHandler();
142              SetupPluginWindowHandlers();              SetupPluginWindowHandlers();
143          }          }
144          private void SetupPluginWindowHandlers()          private void SetupPluginWindowHandlers()
145          {          {
146              if (RVACalcPlugin != null)              if (RVACalcPlugin != null)
147              {              {
148                    RVACalcPlugin.DockHandler.CloseButton = false;
149                    RVACalcPlugin.DockHandler.CloseButtonVisible = false;
150                    RVACalcPlugin.DockHandler.AllowEndUserDocking = false;
151                  RVACalcPlugin.Activate();                  RVACalcPlugin.Activate();
152              }              }
153              if (ScratchPadPlugin != null)              if (ScratchPadPlugin != null)
154              {              {
155                    ScratchPadPlugin.DockHandler.CloseButton = false;
156                    ScratchPadPlugin.DockHandler.CloseButtonVisible = false;
157                    ScratchPadPlugin.DockHandler.AllowEndUserDocking = false;
158                  ScratchPadPlugin.Activate();                  ScratchPadPlugin.Activate();
159              }              }
160          }          }
161          private void SetupLogWindowHandler()          //private void SetupLogWindowHandler()
162          {          //{
163              if (m_LogWindow == null) return;          //    //if (m_LogWindow == null) return;
164              //m_LogWindow.Shown += new EventHandler(AddDockToWindowList);          //    ////m_LogWindow.Shown += new EventHandler(AddDockToWindowList);
165              //m_LogWindow.FormClosed += new FormClosedEventHandler(RemoveDockFromWindowList);          //    ////m_LogWindow.FormClosed += new FormClosedEventHandler(RemoveDockFromWindowList);
166              m_LogWindow.Activate();          //    //m_LogWindow.Activate();
167          }          //}
168          private void SetupWebBrowserWindowHandler()          //private void SetupWebBrowserWindowHandler()
169          {          //{
170              if (m_wb == null) return;          //    //if (m_wb == null) return;
171              //m_wb.Shown += new EventHandler(AddDockToWindowList);          //    ////m_wb.Shown += new EventHandler(AddDockToWindowList);
172              //m_wb.FormClosed += new FormClosedEventHandler(RemoveDockFromWindowList);          //    ////m_wb.FormClosed += new FormClosedEventHandler(RemoveDockFromWindowList);
173              m_wb.Activate();          //    //m_wb.Activate();
174          }          //}
175          #endregion          #endregion
176          public void ShowDocks()          public void ShowDocks()
177          {          {
178              ShowLogWindow();              //ShowLogWindow();
179              SetupLogWindowHandler();              //SetupLogWindowHandler();
180              ShowWebBrowser();              //ShowWebBrowser();
181              SetupWebBrowserWindowHandler();              //SetupWebBrowserWindowHandler();
182              ShowPluginWindows();              ShowPluginWindows();
183              SetupPluginWindowHandlers();              SetupPluginWindowHandlers();
184    
# Line 156  namespace RomCheater.RVAScratchPad Line 187  namespace RomCheater.RVAScratchPad
187          }          }
188          public void ShowLogWindow()          public void ShowLogWindow()
189          {          {
190              if (m_LogWindow == null || m_LogWindow.IsDisposed) { m_LogWindow = new FloatingLogWindow(); }              //if (m_LogWindow == null || m_LogWindow.IsDisposed) { m_LogWindow = new FloatingLogWindow(); }
191              LoggerInstance = m_LogWindow.Logwriter;              //if (LoggerInstance == null)
192              LoggerInstance.CreateNewLog(false);              //{
193              m_LogWindow.CloseButton = false;              //    LoggerInstance = m_LogWindow.Logwriter;
194              m_LogWindow.CloseButtonVisible = false;              //    LoggerInstance.CreateNewLog(false);
195              m_LogWindow.Show(dockPanel, DockState.DockBottom);              //}
196                ////m_LogWindow.AllowEndUserDocking = true;
197                ////m_LogWindow.CloseButton = false;
198                ////m_LogWindow.CloseButtonVisible = false;
199                //m_LogWindow.Show(dockPanel, DockState.DockBottom);
200          }          }
201    
202    
203          public void ShowWebBrowser()          public void ShowWebBrowser()
204          {          {
205              //load_plugins_silent();              ////load_plugins_silent();
206              m_wb = new FloatingWebBrowser();              //m_wb = new FloatingWebBrowser();
207              m_wb.CloseButton = false;              ////m_wb.AllowEndUserDocking = true;
208              m_wb.CloseButtonVisible = false;              ////m_wb.CloseButton = false;
209              m_wb.Show(dockPanel);              ////m_wb.CloseButtonVisible = false;
210                //m_wb.Show(dockPanel, DockState.Document);
211          }          }
212          public void ShowPluginWindows()          public void ShowPluginWindows()
213          {          {
214              // RVA Calc              if (RVACalcPlugin != null)
215              RVACalcPlugin.Show(dockPanel);              {
216              // ScratchPad                  // RVA Calc                
217              ScratchPadPlugin.Show(dockPanel);                      RVACalcPlugin.DockHandler.CloseButton = false;
218                    RVACalcPlugin.DockHandler.CloseButtonVisible = false;
219                    RVACalcPlugin.DockHandler.AllowEndUserDocking = false;
220                    RVACalcPlugin.Show(dockPanel, DockState.DockLeft);
221                }
222                if (ScratchPadPlugin != null)
223                {
224                    // ScratchPad                
225                    ScratchPadPlugin.DockHandler.CloseButton = false;
226                    ScratchPadPlugin.DockHandler.CloseButtonVisible = false;
227                    ScratchPadPlugin.DockHandler.AllowEndUserDocking = false;
228                    ScratchPadPlugin.Show(dockPanel, DockState.DockRight);
229                }
230          }          }
231          #endregion          #endregion
232    
# Line 199  namespace RomCheater.RVAScratchPad Line 247  namespace RomCheater.RVAScratchPad
247    
248          private void Form1_Shown(object sender, EventArgs e)          private void Form1_Shown(object sender, EventArgs e)
249          {          {
250              //dockPanel.SuspendLayout(true);              ////dockPanel.SuspendLayout(true);
251              //ShowDocks();              ////ShowDocks();
252              string configFile = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), "RVAScratchPad-DockPanel.config");              string configFile = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), "RVAScratchPad-DockPanel.config");
253              if (File.Exists(configFile))              if (File.Exists(configFile))
254              {              {
# Line 226  namespace RomCheater.RVAScratchPad Line 274  namespace RomCheater.RVAScratchPad
274    
275              if (RVACalcPlugin != null)              if (RVACalcPlugin != null)
276                  RVACalcPlugin.Activate();                  RVACalcPlugin.Activate();
277              //dockPanel.ResumeLayout(true, true);              ////dockPanel.ResumeLayout(true, true);
278          }          }
279    
280          private void mnuItemExit_Click(object sender, EventArgs e)          private void mnuItemExit_Click(object sender, EventArgs e)
# Line 234  namespace RomCheater.RVAScratchPad Line 282  namespace RomCheater.RVAScratchPad
282              this.Close();              this.Close();
283          }          }
284    
285          private void Form1_Load(object sender, EventArgs e)          private void Form1_Load(object sender, EventArgs e) { }
         {  
             SettingsSubscriber.SaveSettings();  
         }  
286      }      }
287  }  }

Legend:
Removed from v.724  
changed lines
  Added in v.731

  ViewVC Help
Powered by ViewVC 1.1.22