libs-back/Source
Jeff Teunissen ecba94053d sort font faces
GNUstep's font architecture makes it extremely difficult and annoying to
have a properly sorted font panel (or even one that makes any sense at all).

This might not be the best place to implement font sorting, but I'll be
damned if I can find a better one. The font enumerator knows where to look,
and has all the information needed to do it.

So, once we've enumerated all the fonts, sort them with a function that's
only slightly more clever than alphabetizing them. We sort by these
criteria, in order of importance:

1. font weight
2. traits (numeric ordering)
3. style name, with special cases so "Regular"/"Normal"/"Roman" sort
   earlier than other stuff (caption, titling, etc.)

This sorting function seems to work about as well as can be expected,
producing the obvious "Regular"/"Italic"/"Bold"/"Bold Italic" for
undemanding families, while getting more advanced ones (like, say, the 168
font faces of Kepler Std) pretty close.
2019-03-26 03:58:18 -04:00
..
art make displayName work 2019-03-26 03:58:18 -04:00
cairo Cairo: Reduce the hilarity of the font panel 2019-03-26 03:58:18 -04:00
English.lproj Make nfont face name localization work. Add English and Swedish translations. 2003-06-28 13:32:59 +00:00
fontconfig sort font faces 2019-03-26 03:58:18 -04:00
gsc * Source/gsc/GSGState.m (-setColor:state:): Don't copy values onto themselves. 2018-12-02 12:36:28 +01:00
opal * Source/opal/OpalGState.m: Add colour handling for all the different 2019-01-03 23:06:51 +01:00
Swedish.lproj Make nfont face name localization work. Add English and Swedish translations. 2003-06-28 13:32:59 +00:00
win32 * Source/win32/WIN32Server.m (process_char): 2015-08-13 21:23:35 +00:00
winlib Remove extraneous semicolon. 2016-04-06 20:43:25 +00:00
x11 Fix memory leaks in convert.c 2018-12-31 23:42:17 +04:00
xdps Replace NSCompositeHighlight with GSCompositeHighlight and map NSCompositeHighlight onto 2012-02-18 21:10:07 +00:00
xlib Replace xlib specific font enumerator with the shared one for fontconfig. 2018-02-05 20:50:48 +01:00
.cvsignore Added missing .cvsignore files. 2004-01-07 12:04:36 +00:00
GNUmakefile Removed GNUSTEP_CORE_SOFTWARE=YES from makefiles and instead set PACKAGE_NAME=gnustep-back 2008-12-19 13:05:05 +00:00
GNUmakefile.postamble Revert library license version to 2 until applications can be converted 2008-06-10 04:12:46 +00:00
GNUmakefile.preamble fix order of use of library and header directories 2013-07-04 16:44:28 +00:00
GSBackend.m Added empty 'opal' backend. 2013-06-23 22:41:31 +00:00