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

1349 commits

Author SHA1 Message Date
Roland Heyder bec7e9cdf4 Merge branch 'main' into wiki-dev 2022-05-21 00:23:32 +02:00
Roland Heyder 78a04387b3 New Wiki parser finished 2022-05-20 23:44:55 +02:00
Matthew Kilgore 95c57c182c Supply a default version label when no version has been calculated
When building directly from the repo (either from a git clone or a
download of the zip of the repository) the version reported is very
misleading because it will not have a version label, suggesting it is
actually a 'release' version when in fact it could be anything.

The ./.ci/calculate-version.sh logic is already setup to delete an
existing ./internal/version.txt during a detected release build, so we
can just place one in the repositroy and it won't impact the versioning
of CI and release builds, but will show up when building locally.

Fixes: #63
2022-05-20 16:57:45 -04:00
Roland Heyder f5dbe9bc17 Improved cache filename handling and external links
Cached wiki file names get a spelling label for case insensitive systems. External links are working (clickable) now and open in the standard application.
2022-05-20 01:41:05 +02:00
Roland Heyder 27a59e5b5e Useless style removal in blocks 2022-05-19 01:45:25 +02:00
Roland Heyder 4af4db7584 Merge branch 'main' into wiki-dev 2022-05-19 01:40:16 +02:00
Steve McNeill da1978915a
Merge branch 'main' into main 2022-05-18 12:14:17 -04:00
SteveMcNeill 459c8a216d Update ide_methods.bas 2022-05-18 11:12:49 -04:00
Matthew Kilgore 4a8a7ce594 Redirect stderr to compilelog rather than errorcompilelog
Having two separate files for the compile output is just too confusing,
and it adds an extra file users need to look at and give us when there
are issues. This change simply makes qb64.bas send both the stdout and
stderr output to compilelog.txt.

Fixes: #61
2022-05-18 09:20:30 -04:00
SteveMcNeill bd3b673996 test change to IdeAddSearched 2022-05-18 07:10:59 -04:00
Roland Heyder 3391b83682 Improve underline and list appearance
Also added a page header with title and last update.
2022-05-18 02:15:36 +02:00
SteveMcNeill 7420504f42 reorder ubound check 2022-05-17 09:25:21 -04:00
SteveMcNeill ef875607ff Fix to endless loop in retrieving search History
Replaced both instances with one single sub to reduce code and make things easier to maintain and upkeep.  It's always easier to work in one spot than it is in multiple.
2022-05-17 07:50:18 -04:00
Roland Heyder acf9e0ff02 Fixes to Blocks and centered text 2022-05-16 01:35:22 +02:00
Roland Heyder a62e74ae31 Merge branch 'main' into wiki-dev 2022-05-15 11:28:35 +02:00
Roland Heyder 40937c906d Tidy up wiki stuff
Moved code blocks into more logic order, added comments, almost done now
2022-05-15 02:45:45 +02:00
Matthew Kilgore 73c1c7245d Turn off optimization for now
We'll turn this on later when we have it better sorted out.
2022-05-14 12:15:35 -04:00
Roland Heyder eab0e4cd45 Add handling of InlineCode template 2022-05-13 22:49:53 +02:00
Roland Heyder 6266fab2bd Improves 'small' template handling
Also <span... inline elements got fixed + some minor code optimization
2022-05-13 13:53:58 +02:00
Roland Heyder 64fa73aab7 Improved wiki page/file name validation 2022-05-13 13:49:19 +02:00
Matthew Kilgore 4d61ff7995 Fix quoting on Windows Resource files 2022-05-12 00:53:24 -04:00
Matthew Kilgore 794f76a534 Provide CFLAGS_EXTRA 2022-05-12 00:21:02 -04:00
Matthew Kilgore 11ec9237a3 Add support for mylib$ and mylibopt$ 2022-05-12 00:21:02 -04:00
Matthew Kilgore 23ef0aeca8 Add more tests and dynamic library support 2022-05-12 00:21:02 -04:00
Matthew Kilgore d18fc78fcd Formatting 2022-05-12 00:21:02 -04:00
Matthew Kilgore 2a4b637412 Separate _ICON usage from icon.rc
The Makefile was incorrectly tying together _ICON and icon.rc, making it
impossible to use one without the other. To fix this we introduce a new
DEP_ICON_RC flag, which indicates we need to use the icon.rc file (in
addition to regular icon support). DEP_ICON now only indicates we need
to support _ICON, and does not attempt to build the resource
information.
2022-05-12 00:21:02 -04:00
Matthew Kilgore cfb86d2c8f Stop running windres from qb64.bas
Makefile does this
2022-05-12 00:21:02 -04:00
Matthew Kilgore 30c620cfda Initial qb64.bas changes 2022-05-12 00:21:02 -04:00
Roland Heyder da02b2aa61 Ignore custom TOC tables
No info box is generated for manual "TOC only" tables.
2022-05-11 15:49:00 +02:00
Roland Heyder 1babd153ef Fix template handling
Avoid optional template parameters (usually color specs) leaking into the help text.
2022-05-11 02:01:22 +02:00
Roland Heyder 1db84177f6 Add more UTF-8 replacements 2022-05-10 18:32:33 +02:00
Roland Heyder 965cb4de79 Wiki parser overhaul
Turned almost every stone, work still in progress.
2022-05-10 14:43:53 +02:00
Matthew Kilgore be814036ec Temporarally add build steps back 2022-05-07 19:57:38 -04:00
Matthew Kilgore 5a81e22879 Bump next version to 0.6.0 2022-05-07 19:57:38 -04:00
Matthew Kilgore 7d7d16c4f6 Use $EXEICON and $VERSIONINFO in qb64.bas 2022-05-07 19:57:38 -04:00
Matthew Kilgore a9fd9551af Allow numerical VersionInfo values to set corresponding string values
The resource file we create contains two separate values for FileVersion
and ProductVersion. Currently, they are actually represented by two
separate values in $VERSIONINFO and effectively require duplicating the
information between them.

