aboutsummaryrefslogtreecommitdiffstats
path: root/src/cm.c
diff options
context:
space:
mode:
authorKaroly Lorentey2003-12-27 10:00:19 +0000
committerKaroly Lorentey2003-12-27 10:00:19 +0000
commitfca177d467f0264cab4256a67175fc52fba42f2e (patch)
treeaac26ce7368d3cffc254b50f4474b03430f025ee /src/cm.c
parent6548cf002c635f6799e2e127393128842be35632 (diff)
downloademacs-fca177d467f0264cab4256a67175fc52fba42f2e.tar.gz
emacs-fca177d467f0264cab4256a67175fc52fba42f2e.zip
Fully eliminated global tty state variables.
lib-src/emacsclient.c (main.c): Fix error message. lisp/frame.el (make-frame-on-tty): New function. lisp/server.el (server-process-filter): Notify emacsclient if there was on error during evaluation. src/cm.c: Fix remaining cases of direct Wcm references. src/dispextern.h: Updated prototypes. src/dispnew.c (Fredraw_frame): Fix set_terminal_modes call. (init_display): Remove reference to meta_key. src/frame.c (make_terminal_frame): Renamed first parameter to tty_name. Call term_init before creating the frame. (Fmake_terminal_frame): Look up the `tty' and `tty-type' frame parameters from the currently selected terminal before the global default. (Fdelete_frame): Make sure that the new selected frame is live. src/keyboard.c (meta_key): Moved to struct tty_output. (read_avail_input): Fix C syntax. Update references to meta_key. (Fsuspend_emacs): pass current tty to init_sys_modes via record_unwind_protect. (Fset_input_mode): Update references to meta_key. (Fcurrent_input_mode): Ditto. src/sysdep.c (init_sys_modes): Updated old_tty and meta_key references. Don't call set_terminal_modes, it needs termcap strings. (reset_sys_modes): Call tty_reset_terminal_modes instead of reset_terminal_modes. Updated old_tty references. src/term.c: Massive updates throuout the file. (TS_*, TN_*): Moved to struct tty_output. (RPov, delete_in_insert_mode se_is_so, costs_set, insert_mode): Ditto. (standout_mode, specified_window, tty_cursor_hidden): Ditto. (tty_set_terminal_modes, tty_reset_terminal_modes): New functions. (turn_on_insert, turn_off_insert): Added tty parameter. (turn_on_highlight, turn_off_highlight, toggle_highlight): Added tty parameter. (tty_hide_cursor, tty_show_cursor): Ditto. (background_highlight, highlight_if_desired): Ditto. (tty_capable_p): Changed first parameter to tty_output. (term_init): Make sure top_frame is initialized. Don't exit on errors if this would have been a secondary terminal. Call set_terminal_modes on the end. (delete_tty): New function. (delete_tty_1): New function. (print_all_frames): New function, marginally useful for debugging. src/termchar.h (struct tty_output): Changed old_tty to be a pointer. Removed old_tty_valid member. Added tty-specific variables from term.c. src/xfaces.c (Ftty_supports_face_attributes_p): Update for new tty_capable_p. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-9
Diffstat (limited to 'src/cm.c')
-rw-r--r--src/cm.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/cm.c b/src/cm.c
index 31972b5d9f7..d1deb12f690 100644
--- a/src/cm.c
+++ b/src/cm.c
@@ -83,9 +83,9 @@ cmputc (c)
83 */ 83 */
84 84
85static 85static
86at (row, col) { 86at (tty, row, col) {
87 curY = row; 87 curY (tty) = row;
88 curX = col; 88 curX (tty) = col;
89} 89}
90 90
91/* 91/*
@@ -93,8 +93,8 @@ at (row, col) {
93 */ 93 */
94 94
95static 95static
96addcol (n) { 96addcol (tty, n) {
97 curX += n; 97 curX (tty) += n;
98 98
99 /* 99 /*
100 * If cursor hit edge of screen, what happened? 100 * If cursor hit edge of screen, what happened?
@@ -104,21 +104,21 @@ addcol (n) {
104 * of the last line. 104 * of the last line.
105 */ 105 */
106 106
107 if (curX == Wcm.cm_cols) { 107 if (curX (tty) == tty->Wcm->cm_cols) {
108 /* 108 /*
109 * Well, if magicwrap, still there, past the edge of the 109 * Well, if magicwrap, still there, past the edge of the
110 * screen (!). If autowrap, on the col 0 of the next line. 110 * screen (!). If autowrap, on the col 0 of the next line.
111 * Otherwise on last column. 111 * Otherwise on last column.
112 */ 112 */
113 113
114 if (Wcm.cm_magicwrap) 114 if (tty->Wcm->cm_magicwrap)
115 ; /* "limbo" */ 115 ; /* "limbo" */
116 else if (Wcm.cm_autowrap) { 116 else if (tty->Wcm->cm_autowrap) {
117 curX = 0; 117 curX (tty) = 0;
118 curY++; /* Beware end of screen! */ 118 curY (tty) ++; /* Beware end of screen! */
119 } 119 }
120 else 120 else
121 curX--; 121 curX (tty)--;
122 } 122 }
123} 123}
124#endif 124#endif