mirror of
https://github.com/WinampDesktop/winamp.git
synced 2024-09-24 15:54:12 +00:00
431 lines
11 KiB
Text
431 lines
11 KiB
Text
!ifndef NULLSOFT_NX_SYSTEM_NSIS_HEADER
|
|
!define NULLSOFT_NX_SYSTEM_NSIS_HEADER
|
|
|
|
; LONG left;
|
|
; LONG top;
|
|
; LONG right;
|
|
; LONG bottom;
|
|
; } RECT, *PRECT;
|
|
!ifndef stRECT
|
|
!define stRECT '(i, i, i, i) i'
|
|
!endif
|
|
|
|
;typedef struct tagSIZE
|
|
;{
|
|
; LONG cx;
|
|
; LONG cy;
|
|
;} SIZE, *PSIZE, *LPSIZE;
|
|
!ifndef stSIZE
|
|
!define stSIZE '(i, i) i'
|
|
!endif
|
|
|
|
; typedef struct tagBITMAP {
|
|
; LONG bmType;
|
|
; LONG bmWidth;
|
|
; LONG bmHeight;
|
|
; LONG bmWidthBytes;
|
|
; WORD bmPlanes;
|
|
; WORD bmBitsPixel;
|
|
; LPVOID bmBits;
|
|
; } BITMAP, *PBITMAP;
|
|
!ifndef stBITMAP
|
|
!define stBITMAP '(i, i, i, i, &i2, &i2, i) i'
|
|
!endif
|
|
|
|
;typedef struct _ICONINFO {
|
|
; BOOL fIcon;
|
|
; DWORD xHotspot;
|
|
; DWORD yHotspot;
|
|
; HBITMAP hbmMask;
|
|
; HBITMAP hbmColor;
|
|
;} ICONINFO, *PICONINFO;
|
|
!ifndef stICONINFO
|
|
!define stICONINFO '(i, i, i, i, i) i'
|
|
!endif
|
|
|
|
;typedef struct tagTEXTMETRICW
|
|
;{
|
|
; LONG tmHeight;
|
|
; LONG tmAscent;
|
|
; LONG tmDescent;
|
|
; LONG tmInternalLeading;
|
|
; LONG tmExternalLeading;
|
|
; LONG tmAveCharWidth;
|
|
; LONG tmMaxCharWidth;
|
|
; LONG tmWeight;
|
|
; LONG tmOverhang;
|
|
; LONG tmDigitizedAspectX;
|
|
; LONG tmDigitizedAspectY;
|
|
; WCHAR tmFirstChar;
|
|
; WCHAR tmLastChar;
|
|
; WCHAR tmDefaultChar;
|
|
; WCHAR tmBreakChar;
|
|
; BYTE tmItalic;
|
|
; BYTE tmUnderlined;
|
|
; BYTE tmStruckOut;
|
|
; BYTE tmPitchAndFamily;
|
|
; BYTE tmCharSet;
|
|
;} TEXTMETRICW
|
|
!ifndef stTEXTMETRIC
|
|
!define stTEXTMETRIC '(i, i, i, i, i, i, i, i, i, i, i, &i2, &i2, &i2, &i2, &i1, &i1, &i1, &i1, &i1) i'
|
|
!endif
|
|
|
|
;typedef struct tagLOGFONTW
|
|
;{
|
|
; LONG lfHeight;
|
|
; LONG lfWidth;
|
|
; LONG lfEscapement;
|
|
; LONG lfOrientation;
|
|
; LONG lfWeight;
|
|
; BYTE lfItalic;
|
|
; BYTE lfUnderline;
|
|
; BYTE lfStrikeOut;
|
|
; BYTE lfCharSet;
|
|
; BYTE lfOutPrecision;
|
|
; BYTE lfClipPrecision;
|
|
; BYTE lfQuality;
|
|
; BYTE lfPitchAndFamily;
|
|
; WCHAR lfFaceName[LF_FACESIZE];
|
|
;} LOGFONTW
|
|
!ifndef stLOGFONT
|
|
!define stLOGFONT '(i, i, i, i, i, &i1, &i1, &i1, &i1, &i1, &i1, &i1, &i1, &w32) i'
|
|
!endif
|
|
|
|
;typedef struct tagNMHDR {
|
|
; HWND hwndFrom;
|
|
; UINT_PTR idFrom;
|
|
; UINT code;
|
|
;} NMHDR;
|
|
!ifndef stNMHDR
|
|
!define stNMHDR '(i, i, i) i'
|
|
!endif
|
|
|
|
!ifndef NM_FIRST
|
|
!define NM_FIRST 0
|
|
!endif
|
|
|
|
!ifndef NM_CLICK
|
|
!define /math NM_CLICK ${NM_FIRST} - 2
|
|
!endif
|
|
|
|
!ifndef NM_RETURN
|
|
!define /math NM_RETURN ${NM_FIRST} - 4
|
|
!endif
|
|
|
|
; BOOL GetWindowRect(HWND hWnd,
|
|
; LPRECT lpRect)
|
|
!define fnGetWindowRect \
|
|
'User32::GetWindowRect(i, i) i'
|
|
|
|
; int MapWindowPoints(HWND hWndFrom,
|
|
; HWND hWndTo,
|
|
; LPPOINT lpPoints,
|
|
; UINT cPoints)
|
|
!define fnMapWindowPoints \
|
|
'User32::MapWindowPoints(i, i, i, i) i'
|
|
|
|
|
|
; SetWindowPos() uFlags
|
|
!define SWP_NOSIZE 0x0001
|
|
!define SWP_NOMOVE 0x0002
|
|
!define SWP_NOZORDER 0x0004
|
|
!define SWP_NOREDRAW 0x0008
|
|
!define SWP_NOACTIVATE 0x0010
|
|
!define SWP_FRAMECHANGED 0x0020
|
|
!define SWP_SHOWWINDOW 0x0040
|
|
!define SWP_HIDEWINDOW 0x0080
|
|
!define SWP_NOCOPYBITS 0x0100
|
|
!define SWP_NOOWNERZORDER 0x0200
|
|
!define SWP_NOSENDCHANGING 0x0400
|
|
!define SWP_DRAWFRAME ${SWP_FRAMECHANGED}
|
|
!define SWP_NOREPOSITION ${SWP_NOOWNERZORDER}
|
|
!define SWP_DEFERERASE 0x2000
|
|
!define SWP_ASYNCWINDOWPOS 0x4000
|
|
|
|
; BOOL SetWindowPos(HWND hWnd,
|
|
; HWND hWndInsertAfter,
|
|
; int X,
|
|
; int Y,
|
|
; int cx,
|
|
; int cy,
|
|
; UINT uFlags)
|
|
!define fnSetWindowPos \
|
|
'User32::SetWindowPos(i, i, i, i, i, i, i) i'
|
|
|
|
|
|
; GetAncestor() gaFlags
|
|
!define GA_PARENT 1
|
|
|
|
; HWND GetAncestor(HWND hwnd,
|
|
; UINT gaFlags)
|
|
!define fnGetAncestor \
|
|
'User32::GetAncestor(i, i) i'
|
|
|
|
; BOOL MapDialogRect(HWND hDlg,
|
|
; LPRECT lpRect)
|
|
!define fnMapDialogRect \
|
|
'User32::MapDialogRect(i, i) i'
|
|
|
|
; GetDCEx() flags
|
|
!define DCX_WINDOW 0x00000001
|
|
!define DCX_CACHE 0x00000002
|
|
!define DCX_NORESETATTRS 0x00000004
|
|
|
|
; HDC GetDCEx(HWND hWnd,
|
|
; HRGN hrgnClip,
|
|
; DWORD flags)
|
|
!define fnGetDCEx \
|
|
'User32::GetDCEx(i, i, i ) i'
|
|
|
|
; DrawText uFormat
|
|
!define DT_CALCRECT 0x00000400
|
|
!define DT_LEFT 0x00000000
|
|
!define DT_TOP 0x00000000
|
|
!define DT_EDITCONTROL 0x00002000
|
|
!define DT_NOPREFIX 0x00000800
|
|
!define DT_SINGLELINE 0x00000020
|
|
!define DT_WORDBREAK 0x00000010
|
|
|
|
; int DrawText(HDC hDC,
|
|
; LPCTSTR lpchText,
|
|
; int nCount,
|
|
; LPRECT lpRect,
|
|
; UINT uFormat)
|
|
!define fnDrawText \
|
|
'User32::DrawText(i, t, i, i, i) i'
|
|
|
|
; int ReleaseDC(HWND hWnd,
|
|
; HDC hDC)
|
|
!define fnReleaseDC \
|
|
'User32::ReleaseDC(i, i) i'
|
|
|
|
; GetWindowLong()/SetWindowLong() nIndex
|
|
!define GWL_WNDPROC -4
|
|
!define GWL_HINSTANCE -6
|
|
!define GWL_HWNDPARENT -8
|
|
!ifndef GWL_STYLE ; defined in nsDialogs
|
|
!define GWL_STYLE -16
|
|
!endif
|
|
!ifndef GWL_EXSTYLE ; defined in nsDialogs
|
|
!define GWL_EXSTYLE -16
|
|
!endif
|
|
!define GWL_USERDATA -21
|
|
!define GWL_ID -12
|
|
|
|
; LONG GetWindowLong(HWND hWnd,
|
|
; int nIndex)
|
|
!define fnGetWindowLong \
|
|
'User32::GetWindowLong(i, i) i'
|
|
|
|
; LONG SetWindowLong(HWND hWnd,
|
|
; int nIndex
|
|
; LONG dwNewLong)
|
|
!define fnSetWindowLong \
|
|
'User32::SetWindowLong(i, i, i) i'
|
|
|
|
; int GetWindowText(HWND hWnd,
|
|
; LPTSTR lpString,
|
|
; int nMaxCount)
|
|
!define fnGetWindowText \
|
|
'User32::GetWindowText(i, t, i) i'
|
|
|
|
; BOOL SetWindowText(HWND hWnd,
|
|
; LPCTSTR lpString)
|
|
!define fnSetWindowText \
|
|
'User32::SetWindowText(i, t) i'
|
|
|
|
;HGDIOBJ SelectObject(HDC hdc,
|
|
; HGDIOBJ hgdiobj)
|
|
!define fnSelectObject \
|
|
'GDI32::SelectObject(i, i) i'
|
|
|
|
;BOOL GetTextMetrics(HDC hdc,
|
|
; LPTEXTMETRIC lptm)
|
|
!define fnGetTextMetrics \
|
|
'GDI32::GetTextMetricsW(i, i) i'
|
|
|
|
; GetSystemMetrics()
|
|
!define SM_CXSCREEN 0
|
|
!define SM_CYSCREEN 1
|
|
!define SM_CXVSCROLL 2
|
|
!define SM_CYHSCROLL 3
|
|
!define SM_CYCAPTION 4
|
|
!define SM_CXBORDER 5
|
|
!define SM_CYBORDER 6
|
|
!define SM_CXDLGFRAME 7
|
|
!define SM_CYDLGFRAME 8
|
|
!define SM_CYVTHUMB 9
|
|
!define SM_CXHTHUMB 10
|
|
!define SM_CXICON 11
|
|
!define SM_CYICON 12
|
|
!define SM_CXCURSOR 13
|
|
!define SM_CYCURSOR 14
|
|
!define SM_CYMENU 15
|
|
!define SM_CXFULLSCREEN 16
|
|
!define SM_CYFULLSCREEN 17
|
|
!define SM_CYKANJIWINDOW 18
|
|
!define SM_MOUSEPRESENT 19
|
|
!define SM_CYVSCROLL 20
|
|
!define SM_CXHSCROLL 21
|
|
!define SM_DEBUG 22
|
|
!define SM_SWAPBUTTON 23
|
|
!define SM_RESERVED1 24
|
|
!define SM_RESERVED2 25
|
|
!define SM_RESERVED3 26
|
|
!define SM_RESERVED4 27
|
|
!define SM_CXMIN 28
|
|
!define SM_CYMIN 29
|
|
!define SM_CXSIZE 30
|
|
!define SM_CYSIZE 31
|
|
!define SM_CXFRAME 32
|
|
!define SM_CYFRAME 33
|
|
!define SM_CXMINTRACK 34
|
|
!define SM_CYMINTRACK 35
|
|
!define SM_CXDOUBLECLK 36
|
|
!define SM_CYDOUBLECLK 37
|
|
!define SM_CXICONSPACING 38
|
|
!define SM_CYICONSPACING 39
|
|
!define SM_MENUDROPALIGNMENT 40
|
|
!define SM_PENWINDOWS 41
|
|
!define SM_DBCSENABLED 42
|
|
!define SM_CMOUSEBUTTONS 43
|
|
!define SM_CXFIXEDFRAME ${SM_CXDLGFRAME}
|
|
!define SM_CYFIXEDFRAME ${SM_CYDLGFRAME}
|
|
!define SM_CXSIZEFRAME ${SM_CXFRAME}
|
|
!define SM_CYSIZEFRAME ${SM_CYFRAME}
|
|
!define SM_SECURE 44
|
|
!define SM_CXEDGE 45
|
|
!define SM_CYEDGE 46
|
|
!define SM_CXMINSPACING 47
|
|
!define SM_CYMINSPACING 48
|
|
!define SM_CXSMICON 49
|
|
!define SM_CYSMICON 50
|
|
!define SM_CYSMCAPTION 51
|
|
!define SM_CXSMSIZE 52
|
|
!define SM_CYSMSIZE 53
|
|
!define SM_CXMENUSIZE 54
|
|
!define SM_CYMENUSIZE 55
|
|
!define SM_ARRANGE 56
|
|
!define SM_CXMINIMIZED 57
|
|
!define SM_CYMINIMIZED 58
|
|
!define SM_CXMAXTRACK 59
|
|
!define SM_CYMAXTRACK 60
|
|
!define SM_CXMAXIMIZED 61
|
|
!define SM_CYMAXIMIZED 62
|
|
!define SM_NETWORK 63
|
|
!define SM_CLEANBOOT 67
|
|
!define SM_CXDRAG 68
|
|
!define SM_CYDRAG 69
|
|
!define SM_SHOWSOUNDS 70
|
|
!define SM_CXMENUCHECK 71
|
|
!define SM_CYMENUCHECK 72
|
|
!define SM_SLOWMACHINE 73
|
|
!define SM_MIDEASTENABLED 74
|
|
!define SM_MOUSEWHEELPRESENT 75
|
|
!define SM_XVIRTUALSCREEN 76
|
|
!define SM_YVIRTUALSCREEN 77
|
|
!define SM_CXVIRTUALSCREEN 78
|
|
!define SM_CYVIRTUALSCREEN 79
|
|
!define SM_CMONITORS 80
|
|
!define SM_SAMEDISPLAYFORMAT 81
|
|
!define SM_IMMENABLED 82
|
|
!define SM_CXFOCUSBORDER 83
|
|
;!define SM_TABLETPC 86
|
|
;!define SM_MEDIACENTER 87
|
|
;!define SM_STARTER 88
|
|
;!define SM_SERVERR2 89
|
|
!define SM_MOUSEHORIZONTALWHEELPRESENT 91
|
|
!define SM_CXPADDEDBORDER 92
|
|
!define SM_DIGITIZER 94
|
|
!define SM_MAXIMUMTOUCHES 95
|
|
!define SM_REMOTESESSION 0x1000
|
|
!define SM_SHUTTINGDOWN 0x2000
|
|
!define SM_REMOTECONTROL 0x2001
|
|
!define SM_CARETBLINKINGENABLED 0x2002
|
|
!define SM_CONVERTIBLESLATEMODE 0x2003
|
|
!define SM_SYSTEMDOCKED 0x2004
|
|
|
|
;int GetSystemMetrics(int nIndex)
|
|
!define fnGetSystemMetrics \
|
|
'User32::GetSystemMetrics(i) i'
|
|
|
|
; Image types
|
|
!ifndef IMAGE_BITMAP
|
|
!define IMAGE_BITMAP 0
|
|
!endif
|
|
!ifndef IMAGE_ICON
|
|
!define IMAGE_ICON 1
|
|
!endif
|
|
!ifndef IMAGE_CURSOR
|
|
!define IMAGE_CURSOR 2
|
|
!endif
|
|
!ifndef IMAGE_ENHMETAFILE
|
|
!define IMAGE_ENHMETAFILE 3
|
|
!endif
|
|
|
|
; Load Image Flags
|
|
!ifndef LR_DEFAULTCOLOR
|
|
!define LR_DEFAULTCOLOR 0x00000000
|
|
!define LR_MONOCHROME 0x00000001
|
|
!define LR_COLOR 0x00000002
|
|
!define LR_COPYRETURNORG 0x00000004
|
|
!define LR_COPYDELETEORG 0x00000008
|
|
!define LR_LOADFROMFILE 0x00000010
|
|
!define LR_LOADTRANSPARENT 0x00000020
|
|
!define LR_DEFAULTSIZE 0x00000040
|
|
!define LR_VGACOLOR 0x00000080
|
|
!define LR_LOADMAP3DCOLORS 0x00001000
|
|
!define LR_CREATEDIBSECTION 0x00002000
|
|
!define LR_COPYFROMRESOURCE 0x00004000
|
|
!define LR_SHARED 0x00008000
|
|
!endif ; defined (LR_DEFAULTCOLOR)
|
|
|
|
; HANDLE LoadImage(HINSTANCE hinst,
|
|
; LPCTSTR lpszName,
|
|
; UINT uType,
|
|
; int cxDesired,
|
|
; int cyDesired,
|
|
; UINT fuLoad)
|
|
!define fnLoadImage \
|
|
'User32::LoadImage(i, t, i, i, i, i) i'
|
|
|
|
;BOOL DeleteObject(HGDIOBJ hObject);
|
|
!define fnDeleteObject \
|
|
'GDI32::DeleteObject(i) i'
|
|
|
|
;int GetObject(HGDIOBJ hgdiobj,
|
|
; int cbBuffer,
|
|
; LPVOID lpvObject);
|
|
!define fnGetObject \
|
|
'GDI32::GetObject(i, i, i) i'
|
|
|
|
;BOOL GetIconInfo(HICON hIcon,
|
|
; PICONINFO piconinfo)
|
|
!define fnGetIconInfo \
|
|
'User32::GetIconInfo(i, i) i'
|
|
|
|
;BOOL DestroyIcon(HICON hIcon)
|
|
!define fnDestroyIcon \
|
|
'User32::DestroyIcon(i) i'
|
|
|
|
;BOOL DestroyWindow(HWND hWnd)
|
|
!define fnDestroyWindow \
|
|
'User32::DestroyWindow(i) i'
|
|
|
|
;HWND WINAPI CreateWindowEx(DWORD dwExStyle,
|
|
; LPCTSTR lpClassName,
|
|
; LPCTSTR lpWindowName,
|
|
; DWORD dwStyle,
|
|
; int x,
|
|
; int y,
|
|
; int nWidth,
|
|
; int nHeight,
|
|
; HWND hWndParent,
|
|
; HMENU hMenu,
|
|
; HINSTANCE hInstance,
|
|
; LPVOID lpParam)
|
|
!define fnCreateWindowEx \
|
|
'User32::CreateWindowEx(i, t, t, i, i, i, i, i, i, i, i, i) i'
|
|
|
|
!endif ; defined(NULLSOFT_NX_SYSTEM_NSIS_HEADER)
|
|
|