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

1349 commits

Author SHA1 Message Date
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
FellippeHeitor f56f85323a Prevents terminal from showing up when launching wiki. 2021-07-31 02:53:01 -03:00
FellippeHeitor a1ca1f4746 Fixes path changing routine in file dialog. 2021-07-31 02:28:56 -03:00
FellippeHeitor adf4d50f6e Fixes issue causing problems with multiple instances of the IDE.
For future generations: STATIC array in a SUB/FUNCTION has something broken. So broken it breaks other stuff with it. Requires investigation.
2021-07-30 19:30:06 -03:00
FellippeHeitor 755bc2f260 Finishes reverting b8e6d29959 2021-07-30 14:37:56 -03:00
Fellippe Heitor c766fbc989 Update qb64.bas
Keeps IDE errors in log.
2021-07-30 12:04:04 -03:00
Fellippe Heitor 3480d74d32 Reduces preventable errors (IDE). 2021-07-30 12:03:49 -03:00
Luke Ceddia b8e6d29959
Use _cv/_mk for passing _offsets 2021-07-31 00:46:10 +10:00
Fellippe Heitor 2afe20c5b7 Fixes call to System breaking $DEBUG mode. 2021-07-29 18:32:04 -03:00
Fellippe Heitor 5fe0902c31 Prevents adding debug code into includes. 2021-07-29 15:08:37 -03:00
Fellippe Heitor cade46d545 Prevents Watch List from showing before compilation ends 2021-07-29 15:08:04 -03:00
Fellippe Heitor 132cae7f72 Requests variable values as soon as they're added to watch list. 2021-07-29 12:24:50 -03:00
Fellippe Heitor f816013e8d Adjusts status message colors. 2021-07-29 12:07:31 -03:00
Fellippe Heitor 9ad93c183f More work on menus.
Debug menu gets a `Purge` option for C++ libraries and the Advanced 
dialog gets moved there too.
2021-07-29 02:34:54 -03:00
Fellippe Heitor f140d3e830 Reworks dialogs to take up less screen space.
Dialogs that present lists were being sized to take up the whole IDE area. This makes them more content-aware.
2021-07-29 01:47:51 -03:00
Fellippe Heitor 9a2922fb67 Reorganizes some Debug-related menu items. 2021-07-29 01:46:34 -03:00
Fellippe Heitor 45a2d443b3 Fixes Recent Files dialog (*nix) 2021-07-29 01:44:00 -03:00
Fellippe Heitor f512ace544 Missing quotes. 2021-07-28 23:44:01 -03:00
Fellippe Heitor 345991a08c Missing quote. 2021-07-28 23:38:51 -03:00
Fellippe Heitor 896ac750fd Bottom panel is now interactive/adaptive to window Width 2021-07-28 19:39:45 -03:00
Fellippe Heitor a2ca498e96 Fixes <nowiki> tags leaking in Help pages. 2021-07-28 18:12:34 -03:00
Fellippe Heitor 5495e4d3ba Resets variable values from previous run. 2021-07-28 18:00:19 -03:00
Fellippe Heitor f086aaec95 Allows inspecting _offset variables (watch list). 2021-07-28 14:36:30 -03:00
Fellippe Heitor 93308fef39 One less error in the IDE (SUB idegotoline) 2021-07-28 14:28:41 -03:00
Fellippe Heitor 7e5710a364 Allows _MK$/_CV to deal with _OFFSET
_UNSIGNED _OFFSET too.
2021-07-28 14:26:32 -03:00
Fellippe Heitor fa96640624 Adjusts " View on Wiki " link.
Fixes launching of urls with some special characters.
2021-07-28 13:47:18 -03:00
Fellippe Heitor 8de0ca17f6 Improves on scroll bar behavior (watch panel) 2021-07-28 12:07:02 -03:00
Fellippe Heitor e2e8ea16ea Adjusts wiki linking feature (help panel). 2021-07-28 02:46:05 -03:00
FellippeHeitor 6773a82924 Adds "View on Wiki" button to help panel. 2021-07-28 02:25:27 -03:00
FellippeHeitor bad61fd840 Adds horizontal scroll bar to Watch List panel. 2021-07-28 01:45:06 -03:00
FellippeHeitor c3c2a7e374 Adds new red "x" button to close the Help Panel. 2021-07-28 01:44:19 -03:00
FellippeHeitor 5829744cc4 Adds vertical scrollbar to Watch List panel. 2021-07-28 00:23:35 -03:00
FellippeHeitor 014add19d7 Adjusts resizing, dragging and scrolling (mousewheel) of var panel. 2021-07-27 19:15:48 -03:00
FellippeHeitor 023518ea21 Adds variable watch panel. 2021-07-27 17:50:23 -03:00
FellippeHeitor 6a04700026 F4 now pauses execution before showing the var watch dialog. 2021-07-27 13:40:20 -03:00
FellippeHeitor 5e2f40c4f1 Ignores local variable requests when out of scope. 2021-07-27 12:18:50 -03:00
FellippeHeitor 96ce163800 Mere code auto-layout. 2021-07-27 08:52:13 -03:00
Luke Ceddia 7e4a5b9799
Add support for inspecting string variables 2021-07-27 17:09:28 +10:00
FellippeHeitor a2a49cef01 Allows local variables to be watched (still a bit broken). 2021-07-27 00:28:03 -03:00
FellippeHeitor 426b26b002 Watches INTEGER, UINTEGER, LONG, ULONG, SINGLE, DOUBLE variables.
Only in the main module for now.
2021-07-26 23:56:48 -03:00
FellippeHeitor 84b5bb3055 Wishful attempt at getting var export to work. Failed. 2021-07-26 17:34:44 -03:00
FellippeHeitor cedff4ef5a Groundwork for variable requesting from the IDE (nonworking state).
The _MEMGET part needs extra work.
m is of type _MEM, but it's never assigned - does that have something to do with it?
Should we have something on the C++ side to access those memory blocks?
2021-07-26 14:52:14 -03:00
Fellippe Heitor 3523208b3c Fixes navigation (file dialog) 2021-07-25 22:20:28 -03:00
FellippeHeitor 62878630b5 Improves on Add Watch dialog prototype.
Can select individual variables (double-click to toggle), add all, remove all.
2021-07-25 00:19:55 -03:00
FellippeHeitor 37d1868630 Initial draft for Add Watch dialog. 2021-07-24 19:32:28 -03:00
FellippeHeitor 0ca12c3503 Fixes FUNCTION id2fulltypename$ to recognize _OFFSET types.
Now displays actual type name in Warnings box, instead of the C++ variable name.
2021-07-24 18:01:50 -03:00
FellippeHeitor 8f2e969711 Stores full type name with variable list. 2021-07-24 16:16:18 -03:00
FellippeHeitor ed59d6411e Handles new variables added to main module using SHARED in a SUB. 2021-07-24 15:19:29 -03:00
FellippeHeitor c621917a69 Prevents adding SHARED variables to SUB vWatch() 2021-07-24 12:00:40 -03:00
FellippeHeitor 6436ee76bf Propagates DIM SHARED variables to all SUBs.
`vwatch_local_vars` will make direct reference to SHARED variables, so they can be watched in whatever scope.
2021-07-24 11:51:01 -03:00
FellippeHeitor 5886488b72 Allows F3, Ctrl+F3, Ctrl+F to invoke the search box ($DEBUG). 2021-07-23 13:46:57 -03:00
FellippeHeitor 53560ec34f Resets internal variable list when compilation starts ($DEBUG). 2021-07-23 12:12:03 -03:00
Fellippe Heitor 8d2d49d7dc Restores Step Out/Step Over functionality. 2021-07-23 00:31:11 -03:00
Fellippe Heitor abfa7cb745 Prevents labels and vWatch calls in $INCLUDEs. 2021-07-23 00:13:11 -03:00
FellippeHeitor d0c156f876 Finishes restructure of support files. 2021-07-22 20:44:36 -03:00
FellippeHeitor 898c0ffedb Begins folder reorganization (internal/support).
For .bas/.bm/.bi files that are required at compilation time, as opposed to `source`, which is not required for normal operation.
2021-07-22 18:39:20 -03:00
FellippeHeitor fd9958f9c7 Resets usedVariableList when compilation starts. 2021-07-22 15:24:24 -03:00
FellippeHeitor 33ec83d0fb Adds Clear All Skips, Set TCP port. 2021-07-22 15:23:37 -03:00
FellippeHeitor d09a7fcb3a Fixes order of elements when dealing with STOP ($DEBUG). 2021-07-22 14:08:26 -03:00
FellippeHeitor 997285994d Replaces "Status" with "$DEBUG MODE" when appropriate. 2021-07-22 13:54:16 -03:00
FellippeHeitor e64984d5fa Properly redraws the interface for help on user keywords (F1) 2021-07-22 11:55:35 -03:00
FellippeHeitor 84fb639626 Visually indicates the line where the search term was found.
In normal operation, the line already gets highlighted. This commit makes the search result more visible/easily spotted when repeating search with F3 or when the search bar has focus.
2021-07-22 11:40:03 -03:00
FellippeHeitor 4efd95201d Fixes improper navigation (open/save dialogs). 2021-07-22 03:07:01 -03:00
FellippeHeitor 2fc0515d2e Adjustments to dialogs.
SUBs, Call Stack, Languages will no longer take up the whole window.
2021-07-22 03:05:54 -03:00
FellippeHeitor d3807589ca Properly clears the mouse queue after dialogs are closed. 2021-07-22 03:05:00 -03:00
FellippeHeitor 231400f309 Properly obeys a click to exit (x button) 2021-07-22 03:04:23 -03:00
FellippeHeitor 231e28c79b Adds method to allow closing the connection with the IDE.
In order to allow $DEBUG to work with programs that call CLEAR, the connection handle used to connect to the IDE is locked by default and cannot be CLOSEd. With this change, the debuggee itself can now unlock the handle and close the link.
2021-07-22 00:18:34 -03:00
FellippeHeitor 30348dd2db Allows a debuggee to call CLEAR while keeping connected to the IDE. 2021-07-21 23:54:30 -03:00
FellippeHeitor 77daecccbc Gets all used variables to be properly stored.
This time it looks like it's been nailed.
2021-07-21 18:07:21 -03:00
FellippeHeitor abe46ca87e There's a blk of code that never runs in FUNCTION isvalidvariable
This is a commit just to show it's known that it's there.
And that I was a coward to remove it.
Maybe n was supposed to be LEN(a$)? Well, it's not. That breaks compilation.
I'll just leave it there.
2021-07-21 15:04:27 -03:00
FellippeHeitor 0724910a2e Improves detection of used variables; Arrays still to be worked on. 2021-07-21 14:25:21 -03:00
FellippeHeitor b1ddfd06c7 typ is undefined in FUNCTION typ2ctyp$; uses t instead.
Could be causing weird issues; might cause weird issues.
2021-07-21 14:24:35 -03:00
FellippeHeitor 46822028f9 Fixes typos in comments (🤦). 2021-07-21 14:23:21 -03:00
FellippeHeitor f286e6b1d9 Removes unused variables in IDE code. 2021-07-21 14:22:37 -03:00
FellippeHeitor e3d65b3559 Centers target line with warning. 2021-07-21 12:41:41 -03:00
FellippeHeitor dd686b4071 Store variable creation data after regid is called. 2021-07-21 09:48:52 -03:00
FellippeHeitor f09bea827b Refines variable collection code ($DEBUG). 2021-07-21 09:30:48 -03:00
FellippeHeitor b9e65ceca5 Center target line when searching (F3, Ctrl+F3, Alt+F3). 2021-07-21 08:55:49 -03:00
FellippeHeitor fc95dd4d9e Prevents endless loop with F8 key (start paused). 2021-07-21 00:13:55 -03:00
FellippeHeitor 1cad7db996 Prevents adding goto re:undefined vWatch labels. 2021-07-21 00:02:15 -03:00
FellippeHeitor fb94a16bfe Adds Ctrl+P to skip line; Ctrl+Shift+G to run to line. 2021-07-20 22:48:14 -03:00
FellippeHeitor 2097f35a8b Implements "Run To This Line". 2021-07-20 22:28:03 -03:00
FellippeHeitor b56ceb924d Fixes vWatch labels not being added. 2021-07-20 20:11:45 -03:00
FellippeHeitor ba7a0d91d4 Implements contextual menu for $DEBUG mode. 2021-07-20 20:11:29 -03:00
FellippeHeitor ec807702ce Fixes Next lines not being "steppable". 2021-07-20 17:28:02 -03:00
FellippeHeitor 2ca6cb7c9a Improves vWatch label injection ($DEBUG). 2021-07-20 17:12:00 -03:00
FellippeHeitor 603cc585e8 Prevents issues when deleting lines in normal mode. 2021-07-20 17:11:16 -03:00
FellippeHeitor dfb33206b4 Fixes duplicate SKIP labels in some scenarios. 2021-07-20 13:16:06 -03:00
FellippeHeitor fe4575a181 Allows empty procedures when $DEBUG is present. 2021-07-20 13:08:09 -03:00
FellippeHeitor 9ade4aea75 Declares *vwatch_local_vars when there are no local vars. 2021-07-20 12:50:17 -03:00
Fellippe Heitor 19d22d4c9f Renames ide to ideHost in vwatch.bm 2021-07-20 11:56:24 -03:00
Fellippe Heitor 5406492be8 Changes the shortcut to skip line to Shift+click.
Minor visual changes to breakpoint/skip line indicators.
2021-07-20 11:55:31 -03:00
FellippeHeitor fcc243f902 Moves breakpoints and line skips when deleting lines. 2021-07-20 03:11:16 -03:00
FellippeHeitor adf963b007 Allows toggling "Skip Line" before starting program.
Ctrl+Line number or
Debug->Toggle Skip Line
2021-07-20 03:02:29 -03:00
FellippeHeitor 5e53786255 Implements "Skip Line"
Ctrl+P to set line to skip.
Ctrl+Line Click to set line to skip with mouse.
2021-07-20 02:50:54 -03:00
FellippeHeitor aefde3eb55 Implements Set Next Line.
Allows arbitrarily changing the execution order from the IDE.
Ctrl+G in $DEBUG mode to launch the Set Next Line dialog.
2021-07-20 01:06:30 -03:00
FellippeHeitor 4d17873952 Allows END IF and END SELECT to be steppable. 2021-07-19 23:13:00 -03:00
FellippeHeitor 10ce193ba9 Prevents showing the call stack dialog when it's empty. 2021-07-19 22:55:03 -03:00
FellippeHeitor 655f1e3b19 Sends call stack to IDE when an error occurs. 2021-07-19 22:25:15 -03:00
FellippeHeitor d1249d25d5 Send the IDE data when the proram is closing via X button. 2021-07-19 18:08:04 -03:00
FellippeHeitor 328c5ec668 Handles the call stack data sent after a program closes. 2021-07-19 17:23:02 -03:00
FellippeHeitor bb032b6b75 Adds View->Call stack. 2021-07-19 17:12:48 -03:00
FellippeHeitor b389cc07e9 Adds "Start Paused" to Debug menu.
Shortcut is F8.
2021-07-19 16:46:42 -03:00
FellippeHeitor c27d20590f Allows navigating the code while in $DEBUG mode. Also:
- An arrow now indicates the line that will be run next when in Pause mode.
- F2 can trigger the SUBs dialog while in $DEBUG mode.
2021-07-19 14:55:27 -03:00
FellippeHeitor 403e45b2c4 Centers current line while debugging.
It now centers the current line when using QuickNav too.
2021-07-19 12:46:37 -03:00
FellippeHeitor 43c2dbc984 Keeps timers disabled when stepping ($DEBUG). 2021-07-19 02:30:40 -03:00
FellippeHeitor bfe081b421 Handles STOP as a regular breakpoint in $DEBUG mode. 2021-07-19 02:30:16 -03:00
FellippeHeitor 05d5086682 Prevents "ghost" variables from being added to watch list. 2021-07-19 02:29:13 -03:00
FellippeHeitor 6a1ec42b4d Keep call history in the debuggee; send per request.
Unless we had two channels, one to send the stack, another for real time commands, execution would be really slowed down.
2021-07-19 01:59:49 -03:00
FellippeHeitor de236d4a5f Uses ENVIRON to set send the port number to the debuggee. Also:
- Limits sending "call" info to the IDE (not to hog the communication channel)
- Add $INCLUDE info to call stack.
2021-07-19 00:59:54 -03:00
FellippeHeitor 2f61b9e541 Tweak to previous commit.
`id` can change from the initial line to the last on in this commit. These changes prevent issues with that.
2021-07-18 22:16:16 -03:00
FellippeHeitor 8d35b87fd1 Initial implementation of call stack ($DEBUG). 2021-07-18 22:02:41 -03:00
FellippeHeitor c59cef04d7 Allows sub/functions to be reported in $INCLUDEs.
Reorganizes source/utilities.
2021-07-17 17:25:48 -03:00
FellippeHeitor df691cc3f2 Adds code to send "end signal" even with $CHECKING:OFF. ($DEBUG) 2021-07-17 17:11:02 -03:00
Fellippe Heitor ee4b611056 Adds _EnvironCount 2021-07-17 12:15:00 -03:00
Fellippe Heitor ae887507c2 On error, report back to the IDE. ($DEBUG) 2021-07-16 23:18:46 -03:00
Fellippe Heitor 78fb2ff1b9 Reduces parameters in SUB_VWATCH()
Since `vwatch_linenumber` is a shared variable, it doesn't need to be 
passed to `SUB_VWATCH()`.
2021-07-16 18:51:35 -03:00
Fellippe Heitor 88e2a1fa83 Nooooow it seems proper. 2021-07-16 12:11:41 -03:00
Fellippe Heitor 8d29964587 Reenables detection of undefined arrays. 2021-07-16 12:06:06 -03:00
Fellippe Heitor 4e5c35bb7f Prevents 'fake' variables from showing up.' 2021-07-16 11:59:17 -03:00
Luke Ceddia 2b86bdcef2
Add local command (broken) 2021-07-16 22:47:52 +10:00
Fellippe Heitor af2de0f24e Merge development 2021-07-16 09:25:13 -03:00
Luke Ceddia 809c1fe016
Fix cast of vwatch_local_vars 2021-07-16 16:29:04 +10:00
Fellippe Heitor df56b030f1 Makes sure only vars and arrays are added 2021-07-16 02:26:14 -03:00
Fellippe Heitor e95e8a4825 Adds undeclared variables too 2021-07-16 01:23:46 -03:00
Fellippe Heitor 8109b81ef7 Adds Step Out 2021-07-16 01:09:27 -03:00
Luke Ceddia 8829518adf
Send var-address init code to maindata.txt instead of global.txt 2021-07-16 14:07:27 +10:00
Fellippe Heitor 74d2e0853a END and SYSTEM send a 'quit' signal to the IDE 2021-07-16 00:52:06 -03:00
Fellippe Heitor 0217fa2a5e Adds F10 to clear all breakpoints
Also, visual tweaks.
2021-07-16 00:34:23 -03:00
Fellippe Heitor b748f7b209 Allows toggling breakpoints while running. 2021-07-16 00:02:56 -03:00
Fellippe Heitor 16b2c82b2f New Debug menu
The IDE now offers to add  when the user attempts to set a breakpoint.
2021-07-15 23:57:54 -03:00
Fellippe Heitor 5f3075ec3e Allows setting breakpoints while running using the mouse 2021-07-15 20:29:33 -03:00
Fellippe Heitor f0751243ef Begins work for variable watching 2021-07-15 17:00:31 -03:00
FellippeHeitor eede761f97 Allows OPTION _EXPLICIT/_EXPLICITARRAY to be anywhere.
They can be duplicate now too. And coexist.
2021-07-15 03:34:08 -03:00
FellippeHeitor ad3ae35810 Allows $NOPREFIX to be placed anywhere.
Also allows it to play nice with $DEBUG.
2021-07-15 03:14:53 -03:00
FellippeHeitor 68eb0b649c Fixes #172. 2021-07-15 02:32:03 -03:00
FellippeHeitor aa3350ff27 Binds F7 to Step Over. 2021-07-15 01:50:48 -03:00
FellippeHeitor c2192f9340 Display breakpoint indicator when line numbers are hidden ($DEBUG). 2021-07-15 01:36:57 -03:00
FellippeHeitor f3cd0b08bb Bypasses $INCLUDE lines ($DEBUG Mode) 2021-07-15 01:14:33 -03:00
FellippeHeitor af454940e4 Adds TIMER ON control over the debuggee. 2021-07-15 01:13:50 -03:00
FellippeHeitor ea7c90c6c0 F8 now runs a full line if there are multiple statements. Also:
Consistent coloring of breakpoints in the side bar.
Breakpoints are hidden if $DEBUG is removed.
F9 only sets breakpoints if $DEBUG is active.
2021-07-15 00:32:35 -03:00
FellippeHeitor 9f8095a212 Allows pausing more statements.
IF, SELECT, END statements were initially excluded from stepping.
2021-07-15 00:08:36 -03:00
FellippeHeitor b54de08aa3 Implements Step Over for $DEBUG mode
Using Shift+F8 when stepping line by line when on a line of code that contains a SUB/FUNCTION call, the sub-procedure lines will be run without entering the block of code, and execution will resume in the next line of code after the SUB/FUNCTION call.
2021-07-14 21:56:17 -03:00
FellippeHeitor b5cdf1590e Allows $DEBUG to be added anywhere in the code. 2021-07-14 20:34:47 -03:00
FellippeHeitor ca11243112 Fixes "double pause" in $DEBUG mode.
When a breakpoint was reached, it'd be necessary to hit F8 twice to step into the next line.
2021-07-14 00:08:20 -03:00
FellippeHeitor 3e90e7ff45 Improves path resolution for $DEBUG mode. 2021-07-13 21:19:53 -03:00
Fellippe Heitor 6fed9ea250 Improves $DEBUG mode connection and operation. 2021-07-13 18:06:32 -03:00
Luke Ceddia d03207e955
Link with data even when using $console:only
Closes #151
2021-07-13 16:58:12 +10:00
Fellippe Heitor 88ab0369c0 Restores cursor position when navigating with QuickNav. 2021-07-13 00:40:11 -03:00
Fellippe Heitor f204d5685b Attempts to become host when $DEBUG is first detected.
Instead of waiting for F5.
2021-07-12 12:54:23 -03:00
Fellippe Heitor 5eb034eeef Tweaks to connection between IDE and program.
Also: makes it compatible with Option _Explicit
2021-07-12 12:45:05 -03:00
Fellippe Heitor a472d1aab9 Fixes not being able to add lines to a program. 2021-07-11 22:03:55 -03:00
Fellippe Heitor 19219dbfe5 $DEBUG mode now in working state.
F9 (or clicking a line number) will toggle a breakpoint; When running a 
program, F8 will pause/step line by line, F9 will still be usable to 
toggle breakpoints and F5 will continue execution. ESC exits $DEBUG 
mode.
2021-07-11 21:05:03 -03:00
Fellippe Heitor 7b853bf9f2 First attempt at implementing Step. 2021-07-11 12:55:49 -03:00
Fellippe Heitor b59aa4d7af Begins prototyping a $DEBUG metacommand. 2021-07-09 08:08:49 -03:00
Zachary Spriggs 272b68ddcf Automatically generate manifest file and link
Automatically generate and link manifest file to EXE if a version info value is set. The XML file will use CompanyName, ProductName, and FileDescription as values. This will allow for use of Common Controls v6.0 without keeping a manifest file in the same directory as the executable.
2021-07-07 23:20:38 -04:00
Fellippe Heitor 29d01706e2 Normalizes help references for internally handled commands. 2021-06-23 16:38:41 -03:00
Fellippe Heitor 89f695ea0b Makes Status bar command reference colorized 2021-06-23 14:03:40 -03:00
Fellippe Heitor 6181fe54e4 Adds "quick reference" look up for the IDE.
Shows a quick syntax reference once it detects what command one is 
trying to use
2021-06-20 00:04:08 -03:00
Luke Ceddia 7cc7618b8c
Revert 21984092 & 3c829db8 due to compiler failures introduced 2021-06-14 17:59:39 +10:00
Fellippe Heitor 219840929e Turns DEPENDENCY_... into variables instead of Consts 2021-06-03 00:04:02 -03:00
Fellippe Heitor 9d08c78dfc Prevent errors with literal string Consts 2021-05-27 20:08:45 -03:00
Fellippe Heitor fa7ad406f6 Prevents () in comments after SUBs from being displayed in Subs Dialog. 2021-05-23 12:20:34 -03:00
Fellippe Heitor 9d20796505 Prevents CONST errors with string functions.
CHR$ et al are not allowed in CONSTS. That's explicit now.
2021-05-21 21:02:20 -03:00
Zachary Spriggs 8484d0fb14 Revert "Fix bug with _BIT variables in functions"
This reverts commit b023f4074b.
2021-04-09 18:07:38 -04:00
Zachary Spriggs b023f4074b Fix bug with _BIT variables in functions
This fix references forum post https://www.qb64.org/forum/index.php?topic=3794.msg131521#msg131521

