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 /** Progress Bar Management (Radial Progress Bar) */ 18 /** */ 19 /**************************************************************************/ 20 /**************************************************************************/ 21 22 23 /**************************************************************************/ 24 /* */ 25 /* COMPONENT DEFINITION RELEASE */ 26 /* */ 27 /* gx_radial_progress_bar.h PORTABLE C */ 28 /* 6.1 */ 29 /* AUTHOR */ 30 /* */ 31 /* Kenneth Maxwell, Microsoft Corporation */ 32 /* */ 33 /* DESCRIPTION */ 34 /* */ 35 /* This file defines the GUIX progress bar widget, */ 36 /* including all data types and external references. It is assumed */ 37 /* that gx_api.h and 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_RADIAL_PROGRESS_BAR_H 50 #define GX_RADIAL_PROGRESS_BAR_H 51 52 53 /* Define radial progress bar management function prototypes. */ 54 55 UINT _gx_radial_progress_bar_anchor_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_VALUE angle); 56 VOID _gx_radial_progress_bar_background_draw(GX_RADIAL_PROGRESS_BAR *progress_bar); 57 UINT _gx_radial_progress_bar_create(GX_RADIAL_PROGRESS_BAR *progress_bar, 58 GX_CONST GX_CHAR *name, 59 GX_WIDGET *parent, 60 GX_RADIAL_PROGRESS_BAR_INFO *progress_bar_info, 61 ULONG style, 62 USHORT progress_bar_id); 63 VOID _gx_radial_progress_bar_draw(GX_RADIAL_PROGRESS_BAR *progress_bar); 64 UINT _gx_radial_progress_bar_event_process(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_EVENT *event_ptr); 65 UINT _gx_radial_progress_bar_font_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_RESOURCE_ID font_id); 66 UINT _gx_radial_progress_bar_info_set(GX_RADIAL_PROGRESS_BAR *bar, GX_RADIAL_PROGRESS_BAR_INFO *info); 67 UINT _gx_radial_progress_bar_resize(GX_RADIAL_PROGRESS_BAR *radial_progress); 68 UINT _gx_radial_progress_bar_size_update(GX_RADIAL_PROGRESS_BAR *bar); 69 UINT _gx_radial_progress_bar_text_color_set(GX_RADIAL_PROGRESS_BAR *progress_bar, 70 GX_RESOURCE_ID normal_text_color_id, 71 GX_RESOURCE_ID selected_text_color_id, 72 GX_RESOURCE_ID disabled_text_color_id); 73 VOID _gx_radial_progress_bar_text_draw(GX_RADIAL_PROGRESS_BAR *bar); 74 UINT _gx_radial_progress_bar_value_calculate(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_POINT new_position); 75 UINT _gx_radial_progress_bar_value_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_VALUE new_value); 76 77 78 /* Define error checking shells for API services. These are only referenced by the 79 application. */ 80 81 UINT _gxe_radial_progress_bar_anchor_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_VALUE angle); 82 UINT _gxe_radial_progress_bar_create(GX_RADIAL_PROGRESS_BAR *progress_bar, 83 GX_CONST GX_CHAR *name, 84 GX_WIDGET *parent, 85 GX_RADIAL_PROGRESS_BAR_INFO *progress_bar_info, 86 ULONG style, 87 USHORT progress_bar_id, 88 UINT progress_bar_control_block_size); 89 UINT _gxe_radial_progress_bar_event_process(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_EVENT *event_ptr); 90 UINT _gxe_radial_progress_bar_font_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_RESOURCE_ID font_id); 91 UINT _gxe_radial_progress_bar_text_color_set(GX_RADIAL_PROGRESS_BAR *progress_bar, 92 GX_RESOURCE_ID normal_text_color_id, 93 GX_RESOURCE_ID selected_text_color_id, 94 GX_RESOURCE_ID disabled_text_color_id); 95 UINT _gxe_radial_progress_bar_info_set(GX_RADIAL_PROGRESS_BAR *bar, GX_RADIAL_PROGRESS_BAR_INFO *info); 96 UINT _gxe_radial_progress_bar_value_set(GX_RADIAL_PROGRESS_BAR *progress_bar, GX_VALUE new_value); 97 98 99 #endif 100 101