1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-07-06 00:00:22 +00:00
Commit graph

120 commits

Author SHA1 Message Date
FellippeHeitor 6ee70f1afa Makes _RGB32 more flexible and powerful.
Existing syntax:
colour~& = _RGB32(red, green, blue)

New possible uses:
- Instead of passing identical rgb values to achieve a shade of gray, pass only 1 parameter for all color components:

    colour~& = _RGB32(51) 'same as _RGB32(51, 51, 51)

- _RGB32 can now take an optional alpha parameter, which makes _RGBA32 obsolete (although it still exists for retrocompatibility):

    colour~& = _RGB32(255, 0, 255, 30) 'same as _RGBA32(255, 0, 255, 30)

- If you want a shade of gray and also to specify the alpha level, you can pass just two parameters:

    colour~& = _RGB32(51, 30) 'same as _RGBA32(51, 51, 51, 30)

In summary:

    - 1 parameter  = red, green and blue simultaneously set.
    - 2 parameters = red, green and blue simultaneously set plus alpha level.
    - 3 parameters = red, green and blue as usual.
    - 4 parameters = red, green and blue plus alpha level (same as _RGBA32).
2018-07-01 21:46:08 -03:00
FellippeHeitor 4264666130 Adds _SMOOTH function to return current fullscreen antialiasing setting.
Returns true (-1) if enabled.
2018-06-30 17:09:29 -03:00
FellippeHeitor 12df99c8da Indentation work. No actual code changes. 2018-06-30 14:23:33 -03:00
FellippeHeitor d911e3d01e Implements _ALLOWFULLSCREEN to set how ALT+ENTER behaves. Closes #22.
Syntax:
    _ALLOWFULLSCREEN [{_STRETCH|_SQUAREPIXELS|_OFF|_ALL}][,{_SMOOTH|_OFF|_ALL}]

Existing _FULLSCREEN statement is not bound by _ALLOWFULLSCREEN's settings, only the ALT+ENTER key combo.
2018-06-29 11:30:14 -03:00
FellippeHeitor 688e31c0f3 Introduces _ECHO, which will output a string to the console.
_ECHO is more of a macro than a new statement, as it'll perform the following actions:

1- Save current _DEST;
2- Switch to _CONSOLE;
3- Print the passed string (only strings accepted);
4- Switch back to previous _DEST.

None of the PRINT features such as USING, numeric variables, retaining the cursor are implemented/planned for this statement.

Closes #29
2018-06-27 23:51:09 -03:00
FellippeHeitor bf99e30c30 Fix detection of title bar height globally.
_SCREENY would return wrong values after the recent commits.
2018-06-27 11:03:33 -03:00
FellippeHeitor 2c81a6d74b Properly calculates window area. 2018-06-26 20:14:48 -03:00
Fellippe Heitor 15958ca4a5
Fixes #24
Disables maximize box when $RESIZE isn't enabled. Windows only.
2018-06-26 16:57:40 -03:00
Fellippe Heitor 68c765db75
Merge pull request #43 from ebourg/development
Update NanoJPEG to the version 1.3.5
2018-06-17 22:11:06 -03:00
AshishKingdom 820d6736f7 Added multisample support (MSAA x4) 2018-06-15 22:27:30 +05:30
Emmanuel Bourg 6be33c0935 Update NanoJPEG to the version 1.3.5 2018-05-22 21:31:49 +02:00
Luke Ceddia ce1a4aa8c8 More dead code removal 2018-02-26 11:30:44 +11:00
Luke Ceddia 3a5364e111 _SCREENIMAGE on Linux/OSX returns a blank image instead of an error 2018-01-21 22:24:16 +11:00
Luke Ceddia 61cb34f635 Remove some SDL stuff that was dead weight 2018-01-16 20:56:45 +11:00
Luke Ceddia 8a5d7e7eea Remove QB64_X11 2018-01-16 20:29:20 +11:00
Luke Ceddia 219bbc27f0 QB64_LINUX is now for linux exclusively 2018-01-16 20:22:32 +11:00
Luke Ceddia 1320d7fe52 Introduce QB64_LINUXONLY and _UNIX 2018-01-10 22:50:07 +11:00
Luke Ceddia a1a0536d69 Tidy up parts/core/src.c 2018-01-09 22:38:07 +11:00
Luke Ceddia 3a0e1ae320 Move all executable code out of common.cpp; rename to common.h 2018-01-05 21:22:36 +11:00
Luke Ceddia adeda29619 Tidy up some #defines, remove a few Android #ifdefs 2018-01-04 20:20:38 +11:00
Luke Ceddia 7dc0054fa8 Include unistd.h for freeglut 2018-01-02 17:26:16 +11:00
Luke Ceddia 7655dda762 Unset modifier keys on window defocus 2017-12-30 01:03:47 +11:00
Luke Ceddia 64edcf1b47 Support _WINDOWHASFOCUS on Linux 2017-12-30 00:01:48 +11:00
Luke Ceddia e2bdbc01ad Correctly set speex's output buffer size 2017-10-23 00:51:17 +11:00
Fellippe Heitor a5f702eb6f Implements proper error handling for Cliboard routine on macOS. 2017-10-18 20:58:26 -02:00
Fellippe Heitor 50b1002aa4 Remove reference to undeclared identifier preventing compilation (macOS)
Details at http://www.qb64.net/forum/index.php?topic=14553.msg126181#msg126181

