Thomas Bernard
8a7bd06d44
brush.c: reindent Draw_paintbrush()
2018-11-22 23:20:11 +01:00
Thomas Bernard
77005eb780
use screen.h instead of sdlscreen.h, etc.
...
Create grafx2-win32 MSVC++ project
create keycode.h
various fixes
2018-07-02 11:38:51 +02:00
Adrien Destugues
9d46d1e90f
Implement a more generic "rasters" mode for CPC
...
This is similar to mode 5, but with less constraints:
- All inks can have split rasters
- Split rasters have a min width of 32 pixels
Note that this is nowhere near enough to make sure the image will be
renderable (number of colors should be limited, unless there is a span
without rasters allowing to reload registers with new colors, and
moving from one pen to another also has a cost). The goal is to offer no
over-restriction (everything that can be shown on the real machine is
drawable). Additional constraints may be checked from a lua script that
will generate the code and data for displaying the picture.
2018-06-29 11:02:34 +02:00
Thomas Bernard
92facef46d
Convert comments to UTF-8
...
most were encoded in Latin1 / CP1252
but a few lines in op_c.c were using IBM437/850 !
2018-06-26 11:37:19 +02:00
Thomas Bernard
ce1b55be03
graph.c: Pixel_figure is not a global var anymore
2018-03-10 00:46:11 +01:00
Thomas Bernard
a53d6da6ea
Add visible_image and backups to the T_Document structure
2018-01-22 16:16:39 +01:00
Thomas Bernard
8ae651c75f
put common fields for Main and Spare page in a T_Document structure
2018-01-22 14:46:44 +01:00
Adrien Destugues
5b6095f0bc
Fix all warnings and enable -Werror
...
mostly unused variables and broken indentation.
2017-05-06 15:13:50 +02:00
Adrien Destugues
705584a9d7
Fix some doxygen warnings.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@2117 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2015-04-04 09:08:11 +00:00
Adrien Destugues
878c926ce4
Fix issue 185 (XOR highlight) :
...
* Use a simple optimization algorithm to compute a good set of XOR color pairs
* Algorothm is not very optimized (complexity is up to n^3). In practize, it stabilizes after 2 to 3 rounds of swapping colors
* Use this color table for all XOR effects
* Setting for grid color is now removed
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@2048 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2013-01-06 12:46:46 +00:00
Yves Rizoud
007f15b657
Brush distort: Fix a big remapping bug that often caused the brush to disappear entirely after distort (all color zero)
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@2010 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2012-09-25 22:52:58 +00:00
Yves Rizoud
6316fc2add
Fix second part of issue 459 : In anim mode, polybrush-grab with the right mouse button didn't clear the cut area.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1944 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2012-04-09 14:55:44 +00:00
Yves Rizoud
d38f5ee981
CPC mode 5 : replaced the global Constraint_mode by a state (Image_mode) in each versioned T_Page: This allows keeping it sane when swapping to Spare, and when Undo/Redoing. Also fixed the first page when program starts, it was unnecessarily allocating pointers for the maximum number of layers(16)/frames(999)
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1907 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2012-02-27 00:47:18 +00:00
Yves Rizoud
55d0889bc8
Change rendering system to use function pointers, see Issue 31 c38 : preliminary work to make the same executable handle Layers or Anims. Fixed an old issue where Lasso-ing a brush with right mouse button wouldn't erase cleanly (visual). Fixed an old issue where picking colors in layer 5 would not 'see' through layers.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1906 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2012-02-22 23:47:53 +00:00
Yves Rizoud
1fd7b42fcc
Fixed Brush grab and Lasso grab tools to work with tilemap (when right-clicking to clear)
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1868 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-11-12 16:26:36 +00:00
Yves Rizoud
1b4b242a06
Split Display_paintbrush() in two: one function for preview, another function (Draw_paintbrush()) for image modification. Should be functionally identical, but code becomes simpler.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1857 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-11-06 19:38:55 +00:00
Adrien Destugues
706049a2d9
Merge all changes from trunk in CPCMode5 branch.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/branches/cpcmode5@1809 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-06-19 18:30:53 +00:00
Yves Rizoud
2d8c061e32
Improved brush rotation by adding 3 steps of scale2x. Result is not as good as I hoped, but for large flat surfaces, the edges are indeed much smoother than before.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1789 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-06-04 15:22:13 +00:00
Yves Rizoud
1f10338f60
Merged trunk into branches/mode5 (=update mode5 branch to latest)
...
git-svn-id: svn://pulkomandy.tk/GrafX2/branches/cpcmode5@1785 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-04-25 15:17:18 +00:00
Yves Rizoud
80c37034f9
Fix a remap problem on brush, when modified by Lua script then transformed. Fix Brush remap to maintain transparent pixels. Fix Text tool , respects transparent pixels and preview is always visible (The black PF_ fonts are no longer shown on a black background)
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1726 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-02-16 17:03:45 +00:00
Adrien Destugues
72e9892b53
Constraint mode is now switchable on/off in the effect screen.
...
I did some changes to the effect screen to make some space : instead of displaying an "on/off" label, we now keep the button pressed for active effects.
There is no "constraint menu" yet, we should allow to select different constraints there (C64, MO5, spectrum, ...) to activate their respective enforcer and plug the right thing to the associated checker.
This should eventually allow drawers to :
* Load any single-layer picture
* Select the mode they want to use (without enabling it)
* Run the checker and get the result as a multilayer (with an error layer)
* Then, once they feel enough issues are solved, switch to "enforcer" mode for further manual tweaking.
Now we need a checker for CPC Mode5... :)
git-svn-id: svn://pulkomandy.tk/GrafX2/branches/cpcmode5@1721 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-02-14 13:37:35 +00:00
Adrien Destugues
eba26aaa96
Merge trunk to the cpcmode5 branch. This gets us a more recent grafx2 with the cpcmode5 drawing. Now to make this mode optional so users can still work in regular mode :)
...
git-svn-id: svn://pulkomandy.tk/GrafX2/branches/cpcmode5@1719 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-02-13 21:49:31 +00:00
Adrien Destugues
4e60f5ad74
Import the WIP CPC-Mode5 code from the sourcearchive
...
git-svn-id: svn://pulkomandy.tk/GrafX2/branches/cpcmode5@1718 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-02-13 21:20:45 +00:00
Yves Rizoud
4d3431afd4
Fix lasso, broken in last commit
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1704 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-01-30 14:42:33 +00:00
Yves Rizoud
5d2dd927e4
Much work on color brushes (issue 362). You can rotate, resize, flip etc. without losing original palette.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1701 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-01-30 00:03:38 +00:00
Yves Rizoud
e01b310317
Some work on brush remapping
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1700 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-01-29 21:20:54 +00:00
Yves Rizoud
40a7bcf40e
Changes on brushes memory management, in preparation for Issue 362
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1699 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-01-27 19:52:36 +00:00
Yves Rizoud
b0d2f9741d
Improved Spare remapping and Brush recolorizing, with new color-matching formula provided by DawnBringer (Perceptual color-distance with 25 brightness weigth-in). Fix in 'Copy to spare/Palette & remap' : Transparent color of the spare wasn't renumbered accordingly.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1613 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2010-09-12 19:09:27 +00:00
Adrien Destugues
eb14b70724
Introduce a PAINTBRUSH_SHAPE_NONE for the colorpicker.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1443 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2010-04-05 09:44:57 +00:00
Yves Rizoud
3ca5322379
Reorganized source code and directory tree.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1375 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2010-03-05 02:53:19 +00:00