imageeditor/plugins/DrawPlugin/src/imageeditordrawcontrol.cpp
author qifeima <>
Mon, 21 Jun 2010 13:52:33 +0800
changeset 10 e7871f3699e6
parent 9 a5c0fe6456b2
permissions -rw-r--r--
*m:Change the icons of doodle functionality
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
     1
/*
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
     2
 * Copyright (c) 2010 Ixonos Plc.
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
     3
 * All rights reserved.
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
     4
 * This component and the accompanying materials are made available
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
     5
 * under the terms of the "Eclipse Public License v1.0"
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
     6
 * which accompanies this distribution, and is available
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
     8
 *
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
     9
 * Initial Contributors:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    10
 * Nokia Corporation - Initial contribution
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    11
 *
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    12
 * Contributors:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    13
 * Ixonos Plc
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    14
 *
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    15
 * Description: 
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    16
 * Image Editor plugin control class.
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    17
 *
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    18
 */
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    19
//  INCLUDES
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    20
#include "imageeditordrawcontrol.h"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    21
#include "draw.hrh"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    22
#include "ImageEditorUI.hrh"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    23
#include "ImageEditorPluginBase.hrh"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    24
#include "PluginInfo.h"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    25
#include "JpTimer.h"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    26
#include "ImageEditorUids.hrh"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    27
#include "ImageEditorUiDefs.h"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    28
#include "SystemParameters.h"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    29
#include "drawpath.h"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    30
#include "selectionpopup.h"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    31
#include "iepb.h" 
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    32
// debug log
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    33
#include "imageeditordebugutils.h"
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    34
#include <fbs.h>
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    35
#include <badesca.h>
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    36
#include <gdi.h>
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    37
#include <eikenv.h>
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    38
#include <bitdev.h>
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    39
#include <aknview.h>
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    40
#include <aknutils.h>
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    41
#include <ImageEditorUI.mbg>
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    42
#include <AknInfoPopupNoteController.h> 
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    43
#include <draw.rsg> 
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    44
#include <bautils.h> 
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    45
#include <ConeResLoader.h> 
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    46
#include <gulalign.h>
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    47
#include <csxhelp/sie.hlp.hrh>
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    48
#include <Icons_doodle.mbg>
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    49
#include "CImageLabel.h"
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    50
#include <aknnotewrappers.h>
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    51
// Log file
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    52
_LIT(KDrawPluginLogFile,"drawplugin.log");
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    53
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    54
//  CONSTANTS
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    55
const TInt KWait = 1;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    56
const TInt KMainTextIndex = 0;
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
    57
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    58
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    59
// NewL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    60
// ---------------------------------------------------------------------------
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
    61
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    62
CImageEditorDrawControl* CImageEditorDrawControl::NewL(const TRect& aRect,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    63
		CCoeControl* aParent, RPointerArray<CDrawPath>& aPaths, TRgb& aRgb,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    64
		TSize& aSize, TBool &aDisplayTool)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    65
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
    66
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::NewL()");
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    67
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    68
	CImageEditorDrawControl * self = new (ELeave) CImageEditorDrawControl(
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    69
			aPaths, aRgb, aSize, aDisplayTool);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    70
	CleanupStack::PushL(self);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    71
	self->ConstructL(aRect, aParent);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    72
	CleanupStack::Pop(); // self
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    73
	return self;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    74
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    75
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    76
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    77
// CImageEditorDrawControl
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    78
// ---------------------------------------------------------------------------
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    79
CImageEditorDrawControl::CImageEditorDrawControl(
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    80
		RPointerArray<CDrawPath>& aPaths, TRgb& aRgb, TSize& aSize,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    81
		TBool& aDisplayTool) :
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    82
	iTickCount(0), iX(0), iY(0), iNaviStepMultiplier(
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    83
			KDefaultSmallNavigationStepMultiplier), iDisplayingOkOptionsMenu(
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    84
			EFalse), iReadyToRender(EFalse), iResLoader(*ControlEnv()), iPaths(
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    85
			aPaths), iRgb(aRgb), iSize(aSize), iDisplayTool(aDisplayTool)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    86
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    87
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    88
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    89
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    90
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    91
// ~CImageEditorDrawControl()
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    92
// ---------------------------------------------------------------------------
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
    93
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
    94
