Smart Mobile Studio
  • News
  • Forums
  • Download
  • Store
  • Showcases
    • Featured demos
    • The Smart Contest 2013, Round 1 – Graphics
  • Documentation
    • Get the book
    • System requirements
    • Prerequisites
    • Getting started
      • Introduction
      • Application architecture
      • The application object
      • Forms and navigation
      • Message dialogs
      • Themes and styles
    • Project types
      • Visual project
      • Game project
      • Console project
    • Layout manager
    • Networking
      • TW3HttpRequest
      • TW3JSONP
      • Loading files
  • About

Monthly Archives: November 2018

Development updates

Posted on 25.11.2018 by Jarto Tarpio Posted in Developers log, News

Developing Smart Mobile Studio was a lot of fun last week. We solved two pet peeves in the IDE and improved the Object Inspector. Ever wondered why we couldn’t use the Delete-button in the Search dialog? Or why the Internal Debugger always had to be closed before clicking Execute again? Well, no need to wonder any more – they are fixed now.

In the RTL my all time most frustrating bug in Smart Mobile Studio was also fixed: The way TDateTime worked. As most of you know, TDateTime is a float where the integer part represents the day and fractions the time of the day. So, when you do a EncodeDate(2018,12,1) in Delphi, you get a simple integer: 43435. However, in Smart Mobile Studio, you got a value anywhere between 43434.5 to 43435.5. When you built a time with EncodeTime(8,0,0,0) and wrote it out with TimeToStr(), you didn’t get 8:00:00. Where I live, I got 12:00:00. That’s because the underlying javascript date functions, that the compiler used, built the date in UTC but viewed the time from the time zone where you ran the program. If you Google for date handling in javascript, you’ll find countless pages where js programmers are struggling with these as well.

When I joined the development team more than a year ago, I wanted this fixed yesterday, but it wasn’t simple. I was told that we’d need to upgrade to a newer version of DWScript, which was not an easy task. However, it turned out that the upgrade was not necessary. So last week I went through all the date and time handling functions in DWScript and fixed this for good.

To get all the latest fixes and updates, do follow this forum post. We opened up the DEVELOPMENT-channel in SmartUpdate, so all our users can get fresh updates right away.

Smart Mobile Studio 3.0.1 released

Posted on 08.11.2018 by Jarto Tarpio Posted in News

Smart Mobile Studio 3.0.1 is released

This is the first release since 3.0. Biggest new feature is TW3LeafletMap, which lets you use OpenStreetMap. As it does not need API keys (like TW3GoogleMaps), it’s really fast and easy to use:

– Create a project
– Add a TW3LeafletMap -control on the form
– Set AutoCreateMap to true on the map control

Please see the changelog at the end of this post.

Installers

  • Smart Mobile Studio installer
  • Free command-line compiler

Portable installation

Smart Mobile Studio can also be downloaded with the SmartUpdate utility. Select the MASTER -channel for the official version.

Changes since 3.0

8.11.2018

RTL:
– EventManager:
– Add procedure AllowDefaultAction, that can be called from OnClick when the default
action should happen. For example: To let the virtual keyboard to pop up from OnTouch.
– Bug fixes:
– Native scrolling was prevented if scrolling was done from an unknown element.
– Prevent an extra OnClick from being fired on mobile devices.
– TW3ListView: Bug fix to resizing of items.
– Bug fixes to GeoLocation. Also update the Geolocation demo.
– Deprecate PhoneGapAPI’s JGeolocation functions. SmartCL.GeoLocation.pas should be used instead.
– Fix slider so that OnMouseDown, OnMouseUp and OnMOuseMove can be used.
– TW3TabControl Tab’s OnShow was sent twice for the first tab
– SmartCL.RegEx moved to System.RegEx. Also fixed TW3RegEx.Exec to return a proper empty array instead of nil.
– Bug fix to Chart: TSeriesData.Refresh now also updates the X axis
– TW3Grid:
– Added TW3ImageColumn
– Add Alignment-property to TW3ColumnHeader
– Added a new OnCellControlCreated-event, which fires when a button, toggle, progress bar or image is created.
Makes it possible to change properties of the control easily.
– Added support for OpenStreetMap using the Leaflet library:
– New control: TW3LeafletMap
– New featured demo: LeafletMap

IDE/Compiler:
– Fixed search path compilation issues
– Relative and absolute paths are working now
– Compiler is updated when search path is modified in options
– $I will look for include file in the project folder first
– $R supports absolute paths, wildcards, folder name extension and ($Libraries) macro
– Fix exceptions in Search
– Upgrade to UPX 3.95

23.7.2018

– SmartCL.Effects: Properly handle padding and margins while doing effects.

22.7.2018

– Fix to css-files for selected text in TW3Edit and TW3Memo

Pages

  • About
  • Feature Matrix
  • Forums
  • News
  • Release History
  • Download
  • Showcases
    • The Smart Contest 2013, Round 1 – Graphics
  • Store
  • Documentation
    • Creating your own controls
    • Debugging, exceptions and error handling
    • Differences between Delphi and Smart
    • Get the book
    • Getting started
      • Introduction
      • Local storage, session storage and global storage
      • Application architecture
      • The application object
      • Forms and navigation
      • Message dialogs
      • pmSmart Box Model
      • Themes and styles
    • Layout manager
    • Networking
      • Loading files
      • TW3HttpRequest
      • TW3JSONP
    • Prerequisites
    • Real data, talking to sqLite
    • System requirements
    • Project types
      • Visual project
      • Game project
      • Console project

Archives

  • December 2019
  • December 2018
  • November 2018
  • July 2018
  • June 2018
  • February 2018
  • September 2017
  • April 2017
  • November 2016
  • October 2016
  • September 2016
  • April 2016
  • March 2016
  • January 2016
  • October 2015
  • September 2015
  • July 2015
  • April 2015
  • January 2015
  • December 2014
  • October 2014
  • September 2014
  • August 2014
  • July 2014
  • June 2014
  • March 2014
  • February 2014
  • January 2014
  • December 2013
  • November 2013
  • October 2013
  • August 2013
  • July 2013
  • June 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • March 2012
  • February 2012
  • January 2012
  • November 2011
  • October 2011
  • September 2011

Categories

  • Announcements (25)
  • Developers log (119)
  • Documentation (26)
  • News (104)
  • News and articles (16)

WordPress

  • Register
  • Log in
  • WordPress

Subscribe

  • Entries (RSS)
  • Comments (RSS)
© Optimale Systemer AS