Mercurial > dwindows
diff os2/dw.c @ 174:75bf3051235f
Fixes so you can mix compilers.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Sun, 01 Dec 2002 12:59:24 +0000 |
parents | 0fc45e386376 |
children | d78d08440246 |
line wrap: on
line diff
--- a/os2/dw.c Sun Dec 01 11:18:14 2002 +0000 +++ b/os2/dw.c Sun Dec 01 12:59:24 2002 +0000 @@ -2934,7 +2934,7 @@ * newthread: True if this is the only thread. * False if there is already a message loop running. */ -int dw_init(int newthread, int argc, char *argv[]) +int API dw_init(int newthread, int argc, char *argv[]) { APIRET rc; @@ -2956,7 +2956,7 @@ /* * Runs a message loop for Dynamic Windows. */ -void dw_main(void) +void API dw_main(void) { QMSG qmsg; @@ -2974,7 +2974,7 @@ * Parameters: * milliseconds: Number of milliseconds to run the loop for. */ -void dw_main_sleep(int milliseconds) +void API dw_main_sleep(int milliseconds) { QMSG qmsg; double start = (double)clock(); @@ -2997,7 +2997,7 @@ * ptr: Pointer to dynamic windows allocated * memory to be free()'d. */ -void dw_free(void *ptr) +void API dw_free(void *ptr) { free(ptr); } @@ -3007,7 +3007,7 @@ * Parameters: * data: User defined data to be passed to functions. */ -DWDialog *dw_dialog_new(void *data) +DWDialog * API dw_dialog_new(void *data) { DWDialog *tmp = malloc(sizeof(DWDialog)); @@ -3027,7 +3027,7 @@ * dialog: Pointer to a dialog struct aquired by dw_dialog_new). * result: Data to be returned by dw_dialog_wait(). */ -int dw_dialog_dismiss(DWDialog *dialog, void *result) +int API dw_dialog_dismiss(DWDialog *dialog, void *result) { dialog->result = result; dw_event_post(dialog->eve); @@ -3041,7 +3041,7 @@ * Parameters: * dialog: Pointer to a dialog struct aquired by dw_dialog_new). */ -void *dw_dialog_wait(DWDialog *dialog) +void * API dw_dialog_wait(DWDialog *dialog) { QMSG qmsg; void *tmp; @@ -3066,7 +3066,7 @@ * format: printf style format string. * ...: Additional variables for use in the format. */ -int dw_messagebox(char *title, char *format, ...) +int API dw_messagebox(char *title, char *format, ...) { va_list args; char outbuf[1024]; @@ -3088,7 +3088,7 @@ * Returns: * True if YES False of NO. */ -int dw_yesno(char *title, char *text) +int API dw_yesno(char *title, char *text) { if(WinMessageBox(HWND_DESKTOP, HWND_DESKTOP, text, title, 0, MB_YESNO | MB_INFORMATION | MB_MOVEABLE | MB_SYSTEMMODAL)==MBID_YES) return TRUE; @@ -3100,7 +3100,7 @@ * Parameters: * handle: The window handle to make topmost. */ -int dw_window_raise(HWND handle) +int API dw_window_raise(HWND handle) { return WinSetWindowPos(handle, HWND_TOP, 0, 0, 0, 0, SWP_ZORDER); } @@ -3110,7 +3110,7 @@ * Parameters: * handle: The window handle to make bottommost. */ -int dw_window_lower(HWND handle) +int API dw_window_lower(HWND handle) { return WinSetWindowPos(handle, HWND_BOTTOM, 0, 0, 0, 0, SWP_ZORDER); } @@ -3120,7 +3120,7 @@ * Parameters: * handle: The window handle to make visible. */ -int dw_window_show(HWND handle) +int API dw_window_show(HWND handle) { int rc = WinSetWindowPos(handle, NULLHANDLE, 0, 0, 0, 0, SWP_SHOW); HSWITCH hswitch; @@ -3177,7 +3177,7 @@ * Parameters: * handle: The window handle to minimize. */ -int dw_window_minimize(HWND handle) +int API dw_window_minimize(HWND handle) { HWND hwndclient = WinWindowFromID(handle, FID_CLIENT); @@ -3200,7 +3200,7 @@ * Parameters: * handle: The window handle to make visible. */ -int dw_window_hide(HWND handle) +int API dw_window_hide(HWND handle) { HSWITCH hswitch; SWCNTRL swcntrl; @@ -3221,7 +3221,7 @@ * Parameters: * handle: The window handle to destroy. */ -int dw_window_destroy(HWND handle) +int API dw_window_destroy(HWND handle) { HWND parent = WinQueryWindow(handle, QW_PARENT); Box *thisbox = WinQueryWindowPtr(parent, QWP_USER); @@ -3267,7 +3267,7 @@ * Parameters: * handle: Toplevel window handle to be redrawn. */ -void dw_window_redraw(HWND handle) +void API dw_window_redraw(HWND handle) { HWND client = WinWindowFromID(handle, FID_CLIENT); HWND window = client ? client : handle; @@ -3291,7 +3291,7 @@ * handle: The window handle to destroy. * newparent: The window's new parent window. */ -void dw_window_reparent(HWND handle, HWND newparent) +void API dw_window_reparent(HWND handle, HWND newparent) { HWND blah = WinWindowFromID(newparent, FID_CLIENT); WinSetParent(handle, blah ? blah : newparent, TRUE); @@ -3303,7 +3303,7 @@ * handle: The window (widget) handle. * fontname: Name and size of the font in the form "size.fontname" */ -int dw_window_set_font(HWND handle, char *fontname) +int API dw_window_set_font(HWND handle, char *fontname) { return WinSetPresParam(handle, PP_FONTNAMESIZE, strlen(fontname)+1, fontname); } @@ -3362,7 +3362,7 @@ * fore: Foreground color in DW_RGB format or a default color index. * back: Background color in DW_RGB format or a default color index. */ -int dw_window_set_color(HWND handle, ULONG fore, ULONG back) +int API dw_window_set_color(HWND handle, ULONG fore, ULONG back) { dw_window_set_data(handle, "_dw_fore", (void *)fore); dw_window_set_data(handle, "_dw_back", (void *)back); @@ -3376,7 +3376,7 @@ * handle: The window (widget) handle. * border: Size of the window border in pixels. */ -int dw_window_set_border(HWND handle, int border) +int API dw_window_set_border(HWND handle, int border) { WinSendMsg(handle, WM_SETBORDERSIZE, MPFROMSHORT(border), MPFROMSHORT(border)); return 0; @@ -3387,7 +3387,7 @@ * Parameters: * handle: Handle to receive mouse input. */ -void dw_window_capture(HWND handle) +void API dw_window_capture(HWND handle) { WinSetCapture(HWND_DESKTOP, handle); } @@ -3395,7 +3395,7 @@ /* * Releases previous mouse capture. */ -void dw_window_release(void) +void API dw_window_release(void) { WinSetCapture(HWND_DESKTOP, NULLHANDLE); } @@ -3405,7 +3405,7 @@ * Parameters: * handle: Handle to frame to be tracked. */ -void dw_window_track(HWND handle) +void API dw_window_track(HWND handle) { WinSendMsg(handle, WM_TRACKFRAME, MPFROMSHORT(TF_MOVE), 0); } @@ -3416,7 +3416,7 @@ * handle: Handle to widget for which to change. * cursortype: ID of the pointer you want. */ -void dw_window_pointer(HWND handle, int pointertype) +void API dw_window_pointer(HWND handle, int pointertype) { WinSetPointer(handle, WinQuerySysPointer(HWND_DESKTOP, @@ -3431,7 +3431,7 @@ * title: The Window title. * flStyle: Style flags, see the PM reference. */ -HWND dw_window_new(HWND hwndOwner, char *title, ULONG flStyle) +HWND API dw_window_new(HWND hwndOwner, char *title, ULONG flStyle) { HWND hwndclient = 0, hwndframe; Box *newbox = calloc(1, sizeof(Box)); @@ -3468,7 +3468,7 @@ * type: Either BOXVERT (vertical) or BOXHORZ (horizontal). * pad: Number of pixels to pad around the box. */ -HWND dw_box_new(int type, int pad) +HWND API dw_box_new(int type, int pad) { Box *newbox = calloc(1, sizeof(Box)); HWND hwndframe; @@ -3503,7 +3503,7 @@ * pad: Number of pixels to pad around the box. * title: Text to be displayined in the group outline. */ -HWND dw_groupbox_new(int type, int pad, char *title) +HWND API dw_groupbox_new(int type, int pad, char *title) { Box *newbox = calloc(1, sizeof(Box)); HWND hwndframe; @@ -3548,7 +3548,7 @@ * Parameters: * id: An ID to be used with dw_window_from_id or 0L. */ -HWND dw_mdi_new(unsigned long id) +HWND API dw_mdi_new(unsigned long id) { HWND hwndframe; @@ -3571,7 +3571,7 @@ * Parameters: * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_bitmap_new(ULONG id) +HWND API dw_bitmap_new(ULONG id) { return WinCreateWindow(HWND_OBJECT, WC_STATIC, @@ -3591,7 +3591,7 @@ * id: An ID to be used for getting the resource from the * resource file. */ -HWND dw_notebook_new(ULONG id, int top) +HWND API dw_notebook_new(ULONG id, int top) { ULONG flags; HWND tmp; @@ -3631,7 +3631,7 @@ * id: An ID to be used for getting the resource from the * resource file. */ -HMENUI dw_menu_new(ULONG id) +HMENUI API dw_menu_new(ULONG id) { HMENUI tmp = malloc(sizeof(struct _hmenui)); @@ -3656,7 +3656,7 @@ * Parameters: * location: Handle of a window frame to be attached to. */ -HMENUI dw_menubar_new(HWND location) +HMENUI API dw_menubar_new(HWND location) { HMENUI tmp = malloc(sizeof(struct _hmenui)); @@ -3681,7 +3681,7 @@ * Parameters: * menu: Handle of a menu. */ -void dw_menu_destroy(HMENUI *menu) +void API dw_menu_destroy(HMENUI *menu) { if(menu && *menu) { @@ -3702,7 +3702,7 @@ * check: If TRUE menu is "check"able. * submenu: Handle to an existing menu to be a submenu or NULL. */ -HWND dw_menu_append_item(HMENUI menux, char *title, ULONG id, ULONG flags, int end, int check, HMENUI submenu) +HWND API dw_menu_append_item(HMENUI menux, char *title, ULONG id, ULONG flags, int end, int check, HMENUI submenu) { MENUITEM miSubMenu; HWND menu; @@ -3740,7 +3740,7 @@ * id: Menuitem id. * check: TRUE for checked FALSE for not checked. */ -void dw_menu_item_set_check(HMENUI menux, unsigned long id, int check) +void API dw_menu_item_set_check(HMENUI menux, unsigned long id, int check) { HWND menu; @@ -3765,7 +3765,7 @@ * x: X coordinate. * y: Y coordinate. */ -void dw_menu_popup(HMENUI *menu, HWND parent, int x, int y) +void API dw_menu_popup(HMENUI *menu, HWND parent, int x, int y) { if(menu && *menu) { @@ -3782,7 +3782,7 @@ * x: Pointer to variable to store X coordinate. * y: Pointer to variable to store Y coordinate. */ -void dw_pointer_query_pos(long *x, long *y) +void API dw_pointer_query_pos(long *x, long *y) { POINTL ptl; @@ -3800,7 +3800,7 @@ * x: X coordinate. * y: Y coordinate. */ -void dw_pointer_set_pos(long x, long y) +void API dw_pointer_set_pos(long x, long y) { WinSetPointerPos(HWND_DESKTOP, x, dw_screen_height() - y); } @@ -3811,7 +3811,7 @@ * id: An ID to be used for getting the resource from the * resource file. */ -HWND dw_container_new(ULONG id) +HWND API dw_container_new(ULONG id) { WindowData *blah = calloc(1, sizeof(WindowData)); HWND tmp = WinCreateWindow(HWND_OBJECT, @@ -3838,7 +3838,7 @@ * id: An ID to be used for getting the resource from the * resource file. */ -HWND dw_tree_new(ULONG id) +HWND API dw_tree_new(ULONG id) { CNRINFO cnrinfo; WindowData *blah = calloc(1, sizeof(WindowData)); @@ -3875,7 +3875,7 @@ * text: The text to be display by the static text widget. * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_text_new(char *text, ULONG id) +HWND API dw_text_new(char *text, ULONG id) { HWND tmp = WinCreateWindow(HWND_OBJECT, WC_STATIC, @@ -3898,7 +3898,7 @@ * text: The text to be display by the static text widget. * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_status_text_new(char *text, ULONG id) +HWND API dw_status_text_new(char *text, ULONG id) { WindowData *blah = calloc(sizeof(WindowData), 1); HWND tmp = WinCreateWindow(HWND_OBJECT, @@ -3928,7 +3928,7 @@ * Parameters: * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_mle_new(ULONG id) +HWND API dw_mle_new(ULONG id) { WindowData *blah = calloc(1, sizeof(WindowData)); HWND tmp = WinCreateWindow(HWND_OBJECT, @@ -3956,7 +3956,7 @@ * text: The default text to be in the entryfield widget. * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_entryfield_new(char *text, ULONG id) +HWND API dw_entryfield_new(char *text, ULONG id) { WindowData *blah = calloc(1, sizeof(WindowData)); @@ -3984,7 +3984,7 @@ * text: The default text to be in the entryfield widget. * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_entryfield_password_new(char *text, ULONG id) +HWND API dw_entryfield_password_new(char *text, ULONG id) { WindowData *blah = calloc(1, sizeof(WindowData)); HWND tmp = WinCreateWindow(HWND_OBJECT, @@ -4011,7 +4011,7 @@ * text: The default text to be in the combpbox widget. * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_combobox_new(char *text, ULONG id) +HWND API dw_combobox_new(char *text, ULONG id) { WindowData *blah = calloc(1, sizeof(WindowData)); HWND tmp = WinCreateWindow(HWND_OBJECT, @@ -4048,7 +4048,7 @@ * text: The text to be display by the static text widget. * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_button_new(char *text, ULONG id) +HWND API dw_button_new(char *text, ULONG id) { BubbleButton *bubble = calloc(sizeof(BubbleButton), 1); @@ -4112,7 +4112,7 @@ * text: Bubble help text to be displayed. * id: An ID of a bitmap in the resource file. */ -HWND dw_bitmapbutton_new(char *text, ULONG id) +HWND API dw_bitmapbutton_new(char *text, ULONG id) { char idbuf[256]; HWND tmp; @@ -4148,7 +4148,7 @@ * text: The text to be display by the static text widget. * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_spinbutton_new(char *text, ULONG id) +HWND API dw_spinbutton_new(char *text, ULONG id) { WindowData *blah = calloc(sizeof(WindowData), 1); HWND tmp = WinCreateWindow(HWND_OBJECT, @@ -4178,7 +4178,7 @@ * text: The text to be display by the static text widget. * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_radiobutton_new(char *text, ULONG id) +HWND API dw_radiobutton_new(char *text, ULONG id) { WindowData *blah = calloc(sizeof(WindowData), 1); HWND tmp = WinCreateWindow(HWND_OBJECT, @@ -4207,7 +4207,7 @@ * increments: Number of increments available. * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_slider_new(int vertical, int increments, ULONG id) +HWND API dw_slider_new(int vertical, int increments, ULONG id) { WindowData *blah = calloc(1, sizeof(WindowData)); SLDCDATA sldcData = { 0, 0, 0, 0, 0 }; @@ -4236,7 +4236,7 @@ * Parameters: * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_percent_new(ULONG id) +HWND API dw_percent_new(ULONG id) { WindowData *blah = calloc(1, sizeof(WindowData)); HWND tmp = WinCreateWindow(HWND_OBJECT, @@ -4262,7 +4262,7 @@ * text: The text to be display by the static text widget. * id: An ID to be used with WinWindowFromID() or 0L. */ -HWND dw_checkbox_new(char *text, ULONG id) +HWND API dw_checkbox_new(char *text, ULONG id) { BubbleButton *bubble = calloc(sizeof(BubbleButton), 1); HWND tmp = WinCreateWindow(HWND_OBJECT, @@ -4290,7 +4290,7 @@ * id: An ID to be used with WinWindowFromID() or 0L. * multi: Multiple select TRUE or FALSE. */ -HWND dw_listbox_new(ULONG id, int multi) +HWND API dw_listbox_new(ULONG id, int multi) { WindowData *blah = calloc(sizeof(WindowData), 1); HWND tmp = WinCreateWindow(HWND_OBJECT, @@ -4317,7 +4317,7 @@ * handle: Handle to the window. * id: An ID to be used to specify the icon. */ -void dw_window_set_icon(HWND handle, ULONG id) +void API dw_window_set_icon(HWND handle, ULONG id) { HPOINTER icon; @@ -4331,7 +4331,7 @@ * handle: Handle to the window. * id: An ID to be used to specify the icon. */ -void dw_window_set_bitmap(HWND handle, ULONG id) +void API dw_window_set_bitmap(HWND handle, ULONG id) { HBITMAP hbm; HPS hps = WinGetPS(handle); @@ -4349,7 +4349,7 @@ * handle: Handle to the window. * text: The text associsated with a given window. */ -void dw_window_set_text(HWND handle, char *text) +void API dw_window_set_text(HWND handle, char *text) { WinSetWindowText(handle, text); } @@ -4361,7 +4361,7 @@ * Returns: * text: The text associsated with a given window. */ -char *dw_window_get_text(HWND handle) +char * API dw_window_get_text(HWND handle) { int len = WinQueryWindowTextLength(handle); char *tempbuf = calloc(1, len + 2); @@ -4376,7 +4376,7 @@ * Parameters: * handle: Handle to the window. */ -void dw_window_disable(HWND handle) +void API dw_window_disable(HWND handle) { char tmpbuf[100]; @@ -4421,7 +4421,7 @@ * Parameters: * handle: Handle to the window. */ -void dw_window_enable(HWND handle) +void API dw_window_enable(HWND handle) { ULONG fore = (ULONG)dw_window_get_data(handle, "_dw_fore"); ULONG back = (ULONG)dw_window_get_data(handle, "_dw_back"); @@ -4442,7 +4442,7 @@ * handle: Handle to the parent window. * id: Integer ID of the child. */ -HWND dw_window_from_id(HWND handle, int id) +HWND API dw_window_from_id(HWND handle, int id) { HENUM henum; HWND child; @@ -4482,7 +4482,7 @@ * vsize: TRUE if the window (widget) should expand vertically to fill space given. * pad: Number of pixels of padding around the item. */ -void dw_box_pack_end(HWND box, HWND item, int width, int height, int hsize, int vsize, int pad) +void API dw_box_pack_end(HWND box, HWND item, int width, int height, int hsize, int vsize, int pad) { Box *thisbox; @@ -4581,7 +4581,7 @@ * width: New width in pixels. * height: New height in pixels. */ -void dw_window_set_usize(HWND handle, ULONG width, ULONG height) +void API dw_window_set_usize(HWND handle, ULONG width, ULONG height) { WinSetWindowPos(handle, NULLHANDLE, 0, 0, width, height, SWP_SHOW | SWP_SIZE); } @@ -4589,7 +4589,7 @@ /* * Returns the width of the screen. */ -int dw_screen_width(void) +int API dw_screen_width(void) { return WinQuerySysValue(HWND_DESKTOP,SV_CXSCREEN); } @@ -4597,13 +4597,13 @@ /* * Returns the height of the screen. */ -int dw_screen_height(void) +int API dw_screen_height(void) { return WinQuerySysValue(HWND_DESKTOP,SV_CYSCREEN); } /* This should return the current color depth */ -unsigned long dw_color_depth(void) +unsigned long API dw_color_depth(void) { HDC hdc = WinOpenWindowDC(HWND_DESKTOP); long colors; @@ -4621,7 +4621,7 @@ * x: X location from the bottom left. * y: Y location from the bottom left. */ -void dw_window_set_pos(HWND handle, ULONG x, ULONG y) +void API dw_window_set_pos(HWND handle, ULONG x, ULONG y) { int myy = _get_frame_height(handle) - (y + _get_height(handle)); @@ -4637,7 +4637,7 @@ * width: Width of the widget. * height: Height of the widget. */ -void dw_window_set_pos_size(HWND handle, ULONG x, ULONG y, ULONG width, ULONG height) +void API dw_window_set_pos_size(HWND handle, ULONG x, ULONG y, ULONG width, ULONG height) { int myy = _get_frame_height(handle) - (y + height); @@ -4653,7 +4653,7 @@ * width: Width of the widget. * height: Height of the widget. */ -void dw_window_get_pos_size(HWND handle, ULONG *x, ULONG *y, ULONG *width, ULONG *height) +void API dw_window_get_pos_size(HWND handle, ULONG *x, ULONG *y, ULONG *width, ULONG *height) { SWP swp; WinQueryWindowPos(handle, &swp); @@ -4674,7 +4674,7 @@ * width: New width in pixels. * height: New height in pixels. */ -void dw_window_set_style(HWND handle, ULONG style, ULONG mask) +void API dw_window_set_style(HWND handle, ULONG style, ULONG mask) { WinSetWindowBits(handle, QWL_STYLE, style, mask); } @@ -4686,7 +4686,7 @@ * flags: Any additional page creation flags. * front: If TRUE page is added at the beginning. */ -ULONG dw_notebook_page_new(HWND handle, ULONG flags, int front) +unsigned long API dw_notebook_page_new(HWND handle, ULONG flags, int front) { if(front) return (ULONG)WinSendMsg(handle, BKM_INSERTPAGE, 0L, @@ -4701,7 +4701,7 @@ * handle: Handle to the notebook widget. * pageid: ID of the page to be destroyed. */ -void dw_notebook_page_destroy(HWND handle, unsigned int pageid) +void API dw_notebook_page_destroy(HWND handle, unsigned int pageid) { WinSendMsg(handle, BKM_DELETEPAGE, MPFROMLONG(pageid), (MPARAM)BKA_SINGLE); @@ -4712,7 +4712,7 @@ * Parameters: * handle: Handle to the notebook widget. */ -unsigned int dw_notebook_page_query(HWND handle) +unsigned int API dw_notebook_page_query(HWND handle) { return (int)WinSendMsg(handle, BKM_QUERYPAGEID,0L, MPFROM2SHORT(BKA_TOP, BKA_MAJOR)); } @@ -4723,7 +4723,7 @@ * handle: Handle to the notebook widget. * pageid: ID of the page to be made visible. */ -void dw_notebook_page_set(HWND handle, unsigned int pageid) +void API dw_notebook_page_set(HWND handle, unsigned int pageid) { WinSendMsg(handle, BKM_TURNTOPAGE, MPFROMLONG(pageid), 0L); } @@ -4735,7 +4735,7 @@ * pageid: Page ID of the tab to set. * text: Pointer to the text to set. */ -void dw_notebook_page_set_text(HWND handle, ULONG pageid, char *text) +void API dw_notebook_page_set_text(HWND handle, ULONG pageid, char *text) { WinSendMsg(handle, BKM_SETTABTEXT, MPFROMLONG(pageid), MPFROMP(text)); @@ -4748,7 +4748,7 @@ * pageid: Page ID of the tab to set. * text: Pointer to the text to set. */ -void dw_notebook_page_set_status_text(HWND handle, ULONG pageid, char *text) +void API dw_notebook_page_set_status_text(HWND handle, ULONG pageid, char *text) { WinSendMsg(handle, BKM_SETSTATUSLINETEXT, MPFROMLONG(pageid), MPFROMP(text)); @@ -4761,7 +4761,7 @@ * pageid: Page ID in the notebook which is being packed. * page: Box handle to be packed. */ -void dw_notebook_pack(HWND handle, ULONG pageid, HWND page) +void API dw_notebook_pack(HWND handle, ULONG pageid, HWND page) { HWND tmpbox = dw_box_new(BOXVERT, 0); @@ -4777,7 +4777,7 @@ * handle: Handle to the listbox to be appended to. * text: Text to append into listbox. */ -void dw_listbox_append(HWND handle, char *text) +void API dw_listbox_append(HWND handle, char *text) { WinSendMsg(handle, LM_INSERTITEM, @@ -4790,7 +4790,7 @@ * Parameters: * handle: Handle to the listbox to be cleared. */ -void dw_listbox_clear(HWND handle) +void API dw_listbox_clear(HWND handle) { WinSendMsg(handle, LM_DELETEALL, 0L, 0L); @@ -4801,7 +4801,7 @@ * Parameters: * handle: Handle to the listbox to be cleared. */ -int dw_listbox_count(HWND handle) +int API dw_listbox_count(HWND handle) { return (int)WinSendMsg(handle, LM_QUERYITEMCOUNT,0L, 0L); @@ -4813,7 +4813,7 @@ * handle: Handle to the listbox to be cleared. * top: Index to the top item. */ -void dw_listbox_set_top(HWND handle, int top) +void API dw_listbox_set_top(HWND handle, int top) { WinSendMsg(handle, LM_SETTOPINDEX, @@ -4829,7 +4829,7 @@ * buffer: Buffer where text will be copied. * length: Length of the buffer (including NULL). */ -void dw_listbox_query_text(HWND handle, unsigned int index, char *buffer, unsigned int length) +void API dw_listbox_query_text(HWND handle, unsigned int index, char *buffer, unsigned int length) { WinSendMsg(handle, LM_QUERYITEMTEXT, MPFROM2SHORT(index, length), (MPARAM)buffer); } @@ -4841,7 +4841,7 @@ * index: Index into the list to be queried. * buffer: Buffer where text will be copied. */ -void dw_listbox_set_text(HWND handle, unsigned int index, char *buffer) +void API dw_listbox_set_text(HWND handle, unsigned int index, char *buffer) { WinSendMsg(handle, LM_SETITEMTEXT, MPFROMSHORT(index), (MPARAM)buffer); } @@ -4851,7 +4851,7 @@ * Parameters: * handle: Handle to the listbox to be queried. */ -unsigned int dw_listbox_selected(HWND handle) +unsigned int API dw_listbox_selected(HWND handle) { return (unsigned int)WinSendMsg(handle, LM_QUERYSELECTION, @@ -4865,7 +4865,7 @@ * handle: Handle to the listbox to be queried. * where: Either the previous return or -1 to restart. */ -int dw_listbox_selected_multi(HWND handle, int where) +int API dw_listbox_selected_multi(HWND handle, int where) { int place = where; @@ -4887,7 +4887,7 @@ * index: Item index. * state: TRUE if selected FALSE if unselected. */ -void dw_listbox_select(HWND handle, int index, int state) +void API dw_listbox_select(HWND handle, int index, int state) { char tmpbuf[100]; @@ -4906,7 +4906,7 @@ * handle: Handle to the listbox to be set. * index: Item index. */ -void dw_listbox_delete(HWND handle, int index) +void API dw_listbox_delete(HWND handle, int index) { WinSendMsg(handle, LM_DELETEITEM, MPFROMSHORT(index), 0); } @@ -4918,7 +4918,7 @@ * buffer: Text buffer to be imported. * startpoint: Point to start entering text. */ -unsigned int dw_mle_import(HWND handle, char *buffer, int startpoint) +unsigned int API dw_mle_import(HWND handle, char *buffer, int startpoint) { unsigned long point = startpoint; PBYTE mlebuf; @@ -4957,7 +4957,7 @@ * startpoint: Point to start grabbing text. * length: Amount of text to be grabbed. */ -void dw_mle_export(HWND handle, char *buffer, int startpoint, int length) +void API dw_mle_export(HWND handle, char *buffer, int startpoint, int length) { PBYTE mlebuf; @@ -4996,7 +4996,7 @@ * bytes: A pointer to a variable to return the total bytes. * lines: A pointer to a variable to return the number of lines. */ -void dw_mle_query(HWND handle, unsigned long *bytes, unsigned long *lines) +void API dw_mle_query(HWND handle, unsigned long *bytes, unsigned long *lines) { if(bytes) *bytes = (unsigned long)WinSendMsg(handle, MLM_QUERYTEXTLENGTH, 0, 0); @@ -5011,7 +5011,7 @@ * startpoint: Point to start deleting text. * length: Amount of text to be deleted. */ -void dw_mle_delete(HWND handle, int startpoint, int length) +void API dw_mle_delete(HWND handle, int startpoint, int length) { char *buf = malloc(length+1); int z, dellen = length; @@ -5032,7 +5032,7 @@ * Parameters: * handle: Handle to the MLE to be cleared. */ -void dw_mle_clear(HWND handle) +void API dw_mle_clear(HWND handle) { unsigned long bytes; @@ -5047,7 +5047,7 @@ * handle: Handle to the MLE to be positioned. * line: Line to be visible. */ -void dw_mle_set_visible(HWND handle, int line) +void API dw_mle_set_visible(HWND handle, int line) { int tmppnt = (int)WinSendMsg(handle, MLM_CHARFROMLINE, MPFROMLONG(line), 0); WinSendMsg(handle, MLM_SETSEL, MPFROMLONG(tmppnt), MPFROMLONG(tmppnt)); @@ -5059,7 +5059,7 @@ * handle: Handle to the MLE. * state: TRUE if it can be edited, FALSE for readonly. */ -void dw_mle_set_editable(HWND handle, int state) +void API dw_mle_set_editable(HWND handle, int state) { WinSendMsg(handle, MLM_SETREADONLY, MPFROMLONG(state ? FALSE : TRUE), 0); } @@ -5070,7 +5070,7 @@ * handle: Handle to the MLE. * state: TRUE if it wraps, FALSE if it doesn't. */ -void dw_mle_set_word_wrap(HWND handle, int state) +void API dw_mle_set_word_wrap(HWND handle, int state) { WinSendMsg(handle, MLM_SETWRAP, MPFROMLONG(state), 0); } @@ -5081,7 +5081,7 @@ * handle: Handle to the MLE to be positioned. * point: Point to position cursor. */ -void dw_mle_set(HWND handle, int point) +void API dw_mle_set(HWND handle, int point) { WinSendMsg(handle, MLM_SETSEL, MPFROMLONG(point), MPFROMLONG(point)); } @@ -5094,7 +5094,7 @@ * point: Start point of search. * flags: Search specific flags. */ -int dw_mle_search(HWND handle, char *text, int point, unsigned long flags) +int API dw_mle_search(HWND handle, char *text, int point, unsigned long flags) { MLE_SEARCHDATA msd; @@ -5119,7 +5119,7 @@ * Parameters: * handle: Handle to the MLE to freeze. */ -void dw_mle_freeze(HWND handle) +void API dw_mle_freeze(HWND handle) { WinSendMsg(handle, MLM_DISABLEREFRESH, 0, 0); } @@ -5129,7 +5129,7 @@ * Parameters: * handle: Handle to the MLE to thaw. */ -void dw_mle_thaw(HWND handle) +void API dw_mle_thaw(HWND handle) { WinSendMsg(handle, MLM_ENABLEREFRESH, 0, 0); } @@ -5139,7 +5139,7 @@ * Parameters: * handle: Handle to the percent bar to be queried. */ -unsigned int dw_percent_query_range(HWND handle) +unsigned int API dw_percent_query_range(HWND handle) { return SHORT2FROMMP(WinSendMsg(handle, SLM_QUERYSLIDERINFO, MPFROM2SHORT(SMA_SLIDERARMPOSITION,SMA_RANGEVALUE), 0)); } @@ -5150,7 +5150,7 @@ * handle: Handle to the percent bar to be set. * position: Position of the percent bar withing the range. */ -void dw_percent_set_pos(HWND handle, unsigned int position) +void API dw_percent_set_pos(HWND handle, unsigned int position) { _dw_int_set(handle, position); WinSendMsg(handle, SLM_SETSLIDERINFO, MPFROM2SHORT(SMA_SLIDERARMPOSITION,SMA_RANGEVALUE), (MPARAM)position); @@ -5161,7 +5161,7 @@ * Parameters: * handle: Handle to the slider to be queried. */ -unsigned int dw_slider_query_pos(HWND handle) +unsigned int API dw_slider_query_pos(HWND handle) { return (unsigned int)WinSendMsg(handle, SLM_QUERYSLIDERINFO, MPFROM2SHORT(SMA_SLIDERARMPOSITION, SMA_INCREMENTVALUE), 0); } @@ -5172,7 +5172,7 @@ * handle: Handle to the slider to be set. * position: Position of the slider withing the range. */ -void dw_slider_set_pos(HWND handle, unsigned int position) +void API dw_slider_set_pos(HWND handle, unsigned int position) { dw_window_set_data(handle, "_dw_slider_value", (void *)position); WinSendMsg(handle, SLM_SETSLIDERINFO, MPFROM2SHORT(SMA_SLIDERARMPOSITION, SMA_INCREMENTVALUE), (MPARAM)position); @@ -5184,7 +5184,7 @@ * handle: Handle to the spinbutton to be set. * position: Current value of the spinbutton. */ -void dw_spinbutton_set_pos(HWND handle, long position) +void API dw_spinbutton_set_pos(HWND handle, long position) { WinSendMsg(handle, SPBM_SETCURRENTVALUE, MPFROMLONG((long)position), 0L); } @@ -5196,7 +5196,7 @@ * upper: Upper limit. * lower: Lower limit. */ -void dw_spinbutton_set_limits(HWND handle, long upper, long lower) +void API dw_spinbutton_set_limits(HWND handle, long upper, long lower) { WinSendMsg(handle, SPBM_SETLIMITS, MPFROMLONG(upper), MPFROMLONG(lower)); } @@ -5207,7 +5207,7 @@ * handle: Handle to the spinbutton to be set. * limit: Number of characters the entryfield will take. */ -void dw_entryfield_set_limit(HWND handle, ULONG limit) +void API dw_entryfield_set_limit(HWND handle, ULONG limit) { WinSendMsg(handle, EM_SETTEXTLIMIT, (MPARAM)limit, (MPARAM)0); } @@ -5218,7 +5218,7 @@ * Parameters: * handle: Handle to the spinbutton to be queried. */ -long dw_spinbutton_query(HWND handle) +long API dw_spinbutton_query(HWND handle) { long tmpval = 0L; @@ -5231,7 +5231,7 @@ * Parameters: * handle: Handle to the checkbox to be queried. */ -int dw_checkbox_query(HWND handle) +int API dw_checkbox_query(HWND handle) { return (int)WinSendMsg(handle,BM_QUERYCHECK,0,0); } @@ -5242,7 +5242,7 @@ * handle: Handle to the checkbox to be queried. * value: TRUE for checked, FALSE for unchecked. */ -void dw_checkbox_set(HWND handle, int value) +void API dw_checkbox_set(HWND handle, int value) { WinSendMsg(handle,BM_SETCHECK,MPFROMSHORT(value),0); } @@ -5257,7 +5257,7 @@ * parent: Parent handle or 0 if root. * itemdata: Item specific data. */ -HWND dw_tree_insert_after(HWND handle, HWND item, char *title, unsigned long icon, HWND parent, void *itemdata) +HWND API dw_tree_insert_after(HWND handle, HWND item, char *title, unsigned long icon, HWND parent, void *itemdata) { ULONG cbExtra; PCNRITEM pci; @@ -5314,7 +5314,7 @@ * parent: Parent handle or 0 if root. * itemdata: Item specific data. */ -HWND dw_tree_insert(HWND handle, char *title, unsigned long icon, HWND parent, void *itemdata) +HWND API dw_tree_insert(HWND handle, char *title, unsigned long icon, HWND parent, void *itemdata) { return dw_tree_insert_after(handle, (HWND)CMA_END, title, icon, parent, itemdata); } @@ -5327,7 +5327,7 @@ * title: The text title of the entry. * icon: Handle to coresponding icon. */ -void dw_tree_set(HWND handle, HWND item, char *title, unsigned long icon) +void API dw_tree_set(HWND handle, HWND item, char *title, unsigned long icon) { PCNRITEM pci = (PCNRITEM)item; @@ -5352,7 +5352,7 @@ * item: Handle of the item to be modified. * itemdata: User defined data to be associated with item. */ -void dw_tree_set_data(HWND handle, HWND item, void *itemdata) +void API dw_tree_set_data(HWND handle, HWND item, void *itemdata) { PCNRITEM pci = (PCNRITEM)item; @@ -5368,7 +5368,7 @@ * handle: Handle to the tree window (widget) to be selected. * item: Handle to the item to be selected. */ -void dw_tree_item_select(HWND handle, HWND item) +void API dw_tree_item_select(HWND handle, HWND item) { PRECORDCORE pCore = WinSendMsg(handle, CM_QUERYRECORD, (MPARAM)0L, MPFROM2SHORT(CMA_FIRST, CMA_ITEMORDER)); @@ -5388,7 +5388,7 @@ * Parameters: * handle: Handle to the window (widget) to be cleared. */ -void dw_tree_clear(HWND handle) +void API dw_tree_clear(HWND handle) { WinSendMsg(handle, CM_REMOVERECORD, (MPARAM)0L, MPFROM2SHORT(0, CMA_INVALIDATE | CMA_FREE)); } @@ -5399,7 +5399,7 @@ * handle: Handle to the tree window (widget). * item: Handle to node to be expanded. */ -void dw_tree_expand(HWND handle, HWND item) +void API dw_tree_expand(HWND handle, HWND item) { WinSendMsg(handle, CM_EXPANDTREE, MPFROMP(item), 0); } @@ -5410,7 +5410,7 @@ * handle: Handle to the tree window (widget). * item: Handle to node to be collapsed. */ -void dw_tree_collapse(HWND handle, HWND item) +void API dw_tree_collapse(HWND handle, HWND item) { WinSendMsg(handle, CM_COLLAPSETREE, MPFROMP(item), 0); } @@ -5421,7 +5421,7 @@ * handle: Handle to the window (widget) to be cleared. * item: Handle to node to be deleted. */ -void dw_tree_delete(HWND handle, HWND item) +void API dw_tree_delete(HWND handle, HWND item) { PCNRITEM pci = (PCNRITEM)item; @@ -5454,7 +5454,7 @@ * separator: The column number that contains the main separator. * (this item may only be used in OS/2) */ -int dw_container_setup(HWND handle, unsigned long *flags, char **titles, int count, int separator) +int API dw_container_setup(HWND handle, unsigned long *flags, char **titles, int count, int separator) { PFIELDINFO details, first, left = NULL; FIELDINFOINSERT detin; @@ -5547,7 +5547,7 @@ * titles: An array of strings with column text titles. * count: The number of columns (this should match the arrays). */ -int dw_filesystem_setup(HWND handle, unsigned long *flags, char **titles, int count) +int API dw_filesystem_setup(HWND handle, unsigned long *flags, char **titles, int count) { char **newtitles = malloc(sizeof(char *) * (count + 2)); unsigned long *newflags = malloc(sizeof(unsigned long) * (count + 2)); @@ -5576,7 +5576,7 @@ * Windows, on GTK this is converted to a pointer * to an embedded XPM. */ -unsigned long dw_icon_load(unsigned long module, unsigned long id) +unsigned long API dw_icon_load(unsigned long module, unsigned long id) { return WinLoadPointer(HWND_DESKTOP,module,id); } @@ -5586,7 +5586,7 @@ * Parameters: * handle: Handle to icon returned by dw_icon_load(). */ -void dw_icon_free(unsigned long handle) +void API dw_icon_free(unsigned long handle) { WinDestroyPointer(handle); } @@ -5597,7 +5597,7 @@ * handle: Handle to the container window (widget). * rowcount: The number of items to be populated. */ -void *dw_container_alloc(HWND handle, int rowcount) +void * API dw_container_alloc(HWND handle, int rowcount) { WindowData *wd = (WindowData *)WinQueryWindowPtr(handle, QWP_USER); ULONG *flags = wd ? wd->data : 0; @@ -5725,7 +5725,7 @@ * row: Zero based row of data being set. * data: Pointer to the data to be added. */ -void dw_container_set_item(HWND handle, void *pointer, int column, int row, void *data) +void API dw_container_set_item(HWND handle, void *pointer, int column, int row, void *data) { ContainerInfo *ci = (ContainerInfo *)pointer; @@ -5743,7 +5743,7 @@ * row: Zero based row of data being set. * data: Pointer to the data to be added. */ -void dw_container_change_item(HWND handle, int column, int row, void *data) +void API dw_container_change_item(HWND handle, int column, int row, void *data) { PRECORDCORE pCore = WinSendMsg(handle, CM_QUERYRECORD, (MPARAM)0L, MPFROM2SHORT(CMA_FIRST, CMA_ITEMORDER)); int count = 0; @@ -5770,7 +5770,7 @@ * row: Zero based row of data being set. * data: Pointer to the data to be added. */ -void dw_filesystem_set_file(HWND handle, void *pointer, int row, char *filename, unsigned long icon) +void API dw_filesystem_set_file(HWND handle, void *pointer, int row, char *filename, unsigned long icon) { dw_container_set_item(handle, pointer, 0, row, (void *)&icon); dw_container_set_item(handle, pointer, 1, row, (void *)&filename); @@ -5785,7 +5785,7 @@ * row: Zero based row of data being set. * data: Pointer to the data to be added. */ -void dw_filesystem_set_item(HWND handle, void *pointer, int column, int row, void *data) +void API dw_filesystem_set_item(HWND handle, void *pointer, int column, int row, void *data) { dw_container_set_item(handle, pointer, column + 2, row, data); } @@ -5797,7 +5797,7 @@ * column: Zero based column of width being set. * width: Width of column in pixels. */ -void dw_container_set_column_width(HWND handle, int column, int width) +void API dw_container_set_column_width(HWND handle, int column, int width) { } @@ -5808,7 +5808,7 @@ * row: Zero based row of data being set. * title: String title of the item. */ -void dw_container_set_row_title(void *pointer, int row, char *title) +void API dw_container_set_row_title(void *pointer, int row, char *title) { ContainerInfo *ci = (ContainerInfo *)pointer; PRECORDCORE temp; @@ -5846,7 +5846,7 @@ * pointer: Pointer to the allocated memory in dw_container_alloc(). * rowcount: The number of rows to be inserted. */ -void dw_container_insert(HWND handle, void *pointer, int rowcount) +void API dw_container_insert(HWND handle, void *pointer, int rowcount) { RECORDINSERT recin; ContainerInfo *ci = (ContainerInfo *)pointer; @@ -5881,7 +5881,7 @@ * handle: Handle to the window (widget) to be cleared. * redraw: TRUE to cause the container to redraw immediately. */ -void dw_container_clear(HWND handle, int redraw) +void API dw_container_clear(HWND handle, int redraw) { int z = 0; @@ -5900,7 +5900,7 @@ * handle: Handle to the window (widget) to be deleted from. * rowcount: The number of rows to be deleted. */ -void dw_container_delete(HWND handle, int rowcount) +void API dw_container_delete(HWND handle, int rowcount) { RECORDCORE *last, **prc = malloc(sizeof(RECORDCORE *) * rowcount); int current = 1, z; @@ -5934,7 +5934,7 @@ * DW_SCROLL_BOTTOM. (rows is ignored for last two) * rows: The number of rows to be scrolled. */ -void dw_container_scroll(HWND handle, int direction, long rows) +void API dw_container_scroll(HWND handle, int direction, long rows) { switch(direction) { @@ -5952,7 +5952,7 @@ * Parameters: * handle: Handle to the window (widget) to be cleared. */ -void dw_container_set_view(HWND handle, unsigned long flags, int iconwidth, int iconheight) +void API dw_container_set_view(HWND handle, unsigned long flags, int iconwidth, int iconheight) { CNRINFO cnrinfo; @@ -5971,7 +5971,7 @@ * return items that are currently selected. Otherwise * it will return all records in the container. */ -char *dw_container_query_start(HWND handle, unsigned long flags) +char * API dw_container_query_start(HWND handle, unsigned long flags) { pCore = WinSendMsg(handle, CM_QUERYRECORD, (MPARAM)0L, MPFROM2SHORT(CMA_FIRST, CMA_ITEMORDER)); if(pCore) @@ -5999,7 +5999,7 @@ * return items that are currently selected. Otherwise * it will return all records in the container. */ -char *dw_container_query_next(HWND handle, unsigned long flags) +char * API dw_container_query_next(HWND handle, unsigned long flags) { pCore = WinSendMsg(handle, CM_QUERYRECORD, (MPARAM)pCore, MPFROM2SHORT(CMA_NEXT, CMA_ITEMORDER)); if(pCore) @@ -6026,7 +6026,7 @@ * handle: Handle to the window (widget) to be queried. * text: Text usually returned by dw_container_query(). */ -void dw_container_cursor(HWND handle, char *text) +void API dw_container_cursor(HWND handle, char *text) { RECTL viewport, item; @@ -6064,7 +6064,7 @@ * handle: Handle to the window (widget). * text: Text usually returned by dw_container_query(). */ -void dw_container_delete_row(HWND handle, char *text) +void API dw_container_delete_row(HWND handle, char *text) { PRECORDCORE pCore = WinSendMsg(handle, CM_QUERYRECORD, (MPARAM)0L, MPFROM2SHORT(CMA_FIRST, CMA_ITEMORDER)); @@ -6084,7 +6084,7 @@ * Parameters: * handle: Handle to the window (widget) to be optimized. */ -void dw_container_optimize(HWND handle) +void API dw_container_optimize(HWND handle) { WindowData *blah = (WindowData *)WinQueryWindowPtr(handle, QWP_USER); RECTL item; @@ -6133,7 +6133,7 @@ * Returns: * A handle to the widget or NULL on failure. */ -HWND dw_render_new(unsigned long id) +HWND API dw_render_new(unsigned long id) { HWND hwndframe = WinCreateWindow(HWND_OBJECT, WC_FRAME, @@ -6156,7 +6156,7 @@ * green: green value. * blue: blue value. */ -void dw_color_foreground_set(unsigned long value) +void API dw_color_foreground_set(unsigned long value) { _foreground = DW_RED_VALUE(value) << 16 | DW_GREEN_VALUE(value) << 8 | DW_BLUE_VALUE(value); } @@ -6167,7 +6167,7 @@ * green: green value. * blue: blue value. */ -void dw_color_background_set(unsigned long value) +void API dw_color_background_set(unsigned long value) { _background = DW_RED_VALUE(value) << 16 | DW_GREEN_VALUE(value) << 8 | DW_BLUE_VALUE(value); } @@ -6207,7 +6207,7 @@ * x: X coordinate. * y: Y coordinate. */ -void dw_draw_point(HWND handle, HPIXMAP pixmap, int x, int y) +void API dw_draw_point(HWND handle, HPIXMAP pixmap, int x, int y) { HPS hps; int height; @@ -6243,7 +6243,7 @@ * x2: Second X coordinate. * y2: Second Y coordinate. */ -void dw_draw_line(HWND handle, HPIXMAP pixmap, int x1, int y1, int x2, int y2) +void API dw_draw_line(HWND handle, HPIXMAP pixmap, int x1, int y1, int x2, int y2) { HPS hps; int height; @@ -6305,7 +6305,7 @@ * y: Y coordinate. * text: Text to be displayed. */ -void dw_draw_text(HWND handle, HPIXMAP pixmap, int x, int y, char *text) +void API dw_draw_text(HWND handle, HPIXMAP pixmap, int x, int y, char *text) { HPS hps; int size = 9, z, height; @@ -6357,7 +6357,7 @@ * width: Pointer to a variable to be filled in with the width. * height Pointer to a variable to be filled in with the height. */ -void dw_font_text_extents(HWND handle, HPIXMAP pixmap, char *text, int *width, int *height) +void API dw_font_text_extents(HWND handle, HPIXMAP pixmap, char *text, int *width, int *height) { HPS hps; POINTL aptl[TXTBOX_COUNT]; @@ -6399,7 +6399,7 @@ * width: Width of rectangle. * height: Height of rectangle. */ -void dw_draw_rect(HWND handle, HPIXMAP pixmap, int fill, int x, int y, int width, int height) +void API dw_draw_rect(HWND handle, HPIXMAP pixmap, int fill, int x, int y, int width, int height) { HPS hps; int thisheight; @@ -6433,7 +6433,7 @@ /* Call this after drawing to the screen to make sure * anything you have drawn is visible. */ -void dw_flush(void) +void API dw_flush(void) { } @@ -6447,7 +6447,7 @@ * Returns: * A handle to a pixmap or NULL on failure. */ -HPIXMAP dw_pixmap_new(HWND handle, unsigned long width, unsigned long height, int depth) +HPIXMAP API dw_pixmap_new(HWND handle, unsigned long width, unsigned long height, int depth) { BITMAPINFOHEADER bmih; SIZEL sizl = { 0, 0 }; @@ -6505,7 +6505,7 @@ * Returns: * A handle to a pixmap or NULL on failure. */ -HPIXMAP dw_pixmap_grab(HWND handle, ULONG id) +HPIXMAP API dw_pixmap_grab(HWND handle, ULONG id) { BITMAPINFOHEADER bmih; SIZEL sizl = { 0, 0 }; @@ -6544,7 +6544,7 @@ * pixmap: Handle to a pixmap returned by * dw_pixmap_new.. */ -void dw_pixmap_destroy(HPIXMAP pixmap) +void API dw_pixmap_destroy(HPIXMAP pixmap) { GpiSetBitmap(pixmap->hps, NULLHANDLE); GpiDeleteBitmap(pixmap->hbm); @@ -6568,7 +6568,7 @@ * xsrc: X coordinate of source. * ysrc: Y coordinate of source. */ -void dw_pixmap_bitblt(HWND dest, HPIXMAP destp, int xdest, int ydest, int width, int height, HWND src, HPIXMAP srcp, int xsrc, int ysrc) +void API dw_pixmap_bitblt(HWND dest, HPIXMAP destp, int xdest, int ydest, int width, int height, HWND src, HPIXMAP srcp, int xsrc, int ysrc) { HPS hpsdest; HPS hpssrc; @@ -6628,7 +6628,7 @@ * freq: Frequency. * dur: Duration. */ -void dw_beep(int freq, int dur) +void API dw_beep(int freq, int dur) { DosBeep(freq, dur); } @@ -6639,7 +6639,7 @@ * handle: Pointer to a module handle, * will be filled in with the handle. */ -int dw_module_load(char *name, HMOD *handle) +int API dw_module_load(char *name, HMOD *handle) { char objnamebuf[300] = ""; @@ -6653,7 +6653,7 @@ * func: A pointer to a function pointer, to obtain * the address. */ -int dw_module_symbol(HMOD handle, char *name, void**func) +int API dw_module_symbol(HMOD handle, char *name, void**func) { return DosQueryProcAddr(handle, 0, name, (PFN*)func); } @@ -6662,7 +6662,7 @@ * Parameters: * handle: Module handle returned by dw_module_load() */ -int dw_module_close(HMOD handle) +int API dw_module_close(HMOD handle) { DosFreeModule(handle); return 0; @@ -6671,7 +6671,7 @@ /* * Returns the handle to an unnamed mutex semaphore. */ -HMTX dw_mutex_new(void) +HMTX API dw_mutex_new(void) { HMTX mutex; @@ -6684,7 +6684,7 @@ * Parameters: * mutex: The handle to the mutex returned by dw_mutex_new(). */ -void dw_mutex_close(HMTX mutex) +void API dw_mutex_close(HMTX mutex) { DosCloseMutexSem(mutex); } @@ -6696,7 +6696,7 @@ * Parameters: * mutex: The handle to the mutex returned by dw_mutex_new(). */ -void dw_mutex_lock(HMTX mutex) +void API dw_mutex_lock(HMTX mutex) { if(_dwtid == dw_thread_id()) { @@ -6717,7 +6717,7 @@ * Parameters: * mutex: The handle to the mutex returned by dw_mutex_new(). */ -void dw_mutex_unlock(HMTX mutex) +void API dw_mutex_unlock(HMTX mutex) { DosReleaseMutexSem(mutex); } @@ -6725,7 +6725,7 @@ /* * Returns the handle to an unnamed event semaphore. */ -HEV dw_event_new(void) +HEV API dw_event_new(void) { HEV blah; @@ -6740,7 +6740,7 @@ * Parameters: * eve: The handle to the event returned by dw_event_new(). */ -int dw_event_reset(HEV eve) +int API dw_event_reset(HEV eve) { ULONG count; @@ -6755,7 +6755,7 @@ * Parameters: * eve: The handle to the event returned by dw_event_new(). */ -int dw_event_post(HEV eve) +int API dw_event_post(HEV eve) { if(DosPostEventSem(eve)) return FALSE; @@ -6769,7 +6769,7 @@ * Parameters: * eve: The handle to the event returned by dw_event_new(). */ -int dw_event_wait(HEV eve, unsigned long timeout) +int API dw_event_wait(HEV eve, unsigned long timeout) { int rc = DosWaitEventSem(eve, timeout); if(!rc) @@ -6784,7 +6784,7 @@ * Parameters: * eve: The handle to the event returned by dw_event_new(). */ -int dw_event_close(HEV *eve) +int API dw_event_close(HEV *eve) { if(!eve || ~DosCloseEventSem(*eve)) return FALSE; @@ -6817,7 +6817,7 @@ * data: Parameter(s) passed to the function. * stack: Stack size of new thread (OS/2 and Windows only). */ -DWTID dw_thread_new(void *func, void *data, int stack) +DWTID API dw_thread_new(void *func, void *data, int stack) { void **tmp = malloc(sizeof(void *) * 2); @@ -6830,7 +6830,7 @@ /* * Ends execution of current thread immediately. */ -void dw_thread_end(void) +void API dw_thread_end(void) { _endthread(); } @@ -6838,7 +6838,7 @@ /* * Returns the current thread's ID. */ -DWTID dw_thread_id(void) +DWTID API dw_thread_id(void) { return (DWTID)_threadid; } @@ -6848,7 +6848,7 @@ * Parameters: * exitcode: Exit code reported to the operating system. */ -void dw_exit(int exitcode) +void API dw_exit(int exitcode) { /* In case we are in a signal handler, don't * try to free memory that could possibly be @@ -6868,7 +6868,7 @@ * Returns: * A handle to a splitbar window or NULL on failure. */ -HWND dw_splitbar_new(int type, HWND topleft, HWND bottomright, unsigned long id) +HWND API dw_splitbar_new(int type, HWND topleft, HWND bottomright, unsigned long id) { HWND tmp = WinCreateWindow(HWND_OBJECT, SplitbarClassName, @@ -6905,7 +6905,7 @@ * Parameters: * handle: The handle to the splitbar returned by dw_splitbar_new(). */ -void dw_splitbar_set(HWND handle, float percent) +void API dw_splitbar_set(HWND handle, float percent) { float *mypercent = (float *)dw_window_get_data(handle, "_dw_percent"); int type = (int)dw_window_get_data(handle, "_dw_type"); @@ -6924,7 +6924,7 @@ * Parameters: * handle: The handle to the splitbar returned by dw_splitbar_new(). */ -float dw_splitbar_get(HWND handle) +float API dw_splitbar_get(HWND handle) { float *percent = (float *)dw_window_get_data(handle, "_dw_percent"); @@ -6944,7 +6944,7 @@ * vsize: TRUE if the window (widget) should expand vertically to fill space given. * pad: Number of pixels of padding around the item. */ -void dw_box_pack_start(HWND box, HWND item, int width, int height, int hsize, int vsize, int pad) +void API dw_box_pack_start(HWND box, HWND item, int width, int height, int hsize, int vsize, int pad) { Box *thisbox; @@ -7118,7 +7118,7 @@ * window: Toplevel window or dialog. * defaultitem: Handle to the dialog item to be default. */ -void dw_window_default(HWND window, HWND defaultitem) +void API dw_window_default(HWND window, HWND defaultitem) { Box *thisbox = NULL; HWND box; @@ -7137,7 +7137,7 @@ * window: Window (widget) to look for the ENTER press. * next: Window (widget) to move to next (or click) */ -void dw_window_click_default(HWND window, HWND next) +void API dw_window_click_default(HWND window, HWND next) { WindowData *blah = (WindowData *)WinQueryWindowPtr(window, QWP_USER); @@ -7150,7 +7150,7 @@ * Parameters: * env: Pointer to a DWEnv struct. */ -void dw_environment_query(DWEnv *env) +void API dw_environment_query(DWEnv *env) { ULONG Build; @@ -7197,7 +7197,7 @@ * the file path on success. * */ -char *dw_file_browse(char *title, char *defpath, char *ext, int flags) +char * API dw_file_browse(char *title, char *defpath, char *ext, int flags) { FILEDLG fild; HWND hwndFile; @@ -7281,7 +7281,7 @@ * Returns: * -1 on error. */ -int dw_exec(char *program, int type, char **params) +int API dw_exec(char *program, int type, char **params) { return spawnvp(P_NOWAIT, program, (const char **)params); } @@ -7291,7 +7291,7 @@ * Parameters: * url: Uniform resource locator. */ -int dw_browse(char *url) +int API dw_browse(char *url) { /* Is there a way to find the webbrowser in Unix? */ char *execargs[3], browser[1024], *olddir, *newurl = NULL; @@ -7353,7 +7353,7 @@ * current user directory. Or the root directory (C:\ on * OS/2 and Windows). */ -char *dw_user_dir(void) +char * API dw_user_dir(void) { static char _user_dir[1024] = ""; @@ -7376,7 +7376,7 @@ * function: Function pointer to be called. * data: Pointer to the data to be passed to the function. */ -void dw_window_function(HWND handle, void *function, void *data) +void API dw_window_function(HWND handle, void *function, void *data) { WinSendMsg(handle, WM_USER, (MPARAM)function, (MPARAM)data); } @@ -7474,7 +7474,7 @@ * dataname: A string pointer identifying which signal to be hooked. * data: User data to be passed to the handler function. */ -void dw_window_set_data(HWND window, char *dataname, void *data) +void API dw_window_set_data(HWND window, char *dataname, void *data) { WindowData *blah = (WindowData *)WinQueryWindowPtr(window, QWP_USER); @@ -7523,7 +7523,7 @@ * sigfunc: The pointer to the function to be used as the callback. * data: User data to be passed to the handler function. */ -void dw_signal_connect(HWND window, char *signame, void *sigfunc, void *data) +void API dw_signal_connect(HWND window, char *signame, void *sigfunc, void *data) { ULONG message = 0L; @@ -7554,7 +7554,7 @@ * Parameters: * window: Window handle of callback to be removed. */ -void dw_signal_disconnect_by_name(HWND window, char *signame) +void API dw_signal_disconnect_by_name(HWND window, char *signame) { SignalHandler *prev = NULL, *tmp = Root; ULONG message; @@ -7592,7 +7592,7 @@ * Parameters: * window: Window handle of callback to be removed. */ -void dw_signal_disconnect_by_window(HWND window) +void API dw_signal_disconnect_by_window(HWND window) { SignalHandler *prev = NULL, *tmp = Root; @@ -7627,7 +7627,7 @@ * window: Window handle of callback to be removed. * data: Pointer to the data to be compared against. */ -void dw_signal_disconnect_by_data(HWND window, void *data) +void API dw_signal_disconnect_by_data(HWND window, void *data) { SignalHandler *prev = NULL, *tmp = Root;