Commit graph

785 commits

Author SHA1 Message Date
Bill Kendrick
685f0d44ee "Crescent" icon 2024-09-28 22:29:06 -07:00
Bill Kendrick
f2f7ef125f "Crescent": Rearrange order; add screenshot for docs 2024-09-28 17:55:16 -07:00
Bill Kendrick
9395f16118 "Crescent" magic tool (WIP)
Needs icon, sound, and docs.
2024-09-28 17:49:58 -07:00
Bill Kendrick
629c23897d Icons for "ASCII" art magic tools 2024-09-27 23:23:32 -07:00
Bill Kendrick
7b58a651c6 Sound effects for "ASCII [Color] Computer"
Also, sync "ASCII Typewriter" txt docs.
2024-09-27 23:05:36 -07:00
Bill Kendrick
2d5991b4ea Sync docs to get "ASCII Color Computer" 2024-09-27 22:46:21 -07:00
Bill Kendrick
60ddaaf7e0 "ASCII Color Computer" working
Tries to pick the best of a set of 16 "CGA color palette" colors
by first mapping each of the RGB components to 0x00, 0x55, 0xAA,
or 0xFF (so 64 possible colors), then finding which of the 16 CGA
colors best matches it.

Also, don't accept the same color as the "background"/"clear" of
"ASCII Typewriter" (white) or "ASCII Computer" (black), to avoid
painting solid colors; pick the reverse color.  (In other words,
both black and white choice draw white computer text on black
background, for example.)
2024-09-27 22:33:09 -07:00
Bill Kendrick
06ede88684 "ASCII" - "Typewriter" & "Computer" support for color
TODO - "Color Computer"
2024-09-27 21:24:42 -07:00
Bill Kendrick
c1dc09c486 "ASCII" - prep for adding color support 2024-09-27 21:12:49 -07:00
Bill Kendrick
8ae1ff5050 Syncing docs for "ASCII" magic tools
...and adding screenshots
2024-09-27 20:34:02 -07:00
Bill Kendrick
c7ce654333 "ASCII": Accept sizes for painting mode
...affects 'diameter' (it's really an NxN square) of the effect.
2024-09-27 20:18:10 -07:00
Bill Kendrick
bd0cb61dc0 "ASCII": Use a snapshot, not current canvas (last) 2024-09-27 20:08:43 -07:00
Bill Kendrick
fbe142ceab "ASCII" magic tools; place right after "TV" tools 2024-09-27 12:09:44 -07:00
Pere Pujal i Carabantes
7a253f2db4 Magic Rotate: Free new_surf, avoid to eat too much memory. 2024-09-26 23:26:11 +02:00
Bill Kendrick
c9f978b1ca WIP ASCII art Magic tools; code working! 2024-09-26 00:35:01 -07:00
Bill Kendrick
6a591a2ef1 More WIP on ASCII art magic tool 2024-09-25 22:24:54 -07:00
Bill Kendrick
e0a34c1c7a WIP "ASCII" ASCII art magic tool 2024-09-25 21:29:24 -07:00
Bill Kendrick
13ce7287c8 Sync docs after doc'ing "Rotate" 2024-09-25 00:18:13 -07:00
Bill Kendrick
0c59e83dba "Rotate" icon 2024-09-25 00:09:17 -07:00
Bill Kendrick
9d169fec58 "Rotate" magic - add indicator lines during active use 2024-09-25 00:04:54 -07:00
Bill Kendrick
4ee781c6de "Rotate" sound effects 2024-09-24 23:55:37 -07:00
Bill Kendrick
23a82cef5a WIP "Rotate" magic tool
Rotates the canvas
2024-09-24 23:36:22 -07:00
Bill Kendrick
57a1365382 Syncing docs; grab Fractal magic tool docs 2024-09-23 23:34:09 -07:00
Bill Kendrick
259f423da9 Fractal -- sound & icon 2024-09-23 23:26:29 -07:00
Bill Kendrick
e7213eaaed Fractals: Descriptions of each (programmatic) 2024-09-23 22:57:40 -07:00
Bill Kendrick
ec835bb580 Multiple Fractal tools (WIP) & simpler preview
Starting with four tools:
 * No rotation, shrink to 50%
 * No rotation, grow to 150%
 * 15deg rotiation, grow to 110%
 * 90deg rotation, shrink to 75%

Don't redraw everything while sketching; do the recursive work once,
at the end (avoid CPU explosion).
2024-09-23 22:42:12 -07:00
Bill Kendrick
81ae8bdd36 Comic Dots: Return proper order
There are two tools, so can't use the same number twice!
2024-09-23 22:05:48 -07:00
Bill Kendrick
8a3d792025 Fractals: Squelch warnings; prepar for multiple tools 2024-09-23 21:59:29 -07:00
Bill Kendrick
56a57722b3 More work on Fractal magic tool 2024-09-23 21:51:40 -07:00
Bill Kendrick
bb8b1d6cfe WIP Fractal painter
Not working great yet, but a start
2024-09-19 00:52:09 -07:00
Bill Kendrick
628fa77f94 Don't call stopsound() in Magic shutdown()...
...causes a segfault at that point (Mixer already gone?!)
2024-09-17 22:25:36 -07:00
Bill Kendrick
00305ab31d Ran pngout on the new Comic Dots icon PNGs 2024-09-17 22:22:04 -07:00
Bill Kendrick
d6af2fa981 Icons for "Comic Dots" magic tools 2024-09-17 22:21:23 -07:00
Bill Kendrick
d94e85e26e Sound pause/unpause Magic API functions...
...plus documenting them.
...plus using them in new "Comic Dots" Magic tool.
2024-09-17 22:11:32 -07:00
Bill Kendrick
143b50733c Sound effect for new "Comic Dots" Magic tool 2024-09-17 21:35:09 -07:00
Bill Kendrick
61478d7858 Doc'ing new "Comic Dots" magic tool 2024-09-17 21:11:50 -07:00
Bill Kendrick
e8418cc330 WIP "Comic Dots" magic tool
For https://sourceforge.net/p/tuxpaint/feature-requests/257/
2024-09-16 23:56:33 -07:00
Bill Kendrick
d597a250cd Bump version to 0.9.34; sync docs for new version # 2024-07-26 00:44:42 -07:00
Bill Kendrick
3c5303563a WIP Dropping in code for Haiku trash can support
h/t Jérôme Duval <https://github.com/korli> for pointing us to this
(see https://github.com/haikuports/haikuports/issues/10568)
Code used is copyright (c) 2004, Francois Revol <revol@free.fr>,
provided under the MIT licence.

(Also, ran `indent.sh`)
2024-06-06 23:06:07 -07:00
Bill Kendrick
33db4c16f5 WIP Changes to support building for OS/2
+ 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!
2024-06-06 00:40:42 -07:00
Bill Kendrick
2183c45d72 Filled Polygon: Ensure last point can click on first point
It had to be dragged, due to a minor bug.  h/t Pere.
2024-06-01 20:35:13 -07:00
Bill Kendrick
b9981d879b Filled Polygon Magic - allow up to 100 points
Up from 17 (which I probably picked since it was a little
fewer than the default number of Undo/Redo levels).
2024-06-01 20:27:30 -07:00
Bill Kendrick
3cf3af76aa Ran indent.sh 2024-06-01 02:12:00 -07:00
Bill Kendrick
01afb5846c api->retract_undo() added to Magic API; used by Filled Polygon
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.
2024-06-01 01:35:50 -07:00
Bill Kendrick
b0b3b64022 Filled Polygon: Mention merging. Max pt handling.
In instructions, mention that adjacent points may be merged.

When no more space is available for additional points, simply
move the last point to the new location (rather than silently
doing nothing).

h/t Pere for the ideas
2024-05-30 23:50:00 -07:00
Bill Kendrick
277b9e10bf Filled Polygon "remove" sound effect
For when merging points.

Based on CC Attribution 3.0 sound by "stinkhorn"
(see CHANGES.txt & AUTHORS.txt).
2024-05-28 23:59:56 -07:00
Bill Kendrick
c00cf991f9 Filled Polygon "nearby" sound effect
When red & green endpoint dots are being dragged near each other,
play a different sound.

Based on CC Attribution 4.0 sound by Eliot Lash
(see CHANGES.txt & AUTHORS.txt).
2024-05-28 23:47:54 -07:00
Bill Kendrick
a2fece280b Sound effects for Filled Polygon magic tool
Based on some CC0 sounds by Kenneth Cooney (see AUTHORS.txt and
CHANGES.txt).
2024-05-28 23:29:57 -07:00
Bill Kendrick
4c42472089 Polyfill: Draw handles 'behind' lines 2024-05-19 23:56:20 -07:00
Bill Kendrick
af5f9b8899 Removing Specular tool instructions 2024-05-19 23:34:12 -07:00