IVsPackageDefinedTextMarkerType.DrawGlyphWithColors (Método)
Dibuja un glifo en el contexto y el rectángulo delimitador especificados de la pantalla mediante colores proporcionados.
Espacio de nombres: Microsoft.VisualStudio.TextManager.Interop
Ensamblado: Microsoft.VisualStudio.TextManager.Interop (en Microsoft.VisualStudio.TextManager.Interop.dll)
Sintaxis
'Declaración
Function DrawGlyphWithColors ( _
hdc As IntPtr, _
pRect As RECT(), _
iMarkerType As Integer, _
pMarkerColors As IVsTextMarkerColorSet, _
dwGlyphDrawFlags As UInteger, _
iLineHeight As Integer _
) As Integer
int DrawGlyphWithColors(
IntPtr hdc,
RECT[] pRect,
int iMarkerType,
IVsTextMarkerColorSet pMarkerColors,
uint dwGlyphDrawFlags,
int iLineHeight
)
int DrawGlyphWithColors(
[InAttribute] IntPtr hdc,
[InAttribute] array<RECT>^ pRect,
[InAttribute] int iMarkerType,
[InAttribute] IVsTextMarkerColorSet^ pMarkerColors,
[InAttribute] unsigned int dwGlyphDrawFlags,
[InAttribute] int iLineHeight
)
abstract DrawGlyphWithColors :
hdc:IntPtr *
pRect:RECT[] *
iMarkerType:int *
pMarkerColors:IVsTextMarkerColorSet *
dwGlyphDrawFlags:uint32 *
iLineHeight:int -> int
function DrawGlyphWithColors(
hdc : IntPtr,
pRect : RECT[],
iMarkerType : int,
pMarkerColors : IVsTextMarkerColorSet,
dwGlyphDrawFlags : uint,
iLineHeight : int
) : int
Parámetros
hdc
Tipo: IntPtr[in] Identificador a un contexto de dispositivo de pantalla que define el área visible de interés.
pRect
Tipo: array<RECT[][in] Puntero a una estructura RECT que define el rectángulo delimitador del marcador.
iMarkerType
Tipo: Int32[in] Entero que contiene el tipo de marcador.
pMarkerColors
Tipo: Microsoft.VisualStudio.TextManager.Interop.IVsTextMarkerColorSet[in] Puntero a un objeto de color del marcador.
dwGlyphDrawFlags
Tipo: UInt32[in] Opciones para dibujar el glifo en el margen del widget. Para obtener una lista de valores de dwGlyphDrawFlags , vea GLYPHDRAWFLAGS
iLineHeight
Tipo: Int32[in] entero que especifica el alto de línea.
Valor devuelto
Tipo: Int32
si el método tiene éxito, devuelve S_OK.Si se produce un error, devuelve un código de error.
Comentarios
Prototipo COM
de textmgr.idl:
HRESULT IVsPackageDefinedTextMarkerType::DrawGlyphWithColors(
[in] HDC hdc, [in] RECT *pRect,
[in] long iMarkerType,
[in] IVsTextMarkerColorSet *pMarkerColors,
[in] DWORD dwGlyphDrawFlags,
[in] long iLineHeight
);
Este método llama el entorno si especifica un valor de MV_GLYPH para el tipo de marcador. Para utilizar este método, se dibuja el glifo en el área visible de interés especificada por el parámetro de hdc dentro del rectángulo delimitador. En lugar de colores difíciles de codificación, utilice el parámetro de pMarkerColors para llamar a GetMarkerColors y devolver los colores del tipo actual de marcador o de marcadores relacionados para sincronizarle con las personalizaciones de color del usuario. Se utiliza la razón IVsTextMarkerColorSet para determinar colores es que algunos tipos de marcador utilizan los colores del glifo que son diferentes de los colores del texto en línea y se cierre desactivada de otros marcadores.
Siga estas instrucciones al implementar DrawGlyphWithColors:
No dibuje nada fuera del rectángulo delimitador que cambia con el parámetro de pRect .
Utilice los primitivos (GDI) de la Interfaz de dispositivo gráfico en lugar de mapas de bits, porque el tamaño de una línea puede variar sobre un número ancho de tamaños y el ajuste de escala de gráficos se requiere. Sin embargo, si desea utilizar mapas de bits, proporcione diferentes tamaños bitmap para poder estirarlos para funcionar correctamente en todos los tamaños disponibles de la línea que el usuario puede establecer, incluidos los tamaños muy grandes para accesibilidad necesita.
No se dibuja ningún texto en el marcador para escalar propósitos. Incluso los símbolos universales, como un signo de exclamación, no se recomiendan.
Si especificó un valor de MV_MULTILINE_GLYPH en el estilo de marcador, esta función se denomina dos veces para cada paso de representación (una vez para pintar el interior y la cola del glifo, y dibujar de nuevo la parte superior. El valor de dwGlyphDrawFlags empleó en este método indica qué hacer:
Si GDF_MULTILINE no se pasa, después simplemente dibuja el borde superior del marcador.
Si se especifica GDF_MULTILINE, se tiene que realizar algunos cálculos basados en otros marcadores para completar el área de glifo de marcador. Si GDF_BOTTOMEDGEse pasa, utiliza a la parte del alto de línea en la parte inferior del rectángulo delimitador de entrada para dibujar una cola del glifo. Si GDF_TOPEDGE se pasa, utiliza a la parte del alto de línea superior para dibujar la parte superior del glifo. Cualquier sitio restante del rectángulo delimitador de entrada es el interior y debe pintar por la función.
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.
Vea también
Referencia
IVsPackageDefinedTextMarkerType Interfaz
Microsoft.VisualStudio.TextManager.Interop (Espacio de nombres)