emailuis/nmailuiwidgets/inc/nmeditortextedit.h
author hgs
Fri, 28 May 2010 13:56:43 +0300
changeset 43 99bcbff212ad
parent 40 2c62ef3caffd
child 47 f83bd4ae1fe3
child 54 997a02608b3a
permissions -rw-r--r--
201021

/*
* Copyright (c) 2009 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: Message editor body text field
*
*/

#ifndef NMEDITORTEXTEDIT_H_
#define NMEDITORTEXTEDIT_H_

#include <hbtextedit.h>
#include "nmailuiwidgetsdef.h"

class NmBaseViewScrollArea;
class HbScrollArea;


class NMAILUIWIDGETS_EXPORT NmEditorTextEdit : public HbTextEdit
{
Q_OBJECT

public:
    NmEditorTextEdit(QGraphicsItem *parent = 0);
    virtual ~NmEditorTextEdit();

    void init(NmBaseViewScrollArea *bgScrollArea);
    qreal contentHeight() const;

    void setCustomTextColor(const QPair<bool, QColor> &customColor);
    void setCustomTextColor(bool useCustom, const QColor& color = Qt::black);
    QPair<bool, QColor> customTextColor() const;

signals:
    void editorContentHeightChanged();

public slots:
    void updateEditorHeight();
    void setHeaderHeight(int);
    void setScrollPosition(int oldPos, int newPos);
    void updateScrollPosition(const QPointF &newPosition);
    void updateCustomTextColor();

private:
    HbScrollArea *mScrollArea;
    NmBaseViewScrollArea *mBackgroundScrollArea;
    qreal mPreviousContentsHeight;
    int mHeaderHeight;
    QPointF mBgScrollPosition;
    bool mFirstTime;
    bool mFirstTimeToScrollPosUpdate;
    
    QPair<bool, QColor> mCustomTextColor;//!<This property keeps info about using customTextColor and color to use. 
};

#endif /* NMEDITORTEXTEDIT_H_ */