2016r1

Released April 5th, 2016.

Xojo 2016r1 is primarily the HiDPI release. Notable changes and new features include:

  • HiDPI and Retina support for OS X and Windows.

  • The Xojo IDE is now Retina on OS X for sharp, clear text and graphics.

  • New Language Reference viewer.

  • Windows apps now require the new Universal Runtime be installed.

  • Many bug fixes and improvements.

Download Xojo today to get started making HiDPI and Retina apps!

Bug fixes (97 cases)

Case

Area

Description

41838

Build

Assembling Code times have been improved.

41950

Build

Assembling Code times have been improved.

6849

Compiler

IDE will export several PNGS next to the built EXE for Linux. They are 128 x 128, 48 x 48 and 32 x 32 and named appcion_128, appicon_48 and appicon_32 respectively.

42104

Compiler

Fixed a failed assertion when Variant.DateValue was used in code that had a using clause for Xojo.Core.

19557

Debugger

Color picker in the debugger starts out with the color value that was clicked on - not just black all the time.

39100

Debugger

Using statements and Soft declares no longer can have break points set on them since they are not executable statements.

13004

Framework > All

A rotated StringShape remains text when printed or drawn.

40980

Framework > All

Xojo.Net.HTTPSocket now works in OS X console and web applications.

41968

Framework > All

Imported database project items no longer return NilObjectException when used at runtime.

42556

Framework > All

Xojo.IO.FolderItem now has IsWriteable method (and removed IsWriteableFolder method).

7653

Framework > Macintosh

The first MenuItem added to an empty top-level MenuItem now respects its Enabled property instead of being disabled.

31506

Framework > Macintosh (Cocoa)

TabPanels that have SmallTabs set to True now use the correct font.

34956

Framework > Macintosh (Cocoa)

Fixed leaking NSWindows in the Cocoa framework.

42313

Framework > Macintosh (Cocoa)

A bug in picture handling in the IDE has been fixed and it no longer crashes when certain types of projects are edited.

42877

Framework > Macintosh (Cocoa)

The HTMLViewer on OS X now automatically handles special edit menu items, matching other framework classes and HTMLViewer's behavior on Windows.

21456

Framework > Web

WebListBox columns with a width of zero no longer render improperly.

21615

Framework > Web

Weblistbox column widths are now respected on IE9 when cell and/or header contents are wider than the width of the column.

41648

Framework > Web

Increasing the ColumnCount of a WebListBox no longer hides the horizontal scrollbar.

41906

Framework > Web

WebImageView alignment constants are available again.

42036

Framework > Web

Fixed a bug which prevented modifying web text alignment at runtime if the alignment was set using the new text alignment property in the IDE.

42283

Framework > Web

The ConnectionType of the HTTPS server of a web app can now be set by a command line option (ssltype) with a value which matches the SSLSocket.ConnectionType property OR by setting App.Security.ConnectionType to one of the values in the WebAppSecurityOptions.ConnectionTypes enum.

40046

Framework > Windows

Shutting down an app being debugged on Windows now is a lot quicker than it had been.

40379

Framework > Windows

Fixed a potential Timer crash when Timer events are queued up (for example due to Timers with low time periods that trigger an event loop iteration).

42118

Framework > Windows

Xojo.Core.Timer.Action event is no longer triggered when Mode is Off on Windows.

42344

Framework > iOS

Exposed iOSApplication.CurrentScreen.

41426

IDE

Class browser now also shows external subclasses.

42263

IDE

Template web projects no longer have an invalid build flag set that the user had no means to turn off.

42628

IDE

Edit > Cut, Edit > Clear and their shortcuts can be used to remove one representation in an Image Set.

42281

IDE > Auto Complete

Variant.TypeLong no longer autocompletes as it's deprecated.

41855

IDE > AutoLayout

Constraint offsets properly show as integer values.

42221

IDE > Build Automation

You can no longer remove the BUILD or SIGN steps from projects.

39599

IDE > Code Editor

Fixed leaks of NSFonts on Cocoa applications.

42103

IDE > Code Editor

