Mercurial > foo_out_sdl
view foosdk/sdk/foobar2000/shared/win32_misc.h @ 1:20d02a178406 default tip
*: check in everything else
yay
| author | Paper <paper@tflc.us> |
|---|---|
| date | Mon, 05 Jan 2026 02:15:46 -0500 |
| parents | |
| children |
line wrap: on
line source
#pragma once class win32_font { public: win32_font(HFONT p_initval) : m_font(p_initval) {} win32_font() : m_font(NULL) {} ~win32_font() {release();} void release() { HFONT temp = detach(); if (temp != NULL) DeleteObject(temp); } void set(HFONT p_font) {release(); m_font = p_font;} HFONT get() const {return m_font;} HFONT detach() {return pfc::replace_t(m_font,(HFONT)NULL);} void create(const t_font_description & p_desc) { SetLastError(NO_ERROR); HFONT temp = p_desc.create(); if (temp == NULL) throw exception_win32(GetLastError()); set(temp); } bool is_valid() const {return m_font != NULL;} private: win32_font(const win32_font&) = delete; void operator=(const win32_font &) = delete; HFONT m_font; };
