⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 osdcommctrl.h

📁 MiniWinOuterSM MiniWinOuterSM
💻 H
📖 第 1 页 / 共 5 页
字号:
} COLORSCHEME, *LPCOLORSCHEME;

/**************************************************************************
 *  Drag List control
 */

typedef struct tagDRAGLISTINFO
{
    UINT  uNotification;
    HWND  hWnd;
    POINT ptCursor;
} DRAGLISTINFO, *LPDRAGLISTINFO;

#define DL_BEGINDRAG            (WM_USER+133)
#define DL_DRAGGING             (WM_USER+134)
#define DL_DROPPED              (WM_USER+135)
#define DL_CANCELDRAG           (WM_USER+136)

#define DL_CURSORSET            0
#define DL_STOPCURSOR           1
#define DL_COPYCURSOR           2
#define DL_MOVECURSOR           3

#define DRAGLISTMSGSTRING      "commctrl_DragListMsg"

BOOL WINAPI MakeDragList (HWND);
VOID   WINAPI DrawInsert (HWND, HWND, INT);
INT  WINAPI LBItemFromPt (HWND, POINT, BOOL);


/* UpDown */

#define UPDOWN_CLASS           "msctls_updown32"

typedef struct _UDACCEL
{
    UINT nSec;
    UINT nInc;
} UDACCEL, *LPUDACCEL;

#define UD_MAXVAL          0x7fff
#define UD_MINVAL          0x8001

#define UDS_WRAP           0x0001
#define UDS_SETBUDDYINT    0x0002
#define UDS_ALIGNRIGHT     0x0004
#define UDS_ALIGNLEFT      0x0008
#define UDS_AUTOBUDDY      0x0010
#define UDS_ARROWKEYS      0x0020
#define UDS_HORZ           0x0040
#define UDS_NOTHOUSANDS    0x0080
#define UDS_HOTTRACK       0x0100

#define UDN_FIRST          (0U-721)
#define UDN_LAST           (0U-740)
#define UDN_DELTAPOS       (UDN_FIRST-1)

#define UDM_SETRANGE       (WM_USER+101)
#define UDM_GETRANGE       (WM_USER+102)
#define UDM_SETPOS         (WM_USER+103)
#define UDM_GETPOS         (WM_USER+104)
#define UDM_SETBUDDY       (WM_USER+105)
#define UDM_GETBUDDY       (WM_USER+106)
#define UDM_SETACCEL       (WM_USER+107)
#define UDM_GETACCEL       (WM_USER+108)
#define UDM_SETBASE        (WM_USER+109)
#define UDM_GETBASE        (WM_USER+110)
#define UDM_SETRANGE32     (WM_USER+111)
#define UDM_GETRANGE32     (WM_USER+112)
#define UDM_SETUNICODEFORMAT    CCM_SETUNICODEFORMAT
#define UDM_GETUNICODEFORMAT    CCM_GETUNICODEFORMAT
#define UDM_SETPOS32       (WM_USER+113)
#define UDM_GETPOS32       (WM_USER+114)


#define NMUPDOWN    NM_UPDOWN
#define LPNMUPDOWN  LPNM_UPDOWN

typedef struct tagNM_UPDOWN
{
  NMHDR hdr;
  int iPos;
  int iDelta;
} NM_UPDOWN, *LPNM_UPDOWN;

HWND WINAPI CreateUpDownControl (DWORD, INT, INT, INT, INT,
                                   HWND, INT, HINSTANCE, HWND,
                                   INT, INT, INT);
//Select Control
#define OPS_LABELLEFT	0x00000001
#define OPS_LABELRIGHT	0x00000002
#define OPS_LABELCENTER	0x00000004
#define OPS_STYLEMASK	0x000000FF
#define OPS_OWNERDRAW	0x00000100
#define OPS_NOLABEL		0x00000200	
#define OPS_SHOWARROWALWAYS	0x00000400
#define OPS_HASSTRINGS	0x80000000
#define ODT_OPTIONS		0x10

#define OPT_INITSTORAGE		(WM_USER+120)
#define OPT_ADDSTRING		(WM_USER+121)
#define OPT_GETITEMDATA		(WM_USER+122)
#define OPT_SETITEMDATA		(WM_USER+123)
#define OPT_SELECTEITEM		(WM_USER+124)
#define OPT_GETCURSEL		(WM_USER+125)
#define OPT_SETCURSEL		(WM_USER+126)
#define OPT_SETLABELEWIDTH	(WM_USER+127)
#define OPT_GETLABELEWIDTH	(WM_USER+128)
#define OPN_SELCHANGE		1
#define OPN_SETFOCUS		2
#define OPN_LOSEFOCUS		4
/* Progress Bar */

