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

383 commits

Author SHA1 Message Date
FellippeHeitor 3dc90b71f1 Fixes blank help screen issue. 2020-02-10 00:26:10 -03:00
FellippeHeitor 8b17ad9b9d Fixes screen not updating when opening/drag-dropping files. 2020-02-09 21:30:37 -03:00
FellippeHeitor 498d2cee54 Fixes a bug that would duplicate an $INCLUDEd line in some scenarios. +
+ Fixes ASCII box glitches.
2020-02-03 21:26:28 -03:00
FellippeHeitor 1544216488 Keeps focus if ENTER is pressed in DIR list. 2020-01-22 09:19:47 -03:00
Fellippe Heitor 4adf513f74 Restores INPUT method for help files.
macOS didn't like them; Linux likely won't have liked either.
2020-01-19 19:17:26 -03:00
Fellippe Heitor da9169706c Merge remote-tracking branch 'origin/invalidlines-usebyte' into development 2020-01-19 11:24:54 -03:00
FellippeHeitor 74467c274b Replaces inefficient _BIT with _BYTE for InValidLine() array. 2020-01-18 03:49:23 -03:00
FellippeHeitor a114182f8a Allows using _FONT 8 for the IDE 2020-01-18 03:27:51 -03:00
FellippeHeitor 891ed7f639 Removes empty line in About box. 2020-01-18 02:36:14 -03:00
FellippeHeitor 7870e38fd7 Fixes IDE not restoring last session's window size.
How? I don't know. The bug shows when the code is replaced with a mere _CWD$ but disappears when the cd > or pwd > approach is restored.

Go figure.
2020-01-16 11:26:17 -03:00
FellippeHeitor 53a6acca28 Merge branch 'keyword-prefix' into development
Adds $NOPREFIX metacommand. Removes $COLOR metacommand.

