phonesrv_plat/dialpad_api/inc/dialpad.h
changeset 13 e32024264ebb
parent 12 ae8abd0db65c
child 31 a2467631ae02
--- a/phonesrv_plat/dialpad_api/inc/dialpad.h	Fri Mar 19 09:40:14 2010 +0200
+++ b/phonesrv_plat/dialpad_api/inc/dialpad.h	Fri Apr 16 15:31:58 2010 +0300
@@ -24,9 +24,11 @@
 
 class HbLineEdit;
 class HbFrameDrawer;
+class HbMainWindow;
 class DialpadInputField;
 class DialpadKeypad;
 class DialpadMultitapHandler;
+class DialpadBackground;
 
 #ifdef BUILD_DIALPAD
 #define DIALPAD_EXPORT Q_DECL_EXPORT
@@ -39,11 +41,14 @@
     Q_OBJECT
 
 public:
-    explicit Dialpad();
+    explicit Dialpad(); // deprecated
+    explicit Dialpad(const HbMainWindow& mainWindow);
     virtual ~Dialpad();
 
     HbLineEdit& editor() const;
 
+    bool isOpen() const;
+
 public slots:
     void openDialpad();
 
@@ -51,6 +56,8 @@
 
     void setCallButtonEnabled(bool enabled);
 
+    void setTapOutsideDismiss(bool dismiss);
+
 protected:
     void paint(QPainter* painter,
                const QStyleOptionGraphicsItem* option,
@@ -74,14 +81,23 @@
     void openAnimValueChanged(qreal value);
     void openAnimFinished();
     void orientationChangeStarted();
-    void orientationChangeFinished();
+    void orientationChangeFinished(Qt::Orientation current);
+
+private:
+    void startCloseAnimation();
+    void layoutBackgroundItem();
+    void updateLayout(Qt::Orientation orientation);
+    void initialize();
 
 signals:
+    void aboutToOpen();
     void aboutToClose();
 
 private:
+    const HbMainWindow& mMainWindow;
     HbFrameDrawer *mBackgroundDrawer;
     HbFrameDrawer *mIconDrawer;
+    DialpadBackground* mBackgroundItem;
     DialpadInputField* mInputField;
     DialpadKeypad* mKeypad;
     DialpadMultitapHandler* mMultitap;
@@ -92,6 +108,12 @@
     bool mAnimationOngoing;
     QPointF mPosition;
     int mCloseHandleHeight;
+    int mCloseHandleWidth;
+    int mTitleBarHeight;
+    int mOrientation;
+    bool mIsOpen;
+
+    friend class DialpadBackground;
 };
 
 #endif // DIALPAD_H