examples/AppFramework/UIControls/ControlFramework/inc/ControlFrameworkView.h

00001 // Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
00002 // All rights reserved.
00003 // This component and the accompanying materials are made available
00004 // under the terms of "Eclipse Public License v1.0"
00005 // which accompanies this distribution, and is available
00006 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
00007 //
00008 // Initial Contributors:
00009 // Nokia Corporation - initial contribution.
00010 //
00011 // Contributors:
00012 //
00013 // Description:
00014 // ControlFramework_View.h
00015 //
00016 
00017 #ifndef __CONTROLFRAMEWORKVIEW_H
00018 #define __CONTROLFRAMEWORKVIEW_H
00019 
00020 #include <coecntrl.h>
00021 #include <coeview.h>
00022 #include <babitflags.h> 
00023 
00024 class CControlFrameworkAppUi;
00025 
00026 //View class
00027 class CControlFrameworkView : public CCoeControl, public MCoeView
00028         {
00029 public:
00030         static CControlFrameworkView* NewLC(CControlFrameworkAppUi& iAppUi);
00031         ~CControlFrameworkView();
00032         
00033         TBool IsBold() const;
00034         TBool IsItalic() const;
00035         TBool IsUnderline() const;
00036         TBool IsStrikethrough() const;
00037         void ToggleBold();
00038         void ToggleItalic();
00039         void ToggleUnderline();
00040         void ToggleStrikethrough();
00041 
00042         // from MCoeView
00043         TVwsViewId ViewId() const;
00044     
00045 protected:
00046         CControlFrameworkView(CControlFrameworkAppUi& iAppUi);
00047         void DrawBorder(TRect& aRect) const;
00048         void DrawMessage(const TRect& aRect) const;
00049 
00050         // from MCoeView
00051         void ViewConstructL();
00052         void ViewActivatedL(const TVwsViewId &aPrevViewId, TUid aCustomMessageId, const TDesC8 &aCustomMessage);
00053         void ViewDeactivated();
00054     
00055         // from CCoeControl
00056         TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
00057         void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00058         void Draw( const TRect& /*aRect*/ ) const;
00059     
00060 private:
00061         CControlFrameworkAppUi& iAppUi;
00062         TBidiText* iBidiText;
00063 
00064         RRunInfoArray iRunInfoArray;
00065         TCoeFont iFont;
00066     
00067         enum TCommandBools
00068                 {
00069                 EBold,
00070                 EItalic,
00071                 EUnderline,
00072                 EStrikethrough
00073                 };
00074         TBitFlags iFontFlags;
00075         };
00076 
00077 
00078 
00079 #endif // __CONTROLFRAMEWORKVIEW_H
00080 

Generated by  doxygen 1.6.2