/** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).* All rights reserved.* This component and the accompanying materials are made available* under the terms of "Eclipse Public License v1.0""* which accompanies this distribution, and is available* at the URL "http://www.eclipse.org/legal/epl-v10.html".** Initial Contributors:* Nokia Corporation - initial contribution.** Contributors:** Description: **/#include "customedit.h"#include "loggerutil.h"/*! Constructor*/CustomEdit::CustomEdit(QGraphicsItem *parent) : HbLineEdit(parent){ _DBGLOG("CustomEdit::CustomEdit() >") const bool ret = connect(&mItemClickedTimer, SIGNAL(timeout()), this, SLOT(emitEditItemClicked())); _DBGLOG2("CustomEdit::CustomEdit() <", ret)}/*! Distructor*/CustomEdit::~CustomEdit(){ _DBGLOG("CustomEdit::CustomEdit()") disconnect(&mItemClickedTimer, SIGNAL(timeout()), this, SLOT(emitEditItemClicked()));}/*! focusInEvent*/void CustomEdit::focusInEvent(QFocusEvent *event){ _DBGLOG("CustomEdit::focusInEvent() >") if (!event->gotFocus()) { _DBGLOG("CustomEdit::focusInEvent() ignore") event->ignore(); } else { _DBGLOG("CustomEdit::focusInEvent() emit clicked") // When focus comes to the controller, a 100 ms timer is started. // a signal is emitted after this 100 ms, and focus transfer to other controller, // after the other controller finished,to avoid focus gained again. mItemClickedTimer.start(100); event->accept(); } _DBGLOG("CustomEdit::focusInEvent() <")}/*! emitEditItemClicked*/void CustomEdit::emitEditItemClicked(){ _DBGLOG("CustomEdit::emitEditItemClicked() >") emit editItemClicked(); mItemClickedTimer.stop(); _DBGLOG("CustomEdit::emitEditItemClicked() <")}// End of file