You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
198 lines
8.2 KiB
C++
198 lines
8.2 KiB
C++
// XTPCalendarWeekViewEvent.h: interface for the CXTPCalendarWeekViewEvent class.
|
|
//
|
|
// This file is a part of the XTREME CALENDAR MFC class library.
|
|
// (c)1998-2012 Codejock Software, All Rights Reserved.
|
|
//
|
|
// THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE
|
|
// RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN
|
|
// CONSENT OF CODEJOCK SOFTWARE.
|
|
//
|
|
// THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED
|
|
// IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO
|
|
// YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A
|
|
// SINGLE COMPUTER.
|
|
//
|
|
// CONTACT INFORMATION:
|
|
// support@codejock.com
|
|
// http://www.codejock.com
|
|
//
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
//{{AFX_CODEJOCK_PRIVATE
|
|
#if !defined(__XTPCALENDARWEEKVIEWEVENT_H_)
|
|
#define __XTPCALENDARWEEKVIEWEVENT_H_
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
//}}AFX_CODEJOCK_PRIVATE
|
|
|
|
class CXTPCalendarControl;
|
|
class CXTPCalendarWeekView;
|
|
class CXTPCalendarWeekViewDay;
|
|
class CXTPCalendarWeekViewGroup;
|
|
class CXTPCalendarEvent;
|
|
struct XTP_CALENDAR_HITTESTINFO;
|
|
|
|
//===========================================================================
|
|
// Summary:
|
|
// This class represents an event view portion of the CalendarWeekViewDay.
|
|
// Remarks:
|
|
// It represents a specific view of the event associated data according
|
|
// to various view types and display settings and provides basic
|
|
// functionality on this data using user input through the keyboard and mouse.
|
|
//
|
|
// CXTPCalendarWeekViewEvent is based on CXTPCalendarViewEventT template
|
|
// class. CXTPCalendarWeekViewEvent inherits basic behavior from CXTPCalendarViewEventT.
|
|
// Furthermore, CXTPCalendarWeekViewEvent overlaps some functionality in
|
|
// CXTPCalendarViewEventT and also adds some new functionality for its
|
|
// own behavior and look.
|
|
//
|
|
// See Also: CXTPCalendarViewEvent, CXTPCalendarViewEventT
|
|
//===========================================================================
|
|
class _XTP_EXT_CLASS CXTPCalendarWeekViewEvent : public CXTPCalendarViewEventT<CXTPCalendarWeekViewGroup>
|
|
{
|
|
//{{AFX_CODEJOCK_PRIVATE
|
|
DECLARE_DYNAMIC(CXTPCalendarWeekViewEvent)
|
|
//}}AFX_CODEJOCK_PRIVATE
|
|
public:
|
|
|
|
//------------------------------------------------------------------------
|
|
// Summary:
|
|
// Base class type definition.
|
|
//------------------------------------------------------------------------
|
|
typedef CXTPCalendarViewEventT<CXTPCalendarWeekViewGroup> TBase;
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Default object constructor.
|
|
// Parameters:
|
|
// pViewGroup - A pointer to a CXTPCalendarWeekViewGroup object.
|
|
// pEvent - A pointer to a CXTPCalendarEvent.
|
|
// See Also: ~CXTPCalendarWeekViewDay()
|
|
//-----------------------------------------------------------------------
|
|
CXTPCalendarWeekViewEvent(CXTPCalendarEvent* pEvent, CXTPCalendarWeekViewGroup* pViewGroup);
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Default class destructor.
|
|
//-----------------------------------------------------------------------
|
|
virtual ~CXTPCalendarWeekViewEvent();
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// This member function is used to fill a XTP_CALENDAR_HITTESTINFO structure.
|
|
// Parameters:
|
|
// point - A CPoint object that contains the point to test.
|
|
// pInfo - A pointer to a XTP_CALENDAR_HITTESTINFO struct.
|
|
// Returns:
|
|
// TRUE if the test is successful, FALSE else.
|
|
// Remarks:
|
|
// Call this member function to gather hit test information from
|
|
// the day view.
|
|
// See Also: XTP_CALENDAR_HITTESTINFO
|
|
//-----------------------------------------------------------------------
|
|
virtual BOOL HitTestEx(CPoint point, XTP_CALENDAR_HITTESTINFO* pInfo) const;
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// This member function is used to adjust rectangles used to draw
|
|
// event view icons.
|
|
// Parameters:
|
|
// rc - A CRect that contains the rectangle coordinates used to
|
|
// draw the view.
|
|
// Remarks:
|
|
// Call this member function to calculate rectangles to draw event
|
|
// view icons. Depends on what glyphs should be drawn based on the
|
|
// event view rect.
|
|
//-----------------------------------------------------------------------
|
|
virtual int CalcIconsRect(CRect rc);
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// This member function is used to adjust the view's layout
|
|
// depending on the provided rectangle and also calls AdjustLayout()
|
|
// for all sub-items.
|
|
// Parameters:
|
|
// pDC - A pointer to a valid device context.
|
|
// rcEventMax - An int that contains the rectangle coordinates
|
|
// used to draw the view.
|
|
// nEventPlaceNumber - An int that contains the sequential place number.
|
|
// Remarks:
|
|
// Call Populate(COleDateTime dtDayDate) prior calling AdjustLayout().
|
|
//-----------------------------------------------------------------------
|
|
virtual void AdjustLayout(CDC* pDC, const CRect& rcEventMax, int nEventPlaceNumber);
|
|
virtual void AdjustLayout2(CDC* pDC, const CRect& rcEventMax, int nEventPlaceNumber); //<COMBINE AdjustLayout>
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// This member function is used to draw the view content using the
|
|
// specified device context.
|
|
// Parameters:
|
|
// pDC - A pointer to a valid device context.
|
|
// Remarks:
|
|
// Call AdjustLayout() before calling Draw().
|
|
// See Also: AdjustLayout(CRect rcDay)
|
|
//-----------------------------------------------------------------------
|
|
virtual void Draw(CDC* pDC);
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Call this member function to determine if the "view visible" flag is set.
|
|
// Returns:
|
|
// A BOOL. TRUE if the "view visible" is set. FALSE otherwise.
|
|
//-----------------------------------------------------------------------
|
|
virtual BOOL IsVisible() const;
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Call this member function to get the day view rectangle coordinates.
|
|
// Returns:
|
|
// A CRect object with the day rectangle coordinates.
|
|
// See Also: SetDayRect(CRect rcDay)
|
|
//-----------------------------------------------------------------------
|
|
CRect GetViewRect();
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Call this member function to determine the value of the "show end time" flag.
|
|
// Returns:
|
|
// A BOOL. TRUE if "show end time" flag is set. FALSE otherwise.
|
|
//-----------------------------------------------------------------------
|
|
BOOL IsShowEndTime() const;
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Call this member function to determine the value of the "show time as clock" flag.
|
|
// Returns:
|
|
// A BOOL. TRUE if the "show time as clock" flag is set. FALSE otherwise.
|
|
//-----------------------------------------------------------------------
|
|
BOOL IsTimeAsClock() const;
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// This member function is used to perform additional adjustments.
|
|
// Remarks:
|
|
// Call this member function to perform additional adjustments after
|
|
// all adjustment activities are completed.
|
|
//-----------------------------------------------------------------------
|
|
virtual void OnPostAdjustLayout();
|
|
|
|
protected:
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Call this member function to determine the editor window font.
|
|
// Returns:
|
|
// A pointer to a CFont object that contains the editor window font.
|
|
//-----------------------------------------------------------------------
|
|
virtual CFont* GetSubjectEditorFont() const;
|
|
};
|
|
////////////////////////////////////////////////////////////////////////////
|
|
|
|
AFX_INLINE CRect CXTPCalendarWeekViewEvent::GetViewRect() {
|
|
return m_rcEvent;
|
|
}
|
|
|
|
#endif // !defined(__XTPCALENDARWEEKVIEWEVENT_H_)
|