5#ifndef CORE_FXCRT_WIN_SCOPED_SELECT_OBJECT_H_
6#define CORE_FXCRT_WIN_SCOPED_SELECT_OBJECT_H_
10#include "core/fxcrt/check.h"
22 DCHECK(oldobj_ != HGDI_ERROR);
29 [[maybe_unused]] HGDIOBJ object = SelectObject(hdc_, oldobj_);
30 DCHECK((GetObjectType(oldobj_) != OBJ_REGION && object) ||
31 (GetObjectType(oldobj_) == OBJ_REGION && object != HGDI_ERROR));
36 const HGDIOBJ oldobj_;
fxcrt::ByteString ByteString
void * GetSubstFont(const ByteString &face)
void * FindFont(int weight, bool bItalic, FX_Charset charset, int pitch_family, const ByteString &family, bool bMatchName)
static CFX_GEModule * Get()
const char ** GetUserFontPaths() const
bool EqualNoCase(ByteStringView str) const
ByteString & operator+=(const char *str)
ByteString & operator=(const char *str)
bool operator!=(const char *ptr) const
bool operator==(const WideString &other) const
static WideString FromDefANSI(ByteStringView str)
WideString(const wchar_t *ptr)
ScopedSelectObject(HDC hdc, HGDIOBJ object)
ScopedSelectObject & operator=(const ScopedSelectObject &)=delete
ScopedSelectObject(const ScopedSelectObject &)=delete
constexpr uint32_t FXBSTR_ID(uint8_t c1, uint8_t c2, uint8_t c3, uint8_t c4)
uint32_t FromBE32(uint32_t x)
bool IsUser32AndGdi32Available()
fxcrt::ByteStringView ByteStringView
fxcrt::WideString WideString