2015r1 Release Notes
From Xojo Documentation
(February 17, 2015)
Xojo 2015 Release 1 contains about 150 changes. Some of the more notable new features and changes include:
- 64-bit iOS Builds
- iOS builds are now created as Universal Binaries containing both 32-bit and 64-bit parts as required to meet Apple’s new App Store submission requirements
- A new TargetARM constant for conditional compilation
- IDE improvements, including
- Preference for Searching
- 1024x1024 icon sizes
- Better display of debugger values for pictures and arrays
- Language improvements
- Added Parse method to Integer, Double and Single data types
- SQLite updated to 3.8.8
Release Notes
Bug Fixes |
|
19863 | All: Fixed a crash when passing a structure array into SortWith. |
37833 | All: Fixed a memory leak with Xojo.Core.MemoryBlock. |
37835 | All: Fixed a regression where assigning empty strings to a MemoryBlock would crash. |
37674 | All: Fixed Array.IndexOf's handling of Auto arrays. |
37664 | All: Fixed Array.IndexOf's handling of delegate objects. |
37093 | All: Fixed RuntimeException's CallStack property having an extra Nil element at the end of the array. |
32325 | All: Fixed shuffling of structure arrays. |
33905 | All: Optimized sorting an array that is already mostly sorted. |
37363 | All: String.ToText no longer raises an exception on Windows/Linux if the string is empty. |
37811 | All: Text.Split no longer raises an assertion if the Text to split is empty. It now returns an empty Array instead. |
17059 | All: Using IndexOf on a string array where a string starts with NUL byte now works correctly. |
37611 | All: Xojo.Core.Timer.CancelCall no longer raises an IteratorException. |
37871 | Cocoa: Fixed a crash with ComboBox.DeleteAllRows. |
37201 | Cocoa: The ArrowAllDirections mouse cursor now resembles the old Carbon appearance instead of a simple crosshair. |
37351 | Compiler: Fixed a bug that made ByRef arguments count for overload resolution, which incorrectly marked function calls as ambiguous. |
37629 | Compiler: Fixed a bug with incremental compilation that resulted in global functions or variables not being counted as a dependency that should force a recompile if they change. |
37981 | Compiler: Fixed a bug with unsigned integer comparison on iOS and XojoScript. |
37616 | Compiler: Fixed a crash when trying to get or set a structure property's value via introspection. |
37663 | Compiler: Fixed a crash with exception handlers when building for iOS devices. |
37508 | Compiler: Fixed a failed assertion triggered by calling an invalid function. |
37567 | Compiler: Fixed a failed assertion when compiling a class that has a property that is a large structure. |
37500 | Debugger: Date values stored in a Variant now show correctly in the debugger. |
34555 | IDE: A change to a project item name is validated before the contextual menu is shown to you cannot create a class with no name. |
28114 | IDE: Added missing Help tags for the file types command bar items. |
37576 | IDE: Added Variant.TypeText to autocomplete. |
37041 | IDE: Adding a new sqlite database to a project no longer permits using the name “Database”. |
13259 | IDE: Alt-Shift-Click inserts the name of the item selected in the navigator to the current insertion point in the active code editor. |
37581 | IDE: Altered reloading an iOSControl so it reloads all saved properties. |
37406 | IDE: An event that has been implemented can be removed and re-added to a control. |
36823 | IDE: Auto-layout baselines guides now result in baseline constraints. |
21281 | IDE: Changed from using JPEG 2000 to PNG for the elements of the ICNS file so that OS X builds done on Windows and Linux properly create the ICNS file. |
37564 | IDE: Clicking the help item in the toolbar no longer results in a help window with no toolbar configured. |
25894 | IDE: Closing the last project window will, if set, close the IDE down or simply leave the tray item (as set in preferences). |
37570 | IDE: COM help reference entries wont be shown on platforms that don’t support COM controls. |
29017 | IDE: Commands like Stop Debugging work even when the Debugger is not the current active tab. |
17852 | IDE: Copy file steps now directly supports the use of partial paths for the copy file steps subdirectory property. |
31436 | IDE: Copy paste and drag drop of methods, constants, etc. into external classes now works properly. |
37454 | IDE: Copy/copy/paste now work with the IDE Script Editor window. |
37601 | IDE: Copying a group of lines no longer causes an exception when trying to create the backing image. |
29272 | IDE: Creating a new control set from a selected group of similar controls now works properly. |
37613 | IDE: Custom controls names in the Library update when changed. |
19639 | IDE: Custom supers for reports saved in plain text format are restored properly. |
14434 | IDE: Desktop containers draw better in the IDE (back color and backdrop) in their editor and in a disabled form on a window layout. |
37194 | IDE: Don’t raise an NilObjectException if you start a search in the LangRef window before the response has been received from one of the online sites. |
37507 | IDE: Dropping a method on a class interface behaves like a Copy not a Move. |
21258 | IDE: Ellipsis to indicate further interaction required have been added to menus. |
37188 | IDE: Event definition editor pane parses a single entry in the name into component parts as the method editor pane does. |
37037 | IDE: Event handlers that are added to a control instance but have no code in them are now correctly hooked up so add handler will properly report an error if you try to add a handler to it again. |
9808 | IDE: External project items no longer show property editors differently than internal project items. |
33217 | IDE: External script references no longer get lost. |
19099 | IDE: Extract Interface and Extract Superclass both order their lists alphabetically. |
37232 | IDE: Fixed a NilObjectException that could occur when trying to add attributes to a NON-UI class in an iOS project. |
37684 | IDE: Fixed issue where right click would incorrectly position the insertion point in the Code Editor. |
37577 | IDE: Fixed the displayed type of Variant.TextValue in autocomplete. |
32736 | IDE: Floating properties palette has the advanced icon and panels. |
37687 | IDE: Grab handles for lines appear regardless of setting of X1, X2, Y1, and Y2. |
23591 | IDE: ICNS files are now written out with the Apple recommended set of images as PNG which do NOT include any 48 x 48 images. |
38035 | IDE: Icon editor no longer beeps when you press the delete key. |
36968 | IDE: Icon editor no longer behaves likes its compositing icons together. It now replaces the existing icon with a new one when dropped into the editor. |
37727 | IDE: If a plugin is misconfigured and claims to have properties, events, methods, etc. but really doesn't then the error message in Feedback will identify this better. |
37699 | IDE: If there is no default value for a constant or property no equal sign is shown in the Navigator. |
36800 | IDE: In Auto-layout, controls constrained to the baselines of other controls move as expected. |
17739 | IDE: In the Code Editor, AddHandler and RemoveHandler now display syntax help and are highlighted as keywords. |
37072 | IDE: In the Code Editor, clicking in the gutter below the last visible line no longer toggles the last line’s break point. |
36980 | IDE: In the File Type Set Editor, pressing forward delete when a field is being edited simply edits the field. When no field is being edited and a row is selected pressing forward delete removes the row. |
15132 | IDE: In the Style Editor, typing in a value in the text field for colors now works. |
25704 | IDE: Inspector Behavior sheet is resizable. Lists resize to fit width and columns are resizable. |
21393 | IDE: Make it so when a web segment has an icon assigned that it actually draws it whether its been copied and pasted or saved and the project reloaded. |
22116 | IDE: Menu handlers now get numeric suffixes like enums, properties, etc. do when you duplicate them. |
37099 | IDE: Method editor now says “Delegate name” instead of “method name” when you edit a delegate. |
37403 | IDE: No longer causes an exception when using a script command to build a console or web app. |
37401 | IDE: No longer causes an exception when using a script command to build a console or web app. |
19115 | IDE: No longer get an error when a toolbar button icon image has the same name as the button. |
19340 | IDE: No longer repeatedly ask if a person wants to update a projects minimum load version as they alter it and save. |
37060 | IDE: Opening new tabs uses the current Find panel size (if open). |
37700 | IDE: Plugin super classes are not shown in the super class browser for iOS projects. |
14913 | IDE: Pressing the Enter key completes inline editing same as the return key does. |
28654 | IDE: Project chooser panel no longer gets spurious line artifacts when resizing. |
37656 | IDE: Removed extra space in build dialog. |
25046 | IDE: Renaming Report controls in the Inspector also changes the name in the Navigator. |
37285 | IDE: Resizing a control by the corner drag handles snaps to guides just like dragging any of the side handles does. |
17862 | IDE: Segmented control with no segments no longer generates an error when you analyze a project. |
37381 | IDE: The Export dialog when making a folder external has a more sensible caption. Folders properly check all contents recursively for whether they can be exported. |
35005 | IDE: The Insert menu rebuilds properly depending on what project you have front most. |
25580 | IDE: The Library no longer appears to be a drop target when you are dragging a control out of the library. |
33190 | IDE: The ListBox popover editor permits shift tab to go backwards (just as it uses tab to go forwards). |
27967 | IDE: The small progress wheel control in web projects no longer slowly creeps across the layout as you save and reopen the project. |
26354 | IDE: The web style border editor can tab from the Size field to the container with the color selector fields. |
35367 | IDE: The “Define missing method” function now works even when you select a text fragment thats starts with “me.”. |
28092 | IDE: Using Cut, Copy, Paste, Delete in the Font name combobox in the Inspector doesn’t cause the control to be deleted. |
37615 | IDE: When a base class name for an iOS custom control changes, any views with instances of that control also get the super updated for those instances. |
30622 | IDE: When using floating palettes and the last workspace for a project is closed the floating properties palette also clears so that you cannot modify something that no longer exists. |
37692 | IDE: When you change the default value of a constant or property value they change in the Navigator right away so you no longer need to close then open the group of constants or properties to see the change. |
23263 | IDE: You can now do a discontiguous select of project items in the Navigator on Windows and Linux (this already worked on OS X). |
37326 | iOS: An empty iOS project no longer generates an warning about an unused variable. |
37008 | iOS: Controls that are visually parented in the IDE are now properly parented at run time. |
35555 | iOS: Dynamic constants are now working. |
37919 | iOS: Fixed a crash with invalid JSON. |
37449 | iOS: Fixed a failed assertion triggered by dereferencing a pointer with no offset. |
37669 | iOS: Removed File Types from the Build Settings. |
37071 | iOS: The Sign project step name (in Build Settings) is no longer editable. |
37678 | Linux: IDE no longer crashes at launch on Ubuntu 14.10. |
34626 | Linux: The IDE no longer crashes in certain instances when clicking on the button to change a class' super. |
20370 | OS X: Because of a bug in Launch Services names with special characters don’t work for the icon file name. Now always using App.icns as the name. |
37777 | OS X: Fixed a crash with Xojo.Core.Date when used as a property. |
37672 | OS X: Fixed Xojo.Math.RandomInt crashing. |
15019 | Plugins: REALLoadObjectMethod no longer fails with DrawPicture in Console apps. |
33896 | Remote Debugger: Changing the “launch after receiving” check box no longer takes several seconds for the UI to update. |
17882 | Serial: Retrieving Bits, Stop, Parity, and Port properties now work properly instead of incorrectly retrieving its high word (i.e upper 16-bits did not contain the correct data). This was seen mainly on Windows. |
37123 | Web: A WebControlWrapper Style property no longer appears if the developer has indicated that it shouldn't. |
37085 | Web: Fixed a bug which caused WebLabels to be invisible when included in a dynamically created WebContainer. |
37748 | Web: Fixed a regression in the WebSDK which caused ControlAvailableInBrowser to return True too early. Increased WebControlWrapper.APIVersion to 5 so the only version that has this issue will be version 4. |
37670 | Web: Removed unused ChromeFrame code from the framework. |
37164 | Web: WebCheckboxes again respond to touches when their MouseDown event is implemented. |
37435 | Web: WebContainer mouse event handlers no longer interfere with scrolling. |
37205 | Web: WebLabels in a WebContainer in a Control Array draw properly again. |
37760 | Web: WebListbox no longer offsets the selection if placed inside a WebContainer and accessed from a touch device. |
37691 | Web: WebMoviePlayer and WebMapViewer no longer incorrectly send Mouse movement events to the server. |
17126 | Web: WebStyle gradients now render for IE. Note: IE only supports 2 point gradients. |
34341 | Web: Webstyles with borders no longer cause controls to change size at runtime. |
37745 | WebSDK: Updated documentation to reflect the APIVersion 4 and 5. |
37562 | Windows: Deleting a menu in the Menu Editor on Windows no longer causes an exception. |
21685 | Windows: Graphics.DrawPolygon now draws smoother edges when using GDI+ |
37413 | Windows: Xojo.Core.Date subtraction now works properly. |
37390 | Windows: Xojo.Core.Timer now works for Desktop apps. |
37756 | XojoScript: Fixed a bug that prevented CompilerWarning from firing when there were warnings on consecutive lines. |
31641 | XojoScript: The compiler now gives an error when a script declares its own RuntimeException class. |
Total: 127 | |
New Items |
|
37510 | Compiler: Added a TargetARM constant that is set to true when building for ARM devices. |
37930 | Compiler: The 'StructureAlignment' attribute on a structure can now be set to 0, which indicates that the compiler should perform natural alignment. Natural alignment ensures that the structure will be laid out correctly for a given platform's ABI rules. |
28073 | IDE: Added a new preference for controlling whether searches and filtering happen immediately or wait until enter/return are pressed. |
21947 | IDE: Added support for 1024 x 1024 icon size. |
Total: 4 | |
Changes |
|
37439 | All: Added Parse function to Integer, Double, and Single. This function acts more like Val/CDbl did, in that it's more lenient at parsing and will not raise exceptions. |
37757 | Compiler: TargetHasGUI, TargetPPC, TargetPowerPC, TargetMacOSClassic, and Target68K have formally be marked as deprecated. |
37156 | Compiler: The compiler now preserves type information better when dealing with "Integer" and "UInteger". As such, error messages will reflect what the user types instead of "Int32" or "UInt32". |
37709 | IDE: Added Icons for autocomplete purposes for Auto, Text and Ptr. |
35791 | IDE: Auto-layout baselines guides now result in baseline constraints. |
35950 | IDE: Auto-layout baselines guides now result in baseline constraints. |
36318 | IDE: Certain deprecated items have been removed from file formats and print outs of projects. |
36644 | IDE: Debugger Viewer now is labelled with “View as “ instead of “view”. |
17995 | IDE: It is possible to paste multiline text into the constant editor listbox on Windows and Linux (it already worked on OS X). |
16569 | IDE: Revised project printing to not repeat the note name, group things better and add in delegates and using clauses. |
12874 | IDE: The Debugger shows headers for 1D arrays as Row and Value. For 2D arrays it shows row, column and value. For a 2D array sorting by rows puts data in Row / Column order. |
17234 | IDE: The picture in the debugger view now scrolls as you move the mouse wheel. |
37614 | IDE: There is now a Project Controls section in the Library for iOS projects. |
12574 | IDE: Trying to place an instance of a Container Control or EmbeddedWindowControl directly on a window is not permitted. You can no longer drag out a control, like a canvas, change its super to Container Control or EmbeddedWindowControl. |
37929 | IDE: Updated structures to support natural alignment. This means now you can set the StructureAlignment attribute to 0 to use natural alignment. |
36648 | IDE: Viewing a window in the debugger shows “Controls” instead of “Contents” in the debugger. |
8287 | IDE: When you use Run Paused, the Resume toolbar item, resume menu item and pause items will be disabled until such time the app to be debugged has been started and communicated with the IDE. |
29995 | OS X: ICNS files written use up to date internal image formats (PNGs instead of JPEG 2000) and only use currently documented formats. |
37329 | PluginSDK: Updated Plugins SDK with new function to handle the Text datatype. Please review the Plugins SDK for details. |
36218 | SQLiteDatabase: Updated to SQLite 3.8.8. |
37681 | Web: Removed the "Xojo HTTP Server" header from the list of headers returned for a standalone web app. |
37741 | Web: Updated standalone HTTP response headers to more closely match existing behavior. |
26807 | Web: Web Apps no longer request that ChromeFrame be activated if it's installed on the user's computer. |
Total: 23 | |
Docs and Examples |
|
37947 | DocLangRef: Added Crypto and Introspection to list of Themes in Language Reference. |
37274 | DocLangRef: Added information for WebApplication.Security. |
30413 | DocLangRef: Added note to array.Sort to indicate how items are sorted. |
37374 | DocLangRef: Added page for REALbasic module as an alternate way to access some global items. |
37813 | DocLangRef: Corrected “REALSQLDatabase” to “SQLiteDatabase” in Record Navigation section of RecordSet page. |
36666 | DocLangRef: Removed System.KeyScript, which is no longer an available method. |
36308 | DocLangRef: Simplified wording for description of FolderItem.GetSaveInfo. |
37517 | DocRefGuide: Added exceptions raised by Xojo.IO.SpecialFolder.GetResource. |
37738 | DocRefGuide: Fixed sample code for iOSImage.FromFile. |
37884 | DocRefGuide: Removed incorrect information from iOSView.Activate and Deactivate. |
37148 | DocRefGuide: Removed SelChange from the events for iOSTextField. |
37151 | DocRefGuide: Removed usage of Math.Pi from sample code. |
37779 | Examples: Added iOS/Declares/Base64Encoding project. |
37780 | Examples: Added iOS/Declares/Pasteboard to show how to add text to the pasteboard. |
37932 | Examples: Added XojoDoodle example for iOS. |
37647 | Examples: Fixed iOS/Database/SQLiteInMemory example so that it can be properly code-signed when built. |
37778 | Examples: In iOSAlerts, changed declare lib to /usr/lib/libobjc.dylib so that it builds for device. |
37737 | Examples: Updated IDECommunicator example to work with current version of Xojo. |
37931 | Examples: Updated XojoNotes to use SplitView on iPad. |
37159 | Examples: Updates to error messages for XojoScript example project. |
Total: 20 | |
Release Total: 174 |