Initial community commit
This commit is contained in:
parent
537bcbc862
commit
fc06254474
16440 changed files with 4239995 additions and 2 deletions
71
Src/Plugins/General/gen_ml/skinnedheader.h
Normal file
71
Src/Plugins/General/gen_ml/skinnedheader.h
Normal file
|
@ -0,0 +1,71 @@
|
|||
#ifndef NULLOSFT_MEDIALIBRARY_SKINNED_HEADER_CONTROL_HEADER
|
||||
#define NULLOSFT_MEDIALIBRARY_SKINNED_HEADER_CONTROL_HEADER
|
||||
|
||||
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#include "./skinnedwnd.h"
|
||||
#include <commctrl.h>
|
||||
|
||||
|
||||
#ifndef HDF_SORTUP
|
||||
#define HDF_SORTUP 0x0400
|
||||
#define HDF_SORTDOWN 0x0200
|
||||
#endif // !HDF_SORTUP
|
||||
|
||||
|
||||
// size rules
|
||||
#define SHS_SIZERULE_WINDOWS 0x00 // Use windows default size rule.
|
||||
#define SHS_SIZERULE_ADJUSTONE 0x01 // Resize column and adjust adjacent column.
|
||||
#define SHS_SIZERULE_ADJUSTALL 0x03 // Resize column and adjust adjacent column when column reach minimum adjust next one.
|
||||
#define SHS_SIZERULE_PROPORTIONAL 0x02 // Resize column and adjust all columns proportionately.
|
||||
|
||||
|
||||
class SkinnedHeader : public SkinnedWnd
|
||||
{
|
||||
|
||||
protected:
|
||||
SkinnedHeader(void);
|
||||
virtual ~SkinnedHeader(void);
|
||||
|
||||
void SetHeight(INT nHeight); // if nHeight == -1 control will calculate height required to fit current font
|
||||
|
||||
protected:
|
||||
virtual BOOL Attach(HWND hwndHeader);
|
||||
virtual LRESULT WindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
virtual BOOL OnReflectedNotify(INT idCtrl, REFLECTPARAM *rParam);
|
||||
virtual BOOL OnCustomDraw(HWND hwndFrom, NMCUSTOMDRAW *pnmcd, LRESULT *pResult);
|
||||
virtual void OnSkinChanged(BOOL bNotifyChildren, BOOL bRedraw);
|
||||
virtual void OnPaint(void);
|
||||
virtual BOOL OnLayout(HDLAYOUT *pLayout);
|
||||
virtual BOOL OnSetCursor(HWND hwdCursor, UINT hitTest, UINT message);
|
||||
virtual BOOL OnBeginTrack(HWND hwndFrom, NMHEADERW *phdn, LRESULT *pResult);
|
||||
virtual BOOL OnEndTrack(HWND hwndFrom, NMHEADERW *phdn);
|
||||
virtual BOOL OnItemChanging(HWND hwndFrom, NMHEADERW *phdn, LRESULT *pResult);
|
||||
virtual BOOL OnItemChanged(HWND hwndFrom, NMHEADERW *phdn);
|
||||
virtual void OnTimer(UINT_PTR nIDEvent, TIMERPROC lpTimerFunc);
|
||||
virtual BOOL OnCursorNotify(HWND hwndFrom, NMMOUSE *pnm, LRESULT *pResult);
|
||||
virtual BOOL OnMediaLibraryIPC(INT msg, INT_PTR param, LRESULT *pResult);
|
||||
virtual LRESULT OnSetItem(INT iIndex, HDITEMW *phdItem, BOOL bUnicode);
|
||||
|
||||
private:
|
||||
void DrawHeaderItem(LPNMCUSTOMDRAW pnmcd);
|
||||
UINT SizeRuleAdjustOne(HDITEMW *phdi, INT index, UINT uMsg);
|
||||
UINT SizeRuleProportional(HDITEMW *phdi, INT index, UINT uMsg);
|
||||
void BlockRedraw(BOOL bBlock, UINT unblockDelay);
|
||||
friend BOOL SkinWindowEx(HWND hwndToSkin, INT type, UINT style);
|
||||
|
||||
public:
|
||||
static DWORD GetSortArrowSize(void);
|
||||
static BOOL DrawSortArrow(HDC hdc, RECT *prc, COLORREF rgbBk, COLORREF rgbFg, BOOL bAscending);
|
||||
static BOOL DrawCloudIcon(HDC hdc, RECT *prc, COLORREF rgbBk, COLORREF rgbFg);
|
||||
|
||||
protected:
|
||||
DWORD hdrFlags;
|
||||
DWORD hdrSizeRule;
|
||||
HCURSOR hcurNormal;
|
||||
INT cloudColumn;
|
||||
};
|
||||
|
||||
#endif // NULLOSFT_MEDIAIBRARY_SKINNED_HEADER_CONTROL_HEADER
|
Loading…
Add table
Add a link
Reference in a new issue