My understanding is that the string values should always be the same as
the numerical versions, so to make $VERSIONINFO easier to use this
changes the logic so that setting the numerical version will
automatically also set the string version if values for them are not
provided.
2022-05-06 14:29:37 -04:00
Matthew Kilgore 0930d51b9c Move some file-related functions into utilities/file.bas 2022-05-06 13:42:35 -04:00
Matthew Kilgore c165476838 Create icon.rc file on all platforms, copy ico file into temp
Previously, the creation of the icon.rc file was restricted to be
Windows only because Windows is the only platform with a use for that
file. Unfortunately, this breaks a fundimental assumption about how the
QB64 C++ generation works, because we only have one set of
`./internal/source` files from which we build all versions of QB64 for
all platforms. Due to that, the built version needs to include all files
needed by all platforms, regardless of which one is doing the building.
So to that end, all platforms should produce the icon.rc, even if it
will not be used on that platform.

Additionally, the path to the icon file in `icon.rc` is problimatic
because it is made into an absolute path. This blocks `qb64.bas` from
using `$EXEICON` because the absolute path is not predictable, as
the location we create ./internal/source will be different from the
location we build ./internal/source. Effectively this means that the
`icon.rc` file in `./internal/source` would always be wrong.

The solution is to not use an absolute path, with the other option being
to have the icon in the same directory as the resource file. This is
actually relatively easy to acomplish since icon files are not terribly
large and we can simply copy it into the temp directory.

Thus, that is what this change does - the specified icon file is copied
into the temp directory as `icon.ico`, which allows use to use
`icon.ico` in the `icon.rc` file and have it always work regardless of
directory.

