haiku/headers/private/app
Dale Cieslak 85b82f8524 BFont: allow loading of user fonts from disk or memory
This patch adds an API call to BFont, called LoadFont, that
takes a string path to a font file. The user fonts are managed
via a new class called AppFontManager that inherits from the base
class FontManagerBase but adds the methods to add and remove user
fonts from disk or memory. There is also a new method called UnloadFont
to remove a user font, but on exit of an app all user fonts should be
automatically cleaned up.

Global/system fonts are managed by the GlobalFontManager, which is
a new class that also inherits from the base class FontManagerBase,
replacing the old "FontManager" class.

A maximum of 128 user fonts may be loaded, and memory fonts
may not exceed 20MB.

There's also an overloaded version of LoadFont that accepts
an area_id and loads the font from memory. A size and offset may
optionally be provided to allow for an area that contains more
than just a font.

Change-Id: I6add42bdf0c0cefc0e2e2a4984fd848c3e7269e5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4790
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2022-12-17 12:32:09 +00:00
..
ApplicationPrivate.h
AppMisc.h AppMisc: correct param name in docs, silences warning 2016-04-27 11:10:33 -07:00
AppServerLink.h
DesktopLink.h
DirectMessageTarget.h
KeyStoreDefs.h Add generic unlock key setting and removal. 2013-03-05 11:04:57 -05:00
LaunchDaemonDefs.h launch_daemon: Added basic logging facility 2018-04-25 10:10:43 +02:00
LaunchRoster.h launch_daemon: Added basic logging facility 2018-04-25 10:10:43 +02:00
LaunchRosterPrivate.h launch_daemon: Improved target support. 2015-07-22 20:41:51 +02:00
LinkReceiver.h
LinkSender.h
LooperList.h Declare BLooperListIterator in the right place. 2014-01-10 22:31:37 +01:00
MessageAdapter.h BMessage: implemented KMessage reply. 2015-05-13 23:06:51 +02:00
MessagePrivate.h BMessage: implemented KMessage reply. 2015-05-13 23:06:51 +02:00
MessageUtils.h AppKit: BMessage Add/Find/Get/Has/ReplaceNodeRef 2020-09-10 17:18:09 +00:00
MessengerPrivate.h Various whitespace cleanup only. 2015-09-05 16:09:33 +02:00
PortLink.h
RegistrarDefs.h RosterPrivate: add IsShutDownInProgress() 2019-12-21 20:32:31 +00:00
RosterPrivate.h RosterPrivate: add IsShutDownInProgress() 2019-12-21 20:32:31 +00:00
Server.h The beginnings of a launch_daemon for Haiku. 2015-07-22 20:39:47 +02:00
ServerLink.h
ServerMemoryAllocator.h
ServerProtocol.h BFont: allow loading of user fonts from disk or memory 2022-12-17 12:32:09 +00:00
ServerProtocolStructs.h View: move BAffineTransform out of ViewSetStateInfo. 2018-05-07 07:02:57 +00:00
ServerReadOnlyMemory.h Fixes Success/Failure colors in Appearance 2016-11-14 19:47:29 +01:00
SimpleMallocIO.h
TokenSpace.h