Wow, this will be a large step forward. Does this mean that things like double, long, ulong, short, boolean, word, dword, void, ptr will all be finished too?
Yup, all of that will have to work. This version of Smalltalk has a very sophisticated mechanism for calling external functions. This is both a blessing and a curse. It's a blessing because it will probably ultimately lead to enhancements beyond backwards compatibility. It is a curse because I need to wrap my brain around it first.
Post by Carl Gundel on Sept 8, 2020 17:47:13 GMT -5
More progress. Most of my energy has been toward the CALLDLL functionality. The new Smalltalk has a more capable framework for calling external functions, but it is also more complicated so this wasn't the most straightforward thing I have done. Thanks for your patience.
- First stab at CALLDLL, only on Windows. STRUCT is not implemented yet. For Mac and Linux there will be equivalent statements later. There are certain to be some issues. See included examples calldll-example*.bas.
- Added support for the HWND() function.
- Added support for the CURSOR statement. Some tweaking will need to be done because the platform libraries for LB5 do not do cursors the same way as the libraries for LB4.
- Fixed the font and font() for the graphics window and graphicbox because they weren't producing the correct fonts and they were returning fonts that were too large.
- Fixed the ^ operator to properly use double precision instead of single precision when computing the result of raising to a power.
- Added the STOP statement.
- Forced the height of comboboxes to be no larger than 25. This keeps the comboboxes from trying to center vertically inside the specified height and produces backwards compatibility with LB4.x. The actual height of the dropdown list when clicked is computed dynamically in LB5 and not using the height parameter.
- Added COLORDIALOG support.
- Added darkpink and darkblue to the list of named colors for backwards compatibility.
- Improved the performance of selecting colors by name in a graphics window and graphicbox.
- Fixed the code editor to give it focus when creating a New File or when opening a file.
- Work toward eliminating the Exit / Continue popup for most things.
- Improved sprite masking performance.
- Tweaked the mouse wheel scrolling code make it more sensitive.
- Changed the default editor font on the Mac to a Courier font to fix the missing bold font in extended syntax coloring.
- Changed syntax coloring making branch labels bold, and changing the #handle color dark red.