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

669 commits

Author SHA1 Message Date
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
FellippeHeitor d595a1a1f3 Offer _RGB mixer when $NOPREFIX is set. 2020-02-24 17:12:17 -03:00
Fellippe Heitor 4b28605cbe Attemps to fix SHELL call to conversion utility 2020-02-24 12:53:19 -03:00
FellippeHeitor 4dacef8693 And, so it doesn't end up forgotten again, let's tweak it up for beta. 2020-02-14 21:14:18 -03:00
FellippeHeitor 785b1b3cfc Updates the often forgotten resource file for Windows' qb64.exe. 2020-02-14 21:11:25 -03:00
FellippeHeitor 57aed941fe Begins v1.5 development. 2020-02-13 12:55:01 -03:00
FellippeHeitor 0f49b2c3c6 Updates version info for release. 2020-02-13 12:09:06 -03:00
FellippeHeitor 8da4c1eb1e Fixes rendering of Status area when contextual F1 help is invoked. 2020-02-13 11:56:57 -03:00
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 7ee6a3d810 Gets zlib to link statically in Windows and Linux.
Dynamic linking on macOS is ok since zlib is natively available.
2020-02-07 22:36:30 -03:00
FellippeHeitor 03ba53e9c5 Fixes $EXEICON to work when $CHECKING:OFF is enabled. 2020-02-06 11:49:49 -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 2a34a20cdc Allows math with scientific notation numbers in CONSTS. 2020-01-29 03:09:23 -03:00
FellippeHeitor 53dcec5603 Fixes CONST PreParse when using existing CONSTS stored as _FLOAT. 2020-01-29 02:36:15 -03:00
Fellippe Heitor 6990118553
Updates version.bas 2020-01-22 15:28:43 -03:00
FellippeHeitor 814f5be495 Reduces console updates even more. 2020-01-22 15:11:15 -03:00
FellippeHeitor bd7a6757d0 Reduces percentage updates for console compilation. 2020-01-22 14:59:30 -03:00
Fellippe Heitor e53be8c540 Trigger ci to test new console output 2020-01-22 14:25:31 -03:00
FellippeHeitor a7db724da0 Stops screaming. Adds progress bar to command line compilation. 2020-01-22 12:52:15 -03:00
FellippeHeitor 1544216488 Keeps focus if ENTER is pressed in DIR list. 2020-01-22 09:19:47 -03:00
FellippeHeitor f944e86b38 Allows -s switch to change settings and process other parameters. 2020-01-22 02:01:29 -03:00
FellippeHeitor b91b37b823 Properly render help files in Windows
Both files checked out from the repository and packed in the 7z we provide had CRLF for line endings in the help files. This change makes it so the extra CR is removed from the offline help as the user fetches them locally.
2020-01-20 16:50:58 -03:00
FellippeHeitor d0b4fe2783 Stops trying to fetch wiki data from qb64.net 2020-01-20 15:50:06 -03:00
Fellippe Heitor f1fdc09604 Updates version number 2020-01-19 20:34:50 -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
FellippeHeitor 6410ac3d96 Removes unneeded source/embed/* 2020-01-19 11:57:00 -03:00
Fellippe Heitor e0476b04b7 Merge remote-tracking branch 'origin/zlib-multiplatform' into development 2020-01-19 11:25:09 -03:00
Fellippe Heitor da9169706c Merge remote-tracking branch 'origin/invalidlines-usebyte' into development 2020-01-19 11:24:54 -03:00
Fellippe Heitor 016e3d4b73 Merge remote-tracking branch 'origin/font8' into development 2020-01-19 11:24:37 -03:00
Fellippe Heitor e27f1bf29b Merge remote-tracking branch 'origin/fix-include' into development 2020-01-19 11:24:21 -03:00
Fellippe Heitor b573db5ef5 Merge remote-tracking branch 'origin/fix-string-consts' into development 2020-01-19 11:24:02 -03:00
FellippeHeitor ac268c740b Simplifies usage of zlib across platforms. 2020-01-18 18:48:10 -03:00
Fellippe Heitor 44c80201f2 Gets _DEFLATE$ and _INFLATE$ to work on macOS. 2020-01-18 17:50:24 -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 ccb754d4e4 Prevents $NOPREFIX to be set after any other statement. 2020-01-18 01:33:29 -03:00
FellippeHeitor e30f19b38a Makes $COLOR constansts an external includable file. 2020-01-18 00:20:54 -03:00
FellippeHeitor 2bf3dd146b Fixes string concatenation in consts 2020-01-17 19:08:29 -03:00
FellippeHeitor 834ccb2519 Removes "force include"; removes the need for source/embed/* 2020-01-17 18:57:29 -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
Steve McNeill c4f28baaee Fix to $COLOR to work via command line. Renamed ColorHack to ColorConst for Fellippe. ;D 2020-01-15 22:52:39 -05:00
Steve McNeill f28d492d3f Fix to return $COLOR to QB64. 2020-01-15 20:51:48 -05:00
FellippeHeitor 1196fcb6dd Simplifies CONST parsing and passing to Evaluate_Expression$(). 2020-01-15 17:07:17 -03:00
FellippeHeitor 2311e6ad47 Restores CONST lookup (consts refering to consts). 2020-01-15 02:31:03 -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 c92ce4c4cb
Merge pull request #22 from QB64Team/math-support-from-steve
Updated Math Support for CONST from Steve
2020-01-15 00:15:05 -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
FellippeHeitor 4afde87e04 Restores check for division by zero in consts. Also:
Prevents cases like 'CONST a = *'.
2020-01-15 00:02:35 -03:00
FellippeHeitor 3611234288 Finishes importing Steve's CONST support patches and +
Prepares Math evaluator to deal with $NOPREFIX.
2020-01-14 20:05:34 -03:00
FellippeHeitor f49d822a11 Imports Steve's Math Evaluator:
As per Steve:
"Math support finalized with new evaluator.
Completely redid the math evaluator.  It's fancy, functional, and much more efficient than the old one."
2020-01-14 13:19:07 -03:00
FellippeHeitor f23ffa70c5 Proper error message when SUB/FUNCTION is left open.
"Unidentified open control block" was being given in those cases when identing was on.

Fix brought from Steve's repo.
2020-01-14 12:38:38 -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 6c779ca798 Exits with an error code if the 'internal' folder cannot be found/locked. 2020-01-10 00:43:08 -03:00
FellippeHeitor 2309d05ff8 Fixes alignments of --help page. 2020-01-09 12:00:14 -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 dffc94b83d Properly gets _MEM type to play nice with $NOPREFIX 2020-01-06 20:29:44 -03:00
FellippeHeitor 0bb90ad263 More fixes to hardcoded _KEYWORDS so $NOPREFIX will work. 2020-01-06 05:08:44 -03:00
FellippeHeitor 3e474f2f0b Fixes SUB calls like SHELL _HIDE command$ for $NOPREFIX use. Also:
- Fixes incorrect resolution of _BIT in variable declarations.
2020-01-06 04:46:29 -03:00
FellippeHeitor 18974d56e4 Final adjustments to CONST parsing + $NOPREFIX 2020-01-06 00:36:31 -03:00
FellippeHeitor f63358698b Properly hijacks Steve's math CONST operations for $NOPREFIX to work.
These changes will allow for Steve's upcoming changes to be inserted with no issues.
2020-01-05 23:30:10 -03:00
FellippeHeitor 1ea1b66c95 Restores Steve's SUB ParseExpression 2020-01-05 20:01:52 -03:00
FellippeHeitor a2e1ea0091 Properly detects OPTION (_)EXPLICIT to set opex_comments. 2020-01-05 19:38:22 -03:00
FellippeHeitor fed5798523 Moves $NOPREFIX setting to prepass, so TYPEs are properly affected. +
- Fixes FUNCTION dim2 and FUNCTION typname2typ& to properly deal with variable types with no suffix.
- Restores Steve's Set_OrderOfOperations and EvaluateNumbers$ until a fixed version can be provided and tweaked.
2020-01-05 19:31:46 -03:00
FellippeHeitor 060284f9c3 Removes $COLOR metacommand until a fix for command line compilation comes. 2020-01-04 18:41:15 -03:00
FellippeHeitor 2ebaeab3c6 Initial implementation of $NOPREFIX
Allows QB64-specific keywords to be called without the leading underscore.

Per user and per project; affects nothing globally.

Allows prefixed keywords to be used even when it's set.
2020-01-04 16:13:13 -03:00
Luke Ceddia b215c06164 More dummy qb64.bas changes 2020-01-04 23:46:20 +11:00
Luke Ceddia 4837a27dc2 Dummy qb64.bas change 2020-01-04 23:43:23 +11:00
Fellippe Heitor bcc05e8b15
Merge pull request #118 from Galleondragon/rename-zlib-folder
Renames zlib's folder so it can be updated without the hassle later on.
2020-01-03 02:46:17 -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 51710ddcd3 Renames zlib's folder so it can be updated without the hassle later on. 2020-01-02 23:00:51 -03:00
FellippeHeitor 7c9eafbadb Replaces _TOGGLE_(KEY)LOCK with _(KEY)LOCK ON/OFF/_TOGGLE. Also:
- Changes CFont to sub__consolefont and func_CInp to func_cinp, in alignment with the rest of libqb/qbx.
- Adds stubs to all new console functionality, so we can still ship for other OSes with no bigger issues.
- Adds new keywords to syntax highlighter.
2020-01-02 19:55:58 -03:00
FellippeHeitor d7f77cd2af Removes inexistent sub/function declarations. 2020-01-02 19:49:29 -03:00
FellippeHeitor 114bd7b5a8 Adds stubs for _INFLATE$ and DEFLATE$ for OSes other than Windows.
These will return the unchanged text$ passed for now.
2020-01-02 17:35:02 -03:00
flukiluke fe920f921b
Merge pull request #114 from Galleondragon/add-assert
Adds $ASSERTS, $ASSERTS:CONSOLE and _ASSERT condition[, message$]
2020-01-02 19:55:55 +11:00
Luke Ceddia 8a7316953c Merge branch 'alexmyczko-patch-1' into development (PR #79) 2020-01-02 14:34:23 +11:00
Luke Ceddia 5fd1dc589c Update text, add -v option 2020-01-02 14:32:31 +11:00
FellippeHeitor 4397429ed1 Properly highlights $ASSERTS:CONSOLE without adding "console" to list. 2020-01-01 19:21:53 -03:00
FellippeHeitor 2f7510715e Adds $ASSERTS and _ASSERT to syntax highlighter. 2020-01-01 19:03:49 -03:00
FellippeHeitor 49f265f1c2 Adds $ASSERTS, $ASSERTS:CONSOLE and _ASSERT condition[, message$] 2020-01-01 18:20:30 -03:00
FellippeHeitor eb7adb7503 Fixes $VERSIONINFO. Closes #110.
Also: proper indenting after IgnoreWarnings was added.
2020-01-01 12:27:24 -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
Fellippe Heitor 5bd3d3728b
Merge pull request #112 from QB64Cobalt/development
Added new bit routines to keyword list.
2019-12-17 12:45:03 -03:00
QB64Cobalt 823bc38076
Added new bit routines to keyword list. 2019-12-17 06:58:41 -08:00
Fellippe Heitor c848e0d40e
Merge pull request #108 from QB64Cobalt/development
Corrections to Bit Routines to allow for unsigned integer64 values
2019-12-08 11:55:14 -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
QB64Cobalt 68831584b8
Update subs_functions.bas 2019-12-05 07:10:31 -08:00
SteveMcNeill 58b82dff13 Minor change to bit routines, added ability to ignore warnings in IDE 2019-12-04 12:30:02 -05:00
SteveMcNeill 2a56322783 Patch to $IF UNDEFINED 2019-11-27 03:04:25 -05:00
QB64Cobalt 036385e20a
Update subs_functions.bas 2019-11-16 16:21:51 -08:00
SteveMcNeill eba05938bb Pushed changes to enhance the Windows Console Experience
Window's CONSOLE support has been extended so that:

CSRLIN support added.
POS(0) support added.
LOCATE support added. (Works with optional parameters.)
COLOR support added.
SCREEN support added to get both character and color information of any point on the console.
tab() glitch fixed. (Which could cause an endless loop when printing with comma spaced text/numbers.)
_WIDTH support added.
_HEIGHT support added.
WIDTH support added, with 2 new parameters added so we can set the buffer width and buffer height also.
CLS support semi-added.  (Doesn't accept colored backgrounds; it clears the screen black.  I'm getting tired of working up console stuff which I probably won't ever use myself...)
SLEEP support added.
END support added so we now end with any keypress and not just enter.

_CONSOLEINPUT added, so we can tell the difference in mouse and keyboard input.
_CINP(toggle) support added, which allows us to get single character keystrokes from the console.
_CONSOLEFONT FontName, FontSize support added, which allows us to change the font and font size we use for the console.
_CONSOLECURSOR _SHOW|_HIDE, cursorsize support added, which allows us to show or hide the cursor in the console, and to change its size (from 0 to 100), as desired.

New keyboard commands added:

_CAPSLOCK -- returns 1 if caps lock is on, 0 if it isn't.
_NUMLOCK -- as above, but for num lock
_SCROLLOCK -- as above, but for scroll lock

_TOGGLE_CAPSLOCK -- toggles the caps lock state for us.
_TOGGLE_NUMLOCK -- same, but for num lock
_TOGGLE_SCROLLOCK -- same, but for scroll lock
2019-08-27 19:52:02 -04:00
SteveMcNeill 449bdecacd Adding ZLIB into the QB64 parts system for windows.
Two new keywords added:
FUNCTION _INFLATE$ (text$)
FUNCTION _DEFLATE$ (text$)

Use of these commands can compress and decompress strings using the ZLIB library.
2019-08-27 18:22:07 -04:00
SteveMcNeill f01d13f957 Quick patch to _STRICMP. Enhancement to $COLOR not affecting line numbers. 2019-08-27 17:27:35 -04:00
SteveMcNeill cc16eaac1c Tweak to $COLOR processing order
Move $COLOR commands so they process after the precompile commands (such as $LET), otherwise they may not be included/excluded properly when between $IF blocks.
2019-08-07 09:23:12 -04:00
SteveMcNeill e006fefb12 Change to $COLOR32
Made statement $COLOR:0 or $COLOR:32 so color names could be used in
either screen 0 or 32-bit screens, as the user desired.

Made routines only callable once.  Multiple references will result in
error messages being given now.
2019-08-04 11:45:07 -04:00
SteveMcNeill 8fecea60a5 Added Rho's exemption for $CHECKING:OFF and arrays
As per here:
https://www.qb64.org/forum/index.php?topic=1348.msg105444#msg105444
2019-08-02 15:51:39 -04:00
SteveMcNeill a885cdb524 Alter previous change to reduce error messages reported
CONST has more options than what the internal math routine itself
handles; it doesn't need to toss an error message whenever those pop up;
just when it's an actual math style message.  This fixes that.
2019-08-02 09:25:21 -04:00
SteveMcNeill e52009ba83 Fix to CONST crash with Integer Division by Zero error 2019-08-01 13:45:12 -04:00
FellippeHeitor e0c9185039 Updates source/icon.rc 2019-04-28 08:50:07 -03:00
FellippeHeitor 93b7001c4e Fixes isnumber() and improves detection of scientific notation numbers. 2019-04-23 10:17:18 -03:00
FellippeHeitor 4923b191bf Now truly the last bit of virtual keyboard vestige [ci skip] 2019-04-14 21:52:33 -03:00
FellippeHeitor d5c73af6fc Removes virtual keyboard references (2/2) 2019-04-14 18:56:42 -03:00
FellippeHeitor c9aa3baa48 Revert "Removes virtual keyboard references (2/2)"
This reverts commit c590e9c6d9.
2019-04-14 17:37:50 -03:00
FellippeHeitor c590e9c6d9 Removes virtual keyboard references (2/2) 2019-04-14 17:32:21 -03:00
FellippeHeitor b57ca7c38b Removes virtual keyboard references (1/2) 2019-04-14 16:42:04 -03:00
FellippeHeitor 31a855d642 Removes dead Android references. 2019-04-14 15:33:19 -03:00
FellippeHeitor 3918db63cc Removes dead Qloud references. 2019-04-14 14:42:49 -03:00
Luke Ceddia 96937f056f Merge version 1.3 2019-04-07 23:09:47 +10:00
Luke Ceddia 4f8a0f6fbc Version bump to 1.3 2019-04-07 22:43:01 +10:00
FellippeHeitor 952856fe2c Shows "duplicate constant definition" warnings when using command line. 2019-04-01 01:12:35 -03:00
FellippeHeitor 4d47f73230 Prevents showing warnings in status area after F11 is used (IDE). 2019-04-01 01:08:22 -03:00
FellippeHeitor cb21e44e94 If merely redefining a CONST with same value, just issue a warning. 2019-03-31 20:22:53 -03:00
FellippeHeitor 018e711820 Fixes warnings showing when IDEShowErrorsImmediately is set to false. 2019-01-14 18:42:51 -02:00
FellippeHeitor 4d497dd5f2 Merge branch 'unusedvariables' into development 2019-01-13 16:36:26 -02:00
FellippeHeitor 641c9d418a Fixes regression introduced with 67af468 2019-01-13 16:35:59 -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 a0373492df Refines warning output for unused variables (command line). 2019-01-12 20:55:38 -02:00
FellippeHeitor 639b7549d7 Fixes incorrect detection of unused _UNSIGNED and fixed length vars. 2019-01-12 20:08:35 -02:00
FellippeHeitor d194cc8039 Displays normal and internal unused variable names in verbose warning. 2019-01-12 17:00:04 -02:00
FellippeHeitor fb346b2164 Reset uniquenumbern when compilation restarts. 2019-01-12 16:59:30 -02:00
FellippeHeitor a2114840de Shows warning when there are unused variables at CL compilation.
Also adds -v switch for verbose mode (lists unused variables).
2019-01-12 15:52:31 -02:00
FellippeHeitor da24fde08d Properly add/remove variables from usedVariableList$ 2019-01-12 15:28:58 -02:00
FellippeHeitor bb21552772 Merge branch 'development' into unusedvariables 2019-01-12 11:32:45 -02:00
FellippeHeitor e777e8a94e Fix to QB4.5 binary fomat converter:
- Enabled token 0x08c;
- PCOPY parameters no longer being inverted;
2019-01-12 10:07:37 -02:00
FellippeHeitor 96ec183746 Merge branch 'development' into unusedvariables 2018-12-31 21:03:28 -02:00
FellippeHeitor 738fe6924d Improved detection of unused variables. 2018-12-31 21:00:16 -02:00
Luke Ceddia 8f9837c803 Take LEN correctly 2018-12-23 17:40:48 +11:00
Luke Ceddia fffd0f842c Free non-array variable udt on sub exit 2018-12-22 15:29:52 +11: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
FellippeHeitor 745c5bc77f Fixes F5 not working in *nix systems. 2018-11-02 19:32:02 -03:00
FellippeHeitor 7fa762750b Adds support for new _RGB32 syntaxes in CONST statements. 2018-11-02 18:47:55 -03: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
SteveMcNeill 687cced581 Changes to CONST and Math Internals 2018-10-31 07:44:57 -04:00
FellippeHeitor 92c4a15735 Prevents ENTER from selecting a disabled menu item. 2018-10-30 01:01:54 -03:00
FellippeHeitor 62599774a1 Adds _SHR/_SHL to keywords list for syntax highlighting. 2018-10-30 00:35:12 -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 369d522a98 Applies common naming convention and makes _SHL/_SHR functions inline. 2018-10-30 00:32:12 -03:00
Kobolticus 761c34a7f6
Added support for _SHR\_SHL functions 2018-10-29 22:53:36 -04:00
SteveMcNeill d9392d842a Fix for $IF/$LET, without breaking $INCLUDE as previous 2018-10-29 15:53:23 -04:00
FellippeHeitor ba5292c951 Revert "Fix for $LET/$IF"
This reverts commit 4787076573.

A regression was introduced that caused $IF blocks in $INCLUDE files to be ignored.
2018-10-29 11:17:06 -03:00
SteveMcNeill e2c250a42f Change to _WINDOWSHANDLE to return 64-bit offsets 2018-10-29 08:09:30 -04:00
Luke Ceddia 19f08b51f3 Merge branch 'varstrings_in_types' into development 2018-10-28 00:01:36 +11:00
Luke Ceddia b912bf09ee Disallow GET/PUT for variable UDTs 2018-10-28 00:00:29 +11:00
FellippeHeitor d01e3666d8 Merge branch 'development' of https://github.com/Galleondragon/qb64 into development 2018-10-25 10:07:09 -03:00
Luke Ceddia 4c94b54f10 redim _preserve 2018-10-23 21:23:13 +11:00
Luke Ceddia daf5cba518 Dynamic arrays (handles arrays in subs too) 2018-10-23 20:36:32 +11:00
Luke Ceddia 683e4f1920 Global static arrays 2018-10-23 12:53:38 +11:00
Luke Ceddia 0eb2b4307f Process nested UDT's 2018-10-22 18:35:20 +11:00
SteveMcNeill 67af468b7d Fix memory leak with PRINT USING
When USING follows another print in the same statement (such as PRINT
"123"; USING "###"; 456), it created a memory leak due to the temp
variable being created twice and only freed once.  This patch corrects
that issue.
2018-10-22 01:02:48 -04:00
SteveMcNeill 4787076573 Fix for $LET/$IF
Fix to the precompiler so $IF/$LET work as expected.  Adds ability to
see if a precompiler variable is DEFINED or UNDEFINED, to exclude
duplicate code in libraries and such.
2018-10-21 23:01:22 -04:00
Luke Ceddia 18bab24af1 Do element-wise assignment with string copy when necessary 2018-10-21 01:46:52 +11:00
Luke Ceddia 902868a7ee Allow assignment and access of variable length strings in TYPEs
To do:
 - arrays of UDT's
 - clone qbs on UDT copy
 - check for memory leaks
 - UDT's declared in subs/functions
2018-10-20 00:13:24 +11:00
FellippeHeitor 14e5866c4b Another tweak yo isnumber() 2018-10-02 23:31:43 -03:00
FellippeHeitor 78c4de7f6c Adapts isnumber() to recognize scientific notation. 2018-10-02 01:38:17 -03:00
FellippeHeitor b29a46d177 Undoes last commit; fix not as easy as initially thought. 2018-10-01 10:27:30 -03:00
FellippeHeitor f6c068ba19 Properly warns user when a non-_MEM var is used with _MEM functions.
Closes #47
2018-09-30 20:54:59 -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 fc075a5242 Updates WikiParse sub for new wiki formatting (IDE).
Previous wiki software returned html entities instead of actual characters, but the new host has an updated version of mediawiki that does the contrary for some special characters.
2018-09-24 02:29:36 -03:00
FellippeHeitor fef142085b Minor rewording to Help->About. 2018-09-21 01:33:57 -03:00
FellippeHeitor 071bbad7a6 Merge branch 'development' of https://github.com/Galleondragon/qb64 into development 2018-09-20 12:15:52 -03:00
FellippeHeitor 2d261c8eb1 Removes deprecated Android references from settings. 2018-09-20 12:11:26 -03:00
Fellippe Heitor c58b5a2800
Update version.bas 2018-09-20 04:31:37 -03:00
FellippeHeitor fcf68e093b Fixes TAB before ELSE bug for the IDE. 2018-09-18 01:03:55 -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 1b7867fd1d Makes ShowLineNumbers default to true when not found in settings. 2018-09-17 21:45:40 -03:00
FellippeHeitor a4a2b4f6db Fixes $INCLUDE duplication bug when resizing the IDE while compiling. 2018-09-17 21:13:58 -03:00
Fellippe Heitor 1a5a8b97cc
Swap qb64.net and qb64.org as wiki page source.
QB64.net is kept as alternative source for now.

Closes #62.
2018-08-17 18:15:40 -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 5e0ff36205 Adds _ACCEPTFILEDROP as a function to return true (-1) if active/enabled.
Returns 0 otherwise.
2018-07-31 22:23:34 -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 975408e2ef _DROPPEDFILE$ now takes an optional index parameter.
- Allows using _DROPPEDFILE as an array ranging from 1 TO _TOTALDROPPEDFILES.
- Using _DROPPEDFILE as an array doesn't reset _TOTALDROPPEDFILES (unlike when reading _DROPPEDFILE$ sequentially with no parameter), so it's necessary to call _FINISHDROP after working with the list of dropped files so it'll be reset.
2018-07-31 10:24:52 -03:00
FellippeHeitor c83b15eb95 Implements Drag/Drop of files onto a program's window (Windows-only).
New statement:
    _ACCEPTFILEDROP [{ON|OFF}]
    Enables a program to accept files being dropped from a folder.

New functions:
    _TOTALDROPPEDFILES
    Returns the number of files that have been received via drag/drop.

    _DROPPEDFILE$
    Returns the list of files that have been dropped. The function sequentially returns the file list and decreases _TOTALDROPPEDFILES with every read.
2018-07-31 00:23:36 -03:00
FellippeHeitor ed28f453f0 Adds _TRIM$ (both left and right TRIM). 2018-07-17 02:35:17 -03:00
FellippeHeitor 024f27a5b5 Indentation work (.bas files). No actual code changes. 2018-07-17 00:01:23 -03:00
FellippeHeitor bc6b427a99 Implements _INSTRREV, to search for the last occurence of a substring.
The statement works as INSTR does but starts from the end of the passed string (or from the specified position) and looks for the passed substring while moving backards.

Takes after VBScript's InStrRev: https://www.w3schools.com/asp/func_instrrev.asp

Closes #51
2018-07-15 16:43:12 -03:00
Fellippe Heitor a846fdbc4d
OFF/_OFF allowed for _FULLSCREEN and _ALLOWFULLSCREEN (#50)
Closes #49
2018-07-13 18:03:00 -03:00
FellippeHeitor 19fda93caf Adds .overloaded and .minargs to idstruct.
Allows more functions to be overloaded in the future, like _RGB32.
2018-07-03 00:33:37 -03:00
FellippeHeitor 6ee70f1afa Makes _RGB32 more flexible and powerful.
Existing syntax:
colour~& = _RGB32(red, green, blue)

New possible uses:
- Instead of passing identical rgb values to achieve a shade of gray, pass only 1 parameter for all color components:

    colour~& = _RGB32(51) 'same as _RGB32(51, 51, 51)

- _RGB32 can now take an optional alpha parameter, which makes _RGBA32 obsolete (although it still exists for retrocompatibility):

    colour~& = _RGB32(255, 0, 255, 30) 'same as _RGBA32(255, 0, 255, 30)

- If you want a shade of gray and also to specify the alpha level, you can pass just two parameters:

    colour~& = _RGB32(51, 30) 'same as _RGBA32(51, 51, 51, 30)

In summary:

    - 1 parameter  = red, green and blue simultaneously set.
    - 2 parameters = red, green and blue simultaneously set plus alpha level.
    - 3 parameters = red, green and blue as usual.
    - 4 parameters = red, green and blue plus alpha level (same as _RGBA32).
2018-07-01 21:46:08 -03:00
FellippeHeitor 4264666130 Adds _SMOOTH function to return current fullscreen antialiasing setting.
Returns true (-1) if enabled.
2018-06-30 17:09:29 -03:00
FellippeHeitor 729a1dd465 Adds new keywords to syntax highlighter. 2018-06-29 12:14:08 -03:00
FellippeHeitor d911e3d01e Implements _ALLOWFULLSCREEN to set how ALT+ENTER behaves. Closes #22.
Syntax:
    _ALLOWFULLSCREEN [{_STRETCH|_SQUAREPIXELS|_OFF|_ALL}][,{_SMOOTH|_OFF|_ALL}]

Existing _FULLSCREEN statement is not bound by _ALLOWFULLSCREEN's settings, only the ALT+ENTER key combo.
2018-06-29 11:30:14 -03:00