aboutsummaryrefslogtreecommitdiff
path: root/Src/installer/shared/scripts/system.nsh
diff options
context:
space:
mode:
authorJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
committerJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
commit20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (patch)
tree12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/installer/shared/scripts/system.nsh
parent537bcbc86291b32fc04ae4133ce4d7cac8ebe9a7 (diff)
downloadwinamp-20d28e80a5c861a9d5f449ea911ab75b4f37ad0d.tar.gz
Initial community commit
Diffstat (limited to 'Src/installer/shared/scripts/system.nsh')
-rw-r--r--Src/installer/shared/scripts/system.nsh431
1 files changed, 431 insertions, 0 deletions
diff --git a/Src/installer/shared/scripts/system.nsh b/Src/installer/shared/scripts/system.nsh
new file mode 100644
index 00000000..763e6419
--- /dev/null
+++ b/Src/installer/shared/scripts/system.nsh
@@ -0,0 +1,431 @@
+!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)
+