| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 | 
							- /*
 
-  * mod2midi.h
 
-  * ----------
 
-  * Purpose: Module to MIDI conversion (dialog + conversion code).
 
-  * Notes  : (currently none)
 
-  * Authors: OpenMPT Devs
 
-  * The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
 
-  */
 
- #pragma once
 
- #include "openmpt/all/BuildSettings.hpp"
 
- #ifndef NO_PLUGINS
 
- #include "ProgressDialog.h"
 
- OPENMPT_NAMESPACE_BEGIN
 
- namespace MidiExport
 
- {
 
- 	struct Mod2MidiInstr
 
- 	{
 
- 		uint8 channel = MidiMappedChannel; // See enum MidiChannel
 
- 		uint8 program = 0;
 
- 	};
 
- 	using InstrMap = std::vector<Mod2MidiInstr>;
 
- }
 
- class CModToMidi: public CDialog
 
- {
 
- protected:
 
- 	CComboBox m_CbnInstrument, m_CbnChannel, m_CbnProgram;
 
- 	CSpinButtonCtrl m_SpinInstrument;
 
- 	CSoundFile &m_sndFile;
 
- 	UINT m_currentInstr;
 
- 	bool m_percussion;
 
- public:
 
- 	MidiExport::InstrMap m_instrMap;
 
- 	static bool s_overlappingInstruments;
 
- public:
 
- 	CModToMidi(CSoundFile &sndFile, CWnd *pWndParent = nullptr);
 
- protected:
 
- 	void OnOK() override;
 
- 	BOOL OnInitDialog() override;
 
- 	void DoDataExchange(CDataExchange *pDX) override;
 
- 	void FillProgramBox(bool percussion);
 
- 	afx_msg void OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
 
- 	afx_msg void UpdateDialog();
 
- 	afx_msg void OnChannelChanged();
 
- 	afx_msg void OnProgramChanged();
 
- 	afx_msg void OnOverlapChanged();
 
- 	DECLARE_MESSAGE_MAP();
 
- };
 
- class CDoMidiConvert: public CProgressDialog
 
- {
 
- public:
 
- 	CSoundFile &m_sndFile;
 
- 	mpt::ofstream &m_file;
 
- 	const MidiExport::InstrMap &m_instrMap;
 
- public:
 
- 	CDoMidiConvert(CSoundFile &sndFile, mpt::ofstream &f, const MidiExport::InstrMap &instrMap, CWnd *parent = nullptr)
 
- 		: CProgressDialog(parent)
 
- 		, m_sndFile(sndFile)
 
- 		, m_file(f)
 
- 		, m_instrMap(instrMap)
 
- 	{ }
 
- 	void Run() override;
 
- };
 
- OPENMPT_NAMESPACE_END
 
- #endif // NO_PLUGINS
 
 
  |