Version 7

From NSB App Studio
Revision as of 11:50, 11 September 2018 by Ghenne (talk | contribs) (→‎PhoneGap)
Jump to navigation Jump to search

Major New Features

  1. Multifile support: The way projects are save has been reorganized. The main .project file just contains values for project properties. All code, HTML and other text entities are now stored as separate folders and files.
  2. The Project Folder is the Project. All files for a project are now stored in the project folder. Two projects cannot share a folder. If you need to share files between project, use symbolic links.
  3. Bootstrap 4 support added. See what's different from Bootstrap 3.
  4. GitHub Support: AppStudio projects are now GitHub compatible.
  5. Version control: You can now use git (or other utility) for version control.
  6. Team Development: The combination of multifile and GitHub allows a team of developers to work on the same project.
  7. External Editing: Having all code, HTML, etc. in separate files allows the use of other editors.
  8. Toolbox reorganized: All framework related files are now in folders for that framework.
  9. Advanced syntax checking for JavaScript in the Code Window.
  10. Internationalization lets your app work in multiple languages.
  11. You can make PDF files from your forms for emailing, etc.
  12. Validation allows you to automatically check the contents of forms.
  13. node.js can now be used in AppStudio projects.

Upgrading

If you have AppStudio 6 or older, you will need to get the upgrade to use these new features. You can order it here.

If you like would to try it first, download from the 'Check for Updates' screen in the Help menu. You'll get a demo copy.


Version 7.0.0

Version is still under development. Here's a list of what is new: All items are subject to change.

If you own a previous version of AppStudio, you need to buy the upgrade to use Version 7. You can do this from within the app or from our order form.

Until you have bought the upgrade, you can use AppStudio 7 in Demo mode for up to 30 days. Once you buy, your copy will convert automatically to the full version.

IDE - General

  1. Only changed files are written out on save - saving is faster.
  2. App's 'description' property shows in the Help Window when Project Properties is selected.

Code Window

  1. JavaScript syntax can be checked with a right click. Uses eslint with the AirBNB Style Guide.
  2. Format Code now uses the correct indent setting from Preferences.
  3. JavaScript arrow functions now appear in the Toolbox panel.
  4. JavaScript myFunc = function() functions now appear in Toolbox panel.
  5. Switching between tabs made faster.
  6. Project CSS now opens in the Code Window.

Design Screen

  1. Rendering is now twice as fast. Noticeable in big projects.

Project Explorer

  1. Cut, Copy, Paste added to right click on Project Explorer.
  2. Drag and Drop to Project Explorer window works. Files are copied into the project and put into the 'includes' folder.

Libraries

  1. Dropbox Datastores removed - no longer supported by Dropbox.
  2. fastclick.js is now stored in the Libraries folder.
  3. i18n added. Lets your app work in multiple languages.
  4. iScroll.js is now stored in the Libraries folder.
  5. jquery-validation added. Check the values of input fields automatically.
  6. jquery.modal.js is now stored in the Libraries folder.
  7. SpinningWheel removed - obsolete.

Toolbox

  1. Bootstrap 4 framework added.
  2. Container: Add children directly to the control, not a contained DIV. Good for Bootstrap.
  3. AS controls: Redundant 'hidden' attribute removed.
  4. Toolbox Files: New !g suffix. Combines multiline statements.
  5. Toolbox Files: New {eval expression} operator. Allows expression evaluation.
  6. Toolbox Files: Anything which looks like a list is converted to a string.
  7. Toolbox Files now end in .json, not .js.
  8. Toolbox Files: New _jqmInUse variable. Set to true if jQuery Mobile in use.
  9. All controls: removed unneeded data-role=none attribute.
  10. All controls: files are now in folders by framework.
  11. All controls: Unneeded references to jQuery removed.
  12. All controls: New 'display' property. Can be block, none, etc.

