Thomas Bernard
aeaf468c4b
code cleaning
...
Creates Pixel_in_document_current_layer() to factorize code between
Pixel_in_spare() and Pixel_in_current_layer()
2018-11-22 11:39:24 +01:00
Thomas Bernard
50f3b99106
store unicode filename for brush
2018-11-09 12:50:45 +01:00
Thomas Bernard
734bad13e1
move KEY_* defines from global.h to keycodes.h
2018-07-02 11:38:52 +02:00
Thomas Bernard
af25970c09
Fix Joystick support (with SDL and SDL2)
2018-07-02 11:38:51 +02:00
Thomas Bernard
aa73e76e67
SDL2: readline.c uses SDL_TEXTINPUT unicode input text
2018-07-02 11:38:51 +02:00
Thomas Bernard
5c761ace2c
Use KEY_NONE for buttons without key shortcuts
...
SDLK_LAST was used, but it is SDL 1.x specific
2018-07-02 11:38:51 +02:00
Thomas Bernard
72fea0290f
isolate dependencies to SDL
...
Do not access directly the SDL_Surface Screen_pixels
use new functions Get_Screen_pixel_ptr() Set_Screen_pixel(),
Get_Screen_pixel()
And SetPalette()
Signed-off-by: Thomas Bernard <miniupnp@free.fr>
2018-07-02 11:38:51 +02:00
Philip Linde
efe9f8406f
Add missing cursors for operations
...
Some new operations were added in
f2d579695cf78bf3e538383bd5843347be0c6acf, but the corresponding cursor
settings were not added to the CURSOR_FOR_OPERATION table. This resulted
in wrong cursors for the brush grab operation and probably several more
operations. This commit adds the missing cursor settings.
This fixes issue #75
2018-05-28 17:52:14 +02:00
Thomas Bernard
f2d579695c
implements selection of circle/ellipse mode with right button
...
see http://pulkomandy.tk/projects/GrafX2/ticket/54
2018-03-10 00:46:11 +01:00
Thomas Bernard
d6ce86cae4
Remove Circle_limit global variable
2018-03-10 00:46:11 +01:00
Thomas Bernard
be8b05a384
remove Ellipse_vertical_radius_squared Ellipse_horizontal_radius_squared Ellipse_limit global variables
2018-03-10 00:46:11 +01:00
Thomas Bernard
6b97fcc322
Remove Ellipse_cursor_X/Y and Circle_cursor_X/Y global variables
2018-03-10 00:46:11 +01:00
Thomas Bernard
144d10b682
Support Unicode Keyboard Input
2018-02-20 15:44:39 +01:00
Thomas Bernard
689aebf264
Unicode support in keyboard editable field for filename
2018-02-20 15:44:39 +01:00
Thomas Bernard
3322529804
Support for unicode names in directory listing
2018-02-20 15:44:39 +01:00
Thomas Bernard
545308265b
Add the ability to print unicode characters in addition to "Latin1" ones
2018-02-20 15:44:39 +01:00
Thomas BERNARD
5e3bbca49f
Enable UTF8 filename conversion for OS X
...
HFS drives are using combining characters, so use
UTF-8-MAC encoding for iconv
2018-02-15 16:20:00 +01:00
Thomas Bernard
4ffa389a90
Update File selector to load/save palettes
...
Also "constify" the format array
2018-01-25 22:55:27 +01:00
Thomas Bernard
b2898ed7f1
clean global.h
2018-01-22 22:12:47 +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
Thomas Bernard
e9b4392691
add GFX2_GLOBAL where forgotten.
...
So we avoid to have some so called "common" C symbols.
2018-01-22 14:46:06 +01:00
Thomas Bernard
2928a16e41
Also save visible layers for spare page
...
see http://pulkomandy.tk/projects/GrafX2/ticket/25#comment:3
2018-01-03 05:13:51 +01:00
Adrien Destugues
0eaf3fce96
Use iconv to convert filenames from UTF-8.
...
Patch by miniupnp, with some C89 adjustments.
Enabled for Haiku and the generic Linux/*BSD part of the Makefile.
Please adjust as needed.
Fixes #10 for codepages for which we have a font.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@2172 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2016-12-02 19:43:23 +00:00
Adrien Destugues
0c7d17304a
Fix remaining doxygen warnings.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@2128 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2015-10-03 06:28:26 +00: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
Yves Rizoud
1248100ae9
Integrate path fix from Android port (tnanks a lot Pelya)
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@2071 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2014-03-30 17:31:05 +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
80fc7da7f6
Fix issue 462: Save/Load path problems: Main, Spare and Brush now have completely distinct fileselector settings.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@2003 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2012-09-22 16:47:39 +00:00
Yves Rizoud
db50b4ebdc
More unification of layers and anim version: toolbars work. You can switch toolbars by right-clicking the icon from status bar: it proposes 'Anim' only while the current image has 1 layer (see Button_toggle_toolbar()). The animation-specific stuff (rendering...) isn't activated yet, see all the NOLAYERS places remaining. Also will need a trick for keyboard shortcuts to work on multiple buttons, and extra code on swap-to-spare, undo, redo, load etc. to sync toolbars with Image_type.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1909 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2012-02-27 23:19:23 +00:00
Yves Rizoud
2343dcb54c
Internal: Moved tooltips inside Buttons_pool, and Buttons_pool from globals.h to to windows.c/h for easier modification
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1908 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2012-02-27 01:36:40 +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
cbcb7a6b8f
Issue 233: Added mouse panning. Default is 'space' for new users, others need pick a key in Help screen.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1901 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2012-02-01 00:56:21 +00:00
Adrien Destugues
781cda3a47
Add a distinctive icon for the fill (and color replace) tool.
...
Thanks to DawnBringer for icon drawing.
All skins use the same icon, feel free to draw something else for them.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1893 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2012-01-08 20:44:05 +00:00
Adrien Destugues
bcb0b563ee
Add XOR-line helper when drawing circles and ellipses.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1891 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2012-01-08 14:15:55 +00:00
Yves Rizoud
e7d37cf367
Tilemap: now separate for main and spare. Safeties added in most places necessary (auto-recompute tilemap after load, undo, etc)
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1866 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-11-11 22:57:35 +00:00
Yves Rizoud
3b989f3eb3
Tilemap: support Y-flipped tiles
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1863 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-11-10 19:59:19 +00:00
Yves Rizoud
ef030fec3f
Tilemap mode improved to analyze and detect identical tiles, so you write in real time on all occurences of same tile. Works very well but unfinished, will crash or have other problems when you resize image
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1859 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-11-08 23:11:18 +00:00
Yves Rizoud
f1f658ded4
Start of tilemap. Only a togglable effect
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1856 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-11-06 19:03:27 +00:00
Yves Rizoud
8fb16e7089
Re-integrated anim in trunk, fixing the 999-layer limit at the same time
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1841 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-10-19 23:35:56 +00:00
Adrien Destugues
1d510d40bc
Remove unused vars. I think there are others since the IO_Context introduction ?
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1825 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-09-24 13:29:42 +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
9cfefc9662
Fix display bug on menu buttons when comiled with 'unsigned character' (issue 423)
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1734 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2011-02-26 15:56: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
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
7a3ae5824a
Merged the specifics of Caanoo 1.2 port by Pheel + Enabled TTF text on Caanoo
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1645 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2010-11-05 01:03:11 +00:00
Yves Rizoud
5fd72996c3
Virtual keyboard for string input
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1636 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2010-10-02 19:05:30 +00:00
Yves Rizoud
e3e9be75b0
Unification of button system for the three current console ports.
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1630 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2010-09-29 23:06:26 +00:00
Yves Rizoud
bd13dd93b1
Integrated the changes by PheeL for Caanoo support
...
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@1629 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2010-09-29 22:21:25 +00:00