LRESULT CToDoCtrlReminders::SendParentReminder(const TDCREMINDER& rem)
{
	if (m_bUseStickies && InitStickiesAPI(m_sStickiesPath))
	{
		CString sContent(rem.GetTaskTitle()), 
				sWhen(rem.FormatWhenString()), 
				sComments(rem.GetTaskComments()), 
				sDummy;

		if (!sComments.IsEmpty())
		{
			sContent += _T("\n\n");
			sContent += sComments;
		}

		if (!sWhen.IsEmpty())
		{
			sContent += _T("\n\n");
			sContent += sWhen;
		}
		
		if (CreateSticky(CEnString(IDS_STICKIES_TITLE), sDummy, sContent))
		{
			return 1L; // delete reminder as Stickies takes over
		}
	}
		
	// all else (fallback)
	ASSERT (m_pWndNotify);
	return m_pWndNotify->SendMessage(WM_TD_REMINDER, 0, (LPARAM)&rem);
}
Esempio n. 2
0
BOOL CStickiesWnd::Initialize(CWnd* pOwner, const CString& sStickiesPath)
{
	// free current wnd
	Release();

	// verify owner callback
	ASSERT_VALID(pOwner);

	if (!pOwner || !::IsWindow(*pOwner))
		return FALSE;

	if (!Create(NULL, NULL, WS_CHILD, CRect(0, 0, 0, 0), pOwner, (UINT)IDC_STATIC))
		return FALSE;

	return InitStickiesAPI(sStickiesPath);
}