Re: tty.c
- From: Roland Illig <roland illig gmx de>
- To: Pavel Tsekov <ptsekov gmx net>
- Cc: MC dev <mc-devel gnome org>
- Subject: Re: tty.c
- Date: Thu, 01 Sep 2005 18:56:50 +0200
Pavel Tsekov wrote:
Hello Roland,
2005-08-29 Roland Illig <roland illig gmx de>
* slint.c: The handling of user interrupts has been moved to ...
* tty.c: ... this newly created file, which contains a simple,
not yet complete interface to the terminal library. It should be
used instead of depending directly on ncurses or SLang features.
* tty.h: Added the new function prototypes from tty.c and some
legacy definitions.
Why ? Why another wrapper ? The stuff in myslang.h is supposed to emulate
curses calls. Now you introduce another interface.
Because this wrapper tells the reader which functions from the screen
library we actually use. It is the set of features that both libraries
provide.
The new function names all start with tty_, which is a strong indication
where to look for them when you need to know how they are implemented.
Instead of the low-level function call sequence acs(), addch(), noacs(),
you only need to call tty_print_alt_char(), which is much simpler.
I don't want to depend directly on ncurses or slang, and I don't want
one of them to look like the other one (like what myslang.h does now). I
prefer having a small interface that provides all that we need in its
own namespace. Then we have one point where we can see on which features
of the screen library we depend and what the differences are.
Another benefit of the wrapper is that it reduces the number of warnings
for SLsmg_printf(), which is still declared as taking a char *, not a
const char *, as first argument. Just build mc with gcc -Wwrite-string
and see.
Roland
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]