diff options
author | Gerald Pfeifer <gerald@FreeBSD.org> | 2009-03-07 13:09:28 +0000 |
---|---|---|
committer | Gerald Pfeifer <gerald@FreeBSD.org> | 2009-03-07 13:09:28 +0000 |
commit | b9ca10fb9dab7054e1e0d24ab9b227eded978454 (patch) | |
tree | 0a945d65bcacc00cda097a587a5df76768b7e3e1 | |
parent | 475c18796a5a5f19b93d867070abda9ac9be5103 (diff) | |
download | ports-b9ca10fb9dab7054e1e0d24ab9b227eded978454.tar.gz ports-b9ca10fb9dab7054e1e0d24ab9b227eded978454.zip |
Notes
-rw-r--r-- | MOVED | 2 | ||||
-rw-r--r-- | devel/Makefile | 2 | ||||
-rw-r--r-- | devel/prcs/Makefile | 51 | ||||
-rw-r--r-- | devel/prcs/distinfo | 3 | ||||
-rw-r--r-- | devel/prcs/pkg-descr | 13 | ||||
-rw-r--r-- | devel/tvision/Makefile | 42 | ||||
-rw-r--r-- | devel/tvision/distinfo | 3 | ||||
-rw-r--r-- | devel/tvision/files/patch-lib::Makefile.in | 64 | ||||
-rw-r--r-- | devel/tvision/files/patch-lib::TChDirDialog.cc | 11 | ||||
-rw-r--r-- | devel/tvision/files/patch-lib::TMenuView.cc | 11 | ||||
-rw-r--r-- | devel/tvision/files/patch-lib::TWindow.cc | 11 | ||||
-rw-r--r-- | devel/tvision/files/patch-lib::colorsel.cc | 56 | ||||
-rw-r--r-- | devel/tvision/files/patch-lib::system.cc | 287 | ||||
-rw-r--r-- | devel/tvision/files/patch-lib::tobjstrm.cc | 1419 | ||||
-rw-r--r-- | devel/tvision/files/patch-lib::tobjstrm.h | 1159 | ||||
-rw-r--r-- | devel/tvision/files/patch-ltmain.sh | 41 | ||||
-rw-r--r-- | devel/tvision/files/patch-max | 2608 | ||||
-rw-r--r-- | devel/tvision/files/patch-streambyteorder | 41 | ||||
-rw-r--r-- | devel/tvision/files/patch-tfiledialog | 43 | ||||
-rw-r--r-- | devel/tvision/files/patch-uchar | 161 | ||||
-rw-r--r-- | devel/tvision/pkg-descr | 19 | ||||
-rw-r--r-- | devel/tvision/pkg-plist | 30 |
22 files changed, 2 insertions, 6075 deletions
@@ -3835,3 +3835,5 @@ x11-toolkits/scx||2009-03-06|Abandoned upstream x11-toolkits/xg||2009-03-06|Abandoned upstream audio/quelcom||2009-03-07|Abandoned upstream, requires obsolete version of GCC math/cxsc||2009-03-07|Abandoned upstream, requires obsolete version of GCC +devel/prcs||2009-03-07|Abandoned upstream, requires obsolete version of GCC +devel/tvision||2009-03-07|Abandoned upstream, requires obsolete version of GCC diff --git a/devel/Makefile b/devel/Makefile index 3f1447619365..35049b15afb0 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -2162,7 +2162,6 @@ SUBDIR += powerpc-rtems-gdb SUBDIR += powerpc-rtems-objc SUBDIR += ppl - SUBDIR += prcs SUBDIR += premake SUBDIR += preps-gui SUBDIR += prepstools @@ -2686,7 +2685,6 @@ SUBDIR += tpg SUBDIR += trio SUBDIR += truc - SUBDIR += tvision SUBDIR += u-boot SUBDIR += uclmmbase SUBDIR += ucpp diff --git a/devel/prcs/Makefile b/devel/prcs/Makefile deleted file mode 100644 index f73ddd54e593..000000000000 --- a/devel/prcs/Makefile +++ /dev/null @@ -1,51 +0,0 @@ -# New ports collection makefile for: prcs -# Date created: 17 Sep 96 -# Whom: jmacd@FreeBSD.org -# -# $FreeBSD$ -# - -PORTNAME= prcs -PORTVERSION= 1.3.3 -CATEGORIES= devel -MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} -MASTER_SITE_SUBDIR= ${PORTNAME} - -MAINTAINER= ports@FreeBSD.org -COMMENT= The Project Revision Control System - -DEPRECATED= unmaintained, does not work with current versions of GCC, needs gcc33 which fails to build -EXPIRATION_DATE=2009-03-02 - -USE_GMAKE= yes -GNU_CONFIGURE= yes -USE_GCC= 3.3 - -MAN1= prcs.1 -INFO= prcs -PLIST_FILES= bin/prcs - -.include <bsd.port.pre.mk> - -.if exists(${LOCALBASE}/bin/emacs) -MAN1+= prcs-callback.1 prcs-ediff.1 prcs-emerge.1 -PLIST_FILES+= bin/prcs-callback bin/prcs-ediff bin/prcs-emerge \ - share/emacs/site-lisp/prcs.el \ - share/emacs/site-lisp/prcs.elc \ - share/emacs/site-lisp/prcs-ediff.el \ - share/emacs/site-lisp/prcs-ediff.elc \ - share/emacs/site-lisp/prcs-hooks.el \ - share/emacs/site-lisp/prcs-hooks.elc -.endif - -post-patch: - ${REINPLACE_CMD} -Ee 's,#!/usr/local/bin/perl5?,#!${PERL},g' \ - ${WRKSRC}/emacs/prcs-* - -pre-configure: -.if !exists(${LOCALBASE}/bin/emacs) - ${REINPLACE_CMD} -Ee "s@^(SUBDIRS = .*) emacs (.*)@\1 \2@" \ - ${WRKSRC}/Makefile.in -.endif - -.include <bsd.port.post.mk> diff --git a/devel/prcs/distinfo b/devel/prcs/distinfo deleted file mode 100644 index aae43d85bc3d..000000000000 --- a/devel/prcs/distinfo +++ /dev/null @@ -1,3 +0,0 @@ -MD5 (prcs-1.3.3.tar.gz) = 057a0e243828104d0e672ec1cbf3fea0 -SHA256 (prcs-1.3.3.tar.gz) = 206024886fec5d2c31dd64788dd43b20401cc890aa013204015c385283879360 -SIZE (prcs-1.3.3.tar.gz) = 907482 diff --git a/devel/prcs/pkg-descr b/devel/prcs/pkg-descr deleted file mode 100644 index 644b6e24735f..000000000000 --- a/devel/prcs/pkg-descr +++ /dev/null @@ -1,13 +0,0 @@ - -PRCS's purpose is similar to that of SCCS, RCS, and CVS, but (according -to its authors, at least), it is much simpler than any of those -systems. - -WWW: http://prcs.sourceforge.net - -PRCS is released under the GNU public license, see the file COPYING -for details. - -Bug reports can be addressed to the following address: - - prcs-bugs@XCF.Berkeley.EDU diff --git a/devel/tvision/Makefile b/devel/tvision/Makefile deleted file mode 100644 index c3f75aedbeee..000000000000 --- a/devel/tvision/Makefile +++ /dev/null @@ -1,42 +0,0 @@ -# New ports collection makefile for: tvision -# Date created: 16 February 1997 -# Whom: Sandro Sigala -# -# $FreeBSD$ -# - -PORTNAME= tvision -PORTVERSION= 0.8 -PORTREVISION= 7 -CATEGORIES= devel -MASTER_SITES= ${MASTER_SITE_SUNSITE} \ - http://www.sigala.it/sergio/tvision/mysource/ -MASTER_SITE_SUBDIR= devel/lang/c++ - -MAINTAINER= ports@FreeBSD.org -COMMENT= The Turbo Vision C++ CUI library for UNIX - -DEPRECATED= unmaintained, does not work with current versions of GCC, needs gcc33 which fails to build -EXPIRATION_DATE=2009-03-02 - -GNU_CONFIGURE= yes -USE_GMAKE= yes -USE_AUTOTOOLS= libtool:15 -USE_LDCONFIG= yes - -.include <bsd.port.pre.mk> - -.if ${ARCH} != "amd64" -USE_GCC= 3.3 -.endif - -post-extract: - @${MV} ${WRKSRC}/myendian.h ${WRKSRC}/lib - -post-patch: - @${REINPLACE_CMD} -e 's,myendian.h,tvision/myendian.h,g' \ - ${WRKSRC}/lib/drawbuf.h ${WRKSRC}/lib/system.h - @${REINPLACE_CMD} -e 's,menus.h msgbox.h,menus.h msgbox.h myendian.h,' \ - ${WRKSRC}/lib/Makefile.in - -.include <bsd.port.post.mk> diff --git a/devel/tvision/distinfo b/devel/tvision/distinfo deleted file mode 100644 index f05637fa8020..000000000000 --- a/devel/tvision/distinfo +++ /dev/null @@ -1,3 +0,0 @@ -MD5 (tvision-0.8.tar.gz) = 7f99404877bb45b2510d43065cbefe6c -SHA256 (tvision-0.8.tar.gz) = a020a36f3e0f5afb2f978861cebc864f307c645c77217106e583878a8d7f8d0a -SIZE (tvision-0.8.tar.gz) = 1296058 diff --git a/devel/tvision/files/patch-lib::Makefile.in b/devel/tvision/files/patch-lib::Makefile.in deleted file mode 100644 index 883974855e5e..000000000000 --- a/devel/tvision/files/patch-lib::Makefile.in +++ /dev/null @@ -1,64 +0,0 @@ ---- lib/Makefile.in.orig Sat Sep 22 17:04:27 2001 -+++ lib/Makefile.in Mon Jan 13 20:21:13 2003 -@@ -85,7 +85,7 @@ - CLEANFILES = tvision - - pkginclude_HEADERS = \ --app.h buffers.h colorsel.h dialogs.h drawbuf.h editors.h \ -+app.h colorsel.h dialogs.h drawbuf.h editors.h \ - help.h helpbase.h menus.h msgbox.h objects.h outline.h resource.h \ - stddlg.h system.h textview.h tkeys.h tobjstrm.h ttypes.h tv.h \ - tvconfig.h tvobjs.h util.h validate.h views.h -@@ -110,7 +110,7 @@ - TSortedCollection.cc TStaticText.cc TStatusLine.cc TStrListMaker.cc \ - TStringCollection.cc TValidator.cc TView.cc TWindow.cc allnames.cc asm.cc \ - colorsel.cc drivers.cc editstat.cc help.cc helpbase.cc histlist.cc menu.cc \ --misc.cc msgbox.cc new.cc palette.cc sall.cc stddlg.cc system.cc textview.cc \ -+misc.cc msgbox.cc palette.cc sall.cc stddlg.cc system.cc textview.cc \ - tobjstrm.cc tvtext.cc - - -@@ -127,7 +127,7 @@ - TSortedCollection.cc TStaticText.cc TStatusLine.cc TStrListMaker.cc \ - TStringCollection.cc TValidator.cc TView.cc TWindow.cc allnames.cc asm.cc \ - colorsel.cc drivers.cc editstat.cc help.cc helpbase.cc histlist.cc menu.cc \ --misc.cc msgbox.cc new.cc palette.cc sall.cc stddlg.cc system.cc textview.cc \ -+misc.cc msgbox.cc palette.cc sall.cc stddlg.cc system.cc textview.cc \ - tobjstrm.cc tvtext.cc - - subdir = lib -@@ -161,7 +161,7 @@ - allnames.$(OBJEXT) asm.$(OBJEXT) colorsel.$(OBJEXT) \ - drivers.$(OBJEXT) editstat.$(OBJEXT) help.$(OBJEXT) \ - helpbase.$(OBJEXT) histlist.$(OBJEXT) menu.$(OBJEXT) \ -- misc.$(OBJEXT) msgbox.$(OBJEXT) new.$(OBJEXT) palette.$(OBJEXT) \ -+ misc.$(OBJEXT) msgbox.$(OBJEXT) palette.$(OBJEXT) \ - sall.$(OBJEXT) stddlg.$(OBJEXT) system.$(OBJEXT) \ - textview.$(OBJEXT) tobjstrm.$(OBJEXT) tvtext.$(OBJEXT) - libtvision_a_OBJECTS = $(am_libtvision_a_OBJECTS) -@@ -183,7 +183,7 @@ - TStrListMaker.lo TStringCollection.lo TValidator.lo TView.lo \ - TWindow.lo allnames.lo asm.lo colorsel.lo drivers.lo \ - editstat.lo help.lo helpbase.lo histlist.lo menu.lo misc.lo \ -- msgbox.lo new.lo palette.lo sall.lo stddlg.lo system.lo \ -+ msgbox.lo palette.lo sall.lo stddlg.lo system.lo \ - textview.lo tobjstrm.lo tvtext.lo - libtvision_la_OBJECTS = $(am_libtvision_la_OBJECTS) - -@@ -266,7 +266,6 @@ - @AMDEP_TRUE@ $(DEPDIR)/menu.Plo $(DEPDIR)/menu.Po \ - @AMDEP_TRUE@ $(DEPDIR)/misc.Plo $(DEPDIR)/misc.Po \ - @AMDEP_TRUE@ $(DEPDIR)/msgbox.Plo $(DEPDIR)/msgbox.Po \ --@AMDEP_TRUE@ $(DEPDIR)/new.Plo $(DEPDIR)/new.Po \ - @AMDEP_TRUE@ $(DEPDIR)/palette.Plo $(DEPDIR)/palette.Po \ - @AMDEP_TRUE@ $(DEPDIR)/sall.Plo $(DEPDIR)/sall.Po \ - @AMDEP_TRUE@ $(DEPDIR)/stddlg.Plo $(DEPDIR)/stddlg.Po \ -@@ -491,8 +490,6 @@ - @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/misc.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/msgbox.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/msgbox.Po@am__quote@ --@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/new.Plo@am__quote@ --@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/new.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/palette.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/palette.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/sall.Plo@am__quote@ diff --git a/devel/tvision/files/patch-lib::TChDirDialog.cc b/devel/tvision/files/patch-lib::TChDirDialog.cc deleted file mode 100644 index fca23235d072..000000000000 --- a/devel/tvision/files/patch-lib::TChDirDialog.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- lib/TChDirDialog.cc.orig 2008-07-27 18:48:30.000000000 +0200 -+++ lib/TChDirDialog.cc 2008-07-27 18:49:16.000000000 +0200 -@@ -103,7 +103,7 @@ - #ifndef __UNPATCHED - //!! Handle directory selection. - case cmDirSelection: -- chDirButton->makeDefault( Boolean( int( -+ chDirButton->makeDefault( Boolean( intptr_t( - event.message.infoPtr ) ) ); - return; // NOTE: THIS IS RETURN NOT BREAK!! - #endif diff --git a/devel/tvision/files/patch-lib::TMenuView.cc b/devel/tvision/files/patch-lib::TMenuView.cc deleted file mode 100644 index 3401d83fec28..000000000000 --- a/devel/tvision/files/patch-lib::TMenuView.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- lib/TMenuView.cc.old Fri Sep 28 15:40:42 2001 -+++ lib/TMenuView.cc Fri Sep 28 15:41:40 2001 -@@ -470,7 +470,7 @@ - if( p->command == 0 ) - { - TMenuItem *T; -- if( (T = findHotKey( p->subMenu->items, keyCode )) != 0 ) -+ if( p->subMenu != 0 && (T = findHotKey( p->subMenu->items, keyCode )) != 0 ) - return T; - } - else if( !p->disabled && diff --git a/devel/tvision/files/patch-lib::TWindow.cc b/devel/tvision/files/patch-lib::TWindow.cc deleted file mode 100644 index 694695aea5eb..000000000000 --- a/devel/tvision/files/patch-lib::TWindow.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- lib/TWindow.cc.orig 2008-07-27 18:50:18.000000000 +0200 -+++ lib/TWindow.cc 2008-07-27 18:50:37.000000000 +0200 -@@ -153,7 +153,7 @@ - /* - * Some non-portable code changed. See `TProgram.cc'. - */ -- (int)event.message.infoPtr == number && -+ (intptr_t)event.message.infoPtr == number && - (options & ofSelectable) != 0 - ) - { diff --git a/devel/tvision/files/patch-lib::colorsel.cc b/devel/tvision/files/patch-lib::colorsel.cc deleted file mode 100644 index 4d722628b94c..000000000000 --- a/devel/tvision/files/patch-lib::colorsel.cc +++ /dev/null @@ -1,56 +0,0 @@ ---- lib/colorsel.cc.orig 2008-07-27 18:51:10.000000000 +0200 -+++ lib/colorsel.cc 2008-07-27 18:52:25.000000000 +0200 -@@ -210,9 +210,9 @@ - * SS: some non-portable code changed. - */ - if( selType == csBackground ) -- color = (int)event.message.infoPtr >> 4; -+ color = (intptr_t)event.message.infoPtr >> 4; - else -- color = (int)event.message.infoPtr & 0x0F; -+ color = (intptr_t)event.message.infoPtr & 0x0F; - drawView(); - return ; - } -@@ -278,7 +278,7 @@ - /* - * SS: some non-portable code changed. - */ -- value = (int)event.message.infoPtr; -+ value = (intptr_t)event.message.infoPtr; - drawView(); - } - } -@@ -357,12 +357,12 @@ - /* - * SS: some non-portable code changed. - */ -- *color = (*color & 0x0F) | (((int)event.message.infoPtr << 4) & 0xF0); -+ *color = (*color & 0x0F) | (((intptr_t)event.message.infoPtr << 4) & 0xF0); - drawView(); - break; - - case cmColorForegroundChanged: -- *color = (*color & 0xF0) | ((int)event.message.infoPtr & 0x0F); -+ *color = (*color & 0xF0) | ((intptr_t)event.message.infoPtr & 0x0F); - drawView(); - } - } -@@ -507,7 +507,7 @@ - /* - * SS: some non-portable code changed. - */ -- setGroupIndex(focused, (int)ev.message.infoPtr); -+ setGroupIndex(focused, (intptr_t)ev.message.infoPtr); - } - - void TColorGroupList::setGroupIndex(uchar groupNum, uchar itemNum) -@@ -810,7 +810,7 @@ - /* - * SS: some non-portable code changed. - */ -- display->setColor( (uchar *)&pal->data[(int)event.message.infoPtr] ); -+ display->setColor( (uchar *)&pal->data[(intptr_t)event.message.infoPtr] ); - } - - ushort TColorDialog::dataSize() diff --git a/devel/tvision/files/patch-lib::system.cc b/devel/tvision/files/patch-lib::system.cc deleted file mode 100644 index 8cc8bd4d5eee..000000000000 --- a/devel/tvision/files/patch-lib::system.cc +++ /dev/null @@ -1,287 +0,0 @@ ---- lib/system.cc.orig Wed Nov 10 17:08:59 2004 -+++ lib/system.cc Wed Nov 10 17:34:47 2004 -@@ -56,6 +56,7 @@ - #include <signal.h> - #include <stdio.h> - #include <stdlib.h> -+#include <stdarg.h> - #include <string.h> - #include <sys/ioctl.h> - #include <sys/stat.h> -@@ -105,6 +106,8 @@ - - extern "C" - { -+#define _XOPEN_SOURCE -+ - #ifdef HAVE_NCURSES_H - #include <ncurses.h> - #else -@@ -131,7 +134,7 @@ - - /* - * This is the delay in ms between next evMouseAuto events. Must be greater -- * than DELAY_SIGALRM (see below). -+ * than DELAY_CURSES (see below). - */ - #define DELAY_AUTOCLICK_NEXT 100 - -@@ -150,10 +153,9 @@ - #define DELAY_ESCAPE 400 - - /* -- * This is the delay in ms between consecutive SIGALRM signals. This -- * signal is used to generate evMouseAuto and cmSysWakeup events. -+ * This is the delay in ms used when waiting for keyboard events. - */ --#define DELAY_SIGALRM 100 -+#define DELAY_CURSES 100 - - /* - * This broadcast event is used to update the StatusLine. -@@ -591,7 +593,6 @@ - static TPoint msWhere; /* mouse coordinates */ - static char env[PATH_MAX]; /* value of the TVOPT environment variable */ - static int curX, curY; /* current cursor coordinates */ --static int currentTime; /* current timer value */ - static int doRepaint; /* should redraw the screen ? */ - static int doResize; /* resize screen ? */ - static int evLength; /* number of events in the queue */ -@@ -604,15 +605,30 @@ - - class Timer - { -- int limit; -+ long limit; -+ static struct timeval offset_tv; -+ long currentTime() -+ { -+ struct timeval tv; -+ if(!offset_tv.tv_sec && !offset_tv.tv_usec) -+ { -+ gettimeofday(&offset_tv, NULL); -+ return 0; -+ } -+ gettimeofday(&tv, NULL); -+ return 1000L * (tv.tv_sec - offset_tv.tv_sec - 1) + (tv.tv_usec - offset_tv.tv_usec + 1000000L) / 1000L; -+ } -+ - public: - Timer() { limit = -1; } -- int isExpired() { return limit != -1 && currentTime >= limit; } -+ int isExpired() { return limit != -1 && currentTime() >= limit; } - int isRunning() { return limit != -1; } -- void start(int timeout) { limit = currentTime + timeout; } -+ void start(int timeout) { limit = currentTime() + timeout; } - void stop() { limit = -1; } - }; - -+struct timeval Timer::offset_tv = {0,0}; -+ - static Timer kbEscTimer; /* time limit to detect Esc-key sequences */ - static Timer msAutoTimer; /* time when generate next cmMouseAuto */ - static Timer wakeupTimer; /* time when generate next cmWakeup */ -@@ -703,22 +719,20 @@ - * Reads a key from the keyboard. - */ - #ifdef NCURSES_MOUSE_VERSION -+static void msInit(); -+static void msClose(); -+static void msSuspend(); -+static void msResume(); - static void msHandle(); - #endif - - static void kbHandle() - { - int code, type = 0; -- sigset_t alarmBlock, normalMask; -- -- sigemptyset(&alarmBlock); -- sigaddset(&alarmBlock, SIGALRM); - - /* see if there is data available */ - -- sigprocmask(SIG_BLOCK, &alarmBlock, &normalMask); - code = getch(); -- sigprocmask(SIG_SETMASK, &normalMask, NULL); - - #ifdef NCURSES_MOUSE_VERSION - if (code == KEY_MOUSE) /* was it a mouse event ? */ -@@ -1138,6 +1152,28 @@ - */ - - #ifdef NCURSES_MOUSE_VERSION -+static mmask_t orig_mousemask = 0; -+ -+static void msInit() -+{ -+ mmask_t m = mousemask(ALL_MOUSE_EVENTS | REPORT_MOUSE_POSITION, &orig_mousemask); -+} -+ -+static void msClose() -+{ -+ mmask_t m = mousemask(orig_mousemask, NULL); -+} -+ -+static void msSuspend() -+{ -+ mmask_t m = mousemask(0, NULL); -+} -+ -+static void msResume() -+{ -+ mmask_t m = mousemask(ALL_MOUSE_EVENTS | REPORT_MOUSE_POSITION, NULL); -+} -+ - static void msHandle() - { - TEvent event; -@@ -1502,13 +1538,14 @@ - - static void startcurses() - { -- initscr(); /* initialize the curses library */ -- keypad(stdscr, TRUE); /* enable keyboard mapping */ -- cbreak(); /* do not wait for \n */ -- noecho(); /* do not echo input */ -- if (has_colors()) start_color(); -- timeout(0); /* set getch() in non-blocking mode */ -- refresh(); /* fix for new ncurses packages */ -+ ::initscr(); /* initialize the curses library */ -+ if (::has_colors()) ::start_color(); -+ ::cbreak(); /* do not wait for \n */ -+ ::noecho(); /* do not echo input */ -+ ::nodelay(stdscr, TRUE); /* set getch() in non-blocking mode */ -+ ::timeout(DELAY_CURSES); /* set getch() in non-blocking mode */ -+ ::keypad(stdscr, TRUE); /* enable keyboard mapping */ -+ ::refresh(); /* fix for new ncurses packages */ - selectPalette(); /* select the more appropiate palette */ - TScreen::drawCursor(0); /* hide the cursor */ - TScreen::drawMouse(1); /* draw the mouse pointer */ -@@ -1736,6 +1773,10 @@ - TScreen::drawMouse(0); - #ifdef ENABLE_GPM - gpmClose(); -+#else -+#ifdef NCURSES_MOUSE_VERSION -+ msClose(); -+#endif - #endif - stopcurses(); - #ifdef ENABLE_VCS -@@ -1765,12 +1806,6 @@ - msFlag++; - break; - #endif -- case SIGALRM: -- /* -- * called every DELAY_SIGALRM ms -- */ -- currentTime += DELAY_SIGALRM; -- break; - case SIGCONT: - /* - * called when the user restart the process after a ctrl-z -@@ -1881,7 +1916,7 @@ - /* internal stuff */ - - curX = curY = 0; -- currentTime = doRepaint = doResize = evLength = 0; -+ doRepaint = doResize = evLength = 0; - evIn = evOut = &evQueue[0]; - kbEscTimer.stop(); - msAutoTimer.stop(); -@@ -1909,6 +1944,10 @@ - startcurses(); /* curses stuff */ - #ifdef ENABLE_GPM - gpmInit(); -+#else -+#ifdef NCURSES_MOUSE_VERSION -+ msInit(); -+#endif - #endif - /* catch useful signals */ - -@@ -1921,20 +1960,12 @@ - #ifdef ENABLE_FBSDM - sigaction(FBSDM_SIGNAL, &dfl_handler, NULL); - #endif -- sigaction(SIGALRM, &dfl_handler, NULL); - sigaction(SIGCONT, &dfl_handler, NULL); - sigaction(SIGINT, &dfl_handler, NULL); - sigaction(SIGQUIT, &dfl_handler, NULL); - sigaction(SIGTSTP, &dfl_handler, NULL); - sigaction(SIGWINCH, &dfl_handler, NULL); - -- /* generates a SIGALRM signal every DELAY_SIGALRM ms */ -- -- struct itimerval timer; -- timer.it_interval.tv_usec = timer.it_value.tv_usec = -- DELAY_SIGALRM * 1000; -- timer.it_interval.tv_sec = timer.it_value.tv_sec = 0; -- setitimer(ITIMER_REAL, &timer, NULL); - } - - /* -@@ -1951,6 +1982,10 @@ - startcurses(); - #ifdef ENABLE_GPM - gpmResume(); -+#else -+#ifdef NCURSES_MOUSE_VERSION -+ msResume(); -+#endif - #endif - doRepaint++; - } -@@ -1959,6 +1994,10 @@ - { - #ifdef ENABLE_GPM - gpmSuspend(); -+#else -+#ifdef NCURSES_MOUSE_VERSION -+ msSuspend(); -+#endif - #endif - stopcurses(); - } -@@ -1986,6 +2025,10 @@ - */ - #ifdef ENABLE_GPM - gpmSuspend(); -+#else -+#ifdef NCURSES_MOUSE_VERSION -+ msSuspend(); -+#endif - #endif - clear(); /* blank the screen */ - refresh(); /* this is necessary */ -@@ -1993,6 +2036,10 @@ - startcurses(); - #ifdef ENABLE_GPM - gpmResume(); -+#else -+#ifdef NCURSES_MOUSE_VERSION -+ msResume(); -+#endif - #endif - doResize = 0; - winsize win; -@@ -2056,11 +2103,14 @@ - } - #endif - /* -- * suspend until there is a signal or some data in file -+ * suspend until there is a timeout or some data in file - * descriptors - */ -+ struct timeval tv; -+ tv.tv_sec = 0; -+ tv.tv_usec = 1000L * DELAY_CURSES; - if (select(FD_SETSIZE, &fdActualRead, &fdActualWrite, -- &fdActualExcept, NULL) > 0) -+ &fdActualExcept, &tv) > 0) - { - kbReady = FD_ISSET(STDIN_FILENO, &fdActualRead); - #ifdef ENABLE_GPM diff --git a/devel/tvision/files/patch-lib::tobjstrm.cc b/devel/tvision/files/patch-lib::tobjstrm.cc deleted file mode 100644 index 37efcd4b029d..000000000000 --- a/devel/tvision/files/patch-lib::tobjstrm.cc +++ /dev/null @@ -1,1419 +0,0 @@ ---- lib/tobjstrm.cc.orig Thu Jul 26 09:59:21 2001 -+++ lib/tobjstrm.cc Mon Jan 13 21:26:49 2003 -@@ -1,5 +1,5 @@ --/* -- * tobjstrm.cc -+/** -+ * @file tobjstrm.cc - * - * Turbo Vision - Version 2.0 - * -@@ -7,6 +7,7 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TStreamable -@@ -18,23 +19,29 @@ - #define Uses_ipstream - #define Uses_opstream - #define Uses_iopstream --#define Uses_fpbase - #define Uses_ifpstream - #define Uses_ofpstream - #define Uses_fpstream - #include <tvision/tv.h> - -+#include <fstream> -+#include <ios> -+ - #include <assert.h> - #include <fcntl.h> --#include <fstream.h> - #include <limits.h> - #include <stdlib.h> - #include <string.h> - #include <sys/stat.h> -+#include <arpa/inet.h> -+ -+extern "C" { -+ #include <sys/param.h> -+} - - const uchar nullStringLen = UCHAR_MAX; - --TStreamableClass::TStreamableClass( const char *n, BUILDER b, int d ) : -+TStreamableClass::TStreamableClass(const char *n, BUILDER b, int d ) : - name( n ), - build( b ), - delta( d ) -@@ -47,21 +54,17 @@ - { - } - --void *TStreamableTypes::operator new( size_t, void * arena ) --{ -- return arena; --} -- - TStreamableTypes::~TStreamableTypes() - { - } - --void TStreamableTypes::registerType( const TStreamableClass *d ) -+void -+TStreamableTypes::registerType(const TStreamableClass *d ) - { - insert( (void *)d ); - } - --const TStreamableClass *TStreamableTypes::lookup( const char *name ) -+const TStreamableClass *TStreamableTypes::lookup(const char name[] ) - { - ccIndex loc; - if( search( (void *)name, loc ) ) -@@ -70,7 +73,8 @@ - return 0; - } - --void *TStreamableTypes::keyOf( void *d ) -+void * -+TStreamableTypes::keyOf( void *d ) - { - return (void *)((TStreamableClass *)d)->name; - } -@@ -88,13 +92,14 @@ - { - } - --void TPWrittenObjects::registerObject( const void *adr ) -+void -+TPWrittenObjects::registerObject(const void *adr ) - { - TPWObj *o = new TPWObj( adr, curId++ ); - insert( o ); - } - --P_id_type TPWrittenObjects::find( const void *d ) -+P_id_type TPWrittenObjects::find(const void *d ) - { - ccIndex loc; - if( search( (void *)d, loc ) ) -@@ -103,7 +108,8 @@ - return P_id_notFound; - } - --void *TPWrittenObjects::keyOf( void *d ) -+void * -+TPWrittenObjects::keyOf( void *d ) - { - return (void *)((TPWObj *)d)->address; - } -@@ -118,7 +124,7 @@ - return 1; - } - --TPWObj::TPWObj( const void *adr, P_id_type id ) : address( adr ), ident( id ) -+TPWObj::TPWObj(const void *adr, P_id_type id ) : address( adr ), ident( id ) - { - } - -@@ -130,7 +136,8 @@ - { - } - --void TPReadObjects::registerObject( const void *adr ) -+void -+TPReadObjects::registerObject(const void *adr ) - { - ccIndex loc = insert( (void *)adr ); - #ifndef __UNPATCHED -@@ -150,398 +157,518 @@ - return at( id ); - } - --pstream::pstream( streambuf *sb ) -+/*---------------------------------------------------------------------------* -+ * -+ *---------------------------------------------------------------------------*/ -+ -+/** -+ * This form allocates a default buffer. -+ */ -+pstream::pstream() - { -- init( sb ); - } - -+/** -+ * Destroys the pstream object. -+ */ - pstream::~pstream() - { - } - --void pstream::initTypes() -+/** -+ * Creates the associated @ref TStreamableTypes object types. Called by the -+ * @ref TStreamableClass constructor. -+ */ -+void -+pstream::initTypes() - { -- if( types == 0 ) -+ if (types == 0) - types = new TStreamableTypes; - } - --int pstream::rdstate() const --{ -- return state; --} -- --int pstream::eof() const --{ -- return state & ios::eofbit; --} -- --int pstream::fail() const --{ -- return state & (ios::failbit | ios::badbit); //| ios::hardfail); --} -- --int pstream::bad() const --{ -- return state & (ios::badbit); //| ios::hardfail); --} -- --int pstream::good() const --{ -- return state == 0; --} -- --void pstream::clear( int i ) --{ -- state = (i & 0xFF); //| (state & ios::hardfail); --} -- --void pstream::registerType( TStreamableClass *ts ) --{ -- types->registerType( ts ); --} -- --pstream::operator void *() const --{ -- return fail() ? 0 : (void *)this; --} -- --int pstream::operator! () const --{ -- return fail(); --} -- --streambuf * pstream::rdbuf() const --{ -- return bp; --} -- --pstream::pstream() -+/** -+ * Undocumented. -+ */ -+void -+pstream::registerType(TStreamableClass *ts) - { -+ types->registerType(ts); - } - --void pstream::error( StreamableError ) -+/** -+ * Sets the given error condition, where StreamableError is defined as -+ * follows: -+ * -+ * <pre> -+ * enum StreamableError { peNotRegistered, peInvalidType }; -+ * </pre> -+ */ -+void -+pstream::error(StreamableError) - { - abort(); - } - --void pstream::error( StreamableError, const TStreamable& ) -+/** -+ * Sets the given error condition, where StreamableError is defined as -+ * follows: -+ * -+ * <pre> -+ * enum StreamableError { peNotRegistered, peInvalidType }; -+ * </pre> -+ */ -+void -+pstream::error(StreamableError, const TStreamable&) - { - abort(); - } - --void pstream::init( streambuf *sbp ) --{ -- state = 0; -- bp = sbp; --} -- --void pstream::setstate( int b ) --{ -- state |= (b&0xFF); --} -+/*---------------------------------------------------------------------------* -+ * -+ *---------------------------------------------------------------------------*/ - --ipstream::ipstream( streambuf *sb ) -+/** -+ * This form creates a buffered ipstream with the given buffer. -+ */ -+ipstream::ipstream(std::streambuf *sb) -+ : std::istream(sb) - { -- pstream::init( sb ); - } - -+/** -+ * Destroys the ipstream object. -+ */ - ipstream::~ipstream() - { - objs.shouldDelete = False; - objs.shutDown(); - } - --streampos ipstream::tellg() --{ -- return bp->seekoff( 0, ios::cur, ios::in ); --} -- --ipstream& ipstream::seekg( streampos pos ) -+/** -+ * This form moves the stream's current position to the absolute -+ * position given by `pos'. -+ */ -+ipstream & -+ipstream::seekg(std::streampos pos) - { - objs.removeAll(); -- bp->seekoff( pos, ios::beg ); -+ std::istream::seekg(pos); - return *this; - } - --ipstream& ipstream::seekg( streamoff off, ios::seek_dir dir ) -+/** -+ * This form moves to a position relative to the current position by an -+ * offset `off' (+ or -) starting at `dir'. Parameter `dir' can be set to: -+ * -+ * <pre> -+ * beg (start of stream) -+ * -+ * cur (current stream position) -+ * -+ * end (end of stream) -+ * </pre> -+ */ -+ipstream & -+ipstream::seekg(std::streamoff off, std::ios::seekdir dir) - { - objs.removeAll(); -- bp->seekoff( off, dir ); -+ std::istream::seekg(off, dir); - return *this; - } - --uchar ipstream::readByte() -+/** -+ * Returns the word at the current stream position. -+ */ -+uchar -+ipstream::readByte() - { -- return bp->sbumpc(); -+ uchar val; -+ -+ read((char *)&val, 1); -+ return val; - } - --ushort ipstream::readWord() -+/** -+ * Returns the word at the current stream position. -+ */ -+ushort -+ipstream::readWord() - { - /* SS: words are stored in little endian format (LSB first) */ -- return readByte() | (readByte() << 8); -+ ushort val; -+ -+ read((char *)&val, 2); -+ val = ntohs(val); -+ return val; - } - --void ipstream::readBytes( void *data, size_t sz ) -+/** -+ * Returns the long at the current stream position. -+ */ -+ulong -+ipstream::readLong() - { -- bp->sgetn( (char *)data, sz ); -+ /* SS: ints are stored in little endian format (LSB first) */ -+ ulong val; -+ -+ read((char *)&val, 4); -+ val = ntohl(val); -+ return val; - } - --char *ipstream::readString() -+/** -+ * Reads `sz' bytes from current stream position, and writes them to -+ * the address given in `data'. -+ */ -+void -+ipstream::readBytes(void *data, std::streamsize sz) - { -- uchar len = readByte(); -- if( len == nullStringLen ) -- return 0; -+ read((char *)data, sz); -+} -+ -+/** -+ * Returns a string read from the current stream position. -+ */ -+char * -+ipstream::readString() -+{ -+ int ch = get(); -+ if (ch == EOF) { -+ return NULL; -+ } -+ -+ uchar len = ch; -+ if (len == nullStringLen) { -+ return NULL; -+ } -+ - char *buf = new char[len+1]; -- if( buf == 0 ) -- return 0; -- readBytes( buf, len ); -+ -+ read(buf, len); - buf[len] = EOS; -+ - return buf; - } - --char *ipstream::readString( char *buf, unsigned maxLen ) -+/** -+ * Returns a string read from the current stream position. -+ */ -+char * -+ipstream::readString(char *buf, unsigned maxLen) - { -- assert( buf != 0 ); -+ assert(buf != NULL); - -- uchar len = readByte(); -- if( len > maxLen-1 ) -- return 0; -- readBytes( buf, len ); -+ int len = get(); -+ if (len == EOF) { -+ return NULL; -+ } -+ -+ assert(len < maxLen); -+ -+ read(buf, len); - buf[len] = EOS; -+ - return buf; - } - --ipstream& operator >> ( ipstream& ps, char &ch ) -+ipstream & -+ipstream::operator>>(char &ch) - { -- ch = ps.readByte(); -- return ps; -+ int c = get(); -+ if (c != EOF) { -+ ch = (char)c; -+ } -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, signed char &ch ) --{ -- ch = ps.readByte(); -- return ps; --} - --ipstream& operator >> ( ipstream& ps, unsigned char &ch ) -+ipstream & -+ipstream::operator>>(signed char &ch) - { -- ch = ps.readByte(); -- return ps; -+ int c = get(); -+ if (c != EOF) { -+ ch = (signed char)c; -+ } -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, signed short &sh ) -+ipstream & -+ipstream::operator>>(unsigned char &ch) - { -- sh = ps.readWord(); -- return ps; -+ int c = get(); -+ if (c != EOF) { -+ ch = (unsigned char)c; -+ } -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, unsigned short &sh ) -+ipstream & -+ipstream::operator>>(signed short &sh) - { -- sh = ps.readWord(); -- return ps; -+ sh = readWord(); -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, signed int &i ) -+ipstream & -+ipstream::operator>>(unsigned short &sh) - { -- /* SS: ints are stored in little endian format (LSB first) */ -- i = ps.readByte() | (ps.readByte() << 8) | (ps.readByte() << 16) | -- (ps.readByte() << 24); -- return ps; -+ sh = readWord(); -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, unsigned int &i ) -+ipstream & -+ipstream::operator>>(signed int &i) - { -- /* SS: ints are stored in little endian format (LSB first) */ -- i = ps.readByte() | (ps.readByte() << 8) | (ps.readByte() << 16) | -- (ps.readByte() << 24); -- return ps; -+ i = readLong(); -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, signed long &l ) -+ipstream & -+ipstream::operator>>(unsigned int &i) - { -- /* SS: longs are stored in little endian format (LSB first) */ -- l = ps.readByte() | (ps.readByte() << 8) | (ps.readByte() << 16) | -- (ps.readByte() << 24); -- return ps; -+ i = readLong(); -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, unsigned long &l ) -+ipstream & -+ipstream::operator>>(signed long &l) - { -- /* SS: longs are stored in little endian format (LSB first) */ -- l = ps.readByte() | (ps.readByte() << 8) | (ps.readByte() << 16) | -- (ps.readByte() << 24); -- return ps; -+ l = readLong(); -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, float &f ) -+ipstream & -+ipstream::operator>>(unsigned long &l) - { -- ps.readBytes( &f, sizeof(f) ); -- return ps; -+ l = readLong(); -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, double &d ) -+ipstream & -+ipstream::operator>>(float &f) - { -- ps.readBytes( &d, sizeof(d) ); -- return ps; -+ read((char *)&f, sizeof(f)); -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, long double &ld ) -+ipstream & -+ipstream::operator>>(double &d) - { -- ps.readBytes( &ld, sizeof(ld) ); -- return ps; -+ read((char *)&d, sizeof(d)); -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, TStreamable& t ) -+ipstream & -+ipstream::operator>>(long double &ld) - { -- const TStreamableClass *pc = ps.readPrefix(); -- ps.readData( pc, &t ); -- ps.readSuffix(); -- return ps; -+ read((char *)&ld, sizeof(ld)); -+ return *this; - } - --ipstream& operator >> ( ipstream& ps, void *&t ) -+ipstream & -+ipstream::operator>>(TStreamable& t) - { -- char ch = ps.readByte(); -- switch( ch ) -- { -- case pstream::ptNull: -- t = 0; -- break; -- case pstream::ptIndexed: -- { -- P_id_type index = ps.readWord(); -- t = (void *)ps.find( index ); -- assert( t != 0 ); -- break; -- } -- case pstream::ptObject: -- { -- const TStreamableClass *pc = ps.readPrefix(); -- t = ps.readData( pc, 0 ); -- ps.readSuffix(); -- break; -- } -- default: -- ps.error( pstream::peInvalidType ); -- break; -- } -- return ps; -+ const TStreamableClass *pc = readPrefix(); -+ readData(pc, &t); -+ readSuffix(); -+ return *this; - } - --ipstream::ipstream() -+ipstream & -+ipstream::operator>>(void *&t) - { -+ int ch = get(); -+ switch (ch) { -+ case pstream::ptNull: -+ { -+ t = 0; -+ break; -+ } -+ case pstream::ptIndexed: -+ { -+ P_id_type index = readWord(); -+ t = (void *)find(index); -+ assert(t != 0); -+ break; -+ } -+ case pstream::ptObject: -+ { -+ const TStreamableClass *pc = readPrefix(); -+ t = readData(pc, 0); -+ readSuffix(); -+ break; -+ } -+ default: -+ error(pstream::peInvalidType); -+ break; -+ } -+ return *this; - } - --const TStreamableClass *ipstream::readPrefix() -+/** -+ * Returns the @ref TStreamableClass object corresponding to the class -+ * name stored at the current position. -+ */ -+const TStreamableClass * -+ipstream::readPrefix() - { -- char ch = readByte(); -- assert( ch == '[' ); // don't combine this with the previous line! -+ int ch = get(); -+ assert(ch == '['); // don't combine this with the previous line! - // We must always do the read, even if we're - // not checking assertions - - char name[128]; -- readString( name, sizeof name ); -- return types->lookup( name ); -+ readString(name, sizeof name); -+ return types->lookup(name); - } - --void *ipstream::readData( const TStreamableClass *c, TStreamable *mem ) -+/** -+ * Invokes the appropriate read function to read from the stream to the -+ * object `mem'. If `mem' is 0, the appropriate build function is called -+ * first. -+ */ -+void * -+ipstream::readData(const TStreamableClass *c, TStreamable *mem) - { -- if( mem == 0 ) -+ if (mem == 0) - mem = c->build(); - -- registerObject( (char *)mem - c->delta ); // register the actual address -- // of the object, not the address -- // of the TStreamable sub-object -- return mem->read( *this ); -+ /* -+ * Register the actual address of the object, not the address -+ * of the TStreamable sub-object -+ */ -+ registerObject((char *)mem - c->delta); -+ return mem->read(*this); - } - --void ipstream::readSuffix() -+/** -+ * Reads and checks the final byte of an object's name field. -+ */ -+void -+ipstream::readSuffix() - { -- char ch = readByte(); -- assert( ch == ']' ); // don't combine this with the previous line! -- // We must always do the write, even if we're -- // not checking assertions -+ int ch = get(); - -+ /* -+ * Don't combine this with the previous line! -+ * We must always do the write, even if we're -+ * not checking assertions -+ */ -+ assert(ch == ']'); - } - --const void *ipstream::find( P_id_type id ) -+/** -+ * Returns a pointer to the object corresponding to `id'. -+ */ -+const void * -+ipstream::find(P_id_type id) - { -- return objs.find( id ); -+ return objs.find(id); - } - --void ipstream::registerObject( const void *adr ) -+/** -+ * Registers the class of the object pointed by `adr'. -+ */ -+void -+ipstream::registerObject(const void *adr) - { -- objs.registerObject( adr ); -+ objs.registerObject(adr); - } - --opstream::opstream() --{ -- objs = new TPWrittenObjects; --} -+/*---------------------------------------------------------------------------* -+ * -+ *---------------------------------------------------------------------------*/ - --opstream::opstream( streambuf * sb ) -+/** -+ * This form creates a buffered opstream with the given buffer. -+ */ -+opstream::opstream(std::streambuf *sb) -+ : std::ostream(sb) - { -- objs = new TPWrittenObjects; -- pstream::init( sb ); - } - -+/** -+ * Destroys the opstream object. -+ */ - opstream::~opstream() - { -- objs->shutDown(); -- delete objs; -+ objs.shutDown(); - } - --opstream& opstream::seekp( streampos pos ) -+/** -+ * This form moves the stream's current position to the absolute -+ * position given by `pos'. -+ */ -+opstream & -+opstream::seekp(std::streampos pos) - { - #ifndef __UNPATCHED -- objs->freeAll(); // CMF 07.11.92 --- delete the TPWObj's -+ objs.freeAll(); // CMF 07.11.92 --- delete the TPWObj's - #endif -- objs->removeAll(); -- bp->seekoff( pos, ios::beg ); -+ objs.removeAll(); -+ std::ostream::seekp(pos); - return *this; - } - --opstream& opstream::seekp( streamoff pos, ios::seek_dir dir ) -+/** -+ * This form moves to a position relative to the current position by an -+ * offset `off' (+ or -) starting at `dir'. Parameter `dir' can be set to: -+ * -+ * <pre> -+ * beg (start of stream) -+ * -+ * cur (current stream position) -+ * -+ * end (end of stream) -+ * </pre> -+ */ -+opstream & -+opstream::seekp(std::streamoff off, std::ios::seekdir dir) - { - #ifndef __UNPATCHED -- objs->freeAll(); // CMF 07.11.92 ... s.a. -+ objs.freeAll(); // CMF 07.11.92 ... s.a. - #endif -- objs->removeAll(); -- bp->seekoff( pos, dir ); -- return *this; --} -- --streampos opstream::tellp() --{ -- return bp->seekoff( 0, ios::cur, ios::out ); --} -- --opstream& opstream::flush() --{ -- bp->sync(); -+ objs.removeAll(); -+ std::ostream::seekp(off, dir); - return *this; - } - --void opstream::writeByte( uchar ch ) -+/** -+ * Writes character `ch' to the stream. -+ */ -+void -+opstream::writeByte(uchar ch) - { -- bp->sputc( ch ); -+ write((char *)&ch, 1); - } - --void opstream::writeBytes( const void *data, size_t sz ) -+/** -+ * Writes `sz' bytes from `data' buffer to the stream. -+ */ -+void -+opstream::writeBytes(const void *data, std::streamsize sz) - { -- bp->sputn( (char *)data, sz ); -+ write((char *)data, sz); - } - --void opstream::writeWord( ushort sh ) -+/** -+ * Writes the word `us' to the stream. -+ */ -+void -+opstream::writeWord( ushort sh ) - { - /* SS: words are stored in little endian format (LSB first) */ - writeByte(sh & 0xff); - writeByte((sh >> 8) & 0xff); - } - --void opstream::writeString( const char *str ) -+/** -+ * Writes `str' to the stream (together with a leading length byte). -+ */ -+void -+opstream::writeString(const char *str ) - { -- if( str == 0 ) -+ if (str == 0 ) - { - writeByte( nullStringLen ); - return; -@@ -551,128 +678,155 @@ - writeBytes( str, len ); - } - --opstream& operator << ( opstream& ps, char ch ) -+opstream & -+opstream::operator<<(char ch) - { -- ps.writeByte( ch ); -- return ps; -+ writeByte( ch ); -+ return *this; - } - --opstream& operator << ( opstream& ps, signed char ch ) -+opstream & -+opstream::operator<<(signed char ch) - { -- ps.writeByte( ch ); -- return ps; -+ writeByte( ch ); -+ return *this; - } - --opstream& operator << ( opstream& ps, unsigned char ch ) -+opstream & -+opstream::operator<<(unsigned char ch) - { -- ps.writeByte( ch ); -- return ps; -+ writeByte( ch ); -+ return *this; - } - --opstream& operator << ( opstream& ps, signed short sh ) -+opstream & -+opstream::operator<<(signed short sh) - { -- ps.writeWord( sh ); -- return ps; -+ writeWord( sh ); -+ return *this; - } - --opstream& operator << ( opstream& ps, unsigned short sh ) -+opstream & -+opstream::operator<<(unsigned short sh) - { -- ps.writeWord( sh ); -- return ps; -+ writeWord( sh ); -+ return *this; - } - --opstream& operator << ( opstream& ps, signed int i ) -+opstream & -+opstream::operator<<(signed int i) - { - /* SS: ints are stored in little endian format (LSB first) */ -- ps.writeByte(i & 0xff); -- ps.writeByte((i >> 8) & 0xff); -- ps.writeByte((i >> 16) & 0xff); -- ps.writeByte((i >> 24) & 0xff); -- return ps; -+ writeByte(i & 0xff); -+ writeByte((i >> 8) & 0xff); -+ writeByte((i >> 16) & 0xff); -+ writeByte((i >> 24) & 0xff); -+ return *this; - } - --opstream& operator << ( opstream& ps, unsigned int i ) -+opstream & -+opstream::operator<<(unsigned int i) - { - /* SS: ints are stored in little endian format (LSB first) */ -- ps.writeByte(i & 0xff); -- ps.writeByte((i >> 8) & 0xff); -- ps.writeByte((i >> 16) & 0xff); -- ps.writeByte((i >> 24) & 0xff); -- return ps; -+ writeByte(i & 0xff); -+ writeByte((i >> 8) & 0xff); -+ writeByte((i >> 16) & 0xff); -+ writeByte((i >> 24) & 0xff); -+ return *this; - } --opstream& operator << ( opstream& ps, signed long l ) -+opstream & -+opstream::operator<<(signed long l) - { - /* SS: longs are stored in little endian format (LSB first) */ -- ps.writeByte(l & 0xff); -- ps.writeByte((l >> 8) & 0xff); -- ps.writeByte((l >> 16) & 0xff); -- ps.writeByte((l >> 24) & 0xff); -- return ps; -+ writeByte(l & 0xff); -+ writeByte((l >> 8) & 0xff); -+ writeByte((l >> 16) & 0xff); -+ writeByte((l >> 24) & 0xff); -+ return *this; - } - --opstream& operator << ( opstream& ps, unsigned long l ) -+opstream & -+opstream::operator<<(unsigned long l) - { - /* SS: longs are stored in little endian format (LSB first) */ -- ps.writeByte(l & 0xff); -- ps.writeByte((l >> 8) & 0xff); -- ps.writeByte((l >> 16) & 0xff); -- ps.writeByte((l >> 24) & 0xff); -- return ps; -+ writeByte(l & 0xff); -+ writeByte((l >> 8) & 0xff); -+ writeByte((l >> 16) & 0xff); -+ writeByte((l >> 24) & 0xff); -+ return *this; - } - --opstream& operator << ( opstream& ps, float f ) -+opstream & -+opstream::operator<<(float f ) - { -- ps.writeBytes( &f, sizeof(f) ); -- return ps; -+ writeBytes( &f, sizeof(f) ); -+ return *this; - } - --opstream& operator << ( opstream& ps, double d ) -+opstream & -+opstream::operator<<(double d ) - { -- ps.writeBytes( &d, sizeof(d) ); -- return ps; -+ writeBytes( &d, sizeof(d) ); -+ return *this; - } - --opstream& operator << ( opstream& ps, long double ld ) -+opstream & -+opstream::operator<<(long double ld ) - { -- ps.writeBytes( &ld, sizeof(ld) ); -- return ps; -+ writeBytes( &ld, sizeof(ld) ); -+ return *this; - } - --opstream& operator << ( opstream& ps, TStreamable& t ) -+opstream & -+opstream::operator<<(TStreamable &t) - { -- ps.writePrefix( t ); -- ps.writeData( t ); -- ps.writeSuffix( t ); -- return ps; -+ writePrefix( t ); -+ writeData( t ); -+ writeSuffix( t ); -+ return *this; - } - --opstream& operator << ( opstream& ps, TStreamable *t ) -+opstream & -+opstream::operator<<(TStreamable *t) - { - P_id_type index; -- if( t == 0 ) -- ps.writeByte( pstream::ptNull ); -- else if( (index = ps.find( t )) != P_id_notFound ) -+ if (t == 0 ) -+ writeByte( pstream::ptNull ); -+ else if ((index = find( t )) != P_id_notFound ) - { -- ps.writeByte( pstream::ptIndexed ); -- ps.writeWord( index ); -+ writeByte( pstream::ptIndexed ); -+ writeWord( index ); - } - else - { -- ps.writeByte( pstream::ptObject ); -- ps << *t; -+ writeByte( pstream::ptObject ); -+ *this << *t; - } -- return ps; -+ return *this; - } - --void opstream::writePrefix( const TStreamable& t ) -+/** -+ * Writes the class name prefix to the stream. -+ * -+ * The << operator uses this function to write a prefix and suffix around -+ * the data written with @ref writeData(). The prefix/suffix is used to -+ * ensure type-safe stream I/O. -+ */ -+void -+opstream::writePrefix(const TStreamable& t ) - { - writeByte( '[' ); - writeString( t.streamableName() ); - } - --void opstream::writeData( TStreamable& t ) -+/** -+ * Writes data to the stream by calling the appropriate class's write -+ * member function for the object being written. -+ */ -+void -+opstream::writeData( TStreamable& t ) - { -- if( types->lookup( t.streamableName() ) == 0 ) -+ if (types->lookup( t.streamableName() ) == 0 ) - error( peNotRegistered, t ); - else - { -@@ -681,189 +835,191 @@ - } - } - --void opstream::writeSuffix( const TStreamable& ) --{ -- writeByte( ']' ); --} -- --P_id_type opstream::find( const void *adr ) --{ -- return objs->find( adr ); --} -- --void opstream::registerObject( const void *adr ) --{ -- objs->registerObject( adr ); --} -- --iopstream::iopstream( streambuf * sb ) --{ -- pstream::init( sb ); --} -- --iopstream::~iopstream() --{ --} -- --iopstream::iopstream() --{ --} -- --fpbase::fpbase() --{ -- pstream::init( &buf ); --} -- --fpbase::fpbase( const char *name, int omode, int prot ) --{ -- pstream::init( &buf ); -- open( name, omode, prot ); --} -- --fpbase::fpbase( int f ) : buf( f ) --{ -- pstream::init( &buf ); --} -- --fpbase::fpbase( int f, char *b, int len ) : buf( f, b, len ) -+/** -+ * Writes the class name suffix to the stream. -+ * -+ * The << operator uses this function to write a prefix and suffix around -+ * the data written with @ref writeData(). The prefix/suffix is used to -+ * ensure type-safe stream I/O. -+ */ -+void -+opstream::writeSuffix(const TStreamable &) - { -- pstream::init( &buf ); -+ writeByte(']'); - } - --fpbase::~fpbase() -+/** -+ * Returns the type ID for the object ad address `adr'. -+ */ -+P_id_type -+opstream::find(const void *adr) - { -+ return objs.find(adr); - } - --void fpbase::open( const char *b, int m, int prot ) -+/** -+ * Registers the class of the object pointed by `adr'. -+ */ -+void -+opstream::registerObject(const void *adr) - { -- if( buf.is_open() ) -- clear(ios::failbit); // fail - already open -- else if( buf.open(b, m, prot) ) -- clear(ios::goodbit); // successful open -- else -- clear(ios::badbit); // open failed -+ objs.registerObject(adr); - } - --void fpbase::attach( int f ) --{ -- if( buf.is_open() ) -- setstate(ios::failbit); -- else if( buf.attach(f) ) -- clear(ios::goodbit); -- else -- clear(ios::badbit); --} -+/*---------------------------------------------------------------------------* -+ * -+ *---------------------------------------------------------------------------*/ - --void fpbase::close() -+/** -+ * This form creates a buffered iopstream with the given buffer. -+ */ -+iopstream::iopstream(std::streambuf *sb) -+ : ipstream(sb), opstream(sb) - { -- if( buf.close() ) -- clear(ios::goodbit); -- else -- setstate(ios::failbit); - } - --void fpbase::setbuf(char* b, int len) -+/** -+ * Destroys the iopstream object. -+ */ -+iopstream::~iopstream() - { -- if( buf.setbuf(b, len) ) -- clear(ios::goodbit); -- else -- setstate(ios::failbit); - } - --filebuf *fpbase::rdbuf() --{ -- return &buf; --} -+/*---------------------------------------------------------------------------* -+ * -+ *---------------------------------------------------------------------------*/ - -+/** -+ * Creates a buffered ifpstream object. -+ */ - ifpstream::ifpstream() -+ : ipstream(NULL), buf() - { -+ init(&buf); - } - --ifpstream::ifpstream( const char* name, int omode, int prot ) : -- fpbase( name, omode | ios::in | ios::bin, prot ) --{ --} -- --ifpstream::ifpstream( int f ) : fpbase( f ) --{ --} -- --ifpstream::ifpstream(int f, char* b, int len) : fpbase(f, b, len) -+/** -+ * Creates a buffered ifpstream object. You can open a file and attach it -+ * to the stream by specifying the `name' and `omode' arguments. -+ */ -+ifpstream::ifpstream(const char name[], std::ios::openmode omode) -+ : ipstream(NULL), buf() - { -+ init(&buf); -+ open(name, omode); - } - -+/** -+ * Destroys the ifpstream object. -+ */ - ifpstream::~ifpstream() - { - } - --filebuf *ifpstream::rdbuf() --{ -- return fpbase::rdbuf(); --} -- --void ifpstream::open( const char *name, int omode, int prot ) -+/** -+ * Opens the the named file in the given mode (app, ate, in, out, binary, -+ * trunc, nocreate, or noreplace) and protection. The opened file is -+ * attached to this stream. -+ */ -+void -+ifpstream::open(const char name[], std::ios::openmode omode) - { -- fpbase::open( name, omode | ios::in | ios::bin, prot ); --} -+ using std::ios; - --ofpstream::ofpstream() --{ -+ if (!buf.open(name, omode | ios::in | ios::binary)) { -+ this->setstate(ios_base::failbit); -+ } - } - --ofpstream::ofpstream( const char* name, int omode, int prot ) : -- fpbase( name, omode | ios::out | ios::bin, prot ) --{ --} -+/*---------------------------------------------------------------------------* -+ * -+ *---------------------------------------------------------------------------*/ - --ofpstream::ofpstream( int f ) : fpbase( f ) -+/** -+ * Creates a buffered ofpstream object. -+ */ -+ofpstream::ofpstream() -+ : opstream(NULL), buf() - { -+ init(&buf); - } - --ofpstream::ofpstream(int f, char* b, int len) : fpbase(f, b, len) -+/** -+ * Creates a buffered ofpstream object. You can open a file and attach it -+ * to the stream by specifying the `name' and `omode' arguments. -+ */ -+ofpstream::ofpstream(const char name[], std::ios::openmode omode) -+ : opstream(NULL), buf() - { -+ init(&buf); -+ open(name, omode); - } - -+/** -+ * Destroys the ofpstream object. -+ */ - ofpstream::~ofpstream() - { - } - --filebuf *ofpstream::rdbuf() --{ -- return fpbase::rdbuf(); --} -- --void ofpstream::open( const char *name, int omode, int prot ) -+/** -+ * Opens the the named file in the given mode (app, ate, in, out, binary, -+ * trunc, nocreate, or noreplace) and protection. The opened file is -+ * attached to this stream. -+ */ -+void -+ofpstream::open(const char name[], std::ios::openmode omode) - { -- fpbase::open( name, omode | ios::out | ios::bin, prot ); --} -+ using std::ios; - --fpstream::fpstream() --{ -+ if (!buf.open(name, omode | ios::out | ios::binary)) { -+ this->setstate(ios_base::failbit); -+ } - } - --fpstream::fpstream( const char* name, int omode, int prot ) : -- fpbase( name, omode | ios::out | ios::bin, prot ) --{ --} -+/*---------------------------------------------------------------------------* -+ * -+ *---------------------------------------------------------------------------*/ - --fpstream::fpstream( int f ) : fpbase( f ) -+/** -+ * Creates a buffered fpstream object. -+ */ -+fpstream::fpstream() -+ : iopstream(NULL), buf() - { -+ init(&buf); - } - --fpstream::fpstream(int f, char* b, int len) : fpbase(f, b, len) -+/** -+ * Creates a buffered fpstream object. You can open a file and attach it -+ * to the stream by specifying the `name' and `omode' arguments. -+ */ -+fpstream::fpstream(const char name[], std::ios::openmode omode) -+ : iopstream(NULL), buf() - { -+ init(&buf); -+ open(name, omode); - } - -+/** -+ * Destroys the fpstream object. -+ */ - fpstream::~fpstream() - { - } - --filebuf *fpstream::rdbuf() -+/** -+ * Opens the named file in the given mode (app, ate, in, out, binary, -+ * trunc, nocreate, noreplace) and protection. The opened file is -+ * attatched to this stream. -+ */ -+void -+fpstream::open(const char name[], std::ios::openmode omode) - { -- return fpbase::rdbuf(); --} -+ using std::ios; - --void fpstream::open( const char *name, int omode, int prot ) --{ -- fpbase::open( name, omode | ios::in | ios::out | ios::bin, prot ); -+ if (!buf.open(name, omode | ios::in | ios::out | ios::binary)) { -+ this->setstate(ios_base::failbit); -+ } - } -+ diff --git a/devel/tvision/files/patch-lib::tobjstrm.h b/devel/tvision/files/patch-lib::tobjstrm.h deleted file mode 100644 index 7f190b3a3d96..000000000000 --- a/devel/tvision/files/patch-lib::tobjstrm.h +++ /dev/null @@ -1,1159 +0,0 @@ ---- lib/tobjstrm.h.orig 2001-07-29 22:28:47.000000000 +0200 -+++ lib/tobjstrm.h 2008-07-27 18:54:38.000000000 +0200 -@@ -1,5 +1,5 @@ --/* -- * tobjstrm.h -+/** -+ * @file tobjstrm.h - * - * Turbo Vision - Version 2.0 - * -@@ -7,11 +7,14 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - --/** \file tobjstrm.h -- * tobjstrm.h -- */ -+#include <ios> -+#include <iostream> -+#include <fstream> -+ -+#include <limits.h> - - /** - * Undocumented. -@@ -19,13 +22,11 @@ - typedef unsigned P_id_type; - - /* ------------------------------------------------------------------------*/ --/* */ - /* class TStreamable */ - /* */ - /* This is the base class for all storable objects. It provides */ - /* three member functions, streamableName(), read(), and write(), which */ - /* must be overridden in every derived class. */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if !defined( __fLink_def ) -@@ -117,18 +118,12 @@ - #endif // Uses_TStreamable - - /* ------------------------------------------------------------------------*/ --/* */ - /* class TStreamableClass */ --/* */ --/* Used internally by TStreamableTypes and pstream. */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_TStreamableClass ) && !defined( __TStreamableClass ) - #define __TStreamableClass - --#include <limits.h> -- - /** - * Undocumented. - */ -@@ -144,7 +139,7 @@ - */ - typedef TStreamable *(*BUILDER)(); - --#define __DELTA( d ) ((int)(TStreamable*)(d*)1-1 ) -+#define __DELTA( d ) ((intptr_t)(TStreamable*)(d*)1-1 ) - - /** - * TStreamableClass is used by @ref TStreamableTypes and @ref pstream in the -@@ -154,9 +149,9 @@ - */ - class TStreamableClass - { -- friend TStreamableTypes; -- friend opstream; -- friend ipstream; -+ friend class TStreamableTypes; -+ friend class opstream; -+ friend class ipstream; - public: - /** - * Creates a TStreamable object with the given name and the given builder -@@ -184,7 +179,7 @@ - * typedef TStreamable *(*BUILDER)(); - * </pre> - */ -- TStreamableClass( const char *aName, BUILDER aBuild, int aDelta ); -+ TStreamableClass(const char *aName, BUILDER aBuild, int aDelta ); - private: - const char *name; - BUILDER build; -@@ -194,13 +189,7 @@ - #endif // Uses_TStreamableClass - - /* ------------------------------------------------------------------------*/ --/* */ - /* class TStreamableTypes */ --/* */ --/* Maintains a database of all registered types in the application. */ --/* Used by opstream and ipstream to find the functions to read and */ --/* write objects. */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_TStreamableTypes ) && !defined( __TStreamableTypes ) -@@ -235,20 +224,12 @@ - /** - * Registers the argument class by inserting `d' in the collection. - */ -- void registerType( const TStreamableClass *d ); -+ void registerType(const TStreamableClass *d ); - /** - * Returns a pointer to the class in the collection corresponding to the - * argument `name', or returns 0 if no match. - */ -- const TStreamableClass *lookup( const char *name ); -- /** -- * Undocumented. -- */ -- void *operator new( size_t sz ) { return ::operator new( sz ); } -- /** -- * Undocumented. -- */ -- void *operator new( size_t, void * ); -+ const TStreamableClass *lookup(const char name[]); - private: - /** - * Undocumented. -@@ -263,15 +244,7 @@ - #endif // Uses_TStreamableTypes - - /* ------------------------------------------------------------------------*/ --/* */ - /* class TPWrittenObjects */ --/* */ --/* Maintains a database of all objects that have been written to the */ --/* current object stream. */ --/* */ --/* Used by opstream when it writes a pointer onto a stream to determine */ --/* whether the object pointed to has already been written to the stream. */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_TPWrittenObjects ) && !defined( __TPWrittenObjects ) -@@ -286,7 +259,7 @@ - */ - class TPWrittenObjects : public TNSSortedCollection - { -- friend opstream; -+ friend class opstream; - public: - /** - * Undocumented. -@@ -306,11 +279,11 @@ - /** - * Undocumented. - */ -- void registerObject( const void *adr ); -+ void registerObject(const void *adr ); - /** - * Undocumented. - */ -- P_id_type find( const void *adr ); -+ P_id_type find(const void *adr ); - /** - * Undocumented. - */ -@@ -326,11 +299,7 @@ - }; - - /* ------------------------------------------------------------------------*/ --/* */ - /* class TPWObj */ --/* */ --/* Used internally by TPWrittenObjects. */ --/* */ - /* ------------------------------------------------------------------------*/ - - /** -@@ -341,9 +310,9 @@ - */ - class TPWObj - { -- friend TPWrittenObjects; -+ friend class TPWrittenObjects; - private: -- TPWObj( const void *adr, P_id_type id ); -+ TPWObj(const void *adr, P_id_type id ); - const void *address; - P_id_type ident; - }; -@@ -351,15 +320,7 @@ - #endif // Uses_TPWrittenObjects - - /* ------------------------------------------------------------------------*/ --/* */ - /* class TPReadObjects */ --/* */ --/* Maintains a database of all objects that have been read from the */ --/* current persistent stream. */ --/* */ --/* Used by ipstream when it reads a pointer from a stream to determine */ --/* the address of the object being referred to. */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_TPReadObjects ) && !defined( __TPReadObjects ) -@@ -375,7 +336,7 @@ - */ - class TPReadObjects : public TNSCollection - { -- friend ipstream; -+ friend class ipstream; - public: - /** - * Undocumented. -@@ -393,7 +354,7 @@ - * Sets the collection @ref limit to 0 without destroying the collection. - */ - ~TPReadObjects(); -- void registerObject( const void *adr ); -+ void registerObject(const void *adr ); - const void *find( P_id_type id ); - P_id_type curId; - }; -@@ -401,164 +362,62 @@ - #endif // Uses_TPReadObjects - - /* ------------------------------------------------------------------------*/ --/* */ - /* class pstream */ --/* */ --/* Base class for handling streamable objects. */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_pstream ) && !defined( __pstream ) - #define __pstream - --class streambuf; -- --#include <iostream.h> -- - class TStreamableTypes; - - /** - * pstream is the base class for handling streamable objects. - * @short The base class for handling streamable objects - */ --class pstream --{ -- friend TStreamableTypes; -+class pstream { -+protected: -+ /** -+ * Pointer to the @ref TStreamableTypes data base of all registered types -+ * in this application. -+ */ -+ static TStreamableTypes *types; -+ - public: -+ pstream(); -+ virtual ~pstream(); -+ - /** - * Undocumented. - */ - enum StreamableError { peNotRegistered, peInvalidType }; -+ - /** - * Undocumented. - */ - enum PointerTypes { ptNull, ptIndexed, ptObject }; -- /** -- * This form creates a buffered pstream with the given buffer and sets the -- * @ref bp data member to `buf'. The @ref state data member is set to 0. -- */ -- pstream( streambuf *buf ); -- /** -- * Destroys the pstream object. -- */ -- virtual ~pstream(); -- /** -- * Returns the current @ref state value. -- */ -- int rdstate() const; -- /** -- * Returns nonzero on end of stream. -- */ -- int eof() const; -- /** -- * Returns nonzero if a stream operation fails. -- */ -- int fail() const; -- /** -- * Returns nonzero if an error occurs. -- */ -- int bad() const; -- /** -- * Returns nonzero if no state bits are set (that is, no errors occurred). -- */ -- int good() const; -- /** -- * Set the stream @ref state data member to the given value (defaults -- * to 0). -- */ -- void clear( int sState = 0 ); -- /** -- * Overloads the pointer-to-void cast operator. -- * -- * Returns 0 if operation has failed (that is, @ref fail() returned -- * nonzero); otherwise returns nonzero. -- */ -- operator void *() const; -- /** -- * Overloads the NOT operator. Returns the value returned by @ref fail(). -- */ -- int operator ! () const; -- /** -- * Returns the @ref bp pointer to this stream's assigned buffer. -- */ -- streambuf * rdbuf() const; -- /** -- * Creates the associated @ref TStreamableTypes object types. Called by the -- * @ref TStreamableClass constructor. -- */ -+ -+ void error(StreamableError); -+ void error(StreamableError, const TStreamable &); -+ - static void initTypes(); -- /** -- * Sets the given error condition, where StreamableError is defined as -- * follows: -- * -- * <pre> -- * enum StreamableError { peNotRegistered, peInvalidType }; -- * </pre> -- */ -- void error( StreamableError ); -- /** -- * Sets the given error condition, where StreamableError is defined as -- * follows: -- * -- * <pre> -- * enum StreamableError { peNotRegistered, peInvalidType }; -- * </pre> -- */ -- void error( StreamableError, const TStreamable& ); -- /** -- * Undocumented. -- */ -- static void registerType( TStreamableClass *ts ); --protected: -- /** -- * This form allocates a default buffer. -- */ -- pstream(); -- /** -- * Pointer to the stream buffer. -- */ -- streambuf *bp; -- /** -- * The format state flags, as enumerated in ios. Use @ref rdstate() to -- * access the current state. -- */ -- int state; -- /** -- * Initializes the stream: sets @ref state to 0 and @ref bp to `sbp'. -- */ -- void init( streambuf *sbp ); -- /** -- * Updates the @ref state data member with state |= (b & 0 xFF). -- */ -- void setstate( int b ); -- /** -- * Pointer to the @ref TStreamableTypes data base of all registered types -- * in this application. -- */ -- static TStreamableTypes * types; -+ static void registerType(TStreamableClass *ts); - }; - - #endif // Uses_pstream - - /* ------------------------------------------------------------------------*/ --/* */ - /* class ipstream */ --/* */ --/* Base class for reading streamable objects */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_ipstream ) && !defined( __ipstream ) - #define __ipstream - --#include <iostream.h> -- - class TStreamableClass; - - /** - * ipstream, a specialized input stream derivative of @ref pstream, is the - * base class for reading (extracting) streamable objects. ipstream is -- * analogous to istream, defined in `iostream.h' for the standard C++ stream -+ * analogous to istream, defined in `iostream' for the standard C++ stream - * library. ipstream is a friend class of @ref TPReadObjects. - * - * The overloaded operators >> extract (read) from the given ipstream object -@@ -566,176 +425,69 @@ - * to chain >> operations in the usual way. The data type of the argument - * determines how the read is performed. For example, reading a signed char - * is implemented using @ref readByte(). -+ * - * @see opstream -+ * - * @short The base class for reading (extracting) streamable objects from - * streams - */ --class ipstream : virtual public pstream --{ --public: -- /** -- * This form creates a buffered ipstream with the given buffer and sets -- * the @ref bp data member to `buf'. The @ref state data member is set -- * to 0. -- */ -- ipstream( streambuf *buf ); -- /** -- * Destroys the ipstream object. -- */ -- ~ipstream(); -- /** -- * Returns the (absolute) current stream position. -- */ -- streampos tellg(); -- /** -- * This form moves the stream position to the absolute position given by -- * `pos'. -- */ -- ipstream& seekg( streampos pos ); -- /** -- * This form moves to a position relative to the current position by an -- * offset `off' (+ or -) starting at `dir'. Parameter `dir' can be set to: -- * -- * <pre> -- * beg (start of stream) -- * -- * cur (current stream position) -- * -- * end (end of stream) -- * </pre> -- */ -- ipstream& seekg( streamoff off, ios::seek_dir dir ); -- /** -- * Returns the character at the current stream position. -- */ -- uchar readByte(); -- /** -- * Reads `sz' bytes from current stream position, and writes them to -- * the address given in `data'. -- */ -- void readBytes( void *data, size_t sz ); -- /** -- * Returns the word at the current stream position. -- */ -- ushort readWord(); -- /** -- * Returns a string read from the current stream position. -- */ -- char * readString(); -- /** -- * Returns a string read from the current stream position. -- */ -- char * readString( char *buf, unsigned maxLen ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, char& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, signed char& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, unsigned char& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, signed short& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, unsigned short& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, signed int& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, unsigned int& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, signed long& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, unsigned long& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, float& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, double& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, long double& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, TStreamable& ); -- /** -- * Undocumented. -- */ -- friend ipstream& operator >> ( ipstream&, void *& ); --protected: -- /** -- * This form does nothing. -- */ -- ipstream(); -- /** -- * Returns the @ref TStreamableClass object corresponding to the class -- * name stored at the current position. -- */ -- const TStreamableClass * readPrefix(); -- /** -- * Invokes the appropriate read function to read from the stream to the -- * object `mem'. If `mem' is 0, the appropriate build function is called -- * first. -- */ -- void * readData( const TStreamableClass *c, TStreamable *mem ); -- /** -- * Reads and checks the final byte of an object's name field. -- */ -- void readSuffix(); -- /** -- * Returns a pointer to the object corresponding to `id'. -- */ -- const void * find( P_id_type id ); -- /** -- * Registers the class of the object pointed by `adr'. -- */ -- void registerObject( const void *adr ); -+class ipstream : virtual public pstream, public std::istream { - private: - TPReadObjects objs; - -+protected: -+ const TStreamableClass *readPrefix(); -+ void *readData(const TStreamableClass *c, TStreamable *mem); -+ void readSuffix(); -+ const void *find(P_id_type id); -+ void registerObject(const void *adr); -+ -+ ushort readWord(); -+ ulong readLong(); -+ -+public: -+ ipstream(std::streambuf *buf); -+ ~ipstream(); -+ -+ ipstream &seekg(std::streampos pos); -+ ipstream &seekg(std::streamoff off, std::ios::seekdir dir); -+ -+ uchar readByte(); -+ void readBytes(void *data, std::streamsize sz); -+ char *readString(); -+ char *readString(char *buf, unsigned maxLen); -+ -+ ipstream &operator>>(char &); -+ ipstream &operator>>(signed char &); -+ ipstream &operator>>(unsigned char &); -+ ipstream &operator>>(signed short &); -+ ipstream &operator>>(unsigned short &); -+ ipstream &operator>>(signed int &); -+ ipstream &operator>>(unsigned int &); -+ ipstream &operator>>(signed long &); -+ ipstream &operator>>(unsigned long &); -+ ipstream &operator>>(float &); -+ ipstream &operator>>(double &); -+ ipstream &operator>>(long double &); -+ ipstream &operator>>(TStreamable &); -+ ipstream &operator>>(void *&); - }; - - #endif // Uses_ipstream - - /* ------------------------------------------------------------------------*/ --/* */ - /* class opstream */ --/* */ --/* Base class for writing streamable objects */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_opstream ) && !defined( __opstream ) - #define __opstream - --#include <iostream.h> -- - class TStreamableClass; - - /** - * opstream, a specialized output stream derivative of @ref pstream, is the - * base class for writing (inserting) streamable objects. opstream is -- * analogous to ostream, defined in `iostream.h' for the standard C++ stream -+ * analogous to ostream, defined in `iostream' for the standard C++ stream - * library. opstream is a friend class of @ref TPWrittenObjects. - * - * The overloaded operators << insert (write) the given argument to the given -@@ -743,469 +495,146 @@ - * to chain << operations in the usual way. The data type of the argument - * determines the form of write operation employed. For example, writing a - * signed char is implemented using @ref writeByte(). -+ * - * @see ipstream -+ * - * @short The base class for writing (inserting) streamable objects into - * streams - */ --class opstream : virtual public pstream --{ -+class opstream : virtual public pstream, public std::ostream { -+ TPWrittenObjects objs; -+ -+protected: -+ void writePrefix(const TStreamable &); -+ void writeData(TStreamable &); -+ void writeSuffix(const TStreamable &); -+ P_id_type find(const void *adr); -+ void registerObject(const void *adr); -+ - public: -- /** -- * This form creates a buffered opstream with the given buffer and sets -- * the @ref bp data member to `buf'. The @ref state data member is set -- * to 0. -- */ -- opstream( streambuf *buf ); -- /** -- * Destroys the opstream object. -- */ -+ opstream(std::streambuf *buf); - ~opstream(); -- /** -- * Returns the (absolute) current stream position. -- */ -- streampos tellp(); -- /** -- * This form moves the stream's current position to the absolute position -- * given by `pos'. -- */ -- opstream& seekp( streampos pos ); -- /** -- * This form moves to a position relative to the current position by an -- * offset `off' (+ or -) starting at `dir'. Parameter `dir' can be set to: -- * -- * <pre> -- * beg (start of stream) -- * -- * cur (current stream position) -- * -- * end (end of stream) -- * </pre> -- */ -- opstream& seekp( streamoff off, ios::seek_dir dir ); -- /** -- * Flushes the stream. -- */ -+ opstream& seekp(std::streampos pos); -+ opstream& seekp(std::streamoff off, std::ios::seekdir dir); - opstream& flush(); -- /** -- * Writes character `ch' to the stream. -- */ -- void writeByte( uchar ch ); -- /** -- * Writes `sz' bytes from `data' buffer to the stream. -- */ -- void writeBytes( const void *data, size_t sz ); -- /** -- * Writes the word `us' to the stream. -- */ -- void writeWord( ushort us ); -- /** -- * Writes `str' to the stream (together with a leading length byte). -- */ -- void writeString( const char *str ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, char ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, signed char ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, unsigned char ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, signed short ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, unsigned short ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, signed int ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, unsigned int ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, signed long ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, unsigned long ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, float ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, double ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, long double ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, TStreamable& ); -- /** -- * Undocumented. -- */ -- friend opstream& operator << ( opstream&, TStreamable * ); --protected: -- /** -- * This form allocates a default buffer. -- */ -- opstream(); -- /** -- * Writes the class name prefix to the stream. -- * -- * The << operator uses this function to write a prefix and suffix around -- * the data written with @ref writeData(). The prefix/suffix is used to -- * ensure type-safe stream I/O. -- */ -- void writePrefix( const TStreamable& ); -- /** -- * Writes data to the stream by calling the appropriate class's write -- * member function for the object being written. -- */ -- void writeData( TStreamable& ); -- /** -- * Writes the class name suffix to the stream. -- * -- * The << operator uses this function to write a prefix and suffix around -- * the data written with @ref writeData(). The prefix/suffix is used to -- * ensure type-safe stream I/O. -- */ -- void writeSuffix( const TStreamable& ); -- /** -- * Returns the type ID for the object ad address `adr'. -- */ -- P_id_type find( const void *adr ); -- /** -- * Registers the class of the object ad address `adr'. -- */ -- void registerObject( const void *adr ); --private: -- TPWrittenObjects *objs; -+ -+ void writeByte(uchar ch); -+ void writeBytes(const void *data, std::streamsize sz); -+ void writeWord(ushort us); -+ void writeString(const char *str); -+ -+ opstream &operator<<(char); -+ opstream &operator<<(signed char); -+ opstream &operator<<(unsigned char); -+ opstream &operator<<(signed short); -+ opstream &operator<<(unsigned short); -+ opstream &operator<<(signed int); -+ opstream &operator<<(unsigned int); -+ opstream &operator<<(signed long); -+ opstream &operator<<(unsigned long); -+ opstream &operator<<(float); -+ opstream &operator<<(double); -+ opstream &operator<<(long double); -+ opstream &operator<<(TStreamable &); -+ opstream &operator<<(TStreamable *); - }; - - #endif // Uses_opstream - - /* ------------------------------------------------------------------------*/ --/* */ - /* class iopstream */ --/* */ --/* Base class for reading and writing streamable objects */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_iopstream ) && !defined( __iopstream ) - #define __iopstream - --#include <iostream.h> -- - /** - * Class iopstream is a simple "mix" of its bases, @ref opstream and - * @ref ipstream. It provides the base class for simultaneous writing and - * reading streamable objects. -+ * - * @short The base class for simultaneous writing and reading streamable - * objects to and from streams - */ --class iopstream : public ipstream, public opstream --{ -+class iopstream : public ipstream, public opstream { - public: -- /** -- * Creates a buffered iopstream with the given buffer and sets the @ref bp -- * data member to `buf'. The @ref state data member is set to 0. -- */ -- iopstream( streambuf *buf ); -- /** -- * Destroys the iopstream object. -- */ -+ iopstream(std::streambuf *buf); - ~iopstream(); --protected: -- /** -- * Undocumented. -- */ -- iopstream(); - }; - - #endif // Uses_iopstream - - /* ------------------------------------------------------------------------*/ --/* */ --/* class fpbase */ --/* */ --/* Base class for handling streamable objects on file streams */ --/* */ --/* ------------------------------------------------------------------------*/ -- --#if defined( Uses_fpbase ) && !defined( __fpbase ) --#define __fpbase -- --#include <fstream.h> -- --/** -- * fpbase provides the basic operations common to all object file stream I/O. -- * @short Base class for handling streamable objects on file streams -- */ --class fpbase : virtual public pstream --{ --public: -- /** -- * Creates a buffered fpbase object. -- */ -- fpbase(); -- /** -- * Creates a buffered fpbase object. You can open a file and attach it to -- * the stream by specifying the `name', `omode', and `prot' (protection) -- * arguments. -- */ -- fpbase( const char *name, int omode, int prot = filebuf::openprot ); -- /** -- * Creates a buffered fpbase object. You can open a file and attach it to -- * the stream by specifying the file descriptor, `f'. -- */ -- fpbase( int f ); -- /** -- * Creates a buffered fpbase object. You can set the size and initial -- * contents of the buffer with the `len' and `b' arguments. You can open -- * a file and attach it to the stream by specifying the file descriptor, -- * `f'. -- */ -- fpbase( int f, char *b, int len); -- /** -- * Destroys the fpbase object. -- */ -- ~fpbase(); -- /** -- * Opens the named file in the given mode (app, ate, in, out, binary, -- * trunc, nocreate, noreplace) and protection. The opened file is -- * attached to this stream. -- */ -- void open( const char *name, int omode, int prot = filebuf::openprot ); -- /** -- * Attaches the file with descriptor `f' to this stream if possible. -- */ -- void attach( int f ); -- /** -- * Closes the stream and associated file. -- */ -- void close(); -- /** -- * Allocates a buffer of size `len'. -- */ -- void setbuf( char *buf, int len ); -- /** -- * Returns a pointer to the current file buffer. -- */ -- filebuf * rdbuf(); --private: -- filebuf buf; --}; -- --#endif // Uses_fpbase -- --/* ------------------------------------------------------------------------*/ --/* */ - /* class ifpstream */ --/* */ --/* Base class for reading streamable objects from file streams */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_ifpstream ) && !defined( __ifpstream ) - #define __ifpstream - --#include <iostream.h> -- - /** -- * ifpstream is a simple "mix" of its bases, @ref fpbase and @ref ipstream. -- * It provides the base class for reading (extracting) streamable objects -- * from file streams. -- * @short Provides the base class for reading (extracting) streamable objects -+ * ifpstream provides the base class for reading (extracting) -+ * streamable objects from file streams. -+ * -+ * @short The base class for reading (extracting) streamable objects - * from file streams. - */ --class ifpstream : public fpbase, public ipstream --{ -+class ifpstream : public ipstream { -+ std::filebuf buf; - public: -- /** -- * Creates a buffered ifpstream object. -- */ - ifpstream(); -- /** -- * Creates a buffered ifpstream object. You can open a file and attach it -- * to the stream by specifying the `name', `omode', and `prot' -- * (protection) arguments. -- */ -- ifpstream(const char *name, int omode = ios::in, -- int prot = filebuf::openprot ); -- /** -- * Creates a buffered ifpstream object. You can open a file and attach it -- * to the stream by specifying the file descriptor, `f'. -- */ -- ifpstream( int f ); -- /** -- * Creates a buffered ifpstream object. You can set the size and initial -- * contents of the buffer with the `len' and `b' arguments. You can open -- * a file and attach it to the stream by specifying the file descriptor, -- * `f'. -- */ -- ifpstream( int f, char *b, int len ); -- /** -- * Destroys the ifpstream object. -- */ -+ ifpstream(const char name[], std::ios::openmode omode = std::ios::in); - ~ifpstream(); -- /** -- * Returns a pointer to the current file buffer. -- */ -- filebuf * rdbuf(); -- /** -- * Opens the the named file in the given mode (app, ate, in, out, binary, -- * trunc, nocreate, or noreplace) and protection. The default mode is in -- * (input) with openprot protection. The opened file is attached to this -- * stream. -- */ -- void open( const char *name, int omode = ios::in, -- int prot = filebuf::openprot ); -+ void open(const char name[], std::ios::openmode omode = std::ios::in); - }; - - #endif // Uses_ifpstream - - /* ------------------------------------------------------------------------*/ --/* */ - /* class ofpstream */ --/* */ --/* Base class for writing streamable objects to file streams */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_ofpstream ) && !defined( __ofpstream ) - #define __ofpstream - --#include <iostream.h> -- - /** -- * Class ofpstream is a simple "mix" of its bases, @ref fpbase and -- * @ref opstream. It provides the base class for writing (inserting) -+ * ofpstream provides the base class for writing (inserting) - * streamable objects to file streams. -- * @short Provides the base class for writing (inserting) streamable objects -- * to file streams -+ * -+ * @short The base class for writing (inserting) streamable objects -+ * to file streams. - */ --class ofpstream : public fpbase, public opstream --{ -+class ofpstream : public opstream { -+ std::filebuf buf; - public: -- /** -- * Creates a buffered ofpstream object. -- */ - ofpstream(); -- /** -- * Creates a buffered ofpstream object. You can open a file and attach it -- * to the stream by specifying the `name', `omode', and `prot' -- * (protection) arguments. -- */ -- ofpstream( const char *name, int omode = ios::out, int prot = -- filebuf::openprot ); -- /** -- * Creates a buffered ofpstream object. You can open a file and attach it -- * to the stream by specifying the file descriptor, `f'. -- */ -- ofpstream( int f ); -- /** -- * Creates a buffered ofpstream object. You can set the size and initial -- * contents of the buffer using the `len' and `b' arguments. You can open -- * a file and attach it to the stream by specifying the file descriptor, -- * `f'. -- */ -- ofpstream( int f, char *b, int len ); -- /** -- * Destroys the ofpstream object. -- */ -+ ofpstream(const char name[], std::ios::openmode omode = std::ios::out); - ~ofpstream(); -- /** -- * Returns the current file buffer. -- */ -- filebuf * rdbuf(); -- /** -- * Opens the the named file in the given mode (app, ate, in, out, binary, -- * trunc, nocreate, or noreplace) and protection. The default mode is out -- * (output) with openprot protection. The opened file is attached to this -- * stream. -- */ -- void open( const char *name, int omode = ios::out, -- int prot = filebuf::openprot ); -+ void open(const char name[], std::ios::openmode omode = std::ios::out); - }; - - #endif // Uses_ofpstream - - /* ------------------------------------------------------------------------*/ --/* */ - /* class fpstream */ --/* */ --/* Base class for reading and writing streamable objects to */ --/* bidirectional file streams */ --/* */ - /* ------------------------------------------------------------------------*/ - - #if defined( Uses_fpstream ) && !defined( __fpstream ) - #define __fpstream - --#include <iostream.h> -- - /** -- * fpstream is a simple "mix" of its bases, @ref fpbase and @ref iopstream. -- * It provides the base class for simultaneous writing and reading streamable -- * objects to bidirectional file streams. It is analogous to class fstream, -- * defined in `fstream.h' for the standard C++ stream library. -- * @short Provides the base class for simultaneous writing and reading -- * streamable objects to bidirectional file streams -+ * fpstream provides the base class for simultaneous writing and -+ * reading streamable objects to bidirectional file streams. -+ * -+ * @short The base class for simultaneous writing and reading -+ * streamable objects to bidirectional file streams. - */ --class fpstream : public fpbase, public iopstream --{ -+class fpstream : public iopstream { -+ std::filebuf buf; - public: -- /** -- * Creates a buffered fpstream object. -- */ - fpstream(); -- /** -- * Creates a buffered fpstream object. You can open a file and attach it -- * to the stream by specifying the `name', `omode', and `prot' -- * (protection) arguments. -- */ -- fpstream( const char *name, int omode, int prot = filebuf::openprot ); -- /** -- * Creates a buffered fpstream object. You can open a file and attach it -- * to the stream by specifying the file descriptor, `f'. -- */ -- fpstream( int f ); -- /** -- * Creates a buffered fpstream object. You can set the size and initial -- * contents of the buffer using the `len' and `b' arguments. You can open -- * a file and attach it to the stream by specifying the file descriptor, -- * `f'. -- */ -- fpstream( int f, char *b, int len ); -- /** -- * Destroys the fpstream object. -- */ -+ fpstream(const char name[], std::ios::openmode omode); - ~fpstream(); -- /** -- * Returns the data member bp. -- */ -- filebuf * rdbuf(); -- /** -- * Opens the named file in the given mode (app, ate, in, out, binary, -- * trunc, nocreate, noreplace) and protection. The opened file is -- * attatched to this stream. -- */ -- void open( const char *name, int omode, int prot = filebuf::openprot ); -+ void open(const char name[], std::ios::openmode omode); - }; - - #endif // Uses_fpstream diff --git a/devel/tvision/files/patch-ltmain.sh b/devel/tvision/files/patch-ltmain.sh deleted file mode 100644 index 4accdcdc8db7..000000000000 --- a/devel/tvision/files/patch-ltmain.sh +++ /dev/null @@ -1,41 +0,0 @@ ---- ltmain.sh.orig Sun Sep 23 00:01:27 2001 -+++ ltmain.sh Fri Mar 8 04:56:54 2002 -@@ -1043,14 +1043,14 @@ - # These systems don't actually have a C library (as such) - test "X$arg" = "X-lc" && continue - ;; -- *-*-openbsd*) -+ *-*-openbsd* | *-*-freebsd*) - # Do not include libc due to us having libc/libc_r. - test "X$arg" = "X-lc" && continue - ;; - esac - elif test "X$arg" = "X-lc_r"; then - case $host in -- *-*-openbsd*) -+ *-*-openbsd* | *-*-freebsd*) - # Do not include libc_r directly, use -pthread flag. - continue - ;; -@@ -2441,7 +2441,7 @@ - *-*-netbsd*) - # Don't link with libc until the a.out ld.so is fixed. - ;; -- *-*-openbsd*) -+ *-*-openbsd* | *-*-freebsd*) - # Do not include libc due to us having libc/libc_r. - ;; - *) -@@ -4210,10 +4210,12 @@ - fi - - # Install the pseudo-library for information purposes. -+ if /usr/bin/false; then - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - instname="$dir/$name"i - $show "$install_prog $instname $destdir/$name" - $run eval "$install_prog $instname $destdir/$name" || exit $? -+ fi - - # Maybe install the static library, too. - test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" diff --git a/devel/tvision/files/patch-max b/devel/tvision/files/patch-max deleted file mode 100644 index ca2b487e5db8..000000000000 --- a/devel/tvision/files/patch-max +++ /dev/null @@ -1,2608 +0,0 @@ -Index: demo/ascii.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/demo/ascii.cc,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- demo/ascii.cc 20 Dec 2002 12:06:16 -0000 1.1 -+++ demo/ascii.cc 25 Dec 2002 14:10:14 -0000 1.4 -@@ -12,11 +12,12 @@ - * Copyright (c) 1994 by Borland International - * All Rights Reserved. - * -- */ --/* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - -+#include "ascii.h" -+ - #define Uses_TRect - #define Uses_TEvent - #define Uses_TKeys -@@ -32,11 +33,15 @@ - #include <string.h> - #include <stdlib.h> - #include <ctype.h> --#include <strstream.h> --#include <iomanip.h> -- --#include "ascii.h" - -+#include <iomanip> -+#include <ios> -+#include <sstream> -+#include <string> -+ -+using std::ios; -+using std::ostringstream; -+using std::string; - - // - // TTable functions -@@ -207,16 +212,16 @@ - { - TDrawBuffer buf; - char color = getColor(6); -- char str[80]; -- ostrstream statusStr( str, sizeof str ); -+ string str; -+ ostringstream statusStr(str); - - statusStr - << " Char: " << (char ) ((asciiChar == 0) ? 0x20 : asciiChar) -- << " Decimal: " << setw(3) << (int) asciiChar -- << " Hex " << hex << setiosflags(ios::uppercase) -- << setw(2) << (int) asciiChar << " " << ends; -+ << " Decimal: " << std::setw(3) << (int) asciiChar -+ << " Hex " << std::hex << std::setiosflags(ios::uppercase) -+ << std::setw(2) << (int) asciiChar << " " << std::ends; - -- buf.moveStr(0, str, color); -+ buf.moveStr(0, str.c_str(), color); - writeLine(0, 0, 32, 1, buf); - } - -Index: demo/ascii.h -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/demo/ascii.h,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- demo/ascii.h 20 Dec 2002 12:06:16 -0000 1.1 -+++ demo/ascii.h 25 Dec 2002 14:10:14 -0000 1.3 -@@ -9,10 +9,16 @@ - * Copyright (c) 1994 by Borland International - * All Rights Reserved. - * -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #if !defined( __ASCII_H ) - #define __ASCII_H -+ -+#define Uses_TEvent -+#define Uses_TWindow -+#define Uses_TView -+#include <tvision/tv.h> - - const int cmAsciiTableCmdBase = 910; - const int cmCharFocused = 0; -Index: demo/calc.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/demo/calc.cc,v -retrieving revision 1.1 -retrieving revision 1.5 -diff -u -r1.1 -r1.5 ---- demo/calc.cc 20 Dec 2002 12:06:16 -0000 1.1 -+++ demo/calc.cc 25 Dec 2002 14:10:15 -0000 1.5 -@@ -10,9 +10,8 @@ - * Copyright (c) 1994 by Borland International - * All Rights Reserved. - * -- */ --/* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TRect -@@ -29,14 +28,17 @@ - __link( RDialog ) - __link( RButton ) - -+#include "calc.h" -+ - #include <string.h> - #include <stdlib.h> - #include <ctype.h> --#include <strstream.h> --#include <iomanip.h> - --#include "calc.h" -+#include <sstream> -+#include <iomanip> - -+using std::string; -+using std::ostringstream; - - #define cpCalcPalette "\x13" - -@@ -158,27 +160,25 @@ - - void TCalcDisplay::setDisplay(double r) - { -- int len; -- char str[64]; -- ostrstream displayStr( str, sizeof str ); -+ string str; -+ ostringstream displayStr(str); - - if(r < 0.0) - { - sign = '-'; -- displayStr << -r << ends; -+ displayStr << -r << std::ends; - } - else - { -- displayStr << r << ends; -+ displayStr << r << std::ends; - sign = ' '; - } - -- len = strlen(str) - 1; // Minus one so we can use as an index. -- -- if(len > DISPLAYLEN) -+ int len = str.length(); -+ if (len > DISPLAYLEN) - error(); - else -- strcpy(number, str); -+ strcpy(number, str.c_str()); - } - - -Index: demo/calendar.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/demo/calendar.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- demo/calendar.cc 20 Dec 2002 12:06:16 -0000 1.1 -+++ demo/calendar.cc 25 Dec 2002 14:10:15 -0000 1.3 -@@ -9,9 +9,8 @@ - * Copyright (c) 1994 by Borland International - * All Rights Reserved. - * -- */ --/* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TRect -@@ -26,15 +25,19 @@ - __link( RView ) - __link( RWindow ) - -+#include "calendar.h" -+ - #include <string.h> - #include <stdlib.h> - #include <ctype.h> --#include <strstream.h> --#include <iomanip.h> - #include <time.h> - --#include "calendar.h" -+#include <iomanip> -+#include <sstream> -+#include <string> - -+using std::string; -+using std::ostringstream; - - static char *monthNames[] = { - "", -@@ -131,9 +134,9 @@ - } - - --void TCalendarView::draw() -+void -+TCalendarView::draw() - { -- char str[23]; - char current = (char)(1 - dayOfWeek(1, month, year)); - char days = (char)( daysInMonth[month] + - ((year % 4 == 0 && month == 2) ? 1 : 0) ); -@@ -146,38 +149,40 @@ - - buf.moveChar(0, ' ', color, 22); - -- ostrstream s1( str, sizeof str); -- s1 << setw(9) << monthNames[month] << " " << setw(4) << year -- << " " << (char) 30 << " " << (char) 31 << " " << ends; -+ ostringstream s1; -+ s1 << std::setw(9) << monthNames[month] -+ << " " << std::setw(4) << year -+ << " " << (char) 30 -+ << " " << (char) 31 << -+ " " << std::ends; - -- buf.moveStr(0, str, color); -+ buf.moveStr(0, s1.str().c_str(), color); - writeLine(0, 0, 22, 1, buf); - - buf.moveChar(0, ' ', color, 22); - buf.moveStr(0, "Su Mo Tu We Th Fr Sa", color); - writeLine(0, 1, 22, 1, buf); - -- for(i = 1; i <= 6; i++) -- { -+ for (i = 1; i <= 6; i++) { - buf.moveChar(0, ' ', color, 22); -- for(j = 0; j <= 6; j++) -- { -- if(current < 1 || current > days) -+ for(j = 0; j <= 6; j++) { -+ if (current < 1 || current > days) { - buf.moveStr((short)(j*3), " ", color); -- else -- { -- ostrstream s2( str, sizeof str ); -- s2 << setw(2) << (int) current << ends; -- if(year == curYear && month == curMonth && current == -- (int)curDay) -- buf.moveStr((short)(j*3), str, boldColor); -- else -- buf.moveStr((short)(j*3), str, color); -- } -+ } else { -+ ostringstream s2; -+ s2 << std::setw(2) << (int) current << std::ends; -+ if (year == curYear && -+ month == curMonth && -+ current == (int)curDay) { -+ buf.moveStr((short)(j*3), s2.str().c_str(), boldColor); -+ } else { -+ buf.moveStr((short)(j*3), s2.str().c_str(), color); -+ } -+ } - current++; -- } -+ } - writeLine(0, (short)(i+1), 22, 1, buf); -- } -+ } - } - - -Index: demo/fileview.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/demo/fileview.cc,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- demo/fileview.cc 20 Dec 2002 12:06:16 -0000 1.1 -+++ demo/fileview.cc 27 Dec 2002 23:16:40 -0000 1.4 -@@ -9,9 +9,8 @@ - * Copyright (c) 1994 by Borland International - * All Rights Reserved. - * -- */ --/* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_MsgBox -@@ -26,16 +25,17 @@ - __link(RScroller) - __link(RScrollBar) - -+#include "tvcmds.h" -+#include "fileview.h" -+ - #include <stdio.h> - #include <string.h> - #include <stdlib.h> - #include <ctype.h> - --#include <fstream.h> -- --#include "tvcmds.h" --#include "fileview.h" -+#include <fstream> - -+using std::ifstream; - - const char * const TFileViewer::name = "TFileViewer"; - -@@ -107,10 +107,7 @@ - else - { - char line[maxLineLength+1]; -- while( !lowMemory() && -- !fileToView.eof() && -- fileToView.get( line, sizeof line ) != 0 -- ) -+ while(!fileToView.eof() && fileToView.get( line, sizeof line ) != 0) - { - char c; - fileToView.get(c); // grab trailing newline -Index: demo/gadgets.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/demo/gadgets.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- demo/gadgets.cc 20 Dec 2002 12:06:16 -0000 1.1 -+++ demo/gadgets.cc 25 Dec 2002 14:10:15 -0000 1.3 -@@ -14,9 +14,8 @@ - * Copyright (c) 1994 by Borland International - * All Rights Reserved. - * -- */ --/* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TRect -@@ -24,14 +23,15 @@ - #define Uses_TDrawBuffer - #include <tvision/tv.h> - -+#include "gadgets.h" -+ - #include <string.h> - #include <stdlib.h> - #include <ctype.h> --#include <strstream.h> --#include <iomanip.h> - #include <time.h> - --#include "gadgets.h" -+#include <sstream> -+#include <iomanip> - - //extern "C" unsigned long farcoreleft( void ); - -@@ -84,7 +84,7 @@ - struct farheapinfo heap; - #endif - -- ostrstream totalStr( heapStr, sizeof heapStr); -+ ostringstream totalStr( heapStr, sizeof heapStr); - - //#if defined( __DPMI32__ ) - // switch( _HEAPEMPTY ) -Index: demo/mousedlg.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/demo/mousedlg.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- demo/mousedlg.cc 20 Dec 2002 12:06:16 -0000 1.1 -+++ demo/mousedlg.cc 25 Dec 2002 14:10:15 -0000 1.3 -@@ -11,9 +11,8 @@ - * Copyright (c) 1994 by Borland International - * All Rights Reserved. - * -- */ --/* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TRect -@@ -29,14 +28,11 @@ - #define Uses_TEventQueue - #include <tvision/tv.h> - -+#include "mousedlg.h" -+ - #include <string.h> - #include <stdlib.h> - #include <ctype.h> --#include <strstream.h> --#include <iomanip.h> -- --#include "mousedlg.h" -- - - #define cpMousePalette "\x07\x08" - -Index: demo/puzzle.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/demo/puzzle.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- demo/puzzle.cc 20 Dec 2002 12:06:16 -0000 1.1 -+++ demo/puzzle.cc 25 Dec 2002 14:10:15 -0000 1.3 -@@ -9,9 +9,8 @@ - * Copyright (c) 1994 by Borland International - * All Rights Reserved. - * -- */ --/* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TRect -@@ -26,20 +25,16 @@ - __link( RView ) - __link( RWindow ) - -+#include "puzzle.h" -+ - #include <string.h> - #include <stdio.h> /* SS: for sprintf(...) */ - #include <stdlib.h> - #include <ctype.h> --#include <strstream.h> --#include <iomanip.h> - #include <time.h> - #include <unistd.h> - --#include "puzzle.h" -- -- - #define cpPuzzlePalette "\x06\x07" -- - - // - // TPuzzleView functions & static variables -Index: demo/tvdemo1.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/demo/tvdemo1.cc,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- demo/tvdemo1.cc 20 Dec 2002 12:06:16 -0000 1.1 -+++ demo/tvdemo1.cc 25 Dec 2002 14:10:15 -0000 1.4 -@@ -9,9 +9,8 @@ - * Copyright (c) 1994 by Borland International - * All Rights Reserved. - * -- */ --/* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TView -@@ -40,6 +39,8 @@ - #include <stdio.h> - #include <string.h> - -+using std::ios; -+ - /* SS: changed */ - - //#ifdef __DPMI32__ -@@ -135,7 +136,7 @@ - if ((event.message.command == cmHelp) && ( helpInUse == False)) - { - helpInUse = True; -- helpStrm = new fpstream(HELP_FILENAME, ios::in|ios::bin); -+ helpStrm = new fpstream(HELP_FILENAME, ios::in|ios::binary); - hFile = new THelpFile(*helpStrm); - if (!helpStrm) - { -@@ -219,7 +220,7 @@ - else - { - fclose(fp); -- fpstream *f = new fpstream("TVDEMO.DST", ios::in|ios::bin); -+ fpstream *f = new fpstream("TVDEMO.DST", ios::in|ios::binary); - if( !f ) - messageBox("Could not open desktop file", mfOKButton | mfError); - else -@@ -238,7 +239,7 @@ - - void TVDemo::saveDesktop() - { -- fpstream *f = new fpstream("TVDEMO.DST", ios::out|ios::bin); -+ fpstream *f = new fpstream("TVDEMO.DST", ios::out|ios::binary); - - if( f ) - { -Index: lib/Makefile.am -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/Makefile.am,v -retrieving revision 1.1 -retrieving revision 1.2 -diff -u -r1.1 -r1.2 ---- lib/Makefile.am 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/Makefile.am 27 Dec 2002 23:16:43 -0000 1.2 -@@ -13,7 +13,7 @@ - CLEANFILES = tvision - - pkginclude_HEADERS = \ --app.h buffers.h colorsel.h dialogs.h drawbuf.h editors.h \ -+app.h colorsel.h dialogs.h drawbuf.h editors.h \ - help.h helpbase.h menus.h msgbox.h objects.h outline.h resource.h \ - stddlg.h system.h textview.h tkeys.h tobjstrm.h ttypes.h tv.h \ - tvconfig.h tvobjs.h util.h validate.h views.h -@@ -37,7 +37,7 @@ - TSortedCollection.cc TStaticText.cc TStatusLine.cc TStrListMaker.cc \ - TStringCollection.cc TValidator.cc TView.cc TWindow.cc allnames.cc asm.cc \ - colorsel.cc drivers.cc editstat.cc help.cc helpbase.cc histlist.cc menu.cc \ --misc.cc msgbox.cc new.cc palette.cc sall.cc stddlg.cc system.cc textview.cc \ -+misc.cc msgbox.cc palette.cc sall.cc stddlg.cc system.cc textview.cc \ - tobjstrm.cc tvtext.cc - - libtvision_la_SOURCES = tvision TApplication.cc TBackground.cc TButton.cc \ -@@ -53,5 +53,5 @@ - TSortedCollection.cc TStaticText.cc TStatusLine.cc TStrListMaker.cc \ - TStringCollection.cc TValidator.cc TView.cc TWindow.cc allnames.cc asm.cc \ - colorsel.cc drivers.cc editstat.cc help.cc helpbase.cc histlist.cc menu.cc \ --misc.cc msgbox.cc new.cc palette.cc sall.cc stddlg.cc system.cc textview.cc \ -+misc.cc msgbox.cc palette.cc sall.cc stddlg.cc system.cc textview.cc \ - tobjstrm.cc tvtext.cc -Index: lib/TApplication.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/TApplication.cc,v -retrieving revision 1.1 -retrieving revision 1.2 -diff -u -r1.1 -r1.2 ---- lib/TApplication.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/TApplication.cc 27 Dec 2002 23:16:43 -0000 1.2 -@@ -14,9 +14,6 @@ - #define Uses_TObject - #define Uses_TMouse - #define Uses_TApplication --#ifndef __UNPATCHED --#define Uses_TVMemMgr --#endif - #include <tvision/tv.h> - - void initHistory(); -@@ -41,9 +38,6 @@ - /* SS: changed */ - - TScreen::suspend(); --#ifndef __UNPATCHED -- TVMemMgr::suspend(); // Release discardable memory. --#endif - } - - void TApplication::resume() -Index: lib/TFileEditor.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/TFileEditor.cc,v -retrieving revision 1.1 -retrieving revision 1.5 -diff -u -r1.1 -r1.5 ---- lib/TFileEditor.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/TFileEditor.cc 25 Dec 2002 14:10:17 -0000 1.5 -@@ -7,6 +7,7 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TProgram -@@ -18,12 +19,18 @@ - #define Uses_ipstream - #include <tvision/tv.h> - --#include <fstream.h> -+#include <fstream> -+ - #include <limits.h> - #include <stdio.h> - #include <stdlib.h> - #include <string.h> - -+using std::ifstream; -+using std::ios; -+using std::ofstream; -+using std::streampos; -+ - inline ushort min( ushort u1, ushort u2 ) - { - return u1 < u2 ? u1 : u2; -@@ -89,7 +96,7 @@ - - Boolean TFileEditor::loadFile() - { -- ifstream f( fileName, ios::in | ios::bin ); -+ ifstream f( fileName, ios::in | ios::binary ); - if( !f ) - { - setBufLen( 0 ); -@@ -97,7 +104,7 @@ - } - else - { -- uint fSize = filelength( f.rdbuf()->fd() ); -+ streampos fSize = filelength(f); - if( setBufSize(fSize) == False ) - { - editorDialog( edOutOfMemory ); -@@ -161,7 +168,7 @@ - rename( fileName, backupName ); - } - -- ofstream f( fileName, ios::out | ios::bin ); -+ ofstream f( fileName, ios::out | ios::binary ); - - if( !f ) - { -Index: lib/TFileList.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/TFileList.cc,v -retrieving revision 1.1 -retrieving revision 1.2 -diff -u -r1.1 -r1.2 ---- lib/TFileList.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/TFileList.cc 27 Dec 2002 23:16:43 -0000 1.2 -@@ -9,7 +9,6 @@ - * Modified by Sergio Sigala <sergio@sigala.it> - */ - --#define Uses_TVMemMgr - #define Uses_MsgBox - #define Uses_TFileList - #define Uses_TRect -@@ -130,21 +129,7 @@ - t.ft_year = broken->tm_year - 80; - time = *(long *) &t; - } -- -- void *operator new( size_t ); -- - }; -- --void *DirSearchRec::operator new( size_t sz ) --{ -- void *temp = ::operator new( sz ); -- if( TVMemMgr::safetyPoolExhausted() ) -- { -- delete temp; -- temp = 0; -- } -- return temp; --} - - void TFileList::readDirectory( const char *aWildCard ) - { -Index: lib/TGroup.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/TGroup.cc,v -retrieving revision 1.1 -retrieving revision 1.2 -diff -u -r1.1 -r1.2 ---- lib/TGroup.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/TGroup.cc 27 Dec 2002 23:16:43 -0000 1.2 -@@ -16,7 +16,6 @@ - #define Uses_TEvent - #define Uses_opstream - #define Uses_ipstream --#define Uses_TVMemMgr - #include <tvision/tv.h> - - TView *TheTopView = 0; -Index: lib/TIndicator.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/TIndicator.cc,v -retrieving revision 1.1 -retrieving revision 1.5 -diff -u -r1.1 -r1.5 ---- lib/TIndicator.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/TIndicator.cc 25 Dec 2002 14:10:17 -0000 1.5 -@@ -7,6 +7,7 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TIndicator -@@ -18,7 +19,13 @@ - #include <tvision/tv.h> - - #include <string.h> --#include <strstream.h> -+ -+#include <sstream> -+#include <string> -+ -+using std::ends; -+using std::ostringstream; -+using std::string; - - #define cpIndicator "\x02\x03" - -@@ -32,7 +39,6 @@ - { - uchar color, frame; - TDrawBuffer b; -- char s[15]; - - if( (state & sfDragging) == 0 ) - { -@@ -48,12 +54,14 @@ - b.moveChar( 0, frame, color, size.x ); - if( modified ) - b.putChar( 0, 15 ); -- ostrstream os( s, 15 ); -- -- os << ' ' << (location.y+1) -- << ':' << (location.x+1) << ' ' << ends; - -- b.moveCStr( 8-int(strchr(s, ':')-s), s, color); -+ string s; -+ ostringstream os(s); -+ os << ' ' << (location.y+1) << ':' << (location.x+1) << ' ' << ends; -+ -+ b.moveCStr(8 - int(strchr(s.c_str(), ':') - s.c_str()), -+ s.c_str(), -+ color); - writeBuf(0, 0, size.x, 1, b); - } - -Index: lib/TMemo.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/TMemo.cc,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- lib/TMemo.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/TMemo.cc 25 Dec 2002 14:10:17 -0000 1.4 -@@ -7,6 +7,7 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TKeys -@@ -19,6 +20,8 @@ - - #include <string.h> - -+using std::ios; -+ - #define cpMemo "\x1A\x1B" - - TMemo::TMemo( const TRect& bounds, -@@ -86,7 +89,7 @@ - setBufLen( length ); - } - else -- is.seekg( is.tellg() + length ); -+ is.seekg( length, ios::cur ); - return this; - } - -Index: lib/TProgram.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/TProgram.cc,v -retrieving revision 1.1 -retrieving revision 1.2 -diff -u -r1.1 -r1.2 ---- lib/TProgram.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/TProgram.cc 27 Dec 2002 23:16:43 -0000 1.2 -@@ -22,9 +22,6 @@ - #define Uses_TStatusDef - #define Uses_TStatusItem - #define Uses_TDialog --#ifndef __UNPATCHED --#define Uses_TVMemMgr --#endif - #include <tvision/tv.h> - - // Public variables -@@ -90,9 +87,6 @@ - menuBar = 0; - deskTop = 0; - TGroup::shutDown(); --#ifndef __UNPATCHED -- TVMemMgr::clearSafetyPool(); // Release the safety pool buffer. --#endif - } - - Boolean TProgram::canMoveFocus() -@@ -309,11 +303,6 @@ - return NULL; - } - -- --void TProgram::outOfMemory() --{ --} -- - void TProgram::putEvent( TEvent & event ) - { - pending = event; -@@ -339,12 +328,6 @@ - { - if( p == 0 ) - return 0; -- if( lowMemory() ) -- { -- destroy( p ); -- outOfMemory(); -- return 0; -- } - if( !p->valid( cmValid ) ) - { - destroy( p ); -Index: lib/TResourceFile.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/TResourceFile.cc,v -retrieving revision 1.1 -retrieving revision 1.7 -diff -u -r1.1 -r1.7 ---- lib/TResourceFile.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/TResourceFile.cc 25 Dec 2002 14:10:17 -0000 1.7 -@@ -7,6 +7,7 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TResourceFile -@@ -17,88 +18,82 @@ - #define Uses_TResourceCollection - #include <tvision/tv.h> - -+#include <assert.h> -+ -+#include <ios> -+ -+using std::ios; -+using std::streampos; -+ - /* - * SS: Warning, this file is non-portable. It is not used by any of the - * classes in the library. - */ - const long rStreamMagic = 0x52504246uL; // 'FBPR' - --struct Count_type --{ -- ushort lastCount; -- ushort pageCount; --}; - --struct Info_type --{ -- ushort infoType; -- long infoSize; --}; -- --struct THeader --{ -- ushort signature; -- union -- { -- Count_type count; -- Info_type info; -- }; --}; -+TResourceFile::TResourceFile( fpstream *aStream ) -+ : TObject(), -+ stream(aStream), -+ basePos(stream->tellp()) -+{ -+ struct Count_type { -+ ushort lastCount; -+ ushort pageCount; -+ }; -+ -+ struct Info_type { -+ ushort infoType; -+ long infoSize; -+ }; -+ -+ struct THeader { -+ ushort signature; -+ union { -+ Count_type count; -+ Info_type info; -+ }; -+ }; -+ -+ streampos streamSize = filelength(*stream); -+ THeader header; -+ int found = 0; - -- --TResourceFile::TResourceFile( fpstream *aStream ) : TObject() --{ -- THeader *header; -- int handle; -- int found; - int repeat; -- long streamSize; -- -- stream = aStream; -- basePos = stream->tellp(); -- handle = stream->rdbuf()->fd(); -- streamSize = filelength(handle); -- header = new THeader; -- found = 0; - do { - repeat = 0; - if (basePos <= (streamSize - (long)sizeof(THeader))) - { - stream->seekg(basePos, ios::beg); -- stream->readBytes(header, sizeof(THeader)); -- if (header->signature == 0x5a4d) -+ stream->readBytes(&header, sizeof(THeader)); -+ if (header.signature == 0x5a4d) - { -- basePos += ((header->count.pageCount * 512L) - -- (-header->count.lastCount & 511)); -+ basePos += ((header.count.pageCount * 512L) - -+ (-header.count.lastCount & 511)); - repeat = 1; - } -- else if (header->signature == 0x4246) -+ else if (header.signature == 0x4246) - { -- if (header->info.infoType == 0x5250) -+ if (header.info.infoType == 0x5250) - found = 1; - else - { - basePos += -- header->info.infoSize + 16 - (header->info.infoSize)%16; -+ header.info.infoSize + 16 - (header.info.infoSize)%16; - repeat = 1; - } - } - } -- } while (repeat); -+ } while (repeat); - -- delete header; -- -- if (found) -- { -- stream->seekg(basePos + sizeof(long) * 2, ios::beg); -- *stream >> indexPos; -- stream->seekg(basePos + indexPos, ios::beg); -- *stream >> index; -- } -- else -- { -- indexPos = sizeof(long) * 3; -- index = new TResourceCollection(0, 8); -+ if (found) { -+ stream->seekg(basePos + sizeof(long) * 2, ios::beg); -+ *stream >> indexPos; -+ stream->seekg(basePos + indexPos, ios::beg); -+ *stream >> index; -+ } else { -+ indexPos = sizeof(long) * 3; -+ index = new TResourceCollection(0, 8); - } - } - -@@ -127,16 +120,17 @@ - - void TResourceFile::flush() - { -- long lenRez; -- -- if (modified == True) -- { -+ if (modified == True) { - stream->seekp(basePos + indexPos, ios::beg); - *stream << index; -- lenRez = stream->tellp() - basePos - sizeof(long) * 2; -+#if 1 -+ assert(0); /* XXX */ -+#else -+ long lenRez = stream->tellp() - basePos - sizeof(long) * 2; - stream->seekp(basePos, ios::beg); - *stream << rStreamMagic; - *stream << lenRez; -+#endif - *stream << indexPos; - stream->flush(); - modified = False; -Index: lib/TStrListMaker.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/TStrListMaker.cc,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- lib/TStrListMaker.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/TStrListMaker.cc 25 Dec 2002 14:10:17 -0000 1.4 -@@ -7,6 +7,7 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TStringList -Index: lib/app.h -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/app.h,v -retrieving revision 1.1 -retrieving revision 1.2 -diff -u -r1.1 -r1.2 ---- lib/app.h 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/app.h 27 Dec 2002 23:16:43 -0000 1.2 -@@ -666,18 +666,6 @@ - */ - virtual void initScreen(); - /** -- * Called on out of memory condition. -- * -- * It is called from @ref validView() whenever @ref lowMemory() returns -- * True. -- * -- * This happens when there is few free memory. Of course this should -- * rarely happen. This method may be redefined to tell the user (by -- * calling @ref messageBox() for example) that there is not free memory -- * to end the current task. -- */ -- virtual void outOfMemory(); -- /** - * Sets a pending event. - * - * Puts an event in the pending state, by storing a copy of the `event' -@@ -726,10 +714,6 @@ - * - * First, if `p' is 0 the call returns 0. - * -- * Next, if @ref lowMemory() returns True the view pointed by `p' is -- * released by calling @ref TObject::destroy() followed by -- * @ref outOfMemory() and the function returns 0. -- * - * Last if a call to `p->valid(cmValid)' returns False the view pointed by - * `p' is released and the function returns 0. - * @see TView::valid -@@ -746,7 +730,7 @@ - * - * This method releases all the resources allocated by TProgram. It sets - * pointers @ref statusLine, @ref menuBar and @ref deskTop to 0 and then -- * calls @ref TGroup::shutDown() and @ref TVMemMgr::clearSafetyPool(). -+ * calls @ref TGroup::shutDown(). - */ - virtual void shutDown(); - /** -Index: lib/helpbase.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/helpbase.cc,v -retrieving revision 1.1 -retrieving revision 1.5 -diff -u -r1.1 -r1.5 ---- lib/helpbase.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/helpbase.cc 25 Dec 2002 14:10:17 -0000 1.5 -@@ -7,6 +7,7 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TStreamableClass -@@ -31,6 +32,8 @@ - #include <string.h> - #include <sys/stat.h> - -+using std::streampos; -+ - TCrossRefHandler crossRefHandler = notAssigned; - - // THelpTopic -@@ -549,15 +552,10 @@ - - THelpFile::THelpFile( fpstream& s ) - { -- long magic; -- int handle; -- long size; -+ long magic = 0; - -- magic = 0; -- s.seekg(0); -- handle = s.rdbuf()->fd(); -- size = filelength(handle); - s.seekg(0); -+ streampos size = filelength(s); - if (size > (long)sizeof(magic)) - s >> magic; - if (magic != magicHeader) -@@ -580,24 +578,15 @@ - - THelpFile::~THelpFile(void) - { -- long magic, size; -- int handle; - - if (modified == True) - { - stream->seekp(indexPos); - *stream << index; -+ long magic = magicHeader; - stream->seekp(0); -- magic = magicHeader; -- handle = stream->rdbuf()->fd(); --// --// note: at this time, a bug in filelength leaves the seek pointer at --// the end of file, so we must save and restore the seek pointer --// around the call; this can be removed when filelength is fixed. --// -- streampos sp=stream->tellp(); -- size = filelength(handle) - 8; -- stream->seekp(sp); -+ streampos size = filelength(*stream); -+ size =- 8; - *stream << magic; - *stream << size; - *stream << indexPos; -Index: lib/histlist.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/histlist.cc,v -retrieving revision 1.1 -retrieving revision 1.2 -diff -u -r1.1 -r1.2 ---- lib/histlist.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/histlist.cc 27 Dec 2002 23:16:43 -0000 1.2 -@@ -21,25 +21,11 @@ - - HistRec( uchar nId, const char *nStr ); - -- void *operator new( size_t ); -- void *operator new( size_t, HistRec * ); -- - uchar id; - uchar len; - char str[1]; - - }; -- --void *HistRec::operator new( size_t, HistRec *hr ) --{ -- return hr; --} -- --void *HistRec::operator new( size_t ) --{ -- abort(); -- return 0; --} - - inline HistRec::HistRec( uchar nId, const char *nStr ) : - id( nId ), -Index: lib/misc.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/misc.cc,v -retrieving revision 1.1 -retrieving revision 1.2 -diff -u -r1.1 -r1.2 ---- lib/misc.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/misc.cc 27 Dec 2002 23:16:44 -0000 1.2 -@@ -14,7 +14,6 @@ - #define Uses_TGroup - #define Uses_TEvent - #define Uses_TObject --#define Uses_TVMemMgr - #define Uses_TView - #define Uses_pstream - #include <tvision/tv.h> -@@ -37,11 +36,6 @@ - return event.message.infoPtr; - else - return 0; --} -- --Boolean lowMemory() --{ -- return Boolean(TVMemMgr::safetyPoolExhausted()); - } - - /* from NEWSTR.CPP */ -Index: lib/system.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/system.cc,v -retrieving revision 1.2 -retrieving revision 1.8 -diff -u -r1.2 -r1.8 ---- lib/system.cc 20 Dec 2002 12:19:01 -0000 1.2 -+++ lib/system.cc 25 Dec 2002 14:10:17 -0000 1.8 -@@ -23,11 +23,12 @@ - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+ * -+ * Modified by Sergey Clushin <serg@lamport.ru>, <Clushin@deol.ru> -+ * Modified by Dmitrij Korovkin <tkf@glasnet.ru> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - --/* Modified by Sergey Clushin <serg@lamport.ru>, <Clushin@deol.ru> */ --/* Modified by Dmitrij Korovkin <tkf@glasnet.ru> */ -- - #define Uses_TButton - #define Uses_TColorSelector - #define Uses_TDeskTop -@@ -47,10 +48,11 @@ - #define Uses_TStatusLine - #include <tvision/tv.h> - -+#include <fstream> -+#include <iostream> -+ - #include <ctype.h> - #include <fcntl.h> --#include <fstream.h> --#include <iostream.h> - #include <signal.h> - #include <stdio.h> - #include <stdlib.h> -@@ -62,6 +64,13 @@ - - #include <config.h> /* configuration file */ - -+using std::endl; -+using std::ios; -+using std::istream; -+using std::ofstream; -+using std::streambuf; -+using std::streampos; -+ - #ifdef ENABLE_FBSDM - /* #include <machine/console.h> */ - #define CONS_MOUSECTL _IOWR('c', 10, mouse_info_t) -@@ -2300,36 +2309,24 @@ - } - } - --/* -- * Returns the length of a file. -+/** -+ * Returns the length of the file associated with the stream. - */ -- --long int filelength(int fd) -+streampos -+filelength(istream &s) - { -- struct stat s; -- - /* -- * This should handle any regular file. -+ * First get curent position, then get position after seeking -+ * from begining to the end, finally seek back to original -+ * position. - */ -- if (fstat(fd, &s) == 0 && s.st_size > 0) return s.st_size; -- else -- { -- char buf[1024]; -- int len, size = 0; -+ streampos curpos = s.tellg(); - -- /* -- * This works with special files which are not empty, even if -- * their size is zero, like those in the `/proc' directory. -- */ -- off_t old = lseek(fd, 0, SEEK_CUR); /* save position */ -- lseek(fd, 0, SEEK_SET); /* go to the beginning */ -- while ((len = read(fd, buf, sizeof(buf))) > 0) -- { -- size += len; -- } -- lseek(fd, old, SEEK_SET); /* restore old position */ -- return size; -- } -+ s.seekg(0, ios::end); -+ streampos size = s.tellg(); -+ -+ s.seekg(curpos); -+ return size; - } - - /* -Index: lib/textview.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/textview.cc,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- lib/textview.cc 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/textview.cc 25 Dec 2002 14:10:17 -0000 1.4 -@@ -7,6 +7,7 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TTextDevice -@@ -15,6 +16,9 @@ - #include <tvision/tv.h> - - #include <string.h> -+ -+using std::ostream; -+using std::streamsize; - - TTextDevice::TTextDevice( const TRect& bounds, - TScrollBar *aHScrollBar, -Index: lib/textview.h -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/textview.h,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- lib/textview.h 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/textview.h 25 Dec 2002 14:10:17 -0000 1.3 -@@ -7,6 +7,7 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #if defined( Uses_TTextDevice ) && !defined( __TTextDevice ) -@@ -16,7 +17,7 @@ - * textview.h - */ - --#include <iostream.h> -+#include <iostream> - - class TRect; - class TScrollBar; -@@ -168,14 +169,12 @@ - #if defined( Uses_otstream ) && !defined( __otstream ) - #define __otstream - --class ostream; -- --#include <iostream.h> -+#include <iostream> - - /** - * Undocumented. - */ --class TerminalBuf: public streambuf -+class TerminalBuf: public std::streambuf - { - protected: - /** -@@ -208,7 +207,7 @@ - /** - * Undocumented. - */ --class otstream : public ostream -+class otstream : public std::ostream - { - protected: - /** -Index: lib/tv.h -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/tv.h,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- lib/tv.h 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/tv.h 27 Dec 2002 23:16:44 -0000 1.4 -@@ -1,5 +1,5 @@ --/* -- * tv.h -+/** -+ * @file tv.h - * - * Turbo Vision - Version 2.0 - * -@@ -36,11 +36,9 @@ - - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - --/** \file tv.h -- * tv.h -- */ - - #define _TV_VERSION 0x0200 - -@@ -375,10 +373,6 @@ - #if defined( Uses_TDialog ) - #define Uses_TWindow - #define __INC_DIALOGS_H --#endif -- --#if defined( Uses_TVMemMgr ) --#define __INC_BUFFERS_H - #endif - - #if defined( Uses_TWindow ) -Index: lib/tvobjs.h -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/tvobjs.h,v -retrieving revision 1.1 -retrieving revision 1.2 -diff -u -r1.1 -r1.2 ---- lib/tvobjs.h 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/tvobjs.h 27 Dec 2002 23:16:44 -0000 1.2 -@@ -42,7 +42,7 @@ - * Destroys the object pointed by `o'. - * - * destroy() deletes an object `o' of a type derived from TObject; that -- * is, any object created with operator new(). destroy() terminates the -+ * is, any object created with new. destroy() terminates the - * object, correctly freeing the memory that it occupies. - * - * It calls `o->shutDown()' and after does `delete o'. -Index: lib/util.h -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/lib/util.h,v -retrieving revision 1.1 -retrieving revision 1.5 -diff -u -r1.1 -r1.5 ---- lib/util.h 20 Dec 2002 12:06:20 -0000 1.1 -+++ lib/util.h 27 Dec 2002 23:16:44 -0000 1.5 -@@ -1,5 +1,5 @@ - /* -- * util.h -+ * @file util.h - * - * Turbo Vision - Version 2.0 - * -@@ -7,14 +7,13 @@ - * All Rights Reserved. - * - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #if !defined( __UTIL_H ) - #define __UTIL_H - --/** \file util.h -- * util.h -- */ -+#include <streambuf> - - /** - * Undocumented. -@@ -166,13 +165,6 @@ - */ - void *message( TView *receiver, ushort what, ushort command, void *infoPtr ); - --/** \fn lowMemory() -- * Calls TVMemMgr::safetyPoolExhausted() to check the state of the safety -- * pool. -- * @see TVMemMgr::safetyPoolExhausted -- */ --Boolean lowMemory(); -- - /** \fn newStr( const char *s ) - * Dynamic string creation. If `s' is a null pointer, newStr() returns a 0 - * pointer; otherwise, strlen(s)+ 1 bytes are allocated, containing a copy of -@@ -209,9 +201,7 @@ - * Undocumented. - */ - void expandPath(const char *path, char *dir, char *file); --/** -- * Undocumented. -- */ --long int filelength(int fd); -+ -+std::streampos filelength(std::istream &s); - - #endif // __UTIL_H -Index: tutorial/background.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/background.cc,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- tutorial/background.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/background.cc 25 Dec 2002 14:10:19 -0000 1.4 -@@ -2,6 +2,7 @@ - * TVision example: how to change the background pattern - * - * Written by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TApplication -@@ -20,7 +21,7 @@ - { - } - --void main() -+int main() - { - TDeskTop::defaultBkgrnd = '?'; - Demo a; -Index: tutorial/load.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/load.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/load.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/load.cc 25 Dec 2002 14:10:19 -0000 1.3 -@@ -2,6 +2,7 @@ - * TVision example: how to create custom views - * - * Written by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TApplication -@@ -18,10 +19,13 @@ - - #include <tvision/tv.h> - --#include <fstream.h> - #include <stdio.h> - #include <stdlib.h> - #include <time.h> -+ -+#include <fstream> -+ -+using std::ifstream; - - enum - { -Index: tutorial/nomenus.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/nomenus.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/nomenus.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/nomenus.cc 25 Dec 2002 14:10:19 -0000 1.3 -@@ -2,6 +2,7 @@ - * TVision example: how to handle dialogs without menu bar and status line - * - * Written by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_MsgBox -@@ -80,7 +81,7 @@ - { - public: - TMyApp(); -- ushort doWork(); -+ void doWork(); - ushort newDialog(DialogData &data); - static TDeskTop *initDeskTop(TRect r); - }; -@@ -163,7 +164,7 @@ - - //open dialogs here - --ushort TMyApp::doWork() -+void TMyApp::doWork() - { - messageBox("\003Welcome to the cheese ordering system", - mfInformation + mfOKButton); -Index: tutorial/splash.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/splash.cc,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- tutorial/splash.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/splash.cc 25 Dec 2002 14:10:19 -0000 1.4 -@@ -2,6 +2,7 @@ - * TVision example: how to show a dialog box at startup - * - * Written by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TApplication -@@ -84,7 +85,7 @@ - executeDialog(aboutBox); - } - --void main() -+int main() - { - Demo a; - a.run(); -Index: tutorial/tvedit.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvedit.cc,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- tutorial/tvedit.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvedit.cc 25 Dec 2002 14:10:19 -0000 1.4 -@@ -2,6 +2,7 @@ - * TVision example: a simple text editor - * - * Written by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_MsgBox -@@ -27,13 +28,13 @@ - #define Uses_TStatusItem - #define Uses_TStatusLine - #define Uses_TSubMenu -- --#include <fstream.h> --#include <signal.h> --#include <stdarg.h> --#include <stdio.h> - #include <tvision/tv.h> - -+#include <assert.h> -+extern "C" { -+ #include <signal.h> -+} -+ - //new command codes; standard commands are defined in views.h - - enum -@@ -235,6 +235,8 @@ - va_end(ap); - return doReplacePrompt(*cursor); - } -+ assert(0); /* what should the return value be if we fall through? */ -+ return 0; - } - - //executes a dialog in modal state; similar to TProgram::execute(), but this -Index: tutorial/tvguid04.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid04.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid04.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid04.cc 25 Dec 2002 14:10:19 -0000 1.3 -@@ -7,10 +7,9 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - --#include <stdlib.h> // for random() -- - #define Uses_TEvent - #define Uses_TApplication - #define Uses_TKeys -@@ -24,6 +23,8 @@ - #define Uses_TDeskTop - #define Uses_TWindow - #include <tvision/tv.h> -+ -+#include <stdlib.h> // for random() - - const int cmMyFileOpen = 200; // assign new command values - const int cmMyNewWin = 201; -Index: tutorial/tvguid05.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid05.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid05.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid05.cc 25 Dec 2002 14:10:19 -0000 1.3 -@@ -7,10 +7,9 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - --#include <stdlib.h> // for random() -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TApplication -@@ -26,6 +25,8 @@ - #define Uses_TView - #define Uses_TWindow - #include <tvision/tv.h> -+ -+#include <stdlib.h> // for random() - - const int cmMyFileOpen = 200; // assign new command values - const int cmMyNewWin = 201; -Index: tutorial/tvguid06.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid06.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid06.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid06.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,17 +7,11 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - /****** imperfect draw method--see tvguid07 for improvement *****/ - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -34,6 +28,18 @@ - #define Uses_TView - #define Uses_TWindow - #include <tvision/tv.h> -+ -+#include <iostream> -+#include <fstream> -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::ifstream; -+using std::cout; -+using std::endl; - - const int cmMyFileOpen = 200; // assign new command values - const int cmMyNewWin = 201; -Index: tutorial/tvguid07.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid07.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid07.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid07.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,17 +7,11 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - // same as tvguid06 except for improved draw method - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -34,6 +28,18 @@ - #define Uses_TView - #define Uses_TWindow - #include <tvision/tv.h> -+ -+#include <iostream> -+#include <fstream> // for ifstream -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::cout; -+using std::endl; -+using std::ifstream; - - const int cmMyFileOpen = 200; // assign new command values - const int cmMyNewWin = 201; -Index: tutorial/tvguid08.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid08.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid08.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid08.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,18 +7,12 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - // same as tvguid07 except for scrolling interior - // add TDemoWindow::makeInterior - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -37,6 +31,18 @@ - #define Uses_TScroller - #define Uses_TScrollBar - #include <tvision/tv.h> -+ -+#include <iostream> -+#include <fstream> -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::ifstream; -+using std::cout; -+using std::endl; - - const int cmMyFileOpen = 200; // assign new command values - const int cmMyNewWin = 201; -Index: tutorial/tvguid09.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid09.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid09.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid09.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,18 +7,12 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - // same as tvguid08 except for multiple panes - // modify TDemoWindow::makeInterior and constructor - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -38,6 +32,18 @@ - #define Uses_TScroller - #define Uses_TScrollBar - #include <tvision/tv.h> -+ -+#include <iostream> -+#include <fstream> -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::ifstream; -+using std::cout; -+using std::endl; - - const int cmMyFileOpen = 200; // assign new command values - const int cmMyNewWin = 201; -Index: tutorial/tvguid10.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid10.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid10.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid10.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,18 +7,12 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - // same as tvguid09 except for better handling of resizing - // add TDemoWindow::sizeLimits - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -38,6 +32,18 @@ - #define Uses_TScroller - #define Uses_TScrollBar - #include <tvision/tv.h> -+ -+#include <iostream> -+#include <fstream> -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::cout; -+using std::endl; -+using std::ifstream; - - const int cmMyFileOpen = 200; // assign new command values - const int cmMyNewWin = 201; -Index: tutorial/tvguid11.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid11.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid11.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid11.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,18 +7,12 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - // same as tvguid10 except for added dialog box - // modify TMyApp - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -38,6 +32,18 @@ - #define Uses_TScrollBar - #define Uses_TDialog - #include <tvision/tv.h> -+ -+#include <iostream> -+#include <fstream> -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::cout; -+using std::endl; -+using std::ifstream; - - // note the extra #define above - -Index: tutorial/tvguid12.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid12.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid12.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid12.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,18 +7,12 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - // same as tvguid11 except for making the dialog modal - // modify TMyApp::newDialog - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -38,6 +32,18 @@ - #define Uses_TScrollBar - #define Uses_TDialog - #include <tvision/tv.h> -+ -+#include <iostream> -+#include <fstream> -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::cout; -+using std::endl; -+using std::ifstream; - - const int cmMyFileOpen = 200; // assign new command values - const int cmMyNewWin = 201; -Index: tutorial/tvguid13.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid13.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid13.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid13.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,18 +7,12 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - // same as tvguid12 except for extra buttons in dialog - // modify TMyApp::newDialog - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -39,6 +33,18 @@ - #define Uses_TDialog - #define Uses_TButton - #include <tvision/tv.h> -+ -+#include <iostream> -+#include <fstream> -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::cout; -+using std::endl; -+using std::ifstream; - - // note the extra #define above - -Index: tutorial/tvguid14.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid14.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid14.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid14.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,18 +7,12 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - // same as tvguid13 except for extra checkboxes, radiobuttons, and labels - // modify TMyApp::newDialog - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -43,6 +37,18 @@ - #define Uses_TRadioButtons - #define Uses_TLabel - #include <tvision/tv.h> -+ -+#include <iostream> -+#include <fstream> -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::cout; -+using std::endl; -+using std::ifstream; - - // note the extra #defines above - -Index: tutorial/tvguid15.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid15.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvguid15.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid15.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,18 +7,12 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - // same as tvguid14 except for extra input line in dialog - // modify TMyApp::newDialog - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -45,6 +39,17 @@ - #define Uses_TLabel - #define Uses_TInputLine - #include <tvision/tv.h> -+ -+#include <fstream> // for ifstream -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::cout; -+using std::endl; -+using std::ifstream; - - // note the extra #define above - -Index: tutorial/tvguid16.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvguid16.cc,v -retrieving revision 1.1 -retrieving revision 1.4 -diff -u -r1.1 -r1.4 ---- tutorial/tvguid16.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvguid16.cc 25 Dec 2002 14:10:20 -0000 1.4 -@@ -7,18 +7,12 @@ - /*---------------------------------------------------------*/ - /* - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - // same as tvguid15 except for saving and restoring dialog contents - // modify TMyApp::newDialog - --#include <stdlib.h> // for exit(), random() --#include <iostream.h> --#include <fstream.h> // for ifstream --#include <stdio.h> // for puts() etc --#include <string.h> // for strlen etc --#include <ctype.h> -- - #define Uses_TEventQueue - #define Uses_TEvent - #define Uses_TProgram -@@ -45,6 +39,17 @@ - #define Uses_TLabel - #define Uses_TInputLine - #include <tvision/tv.h> -+ -+#include <fstream> // for ifstream -+ -+#include <stdlib.h> // for exit(), random() -+#include <stdio.h> // for puts() etc -+#include <string.h> // for strlen etc -+#include <ctype.h> -+ -+using std::cout; -+using std::endl; -+using std::ifstream; - - const int cmMyFileOpen = 200; // assign new command values - const int cmMyNewWin = 201; -Index: tutorial/tvlife.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/tvlife.cc,v -retrieving revision 1.1 -retrieving revision 1.3 -diff -u -r1.1 -r1.3 ---- tutorial/tvlife.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/tvlife.cc 25 Dec 2002 14:10:20 -0000 1.3 -@@ -7,6 +7,8 @@ - * Clicking with the left button inside the life window will cause a dot to - * appear at the cursor location. Clicking with the right mouse button will - * remove the dot. This allows the user to create his/her own patterns. -+ * -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TApplication -@@ -22,9 +24,9 @@ - #define Uses_TStatusLine - #define Uses_TSubMenu - #define Uses_TWindow -+#include <tvision/tv.h> - - #include <stdlib.h> --#include <tvision/tv.h> - - enum - { -@@ -463,8 +465,8 @@ - - #define NPATS (sizeof patterns / sizeof patterns[0]) - --TLifeInterior::TLifeInterior(TRect& bounds): TView(bounds), board(0), -- running(0) -+TLifeInterior::TLifeInterior(TRect& bounds) -+ : TView(bounds), running(0), board(NULL) - { - eventMask = evMouseDown | evKeyDown | evCommand | evBroadcast; - growMode = gfGrowHiX | gfGrowHiY; -@@ -528,16 +530,17 @@ - - #if 1 - int i = size.x * size.y; -- ushort buf[size.x * size.y]; -+ ushort *buf = new ushort[i]; - ushort *to = buf; - - while (i-- > 0) - { -- if (*from++ != 0) *to = (color << 8) | '*'; -- else *to = (color << 8) | ' '; -+ *to = (*from++ != 0) ? '*' : ' '; -+ *to |= (color << 8); - to++; - } - writeBuf(0, 0, size.x, size.y, buf); -+ delete[] buf; - #else - TDrawBuffer b; - b.moveChar(0, ' ', color, size.x); -@@ -806,7 +809,7 @@ - wc += cmRandom; - wc += cmStartStop; - wc += cmTile; -- for (int i = 0; i < NPATS; i++) //scan pattern commands -+ for (uint i = 0; i < NPATS; i++) //scan pattern commands - { - wc += cmPat01 + i; //add pattern commands - } -Index: tutorial/validator.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tutorial/validator.cc,v -retrieving revision 1.1 -retrieving revision 1.5 -diff -u -r1.1 -r1.5 ---- tutorial/validator.cc 20 Dec 2002 12:06:23 -0000 1.1 -+++ tutorial/validator.cc 25 Dec 2002 14:10:21 -0000 1.5 -@@ -2,6 +2,7 @@ - * TVision example: how to use range validators in input lines - * - * Written by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #define Uses_TApplication -@@ -82,7 +83,6 @@ - TWindowInit( &TDialog::initFrame ) - { - TInputLine *line; -- TScrollBar *bar; - TView *obj; - - options |= ofCentered; -@@ -130,7 +130,7 @@ - selectNext(False); - } - --void main() -+int main() - { - Demo a; - a.run(); -Index: tvhc/tvhc.cc -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tvhc/tvhc.cc,v -retrieving revision 1.1 -retrieving revision 1.5 -diff -u -r1.1 -r1.5 ---- tvhc/tvhc.cc 20 Dec 2002 12:06:25 -0000 1.1 -+++ tvhc/tvhc.cc 25 Dec 2002 14:10:22 -0000 1.5 -@@ -9,6 +9,7 @@ - /* - * Modified by Sergey Clushin <serg@lamport.ru>, <Clushin@deol.ru> - * Modified by Sergio Sigala <sergio@sigala.it> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - /*===== TVHC ============================================================*/ -@@ -88,26 +89,51 @@ - #include <tv.h> - - #include "tvhc.h" -+ - #include <string.h> - #include <limits.h> - #include <unistd.h> - #include <ctype.h> - #include <stdlib.h> --#include <fstream.h> --#include <strstream.h> - #include <errno.h> - -+#include <fstream> -+#include <sstream> -+#include <string> -+ -+using std::cerr; -+using std::cin; -+using std::cout; -+using std::ends; -+using std::fstream; -+using std::ios; -+using std::ostringstream; -+using std::string; -+ -+static const int MAXSTRSIZE=256; -+static const char commandChar[] = "."; -+static const int bufferSize = 4096; -+ -+typedef enum State { undefined, wrapping, notWrapping }; -+ -+static char *helpName; -+static uchar buffer[bufferSize]; -+static int ofs; -+static TRefTable *refTable = 0; -+static TCrossRefNode *xRefs; -+static char line[MAXSTRSIZE] = ""; -+static Boolean lineInBuffer = False; -+static int lineCount = 0; -+ - //======================= File Management ===============================// - --TProtectedStream::TProtectedStream( char *aFileName, ushort aMode ) : -+TProtectedStream::TProtectedStream( char *aFileName, ios::openmode aMode) : - fstream( aFileName, aMode ) - { - strcpy(fileName, aFileName); - mode = aMode; - } - --void error(char *text); -- - //----- replaceExt(fileName, nExt, force) -------------------------------// - // Replace the extension of the given file with the given extension. // - // If an extension already exists Force indicates if it should be // -@@ -121,8 +147,8 @@ - char name[MAXFILE]; - char ext[MAXEXT]; - char drive[MAXDRIVE]; -- char buffer[MAXPATH]; -- ostrstream os(buffer, MAXPATH); -+ string buffer; -+ ostringstream os(buffer); - - fnsplit(fileName, drive, dir, name, ext); - if (force || (strlen(ext) == 0)) -@@ -139,12 +165,10 @@ - // Returns true if the file exists false otherwise. / - //-----------------------------------------------------------------------/ - --Boolean fExists(char *fileName) -+static bool -+fExists(const string &fileName) - { -- if (access(fileName, R_OK) != 0) -- return(False); -- else -- return(True); -+ return (access(fileName.c_str(), R_OK) == 0) ? true : false; - } - - //======================== Line Management ==============================// -@@ -194,7 +218,8 @@ - // Used by Error and Warning to print the message. // - //-----------------------------------------------------------------------// - --void prntMsg( char *pref, char *text ) -+void -+prntMsg(const string &pref, char *text) - { - if (lineCount > 0) - cout << pref << ": " << helpName << "(" -@@ -208,7 +233,8 @@ - // Used to indicate an error. Terminates the program // - //-----------------------------------------------------------------------// - --void error( char *text ) -+void -+error(char *text) - { - prntMsg("Error", text); - exit(1); -@@ -852,7 +878,7 @@ - void doWriteSymbol(void *p, void *p1) - { - int numBlanks, i; -- ostrstream os(line, MAXSTRSIZE); -+ ostringstream os(line); - - TProtectedStream *symbFile = (TProtectedStream *)p1; - if (((TReference *)p)->resolved ) -@@ -868,7 +894,7 @@ - { - os << "Unresolved forward reference \"" - << ((TReference *)p)->topic << "\"" << ends; -- warning(os.str()); -+ warning(const_cast<char *>(os.str().c_str())); - } - } - -@@ -910,25 +936,25 @@ - // it's ok to overwrite it. // - //----------------------------------------------------------------------// - --void checkOverwrite( char *fName ) -+static void -+checkOverwrite(const string &fName) - { -- if (fExists(fName)) -- { -+ if (fExists(fName)) { - cerr << "File already exists: " << fName << ". Overwrite? (y/n) "; -- char ch = ({ char s[MAXSTRSIZE]; cin >> s; s[0]; }); -- if( toupper(ch) != 'Y' ) -+ -+ char ch; -+ cin >> ch; -+ if (toupper(ch) != 'Y') { - exit(1); -- } -+ } -+ } - } - - //========================== Program Block ==========================// - --int main(int argc, char **argv) -+int -+main(int argc, char **argv) - { -- char* textName; -- char* symbName; -- fpstream* helpStrm; -- - // Banner messages - char initialText[] = "Help Compiler Version 1.0 Copyright (c) 1991" - " Borland International.\n"; -@@ -949,25 +975,25 @@ - } - - // Calculate file names -- textName = argv[1]; -+ char *textName = argv[1]; - if (!fExists(textName)) - { - strcpy(bufStr,"File "); -- strcat(bufStr,textName); -- strcat(bufStr," not found."); -+ strcat(bufStr, textName); -+ strcat(bufStr, " not found."); - error(bufStr); - } - - helpName = argv[2]; -- checkOverwrite( helpName ); -+ checkOverwrite(helpName); - -- symbName = argv[3]; -- checkOverwrite( symbName ); -+ char *symbName = argv[3]; -+ checkOverwrite(symbName); - - TProtectedStream textStrm(textName, ios::in); - TProtectedStream symbStrm(symbName, ios::out | ios::trunc); - -- helpStrm = new fpstream(helpName, ios::out | ios::trunc); -- processText(textStrm, *helpStrm, symbStrm); -+ fpstream helpStrm(helpName, ios::out | ios::trunc); -+ processText(textStrm, helpStrm, symbStrm); - return 0; - } -Index: tvhc/tvhc.h -=================================================================== -RCS file: /usr/home/cvs/repository/libh/lib/tvision/work/tvision-0.8/tvhc/tvhc.h,v -retrieving revision 1.1 -retrieving revision 1.5 -diff -u -r1.1 -r1.5 ---- tvhc/tvhc.h 20 Dec 2002 12:06:25 -0000 1.1 -+++ tvhc/tvhc.h 25 Dec 2002 14:10:22 -0000 1.5 -@@ -8,6 +8,7 @@ - - /* - * Modified by Sergey Clushin <serg@lamport.ru>, <Clushin@deol.ru> -+ * Modified by Max Okumoto <okumoto@ucsd.edu> - */ - - #if !defined( __TVHC_H ) -@@ -21,25 +22,20 @@ - - #include "helpbase.h" - -+#include <fstream> - - const int MAXSIZE = 80; --const int MAXSTRSIZE=256; --const char commandChar[] = "."; --const int bufferSize = 4096; - --typedef enum State { undefined, wrapping, notWrapping }; -- --class TProtectedStream : public fstream -+class TProtectedStream : public std::fstream - { - - public: -- -- TProtectedStream( char *aFileName, ushort aMode ); -+ TProtectedStream( char *aFileName, std::ios::openmode aMode ); - - private: - - char fileName[MAXSIZE]; -- ushort mode; -+ std::ios::openmode mode; - - }; - -@@ -113,14 +109,5 @@ - TTopicDefinition *next; - - }; -- --char* helpName; --uchar buffer[bufferSize]; --int ofs; --TRefTable *refTable = 0; --TCrossRefNode *xRefs; --char line[MAXSTRSIZE] = ""; --Boolean lineInBuffer = False; --int lineCount = 0; - - #endif // __TVHC_H diff --git a/devel/tvision/files/patch-streambyteorder b/devel/tvision/files/patch-streambyteorder deleted file mode 100644 index 3cd8284f6a89..000000000000 --- a/devel/tvision/files/patch-streambyteorder +++ /dev/null @@ -1,41 +0,0 @@ -ntohs() won't work, because it converts from bigendian to native -byteorder, and the format used in TVision streams is littleendian. -Conversion must be done explicitly, by calling readByte() several -times, in consecutive statements ! - - -diff -ur -orig/lib/tobjstrm.cc lib/tobjstrm.cc ---- -orig/lib/tobjstrm.cc Tue Sep 7 17:31:19 2004 -+++ lib/tobjstrm.cc Tue Sep 7 17:34:15 2004 -@@ -295,11 +295,9 @@ - ipstream::readWord() - { - /* SS: words are stored in little endian format (LSB first) */ -- ushort val; -- -- read((char *)&val, 2); -- val = ntohs(val); -- return val; -+ ushort ret = readByte(); -+ ret = ret | (readByte() << 8); -+ return ret; - } - - /** -@@ -309,11 +307,11 @@ - ipstream::readLong() - { - /* SS: ints are stored in little endian format (LSB first) */ -- ulong val; -- -- read((char *)&val, 4); -- val = ntohl(val); -- return val; -+ ulong ret = readByte(); -+ ret = ret | (readByte() << 8); -+ ret = ret | (readByte() << 16); -+ ret = ret | (readByte() << 24); -+ return ret; - } - - /** diff --git a/devel/tvision/files/patch-tfiledialog b/devel/tvision/files/patch-tfiledialog deleted file mode 100644 index 524045db430b..000000000000 --- a/devel/tvision/files/patch-tfiledialog +++ /dev/null @@ -1,43 +0,0 @@ -Un*x filenames can easily contain spaces ... Don't trim the filename. - -diff -ur tvision-0.8-orig/lib/TFileDialog.cc lib/TFileDialog.cc ---- tvision-0.8-orig/lib/TFileDialog.cc Thu Jul 26 09:59:20 2001 -+++ lib/TFileDialog.cc Wed Sep 8 14:14:15 2004 -@@ -162,6 +162,7 @@ - - /* 'src' is cast to unsigned char * so that isspace sign extends it - correctly. */ -+/* Function defined but not used - static void trim( char *dest, const char *src ) - { - while( *src != EOS && isspace( * (const unsigned char *) src ) ) -@@ -170,11 +171,13 @@ - *dest++ = *src++; - *dest = EOS; - } -+*/ - - void TFileDialog::getFileName( char *s ) - { - /* SS: changed */ - -+#if 0 - char buf[PATH_MAX]; - - trim( buf, fileName->data ); -@@ -185,6 +188,15 @@ - } - fexpand( buf ); - strcpy( s, buf ); -+#else -+ strcpy( s, fileName->data ); -+ if( relativePath( s ) == True ) -+ { -+ strcpy( s, directory ); -+ strcat( s, fileName->data ); -+ } -+ fexpand( s ); -+#endif - } - - void TFileDialog::handleEvent(TEvent& event) diff --git a/devel/tvision/files/patch-uchar b/devel/tvision/files/patch-uchar deleted file mode 100644 index 64cbc8a26e7f..000000000000 --- a/devel/tvision/files/patch-uchar +++ /dev/null @@ -1,161 +0,0 @@ -Avoid possible problems with signed/unsigned char comparisons. And -functions like toupper must be called with an unsigned char. - - -diff -ur tvision-0.8-orig/lib/TButton.cc lib/TButton.cc ---- tvision-0.8-orig/lib/TButton.cc Thu Jul 26 09:59:19 2001 -+++ lib/TButton.cc Wed Jul 28 20:44:03 2004 -@@ -202,7 +202,7 @@ - if( event.keyDown.keyCode == getAltCode(c) || - ( owner->phase == phPostProcess && - c != 0 && -- toupper(event.keyDown.charScan.charCode) == c -+ toupper(event.keyDown.charScan.charCode) == (uchar)c - ) || - ( (state & sfFocused) != 0 && - event.keyDown.charScan.charCode == ' ' -diff -ur tvision-0.8-orig/lib/TCluster.cc lib/TCluster.cc ---- tvision-0.8-orig/lib/TCluster.cc Thu Jul 26 09:59:19 2001 -+++ lib/TCluster.cc Wed Jul 28 20:44:16 2004 -@@ -271,7 +271,7 @@ - (state & sfFocused) != 0 - ) && - c != 0 && -- toupper(event.keyDown.charScan.charCode) == c -+ toupper(event.keyDown.charScan.charCode) == (uchar)c - ) - ) - { -diff -ur tvision-0.8-orig/lib/TFileList.cc lib/TFileList.cc ---- tvision-0.8-orig/lib/TFileList.cc Wed Jul 28 18:52:17 2004 -+++ lib/TFileList.cc Wed Jul 28 20:45:21 2004 -@@ -80,7 +80,7 @@ - - /* SS: changed */ - -- for (char *p = sR.name; *p != '\0'; p++) *p = toupper(*p); -+ for (unsigned char *p = (unsigned char *)sR.name; *p != '\0'; p++) *p = toupper(*p); - return &sR; - } - -diff -ur tvision-0.8-orig/lib/TInputLine.cc lib/TInputLine.cc ---- tvision-0.8-orig/lib/TInputLine.cc Thu Jul 26 09:59:20 2001 -+++ lib/TInputLine.cc Wed Jul 28 20:45:56 2004 -@@ -29,7 +29,7 @@ - char *p; - - if( (p = strchr( (char *) s, '~' )) != 0 ) -- return toupper(p[1]); -+ return toupper((uchar)(p[1])); - else - return 0; - } -diff -ur tvision-0.8-orig/lib/TLabel.cc lib/TLabel.cc ---- tvision-0.8-orig/lib/TLabel.cc Thu Jul 26 09:59:20 2001 -+++ lib/TLabel.cc Wed Jul 28 20:46:18 2004 -@@ -86,7 +86,7 @@ - char c = hotKey( text ); - if( getAltCode(c) == event.keyDown.keyCode || - ( c != 0 && owner->phase == TGroup::phPostProcess && -- toupper(event.keyDown.charScan.charCode) == c ) -+ toupper(event.keyDown.charScan.charCode) == (uchar)c ) - ) - focusLink(event); - } -diff -ur tvision-0.8-orig/lib/TMenuView.cc lib/TMenuView.cc ---- tvision-0.8-orig/lib/TMenuView.cc Wed Jul 28 18:52:17 2004 -+++ lib/TMenuView.cc Wed Jul 28 20:47:15 2004 -@@ -339,14 +339,14 @@ - - TMenuItem *TMenuView::findItem( char ch ) - { -- ch = toupper(ch); -+ ch = toupper((uchar)ch); - TMenuItem *p = menu->items; - while( p != 0 ) - { - if( p->name != 0 && !p->disabled ) - { - char *loc = strchr( (char *) p->name, '~' ); -- if( loc != 0 && (uchar)ch == toupper( loc[1] ) ) -+ if( loc != 0 && (uchar)ch == toupper( (uchar)(loc[1]) ) ) - return p; - } - p = p->next; -diff -ur tvision-0.8-orig/lib/TValidator.cc lib/TValidator.cc ---- tvision-0.8-orig/lib/TValidator.cc Thu Jul 26 09:59:22 2001 -+++ lib/TValidator.cc Wed Jul 28 20:49:31 2004 -@@ -388,10 +388,10 @@ - if (! isLetter(ch)) - return prError; - else -- consume(toupper(ch), input); -+ consume(toupper((uchar)ch), input); - break; - case '!': -- consume(toupper(ch), input); -+ consume(toupper((uchar)ch), input); - break; - case '@': - consume(ch, input); -@@ -427,7 +427,7 @@ - - if (pic[index] == ';') - index++; -- if (toupper(pic[index]) != toupper(ch)) -+ if (toupper((uchar)(pic[index])) != toupper((uchar)ch)) - #ifndef __UNPATCHED - if (ch != ' ') - return rScan; -diff -ur tvision-0.8-orig/lib/asm.cc lib/asm.cc ---- tvision-0.8-orig/lib/asm.cc Wed Jul 28 18:52:18 2004 -+++ lib/asm.cc Wed Jul 28 20:51:59 2004 -@@ -137,8 +137,8 @@ - long patternHash = 0; - long testHash = 0; - -- register const char* testP= (const char*)block; -- register const char* patP = str; -+ register const unsigned char* testP= (const unsigned char*)block; -+ register const unsigned char* patP = (const unsigned char*)str; - register long x = 1; - int i = patternLength-1; - while(i--) x = (x<<5)%q; -@@ -148,13 +148,13 @@ - testHash = ( (testHash <<5) + toupper(*testP++) ) % q; - } - -- testP = (const char*)block; -- const char* end = testP + testLength - patternLength; -+ testP = (const unsigned char*)block; -+ const unsigned char* end = testP + testLength - patternLength; - - while (1) { - - if(testHash == patternHash) -- return testP-(const char*)block; -+ return testP-(const unsigned char*)block; - - if (testP >= end) break; - -diff -ur tvision-0.8-orig/lib/tvtext.cc lib/tvtext.cc ---- tvision-0.8-orig/lib/tvtext.cc Thu Jul 26 09:59:22 2001 -+++ lib/tvtext.cc Wed Jul 28 20:40:13 2004 -@@ -64,7 +64,7 @@ - return '\xF0'; // special case to handle alt-Space - - else if( tmp >= 0x10 && tmp <= 0x32 ) -- return altCodes1[tmp-0x10]; // alt-letter -+ return altCodes1[tmp - 0x10]; // alt-letter - - else if( tmp >= 0x78 && tmp <= 0x83 ) - return altCodes2[tmp - 0x78]; // alt-number -@@ -78,7 +78,7 @@ - if( c == 0 ) - return 0; - -- c = toupper(c); -+ c = toupper((unsigned char) c); - - /* SS: this makes g++ happy */ - diff --git a/devel/tvision/pkg-descr b/devel/tvision/pkg-descr deleted file mode 100644 index 7d2ec01ebef7..000000000000 --- a/devel/tvision/pkg-descr +++ /dev/null @@ -1,19 +0,0 @@ -Turbo Vision for UNIX - -Turbo Vision (or TV, for short) is a library that provides an application -framework for C++ programmers. With TV, you can write beautiful -object-oriented character-mode user interfaces in very a short time. - -TV is available in C++ and Pascal and is a product of Borland International. -It was developed to run on MS-DOS systems, but today it is available for many -other platforms (ported by independent programmers). - -This port is based on the Borland 2.0 version with fixes. - -Borland has released the source code to the public some time ago (take a look -at the COPYRIGHT file in the source package for more information). - -WWW: http://www.sigala.it/sergio/tvision/ - -Sandro Sigala -ssigala@globalnet.it diff --git a/devel/tvision/pkg-plist b/devel/tvision/pkg-plist deleted file mode 100644 index 3926fefbce5a..000000000000 --- a/devel/tvision/pkg-plist +++ /dev/null @@ -1,30 +0,0 @@ -include/tvision/app.h -include/tvision/colorsel.h -include/tvision/dialogs.h -include/tvision/drawbuf.h -include/tvision/editors.h -include/tvision/help.h -include/tvision/helpbase.h -include/tvision/menus.h -include/tvision/msgbox.h -include/tvision/myendian.h -include/tvision/objects.h -include/tvision/outline.h -include/tvision/resource.h -include/tvision/stddlg.h -include/tvision/system.h -include/tvision/textview.h -include/tvision/tkeys.h -include/tvision/tobjstrm.h -include/tvision/ttypes.h -include/tvision/tv.h -include/tvision/tvconfig.h -include/tvision/tvobjs.h -include/tvision/util.h -include/tvision/validate.h -include/tvision/views.h -lib/libtvision.a -lib/libtvision.la -lib/libtvision.so -lib/libtvision.so.0 -@dirrm include/tvision |