From: <sag...@us...> - 2013-03-12 02:33:36
|
Revision: 1564 http://sourceforge.net/p/modplug/code/1564 Author: saga-games Date: 2013-03-12 02:33:25 +0000 (Tue, 12 Mar 2013) Log Message: ----------- [Ref] Be even smarter and use static functions for less typing and less implicit parameters that we don't need anyway. Modified Paths: -------------- trunk/OpenMPT/mptrack/Ctrl_seq.cpp trunk/OpenMPT/mptrack/MainFrm.cpp trunk/OpenMPT/mptrack/PatternClipboard.cpp trunk/OpenMPT/mptrack/PatternClipboard.h trunk/OpenMPT/mptrack/TrackerSettings.cpp trunk/OpenMPT/mptrack/View_pat.cpp Modified: trunk/OpenMPT/mptrack/Ctrl_seq.cpp =================================================================== --- trunk/OpenMPT/mptrack/Ctrl_seq.cpp 2013-03-12 01:56:50 UTC (rev 1563) +++ trunk/OpenMPT/mptrack/Ctrl_seq.cpp 2013-03-12 02:33:25 UTC (rev 1564) @@ -585,8 +585,8 @@ { const OrdSelection ordsel = GetCurSel(false); BeginWaitCursor(); - PatternClipboard::Instance().Copy(*m_pModDoc->GetSoundFile(), ordsel.firstOrd, ordsel.lastOrd); - PatternClipboardDialog::Instance().UpdateList(); + PatternClipboard::Copy(*m_pModDoc->GetSoundFile(), ordsel.firstOrd, ordsel.lastOrd); + PatternClipboardDialog::UpdateList(); EndWaitCursor(); } Modified: trunk/OpenMPT/mptrack/MainFrm.cpp =================================================================== --- trunk/OpenMPT/mptrack/MainFrm.cpp 2013-03-12 01:56:50 UTC (rev 1563) +++ trunk/OpenMPT/mptrack/MainFrm.cpp 2013-03-12 02:33:25 UTC (rev 1564) @@ -1933,7 +1933,7 @@ void CMainFrame::OnClipboardManager() //----------------------------------- { - PatternClipboardDialog::Instance().Show(); + PatternClipboardDialog::Show(); } Modified: trunk/OpenMPT/mptrack/PatternClipboard.cpp =================================================================== --- trunk/OpenMPT/mptrack/PatternClipboard.cpp 2013-03-12 01:56:50 UTC (rev 1563) +++ trunk/OpenMPT/mptrack/PatternClipboard.cpp 2013-03-12 02:33:25 UTC (rev 1564) @@ -31,10 +31,10 @@ * Pattern data... */ -PatternClipboard PatternClipboard::patternClipboard; +PatternClipboard PatternClipboard::instance; -CString PatternClipboard::GetFileExtension(const char *ext) const -//--------------------------------------------------------------- +CString PatternClipboard::GetFileExtension(const char *ext) +//--------------------------------------------------------- { CString format(ext); if(format.GetLength() > 3) @@ -105,12 +105,12 @@ } data.Append("\r\n" + patternData); - if(activeClipboard < clipboards.size()) + if(instance.activeClipboard < instance.clipboards.size()) { // Copy to internal clipboard CString desc; desc.Format("%u Patterns (%u to %u)", last - first + 1, first, last); - clipboards[activeClipboard] = PatternClipboardElement(data, desc); + instance.clipboards[instance.activeClipboard] = PatternClipboardElement(data, desc); } return ToSystemClipboard(data); @@ -130,12 +130,12 @@ // Set up clipboard header. data = "ModPlug Tracker " + GetFileExtension(sndFile.GetModSpecifications().fileExtension) + "\r\n" + data; - if(activeClipboard < clipboards.size()) + if(instance.activeClipboard < instance.clipboards.size()) { // Copy to internal clipboard CString desc; desc.Format("%u rows, %u channels (pattern %u)", selection.GetNumRows(), selection.GetNumChannels(), pattern); - clipboards[activeClipboard] = PatternClipboardElement(data, desc); + instance.clipboards[instance.activeClipboard] = PatternClipboardElement(data, desc); } return ToSystemClipboard(data); @@ -288,7 +288,7 @@ if(!FromSystemClipboard(data) || !HandlePaste(sndFile, pastePos, mode, data, curOrder)) { // Fall back to internal clipboard if there's no valid pattern data in the system clipboard. - return Paste(sndFile, pastePos, mode, curOrder, activeClipboard); + return Paste(sndFile, pastePos, mode, curOrder, instance.activeClipboard); } return true; } @@ -298,11 +298,11 @@ bool PatternClipboard::Paste(CSoundFile &sndFile, ModCommandPos &pastePos, PasteModes mode, ORDERINDEX curOrder, clipindex_t internalClipboard) //--------------------------------------------------------------------------------------------------------------------------------------------- { - if(internalClipboard >= clipboards.size()) + if(internalClipboard >= instance.clipboards.size()) { return false; } - return HandlePaste(sndFile, pastePos, mode, clipboards[internalClipboard].content, curOrder); + return HandlePaste(sndFile, pastePos, mode, instance.clipboards[internalClipboard].content, curOrder); } @@ -788,8 +788,8 @@ bool PatternClipboard::SelectClipboard(clipindex_t which) //------------------------------------------------------- { - activeClipboard = which; - return ToSystemClipboard(clipboards[activeClipboard]); + instance.activeClipboard = which; + return ToSystemClipboard(instance.clipboards[instance.activeClipboard]); } @@ -797,13 +797,13 @@ bool PatternClipboard::CycleForward() //----------------------------------- { - activeClipboard++; - if(activeClipboard >= clipboards.size()) + instance.activeClipboard++; + if(instance.activeClipboard >= instance.clipboards.size()) { - activeClipboard = 0; + instance.activeClipboard = 0; } - return SelectClipboard(activeClipboard); + return SelectClipboard(instance.activeClipboard); } @@ -811,15 +811,15 @@ bool PatternClipboard::CycleBackward() //------------------------------------ { - if(activeClipboard == 0) + if(instance.activeClipboard == 0) { - activeClipboard = clipboards.size() - 1; + instance.activeClipboard = instance.clipboards.size() - 1; } else { - activeClipboard--; + instance.activeClipboard--; } - return SelectClipboard(activeClipboard); + return SelectClipboard(instance.activeClipboard); } @@ -827,8 +827,8 @@ void PatternClipboard::SetClipboardSize(clipindex_t maxEntries) //------------------------------------------------------------- { - clipboards.resize(maxEntries, PatternClipboardElement("", "unused")); - LimitMax(activeClipboard, maxEntries - 1); + instance.clipboards.resize(maxEntries, PatternClipboardElement("", "unused")); + LimitMax(instance.activeClipboard, maxEntries - 1); } @@ -894,7 +894,7 @@ ON_LBN_SELCHANGE(IDC_LIST1, OnSelectClipboard) END_MESSAGE_MAP() -PatternClipboardDialog PatternClipboardDialog::patternClipboardDialog(PatternClipboard::patternClipboard); +PatternClipboardDialog PatternClipboardDialog::instance; void PatternClipboardDialog::DoDataExchange(CDataExchange* pDX) //------------------------------------------------------------- @@ -904,8 +904,8 @@ } -PatternClipboardDialog::PatternClipboardDialog(PatternClipboard &c) : clipboards(c), isLocked(true), isCreated(false), posX(-1) -//----------------------------------------------------------------------------------------------------------------------------- +PatternClipboardDialog::PatternClipboardDialog() : isLocked(true), isCreated(false), posX(-1) +//------------------------------------------------------------------------------------------- { } @@ -913,18 +913,18 @@ void PatternClipboardDialog::Show() //--------------------------------- { - isLocked = true; - if(!isCreated) + instance.isLocked = true; + if(!instance.isCreated) { - Create(IDD_CLIPBOARD, CMainFrame::GetMainFrame()); - numClipboardsSpin.SetRange(0, int16_max); + instance.Create(IDD_CLIPBOARD, CMainFrame::GetMainFrame()); + instance.numClipboardsSpin.SetRange(0, int16_max); } - SetDlgItemInt(IDC_EDIT1, clipboards.GetClipboardSize(), FALSE); - isLocked = false; - isCreated = true; - UpdateList(); + instance.SetDlgItemInt(IDC_EDIT1, PatternClipboard::GetClipboardSize(), FALSE); + instance.isLocked = false; + instance.isCreated = true; + instance.UpdateList(); - SetWindowPos(nullptr, posX, posY, 0, 0, SWP_SHOWWINDOW | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER | (posX == -1 ? SWP_NOMOVE : 0)); + instance.SetWindowPos(nullptr, instance.posX, instance.posY, 0, 0, SWP_SHOWWINDOW | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER | (instance.posX == -1 ? SWP_NOMOVE : 0)); } @@ -935,7 +935,7 @@ { return; } - clipboards.SetClipboardSize(GetDlgItemInt(IDC_EDIT1, nullptr, FALSE)); + PatternClipboard::SetClipboardSize(GetDlgItemInt(IDC_EDIT1, nullptr, FALSE)); UpdateList(); } @@ -943,19 +943,19 @@ void PatternClipboardDialog::UpdateList() //--------------------------------------- { - if(isLocked) + if(instance.isLocked) { return; } - clipList.ResetContent(); + instance.clipList.ResetContent(); PatternClipboard::clipindex_t i = 0; - for(std::deque<PatternClipboardElement>::const_iterator clip = clipboards.clipboards.cbegin(); clip != clipboards.clipboards.cend(); clip++, i++) + for(std::deque<PatternClipboardElement>::const_iterator clip = PatternClipboard::instance.clipboards.cbegin(); clip != PatternClipboard::instance.clipboards.cend(); clip++, i++) { - const int item = clipList.AddString(clip->description); - clipList.SetItemDataPtr(item, reinterpret_cast<void *>(i)); - if(clipboards.activeClipboard == i) + const int item = instance.clipList.AddString(clip->description); + instance.clipList.SetItemDataPtr(item, reinterpret_cast<void *>(i)); + if(PatternClipboard::instance.activeClipboard == i) { - clipList.SetCurSel(item); + instance.clipList.SetCurSel(item); } } } @@ -969,7 +969,7 @@ return; } PatternClipboard::clipindex_t item = reinterpret_cast<PatternClipboard::clipindex_t>(clipList.GetItemDataPtr(clipList.GetCurSel())); - clipboards.SelectClipboard(item); + PatternClipboard::SelectClipboard(item); } Modified: trunk/OpenMPT/mptrack/PatternClipboard.h =================================================================== --- trunk/OpenMPT/mptrack/PatternClipboard.h 2013-03-12 01:56:50 UTC (rev 1563) +++ trunk/OpenMPT/mptrack/PatternClipboard.h 2013-03-12 02:33:25 UTC (rev 1564) @@ -56,7 +56,7 @@ protected: // The one and only pattern clipboard object. - static PatternClipboard patternClipboard; + static PatternClipboard instance; // Active internal clipboard index clipindex_t activeClipboard; @@ -65,43 +65,41 @@ public: - PatternClipboard() : activeClipboard(0) { SetClipboardSize(1); }; - // Copy a range of patterns to both the system clipboard and the internal clipboard. - bool Copy(CSoundFile &sndFile, ORDERINDEX first, ORDERINDEX last); + static bool Copy(CSoundFile &sndFile, ORDERINDEX first, ORDERINDEX last); // Copy a pattern selection to both the system clipboard and the internal clipboard. - bool Copy(CSoundFile &sndFile, PATTERNINDEX pattern, PatternRect selection); + static bool Copy(CSoundFile &sndFile, PATTERNINDEX pattern, PatternRect selection); // Try pasting a pattern selection from the system clipboard. - bool Paste(CSoundFile &sndFile, ModCommandPos &pastePos, PasteModes mode, ORDERINDEX curOrder); + static bool Paste(CSoundFile &sndFile, ModCommandPos &pastePos, PasteModes mode, ORDERINDEX curOrder); // Try pasting a pattern selection from an internal clipboard. - bool Paste(CSoundFile &sndFile, ModCommandPos &pastePos, PasteModes mode, ORDERINDEX curOrder, clipindex_t internalClipboard); + static bool Paste(CSoundFile &sndFile, ModCommandPos &pastePos, PasteModes mode, ORDERINDEX curOrder, clipindex_t internalClipboard); // Copy one of the internal clipboards to the system clipboard. - bool SelectClipboard(clipindex_t which); + static bool SelectClipboard(clipindex_t which); // Switch to the next internal clipboard. - bool CycleForward(); + static bool CycleForward(); // Switch to the previous internal clipboard. - bool CycleBackward(); + static bool CycleBackward(); // Set the maximum number of internal clipboards. - void SetClipboardSize(clipindex_t maxEntries); + static void SetClipboardSize(clipindex_t maxEntries); // Return the current number of clipboards. - clipindex_t GetClipboardSize() const { return clipboards.size(); }; + static clipindex_t GetClipboardSize() { return instance.clipboards.size(); }; - // Get the pattern clipboard singleton - static PatternClipboard &Instance() { return patternClipboard; } - protected: + PatternClipboard() : activeClipboard(0) { SetClipboardSize(1); }; + + static CString GetFileExtension(const char *ext); + // Create the clipboard text for a pattern selection - CString CreateClipboardString(CSoundFile &sndFile, PATTERNINDEX pattern, PatternRect selection); + static CString CreateClipboardString(CSoundFile &sndFile, PATTERNINDEX pattern, PatternRect selection); - CString GetFileExtension(const char *ext) const; // Parse clipboard string and perform the pasting operation. - bool HandlePaste(CSoundFile &sndFile, ModCommandPos &pastePos, PasteModes mode, const CString &data, ORDERINDEX curOrder); + static bool HandlePaste(CSoundFile &sndFile, ModCommandPos &pastePos, PasteModes mode, const CString &data, ORDERINDEX curOrder); // System-specific clipboard functions - bool ToSystemClipboard(const PatternClipboardElement &clipboard) { return ToSystemClipboard(clipboard.content); }; - bool ToSystemClipboard(const CString &data); - bool FromSystemClipboard(CString &data); + static bool ToSystemClipboard(const PatternClipboardElement &clipboard) { return ToSystemClipboard(clipboard.content); }; + static bool ToSystemClipboard(const CString &data); + static bool FromSystemClipboard(CString &data); }; @@ -112,9 +110,8 @@ protected: // The one and only pattern clipboard dialog object - static PatternClipboardDialog patternClipboardDialog; + static PatternClipboardDialog instance; - PatternClipboard &clipboards; CSpinButtonCtrl numClipboardsSpin; CListBox clipList; int posX, posY; @@ -122,16 +119,14 @@ public: - PatternClipboardDialog(PatternClipboard &c); - void UpdateList(); - void Show(); - void Toggle() { if(isCreated) OnCancel(); else Show(); } + static void UpdateList(); + static void Show(); + static void Toggle() { if(instance.isCreated) instance.OnCancel(); else instance.Show(); } - // Get the pattern clipboard dialog singleton - static PatternClipboardDialog &Instance() { return patternClipboardDialog; } - protected: + PatternClipboardDialog(); + virtual void DoDataExchange(CDataExchange* pDX); DECLARE_MESSAGE_MAP(); Modified: trunk/OpenMPT/mptrack/TrackerSettings.cpp =================================================================== --- trunk/OpenMPT/mptrack/TrackerSettings.cpp 2013-03-12 01:56:50 UTC (rev 1563) +++ trunk/OpenMPT/mptrack/TrackerSettings.cpp 2013-03-12 02:33:25 UTC (rev 1564) @@ -395,7 +395,7 @@ m_nSampleUndoMaxBuffer = CMainFrame::GetPrivateProfileLong("Sample Editor" , "UndoBufferSize", m_nSampleUndoMaxBuffer >> 20, iniFile); m_nSampleUndoMaxBuffer = max(1, m_nSampleUndoMaxBuffer) << 20; - PatternClipboard::Instance().SetClipboardSize(GetPrivateProfileInt("Pattern Editor", "NumClipboards", PatternClipboard::Instance().GetClipboardSize(), iniFile)); + PatternClipboard::SetClipboardSize(GetPrivateProfileInt("Pattern Editor", "NumClipboards", PatternClipboard::GetClipboardSize(), iniFile)); // Default Paths TCHAR szPath[_MAX_PATH] = ""; @@ -754,7 +754,7 @@ CMainFrame::WritePrivateProfileDWord("Pattern Editor", "AutoChordWaitTime", gnAutoChordWaitTime, iniFile); CMainFrame::WritePrivateProfileDWord("Pattern Editor", "RecordQuantize", recordQuantizeRows, iniFile); - CMainFrame::WritePrivateProfileDWord("Pattern Editor", "NumClipboards", PatternClipboard::Instance().GetClipboardSize(), iniFile); + CMainFrame::WritePrivateProfileDWord("Pattern Editor", "NumClipboards", PatternClipboard::GetClipboardSize(), iniFile); // Write default paths const bool bConvertPaths = theApp.IsPortableMode(); Modified: trunk/OpenMPT/mptrack/View_pat.cpp =================================================================== --- trunk/OpenMPT/mptrack/View_pat.cpp 2013-03-12 01:56:50 UTC (rev 1563) +++ trunk/OpenMPT/mptrack/View_pat.cpp 2013-03-12 02:33:25 UTC (rev 1564) @@ -4366,15 +4366,15 @@ // Clipboard Manager case kcToggleClipboardManager: - PatternClipboardDialog::Instance().Toggle(); + PatternClipboardDialog::Toggle(); break; case kcClipboardPrev: - PatternClipboard::Instance().CycleBackward(); - PatternClipboardDialog::Instance().UpdateList(); + PatternClipboard::CycleBackward(); + PatternClipboardDialog::UpdateList(); break; case kcClipboardNext: - PatternClipboard::Instance().CycleForward(); - PatternClipboardDialog::Instance().UpdateList(); + PatternClipboard::CycleForward(); + PatternClipboardDialog::UpdateList(); break; } @@ -6664,9 +6664,9 @@ //--------------------------------------------------------------------------------- { BeginWaitCursor(); - bool result = PatternClipboard::Instance().Copy(*GetSoundFile(), nPattern, selection); + bool result = PatternClipboard::Copy(*GetSoundFile(), nPattern, selection); EndWaitCursor(); - PatternClipboardDialog::Instance().UpdateList(); + PatternClipboardDialog::UpdateList(); return result; } @@ -6680,7 +6680,7 @@ pos.pattern = nPattern; pos.row = pastePos.GetRow(); pos.channel = pastePos.GetChannel(); - bool result = PatternClipboard::Instance().Paste(*GetSoundFile(), pos, mode, SendCtrlMessage(CTRLMSG_GETCURRENTORDER)); + bool result = PatternClipboard::Paste(*GetSoundFile(), pos, mode, SendCtrlMessage(CTRLMSG_GETCURRENTORDER)); EndWaitCursor(); if(pos.pattern != nPattern) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |