- // delete the element from the array (could use memmove() too...)
- delete [] m_fileHistory[i];
-
- int j;
- for ( j = i; j < m_fileHistoryN - 1; j++ )
- {
- m_fileHistory[j] = m_fileHistory[j + 1];
- }
-
- // shuffle filenames up
- wxString buf;
- for ( j = i; j < m_fileHistoryN - 1; j++ )
- {
- buf.Printf(s_MRUEntryFormat, j + 1, m_fileHistory[j]);
- menu->SetLabel(wxID_FILE1 + j, buf);
- }
-
- // to be removed as soon as wxMenu::Delete() is implemented
-#if 1
- menu->SetLabel(wxID_FILE1 + m_fileHistoryN - 1, wxT(""));
-#endif
-
- node = node->Next();
- }
- m_fileHistoryN--;
-}
-
-wxString wxFileHistory::GetHistoryFile(int i) const
-{
- if (i < m_fileHistoryN)
- return wxString(m_fileHistory[i]);
- else
- return wxString("");
-}
-
-void wxFileHistory::UseMenu(wxMenu *menu)
-{
- if (!m_fileMenus.Member(menu))
- m_fileMenus.Append(menu);
-}
-
-void wxFileHistory::RemoveMenu(wxMenu *menu)
-{
- m_fileMenus.DeleteObject(menu);
-}
-
-#if wxUSE_CONFIG
-void wxFileHistory::Load(wxConfigBase& config)
-{
- m_fileHistoryN = 0;
- wxString buf;
- buf.Printf(wxT("file%d"), m_fileHistoryN+1);
- wxString historyFile;
- while ((m_fileHistoryN <= m_fileMaxFiles) && config.Read(buf, &historyFile) && (historyFile != wxT("")))
- {
- m_fileHistory[m_fileHistoryN] = copystring((const wxChar*) historyFile);
- m_fileHistoryN ++;
- buf.Printf(wxT("file%d"), m_fileHistoryN+1);
- historyFile = "";
- }
- AddFilesToMenu();
-}
-
-void wxFileHistory::Save(wxConfigBase& config)
-{
- int i;
- for (i = 0; i < m_fileHistoryN; i++)