mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-07-01 11:32:48 -05:00
Add platform-independent fontspec_new_default() function.
Constructing a FontSpec in platform-independent code is awkward, because you can't call fontspec_new() outside the platform subdirs (since its prototype varies per platform). But sometimes you just need _some_ valid FontSpec, e.g. to put in a Conf that will be used in some place where you don't actually care about font settings, such as a purely CLI program. Both Unix and Windows _have_ an idiom for this, but they're different, because their FontSpec constructors have different prototypes. The existing CLI tools have always had per-platform main source files, so they just use the locally appropriate method of constructing a boring don't-care FontSpec. But if you want a _platform-independent_ main source file, such as you might find in a test program, then that's rather awkward. Better to have a platform-independent API for making a default FontSpec.
This commit is contained in:
@ -11,7 +11,7 @@ FontSpec *platform_default_fontspec(const char *name)
|
||||
if (!strcmp(name, "Font"))
|
||||
return fontspec_new("Courier New", false, 10, ANSI_CHARSET);
|
||||
else
|
||||
return fontspec_new("", false, 0, 0);
|
||||
return fontspec_new_default();
|
||||
}
|
||||
|
||||
Filename *platform_default_filename(const char *name)
|
||||
|
@ -14,6 +14,11 @@ FontSpec *fontspec_new(const char *name, bool bold, int height, int charset)
|
||||
return f;
|
||||
}
|
||||
|
||||
FontSpec *fontspec_new_default(void)
|
||||
{
|
||||
return fontspec_new("", false, 0, 0);
|
||||
}
|
||||
|
||||
FontSpec *fontspec_copy(const FontSpec *f)
|
||||
{
|
||||
return fontspec_new(f->name, f->isbold, f->height, f->charset);
|
||||
|
Reference in New Issue
Block a user