From: <sag...@us...> - 2011-03-19 14:00:29
|
Revision: 818 http://modplug.svn.sourceforge.net/modplug/?rev=818&view=rev Author: saga-games Date: 2011-03-19 14:00:23 +0000 (Sat, 19 Mar 2011) Log Message: ----------- [Ref] Small bits of refactoring in various places. Modified Paths: -------------- trunk/OpenMPT/mptrack/AutoSaver.cpp trunk/OpenMPT/mptrack/View_pat.h trunk/OpenMPT/mptrack/Vstplug.h trunk/OpenMPT/mptrack/fxp.cpp trunk/OpenMPT/mptrack/fxp.h trunk/OpenMPT/soundlib/Load_mt2.cpp trunk/OpenMPT/soundlib/Snd_defs.h Modified: trunk/OpenMPT/mptrack/AutoSaver.cpp =================================================================== --- trunk/OpenMPT/mptrack/AutoSaver.cpp 2011-03-19 13:56:03 UTC (rev 817) +++ trunk/OpenMPT/mptrack/AutoSaver.cpp 2011-03-19 14:00:23 UTC (rev 818) @@ -378,8 +378,8 @@ CHAR szPath[_MAX_PATH] = ""; BROWSEINFO bi; - GetDlgItemText(IDC_AUTOSAVE_PATH, szPath, sizeof(szPath)); - memset(&bi, 0, sizeof(bi)); + GetDlgItemText(IDC_AUTOSAVE_PATH, szPath, CountOf(szPath)); + MemsetZero(bi); bi.hwndOwner = m_hWnd; bi.lpszTitle = "Select a folder to store autosaved files in..."; bi.pszDisplayName = szPath; Modified: trunk/OpenMPT/mptrack/View_pat.h =================================================================== --- trunk/OpenMPT/mptrack/View_pat.h 2011-03-19 13:56:03 UTC (rev 817) +++ trunk/OpenMPT/mptrack/View_pat.h 2011-03-19 14:00:23 UTC (rev 818) @@ -30,9 +30,19 @@ #define PATSTATUS_PLUGNAMESINHEADERS 0x2000 // Show plugin names in channel headers //rewbs.patPlugName #define PATSTATUS_SELECTROW 0x4000 // Selecting a whole pattern row by clicking the row numbers + // Row Spacing #define MAX_SPACING 64 // MAX_PATTERN_ROWS + +// Selection - bit masks +// --------------------- +// A selection point (m_dwStartSel and the like) is stored in a 32-Bit variable. The structure is as follows (MSB to LSB): +// | 16 bits - row | 13 bits - channel | 3 bits - channel component | +// As you can see, the highest 16 bits contain a row index. +// It is followed by a channel index, which is 13 bits wide. +// The lowest 3 bits are used for addressing the components of a channel. They are *not* used as a bit set, but treated as one of the following integer numbers: + enum PatternColumns { NOTE_COLUMN=0, @@ -43,7 +53,9 @@ LAST_COLUMN = PARAM_COLUMN }; +static_assert(MAX_CHANNELS <= 0x1FFF, "Check: Channel index in pattern editor is only 13 bits wide!"); + //Struct for controlling selection clearing. This is used to define which data fields //should be cleared. struct RowMask @@ -67,10 +79,10 @@ struct FindReplaceStruct { MODCOMMAND cmdFind, cmdReplace; // Find/replace notes/instruments/effects - DWORD dwFindFlags, dwReplaceFlags; // PATSEARCH_XXX flags + DWORD dwFindFlags, dwReplaceFlags; // PATSEARCH_XXX flags (=> PatternEditorDialogs.h) CHANNELINDEX nFindMinChn, nFindMaxChn; // Find in these channels (if PATSEARCH_CHANNEL is set) signed char cInstrRelChange; // relative instrument change (quick'n'dirty fix, this should be implemented in a less cryptic way) - DWORD dwBeginSel, dwEndSel; // Find in this selection (if PATSEARCH_PATSEL is set) + DWORD dwBeginSel, dwEndSel; // Find in this selection (if PATSEARCH_PATSELECTION is set) }; @@ -94,7 +106,8 @@ bool m_bDragging, m_bInItemRect, m_bContinueSearch, m_bWholePatternFitsOnScreen; RECT m_rcDragItem; DWORD m_dwStatus, m_dwCursor; - DWORD m_dwBeginSel, m_dwEndSel, m_dwStartSel, m_dwDragPos; + DWORD m_dwBeginSel, m_dwEndSel; // Upper-left / Lower-right corners of selection + DWORD m_dwStartSel, m_dwDragPos; // Point where selection was started WORD ChnVUMeters[MAX_BASECHANNELS]; WORD OldVUMeters[MAX_BASECHANNELS]; CListBox *ChnEffectList[MAX_BASECHANNELS]; //rewbs.patPlugName Modified: trunk/OpenMPT/mptrack/Vstplug.h =================================================================== --- trunk/OpenMPT/mptrack/Vstplug.h 2011-03-19 13:56:03 UTC (rev 817) +++ trunk/OpenMPT/mptrack/Vstplug.h 2011-03-19 14:00:23 UTC (rev 818) @@ -205,7 +205,7 @@ UINT GetNumCommands() {return 0;} VOID GetPluginType(LPSTR) {} PlugParamIndex GetNumPrograms() {return 0;} - bool GetProgramNameIndexed(long, long, char*) {return 0;} + bool GetProgramNameIndexed(long, long, char*) {return false;} VOID SetParameter(PlugParamIndex nIndex, PlugParamValue fValue) {} VOID GetParamLabel(UINT, LPSTR) {} VOID GetParamDisplay(UINT, LPSTR) {} Modified: trunk/OpenMPT/mptrack/fxp.cpp =================================================================== --- trunk/OpenMPT/mptrack/fxp.cpp 2011-03-19 13:56:03 UTC (rev 817) +++ trunk/OpenMPT/mptrack/fxp.cpp 2011-03-19 14:00:23 UTC (rev 818) @@ -279,14 +279,14 @@ bool Cfxp::NeedSwap() //------------------- { - if (m_bNeedSwap<0) //don't yet know if we need to swap - find out! + if (m_bNeedSwap < 0) //don't yet know if we need to swap - find out! { static char szChnk[] = "CcnK"; static long lChnk = 'CcnK'; m_bNeedSwap = !!memcmp(szChnk, &lChnk, 4); } - return m_bNeedSwap; + return m_bNeedSwap ? true : false; } Modified: trunk/OpenMPT/mptrack/fxp.h =================================================================== --- trunk/OpenMPT/mptrack/fxp.h 2011-03-19 13:56:03 UTC (rev 817) +++ trunk/OpenMPT/mptrack/fxp.h 2011-03-19 14:00:23 UTC (rev 818) @@ -26,7 +26,7 @@ bool Save(CString fileName); protected: - BOOL m_bNeedSwap; + int m_bNeedSwap; bool Load(CString fileName); bool ReadLE(CFile &in, long &l); Modified: trunk/OpenMPT/soundlib/Load_mt2.cpp =================================================================== --- trunk/OpenMPT/soundlib/Load_mt2.cpp 2011-03-19 13:56:03 UTC (rev 817) +++ trunk/OpenMPT/soundlib/Load_mt2.cpp 2011-03-19 14:00:23 UTC (rev 818) @@ -276,7 +276,7 @@ dwMemPos += 6; if (dwMemPos + wDataLen > dwMemLength) break; UINT nLines = pmp->wLines; - if ((iPat < MAX_PATTERNS) && (nLines > 0) && (nLines <= 256)) + if ((iPat < MAX_PATTERNS) && (nLines > 0) && (nLines <= MAX_PATTERN_ROWS)) { #ifdef MT2DEBUG Log("Pattern #%d @%04X: %d lines, %d bytes\n", iPat, dwMemPos-6, nLines, pmp->wDataLen); Modified: trunk/OpenMPT/soundlib/Snd_defs.h =================================================================== --- trunk/OpenMPT/soundlib/Snd_defs.h 2011-03-19 13:56:03 UTC (rev 817) +++ trunk/OpenMPT/soundlib/Snd_defs.h 2011-03-19 14:00:23 UTC (rev 818) @@ -76,12 +76,12 @@ #define MAX_ENVPOINTS 240 #define MIN_PERIOD 0x0020 #define MAX_PERIOD 0xFFFF -// String lengths +// String lengths (including trailing null char) #define MAX_SAMPLENAME 32 // also affects module name! #define MAX_SAMPLEFILENAME 22 #define MAX_PATTERNNAME 32 #define MAX_CHANNELNAME 20 -#define MAX_INFONAME 80 + #define MAX_EQ_BANDS 6 #define MAX_MIXPLUGINS 100 //50 // -> CODE#0006 -> DESC="misc quantity changes" -! BEHAVIOUR_CHANGE#0006 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |