This release of OpenVector requires the 32-bit SharedCLibrary, addresses several major bugs and provides some additional capabilities. Some of these improvements are also inherited by DrawPlus and OpenGridPro. Known issues that still need to be resolved:  The method by which OLE and scrap files are detected has changed, hopefully for the better. A file is considered to be an OLE file if: (a) it begins with a system variable; or (b) it is only a leaf name, lacking any path; or (c) it has a path beginning with the value of . Note that by this definition, the scrap file is also an OLE file.  I have had one report of invisible drag boxes and objects with DrawPlus. I would appreciate feedback from any other DrawPlus users who cannot see any indication of an object's position when dragging.  Sometimes the selection is cleared but the selection boxes remain displayed. Cover or iconise the window, then uncover or reopen it to remove the phantom selection boxes. I would appreciate feedback from anyone who can make this bug consistently appear. Major user-visible bugs addressed:  When merging at pointer, the bottom-left corner of the merged objects' bounding box will be positioned at the mouse. (Previously, it was the bottom-left corner of the merged page that was positioned at the mouse, so the merged objects would always appear somewhere above and/or right of where expected.)  Saved documents are no longer corrupted with multiple copies of font tables and settings.  Documents properly recognised as saved or unsaved.  Documents containing UTF-encoded fonts (such as produced by NetSurf) can be loaded and displayed without generating lots of error messages. (The present solution is not entirely satisfactory; the encoding is simply discarded. Current versions of Draw handle UTF encoding much better!)  Path objects with zero width or height (such as produced by NetSurf) can be handled.  Correct processing of path objects stored at high memory addresses on 32-bit systems.  Thin (0pt) horizontal or vertical lines get a correctly sized bounding box when created or edited. The length can also be changed when repositioning (Arrange -> Size/Position).  Note that because the Size/Position dialogue alters width and height by scaling, it is impossible to change the dimensions of any object to or from zero.  When "Outline dragging" is turned off (through the iconbar's "Choices..." dialogue), masked sprites are now drawn with inverted colours when being moved, rotated or resized. This allows a proper see-through effect for better positioning while dragging.  Corrected OpenGridPro's window scrolling behaviour while zooming.  Merging documents could produce a stream of errors associated with the loss of font information.  Corrected inconsistent bounding-box calculations and return values.  Reworked window_countIcons to remove several bugs and ensure that errors returned from Wimp_GetIconState are not ignored.  Corrected a bug recently introduced which failed to scroll the ruler with its document window.  Textarea columns are created on the same layer as the containing textarea itself.  Textarea columns are not imported onto undefined layers.  Compressed drawfiles and libraries can be loaded on ARMv6 with alignment exceptions enabled.  Compensated for a bug in RISC OS which can cause buffer overflow during text-to-path conversion with unpredictable results.  Requests to open document windows mid-stack are now honoured. And document windows are no longer lost after iconisation by desktop management tools such as !MouseAxes.  The -font argument to now works, allowing the user to change the default font for text objects. And if OpenVector's "Choices..." dialogue is then saved, the specified font will also be saved into the default settings. New capabilities:  If available, the ImageFileConvert module will be used to import foreign bitmaps; otherwise, ChangeFSI will be used. (This capability was introduced by .)  Objects from merged drawfiles are placed on the current layer. (Previously, merged objects would always be placed on layer 0.)  The Arrange menu is enabled even when locked objects are selected. Unlocked objects can be packed together against locked objects. Rather than always using the left/bottom-most object as the anchor when packing, any locked objects in the selection will be used instead. So to pack objects around a central one, just lock the central one and select it with the objects you want to pack around it.  The Select document submenu has a new "Select by click" option. This is turned on by default giving the normal behaviour that allows an unselected object under the pointer to be made the current selection with a SELECT click. But if you turn "Select by click" off, then a SELECT click over an unselected object will NOT select it. This might seem strange at first, but it allows a drag-select to begin over objects rather than having to begin over unoccupied space. Under normal operation, if the intent is to drag out a selection box but there happens to be an object under the pointer, then that object is selected and moved instead. Turning off "Select by click" prevents such accidental object movement when one is trying to select multiple objects in a drawing with crowded or overlapping objects.  The Select document submenu has a new "Invert" option. This can also be invoked by ADJUST clicking the Select mode tool, or by Control-N hotkey. The effect is to deselect all currently selected objects and select all other selectable objects. In other words, it inverts the set of selected objects.  When a pasted Library object creates a Group, that Group is named after the first 12 characters (at most) of the Library object's name.  When zooming, if there is no selection or a drag is in progress, and the mouse pointer is over the document, then the zoom will be centered where the mouse is.  The Special menu's "Reverse path" now has hotkey CTRL-V ("V" for "reVerse").  When editing a path, the drawing's origin can be set to any point on the path. (Requires permission to reposition the origin; see menu Drawing->Rulers->Origin->Options.)  When editing a path, the whole path can be moved so that a selected point will be positioned at the current origin. The relative positions of the points are preserved. This nicely complements the origin-to- point capability allowing path objects to be precisely aligned, scaled and rotated to arbitrary points.  `Special->Stroke path' will replace a path of non-zero thickness with an equivalent filled outline. (*Keep a copy of the original path!*) A rarely-needed capability, but difficult to achieve otherwise. It is particularly useful when creating masks from paths.  When an auto-save is due and the user is prompted, the user can switch to unprompted auto-saving.  Document windows respond to scroll requests as generated by mouse wheels on some systems.  Bezier control points can snap to grid while being dragged.  With regard to merging documents and deleting layers, hopefully I have found a workable blend of alternatives. When a layer is deleted, any objects on it will be moved to the current layer when the layer management dialog is closed with OK. Files of type VecFile (&C56) preserve object layering when imported except that objects going onto undefined destination layers will instead be moved onto the current layer. The same applies to objects pasted from a Library. When other types of file are imported, all objects go onto the current layer.  Introduced 'osunit' dimensioning to GridPro and Vector. This eases the creation of drawings destined for display as fixed-size bitmaps such as icons, foreign-format documents and presentations, and web images.  Quick access to Touch/Enclose/Centre drag-select setting through the Select document submenu. Note that this is a global setting; all open documents will use the same setting. Note also that changing the setting in the Select submenu does not save it. To save the current setting, use the "Choices..." dialogue from the iconbar menu.  When resizing an object by dragging a control point, the point will initially jump towards the mouse's location taking grid and movement constraints into account. While the mouse moves with grid locking enabled, the object's control point will jump to the nearest grid line. This makes it easy to resize objects to align points either horizontally or vertically. A line can be lengthened or shortened to start or end on a grid line while retaining its angle.  When OpenVector is editing a path, as a shortcut to ADJUST clicking a point and selecting "Set origin" from the Edit menu, hold down Shift when ADJUST clicking. There are a couple of advantages to this method. The point used to set the origin need not first be selected for editing, and bezier control points may also be used to set the origin. Note that a Shift-ADJUST click to set the origin will normally take grid locking into account, but not when clicking on a point on a path being edited.  When editing a path, points that overlap can be cycled through by ADJUST double-clicking.  The Library window can be resized so as to increase the visible portion of the list of objects. It has also been made narrower with thumbnail and info displayed beneath the list of objects.  In the Library window, a MENU click over the list of objects will select the object (if any) under the mouse pointer if no object is already selected.  When clicking with the Alt key down, DrawPlus and OpenVector will act as if there is no object beneath the pointer.