This feature gives the possibility of customization of menu bars and toolbars. It will prevent losing records in XML files when you install new version of HyperDoc Online. Please remember, that this is only declaration part. If you add new buttons or menu option you will still have to add configuration definition of menu's items or buttons to INI file.
First, please create folder for your customization files. Name and location doesn't matter.
In this folder those files can be stored:
hisHierarchyStaticReadonlyMenu.xml - customization file for Object Menu
hisDocListStaticReadonlyMenu.xml - customization file for Document Menu
HISDocViewReadOnlyToolbars.xml - customization file for toolbars
Of course, in this directory, you can put all of these files or only those relevant to given customization.
Note
Those files are normally present in your HIS directory, for example ASPPages\eng. You can copy them from there to your Customization folder but it's not adviced. It is advised that in those files there should be only those entries that you want to modify.
In IIS, in HyperDoc Online directory, one should create virtual directory custommenus. This directory have to point to folder with customization files (see above).
Another step to enable this functionality is to add entry to INI file.
3 parameters are needed to fully configure this functionality but you can use less if you are not going to configure one of the menu bars.
[Configuration] CustomMenuUrl_Hierarchy = "custommenus/hisHierarchyStaticReadonlyMenu.xml"; CustomMenuUrl_DocList = "custommenus/hisDocListStaticReadonlyMenu.xml"; CustomToolbarsURL_DocView = "custommenus/HISDocViewReadOnlyToolbars.xml";
Only then, when those parameters points to custom XMLs will the functionality work.
Set the encoding in first line for xml file
For west european languages:
<?xml version="1.0" encoding="ISO-8859-1"?>
or for central and eastern european languages:
<?xml version="1.0" encoding="Windows-1250"?>
Root Element:
The root element is <menugroup>, without any attribute.
Child elements
Customization file contains two types of child elements:
menuitem
menugroup
Each one (there are exception, see below) should have following attributes:
command - name of command, the same as in main menu file;
mode - processing mode for given element:
del - given element will be removed from menu;
upd - caption of given element will be changed to this one from customization file;
add - given element will be added to menu at the end;
and optional attribute:
caption - attribute required in upd and add mode.
If you want to update or remove menuitem from existed menugroup, you should add menuitem element as a child of root element. Please see menuitem with command SwitchLayoutFreeMulti in example below.
You can't add menuitems to existed menugroup.
If menugroup element is in add mode, it has to have child elements - menuitem. These elements are not required to have an attribute mode (this attribute will be omitted).
<?xml version="1.0" encoding="ISO-8859-1"?> <menugroup> <menuitem mode="add" caption="Filter Creator" command="doclist_custom_cmd_1"/> <menuitem mode="del" caption="Free - multiline" command="SwitchLayoutFreeMulti"/> <menugroup mode="upd" caption="Document List Layout" command="DocListLayout"/> <menugroup mode="add" caption="Filters" command="SetCustomPresentation"> <menuitem caption="Custom filter 1" command="doclist_custom_cmd_2"/> <menuitem caption="Custom filter 2" command="doclist_custom_cmd_3"/> </menugroup> </menugroup>
Root element
The root element is <toolbars>, without any attribute.
Child elements
Customization file contains two types of child elements:
button
toolbar
Button element has to have mode del and command of button to remove from main toolbar XML file.
Toolbar element is used to add buttons to given toolbar and has to have command attribute.
Children of toolbar are buttons with all attributes used in main xml file: caption, command and offset.
<?xml version="1.0" encoding="ISO-8859-1"?> <toolbars> <button mode="del" command="ZoomIn"/> <toolbar command="View" > <button caption="User button 1" command="menuEvent_User_1" offset="17" /> <button caption="User button 2" command="menuEvent_User_2" offset="18" /> <button caption="User button 3" command="menuEvent_User_3" offset="19" /> <button caption="User button 4" command="menuEvent_User_4" offset="20" /> </toolbar> </toolbars>
Warning
Please do not delete HELP buttons from Menus or Toolbars.
Please modify hdocASP.ini file to choose how this function will work.
In [Configuration] section set CopyViewMode parameter to one of following integer values:
1 - copy directly to clipboard,
2 - copy to new window,
3 - copy both to clipboard and to new window.
Sample entry:
[Configuration] CopyViewMode = ”1”;
By default CopyViewMode= 1. If it's set to other integer value than {1,2,3} then the default value will be taken anyway.
For user guide on this functionality refer to the section called “Copy View”.
This functionality is set in [Configuration] section of HdocASP.ini configuration file.
New parameters should be added:
LinkToSpot_enabled
LinkToSpot_hopa_page_name
LinkToSpot_zoomspot
LinkToSpot_additional_parameters (optional)
Sample entry in HdocASP.ini:
LinkToSpot_enabled = "true"; LinkToSpot_hopa_page_name = "HOPAGetView4Object.asp"; LinkToSpot_zoomspot = "130"; LinkToSpot_additional_parameters = "&Width=800&Height=600";
LinkToSpot_enabled sets if the option is enabled or not. Default value is false.
LinkToSpot_hopa_page_name defines which HOPA .asp page is loaded for selected spot.
LinkToSpot_zoomspot parameter takes unsigned
integer as a value. This parameter is applicable for both
HOPAGetView4ObjectEx and
HOPAGetView4Object functions. If the parameter is set to
0
, HOPA function will use
AncClass parameter to display spot on an object that is higher
in hierarchy and the image will not be centered on the spot of interest. When
zoomspot parameter is set to a value greater than
0
than HOPA function will use
SMP (shortcut for Spot Margin Percent –
see hopa documentation for details) parameter to display spot on an object that is
higher in hierarchy. Image will be then centered on the spot of interest and spot margin
percent will be set to value passed in zoomspot parameter.
LinkToSpot_additional_parameters - are optional parameters. Parameters Width and Height are only applicable for HOPAGetView4Object function. Applying this parameters for HOPAGetView4ObjectEx function would create invalid link.
Important
Please remember that each HOPA function has different input parameters. When changing parameter that indicates HOPA page name, a reference to proper additional parameters should be made.
For user guide on this functionality refer to the section called “Copy link to spot”.
This functionality displays selected objects linked to spot with fatter lines added.
This functionality is configurable via [Configuration]
section in INI
file. Color of fatted lines is the same as highlight for spot.
New configuration parameter added. This parameter indicates width of fattened line on highlight or select operation. It is only applicable for "polyline", "segment" and "circarc" spots.
Fattened poly-line width keeps constant width for image size.
spot_highlighted_line_width - sets width for spot line. Width is presented in percents of image size. 1.0 is 100%, 0.01 is 1%. It is advised to input values around 0.005 (0.5%).
Example:
spot_highlighted_line_width=0.005;
This functionality works in HIS - in Jump mode. It also works in Print Preview as well. You must first select the spot with CTRL
and Right Mouse Button and then enter Print Preview mode.
The tolerance of hitting and selecting lines can be set in [Configuration]
section of INI
file by using new parameter: line_hit_sensitivity
line_hit_sensitivity
- Tolerance is presented in percents of image size.
1.0 is 100%, 0.01 is 1%.
It is advised to input values around 0.005 (0.5%).
Example of entry:
line_hit_sensitivity = 0.005;
Note
If parameter is not defined in INI
, line hit sensitivity will be equal to actual line width.
This functionality allows to define standard scales used in HyperDoc Online printing for displayed document.
To control standard scales for HyperDoc Online define standard_scales and general_scales parameters in
[Configuration]
section of INI
file.
Sample entry in INI can look like this:
standard_scales="10,100,200"; general_scales="1.0,3.3,4.7,5.8,6.5,7.6,8.3";
Standard scales
parameter defines a list of scale values that should be matched first.
If the system does not find a proper sale here it will use general scale
rules to calculate best match.
This will happen only for values smaller or greater than edge values on the list.
So basing on example above:
match value of drawing: 0-9 - calculated based on general scales rules (if we add 0 to the list, a result will be 10)
match value of drawing: 11-99 - resulting scale 100
match value of drawing: 101-199 - resulting scale 200
match value of drawing: 200+ - calculated based on general scales rules
General scales parameters are used to cover all possible values that could be calculated for drawing if standard_scale
parameter do not match.
So value: 3.3 can result is scale of: 3.3, 33, 333, 3333 etc. depending on image.
The default values for standard_scales are "1,2,5,10,20,50,100,200,400,500,800,1000
".
The default values for general_scales parameter is "1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0
".
Important
The modified scale according to parameters can be observed when printing mode is set to ScaleMode=2
or 4
(Match view
or Match drawing
modes).
Caution
standard_scales values can be in range of any real numbers but values of general_scales parameter can only be between 1(always including) - 9(excluding).
Following HDocASP.ini
options from [Configuration]
section are important to allow working with redlining drawing on client:
write_vectors=true;
Allow writing (transferring) measurement drawings into redlining drawing layers. For this flag to be effective set the parameter to true and RW licence has to be active.
upd_priv_redl_layers_only=false;
When this option is set to true, it restricts Client measurement's transfers only to own, private redlining layers.
Current implementation works on HyperDoc Online client with entities stored in redlining drawing, which are transmitted to the Client in similar way as overlay drawings are.
Desciption of buttons available:
Import
- imports Entities from selected Object Layers to Measurement drawing,Merge
- sends selected Entity from Measurement drawing to chosen redlining layer,Clear
- clears or replace (with currently editing entity) all merged(added) entities from selected redlining layer.
You can define your own color palettes for lines and fills in Measurement mode using two parameters of [Configuration]
section in INI
file.
Those are:
line_colors_palette
fill_colors_palette
A full color palette definition consists of single string (max length = 512) that is a sequence of 16 color descriptions, all separated by semicolons.
A color description consists of three substrings:
color number (valid values are between 1 and 16; both limits are included);
color RGB code as 6 hex digits (using of AUTOCAD codes is recommended);
color name as ordinary string;
See the Color codes table in the section called “TSL Color Codes” for all colors in RGB and BGR format.
All are separated by colons.
User can define only chosen colors, colors not defined by user are taken from default palette.
A parser approves any color that meets above requirements and it rejects others.
An approved color replaces the original color in a palette.
In the case there are few descriptions of the same color the last valid description is approved.
Please see below example of color pallet definition, that is also a default one:
fill_colors_palette="1,000000,White;2,FFFFFF,Black;3,FF9933,Orange;4,99CC00,Grass;5,66CCFF,Blue;6,99FFFF,Cyan;7,CC99CC,Magenta;8,FFFF99,Yellow;9,666666,DarkGray;10,999999,Gray;11,CC3333,Ruby;12,33CC00,Green;13,003399,Navy;14,99CCCC,Steel;15,993399,Violet;16,CCCC66,Khaki";
The default color palette for lines uses exactly the same string.
There is available new parameter for use in HDocASP.ini file in [GENERAL]
section: HOPATemplateKey
Example of INI entry:
[General] HOPATemplateKey=*HOPA*
Now imagine that we have HIS installation and folder Templates where our templates are located and INI
file points to this folder.
List of templates in Templates folders:
A4_normal
A3_normal
A4_hopa
HOPA_A3
Multi_Hopa_windows
A1_special
A4_logo
So with this parameter added to INI, in HyperDoc Online Print Preview panel, in Template
drop-down all template with "hopa
" in it's name will not be shown (in this example 3 templates will not be shown).
The value of this parameter is matching templates name using V Basic LIKE operator. More info can be read here here.
For more readability it's suggested to create templates name using one convention like for example: adding "Hopa_" prefix at the begining of template name.
To make sure what templates are marked as only-HOPA ones, you can visit GetTemplatesXML.asp
page on your server and search for HOPATemplate="1" -
those are those only-HOPA templates that are marked by HOPATemplateKey
parameter.
Important
Please note, that print templates defined using this parameter will not be shown not only in HyperDoc Online but also in HOPA EX calls with print preview panel as it works just like the one in HyperDoc Online.
If you want to enable Quick Search functionality in HyperDoc Online add this entry to your INI file:
qsearch_enabled=1; qsearch_match=5; qsearch_pagesize=20; qsearch_labelmode=1; qsearch_hierarchy='<name_of_hierarchy>'; qsearch_target='<ObjectClass>:<field1>,<field2>;<ObjectClass2>:<field1>,<field2>'; qsearch_hierarchyN='<name_of_hierarchy>'; qsearch_targetN='<ObjectClass>:<field1>,<field2>;<ObjectClass2>:<field1>,<field2>';
Two last rows are only needed if you want to use Quick Search in more than one hierarchy.
In that case N should be replaced with a number in range from 1 to 10. It's a number that needs to be same in both: QSearch_HierarchyN
and qsearch_targetN
.
More pairs of this two rows can be added if you want to enable Quick Search for additional hierarchies.
For detailed information on those parameters please refer to the section called “[Configuration]
section”.
Note
If Quick Search is not set properly then it's search field for corresponding hierarchy will be greyed out.
Important
Search between hierarchies is not supported. To search specific hierarchy using Quick Search, first switch to this hierarchy normally.