CImageEditorDrawControl::~CImageEditorDrawControl()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    95
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
    96
		LOG(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
    97
				"CImageEditorDrawControl::~CImageEditorDrawControl()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    98
	delete iCustomComponet;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
    99
	delete iTimer;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   100
	delete iIndicator;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   101
	delete iIndicatorMask;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   102
	delete iPopupController;
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   103
	delete iTooltipResize;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   104
	delete iRollAo;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   105
	delete iNaviPaneText;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   106
	delete iGc;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   107
	delete iBitmapDev;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   108
	delete iAnimationAO;
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   109
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   110
	iUndoPaths.ResetAndDestroy();
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   111
	iResLoader.Close();
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   112
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   113
	for (int i = 0; i < iTotalComponent; i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   114
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   115
		CImageLabel* &temp = iLabels[i];
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   116
		if (temp != NULL)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   117
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   118
			delete temp;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   119
			temp = NULL;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   120
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   121
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   122
	iLabels.ResetAndDestroy();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   123
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   124
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   125
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   126
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   127
// ConstructL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   128
// ---------------------------------------------------------------------------
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   129
void CImageEditorDrawControl::ConstructL(const TRect& aRect,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   130
		CCoeControl* aParent)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   131
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   132
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::ConstructL()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   133
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   134
	CreateWindowL();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   135
	EnableDragEvents();
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   136
	
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   137
	iStatuspaneHeight = aRect.iTl.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   138
	iUndo = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   139
	iRedo = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   140
	iCanRedo = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   141
	//  Create resource utility
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   142
	TFileName resFile;
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   143
	// resource file name
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   144
	_LIT(KResourceFile, "draw.rsc");
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   145
	resFile.Append(KPgnResourcePath);
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   146
	resFile.Append(KResourceFile);
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   147
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   148
	User::LeaveIfError(CompleteWithAppPath(resFile));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   149
	// Implementation of RConeResourceLoader uses BaflUtils::NearestLanguageFile 
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   150
	// to search for a localised resource in proper search order
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   151
	iResLoader.OpenL(resFile);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   152
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   153
	//	Create timer for fast key repeat
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   154
	iTimer = CJPTimer::NewL(this);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   155
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   156
	iPopupController = CAknInfoPopupNoteController::NewL();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   157
	iTooltipResize = ControlEnv()->AllocReadResourceL(R_TOOLTIP_TEXT_RESIZE);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   158
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   159
	SetExtentToWholeScreen();
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   160
	
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   161
	iCustomComponetClick = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   162
	TRect rect = Rect();
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   163
	//judge the current screen status.
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   164
	if (rect.Width() < rect.Height())
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   165
		{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   166
		InitializeMainMenu(EMainMenuVertical);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   167
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   168
	else if (rect.Width() > rect.Height())
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   169
		{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   170
		InitializeMainMenu(EMainMenuHorizontal);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   171
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   172
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   173
	TRect Trect(TPoint(0, 0), TPoint(50, 50));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   174
	iCustomComponet = CCustomerComponet::NewL(Trect, this);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   175
	iCustomComponet->SetExtent(TPoint(40, 100), TSize(50, 50));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   176
	iCustomComponet->SetHandlePointerObserver(this);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   177
	iLastPointEventType = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   178
	//	Activate control
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   179
	ActivateL();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   180
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   181
	}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   182
// ---------------------------------------------------------------------------
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   183
// CImageEditorDrawControl::InitializeMainMenu£¨£©
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   184
// initialize tool bar component.
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   185
// ---------------------------------------------------------------------------
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   186
void CImageEditorDrawControl::InitializeMainMenu(
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   187
		TMainMenuLayout aMainMenuLayout)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   188
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   189
	iMainMenuLayout = aMainMenuLayout;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   190
	_LIT(KSvgPath, "\\resource\\apps\\icons_doodle.mif");
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   191
	TFileName svgFile(KSvgPath);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   192
	User::LeaveIfError(CompleteWithAppPath(svgFile));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   193
	iTotalComponent = 7;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   194
	TRect clipRect;
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   195
	if (iMainMenuLayout == EMainMenuVertical)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   196
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   197
		iLoopMenuRect = TRect(TPoint(0, Rect().iBr.iY - 87), TSize(360, 87));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   198
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   199
		for (int i = 0; i < iTotalComponent; i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   200
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   201
			if (iDisplayTool)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   202
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   203
				TRect
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   204
						Rect1(TPoint(i * 72, iLoopMenuRect.iTl.iY), TSize(72,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   205
								87));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   206
				clipRect = Rect1;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   207
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   208
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   209
			else
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   210
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   211
				TRect Rect2(TPoint(i * 72 - iLoopMenuRect.Width() - 72 * 2,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   212
						iLoopMenuRect.iTl.iY), TSize(72, 87));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   213
				clipRect = Rect2;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   214
				}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   215
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   216
			CImageLabel* label = CImageLabel::NewL(this, clipRect,
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   217
					CImageLabel::ELabelVertical);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   218
			label->SetHandlePointerObserver(this);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   219
			iLabels.Append(label);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   220
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   221
		}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   222
	else if (iMainMenuLayout ==EMainMenuHorizontal )
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   223
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   224
		iLoopMenuRect = TRect(TPoint(Rect().iBr.iX - 87, 0), TSize(87, 360));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   225
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   226
		for (int i = 0; i < iTotalComponent; i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   227
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   228
			if (iDisplayTool)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   229
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   230
				TRect
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   231
						Rect1(TPoint(iLoopMenuRect.iTl.iX, i * 72), TSize(87,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   232
								72));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   233
				clipRect = Rect1;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   234
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   235
			else
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   236
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   237
				TRect Rect2(TPoint(iLoopMenuRect.iTl.iX, i * 72
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   238
						- iLoopMenuRect.Height() - 72 * 2), TSize(87, 72));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   239
				clipRect = Rect2;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   240
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   241
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   242
			CImageLabel* label = CImageLabel::NewL(this, clipRect,
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   243
					CImageLabel::ELabelHorizontal);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   244
			label->SetHandlePointerObserver(this);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   245
			iLabels.Append(label);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   246
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   247
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   248
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   249
	iLabels[0]->SetImage(svgFile, EMbmIcons_doodlePen);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   250
	iLabels[0]->SetTooltip(_L("Pensize"));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   251
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   252
	iLabels[1]->SetImage(svgFile, EMbmIcons_doodlePalette_colored);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   253
	iLabels[1]->SetTooltip(_L("Palette"));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   254
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   255
	iLabels[2]->SetImage(svgFile, EMbmIcons_doodleUndo);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   256
	iLabels[2]->SetTooltip(_L("Undo"));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   257
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   258
	iLabels[3]->SetImage(svgFile, EMbmIcons_doodleRedo);
9
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
   259
	iLabels[3]->SetTooltip(_L("Redo"));
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   260
	
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   261
	iLabels[4]->SetImage(svgFile, EMbmIcons_doodleSave1);
9
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
   262
	iLabels[4]->SetTooltip(_L("Save"));
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   263
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   264
	iLabels[5]->SetImage(svgFile, EMbmIcons_doodleInfo);
9
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
   265
	iLabels[5]->SetTooltip(_L("About"));
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   266
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   267
	iLabels[6]->SetImage(svgFile, EMbmIcons_doodleSave2);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   268
	iLabels[6]->SetTooltip(_L("Null"));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   269
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   270
	iAnimationAO = CAnimationAO::NewL();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   271
	iAnimationAO->SetObserver(this);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   272
	iRollAo = CRollAO::NewL();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   273
	iRollAo->SetObserver(this);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   274
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   275
	iButtonDownPoint = TPoint(0, 0);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   276
	iDragStartPoint = TPoint(0, 0);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   277
	iDragPrePoint = TPoint(0, 0);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   278
	iDragUpPoint = TPoint(0, 0);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   279
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   280
	iPointStartInLoopRect = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   281
	iDragIsStart = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   282
	iDragOffset = 0;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   283
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   284
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   285
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   286
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   287
// SetView
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   288
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   289
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   290
void CImageEditorDrawControl::SetView(CAknView* aView)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   291
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   292
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::SetView()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   293
	ASSERT(aView);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   294
	iEditorView = aView;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   295
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   296
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   297
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   298
// SetSelectedUiItemL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   299
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   300
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   301
void CImageEditorDrawControl::SetSelectedUiItemL(CPluginInfo* aItem)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   302
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   303
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::SetSelectedUiItemL()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   304
	ASSERT(aItem);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   305
	iItem = aItem;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   306
	delete iNaviPaneText;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   307
	iNaviPaneText = NULL;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   308
	iNaviPaneText = (iItem->Parameters()[KMainTextIndex]).AllocL();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   309
	iEditorView->HandleCommandL(EImageEditorCmdRender);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   310
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   311
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   312
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   313
// OfferKeyEventL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   314
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   315
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   316
TKeyResponse CImageEditorDrawControl::OfferKeyEventL(
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   317
		const TKeyEvent& aKeyEvent, TEventCode aType)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   318
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   319
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::OfferKeyEventL()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   320
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   321
	TKeyResponse response = EKeyWasNotConsumed;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   322
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   323
	//  If busy, do not handle anything
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   324
	if (Busy())
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   325
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   326
		response = EKeyWasConsumed;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   327
		}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   328
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   329
	// In main state handle the OK Options menu
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   330
	else if (aKeyEvent.iCode == EKeyOK)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   331
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   332
		iDisplayingOkOptionsMenu = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   333
		iEditorView->HandleCommandL(EImageEditorTryDisplayMenuBar);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   334
		response = EKeyWasConsumed;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   335
		}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   336
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   337
	//  We handle only event keys
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   338
	else if (EEventKey == aType)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   339
		{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   340
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   341
		switch (aKeyEvent.iCode)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   342
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   343
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   344
			case EKeyDownArrow:
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   345
			case EKeyUpArrow:
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   346
			case EKeyRightArrow:
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   347
			case EKeyLeftArrow:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   348
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   349
				SetPositionOnImage(ComputeIndicatorPosition());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   350
				StoreParameters(EFalse, EFalse);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   351
				response = EKeyWasConsumed;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   352
				break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   353
				}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   354
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   355
			case EKeyOK:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   356
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   357
				break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   358
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   359
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   360
			case 0x30: // 0		    		    
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   361
			case 0x32: // 2
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   362
			case 0x34: // 4
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   363
			case 0x35: // 5
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   364
			case 0x36: // 6
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   365
			case 0x38: // 8
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   366
			case EStdKeyIncVolume: // zoom in key
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   367
			case EStdKeyDecVolume: // zoom out key
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   368
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   369
				StorePosAndScaleRelScreen();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   370
				break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   371
				}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   372
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   373
			default:
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   374
				{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   375
				break;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   376
				}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   377
			}
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   378
		}
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   379
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   380
	//	Key pressed down, mark pressed key
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   381
	else if (aType == EEventKeyDown)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   382
		{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   383
		switch (aKeyEvent.iScanCode)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   384
			{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   385
			case EStdKeyUpArrow:
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   386
				{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   387
				iKeyCode = 1;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   388
				response = EKeyWasConsumed;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   389
				break;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   390
				}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   391
			case EStdKeyDownArrow:
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   392
				{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   393
				iKeyCode = 2;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   394
				response = EKeyWasConsumed;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   395
				break;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   396
				}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   397
			case EStdKeyLeftArrow:
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   398
				{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   399
				iKeyCode = 3;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   400
				response = EKeyWasConsumed;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   401
				break;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   402
				}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   403
			case EStdKeyRightArrow:
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   404
				{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   405
				iKeyCode = 4;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   406
				response = EKeyWasConsumed;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   407
				break;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   408
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   409
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   410
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   411
		if (iKeyCode != 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   412
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   413
			iNaviStepMultiplier = KDefaultSmallNavigationStepMultiplier;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   414
			iTickCount = 0;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   415
			iTimer->Call(KWait);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   416
			}
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   417
		}
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   418
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   419
	//	Key released, mark all keys to zero
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   420
	else if (aType == EEventKeyUp)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   421
		{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   422
		switch (aKeyEvent.iScanCode)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   423
			{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   424
			case EStdKeyUpArrow:
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   425
			case EStdKeyDownArrow:
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   426
			case EStdKeyLeftArrow:
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   427
			case EStdKeyRightArrow:
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   428
				{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   429
				iKeyCode = 0;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   430
				response = EKeyWasConsumed;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   431
				ShowTooltip();
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   432
				break;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   433
				}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   434
			}
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   435
		}
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   436
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   437
	return response;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   438
	}
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   439
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   440
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   441
// SizeChanged
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   442
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   443
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   444
void CImageEditorDrawControl::SizeChanged()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   445
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   446
	if (iSizeChangeFlag)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   447
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   448
		SetToolBarStatus();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   449
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   450
	else
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   451
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   452
		iSizeChangeFlag = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   453
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   454
	if (iDragIsStart)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   455
		{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   456
		if (iMainMenuLayout == EMainMenuVertical)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   457
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   458
			for (TInt i = 0; i < iTotalComponent; i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   459
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   460
				if (iLabels[0]->Rect().iTl.iX <= 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   461
					{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   462
					TInt x = iLabels[i]->Rect().iTl.iX;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   463
					iLabels[i]->SetPosition(TPoint(x + iDragOffset,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   464
							iLoopMenuRect.iTl.iY));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   465
					iLabels[i]->ResetControl();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   466
					}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   467
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   468
			}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   469
		else if (iMainMenuLayout ==EMainMenuHorizontal )
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   470
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   471
			for (TInt i = 0; i < iTotalComponent; i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   472
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   473
				if (iLabels[0]->Rect().iTl.iY <= 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   474
					{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   475
					TInt y = iLabels[i]->Rect().iTl.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   476
					iLabels[i]->SetPosition(TPoint(iLoopMenuRect.iTl.iX, y
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   477
							+ iDragOffset));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   478
					iLabels[i]->ResetControl();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   479
					}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   480
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   481
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   482
		DrawNow();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   483
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   484
	}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   485
// ---------------------------------------------------------------------------
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   486
// CImageEditorDrawControl::SetToolBarStatus()
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   487
// Set and get current status : display or hidden.
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   488
// ---------------------------------------------------------------------------
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   489
//
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   490
void CImageEditorDrawControl::SetToolBarStatus()
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   491
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   492
	if (iFlagDragToolBar)
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   493
		{
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   494
		iDisplayTool = ETrue;
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   495
		iFlagDragToolBar = EFalse;
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   496
		}
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   497
	if (iMainMenuLayout == EMainMenuVertical)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   498
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   499
		TInt leftX = iLabels[0]->Rect().iTl.iX;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   500
		TInt rightX = iLabels[iTotalComponent - 1]->Rect().iBr.iX;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   501
		if (leftX == 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   502
			iDisplayTool = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   503
		else if (rightX == 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   504
			iDisplayTool = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   505
		}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   506
	else if (iMainMenuLayout ==EMainMenuHorizontal )
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   507
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   508
		TInt topY = iLabels[0]->Rect().iTl.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   509
		TInt bottomY = iLabels[iTotalComponent - 1]->Rect().iBr.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   510
		if (topY == 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   511
			iDisplayTool = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   512
		else if (bottomY == 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   513
			iDisplayTool = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   514
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   515
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   516
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   517
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   518
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   519
// GetParam
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   520
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   521
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   522
TDesC& CImageEditorDrawControl::GetParam()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   523
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   524
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::GetParam()");
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   525
		LOGDES(KDrawPluginLogFile, iParam);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   526
	return iParam;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   527
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   528
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   529
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   530
// SetSystemParameters
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   531
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   532
//
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   533
void CImageEditorDrawControl::SetSystemParameters(
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   534
		const CSystemParameters* aPars)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   535
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   536
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::SetSystemParameters()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   537
	ASSERT(aPars);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   538
	iSysPars = aPars;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   539
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   540
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   541
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   542
// HandlePluginCommandL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   543
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   544
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   545
void CImageEditorDrawControl::HandlePluginCommandL(const TInt aCommand)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   546
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   547
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::HandlePluginCommandL()");
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   548
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   549
	switch (aCommand)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   550
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   551
		case EImageEditorFocusLost:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   552
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   553
			if (iTimer)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   554
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   555
				iTimer->Cancel();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   556
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   557
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   558
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   559
		case EPgnSoftkeyIdOk:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   560
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   561
			iPopupController->HideInfoPopupNote();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   562
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   563
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   564
		case EPgnSoftkeyIdCancel:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   565
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   566
			iPopupController->HideInfoPopupNote();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   567
			iEditorView->HandleCommandL(EImageEditorCancelPlugin);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   568
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   569
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   570
		case EPgnSoftkeyIdDone:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   571
			// FALLTROUHG
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   572
		case EDrawPgnMenuCmdDone:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   573
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   574
			iPopupController->HideInfoPopupNote();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   575
			StoreParameters(EFalse, ETrue);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   576
			iEditorView->HandleCommandL(EImageEditorCmdRender);//results Draw call
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   577
			iEditorView->HandleCommandL(EImageEditorApplyPlugin);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   578
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   579
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   580
		case EDrawPgnMenuCmdResize:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   581
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   582
			StoreParameters(ETrue, ETrue);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   583
			iEditorView->HandleCommandL(EImageEditorCmdRender);//results Draw call
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   584
			SelectSizeL();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   585
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   586
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   587
		case EDrawPgnMenuCmdColor:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   588
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   589
			StoreParameters(ETrue, ETrue);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   590
			iEditorView->HandleCommandL(EImageEditorCmdRender);//results Draw call            
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   591
			SDrawUtils::LaunchColorSelectionPopupL(iPreview, Rect(), iRgb);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   592
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   593
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   594
		case EDrawPgnMenuCmdCancel:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   595
			{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   596
			iReadyToRender = EFalse;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   597
			iEditorView->HandleCommandL(EImageEditorCancelPlugin);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   598
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   599
			}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   600
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   601
		case EImageEditorGlobalZoomChanged:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   602
			// FALLTROUGHT
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   603
		case EImageEditorGlobalPanChanged:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   604
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   605
			RestorePosAndScaleRelScreen();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   606
			StoreTempParams();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   607
			iEditorView->HandleCommandL(EImageEditorCmdRender);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   608
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   609
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   610
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   611
		case EImageEditorPreScreenModeChange:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   612
			{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   613
			StorePosAndScaleRelImage();
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   614
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   615
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   616
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   617
		case EImageEditorPostScreenModeChange:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   618
			{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   619
			RestorePosAndScaleRelImage();
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   620
			ClipPosition();
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   621
			StoreTempParams();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   622
			iEditorView->HandleCommandL(EImageEditorCmdRender);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   623
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   624
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   625
		default:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   626
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   627
			break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   628
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   629
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   630
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   631
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   632
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   633
// GetSoftkeyIndexL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   634
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   635
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   636
TInt CImageEditorDrawControl::GetSoftkeyIndexL()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   637
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   638
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::GetSoftkeyIndexL()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   639
	// : Check needed states
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   640
	TInt state(2);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   641
	return state;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   642
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   643
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   644
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   645
// GetContextMenuResourceId
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   646
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   647
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   648
TInt CImageEditorDrawControl::GetContextMenuResourceId()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   649
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   650
	return R_TEXT_CONTEXT_MENUBAR;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   651
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   652
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   653
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   654
// GetDimmedMenuItems
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   655
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   656
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   657
TBitField CImageEditorDrawControl::GetDimmedMenuItems()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   658
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   659
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::GetDimmedMenuItems()");
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   660
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   661
	TBitField dimmedMenuItems;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   662
	TInt count = iItem->MenuItems().Count();
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   663
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   664
	if (iDisplayingOkOptionsMenu)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   665
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   666
		// Dim the command EImageEditorCancelPlugin
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   667
		for (TInt i = 0; i < count; i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   668
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   669
			// get the menu item id
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   670
			TInt menuItem = iItem->MenuItems().At(i).iCommandId;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   671
			if (menuItem == EDrawPgnMenuCmdCancel)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   672
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   673
				dimmedMenuItems.SetBit(i);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   674
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   675
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   676
		iDisplayingOkOptionsMenu = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   677
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   678
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   679
	for (TInt i = 0; i < count; i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   680
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   681
		// get the menu item id
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   682
		TInt menuItem = iItem->MenuItems().At(i).iCommandId;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   683
		if (menuItem == EDrawPgnMenuCmdMax)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   684
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   685
			dimmedMenuItems.SetBit(i);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   686
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   687
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   688
	return dimmedMenuItems;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   689
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   690
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   691
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   692
// GetNaviPaneTextL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   693
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   694
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   695
TPtrC CImageEditorDrawControl::GetNaviPaneTextL(
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   696
		TBool& aLeftNaviPaneScrollButtonVisibile,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   697
		TBool& aRightNaviPaneScrollButtonVisible)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   698
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   699
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::GetNaviPaneTextL()");
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   700
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   701
	aLeftNaviPaneScrollButtonVisibile = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   702
	aRightNaviPaneScrollButtonVisible = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   703
	return *iNaviPaneText;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   704
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   705
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   706
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   707
// Draw
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   708
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   709
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   710
void CImageEditorDrawControl::Draw(const TRect& aRect) const
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   711
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   712
	CWindowGc & gc = SystemGc();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   713
	gc.SetBrushColor(KRgbBlack);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   714
	gc.Clear(aRect);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   715
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   716
	TRect ImageRect(iSysPars->VisibleImageRectPrev());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   717
	CPreviewControlBase::DrawPreviewImage(aRect);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   718
	gc.SetClippingRect(TRect(TPoint(ImageRect.iTl.iX, ImageRect.iTl.iY
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   719
			+ iStatuspaneHeight), ImageRect.Size()));
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   720
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   721
	if (iPaths.Count() > 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   722
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   723
		//        ASSERT( iSysPars ); 
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   724
		TInt count = iPaths.Count();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   725
		for (TInt i(0); i < iPaths.Count(); ++i)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   726
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   727
			CDrawPath* path = iPaths[i];
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   728
			CArrayFix<TPoint>* pathPoints = path->ItemArray();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   729
			gc.SetPenStyle(CGraphicsContext::ESolidPen);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   730
			gc.SetPenColor(path->Color());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   731
			gc.SetPenSize(ScaledLineSize(path->Size()));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   732
			gc.DrawPolyLine(pathPoints);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   733
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   734
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   735
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   736
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   737
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   738
// NaviDown
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   739
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   740
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   741
void CImageEditorDrawControl::NaviDown()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   742
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   743
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::NaviDown()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   744
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   745
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   746
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   747
// NaviUp
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   748
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   749
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   750
void CImageEditorDrawControl::NaviUp()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   751
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   752
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::NaviUp()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   753
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   754
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   755
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   756
// NaviRight
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   757
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   758
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   759
void CImageEditorDrawControl::NaviRight()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   760
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   761
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::NaviRight()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   762
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   763
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   764
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   765
// NaviLeft
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   766
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   767
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   768
void CImageEditorDrawControl::NaviLeft()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   769
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   770
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::NaviLeft()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   771
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   772
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   773
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   774
// SelectSizeL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   775
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   776
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   777
void CImageEditorDrawControl::SelectSizeL()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   778
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   779
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::SelectSizeL()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   780
	// Symmetric line width / height
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   781
	TInt size(iSize.iWidth);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   782
	CSelectionDialog::RunDlgLD(iPreview, Rect(), size, iRgb,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   783
			iSysPars->VisibleImageRectPrev());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   784
	iSize = TSize(size, size);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   785
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   786
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   787
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   788
// StoreTempParams
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   789
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   790
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   791
void CImageEditorDrawControl::StoreTempParams()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   792
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   793
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::StoreTempParams("
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   794
				""
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   795
				")");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   796
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   797
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   798
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   799
// RestoreTempParams
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   800
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   801
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   802
void CImageEditorDrawControl::RestoreTempParams()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   803
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   804
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::RestoreTempParams()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   805
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   806
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   807
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   808
// GetHelpContext
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   809
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   810
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   811
void CImageEditorDrawControl::GetHelpContext(TCoeHelpContext& aContext) const
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   812
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   813
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::GetHelpContext()");
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   814
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   815
	aContext.iMajor = TUid::Uid(UID_IMAGE_EDITOR);
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   816
	aContext.iContext = KSIE_HLP_EDIT_DRAW;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   817
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   818
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   819
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   820
// PrepareL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   821
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   822
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   823
void CImageEditorDrawControl::PrepareL()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   824
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   825
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::PrepareL()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   826
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   827
	//	Get current view port
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   828
	TRect rect = iSysPars->VisibleImageRectPrev();
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   829
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   830
	iReadyToRender = ETrue;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   831
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   832
	iEditorView->HandleCommandL(EImageEditorCmdRender);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   833
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   834
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   835
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   836
// LoadIndicatorL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   837
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   838
//
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   839
void CImageEditorDrawControl::LoadIndicatorL(TInt aBitmapInd, TInt aMaskInd)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   840
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   841
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::LoadIndicatorL()");
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   842
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   843
	//  Delete old indicator
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   844
	delete iIndicator;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   845
	iIndicator = 0;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   846
	delete iIndicatorMask;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   847
	iIndicatorMask = 0;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   848
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   849
	//  Load new indicator
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   850
	SDrawUtils::GetIndicatorBitmapL(iIndicator, iIndicatorMask, aBitmapInd,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   851
			aMaskInd);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   852
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   853
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   854
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   855
// ComputeIndicatorPosition
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   856
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   857
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   858
TPoint CImageEditorDrawControl::ComputeIndicatorPosition() const
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   859
	{
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   860
	TRect vprect = iSysPars->VisibleImageRect();
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   861
	TRect vpprect = iSysPars->VisibleImageRectPrev();
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   862
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   863
	TInt x(0);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   864
	TInt y(0);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   865
	// check if there is no indicator
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   866
	if (!iIndicator)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   867
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   868
		return TPoint(x, y);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   869
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   870
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   871
	y = ((iY - vprect.iTl.iY) * vpprect.Height()) / vprect.Height();
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   872
	y += vpprect.iTl.iY;
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   873
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   874
	x = ((iX - vprect.iTl.iX) * vpprect.Width()) / vprect.Width();
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   875
	x += vpprect.iTl.iX;
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   876
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   877
	return TPoint(x, y);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   878
	}
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   879
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   880
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   881
// IsReadyToRender
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   882
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   883
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   884
TBool CImageEditorDrawControl::IsReadyToRender() const
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   885
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   886
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::IsReadyToRender()");
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   887
	return iReadyToRender;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   888
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   889
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   890
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   891
// StoreParameters
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   892
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   893
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   894
void CImageEditorDrawControl::StoreParameters(TBool aLastItem, TBool aDone)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   895
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   896
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::StoreParameters()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   897
	RDebug::Print(_L("CImageEditorDrawControl::StoreParameters color[%d]"),
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   898
	iRgb.Internal());
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   899
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   900
	iParam.Copy(_L("x "));
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   901
	iParam.AppendNum(iX);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   902
	iParam.Append(_L(" y "));
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   903
	iParam.AppendNum(iY);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   904
	if (aLastItem)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   905
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   906
		iParam.Append(_L(" size "));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   907
		iParam.AppendNum(iSize.iHeight);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   908
		iParam.Append(_L(" color "));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   909
		iParam.AppendNum(iRgb.Value());
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   910
		iParam.Append(_L(" lastItem "));
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   911
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   912
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   913
	if (aDone)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   914
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   915
		iParam.Zero();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   916
		iParam.Append(_L("done"));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   917
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   918
	if (iUndo)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   919
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   920
		iParam.Zero();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   921
		iParam.Append(_L("Undo"));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   922
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   923
	if (iRedo)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   924
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   925
		iParam.Zero();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   926
		iParam.Append(_L("redone"));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   927
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   928
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   929
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   930
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   931
// TimerCallBack
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   932
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   933
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   934
void CImageEditorDrawControl::TimerCallBack()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   935
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   936
		LOG(KDrawPluginLogFile, "CImageEditorDrawControl::TimerCallBack()");
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   937
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   938
	if (iTickCount > KDefaultFastKeyTimerMultiplyThresholdInTicks)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   939
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   940
		iNaviStepMultiplier = KDefaultBigNavigationStepMultiplier;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   941
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   942
	else
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   943
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   944
		iTickCount++;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   945
		}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   946
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   947
	if (iKeyCode)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   948
		{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   949
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   950
		switch (iKeyCode)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   951
			{
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   952
			case 1:
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   953
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   954
				NaviUp();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   955
				break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   956
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   957
			case 2:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   958
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   959
				NaviDown();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   960
				break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   961
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   962
			case 3:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   963
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   964
				NaviLeft();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   965
				break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   966
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   967
			case 4:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   968
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   969
				NaviRight();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   970
				break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   971
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   972
			default:
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   973
				break;
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   974
			}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   975
			//StoreParameters();
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   976
			TRAP_IGNORE(iEditorView->HandleCommandL(EImageEditorCmdRender));
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   977
		iTimer->Call(KWait);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   978
		}
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   979
	}
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   980
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   981
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   982
// StorePosAndScaleRelScreen
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   983
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   984
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   985
void CImageEditorDrawControl::StorePosAndScaleRelScreen()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   986
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   987
		LOG(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   988
				"CImageEditorClipartControl::StorePosAndScaleRelScreen()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   989
	iParam.Copy(_L("nop"));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   990
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   991
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   992
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   993
// ?description_if_needed
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   994
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   995
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
   996
void CImageEditorDrawControl::RestorePosAndScaleRelScreen()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
   997
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   998
		LOG(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
   999
				"CImageEditorClipartControl::RestorePosAndScaleRelScreen()");
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1000
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1001
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1002
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1003
// StorePosAndScaleRelImage
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1004
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1005
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1006
void CImageEditorDrawControl::StorePosAndScaleRelImage()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1007
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1008
	TReal relscale = iSysPars->RelScale();
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1009
		LOGFMT(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1010
				"CImageEditorClipartControl::StorePosAndScaleRelImage():%g",
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1011
				relscale);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1012
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1013
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1014
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1015
// RestorePosAndScaleRelImage
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1016
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1017
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1018
void CImageEditorDrawControl::RestorePosAndScaleRelImage()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1019
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1020
	TReal relscale = iSysPars->RelScale();
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1021
		LOGFMT(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1022
				"CImageEditorClipartControl::RestorePosAndScaleRelImage():%g",
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1023
				relscale);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1024
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1025
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1026
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1027
// ClipPosition
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1028
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1029
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1030
void CImageEditorDrawControl::ClipPosition()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1031
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1032
	if (iX < iSysPars->VisibleImageRect().iTl.iX)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1033
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1034
		iX = iSysPars->VisibleImageRect().iTl.iX;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1035
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1036
	else if (iX > iSysPars->VisibleImageRect().iBr.iX)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1037
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1038
		iX = iSysPars->VisibleImageRect().iBr.iX;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1039
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1040
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1041
	if (iY < iSysPars->VisibleImageRect().iTl.iY)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1042
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1043
		iY = iSysPars->VisibleImageRect().iTl.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1044
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1045
	else if (iY > iSysPars->VisibleImageRect().iBr.iY)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1046
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1047
		iY = iSysPars->VisibleImageRect().iBr.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1048
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1049
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1050
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1051
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1052
// HandlePointerEventL
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1053
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1054
//
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1055
void CImageEditorDrawControl::HandlePointerEventL(
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1056
		const TPointerEvent &aPointerEvent)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1057
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1058
	SetToolBarStatus();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1059
	RDebug::Print(_L("CImageEditorDrawControl::HandlePointerEventL pen[%d]"),
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1060
	AknLayoutUtils::PenEnabled());
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1061
	if (iRollflag)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1062
		return;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1063
	if (AknLayoutUtils::PenEnabled() && !Busy())
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1064
		{
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1065
		RDebug::Print(_L("CImageEditorDrawControl::iType [%d]"),
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1066
		aPointerEvent.iType);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1067
		TBool lastItem(EFalse);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1068
		TPoint point = aPointerEvent.iPosition;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1069
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1070
		switch (aPointerEvent.iType)
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1071
			{
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1072
			case TPointerEvent::EButton1Down:
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1073
				{
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1074
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1075
				iButtonDownPoint = point;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1076
				iLastPointEventType = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1077
				CCoeControl::HandlePointerEventL(aPointerEvent);
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1078
                 //Handle Drag tool bar event.
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1079
				if (iLoopMenuRect.Contains(point) && !iCustomComponetClick
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1080
						&& iDisplayTool)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1081
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1082
					{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1083
					iPointStartInLoopRect = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1084
					if (iDragIsStart)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1085
						{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1086
						iAnimationAO->Cancel();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1087
						iDragIsStart = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1088
						}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1089
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1090
					}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1091
				//Doodle event.
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1092
				else if ((!iLoopMenuRect.Contains(point)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1093
						&& !iCustomComponetClick && iDisplayTool)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1094
						|| (!iDisplayTool && !iCustomComponetClick))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1095
					{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1096
					iPointStartInLoopRect = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1097
					//System dispose
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1098
					iReadyToRender = EFalse;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1099
					CDrawPath* lastPath = CDrawPath::NewL();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1100
					CleanupStack::PushL(lastPath);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1101
					lastPath->SetColor(iRgb);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1102
					lastPath->SetSize(iSize);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1103
					SetPositionOnImage(aPointerEvent.iPosition);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1104
					lastPath->AddItemL(aPointerEvent.iPosition);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1105
					iPaths.AppendL(lastPath);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1106
					CleanupStack::Pop(lastPath);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1107
					iCanRedo = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1108
					iUndoPaths.ResetAndDestroy();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1109
					}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1110
				}
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1111
				break;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1112
			case TPointerEvent::EButton1Up:
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1113
				{
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1114
				//		System dispose
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1115
				iReadyToRender = ETrue;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1116
				iCustomComponetClick = EFalse;
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1117
				lastItem = ETrue;
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1118
				CCoeControl::HandlePointerEventL(aPointerEvent);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1119
				HandleMainMenuButtonUp(point);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1120
				DrawNow();
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1121
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1122
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1123
				break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1124
			case TPointerEvent::EDrag:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1125
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1126
				CCoeControl::HandlePointerEventL(aPointerEvent);
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1127
			    //Mark last event use for custompoent.	
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1128
				iLastPointEventType = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1129
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1130
				if ((iDisplayTool && iPaths.Count() && !iCustomComponetClick
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1131
						&& !iPointStartInLoopRect) || (!iDisplayTool
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1132
						&& iPaths.Count() && !iCustomComponetClick))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1133
					{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1134
					iCanRedo = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1135
					iUndoPaths.ResetAndDestroy();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1136
					CDrawPath* path = iPaths[iPaths.Count() - 1];
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1137
					// store current position for next round
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1138
					iPointerPosition = aPointerEvent.iPosition;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1139
					SetPositionOnImage(aPointerEvent.iPosition);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1140
					path->AddItemL(aPointerEvent.iPosition);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1141
					}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1142
				//Drag customcomponent event
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1143
				if (iCustomComponetClick)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1144
					{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1145
					TPoint con(aPointerEvent.iPosition.iX - 25,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1146
							aPointerEvent.iPosition.iY - 25);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1147
					iCustomComponet->SetExtent(con, TSize(50, 50));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1148
					DrawNow();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1149
					}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1150
                //Drag tool bar event
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1151
				if (iDisplayTool && iPointStartInLoopRect)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1152
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1153
					{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1154
					iFlagDragToolBar = ETrue;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1155
					HandleMainMenuButtonDrag(point);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1156
					}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1157
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1158
				break;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1159
			default:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1160
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1161
				break;
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1162
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1163
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1164
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1165
		//System dispose
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1166
		if ((!iPointStartInLoopRect && iDisplayTool) || !iDisplayTool)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1167
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1168
			if (!(iCustomComponet->Rect().Contains(aPointerEvent.iPosition)))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1169
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1170
				StoreParameters(lastItem, EFalse);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1171
				iEditorView->HandleCommandL(EImageEditorCmdRender);//results Draw call
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1172
				}
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1173
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1174
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1175
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1176
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1177
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1178
// ---------------------------------------------------------------------------
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1179
// CImageEditorDrawControl::HandleMainMenuButtonUp()
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1180
//
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1181
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1182
//
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1183
void CImageEditorDrawControl::HandleMainMenuButtonUp(TPoint aPoint)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1184
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1185
	if (iMainMenuLayout == EMainMenuVertical)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1186
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1187
		if (iDragIsStart)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1188
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1189
			//Drag event is end (Except activating animation effect).
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1190
			iDragIsStart = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1191
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1192
			if (Abs(iDragPrePoint.iX - aPoint.iX) > 1)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1193
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1194
				//Animation effect is activated
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1195
				iDragIsStart = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1196
				iStartSpeed = aPoint.iX - iDragPrePoint.iX;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1197
				iAnimationAO->StartL(0);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1198
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1199
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1200
		}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1201
	else if (iMainMenuLayout ==EMainMenuHorizontal )
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1202
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1203
		if (iDragIsStart)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1204
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1205
			//Drag event is end (Except activating animation effect).
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1206
			iDragIsStart = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1207
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1208
			if (Abs(iDragPrePoint.iY - aPoint.iY) > 1)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1209
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1210
				//Animation effect is activated
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1211
				iDragIsStart = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1212
				iStartSpeed = aPoint.iY - iDragPrePoint.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1213
				iAnimationAO->StartL(0);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1214
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1215
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1216
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1217
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1218
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1219
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1220
// HandleMainMenuButtonDrag
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1221
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1222
//
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1223
void CImageEditorDrawControl::HandleMainMenuButtonDrag(TPoint aPoint)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1224
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1225
	if (iMainMenuLayout == EMainMenuVertical)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1226
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1227
		if (iPointStartInLoopRect && !iDragIsStart && Abs(aPoint.iX
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1228
				- iButtonDownPoint.iX) >= DRAG_LENGTH)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1229
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1230
			iDragIsStart = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1231
			iDragStartPoint = aPoint;
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1232
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1233
			for (TInt i = 0; i < iTotalComponent; i++)
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1234
				{
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1235
				if (iLabels[i]->Rect().Contains(iButtonDownPoint))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1236
					{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1237
					iLabels[i]->LabelIsMoving();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1238
					}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1239
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1240
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1241
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1242
		if (iDragIsStart)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1243
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1244
			iDragPrePoint = iDragUpPoint;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1245
			iDragUpPoint = aPoint;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1246
			iDragOffset = aPoint.iX - iDragStartPoint.iX;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1247
			iDragStartPoint = aPoint;
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1248
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1249
			CalculateEffectiveOffset();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1250
			SizeChanged();
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1251
			}
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1252
		}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1253
	else if (iMainMenuLayout ==EMainMenuHorizontal )
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1254
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1255
		if (iPointStartInLoopRect && !iDragIsStart && Abs(aPoint.iY
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1256
				- iButtonDownPoint.iY) >= DRAG_LENGTH)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1257
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1258
			iDragIsStart = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1259
			iDragStartPoint = aPoint;
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1260
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1261
			for (TInt i = 0; i < iTotalComponent; i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1262
				{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1263
				if (iLabels[i]->Rect().Contains(iButtonDownPoint))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1264
					{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1265
					iLabels[i]->LabelIsMoving();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1266
					}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1267
				}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1268
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1269
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1270
		if (iDragIsStart)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1271
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1272
			iDragPrePoint = iDragUpPoint;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1273
			iDragUpPoint = aPoint;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1274
			iDragOffset = aPoint.iY - iDragStartPoint.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1275
			iDragStartPoint = aPoint;
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1276
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1277
			CalculateEffectiveOffset();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1278
			SizeChanged();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1279
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1280
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1281
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1282
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1283
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1284
// UndoDrawPath
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1285
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1286
//   
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1287
void CImageEditorDrawControl::UndoDrawPath()
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1288
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1289
	if (iPaths.Count())
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1290
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1291
		iUndoPaths.Append(iPaths[iPaths.Count() - 1]);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1292
		iPaths.Remove(iPaths.Count() - 1);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1293
		iCanRedo = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1294
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1295
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1296
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1297
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1298
// RedoDrawPath
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1299
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1300
//
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1301
void CImageEditorDrawControl::RedoDrawPath()
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1302
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1303
	if (iUndoPaths.Count())
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1304
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1305
		iPaths.Append(iUndoPaths[iUndoPaths.Count() - 1]);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1306
		iUndoPaths.Remove(iUndoPaths.Count() - 1);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1307
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1308
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1309
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1310
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1311
// HandlePointerNotify
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1312
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1313
//
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1314
void CImageEditorDrawControl::HandlePointerNotify(CCoeControl* aComponent)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1315
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1316
	//pen size
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1317
	if (iLabels[0] == dynamic_cast<CImageLabel*> (aComponent))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1318
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1319
		MakeVisibleLable(EFalse);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1320
		SelectSizeL();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1321
		MakeVisibleLable(ETrue);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1322
		}
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1323
	//pen color
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1324
	else if (iLabels[1] == dynamic_cast<CImageLabel*> (aComponent))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1325
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1326
		MakeVisibleLable(EFalse);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1327
		SDrawUtils::LaunchColorSelectionPopupL(iPreview, Rect(), iRgb);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1328
		MakeVisibleLable(ETrue);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1329
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1330
	//undo
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1331
	else if (iLabels[2] == dynamic_cast<CImageLabel*> (aComponent))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1332
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1333
		UndoDrawPath();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1334
		iUndo = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1335
		StoreParameters(EFalse, EFalse);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1336
		iEditorView->HandleCommandL(EImageEditorCmdRender);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1337
		iUndo = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1338
		}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1339
	//save and quit
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1340
	else if (iLabels[3] == dynamic_cast<CImageLabel*> (aComponent))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1341
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1342
		iRedo = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1343
		RedoDrawPath();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1344
		StoreParameters(EFalse, EFalse);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1345
		iEditorView->HandleCommandL(EImageEditorCmdRender);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1346
		iRedo = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1347
		}
9
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
  1348
	else if (iLabels[4] == dynamic_cast<CImageLabel*> (aComponent))
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
  1349
		{
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
  1350
		iPopupController->HideInfoPopupNote();
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
  1351
		StoreParameters(EFalse, ETrue);
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
  1352
		iEditorView->HandleCommandL(EImageEditorApplyPlugin);
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
  1353
		}
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
  1354
	else if (iLabels[5] == dynamic_cast<CImageLabel*> (aComponent))
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
  1355
		{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1356
        iEditorView->HandleCommandL(EImageEditorMenuCmdHelp);
9
a5c0fe6456b2 enhance the doodle functionality
qifeima <>
parents: 8
diff changeset
  1357
		}
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1358
	else if (iLabels[6] == dynamic_cast<CImageLabel*> (aComponent))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1359
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1360
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1361
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1362
	else if (iCustomComponet == dynamic_cast<CCustomerComponet*> (aComponent))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1363
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1364
		if (iCustomComponet->GetButtonType())
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1365
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1366
			iCustomComponetClick = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1367
			}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1368
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1369
		if ((!iCustomComponet->GetButtonType()) && (!iLastPointEventType))
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1370
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1371
			StartTheAnimation();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1372
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1373
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1374
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1375
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1376
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1377
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1378
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1379
// SetPositionOnImage
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1380
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1381
//    
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1382
void CImageEditorDrawControl::SetPositionOnImage(TPoint aPointedPosition)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1383
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1384
	ASSERT(iSysPars);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1385
	// Get system parameters
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1386
	TRect visibleImageRect(iSysPars->VisibleImageRect());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1387
	TRect visibleImageRectPrev(iSysPars->VisibleImageRectPrev());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1388
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1389
	TInt xPosFactorDivider(visibleImageRectPrev.Width());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1390
	TInt yPosFactorDivider(visibleImageRectPrev.Height());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1391
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1392
		LOGFMT2(KDrawPluginLogFile, "CImageEditorDrawControl::vir w:%d h:%d",
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1393
				visibleImageRect.Width(), visibleImageRect.Height());
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1394
		LOGFMT2(KDrawPluginLogFile, "CImageEditorDrawControl::virp w:%d h:%d",
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1395
				visibleImageRectPrev.Width(), visibleImageRectPrev.Height());
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1396
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1397
	// Dividing by zero will cause panic -> check
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1398
	if (xPosFactorDivider == 0 || yPosFactorDivider == 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1399
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1400
		//	Set default position
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1401
		iX = (visibleImageRect.iTl.iX + visibleImageRect.iBr.iX) / 2;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1402
		iY = (visibleImageRect.iTl.iY + visibleImageRect.iBr.iY) / 2;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1403
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1404
	else
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1405
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1406
		// Calculate relative position on the screen
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1407
		TReal xPositionFactor(TReal(aPointedPosition.iX
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1408
				- visibleImageRectPrev.iTl.iX) / xPosFactorDivider);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1409
		//
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1410
		//		TReal yPositionFactor(TReal(aPointedPosition.iY - iStatuspaneHeight
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1411
		//				- visibleImageRectPrev.iTl.iY) / yPosFactorDivider);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1412
		TReal yPositionFactor(TReal(aPointedPosition.iY
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1413
				- visibleImageRectPrev.iTl.iY) / yPosFactorDivider);
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1414
			LOGFMT2(KDrawPluginLogFile, "CImageEditorDrawControl::pfx:%g pfy:%g",
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1415
					xPositionFactor, yPositionFactor);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1416
		// Calculate position on visible image		
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1417
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1418
		iX = visibleImageRect.iTl.iX + visibleImageRect.Width()
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1419
				* xPositionFactor + 0.5;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1420
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1421
		iY = visibleImageRect.iTl.iY + visibleImageRect.Height()
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1422
				* yPositionFactor + 0.5;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1423
		}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1424
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1425
		LOGFMT4(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1426
				"CImageEditorDrawControl::Draw x:%d iX:%d y:%d iY:%d",
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1427
				aPointedPosition.iX, iX, aPointedPosition.iY, iY);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1428
	// Check that not out of bounds    
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1429
	//ClipPosition();          
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1430
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1431
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1432
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1433
// GetPositionOnView
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1434
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1435
// 
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1436
TPoint CImageEditorDrawControl::GetPositionOnView()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1437
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1438
	ASSERT(iSysPars);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1439
	// Get system parameters 
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1440
	TRect visibleImageRect(iSysPars->VisibleImageRect());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1441
	TRect visibleImageRectPrev(iSysPars->VisibleImageRectPrev());
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1442
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1443
	TInt xPosFactorDivider(visibleImageRectPrev.Width());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1444
	TInt yPosFactorDivider(visibleImageRectPrev.Height());
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1445
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1446
	// Calculate relative position on the screen
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1447
	TReal xPositionFactor(TReal(iX + visibleImageRectPrev.iTl.iX)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1448
			/ xPosFactorDivider);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1449
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1450
	TReal yPositionFactor(TReal(iY + visibleImageRectPrev.iTl.iY)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1451
			/ yPosFactorDivider);
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1452
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1453
		LOGFMT2(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1454
				"CImageEditorDrawControl::GetPositionOnView xf:%g yf:%g",
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1455
				xPositionFactor, yPositionFactor);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1456
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1457
		LOGFMT2(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1458
				"CImageEditorDrawControl::GetPositionOnView xf:%d yf:%d",
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1459
				xPosFactorDivider, yPosFactorDivider);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1460
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1461
		LOGFMT2(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1462
				"CImageEditorDrawControl::GetPositionOnView w:%d h:%d", iX, iY);
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1463
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1464
	TInt xPosition(iX + visibleImageRectPrev.iTl.iX);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1465
	TInt yPosition(iY + visibleImageRectPrev.iTl.iY);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1466
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1467
		LOGFMT3(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1468
				"CImageEditorDrawControl::GetPositionOnView w:%d h:%d S:%g",
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1469
				xPosition, yPosition, iSysPars->RelScale());
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1470
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1471
	return TPoint(xPosition, yPosition);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1472
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1473
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1474
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1475
// ShowTooltip
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1476
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1477
//    
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1478
void CImageEditorDrawControl::ShowTooltip()
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1479
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1480
	iPopupController->HideInfoPopupNote();
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1481
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1482
	TPoint iconPosition = ComputeIndicatorPosition();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1483
	TRect iconRect(iconPosition.iX, iconPosition.iY, iconPosition.iX,
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1484
			iconPosition.iY);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1485
	}
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1486
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1487
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1488
// ScaledLineSize
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1489
// ---------------------------------------------------------------------------
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1490
//    
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1491
TSize CImageEditorDrawControl::ScaledLineSize(TSize aOriginalSize) const
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1492
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1493
	TInt sizew(aOriginalSize.iWidth * iSysPars->RelScale() + 0.5);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1494
	TInt sizeh(aOriginalSize.iHeight * iSysPars->RelScale() + 0.5);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1495
	if (sizew < 1)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1496
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1497
		sizew++;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1498
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1499
	if (sizeh < 1)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1500
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1501
		sizeh++;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1502
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1503
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1504
		LOGFMT3(KDrawPluginLogFile,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1505
				"CImageEditorDrawControl::ScaledLineSize w:%d h:%d S:%g", sizew,
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1506
				sizeh, iSysPars->RelScale());
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1507
	return TSize(sizew, sizeh);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1508
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1509
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1510
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1511
// CountComponentControls
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1512
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1513
//  
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1514
TInt CImageEditorDrawControl::CountComponentControls() const
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1515
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1516
	return iTotalComponent + 1;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1517
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1518
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1519
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1520
// ComponentControl
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1521
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1522
//  
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1523
CCoeControl* CImageEditorDrawControl::ComponentControl(TInt aIndex) const
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1524
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1525
	switch (aIndex)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1526
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1527
		case 7:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1528
			return iCustomComponet;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1529
		case 0:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1530
			return iLabels[0];
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1531
		case 1:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1532
			return iLabels[1];
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1533
		case 2:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1534
			return iLabels[2];
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1535
		case 3:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1536
			return iLabels[3];
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1537
		case 4:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1538
			return iLabels[4];
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1539
		case 5:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1540
			return iLabels[5];
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1541
		case 6:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1542
			return iLabels[6];
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1543
		default:
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1544
			return NULL;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1545
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1546
	return NULL;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1547
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1548
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1549
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1550
// Notify
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1551
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1552
//  
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1553
void CImageEditorDrawControl::Notify()
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1554
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1555
	if (iStartSpeed > 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1556
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1557
		iStartSpeed -= 2;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1558
		if (iStartSpeed <= 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1559
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1560
			iStartSpeed = 0;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1561
			iDragIsStart = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1562
			iAnimationAO->Cancel();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1563
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1564
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1565
	else if (iStartSpeed < 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1566
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1567
		iStartSpeed += 2;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1568
		if (iStartSpeed >= 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1569
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1570
			iStartSpeed = 0;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1571
			iDragIsStart = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1572
			iAnimationAO->Cancel();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1573
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1574
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1575
	else
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1576
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1577
		iDragIsStart = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1578
		iAnimationAO->Cancel();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1579
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1580
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1581
	iDragOffset += iStartSpeed;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1582
	CalculateEffectiveOffset();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1583
	SizeChanged();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1584
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1585
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1586
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1587
// Roll 
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1588
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1589
//  
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1590
void CImageEditorDrawControl::Roll()
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1591
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1592
	SetToolBarStatus();
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1593
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1594
	TInt offset = 0;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1595
	iRollflag = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1596
	if (iDisplayTool)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1597
		iRollDirection = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1598
	else
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1599
		iRollDirection = ETrue;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1600
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1601
	if (iRollDirection)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1602
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1603
		offset = 4;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1604
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1605
	else
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1606
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1607
		offset = -4;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1608
		}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1609
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1610
	if (iMainMenuLayout == EMainMenuVertical)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1611
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1612
		for (TInt i = 0; i < iLabels.Count(); i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1613
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1614
			TInt x = iLabels[i]->Rect().iTl.iX;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1615
			iLabels[i]->SetPosition(TPoint(x + offset, iLoopMenuRect.iTl.iY));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1616
			iLabels[i]->ResetControl();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1617
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1618
		if (iLabels[0]->Rect().iTl.iX == 0
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1619
				|| iLabels[iLabels.Count() - 1]->Rect().iBr.iX == 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1620
			iRollflag = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1621
		}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1622
	else if (iMainMenuLayout == EMainMenuHorizontal)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1623
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1624
		for (TInt i = 0; i < iLabels.Count(); i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1625
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1626
			TInt y = iLabels[i]->Rect().iTl.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1627
			iLabels[i]->SetPosition(TPoint(iLoopMenuRect.iTl.iX, y + offset));
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1628
			iLabels[i]->ResetControl();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1629
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1630
		if (iLabels[0]->Rect().iTl.iY == 0
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1631
				|| iLabels[iLabels.Count() - 1]->Rect().iBr.iY == 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1632
			iRollflag = EFalse;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1633
		}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1634
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1635
	DrawNow();
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1636
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1637
	if (!iRollflag)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1638
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1639
		iRollAo->Cancel();
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1640
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1641
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1642
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1643
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1644
// CalculateEffectiveOffset
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1645
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1646
//  
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1647
void CImageEditorDrawControl::CalculateEffectiveOffset()
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1648
	{
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1649
	if (iMainMenuLayout == EMainMenuVertical)
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1650
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1651
		TInt leftX = iLabels[0]->Rect().iTl.iX;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1652
		TInt rightX = iLabels[iTotalComponent - 1]->Rect().iBr.iX;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1653
		TInt offset = iDragOffset;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1654
		if (leftX + offset > 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1655
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1656
			iDragOffset = Abs(leftX);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1657
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1658
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1659
		if (rightX + offset < 360)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1660
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1661
			iDragOffset = -(rightX - 360);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1662
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1663
		}
10
e7871f3699e6 *m:Change the icons of doodle functionality
qifeima <>
parents: 9
diff changeset
  1664
	else if (iMainMenuLayout ==EMainMenuHorizontal )
8
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1665
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1666
		TInt topY = iLabels[0]->Rect().iTl.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1667
		TInt bottomY = iLabels[iTotalComponent - 1]->Rect().iBr.iY;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1668
		TInt offset = iDragOffset;
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1669
		if (topY + offset > 0)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1670
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1671
			iDragOffset = Abs(topY);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1672
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1673
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1674
		if (bottomY + offset < 360)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1675
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1676
			iDragOffset = -(bottomY - 360);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1677
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1678
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1679
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1680
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1681
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1682
// MakeVisibleLable
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1683
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1684
//  
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1685
void CImageEditorDrawControl::MakeVisibleLable(TBool aFlag)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1686
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1687
	if (aFlag)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1688
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1689
		for (int i = 0; i < iTotalComponent; i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1690
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1691
			iLabels[i]->MakeVisible(ETrue);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1692
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1693
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1694
	else
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1695
		{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1696
		for (int i = 0; i < iTotalComponent; i++)
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1697
			{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1698
			iLabels[i]->MakeVisible(EFalse);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1699
			}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1700
		}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1701
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1702
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1703
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1704
// StartTheAnimation
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1705
// ---------------------------------------------------------------------------
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1706
//  
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1707
void CImageEditorDrawControl::StartTheAnimation()
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1708
	{
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1709
	iRollAo->StartL(0);
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1710
	}
18b321db4884 *m enhance
qifeima <>
parents: 1
diff changeset
  1711
1
edfc90759b9f Committing the Image Editor package under the Eclipse Public License
Mikael Laine <mikael.laine@ixonos.com>
parents:
diff changeset
  1712
// End of File