NS Basic/App Studio and PhoneGap

The most important feature of NS Basic/App Studio 1.1 is support for PhoneGap.

PhoneGap is an HTML5 app platform that allows you to author native applications with web technologies and get access to APIs and app stores. It takes your NS Basic/App Studio app and packages it so that it is acceptable for Apple’s App Store, Google’s Marketplace and other platforms.
It also provides additional API functions not found in NS Basic/App Studio.

Depending on platform, these can include:

  • Compass
  • Camera
  • Contacts
  • Files
  • System Information

PhoneGap is free.

Here are a couple of tutorials to help you get started.

Distributing apps using PhoneGap is much more complex than webapps. Android/PhoneGap has a complex installation procedure. While iOS is easier to get going, the 4+ gigabyte download and the complications of the App Store make it at least as complex an undertaking.

NS Basic/App Studio 1.1.0 Released!

NS Basic/App Studio 1.10.0 is ready to download. You can download it from the same URL as before.

The major new thing in this release is support for PhoneGap. There is a new setting in Project Properties, as well as 2 new Tech Notes. Have fun!

Notes:

  1. Support for PhoneGap added.
  2. PhoneGap API is now supported.
  3. IDE: New project property: phonegap
  4. Tutorials: New Tutorial 11: Using PhoneGap to create an iOS App
  5. Tutorials: New Tutorial 12: Using PhoneGap to create an Android App
  6. Code Window: case normalizes control names
  7. Controls: improvements to iMenu
  8. IDE: Now checks for duplicate control names
  9. IDE: Project explorer icons tweaked.
  10. Samples: Improvements to Geolocation, iMenu, getDate
  11. Translator: MsgBox 1 / (1 + 2011 mod 4) fixed.

Read the full release notes here:
http://www.nsbasic.com/app/info/Readme.htm

NS Basic/App Studio 1.0.10 Released!

NS Basic/App Studio 1.0.10 is ready to download. You can download it from the same URL as before.

This update has both fixes and some new stuff.

Notes:

  1. Controls: Buttons now render properly on Android.
  2. Controls: Grid sets width from column sizes if possible.
  3. Controls: iMenu now has addItem, replaceItem and deleteItem methods.
  4. Controls: Text, TextArea: Added onkeypress event.
  5. Deploy: Control positioning changed from Fixed to Absolute.
  6. Docs: Handbook and Language Reference updated.
  7. IDE: “Cannot open project in read only location” fixed.
  8. IDE: firstform property changes if form name changes.
  9. IDE: New icons for Project Explorer
  10. IDE: Sometimes dropdown to go to _click in code did not work.
  11. Language: New screen size functions added to SysInfo().
  12. Samples: iMenu sample updates with new functions.
  13. Samples: New GetDate sample in SpinningWheel subfolder.
  14. Samples: SendDate and CacheEvents have manifest fixed.
  15. Translator: ‘If (a=true) And _ [return] (b=false) Then’ fixed.
  16. Translator: a = { 1: “a”, 2: “b”, 3: “c”} fixed.

The iMenu control has a number of new functions – they are listed under Menu in the Language Reference.

Thanks to Carmine Castiglia for the new iMenu functions. I am sure they will be appreciated by many!

NS Basic/App Studio 1.0.9 released!

NS Basic/App Studio 1.0.9 is ready to download. You can download it from the same URL as before.

This update has both fixes and some new stuff.

Notes:

  1. Code Window: Added more JavaScript keywords
  2. Code Window: REM statements are no longer case normalized.
  3. Deploy: Added message if file does not exist.
  4. Docs: Handbook and Language Reference updated.
  5. Controls: Grid – New functions added. See below.
  6. Controls: MultiInput.disable fixed.
  7. Controls: Scoping problems in complexfunctions fixed.
  8. IDE: Fixed bug with toolbar resizing.
  9. IDE: Project name change in Save As now changes relevant properties.
  10. IDE: Top line in Project Explorer renamed.
  11. Samples: Geolocation overhauled.
  12. Samples: New MoveTheBall shows use of device motion sensors.
  13. Samples: PictureBox updated and improved.
  14. Samples: New SqlSample2 shows reading, writing database.
  15. Samples: Grid sample updated.
  16. Translator: _onevents fixed (for good?)
  17. Translator: a=vbTab fixed.
  18. Translator: If A=”a” Then:MZahl=1:z1 =2:End If fixed.
  19. Translator: if not(a) and not(b) Then… fixed.
  20. Translator: More problems with brackets fixed.
  21. Translator: Problem with Select…Case fixed.

We have made some changes to the Grid control. There are a number of new functions – they are listed under Grid in the Language Reference. One of the new functions is cell(row,col). Please use this function instead of the current Grid_row_col to refer to cells. The Grid_row_col method deprecated and will stop working in a future release.

The changes make the Grid control more HTML compliant. It is possible that your rows will be drawn with a different height than before: you will need to adjust your code if this happens to you.

I would also like to thank Carmine Castiglia for his new Grid functions and Thomas Gruber for the new SQL sample. I am sure they will be appreciated by many!

NS Basic/App Studio 1.0.8 released!

NS Basic/App Studio 1.0.8 is ready to download. You can download it from
the same URL as before.

This update has both fixes and some new stuff.

