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
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
17bb0ffaca
Prevents "Purge C++ libraries" from triggering recompilation.
2021-08-07 19:26:00 -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
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
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
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
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
896ac750fd
Bottom panel is now interactive/adaptive to window Width
2021-07-28 19:39:45 -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
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
5886488b72
Allows F3, Ctrl+F3, Ctrl+F to invoke the search box ($DEBUG).
2021-07-23 13:46:57 -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
33ec83d0fb
Adds Clear All Skips, Set TCP port.
2021-07-22 15:23:37 -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
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
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
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
ba7a0d91d4
Implements contextual menu for $DEBUG mode.
2021-07-20 20:11:29 -03:00
FellippeHeitor
603cc585e8
Prevents issues when deleting lines in normal mode.
2021-07-20 17:11:16 -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
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
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
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
8d35b87fd1
Initial implementation of call stack ($DEBUG).
2021-07-18 22:02:41 -03:00
Fellippe Heitor
ae887507c2
On error, report back to the IDE. ($DEBUG)
2021-07-16 23:18:46 -03:00
Fellippe Heitor
8109b81ef7
Adds Step Out
2021-07-16 01:09:27 -03: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
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
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
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
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
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
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
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
fa7ad406f6
Prevents () in comments after SUBs from being displayed in Subs Dialog.
2021-05-23 12:20:34 -03:00
Fellippe Heitor
7e3de309ce
Fixes one more colorization issue
...
Scientific notation, again.
2021-03-19 11:46:52 -03:00
Fellippe Heitor
692e28b0da
Indicates (options->display) that window pos isn't stored (lnx).
2021-03-07 11:39:05 -03: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
FellippeHeitor
30431161f9
Fixes Out of Memory error in Windows (SUBs dialog)
2021-02-28 15:23:57 -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
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
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
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