To: vim-dev@vim.org Subject: Patch 6.1b.003 (extra) Fcc: outbox From: Bram Moolenaar MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ------------ Patch 6.1b.003 (extra) Problem: The RISC OS GUI doesn't compile. Solution: Include changes since Vim 5.7. (Andy Wingate) Files: src/Make_ro.mak, src/gui_riscos.c, src/os_riscos.c, src/os_riscos.h, src/proto/gui_riscos.pro *** ../vim61b.002/src/Make_ro.mak Sat Mar 9 18:30:48 2002 --- src/Make_ro.mak Mon Mar 11 22:10:01 2002 *************** *** 3,9 **** # GCC = gcc -mthrowback ! CFLAGS = -DRISCOS -DUSE_GUI # Optimising on ex_docmd.c seems to cause segfaults on compilation. Needs investigation. CCEX_DOCMD = $(GCC) $(CFLAGS) CC = $(GCC) $(CFLAGS) -O2 --- 3,9 ---- # GCC = gcc -mthrowback ! CFLAGS = -DRISCOS -DFEAT_GUI # Optimising on ex_docmd.c seems to cause segfaults on compilation. Needs investigation. CCEX_DOCMD = $(GCC) $(CFLAGS) CC = $(GCC) $(CFLAGS) -O2 *************** *** 20,31 **** o.syntax o.tag o.term o.termlib o.ui o.undo o.version o.window \ o.os_riscos o.swis o.gui o.gui_riscos ! all: $(OBJS) $(GCC) -o Vim $(OBJS) install: Vim squeeze -v Vim @.!Vim.Vim o.swis: s.swis as $(ASMFLAGS) -o o.swis s.swis --- 20,36 ---- o.syntax o.tag o.term o.termlib o.ui o.undo o.version o.window \ o.os_riscos o.swis o.gui o.gui_riscos ! Vim: $(OBJS) $(GCC) -o Vim $(OBJS) install: Vim squeeze -v Vim @.!Vim.Vim + clean: + create o.!fake! 0 + wipe o.* ~cf + remove Vim + o.swis: s.swis as $(ASMFLAGS) -o o.swis s.swis *************** *** 73,82 **** $(CC) -c c.getchar -o o.getchar o.gui: c.gui ! $(CC) -v -c c.gui -o o.gui o.gui_riscos: c.gui_riscos ! $(CC) -v -c c.gui_riscos -o o.gui_riscos o.main: c.main $(CC) -c c.main -o o.main --- 78,87 ---- $(CC) -c c.getchar -o o.getchar o.gui: c.gui ! $(CC) -c c.gui -o o.gui o.gui_riscos: c.gui_riscos ! $(CC) -c c.gui_riscos -o o.gui_riscos o.main: c.main $(CC) -c c.main -o o.main *** ../vim61b.002/src/gui_riscos.c Thu Feb 21 21:08:45 2002 --- src/gui_riscos.c Mon Mar 11 22:10:01 2002 *************** *** 14,19 **** --- 14,20 ---- * gui_riscos.c * * Thomas Leonard + * Updated by Andy Wingate */ extern int time_of_last_poll; *************** *** 1786,1792 **** modifiers ^= MOUSE_SHIFT; if (modifiers && MOUSE_SHIFT) { ! VimMenu main; /* Shift was NOT pressed - show menu */ main.dname = (char_u *) "Vim"; main.children = root_menu; --- 1787,1793 ---- modifiers ^= MOUSE_SHIFT; if (modifiers && MOUSE_SHIFT) { ! vimmenu_T main; /* Shift was NOT pressed - show menu */ main.dname = (char_u *) "Vim"; main.children = root_menu; *************** *** 2562,2573 **** void gui_mch_delete_lines(int row, int num_lines) { - swi(ColourTrans_SetGCOL, gui.back_pixel << 8, 0, 0, 0x80, 0); - int top_from = -row - num_lines; int bot_from = -gui.scroll_region_bot - 1; int bot_to = bot_from + num_lines; /* Changed without checking! */ swi(Wimp_BlockCopy, gui.window_handle, gui.scroll_region_left * gui.char_width, --- 2563,2574 ---- void gui_mch_delete_lines(int row, int num_lines) { int top_from = -row - num_lines; int bot_from = -gui.scroll_region_bot - 1; int bot_to = bot_from + num_lines; + swi(ColourTrans_SetGCOL, gui.back_pixel << 8, 0, 0, 0x80, 0); + /* Changed without checking! */ swi(Wimp_BlockCopy, gui.window_handle, gui.scroll_region_left * gui.char_width, *************** *** 2591,2601 **** void gui_mch_insert_lines(int row, int num_lines) { - swi(ColourTrans_SetGCOL, gui.back_pixel << 8, 0, 0, 0x80, 0); - int top_from = -row; int bot_to = -gui.scroll_region_bot - 1; int bot_from = bot_to + num_lines; swi(Wimp_BlockCopy, gui.window_handle, gui.scroll_region_left * gui.char_width, --- 2592,2602 ---- void gui_mch_insert_lines(int row, int num_lines) { int top_from = -row; int bot_to = -gui.scroll_region_bot - 1; int bot_from = bot_to + num_lines; + + swi(ColourTrans_SetGCOL, gui.back_pixel << 8, 0, 0, 0x80, 0); swi(Wimp_BlockCopy, gui.window_handle, gui.scroll_region_left * gui.char_width, *** ../vim61b.002/src/os_riscos.c Sun Feb 17 15:32:34 2002 --- src/os_riscos.c Mon Mar 11 22:10:01 2002 *************** *** 15,20 **** --- 15,21 ---- * Thomas Leonard */ + const char *__dynamic_da_name = "Vim heap"; /* Enable and name our dynamic area */ int ro_line_mode = TRUE; /* For Ex mode we much echo chars to the screen ourselves */ int windowed; /* Flag - are we running inside a text window? */ int WinLeft, WinTop; /* We might be started inside a text window */ *** ../vim61b.002/src/os_riscos.h Sun Feb 17 15:32:27 2002 --- src/os_riscos.h Mon Mar 11 22:10:01 2002 *************** *** 46,52 **** #endif #ifndef DFLT_VDIR ! # define DFLT_VDIR "Choices:Vim.vimfiles/view" /* default for 'viewdir' */ #endif #ifndef TERMCAPFILE --- 46,52 ---- #endif #ifndef DFLT_VDIR ! # define DFLT_VDIR "Choices:Vim.view" /* default for 'viewdir' */ #endif #ifndef TERMCAPFILE *************** *** 130,136 **** #endif #define DFLT_ERRORFILE "errors/vim" ! #define DFLT_RUNTIMEPATH "Choices:Vim.vimfiles,$VIMRUNTIME,Choices:Vim.vimfiles/after" /* * RISC PCs have plenty of memory, use large buffers --- 130,136 ---- #endif #define DFLT_ERRORFILE "errors/vim" ! #define DFLT_RUNTIMEPATH "Choices:Vim,Vim:,Choices:Vim.after" /* * RISC PCs have plenty of memory, use large buffers *** ../vim61b.002/src/proto/gui_riscos.pro Fri Aug 24 15:22:45 2001 --- src/proto/gui_riscos.pro Mon Mar 11 22:10:12 2002 *************** *** 1,54 **** ! /* Prototypes. ! * Stolen from gui_x11_pro.h */ ! void gui_mch_prepare (int *argc, char **argv); ! int gui_mch_init (void); ! void gui_mch_new_colors (void); ! int gui_mch_open (void); ! void gui_mch_exit (int rc); ! void gui_mch_set_winsize (int width, int height, int min_width, int min_height, int base_width, int base_height); ! void gui_mch_get_winpos __ARGS((int *x, int *y)); void gui_mch_set_winpos __ARGS((int x, int y)); ! void gui_mch_get_screen_dimensions (int *screen_w, int *screen_h); ! int gui_mch_init_font (char_u *font_name); ! GuiFont gui_mch_get_font (char_u *name, int giveErrorIfMissing); ! void gui_mch_set_font (GuiFont font); ! int gui_mch_same_font (GuiFont f1, GuiFont f2); ! void gui_mch_free_font (GuiFont font); ! GuiColor gui_mch_get_color (char_u *name); ! void gui_mch_set_colors (GuiColor gf, GuiColor bg); ! void gui_mch_draw_string (int row, int col, char_u *s, int len, int flags); ! int gui_mch_haskey (char_u *name); ! void gui_mch_beep (void); ! void gui_mch_flash (int msec); ! void gui_mch_invert_rectangle (int r, int c, int nr, int nc); ! void gui_mch_iconify (void); ! void gui_mch_draw_hollow_cursor (GuiColor color); ! void gui_mch_draw_part_cursor (int w, int h, GuiColor color); ! void gui_mch_update (void); ! int gui_mch_wait_for_chars (long wtime); ! void gui_mch_flush (void); ! void gui_mch_clear_block (int row1, int col1, int row2, int col2); ! void gui_mch_clear_all (void); ! void gui_mch_delete_lines (int row, int num_lines); ! void gui_mch_insert_lines (int row, int num_lines); ! void clip_mch_request_selection (void); ! void clip_mch_lose_selection (void); ! int clip_mch_own_selection (void); ! void clip_mch_set_selection (void); ! void gui_mch_menu_grey (GuiMenu *menu, int grey); ! void gui_mch_menu_hidden (GuiMenu *menu, int hidden); ! void gui_mch_draw_menubar (void); ! void gui_mch_enable_scrollbar (GuiScrollbar *sb, int flag); ! void gui_mch_set_blinking (long waittime, long on, long off); ! void gui_mch_stop_blink (void); ! void gui_mch_start_blink (void); ! int gui_mch_get_lightness (GuiColor pixel); ! long_u gui_mch_get_rgb (GuiColor pixel); ! void gui_mch_show_popupmenu(GuiMenu *menu); ! void process_event(int event, int *block); ! void plot_rectangle(int plot, int col, int minx, int miny, int maxx, int maxy); ! void ro_redraw_title(int window); ! char_u *gui_mch_browse (int saving, char_u *title, char_u *dflt, char_u *ext, char_u *initdir, char_u *filter); ! int ro_ok_to_quit(void); --- 1,67 ---- ! /* Prototypes for gui_riscos.c ! * Based on gui_x11_pro.h (10 March 2002 version) */ ! void gui_mch_prepare __ARGS((int *argc, char **argv)); ! int gui_mch_init_check __ARGS((void)); ! int gui_mch_init __ARGS((void)); ! void gui_mch_uninit __ARGS((void)); ! void gui_mch_new_colors __ARGS((void)); ! int gui_mch_open __ARGS((void)); ! void gui_init_tooltip_font __ARGS((void)); ! void gui_init_menu_font __ARGS((void));void gui_mch_exit __ARGS((int rc)); ! int gui_mch_get_winpos __ARGS((int *x, int *y)); void gui_mch_set_winpos __ARGS((int x, int y)); ! void gui_mch_set_shellsize __ARGS((int width, int height, int min_width, int min_height, int base_width, int base_height)); ! void gui_mch_get_screen_dimensions __ARGS((int *screen_w, int *screen_h)); ! int gui_mch_init_font __ARGS((char_u *font_name, int do_fontset)); ! GuiFont gui_mch_get_font __ARGS((char_u *name, int giveErrorIfMissing)); ! int gui_mch_adjust_charsize __ARGS((void)); ! void gui_mch_set_font __ARGS((GuiFont font)); ! void gui_mch_set_fontset __ARGS((GuiFontset fontset)); ! void gui_mch_free_font __ARGS((GuiFont font)); ! void gui_mch_free_fontset __ARGS((GuiFontset fontset)); ! GuiFontset gui_mch_get_fontset __ARGS((char_u *name, int giveErrorIfMissing, int fixed_width)); ! guicolor_T gui_mch_get_color __ARGS((char_u *reqname)); ! void gui_mch_set_fg_color __ARGS((guicolor_T color)); ! void gui_mch_set_bg_color __ARGS((guicolor_T color)); ! void gui_mch_draw_string __ARGS((int row, int col, char_u *s, int len, int flags)); ! int gui_mch_haskey __ARGS((char_u *name)); ! void gui_mch_beep __ARGS((void)); ! void gui_mch_flash __ARGS((int msec)); ! void gui_mch_invert_rectangle __ARGS((int r, int c, int nr, int nc)); ! void gui_mch_iconify __ARGS((void)); ! void gui_mch_set_foreground __ARGS((void)); ! void gui_mch_draw_hollow_cursor __ARGS((guicolor_T color)); ! void gui_mch_draw_part_cursor __ARGS((int w, int h, guicolor_T color)); ! void gui_mch_update __ARGS((void)); ! int gui_mch_wait_for_chars __ARGS((long wtime)); ! void gui_mch_flush __ARGS((void)); ! void gui_mch_clear_block __ARGS((int row1, int col1, int row2, int col2)); ! void gui_mch_clear_all __ARGS((void)); ! void gui_mch_delete_lines __ARGS((int row, int num_lines)); ! void gui_mch_insert_lines __ARGS((int row, int num_lines)); ! void clip_mch_lose_selection __ARGS((VimClipboard *cbd)); ! int clip_mch_own_selection __ARGS((VimClipboard *cbd)); ! void clip_mch_request_selection __ARGS((VimClipboard *cbd)); ! void clip_mch_set_selection __ARGS((VimClipboard *cbd)); ! void gui_mch_menu_grey __ARGS((vimmenu_T *menu, int grey)); ! void gui_mch_menu_hidden __ARGS((vimmenu_T *menu, int hidden)); ! void gui_mch_draw_menubar __ARGS((void)); ! void gui_mch_set_blinking __ARGS((long waittime, long on, long off)); ! void gui_mch_stop_blink __ARGS((void)); ! void gui_mch_start_blink __ARGS((void)); ! void process_event __ARGS((int event, int *block)); ! void gui_mch_show_popupmenu __ARGS((vimmenu_T *menu)); ! long_u gui_mch_get_rgb __ARGS((guicolor_T pixel)); ! int gui_mch_get_mouse_x __ARGS((void)); ! int gui_mch_get_mouse_y __ARGS((void)); ! void gui_mch_setmouse __ARGS((int x, int y)); ! void gui_mch_drawsign __ARGS((int row, int col, int typenr)); ! void gui_mch_destroy_sign __ARGS((XImage *sign)); ! void gui_mch_mousehide __ARGS((int hide)); ! void mch_set_mouse_shape __ARGS((int shape)); ! void gui_mch_menu_set_tip __ARGS((vimmenu_T *menu)); ! void ro_redraw_title __ARGS((int window)); ! int ro_ok_to_quit __ARGS((void)); ! /* vim: set ft=c : */ *** ../vim61b.002/src/version.c Mon Mar 11 22:07:19 2002 --- src/version.c Mon Mar 11 22:10:24 2002 *************** *** 608,609 **** --- 608,611 ---- { /* Add new patch number below this line */ + /**/ + 3, /**/ -- hundred-and-one symptoms of being an internet addict: 251. You've never seen your closest friends who usually live WAY too far away. /// Bram Moolenaar -- Bram@moolenaar.net -- http://www.moolenaar.net \\\ /// Creator of Vim -- http://vim.sf.net -- ftp://ftp.vim.org/pub/vim \\\ \\\ Project leader for A-A-P -- http://www.a-a-p.org /// \\\ Help me helping AIDS orphans in Uganda - http://iccf-holland.org ///