src/hbinput/inputwidgets/hbinputbuttongroup_p.h
changeset 6 c3690ec91ef8
parent 5 627c4a0fd0e7
child 7 923ff622b8b9
equal deleted inserted replaced
5:627c4a0fd0e7 6:c3690ec91ef8
    29 #include "hbwidget_p.h"
    29 #include "hbwidget_p.h"
    30 
    30 
    31 #include "hbinputbuttongroup.h"
    31 #include "hbinputbuttongroup.h"
    32 #include "hbinputbutton.h"
    32 #include "hbinputbutton.h"
    33 
    33 
       
    34 class HbDialog;
       
    35 class QTextLine;
       
    36 class QTextLayout;
       
    37 
    34 class HB_INPUT_PRIVATE_EXPORT HbInputButtonGroupPrivate : public HbWidgetPrivate
    38 class HB_INPUT_PRIVATE_EXPORT HbInputButtonGroupPrivate : public HbWidgetPrivate
    35 {
    39 {
    36     Q_DECLARE_PUBLIC(HbInputButtonGroup)
    40     Q_DECLARE_PUBLIC(HbInputButtonGroup)
    37 
    41 
    38 public:
    42 public:
    39 
       
    40     enum HbInputButtonTextType {
       
    41         ButtonTextTypeSingle,
       
    42         ButtonTextTypePrimary,
       
    43         ButtonTextTypeSecondaryFirstRow,
       
    44         ButtonTextTypeSecondarySecondRow,
       
    45         ButtonTextTypeLabel
       
    46     };
       
    47 
       
    48     HbInputButtonGroupPrivate();
    43     HbInputButtonGroupPrivate();
    49     ~HbInputButtonGroupPrivate();
    44     ~HbInputButtonGroupPrivate();
    50 
    45 
    51     virtual void updateGraphics(const QSizeF &size);
    46     virtual void updateGraphics(const QSizeF &size);
    52     virtual void updateTextLayouts(const QSizeF &size);
    47     virtual void updateTextLayouts(const QSizeF &size);
    53     virtual void updateCustomActions();
    48     virtual void updateCustomActions();
    54     virtual void updateButtonGrid(const QSizeF &size);
    49     virtual void updateButtonGrid(const QSizeF &size);
    55     virtual void updateColorArray();
    50     virtual void updateColorArray();
    56 
    51 
    57     virtual void showButtonPreview(HbInputButton * const item);
    52     virtual void showButtonPreview(HbInputButton *const item);
    58     virtual void hideButtonPreview(HbInputButton * const item);
    53     virtual void hideButtonPreview(HbInputButton *const item);
    59     virtual void showCharacterSelectionPreview(HbInputButton * const item);
    54     virtual void showCharacterSelectionPreview(HbInputButton *const item);
    60 
    55 
    61     virtual void pressEvent(const QPointF &position, bool emitSignal = true);
    56     virtual void pressEvent(const QPointF &position, bool emitSignal = true);
    62     virtual void doublePressEvent(const QPointF &position, bool emitSignal = true);
    57     virtual void doublePressEvent(const QPointF &position, bool emitSignal = true);
    63     virtual void moveEvent(const QPointF &oldPosition, const QPointF &newPosition);
    58     virtual void moveEvent(const QPointF &oldPosition, const QPointF &newPosition);
    64     virtual void releaseEvent(const QPointF &position, bool emitSignal = true);
    59     virtual void releaseEvent(const QPointF &position, bool emitSignal = true);
    71 protected:
    66 protected:
    72     virtual void createPrimarySingleTextLayout(int index, const QHash<int, QString> &textContent, const QSizeF &size);
    67     virtual void createPrimarySingleTextLayout(int index, const QHash<int, QString> &textContent, const QSizeF &size);
    73     virtual void createPrimaryTextLayout(int index, const QHash<int, QString> &textContent, const QSizeF &size);
    68     virtual void createPrimaryTextLayout(int index, const QHash<int, QString> &textContent, const QSizeF &size);
    74     virtual void createSecondaryTextLayout(int index, const QHash<int, QString> &textContentt, const QSizeF &size);
    69     virtual void createSecondaryTextLayout(int index, const QHash<int, QString> &textContentt, const QSizeF &size);
    75 
    70 
    76     virtual void layoutTextLine(HbInputButtonTextType textType, const HbInputButton *button, const QSizeF &cellSize,
    71     virtual void layoutTextLine(HbInputButtonGroup::HbInputButtonTextType textType, const HbInputButton *button, const QSizeF &cellSize,
    77                                 QTextLine &textLine, const QSizeF &textSize);
    72                                 QTextLine &textLine, const QSizeF &textSize);
    78 
    73 
    79     virtual QString buttonGraphics(HbInputButton::HbInputButtonType type, HbInputButton::HbInputButtonState state);
    74     virtual QString buttonGraphics(HbInputButton::HbInputButtonType type, HbInputButton::HbInputButtonState state);
    80     virtual QString buttonColor(HbInputButton::HbInputButtonType type, HbInputButton::HbInputButtonState state);
    75     virtual QString buttonColor(HbInputButton::HbInputButtonType type, HbInputButton::HbInputButtonState state);
    81 
    76 
    82     virtual qreal fontSize(HbInputButtonTextType textType);
    77     virtual qreal fontSize(HbInputButtonGroup::HbInputButtonTextType textType);
    83 
    78 
    84     void startLongPress(int index);
    79     void startLongPress(int index);
    85     void cancelLongPress(int index);
    80     void cancelLongPress(int index);
    86 
    81 
    87 public:
    82 public:
    88     qreal mUnitValue;
    83     qreal mUnitValue;
    89     QList<HbFrameDrawer*> mButtonDrawers;
    84     QList<HbFrameDrawer *> mButtonDrawers;
    90     QList<QTextLayout*> mTextLayouts;
    85     QList<QTextLayout *> mTextLayouts;
    91     QList<QColor> mColors;
    86     QList<QColor> mColors;
    92     QList<QTimer*> mLongPressTimers;
    87     QList<QTimer *> mLongPressTimers;
    93     QList<int> mLongPressButtons;
    88     QList<int> mLongPressButtons;
    94     QSize mGridSize;
    89     QSize mGridSize;
    95     QList<HbInputButton*> mButtonData;
    90     QList<HbInputButton *> mButtonData;
    96     QList<int> mUsedCustomButtons;
    91     QList<int> mUsedCustomButtons;
    97     QList<HbAction*> mCustomActions;
    92     QList<HbAction *> mCustomActions;
    98     QHash<QPair<int, int>, int> mButtonGridPositions;
    93     QHash<QPair<int, int>, int> mButtonGridPositions;
    99     qreal mButtonBorderSize;
    94     qreal mButtonBorderSize;
   100     bool mEnabled;
    95     bool mEnabled;
   101     bool mButtonPreviewEnabled;
    96     bool mButtonPreviewEnabled;
   102     bool mCharacterSelectionPreviewEnabled;
    97     bool mCharacterSelectionPreviewEnabled;
   103     bool mMultiTouchEnabled;
    98     bool mMultiTouchEnabled;
   104     QHash<int, HbInputButtonGroup*> mButtonPreview;
    99     QHash<int, HbInputButtonGroup *> mButtonPreview;
   105     HbDialog *mCharacterSelectionPreview;
   100     HbDialog *mCharacterSelectionPreview;
   106     HbFrameDrawer *mBackground;
   101     HbFrameDrawer *mBackground;
   107     QList<HbKeyPressProbability> mProbabilities;
   102     QList<HbKeyPressProbability> mProbabilities;
   108 };
   103 };
   109 
   104