From: <sag...@us...> - 2009-11-20 13:04:44
|
Revision: 419 http://modplug.svn.sourceforge.net/modplug/?rev=419&view=rev Author: saga-games Date: 2009-11-20 13:04:34 +0000 (Fri, 20 Nov 2009) Log Message: ----------- [Fix] Instrument Editor: When pasting envelopes, the enabled and filter flags were lost. Modified Paths: -------------- trunk/OpenMPT/mptrack/Moddoc.h trunk/OpenMPT/mptrack/Modedit.cpp Modified: trunk/OpenMPT/mptrack/Moddoc.h =================================================================== --- trunk/OpenMPT/mptrack/Moddoc.h 2009-11-19 21:34:59 UTC (rev 418) +++ trunk/OpenMPT/mptrack/Moddoc.h 2009-11-20 13:04:34 UTC (rev 419) @@ -243,8 +243,8 @@ bool CopyPattern(PATTERNINDEX nPattern, DWORD dwBeginSel, DWORD dwEndSel); bool PastePattern(PATTERNINDEX nPattern, DWORD dwBeginSel, bool mix, bool ITStyleMix = false, bool PasteFlood = false); - BOOL CopyEnvelope(UINT nIns, UINT nEnv); - BOOL PasteEnvelope(UINT nIns, UINT nEnv); + bool CopyEnvelope(UINT nIns, enmEnvelopeTypes nEnv); + bool PasteEnvelope(UINT nIns, enmEnvelopeTypes nEnv); LRESULT ActivateView(UINT nIdView, DWORD dwParam); void UpdateAllViews(CView *pSender, LPARAM lHint=0L, CObject *pHint=NULL); Modified: trunk/OpenMPT/mptrack/Modedit.cpp =================================================================== --- trunk/OpenMPT/mptrack/Modedit.cpp 2009-11-19 21:34:59 UTC (rev 418) +++ trunk/OpenMPT/mptrack/Modedit.cpp 2009-11-20 13:04:34 UTC (rev 419) @@ -1403,8 +1403,8 @@ static LPCSTR pszEnvHdr = "Modplug Tracker Envelope\x0D\x0A"; static LPCSTR pszEnvFmt = "%d,%d,%d,%d,%d,%d,%d,%d\x0D\x0A"; -BOOL CModDoc::CopyEnvelope(UINT nIns, UINT nEnv) -//---------------------------------------------- +bool CModDoc::CopyEnvelope(UINT nIns, enmEnvelopeTypes nEnv) +//---------------------------------------------------------- { CMainFrame *pMainFrm = CMainFrame::GetMainFrame(); HANDLE hCpy; @@ -1412,7 +1412,7 @@ MODINSTRUMENT *pIns; DWORD dwMemSize; - if ((nIns < 1) || (nIns > m_SndFile.m_nInstruments) || (!m_SndFile.Instruments[nIns]) || (!pMainFrm)) return FALSE; + if ((nIns < 1) || (nIns > m_SndFile.m_nInstruments) || (!m_SndFile.Instruments[nIns]) || (!pMainFrm)) return false; BeginWaitCursor(); pIns = m_SndFile.Instruments[nIns]; @@ -1454,21 +1454,21 @@ CloseClipboard(); } EndWaitCursor(); - return TRUE; + return true; } -BOOL CModDoc::PasteEnvelope(UINT nIns, UINT nEnv) -//----------------------------------------------- +bool CModDoc::PasteEnvelope(UINT nIns, enmEnvelopeTypes nEnv) +//----------------------------------------------------------- { CMainFrame *pMainFrm = CMainFrame::GetMainFrame(); - if ((nIns < 1) || (nIns > m_SndFile.m_nInstruments) || (!m_SndFile.Instruments[nIns]) || (!pMainFrm)) return FALSE; + if ((nIns < 1) || (nIns > m_SndFile.m_nInstruments) || (!m_SndFile.Instruments[nIns]) || (!pMainFrm)) return false; BeginWaitCursor(); if (!pMainFrm->OpenClipboard()) { EndWaitCursor(); - return FALSE; + return false; } HGLOBAL hCpy = ::GetClipboardData(CF_TEXT); LPCSTR p; @@ -1523,7 +1523,7 @@ pEnv->nLoopStart = loopBegin; pEnv->nLoopEnd = loopEnd; pEnv->nReleaseNode = releaseNode; - pEnv->dwFlags = (bLoop ? ENV_LOOP : 0) | (bSus ? ENV_SUSTAIN : 0) | (bCarry ? ENV_CARRY: 0); + pEnv->dwFlags = (pEnv->dwFlags & ~(ENV_LOOP|ENV_SUSTAIN|ENV_CARRY)) | (bLoop ? ENV_LOOP : 0) | (bSus ? ENV_SUSTAIN : 0) | (bCarry ? ENV_CARRY: 0); int oldn = 0; for (UINT i=0; i<nPoints; i++) @@ -1557,7 +1557,7 @@ UpdateAllViews(NULL, (nIns << HINT_SHIFT_INS) | HINT_ENVELOPE, NULL); } EndWaitCursor(); - return TRUE; + return true; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |