What's New in REAL Studio 2010 R2?

From Xojo Documentation

Here's a list of what's new:

  • Windows apps: Now with reduced flicker! - we have greatly reduced the flicker when several different types of controls are moved or resized (Oval, RoundRectangle, Groupbox, TabPanel, StaticText and the column headers for the Listbox control).
  • StaticText control improvements - It's now got a Selectable property (Mac OS X Cocoa and Linux only) that when set allows the user to copy the text. It also has a Transparent property (Windows only) that can be turned off to reduce flicker on Windows. This property is Windows only because in Cocoa and Linux StaticText controls are always transparent.
  • More DLL placement options - Windows apps now look for their DLLs in more places giving developers more flexibility.
  • New TextEncoding feature - New IsValidData function in the TextEncoding class so you can determine if a string is correctly encoded or not.
  • Improved Database connectivity - REALSQLDatabase, PostgreSQLDatabase, MySQLCommunityServer and OracleDatabase have been updated so that they no longer stop other code from running while they perform SQLExecute or SQLSelect. REALSQLServer has never stopped other code.
  • Improved reporting - you can automatically start a new group on a new page and large reports use significantly less memory.
  • Improved ActiveX - More ActiveX controls can now be imported.
  • Improved IDE printing - Windows can now be printed along with their code.

Important Changes

The new StaticText.Transparent property is off by default. This is a change in behavior because StaticText controls on all platforms were always transparent in the past. This property only affects apps running on Windows as StaticText controls are always transparent on Mac OS X and Linux. It's off by default to reduce flicker on Windows. If you have a StaticText control on top of a Canvas or on a window that has a background picture, you may need to set this property to True.

We added 17 new features and have fixed 68 bugs:

Fixed
3531 Applications no longer crashes when catching an exception without declaring a variable, for example this would often lead to a crash:
Function Test() As String
dim ret as string
dim f as FolderItem
f.Visible = true
return ret

// Catching exception without declaring a variable
Exception
return ""
End Function
5809 [Mac] StyledTextPrinter now respects text alignment.
6205 [Mac] App.ExecutableFile now reports correctly for console apps that have not yet been saved.
6737 Controls on ContainerControls no longer bleed through Page/TabPanels.
9035 Autocomplete causes window change in XP. Minor changes to the code editor _should_ correct this problem from appearing.