Setting a bookmark in the debug code viewer is retained as expected.

42134

IDE > Debugger

Run remote menu reconfigures itself to use the last selection.

41643

IDE > FileTypes Editor

Adding file types will add new ones with unique names - usually a base name + numeric suffix.

41876

IDE > FileTypes Editor

Icons dropped on the image well in a File Type Set Editor are properly imported, mask and all.

41962

IDE > FileTypes Editor

If there is no asset or icon assigned, then clicking the icon in a UTI pane will create a new empty icon family that can be edited.

42383

IDE > FileTypes Editor

Fields remnants no longer appear in File Type Set Editor panes on Linux.

42688

IDE > FileTypes Editor

File Type Set UTI entries without identifiers will not be written to plists as they are useless.

42708

IDE > FileTypes Editor

Adding an icon to a File Type Set marks the project as changed.

42710

IDE > FileTypes Editor

Tweaked the layout of the File Type Set pane so fields baselines align with label baselines. Fields are now left and top aligned. Labels are now top and right aligned.

42923

IDE > FileTypes Editor

Improved spacing consistentcy.

36338

IDE > Inspector

Attributes editor is now usable on Linux.

41923

IDE > Inspector

Locking indicators are independent of a control being locked in position and so reflect the correct settings regardless of whether the control is locked in position or not.

41925

IDE > Inspector

No longer mishandles the visible property loading a web project with a web dialog on a web page.

41974

IDE > Inspector

You can now correctly remove an interface that is missing from the project.

43231

IDE > Language Reference

“Go home” in the LR when showing a plugin reference reloads the plugin reference (goes to the index page or HOME)

41759

IDE > Layout Editor

IOS labels in the layout editor now draw using the iOSLineBreak that is specified.

41814

IDE > Layout Editor

Improved the appearance of a SegmentedControl with only one segment that is selected in the Layout Editor.

41854

IDE > Layout Editor

All layout types properly handle fill width or fill height and those actions can be undone.

41960

IDE > Layout Editor

WebDialogs and WebControl wrappers which are tray controls that have UI no longer have their UI related properties dropped.

42081

IDE > Layout Editor

Tab order button only enables if there is more than 1 control on the layout.

42082

IDE > Layout Editor

Control order buttons enable and disable appropriately depending on whether the control is already front-most or rear-most.

42112

IDE > Layout Editor

Can again set the size and position for web dialog and web container controls classes.

42139

IDE > Layout Editor

iOSProgressWheel now renders properly in the IDE, at the correct size and matches the scaling behavior of iOS.

42258

IDE > Layout Editor

A duplication bug that could result in exponential growth of controls duplicated has been fixed.

42602

IDE > Library

Container controls subclasses no longer display as small when the rest of the Library is using larger sizes. The now draw at the same size as everything else.

40983

IDE > Licensing

Linux licenses now stick across reboots as expected. LINUX USERS WILL NEED TO UPDATE THE LICENSE INFORMATION IN THE IDE!

11309

IDE > Miscellaneous

Continuation lines are indented when printed.

12673

IDE > Miscellaneous

#if, #if...#Endif and #Pragma can be easily found if you search for just # (or any of the longer strings).

17592

IDE > Miscellaneous

The Analyze menu item is now disabled if a folder is selected.

19093

IDE > Miscellaneous

ReportDocument no longer shows Save and Load methods.

19580

IDE > Miscellaneous

Cancelling the preparation of plugins doesn't leave the UI in a state where it cant be cancelled the second time. Cancelling cancels the build instead of continuing and causing a potential cascade of errors from cancelling the preparation.

20865

IDE > Miscellaneous

Linux template panel behaves more like the OS X and Windows and now have a default appid even when you switch from one of the built in project types.

22103

IDE > Miscellaneous

Error panel saves and restores column widths the user sets for errors and warnings.

23730

IDE > Miscellaneous

Web Control HelpTags properly change and get saved as you alter them in the IDE.

23844

IDE > Miscellaneous

When you click resume the debugger tab is once again made the current tab.

25146

IDE > Miscellaneous

