File: Windows.Win32.HDITEMW.g.cs
Project: src\src\System.Windows.Forms.Primitives\src\System.Windows.Forms.Primitives.csproj (System.Windows.Forms.Primitives)
// ------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
// ------------------------------------------------------------------------------

#pragma warning disable CS1591,CS1573,CS0465,CS0649,CS8019,CS1570,CS1584,CS1658,CS0436,CS8981
using global::System;
using global::System.Diagnostics;
using global::System.Diagnostics.CodeAnalysis;
using global::System.Runtime.CompilerServices;
using global::System.Runtime.InteropServices;
using global::System.Runtime.Versioning;
using winmdroot = global::Windows.Win32;
namespace Windows.Win32
{
	namespace UI.Controls
	{
		/// <summary>Contains information about an item in a header control. This structure supersedes the HD_ITEM structure. (Unicode)</summary>
		/// <remarks>
		/// <para><div class="alert"><b>Note</b>  Comctl32.dll version 6 is not redistributable but it is included in Windows. To use Comctl32.dll version 6, specify it in a manifest. For more information on manifests, see <a href="https://docs.microsoft.com/windows/desktop/Controls/cookbook-overview">Enabling Visual Styles</a>.</div> <div> </div></para>
		/// <para>> [!NOTE] > The commctrl.h header defines HDITEM as an alias which automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see [Conventions for Function Prototypes](/windows/win32/intl/conventions-for-function-prototypes).</para>
		/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#">Read more on docs.microsoft.com</see>.</para>
		/// </remarks>
		[global::System.CodeDom.Compiler.GeneratedCode("Microsoft.Windows.CsWin32", "0.3.151+58e949951d.RR")]
		internal partial struct HDITEMW
		{
			/// <summary>Type: <b><a href="https://docs.microsoft.com/windows/desktop/WinProg/windows-data-types">UINT</a></b></summary>
			internal winmdroot.UI.Controls.HDI_MASK mask;

			/// <summary>
			/// <para>Type: <b>int</b> The width or height of the item.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int cxy;

			/// <summary>
			/// <para>Type: <b><a href="https://docs.microsoft.com/windows/desktop/WinProg/windows-data-types">LPTSTR</a></b> A pointer to an item string. If the text is being retrieved from the control, this member must be initialized to point to a character buffer. If this member is set to LPSTR_TEXTCALLBACK, the control will request text information for this item by sending an <a href="https://docs.microsoft.com/windows/desktop/Controls/hdn-getdispinfo">HDN_GETDISPINFO</a> notification code. Note that although the header control allows a string of any length to be stored as item text, only the first 260 <b>TCHAR</b><b>s</b> are displayed.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.Foundation.PWSTR pszText;

			/// <summary>
			/// <para>Type: <b><a href="https://docs.microsoft.com/windows/desktop/WinProg/windows-data-types">HBITMAP</a></b> A handle to the item bitmap.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.Graphics.Gdi.HBITMAP hbm;

			/// <summary>
			/// <para>Type: <b>int</b> The length of the item string, in <b>TCHAR</b><b>s</b>. If the text is being retrieved from the control, this member must contain the number of <b>TCHAR</b><b>s</b> at the address specified by <b>pszText</b>.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int cchTextMax;

			/// <summary>
			/// <para>Type: <b>int</b> Flags that specify the item's format.</para>
			/// <para></para>
			/// <para>This doc was truncated.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.UI.Controls.HEADER_CONTROL_FORMAT_FLAGS fmt;

			/// <summary>
			/// <para>Type: <b><a href="https://docs.microsoft.com/windows/desktop/WinProg/windows-data-types">LPARAM</a></b> Application-defined item data.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.Foundation.LPARAM lParam;

			/// <summary>
			/// <para>Type: <b>int</b> The zero-based index of an image within the image list. The specified image will be displayed in the header item in addition to any image specified in the <b>hbm</b>  field. If <b>iImage</b> is set to I_IMAGECALLBACK, the control requests text information for this item by using an <a href="https://docs.microsoft.com/windows/desktop/Controls/hdn-getdispinfo">HDN_GETDISPINFO</a> notification code. To clear the image, set this value to I_IMAGENONE.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int iImage;

			/// <summary>
			/// <para>Type: <b>int</b> The order in which the item appears within the header control, from left to right. That is, the value for the far left item is 0. The value for the next item to the right is 1, and so on.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int iOrder;

			/// <summary>
			/// <para>Type: <b><a href="https://docs.microsoft.com/windows/desktop/WinProg/windows-data-types">UINT</a></b> The type of filter specified by <b>pvFilter</b>. The possible types include: </para>
			/// <para>This doc was truncated.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.UI.Controls.HEADER_CONTROL_FORMAT_TYPE type;

			/// <summary>
			/// <para>Type: <b>void*</b> The address of an application-defined data item. The data filter type is determined by setting the flag value of the  member. Use the HDFT_ISSTRING flag to indicate a string and HDFT_ISNUMBER to indicate an integer. When the HDFT_ISSTRING flag is used <b>pvFilter</b> is a pointer to a <a href="https://docs.microsoft.com/windows/desktop/api/commctrl/ns-commctrl-hd_textfiltera">HDTEXTFILTER</a> structure.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal unsafe void* pvFilter;

			/// <summary>
			/// <para>Type: <b><a href="https://docs.microsoft.com/windows/desktop/WinProg/windows-data-types">UINT</a></b> The state. The only valid, supported value for this member is the following: </para>
			/// <para>This doc was truncated.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-hditemw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.UI.Controls.HEADER_CONTROL_FORMAT_STATE state;
		}
	}
}