35 const int HbRepeatTimeoutShort = 150; |
35 const int HbRepeatTimeoutShort = 150; |
36 |
36 |
37 const QString backgroundGraphics("qtg_fr_input_v_bg"); |
37 const QString backgroundGraphics("qtg_fr_input_v_bg"); |
38 const QString HbInputVkbHandleIcon("qtg_graf_input_v_swipe"); |
38 const QString HbInputVkbHandleIcon("qtg_graf_input_v_swipe"); |
39 const qreal HbCloseHandleHeight = 0; |
39 const qreal HbCloseHandleHeight = 0; |
40 const qreal HbCloseHandleHeightInUnits = 2.23; |
40 const qreal HbCloseHandleHeightInUnits = 3.13; |
41 const qreal HbCloseHandleWidthInUnits = 18.8; |
41 const qreal HbCloseHandleWidthInUnits = 18.8; |
42 |
42 |
43 class HbInputVkbWidgetPrivate; |
43 class HbInputVkbWidgetPrivate; |
44 class HbInputMethod; |
44 class HbInputMethod; |
45 class HbView; |
45 class HbView; |
49 class HB_INPUT_EXPORT HbInputVkbWidget : public HbWidget, public HbVirtualKeyboard |
49 class HB_INPUT_EXPORT HbInputVkbWidget : public HbWidget, public HbVirtualKeyboard |
50 { |
50 { |
51 Q_OBJECT |
51 Q_OBJECT |
52 |
52 |
53 public: |
53 public: |
54 enum HbFlickDirection |
54 enum HbFlickDirection { |
55 { |
|
56 HbFlickDirectionNone = 0, |
55 HbFlickDirectionNone = 0, |
57 HbFlickDirectionLeft, |
56 HbFlickDirectionLeft, |
58 HbFlickDirectionRight, |
57 HbFlickDirectionRight, |
59 HbFlickDirectionUp, |
58 HbFlickDirectionUp, |
60 HbFlickDirectionDown |
59 HbFlickDirectionDown |
61 }; |
60 }; |
62 |
61 |
63 enum HbVkbCloseMethod |
62 enum HbVkbCloseMethod { |
64 { |
|
65 HbVkbCloseMethodButtonDrag = 0x1, |
63 HbVkbCloseMethodButtonDrag = 0x1, |
66 HbVkbCloseMethodCloseButton = 0x2, |
64 HbVkbCloseMethodCloseButton = 0x2, |
67 HbVkbCloseMethodCloseButtonDrag = HbVkbCloseMethodCloseButton | HbVkbCloseMethodButtonDrag, |
65 HbVkbCloseMethodCloseButtonDrag = HbVkbCloseMethodCloseButton | HbVkbCloseMethodButtonDrag, |
68 HbVkbCloseMethodCloseGesture = 0x4, |
66 HbVkbCloseMethodCloseGesture = 0x4, |
69 }; |
67 }; |
70 |
68 |
71 enum HbSctView { |
69 enum HbSctView { |
72 HbSctViewSpecialCharacter, |
70 HbSctViewSpecialCharacter, |
73 HbSctViewSmiley |
71 HbSctViewSmiley |
74 }; |
72 }; |
75 |
73 |
76 HbInputVkbWidget(QGraphicsItem *parent = 0); |
74 HbInputVkbWidget(QGraphicsItem *parent = 0); |
77 virtual ~HbInputVkbWidget(); |
75 virtual ~HbInputVkbWidget(); |
78 |
76 |
79 public: // From HbVirtualKeyboard |
77 public: // From HbVirtualKeyboard |
80 QWidget* asWidget(); |
78 QWidget *asWidget(); |
81 QGraphicsWidget* asGraphicsWidget(); |
79 QGraphicsWidget *asGraphicsWidget(); |
82 QSizeF preferredKeyboardSize(); |
80 QSizeF preferredKeyboardSize(); |
83 QSizeF minimizedKeyboardSize(); |
81 QSizeF minimizedKeyboardSize(); |
84 virtual void aboutToOpen(HbVkbHost *host); |
82 virtual void aboutToOpen(HbVkbHost *host); |
85 virtual void aboutToClose(HbVkbHost *host); |
83 virtual void aboutToClose(HbVkbHost *host); |
86 virtual void keyboardOpened(HbVkbHost *host); |
84 virtual void keyboardOpened(HbVkbHost *host); |
87 virtual void keyboardClosed(HbVkbHost *host); |
85 virtual void keyboardClosed(HbVkbHost *host); |
88 virtual void keyboardMinimized(HbVkbHost *host); |
86 virtual void keyboardMinimized(HbVkbHost *host); |
89 virtual void keyboardAnimationFrame(HbVkbAnimationType type, qreal x); |
87 virtual void keyboardAnimationFrame(HbVkbAnimationType type, qreal x); |
90 |
88 |
91 virtual void setKeymap(const HbKeymap* keymap); |
89 virtual void setKeymap(const HbKeymap *keymap); |
92 |
90 |
93 virtual void setMode(HbKeypadMode mode, HbModifiers modifiers); |
91 virtual void setMode(HbKeypadMode mode, HbModifiers modifiers); |
94 virtual HbKeypadMode mode() const; |
92 virtual HbKeypadMode mode() const; |
95 virtual HbModifiers modifiers() const; |
93 virtual HbModifiers modifiers() const; |
96 |
94 |
106 virtual void animKeyboardChange(); |
104 virtual void animKeyboardChange(); |
107 |
105 |
108 HbFlickDirection flickDirection(); |
106 HbFlickDirection flickDirection(); |
109 |
107 |
110 protected: // From QGraphicsItem |
108 protected: // From QGraphicsItem |
111 virtual QPainterPath shape () const; |
109 virtual QPainterPath shape() const; |
112 virtual void changeEvent(QEvent *event); |
110 virtual void changeEvent(QEvent *event); |
113 virtual void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget); |
111 virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); |
114 virtual int type() const {return Hb::ItemType_InputVkbWidget;} |
112 virtual int type() const { |
|
113 return Hb::ItemType_InputVkbWidget; |
|
114 } |
115 QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; |
115 QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; |
116 virtual void gestureEvent(QGestureEvent *event); |
116 virtual void gestureEvent(QGestureEvent *event); |
117 |
117 |
118 protected: |
118 protected: |
119 // layout |
119 // layout |
120 QSizeF keypadButtonAreaSize(); |
120 QSizeF keypadButtonAreaSize(); |
|
121 virtual QPointF rockerPosition(); |
121 |
122 |
122 public slots: |
123 public slots: |
123 void showSettingList(); |
124 void showSettingList(); |
124 void showSettingsView(); |
125 void showSettingsView(); |
125 void closeSettingsView(); |
126 void closeSettingsView(); |
126 void executeMethodDialog(); |
127 void executeMethodDialog(); |
127 void closeSettingList(); |
128 void closeSettingList(); |
128 void settingsClosed(); |
129 void settingsClosed(); |
129 void showSmileyPicker(int rows, int columns); |
130 void showSmileyPicker(int rows = 0, int columns = 0); |
130 void keypadLanguageChangeAnimationUpdate(qreal value); |
131 void keypadLanguageChangeAnimationUpdate(qreal value); |
131 void keypadLanguageChangeFinished(); |
132 void keypadLanguageChangeFinished(); |
132 |
133 |
133 virtual void sendKeyPressEvent(const QKeyEvent &event); |
134 virtual void sendKeyPressEvent(const QKeyEvent &event); |
134 virtual void sendKeyDoublePressEvent(const QKeyEvent &event); |
135 virtual void sendKeyDoublePressEvent(const QKeyEvent &event); |
140 void keypadCloseEventDetected(HbInputVkbWidget::HbVkbCloseMethod closeMethod); |
141 void keypadCloseEventDetected(HbInputVkbWidget::HbVkbCloseMethod closeMethod); |
141 void rockerDirection(int direction, HbInputVirtualRocker::RockerSelectionMode selectionMode); |
142 void rockerDirection(int direction, HbInputVirtualRocker::RockerSelectionMode selectionMode); |
142 void flickEvent(HbInputVkbWidget::HbFlickDirection direction); |
143 void flickEvent(HbInputVkbWidget::HbFlickDirection direction); |
143 void smileySelected(QString text); |
144 void smileySelected(QString text); |
144 void mouseMovedOutOfButton(); |
145 void mouseMovedOutOfButton(); |
|
146 void aboutToActivateCustomAction(HbAction *custAction); |
145 protected: |
147 protected: |
146 HbInputVkbWidget(HbInputVkbWidgetPrivate &dd, QGraphicsItem* parent); |
148 HbInputVkbWidget(HbInputVkbWidgetPrivate &dd, QGraphicsItem *parent); |
147 |
149 |
148 private: |
150 private: |
149 Q_DECLARE_PRIVATE_D(d_ptr, HbInputVkbWidget) |
151 Q_DECLARE_PRIVATE_D(d_ptr, HbInputVkbWidget) |
150 Q_DISABLE_COPY(HbInputVkbWidget) |
152 Q_DISABLE_COPY(HbInputVkbWidget) |
|
153 Q_PRIVATE_SLOT(d_func(), void _q_activateInputMethod(const HbInputMethodDescriptor &, const QByteArray &)) |
|
154 Q_PRIVATE_SLOT(d_func(), void _q_settingsClosed(HbAction *action)) |
|
155 Q_PRIVATE_SLOT(d_func(), void _q_smileyPickerClosed()) |
151 |
156 |
152 friend class HbTouchKeypadButton; |
157 friend class HbTouchKeypadButton; |
153 friend class HbInputUsedSymbolPane; |
158 friend class HbInputUsedSymbolPane; |
154 }; |
159 }; |
155 |
160 |