1/* gui_mac.c */ 2 3/* 4 * Mac specific prototypes 5 */ 6 7pascal Boolean WaitNextEventWrp __ARGS((EventMask eventMask, EventRecord *theEvent, UInt32 sleep, RgnHandle mouseRgn)); 8pascal void gui_mac_scroll_action __ARGS((ControlHandle theControl, short partCode)); 9pascal void gui_mac_drag_thumb (ControlHandle theControl, short partCode); 10void gui_mac_handle_event __ARGS((EventRecord *event)); 11void gui_mac_doMouseDown __ARGS((EventRecord *theEvent)); 12void gui_mac_do_key __ARGS((EventRecord *theEvent)); 13void gui_mac_handle_menu __ARGS((long menuChoice)); 14void gui_mac_focus_change __ARGS((EventRecord *event)); 15void gui_mac_update __ARGS((EventRecord *event)); 16short gui_mch_get_mac_menu_item_index __ARGS((vimmenu_T *menu, vimmenu_T *parent)); 17void gui_mch_set_blinking __ARGS((long wait, long on, long off)); 18void gui_mch_stop_blink __ARGS((void)); 19void gui_mch_start_blink __ARGS((void)); 20void gui_mch_getmouse __ARGS((int *x, int *y)); 21void gui_mch_setmouse __ARGS((int x, int y)); 22void gui_mch_prepare __ARGS((int *argc, char **argv)); 23int gui_mch_init_check __ARGS((void)); 24int gui_mch_init __ARGS((void)); 25void gui_mch_new_colors __ARGS((void)); 26int gui_mch_open __ARGS((void)); 27void gui_mch_exit __ARGS((int)); 28void gui_mch_set_winsize __ARGS((int width, int height, int min_width, int min_height, int base_width, int base_height)); 29int gui_mch_get_winpos __ARGS((int *x, int *y)); 30void gui_mch_set_winpos __ARGS((int x, int y)); 31void gui_mch_set_shellsize __ARGS((int width, int height, int min_width, int min_height, int base_width, int base_height, int direction)); 32void gui_mch_get_screen_dimensions __ARGS((int *screen_w, int *screen_h)); 33void gui_mch_set_text_area_pos __ARGS((int x, int y, int w, int h)); 34void gui_mch_enable_scrollbar __ARGS((scrollbar_T *sb, int flag)); 35void gui_mch_set_scrollbar_thumb __ARGS((scrollbar_T *sb, long val, long size, long max)); 36void gui_mch_set_scrollbar_pos __ARGS((scrollbar_T *sb, int x, int y, int w, int h)); 37void gui_mch_create_scrollbar __ARGS((scrollbar_T *sb, int orient)); 38void gui_mch_destroy_scrollbar __ARGS((scrollbar_T *sb)); 39int gui_mch_adjust_charheight __ARGS((void)); 40int gui_mch_init_font __ARGS((char_u *font_name, int fontset)); 41GuiFont gui_mch_get_font __ARGS((char_u *name, int giveErrorIfMissing)); 42char_u *gui_mch_get_fontname __ARGS((GuiFont font, char_u *name)); 43GuiFont gui_mac_find_font __ARGS((char_u *font_name)); 44void gui_mch_set_font __ARGS((GuiFont font)); 45int gui_mch_same_font __ARGS((GuiFont f1, GuiFont f2)); 46void gui_mch_free_font __ARGS((GuiFont font)); 47guicolor_T gui_mch_get_color __ARGS((char_u *name)); 48void gui_mch_set_fg_color __ARGS((guicolor_T color)); 49void gui_mch_set_bg_color __ARGS((guicolor_T color)); 50void gui_mch_set_sp_color __ARGS((guicolor_T color)); 51void gui_mch_draw_string __ARGS((int row, int col, char_u *s, int len, int flags)); 52int gui_mch_haskey __ARGS((char_u *name)); 53void gui_mch_beep __ARGS((void)); 54void gui_mch_flash __ARGS((int msec)); 55void gui_mch_invert_rectangle __ARGS((int r, int c, int nr, int nc)); 56void gui_mch_iconify __ARGS((void)); 57void gui_mch_settitle __ARGS((char_u *title, char_u *icon)); 58void gui_mch_draw_hollow_cursor __ARGS((guicolor_T color)); 59void gui_mch_draw_part_cursor __ARGS((int w, int h, guicolor_T color)); 60void gui_mch_update __ARGS((void)); 61int gui_mch_wait_for_chars __ARGS((int wtime)); 62void gui_mch_flush __ARGS((void)); 63void gui_mch_clear_block __ARGS((int row1, int col1, int row2, int col2)); 64void gui_mch_clear_all __ARGS((void)); 65void gui_mch_delete_lines __ARGS((int row, int num_lines)); 66void gui_mch_insert_lines __ARGS((int row, int num_lines)); 67void gui_mch_enable_menu __ARGS((int flag)); 68void gui_mch_set_menu_pos __ARGS((int x, int y, int w, int h)); 69/*void gui_mch_add_menu __ARGS((vimmenu_T *menu, vimmenu_T *parent, int idx));*/ 70void gui_mch_add_menu __ARGS((vimmenu_T *menu, int pos)); 71/*void gui_mch_add_menu_item __ARGS((vimmenu_T *menu, vimmenu_T *parent, int idx));*/ 72void gui_mch_add_menu_item __ARGS((vimmenu_T *menu, int idx)); 73void gui_mch_show_popupmenu __ARGS((vimmenu_T *menu)); 74void gui_mch_destroy_menu __ARGS((vimmenu_T *menu)); 75void gui_mch_menu_grey __ARGS((vimmenu_T *menu, int grey)); 76void gui_mch_menu_hidden __ARGS((vimmenu_T *menu, int hidden)); 77void gui_mch_draw_menubar __ARGS((void)); 78int gui_mch_get_lightness __ARGS((guicolor_T pixel)); 79long_u gui_mch_get_rgb __ARGS((guicolor_T pixel)); 80int gui_mch_get_mouse_x __ARGS((void)); 81int gui_mch_get_mouse_y __ARGS((void)); 82void gui_mch_setmouse __ARGS((int x, int y)); 83void gui_mch_show_popupmenu __ARGS((vimmenu_T *menu)); 84int gui_mch_dialog __ARGS((int type, char_u *title, char_u *message, char_u *buttons, int dfltbutton, char_u *textfield)); 85char_u *gui_mch_browse __ARGS((int saving, char_u *title, char_u *dflt, char_u *ext, char_u *initdir, char_u *filter)); 86void gui_mch_set_foreground __ARGS((void)); 87void gui_mch_show_tabline __ARGS((int showit)); 88int gui_mch_showing_tabline __ARGS((void)); 89void gui_mch_update_tabline __ARGS((void)); 90void gui_mch_set_curtab __ARGS((int nr)); 91 92char_u *C2Pascal_save __ARGS((char_u *Cstring)); 93char_u *C2Pascal_save_and_remove_backslash __ARGS((char_u *Cstring)); 94int_u EventModifiers2VimMouseModifiers __ARGS((EventModifiers macModifiers)); 95char_u **new_fnames_from_AEDesc __ARGS((AEDesc *theList, long *numFiles, OSErr *error)); 96 97 98void gui_request_selection __ARGS((void)); 99void gui_mch_lose_selection __ARGS((void)); 100int gui_mch_own_selection __ARGS((void)); 101void gui_mch_clear_selection __ARGS((void)); 102 103void gui_win_new_height __ARGS((win_T *wp)); 104void gui_win_comp_pos __ARGS((void)); 105void gui_win_free __ARGS((win_T *wp)); 106void gui_win_alloc __ARGS((win_T *wp)); 107void mch_post_buffer_write (buf_T *buf); 108 109void mch_errmsg __ARGS((char *str)); 110void mch_display_error __ARGS((void)); 111void clip_mch_lose_selection __ARGS((VimClipboard *cbd)); 112void clip_mch_request_selection __ARGS((VimClipboard *cbd)); 113void clip_mch_set_selection __ARGS((VimClipboard *cbd)); 114int clip_mch_own_selection __ARGS((VimClipboard *cbd)); 115 116pascal OSErr FindProcessBySignature( const OSType targetType, 117 const OSType targetCreator, ProcessSerialNumberPtr psnPtr ); 118OSErr InstallAEHandlers (void); 119pascal OSErr HandleODocAE (const AppleEvent *theAEvent, AppleEvent *theReply, long refCon); 120pascal OSErr Handle_aevt_oapp_AE (const AppleEvent *theAEvent, AppleEvent *theReply, long refCon); 121pascal OSErr Handle_aevt_quit_AE (const AppleEvent *theAEvent, AppleEvent *theReply, long refCon); 122pascal OSErr Handle_aevt_pdoc_AE (const AppleEvent *theAEvent, AppleEvent *theReply, long refCon); 123pascal OSErr Handle_unknown_AE (const AppleEvent *theAEvent, AppleEvent *theReply, long refCon); 124/* Shoulde we return MenuItemIndex? IMO yes, I did that for 5.7 ak*/ 125short gui_mac_get_menu_item_index (vimmenu_T *pMenu); 126 127pascal OSErr Handle_KAHL_SRCH_AE (const AppleEvent *theAEvent, AppleEvent *theReply, long refCon); 128pascal OSErr Handle_KAHL_MOD_AE (const AppleEvent *theAEvent, AppleEvent *theReply, long refCon); 129pascal OSErr Handle_KAHL_GTTX_AE (const AppleEvent *theAEvent, AppleEvent *theReply, long refCon); 130void Send_KAHL_MOD_AE (buf_T *buf); 131 132void gui_mac_doInContentClick __ARGS((EventRecord *theEvent, WindowPtr whichWindow)); 133void gui_mac_doInDragClick __ARGS((Point where, WindowPtr whichWindow)); 134void gui_mac_doInGrowClick __ARGS((Point where, WindowPtr whichWindow)); 135void gui_mac_doUpdateEvent __ARGS((EventRecord *event)); 136void gui_mac_doActivateEvent __ARGS((EventRecord *event)); 137void gui_mac_doSuspendEvent __ARGS((EventRecord *event)); 138void gui_mac_doKeyEvent __ARGS((EventRecord *theEvent)); 139void gui_mac_doMouseDownEvent __ARGS((EventRecord *theEvent)); 140void gui_mac_doMouseMovedEvent __ARGS((EventRecord *event)); 141void gui_mac_doMouseUpEvent __ARGS((EventRecord *theEvent)); 142void gui_mch_mousehide __ARGS((int hide)); 143 144int C2PascalString (char_u *CString, Str255 *PascalString); 145int GetFSSpecFromPath ( char_u *file, FSSpec *fileFSSpec); 146char_u *FullPathFromFSSpec_save (FSSpec file); 147 148/* vim: set ft=c : */ 149