envbvs@epb3.lbl.gov (Brian V. Smith) (03/15/90)
Submitted-by: envbvs@epb3.lbl.gov (Brian V. Smith) Posting-number: Volume 6, Issue 34 Archive-name: xfig2/patch4 Patch-To: xfig2: Volume 6, Issues 9-24 You are going to hate me, but here is *** part 1 of 3 *** of patch 4 for xfig. There were several bugs that people were complaining about, so I wanted to get these out as soon as I could. Here is the part of the CHANGES file showing fixes and new features: Patchlevel 4 Changes from patchlevel 3: o Bug fixed in drawing zero-length lines with arrows o Portrait/Landscape bug fixed (only appeared on Sun 4) o Fig will not allow edit of new figure without confirmation if current figure has been modified o Widget resources work better now (e.g. xfig.form.indicator.background: green) o -ri option for button panel on right side works properly now o Changed some widget names for better resource hierarchy o Wrapped indicator widgets in box widget o Adds compatibility with Fig 1.4-TFX file format INSTEAD of 1.4X as a compile time option (compiler flag -DTFX). No change to program as compiled without the -DTFX flag. See file README.TFX. Credit goes to Micah Beck for this one. o Fixed bug where scanf was doing %lf for text angle instead of %f in read_textobject() o #include <X11/Scroll.h> put back in fig.h for R3 - XtRFloat is defined here o XtPointer is only defined in R4 - uses caddr_t for R3 blink() routine o User print to default printer, specify particular printer or print to file o Original FORMAT1.4 file included to compare new 1.4X format with 1.4 New file that describes xfig file format is called FORMAT1.4X o Drawing too-narrow ellipses doesn't loop forever anymore, but they are still not drawn correctly Thanks for posting these. Brian Smith Part 1 of 3 follows - #! /bin/sh # This is a shell archive. Remove anything before this line, then unpack # it by saving it into a file and typing "sh file". To overwrite existing # files, type "sh file -c". You can also feed this as standard input via # unshar, or by typing "sh <file", e.g.. If this archive is complete, you # will see the following message at the end: # "End of archive 1 (of 3)." # Contents: CHANGES.diff blink.c.diff canvas.c.diff const.h.diff # curve.c.diff draw.c.diff f2ps.c.diff fig.h.diff global.c.diff # main.c.diff msgsw.c.diff panel2.h.diff patchlevel.h.diff # popup.c.diff print.c.diff printfonts.c.diff psbits.c.diff # psbits2.c.diff psfonts.c.diff psfonts.h.diff read.c.diff # read1_3.c.diff resources.h.diff search.c.diff version.h.diff # xtra.c.diff # Wrapped by envbvs@epb3.lbl.gov on Mon Mar 12 16:27:54 1990 PATH=/bin:/usr/bin:/usr/ucb ; export PATH if test -f 'CHANGES.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'CHANGES.diff'\" else echo shar: Extracting \"'CHANGES.diff'\" \(2342 characters\) sed "s/^X//" >'CHANGES.diff' <<'END_OF_FILE' X*** CHANGES.old Fri Mar 9 11:17:06 1990 X--- CHANGES Mon Mar 12 16:20:50 1990 X*************** X*** 1,5 X Version 2.0 X X Patchlevel 3 X Changes from patchlevel 2: X X X--- 1,30 ----- X Version 2.0 X X+ Patchlevel 4 X+ Changes from patchlevel 3: X+ X+ o Bug fixed in drawing zero-length lines with arrows X+ o Portrait/Landscape bug fixed (only appeared on Sun 4) X+ o Fig will not allow edit of new figure without confirmation if X+ current figure has been modified X+ o Widget resources work better now (e.g. xfig.form.indicator.background: green) X+ o -ri option for button panel on right side works properly now X+ o Changed some widget names for better resource hierarchy X+ o Wrapped indicator widgets in box widget X+ o Adds compatibility with Fig 1.4-TFX file format INSTEAD of 1.4X X+ as a compile time option (compiler flag -DTFX). No change to program X+ as compiled without the -DTFX flag. See file README.TFX. X+ Credit goes to Micah Beck for this one. X+ o Fixed bug where scanf was doing %lf for text angle instead of %f X+ in read_textobject() X+ o #include <X11/Scroll.h> put back in fig.h for R3 - XtRFloat is defined here X+ o XtPointer is only defined in R4 - uses caddr_t for R3 blink() routine X+ o User print to default printer, specify particular printer or print to file X+ o Original FORMAT1.4 file included to compare new 1.4X format with 1.4 X+ New file that describes xfig file format is called FORMAT1.4X X+ o Drawing too-narrow ellipses doesn't loop forever anymore, but they X+ are still not drawn correctly X+ X Patchlevel 3 X Changes from patchlevel 2: X X*************** X*** 4,9 X Changes from patchlevel 2: X X o now uses XtAddTimer instead of setitimer() for blinking cursor X o Changed include directives for Athena widgets to include/X11/Xaw directory X o added put_fmsg() to print messages with floating point numbers X Some machines (MIPS) were dumping core when passing floats as ints. X X--- 29,35 ----- X Changes from patchlevel 2: X X o now uses XtAddTimer instead of setitimer() for blinking cursor X+ This fixes the problem with text freezing up xfig or crashing with core dump X o Changed include directives for Athena widgets to include/X11/Xaw directory X o added put_fmsg() to print messages with floating point numbers X Some machines (MIPS) were dumping core when passing floats as ints. END_OF_FILE if test 2342 -ne `wc -c <'CHANGES.diff'`; then echo shar: \"'CHANGES.diff'\" unpacked with wrong size! fi # end of 'CHANGES.diff' fi if test -f 'blink.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'blink.c.diff'\" else echo shar: Extracting \"'blink.c.diff'\" \(717 characters\) sed "s/^X//" >'blink.c.diff' <<'END_OF_FILE' X*** blink.c.old Wed Feb 28 13:45:22 1990 X--- blink.c Fri Mar 2 15:56:41 1990 X*************** X*** 41,49 X stop_blinking = FALSE; X } X X! turn_off_blinking_cursor(client_data,id) X! XtPointer client_data; X! XtIntervalId *id; X { X if (cursor_on) X erase(cursor_x, cursor_y); X X--- 41,47 ----- X stop_blinking = FALSE; X } X X! turn_off_blinking_cursor() X { X if (cursor_on) X erase(cursor_x, cursor_y); X*************** X*** 51,57 X } X X static X! blink() X { X if (!stop_blinking) X { X X--- 49,61 ----- X } X X static X! blink(client_data,id) X! #if XtSpecificationRelease >= 4 X! XtPointer client_data; X! #else X! caddr_t client_data; X! #endif X! XtIntervalId *id; X { X if (!stop_blinking) X { END_OF_FILE if test 717 -ne `wc -c <'blink.c.diff'`; then echo shar: \"'blink.c.diff'\" unpacked with wrong size! fi # end of 'blink.c.diff' fi if test -f 'canvas.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'canvas.c.diff'\" else echo shar: Extracting \"'canvas.c.diff'\" \(905 characters\) sed "s/^X//" >'canvas.c.diff' <<'END_OF_FILE' X*** canvas.c.old Tue Jan 16 17:21:03 1990 X--- canvas.c Wed Mar 7 11:47:11 1990 X*************** X*** 110,117 X X canvas_args[3].value = CANVAS_WIDTH; X canvas_args[4].value = CANVAS_HEIGHT; X! canvas_args[5].value = (XtArgVal)panel_sw; X! canvas_args[7].value = (XtArgVal)topruler_sw; X canvas_sw = XtCreateWidget("canvas", labelWidgetClass, tool, X canvas_args, XtNumber(canvas_args)); X XtGetValues(canvas_sw, canvas_color_args, XtNumber(canvas_color_args)); X X--- 110,117 ----- X X canvas_args[3].value = CANVAS_WIDTH; X canvas_args[4].value = CANVAS_HEIGHT; X! canvas_args[5].value = (XtArgVal)panel_sw; /* to the right of the panel */ X! canvas_args[7].value = (XtArgVal)topruler_sw; /* below the top ruler */ X canvas_sw = XtCreateWidget("canvas", labelWidgetClass, tool, X canvas_args, XtNumber(canvas_args)); X XtGetValues(canvas_sw, canvas_color_args, XtNumber(canvas_color_args)); END_OF_FILE if test 905 -ne `wc -c <'canvas.c.diff'`; then echo shar: \"'canvas.c.diff'\" unpacked with wrong size! fi # end of 'canvas.c.diff' fi if test -f 'const.h.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'const.h.diff'\" else echo shar: Extracting \"'const.h.diff'\" \(463 characters\) sed "s/^X//" >'const.h.diff' <<'END_OF_FILE' X*** const.h.old Tue Jan 16 17:21:04 1990 X--- const.h Thu Mar 8 16:33:41 1990 X*************** X*** 28,33 X #define SWITCH_ICON_HEIGHT 32 X #define SWITCH_ICON_SPACING 4 X X! #define MAXPRINTERS 2 X X #define DEF_PRINTFONTSIZE 12 /* default printer font size (points) */ X X--- 28,33 ----- X #define SWITCH_ICON_HEIGHT 32 X #define SWITCH_ICON_SPACING 4 X X! #define MAXPRINTERS 3 X X #define DEF_PRINTFONTSIZE 12 /* default printer font size (points) */ END_OF_FILE if test 463 -ne `wc -c <'const.h.diff'`; then echo shar: \"'const.h.diff'\" unpacked with wrong size! fi # end of 'const.h.diff' fi if test -f 'curve.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'curve.c.diff'\" else echo shar: Extracting \"'curve.c.diff'\" \(1182 characters\) sed "s/^X//" >'curve.c.diff' <<'END_OF_FILE' X*** curve.c.old Thu Feb 22 15:58:24 1990 X--- curve.c Fri Mar 9 10:56:32 1990 X*************** X*** 100,107 X x = x + deltax; y = y + deltay; X points[npoints].x = (short) xoff+x; X points[npoints].y = (short) yoff-y; X! if (npoints < MAXPTS) X! npoints++; X dfx = dfx + dfxx * deltax; X dfy = dfy + dfyy * deltay; X if (abs(x - xend) < margin && abs(y - yend) < margin) X X--- 100,106 ----- X x = x + deltax; y = y + deltay; X points[npoints].x = (short) xoff+x; X points[npoints].y = (short) yoff-y; X! npoints++; X dfx = dfx + dfxx * deltax; X dfy = dfy + dfyy * deltay; X if (abs(x - xend) < margin && abs(y - yend) < margin) X*************** X*** 106,112 X dfy = dfy + dfyy * deltay; X if (abs(x - xend) < margin && abs(y - yend) < margin) X test_succeed--; X! } while (test_succeed); X X if (margin == 1) /* end points should touch */ X { X X--- 105,111 ----- X dfy = dfy + dfyy * deltay; X if (abs(x - xend) < margin && abs(y - yend) < margin) X test_succeed--; X! } while (test_succeed && npoints < MAXPTS); X X if (margin == 1) /* end points should touch */ X { END_OF_FILE if test 1182 -ne `wc -c <'curve.c.diff'`; then echo shar: \"'curve.c.diff'\" unpacked with wrong size! fi # end of 'curve.c.diff' fi if test -f 'draw.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'draw.c.diff'\" else echo shar: Extracting \"'draw.c.diff'\" \(1331 characters\) sed "s/^X//" >'draw.c.diff' <<'END_OF_FILE' X*** draw.c.old Fri Feb 16 11:00:46 1990 X--- draw.c Thu Mar 1 09:47:45 1990 X*************** X*** 199,204 X X dx = x2 - x1; dy = y1 - y2; X l = sqrt((double)(dx*dx + dy*dy)); X sina = dy / l; cosa = dx / l; X xb = x2*cosa - y2*sina; X yb = x2*sina + y2*cosa; X X--- 199,206 ----- X X dx = x2 - x1; dy = y1 - y2; X l = sqrt((double)(dx*dx + dy*dy)); X+ if(l == 0) X+ return; X sina = dy / l; cosa = dx / l; X xb = x2*cosa - y2*sina; X yb = x2*sina + y2*cosa; X*************** X*** 330,335 X dx = x2 - x1; X dy = y2 - y1; X leng = sqrt((double)(dx*dx + dy*dy)); X if (leng <= dash_length) { X pw_vector(canvas_pixwin, x1, y1, x2, y2, op, thick); X break; X X--- 332,339 ----- X dx = x2 - x1; X dy = y2 - y1; X leng = sqrt((double)(dx*dx + dy*dy)); X+ if(leng == 0) X+ break; X if (leng <= dash_length) { X pw_vector(canvas_pixwin, x1, y1, x2, y2, op, thick); X break; X*************** X*** 373,378 X pw_put(canvas_pixwin, x2, y2, color, thick); X break; X } X dot_gap = leng / n; X gap_x = dot_gap * dx / leng; X gap_y = dot_gap * dy / leng; X X--- 377,384 ----- X pw_put(canvas_pixwin, x2, y2, color, thick); X break; X } X+ if(leng == 0) X+ break; X dot_gap = leng / n; X gap_x = dot_gap * dx / leng; X gap_y = dot_gap * dy / leng; END_OF_FILE if test 1331 -ne `wc -c <'draw.c.diff'`; then echo shar: \"'draw.c.diff'\" unpacked with wrong size! fi # end of 'draw.c.diff' fi if test -f 'f2ps.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'f2ps.c.diff'\" else echo shar: Extracting \"'f2ps.c.diff'\" \(935 characters\) sed "s/^X//" >'f2ps.c.diff' <<'END_OF_FILE' X*** f2ps.c.old Tue Feb 20 15:51:24 1990 X--- f2ps.c Fri Mar 2 13:06:01 1990 X*************** X*** 14,22 X #include "resources.h" X #include "psfonts.h" X X- #undef cfree X- #undef free X- X #define PAGE_WIDTH 612 /* points; 8.5" */ X #define PAGE_HEIGHT 792 /* points; 11" */ X #define POINT_PER_INCH 72 X X--- 14,19 ----- X #include "resources.h" X #include "psfonts.h" X X #define PAGE_WIDTH 612 /* points; 8.5" */ X #define PAGE_HEIGHT 792 /* points; 11" */ X #define POINT_PER_INCH 72 X*************** X*** 825,842 X { X fprintf(stderr, format, arg1, arg2, arg3, arg4, arg5); X } X- X- #ifdef sparc X- X- FREE ( x ) /*-- disable free --*/ X- char *x ; X- { X- fprintf( stderr, "FREE -- %8x\n", x ) ; X- } X- CFREE ( x ) /*-- disable cfree --*/ X- char *x ; X- { X- fprintf( stderr, "FREE -- %8x\n", x ) ; X- } X- X- #endif sparc X X--- 822,824 ----- X { X fprintf(stderr, format, arg1, arg2, arg3, arg4, arg5); X } END_OF_FILE if test 935 -ne `wc -c <'f2ps.c.diff'`; then echo shar: \"'f2ps.c.diff'\" unpacked with wrong size! fi # end of 'f2ps.c.diff' fi if test -f 'fig.h.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'fig.h.diff'\" else echo shar: Extracting \"'fig.h.diff'\" \(632 characters\) sed "s/^X//" >'fig.h.diff' <<'END_OF_FILE' X*** fig.h.old Fri Mar 2 13:05:22 1990 X--- fig.h Fri Mar 2 16:10:16 1990 X*************** X*** 44,49 X #include <X11/Dialog.h> X #include <X11/Box.h> X #include <X11/Form.h> X #endif X X #ifdef sparc X X--- 44,48 ----- X #include <X11/Dialog.h> X #include <X11/Box.h> X #include <X11/Form.h> X+ #include <X11/Scroll.h> /* XtRFloat lives here! */ X #endif X*************** X*** 45,54 X #include <X11/Box.h> X #include <X11/Form.h> X #endif X- X- #ifdef sparc X- X- #define free(x) FREE(x) X- #define cfree(x) CFREE(x) X- X- #endif sparc X X--- 46,48 ----- X #include <X11/Form.h> X #include <X11/Scroll.h> /* XtRFloat lives here! */ X #endif END_OF_FILE if test 632 -ne `wc -c <'fig.h.diff'`; then echo shar: \"'fig.h.diff'\" unpacked with wrong size! fi # end of 'fig.h.diff' fi if test -f 'global.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'global.c.diff'\" else echo shar: Extracting \"'global.c.diff'\" \(1333 characters\) sed "s/^X//" >'global.c.diff' <<'END_OF_FILE' X*** global.c.old Fri Feb 16 11:01:09 1990 X--- global.c Mon Mar 12 16:05:36 1990 X*************** X*** 97,104 X int flip_axis = -1; X int rotate_angle = 0; X int fill_mode = 0; X! int landscape = 1; X! int print_landscape = 1; /* def. orientation for printer */ X int size_button; /* font size button value */ X int font_button = 0; /* font button value */ X int type_button = T_LEFT_JUSTIFIED; /* text type button value */ X X--- 97,104 ----- X int flip_axis = -1; X int rotate_angle = 0; X int fill_mode = 0; X! int landscape = 0; X! int print_landscape = 0; /* def. orientation for printer */ X int size_button; /* font size button value */ X int font_button = 0; /* font button value */ X int type_button = T_LEFT_JUSTIFIED; /* text type button value */ X*************** X*** 139,145 X char current_file[200] = ""; X int cur_printer=0; X char *printer=""; X! char *printer_list[MAXPRINTERS]={"at6","ap5"}; X int figure_modified = 0; X X /************************ Error messages ****************************/ X X--- 139,145 ----- X char current_file[200] = ""; X int cur_printer=0; X char *printer=""; X! char *printer_list[MAXPRINTERS]={"Specify","Default","File"}; X int figure_modified = 0; X X /************************ Error messages ****************************/ END_OF_FILE if test 1333 -ne `wc -c <'global.c.diff'`; then echo shar: \"'global.c.diff'\" unpacked with wrong size! fi # end of 'global.c.diff' fi if test -f 'main.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'main.c.diff'\" else echo shar: Extracting \"'main.c.diff'\" \(4437 characters\) sed "s/^X//" >'main.c.diff' <<'END_OF_FILE' X*** main.c.old Tue Feb 20 10:59:26 1990 X--- main.c Mon Mar 12 16:05:06 1990 X*************** X*** 123,129 X int argc; X char *argv[]; X { X! #define NCHILDREN 10 X TOOL form, children[NCHILDREN]; X Arg tmp_arg[2]; X int ichild; X X--- 123,129 ----- X int argc; X char *argv[]; X { X! #define NCHILDREN 8 X TOOL form, children[NCHILDREN]; X Arg tmp_arg[4]; X int ichild; X*************** X*** 125,131 X { X #define NCHILDREN 10 X TOOL form, children[NCHILDREN]; X! Arg tmp_arg[2]; X int ichild; X char tstr[10]; X XWMHints *wmhints; X X--- 125,131 ----- X { X #define NCHILDREN 8 X TOOL form, children[NCHILDREN]; X! Arg tmp_arg[4]; X int ichild; X char tstr[10]; X XWMHints *wmhints; X*************** X*** 149,156 X if (argc > 1) X file = argv[1]; X X! if (landscape==0) /* match print and screen format to start */ X! print_landscape=0; X X tool_d = XtDisplay(tool); X tool_s = XtScreen(tool); X X--- 149,155 ----- X if (argc > 1) X file = argv[1]; X X! print_landscape = landscape; /* match print and screen format to start */ X X tool_d = XtDisplay(tool); X tool_s = XtScreen(tool); X*************** X*** 238,246 X children[ichild++] = msg_sw; /* message window */ X children[ichild++] = sideruler_sw; /* side ruler */ X children[ichild++] = panel2_sw; /* lower button panel */ X! children[ichild++] = fill_panel; /* current fill pattern window */ X! children[ichild++] = line_thick_panel; /* current line thickness window */ X! children[ichild++] = radius_panel; /* current arc-corner box radius window */ X X /* until the following XtRealizeWidget() is called, there X are NO windows in existence */ X X--- 237,243 ----- X children[ichild++] = msg_sw; /* message window */ X children[ichild++] = sideruler_sw; /* side ruler */ X children[ichild++] = panel2_sw; /* lower button panel */ X! children[ichild++] = ind_box; /* fill/line/radius indicators */ X X /* until the following XtRealizeWidget() is called, there X are NO windows in existence */ X*************** X*** 254,260 X wmhints->input = True; X XSetWMHints(tool_d, XtWindow(tool),wmhints); X X! if( RHS_PANEL ) X { X XtSetArg(tmp_arg[0], XtNfromHoriz, 0); X XtSetArg(tmp_arg[1], XtNhorizDistance, RULER_WIDTH+2); X X--- 251,257 ----- X wmhints->input = True; X XSetWMHints(tool_d, XtWindow(tool),wmhints); X X! if( RHS_PANEL ) /* side button panel is on right size */ X { X XtSetArg(tmp_arg[0], XtNfromHoriz, 0); X XtSetArg(tmp_arg[1], XtNhorizDistance, RULER_WIDTH+2); X*************** X*** 267,273 X XtSetArg(tmp_arg[1], XtNfromVert, topruler_sw); X XtSetValues(canvas_sw, tmp_arg, 2); X XtManageChild(msg_sw); X! XtSetArg(tmp_arg[0], XtNfromHoriz, canvas_sw); X XtSetArg(tmp_arg[1], XtNfromVert, 0); X XtSetValues(panel_sw, tmp_arg, 2); X XtSetArg(tmp_arg[0], XtNfromHoriz, sideruler_sw); X X--- 264,273 ----- X XtSetArg(tmp_arg[1], XtNfromVert, topruler_sw); X XtSetValues(canvas_sw, tmp_arg, 2); X XtManageChild(msg_sw); X! X! /* relocate the side button panel */ X! XtUnmanageChild(panel_sw); X! XtSetArg(tmp_arg[0], XtNfromHoriz, canvas_sw); /* panel right of canvas */ X XtSetArg(tmp_arg[1], XtNfromVert, 0); X XtSetArg(tmp_arg[2], XtNleft, XtChainRight); /* chain to right of form */ X XtSetArg(tmp_arg[3], XtNright, XtChainRight); X*************** X*** 269,280 X XtManageChild(msg_sw); X XtSetArg(tmp_arg[0], XtNfromHoriz, canvas_sw); X XtSetArg(tmp_arg[1], XtNfromVert, 0); X! XtSetValues(panel_sw, tmp_arg, 2); X! XtSetArg(tmp_arg[0], XtNfromHoriz, sideruler_sw); X! XtSetArg(tmp_arg[1], XtNfromVert, canvas_sw); X! XtSetValues(msg_sw, tmp_arg, 2); X! XtUnmanageChild(msg_sw); X! XtManageChild(msg_sw); X } X X init_gc(); X X--- 269,286 ----- X XtUnmanageChild(panel_sw); X XtSetArg(tmp_arg[0], XtNfromHoriz, canvas_sw); /* panel right of canvas */ X XtSetArg(tmp_arg[1], XtNfromVert, 0); X! XtSetArg(tmp_arg[2], XtNleft, XtChainRight); /* chain to right of form */ X! XtSetArg(tmp_arg[3], XtNright, XtChainRight); X! XtSetValues(panel_sw, tmp_arg, 4); X! XtManageChild(panel_sw); X! X! /* relocate the indicator panel */ X! XtUnmanageChild(ind_box); X! XtSetArg(tmp_arg[0], XtNfromHoriz, canvas_sw); /* right of canvas */ X! XtSetArg(tmp_arg[1], XtNleft, XtChainRight); /* chain to right of form */ X! XtSetArg(tmp_arg[2], XtNright, XtChainRight); X! XtSetValues(ind_box, tmp_arg, 3); X! XtManageChild(ind_box); X } X X init_gc(); END_OF_FILE if test 4437 -ne `wc -c <'main.c.diff'`; then echo shar: \"'main.c.diff'\" unpacked with wrong size! fi # end of 'main.c.diff' fi if test -f 'msgsw.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'msgsw.c.diff'\" else echo shar: Extracting \"'msgsw.c.diff'\" \(853 characters\) sed "s/^X//" >'msgsw.c.diff' <<'END_OF_FILE' X*** msgsw.c.old Wed Mar 7 10:01:35 1990 X--- msgsw.c Wed Mar 7 10:01:07 1990 X*************** X*** 81,88 X TOOL tool; X { X msg_args[2].value = PANEL_WID+CANVAS_WIDTH+SIDERULER_WIDTH-FONT_PANE_WIDTH; X! msg_args[5].value = (XtArgVal)psfont; /* to the right of font ind. */ X! msg_args[7].value = (XtArgVal)canvas_sw; /* just below the canvas */ X msg_sw = XtCreateManagedWidget("message", commandWidgetClass, tool, X msg_args, XtNumber(msg_args)); X return (1); X X--- 81,88 ----- X TOOL tool; X { X msg_args[2].value = PANEL_WID+CANVAS_WIDTH+SIDERULER_WIDTH-FONT_PANE_WIDTH; X! msg_args[5].value = (XtArgVal)psfont; /* to the right of font ind. */ X! msg_args[7].value = (XtArgVal)canvas_sw; /* just below the canvas */ X msg_sw = XtCreateManagedWidget("message", commandWidgetClass, tool, X msg_args, XtNumber(msg_args)); X return (1); END_OF_FILE if test 853 -ne `wc -c <'msgsw.c.diff'`; then echo shar: \"'msgsw.c.diff'\" unpacked with wrong size! fi # end of 'msgsw.c.diff' fi if test -f 'panel2.h.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'panel2.h.diff'\" else echo shar: Extracting \"'panel2.h.diff'\" \(4685 characters\) sed "s/^X//" >'panel2.h.diff' <<'END_OF_FILE' X*** panel2.h.old Mon Mar 5 10:15:18 1990 X--- panel2.h Mon Mar 5 10:08:35 1990 X*************** X*** 217,228 X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff, X 0x3f,0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0x00,0xe0, X! 0xff,0xff,0x3f,0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00, X! 0x00,0x20,0x00,0x07,0x20,0x00,0x00,0x00,0x20,0x00,0x07,0x10, X! 0x00,0x00,0x00,0x20,0x00,0x00,0x08,0x00,0x00,0x00,0xe0,0xff, X! 0xff,0x07,0x00,0x00,0x00,0x78,0x00,0x00,0x04,0x00,0x00,0x00, X! 0x48,0xfe,0xff,0x04,0x00,0x00,0x00,0x78,0x00,0x00,0x04,0x00, X! 0x00,0x00,0x40,0xfe,0xff,0x04,0x00,0x00,0x00,0x40,0x00,0x00, X 0x04,0x00,0x00,0x00,0xc0,0xff,0xff,0x07,0x00,0x00,0x00,0x00, X 0x07,0xc0,0x01,0x00,0x00,0x00,0x00,0x02,0x80,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0e,0xc0,0x00, X X--- 217,228 ----- X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xff,0xff, X 0x3f,0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0x00,0xe0, X! 0xff,0xff,0x3f,0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x0e,0xc0, X! 0x00,0x20,0x00,0x07,0x20,0x11,0x80,0x00,0x20,0x00,0x07,0x10, X! 0x01,0x80,0x00,0x20,0x00,0x00,0x08,0x01,0x87,0x00,0xe0,0xff, X! 0xff,0x07,0x8e,0x88,0x00,0x78,0x00,0x00,0x04,0x90,0x8f,0x00, X! 0x48,0xfe,0xff,0x04,0x90,0x80,0x00,0x78,0x00,0x00,0x04,0x91, X! 0x88,0x00,0x40,0xfe,0xff,0x04,0x0e,0xc7,0x05,0x40,0x00,0x00, X 0x04,0x00,0x00,0x00,0xc0,0xff,0xff,0x07,0x00,0x00,0x00,0x00, X 0x07,0xc0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X*************** X*** 224,236 X 0x48,0xfe,0xff,0x04,0x00,0x00,0x00,0x78,0x00,0x00,0x04,0x00, X 0x00,0x00,0x40,0xfe,0xff,0x04,0x00,0x00,0x00,0x40,0x00,0x00, X 0x04,0x00,0x00,0x00,0xc0,0xff,0xff,0x07,0x00,0x00,0x00,0x00, X! 0x07,0xc0,0x01,0x00,0x00,0x00,0x00,0x02,0x80,0x00,0x00,0x00, X! 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0e,0xc0,0x00, X! 0x00,0x00,0x00,0x00,0x11,0x80,0x00,0x00,0x04,0x00,0x00,0x01, X! 0x80,0x00,0x00,0x04,0x00,0x00,0x01,0x87,0x70,0x38,0x1e,0x00, X! 0x00,0x8e,0x88,0x88,0x44,0x04,0x00,0x00,0x90,0x8f,0xf8,0x04, X! 0x04,0x00,0x00,0x90,0x80,0x08,0x04,0x04,0x00,0x00,0x91,0x88, X! 0x88,0x44,0x24,0x00,0x00,0x0e,0xc7,0x71,0x38,0x18,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; X mpr_static(print_sel_ic, 54, 32, 1, print_sel_image); X X--- 224,230 ----- X 0x48,0xfe,0xff,0x04,0x90,0x80,0x00,0x78,0x00,0x00,0x04,0x91, X 0x88,0x00,0x40,0xfe,0xff,0x04,0x0e,0xc7,0x05,0x40,0x00,0x00, X 0x04,0x00,0x00,0x00,0xc0,0xff,0xff,0x07,0x00,0x00,0x00,0x00, X! 0x07,0xc0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X*************** X*** 232,237 X 0x04,0x00,0x00,0x90,0x80,0x08,0x04,0x04,0x00,0x00,0x91,0x88, X 0x88,0x44,0x24,0x00,0x00,0x0e,0xc7,0x71,0x38,0x18,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; X mpr_static(print_sel_ic, 54, 32, 1, print_sel_image); X X X--- 226,237 ----- X 0x04,0x00,0x00,0x00,0xc0,0xff,0xff,0x07,0x00,0x00,0x00,0x00, X 0x07,0xc0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; X mpr_static(print_sel_ic,54,32,1,print_sel_image); X X*************** X*** 233,239 X 0x88,0x44,0x24,0x00,0x00,0x0e,0xc7,0x71,0x38,0x18,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; X! mpr_static(print_sel_ic, 54, 32, 1, print_sel_image); X X static char size_image[224] = { X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X X--- 233,239 ----- X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; X! mpr_static(print_sel_ic,54,32,1,print_sel_image); X X static char size_image[224] = { X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, END_OF_FILE if test 4685 -ne `wc -c <'panel2.h.diff'`; then echo shar: \"'panel2.h.diff'\" unpacked with wrong size! fi # end of 'panel2.h.diff' fi if test -f 'patchlevel.h.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'patchlevel.h.diff'\" else echo shar: Extracting \"'patchlevel.h.diff'\" \(169 characters\) sed "s/^X//" >'patchlevel.h.diff' <<'END_OF_FILE' X*** patchlevel.h.old Tue Feb 27 09:22:42 1990 X--- patchlevel.h Thu Mar 1 13:18:06 1990 X*************** X*** 1 X! #define PATCHLEVEL 3 X X--- 1 ----- X! #define PATCHLEVEL 4 END_OF_FILE if test 169 -ne `wc -c <'patchlevel.h.diff'`; then echo shar: \"'patchlevel.h.diff'\" unpacked with wrong size! fi # end of 'patchlevel.h.diff' fi if test -f 'popup.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'popup.c.diff'\" else echo shar: Extracting \"'popup.c.diff'\" \(776 characters\) sed "s/^X//" >'popup.c.diff' <<'END_OF_FILE' X*** popup.c.old Fri Feb 16 11:01:22 1990 X--- popup.c Fri Mar 9 13:50:30 1990 X*************** X*** 185,194 X redisplay_canvas(); X break; X case F_EDIT : X! if (!no_object() && figure_modified) { X! if (wmgr_confirm(canvas_swfd, edit_msg) != -1) break; X! } X! init_msg_receiving(edit_file, "Edit file : "); X break; X case F_PRINT: X print_figure(); X X--- 185,191 ----- X redisplay_canvas(); X break; X case F_EDIT : X! edit(); X break; X case F_PRINT: X print_figure(); X*************** X*** 256,258 X } X } X X X--- 253,262 ----- X } X } X X+ edit() X+ { X+ if (!no_object() && figure_modified) X+ if (wmgr_confirm(canvas_swfd, edit_msg) != -1) X+ return; X+ init_msg_receiving(edit_file, "Edit file : "); X+ } END_OF_FILE if test 776 -ne `wc -c <'popup.c.diff'`; then echo shar: \"'popup.c.diff'\" unpacked with wrong size! fi # end of 'popup.c.diff' fi if test -f 'print.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'print.c.diff'\" else echo shar: Extracting \"'print.c.diff'\" \(4419 characters\) sed "s/^X//" >'print.c.diff' <<'END_OF_FILE' X*** print.c.old Tue Jan 16 17:21:33 1990 X--- print.c Mon Mar 5 10:19:38 1990 X*************** X*** 27,35 X "Figure hasn't been saved, PRINT with LEFT button, CANCEL with MIDDLE or RIGHT"; X X print_figure() X! { X! if (current_file[0]==0) X! { X put_msg("NO FILE TO PRINT"); X XBell(tool_d,50); X } X X--- 27,36 ----- X "Figure hasn't been saved, PRINT with LEFT button, CANCEL with MIDDLE or RIGHT"; X X print_figure() X! { X! int print_to_specified_printer(); X! int print_to_file(); X! if (current_file[0]==0) { X put_msg("NO FILE TO PRINT"); X XBell(tool_d,50); X } X*************** X*** 32,40 X { X put_msg("NO FILE TO PRINT"); X XBell(tool_d,50); X! } X! else X! { X if (figure_modified) /* modified without saving, confirm print */ X if (wmgr_confirm(canvas_swfd, conf_prnt) != -1) X return; X X--- 33,40 ----- X if (current_file[0]==0) { X put_msg("NO FILE TO PRINT"); X XBell(tool_d,50); X! } X! else { X if (figure_modified) /* modified without saving, confirm print */ X if (wmgr_confirm(canvas_swfd, conf_prnt) != -1) X return; X*************** X*** 38,44 X if (figure_modified) /* modified without saving, confirm print */ X if (wmgr_confirm(canvas_swfd, conf_prnt) != -1) X return; X! put_msg("Print figure %s on printer %s in %s mode", X current_file,printer,print_landscape? "LANDSCAPE":"PORTRAIT"); X sprintf(prcmd,"f2ps -c %s %s | lpr -J %s -P%s", X print_landscape? "-L":"-P", X X--- 38,46 ----- X if (figure_modified) /* modified without saving, confirm print */ X if (wmgr_confirm(canvas_swfd, conf_prnt) != -1) X return; X! X! if (! strcmp("Default", printer)) { X! put_msg("Print figure %s on printer %s in %s mode", X current_file,printer,print_landscape? "LANDSCAPE":"PORTRAIT"); X sprintf(prcmd,"f2ps -c %s %s | lpr -J %s", X print_landscape? "-L":"-P", X*************** X*** 40,50 X return; X put_msg("Print figure %s on printer %s in %s mode", X current_file,printer,print_landscape? "LANDSCAPE":"PORTRAIT"); X! sprintf(prcmd,"f2ps -c %s %s | lpr -J %s -P%s", X! print_landscape? "-L":"-P", X! current_file, X! current_file, X! printer); X if (system(prcmd)==127) X put_msg("Error in printing"); X } X X--- 42,65 ----- X if (! strcmp("Default", printer)) { X put_msg("Print figure %s on printer %s in %s mode", X current_file,printer,print_landscape? "LANDSCAPE":"PORTRAIT"); X! sprintf(prcmd,"f2ps -c %s %s | lpr -J %s", X! print_landscape? "-L":"-P", X! current_file, X! current_file); X! } X! else if (! strcmp("File", printer)) X! init_msg_receiving(print_to_file, "Output file : "); X! else if (! strcmp("Specify", printer)) X! init_msg_receiving(print_to_specified_printer, "Printer : "); X! else { /* default */ X! put_msg("Print figure %s on printer %s in %s mode", X! current_file,printer,print_landscape? "LANDSCAPE":"PORTRAIT"); X! sprintf(prcmd,"f2ps -c %s %s | lpr -J %s -P%s", X! print_landscape? "-L":"-P", X! current_file, X! current_file, X! printer); X! } X if (system(prcmd)==127) X put_msg("Error in printing"); X } X*************** X*** 47,51 X printer); X if (system(prcmd)==127) X put_msg("Error in printing"); X- } X } X X--- 62,67 ----- X } X if (system(prcmd)==127) X put_msg("Error in printing"); X } X } X X*************** X*** 49,51 X put_msg("Error in printing"); X } X } X X--- 63,97 ----- X if (system(prcmd)==127) X put_msg("Error in printing"); X } X+ } X+ X+ print_to_file(file) X+ char *file; X+ { X+ if (*file == 0) { X+ put_msg("Empty name"); X+ return; X+ } X+ sprintf(prcmd,"f2ps -c %s %s > %s", X+ print_landscape? "-L":"-P", X+ current_file, X+ file); X+ put_msg("Print figure %s to file %s in %s mode", X+ current_file,file,print_landscape? "LANDSCAPE":"PORTRAIT"); X+ } X+ X+ print_to_specified_printer(specified_printer) X+ char *specified_printer; X+ { X+ if (*specified_printer == 0) { X+ put_msg("Empty name"); X+ return; X+ } X+ put_msg("Print figure %s on printer %s in %s mode", X+ current_file,specified_printer,print_landscape? "LANDSCAPE":"PORTRAIT"); X+ sprintf(prcmd,"f2ps -c %s %s | lpr -J %s -P%s", X+ print_landscape? "-L":"-P", X+ current_file, X+ current_file, X+ specified_printer); X+ } END_OF_FILE if test 4419 -ne `wc -c <'print.c.diff'`; then echo shar: \"'print.c.diff'\" unpacked with wrong size! fi # end of 'print.c.diff' fi if test -f 'printfonts.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'printfonts.c.diff'\" else echo shar: Extracting \"'printfonts.c.diff'\" \(4167 characters\) sed "s/^X//" >'printfonts.c.diff' <<'END_OF_FILE' X*** printfonts.c.old Tue Jan 16 17:22:08 1990 X--- printfonts.c Fri Mar 9 16:48:55 1990 X*************** X*** 76,83 X /* 1 */ { XtNy, (XtArgVal)0 }, X /* 2 */ { XtNwidth, (XtArgVal) FONT_PANE_WIDTH }, X /* 3 */ { XtNheight, (XtArgVal) MSG_HEIGHT }, /* same height as message panel */ X! /* 4 */ { XtNfromHoriz, (XtArgVal) NULL }, /* flush with panel indicator */ X! /* 5 */ { XtNhorizDistance, (XtArgVal) -3*SWITCH_ICON_WIDTH-6*SWITCH_ICON_SPACING }, X /* 6 */ { XtNfromVert, (XtArgVal) NULL }, X /* 7 */ { XtNvertDistance, (XtArgVal) 1 }, /* dist from canvas_sw window */ X /* 8 */ { XtNbitmap, (XtArgVal) NULL }, X X--- 76,83 ----- X /* 1 */ { XtNy, (XtArgVal)0 }, X /* 2 */ { XtNwidth, (XtArgVal) FONT_PANE_WIDTH }, X /* 3 */ { XtNheight, (XtArgVal) MSG_HEIGHT }, /* same height as message panel */ X! /* 4 */ { XtNfromHoriz, (XtArgVal) NULL }, /* left side of main form */ X! /* 5 */ { XtNhorizDistance, (XtArgVal) SWITCH_ICON_SPACING }, X /* 6 */ { XtNfromVert, (XtArgVal) NULL }, X /* 7 */ { XtNvertDistance, (XtArgVal) 1 }, /* dist from canvas_sw window */ X /* 8 */ { XtNbitmap, (XtArgVal) NULL }, X*************** X*** 99,105 X XtTranslations popdown_actions, pane_actions; X Arg my_list; X X! fontmenu = XtCreatePopupShell("popup_menu", overrideShellWidgetClass, tool, X fontmenu_args, XtNumber(fontmenu_args)); X popdown_actions = XtParseTranslationTable( X "<Btn1Up>:MenuPopdown()\n"); X X--- 99,105 ----- X XtTranslations popdown_actions, pane_actions; X Arg my_list; X X! fontmenu = XtCreatePopupShell("font_menu", overrideShellWidgetClass, tool, X fontmenu_args, XtNumber(fontmenu_args)); X popdown_actions = XtParseTranslationTable( X "<Btn1Up>:MenuPopdown()\n"); X*************** X*** 130,135 X fontpanes, pane_args, XtNumber(pane_args)); X XtOverrideTranslations(fontpane[0], pane_actions); X X for (i = 1; i < NUMFONTS; ++i) X { X mi = &fontmenu_items[i]; X X--- 130,136 ----- X fontpanes, pane_args, XtNumber(pane_args)); X XtOverrideTranslations(fontpane[0], pane_actions); X X+ X for (i = 1; i < NUMFONTS; ++i) X { X mi = &fontmenu_items[i]; X*************** X*** 142,148 X /* Now set up the font indicator window */ X X /* position */ X- psfont_args[4].value = (XtArgVal)panel_sw; /* flush left with panel window */ X psfont_args[6].value = (XtArgVal)canvas_sw; /* just below the canvas window */ X psfont = XtCreateManagedWidget("indicator", labelWidgetClass, tool, X psfont_args, XtNumber(psfont_args)); X X--- 143,148 ----- X /* Now set up the font indicator window */ X X /* position */ X psfont_args[6].value = (XtArgVal)canvas_sw; /* just below the canvas window */ X psfont = XtCreateManagedWidget("font_indicator", labelWidgetClass, tool, X psfont_args, XtNumber(psfont_args)); X*************** X*** 144,150 X /* position */ X psfont_args[4].value = (XtArgVal)panel_sw; /* flush left with panel window */ X psfont_args[6].value = (XtArgVal)canvas_sw; /* just below the canvas window */ X! psfont = XtCreateManagedWidget("indicator", labelWidgetClass, tool, X psfont_args, XtNumber(psfont_args)); X return (1); X } X X--- 144,150 ----- X X /* position */ X psfont_args[6].value = (XtArgVal)canvas_sw; /* just below the canvas window */ X! psfont = XtCreateManagedWidget("font_indicator", labelWidgetClass, tool, X psfont_args, XtNumber(psfont_args)); X return (1); X } X*************** X*** 159,167 X /* Create the bitmaps */ X X for (i=0; i<NUMFONTS; i++) X! font_menu_bitmaps[i] = XCreatePixmapFromBitmapData(tool_d, XtWindow(psfont), X! font_menu_bits[i], FONT_PANE_WIDTH, FONT_PANE_HEIGHT, X! x_bg_color.pixel, x_fg_color.pixel, DefaultDepthOfScreen(tool_s)); X psfont_args[8].value = (XtArgVal) font_menu_bitmaps[0]; X XtSetValues(psfont, &psfont_args[8], 1); /* show default font in window */ X X X--- 159,166 ----- X /* Create the bitmaps */ X X for (i=0; i<NUMFONTS; i++) X! font_menu_bitmaps[i] = XCreateBitmapFromData(tool_d,XtWindow(psfont), X! font_menu_bits[i], FONT_PANE_WIDTH, FONT_PANE_HEIGHT); X psfont_args[8].value = (XtArgVal) font_menu_bitmaps[0]; X XtSetValues(psfont, &psfont_args[8], 1); /* show default font in window */ X END_OF_FILE if test 4167 -ne `wc -c <'printfonts.c.diff'`; then echo shar: \"'printfonts.c.diff'\" unpacked with wrong size! fi # end of 'printfonts.c.diff' fi if test -f 'psbits.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'psbits.c.diff'\" else echo shar: Extracting \"'psbits.c.diff'\" \(1490 characters\) sed "s/^X//" >'psbits.c.diff' <<'END_OF_FILE' X*** psbits.c.old Mon Feb 19 11:26:16 1990 X--- psbits.c Fri Mar 2 11:51:20 1990 X*************** X*** 11,16 X */ X X /* These are the bitmaps for the font menu panes */ X /* Part 1 of 3 */ X X #include <X11/Xlib.h> X X--- 11,18 ----- X */ X X /* These are the bitmaps for the font menu panes */ X+ X+ X /* Part 1 of 3 */ X X #include <X11/Xlib.h> X*************** X*** 16,21 X #include <X11/Xlib.h> X #include "psfonts.h" X X static char AvantGarde_BookOblique_bits[] = { X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X X--- 18,24 ----- X #include <X11/Xlib.h> X #include "psfonts.h" X X+ #ifndef TFX X static char AvantGarde_BookOblique_bits[] = { X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X*************** X*** 772,777 X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }; X X /* get part 2 */ X #include "psbits2.c" X X--- 775,781 ----- X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }; X+ #endif X X /* get part 2 */ X #include "psbits2.c" X*************** X*** 775,777 X X /* get part 2 */ X #include "psbits2.c" X X--- 779,782 ----- X X /* get part 2 */ X #include "psbits2.c" X+ END_OF_FILE if test 1490 -ne `wc -c <'psbits.c.diff'`; then echo shar: \"'psbits.c.diff'\" unpacked with wrong size! fi # end of 'psbits.c.diff' fi if test -f 'psbits2.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'psbits2.c.diff'\" else echo shar: Extracting \"'psbits2.c.diff'\" \(1125 characters\) sed "s/^X//" >'psbits2.c.diff' <<'END_OF_FILE' X*** psbits2.c.old Mon Feb 19 11:29:21 1990 X--- psbits2.c Fri Mar 2 11:51:52 1990 X*************** X*** 13,18 X /* These are the bitmaps for the font menu panes */ X /* Part 2 of 3 */ X X static char Helvetica_Bold_bits[] = { X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X X--- 13,19 ----- X /* These are the bitmaps for the font menu panes */ X /* Part 2 of 3 */ X X+ #ifndef TFX X static char Helvetica_Bold_bits[] = { X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X*************** X*** 769,774 X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }; X X /* get part 3 */ X #include "psbits3.c" X X--- 770,776 ----- X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, X 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }; X+ #endif X X /* get part 3 */ X #include "psbits3.c" END_OF_FILE if test 1125 -ne `wc -c <'psbits2.c.diff'`; then echo shar: \"'psbits2.c.diff'\" unpacked with wrong size! fi # end of 'psbits2.c.diff' fi if test -f 'psfonts.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'psfonts.c.diff'\" else echo shar: Extracting \"'psfonts.c.diff'\" \(2154 characters\) sed "s/^X//" >'psfonts.c.diff' <<'END_OF_FILE' X*** psfonts.c.old Tue Jan 16 17:22:33 1990 X--- psfonts.c Wed Mar 7 16:08:01 1990 X*************** X*** 1,5 X #include <X11/Xlib.h> X #include "psfonts.h" X #define NULL 0 X X /* printer font names for indicator window */ X X--- 1,6 ----- X #include <X11/Xlib.h> X #include "psfonts.h" X+ X #define NULL 0 X X /* printer font names for indicator window */ X*************** X*** 4,9 X X /* printer font names for indicator window */ X X struct _fstruct fontnames[NUMFONTS] = { X {"Times-Roman", "-adobe-times-medium-r-*--*", NULL}, X {"Times-Italic", "-adobe-times-medium-i-*--*", NULL}, X X--- 5,11 ----- X X /* printer font names for indicator window */ X X+ #ifndef TFX X struct _fstruct fontnames[NUMFONTS] = { X {"Times-Roman", "-adobe-times-medium-r-*--*", NULL}, X {"Times-Italic", "-adobe-times-medium-i-*--*", NULL}, X*************** X*** 38,43 X {"Palatino-Bold", "NONE", NULL}, X {"Palatino-BoldItalic", "NONE", NULL}, X {"Symbol", "*-symbol-medium-r-*--*", NULL}, X! {"ZapfChancery-MediumItalic", "zapfchancery-mediumitalic--*", NULL}, X! {"ZapfDingbats", "zapfdingbats--*", NULL}, X }; X X--- 40,47 ----- X {"Palatino-Bold", "NONE", NULL}, X {"Palatino-BoldItalic", "NONE", NULL}, X {"Symbol", "*-symbol-medium-r-*--*", NULL}, X! {"ZapfChancery-MediumItalic", "-*-zapfchancery-medium-i-*--*", NULL}, X! {"ZapfDingbats", "-*-zapfdingbats-*-*-*--*", NULL}, X }; X #else X struct _fstruct fontnames[NUMFONTS] = { X*************** X*** 41,43 X {"ZapfChancery-MediumItalic", "zapfchancery-mediumitalic--*", NULL}, X {"ZapfDingbats", "zapfdingbats--*", NULL}, X }; X X--- 43,55 ----- X {"ZapfChancery-MediumItalic", "-*-zapfchancery-medium-i-*--*", NULL}, X {"ZapfDingbats", "-*-zapfdingbats-*-*-*--*", NULL}, X }; X+ #else X+ struct _fstruct fontnames[NUMFONTS] = { X+ {"Default", "-adobe-times-medium-r-*--*", NULL}, X+ {"Roman", "-adobe-times-medium-r-*--*", NULL}, X+ {"Bold", "-adobe-times-bold-r-*--*", NULL}, X+ {"Italic", "-adobe-times-medium-i-*--*", NULL}, X+ {"Modern", "-adobe-helvetica-medium-r-*--*", NULL}, X+ {"Typewriter", "-adobe-courier-medium-r-*--*", NULL}, X+ }; X+ #endif END_OF_FILE if test 2154 -ne `wc -c <'psfonts.c.diff'`; then echo shar: \"'psfonts.c.diff'\" unpacked with wrong size! fi # end of 'psfonts.c.diff' fi if test -f 'psfonts.h.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'psfonts.h.diff'\" else echo shar: Extracting \"'psfonts.h.diff'\" \(1156 characters\) sed "s/^X//" >'psfonts.h.diff' <<'END_OF_FILE' X*** psfonts.h.old Tue Jan 16 17:22:18 1990 X--- psfonts.h Fri Mar 2 12:05:46 1990 X*************** X*** 1,5 X- #define FONT_PANE_WIDTH 290 X- #define FONT_PANE_HEIGHT 20 X #define MIN_P_SIZE 6 X #define MAX_P_SIZE 30 X #define NUMFONTS 35 X X--- 1,3 ----- X #define MIN_P_SIZE 6 X #define MAX_P_SIZE 30 X X*************** X*** 2,7 X #define FONT_PANE_HEIGHT 20 X #define MIN_P_SIZE 6 X #define MAX_P_SIZE 30 X #define NUMFONTS 35 X X /* element of linked list for each font X X--- 1,9 ----- X #define MIN_P_SIZE 6 X #define MAX_P_SIZE 30 X+ X+ #ifndef TFX X+ #define FONT_PANE_WIDTH 290 X+ #define FONT_PANE_HEIGHT 20 X #define NUMFONTS 35 X #else X #define FONT_PANE_WIDTH 112 X*************** X*** 3,8 X #define MIN_P_SIZE 6 X #define MAX_P_SIZE 30 X #define NUMFONTS 35 X X /* element of linked list for each font X The head of list is for the different font NAMES, X X--- 5,15 ----- X #define FONT_PANE_WIDTH 290 X #define FONT_PANE_HEIGHT 20 X #define NUMFONTS 35 X+ #else X+ #define FONT_PANE_WIDTH 112 X+ #define FONT_PANE_HEIGHT 20 X+ #define NUMFONTS 6 X+ #endif X X /* element of linked list for each font X The head of list is for the different font NAMES, END_OF_FILE if test 1156 -ne `wc -c <'psfonts.h.diff'`; then echo shar: \"'psfonts.h.diff'\" unpacked with wrong size! fi # end of 'psfonts.h.diff' fi if test -f 'read.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'read.c.diff'\" else echo shar: Extracting \"'read.c.diff'\" \(558 characters\) sed "s/^X//" >'read.c.diff' <<'END_OF_FILE' X*** read.c.old Thu Feb 15 11:45:44 1990 X--- read.c Fri Mar 2 10:51:14 1990 X*************** X*** 584,590 X X Text_malloc(t); X t->next = NULL; X! n = sscanf(buf,"%*d%d%d%d%d%d%d%lf%d%d%d%d%d %[^\1]", X &t->type, &t->font, &t->size, &t->pen, X &t->color, &t->depth, &t->angle, X &t->style, &t->height, &t->length, X X--- 584,590 ----- X X Text_malloc(t); X t->next = NULL; X! n = sscanf(buf,"%*d%d%d%d%d%d%d%f%d%d%d%d%d %[^\1]", X &t->type, &t->font, &t->size, &t->pen, X &t->color, &t->depth, &t->angle, X &t->style, &t->height, &t->length, END_OF_FILE if test 558 -ne `wc -c <'read.c.diff'`; then echo shar: \"'read.c.diff'\" unpacked with wrong size! fi # end of 'read.c.diff' fi if test -f 'read1_3.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'read1_3.c.diff'\" else echo shar: Extracting \"'read1_3.c.diff'\" \(354 characters\) sed "s/^X//" >'read1_3.c.diff' <<'END_OF_FILE' X*** read1_3.c.old Tue Jan 16 17:21:08 1990 X--- read1_3.c Thu Mar 1 19:48:50 1990 X*************** X*** 451,456 X return(NULL); X } X strcpy(t->cstring, buf); X! if (t->size == 0) t->size == 18; X return(t); X } X X--- 451,456 ----- X return(NULL); X } X strcpy(t->cstring, buf); X! if (t->size == 0) t->size = 18; X return(t); X } END_OF_FILE if test 354 -ne `wc -c <'read1_3.c.diff'`; then echo shar: \"'read1_3.c.diff'\" unpacked with wrong size! fi # end of 'read1_3.c.diff' fi if test -f 'resources.h.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'resources.h.diff'\" else echo shar: Extracting \"'resources.h.diff'\" \(1438 characters\) sed "s/^X//" >'resources.h.diff' <<'END_OF_FILE' X*** resources.h.old Fri Feb 16 15:02:19 1990 X--- resources.h Mon Mar 12 11:18:31 1990 X*************** X*** 125,130 X msg_sw, X panel_sw, X panel2_sw, X fill_panel, X line_thick_panel, X radius_panel, X X--- 125,131 ----- X msg_sw, X panel_sw, X panel2_sw, X+ ind_box, /* thick/radius/fill enclosing widget */ X fill_panel, X line_thick_panel, X radius_panel, X*************** X*** 141,146 X EXTERN Display *tool_d; X EXTERN Screen *tool_s; X EXTERN int tool_sn; X #define NUMFILLPATS 21 X EXTERN int cur_gcfont[0x10],cur_gcfontsize[0x10]; /* font/size currently in each GC */ X EXTERN GC gc, bold_gc, gccache[0x10], topgc, sidegc, X X--- 142,149 ----- X EXTERN Display *tool_d; X EXTERN Screen *tool_s; X EXTERN int tool_sn; X+ X+ #ifndef TFX X #define NUMFILLPATS 21 X #else X #define NUMFILLPATS 5 X*************** X*** 142,147 X EXTERN Screen *tool_s; X EXTERN int tool_sn; X #define NUMFILLPATS 21 X EXTERN int cur_gcfont[0x10],cur_gcfontsize[0x10]; /* font/size currently in each GC */ X EXTERN GC gc, bold_gc, gccache[0x10], topgc, sidegc, X fill_gc[NUMFILLPATS], /* area fill gc's */ X X--- 145,154 ----- X X #ifndef TFX X #define NUMFILLPATS 21 X+ #else X+ #define NUMFILLPATS 5 X+ #endif X+ X EXTERN int cur_gcfont[0x10],cur_gcfontsize[0x10]; /* font/size currently in each GC */ X EXTERN GC gc, bold_gc, gccache[0x10], topgc, sidegc, X fill_gc[NUMFILLPATS], /* area fill gc's */ END_OF_FILE if test 1438 -ne `wc -c <'resources.h.diff'`; then echo shar: \"'resources.h.diff'\" unpacked with wrong size! fi # end of 'resources.h.diff' fi if test -f 'search.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'search.c.diff'\" else echo shar: Extracting \"'search.c.diff'\" \(1344 characters\) sed "s/^X//" >'search.c.diff' <<'END_OF_FILE' X*** search.c.old Tue Jan 16 17:21:08 1990 X--- search.c Tue Mar 6 09:09:23 1990 X*************** X*** 52,58 X dy = y - e->center.y; X a = e->radiuses.x; X b = e->radiuses.y; X! dis = sqrt((double)(dx*dx + dy*dy)); X if (dis == 0) { X *px = e->center.x; X *py = e->center.y; X X--- 52,62 ----- X dy = y - e->center.y; X a = e->radiuses.x; X b = e->radiuses.y; X! /* prevent sqrt(0) core dumps */ X! if(dx == 0 && dy == 0) X! dis = 0; /* so we return below */ X! else X! dis = sqrt((double)(dx*dx + dy*dy)); X if (dis == 0) { X *px = e->center.x; X *py = e->center.y; X*************** X*** 58,64 X *py = e->center.y; X return(e); X } X! r = a * b * dis / sqrt((double) (1.0*b*b*dx*dx + 1.0*a*a*dy*dy)); X if (fabs(dis - r) <= tol) { X *px = (int)(r*dx/dis + ((dx < 0) ? -.5 : .5)) + e->center.x; X *py = (int)(r*dy/dis + ((dy < 0) ? -.5 : .5)) + e->center.y; X X--- 62,71 ----- X *py = e->center.y; X return(e); X } X! if(a * dy == 0 && b * dx == 0) X! r = 0; /* prevent core dumps */ X! else X! r = a * b * dis / sqrt((double) (1.0*b*b*dx*dx + 1.0*a*a*dy*dy)); X if (fabs(dis - r) <= tol) { X *px = (int)(r*dx/dis + ((dx < 0) ? -.5 : .5)) + e->center.x; X *py = (int)(r*dy/dis + ((dy < 0) ? -.5 : .5)) + e->center.y; END_OF_FILE if test 1344 -ne `wc -c <'search.c.diff'`; then echo shar: \"'search.c.diff'\" unpacked with wrong size! fi # end of 'search.c.diff' fi if test -f 'version.h.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'version.h.diff'\" else echo shar: Extracting \"'version.h.diff'\" \(691 characters\) sed "s/^X//" >'version.h.diff' <<'END_OF_FILE' X*** version.h.old Tue Feb 20 10:35:24 1990 X--- version.h Thu Mar 1 13:18:37 1990 X*************** X*** 8,11 X */ X X #define FIG_VERSION "2.0" X #define PROTOCOL_VERSION "1.4X" /* file format */ X X--- 8,14 ----- X */ X X #define FIG_VERSION "2.0" X+ #ifndef TFX X #define PROTOCOL_VERSION "1.4X" /* file format */ X #else X #define PROTOCOL_VERSION "1.4-TFX" /* file format */ X*************** X*** 9,11 X X #define FIG_VERSION "2.0" X #define PROTOCOL_VERSION "1.4X" /* file format */ X X--- 10,15 ----- X #define FIG_VERSION "2.0" X #ifndef TFX X #define PROTOCOL_VERSION "1.4X" /* file format */ X+ #else X+ #define PROTOCOL_VERSION "1.4-TFX" /* file format */ X+ #endif END_OF_FILE if test 691 -ne `wc -c <'version.h.diff'`; then echo shar: \"'version.h.diff'\" unpacked with wrong size! fi # end of 'version.h.diff' fi if test -f 'xtra.c.diff' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'xtra.c.diff'\" else echo shar: Extracting \"'xtra.c.diff'\" \(1724 characters\) sed "s/^X//" >'xtra.c.diff' <<'END_OF_FILE' X*** xtra.c.old Thu Feb 22 17:08:52 1990 X--- xtra.c Mon Mar 12 13:26:43 1990 X*************** X*** 125,130 X X /* grey images for fill patterns */ X X static char fill_images[NUMFILLPATS][8] = { X {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, X {0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00}, X X--- 125,131 ----- X X /* grey images for fill patterns */ X X+ #ifndef TFX X static char fill_images[NUMFILLPATS][8] = { X {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, X {0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00}, X*************** X*** 148,153 X {0x77, 0xff, 0x7f, 0xbe, 0x7f, 0xff, 0x77, 0xaa}, X {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, X }; X X /* create the gc's for area fill (PAINT and ERASE) */ X X X--- 149,163 ----- X {0x77, 0xff, 0x7f, 0xbe, 0x7f, 0xff, 0x77, 0xaa}, X {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, X }; X+ #else X+ static char fill_images[NUMFILLPATS][8] = { X+ {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, X+ {0x55, 0xaa, 0x77, 0xaa, 0x55, 0xaa, 0xdd, 0xaa}, X+ {0x55, 0x00, 0x55, 0x00, 0x55, 0x00, 0x55, 0x00}, X+ {0x00, 0x44, 0x00, 0x10, 0x00, 0x44, 0x00, 0x00}, X+ {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, X+ }; X+ #endif X X /* create the gc's for area fill (PAINT and ERASE) */ X X*************** X*** 420,443 X } X } X X- #ifdef sparc X- X- #undef cfree X- #undef free X- X- #include <stdio.h> X- X- FREE ( x ) /*-- disable free --*/ X- char *x ; X- { X- free(x); X- /* fprintf( stderr, "FREE -- %8x\n", x ) ; */ X- } X- CFREE ( x ) /*-- disable cfree --*/ X- char *x ; X- { X- cfree(x); X- /* fprintf( stderr, "FREE -- %8x\n", x ) ; */ X- } X- X- #endif sparc X X--- 430,432 ----- X } X } X END_OF_FILE if test 1724 -ne `wc -c <'xtra.c.diff'`; then echo shar: \"'xtra.c.diff'\" unpacked with wrong size! fi # end of 'xtra.c.diff' fi echo shar: End of archive 1 \(of 3\). cp /dev/null ark1isdone MISSING="" for I in 1 2 3 ; do if test ! -f ark${I}isdone ; then MISSING="${MISSING} ${I}" fi done if test "${MISSING}" = "" ; then echo You have unpacked all 3 archives. rm -f ark[1-9]isdone else echo You still need to unpack the following archives: echo " " ${MISSING} fi ## End of shell archive. exit 0 dan ----------------------------------------------------------- O'Reilly && Associates argv@sun.com / argv@ora.com 632 Petaluma Ave, Sebastopol, CA 95472 800-338-NUTS, in CA: 800-533-NUTS, FAX 707-829-0104 Opinions expressed reflect those of the author only.