A C++ error would occur when using a `_BIT` variable as a function argument because our current handling of the translation would reinitialize the variable in the function. This is called shadowing a parameter. I have commented out the line that was causing the error. The code that was provided in the forum post works successfully with this fix.
2021-04-09 12:35:51 -04:00
Fellippe Heitor 7e3de309ce Fixes one more colorization issue
Scientific notation, again.
2021-03-19 11:46:52 -03:00
Zachary Spriggs 3062ca078a
fix indentation 2021-03-19 10:12:29 -04:00
Zachary Spriggs 92865ace3b
Makes $CONSOLE:ONLY set _Source to _Console
With v1.5 release, _Dest _Console would automatically be set but not _Source _Console. This change sets the _Source to _Console.
2021-03-19 10:11:31 -04:00
Doug Kearns f6f7de6d87 Fixes sloppy parsing of array sub arguments
The following now produces a syntax error for the missing closing
parenthesis of the parameter list.

E.g. sub foo(bar(): end sub
2021-03-14 20:30:15 +11:00
Fellippe Heitor bd0457e068 Merge branch 'development' of https://github.com/QB64Team/qb64 into development 2021-03-10 17:22:56 -03:00
Fellippe Heitor 532ade2d8e Makes strings.bas $includable by option _explicit projects 2021-03-10 17:22:37 -03:00
Fellippe Heitor 16109a1d42
Merge pull request #144 from dkearns/fix-missing-source-file-message [ci-skip]
Fixes whitespace of missing source file error message
2021-03-09 08:49:43 -03:00
Doug Kearns b8e43388da Fixes whitespace of missing source file error message 2021-03-09 22:35:11 +11:00
Fellippe Heitor 692e28b0da Indicates (options->display) that window pos isn't stored (lnx). 2021-03-07 11:39:05 -03:00
Luke Ceddia 7ab6b0ffd9
Merge pull request #143 from dkearns/fix-invalid-s-flag-return-code
Fixes the exit status for invalid -s args
2021-03-07 23:37:07 +11:00
Doug Kearns e21a84c170 Fixes the exit status for invalid -s args 2021-03-07 22:54:32 +11:00
Fellippe Heitor 6ada6a475d Fixes error in contextual menu.
Right-clicking a series of high-ascii characters would crash the ide 
when right-clicking to open the contextual menu.
2021-03-05 14:38:46 -03:00
Fellippe Heitor 45997e62e4 Changes version number to carry on with patches. 2021-03-05 11:09:42 -03:00
Doug Kearns 7d19a660dd Updates wiki parser to deal with PageAvailability wiki template 2021-03-06 00:35:19 +11:00
FellippeHeitor 30431161f9 Fixes Out of Memory error in Windows (SUBs dialog) 2021-02-28 15:23:57 -03:00
Fellippe Heitor f77a643042 Updates help files and version info for release. 2021-02-28 11:47:33 -03:00
Fellippe Heitor a7bdcfe053 Prevents CONST from being used between SUBs. 2021-02-26 00:51:07 -03:00
Doug Kearns c506f7f8fe Improves IDE highlighting of trailing $DYNAMIC/$STATIC metacommands
Only one of $DYNAMIC or $STATIC is processed, the last appearing in a
metacommand line, so highlight only that rather than the last appearance
of each.

Improves commmit af2752602f.
2021-02-23 00:15:13 +11:00
Fellippe Heitor af2752602f Indicates visually that only the last metacommand is valid.
Since multiple $INCLUDE, $DYNAMIC and $STATIC are valid in a comment 
line, but only the last occurrence is valid, the syntax highlighter now 
indicates that too.
2021-02-21 12:31:53 -03:00
Fellippe Heitor 716b984e94 Adapts sh to consider the last $include in a line valid. 2021-02-21 11:53:57 -03:00
Doug Kearns 45d1fed31f Changes metacommand parsing to match QuickBasic 4.5
QB45 allows multiple metacommands to appear in a single line and
$INCLUDE is not required to be the last.

Only the last appearance of $INCLUDE, and of $DYNAMIC or $STATIC, is
processed. Earlier appearances of metacommands are ignored.

E.g., the following includes only b.bas and configures static array
allocation
REM $INCLUDE:'a.bas' $DYNAMIC $INCLUDE:'b.bas' $STATIC
2021-02-21 23:45:24 +11:00
Fellippe Heitor 156996b4f9 Warns user that labels are not valid between subs. 2021-02-20 20:37:37 -03:00
Fellippe Heitor 774707c584 Properly colorizes 32BIT and 64BIT in $IF blocks. 2021-02-18 19:39:22 -03:00
Fellippe Heitor 7a26a4a5ba Fixes layout of $IF blocks with operators like >, <, etc. Also:
Colorizes internal special variables/values as part of the $IF 
metacommand. (DEFINED, UNDEFINED, WINDOWS, WIN, LINUX, MAC, MACOSX, 
32BIT, 64BIT, VERSION).
2021-02-18 15:07:07 -03:00
Fellippe Heitor 8ba61a7b57
Aligns template name with existing ones. 2021-02-17 09:40:39 -03:00
Doug Kearns 32b207b812 Updates wiki parser to deal with Parameters wiki template. 2021-02-17 18:13:08 +11:00
Fellippe Heitor 1272892425 Fixes $LET being incorrectly placed in the IDE while editing. 2021-02-15 21:22:57 -03:00
Fellippe Heitor 339b82d1b0 Reduces width of column Line Count (SUBs dialog) 2021-02-15 20:57:37 -03:00
Fellippe Heitor 3d4d5366bd Fixes number color not being reset at ESC (Ide Colors box). 2021-02-15 16:16:29 -03:00
Fellippe Heitor 9c3d8c827c Updates wiki parser to deal with new wiki templates. 2021-02-15 15:54:36 -03:00
Fellippe Heitor 0fa3447003 Hides line numbers BG when editing IDE color scheme. 2021-02-15 14:15:47 -03:00
Fellippe Heitor 6268140512 Improves column flexibility (SUBs dialog) 2021-02-15 13:46:10 -03:00
Fellippe Heitor 5778275cc0 Improves Sub line count (SUBs dialog). 2021-02-15 11:28:32 -03:00
Fellippe Heitor 24aafb4718 Fixes Sub arguments being trimmed prematurely (SUBs box). 2021-02-15 09:40:09 -03:00
Fellippe Heitor 057463104a Merge branch 'development' of https://github.com/QB64Team/qb64 into development 2021-02-15 04:54:23 -03:00