Today the fourth alpha release of Smart Mobile Studio is being issued to testers around the world. While the cosmetic changes are modest there is a lot of new and exciting stuff in both the compiler and IDE. First, let’s go through some of the new features introduced in this build:
Changes to the IDE
- Keyword proposal support
- Image to source-code converter
- Compiler message panel
- More project options, especially compiler switches
- Font name, size and color support in preferences
- Background color support in preferences
- Support for external .pas files
- A new project storage format (XML)
- Support for external .pas files in the libraries folder
- No more compiling to a temp folder, all projects now creates a bin folder for it’s compiled output
- The IDE no longer flushes the target folder, so you can safely add your own files without them being removed on compile
- Infrastructure to support smart linking (not yet activated due to a bug in Delphi XE)
- More keyboard shortcuts (better Delphi “feel” to the interface).
Changes to the compiler
- Smart linking of units
- Closure support
- Variants are now fully fledged javascript objects, which minimizes the use of the ASM keyword
- Plenty of speed updates and better performance
- .. and much more! (DWS changelog)
Changes to the RTL
- Fixed a bug in TW3TouchData consuming the wrong event buffer
- More functions to work with images and off screen graphics
- Fixed a minor bug in TW3HttpRequest
We finally have a open, web based forum up and running – so if you have any questions or want to share some code, navigate to http://smartmobilestudio.com/forums/ and join the community (!)
Keyword proposal
Having the IDE integrate with your source-code is no small thing, but it’s also that little extra that makes the code base come alive. A good keyword proposal engine is also instrumental in learning a new RTL (without having to constantly look at the source or study the class hierarchy).
As always is the case with alpha software you can expect some bell’s and whistles – but these will be ironed out as we move along towards our goal.
As of writing support for constants and properties are not yet in place but now that the foundation is in place – these will be in place by the next update.
Image to source-code converter
Since HTML5 applications allows you to embed images directly into your HTML documents (or as CSS properties) we decided to build a little tool to simplify this process. Simply point the wizard to the image-file you want to convert, click one button – and it will be converted to text (base64) and copied to your clipboard.
For an excellent example of how to use encoded images inside your Smart Mobile application, check out Primoz Gabrijelcic’s remake of the classic Delphi TSmiley example. The original TSmiley was an example put together by Delphi icon Nick Hodges many years ago, and has somehow stuck with the object pascal community in near mythic proportions.
Compiler message panel
Just like ordinary Delphi or Lazarus the compiler engine uses by Smart outputs hints, messages and warnings in response to your code. Being able to review and work with these messages is of-course a must – so we are happy to finally have a compiler message panel in place. Whenever you compile your project it will display messages and information about the compilation process – making it a snap to locate errors, remove unused variables or take better precautions whenever the compiler finds a weak spot.
More preferences options
SynEdit (the editor we use in our IDE) is a component that have seen many, many years of development as is regarded as a “classic” in object pascal circles. As such there are a lot of options you can adjust to personalize it. We want to expose as many as possible, and we will keep adding more and more options to our preferences window for each build. In this alpha release we have added better font support and more control over background and text colors.
Sincerely
The Smart Mobile Team