The internal logic was also cleaned up a bit. The creation of these
files is no longer Windows specific, and the $EXEICON parsing no longer
writes to the `icon.rc` file - rather, the entire thing is generated
together, with both the $VERSIONINFo and $EXEICON depending on which
were provided.
2022-05-06 13:42:35 -04:00
SteveMcNeill e0dea015fc include path in deleted filename 2022-05-01 19:26:48 -04:00
SteveMcNeill 40ed008e9f Fix to Incorrect flag name 2022-05-01 19:11:38 -04:00
SteveMcNeill 9b87eff34b Capitalize Keywords in QB64.bas 2022-05-01 18:02:15 -04:00
SteveMcNeill 65c75b0df6 Add option to menu to make temp files
It's working and tested in Windows.
Still needs to be tested in Linux and Mac, but I *think* it'll work for them as well.  ;)
2022-04-29 03:57:25 -04:00
Matthew Kilgore 2fdab9af4e Reintroduce wikiBaseAddress$ fix
This got dropped accidentally due to taking the wrong file during the
rebase to attach the previous history from qb64team/qb64.
2022-04-28 17:44:30 -04:00
SteveMcNeill 97ab4f4dc9 Update to version
Reset version number to 0.5.0.
Added "Phoenix Edition" to our name, so nobody will think we're still working with the old team of QB64, and mistakenly donate to the wrong Patreon, or buy merchandise wrongly thinking they were supporting us.  :)
2022-04-28 17:21:22 -04:00
Matthew Kilgore 0847b970b1 Don't ignore .bas files in source directory 2022-04-28 17:20:45 -04:00
Matthew Kilgore 7be379c39d Add version calculation and separate label vs. commit
This slightly changes how the versioning works.
2022-04-28 17:19:37 -04:00
MaxineHelsel c0da4caa49 made it so it doesnt say created .exe file on macos 2022-04-28 13:41:57 -04:00
Fellippe Heitor 6e385df280 Fix alignment issues in listbox controls 2022-03-10 13:04:36 -03:00
Fellippe Heitor b2f35b9e98 Reenable line selection when debug is off
Clicking line numbers when not in Debug mode and
when "auto-add debug" is disabled will select the
clicked line
2022-03-10 10:30:06 -03:00
Fellippe Heitor fd5ba476b5 Add 'don't show again' to 'Add ' dialog 2022-03-10 09:48:57 -03:00
Fellippe Heitor 20cc9808c2 Fix issue of ghost variables between edits ($Debug)
Removing a variable between $Debug sessions would
cause occasional crashes on some systems. This fix
invokes the variable watch dialog with a special parameter
so it'll regenerate the list between edits.
2022-03-10 01:47:03 -03:00
Fellippe Heitor 2c0f892e4e Improve displayFormat for Watch Panel and dialog
Replicated the button from the Watch Panel in the Watch List dialog.
Indicators added when content goes beyond window limits.
2022-03-10 00:55:46 -03:00
Fellippe Heitor 627b85c4bd Add support to number formats in Watch Panel
Allows changing display format of numbers
between decimal, hex, octal and binary.
2022-03-09 14:31:55 -03:00
Fellippe Heitor 937df8823c Revert "Fix assignments involving arrays (closes #216)"
This reverts commit 39f7d8f07b.
2022-03-01 23:18:33 -03:00
Fellippe Heitor 42c9e7327f Revert "Reset flag wholearrayreference as needed"
This reverts commit 4e41877eb0.
2022-03-01 23:17:45 -03:00
Fellippe Heitor 4e41877eb0 Reset flag wholearrayreference as needed 2022-03-01 22:34:36 -03:00
Fellippe Heitor 39f7d8f07b Fix assignments involving arrays (closes #216)
Array index could be omitted in cases where
it was actually needed
2022-03-01 22:10:28 -03:00
Fellippe Heitor 52c25d6077 Allow changing color of menu+dialogs (Closes #221)
New item in Options->IDE Colors allows customizing the color
that's used to draw menu items and dialogs (`Color 7`).
2022-03-01 20:49:38 -03:00
Fellippe Heitor 2926fea0e9 Fix indentation in disabled precompiler blocks 2022-02-24 22:57:33 -03:00
Fellippe Heitor 6b7fda9b15 Remove unused variable in ide_methods 2022-02-24 17:48:37 -03:00
Fellippe Heitor 84873f88d8 Revert "Make indent level only increase once..."
This reverts commit 1e679627f4.
2022-02-23 01:27:59 -03:00
Fellippe Heitor 55c365763c Fix capitalization of arrays in U/LBound calls
Previous fix needed to be reverted; this is the new
attempt at fixing the issue.
2022-02-22 23:51:04 -03:00
Fellippe Heitor 02af89c94d Fix capitalization of 'to' in Case statements 2022-02-22 22:54:12 -03:00
FellippeHeitor c30120ee46 Fix building static libraries in Linux
With QB64 stored in a path with spaces in it,
building static libraries on demand would
fail silently.
2022-02-13 09:53:30 -03:00
FellippeHeitor 31adc2361e Adjust var name in GetBytes 2022-01-23 22:26:56 -03:00
FellippeHeitor b87dde8d89 Fix issue with $NoPrefix in Declare Library blocks 2022-01-23 22:03:13 -03:00
FellippeHeitor 03982022dc Fix error with stray As in Sub parameters
Things like this used to be treated as valid:
```
Sub foo(bar As)
End Sub
```
2022-01-21 13:16:57 -03:00
FellippeHeitor 26c7521171 Fix link to the online wiki (IDE) 2022-01-20 20:00:53 -03:00
FellippeHeitor f64c882bc6 Comment out Download function from IDE code
Method is no longer used in this version, due to
changes in qb64.org
2022-01-20 19:55:58 -03:00
Fellippe Heitor e70fb238f6 Fix wiki update on *nix systems 2022-01-20 19:51:44 -03:00
FellippeHeitor 3660383f3c Fix wiki updates
Requires 'curl' to be system-wide available.
Will show 'Cannot find curl' message if not
found.
2022-01-20 19:38:34 -03:00
FellippeHeitor f10b36db6a Disable/hide 'Check for newer version' feature
Incompatible with new website.
2022-01-18 21:28:26 -03:00
FellippeHeitor f489d05755 Display follow-up message when F4 is unavailable 2022-01-18 21:26:10 -03:00
FellippeHeitor 2a41b06a34 Fix incorrect behavior of 'Add all' button
When using the Add All button, the list would
sometimes behave as if not filtered.
2022-01-18 21:12:06 -03:00
FellippeHeitor 8096ac4e1f Scientific notation highlight fix
Yearly tradition. Affects negative variable names
which could look like scientific notation.
2022-01-18 20:31:14 -03:00
Fellippe Heitor 9f81ba1e1f Update qb64.bas
Fix critical regression in `FUNCTION fixoperationorder$()`

Using UBound/LBound in an expression would cause issues with other functions.
2021-11-06 17:55:48 -03:00
Kit 72126a1289
Make $NOPREFIX-friendly versions of $COLOR includes (#206)
* Create `$NOPREFIX`-friendly version of `color0.bi`

* Create color32_noprefix.bi

* add conditional for noprefix $color

* oh. it was that easy?

* Update CHANGELOG.md

* Update help files [ci-skip]

Co-authored-by: all-other-usernames-were-taken <74026992+all-other-usernames-were-taken@users.noreply.github.com>
2021-11-05 01:46:28 -03:00
FellippeHeitor f48b0b252b Save Watch Panel position and size across sessions 2021-10-17 22:37:24 -03:00
FellippeHeitor c0aa5e48f8 Add option to Help menu to check for updates 2021-10-17 20:37:11 -03:00
FellippeHeitor b206739a1f Merge branch 'development' into patches 2021-10-14 12:34:10 -03:00
Roland Heyder ce3c459dad Implements the _Bin$ function
Usage is analog to the legacy OCT$ and HEX$ functions.
2021-10-14 00:17:35 +02:00
Fellippe Heitor b59e1a8088
Update icon.rc 2021-10-13 10:49:17 -03:00
FellippeHeitor b8c0763b70 Replace "..." with String$(3, 250) for status indicator 2021-10-12 16:03:58 -03:00
FellippeHeitor bbf931d3ee Fix UDT internal arrays retaining values after loading files 2021-10-12 01:07:23 -03:00
FellippeHeitor 65e6f44a2f Fix "Duplicate definition" error with ON ERROR
Long-standing issue involving static arrays in subs/functions
with ON ERROR trapping active.
2021-10-12 00:36:52 -03:00
FellippeHeitor 41e85a989c Begin v2.1 development 2021-10-09 23:08:56 -03:00
FellippeHeitor 6801e08f2f Fix scientific notation; yearly tradition 2021-10-03 21:13:56 -03:00
FellippeHeitor f175fd2846 Fix contextual menu return actions (DebugMode) 2021-10-03 20:09:18 -03:00
FellippeHeitor b85d128faa Reset visible list to the first item when filteringwatch list
Now properly.
2021-10-03 12:27:33 -03:00
FellippeHeitor 7f49d223cd Show progress bar if building var list takes too long 2021-10-03 11:58:15 -03:00
FellippeHeitor bb49863f39 Reset visible list to the first item when filteringwatch list 2021-10-03 11:57:55 -03:00
FellippeHeitor 151d68ddcc Fix Input$() from file/port switching focus to the debuggee 2021-10-03 11:20:18 -03:00
FellippeHeitor a5b2727de4 Stop importing breakpoint/skip line data if > ubound(arrays) 2021-10-03 11:08:17 -03:00
Fellippe Heitor 005697e115 Add space before the watchpoint condition
Mere visual glitch.
2021-10-02 13:00:16 -03:00
FellippeHeitor 48e8f38108 Auto save/load breakpoint and skip line data ($Debug) 2021-10-02 04:20:58 -03:00
FellippeHeitor 7ab98a5a9e Remove previous variables from Watch List if TYPEs change 2021-10-02 03:52:40 -03:00
FellippeHeitor 7c17c987cb Keep watch list selection across edits (same session) 2021-10-02 02:38:12 -03:00
FellippeHeitor 4face3fc55 Allow closing the Watch Panel while keeping the Watch List 2021-10-02 02:28:37 -03:00
FellippeHeitor 6a7635aa25 Keep version info visible in $Debug mode 2021-10-02 00:15:37 -03:00
Fellippe Heitor 84571d8900 Fix order of duplicate GET/PUT subs in id list 2021-09-30 09:57:15 -03:00
FellippeHeitor 1e679627f4 Make indent level only increase once per line; closes #176 2021-09-30 00:48:38 -03:00
FellippeHeitor fcceba182c Fix procedure to clear existing watchpoint 2021-09-29 21:23:59 -03:00
FellippeHeitor 53c4d8ee56 Fix minor visual aspects of debug-related dialogs 2021-09-29 21:08:01 -03:00
FellippeHeitor fdec5d253c Show full variable name/array/udt in Watch Panel popups. 2021-09-29 20:28:00 -03:00
FellippeHeitor dec20c96a2 Add hover popup with Watchpoint expression (Watch Panel) 2021-09-29 20:12:04 -03:00
FellippeHeitor 17686ee09c Add temporary error reporting through the console. 2021-09-29 20:11:33 -03:00
FellippeHeitor c48f4cff94 Version bump. 2021-09-28 04:07:45 -03:00
FellippeHeitor a5c2b130a5 Fix bad pointer arithmetic on void (macOS). 2021-09-28 04:00:43 -03:00
FellippeHeitor 1d51c41b53 Fix watching regular fixed-length string variables 2021-09-28 02:19:27 -03:00
FellippeHeitor 765b77c9bb Fix watchpoints for fixed-length strings in UDTs. 2021-09-28 01:52:16 -03:00
FellippeHeitor ca9737c465 Fix UDT single element selection. 2021-09-28 01:10:51 -03:00
FellippeHeitor aff7199253 Fetch storage slot when setting variables. 2021-09-28 00:00:39 -03:00
FellippeHeitor 8079fc3d07 Add ClearMouse method to ide_methods.bas
Allows exiting dialog boxes without stray clicks.
2021-09-27 23:29:59 -03:00
FellippeHeitor 8e09f14e7f Fix get global/local for fixed-length strings in UDTs 2021-09-27 23:09:05 -03:00
FellippeHeitor 7413e2fe6f Adapt CLEAR to deal with var-length UDT variables. 2021-09-27 22:55:01 -03:00
FellippeHeitor 5c9cc96ca7 Prevent crash when using CLEAR with var-len string UDTs
Still doesn't fix it, but prevents the crash.
Variables won't be cleared with this temporary patch.
2021-09-26 21:06:44 -03:00
FellippeHeitor 64306e4e10 Remove unnecessary REDIM in SUB increaseUDTArrays
A properly formed Git commit subject line should always be able to
complete the following sentence:

- If applied, this commit will...

Do not end the subject line with a period.

Wrap the body at 72 characters.

One day people learn.

Apologies for years of not following the above.
2021-09-25 23:34:59 -03:00
FellippeHeitor 2e32de2615 Dynamically resizes internal UDT arrays. Closes #180. 2021-09-25 22:27:14 -03:00
FellippeHeitor edb4d40ffa Fixes var=function assignment without parameters (recursion).
As reported at https://www.qb64.org/forum/index.php?topic=704.msg5775#msg5775
2021-09-25 00:34:55 -03:00
FellippeHeitor 1d638a8399 Auto-set "use custom font" if a new path is entered. 2021-09-23 01:05:58 -03:00
FellippeHeitor 2cf9f0d48e Adds extra explanation in Language dialog.
"(affects the display of TTF fonts set in Options-Display)"
2021-09-23 00:47:41 -03:00
FellippeHeitor 688ab96c34 Minor tweaks to Display Dialog. Closes #177. 2021-09-23 00:28:43 -03:00
FellippeHeitor 560978434b Redesigns "Display" dialog to customize cursor size. 2021-09-23 00:10:04 -03:00
FellippeHeitor 5cab1880b5 Uses GetLogicalDrives() in Windows (file dialogs). Closes #183 2021-09-21 02:54:41 -03:00
FellippeHeitor 5f9a58a620 Fixes "Add All" in Watch List (_Bit variables + $NoPrefix). 2021-09-21 02:22:46 -03:00
FellippeHeitor a6672058ff Properly deals with _BIT variables when $NoPrefix is active. 2021-09-21 02:14:06 -03:00
FellippeHeitor dd302b0b5f Sends focus to debuggee when function INPUT$() is called. 2021-09-21 01:28:50 -03:00
FellippeHeitor bb77168127 Properly recovers after an error in DebugMode. 2021-09-20 23:33:38 -03:00
FellippeHeitor 3e498df414 Fixes watching/sending values for _BIT arrays. 2021-09-20 22:04:24 -03:00
FellippeHeitor f6f8a254a7 Fixes focus switching in Add Watch dialog. 2021-09-20 17:11:37 -03:00
FellippeHeitor e30f7a1691 Fix CONST failing with anything containing a NOT 2021-09-19 21:22:08 -03:00
FellippeHeitor 42208832f5 Fixes evaluation of valid var/flag names for $LET/$IF 2021-09-19 15:25:39 -03:00
FellippeHeitor 34138cead6 Fixes parsing in TYPE blocks (new AS syntax) 2021-09-19 14:56:16 -03:00
FellippeHeitor 2f33522d27 Indicate in the Watch Panel that a condition was met. 2021-09-18 21:40:06 -03:00
FellippeHeitor cb050b2c0b Tries harder to prevent invalid values for watchpoints. 2021-09-18 20:33:57 -03:00
FellippeHeitor 3be8a806f8 Fixes watchpoints for strings 2021-09-18 19:30:55 -03:00
FellippeHeitor ce16f79f04 Improves visual indication of existing watchpoints. 2021-09-18 16:35:14 -03:00
FellippeHeitor a67dccae5b Allows setting watchpoints regardless of scope.
Adds "Clear Watchpoint" functionality.
Allows watching more than one array index/element.
2021-09-16 22:49:43 -03:00
FellippeHeitor 833e28aaf3 Removes test print lines. 2021-09-16 00:40:07 -03:00
FellippeHeitor 926b631f3b Implements watchpoints. 2021-09-16 00:04:20 -03:00
FellippeHeitor 71c291a7f1 Adjusts case of menu item. 2021-09-15 17:19:08 -03:00
FellippeHeitor e76041aa3f New toggle in Debug menu to "Auto-add $Debug metacommand" 2021-09-15 17:15:16 -03:00
Fellippe Heitor 1788a77379
Merge pull request #190 from QB64Team/debug-mode [ci-skip]
Debug mode tweaks
2021-09-11 23:26:14 -03:00
FellippeHeitor 3d5f115eba Improves handling of _BIT variables ($Debug). Allows setting values. 2021-09-11 23:06:05 -03:00
FellippeHeitor 27c84393ec Allows variables up to _BIT * 64 2021-09-11 23:05:26 -03:00
FellippeHeitor 619a8fb603 Highlights line number with execution pointer ($debug). 2021-09-11 23:03:11 -03:00
FellippeHeitor 9a963b70f8 Fixes doubleClickThreshold in Watch List dialog. 2021-09-11 20:05:04 -03:00
FellippeHeitor 883cfcb525 Display warning when $Checking:Off is used with $Debug 2021-09-11 18:23:31 -03:00
FellippeHeitor 296a46b33c Fixes PUT with variable-length strings in UDTs. Closes #133 2021-09-11 00:52:28 -03:00
FellippeHeitor 86984024bf Saves color schemes individually for each instance of the IDE. 2021-09-10 21:26:04 -03:00
FellippeHeitor 8d58dff862 Shows <multiple values> at Watch list dialog for UDTs. 2021-09-09 21:29:34 -03:00
FellippeHeitor 17a116b19d Adapts "Send Value" to work with multiple array dimensions. 2021-09-09 20:34:04 -03:00
FellippeHeitor 908a5b179f Removes fix046$ from variable names before displaying them. 2021-09-09 00:26:51 -03:00
FellippeHeitor 133805181e Fixes vscrollbar not scrolling in Watch Panel. 2021-09-09 00:00:02 -03:00
FellippeHeitor e561ab9002 Fixes vscrollbar not showing in Watch Panel. 2021-09-08 23:41:13 -03:00
FellippeHeitor 3f64648fc8 Fixes Watch Panel items alignment. 2021-09-08 23:24:10 -03:00
FellippeHeitor a37e3801d8 Adds support to watching arrays with multiple dimensions. 2021-09-08 22:48:03 -03:00
FellippeHeitor 6f77de8c2a Fixes mouse button 'sticking' in Change UDT dialog. 2021-08-30 01:42:56 -03:00
FellippeHeitor 7c1f83f4f1 Fixes Up One Level button in Change UDT dialog. 2021-08-30 01:30:47 -03:00
FellippeHeitor d62e307126 Implements setting value of arrays/UDTs. 2021-08-30 00:47:30 -03:00
FellippeHeitor da1344221f Fixes detecting if it's a local/global var before sending value. 2021-08-29 19:32:32 -03:00
FellippeHeitor 704b781cd2 Properly retrives STRING storage (Watch List dialog) 2021-08-28 19:55:43 -03:00
FellippeHeitor 276536d467 Merges set address and set string address.
Next step is making arrays and UDTs work.
2021-08-28 16:54:16 -03:00
Fellippe Heitor a1a6fa6edb Fixes watch panel not showing on the mac.
Wonder how it was still showing in Windows tho... mysteries.
2021-08-26 18:26:48 -03:00
FellippeHeitor b8d50b09d2 Prevents errors with arrays in SUBs. 2021-08-25 21:34:36 -03:00
FellippeHeitor 3bcad3c611 Resets Watch Panel data before a new run. 2021-08-25 00:08:52 -03:00
FellippeHeitor 13a9d4e8be Fixes bug watching variable-length strings in UDTs. 2021-08-24 23:48:22 -03:00
FellippeHeitor 8d479ee8ea Hopefully fixes the mysterious missing vwatchlabel bug. 2021-08-24 23:33:10 -03:00
FellippeHeitor f7e53e9166 Fixes "Add All" adding UDTs in Watch List dialog. 2021-08-24 14:46:57 -03:00
FellippeHeitor 2ccfae416a Sets focus to the debuggee when SLEEP is used.
Properly sizes Watch List dialog when there are "hidden" variables in includes.
2021-08-24 13:23:01 -03:00
FellippeHeitor e1c148abc1 Fixes watch list printing beyond the panel. 2021-08-24 12:04:51 -03:00
FellippeHeitor 28661bbf36 Adds minimal support for watching _BIT variables. 2021-08-24 03:53:39 -03:00
FellippeHeitor ec295db7f5 Fixes crash readding arrays of UDTs to Watch List during execution. 2021-08-24 03:05:42 -03:00
FellippeHeitor 38fe93a6cf Adds support for watching multiple indexes arrays of UDTs.
Not multiple dimensions yet tho.
2021-08-24 02:13:42 -03:00
FellippeHeitor 62f3496c36 Adds ability to fetch data from arrays of UDTs. 2021-08-23 18:02:22 -03:00
FellippeHeitor 687276bccd Adds support to STRING elements in UDTs. 2021-08-22 22:47:48 -03:00
FellippeHeitor bf9ab3458c Allows outputting the watch list to the console. 2021-08-22 11:49:48 -03:00
FellippeHeitor 9423080f6b Allows watching one element of UDTs (no strings yet). 2021-08-22 00:12:01 -03:00
FellippeHeitor 1049d9db16 Fixes $NOPREFIX mode changing MEM to _MEM as a sub parameter. 2021-08-21 20:09:06 -03:00
FellippeHeitor 82d4de881f Keeps array index selection made before entering Debug mode. 2021-08-21 17:39:41 -03:00
FellippeHeitor 18b5b3090f Reverts using isString as it's reserved for the compiler. 2021-08-20 19:11:06 -03:00
FellippeHeitor 2fc7380fa6 Begins implementing ways to watch UDTs.
Still in a non-working state.
2021-08-20 16:10:28 -03:00
FellippeHeitor d29a6657cc Encloses string data within quotation marks (Watch Panel). 2021-08-19 01:28:33 -03:00
FellippeHeitor 087c320631 Encloses string data within quotation marks (Watch List dialog). 2021-08-19 01:20:52 -03:00
FellippeHeitor 34950c80ea Visual tweaks to dialogs. Show received array data in Watch List box. 2021-08-19 01:09:18 -03:00
FellippeHeitor e311e2ee35 Optimizes $Debug internal protocol.
Less back-and-forth of commands to get variable data. Moves processing/address fetching almost entirely to `vwatch.bm`.
2021-08-19 01:05:47 -03:00
FellippeHeitor 70b6f7b2b9 Implements watching variable and fixed-length strings. 2021-08-17 02:15:12 -03:00
FellippeHeitor f279839a7b Reduces number of commands to get a variable's value. 2021-08-17 00:47:13 -03:00
FellippeHeitor eeff3207d6 Preliminary work to watch arrays (native types).
Strings not working yet.
2021-08-16 01:32:07 -03:00
FellippeHeitor c2ce0df83f Allows searching for variables using multiple terms (watch list). 2021-08-15 22:53:54 -03:00
FellippeHeitor 1b5c21817b Allows jumping to the line that called a procedure (call stack). 2021-08-15 21:16:26 -03:00
FellippeHeitor 3c775df2a4 Fixes Watch List coming out incomplete when a filter was active. 2021-08-15 20:21:06 -03:00
FellippeHeitor e728e28e3b Fixes next line indicator not showing with line numbers turned off. 2021-08-15 20:02:37 -03:00
FellippeHeitor 770fe0d7bc Version bump to 1.6. 2021-08-15 15:55:07 -03:00
FellippeHeitor ecfb439ff0 Changes communication protocol so it doesn't rely on end markers.
The message length precedes the message, so no <END> marker is required anymore.
2021-08-15 13:56:22 -03:00
FellippeHeitor 3f80c54e7d Mere fix of case of array name. 2021-08-15 02:32:40 -03:00
FellippeHeitor 38e0ec37d2 Fixes case adjustment of array names in UBOUND/LBOUND calls.
FINALLY! <3
2021-08-15 02:30:26 -03:00
FellippeHeitor 1cbc842a1c Mere spacing. 2021-08-15 02:28:11 -03:00
FellippeHeitor 083648e617 Makes "Name already in use" error more descriptive. 2021-08-15 00:46:12 -03:00
FellippeHeitor bfed027740 Minor visual tweaks. 2021-08-14 22:30:40 -03:00
FellippeHeitor a15d6622d3 Darkens screen while waiting for INPUT/LINE INPUT ($DEBUG). 2021-08-14 22:11:11 -03:00
FellippeHeitor 2af2f4e2a1 Improves handling/signaling of INPUT/LINE INPUT in $DEBUG mode. 2021-08-14 21:28:21 -03:00
FellippeHeitor d2cf042c45 Makes vwatch.bm try harder to send its own hWnd. 2021-08-14 21:27:57 -03:00
FellippeHeitor f7fe97390a Changes resize handle on vWatch panel to chr$(254) again. 2021-08-14 15:26:57 -03:00
FellippeHeitor ea09964163 Properly indicates that compilation with F7/8 has been requested. 2021-08-14 15:24:10 -03:00
FellippeHeitor 5756e31371 Requests only elements, shows the variable preset. 2021-08-14 11:36:26 -03:00
FellippeHeitor b4a7ca03c4 Display internal error when trying to watch an invalid UDT. 2021-08-13 11:51:52 -03:00
FellippeHeitor 4fed87994b New prototype for manually entering UDT elements to watch.
Allows user to type element to watch; uses `udtreference()` to fetch the element offset to access.
Non-functional yet, just shows a messagebox with the result.
Looks promising.
2021-08-13 10:21:15 -03:00
FellippeHeitor 9c15901b23 Store variables' id in usedVariableList(). 2021-08-13 00:52:09 -03:00
FellippeHeitor cca1593f79 Switches focus to IDE automatically when breakpoint is reached.
Windows-only.
2021-08-12 23:00:43 -03:00
FellippeHeitor f9ab61ad51 Improves insertion of $Debug automatically (F7/F8). 2021-08-11 01:35:29 -03:00
FellippeHeitor 670dfe6da8 Makes "wait for compilation" message a status message. 2021-08-11 00:39:55 -03:00
FellippeHeitor 2e3f987c8e Prototype of dialog to select UDT elements. 2021-08-09 00:57:32 -03:00
FellippeHeitor 934e555cf5 Fixes behavior of repeat search shortcuts. 2021-08-09 00:18:48 -03:00
FellippeHeitor 757ee19f2b Allows Ctrl+\ to be used as a shortcut to repeat search. 2021-08-08 13:31:16 -03:00
FellippeHeitor 4ce6e3017c Reinstates legacy clipboard shortcuts in dialogs.
Ctrl+Insert, Shift+Insert and Shift+Delete as alternatives to Ctrl+C, Ctrl+V and Ctrl+X in dialogs.
2021-08-08 13:16:11 -03:00
FellippeHeitor 66298347a3 Remove (brackets) from around type names in Warnings box. 2021-08-07 19:26:34 -03:00
FellippeHeitor 17bb0ffaca Prevents "Purge C++ libraries" from triggering recompilation. 2021-08-07 19:26:00 -03:00
FellippeHeitor 05fb2d44a2 Prevents users from creating self-referencing TYPE blocks. 2021-08-07 18:11:57 -03:00
FellippeHeitor da76d340c9 Improves on management of watch list (arrays).
`variableWatchList$` now contains:
- MKL$(length of the longest var name)
- MKL$(index in usedVariableList) + MKL$(array index) (= 0 if not an array)
- ...
2021-08-07 01:38:42 -03:00
FellippeHeitor 8e69b49304 Fixes string arrays not being added to variable list. 2021-08-06 23:42:14 -03:00
FellippeHeitor 08954e0039 Prevents toggling items with accidental double-clicks (Watch List). 2021-08-06 23:11:17 -03:00
FellippeHeitor 445f192848 Simplifies array range selection (Watch List). 2021-08-06 22:59:08 -03:00
FellippeHeitor faf6b2dcdd Begins work to fetch array indexes. 2021-08-05 01:56:19 -03:00
FellippeHeitor e23f7f6905 Aligns array types properly in Watch Llist dialog. 2021-08-05 01:51:20 -03:00
FellippeHeitor 4df2ada743 Adds interface to select which array indexes to watch. 2021-08-05 01:27:57 -03:00
FellippeHeitor 600fa69786 Allows setting fixed-length strings from the IDE.
Displaying them was buggy too, due to them having CHR$(0) before being initialized.
2021-08-03 15:14:18 -03:00
FellippeHeitor e737219d75 Allows $Debug to work ok with $NoPrefix data types. 2021-08-03 04:18:42 -03:00
FellippeHeitor c57eab997e Allows sending variable data even before reading addresses. 2021-08-03 04:08:58 -03:00
FellippeHeitor 359aa7ab2d Merge branch 'var-export' of https://github.com/QB64Team/qb64 into var-export 2021-08-03 00:37:45 -03:00
FellippeHeitor 01a3c56685 Allows setting any length string variables from the IDE. 2021-08-03 00:36:21 -03:00
Fellippe Heitor 542c72fc2c Prevents disconnection on macOS
Need to check if in Linux it was disconnecting randomly too.
2021-08-02 15:00:00 -03:00
FellippeHeitor e84dffbc27 Allows both F7 and F8 to start paused. 2021-08-01 20:28:03 -03:00
FellippeHeitor 1573e2aa47 Minor visual tweaks to Watch List dialog. 2021-08-01 20:09:44 -03:00
FellippeHeitor b49d2e7326 Fixes "set address" 2021-08-01 19:15:37 -03:00
FellippeHeitor cad9e407d8 First attempt at "set address". Nonworking state. 2021-08-01 18:14:14 -03:00
FellippeHeitor 00baa348e0 Allows CTRL+C to copy the variable watch list to clipboard. 2021-08-01 13:27:40 -03:00
FellippeHeitor 16841c56f1 Clears most recent value of variables when out of scope. 2021-08-01 12:08:16 -03:00
FellippeHeitor f1eb6787a9 Allows filtering variables in Watch List dialog.
Filter works for name, type and scope.

Also: Begins work to allow sending variable data.
2021-08-01 03:35:48 -03:00
FellippeHeitor fdf332b3e5 Checks whether execution is in a sub/function before F6 acts. 2021-08-01 01:51:51 -03:00
FellippeHeitor f682815ca3 Fixes status word wrapper error. 2021-08-01 01:23:53 -03:00
FellippeHeitor 45205f91ec Removes unused variable in ide_global.bas 2021-08-01 01:09:57 -03:00
FellippeHeitor f527d9058b Reworks some internals of listbox controls (dialogs). 2021-08-01 00:56:29 -03:00
FellippeHeitor c0ed807aa6 Show current sub name in Watch List. 2021-07-31 20:07:24 -03:00
FellippeHeitor 5e4c3baa4b Adds Copy button to call stack log dialog. 2021-07-31 19:47:12 -03:00
FellippeHeitor 304a33f404 Fixes loading file names beginning with numbers. 2021-07-31 19:34:32 -03:00
FellippeHeitor 6451133f3c Prevents showing variable list before compilation ends.
Also: rewords message box titles.
2021-07-31 19:12:26 -03:00
FellippeHeitor 56a61321d1 Adds word-wrapping to status area error messages. 2021-07-31 19:11:53 -03:00
FellippeHeitor 0f82c6320f Detects when the debuggee closes (connection lost). 2021-07-31 17:44:58 -03:00
FellippeHeitor 96c7c08b22 Swaps F7 and F8. 2021-07-31 03:11:45 -03:00