Version 6: Difference between revisions

From NSB App Studio
Jump to navigation Jump to search
Line 16: Line 16:
# Controls: hidden property is now a style, not an attribute. Some hidden settings may need to be refreshed.
# Controls: hidden property is now a style, not an attribute. Some hidden settings may need to be refreshed.
# IDE: Bootstrap Theme Customizer added to Tools menu.
# IDE: Bootstrap Theme Customizer added to Tools menu.
# IDE: Open Project CSS added to the Project menu.
# iScroll: Zoom functions restored
# iScroll: Zoom functions restored
# Project Properties: 'styleheaders' renamed 'projectCSS'.
# jQM: Improvements to [[List]] styling.
# jQM: Improvements to [[List]] styling.
# jQW: hidden and style attributes now work for all controls.
# jQW: hidden and style attributes now work for all controls.

Revision as of 10:11, 24 November 2016

Upgrading

If you have AppStudio 5 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 6.0.4 (not released)

  1. Bootstrap: .resize, .Top, .Left, .Width, .Height added to all controls.
  2. Bootstrap: Dropdown select area drawn better in Design Screen.
  3. Bootstrap: Fliptoggle (Bootstrap) - new control.
  4. Bootstrap: Input now has .files property for inputType file.
  5. Bootstrap: Panel - allow HTML in fields
  6. Code Window: Commit code changes before translation.
  7. Code Window: Override toolbox default language when needed.
  8. Controls: Label select area drawn better in Design Screen.
  9. Controls: hidden property is now a style, not an attribute. Some hidden settings may need to be refreshed.
  10. IDE: Bootstrap Theme Customizer added to Tools menu.
  11. IDE: Open Project CSS added to the Project menu.
  12. iScroll: Zoom functions restored
  13. Project Properties: 'styleheaders' renamed 'projectCSS'.
  14. jQM: Improvements to List styling.
  15. jQW: hidden and style attributes now work for all controls.

Version 6.0.3

  1. Design Screen: Positioning logic improved for relative and static.
  2. Libraries: Google Drive added to Libraries - makes Google Drive easier to use.
  3. Controls: Bootstrap Dropdown selectable in Design Screen with static positioning.
  4. Controls: Bootstrap Slider: Use .control.value=x instead of .setValue(x)
  5. Controls: Common Grid style attribute fixed.
  6. Controls: jqWidgets DataTimeInput requires fastclick = false.

Version 6.0.2

  1. Bootstrap: New Slider control.
  2. Controls: Camera control rewritten so it works with Bootstrap. Delete and re-add the control.
  3. Design Screen: Responsive forms now use static positioning.
  4. Design Screen: jQM Checkbox and RadioButton samples render properly on Mac.
  5. Design Screen: Show warning if Bootstrap and jQuery Mobile controls used in same project.

Version 6.0.1

  1. Bootstrap Badge: Add a space to the left.
  2. Bootstrap Icons: Can now be added/changed at runtime.
  3. Bootstrap Jumbotron: Fix error when optional button removed.
  4. Bootstrap Jumbotron: HTML and multiple lines in value and header.
  5. Bootstrap Modal: HTML and multiple lines in value, header and footer.
  6. Code Window: Adding event to form does not also add it to Global code.
  7. Code Window: .xhtml is now an editable type.
  8. Container: .addChild function supported.
  9. Design Screen: Grandchildren can now be copied.
  10. Documentation: offline Wiki updated.
  11. Header: Buttons as children now work.
  12. Header: .addChild function supported.
  13. PlaySound() now has a volume option.
  14. jQM Checkboxes: problem with horizontal checkboxes fixed.
  15. jQM Collapsible: Can now be used as a container.
  16. jQM Select: Multi select added.
  17. jQM Select: setIndex was indexing incorrectly.
  18. Project Properties: New "Use strict" option does additional syntax checking, such as undeclared variables.
  19. Project Properties: Content Security Policy moved from PhoneGap. Add "connect-src".
  20. Runtime: Allow special characters in the code.
  21. Runtime: code.js is now obfuscated when that option is selected.
  22. Runtime: better error message when initializing undefined control.
  23. Samples: new PhoneGapSMS sample.
  24. ServerStorage deprecated.
  25. Translations: Arabic complete. (Thanks, Aya!)

Version 6.0.0

Version 6 has been released! 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 6. You can do this from within the app or from our order form.

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

Major New Features

  1. Volt support added. Replaces AppStudio Server, adds powerful new features.
  2. Bootstrap framework added. Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web. It's well thought through and is easy to use with AppStudio. For more information, see Introduction to Bootstrap.
  3. Support for Google Drive API. Now you can access files on your Google Drive from AppStudio. One interesting application is to use Google Spreadsheets as a database for your app. You can add, delete and update rows in the spreadsheet from AppStudio.
  4. Nested controls: Up till now, you could only put controls one level deep in Containers. Now you can put Containers inside of Containers - and there are more controls which can act as containers. Any level of nesting is possible.
  5. Drag and Drop in the Design Screen: Use this to easily add children to containers.
  6. Support for Stripe Payments: Stripe is an easy way for your app to get payments by credit card. No special bank account is needed.
  7. Billing: AppStudio is now distributed using a subscription, rather than a flat license charge.