(It's a hard bug to reproduce reliably so the fix may not prevent all occurrences) (Ranked #9 in Feedback at the time of fix).

9163 XML Plugin: An invalid XPath syntax in XQL can now be caught by exception handler.
9324 A bug in drawing the list of object 2d's to the printers graphics on windows has been fixed.
9605 [Windows] Exceptions thrown in Console apps can now be caught properly.
9608 [Windows] MoviePlayer now fires Play/Stop event.
10184 [Mac] Movies created on the Mac (using FolderItem.CreateMovie) no longer contain a resource fork (this prevented the file from being opened on a PC).
10399 [Windows] Graphics are no longer enlarged when printing with App.UseGDIPlus enabled.
10542 [IDE] Debugger no longer crashes when inspecting property accessors that return strings (the crash usually occurred after Resuming and Breaking again).
10623 App Icon editor behaves better. Right clicking on items now works regardless of whether you have clicked on other items or not. Add will add an image or mask depending on which item you right click on. Drag and drop support for ICNS files should be improved. Cut and paste also works better from one size to another.
10664 Subclasses of report controls now image themselves in the report designer properly.
10690 Build sheet no longer displays outdated information.
10797 [Windows] Listbox headers now flicker less when columns are resized.
10806 The Compiler no longer asserts when comparing non-objects with Is operator. It now reports an error.
10807 [IDE] A potential unhandled KeyNotFoundException when dragging controls in the Window Editor has been fixed.
10822 CFBundleVersion should NOT include letters and should just be a period separated list of integers.

This fixes the issue and always writes CFBundleVersion as major . minor . bug . stage code . nonrelease Stage codes are 0 = development, 1 = alpha, 2 = beta, 3 = final

10863 Updated the Compiler to find databases related to the Data Control.
10878 Tabbing into a boolean property in a property list you can use F, 0 or False to set the boolean to false. Anything else will be considered true.
10901 Fie type lists will properly concatenate with ; separators when using addition operators.
10907 Most control properties can be set using constants again. This bug was introdued in a prior release.

Some, like TabIndex, that are interdependent on other control tabindexes acannot be set using constants.

10947 A crashing bug in REALSQLDatabase triggered by a MoveFirst method on an empty RecordSet is fixed.
11071 [Language Reference] CurrentExecutingMethodName Referenced in Sub and Function. Should be CurrentMethodName. Fixed on the Wiki.
11204 Bolding of notes now works properly even if you have only 1 line with no end of line.
11239 [Windows] TextField.CharPosAtXY now works properly instead of always returning 0.
11289 [Windows] FolderItem constructor no longer fails when the path provided is in UTF-16.
11326 [Mac] Text files dropped into a project can now be accessed in Console apps.
11331 [Mac] Calling ContainerControl.Close from an Event within the ContainerControl that is being closed no longer crashes.
11363 [Windows] Listbox.CellTextChange event now fires properly.
11374 The PostgreSQL Plugin now quotes the host string if needed (mainly to support domain sockets which are paths).
11419 Added support for importing ActiveX controls that do not expose a dual interface (i.e. ones that only support the IDispatch interface like Modbus and Adobe Photoshop CS4).
11429 TextInputStream.ReadLine now reads UTF16BE encoded text properly.
11430 [Windows] Toolbar no longer overlaps client area when toolbar buttons (other than the first one) have icons assigned.
11440 Windows: the TaskBar now reappears when running a project through the debugger and stopping it with MenuBarVisible disabled
11458 [Windows] LineControl is now properly offset when a Toolbar is present.
11477 Switching from the Window Editor to the Code Editor while changing a property will properly commit the edit.
11493 PagePanel: Removing the current page now triggers the Change event.
11506 [Linux IDE] Typing Shift+W in the code editor no longer triggers the Close Window menu item.
11512 [Linux] FolderItem.Length now correctly reports the file length when the file is an alias file, instead of incorrectly reporting the length of the file it's aliased to.
11520 Typo in reporting example that set one reoslution to -300 when it should have been 300 has been corrected.
11532 Breakpoints set in report control events now clear properly when you choose Clear All Breakpoints.
11538 The IDE will now disallow an empty type field for a property.
11548 Compiler no longer throws a failed assertion and crashes when declaring invalid syntax like Window.EndOfLine (an error is thrown instead now).
11588 [Linux] Toolbar captions are now visible.
11610 Val now returns the correct value for large hexadecimal numbers (like &hADDD3000).
11618 [Compiler] #pragma Unused no longer crashes the compiler if no variable name is specified.
11625 [Date] Date constructor no longer fails with ambiguous compile error when Int64s are used as parameters.
11667 [StaticText] Added Transparent As Boolean property. Use this property to set the transparency of this control. For example if you overlay a StaticText on top of a Canvas/Image then if Transparent is true, the text will overlay transparently (i.e. the background shows through). This property only applies to Windows (a non-Transparent StaticText control will not cause any flicker), on Mac OS X and Linux, the StaticText will always render transparently regardless of this property value.
11675 [Canvas] Backdrop now draws properly when DoubleBuffer is enabled (and the user doesn't have any code in their Paint event).
11700 [Windows] Closing a ContainerControl that has a Default PushButton no longer crashes when you press Enter/Return afterwards.
11709 Showing the method editor fields no longer automatically selects a new name.
11723 [Windows] GroupBox contents no longer flickers when GroupBox is resized.
11727 [Windows] The flicker for Oval and RoundRectangle controls when resized/moved hasbeen reduced.
11737 [Windows] Reduced flicker of Tabpanel contents when Tabpanel is resized.
11772 Notes can no longer be entered without a name.

Reading in a project that has a note like this will no longer cause an exception.

11808 Reports will, when saved by the new IDE, reload as created from VCP projects.
11840 New Window once again opens a new window on a project. This was broken in a previous release.
11842 [Linux] System.SerialPort and SerialPortCount now include USB-to-Serial adapters.
11848 Reports and all their contained items can now be searched.
11854 [Linux] The drag rectangle displayed while dragging now properly updates when dragging over plug-in controls.
11874 A bug in saving recent menu items that could result in an out of bounds exception has been fixed.
11911 [Mac] PopupMenu no longer leaks RowTags when Closed or DeleteAllRows is called.
11920 UI elements that do not function with the wiki have been removed.

This includes the larger / smaller controls and the location item which is redundant with the Wiki

12000 [Windows] Graphics.DrawPicture now scales the picture properly when UseGDIPlus is enabled.
12006 The build progress window shows the actual application icon if there is one, or it shows a generic application icon if one is not there.
12057 Redundant wiki page removed
New
3 Added StaticText.Selectable As Boolean.

Use this property to allow the StaticText caption to be selectable. You can use the default menu shortcuts to copy the selected text. At this time only Cocoa and Linux is supported.

1396 The entire Real Studio documentation set is now available on the Wiki (http://docs.realsoftware.com/)!
4994 A new preference for printing allows you to select whether an image of the the layout of a window is included as part of the printing.
9713 The splash screen and about box will say the specific development, alpha or beta version once bug 11533 is fixed.
10674 The IDE now goes to the specific items on the Wiki if it can. If not it will try and show the PDF.
10697 [Windows] Built apps that use plugins (compiled out as DLLs to your "My Application Libs" folder) can now find the DLLs in one of 3 locations:

1. By default we build a "My Application Libs" folder and the built app can find the DLLs in there 2. You can also move the DLLs into a "Libs" folder 3. Or you can move the DLLs next to the built app

10699 Small icon sizes should appear better (Fixed as part of report #10623)
10932 Report groups have a new property, StartNewPageAtEndOfGroup that will, if set, start a new page after the group footer has been rendered (Ranked #13 in Feedback at the time of fix).
11253 The IDE now saves the setting of the use 2006r3 encryption from use to use and run to run.
11414 [Linux] System.Network.IsConnected now works.
11428 Canvas.DoubleClick event now fires even if you return true from the MouseDown event.
11472 Real Studio has a new preference for how many recent items to track and show. If you set this value to 0 no recent items will be shown.
11620 New Function IsValidData (s As String) As Boolean has been implemented.
11620 Added IsValidData function to TextEncoding class to check if a string is valid for that encoding:

Boolean TextEncoding.IsValidData( text As String )

Usage:

If Encodings.UTF8.IsValidData( myText ) Then End IF

11707 [PostgreSQL Plug-in] SQLSelect and SQLExecute no longer block REALbasic threads.
11931 SSLSockets and the subclasses of it default to SSLv3.
11971 MySQL Community Plugin no longer blocks REALbasic threads when calling SQLSelect or SQLExecute.

NOTE 9174 Report fields and labels that have their Italic and / or property set no longer clip when aligned left.

NOTE 11073 The IDE will attempt to access the Wiki if you are connected to the internet. If you are not it will attempt to show the PDF version of the Language Refererence. If it cannot do either a message saying it cannot connect and cannot find the PDF will be shown.

Changed
11681 The IDE now uses the correct URL's for all of the Wiki items.

They go to a redirect page on the site that can direct them to the correct final location.