How to highlight modified files with an asterisk (*) like as it is done in Visual Studio?

Professional User Interface Suite, Copyright FOSS Software Inc. Help Published with Permission.

Create a class derived from CExtTabMdiWnd and implement the OnTabWndQueryItemText() virtual method like as follows:

LPCTSTR CMyCustomTabMdiWnd::OnTabWndQueryItemText(          
    const CExtTabWnd::TAB_ITEM_INFO * pTii              
    ) const                                 
{                                       
    ASSERT_VALID( pTii );                         
HWND hWndMdiChild = (HWND)pTii->LParamGet();            
    if( hWndMdiChild == NULL                      
      || (! ::IsWindow(hWndMdiChild) )                
      )                                 
      return _T("");                          
CWnd * pWnd = CWnd::FromHandle( hWndMdiChild );           
    ASSERT( pWnd != NULL );                       
    ASSERT_KINDOF( CMDIChildWnd, pWnd );                
static CString sText( _T("") );                     
    CDocument * pActiveDoc =                      
      ((CMDIChildWnd *)pWnd)->                    
        GetActiveDocument();                    
    if( pActiveDoc != NULL )                      
    {                                     
      sText = pActiveDoc->GetTitle();               
      if( pActiveDoc->IsModified() )                
        sText += _T(" *");                      
    }                                     
    if( sText.IsEmpty() )                         
      pWnd->GetWindowText(sText);                   
    return (sText.IsEmpty()) ? _T("") : LPCTSTR(sText);       
}