From 0fb71d9e504cc93175d24269d811c5972ef7ceca34bf9974a1bcfd1bd32d3405 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Mon, 15 Jan 2007 23:42:25 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/xfig?expand=0&rev=1 --- .gitattributes | 23 + .gitignore | 1 + browser | 78 ++++ font-test.fig | 46 ++ ready | 0 xfig-3.2.4-mkstemp.dif | 331 +++++++++++++++ xfig.3.2.3d-international-std-fonts.dif | 49 +++ xfig.3.2.3d-xcolor.dif | 10 + xfig.3.2.3d-xim.dif | 33 ++ xfig.3.2.4-gcc4.dif | 11 + xfig.3.2.4-locale.dif | 117 ++++++ xfig.3.2.4-null.dif | 64 +++ xfig.3.2.4-quiet.dif | 183 ++++++++ xfig.3.2.4-urw-fonts.dif | 152 +++++++ xfig.3.2.4.dif | 535 ++++++++++++++++++++++++ xfig.3.2.4.tar.bz2 | 3 + xfig.changes | 323 ++++++++++++++ xfig.desktop | 10 + xfig.sh | 17 + xfig.spec | 300 +++++++++++++ 20 files changed, 2286 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 browser create mode 100644 font-test.fig create mode 100644 ready create mode 100644 xfig-3.2.4-mkstemp.dif create mode 100644 xfig.3.2.3d-international-std-fonts.dif create mode 100644 xfig.3.2.3d-xcolor.dif create mode 100644 xfig.3.2.3d-xim.dif create mode 100644 xfig.3.2.4-gcc4.dif create mode 100644 xfig.3.2.4-locale.dif create mode 100644 xfig.3.2.4-null.dif create mode 100644 xfig.3.2.4-quiet.dif create mode 100644 xfig.3.2.4-urw-fonts.dif create mode 100644 xfig.3.2.4.dif create mode 100644 xfig.3.2.4.tar.bz2 create mode 100644 xfig.changes create mode 100644 xfig.desktop create mode 100644 xfig.sh create mode 100644 xfig.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/browser b/browser new file mode 100644 index 0000000..49437bd --- /dev/null +++ b/browser @@ -0,0 +1,78 @@ +#!/bin/bash +# +# browser script +# +# Copyright (c) 2004 SuSE Linux AG, Nuernberg, Germany. +# Copyright (c) 2004 Werner Fink +# +# Author: Werner Fink + +prog="" +for p in \ + Mozilla \ + mozilla \ + Netscape \ + netscape \ + Mosaic \ + mosaic \ + opera \ + konqueror \ + amaya +do + prog=$(type -p $p) && break +done + +test -n "$prog" || { echo "${0##*/}: no web browser found" 1>&2; exit 1; } + +cmd="openBrowser" +open="openURL" +for opt in $@ ; do + case "$opt" in + http://*|https://*|www.*) + url=$opt + ;; + file:/*|*/*.htm|*/*.html) + url=$opt + open="openFile" + ;; + ftp://*|*/*.htmls) + url=$opt + ;; + *.htm|*.html|*.htmls) + url=$PWD/$opt + ;; + -discussions|-news) + cmd=openNewsgroups + ;; + -messenger|-mail) + cmd=openInbox + ;; + -composer|-edit) + cmd=composeMessage + ;; + -component-bar) + cmd=toggleTaskbar + ;; + -remote|-help) + cmd=""; url=""; + break + ;; + esac +done + +case "$prog" in +*/[nN]etscape|*/[Mm]ozilla) + ret=0 + if test -n "$url" ; then + $prog -noraise -remote "xfeDoCommand(openBrowser)" &> /dev/null && \ + $prog -remote "$open($url)" + ret=$? + elif test -n "$cmd" ; then + $p -noraise -remote "xfeDoCommand($cmd)" &> /dev/null + ret=$? + fi + test $ret -eq 0 && exit 0 +esac + +# You are at your own +exec -a $prog $prog ${1+"$@"} diff --git a/font-test.fig b/font-test.fig new file mode 100644 index 0000000..89b41c3 --- /dev/null +++ b/font-test.fig @@ -0,0 +1,46 @@ +#FIG 3.2 +Landscape +Center +Metric +A4 +100.00 +Single +-2 +1200 2 +1 3 0 1 0 7 50 0 -1 0.000 1 0.0000 12330 31770 162 162 12330 31770 12465 31860 +1 3 0 1 0 7 50 0 -1 0.000 1 0.0000 495 -540 142 142 495 -540 630 -495 +4 0 0 50 0 0 50 0.0000 4 150 1230 450 1000 Times-Roman\001 +4 0 0 50 0 1 50 0.0000 4 150 1065 450 2000 Times-Italic\001 +4 0 0 50 0 2 50 0.0000 4 150 1095 450 3000 Times-Bold\001 +4 0 0 50 0 4 50 0.0000 4 135 1350 450 5000 AvantGarde-Book\001 +4 0 0 50 0 5 50 0.0000 4 165 1980 450 6000 AvantGarde-BookOblique\001 +4 0 0 50 0 6 50 0.0000 4 135 1350 450 7000 AvantGarde-Demi\001 +4 0 0 50 0 7 50 0.0000 4 165 1980 450 8000 AvantGarde-DemiOblique\001 +4 0 0 50 0 8 50 0.0000 4 165 1170 450 9000 Bookman-Light\001 +4 0 0 50 0 9 50 0.0000 4 165 1710 450 10000 Bookman-LightItalic\001 +4 0 0 50 0 10 50 0.0000 4 135 1080 450 11000 Bookman-Demi\001 +4 0 0 50 0 11 50 0.0000 4 135 1620 450 12000 Bookman-DemiItalic\001 +4 0 0 50 0 12 50 0.0000 4 150 945 450 13000 Courier\001 +4 0 0 50 0 13 50 0.0000 4 195 2025 450 14000 Courier-Oblique\001 +4 0 0 50 0 14 50 0.0000 4 150 1620 450 15000 Courier-Bold\001 +4 0 0 50 0 15 50 0.0000 4 195 2565 450 16000 Courier-BoldOblique\001 +4 0 0 50 0 16 50 0.0000 4 165 900 450 17000 Helvetica\001 +4 0 0 50 0 17 50 0.0000 4 210 1740 450 18000 Helvetica-Oblique\001 +4 0 0 50 0 18 50 0.0000 4 165 1500 450 19000 Helvetica-Bold\001 +4 0 0 50 0 19 50 0.0000 4 210 2310 450 20000 Helvetica-BoldOblique\001 +4 0 0 50 0 20 50 0.0000 4 135 1440 450 21000 Helvetica-Narrow\001 +4 0 0 50 0 21 50 0.0000 4 165 2160 450 22000 Helvetica-Narrow-Oblique\001 +4 0 0 50 0 22 50 0.0000 4 135 1890 450 23000 Helvetica-Narrow-Bold\001 +4 0 0 50 0 23 50 0.0000 4 165 2520 450 24000 Helvetica-Narrow-BoldOblique\001 +4 0 0 50 0 24 50 0.0000 4 210 2805 450 25000 NewCenturySchlbk-Roman\001 +4 0 0 50 0 25 50 0.0000 4 210 2475 450 26000 NewCenturySchlbk-Italic\001 +4 0 0 50 0 26 50 0.0000 4 210 2760 450 27000 NewCenturySchlbk-Bold\001 +4 0 0 50 0 27 50 0.0000 4 210 3315 450 28000 NewCenturySchlbk-BoldItalic\001 +4 0 0 50 0 28 50 0.0000 4 135 1260 450 29000 Palatino-Roman\001 +4 0 0 50 0 29 50 0.0000 4 135 1350 450 30000 Palatino-Italic\001 +4 0 0 50 0 30 50 0.0000 4 135 1170 450 31000 Palatino-Bold\001 +4 0 0 50 0 31 50 0.0000 4 135 1710 450 32000 Palatino-BoldItalic\001 +4 0 0 50 0 32 50 0.0000 4 360 1275 450 33000 Symbol\001 +4 0 0 50 0 33 50 0.0000 4 165 2250 450 34000 ZapfChancery-MediumItalic\001 +4 0 0 50 0 34 50 0.0000 4 165 1080 450 35000 ZapfDingbats\001 +4 0 0 50 0 3 50 0.0000 4 150 1515 450 4000 Times-BoldItalic\001 diff --git a/ready b/ready new file mode 100644 index 0000000..473a0f4 diff --git a/xfig-3.2.4-mkstemp.dif b/xfig-3.2.4-mkstemp.dif new file mode 100644 index 0000000..916f594 --- /dev/null +++ b/xfig-3.2.4-mkstemp.dif @@ -0,0 +1,331 @@ +--- xfig.3.2.4/f_readeps.c ++++ xfig.3.2.4/f_readeps.c 2003-05-06 12:07:54.000000000 +0200 +@@ -258,7 +258,7 @@ + char buf[300]; + FILE *tmpfp, *pixfile, *gsfile; + char *psnam, *driver; +- int status, wid, ht, nbitmap; ++ int status, wid, ht, nbitmap, fd; + char tmpfile[PATH_MAX], + pixnam[PATH_MAX], + errnam[PATH_MAX], +@@ -274,8 +274,12 @@ + /* re-open the pipe */ + close_picfile(file, filetype); + file = open_picfile(file, &filetype, PIPEOK, pixnam); +- sprintf(tmpfile, "%s/%s%06d", TMPDIR, "xfig-eps", getpid()); +- if ((tmpfp = fopen(tmpfile, "wb")) == NULL) { ++ snprintf(tmpfile, sizeof(tmpfile), "%s/xfig-eps.XXXXXX", TMPDIR); ++ if ((fd = mkstemp(tmpfile)) == -1 || (tmpfp = fdopen(fd, "wb")) == NULL) { ++ if (fd != -1) { ++ unlink(tmpfile); ++ close(fd); ++ } + file_msg("Couldn't open tmp file %s, %s", tmpfile, strerror(errno)); + return False; + } +@@ -284,9 +288,21 @@ + fclose(tmpfp); + } + /* make name /TMPDIR/xfig-pic.pix */ +- sprintf(pixnam, "%s/%s%06d.pix", TMPDIR, "xfig-pic", getpid()); ++ snprintf(pixnam, sizeof(pixnam), "%s/xfig-pic.XXXXXX", TMPDIR); ++ if ((fd = mkstemp(pixnam)) == -1) { ++ file_msg("Couldn't open tmp file %s, %s", pixnam, strerror(errno)); ++ return False; ++ } ++ close(fd); ++ + /* and file name for any error messages from gs */ +- sprintf(errnam, "%s/%s%06d.err", TMPDIR, "xfig-pic", getpid()); ++ snprintf(errnam, sizeof(errnam), "%s/xfig-picerr.XXXXXX", TMPDIR); ++ if ((fd = mkstemp(errnam)) == -1) { ++ file_msg("Couldn't open tmp file %s, %s", errnam, strerror(errno)); ++ return False; ++ } ++ close(fd); ++ + /* generate gs command line */ + /* for monochrome, use pbm */ + if (tool_cells <= 2 || appres.monochrome) { +--- xfig.3.2.4/f_readgif.c ++++ xfig.3.2.4/f_readgif.c 2003-05-06 11:56:53.000000000 +0200 +@@ -75,7 +75,7 @@ + char buf[BUFLEN],pcxname[PATH_MAX]; + FILE *giftopcx; + struct Cmap localColorMap[MAX_COLORMAP_SIZE]; +- int i, stat, size; ++ int i, stat, size, fd; + int useGlobalColormap; + unsigned int bitPixel, red, green, blue; + unsigned char c; +@@ -172,7 +172,13 @@ + /* now call giftopnm and ppmtopcx */ + + /* make name for temp output file */ +- sprintf(pcxname, "%s/%s%06d.pix", TMPDIR, "xfig-pcx", getpid()); ++ snprintf(pcxname, sizeof(pcxname), "%s/xfig-pcx.XXXXXX", TMPDIR); ++ if ((fd = mkstemp(pcxname)) == -1) { ++ file_msg("Cannot create temporary file\n"); ++ return FileInvalid; ++ } ++ close(fd); ++ + /* make command to convert gif to pcx into temp file */ + sprintf(buf, "giftopnm | ppmtopcx > %s 2> /dev/null", pcxname); + if ((giftopcx = popen(buf,"w" )) == 0) { +--- xfig.3.2.4/f_readppm.c ++++ xfig.3.2.4/f_readppm.c 2003-05-06 11:56:53.000000000 +0200 +@@ -33,10 +33,16 @@ + { + char buf[BUFLEN],pcxname[PATH_MAX]; + FILE *giftopcx; +- int stat, size; ++ int stat, size, fd; + + /* make name for temp output file */ +- sprintf(pcxname, "%s/%s%06d.pix", TMPDIR, "xfig-pcx", getpid()); ++ snprintf(pcxname, sizeof(pcxname), "%s/xfig-pcx.XXXXXX", TMPDIR); ++ if ((fd = mkstemp(pcxname)) == -1) { ++ file_msg("Cannot open temp file %s: %s\n", pcxname, strerror(errno)); ++ return FileInvalid; ++ } ++ close(fd); ++ + /* make command to convert gif to pcx into temp file */ + sprintf(buf, "ppmtopcx > %s 2> /dev/null", pcxname); + if ((giftopcx = popen(buf,"w" )) == 0) { +--- xfig.3.2.4/f_readtif.c ++++ xfig.3.2.4/f_readtif.c 2003-05-06 11:56:53.000000000 +0200 +@@ -32,11 +32,16 @@ + { + char buf[2*PATH_MAX+40],pcxname[PATH_MAX]; + FILE *tiftopcx; +- int stat; ++ int stat, fd; + + /* make name for temp output file */ +- sprintf(pcxname, "%s/%s%06d.pix", TMPDIR, "xfig-pcx", getpid()); +- ++ snprintf(pcxname, sizeof(pcxname), "%s/xfig-pcx.XXXXXX", TMPDIR); ++ if ((fd = mkstemp(pcxname)) == -1) { ++ file_msg("Cannot open temp file %s: %s\n", pcxname, strerror(errno)); ++ return FileInvalid; ++ } ++ close(fd); ++ + /* make command to convert tif to pnm then to pcx into temp file */ + /* for some reason, tifftopnm requires a file and can't work in a pipe */ + sprintf(buf, "tifftopnm %s 2> /dev/null | ppmtopcx > %s 2> /dev/null", +--- xfig.3.2.4/f_util.c ++++ xfig.3.2.4/f_util.c 2003-05-06 12:13:22.000000000 +0200 +@@ -902,14 +902,20 @@ + char *name; + { + char line[RC_BUFSIZ+1], *tok; ++ int fd; + + /* make a temp filename in the user's home directory so we + can just rename it to .xfigrc after creating it */ +- sprintf(tmpname, "%s/%s%06d", userhome, "xfig-xfigrc", getpid()); +- tmpf = fopen(tmpname,"wb"); +- if (tmpf == 0) { +- file_msg("Can't make temporary file for .xfigrc - error: %s",strerror(errno)); +- return -1; ++ snprintf(tmpname, sizeof(tmpname), "%s/xfig-xfigrc.XXXXXX", userhome); ++ ++ if ((fd = mkstemp(tmpname)) == -1 || (tmpf = fdopen(fd, "wb")) == NULL) { ++ file_msg("Can't make temporary file for .xfigrc - error: %s", ++ strerror(errno)); ++ if (fd != -1) { ++ unlink(tmpname); ++ close(fd); ++ } ++ return -1; + } + /* read the .xfigrc file and write all to temp file except file names */ + xfigrc = fopen(xfigrc_name,"r"); +--- xfig.3.2.4/main.c ++++ xfig.3.2.4/main.c 2003-05-06 11:56:53.000000000 +0200 +@@ -621,8 +621,10 @@ + update_figs = False; + + /* get the TMPDIR environment variable for temporary files */ +- if ((TMPDIR = getenv("XFIGTMPDIR"))==NULL) +- TMPDIR = "/tmp"; ++ if ((TMPDIR = getenv("XFIGTMPDIR"))==NULL) { ++ if ((TMPDIR = getenv("TMPDIR")) == NULL) ++ TMPDIR = "/tmp"; ++ } + + /* first check args to see if user wants to scale the figure as it is + read in and make sure it is a resonable (positive) number */ +@@ -1631,7 +1633,14 @@ + if (userhome != NULL && *strcpy(cut_buf_name, userhome) != '\0') { + strcat(cut_buf_name, "/.xfig"); + } else { +- sprintf(cut_buf_name, "%s/xfig%06d", TMPDIR, getpid()); ++ int fd; ++ sprintf(cut_buf_name, "%s/xfig.XXXXXX", TMPDIR); ++ if ((fd = mkstemp(cut_buf_name)) == -1) { ++ fprintf(stderr, "Can't create temporary file for cut_buff: %s\n", ++ strerror(errno)); ++ exit(0); ++ } ++ close(fd); + } + } + +--- xfig.3.2.4/mode.c ++++ xfig.3.2.4/mode.c 2003-05-06 11:56:53.000000000 +0200 +@@ -93,7 +93,7 @@ + + int cur_exp_lang; /* gets initialized in main.c */ + Boolean batch_exists = False; +-char batch_file[32]; ++char batch_file[PATH_MAX]; + + /*******************************************************************/ + /* If you change the order of the lang_items[] you must change the */ +--- xfig.3.2.4/u_print.c ++++ xfig.3.2.4/u_print.c 2003-05-06 12:18:47.000000000 +0200 +@@ -85,9 +85,16 @@ + char syspr[2*PATH_MAX+200]; + char tmpfile[PATH_MAX]; + char *name; ++ int fd; + +- sprintf(tmpfile, "%s/%s%06d", TMPDIR, "xfig-print", getpid()); ++ snprintf(tmpfile, sizeof(tmpfile), "%s/xfig-print.XXXXXX", TMPDIR); + warnexist = False; ++ if ((fd = mkstemp(tmpfile)) == -1) { ++ file_msg("Can't open temp file %s: %s\n", tmpfile, strerror(errno)); ++ return; ++ } ++ close(fd); ++ + init_write_tmpfile(); + if (write_file(tmpfile, False)) { + end_write_tmpfile(); +@@ -166,14 +173,21 @@ + char tmp_name[PATH_MAX]; + char tmp_fig_file[PATH_MAX]; + char *outfile, *name, *real_lang; ++ int fd; + + /* if file exists, ask if ok */ + if (!ok_to_write(file, "EXPORT")) + return (1); + +- sprintf(tmp_fig_file, "%s/%s%06d", TMPDIR, "xfig-fig", getpid()); +- /* write the fig objects to a temporary file */ ++ snprintf(tmp_fig_file, sizeof(tmp_fig_file), "%s/xfig-fig.XXXXXX", TMPDIR); + warnexist = False; ++ if ((fd = mkstemp(tmp_fig_file)) == -1) { ++ file_msg("Can't open temp file %s: %s\n", tmp_fig_file, ++ strerror(errno)); ++ return 1; ++ } ++ close(fd); ++ + init_write_tmpfile(); + if (write_file(tmp_fig_file, False)) { + end_write_tmpfile(); +@@ -491,10 +505,16 @@ + char errfname[PATH_MAX]; + FILE *errfile; + char str[400]; +- int status; ++ int status, fd; + + /* make temp filename for any errors */ +- sprintf(errfname, "%s/xfig-export%06d.err", TMPDIR, getpid()); ++ snprintf(errfname, sizeof(errfname), "%s/xfig-export.XXXXXX", TMPDIR); ++ if ((fd = mkstemp(errfname)) == -1) { ++ file_msg("Can't open temp file %s: %s\n", errfname, strerror(errno)); ++ return 1; ++ } ++ close(fd); ++ + /* direct any output from fig2dev to this file */ + strcat(command, " 2> "); + strcat(command, errfname); +--- xfig.3.2.4/w_print.c ++++ xfig.3.2.4/w_print.c 2003-05-06 12:20:46.000000000 +0200 +@@ -289,9 +289,10 @@ + Widget w; + { + FILE *infp,*outfp; +- char tmp_exp_file[32]; ++ char tmp_exp_file[PATH_MAX]; + char str[255]; + char backgrnd[10], grid[80]; ++ int fd; + + if (writing_batch || emptyfigure_msg(print_msg)) + return; +@@ -300,11 +301,20 @@ + /* this could happen if the user presses the button too fast */ + writing_batch = True; + +- /* make a temporary name to write the batch stuff to */ +- sprintf(batch_file, "%s/%s%06d", TMPDIR, "xfig-batch", getpid()); + /* make a temporary name to write this figure to */ +- sprintf(tmp_exp_file, "%s/%s%06d", TMPDIR, "xfig-exp", getpid()); +- batch_exists = True; ++ snprintf(tmp_exp_file, sizeof(tmp_exp_file), "%s/xfig-exp.XXXXXX", ++ TMPDIR); ++ ++ if (batch_exists != True) { ++ /* make a temporary name to write the batch stuff to */ ++ sprintf(batch_file, "%s/xfig-batch.XXXXXX", TMPDIR); ++ if ((fd = mkstemp(batch_file)) == -1) { ++ file_msg("Error creating temporary file"); ++ return; ++ } ++ close(fd); ++ batch_exists = True; ++ } + if (!print_popup) + create_print_panel(w); + +@@ -317,6 +327,12 @@ + /* make a #rrggbb string from the background color */ + make_rgb_string(export_background_color, backgrnd); + ++ if ((fd = mkstemp(tmp_exp_file)) == -1) { ++ file_msg("Error creating temporary file"); ++ return; ++ } ++ close(fd); ++ + /* get grid params and assemble into fig2dev parm */ + get_grid_spec(grid, print_grid_minor_text); + +--- xfig.3.2.4/w_srchrepl.c ++++ xfig.3.2.4/w_srchrepl.c 2003-05-06 11:56:53.000000000 +0200 +@@ -795,7 +795,7 @@ + char *cmd; + char str[300]; + FILE *fp; +- int len, i; ++ int len, i, fd; + Boolean done = FALSE; + static int lines = 0; + +@@ -811,9 +811,12 @@ + } + lines = 0; + +- sprintf(filename, "%s/xfig-spell.%d", TMPDIR, (int)getpid()); +- fp = fopen(filename, "w"); +- if (fp == NULL) { ++ snprintf(filename, sizeof(filename), "%s/xfig-spell.XXXXXX", TMPDIR); ++ if ((fd = mkstemp(filename)) == -1 || (fp = fdopen(fd, "w")) == NULL) { ++ if (fd != -1) { ++ unlink(filename); ++ close(fd); ++ } + file_msg("Can't open temporary file: %s: %s\n", filename, strerror(errno)); + } else { + /* locate all text objects and write them to file fp */ diff --git a/xfig.3.2.3d-international-std-fonts.dif b/xfig.3.2.3d-international-std-fonts.dif new file mode 100644 index 0000000..8280083 --- /dev/null +++ b/xfig.3.2.3d-international-std-fonts.dif @@ -0,0 +1,49 @@ +diff -ru xfig.3.2.3d.orig/main.c xfig.3.2.3d/main.c +--- xfig.3.2.3d.orig/main.c 2001-01-25 22:49:19.000000000 +0100 ++++ xfig.3.2.3d/main.c 2003-05-09 11:58:41.000000000 +0200 +@@ -259,18 +259,36 @@ + XtOffset(appresPtr, always_use_fontset), XtRBoolean, (caddr_t) & false}, + {"fixedFontSet", "FontSet", XtRFontSet, sizeof(XFontSet), + XtOffset(appresPtr, fixed_fontset), XtRString, +- (caddr_t) "-*-times-medium-r-normal--16-*-*-*-*-*-*-*," +- "-*-*-medium-r-normal--16-*-*-*-*-*-*-*,*--16-*" }, ++ (caddr_t) "-URW-Nimbus Roman No9 L-medium-r-normal--34-*-*-*-*-*-*-*," ++ "-kochi-mincho-medium-r-normal--34-*-*-*-*-*-jisx0208.1983-0," ++ "-baekmukttf-batang-medium-r-normal--34-*-*-*-*-*-ksc5601.1987-0," ++ "-*-times-medium-r-normal--34-*-*-*-*-*-*-*," ++ "-*-*-medium-r-normal--34-*-*-*-*-*-*-*,*--34-*" ++ "-*-times-medium-r-normal--16-*-*-*-*-*-*-*," ++ "-*-*-medium-r-normal--16-*-*-*-*-*-*-*,*--16-*" ++ }, + {"normalFontSet", "NormalFontSet", XtRFontSet, sizeof(XFontSet), + XtOffset(appresPtr, normal_fontset), XtRString, +- (caddr_t) "-*-times-medium-r-normal--16-*-*-*-*-*-*-*," +- "-*-*-medium-r-normal--16-*-*-*-*-*-*-*," +- "-*-*-*-r-*--16-*-*-*-*-*-*-*" }, ++ (caddr_t) "-URW-Nimbus Roman No9 L-medium-r-normal--34-*-*-*-*-*-*-*," ++ "-kochi-mincho-medium-r-normal--34-*-*-*-*-*-jisx0208.1983-0," ++ "-baekmukttf-batang-medium-r-normal--34-*-*-*-*-*-ksc5601.1987-0," ++ "-*-times-medium-r-normal--34-*-*-*-*-*-*-*," ++ "-*-*-medium-r-normal--34-*-*-*-*-*-*-*," ++ "-*-*-*-r-*--34-*-*-*-*-*-*-*" ++ "-*-times-medium-r-normal--16-*-*-*-*-*-*-*," ++ "-*-*-medium-r-normal--16-*-*-*-*-*-*-*,*--16-*" ++ }, + {"boldFontSet", "BoldFontSet", XtRFontSet, sizeof(XFontSet), + XtOffset(appresPtr, bold_fontset), XtRString, +- (caddr_t) "-*-times-bold-r-normal--16-*-*-*-*-*-*-*," +- "-*-*-bold-r-normal--16-*-*-*-*-*-*-*," +- "-*-*-*-r-*--16-*-*-*-*-*-*-*" }, ++ (caddr_t) "-URW-Nimbus Roman No9 L-bold-r-normal--34-*-*-*-*-*-*-*," ++ "-kochi-gothic-medium-r-normal--34-*-*-*-*-*-jisx0208.1983-0," ++ "-baekmukttf-dotum-medium-r-normal--34-*-*-*-*-*-ksc5601.1987-0," ++ "-*-times-bold-r-normal--34-*-*-*-*-*-*-*," ++ "-*-*-bold-r-normal--34-*-*-*-*-*-*-*," ++ "-*-*-*-r-*--34-*-*-*-*-*-*-*" ++ "-*-times-medium-r-normal--16-*-*-*-*-*-*-*," ++ "-*-*-medium-r-normal--16-*-*-*-*-*-*-*,*--16-*" ++ }, + {"fontSetSize", "FontSetSize", XtRInt, sizeof(int), + XtOffset(appresPtr, fontset_size), XtRImmediate, (caddr_t)0 }, + {"inputStyle", "InputStyle", XtRString, sizeof(char *), + diff --git a/xfig.3.2.3d-xcolor.dif b/xfig.3.2.3d-xcolor.dif new file mode 100644 index 0000000..660b6ee --- /dev/null +++ b/xfig.3.2.3d-xcolor.dif @@ -0,0 +1,10 @@ +--- w_color.c ++++ w_color.c +@@ -1288,6 +1288,7 @@ + + create_cell(indx, color) + int indx; ++ XColor color; + { + char labl[5]; + diff --git a/xfig.3.2.3d-xim.dif b/xfig.3.2.3d-xim.dif new file mode 100644 index 0000000..f5c552d --- /dev/null +++ b/xfig.3.2.3d-xim.dif @@ -0,0 +1,33 @@ +--- xfig.3.2.3d/d_text.c ++++ xfig.3.2.3d/d_text.c +@@ -1485,6 +1485,7 @@ + int i; + XVaNestedList preedit_att, status_att; + XPoint spot; ++ char *modifier_list; + + preferred_style = style_notuseful; + if (strncasecmp(appres.xim_input_style, "OverTheSpot", 3) == 0) +@@ -1501,6 +1502,10 @@ + if (preferred_style == style_notuseful) return; + + if (appres.DEBUG) fprintf(stderr, "initialize_input_method()...\n"); ++ ++ if((modifier_list = XSetLocaleModifiers("")) == NULL) { ++ /* printf("Warning: XSetLocaleModifiers() failed.\n"); */ ++ } + + xim_im = XOpenIM(XtDisplay(w), NULL, NULL, NULL); + if (xim_im == NULL) { +@@ -1517,7 +1522,10 @@ + if (xim_style == 0) xim_style = style_root; + } + } +- if (xim_style != preferred_style) { ++ if (xim_style != preferred_style ++ && *modifier_list != '\0' ++ && ! strstr(modifier_list,"@im=local") ++ && ! strstr(modifier_list,"@im=none")) { + fprintf(stderr, "xfig: this input-method doesn't support %s input style\n", + appres.xim_input_style); + if (xim_style == 0) { diff --git a/xfig.3.2.4-gcc4.dif b/xfig.3.2.4-gcc4.dif new file mode 100644 index 0000000..2668f0a --- /dev/null +++ b/xfig.3.2.4-gcc4.dif @@ -0,0 +1,11 @@ +--- w_color.c ++++ w_color.c 2005/08/31 10:42:32 +@@ -1057,7 +1057,7 @@ + { + F_compound *c; + int i, count; +- char buf[10]; ++ char buf[11]; + + /* keep array of counts of each color */ + for (i=0; i + #include ++#include + #endif /* I18N */ + + /* EXPORTS */ +@@ -709,11 +710,6 @@ main(argc, argv) + } + } + +-#ifdef I18N +- setlocale(LC_ALL, ""); +- XtSetLanguageProc(NULL, NULL, NULL); +-#endif /* I18N */ +- + /* + * save the command line arguments + */ +@@ -807,6 +803,10 @@ main(argc, argv) + } + + #ifdef I18N ++ if (NULL == strcasestr(nl_langinfo(CODESET),"ANSI") && ++ NULL == strcasestr(nl_langinfo(CODESET),"ISO-8859-1")) ++ appres.international = True; ++ + /************************************************************/ + /* if the international option has been set, set the locale */ + /************************************************************/ +@@ -1523,6 +1523,11 @@ setup_visual(argc_p, argv, args) + */ + tool = XtAppInitialize (&tool_app, "Fig", options, XtNumber (options), argc_p, argv, + (String *) NULL, args, 0); ++#ifdef I18N ++ setlocale(LC_ALL, ""); ++ setlocale(LC_NUMERIC, "C"); ++ XtSetLanguageProc(tool_app, NULL, NULL); ++#endif /* I18N */ + /* save important info */ + tool_d = XtDisplay(tool); + tool_s = XtScreen(tool); +--- u_print.c ++++ u_print.c 2006-11-16 12:45:46.000000000 +0000 +@@ -15,6 +15,7 @@ + * + */ + ++#include + #include "fig.h" + #include "resources.h" + #include "mode.h" +@@ -75,6 +76,7 @@ char *shell_protect_string(string) + return(buf); + } + ++void + print_to_printer(printer, backgrnd, mag, print_all_layers, grid, params) + char printer[]; + char *backgrnd; +@@ -111,6 +113,8 @@ print_to_printer(printer, backgrnd, mag, + name = shell_protect_string(cur_filename); + + #ifdef I18N ++ /* set the numeric locale to C so we set decimal points for numbers */ ++ setlocale(LC_NUMERIC, "C"); + sprintf(tmpcmd, "%s %s -L ps -z %s -m %f %s -n %s", + fig2dev_cmd, appres.international ? appres.fig2dev_localize_option : "", + #else +@@ -119,6 +123,10 @@ print_to_printer(printer, backgrnd, mag, + #endif /* I18N */ + paper_sizes[appres.papersize].sname, mag/100.0, + appres.landscape ? "-l xxx" : "-p xxx", name); ++#ifdef I18N ++ /* reset to original locale */ ++ setlocale(LC_NUMERIC, ""); ++#endif /* I18N */ + + if (appres.correct_font_size) + strcat(tmpcmd," -F "); +@@ -223,9 +231,13 @@ print_to_file(file, lang, mag, xoff, yof + + /* start with the command, language and internationalization, if applicable */ + #ifdef I18N ++ /* set the numeric locale to C so we set decimal points for numbers */ ++ setlocale(LC_NUMERIC, "C"); + sprintf(prcmd, "%s %s -L %s -m %f ", + fig2dev_cmd, appres.international ? appres.fig2dev_localize_option : "", + real_lang, mag/100.0); ++ /* reset to original locale */ ++ setlocale(LC_NUMERIC, ""); + #else + sprintf(prcmd, "%s -L %s -m %f ", fig2dev_cmd, real_lang, mag/100.0); + #endif /* I18N */ +@@ -324,6 +336,8 @@ print_to_file(file, lang, mag, xoff, yof + strcat(tmp_name,"_t"); + /* make it automatically input the postscript/pdf part (-p option) */ + #ifdef I18N ++ /* set the numeric locale to C so we set decimal points for numbers */ ++ setlocale(LC_NUMERIC, "C"); + sprintf(prcmd, "%s %s -L %s -E %d -p %s -m %f ", + fig2dev_cmd, appres.international ? appres.fig2dev_localize_option : "", + #else +@@ -332,6 +346,10 @@ print_to_file(file, lang, mag, xoff, yof + #endif /* I18N */ + !strcmp(lang,"pstex")? "pstex_t": "pdftex_t", + appres.encoding, outfile, mag/100.0); ++#ifdef I18N ++ /* reset to original locale */ ++ setlocale(LC_NUMERIC, ""); ++#endif /* I18N */ + /* add the -D +list if user doesn't want all layers printed */ + if (!print_all_layers) + strcat(prcmd, layers); diff --git a/xfig.3.2.4-null.dif b/xfig.3.2.4-null.dif new file mode 100644 index 0000000..af6b4d1 --- /dev/null +++ b/xfig.3.2.4-null.dif @@ -0,0 +1,64 @@ +--- w_dir.c ++++ w_dir.c 2004-03-22 12:17:21.000000000 +0000 +@@ -126,6 +126,8 @@ + { + XawListReturnStruct *ret_struct = (XawListReturnStruct *) call_data; + ++ if (!ret_struct) ++ return; + strcpy(CurrentSelectionName, ret_struct->string); + FirstArg(XtNstring, CurrentSelectionName); + if (browse_up) { +@@ -160,6 +162,8 @@ + { + XawListReturnStruct *ret_struct = (XawListReturnStruct *) call_data; + ++ if (!ret_struct) ++ return; + strcpy(CurrentSelectionName, ret_struct->string); + DoChangeDir(CurrentSelectionName); + } +--- w_library.c ++++ w_library.c 2004-03-22 12:19:10.000000000 +0000 +@@ -461,6 +461,8 @@ + int new_obj; + XawListReturnStruct *ret_struct = (XawListReturnStruct *) call_data; + ++ if (!ret_struct) ++ return; + new_obj = ret_struct->list_index; + if (icons_made) { + /* unhighlight the current view icon */ +--- w_srchrepl.c ++++ w_srchrepl.c 2004-03-22 12:20:38.000000000 +0000 +@@ -894,6 +894,8 @@ + { + XawListReturnStruct *ret_struct = (XawListReturnStruct *) call_data; + ++ if (!ret_struct) ++ return; + /* save the selected word */ + strcpy(selected_word, ret_struct->string); + /* copy the word to the correct_word ascii widget */ +--- w_style.c ++++ w_style.c 2004-03-22 12:13:00.000000000 +0000 +@@ -585,7 +585,8 @@ + + XawListReturnStruct *ret_struct = (XawListReturnStruct *) call_data; + +- current_family = ret_struct->list_index; ++ if (ret_struct) ++ current_family = ret_struct->list_index; + current_style = -1; + style_update (); + } +@@ -598,7 +599,8 @@ + { + XawListReturnStruct *ret_struct = (XawListReturnStruct *) call_data; + +- current_style = ret_struct->list_index; ++ if (ret_struct) ++ current_style = ret_struct->list_index; + style_update (); + cur_updatemask = set_style (¤t_family_set[current_family].style[current_style]); + diff --git a/xfig.3.2.4-quiet.dif b/xfig.3.2.4-quiet.dif new file mode 100644 index 0000000..210b184 --- /dev/null +++ b/xfig.3.2.4-quiet.dif @@ -0,0 +1,183 @@ +--- main.c ++++ main.c 2004-08-25 14:21:34.000000000 +0200 +@@ -1018,6 +1018,11 @@ + setup_sizes(init_canv_wd, init_canv_ht); + } + ++ (void) init_tool_menus(); ++ (void) init_tool_style_panel(); ++ (void) init_tool_ind_pannel(); ++ (void) init_tool_canvas(); ++ + (void) init_main_menus(tool_form, arg_filename); + (void) init_msg(tool_form); + (void) init_mousefun(tool_form); +--- w_canvas.c ++++ w_canvas.c 2004-08-25 14:20:40.000000000 +0200 +@@ -173,6 +173,13 @@ + ~Meta:EventCanv()\n\ + :ExposeCanv()\n"; + ++void ++init_tool_canvas(void) ++{ ++ XtAppAddActions(tool_app, canvas_actions, XtNumber(canvas_actions)); ++} ++ ++int + init_canvas(tool) + Widget tool; + { +@@ -193,7 +200,6 @@ + canvas_middlebut_proc = null_proc; + canvas_rightbut_proc = null_proc; + canvas_kbd_proc = canvas_locmove_proc = null_proc; +- XtAppAddActions(tool_app, canvas_actions, XtNumber(canvas_actions)); + XtAugmentTranslations(canvas_sw, + XtParseTranslationTable(canvas_translations)); + #ifndef NO_COMPKEYDB +@@ -204,13 +210,14 @@ + } + + /* at this point, the canvas widget is realized so we can get the window from it */ +- ++void + setup_canvas() + { + init_grid(); + reset_clip_window(); + } + ++void + canvas_selected(tool, event, params, nparams) + Widget tool; + XButtonEvent *event; +--- w_canvas.h ++++ w_canvas.h 2004-08-25 14:21:18.000000000 +0200 +@@ -35,9 +35,12 @@ + extern void toggle_show_borders(); + extern void clear_canvas(); + +-extern canvas_selected(); ++extern void canvas_selected(); + extern void paste_primary_selection(); + ++extern void init_tool_canvas(void); ++extern int init_canvas(Widget tool); ++ + extern int clip_xmin, clip_ymin, clip_xmax, clip_ymax; + extern int clip_width, clip_height; + extern int cur_x, cur_y; +--- w_cmdpanel.c ++++ w_cmdpanel.c 2004-08-25 14:26:00.000000000 +0200 +@@ -204,6 +204,13 @@ + + /* command panel */ + void ++init_tool_menus(void) ++{ ++ /* add actions to position the menus if the user uses an accelerator */ ++ XtAppAddActions(tool_app, menu_actions, XtNumber(menu_actions)); ++} ++ ++void + init_main_menus(tool, filename) + Widget tool; + char *filename; +@@ -212,6 +219,7 @@ + Widget beside = NULL; + DeclareArgs(11); + ++ + FirstArg(XtNborderWidth, 0); + NextArg(XtNcolormap, tool_cm); + NextArg(XtNdefaultDistance, 0); +@@ -246,8 +254,6 @@ + filename_balloon_trigger, (XtPointer) name_panel); + XtAddEventHandler(name_panel, LeaveWindowMask, False, + filename_unballoon, (XtPointer) name_panel); +- /* add actions to position the menus if the user uses an accelerator */ +- XtAppAddActions(tool_app, menu_actions, XtNumber(menu_actions)); + refresh_view_menu(); + } + +--- w_cmdpanel.h ++++ w_cmdpanel.h 2004-08-25 14:10:45.000000000 +0200 +@@ -33,6 +33,8 @@ + extern int num_main_menus(); + extern Widget create_menu_item(); + extern void refresh_view_menu(); ++extern void init_tool_menus(void); ++extern void init_main_menus(Widget tool, char* filename); + + /* def for menu */ + +--- w_indpanel.c ++++ w_indpanel.c 2004-08-25 14:12:57.000000000 +0200 +@@ -476,6 +476,12 @@ + static ind_sw_info upd_sw_info, upd_set_sw_info, upd_clr_sw_info, upd_tog_sw_info; + + void ++init_tool_ind_pannel(void) ++{ ++ XtAppAddActions(tool_app, ind_actions, XtNumber(ind_actions)); ++} ++ ++void + init_ind_panel(tool) + Widget tool; + { +@@ -626,8 +632,6 @@ + ind_box = XtCreateManagedWidget("ind_box", boxWidgetClass, ind_panel, + Args, ArgCount); + +- XtAppAddActions(tool_app, ind_actions, XtNumber(ind_actions)); +- + for (i = 0; i < NUM_IND_SW; ++i) { + sw = &ind_switches[i]; + sw->panel = (Widget) NULL; /* not created yet */ +--- w_indpanel.h ++++ w_indpanel.h 2004-08-25 14:14:07.000000000 +0200 +@@ -34,6 +34,9 @@ + extern void wheel_inc_zoom(), wheel_dec_zoom(); + #endif /* WHEELMOUSE */ + ++extern void init_tool_ind_pannel(void); ++extern void init_ind_panel(Widget tool); ++ + /* size of buttons in indicator panel */ + #define DEF_IND_SW_HT 34 + #define DEF_IND_SW_WD 64 +--- w_style.c ++++ w_style.c 2004-08-25 14:05:33.000000000 +0200 +@@ -759,6 +759,12 @@ + /**********************************/ + + void ++init_tool_style_panel(void) ++{ ++ XtAppAddActions (tool_app, style_actions, XtNumber (style_actions)); ++} ++ ++void + init_manage_style_panel (void) + { + char buf[50]; +@@ -966,7 +972,6 @@ + XtAddCallback (style_close_style, XtNcallback, + (XtCallbackProc) close_style, (XtPointer) NULL); + +- XtAppAddActions (tool_app, style_actions, XtNumber (style_actions)); + style_update (); + } + +--- w_style.h ++++ w_style.h 2004-08-25 14:06:27.000000000 +0200 +@@ -14,6 +14,7 @@ + * + */ + ++extern void init_tool_style_panel(void); + extern void init_manage_style_panel(void); + extern void setup_manage_style_panel(void); + extern void popup_manage_style_panel(void); diff --git a/xfig.3.2.4-urw-fonts.dif b/xfig.3.2.4-urw-fonts.dif new file mode 100644 index 0000000..bd251be --- /dev/null +++ b/xfig.3.2.4-urw-fonts.dif @@ -0,0 +1,152 @@ +--- u_fonts.c ++++ u_fonts.c 2005-10-06 18:55:22.000000000 +0200 +@@ -21,7 +21,9 @@ + + /* X11 font names */ + +-struct _xfstruct x_fontinfo[NUM_FONTS] = { ++struct _xfstruct x_fontinfo[NUM_FONTS]; ++ ++struct _xfstruct x_adobe_fontinfo[NUM_FONTS] = { + {"-*-times-medium-r-normal--", (struct xfont*) NULL}, + {"-*-times-medium-i-normal--", (struct xfont*) NULL}, + {"-*-times-bold-r-normal--", (struct xfont*) NULL}, +@@ -59,6 +61,44 @@ + {"-*-itc zapf dingbats-*-*-*--", (struct xfont*) NULL}, + }; + ++struct _xfstruct x_urw_fontinfo[NUM_FONTS] = { ++ {"-URW-*Nimbus Roman No9 L-medium-r-normal--", (struct xfont*) NULL}, /* Times-Roman */ ++ {"-URW-*Nimbus Roman No9 L-medium-i-normal--", (struct xfont*) NULL}, /* Times-Italic */ ++ {"-URW-*Nimbus Roman No9 L-bold-r-normal--", (struct xfont*) NULL}, /* Times-Bold */ ++ {"-URW-*Nimbus Roman No9 L-bold-i-normal--", (struct xfont*) NULL}, /* Times-BoldItalic */ ++ {"-URW-*Gothic L-medium-r-normal--", (struct xfont*) NULL}, /* AvantGarde-Book */ ++ {"-URW-*Gothic L-medium-o-normal--", (struct xfont*) NULL}, /* AvantGarde-BookOblique */ ++ {"-URW-*Gothic L-*bold-r-normal--", (struct xfont*) NULL}, /* AvantGarde-Demi */ ++ {"-URW-*Gothic L-*bold-o-normal--", (struct xfont*) NULL}, /* AvantGarde-DemiOblique */ ++ {"-URW-*Bookman L-medium-r-normal--", (struct xfont*) NULL}, /* Bookman-Light */ ++ {"-URW-*Bookman L-medium-i-normal--", (struct xfont*) NULL}, /* Bookman-LightItalic */ ++ {"-URW-*Bookman L-*bold-r-normal--", (struct xfont*) NULL}, /* Bookman-Demi */ ++ {"-URW-*Bookman L-*bold-i-normal--", (struct xfont*) NULL}, /* Bookman-DemiItalic */ ++ {"-URW-*Nimbus Mono L-medium-r-normal--", (struct xfont*) NULL}, /* Courier */ ++ {"-URW-*Nimbus Mono L-medium-o-normal--", (struct xfont*) NULL}, /* Courier-Oblique */ ++ {"-URW-*Nimbus Mono L-bold-r-normal--", (struct xfont*) NULL}, /* Courier-Bold */ ++ {"-URW-*Nimbus Mono L-bold-o-normal--", (struct xfont*) NULL}, /* Courier-BoldOblique */ ++ {"-URW-*Nimbus Sans L-medium-r-normal--", (struct xfont*) NULL}, /* Helvetica */ ++ {"-URW-*Nimbus Sans L-medium-o-normal--", (struct xfont*) NULL}, /* Helvetica-Oblique */ ++ {"-URW-*Nimbus Sans L-bold-r-normal--", (struct xfont*) NULL}, /* Helvetica-Bold */ ++ {"-URW-*Nimbus Sans L-bold-o-normal--", (struct xfont*) NULL}, /* Helvetica-BoldOblique */ ++ {"-URW-*Nimbus Sans L-medium-r-condensed--", (struct xfont*) NULL}, /* Helvetica-Narrow */ ++ {"-URW-*Nimbus Sans L-medium-o-condensed--", (struct xfont*) NULL}, /* Helvetica-Narrow-Oblique */ ++ {"-URW-*Nimbus Sans L-bold-r-condensed--", (struct xfont*) NULL}, /* Helvetica-Narrow-Bold */ ++ {"-URW-*Nimbus Sans L-bold-o-condensed--", (struct xfont*) NULL}, /* Helvetica-Narrow-BoldOblique */ ++ {"-URW-*Century Schoolbook L-medium-r-normal--", (struct xfont*) NULL}, /* NewCenturySchlbk-Roman */ ++ {"-URW-*Century Schoolbook L-medium-i-normal--", (struct xfont*) NULL}, /* NewCenturySchlbk-Italic */ ++ {"-URW-*Century Schoolbook L-bold-r-normal--", (struct xfont*) NULL}, /* NewCenturySchlbk-Bold */ ++ {"-URW-*Century Schoolbook L-bold-i-normal--", (struct xfont*) NULL}, /* NewCenturySchlbk-BoldItalic */ ++ {"-URW-*Palladio L-medium-r-normal--", (struct xfont*) NULL}, /* Palatino-Roman */ ++ {"-URW-*Palladio L-medium-i-normal--", (struct xfont*) NULL}, /* Palatino-Italic */ ++ {"-URW-*Palladio L-bold-r-normal--", (struct xfont*) NULL}, /* Palatino-Bold */ ++ {"-URW-*Palladio L-bold-i-normal--", (struct xfont*) NULL}, /* Palatino-BoldItalic */ ++ {"-URW-*Standard Symbols L-medium-r-normal--", (struct xfont*) NULL}, /* Symbol */ ++ {"-URW-*Chancery L-medium-i-normal--", (struct xfont*) NULL}, /* ZapfChancery-MediumItalic */ ++ {"-URW-*Dingbats-medium-r-normal--", (struct xfont*) NULL}, /* ZapfDingbats */ ++}; ++ + /* Use the following font names for any font that doesn't exist in the table above. + * These come with the Open Group X distribution so they should be a common set. + * +--- u_fonts.h ++++ u_fonts.h 2005-10-06 19:19:30.000000000 +0200 +@@ -32,9 +32,6 @@ + + extern int psfontnum(); + extern int latexfontnum(); +-extern struct _xfstruct x_fontinfo[], x_backup_fontinfo[]; +-extern struct _fstruct ps_fontinfo[]; +-extern struct _fstruct latex_fontinfo[]; + + /* element of linked list for each font + The head of list is for the different font NAMES, +@@ -61,5 +58,12 @@ + * sizes */ + }; + ++extern struct _xfstruct x_fontinfo[]; ++extern struct _xfstruct x_urw_fontinfo[]; ++extern struct _xfstruct x_adobe_fontinfo[]; ++extern struct _xfstruct x_backup_fontinfo[]; ++extern struct _fstruct ps_fontinfo[]; ++extern struct _fstruct latex_fontinfo[]; ++ + int x_fontnum(); + #endif /* U_FONTS_H */ +--- w_drawprim.c ++++ w_drawprim.c 2005-10-06 19:12:02.000000000 +0200 +@@ -99,6 +99,22 @@ + appres.buttonFont, appres.normalFont); + button_font = XLoadQueryFont(tool_d, appres.normalFont); + } ++ ++ /* ++ * Check for URW fonts, if not found use Adobe fonts ++ */ ++ strcpy(template,x_urw_fontinfo[0].template); ++ strcat(template,"0-0-*-*-*-*-"); ++ if (strstr(template,"ymbol") == NULL && strstr(template,"ingbats") == NULL) ++ strcat(template,"ISO8859-*"); ++ else ++ strcat(template,"*-*"); ++ if ((fontlist = XListFonts(tool_d, template, 1, &count)) == (char**)0) ++ memcpy(&x_fontinfo, &x_adobe_fontinfo, sizeof(struct _xfstruct) * NUM_FONTS); ++ else ++ memcpy(&x_fontinfo, &x_urw_fontinfo, sizeof(struct _xfstruct) * NUM_FONTS); ++ XFreeFontNames(fontlist); ++ + /* + * Now initialize the font structure for the X fonts corresponding to the + * Postscript fonts for the canvas. OpenWindows can use any LaserWriter +@@ -119,8 +135,8 @@ + strcpy(template,x_fontinfo[0].template); /* nope, check for font size 0 */ + strcat(template,"0-0-*-*-*-*-"); + /* add ISO8859 (if not Symbol font or ZapfDingbats) to font name */ +- if (strstr(template,"symbol") == NULL && +- strstr(template,"zapf dingbats") == NULL) ++ if (strstr(template,"ymbol") == NULL && ++ strstr(template,"ingbats") == NULL) + strcat(template,"ISO8859-*"); + else + strcat(template,"*-*"); +@@ -139,8 +155,8 @@ + strcpy(template,x_fontinfo[f].template); + strcat(template,"*-*-*-*-*-*-"); + /* add ISO8859 (if not Symbol font or ZapfDingbats) to font name */ +- if (strstr(template,"symbol") == NULL && +- strstr(template,"zapf dingbats") == NULL) ++ if (strstr(template,"ymbol") == NULL && ++ strstr(template,"ingbats") == NULL) + strcat(template,"ISO8859-*"); + else + strcat(template,"*-*"); +@@ -287,8 +303,8 @@ + /* attach pointsize to font name */ + strcat(template,"%d-*-*-*-*-*-"); + /* add ISO8859 (if not Symbol font or ZapfDingbats) to font name */ +- if (strstr(template,"symbol") == NULL && +- strstr(template,"zapf dingbats") == NULL) ++ if (strstr(template,"ymbol") == NULL && ++ strstr(template,"ingbats") == NULL) + strcat(template,"ISO8859-*"); + else + strcat(template,"*-*"); +@@ -299,8 +315,8 @@ + strcpy(template,x_backup_fontinfo[fnum].template); + strcat(template,"%d-*-*-*-*-*-"); + /* add ISO8859 (if not Symbol font or ZapfDingbats) to font name */ +- if (strstr(template,"symbol") == NULL && +- strstr(template,"zapf dingbats") == NULL) ++ if (strstr(template,"ymbol") == NULL && ++ strstr(template,"ingbats") == NULL) + strcat(template,"ISO8859-*"); + else + strcat(template,"*-*"); diff --git a/xfig.3.2.4.dif b/xfig.3.2.4.dif new file mode 100644 index 0000000..e775505 --- /dev/null +++ b/xfig.3.2.4.dif @@ -0,0 +1,535 @@ +--- Fig-color.ad ++++ Fig-color.ad 2006-07-31 17:56:25.000000000 +0200 +@@ -76,6 +76,12 @@ Fig*MenuButton*background: gray83 + ! in the color editor popup + Fig*mixedEdit.background: gray83 + ++Fig*mode_panel.background: gray67 ++Fig*mode_panel*topShadow:: white ++Fig*mode_panel*bottomShadow: gray17 ++Fig*mode_panel*topShadowPixel: white ++Fig*mode_panel*bottomShadowPixel: gray17 ++ + Fig*cancel.background: gray88 + Fig*dismiss.background: gray88 + Fig*commands*background: gray88 +@@ -85,12 +91,35 @@ Fig*horizontal.background: gray88 + + Fig*topruler.background: gray95 + Fig*sideruler.background: gray95 ++Fig*topruler.foreground: black ++Fig*sideruler.foreground: black + + ! file panel and scrollbar + + Fig*FigList*background: gray95 + Fig*List*background: gray95 +-Fig*Scrollbar.background: gray95 ++Fig*Scrollbar.background: gray77 ++Fig*Scrollbar.foreground: gray37 ++Fig*ScrollbarBackground: gray67 ++Fig*ScrollbarForeground: gray37 ++ ++Fig*horizontal.shadowWidth: 2 ++Fig*horizontal.topShadowPixel: gray95 ++Fig*horizontal.bottomShadowPixel: gray37 ++Fig*horizontal.topShadow: gray95 ++Fig*horizontal.bottomShadow: gray37 ++ ++Fig*Scrollbar.shadowWidth: 2 ++Fig*Scrollbar.topShadow: gray95 ++Fig*Scrollbar.bottomShadow: gray37 ++Fig*Scrollbar.topShadowPixel: gray95 ++Fig*Scrollbar.bottomShadowPixel: gray37 ++ ++Fig*stdColor.shadowWidth: 2 ++Fig*stdColor.topShadow: gray95 ++Fig*stdColor.bottomShadow: gray37 ++Fig*stdColor.topShadowPixel: gray95 ++Fig*stdColor.bottomShadowPixel: gray37 + + Fig*Label.background: gray80 + Fig*ind_box.background: gray80 +--- Fig.ad ++++ Fig.ad 2006-07-31 17:56:25.000000000 +0200 +@@ -10,6 +10,8 @@ Fig.version: 3.2.4 + + Fig*AllowShellResize: false + ++Fig.inches: false ++ + ! Image editor - can edit imported image + Fig.image_editor: xv + +@@ -20,7 +22,7 @@ Fig.ghostscript: gs + ! This is for viewing the xfig html reference. + ! For netscape, this command will open the help pages in a running netscape, + ! or start a new netscape if one isn't already running +-Fig.browser: netscape -remote 'openFile(%f)' || netscape %f ++Fig.browser: /usr/X11R6/lib/X11/xfig/browser %f + + ! pdfviewer - put your favorite pdf viewer here. + ! This is for viewing the xfig how-to guide and man pages +@@ -99,60 +101,62 @@ Fig.internalborderwidth: 1 + ! I include both for compatibility. Be sure to change both values when + ! modifying them. + +- Fig*horizontal.shadowWidth: 0 +- Fig*horizontal.topShadowPixel: black +- Fig*horizontal.bottomShadowPixel: white +- Fig*horizontal.topShadow: black +- Fig*horizontal.bottomShadow: white ++Fig*horizontal.shadowWidth: 0 ++Fig*horizontal.topShadowPixel: black ++Fig*horizontal.bottomShadowPixel: white ++Fig*horizontal.topShadow: black ++Fig*horizontal.bottomShadow: white + + ! the following is done so the widget set doesn't try to make shades of + ! the scrollbar shadows (even though the width is 0 it takes more colors) +- Fig*Scrollbar.shadowWidth: 0 +- Fig*Scrollbar.topShadow: black +- Fig*Scrollbar.bottomShadow: white +- Fig*Scrollbar.topShadowPixel: black +- Fig*Scrollbar.bottomShadowPixel: white ++ ++Fig*Scrollbar.shadowWidth: 0 ++Fig*Scrollbar.topShadow: black ++Fig*Scrollbar.bottomShadow: white ++Fig*Scrollbar.topShadowPixel: black ++Fig*Scrollbar.bottomShadowPixel: white + + ! this is for the standard color buttons in the color panel +- Fig*stdColor.shadowWidth: 2 +- Fig*stdColor.topShadow: black +- Fig*stdColor.bottomShadow: white +- Fig*stdColor.topShadowPixel: black +- Fig*stdColor.bottomShadowPixel: white ++ ++Fig*stdColor.shadowWidth: 2 ++Fig*stdColor.topShadow: black ++Fig*stdColor.bottomShadow: white ++Fig*stdColor.topShadowPixel: black ++Fig*stdColor.bottomShadowPixel: white + + ! turn off any shadows for the user color cells +- Fig*colorMemory.shadowWidth: 0 ++Fig*colorMemory.shadowWidth: 0 + + ! You may need or want to adjust the highlight thickness for the mode + ! and indicator panels depending on the results. If it is too thick + ! it will erase part of the button graphics. +- Fig*mode_panel*highlightThickness: 1 +- Fig*ind_panel.ind_box.button_form.button.highlightThickness: 1 ++Fig*mode_panel*highlightThickness: 1 ++Fig*ind_panel.ind_box.button_form.button.highlightThickness: 1 + ! Same for the popup panels from the indicator panel +- Fig*set_indicator_panel*Command.highlightThickness: 1 ++Fig*set_indicator_panel*Command.highlightThickness: 1 + + ! If you use the 3D Athena widget set and the small icons for the mode panel + ! (because you have a small screen; see Imakefile) you may want to reduce + ! the shadow width to 1 or 0. Uncomment the following in that case: +-! Fig*mode_panel*shadowWidth: 1 ++Fig*mode_panel*shadowWidth: 1 + + ! The following is for the update marker in the upper-right corner of the + ! indicator buttons. You may not want any highlight thickness because + ! the boxes are so small. +- Fig*ind_panel.ind_box.button_form.update.highlightThickness: 0 ++Fig*ind_panel.ind_box.button_form.update.highlightThickness: 1 + + ! This sets the shadows for the spinner arrows +- Fig*spinup.shadowWidth: 2 +- Fig*spindown.shadowWidth: 2 ++Fig*spinup.shadowWidth: 0 ++Fig*spindown.shadowWidth: 0 + + ! This gets rid of that funny black line that sometimes borders the canvas + +- Fig*canvas.shadowWidth: 0 ++Fig*canvas.shadowWidth: 0 + + !if on monochrome server, or no Fig-color app-defaults file + ! This background resource shows between the buttons like a border +- Fig*mode_panel.background: black +- Fig*mode_panel.foreground: black ++Fig*mode_panel.background: black ++Fig*mode_panel.foreground: black + + ! Specify a private Compose key database file. If this resource contains a "/" + ! then the wired-in name of the xfig global directory won't be prefixed to it. +--- Imakefile ++++ Imakefile 2006-07-31 18:20:06.000000000 +0200 +@@ -49,7 +49,7 @@ XCOMM Redefine the following if your PNG + XCOMM are in different places + + PNGLIBDIR = $(USRLIBDIR) +-PNGINC = -I/usr/local/include ++PNGINC = -I/usr/include + + XCOMM If don't want JPEG support, comment out the #define USEJPEG line + XCOMM Uncomment the #define for USEJPEG if you want to be able to import +@@ -68,8 +68,8 @@ XCOMM You must have version 5b or newer + + #ifdef USEJPEG + #ifdef USEINSTALLEDJPEG +-JPEGLIBDIR = /usr/local/lib +-JPEGINC = -I/usr/include/X11 ++JPEGLIBDIR = /usr/lib ++JPEGINC = -I/usr/include + #else + JPEGLIBDIR = ../jpeg + JPEGINC = -I$(JPEGLIBDIR) +@@ -87,8 +87,8 @@ XCOMM in /contrib/libraries. + XCOMM Change XPMLIBDIR if necessary to point to the xpm library (libXpm) + XCOMM Change XPMINC if necessary to point to the include file for xpm (xpm.h) + +-XCOMM #define USEXPM +-XCOMM #define USEXPM_ICON ++#define USEXPM ++#define USEXPM_ICON + + #ifdef USEXPM + XPMLIBDIR = $(USRLIBDIR) +@@ -105,17 +105,20 @@ XCOMM the 3d Athena Widget Set (highly r + XCOMM Then be sure to change the XAW3DINC to point to the directory where your + XCOMM 3D Athena widget headers are located + +-XCOMM #define XAW3D ++#define XAW3D + + #ifdef XAW3D + XAW3DINC = -I/usr/include/X11/Xaw3d + DUSEXAW3D = -DXAW3D + XAWLIB = -lXaw3d ++#else ++XAWSRC = SmeBSB.c SimpleMenu.c ++XAWOBJ = SmeBSB.o SimpleMenu.o + #endif + + XCOMM Uncomment the following if you have a wheel mouse. See docs for description. + +-XCOMM #define WHEELMOUSE ++#define WHEELMOUSE + + #ifdef WHEELMOUSE + DUSEWHEELMOUSE = -DWHEELMOUSE +@@ -154,7 +157,7 @@ XCOMM uncomment the following line if yo + XCOMM inline functions. With the "INLINE" keyword, you should notice that + XCOMM the display will be a bit faster in complex figures + +-XCOMM USEINLINE = -DUSE_INLINE ++USEINLINE = -DUSE_INLINE + + XCOMM use (and change) the following if you want the multi-key data base file + XCOMM somewhere other than the standard X11 library directory +@@ -162,11 +165,11 @@ XCOMM be sure to comment out the second + XCOMM XFIGLIBDIR = /usr/local/lib/xfig + + XCOMM use this if you want the multi-key data base file in the standard X11 tree +-XFIGLIBDIR = $(LIBDIR)/xfig ++XFIGLIBDIR = _DATA/xfig + + XCOMM XFIGDOCDIR tells where the html and pdf documentation should go + XCOMM XFIGDOCDIR = $(DOCDIR)/xfig +-XFIGDOCDIR = /usr/share/doc/xfig ++XFIGDOCDIR = /usr/share/doc/packages/xfig + + XCOMM MANDIR tells where the standard man pages should go (no need to change it + XCOMM if you want the man pages installed in the standard place on your system +@@ -200,7 +203,7 @@ XCOMM instead. + XCOMM Add `-DCACHE_SIZE_LIMIT=xxxx' where xxxx is the cache size in kilobytes. + XCOMM A cache size of zero turns caching off. + +-CACHE = -DCACHE_BITMAPS -DCACHE_SIZE_LIMIT=300 ++CACHE = -DCACHE_BITMAPS -DCACHE_SIZE_LIMIT=512 -DMAXNUMPTS=50000 -DBSDLPR + + XCOMM For SYSV systems with BSD-style printer command which use lpr instead of + XCOMM lp (SGI is one such machine), add -DBSDLPR to the DEFINES variable +@@ -214,6 +217,7 @@ XCOMM number of vertices. + XCOMM If you want a compiler other than "cc", define it here + + XCOMM CC = /opt/SUNWspro/bin/cc ++CC = gcc + + XCOMM ***************************************************** + XCOMM ***************************************************** +@@ -234,7 +238,7 @@ DEPLIBJPEG = $(JPEGLIBDIR)/libjpeg.a + #endif /* USEJPEG */ + + #ifdef I18N +-I18N_DEFS = -DI18N -DSETLOCALE ++I18N_DEFS = -DI18N + I18N_SRC = w_i18n.c + I18N_OBJ = w_i18n.o + #endif +@@ -304,7 +308,7 @@ XFIGSRC = d_arc.c d_arcbox.c d_box.c d_e + w_export.c w_file.c w_fontbits.c w_fontpanel.c w_grid.c w_icons.c \ + w_indpanel.c w_library.c w_modepanel.c w_mousefun.c w_msgpanel.c \ + w_print.c w_rottext.c w_rulers.c w_setup.c w_style.c w_util.c w_zoom.c \ +- $(I18N_SRC) SmeCascade.c SmeBSB.c SimpleMenu.c ++ $(I18N_SRC) SmeCascade.c $(XAWSRC) + + XFIGOBJ = d_arc.o d_arcbox.o d_box.o d_ellipse.o d_picobj.o \ + d_subspline.o d_line.o d_regpoly.o d_spline.o d_text.o \ +@@ -326,7 +330,7 @@ XFIGOBJ = d_arc.o d_arcbox.o d_box.o d_e + w_export.o w_file.o w_fontbits.o w_fontpanel.o w_grid.o w_icons.o \ + w_indpanel.o w_library.o w_modepanel.o w_mousefun.o w_msgpanel.o \ + w_print.o w_rottext.o w_rulers.o w_setup.o w_style.o w_util.o w_zoom.o \ +- $(I18N_OBJ) SmeCascade.o SmeBSB.o SimpleMenu.o ++ $(I18N_OBJ) SmeCascade.o $(XAWOBJ) + + XCOMM Other dependencies should be handled by "make depend" + +--- e_addpt.c ++++ e_addpt.c 2006-07-31 17:56:25.000000000 +0200 +@@ -52,6 +52,7 @@ point_adding_selected() + force_nopositioning(); + force_anglegeom(); + constrained = MOVE_ARB; ++ reset_action_on(); + } + + static void +--- e_align.c ++++ e_align.c 2006-07-31 17:56:25.000000000 +0200 +@@ -63,6 +63,7 @@ align_selected() + canvas_middlebut_proc = init_align_canvas; + canvas_rightbut_proc = null_proc; + set_cursor(pick15_cursor); ++ reset_action_on(); + } + + /* align objects to the whole canvas */ +--- e_arrow.c ++++ e_arrow.c 2006-07-31 17:56:25.000000000 +0200 +@@ -47,6 +47,7 @@ arrow_head_selected() + canvas_middlebut_proc = point_search_middle; + canvas_rightbut_proc = null_proc; + set_cursor(pick9_cursor); ++ reset_action_on(); + } + + static void +--- e_break.c ++++ e_break.c 2006-07-31 17:56:25.000000000 +0200 +@@ -43,6 +43,7 @@ break_selected() + canvas_middlebut_proc = object_search_middle; + canvas_rightbut_proc = null_proc; + set_cursor(pick15_cursor); ++ reset_action_on(); + } + + static void +@@ -82,8 +83,10 @@ init_break(p, type, x, y, px, py, loc_ta + list_delete_compound(&objects.compounds, cur_c); + tail(&objects, &object_tails); + append_objects(&objects, cur_c, &object_tails); ++#if 0 + /* add the depths from this compound */ + add_compound_depth(cur_c); ++#endif + toggle_markers_in_compound(cur_c); + set_tags(cur_c, loc_tag); + set_action(F_BREAK); +--- e_convert.c ++++ e_convert.c 2006-07-31 17:56:25.000000000 +0200 +@@ -47,6 +47,7 @@ convert_selected() + canvas_middlebut_proc = null_proc; + canvas_rightbut_proc = point_search_right; + set_cursor(pick15_cursor); ++ reset_action_on(); + } + + static void +--- e_deletept.c ++++ e_deletept.c 2006-07-31 17:56:25.000000000 +0200 +@@ -43,6 +43,7 @@ delete_point_selected() + canvas_middlebut_proc = null_proc; + canvas_rightbut_proc = null_proc; + set_cursor(pick9_cursor); ++ reset_action_on(); + } + + static void +--- e_flip.c ++++ e_flip.c 2006-07-31 17:56:25.000000000 +0200 +@@ -61,6 +61,7 @@ flip_ud_selected() + setcenter = 0; + setanchor = 0; + flip_selected(); ++ reset_action_on(); + } + + void +@@ -76,6 +77,7 @@ flip_lr_selected() + setcenter = 0; + setanchor = 0; + flip_selected(); ++ reset_action_on(); + } + + static void +--- e_movept.c ++++ e_movept.c 2006-07-31 17:56:25.000000000 +0200 +@@ -80,6 +80,7 @@ move_point_selected() + canvas_rightbut_proc = null_proc; + set_cursor(pick9_cursor); + force_anglegeom(); ++ reset_action_on(); + } + + static void +--- e_rotate.c ++++ e_rotate.c 2006-07-31 17:56:25.000000000 +0200 +@@ -94,6 +94,7 @@ rotate_selected() + canvas_middlebut_proc = object_search_middle; + canvas_rightbut_proc = set_unset_center; + set_cursor(pick15_cursor); ++ reset_action_on(); + } + + static void +--- e_update.c ++++ e_update.c 2006-07-31 17:56:25.000000000 +0200 +@@ -64,6 +64,7 @@ update_selected() + set_cursor(pick9_cursor); + /* manage on the update buttons */ + manage_update_buts(); ++ reset_action_on(); + } + + static int +--- fig.h ++++ fig.h 2006-07-31 17:56:25.000000000 +0200 +@@ -26,6 +26,7 @@ extern char *my_strdup(); + #if defined(ultrix) || defined(__bsdi__) || defined(Mips) || defined(apollo) + #include /* for stat structure */ + #endif ++#include + #include + + #if defined(__convex__) && defined(__STDC__) +--- mode.h ++++ mode.h 2006-07-31 17:56:25.000000000 +0200 +@@ -19,7 +19,7 @@ + #define MODE_H + + #define F_NULL 0 +-#define FIRST_DRAW_MODE F_CIRCLE_BY_RAD ++#define FIRST_DRAW_MODE F_CIRCLE_BY_RAD + #define F_CIRCLE_BY_RAD 1 + #define F_CIRCLE_BY_DIA 2 + #define F_ELLIPSE_BY_RAD 3 +@@ -38,7 +38,7 @@ + #define F_PICOBJ 16 + #define F_PLACE_LIB_OBJ 17 + +-#define FIRST_EDIT_MODE F_GLUE ++#define FIRST_EDIT_MODE F_GLUE + #define F_GLUE 30 + #define F_BREAK 31 + #define F_SCALE 32 +--- w_canvas.c ++++ w_canvas.c 2006-07-31 17:56:25.000000000 +0200 +@@ -529,6 +529,7 @@ reset_click_counter(widget, closure, eve + + /* clear the canvas - this can't be called to clear a pixmap, only a window */ + ++void + clear_canvas() + { + /* clear the splash graphic if it is still on the screen */ +--- w_canvas.h ++++ w_canvas.h 2006-07-31 17:56:25.000000000 +0200 +@@ -33,6 +33,7 @@ extern void toggle_show_balloons(); + extern void toggle_show_lengths(); + extern void toggle_show_vertexnums(); + extern void toggle_show_borders(); ++extern void clear_canvas(); + + extern canvas_selected(); + extern void paste_primary_selection(); +--- w_menuentry.c ++++ w_menuentry.c 2006-07-31 17:56:25.000000000 +0200 +@@ -170,7 +170,8 @@ Region region; + gc = entry->sme_bsb.norm_gray_gc; + } + +- if (entry->sme_bsb.label != NULL) { ++/* if (entry->sme_bsb.label != NULL) { */ ++ if (entry->sme_bsb.label == XtName((Widget)(entry))) { + int x_loc = entry->sme_bsb.left_margin; + int len = strlen(entry->sme_bsb.label); + char * label = entry->sme_bsb.label; +--- w_srchrepl.c ++++ w_srchrepl.c 2006-07-31 17:56:25.000000000 +0200 +@@ -56,7 +56,6 @@ There is currently no way to undo replac + #include "w_util.h" + #include "u_create.h" + #include +- + #define MAX_MISSPELLED_WORDS 200 + #define SEARCH_WIDTH 496 /* width of search message and results */ + +--- w_util.c ++++ w_util.c 2006-07-31 17:56:25.000000000 +0200 +@@ -1102,7 +1102,7 @@ check_action_on() + finish_text_input(0,0,0);/* finish up any text input */ + else { + if (cur_mode == F_PLACE_LIB_OBJ) +- cancel_place_lib_obj(); ++ cancel_place_lib_obj(0, 0, 0); + else { + put_msg("Finish (or cancel) the current operation before changing modes"); + beep(); +--- Doc/xfig.html ++++ Doc/xfig.html 2006-07-31 17:56:25.000000000 +0200 +@@ -848,6 +848,20 @@ between all buttons and panels (default + +

