|
// Image_Tip.cpp : Implementation of CImage_Tip
#include "stdafx.h"
#include "ImageTip.h"
#include "Image_Tip.h"
#include "GraphicTip.h"
/////////////////////////////////////////////////////////////////////////////
// CImage_Tip
HRESULT CImage_Tip::Load ( LPCOLESTR wszFilename, DWORD dwMode )
{
m_FileName = wszFilename;
// wchar_t buf [512];
// wcscpy (buf, L"CImage_Tip::Load ( '");
// wcscat (buf, wszFilename);
// wcscat (buf, L"' )\n");
// OutputDebugStringW (buf);
return S_OK;
}
HRESULT CImage_Tip::GetInfoTip ( DWORD dwFlags, LPWSTR* ppwszTip )
{
static std::wstring m_FileNameLast;
// We're going to create our own tooltipesque window, but with a the CPreviewBitmap in it...
// wchar_t buf [512];
// wcscpy (buf, L"CImage_Tip::GetInfoTip (). m_Filename = '");
// wcscat (buf, m_FileName.c_str ());
// wcscat (buf, L"' m_FileNameLast = '");
// wcscat (buf, m_FileNameLast.c_str ());
// wcscat (buf, L"'\n");
// OutputDebugStringW (buf);
// Return a blank tooltip.
IMalloc *pMalloc;
if ( FAILED( SHGetMalloc ( &pMalloc )))
return E_FAIL;
*ppwszTip = (LPWSTR) pMalloc->Alloc ( (1) * sizeof(wchar_t) );
if ( NULL == *ppwszTip )
{
pMalloc->Release();
return E_OUTOFMEMORY;
}
(*ppwszTip) [0] = 0;
pMalloc->Release();
// Make sure we haven't recently shown this item, otherwise Explorer will keep on trying...
if (m_FileName.compare (m_FileNameLast))
CGraphicTip::ShowTip (m_FileName); // This is all that's needed here!
m_FileNameLast.erase ();
m_FileNameLast.append (m_FileName);
return S_OK;
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
I have now moved to Sweden for love, and recently married a lovely Swede.
-----------------
I started programming on BBC micros (6502) when I was six and never quite stopped even while I was supposed to be studying physics and uni.
I've been working for ~13 years writing software for machine control and data analysis. I now work on financial transaction transformation software, for a Software company in Gamlastan, Stockholm.
Look at my articles to see my excellent coding skills. I'm modest too!