IDE - General

  1. Mac: AppStudio can now be executed by any user.
  2. Save preserves the entire environment, not just the app itself.
  3. View Menu: checkmarks are now updated properly.
  4. Copy and paste of Containers and Forms now gives controls unique names.
  5. License Agreement expanded to include Volt Terms of Service.

Code Window

  1. Code version bumped to 6. Projects will take longer to compile first time they are run.
  2. Statements with the word 'Declare' in them are translated properly.
  3. JavaScript: Property Window Event does not create new event handler if one exists.
  4. JavaScript: Shows all functions in the Functions window.
  5. Obsolete properties are being cleaned out of .nsx files in new code version. Keep a backup!
  6. BASIC indentation while editing improved.

Design Screen

  1. Copying a container now renames the children to unique names.
  2. Rotate screen refreshes properly.
  3. Adding a control in Responsive mode now only adds 'float:left;' if needed.

Toolbox

A lot of cleanup was done to controls. Refactoring was done in the Toolbox files to reuse common code and make controls more constant.

  1. All controls have new icons.
  2. AppStudio controls have purple icons.
  3. Attribute property is now an edit window.
  4. Container: New font and margin properties.
  5. Controls which act as Containers now have an addChild() function.
  6. Containers default to height of 'auto'.
  7. Image: New border and margin properties.
  8. Label: New border and margin properties.
  9. Label: Proper cursor now appears when hovering over control.
  10. Label: Width defaults to auto, based on actual text.
  11. New Header control. Simple, lightweight form header.
  12. New Stripe control. Accept Stripe payments in your app.
  13. New QRCode control. DIsplay QR Codes in your app.
  14. PictureBox: New color, font and margin properties.
  15. Property Files added for ToolBox Files. Recurring properties now easier to create and are more consistant.
  16. Property Files: Fonts, borders, colors and more are in property files.
  17. Property Files: Parts of Page.js moved into property files (exe, PhoneGap)
  18. ToolBox Files: new ! operator allows properties to be evaluated within properties.

Project

There are a number of changes to Project Properties. The most visible is that the user will no longer be asked if a new version of the app should be installed - it just happens, unless the newVersionWarning property is set to true. Setting FastClick to false will make your app smaller and a bit faster to load. Setting enableBrowserArrows to false will give your app a shorter URL.

  1. Properties: enableAppScrolling: needs to be true for jQM Swipe.
  2. Properties: enableBrowserArrows now defaults to false.
  3. Properties: Fastclick defaults to false. Most browsers don't need it anymore.
  4. Properties: New BootstrapPath property.
  5. Properties: New BootstrapTheme property.
  6. Properties: New contentSecurityPolicy property.
  7. Properties: New newVersionWarning property: If false, new version of your app simply loads in browser.
  8. Properties: 'theme' renamed 'jQueryMobileTheme'.
  9. Properties: StopOnError works properly at runtime.

Forms

  1. New Project: Form type added for Responsive Forms. Forces relative positioning.
  2. Properties: OpenMode behaves properly at runtime. (Set this one to false if your form appears incorrectly at startup.)

Runtime

  1. hfunc.js no longer uses eval() function.
  2. NSB.Print window closes more easily: tap anywhere on it.
  3. HTML command is deprecated.
  4. JavaScript functions string.startsWith and string.endsWith work on IE11.
  5. NSB.MsgBox custom buttons fixed on FireFox.

Preferences

  1. New Volt Tab added.

Deploy

We've reorganized how the project is written out when deployed. Operationally, everything works as before. When you open the project in the Chrome Debugger, you'll notice the differences. Your code is now in a file of its own called code.js. All the code generated by AppStudio stays in index.html. Any JavaScript code modules are kept as discrete files instead of being merged into index.html. The result is that it will be much easier to find your work in the deployed project. Load times for your app may go down due to caching.

We've also fully implemented https for all our web services.

  1. Deploy to Volt added.
  2. Manage your Volt App added.
  3. Sign-up/Sign-In into Volt added.
  4. Many changes to runtime code organization to make code more readable and easier to debug.
  5. All script tags are now in <head>.
  6. BuildStatus: Now defaults to same download location as previous time.
  7. Deploy to Volt Server now uses https.
  8. External scripts remain as external scripts: they do not get merged in main app.
  9. If obfuscation fails due to syntax errors, AppStudio recovers gracefully.
  10. JavaScript code modules are no longer merged in index.html, to make generated app easier to read and debug.
  11. Open app after local deploy fixed.
  12. Remove iOS startup image code - no longer supported in iOS.
  13. Unicode in deploy path should work now.
  14. User code is now deployed to its own module called code.js, loaded by index.html.
  15. Chrome Apps deprecated. Google is dropping support
  16. Deploy to Dropbox deprecated. Dropbox no longer will let you deploy apps from Dropbox folders.

