Andrew Dunbar wrote:
> > As Uniscribe module and the editing module run at
> > the same time, the net
> > effect is that typing on the keyboard you see text
> > changing on the screen.
> > But, actually, there is no interaction between the
> > two modules apart the
> > fact that they access the same text data in memory.
>
> I agree with all of this up until I read "the editing
> module" - what on earth is that? I've never heard of
> it before! I guess you mean the application itself
> (in most cases).

The term "module" may be pretty generic.

I meant, that "part" ("piece", "chunk", whatever) of software which handles
cursor movements and editing actions, including deleting, backspacing, mouse
actions, etc. This "thing" is distinct from both the "thing" which handles
the keyboard and the "thing" which handles text display.

Of course, this "module" can just be a piece of an applicative program (also
the display module can: not all applications use Uniscribe or similar
system-level facilities), but most typically it is a service supplied by the
system.

E.g., in a typical object-oriented GUI environment, the "editing module" is
the class which implements text boxes. I.e., it is probably a collection of
methods in a DLL, which implements this logic on behalf of all the active
instances of the text box object.

In a typical console environment, the "editing module" will be the part of
operating system which handles line-level editing in the TTY console.

(BTW, I wonder how much off-topic we are now, in a scale ranging from 1 to
100...)

--
Marco