Minimum size is no longer too small for the accept file types sheet.

26093

IDE > Miscellaneous

Picture icons are properly badged in the Navigator and cannot be exported or made external as they are already external.

31534

IDE > Miscellaneous

An empty toolbar now longer redraws darkly colored when there is nothing selected and you inactivate the window.

33758

IDE > Miscellaneous

Converting a tab panel to a page panel and vice-versa retains the panel / tab definitions.

41953

IDE > Miscellaneous

Old projects don't get an exception when running - they may still not run because the required plugins are no longer supported but that will be reported as part of the failure to properly compile.

41994

IDE > Miscellaneous

IDE no longer generates a NilObjectException if the scratch directory is deleted. Now the directory is recreated as needed.

42102

IDE > Miscellaneous

Adding an event handler to an encrypted class is no longer allowed.

42116

IDE > Miscellaneous

Closing a secondary workspace no long closes the project on Linux.

42151

IDE > Miscellaneous

Copy file step that has two blank strings in it was causing an assertion and now the assertion is properly handled so the IDE can load the project correctly.

42245

IDE > Miscellaneous

Saving a text project should be noticeably faster.

42312

IDE > Miscellaneous

MS Office Automation items should behave much better in autocomplete.

42345

IDE > Miscellaneous

iOS Examples are no longer included in with Windows and Linux IDEs.

42436

IDE > Miscellaneous

A NilObjectException in how a window handles being closed has been fixed.

42453

IDE > Miscellaneous

Containers properly restore their lock settings.

42518

IDE > Miscellaneous

iOSSegmented controls save and restore property values as set in the IDE.

42799

IDE > Miscellaneous

Fixed a potential use-after-free in Picture.FromData on OS X.

42882

IDE > Miscellaneous

Labels on tab/page panels show their captions in the tab order editor like they do when not on a tab/page panel.

42872

IDE > Navigator

Copying items in the navigator no longer doubles up items if you select the group header (say METHODS) and the items in the group.

42880

IDE > Navigator

Lists of methods of various types (delegates, external, method and shared methods) no longer get mixed together.

41702

IDE > Plugins

Updated enumerations are pushed to instances in an existing project.

24718

IDE > Project Editor

As you type in the Navigator filter it no longer loses focus.

41955

IDE > Scripting

Can use IDE scripts to get and change the IOSAppName property.

42128

IDE > Style Editor

Tabbing between panes in the web style editor behaves as expected.

41922

IDE > Web Page Editor

IDE mimics what actually occurs in a web browser with TextFields and TextAreas that have multiline text values.

19905

IDE > Window Editor

