Key: [Opt] = Optimization [Fix] = Bug Fix [Afx] = Alpha or Beta fix. Fix for a problem recently introduced. [Imp] = Improvement on bug, but problems may still exist [New] = New Feature [Chg] = Changes Previous Functionality [Kis] = Known Issue [Wrk] = WorkAround [WrB] = WorkAround broken as a result of bug fix. [Nlr] = No Longer Reproducible, Reason Unknown. Usually a consequence of some other fix. [Tip] = Insight into the design of a feature, suggests possible uses. [Nte] = Note [Dep] = Deprecated [Pat] = Describes a backwards compatibility issue. [Ref] = Major refactoring, functionality should be identical to previous. 2006 Release 3: [Fix] [IDE] About Box: No longer has a minimize widget, as per UI guidelines.(Feedback ID: qmqkural) [Fix] [Win] ActiveX: The code generation for ByRef parameters in functions which have return values is now correct (instead of returning before assigning to the ByRef parameters).(Feedback ID: fsvacgym) [Fix] [IDE] AddProjItemAction: Project items will no longer be renamed when pasting them into a project that has a folder with the same name. [Fix] [All] Arrays: Arrays that have been upcast can now be appended and inserted, given that the type being appended is allowed by the original array type.(Feedback ID: gfqmchwc) [New] [IDE] Autocomplete: Now autocompletes members of the Ptr datatype. [Fix] [All] Autocomplete: Structures now autocomplete Size and StringValue. [Fix] [IDE] Autocomplete: TargetX86 autocompletes again (used to in 5.x, but hasn't in RB200x).(Feedback ID: kkhlanhs) [New] [OSX] Bundled Applications: Now can have the CFBundleIdentifier specified in the plist by entering a value in the blessed application's property list.(Feedback ID: gjiikdze) [New] [IDE] Code Browser: Now shows more information when you overload a method. Namely, it shows parameter type and return type information.(Feedback ID: kwtrbrvv) [New] [IDE] Code Browser: When right-clicking on a non-computed property from the code browser, you can now choose to convert it to a computed property.(Feedback ID: iiiqcftc) [Chg] [IDE] Code Editor: Can now use Cmd+Opt+N to create a new note on the Mac. Since Windows and Linux have default keyboard access to the menu, and Ctrl+Shift+N creates a new window, this shortcut is blank on those platforms.(Feedback ID: ccjuyivl) [Fix] [IDE] Code Editor: Hide empty events functionality has been improved so that the currently selected item is never hidden. [Fix] [IDE] Code Editor: No longer swaps characters while typing on Linux (especially noticeable when holding down the Shift key).(Feedback ID: yiqoahnx) [Fix] [IDE] Code Editor: No longer uses a set of bevel buttons for the constant type selection. Instead uses a popup menu. [Fix] [IDE] Code Editor: Notes no longer show "Sub Note Name" in the summary line. [Fix] [IDE] Code Editor: Now also includes [] in the word delimiters for double-click selection.(Feedback ID: sqqgdimm) [New] [IDE] Code Editor: Now automatically adds a call to the superclass constructor when you make a constructor method for the subclass.(Feedback ID: oiyjezff) [Fix] [IDE] Code Editor: Now lets you do Ctrl+Backspace on Windows again(Feedback ID: fkkevvzx) [Fix] [IDE] Code Editor: Now lets you hit Ctrl+Delete on Windows to do a word-wise forward deletion.(Feedback ID: oirgpngf) [New] [IDE] Code Editor: Now saves state information about where the splitters are, and what item was last selected. [Fix] [IDE] Code Editor: Now scrolls the editor when you are dragging text around.(Feedback ID: bewiogut) [Fix] [IDE] Code Editor: Now selects the events properly when you double click on a control in the window editor and have hide empty events turned on. [Fix] [IDE] Code Editor: Now uses the OS mechanisms for displaying the caret. This properly masks the caret for some fonts for better readability, as well as uses the proper blink repeat rate. [Fix] [IDE] Code Editor: Now warns you when you you've entered an illegal name for a code item (method, constant, etc). The warning is displayed in the status area.(Feedback ID: fspbkphm) [Fix] [IDE] Code Editor: On Windows and Linux, hitting Ctrl while double clicking on a word performs the same action as Go To does. This has always worked on the Mac (when holding down Cmd).(Feedback ID: xrupuacd) [Fix] [IDE] Code Editor: Pasting text into the code editor which represents a method without parameters will no longer raise an exception if the first line does not contain parenthesis. [Fix] [IDE] Code Editor: Return types are now checked for validity -- they must be a valid identifier, or else they will revert back to their original value (this is the same behavior as demonstrated in the name field). [Fix] [IDE] Code Editor: The constants editor now has an "..." button for string types.(Feedback ID: ryidoiud) [New] [IDE] Code Editor: The Go To contextual menu will now let you go to controls on a window as well as code items.(Feedback ID: rxiwxiol) [Fix] [IDE] Code Editor: The Switch To contextual menu now appears in the browser pane as well as the code editor. Furthermore, it now lets you switch to hidden events. [Fix] [All] Code Editor: When editing the code of a Window that is open in multiple windows, typing should be as fast as typing if only one window was open.(Feedback ID: kqrxjemh) [Chg] [IDE] Code Editor: Word delimeters are now: .,()*^/+-""'=><@: The new characters are: ^ and :(Feedback ID: tnywihuj) [Fix] [IDE] CodeEditControls: Cut, Copy, and Paste now work in the method name declaration field.(Feedback ID: fwlafeqv) [Fix] [IDE] CodeEditControls: Cut, Copy, and Paste work in the constants, structure, and enum editor listboxes.(Feedback ID: dvbvfagv) [Fix] [Win] ComboBox, PopupMenu: Now properly size the drop-down menu when it contains unicode strings, such as ones containing š, Š, Ÿ, or §(Feedback ID: troomgpy) [Fix] [Win] ComboBox: Moving/Resizing a combobox no longer selects the contents(Feedback ID: occstafe) [Fix] [All] ComboBox: No longer crashes when calling Close in the KeyDown event.(Feedback ID: fpufspav) [New] [IDE] Compiler: A new "Check Project for Errors" command lets you run the compiler without building an app or starting a new debug session.(Feedback ID: ksthktlp) [Fix] [All] Compiler: Calling a method on a nil array reference no longer crashes; instead, it raises a NilObjectException. (This situation might come about if you exit from a function declared to return an array without returning a value.)(Feedback ID: bbabwtah) [Fix] [IDE] Compiler: Compiling floating point numbers on locales that have a different decimal separator from "." now compiles properly with the Linux IDE. (Feedback ID: fxslkqck) [Fix] [All] Compiler: Declares now belong to the block that they are declared in, and can be redeclared in separate blocks, like constants and regular variables.(Feedback ID: plahwchm) [Fix] [All] Compiler: No longer fails an assertion in Arrays.cpp if you declare an array of Ptr.(Feedback ID: iouivotz) [Fix] [Mac] Compiler: No longer fails an assertion in CGPPC.cpp (with a message about "displacement < 32768") when generating PowerPC code for certain extremely large methods.(Feedback ID: vljtglbh) [Fix] [IDE] Compiler: No longer fails an assertion in FunctionCalls.cpp in the error case where a method parameter is declared both ByRef and ParamArray. [Fix] [IDE] Compiler: No longer fails to report an error when you dereference a pointer but don't do anything with the returned value. [Fix] [All] Compiler: No longer throws a failed assertion when the name of a class is a reserved word or intrinsic data type.(Feedback ID: rmgchkjd) [Fix] [All] Compiler: Now reports an appropriate error instead of failing an assertion when you declare a structure array field whose element type is a non-structure-safe reference type.(Feedback ID: aguuczgu) [Fix] [All] Compiler: Poking a structure into a pointer no longer copies only the first four bytes.(Feedback ID: fdzexfak) [Fix] [All] Compiler: The compiler no longer generates incorrect code (which would cause a crash) for a For-Next loop with a variable step and a complex endpoint expression.(Feedback ID: gjnzktgn) [Fix] [All] Compiler: Values assigned to fields of structures dereferenced through a pointer no longer vanish into the bit bucket; instead they are actually assigned to the target of the pointer, as you'd expect.(Feedback ID: qgegooef) [Fix] [All] Console Applications: Input and StdIn.ReadLine no longer cause the application to eat 100% of the CPU when waiting for an EndOfLine.(Feedback ID: ldiadzua) [Fix] [All] ContainerControl: The Activate and Deactivate event now fire on Windows and Linux(Feedback ID: hfolxxnj) [Fix] [Mac] ContextualMenu: If a modal window is shown from a contextual menu, the menus for that window now work correctly again.(Feedback ID: mzkvlcvp) [Fix] [IDE] Control Subclasses: Now get the list of properties updated correctly when changing superclasses.(Feedback ID: znwhecnd) [Fix] [Mac] Controls: On the Mac when embedding controls on the fly, the tab panel index of the parent control is now honored correctly. This also fixes ListBox scrollbars showing up on the wrong tab when being turned on via code.(Feedback ID: xoyntubp) [Fix] [All] Cursors module: The invisible cursor now works instead of throwing cyrptic errors.(Feedback ID: ouidbjtr) [Fix] [IDE] Database Editor: Database Index editor correctly disables buttons on the command bar when they are not functional. [Fix] [IDE] Database Editor: Index editor tab resizes correctly. [Fix] [IDE] Database Editor: No longer raises an exception when using the query builder on a database without any tables. [Fix] [IDE] Debugger: It's again possible to view variables and properties that are typed as "Object". [Fix] [All] DecodeQuotedPrintable: Now works properly with lowercase hex strings.(Feedback ID: iaebfwsa) [Fix] [All] DecodeURLComponent: Works properly with lowercase hex encoded strings.(Feedback ID: pgstgrks) [Fix] [Win] Drag & Drop: AcceptFileDrop no longer fails with multiple types on Windows and Linux(Feedback ID: dyqwxtbq) [Fix] [Mac] Drag & Drop: The DragExit event is now triggered when the user cancels the drag by pressing Esc.(Feedback ID: kjscxckh) [Fix] [Win] Drag and Drop: Dragging text is now unicode savvy (in other words, REALbasic can accept unicode text drops, as well as building unicode text drops) [Fix] [Win] Dynamic Constants: Now correctly load resources built from the IDE for more languages.(Feedback ID: dcyjvebe) [Fix] [Win] Dynamic Constants: Now support the ISO 631 and 3166 combinations on Windows (was always supported on Mac OS X) for specifying a language and region together. This allows distinctions such as English in the United Kingdom vs. United States. This also makes Simplified and Traditional Chinese work. [Fix] [Lnx] EditField.StyledText: Setting the StyledText.ParagraphAlignment now works properly.(Feedback ID: uyljgdht) [Fix] [Mac] EditField: ConstructContextualMenu/ContextualMenuAction events work properly now.(Feedback ID: xvxdqftm) [Fix] [Win] EditField: No longer clips a two pixel border around the client area of the control when drawing as theme-savvy.(Feedback ID: ynzlfkql) [Fix] [Win] EditField: No longer crashes when you close the window in the EditField's KeyDown event(Feedback ID: cwaisxga) [Fix] [Lnx] EditField: Pressing Escape, in an EditField, now triggers the Cancel Button. [Fix] [Win] EditField: Setting/Getting the text style data no longer scrolls the editfield(Feedback ID: qxcnmxqa) [New] [IDE] Encrypted Items: Now has a new encrypted item option in the encrypt dialog. If you select this option, your item will only be accessible to RB2006r3 and above.(Feedback ID: lombtetq) [Fix] [Lnx] Executable: The compiled executable no longer chokes when prelink is run on it(Feedback ID: bujpbcar) [Fix] [IDE] Export Localizable Values: Now uses the name of the project as the suggested name for the export.(Feedback ID: zlqtktoi) [Fix] [IDE] External Items: Now fails gracefully if an exernal item refers to itself. This should be an impossible scenario, and if anyone knows how to get into this state, please file a report.(Feedback ID: rcrjuevp) [Fix] [IDE] External items: Now save their editor type information for their properties so that you no longer lose things like the multiline editor button in the properties window. Note that this does not affect reading in old projects.(Feedback ID: owyneinm) [Fix] [IDE] Find Dialog: Checking the RegEx button no longer clips the text of the find label.(Feedback ID: sicqmjup) [Nte] [IDE] Floating Properties Palette: The floating properties palette window title should now be "Properties" at all times (as it was in 5.5 and before). [Fix] [Lnx] FolderItem.Launch: Now works properly, used to add an extra space to the file which prevented it from working, unless you specified parameters(Feedback ID: dlcswvgb) [Fix] [Win] FolderItem.OpenAsVectorPicture: No longer crashes when loading some EMF files with stretched bitmaps.(Feedback ID: enjsrkks) [Fix] [Win] FolderItem: Getting a FolderItem to a drive with no disk present no longer throws an UnsupportedFormatException.(Feedback ID: uzmkhnkn) [Fix] [Lnx] FolderItem: Now returns a valid shell path (in other words, those characters that need to be escaped, like spaces, are now escaped properly).(Feedback ID: bsggvbka) [Fix] [Lnx] FolderItem: Renaming folders now work properly, instead of leaving an extra character prefixed to the new name(Feedback ID: gmweaswk) [Fix] [Win] Fonts: No longer leak GDI objects when translating an RB font size to an OS font size.(Feedback ID: oqgubxzf) [New] [IDE] Form Editor: Both Project Controls and Plugin Controls lists are now sorted alphabetically.(Feedback ID: hafbefpg) [Fix] [IDE] FormEditorCanvas: Double click and dragging a control in the window editor no longer opens the code editor. [Fix] [OSX] GameInput: In Mach-O applications, the HID.bundle can now be placed in the Frameworks folder of your application's package. Previously, it needed to reside next to your application.(Feedback ID: japzvyez) [Fix] [Mac] Graphics: Handle(Graphics.HandleTypeCGrafPtr) method now returns the port of the graphics in question, rather than the current QuickDraw port.(Feedback ID: xunjndau) [Fix] [All] Hex, Oct, Bin: Calling hex/oct/bin while passing in a variant holding a string now works.(Feedback ID: tfgamyxk) [Fix] [OSX] HTMLViewer: Now properly hides.(Feedback ID: eoyncwwl) [Fix] [IDE] IDE History: Now properly goes Back and Forward between overloaded methods.(Feedback ID: uxmffcpd) [Fix] [IDE] IDE Menus: Added multiple keyboard mnemonics to menu items that were missing them. [Fix] [Win] IDE Menus: Can no longer create a property inside of a class interface by using the menu item shortcut.(Feedback ID: zsnntach) [Fix] [IDE] IDE Menus: No longer have the incorrect mnemonic for certain Undo and Redo operations (such as Undo/Redo Add Method) [Fix] [IDE] IDE Menus: Now lists scripting editors in the Window menu.(Feedback ID: ymefyngz) [Fix] [IDE] IDE Menus: Removed the keyboard shortcuts for the Arrange submenu.(Feedback ID: aqsbdzhx) [Fix] [IDE] IDE Menus: The Bookmarks Toolbar menu item now functions properly as a submenu.(Feedback ID: bxqlcjmr) [Chg] [IDE] IDE Menus: The File->New Window menu item's behavior has changed slightly. It now opens up a new window with the project editor tab as well as a tab for the currently selected editor (except for search results and errors). [Fix] [IDE] IDE Menus: The Replace and Find Next menu no longer uses Ctrl(Cmd)+T as its shortcut since that interferes with with Stop Debugging shortcut. Instead, Ctrl+H is used on Windows and Linux, and Cmd+Opt+= is used on the Mac.(Feedback ID: renboqbq) [Fix] [IDE] IDE Menus: To comply with the Apple HIG, now has a menu for Edit->Find->Go to Search, whose shortcut is Cmd+Opt+F on the Mac.(Feedback ID: jesimvio) [New] [IDE] IDE Preferences: Added a new preference to always show tabs, which defaults to true. When this is true, your browsing experience is the same as it's always been. When it's false, then the tab bar is hidden when there is only one tab open (but shown if multiple tabs are open). [New] [IDE] IDE Preferences: Added a preference for the properties window as a floating window. This is temporarily shown under the Build Process pane in the preferences dialog, but will be moved someplace more appropriate in the future. [Fix] [IDE] IDE Preferences: Now honors the autocompletion color preferences.(Feedback ID: ricitfno) [Kis] [IDE] IDE Preferences: The two new preferences are temporarily found under Build Process. They will eventually be moved to a more appropriate place. [New] [IDE] IDE Preferences: There is now a preference to enable tabbed browsing, which is on by default. When true, your browsing experience is the same as it's always been. When it's false, each project item is opened up in its own window instead of its own tab. [New] [IDE] IDE Scripting: Can now query and modify the default value of a constant value by using ConstantValue. This behaves the same as PropertyValue.(Feedback ID: cobhxxsu) [Fix] [IDE] IDE Scripting: Now has the proper default file extension in the save dialog.(Feedback ID: utnadroh) [New] [IDE] IDE Tabs: Can now drag re-order tabs within the IDE. On the Mac, hold down Cmd before dragging. On Windows, hold down Alt. On Linux, hold down Alt+Shift (this is the same shortcut for drag re-ordering toolbar items). [New] [IDE] IDE Tabs: Can now tear off tabs in the IDE. While drag re-ordering tabs in, drag a tab off the left or right-edge of the window to tear it off. Only tabs which are closeable (ie, not the project tab) can be torn off). [New] [IDE] IDE Tabs: Now has a contextual menu which allows various tab operations. [Fix] [IDE] IDE Tabs: Tabs for external items are now properly restored when they refer to an external item.(Feedback ID: oemrrkxs) [Chg] [IDE] IDE Tabs: The single-tab-editor for windows has been split into multiple tabs. The code for a window has its own tab, and the layout for a window has its own tab. Since the IDE redesign, many users have suggested (to phrase it nicely) that this change would make the IDE more intuitive. We have made the change in the first alpha so that there is time for beta users to help evaluate whether this change does or doesn't improve the user experience. (Feedback ID: wvyypxfz) [Nte] [IDE] IDE Tabs: You cannot do an alternate action using a keyboard modifier from any menu command. For instance, if you hold down Cmd while selecting Run from the menu, the debugger will not show up in a new window if you have tabbed editing enabled. [Fix] [IDE] IDE Toolbars: Drag re-ordering the toolbar items now sticks. This has been broken since at least 2006r1. [Chg] [IDE] IDE: No longer has a gutter around the editor panes (so the IDE makes better use of its space). [New] [IDE] IDE: Project list, properties list, control list, file types list, search results list, errors list, etc., all support type-selection. [Fix] [All] Keyboard: Now throws an OutOfBoundsException whenever it is passed a negative value.(Feedback ID: srndinco) [New] [IDE] Language Reference: Improved search results. [Chg] [IDE] Language Reference: search results no indicate that excerpts are only listed for first 25 results. [New] [All] Language: REALbasic now supports the "Currency" datatype. This is a 64-bit fixed-point number format, which holds 15 digits to the left of the decimal point and 4 digits to the right, and is thus compatible with the "Currency" type offered in some versions of Visual Basic. [Fix] [All] Language: Structure string field values no longer include a string of trailing null bytes (out to the field's declared size). (The structure's StringValue is unchanged.) [New] [All] Language: The external string types (CString, PString, WString, CFStringRef, and OSType) will now implicitly convert themselves to String, so they can be assigned to string variables or passed as string parameters. (Previously, one could only convert a string to an external type, not from.)(Feedback ID: dmpndpmt) [New] [All] Language: You can now use the Declare statement to call external functions that return structure values.(Feedback ID: ejadrcjx) [Fix] [All] ListBox: No longer crashes when you have an editable cell active, code in the CellLostFocus event and close the window using the close widget.(Feedback ID: zakdfxsv) [Fix] [Mac] Listbox: No longer draws checkboxes outside of the bounds of the listbox.(Feedback ID: vcjgjtgy) [Fix] [OSX] Listbox: No longer shows a stray checkbox if the listbox has been hidden/shown and subsequently activated/deactived.(Feedback ID: oeqipflg) [Chg] [All] ListBox: No longer shows disabled scrollbars when there's not enough information to need scrolling. Instead, it properly hides the scrollbars (instead of disabling them). [Fix] [All] Listbox: Now redraws the indicator only as needed, not every time the mouse moves.(Feedback ID: onkenmmb) [Fix] [All] Listbox: Setting SelectionType now works at runtime.(Feedback ID: uyuvdqsy) [Fix] [Mac] Listbox: The ActiveCell no longer fails to draw properly after switching tabs while the cell is being edited.(Feedback ID: gmcoxmpw) [Fix] [IDE] Location Field: Now allows you to go to hidden empty events in the code editor. [New] [IDE] Location Field: Now supports going to overloaded methods by specifying parameter type and return type information. For instance, if you have an overloaded method on Class1 named Testing( foobar as String, barbaz(-1) as Double ) as Color, you can type Class1.Testing(string,double()) as Color to go directly to that method. [Fix] [IDE] Location Field: Now supports selecting a control on the window, by doing: "WindowName.ControlName Layout" [Chg] [IDE] Menu Editor: New separators are now named UntitledSeparatorX instead of UntitledItemX.(Feedback ID: lwlnnfem) [Fix] [IDE] Menu Editor: No longer displays Ctrl when it shouldn't(Feedback ID: kyegmcva) [Fix] [IDE] Menu Editor: No longer strips Unicode characters from the name when automatically renaming a MenuItem based on the item\\'s Text. [Fix] [IDE] Menu Editor: When changing the text of a MenuItem for the first time, the text and name change are now undoable actions as a set. Previously, you could only undo the text change (but not the automatic name change). [Chg] [All] MenuHandlers: The intrinsic control menu handlers (such as EditField.SelectAll) are now handled after any user-defined menu handlers on the EditField subclass (if it was subclassed). Note that this means that if you have a SelectAll handler on the Window of the EditField, it will no longer be called when the EditField has focus, because the EditField will now handle it first. In this situation, create an EditField subclass that defines its own SelectAll handler, and handle the desired behavior there.(Feedback ID: qufqksja) [New] [All] MenuItem: Added Icon As Picture property to the MenuItem class. Use this to assign individual pictures to the menu item. Note the default sizes for each platform, since REALbasic will not resize the icons for you. On Windows, the icon will invert when you highlight the item (this may change in the future). [Chg] [Win] MenuItem: MenuItems with their Icon property set to non-nil are now owner-drawn on Windows. The behavior will not have changed, but the visual aspects should be improved over the previous version. [New] [All] MenuItem: When specifying a shortcut, non-printable keys can now be used (F1-F15, Tab, Enter, Space, Del (Delete), Return, Bksp (Backspace), Esc, Clear, PageUp, PageDown, Left, Right, Up, Down, Help, Ins (Insert)). If a shortcut is more than one character (ie, "F1"), the Command/Ctrl key is no longer implied, and must be explitly defined: "Cmd-F1". The IDE automatically does this, and the only place to look out for problems is if the shortcut is being set via code.(Feedback ID: sudszqnl) [Fix] [IDE] MenuItems: When using dynamic constants as the shortcut, the various menu modifier checkboxes now work properly.(Feedback ID: romtxjjl) [Fix] [Win] MsgBox: Now properly sized instead of being stretched too long horizontally (seemingly at random).(Feedback ID: ttjuclsc) [Fix] [Win] OLEObject: Now properly releases the event connection established with the server app when the OLEObject is destroyed. This bug may have caused random crashes depending on when the server app triggered an event. [New] [Win] OLEObject: ValueArray function can now accept a list of parameters to pass to the automation object. The parameters array is assumed to be 1-based. Prototype: ValueArray( name As String, parameters() As Variant) As Variant() Example usage: Dim synList() As Variant Dim params(1) As Variant params(1) = 1 synList = synInfoObj.ValueArray("SynonymList", params) [Fix] [All] PopupMenu.RemoveRow: No longer leaks the Tag for the rows.(Feedback ID: scbbztzr) [Fix] [All] PopupMenu/ComboBox: Adding rows to a runtime created PopupMenu/ComboBox control now works properly(Feedback ID: vxlzuing) [Fix] [OSX] PopupMenu: No longer consumes 100% of the CPU on composite windows on 10.4+.(Feedback ID: hdrepvig) [Fix] [Win] PrinterSetup: No longer crashes on Windows when assigning a printer setupstring. Note that you will have to obtain a new setupstring, as the ones before this release are now invalid.(Feedback IDs: lwlierco, hagzejij) [Fix] [Win] Printing: No longer failing to show the printer setup and page setup dialogs in certain instances.(Feedback ID: sinfamxk) [Fix] [Win] ProgressBar: Now draws properly when calling DrawInto and the ProgressBar is indeterminate.(Feedback ID: ivbbxzfm) [Fix] [IDE] Project Files: Revert to Saved no longer quits the IDE on windows when only one project is open.(Feedback ID: dxnnqskj) [Fix] [IDE] Project Item Editor: Now allows you to copy external items and paste them into another project.(Feedback ID: kwimutuk) [Fix] [IDE] Project Item Editor: Now has keyboard mnemonics for external items\\' contextual menus. [Fix] [IDE] Project Item Editor: Now strips leading underscore characters from imported objects when legalizing the name. Remember, legal identifiers must start with a letter, and then contain only letters, numbers and underscores.(Feedback ID: fpqfjxsr) [Fix] [IDE] Project Item Editor: On Windows and Linux, fixed a bug for a double-click shortcut. Ctrl is no longer used for two different shortcuts. Instead, if you hold down Ctrl, it opens in a new window. Holding down Shift opens the alternate editor. Ctrl+Shift does the alternate editor in a new window. [Fix] [Mac] Project Resources: Resources such as Text files, pictures, sounds, etc compile more reliably. This fixes text resources in Console Applications, as well as MenuItem.Icon.(Feedback ID: pbbzvlux) [Fix] [IDE] Project Windows: Closing a window now properly closes the individual editors.(Feedback ID: suljkxlf) [New] [IDE] Properties Listbox: Can now be (globally) detached into a floating window or docked as part of the main window frame. Also, it can be hidden or shown via the View menu. In 2006 Release 3 a3, this hasn't been fully debugged and may cause exceptions or internal errors. [Fix] [IDE] Properties Listbox: Now joins properties by group (so if you have multiple groups of the same name, the properties are joined under a single group).(Feedback ID: wqqpumpt) [Fix] [IDE] Properties Listbox: Now properly evaluates expressions which end with a ), such as (2+2) and 400+2*(275-151)(Feedback ID: ltjbwvif) [Kis] [IDE] Properties Listbox: Rolled back the following change: Now joins properties by group (so if you have multiple groups of the same name, the properties are joined under a single group).(Feedback ID: wqqpumpt) [Fix] [IDE] Properties Listbox: The Super field of the properties listbox now lists parent classes as well as subclasses (note that it will not show you RectControl, Control or Object).(Feedback ID: rrjjoeef) [Fix] [IDE] Property List Behavior: No longer munging data that's been inherited from a superclass when reloading the project.(Feedback ID: zqndtoas) [Fix] [All] Ptr: Casting to Ptr from a type other than an integer no longer causes failed assertions.(Feedback ID: ukiorjiq) [Chg] [All] REAL SQL Database: Boolean fields are now more pedantic about what they expect when using DatabaseField. BooleanValue. Previously, '0' and 'false' were treated as False and anything else was treated as True. Now, '0' and 'false' are treated as False and '1' and 'true' are treated as True. The behavior of any other values is undefined if retrieved using DatabaseField.BooleanValue. DatabaseField.StringValue, on the other hand, should be able to retrieve the original data if it can't be identified as a boolean. If the REAL SQL Database can identify the value as a boolean, however, then False will always return 'false' and True will always return 'true', regardless of how those values are stored in the database. This is a side effect of the way in which database engines interact with the database API in the REALbasic framework. Note that the change to DatabaseField.BooleanValue should only be an issue if you are trying to store non-boolean data in a boolean column. [Fix] [All] REAL SQL Database: ErrorMessage now returns a String with UTF-8 encoding. [Fix] [All] REAL SQL Database: Fixed problems with incorrect error messages. [New] [All] REAL SQL Database: New AutoCommit property. Defaults to False. If set to True, the REAL SQL Database will automatically open and close a transaction for each write to the database. To group writes in one transaction use BEGIN TRANSACTION and COMMIT. [Fix] [All] REAL SQL Database: Now quote all values in the UPDATE SQL statement that gets created from a call to RecordSet.Update. Not doing so resulted in unpredictable behavior. For example, it was not previously possible to insert non-numeric data into a numeric column, even though SQLite itself permits such behavior. Attempting to do so resulted in strange error messages. [Nte] [All] REAL SQL Database: The latest version of SQLite is smarter about detecting whether or not it can allow database connections to be shared by more than one thread. Connection is allowed when the OS supports it. Otherwise, connection sharing may be allowed if the database file is not locked. On most up-to-date OSs, connection sharing should now work fine. But you may run into an OS that does not permit connection sharing (particular older versions of Linux). If you plan to share database connections in more than one thread, be sure to test on all platforms you plan to support. [Chg] [All] REAL SQL Database: The REAL SQL Database is now more careful about putting values into a database and getting them back out through a DatabaseField, with the goal being that, as much as possible, the original data in the database can be retrieved using StringValue. In particular, it is now possible to get non-numeric data out of integer, double, and boolean columns using DatabaseField.StringValue. [New] [All] REAL SQL Database: Upgraded to SQLite 3.3.5. [Fix] [All] REALSQL Database: It should now be possible to add database files with non-ASCII characters in their names to a REALbasic project. [Fix] [All] REALSQL Database: The name that gets created in a REALbasic project when adding a REAL SQL Database should now always be a legal REALbasic identifier. [Fix] [Win] RectControl.HelpTag: No longer fail to reappear after timing out on Windows.(Feedback ID: hqfxiewp) [Fix] [IDE] Saving projects: No longer fails to save code changes in external window project items when the only change is to code within a control on the window.(Feedback ID: xdbvtafy) [Fix] [IDE] Saving: In the Linux IDE, selecting the XML file filter now changes the file extension so you don't need to change it manually to save as XML.(Feedback ID: pquhzkxg) [Fix] [IDE] Search Results Editor: Now differentiates between notes and regular code.(Feedback ID: caybnonu) [Fix] [Win] Serial: No longer throws failed assertions when you call Flush, SetBreak, ClearBreak or XmitWait before calling Open. [Fix] [Win] Shared Properties: Arrays that are shared properties are now initialized properly on Windows and Linux.(Feedback ID: xsldltqn) [Fix] [Lin] Shell: Interactive and asynchronous modes no longer fail with X asynchronous errors. [Fix] [All] ShowModalWithin: Now no longer crashes if passed nil. This affected the MessageDialog, FolderItemDialog, and Window classes. They now perform the ShowModal equivalents.(Feedback ID: bmusevaa) [Fix] [All] Socket: No longer causes a failed assertion (However, you should update your code to use TCPSocket)(Feedback ID: pksedugl) [New] [All] SpecialFolder: Added SpecialFolder.CurrentWorkingDirectory as a way for you to get the current working directory. Note that this may be different from GetFolderItem( "" ), especially if your application is launched from the command line. [Fix] [OSX] SpecialFolder: Is now more reliable. This problem seemed to randomly affect Mach-O and SpecialFolder.ApplicationData, but the nature of the bug could also cause similar problems in Carbon and Classic PEF.(Feedback ID: kepruhfl) [Fix] [All] SpecialFolder: No longer leaks 28 bytes of memory when getting a special folder.(Feedback ID: sngunlkl) [Fix] [All] Strings: Join function no longer leaks the first string in the input array. [Fix] [IDE] Structure Editor: Structure fields with trailing comments no longer confuse the structure editor's size and offset calculations.(Feedback ID: pmdxyneo) [Fix] [IDE] Text Projects: Now loads the name of the control properly(Feedback ID: ajzyopyy) [Fix] [Lnx] Ticks: Ticks now returns the correct tick count instead of being 2.x times off(Feedback ID: yshfabki) [Fix] [IDE] Toolbar: Location field no longer appears (usually occurs when a tab is closed) when the main toolbar is hidden.(Feedback ID: svqfsjfm) [Fix] [Win] TrayItem: Now properly handles the mask for the icon in all situations.(Feedback ID: vmwnxdix) [Fix] [All] Variant: A problem with the Variant type, causing a multitude of symptoms, has been corrected. Variants should once again work normally. [Chg] [All] Variant: The Variant type is no longer considered to be a subclass of Object. This was largely a technicality, but subtle changes to overloading behavior involving variants and objects may occur as a result. [Nte] [All] Variant: The Variant.Type code for Currency values is 6. [Fix] [All] Various Classes: DragItem, DockItem, and Sound no longer raise failed assertions when used in certain ways.(Feedback ID: petnacdc) [Chg] [IDE] Version Control Format: Changed the extensions: .rbt->.rbvcp, .rbr->.rbres, .frm->.rbfrm, .bas->.rbbas, .mnu->.rbmnu [Fix] [IDE] Version Control Format: Constants now save their scope information properly.(Feedback ID: vpvqwfbw) [Nte] [IDE] Version Control Format: Note that the version control format assumes UTF8 strings on input. Any other encoding is considered invalid and can result in project corruption. [Fix] [IDE] Version Control Format: Now reconstructs submenus properly.(Feedback ID: uuclzuyp) [Fix] [IDE] Version Control Format: Projects which have their method scope information corrupted now have a better recovery mechanism. [Fix] [All] Virtual Volumes: No longer throwing failed assertions when reading in empty virtual volumes.(Feedback ID: wbkzcvmg) [New] [IDE] Window Editor Behavior: Extended the functionality of the dialog so that you can now add/modify group headings, add enumerations, drag-reorder properties, etc. [Chg] [IDE] Window Editor Behavior: No longer shows private, protected or shared properties. Also, no longer shows them in the properties window. [Fix] [IDE] Window Editor: Can now move and resize the line control without it going haywire.(Feedback ID: kffutumy) [New] [IDE] Window Editor: Cmd (or Ctrl on Windows/Linux)+double clicking on an item in the window editor behaves the same as the project item editor. It opens the code editor in a new window.(Feedback ID: rdpngmqo) [Fix] [IDE] Window Editor: Duplicating (or pasting) a container control no longer fails to give the new control a unique name.(Feedback ID: xltxpidc) [Fix] [IDE] Window Editor: Linux IDE: no longer throws GTK/GLIB assertions when adding a PopupMenu(Feedback ID: iwbviypm) [Fix] [IDE] Window Editor: Locked child controls on a ContainerControl no longer move unpredictably.(Feedback ID: khsrpwbk) [Chg] [IDE] Window Editor: No longer displays the rulers in the window editor, and the splitters are now more appropriately sized for all platforms. (appearance of the splitter icon still needs updating on the Mac and there are other splitters that are still the old size) [Fix] [IDE] Window Editor: Now honors the default font and size settings for plugin controls which use the REALDefaultControlFont and REALDefaultControlFontSize functions.(Feedback ID: ecdosnhd) [Fix] [IDE] Window Editor: Now properly draws the MinimizeButton state.(Feedback ID: apqurjio) [New] [IDE] Window Editor: Now saves state information about splitter locations, control selection, scroll location, etc. [New] [IDE] Window Editor: Now saves state information about the position of scrollbars, splitters, the window and control selection.(Feedback ID: jikzomhq) [New] [IDE] Window Editor: The control view switcher now contains an option to show All Controls. This is an amalgamation of Built-in, Project and Plugin controls. [Fix] [IDE] Window Editor: When renaming a control so that it no longer belongs in an existing control array, it no longer beco [Fix] [Car] Window: No longer has an "empty" focus when tabbing past the last control on the Window.(Feedback ID: ekrnytod) 2006 Release 2: [Fix] [All] Arrays: Redimming an array of structures no longer corrupts all but the first existing element value (index zero).(Feedback ID: qqzoynut) [Fix] [IDE] Autocomplete: Now autocompletes enumeration members(Feedback ID: xydofspa) [Fix] [IDE] Autocomplete: Now autocompletes MenuItems (such as FileQuit).(Feedback ID: uulgeliv) [Fix] [IDE] Autocomplete: Now completes structure members that are Integer and Double when on the left-hand side of an expression.(Feedback ID: mnlzordb) [Fix] [IDE] Autocomplete: Works with interfaces again.(Feedback ID: ewulzjsk) [Fix] [IDE] Bookmarks: Pressing the close button in the New Folder dialog (while adding a bookmark) no longer throws an exception.(Feedback ID: blajqosq) [Fix] [IDE] Classes: When adding new event definitions, removing event defintions, or changing the parameters to event definitions, all subclasses and instances on a window are now updated accordingly. [Fix] [IDE] Code Editor: Can now paste methods into interfaces without the source code coming along for the ride. [Fix] [Win] Code Editor: Certain Polish characters (and possibly other foreign language characters) can now be typed in the code editor.(Feedback ID: qgzvzwph) [Fix] [IDE] Code Editor: Doing a find on an identifier now does a whole word find within the entire project, and the find operation does not search the entire project twice over.(Feedback ID: bhgopwoj) [Fix] [IDE] Code Editor: Having multiple Exception statements in the same try-catch block will now indent correctly. [Fix] [IDE] Code Editor: Menu names are now sorted when trying to add a menu handler.(Feedback ID: zyzmxzvm) [Fix] [IDE] Code Editor: No longer can make the source code lines disappear by clicking at the end of a line that had a matching autocomplete when the insertion point was already at the end of the line.(Feedback ID: qqksheem) [Fix] [IDE] Code Editor: No longer munges property declarations containing a space, like Foobar(1, 2)(Feedback ID: ncmdfdlb) [Fix] [IDE] Code Editor: No longer suggests Constructor and Destructor for non-class objects (like modules).(Feedback ID: iwmmiiqy) [New] [IDE] Code Editor: Now has a Hide/Show Empty Events option in the View menu (and contextual menu in the browser pane).(Feedback ID: jztdxhna) [Fix] [IDE] Code Editor: Now has the events updated properly when you change the super in the project item editor.(Feedback ID: tmqcaggy) [New] [IDE] Code Editor: Now suggests interface methods in addition to superclass methods in the code editor. [Fix] [IDE] Code Editor: On Windows, the text entered in the code editor is no longer anti-aliased (was not intended to be).(Feedback ID: cywnzfne) [New] [IDE] Code Editor: Option-Up arrow and Option-Down arrow now perform the same way that TextWrangler/BBEdit/other source-level editors work. Also, Option-Pg-Up and Option-Pg-Down work this way, too.(Feedback ID: fkabxtqo) [Fix] [IDE] Code Editor: Refactored copy and paste functionality (as well as drag and drop) for better behavior with regards to code items (methods, properties, etc).(Feedback ID: bsprugfb) [New] [IDE] Code Editor: Ressurrected the Switch To contextual menu. [Fix] [IDE] Code Editor: The browser now updates properly when events are added, removed, implemented, or changed in a superclass. Events that implemented a superclass' event that no longer exists, or was implemented by another class in the hierarchy now show up italic, similar to how 5.5 and prior behaved. [Fix] [IDE] Code Editor: The menu handler combo box no longer displays MenuItems that are separators (whose text is "-").(Feedback ID: cwbuljld) [Fix] [IDE] CodeEditorControls: Adding a new MenuHandler will only list each menu item name once. Menu arrays are no longer listed once for each item in the array. [Fix] [IDE] ComboBox: Now has a UseFocusRing property in the properties listbox again.(Feedback ID: tznyfygf) [Fix] [IDE] ComboBox: Now shows AutoComplete in the properties list again (broken in 2006r1).(Feedback IDs: xxiphgni, suhzumax) [Fix] [All] Compiler: A compile error now occurs when you declare an array with a ubound lower than -1.(Feedback ID: rxlwyeag) [New] [All] Compiler: Added support for the Ptr type, and the ability to dereference it with any structure-safe type (sorry, this note seemed to be missing from previous alpha releases). There is an optional byte offset parameter. [Fix] [All] Compiler: An error no longer occurs when you refer to a structure's size constant using the structure's name instead of a structure expression.(Feedback ID: nzbhiyne) [Fix] [All] Compiler: Compiler no longer fails an assertion in CGPPC.cpp when faced with a select case statement of olympian proportions (tens of thousands of cases).(Feedback ID: fodvpsst) [Fix] [All] Compiler: Crashes and spurious OutOfBoundsExceptions no longer occur when inserting or appending structures to an array. [Fix] [All] Compiler: Declare statements now obey block scoping rules; a method name declared in a block now goes out of scope at the end of that block. [Fix] [All] Compiler: No longer allows functions or properties that aren't shared to be called from the class scope, such as Class1.PropertyName.(Feedback ID: rwcusxif) [Fix] [All] Compiler: No longer crashes when a control has the same name as its class.(Feedback ID: waototnz) [Fix] [All] Compiler: No longer crashes when a particular syntax error occurs involving a series of minus signs.(Feedback ID: roetmxer) [Fix] [IDE] Compiler: No longer crashes when attempting to compile a project containing the expression "IsA Object". [Fix] [All] Compiler: No longer fails an assertion in CGPPC.cpp or CGIA32.cpp when compiling a program which calls a method with an optional array parameter.(Feedback ID: kxdmmibs) [Fix] [All] Compiler: No longer fails an assertion in datatypes.h when a syntax error occurs in a structure field declaration.(Feedback ID: bzzcttkc) [Fix] [All] Compiler: No longer fails an assertion in DeclarationTable.h when a Declare statement omits the external method's name.(Feedback ID: odppdjoq) [Fix] [All] Compiler: No longer fails an assertion in Expressions.cpp when a syntax error occurs involving an operand of a boolean operator.(Feedback ID: xvrtclpc) [Fix] [All] Compiler: No longer fails an assertion in SmartRef.h while compiling a program with very deeply nested statement blocks.(Feedback ID: cnxiaome) [Fix] [All] Compiler: No longer fails an assertion in SymbolUtilities.cpp after certain complex error conditions occur, involving object expressions and typecasting.(Feedback ID: crgerqmi) [Fix] [All] Compiler: No longer fails to copy more than 16 bytes of a structure 32 bytes or larger on PowerPC.(Feedback ID: sjbtlwlo) [Fix] [IDE] Compiler: No longer gets in a half-working state when you put "dim X as Y" in the return type field of a method declaration.(Feedback ID: zogzvhyk) [Fix] [All] Compiler: Now reports an error message when a structure value appears in an expression, instead of failing an assertion in TypeConversions.cpp. [Fix] [All] Compiler: Reports an error instead of crashing when you call a constant or variable with the Call statement.(Feedback ID: xwcrmeuo) [Fix] [All] Compiler: When a structure contains a structure which contains the original structure, the compiler reports an error instead of failing an assertion.(Feedback ID: kbdzmfkv) [Fix] [IDE] Compiling: Now has a more descriptive error when a window inherits from another window.(Feedback ID: fbzqabra) [Chg] [IDE] Constants: When exporting an importing dynamic constants, the IDE now prefers to map the "nl" ISO 639-1 code to Dutch rather than Flemish, which also uses the same ISO 639 code.(Feedback ID: mtqcdaze) [Fix] [All] ContainerControl: Cloning controls in the ContainerControl's constructor method now works instead of crashing.(Feedback IDs: poinxmbs, cwhgllla) [Fix] [All] ContainerControl: Repositioning a ContainerControl after it's embedded now works more reliably.(Feedback ID: pnmbvomz) [Fix] [All] ContainerControl: When embedded and resized on a window in the IDE, the ContainerControl became a potential parent for any control within the default size of the ContainerControl. This has been fixed.(Feedback ID: cnhmeazx) [Fix] [IDE] Control Arrays: It should no longer be possible to create a control array with more than one item at the same index, and projects with such cases are handled more gracefully.(Feedback ID: ntuqmovl) [Fix] [All] Control Arrays: Now can use window constants, even if they are marked as dynamic.(Feedback ID: nyiquwbn) [Opt] [] Core Framework: Updated many of the internal core functions to use optimized versions of standard code. This should affect many parts of the REALbasic framework and provide decent speed gains. [New] [All] Cursors module: Added System.Cursors.InvisibleCursor, as well as .Show and .Hide.(Feedback ID: qzvcneka) [New] [All] Cursors module: Now has two new cursors available on all platforms -- MagnifyLarger and MagnifySmaller.(Feedback ID: vqnhemma) [Kis] [Lnx] Cursors module: System.Cursors.Show and .Hide do not function on Linux currently. [Fix] [IDE] Database Editor: Opening a query window with no tables (or in a database with tables that have not been saved yet), no longer throws an unhandled exception(Feedback ID: rcbnmfgl) [Fix] [Win] Date: Fixing date math with fringe cases involving subtracting months.(Feedback ID: ymkftloe) [Fix] [Mac] Dates: All string properties on 10.2.8 and before now use the correct encoding.(Feedback ID: seyilims) [Fix] [IDE] Debugger: No longer draws string text under the "see more data" button.(Feedback IDs: vzyvmowf, etsrpcpr) [Fix] [IDE] Debugger: No longer throws an OoutOfBoundsException when contextual clicking on an open area in the variables pane.(Feedback ID: usrroytd) [Fix] [OSX] Declares: When declaring against CarbonLib (and other common PEF lib names) in a Mach-O, you now get an error during compilation. In most cases you should declare against Carbon for Mach-O apps. (Feedback ID: bnnjswbh) [Fix] [Win] Drag & Drop: AcceptFileDrop with supplied files types are now honored, instead of allowing anything to be dropped on the control/window.(Feedback ID: mxkxescl) [New] [All] Drag 'n Drop: Added an additional parameter (Action As Integer) to the DropObject, DragEnter, DragExit and DragOver events. This parameter specifies the drag action, which can take on the value of any one of the following: DragItem.DragActionDefault = 0 DragItem.DragActionCopy = 1 DragItem.DragActionMove = 2 DragItem.DragActionLink = 3 [Fix] [IDE] Dynamic Constants: Now are exported if contained in external items.(Feedback ID: hawtxbhg) [Fix] [All] Dynamic Constants: Now support putting multiple dynamic constants, separated by line endings or tabs, into a string property value.(Feedback IDs: wpyvagic, jbzfjrsa) [Fix] [Win] EditField: Masks now work again (Feedback ID: iuwvezzv) [Fix] [Lnx] EditField: No longer crashes (or gives failed assertions) when getting the TextColor or TextFont of a single line EditField(Feedback ID: xoflwxln) [Fix] [Win] EditField: No longer shows password text as plain text on Windows 98(Feedback IDs: icsodguv, wqmnhspi) [Fix] [Mac] EditField: Now allow vertical scrolling even if there is a horizontal scrollbar.(Feedback ID: zpunfyls) [Fix] [Car] EditField: The international inline input pallete now shows up next to the insertion point. [Fix] [Win] EditField: The MouseWheel event is now fired when an EditField has the focus(Feedback ID: jdjyxyoz) [Fix] [IDE] Editor Toolbar Windows: Pressing the Close button on the custom editor toolbar window no longer randomly crashes the Linux IDE(Feedback ID: yonzdcpi) [Fix] [IDE] External items: External window items are now reliably saved when the properties of controls on that window are modified(Feedback ID: jbtkmicv) [Fix] [IDE] External Items: In the Linux IDE, importing class items as external (by holding Ctrl+Shift) now works(Feedback ID: shtrqtcd) [Fix] [IDE] External Items: No longer throws an exception if no path information is stored for an external item.(Feedback ID: mikutalu) [Fix] [IDE] File Types: Changes are now saved for simple case changes.(Feedback ID: kzwektlj) [Fix] [IDE] Find Dialog: Now much better about not changing the scope popup unless needed.(Feedback ID: kzjwsswv) [Fix] [Win] Font support: The System font now reports back the proper system font on all versions of Windows. For Vista and up, this is Segoe UI, for Windows 2000 and up, this is Tahoma, and for below Windows 2000, this is MS Sans Serif.(Feedback ID: vkjxfrsd) [Fix] [Win] Groupbox: Hidden groupboxes no longer refreshes itself when resized(Feedback ID: qozmsbsf) [Fix] [All] HTTPSocket: Fixed a bug that could cause the HTTPSocket to not fire the PageReceived event when the headers uses two different EOL characters in the headers.(Feedback ID: ibzaftqf) [Fix] [IDE] IDE Menus: No longer get out of sync when using contextual menus. This would manifest itself as the main set of menus always staying in a particular state until the IDE was restarted.(Feedback ID: fmlbhpur) [Fix] [IDE] IDE Scripting: The Text property can now be set with a string. Eg) Text = "Here is some code"(Feedback ID: otpkkzom) [Chg] [IDE] IDE Scripting: The WindowTitle and WindowCount functions for scripting now only consider scriptable windows.(Feedback ID: qjranaqj) [Fix] [IDE] IDE: No longer gives failed assertion errors for libglib on launch(Feedback ID: mtllvyks) [Fix] [IDE] IDE: Now brings you to the project item editor when you add a new class, window, etc.(Feedback ID: ybgkkgyy) [Fix] [IDE] IDE: Now have a two-stage concept of file dirtiness for your project file. Major changes will prompt you to save on quit. Minor changes will not prompt you, but you will still be able to select File->Save.(Feedback ID: phesscpb) [Fix] [All] IsNumeric: Now returns false when passed a string that starts with an &, but is not followed by h, o or b (for hex, oct or bin).(Feedback IDs: rkszxjzp, fgwjdydc) [Fix] [IDE] Language Reference: The focus now defaults properly to the location field.(Feedback ID: lcgheopn) [Fix] [Win] ListBox: Listbow text is no longer anti-aliased(Feedback IDs: ozconqgy, gjzpndnw) [Fix] [Win] Listbox: Listbox content no longer fades on scroll(Feedback IDs: udrvvjhm, gpnvjhec) [Fix] [All] Listbox: The KeyDown event now fires for unicode input, as well as with a properly defined encoding.(Feedback ID: wpmrbxgh) [Opt] [All] MemoryBlock: Optimized MemoryBlock allocations to reduce the number of cycles needed when allocating a chunk of memory. [Fix] [IDE] Menu Editor: Removing all top level menus no longer causes the IDE to throw an OutOfBoundsException(Feedback IDs: tzwzhlbf, dfmnjmbl) [Fix] [IDE] Method Editor: Linux IDE: The backspace and delete key now works in the method name field.(Feedback IDs: peammots, pumbqnhv) [Fix] [Win] Movie: Getting the Handle now works again(Feedback ID: qaoqptnm) [Fix] [Win] MoviePlayer: No longer invisible when the controller type is initially set to None(Feedback ID: ndnvovkh) [Fix] [IDE] Opening Projects: When opening console projects, the blessed ConsoleApplication object is now identified properly.(Feedback ID: wzcqblgv) [Fix] [IDE] Panel Editor: Now has the proper keyboard mnemonic for the Add button. Furthmore, you can now navigate the listbox via the keyboard properly.(Feedback ID: lzbtzizb) [Fix] [IDE] Plugin Loading: Putting a native shared library in the Plugins folder (i.e a .DLL on Windows, a .dylib on the Mac, or a .so file on Linux) no longer crashes. This feature is intended for developing plugins, publicly released plugins should be in rbx format. (Feedback ID: sankvpqb) [Fix] [All] POP3Socket: Fixed a bug where POP3 commands might not get called or skipped when executing multiple commands from an event of the socket. [New] [All] PopupMenu/ComboBox: Added a new function AddRows( items() As String ) It takes an array of strings and adds them to the PopupMenu/Combobox. This reduces the amount of updating that is required when adding rows individually using AddRow. [Fix] [IDE] Preferences, Code Editor: Now allowed to set the background color of the code editor.(Feedback ID: whjymlpg) [New] [IDE] Preferences, Window Editor: Now defaulting to the proper OS color for the pasteboard. Furthermore, you can now set the pasteboard color in the preferences. [Fix] [IDE] Preferences: Now defaults the code editor background and source code color choices to the OS color choices. Selecting the Reset button will reset the colors to the defaults (OS or product). [Fix] [Win] ProgressBar: Now draws an indetermiate progress bar properly on Windows XP and Vista by using the OS APIs. [New] [IDE] Project Item Editor: Added the "New Implementor" contextual command. Used to create a new class which implements the selected interface from the contextual menu. [Fix] [IDE] Project Item Editor: Adding an interface without the ... button no longer displays the Implements Interface dialog.(Feedback ID: teuvnpkd) [New] [IDE] Project Item Editor: Can now copy and paste entire folders from one project to another.(Feedback ID: vhuralzv) [Fix] [IDE] Project Item Editor: Copying an external class and pasting it now pastes the class itself, not a copy of the external proxy item. [Fix] [IDE] Project Item Editor: Deleting the last App object is no longer allowed [Fix] [IDE] Project Item Editor: Dragging a binary project file or IDE script (or plain text file) onto the project item editor window will now open that project instead of importing it as raw data. Note that this action cannot be undone. [Fix] [IDE] Project Item Editor: Dragging a project item (such as a picture) into the editor now ensures that the item's name is not a keyword and is a valid identifier.(Feedback ID: cboaymhn) [Fix] [IDE] Project Item Editor: Fixed a handful of missing keyboard mnemonics in the project item editor's contextual menus. [Fix] [IDE] Project Item Editor: No longer loses the databases submenu after adding a database for the first time with it.(Feedback ID: lriadtoy) [New] [IDE] Project Item Editor: Now allows you to duplicate the selected project item via the Duplicate menu.(Feedback ID: ahqjftqn) [Fix] [IDE] Project Item Editor: Now allows you to select an external window as the default window on the App class.(Feedback ID: tthregdd) [New] [IDE] Project Item Editor: Now has the Make External and Make Internal contextual menus.(Feedback ID: xnhndlwv) [Fix] [IDE] Project Item Editor: The accept file types dialog (on the App class) no longer gives exceptions when closed via the close button.(Feedback ID: lyqhjlft) [Fix] [IDE] Project: We no longer allow you to get away with blanking out a project item\\'s name. [Fix] [IDE] Properties Listbox: No longer throws IllegalCastExceptions when doing certain operations on external items.(Feedback ID: rtfvzxrl) [Fix] [All] RegEx: RegEx.SubExpressionCount now works in console applications(Feedback ID: wbtpzkib) [Fix] [IDE] Saving Projects: When doing a Save As operation, the default directory for the dialog is the current project\\'s directory, if any (instead of the OS default). [Fix] [IDE] Search Results Editor: No longer throws spurious OutOfBoundsExceptions when double-cliking (generally seen when holding down the Ctrl or Cmd key and double-clicking).(Feedback ID: qerbnuln) [Fix] [IDE] Search Results Editor: Searching by whole word now considers - to be a word break.(Feedback ID: oacscjqy) [New] [All] Serial: Can now set LastErrorCode of a Serial control as well as get it (which is useful for subclassing Serial). [Fix] [All] Serial: The various line state constants have had their name changed to prefix the word \\\\"Line.\\\\" This will break your code if you were using the line state constants. This was done because there were already properties with conflicting names (DTR and RTS for hardware flow control). [Fix] [Win] Serial: Worked around an issue with buggy drivers with regards to our polling mechanism. Your application will no longer grind to a halt after opening the serial control. [Fix] [Win] Shell: Executing long command lines no longer crashes RB(Feedback ID: sidsmgbl) [Fix] [All] ShellNotRunningException.xml: ShellNotRunningException now works in console applications.(Feedback ID: dodyigbq) [Fix] [All] SMTPSocket: SMTPSocket no longer causes an OutOfBounds exceptions when sending an email without any recipients.(Feedback ID: xmxryeik) [Fix] [All] SOAPMethod: SOAPAction header is always sent with the request when executing a SOAPMethod. Some servers would choke when the SOAPAction header was not present, even if the SOAPAction was to be blank. This would result in an XMLException. [Chg] [Lnx] Sound: Xine is now used to play sounds on Linux, which support more sound formats, such as MP3s and WMAs. If Xine is not installed, we fall back on libsndfile (which supports only WAV and AIFF). [Fix] [IDE] Structure editor: No longer lists enumerations as having an unknown size when you add one to a structure.(Feedback IDs: tonnnvin, qbihqadc) [Fix] [Win] TabPanel: Changing the tab caption no longer blanks out the content area.(Feedback IDs: oxihbtqi, wzukfwsp) [Fix] [Lnx] TabPanel: Suppressed the Changed event from firing when adding tabs. (Feedback ID: mpshdipt) [Fix] [All] Threads: You can now call me.Kill from within a Thread's Run event, as well as Quit from a Thread's Run event without causing bad mojo.(Feedback ID: msbbjgia) [Fix] [All] Timer: Now notifies actionNotificationReceivers even when the Action event is not implemented. Also, now notifies actionNotificationReceivers on Windows and Linux as well. [Fix] [IDE] Typing code for a method is noticeably faster now (especially on Linux).(Feedback ID: pxnlmnim) [Fix] [IDE] Undo/Redo: No longer switches to the code editor when undo/redoing a compound action, such as aligning multiple controls in the window editor.(Feedback ID: pzsnwmpj) [Fix] [IDE] Undo/Redo: No longer switches to the code editor when undoing a compound action such as aligning controls in the window editor. [Fix] [IDE] Undo/Redo: Now shows you the source code affected by the action.(Feedback ID: dfbojhmk) [New] [All] Variant: Now has constants for the Type codes [Fix] [All] VectorList.MultiplyAllBy: Now functions properly.(Feedback ID: orrrkfww) [Fix] [IDE] Window Editor: Center alignment now snaps the control properly when resizing.(Feedback ID: hvnzzuzb) [Fix] [IDE] Window Editor: Changing the ControlOrder property of multiple controls now works as it did in previous versions of REALbasic (pre-2005)(Feedback ID: ygplicso) [Fix] [IDE] Window Editor: Changing the Multiline property of an EditField (in a control array), in the Linux IDE, no longer crashes(Feedback ID: veuptajq) [Fix] [IDE] Window Editor: Double-clicking a control array now takes you to the default event for that control array (instead of just to the top level code editor).(Feedback ID: njmkzrok) [Fix] [IDE] Window Editor: Duplicating a control no longer loses its Super(Feedback ID: bbsmdsft) [Fix] [IDE] Window Editor: Now lists all events in the contextual menu instead of just unimplemented ones. [Fix] [All] Window Editor: Pasting a control no longer loses the name if the control is not a part of a control array.(Feedback ID: fecjaytb) [Fix] [IDE] Window Editor: The Add Control contextual menu no longer displays illegal items beginning with an \"_\" character. [Chg] [IDE] Window Editor: The Add Control contextual menu now only displays classes with events in the list. This negates the need to scroll the menu to use it while still displaying useful items. [Fix] [IDE] Window Editor: The Select contextual menu is now sorted alphabetically for improved readability.(Feedback ID: uyzgahsh) [Chg] [IDE] Window Menu: The Window Menu now lists the project names of all open windows along with the current tab name that the window is in.(Feedback ID: ceszghlz) [Fix] [Lnx] Window: Moving a window (when not yet shown) now behaves properly(Feedback ID: gckhrmqq) [Fix] [Win] Window: Setting the focus property to nil no longer crashes the application(Feedback ID: qzillthj) 2006 Release 1: [Fix] [Win] ActiveX: Setting the Left/Top/Width/Height of an ActiveX control, that already contains such properties itself (like the WebBrowser ActiveX control), now work properly.(Feedback ID: ujuclotx) [New] [Mac] Apple Events: Intrinsic apple events, such as 'odoc', 'quit', 'pref', etc are now all passed to the Application.HandleAppleEvent event first. If you return true, the default behavior will no longer take place (for example, if you return true from HandleAppleEvent for the 'odoc' event, the OpenDocument event will not fire). [Fix] [IDE] AppleScripts: Now import properly (as scripts rather than raw data) even if they don't end in a ".scpt" extension.(Feedback ID: mqxxlkgx) [Fix] [All] Application Launch: No longer throw assertions when a class which implements an interface which defines no methods is instansiated. [All] [All] Arrays: Failed assertions in dump.cpp no longer occur after releasing a reference to an array which has been cast to an array of a superclass of the original element type. [Fix] [All] Arrays: SortWith now works properly with arrays that are "upcasted" from one element type to another.(Feedback ID: dlaywauh) [New] [All] Array.Sort: No longer generates a StackOverflowException on very large, almost-sorted arrays. Note that such worst-case data can still cause Array.Sort to take a very long time to finish, however.(Feedback IDs: dyknvqvu, wmubxzhk) [IDE] [IDE] Autocomplete: Now autocompletes extension methods(Feedback IDs: eeouxnjv, tbphhnwu) [Fix] [IDE] Autocomplete: Now autocompletes more reliably, especially in the context of a Window.(Feedback ID: kserjzdg) [Fix] [IDE] Autocomplete: Now autocompletes mouse cursors. [Fix] [Win] BevelButton: Now draw their icons as disabled when appropriate.(Feedback ID: kbgbvtpm) [Fix] [All] BevelButton: The List getter and setter now throws OutOfBoundsExceptions when the row parameter is out of bounds.(Feedback ID: snjtdydj) [Fix] [Win] BevelButton, PopupArrow: Now draw the popup arrow disabled properly on Windows. This affects BevelButtons with a menu as well as the PopupArrow control.(Feedback ID: uextbuqv) [Dep] [All] BinaryStream: Deprecated the ReadLong, ReadShort, ReadByte, WriteLong, WriteShort and WriteByte methods in favor of the new data-type specific methods.(Feedback ID: kwsmgwqw) [New] [All] BinaryStream: Now supports all the new data types in the form of ReadXXX and WriteXXX (where XXX is the new data type). ie) ReadInt8 and WriteUInt64, etc. [New] [All] BinaryStream, TextInputStream, T: Has a new getter property: Handle( type as Integer ) as Integer where the type can be any of the new HandleType* constants on the class. This property will return a handle of the property type, or -1 if the handle type cannot be retrieved.(Feedback ID: ydtprjxj) [New] [All] BinaryStream, TextInputStream, T: Now has a Constructor: Constructor( handle as Integer, type as Integer ), where type is one of the HandleType* constants on the class, and handle is the appropriate handle type specified by the type parameter. So, for instance, you can use a declare to open a file up with whatever permissions you\'d like, and then pass the Handle to a stream object\'s constructor.(Feedback ID: eyllgykv) [New] [All] BinaryStream, TextInputStream, T: Now has a set of constants for use with the Constructor and Handle property. The constants are as follows: HandleTypeWin32Handle = 1 // A Win32 OS HANDLE HandleTypeFilePointer = 2 // A FILE * HandleTypeFileNumber = 3 // A file descriptor HandleTypeMacFileRefNum = 4 // A file reference number HandleTypeMacFileSpecPointer = 5 // An FSSpec *(Feedback ID: kdcpfhzl) [New] [IDE] Bookmarks Bar: You can now add a method or property to the bookmarks bar via drag-and-drop (drag the item name from the code browser up to the bookmarks bar). [Fix] [IDE] Bookmarks: Opening a project via the Bookmarks menu no longer opens an additional, unwanted window.(Feedback ID: wpujphyb) [Chg] [All] BooleanColumn (in RecordSets and DatabaseRecords) now write a '1' for true and a '0' for false into table fields. Before they wrote the strings 'true' and 'false'.(Feedback IDs: aoimrcjt, tdsgmysk) [Fix] [IDE] Building: Compiling for Linux on the Mac, no longer messes up the version information (incorrect byte order). [Chg] [Car] Built Application: The CFBundleDevelopmentRegion is now included in the property list. This value is based on the Language popup in the build settings dialog. If Default is used, the current language of the machine is used in this entry. If another language is chosen, that language is used.(Feedback IDs: siccbwgy, gwjzgbni) [New] [All] Classes: Can now have Shared Methods and Shared Properties. Shared Methods and Properties live in the class namespace in the same way that Constants do. "Self" is not available in shared methods or shared computed properties, and you can not access instance methods or properties from within a shared method, unless doing so via an instance (such as foo.SomeProperty).(Feedback ID: gwxczsbs) [Fix] [Lin] Clipboard: Getting/setting pictures on the clipboard now works across processes (requires GTK+ 2.6 or better).(Feedback ID: llcpxlwl) [Fix] [Win] Clipboard: Pictures from the clipboard now have a valid Graphics object, mask, etc.(Feedback ID: kpoelibs) [Fix] [IDE] Code Editor: Changing the declaration of an Event Definition now updates any implementations of that event in subclasses.(Feedback ID: kzmcikqw) [Fix] [IDE] Code Editor: Clear all breakpoints works properly again.(Feedback ID: aqrcdsbi) [Fix] [IDE] Code Editor: Constants can now be copied and pasted; they can also be deleted via menus rather than the Delete key. [Fix] [IDE] Code Editor: Horizontal scrollbar no longer stops short when a method contains a long line, among enough other lines to cause the vertical scrollbar to appear. [Fix] [IDE] Code Editor: Keyboards that use the Alt+Gr combination to input certain characters now works in the code editor.(Feedback IDs: zdpefjsx, crbtxfgd) [Fix] [IDE] Code Editor: No longer flickers while typing(Feedback IDs: nfhyhsbs, ntsqgklh) [Fix] [IDE] Code Editor: Now correctly matches multiple "catch" sections within a "try" block.(Feedback IDs: chkkgiti, ekoqliqh) [New] [IDE] Code Editor: Parameters field now autocompletes "As" and known datatypes. [IDE] [IDE] Code Editor: The "Project > Add" menu no longer enables all menu items which are not also present on the code editor's command bar, thereby allowing you to add things in inappropriate places (structures in classes, properties in interfaces, and so on).(Feedback ID: ltrhaitb) [Fix] [IDE] Code Editor: variables declared as part of a "for each" statement now autocomplete properly.(Feedback IDs: tnqxxfep, xevunuks) [New] [IDE] Code Editor: You can now insert colors via a color picker using the Insert Color contextual menu.(Feedback ID: mdzfsueb) [New] [IDE] Code Editor: "super-return" block closers (obtained by pressing shift-Return or Enter) now match the case style (uppercase, title case, or lowercase) of the block opener. [Fix] [Win] ComboBox: Autocompleting ComboBoxes now get their GotFocus event fired properly. [Fix] [Win] ComboBox: Now gets the Text properly when you are querying from the KeyDown event of an autocompleting ComboBox.(Feedback ID: tblimgbi) [Fix] [All] Compiler: A syntax error no longer occurs when you attempt to look up the AddressOf a module method using its qualified name.(Feedback ID: thezshtq) [New] [Win] Compiler: Added three new fields to the version information stored on Windows. InternalName (which is used if your application has an internal vs external name -- and when left blank, will simply be the same of the application minus the .exe), CompanyName and ProductName (which means you can have an executable name like winword.exe and a product name of Microsoft Word).(Feedback ID: suabelyx) [All] [All] Compiler: Compiler once again generates correct PowerPC code for single-to-double and double-to-single floating-point conversions.(Feedback ID: yutzqqzv) [All] [All] Compiler: Enum constants no longer lose their types when the same value is used elsewhere in the program.(Feedback ID: ocrziyao) [Fix] [X86] Compiler: Fixed a strange problem in the IA32 backend which would generate incorrect code for comparisons and certain arithmetic operations.(Feedback ID: upsnafuv) [All] [All] Compiler: Getting the value of an element of an array in a structure no longer causes a crash whenever the array contains any type other than a structure. [] [] Compiler: Methods containing variables whose type is a structure larger than 64 bytes no longer crash on entry (broken in fc1).(Feedback ID: xttneqsp) [IDE] [IDE] Compiler: Negation operator works for all integer types, not just Int32. [New] [All] Compiler: New Int64 and UInt64 datatypes offer support for 64-bit integer arithmetic. (Feedback ID: iatmsfre) [All] [All] Compiler: No longer fails an assertion in FunctionCalls.cpp when handling an overloaded extension method.(Feedback ID: kdckxtwm) [] [] Compiler: No longer fails assertions in CGIA32.cpp when both terms of an expression involve Int8 or Int16 values. [IDE] [IDE] Compiler: No longer fails to report an error when an object reference is supplied as an argument for a parameter which expects an array of the object's superclass.(Feedback ID: srtteili) [Fix] [All] Compiler: No longer fails to verify that an object whose Operator_Compare method is about to be called is not nil when the object came from a ByRef parameter or a simple property of another object, referenced through the dot operator.(Feedback ID: ndwcmcct) [All] [All] Compiler: No longer reports a bogus undefined-operator error when using arithmetic on 8- or 16-bit integers. [Fix] [IDE] Compiler: No longer reports spurious ambiguous overloading errors when calling a method overloaded at different levels of its class hierarchy.(Feedback IDs: jeytxjpn, drlfnyhw) [All] [All] Compiler: Not-equals operator no longer returns true, regardless of the values involved, whenever one of the operands is an Int64 or UInt64. [Fix] [Win] Compiler: Now properly sets the "Description" field in the version resources on Windows. Previously only set one Description field (on the main tab) and not the one on the version tab.(Feedback ID: visdkmwe) [New] [All] Compiler: Now supports a new pragma that allows you to determine which calling convention a method will be compiled with on x86. This allows you to write callback functions on Windows, which typically require the StdCall calling convention. You use it like this: #pragma X86CallingConvention StdCall | CDecl(Feedback ID: mahawzux) [All] [All] Compiler: Numeric literals outside the range of a 32-bit integer used to be represented as 64-bit floats; they now become 64-bit integers instead. [X86] [X86] Compiler: Once again generates working code for single-to-double and double-to-single floating-point conversions. [Fix] [All] Compiler: Protected properties are no longer accessible in classes that derive from the same parent class unless the parent class declares it.(Feedback ID: wlzmgbza) [Fix] [All] Compiler: REALbasic no longer crashes when compiling a program containing a method with an optional ByRef parameter; instead it properly reports an error.(Feedback ID: ghmedwye) [Fix] [All] Compiler: Return type covariance now works if the superclass' return type is "Object", and the subclass' type is any type of object, including an interface. [IDE] [IDE] Compiler: Sort and SortWith do not make the erroneous claim that arrays of Int8, UInt8, Int16, UInt16, UInt32, Int64, and UInt64 cannot be sorted. [] [] Compiler: Structure.StringValue no longer fails to swap endianness for certain fields when big-endian values are requested from a little-endian system.(Feedback ID: oujlckib) [Opt] [All] Compiler: Subsequent runs of an application take slightly less time to run. This change makes compiling with many plugins closer to the speed that it would take without any plugins. [IDE] [IDE] Compiler: The compiler no longer complains when a ParamArray is specified as an array type, instead of as an element type. [Fix] [IDE] Compiler: The compiler no longer fails an assertion in datatypes.cpp when a parameter is erroneously specified as both ParamArray and ByRef.(Feedback ID: divmcinf) [IDE] [IDE] Compiler: The overloading algorithm no longer reports spurious ambiguous-overloading errors in some situations where more than two methods would satisfy a given call. [Fix] [All] Compiler: When a class inherits from two other classes, and both parent classes have the same interface in the Interfaces list, there is no longer a failed assertion.(Feedback ID: niwpomaf) [IDE] [IDE] Compiler: You can overload the array methods with Extends methods.(Feedback ID: jcacuirr) [New] [All] Compiler: #if statements can now be one-line statements. The "Then" statement is required. E.g. #if TargetCarbon then MsgBox "I'm on Carbon!"(Feedback ID: vkfahabz) [Fix] [All] Computed Properties: Now allows an exception and finally block. It always allowed try/catch blocks, but an exception block for the body of the accessor previously caused a compiler error.(Feedback IDs: kwgucytz, gjwdlshi) [Fix] [All] ConsoleApplication: Now has SleepCurrentThread, just like the Application class has. [Fix] [IDE] Constants: No longer generate an internal error when you enter an invalid constant value (e.g., "&40" for a numeric constant).(Feedback ID: dyrgkygo) [Fix] [Lnx] Controls: REALSetControlFocus now works properly for custom widgets.(Feedback ID: olkmrulw) [Fix] [Lin] Controls: Setting the control focus in Window.Open now works properly(Feedback ID: umomedtw) [Fix] [IDE] Database editor: Database column attributes are no longer lost when sorting the columns(Feedback ID: zuerlkdf) [Fix] [Win] Date: Doing date math on Windows now gives proper results when setting negative values for any of the fields (except years, which must always be absolute).(Feedback ID: bbebqsxi) [IDE] [IDE] Debugger: Looking at the contents of a structure in the debugger, when the structure has a string field, no longer causes the debug app to crash. [Fix] [Win] Debugger: No longer allows the destructors for static objects to be called when Killing the application. This would manifest itself by throwing failed assertions when you have running threads. [IDE] [IDE] Debugger: Structure contents now show up in the debugger's variables pane.(Feedback ID: afqrstxp) [IDE] [IDE] Debugger: The last few digits of a value at the extreme end of an Int64's or UInt64's range are no longer garbled when using decimal format. [Fix] [IDE] Debugger: The picture viewer's contents pane now displays images properly on Windows and Linux. Was also slightly optimized. [X86] [X86] Debugger: Viewing a 64-bit integer no longer causes the debugger to crash (broken in b2).(Feedback ID: fkxxrbzr) [New] [All] DecodeQuotedPrintable: Now decodes input where hex values are represented in lowercase. (Despite the requirement in RFC 1521 that the hex codes always be uppercase, it is common to find them in lowercase in such things as email messages, and DecodeQuotedPrintable can now decode these anyway.) [All] [All] Drag & Drop: Added new drag events for all RectControls and Window DragEnter( obj As DragItem ) As Boolean - This event is triggered when the drag enters the control or window. Returning true in this function will prevent drop from occurring. DragExit( obj As DragItem ) - This event is triggered when the drag leaves the control or window. DragOver( x As Integer, y As Integer, obj As DragItem ) As Boolean - This event is triggered when the drag is over the control or window. x,y are mouse coordinates relative to the control. Returning true prevents drop from occurring. [Fix] [Win] Drag & Drop: Dragging a picture from an RB app to another app now works, and vice versa. [Fix] [Win] Drag & Drop: Dragging a picture from your RB app to another app now works, and vice versa.(Feedback IDs: qyqpkpjy, xhmdsapg) [New] [Mac] Drag & Drop: Now supports promised files. To enable this advanced feature, call AcceptRawDataDrop with "phfs" as the data type. Then, when a drag from an application that sends file promises is dropped on your app, you will find a FolderItem in the drag item (usually, this will point to something in the TemporaryItems folder, and you should delete this file when you're done with it). [Chg] [Win] EditField: Are now drawn theme-savvy under the following cirumstances: The border property is set to true. Multiline is set to false. Multiline is set to true, but the Scrollbar* properties are set to false. [Fix] [Mac] EditField: No longer generates an assertion failure if you assign a text whose encoding is not one supported by the OS, and whose length is an odd number of bytes. [Fix] [Win] EditField: Now honors LimitText when assigning text directly (instead of via user input).(Feedback ID: ipeqsidx) [Fix] [Mac] EditField.AppendText: Now properly remains scrolled to the bottom even when the font is set to SmallSystem. [Fix] [Mac] EditField.CharPosAtXY: Now returns a correct result when given a pixel position beyond the right end of the line, on the last line of text. [Fix] [Mac] EditField.CharPosAtXY: Now returns correct results for pixel positions just below the baseline in a small font such as SmallSystem. [Fix] [All] EmailMessage: Fixed a problem where some emails that had a mime boundary in the header could have cause a stack overflow exception when just the headers where retrieved.(Feedback IDs: zcmslvmq, tlrnnuam) [Fix] [IDE] File Types Editor: Now has resizeable columns in its ListBox.(Feedback IDs: uyijjidk, vbxwutkl, ymaqufzr) [Chg] [IDE] Find dialog: Now always gives the focus to the "Find" field when it appears, even if it was last left with the focus in the "Replace With" field.(Feedback ID: urfrrriv) [New] [IDE] Find & Replace: Now supports RegEx replacement. In your Replace With string, use \1 to indicate the first subexpression (in parentheses in your search string), \2 for the second, etc. Also use \0 to indicate the whole matched text, and \ for a plain backslash.(Feedback ID: kokocent) [Fix] [Win] Fixed a bug in which databases with non-ASCII characters in their path would fail to open.(Feedback IDs: bfkimlra, quyxyvtw) [Fix] [OSX] Fixed a bug with creating databases at the root of external drives (such as firewire drives).(Feedback ID: apgwpfdm) [Fix] [OSX] Fixed a leak of a FolderItem that occurred every time a database was opened.(Feedback ID: dzsnxsuk) [Fix] [Lnx] Floating Windows: Now float above other document windows [OSX] [OSX] FolderItem: The Visible property now returns values based on Launch Services when available. This means Visible will return false for files that begin with a \".\", and other files the system thinks should not be visible. [Chg] [Mac] FolderItem.AbsolutePath: Now returns a full Unicode path, roughly equivalent to what you would get by walking the \"Parent\" list and concatenating the Name properties together. [Fix] [Win] GameInputDevice: Now supports hat switches and other POV elements.(Feedback ID: blkvdlbx) [New] [All] Graphics: Added a new method to get the OS handle from a Graphics object: Handle( type as Integer ) as Integer The type parameter is defined by one of the new Graphics.HandleType constants. This method will return 0 if the handle type is not supported or available.(Feedback IDs: asoojmdw, mwdsfmtk) [New] [All] Graphics: Added four new constants to be used when getting the handle from a Graphics object. HandleTypeHDC = 1, gets the HDC on Windows. HandleTypeCGrafPtr = 2, gets the QuickDraw CGrafPtr on Mac. HandleTypeGdkDrawablePtr = 3, gets the GdkDrawable * on Linux. HandleTypeGdkGCPtr = 4, gets the GdkGC * on Linux.(Feedback IDs: zkzduyzc, yrroacmm) [Fix] [Lin] Graphics: Now supports drawing lines with different pen sizes(Feedback ID: bexqdcsj) [Chg] [OSX] Graphics.DrawPicture: Now interpolates much better when drawing with Quartz (i.e., when graphics.UseOldRenderer = False).(Feedback IDs: zvimwdpv, otqbhdwb) [All] [All] Hex: Calls to Hex, Bin, and Oct are no longer considered ambiguous when the parameter is a Single or Double.(Feedback ID: uzhywggr) [Fix] [IDE] Icon Editor: You can now add icons via a contextual menu click on the appropriate icon pane.(Feedback ID: brhilaes) [New] [IDE] IDE Scripting: Now supports several new methods; see the IDE Scripting Read Me for details. [Kis] [IDE] IDE Scripting: The new "RunScript" command (within IDE scripts) may crash the IDE. We hope to get that fixed soon. [New] [IDE] IDE Scripting: The REALbasic IDE is now scriptable and recordable on all platforms, using RBScript. See the "IDE Scripting Read Me" document for details.(Feedback ID: fcekdtxn) [New] [IDE] IDE Scripting: There is now an "IDE Scripts" submenu under the File menu. This contains the "New IDE Script" command, but also lists any script files (ending in ".rbs") found in a "Scripts" folder next to the IDE, or next to the current project. Selecting one of these items executes the script; or if you hold down a modifier key, then it opens it in the script editor. [IDE] [IDE] IDE Scripts: Now has a menu bar so that you can save, close and do editing operations.(Feedback ID: nulgxwfj) [IDE] [IDE] IDE Scripts: Now save with the proper extension by default on Windows (instead of with .xml). Also, now filters .rbs files as appropriate.(Feedback ID: aqiomnbz) [] [] If either operand of an integer arithmetic expression is a 64-bit value, the result will be a 64-bit value. If both operands are 32 bits or smaller, the result will be a 32-bit value. If either operand of an arithmetic expression is signed, the result will be signed; the result will only be unsigned if both operands are unsigned. [Fix] [IDE] Items on the command bar overflow menu (which comes up when you click the chevron at the right side of a command bar) are no longer permanently enabled, whether they apply to the current project item or not.(Feedback ID: hjttmyfx) [All] [All] Language: Added "RaiseEvent" which can be used to call an event. This is particularly useful if you have a method and an event with the same name. Example: RaiseEvent SomeEvent return RaiseEvent SomeEvent2(parameters) [All] [All] Language: CLong joins CDbl and Val as a way to convert text to a number; it accepts a string in decimal, hex, octal, or binary format (using &h, &o, or &b as appropriate) and returns its value as an Int64. [All] [All] Language: Enum values must be cast explicitly to integer types; there is no longer an implicit conversion. [New] [All] Language: Integer variables are now available in a range of sizes, using both signed and unsigned forms. New type names are Int8, Int16, Int32, UInt8, UInt16, and UInt32, plus Byte (as an alias for UInt8). Integer is now defined as an alias for a signed integer of the target architecture\'s word size, which on all current targets equals Int32. [IDE] [IDE] Language: It is now possible to typecast from an enum type to a simple integer type, or from one integer type to another, as long as both types are the same size. [Chg] [All] Language: Negative step values now cause a For loop to iterate backwards, instead of aborting instantly. This is more consistent with the way other dialects of Basic work. (The DownTo option is still supported, since it can improve readability, but now it simply reverses the sign of the step value.)(Feedback ID: uxilkzbk) [New] [All] Language: REALbasic offers enumerated constant types. You can add an enumeration to a module using Project > Add or by customizing the module toolbar to include the "Add Enumeration" command. The enumeration's name is a new datatype, and its contents are new constants within the enumeration's namespace. Constant values start at zero, and each constant is one greater than the previous item, unless you specify a value manually by entering "name = value" instead of simply "name". (Feedback ID: ojgskvye) [New] [All] Language: You can now create structure datatypes in REALbasic; open a module and go to Project > Add > Structure. See "Read Me - Structures" for more complete information.(Feedback ID: rnqwssir) [Fix] [Mac] Listbox: Cells that are checkboxes no longer draw past the end of the listbox on the Mac.(Feedback ID: dllgiqwk) [Fix] [Win] ListBox: No longer fires the DoubleClick event improperly on Windows and Linux. Now takes distance and time between clicks into account properly.(Feedback ID: vbkafzcg) [Win] [Win] Listbox: Now draws horizontal thin dotted lines properly(Feedback ID: qwujmfrq) [Fix] [Lin] Listbox: Now draws the hierarchical widget in its correct color, instead of the color last set in the CellBackgroundPaint event(Feedback ID: wmmwgjta) [Fix] [Lnx] ListBox: Selected rows no longer disappear when listbox is disabled.(Feedback ID: bdqmpqba) [New] [IDE] Location field: Now accepts \"App\" as a reference to your blessed Application subclass, even if that is not literally named \"App.\" [New] [All] MemoryBlock: Now supports the new integer data types. [Fix] [Win] MouseCursor Editor: No longer displays the hotspot in the wrong location.(Feedback ID: alaaqqyo) [Fix] [Win] MouseCursor: Cursors dragged into the project now have their hotspot set correcly on Windows, instead of having the x and y axis flipped.(Feedback ID: pzeoyyqx) [] [] Print and Input events no longer fire in the wrong script object when more than one script is running at a time.(Feedback ID: htzidcua) [Imp] [Win] PrinterSetup: No longer crashes on Windows in most cases. The sample still shows a crash after a much more extended period, but the fix is unlikely to be safe for 2006r1. A workaround on the bug has been added to prevent this problem from affecting your applications.(Feedback IDs: lwlierco, hagzejij) [New] [IDE] Printing: Source code printouts now use emphasis for headers, and prefix method names with the class or window name.(Feedback ID: ulsrusey) [Fix] [Lnx] Printing: Starting a new page now clears the page properly [Fix] [IDE] Project Item Editor: No longer prematurely bails out when dragging in a Win32 cursor file where the first entry in the file isn\'t a 16x16 cursor.(Feedback ID: pshhjent) [Fix] [IDE] Project Item Editor: Now updates the state of the encrypted badge when decrypting an item.(Feedback ID: bsefhkwv) [Fix] [IDE] Project Item Editor, Menu Editor: Now supports the Alt+Enter keyboard shortcut on Windows and Linux to set focus to the properties for the currently selected item.(Feedback IDs: wwiftlsi, tksdgbvr) [Fix] [IDE] ProjectItem Editor: No longer allows folders to have a blank name.(Feedback IDs: blykkujm, vmjrelrx) [New] [IDE] Project: You can now drop WMV/ASF movie files into your project and play them using the MoviePlayer (Windows only).(Feedback ID: lywpnpsq) [Chg] [IDE] Properties List: The "Source" property of an RBScript instance now has an ellipsis button, allowing you to enter more than one line of source within the window editor.(Feedback ID: kylwympl) [Fix] [Win] PushButton: Now honors the default property when the button is opened on a modal dialog and the button is not the first control in the control order.(Feedback ID: dwgtvfhx) [Fix] [Win] PushButton: Now properly gets set as the default when the enabled or disabled state changes.(Feedback IDs: ilftrpwe, ludloxtr) [Fix] [Lin] PushButton: Typing Enter/Return in an single-line Editfield, or typing Enter in a multi-line Editfield, now triggers the default PushButton (consistent with other platforms).(Feedback ID: vdxfnjgs) [Fix] [Win] PushButton, CheckBox, RadioButto: Now get the focus properly when using a keyboard mnemonic to trigger their action event. [New] [IDE] rbidescript: This new open-source command-line tool allows you to automate the IDE from the command line shell (or, by using the communications module in your own code, from your own REALbasic app). See the ReadMe file included with the download for more information.(Feedback ID: firrwxjm) [All] [All] RbScript: Scripts that call intrinsic math & string functions no longer crash or otherwise behave in unexpected ways. (broken in R2 or R3) [Fix] [All] REALSQLDatabase: Connection failure should now set the ErrorMessage property.(Feedback ID: ryhsghpi) [Fix] [All] REALSQLDatabase: Fixed a bug that caused empty strings to be treated as NULL values by DatabaseRecord. [Fix] [All] REALSQLDatabase: Fixed several problems with parsing date and time fields, including a possible crashing bug.(Feedback ID: ocmbnpxd) [Fix] [All] REALSQLDatabase: Fixed some situations where error messages weren\'t being set correctly. [Chg] [All] REALSQLDatabase: REALSQLDatabase now yields time to threads during lengthy queries. [New] [IDE] REALSQLDatabase: The database design dialog should now offer \"Text\" as an addition column type for REAL SQL Databases.(Feedback ID: kznlxpsg) [Nte] [All] REALSQLDatabase: Updated to most recent version of SQLite (3.2.7). [Fix] [Lnx] RectControl.KeyDown: The key parameter in the KeyDown event now reports keypad numbers correctly.(Feedback ID: dlesgcbk) [Fix] [Win] RectControl.KeyDown: "Dead" keystrokes are now translated properly.(Feedback ID: nlocjtuj) [Fix] [All] RegExMatch: SubExpressionCount is now available in console applications.(Feedback ID: linrbegp) [Fix] [IDE] Remote Debugging: The IDE now uses the preferences pane to determine which IP address the IDE is on when remote debugging. [All] [All] RuntimeException: A new property \"Stack() as String\" contains a list of all of the methods in the stack from the main entrypoint to the point at which \"raise\" was invoked. The first element (0) contains the current function works up the call stack from there. This feature only works if the \"Include Function Names\" feature is enabled.(Feedback ID: qqwjvafy) [Fix] [Lnx] Screen: AvailableLeft, AvailableTop, AvailableWidth, and AvailableHeight, now properly accounts for the task bar. [Fix] [Win] Screen: AvailableTop, AvailableLeft, AvailableWidth and AvailableHeight now work properly when querying the non-primary monitor. [New] [IDE] Search Results: Copying the search results now includes the data from the "Match" column, which shows where the match occurred in text form, with the matched part indicated in square brackets.(Feedback IDs: frpzbnyk, mkijbdwv) [New] [IDE] Search Results: The "Match" column is now sortable.(Feedback IDs: vldkzbol, ujbqfoug) [All] [All] Shared Methods and Properties: Calling a method on an instance now doesn't cause a compiler error. [All] [All] Shared Properties: Shared Properties with default values, or that are an array, are now initialized properly. [Fix] [Lin] Shell: IsRunning property is now set properly(Feedback ID: xcxkxoqf) [Fix] [All] Shell: ShellNotAvailableException and ShellNotRunningException are both available in console applications.(Feedback ID: obxjjozh) [All] [All] SSLSocket: The implementation of the SSL Socket has been reverted to be the same as REALbasic 2005r4. This new version will be reintroduced during the alpha/beta process of REALbasic 2006r2. [Fix] [All] SSLSocket, HTTPSecureSocket: In some cases SSLSocket was not fetching complete contents of an html page. This has been fixed HTTPSecureSocket as not receiving any contents, the above fix to SSLSocket should fix this problem.(Feedback IDs: ydxhwqxa, kqkjjyrp) [Fix] [All] SSLSocket, HTTPSecureSocket: In some cases SSLSocket was not fetching complete contents of an html page. This has been fixed. HttpSecureSocket was not receiving any contents. The above fix of SSLSocket should fix this problem with HttpSecureSocket.(Feedback ID: rozpqqrz) [Fix] [All] StringShape: Now scales even when the TextSize has been set to 0.(Feedback IDs: filoyegl, htodzemt, yfumxqmk) [IDE] [IDE] Strings: Str function no longer switches to scientific notation for integer values, regardless of their size. [All] [All] Strings: The CStr function no longer returns a blank string when its argument is an Int64 or UInt64. [All] [All] Structures: Structure fields are no longer padded to the natural alignment for their type; this lets you create matching declarations for structures which were not originally defined using natural alignment. [New] [All] Threads: Added a Thread.Kill method. Internally, this method will cause your thread's stack to unwind, destructors for local objects to be called, etc. It's a graceful exit which can cause code to execute. It may also cause context switches.(Feedback IDs: wohifzzk, tkxqxnvk) [Fix] [All] Threads: No longer causes an infinite loop when you sleep a thread while all other threads are suspended.(Feedback IDs: ixzjrddj, biycfmqv) [Fix] [All] Threads: Now cleanup gracefully when the application is quit. This means that object destructors will be called as appropriate, even if you call Quit before terminating the thread.(Feedback ID: apcljuji) [Opt] [All] Trim, LTrim, and RTrim: Now operate more efficiently when given a string whose encoding is defined as ASCII, or with undefined encoding. [All] [All] Variant: IsNumeric returns true for Int64, UInt64, and Single. [All] [All] Variant: New accessors Int32Value, UInt32Value, Int64Value, UInt64Value, and SingleValue let you explicitly convert a variant to their respective datatypes. [IDE] [IDE] Variant: The StringValue function no longer returns an empty string when the variant contains an Int64 or UInt64 value (VarType = 3). [Fix] [All] Variant.Hash: Now returns a unique value for objects and integers; previously, different objects (or integers) might hash to the same value.(Feedback IDs: loiuhvya, wzayvzpa) [Fix] [IDE] Window Editor: Changing the font style of a control no longer changes the font style of the control order badge(Feedback ID: vbxnbjgs) [Fix] [IDE] Window Editor: Checking keyboard mnemonics will now always report a positive result, instead of only reporting in certain circumstances.(Feedback ID: aktxdece) [Fix] [IDE] Window Editor: Using constants for button heights no longer causes odd selection position in the IDE(Feedback IDs: suyorybf, lxighdkk, begoynxd, frzekqtn) [Fix] [IDE] Window Menu: Windows beyond the 9th one no longer get keyboard shortcuts.(Feedback ID: brgjhukn) [Fix] [Win] Window: A moveable modal dialog now has its system menu items properly reflecting the state of the buttons on the caption bar.(Feedback ID: imkxvcgb) [Fix] [Win] Window: Now honors the CloseButton property when MinimizeButton is set to true.(Feedback ID: zzpiyxcb) [Fix] [Win] Window: Now picks the proper default PushButton, even when the button is on a tab panel. As an extra-added bonus fix, it also picks the proper default button when a button's visibility has changed and when a CheckBox or RadioButton has focus.(Feedback ID: sqnwqbdh) [Mac] [Mac] Window: Now respects the MinimizeButton property on the Mac. [Fix] [Win] Window: Now selects the proper default pushbutton when initially opened inside of an MDI application.(Feedback IDs: axrifidu, khvchlms) [Chg] [IDE] XML Export: Now uses Unix line endings on OS X, to be consistent with most other XML files, and compatible with command-line tools such as diff and svn. [Fix] [IDE] XML Files: Now properly save the state of the menu shortcut flags instead of saving them all under the AltModifier flag.(Feedback IDs: nwyfmhui, jcisnaoo) [Fix] [All] XML: No longer crashing due to a nil string in various parts of the XML plugin (such as XmlReader.Base).(Feedback ID: wdwrtzje)