telutils/dialpad/src/dialpad.cpp
changeset 50 2313cb430f28
parent 45 61f927bc9441
child 51 12bc758d6a02
--- a/telutils/dialpad/src/dialpad.cpp	Thu Sep 02 21:00:29 2010 +0300
+++ b/telutils/dialpad/src/dialpad.cpp	Fri Sep 17 08:33:29 2010 +0300
@@ -37,17 +37,15 @@
 #include "dialpadbackground.h"
 #include "dialpadbutton.h"
 
-static const QLatin1String backgroundGraphics("qtg_fr_input_v_bg");
+static const QLatin1String backgroundGraphicsV("qtg_fr_input_v_bg");
 static const QLatin1String backgroundGraphicsH("qtg_fr_input_h_bg");
-static const QLatin1String minimizeIcon("qtg_graf_input_v_swipe");
+static const QLatin1String minimizeIconV("qtg_graf_input_v_swipe");
 static const QLatin1String minimizeIconH("qtg_graf_input_h_swipe");
 static const int DialpadCloseAnimDuration = 200; // ms
 static const int DialpadOpenAnimDuration = 200; // ms
 static const qreal DialpadComponentMargin = 0.75; // units
 static const qreal DialpadCloseHandleHeight = 2.23; // units
 static const qreal DialpadCloseHandleWidth = 18.8; // units
-static const qreal DialpadCallButtonHeight = 8.75; // units, same as numeric buttons
-static const qreal DialpadCallButtonHeightH = 7.25; // units
 
 static const QLatin1String handsetIcon("qtg_mono_call");
 static const QLatin1String vmbxIcon("qtg_mono_voice_mailbox");
@@ -84,25 +82,23 @@
 
 void Dialpad::initialize()
 {
+    setObjectName(QLatin1String("dialpad"));
     setFocusPolicy(Qt::StrongFocus);
     setFlag(QGraphicsItem::ItemIsFocusable,true);
     setFlag(QGraphicsItem::ItemHasNoContents, false);
 
     // create input field
-    mInputField = new DialpadInputField(this);
+    mInputField = new DialpadInputField(mMainWindow,this);
 
     // create keypad
     mKeypad = new DialpadKeypad(mMainWindow,*mInputField,this);
 
     // layouting params
-    qreal unit = HbDeviceProfile::current().unitValue();
+    qreal unit = HbDeviceProfile::profile(&mMainWindow).unitValue();
     qreal margin = DialpadComponentMargin * unit;
     mCloseHandleHeight = DialpadCloseHandleHeight * unit;
     mCloseHandleWidth = DialpadCloseHandleWidth * unit;
 
-    mKeypad->callButton().setPreferredHeight(DialpadCallButtonHeight*unit);
-    mKeypad->callButton().setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
-
     // create popup background
     mBackgroundDrawer = new HbFrameDrawer();
     mIconDrawer = new HbFrameDrawer();
@@ -112,7 +108,6 @@
         new QGraphicsLinearLayout(Qt::Vertical);
     popupLayout->addItem(mInputField);
     popupLayout->addItem(mKeypad);
-    popupLayout->addItem(&mKeypad->callButton());
     popupLayout->setContentsMargins(margin, mCloseHandleHeight, margin, margin);
     popupLayout->setSpacing(0);
     popupLayout->setItemSpacing(0,margin);
@@ -179,8 +174,8 @@
 
     // paint popup background
     if ( mOrientation == Qt::Vertical ) {
-        mBackgroundDrawer->setFrameGraphicsName(backgroundGraphics);
-        mIconDrawer->setFrameGraphicsName(minimizeIcon);
+        mBackgroundDrawer->setFrameGraphicsName(backgroundGraphicsV);
+        mIconDrawer->setFrameGraphicsName(minimizeIconV);
         mBackgroundDrawer->setFrameType(HbFrameDrawer::ThreePiecesVertical);
         mBackgroundDrawer->setBorderWidths(0.0, mCloseHandleHeight, 0.0, 0.0);
     } else {
@@ -227,7 +222,7 @@
 
 bool Dialpad::isCallButtonEnabled() const
 {
-    return mKeypad->callButton().isEnabled();
+    return mKeypad->isCallButtonEnabled();
 }
 
 void Dialpad::openDialpad()
@@ -258,6 +253,7 @@
 
     if (mOrientation!=previousOrientation) {
         updateLayout((Qt::Orientation)mOrientation);
+        mInputField->updateLayout((Qt::Orientation)mOrientation);
     }
 
     show();
@@ -410,6 +406,7 @@
 void Dialpad::orientationChangeFinished(Qt::Orientation current)
 {
     updateLayout(current);
+    mInputField->updateLayout(current);
 
     show();
 
@@ -441,7 +438,7 @@
 {
     Q_ASSERT(layout());
 
-    qreal unit = HbDeviceProfile::current().unitValue();
+    qreal unit = HbDeviceProfile::profile(&mMainWindow).unitValue();
     qreal margin = DialpadComponentMargin * unit;
 
     QGraphicsLinearLayout* mainLayout =
@@ -453,13 +450,11 @@
                                        mCloseHandleHeight,
                                        margin,
                                        margin);
-        mKeypad->callButton().setPreferredHeight(DialpadCallButtonHeight*unit);
     } else {
         mainLayout->setContentsMargins(mCloseHandleHeight,
                                        margin,
                                        margin,
                                        margin);
-        mKeypad->callButton().setPreferredHeight(DialpadCallButtonHeightH*unit);
     }
 }