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

2722 commits

Author SHA1 Message Date
Matthew Kilgore 8005e62402 Add PAINT tile image-based tests 2022-11-08 01:02:22 -05:00
Matthew Kilgore 4f5af8888e Fix PAINT when border color is not supplied
The border color parameter to PAINT is optional, but sub_paint was not
handling that case. What it should do in that situation is keep painting
until it finds pixels that are not the same color as the original
starting pixel was. Instead it would simply assume border color was
valid and paint until it finds color zero (the default parameter value
when it's not provided).

This was originally reported in QB64Official/qb64#2, and Walt
(@TheJoyfulProgrammer) fixed it in QB64Official/qb64#38. Functionally
this is the same change, however I'm checking `passed & 4` to see
whether a border color was provided rather than `bordercol == NULL`.
The later has problems if the provided bordercolor is zero, which is
allowed since zero is a valid color. The `passed` argument indicates
which of the function arguments were actually provided in the QB64
source that called PAINT.

Additionally, along with the `while (true)` loop that Walt changed I
went ahead and removed the duplication of the sections for each
direction. We now just use a couple of arrays to determine which
direction we're checking and loop over all 4.
2022-11-08 00:59:12 -05:00
Matt Kilgore 942b5d73b9
Merge pull request #237 from mkilgore/fix-notifypopup-windows
Swap NotifyPopup to use Shell_NotifyIcon
2022-11-06 12:38:01 -05:00
Matthew Kilgore b20aade638 Swap NotifyPopup to use Shell_NotifyIcon
Fairly straight forward, the Powershell code was fundimentally just
calling Shell_NotifyIcon under the covers which we can easily do
ourself. The notification has to be tied to a window, so I simply create
a hidden one to use.

A nice improvement here is that instead of having to use the Powershell
icon we can make use of the EXE icon if one was provided. If one is not
provided then we use the default 'application' icon.
2022-11-06 01:08:36 -04:00
Matt Kilgore bf3c80d11d
Merge pull request #236 from mkilgore/fix-messagebox-quoting
Fix quoting of arguments to dialog functions on Linux
2022-11-05 11:40:32 -04:00
Matthew Kilgore c945214cb8 Fix quoting of arguments to dialog functions on Linux
tinyfiledialogs had lots of issue surounding the quoting of the
arguments to the dialog functions. The arguments are effectively placed
verbadim into shell commands, and without any proper treatment they
would get accidentally evaluated by the shell, which is a big problem.
Additionally, any arguments containing quotes would just not work since
they would screw up the underlying shell command.

This change fixes all that for Linux. Every argument to the dialog
functions is now surrounded in single quotes, which prevents any
evaluation of the string by the shell. Additionally, because this is
standard the only chracters that need special treatment are the single
quote characters, and proper escaping for them has been added. The
result is that the dialog functions can now accept arguments that hvae
single and double quotes in them (on Linux).
2022-11-05 00:36:48 -04:00
github-actions[bot] 0d45ec4969 Automatic update of ./internal/source 2022-11-04 23:01:37 +00:00
Roland Heyder a9314e06d2
Merge pull request #235 from QB64-Phoenix-Edition/buffers
Simplebuffers refactoring
2022-11-04 23:45:22 +01:00
Roland Heyder 7d66a171bc Simplebuffers refactoring
Implements the latest refactoring changes done in my Simplebuffers library.
2022-11-04 23:08:42 +01:00
Matt Kilgore 74b0c80fe3
Merge pull request #230 from mkilgore/add-messagebox-back
Add back internal MessageBox function
2022-11-01 10:35:10 -04:00
Matthew Kilgore 980d646317 Add back internal MessageBox function
Unfortunately InForm code calls this function directly via
`DECLARE LIBRARY`. For the moment we're adding it back in to keep those
programs functioning, in the future it may be removed.
2022-10-31 00:14:20 -04:00
github-actions[bot] e2d8fd6fa9 Automatic update of ./internal/source 2022-10-31 00:56:32 +00:00
Matt Kilgore 1094b91b59
Merge pull request #228 from mkilgore/release-3.4.0
Version 3.4.0
2022-10-30 20:40:15 -04:00
Matthew Kilgore b57aede2a7 Version 3.4.0 2022-10-30 17:20:03 -04:00
Samuel Gomes 4d30a98495
Merge pull request #227 from a740g/main
Fix _OPENFILEDIALOG$ to accept -1 for allowMultipleSelects&
2022-10-30 11:02:15 +05:30
Samuel Gomes 2f84616168 Fix _OPENFILEDIALOG$ to accept -1 for allowMultipleSelects& 2022-10-30 04:35:46 +05:30
Samuel Gomes 81e3c8724e
Merge pull request #225 from a740g/main
Update `tinyfiledialogs` to v3.8.9
2022-10-29 21:46:37 +05:30
Samuel Gomes 21f6a9d286
Merge branch 'QB64-Phoenix-Edition:main' into main 2022-10-29 21:00:28 +05:30
Matt Kilgore d2c46f0681
Merge pull request #222 from mkilgore/fix-osx-setup-script
Fix setup_osx.command script when run from a different directory
2022-10-29 11:24:01 -04:00
Samuel Gomes 5c9766ce97 Update tinyfiledialogs to v3.8.9 2022-10-29 17:18:50 +05:30
Matthew Kilgore 37f2ecd4ce Fix setup_osx.command script when run from a different directory
I broke this by accident in 5031de2, likely by misreading the $0.  What
the line was intended to do was change to the directory the script is
located in when the script starts, this allows the script to be started
from any location.

Typically this isn't necessary functionality, but for Mac OS it's
important because if you double-click the script (the typical way to run
it) it is started from the user's home directory. Due to this I also
updated the Mac OS distribution test to run the script in this way so
that it's closer to how a user will run it.

Fixes: #218
2022-10-27 23:26:07 -04:00
github-actions[bot] 47ee4fb1ab Automatic update of ./internal/source 2022-10-25 04:53:56 +00:00
Samuel Gomes bfec18cd92
Merge pull request #216 from a740g/tfd-support
This implements cross-platform common dialogs for QB64-PE (issue #189)
2022-10-25 10:05:15 +05:30
Samuel Gomes 6b4ad03d1f Remove -lcomdlg32 -lole32 from line Makefile:363 2022-10-25 08:36:06 +05:30
Samuel Gomes 8fa58443b4 Add -lcomdlg32 -lole32 to CXXLIBS always for Windows 2022-10-25 08:12:07 +05:30
Samuel Gomes 7e533a2473 Update test license files 2022-10-25 07:28:35 +05:30
Samuel Gomes d14d688181 Fix IMAGE_GET_BGRA_... macros 2022-10-25 04:47:27 +05:30
Samuel Gomes a122331d6d Include stdarg.h in gui.h 2022-10-25 04:34:41 +05:30
Samuel Gomes 56c7936fb4 Address issues mentioned in #216 2022-10-25 04:24:01 +05:30
Samuel Gomes 6b60048d9e Simplify gui_tokenize() 2022-10-24 02:59:51 +05:30
Samuel Gomes fb00990bab Replace strtok with strtok_r 2022-10-24 02:09:55 +05:30
Samuel Gomes 6a74b3f487 Replace libqb alert, MessageBox & MessageBox2 with tiny file dialogs 2022-10-24 01:24:57 +05:30
Samuel Gomes 98e40c173d Fix common dialogs build.mk bug 2022-10-23 22:44:39 +05:30
Samuel Gomes 327d753206 Move qbs_new_txt_len() declaration to libqb.h 2022-10-23 18:23:35 +05:30
Samuel Gomes 93e58baa1d Common dialogs support 2022-10-23 12:57:02 +05:30
github-actions[bot] feb2b302d4 Automatic update of ./internal/source 2022-10-10 13:36:10 +00:00
Matt Kilgore 684e15b4d8
Merge pull request #210 from mkilgore/release-3.3.0
Version 3.3.0
2022-10-10 09:17:56 -04:00
Matthew Kilgore bc6c7ebff8 Version 3.3.0 2022-10-09 22:03:39 -04:00
github-actions[bot] e6a68b810c Automatic update of ./internal/source 2022-10-05 17:30:47 +00:00
Samuel Gomes 74e7778527
Merge pull request #208 from a740g/main
Implement `_SNDPLAYCOPY` enhancement #185
2022-10-05 22:34:58 +05:30
Samuel Gomes a2e77d7557 Only change _SNDBAL stereo panning if x is passed. Mimic old OpenAL behavior. 2022-10-05 15:28:04 +05:30
Samuel Gomes 7e63a68407 Simplify sub__sndplaycopy 2022-10-05 06:31:46 +05:30
Samuel Gomes f49f8bdf06 Implement _SNDPLAYCOPY enhancement #185 2022-10-05 02:33:44 +05:30
github-actions[bot] bc1567089c Automatic update of ./internal/source 2022-10-02 22:25:45 +00:00
Matt Kilgore 5cb05f0308
Merge pull request #204 from mkilgore/generate-license-file
Add the ability to generate a text file containing all the licenses that apply to a compiled program.
2022-10-02 18:09:40 -04:00
Matt Kilgore 1fa5b8af10
Merge branch 'main' into generate-license-file 2022-10-02 16:25:57 -04:00
Matt Kilgore 38bba69185
Merge pull request #203 from mkilgore/fix-manpage-flags
Add and fix options listed in manpage
2022-10-01 20:55:46 -04:00
Matthew Kilgore 2fc4950d41 Add and fix options list in manpage
Fixes: #199
2022-10-01 20:19:01 -04:00
github-actions[bot] 70b4c1aa5d Automatic update of ./internal/source 2022-10-01 19:14:39 +00:00
Matthew Kilgore 9e4d77d614 Fix license_stbvorbis.txt line endings
This file was checked-in with Windows line endings, but it should have
Unix/Linux ones. Windows will automatically convert it into Windows line
endings when checking the file out, so it's not a problem in that case.
2022-10-01 15:08:01 -04:00