#define PROGRESS_CLASS   "msctls_progress32"

#define PBM_SETRANGE        (WM_USER+1)
#define PBM_SETPOS          (WM_USER+2)
#define PBM_DELTAPOS        (WM_USER+3)
#define PBM_SETSTEP         (WM_USER+4)
#define PBM_STEPIT          (WM_USER+5)
#define PBM_SETRANGE32      (WM_USER+6)
#define PBM_GETRANGE        (WM_USER+7)
#define PBM_GETPOS          (WM_USER+8)
#define PBM_SETBARCOLOR     (WM_USER+9)
#define PBM_SETMARQUEE      (WM_USER+10)
#define PBM_SETBKCOLOR      CCM_SETBKCOLOR

#define PBS_SMOOTH          0x01
#define PBS_VERTICAL        0x04
#define PBS_MARQUEE         0x08

typedef struct
{
    INT iLow;
    INT iHigh;
} PBRANGE, *PPBRANGE;


/* ImageList */

struct _IMAGELIST;
typedef struct _IMAGELIST *HIMAGELIST;

#define CLR_NONE         0xFFFFFFFF
#define CLR_DEFAULT      0xFF000000
#define CLR_HILIGHT      CLR_DEFAULT

#define ILC_MASK          0x0001
#define ILC_COLOR         0x0000
#define ILC_COLORDDB      0x00FE
#define ILC_COLOR4        0x0004
#define ILC_COLOR8        0x0008
#define ILC_COLOR16       0x0010
#define ILC_COLOR24       0x0018
#define ILC_COLOR32       0x0020
#define ILC_PALETTE       0x0800  /* no longer supported by M$ */
#define ILC_MIRROR        0x2000
#define ILC_PERITEMMIRROR 0x8000

#define ILD_NORMAL        0x0000
#define ILD_TRANSPARENT   0x0001
#define ILD_BLEND25       0x0002
#define ILD_BLEND50       0x0004
#define ILD_MASK          0x0010
#define ILD_IMAGE         0x0020
#define ILD_ROP           0x0040
#define ILD_OVERLAYMASK   0x0F00
#define ILD_PRESERVEALPHA 0x1000
#define ILD_SCALE         0x2000
#define ILD_DPISCALE      0x4000

#define ILD_SELECTED     ILD_BLEND50
#define ILD_FOCUS        ILD_BLEND25
#define ILD_BLEND        ILD_BLEND50

#define INDEXTOOVERLAYMASK(i)  ((i)<<8)
#define INDEXTOSTATEIMAGEMASK(i) ((i)<<12)

#define ILCF_MOVE        (0x00000000)
#define ILCF_SWAP        (0x00000001)

#define ILS_NORMAL	0x0000
#define ILS_GLOW	0x0001
#define ILS_SHADOW	0x0002
#define ILS_SATURATE	0x0004
#define ILS_ALPHA	0x0008

typedef struct _IMAGEINFO
{
    HBITMAP hbmImage;
    HBITMAP hbmMask;
    INT     Unused1;
    INT     Unused2;
    RECT    rcImage;
} IMAGEINFO, *LPIMAGEINFO;


typedef struct _IMAGELISTDRAWPARAMS
{
    DWORD       cbSize;
    HIMAGELIST  himl;
    INT         i;
    HDC         hdcDst;
    INT         x;
    INT         y;
    INT         cx;
    INT         cy;
    INT         xBitmap;  /* x offest from the upperleft of bitmap */
    INT         yBitmap;  /* y offset from the upperleft of bitmap */
    COLORREF    rgbBk;
    COLORREF    rgbFg;
    UINT        fStyle;
    DWORD       dwRop;
    DWORD       fState;
    DWORD       Frame;
    DWORD       crEffect;
} IMAGELISTDRAWPARAMS, *LPIMAGELISTDRAWPARAMS;


INT      WINAPI ImageList_Add(HIMAGELIST,HBITMAP,HBITMAP);
INT      WINAPI ImageList_AddMasked(HIMAGELIST,HBITMAP,COLORREF);
BOOL     WINAPI ImageList_BeginDrag(HIMAGELIST,INT,INT,INT);
BOOL     WINAPI ImageList_Copy(HIMAGELIST,INT,HIMAGELIST,INT,UINT);
HIMAGELIST WINAPI ImageList_Create(INT,INT,UINT,INT,INT);
BOOL     WINAPI ImageList_Destroy(HIMAGELIST);
BOOL     WINAPI ImageList_DragEnter(HWND,INT,INT);
BOOL     WINAPI ImageList_DragLeave(HWND);
BOOL     WINAPI ImageList_DragMove(INT,INT);
BOOL     WINAPI ImageList_DragShowNolock (BOOL);
BOOL     WINAPI ImageList_Draw(HIMAGELIST,INT,HDC,INT,INT,UINT);
BOOL     WINAPI ImageList_DrawEx(HIMAGELIST,INT,HDC,INT,INT,INT,
                                   INT,COLORREF,COLORREF,UINT);
