Code: (Select All)
QB64 v1.3 - What's new?
New statements and functions:
Drag/Drop support (Windows-only): new statements _ACCEPTFILEDROP, _TOTALDROPPEDFILES and _DROPPEDFILE$ allow your program to accept and handle files dropped from a folder at run-time.
_ECHO: Previously, you could have a $CONSOLE window enabled but to alternate printing to the main program and to the console you'd have to switch _DEST to _CONSOLE, print the text then switch _DEST back to the main program. With the _ECHO command a $CONSOLE-enabled program can output text to the console window without the hassle.
_ALLOWFULLSCREEN: the statement allows you to set the behavior of the ALT+ENTER combo. You can allow only certain modes or disable the combo altogether.
_SMOOTH: returns true (-1) if the current _FULLSCREEN mode has antialiasing enabled or false (0) if disabled.
_RGB32: of course this is not a new function but it has been improved greatly. You no longer need to alternate between _RGB32 and _RGBA32 as it now accepts an optional fourth parameter for alpha. Also: You can create a grayscale color without having to repeat parameters.
_INSTRREV: like INSTR, _INSTRREV allows you to search for a substring inside another string, but unlike INSTR it returns the last occurrence instead of the first one.
_TRIM$: Single function to remove trailing and leading spaces from a string. Macro for RTRIM$(LTRIM$(text$)).
_SHL and _SHR functions for bit-shifting (left/right), as in PRINT _SHL(2, 4) (returns 32) and PRINT _SHR(-8, 3) (returns -1).
Improvements:
Adds Ctrl+Shift+G shortcut to jump to line with error (try the shortcut when your program has an error and the IDE is indicating it on the status area)
New Ctrl+T to toggle comments on the current line or selection (also available via Edit menu and by right-clicking the code)
Updates NanoJPEG to the version 1.3.5 (try loading different jpg files to see if all works well)
Makes F5 run detached by default. (you no longer get an unresponsive IDE while your program is running; equivalent to Ctrl+F5 in older versions).
Disables maximize box when $RESIZE isn't enabled. (Windows only -> remember when a non-resizable window would still show Maximize and when you clicked it the window would just move to the top-left corner? That won't happen anymore).
Quick Navigation (back arrow) can now be disabled in the Search menu.
It is now possible to have variable-length strings in User Defined Types (UDTs).
[Windows version] Mingw compiler upgraded to version 8.1.0. A 64-bit package is now available officially.
New warnings system indicates when a declared variable isn't used and also when a constant is redefined with the same value - useful for using multiple libraries that define TRUE/FALSE for example (instead of an error stopping compilation, a warning is displayed).
Fixes:
Tab in included files won't generate an error anymore.
A bug that would cause an include line to be duplicated when resizing the IDE.
A bug that would not allow reassigning precompiler $LET variables.
A memory leak involving PRINT USING and TAB().
_PRINTSTRING not using the passed image handle parameters.
Selecting a disabled menu item with a hot key would crash the IDE.