Project

  1. Projects are saved one (and only one) project per folder.
  2. New project folders have a .appstudio suffix: Project1.appstudio
  3. Project files are now .project, not .nsx.
  4. Unused 'hiddenHeaders' property removed.
  5. Obsolete 'framework' property removed.
  6. Open Project: Click on Open button on Project.appstudio folder and the project will open.
  7. DefaultFormSize: Option for 800x1200 added.
  8. Project CSS now opens in the Code Window.

Forms

  1. Form.reset() now clears subforms and other controls.

Runtime

  1. Bootstrap 4 functions are processed using Babel for IE compatibility.
  2. ECMA5: Some declarations fixed for standard.
  3. Generated code: Control bounds of 'auto' no longer output - code is smaller.
  4. jQuery: The latest version of jQuery 3 is used, except for jQuery Mobile projects, which are stuck with jQuery 2.
  5. loadType: new property sets how each external JavaScript file is loaded.
  6. Octal notation: now works properly in numbers.
  7. Snackbar(message, actionText, action): New function added.

Preferences

Deploy

  1. close.png was not being used, so is no longer deployed.

PhoneGap

  1. configxml: In whitelist, sets allow-intent to a default value. Allows mailto:, tel:, etc.
  2. PhoneGap Status screen: Improved error messages.
  3. PhoneGap Status screen: No longer modal, so you can keep working while watching status.
  4. Version: Now defaults to cli8.0.0. Icons and splashes are now required.
  5. WinPhone: option deleted. No longer supported by Microsoft.

Frameworks

AppStudio

  1. All of the AppStudio controls are now stored in the Toolbox in a folder named 'as'.

Bootstrap 4

Bootstrap 4 has been added as a new Framework. It should be used for new projects, though Bootstrap 3 still appears and works fine. You cannot use BootStrap 3 and 4 in the same project - they conflict.

  1. Icons: Uses open-iconic icons instead of Font Awesome. Important differences are listed here.
  2. Themes: 6 new themes.
  3. Hamburger: Remove default value for background color.

Bootstrap 3

  1. FlipToggle, Image, Media, Slider and Thumbnail: File dependencies corrected.
  2. Select: 'undefined' no longer appears in definition.

Common

  1. Header: Now always positions in top left of form.
  2. Line, ProgressBar: Redundant properties removed.
  3. Signature: Redone. Works on PhoneGap, has variable line thickness.

jQuery Mobile

jQuery Mobile has gone yet another year without a new release - not even for maintenance. It's looking pretty dead. This framework is not recommended for new projects.

  1. Collapsible: Now properly identified as a jQM14 control. Breaking change - you will need to delete and add back to your project any Collapsible controls you are using.
  2. Select: selectedItem() and selectedValue() no longer have error is no items on list.

jqWidgets

  1. All controls: Cleaned up use of _base.
  2. jqxDateTime: now works with latest jqWidgets.
  3. jqxDragNDrop: now works with latest jqWidgets.
  4. jqxLinearGauge: New control
  5. jqxScheduler: added agendaView, other tuneups.
  6. jqxTree: now works with latest jqWidgets.

BASIC

  1. New Const keyword for declarations.
  2. VarType(false) now returns the correct value.

Samples

  1. All: Converted to new save format.
  2. All: Lots of fixes and updates.
  3. Bootstrap 4: All controls have new samples.
  4. i18n: New sample shows how Bootstrap 4 apps can be in multiple languages.
  5. Office365: New sample shows how to use the Microsoft Graph API to read data from Office 365.
  6. Open Sample: Error when closing an item fixed.
  7. PhoneGapBarcode: New sample scans barcodes.
  8. PhoneGapMail: New sample emails current Form.
  9. PhoneGapReceiveSMS: New sample.
  10. Snackbar: New sample.
  11. Validation: New sample.

Documentation

Internals

  1. Code Signing certificate updated.
  2. Node updated to Version 8.

Breaking Changes

  1. Collapsible: Now properly identified as a jQM14 control. You will need to delete and add back to your project any Collapsible controls you are using.
  2. jqxScheduler: The views property must be an array. Examples: ["monthview"] or ["dayview", "weekview", "monthview", "agenda"]