BOOL     WINAPI ImageList_DrawIndirect(IMAGELISTDRAWPARAMS*);
HIMAGELIST WINAPI ImageList_Duplicate(HIMAGELIST);
VOID     WINAPI ImageList_EndDrag(VOID);
COLORREF   WINAPI ImageList_GetBkColor(HIMAGELIST);
HIMAGELIST WINAPI ImageList_GetDragImage(POINT*,POINT*);
HICON    WINAPI ImageList_GetIcon(HIMAGELIST,INT,UINT);
BOOL     WINAPI ImageList_GetIconSize(HIMAGELIST,INT*,INT*);
INT      WINAPI ImageList_GetImageCount(HIMAGELIST);
BOOL     WINAPI ImageList_GetImageInfo(HIMAGELIST,INT,IMAGEINFO*);
BOOL     WINAPI ImageList_GetImageRect(HIMAGELIST,INT,LPRECT);
HIMAGELIST WINAPI ImageList_LoadImageA(HINSTANCE,LPCSTR,INT,INT,
                                         COLORREF,UINT,UINT);
//HIMAGELIST WINAPI ImageList_LoadImageW(HINSTANCE,LPCWSTR,INT,INT,COLORREF,UINT,UINT);
#define    ImageList_LoadImage WINELIB_NAME_AW(ImageList_LoadImage)
HIMAGELIST WINAPI ImageList_Merge(HIMAGELIST,INT,HIMAGELIST,INT,INT,INT);
BOOL     WINAPI ImageList_Remove(HIMAGELIST,INT);
BOOL     WINAPI ImageList_Replace(HIMAGELIST,INT,HBITMAP,HBITMAP);
INT      WINAPI ImageList_ReplaceIcon(HIMAGELIST,INT,HICON);
COLORREF   WINAPI ImageList_SetBkColor(HIMAGELIST,COLORREF);
BOOL     WINAPI ImageList_SetDragCursorImage(HIMAGELIST,INT,INT,INT);

BOOL     WINAPI ImageList_SetIconSize(HIMAGELIST,INT,INT);
BOOL     WINAPI ImageList_SetImageCount(HIMAGELIST,UINT);
BOOL     WINAPI ImageList_SetOverlayImage(HIMAGELIST,INT,INT);

#ifdef __IStream_INTERFACE_DEFINED__
HIMAGELIST WINAPI ImageList_Read(LPSTREAM);
BOOL     WINAPI ImageList_Write(HIMAGELIST, LPSTREAM);
#endif

#define ImageList_AddIcon(himl,hicon) ImageList_ReplaceIcon(himl,-1,hicon)
#define ImageList_ExtractIcon(hi,himl,i) ImageList_GetIcon(himl,i,0)
#define ImageList_LoadBitmap(hi,lpbmp,cx,cGrow,crMask) \
  ImageList_LoadImage(hi,lpbmp,cx,cGrow,crMask,IMAGE_BITMAP,0)
#define ImageList_RemoveAll(himl) ImageList_Remove(himl,-1)


#ifndef WM_MOUSEHOVER
#define WM_MOUSEHOVER                   0x02A1
#define WM_MOUSELEAVE                   0x02A3
#endif

#ifndef TME_HOVER

#define TME_HOVER       0x00000001
#define TME_LEAVE       0x00000002
#define TME_NONCLIENT   0x00000010
#define TME_QUERY       0x40000000
#define TME_CANCEL      0x80000000


#define HOVER_DEFAULT   0xFFFFFFFF

typedef struct tagTRACKMOUSEEVENT {
    DWORD cbSize;
    DWORD dwFlags;
    HWND  hwndTrack;
    DWORD dwHoverTime;
} TRACKMOUSEEVENT, *LPTRACKMOUSEEVENT;

#endif

BOOL WINAPI _TrackMouseEvent(LPTRACKMOUSEEVENT lpEventTrack);

/* Flat Scrollbar control */

#define FLATSB_CLASS         "flatsb_class32"

#define WSB_PROP_CYVSCROLL     0x00000001L
#define WSB_PROP_CXHSCROLL     0x00000002L
#define WSB_PROP_CYHSCROLL     0x00000004L
#define WSB_PROP_CXVSCROLL     0x00000008L
#define WSB_PROP_CXHTHUMB      0x00000010L
#define WSB_PROP_CYVTHUMB      0x00000020L
#define WSB_PROP_VBKGCOLOR     0x00000040L
#define WSB_PROP_HBKGCOLOR     0x00000080L
#define WSB_PROP_VSTYLE        0x00000100L
#define WSB_PROP_HSTYLE        0x00000200L
#define WSB_PROP_WINSTYLE      0x00000400L
#define WSB_PROP_PALETTE       0x00000800L
#define WSB_PROP_MASK          0x00000FFFL

