Version 5: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 1: | Line 1: | ||
If you own a previous version of AppStudio, you need to buy the upgrade to use Version 5. You can do this from within the app or from our [http://www.nsbasic.com/order.shtml order form.] | If you own a previous version of AppStudio, you need to buy the upgrade to use Version 5. You can do this from within the app or from our [http://www.nsbasic.com/order.shtml order form.] | ||
Revision as of 11:51, 15 April 2015
If you own a previous version of AppStudio, you need to buy the upgrade to use Version 5. You can do this from within the app or from our order form.
Until you have bought the upgrade, you can use AppStudio 5 in Demo mode. Once you buy, your copy will convert automatically to the full version.
Version 5.0.0
Major New Features
- Use Responsive Design to make your app adapt smoothly to different screen sizes.
- Make Windows Executable (exe) apps.
- Ten new controls, including Container, Collapsible, Editor, Password Input and Window.
- Use Visual Effects to show forms.
- Use Modal Forms
- Internet Explorer 11 support.
IDE - General
- New look and feel for the IDE
- Tools Menu: New option to convert a BASIC project to JavaScript.
- Open Sample: Now allows nested folders, for better organization
- Open Sample: New Find option.
- About Screen: reformatted.
- Find: Opens with "Find What" selected.
- Help: now displays HTML formatted text with links.
- Open Sample: Samples are now sorted case insensitively.
- Project Properties: New styleheader property saves your styling rules.
- Properties Window: ChangeForm and firstform now have pickers.
- Properties Window: Events set properly on control copy and paste.
- Run menu: Improved menu names.
- Save: Saving a project no longer changes the Project ID.
- Startup: Projects with deprecated controls will get a message when loading is attempted.
- Startup: Splash screen on Mac OS startup no longer required.
- Startup: When project reopened, tabs are all reopened and same one returned to.
- View menu: New option to close all tabs.
- Installer: Checks if IE11 is installed on Windows
- Installer: Modifies registry so IE11 recognizes AppStudio.
Code Window
- Code Window: New clickable Function List appears in the Toolbox pane.
- Code Window: ToolTips now appear for user functions.
- Code Window: 'error' is no longer auto capitalized.
- Code Window: Code converted to JS is now beautified.
- Code Window: Error when typing 'screen.' fixed.
- Code Window: JSONP files are now edited as JSON files.
- Code Window: Problem with auto indentation fixed.
Design Screen
- Design Screen: controls are relative if their parent is.
- Design Screen: new zoom icon. Use this to shrink size of Design Screen. Disables drag and drop.
- Design Screen: controls can be grouped using Containers.
- Design Screen: Right click to lock controls from accidental position changes.
- Design Screen: Double click opens Code Window.
- Design Screen: Dump wxWebkit. Now smaller, faster.
- Design Screen: Internally uses IE to render controls.
- Design Screen: Paste now shows on the right click menu.
- Design Screen: Snap to grid is now gray, not black.
Project Explorer
- Project Explorer: Folders can now be dragged and dropped.
- Project Explorer: JSON files can now be dragged and dropped.
- Project Explorer: SQLite databases can now be dragged and dropped.
- Project Explorer: Delete file now has confirmation message.
- Project Explorer: Warning if drag and drop of existing file.
Language
- ChangeForm() now supports visual effects.
- Ajax() can now have a callback as a second argument.
- Ajax() can now take an object for its parameters.
- Ajax() now supports a fail callback.
- ReadFile() can now be used asynchronously.
- Case normalization is now handled in Code Window
- Case normalization moved out of hfunc.js, killing hundreds of lines of code.
- Language version bumped. Existing projects will take longer to compile first time they are run using the new version.
- Map is now a keyword.
- Overlay() function deleted - it was obsolete.
- Referencing a control by name itself will return its value.
- Referencing a control by name will return a numeric if possible.
- Style/End Style deprecated. See 'Breaking Changes'.
- NSBCurrentForm changed to NSB.currentForm.
- Arrays no longer have to be declared in all modules.
Toolbox
- New: Container control for text, html and other controls.
- All: New methods to hide and show controls: fadeIn, fadeOut, slideUp, slideDown.
- All: Updated to work with IE11.
- All: -webkit prefix removed from css.
- All: Border properties are now consistant.
- All: BorderColor and BorderWidth added all controls with borders.
- All: Bounds can now be 'inherit' and 'initial'.
- All: Disabled property fixed.
- All: font selectors normalized.
- All: HTML output for borders streamlined.
- All: New onresize event.
- All: no longer load function code that is not needed.
- All: ToolBox Files can now share property definitions.
- Camera: value can now be set at Design Time.
- Date and Time: appearance improved.
- Dialog is now on top of scroll bars.
- Facebook: unneeded font property removed.
- Functions for AppStudio's controls moved from complexfunctions.js to nsbFunctions.js.
- Functions for jqMobile controls moved from complexfunctions.js to jqmFunctions.js.
- Functions for jqWidget controls moved from complexfunctions.js to jqxFunctions.js.
- Generic: Deprecated - replaced by Container.
- Grid: .cellstyle can be read at runtime.
- Grid: .colWidths can be read at runtime.
- Grid: Cells added at runtime are formatted with cellstyle.
- Grid: fix alignment style bug on first column.
- Grid: styling moved from complexfunctions to nsbstyle.css.
- Help now has pointers to Wiki.
- HTMLView: Emitted code improved.
- HTMLView: fix warning from Safari.
- HTMLView: Percentage widths fixed.
- NSB.MsgBox: Appearance improved on RTL systems.
- NSB.MsgBox: formatting error with two buttons fixed.
- NSB.MsgBox: iOS 6 style MsgBoxes are gone.
- NSB.MsgBox: now handles former _msgbox_confirm function.
- NSB.ShowProgress is now modal.
- PayPal: Allows user specified image.
- PayPal: Only deploy image which is used, not all four.
- Toolbox: Now has a Find area on the bottom.
- Toolbox: Right click now opens Wiki page for all controls.
Forms
- New modal property: can make form float modally over rest of app.
- New visual effects: fadeIn, fadeOut, slideUp, slideDown.
- New BackgroundColor property.
- New BorderColor property.
- New BorderWidth property.
- New parentForm property.
- New position property. Can be absolute, fixed, etc. Good for Responsive Design.
- Background renamed backgroundImage.
- Borders can be specified.
- Controls copy and pasted to new forms are not repositioned.
- Form submit properties removed from Toolbox.
- Forms are now a <div> element, not <form>
- Forms can now have bounds in percentages (if fullScreen is false).
Runtime
- Comments between forms added to output code.
- Indenting of code improved.
- Main div renamed to NSBPage from Page_jqm.
- Needless blank lines removed.
- Output code cleaned up.
- Return value of function renamed returnValue (was savethefunction_rval)
- ReturnValue code not created if function does not return a value.
- CSS files moved to head for faster rendering.
- Generated code reformatted by JSBeautifier when possible.
Deploy
- Option to create Windows Executable (exe) added to Run menu.
- Nicely formatted screen listing your deployed apps.
- Native Build Status: Starts automatically after build and auto refreshes.
- Drag and Drop to Project Explorer fills manifest automatically.
- Cache: error message improved.
- Cache: Mime types set on local server - Some Windows systems set incorrectly.
- Cache: New global NSB.cacheStatus is available to your app.
- Cache: User now prompted before web app is updated.
- Cache: To turn off update prompt, do NSB.confirmCacheUpdate=""
- Check Deployment: Additional checking added.
- Native Build Status: Auto refresh every 3 seconds.
- Native Build Status: Links added for iOS 'Error' message.
- Native Build Status: Links added to Tech Note for app stores.
- Native Build Status: Refresh button deleted.
- Native Build Status: Opens automatically after app submitted to PhoneGap.
- nsbapp.com: User image in nsb caused problems uploading to nsbapp.com fixed.
- PhoneGap: CLI progress window can now be closed.
- PhoneGap: Config.xml no longer gets deployed (It's only for PhoneGap)
- PhoneGap: Default configxml updated.
- PhoneGap: New PhoneGap Camera sample.
- PhoneGap: Project Location build uses AuthToken.
- PhoneGap: Splashscreen is now automatically added to manifest.
- PhoneGap: splashscreen property now uses image picker.
- PHP: Umlauts (and other extended characters) are now OK in PHP files.
- Preferences: Static localhost port# added.
- Project Explorer: Entire folders can be dragged and dropped.
- Project Explorer: JSON files can be dragged and dropped for deploy.
- Project Explorer: SQLite databases can be dragged and dropped for deploy.
- Run: from local filesystem uses default browser.
- Run: Local deploy is to 127.0.0.1 instead of localhost to deal with poorly configured systems.
- Run: Local deploy pathnames can now have spaces.
jQuery Mobile Framework
- New: Collapsible control shows popup text.
- All: Toolbox files tweaked for proper display in IE11.
- All: jQuery Mobile 1.3 controls and samples have been removed.
- Button, List: Text appearance improved.
- Button: Groups now have ID numbers.
- Icons now draw more sharply.
- Panel: icon now drawn correctly.
- Select: addItem can now accept multiple items
- TextArea: Added maxlength property.
jqWidgets Framework
- New: DateTimeInput control.
- New: Docking control.
- New: Editor control.
- New: MaskedInput control.
- New: NavigationBar control.
- New: PasswordInput control.
- New: Validator control.
- New: Window control.
- New themes: Android, Web, Bootstrap, Metro and Office.
- All: controls now have hidden, disabled, theme and rtl properties.
- All: Design settings are available at runtime in the NSB.jqxSettings[id] array.
- All: Functions for jqx controls moved from complexfunctions.js to jqxFunctions.js.
- All: Remove jqxSettings_ variables from global namespace. Now in NSB.jqxSettings["controlName"]
- All: Toolbox files have been streamlined.
- Checkbox: Icon updated.
- Menu: wrong height on pulldown fixed.
- Samples: Numerous fixes to samples.
iWebKit Framework
- All iWebKit controls and samples have been removed.
Samples
- Samples can be searched for keywords.
- Samples are now organized into subdirectories.
- New Collapsable sample.
- New Modal form sample.
- New PhoneGap Camera sample.
- New samples for all the new jqWidgets controls.
- All samples updated to use the new release.
- Desktop files for WebSockets samples moved to Wiki in zip format.
- Fix incorrect default splashscreen paths.
- Many updates and fixes.
- Update Ajax samples to use asynchronous calls.
Documentation
- TechNotes: New Responsive Design Made Simple
Internals
- Internals: PyV8 no longer used.
- Internals: wxWebkit is no longer used.
- Internals: wxPython updated to 3.0.0.
- Internals: node.js now now used for translation and syntax checking.
- Internals: PyInstaller is now used to create Mac installer instead of Py2App.
- Internals: Complexfunctions and hfunc cleaned up using jshint.
- Internals: Complexfunctions and hfunc reformatted.
- Internals: hfunc and functions files minified.
- Internals: exception handling improved.
- Internals: FastClick updated to 1.0.6
Breaking Changes
- Windows XP is no longer supported. Microsoft is no longer issuing security patches. http://windows.microsoft.com/en-ca/windows/end-support-help
- Internet Explorer 11 is now a prerequisite on Windows systems.
- iWebKit and jQuery Mobile 1.3 are no longer supported
- Chrome Packaged Apps are no longer supported - replaced by full Windows exe apps.
- Form submit() removed from Toolbox. Ajax is a better way to do this.
- iOS 6 style MsgBoxes have been updated to current style.
- Style/End Style is no longer supported. Putting styling rules inline in code is messy and can cause performance problems. Copy the code inside your Style/End Style blocks and paste into the new styleheader Project property. It will then be put in the correct place at runtime.
- jqWidgets: settings variable renamed from controlName_setting to NSB.jqxSettings["controlName"]
- NSBCurrentForm replaced by NSB.currentForm