mirror of
https://github.com/duilib/duilib.git
synced 2026-10-16 21:51:33 +08:00
115 lines
3.0 KiB
C++
115 lines
3.0 KiB
C++
#ifndef __UILABEL_H__
|
|
#define __UILABEL_H__
|
|
|
|
#pragma once
|
|
|
|
#define _USE_GDIPLUS 1
|
|
|
|
#ifdef _USE_GDIPLUS
|
|
#include <GdiPlus.h>
|
|
#pragma comment( lib, "GdiPlus.lib" )
|
|
// UMU: DO NOT use "using namespace" in .h file
|
|
//using namespace Gdiplus;
|
|
class DUILIB_API Gdiplus::RectF;
|
|
struct DUILIB_API Gdiplus::GdiplusStartupInput;
|
|
|
|
using Gdiplus::RectF;
|
|
using Gdiplus::GdiplusStartupInput;
|
|
#endif
|
|
|
|
|
|
namespace DuiLib
|
|
{
|
|
class DUILIB_API CLabelUI : public CControlUI
|
|
{
|
|
public:
|
|
CLabelUI();
|
|
~CLabelUI();
|
|
|
|
LPCTSTR GetClass() const;
|
|
LPVOID GetInterface(LPCTSTR pstrName);
|
|
|
|
void SetFixedWidth(int cx);
|
|
void SetFixedHeight(int cy);
|
|
void SetText(LPCTSTR pstrText);
|
|
|
|
void SetTextStyle(UINT uStyle);
|
|
UINT GetTextStyle() const;
|
|
bool IsMultiLine();
|
|
void SetMultiLine(bool bMultiLine = true);
|
|
void SetTextColor(DWORD dwTextColor);
|
|
DWORD GetTextColor() const;
|
|
void SetDisabledTextColor(DWORD dwTextColor);
|
|
DWORD GetDisabledTextColor() const;
|
|
void SetFont(int index);
|
|
int GetFont() const;
|
|
RECT GetTextPadding() const;
|
|
void SetTextPadding(RECT rc);
|
|
bool IsShowHtml();
|
|
void SetShowHtml(bool bShowHtml = true);
|
|
|
|
SIZE EstimateSize(SIZE szAvailable);
|
|
void DoEvent(TEventUI& event);
|
|
void SetAttribute(LPCTSTR pstrName, LPCTSTR pstrValue);
|
|
|
|
void PaintText(HDC hDC);
|
|
|
|
#ifdef _USE_GDIPLUS
|
|
void SetEnabledEffect(bool _EnabledEffect);
|
|
bool GetEnabledEffect();
|
|
void SetEnabledLuminous(bool bEnableLuminous);
|
|
bool GetEnabledLuminous();
|
|
void SetLuminousFuzzy(float fFuzzy);
|
|
float GetLuminousFuzzy();
|
|
void SetGradientLength(int _GradientLength);
|
|
int GetGradientLength();
|
|
void SetShadowOffset(int _offset,int _angle);
|
|
RectF GetShadowOffset();
|
|
void SetTextColor1(DWORD _TextColor1);
|
|
DWORD GetTextColor1();
|
|
void SetTextShadowColorA(DWORD _TextShadowColorA);
|
|
DWORD GetTextShadowColorA();
|
|
void SetTextShadowColorB(DWORD _TextShadowColorB);
|
|
DWORD GetTextShadowColorB();
|
|
void SetStrokeColor(DWORD _StrokeColor);
|
|
DWORD GetStrokeColor();
|
|
void SetGradientAngle(int _SetGradientAngle);
|
|
int GetGradientAngle();
|
|
void SetEnabledStroke(bool _EnabledStroke);
|
|
bool GetEnabledStroke();
|
|
void SetEnabledShadow(bool _EnabledShadowe);
|
|
bool GetEnabledShadow();
|
|
#endif
|
|
|
|
protected:
|
|
LPWSTR m_pWideText;
|
|
DWORD m_dwTextColor;
|
|
DWORD m_dwDisabledTextColor;
|
|
int m_iFont;
|
|
UINT m_uTextStyle;
|
|
RECT m_rcTextPadding;
|
|
bool m_bShowHtml;
|
|
SIZE m_szAvailableLast;
|
|
SIZE m_cxyFixedLast;
|
|
bool m_bNeedEstimateSize;
|
|
|
|
float m_fLuminousFuzzy;
|
|
int m_GradientLength;
|
|
int m_GradientAngle;
|
|
bool m_EnableEffect;
|
|
bool m_bEnableLuminous;
|
|
bool m_EnabledStroke;
|
|
bool m_EnabledShadow;
|
|
DWORD m_dwTextColor1;
|
|
DWORD m_dwTextShadowColorA;
|
|
DWORD m_dwTextShadowColorB;
|
|
DWORD m_dwStrokeColor;
|
|
RectF m_ShadowOffset;
|
|
ULONG_PTR m_gdiplusToken;
|
|
#ifdef _USE_GDIPLUS
|
|
GdiplusStartupInput m_gdiplusStartupInput;
|
|
#endif
|
|
};
|
|
}
|
|
|
|
#endif // __UILABEL_H__
|