xmake.repo/packages/n/noesis/latest/Include/NsGui/Fonts.h
2024-12-22 19:15:02 +08:00

47 lines
1.3 KiB
C++

////////////////////////////////////////////////////////////////////////////////////////////////////
// NoesisGUI - http://www.noesisengine.com
// Copyright (c) 2013 Noesis Technologies S.L. All Rights Reserved.
////////////////////////////////////////////////////////////////////////////////////////////////////
#ifndef __GUI_FONTS_H__
#define __GUI_FONTS_H__
#include <NsCore/Noesis.h>
#include <NsCore/Delegate.h>
#include <NsGui/CoreApi.h>
#include <NsGui/FontProperties.h>
#include <NsGui/Stream.h>
namespace Noesis
{
////////////////////////////////////////////////////////////////////////////////////////////////////
/// A Typeface is a combination of family, weight, style and stretch
////////////////////////////////////////////////////////////////////////////////////////////////////
struct Typeface
{
char familyName[128];
FontWeight weight;
FontStyle style;
FontStretch stretch;
};
namespace Fonts
{
typedef Delegate<void (const Typeface& typeface)> TypefaceCallback;
////////////////////////////////////////////////////////////////////////////////////////////////////
/// Enumerates all the Typefaces defined in the specified font file
////////////////////////////////////////////////////////////////////////////////////////////////////
NS_GUI_CORE_API void GetTypefaces(Stream* stream, TypefaceCallback callback);
}
}
#endif