BFont: remove default values from ambiguous method
Noticed by Joachim Mairböck after I hastily merged change 7402. Also add named variation instance selection for fonts loaded from memory areas like there already is for files. Change-Id: I76de22181dc39559956c25987165be2f8a8c4a37 Reviewed-on: https://review.haiku-os.org/c/haiku/+/7493 Tested-by: Commit checker robot <[email protected]> Reviewed-by: Jérôme Duval <[email protected]>
This commit is contained in:
committed by
nephele nephele
parent
993468cc20
commit
a31ade72ce
@@ -287,7 +287,7 @@ public:
|
|||||||
status_t LoadFont(const area_id fontAreaID,
|
status_t LoadFont(const area_id fontAreaID,
|
||||||
size_t size = 0, size_t offset = 0);
|
size_t size = 0, size_t offset = 0);
|
||||||
status_t LoadFont(const area_id fontAreaID,
|
status_t LoadFont(const area_id fontAreaID,
|
||||||
size_t size = 0, size_t offset = 0, uint16 index = 0);
|
size_t size, size_t offset, uint16 index, uint16 instance);
|
||||||
status_t UnloadFont();
|
status_t UnloadFont();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
@@ -1489,12 +1489,12 @@ BFont::LoadFont(const char* path, uint16 index, uint16 instance)
|
|||||||
status_t
|
status_t
|
||||||
BFont::LoadFont(const area_id fontAreaID, size_t size, size_t offset)
|
BFont::LoadFont(const area_id fontAreaID, size_t size, size_t offset)
|
||||||
{
|
{
|
||||||
return LoadFont(fontAreaID, size, offset, 0);
|
return LoadFont(fontAreaID, size, offset, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
status_t
|
status_t
|
||||||
BFont::LoadFont(const area_id fontAreaID, size_t size, size_t offset, uint16 index)
|
BFont::LoadFont(const area_id fontAreaID, size_t size, size_t offset, uint16 index, uint16 instance)
|
||||||
{
|
{
|
||||||
BPrivate::AppServerLink link;
|
BPrivate::AppServerLink link;
|
||||||
|
|
||||||
@@ -1504,6 +1504,7 @@ BFont::LoadFont(const area_id fontAreaID, size_t size, size_t offset, uint16 ind
|
|||||||
link.Attach<size_t>(size);
|
link.Attach<size_t>(size);
|
||||||
link.Attach<size_t>(offset);
|
link.Attach<size_t>(offset);
|
||||||
link.Attach<uint16>(index);
|
link.Attach<uint16>(index);
|
||||||
|
link.Attach<uint16>(instance);
|
||||||
|
|
||||||
status_t status = B_ERROR;
|
status_t status = B_ERROR;
|
||||||
if (link.FlushWithReply(status) != B_OK || status != B_OK) {
|
if (link.FlushWithReply(status) != B_OK || status != B_OK) {
|
||||||
|
|||||||
@@ -1638,6 +1638,7 @@ ServerApp::_DispatchMessage(int32 code, BPrivate::LinkReceiver& link)
|
|||||||
// 2) size_t - size of memory area for font
|
// 2) size_t - size of memory area for font
|
||||||
// 3) size_t - offset to start of font memory
|
// 3) size_t - offset to start of font memory
|
||||||
// 4) uint16 - index in font buffer
|
// 4) uint16 - index in font buffer
|
||||||
|
// 5) uint16 - instance
|
||||||
|
|
||||||
// Returns:
|
// Returns:
|
||||||
// 1) uint16 - family ID of added font
|
// 1) uint16 - family ID of added font
|
||||||
@@ -1656,12 +1657,13 @@ ServerApp::_DispatchMessage(int32 code, BPrivate::LinkReceiver& link)
|
|||||||
area_info fontAreaInfo;
|
area_info fontAreaInfo;
|
||||||
char* area_addr;
|
char* area_addr;
|
||||||
size_t size, offset;
|
size_t size, offset;
|
||||||
uint16 index;
|
uint16 index, instance;
|
||||||
|
|
||||||
link.Read<int32>(&fontAreaID);
|
link.Read<int32>(&fontAreaID);
|
||||||
link.Read<size_t>(&size);
|
link.Read<size_t>(&size);
|
||||||
link.Read<size_t>(&offset);
|
link.Read<size_t>(&offset);
|
||||||
link.Read<uint16>(&index);
|
link.Read<uint16>(&index);
|
||||||
|
link.Read<uint16>(&instance);
|
||||||
fontAreaCloneID = clone_area("user font",
|
fontAreaCloneID = clone_area("user font",
|
||||||
(void **)&area_addr,
|
(void **)&area_addr,
|
||||||
B_ANY_ADDRESS,
|
B_ANY_ADDRESS,
|
||||||
@@ -1710,7 +1712,7 @@ ServerApp::_DispatchMessage(int32 code, BPrivate::LinkReceiver& link)
|
|||||||
|
|
||||||
uint16 familyID, styleID;
|
uint16 familyID, styleID;
|
||||||
|
|
||||||
status = fAppFontManager->AddUserFontFromMemory(fontData, size, index,
|
status = fAppFontManager->AddUserFontFromMemory(fontData, size, index, instance,
|
||||||
familyID, styleID);
|
familyID, styleID);
|
||||||
|
|
||||||
if (status != B_OK) {
|
if (status != B_OK) {
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ AppFontManager::AddUserFontFromFile(const char* path, uint16 index, uint16 insta
|
|||||||
*/
|
*/
|
||||||
status_t
|
status_t
|
||||||
AppFontManager::AddUserFontFromMemory(const FT_Byte* fontAddress, size_t size, uint16 index,
|
AppFontManager::AddUserFontFromMemory(const FT_Byte* fontAddress, size_t size, uint16 index,
|
||||||
uint16& familyID, uint16& styleID)
|
uint16 instance, uint16& familyID, uint16& styleID)
|
||||||
{
|
{
|
||||||
ASSERT(IsLocked());
|
ASSERT(IsLocked());
|
||||||
|
|
||||||
@@ -87,8 +87,8 @@ AppFontManager::AddUserFontFromMemory(const FT_Byte* fontAddress, size_t size, u
|
|||||||
status_t status;
|
status_t status;
|
||||||
|
|
||||||
FT_Face face;
|
FT_Face face;
|
||||||
FT_Error error = FT_New_Memory_Face(gFreeTypeLibrary, fontAddress, size, index,
|
FT_Error error = FT_New_Memory_Face(gFreeTypeLibrary, fontAddress, size,
|
||||||
&face);
|
index | (instance << 16), &face);
|
||||||
if (error != 0)
|
if (error != 0)
|
||||||
return B_ERROR;
|
return B_ERROR;
|
||||||
|
|
||||||
|
|||||||
@@ -40,7 +40,8 @@ public:
|
|||||||
status_t AddUserFontFromFile(const char* path, uint16 index, uint16 instance,
|
status_t AddUserFontFromFile(const char* path, uint16 index, uint16 instance,
|
||||||
uint16& familyID, uint16& styleID);
|
uint16& familyID, uint16& styleID);
|
||||||
status_t AddUserFontFromMemory(const FT_Byte* fontAddress, size_t size,
|
status_t AddUserFontFromMemory(const FT_Byte* fontAddress, size_t size,
|
||||||
uint16 index, uint16& familyID, uint16& styleID);
|
uint16 index, uint16 instance,
|
||||||
|
uint16& familyID, uint16& styleID);
|
||||||
status_t RemoveUserFont(uint16 familyID, uint16 styleID);
|
status_t RemoveUserFont(uint16 familyID, uint16 styleID);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
Reference in New Issue
Block a user