1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-08-04 17:40:24 +00:00
Commit graph

139 commits

Author SHA1 Message Date
FellippeHeitor
a3c4bc4336 Darken the FG color too (while compiling with g++). 2016-07-17 17:40:10 -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
90923af3db Add _INCLERRORFILE$, which reports the included file that last errored.
Also:
Change qb64.bas to produce C code that reports INCLUDE file names.
2016-07-08 22:48:00 -03:00
FellippeHeitor
c6b05376d4 Minor rewording to command line help 2016-07-02 21:24:22 -03:00
Fellippe Heitor
4550c333b7 Add command line help (-?, /?, -h or -help) 2016-07-02 16:25:21 -03:00
FellippeHeitor
240814c6cc Fix proper detection of output executable being run. 2016-07-02 02:50:43 -03:00
FellippeHeitor
bad8133d16 Command line improvements.
- Add -e for compiling with OPTION _EXPLICIT activated from the command line - even if the source file doesn't have the directive.
- Add -o for specifying a different output executable file name.
- More flexible syntax, as switches can come after the file name, making the following acceptable: qb64 filename.bas -x -e -o myprog.exe
2016-07-02 01:32:03 -03:00
FellippeHeitor
e70f18178f Broader detection of OPTION _EXPLICIT in code.
- No two OPTION _EXPLICIT can be entered
- You can OPTION _EXPLICIT: DO OTHER STUFF 'and comment on the same line
- Extreme cases of bad formatting like OPTION        _EXPLICIT are fine.
2016-06-30 23:40:46 -03:00
FellippeHeitor
7bb17d3d8d OPTION _EXPLICIT errors report the variable name.
Also:
Allow comments and empty lines before OPTION _EXPLICIT
2016-06-30 05:24:22 -03:00
FellippeHeitor
aec3d3b4dd Fix for relative paths (./ or .\) in LIBRARY declarations.
These were having issues when compiling via command line.
2016-06-30 03:58:20 -03:00
FellippeHeitor
a7a3b1663d Implements OPTION _EXPLICIT
When you use OPTION _EXPLICIT, all variables and arrays must be defined with DIM (or equivalent statement) before they can be used. QB64's case check already aids in avoiding mistakes on that front, but now you will run into a compiler error if a variable or array is used before being defined.
Because OPTION _EXPLICIT sets a compiler behavior, it must come before any other statements in your code.
As this is a non-QB4.5 feature, the keyword uses an underscore, in order to avoid conflicts with existing code.
2016-06-30 02:50:10 -03:00
FellippeHeitor
5b7411a583 Minor fix to settings output. 2016-06-26 00:37:08 -03:00
Fellippe Heitor
7cf18f13ad Add -s (settings) to command line. 2016-06-26 00:06:34 -03:00
Fellippe Heitor
81a0e7a4b7 Fix to relative paths for console compilation. 2016-06-25 22:36:36 -03:00
FellippeHeitor
d8c01d89cb Properly check if the target .EXE can be replaced (no ide compilation). 2016-06-25 16:17:22 -03:00
FellippeHeitor
b3c7c03558 Fix for unnecessary terminal window showing up in Windows 2016-06-22 14:05:28 -03:00
FellippeHeitor
22a2115fe8 Fix for relative library paths in Windows. 2016-06-22 01:13:54 -03:00
Fellippe Heitor
b8b4b13302 Relative paths for external libraries
External libraries can now sit in the same folder as your source file without the need to specify a full path. You can use .libraryname or ./libraryname with DECLARE LIBRARY statement blocks.
2016-06-21 23:53:43 -03:00
Fellippe Heitor
5e7e37ea0b Save executable with source (Mac, probably Linux too) 2016-06-21 11:59:37 -03:00
FellippeHeitor
b7b6c760e1 Console mode compilation (-c, -x) also save EXE to source folder, if set. 2016-06-21 03:54:20 -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
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
fca4a96ef3 Remove unnecessary optional parameter in fix_error().
Also:
- "Unhandled error" message now only shows included line number when it's > 0.
- qb64.bas adds include line number to every evnt() call.
2016-03-23 08:29:32 -03:00
FellippeHeitor
e891ce0891 Extended error reporting, pointing to included lines.
The "Unhandled error" message will now display "Line: #### (included line: ####)" with the line number in the included file that generated the error. 0 will be reported if the error wasn't in an included line.

Also:
- Add function _INCLERRORLINE, which returns a value greater than zero when _ERRORLINE points to an $INCLUDEd file.
2016-03-23 07:45:51 -03:00
FellippeHeitor
3557828e95 Fix $precompiler layout.
$ELSEIF FLAG THEN was being turned into $ELSEIF IF FLAG THEN THEN when a precompiler condition had already been met in an $IF block before the current $ELSEIF.
2016-03-20 22:19:35 -03:00
SteveMcNeill
9761af33d5 Fix to precompiler to work inside $INCLUDE files 2016-03-08 20:53:35 -05:00
SteveMcNeill
87b4783dd7 Fix so IDE will catch DO WHILE (nothing) syntax errors 2016-03-04 22:34:28 -05:00
SteveMcNeill
117f12e4d4 Patch to correct IDE error messages
IDE error messages would give invalid reports if the program encountered
an error on the automatically included QB64 virtual keyboard files.
This should correct that and have the IDE reporting the proper messages
once again.
2016-03-04 11:21:16 -05:00
Fellippe Heitor
95af7ff6a6 Improves the .command file generated to launch executables
The same improvements made to qb64_start_osx.command are now present in the .command file that is generated in OS X after a program is compiled into an executable. This way, Terminal is closed as soon as the program is launched.
2016-02-27 15:40:24 -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
2293beb692 Fix a leak when assigning values to an array of type STRING.
The issue happened with both fixed and variable length string arrays and variables with user defined types containing fixed string elements.
2016-02-22 08:19:54 -03:00
Luke Ceddia
9c17efacf5 Removed non-ASCII characters and many hard tabs from source files, making it easier to use other text editors (special characters were being mangled in some cases). 2015-12-30 21:28:13 +11:00
Luke Ceddia
86acbbbcdd Indent code in SUBs and FUNCTIONs by one level, with the option to turn on/off.
Adds option IDE_IndentSUBs to the config file. Credit to Fellippe Heitor for
doing the research and writing on the bulk of this commit.
2015-12-14 11:19:26 +11:00
Galleondragon
ab6c51a6b2 Fix command line compilation 2015-11-02 21:32:45 +11:00
Galleondragon
accdaf1ce0 Added support for Android & Virtual Keyboards 2015-10-30 23:18:44 +11:00
Galleondragon
a4867ea44c Test auto-build process via GitHub 2015-08-15 21:26:39 +10:00
SMcNeill
15649725e5 Patch to fix WriteConfigSetting from altering variables passed to it.
Fix to precompiler internal array allocation to prevent IDE Module Errors in some instances.
2015-08-05 17:44:43 -04:00
Galleon
91e7ace500 (Automated push) Update internal/source/* from qb64.bas 2015-08-02 05:12:44 -07:00