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
Fellippe Heitor
4411386ac6
Replaces some more wiki garbage before rendering help.
2021-02-06 20:16:51 -03:00
Fellippe Heitor
765472a34d
Adds _LIMIT to Update Help dialog. Updates help files.
2021-02-06 18:51:34 -03:00
Fellippe Heitor
249d0549eb
Fixes highlighting of scientific notation numbers. Again.
2021-02-06 18:27:00 -03:00
Fellippe Heitor
796974c04d
Adds commit number, if available, to error reports.
2021-02-06 15:04:07 -03:00
Fellippe Heitor
baf8e70de4
Tweaks File menu to show more recent files.
...
With links (numbers) to open said recent files.
2021-02-06 05:22:53 -03:00
Fellippe Heitor
63b0bd777a
Shows description of menu items in the status bar.
2021-02-06 03:44:31 -03:00
Fellippe Heitor
87053de3dc
Makes the hotkey to Clear Recent (File menu) unique.
2021-02-06 01:16:54 -03:00
Fellippe Heitor
d9467b4930
Removes "yet" from error messages.
2021-02-06 01:02:25 -03:00
Fellippe Heitor
711e6860bc
Adapts isnumber() to recognize number literals with type suffixes.
2021-02-05 17:59:17 -03:00
Fellippe Heitor
8d78700c11
Fixes CONST failing in CamelCase mode with logical operators.
2021-02-05 00:57:05 -03:00
Fellippe Heitor
38ae73e47e
Changes "Disable Syntax Highlighter" to "Syntax Highlighter"
2021-02-05 00:42:28 -03:00
Fellippe Heitor
3395cd2d33
Aligns block closings with their opening lines.
2021-02-05 00:10:04 -03:00
Fellippe Heitor
a6fe260a5e
Adds item in Options menu to disable auto-complete.
...
Fixes IgnoreWarnings not being saved in macOS/Linux.
2021-02-04 23:48:14 -03:00
Fellippe Heitor
70ea149168
Offers to auto-close blocks with Shift+ENTER
2021-02-04 22:21:31 -03:00
Fellippe Heitor
8352a31c72
Fixes Help->Index not showing up the first time.
2021-02-03 20:33:48 -03:00
Fellippe Heitor
ef8de59aee
Prevents deletion of latest.txt. Also:
...
Restores case of keywords in qb64.bas.
2021-02-03 14:26:17 -03:00
Fellippe Heitor
13d35dbe6c
Missing 'Exit Sub' in CamelCase formatter
2021-02-03 14:08:40 -03:00
Fellippe Heitor
352f94a609
Improves on Layout Box items correlation.
2021-01-31 15:45:57 -03:00
Fellippe Heitor
739b9c64ca
Indicates visually which options are correlated (layout box).
2021-01-31 15:40:08 -03:00
Fellippe Heitor
fff40a315e
Extra touches to CamelCase (NOT, AND, etc).
2021-01-31 14:45:58 -03:00
Fellippe Heitor
59155c4481
Adds the ability to have CamelCase for internal keywords.
2021-01-31 03:44:38 -03:00
Fellippe Heitor
7a1ecd78f9
Fixes bug in CONST evaluator.
...
As described in https://www.qb64.org/forum/index.php?topic=1303.0
2021-01-29 02:28:28 -03:00
Fellippe Heitor
e6b74afbba
Replace SUB/FUNCTION accordingly like QB4.5 did
...
In EXIT SUB/FUNCTION and END SUB/FUNCTION statements.
2021-01-28 18:52:50 -03:00
Fellippe Heitor
65beb28033
Fixes RGB mixer not inserting the result properly.
2021-01-27 23:46:57 -03:00
Luke Ceddia
d244d45c92
$ERROR highlight
2021-01-27 22:36:50 +11:00
Luke Ceddia
bf1d6664e9
Add pre-compiler VERSION and $ERROR
2021-01-27 22:23:28 +11:00
Fellippe Heitor
4dce0fa670
Unifies code used to find help topics (IDE).
2021-01-26 23:20:35 -03:00
Fellippe Heitor
e735ae1898
Makes F1 contextual help more flexible.
...
The detection of the keyword at the cursor will consider cases in which
the cursor is just to the right of the last typed word.
2021-01-26 22:53:30 -03:00
Fellippe Heitor
9e92d13f70
Adds more descriptive error message for Duplicate Label
2021-01-26 21:01:23 -03:00
Fellippe Heitor
c0ce8d40b5
Fixes screen resize render after PRINT->_PRINTSTRING update.
2021-01-26 20:14:22 -03:00
Fellippe Heitor
25dbf1ad1f
New AS TYPE element-list syntax for TYPE.
2021-01-26 12:27:18 -03:00
Fellippe Heitor
fd0b44aee4
Extends the new DIM syntax to SHARED (subs)
...
e.g. SHARED AS _BYTE array(), index
2021-01-26 04:01:36 -03:00
Fellippe Heitor
61796209bd
Implements new alternative syntax for DIM/REDIM/STATIC
...
DIM AS data-type variable1, variable2, ...
2021-01-26 02:21:24 -03:00
Fellippe Heitor
0199534a31
Automatically calls _DEST _CONSOLE internally when $CONSOLE:ONLY is used.
...
_DEST can be changed later in the program by the user, as usual.
2021-01-25 22:04:31 -03:00
Fellippe Heitor
492213256a
Adds extra line after tables. Converts < to <
2021-01-24 17:01:50 -03:00
Fellippe Heitor
c83b9cafd5
Adds parser for class="wikitable" (Help)
2021-01-24 15:49:34 -03:00
Fellippe Heitor
f8a75595de
Warns user of possible issues with inserting low ASCII chars.
2021-01-24 02:29:10 -03:00
Fellippe Heitor
d5ac71f8a9
Gives more descriptive message for "Label not defined".
2021-01-22 23:22:19 -03:00
FellippeHeitor
8e927a50c1
Makes TAB (not DEL) shortcut for "next" (help).
2021-01-22 21:20:43 -03:00
FellippeHeitor
904ba7e672
Converts, where feasible, PRINT to _PRINTSTRING.
2021-01-22 20:58:47 -03:00
FellippeHeitor
4ef0efc81d
Reduces code to restore quick nav bg.
2021-01-22 05:06:35 -03:00
FellippeHeitor
cc8d4cd851
Dead code removal. Improved hover behavior.
2021-01-22 04:40:05 -03:00
FellippeHeitor
3cffc82375
Replaces idebackupbox with ideinputbox. Also:
...
Reduces flicker when invoking the contextual menu.
2021-01-21 02:55:37 -03:00
FellippeHeitor
0df00de7f7
One less loop for FUNCTION FindProposedTitle$
2021-01-21 02:13:04 -03:00
FellippeHeitor
f99e12807c
Unifies the code to find the current SUB/FUNCTION name.
2021-01-21 02:00:10 -03:00
FellippeHeitor
a0744ef32c
Unifies code to delete selection and insert text.
2021-01-21 01:18:40 -03:00
FellippeHeitor
ea1b0b1a51
Properly compares before/after of includes edited from within+
...
+another instance of the IDE.
2021-01-21 00:24:17 -03:00
FellippeHeitor
2631640615
Unifies routine to get current selection.
2021-01-20 23:59:29 -03:00
FellippeHeitor
1b3930fb8b
Unifies routines to get word at current cursor position.
2021-01-20 23:24:14 -03:00
FellippeHeitor
933ba12d5b
Dead code removal.
2021-01-20 21:53:46 -03:00
FellippeHeitor
c33a368786
Allows multiple settings files for Linux too.
2021-01-19 16:52:42 -03:00
FellippeHeitor
6c7dda0296
Removes duplicate code to clear status area (IDE).
2021-01-19 01:34:29 -03:00
FellippeHeitor
1115ca269e
Dead code removal.
2021-01-19 00:24:06 -03:00
FellippeHeitor
a23bbb8927
Reduces repeated code in routine to find SUB/FUNCTION names (IDE).
2021-01-19 00:13:17 -03:00
FellippeHeitor
d1acd48e32
Adds version number to status bar. Also:
...
Allows clicking the status bar Version and Line number to open the About and the "Go to line" dialogs.
2021-01-18 18:22:00 -03:00
FellippeHeitor
8fd038be44
Shows search flags when no match is found (F3).
2021-01-18 04:28:38 -03:00
FellippeHeitor
525de822d1
Add percentage bar to "Change All" (Change dialog).
2021-01-18 03:47:25 -03:00
FellippeHeitor
2840adce97
Keeps "Change" dialog open after "Change all".
2021-01-18 02:25:58 -03:00
FellippeHeitor
7916be2e3e
Show eventual substitutions even if Find and Replace is canceled.
2021-01-18 02:25:38 -03:00
FellippeHeitor
f657fb24d9
Resets idefocusline when opening a file.
2021-01-18 00:48:28 -03:00
FellippeHeitor
6a134929a9
Puts _ERRORMESSAGE$ to good use.
2021-01-18 00:19:33 -03:00
FellippeHeitor
46b3e05380
Separates the list of keywords to highlight from ide_globals.
2021-01-17 12:03:31 -03:00
Luke Ceddia
c62568008d
Add _ERRORMESSAGE$
2021-01-17 23:54:15 +11:00
FellippeHeitor
6af5bcaa67
Single space missing... there goes.
2021-01-15 23:28:14 -03:00
FellippeHeitor
a953611c00
Makes sure percentage reaches 100% at the end of Help update.
2021-01-15 23:00:33 -03:00
FellippeHeitor
ddf755e484
Rewords Cancel button (now Close) in ASCII Chart dialog.
2021-01-15 20:59:01 -03:00
FellippeHeitor
45d483a4ab
Unifies compilation progress bar (no console mode) with CHR$(219).
...
We'd have four different progress bar styles,... now we keep having three.
2021-01-15 20:27:51 -03:00
FellippeHeitor
dcd3862c65
Allows inserting multiple ascii chars with a double-click.
2021-01-15 17:56:21 -03:00
FellippeHeitor
2b19000fc8
Adds progress dialog for Update All Help Pages.
2021-01-15 17:25:34 -03:00
FellippeHeitor
1dcfb5c849
Prevents idemessagebox from crashing with long messages.
2021-01-15 14:38:46 -03:00
FellippeHeitor
f7ce06cfc6
Prevents Selected from being = 0 in ASCII Chart
2021-01-15 13:54:41 -03:00
FellippeHeitor
ee18d8ba9d
Improves ASCII Box controls.
2021-01-15 13:38:44 -03:00
FellippeHeitor
ceac95a0d1
Tweaks IDE Colors dialog's custom buttons.
2021-01-15 04:00:58 -03:00
FellippeHeitor
bd82102fcb
Allows using Ctrl to sync sliders in IDE Colors dialog too.
2021-01-15 03:47:03 -03:00
FellippeHeitor
8f053b30ce
Tweaks RGB Mixer.
...
Since it can now be invoked freely from the Tools menu.
2021-01-15 03:37:22 -03:00
FellippeHeitor
581cb1ba80
Adds Tools menu.
...
Adds extra options to Help area contextual menu.
2021-01-15 03:36:35 -03:00
FellippeHeitor
7d5a72e768
Grabs the current text selection as expression for math evaluator.
2021-01-15 02:18:48 -03:00
FellippeHeitor
3fc04f2e3e
Redoes the math evaluator dialog using inputbox and messagebox.
2021-01-15 01:56:51 -03:00
FellippeHeitor
05da830516
Rewords idemathbox title.
2021-01-14 23:57:38 -03:00
FellippeHeitor
74deeed529
Properly inserts MathBox output into edit area.
2021-01-14 23:52:51 -03:00
FellippeHeitor
cd441ff9ce
Adds Home and End key support to ASCII Chart.
2021-01-14 23:45:55 -03:00
FellippeHeitor
e0bfef4d87
Allows desselecting a char by clicking outside the chart (ASCII).
...
- Allows Ctrl+Arrows to move quickly around the chart.
- Makes sure double-click occurs only when both clicks happen on the same glyph.
2021-01-14 23:37:28 -03:00
FellippeHeitor
45d625e973
Revamps the ASCII Chart dialog.
...
- The dialog now follows the rest of the IDE's look and feel.
- Mouse + keyboard operation retained + improved.
- Ability to insert CHR$(code) instead of raw character.
2021-01-14 21:30:40 -03:00
FellippeHeitor
91e1d7d346
Adds missing hotlink to ".BAS Only" option in file dialog.
2021-01-14 16:23:51 -03:00
FellippeHeitor
58033145c7
Tweaks file dialog to only show accessible drive letters (Windows).
2021-01-14 15:36:19 -03:00
FellippeHeitor
abcb77596d
Removes third person singular from help page.
...
Removes unused variable in SUB manageVariableList
2021-01-14 11:25:57 -03:00
Luke Ceddia
f2ce507d4e
Add -w, -m options
2021-01-15 00:09:45 +11:00
Luke Ceddia
7633a64ccb
Show warnings with -v -q
2021-01-14 22:45:27 +11:00
FellippeHeitor
4974dcc590
Final touch to properly display included file names (warnings).
2021-01-14 00:26:41 -03:00
FellippeHeitor
2ce9afe739
Makes colored output default for command line compilation.
2021-01-13 23:54:20 -03:00
FellippeHeitor
ec4b4d436b
Organizes the visualization of warnings in the IDE.
...
- Adds color coding to listbox controls.
- Extends SUBs dialog with color coding for columns.
2021-01-13 23:47:27 -03:00
FellippeHeitor
4dd5d11c8c
Improves console output in verbose mode.
2021-01-13 21:19:21 -03:00
FellippeHeitor
9755992de9
Adds colored output to verbose mode (-vc switch).
2021-01-13 19:01:30 -03:00
FellippeHeitor
c9ac352d87
Improves warning system to add $include info.
2021-01-13 17:51:40 -03:00
FellippeHeitor
28c2bd9b49
Merge branch 'development' into ideimprovements
2021-01-13 11:16:18 -03:00
FellippeHeitor
c0c59706ce
Likely reason for incorrect line number reports for open SUB/FUNCTIONs.
2021-01-13 11:08:32 -03:00
FellippeHeitor
1e11ff17b6
Begins changing warning system to consider includes.
2021-01-13 10:57:58 -03:00
FellippeHeitor
aef35c96e1
Makes idegotobox a SUB.
2021-01-13 02:07:22 -03:00
FellippeHeitor
bae61981f0
One less dialog when trying to load missing "Recent files".
2021-01-13 01:44:30 -03:00
FellippeHeitor
741eefd322
Simplifies and unifies Input Boxes (new FUNCTION ideinputbox$).
2021-01-13 01:17:19 -03:00
FellippeHeitor
2dbe9d104a
Improves behavior of compilation requests.
...
- Adds "Cancel" to the dialog "Your program will be compiled..."
- Shows the location of the generated binary with the "Already created executable" message.
- Allows triggering compilation again without having to edit the source if SaveExeWithSource is toggled.
2021-01-12 21:07:42 -03:00
FellippeHeitor
4de09d6658
Unifies message boxes.
2021-01-12 19:41:11 -03:00
FellippeHeitor
78decc2d24
Adds ability to respond to message box dialogs with a letter.
2021-01-12 18:22:16 -03:00
FellippeHeitor
e268762deb
Makes all OK buttons have a hotkey assigned in dialogs.
2021-01-12 17:41:44 -03:00
FellippeHeitor
ae065d79dc
Displays linefragment, when available, to help users with debugging.
2021-01-12 15:27:25 -03:00
Fellippe Heitor
2bb422ab58
Rewords welcome message
2021-01-09 10:34:00 -03:00
FellippeHeitor
818fc95181
Replaces ideyesnobox$ with call to idemessagebox.
2021-01-09 02:59:03 -03:00
FellippeHeitor
5ac2f6291c
Extends idemessagebox to take any number of buttons. Also:
...
Adds welcome message with instructions to whitelist QB64 in antivirus/antimalware software.
2021-01-09 02:52:08 -03:00
FellippeHeitor
cf7ed33f61
Adds line selection count in the status bar.
2021-01-09 01:22:46 -03:00
FellippeHeitor
6fb030b9ac
Extends contextual menu to work with the Help system.
2021-01-09 00:51:22 -03:00
FellippeHeitor
4ed7a5b233
Makes Edit menu aware of the Help System.
2021-01-08 01:31:45 -03:00
FellippeHeitor
f5074c221d
Save SUBs dialogue settings every time.
2021-01-08 00:36:16 -03:00
FellippeHeitor
a6c0d01933
Counts SUB/FUNCTION lines more accurately.
2021-01-07 23:12:23 -03:00
FellippeHeitor
9950d3c3ef
Makes "Show line count" default (opt-out).
2021-01-07 19:45:46 -03:00
FellippeHeitor
45f48ed72d
Adds total line count to SUB/FUNCTION list.
2021-01-07 19:30:28 -03:00
FellippeHeitor
f22b24c363
Fixes "Restore defaults" in IDE Colors dialog.
2021-01-06 12:07:17 -03:00
FellippeHeitor
e969a7c529
Adds one-time message at 1st compilation (re: 'Save exe to source...')
2021-01-06 11:27:03 -03:00
FellippeHeitor
ac8dae1409
Counts substitutions (Search/Replace). Also:
...
Reduces code to show simple messages.
2021-01-06 02:46:53 -03:00
FellippeHeitor
032dd33b6f
Adds ability to search only in comments and strings.
2021-01-06 02:17:19 -03:00
FellippeHeitor
c88c56330c
Adds "Ignore comments" and "Ignore strings" to search.
2021-01-06 00:09:22 -03:00
FellippeHeitor
728822b8d1
Adds CTRL+F2 as a shortcut for clicking the QuickNav back arrow.
2021-01-05 16:01:15 -03:00
FellippeHeitor
c1b7db777c
Highlights "Find" button when hovered.
2021-01-05 15:48:41 -03:00
FellippeHeitor
4760383e5e
Fixes search box not showing then help page is open.
2021-01-05 15:01:29 -03:00
FellippeHeitor
8b7c0e6c61
Prevents midnight issues with TIMER.
2021-01-04 19:31:17 -03:00
Fellippe Heitor
488c4a13e0
Merge pull request #95 from QB64Team/memsound
...
Adds _MEMSOUND. Closes #29
2021-01-03 22:03:59 -03:00
Fellippe Heitor
21a0279469
Adds missing menu hotkeys (Edit)
2021-01-02 00:44:54 -03:00
FellippeHeitor
c4ba4bb381
Fixes _MEM udt's new element .SOUND
2021-01-01 23:38:04 -03:00
FellippeHeitor
af209632eb
Allows mouse clicks to bypass ctrl+k halt.
2021-01-01 22:26:43 -03:00
FellippeHeitor
eebfa5a4c5
Fixes char insertion for ASCII box too.
2021-01-01 22:18:58 -03:00
FellippeHeitor
aca9ec43b7
Considers selected text when inserting keycode (ctrlk).
2021-01-01 21:52:43 -03:00
FellippeHeitor
a9d7daef23
Extra visual clue to when ctrlk mode is engaged (using DarkenFGBG).
2021-01-01 21:39:50 -03:00
FellippeHeitor
11293bb324
Properly shows the status message after the menu item is chosen (ctrlk)
2021-01-01 21:32:56 -03:00
FellippeHeitor
92247e796e
Properly clears the status area before showing the ctrl+k message.
2021-01-01 21:27:07 -03:00
FellippeHeitor
4b7a81ac60
Adds hotkey marker for new menu item in Help
2021-01-01 21:12:11 -03:00
SteveMcNeill
5acd16612c
Added proper formatting for spaces in CTRL-K inserts.
2020-12-31 09:12:53 -05:00
SteveMcNeill
a65e7fb910
Reset KCTRL and KCONTROL values after quick key
2020-12-31 08:24:50 -05:00
SteveMcNeill
879e4cbd33
Better Shift key support for quick key codes
...
Now you can CTRL-K, hit SHIFT, then another key, and get the modified key code. (Such as SHIFT-A would give 97 instead of 65, depending on CAPSLOCK state.) A SHIFT down, then SHIFT up (without hitting another key), returns the value for that SHIFT key. (100303 or 100304, depending on which shift key was hit and released.)
2020-12-31 07:56:19 -05:00
SteveMcNeill
2f133204a2
Simpler quick key visual cue, using the status area
2020-12-31 00:39:21 -05:00
SteveMcNeill
9b72e1f1c2
Fix to flicker in CTRL-K screen
2020-12-30 23:46:48 -05:00
FellippeHeitor
bd54eb0f39
Attempts at implementing _MEMSOUND
2020-12-31 01:40:54 -03:00
SteveMcNeill
74bca2b730
Ctrl-K Quick Keycode Insert
...
A quick mod to allow an user to hit CTRL-K and then press a key to quickly insert a _KEYHIT or _KEYDOWN code into their program.
2020-12-30 23:18:05 -05:00
FellippeHeitor
d9f148b12c
New default theme "Super dark blue".
2020-12-29 00:18:33 -03:00
FellippeHeitor
ce1d6008c2
Reenable highlighter if IDE Colors are changed.
2020-12-28 23:43:15 -03:00
FellippeHeitor
529a162816
Allows disabling the Syntax Highlighter entirely (Options menu). Also:
...
- Disables Syntax Highlighter automatically if rendering takes longer than a second.
2020-12-28 23:35:00 -03:00
FellippeHeitor
e10f565b28
Adds a New Folder button to open/save dialog.
2020-12-26 22:02:21 -03:00
FellippeHeitor
fab894ae72
Adds warning when empty SELECT CASE block is found.
2020-12-18 02:17:57 -03:00
FellippeHeitor
7db658b781
Prevents code before 'CASE condition' in a SELECT CASE block
2020-12-18 01:30:42 -03:00
Luke Ceddia
272f877725
Add -q for quiet mode
2020-11-04 23:03:47 +11:00
FellippeHeitor
bcd0340498
Adds Alt+F3 as a shortcut to Search->Change...
2020-10-21 18:00:14 -03:00
FellippeHeitor
f3b92c353a
Implements EXIT SELECT/CASE.
...
Allows breaking out of a SELECT CASE block or skip to the next evaluation CASE (for SELECT EVERYCASE) blocks.
In SELECT CASE blocks, EXIT CASE is the same as EXIT SELECT.
2020-09-07 14:40:04 -03:00
FellippeHeitor
07ca4e9dab
Improves binary QuickBASIC 4.5 converter.
...
- Instead of aborting upon finding a bad token, proceed with processing;
- Adds space after line numbers.
2020-07-30 20:56:08 -03:00
Luke Ceddia
860e6cad57
$CONSOLE:ONLY on Linux no longer pulls in GL/X11 libs
2020-07-15 22:25:57 +10:00
Luke Ceddia
3ac1244df5
Add OPTION _EXPLICITARRAY
2020-07-15 21:31:11 +10:00
Luke Ceddia
c165592d41
Add extra casts in UDT string access for clang
2020-07-12 16:11:56 +10:00
FellippeHeitor
2a4716ceb2
Updates RGB mixer to deal with new _RGB32 syntax.
2020-06-21 17:43:32 -03:00
Luke Ceddia
b5e896d07b
Tentative fix for custom array lbounds with $checking:off
2020-06-21 00:45:55 +10:00
FellippeHeitor
9ff0945a6e
Reenables colorization of &B, &O and &H literals.
2020-06-14 01:00:25 -03:00
FellippeHeitor
8f19321c06
Fixes syntax highlighter for corner case non-numbers being colorized.
2020-06-14 00:33:05 -03:00
FellippeHeitor
7a1c238ae9
Fixes RGB mixer's ability to insert color values into code ($noprefix).
2020-03-08 13:47:09 -03:00
Fellippe Heitor
b0c4d52e45
Fixes QuickNav bug creating ghost lines
...
Using QuickNav when the last position used to be in an area off limits (after user deletes lines, for example) would create a bunch of empty lines at the end of a loaded program.
2020-03-05 12:18:53 -03:00
Fellippe Heitor
272336f764
Fixes incorrect behavior of file dialog's path list
...
Hitting ENTER when no item was selected would pretend to enter inexistent folders.
2020-02-28 00:52:16 -03:00
Fellippe Heitor
dcaadfba21
Fixes IDE not keeping last session window size
...
Issue usually shows up on macOS, but fix is global, as it's not likely to cause issues in other OSes.
2020-02-27 22:53:01 -03:00
Fellippe Heitor
8e3512d5f0
Merge pull request #45 from johnkharvey/development
...
Fixes QB4.5 converter omitting spaces in some syntax blocks.
2020-02-24 22:33:13 -03:00
John K. Harvey
d031d090b8
Possible fix for qb45 converter
2020-02-24 19:28:18 -05:00
FellippeHeitor
ddb3004425
Prints QB64 version when compiling with -c and adjusting -s settings.
2020-02-24 20:59:18 -03:00