!++ ! FILENAME: KEYPAD_PRMTVS.TPU ! FUNCTION: This file contains procedures which support the enhanced keypad ! and key definitions of EVEDT. ! AUTHOR: Steven K. Shapiro, (C) Copyright SKS Enterprises, Austin TX. ! All Rights Reserved. ! ! The format, structure and contents of this file are the sole ! property of Steven K. Shapiro and are copyrighted to SKS ! Enterprises, Austin Texas. ! ! The information may be freely distributed, used and modified ! provided that the information in this header block is not ! changed, altered, disturbed or modified in any way. ! ! DATE: 26-AUG-1987 Original. ! HISTORY: current. ! CONTENTS: ! evedt$page ! evedt$transpose_chars ! evedt$goto_sel_position ! evedt$cancel_gold ! evedt$el1_list ! evedt$el2_list ! evedt$list_entry ! evedt$sl1_list ! evedt$sl2_list ! evedt$sl3_list ! !23456789A123456789B123456789C123456789D123456789E123456789F123456789G123456789H !-- !*----------------------------------------------------------------------------*! procedure keypad_prmtvs_module_ident local file_date, module_vers; file_date := "-<( 28-NOV-1988 16:25:54.78 )>-"; module_vers := substr(file_date,5,2) + substr(file_date,8,3) + substr(file_date,14,2) + substr(file_date,17,5) ; return module_vers; endprocedure; !*----------------------------------------------------------------------------*! procedure eve_page ! ! Go to next or previous page. LOCAL dir , next_page ; on_error if error = tpu$_strnotfound then if dir = REVERSE then position(beginning_of(current_buffer)); set (forward,current_buffer); eve$update_status_lines; else position(end_of(current_buffer)); set (reverse,current_buffer); eve$update_status_lines; endif; eve$show_first_line; endif; return endon_error dir := current_direction; if dir = FORWARD then move_horizontal(1) else move_horizontal(-1) endif; next_page := search(evedt$p_page_separators,dir); position(beginning_of(next_page)); endprocedure; !*----------------------------------------------------------------------------*! procedure eve_transpose_chars ! ! Transpose (swap) the character that is under the cursor with the one that ! is to the left of the cursor, leaving the cursor on the character just ! swapped. local saved_mode; saved_mode := get_info (current_buffer, "mode"); set (insert, current_buffer); eve_delete; move_horizontal (1); eve_restore_character; if current_direction = forward then move_horizontal (-1); endif; set (saved_mode, current_buffer); endprocedure; !*----------------------------------------------------------------------------*! procedure evedt$goto_sel_position ! ! Return the cursor to the position where select was enabled and cancel the ! select. if eve$x_select_position = 0 then message ("No Select Active"); else; position (eve$x_select_position); eve$x_select_position := 0; message ("Selection Cancelled."); endif; endprocedure; !*----------------------------------------------------------------------------*! ! Gold Shifted Keyboard-Key Support Procedures procedure evedt$cancel_gold ! ! Cancel the gold shift. message ("GOLD shift canceled"); endprocedure; !*----------------------------------------------------------------------------*! procedure evedt$el1_list ! copy_text (".ELS 0"); split_line; endprocedure; !*----------------------------------------------------------------------------*! procedure evedt$el2_list ! copy_text (".ELS 0"); split_line; endprocedure; !*----------------------------------------------------------------------------*! procedure evedt$list_entry ! copy_text (".LE; "); endprocedure; !*----------------------------------------------------------------------------*! procedure evedt$sl1_list ! copy_text (".S"); split_line; copy_text(".LS 0 .DLE LU"); split_line; evedt$list_entry; endprocedure; !*----------------------------------------------------------------------------*! procedure evedt$sl2_list ! copy_text (".LS 0 .DLE LL"); evedt$list_entry; endprocedure !*----------------------------------------------------------------------------*! procedure evedt$sl3_list ! copy_text (".LS 0 .DLE D"); evedt$list_entry; endprocedure;