home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-01-07 | 65.5 KB | 2,268 lines |
- Newsgroups: comp.sources.bugs
- Path: sparky!uunet!zaphod.mps.ohio-state.edu!usc!ucla-cs!lanai.cs.ucla.edu!william
- From: william@lanai.cs.ucla.edu (William Cheng)
- Subject: Tgif-2.12-patch16 (16th patch for tgif-2.12), Part 01/01
- Message-ID: <1993Jan7.062750.26736@cs.ucla.edu>
- Followup-To: william@cs.ucla.edu
- Keywords: draw, postscript, latex, hierarchical, x11, xlib, wysiwyg, bitmap
- Sender: usenet@cs.ucla.edu (Mr Usenet)
- Nntp-Posting-Host: lanai.cs.ucla.edu
- Organization: UCLA, Computer Science Department
- Date: Thu, 7 Jan 93 06:27:50 GMT
- Lines: 2254
-
- Below is tgif-2.12-patch16 (16th patch for tgif-2.12). (The complete
- source for tgif-2.12 at patchlevel 16 can be found in the following
- places for anonymous ftp: export.lcs.mit.edu:/contrib/tgif-2.12-p16.tar.Z
- and cs.ucla.edu:/pub/tgif/tgif-2.12-p16.tar.Z.)
-
- Tgif is an Xlib based 2-D drawing tool under X11.
-
- Remove everything outside of the 'cut here' lines (inclusive) and save
- the file as tgif-2.12-patch16; then apply the patch with
- 'patch -p -N < tgif-2.12-patch16'. Here is a short list of added
- features/bug fixes.
-
- 1) Allow the launch= attribute to be multiline.
- 2) Make pasting work in text mode. The default paste command is still
- <Cntrl><Meta>y.
- 3) Add user interrupt when redrawing. Add a new X default,
- Tgif*IntrCheckInterval to define the number of objects drawn before
- checking for user interrupt.
- 4) Fix some memory leaks. Thanks to Mark Sterin <mark@FibHaifa.com> for
- the fixes.
-
- Please send bug reports to william@cs.ucla.edu.
- ---------------------------------> cut here <---------------------------------
- *** choice.c.orig Wed Jan 6 22:06:37 1993
- --- choice.c Wed Jan 6 22:06:38 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/choice.c,v 2.58.2.1 1992/10/16 05:17:33 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/choice.c,v 2.58.2.4 1993/01/03 23:34:16 william Exp $";
- #endif
-
- ***************
- *** 414,430 ****
- switch (pageStyle)
- {
- ! case PORTRAIT:
- ! XSetStipple (mainDisplay, rasterGC, filePixmap);
- ! XFillRectangle (mainDisplay, choiceWindow, rasterGC,
- ! FILE_COL*choiceImageW, FILE_ROW*choiceImageH,
- ! choiceImageW, choiceImageH);
- ! break;
- ! case LANDSCAPE:
- ! XSetStipple (mainDisplay, rasterGC, landscapePixmap);
- ! XFillRectangle (mainDisplay, choiceWindow, rasterGC,
- ! FILE_COL*choiceImageW, FILE_ROW*choiceImageH,
- ! choiceImageW, choiceImageH);
- ! break;
- }
- }
-
- --- 414,422 ----
- switch (pageStyle)
- {
- ! case PORTRAIT: XSetStipple(mainDisplay,rasterGC,filePixmap); break;
- ! case LANDSCAPE: XSetStipple(mainDisplay,rasterGC,landscapePixmap); break;
- }
- + XFillRectangle (mainDisplay, choiceWindow, rasterGC, FILE_COL*choiceImageW,
- + FILE_ROW*choiceImageH, choiceImageW, choiceImageH);
- }
-
- ***************
- *** 465,483 ****
- void ShowMoveMode ()
- {
- ! switch (moveMode)
- ! {
- ! case CONST_MOVE:
- ! XSetStipple (mainDisplay, rasterGC, moveModePixmap[CONST_MOVE]);
- ! XFillRectangle (mainDisplay, choiceWindow, rasterGC,
- ! MOVE_MODE_COL*choiceImageW, MOVE_MODE_ROW*choiceImageH,
- ! choiceImageW, choiceImageH);
- ! break;
- ! case UNCONST_MOVE:
- ! XSetStipple (mainDisplay, rasterGC, moveModePixmap[UNCONST_MOVE]);
- ! XFillRectangle (mainDisplay, choiceWindow, rasterGC,
- ! MOVE_MODE_COL*choiceImageW, MOVE_MODE_ROW*choiceImageH,
- ! choiceImageW, choiceImageH);
- ! break;
- ! }
- }
-
- --- 457,464 ----
- void ShowMoveMode ()
- {
- ! XSetStipple (mainDisplay, rasterGC, moveModePixmap[moveMode]);
- ! XFillRectangle (mainDisplay, choiceWindow, rasterGC,
- ! MOVE_MODE_COL*choiceImageW, MOVE_MODE_ROW*choiceImageH,
- ! choiceImageW, choiceImageH);
- }
-
- ***************
- *** 821,825 ****
- zoomedIn = saved_zoomed_in;
- zoomScale = saved_zoom_scale;
- ! PreciseZoom (new_zoomed_in, new_zoom_scale);
- }
-
- --- 802,806 ----
- zoomedIn = saved_zoomed_in;
- zoomScale = saved_zoom_scale;
- ! PreciseZoom (new_zoomed_in, new_zoom_scale, FALSE);
- }
-
- *** cmd.c.orig Wed Jan 6 22:06:43 1993
- --- cmd.c Wed Jan 6 22:06:44 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/cmd.c,v 2.18.2.1 1992/10/16 05:26:14 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/cmd.c,v 2.18.2.2 1993/01/02 20:21:17 william Exp $";
- #endif
-
- ***************
- *** 158,162 ****
- struct CmdRec * CmdPtr;
- {
- ! register struct CmdRec * cmd_ptr;
-
- if (curCmd == NULL)
- --- 158,162 ----
- struct CmdRec * CmdPtr;
- {
- ! register struct CmdRec * cmd_ptr, * next_cmd;
-
- if (curCmd == NULL)
- ***************
- *** 165,170 ****
- cmd_ptr = curCmd->next;
-
- ! for ( ; cmd_ptr != NULL; cmd_ptr = cmd_ptr->next)
- {
- DeleteARedoRecord (cmd_ptr);
- historyCount--;
- --- 165,171 ----
- cmd_ptr = curCmd->next;
-
- ! for ( ; cmd_ptr != NULL; cmd_ptr = next_cmd)
- {
- + next_cmd = cmd_ptr->next;
- DeleteARedoRecord (cmd_ptr);
- historyCount--;
- ***************
- *** 175,182 ****
- void CleanUpCmds ()
- {
- ! register struct CmdRec * cmd_ptr;
-
- ! for (cmd_ptr = firstCmd; cmd_ptr != NULL; cmd_ptr = cmd_ptr->next)
- DeleteARedoRecord (cmd_ptr);
- firstCmd = lastCmd = curCmd = NULL;
- historyCount = 0;
- --- 176,186 ----
- void CleanUpCmds ()
- {
- ! register struct CmdRec * cmd_ptr, * next_cmd;
-
- ! for (cmd_ptr = firstCmd; cmd_ptr != NULL; cmd_ptr = next_cmd)
- ! {
- ! next_cmd = cmd_ptr->next;
- DeleteARedoRecord (cmd_ptr);
- + }
- firstCmd = lastCmd = curCmd = NULL;
- historyCount = 0;
- *** copypaste.c.orig Wed Jan 6 22:06:46 1993
- --- copypaste.c Wed Jan 6 22:06:47 1993
- ***************
- *** 26,30 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/copypaste.c,v 2.30.1.2 1992/10/16 05:07:26 william Exp $";
- #endif
-
- --- 26,30 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/copypaste.c,v 2.30.1.4 1992/12/20 01:02:35 william Exp $";
- #endif
-
- ***************
- *** 42,45 ****
- --- 42,46 ----
- #include "color.e"
- #include "cursor.e"
- + #include "drawing.e"
- #include "dup.e"
- #include "file.e"
- ***************
- *** 279,283 ****
- }
-
- ! void PasteFromCutBuffer ()
- {
- FILE * fp;
- --- 280,284 ----
- }
-
- ! int PasteFromCutBuffer ()
- {
- FILE * fp;
- ***************
- *** 292,301 ****
- {
- Msg ("Cut buffer is empty");
- ! return;
- }
- if (((unsigned char)(*cut_buffer)) != header)
- {
- PasteString (cut_buffer);
- ! return;
- }
- cut_buffer++;
- --- 293,307 ----
- {
- Msg ("Cut buffer is empty");
- ! return (TRUE);
- }
- if (((unsigned char)(*cut_buffer)) != header)
- {
- + if (curChoice == DRAWTEXT)
- + {
- + pasteInDrawTextMode = TRUE;
- + return (FALSE);
- + }
- PasteString (cut_buffer);
- ! return (TRUE);
- }
- cut_buffer++;
- ***************
- *** 308,312 ****
- sprintf (msg, "Can not open %s for write.", tmpfile);
- Msg (msg);
- ! return;
- }
- if (write (fileno(fp), cut_buffer, len) < len)
- --- 314,318 ----
- sprintf (msg, "Can not open %s for write.", tmpfile);
- Msg (msg);
- ! return (TRUE);
- }
- if (write (fileno(fp), cut_buffer, len) < len)
- ***************
- *** 317,321 ****
- tmpfile);
- Msg (msg);
- ! return;
- }
- fflush (fp);
- --- 323,327 ----
- tmpfile);
- Msg (msg);
- ! return (TRUE);
- }
- fflush (fp);
- ***************
- *** 353,357 ****
- fileVersion);
- Msg (msg);
- ! return;
- }
-
- --- 359,363 ----
- fileVersion);
- Msg (msg);
- ! return (TRUE);
- }
-
- ***************
- *** 403,406 ****
- --- 409,413 ----
-
- Msg ("Objects pasted from tgif.");
- + return (TRUE);
- }
-
- *** drawing.c.orig Wed Jan 6 22:06:51 1993
- --- drawing.c Wed Jan 6 22:06:54 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/drawing.c,v 2.115 1992/08/11 03:58:46 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/drawing.c,v 2.115.1.4 1993/01/03 01:14:56 william Exp $";
- #endif
-
- ***************
- *** 80,83 ****
- --- 80,85 ----
- #define O_GRID (O_VIS+O_INVIS)
-
- + int intrCheckInterval=10;
- + int pasteInDrawTextMode=FALSE;
- int numRedrawBBox=INVALID;
- int numClipRecs=0;
- ***************
- *** 181,187 ****
- }
-
- ! void DrawObj (Win, ObjPtr)
- Window Win;
- register struct ObjRec * ObjPtr;
- {
- register struct ObjRec * obj_ptr;
- --- 183,254 ----
- }
-
- ! static int intrShown=FALSE;
- ! static int checkCount=0;
- !
- ! void ShowInterrupt ()
- ! {
- ! GC gc;
- ! XGCValues values;
- !
- ! if (intrCheckInterval <= 0) return;
- !
- ! values.foreground = myFgPixel;
- ! values.background = myBgPixel;
- ! values.fill_style = FillOpaqueStippled;
- ! values.stipple = intrPixmap;
- ! gc = XCreateGC (mainDisplay, dummyWindow1,
- ! GCForeground | GCBackground | GCFillStyle | GCStipple, &values);
- ! XFillRectangle (mainDisplay, dummyWindow1, gc, 0, 0, scrollBarW, scrollBarW);
- ! XFreeGC(mainDisplay, gc);
- !
- ! XSync (mainDisplay, False);
- ! intrShown = TRUE;
- ! }
- !
- ! void HideInterrupt ()
- ! {
- ! XEvent ev;
- !
- ! while (XCheckWindowEvent (mainDisplay, dummyWindow1, ButtonPressMask, &ev)) ;
- ! XClearWindow (mainDisplay, dummyWindow1);
- ! intrShown = FALSE;
- ! checkCount = 0;
- ! }
- !
- ! void RedrawDummyWindow1 ()
- ! {
- ! XEvent ev;
- !
- ! while (XCheckWindowEvent (mainDisplay, dummyWindow1, ExposureMask, &ev)) ;
- ! while (XCheckWindowEvent (mainDisplay, dummyWindow1, ButtonPressMask, &ev)) ;
- ! if (intrShown)
- ! ShowInterrupt ();
- ! else
- ! HideInterrupt ();
- ! }
- !
- ! int CheckInterrupt ()
- ! {
- ! if (intrCheckInterval <= 0) return (FALSE);
- ! if (++checkCount >= intrCheckInterval)
- ! {
- ! XEvent ev;
- !
- ! checkCount = 0;
- ! if (XCheckWindowEvent (mainDisplay, dummyWindow1, ButtonPressMask, &ev))
- ! {
- ! while (XCheckWindowEvent (mainDisplay, dummyWindow1, ButtonPressMask,
- ! &ev)) ;
- ! return (TRUE);
- ! }
- ! }
- ! return (FALSE);
- ! }
- !
- ! int DrawObj (Win, ObjPtr)
- Window Win;
- register struct ObjRec * ObjPtr;
- + /* returns TRUE if all objects are drawn */
- + /* returns FALSE if interrupted by the user */
- {
- register struct ObjRec * obj_ptr;
- ***************
- *** 230,234 ****
- for ( ; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- if (!checkBBox || NeedToDraw (obj_ptr->bbox))
- ! DrawObj (Win, obj_ptr);
- if (ObjPtr->type == OBJ_ICON && ObjPtr->dirty)
- {
- --- 297,308 ----
- for ( ; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- if (!checkBBox || NeedToDraw (obj_ptr->bbox))
- ! {
- ! if (!DrawObj (Win, obj_ptr)) return (FALSE);
- ! if (CheckInterrupt ())
- ! {
- ! Msg ("User interrupt. Repaint aborted.");
- ! return (FALSE);
- ! }
- ! }
- if (ObjPtr->type == OBJ_ICON && ObjPtr->dirty)
- {
- ***************
- *** 245,248 ****
- --- 319,323 ----
- break;
- }
- + return (TRUE);
- }
-
- ***************
- *** 299,307 ****
- smallArea[0].ltx = LtX; smallArea[0].lty = LtY;
- smallArea[0].rbx = RbX; smallArea[0].rby = RbY;
- for (obj_ptr = BotObj; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- if (BBoxIntersect (obj_ptr->bbox, drawWinBBox) &&
- BBoxIntersect (obj_ptr->bbox, smallArea[0]))
- ! DrawObj (drawWindow, obj_ptr);
- !
- SetDefaultDrawWinClipRecs ();
- }
- --- 374,392 ----
- smallArea[0].ltx = LtX; smallArea[0].lty = LtY;
- smallArea[0].rbx = RbX; smallArea[0].rby = RbY;
- + ShowInterrupt ();
- for (obj_ptr = BotObj; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- + {
- if (BBoxIntersect (obj_ptr->bbox, drawWinBBox) &&
- BBoxIntersect (obj_ptr->bbox, smallArea[0]))
- ! {
- ! if (!DrawObj (drawWindow, obj_ptr)) break;
- ! if (CheckInterrupt ())
- ! {
- ! Msg ("User interrupt. Repaint aborted.");
- ! break;
- ! }
- ! }
- ! }
- ! HideInterrupt ();
- SetDefaultDrawWinClipRecs ();
- }
- ***************
- *** 465,468 ****
- --- 550,554 ----
- smallArea[1].ltx = LtX2; smallArea[1].lty = LtY2;
- smallArea[1].rbx = RbX2; smallArea[1].rby = RbY2;
- + ShowInterrupt ();
- for (obj_ptr = BotObj; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- {
- ***************
- *** 470,476 ****
- (BBoxIntersect (obj_ptr->bbox, bbox1) ||
- BBoxIntersect (obj_ptr->bbox, bbox2)))
- ! DrawObj (drawWindow, obj_ptr);
- }
- !
- SetDefaultDrawWinClipRecs ();
- }
- --- 556,569 ----
- (BBoxIntersect (obj_ptr->bbox, bbox1) ||
- BBoxIntersect (obj_ptr->bbox, bbox2)))
- ! {
- ! if (!DrawObj (drawWindow, obj_ptr)) break;
- ! if (CheckInterrupt ())
- ! {
- ! Msg ("User interrupt. Repaint aborted.");
- ! break;
- ! }
- ! }
- }
- ! HideInterrupt ();
- SetDefaultDrawWinClipRecs ();
- }
- ***************
- *** 637,642 ****
-
- checkBBox = FALSE;
- for (obj_ptr = botObj; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- ! DrawObj (pixmap, obj_ptr);
- checkBBox = TRUE;
-
- --- 730,751 ----
-
- checkBBox = FALSE;
- + ShowInterrupt ();
- for (obj_ptr = botObj; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- ! {
- ! if (!DrawObj (pixmap, obj_ptr))
- ! {
- ! XFreePixmap (mainDisplay, pixmap);
- ! pixmap = None;
- ! break;
- ! }
- ! if (CheckInterrupt ())
- ! {
- ! Msg ("User interrupt. Repaint aborted.");
- ! XFreePixmap (mainDisplay, pixmap);
- ! pixmap = None;
- ! break;
- ! }
- ! }
- ! HideInterrupt ();
- checkBBox = TRUE;
-
- ***************
- *** 661,667 ****
-
- numRedrawBBox = 0;
- for (obj_ptr = BotObj; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- if (BBoxIntersect (obj_ptr->bbox, drawWinBBox))
- ! DrawObj (drawWindow, obj_ptr);
- }
-
- --- 770,787 ----
-
- numRedrawBBox = 0;
- + ShowInterrupt ();
- for (obj_ptr = BotObj; obj_ptr != NULL; obj_ptr = obj_ptr->prev)
- + {
- if (BBoxIntersect (obj_ptr->bbox, drawWinBBox))
- ! {
- ! if (!DrawObj (drawWindow, obj_ptr)) break;
- ! if (CheckInterrupt ())
- ! {
- ! Msg ("User interrupt. Repaint aborted.");
- ! break;
- ! }
- ! }
- ! }
- ! HideInterrupt ();
- }
-
- ***************
- *** 863,867 ****
- case 'w': /*^#w*/ ToggleAllSelLineType (); break;
- case 'x': /*^#x*/ ToggleWhereToPrint (); break;
- ! case 'y': /*^#y*/ PasteFromCutBuffer (); break;
- case 'z': /*^#z*/ SetCurChoice (DRAWARC); break;
- case '.': /*^#.*/ ImportXBitmapFile (); break;
- --- 983,987 ----
- case 'w': /*^#w*/ ToggleAllSelLineType (); break;
- case 'x': /*^#x*/ ToggleWhereToPrint (); break;
- ! case 'y': /*^#y*/ if (!PasteFromCutBuffer()) return(INVALID); break;
- case 'z': /*^#z*/ SetCurChoice (DRAWARC); break;
- case '.': /*^#.*/ ImportXBitmapFile (); break;
- *** file.c.orig Wed Jan 6 22:06:59 1993
- --- file.c Wed Jan 6 22:07:02 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/file.c,v 2.192.1.11 1992/12/06 03:09:02 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/file.c,v 2.192.1.14 1992/12/22 05:43:04 william Exp $";
- #endif
-
- ***************
- *** 1874,1878 ****
- FILE * fp;
- char tmp_filename[MAXPATHLENGTH+1];
- ! int tmp_linenum;
-
- strcpy (saved_cur_dir, curDir);
- --- 1874,1878 ----
- FILE * fp;
- char tmp_filename[MAXPATHLENGTH+1];
- ! int tmp_linenum, interrupted;
-
- strcpy (saved_cur_dir, curDir);
- ***************
- *** 1914,1918 ****
- --- 1914,1921 ----
-
- numRedrawBBox = 0;
- + ShowInterrupt ();
- + interrupted = FALSE;
- while ((read_status = ReadObj (fp, &obj_ptr)) == TRUE)
- + {
- if (obj_ptr != NULL)
- {
- ***************
- *** 1919,1926 ****
- AdjForOldVersion (obj_ptr);
- AddObj (NULL, topObj, obj_ptr);
- ! if (PointInBBox (obj_ptr->x, obj_ptr->y, drawWinBBox) ||
- ! BBoxIntersect (obj_ptr->bbox, drawWinBBox))
- ! DrawObj (drawWindow, obj_ptr);
- }
-
- strcpy (scanFileName, tmp_filename);
- --- 1922,1936 ----
- AdjForOldVersion (obj_ptr);
- AddObj (NULL, topObj, obj_ptr);
- ! if (!interrupted &&
- ! (PointInBBox (obj_ptr->x, obj_ptr->y, drawWinBBox) ||
- ! BBoxIntersect (obj_ptr->bbox, drawWinBBox)))
- ! {
- ! if (!DrawObj (drawWindow, obj_ptr)) interrupted = TRUE;
- ! if (CheckInterrupt ()) interrupted = TRUE;
- ! }
- }
- + }
- + if (interrupted) Msg ("User interrupt. Drawing aborted.");
- + HideInterrupt ();
-
- strcpy (scanFileName, tmp_filename);
- *** grid.c.orig Wed Jan 6 22:07:07 1993
- --- grid.c Wed Jan 6 22:07:09 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/grid.c,v 2.77 1992/05/11 23:41:53 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/grid.c,v 2.78 1992/12/14 02:05:21 william Exp $";
- #endif
-
- ***************
- *** 676,685 ****
- }
-
- ! void PreciseZoom (zoomed_in, zoom_scale)
- ! int zoomed_in, zoom_scale;
- {
- int xc, yc;
-
- ! if (zoomedIn == zoomed_in && zoomScale == zoom_scale) return;
-
- if (curChoice==DRAWTEXT && textCursorShown)
- --- 676,685 ----
- }
-
- ! void PreciseZoom (zoomed_in, zoom_scale, force_zoom)
- ! int zoomed_in, zoom_scale, force_zoom;
- {
- int xc, yc;
-
- ! if (!force_zoom && zoomedIn == zoomed_in && zoomScale == zoom_scale) return;
-
- if (curChoice==DRAWTEXT && textCursorShown)
- *** mainloop.c.orig Wed Jan 6 22:07:15 1993
- --- mainloop.c Wed Jan 6 22:07:17 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/mainloop.c,v 2.79.1.6 1992/11/29 23:26:26 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/mainloop.c,v 2.79.1.7 1992/12/21 00:20:05 william Exp $";
- #endif
-
- ***************
- *** 305,308 ****
- --- 305,313 ----
- RedrawHScrollWindow ();
- }
- + else if (input->xany.window == dummyWindow1)
- + {
- + while (XCheckWindowEvent (mainDisplay, dummyWindow1, ExposureMask, &ev)) ;
- + RedrawDummyWindow1 ();
- + }
- else if (pinnedMainMenu && input->xany.window == mainMenuWindow)
- {
- ***************
- *** 686,689 ****
- --- 691,696 ----
- input.xany.window == hSBarWindow)
- ScrollEventHandler (&input);
- + else if (input.xany.window == dummyWindow1)
- + RedrawDummyWindow1 ();
- else if (input.xany.type == MappingNotify)
- XRefreshKeyboardMapping (&(input.xmapping));
- *** mainmenu.c.orig Wed Jan 6 22:07:21 1993
- --- mainmenu.c Wed Jan 6 22:07:22 1993
- ***************
- *** 26,30 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/mainmenu.c,v 1.51 1992/08/08 08:26:43 william Exp $";
- #endif
-
- --- 26,30 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/mainmenu.c,v 1.51.1.3 1993/01/04 01:21:22 william Exp $";
- #endif
-
- ***************
- *** 327,331 ****
- register int i, j;
- register unsigned char hash_value;
- ! Window root_win, parent_win, * child_win;
- unsigned int num_child;
-
- --- 327,331 ----
- register int i, j;
- register unsigned char hash_value;
- ! Window root_win, parent_win, * child_wins;
- unsigned int num_child;
-
- ***************
- *** 344,348 ****
- }
-
- ! XQueryTree (mainDisplay, rootWindow, &root_win, &parent_win, &child_win,
- &num_child);
-
- --- 344,348 ----
- }
-
- ! XQueryTree (mainDisplay, rootWindow, &root_win, &parent_win, &child_wins,
- &num_child);
-
- ***************
- *** 353,360 ****
- for (i = 0; i < num_child; i++)
- {
- ! hash_value = child_win[i] & 0xff;
- if (checkExtra[hash_value>>3] & (1<<(hash_value&0x7)))
- {
- ! if (child_win[i] == mainMenuWindow)
- stackingWins[numStacking++] = mainMenuWindow;
- else
- --- 353,360 ----
- for (i = 0; i < num_child; i++)
- {
- ! hash_value = child_wins[i] & 0xff;
- if (checkExtra[hash_value>>3] & (1<<(hash_value&0x7)))
- {
- ! if (child_wins[i] == mainMenuWindow)
- stackingWins[numStacking++] = mainMenuWindow;
- else
- ***************
- *** 363,369 ****
- {
- if (extraWinInfo[j].raise && extraWinInfo[j].mapped &&
- ! extraWinInfo[j].window == child_win[i])
- {
- ! stackingWins[numStacking++] = child_win[i];
- break;
- }
- --- 363,369 ----
- {
- if (extraWinInfo[j].raise && extraWinInfo[j].mapped &&
- ! extraWinInfo[j].window == child_wins[i])
- {
- ! stackingWins[numStacking++] = child_wins[i];
- break;
- }
- ***************
- *** 372,375 ****
- --- 372,376 ----
- }
- }
- + if (child_wins != NULL) XFree ((void *)child_wins);
- }
-
- ***************
- *** 749,753 ****
- &num_child) == 0)
- return;
- ! if (child_wins != NULL) cfree (child_wins);
- if (parent_win == rootWindow)
- done = TRUE;
- --- 750,754 ----
- &num_child) == 0)
- return;
- ! if (child_wins != NULL) XFree ((void *)child_wins);
- if (parent_win == rootWindow)
- done = TRUE;
- *** poly.c.orig Wed Jan 6 22:07:30 1993
- --- poly.c Wed Jan 6 22:07:31 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/poly.c,v 2.59.1.3 1992/11/07 23:32:42 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/poly.c,v 2.59.1.4 1993/01/03 23:34:24 william Exp $";
- #endif
-
- ***************
- *** 198,202 ****
- struct ObjRec * obj_ptr;
- register int i;
- ! XPoint * v, * rv;
- int ltx, lty, rbx, rby;
-
- --- 198,202 ----
- struct ObjRec * obj_ptr;
- register int i;
- ! XPoint * v;
- int ltx, lty, rbx, rby;
-
- ***************
- *** 204,209 ****
- poly_ptr->n = NumPts;
- v = (XPoint *) calloc (NumPts+1, sizeof(XPoint));
- ! rv = (XPoint *) calloc (NumPts+1, sizeof(XPoint));
- ! if (v == NULL || rv == NULL) fprintf (stderr, "Can not calloc().\n");
- pt_ptr = lastPtPtr;
- ltx = rbx = pt_ptr->x;
- --- 204,208 ----
- poly_ptr->n = NumPts;
- v = (XPoint *) calloc (NumPts+1, sizeof(XPoint));
- ! if (v == NULL) fprintf (stderr, "Can not calloc().\n");
- pt_ptr = lastPtPtr;
- ltx = rbx = pt_ptr->x;
- ***************
- *** 222,226 ****
-
- poly_ptr->vlist = v;
- - poly_ptr->rvlist = rv;
- poly_ptr->svlist = poly_ptr->asvlist = NULL;
- poly_ptr->style = lineStyle;
- --- 221,224 ----
- ***************
- *** 809,813 ****
- dash = ObjPtr->detail.p->dash;
- rotation = ObjPtr->rotation;
- ! v = (rotation == 0) ? ObjPtr->detail.p->vlist : ObjPtr->detail.p->rvlist;
- num_pts = ObjPtr->detail.p->n;
-
- --- 807,811 ----
- dash = ObjPtr->detail.p->dash;
- rotation = ObjPtr->rotation;
- ! v = ObjPtr->detail.p->vlist;
- num_pts = ObjPtr->detail.p->n;
-
- ***************
- *** 1184,1188 ****
- register int i;
- struct PolyRec * poly_ptr;
- ! XPoint * v, * rv;
- char color_str[20], * s, inbuf[MAXSTRING+1], msg[MAXSTRING];
- int num_pts, ltx=0, lty=0, rbx=0, rby=0, x, y, id=0;
- --- 1182,1186 ----
- register int i;
- struct PolyRec * poly_ptr;
- ! XPoint * v;
- char color_str[20], * s, inbuf[MAXSTRING+1], msg[MAXSTRING];
- int num_pts, ltx=0, lty=0, rbx=0, rby=0, x, y, id=0;
- ***************
- *** 1218,1223 ****
- {
- v = (XPoint *) calloc (4, sizeof(XPoint));
- ! rv = (XPoint *) calloc (4, sizeof(XPoint));
- ! if (v == NULL || rv == NULL) fprintf (stderr, "Can not calloc().\n");
- }
- else
- --- 1216,1220 ----
- {
- v = (XPoint *) calloc (4, sizeof(XPoint));
- ! if (v == NULL) fprintf (stderr, "Can not calloc().\n");
- }
- else
- ***************
- *** 1224,1229 ****
- {
- v = (XPoint *) calloc (num_pts+1, sizeof(XPoint));
- ! rv = (XPoint *) calloc (num_pts+1, sizeof(XPoint));
- ! if (v == NULL || rv == NULL) fprintf (stderr, "Can not calloc().\n");
- }
-
- --- 1221,1225 ----
- {
- v = (XPoint *) calloc (num_pts+1, sizeof(XPoint));
- ! if (v == NULL) fprintf (stderr, "Can not calloc().\n");
- }
-
- ***************
- *** 1239,1243 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1235,1238 ----
- ***************
- *** 1269,1273 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1264,1267 ----
- ***************
- *** 1321,1325 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1315,1318 ----
- ***************
- *** 1350,1354 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1343,1346 ----
- ***************
- *** 1380,1384 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1372,1375 ----
- ***************
- *** 1404,1408 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1395,1398 ----
- ***************
- *** 1427,1431 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1417,1420 ----
- ***************
- *** 1446,1450 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1435,1438 ----
- ***************
- *** 1466,1470 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1454,1457 ----
- ***************
- *** 1488,1492 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1475,1478 ----
- ***************
- *** 1511,1515 ****
- cfree (poly_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 1497,1500 ----
- ***************
- *** 1537,1541 ****
-
- poly_ptr->vlist = v;
- - poly_ptr->rvlist = rv;
- poly_ptr->svlist = poly_ptr->asvlist = NULL;
-
- --- 1522,1525 ----
- ***************
- *** 1562,1569 ****
- struct ObjRec * ObjPtr;
- {
- ! if (ObjPtr->detail.p->curved) cfree (ObjPtr->detail.p->svlist);
- if (ObjPtr->detail.p->asvlist != NULL) cfree (ObjPtr->detail.p->asvlist);
- cfree (ObjPtr->detail.p->vlist);
- - cfree (ObjPtr->detail.p->rvlist);
- cfree (ObjPtr->detail.p);
- cfree (ObjPtr);
- --- 1546,1552 ----
- struct ObjRec * ObjPtr;
- {
- ! if (ObjPtr->detail.p->svlist != NULL) cfree (ObjPtr->detail.p->svlist);
- if (ObjPtr->detail.p->asvlist != NULL) cfree (ObjPtr->detail.p->asvlist);
- cfree (ObjPtr->detail.p->vlist);
- cfree (ObjPtr->detail.p);
- cfree (ObjPtr);
- *** polygon.c.orig Wed Jan 6 22:07:37 1993
- --- polygon.c Wed Jan 6 22:07:38 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/polygon.c,v 2.58.1.3 1992/11/07 23:33:09 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/polygon.c,v 2.58.1.4 1993/01/03 23:34:24 william Exp $";
- #endif
-
- ***************
- *** 736,740 ****
- register int i;
- struct PolygonRec * polygon_ptr;
- ! XPoint * v, * rv;
- char color_str[20], * s, inbuf[MAXSTRING], msg[MAXSTRING];
- int num_pts, ltx=0, lty=0, rbx=0, rby=0, x, y, id=0;
- --- 736,740 ----
- register int i;
- struct PolygonRec * polygon_ptr;
- ! XPoint * v;
- char color_str[20], * s, inbuf[MAXSTRING], msg[MAXSTRING];
- int num_pts, ltx=0, lty=0, rbx=0, rby=0, x, y, id=0;
- ***************
- *** 769,774 ****
- {
- v = (XPoint *) calloc (5, sizeof(XPoint));
- ! rv = (XPoint *) calloc (5, sizeof(XPoint));
- ! if (v == NULL || rv == NULL) fprintf (stderr, "Can not calloc().\n");
- }
- else
- --- 769,773 ----
- {
- v = (XPoint *) calloc (5, sizeof(XPoint));
- ! if (v == NULL) fprintf (stderr, "Can not calloc().\n");
- }
- else
- ***************
- *** 775,780 ****
- {
- v = (XPoint *) calloc (num_pts+1, sizeof(XPoint));
- ! rv = (XPoint *) calloc (num_pts+1, sizeof(XPoint));
- ! if (v == NULL || rv == NULL) fprintf (stderr, "Can not calloc().\n");
- }
-
- --- 774,778 ----
- {
- v = (XPoint *) calloc (num_pts+1, sizeof(XPoint));
- ! if (v == NULL) fprintf (stderr, "Can not calloc().\n");
- }
-
- ***************
- *** 790,794 ****
- cfree (polygon_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 788,791 ----
- ***************
- *** 820,824 ****
- cfree (polygon_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 817,820 ----
- ***************
- *** 885,889 ****
- cfree (polygon_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 881,884 ----
- ***************
- *** 913,917 ****
- cfree (polygon_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 908,911 ----
- ***************
- *** 934,938 ****
- cfree (polygon_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 928,931 ----
- ***************
- *** 951,955 ****
- cfree (polygon_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 944,947 ----
- ***************
- *** 969,973 ****
- cfree (polygon_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 961,964 ----
- ***************
- *** 988,992 ****
- cfree (polygon_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 979,982 ----
- ***************
- *** 1008,1012 ****
- cfree (polygon_ptr);
- cfree (v);
- - cfree (rv);
- *ObjPtr = NULL;
- return;
- --- 998,1001 ----
- ***************
- *** 1026,1030 ****
-
- polygon_ptr->vlist = v;
- - polygon_ptr->rvlist = rv;
- polygon_ptr->svlist = NULL;
-
- --- 1015,1018 ----
- ***************
- *** 1053,1059 ****
- struct ObjRec * ObjPtr;
- {
- ! if (ObjPtr->detail.g->curved) cfree (ObjPtr->detail.g->svlist);
- cfree (ObjPtr->detail.g->vlist);
- - cfree (ObjPtr->detail.g->rvlist);
- cfree (ObjPtr->detail.g);
- cfree (ObjPtr);
- --- 1041,1046 ----
- struct ObjRec * ObjPtr;
- {
- ! if (ObjPtr->detail.g->svlist != NULL) cfree (ObjPtr->detail.g->svlist);
- cfree (ObjPtr->detail.g->vlist);
- cfree (ObjPtr->detail.g);
- cfree (ObjPtr);
- *** raster.c.orig Wed Jan 6 22:07:46 1993
- --- raster.c Wed Jan 6 22:07:47 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/raster.c,v 2.42 1992/06/19 05:41:12 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/raster.c,v 2.42.1.2 1992/12/21 00:27:27 william Exp $";
- #endif
-
- ***************
- *** 168,171 ****
- --- 168,172 ----
- #include "xbm/unconst_move.xbm"
- #include "xbm/edit.xbm"
- + #include "xbm/intr.xbm"
-
- #include "xbm/rotate_0.xbm"
- ***************
- *** 203,206 ****
- --- 204,209 ----
- Pixmap moveModePixmap[MAXMOVEMODES];
- Pixmap editPixmap;
- + Pixmap intrPixmap;
- +
- Pixmap rotatePixmap[4];
- Pixmap whereToPrintPixmap[MAXWHERETOPRINT];
- ***************
- *** 557,560 ****
- --- 560,566 ----
- edit_bits, edit_width, edit_height);
-
- + intrPixmap = XCreateBitmapFromData (mainDisplay, mainWindow,
- + intr_bits, intr_width, intr_height);
- +
- rotatePixmap[0] = XCreateBitmapFromData (mainDisplay, mainWindow,
- rotate_0_bits, rotate_0_width, rotate_0_height);
- ***************
- *** 694,697 ****
- --- 700,704 ----
- XFreePixmap (mainDisplay, moveModePixmap[i]);
- XFreePixmap (mainDisplay, editPixmap);
- + XFreePixmap (mainDisplay, intrPixmap);
- for (i = 0; i < 4; i++)
- XFreePixmap (mainDisplay, rotatePixmap[i]);
- *** select.c.orig Wed Jan 6 22:07:52 1993
- --- select.c Wed Jan 6 22:07:54 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/select.c,v 2.70.1.5 1992/12/06 23:53:20 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/select.c,v 2.70.1.7 1993/01/03 23:45:28 william Exp $";
- #endif
-
- ***************
- *** 66,71 ****
- struct VSelRec * topVSel = NULL, * botVSel = NULL;
-
- - static struct SelRec * topCutSel = NULL, * botCutSel = NULL;
- -
- void CalcBBox (X1, Y1, X2, Y2, LtX, LtY, RbX, RbY)
- int X1, Y1, X2, Y2, * LtX, * LtY, * RbX, * RbY;
- --- 66,69 ----
- ***************
- *** 1320,1327 ****
- {
- register char * c_ptr, * buf_ptr;
- ! char * start_ptr, * new_c_ptr;
- char buf[MAXSTRING+1], * cmd, * cmd_ptr;
- ! int cur_size=2*MAXSTRING, count=0, cmd_len=0;
- struct AttrRec * attr_ptr;
-
- cmd = (char *) calloc (cur_size+1, sizeof(char));
- --- 1318,1327 ----
- {
- register char * c_ptr, * buf_ptr;
- ! char * new_c_ptr;
- char buf[MAXSTRING+1], * cmd, * cmd_ptr;
- ! int cur_size=2*MAXSTRING, count=0, cmd_len=0, n;
- ! int first_time=TRUE;
- struct AttrRec * attr_ptr;
- + struct StrRec * str_ptr;
-
- cmd = (char *) calloc (cur_size+1, sizeof(char));
- ***************
- *** 1328,1392 ****
- cmd_ptr = cmd;
- buf_ptr = buf;
- ! for (start_ptr = c_ptr = launch_attr->s; *c_ptr != '\0'; c_ptr++, count++)
- {
- ! switch (*c_ptr)
- {
- ! case '\\':
- ! c_ptr++;
- ! *buf_ptr++ = *c_ptr;
- ! break;
- ! case '$':
- ! if (count != 0)
- ! {
- ! *buf_ptr = '\0';
- if (count+cmd_len >= cur_size)
- {
- ! int n=cmd_ptr-cmd;
- !
- cur_size += MAXSTRING;
- ! cmd = (char *) realloc (cmd, (cur_size+1)*sizeof(char));
- cmd_ptr = cmd+n;
- }
- ! strcpy (cmd_ptr, buf);
- cmd_ptr += count;
- ! count = 0;
- ! buf_ptr = buf;
- ! }
- ! if ((attr_ptr = ValidAttrArg (c_ptr, obj_ptr, &new_c_ptr)) == NULL)
- ! {
- ! cfree (cmd);
- ! return;
- ! }
- ! count = strlen (attr_ptr->s);
- ! if (count+cmd_len >= cur_size)
- ! {
- ! int n=cmd_ptr-cmd;
- !
- ! cur_size += MAXSTRING;
- ! cmd = (char *) realloc (cmd, (cur_size+1)*sizeof(char));
- ! cmd_ptr = cmd+n;
- ! }
- ! strcpy (cmd_ptr, attr_ptr->s);
- ! cmd_ptr += count;
- ! count = -1;
- ! c_ptr = new_c_ptr;
- ! break;
- ! default:
- ! *buf_ptr++ = *c_ptr;
- ! break;
- }
- ! }
- ! if (count != 0)
- ! {
- ! *buf_ptr = '\0';
- ! if (count+cmd_len >= cur_size)
- {
- ! int n=cmd_ptr-cmd;
- !
- ! cur_size += MAXSTRING;
- ! cmd = (char *) realloc (cmd, (cur_size+1)*sizeof(char));
- ! cmd_ptr = cmd+n;
- }
- ! strcpy (cmd_ptr, buf);
- }
- LaunchIt (cmd);
- --- 1328,1400 ----
- cmd_ptr = cmd;
- buf_ptr = buf;
- ! for (str_ptr = launch_attr->obj->detail.t->first; str_ptr != NULL;
- ! str_ptr = str_ptr->next)
- {
- ! if (first_time)
- {
- ! first_time = FALSE;
- ! c_ptr = launch_attr->s;
- ! }
- ! else
- ! c_ptr = str_ptr->s;
- !
- ! for ( ; *c_ptr != '\0'; c_ptr++, count++)
- ! {
- ! switch (*c_ptr)
- ! {
- ! case '\\': c_ptr++; *buf_ptr++ = *c_ptr; break;
- ! case '$':
- ! if (count != 0)
- ! {
- ! *buf_ptr = '\0';
- ! if (count+cmd_len >= cur_size)
- ! {
- ! n = cmd_ptr-cmd;
- ! cur_size += MAXSTRING;
- ! cmd = (char *) realloc (cmd, (cur_size+2)*sizeof(char));
- ! cmd_ptr = cmd+n;
- ! }
- ! strcpy (cmd_ptr, buf);
- ! cmd_ptr += count;
- ! count = 0;
- ! buf_ptr = buf;
- ! }
- ! if ((attr_ptr = ValidAttrArg(c_ptr,obj_ptr,&new_c_ptr)) == NULL)
- ! {
- ! cfree (cmd);
- ! return;
- ! }
- ! count = strlen (attr_ptr->s);
- if (count+cmd_len >= cur_size)
- {
- ! n = cmd_ptr-cmd;
- cur_size += MAXSTRING;
- ! cmd = (char *) realloc (cmd, (cur_size+2)*sizeof(char));
- cmd_ptr = cmd+n;
- }
- ! strcpy (cmd_ptr, attr_ptr->s);
- cmd_ptr += count;
- ! count = -1;
- ! c_ptr = new_c_ptr;
- ! break;
- ! default: *buf_ptr++ = *c_ptr; break;
- ! }
- }
- ! if (count != 0)
- {
- ! *buf_ptr = '\0';
- ! if (count+cmd_len >= cur_size)
- ! {
- ! n = cmd_ptr-cmd;
- ! cur_size += MAXSTRING;
- ! cmd = (char *) realloc (cmd, (cur_size+2)*sizeof(char));
- ! cmd_ptr = cmd+n;
- ! }
- ! strcpy (cmd_ptr, buf);
- ! cmd_ptr += count;
- ! count = 0;
- ! buf_ptr = buf;
- }
- ! if (str_ptr->next != NULL) { *cmd_ptr++ = ' '; *cmd_ptr = '\0'; }
- }
- LaunchIt (cmd);
- *** setup.c.orig Wed Jan 6 22:08:01 1993
- --- setup.c Wed Jan 6 22:08:02 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/setup.c,v 2.100.2.3 1992/11/29 23:59:22 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/setup.c,v 2.100.2.9 1993/01/04 02:51:43 william Exp $";
- #endif
-
- ***************
- *** 165,169 ****
- short handleSize=3;
-
- ! static Window dummyWindow1, dummyWindow2;
-
- static Atom protocolAtom;
- --- 165,169 ----
- short handleSize=3;
-
- ! Window dummyWindow1, dummyWindow2;
-
- static Atom protocolAtom;
- ***************
- *** 276,280 ****
- Msg (msg);
- }
- ! XFree (c_ptr);
- }
-
- --- 276,280 ----
- Msg (msg);
- }
- ! XFree ((void *)c_ptr);
- }
-
- ***************
- *** 346,350 ****
- titleWindowH+choiceWindowH+rulerW+drawWinH+8*brdrW, hSBarW,
- scrollBarW);
- ! XMoveWindow (mainDisplay, dummyWindow1, drawWinW+rulerW+4*brdrW,
- titleWindowH+choiceWindowH+rulerW+drawWinH+8*brdrW);
- }
- --- 346,350 ----
- titleWindowH+choiceWindowH+rulerW+drawWinH+8*brdrW, hSBarW,
- scrollBarW);
- ! XMoveWindow (mainDisplay, dummyWindow2, drawWinW+rulerW+4*brdrW,
- titleWindowH+choiceWindowH+rulerW+drawWinH+8*brdrW);
- }
- ***************
- *** 597,600 ****
- --- 597,604 ----
- groupedTextEditable = TRUE;
- }
- + intrCheckInterval = 10;
- + if ((c_ptr = XGetDefault (mainDisplay, TOOL_NAME,
- + "IntrCheckInterval")) != NULL)
- + intrCheckInterval = atoi (c_ptr);
-
- strcpy (scanFileName, "No File");
- ***************
- *** 806,810 ****
- }
-
- ! if ((dummyWindow1 = XCreateSimpleWindow (mainDisplay, mainWindow,
- rulerW+drawWinW+4*brdrW,
- titleWindowH+choiceWindowH+rulerW+drawWinH+8*brdrW,
- --- 810,814 ----
- }
-
- ! if ((dummyWindow2 = XCreateSimpleWindow (mainDisplay, mainWindow,
- rulerW+drawWinW+4*brdrW,
- titleWindowH+choiceWindowH+rulerW+drawWinH+8*brdrW,
- ***************
- *** 812,816 ****
- { fprintf (stderr, "Could not create dummy window!\n"); exit(1); }
-
- ! if ((dummyWindow2 = XCreateSimpleWindow (mainDisplay, mainWindow, 0,
- titleWindowH+choiceWindowH+4*brdrW, rulerW, rulerW,
- brdrW, myBorderPixel, myBgPixel)) == 0)
- --- 816,820 ----
- { fprintf (stderr, "Could not create dummy window!\n"); exit(1); }
-
- ! if ((dummyWindow1 = XCreateSimpleWindow (mainDisplay, mainWindow, 0,
- titleWindowH+choiceWindowH+4*brdrW, rulerW, rulerW,
- brdrW, myBorderPixel, myBgPixel)) == 0)
- ***************
- *** 897,900 ****
- --- 901,906 ----
- XMapWindow (mainDisplay, hSBarWindow);
- XSelectInput (mainDisplay, hSBarWindow, ButtonPressMask | ExposureMask);
- + XMapWindow (mainDisplay, dummyWindow1);
- + XSelectInput (mainDisplay, dummyWindow1, ButtonPressMask | ExposureMask);
- }
- #else
- ***************
- *** 933,936 ****
- --- 939,944 ----
- XSelectInput (mainDisplay, hSBarWindow, ButtonPressMask | ExposureMask);
- XMapWindow (mainDisplay, hSBarWindow);
- + XSelectInput (mainDisplay, dummyWindow1, ButtonPressMask | ExposureMask);
- + XMapWindow (mainDisplay, dummyWindow1);
- }
- #endif
- ***************
- *** 938,942 ****
- if (!canvasWindowOnly)
- {
- - XMapWindow (mainDisplay, dummyWindow1);
- XMapWindow (mainDisplay, dummyWindow2);
- }
- --- 946,949 ----
- *** special.c.orig Wed Jan 6 22:08:07 1993
- --- special.c Wed Jan 6 22:08:08 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/special.c,v 2.60 1992/03/31 07:56:57 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/special.c,v 2.60.1.1 1992/12/22 04:34:08 william Exp $";
- #endif
-
- ***************
- *** 248,252 ****
- --- 248,254 ----
- MoveObj (ObjPtr, grid_dx, grid_dy);
- numRedrawBBox = 0;
- + ShowInterrupt ();
- DrawObj (drawWindow, ObjPtr);
- + HideInterrupt ();
- }
- else if (input.type == MotionNotify)
- *** stk.c.orig Wed Jan 6 22:08:12 1993
- --- stk.c Wed Jan 6 22:08:13 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/stk.c,v 2.37.1.2 1992/10/21 05:00:55 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/stk.c,v 2.37.1.5 1992/12/22 05:43:04 william Exp $";
- #endif
-
- ***************
- *** 81,85 ****
- int read_status, short_name;
- FILE * fp;
- ! int tmp_linenum;
- char tmp_filename[MAXPATHLENGTH];
-
- --- 81,85 ----
- int read_status, short_name;
- FILE * fp;
- ! int tmp_linenum, interrupted;
- char tmp_filename[MAXPATHLENGTH];
-
- ***************
- *** 193,197 ****
- --- 193,200 ----
- SetWatchCursor (mainWindow);
- numRedrawBBox = 0;
- + ShowInterrupt ();
- + interrupted = FALSE;
- while ((read_status = ReadObj (fp, &obj_ptr)) == TRUE)
- + {
- if (obj_ptr != NULL)
- {
- ***************
- *** 198,205 ****
- AdjForOldVersion (obj_ptr);
- AddObj (NULL, topObj, obj_ptr);
- ! if (PointInBBox (obj_ptr->x, obj_ptr->y, drawWinBBox) ||
- ! BBoxIntersect (obj_ptr->bbox, drawWinBBox))
- ! DrawObj (drawWindow, obj_ptr);
- }
-
- strcpy (scanFileName, tmp_filename);
- --- 201,215 ----
- AdjForOldVersion (obj_ptr);
- AddObj (NULL, topObj, obj_ptr);
- ! if (!interrupted &&
- ! (PointInBBox (obj_ptr->x, obj_ptr->y, drawWinBBox) ||
- ! BBoxIntersect (obj_ptr->bbox, drawWinBBox)))
- ! {
- ! if (!DrawObj (drawWindow, obj_ptr)) interrupted = TRUE;
- ! if (CheckInterrupt ()) interrupted = TRUE;
- ! }
- }
- + }
- + if (interrupted) Msg ("User interrupt. Drawing aborted.");
- + HideInterrupt ();
-
- strcpy (scanFileName, tmp_filename);
- *** text.c.orig Wed Jan 6 22:08:21 1993
- --- text.c Wed Jan 6 22:08:24 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/text.c,v 2.110 1992/10/21 05:14:30 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/text.c,v 2.111 1992/12/20 01:34:19 william Exp $";
- #endif
-
- ***************
- *** 1969,1972 ****
- --- 1969,1974 ----
- ScrollTo (textCurX, textCurY);
- }
- +
- + #define TGIF_HEADER 0x80
-
- static XComposeStatus c_stat;
- ***************
- *** 1975,1981 ****
- XEvent * input;
- {
- ! char s[80];
- ! XKeyEvent * key_ev;
- ! KeySym key_sym;
-
- if (input->type == ButtonPress)
- --- 1977,1983 ----
- XEvent * input;
- {
- ! char s[80];
- ! XKeyEvent * key_ev;
- ! KeySym key_sym;
-
- if (input->type == ButtonPress)
- ***************
- *** 1984,1987 ****
- --- 1986,2027 ----
- {
- if (!textCursorShown) return;
- +
- + if (pasteInDrawTextMode)
- + {
- + char * c_ptr, * cut_buffer;
- + int len;
- +
- + pasteInDrawTextMode = FALSE;
- + cut_buffer = (char *) XFetchBytes (mainDisplay, &len);
- + if (len == 0) { Msg ("Cut buffer is empty."); return; }
- +
- + if (escPressed)
- + {
- + escPressed = FALSE;
- + Msg ("An <ESC> key press is ignored.");
- + }
- + s[1] = '\0';
- + EraseTextCursor ();
- + for (c_ptr = cut_buffer; *c_ptr != '\0'; c_ptr++)
- + {
- + s[0] = *c_ptr;
- + switch (s[0])
- + {
- + case '\r':
- + case '\n': HandleCRLF (colorIndex); break;
- +
- + case '\177': Msg ("Can not paste <DEL>."); break;
- + case '\b': Msg ("Can not paste <BS>."); break;
- + case '\033': Msg ("Can not paste <ESC>."); break;
- + case '\t': Msg ("Can not paste <TAB>."); break;
- +
- + default: HandleChar (s, colorIndex); break;
- + }
- + }
- + PutTextCursor ();
- + MarkRulers (textCurX, textCurY);
- + SetFileModified (TRUE);
- + return;
- + }
-
- key_ev = &(input->xkey);
- *** xbitmap.c.orig Wed Jan 6 22:08:31 1993
- --- xbitmap.c Wed Jan 6 22:08:33 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/xbitmap.c,v 2.116 1992/11/24 06:02:46 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/xbitmap.c,v 2.117 1993/01/03 22:51:20 william Exp $";
- #endif
-
- ***************
- *** 2373,2379 ****
- xbm_ptr->cached_zoom = 0;
- if (xbm_ptr->data != NULL) cfree (xbm_ptr->data);
- if (xbm_ptr->real_type == XBM_EPS)
- {
- - if (xbm_ptr->filename != NULL) cfree (xbm_ptr->filename);
- for (i = 0; i < xbm_ptr->num_epsf_lines; i++)
- if (xbm_ptr->epsflines[i] != NULL)
- --- 2373,2379 ----
- xbm_ptr->cached_zoom = 0;
- if (xbm_ptr->data != NULL) cfree (xbm_ptr->data);
- + if (xbm_ptr->filename != NULL) cfree (xbm_ptr->filename);
- if (xbm_ptr->real_type == XBM_EPS)
- {
- for (i = 0; i < xbm_ptr->num_epsf_lines; i++)
- if (xbm_ptr->epsflines[i] != NULL)
- *** xpixmap.c.orig Wed Jan 6 22:08:40 1993
- --- xpixmap.c Wed Jan 6 22:08:42 1993
- ***************
- *** 25,29 ****
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/xpixmap.c,v 2.119 1992/11/26 23:48:45 william Exp $";
- #endif
-
- --- 25,29 ----
- #ifndef lint
- static char RCSid[] =
- ! "@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/xpixmap.c,v 2.120 1992/12/18 05:34:11 william Exp $";
- #endif
-
- ***************
- *** 935,942 ****
- fprintf (FP, "%c", hexValue[(pixel_index>>4)&0x0f]);
- fprintf (FP, "%c", hexValue[pixel_index&0x0f]);
- ! if (col%36 == 35) fprintf (FP, "\n ");
- }
- if (col%36 != 0) fprintf (FP, "\n");
- ! if (row != image_h-1) fprintf (FP, " ");
- }
- }
- --- 935,944 ----
- fprintf (FP, "%c", hexValue[(pixel_index>>4)&0x0f]);
- fprintf (FP, "%c", hexValue[pixel_index&0x0f]);
- ! if (col%36 == 35)
- ! fprintf (FP, "\n%s",
- ! (col==image_w-1 && row==image_h-1) ? "" : " ");
- }
- if (col%36 != 0) fprintf (FP, "\n");
- ! if (row != image_h-1 && (col%36) != 0) fprintf (FP, " ");
- }
- }
- *** copypaste.e.orig Wed Jan 6 22:08:44 1993
- --- copypaste.e Wed Jan 6 22:08:45 1993
- ***************
- *** 24,28 ****
- * Copyright (C) 1990, 1991, 1992, William Cheng.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/copypaste.e,v 2.6 1992/03/31 07:59:57 william Exp $
- */
-
- --- 24,28 ----
- * Copyright (C) 1990, 1991, 1992, William Cheng.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/copypaste.e,v 2.7 1992/12/20 00:54:04 william Exp $
- */
-
- ***************
- *** 30,33 ****
-
- extern void CopyToCutBuffer ();
- ! extern void PasteFromCutBuffer ();
- extern void CleanUpCutBuffer ();
- --- 30,33 ----
-
- extern void CopyToCutBuffer ();
- ! extern int PasteFromCutBuffer ();
- extern void CleanUpCutBuffer ();
- *** drawing.e.orig Wed Jan 6 22:08:47 1993
- --- drawing.e Wed Jan 6 22:08:48 1993
- ***************
- *** 23,29 ****
- * PERFORMANCE OF THIS SOFTWARE.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/drawing.e,v 2.9 1992/08/11 03:58:27 william Exp $
- */
-
- extern int numRedrawBBox;
- extern int numClipRecs;
- --- 23,31 ----
- * PERFORMANCE OF THIS SOFTWARE.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/drawing.e,v 2.14 1992/12/21 00:51:44 william Exp $
- */
-
- + extern int intrCheckInterval;
- + extern int pasteInDrawTextMode;
- extern int numRedrawBBox;
- extern int numClipRecs;
- ***************
- *** 33,37 ****
- extern void SetDefaultDrawWinClipRecs ();
- extern void SetDefaultIconWinClipRecs ();
- ! extern void DrawObj ();
- extern void DrawPaperBoundary ();
- extern void RedrawAnArea ();
- --- 35,43 ----
- extern void SetDefaultDrawWinClipRecs ();
- extern void SetDefaultIconWinClipRecs ();
- ! extern void ShowInterrupt ();
- ! extern void HideInterrupt ();
- ! extern void RedrawDummyWindow1 ();
- ! extern int CheckInterrupt ();
- ! extern int DrawObj ();
- extern void DrawPaperBoundary ();
- extern void RedrawAnArea ();
- *** raster.e.orig Wed Jan 6 22:08:52 1993
- --- raster.e Wed Jan 6 22:08:52 1993
- ***************
- *** 23,27 ****
- * PERFORMANCE OF THIS SOFTWARE.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/raster.e,v 2.24 1992/03/31 08:02:16 william Exp $
- */
-
- --- 23,27 ----
- * PERFORMANCE OF THIS SOFTWARE.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/raster.e,v 2.25 1992/12/21 00:25:13 william Exp $
- */
-
- ***************
- *** 55,58 ****
- --- 55,59 ----
- extern Pixmap moveModePixmap[];
- extern Pixmap editPixmap;
- + extern Pixmap intrPixmap;
-
- extern Pixmap rotatePixmap[];
- *** setup.e.orig Wed Jan 6 22:08:55 1993
- --- setup.e Wed Jan 6 22:08:55 1993
- ***************
- *** 23,27 ****
- * PERFORMANCE OF THIS SOFTWARE.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/setup.e,v 2.13 1992/03/31 08:02:48 william Exp $
- */
-
- --- 23,27 ----
- * PERFORMANCE OF THIS SOFTWARE.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/setup.e,v 2.14 1992/12/21 00:20:18 william Exp $
- */
-
- ***************
- *** 64,67 ****
- --- 64,68 ----
- extern Window iconWindow;
- extern Window iconBaseWindow;
- + extern Window dummyWindow1, dummyWindow2;
-
- extern int paperWidth;
- *** patchlevel.h.orig Wed Jan 6 22:08:58 1993
- --- patchlevel.h Wed Jan 6 22:08:59 1993
- ***************
- *** 23,28 ****
- * PERFORMANCE OF THIS SOFTWARE.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/patchlevel.h,v 2.29.1.4 1992/11/29 01:49:45 william Exp $
- */
-
- ! #define TGIF_PATCHLEVEL 15
- --- 23,28 ----
- * PERFORMANCE OF THIS SOFTWARE.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/patchlevel.h,v 2.29.1.5 1992/12/14 06:33:01 william Exp $
- */
-
- ! #define TGIF_PATCHLEVEL 16
- *** types.h.orig Wed Jan 6 22:09:02 1993
- --- types.h Wed Jan 6 22:09:03 1993
- ***************
- *** 23,27 ****
- * PERFORMANCE OF THIS SOFTWARE.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/types.h,v 2.71 1992/08/08 08:27:29 william Exp $
- */
-
- --- 23,27 ----
- * PERFORMANCE OF THIS SOFTWARE.
- *
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/types.h,v 2.71.1.1 1993/01/03 23:23:40 william Exp $
- */
-
- ***************
- *** 78,82 ****
- int n; /* number of points in the polyline */
- XPoint * vlist;
- - XPoint * rvlist; /* rotated vlist */
- int sn; /* number of points in the spline polyline */
- XPoint * svlist;
- --- 78,81 ----
- ***************
- *** 89,93 ****
- int n; /* number of points in the polygon */
- XPoint * vlist;
- - XPoint * rvlist; /* rotated vlist */
- int sn; /* number of points in the spline polygon */
- XPoint * svlist;
- --- 88,91 ----
- ***************
- *** 97,101 ****
- typedef struct BoxRec {
- int fill, width, pen, dash;
- - XPoint * rvlist; /* rotated vlist */
- } * BoxRecPtr;
-
- --- 95,98 ----
- ***************
- *** 179,183 ****
- typedef struct RCBoxRec {
- int fill, width, pen, dash, radius;
- - XPoint * rvlist; /* rotated vlist */
- } * RCBoxRecPtr;
-
- --- 176,179 ----
- *** Makefile.noimake.orig Wed Jan 6 22:09:06 1993
- --- Makefile.noimake Wed Jan 6 22:09:08 1993
- ***************
- *** 23,27 ****
- # PERFORMANCE OF THIS SOFTWARE.
- #
- ! # @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/Makefile.noimake,v 2.131.1.8 1992/11/29 07:09:55 william Exp $
- #
-
- --- 23,27 ----
- # PERFORMANCE OF THIS SOFTWARE.
- #
- ! # @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/Makefile.noimake,v 2.131.1.12 1993/01/03 01:48:39 william Exp $
- #
-
- ***************
- *** 157,160 ****
- --- 157,161 ----
- \
- xbm/rcbradius.xbm xbm/const_move.xbm xbm/unconst_move.xbm \
- + xbm/edit.xbm xbm/intr.xbm \
- \
- xbm/rotate_0.xbm xbm/rotate_90.xbm xbm/rotate_180.xbm xbm/rotate_270.xbm
- ***************
- *** 212,217 ****
- select.e setup.e text.e xpixmap.e
- copypaste.o: const.h types.h \
- ! auxtext.e box.e choice.e cmd.e color.e cursor.e dup.e file.e \
- ! font.e move.e obj.e pattern.e select.e setup.e special.e text.e
- cursor.o: const.h types.h $(CURSOR_BM) \
- choice.e color.e setup.e xbitmap.e
- --- 213,219 ----
- select.e setup.e text.e xpixmap.e
- copypaste.o: const.h types.h \
- ! auxtext.e box.e choice.e cmd.e color.e cursor.e drawing.e \
- ! dup.e file.e font.e move.e obj.e pattern.e select.e setup.e \
- ! special.e text.e
- cursor.o: const.h types.h $(CURSOR_BM) \
- choice.e color.e setup.e xbitmap.e
- *** Imakefile.orig Wed Jan 6 22:09:11 1993
- --- Imakefile Wed Jan 6 22:09:12 1993
- ***************
- *** 23,30 ****
- /**/# PERFORMANCE OF THIS SOFTWARE.
- /**/#
- ! /**/# @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/Imakefile,v 2.84.1.8 1992/12/07 00:27:40 william Exp $
- /**/#
-
- ! TGIFVERSION = 2.12-p15
- PROGRAMS = tgif prtgif /**/#frontend11.o testdrive
- /**/#CDEBUGFLAGS= -g
- --- 23,30 ----
- /**/# PERFORMANCE OF THIS SOFTWARE.
- /**/#
- ! /**/# @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/Imakefile,v 2.84.1.9 1992/12/21 01:46:05 william Exp $
- /**/#
-
- ! TGIFVERSION = 2.12-p16
- PROGRAMS = tgif prtgif /**/#frontend11.o testdrive
- /**/#CDEBUGFLAGS= -g
- *** tgif.man.orig Wed Jan 6 22:09:17 1993
- --- tgif.man Wed Jan 6 22:09:20 1993
- ***************
- *** 1,4 ****
- ! .\"@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/tgif.man,v 2.132 1992/11/29 23:58:54 william Exp $
- ! .TH TGIF n "Version 2.12-p15 and Above" "Tgif"
- .SH NAME
- \fItgif\fR \- Xlib based interactive 2-D drawing facility under X11.
- --- 1,4 ----
- ! .\"@(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/tgif.man,v 2.136 1992/12/22 05:36:07 william Exp $
- ! .TH TGIF n "Version 2.12-p16 and Above" "Tgif"
- .SH NAME
- \fItgif\fR \- Xlib based interactive 2-D drawing facility under X11.
- ***************
- *** 423,426 ****
- --- 423,437 ----
- units any more.
- .TP
- + .I Interrupt Window
- + .br
- + This window is right below the Message Window and to the left of the
- + horizontal ruler. When the Tgif*IntrCheckInterval X default has a
- + positive value, an interrupt icon is visible when the Canvas Window
- + is being redrawn. If the user clicks on this window when the
- + interrupt icon is visible, tgif aborts the repainting of the objects.
- + If this is done when a file is being opened (either through Open()
- + or Push()), the drawing of objects is stopped, but the reading of
- + the file continues (reading of the file is not aborted).
- + .TP
- .I Popup Menus
- .br
- ***************
- *** 1251,1254 ****
- --- 1262,1270 ----
- (which is 128/72).
- The default value is 1.
- + .TP
- + .I Tgif*IntrCheckInterval: NUMBER
- + This specifies the number of objects drawn before tgif checks for
- + interrupts. If this is set to be 0 or less, interrupt is not allowed.
- + The default value is 10.
- .TP
- .I Tgif*MaxColors: NUMBER
- *** HISTORY.orig Wed Jan 6 22:09:28 1993
- --- HISTORY Wed Jan 6 22:09:29 1993
- ***************
- *** 1,5 ****
- /*
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/HISTORY,v 2.39 1992/12/07 00:58:38 william Exp $
- */
- -----------------------> tgif-2.12-p14 => tgif-2.12-p15 <-----------------------
- I've just put tgif-2.12-patch15 (15 patch for tgif-2.12) in the
- --- 1,26 ----
- /*
- ! * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/HISTORY,v 2.40 1993/01/04 01:06:09 william Exp $
- */
- + -----------------------> tgif-2.12-p15 => tgif-2.12-p16 <-----------------------
- + I've just put tgif-2.12-patch16 (16 patch for tgif-2.12) in the
- + following places for anonymous ftp:
- +
- + export.lcs.mit.edu:/contrib/tgif-2.12-patch16.Z
- + cs.ucla.edu:/pub/tgif/tgif-2.12-patch16.Z
- +
- + The patch is also posted to comp.sources.bugs.
- +
- + Please uncompress and then apply the patch with
- + 'patch -p -N < tgif-2.12-patch16'.
- + Here's a short list of added features/bug fixes.
- +
- + 1) Allow the launch= attribute to be multiline.
- + 2) Make pasting work in text mode. The default paste command is still
- + <Cntrl><Meta>y.
- + 3) Add user interrupt when redrawing. Add a new X default,
- + Tgif*IntrCheckInterval to define the number of objects drawn before
- + checking for user interrupt.
- + 4) Fix some memory leaks. Thanks to Mark Sterin <mark@FibHaifa.com> for
- + the fixes.
- -----------------------> tgif-2.12-p14 => tgif-2.12-p15 <-----------------------
- I've just put tgif-2.12-patch15 (15 patch for tgif-2.12) in the
- *** descrip.mms.orig Wed Jan 6 22:09:33 1993
- --- descrip.mms Wed Jan 6 22:09:34 1993
- ***************
- *** 6,10 ****
- ! $ DEFINE SYS SYS$LIBRARY
- !
- ! ! @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/descrip.mms,v 2.124.1.6 1992/11/29 07:09:55 william Exp $
- !
-
- --- 6,10 ----
- ! $ DEFINE SYS SYS$LIBRARY
- !
- ! ! @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/descrip.mms,v 2.124.1.10 1993/01/03 01:49:13 william Exp $
- !
-
- ***************
- *** 132,135 ****
- --- 132,136 ----
- -
- xbm/rcbradius.xbm,xbm/const_move.xbm,xbm/unconst_move.xbm,-
- + xbm/edit.xbm,xbm/intr.xbm,-
- -
- xbm/rotate_0.xbm,xbm/rotate_90.xbm,xbm/rotate_180.xbm,xbm/rotate_270.xbm
- ***************
- *** 186,191 ****
- select.e,setup.e,text.e,xpixmap.e
- copypaste.obj depends_on copypaste.c, const.h,types.h,-
- ! auxtext.e,box.e,choice.e,cmd.e,color.e,cursor.e,dup.e,file.e,-
- ! font.e,move.e,obj.e,pattern.e,select.e,setup.e,special.e,text.e
- cursor.obj depends_on cursor.c, const.h,types.h,$(CURSOR_BM),-
- choice.e,color.e,setup.e,xbitmap.e
- --- 187,193 ----
- select.e,setup.e,text.e,xpixmap.e
- copypaste.obj depends_on copypaste.c, const.h,types.h,-
- ! auxtext.e,box.e,choice.e,cmd.e,color.e,cursor.e,drawing.e,-
- ! dup.e,file.e,font.e,move.e,obj.e,pattern.e,select.e,setup.e,-
- ! special.e,text.e
- cursor.obj depends_on cursor.c, const.h,types.h,$(CURSOR_BM),-
- choice.e,color.e,setup.e,xbitmap.e
- *** xbm/intr.xbm.orig Wed Jan 6 22:09:36 1993
- --- xbm/intr.xbm Wed Jan 6 22:09:37 1993
- ***************
- *** 0 ****
- --- 1,11 ----
- + /*
- + * @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/xbm/RCS/intr.xbm,v 2.0 1992/12/21 02:19:11 william Exp $
- + */
- + #define intr_width 16
- + #define intr_height 16
- + #define intr_x_hot 0
- + #define intr_y_hot 0
- + static char intr_bits[] = {
- + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0xe0,
- + 0x00, 0xf8, 0x00, 0xf0, 0xc0, 0xf9, 0xe0, 0x99, 0xe0, 0x0d, 0xb0, 0x0f,
- + 0x98, 0x07, 0x9c, 0x03, 0x0c, 0x00, 0x00, 0x00};
- *** tgif.Xdefaults.orig Wed Jan 6 22:09:39 1993
- --- tgif.Xdefaults Wed Jan 6 22:09:39 1993
- ***************
- *** 3,7 ****
- ! suitable for appending to any .Xdefaults file.
- !
- ! ! @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/tgif.Xdefaults,v 2.30 1992/11/24 03:51:15 william Exp $
- !
- Tgif*Geometry: 640x512-40+20
- --- 3,7 ----
- ! suitable for appending to any .Xdefaults file.
- !
- ! ! @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/tgif.Xdefaults,v 2.32 1992/12/21 01:36:41 william Exp $
- !
- Tgif*Geometry: 640x512-40+20
- ***************
- *** 86,89 ****
- --- 86,90 ----
- Tgif*DefaultEPSScaling: 1
- !Tgif*DefaultEPSScaling: 1.7778
- + Tgif*IntrCheckInterval: 10
- !
- Tgif*MaxColors: 11
- *** launch-demo-1.obj.orig Wed Jan 6 22:09:41 1993
- --- launch-demo-1.obj Wed Jan 6 22:09:42 1993
- ***************
- *** 1,6 ****
- ! %TGIF 2.12-p15
- state(0,27,100,0,0,0,8,1,0,2,0,0,0,1,0,1,0,0,0,3,1,0,0,10,0,0,1,1,0,16,1).
- %
- ! % @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/launch-demo-1.obj,v 2.0 1992/12/07 00:24:47 william Exp $
- % %W%
- %
- --- 1,6 ----
- ! %TGIF 2.12-p16
- state(0,27,100,0,0,0,8,1,0,2,0,0,0,1,0,1,0,0,0,3,1,0,0,10,0,0,1,1,0,16,1).
- %
- ! % @(#)$Header: /amnt/kona/tangram/u/william/X11/TGIF2/RCS/launch-demo-1.obj,v 2.1 1993/01/04 02:28:39 william Exp $
- % %W%
- %
- ***************
- *** 34,46 ****
- ]).
- group([
- ! text('green',88,320,0,0,3,7,0,0,1,292,166,648,1,18,4,0,2,0,0,[
- "To get a fancier look. Select an",
- "object and type <Meta>m.",
- ! "Then use left button to get a popup",
- ! "menu; select an attribute; click right",
- ! "button to hide the attribute or click",
- ! "the middle button to hide the attribute",
- "name."]),
- ! text('green',64,320,0,0,3,1,0,0,1,16,22,649,1,18,4,0,0,0,0,[
- "3)"])
- ],
- --- 34,47 ----
- ]).
- group([
- ! text('green',88,312,0,0,3,8,0,0,1,246,190,648,1,18,4,0,2,0,0,[
- "To get a fancier look. Select an",
- "object and type <Meta>m.",
- ! "Then use left button to get a",
- ! "popup menu; select an attribute;",
- ! "click right button to hide the",
- ! "attribute or click the middle",
- ! "button to hide the attribute",
- "name."]),
- ! text('green',64,312,0,0,3,1,0,0,1,16,22,649,1,18,4,0,0,0,0,[
- "3)"])
- ],
- ***************
- *** 84,86 ****
- --- 85,132 ----
- text('blue',512,128,2,0,5,1,1,0,1,166,29,54,0,24,5,0,0,0,0,[
- "name=example"]))
- + ]).
- + group([
- + polygon('cyan',5,[
- + 502,448,493,480,547,480,556,448,502,448],2,1,0,0,1465,0,0,0,[
- + ]),
- + polygon('cyan',5,[
- + 493,480,484,512,538,512,547,480,493,480],2,1,0,0,1466,0,0,0,[
- + ]),
- + poly('cyan',2,[
- + 502,448,556,448],0,1,1,1467,0,0,0,0,8,3,0,[
- + ]),
- + poly('cyan',2,[
- + 484,512,538,512],0,1,1,1468,0,0,0,0,8,3,0,[
- + ]),
- + poly('cyan',3,[
- + 502,448,484,464,493,480],0,1,1,1469,1,2,0,0,8,3,0,[
- + ]),
- + poly('cyan',3,[
- + 484,512,502,496,493,480],0,1,1,1470,1,2,0,0,8,3,0,[
- + ]),
- + poly('cyan',3,[
- + 556,448,538,464,547,480],0,1,1,1471,1,2,0,0,8,3,0,[
- + ]),
- + poly('cyan',3,[
- + 538,512,556,496,547,480],0,1,1,1472,1,2,0,0,8,3,0,[
- + ])
- + ],
- + 1464,0,[
- + attr("page=", "1", 1, 1, 0,
- + text('magenta',520,452,2,2,5,1,1,0,1,82,29,1473,0,24,5,0,0,0,0,[
- + "page=1"])),
- + attr("dir=", "/u/tangram/u/william/X11/TGIF2", 1, 1, 0,
- + text('yellow',520,512,0,0,3,1,1,0,1,289,22,1474,1,18,4,0,0,0,0,[
- + "dir=/u/tangram/u/william/X11/TGIF2"])),
- + attr("launch=", "cd $(dir);", 1, 1, 0,
- + text('yellow',512,384,0,0,3,3,1,0,1,370,66,1475,1,18,4,0,0,0,0,[
- + "launch=cd $(dir);",
- + "dvips -N -n 1 -p $(page) $(name) > $(tmpfile);",
- + "xterm -geom 40x8+200+400 -e gs $(tmpfile) &"])),
- + attr("name=", "example", 1, 1, 0,
- + text('green',524,476,2,0,5,1,1,0,1,166,29,1476,0,24,5,0,0,0,0,[
- + "name=example"])),
- + attr("tmpfile=", "/tmp/tgif.ps", 1, 1, 0,
- + text('yellow',520,536,0,0,3,1,1,0,1,151,22,1551,1,18,4,0,0,0,0,[
- + "tmpfile=/tmp/tgif.ps"]))
- ]).
- ---------------------------------> cut here <---------------------------------
- --
- Bill Cheng // UCLA Computer Science Department // (310) 645-8328
- 3564-C Boelter Hall // Los Angeles, California 90024 // USA
- william@CS.UCLA.EDU ...!{uunet|ucbvax}!cs.ucla.edu!william
-