diff options
| author | Karoly Lorentey | 2003-12-27 10:00:19 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2003-12-27 10:00:19 +0000 |
| commit | fca177d467f0264cab4256a67175fc52fba42f2e (patch) | |
| tree | aac26ce7368d3cffc254b50f4474b03430f025ee /src/cm.c | |
| parent | 6548cf002c635f6799e2e127393128842be35632 (diff) | |
| download | emacs-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.c | 22 |
1 files changed, 11 insertions, 11 deletions
| @@ -83,9 +83,9 @@ cmputc (c) | |||
| 83 | */ | 83 | */ |
| 84 | 84 | ||
| 85 | static | 85 | static |
| 86 | at (row, col) { | 86 | at (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 | ||
| 95 | static | 95 | static |
| 96 | addcol (n) { | 96 | addcol (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 |