MICROGDS 7.0.1 RELEASE NOTES Sept 2001 ============================ MicroGDS 7.0.1 is provided as an upgrade to your MicroGDS 7.0 installation. It will not work on a machine that does not already have 7.0 installed. It contains a number of improvements and fixes. If you have a server/workstation installation of MicroGDS, you must run the upgrade program on the server, and then on each workstation. However, once you have installed the upgrade program successfully on the server, any new additional workstation installations will include the upgrade. IMPROVEMENTS AND FIXES IN MICROGDS 7.0.1 ---------------------------------------- Alter Vertex Fence Move now respects the Set Edit setting. Construct Rule now draws lines in the "obvious" direction (the direction was accidentally reversed at 7.0). If layer attributes will be overwritten by a Paste operation, a warning is now issued. An obscure bug causing multiple copies of a layer attribute has been fixed. MicroGDS 7.0.1 corrects problems caused by certain printer drivers on Windows 95,98,Me more effectively than at version 7.0. This speeds up some print operations, and makes others work correctly where they used to crash MicroGDS. When using instance objects, a problem could occur if a non-owned layer used an instance object containing "smart text" which expanded differently from the original object (typically causing spurious "File is Readonly" messages on Backup or Save). This is now fixed. Object Insert now lists all available objects correctly - previously some could be omitted if the library MAN file had multiple phases referring to the same layer. This bug also affected object scans in CadFiler. Colours 255 and 256 are now regarded as legal throughout MicroGDS (this is of particular importance to DXF and DWG import). In addition CadSetColour signals an error correctly if the colour number is out of range. Saving hidden line views to 1-bit raster formats now works correctly. Educational licences are now recognised correctly. DWG/DXF import now handles rotated xrefs correctly. BIF import now works correctly in conjunction with style mapping tables. When additional spacing is specified in a charstyle, multibyte text drawn in that charstyle was incorrectly positioned on Windows 9X systems. This is now fixed. CadOpenWnd now always opens windows as icons when requested to do so. Closing a window previously opened by CadOpenWnd could under certain unusual circumstances generate a program error. This is now fixed. Some applications have experienced performance problems because updating the Window Editor and Mini Window Editor panels can be slow if the window has a large number of phases. This performance issue can now be avoided by making the panels invisible. New API functions have been provided to allow vertical text to be manipulated. See below for more details. In addition, vertical text is now correctly handled in the MicroGDS XML format. KNOWN PROBLEMS -------------- Some graphics cards perform poorly with MicroGDS 7.0 (and MicroGDS 7.0.1). If you experience "freezing mouse cursor" during a repaint, you may need to consider reducing the screen colour depth (or in the worst case upgrading your graphic card or its memory). NEW API FUNCTIONS FOR VERTICAL TEXT ----------------------------------- CadCreateTextEx [7.0.1] C Pl Pr su mu Declare Function CadCreateTextEx Lib "CADLNK60.DLL" (ByVal textStr As String, pos As CadVector, ByVal options As String) As Long long CadCreateTextEx(const char *textStr, const CAD_VECTOR *pos, const char *options); This function creates a new text primitive in the current drawing at the position specified by the pos parameter, with additional creation options. Only one option is currently supported, being "DIRECTION". The values this can take are "Horizontal", "VerticalRightToLeft", and "VerticalLeftToRight". Quotes are optional and the case is ignored, but an equals sign is required between the option and the value. So the options string could be, for example, "Direction=VerticalLeftToRight" Parameters textStr The text for the new primitive pos The position of the new text primitve options Additional options for text creation Return values -1 success 0 otherwise Errors MAE_INVALIDPARAMETER A parameter supplied to this function is outside the acceptable range. MAE_ARGUMENTUNPACKFAIL Failed to unpack an API argument. MAE_REQUIRESDOCUMENT The function requires an open, active document. MAE_TEXTTOOLONG Supplied text exceeds the allowable length. MAE_SETCUROBJFAILED Failed to find a valid set object. ----------------------------------------------------------------------------- CadCurPriTextProperty [7.0.1] C Pl Pr su mu Declare Function CadCurPriTextProperty Lib "CADLNK60.DLL" (ByVal options As String) As Long long CadCurPriTextProperty(const char *options); This function sets various properties on the current primitive if it is a text primitive, such as its direction. Parameters options Additional options for text creation. This is the same as for CadCreateTextEx. Return values -1 success 0 otherwise Errors MAE_INVALIDPARAMETER A parameter supplied to this function is outside the acceptable range. MAE_CURPRINOTTEXT The current primitive is not text. MAE_ARGUMENTUNPACKFAIL Failed to unpack an API argument. MAE_REQUIRESDOCUMENT The function requires an open, active document. MAE_NOCURPRI No valid current primitive. MAE_PRINOTEDITABLE The specified primitive is not editable. ------------------------------------------------------------------ CadGetCurPriTextProperty [7.0.1] C Pl Pr su mu Declare Function CadGetCurPriTextProperty Lib "CADLNK60.DLL" (ByVal setting As String, value As String) As Long long CadGetCurPriTextPropertyF(const char *setting, char *value, size_t len_value); This function retrieves various properties on the current primitive if it is a text primitive, such as its direction. The options are the same as for CadCreateTextEx. Parameters setting Property to retrieve value Value of the property Return values -1 success 0 otherwise Errors MAE_INVALIDPARAMETER A parameter supplied to this function is outside the acceptable range. MAE_CURPRINOTTEXT The current primitive is not text. MAE_ARGUMENTUNPACKFAIL Failed to unpack an API argument. MAE_REQUIRESDOCUMENT The function requires an open, active document. MAE_NOCURPRI No valid current primitive.