/* ================ DialogDeclBrowser::OnToolTipNotify ================ */ BOOL DialogDeclBrowser::OnToolTipNotify( UINT id, NMHDR *pNMHDR, LRESULT *pResult ) { // need to handle both ANSI and UNICODE versions of the message TOOLTIPTEXTA* pTTTA = (TOOLTIPTEXTA*)pNMHDR; TOOLTIPTEXTW* pTTTW = (TOOLTIPTEXTW*)pNMHDR; if ( pNMHDR->hwndFrom == declTree.GetSafeHwnd() ) { CString toolTip; const idDecl *decl = GetDeclFromTreeItem( (HTREEITEM) pNMHDR->idFrom ); if ( !decl ) { return FALSE; } toolTip = va( "%s, line: %d", decl->GetFileName(), decl->GetLineNum() ); #ifndef _UNICODE if( pNMHDR->code == TTN_NEEDTEXTA ) { delete m_pchTip; m_pchTip = new TCHAR[toolTip.GetLength() + 2]; lstrcpyn( m_pchTip, toolTip, toolTip.GetLength() + 1 ); pTTTW->lpszText = (WCHAR*)m_pchTip; } else { delete m_pwchTip; m_pwchTip = new WCHAR[toolTip.GetLength() + 2]; _mbstowcsz( m_pwchTip, toolTip, toolTip.GetLength() + 1 ); pTTTW->lpszText = (WCHAR*)m_pwchTip; } #else if( pNMHDR->code == TTN_NEEDTEXTA ) { delete m_pchTip; m_pchTip = new TCHAR[toolTip.GetLength() + 2]; _wcstombsz( m_pchTip, toolTip, toolTip.GetLength() + 1 ); pTTTA->lpszText = (LPTSTR)m_pchTip; } else { delete m_pwchTip; m_pwchTip = new WCHAR[toolTip.GetLength() + 2]; lstrcpyn( m_pwchTip, toolTip, toolTip.GetLength() + 1 ); pTTTA->lpszText = (LPTSTR) m_pwchTip; } #endif return TRUE; } return DefaultOnToolTipNotify( toolTips, id, pNMHDR, pResult ); }
BOOL DialogAFConstraintUniversal::OnToolTipNotify( UINT id, NMHDR *pNMHDR, LRESULT *pResult ) { return DefaultOnToolTipNotify( toolTips, id, pNMHDR, pResult ); }
BOOL DialogAFConstraintBallAndSocket::OnToolTipNotify( UINT id, NMHDR *pNMHDR, LRESULT *pResult ) { return DefaultOnToolTipNotify( toolTips, id, pNMHDR, pResult ); }
/* ================ DialogAF::OnToolTipNotify ================ */ BOOL DialogAF::OnToolTipNotify( UINT id, NMHDR *pNMHDR, LRESULT *pResult ) { return DefaultOnToolTipNotify( toolTips, id, pNMHDR, pResult ); }