Signed-off-by: Fellippe Heitor <fellippeheitor@gmail.com>
2017-10-18 19:48:17 -02:00
FellippeHeitor 6dfbeb2419 Disables 256-color image loading again, until a better solution is found.
Returns -1 if there's an attempt to load an image in 256-color mode.
2017-10-17 03:08:33 -02:00
FellippeHeitor 19917654aa Adds support for Alt+F4 to close a program's window (Windows-only). 2017-10-10 01:41:53 -03:00
Luke Ceddia 86a6646bdb Change freeglut to only look for ctrl/alt/shift down events when window
has focus.

Previously this functionality was in libqb.
2017-10-10 13:47:10 +11:00
Luke Ceddia 54574c1ca6 Add declaration for sub__keyclear() 2017-09-25 23:03:38 +10:00
Luke Ceddia bdc3250b89 Resolved the issue of user mods not working for $console:only programs 2017-09-25 21:56:24 +10:00
FellippeHeitor 7998aa89cd Detect focus using GetForegroundWindow instead of GetActiveWindow. 2017-09-25 02:25:53 -03:00
SteveMcNeill 4f23fd9b7b Add function _AUTODISPLAY so user can get display/autodisplay staus 2017-09-24 18:41:00 -04:00
FellippeHeitor 3488bd916b Fix to MessageBox call. 2017-09-24 08:20:18 -03:00
FellippeHeitor 5922d112bf Adds _WINDOWHANDLE, _WINDOWHASFOCUS and _TITLE$ (function).
- _WINDOWHANDLE exposes the current window's handle (Windows-only).
- _WINDOWHASFOCUS returns true (-1) when the program is the foremost window (Windows-only). Always returns -1 in other OSes.
- _TITLE$ (function) returns the last title set using the _TITLE statement.
2017-09-24 08:12:13 -03:00
SteveMcNeill d3a2424b73 Added right and middle button support for _SCREENCLICK with Windows 2017-09-24 01:08:29 -04:00
SteveMcNeill b89ade1c5c Patch to previous patch for Linux/Mac compatability 2017-09-23 20:33:58 -04:00
SteveMcNeill e264458841 Patch to SLEEP, _KEYHIT, INP(&H60), _SCREENEXISTS for WINDOWS
Change so that modifer keypresses will only register when the window has
focus in Windows.  This corrects the issue with SLEEP, KEYHIT, and
INP(&H60) registering SHIFT, CTRL, and ALT keypresses even when the
program is not in focus or is running as a background app.

Also changed _SCREENEXISTS (and a few other window user commands) so
that they require windows to have actually registered a windows handle
for the function to return -1, and not just for glut to have finished
initializing the screen itself.
2017-09-23 20:24:19 -04:00
FellippeHeitor 13fa2ca4d5 Unnecessary repeated inline functions removed from _loadimage. 2017-09-22 00:29:41 -03:00
FellippeHeitor 5368b9d5d7 Initial attempt to restore _LOADIMAGE's ability to load in 8bit mode.
- When mode = 256, _LOADIMAGE will return an 8bit image with the loaded file's colors matching the default palette.
- Slower for bigger images, because of the call to matchcol();
2017-09-21 23:55:01 -03:00
FellippeHeitor 8fe5804fa2 Sets the proper dependency (DEPENDENCY_SCREENIMAGE) for clipboard features.
Using $CONSOLE:ONLY without the above causes compilation fails.
2017-09-11 10:29:45 -03:00
FellippeHeitor 7d3f1f9833 Temporary hack to reenable _SNDRAWLEN.
_SNDRAWLEN currently gets stuck at .3715192763764172; this reenables it by returning zero when < .375.
2017-09-09 13:17:03 -03:00
FellippeHeitor 90e0b0df16 Minor fix to _SCREENIMAGE (function).
_SETALPHA needs to be called on the resulting image, as some images com with alpha = 0 from the clipboard.
2017-09-06 21:03:41 -03:00
FellippeHeitor e3bb55da1a Add _CLIPBOARDIMAGE (statement and function)
- Fetch an image from the clipboard with handle& = _CLIPBOARDIMAGE
    - If there isn't an image in the clipboard, handle& will be -1.

- Copy a valid image to the clipboard (All screen modes, except 0) with _CLIPBOARDIMAGE = handle&
2017-09-06 11:19:54 -03:00
Luke Ceddia 2d651bfa76 Merge branch 'no_teapot' 2017-08-18 22:07:49 +10:00
Luke Ceddia a7a4783650 Remove teapot from setup build files 2017-08-18 21:52:23 +10:00
Luke Ceddia 995f563d0c Remove teapot, decrease executable by 18K 2017-08-18 20:20:42 +10:00
FellippeHeitor b5e2b06ecd Modifies _MOUSEX/_MOUSEY to return an integer value in SCREEN 0. 2017-08-17 23:11:30 -03:00
FellippeHeitor 2f217fce6b Function _BLINK returns -1 if blinking is enabled; 0 if disabled. 2017-08-16 00:40:37 -03:00
FellippeHeitor de75b0aa29 Emulates port &H3C0 to disable/enable blinking using OUT.
Again, thanks to _vince for contributing this bit.
2017-08-16 00:24:33 -03:00