--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/calendarui/views/inc/calenweeklistboxdata.h Tue Feb 02 10:12:19 2010 +0200
@@ -0,0 +1,167 @@
+/*
+* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Drawing WeekView Listbox data.
+ * Event bar and Event icon, event indicator
+ *
+*/
+
+
+
+#ifndef CALENWEEKLBDATA_H
+#define CALENWEEKLBDATA_H
+
+// INCLUDES
+#include <eikfrlbd.h>
+
+// FORWARD DECLARATIONS
+class TCalenWeekHour;
+class MAknsSkinInstance;
+class MAknsControlContext;
+
+// CLASS DECLARATION
+
+/**
+ * Drawing WeekView Listbox data.
+ * Event bar and Event icon, event indicator
+ */
+NONSHARABLE_CLASS( CCalenWeekLBData )
+ : public CFormattedCellListBoxData
+ {
+public: // Constructors and destructor
+ /**
+ * Destructor.
+ */
+ virtual ~CCalenWeekLBData();
+
+ /**
+ * Two-phased constructor.
+ */
+ static CCalenWeekLBData* NewL();
+
+public: // New function
+ /**
+ * Set current sub cell position.
+ * @param aCurrentSubCellRect Rect of the cell.
+ * @param aCurrentItemPos Position of the cell.
+ */
+ void CurrentSubCellPos( TRect& aCurrentSubCellRect, const TPoint& aCurrentItemPos );
+
+ /**
+ * Set highlight of row.
+ * @param aHilightedSubCell cell to highlight
+ */
+ void SetHilightedSubCell(TInt aHilightedSubCell);
+ /**
+ * Return highlight of row.
+ * @return highlighted cell
+ */
+ TInt HilightedSubCell();
+
+ /**
+ * Set count of row
+ * @param aCount count of row
+ */
+ void SetCelCount(TInt aCount);
+
+ /**
+ * Set layout variant index
+ * @param aLayout used layout
+ */
+ void SetVariantIndex(TInt aLayout);
+
+ /**
+ * Return count of row
+ * @return count of row
+ */
+ TInt CellCount() const;
+
+ /**
+ * Drawing listbox item and highlight
+ * @param aProperties Item margin, etc...
+ * @param aGc Graphic context
+ * @param aText Drawing text
+ * @param aItemRect item rect
+ * @param aColors Drawing colors
+ */
+ void Draw(TListItemProperties aProperties, CWindowGc& aGc,
+ const TDesC* aText, const TRect& aRect, TBool aHighlight,
+ const TColors& aColors) const;
+
+private: // Constructors and destructor
+ /**
+ * C++ Constructor.
+ */
+ CCalenWeekLBData();
+
+private: // New function
+ /**
+ * Drawing listbox item
+ * @param aProperties Item margin, etc...
+ * @param aGc Graphic context
+ * @param aText Drawing text
+ * @param aItemRect item rect
+ * @param aColors Drawing colors
+ */
+ void DrawFormatted(TListItemProperties aProperties, CWindowGc& aGc,
+ const TDesC* aText, const TRect& aItemRect,
+ const TColors& aColors, TBool aHighlight) const;
+ /**
+ * Drawing cell text
+ * @param aProperties Item margin, etc...
+ * @param aSubCell Row index
+ * @param aGc Graphic context
+ * @param aText Drawing cell text
+ * @param aCellRect Cell rect
+ * @param aTextRect Text rect
+ */
+ void DrawCellText(TListItemProperties aProperties, TInt aSubCell,
+ CWindowGc& aGc, const TPtrC aText, const TRect& aCellRect,
+ const TRect& aTextRect, const TColors& aColors) const;
+ /**
+ * Drawing meeting note bar
+ * @param aGc Graphic context
+ * @param aHourData Hour schedule
+ * @param aCellRect Cell rect
+ */
+ void DrawDurationBar(CWindowGc& aGc,
+ const TCalenWeekHour& aHourData,
+ const TRect& aCellRect) const;
+
+ /**
+ * Drawing non-timed note type icon
+ * @param aGc Graphic context
+ * @param aHourData Hour schedule
+ * @param aCellRect Cell rect
+ */
+ void DrawIcon(CWindowGc& aGc,
+ const TCalenWeekHour& aHourData,
+ const TRect& aCellRect) const;
+
+ TBool DrawHighlight(const TRect aItemRect, CWindowGc& aGc, const TBool aDrawSkinned) const;
+
+ /**
+ * Initialise Pattern at the construction period
+ */
+ void InitialisePatternL();
+private: // data
+ TInt iLayoutVariant;
+ TInt iHilightedSubCell;
+ TInt iCellCount;
+ CFbsBitmap* iGradientBitmap;
+ };
+
+#endif // CALENWEEKLBDATA_H
+
+
+// End of File