Here is what is new and fixed:

  1. Code Window: Add Main, vb* as keywords.
  2. Code Window: lots more case normalization is being done.
  3. Controls: New Audio control – now you can play sounds!
  4. Controls: New Video control.
  5. Controls: redundant click definitions removed.
  6. Controls: Uncaught Reference Error fixed.
  7. IDE: Added style property for project.
  8. IDE: Fixed issue with long strings in HTMLview and extraheaders.
  9. IDE: New Check for Update menu item.
  10. IDE: Deploy window now has OK/Cancel buttons.
  11. IDE: New project property: Language – BASIC or JavaScript
  12. Project Explorer: Forms can be expanded or contracted.
  13. Runtime: Added check for valid browser.
  14. Samples: New AudioVideo sample.
  15. Translator: a[0,1] fixed.
  16. Translator: Dim a: a=b() fixed.
  17. Translator: If c(a) Then a.b=”x” fixed.
  18. Translator: Function window_onorientationchange() fixed.
  19. Translator: More problems with brackets fixed.
  20. Translator: If A=”a” Then:MZahl=1:z1 =2:End If fixed.

Notes:

– There are two new controls: Audio and Video. They let you include
sounds and video in your app. Sound is pretty straightforward, but the
video types need to be carefully formatted.

– We’ve had requests from people who want to use the IDE purely with
JavaScript. We have added a language property to the project. While it
defaults to BASIC, it can be changed to JavaScript, in which case, no
translation is done on the code. If you use this feature, let us know
how it works for you.

NS Basic/App Studio 1.0.7 is ready!

NS Basic/App Studio 1.0.7 is ready to download. You can download it from the same URL as before.

This update has both fixes and some new stuff.

  1. Code Window: Case normalization for additional keywords and DOM objects.
  2. Code Window: literal strings are now Courier New as well.
  3. Code Window: Ctl-j now handles unicode characters.
  4. Deploy: Filenames in manifest have spaces or slashes are flagged.
  5. Docs: Handbook and Language Reference updated.
  6. IDE: New extraheaders property lets you add your lines to header.
  7. IDE: Form has new method property: GET or POST.
  8. IDE: New form names now have first letter capitalized.
  9. Runtime: ‘Go’ on some browsers no longer causes unintentional submit.
  10. Samples: Extra ‘ signs removed from some samples.
  11. Samples: HTMLview has Show Map option.
    Deploy: prefixes appear again when deploying to NS Basic App Server.
  12. Translator: a = “a://b” fixed
  13. Translator: a={b:”b”,c:”c”} fixed
  14. Translator: a=new Option(Aus(i),Aus(i)) fixed.
  15. Translator: Function a_b_onclick() fixed.
  16. Translator: If a=”=” Then b=1 fixed
  17. Translator: If Mid(“1”,1,1)=1 Then Print “yes” fixed
  18. Translator: Mod fixed.
  19. Translator: MsgBox Replace(“AB.DEF”,”.”,”X”) fixed
  20. Translator: Print “>” & “,” & “<” fixed
  21. Translator: Print DatePart(“ww”,01 & “.” & 01 & “.” & 2010,2,2) fixed.
  22. Translator: V=(F ^ 3) ^ 2 fixed.
  23. Translator: With Canvas.getContext(“2d”) fixed.

Notes:

– TThe project has a new property: extraheaders. This allows you to add addtional header lines to the <head> section of the generated code. An example would to include an extra JavaScript library, you would add:

<script src="myLib.js" type="text/javascript"></script>

– POST lets you send more data to the server. See Tutorial 07 for a more information.

WebSocket Support

Starting with Version 1.0.6, NS Basic/App Studio supports web sockets. WebSockets define a full-duplex single socket connection over which messages can be sent between client and server. The WebSocket standard simplifies much of the complexity around bi-directional web communication and connection management.

It’s also easy to use from NS Basic. The new release has a sample client app that runs on the device, as well as a desktop server sample. It’s all explained in the new Tech Note, WebSockets.
WebSockets

NS Basic/App Studio 1.0.6 released!

NS Basic/App Studio 1.0.6 is ready to download. You can download it from the same URL as before.

This update has both fixes and some new stuff.

  1. Code Window: Font changed to Courier New.
  2. Controls: MultiInput – setValue on smallField fixed.
  3. Deploy: 4 character prefix not added when deploying to own server
  4. Deploy: Spaces in filenames changed to “_”.
  5. IDE: Bounds are now saved properly on exiting.
  6. IDE: Changing id of a control now updates event dropdown.
  7. IDE: Date meta tag added to headers.
  8. IDE: Generator meta tag added to headers.
  9. IDE: Message displayed if no write permission to current folder.
  10. IDE: Saving a project to a different folder now works.
  11. IDE: Settings file now written out immediately.
  12. nsbapp.com: location of project_template changed.
  13. Samples: HTMLview has display map option.
  14. Samples: New WebSocketsEchoServer.VBExpress2010.zip
  15. Translator: a=”a://b” translates properly
  16. Translator: ElseIf now treated as “Else If”
  17. Translator: Expression on Select statement fixed.
  18. Translator: Global no longer does anything.
  19. Translator: Replace – 4th and 5th parameters fixed.
  20. Translator: Replace(“10,5″,”,”,”.”) fixed.
  21. Translator: TypeName(CInt(1)) fixed.
  22. Tutorials: 09 Websockets added.

This should be our last update this year. We wish all of you a very Happy New Year – next year looks like it will be an exciting one!