/*
- * $XFree86: xc/lib/fontconfig/src/fcname.c,v 1.6 2002/06/02 21:07:57 keithp Exp $
+ * $XFree86: xc/lib/fontconfig/src/fcname.c,v 1.12 2002/08/19 19:32:05 keithp Exp $
*
* Copyright © 2000 Keith Packard, member of The XFree86 Project, Inc.
*
{ FC_FOUNDRY, FcTypeString, },
/* { FC_CORE, FcTypeBool, }, */
{ FC_ANTIALIAS, FcTypeBool, },
+ { FC_HINTING, FcTypeBool, },
+ { FC_VERTICAL_LAYOUT, FcTypeBool, },
+ { FC_AUTOHINT, FcTypeBool, },
+ { FC_GLOBAL_ADVANCE, FcTypeBool, },
/* { FC_XLFD, FcTypeString, }, */
{ FC_FILE, FcTypeString, },
{ FC_INDEX, FcTypeInteger, },
{ FC_RASTERIZER, FcTypeString, },
{ FC_OUTLINE, FcTypeBool, },
{ FC_SCALABLE, FcTypeBool, },
+ { FC_DPI, FcTypeDouble },
{ FC_RGBA, FcTypeInteger, },
{ FC_SCALE, FcTypeDouble, },
/* { FC_RENDER, FcTypeBool, },*/
{ FC_CHAR_HEIGHT, FcTypeInteger },
{ FC_MATRIX, FcTypeMatrix },
{ FC_CHARSET, FcTypeCharSet },
- { FC_LANG, FcTypeString },
+ { FC_LANG, FcTypeLangSet },
};
#define NUM_OBJECT_TYPES (sizeof _FcBaseObjectTypes / sizeof _FcBaseObjectTypes[0])
{ (FcChar8 *) "mono", "spacing", FC_MONO, },
{ (FcChar8 *) "charcell", "spacing", FC_CHARCELL, },
+ { (FcChar8 *) "none", "rgba", FC_RGBA_NONE },
{ (FcChar8 *) "rgb", "rgba", FC_RGBA_RGB, },
{ (FcChar8 *) "bgr", "rgba", FC_RGBA_BGR, },
{ (FcChar8 *) "vrgb", "rgba", FC_RGBA_VRGB },
case FcTypeCharSet:
v.u.c = FcNameParseCharSet (string);
break;
+ case FcTypeLangSet:
+ v.u.l = FcNameParseLangSet (string);
+ break;
default:
break;
}
for (;;)
{
name = FcNameFindNext (name, ":,", save, &delim);
- if (save[0] && t)
+ if (t)
{
v = FcNameConvert (t->type, save, &m);
if (!FcPatternAdd (pat, t->object, v, FcTrue))
{
- if (v.type == FcTypeCharSet)
+ switch (v.type) {
+ case FcTypeCharSet:
FcCharSetDestroy ((FcCharSet *) v.u.c);
+ break;
+ case FcTypeLangSet:
+ FcLangSetDestroy ((FcLangSet *) v.u.l);
+ break;
+ default:
+ break;
+ }
goto bail2;
}
- if (v.type == FcTypeCharSet)
+ switch (v.type) {
+ case FcTypeCharSet:
FcCharSetDestroy ((FcCharSet *) v.u.c);
+ break;
+ case FcTypeLangSet:
+ FcLangSetDestroy ((FcLangSet *) v.u.l);
+ break;
+ default:
+ break;
+ }
}
if (delim != ',')
break;
return FcNameUnparseString (buf, temp, 0);
case FcTypeCharSet:
return FcNameUnparseCharSet (buf, v.u.c);
+ case FcTypeLangSet:
+ return FcNameUnparseLangSet (buf, v.u.l);
case FcTypeFTFace:
return FcTrue;
}