# Conflicts:
#	source/qb64.bas
2020-01-15 00:40:52 -03:00
Fellippe Heitor af5da42d61
Merge pull request #19 from QB64Team/ide-patches
IDE and compiler patches
2020-01-15 00:09:03 -03:00
Fellippe Heitor 9c86afd4c7
Merge pull request #1 from QB64Team/linux-windowfocus
Ignores _WINDOWHASFOCUS for the IDE in Linux
2020-01-15 00:08:09 -03:00
Fellippe Heitor 66522536dd Fixes file list loading on *nix systems 2020-01-12 19:04:44 -03:00
FellippeHeitor bdde70957a Merges Open and Save As dialogs. Also:
- Allows filtering current file list using wild cards (* and ?).
- Allows entering a relative path in the text field and going there (previously only ".." was accepted as relative path).
- "File already exists" dialog now shows the file name.
- Simplifies FUNCTIONs idezgetroot$, ideztakepath$ and idezgetfilepath$.
2020-01-12 18:55:10 -03:00
FellippeHeitor 5e7f77d23a Ctrl+left/right arrows now properly stops cursor at the end of lines. 2020-01-10 03:07:36 -03:00
FellippeHeitor 1f3a106230 Sets ActiveINCLUDELink only if the $included file is found. 2020-01-10 02:28:24 -03:00
FellippeHeitor 09f51fbc1b Restores IDE title with x32 or x64 when a new file is opened/created. 2020-01-10 02:03:46 -03:00
FellippeHeitor 0701364fb2 Skip syntax highlighter if current line is an InValidLine() 2020-01-10 01:58:38 -03:00
FellippeHeitor 8ac94a3142 Reduces memory usage for $NOPREFIX keyword list + simplifies highlighting. 2020-01-07 07:53:12 -03:00
FellippeHeitor 95098621a6 Adjusts help system to find non-prefixed keywords. 2020-01-06 22:32:02 -03:00
FellippeHeitor 884944ea18 Ignores _WINDOWHASFOCUS for the IDE in Linux 2020-01-03 02:43:10 -03:00
FellippeHeitor 7bf3eb09d7 Eliminates warnings when compiling qb64.bas 2020-01-02 23:16:02 -03:00
FellippeHeitor 4397429ed1 Properly highlights $ASSERTS:CONSOLE without adding "console" to list. 2020-01-01 19:21:53 -03:00
FellippeHeitor 0dd718e1f5 Tweaks highlighter to avoid var().element to be incorrectly colorized. 2020-01-01 11:57:33 -03:00
FellippeHeitor aca0c4ebf8 Fixes syntax highlighter for numbers. Closes #113 2019-12-31 02:49:00 -03:00
FellippeHeitor ee41a659f5 Shows binary name alongside output path in the status area. 2019-12-29 23:46:19 -03:00
FellippeHeitor acb6209206 Fixes incorrect linking functionality of Status Area. 2019-12-29 23:22:22 -03:00
FellippeHeitor 8cc5a15742 Fixes menu glith reported in #107 2019-12-08 11:53:19 -03:00
FellippeHeitor e74c1fb9e3 Adjusts "Ignore #Warnings" menu item according to +
+ the rest of the menu implementation.
2019-12-07 19:36:43 -03:00
SteveMcNeill 58b82dff13 Minor change to bit routines, added ability to ignore warnings in IDE 2019-12-04 12:30:02 -05:00
FellippeHeitor 31a855d642 Removes dead Android references. 2019-04-14 15:33:19 -03:00
FellippeHeitor 4d47f73230 Prevents showing warnings in status area after F11 is used (IDE). 2019-04-01 01:08:22 -03:00
FellippeHeitor 018e711820 Fixes warnings showing when IDEShowErrorsImmediately is set to false. 2019-01-14 18:42:51 -02:00
FellippeHeitor 3902a36056 New "Compilation status" dialog, for when there are warnings to show. +
- Rewording of menu items;
- New menu item in the View menu to show "Compilation status" dialog;
2019-01-13 03:26:48 -02:00
FellippeHeitor 738c8d9bb5 Removes unused variables declared across qb64.bas and includes. 2019-01-12 21:09:31 -02:00
FellippeHeitor da24fde08d Properly add/remove variables from usedVariableList$ 2019-01-12 15:28:58 -02:00
FellippeHeitor 738fe6924d Improved detection of unused variables. 2018-12-31 21:00:16 -02:00
FellippeHeitor 47685d82b0 Implements unused variables indicator
An arrow to the left of the line where a variable was defined will be shown after compilation to indicate that variable hasn't been used throughout the program.
2018-11-21 00:47:46 -02:00
Luke Ceddia bc0a405de0 Move commid id outside qb64 source 2018-11-02 20:17:33 +11:00
FellippeHeitor 3575e98f61 Fixes F1 key bug when cursor is on some symbols. 2018-11-01 17:07:33 -03:00
FellippeHeitor 92c4a15735 Prevents ENTER from selecting a disabled menu item. 2018-10-30 01:01:54 -03:00
FellippeHeitor e311b9f6ae Fixes bug that would crash the IDE when selecting a disabled menu item.
As discussed in https://www.qb64.org/forum/index.php?topic=738.0
2018-10-30 00:34:23 -03:00
FellippeHeitor bed68767e6 Detects if the last generated binary still exists at F5 or F11.
Closes #63
2018-09-30 19:27:05 -03:00
FellippeHeitor 2d261c8eb1 Removes deprecated Android references from settings. 2018-09-20 12:11:26 -03:00
FellippeHeitor 7068ce029e Adds Ctrl+T (toggle comment); Rewords Edit menu options. 2018-09-17 23:46:13 -03:00
FellippeHeitor d710b9acce Adds "Enable quick navigation" option in the Search menu. +
Allows disabling the Back arrow when navigating a program.
2018-09-17 22:19:10 -03:00
FellippeHeitor a4a2b4f6db Fixes $INCLUDE duplication bug when resizing the IDE while compiling. 2018-09-17 21:13:58 -03:00
FellippeHeitor 09085b614b New attempt at adding drag/drop to the IDE. 2018-08-01 02:02:07 -03:00
FellippeHeitor 2b0dfb7381 Reverts last broken commit.
Compilation worked fine locally; another attempt will be done later.
2018-08-01 01:52:09 -03:00
FellippeHeitor ce2d3d4a2f Improves dragging a file onto the IDE when the Open dialog is showing. 2018-07-31 22:08:17 -03:00
FellippeHeitor 9a1b8450aa Enables the IDE to accept files via drag/drop (Windows-only). 2018-07-31 21:59:31 -03:00
FellippeHeitor 024f27a5b5 Indentation work (.bas files). No actual code changes. 2018-07-17 00:01:23 -03:00
FellippeHeitor 83bea5ad25 Makes F5 run detached as default.
Running a compiled program in standard "attached" mode had no real use as it had been planned (as once stated by Galleon) to allow future integration of a debug mode that never came to be. It is not practical as is. This change makes F5 (and consequently the Start option in the Run menu) start the program automatically in "detached" mode (equivalent to Ctrl+F5 in previous versions), which means that the resulting binary will be run with SHELL _DONTWAIT instead of simply SHELL, allowing the newly launched process to be independent from the IDE.
2018-06-19 22:00:18 -03:00
FellippeHeitor 3d0e216d88 Color orphan brackets with red background. 2018-04-20 02:25:34 -03:00
FellippeHeitor 77cfd7ea9d Adds Ctrl+Shift+G shortcut to jump to line with error. 2018-04-12 11:30:05 -03:00
FellippeHeitor cd8318c6dc Add new preset color scheme "CF Dark". 2018-03-11 18:00:12 -03:00
FellippeHeitor d10f01819f Restore ideroot$ retrieval and set idepath$ to _STARTDIR$. 2018-03-11 17:21:46 -03:00
FellippeHeitor 8ba19d11fb Enhancement: IDE starts looking in _STARTDIR$ for File->Open dialog. 2018-03-10 16:30:50 -03:00
FellippeHeitor 887c0039a1 Properly highlight sub/func with "." in their names. Addresses issue #28. 2018-03-04 17:41:08 -03:00
FellippeHeitor 363509210c Sort file list in Open dialog (Linux). Addresses issue #31 2018-02-28 10:23:02 -03:00
FellippeHeitor fc607aa613 Add Line Number options to submenu in View menu. Also:
- Adds submenus.
- Renamed "Save EXE in the source folder" to "Output EXE to source folder" in Run menu.
- Changed behavior of disabled menu items; instead of closing the menu, do nothing.
2018-01-02 03:11:08 -02:00
FellippeHeitor 99352ea125 Merge remote-tracking branch 'remotes/origin/idetweaks'
# Fixed Conflicts:
#	source/ide/ide_global.bas
2018-01-01 18:24:31 -02:00
Luke Ceddia 82be9a35d7 Remove Android menu items 2017-12-30 01:09:43 +11:00
FellippeHeitor 00c80f91ca Fixes alt+gr not working in dialogs. 2017-11-10 12:17:50 -02:00
FellippeHeitor 9481dbcd16 $INCLUDE linking now points to the line number that caused the last error. 2017-11-05 17:03:26 -02:00
Luke Ceddia 9b720f3aef Fix AltGr 2017-11-05 02:26:15 +11:00
FellippeHeitor 2a51fa6c0e Allows Shift+Click to select area from cursor. 2017-10-31 19:43:22 -02:00
FellippeHeitor 40da21aacd Add tweaks to Line Numbers in config.txt.
- ShowLineNumbersSeparator will separate the line numbers panel from the main text are with CHR$(179);
- ShowLineNumbersUseBG will use the same color assigned to current line highlight in the line numbers panel.
2017-10-31 04:35:20 -02:00
FellippeHeitor fb9a54a210 Mouse input adapted to work when line numbers are visible. Also:
Line numbers use the same color assigned to "line highlight".
2017-10-31 03:51:19 -02:00
FellippeHeitor 867f62bcc7 Makes possible to edit/navigate with line numbers turned on (keyboard). 2017-10-31 01:00:15 -02:00
FellippeHeitor e5b7327533 Double-clicking an include file name opens the IDE at the error line.
When an error in an include file is reported, the IDE also shows what line inside the external file caused the error. Double-clicking the include line will open the file in a second instance of the IDE and position the cursor in the line that caused the last error.
2017-10-30 11:23:37 -02:00
FellippeHeitor c096896105 Adds -l:line# command line switch to start the ide at a certain line. 2017-10-30 11:23:15 -02:00
FellippeHeitor 88d6911ec9 Add option to toggle Line Numbers from View menu. Also:
- Align line numbers to right;
- Highlight line number of current line;
2017-10-30 11:22:33 -02:00
FellippeHeitor ce9a0c07c6 First attempt at line numbers.
So far:
- Line numbers show (they still get stuck if you create a new empty file).
- Text is shifted right accordingly.
2017-10-26 10:20:19 -02:00
FellippeHeitor 5fb0bc3050 "Double-click to launch $INCLUDE file" now waits for new window to close.
- The IDE will wait until the second instance is closed, check if the file was changed and recompile accordingly.
- Interface lights dim while the second instance is being used.
2017-10-23 10:19:08 -02:00
Luke Ceddia 8956a1ee4f Merge branch 'errorlogging' 2017-10-23 08:19:26 +11:00
FellippeHeitor 0761c1f20f Minor IDE nuisances fixed (i).
- Fixes CTRL+letter being inserted in the text area even after combos were processed.
- Fixes CTRL+letter activating menu items.
- Fixes a menu being preselected when activated with ALT if the mouse was hovering it (hovering still works *after* the menu is launched)
2017-10-17 02:07:47 -02:00
FellippeHeitor 23406bc4d4 Reset compfailed to 0 when the source is edited again. 2017-10-15 20:00:12 -03:00
FellippeHeitor 677f5cd2ea Adds link to compilelog.txt in the Status area when compfailed = 1. 2017-10-15 19:46:16 -03:00
FellippeHeitor fc02c623c8 Write new window position as soon as it's detected. 2017-10-14 20:07:35 -03:00
FellippeHeitor cff8ae7561 Make AutoPosition setting default to true. 2017-10-14 17:34:33 -03:00
FellippeHeitor c8a219bb70 Restore "OK" in the status bar after translation to C++ is done. 2017-10-14 14:33:38 -03:00
FellippeHeitor f971af8328 Resizing the IDE while a menu is open now works as expected. 2017-10-14 04:21:50 -03:00
FellippeHeitor 292dbbf49d Add "Show compilation errors immediately" to Options menu.
By unchecking the new switch in the Options menu, the IDE won't warn and "red-light" every single mistake until you tell it to start compilation with F5.