PhoneGap

We've made a number of changes to make PhoneGap easier to use. The workarounds which were needed to deal with new features of PhoneGap or new browser requirements are now included. The new QR code on the BuildStatus screen is a big timesaver!

Changes to configxml will not be applied automatically. Grab a fresh configxml from a new project and paste it into your existing project to get all the latest features.

  1. 'No content-security-policy' warning no longer needs a workaround.
  2. New properties added so Status Bar workaround no longer needed.
  3. BuildStatus: Now displays QR Code to download directly to Android device.
  4. JDBC Plugin added for remote database access from Android devices.
  5. Names of icons and splashscreens normalized with PhoneGap docs.
  6. minVersion removed from configxml template.
  7. Patch to get rid of period PhoneGap puts at start of download filename.
  8. PhoneGapBarcode sample needs PhoneGap version set to cli-6.1.0
  9. Samples updated to latest PhoneGap specs.
  10. SplashScreen workaround no longer needed.
  11. Support for more screen sizes/densities added.
  12. Updated whitelist on all samples.
  13. Whitelist workaround no longer needed.
  14. Zeppelin supported for generating icons and splashscreens.

Bootstrap Framework

  1. Bootstrap is a modern, responsive framework. See Introduction to Bootstrap.
  2. All Bootstrap icons are deep purple.
  3. 24 new controls!

jQuery Mobile Framework

  1. All jQM icons are now orange
  2. Button: width defaults to auto, adjusts in size to text.
  3. For jQM swipe to work, Properties_Window#Project_Properties in Project Properties must be true.
  4. List: inconsistency in naming of value fixed. Always a string now.
  5. Select: Add country picker.

jqWidgets Framework

  1. All controls: Added WindowsPhone theme.
  2. jqWidgets icons are blue.
  3. jqwPasswordInput: Add missing icon.
  4. jqxComboBox: Add onselect event.
  5. jqxComboBox: Add some missing files to manifest.
  6. jqxDragDrop: fix disabled property.
  7. jqxListBox: add filterable and filterPlaceHolder properties.
  8. jqxScheduler: New control added.

Samples

  1. Ajax samples: paths to server simplified.
  2. BarCode: URLs updated.
  3. Bootstrap samples added.
  4. Compass sample now works on Android too.
  5. New DragAndDrop sample.
  6. New GetUserMediaCamera sample.
  7. New GoogleSpreadsheet sample.
  8. New HeaderBodyFooter sample.
  9. New PhoneGapUDP sample.
  10. New Print2PDF sample.
  11. New QRCode sample.
  12. New SelectCountry sample. Uses jQM Select control.
  13. New Stripe sample: Accept Stripe payments.
  14. New Volt Users sample.
  15. Samples no longer reference jQM Theme 'c'.
  16. ServerStorage: Sample removed.
  17. Signature sample fixed on Edge.
  18. Volt samples added.

Documentation

  1. Wiki updated for Version 6.
  2. Translation files updated.
  3. Slovenian is complete. (Thanks, Oton!)
  4. Thai is complete (Thanks, Theprasit!)
  5. Turkish is complete (Thanks, Bahattin!)
  6. Romanian is complete (Thanks, Mircea!)
  7. German is complete (Thanks, Bernd!)
  8. Spanish is complete (Thanks, Mario!)
  9. Portuguese is complete (Thanks, Ricardo!)

Internals

  1. All NS BASIC websites now support https:
  2. App and License folders reorganized.
  3. Code signing certificate updated.
  4. Copyright changed to 2016.
  5. DropDMG (used to build Mac Installer) updated to 3.4.
  6. iScroll updated to 5.2.
  7. Wx updated to 3.0.

Breaking Changes

  1. HTML command deprecated. You can't put blocks of HTML in the middle of your code anymore. There are better ways to do this.
  2. Projects saved in AppStudio 6 cannot be opened in AppStudio 5. Keep a backup!
  3. If you want to return to AppStudio 5, do an uninstall of AppStudio 6 before installing AppStudio 5.
  4. The first time you deploy your AppStudio 6 app to your server, do a Full Deploy so all the updated files get copied.
  5. Chrome Apps deprecated. Google is dropping support
  6. Obsolete properties are being cleaned out of .nsx files in new code version. Keep a backup!
  7. Deploy to Dropbox deprecated. Dropbox no longer will let you deploy apps from Dropbox folders.
  8. ServerStorage is no longer supported.