Converting the super from one to another redraws the control and updates the Inspector (except for converting to a segmented control which still doesn't work for entirely different reasons).

40825

Miscellaneous

The xojo.xpm icon file is now included in the .tgz download.

43137

Miscellaneous

Fixed a crash that could occur when switching away from the code editor.

42450

Plugin SDK

REALLoadFrameworkMethod can now load the Split function.

41931

Remote Debugger Stub

Remote Debugger stub launches the correct executable after unpacking.

42842

XojoScript

Fixed a crash when running XojoScripts with optimizations enabled.

Changes (22 cases)

Case

Area

Description

42335

Build Pipeline

Windows Runtime files are now provided in the Extras directory.

42489

Framework > Linux

Now supports loading multi-representation TIFFs, this requires the libtiff library to be present.

42020

Framework > Web

User defined WebStyles now have more specificity than framework applied styles.

42594

IDE

Help->Upgrade guide entry removed. User Guide entry redirects to online user guide in Dev Center.

42595

IDE

If the project is set to support HiDPI, dragging a picture in will result in an Image (multi-representation). If the project is not set to support HiDPI, dragging a picture in will result in a Picture (single representation). You can flip this back and forth as needed. And holding the ALT key will flip things to import the other form depending on how the project is currently set.

42542

IDE > Code Editor

A light grey separator is drawn between the code editor and help area below.

42697

IDE > FileTypes Editor

Replaced use of the word 'program' with 'application' in help tags.

42702

IDE > FileTypes Editor

Labels in the File Type Set Editor have tooltips.

42709

IDE > FileTypes Editor

Adding an icon to a filetype _should_ now result in an icon on files of that type without having to add it to the Accepted files list.

42715

IDE > FileTypes Editor

File type editor has a separator between file types.

42717

IDE > FileTypes Editor

File type editor background matches style editor background.

42721

IDE > FileTypes Editor

Add a File type template is now the first button on the command bar.

42536

IDE > Icon Editor

<p>Improvements to Image Set editor:</p>

<ul> #. The number of rows in the editor is a function of how many representations there are (fewer will result in taller rows) #. Generic image will, once an image is dropped into it, show the dimensions </ul>

20474

IDE > Miscellaneous

Dragging a code item (constant property etc), control subclass, control instance into the code editor inserts the items name at the position where you drop it.

23169

IDE > Miscellaneous

Plugins support small and large icons. Refer to the Plugin SDK documentation for specifics.

41729

IDE > Miscellaneous

IDE supports and configures built applications to support HiDPI.

42763

IDE > Miscellaneous

&#39;REM&#39; and &#39;REM &#39; are now choices in the comment marker style.

42816

IDE > Miscellaneous

Added a hotkey for toggling bookmarks.

42866

IDE > Navigator

Add a pref for “Use Large Font* that defaults to False so people can pick between large and small font size.

41836

IDE > Rendering

Assembling Code times have been improved.

30292

IDE > Window Editor

Labels on tab/page panels show their captions in the tab order editor like they do when not on a tab/page panel.

42853

Plugin SDK

REALCopyPictureCGImage is now deprecated. Plugin authors should use the dynamic access API to invoke Picture.CopyOSHandle, ideally with the MacNSImage handle type.

New items (9 cases)

Case

Area

Description

42098

Build

Added a special IOS launch failure message to give a suggestion about how to resolve fail to launch error.

41761

Framework > iOS

Active property on a layout constraint is settable at design time.

41863

IDE > Code Editor

Syntax help area uses the same font and size as the code editor.

42753

IDE > Language Reference

Local LR is the default. [Local] is removed from titles and menu item.

42945

IDE > Layout Editor

Resize handles no longer draw when dragging controls on the layout editor.

25108

IDE > Miscellaneous

The Xojo IDE now supports retina on OS X.

41834

IDE > Miscellaneous

The About window has an additional panel on it that shows which plugins are loaded.

42445

IDE > Miscellaneous

Added a preference on the Debugging Pane of the IDE to hide the bottom pane on Run or leave it as it is currently set.

40473

Plugin SDK

Added a new function, REALLoadSharedMethod, to allow plugins to invoke shared methods.

Docs and examples (40 cases)

Case

Area

Description

31150

Documentation

Added CancelBuild to IDE Script Building Commands page.

35422

Documentation

Added Xojo Cloud page to docs for describing how to use Xojo Cloud: http://developer.xojo.com/xojo-cloud

41891

Documentation

Updated doc page for WebApplication.SessionIdentifier to indicate that the IPAddress parameter has been removed.

41987

Documentation

Epiphany Browser now appears in the wiki docs for WebSession.

43005

Documentation

Updated File Type Sets docs in User Guide and added File Type Set examples to the Files folder.

43021

Documentation

Added link to StrComp on the Equals page in the classic Wiki.

41839

Documentation > Miscellaneous

Added descriptions for Baseline, Leading and Trailing to Auto-Layout page in Dev Center.

42443

Documentation > Miscellaneous

Moved XojoTalk podcast page to the Resources section of Dev Center to make it easier to find.

31279

Documentation > User&#39;s Guide

Updated Remote Debugging docs: http://developer.xojo.com/remote-debugging

40336

Examples

Added example code to RegistryAccessErrorException.

41884

Examples

Fixed the certificate Copy File Step order for Windows/Linux in the Web SSLExample project.

41973

Examples

In iOS TCPSocket_Example, removed underscore from bundle ID to prevent compile error.

42360

Examples

Added iOS Declare example (iOS/Declares/iOSTabDeclares) to enable/disable tabs and set the tab badge.

42367

Examples

Corrected bundleID for OracleExample project.

42507

Examples

SQLiteExample now shows how to edit and delete rows in a table.

42841

Examples

Added Xojo Cloud/CloudTop example to display Top results to track server usage.

12300

Language Reference > Documentation

Updated MemoryBlock and Xojo.Core.MemoryBlock to indicate max sizes for 32-bit apps.

14291

Language Reference > Documentation

Added Examples/Desktop/Controls/SegmentedControl example project.

15927

Language Reference > Documentation

Added information about SQL Injection to User Guide (http://developer.xojo.com/userguide/sql-injection).

23867

Language Reference > Documentation

Added example code to HTTPSocket.SetRequestContent page.

25641

Language Reference > Documentation

Updated TextInputStream.ReadLine to note that any valid end-of-line indicator is used to identify a line.

30643

Language Reference > Documentation

<p>Local LR behaves more like the “Dash” doc viewer. Notes:</p>

<ul> #. You can search using just a keyword #. You can also search using a keyword + one or more selectors Valid selectors are : <ul> #. type:<comma list=** separated=** spaces=** without=**>&nbsp;Finds the keyword and only show items that are the types specified. (Examples: type:class or type:class,property)</comma> #. <comma list=** separated=** spaces=** without=**>source:<wiki helpiq=** or=**> - Limit results to coming from one doc source or the other (wiki or devcenter). (Examples: source:wiki source:devcenter)&nbsp;</wiki></comma> </ul>

</ul>

<p><comma list=** separated=** spaces=** without=**><wiki helpiq=** or=**><strong>Examples</strong></wiki></comma></p>

<ul> #. <comma list=** separated=** spaces=** without=**><wiki helpiq=** or=**>Find all items that include book in the name: book </wiki></comma> #. <comma list=** separated=** spaces=** without=**><wiki helpiq=** or=**>Find all properties that include book in the name: book type:property</wiki></comma> #. <comma list=** separated=** spaces=** without=**><wiki helpiq=** or=**>Find all classes that include book in the name: book type:class</wiki></comma> </ul>

31789

Language Reference > Documentation

On COM page, linked IPicture interface to Microsoft docs.

32619

Language Reference > Documentation

Removed duplicate Asin page.

32938

Language Reference > Documentation

Crypto.RSASIgn and RSAVerifySignature now note that they are using PKCS v1.5 with SHA1.

34101

Language Reference > Documentation

Added link on COM page to “Win32 and COM for Windows Runtime apps” in MSDN.

34148

Language Reference > Documentation

Added note to Structure page about usage of ByRef.

37569

Language Reference > Documentation

Added links to MSDN docs for IDispatch methods.

38455

Language Reference > Documentation

Added a note to RegistryItem.Value to indicate you have to use a MemoryBlock to create a binary key.

38761

Language Reference > Documentation

Window.Minimize event now notes that a minimized window may still be the front-most window as returned by the Window method.

40640

Language Reference > Documentation

BinaryStream.Constructor now notes that streams created from a file handle are owned by the BinaryStream.

41567

Language Reference > Documentation

ListBox docs now show parameter names that match what is displayed in the Code Editor Syntax Help.

41604

Language Reference > Documentation

Timer page now has links to AddHandler.

41856

Language Reference > Documentation

Restored MoviePlayer.PlayerType property, which was incorrectly removed from docs.

41958

Language Reference > Documentation

Example code on Graphics.DrawRect page now correctly uses PenWidth instead of PenHeight.

42120

Language Reference > Documentation

Removed references to Windows XP on System.Log page.

42248

Language Reference > Documentation

Added Example code to Shell.Mode page and clarified that Shell must remain in scope to use Modes 1 or 2.

42275

Language Reference > Documentation

TargetARM no longer says unavailable on Compiler Constants page.

42550

Language Reference > Documentation

Removed incorrect desktop-only tag on GetFolderItem page.

42844

Language Reference > Documentation

Removed all hidden QuickTime pages and related content from Classic Doc Wiki.