Signed-off-by: FellippeHeitor <fellippeheitor@gmail.com>
2017-10-14 04:09:54 -03:00
FellippeHeitor 9ab94215db Custom keywords highlighting (SUB/FUNCTION/custom dictionary).
- SUBs and FUNCTIONs names will be highlighted throughout the code.
- The same color assigned to metacommands is used for custom keywords.
- A custom dictionary can also be added to internal/config.txt.
- SUBs and FUNCTIONs in $INCLUDEd files also get highlighted, as long as there aren't any errors preventing compilation.

Signed-off-by: FellippeHeitor <fellippeheitor@gmail.com>
2017-10-14 01:15:09 -03:00
FellippeHeitor 5ba4cde9ac Tweak to previous commit "close menus when IDE loses focus". 2017-10-10 00:19:50 -03:00
FellippeHeitor 749ec5222f Improved copy/paste; Improved "cursor after pasted content" behavior.
Empty lines now get properly copied/pasted.
2017-10-08 22:48:34 -03:00
FellippeHeitor 18a43777e7 Improved focus detection behavior (Windows-only).
Menus are closed when the IDE loses focus.
2017-10-08 22:47:42 -03:00
FellippeHeitor 83c1afdb52 Add IDE cursor start and end values to config.txt.
Default cursor height for non-insert mode is LOCATE , , , 8, 8. Start and End values can now be customized in the config.txt settings file (values range from 0 to 31).
2017-10-08 22:46:35 -03:00
FellippeHeitor a16c9a4093 Makes bracket highlight/multi-selection highlight color customizable. Also:
- Minor improvements to syntax highlighter;
- Hides cursor and line highlight when window loses focus (Windows-only);
2017-10-08 22:44:40 -03:00
FellippeHeitor 7d842c9927 Allow ? to be highlighted even if immediately followed by another "word".
Cases like ?myVar% get properly highlighted.
2017-10-07 03:35:51 -03:00
FellippeHeitor 70fd9d872e Allow multihighlight for var.element items. Also:
- Improved number detection (negatives, decimals, trailing type suffixes);
- Properly clear the status area before showing "converting..." message for QB45BIN.
2017-10-07 03:16:46 -03:00
FellippeHeitor 65c87a0da8 Prevent "Erase" confirmation from closing "IDE Colors" dialog. 2017-10-06 03:42:06 -03:00
FellippeHeitor d54a5cc2e3 Allows non-destructive retrieval of version 1.1 color schemes.
Version 1.1 color schemes contained only 6 colors. This patch allows users to maintain their existing schemes while adding keyword and number highlight colors to them. Also:

