1. For the upcoming release ===============================================================================

2. For later releases ===============================================================================
	- polybool:
		- BUG: work/poly/tester/tests/TODO/selfi1/: two islands of polygon A (red) causes self intersection
			-> this confuses the algo later because poly B intersects too much
			-> cheap cross-check: subtract 1 from the x coords of the triangle in A, so self intersection doesn't happen
	- API additions (4.1.0)
		- move sch_sim_mktempdir() and sch_sim_rmtempdir() from sch-rnd to core/compat_fs.c
		- move pcb_act_Export from pcb-rnd to librnd so it's accessible for sch-rnd and camv-rnd
		- move sim_export() from sch-rnd sim plugins to hid/
		- preview widget zoom upgrades (see TODO()s in sch-rnd lib_plot)
			- per widget configurable maximum zoom level (with poke?)
			- pass back current zoom level in expose_ctx
			- control flip (with poke?)
		- FEATURE: getxy in sch-rnd [report: Majenko]
			- return value of action is coord, and coord is converted using %mH
			- which alwaysl results in mm!
			- make %mH configurable by the host app (and document the new API)
			- easiest way: rnd_printf.c, expose human_coord_t *human_coord so it can be overwritten with a different array
		- move sch-rnd's plugins/sch_dialogs/timed_chg.h to lib_hid_common
		- move sch-rnd's libcschem/util_path to librnd; pcb-rnd has something similar too
		- move sch-rnd's basename() call next to dirname()
		- FEATURE: the librnd IRC client should move focus to the text entry box if connection is successful. It does not do this, and typing on successful connection has the potential to disconnect the user if user neglects to select the text entry box first [report: Erich]
			- disabling the widget makes it lose focus; need to have an API for setting focus
		- FEATURE: font -v2 support:
			- prepare for the new font lib
				- move camv-rnd's mx_extract_*() to the font xform lib
				- move the font xform lib to core, keep a .h at the font #including the new .h for compatibility
				- copy font to font2
				- add spares
			- font upgrade (font2):
				- publish MAX_SIMPLE_POLY_POINTS in the header, pcb-rnd needs it (e.g. for ttf import and font decompositing)
				- test-parse call or some other way to avoid font load error on valid lihata fonts
				- baseline?
				- support for real tabs
				- maybe support for multiline? think this over
				- optional kerning table: a single dx value for combiation of 2 glyphs; second glyph usually needs to moved in the negative direction
				- save and load ->height, check calls to rnd_font_fix_v1() and don't call it if ->height is loaded
				- maybe: replace delta with advance, calculated from glyph's 0, not from glyph's width (so our engine is less strange)
				- unicode translation table so that the upper 127 and lower 32 chars can be used for mu, degree and similar
					- custom &name; -> integer translation table
					- as a convention &amp; should be added to point to &
					- new text flag in sch-rnd and pcb-rnd (similar to dyntext) that activates translation
					- GUI text edit could auto-replace unicode with &unicode_name;
					- upgrade aussiefont: greek alphabet (2*24), <sup> numbers (10) and degree sign all in upper 127
	- BUG: perma scripts are initialized too late
		- sch-rnd postproc scripts won't run when invoked with ./sch-rnd a.rs
		- plugins are all loaded and initialied but permascripts are loaded only in interactive main loop
		- can't easily change this without breaking existing scripts that depend on GUI availability
		- can add a new flag in scripts.lht to load a script earlier
			- "earlier" should be a new event probably, that runs after loading all plugins and doing all initialization but before loading anything
			- check if we have GUI for editing permascript; if so, add this there too
		- sch-rnd doc: trunk/doc/user/07_io/alien/index.html: look for <!--TODO#1--> and update it (from which version of librnd it works and how)

3. Long term ===============================================================================
	- API deletion (5.0.0)
		- CLEANUP/BUG: remove -Dinline= from scconfig/, it breaks on mac: configure camv-rnd without --debug, it will yield multiple symbols in link (itwas for old versions of genht vs. c89)
			- see bug_files/TODO/inline.patch
			- requires API change because apps depend on -Dinline too
			- remove --debug on mac from INSTALL and mac.txt
		- remove old font support
			- remove xform compatibility .h from font, it's been moved to core
	- script bindings for creating new conf nodes [report: Majenko]
		- probably needs a new subtree next to plugins/
		- remove all nodes registered on script unload
		- what if two scripts try to register the same path?

4. Low prio ===============================================================================
	- BUG: use libualloc for rtree stack instead of static allocation [report: Vuokko]
	- lesstif (would be removed anyway)
		- BUG: hid_lesstif potential bug: bug_files/TODO/lesstif.txt [report: Fuz]
		- multi preview widget: implement gtk's r34242, r34773
		- lesstif: vertical text, truncated text support
	- bitmap object export in png, ps, eps, svg
