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 /** Window Management (Window) */ 18 /** */ 19 /**************************************************************************/ 20 /**************************************************************************/ 21 22 23 /**************************************************************************/ 24 /* */ 25 /* COMPONENT DEFINITION RELEASE */ 26 /* */ 27 /* gx_drop_list.h PORTABLE C */ 28 /* 6.1 */ 29 /* AUTHOR */ 30 /* */ 31 /* Kenneth Maxwell, Microsoft Corporation */ 32 /* */ 33 /* DESCRIPTION */ 34 /* */ 35 /* This file defines the GUIX window management component, */ 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_DROP_LIST_H 50 #define GX_DROP_LIST_H 51 52 /* Define drop list management function prototypes. */ 53 UINT _gx_drop_list_close(GX_DROP_LIST *drop_list); 54 UINT _gx_drop_list_create(GX_DROP_LIST *drop_list, GX_CONST GX_CHAR *name, 55 GX_WIDGET *parent, INT total_rows, INT open_height, 56 VOID (*callback)(GX_VERTICAL_LIST *, GX_WIDGET *, INT), 57 ULONG style, USHORT drop_list_id, GX_CONST GX_RECTANGLE *size); 58 VOID _gx_drop_list_draw(GX_DROP_LIST *box); 59 VOID _gx_drop_list_background_draw(GX_DROP_LIST *drop_list); 60 UINT _gx_drop_list_event_process(GX_DROP_LIST *widget, GX_EVENT *event_ptr); 61 UINT _gx_drop_list_open(GX_DROP_LIST *list); 62 UINT _gx_drop_list_pixelmap_set(GX_DROP_LIST *drop_list, GX_RESOURCE_ID pixelmap_id); 63 UINT _gx_drop_list_popup_get(GX_DROP_LIST *box, GX_VERTICAL_LIST **return_list); 64 65 66 UINT _gxe_drop_list_close(GX_DROP_LIST *drop_list); 67 UINT _gxe_drop_list_create(GX_DROP_LIST *drop_list, GX_CONST GX_CHAR *name, 68 GX_WIDGET *parent, INT total_rows, INT open_height, 69 VOID (*callback)(GX_VERTICAL_LIST *, GX_WIDGET *, INT), 70 ULONG style, USHORT drop_list_id, GX_CONST GX_RECTANGLE *size, UINT drop_list_control_block_size); 71 UINT _gxe_drop_list_event_process(GX_DROP_LIST *widget, GX_EVENT *event_ptr); 72 UINT _gxe_drop_list_open(GX_DROP_LIST *list); 73 UINT _gxe_drop_list_pixelmap_set(GX_DROP_LIST *drop_list, GX_RESOURCE_ID pixelmap_id); 74 UINT _gxe_drop_list_popup_get(GX_DROP_LIST *box, GX_VERTICAL_LIST **return_list); 75 76 #endif 77 78