home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / x / volume8 / tgif / patch4 < prev    next >
Internet Message Format  |  1990-08-21  |  22KB

  1. Path: uunet!lll-winken!sun-barr!newstop!sun!CS.UCLA.EDU
  2. From: william@CS.UCLA.EDU (William Cheng)
  3. Newsgroups: comp.sources.x
  4. Subject: v08i094: tgif, Patch4, Part01/01
  5. Message-ID: <141120@sun.Eng.Sun.COM>
  6. Date: 22 Aug 90 07:03:23 GMT
  7. Sender: news@sun.Eng.Sun.COM
  8. Lines: 672
  9. Approved: argv@sun.com
  10.  
  11. Submitted-by: william@CS.UCLA.EDU (William Cheng)
  12. Posting-number: Volume 8, Issue 94
  13. Archive-name: tgif/patch4
  14. Patch-To: Volume 7, Issue 56-76 (original: tgif-1.2)
  15. Patch-To: Volume 8, Issue 46-48 (Patch1: tgif-1.2 => tgif-1.9)
  16. Patch-To: Volume 8, Issue 58-60 (Patch2: tgif-1.9 => tgif-1.12)
  17. Patch-To: Volume 8, Issue 87-89 (Patch3: tgif-1.12 => tgif-1.13)
  18.  
  19. Patch4 of tgif takes tgif-1.13 to tgif-1.14.  Below is a list of
  20. added features/bug fixes, followed by the actual patch.
  21.  
  22. tgif-1.13 => tgif-1.14
  23.  
  24. 1) Fix Imakefile so that it works better with the X11R4 installation.
  25.    This includes commenting out BINDIR, CDEBUGFLAGS, and MANPATH.
  26.    Thanks to David Eckelkamp@MCC and Carl Witty@Stanford for their
  27.    recommentations, and specially David Eckelkamp@MCC for his improvements.
  28.  
  29.       NOTE:  With the current setup, those who wishes to install tgif
  30.              in places outside of the X11R4 installation has to modify
  31.              the Imakefile (uncomment the definition for CDEBUGFLAGS,
  32.              BINDIR, MANPATH, and redefine TGIFDIR).  Sorry for the
  33.              inconveniences.
  34.  
  35. 2) Add support for 100dpi fonts.  (Actually, this was done in the previous
  36.    release.  I forgot to mention it.)
  37. 3) Fix a small bug in display the current font (pixmap not cleared before).
  38. 4) Use XDrawPoint() instead of XDrawLine() in drawing grid points and
  39.    rotated text.  Use the #ifdef construct to get around know server bugs.
  40. 5) Minor enhancement in cleaning up events in adding and deleting points.
  41.  
  42. ---------------------------------> cut here <---------------------------------
  43. *** choice.c.orig    Tue Aug 21 21:32:15 1990
  44. --- choice.c    Tue Aug 21 21:32:16 1990
  45. ***************
  46. *** 6,10 ****
  47.   #ifndef lint
  48.   static char RCSid[] =
  49. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/choice.c,v 1.6 90/08/15 16:01:40 william Exp $";
  50.   #endif
  51.   
  52. --- 6,10 ----
  53.   #ifndef lint
  54.   static char RCSid[] =
  55. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/choice.c,v 1.8 90/08/21 15:55:15 william Exp $";
  56.   #endif
  57.   
  58. ***************
  59. *** 104,108 ****
  60.   {
  61.      register int    i, j;
  62. !    int        x, y, pixel, w, h, saved_x, saved_y;
  63.      XRectangle    recs[1];
  64.      XImage    * image;
  65. --- 104,108 ----
  66.   {
  67.      register int    i, j;
  68. !    int        x, y, w, h, saved_x, saved_y;
  69.      XRectangle    recs[1];
  70.      XImage    * image;
  71. ***************
  72. *** 173,176 ****
  73. --- 173,181 ----
  74.      else
  75.      {
  76. +       XSetForeground (mainDisplay, choiceGC, 0);
  77. +       XFillRectangle (mainDisplay, choiceBackingPixmap, choiceGC, 0, 0,
  78. +          choiceWindowW, choiceWindowH);
  79. +       XSetForeground (mainDisplay, choiceGC, 1);
  80.         XDrawImageString (mainDisplay, choiceBackingPixmap, choiceGC, 0,
  81.               canvasFontAsc, "W", 1);
  82. ***************
  83. *** 195,201 ****
  84.                     case ROTATE270: x = saved_x+j; y = saved_y-i; break;
  85.                  }
  86. ! /*             XDrawPoint (mainDisplay, choiceWindow, defaultGC, x, y); */
  87. ! /*                Hack to run on RTs -- crash server on RTs             */
  88.                  XDrawLine (mainDisplay,choiceWindow,defaultGC,x,y,x,y);
  89.               }
  90.   
  91. --- 200,208 ----
  92.                     case ROTATE270: x = saved_x+j; y = saved_y-i; break;
  93.                  }
  94. ! #ifdef sun
  95. !                XDrawPoint (mainDisplay, choiceWindow, defaultGC, x, y);
  96. ! #else
  97.                  XDrawLine (mainDisplay,choiceWindow,defaultGC,x,y,x,y);
  98. + #endif
  99.               }
  100.   
  101. *** edit.c.orig    Tue Aug 21 21:32:37 1990
  102. --- edit.c    Tue Aug 21 21:32:38 1990
  103. ***************
  104. *** 6,10 ****
  105.   #ifndef lint
  106.   static char RCSid[] =
  107. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/edit.c,v 1.9 90/08/16 09:35:06 william Exp $";
  108.   #endif
  109.   
  110. --- 6,10 ----
  111.   #ifndef lint
  112.   static char RCSid[] =
  113. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/edit.c,v 1.13 90/08/21 16:03:43 william Exp $";
  114.   #endif
  115.   
  116. ***************
  117. *** 32,35 ****
  118. --- 32,39 ----
  119.   #include "stretch.e"
  120.   
  121. + #ifndef M_PI
  122. + #define M_PI 3.14159265358979323846
  123. + #endif
  124.   #define OFFSET_X(x) (((x) - drawOrigX) >> zoomScale)
  125.   #define OFFSET_Y(y) (((y) - drawOrigY) >> zoomScale)
  126. ***************
  127. *** 73,77 ****
  128.      unsigned int            status;
  129.      Window            root_win, child_win;
  130. !    XEvent            input;
  131.   
  132.      if (!(topSel != NULL && topSel == botSel &&
  133. --- 77,81 ----
  134.      unsigned int            status;
  135.      Window            root_win, child_win;
  136. !    XEvent            input, ev;
  137.   
  138.      if (!(topSel != NULL && topSel == botSel &&
  139. ***************
  140. *** 201,204 ****
  141. --- 205,209 ----
  142.                  old_x+4, old_y+defaultFontAsc, "DEL", 3);
  143.            MarkRulers (old_x, old_y);
  144. +          while (XCheckMaskEvent (mainDisplay, PointerMotionMask, &ev)) ;
  145.         }
  146.      }
  147. ***************
  148. *** 218,227 ****
  149.      int        n = PolyPtr->n, already_moved=FALSE, done=FALSE, before;
  150.      XPoint    * vs = PolyPtr->vlist, v[3];
  151. !    int        prev_x, prev_y, x, y, next_x, next_y, new_x, new_y, dx, dy;
  152.      int        orig_x, orig_y, grid_x, grid_y, new_mouse_x, new_mouse_y;
  153. - /* int        prev_dist, next_dist, new_prev_dist, new_next_dist; */
  154.      int        sel_ltx, sel_lty, sel_rbx, sel_rby, num, i;
  155.      double    prev_angle, next_angle, new_angle, theta_1, theta_2;
  156. !    XEvent    input;
  157.   
  158.      MARK(OFFSET_X(vs[Index].x), OFFSET_Y(vs[Index].y));
  159. --- 223,231 ----
  160.      int        n = PolyPtr->n, already_moved=FALSE, done=FALSE, before;
  161.      XPoint    * vs = PolyPtr->vlist, v[3];
  162. !    int        prev_x, prev_y, x, y, next_x, next_y, new_x, new_y;
  163.      int        orig_x, orig_y, grid_x, grid_y, new_mouse_x, new_mouse_y;
  164.      int        sel_ltx, sel_lty, sel_rbx, sel_rby, num, i;
  165.      double    prev_angle, next_angle, new_angle, theta_1, theta_2;
  166. !    XEvent    input, ev;
  167.   
  168.      MARK(OFFSET_X(vs[Index].x), OFFSET_Y(vs[Index].y));
  169. ***************
  170. *** 237,241 ****
  171.         next_x = vs[1].x;    next_y = vs[1].y;
  172.         prev_x = 2*x-next_x; prev_y = 2*y-next_y;
  173. - /*    prev_dist = next_dist = (x-prev_x)*(x-prev_x) + (y-prev_y)*(y-prev_y); */
  174.      }
  175.      else if (Index == n-1)
  176. --- 241,244 ----
  177. ***************
  178. *** 243,247 ****
  179.         prev_x = vs[n-2].x;  prev_y = vs[n-2].y;
  180.         next_x = 2*x-prev_x; next_y = 2*y-prev_y;
  181. - /*    prev_dist = next_dist = (x-prev_x)*(x-prev_x) + (y-prev_y)*(y-prev_y); */
  182.      }
  183.      else
  184. --- 246,249 ----
  185. ***************
  186. *** 249,254 ****
  187.         prev_x = vs[Index-1].x; prev_y = vs[Index-1].y;
  188.         next_x = vs[Index+1].x; next_y = vs[Index+1].y;
  189. - /*    prev_dist = (x-prev_x)*(x-prev_x) + (y-prev_y)*(y-prev_y); */
  190. - /*    next_dist = (x-next_x)*(x-next_x) + (y-next_y)*(y-next_y); */
  191.      }
  192.      prev_angle = atan2 ((double)(prev_y-y), (double)(prev_x-x));
  193. --- 251,254 ----
  194. ***************
  195. *** 286,300 ****
  196.               before = (theta_1 <= theta_2);
  197.   
  198. - /*          new_prev_dist = (new_x-prev_x)*(new_x-prev_x) + */
  199. - /*                (new_y-prev_y)*(new_y-prev_y); */
  200. - /*          new_next_dist = (new_x-next_x)*(new_x-next_x) + */
  201. - /*                (new_y-next_y)*(new_y-next_y); */
  202. - /*          if ((new_prev_dist-prev_dist)*(new_next_dist-next_dist) < 0) */
  203. - /*             before = (new_prev_dist < prev_dist); */
  204. - /*          else */
  205. - /*             before = (abs (new_prev_dist-prev_dist) < */
  206. - /*                   abs (new_next_dist-next_dist)); */
  207.               if (before)
  208.               {  /* Add a point between the current and the previous point */
  209. --- 286,289 ----
  210. ***************
  211. *** 339,342 ****
  212. --- 328,332 ----
  213.               MarkRulers (grid_x, grid_y);
  214.            }
  215. +          while (XCheckMaskEvent (mainDisplay, PointerMotionMask, &ev)) ;
  216.         }
  217.         else if (input.type == ButtonRelease)
  218. ***************
  219. *** 411,420 ****
  220.      int        n = PolygonPtr->n, already_moved=FALSE, done=FALSE, before;
  221.      XPoint    * vs = PolygonPtr->vlist, v[3];
  222. !    int        prev_x, prev_y, x, y, next_x, next_y, new_x, new_y, dx, dy;
  223.      int        orig_x, orig_y, grid_x, grid_y, new_mouse_x, new_mouse_y;
  224. - /* int        prev_dist, next_dist, new_prev_dist, new_next_dist; */
  225.      int        sel_ltx, sel_lty, sel_rbx, sel_rby, i;
  226.      double    prev_angle, next_angle, new_angle, theta_1, theta_2;
  227. !    XEvent    input;
  228.   
  229.      MARK(OFFSET_X(vs[Index].x), OFFSET_Y(vs[Index].y));
  230. --- 401,409 ----
  231.      int        n = PolygonPtr->n, already_moved=FALSE, done=FALSE, before;
  232.      XPoint    * vs = PolygonPtr->vlist, v[3];
  233. !    int        prev_x, prev_y, x, y, next_x, next_y, new_x, new_y;
  234.      int        orig_x, orig_y, grid_x, grid_y, new_mouse_x, new_mouse_y;
  235.      int        sel_ltx, sel_lty, sel_rbx, sel_rby, i;
  236.      double    prev_angle, next_angle, new_angle, theta_1, theta_2;
  237. !    XEvent    input, ev;
  238.   
  239.      MARK(OFFSET_X(vs[Index].x), OFFSET_Y(vs[Index].y));
  240. ***************
  241. *** 439,445 ****
  242.      next_angle = atan2 ((double)(next_y-y), (double)(next_x-x));
  243.   
  244. - /* prev_dist = (x-prev_x)*(x-prev_x) + (y-prev_y)*(y-prev_y); */
  245. - /* next_dist = (x-next_x)*(x-next_x) + (y-next_y)*(y-next_y); */
  246.      GridXY (MouseX, MouseY, &orig_x, &orig_y);
  247.      new_mouse_x = MouseX; new_mouse_y = MouseY;
  248. --- 428,431 ----
  249. ***************
  250. *** 473,487 ****
  251.               before = (theta_1 <= theta_2);
  252.   
  253. - /*          new_prev_dist = (new_x-prev_x)*(new_x-prev_x) + */
  254. - /*                (new_y-prev_y)*(new_y-prev_y); */
  255. - /*          new_next_dist = (new_x-next_x)*(new_x-next_x) + */
  256. - /*                (new_y-next_y)*(new_y-next_y); */
  257. - /*          if ((new_prev_dist-prev_dist)*(new_next_dist-next_dist) < 0) */
  258. - /*             before = (new_prev_dist < prev_dist); */
  259. - /*          else */
  260. - /*             before = (abs (new_prev_dist-prev_dist) < */
  261. - /*                   abs (new_next_dist-next_dist)); */
  262.               if (before)
  263.               {  /* Add a point between the current and the previous point */
  264. --- 459,462 ----
  265. ***************
  266. *** 506,509 ****
  267. --- 481,485 ----
  268.               MarkRulers (grid_x, grid_y);
  269.            }
  270. +          while (XCheckMaskEvent (mainDisplay, PointerMotionMask, &ev)) ;
  271.         }
  272.         else if (input.type == ButtonRelease)
  273. ***************
  274. *** 588,600 ****
  275.   void AddPoint ()
  276.   {
  277. -    register int            i;
  278.      register struct ObjRec    * obj_ptr;
  279.      struct PolyRec        * poly_ptr;
  280.      struct PolygonRec        * polygon_ptr;
  281. !    int                index, n, point_deleted, adding = TRUE;
  282.      int                root_x, root_y, old_x, old_y;
  283.      unsigned int            status;
  284.      Window            root_win, child_win;
  285. !    XEvent            input;
  286.   
  287.      if (!(topSel != NULL && topSel == botSel &&
  288. --- 564,575 ----
  289.   void AddPoint ()
  290.   {
  291.      register struct ObjRec    * obj_ptr;
  292.      struct PolyRec        * poly_ptr;
  293.      struct PolygonRec        * polygon_ptr;
  294. !    int                index, adding = TRUE;
  295.      int                root_x, root_y, old_x, old_y;
  296.      unsigned int            status;
  297.      Window            root_win, child_win;
  298. !    XEvent            input, ev;
  299.   
  300.      if (!(topSel != NULL && topSel == botSel &&
  301. ***************
  302. *** 662,665 ****
  303. --- 637,641 ----
  304.                  old_x+4, old_y+defaultFontAsc, "ADD", 3);
  305.            MarkRulers (old_x, old_y);
  306. +          while (XCheckMaskEvent (mainDisplay, PointerMotionMask, &ev)) ;
  307.         }
  308.      }
  309. *** grid.c.orig    Tue Aug 21 21:32:44 1990
  310. --- grid.c    Tue Aug 21 21:32:45 1990
  311. ***************
  312. *** 6,10 ****
  313.   #ifndef lint
  314.   static char RCSid[] =
  315. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/grid.c,v 1.6 90/07/16 10:18:38 william Exp $";
  316.   #endif
  317.   
  318. --- 6,10 ----
  319.   #ifndef lint
  320.   static char RCSid[] =
  321. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/grid.c,v 1.7 90/08/20 13:56:57 william Exp $";
  322.   #endif
  323.   
  324. ***************
  325. *** 42,48 ****
  326.   
  327.      for (x = XStart; x < XEnd; x += 8)
  328. ! /*    XDrawPoint (mainDisplay, Win, defaultGC, x, Y); */
  329. ! /*       Hack to run on RTs -- crash server on RTs    */
  330.         XDrawLine (mainDisplay, Win, defaultGC, x, Y, x, Y);
  331.   }
  332.   
  333. --- 42,50 ----
  334.   
  335.      for (x = XStart; x < XEnd; x += 8)
  336. ! #ifdef sun
  337. !       XDrawPoint (mainDisplay, Win, defaultGC, x, Y);
  338. ! #else
  339.         XDrawLine (mainDisplay, Win, defaultGC, x, Y, x, Y);
  340. + #endif
  341.   }
  342.   
  343. ***************
  344. *** 54,60 ****
  345.   
  346.      for (y = YStart; y < YEnd; y += 8)
  347. ! /*    XDrawPoint (mainDisplay, Win, defaultGC, X, y); */
  348. ! /*       Hack to run on RTs -- crash server on RTs    */
  349.         XDrawLine (mainDisplay, Win, defaultGC, X, y, X, y);
  350.   }
  351.   
  352. --- 56,64 ----
  353.   
  354.      for (y = YStart; y < YEnd; y += 8)
  355. ! #ifdef sun
  356. !       XDrawPoint (mainDisplay, Win, defaultGC, X, y);
  357. ! #else
  358.         XDrawLine (mainDisplay, Win, defaultGC, X, y, X, y);
  359. + #endif
  360.   }
  361.   
  362. *** text.c.orig    Tue Aug 21 21:33:23 1990
  363. --- text.c    Tue Aug 21 21:33:25 1990
  364. ***************
  365. *** 6,10 ****
  366.   #ifndef lint
  367.   static char RCSid[] =
  368. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/text.c,v 1.16 90/08/16 15:44:38 william Exp $";
  369.   #endif
  370.   
  371. --- 6,10 ----
  372.   #ifndef lint
  373.   static char RCSid[] =
  374. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/text.c,v 1.18 90/08/21 16:24:22 william Exp $";
  375.   #endif
  376.   
  377. ***************
  378. *** 148,152 ****
  379.      register int        i, j;
  380.      register XImage    * from_image;
  381. !    int            w, h, amount, left, right, len;
  382.      XGCValues        values;
  383.   
  384. --- 148,152 ----
  385.      register int        i, j;
  386.      register XImage    * from_image;
  387. !    int            w, h, left, right, len;
  388.      XGCValues        values;
  389.   
  390. ***************
  391. *** 290,297 ****
  392.                     for (j = 0; j < h; j++)
  393.                        if (XGetPixel (from_image, i, j) == 1)
  394. ! /*                      XDrawPoint (mainDisplay, Win, gc, XOff-j, YOff+i); */
  395. ! /*                         Hack to run on RTs -- crash server on RTs       */
  396.                           XDrawLine (mainDisplay, Win, gc, XOff-j, YOff+i,
  397.                                 XOff-j, YOff+i);
  398.                  break;
  399.               case ROTATE180:
  400. --- 290,299 ----
  401.                     for (j = 0; j < h; j++)
  402.                        if (XGetPixel (from_image, i, j) == 1)
  403. ! #ifdef sun
  404. !                         XDrawPoint (mainDisplay, Win, gc, XOff-j, YOff+i);
  405. ! #else
  406.                           XDrawLine (mainDisplay, Win, gc, XOff-j, YOff+i,
  407.                                 XOff-j, YOff+i);
  408. + #endif
  409.                  break;
  410.               case ROTATE180:
  411. ***************
  412. *** 299,306 ****
  413.                     for (j = 0; j < h; j++)
  414.                        if (XGetPixel (from_image, i, j) == 1)
  415. ! /*                      XDrawPoint (mainDisplay, Win, gc, XOff-i, YOff-j); */
  416. ! /*                         Hack to run on RTs -- crash server on RTs       */
  417.                           XDrawLine (mainDisplay, Win, gc, XOff-i, YOff-j,
  418.                                 XOff-i, YOff-j);
  419.                  break;
  420.               case ROTATE270:
  421. --- 301,310 ----
  422.                     for (j = 0; j < h; j++)
  423.                        if (XGetPixel (from_image, i, j) == 1)
  424. ! #ifdef sun
  425. !                         XDrawPoint (mainDisplay, Win, gc, XOff-i, YOff-j);
  426. ! #else
  427.                           XDrawLine (mainDisplay, Win, gc, XOff-i, YOff-j,
  428.                                 XOff-i, YOff-j);
  429. + #endif
  430.                  break;
  431.               case ROTATE270:
  432. ***************
  433. *** 308,315 ****
  434.                     for (j = 0; j < h; j++)
  435.                        if (XGetPixel (from_image, i, j) == 1)
  436. ! /*                      XDrawPoint (mainDisplay, Win, gc, XOff+j, YOff-i); */
  437. ! /*                         Hack to run on RTs -- crash server on RTs       */
  438.                           XDrawLine (mainDisplay, Win, gc, XOff+j, YOff-i,
  439.                                 XOff+j, YOff-i);
  440.                  break;
  441.            }
  442. --- 312,321 ----
  443.                     for (j = 0; j < h; j++)
  444.                        if (XGetPixel (from_image, i, j) == 1)
  445. ! #ifdef sun
  446. !                         XDrawPoint (mainDisplay, Win, gc, XOff+j, YOff-i);
  447. ! #else
  448.                           XDrawLine (mainDisplay, Win, gc, XOff+j, YOff-i,
  449.                                 XOff+j, YOff-i);
  450. + #endif
  451.                  break;
  452.            }
  453. ***************
  454. *** 388,392 ****
  455.      int            Just, W, H, Rotate;
  456.   {
  457. !    int    ltx, lty, rbx, rby, mw2, pw2;
  458.   
  459.      switch (Just)
  460. --- 394,398 ----
  461.      int            Just, W, H, Rotate;
  462.   {
  463. !    register int    mw2, pw2;
  464.   
  465.      switch (Just)
  466. ***************
  467. *** 476,480 ****
  468.      register int        num_lines;
  469.      struct StrRec    * s_ptr = ObjPtr->detail.t->first;
  470. !    int            max_len = 0, len, w;
  471.   
  472.      SaveCurFont ();
  473. --- 482,486 ----
  474.      register int        num_lines;
  475.      struct StrRec    * s_ptr = ObjPtr->detail.t->first;
  476. !    int            max_len = 0, w;
  477.   
  478.      SaveCurFont ();
  479. ***************
  480. *** 510,521 ****
  481.   }
  482.   
  483. - static
  484. - int FindEqual (S)
  485. -    register char *S;
  486. - {
  487. -    while (*S != '=' && *S != '\0') S++;
  488. -    return (*S == '=');
  489. - }
  490.   int CreateTextObj ()
  491.      /* returns TRUE if something got created */
  492. --- 516,519 ----
  493. ***************
  494. *** 525,530 ****
  495.      struct StrRec    * s_ptr;
  496.      struct AttrRec    * attr_ptr;
  497. !    struct ObjRec    * obj_ptr;
  498. !    int            max_len = 0, len, w, ltx, lty, rbx, rby;
  499.      int            scr_ltx, scr_lty;
  500.   
  501. --- 523,527 ----
  502.      struct StrRec    * s_ptr;
  503.      struct AttrRec    * attr_ptr;
  504. !    int            max_len = 0, w, ltx, lty, rbx, rby;
  505.      int            scr_ltx, scr_lty;
  506.   
  507. ***************
  508. *** 1314,1319 ****
  509.      XEvent    * input;
  510.   {
  511. -    int            len, x, y;
  512. -    Window        sub_win_id;
  513.      char            s[80];
  514.      XKeyEvent        * key_ev;
  515. --- 1311,1314 ----
  516. *** tgif.c.orig    Tue Aug 21 21:33:32 1990
  517. --- tgif.c    Tue Aug 21 21:33:33 1990
  518. ***************
  519. *** 6,10 ****
  520.   #ifndef lint
  521.   static char RCSid[] =
  522. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/tgif.c,v 1.7 90/08/15 15:05:17 william Exp $";
  523.   #endif
  524.   
  525. --- 6,10 ----
  526.   #ifndef lint
  527.   static char RCSid[] =
  528. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/tgif.c,v 1.8 90/08/21 15:52:54 william Exp $";
  529.   #endif
  530.   
  531. ***************
  532. *** 54,59 ****
  533.      int    i;
  534.      char    op_name[80], file_name[80], s[80], color_name[80], val_name[80];
  535. !    char    * sp[6], * func_strp, attr_name[80], speed_name[80], type_name[80];
  536. !    char    * c_ptr, id_name[80];
  537.   
  538.      file_name[0] = '\0';
  539. --- 54,59 ----
  540.      int    i;
  541.      char    op_name[80], file_name[80], s[80], color_name[80], val_name[80];
  542. !    char    * sp[6], * func_strp, attr_name[80], speed_name[80];
  543. !    char    id_name[80];
  544.   
  545.      file_name[0] = '\0';
  546. *** version.c.orig    Tue Aug 21 21:33:36 1990
  547. --- version.c    Tue Aug 21 21:33:37 1990
  548. ***************
  549. *** 6,11 ****
  550.   #ifndef lint
  551.   static char RCSid[] =
  552. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/version.c,v 1.16 90/08/16 09:41:02 william Exp $";
  553.   #endif
  554.   
  555. ! char    * version_string = "1.13";
  556. --- 6,11 ----
  557.   #ifndef lint
  558.   static char RCSid[] =
  559. !       "@(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/version.c,v 1.17 90/08/21 21:30:03 william Exp $";
  560.   #endif
  561.   
  562. ! char    * version_string = "1.14";
  563. *** Makefile.noimake.orig    Tue Aug 21 21:33:42 1990
  564. --- Makefile.noimake    Tue Aug 21 21:33:43 1990
  565. ***************
  566. *** 4,8 ****
  567.   # Copyright (C) 1990, William Cheng.
  568.   #
  569. ! # @(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/Makefile.noimake,v 1.22 90/08/16 13:21:47 william Exp $
  570.   #
  571.   
  572. --- 4,8 ----
  573.   # Copyright (C) 1990, William Cheng.
  574.   #
  575. ! # @(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/Makefile.noimake,v 1.23 90/08/21 16:09:05 william Exp $
  576.   #
  577.   
  578. ***************
  579. *** 13,18 ****
  580.   
  581.   CC = cc
  582. ! CFLAGS = -g -DTGIF_PATH=\"/u/tangram/u/william/X11/TGIF\" -DPSFILE_MOD=\"664\" \
  583. !         -I/usr/local/include
  584.   LFLAGS = -lX11 -lm
  585.   
  586. --- 13,18 ----
  587.   
  588.   CC = cc
  589. ! TGIFDIR = /u/tangram/lib/tgif
  590. ! CFLAGS = -g -DTGIF_PATH=\"$(TGIFDIR)\" -DPSFILE_MOD=\"664\" -I/usr/local/include
  591.   LFLAGS = -lX11 -lm
  592.   
  593. ***************
  594. *** 194,198 ****
  595.       ld -o frontend11.o -r $(OBJ1)
  596.   
  597. ! install: $(INSTALLDIR)/tgif $(INSTALLDIR)/tgif2ps
  598.       @echo Making install ...
  599.   
  600. --- 194,199 ----
  601.       ld -o frontend11.o -r $(OBJ1)
  602.   
  603. ! install: $(INSTALLDIR)/tgif $(INSTALLDIR)/tgif2ps \
  604. !         $(TGIFDIR)/.psmac $(TGIFDIR)/tgificon.obj
  605.       @echo Making install ...
  606.   
  607. ***************
  608. *** 202,205 ****
  609. --- 203,212 ----
  610.   $(INSTALLDIR)/tgif2ps: tgif2ps
  611.       install -c tgif2ps $(INSTALLDIR)/tgif2ps
  612. + $(TGIFDIR)/.psmac: .psmac
  613. +     install -c .psmac $(TGIFDIR)/.psmac
  614. + $(TGIFDIR)/tgificon.obj: tgificon.obj
  615. +     install -c tgificon.obj $(TGIFDIR)/tgificon.obj
  616.   
  617.   OBJDEMO = an-sr-flip-flop.obj fonts.obj slide-demo.obj spice/*.obj
  618. *** Imakefile.orig    Tue Aug 21 21:33:48 1990
  619. --- Imakefile    Tue Aug 21 21:33:48 1990
  620. ***************
  621. *** 4,17 ****
  622.   /**/# Copyright (C) 1990, William Cheng.
  623.   /**/#
  624. ! /**/# @(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/Imakefile,v 1.23 90/08/17 09:48:59 william Exp $
  625.   /**/#
  626.   
  627. ! TGIFVERSION    = 1.13
  628.   PROGRAMS    = tgif prtgif tgif2ps frontend11.o
  629. ! CDEBUGFLAGS    = -g
  630. ! BINDIR        = /u/tangram/bin
  631. ! MANPATH        = /u/tangram/man
  632. ! DEFINES        = -DTGIF_PATH=\"/u/tangram/u/william/X11/TGIF\" \
  633. !           -DPSFILE_MOD=\"664\"
  634.   LOCAL_LIBRARIES    = $(XLIB)
  635.   DEPLIBS        = $(DEPXLIB)
  636. --- 4,18 ----
  637.   /**/# Copyright (C) 1990, William Cheng.
  638.   /**/#
  639. ! /**/# @(#)$Header: /n/kona/u/tangram/u/william/X11/TGIF/RCS/Imakefile,v 1.25 90/08/21 21:30:40 william Exp $
  640.   /**/#
  641.   
  642. ! TGIFVERSION    = 1.14
  643.   PROGRAMS    = tgif prtgif tgif2ps frontend11.o
  644. ! /**/#CDEBUGFLAGS= -g
  645. ! /**/#BINDIR    = /u/tangram/bin
  646. ! /**/#MANPATH    = /u/tangram/man
  647. ! /**/#TGIFDIR    = /u/tangram/lib/tgif
  648. ! TGIFDIR    = $(LIBDIR)/tgif
  649. ! DEFINES        = -DTGIF_PATH=\"$(TGIFDIR)\" -DPSFILE_MOD=\"664\"
  650.   LOCAL_LIBRARIES    = $(XLIB)
  651.   DEPLIBS        = $(DEPXLIB)
  652. ***************
  653. *** 47,50 ****
  654. --- 48,55 ----
  655.   
  656.   NormalRelocatableTarget(frontend11,$(OBJ1))
  657. + MakeDirectories(install,$(TGIFDIR))
  658. + InstallNonExec(.psmac,$(TGIFDIR))
  659. + InstallNonExec(tgificon.obj,$(TGIFDIR))
  660.   
  661.   .SUFFIXES: .l .man
  662. ---------------------------------> cut here <---------------------------------
  663. --
  664. Bill Cheng // UCLA Computer Science Department // (213) 206-7135
  665. 3277 Boelter Hall // Los Angeles, California 90024 // USA
  666. william@CS.UCLA.EDU      ...!{uunet|ucbvax}!cs.ucla.edu!william
  667.  
  668. dan
  669. ----------------------------------------------------
  670. O'Reilly && Associates   argv@sun.com / argv@ora.com
  671. Opinions expressed reflect those of the author only.
  672.