al hDCOrig As Long, ByVal sName As String)
   ' Increment the number of undo frames:
   If m_iUndoCount &lt; m_lFrameCount Then
      m_iUndoCount = m_iUndoCount + 1
   End If
   ' You cannot redo if you've just added an undo:
   m_iRedoCount = 0
   m_iCurrentIndex = m_iCurrentIndex + 1
   If m_iCurrentIndex &gt; m_lFrameCount Then
      m_iCurrentIndex = 1
   End If
   m_sNames(m_iCurrentIndex) = sName
   BitBlt m_cUndoDC.hdc, (m_iCurrentIndex - 1) * m_lIconSizeX, 0, m_lIconSizeX,
    m_lIconSizeY, hDCOrig