#define FSB_REGULAR_MODE       0
#define FSB_ENCARTA_MODE       1
#define FSB_FLAT_MODE          2


BOOL  WINAPI FlatSB_EnableScrollBar(HWND, INT, UINT);
BOOL  WINAPI FlatSB_ShowScrollBar(HWND, INT, BOOL);
BOOL  WINAPI FlatSB_GetScrollRange(HWND, INT, LPINT, LPINT);
BOOL  WINAPI FlatSB_GetScrollInfo(HWND, INT, LPSCROLLINFO);
INT   WINAPI FlatSB_GetScrollPos(HWND, INT);
BOOL  WINAPI FlatSB_GetScrollProp(HWND, INT, LPINT);
INT   WINAPI FlatSB_SetScrollPos(HWND, INT, INT, BOOL);
INT   WINAPI FlatSB_SetScrollInfo(HWND, INT, LPSCROLLINFO, BOOL);
INT   WINAPI FlatSB_SetScrollRange(HWND, INT, INT, INT, BOOL);
BOOL  WINAPI FlatSB_SetScrollProp(HWND, UINT, INT, BOOL);
BOOL  WINAPI InitializeFlatSB(HWND);
HRESULT WINAPI UninitializeFlatSB(HWND);

/* Subclassing stuff */
typedef LRESULT (CALLBACK *SUBCLASSPROC)(HWND, UINT, WPARAM, LPARAM, UINT, DWORD);
BOOL WINAPI SetWindowSubclass(HWND, SUBCLASSPROC, UINT, DWORD);
BOOL WINAPI GetWindowSubclass(HWND, SUBCLASSPROC, UINT, DWORD*);
BOOL WINAPI RemoveWindowSubclass(HWND, SUBCLASSPROC, UINT);
LRESULT WINAPI DefSubclassProc(HWND, UINT, WPARAM, LPARAM);

int WINAPI DrawShadowText(HDC, LPCWSTR, UINT, RECT*, DWORD, COLORREF, COLORREF, int, int);

/* Header control */

#define WC_HEADER		"SysHeader32"

#define HDS_HORZ                0x0000
#define HDS_BUTTONS             0x0002
#define HDS_HOTTRACK            0x0004
#define HDS_HIDDEN              0x0008
#define HDS_DRAGDROP            0x0040
#define HDS_FULLDRAG            0x0080
#define HDS_FILTERBAR           0x0100
#define HDS_FLAT                0x0200

#define HDI_WIDTH               0x0001
#define HDI_HEIGHT              HDI_WIDTH
#define HDI_TEXT                0x0002
#define HDI_FORMAT              0x0004
#define HDI_LPARAM              0x0008
#define HDI_BITMAP              0x0010
#define HDI_IMAGE               0x0020
#define HDI_DI_SETITEM          0x0040
#define HDI_ORDER               0x0080
#define HDI_FILTER              0x0100

#define HDF_LEFT                0x0000
#define HDF_RIGHT               0x0001
#define HDF_CENTER              0x0002
#define HDF_JUSTIFYMASK         0x0003
#define HDF_RTLREADING          0x0004

#define HDF_SORTDOWN            0x0200
#define HDF_SORTUP              0x0400
#define HDF_IMAGE               0x0800
#define HDF_BITMAP_ON_RIGHT     0x1000
#define HDF_BITMAP              0x2000
#define HDF_STRING              0x4000
#define HDF_OWNERDRAW           0x8000

#define HHT_NOWHERE             0x0001
#define HHT_ONHEADER            0x0002
#define HHT_ONDIVIDER           0x0004
#define HHT_ONDIVOPEN           0x0008
#define HHT_ONFILTER            0x0010
#define HHT_ONFILTERBUTTON      0x0020
#define HHT_ABOVE               0x0100
#define HHT_BELOW               0x0200
#define HHT_TORIGHT             0x0400
#define HHT_TOLEFT              0x0800

#define HDM_FIRST               0x1200
#define HDM_GETITEMCOUNT        (HDM_FIRST+0)
#define HDM_INSERTITEMA         (HDM_FIRST+1)
#define HDM_INSERTITEMW         (HDM_FIRST+10)
#define HDM_INSERTITEM		WINELIB_NAME_AW(HDM_INSERTITEM)
#define HDM_DELETEITEM          (HDM_FIRST+2)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -