/[EmuXPortal]/branches/mono/EmuXPortal/Form1.cs
ViewVC logotype

Diff of /branches/mono/EmuXPortal/Form1.cs

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

revision 327 by william, Tue Dec 19 00:38:33 2017 UTC revision 334 by william, Tue Dec 19 03:35:02 2017 UTC
# Line 138  namespace EmuXPortal Line 138  namespace EmuXPortal
138              Cursor.Show();              Cursor.Show();
139  #endif  #endif
140          }          }
141    
142            void ReleasePlatformControlStreams ()
143                    {
144                            foreach (var c in platform_flow.Controls) {
145                                    if (c.GetType () == typeof(PlatformControl)) {
146                                            PlatformControl pc = (c as PlatformControl);
147                                            if (pc != null) {
148                                                    pc.ReleasePlatformStream();
149                                            }
150                                    }
151                            }
152            }
153                    void ReleaseGameControlStreams() {
154                            foreach (var c in rom_flow.Controls) {
155                                    if (c.GetType () == typeof(GameControl)) {
156                                            GameControl gc = (c as GameControl);
157                                            if (gc != null) {
158                                                    gc.ReleaseGameStream();
159                                            }
160                                    }
161                            }
162            }
163          void platform_ctrl_LostFocus(object sender, EventArgs e)          void platform_ctrl_LostFocus(object sender, EventArgs e)
164          {          {
165              PlatformControl c = sender as PlatformControl;              PlatformControl c = sender as PlatformControl;
# Line 322  namespace EmuXPortal Line 344  namespace EmuXPortal
344    
345              if (e.KeyCode == Keys.Enter)              if (e.KeyCode == Keys.Enter)
346              {              {
347                                    ReleaseGameControlStreams();
348                  IRomConfig config = c.Tag as IRomConfig;                  IRomConfig config = c.Tag as IRomConfig;
349    
350                  Process p = new Process();                  Process p = new Process();
# Line 342  namespace EmuXPortal Line 365  namespace EmuXPortal
365              }              }
366                          if (e.KeyCode == Keys.Back || e.KeyCode == Keys.Escape)                          if (e.KeyCode == Keys.Back || e.KeyCode == Keys.Escape)
367              {                                        {                          
368                                    ReleaseGameControlStreams();
369                                  SavedPlatformIndex = platform_flow.Controls.IndexOf (CurrentPlatformControl);                                  SavedPlatformIndex = platform_flow.Controls.IndexOf (CurrentPlatformControl);
370                  rom_flow.Visible = false;                  rom_flow.Visible = false;
371                  platform_flow.Visible = true;                  platform_flow.Visible = true;
# Line 470  namespace EmuXPortal Line 494  namespace EmuXPortal
494              }              }
495              if (e.KeyCode == Keys.Enter)              if (e.KeyCode == Keys.Enter)
496              {              {
497                  // load this platform                                  ReleasePlatformControlStreams();
498                    // load this platform                          
499                  platform_flow.Visible = false;                  platform_flow.Visible = false;
500                  CurrentSelectedRom = c.Tag as IEmuConfig;                  CurrentSelectedRom = c.Tag as IEmuConfig;                              
501                  rom_flow.Visible = true;                  rom_flow.Visible = true;
502                  rom_flow.BringToFront();                  rom_flow.BringToFront();
503              }              }
504                          if (e.KeyCode == Keys.Back || e.KeyCode == Keys.Escape)                          if (e.KeyCode == Keys.Back || e.KeyCode == Keys.Escape)
505              {              {
506                                    ReleasePlatformControlStreams();
507                  this.Close();                  this.Close();
508              }              }
509              if ((e.KeyCode >= Keys.A && e.KeyCode <= Keys.Z) ||              if ((e.KeyCode >= Keys.A && e.KeyCode <= Keys.Z) ||
# Line 800  namespace EmuXPortal Line 826  namespace EmuXPortal
826                      {                      {
827                                                  //gLog.Debug.WriteLine ("handling rom: {0}", config.ToString ());                                                  //gLog.Debug.WriteLine ("handling rom: {0}", config.ToString ());
828                                                  if(String.IsNullOrEmpty(config.RomImage)) {                                                  if(String.IsNullOrEmpty(config.RomImage)) {
829                                                          game_ctrl.GameImage = (Image)DefaultGameImage.Clone ();                                                          game_ctrl.UpdateGameImage((Image)DefaultGameImage.Clone ());
830                                                  }                                                  }
831                                                  else {                                                  else {
832                                                          string path = config.GetFullRomImage();                                                          string path = config.GetFullRomImage();
833                                                          game_ctrl.GameImage = Image.FromFile(path);                                                          gLog.Debug.WriteLine("game_ctrl.ControlID = {0}", game_ctrl.ControlID);
834                                                            game_ctrl.UpdateGameImage(path);
835                                                  }                                                  }
836                      }                      }
837                  }                  }
# Line 923  namespace EmuXPortal Line 950  namespace EmuXPortal
950                                          lock (platformimage_lock) {                                          lock (platformimage_lock) {
951                                                  //gLog.Debug.WriteLine ("handling platform: {0}", config.ToString ());                                                  //gLog.Debug.WriteLine ("handling platform: {0}", config.ToString ());
952                                                  if(String.IsNullOrEmpty(config.PlatformImage)) {                                                  if(String.IsNullOrEmpty(config.PlatformImage)) {
953                                                          platform_ctrl.PlatformImage = (Image)DefaultPlatformImage.Clone ();                                                          platform_ctrl.UpdatePlatformImage((Image)DefaultPlatformImage.Clone ());
954                                                  }                                                  }
955                                                  else {                                                  else {
956                                                          string path = config.GetFullPlatformImage();                                                          string path = config.GetFullPlatformImage();
957                                                          platform_ctrl.PlatformImage = Image.FromFile(path);                                                          gLog.Debug.WriteLine("platform_ctrl.ControlID = {0}", platform_ctrl.ControlID);
958                                                            platform_ctrl.UpdatePlatformImage(path);
959                                                  }                                                  }
960                                          }                                          }
961                                  } catch (Exception ex) {                                  } catch (Exception ex) {

Legend:
Removed from v.327  
changed lines
  Added in v.334

  ViewVC Help
Powered by ViewVC 1.1.22