Parts of RustFig are derived from xfig and fig2dev (https://mcj.sourceforge.net/). Files containing such parts say so in a comment naming the original source file. Those parts carry the following copyright and permission notice. FIG : Facility for Interactive Generation of figures Fig2dev: Translate Fig code to various Devices Copyright (c) 1985-1988 by Supoj Sutanthavibul Copyright (c) 1991 by Micah Beck Parts Copyright (c) 1989-2015 by Brian V. Smith Parts Copyright (c) 1991 by Paul King Parts Copyright (c) 1994 by Bill Taylor Parts Copyright (c) 1991 by Henning Spruth Parts Copyright (c) 1988 by Frank Schmuck Copyright (c) 1988 by Conrad Kwok Copyright (c) 1992 by Herbert Bauer and B. Raichle Parts Copyright (c) 1992 by Brian Boyter Parts Copyright (c) 1995 by C. Blanc and C. Schlick Copyright 1995 by Dane Dwyer Copyright (c) 1999 by T. Sato Copyright (c) 1999 by Philippe Bekaert Parts Copyright (c) 2002 by Anthony Starks Copyright (c) 2002 by Christian Gollwitzer Parts Copyright (c) 2002-2006 by Martin Kroeker Parts Copyright (c) 2004 by Chris Moller Parts Copyright (c) 2015-2024 by Thomas Loimer and the other contributors named in the xfig and fig2dev sources. Any party obtaining a copy of these files is granted, free of charge, a full and unrestricted irrevocable, world-wide, paid up, royalty-free, nonexclusive right and license to deal in this software and documentation files (the "Software"), including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense and/or sell copies of the Software, and to permit persons who receive copies from any such party to do so, with the only requirement being that the above copyright and this permission notice remain intact. Files derived from xfig and fig2dev ----------------------------------- Each file below carries a comment naming its sources and pointing to this notice. xfig's sources are cited as src/..., fig2dev's as fig2dev/... (its drivers as fig2dev/dev/...); app-defaults/Fig is xfig's resource file. `cargo xtask licences` checks that this list and those comments agree. - crates/engine/src/anglegeom.rs: xfig src/u_elastic.c, src/u_geom.c, src/w_indpanel.c - crates/engine/src/cmd/chop.rs: xfig src/e_chop.c, src/w_intersect.c - crates/engine/src/cmd/compound.rs: xfig src/e_compound.c - crates/engine/src/cmd/dimline.rs: xfig src/d_line.c, src/e_scale.c - crates/engine/src/cmd/file.rs: xfig src/u_print.c, src/f_picobj.c (relative picture names), src/u_scale.c (read_scale_compound) - crates/engine/src/cmd/joinsplit.rs: xfig src/e_joinsplit.c - crates/engine/src/cmd/measure.rs: xfig src/e_measure.c, src/u_geom.c, src/w_msgpanel.c - crates/engine/src/cmd/picture.rs: xfig src/e_edit.c (picture panel) - crates/engine/src/cmd/tangent.rs: xfig src/e_tangent.c, src/u_smartsearch.c, src/u_geom.c - crates/engine/src/cmd/sfactor.rs: xfig src/e_edit.c - crates/engine/src/coords.rs: xfig src/w_keyboard.c - crates/engine/src/dimline.rs: xfig src/d_line.c, src/u_create.c, src/e_scale.c, src/f_util.c, src/w_msgpanel.c - crates/engine/src/links.rs: xfig src/u_list.c, src/u_elastic.c - crates/engine/src/cmdline.rs: xfig src/main.c (option table, help list, option parsing), doc/xfig.man.in (options) - crates/engine/src/prefs.rs:xfig src/main.c (resources, options), src/f_util.c (read_xfigrc), doc/xfig.man.in (resource table) - crates/engine/src/snap.rs: xfig src/w_snap.c, src/w_intersect.c - crates/engine/src/tools/chop.rs: xfig src/e_chop.c - crates/engine/src/tools/compound.rs: xfig src/e_compound.c, src/e_joinsplit.c - crates/engine/src/tools/lengths.rs: xfig src/w_msgpanel.c - crates/engine/src/export_panel.rs: xfig src/w_export.c, src/u_print.c, src/f_util.c - crates/engine/src/file_panel.rs: xfig src/w_file.c - crates/ui-egui/src/file_panel.rs: xfig src/w_file.c - crates/engine/src/print.rs: xfig src/u_print.c, src/w_print.c - crates/ui-egui/src/print_dialog.rs: xfig src/w_print.c - crates/engine/src/tools/markers.rs: xfig src/u_markers.c, src/w_modepanel.c, src/object.h - crates/engine/src/tools/mod.rs: xfig src/w_modepanel.c, src/d_*.c, src/e_*.c, src/w_canvas.c - crates/engine/src/tools/measure.rs: xfig src/e_measure.c, src/u_search.c - crates/engine/src/tools/tangent.rs: xfig src/e_tangent.c, src/u_smartsearch.c - crates/engine/src/tools/ctrl.rs: xfig src/w_zoom.c, src/w_canvas.c, src/e_edit.c, src/u_search.c - crates/format/src/fig_write.rs: xfig src/f_save.c - crates/geom/src/intersect.rs: xfig src/w_intersect.c - crates/model/src/object.rs: xfig src/u_redraw.c, src/f_save.c - crates/render/src/lib.rs: xfig src/u_redraw.c; fig2dev/dev/genps.c - crates/text/src/compose.rs: xfig CompKeyDB, src/w_canvas.c - crates/ui-egui/src/attributes.rs: xfig src/w_indpanel.c, src/w_indpanel.h, src/w_modepanel.c, src/w_icons.c - crates/ui-egui/src/dialogs.rs: xfig src/e_edit.c (edit panel) - crates/ui-egui/src/dimline_panel.rs: xfig src/w_indpanel.c (popup_dimline_panel) - crates/ui-egui/src/menus.rs: xfig src/w_cmdpanel.c, src/w_modepanel.c, app-defaults/Fig - crates/ui-egui/src/mode_icons.rs: xfig src/w_icons.c (traced mode icons) - crates/ui-egui/src/panels.rs: xfig src/w_modepanel.c, src/w_mousefun.c, src/w_layers.c, src/w_snap.c, src/w_icons.c - crates/ui-egui/src/point_entry.rs: xfig src/w_keyboard.c - crates/ui-egui/src/digitize.rs: xfig src/w_digitize.c - crates/ui-egui/src/reload.rs: xfig src/main.c (autorefresh), src/w_file.c (new_xfig_request) - crates/engine/src/cmd/digitize.rs: xfig src/w_digitize.c - crates/engine/src/cmd/color.rs: xfig src/w_color.c (colour editor: add, modify, delete) - crates/ui-egui/src/rulers.rs: xfig src/w_rulers.c, src/u_pan.c - crates/ui-egui/src/vector_icons.rs: xfig src/w_icons.c (compositions of the attribute pictures) - crates/ui-egui/src/xfig_icons.rs: xfig src/w_icons.c, src/w_indpanel.c (bitmaps copied verbatim) - crates/engine/src/library.rs: xfig src/w_library.c, src/e_placelib.c - crates/engine/src/cmd/library.rs: xfig src/w_library.c, src/e_placelib.c - crates/ui-egui/src/library.rs: xfig src/w_library.c - crates/engine/src/tools/mode_messages.rs: xfig src/w_modepanel.c - crates/engine/src/view.rs: xfig src/w_indpanel.c (inc_zoom, dec_zoom, show_zoom) Documentation: the bundled manual (docs/manual/*.md, shown in Help > RustFig Manual) is written for RustFig and adapts parts of xfig's HTML manual (doc/html/); it carries the notice above. - crates/text/src/symbol_tables.rs: fig2dev dev/gensvg.c (Symbol and ZapfDingbats code tables)