We are very proud to release Smart Mobile Studio 2.0!
With version 2.0 a new visual designer is available that finally offers support for event handling right from the designer. Also a package manager allows to extend Smart Mobile Studio with 3rd party components (new chart and grid components are already shipped as packages).
To increase our market we have not only created 4 different editions (see below) tailored around the most popular demands, but also included a new command-line compiler, which is free of any charge! This allows building your projects on non-licensed machines (such as build servers).
Beside this, dozens of smaller changes has been made since the last release. A full change log can be found below.
Oh, this is really a great release 🙂
—
Packaging
Smart Mobile Studio is now available in four editions:
- Basic: Contains support for developing canvas, console, Espruino, Node.JS, and web worker applications. (Only $42/year)
- Professional: Contains everything in the Basic edition with addition of the visual designer and support for developing form-based visual applications. ($149/year)
- Enterprise: Contains everything in the Professional edition with addition of the RemObjects and DataSnap connectors. ($399/year)
- Educational: Special version, free for educational purposes. Can be used in schools, code clubs etc.
All licenses include one year of first class support. After that period the software will continue to work, but we don’t give support and it won’t be possible to install further updates.
Trial License
If you would like to try Smart Mobile Studio, send a request to trial-license@smartmobilestudio.com, and we’ll send you a time-limited license key.
Educational License
If your school or your local code club would like to use Smart Mobile Studio in the education, then send an e-mail to edu-license@smartmobilestudio.com with a short description of intended use.
The educational license key is not intended for individual students. Get your teacher or someone at the school administration to send a common request on behalf of all students.
Compiler
New functionality
- Added command line compiler smsc.
- Added support for external variables and external class variables.
- Scriptable HTML templates and CSS scripts.
- CSS is compressed during compilation.
- New ways to include an external resource:
- {$R ‘resource.js’} or {$R ‘file:resource.js’} will copy the resource to the ‘res’ folder during compilation and link it into the program (‘<script>’ statement will be generated in the HTML code or ‘require’ will be generated for NodeJS code).
- {$R ‘http://server/path/script.js’} or {$R ‘https://server/path/script.js’} will just link the code to the program without copying anything.
- You can specify MIME type for the resource by prefixing it to the resource name: {$R ‘text/javascript:http://server/path/file.php’}. If the MIME type is not provided, it will be generated automatically from the extension part of the resource name.
- Compiled program is stored in a ‘www’ subfolder (previously it was stored in a ‘bin’ subfolder).
Improved functionality
- Improved codegen for static and static sealed classes.
- Improved codegen for “new JObject”.
Bugs fixed
- Fixed various codegen problems related to constant arrays, external classes and nested records.
RTLNew functionality
- Added support for the Espruino microcontroller.
- Added support for FireFox OS v1.1 API.
- Added support for Android Home Screen applications (http://www.delphitools.info/2013/10/16/chrome-web-apps-in-android/).
- Added wrappers for JavaScript functions prompt() and confirm().
- Added TMetronome class (http://www.delphitools.info/2013/10/18/time-stepping-for-games-and-simulations/).
- New units: w3WebWorker, w3c.WebSpeechAPI, Chrome.Serial, Firefox\Blutooth.
- Added methods to the w3colors unit.
- Added helper functions and operators to the TPoint and TPointF classes.
Improved functionality
- Redesigned (faster) GameView.
- Improved TW3Button with ‘pressed’ state.
- More IE shims.
- Improved W3Effects.
- Improved ColorToWebStr.
- Improved TW3BufferedImage.SetSize.
- Improved compiler messages window.
- Fixed Elapsed function in the TStopWatch class (System.Diagnostics).
Bugs fixed
- Fixed System.Diagnostics performance timer fallback (for Safari).
- Fixed HSL delta methods in w3colors.
IDENew functionality
- New visual designer with support for UTF-16 properties and event management.
- New component package manager.
- New project file format, incompatible with older Smart versions. Projects are now stored with a .sproj extension and forms with a .sfm extension.
- New, XML-based preferences file (preferences.xml) replaced INI-based file (preferences.ini).
- Source files are saved in UTF-8 format.
- Editor supports most important Wordstar-type keyboard shortcuts.
- Added NodeJS and WebWorkers project types.
- Added tool that creates DataSnap service connector (Delphi Enterprise must be installed on the same computer).
- Build automation with build scripts.
- Source maps.
- Lines/blocks can be moved up/down with Alt+Shift+Up/Down.
- Internal browser allows taking screenshot of the running application.
- Configuration option “Save projects before compilation”.
- A project can be compiled and run even if it was never saved.
- Implemented Open, Save, Save As, Save Project As.
- Metadata information can be set for a project.
- IDE state related to the project (open tabs, top line, bookmarks) is stored in the <projectname>.dsk file and is restored when a project is open.
- Redesigned template (HTML and CSS) handling.
- Ctrl+click ‘link’ highlighting.
- It is possible to move through the navigation history with Alt+Left and Alt+Right hotkeys.
- Source code change bar to indicate changes (original, modified, saved).
- Default project options for each project type can be configured.
- Added compilation options ‘Automatically refresh in browser’ and ‘Handle uncaught exceptions’.
- Added support for defining conditional compilation symbols on a project level.
- Redesigned ‘run’ experience (http://smartmobilestudio.com/2013/10/12/new-ways-to-run-a-project/).
- Added ‘Go to line’ (Alt-G) command.
Improved functionality
- Project title can contain spaces.
- Custom HTML & CSS code is now separated from general resources
- Better structure of project options (removed dead settings)
- Application adapts to low-resolution displays.
- Improved HTML highlighter, now supports embedded JavaScript, DWS, and CSS.
- Dotted unit names are supported.
- Snippets are stored in a separate folder, one snippet per file.
- Redesigned server/internal browser forms and execution options.
- Added shortcuts to toggle Compiler Messages and Mini Map visibility.
- Improved renaming of units.
- Better detection of default IP address used in the built-in server.
- Full file path is shown in editor tab hint.
- Implemented menu commands to make all files in the project internal or external.
Bugs fixed
- Code completion works in .spr files.
- Highlighter preview (in Preferences) uses currently selected editor font.
- Configured editor font is correctly displayed when Preview dialog is open.
- Preferences, Editor, Source scanning, Update interval now regulates the background compiler.
- Internal browser is reloaded when program is re-run (F9).
Removed functionality
- Compact toolbar.
- Exit button in the toolbar.
- Removed ‘Visual components project (New Project Script Demo)’ project type.
OtherNew functionality
- New demos: eSpeak, TransitionEffects, Complex Numbers, node.JS Demo, Draggable Panel.
- Added touch and acceleration support to the “Box2D Demo” project.
Changed
- Renamed some demos (removed ‘by XXXX’).
Removed
- Removed demo “Box2D Integration”.
Known issuesRTL
- Packages can not yet contain CSS code for styling
IDE
- Some available Wordstar shortcuts conflict with other shortcuts (case #723)
- New Visual Designer issues
- Multi-select not yet working (while it appears to be, case #903)
- Bring to front / send to back might not work properly (case #917)
- Non-Nudgeblock feature not yet available (case #888)
- Live Preview is only working in legacy mode (will be updated in v2.1)
- Welcome Page outdated and not customizable (case #899)
- Multi-select not yet working (while it appears to be, case #903)
- Bring to front / send to back might not work properly (case #917)
- Non-Nudgeblock feature not yet available (case #888)
- Live Preview is only working in legacy mode (will be updated in v2.1)
—
Sincerely,
The Smart Mobile Studio Team