NS Basic/Symbian OS Enhancements

June 25, 2009

© NSB Corporation. All rights reserved.


This is a release by release listing of all the changes to NS Basic/Symbian OS. To upgrade your copy to the latest version, visit our Upgrade Order Page.

Contents

NS Basic/Symbian 1

What's new in 1.2.1

  1. Pop up trigger and checkbox colors fixed.
  2. Memory leak fixed.
  3. Start adding support for Nokia Ovi Store.
  4. Popup keyboard on 5800 fixed.

What's new in 1.2.0

  1. BlueTooth RFCOMM communications support added.
  2. IrDA communications support added.
  3. Serial Communications support added.
  4. New communications functions: (See docs below)
  5. Support for the latest Nokia 5800 ROM firmware added.
  6. Support for the Nokia N96 added.
  7. UIQ: Input text box now better supported.
  8. S60: Cosmetic improvements in landscape mode.
  9. IDE: Updated to use Windows XP theme - more modern look.
  10. New sample: Bluetooth RFCOMM
  11. New sample: SerTester
  12. New Tech Note 16: Communications
  13. Language Reference updated
  14. Other minor fixes and improvements.

Documentation Notes for 1.2.0

  1. Communications: New functions have been added for serial, IR and Bluetooth communication. Complete documentation is in the Language Reference, under the Help menu.

    The new functions are: SerialOpen, SerialClose, SerialSet, SerialSend, SerialRecieve and SerialReceiveWithEvents. See the Language Reference for details.

  2. Chain and AppLaunch: These statements will only launch programs created using NS Basic/Symbian OS. The .prc files which are in the \NSBasic_Symbian\Downloads files should be included as resources in your main application, so they are installed with your app.

What's new in 1.1.0

  1. Support added for S60 5th Edition
  2. Support added for S60 TouchScreen devices (Nokia 5800)
  3. Support for Screen Rotation on S60 devices added.
  4. Improved display at runtime
  5. Buttons are now slightly rounded to match 5th Edition buttons
  6. IDE: Bitmaps are now displayed on the design screen.
  7. IDE: Gradient buttons and labels can now be created. (See docs below)
  8. IDE: Other fonts can now be used on buttons and labels.
  9. IDE: Images on Bitmaps can now be sized to fit. (See docs below)
  10. IDE: Unnecessary bitmap depths removed from Bitmap Resource.
  11. IDE: Fixed 'File Not Found' when saving project to another folder
  12. IDE: Open Image now defaults to Bitmap directory
  13. IDE: If Bitmap ID is changed, project is marked as dirty.
  14. IDE: Error 381 when changing Themes fixed.
  15. IDE: NS Basic/Palm 7 projects can be opened by NS Basic/Symbian.
  16. IDE: Themes now work for unicode systems (DBCS)
  17. IDE: Ctrl-P shortcut to print added.
  18. Libraries: NSFileLib added.
  19. Samples: FileLibDemo added.
  20. Samples: FileLibTest added.
  21. Samples: BetterBitmap added.
  22. Samples: GradientButtons added.
  23. Samples: Derby sample updated.
  24. Samples: Names improved for Shared Samples.
  25. Samples: Added missing "Doc Reader Guide.pdb"
  26. Tech Note 23 added: Using FileLib.
  27. Tech Note 12: Link to sample of Symbian Native Library added.
  28. Runtime: If theme is missing, execution continues without an error.
  29. Runtime: SetTheme() function added.
  30. Runtime: Entire region of a bitmap is now clickable.
  31. Runtime: Topmost object gets the click, instead of bottom most.
  32. Runtime: Defaults to 16 bit mode
  33. Help: Language Reference updated.
  34. Tutorial 09 added: Bitmaps, Gradient Buttons and Pictures.

Documentation Notes for 1.1.0

  1. Gradient Buttons and Labels: Now you can create objects that have a background that gradually goes from one color at the top to another at the bottom. The Bitmap object has been enhanced with several new properties that can be set at design time. The image of what it will look like is displayed in the Design Screen. At compile time, the image is transferred into a bitmap resource in the project, and saved as a file in \NSBasic_Symbian\bitmaps\.

    The new properties are:
    Gradient Color1: The top (or left) color.
    Gradient Color2: The bottom (or right) color
    Gradient Style: 1 for top to bottom, 0 for left to right.

    You can use a bitmap instead of a label of the same size. Since Bitmap objects can have a script (just like a Button object), BitMap object buttons work the same way as Button Object buttons - but there are more options on appearance.

  2. Using other fonts: Bitmaps can now have text on them, using any font that is on your desktop system. The new properties are:
    Caption: The text to appear
    Alignment: 0 for left, 1 for right, 2 for centered.
    Appearance: 0 for flat, 1 for 3D
    Border Style: 0 for none, 1 for 1 border around the image.
    Caption Color: The color of the text.
    Font Name: The name of the font. Can use any font installed on your system.
    FontSize: The size of the letters.
    FontBold: Are the characters in boldface?
    FontItalic: Are the characters italicized?
    FontStrikeThru: Is there a line through the characters?
    FontUnderline: Is there a line under the characters?
  3. Sizing images on Bitmaps: You can now specify the image to appear on a bitmap as well as its size. The new properties are:
    Picture: The pathname to the image. It can be bmp, gif, jpg and other format.
    Stretch: If False, the image will be the size of the orginal image, aligned at the top left. If the image if larger than the bitmap object, it will be clipped. If Stretch is True, the image will be scaled to fit the current size of the bitmap object.

    Keep in mind that the maximum size of a bitmap is 65,512 bytes. The formula for calculating the size of a bitmap is (width * height) * 8.

    Projects with existing bitmap objects will continue to work as before.

  4. FileLib: This new library allows flat files, such as .txt files, to be created, read and written. Since it lets you read and write directly to any position in the file, it can be used to access any file you know the format of. Files can be in main memory or on a card. The library also allows you to see the contents of the public directories of your device. There is a new Tech Note, library and two samples. (This library replaces VFSLib. The calls are the same, but there are additional capabilities.)
  5. SetTheme(themeName) function: This new function lets you change the Theme at any time in your program. The Theme file has to be included in the Resources of the project. themeName is the name of the file, without an extension.

