]> git.sur5r.net Git - minitube/blobdiff - src/fontutils.cpp
New upstream version 3.1
[minitube] / src / fontutils.cpp
index dc56dd5f983aea0d64cf6bce0c854b06b6ee3c13..505e8d91536792728f213ca3e960b47473b8099f 100644 (file)
@@ -19,6 +19,9 @@ along with Minitube.  If not, see <http://www.gnu.org/licenses/>.
 $END_LICENSE */
 
 #include "fontutils.h"
+#ifdef APP_MAC
+#include "macutils.h"
+#endif
 
 namespace {
 
@@ -30,14 +33,13 @@ QFont createFont(bool isBold, double sizeScale) {
 }
 
 QFont createFontWithMinSize(bool isBold, double sizeScale) {
-    const int MIN_PIXEL_SIZE = 12;
+    const int minPixels = 11;
     QFont font = createFont(isBold, sizeScale);
-    if (font.pixelSize() < MIN_PIXEL_SIZE)
-        font.setPixelSize(MIN_PIXEL_SIZE);
+    if (font.pixelSize() < minPixels) font.setPixelSize(minPixels);
     return font;
 }
 
-}
+} // namespace
 
 const QFont &FontUtils::small() {
     static const QFont font = createFontWithMinSize(false, .9);
@@ -50,12 +52,12 @@ const QFont &FontUtils::smallBold() {
 }
 
 const QFont &FontUtils::medium() {
-    static const QFont font = createFont(false, 1.1);
+    static const QFont font = createFont(false, 1.15);
     return font;
 }
 
 const QFont &FontUtils::mediumBold() {
-    static const QFont font = createFont(true, 1.1);
+    static const QFont font = createFont(true, 1.15);
     return font;
 }
 
@@ -68,3 +70,18 @@ const QFont &FontUtils::bigBold() {
     static const QFont font = createFont(true, 1.5);
     return font;
 }
+
+QFont FontUtils::light(int pointSize) {
+#ifdef APP_MAC
+    QVariant v = mac::lightFont(pointSize);
+    if (!v.isNull()) return qvariant_cast<QFont>(v);
+#endif
+    QFont f;
+#ifdef APP_WIN
+    f.setFamily(QStringLiteral("Segoe UI Light"));
+#endif
+    f.setPointSize(pointSize);
+    f.setStyleName(QStringLiteral("Light"));
+    f.setWeight(QFont::Light);
+    return f;
+}