Confirmed that latest Windows binary release of ImageMagick does
not provide "convert" command, which conflict with windows system
command, even as a legacy program.
In addition, currently "magick convert" or "magick composite"
style is a standard way of usage.
Checking for fonts in any locations specified by "<dir>"
entries found in system-wide and user-level FontConfig config files.
This allows more fonts, and user-specific fonts, to be found & loaded.
TODO - Looking in Un*x-specific `/etc/fonts/fonts.conf` and
`~/.config/fontconfig/fonts.conf`, and should look in the
correct places on other platforms.
NOTE - This adds a build dependency on `libxml-2.0`.
Need to be told (1) if this is a good idea (else, back it out),
and if so (2) how to detect NetBSD when we set the OS variable
(is it just "uname -s" sending us "NetBSD"?)
+ WIP Makefile updates to support building for OS/2
- TODO: Makefile needs SYSNAME test to detect OS/2 (Bill has asked Elbert)
+ Added "__declspec(dllexport)" (via new "TX_EXTERN" #define'd in
`tp_magic_api.h`) to public function definitions in Magic tools
- WIP: So far just "Mirror/Flip" plugin
- TODO: Add "TX_EXTERN" prefix to all other public Magic tool functions
+ Renamed long Magic tool source files to have shorter filenames
- WIP: So far just "Mirror/Flip" (`mirror_flip.c` -> `mirror_f.c`)
- TODO: Rename all other magic tool source files.
h/t Elbert Pol for providing info and some diffs!
New API function which rolls back the Undo buffer (which is snapshotted
upon a mousedown event ahead of calling the Magic tool's `_click()`
function.) Dangerous; use sparingly!
Filled Polygon uses this to prevent partially-created (aka unfinished
aka incomplete) polygons -- the preview lines and control points -- from
being recorded and wasting space in the Undo history, or reappearing
upon Redo.
TODO - Other tools (e.g., Clone) would certainly benefit from this.
TODO - Needs more testing to help identify any bugs/issues introduced
by this!
TODO - Magic API docs need updating.
This is probably a sufficient solution that will make
https://sourceforge.net/p/tuxpaint/feature-requests/246/,
'"Overlay" surface in Magic API', unnecessary.
Wrap new $PATH stuff done (to get dummy 'inkscape' used,
for rsvgconvert purposes) in quotes to try and help with
build problems Shin-ichi had with the Windows version.
Tim Dickson wrote in --
I figured out the cause of the out-of-tree fontconfig cache
creation, and (with help from another packager) a fix.
The problem only occurs when inkscape is installed (which changes the
target tool that imagemagik uses for converting svg files from
rsvgconvert to inkscape's svg conversion program.)
A new `PACKAGE_ONLY` variable to Makefile can be used to
place launcher icon files into $(DESTDIR)$(PREFIX), rather
than using `xdg-...` tools to install them. (Avoids polluting
local filesystem while generating packages, e.g. for Slackware Linux)
h/t Tim Dickson
The requested font & actual font loaded will be echo'd to STDOUT
when specifying the `uifont` option.
This uses Pango library directly (I was unable to convice SDL2_Pango.h
to actually notice that pango.h was #include'd before it, and expose
its SDLPango_GetPangoFontDescription() function!). This is okay,
since we want to also add a "--uifont list" option (or similar),
that will list all of the available fonts, if a user wishes to
query them. (And similar code will be added to tuxpaint-config to make
the setting available as a pull-down, rather than (or as well as) a
freeform type-in field.)
Was failing to compile on Haiku for Luc (apparently building with
no SVG support), since I started using that function outside of
SVG-related places.
Also, to continue being able to compile on Linux with no SVG support --
* Always use SDL_TRUE & SDL_FALSE, not TRUE & FALSE
* Always link tuxpaint with "-lm"
Finally, verbose version info ("tuxpaint --verbose-version") now states which
SVG build (new RSVG or old Cairo)