What's new in 1.0.3

This section describe features and fixes that are too new to be in the Language Reference or Handbook.
  1. IDE: Theme Editor added.
  2. IDE: Design screen shows colors in current theme
  3. IDE: Launch Icons and License now stored as relative paths
  4. Runtime: Theme support added.
  5. Library: Dictionary library added. (See Notes)
  6. Samples: Dictionary sample added.
  7. TechNote 42 added: Using NSDictLib.

Documentation Notes for 1.0.3

  1. Themes: This new feature allows you to enhance the appearance of your application by adding color to it. In Project Properties, you define a Theme. A theme defines colors for 22 different features of a form. There are 30 themes included with the release.

    To edit a theme or to create a new one, start the IDE and open a project. Select the Theme Editor under the Tools menu. It will automatically open the theme for the current form for editing, but allows you to also modify other themes or create new ones.

    Projects are automatically given the "Symbian" theme. Projects that are imported from NS Basic/Palm can be given the "Classic" theme if you want to retain the original look. There is no restriction on changing the theme of an existing program.

    The theme you specify in Project Properties will be automatically be added as a resource to your project. If you use additional themes, you have to add them as resources. Themes are kept in c:\NSBasic_Symbian\Themes. You can put additional themes you create in that folder or elsewhere.

    Note on the "Symbian" Theme: This theme is intended to be a good standard theme. We haven't come up with a final version of this. Feel free to contribute an improved version!

  2. Dictionary Object: The new object lets you set up a list of values you can quickly lookup and change during runtime. See Tech Note 42 and the new NSDictLib sample.

What's new in 1.0.2

This section describe features and fixes that are too new to be in the Language Reference or Handbook.
  1. Compile: Version number now updates properly
  2. Compile: Spaces in the directory path are no longer a problem.
  3. Compile: Now works properly on non-English Vista systems.
  4. IDE: New forms default to no titlebar on top.
  5. IDE: Bitmaps default to 8 Bit Hi Res (see below)
  6. Runtime: StyleTap updated to .9.013
  7. Runtime: Screen and font rendering much better at 240x240
  8. Runtime: TitleBar and MsgBox appearance improved.
  9. Runtime: Cursor appearance improved.
  10. Runtime: Cursor no longer beeps when moved on some devices.
  11. Help: ReadMe is now in the Help menu.
  12. Help: Language Reference updated.
  13. Help: Several Tech Notes updated.
  14. Samples: Name of Stock Quote app changed.

Documentation Notes for 1.0.2

  1. Bitmaps: When you add a bitmap to a project, it defaults to 8 bit, hi resolution. This will work well for devices which have an area of 240x240 or larger. If your device is smaller, you should put the bitmap into 8 bit, normal resolution, using the Project Exporer to get to the properties of your bitmap.

    The maximum size of a bitmap is 64k. If you specify more than one image in a bitmap, the total of all the images cannot exceed 64k. Note that the size used of the image is as a bitmap, which can be quite a bit larger than your original image if it is a gif or jpg.

    If you need to display an image larger than 64k, you need to tile it into smaller images that are within the limit and display them as separate bitmaps.

What's new in 1.0.1

This section describe features and fixes that are too new to be in the Language Reference or Handbook.
  1. Samples: Stock Quote added.
  2. Runtime: Grid.TextMatrix fixed.
  3. Runtime: Localization preferences (dates, etc.) should work now.
  4. Runtime: StyleTap updated to 0.9.012
  5. Samples: Controls no longer hangs
  6. Installer: Files are now installed into c:\NSBasic_Symbian
  7. Installer: Option added to start IDE or HelloWorld on completion
  8. Installer: step added to register controls
  9. Compiler: Output files renamed for more clarity
  10. Compiler: Error 70 fixed.
  11. Compiler: S60 and UIQ installers can both be made in one run.

Documentation Notes for 1.0.1

  1. The default Files Directory, which is used to store projects, installers, samples and libraries has been changed from c:\NSBasic to c:\NSBasic_Symbian. This will avoid the confusion with NS Basic/Palm projects, which used the same directory. If you are using the default folder, you will need to move your projects from \NSBasic\Projects to \NSBasic_Symbian\Projects.