summaryrefslogtreecommitdiffstats
path: root/src/widgets/widgets/qlineedit_p.cpp
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@kdab.com>2015-12-21 13:47:31 +0100
committerMarc Mutz <marc.mutz@kdab.com>2016-01-04 12:22:16 +0000
commit41ca17fa97d8595b974f09ef43ea2aeff7aab32b (patch)
treee8c01ba91577065a9213941c9278fe784f2b422b /src/widgets/widgets/qlineedit_p.cpp
parent264c72837d6ff717a248dd180c2dfb45391c6aab (diff)
QLineEdit: de-inline effective*TextMargin()
Saves 327b in text size, but done mainly because such functions shouldn't be inline in the first place. Change-Id: Ieea97f13620e4411dc01cb0d390bd668c13cfa7a Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Diffstat (limited to 'src/widgets/widgets/qlineedit_p.cpp')
-rw-r--r--src/widgets/widgets/qlineedit_p.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/widgets/widgets/qlineedit_p.cpp b/src/widgets/widgets/qlineedit_p.cpp
index 5afedf6823..59d8d79861 100644
--- a/src/widgets/widgets/qlineedit_p.cpp
+++ b/src/widgets/widgets/qlineedit_p.cpp
@@ -523,6 +523,28 @@ void QLineEditPrivate::removeAction(QAction *action)
q->update();
}
+static bool isSideWidgetVisible(const QLineEditPrivate::SideWidgetEntry &e)
+{
+ return e.widget->isVisible();
+}
+
+int QLineEditPrivate::effectiveLeftTextMargin() const
+{
+ const auto &list = leftSideWidgetList();
+ return leftTextMargin + (QLineEditIconButton::IconMargin + iconSize().width())
+ * int(std::count_if(list.begin(), list.end(),
+ isSideWidgetVisible));
+}
+
+int QLineEditPrivate::effectiveRightTextMargin() const
+{
+ const auto &list = rightSideWidgetList();
+ return rightTextMargin + (QLineEditIconButton::IconMargin + iconSize().width())
+ * int(std::count_if(list.begin(), list.end(),
+ isSideWidgetVisible));
+}
+
+
QT_END_NAMESPACE
#endif