Author: jghali
Date: Sat Dec 30 20:45:43 2017
New Revision: 22312

URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=22312
Log:
refactoring of ODTIm::constructFontName()

Modified:
    trunk/Scribus/scribus/plugins/gettext/odt2im/importodt.cpp

Modified: trunk/Scribus/scribus/plugins/gettext/odt2im/importodt.cpp
URL: 
http://scribus.net/websvn/diff.php?repname=Scribus&rev=22312&path=/trunk/Scribus/scribus/plugins/gettext/odt2im/importodt.cpp
==============================================================================
--- trunk/Scribus/scribus/plugins/gettext/odt2im/importodt.cpp  (original)
+++ trunk/Scribus/scribus/plugins/gettext/odt2im/importodt.cpp  Sat Dec 30 
20:45:43 2017
@@ -1327,64 +1327,59 @@
 
 QString ODTIm::constructFontName(QString fontBaseName, QString fontStyle)
 {
-       QString fontName = "";
-       bool found = false;
+       QString fontName;
        SCFontsIterator 
it(PrefsManager::instance()->appPrefs.fontPrefs.AvailFonts);
        for ( ; it.hasNext(); it.next())
        {
-               if (fontBaseName.toLower() == it.current().family().toLower())
-               {
-                       // found the font family, now go for the style
-                       QStringList slist = 
PrefsManager::instance()->appPrefs.fontPrefs.AvailFonts.fontMap[it.current().family()];
-                       slist.sort();
-                       if (slist.count() > 0)
-                       {
-                               for (int a = 0; a < slist.count(); a++)
-                               {
-                                       if (fontStyle.toLower() == 
slist[a].toLower())
-                                       {
-                                               found = true;
-                                               fontName = 
it.current().family() + " " + slist[a];
-                                               break;
-                                       }
-                               }
-                               if (!found)
-                               {
-                                       int reInd = slist.indexOf("Regular");
-                                       if (reInd < 0)
-                                               fontName = 
it.current().family() + " " + slist[0];
-                                       else
-                                               fontName = 
it.current().family() + " " + slist[reInd];
-                                       found = true;
-                               }
-                       }
+               if (fontBaseName.toLower() != it.current().family().toLower())
+                       continue;
+
+               // found the font family, now go for the style
+               QStringList slist = 
PrefsManager::instance()->appPrefs.fontPrefs.AvailFonts.fontMap[it.current().family()];
+               slist.sort();
+               if (slist.count() > 0)
+               {
+                       for (int a = 0; a < slist.count(); a++)
+                       {
+                               if (fontStyle.toLower() == slist[a].toLower())
+                               {
+                                       fontName = it.current().family() + " " 
+ slist[a];
+                                       return fontName;
+                               }
+                       }
+                       int reInd = slist.indexOf("Regular");
+                       if (reInd < 0)
+                               fontName = it.current().family() + " " + 
slist[0];
                        else
-                       {
-                               fontName = it.current().family();
-                               found = true;
-                       }
-                       break;
-               }
-       }
-       if (!found)
-       {
-               QString family = fontBaseName;
-               if (!fontStyle.isEmpty())
-                       family += " " + fontStyle;
-               if 
(!PrefsManager::instance()->appPrefs.fontPrefs.GFontSub.contains(family))
-               {
-                       qApp->changeOverrideCursor(QCursor(Qt::ArrowCursor));
-                       QScopedPointer<MissingFont> dia(new MissingFont(0, 
family, m_Doc));
-                       if (dia->exec())
-                               fontName = dia->getReplacementFont();
-                       else
-                               fontName = m_Doc->itemToolPrefs().textFont;
-                       qApp->changeOverrideCursor(QCursor(Qt::WaitCursor));
-                       
PrefsManager::instance()->appPrefs.fontPrefs.GFontSub[family] = fontName;
+                               fontName = it.current().family() + " " + 
slist[reInd];
+                       return fontName;
                }
                else
-                       fontName = 
PrefsManager::instance()->appPrefs.fontPrefs.GFontSub[family];
-       }
+               {
+                       fontName = it.current().family();
+                       return fontName;
+               }
+       }
+
+       // Still no font found
+       QString family = fontBaseName;
+       if (!fontStyle.isEmpty())
+               family += " " + fontStyle;
+       if 
(PrefsManager::instance()->appPrefs.fontPrefs.GFontSub.contains(family))
+       {
+               fontName = 
PrefsManager::instance()->appPrefs.fontPrefs.GFontSub[family];
+               return fontName;
+       }
+
+       qApp->changeOverrideCursor(QCursor(Qt::ArrowCursor));
+       QScopedPointer<MissingFont> dia(new MissingFont(0, family, m_Doc));
+       if (dia->exec())
+               fontName = dia->getReplacementFont();
+       else
+               fontName = m_Doc->itemToolPrefs().textFont;
+       PrefsManager::instance()->appPrefs.fontPrefs.GFontSub[family] = 
fontName;
+       qApp->changeOverrideCursor(QCursor(Qt::WaitCursor));
+
        return fontName;
 }
 


_______________________________________________
scribus-commit mailing list
[email protected]
http://lists.scribus.net/mailman/listinfo/scribus-commit

Reply via email to