- Invalid schemes are now just skipped, instead of destroyed.
- Scheme selection arrows and "Save"/"Erase" buttons are more visible/distinguishable between active/hovered/inactive states.
- Confirmation dialog before erasing user schemes.
2017-10-06 03:15:49 -03:00
FellippeHeitor a1f22afa22 Prevent IDE colors from reverting back to default when resizing. 2017-10-05 22:57:25 -03:00
FellippeHeitor d8ea561736 Fix color of inactive menu items. 2017-10-04 23:08:51 -03:00
FellippeHeitor 35105dc9c1 New preset theme: 'Dark side'.
'Classic QB4.5' theme fixed.
2017-10-04 04:06:27 -03:00
FellippeHeitor 1f6b88e7f5 Numbers highlight. 2017-10-04 03:42:39 -03:00
FellippeHeitor 6caa67261c Tweak to bracket highlight and multi-highlight selection. 2017-10-04 01:36:59 -03:00
FellippeHeitor 7c383a05a7 Add SMOOTH and STRETCH to keywords list. Fixes $IF block highlighting. 2017-10-04 00:50:49 -03:00
FellippeHeitor 8e68dd06d4 Cleaned up list of keywords. Minor tweak to $END IF colorization. 2017-10-03 23:43:47 -03:00
FellippeHeitor 68a2ec44f9 Fixes sticky ALT key in Windows.
Minor tweak to Dark blue preset theme.
2017-10-03 23:13:08 -03:00
FellippeHeitor 997d2bb734 Improved highlighting of metacommands in comments. 2017-10-03 21:12:22 -03:00
FellippeHeitor b60fdb780a Fine adjustments to syntax highlighting. 2017-10-03 11:52:03 -03:00
FellippeHeitor 739aaef7ac Improves syntax highlighter with Keyword Highlight. 2017-10-02 01:16:35 -03:00
FellippeHeitor e6a265f0e4 Integrates qarnos's QB45BIN.
Upon attempting to load a binary file, the IDE will detect that the file type is a QuickBASIC 4.5 binary file and offer to convert it to plain text using qarnos's QB45BIN utility.
2017-10-01 17:51:28 -03:00
FellippeHeitor 204ad079c9 Tweak to multihighlight.
Highlights only full matches.
2017-09-27 11:53:05 -03:00
FellippeHeitor 0e7b1c41af Window resizing improved (changes apply in real time). Also:
- Disable resizing when the help system is open and when dialogs are displayed.
- Minor fix to multi-highlighting to also allow it to hightlight instances of the same text seleted in the current line.
2017-09-27 10:10:04 -03:00
FellippeHeitor 1330f8fa14 Make the "Change" dialog stay out of the way when "Find and verify"ing. 2017-09-25 03:11:38 -03:00
FellippeHeitor 37ab5feb0e Minor adjustments to menu shortcuts; Also:
- Fix to ALT+Key entering text in textboxes (dialogs).
2017-09-25 02:50:13 -03:00
FellippeHeitor 5f822f21ce Adds multi-highlight.
When a a single-line selection is made, every instance of the same "word" on the current screen gets highlighted. Can be disabled in Options->IDE colors.
2017-09-25 02:30:40 -03:00
FellippeHeitor f0692d55b2 New IDE shortcuts.
- Ctrl+N = New file
- Ctrl+O = Open file
- Ctrl+R = Comment selection (add ')
- Ctrl+Shift+R = Uncomment selection (remove ')
2017-09-25 02:28:41 -03:00
FellippeHeitor b3afefe0dc Adds the ability to show contextual help (syntax) for SUB/FUNCTIONs. 2017-08-04 10:59:11 -03:00
FellippeHeitor 60e4054aa5 Double-clicking on an $INCLUDE statement opens the file in a new window. 2017-05-14 23:10:47 -03:00
Luke Ceddia 380c7bc15e Restore SUB/FUNCTION sorting 2017-02-14 09:27:49 +11:00
FellippeHeitor 665dd67641 Remove SUB sorting in the SUBs dialog. 2017-01-20 22:56:50 -02:00
Luke Ceddia 2d065c3681 Add files for building via Travis 2016-11-09 15:23:02 +11:00
FellippeHeitor 1146ca18bd Minor tweak to F1 key behavior.
F1 for contextual help previously required the cursor to be inside the keyword. Now it can be to the right of the word, just like in QB4.5.
2016-08-20 00:17:07 -03:00
FellippeHeitor 51b6fda556 Improved Backspace behavior (deletes a whole word at a time with CTRL)
Windows and Mac only.

Also: Improved behavior of Delete key when joining lines.
2016-08-18 23:45:43 -03:00
FellippeHeitor 127c4acd88 Add $EXEICON, which allows to embed an icon in the exe (Windows only).
Also:
- Revamp _ICON so it'll use the embed icon if it's called without parameters. The default QB64 icon is still used otherwise.
- Fix "Creating .EXE..." being printed in the wrong coordinates (IDE)
- Fix the new error message (when Debug is <> 0) so it'll show properly when compiling with -x.
2016-08-18 01:12:08 -03:00
Luke Ceddia 3f3016da6d Make DarkenFGBG a function so it gets treated as an array when IDE support is not compiled in. 2016-08-15 20:58:11 +10:00
Luke Ceddia 3a0c8ea521 Stop ide() throwing a silent IFC on startup 2016-08-11 21:41:40 +10:00
FellippeHeitor 2576cbc7f4 Fix incorrect colorization of lines ending with '_
An underscore in the end of a line was being considered as a multiline indicator even if it was in a comment. That's fixed now.
2016-08-11 01:15:15 -03:00
FellippeHeitor 3045f6d7f5 Add preset color schemes and ability to create user defined schemes. 2016-08-02 03:17:15 -03:00
FellippeHeitor 073ab7e790 Fix stubborn textfield not letting you edit font size (Display dialog). 2016-07-31 20:36:34 -03:00
FellippeHeitor 58199f7c22 Implements Bracket Highlighting
When the cursor is on a an open "(" or closing ")" bracket, the matching pair, to the left or right, will be highlighted (as seen in modern IDEs, like https://blogs.msdn.microsoft.com/zainnab/2010/09/07/automatic-delimiter-highlighting/)

Also:
- Overall visual adjustments.
- Improved IDE Colors dialog (Options menu), which includes an option to disable bracket highlighting.
- Adds Ctrl+S as a shortcut for File->Save.
- Displays an * on the filename in the title bar below the menu bar when the source has been edited.
- Fixes an old bug that would color strings incorrectly when the source view was scrolled to the right.
- Enables block indent functionality in the Edit menu even when autoindent is on.
- Allows the View SUBs dialog (F2) to be invoked while focus is on the quick search bar.
2016-07-31 17:36:14 -03:00
FellippeHeitor df50672e21 Mere indent/auto-format. No actual code change. 2016-07-23 21:26:06 -03:00
FellippeHeitor a8d200164e Prevent whole-word selection to be triggered when selecting multilines. 2016-07-20 01:08:25 -03:00
FellippeHeitor b29c90f293 Minor fix to whole word selection (double-click).
Variable wholeword.select failed to be reset properly before.
2016-07-20 00:25:42 -03:00
FellippeHeitor 01d3e06d73 Additional tweaks to whole-word selections (double-click + drag). 2016-07-20 00:07:47 -03:00
FellippeHeitor 1806d2ccbc Cancel selection after window is resized. 2016-07-19 19:45:54 -03:00
FellippeHeitor 637e524be8 Expand double-click whole word selection.
Double-click a word then drag left or right to keep selecting word for word.
2016-07-19 19:34:55 -03:00
FellippeHeitor a7a13b52ee Fix for double-click whole word selection while compiling. 2016-07-19 18:10:58 -03:00
FellippeHeitor a409f40826 Cosmetic: indicate subwindow focus (main, find or help). 2016-07-19 03:04:08 -03:00
FellippeHeitor a65a0f42f8 Double-click on code to select a whole word at once. 2016-07-19 02:03:33 -03:00
FellippeHeitor c3cb1acae9 Darken all IDE colors while compiling or running attached. 2016-07-17 20:12:59 -03:00
FellippeHeitor a3c4bc4336 Darken the FG color too (while compiling with g++). 2016-07-17 17:40:10 -03:00
FellippeHeitor 94d1442060 Expand block indentation with TAB/Shift+TAB.
Block indentation is now allowed even with auto-indentation is on. A bit useless at first, as the IDE will override any custom indentation attempt while ideautoindent is on, but at least now TAB doesn't inadvertedly delete selection contents anymore.
2016-07-17 17:23:42 -03:00
FellippeHeitor 3020b7b631 Improved cursor behavior.
Expand cursor behavior to work even when auto layout/indentation are active, so that edition feels more natural.

Also:
- Improved cursor behavior when using backspace to collapse a line into the previous one (check out code comments for easier understanding).
2016-07-17 17:21:08 -03:00
FellippeHeitor 99e0b539af Cosmetic: Darken the interface while G++ is being run.
Uses _PALETTECOLOR to change the background of the IDE to a darker shade while external compilation is taking place, to give a sense of temporary unavailability.
2016-07-17 17:17:51 -03:00
FellippeHeitor 19ab48caec Add Ctrl+G as a shortcut to "Go to line". 2016-07-09 15:30:10 -03:00
FellippeHeitor ef791afcb6 Make use of _INCLERRORFILE$ for more meaningful error messages.
Also:
- Improved messagebox (allows multiline messages with CHR$(10) terminated lines.
- Fixed a minor bug that could be triggered by right-clicking a selection that contained only sigils.
2016-07-09 15:04:42 -03:00
Fellippe Heitor 2f832cd15b Show selection length on the status bar 2016-07-02 03:48:58 -03:00
FellippeHeitor 6a26da51a5 QuickNav: minor change to "back" button wording. 2016-06-28 17:02:03 -03:00
FellippeHeitor f0b9d0dadd QuickNav: minor change to "back" button wording. 2016-06-28 16:59:16 -03:00
FellippeHeitor 1e3cb88fc9 Allow Shift+ENTER to edit RGB values without the contextual menu. 2016-06-28 11:29:46 -03:00
FellippeHeitor 1ba7270cdb Supress "'Hit Shift+ENTER" message if _RGB is in a comment or quote. 2016-06-28 02:04:05 -03:00
FellippeHeitor e28997f3f5 Quick Navigation "Back" button's hover behavior improved.
Upon hovering the Back button right below the menu bar, the next QuickNav location will be shown as "back to line ##".

Also:
- Fix label color in the "Google Android" dialog.
- Fix a bug that could occur when invoking the contextual menu with an empty selection.
- Relocate Undo/Redo to the top of the Edit menu.
2016-06-28 01:37:37 -03:00
FellippeHeitor ba968213a5 Add an RGB color mixer for inputting/editing _RGB/32/A/A32 values.
Upon entering any _RGB statement, the IDE will offer to launch the mixer dialog, which can be done by hitting Shift+ENTER. Right-clicking existing statements allows triggering the mixer dialog from the contextual menu.
2016-06-28 01:34:06 -03:00
FellippeHeitor 1e99a91293 Allow closing the IDE via the X when only the menu bar is active. 2016-06-25 16:16:49 -03:00
FellippeHeitor de6fd0a7a8 Allow closing the IDE via the X button while the menus are active. 2016-06-25 12:58:16 -03:00
FellippeHeitor 1ab3025ef3 Auto select the .exe when clicking the quick link to the output folder 2016-06-22 14:44:59 -03:00
Fellippe Heitor 5e7e37ea0b Save executable with source (Mac, probably Linux too) 2016-06-21 11:59:37 -03:00
FellippeHeitor 8f67d40330 Add "Save EXE in the source folder" to the Run menu.
(Windows only for now)
When active, this new setting will instruct the compiler to save the .EXE in the same folder as the source file. If the current program is not yet saved, the .EXE is placed in the same folder as QB64.EXE, as usual.

Also:
- When "Make EXE only (F11)" is used, the status area will show "Location: " and a link to the folder where the .EXE was saved. Clicking it launches Windows Explorer.
2016-06-21 03:38:42 -03:00
FellippeHeitor 86f79d8b29 Improved cursor behavior when auto indent is off.
When auto indent is turned off in Options->Code Layout, hitting ENTER to create a new line will cause the cursor to be aligned with the previous line start, making it easier to manually indent code.

Also:
- Hitting backspace when there's no text before the cursor will also cause it to jump back following the tab spacing set in the Code Layout dialog.
2016-06-21 01:31:42 -03:00
Fellippe Heitor e5487b3124 Allow Shift+TAB to change focus in dialogs (Mac) 2016-06-14 01:29:33 -03:00
FellippeHeitor 4925dfd990 Minor fix to textboxes in dialogs being autoselected when empty. 2016-06-14 01:05:54 -03:00
FellippeHeitor a0506884f8 Minor adjustments (cursor after pasted contents and textboxes in dialogs)
The setting to place the cursor after the pasted contents is now observed in textboxes (dialog boxes) and also in the quick search field.

Also:
- Textboxes are now always selected upon receiving focus in dialog boxes, in order to mimic modern OS's behavior.
2016-06-09 01:46:00 -03:00
FellippeHeitor 6f4231c86b Add a percentage bar to the status line while still compiling (F5/F11).
Also:
Progress has been grouped. No longer "Step 1/2" then "Step 2/2". It goes from 0% to 100% and that's that.
2016-05-24 21:35:30 -03:00
FellippeHeitor 64ca150f9c Supress progress indication if an error is found. 2016-05-24 02:10:33 -03:00
FellippeHeitor 546947d967 Show compilation progress (BASIC -> C++) in the status bar.
The only indication that the program was being compiled was the "..." on the status area. Now, if you hit F5 (or F11) and your program is still being compiled to C++, you will see a progress indicator on the bottom status line.

Also:
- Display "Start typing to search for text in this help page" upon invoking the help system (the search functionality is already built-in).
2016-05-24 01:35:28 -03:00
FellippeHeitor 218536343a Add "Cursor after pasted content" to Options menu.
Default behavior (which mimics Qbasic) is to keep the cursor in place even after pasting from the clipboard. This new option alters such behavior to act as modern systems, placing the cursor after the pasted content.

Also:
- Add visual indication that mouse buttons have been swapped (Options menu);
- Allows opening menus with a right-click (in case you forget you swapped mouse buttons);
- Minor tweaks to Code layout dialog box.
2016-05-07 01:38:52 -03:00
FellippeHeitor a6d7a7ac5c Add sliders to the Colors dialog (for RGB values). 2016-04-28 03:22:29 -03:00
FellippeHeitor c49272e64c Disable selection when Quick Navigation is used.
Previously, upon clicking the Quick Navigation button, the IDE could accidentally select all lines between the current and the destination line. Such behaviour has been fixed.
2016-04-28 00:09:30 -03:00
FellippeHeitor 1033468606 Adjust Color dialog size. 2016-04-21 23:33:29 -03:00
FellippeHeitor fa63f1feef Color dialog: allow an empty field while editing RGB values. 2016-04-21 18:10:56 -03:00
FellippeHeitor fa569c2fc4 Add a new dialog to allow changing of interface/code syntax colors. 2016-04-21 17:49:32 -03:00
FellippeHeitor f00c584454 Fix to extra console window being shown when no COMMAND$ is provided.
A trailing empty space was the culprit.
2016-04-15 10:01:58 -03:00
FellippeHeitor b243601d5a Add "Modify COMMAND$..." to Run menu.
Allows the user to set parameters to be sent to the current program when ran from inside the IDE using F5 or Ctrl+F5.
2016-04-15 00:47:26 -03:00
FellippeHeitor 336cfde4a0 Suggest a filename when first saving, based on _TITLE, if found. 2016-04-09 17:13:02 -03:00
FellippeHeitor 9c38822c13 Current line highlight properly identifies multilines (ending with _)
ALSO:
- Fix "back" button flickering while typing.
2016-04-06 23:39:54 -03:00
FellippeHeitor 490524628c Fix to active line color highlight. 2016-04-06 02:35:42 -03:00
FellippeHeitor 14ddb620b3 Highlight the current line with a darker shade of the bg color.
Can be overriden by making BackgroundColor2 = BackgroundColor in the config.txt file.
2016-04-06 02:26:23 -03:00
FellippeHeitor 022218f7a7 Add current line to navigation history before going to line with error.
Saves current line before focusing on the line that has an error indicated in the status area.
2016-04-06 01:59:38 -03:00
FellippeHeitor 12010a273c Add a "Back" button [<] to browse back after using Quick Navigation.
After using any Quick Navigation method (Search > Goto line, Right-click > Goto SUB/FUNCTION or Goto label, Bookmark navigation, SUB/FUNCTION selection box), a left facing arrow will show right under the File menu, allowing to browse to where you were before navigation.

ALSO:
- "Goto line" dialog box now remembers the last line number that was input.
2016-04-06 01:43:39 -03:00
FellippeHeitor 310eb662d0 Use the new _INCLERRORLINE to give more detailed error messages (IDE). 2016-03-23 11:22:22 -03:00
Luke Ceddia 773291198c Added a date and id stamp to appear in the About box.
This must be manually updated whenever you make a change to the code.
See source/global/version.bas for details.
2016-03-18 23:22:03 +11:00
SteveMcNeill e9472743e5 Path to IDE Auto-position
Since _SCREENHIDE doesn't currently work on Linux, alterations were made
to the auto-position routine to keep the IDE from storing screen
positions when minimized and closed that would make it reopen off-screen
and impossible to move/position.
2016-03-04 14:51:08 -05:00
Fellippe Heitor 6af23d8039 Fix keyboard hotkey indicator in contextual menu.
When two 'Go to...' are shown (when label and procedure share the same name), the item that goes to procedure will have G highlighted and the item that goes to a label will have L highlighted.
2016-02-27 16:17:28 -03:00
FellippeHeitor 517f512c76 Add "Go to..." to contextual menu, for SUB/FUNCTION/Labels.
If a user right-clicks a SUB/FUNCTION name or a label name anywhere in the code, the contextual menu now offers to jump to the line where such procedure/label is defined, providing a quick way to navigate through code. Even if there are multiple identical labels in different procedures, scope is taken into consideration, leading you to the definition that's located inside the current procedure.
2016-02-26 22:01:03 -03:00
FellippeHeitor ce0c8a4507 Add option to restore last window position at startup (Display dialog).
Setting already existed in config.txt and could be manually set (actual code to remember window position written by Steve).
2016-02-12 07:20:17 -02:00
FellippeHeitor 48c99d2247 Fix title alignment of manually positioned dialog boxes. 2016-02-12 06:49:26 -02:00
FellippeHeitor 4901270af3 Fix an error invoking the contextual menu.
If the ide window was too small (e.g. default size 80x25) and a subwindow was being shown (help window) drawing the contextual menu caused an error.
2016-02-07 18:01:43 -02:00
FellippeHeitor ac333bb611 Minor customization specific for the SUBs list (external procedures).
- Change color of the external indicator (*) so that it looks less intrusive.
2016-01-17 12:03:25 -02:00
FellippeHeitor 7db635a043 Revert latest changes to SUBs sorting.
64 bit systems don't handle it at all. Will only be available in Windows and Linux 32bit.
2016-01-15 22:09:49 -02:00
FellippeHeitor d86b5c84b6 Fix evaluation of current OS.
Tested under Windows, OS X El Capitan, Linux 32 and 64 bit.
2016-01-15 15:00:17 -02:00
FellippeHeitor 2381e9aa20 Reenable SUBs sorting under 32bit Linux. 2016-01-15 04:55:48 -02:00
FellippeHeitor 0075adde2c Shows Shift+TAB in menus only in Windows and OS X.
QB64 doesn't recognize Shift+TAB under Linux.
2016-01-15 04:33:51 -02:00
FellippeHeitor 02f63c2457 Remove SUBs sorting (F2) from Linux and Mac versions.
The sorting routine isn't compatible with these platforms. For now, it is Windows-only.
2016-01-15 04:10:30 -02:00
FellippeHeitor 10c53de173 Merge branch 'selective-indent-shortcuts' 2016-01-14 16:25:18 -02:00
FellippeHeitor 55035849fd Remove SUBs sorting under OS X, until it gets fixed.
After the addition of sorting to SUBs dialog, it stopped working under OS X.
2016-01-14 15:30:55 -02:00
FellippeHeitor d684b6cf05 Fix Shift-TAB to decrease block indent on OS X.
In Linux, the option remains available only through Edit or contextual menu (right click).
2016-01-14 14:59:42 -02:00
FellippeHeitor e2a202084a Fix never ending lines when down arrow kept being pressed
The issue was introduced after CTRL+UP/DOWN was implemented.
2016-01-14 13:53:54 -02:00
FellippeHeitor fcf9334581 Internal: Make SUB Sort case insensitive.
A case backup array is no longer needed for sorting the SUBs list.
2016-01-14 11:41:44 -02:00
FellippeHeitor 2f2e93a276 Allow ESC to dismiss the "Are you sure you want to clear..." dialog. 2016-01-13 20:08:03 -02:00
FellippeHeitor 261d6fc97d Fix ESC deleting the current selection. 2016-01-07 00:20:29 -02:00
FellippeHeitor 96f450e2ff Small modification to Edit menu. 2016-01-06 23:28:22 -02:00
FellippeHeitor 8187641862 Add message box about the availability of manual block indent. 2016-01-06 23:14:58 -02:00
FellippeHeitor acee40bf72 Add increase/decrease block indent with TAB/Shift+TAB.
- Available only when auto indent is turned off (Options/Code layout).
- Also available from Edit menu and contextual right-click menu.

Known issue: When auto spacing is on, if you try to indent the first line the file, it is immediately repositioned at the start of the line. Only happens to the first line.
2016-01-06 22:57:11 -02:00