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
350ca22f1e
Restore the Selector_filename in case of Bookmark error.
...
There was a small bug in the code. To reproduce :
1- select a file to preview
2- Select a boggus bookmark, get the RED flash => OK
3- Click Load. RED Flash instead of loading the selected file
now the "selected file" (Selector_filename) is properly restored
2018-01-22 13:46:13 +01:00
Thomas Bernard
aeca7af074
Add comment about Current_palette
2018-01-22 13:46:13 +01:00
Thomas Bernard
08e3c6bebf
Fix issue 46 : part 2
...
in Error(0) the palette was not properly restored
as it was always restored to the Main_palette.
Now we really restore the right palette !
Also clarified/simplified the change directory code in case of error.
http://pulkomandy.tk/projects/GrafX2/ticket/46
2018-01-22 13:46:13 +01:00
Thomas Bernard
e078b3afe1
fix issue 46 "ghost cursors"
...
see http://pulkomandy.tk/projects/GrafX2/ticket/46
One has to be with the cursor shown before calling Error(0)
2018-01-22 13:46:13 +01:00
Thomas Bernard
7b69b171ff
Fix invalid http://grafx2.org url to grafx2.tk
2018-01-22 11:35:12 +01:00
Thomas Bernard
afb1feb75d
PCX : the CGA "color burst" bit is not taken into account by Paintbrush 3.11
2018-01-20 11:56:03 +01:00
Thomas Bernard
34c7f96535
Better PCX support
...
support 3 plane 8 colors files
Correctly set CGA palette for 1bpp and 2bpp images
2018-01-19 16:22:53 +01:00
Thomas Bernard
3271d6ba8d
Fix BMP loading for big endian machines (68k, PPC)
...
also removed some debug printf
2018-01-19 10:14:14 +01:00
Thomas Bernard
1232675b59
Save_ICO()
...
With transparency data
2018-01-18 11:20:51 +01:00
Thomas Bernard
ad9306498f
Add support for 2bpp BMP's (Win CE)
...
File extension is usually 2bp (ic2 for icons)
2018-01-18 00:59:00 +01:00
Thomas Bernard
d0d0b64ecf
Support transparency in ICO files with 256 colors or less
2018-01-18 00:43:36 +01:00
Thomas Bernard
2a04e363be
fix for loading CUR files
2018-01-17 17:54:28 +01:00
Thomas Bernard
674fc76649
Fix minor issues
2018-01-17 17:31:32 +01:00
Thomas Bernard
d9ca2e1092
Load .ico files containing PNG images
2018-01-17 10:21:34 +01:00
Thomas Bernard
37a5a0a85c
Splitted Load_PNG to allow usage by Load_ICO
...
Introduces Load_PNG_Sub()
some .ico contain PNG images
2018-01-17 10:19:58 +01:00
Thomas Bernard
c2486ed629
Support of .ICO file loading
...
only loading the biggest icon
see http://pulkomandy.tk/projects/GrafX2/ticket/69
2018-01-17 00:54:10 +01:00
Thomas Bernard
c2c36849b5
Refactor of Load_BMP() + support of OS/2 BMP
2018-01-17 00:53:32 +01:00
Thomas Bernard
ee11079b86
Count colors when loading True color pictures
...
If the count is <= 256 there is no need to execute the expensive
color quantization process
2018-01-16 16:27:30 +01:00
Thomas Bernard
753aaf3422
Add Fast Zoom In & Out functions.
...
Shift +/- or Shift Mouse Wheel
http://pulkomandy.tk/projects/GrafX2/ticket/28
2018-01-12 10:33:19 +01:00
Thomas BERNARD
e36cff0fef
Hide cursor if we failed to set our 1 pix transparent cursor
...
SDL_ShowCursor() can take SDL_ENABLE / SDL_DISABLE or SDL_QUERY
2018-01-10 20:51:11 +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
Thomas Bernard
8a67da69cc
Right click on a layer toggle SOLO / previous state
...
Previously, if right clicking the current layer which is the only
one shown, then all layers are shown.
Now right clicking twice on the current layer return to the same
state.
see http://pulkomandy.tk/projects/GrafX2/ticket/25
2017-12-29 17:17:31 +01:00
Thomas Bernard
cad9aa53fd
Switch to Unix end of line
2017-12-29 17:17:31 +01:00
Thomas Bernard
fb197cc0d9
op_c.c: handle memory allocation errors in CS_Set()
2017-12-25 16:08:29 +01:00
Thomas Bernard
d7179f7cba
fix Optimize_palette() for precisions different than 8 8 8
...
do the right shifts instead of 16 / 8
2017-12-25 15:55:14 +01:00
Thomas Bernard
4b0878c079
Quantization: use population split
2017-12-25 15:46:31 +01:00
Thomas Bernard
b9bdf68ee6
Quantization : sort clusters by diagonal and not volume
...
There is a #define which enables to return to the previous algorithm
2017-12-23 14:53:50 +01:00
Thomas Bernard
5d47a76a50
introduce GRAFX2_QUANTIZE_CLUSTER_POPULATION_SPLIT macro to change cluster splitting method
2017-12-23 14:26:08 +01:00
Thomas Bernard
9ec4adae80
Color quantization : use another cluster spliting (by volume instead of population)
...
see http://pulkomandy.tk/projects/GrafX2/ticket/26
2017-12-23 04:36:28 +01:00
Thomas Bernard
acf65c31d2
Load additional fonts from the ~/.config/grafx2/fonts directory
...
Load in fact from the /fonts/ subdirectory of the config directory,
wherever it is (it depends a lot on the platform)
under WIN32 it is %APPDATA%/GrafX2/fonts
MacOS ~/Library/Preferences/com.googlecode.grafx2/fonts
etc.
see http://pulkomandy.tk/projects/GrafX2/ticket/56
2017-12-20 19:28:54 +01:00
Thomas Bernard
589a84fd3d
Fix use of FontConfig on non linux platforms (FreeBSD, etc.)
...
just define USE_FC in the Makefile to have text.c compiled with Fontconfig support
2017-12-20 19:28:46 +01:00
Thomas Bernard
ee322ed437
Fix GIF save - last byte
...
The last byte was not saved for sure, depending on the codesize.
Also if the codesize was big (12 bits which is the max)
in some case an additional 0 byte was store (which is harmless but
useless)
This bug only appears if the bit per code are < 8
which is possible since commit 834050c2c4cf6ed87f3192fa31f8ae13a704a5b5
2017-12-19 17:17:02 +01:00
Thomas Bernard
834050c2c4
Optimize GIF size by using only the number of bits needed in LZW codes
...
It was always storing images in 8bpp whatever the values of pixels are,
so the minimum LZW code size was 9 bits.
Now the bpp is chosen according to the maximum pixel value.
Please note that the Whole 256 color palette is still stored entirely,
so this commit doesn't change the user experience in anyway, except saving
a few bytes :)
2017-12-19 10:00:08 +01:00
Thomas Bernard
99d135fdd5
sdlscreen.c : removed unused arg warning in Update_rect()
2017-08-08 18:29:06 +02:00
Thomas Bernard
031f87ad2c
remove "warning: ISO C90 forbids mixed declarations and code"
2017-08-08 18:09:42 +02:00
Thomas Bernard
1b9fb8514d
mountlist.c: remove fstype_to_string() function when not needed
2017-08-08 18:06:07 +02:00
Thomas Bernard
642c6af8b6
mountlist.c: define free_then_fail: label only if need
2017-08-08 18:06:07 +02:00
Thomas Bernard
a454ba6e7c
mountlist.c: remove fsp_to_string() unused function
2017-08-08 18:06:06 +02:00
Thomas Bernard
f84ca359d4
fix compilation of Native_filesel() with non win32/non linux platforms
...
Implementations would need to be added when Native_filesel() will be used for real
2017-08-08 18:06:06 +02:00
Adrien Destugues
1d2cfc2a8d
ZX: also apply brightness constraint
...
There may only be one brightness per cell: either two light, or two dark
colors.
2017-06-28 08:24:32 +02:00
Adrien Destugues
f2b04e08d0
Constraint modes: Thomson, ZX
2017-06-23 22:20:08 +02:00
Adrien Destugues
9e55b2d995
Enable -Werror only for Haiku for now.
...
It is a bit early to have it enabled for all Linux variants out there.
2017-06-23 22:20:08 +02:00
Adrien Destugues
0b6e782f74
Support Amstrad CPC mode EGX2
2017-06-23 22:20:08 +02:00
Adrien Destugues
309538c190
Helpfile: some cleanup and updates to credits
...
- New file formats
- Remove postal addresses (who is going to use these, anyway?)
- Fix yet another reference to the google code website
2017-05-30 21:39:42 +02:00
Adrien Destugues
f80bb320bc
Use ~/.config/grafx2 when the XDG_CONFIG_HOME is not set
...
Follow the freedesktop spec.
Thanks to skrzyp for noting this important detail.
2017-05-08 09:43:47 +02:00
Adrien Destugues
a321c4c785
Fix building with MinGW from Linux
2017-05-08 09:33:01 +02:00
Adrien Destugues
317dc5c667
Move settins to XDG_CONFIG_HOME
2017-05-08 09:32:25 +02:00