1 ////////////////////////////////////////////////////////////////////////////////////////
2 //
3 // Nestopia - NES/Famicom emulator written in C++
4 //
5 // Copyright (C) 2003-2008 Martin Freij
6 //
7 // This file is part of Nestopia.
8 //
9 // Nestopia is free software; you can redistribute it and/or modify
10 // it under the terms of the GNU General Public License as published by
11 // the Free Software Foundation; either version 2 of the License, or
12 // (at your option) any later version.
13 //
14 // Nestopia is distributed in the hope that it will be useful,
15 // but WITHOUT ANY WARRANTY; without even the implied warranty of
16 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 // GNU General Public License for more details.
18 //
19 // You should have received a copy of the GNU General Public License
20 // along with Nestopia; if not, write to the Free Software
21 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
22 //
23 ////////////////////////////////////////////////////////////////////////////////////////
24 
25 #include "NstManagerPaths.hpp"
26 #include "../core/api/NstApiCartridge.hpp"
27 #include "NstDialogInesHeader.hpp"
28 #include "NstManagerInesHeader.hpp"
29 
30 namespace Nestopia
31 {
32 	namespace Managers
33 	{
InesHeader(Emulator & e,Window::Menu & m,const Paths & p)34 		InesHeader::InesHeader(Emulator& e,Window::Menu& m,const Paths& p)
35 		:
36 		Manager ( e, m, this, &InesHeader::OnEmuEvent, IDM_FILE_EDIT_INES_HEADER, &InesHeader::OnCmdEditInesHeader ),
37 		paths   ( p )
38 		{
39 		}
40 
OnCmdEditInesHeader(uint)41 		void InesHeader::OnCmdEditInesHeader(uint)
42 		{
43 			Window::InesHeader( paths ).Open( paths.BrowseLoad( Paths::File::INES ) );
44 		}
45 
OnEmuEvent(const Emulator::Event event,const Emulator::Data data)46 		void InesHeader::OnEmuEvent(const Emulator::Event event,const Emulator::Data data)
47 		{
48 			switch (event)
49 			{
50 				case Emulator::EVENT_NETPLAY_MODE:
51 
52 					menu[IDM_FILE_EDIT_INES_HEADER].Enable( !data );
53 					break;
54 			}
55 		}
56 	}
57 }
58