DirectPrint/DirectPrintApp/ui/inc/directprintpreviewview.h
author Steven Cao <steven.1.cao@nokia.com>
Tue, 11 May 2010 14:10:02 +0800
changeset 19 2275db202402
parent 11 613a5ff70823
permissions -rw-r--r--
Pickup K3's code
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
19
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
     1
/*
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
     2
* Copyright (c) 2010 Kanrikogaku Kenkyusho, Ltd.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
     3
* All rights reserved.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
     4
* This component and the accompanying materials are made available
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
     6
* which accompanies this distribution, and is available
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
     8
*
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
     9
* Initial Contributors:
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    10
* Kanrikogaku Kenkyusho, Ltd. - Initial contribution
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    11
*
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    12
* Contributors:
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    13
*
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    14
* Description:
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    15
* {Description of the file}
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    16
*
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    17
*/
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    18
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    19
// Protection against nested includes
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    20
#ifndef __PREVIEWVIEW_H__
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    21
#define __PREVIEWVIEW_H__
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    22
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    23
// System includes
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    24
#include <aknview.h>
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    25
#include <akntoolbarobserver.h>
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    26
#include <prninf.h>
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    27
#include <PRNPREV.H>
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    28
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    29
// User includes
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    30
#include "DirectPrintViewBase.h"
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    31
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    32
// Forward declarations
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    33
class CDirectPrintPreviewControl;
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    34
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    35
// Class declaration
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    36
/**
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    37
 *  Preview view class
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    38
 *  more_complete_description
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    39
 */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    40
class CDirectPrintPreviewView : public CDirectPrintViewBase
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    41
                              , public MAknToolbarObserver
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    42
                              , public MPrintProcessObserver
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    43
	{
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    44
public:
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    45
	/** Constructors */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    46
	static CDirectPrintPreviewView* NewL();
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    47
	static CDirectPrintPreviewView* NewLC();
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    48
	/** Destructor */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    49
	~CDirectPrintPreviewView();
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    50
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    51
public:
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    52
	/**
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    53
	 * From CAknView.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    54
	 * Handles user commands.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    55
	 *
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    56
	 * @param aCommand The id of commands.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    57
	 */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    58
	void HandleCommandL(TInt aCommand);
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    59
	/**
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    60
	 * From CAknView.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    61
	 * Get the id of view.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    62
	 *
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    63
	 * @return The id of view.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    64
	 */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    65
	TUid Id() const;
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    66
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    67
protected: // from CAknView
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    68
	void DoActivateL(const TVwsViewId& aPrevViewId, TUid aCustomMessageId, const TDesC8& aCustomMessage);
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    69
	void DoDeactivate();
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    70
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    71
public:
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    72
	/**
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    73
	 * From MAknToolbarObserver.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    74
	 * Handles user commands.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    75
	 *
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    76
	 * @param aCommand The id of commands.
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    77
	 */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    78
	void OfferToolbarEventL(TInt aCommand);
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    79
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    80
private:  // from MPrintProcessObserver 
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    81
	void NotifyPrintStarted(TPrintParameters aPrintParams);
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    82
	void NotifyPrintEnded(TInt anErrorCode);
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    83
	void NotifyBandPrinted(TInt aPercentageOfPagePrinted, TInt aCurrentPageNum, TInt aCurrentCopyNum);
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    84
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    85
private:
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    86
	CDirectPrintPreviewView();
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    87
	void ConstructL();
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    88
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    89
	void ChangeVisibleState();
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    90
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    91
private:
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    92
	/** Pointer to preview control. */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    93
	CDirectPrintPreviewControl* iPrevCtrl;
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    94
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    95
	/** Parameter. */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    96
	TPrintParameters iParameters;
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    97
	/** Preview format. */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    98
	TPrintPreviewFormat iPrintPreviewFormat;
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
    99
	/** Number of pages in document. */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   100
	TInt iNumPagesInDoc;
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   101
	/** Display flag. */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   102
	TInt iFirstPageToDisplay;
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   103
	/** Number of pages. */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   104
	TInt iNumPagesToView;
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   105
	/** Number of bands. */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   106
	TInt iNumBands;
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   107
	/** Margin state. */
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   108
	CPrintPreviewImage::TMarginState iMarginState;
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   109
	};
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   110
2275db202402 Pickup K3's code
Steven Cao <steven.1.cao@nokia.com>
parents: 11
diff changeset
   111
#endif // __PREVIEWVIEW_H__