#ifndef PRO_COLOR_H #define PRO_COLOR_H #include <ProToolkit.h> #include <ProObjects.h> PRO_BEGIN_C_DECLS typedef enum { PRO_COLORMAP_STANDARD = 0, PRO_COLORMAP_PRE_WILDFIRE = 1 } ProColormapVersion; typedef enum { PRO_COLORMAP_ALT_DEFAULT = 0, PRO_COLORMAP_ALT_BLACK_ON_WHITE = 1, PRO_COLORMAP_ALT_WHITE_ON_BLACK = 2, PRO_COLORMAP_ALT_WHITE_ON_GREEN = 3, PRO_COLORMAP_OPTIONAL1 = 4, PRO_COLORMAP_OPTIONAL2 = 5, PRO_COLORMAP_CLASSIC_WF = 6 } ProColormapAlternatescheme; typedef enum pro_line_style { PRO_LINESTYLE_UNDEFINED = PRO_VALUE_UNUSED, PRO_LINESTYLE_SOLID = 0, /* solid line style */ PRO_LINESTYLE_DOT = 1, /* dotted line style */ PRO_LINESTYLE_CENTERLINE = 2, /* alternating long & short dashes */ PRO_LINESTYLE_PHANTOM = 3, /* alternating long dash and two dots */ PRO_LINESTYLE_DASH = 4, PRO_LINESTYLE_CTRL_S_L = 5, PRO_LINESTYLE_CTRL_L_L = 6, PRO_LINESTYLE_CTRL_S_S = 7, PRO_LINESTYLE_DASH_S_S = 8, PRO_LINESTYLE_PHANTOM_S_S = 9, PRO_LINESTYLE_CTRL_MID_L = 10, PRO_LINESTYLE_INTMIT_LWW_HIDDEN = 11, PRO_LINESTYLE_PDFHIDDEN_LINESTYLE = 12 } ProLinestyle; typedef struct pro_color_map { double red; /* percentage of red from 0.0 to 1.0 */ double green; /* percentage of green from 0.0 to 1.0 */ double blue; /* percentage of blue from 0.0 to 1.0 */ } ProColormap; typedef enum pro_color_method { PRO_COLOR_METHOD_DEFAULT, PRO_COLOR_METHOD_TYPE, PRO_COLOR_METHOD_RGB } ProColorMethod; typedef struct pro_color { ProColorMethod method; union { ProColortype type; ProColormap map; } value; } ProColor; typedef struct pro_linestyle { ProName line_style_name; ProName line_definition; ProName cap_style; ProName join_style; double dash_offset; int len_of_dash_list; double *dash_list; ProName fill_style; ProName fill_rule; } ProLinestyleData; /*===========================================================================*/ extern ProError ProTextColorSet ( ProColortype new_text_color, ProColortype *p_old_text_color); /* Purpose: Enables you to change the text color so any subsequent graphics window text is drawn in the specified color. <p> NOTE: <p> This function is deprecated. Use ProTextColorModify instead. Input Arguments: new_text_color - The new color to use to display text. The default color is yellow. Output Arguments: p_old_text_color - The previous text color. May be NULL. Return Values: PRO_TK_NO_ERROR - The function successfully changed the color. PRO_TK_NO_CHANGE - The current color is the same as the new color. */ /*===========================================================================*/ extern ProError ProTextColorModify ( ProColor *new_text_color, ProColor *p_old_text_color); /* Purpose: Enables you to change the text color so any subsequent graphics window text is drawn in the specified color. Input Arguments: new_text_color - The new color to use to display text. If the color method is PRO_COLOR_METHOD_DEFAULT, the color used will be PRO_TEXT_COLOR. May be NULL, in which case the current text color will be returned. Output Arguments: p_old_text_color - The previous text color. May be NULL. Return Values: PRO_TK_NO_ERROR - The function successfully changed the color. PRO_TK_NO_CHANGE - The current color is the same as the new color. PRO_TK_BAD_INPUTS - One or more of the input arguments are invalid. */ extern ProError ProColormapGet ( ProColortype color_type, ProColormap* color); /* Purpose: Retrieves the RGB values for the specified color value. Input Arguments: color_type - The color type Output Arguments: color - The RGB value Return Values: PRO_TK_NO_ERROR - The function successfully retrieved the RGB values. PRO_TK_BAD_INPUTS - Either the color identifier is invalid or the color is NULL. */ extern ProError ProColorByTypeGet ( ProDisplayedType object_type, ProColortype* color); /* Purpose: Retrieves the standard color used for the specified object type. Input Arguments: object_type - The object type. Output Arguments: color - The color typically used by Creo Parametric to render the object. Return Values: PRO_TK_NO_ERROR - The function successfully retrieved the color. PRO_TK_BAD_INPUTS - One or more arguments are invalid. PRO_TK_E_NOT_FOUND - No default color entry exists for this entity type. */ extern ProError ProColormapSet ( ProColortype color_type, PRO_CONST_ARG ProColormap* color); /* Purpose: Enables you to set the values of the three color components for a specified color value. Input Arguments: color_type - The color type color - The RGB value Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function successfully set the color values. PRO_TK_BAD_INPUTS - Either the color identifier is invalid or the color is NULL. */ extern ProError ProLinestyleSet ( ProLinestyle line_style, ProLinestyle* old_style); /* Purpose: Sets the line style for the graphics drawn by Creo Parametric TOOLKIT. Input Arguments: line_style - The new line style. Output Arguments: old_style - The previous line style. This can be NULL. Return Values: PRO_TK_NO_ERROR - The function successfully set the color. PRO_TK_NO_CHANGE - The new line style is the same as the old line style. */ extern ProError ProLinestyleDataGet ( ProLinestyle style, ProLinestyleData* style_info); /* Purpose: Provides a description of the specified line style. Input Arguments: style - The style type. Output Arguments: style_info - The line style information. Note that the field <i>dash_list</i> is allocated by the function. To free the data, call the function <b>ProArrayFree()</b>. Return Values: PRO_TK_NO_ERROR - The function successfully returned the information. PRO_TK_BAD_INPUTS - The specified style is invalid. PRO_TK_INVALID_PTR - The <i>style_info</i> == NULL. See Also: ProArrayFree() */ extern ProError ProColormapVersionGet (ProColormapVersion *current_version); /* Purpose: Get the current color map version. Input Arguments: none Output Arguments: current_version - Pointer to current color map version. Return Values: PRO_TK_NO_ERROR - The function successfully retrieved the color map version. PRO_TK_BAD_INPUTS - Current color map version pointer is NULL. See Also: ProColormapVersionSet() */ extern ProError ProColormapVersionSet (ProColormapVersion current_version); /* Purpose: Set the current color map version. Input Arguments: current_version - New color map version. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function successfully set the color map version. PRO_TK_BAD_INPUTS - Color map version is invalid. PRO_TK_GENERAL_ERROR - Unable to set the color map version. See Also: ProColormapVersionGet() */ extern ProError ProColormapAlternateschemeGet(ProColormapAlternatescheme *alt_scheme); /* Purpose: Get the current color map alternate scheme. Input Arguments: none Output Arguments: alt_scheme - Pointer to current color map alternate scheme. Return Values: PRO_TK_NO_ERROR - The function successfully retrieved the color map alternate scheme. PRO_TK_BAD_INPUTS - Current color map alternate scheme pointer is NULL. PRO_TK_GENERAL_ERROR - Current color map alternate scheme is invalid. See Also: ProColormapAlternateschemeSet() */ extern ProError ProColormapAlternateschemeSet( ProColormapAlternatescheme alt_scheme); /* Purpose: Set the current color map alternate scheme. Input Arguments: alt_scheme - New color map alternate scheme. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function successfully set the color map alternate scheme. PRO_TK_BAD_INPUTS - New color map alternate scheme is invalid. PRO_TK_GENERAL_ERROR - Unable to set the color map alternate scheme. See Also: ProColormapAlternateschemeGet() */ PRO_END_C_DECLS #endif