I've seen it before, simple command applications written in C++ that are capiable of displaying incoming chat while waiting for input (The chat is kept at the top while waiting for input at the bottom). I've been wondering how this is done. I've been thinking about it, working too much lately to work on it a lot. I was wondering if someone could give me some ideas as to how this works. I was thinking that possibly its multithreaded, 3 threads, display, standard input and socket reading. Could this be it, or am I just making this so much more complicated then it would ever have to be. Sometimes I do this (over complicate things).
Any ideas would be greatly appreciated and after I get started on the code I'll post it regardless.