src/hbinput/inputwidgets/hbinputvkbwidget.h
changeset 34 ed14f46c0e55
parent 7 923ff622b8b9
equal deleted inserted replaced
31:7516d6d86cf5 34:ed14f46c0e55
    27 #define HB_INPUT_VKB_WIDGET_H
    27 #define HB_INPUT_VKB_WIDGET_H
    28 
    28 
    29 #include <hbdialog.h>
    29 #include <hbdialog.h>
    30 #include <hbinputdef.h>
    30 #include <hbinputdef.h>
    31 #include <hbinputvirtualkeyboard.h>
    31 #include <hbinputvirtualkeyboard.h>
    32 #include <hbinputvirtualrocker.h>
       
    33 
    32 
    34 const int HbRepeatTimeout = 1000;
    33 const int HbRepeatTimeout = 1000;
    35 const int HbRepeatTimeoutShort = 150;
    34 const int HbRepeatTimeoutShort = 150;
    36 
    35 
    37 const QString backgroundGraphics("qtg_fr_input_v_bg");
    36 const QString backgroundGraphics("qtg_fr_input_v_bg");
    38 const QString HbInputVkbHandleIcon("qtg_graf_input_v_swipe");
    37 const QString HbInputVkbHandleIcon("qtg_graf_input_v_swipe");
    39 const qreal HbCloseHandleHeight = 0;
    38 const qreal HbCloseHandleHeight = 0;
    40 const qreal HbCloseHandleHeightInUnits = 3.13;
    39 const qreal HbCloseHandleHeightInUnits = 2.68;
    41 const qreal HbCloseHandleWidthInUnits = 18.8;
    40 const qreal HbCloseHandleWidthInUnits = 18.8;
    42 
    41 
    43 class HbInputVkbWidgetPrivate;
    42 class HbInputVkbWidgetPrivate;
    44 class HbInputMethod;
    43 class HbInputMethod;
    45 class HbView;
    44 class HbView;
    46 class HbKeymap;
    45 class HbKeymap;
    47 class HbPanGesture;
    46 class HbPanGesture;
       
    47 class HbFrameDrawer;
    48 
    48 
    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 
    69     enum HbSctView {
    69     enum HbSctView {
    70         HbSctViewSpecialCharacter,
    70         HbSctViewSpecialCharacter,
    71         HbSctViewSmiley
    71         HbSctViewSmiley
    72     };
    72     };
    73 
    73 
    74     HbInputVkbWidget(QGraphicsItem *parent = 0);  
    74     HbInputVkbWidget(QGraphicsItem *parent = 0);
    75     virtual ~HbInputVkbWidget();
    75     virtual ~HbInputVkbWidget();
    76 
    76 
    77 public: // From HbVirtualKeyboard
    77 public: // From HbVirtualKeyboard
    78     QWidget *asWidget();
    78     QWidget *asWidget();
    79     QGraphicsWidget *asGraphicsWidget();
    79     QGraphicsWidget *asGraphicsWidget();
    80     QSizeF preferredKeyboardSize();
    80     QSizeF preferredKeyboardSize();
    81     QSizeF minimizedKeyboardSize();
       
    82     virtual void aboutToOpen(HbVkbHost *host);
    81     virtual void aboutToOpen(HbVkbHost *host);
    83     virtual void aboutToClose(HbVkbHost *host);
    82     virtual void aboutToClose(HbVkbHost *host);
    84     virtual void keyboardOpened(HbVkbHost *host);
    83     virtual void keyboardOpened(HbVkbHost *host);
    85     virtual void keyboardClosed(HbVkbHost *host);
    84     virtual void keyboardClosed(HbVkbHost *host);
    86     virtual void keyboardMinimized(HbVkbHost *host);
       
    87     virtual void keyboardAnimationFrame(HbVkbAnimationType type, qreal x);
    85     virtual void keyboardAnimationFrame(HbVkbAnimationType type, qreal x);
    88 
    86 
    89     virtual void setKeymap(const HbKeymap *keymap);
    87     virtual void setKeymap(const HbKeymap *keymap);
    90 
    88 
    91     virtual void setMode(HbKeypadMode mode, HbModifiers modifiers);
    89     virtual void setMode(HbKeypadMode mode, HbModifiers modifiers);
    92     virtual HbKeypadMode mode() const;
    90     virtual HbKeypadMode mode() const;
    93     virtual HbModifiers modifiers() const;
    91     virtual HbModifiers modifiers() const;
    94 
    92 
    95     virtual void setContentItem(QGraphicsLayoutItem *item);
    93     virtual void setContentItem(QGraphicsLayoutItem *item);
    96     virtual QGraphicsLayoutItem *contentItem() const;
    94     virtual QGraphicsLayoutItem *contentItem() const;
    97 
       
    98     virtual void setRockerVisible(bool visible);
       
    99     virtual bool isRockerVisible() const;
       
   100 
    95 
   101     virtual void setKeyboardDimmed(bool dimmed);
    96     virtual void setKeyboardDimmed(bool dimmed);
   102     virtual void setBackgroundDrawing(bool backgroundEnabled);
    97     virtual void setBackgroundDrawing(bool backgroundEnabled);
   103     virtual QList<HbKeyPressProbability> probableKeypresses();
    98     virtual QList<HbKeyPressProbability> probableKeypresses();
   104     virtual void animKeyboardChange();
    99     virtual void animKeyboardChange();
   115     QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const;
   110     QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const;
   116     virtual void gestureEvent(QGestureEvent *event);
   111     virtual void gestureEvent(QGestureEvent *event);
   117 
   112 
   118 protected:
   113 protected:
   119     // layout
   114     // layout
   120     QSizeF keypadButtonAreaSize();
   115     QSizeF keypadButtonAreaSize();    
   121     virtual QPointF rockerPosition();
   116     HbFrameDrawer* iconDrawer();
   122 
   117 
   123 public slots:
   118 public slots:
   124     void showSettingList();
   119     void showSettingList();
   125     void showSettingsView();
   120     void showSettingsView();
   126     void closeSettingsView();
   121     void closeSettingsView();
   127     void executeMethodDialog();
   122     void executeMethodDialog();
   128     void closeSettingList();
   123     virtual void closeSettingList();
   129     void settingsClosed();
   124     void settingsClosed();
   130     void showSmileyPicker(int rows = 0, int columns = 0);
   125     void showSmileyPicker(int rows = 0, int columns = 0);
   131     void keypadLanguageChangeAnimationUpdate(qreal value);
   126     void keypadLanguageChangeAnimationUpdate(qreal value);
   132     void keypadLanguageChangeFinished();
   127     void keypadLanguageChangeFinished();
   133 
   128 
   137     virtual void sendLongPressEvent(const QKeyEvent &event);
   132     virtual void sendLongPressEvent(const QKeyEvent &event);
   138     virtual void sendKeyChangeEvent(const QKeyEvent &releaseEvent, const QKeyEvent &pressEvent);
   133     virtual void sendKeyChangeEvent(const QKeyEvent &releaseEvent, const QKeyEvent &pressEvent);
   139 
   134 
   140 signals:
   135 signals:
   141     void keypadCloseEventDetected(HbInputVkbWidget::HbVkbCloseMethod closeMethod);
   136     void keypadCloseEventDetected(HbInputVkbWidget::HbVkbCloseMethod closeMethod);
   142     void rockerDirection(int direction, HbInputVirtualRocker::RockerSelectionMode selectionMode);
       
   143     void flickEvent(HbInputVkbWidget::HbFlickDirection direction);
   137     void flickEvent(HbInputVkbWidget::HbFlickDirection direction);
   144     void smileySelected(QString text);
   138     void smileySelected(QString text);
   145     void mouseMovedOutOfButton();
   139     void mouseMovedOutOfButton();
   146     void aboutToActivateCustomAction(HbAction *custAction);
   140     void aboutToActivateCustomAction(HbAction *custAction);
       
   141     void settingsListClosed();
   147 protected:
   142 protected:
   148     HbInputVkbWidget(HbInputVkbWidgetPrivate &dd, QGraphicsItem *parent);
   143     HbInputVkbWidget(HbInputVkbWidgetPrivate &dd, QGraphicsItem *parent);
   149 
   144 
   150 private:
   145 private:
   151     Q_DECLARE_PRIVATE_D(d_ptr, HbInputVkbWidget)
   146     Q_DECLARE_PRIVATE_D(d_ptr, HbInputVkbWidget)