10.5.1a-10.6.3a: 2013-04-29:
Implemented Headless version of CADViewer with Object Node interface. Allows CADViewer to be called as a server side process to extract API information.UrlPolygonColor( ..)
9.8.1a: 10-12-02:
When redline toolbar permanently on, <param name="redlinetool" value="vertical"> , redlines manager would be turned off when swapping to other menu groups with sub-menu bars, such as compare, measure and rotate. Redlines manager is now permanently on when redlinetool bar is permanently visible
9.7.8d-e: 10-11-30:
Various fixed for highlight (fill polygon) on/off for Url’s fixed in methods, SetUrlPolygonColor(..) and RemoveUrlPolygonColor( ..)
New method implemented:
public String GetAllUrlScriptObjectNames()
9.7.8f-g: 10-12-01:
Compare icons reactivated, various bugs fixed
9.5.5a-9.6.3a: 10-08-19 – 10-09-12:
Custom commands
9.6.3b: 10-09-13:
Fixed bug when hyperlinks contained white-spaces.
9.6.3c: 10-09-13:
Force redlines objects in .red files on save and on creation to be non-filled. A dwf file with not close filled polygons would make redlines fill.
9.6.3c – 9.7.8a: 10-09-13 – 10-11-20:
Custom extensions to a new sticky note interface and database connectivity
9.5.1a: 10-06-08:
Disabling API if in either unlicensed or in trial mode.
9.5.3a: 10-07-20:
Build parameters for custom control of icons .
<param name="image_path" value="images_new/">
<param name="sethgap" value="3">
<param name="setvgap" value="3">
<param name="menubackgroundcolor" value="#E6EBF1">
<param name="overlaymenuicons" value="enable">
<param name="menuicon_append" value="_over">
In the parameter image_path, you define the path to the images, as a subdirectory to /cadviewer.
The parameters sethgap (set horizontal gap) and setvgap (set vertical gap) sets the spacing between the icons.
The parameter menubackgroundcolor sets the background color.
The parameter overlaymenuicons tells the system that you are using overlay icons, in the menuicon_append parameter you tell the system what you have appended to the icon name for the overlay icon.
9.5.3c: 10-07-28:
Implemented parameter <param name="noserverportsettings" value="enable"> to be able to overwrite port settings when loading in drawing files.
9.5.4a: 10-07-29:
Fixed bug where color settings in multiple consecutive object nodes where incorrect. Changed code to allow it to compile properly both as Applet and Application.
9.5.4d: 10-08-05:
Fixed zoom extents bug in pop-up menu, fixed print method bug where multiple print selection boxes appeared. Added new parameter to print to control redlines printing
<param name="supressredlinesprint" value="enable">
9.5.5a: 10-08-19:
Implemented API commands: PanUp(), PanDown(), PanLeft(), PanRight()
9.4.1a: 10-06-02:
Implemented 12 colors redline bar.
9.4.1b: 10-06-04:
In ContactServer method, fixed bug translating “+” to hex.
9.3.0a: 10-04-19:
Implemted Zoom Smoothly to Extents; the extents on layers in a list are calculated and zoomed smoothly onto, but with a relative zoomfactor. Parameters are:
layerList list of the layers which extents are calculated, zoomfactor zoomfactor in % based on the extents zoomwindow , number of distinct views in the zoom process
public void ZoomSmoothlyToExtents(String layerList, int zoomfactor, int steps)
9.3.0b: 10-04-20:
Bug fixed when ZoomSmoothlyToExtents was fed a non existing layer.
9.3.1b: 10-04-21:
Hyperlinks now based on MOUSE_UP. Fixed display bug of popup menu when hovering over hyperlinks.
9.3.1d: 10-04-23:
The parameter tooltipstatus return mechanism has been tidied up.
<param name="tooltipstatus" value="ToolTipInfoXY" >
Tooltipstatus will fire off only once at a time, either when a no urlfocus state is reached or when entering a linked object:
No focus initially or exiting an object: nourlfocus
Entering an object: objectId
9.3.1g: 10-04-23:
Bug in format recognition method. If a string from a script with multiple format statements in it, the input method will now read in the last format statement.
9.3.1h: 10-04-23:
The parameter has been implemented.
<param name="supressasp" value="enable" >
This disables the input string parser for asp type arguments, in effect passing the input string directly over to either a server side conversion script or Servlet.
9.3.2a: 10-04-24:
The parameter has been implemented:
<param name="nourlfocuscallbackmethod" value="nourlclick" >
This will call an external JS method named “value” with the arguments (nourlfocus, mouseclicks), allowing external API handling in the case the mouse is pressed over a region without a Url associated with it.
9.3.2b: 10-04-29:
screenToJpegLocal did not clean up files properly, causing external processes to hang, when trying to read the produced jpg file.
9.3.3a: 10-05-05:
The parameter has been implemented:
<param name="save_with_API_modifications" value="enable">
An DWF-out parser has been implemented, which with the parameter active will prompt a save of the DWF file currently in memory including API modifications.
9.3.4a: 10-05-11:
Export screen view as a DWF to the server, if parameter is set:
<param name="save_with_API_modifications" value="enable">
<param name="conversionURL" value="http://ip/servlets/ConversionServlet">
On the server it is converted based on the settings in:
<param name="conversionparameters" value="-f=pdf ">
API method:
public boolean SaveAndConvertDwfWithAPIModifications(
boolean blackwhite,
boolean whitebackground,
boolean landscapeportrait)
9.2.0b: 10-04-15:
Eventhandling rewritten for 1.6; MouseWheel for zoom in/out implemented.
9.2.0b-d: 10-04-18:
Various traces for debug mode implemented in order to better diagnose issues with perl script load of server side converted files.
9.1.0a-9.1.0j: 09-10-10 till 08-10-24: Rewrite of awt classes so that the common codebase both compiles as applet and as awt .jar under java6.
9.1.1a: 09-10-26: Extended polytriangels so filled triangles will render when objects are long and narrow, pixel width lower than one.
9.1.2a: 09-11-26: Enabled vertical redline toolbar. Requires a workaround, where the redline on/off button is set to zero size in the config file (pointing at a void bitmap icon will do)
9.1.3a: 09-12-02: ZoomExtents error fixed. Spurious “garbage” objects would make disturb the extents calculation. By checking against the initial viewport, extreme values can be distorted.
9.1.3d: 09-12-05: Implemented parameter <param name="supress_popup_messages" value="enable"> to let developers have more control over errorflow when feeding files to CADViewer through the API.
9.1.4a: 09-12-08: Rewrite of ServletQuery class to make loading of DWF via user defined Servlet consistent with the TMS implementation in ConversionServlet .
9.1.4b – 9.1.4f: Various fixes
9.1.4g: 10-01-20:
.
There have been added the following new parameters for server communication via Perl scripts:
<param name="usefullconversionpathnames" value="enable" >
<param name="donotencodeconversionpathnames" value="enable" >
The first parameter will ensure that the full name given in the applet code is included in the parameters sent down to the script, and the second line gives the option to make the name URL encoded or not:
9.1.5a: 10-02-25:
API command added: public boolean APIcommandCurrentlyActive() , which allows JS methods to monitor execution of API commands. Returns true if a command is active. Use public void ResetAPIcommand() to reset system variables.
9.1.6a: 10-03-09:
Parameter added. <param name="ExportClickCount" value="enable">. This parameter will append the mouseclick count as a value to Url hyperlinks and export the value to the encapsulating JavaScript method. Since double click are always returned, then the parameter setting below will allow both single and double clicks to be exported:
<param name="URLClick" value="single">
<param name="ExportClickCount" value="enable”>
9.1.7a: 10-03-23:
Parameter added. <param name="encapsulate_hyperlinks" value="method"> This parameter will encapsulate hyperlinks with a method name as given in the parameter string. The parameter is used to allow syntactically incorrect hyperlinks to be caught by the encapsulating JavaScript code.
9.1.7b: 10-03-25:
Initialization bug fixed, where adding the parameter <param name="upper_toolbar" value="disable"> would disable mouse handlers for hyperlinks.
9.0.4a: 09-08-04: Added routine to find countour unit matrices, and modify scale accordingly in print scale command .
9.0.4b: 09-08-13: Added API routines:
SetUrlPolygonColor(String urlsubstring, int r, int g, int b), SetUrlPolygonColor(int UrlId, int r, int g, int b), RemoveUrlPolygonColor(int UrlId), RemoveUrlPolygonColor(String urlsubstring)
9.0.4c: 09-08-14: Added API routine: public Vector GetMultiPagesNames()
9.0.4d: 09-08-14: Updated Units methods to allow for the case where no unit matrix is defined in DWF file. Updated Calibrate Units methods so that it supports other languages.
9.0.4e: 09-08-27: Fixed ZoomExtents on layer bug.
9.0.4f: 09-09-09: Implemented ability to list polygons on click.
9.0.4g: 09-09-14: Return call on Url methods. Updated SetUrlPolygonColor() methods to handle multiple polygons associated with a Url.
9.0.5a: 09-09-22: Bug when layer definitions are encapsulated in {} in compressed binary dwf .
9.0.5b: 09-09-24: Fixed intersection bug when zooming out on images, TIFF images would disappear.
9.0.5c: 09-09-28: Image display bug for large scale bitmaps, image would in some cases be flushed and not recreated.
9.0.5d: 09-09-30: Display bug induces by error in parsing RGB encoded images.
9.0.5e: 09-10-02: Fixed intersection bug when doing zoom on TIFF images, images would be truncated, both on canvas and when printing.
9.0.6a: 09-10-07: Extended security manager so that API method OpenFile() can open files on external servers.
9.0.4a: 09-08-04: Added routine to find contour unit matrices, and modify scale accordingly in print scale command .
9.0.3a: 09-06-10: Add multiple page capabilities for staged files; DWF files split into singe files for each view. The parameters implemented are:
<param name="multiplepages" value="staged">
<param name="multiplePagesLocation" value="./3295-complete">
The parameter name, will designate the name of the “non-splitted “file only.
9.0.3b: 09-06-22: Fixing of various reported bugs in multiple pages splitting routine.
9.0.3c: 09-07-16: Changed multipage list parameter format to .txt: "__views.txt". Added new parameter <param name="no_measurement_crosshatch" value="enable"> , to remove crosshatch in measurement.
9.0.3d: 09-07-20: Fixed various bugs in multiple page capabilities.
9.0.3e-f: 09-07-22: Fixed bugs in printing method with scaled enabled and upper toolbar disabled.
9.0.3g: 09-07-24: Added routine to find contour unit matrices, and modify scale accordingly in measurement command.
9.0.2a: 09-05-26: Catch exceptions when loading multiple files through the API.
9.0.2b: 09-06-01: Implemented parameter: <param name="no_empty_redline_message" value="enable" /> to control output in API redline calls.
9.0.2c: 09-06-06: Implemented API method:
public void SetAllTextColorFontOnLayer(String layerList, boolean redraw,int r, int g, int b, String font);
9.0.2d: 09-06-10: Extended Opcode 0x0002, or group4pg, activated png branch so dwf reads in correctly, display of png is not yet implemented.
9.0.0a – 9.0.0d: 09-03-23 – 09-04-10: Major rewrite, all static references to classes removed and a hierarchy based on common variables in ViewerControls introduced. All external references in widget classes removed, redraw bug for polygons removed.
9.0.0e: 09-04-15: New parameter, force_orginal_colors implemented to allow for Revit contour polygons in background color below text objects.
9.0.0f: 09-04-16 – 09-04-20: Implemented switch to turn redlines redraw on/off depending on redlines icons are active or not. API redline methods will automatically turn the redlines redraw on. Improved the single object redline selection method, added XOR highlight and an improved search band. Redline Text tool improved, selected font, and size are copied to next selection.
9.0.0g: 09-04-21 - 09-04-23: Improved color handling in FillAllPolylinesOnLayer(), fixed zoom extend bug when calling FillAllPolylinesOnLayer(). Rewritten GetNamedView() to return a boolean if the view does not exist.
9.0.1a: 09-04-28 - 09-04-29: Fixed rounding issue in ActionUnits when units are feet/inch. Improved syntax for output of measurements, when units are in feet/inch and fractions.
9.0.1b: 09-05-11: Activation of methods to select drawing objects in window selection mode.
9.0.1c: 09-05-13: Print routine for filled poygons when setting fill color with API command: FillAllPolylinesOnLayer().
9.0.1d: 09-05-14 - 09-05-16: Build text selection routing as part of window selection, implemented parameter <param name="ontextselection" value="DisplaySelectedText" />, the value is the name of the JS return method that will hold the selected text objects.
Implemented parameter: <param name="keep_existing_redlines_on_load" value="enable" /> to allow loading of multiple redline objects.
9.0.1e/f: 09-05-19: Initial load of drawing creates a null pointer exception. Closed using try/catch statements
9.0.1g: 09-05-20: Colors of text objects are wrong when printing text objects which are changed through the API.
8.5.6a: 09-01-28: Allow servlet interaction with applet. Use argument of type http://127.0.0.1:8080/servlets-examples/servlet/fserv?did=24&type=servlet in parameter name or in OpenFile() to talk to server servlet.
8.5.6c: 09-02-17: Fixed layer sorting, so that different layer numbers, but with same name are treated as the same layer. Fixed zoom extents bug for drawings with defined views.
8.5.6d: 09-03-10: Memory issue when printing TIFF files fixed, class cast issue when printing jpg,gif,png files fixed. Additional fix for layers done.
8.5.6e: 09-03-15:Ability to load and save hyperlink Url’s with http: and javascript:. Modifications to existing methods.
8.5.6f: 09-03-16:Ability for API command SetTextOnLayer().to work through object nodes.
8.5.6g: 09-03-17:New API commands: public void SetTextOnLayer(String layerList, int textNodeIndex, String newText, boolean redraw),
public void FillAllPolylinesOnLayer(String layerList, int r, int g, int b, boolean redraw),
public void RemoveFillAllPolylinesOnLayer(String layerList, boolean redraw);
Redraw added after redlines are turned off.
8.5.6h: 09-03-20: Implemented the ability to load and display hyperlink alternate text, when of the form:
(URL (167 'javascript:officeclick(\'168\',\'2442\');' 'this is the alternate hyperlink text'))
Modified redline load and save methods to use this format, as well as the hyperlink creation command.
8.5.6i: 09-03-23:New API methods implemented:
public void SetUrlAlternateText(int UrlId, String alternateText);
public void SetUrlAlternateText(String urlsubstring, String alternateText);
furthermore (EndOfDwf) termination criteria extended to set a termination Url widget and a Object node -1, to encapsulate declared url+object nodes that are not properly finished.
8.5.5a: 08-11-20 Feet-Inch in distance measurement, ActionUnits: x’ y” z/16
8.5.5b: 08-11-30 Ability to select object node redlines, ability to move object node redlines, ability to set object nodes redlines to “fixed scale” through the parameter: set_redlines_fixed_scale
8.5.5c: 08-12-02 Ability to select bitmap redlines, ability to set bitmap redlines to “fixed scale” through the parameter: set_redlines_fixed_scale
8.5.5d: 08-12-03 Send filled objects to the back to the file.
8.5.5e: 08-12-03 Implemented solution to be able to restore original color after fill. Implemented: RemoveFillAllPolylinesOnLayer(String layerList)
8.5.5f: 08-12-08 Found and fixed bug in 8.5.5e. Colors would only change back correctly first time an object is filled.
8.5.5g: 08-12-11 Bug when calling javascript call back methods after double click on objects; conflicting code with url highlight code. Documentation of ViewerApplet for javadoc
8.5.5h: 09-01-11: Reactivated the ability to load redlines in through applet parameter; code was broken.
8.5.5i: 09-01-15: Bug in Unit class, unable to load in a matrix of type ‘feet and inches’ , this is fixed.
8.5.5j: 09-01-15: Fixed bug in NamedViews and URL to receive text arguments of type {] .
8.5.4a: 08-10-28 public void FillAllPolylinesOnLayer(String layerList, int r, int g, int b) implemented and tested¨.
8.5.4b: 08-11-05 ZoomExtents implemented so that fitToScreen() loops over on layers only, and finds the extents on object on on layers only.
8.5.4c: 08-11-06 PolyTriangle redraw error fixed. Objects would not filled at a given zoom-level.
8.5.4d: 08-11-07 Add parameter disable_urlthread_message to disable warning message when no url’s in drawing and highlight Url is called.
8.5.4e: 08-11-10 To FileOpen include a check to prepend protocol “file:/” if the file is specified with a drive-name..
8.5.4f: 08-11-11 ButtonObjectSearch added to ActionManagerProAdapter.
8.5.4g: 08-11-12 Implemented GetPageNumber() and SetPageNumber(int).in ViewerApplet to control single pages in a multipage DWF file.
8.5.4h: 08-11-12 Implemented GetFormatExtension() for check on file extensions with ASP page upload of files.
8.5.4i: 08-11-12 Implemented GetFormatExtension() for check on file extensions with ASP page upload of files.
8.5.4j: 08-11-14 Implemented public void ZoomExtents(String layerList). Modified ZoomExtents to loop over ObjectNodes and find extents inside the graphical objects associated with that object.
8.5.4k: 08-11-17 Implemented public void ZoomExtents(String layerList, int zoomfactor). Zoomfactor 100 == zoom extents on layerlist, zoomfactor>100 is zoomin, zoomfactor<100 is zoomout.
8.5.4l: 08-11-8 Non decisive modifications
8.5.4m: 08-11-18 Modifed FillAllPolylinesOnLayer() to find polygons inside object nodes.
8.5.3a: New security manager to allow system to activate print through the API.
8.5.3d: Modify API methods for Redline delete, so that redraw is forced.
8.5.3d: Modify API method UrlOnOff so that a null pointer exception does not occur in UrlThread.
8.5.3f: Modify SetLayerColor() to also color layers with Object Nodes
8.5.3g: Added GetPages() to the API. Activate hyphensolution, NHB extra button in standard build. Identified errors with hyphensolution counter method; solutions do not work through the API; it works through the menu-bar but only if no other method (interactive methods) are active.
8.5.3h: 08-10-27. Implemented SetTextOnLayer(layerlist, number, textstring); All Hyphensolution methods, CountingOnOff(),StartStopCounter(),DeleteCount() are working if <param name="upper_toolbar" value="disable">
8.5.3i: 08-10-28 public void FillPolylineOnLayer(String layerList, int polygonNodeIndex, int r, int g, int b) implemented and tested¨.
Rewrite to compile under Java 1.5
All dependencies to netscape.security removed
Text clipping implemented
Fixed the bug that CADViewer did not display Gouraud Polyline and Gouraud Polytriangle
Fixed the bug that CADViewer did not display some multi-page dwf drawings.
Fixed the bug that CADViewer did not display dwf drawings that contain mark-ups
Add param "rightclickbuttonhelp" to disable the help menu when there is a right mouse click on any toolbar button
< param name="rightclickbuttonhelp" value="disable">
Available values: "enable" and "disable"
Default value is "enable"
Add param "rightclickmenu" to disable the menu when there is a right mouse click on the drawing
< param name="rightclickbuttonhelp" value="disable">
Available values: "enable" and "disable"
Default value is "enable"
Add the param "redline_toolbar" back to disable the redline tools via html page
< param name="redline_toolbar" value="disable">
Available values: "enable" and "disable"
Redline can be saved in multiple-pages drawings
Fixed the bug that when the dwf was retrieved from a server script program, it was not recognized as a dwf file
Fixed the problem that URL links did not show correctly the tooltips
Fixed the background color problem that CV did not display correctly for dwf 00.36
Added the capability to read Greek characters in the dwf drawings
Fixed the printing problem that if drawing was printed out for some drawings, a weird pattern of circles were all over the place. The circles were not in the original drawing, and didn't show when the dwf file was seen in the viewer on-screen, they only appeared when printed.
Fixed the bug that CADViewer could not display some compressed binary dwf 5.5 files
Fixed the bug that CADViewer does not display filled polygons
Added parameter "URLClick" to control the number of clicks for URL links
<param name="URLClick" value="single">
Available values: "single" and "double"
The default value is "single"
Fixed the problem with the measurement tool that there are artefacts (stray green cross hairs and diagonal lines) when the mouse is moved over the drawing but the mouse button is not clicked
Added new parameter "redlinefilledgreyscale" with value "enable" to have redline filled objects always printed in grey scale. The default is to print redline filled objects with their current color.
<param name="redlinefilledgreyscale" value="enable">
Available values: "enable" and "disable"
Added new parameters "conversionparameters_autox", "conversionparameters_hpx", "conversionparameters_acrox", "conversionparameters_dgnx", "conversionparameters_acrowhip" and "conversionparameters_autowhip". These parameters are used exclusively with "conversionparameters" in case that different drawing format are loaded in the same session. For example, If a dwg file is opened, parameter "conversionparamters_autox" will be used. Then later a pdf file is loaded, param "conversionparameters_acrox" will be used. If one expects that users will open dwg, dgn and pdf files, then the html that launches CADViewer should contain:
<param name="conversionparameters_autox" value="-B 1 -R">
<param name="conversionURL_acrox" value="-B 1">
<param name="conversionURL_dgnx" value="-B 0">
Fixed the problem that when measurement scale was set, it scaled the original units instead of the current units
Fixed the problem that when Black/White button was clicked twice, the background color became white
Fixed the problem that the measurement highlight yellow box is not consistently large enough for the complete measurement value to be displayed and the 'T' in the word 'Total' was truncated. The highlight yellow box is now displayed at the center of CADViewer screen to avoid being cut off when the box is displayed near the edge of the screen
Fixed the problem that CADViewer does not display drawing that its name contains one or more blank spaces
Added new module to read "symbol" font and this module enables CADViewer to read Greek letters
Added new parameter "textrotation2" to have rotated text displayed with "times" font. The default font of rotated text is "romans". This new parameter requires to have folder "fonts" in the codebase folder. The values for this parameters are "disable" and "enable".
Added new parameters "conversionURL_autox", "conversionURL_hpx", "conversionURL_acrox", "conversionURL_dgnx", "conversionURL_acrowhip" and "conversionURL_autowhip". These parameters are used in conjunction with "conversionURL" in case that the converion programs are installed on different servers. For example, if autoxchange, hp2xchange are installed on a Linux server, acroxchange is installed on an Unix server and dgnxchange is installed on a Windows machine, then the html that launches CADViewer should contain:
<param name="conversionURL" value="http://linuxserver.com/serlvet/ConversionServlet">
<param name="conversionURL_acrox" value="http://unixserver.com/serlvet/ConversionServlet">
<param name="conversionURL_dgnx" value="http://windowsserver.com/cgi-bin/ConversionCgi.pl">
Fixed the problem that line thickness and line pattern did not display correctly
Added new parameter "progressbar". If this parameter is used, CADViewer will dislay a progress bar telling users that the drawing is loading
<param name="progressbar" value="enable"
Default value is "disable"
Fixed the bug that CADViewer was very slow when it generated the print output
Fixed the bug that CADViewer was halted when it opened some dwf 6 files
Added new parameter "redlineparams". If this parameter is used in conjuntion with parameter "save_redline_to_url" ,CADViewer allows administrators to have a complete control of all saving redline parameters. The values are in the form of a list delimited by '&' character . The only parameter provided by CADViewer in addition to this list is the parameter "red". "red" is a reserved parameter for CADViewer and its value is the content of the redline file.
The following is an example of how to use parameter "redlineparams" and "save_redline_to_url" to send user define parameters back to the server together with the redline content
<param name=redlineparams value="param1=value1¶m2=value2¶m3=value3&...¶mN=valueN">
<param name=save_redline_to_url value="http://www.xyz.com/cgi-bin/any_cgi_script.cgi>
If parameter "redlineparams" is not used with parameter "save_redline_to_url", then CADViewer takes all user defined parameters following the '?' after the script name and adds other CADViewer reserved parameters such as "dn","na","saveURL" and "saveLocation"
Fixed the problem that when the parameter "background_color" was set in the html or in the viewer.cfg file, then the set_background_color button did not function
Fixed the problem that arcs were shifted
Fixed the problem that layers list sorted in unsorted order
Fixed the problem that if 'Display Black/White' was clicked a 2nd time after a non-default background color had been selected, the display reverted to white.
Fixed the problem that if Print Black/white was selected, then the dwf file objects were printed in black/white, but redline objects were printed in greyscale.
Delete WPrint.dll and WPrintNNN.dll when applet is initialized
Added "Scaled to fit" to the print to scale print dialog
Added "Forced graphic to bw" to the print screen dialog
Fixed the problem that CV could not open jpg and .gif files
Added parameter "redlinesave_notify" with value set to "disable" to turn saving redline notification off
Fixed the problem that the save redlines dialog box is not shown the size correctly
Fixed the problem that CV could not open drawings via https
Added parameter "socketread" to fix the problem that CV cannot open files from Linux server & client
<param name="socketread" value="enable">
Added parameter "cvstate" to have CV reporting back to the html page via javascript function CVstate(statestring) the state of the current action fucntion when a API button is pressed
<param name="cvstate" value="enable">
Added parameter "drawingserverport" to force CV to use this port to get the drawing from the server
<param name="drawingserverport" value="444">
Added parameter "cvready" to report back to the html page via a javascript function CVread(dummy) that CV is loaded and CV is ready for API calls
<param name="cvready" value="enable"&gl
Removed Version Checking
Added a new API parameter:
SetAppletParameter(String param, String value)
This parameter will either overwrite the existing parameter
defined in the
html file or create a new one if the parameter is
not defined.
Here is the example on how to use it
<script language=javascript>
function openfile()
{
document.applets[0].SetAppletParameter("preload_readonly_redline","./v7pro/d
emo.red;./v7pro/demo2.red;");
document.applets[0].SetAppletParameter("open_redline_with_drawing","initial"
);
document.applets[0].SetAppletParameter("load_redline_from_url","./v7pro/demo
4.red;");
document.applets[0].OpenFile("./v7pro/demo.dwf");
}
</script
Added API support for Measurement Tools:
Measurement()
MeasurementScale()
MeasurementCalibrate()
ChangeBackground()
Added parameter "preload_readonly_redline" to open read-only redline files
More than one redline file can be loaded with the drawing initially
Redline entities from read-only files can not be modified, deleted or saved
Read-only redline files can be opened with editable redline files defined in parameter "load_redline_from_url"
Example <param name="preload_readonly_redline" value="../file1.red;../file2.red;../file3.red">
Added parameter "forceredlinecolor" to specify a color for each read-only file
Available colors: black,white,blue,yellow, red, gray,dark gray, light gray, green,magenta,orange,pink
If the color is defined as "same", then the color in the .red file will be used
";" is used to separate files and colors
If "forceredlinecolor" is not defined, then the color in the .red files are used
Example:
<param name="preload_readonly_redline" value="./v7pro/demo.red;./v7pro/demo2.red;./v7pro/demo4.red;">
<param name="forceredlinecolor" value="green;same;white">
CADViewer is able to load more than one redline file with the drawing initially
<param name="load_redline_from_url" value="../file1.red;../file2.red;../file3.red">
Added parameter "file_path" to list files to be opened from a directory when the button "open file" is clicked.
<param name="file_path" value="../../drawings/">
The default listing file type is "dwf"
If parameter "file_path_extension" is defined, then it will list file types defined in "file_path_extension"
Added parameter "file_path_extension" to define what drawing type to be listed from a directory
It is used with parameter "file_path" to define what drawing type will be listed
Extensions are separated by ";"
Example: <param name="file_path_extension" value="dwf;dwg;plt">
CADViewer can open a dwf file that is contained in a zip file
Removed the select paper size from print dialog
Added user defined scale to print dialog
Fixed the bug that CADViewer did not print with IE browser
Added new parameter "conversionparameters" to pass conversion engine control parameters to ConversionServlet
<param name="conversionparameters" value="-MY=1 -W=1">
More than one parameters can be entered and each parameter are separated by a blank space
Added new parameter "maxsnapdistance" that defines the maximum distance from a point that CADViewer will snap to. If the distance between the clicked point and the end point is greater than this value, CADViewer returns the clicked point. To turn off the snap-to-endpoint mode, set the value of this parameter to zeor or a negative number
<param name="maxsnapdistance" value="10">
The value can be any positive integer value
The value unit is in pixels
The default value is 10 pixels
If the value is negative, the snap mode is turned off
Added new parameter "print_insertionpoint" that gives users choice to select what to print instead of printing what is displayed on the screen
<param name="print_insertionpoint" value="enable">
Available values: "enable","disable"
Default value is "disable"
Modified so that parameter "unitnamescale" will overwrite the existing units defined in the dwf drawing
Add two buttons "Calibrate" and "Print Screen" to the print manager dialog
Fixed the problem that the Javascript call defined in "redsave_jsfcn" is displayed before the user has responded to the 'Redline Saved' dialog
Add new button to select only one redline at a time to redline toolbar. To add this button to the redline toolbar, add a similar line to .cfg file
redlinesicon=redlinesselectobject;anyimage.gif
Where anyimage.gif can be any gif file
Fixed the bug that the param "background_color" did not work
Fixed the bug that "All layer on" or "All layers off" button did not work
Added new parameter "unitnamescale" that will overwrite the unit name defined in the dwf file. If the value equals "null", then CADViewer will ignore the units defined in the dwf file and will treat the drawing as no units defined.
<param name="unitnamescale" value="in">
Available values: "null" or any unit name
Fixed the bug that an URL link attached to a redline does not move with the redline when the redline is moved
Fixed toolbar and floating sub-toolbar GUI that did not display correctly with Mozilla and Netscape browsers
Fixed bug that when adding an invalid URL to a redline, CADViewer does not allow to enter the new URL
Fixed bugs that "Redline", "Compare Files", "Rotation/Mirror" and "Measurements" sub-toolbars did not work on close (off)
Fixed memory leaks when CADViewer is reloaded
Fixed the bug that CADViewer does not open drawing from a https server
Fixed the GUI bug on Linux Mozilla that everytime one of the dialog boxes of CADViewer is opened, it gets smaller
Fixed the bug that some of the dialog windows do not close when "Cancel" or "x" buttons are clicked
Fixed the bug that ellipse did not respond to Line thickness and always prints 1 pixel
Modified layers dialog so that layers dialog lists the layers in alphabetic order
Modify printing function
Add print screen button
Add popup menu function "print" and "printscreen"
Example: to enable the print function in the popup menu, add the following line in .cfg file:
popupmenu=print
Add API ChangeBackground()
Fixed the problem that if an directory item has multiple links, the list with redlines has the same file repeated multiple times.
Fixed the problem that port 443 was always assigned to https
Added parameter "redsave_jsfcn" to add more functions to the save redline button. If the "redsave_jsfcn" is defined, CV not only saves redline file to the server via CGI script but also calls a javascript function defined on the same html page that invokes the cadviewer applet to do extra tasks
<pram name="redsave_jsfcn" value="javascriptfucntioname">
Example:
<applet .......>
<param name="redsave_jsfcn" value="js_redline_save">
.....
</applet>
<script language=javascript>
function js_redline_save (message)
{
if(message=="OK") { Do something .....}
else { Do something .....}
}
</script>
Added parameter "unitnamescale" to specify units and a conversion scale
<param name="unitnamescale" value="meter,0.005">
or <param name="unitnamescale" value="name=meter;scale=0.005">
Added a pop up callibrate window and this window pops up automatically when measurement is started and units in the dwf drawing are not defined
Added units data in the information window
Fixed the bug that redline text cannot be drawn
Changed CV ENT so that it can open the following file extensions: dwg, dxf, dgn, hp, hp2, hpgl, plt and pdf
Added security features to CADViewer Enterprise Collaborator
Fixed the bug that hyperlink circles did not work
Fixed the bug that CV does not display the named view initially when parameter "initial_view_name" is defined
Fixed the bug that polygon redline cannot be drawn
If the Text Selection dialog is invoked but no action is taken and then user selects another Redline Tool, Text Selection dialog will be closed
Fixed the Printing of Polylines with arrows bug
Added new Api RedlineThickness(int) to change the redline line thickness
Added print lanscape option in the print dialog panel
Added key word "dialog" in the accepting keywords received from redline script on the server. After receiving redline data from CADViewer, the script on the server must send either "ok" or "diaglog" back to CADViewer. If CADViewer receive "diaglog" at the end of the data, it will display a popup panel with the content of the data. If it receives "ok", it will display a popup panel with "Redline saved"
Fixed the problem that CADViewer changes redline file names to lowercase.
Added new Api Collaborator() to launch a collaborator session
Added new Api RedlineColor(String color) to change redline color
Available colors are: "red", "blue", "green", "yellow", "magenta" and "black"
Fixed the problem that redline filled rectangles do not print filled
Changed the error message from "Negative Array Size" to "File Not Found" when the drawing does not exist.
Added parameter "print_move_down" to move the printing output downward
<param name="print_move_down" value="20">
The default value is 0
Added new Api GetFrame() to launch a separated frame to view the drawing in full
Added parameter "watermarkcolor" to set watermark color
<param name="watermarkcolor" value="red">
Available values are "white", "blue", "yellow", "red", "gray", "dark gray", "light gray", "green", "magenta", "orange", and "pink".
Default value is red
Added parameter "watermarksize" to set the font size of the watermark
<param name="watermarksize" value="20">
The default value is 30
Added parameter "redlineformat" to set the default format for redline file
<param name="redlineformat" value="dwf">
Available values are "red","dwf" and "dxf"
Fixed the problem that CADViewer frame cannot be closed
Fixed the problem that CADViewer missed viewport in some drawings
Fixed the problem that rotated text are not rotated correctly
Changed sub toolbar interface due to the problem that it takes a long time to display toolbar on browsers that use Sun Java Virtual Machine
Fixed the problem that for some drawings redlines circle, cloud and ellipes cannot be drawn due to number over flow
When a redline object is selected, then if it is dragged to another location, a wire frame shows during the drag operation
If a redline text is entered, the text and its insertion point are displayed in order to help with positioning of the text
The previous redlines font and text attributes are remembered and not reverted to the defaults
Fixed the problem that redline files are not opened from a https server
Fixed the problem that hyperlinks attached to a text do not work
Fixed the problem that color does not displayed correctly due to color opcode that is defined after invisible opcode is ignored.
Fixed the problem that parameter "TARGET" does not work for hyperlinks
Add parameter "watermarklocation" to position the watermark in the drawing and in the printout
<param name="watermarklocation" value="top">
Available values are "top", "middle" and "bottom"
To enable watermark on printouts, use <param name="print_watermark" value="enable">
Fixed the problem that IE crashes when CV uses the batch printing and the problem that batch printing does not work when CV uses batch print for the second time
Fixed the problem that CADViewer will throw an null pointer exception when there exists a layer without a name
Redline Tools: Fixed problems with broken tools where browser refresh did not return the desired behavior.
Fixed intermittent problems with parser processing of dwf files for URL Javascript links.
Fixed the bug when open redline file from the server, highlight entities are not displayed
Fixed the bug that circles sometimes are not displayed
The default display of CADViewer now is embedded to the browser. To display CADViewer as a separated frame, it can be done by using one of the two following:
Define the parameter <param
name="type" value="frame">
or
<applet .... width="1" height="1" ......>
To finish drawing a redline polyline, it can be done now by either a double click or and 'Esc' key
It is changed so that now when the cursor is over a URL link, it will show the URL and a double click will open the link to the specified URL
There is a "hide all" button in the layers list display to hide all the layers
Fixed the bug that display an exception when a redline file is saved to the server
"redlinelocation" parameter will be used for both open and save redline location. The default value for open and save redline file are "local". "redlinelocation" parameter value "local&server" is used to display the save/open window dialog box. "save_redline_method" parameter is now depricated. "save_redline_to_url" and "load_redline_from_url" parameters imply that it will be saved/opened from the server. These two parameters are used if save/open window dialog box is hidden. See SaveRedline.html to see how to open/save redline objects in a drawing.
Add new parameter "redlinetool" to have the redline tool to be displayed all the time and vertically on the left
<param name="redlinetool" value="vertical">
Available value is "vertical"
Redline object now can be saved as a layer in the drawing. When the drawing that contains the redline is opened, CADViewer will set the redline layer to off. Redline objects can be turned on using "layers" tool in the main toolbar. Once the redline layer is turned on, redline objects can be modified. See SaveRedline.html to see how to save redline objects in a drawing.
Extend the use of parameter "save_redline_to_url" so that its value can be used with any script
To use with TMS script/servlet
<param name="save_redline_to_url" value="http://www.xyz.com/cgi-bin/yourscript.cgi">
parameter "save_redline_to_url" is dependent on the following parameter to determine where the file will be saved
<param name="save_redline_file_to_url" value="../redlines/demo.red">
Deprecated. As of CV7.0, replaced by "redline_file_path"
or < param name="redline_file" value="../redlines/demo.red">
Deprecated. As of CV7.0, replaced by "redline_file_path"
or <param name="redline_file_path" value="../redlines/demo.red">
To use with your script
<param name="save_redline_file_to_url" value="http://www.xyz.com/cgi-bin/yourscript.cgi?p1=v1&p2=v2&p3=v3&....&pn=">
Added new parameter "save_redline_in_drawing_as" to save both redline and drawing to the server
<param name="save_redline_in_drawing_as" value="redlinelayer">
Added new parameter "save_drawing_to_url" to save the current drawing to the server
For use with TMS servlet
<param name="save_drawing_to_url" value="http://www.xyz.com/servlets/FileUploadServlet">
<param name="save_drawing_file_path" value="../savedwf/savedwf.dwf">
For use with your own script
<param name="save_drawing_to_url" value="http://www.xyz.com/cgi-bin/yourscript.cgi?p1=v1&p2=v2&p3=v3&.....&pn=">
Added new parameter "save_drawing_file_path" to get the file path where to save the drawing to the server
<param name="save_drawing_file_path" value="..//savedwf/savedwf.dwf">
Changed java API call CopyFile(String path, String url) to CopyFile(String url). The url can be defined either:
Use a servlet provided by TMS
url is the url to script i.e http://www.xyz.com/cgi-bin/FileUploadServlet
<param name="save_drawing_file_path" value="../savedwf/savedwf.dwf>
Use your own servlet or script
url is the url to script with any parameter you want to send. The last parameter will be the drawing content and it will be filled out by CADViewer
example CopyFile('http://www.xyz.com/cgi-bin/yourscript.cgi?p1=v1&p2=v2&p3=v3&....&pn=')
Changed java API call RedlineSaveFile(String path,String url,String layerName) to RedlineSaveFile(String url,String layerName). The url can be defined either:
Use a servlet provided by TMS
url is the url to script i.e http://www.xyz.com/cgi-bin/FileUploadServlet
<param name="save_drawing_file_path" value="../savedwf/savedwf.dwf>
Use your own servlet or script
url is the url to script with any parameter you want to send. The last parameter will be the drawing content and it will be filled out by CADViewer
example RedlineSaveFile('http://www.xyz.com/cgi-bin/yourscript.cgi?p1=v1&p2=v2&p3=v3&....&pn=','layer1')
Added java API call CopyFile(String path, String url) to copy the current drawing to the server. Return 0=fail, 1=success
"url" is the URL of the script that write redlines to server
"path" is the location where the redline file will be save to the sever. This path is relative to the root of the script file defined in "url"
Example: Assume that the path of the script "savedwf.cgi" on the server is /www/htdocs/cgi-bin and a call to CopyFile("../savedrawing/save1.dwf","http://www.cadviewer.com/cgi-bin/savedwf.cgi") will save the drawing in /www/htdocs/savedrawings/save1.dwf
Added java API call RedlineSaveFile(String path,String url,String layerName) to save the current drawing and redlines (as a layer) to the server. Return 0=fail, 1=success
"url" is the URL of the script that write redlines to server
"path" is the location where the redline file will be save to the sever. This path is relative to the root of the script file defined in "url"
"layerName" is the name of the layer that will contain all the redline entities
Example: Assume that the path of the script "savedwf.cgi" on the server is /www/htdocs/cgi-bin and a call to RedlineSaveFile("../savedrawing/save1.dwf","http://www.cadviewer.com/cgi-bin/savedwf.cgi","redlines") will save the drawing with current redline objects in the layer "redlines" in /www/htdocs/savedrawings/save1.dwf
Add parameter "polylinearrow". This parameter will determine where the arrow in the redlinepoly arrow will be put. The default location of the arrow is the first point. If the value="last", then the arrow will be placed at the last point of the polyline.
<param name="polylinearrow" value="last">
Available values are "last" and "first"
Redline tools is now modified to make it easy to use. It can be drawn by the following ways. The first way is a single click and no release followed by a drag of the mouse to the desired size then a release of the button to place the object. The second way is a single click to start and then move the mouse to get the desired size and then a second click to place the object on the drawing. There is an exception for polyline and polyline arrow tools. These two tools require a click and release to initiate the object, subsequent click and release will draw an edge of the polyline and a double click to place the object on the drawing
Added the missing API ZoomRect()
Added the exist codes for OpenFile(),CopyFile(), RedlineOpenFile(), and RedlineSaveFile(). Return 0=fail, 1=success
Fixed the problem with "RedlinePolylineArrow" tool that the line shows extends beyond the point of the arrow when there is a thickness set to 10 or higher
Fixed the "RedlineThickness" tool problem that does not draw lines with lineweight less than 4
Browser refresh will clear all the redline objects and redline tools will be available after the refresh
Add a message in the Java Console when the required parameter "configfile" or "config_file" is missing
Batch printing with the param "printdialog" with value="disable" will now hide the APPLET print dialog box
Fixed the problem of the "RedlineText" tool that text string does not proportionately stay to the rest of the drawing when zooming in and out
Added java API call RedlineOpenFile(String filePath). The value "filePath" can be a relative path to the document base or it can be an absolute path if it's opened locally
Added java API call RedlineSaveFile(String filePath) to save redline file locally. The "filePath" must be an absolute path (i.e c:\temp\demo.red)
Fixed the RedlineHighlight() consistency. This tool used to require a single click and no release followed by a drag of the mouse to the desired size then a release of the button to place the object. It's fixed and it's required a single click and release to initiate the redline object and then a move of the mouse to the desired size followed by a double click to place the object on the drawing.
Fixed RedlineHighlight() select problem.
Fixed the problems that the "RedlinePolylineArrow" tool does not work correctly with the "RedlineThickness" tool and the "RelineLine" does not draw.
CADViewer will check for the existence of redline objects before a save.
Changed java API call RedlineHightlight() to RedlineHighlight()
Add java API call ZoomExtends() to make it backwards compatible with CADViewer 6
The arrow of the Polyline with Arrow is now filled
Java API call GetNamedView(String) is added to open a given named view
Redline highlight tool is fixed
A new parameter "list_redline_files" is added to control the display of redline files in the file dialog box. The four valid file extensions are red, dwf, dxf and rml. If value="*.red" for example, then the file dialog box only displays redline files with the red extension. If value="extensions", then the dialog box will display all the files in the directory with extensions .red, .dwf, .dxf, .rml. If value="drawingname", then the dialog box will display all the files starting with the name of the drawing
<param name="list_redline_files" value="extensions">
Available values: "*.red", "*.dwf", "*.dxf", "*.rml", "extensions", "drawingname" and any combination of *.red, *.dwf, *.dxf and *.rml i.e "*.red;*.dxf"
Default value: "drawingname"
Fixed the problem opening redline file from local machine using java API call RedlineOpenFile()
A message panel will be displayed when the redline file is saved sucessfully. The default message is "Redline Saved". This message can be change by adding a line Redline Saved=value in the "english.txt" file where the value can be any text string.
Prolem that CV does not print redlines is fixed
Modified parameter "open_redline_with_drawing". The value "enable" is no longer valid. The new values are "initial" and "always". If the value is "initial", then CV will load the redline file from "load_redline_from_url" initially and the open file dialog box will be displayed when redline open file button is clicked. If the value is "always", then CV does not give users any choice but the redline file from "load_redline_from_url" to open.
<param name="open_redline_with_drawing" value="initial">
Values = "initial", "always"
Value "enable" is no longer valid
Java API call RedlineOpenFile() is added to open redline file
Java API call RedlineSaveFile() is added to save redline file
Java API call RedlineSelect() is added to select multiple redline objects (by dragging a window around them)
Java API call RedlineSelectObject() is added to select redline object
Java API call RedlineDelete() is added to delete redline object
Java API call RedlineDeleteAll() is added to delete all redline objects
Java API call RedlineUndo() is added to undo redline
Java API call RedlineRedo() is added to redo redline
Java API call RedlineLine() is added to enable redline line tool
Java API call RedlineRectangle() is to enable redline rectangle Tool
Java API call RedlineCircle() is added to enable redline cirlce tool
Java API call RedlineTriangle() is added to enable redline triangle tool
Java API call RedlineEllipse() is added to enable redline ellipse tool
Java API call RedlineHexagon() is to enable redline hexagon tool
Java API call RedlineCloud() is added to enable redline cloud tool
Java API call RedlinePolyline() is added to enable redline polyline tool
Java API call RedlinePolylineArrow() is added to enable redline polyline with arrow tool
Java API call RedlineFreehand() is to enable redline freehand tool
Java API call RedlineText() is added to enable redline text tool
Java API call RedlineHighlight() is added to enable redline highlight a window tool
Java API call RedlineThickness() is added to change redline thickness
Add API CopyFile();
Add parameter "save_redline_method". By default, a dialog box will ask users to choose saving a file either to the server or to the local machine. This parameter is define to bypass the applet dialog box and provide the user with a Windows dialog box. The available values are "local" and "server"
<param name="save_redline_method" value="local">
Add parameter "save_redline_directory". This directory must be an absolute path and "save_redline_method" must be "local".
<param name="save_redline_directory" value="c:\temp">
Add parameter "save_redline_filename". This parameter is used with "save_redline_method" and "save_redline_directory". The values are "Filename.ext" or "". If value is "", CADViewer provides the user with a Windows dialog box pointed to the directory specified in the "save_redline_directory" parameter. This dialog box only displays files with extension *.red or *.dwf
<param name="save_redline_filename" value="Filename.ext">
Modified parameter "load_redline_from_url" so CADViewer won't load the redline file initially. The value of this parameter is the URL of the redline file. When this parameter is defined, CV does not give users any choice but this redline file to open. The path of this URL is relative to the html document base.
<param name="load_redline_from_url" value="../redlines/test.red">
Added parameter "open_redline_with_drawing". The value of this parameter is "enable" and "load_redline_from_url" is defined then the redline file will be opened when the drawing is loaded.
<param name="open_redline_with_drawing" value="enable">
Added parameter "default_redline_color". This will set the default color for redline entities. The available colors are: "white", "blue", "yellow", "red", "gray", "dark gray", "light gray", "green", "magenta", "orange", and "pink".
<param name="default_redline_color" value="blue">