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
Fellippe Heitor
9cd5c17a22
Visual improvements to SUBs dialog.
2021-02-15 03:57:38 -03:00
FellippeHeitor
731e9cd0df
Fixes low ASCII characters showing up in Warnings box.
2021-02-14 00:53:14 -03:00
Fellippe Heitor
0ecdc8fa91
Fixes wiki parsing.
...
Some tags were being left untouched.
2021-02-13 14:45:32 -03:00
Fellippe Heitor
b71655d46c
Fixes idesubs$ crashing when cursor is at symbol.
2021-02-13 06:22:14 -03:00
Fellippe Heitor
0a79540ce5
Fixes getWordAtCursor$ crashing at contiguous spaces.
2021-02-12 23:05:32 -03:00
Fellippe Heitor
968d8ad446
Allows Shift+ENTER to work like regular ENTER...
...
...if no special _RGB32() trick is at play.
2021-02-11 21:53:06 -03:00
Fellippe Heitor
ccb9c2f74f
Fine tunes status bar links.
2021-02-10 20:16:44 -03:00
Fellippe Heitor
a08d90bd65
Fixes CONST names not maintaining case in STRING * const
...
DIM variable AS STRING * const would have CONST always turn capitals or
camel case.
2021-02-10 18:18:41 -03:00
Fellippe Heitor
6f7c97db85
Improves contextual detection of help topic
2021-02-09 23:32:34 -03:00
Fellippe Heitor
7492260746
Fixes warning dialog showing weird characters.
2021-02-09 17:27:40 -03:00
Fellippe Heitor
e5f8aa23ce
Fixes selection of last character onscreen not looking selected.
2021-02-09 16:51:49 -03:00
Fellippe Heitor
35eac42235
Tries harder to find include files for double-clicking
2021-02-09 16:46:34 -03:00
Fellippe Heitor
1c5711f15e
Retreats 'shift+enter to close block'.
...
Until a more efficient approach comes up, at least.
2021-02-08 10:58:02 -03:00
Fellippe Heitor
8c1b05f428
Fixes console colors during compilation (*nix).
...
Turns out the color palette isn't really the same as in Windows.
2021-02-08 07:56:43 -03:00
Fellippe Heitor
346b50d80a
Reduces INI-Manager to the bare minimum.
2021-02-07 23:07:56 -03:00
Fellippe Heitor
bada3e0a99
Rewords some messages.
2021-02-07 22:55:12 -03:00
Fellippe Heitor
eac3074e30
Incorporates INI-Manager to deal with the settings file.
...
Allows for multiple IDE instances using the same config file by default.
2021-02-07 22:01:53 -03:00