change: minor fixes.

This commit is contained in:
Nomango 2018-10-16 16:53:08 +08:00
parent 155cd0b211
commit 75440b15a2
6 changed files with 75 additions and 75 deletions

View File

@ -23,46 +23,13 @@
namespace easy2d
{
class MediaAsyncCallback : public IMFAsyncCallback
{
public:
MediaAsyncCallback(
HWND hwnd,
IMFMediaSession * pSession,
HANDLE hCloseEvent
);
// IUnknown methods
STDMETHODIMP QueryInterface(REFIID iid, void** ppv);
STDMETHODIMP_(ULONG) AddRef();
STDMETHODIMP_(ULONG) Release();
// IMFAsyncCallback methods
STDMETHODIMP GetParameters(DWORD*, DWORD*);
STDMETHODIMP Invoke(IMFAsyncResult* pAsyncResult);
protected:
long m_nRefCount;
IMFMediaSession * m_pSession;
HWND m_hwnd;
HANDLE m_hCloseEvent;
};
// ÎÄ×ÖäÖȾÆ÷
class E2DTextRenderer
class TextRenderer
: public IDWriteTextRenderer
{
private:
E2DTextRenderer();
~E2DTextRenderer();
public:
static HRESULT Create(
E2DTextRenderer** ppTextRenderer,
TextRenderer** ppTextRenderer,
ID2D1Factory* pD2DFactory,
ID2D1HwndRenderTarget* pRT,
ID2D1SolidColorBrush* pBrush
@ -135,6 +102,11 @@ namespace easy2d
void** ppvObject
);
private:
TextRenderer();
~TextRenderer();
private:
unsigned long cRefCount_;
D2D1_COLOR_F sFillColor_;
@ -144,7 +116,7 @@ namespace easy2d
ID2D1Factory* pD2DFactory_;
ID2D1HwndRenderTarget* pRT_;
ID2D1SolidColorBrush* pBrush_;
ID2D1StrokeStyle * pCurrStrokeStyle_;
ID2D1StrokeStyle* pCurrStrokeStyle_;
};
@ -171,7 +143,7 @@ namespace easy2d
{
if (FAILED(hr))
{
// 在此处设置断点以捕获 D2D API 异常.
// 在此处设置断点以捕获系统异常.
static char s_str[64] = {};
sprintf_s(s_str, "Failure with HRESULT of %08X", static_cast<unsigned int>(hr));
throw RuntimeException(s_str);

View File

@ -62,7 +62,7 @@ namespace easy2d
ID2D1SolidColorBrush * GetSolidBrush() const;
// 获取文字渲染工具
E2DTextRenderer * GetTextRender() const;
TextRenderer * GetTextRender() const;
// 获取 Miter 样式的 ID2D1StrokeStyle
ID2D1StrokeStyle * GetMiterStrokeStyle();
@ -84,7 +84,7 @@ namespace easy2d
ID2D1StrokeStyle* miter_stroke_style_;
ID2D1StrokeStyle* bevel_stroke_style_;
ID2D1StrokeStyle* round_stroke_style_;
E2DTextRenderer* text_renderer_;
TextRenderer* text_renderer_;
IDWriteTextFormat* fps_text_format_;
IDWriteTextLayout* fps_text_layout_;
ID2D1SolidColorBrush* solid_brush_;

View File

@ -75,6 +75,14 @@ namespace easy2d
public:
Music();
Music(
const easy2d::String& file_path /* 稜있匡숭쨌쓺 */
);
Music(
const Resource& res /* 稜있栗都 */
);
virtual ~Music();
// 打开音乐文件
@ -84,7 +92,7 @@ namespace easy2d
// 打开音乐资源
bool Load(
const Resource& res
const Resource& res /* 稜있栗都 */
);
// 播放

View File

@ -23,7 +23,7 @@
using namespace easy2d;
E2DTextRenderer::E2DTextRenderer()
TextRenderer::TextRenderer()
: cRefCount_(0)
, pD2DFactory_(nullptr)
, pRT_(nullptr)
@ -36,21 +36,21 @@ E2DTextRenderer::E2DTextRenderer()
{
}
E2DTextRenderer::~E2DTextRenderer()
TextRenderer::~TextRenderer()
{
SafeRelease(pD2DFactory_);
SafeRelease(pRT_);
SafeRelease(pBrush_);
}
HRESULT E2DTextRenderer::Create(
E2DTextRenderer** ppTextRenderer,
HRESULT TextRenderer::Create(
TextRenderer** ppTextRenderer,
ID2D1Factory* pD2DFactory,
ID2D1HwndRenderTarget* pRT,
ID2D1SolidColorBrush* pBrush
)
{
*ppTextRenderer = new (std::nothrow) E2DTextRenderer();
*ppTextRenderer = new (std::nothrow) TextRenderer();
if (*ppTextRenderer)
{
pD2DFactory->AddRef();
@ -66,7 +66,7 @@ HRESULT E2DTextRenderer::Create(
return E_FAIL;
}
STDMETHODIMP_(void) E2DTextRenderer::SetTextStyle(
STDMETHODIMP_(void) TextRenderer::SetTextStyle(
CONST D2D1_COLOR_F &fillColor,
BOOL outline,
CONST D2D1_COLOR_F &outline_color,
@ -96,7 +96,7 @@ STDMETHODIMP_(void) E2DTextRenderer::SetTextStyle(
}
}
STDMETHODIMP E2DTextRenderer::DrawGlyphRun(
STDMETHODIMP TextRenderer::DrawGlyphRun(
__maybenull void* clientDrawingContext,
FLOAT baselineOriginX,
FLOAT baselineOriginY,
@ -185,7 +185,7 @@ STDMETHODIMP E2DTextRenderer::DrawGlyphRun(
return hr;
}
STDMETHODIMP E2DTextRenderer::DrawUnderline(
STDMETHODIMP TextRenderer::DrawUnderline(
__maybenull void* clientDrawingContext,
FLOAT baselineOriginX,
FLOAT baselineOriginY,
@ -252,7 +252,7 @@ STDMETHODIMP E2DTextRenderer::DrawUnderline(
return S_OK;
}
STDMETHODIMP E2DTextRenderer::DrawStrikethrough(
STDMETHODIMP TextRenderer::DrawStrikethrough(
__maybenull void* clientDrawingContext,
FLOAT baselineOriginX,
FLOAT baselineOriginY,
@ -319,7 +319,7 @@ STDMETHODIMP E2DTextRenderer::DrawStrikethrough(
return S_OK;
}
STDMETHODIMP E2DTextRenderer::DrawInlineObject(
STDMETHODIMP TextRenderer::DrawInlineObject(
__maybenull void* clientDrawingContext,
FLOAT originX,
FLOAT originY,
@ -332,12 +332,12 @@ STDMETHODIMP E2DTextRenderer::DrawInlineObject(
return E_NOTIMPL;
}
STDMETHODIMP_(unsigned long) E2DTextRenderer::AddRef()
STDMETHODIMP_(unsigned long) TextRenderer::AddRef()
{
return InterlockedIncrement(&cRefCount_);
}
STDMETHODIMP_(unsigned long) E2DTextRenderer::Release()
STDMETHODIMP_(unsigned long) TextRenderer::Release()
{
unsigned long newCount = InterlockedDecrement(&cRefCount_);
@ -350,7 +350,7 @@ STDMETHODIMP_(unsigned long) E2DTextRenderer::Release()
return newCount;
}
STDMETHODIMP E2DTextRenderer::IsPixelSnappingDisabled(
STDMETHODIMP TextRenderer::IsPixelSnappingDisabled(
__maybenull void* clientDrawingContext,
__out BOOL* isDisabled
)
@ -359,7 +359,7 @@ STDMETHODIMP E2DTextRenderer::IsPixelSnappingDisabled(
return S_OK;
}
STDMETHODIMP E2DTextRenderer::GetCurrentTransform(
STDMETHODIMP TextRenderer::GetCurrentTransform(
__maybenull void* clientDrawingContext,
__out DWRITE_MATRIX* transform
)
@ -368,7 +368,7 @@ STDMETHODIMP E2DTextRenderer::GetCurrentTransform(
return S_OK;
}
STDMETHODIMP E2DTextRenderer::GetPixelsPerDip(
STDMETHODIMP TextRenderer::GetPixelsPerDip(
__maybenull void* clientDrawingContext,
__out FLOAT* pixelsPerDip
)
@ -381,7 +381,7 @@ STDMETHODIMP E2DTextRenderer::GetPixelsPerDip(
return S_OK;
}
STDMETHODIMP E2DTextRenderer::QueryInterface(
STDMETHODIMP TextRenderer::QueryInterface(
IID const& riid,
void** ppvObject
)

View File

@ -92,7 +92,7 @@ easy2d::Graphics::Graphics(HWND hwnd)
// 创建自定义的文字渲染器
ThrowIfFailed(
E2DTextRenderer::Create(
TextRenderer::Create(
&text_renderer_,
factory_,
render_target_,
@ -223,7 +223,7 @@ ID2D1SolidColorBrush * easy2d::Graphics::GetSolidBrush() const
return solid_brush_;
}
easy2d::E2DTextRenderer * easy2d::Graphics::GetTextRender() const
easy2d::TextRenderer * easy2d::Graphics::GetTextRender() const
{
return text_renderer_;
}

View File

@ -37,7 +37,7 @@ inline bool TraceError(wchar_t* prompt, HRESULT hr)
namespace easy2d
{
// 音频解码器
class Transcoder
{
WAVEFORMATEX* wave_format_;
@ -324,6 +324,26 @@ easy2d::Music::Music()
{
}
easy2d::Music::Music(const easy2d::String& file_path)
: opened_(false)
, playing_(false)
, wave_data_(nullptr)
, size_(0)
, voice_(nullptr)
{
Load(file_path);
}
easy2d::Music::Music(const Resource& res)
: opened_(false)
, playing_(false)
, wave_data_(nullptr)
, size_(0)
, voice_(nullptr)
{
Load(res);
}
easy2d::Music::~Music()
{
Close();