922 Commits

Author SHA1 Message Date
Thomas Bernard
d809adb540 Process Win32 commandline 2018-07-02 11:38:51 +02:00
Thomas Bernard
26d0b8339f Win32: Fix Screen_FillRect() : add clipping 2018-07-02 11:38:51 +02:00
Thomas Bernard
9f9c21de21 backup position of windows (Win32 API) 2018-07-02 11:38:51 +02:00
Thomas Bernard
6b6b17a2fb correctly handle WM_CLOSE 2018-07-02 11:38:51 +02:00
Thomas Bernard
3e32bc0c39 Fix endian aware load/save when SDL is disabled 2018-07-02 11:38:51 +02:00
Thomas Bernard
161357d331 Win32: support Key modifiers and mouse wheel 2018-07-02 11:38:51 +02:00
Thomas Bernard
c3aa989a42 ignore WM_NCHITTEST and WM_ERASEBKGND 2018-07-02 11:38:51 +02:00
Thomas Bernard
30aac19f27 implement Get_Key_modifiers for Win32 2018-07-02 11:38:51 +02:00
Thomas Bernard
84fdc001cd Display Truetype fonts with Win32 API 2018-07-02 11:38:51 +02:00
Thomas Bernard
486a0a09d4 support Fullscreen with Win32 API 2018-07-02 11:38:51 +02:00
Thomas Bernard
48ee0c06d2 allow win32 window to be resized 2018-07-02 11:38:51 +02:00
Thomas Bernard
eb65d1006a win32: avoid taking 100% CPU time 2018-07-02 11:38:51 +02:00
Thomas Bernard
467eeaf217 correct definitions for win32 key codes VK_* 2018-07-02 11:38:51 +02:00
Thomas Bernard
2d46fbc4d6 factory.c: include <stdlib.h> for atof() 2018-07-02 11:38:51 +02:00
Thomas Bernard
4b28894bb8 cross compilation of Win32 version (using win32 API) 2018-07-02 11:38:51 +02:00
Thomas Bernard
deac8b83cf keyboard support for windows 2018-07-02 11:38:51 +02:00
Thomas Bernard
9ac4267468 Working win32 API implementation with mouse
(no keyboard yet)
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
501ce2a4ad Make keyboard event work with SDL2 2018-07-02 11:38:51 +02:00
Thomas Bernard
22e0bcc01f introduce GFX2_UpdateScreen() 2018-07-02 11:38:51 +02:00
Thomas Bernard
bf29a6837c remove references to SDL_GetModState();
changed
word Key_modifiers(SDLMod mod);
to
word Get_Key_modifiers(void);
2018-07-02 11:38:51 +02:00
Thomas Bernard
7f1a747d1e Add more KEY_* codes 2018-07-02 11:38:51 +02:00
Thomas Bernard
b5e75d77b1 add skeleton of win32 implementation 2018-07-02 11:38:51 +02:00
Thomas Bernard
3e4f3d0313 WIP. build under Win32 without SDL 2018-07-02 11:38:51 +02:00
Thomas Bernard
4d86b8a0c1 change all references to SDLK_xxxxx to KEY_xxxx
+ some fixes
2018-07-02 11:38:51 +02: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
Thomas Bernard
d86efa58e4 Compilation with SDL2 (to be finalized) > API=sdl2 make 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
fb51c1bb1c SDL_GetTicks() => GFX2_GetTicks()
Signed-off-by: Thomas Bernard <miniupnp@free.fr>
2018-07-02 11:38:51 +02:00
Thomas Bernard
a6c948b27e don't use SDL in Load_surface() anymore
So the init phase does not depend on SDL anymore.

Signed-off-by: Thomas Bernard <miniupnp@free.fr>
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
Thomas Bernard
c6975afe94 prepare Makefile to allow build with SDL, SDL2 or another "video API"
update Visual C project as well
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
Nic Soudée
1d71a0759f Restore original shortcuts of Flip, X-Flip. 2018-06-27 08:03:11 +00:00
Alexander Wilms
4ebcb44c63 Make installing to a PREFIX easier and add appdata 2018-06-27 08:02:35 +00:00
Thomas Bernard
2ff8048a2e version label : 2.6wip 2018-06-26 14:51:40 +02:00
Thomas Bernard
fb91380662 fix error message in libraw2crtc.c 2018-06-26 13:05:40 +02:00
Thomas Bernard
9fce55e4bc fix comment for ELLIPSIS_CHARACTER 2018-06-26 12:33:57 +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
6731a57999 escape non ascii chars to HEX \xNN in C source (not in comments)
add "" where needed.

also fix extra space at end of lines (only in modified files)
2018-06-26 10:49:33 +02:00
Thomas Bernard
d33dd775f7 libraw2crtc.c: translated error messages
Remove french accentuated characters
2018-06-26 09:53:31 +02:00
Nic Soudée
044a042e38 Various window shortcut keys
* Settings window: "r" for Reload, "a" for Auto-Save, "s" for Save.
* Screen size: "h" to set height
* Spray menu: "s" for Size, "d" for Delay, "m" for Mono-Flow, "i" for Init
* Text Menu: "t" to enter text, "s" to enter size, show underscore for AA, Bold, Italic
* Palette window: "w" for Swap, "t" for Histo, fix "i" for Flip, show underscore for Merge, Used
* Transform menu: replace X and Y labels with W and H, and make them also shortcuts. I have renamed these
                  labels so that it does not conflict with the existing Mirror "X" and "Y" buttons.
2018-06-24 19:55:18 -04:00
Nic Soudée
a01e7eea69 Implement shortcut/underscore for input button 2018-06-24 15:25:26 +00:00
Thomas Bernard
f4c5c4bb1a Upgrade to recoil 4.3.0 2018-06-11 00:20:16 +02:00
Philip Linde
0936118568 Use separate operation-before storage for panning
This allows fast panning to be interrupt interrupting operations, like
color pick and click-zoom
2018-06-03 21:03:59 +00:00
Philip Linde
b8dbbf77fe Disallow panning mid-operation
This fixes issue #78
2018-06-03 21:03:59 +00:00
Philip Linde
b91cfe4ed3 Call Button_Quit and Button_Page with correct enum
These functions are called explicitly in a few places and need to be
handed the corresponding enum value to correctly get the button value.
Since they were previously called with -1, they would cause segfaults.
These seemed to happen when restoring backups or loading images to both
pages.
2018-06-03 20:03:34 +00:00
Philip Linde
b6cebc4edf Fix attribute clash quantization in update
It would previously undershoot, not quantizing to an area fully
enclosing the unquantized area.

This solves issue #79
2018-05-31 19:43:33 +00: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
30be9d975e Use mingw32-strip when compiling with WIN32CROSS=1 2018-05-22 18:00:28 +02:00