@msdn=http://search.microsoft.com/search/results.aspx?qu=$$$ @pinvoke=http://pinvoke.net/$$$.htm Summary: Used with [DrawThemeTextEx] !!!!C# Definition: delegate int DTT_CALLBACK_PROC(IntPtr hdc, [MarshalAs(UnmanagedType.LPWStr)] string text, int textLen, ref RECT rc, int flags, IntPtr lParam); [StructLayout(LayoutKind.Sequential)] struct DTTOPTS { public int dwSize; public DTT dwFlags; public int crText; public int crBorder; public int crShadow; public TEXTSHADOWTYPE iTextShadowType; public System.Drawing.Point ptShadowOffset; public int iBorderSize; public int iFontPropId; public int iColorPropId; public int iStateId; [MarshalAs(UnmanagedType.Bool)] public bool fApplyOverlay; public int iGlowSize; [MarshalAs(UnmanagedType.FunctionPtr)] public DTT_CALLBACK_PROC pfnDrawTextCallback; public IntPtr lParam; } !!!!VB Definition: Structure DTTOPTS Public TODO End Structure !!!!User-Defined Field Types: [DTT], [TEXTSHADOWTYPE] !!!!Alternate C# Definition public delegate int DrawThemeTextCallback(IntPtr hdc, [MarshalAs(UnmanagedType.LPWStr)] string text, int textLen, ref RECT rc, int flags, IntPtr lParam); [StructLayout(LayoutKind.Sequential)] public struct DrawThemeTextOptions { private int dwSize; private DrawThemeTextOptionsFlags dwFlags; private int crText; private int crBorder; private int crShadow; private TextShadowType iTextShadowType; private System.Drawing.Point ptShadowOffset; private int iBorderSize; private int iFontPropId; private int iColorPropId; private int iStateId; [MarshalAs(UnmanagedType.Bool)] private bool fApplyOverlay; private int iGlowSize; [MarshalAs(UnmanagedType.FunctionPtr)] private DrawThemeTextCallback pfnDrawTextCallback; private IntPtr lParam; public DrawThemeTextOptions(bool init) : this() { dwSize = Marshal.SizeOf(typeof(DrawThemeTextOptions)); } public Color AlternateColor { get { return ColorTranslator.FromWin32(iColorPropId); } set { iColorPropId = ColorTranslator.ToWin32(value); dwFlags |= DrawThemeTextOptionsFlags.ColorProp; } } public DrawThemeTextSystemFonts AlternateFont { get { return (DrawThemeTextSystemFonts)iFontPropId; } set { iFontPropId = (int)value; dwFlags |= DrawThemeTextOptionsFlags.FontProp; } } public bool AntiAliasedAlpha { get { return (dwFlags & DrawThemeTextOptionsFlags.Composited) == DrawThemeTextOptionsFlags.Composited; } set { SetFlag(DrawThemeTextOptionsFlags.Composited, value); } } public bool ApplyOverlay { get { return fApplyOverlay; } set { fApplyOverlay = value; dwFlags |= DrawThemeTextOptionsFlags.ApplyOverlay; } } public Color BorderColor { get { return ColorTranslator.FromWin32(crBorder); } set { crBorder = ColorTranslator.ToWin32(value); dwFlags |= DrawThemeTextOptionsFlags.BorderColor; } } public int BorderSize { get { return iBorderSize; } set { iBorderSize = value; dwFlags |= DrawThemeTextOptionsFlags.BorderSize; } } public DrawThemeTextCallback Callback { get { return pfnDrawTextCallback; } set { pfnDrawTextCallback = value; dwFlags |= DrawThemeTextOptionsFlags.Callback; } } public int GlowSize { get { return iGlowSize; } set { iGlowSize = value; dwFlags |= DrawThemeTextOptionsFlags.GlowSize; } } public IntPtr LParam { get { return lParam; } set { lParam = value; } } public bool ReturnCalculatedRectangle { get { return (dwFlags & DrawThemeTextOptionsFlags.CalcRect) == DrawThemeTextOptionsFlags.CalcRect; } set { SetFlag(DrawThemeTextOptionsFlags.CalcRect, value); } } public Color ShadowColor { get { return ColorTranslator.FromWin32(crShadow); } set { crShadow = ColorTranslator.ToWin32(value); dwFlags |= DrawThemeTextOptionsFlags.ShadowColor; } } public Point ShadowOffset { get { return new Point(ptShadowOffset.X, ptShadowOffset.Y); } set { ptShadowOffset = value; dwFlags |= DrawThemeTextOptionsFlags.ShadowOffset; } } public TextShadowType ShadowType { get { return iTextShadowType; } set { iTextShadowType = value; dwFlags |= DrawThemeTextOptionsFlags.ShadowType; } } public Color TextColor { get { return ColorTranslator.FromWin32(crText); } set { crText = ColorTranslator.ToWin32(value); dwFlags |= DrawThemeTextOptionsFlags.TextColor; } } private void SetFlag(DrawThemeTextOptionsFlags f, bool value) { if (value) dwFlags |= f; else dwFlags &= ~f; } } !!!!Notes: None. Documentation: DTTOPTS@msdn on MSDN
Edit Structures.DTTOPTS
You do not have permission to change this page. If you feel this is in error, please send feedback with the contact link on the main page.