1 /*************************************************************************** 2 * Copyright (c) 2024 Microsoft Corporation 3 * 4 * This program and the accompanying materials are made available under the 5 * terms of the MIT License which is available at 6 * https://opensource.org/licenses/MIT. 7 * 8 * SPDX-License-Identifier: MIT 9 **************************************************************************/ 10 11 12 /**************************************************************************/ 13 /**************************************************************************/ 14 /** */ 15 /** GUIX Component */ 16 /** */ 17 /** Line Chart (Charting) */ 18 /** */ 19 /**************************************************************************/ 20 /**************************************************************************/ 21 22 23 /**************************************************************************/ 24 /* */ 25 /* COMPONENT DEFINITION RELEASE */ 26 /* */ 27 /* gx_line_chart.h PORTABLE C */ 28 /* 6.1 */ 29 /* AUTHOR */ 30 /* */ 31 /* Kenneth Maxwell, Microsoft Corporation */ 32 /* */ 33 /* DESCRIPTION */ 34 /* */ 35 /* This file defines the GUIX line chart component, including all data */ 36 /* types and external references. It is assumed that gx_api.h and */ 37 /* gx_port.h have already been included. */ 38 /* */ 39 /* RELEASE HISTORY */ 40 /* */ 41 /* DATE NAME DESCRIPTION */ 42 /* */ 43 /* 05-19-2020 Kenneth Maxwell Initial Version 6.0 */ 44 /* 09-30-2020 Kenneth Maxwell Modified comment(s), */ 45 /* resulting in version 6.1 */ 46 /* */ 47 /**************************************************************************/ 48 49 #ifndef GX_LINE_CHART_H 50 #define GX_LINE_CHART_H 51 52 /* APIs defined for line chart widget */ 53 54 VOID _gx_line_chart_axis_draw(GX_LINE_CHART *chart); 55 UINT _gx_line_chart_create(GX_LINE_CHART *chart, 56 GX_CONST GX_CHAR *name, 57 GX_WIDGET *parent, 58 GX_CONST GX_LINE_CHART_INFO *info, 59 ULONG style, 60 USHORT chart_id, 61 GX_CONST GX_RECTANGLE *size); 62 VOID _gx_line_chart_data_draw(GX_LINE_CHART *chart); 63 VOID _gx_line_chart_draw(GX_LINE_CHART *chart); 64 UINT _gx_line_chart_update(GX_LINE_CHART *chart, INT *data, INT data_count); 65 UINT _gx_line_chart_y_scale_calculate(GX_LINE_CHART *chart_info, INT *return_val); 66 67 /* Define error checking shells for API services. These are only referenced by the 68 application. */ 69 70 UINT _gxe_line_chart_create(GX_LINE_CHART *chart, 71 GX_CONST GX_CHAR *name, 72 GX_WIDGET *parent, 73 GX_CONST GX_LINE_CHART_INFO *info, 74 ULONG style, 75 USHORT chart_id, 76 GX_CONST GX_RECTANGLE *size, 77 UINT control_block_size); 78 UINT _gxe_line_chart_update(GX_LINE_CHART *chart, INT *data, INT data_count); 79 UINT _gxe_line_chart_y_scale_calculate(GX_LINE_CHART *chart_info, INT *return_val); 80 81 82 #endif 83 84