--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hbinput/inputwidgets/hbinputbutton.h Fri May 14 16:09:54 2010 +0300
@@ -0,0 +1,164 @@
+/****************************************************************************
+**
+** Copyright (C) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (developer.feedback@nokia.com)
+**
+** This file is part of the HbInput module of the UI Extensions for Mobile.
+**
+** GNU Lesser General Public License Usage
+** This file may be used under the terms of the GNU Lesser General Public
+** License version 2.1 as published by the Free Software Foundation and
+** appearing in the file LICENSE.LGPL included in the packaging of this file.
+** Please review the following information to ensure the GNU Lesser General
+** Public License version 2.1 requirements will be met:
+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at developer.feedback@nokia.com.
+**
+****************************************************************************/
+
+#ifndef HB_INPUT_BUTTON_H
+#define HB_INPUT_BUTTON_H
+
+#include <QObject>
+#include <QPoint>
+#include <QSize>
+#include <QString>
+
+#include <hbicon.h>
+#include <hbinputdef.h>
+
+class HbInputButtonPrivate;
+
+const QString HbInputButtonIconDelete("qtg_mono_backspace1");
+const QString HbInputButtonIconDelete2("qtg_mono_backspace2");
+const QString HbInputButtonIconShift("qtg_mono_shift");
+const QString HbInputButtonIconSymbol("qtg_mono_sym_qwerty");
+const QString HbInputButtonIconSymbol2("qtg_mono_sym_itut");
+const QString HbInputButtonIconEnter("qtg_mono_enter");
+const QString HbInputButtonIconSpace("qtg_mono_space_vkb");
+const QString HbInputButtonIconSpace2("qtg_mono_space_itut");
+const QString HbInputButtonIconAlphabet("qtg_mono_alpha_mode");
+const QString HbInputButtonIconPageChange("qtg_mono_special_characters_qwerty");
+const QString HbInputButtonIconPageChange2("qtg_mono_special_characters_itut");
+const QString HbInputButtonIconSmiley("qtg_mono_smiley");
+
+class HB_INPUT_EXPORT HbInputButton : public QObject
+{
+ Q_OBJECT
+
+ Q_ENUMS(HbInputButtonType ButtonType)
+ Q_ENUMS(HbInputButtonState ButtonState)
+ Q_PROPERTY(HbInputButton::HbInputButtonType buttonType READ type WRITE setType)
+ Q_PROPERTY(HbInputButton::HbInputButtonState buttonState READ state WRITE setState)
+ Q_PROPERTY(QPoint position READ position WRITE setPosition)
+ Q_PROPERTY(QSize size READ size WRITE setSize)
+ Q_PROPERTY(int keyCode READ keyCode WRITE setKeyCode)
+ Q_PROPERTY(bool autoRepeat READ autoRepeat WRITE setAutoRepeat)
+ Q_PROPERTY(QList<QString> texts READ texts WRITE setTexts)
+ Q_PROPERTY(QString mappedCharacters READ mappedCharacters WRITE setMappedCharacters)
+ Q_PROPERTY(QList<HbIcon> icons READ icons WRITE setIcons)
+ Q_PROPERTY(QRectF boundingRect READ boundingRect WRITE setBoundingRect)
+
+public:
+ enum HbInputButtonKeyCode {
+ ButtonKeyCodeDelete = Qt::Key_Delete,
+ ButtonKeyCodeSpace = Qt::Key_Space,
+ ButtonKeyCodeAsterisk = Qt::Key_Asterisk,
+ ButtonKeyCodeShift = Qt::Key_Shift,
+ ButtonKeyCodeControl = Qt::Key_Control,
+ ButtonKeyCodeEnter = Qt::Key_Enter,
+ ButtonKeyCodeCharacter = Qt::Key_unknown + 1,
+ ButtonKeyCodeSymbol,
+ ButtonKeyCodeAlphabet,
+ ButtonKeyCodeSmiley,
+ ButtonKeyCodePageChange,
+ ButtonKeyCodeSettings,
+ ButtonKeyCodeCustom
+ };
+
+ enum HbInputButtonType {
+ ButtonTypeNormal,
+ ButtonTypeFunction,
+ ButtonTypeLabel,
+ ButtonTypeCount
+ };
+
+ enum HbInputButtonState {
+ ButtonStateReleased,
+ ButtonStatePressed,
+ ButtonStateLatched,
+ ButtonStateDisabled,
+ ButtonStateCount
+ };
+
+ enum HbInputButtonTextIndex {
+ ButtonTextIndexPrimary,
+ ButtonTextIndexSecondaryFirstRow,
+ ButtonTextIndexSecondarySecondRow,
+ ButtonTextIndexCount
+ };
+
+ enum HbInputButtonIconIndex {
+ ButtonIconIndexPrimary,
+ ButtonIconIndexSecondaryFirstRow,
+ ButtonIconIndexSecondarySecondRow,
+ ButtonIconIndexCount
+ };
+
+ HbInputButton();
+ HbInputButton(int keyCode, const QPoint &position, const QSize &size = QSize(1, 1));
+
+ ~HbInputButton();
+
+ void setType(HbInputButtonType type);
+ HbInputButtonType type() const;
+
+ void setState(HbInputButtonState state);
+ HbInputButtonState state() const;
+
+ void setPosition(const QPoint &position);
+ QPoint position() const;
+
+ void setSize(const QSize &size);
+ QSize size() const;
+
+ void setKeyCode(int keyCode);
+ int keyCode() const;
+
+ void setAutoRepeat(bool autoRepeat);
+ bool autoRepeat() const;
+
+ void setText(const QString &text, HbInputButtonTextIndex index);
+ void setTexts(const QList<QString> &texts);
+ QString text(HbInputButtonTextIndex index) const;
+ QList<QString> texts() const;
+
+ void setMappedCharacters(const QString &mappedCharacters);
+ QString mappedCharacters() const;
+
+ void setIcon(const HbIcon &icon, HbInputButtonIconIndex index);
+ void setIcons(const QList<HbIcon> &icons);
+ HbIcon icon(HbInputButtonIconIndex index) const;
+ QList<HbIcon> icons() const;
+
+ void setBoundingRect(const QRectF &rect);
+ QRectF boundingRect() const;
+
+protected:
+ HbInputButtonPrivate * const d_ptr;
+
+private:
+ Q_DECLARE_PRIVATE_D(d_ptr, HbInputButton)
+ Q_DISABLE_COPY(HbInputButton)
+};
+
+#endif // HB_INPUT_BUTTON_H
+
+// End of file