+ ++-international ++ ++

++
++Switch on international support (mainly Japanese ++and Korean), users of ISO Latin 1 (ISO-8859-1) ++probably should not use this, therefore the international ++support is switched off by default for locales using ISO-8859-1* ++codesets. For all other locales this option is already used ++by default. ++
++ ++

++ + + -jpeg[_quality] + +@@ -2208,6 +2222,7 @@ inches boolean true + -metric (false) + installowncmap boolean false -installowncmap + internalborderwidth integer 1 -internalBW ++international boolean false -international + jpeg_quality integer 75 -jpeg_quality + justify boolean false -left (false), + -right (true) +--- Doc/xfig.man ++++ Doc/xfig.man 2006-07-31 17:56:25.000000000 +0200 +@@ -531,6 +531,15 @@ Use lines of width + between all buttons and panels (default = 1). + .\"------- + .At ++.BR \-international ++.Ap ++Switch on international support (mainly Japanese and Korean), ++users of ISO Latin 1 (ISO-8859-1) probably should not use this, ++therefore the international support is switched off by default ++for locales using ISO-8859-1* codesets. For all other locales this ++option is already used by default. ++.\"------- ++.At + .BR \-jpeg [ _quality ] + .I quality + .Ap diff --git a/xfig.3.2.4.tar.bz2 b/xfig.3.2.4.tar.bz2 new file mode 100644 index 0000000..5147c9f --- /dev/null +++ b/xfig.3.2.4.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd29a4aa94f842c954c8c7edb9ff11576ea2f5bddac0923fa9aec6621404e3b2 +size 4784794 diff --git a/xfig.changes b/xfig.changes new file mode 100644 index 0000000..9e2f5a8 --- /dev/null +++ b/xfig.changes @@ -0,0 +1,323 @@ +------------------------------------------------------------------- +Thu Nov 16 14:18:54 CET 2006 - werner@suse.de + +- Set LC_NUMERIC to POSIX before print or export data (bug #213942) + +------------------------------------------------------------------- +Tue Nov 7 16:01:20 CET 2006 - ro@suse.de + +- fix docu permissions + +------------------------------------------------------------------- +Mon Jul 31 19:17:02 CEST 2006 - werner@suse.de + +- Use Imake defines for LIBDIR/SHAREDIR switch + +------------------------------------------------------------------- +Fri Jul 28 19:22:50 CEST 2006 - werner@suse.de + +- Make it build with X11R7 + +------------------------------------------------------------------- +Wed Feb 15 10:36:07 CET 2006 - stbinner@suse.de + +- add GenericName to .desktop file + +------------------------------------------------------------------- +Wed Jan 25 21:43:07 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Thu Oct 6 19:28:43 CEST 2005 - werner@suse.de + +- Make URW fonts an option, use Adobe as fallback + +------------------------------------------------------------------- +Wed Aug 31 13:33:19 CEST 2005 - werner@suse.de + +- Fix single byte buffer overflow due pedantic gcc4 (bug #114344) + +------------------------------------------------------------------- +Mon Aug 29 11:30:10 CEST 2005 - ro@suse.de + +- use own desktop file with icon (#113672) + +------------------------------------------------------------------- +Tue Mar 1 10:35:20 CET 2005 - meissner@suse.de + +- fixed font struct definitions to be after struct + definition for gcc4. +- -Wno-all is actually -w. + +------------------------------------------------------------------- +Thu Aug 26 11:53:39 CEST 2004 - werner@suse.de + +- Allow arguments in the wrapper script for xfig + +------------------------------------------------------------------- +Wed Aug 25 15:05:13 CEST 2004 - werner@suse.de + +- Avoid nasty warnings about not found actions +- Use wrapper script to avoid UTF-8 for the program its self + +------------------------------------------------------------------- +Fri Aug 13 16:03:35 CEST 2004 - werner@suse.de + +- Filelist: Add pixmap of xfig (#43698) +- Package docu: correct dir name in PDB (#43698) + +------------------------------------------------------------------- +Fri May 28 11:35:57 CEST 2004 - adrian@suse.de + +- fix invalid Categories (#41338) + +------------------------------------------------------------------- +Tue Apr 6 17:00:46 CEST 2004 - werner@suse.de + +- Add application desktop file for xfig (bug #38507 ???) + +------------------------------------------------------------------- +Mon Mar 22 13:29:27 CET 2004 - werner@suse.de + +- Fix NULL pointer access (bug #36650) + +------------------------------------------------------------------- +Thu Mar 18 17:43:45 CET 2004 - werner@suse.de + +- Remove .bak's from file list (bug #36311) + +------------------------------------------------------------------- +Thu Mar 11 15:53:55 CET 2004 - werner@suse.de + +- Add browser script for detection of varisou web browsers (#35669) +- Add security fix for temporary files +- Fix doc location +- Avoid extrem long build logs + +------------------------------------------------------------------- +Tue Feb 3 18:55:23 CET 2004 - werner@suse.de + +- Update to 3.2.4 + +------------------------------------------------------------------- +Sat Jan 10 17:38:27 CET 2004 - adrian@suse.de + +- build as user + +------------------------------------------------------------------- +Tue Jul 22 13:20:15 CEST 2003 - hare@suse.de + +- Fixed function declaration. + +------------------------------------------------------------------- +Fri Jun 13 08:39:58 CEST 2003 - kukuk@suse.de + +- Add workaround for brp-symlink script + +------------------------------------------------------------------- +Thu Jun 12 10:51:39 CEST 2003 - kukuk@suse.de + +- Use BuildRoot +- Fix filelist + +------------------------------------------------------------------- +Fri May 9 12:35:24 CEST 2003 - mfabian@suse.de + +- fix Bugzilla #26734: extend the fontsets in + xfig-international-std-fonts.dif to always match something to + avoid warnings "Missing charsets in String to FontSet conversion" + even if only few fonts are installed. + +------------------------------------------------------------------- +Thu May 8 20:46:46 CEST 2003 - mfabian@suse.de + +- adapt font names in xfig.3.2.3d-urw-fonts.dif to the names + as they are auto generated by mkfontscale since SuSE Linux 8.2. +- don't print warnings concerning input styles when compose is + used, input styles don't matter for compose. + +------------------------------------------------------------------- +Mon Mar 18 21:19:14 CET 2002 - mfabian@suse.de + +- fix bug #15077, don't exit when XSetLocaleModifiers("") fails, + this would make it impossible to use the '-international' option + unless some input server is running, which is nonsense for most + non-Asian languages e.g. for Czech. +- enable '-international' automatically when + NULL == strcasestr(nl_langinfo(CODESET),"ISO-8859-1") + (i.e. enable it automatically for Czech as well). +- use better fonts for on screen display of Times-Roman and + Times-Bold when '-international' is used. + +------------------------------------------------------------------- +Mon Mar 18 12:45:13 CET 2002 - werner@suse.de + +- Fix bug # 15076: add link /usr/X11R6/lib/X11/xfig/html/ + pointing to /usr/share/doc/packages/xfig/html/, + add link /usr/X11R6/lib/X11/xfig/xfig.html pointing to + /usr/share/doc/packages/xfig/xfig.html, add link + /usr/X11R6/lib/X11/xfig/xfig-howto.pdf pointing to + /usr/share/doc/packages/xfig/xfig-howto.pdf + +------------------------------------------------------------------- +Thu Mar 7 12:43:21 CET 2002 - werner@suse.de + +- Fix bug # 14588: add link /usr/X11R6/lib/X11/xfig/Libraries + pointing to /usr/share/doc/packages/xfig/Examples/Libraries + +------------------------------------------------------------------- +Fri Feb 22 18:28:57 CET 2002 - mfabian@suse.de + +- use the URW fonts for display on X11 instead of bitmap fonts. + Using the URW fonts for display on X11 *and* for printing with + Ghostscript has the advantage that printout looks much more + similar to the preview on X11. Much more WYSIWYG now. + On top of that, the bitmap fonts could not be scaled anymore + because we now have ":unscaled" added to every directory in + the font path which contains only bitmap fonts. Therefore + changing the font size in xfig ceased to work on X11, it worked + only in the PostScript output. Because of this the X11 display + was very different from the PostScript output. +- add font-test.fig as a sample file to test the correct display + of the URW fonts. +- add xfig.3.2.3d-xim.dif to fix XIM for Japanese and Korean. + (didn't work at all previously because a call to + XSetLocaleModifiers() was missing) +- switch on the '-international' option for all locales using + codesets different from 'ISO-8859-*' on by default. +- remove Korean app-defaults. The only reason for it's existence + was to set 'Fig.international: true' apart from that it was + identical to the standard app-defaults file. And because of + some bug (which I still don't understand) it wasn't read anyway + and therefore achieved nothing. + +------------------------------------------------------------------- +Fri Feb 1 00:26:07 CET 2002 - ro@suse.de + +- changed neededforbuild to + +------------------------------------------------------------------- +Tue Dec 11 12:45:56 CET 2001 - werner@suse.de + +- Add forgotten examples +- Add forgotten docs + +------------------------------------------------------------------- +Mon Dec 10 16:33:10 CET 2001 - werner@suse.de + +- Update to version 3.2.3d + +------------------------------------------------------------------- +Tue May 8 18:47:29 CEST 2001 - mfabian@suse.de + +- bzip2 sources + +------------------------------------------------------------------- +Thu Jan 25 17:17:38 CET 2001 - violiet@suse.de + +- added Korean resource. + +------------------------------------------------------------------- +Thu Dec 14 15:31:00 CET 2000 - werner@suse.de + +- Fixed the improve of the object searching at higher zooms (bug#4672) + +------------------------------------------------------------------- +Tue Oct 10 16:46:11 CEST 2000 - werner@suse.de + +- Move XtSetLanguageProc after XtAppInitialize because otherwise + LC_NUMERIC will be overwritten by LANG. + +------------------------------------------------------------------- +Fri Sep 15 17:17:22 CEST 2000 - werner@suse.de + +- Update to 3.2.3c + * include bug fix for f_read.c + * Enable international support at compile time but disable + it at run time (works only for Japanese and Korean). + User could use -international + * Mention -international in the manual and html page + +------------------------------------------------------------------- +Fri Jun 30 15:37:59 CEST 2000 - werner@suse.de + +- Workaround for un-initialized label in sme_bsb class + +------------------------------------------------------------------- +Wed May 31 16:22:54 CEST 2000 - werner@suse.de + +- use %{_defaultdocdir} + +------------------------------------------------------------------- +Mon Mar 27 12:48:09 CEST 2000 - werner@suse.de + +- Avoid sparc nasties + +------------------------------------------------------------------- +Fri Mar 24 14:46:11 CET 2000 - werner@suse.de + +- Update to new version 3.2.3a +- Add patch for special jpeg version +- Change some minor shadow colorings + +------------------------------------------------------------------- +Mon Sep 13 17:23:57 CEST 1999 - bs@suse.de + +- ran old prepare_spec on spec file to switch to new prepare_spec. + +------------------------------------------------------------------- +Wed Apr 7 20:35:51 CEST 1999 - werner@suse.de + +- Use the macro __need___va_list instead of moving varargs.h +- Integrate the cut+paste patch +- Use colored XPM icon + +------------------------------------------------------------------- +Fri Mar 5 01:00:51 MET 1999 - ro@suse.de + +- move varargs topward to make it compile + +------------------------------------------------------------------- +Wed Dec 9 16:40:43 MET 1998 - max@suse.de + +- added whole /usr/X11R6/lib/X11/xfig path to the file list, to get + online documentation and cliparts into the rpm package. + +------------------------------------------------------------------- +Fri Oct 30 11:24:41 MET 1998 - ro@suse.de + +- update to 3.2.2 + +------------------------------------------------------------------- +Thu Sep 17 16:56:38 MEST 1998 - ro@suse.de + +- don't redeclare sys_errlist for glibc + +------------------------------------------------------------------- +Mon Oct 20 13:35:40 MEST 1997 - ro@suse.de + +- ready for autobuild + +---------------------------------------------------------------------------- +Tue May 27 20:03:59 MEST 1997 - florian@suse.de + + +- update to version 3.2 + +---------------------------------------------------------------------------- +Tue May 27 20:03:59 MEST 1997 - florian@suse.de + + +- update to version 3.2.0-beta3 + +- add more docu and examples + + +---------------------------------------------------------------------------- +Wed Nov 6 00:13:26 CET 1996 - florian@suse.de + + +- changed to use cm as default metric and not inches + + diff --git a/xfig.desktop b/xfig.desktop new file mode 100644 index 0000000..9d14679 --- /dev/null +++ b/xfig.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Categories=VectorGraphics +Exec=@@BINDIR@@/xfig +InitialPreference=2 +MimeType=image/x-xfig +Name=xfig +GenericName=Vector Drawing +Terminal=false +Type=Application +Icon=xfig diff --git a/xfig.sh b/xfig.sh new file mode 100644 index 0000000..f62e849 --- /dev/null +++ b/xfig.sh @@ -0,0 +1,17 @@ +#!/bin/sh +# +# Reset UTF-8 charmaping to a more xfig compatible one +# +for lc in LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE \ + LC_MONETARY LC_MESSAGES LC_PAPER LC_NAME \ + LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT \ + LC_IDENTIFICATION LC_ALL +do + eval val="\$$lc" + test -n "$val" || continue + case "$val" in + *.UTF-8) eval $lc=\${val%[.@]*} ;; + esac +done +unset ret val +exec -a $0 @@BINDIR@@/xfig.bin ${1+"$@"} diff --git a/xfig.spec b/xfig.spec new file mode 100644 index 0000000..dc31430 --- /dev/null +++ b/xfig.spec @@ -0,0 +1,300 @@ +# +# spec file for package xfig (Version 3.2.4) +# +# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany. +# This file and all modifications and additions to the pristine +# package are under the same license as the package itself. +# +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +# norootforbuild + +Name: xfig +BuildRequires: libjpeg-devel libpng-devel netpbm update-desktop-files xaw3d xorg-x11 xorg-x11-devel +License: X11/MIT, Other License(s), see package +Group: Productivity/Graphics/Vector Editors +Provides: xfig.3.2.3d +Requires: transfig netpbm ghostscript-fonts-std +Autoreqprov: on +Version: 3.2.4 +Release: 107 +Summary: Facility for Interactive Generation of Figures under the X Window System +Url: http://www.xfig.org/ +Source: xfig.%{version}.tar.bz2 +Source1: font-test.fig +Source2: browser +Source3: xfig.sh +Source4: xfig.desktop +Patch0: xfig.%{version}.dif +Patch1: xfig.%{version}-urw-fonts.dif +Patch2: xfig.3.2.3d-xim.dif +Patch3: xfig.3.2.3d-international-std-fonts.dif +Patch4: xfig.3.2.3d-xcolor.dif +Patch5: xfig-%{version}-mkstemp.dif +Patch6: xfig.%{version}-null.dif +Patch7: xfig.%{version}-quiet.dif +Patch8: xfig.%{version}-gcc4.dif +Patch9: xfig.%{version}-locale.dif +BuildRoot: %{_tmppath}/%{name}-%{version}-build +%{expand: %%global _exec_prefix %(type -p pkg-config &>/dev/null && pkg-config --variable prefix x11 || echo /usr/X11R6)} +%if "%_exec_prefix" == "/usr/X11R6" + +%global _mandir %{_exec_prefix}/man +%define _x11data %{_exec_prefix}/lib/X11 +%define _data $(LIBDIR) +%define _appdefdir %{_x11data}/app-defaults +%else +%define _x11data %{_datadir}/X11 +%define _data $(SHAREDIR) +%define _appdefdir %{_x11data}/app-defaults +%endif + +%description +Xfig is a menu-driven tool that allows the user to draw and manipulate +objects interactively in an X Window System window. The resulting +pictures can be saved, printed on PostScript printers, or converted to +a variety of other formats (to allow inclusion in LaTeX documents, for +example). + +Documentation: /usr/share/doc/packages/xfig & man xfig + +Examples: /usr/share/doc/packages/xfig/TheExamples + + + +Authors: +-------- + Anthony Dekker + Brian V. Smith + Jim Daley + Ross Martin + Uwe Bonnes + +%prep +%setup -q -n xfig.%{version} +%patch0 -p0 +%patch1 -p0 -b .urw-fonts +%patch2 -p1 -b .xim +%patch3 -p1 -b .international-std-fonts +%patch4 -p0 -b .xcolor +%patch5 -p1 -b .security +%patch6 -p0 -b .null +%patch7 -p0 -b .quiet +%patch8 -p0 -b .gcc4 +%patch9 -p0 -b .locale +cp $RPM_SOURCE_DIR/font-test.fig . +xmkmf -a -D_DATA='%{_data}' + +%build +make CCOPTIONS="-fno-strict-aliasing $RPM_OPT_FLAGS -w" + +%install +mkdir -p %{buildroot}%{_bindir} +mkdir -p %{buildroot}%{_x11data}/xfig +mkdir -p %{buildroot}%{_appdefdir} +mkdir -p %{buildroot}%{_defaultdocdir}/%{name}/Libraries/Examples +rm -rf %{buildroot}%{_defaultdocdir}/%{name}/Examples +ln -sf Libraries/Examples \ + %{buildroot}%{_defaultdocdir}/%{name}/TheExamples +ln -sf %{_defaultdocdir}/%{name}/Libraries \ + %{buildroot}%{_x11data}/xfig/Libraries +ln -sf %{_defaultdocdir}/%{name}/html \ + %{buildroot}%{_x11data}/xfig/ +ln -sf %{_defaultdocdir}/%{name}/xfig.html \ + %{buildroot}%{_x11data}/xfig/ +ln -sf %{_defaultdocdir}/%{name}/xfig-howto.pdf \ + %{buildroot}%{_x11data}/xfig/ +install -m 0755 %{SOURCE2} %{buildroot}%{_x11data}/xfig/ +make DESTDIR=%{buildroot} install +make DESTDIR=%{buildroot} install.man +mkdir -p %{buildroot}/%{_docdir}/%{name} +cp -pr README FIGAPPS Libraries font-test.fig %{buildroot}/%{_docdir}/%{name} +cp -pr Doc/FORMAT* Doc/TODO Doc/html Doc/*.pdf Doc/*.html %{buildroot}/%{_docdir}/%{name} +find %{buildroot}%{_defaultdocdir}/%{name}/ -name '*.bak' | xargs -r rm +find %{buildroot}%{_defaultdocdir}/%{name}/ -type f -print0 | xargs -0 chmod 644 +mkdir -p %{buildroot}%{_datadir}/pixmaps +cp -p %{name}.png %{buildroot}%{_datadir}/pixmaps/ +mv %{buildroot}%{_bindir}/xfig %{buildroot}%{_bindir}/xfig.bin +sed 's|@@BINDIR@@|%{_bindir}|' < %{SOURCE3} > %{buildroot}%{_bindir}/xfig +chmod 0755 %{SOURCE3} %{buildroot}%{_bindir}/xfig +install -d %{buildroot}/usr/share/applications +sed 's|@@BINDIR@@|%{_bindir}|' < %{SOURCE4} > %{buildroot}/usr/share/applications/xfig.desktop +chmod 0644 %{buildroot}/usr/share/applications/xfig.desktop +%suse_update_desktop_file xfig VectorGraphics &> /dev/null + +%files +%defattr(-,root,root,755) +%doc %{_docdir}/%{name} +%{_datadir}/applications/xfig.desktop +%{_datadir}/pixmaps/xfig.png +%{_x11data}/xfig +%{_bindir}/xfig* +%config %{_appdefdir}/Fig +%config %{_appdefdir}/Fig-color +%doc %{_mandir}/man1/xfig.1x.gz + +%changelog -n xfig +* Thu Nov 16 2006 - werner@suse.de +- Set LC_NUMERIC to POSIX before print or export data (bug #213942) +* Tue Nov 07 2006 - ro@suse.de +- fix docu permissions +* Mon Jul 31 2006 - werner@suse.de +- Use Imake defines for LIBDIR/SHAREDIR switch +* Fri Jul 28 2006 - werner@suse.de +- Make it build with X11R7 +* Wed Feb 15 2006 - stbinner@suse.de +- add GenericName to .desktop file +* Wed Jan 25 2006 - mls@suse.de +- converted neededforbuild to BuildRequires +* Thu Oct 06 2005 - werner@suse.de +- Make URW fonts an option, use Adobe as fallback +* Wed Aug 31 2005 - werner@suse.de +- Fix single byte buffer overflow due pedantic gcc4 (bug #114344) +* Mon Aug 29 2005 - ro@suse.de +- use own desktop file with icon (#113672) +* Tue Mar 01 2005 - meissner@suse.de +- fixed font struct definitions to be after struct + definition for gcc4. +- -Wno-all is actually -w. +* Thu Aug 26 2004 - werner@suse.de +- Allow arguments in the wrapper script for xfig +* Wed Aug 25 2004 - werner@suse.de +- Avoid nasty warnings about not found actions +- Use wrapper script to avoid UTF-8 for the program its self +* Fri Aug 13 2004 - werner@suse.de +- Filelist: Add pixmap of xfig (#43698) +- Package docu: correct dir name in PDB (#43698) +* Fri May 28 2004 - adrian@suse.de +- fix invalid Categories (#41338) +* Tue Apr 06 2004 - werner@suse.de +- Add application desktop file for xfig (bug #38507 ???) +* Mon Mar 22 2004 - werner@suse.de +- Fix NULL pointer access (bug #36650) +* Thu Mar 18 2004 - werner@suse.de +- Remove .bak's from file list (bug #36311) +* Thu Mar 11 2004 - werner@suse.de +- Add browser script for detection of varisou web browsers (#35669) +- Add security fix for temporary files +- Fix doc location +- Avoid extrem long build logs +* Tue Feb 03 2004 - werner@suse.de +- Update to 3.2.4 +* Sat Jan 10 2004 - adrian@suse.de +- build as user +* Tue Jul 22 2003 - hare@suse.de +- Fixed function declaration. +* Fri Jun 13 2003 - kukuk@suse.de +- Add workaround for brp-symlink script +* Thu Jun 12 2003 - kukuk@suse.de +- Use BuildRoot +- Fix filelist +* Fri May 09 2003 - mfabian@suse.de +- fix Bugzilla #26734: extend the fontsets in + xfig-international-std-fonts.dif to always match something to + avoid warnings "Missing charsets in String to FontSet conversion" + even if only few fonts are installed. +* Thu May 08 2003 - mfabian@suse.de +- adapt font names in xfig.3.2.3d-urw-fonts.dif to the names + as they are auto generated by mkfontscale since SuSE Linux 8.2. +- don't print warnings concerning input styles when compose is + used, input styles don't matter for compose. +* Mon Mar 18 2002 - mfabian@suse.de +- fix bug #15077, don't exit when XSetLocaleModifiers("") fails, + this would make it impossible to use the '-international' option + unless some input server is running, which is nonsense for most + non-Asian languages e.g. for Czech. +- enable '-international' automatically when + NULL == strcasestr(nl_langinfo(CODESET),"ISO-8859-1") + (i.e. enable it automatically for Czech as well). +- use better fonts for on screen display of Times-Roman and + Times-Bold when '-international' is used. +* Mon Mar 18 2002 - werner@suse.de +- Fix bug # 15076: add link /usr/X11R6/lib/X11/xfig/html/ + pointing to /usr/share/doc/packages/xfig/html/, + add link /usr/X11R6/lib/X11/xfig/xfig.html pointing to + /usr/share/doc/packages/xfig/xfig.html, add link + /usr/X11R6/lib/X11/xfig/xfig-howto.pdf pointing to + /usr/share/doc/packages/xfig/xfig-howto.pdf +* Thu Mar 07 2002 - werner@suse.de +- Fix bug # 14588: add link /usr/X11R6/lib/X11/xfig/Libraries + pointing to /usr/share/doc/packages/xfig/Examples/Libraries +* Fri Feb 22 2002 - mfabian@suse.de +- use the URW fonts for display on X11 instead of bitmap fonts. + Using the URW fonts for display on X11 *and* for printing with + Ghostscript has the advantage that printout looks much more + similar to the preview on X11. Much more WYSIWYG now. + On top of that, the bitmap fonts could not be scaled anymore + because we now have ":unscaled" added to every directory in + the font path which contains only bitmap fonts. Therefore + changing the font size in xfig ceased to work on X11, it worked + only in the PostScript output. Because of this the X11 display + was very different from the PostScript output. +- add font-test.fig as a sample file to test the correct display + of the URW fonts. +- add xfig.3.2.3d-xim.dif to fix XIM for Japanese and Korean. + (didn't work at all previously because a call to + XSetLocaleModifiers() was missing) +- switch on the '-international' option for all locales using + codesets different from 'ISO-8859-*' on by default. +- remove Korean app-defaults. The only reason for it's existence + was to set 'Fig.international: true' apart from that it was + identical to the standard app-defaults file. And because of + some bug (which I still don't understand) it wasn't read anyway + and therefore achieved nothing. +* Fri Feb 01 2002 - ro@suse.de +- changed neededforbuild to +* Tue Dec 11 2001 - werner@suse.de +- Add forgotten examples +- Add forgotten docs +* Mon Dec 10 2001 - werner@suse.de +- Update to version 3.2.3d +* Tue May 08 2001 - mfabian@suse.de +- bzip2 sources +* Thu Jan 25 2001 - violiet@suse.de +- added Korean resource. +* Thu Dec 14 2000 - werner@suse.de +- Fixed the improve of the object searching at higher zooms (bug#4672) +* Tue Oct 10 2000 - werner@suse.de +- Move XtSetLanguageProc after XtAppInitialize because otherwise + LC_NUMERIC will be overwritten by LANG. +* Fri Sep 15 2000 - werner@suse.de +- Update to 3.2.3c + * include bug fix for f_read.c + * Enable international support at compile time but disable + it at run time (works only for Japanese and Korean). + User could use -international + * Mention -international in the manual and html page +* Fri Jun 30 2000 - werner@suse.de +- Workaround for un-initialized label in sme_bsb class +* Wed May 31 2000 - werner@suse.de +- use %%{_defaultdocdir} +* Mon Mar 27 2000 - werner@suse.de +- Avoid sparc nasties +* Fri Mar 24 2000 - werner@suse.de +- Update to new version 3.2.3a +- Add patch for special jpeg version +- Change some minor shadow colorings +* Mon Sep 13 1999 - bs@suse.de +- ran old prepare_spec on spec file to switch to new prepare_spec. +* Wed Apr 07 1999 - werner@suse.de +- Use the macro __need___va_list instead of moving varargs.h +- Integrate the cut+paste patch +- Use colored XPM icon +* Fri Mar 05 1999 - ro@suse.de +- move varargs topward to make it compile +* Wed Dec 09 1998 - max@suse.de +- added whole /usr/X11R6/lib/X11/xfig path to the file list, to get + online documentation and cliparts into the rpm package. +* Fri Oct 30 1998 - ro@suse.de +- update to 3.2.2 +* Thu Sep 17 1998 - ro@suse.de +- don't redeclare sys_errlist for glibc +* Mon Oct 20 1997 - ro@suse.de +- ready for autobuild +* Tue May 27 1997 - florian@suse.de +- update to version 3.2 +- update to version 3.2.0-beta3 +- add more docu and examples +* Thu Jan 02 1997 - florian@suse.de +- changed to use cm as default metric and not inches