blob: f008e75ddeee8f0ea97a249a44c38707bbc16ece [file] [log] [blame]
<
/**
* Windows API header module
*
* Translated from MinGW API for MS-Windows 3.12
*
* License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
* Source: $(DRUNTIMESRC src/core/sys/windows/_commctrl.d)
*/
module core.sys.windows.commctrl;
version (Windows):
@system:
version (ANSI) {} else version = Unicode;
pragma(lib, "comctl32");
import core.sys.windows.w32api, core.sys.windows.windef, core.sys.windows.winuser;
import core.sys.windows.winbase; // for SYSTEMTIME
import core.sys.windows.objfwd; // for LPSTREAM
import core.sys.windows.prsht;
enum COMCTL32_VERSION = 6;
const TCHAR[]
DRAGLISTMSGSTRING = "commctrl_DragListMsg",
HOTKEY_CLASS = "msctls_hotkey32",
PROGRESS_CLASS = "msctls_progress32",
STATUSCLASSNAME = "msctls_statusbar32",
TOOLBARCLASSNAME = "ToolbarWindow32",
TOOLTIPS_CLASS = "tooltips_class32",
TRACKBAR_CLASS = "msctls_trackbar32",
UPDOWN_CLASS = "msctls_updown32",
ANIMATE_CLASS = "SysAnimate32",
DATETIMEPICK_CLASS = "SysDateTimePick32",
MONTHCAL_CLASS = "SysMonthCal32",
REBARCLASSNAME = "ReBarWindow32",
WC_COMBOBOXEX = "ComboBoxEx32",
WC_IPADDRESS = "SysIPAddress32",
WC_LISTVIEW = "SysListView32",
WC_TABCONTROL = "SysTabControl32",
WC_TREEVIEW = "SysTreeView32",
WC_HEADER = "SysHeader32",
WC_PAGESCROLLER = "SysPager",
WC_NATIVEFONTCTL = "NativeFontCtl",
WC_BUTTON = "Button",
WC_STATIC = "Static",
WC_EDIT = "Edit",
WC_LISTBOX = "ListBox",
WC_COMBOBOX = "ComboBox",
WC_SCROLLBAR = "ScrollBar",
WC_LINKA = "SysLink";
enum {
LVM_FIRST = 0x1000,
TV_FIRST = 0x1100,
HDM_FIRST = 0x1200
}
enum {
ACM_OPENA = WM_USER + 100,
ACM_PLAY = WM_USER + 101,
ACM_STOP = WM_USER + 102,
ACM_OPENW = WM_USER + 103,
ACM_ISPLAYING = WM_USER + 104
}
enum {
ACN_START = 1,
ACN_STOP
}
enum {
CBEIF_TEXT = 0x00000001,
CBEIF_IMAGE = 0x00000002,
CBEIF_SELECTEDIMAGE = 0x00000004,
CBEIF_OVERLAY = 0x00000008,
CBEIF_INDENT = 0x00000010,
CBEIF_LPARAM = 0x00000020,
CBEIF_DI_SETITEM = 0x10000000
}
enum {
RBN_FIRST = -831U,
RBN_LAST = -859U,
MCN_FIRST = -750U,
MCN_LAST = -759U,
DTN_FIRST = -760U,
DTN_LAST = -799U,
CBEN_FIRST = -800U,
CBEN_LAST = -830U
}
enum {
CBEN_INSERTITEM = CBEN_FIRST - 1,
CBEN_DELETEITEM = CBEN_FIRST - 2,
CBEN_BEGINEDIT = CBEN_FIRST - 4,
CBEN_ENDEDITA = CBEN_FIRST - 5,
CBEN_ENDEDITW = CBEN_FIRST - 6
}
enum {
CBENF_KILLFOCUS = 1,
CBENF_RETURN,
CBENF_ESCAPE,
CBENF_DROPDOWN // = 4
}
enum CBEMAXSTRLEN = 260;
enum {
DL_BEGINDRAG = 1157,
DL_CANCELDRAG = 1160,
DL_DRAGGING = 1158,
DL_DROPPED = 1159,
DL_CURSORSET = 0,
DL_STOPCURSOR = 1,
DL_COPYCURSOR = 2,
DL_MOVECURSOR = 3
}
enum {
CCS_TOP = 1,
CCS_NOMOVEY = 2,
CCS_BOTTOM = 3,
CCS_NORESIZE = 4,
CCS_NOPARENTALIGN = 8,
CCS_ADJUSTABLE = 32,
CCS_NODIVIDER = 64
}
static if (_WIN32_IE >= 0x300) {
enum {
CCS_VERT = 128,
CCS_LEFT = 129,
CCS_NOMOVEX = 130,
CCS_RIGHT = 131
}
}
enum {
ACS_CENTER = 0x0001,
ACS_TRANSPARENT = 0x0002,
ACS_AUTOPLAY = 0x0004,
ACS_TIMER = 0x0008
}
enum {
PGS_VERT = 0x00000000,
PGS_HORZ = 0x00000001,
PGS_AUTOSCROLL = 0x00000002,
PGS_DRAGNDROP = 0x00000004
}
enum CMB_MASKED = 2;
enum MINSYSCOMMAND = SC_SIZE;
enum {
SBT_OWNERDRAW = 0x1000,
SBT_NOBORDERS = 256,
SBT_POPOUT = 512,
SBT_RTLREADING = 1024
}
enum {
SB_SETTEXTA = WM_USER + 1,
SB_SETTEXTW = WM_USER + 11,
SB_GETTEXTA = WM_USER + 2,
SB_GETTEXTW = WM_USER + 13,
SB_GETTEXTLENGTHA = WM_USER + 3,
SB_GETTEXTLENGTHW = WM_USER + 12,
SB_SETPARTS = WM_USER + 4,
SB_GETPARTS = WM_USER + 6,
SB_GETBORDERS = WM_USER + 7,
SB_SETMINHEIGHT = WM_USER + 8,
SB_SIMPLE = WM_USER + 9,
SB_GETRECT = WM_USER + 10
}
enum {
MSGF_COMMCTRL_BEGINDRAG = 0x4200,
MSGF_COMMCTRL_SIZEHEADER = 0x4201,
MSGF_COMMCTRL_DRAGSELECT = 0x4202,
MSGF_COMMCTRL_TOOLBARCUST = 0x4203
}
enum {
ILC_COLOR = 0,
ILC_COLOR4 = 4,
ILC_COLOR8 = 8,
ILC_COLOR16 = 16,
ILC_COLOR24 = 24,
ILC_COLOR32 = 32,
ILC_COLORDDB = 254,
ILC_MASK = 1,
ILC_PALETTE = 2048
}
enum {
ILCF_MOVE,
ILCF_SWAP
}
enum {
ILS_NORMAL = 0,
ILS_GLOW = 1,
ILS_SHADOW = 2,
ILS_SATURATE = 4,
ILS_ALPHA = 8,
ILD_BLEND25 = 2,
ILD_BLEND50 = 4,
ILD_SELECTED = 4,
ILD_BLEND = 4,
ILD_FOCUS = 2,
ILD_MASK = 16,
ILD_NORMAL = 0,
ILD_TRANSPARENT = 1,
ILD_IMAGE = 0x0020,
ILD_ROP = 0x0040,
ILD_OVERLAYMASK = 0x0F00,
ILD_PRESERVEALPHA = 0x1000,
ILD_SCALE = 0x2000,
ILD_DPISCALE = 0x4000
}
enum {
HDS_HORZ = 0,
HDS_BUTTONS = 2,
HDS_HIDDEN = 8
}
static if (_WIN32_IE >= 0x400) {
enum {
HDS_HOTTRACK = 4,
HDS_DRAGDROP = 0x0040,
HDS_FULLDRAG = 0x0080
}
}
static if (_WIN32_IE >= 0x500) {
enum {
HDS_FILTERBAR = 0x0100
}
}
enum {
NM_FIRST = 0,
NM_LAST = -99U,
LVN_FIRST = -100U,
LVN_LAST = -199U,
HDN_FIRST = -300U,
HDN_LAST = -399U,
TVN_FIRST = -400U,
TVN_LAST = -499U,
TTN_FIRST = -520U,
TTN_LAST = -549U,
TCN_FIRST = -550U,
TCN_LAST = -580U,
CDN_FIRST = -601U, /* also in commdlg.h */
CDN_LAST = -699U,
TBN_FIRST = -700U,
TBN_LAST = -720U,
UDN_FIRST = -721U,
UDN_LAST = -740U
}
/*static if (_WIN32_IE >= 0x300) {
enum {
RBN_FIRST = -831U,
RBN_LAST = -859U,
MCN_FIRST = -750U,
MCN_LAST = -759U,
DTN_FIRST = -760U,
DTN_LAST = -799U,
CBEN_FIRST = -800U,
CBEN_LAST = -830U
}
}*/
static if (_WIN32_IE >= 0x400) {
enum {
IPN_FIRST = -860U,
IPN_LAST = -879U,
IPN_FIELDCHANGED = IPN_FIRST,
SBN_FIRST = -880U,
SBN_LAST = -899U,
PGN_FIRST = -900U,
PGN_LAST = -950U,
PGN_SCROLL = PGN_FIRST-1,
PGN_CALCSIZE = PGN_FIRST-2
}
}
static if (_WIN32_IE >= 0x500) {
enum {
WMN_FIRST = -1000U,
WMN_LAST = -1200U,
}
}
static if (_WIN32_WINNT >= 0x501)
{
enum {
BCN_FIRST = -1250U,
BCN_LAST = -1350U,
}
}
static if (_WIN32_WINNT >= 0x600)
{
enum {
TRBN_FIRST = -1501U,
TRBN_LAST = -1519U,
}
}
enum {
HDI_WIDTH = 1,
HDI_HEIGHT = 1,
HDI_TEXT = 2,
HDI_FORMAT = 4,
HDI_LPARAM = 8,
HDI_BITMAP = 16
}
static if (_WIN32_IE >= 0x300) {
enum {
HDI_IMAGE = 32,
HDI_DI_SETITEM = 64,
HDI_ORDER = 128
}
}
static if (_WIN32_IE >= 0x500) {
enum {
HDI_FILTER = 256
}
}
enum {
CBES_EX_NOEDITIMAGE = 0x00000001,
CBES_EX_NOEDITIMAGEINDENT = 0x00000002,
CBES_EX_PATHWORDBREAKPROC = 0x00000004
}
static if (_WIN32_IE >= 0x400) {
enum {
CBES_EX_NOSIZELIMIT = 0x00000008,
CBES_EX_CASESENSITIVE = 0x00000010,
CBEN_GETDISPINFOA = CBEN_FIRST - 0,
CBEN_GETDISPINFOW = CBEN_FIRST - 7,
CBEN_DRAGBEGINA = CBEN_FIRST - 8,
CBEN_DRAGBEGINW = CBEN_FIRST - 9
}
}
enum {
HDF_LEFT,
HDF_RIGHT,
HDF_CENTER,
HDF_JUSTIFYMASK,
HDF_RTLREADING, // = 4
HDF_OWNERDRAW = 0x8000,
HDF_STRING = 0x4000,
HDF_BITMAP = 0x2000
}
static if (_WIN32_IE >= 0x300) {
enum {
HDF_BITMAP_ON_RIGHT = 0x1000,
HDF_IMAGE = 0x0800
}
}
enum {
CCM_FIRST = 0x2000,
CCM_LAST = CCM_FIRST + 0x200,
CCM_SETBKCOLOR = 8193,
CCM_SETCOLORSCHEME = 8194,
CCM_GETCOLORSCHEME = 8195,
CCM_GETDROPTARGET = 8196,
CCM_SETUNICODEFORMAT = 8197,
CCM_GETUNICODEFORMAT = 8198,
CCM_SETVERSION = 0x2007,
CCM_GETVERSION = 0x2008,
CCM_SETNOTIFYWINDOW = 0x2009
}
enum {
HDM_GETITEMCOUNT = HDM_FIRST,
HDM_INSERTITEMA = HDM_FIRST + 1,
HDM_INSERTITEMW = HDM_FIRST + 10,
HDM_DELETEITEM = HDM_FIRST + 2,
HDM_GETITEMA = HDM_FIRST + 3,
HDM_GETITEMW = HDM_FIRST + 11,
HDM_SETITEMA = HDM_FIRST + 4,
HDM_SETITEMW = HDM_FIRST + 12,
HDM_LAYOUT = HDM_FIRST + 5
}
static if (_WIN32_IE >= 0x300) {
enum {
HDM_GETITEMRECT = HDM_FIRST + 7,
HDM_SETIMAGELIST = HDM_FIRST + 8,
HDM_GETIMAGELIST = HDM_FIRST + 9,
HDM_ORDERTOINDEX = HDM_FIRST + 15,
HDM_CREATEDRAGIMAGE = HDM_FIRST + 16,
HDM_GETORDERARRAY = HDM_FIRST + 17,
HDM_SETORDERARRAY = HDM_FIRST + 18,
HDM_SETHOTDIVIDER = HDM_FIRST + 19
}
}
static if (_WIN32_IE >= 0x400) {
enum {
HDM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT,
HDM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
}
}
static if (_WIN32_IE >= 0x500) {
enum {
HDM_SETBITMAPMARGIN = HDM_FIRST + 20,
HDM_GETBITMAPMARGIN = HDM_FIRST + 21,
HDM_SETFILTERCHANGETIMEOUT = HDM_FIRST + 22,
HDM_EDITFILTER = HDM_FIRST + 23,
HDM_CLEARFILTER = HDM_FIRST + 24,
}
}
static if (_WIN32_IE >= 0x600) {
enum {
HDM_GETITEMDROPDOWNRECT = HDM_FIRST + 25,
HDM_GETOVERFLOWRECT = HDM_FIRST + 26,
HDM_GETFOCUSEDITEM = HDM_FIRST + 27,
HDM_SETFOCUSEDITEM = HDM_FIRST + 28,
}
}
enum {
HHT_NOWHERE = 1,
HHT_ONHEADER = 2,
HHT_ONDIVIDER = 4,
HHT_ONDIVOPEN = 8,
HHT_ABOVE = 256,
HHT_BELOW = 512,
HHT_TORIGHT = 1024,
HHT_TOLEFT = 2048
}
enum {
HDM_HITTEST = HDM_FIRST + 6
}
enum {
HDN_ITEMCHANGINGA = HDN_FIRST -0,
HDN_ITEMCHANGINGW = HDN_FIRST -20,
HDN_ITEMCHANGEDA = HDN_FIRST -1,
HDN_ITEMCHANGEDW = HDN_FIRST -21,
HDN_ITEMCLICKA = HDN_FIRST -2,
HDN_ITEMCLICKW = HDN_FIRST -22,
HDN_ITEMDBLCLICKA = HDN_FIRST -3,
HDN_ITEMDBLCLICKW = HDN_FIRST -23,
HDN_DIVIDERDBLCLICKA = HDN_FIRST -5,
HDN_DIVIDERDBLCLICKW = HDN_FIRST -25,
HDN_BEGINTRACKA = HDN_FIRST -6,
HDN_BEGINTRACKW = HDN_FIRST -26,
HDN_ENDTRACKA = HDN_FIRST -7,
HDN_ENDTRACKW = HDN_FIRST -27,
HDN_TRACKA = HDN_FIRST -8,
HDN_TRACKW = HDN_FIRST -28
}
static if (_WIN32_IE >= 0x300) {
enum {
HDN_ENDDRAG = (HDN_FIRST-11),
HDN_BEGINDRAG = (HDN_FIRST-10),
HDN_GETDISPINFOA = (HDN_FIRST-9),
HDN_GETDISPINFOW = (HDN_FIRST-29)
}
}
static if (_WIN32_IE >= 0x400) {
enum {
HICF_OTHER = 0x00,
HICF_MOUSE = 0x01,
HICF_ARROWKEYS = 0x02,
HICF_ACCELERATOR = 0x04,
HICF_DUPACCEL = 0x08,
HICF_ENTERING = 0x10,
HICF_LEAVING = 0x20,
HICF_RESELECT = 0x40,
HICF_LMOUSE = 0x80,
HICF_TOGGLEDROPDOWN = 0x100
}
}
enum {
IPM_CLEARADDRESS = WM_USER + 100,
IPM_SETADDRESS = WM_USER + 101,
IPM_GETADDRESS = WM_USER + 102,
IPM_SETRANGE = WM_USER + 103,
IPM_SETFOCUS = WM_USER + 104,
IPM_ISBLANK = WM_USER + 105
}
static if (_WIN32_IE >= 0x500) {
enum {
I_INDENTCALLBACK = -1,
I_IMAGENONE = -2
}
}
enum {
TBSTATE_CHECKED = 1,
TBSTATE_PRESSED = 2,
TBSTATE_ENABLED = 4,
TBSTATE_HIDDEN = 8,
TBSTATE_INDETERMINATE = 16,
TBSTATE_WRAP = 32
}
static if (_WIN32_IE >= 0x300) {
enum {
TBSTATE_ELLIPSES = 0x40
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TBSTATE_MARKED = 0x0080
}
}
enum {
TBSTYLE_BUTTON = 0,
TBSTYLE_SEP = 1,
TBSTYLE_CHECK = 2,
TBSTYLE_GROUP = 4,
TBSTYLE_CHECKGROUP = TBSTYLE_GROUP | TBSTYLE_CHECK
}
static if (_WIN32_IE >= 0x300) {
enum {
TBSTYLE_DROPDOWN = 8
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TBSTYLE_AUTOSIZE = 16,
TBSTYLE_NOPREFIX = 32
}
}
enum {
TBSTYLE_TOOLTIPS = 256,
TBSTYLE_WRAPABLE = 512,
TBSTYLE_ALTDRAG = 1024
}
static if (_WIN32_IE >= 0x300) {
enum {
TBSTYLE_FLAT = 2048,
TBSTYLE_LIST = 4096,
TBSTYLE_CUSTOMERASE = 8192
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TBSTYLE_REGISTERDROP = 0x4000,
TBSTYLE_TRANSPARENT = 0x8000,
TBSTYLE_EX_DRAWDDARROWS = 0x00000001
}
}
static if (_WIN32_IE >= 0x501) {
enum {
TBSTYLE_EX_MIXEDBUTTONS = 8,
TBSTYLE_EX_HIDECLIPPEDBUTTONS = 16
}
}
static if (_WIN32_WINNT >= 0x501) {
enum {
TBSTYLE_EX_DOUBLEBUFFER = 0x80
}
}
static if (_WIN32_IE >= 0x500) {
enum {
BTNS_BUTTON = TBSTYLE_BUTTON,
BTNS_SEP = TBSTYLE_SEP,
BTNS_CHECK = TBSTYLE_CHECK,
BTNS_GROUP = TBSTYLE_GROUP,
BTNS_CHECKGROUP = TBSTYLE_CHECKGROUP,
BTNS_DROPDOWN = TBSTYLE_DROPDOWN,
BTNS_AUTOSIZE = TBSTYLE_AUTOSIZE,
BTNS_NOPREFIX = TBSTYLE_NOPREFIX,
BTNS_WHOLEDROPDOWN = 0x0080
}
}
static if (_WIN32_IE >= 0x501) {
enum {
BTNS_SHOWTEXT = 0x0040
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TBCDRF_NOEDGES = 0x10000,
TBCDRF_HILITEHOTTRACK = 0x20000,
TBCDRF_NOOFFSET = 0x40000,
TBCDRF_NOMARK = 0x80000,
TBCDRF_NOETCHEDEFFECT = 0x100000
}
}
enum HINST_COMMCTRL = cast(HINSTANCE) (-1);
enum {
IDB_STD_SMALL_COLOR,
IDB_STD_LARGE_COLOR,
IDB_VIEW_SMALL_COLOR = 4,
IDB_VIEW_LARGE_COLOR = 5
}
static if (_WIN32_IE >= 0x300) {
enum {
IDB_HIST_SMALL_COLOR = 8,
IDB_HIST_LARGE_COLOR = 9
}
}
enum {
STD_CUT,
STD_COPY,
STD_PASTE,
STD_UNDO,
STD_REDOW,
STD_DELETE,
STD_FILENEW,
STD_FILEOPEN,
STD_FILESAVE,
STD_PRINTPRE,
STD_PROPERTIES,
STD_HELP,
STD_FIND,
STD_REPLACE,
STD_PRINT // = 14
}
enum {
VIEW_LARGEICONS,
VIEW_SMALLICONS,
VIEW_LIST,
VIEW_DETAILS,
VIEW_SORTNAME,
VIEW_SORTSIZE,
VIEW_SORTDATE,
VIEW_SORTTYPE,
VIEW_PARENTFOLDER,
VIEW_NETCONNECT,
VIEW_NETDISCONNECT,
VIEW_NEWFOLDER // = 11
}
enum {
TB_ENABLEBUTTON = WM_USER + 1,
TB_CHECKBUTTON,
TB_PRESSBUTTON,
TB_HIDEBUTTON,
TB_INDETERMINATE, // = WM_USER + 5,
TB_ISBUTTONENABLED = WM_USER + 9,
TB_ISBUTTONCHECKED,
TB_ISBUTTONPRESSED,
TB_ISBUTTONHIDDEN,
TB_ISBUTTONINDETERMINATE, // = WM_USER + 13,
TB_SETSTATE = WM_USER + 17,
TB_GETSTATE = WM_USER + 18,
TB_ADDBITMAP = WM_USER + 19,
TB_DELETEBUTTON = WM_USER + 22,
TB_GETBUTTON,
TB_BUTTONCOUNT,
TB_COMMANDTOINDEX,
TB_SAVERESTOREA,
TB_CUSTOMIZE,
TB_ADDSTRINGA,
TB_GETITEMRECT,
TB_BUTTONSTRUCTSIZE,
TB_SETBUTTONSIZE,
TB_SETBITMAPSIZE,
TB_AUTOSIZE, // = WM_USER + 33,
TB_GETTOOLTIPS = WM_USER + 35,
TB_SETTOOLTIPS = WM_USER + 36,
TB_SETPARENT = WM_USER + 37,
TB_SETROWS = WM_USER + 39,
TB_GETROWS,
TB_GETBITMAPFLAGS,
TB_SETCMDID,
TB_CHANGEBITMAP,
TB_GETBITMAP,
TB_GETBUTTONTEXTA,
TB_REPLACEBITMAP, // = WM_USER + 46,
TB_GETBUTTONSIZE = WM_USER + 58,
TB_SETBUTTONWIDTH = WM_USER + 59,
TB_GETBUTTONTEXTW = WM_USER + 75,
TB_SAVERESTOREW = WM_USER + 76,
TB_ADDSTRINGW = WM_USER + 77,
}
static if (_WIN32_IE >= 0x400) {
enum {
TB_MARKBUTTON = WM_USER + 6
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TB_ISBUTTONHIGHLIGHTED = WM_USER + 14
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TB_ADDBUTTONSA = WM_USER + 20,
TB_INSERTBUTTONA = WM_USER + 21
}
} else {
enum {
TB_ADDBUTTONS = WM_USER + 20,
TB_INSERTBUTTON = WM_USER + 21
}
}
static if (_WIN32_IE >= 0x300) {
enum {
TB_SETINDENT = WM_USER + 47,
TB_SETIMAGELIST,
TB_GETIMAGELIST,
TB_LOADIMAGES,
TB_GETRECT,
TB_SETHOTIMAGELIST,
TB_GETHOTIMAGELIST,
TB_SETDISABLEDIMAGELIST,
TB_GETDISABLEDIMAGELIST,
TB_SETSTYLE,
TB_GETSTYLE,
//TB_GETBUTTONSIZE,
//TB_SETBUTTONWIDTH,
TB_SETMAXTEXTROWS,
TB_GETTEXTROWS // = WM_USER + 61
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TB_GETOBJECT = WM_USER + 62,
TB_GETBUTTONINFOW,
TB_SETBUTTONINFOW,
TB_GETBUTTONINFOA,
TB_SETBUTTONINFOA,
TB_INSERTBUTTONW,
TB_ADDBUTTONSW,
TB_HITTEST, // = WM_USER + 69
TB_SETEXTENDEDSTYLE = WM_USER + 84,
TB_GETEXTENDEDSTYLE = WM_USER + 85,
TB_SETDRAWTEXTFLAGS = WM_USER + 70,
TB_GETHOTITEM,
TB_SETHOTITEM,
TB_SETANCHORHIGHLIGHT,
TB_GETANCHORHIGHLIGHT, // = WM_USER + 74
TB_MAPACCELERATORA = WM_USER + 78,
TB_GETINSERTMARK,
TB_SETINSERTMARK,
TB_INSERTMARKHITTEST,
TB_MOVEBUTTON,
TB_GETMAXSIZE,
//TB_SETEXTENDEDSTYLE,
//TB_GETEXTENDEDSTYLE,
TB_GETPADDING,
TB_SETPADDING,
TB_SETINSERTMARKCOLOR,
TB_GETINSERTMARKCOLOR,
TB_MAPACCELERATORW,
TB_GETSTRINGW,
TB_GETSTRINGA, // = WM_USER + 92
TB_SETHOTITEM2 = WM_USER + 94,
TB_SETLISTGAP = WM_USER + 96,
TB_GETIMAGELISTCOUNT = WM_USER + 98,
TB_GETIDEALSIZE = WM_USER + 99,
//TB_TRANSLATEACCELERATOR = CCM_TRANSLATEACCELERATOR,
TB_SETCOLORSCHEME = CCM_SETCOLORSCHEME,
TB_GETCOLORSCHEME = CCM_GETCOLORSCHEME,
TB_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT,
TB_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
}
}
static if (_WIN32_WINNT >= 0x501) {
enum {
TB_GETMETRICS = WM_USER + 101,
TB_SETMETRICS = WM_USER + 102,
}
}
static if (_WIN32_WINNT >= 0x600) {
enum {
TB_GETITEMDROPDOWNRECT = WM_USER + 103,
TB_SETPRESSEDIMAGELIST = WM_USER + 104,
TB_GETPRESSEDIMAGELIST = WM_USER + 105,
}
}
enum TBBF_LARGE = 1;
enum {
TBN_GETBUTTONINFOA = TBN_FIRST -0,
TBN_BEGINDRAG = TBN_FIRST -1,
TBN_ENDDRAG = TBN_FIRST -2,
TBN_BEGINADJUST = TBN_FIRST -3,
TBN_ENDADJUST = TBN_FIRST -4,
TBN_RESET = TBN_FIRST -5,
TBN_QUERYINSERT = TBN_FIRST -6,
TBN_QUERYDELETE = TBN_FIRST -7,
TBN_TOOLBARCHANGE = TBN_FIRST -8,
TBN_CUSTHELP = TBN_FIRST -9
}
static if (_WIN32_IE >= 0x300) {
enum {
TBN_DROPDOWN = TBN_FIRST - 10
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TBN_HOTITEMCHANGE = TBN_FIRST - 13,
TBN_DRAGOUT = TBN_FIRST - 14,
TBN_DELETINGBUTTON = TBN_FIRST - 15,
TBN_GETDISPINFOA = TBN_FIRST - 16,
TBN_GETDISPINFOW = TBN_FIRST - 17,
TBN_GETINFOTIPA = TBN_FIRST - 18,
TBN_GETINFOTIPW = TBN_FIRST - 19,
TBN_GETBUTTONINFOW = TBN_FIRST - 20
}
}
static if (_WIN32_IE >= 0x500) {
enum {
TBN_RESTORE = TBN_FIRST - 21,
TBN_SAVE = TBN_FIRST - 22,
TBN_INITCUSTOMIZE = TBN_FIRST - 23
}
enum {
TBNRF_HIDEHELP = 1,
TBNRF_ENDCUSTOMIZE
}
enum {
TBNF_IMAGE = 1,
TBNF_TEXT = 2,
TBNF_DI_SETITEM = 0x10000000
}
}
enum {
TTS_ALWAYSTIP = 1,
TTS_NOPREFIX
}
static if (_WIN32_IE >= 0x500) {
enum {
TTS_NOANIMATE = 0x10,
TTS_NOFADE = 0x20,
TTS_BALLOON = 0x40,
TTS_CLOSE = 0x80
}
}
enum {
TTF_IDISHWND = 1,
TTF_CENTERTIP = 2,
TTF_RTLREADING = 4,
TTF_SUBCLASS = 16
}
static if (_WIN32_IE >= 0x300) {
enum {
TTF_TRACK = 0x0020,
TTF_ABSOLUTE = 0x0080,
TTF_TRANSPARENT = 0x0100,
TTF_DI_SETITEM = 0x8000
}
static if (_WIN32_IE >= 0x501) {
enum {
TTF_PARSELINKS = 0x1000
}
}
enum {
TBCD_TICS = 1,
TBCD_THUMB,
TBCD_CHANNEL // = 3
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TBDDRET_DEFAULT,
TBDDRET_NODEFAULT,
TBDDRET_TREATPRESSED
}
enum {
TBIMHT_AFTER = 1,
TBIMHT_BACKGROUND
}
}
enum {
TTDT_AUTOMATIC,
TTDT_RESHOW,
TTDT_AUTOPOP,
TTDT_INITIAL
}
enum {
TTM_ACTIVATE = WM_USER + 1,
TTM_SETDELAYTIME = WM_USER + 3,
TTM_ADDTOOLA,
TTM_DELTOOLA,
TTM_NEWTOOLRECTA,
TTM_RELAYEVENT,
TTM_GETTOOLINFOA,
TTM_SETTOOLINFOA,
TTM_HITTESTA,
TTM_GETTEXTA,
TTM_UPDATETIPTEXTA,
TTM_GETTOOLCOUNT,
TTM_ENUMTOOLSA,
TTM_GETCURRENTTOOLA,
TTM_WINDOWFROMPOINT, // = WM_USER + 16
TTM_ADDTOOLW = WM_USER + 50,
TTM_DELTOOLW,
TTM_NEWTOOLRECTW,
TTM_GETTOOLINFOW,
TTM_SETTOOLINFOW,
TTM_HITTESTW,
TTM_GETTEXTW,
TTM_UPDATETIPTEXTW,
TTM_ENUMTOOLSW,
TTM_GETCURRENTTOOLW // = WM_USER + 59
}
static if (_WIN32_IE >= 0x300) {
enum {
TTM_TRACKACTIVATE = WM_USER + 17,
TTM_TRACKPOSITION,
TTM_SETTIPBKCOLOR,
TTM_SETTIPTEXTCOLOR,
TTM_GETDELAYTIME,
TTM_GETTIPBKCOLOR,
TTM_GETTIPTEXTCOLOR,
TTM_SETMAXTIPWIDTH,
TTM_GETMAXTIPWIDTH,
TTM_SETMARGIN,
TTM_GETMARGIN,
TTM_POP // = WM_USER + 28
}
}
static if (_WIN32_IE >= 0x400) { // IE4.0 ???
enum {
TTM_UPDATE = WM_USER + 29,
TTM_GETBUBBLESIZE,
TTM_ADJUSTRECT,
TTM_SETTITLEA,
TTM_SETTITLEW // = WM_USER + 33
}
static if (_WIN32_IE >= 0x500) {
alias TTM_SETTITLEW TTM_SETTITLE;
} else {
alias TTM_SETTITLEA TTM_SETTITLE;
}
}
static if (_WIN32_WINNT >= 0x501) {
enum {
TTM_POPUP = (WM_USER + 34),
TTM_GETTITLE = (WM_USER + 35),
}
}
enum {
TTN_GETDISPINFOA = TTN_FIRST - 0,
TTN_GETDISPINFOW = TTN_FIRST - 10,
TTN_NEEDTEXTA = TTN_GETDISPINFOA,
TTN_NEEDTEXTW = TTN_GETDISPINFOW,
TTN_SHOW = TTN_FIRST-1,
TTN_POP = TTN_FIRST-2
}
enum UD_MAXVAL = 0x7fff;
enum UD_MINVAL = -UD_MAXVAL;
enum {
UDN_DELTAPOS = UDN_FIRST-1,
UDS_WRAP = 1,
UDS_SETBUDDYINT = 2,
UDS_ALIGNRIGHT = 4,
UDS_ALIGNLEFT = 8,
UDS_AUTOBUDDY = 16,
UDS_ARROWKEYS = 32,
UDS_HORZ = 64,
UDS_NOTHOUSANDS = 128
}
static if (_WIN32_IE >= 0x300) {
enum {
UDS_HOTTRACK = 0x0100
}
}
enum {
UDM_SETRANGE = WM_USER + 101,
UDM_GETRANGE,
UDM_SETPOS,
UDM_GETPOS,
UDM_SETBUDDY,
UDM_GETBUDDY,
UDM_SETACCEL,
UDM_GETACCEL,
UDM_SETBASE,
UDM_GETBASE // = WM_USER + 110
}
static if (_WIN32_IE >= 0x400) {
enum {
UDM_SETRANGE32 = WM_USER + 111,
UDM_GETRANGE32,
UDM_SETPOS32,
UDM_GETPOS32 // = WM_USER + 114
}
}
static if (_WIN32_IE >= 0x500) {
enum {
UDM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT,
UDM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
}
}
/*enum {
SB_SETTEXTA = WM_USER + 1,
SB_GETTEXTA,
SB_GETTEXTLENGTHA,
SB_SETPARTS, // = WM_USER + 4
SB_GETPARTS = WM_USER + 6,
SB_GETBORDERS,
SB_SETMINHEIGHT,
SB_SIMPLE,
SB_GETRECT,
SB_SETTEXTW,
SB_GETTEXTLENGTHW,
SB_GETTEXTW // = WM_USER + 13
}*/
/*enum {
SBT_OWNERDRAW = 0x1000,
SBT_NOBORDERS = 256,
SBT_POPOUT = 512,
SBT_RTLREADING = 1024
}*/
static if (_WIN32_IE >= 0x400) {
enum {
SBT_TOOLTIPS = 0x0800,
SBN_SIMPLEMODECHANGE = SBN_FIRST
}
}
enum {
TBS_AUTOTICKS = 1,
TBS_VERT = 2,
TBS_HORZ = 0,
TBS_TOP = 4,
TBS_BOTTOM = 0,
TBS_LEFT = 4,
TBS_RIGHT = 0,
TBS_BOTH = 8,
TBS_NOTICKS = 16,
TBS_ENABLESELRANGE = 32,
TBS_FIXEDLENGTH = 64,
TBS_NOTHUMB = 128
}
static if (_WIN32_IE >= 0x300) {
enum {
TBS_TOOLTIPS = 0x0100,
TBTS_TOP = 0,
TBTS_LEFT,
TBTS_BOTTOM,
TBTS_RIGHT // = 3
}
}
static if (_WIN32_IE >= 0x500) {
enum {
TBS_REVERSED = 0x0200
}
}
static if (_WIN32_IE >= 0x501) {
enum {
TBS_DOWNISLEFT = 0x0400
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TBIF_BYINDEX = 0x80000000,
TBIF_COMMAND = 32,
TBIF_IMAGE = 1,
TBIF_LPARAM = 16,
TBIF_SIZE = 64,
TBIF_STATE = 4,
TBIF_STYLE = 8,
TBIF_TEXT = 2
}
}
enum {
TBM_GETPOS = WM_USER,
TBM_GETRANGEMIN,
TBM_GETRANGEMAX,
TBM_GETTIC,
TBM_SETTIC,
TBM_SETPOS,
TBM_SETRANGE,
TBM_SETRANGEMIN,
TBM_SETRANGEMAX,
TBM_CLEARTICS,
TBM_SETSEL,
TBM_SETSELSTART,
TBM_SETSELEND, // = WM_USER+12,
TBM_GETPTICS = WM_USER+14,
TBM_GETTICPOS,
TBM_GETNUMTICS,
TBM_GETSELSTART,
TBM_GETSELEND,
TBM_CLEARSEL,
TBM_SETTICFREQ,
TBM_SETPAGESIZE,
TBM_GETPAGESIZE,
TBM_SETLINESIZE,
TBM_GETLINESIZE,
TBM_GETTHUMBRECT,
TBM_GETCHANNELRECT,
TBM_SETTHUMBLENGTH,
TBM_GETTHUMBLENGTH,
TBM_SETTOOLTIPS,
TBM_GETTOOLTIPS,
TBM_SETTIPSIDE,
TBM_SETBUDDY,
TBM_GETBUDDY, // = WM_USER+33,
TBM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT,
TBM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
}
enum {
TB_LINEUP,
TB_LINEDOWN,
TB_PAGEUP,
TB_PAGEDOWN,
TB_THUMBPOSITION,
TB_THUMBTRACK,
TB_TOP,
TB_BOTTOM,
TB_ENDTRACK // = 8
}
enum {
HOTKEYF_SHIFT = 1,
HOTKEYF_CONTROL = 2,
HOTKEYF_ALT = 4,
HOTKEYF_EXT = 8
}
enum {
HKCOMB_NONE = 1,
HKCOMB_S = 2,
HKCOMB_C = 4,
HKCOMB_A = 8,
HKCOMB_SC = 16,
HKCOMB_SA = 32,
HKCOMB_CA = 64,
HKCOMB_SCA = 128
}
enum {
HKM_SETHOTKEY = WM_USER + 1,
HKM_GETHOTKEY = WM_USER + 2,
HKM_SETRULES = WM_USER + 3
}
enum {
PBM_SETRANGE = WM_USER + 1,
PBM_SETPOS,
PBM_DELTAPOS,
PBM_SETSTEP,
PBM_STEPIT, // = WM_USER + 5
PBM_SETRANGE32 = 1030,
PBM_GETRANGE,
PBM_GETPOS,
PBM_SETBARCOLOR, // = 1033
PBM_SETBKCOLOR = CCM_SETBKCOLOR
}
static if (_WIN32_WINNT >= 0x501) {
enum {
PBM_SETMARQUEE = WM_USER + 10,
}
}
static if (_WIN32_WINNT >= 0x600) {
enum {
PBM_GETSTEP = WM_USER + 13,
PBM_GETBKCOLOR,
PBM_GETBARCOLOR,
PBM_SETSTATE,
PBM_GETSTATE,
}
}
enum {
PBS_SMOOTH = 1,
PBS_VERTICAL = 4
}
static if (_WIN32_WINNT >= 0x501) {
enum {
PBS_MARQUEE = 8,
}
}
static if (_WIN32_WINNT >= 0x600) {
enum {
PBS_SMOOTHREVERSE = 16,
}
}
enum {
LVS_ICON,
LVS_REPORT,
LVS_SMALLICON,
LVS_LIST, // = 3
LVS_TYPEMASK = 3,
LVS_SINGLESEL = 4,
LVS_SHOWSELALWAYS = 8,
LVS_SORTASCENDING = 16,
LVS_SORTDESCENDING = 32,
LVS_SHAREIMAGELISTS = 64,
LVS_NOLABELWRAP = 128,
LVS_AUTOARRANGE = 256,
LVS_EDITLABELS = 512,
LVS_NOSCROLL = 0x2000,
LVS_TYPESTYLEMASK = 0xFC00,
LVS_ALIGNTOP = 0,
LVS_ALIGNLEFT = 0x800,
LVS_ALIGNMASK = 0xC00,
LVS_OWNERDRAWFIXED = 0x400,
LVS_NOCOLUMNHEADER = 0x4000,
LVS_NOSORTHEADER = 0x8000
}
static if (_WIN32_IE >= 0x300) {
enum {
CDIS_CHECKED = 8,
CDIS_DEFAULT = 32,
CDIS_DISABLED = 4,
CDIS_FOCUS = 16,
CDIS_GRAYED = 2,
CDIS_HOT = 64,
CDIS_SELECTED = 1,
CDIS_MARKED = 128,
CDIS_INDETERMINATE = 256
}
static if (_WIN32_WINNT >= 0x501) {
enum {
CDIS_SHOWKEYBOARDCUES = 512
}
}
enum {
CDDS_POSTERASE = 4,
CDDS_POSTPAINT = 2,
CDDS_PREERASE = 3,
CDDS_PREPAINT = 1,
CDDS_ITEM = 65536,
CDDS_ITEMPOSTERASE = 65540,
CDDS_ITEMPOSTPAINT = 65538,
CDDS_ITEMPREERASE = 65539,
CDDS_ITEMPREPAINT = 65537
}
static if (_WIN32_IE >= 0x400) {
enum {
CDDS_SUBITEM = 0x20000
}
}
enum {
CDRF_DODEFAULT = 0x00,
CDRF_NOTIFYITEMDRAW = 0x20,
CDRF_NOTIFYSUBITEMDRAW = 0x20,
CDRF_NOTIFYITEMERASE = 0x80,
CDRF_NOTIFYPOSTERASE = 0x40,
CDRF_NOTIFYPOSTPAINT = 0x10,
CDRF_NEWFONT = 0x02,
CDRF_SKIPDEFAULT = 0x04
}
static if (_WIN32_IE >= 0x400) {
enum {
LVBKIF_SOURCE_NONE = 0x00000000,
LVBKIF_SOURCE_HBITMAP = 0x00000001,
LVBKIF_SOURCE_URL = 0x00000002,
LVBKIF_SOURCE_MASK = 0x00000003,
LVBKIF_STYLE_NORMAL = 0x00000000,
LVBKIF_STYLE_TILE = 0x00000010,
LVBKIF_STYLE_MASK = 0x00000010
}
}
static if (_WIN32_WINNT >= 0x501) {
enum {
LVBKIF_FLAG_TILEOFFSET = 0x00000100,
LVBKIF_TYPE_WATERMARK = 0x10000000
}
}
enum {
LVS_OWNERDATA = 4096
}
enum {
LVS_EX_CHECKBOXES = 4,
LVS_EX_FULLROWSELECT = 32,
LVS_EX_GRIDLINES = 1,
LVS_EX_HEADERDRAGDROP = 16,
LVS_EX_ONECLICKACTIVATE = 64,
LVS_EX_SUBITEMIMAGES = 2,
LVS_EX_TRACKSELECT = 8,
LVS_EX_TWOCLICKACTIVATE = 128
}
enum {
LVSICF_NOINVALIDATEALL = 0x00000001,
LVSICF_NOSCROLL = 0x00000002
}
static if (_WIN32_IE >= 0x400) {
enum {
LVS_EX_FLATSB = 0x00000100,
LVS_EX_REGIONAL = 0x00000200,
LVS_EX_INFOTIP = 0x00000400,
LVS_EX_UNDERLINEHOT = 0x00000800,
LVS_EX_UNDERLINECOLD = 0x00001000,
LVS_EX_MULTIWORKAREAS = 0x00002000
}
}
static if (_WIN32_IE >= 0x500) {
enum {
LVS_EX_LABELTIP = 0x00004000,
LVS_EX_BORDERSELECT = 0x00008000
}
}
}
enum {
LVSIL_NORMAL,
LVSIL_SMALL,
LVSIL_STATE
}
enum {
LVM_GETBKCOLOR = LVM_FIRST,
LVM_SETBKCOLOR,
LVM_GETIMAGELIST,
LVM_SETIMAGELIST,
LVM_GETITEMCOUNT, // = LVM_FIRST + 4
LVM_SORTITEMSEX = LVM_FIRST + 81,
LVM_GETGROUPSTATE = LVM_FIRST + 92,
LVM_GETFOCUSEDGROUP,
LVM_GETGROUPRECT = LVM_FIRST + 98,
LVM_SETVIEW = LVM_FIRST + 142,
LVM_GETVIEW, // = LVM_FIRST + 143
LVM_INSERTGROUP = LVM_FIRST + 145,
LVM_SETGROUPINFO = LVM_FIRST + 147,
LVM_GETGROUPINFO = LVM_FIRST + 149,
LVM_REMOVEGROUP,
LVM_MOVEGROUP, // = LVM_FIRST + 151
LVM_GETGROUPCOUNT,
LVM_GETGROUPINFOBYINDEX,
LVM_MOVEITEMTOGROUP,
LVM_SETGROUPMETRICS = LVM_FIRST + 155,
LVM_GETGROUPMETRICS,
LVM_ENABLEGROUPVIEW,
LVM_SORTGROUPS,
LVM_INSERTGROUPSORTED,
LVM_REMOVEALLGROUPS,
LVM_HASGROUP,
LVM_SETTILEVIEWINFO,
LVM_GETTILEVIEWINFO,
LVM_SETTILEINFO,
LVM_GETTILEINFO,
LVM_SETINSERTMARK,
LVM_GETINSERTMARK,
LVM_INSERTMARKHITTEST,
LVM_GETINSERTMARKRECT,
LVM_SETINSERTMARKCOLOR,
LVM_GETINSERTMARKCOLOR, // = LVM_FIRST + 171
LVM_SETINFOTIP = LVM_FIRST + 173,
LVM_GETSELECTEDCOLUMN,
LVM_ISGROUPVIEWENABLED,
LVM_GETOUTLINECOLOR,
LVM_SETOUTLINECOLOR, // = LVM_FIRST + 177
LVM_CANCELEDITLABEL = LVM_FIRST + 179,
LVM_MAPINDEXTOID = LVM_FIRST + 180,
LVM_MAPIDTOINDEX = LVM_FIRST + 181,
LVM_ISITEMVISIBLE = LVM_FIRST + 182,
}
static if (_WIN32_WINNT >= 0x501) {
enum {
LVM_SETSELECTEDCOLUMN = LVM_FIRST + 140
}
}
static if (_WIN32_WINNT >= 0x600) {
enum {
LVM_GETEMPTYTEXT = LVM_FIRST + 204,
LVM_GETFOOTERRECT = LVM_FIRST + 205,
LVM_GETFOOTERINFO = LVM_FIRST + 206,
LVM_GETFOOTERITEMRECT = LVM_FIRST + 207,
LVM_GETFOOTERITEM = (LVM_FIRST + 208),
LVM_GETITEMINDEXRECT = (LVM_FIRST + 209),
LVM_SETITEMINDEXSTATE = (LVM_FIRST + 210),
LVM_GETNEXTITEMINDEX = (LVM_FIRST + 211),
}
}
enum {
LVIF_TEXT = 1,
LVIF_IMAGE = 2,
LVIF_PARAM = 4,
LVIF_STATE = 8
}
static if (_WIN32_IE >= 0x300) {
enum {
LVIF_INDENT = 16,
LVIF_NORECOMPUTE = 2048
}
}
static if (_WIN32_WINNT >= 0x501) {
enum {
LVIF_GROUPID = 128,
LVIF_COLUMNS = 256
}
}
enum {
LVIS_FOCUSED = 1,
LVIS_SELECTED = 2,
LVIS_CUT = 4,
LVIS_DROPHILITED = 8,
LVIS_OVERLAYMASK = 0xF00,
LVIS_STATEIMAGEMASK = 0xF000
}
enum LPWSTR LPSTR_TEXTCALLBACKW = cast(LPWSTR) -1;
enum LPSTR LPSTR_TEXTCALLBACKA = cast(LPSTR) -1;
enum I_IMAGECALLBACK = -1;
static if (_WIN32_IE >= 0x400) {
enum {
LVM_SETBKIMAGEA = LVM_FIRST + 68,
LVM_SETBKIMAGEW = LVM_FIRST + 138,
LVM_GETBKIMAGEA = LVM_FIRST + 69,
LVM_GETBKIMAGEW = LVM_FIRST + 139,
LV_MAX_WORKAREAS = 16,
LVM_SETWORKAREAS = LVM_FIRST + 65,
LVM_GETWORKAREAS = LVM_FIRST + 70,
LVM_GETNUMBEROFWORKAREAS = LVM_FIRST + 73,
LVM_GETSELECTIONMARK = LVM_FIRST + 66,
LVM_SETSELECTIONMARK = LVM_FIRST + 67,
LVM_SETHOVERTIME = LVM_FIRST + 71,
LVM_GETHOVERTIME = LVM_FIRST + 72,
LVM_SETTOOLTIPS = LVM_FIRST + 74,
LVM_GETTOOLTIPS = LVM_FIRST + 78,
LVM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT,
LVM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
}
}
enum {
LVNI_ALL,
LVNI_FOCUSED = 1,
LVNI_SELECTED = 2,
LVNI_CUT = 4,
LVNI_DROPHILITED = 8,
LVNI_ABOVE = 256,
LVNI_BELOW = 512,
LVNI_TOLEFT = 1024,
LVNI_TORIGHT = 2048
}
enum {
LVM_GETITEMA = LVM_FIRST + 5,
LVM_SETITEMA,
LVM_INSERTITEMA,
LVM_DELETEITEM,
LVM_DELETEALLITEMS,
LVM_GETCALLBACKMASK,
LVM_SETCALLBACKMASK,
LVM_GETNEXTITEM,
LVM_FINDITEMA,
LVM_GETITEMRECT,
LVM_SETITEMPOSITION,
LVM_GETITEMPOSITION,
LVM_GETSTRINGWIDTHA,
LVM_HITTEST,
LVM_ENSUREVISIBLE,
LVM_SCROLL,
LVM_REDRAWITEMS,
LVM_ARRANGE,
LVM_EDITLABELA,
LVM_GETEDITCONTROL,
LVM_GETCOLUMNA,
LVM_SETCOLUMNA,
LVM_INSERTCOLUMNA,
LVM_DELETECOLUMN,
LVM_GETCOLUMNWIDTH,
LVM_SETCOLUMNWIDTH, // = LVM_FIRST + 30,
LVM_CREATEDRAGIMAGE = LVM_FIRST + 33,
LVM_GETVIEWRECT,
LVM_GETTEXTCOLOR,
LVM_SETTEXTCOLOR,
LVM_GETTEXTBKCOLOR,
LVM_SETTEXTBKCOLOR,
LVM_GETTOPINDEX,
LVM_GETCOUNTPERPAGE,
LVM_GETORIGIN,
LVM_UPDATE,
LVM_SETITEMSTATE,
LVM_GETITEMSTATE,
LVM_GETITEMTEXTA,
LVM_SETITEMTEXTA,
LVM_SETITEMCOUNT,
LVM_SORTITEMS,
LVM_SETITEMPOSITION32,
LVM_GETSELECTEDCOUNT,
LVM_GETITEMSPACING,
LVM_GETISEARCHSTRINGA, // = LVM_FIRST + 52,
LVM_GETITEMW = LVM_FIRST + 75,
LVM_SETITEMW = LVM_FIRST + 76,
LVM_INSERTITEMW = LVM_FIRST + 77,
LVM_FINDITEMW = LVM_FIRST + 83,
LVM_GETSTRINGWIDTHW = LVM_FIRST + 87,
LVM_GETCOLUMNW = LVM_FIRST + 95,
LVM_SETCOLUMNW = LVM_FIRST + 96,
LVM_INSERTCOLUMNW = LVM_FIRST + 97,
LVM_GETITEMTEXTW = LVM_FIRST + 115,
LVM_SETITEMTEXTW,
LVM_GETISEARCHSTRINGW,
LVM_EDITLABELW // = LVM_FIRST + 118,
}
static if (_WIN32_IE >= 0x300) {
enum {
LVM_GETHEADER = LVM_FIRST + 31,
LVM_SETICONSPACING = LVM_FIRST + 53,
LVM_SETEXTENDEDLISTVIEWSTYLE,
LVM_GETEXTENDEDLISTVIEWSTYLE,
LVM_GETSUBITEMRECT,
LVM_SUBITEMHITTEST,
LVM_SETCOLUMNORDERARRAY,
LVM_GETCOLUMNORDERARRAY,
LVM_SETHOTITEM,
LVM_GETHOTITEM,
LVM_SETHOTCURSOR,
LVM_GETHOTCURSOR,
LVM_APPROXIMATEVIEWRECT // = LVM_FIRST + 64,
}
}
enum {
LVFI_PARAM = 1,
LVFI_STRING = 2,
LVFI_PARTIAL = 8,
LVFI_WRAP = 32,
LVFI_NEARESTXY = 64
}
enum {
LVIF_DI_SETITEM = 0x1000
}
enum {
LVIR_BOUNDS,
LVIR_ICON,
LVIR_LABEL,
LVIR_SELECTBOUNDS // = 3
}
enum {
LVHT_NOWHERE = 1,
LVHT_ONITEMICON = 2,
LVHT_ONITEMLABEL = 4,
LVHT_ONITEMSTATEICON = 8,
LVHT_ONITEM = LVHT_ONITEMICON | LVHT_ONITEMLABEL
| LVHT_ONITEMSTATEICON,
LVHT_ABOVE = 8,
LVHT_BELOW = 16,
LVHT_TORIGHT = 32,
LVHT_TOLEFT = 64
}
enum {
LVA_DEFAULT = 0,
LVA_ALIGNLEFT = 1,
LVA_ALIGNTOP = 2,
LVA_SNAPTOGRID = 5
}
enum {
LVCF_FMT = 1,
LVCF_WIDTH = 2,
LVCF_TEXT = 4,
LVCF_SUBITEM = 8
}
static if (_WIN32_IE >= 0x300) {
enum {
LVCF_IMAGE = 16,
LVCF_ORDER = 32
}
}
enum {
LVCFMT_LEFT,
LVCFMT_RIGHT,
LVCFMT_CENTER,
LVCFMT_JUSTIFYMASK // = 3
}
static if (_WIN32_IE >= 0x300) {
enum {
LVCFMT_IMAGE = 2048,
LVCFMT_BITMAP_ON_RIGHT = 4096,
LVCFMT_COL_HAS_IMAGES = 32768
}
}
enum {
LVSCW_AUTOSIZE = -1,
LVSCW_AUTOSIZE_USEHEADER = -2
}
enum {
LVN_ITEMCHANGING = LVN_FIRST,
LVN_ITEMCHANGED = LVN_FIRST - 1,
LVN_INSERTITEM = LVN_FIRST - 2,
LVN_DELETEITEM = LVN_FIRST - 3,
LVN_DELETEALLITEMS = LVN_FIRST - 4,
LVN_BEGINLABELEDITA = LVN_FIRST - 5,
LVN_ENDLABELEDITA = LVN_FIRST - 6,
LVN_COLUMNCLICK = LVN_FIRST - 8,
LVN_BEGINDRAG = LVN_FIRST - 9,
LVN_BEGINRDRAG = LVN_FIRST - 11,
LVN_GETDISPINFOA = LVN_FIRST - 50,
LVN_SETDISPINFOA = LVN_FIRST - 51,
LVN_KEYDOWN = LVN_FIRST - 55,
LVN_BEGINLABELEDITW = LVN_FIRST - 75,
LVN_ENDLABELEDITW = LVN_FIRST - 76,
LVN_GETDISPINFOW = LVN_FIRST - 77,
LVN_SETDISPINFOW = LVN_FIRST - 78
}
static if (_WIN32_IE >= 0x400) {
enum {
LVN_MARQUEEBEGIN = LVN_FIRST - 56,
LVN_GETINFOTIPA = LVN_FIRST - 57,
LVN_GETINFOTIPW = LVN_FIRST - 58,
LVKF_ALT = 1,
LVKF_CONTROL = 2,
LVKF_SHIFT = 4,
LVGIT_UNFOLDED = 1
}
}
enum {
TVS_HASBUTTONS = 1,
TVS_HASLINES = 2,
TVS_LINESATROOT = 4,
TVS_EDITLABELS = 8,
TVS_DISABLEDRAGDROP = 16,
TVS_SHOWSELALWAYS = 32
}
static if (_WIN32_IE >= 0x300) {
enum {
TVS_RTLREADING = 64,
TVS_NOTOOLTIPS = 128,
TVS_CHECKBOXES = 256,
TVS_TRACKSELECT = 512
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TVS_SINGLEEXPAND = 1024,
TVS_INFOTIP = 2048,
TVS_FULLROWSELECT = 4096,
TVS_NOSCROLL = 8192,
TVS_NONEVENHEIGHT = 16384
}
}
static if (_WIN32_IE >= 0x500) {
enum {
TVS_NOHSCROLL = 0x8000
}
}
enum {
TVIF_TEXT = 1,
TVIF_IMAGE = 2,
TVIF_PARAM = 4,
TVIF_STATE = 8,
TVIF_HANDLE = 16,
TVIF_SELECTEDIMAGE = 32,
TVIF_CHILDREN = 64
}
static if (_WIN32_IE >= 0x400) {
enum {
TVIF_INTEGRAL = 0x0080
}
}
enum {
TVIS_FOCUSED = 1,
TVIS_SELECTED = 2,
TVIS_CUT = 4,
TVIS_DROPHILITED = 8,
TVIS_BOLD = 16,
TVIS_EXPANDED = 32,
TVIS_EXPANDEDONCE = 64,
TVIS_OVERLAYMASK = 0xF00,
TVIS_STATEIMAGEMASK = 0xF000,
TVIS_USERMASK = 0xF000
}
enum {
I_CHILDRENCALLBACK = -1
}
mixin DECLARE_HANDLE!("HTREEITEM");
mixin DECLARE_HANDLE!("HIMAGELIST");
version (Win64)
{
enum HTREEITEM
TVI_ROOT = cast(HTREEITEM) cast(ULONG_PTR)-0x10000,
TVI_FIRST = cast(HTREEITEM) cast(ULONG_PTR)-0xffff,
TVI_LAST = cast(HTREEITEM) cast(ULONG_PTR)-0xfffe,
TVI_SORT = cast(HTREEITEM) cast(ULONG_PTR)-0xfffd;
} else {
enum HTREEITEM
TVI_ROOT = cast(HTREEITEM) 0xFFFF0000,
TVI_FIRST = cast(HTREEITEM) 0xFFFF0001,
TVI_LAST = cast(HTREEITEM) 0xFFFF0002,
TVI_SORT = cast(HTREEITEM) 0xFFFF0003;
}
enum {
TVSIL_NORMAL = 0,
TVSIL_STATE = 2
}
enum {
TVM_INSERTITEMA = TV_FIRST,
TVM_DELETEITEM = TV_FIRST + 1,
TVM_EXPAND = TV_FIRST + 2,
TVM_GETITEMRECT = TV_FIRST + 4,
TVM_GETCOUNT,
TVM_GETINDENT,
TVM_SETINDENT,
TVM_GETIMAGELIST,
TVM_SETIMAGELIST,
TVM_GETNEXTITEM,
TVM_SELECTITEM,
TVM_GETITEMA,
TVM_SETITEMA,
TVM_EDITLABELA,
TVM_GETEDITCONTROL,
TVM_GETVISIBLECOUNT,
TVM_HITTEST,
TVM_CREATEDRAGIMAGE,
TVM_SORTCHILDREN,
TVM_ENSUREVISIBLE,
TVM_SORTCHILDRENCB,
TVM_ENDEDITLABELNOW,
TVM_GETISEARCHSTRINGA, // = TV_FIRST + 23
TVM_INSERTITEMW = TV_FIRST + 50,
TVM_GETITEMW = TV_FIRST + 62,
TVM_SETITEMW = TV_FIRST + 63,
TVM_GETISEARCHSTRINGW = TV_FIRST + 64,
TVM_EDITLABELW = TV_FIRST + 65
}
static if (_WIN32_IE >= 0x300) {
enum {
TVM_GETTOOLTIPS = TV_FIRST + 25,
TVM_SETTOOLTIPS = TV_FIRST + 24
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TVM_SETINSERTMARK = TV_FIRST + 26,
TVM_SETITEMHEIGHT,
TVM_GETITEMHEIGHT,
TVM_SETBKCOLOR,
TVM_SETTEXTCOLOR,
TVM_GETBKCOLOR,
TVM_GETTEXTCOLOR,
TVM_SETSCROLLTIME,
TVM_GETSCROLLTIME, // = TV_FIRST + 34
TVM_SETINSERTMARKCOLOR = TV_FIRST + 37,
TVM_GETINSERTMARKCOLOR = TV_FIRST + 38,
TVM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT,
TVM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
}
}
static if (_WIN32_IE >= 0x500) {
enum {
TVM_GETITEMSTATE = TV_FIRST + 39,
TVM_SETLINECOLOR = TV_FIRST + 40,
TVM_GETLINECOLOR = TV_FIRST + 41
}
}
static if (_WIN32_IE >= 0x501) {
enum {
TVM_MAPACCIDTOHTREEITEM = TV_FIRST + 42,
TVM_MAPHTREEITEMTOACCID = TV_FIRST + 43,
TVM_SETEXTENDEDSTYLE = TV_FIRST + 44,
TVM_GETEXTENDEDSTYLE = TV_FIRST + 45,
TVM_SETAUTOSCROLLINFO = TV_FIRST + 59
}
}
static if (_WIN32_IE >= 0x600) {
enum {
TVM_GETSELECTEDCOUNT = TV_FIRST + 70,
TVM_SHOWINFOTIP = TV_FIRST + 71,
TVM_GETITEMPARTRECT = TV_FIRST + 72,
}
}
enum {
TVE_COLLAPSE = 1,
TVE_EXPAND = 2,
TVE_TOGGLE = 3,
TVE_COLLAPSERESET = 0x8000
}
static if (_WIN32_IE >= 0x300) {
enum {
TVE_EXPANDPARTIAL = 0x4000
}
}
enum {
TVC_UNKNOWN,
TVC_BYMOUSE,
TVC_BYKEYBOARD // = 2
}
enum {
TVGN_ROOT,
TVGN_NEXT,
TVGN_PREVIOUS,
TVGN_PARENT,
TVGN_CHILD,
TVGN_FIRSTVISIBLE,
TVGN_NEXTVISIBLE,
TVGN_PREVIOUSVISIBLE,
TVGN_DROPHILITE,
TVGN_CARET // = 9
}
static if (_WIN32_IE >= 0x400) {
enum {
TVGN_LASTVISIBLE = 10
}
}
static if (_WIN32_IE >= 0x600) {
enum {
TVGN_NEXTSELECTED = 11
}
}
enum {
TVN_SELCHANGINGA = TVN_FIRST - 1,
TVN_SELCHANGEDA = TVN_FIRST - 2,
TVN_GETDISPINFOA = TVN_FIRST - 3,
TVN_SETDISPINFOA = TVN_FIRST - 4,
TVN_ITEMEXPANDINGA = TVN_FIRST - 5,
TVN_ITEMEXPANDEDA = TVN_FIRST - 6,
TVN_BEGINDRAGA = TVN_FIRST - 7,
TVN_BEGINRDRAGA = TVN_FIRST - 8,
TVN_DELETEITEMA = TVN_FIRST - 9,
TVN_BEGINLABELEDITA = TVN_FIRST - 10,
TVN_ENDLABELEDITA = TVN_FIRST - 11,
TVN_KEYDOWN = TVN_FIRST - 12,
TVN_SELCHANGINGW = TVN_FIRST - 50,
TVN_SELCHANGEDW = TVN_FIRST - 51,
TVN_GETDISPINFOW = TVN_FIRST - 52,
TVN_SETDISPINFOW = TVN_FIRST - 53,
TVN_ITEMEXPANDINGW = TVN_FIRST - 54,
TVN_ITEMEXPANDEDW = TVN_FIRST - 55,
TVN_BEGINDRAGW = TVN_FIRST - 56,
TVN_BEGINRDRAGW = TVN_FIRST - 57,
TVN_DELETEITEMW = TVN_FIRST - 58,
TVN_BEGINLABELEDITW = TVN_FIRST - 59,
TVN_ENDLABELEDITW = TVN_FIRST - 60
}
static if (_WIN32_IE >= 0x400) {
enum {
TVNRET_DEFAULT = 0,
TVNRET_SKIPOLD = 1,
TVNRET_SKIPNEW = 2,
TVN_GETINFOTIPA = TVN_FIRST - 13,
TVN_GETINFOTIPW = TVN_FIRST - 14,
TVN_SINGLEEXPAND = TVN_FIRST - 15
}
}
enum {
TVIF_DI_SETITEM = 0x1000
}
enum {
TVHT_NOWHERE = 1,
TVHT_ONITEMICON = 2,
TVHT_ONITEMLABEL = 4,
TVHT_ONITEMINDENT = 8,
TVHT_ONITEMBUTTON = 16,
TVHT_ONITEMRIGHT = 32,
TVHT_ONITEMSTATEICON = 64,
TVHT_ABOVE = 256,
TVHT_BELOW = 512,
TVHT_TORIGHT = 1024,
TVHT_TOLEFT = 2048,
TCHT_NOWHERE = 1,
TCHT_ONITEMICON = 2,
TCHT_ONITEMLABEL = 4,
TVHT_ONITEM = TVHT_ONITEMICON | TVHT_ONITEMLABEL
| TVHT_ONITEMSTATEICON,
TCHT_ONITEM = TCHT_ONITEMICON | TCHT_ONITEMLABEL
}
enum {
TCS_TABS = 0,
TCS_RIGHTJUSTIFY = 0,
TCS_SINGLELINE = 0,
TCS_FORCEICONLEFT = 16,
TCS_FORCELABELLEFT = 32,
TCS_BUTTONS = 256,
TCS_MULTILINE = 512,
TCS_FIXEDWIDTH = 1024,
TCS_RAGGEDRIGHT = 2048,
TCS_FOCUSONBUTTONDOWN = 0x1000,
TCS_OWNERDRAWFIXED = 0x2000,
TCS_TOOLTIPS = 0x4000,
TCS_FOCUSNEVER = 0x8000
}
static if (_WIN32_IE >= 0x300) {
enum {
TCS_BOTTOM = 2,
TCS_RIGHT = 2,
TCS_VERTICAL = 128,
TCS_SCROLLOPPOSITE = 0x0001,
TCS_HOTTRACK = 0x0040,
TCS_MULTISELECT = 0x0004
}
}
static if (_WIN32_IE >= 0x400) {
enum {
TCS_FLATBUTTONS = 0x0008,
TCS_EX_FLATSEPARATORS = 0x00000001,
TCS_EX_REGISTERDROP = 0x00000002
}
}
enum {
TCIF_TEXT = 1,
TCIF_IMAGE = 2,
TCIF_RTLREADING = 4,
TCIF_PARAM = 8
}
static if (_WIN32_IE >= 0x400) {
enum {
TCIF_STATE = 16
}
}
enum {
TCIS_BUTTONPRESSED = 1
}
static if (_WIN32_IE >= 0x400) {
enum {
TCIS_HIGHLIGHTED = 2
}
}
enum {
TCM_FIRST = 0x1300,
TCM_GETIMAGELIST = TCM_FIRST + 2,
TCM_SETIMAGELIST,
TCM_GETITEMCOUNT,
TCM_GETITEMA,
TCM_SETITEMA,
TCM_INSERTITEMA,
TCM_DELETEITEM,
TCM_DELETEALLITEMS,
TCM_GETITEMRECT,
TCM_GETCURSEL,
TCM_SETCURSEL,
TCM_HITTEST,
TCM_SETITEMEXTRA, // = TCM_FIRST + 14
TCM_ADJUSTRECT = TCM_FIRST + 40,
TCM_SETITEMSIZE,
TCM_REMOVEIMAGE,
TCM_SETPADDING,
TCM_GETROWCOUNT,
TCM_GETTOOLTIPS,
TCM_SETTOOLTIPS,
TCM_GETCURFOCUS,
TCM_SETCURFOCUS,
TCM_SETMINTABWIDTH,
TCM_DESELECTALL, // = TCM_FIRST + 50
TCM_GETITEMW = TCM_FIRST + 60,
TCM_SETITEMW = TCM_FIRST + 61,
TCM_INSERTITEMW = TCM_FIRST + 62
}
static if (_WIN32_IE >=0x0400) {
enum {
TCM_HIGHLIGHTITEM = TCM_FIRST + 51,
TCM_SETEXTENDEDSTYLE = TCM_FIRST + 52,
TCM_GETEXTENDEDSTYLE = TCM_FIRST + 53,
TCM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT,
TCM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
}
}
enum {
TCN_KEYDOWN = TCN_FIRST,
TCN_SELCHANGE = TCN_FIRST - 1,
TCN_SELCHANGING = TCN_FIRST - 2
}
enum {
NM_OUTOFMEMORY = NM_FIRST - 1,
NM_CLICK = NM_FIRST - 2,
NM_DBLCLK = NM_FIRST - 3,
NM_RETURN = NM_FIRST - 4,
NM_RCLICK = NM_FIRST - 5,
NM_RDBLCLK = NM_FIRST - 6,
NM_SETFOCUS = NM_FIRST - 7,
NM_KILLFOCUS = NM_FIRST - 8,
NM_CUSTOMDRAW = NM_FIRST - 12,
NM_HOVER = NM_FIRST - 13,
NM_NCHITTEST = NM_FIRST - 14,
NM_KEYDOWN = NM_FIRST - 15,
NM_RELEASEDCAPTURE = NM_FIRST - 16,
NM_SETCURSOR = NM_FIRST - 17,
NM_CHAR = NM_FIRST - 18,
NM_TOOLTIPSCREATED = NM_FIRST - 19
}
enum {
SBARS_SIZEGRIP = 256
}
/*enum {
CCM_FIRST = 0x2000,
CCM_LAST = CCM_FIRST + 0x200,
CCM_SETBKCOLOR = 8193,
CCM_SETCOLORSCHEME = 8194,
CCM_GETCOLORSCHEME = 8195,
CCM_GETDROPTARGET = 8196,
CCM_SETUNICODEFORMAT = 8197,
CCM_GETUNICODEFORMAT = 8198,
CCM_SETVERSION = 0x2007,
CCM_GETVERSION = 0x2008,
CCM_SETNOTIFYWINDOW = 0x2009
}*/
static if (_WIN32_WINNT >= 0x501) {
enum {
CCM_SETWINDOWTHEME = 0x200b,
CCM_DPISCALE = 0x200c,
RB_GETBANDMARGINS = WM_USER + 40,
RB_SETWINDOWTHEME = CCM_SETWINDOWTHEME,
TB_SETWINDOWTHEME = CCM_SETWINDOWTHEME,
TTM_SETWINDOWTHEME = CCM_SETWINDOWTHEME,
}
}
enum {
ICC_LISTVIEW_CLASSES = 1,
ICC_TREEVIEW_CLASSES = 2,
ICC_BAR_CLASSES = 4,
ICC_TAB_CLASSES = 8,
ICC_UPDOWN_CLASS = 16,
ICC_PROGRESS_CLASS = 32,
ICC_HOTKEY_CLASS = 64,
ICC_ANIMATE_CLASS = 128,
ICC_WIN95_CLASSES = 255,
ICC_DATE_CLASSES = 256,
ICC_USEREX_CLASSES = 512,
ICC_COOL_CLASSES = 1024
}
static if (_WIN32_IE >= 0x400) {
enum {
INFOTIPSIZE = 1024,
ICC_INTERNET_CLASSES = 2048,
ICC_PAGESCROLLER_CLASS = 4096,
ICC_NATIVEFNTCTL_CLASS = 8192
}
}
static if (_WIN32_WINNT >= 0x501) {
enum {
ICC_STANDARD_CLASSES = 0x00004000,
ICC_LINK_CLASS = 0x00008000
}
}
enum {
GDTR_MIN = 1,
GDTR_MAX = 2
}
enum {
GMR_VISIBLE,
GMR_DAYSTATE
}
enum {
GDT_ERROR = -1,
GDT_VALID = 0,
GDT_NONE = 1
}
enum {
DTS_SHORTDATEFORMAT = 0,
DTS_UPDOWN = 1,
DTS_SHOWNONE = 2,
DTS_LONGDATEFORMAT = 4,
DTS_TIMEFORMAT = 9,
DTS_APPCANPARSE = 16,
DTS_RIGHTALIGN = 32
}
static if (_WIN32_IE >= 0x500) {
enum {
DTS_SHORTDATECENTURYFORMAT = 0x000C
}
}
enum {
MCS_DAYSTATE = 1,
MCS_MULTISELECT = 2,
MCS_WEEKNUMBERS = 4
}
static if (_WIN32_IE >= 0x400) {
enum {
MCS_NOTODAYCIRCLE = 0x0008,
MCS_NOTODAY = 0x0010
}
} else {
enum {
MCS_NOTODAY = 0x0008
}
}
enum {
DTM_FIRST = 0x1000,
DTM_GETSYSTEMTIME = 0x1001,
DTM_SETSYSTEMTIME = 0x1002,
DTM_GETRANGE = 0x1003,
DTM_SETRANGE = 0x1004,
DTM_SETFORMATA = 0x1005,
DTM_SETMCCOLOR = 0x1006,
DTM_GETMCCOLOR = 0x1007,
DTM_GETMONTHCAL = 0x1008,
DTM_SETMCFONT = 0x1009,
DTM_GETMCFONT = 0x100a,
DTM_SETFORMATW = 0x1050
}
static if (_WIN32_WINNT >= 0x600) {
enum {
DTM_SETMCSTYLE = DTM_FIRST + 11,
DTM_GETMCSTYLE,
DTM_CLOSEMONTHCAL,
DTM_GETDATETIMEPICKERINFO,
DTM_GETIDEALSIZE,
}
}
enum {
DTN_USERSTRINGA = -758U,
DTN_USERSTRINGW = -745U,
DTN_WMKEYDOWNA = -757U,
DTN_WMKEYDOWNW = -744U,
DTN_FORMATA = -756U,
DTN_FORMATW = -743U,
DTN_FORMATQUERYA = -755U,
DTN_FORMATQUERYW = -742U,
DTN_DROPDOWN = -754U,
DTN_CLOSEUP = -753U,
DTN_DATETIMECHANGE = -759U,
}
enum {
MCM_FIRST = 0x1000,
MCM_GETCURSEL = 0x1001,
MCM_SETCURSEL = 0x1002,
MCM_GETMAXSELCOUNT = 0x1003,
MCM_SETMAXSELCOUNT = 0x1004,
MCM_GETSELRANGE = 0x1005,
MCM_SETSELRANGE = 0x1006,
MCM_GETMONTHRANGE = 0x1007,
MCM_SETDAYSTATE = 0x1008,
MCM_GETMINREQRECT = 0x1009,
MCM_SETCOLOR = 0x100a,
MCM_GETCOLOR = 0x100b,
MCM_SETTODAY = 0x100c,
MCM_GETTODAY = 0x100d,
MCM_HITTEST = 0x100e,
MCM_SETFIRSTDAYOFWEEK = 0x100f,
MCM_GETFIRSTDAYOFWEEK = 0x1010,
MCM_GETRANGE = 0x1011,
MCM_SETRANGE = 0x1012,
MCM_GETMONTHDELTA = 0x1013,
MCM_SETMONTHDELTA = 0x1014,
MCM_GETMAXTODAYWIDTH = 0x1015,
MCM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT,
MCM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
}
static if (_WIN32_WINNT >= 0x600) {
enum {
MCM_GETCURRENTVIEW = MCM_FIRST + 22,
MCM_GETCALENDARCOUNT,
MCM_GETCALENDARGRIDINFO,
MCM_GETCALID = MCM_FIRST + 27,
MCM_SETCALID,
MCM_SIZERECTTOMIN,
MCM_SETCALENDARBORDER,
MCM_GETCALENDARBORDER,
MCM_SETCURRENTVIEW,
}
}
enum {
MCN_SELCHANGE = -749U,
MCN_GETDAYSTATE = -747U,
MCN_SELECT = -746U
}
enum {
ODT_HEADER = 100,
ODT_TAB,
ODT_LISTVIEW // = 102
}
enum {
SB_SETBKCOLOR = 0x2001
}
static if (_WIN32_IE >= 0x300) {
enum {
SB_ISSIMPLE = 1038
}
enum {
MCSC_BACKGROUND,
MCSC_TEXT,
MCSC_TITLEBK,
MCSC_TITLETEXT,
MCSC_MONTHBK,
MCSC_TRAILINGTEXT // = 5
}
}
static if (_WIN32_IE >= 0x400) {
enum {
MCHT_TITLE = 0x10000,
MCHT_CALENDAR = 0x20000,
MCHT_TODAYLINK = 0x30000,
MCHT_NEXT = 0x1000000,
MCHT_PREV = 0x2000000,
MCHT_NOWHERE = 0x00,
MCHT_TITLEBK = MCHT_TITLE,
MCHT_TITLEMONTH = MCHT_TITLE | 0x0001,
MCHT_TITLEYEAR = MCHT_TITLE | 0x0002,
MCHT_TITLEBTNNEXT = MCHT_TITLE | MCHT_NEXT | 0x0003,
MCHT_TITLEBTNPREV = MCHT_TITLE | MCHT_PREV | 0x0003,
MCHT_CALENDARBK = MCHT_CALENDAR,
MCHT_CALENDARDATE = MCHT_CALENDAR | 0x0001,
MCHT_CALENDARDATENEXT = MCHT_CALENDARDATE | MCHT_NEXT,
MCHT_CALENDARDATEPREV = MCHT_CALENDARDATE | MCHT_PREV,
MCHT_CALENDARDAY = MCHT_CALENDAR | 0x0002,
MCHT_CALENDARWEEKNUM = MCHT_CALENDAR | 0x0003
}
}
enum {
RBS_TOOLTIPS = 256,
RBS_VARHEIGHT = 512,
RBS_BANDBORDERS = 1024,
RBS_FIXEDORDER = 2048
}
enum {
RBIM_IMAGELIST = 1
}
enum {
RB_SETCOLORSCHEME = CCM_SETCOLORSCHEME,
RB_GETCOLORSCHEME = CCM_GETCOLORSCHEME
}
enum {
RBBS_BREAK = 0x0001,
RBBS_FIXEDSIZE = 0x0002,
RBBS_CHILDEDGE = 0x0004,
RBBS_HIDDEN = 0x0008,
RBBS_NOVERT = 0x0010,
RBBS_FIXEDBMP = 0x0020,
RBBS_VARIABLEHEIGHT = 0x0040,
RBBS_GRIPPERALWAYS = 0x0080,
RBBS_NOGRIPPER = 0x0100
}
static if (_WIN32_IE >= 0x500) {
enum {
RBBS_USECHEVRON = 0x0200
}
}
static if (_WIN32_IE >= 0x501) {
enum {
RBBS_HIDETITLE = 0x0400,
RBBS_TOPALIGN = 0x0800
}
}
enum {
RBBIM_STYLE = 1,
RBBIM_COLORS = 2,
RBBIM_TEXT = 4,
RBBIM_IMAGE = 8,
RBBIM_CHILD = 16,
RBBIM_CHILDSIZE = 32,
RBBIM_SIZE = 64,
RBBIM_BACKGROUND = 128,
RBBIM_ID = 256
}
enum {
RB_INSERTBANDA = WM_USER + 1,
RB_DELETEBAND,
RB_GETBARINFO,
RB_SETBARINFO, // = WM_USER + 4
RB_SETBANDINFOA = WM_USER + 6,
RB_SETPARENT = WM_USER + 7,
RB_INSERTBANDW = WM_USER + 10,
RB_SETBANDINFOW,
RB_GETBANDCOUNT,
RB_GETROWCOUNT,
RB_GETROWHEIGHT // = WM_USER + 14,
}
enum {
RBN_HEIGHTCHANGE = RBN_FIRST
}
static if (_WIN32_IE >= 0x300) {
enum {
LVN_ODCACHEHINT = LVN_FIRST - 13,
LVN_ODFINDITEMA = LVN_FIRST - 52,
LVN_ODFINDITEMW = LVN_FIRST - 79,
LVN_ITEMACTIVATE = LVN_FIRST - 14,
LVN_ODSTATECHANGED = LVN_FIRST - 15
}
version (Unicode) {
enum {
LVN_ODFINDITEM = LVN_ODFINDITEMW
}
} else {
enum {
LVN_ODFINDITEM = LVN_ODFINDITEMA
}
}
}
static if (_WIN32_IE >= 0x400) {
enum {
SB_SETICON = 1039,
SB_SETTIPTEXTA,
SB_SETTIPTEXTW,
SB_GETTIPTEXTA,
SB_GETTIPTEXTW,
SB_GETICON, // = 1044
SB_SETUNICODEFORMAT = 0x2005,
SB_GETUNICODEFORMAT = 0x2006
}
enum {
PGF_INVISIBLE = 0,
PGF_NORMAL = 1,
PGF_GRAYED = 2,
PGF_DEPRESSED = 4,
PGF_HOT = 8
}
enum {
PGB_TOPORLEFT,
PGB_BOTTOMORRIGHT
}
enum {
PGF_SCROLLUP = 1,
PGF_SCROLLDOWN = 2,
PGF_SCROLLLEFT = 4,
PGF_SCROLLRIGHT = 8
}
enum {
PGK_SHIFT = 1,
PGK_CONTROL = 2,
PGK_MENU = 4
}
enum {
PGF_CALCWIDTH = 1,
PGF_CALCHEIGHT = 2
}
enum {
PGM_FIRST = 0x1400,
PGM_SETCHILD = PGM_FIRST + 1,
PGM_RECALCSIZE,
PGM_FORWARDMOUSE,
PGM_SETBKCOLOR,
PGM_GETBKCOLOR,
PGM_SETBORDER,
PGM_GETBORDER,
PGM_SETPOS,
PGM_GETPOS,
PGM_SETBUTTONSIZE,
PGM_GETBUTTONSIZE,
PGM_GETBUTTONSTATE, // = PGM_FIRST + 12
PGM_GETDROPTARGET = CCM_GETDROPTARGET
}
enum {
RBS_REGISTERDROP = 4096,
RBS_AUTOSIZE = 8192,
RBS_VERTICALGRIPPER = 16384,
RBS_DBLCLKTOGGLE = 32768
}
enum {
RBBIM_IDEALSIZE = 512,
RBBIM_LPARAM = 1024,
RBBIM_HEADERSIZE = 2048
}
enum {
RB_HITTEST = WM_USER + 8,
RB_GETRECT = WM_USER + 9,
RB_IDTOINDEX = WM_USER + 16,
RB_GETTOOLTIPS,
RB_SETTOOLTIPS,
RB_SETBKCOLOR,
RB_GETBKCOLOR,
RB_SETTEXTCOLOR,
RB_GETTEXTCOLOR,
RB_SIZETORECT,
RB_BEGINDRAG,
RB_ENDDRAG,
RB_DRAGMOVE,
RB_GETBARHEIGHT,
RB_GETBANDINFOW,
RB_GETBANDINFOA,
RB_MINIMIZEBAND,
RB_MAXIMIZEBAND, // = WM_USER + 31
RB_GETDROPTARGET = CCM_GETDROPTARGET,
RB_GETBANDBORDERS = WM_USER + 34,
RB_SHOWBAND = WM_USER + 35,
RB_SETPALETTE = WM_USER + 37,
RB_GETPALETTE = WM_USER + 38,
RB_MOVEBAND = WM_USER + 39,
RB_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT,
RB_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
}
enum {
RBN_GETOBJECT = RBN_FIRST - 1,
RBN_LAYOUTCHANGED = RBN_FIRST - 2,
RBN_AUTOSIZE = RBN_FIRST - 3,
RBN_BEGINDRAG = RBN_FIRST - 4,
RBN_ENDDRAG = RBN_FIRST - 5,
RBN_DELETINGBAND = RBN_FIRST - 6,
RBN_DELETEDBAND = RBN_FIRST - 7,
RBN_CHILDSIZE = RBN_FIRST - 8
}
enum {
RBNM_ID = 1,
RBNM_STYLE = 2,
RBNM_LPARAM = 4
}
enum {
RBHT_NOWHERE = 1,
RBHT_CAPTION,
RBHT_CLIENT,
RBHT_GRABBER
}
version (Unicode) {
alias SB_SETTIPTEXTW SB_SETTIPTEXT;
alias SB_GETTIPTEXTW SB_GETTIPTEXT;
alias RB_GETBANDINFOW RB_GETBANDINFO;
} else {
alias SB_SETTIPTEXTA SB_SETTIPTEXT;
alias SB_GETTIPTEXTA SB_GETTIPTEXT;
alias RB_GETBANDINFOA RB_GETBANDINFO;
}
} else {
enum {
RB_GETBANDINFO = WM_USER + 5
}
}
static if (_WIN32_IE >= 0x500) {
enum {
RB_PUSHCHEVRON = WM_USER + 43,
}
}
static if (_WIN32_IE >= 0x600) {
enum {
RB_SETEXTENDEDSTYLE = WM_USER + 41,
RB_GETEXTENDEDSTYLE = WM_USER + 42,
}
}
static if (_WIN32_WINNT >= 0x500) {
enum {
RB_SETBANDWIDTH = WM_USER + 44,
}
}
static if (_WIN32_WINNT >= 0x501) {
enum {
ECM_FIRST = 0x1500,
BCM_FIRST = 0x1600,
BCM_GETIDEALSIZE = BCM_FIRST + 0x0001,
BCM_SETIMAGELIST = BCM_FIRST + 0x0002,
BCM_GETIMAGELIST = BCM_FIRST + 0x0003,
BCM_SETTEXTMARGIN = BCM_FIRST + 0x0004,
BCM_GETTEXTMARGIN = BCM_FIRST + 0x0005,
BCN_HOTITEMCHANGE = BCN_FIRST + 0x0001,
}
struct NMBCHOTITEM {
NMHDR hdr;
DWORD dwFlags;
}
alias NMBCHOTITEM* LPNMBCHOTITEM;
}
static if (_WIN32_WINNT >= 0x600) {
enum {
BST_DROPDOWNPUSHED = 0x0400,
BS_SPLITBUTTON = 0x0000_000C,
BS_DEFSPLITBUTTON = 0x0000_000D,
BS_COMMANDLINK = 0x0000_000E,
BS_DEFCOMMANDLINK = 0x0000_000F,
BCSIF_GLYPH = 0x0001,
BCSIF_IMAGE = 0x0002,
BCSIF_STYLE = 0x0004,
BCSIF_SIZE = 0x0008,
BCSS_NOSPLIT = 0x0001,
BCSS_STRETCH = 0x0002,
BCSS_ALIGNLEFT = 0x0004,
BCSS_IMAGE = 0x0008,
BCM_SETDROPDOWNSTATE = BCM_FIRST + 0x0006,
BCM_SETSPLITINFO = BCM_FIRST + 0x0007,
BCM_GETSPLITINFO = BCM_FIRST + 0x0008,
BCM_SETNOTE = BCM_FIRST + 0x0009,
BCM_GETNOTE = BCM_FIRST + 0x000A,
BCM_GETNOTELENGTH = BCM_FIRST + 0x000B,
BCM_SETSHIELD = BCM_FIRST + 0x000C,
BCN_DROPDOWN = BCN_FIRST + 0x0002,
}
enum HIMAGELIST BCCL_NOGLYPH = cast(HIMAGELIST)-1;
struct BUTTON_SPLITINFO
{
UINT mask;
HIMAGELIST himlGlyph;
UINT uSplitStyle;
SIZE size;
}
alias BUTTON_SPLITINFO* PBUTTON_SPLITINFO;
}
enum {
CBEM_INSERTITEMA = WM_USER + 1,
CBEM_SETIMAGELIST,
CBEM_GETIMAGELIST,
CBEM_GETITEMA,
CBEM_SETITEMA,
CBEM_GETCOMBOCONTROL,
CBEM_GETEDITCONTROL,
CBEM_SETEXSTYLE,
CBEM_GETEXSTYLE, // = WM_USER + 9)
CBEM_DELETEITEM = CB_DELETESTRING
}
static if (_WIN32_IE >= 0x400) {
enum {
CBEM_SETEXTENDEDSTYLE = WM_USER + 14,
CBEM_GETEXTENDEDSTYLE = WM_USER + 9,
CBEM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT,
CBEM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
}
}
enum {
CBEM_HASEDITCHANGED = WM_USER + 10,
CBEM_INSERTITEMW = WM_USER + 11,
CBEM_SETITEMW = WM_USER + 12,
CBEM_GETITEMW = WM_USER + 13
}
static if (_WIN32_WINNT >= 0x501)
{
enum {
CBEM_SETWINDOWTHEME = CCM_SETWINDOWTHEME
}
}
enum {
DA_LAST = 0x7fffffff
}
enum {
DPA_APPEND = 0x7fffffff,
DPA_ERR = -1
}
enum {
DSA_APPEND = 0x7fffffff,
DSA_ERR = -1
}
enum {
DPAS_SORTED = 1,
DPAS_INSERTBEFORE = 2,
DPAS_INSERTAFTER = 4
}
static if (_WIN32_IE >= 0x400) {
enum {
WSB_PROP_CYVSCROLL = 1,
WSB_PROP_CXHSCROLL = 2,
WSB_PROP_CYHSCROLL = 4,
WSB_PROP_CXVSCROLL = 8,
WSB_PROP_CXHTHUMB = 16,
WSB_PROP_CYVTHUMB = 32,
WSB_PROP_VBKGCOLOR = 64,
WSB_PROP_HBKGCOLOR = 128,
WSB_PROP_VSTYLE = 256,
WSB_PROP_HSTYLE = 512,
WSB_PROP_WINSTYLE = 1024,
WSB_PROP_PALETTE = 2048,
WSB_PROP_MASK = 0xfff,
FSB_FLAT_MODE = 2,
FSB_ENCARTA_MODE = 1,
FSB_REGULAR_MODE = 0
}
}
static if (_WIN32_WINNT >= 0x501) {
enum {
LIF_ITEMINDEX = 1,
LIF_STATE = 2,
LIF_ITEMID = 4,
LIF_URL = 8
}
enum {
LIS_FOCUSED = 1,
LIS_ENABLED = 2,
LIS_VISITED = 4
}
enum {
LM_HITTEST = WM_USER + 768,
LM_GETIDEALHEIGHT,
LM_SETITEM,
LM_GETITEM, // = WM_USER + 771
LM_GETIDEALSIZE = LM_GETIDEALHEIGHT,
}
enum size_t MAX_LINKID_TEXT = 48;
enum size_t L_MAX_URL_LENGTH = 2084;
}
struct TBMETRICS {
UINT cbSize = TBMETRICS.sizeof;
DWORD dwMask;
int cxPad;
int cyPad;
int cxBarPad;
int cyBarPad;
int cxButtonSpacing;
int cyButtonSpacing;
}
alias TBMETRICS* LPTBMETRICS;
static if (_WIN32_WINNT >= 0x501) {
struct TTGETTITLE {
DWORD dwSize = TTGETTITLE.sizeof;
UINT uTitleBitmap;
UINT cch;
WCHAR* pszTitle;
}
alias TTGETTITLE* PTTGETTITLE;
}
static if (_WIN32_WINNT >= 0x600) {
struct MCGRIDINFO {
UINT cbSize;
DWORD dwPart;
DWORD dwFlags;
int iCalendar;
int iRow;
int iCol;
BOOL bSelected;
SYSTEMTIME stStart;
SYSTEMTIME stEnd;
RECT rc;
PWSTR pszName;
size_t cchName;
}
alias MCGRIDINFO* PMCGRIDINFO;
struct DATETIMEPICKERINFO
{
DWORD cbSize;
RECT rcCheck;
DWORD stateCheck;
RECT rcButton;
DWORD stateButton;
HWND hwndEdit;
HWND hwndUD;
HWND hwndDropDown;
}
alias DATETIMEPICKERINFO* LPDATETIMEPICKERINFO;
}
struct COMBOBOXEXITEMA {
UINT mask;
INT_PTR iItem;
LPSTR pszText;
int cchTextMax;
int iImage;
int iSelectedImage;
int iOverlay;
int iIndent;
LPARAM lParam;
}
alias COMBOBOXEXITEMA* PCOMBOBOXEXITEMA;
alias const(COMBOBOXEXITEMA)* PCCOMBOEXITEMA;
struct COMBOBOXEXITEMW {
UINT mask;
INT_PTR iItem;
LPWSTR pszText;
int cchTextMax;
int iImage;
int iSelectedImage;
int iOverlay;
int iIndent;
LPARAM lParam;
}
alias COMBOBOXEXITEMW* PCOMBOBOXEXITEMW;
alias const(COMBOBOXEXITEMW)* PCCOMBOEXITEMW;
static if (_WIN32_IE >= 0x400) {
struct NMCOMBOBOXEXA {
NMHDR hdr;
COMBOBOXEXITEMA ceItem;
}
alias NMCOMBOBOXEXA* PNMCOMBOBOXEXA;
struct NMCOMBOBOXEXW {
NMHDR hdr;
COMBOBOXEXITEMW ceItem;
}
alias NMCOMBOBOXEXW* PNMCOMBOBOXEXW;
struct NMCBEDRAGBEGINW {
NMHDR hdr;
int iItemid;
WCHAR[CBEMAXSTRLEN] szText = 0;
}
alias NMCBEDRAGBEGINW* LPNMCBEDRAGBEGINW, PNMCBEDRAGBEGINW;
struct NMCBEDRAGBEGINA {
NMHDR hdr;
int iItemid;
char[CBEMAXSTRLEN] szText = 0;
}
alias NMCBEDRAGBEGINA* LPNMCBEDRAGBEGINA, PNMCBEDRAGBEGINA;
struct NMIPADDRESS {
NMHDR hdr;
int iField;
int iValue;
}
alias NMIPADDRESS* LPNMIPADDRESS;
align (1)
struct NMLVKEYDOWN {
align (1):
NMHDR hdr;
WORD wVKey;
UINT flags;
}
alias NMLVKEYDOWN* LPNMLVKEYDOWN;
struct NMPGCALCSIZE {
NMHDR hdr;
DWORD dwFlag;
int iWidth;
int iHeight;
}
alias NMPGCALCSIZE* LPNMPGCALCSIZE;
align (1)
struct NMPGSCROLL {
align (1):
NMHDR hdr;
WORD fwKeys; // Note: this should be WORD if MSDN document says wrong
RECT rcParent;
int iDir;
int iXpos;
int iYpos;
int iScroll;
}
alias NMPGSCROLL* LPNMPGSCROLL;
struct NMSELCHANGE {
NMHDR nmhdr;
SYSTEMTIME stSelStart;
SYSTEMTIME stSelEnd;
}
alias NMSELCHANGE* LPNMSELCHANGE;
struct NMTBHOTITEM {
NMHDR hdr;
int idOld;
int idNew;
DWORD dwFlags;
}
alias NMTBHOTITEM* LPNMTBHOTITEM;
struct NMTBDISPINFOA {
NMHDR hdr;
DWORD dwMask;
int idCommand;
DWORD_PTR lParam;
int iImage;
LPSTR pszText;
int cchText;
}
alias NMTBDISPINFOA* LPNMTBDISPINFOA;
struct NMTBDISPINFOW {
NMHDR hdr;
DWORD dwMask;
int idCommand;
DWORD_PTR lParam;
int iImage;
LPWSTR pszText;
int cchText;
}
alias NMTBDISPINFOW* LPNMTBDISPINFOW;
struct NMTBGETINFOTIPA {
NMHDR hdr;
LPSTR pszText;
int cchTextMax;
int iItem;
LPARAM lParam;
}
alias NMTBGETINFOTIPA* LPNMTBGETINFOTIPA;
struct NMTBGETINFOTIPW {
NMHDR hdr;
LPWSTR pszText;
int cchTextMax;
int iItem;
LPARAM lParam;
}
alias NMTBGETINFOTIPW* LPNMTBGETINFOTIPW;
struct NMMOUSE {
NMHDR hdr;
DWORD_PTR dwItemSpec;
DWORD_PTR dwItemData;
POINT pt;
LPARAM dwHitInfo;
}
alias NMMOUSE* LPNMMOUSE;
}
static if (_WIN32_IE >= 0x401) {
struct NMTOOLTIPSCREATED {
NMHDR hdr;
HWND hwndToolTips;
}
alias NMTOOLTIPSCREATED* LPNMTOOLTIPSCREATED;
}
struct NMDATETIMECHANGE {
NMHDR nmhdr;
DWORD dwFlags;
SYSTEMTIME st;
}
alias NMDATETIMECHANGE* LPNMDATETIMECHANGE;
struct NMCBEENDEDITW {
NMHDR hdr;
BOOL fChanged;
int iNewSelection;
WCHAR[CBEMAXSTRLEN] szText = 0;
int iWhy;
}
alias NMCBEENDEDITW* LPNMCBEENDEDITW, PNMCBEENDEDITW;
struct NMCBEENDEDITA {
NMHDR hdr;
BOOL fChanged;
int iNewSelection;
char[CBEMAXSTRLEN] szText = 0;
int iWhy;
}
alias NMCBEENDEDITA* LPNMCBEENDEDITA, PNMCBEENDEDITA;
struct COLORMAP {
COLORREF from;
COLORREF to;
}
alias COLORMAP* LPCOLORMAP;
struct DRAGLISTINFO {
UINT uNotification;
HWND hWnd;
POINT ptCursor;
}
alias DRAGLISTINFO* LPDRAGLISTINFO;
struct TBBUTTON {
int iBitmap;
int idCommand;
BYTE fsState;
BYTE fsStyle;
version (Win64){
BYTE[6] bReserved;
} else {
BYTE[2] bReserved;
}
DWORD_PTR dwData;
INT_PTR iString;
}
alias TBBUTTON* PTBBUTTON, LPTBBUTTON;
alias const(TBBUTTON)* LPCTBBUTTON;
static if (_WIN32_IE >= 0x400) {
struct TBBUTTONINFOA {
UINT cbSize = TBBUTTONINFOA.sizeof;
DWORD dwMask;
int idCommand;
int iImage;
BYTE fsState;
BYTE fsStyle;
WORD cx;
DWORD_PTR lParam;
LPSTR pszText;
int cchText;
}
alias TBBUTTONINFOA* LPTBBUTTONINFOA;
struct TBBUTTONINFOW {
UINT cbSize = TBBUTTONINFOW.sizeof;
DWORD dwMask;
int idCommand;
int iImage;
BYTE fsState;
BYTE fsStyle;
WORD cx;
DWORD_PTR lParam;
LPWSTR pszText;
int cchText;
}
alias TBBUTTONINFOW* LPTBBUTTONINFOW;
struct TBINSERTMARK {
int iButton;
DWORD dwFlags;
}
alias TBINSERTMARK* LPTBINSERTMARK;
struct LVBKIMAGEA {
ULONG ulFlags;
HBITMAP hbm;
LPSTR pszImage;
UINT cchImageMax;
int xOffsetPercent;
int yOffsetPercent;
}
alias LVBKIMAGEA* LPLVBKIMAGEA;
struct LVBKIMAGEW {
ULONG ulFlags;
HBITMAP hbm;
LPWSTR pszImage;
UINT cchImageMax;
int xOffsetPercent;
int yOffsetPercent;
}
alias LVBKIMAGEW* LPLVBKIMAGEW;
}
/*struct TBNOTIFY {
NMHDR hdr;
int iItem;
TBBUTTON tbButton;
int cchText;
LPTSTR pszText;
}
alias TBNOTIFY* LPTBNOTIFY;
*/
/*struct TBSAVEPARAMS {
HKEY hkr;
LPCTSTR pszSubKey;
LPCTSTR pszValueName;
}*/
struct IMAGEINFO {
HBITMAP hbmImage;
HBITMAP hbmMask;
int Unused1;
int Unused2;
RECT rcImage;
}
alias IMAGEINFO* LPIMAGEINFO;
static if (_WIN32_IE >= 0x500) {
struct HDITEMA {
UINT mask;
int cxy;
LPSTR pszText;
HBITMAP hbm;
int cchTextMax;
int fmt;
LPARAM lParam;
int iImage;
int iOrder;
UINT type;
LPVOID pvFilter;
}
struct HDITEMW {
UINT mask;
int cxy;
LPWSTR pszText;
HBITMAP hbm;
int cchTextMax;
int fmt;
LPARAM lParam;
int iImage;
int iOrder;
UINT type;
LPVOID pvFilter;
}
} else static if (_WIN32_IE >= 0x300) {
struct HDITEMA {
UINT mask;
int cxy;
LPSTR pszText;
HBITMAP hbm;
int cchTextMax;
int fmt;
LPARAM lParam;
int iImage;
int iOrder;
}
struct HDITEMW {
UINT mask;
int cxy;
LPWSTR pszText;
HBITMAP hbm;
int cchTextMax;
int fmt;
LPARAM lParam;
int iImage;
int iOrder;
}
} else {
struct HDITEMA {
UINT mask;
int cxy;
LPSTR pszText;
HBITMAP hbm;
int cchTextMax;
int fmt;
LPARAM lParam;
}
struct HDITEMW {
UINT mask;
int cxy;
LPWSTR pszText;
HBITMAP hbm;
int cchTextMax;
int fmt;
LPARAM lParam;
}
}
alias HDITEMA* LPHDITEMA;
alias HDITEMW* LPHDITEMW;
deprecated {
alias HDITEMA HD_ITEMA;
alias HDITEMW HD_ITEMW;
//alias HDITEM HD_ITEM; fixme
}
struct HD_LAYOUT {
RECT* prc;
WINDOWPOS* pwpos;
}
alias HD_LAYOUT* LPHDLAYOUT;
deprecated alias HD_LAYOUT HDLAYOUT;
struct HD_HITTESTINFO {
POINT pt;
UINT flags;
int iItem;
}
alias HD_HITTESTINFO* LPHDHITTESTINFO;
struct HD_NOTIFYA {
NMHDR hdr;
int iItem;
int iButton;
HDITEMA* pitem;
}
struct HD_NOTIFYW {
NMHDR hdr;
int iItem;
int iButton;
HDITEMW* pitem;
}
/* FIXME: NMHEADER structure (base for all events of the comctl controls)
is the same as HD_NOTIFY depending on the value of _WIN32_IE macro.
I'm defining both for now. */
struct NMHEADERA {
NMHDR hdr;
int iItem;
int iButton;
HDITEMA* pitem;
}
alias NMHEADERA* LPNMHEADERA;
struct NMHEADERW {
NMHDR hdr;
int iItem;
int iButton;
HDITEMW* pitem;
}
alias NMHEADERW* LPNMHEADERW;
version (Unicode) {
alias NMHEADERW NMHEADER;
alias LPNMHEADERW LPNMHEADER;
} else {
alias NMHEADERA NMHEADER;
alias LPNMHEADERA LPNMHEADER;
}
// End FIXME
struct NMHDDISPINFOA {
NMHDR hdr;
int iItem;
UINT mask;
LPSTR pszText;
int cchTextMax;
int iImage;
LPARAM lParam;
}
alias NMHDDISPINFOA* LPNMHDDISPINFOA;
struct NMHDDISPINFOW {
NMHDR hdr;
int iItem;
UINT mask;
LPWSTR pszText;
int cchTextMax;
int iImage;
LPARAM lParam;
}
alias NMHDDISPINFOW* LPNMHDDISPINFOW;
struct NMCUSTOMDRAW {
NMHDR hdr;
DWORD dwDrawStage;
HDC hdc;
RECT rc;
DWORD_PTR dwItemSpec;
UINT uItemState;
LPARAM lItemlParam;
}
alias NMCUSTOMDRAW* LPNMCUSTOMDRAW;
static if (_WIN32_IE >= 0x400) {
struct NMLVCUSTOMDRAW {
NMCUSTOMDRAW nmcd;
COLORREF clrText;
COLORREF clrTextBk;
int iSubItem;
}
} else {
struct NMLVCUSTOMDRAW {
NMCUSTOMDRAW nmcd;
COLORREF clrText;
COLORREF clrTextBk;
}
}
alias NMLVCUSTOMDRAW* LPNMLVCUSTOMDRAW;
static if (_WIN32_IE >= 0x400) {
struct NMLVGETINFOTIPA {
NMHDR hdr;
DWORD dwFlags;
LPSTR pszText;
int cchTextMax;
int iItem;
int iSubItem;
LPARAM lParam;
}
alias NMLVGETINFOTIPA* LPNMLVGETINFOTIPA;
struct NMLVGETINFOTIPW {
NMHDR hdr;
DWORD dwFlags;
LPWSTR pszText;
int cchTextMax;
int iItem;
int iSubItem;
LPARAM lParam;
}
alias NMLVGETINFOTIPW* LPNMLVGETINFOTIPW;
}
static if (_WIN32_IE >= 0x400) {
struct NMTVCUSTOMDRAW {
NMCUSTOMDRAW nmcd;
COLORREF clrText;
COLORREF clrTextBk;
int iLevel;
}
} else {
struct NMTVCUSTOMDRAW {
NMCUSTOMDRAW nmcd;
COLORREF clrText;
COLORREF clrTextBk;
}
}
alias NMTVCUSTOMDRAW* LPNMTVCUSTOMDRAW;
static if (_WIN32_IE >= 0x400) {
static if (_WIN32_WINNT >= 0x501) {
struct NMTBCUSTOMDRAW {
NMCUSTOMDRAW nmcd;
HBRUSH hbrMonoDither;
HBRUSH hbrLines;
HPEN hpenLines;
COLORREF clrText;
COLORREF clrMark;
COLORREF clrTextHighlight;
COLORREF clrBtnFace;
COLORREF clrBtnHighlight;
COLORREF clrHighlightHotTrack;
RECT rcText;
int nStringBkMode;
int nHLStringBkMode;
int iListGap;
}
} else {
struct NMTBCUSTOMDRAW {
NMCUSTOMDRAW nmcd;
HBRUSH hbrMonoDither;
HBRUSH hbrLines;
HPEN hpenLines;
COLORREF clrText;
COLORREF clrMark;
COLORREF clrTextHighlight;
COLORREF clrBtnFace;
COLORREF clrBtnHighlight;
COLORREF clrHighlightHotTrack;
RECT rcText;
int nStringBkMode;
int nHLStringBkMode;
}
}
alias NMTBCUSTOMDRAW* LPNMTBCUSTOMDRAW;
struct NMITEMACTIVATE {
NMHDR hdr;
int iItem;
int iSubItem;
UINT uNewState;
UINT uOldState;
UINT uChanged;
POINT ptAction;
LPARAM lParam;
UINT uKeyFlags;
}
alias NMITEMACTIVATE* LPNMITEMACTIVATE;
}
struct TBADDBITMAP {
HINSTANCE hInst;
UINT_PTR nID;
}
alias TBADDBITMAP* LPTBADDBITMAP;
struct TBSAVEPARAMSA {
HKEY hkr;
LPCSTR pszSubKey;
LPCSTR pszValueName;
}
struct TBSAVEPARAMSW {
HKEY hkr;
LPCWSTR pszSubKey;
LPCWSTR pszValueName;
}
struct TBREPLACEBITMAP {
HINSTANCE hInstOld;
UINT_PTR nIDOld;
HINSTANCE hInstNew;
UINT_PTR nIDNew;
int nButtons;
}
alias TBREPLACEBITMAP* LPTBREPLACEBITMAP;
static if (_WIN32_IE >= 0x500) {
struct NMTOOLBARA {
NMHDR hdr;
int iItem;
TBBUTTON tbButton;
int cchText;
LPSTR pszText;
RECT rcButton;
}
struct NMTOOLBARW {
NMHDR hdr;
int iItem;
TBBUTTON tbButton;
int cchText;
LPWSTR pszText;
RECT rcButton;
}
} else {
struct NMTOOLBARA {
NMHDR hdr;
int iItem;
TBBUTTON tbButton;
int cchText;
LPSTR pszText;
}
struct NMTOOLBARW {
NMHDR hdr;
int iItem;
TBBUTTON tbButton;
int cchText;
LPWSTR pszText;
}
}
alias NMTOOLBARA* LPNMTOOLBARA;
alias NMTOOLBARW* LPNMTOOLBARW;
alias NMTOOLBARA TBNOTIFYA;
alias LPNMTOOLBARA LPTBNOTIFYA;
alias NMTOOLBARW TBNOTIFYW;
alias LPNMTOOLBARW LPTBNOTIFYW;
static if (_WIN32_WINNT >= 0x501) {
struct TOOLINFOA {
UINT cbSize = TOOLINFOA.sizeof;
UINT uFlags;
HWND hwnd;
UINT_PTR uId;
RECT rect;
HINSTANCE hinst;
LPSTR lpszText;
LPARAM lParam;
void* lpReserved;
}
struct TOOLINFOW {
UINT cbSize = TOOLINFOW.sizeof;
UINT uFlags;
HWND hwnd;
UINT_PTR uId;