TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Phil Crown
from: Mike Bilow
date: 1997-02-06 03:03:28
subject: Re: terminal emualtor class

Phil,

I ran your question by the PM/GPI expert here and he replied as follows.

-- Mike


* Forwarded (from: Netmail) by Mike Bilow using BilowMail0.2.
* Original dated: Feb 06 '97, 02:25

> * Forwarded (from: OS2PROG) by Mike Bilow using BilowMail0.2.
> * Originally from Phil Crown (1:124/1208) to All.
> * Original dated: Jan 30 '97, 18:13
> 
> I am writing a terminal emulator class (VT102, ANSI, etc...) for PM.
> 
> Any pointers (books, faq, *anything*) on how to do this is in a GUI
> appreciated!
> 
> It looks like everything will eventually break down into calls to
> GpiCharStingAt(), but I am not sure how to do it, and I don't even know
> where to begin looking for this type of information.

The GPI and PM reference materials will be your best friend.  They're available
with any OS/2 compiler.  PM[1..5].INF and GPI[1..3].INF are the files you'll
be looking for.

Writing something like this shouldn't actually be terribly difficult.  Since
you'll be dealing with primarily text based APIs, you won't have to worry too
much about the bulk of GPI (which can be quite overwhelming at first glance.)

Personally I would attack something like this by simply registering a window
class and doing the bulk of the work in the WM_PAINT message handler.  You'll
need to keep track of the contents of the window and be able to refresh it at
any given time.  You'll more or less be limiting yourself to the
GpiCharStringAt() API as you mentioned, and very little of the work will
involve GPI at all.  You'll be dealing primarily with the windowing API to
handle messages.  I would say that the most trivial piece of the project would
be drawing the text into the window.


___ uugate 0.34 (OS/2 2.30)
 - Origin: N1BEE BBS +1 401 944 8498 n1bee-bbs.bilow.uu.ids.net (1:323/107.107)

--- 
* Origin: N1BEE BBS +1 401 944 8498 V.34/V.FC/V.32bis/HST16.8 (1:323/107)
SEEN-BY: 50/99 54/99 270/101 620/243 625/160 711/401 413 430 934 712/311 407
SEEN-BY: 712/505 506 517 623 624 704 713/317 800/1
@PATH: 323/107 396/1 270/101 712/624 711/934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.