controller: consider elided text for key buttons
authorGiWoong Kim <giwoong.kim@samsung.com>
Tue, 12 Jan 2016 07:28:59 +0000 (16:28 +0900)
committerSeokYeon Hwang <syeon.hwang@samsung.com>
Thu, 14 Jan 2016 11:55:35 +0000 (20:55 +0900)
If the string text is wider than button width, use
an elided version of the string.

Change-Id: I458b04d794db717e6a428b78ddbe9e38a083db30
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
tizen/src/ui/controller/hwkeybutton.cpp
tizen/src/ui/controller/hwkeybutton.h

index 0bf298b1c77e47e50ea351b7a6288f37b5bde23b..d9f2b432091266ed5b3600df5283f991785ea243 100644 (file)
@@ -58,6 +58,14 @@ HWKeyButton::HWKeyButton(QWidget *parent, HardwareKey *hwKey, QSize size) :
     );
 }
 
+/* override */
+void HWKeyButton::showEvent(QShowEvent *event)
+{
+    // keep 10% space for margin
+    setText(fontMetrics().elidedText(text(), Qt::ElideRight, width() * 0.9));
+}
+
+/* override */
 void HWKeyButton::mousePressEvent(QMouseEvent *event)
 {
     const int keycode = hwKey->getKeycode();
@@ -68,6 +76,7 @@ void HWKeyButton::mousePressEvent(QMouseEvent *event)
     QPushButton::mousePressEvent(event);
 }
 
+/* override */
 void HWKeyButton::mouseReleaseEvent(QMouseEvent *event)
 {
     const int keycode = hwKey->getKeycode();
index b758c2672f04325d9bdd392a3ea91dc06e7c345e..790789f86698f3c58e3adf97844c9af2e219f4bb 100644 (file)
@@ -42,6 +42,7 @@ public:
     ~HWKeyButton();
 
 protected:
+    void showEvent(QShowEvent *event);
     void mousePressEvent(QMouseEvent *event);
     void mouseReleaseEvent(QMouseEvent *event);