]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
Merge from BR_Dev_For_4_0 branch (from tag mergeto_BR_QT4_Dev_17Jan08)
authorvsr <vsr@opencascade.com>
Wed, 30 Jan 2008 16:06:02 +0000 (16:06 +0000)
committervsr <vsr@opencascade.com>
Wed, 30 Jan 2008 16:06:02 +0000 (16:06 +0000)
329 files changed:
adm_local/unix/config_files/check_vtk.m4
build_configure
configure.ac
doc/salome/gui/GUI/closestudy.png [deleted file]
doc/salome/gui/GUI/cshdat_robohelp.htm [deleted file]
doc/salome/gui/GUI/cshdat_webhelp.htm [deleted file]
doc/salome/gui/GUI/default.css [deleted file]
doc/salome/gui/GUI/default_ns.css [deleted file]
doc/salome/gui/GUI/doxyfile.in [new file with mode: 0755]
doc/salome/gui/GUI/dump_study.htm [deleted file]
doc/salome/gui/GUI/ehelp.xml [deleted file]
doc/salome/gui/GUI/ehlpdhtm.js [deleted file]
doc/salome/gui/GUI/geom_preferences.htm [deleted file]
doc/salome/gui/GUI/i_blue.jpg [deleted file]
doc/salome/gui/GUI/image54.jpg [deleted file]
doc/salome/gui/GUI/image65.gif [deleted file]
doc/salome/gui/GUI/image67.gif [deleted file]
doc/salome/gui/GUI/image68.gif [deleted file]
doc/salome/gui/GUI/image69.gif [deleted file]
doc/salome/gui/GUI/image70.gif [deleted file]
doc/salome/gui/GUI/image71.gif [deleted file]
doc/salome/gui/GUI/image72.gif [deleted file]
doc/salome/gui/GUI/image73.gif [deleted file]
doc/salome/gui/GUI/image75.gif [deleted file]
doc/salome/gui/GUI/image94.gif [deleted file]
doc/salome/gui/GUI/images/batchmode.png [new file with mode: 0644]
doc/salome/gui/GUI/images/cataloggenerator.png [new file with mode: 0755]
doc/salome/gui/GUI/images/choicepage.png [new file with mode: 0644]
doc/salome/gui/GUI/images/clipping.png [new file with mode: 0644]
doc/salome/gui/GUI/images/closestudy.png [new file with mode: 0755]
doc/salome/gui/GUI/images/copy-paste.jpg [new file with mode: 0755]
doc/salome/gui/GUI/images/dumpstudy.png [new file with mode: 0755]
doc/salome/gui/GUI/images/geomview-alt.png [new file with mode: 0755]
doc/salome/gui/GUI/images/graduatedaxes1.png [new file with mode: 0644]
doc/salome/gui/GUI/images/icon_about.png [new file with mode: 0755]
doc/salome/gui/GUI/images/image100.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image102.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image103.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image105.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image106.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image108.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image109.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image157.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image54.jpg [new file with mode: 0755]
doc/salome/gui/GUI/images/image65.gif [new file with mode: 0755]
doc/salome/gui/GUI/images/image67.gif [new file with mode: 0755]
doc/salome/gui/GUI/images/image69.gif [new file with mode: 0755]
doc/salome/gui/GUI/images/image70.gif [new file with mode: 0755]
doc/salome/gui/GUI/images/image72.gif [new file with mode: 0755]
doc/salome/gui/GUI/images/image73.gif [new file with mode: 0755]
doc/salome/gui/GUI/images/image75.gif [new file with mode: 0755]
doc/salome/gui/GUI/images/image77.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image86.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image88.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image89.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image91.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image94.gif [new file with mode: 0755]
doc/salome/gui/GUI/images/image95.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image96.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image97.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image98.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/image99.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/import.png [new file with mode: 0755]
doc/salome/gui/GUI/images/intropage.png [new file with mode: 0644]
doc/salome/gui/GUI/images/loadscript.png [new file with mode: 0755]
doc/salome/gui/GUI/images/loadstudy2.png [new file with mode: 0755]
doc/salome/gui/GUI/images/lockedstudy.png [new file with mode: 0755]
doc/salome/gui/GUI/images/neo-view2.png [new file with mode: 0755]
doc/salome/gui/GUI/images/newsticn.jpg [new file with mode: 0755]
doc/salome/gui/GUI/images/note1.gif [new file with mode: 0755]
doc/salome/gui/GUI/images/objectbrowser1.png [new file with mode: 0755]
doc/salome/gui/GUI/images/objectbrowser2.png [new file with mode: 0755]
doc/salome/gui/GUI/images/open.jpg [new file with mode: 0755]
doc/salome/gui/GUI/images/plot2d_clone.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/plot2d_legend.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/plot2d_lines.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/plot2d_logarithmic_horizontal.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/plot2d_logarithmic_vertical.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/plot2d_points.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/plot2d_settings.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/plot2d_splines.gif [new file with mode: 0644]
doc/salome/gui/GUI/images/plot2d_view_settings.png [new file with mode: 0644]
doc/salome/gui/GUI/images/ppref1.png [new file with mode: 0755]
doc/salome/gui/GUI/images/ppref2.png [new file with mode: 0755]
doc/salome/gui/GUI/images/ppref3.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref11.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref12.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref13.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref14.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref15.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref21.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref22.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref23.png [new file with mode: 0644]
doc/salome/gui/GUI/images/pref24.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref31.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref33.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref34.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref37.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref38.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref39.png [new file with mode: 0755]
doc/salome/gui/GUI/images/pref40.png [new file with mode: 0755]
doc/salome/gui/GUI/images/productpage.png [new file with mode: 0644]
doc/salome/gui/GUI/images/productpage1.png [new file with mode: 0644]
doc/salome/gui/GUI/images/productpage2.png [new file with mode: 0644]
doc/salome/gui/GUI/images/progresspage.png [new file with mode: 0644]
doc/salome/gui/GUI/images/progresspage1.png [new file with mode: 0644]
doc/salome/gui/GUI/images/readmepage.png [new file with mode: 0644]
doc/salome/gui/GUI/images/registry1.png [new file with mode: 0755]
doc/salome/gui/GUI/images/registry3.png [new file with mode: 0755]
doc/salome/gui/GUI/images/registry4.png [new file with mode: 0755]
doc/salome/gui/GUI/images/save.jpg [new file with mode: 0755]
doc/salome/gui/GUI/images/selectcolor.png [new file with mode: 0755]
doc/salome/gui/GUI/images/selectfont.png [new file with mode: 0755]
doc/salome/gui/GUI/images/set_rotation_point_dialog1.png [new file with mode: 0644]
doc/salome/gui/GUI/images/set_rotation_point_dialog2.png [new file with mode: 0644]
doc/salome/gui/GUI/images/studyproperties.png [new file with mode: 0755]
doc/salome/gui/GUI/images/updaterate.png [new file with mode: 0755]
doc/salome/gui/GUI/images/urbutton.png [new file with mode: 0755]
doc/salome/gui/GUI/images/view2.png [new file with mode: 0755]
doc/salome/gui/GUI/images/view_rotation_point.png [new file with mode: 0644]
doc/salome/gui/GUI/index.htm [deleted file]
doc/salome/gui/GUI/index_csh.htm [deleted file]
doc/salome/gui/GUI/index_rhc.htm [deleted file]
doc/salome/gui/GUI/input/about_salome.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/creating_new_study.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/displaying_studies.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/editing_studies.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/geometry_preferences.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/getting_started.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/gui_module_chapter.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/index.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/installing_salome.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/intro_to_salome.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/introduction.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/introduction_to_gui.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/mesh_preferences.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/occ_3d_viewer.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/opening_studies.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/plot2d_viewer.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/postpro_preferences.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/running_salome.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/salome_architecture.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/salome_desktop.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/salome_preferences.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/saving_and_closing_studies.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/select_color_and_font.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/setting_preferences.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/setting_preferences_chapter.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/setting_study_properties.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/study_management_chapter.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/using_catalog_generator.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/using_object_browser.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/using_registry_tool.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/viewers_chapter.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/vtk_3d_viewer.doc [new file with mode: 0644]
doc/salome/gui/GUI/input/working_with_python_scripts.doc [new file with mode: 0644]
doc/salome/gui/GUI/introduction_to_gui.htm [deleted file]
doc/salome/gui/GUI/kernel.log [deleted file]
doc/salome/gui/GUI/mesh_preferences.htm [deleted file]
doc/salome/gui/GUI/note1.gif [deleted file]
doc/salome/gui/GUI/occ_3d_viewer.htm [deleted file]
doc/salome/gui/GUI/post-pro_preferences.htm [deleted file]
doc/salome/gui/GUI/robohhre.lng [deleted file]
doc/salome/gui/GUI/select_color_and_font.htm [deleted file]
doc/salome/gui/GUI/setting_preferences.htm [deleted file]
doc/salome/gui/GUI/ss_btn_related_topics.gif [deleted file]
doc/salome/gui/GUI/static/footer.html [new file with mode: 0755]
doc/salome/gui/GUI/static/header.html [new file with mode: 0755]
doc/salome/gui/GUI/texture_horiz_ltbluebubbles.jpg [deleted file]
doc/salome/gui/GUI/tip1.gif [deleted file]
doc/salome/gui/GUI/vtk_3d_viewer.htm [deleted file]
doc/salome/gui/GUI/webhelp.cab [deleted file]
doc/salome/gui/GUI/webhelp.jar [deleted file]
doc/salome/gui/GUI/whcsh_home.htm [deleted file]
doc/salome/gui/GUI/whcshdata.htm [deleted file]
doc/salome/gui/GUI/whd_dpns.htm [deleted file]
doc/salome/gui/GUI/whd_hide0.gif [deleted file]
doc/salome/gui/GUI/whd_hide1.gif [deleted file]
doc/salome/gui/GUI/whd_hide2.gif [deleted file]
doc/salome/gui/GUI/whd_next0.gif [deleted file]
doc/salome/gui/GUI/whd_next1.gif [deleted file]
doc/salome/gui/GUI/whd_next2.gif [deleted file]
doc/salome/gui/GUI/whd_nvp10.htm [deleted file]
doc/salome/gui/GUI/whd_nvp20.htm [deleted file]
doc/salome/gui/GUI/whd_prev0.gif [deleted file]
doc/salome/gui/GUI/whd_prev1.gif [deleted file]
doc/salome/gui/GUI/whd_prev2.gif [deleted file]
doc/salome/gui/GUI/whd_show0.gif [deleted file]
doc/salome/gui/GUI/whd_show1.gif [deleted file]
doc/salome/gui/GUI/whd_show2.gif [deleted file]
doc/salome/gui/GUI/whd_sync0.gif [deleted file]
doc/salome/gui/GUI/whd_sync1.gif [deleted file]
doc/salome/gui/GUI/whd_sync2.gif [deleted file]
doc/salome/gui/GUI/whd_tab0.gif [deleted file]
doc/salome/gui/GUI/whd_tab1.gif [deleted file]
doc/salome/gui/GUI/whd_tab2.gif [deleted file]
doc/salome/gui/GUI/whd_tab3.gif [deleted file]
doc/salome/gui/GUI/whd_tab4.gif [deleted file]
doc/salome/gui/GUI/whd_tab5.gif [deleted file]
doc/salome/gui/GUI/whd_tab6.gif [deleted file]
doc/salome/gui/GUI/whd_tab7.gif [deleted file]
doc/salome/gui/GUI/whd_tab8.gif [deleted file]
doc/salome/gui/GUI/whd_tabs.htm [deleted file]
doc/salome/gui/GUI/whd_toc1.gif [deleted file]
doc/salome/gui/GUI/whd_toc2.gif [deleted file]
doc/salome/gui/GUI/whd_toc3.gif [deleted file]
doc/salome/gui/GUI/whd_toc4.gif [deleted file]
doc/salome/gui/GUI/whd_topic.xml [deleted file]
doc/salome/gui/GUI/whd_wbsh0.gif [deleted file]
doc/salome/gui/GUI/whd_wbsh1.gif [deleted file]
doc/salome/gui/GUI/whd_wbsh2.gif [deleted file]
doc/salome/gui/GUI/whfbody.htm [deleted file]
doc/salome/gui/GUI/whfdhtml.htm [deleted file]
doc/salome/gui/GUI/whfform.htm [deleted file]
doc/salome/gui/GUI/whfhost.js [deleted file]
doc/salome/gui/GUI/whform.js [deleted file]
doc/salome/gui/GUI/whframes.js [deleted file]
doc/salome/gui/GUI/whgbody.htm [deleted file]
doc/salome/gui/GUI/whgdef.htm [deleted file]
doc/salome/gui/GUI/whgdhtml.htm [deleted file]
doc/salome/gui/GUI/whghost.js [deleted file]
doc/salome/gui/GUI/whhost.js [deleted file]
doc/salome/gui/GUI/whibody.htm [deleted file]
doc/salome/gui/GUI/whidhtml.htm [deleted file]
doc/salome/gui/GUI/whiform.htm [deleted file]
doc/salome/gui/GUI/whihost.js [deleted file]
doc/salome/gui/GUI/whlang.js [deleted file]
doc/salome/gui/GUI/whmozemu.js [deleted file]
doc/salome/gui/GUI/whmsg.js [deleted file]
doc/salome/gui/GUI/whnjs.htm [deleted file]
doc/salome/gui/GUI/whphost.js [deleted file]
doc/salome/gui/GUI/whproj.htm [deleted file]
doc/salome/gui/GUI/whproj.js [deleted file]
doc/salome/gui/GUI/whproj.xml [deleted file]
doc/salome/gui/GUI/whproxy.js [deleted file]
doc/salome/gui/GUI/whres.xml [deleted file]
doc/salome/gui/GUI/whskin_blank.htm [deleted file]
doc/salome/gui/GUI/whskin_homepage.htm [deleted file]
doc/salome/gui/GUI/whskin_info.htm [deleted file]
doc/salome/gui/GUI/whskin_pickup.htm [deleted file]
doc/salome/gui/GUI/whskin_tw.htm [deleted file]
doc/salome/gui/GUI/whstart.js [deleted file]
doc/salome/gui/GUI/whstub.js [deleted file]
doc/salome/gui/GUI/whtdhtml.htm [deleted file]
doc/salome/gui/GUI/whthost.js [deleted file]
doc/salome/gui/GUI/whtopic.js [deleted file]
doc/salome/gui/GUI/whutils.js [deleted file]
doc/salome/gui/GUI/whver.js [deleted file]
doc/salome/gui/Makefile.am
doc/salome/tui/Makefile.am
src/CASCatch/CASCatch.hxx [new file with mode: 0644]
src/CASCatch/CASCatch_CatchSignals.cxx [new file with mode: 0644]
src/CASCatch/CASCatch_CatchSignals.hxx [new file with mode: 0644]
src/CASCatch/CASCatch_ErrorHandler.cxx [new file with mode: 0644]
src/CASCatch/CASCatch_ErrorHandler.hxx [new file with mode: 0644]
src/CASCatch/CASCatch_Failure.cxx [new file with mode: 0644]
src/CASCatch/CASCatch_Failure.hxx [new file with mode: 0644]
src/CASCatch/Makefile.am [new file with mode: 0644]
src/LightApp/LightApp_Application.cxx
src/LightApp/LightApp_Application.h
src/LightApp/LightApp_Module.cxx
src/LightApp/LightApp_Selection.cxx
src/LightApp/LightApp_SelectionMgr.cxx
src/LightApp/LightApp_SelectionMgr.h
src/LightApp/resources/LightApp_msg_en.ts
src/Makefile.am
src/OCCViewer/Makefile.am
src/OCCViewer/OCCViewer_ViewModel.cxx
src/OCCViewer/OCCViewer_ViewPort.cxx
src/OCCViewer/OCCViewer_ViewSketcher.cxx [new file with mode: 0755]
src/OCCViewer/OCCViewer_ViewSketcher.h [new file with mode: 0755]
src/OCCViewer/OCCViewer_ViewWindow.cxx
src/OCCViewer/OCCViewer_ViewWindow.h
src/Plot2d/Plot2d_SetupViewDlg.cxx
src/Plot2d/Plot2d_SetupViewDlg.h
src/PyConsole/PyConsole_Editor.cxx
src/PyInterp/PyInterp_Interp.cxx
src/PyInterp/PyInterp_Interp.h
src/QxGraph/QxGraph_Canvas.cxx
src/QxGraph/QxGraph_Canvas.h
src/QxGraph/QxGraph_CanvasView.cxx
src/QxGraph/QxGraph_CanvasView.h
src/QxGraph/QxGraph_ViewManager.cxx
src/QxGraph/QxGraph_ViewManager.h
src/QxGraph/QxGraph_ViewWindow.cxx
src/SALOME_PYQT/SalomePyQt/SalomePyQt.sip
src/SALOME_SWIG/SALOMEGUI_Swig.i
src/STD/STD_Application.cxx
src/STD/STD_Application.h
src/STD/resources/STD_msg_en.ts
src/SUIT/SUIT_Application.cxx
src/SUIT/SUIT_Application.h
src/SUIT/SUIT_Session.cxx
src/SUIT/SUIT_Session.h
src/SUIT/SUIT_Study.cxx
src/SUIT/SUIT_Study.h
src/SUIT/SUIT_ViewManager.cxx
src/SUIT/SUIT_ViewManager.h
src/SVTK/Makefile.am
src/SVTK/SVTK_InteractorStyle.cxx
src/SVTK/SVTK_InteractorStyle.h
src/SVTK/SVTK_RectPicker.cxx
src/SVTK/SVTK_Renderer.cxx
src/SVTK/SVTK_Renderer.h
src/SVTK/SVTK_Selector.cxx
src/SVTK/SVTK_Selector.h
src/SVTK/SVTK_SelectorDef.h
src/SVTK/SVTK_View.cxx
src/SVTK/SVTK_View.h
src/SVTK/SVTK_ViewWindow.cxx
src/SVTK/SVTK_ViewWindow.h
src/SVTK/resources/SVTK_msg_en.ts
src/SalomeApp/Makefile.am
src/SalomeApp/SalomeApp_Application.cxx
src/SalomeApp/SalomeApp_Application.h
src/SalomeApp/SalomeApp_ExceptionHandler.cxx
src/SalomeApp/SalomeApp_ExitDlg.cxx [new file with mode: 0644]
src/SalomeApp/SalomeApp_ExitDlg.h [new file with mode: 0644]
src/SalomeApp/SalomeApp_Study.cxx
src/SalomeApp/SalomeApp_Study.h
src/SalomeApp/resources/SalomeApp.xml
src/SalomeApp/resources/SalomeApp_msg_en.ts
src/Session/Makefile.am
src/Session/SALOME_Session_Server.cxx
src/Session/Session_ServerThread.cxx
src/Session/Session_Session_i.hxx
src/VTKViewer/VTKViewer_ConvexTool.cxx
src/VTKViewer/VTKViewer_ConvexTool.h
src/VTKViewer/VTKViewer_GeometryFilter.cxx

index 17a564a2f3c51e93cc3ec9ae5b876b9367126222..5e4fc444ea5325f5e88ee5ccdb860f418f72bbcc 100644 (file)
@@ -27,11 +27,11 @@ dnl  Adds the --with-vtk=path and --with-vtk-version configure options
 dnl
 AC_DEFUN([OPTIONS_VTK], [
   AC_ARG_WITH([vtk],
-              [AC_HELP_STRING([--with-vtk], [The prefix where VTK is installed (default is /usr/local)])],
+              [AC_HELP_STRING([--with-vtk], [The prefix where VTK is installed (default "" means taking from environment variable)])],
               [with_vtk=$withval], [with_vtk=""])
 
   AC_ARG_WITH([vtk-version],
-              [AC_HELP_STRING([--with-vtk-version], [VTK include directory name is vtk-suffix, e.g. vtk-5.0/. What is the suffix? (Default -5.0)])],
+              [AC_HELP_STRING([--with-vtk-version], [VTK include directory name is vtk-suffix, e.g. vtk-5.0/. What is the suffix? (Default "yes" means taking from environment variable)])],
               [vtk_suffix=$withval], [vtk_suffix="yes"])
 ])
 
@@ -46,6 +46,8 @@ AC_REQUIRE([AC_PROG_CPP])dnl
 AC_REQUIRE([AC_PROG_CXXCPP])dnl
 AC_REQUIRE([AC_LINKER_OPTIONS])dnl
 
+AC_REQUIRE([OPTIONS_VTK])dnl
+
 AC_CHECKING(for VTK)
 
 AC_LANG_SAVE
@@ -88,6 +90,9 @@ LOCAL_LIBS="-lvtkCommon -lvtkGraphics -lvtkImaging -lvtkFiltering -lvtkIO -lvtkR
 TRY_LINK_LIBS="-lvtkCommon $OGL_LIBS $LXLIB -lX11 -lXt"
 
 dnl VTK version suffix
+if test -z $vtk_suffix ; then
+  vtk_suffix="yes"
+fi
 if test "x$vtk_suffix" == "xno" ; then
   dnl in case user wrote --with-vtk-version=no, use empty suffix
   vtk_suffix=""
@@ -102,6 +107,9 @@ else
 fi
 
 dnl VTK install dir
+if test -z $with_vtk ; then
+  with_vtk=""
+fi
 if test "x$with_vtk" = "xyes" ; then
   dnl in case user wrote --with-vtk=yes
   with_vtk=""
index 38c83ea1c710adcf3071b8dab36f6acaf8828b88..ef97954dd1fc952b2464a57efa1148956ee57c9f 100755 (executable)
@@ -25,22 +25,22 @@ cd ${CONF_DIR}
 ABS_CONF_DIR=`pwd`
 
 mkdir -p salome_adm/unix/config_files
-cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files/* salome_adm/unix/config_files
-cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/pythonbe.py salome_adm/unix
+#cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files/* salome_adm/unix/config_files
+#cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/pythonbe.py salome_adm/unix
 
 # remove KERNEL deprecated configure files
-for deprecated in ac_cc_warnings.m4 ac_cxx_partial_specialization.m4 \
-  check_mico.m4 config.guess ltmain.sh ac_cxx_bool.m4 ltconfig \
-  ac_cxx_typename.m4 check_pthreads.m4 config.sub libtool.m4 ac_cxx_mutable.m4
-do
-  rm  salome_adm/unix/config_files/${deprecated}
-done
+#for deprecated in ac_cc_warnings.m4 ac_cxx_partial_specialization.m4 \
+#  check_mico.m4 config.guess ltmain.sh ac_cxx_bool.m4 ltconfig \
+#  ac_cxx_typename.m4 check_pthreads.m4 config.sub libtool.m4 ac_cxx_mutable.m4
+#do
+#  rm  salome_adm/unix/config_files/${deprecated}
+#done
 
 # remove KERNEL CVS directories in subdirectory salome_adm
-for deprecated in CVS unix/CVS unix/config_files/CVS
-do
-  rm -rf salome_adm/${deprecated}
-done
+#for deprecated in CVS unix/CVS unix/config_files/CVS
+#do
+#  rm -rf salome_adm/${deprecated}
+#done
 
 cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/SALOMEconfig.h.in salome_adm/unix
 
@@ -53,7 +53,8 @@ cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/SALOMEconfig.h.in salome_adm/unix
 #   autom4te.cache (directory)
 echo "====================================================== aclocal"
 
-aclocal -I adm_local/unix/config_files -I salome_adm/unix/config_files  || exit 1
+aclocal -I adm_local/unix/config_files \
+        -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files || exit 1
 
 # ____________________________________________________________________
 # libtoolize creates some configuration files (ltmain.sh,
index 6ee8c787a75c61ba172d8a9ccc579cc225b9b2de..383c0114a747ae7ea7a437b392268e5d1ee97c06 100644 (file)
@@ -304,7 +304,6 @@ echo testing VTK
 echo ---------------------------------------------
 echo
 
-OPTIONS_VTK
 CHECK_VTK
 
 echo
@@ -487,6 +486,14 @@ echo
 
 CHECK_CPPUNIT
 
+echo
+echo ---------------------------------------------
+echo Testing libxml2
+echo ---------------------------------------------
+echo
+
+CHECK_LIBXML
+
 echo
 echo ---------------------------------------------
 echo Summary
@@ -502,7 +509,7 @@ fi
 
 if test "$GUI_DISABLE_CORBA" != "yes"; then
 variables="cc_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok
-omniORB_ok boost_ok occ_ok sip_ok pyqt_ok qwt_ok doxygen_ok graphviz_ok Kernel_ok"
+omniORB_ok boost_ok occ_ok sip_ok pyqt_ok qwt_ok doxygen_ok graphviz_ok libxml_ok Kernel_ok"
 else
 variables="cc_ok lex_yacc_ok python_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok boost_ok
 occ_ok sip_ok pyqt_ok qwt_ok doxygen_ok graphviz_ok Kernel_ok"
@@ -602,9 +609,11 @@ AC_OUTPUT([ \
   ./doc/Makefile \
   ./doc/salome/Makefile \
   ./doc/salome/gui/Makefile \
+  ./doc/salome/gui/GUI/doxyfile \
   ./doc/salome/tui/Makefile \
   ./doc/salome/tui/GUI/doxyfile \
   ./src/Makefile \
+  ./src/CASCatch/Makefile \
   ./src/Qtx/Makefile \
   ./src/Style/Makefile \
   ./src/DDS/Makefile \
diff --git a/doc/salome/gui/GUI/closestudy.png b/doc/salome/gui/GUI/closestudy.png
deleted file mode 100755 (executable)
index fb7abe1..0000000
Binary files a/doc/salome/gui/GUI/closestudy.png and /dev/null differ
diff --git a/doc/salome/gui/GUI/cshdat_robohelp.htm b/doc/salome/gui/GUI/cshdat_robohelp.htm
deleted file mode 100755 (executable)
index 366ca9f..0000000
+++ /dev/null
@@ -1,258 +0,0 @@
-<html>\r
-<head>\r
-<title>GUI Module Reference Manual</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<body>\r
-<script language="JavaScript">\r
-<!--\r
-\r
-var gArrayCsh = new Array();\r
-\r
-var gstrWindowOption = "";\r
-var gstrURL = "";\r
-var gbWithNavPane = false;\r
-\r
-function CshEntityItem(strAliasId, nTopicNum, strUrl) \r
-{\r
-    this.strAliasId = strAliasId;\r
-    this.nTopicNum = nTopicNum;\r
-    this.strUrl = strUrl;\r
-}\r
-\r
-\r
-//Try to get to topic number from hash string\r
-function GetTopicNumberAuto(strMayBeNumber)\r
-{\r
-   var nNum = -1;\r
-   if (strMayBeNumber.length >= 1)\r
-   {\r
-               var strTmp = strMayBeNumber;\r
-               var iEnd = strTmp.length;\r
-               for (var i=0; i<iEnd; i++)\r
-               {\r
-                         var ch = strTmp.charAt(i);\r
-                         if (!((ch == "0") || (ch == "1") ||\r
-                               (ch == "2") || (ch == "3") ||\r
-                               (ch == "4") || (ch == "5") ||\r
-                               (ch == "6") || (ch == "7") ||\r
-                               (ch == "8") || (ch == "9")))\r
-                             return GetTopicNumberById(strTmp);\r
-               }\r
-               nNum = parseInt(strTmp);\r
-   }\r
-   return nNum;\r
-}\r
-\r
-function GetTopicNumber(strHashString)\r
-{\r
-       var nTopicEndPos = strHashString.indexOf(',')\r
-       if (nTopicEndPos == -1) { // no window option.\r
-               return GetTopicNumberOnly(strHashString);\r
-       }\r
-       else {\r
-               var strWindowOption = strHashString.substring(nTopicEndPos + 1, strHashString.length);\r
-               var strWithNavPane = 'withnavpane=true';\r
-               if (strWindowOption.toLowerCase().indexOf(strWithNavPane) == 0)\r
-               {\r
-                       if (strWindowOption.length > strWithNavPane.length)\r
-                               gstrWindowOption = strWindowOption.substring(strWithNavPane.length + 1);\r
-                       else\r
-                               gstrWindowOption = "";\r
-                       gbWithNavPane = true;\r
-               }\r
-               else\r
-                       gstrWindowOption = strWindowOption;\r
-               return GetTopicNumberOnly(strHashString.substring(0, nTopicEndPos));            \r
-       }\r
-}\r
-\r
-function GetTopicNumberOnly(strTopicString)\r
-{\r
-       var nEqualPos = strTopicString.indexOf('=');\r
-       if (nEqualPos == -1) {\r
-               return GetTopicNumberAuto(strTopicString);\r
-       }\r
-       else {\r
-               var strValue=strTopicString.substring(nEqualPos + 1, strTopicString.length);\r
-               if (strTopicString.toLowerCase().indexOf("topicnumber") == 0) {\r
-                       return parseInt(strValue);\r
-               } else if (strTopicString.toLowerCase().indexOf("context") == 0) {\r
-                       return GetTopicNumberById(strValue);\r
-               } else if (strTopicString.toLowerCase().indexOf("remoteurl") == 0) {\r
-                       gstrURL = strValue;\r
-                       return -1;\r
-               }\r
-\r
-       }\r
-}\r
-\r
-//Find HomePage of the WebHelp system\r
-// we try to get the topic from remote project if it exists.\r
-function RedirectToHomePage()\r
-{\r
-       if (parent && parent != this && parent.goNext)\r
-       {\r
-               var sHome = parent.goNext();\r
-               if (sHome != "")\r
-                       RedirectTo(sHome);\r
-       }\r
-}\r
-\r
-function getHomePage()\r
-{\r
-       if (parent && parent != this && parent.getRelHomePage)\r
-       {\r
-               return parent.getRelHomePage(document.location.href);\r
-       }\r
-       return "";\r
-}\r
-\r
-function addRemoteProject(strPath)\r
-{\r
-       if (parent && parent != this && parent.addProject)\r
-       {\r
-               parent.addProject(strPath);\r
-       }\r
-}\r
-\r
-//Redirect page to...\r
-function RedirectTo(strUrl)\r
-{\r
-   if (gstrWindowOption.length != 0) {\r
-               var wnd = window.open(strUrl, "HelpStub", gstrWindowOption);\r
-               // close current window and rename the stub window to current window.\r
-               if (wnd)\r
-                       wnd.focus();\r
-               if (parent)\r
-                       parent.close();\r
-   }\r
-   else {\r
-       parent.document.location.href = strUrl;\r
-       window.focus();\r
-  }\r
-}\r
-\r
-//Prompt the user that we can not find...\r
-function FailToFind(strMsg)\r
-{\r
-    RedirectToHomePage();\r
-}\r
-\r
-//Find topic by topic number (defined in h file)\r
-function FindTopicByTopicNum(nTopicNum)\r
-{\r
-       var i = 0;\r
-       var iEnd = gArrayCsh.length;\r
-       for (i=0; i<iEnd; i++)\r
-       {\r
-               if (gArrayCsh[i].nTopicNum == nTopicNum)\r
-               {\r
-                       var strURL = gArrayCsh[i].strUrl;\r
-                       if (gbWithNavPane)\r
-                       {\r
-                               var strHomePage = getHomePage();\r
-                               if (strHomePage.length != 0)\r
-                                       strURL = strHomePage + strURL;\r
-                       }       \r
-                       RedirectTo(strURL);\r
-                       return true;\r
-               }\r
-       }\r
-       FailToFind("Fail to find topic assocaite with topic number: " + nTopicNum);\r
-       return false;\r
-}\r
-\r
-var oldPrefix = "HelpIdFromHTMLHelp_"\r
-//Find topic by topic id (alias id defined in ali file)\r
-function GetTopicNumberById(strTopicId)\r
-{\r
-   if (strTopicId.indexOf(oldPrefix) == 0)\r
-   {\r
-               strTopicId = strTopicId.substring(oldPrefix.length);\r
-   }\r
-\r
-   var i = 0;\r
-   var iEnd = gArrayCsh.length;\r
-   for (i=0; i<iEnd; i++)\r
-   {\r
-       if (gArrayCsh[i].strAliasId.toLowerCase() == strTopicId.toLowerCase())\r
-       {\r
-           return gArrayCsh[i].nTopicNum;\r
-        }\r
-   }\r
-   gstrURL = "";\r
-   return -1;\r
-}\r
-\r
-//Set Context-sensitive help entity...\r
-function SetCsh(n, strAliasId, nTopicNum, strUrl)\r
-{\r
-   gArrayCsh[n] = new CshEntityItem(strAliasId,nTopicNum,strUrl);\r
-}\r
-\r
-\r
-function getHash()\r
-{\r
-       if (parent && parent != this)\r
-               return parent.location.hash;\r
-       else\r
-               return "";\r
-}\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-\r
-\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-//Find CSH according to hash string after this page\r
-if (getHash().length > 0)\r
-{\r
-   // VH 05/16/00 now support \r
-   // TopicID=\r
-   // TopicNumber=\r
-   // RemoteURL=   \r
-   // and WindowsOptions\r
-   // with the format #a=xxx,b=xxx,c=xxx...\r
-   var strHashString = getHash().toString();\r
-   // change ? to : for remote URL. because java applet have some problem to pass a URL with two : inside the URL so we changed it. \r
-   // so here need to change it back.\r
-   strHashString = strHashString.substring(1,strHashString.length);\r
-   strHashString = strHashString.replace("%072%057%057", "://");\r
-   var nTopicNum = GetTopicNumber(strHashString);\r
-\r
-   if (nTopicNum != -1)\r
-   {\r
-      FindTopicByTopicNum(nTopicNum);\r
-   }\r
-   else\r
-   {\r
-      if (gstrURL.length > 0) \r
-       RedirectTo(gstrURL);\r
-      else\r
-       RedirectToHomePage();\r
-   }\r
-}\r
-else\r
-{\r
-   RedirectToHomePage();\r
-}\r
-//-->\r
-</script>\r
-<noscript>\r
- <p> Your browser does not support JavaScript. WebHelp Context-Sensitive Help requires JavaScript support to run.</p>\r
-</noscript>\r
-</body>\r
-</html>\r
-\r
-\r
-\r
-\r
-\r
-\r
diff --git a/doc/salome/gui/GUI/cshdat_webhelp.htm b/doc/salome/gui/GUI/cshdat_webhelp.htm
deleted file mode 100755 (executable)
index e0927b0..0000000
+++ /dev/null
@@ -1,251 +0,0 @@
-<html>\r
-<head>\r
-<title>GUI Module Reference Manual</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<body>\r
-<script language="JavaScript">\r
-<!--\r
-\r
-var gArrayCsh = new Array();\r
-\r
-var gstrWindowOption = "";\r
-var gstrURL = "";\r
-var gbWithNavPane = false;\r
-\r
-function CshEntityItem(strAliasId, nTopicNum, strUrl) \r
-{\r
-    this.strAliasId = strAliasId;\r
-    this.nTopicNum = nTopicNum;\r
-    this.strUrl = strUrl;\r
-}\r
-\r
-\r
-//Try to get to topic number from hash string\r
-function GetTopicNumberAuto(strMayBeNumber)\r
-{\r
-   var nNum = -1;\r
-   if (strMayBeNumber.length >= 1)\r
-   {\r
-               var strTmp = strMayBeNumber;\r
-               var iEnd = strTmp.length;\r
-               for (var i=0; i<iEnd; i++)\r
-               {\r
-                         var ch = strTmp.charAt(i);\r
-                         if (!((ch == "0") || (ch == "1") ||\r
-                               (ch == "2") || (ch == "3") ||\r
-                               (ch == "4") || (ch == "5") ||\r
-                               (ch == "6") || (ch == "7") ||\r
-                               (ch == "8") || (ch == "9")))\r
-                             return GetTopicNumberById(strTmp);\r
-               }\r
-               nNum = parseInt(strTmp);\r
-   }\r
-   return nNum;\r
-}\r
-\r
-function GetTopicNumber(strHashString)\r
-{\r
-       var nTopicEndPos = strHashString.indexOf(',')\r
-       if (nTopicEndPos == -1) { // no window option.\r
-               return GetTopicNumberOnly(strHashString);\r
-       }\r
-       else {\r
-               var strWindowOption = strHashString.substring(nTopicEndPos + 1, strHashString.length);\r
-               var strWithNavPane = 'withnavpane=true';\r
-               if (strWindowOption.toLowerCase().indexOf(strWithNavPane) == 0)\r
-               {\r
-                       if (strWindowOption.length > strWithNavPane.length)\r
-                               gstrWindowOption = strWindowOption.substring(strWithNavPane.length + 1);\r
-                       else\r
-                               gstrWindowOption = "";\r
-                       gbWithNavPane = true;\r
-               }\r
-               else\r
-                       gstrWindowOption = strWindowOption;\r
-               return GetTopicNumberOnly(strHashString.substring(0, nTopicEndPos));            \r
-       }\r
-}\r
-\r
-function GetTopicNumberOnly(strTopicString)\r
-{\r
-       var nEqualPos = strTopicString.indexOf('=');\r
-       if (nEqualPos == -1) {\r
-               return GetTopicNumberAuto(strTopicString);\r
-       }\r
-       else {\r
-               var strValue=strTopicString.substring(nEqualPos + 1, strTopicString.length);\r
-               if (strTopicString.toLowerCase().indexOf("topicnumber") == 0) {\r
-                       return parseInt(strValue);\r
-               } else if (strTopicString.toLowerCase().indexOf("topicid") == 0) {\r
-                       return GetTopicNumberById(strValue);\r
-               } else if (strTopicString.toLowerCase().indexOf("remoteurl") == 0) {\r
-                       gstrURL = strValue;\r
-                       return -1;\r
-               }\r
-\r
-       }\r
-}\r
-\r
-//Find HomePage of the WebHelp system\r
-// we try to get the topic from remote project if it exists.\r
-function RedirectToHomePage()\r
-{\r
-       if (parent && parent != this && parent.goNext)\r
-       {\r
-               var sHome = parent.goNext();\r
-               if (sHome != "")\r
-                       RedirectTo(sHome);\r
-       }\r
-}\r
-\r
-function getHomePage()\r
-{\r
-       if (parent && parent != this && parent.getRelHomePage)\r
-       {\r
-               return parent.getRelHomePage(document.location.href);\r
-       }\r
-       return "";\r
-}\r
-\r
-function addRemoteProject(strPath)\r
-{\r
-       if (parent && parent != this && parent.addProject)\r
-       {\r
-               parent.addProject(strPath);\r
-       }\r
-}\r
-\r
-//Redirect page to...\r
-function RedirectTo(strUrl)\r
-{\r
-   if (gstrWindowOption.length != 0) {\r
-               var wnd = window.open(strUrl, "HelpStub", gstrWindowOption);\r
-               // close current window and rename the stub window to current window.\r
-               wnd.focus();\r
-               if (parent)\r
-                       parent.close();\r
-   }\r
-   else {\r
-       parent.document.location.href = strUrl;\r
-       window.focus();\r
-  }\r
-}\r
-\r
-//Prompt the user that we can not find...\r
-function FailToFind(strMsg)\r
-{\r
-    RedirectToHomePage();\r
-}\r
-\r
-//Find topic by topic number (defined in h file)\r
-function FindTopicByTopicNum(nTopicNum)\r
-{\r
-       var i = 0;\r
-       var iEnd = gArrayCsh.length;\r
-       for (i=0; i<iEnd; i++)\r
-       {\r
-               if (gArrayCsh[i].nTopicNum == nTopicNum)\r
-               {\r
-                       var strURL = gArrayCsh[i].strUrl;\r
-                       if (gbWithNavPane)\r
-                       {\r
-                               var strHomePage = getHomePage();\r
-                               if (strHomePage.length != 0)\r
-                                       strURL = strHomePage + strURL;\r
-                       }       \r
-                       RedirectTo(strURL);\r
-                       return true;\r
-               }\r
-       }\r
-       FailToFind("Fail to find topic assocaite with topic number: " + nTopicNum);\r
-       return false;\r
-}\r
-\r
-//Find topic by topic id (alias id defined in ali file)\r
-function GetTopicNumberById(strTopicId)\r
-{\r
-   var i = 0;\r
-   var iEnd = gArrayCsh.length;\r
-   for (i=0; i<iEnd; i++)\r
-   {\r
-       if (gArrayCsh[i].strAliasId == strTopicId)\r
-       {\r
-           return gArrayCsh[i].nTopicNum;\r
-        }\r
-   }\r
-   gstrURL = "";\r
-   return -1;\r
-}\r
-\r
-//Set Context-sensitive help entity...\r
-function SetCsh(n, strAliasId, nTopicNum, strUrl)\r
-{\r
-   gArrayCsh[n] = new CshEntityItem(strAliasId,nTopicNum,strUrl);\r
-}\r
-\r
-\r
-function getHash()\r
-{\r
-       if (parent && parent != this)\r
-               return parent.location.hash;\r
-       else\r
-               return "";\r
-}\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-\r
-\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-//Find CSH according to hash string after this page\r
-if (getHash().length > 0)\r
-{\r
-   // VH 05/16/00 now support \r
-   // TopicID=\r
-   // TopicNumber=\r
-   // RemoteURL=   \r
-   // and WindowsOptions\r
-   // with the format #a=xxx,b=xxx,c=xxx...\r
-   var strHashString = getHash().toString();\r
-   // change ? to : for remote URL. because java applet have some problem to pass a URL with two : inside the URL so we changed it. \r
-   // so here need to change it back.\r
-   strHashString = strHashString.substring(1,strHashString.length);\r
-   strHashString = strHashString.replace("%072%057%057", "://");\r
-   var nTopicNum = GetTopicNumber(strHashString);\r
-\r
-   if (nTopicNum != -1)\r
-   {\r
-      FindTopicByTopicNum(nTopicNum);\r
-   }\r
-   else\r
-   {\r
-      if (gstrURL.length > 0) \r
-       RedirectTo(gstrURL);\r
-      else\r
-       RedirectToHomePage();\r
-   }\r
-}\r
-else\r
-{\r
-   RedirectToHomePage();\r
-}\r
-//-->\r
-</script>\r
-<noscript>\r
- <p> Your browser does not support JavaScript. WebHelp Context-Sensitive Help requires JavaScript support to run.</p>\r
-</noscript>\r
-</body>\r
-</html>\r
-\r
-\r
-\r
-\r
-\r
-\r
diff --git a/doc/salome/gui/GUI/default.css b/doc/salome/gui/GUI/default.css
deleted file mode 100755 (executable)
index de2e5d9..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-BODY { \r
-      background-color:#ffffff; \r
-      font-family:"Times New Roman" , serif;  }\r
-H1 { \r
-    font-weight:bold; \r
-    font-size:24.0pt;  }\r
-LI.kadov-H1 { \r
-             font-weight:bold; \r
-             font-size:24.0pt;  }\r
-H2 { \r
-    font-weight:bold; \r
-    font-size:18.0pt;  }\r
-LI.kadov-H2 { \r
-             font-weight:bold; \r
-             font-size:18.0pt;  }\r
-H3 { \r
-    font-weight:bold; \r
-    font-size:14.0pt;  }\r
-LI.kadov-H3 { \r
-             font-weight:bold; \r
-             font-size:14.0pt;  }\r
-H4 { \r
-    font-weight:bold; \r
-    font-size:12.0pt;  }\r
-LI.kadov-H4 { \r
-             font-weight:bold; \r
-             font-size:12.0pt;  }\r
-H5 { \r
-    font-weight:bold; \r
-    font-size:10.0pt;  }\r
-LI.kadov-H5 { \r
-             font-weight:bold; \r
-             font-size:10.0pt;  }\r
-H6 { \r
-    font-weight:bold; \r
-    font-size:8.0pt;  }\r
-LI.kadov-H6 { \r
-             font-weight:bold; \r
-             font-size:8.0pt;  }\r
-P { \r
-   font-size:12.0pt; \r
-   margin-top:0pt; \r
-   margin-bottom:0pt;  }\r
-LI.kadov-P { \r
-            font-size:12.0pt;  }\r
-A.expandspot { \r
-              color:#008000; \r
-              cursor:hand; \r
-              font-style:italic; \r
-              x-text-underline:off; \r
-              x-text-overline:off; \r
-              x-text-line-through:off; \r
-              text-decoration:none none none;  }\r
-SPAN.expandtext { \r
-                 font-style:italic; \r
-                 font-weight:normal; \r
-                 color:#ff0000;  }\r
-A.dropspot { \r
-            cursor:hand; \r
-            color:#008000; \r
-            font-style:italic; \r
-            x-text-underline:off; \r
-            x-text-overline:off; \r
-            x-text-line-through:off; \r
-            text-decoration:none none none;  }\r
-A.glossterm { \r
-             color:#800000; \r
-             cursor:hand; \r
-             font-style:italic; \r
-             x-text-underline:off; \r
-             x-text-overline:off; \r
-             x-text-line-through:off; \r
-             text-decoration:none none none;  }\r
-SPAN.glosstext { \r
-                font-style:italic; \r
-                font-weight:normal; \r
-                color:#0000ff;  }\r
-OL { \r
-    margin-top:0px; \r
-    margin-bottom:0px;  }\r
-UL { \r
-    margin-top:0px; \r
-    margin-bottom:0px;  }\r
-A:active {  }\r
-A:hover { \r
-         x-text-underline:Off; \r
-         text-decoration:none;  }\r
-A:link { \r
-        x-text-underline:Off; \r
-        text-decoration:none;  }\r
-A:visited { \r
-           x-text-underline:Off; \r
-           text-decoration:none;  }\r
-P.TODO { \r
-        font-weight:normal; \r
-        font-style:italic; \r
-        font-family:"Arial Black" , sans-serif;  }\r
-LI.kadov-P-CTODO { \r
-                  font-weight:normal; \r
-                  font-style:italic; \r
-                  font-family:"Arial Black" , sans-serif;  }\r
diff --git a/doc/salome/gui/GUI/default_ns.css b/doc/salome/gui/GUI/default_ns.css
deleted file mode 100755 (executable)
index 3eeb3c4..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-BODY { \r
-      background-color:#ffffff; \r
-      font-family:"Times New Roman"  , serif;  }\r
-H1 { \r
-    font-weight:bold; \r
-    font-size:24.0pt; \r
-    font-family:"Times New Roman"  , serif;  }\r
-LI.kadov-H1 { \r
-             font-weight:bold; \r
-             font-size:24.0pt;  }\r
-H2 { \r
-    font-weight:bold; \r
-    font-size:18.0pt; \r
-    font-family:"Times New Roman"  , serif;  }\r
-LI.kadov-H2 { \r
-             font-weight:bold; \r
-             font-size:18.0pt;  }\r
-H3 { \r
-    font-weight:bold; \r
-    font-size:14.0pt; \r
-    font-family:"Times New Roman"  , serif;  }\r
-LI.kadov-H3 { \r
-             font-weight:bold; \r
-             font-size:14.0pt;  }\r
-H4 { \r
-    font-weight:bold; \r
-    font-size:12.0pt; \r
-    font-family:"Times New Roman"  , serif;  }\r
-LI.kadov-H4 { \r
-             font-weight:bold; \r
-             font-size:12.0pt;  }\r
-H5 { \r
-    font-weight:bold; \r
-    font-size:10.0pt; \r
-    font-family:"Times New Roman"  , serif;  }\r
-LI.kadov-H5 { \r
-             font-weight:bold; \r
-             font-size:10.0pt;  }\r
-H6 { \r
-    font-weight:bold; \r
-    font-size:8.0pt; \r
-    font-family:"Times New Roman"  , serif;  }\r
-LI.kadov-H6 { \r
-             font-weight:bold; \r
-             font-size:8.0pt;  }\r
-P { \r
-   font-size:12.0pt; \r
-   margin-top:1pt; \r
-   margin-bottom:1pt; \r
-   font-family:"Times New Roman"  , serif;  }\r
-LI.kadov-P { \r
-            font-size:12.0pt;  }\r
-A.expandspot { \r
-              color:#008000; \r
-              cursor:hand; \r
-              font-style:italic; \r
-              x-text-underline:off; \r
-              x-text-overline:off; \r
-              x-text-line-through:off; \r
-              text-decoration:none none none;  }\r
-SPAN.expandtext { \r
-                 font-style:italic; \r
-                 font-weight:normal; \r
-                 color:#ff0000;  }\r
-A.dropspot { \r
-            cursor:hand; \r
-            color:#008000; \r
-            font-style:italic; \r
-            x-text-underline:off; \r
-            x-text-overline:off; \r
-            x-text-line-through:off; \r
-            text-decoration:none none none;  }\r
-A.glossterm { \r
-             color:#800000; \r
-             cursor:hand; \r
-             font-style:italic; \r
-             x-text-underline:off; \r
-             x-text-overline:off; \r
-             x-text-line-through:off; \r
-             text-decoration:none none none;  }\r
-SPAN.glosstext { \r
-                font-style:italic; \r
-                font-weight:normal; \r
-                color:#0000ff;  }\r
-OL { \r
-    margin-top:0px; \r
-    margin-bottom:0px; \r
-    font-family:"Times New Roman"  , serif;  }\r
-UL { \r
-    margin-top:0px; \r
-    margin-bottom:0px; \r
-    font-family:"Times New Roman"  , serif;  }\r
-A:active {  }\r
-A:hover { \r
-         x-text-underline:Off; \r
-         text-decoration:none;  }\r
-A:link { \r
-        x-text-underline:Off; \r
-        text-decoration:none;  }\r
-A:visited { \r
-           x-text-underline:Off; \r
-           text-decoration:none;  }\r
-P.TODO { \r
-        font-weight:normal; \r
-        font-style:italic; \r
-        font-family:"Arial Black"  , sans-serif;  }\r
-LI.kadov-P-CTODO { \r
-                  font-weight:normal; \r
-                  font-style:italic; \r
-                  font-family:"Arial Black"  , sans-serif;  }\r
-ol ol { \r
-       margin-top:1px;  }\r
-ol ul { \r
-       margin-top:1px;  }\r
-ul ul { \r
-       margin-top:1px;  }\r
-ul ol { \r
-       margin-top:1px;  }\r
diff --git a/doc/salome/gui/GUI/doxyfile.in b/doc/salome/gui/GUI/doxyfile.in
new file mode 100755 (executable)
index 0000000..dfb7f36
--- /dev/null
@@ -0,0 +1,44 @@
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+PROJECT_NAME      = "GUI Module Reference Manual v.@VERSION@"
+OUTPUT_DIRECTORY  = ./
+CREATE_SUBDIRS   = NO
+OUTPUT_LANGUAGE   = English
+TAB_SIZE          = 5
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+QUIET             = NO
+WARNINGS          = YES
+
+#---------------------------------------------------------------------------
+#Input related options
+#---------------------------------------------------------------------------
+INPUT             = @srcdir@/input               
+FILE_PATTERNS     = *.doc
+IMAGE_PATH        = @srcdir@/images
+
+#---------------------------------------------------------------------------
+#HTML related options
+#---------------------------------------------------------------------------
+GENERATE_HTML     = YES
+HTML_OUTPUT       = ./
+HTML_HEADER       = @srcdir@/static/header.html
+HTML_FOOTER       = @srcdir@/static/footer.html
+#HTML_STYLESHEET  = @srcdir@/static/doxygen.css
+TOC_EXPAND        = YES
+DISABLE_INDEX     = NO
+GENERATE_TREEVIEW = YES
+TREEVIEW_WIDTH    = 300
+
+#---------------------------------------------------------------------------
+#LaTeX related option
+#---------------------------------------------------------------------------
+GENERATE_LATEX    = NO
+
+#---------------------------------------------------------------------------
+#RTF related options
+#---------------------------------------------------------------------------
+GENERATE_RTF      = NO
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/dump_study.htm b/doc/salome/gui/GUI/dump_study.htm
deleted file mode 100755 (executable)
index 660565d..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<head>\r
-<title>Dump Study</title>\r
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<link rel="stylesheet" href="default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{   document.write("<link rel='stylesheet' href='default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-p.whs1 { font-weight:bold; margin-left:40px; }\r
-img_whs2 { border:none; width:461px; height:270px; float:none; border-style:none; }\r
-ul.whs3 { list-style:disc; }\r
-p.whs4 { margin-left:48px; }\r
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:40px; }\r
-p.whs6 { margin-left:0px; }\r
-p.whs7 { margin-left:40px; }\r
--->\r
-</style><script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
-  var strNSS = "<style type='text/css'>";\r
-  strNSS += "p.whs6 {margin-left:1pt; }";\r
-  strNSS +="</style>";\r
-  document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
-  if (innerWidth != origWidth || innerHeight != origHeight)\r
-     location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
-       origWidth = innerWidth;\r
-       origHeight = innerHeight;\r
-       onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }\r
-p.WebHelpNavBar { text-align:right; }\r
--->\r
-</style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
-       if (window.setRelStartPage)\r
-       {\r
-       addTocInfo("GUI module\nStudy management\nWorking with Python Scripts");\r
-addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");\r
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");\r
-\r
-       }\r
-\r
-\r
-       if (window.setRelStartPage)\r
-       {\r
-       setRelStartPage("index.htm");\r
-\r
-               autoSync(1);\r
-               sendSyncInfo();\r
-               sendAveInfoOut();\r
-       }\r
-\r
-}\r
-else\r
-       if (window.gbIE4)\r
-               document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(4);\r
-//-->\r
-</script>\r
-<h1>Working with Python Scripts</h1>\r
-\r
-<p><span style="font-weight: bold;"><B>SALOME </B></span>Platform can be launched \r
- in the batch mode, without Graphical User Interface, and operated with \r
- the use of Python scripts, which can fulfill most of the necessary tasks, \r
- however, the process of scripting is quite time consuming and rather error-prone. \r
- </p>\r
-\r
-<p>This problem has been resolved by the possibility to automatically generate \r
- a set of Python scripts from data created with SALOME GUI, which greatly \r
- increases the productivity of using SALOME platform in the batch mode. \r
- This mechanism can convert a SALOMEDS Study in one or several Python scripts, \r
- which can be stored and imported later to re-create the content of the \r
- original study. The first script is a SALOMEDS document, which re-creates \r
- the SALOMEDS Study, adds the stored Salome components to the SALOMEDS \r
- and automatically calls Python scripts of the second type containing component \r
- specific Python function calls. This architecture gives great flexibility \r
- in manual modification of the generated scripts because you can modify \r
- only one of the component specific Python scripts without touching others, \r
- thus avoiding expert knowledge of Python API of unused components. </p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p>To Dump a &nbsp;SALOME \r
- Study in one or several scripts, in the main menu select <span style="font-weight: bold;"><B>File</B></span> \r
- --&gt; <span style="font-weight: bold;"><B>Dump study</B></span></p>\r
-\r
-<p>The following dialog box allowing to browse for the location and define \r
- the name for a Python file will appear: </p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p class="whs1"><img src="pics/dumpstudy.png" x-maintain-ratio="TRUE" width="461px" height="270px" border="0" class="img_whs2"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs4"><span style="font-weight: bold;"><B>Publish \r
- in study - </B></span>if checked in, the component objects created by Python \r
- commands will be published in the created Study when the script is played, \r
- otherwise the objects will not be published in the Study.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4"><span style="font-weight: bold;"><B>Save \r
- GUI state</B></span> - if checked in, the current application layout will \r
- be saved in the Python file. &nbsp;</p></li>\r
-</ul>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p class="whs5">To \r
- confirm your choice click <span style="font-weight: bold;"><B>Save</B></span>.</p>\r
-\r
-<p class="whs5">&nbsp;</p>\r
-\r
-<p class="whs6">Reversibly it is possible to load a saved \r
- Python Script selecting in the main menu <span style="font-weight: bold;"><B>File</B></span> \r
- -&gt; <span style="font-weight: bold;"><B>Load Script</B></span>. </p>\r
-\r
-<p class="whs6">&nbsp;</p>\r
-\r
-<p class="whs7"><img src="pics/loadscript.png" x-maintain-ratio="TRUE" width="461px" height="270px" border="0" class="img_whs2"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p class="whs5">To \r
- confirm your choice click <span style="font-weight: bold;"><B>Open.</B></span></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/ehelp.xml b/doc/salome/gui/GUI/ehelp.xml
deleted file mode 100755 (executable)
index 9884c42..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0"?>\r
-<!DOCTYPE SYSTEM "ehelpopt.dtd">\r
-<FILE-OPTIONS FILE-VERSION="2" FILE-KEY="28977072_6eb4_11d8_af12_000102ad571a">\r
-</FILE-OPTIONS>\r
-<EHELP-OPTIONS FORMAT-VERSION="1.0">\r
- <OPTIONS ENABLED="NO" EMBEDDED="YES" MAIN-WINDOW-ONLY="NO" COMMUNITY-NOTIFY="NO" FIRST-PAGE="NOT-SET">\r
- </OPTIONS>\r
- <BUTTON-LABEL>WebSearch\r
- </BUTTON-LABEL>\r
-</EHELP-OPTIONS>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/ehlpdhtm.js b/doc/salome/gui/GUI/ehlpdhtm.js
deleted file mode 100755 (executable)
index 6cfd2e4..0000000
+++ /dev/null
@@ -1,4239 +0,0 @@
-// eHelp® Corporation Dynamic HTML JavaScript \r
-// Copyright© 1998-2003 eHelp® Corporation.All rights reserved.\r
-// Version=4.82\r
-\r
-// Warning:Do not modify this file.It is generated by RoboHELP® and changes will be overwritten.\r
-\r
-//// Segment Begin -- (JavaScript 1.0)\r
-\r
-/// Section Begin - General and relative topics(JavaScript 1.0)\r
-\r
-//{{HH_SYMBOL_SECTION\r
-var HH_ChmFilename = "";\r
-var HH_WindowName = "";\r
-var HH_GlossaryFont = "";\r
-var HH_Glossary = "";\r
-var HH_Avenue = "";\r
-var HH_ActiveX = false;\r
-//}}HH_SYMBOL_SECTION\r
-\r
-//Begin to support previous generic parameters\r
-//Get the information about the browser.\r
-var gstrBsAgent        = navigator.userAgent.toLowerCase();\r
-var gnBsVer                    = parseInt(navigator.appVersion);\r
-\r
-var gbBsOpera          = (gstrBsAgent.indexOf('opera') != -1);\r
-var gbBsKonqueror      = (gstrBsAgent.indexOf('konqueror') != -1);\r
-var gbBsSafari         = (gstrBsAgent.indexOf('safari') != -1);\r
-var gbBsIE             = (gstrBsAgent.indexOf('msie') != -1) && !gbBsOpera && !gbBsKonqueror && !gbBsSafari;\r
-var gbBsNS             = (gstrBsAgent.indexOf('mozilla') != -1) && ((gstrBsAgent.indexOf('spoofer') == -1) && (gstrBsAgent.indexOf('compatible') == -1)) && !gbBsOpera && !gbBsKonqueror && !gbBsSafari;\r
-\r
-var gbBsMac                    = (gstrBsAgent.indexOf('mac') != -1);\r
-var gbBsWindows                = ((gstrBsAgent.indexOf('win') != -1) || (gstrBsAgent.indexOf('16bit') != -1));\r
-var gbBsSunOS          = (gstrBsAgent.indexOf("sunos") != -1);\r
-\r
-var gbBsIE3Before      = ((gbBsIE) && (gnBsVer <= 2));\r
-var gbBsNS3Before      = ((gbBsNS) && (gnBsVer <= 3));\r
-\r
-var gbBsNS2                    = ((gbBsNS) && (gnBsVer <= 2));\r
-var gbBsNS3                    = ((gbBsNS) && (gnBsVer == 3));\r
-var gbBsIE300301       = ((gbBsIE) && (gnBsVer == 2) && ((gstrBsAgent.indexOf("3.00") != -1)||(gstrBsAgent.indexOf("3.0a") != -1)||(gstrBsAgent.indexOf("3.0b")!=-1)||(gstrBsAgent.indexOf("3.01")!=-1)));\r
-var gbBsIE302          = ((gbBsIE) && (gnBsVer == 2) && (gstrBsAgent.indexOf("3.02") != -1));\r
-\r
-var gbBsNS4                    = ((gbBsNS) && (gnBsVer >= 4));\r
-var gbBsNS6                    = ((gbBsNS) && (gnBsVer >= 5));\r
-var    gbBsNS7                 = false;\r
-\r
-var gbBsIE4                    = ((gbBsIE) && (gnBsVer >= 4));\r
-var gbBsIE5                    = false;\r
-var gbBsIE55           = false;\r
-\r
-var gbBsOpera6         = false;\r
-var gbBsOpera7         = false;\r
-\r
-var gbBsKonqueror3     = false;\r
-\r
-\r
-\r
-gbBsIE = (navigator.appName.indexOf("Microsoft") != -1) && !gbBsOpera && !gbBsKonqueror && !gbBsSafari;;\r
-if (gbBsIE)\r
-{\r
-       if (parseInt(navigator.appVersion) >= 4) {\r
-               gbBsIE4 = true;\r
-               if (gbBsIE4) {\r
-                       var nPos = gstrBsAgent.indexOf("msie");\r
-                       var strIEversion = gstrBsAgent.substring(nPos + 5);\r
-                       var nVersion =  parseFloat(strIEversion);\r
-                       if (nVersion >= 5)\r
-                               gbBsIE5 = true;\r
-                       if (nVersion >= 5.5)\r
-                               gbBsIE55 = true;\r
-               }\r
-       }\r
-}\r
-if (gbBsNS6)\r
-{\r
-       var nPos=gstrBsAgent.indexOf("gecko");\r
-       if(nPos!=-1)\r
-       {\r
-               var nPos2=gstrBsAgent.indexOf("/", nPos);\r
-               if(nPos2!=-1)\r
-               {\r
-                       var nVersion=parseFloat(gstrBsAgent.substring(nPos2+1));\r
-                       if (nVersion>=20020823)\r
-                               gbBsNS7=true;\r
-               }\r
-       }       \r
-}\r
-if (gbBsOpera)\r
-{\r
-       var nPos = gstrBsAgent.indexOf("opera");\r
-       if(nPos!=-1)\r
-       {\r
-               var nVersion = parseFloat(gstrBsAgent.substring(nPos+6));\r
-               if (nVersion >= 6)\r
-               {\r
-                       gbBsOpera6=true;\r
-                       if (nVersion >=7)\r
-                               gbBsOpera7=true;        \r
-               }\r
-       }\r
-}\r
-if (gbBsKonqueror)\r
-{\r
-       var nPos = gstrBsAgent.indexOf("konqueror");\r
-       if(nPos!=-1)\r
-       {\r
-               var nVersion = parseFloat(gstrBsAgent.substring(nPos+10));\r
-               if (nVersion >= 3)\r
-               {\r
-                       gbBsKonqueror3=true;\r
-               }\r
-       }\r
-}\r
-\r
-function insertAdjacentHTML(obj, where, htmlStr)\r
-{\r
-       if (gbBsIE || gbBsOpera7)\r
-       {\r
-               obj.insertAdjacentHTML(where, htmlStr);\r
-       }\r
-       else if (gbBsNS6 || gbBsSafari)\r
-       {\r
-               var r = obj.ownerDocument.createRange();\r
-               r.setStartBefore(obj);\r
-               var     parsedHTML = r.createContextualFragment(htmlStr);\r
-               \r
-               switch (where){\r
-               case 'beforeBegin':\r
-                       obj.parentNode.insertBefore(parsedHTML,obj);\r
-                       break;\r
-               case 'afterBegin':\r
-                       obj.insertBefore(parsedHTML,obj.firstChild);\r
-                       break;\r
-               case 'beforeEnd':\r
-                       obj.appendChild(parsedHTML);\r
-                       break;\r
-               case 'afterEnd':\r
-                       if (obj.nextSibling){\r
-                       obj.parentNode.insertBefore(parsedHTML,obj.nextSibling);\r
-                       } else {\r
-                       obj.parentNode.appendChild(parsedHTML);\r
-                       }\r
-                       break;\r
-               }\r
-       }\r
-}\r
-\r
-// Utilities functions.\r
-function BsscHasExtJs()\r
-{\r
-       if( gbBsIE3Before || gbBsNS3Before)\r
-               return false;\r
-       return true;\r
-}\r
-\r
-// Register event handler\r
-var gBsOnLoads                         = new Array();  // An array holds all the onload event handler.\r
-var gBsOnClicks                = new Array();  // An array holds all the onClick event handler.\r
-var gBsOnUnLoads               = new Array();  // An array holds all the OnUnLoad event handler.\r
-var gBsOnMouseOvers    = new Array();  // An array holds all the OnMouseOver event handler.\r
-var gBsOnMouseOuts             = new Array();  // An array holds all the OnMouseOut event handler.\r
-\r
-var gbOrignalOnMouseDown = null;\r
-\r
-function BsscRegisterOnLoad(funcHandler)\r
-{\r
-       var nLength = gBsOnLoads.length;\r
-       gBsOnLoads[nLength] = funcHandler;\r
-}\r
-\r
-function BsscRegisterOnClick(funcHandler)\r
-{\r
-       var nLength = gBsOnClicks.length;\r
-       gBsOnClicks[nLength] = funcHandler;\r
-}\r
-\r
-function BsscRegisterOnUnLoad(funcHandler)\r
-{\r
-       var nLength = gBsOnUnLoads.length;\r
-       gBsOnUnLoads[nLength] = funcHandler;\r
-}\r
-\r
-function BsscRegisterOnMouseOver(funcHandler)\r
-{\r
-       var nLength = gBsOnMouseOvers.length;\r
-       gBsOnMouseOvers[nLength] = funcHandler;\r
-}\r
-\r
-function BsscRegisterOnMouseOut(funcHandler)\r
-{\r
-       var nLength = gBsOnMouseOuts.length;\r
-       gBsOnMouseOuts[nLength] = funcHandler;\r
-}\r
-\r
-function BsGeneralOnLoad()\r
-{\r
-       if (!gbBsIE4 && !gbBsNS4)\r
-               return;\r
-\r
-       // Make everything visible in navigator\r
-       if (gbBsNS4 && !gbBsNS6) {\r
-               // Make some special effects items visible\r
-               for (var iLayer = 0; iLayer < document.layers.length; iLayer++) {\r
-                       document.layers[iLayer].visibility = "show";\r
-                       document.layers[iLayer].left = 0;\r
-               }\r
-       }\r
-}\r
-\r
-// If resize the netscape browser, need to reload it.\r
-function BsReDo()\r
-{\r
-  if (innerWidth != origWidth || innerHeight != origHeight)\r
-     location.reload();\r
-}\r
-// End of the local functions.\r
-\r
-// The following functions are used by the html files.\r
-function BSSCOnLoad()\r
-{\r
-       if( !BsscHasExtJs() )\r
-               return;\r
-       for (var nElement = gBsOnLoads.length - 1; nElement >= 0; nElement--)\r
-               gBsOnLoads[nElement]();\r
-}\r
-\r
-function BSSCOnClick()\r
-{\r
-       if (!BsscHasExtJs()) return;\r
-               \r
-       for (var nElement = gBsOnClicks.length - 1; nElement >= 0; nElement--)\r
-               gBsOnClicks[nElement]();\r
-}\r
-\r
-function BSSCOnUnload()\r
-{\r
-       if (!BsscHasExtJs()) return;\r
-       for (var nElement = gBsOnUnLoads.length - 1; nElement >= 0; nElement--)\r
-               gBsOnUnLoads[nElement]();\r
-}\r
-\r
-function BSSCOnMouseOver()\r
-{\r
-       if (!BsscHasExtJs()) return;\r
-       for (var nElement = gBsOnMouseOvers.length - 1; nElement >= 0; nElement--)\r
-               gBsOnMouseOvers[nElement]();\r
-}\r
-\r
-function BSSCOnMouseOut()\r
-{\r
-       if (!BsscHasExtJs()) return;\r
-       for (var nElement = gBsOnMouseOuts.length - 1; nElement >= 0; nElement--)\r
-       {\r
-               gBsOnMouseOuts[nElement]();\r
-       }\r
-}\r
-// End of invocation of the event handle functions.\r
-\r
-// Add the GereralOnLoad to the onload array.\r
-if (typeof(BsscRegisterOnLoad) != "undefined")\r
-{\r
-       BsscRegisterOnLoad(BsGeneralOnLoad);\r
-}\r
-if (gbBsNS4&&!gbBsNS6) {\r
-       origWidth = innerWidth;\r
-       origHeight = innerHeight;\r
-       onresize = BsReDo;\r
-}\r
-//End to support previous generic parameters\r
-\r
-//Begin to support previous HHActiveX invoking\r
-function BsHHActivateComponents()\r
-{\r
-       if( HH_ActiveX && (HH_ChmFilename != "") && ((self == top) || (self == top.frames[0])))\r
-       {\r
-               var objBody = getElementsByTag(document,"BODY")[0];\r
-               if( typeof(objBody) == "object" )\r
-               {\r
-                       insertAdjacentHTML(objBody, "beforeEnd", '<OBJECT ID="HHComponentActivator" CLASSID="CLSID:399CB6C4-7312-11D2-B4D9-00105A0422DF" width=0 height=0></OBJECT>');\r
-                       if (HHComponentActivator.object)\r
-                               HHComponentActivator.Activate(HH_ChmFilename, HH_WindowName, HH_GlossaryFont, HH_Glossary, HH_Avenue);\r
-               }\r
-       }\r
-}\r
-\r
-function BsHHActivXOnLoad()\r
-{      \r
-       if( gbBsIE4 )\r
-               BsHHActivateComponents(); \r
-}\r
-\r
-if( typeof(BsscRegisterOnLoad) != "undefined" )\r
-{\r
-       BsscRegisterOnLoad(BsHHActivXOnLoad);\r
-}\r
-//End to support previous HHActiveX invoking\r
-\r
-//Begin to support previous relative topics\r
-//If webHelp needs Related Topics DHTMLcode, it's supposed to add it here\r
-var gbPopupMenuTimeoutExpired = false;\r
-var gbInPopupMenu = false;\r
-var gbPopupMenuTopicList = null;\r
-var gOlddocumentClick = null;\r
-\r
-//////////////////////////////////////////////////////////////////////////////////////////\r
-//\r
-// Popup Menu code\r
-//\r
-//////////////////////////////////////////////////////////////////////////////////////////\r
-\r
-var g_bIsPopupMenuInit = false;\r
-function _WritePopupMenuLayer()\r
-{\r
-       if (!g_bIsPopupMenuInit)\r
-        {\r
-         if (gbBsNS4&&!gbBsNS6) {\r
-//Do not try to write ininle styles for NS!  NS can not handle it and will not stop downloading the html page...\r
-               document.write("<DIV CLASS='WebHelpPopupMenu' ID='PopupMenu'></DIV>");\r
-         } else{\r
-         document.write("<DIV ID='PopupMenu' STYLE='position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;'></DIV>");\r
-         if (!(gbBsNS4&&!gbBsNS6)) {\r
-               document.write("<STYLE TYPE='text/css'>");\r
-               if (gbBsMac&&gbBsIE4) {\r
-                       document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:10pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
-                       document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:10pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
-               } else {\r
-                       document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:8pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
-                       document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:8pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
-               }\r
-               document.write("</STYLE>");\r
-          }\r
-          }\r
-         g_bIsPopupMenuInit = true;\r
-       }\r
-}\r
-\r
-//Seek for the bsscright frame \r
-function _SeekFrameByName( cRoot, strName )\r
-{\r
-       if( cRoot == null )     return null;\r
-       if( cRoot.frames == null )      return null;\r
-       if( cRoot.frames[strName] != null )     return cRoot.frames[strName];\r
-       for (var i=0; i<cRoot.frames.length; i++)\r
-       {\r
-               var cObj = null;\r
-               if (!gbBsNS6) \r
-                       cObj = _SeekFrameByName( cRoot.frames(i).document, strName );\r
-               else\r
-                       cObj = _SeekFrameByName( cRoot.frames[i], strName );\r
-               if( cObj != null )              return cObj;\r
-       };\r
-       return null;\r
-}\r
-function _GetFrameByName( cRoot, strName )\r
-{\r
-       if( cRoot == null )     return null;\r
-       var cRet = _SeekFrameByName(cRoot, strName);\r
-       if( cRet != null )      return cRet;\r
-       if (cRoot.parent != cRoot)\r
-               return _GetFrameByName( cRoot.parent, strName );\r
-       else\r
-               return null;\r
-}\r
-\r
-var gfn_arguments = null;\r
-function _PopupMenu_Invoke(fn_arguments)\r
-{\r
-       gfn_arguments = fn_arguments;\r
-       if (gbBsOpera6&&gbBsMac)\r
-       {\r
-               var wndOldPopupLinks= window.open(document.location.href, "popuplinks");\r
-               wndOldPopupLinks.close();\r
-               setTimeout("_PopupMenu_Invoke_2();",100);\r
-       }\r
-       else\r
-       {\r
-               _PopupMenu_Invoke_2();\r
-       }\r
-}\r
-\r
-function _PopupMenu_Invoke_2()\r
-{\r
-       var fn_arguments = gfn_arguments;\r
-       gfn_arguments = null;\r
-       \r
-       // Make sure we have reasonable arguments\r
-       var argLen = fn_arguments.length;\r
-       if (argLen < 3) {\r
-               return false;\r
-       }\r
-\r
-       // Check to see if we only have one target\r
-       var strTarget = "";\r
-       var targetDoc = null;\r
-       if (fn_arguments[1] == '') {\r
-               if (BSSCPopup_IsPopup()) {\r
-                       targetDoc = parent;\r
-                       strTarget = "TARGET= _parent";\r
-               }\r
-               else\r
-                       targetDoc = window.document;\r
-       } else {\r
-               targetDoc = _GetFrameByName( parent, fn_arguments[1] );\r
-\r
-               strTarget = "TARGET='" + fn_arguments[1] + "'";\r
-       }\r
-\r
-       if ((!gbBsIE4 && !gbBsNS4 && !gbBsOpera7 && !gbBsKonqueror3 &&!gbBsSafari) || ((gbBsMac) && (gbBsIE4) && (window.event.srcElement.tagName == "AREA"))) {\r
-       \r
-               var argLen      = fn_arguments.length;\r
-\r
-               // Create the window that the hyperlinks will go into\r
-               var nHeight = argLen * 15;\r
-               var nWidth = 400;\r
-               var strParam = "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=auto";\r
-               strParam += ",height=" + nHeight + ",width=200";\r
-               strParam += ",resizable";\r
-\r
-               var wndTemp=null;\r
-               // Create a temporary window first to ensure the real popup comes up on top\r
-               if (!gbBsOpera)\r
-                       wndTemp = window.open("", "temp", strParam);\r
-\r
-               // Create the real popup window\r
-               var wndPopupLinks=null;\r
-               if (gbBsOpera&&gbBsMac)\r
-               {\r
-                       wndTemp = window.open(document.location.href, "temp", strParam);\r
-                       wndPopupLinks= window.open(document.location.href, "popuplinks", strParam);\r
-               }\r
-               else\r
-                       wndPopupLinks= window.open("", "popuplinks", strParam);\r
-               wndPopupLinks.document.open("text/html");\r
-\r
-               // Close the temporary\r
-               if (wndTemp)\r
-                       wndTemp.close();\r
-\r
-               var sHTML="<html><head></head>";\r
-               sHTML+="<body onBlur=\'self.focus();\'>";\r
-               var strParaLine = "";\r
-               for (var i = 0; i < (argLen - 2) / 2; i++) {\r
-                       strParaLine = "";\r
-                       strParaLine += "<a href=\"javascript:";\r
-                       if (gbBsIE) {\r
-                               strParaLine += "onBlur=null; ";\r
-                       }\r
-                       strParaLine += "opener.location=\'";\r
-                       strParaLine += fn_arguments[2 * i + 3];\r
-                       strParaLine += "\';close();\"";\r
-                       strParaLine += strTarget;\r
-\r
-                       strParaLine += ">";\r
-                       strParaLine += fn_arguments[2 * i + 2];\r
-                       strParaLine += "</a>";\r
-                       strParaLine += "<br>";\r
-                       sHTML+=strParaLine;\r
-               }\r
-               sHTML+="</body></html>";\r
-               wndPopupLinks.document.write(sHTML);\r
-               wndPopupLinks.document.close();\r
-               window.gbInPopupMenu = true;\r
-               if (!gbBsIE) {\r
-                       wndPopupLinks.focus();\r
-               }\r
-               return false;\r
-       }\r
-\r
-       if (((argLen < 5) && ((isNaN(fn_arguments[2])) || (gbPopupMenuTopicList == null))) ||\r
-               ((argLen < 4) && ((!isNaN(fn_arguments[2])) && (gbPopupMenuTopicList != null)))) {\r
-               // Get the place that we will be putting the topic into\r
-               var strURL = "";\r
-               if (isNaN(fn_arguments[2]) ||  (gbPopupMenuTopicList == null)) {\r
-                       strURL = fn_arguments[3];\r
-               }\r
-               else    {\r
-                       strURL = gbPopupMenuTopicList[fn_arguments[2]].strURL;\r
-               }\r
-\r
-               if (targetDoc != null) {\r
-                       targetDoc.location.href = strURL;\r
-               }\r
-               else {\r
-                       if (fn_arguments[1] != null && typeof(fn_arguments[1]) != "undefined")\r
-                               window.open(strURL, fn_arguments[1]);\r
-                       else\r
-                               window.open(strURL);\r
-               }               \r
-               window.gbInPopupMenu = true;\r
-               return false;\r
-       }\r
-       \r
-       var strMenu = "";\r
-       if (gbBsNS4&&!gbBsNS6) {\r
-               strMenu = '<TABLE BORDER="1" CELLSPACING=0 CELLPADDING=3 BGCOLOR="#c0c0c0">';\r
-       } else {\r
-               strMenu = '<TABLE STYLE="border:2px outset white;" CELLSPACING=0';\r
-               if (gbBsMac) {\r
-                       strMenu += ' CELLPADDING=4';\r
-               } else {\r
-                       strMenu += ' CELLPADDING=2';\r
-               }       \r
-               strMenu += ' BGCOLOR=#c0c0c0>';\r
-       }\r
-       // Add each of the items\r
-       var i = 2;\r
-       while (i <= argLen - 1) {\r
-               strMenu += '<TR><TD><NOBR>'\r
-               // If the destination is a number then look it up in the topic list\r
-               if (isNaN(fn_arguments[i]) ||  (gbPopupMenuTopicList == null)) {\r
-                       strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A HREF="' + fn_arguments[i + 1] + '"' + strTarget;\r
-               } else {\r
-                       strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A HREF="' + gbPopupMenuTopicList[fn_arguments[i]].strURL + '"' + strTarget;\r
-               }\r
-               strMenu += ' onclick="PopupMenu_HandleClick(event);"';\r
-               strMenu += ' onmouseover="PopupMenu_Over(event);"';\r
-               strMenu += ' onmouseout="PopupMenu_Out(event);"';\r
-               strMenu += '>';\r
-               if (isNaN(fn_arguments[i]) || (gbPopupMenuTopicList == null)) {\r
-                       strMenu += '<SPAN CLASS="PopupNotOver">' + fn_arguments[i] + '</SPAN>';\r
-               } else {\r
-                       strMenu += '<SPAN CLASS="PopupNotOver">' + gbPopupMenuTopicList[fn_arguments[i]].strTitle + '</SPAN>';\r
-               }\r
-               strMenu += '</A></DIV></NOBR></TD></TR>';\r
-\r
-               if (isNaN(fn_arguments[i]) || (gbPopupMenuTopicList == null)) {\r
-                       i += 2;\r
-               } else {\r
-                       i += 1;\r
-               }\r
-       }\r
-       strMenu += "</TABLE>";\r
-\r
-       if (gbBsMac) {\r
-       // totally hack. because ie5 in mac need something. </TABLE> is one of them. mac is mad.\r
-               strMenu +="<TABLE></TABLE>";\r
-       }\r
-\r
-       var layerPopup = null;\r
-       var stylePopup = null;\r
-       var nEventX = 0;\r
-       var nEventY = 0;\r
-       var nWindowWidth = 0;\r
-       if (gbBsIE4 || gbBsOpera7) {\r
-\r
-               layerPopup = getElement("PopupMenu");\r
-               layerPopup.innerHTML = strMenu;\r
-               stylePopup = layerPopup.style;\r
-\r
-               _BSPSGetClientSize();\r
-\r
-               // Get the position of the item causing the event (relative to its parent)\r
-               nEventX = window.event.clientX;\r
-               nEventY = window.event.clientY;\r
-\r
-               if (nEventY + layerPopup.scrollHeight + 10 < gBsClientHeight) {\r
-                       nEventY += document.body.scrollTop + 10;\r
-               } else {\r
-                       nEventY = (document.body.scrollTop + gBsClientHeight) - layerPopup.scrollHeight - 20;\r
-               }\r
-               stylePopup.top = nEventY;\r
-               \r
-               var nPopupWidth = layerPopup.scrollWidth;\r
-               if (gbBsMac) {\r
-                       nPopupWidth = 80; // we have no idea how to get the dynamic width of the popup.\r
-               }\r
-               if (nEventX + nPopupWidth + 20 > gBsClientWidth) {\r
-                       if (gBsClientWidth - nPopupWidth < 5) {\r
-                               stylePopup.left = 5;\r
-                       } else {\r
-                               stylePopup.left = gBsClientWidth - nPopupWidth - 5;\r
-                       }\r
-               } else {\r
-                       stylePopup.left = nEventX + document.body.scrollLeft + 20;\r
-               }\r
-\r
-               stylePopup.visibility = "visible";\r
-               if (!gOlddocumentClick && document.onclick)\r
-                       gOlddocumentClick = document.onclick;\r
-               document.onclick = PopupMenu_HandleClick;\r
-\r
-       } else if (gbBsNS6 || gbBsKonqueror3||gbBsSafari) {\r
-               layerPopup = getElement("PopupMenu");\r
-               layerPopup.style.visibility = "hidden";\r
-       \r
-               if (gbBsNS6)\r
-               {\r
-                       var e = fn_arguments[0];\r
-                       nEventX = e.pageX;\r
-                       nEventY = e.pageY;\r
-               }\r
-               else\r
-               {\r
-                       nEventX = window.event.clientX;\r
-                       nEventY = window.event.clientY;\r
-               }\r
-               _BSPSGetClientSize();\r
-               layerPopup.innerHTML = strMenu;\r
-\r
-               if (nEventY + layerPopup.offsetHeight + 20  <  window.pageYOffset + gBsClientHeight) {\r
-                       nEventY += 20;\r
-               } else {\r
-                       nEventY = gBsClientHeight + window.pageYOffset - layerPopup.offsetHeight - 20;\r
-               }\r
-\r
-               if (nEventX + layerPopup.offsetWidth + 20 > gBsClientWidth + window.pageXOffset) {\r
-                       if (gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth < 20) {\r
-                               nEventX = 5;\r
-                       } else {\r
-                               nEventX = gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth - 20;\r
-                       }\r
-               } else {\r
-                       nEventX += 20;\r
-               }\r
-               layerPopup.style.top = nEventY;\r
-               layerPopup.style.left = nEventX;\r
-               // set again to avoid the stupid frash in netscape 6.\r
-               layerPopup.innerHTML = strMenu;\r
-               layerPopup.style.visibility = "visible";\r
-               //window.captureEvents(Event.MOUSEDOWN);\r
-               if (!gOlddocumentClick && document.onclick)\r
-                       gOlddocumentClick = document.onclick;\r
-               window.onclick = PopupMenu_HandleClick;\r
-       }\r
-       else if (gbBsNS4) {\r
-               layerPopup = document.layers.PopupMenu;\r
-               layerPopup.visibility = "hide";\r
-               stylePopup = layerPopup.document;\r
-               stylePopup.write(strMenu);\r
-               stylePopup.close();\r
-               var e = fn_arguments[0];\r
-               nEventX = e.pageX;\r
-               nEventY = e.pageY;\r
-               _BSPSGetClientSize();\r
-               if (nEventY + layerPopup.clip.height + 20 < window.pageYOffset + gBsClientHeight) {\r
-                       nEventY += 20;\r
-               } else {\r
-                       nEventY = gBsClientHeight + window.pageYOffset- layerPopup.clip.height - 20;\r
-               }\r
-               layerPopup.top = nEventY;\r
-\r
-               if (nEventX + layerPopup.clip.width + 20 > gBsClientWidth + window.pageXOffset) {\r
-                       if (gBsClientWidth + window.pageXOffset - layerPopup.clip.width < 20) {\r
-                               nEventX = 5;\r
-                       } else {\r
-                               nEventX = gBsClientWidth + window.pageXOffset - layerPopup.clip.width - 20;\r
-                       }\r
-               } else {\r
-                       nEventX += 20;\r
-               }\r
-\r
-               layerPopup.left = nEventX;\r
-\r
-               layerPopup.visibility = "show";\r
-\r
-               window.captureEvents(Event.MOUSEDOWN);\r
-               if (!gOlddocumentClick && document.onmousedown)\r
-                       gOlddocumentClick = document.onmousedown;\r
-               window.onmousedown = PopupMenu_HandleClick;\r
-       }\r
-\r
-       window.gbInPopupMenu = true;\r
-       window.gbPopupMenuTimeoutExpired = false;\r
-       setTimeout("PopupMenu_Timeout();", 100);\r
-       return false;\r
-}\r
-\r
-function PopupMenu_Timeout()\r
-{\r
-       window.gbPopupMenuTimeoutExpired = true;\r
-}\r
-\r
-function PopupMenu_Over(e)\r
-{\r
-    if (gbBsIE4||gbBsOpera7)\r
-               e.srcElement.className = "PopupOver";\r
-    else if (gbBsNS6)\r
-               e.target.parentNode.className = "PopupOver";\r
-       return;\r
-}\r
-\r
-function PopupMenu_Out(e)\r
-{\r
-    if (gbBsIE4||gbBsOpera7)\r
-               e.srcElement.className = "PopupNotOver";\r
-    else if (gbBsNS6)\r
-               e.target.parentNode.className = "PopupNotOver";\r
-       return;\r
-}\r
-\r
-function PopupMenu_HandleClick(e)\r
-{\r
-       if (window.gbPopupMenuTimeoutExpired) {\r
-               window.gbInPopupMenu = false;\r
-               if (gbBsNS4 && !gbBsNS6) {\r
-                       window.releaseEvents(Event.MOUSEDOWN);\r
-               }\r
-\r
-               var layerPopup = null;\r
-               if (gbBsNS4&&!gbBsNS6) {\r
-                       layerPopup = document.layers.PopupMenu;\r
-                       layerPopup.visibility = "hide";\r
-               } else {\r
-                       layerPopup = getElement("PopupMenu");\r
-                       layerPopup.style.visibility = "hidden";\r
-               }\r
-       \r
-               if (gOlddocumentClick)\r
-               {\r
-                       if (gbBsNS4 && !gbBsNS6)\r
-                               document.onmousedown = gOlddocumentClick;\r
-                       else\r
-                               document.onclick = gOlddocumentClick;\r
-               }\r
-       }\r
-       return;\r
-}\r
-\r
-function BSSCPopup_ClickMac()\r
-{\r
-       if ((!DHTMLPopupSupport()) && (gbBsIE4 || gbBsOpera7))\r
-       {       \r
-               var bClickOnAnchor = false;\r
-               var el;\r
-               if ((window.event != null) &&\r
-                   (window.event.srcElement != null))\r
-               {\r
-                   el = window.event.srcElement;\r
-                       while (el != null)\r
-                       {\r
-                               if ((el.tagName == "A") || (el.tagName == "AREA"))      {\r
-                                       bClickOnAnchor = true;\r
-                                       break;\r
-                               }\r
-                               if (el.tagName == "BODY") {\r
-                                       break;\r
-                               }\r
-                               el = getParentNode(el);\r
-                       }\r
-               }\r
-               if (BSSCPopup_IsPopup())\r
-               {\r
-                       if (!bClickOnAnchor) {\r
-                               parent.window.gPopupWindow = null;\r
-                               self.close();\r
-                       }\r
-               }\r
-               else\r
-               {\r
-                       bClosePopupWindow = true;\r
-                       if ((bClickOnAnchor) &&\r
-                               (el.href) &&\r
-                           ((el.href.indexOf("javascript:BSSCPopup") != -1) || (el.href.indexOf("javascript:null") != -1) || (el.href.indexOf("javascript:void(0)") != -1)))\r
-                       {\r
-                               bClosePopupWindow = false;\r
-                       }\r
-                       if (bClosePopupWindow)\r
-                       {\r
-                               if (window.gPopupWindow != null && !window.gPopupWindow.closed )\r
-                               {\r
-                                       window.gPopupWindow.close();\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-function BsPopupOnClick()\r
-{\r
-       if (!gbBsIE4 && !gbBsOpera7)\r
-               return;\r
-\r
-       BSSCPopup_ClickMac();\r
-}\r
-\r
-function _BSSCOnError(message)\r
-{\r
-       if(-1 != message.indexOf("denied") \r
-               || -1 != message.indexOf("Object required"))\r
-        return true;\r
-}\r
-\r
-//End to support previous relative topics\r
-\r
-/// Section End - General and relative topics (JavaScript 1.0)\r
-\r
-/// Section Begin  - Popup (JavaScript 1.0)\r
-//Begin to support previous popup functions\r
-\r
-//variables used to isolate the browser type\r
-var gBsStyVisShow      = null;\r
-var gBsStyVisHide      = null;\r
-var gBsClientWidth     = 640;\r
-var gBsClientHeight = 480;\r
-\r
-// here is the varible for judge popup windows size. these parameter is for IE5.0, it may need adjust for others.\r
-var gBRateH_W          = 0.618; // 1.618 Golden cut.\r
-var gBMaxXOfParent     = 0.8; \r
-var gBMaxYOfParent     = 0.8;\r
-var gBscrollHeight   = 16;\r
-var gBscrollWidth   =  16;\r
-var gBpermitXDelta     = 3;\r
-var gBpermitYDelta     = 3;\r
-\r
-\r
-var arrayPopupURL = new Array();\r
-var arrayAbsPopupURL = new Array();\r
-\r
-var arrayDirty = new Array();\r
-\r
-function setAbsPopupURL(nIndex, strURL)\r
-{\r
-       arrayAbsPopupURL[nIndex] = strURL;\r
-}\r
-\r
-function getAbsPopupURL(nIndex)\r
-{\r
-       if (nIndex == -1 || arrayAbsPopupURL.length <= nIndex) return null;\r
-       else \r
-               return arrayAbsPopupURL[nIndex];\r
-}\r
-\r
-function getPopupURL(nIndex)\r
-{\r
-       if (nIndex == -1 || arrayPopupURL.length <= nIndex) return null;\r
-       else \r
-               return arrayPopupURL[nIndex];\r
-}\r
-\r
-function getPopupID(nIndex)\r
-{\r
-       return gstrPopupID + nIndex;\r
-}\r
-\r
-function getPopupShadowID(nIndex)\r
-{\r
-       return gstrPopupShadowID + nIndex;\r
-}\r
-\r
-function getPopupTopicID(nIndex)\r
-{\r
-       return gstrPopupTopicID + nIndex;\r
-}\r
-\r
-function getPopupIFrameID(nIndex)\r
-{\r
-       return gstrPopupIFrameID + nIndex;\r
-}\r
-\r
-function getPopupIFrameName(nIndex)\r
-{\r
-       return gstrPopupIFrameName + nIndex;\r
-}\r
-\r
-\r
-function getPopupTopicStyle(nIndex)\r
-{\r
-       return getElement(getPopupTopicID(nIndex)).style;\r
-}\r
-\r
-function getPopupShadowStyle(nIndex)\r
-{\r
-       return getElement(getPopupShadowID(nIndex)).style;\r
-}\r
-\r
-function getPopupIFrame(nIndex)\r
-{\r
-       if (gbBsNS6)\r
-               return eval("window.frames['" + getPopupIFrameName(nIndex) + "']");\r
-       else\r
-               return eval("document.frames['" + getPopupIFrameName(nIndex) + "']");\r
-}\r
-\r
-function getPopupDivStyle(nIndex)\r
-{\r
-       return getElement(getPopupID(nIndex)).style;\r
-}\r
-\r
-function getPopupIFrameStyle(nIndex)\r
-{\r
-       return getElement(getPopupIFrameID(nIndex)).style;\r
-}\r
-\r
-\r
-function findDiv(strURL)\r
-{\r
-       for (var i = 0; i < arrayPopupURL.length; i ++ ) {\r
-               if (arrayPopupURL[i] == strURL) {\r
-                       return i;\r
-               }\r
-       }\r
-       return -1;\r
-}\r
-\r
-var gnToken = -1;\r
-function takeToken()\r
-{\r
-       gnToken ++;\r
-       if (gnToken > 10000) gnToken = 0;\r
-       return gnToken;\r
-}\r
-\r
-function IsValidToken(nToken)\r
-{\r
-       return (gnToken == nToken);\r
-}\r
-\r
-function addDiv(strURL)\r
-{\r
-       for (var i = 0; i < arrayPopupURL.length; i ++) {\r
-               if (arrayPopupURL[i] == null) {\r
-                       arrayPopupURL[i] = strURL;\r
-                       return i;\r
-               }\r
-       }       \r
-       arrayPopupURL[i] = strURL;\r
-       arrayDirty[i] = true;\r
-       return i;\r
-}\r
-\r
-function setDirty()\r
-{\r
-       for (var i = 0; i < arrayPopupURL.length; i ++ )\r
-               arrayDirty[i] = true;\r
-}\r
-\r
-function IsDirty(nIndex)\r
-{\r
-       if (nIndex == -1)\r
-               return true;\r
-       else \r
-               if (arrayDirty.length > nIndex) \r
-                       return arrayDirty[nIndex];\r
-               else\r
-                       return true;\r
-}\r
-\r
-function hideAll()\r
-{\r
-       for (var i = 0; i < arrayPopupURL.length; i ++ )\r
-       {\r
-               getPopupDivStyle(i).visibility = gBsStyVisHide;\r
-               getPopupIFrameStyle(i).visibility = gBsStyVisHide;\r
-       }\r
-}\r
-\r
-function getCurrentPopupIFrame()\r
-{\r
-       for (var i = 0; i < arrayPopupURL.length; i ++)\r
-               if (getPopupDivStyle(i).visibility == gBsStyVisShow)\r
-                       return getPopupIFrame(i);\r
-       return null;\r
-}\r
-\r
-function setClear(nIndex)\r
-{\r
-       if (nIndex != -1)\r
-               arrayDirty[nIndex] = false;\r
-}\r
-\r
-function _BSSCCreatePopupDiv(strURL)\r
-{\r
-       var nIndex = findDiv(strURL);\r
-       if (nIndex == -1 ) {\r
-               nIndex = addDiv(strURL);\r
-               BsPopup_CreateDiv(nIndex);\r
-       }\r
-       else {\r
-               if (IsDirty(nIndex)) {\r
-                       if("object" == typeof(getPopupIFrame(nIndex).document))\r
-                               getPopupIFrame(nIndex).document.location.href = strURL;\r
-               }\r
-       }\r
-       return nIndex;\r
-}\r
-\r
-//Here is the browser type \r
-function _BSPSGetBrowserInfo()\r
-{\r
-       if (gbBsNS4&&!gbBsNS6)\r
-       {\r
-               gBsStyVisShow   = "show";\r
-               gBsStyVisHide   = "hide";\r
-       }\r
-       else\r
-       {\r
-               gBsStyVisShow   = "visible";\r
-               gBsStyVisHide   = "hidden";\r
-       }\r
-}\r
-\r
-_BSPSGetBrowserInfo();\r
-\r
-//Get client size info\r
-function _BSPSGetClientSize()\r
-{\r
-       if (gbBsNS4||gbBsKonqueror3||gbBsSafari)\r
-       {\r
-               gBsClientWidth  = innerWidth;\r
-               gBsClientHeight = innerHeight;\r
-       }\r
-       else if (gbBsIE4 || gbBsOpera7)\r
-       {\r
-               gBsClientWidth  = document.body.clientWidth;\r
-               gBsClientHeight = document.body.clientHeight;\r
-       }\r
-}\r
-\r
-var gstrPopupID = 'BSSCPopup';\r
-var gstrPopupShadowID = 'BSSCPopupShadow';\r
-var gstrPopupTopicID = 'BSSCPopupTopic';\r
-var gstrPopupIFrameID = 'BSSCPopupIFrame';\r
-var gstrPopupIFrameName = 'BSSCPopupIFrameName';\r
-\r
-var gstrPopupSecondWindowName = 'BSSCPopup';\r
-\r
-var gPopupWindow = null;\r
-var gnPopupClickX = 0;\r
-var gnPopupClickY = 0;\r
-\r
-var gnPopupScreenClickX = 0;\r
-var gnPopupScreenClickY = 0;\r
-\r
-var gbPopupTimeoutExpired = false;\r
-\r
-function DHTMLPopupSupport()\r
-{\r
-       if (((gbBsIE4) && (!gbBsMac))||gbBsOpera7|| gbBsNS7) {\r
-               return true;\r
-       }\r
-       return false;\r
-}\r
-\r
-function BSSCPopup_IsPopup()\r
-{\r
-       if (DHTMLPopupSupport() && (this.name.indexOf(gstrPopupIFrameName) != -1)) {\r
-               return true;\r
-       } else if ((gbBsNS4 || gbBsIE4 || gbBsOpera7) && (this.name.indexOf(gstrPopupID) != -1)) {\r
-               return true;\r
-       } else {\r
-               return false;\r
-       }\r
-}\r
-\r
-// If there is a hyperlink in a popup window, display the hyperlink in\r
-// the original window. (bsscright)\r
-if (BSSCPopup_IsPopup() && !gbBsIE4 && !gbBsOpera7) {\r
-       document.write("<base target=\"bsscright\">");\r
-}\r
-\r
-// Local functions.\r
-function BsPopup_CreateDiv(nIndex)\r
-{\r
-       if(!DHTMLPopupSupport())\r
-               return;\r
-       // DO NOT SET Width and height for the div, otherwize it will make IE4 popup do not work when view the topic alone.\r
-       var strPopupDiv = "<DIV ID='" + getPopupID(nIndex) + "' STYLE='position:absolute; top:-100; left:0; z-index:600; visibility:hidden;'>";\r
-       strPopupDiv += "<DIV ID='" + getPopupShadowID(nIndex) + "' STYLE=\"position:absolute;top:0; left:0;  background-color:#C0C0C0;\"></DIV>";\r
-       strPopupDiv += "<DIV ID='" + getPopupTopicID(nIndex) + "' STYLE=\"position:absolute;top:0; left:0;  background-color:#FFFFFF;border:1px #000000 outset;\">";\r
-       strPopupDiv += "<IFRAME title=\"Popup Window\" ID='" + getPopupIFrameID(nIndex) + "' name='" + getPopupIFrameName(nIndex) + "' src = '" + getPopupURL(nIndex) + "' frameborder=0 scrolling=auto></IFRAME>";\r
-       strPopupDiv += "</DIV></DIV>";\r
-\r
-       var objBody = getElementsByTag(document, "BODY")[0];\r
-       if( typeof(objBody) != "object" )\r
-               return;\r
-\r
-       insertAdjacentHTML(objBody, "beforeEnd", strPopupDiv);\r
-}\r
-\r
-function handleLoadNS()\r
-{\r
-       if (this.id)\r
-       {\r
-               var nIndex = parseInt(this.id.substring(gstrPopupIFrameID.length));\r
-               BSSCPopup_PostWork(nIndex);\r
-       }\r
-}\r
-\r
-function BSSCPopup_PostWork(nIndex)\r
-{\r
-       getPopupDivStyle(nIndex).visibility = gBsStyVisShow;\r
-       getPopupIFrameStyle(nIndex).visibility =gBsStyVisShow;\r
-\r
-       setClear(nIndex);\r
-       window.gbPopupTimeoutExpired = true;\r
-\r
-       BSSCPopup_ChangeTargettoParent(getPopupIFrame(nIndex).document);\r
-       if (gbBsNS6)\r
-               getPopupIFrame(nIndex).document.body.addEventListener("click",BSSCPopupClicked,false);\r
-       else\r
-               getPopupIFrame(nIndex).document.body.onclick = BSSCPopupClicked;\r
-\r
-       if (!gbOrignalOnMouseDown && document.onmousedown)\r
-               gbOrignalOnMouseDown = document.onmousedown;\r
-\r
-       if (gbBsNS6)\r
-               document.addEventListener("mousedown", BSSCPopupParentClicked,false);\r
-       else\r
-               document.onmousedown = BSSCPopupParentClicked;\r
-}\r
-\r
-function BSSCPopup_Timeout(nIndex, nToken)\r
-{\r
-    if (!IsValidToken(nToken)) return;\r
-\r
-       if (gbBsNS6||((getPopupIFrame(nIndex).document.readyState == "complete") &&\r
-               (getPopupIFrame(nIndex).document.body != null))) {\r
-               BSSCPopup_PostWork(nIndex);\r
-       } else {\r
-               setTimeout("BSSCPopup_Timeout(" + nIndex + "," + nToken + ")", 100);\r
-       }\r
-}\r
-\r
-// VH 08/10/00 \r
-// do not change target to parent if the href is using javascript\r
-function BSSCPopup_ChangeTargettoParent(tagsObject)\r
-{\r
-       var collA = getElementsByTag(tagsObject, "A");\r
-       BSSCPopup_ChangeTargettoParent2(collA);\r
-\r
-       var collIMG = getElementsByTag(tagsObject,"IMG");\r
-       BSSCPopup_ChangeTargettoParent2(collIMG);\r
-}\r
-\r
-function BSSCPopup_ChangeTargettoParent2(colls)\r
-{\r
-       if (colls != null)  {\r
-               for (var j = 0; j < colls.length; j ++ )\r
-               {\r
-                       var strtemp = colls[j].href;\r
-                       if (strtemp)\r
-                       {\r
-                               strtemp = strtemp.toLowerCase();\r
-                               if (strtemp.indexOf("javascript:") == -1)\r
-                               if (colls[j].target == "")\r
-                                       colls[j].target = "_parent";\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-function BSPSPopupTopicWinHelp(strURL)\r
-{\r
-       _BSSCPopup(strURL);\r
-       return;\r
-}\r
-\r
-function _BSSCPopup(strURL, width, height)\r
-{\r
-       var cuswidth = 0;\r
-       var cusheight = 0;\r
-       if ("undefined" != typeof(width) && "undefined" != typeof(height)) {\r
-               cuswidth = width;\r
-               cusheight= height;\r
-       }\r
-       \r
-       if (DHTMLPopupSupport()) {\r
-               var nToken = takeToken(); // take  token first.\r
-               var nIndex = _BSSCCreatePopupDiv(strURL);\r
-               window.gbPopupTimeoutExpired = false;\r
-               var ntWidth = gBsClientWidth;\r
-               var ntHeight = gBsClientHeight;\r
-               _BSPSGetClientSize();\r
-               if (ntWidth != gBsClientWidth || ntHeight != gBsClientHeight) {\r
-                       setDirty();\r
-               }\r
-\r
-               if (IsDirty(nIndex)) {\r
-                       if (gbBsMac) {\r
-                               setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight  +")", 400);\r
-                       } else {\r
-                               setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 100);\r
-                       }\r
-               }\r
-               else {\r
-                       MoveDivAndShow(nIndex ,nToken, cuswidth, cusheight);\r
-               }\r
-       } else {\r
-               _BSSCPopup2(strURL, cuswidth, cusheight);\r
-       }\r
-       return;\r
-}\r
-\r
-if (gbBsIE55)\r
-{\r
-       var ehlpdhtm_fOldBefureUnload = window.onbeforeunload;\r
-       var gnBsUnload=0;\r
-       window.onbeforeunload = window_BUnload;\r
-}\r
-       \r
-function window_BUnload()\r
-{\r
-       gnBsUnload++;\r
-       if (gnBsUnload>1)\r
-               return;\r
-       for (var i = 0; i < arrayPopupURL.length; i ++)\r
-               removeThis(document.all(getPopupID(i)));\r
-       arrayPopupURL.length = 0;       \r
-       if (ehlpdhtm_fOldBefureUnload)\r
-               ehlpdhtm_fOldBefureUnload();\r
-}\r
-\r
-function _BSSCPopup2(strURL, width, height)\r
-{\r
-       if (gbBsOpera6&&gbBsMac)\r
-       {\r
-               var wmTemp = window.open(document.location.href, gstrPopupSecondWindowName);\r
-               wmTemp.close();\r
-               setTimeout("_BSSCPopup3(\""+strURL+"\","+width+","+height+");",100);\r
-       }\r
-       else\r
-               _BSSCPopup3(strURL, width, height);\r
-}\r
-               \r
-function _BSSCPopup3(strURL, width, height)\r
-{\r
-       if (window.name == gstrPopupSecondWindowName) {\r
-               window.location = strURL;\r
-       } else {\r
-               if (!gbBsMac || !gbBsNS4) {\r
-                       BSSCHidePopupWindow();\r
-               }\r
-               var nX = 0;\r
-               var nY = 0;\r
-               var nHeight = 300;\r
-               var nWidth = 400;\r
-               if (width > 0 && height > 0) {\r
-                       nHeight = height;\r
-                       nWidth = width;\r
-               }\r
-               _BSPSGetClientSize();\r
-\r
-               nX = window.gnPopupScreenClickX;\r
-               nY = window.gnPopupScreenClickY;\r
-\r
-               if (nY + nHeight + 40 > screen.availHeight) {\r
-                       nY = screen.availHeight - nHeight - 40;\r
-               }\r
-               if (nX + nWidth + 40 > screen.availWidth) {\r
-                       nX = screen.availWidth - nWidth - 40;\r
-               }\r
-\r
-               // Launch a separate window\r
-               var strParam="titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes";\r
-               if (gbBsNS) {\r
-                       if (gbBsNS6) {\r
-                               strParam += ",Height=" + nHeight + ",Width=" + nWidth;\r
-                               strParam += ",screenX=" + nX + ",screenY=" + nY;\r
-                               strParam += ",dependent=yes";\r
-                       }\r
-                       else {\r
-                               strParam += ",OuterHeight=" + nHeight + ",OuterWidth=" + nWidth;\r
-                               strParam += ",screenX=" + nX + ",screenY=" + nY;\r
-                               strParam += ",dependent=yes";\r
-                       }\r
-               }\r
-               else {\r
-                       strParam += ",height=" + nHeight + ",width=" + nWidth;\r
-                       strParam += ",left=" + nX + ",top=" + nY;\r
-               }\r
-               if (gbBsSafari)\r
-               {\r
-                       if (window.gPopupWindow)\r
-                               window.gPopupWindow.close();            \r
-                       window.gPopupWindow = window.open(strURL, "", strParam);\r
-                       window.gPopupWindow.name = gstrPopupSecondWindowName;\r
-                       window.gPopupWindow.moveTo(nX, nY);\r
-                       widnow.gPopupWindow.document.location.reload();\r
-               }       \r
-               else\r
-               {\r
-                       var wmTemp=null;\r
-                       if (gbBsKonqueror3)\r
-                       {\r
-                               if (window.gPopupWindow)\r
-                                       window.gPopupWindow.close();\r
-                       }\r
-                       if (gbBsOpera&&gbBsMac)\r
-                       {\r
-                               wmTemp= window.open(document.location.href, "Temp", strParam);\r
-                       }\r
-                       window.gPopupWindow = window.open(strURL, gstrPopupSecondWindowName, strParam);\r
-                       if (!gbBsIE)\r
-                               window.gPopupWindow.focus();\r
-                               \r
-                       if (wmTemp)\r
-                               wmTemp.close();\r
-               }\r
-\r
-               if (gbBsNS4)\r
-                       setEventHandle();\r
-               else if (gbBsIE4 || gbBsOpera7||gbBsKonqueror3)\r
-                       setTimeout("setPopupFocus();", 100);\r
-       }\r
-       return;\r
-}\r
-\r
-function setEventHandle()\r
-{\r
-       window.gPopupWindow.captureEvents(Event.CLICK | Event.BLUR);\r
-       window.gPopupWindow.onclick = NonIEPopup_HandleClick;\r
-       window.gPopupWindow.onblur = NonIEPopup_HandleBlur;\r
-}\r
-\r
-function setPopupFocus()\r
-{\r
-       window.gPopupWindow.focus();\r
-}\r
-\r
-function NonIEPopup_HandleBlur(e)\r
-{\r
-       window.gPopupWindow.focus();\r
-}\r
-\r
-function NonIEPopup_HandleClick(e)\r
-{\r
-       // Because navigator will give the event to the handler before the hyperlink, let's\r
-       // first route the event to see if we are clicking on a Popup menu in a popup.\r
-       document.routeEvent(e);\r
-\r
-       // If a popup menu is active then don't do anything with the click\r
-       if (window.gPopupWindow.gbInPopupMenu) {\r
-               window.gPopupWindow.captureEvents(Event.CLICK);\r
-               window.gPopupWindow.onclick = NonIEPopup_HandleClick;\r
-               return false;\r
-       }\r
-\r
-       // Close the popup window\r
-       if(e.target.href)\r
-       {\r
-               if(e.target.href.indexOf("javascript:")==-1) \r
-               {\r
-                       if (e.target.target=="")\r
-                               window.location.href = e.target.href;\r
-                       else\r
-                               window.open(e.target.href, e.target.target);\r
-                       this.close();\r
-               }\r
-       } \r
-       else\r
-               this.close();\r
-       return false;\r
-}\r
-\r
-function BSSCPopup_AfterLoad(nIndex, nToken, cuswidth, cusheight)\r
-{      \r
-       if (!window.getPopupIFrame(nIndex).document) {\r
-               _BSSCPopup2(getPopupURL(nIndex), cuswidth, cusheight);\r
-               return;\r
-       }\r
-       \r
-    if (!IsValidToken(nToken)) return;\r
-\r
-       if (gbBsNS6)\r
-       {\r
-               setAbsPopupURL(nIndex, window.getPopupIFrame(nIndex).document.location.href); // change URL to abs url.\r
-               BSSCPopup_ResizeAfterLoad(nIndex, nToken, cuswidth, cusheight);\r
-               return;\r
-       }\r
-       \r
-       if ((window.getPopupIFrame(nIndex).document.readyState == "complete") &&\r
-               (window.getPopupIFrame(nIndex).document.body != null)) {\r
-                       if (window.getPopupIFrame(nIndex).document.location.href.indexOf("about:blank") != -1) { // add this check. IE will use about:blank" as the default vaule for Iframe.\r
-                               window.getPopupIFrame(nIndex).document.location = getPopupURL(nIndex);\r
-                               setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200);\r
-                       }\r
-                       else\r
-                               {\r
-                                       setAbsPopupURL(nIndex, window.getPopupIFrame(nIndex).document.location.href); // change URL to abs url.\r
-                                       BSSCPopup_ResizeAfterLoad(nIndex, nToken, cuswidth, cusheight);\r
-                               }\r
-       } else {\r
-               setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200);\r
-       }\r
-}\r
-\r
-function BSSCPopup_ResizeAfterLoad(nIndex, nToken, cuswidth, cusheight)\r
-{\r
-       if (window.gbPopupTimeoutExpired) return;\r
-\r
-    if (!IsValidToken(nToken)) return;\r
-\r
-       getPopupDivStyle(nIndex).visibility = gBsStyVisHide;\r
-       getPopupIFrameStyle(nIndex).visibility = gBsStyVisHide;\r
-\r
-       // Determine the width and height for the window\r
-       _BSPSGetClientSize();\r
-\r
-       var size = new BSSCSize(0, 0);\r
-\r
-       if (cuswidth <= 0 || cusheight <= 0)\r
-               BSSCGetContentSize(window.getPopupIFrame(nIndex), size);\r
-       else {\r
-               size.x = cuswidth;\r
-               size.y = cusheight;\r
-       }\r
-\r
-       // Determine the width and height for the window\r
-       var nWidth = size.x;\r
-       var nHeight = size.y;\r
-\r
-       // for small popup size, we should allow any size.\r
-       // The popup size should be ok if bigger than 0\r
-       if (nWidth < 0 || nHeight < 0) return;  // there must be something terribly wrong.              \r
-\r
-       getPopupDivStyle(nIndex).width = nWidth;\r
-       getPopupDivStyle(nIndex).height = nHeight;\r
-\r
-       getPopupShadowStyle(nIndex).width = nWidth;\r
-       getPopupShadowStyle(nIndex).height = nHeight;\r
-       getPopupTopicStyle(nIndex).width = nWidth;\r
-       getPopupTopicStyle(nIndex).height = nHeight;\r
-       if (gbBsIE55)\r
-       {\r
-               getPopupShadowStyle(nIndex).width = nWidth + 2;\r
-               getPopupShadowStyle(nIndex).height = nHeight + 2;\r
-               getPopupTopicStyle(nIndex).width = nWidth + 2;\r
-               getPopupTopicStyle(nIndex).height = nHeight + 2;\r
-       }\r
-\r
-       getPopupIFrameStyle(nIndex).width = nWidth;\r
-       getPopupIFrameStyle(nIndex).height = nHeight;\r
-       if (gbBsIE55 || gbBsNS6)\r
-       {\r
-               getPopupIFrameStyle(nIndex).top = 0;\r
-               getPopupIFrameStyle(nIndex).left = 0;\r
-       }\r
-       \r
-       var strURL = getPopupURL(nIndex);\r
-       if (strURL.indexOf("#") != -1&&gbBsNS6)\r
-               getPopupIFrame(nIndex).location.reload();\r
-       else if (strURL.indexOf("#") != -1||gbBsNS6)\r
-               getPopupIFrame(nIndex).location.href = strURL;  // reload again, this will fix the bookmark misunderstand in IE5.\r
-               \r
-       MoveDivAndShow(nIndex, nToken, cuswidth, cusheight);\r
-}\r
-\r
-function getScrollLeft()\r
-{\r
-       if (document.body.scrollLeft)\r
-               return document.body.scrollLeft;\r
-       else if (window.pageXOffset)\r
-               return window.pageXOffset;\r
-       else\r
-               return 0;\r
-}\r
-\r
-function getScrollTop()\r
-{\r
-       if (document.body.scrollTop)\r
-               return document.body.scrollTop;\r
-       else if (window.pageYOffset)\r
-               return window.pageYOffset;\r
-       else\r
-               return 0;\r
-}\r
-\r
-\r
-function MoveDivAndShow(nIndex, nToken, cuswidth, cusheight)\r
-{\r
-       if (window.getPopupIFrame(nIndex).document.location.href != getAbsPopupURL(nIndex)) { // if redirect, reload again.\r
-                       window.getPopupIFrame(nIndex).document.location = getPopupURL(nIndex);\r
-                       setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200);\r
-                       return;\r
-       }\r
-\r
-       // Determine the position of the window\r
-       var nClickX = window.gnPopupClickX;\r
-       var nClickY = window.gnPopupClickY;\r
-       var nTop = 0;\r
-       var nLeft = 0;\r
-\r
-       var nWidth = parseInt(getPopupDivStyle(nIndex).width);\r
-       var nHeight = parseInt(getPopupDivStyle(nIndex).height);\r
-\r
-       if (nClickY + nHeight + 20 < gBsClientHeight + getScrollTop()) {\r
-               nTop = nClickY + 10;\r
-       } else {\r
-               nTop = (getScrollTop() + gBsClientHeight) - nHeight - 20;\r
-       }\r
-       if (nClickX + nWidth < gBsClientWidth + getScrollLeft()) {\r
-               nLeft = nClickX;\r
-       } else {\r
-               nLeft = (getScrollLeft() + gBsClientWidth) - nWidth - 8;\r
-       }\r
-\r
-       if (nTop < getScrollTop()) nTop  = getScrollTop() + 1;\r
-       if (nLeft< getScrollLeft())  nLeft = getScrollLeft() + 1;\r
-\r
-       getPopupDivStyle(nIndex).left = nLeft;\r
-       getPopupDivStyle(nIndex).top = nTop;\r
-\r
-       // Set the location of the background blocks\r
-       getPopupShadowStyle(nIndex).left = 6;\r
-       getPopupShadowStyle(nIndex).top = 6;\r
-       if (gbBsIE55)\r
-       {\r
-               getPopupShadowStyle(nIndex).left = 4;\r
-               getPopupShadowStyle(nIndex).top = 4;\r
-       }\r
-\r
-       if (gbBsMac&&gbBsIE4) {\r
-               // Total hack on the iMac to get the IFrame to position properly\r
-               getPopupIFrameStyle(nIndex).pixelLeft = 100;\r
-               getPopupIFrameStyle(nIndex).pixelLeft = 0;\r
-               // Explicitly call BSSCOnLoad because the Mac doesn't seem to do it\r
-               getPopupIFrame(nIndex).window.BSSCOnLoad();\r
-       }\r
-\r
-       if (gbBsNS6&&IsDirty(nIndex))\r
-               getElement(getPopupIFrameID(nIndex)).addEventListener("load", handleLoadNS, false);\r
-       else\r
-               BSSCPopup_Timeout(nIndex , nToken );\r
-       return;\r
-}\r
-\r
-function       BSSCSize(x, y)\r
-{\r
-       this.x = x;\r
-       this.y = y;\r
-}\r
-\r
-function BSSCGetContentSize(thisWindow, size)\r
-{\r
-       if (!gbBsIE4 && !gbBsOpera7 && !gbBsNS4)\r
-               return;\r
-\r
-       if ((gbBsMac&&gbBsIE4)||gbBsNS4||gbBsOpera7) {\r
-               size.x = 320;\r
-               size.y = 180;\r
-               return;\r
-       }\r
-\r
-       // Resize the width until it is wide enough to handle the content\r
-       // The trick is to start wide and determine when the scrollHeight changes\r
-       // because then we know a scrollbar is necessary. We can then go back\r
-       // to the next widest size (for no scrollbar)\r
-\r
-       var ClientRate = gBsClientHeight / gBsClientWidth;\r
-\r
-       \r
-       var GoldenSize = new BSSCSize(0,0);\r
-       GoldenSize.x = gBsClientWidth * gBMaxXOfParent;\r
-       GoldenSize.y = gBsClientHeight *gBMaxYOfParent ;\r
-\r
-       if (ClientRate > gBRateH_W) {\r
-               GoldenSize.y = GoldenSize.x * gBRateH_W;\r
-       }\r
-       else {\r
-               GoldenSize.x = GoldenSize.y / gBRateH_W;\r
-       }\r
-\r
-       // Try to using parent specified max x.\r
-       var x = 0;\r
-       var maxgoldx = GoldenSize.x;\r
-       var maxx = gBsClientWidth * gBMaxXOfParent;\r
-       \r
-       // This double resize causes the document to re-render (and we need it to)\r
-       if (!gbBsIE5)\r
-               thisWindow.moveTo(10000,10000); // this is used to fix the flash on IE4.\r
-               \r
-       thisWindow.resizeTo(1, 1);\r
-       thisWindow.resizeTo(1, 1);\r
-       thisWindow.resizeTo(maxgoldx, thisWindow.document.body.scrollHeight + gBscrollHeight);\r
-       thisWindow.resizeTo(maxgoldx, thisWindow.document.body.scrollHeight + gBscrollHeight);\r
-               \r
-       var miny = thisWindow.document.body.scrollHeight + gBscrollHeight;\r
-       \r
-       if (miny > GoldenSize.y) // the popup does not fix in the parent wanted golden area. so try to expand itself as large as it can\r
-       {\r
-               thisWindow.resizeTo(maxx , thisWindow.document.body.scrollHeight + gBscrollHeight);\r
-               thisWindow.resizeTo(maxx , thisWindow.document.body.scrollHeight + gBscrollHeight);\r
-               \r
-               miny =  thisWindow.document.body.scrollHeight + gBscrollHeight;\r
-               maxy = gBsClientHeight * gBMaxYOfParent;\r
-               \r
-               if (miny > maxy) { // the popup must have a scroll, OK let it be.\r
-                       miny = maxy;\r
-                       size.x = maxx;\r
-                       size.y = maxy;\r
-                       thisWindow.document.body.scroll = 'yes'; // At this time we do want to show scroll any more. so it will looks better a little.\r
-               }\r
-               else { // popup still can fit in the parent area by someway. now we choose the same h/w rate as parent.\r
-                       size.y = miny;\r
-                       \r
-                       //  downsize from maxx , now I try to using binary divide.\r
-                       x = maxx;\r
-                       deltax = -maxx/2;\r
-                       //j = 0;\r
-                       while (true) {\r
-                               x = x + deltax;\r
-                               thisWindow.resizeTo(x, miny);\r
-                               thisWindow.resizeTo(x, miny);\r
-                               diffy = thisWindow.document.body.scrollHeight + gBscrollHeight - x * ClientRate;\r
-                               if (diffy >  gBpermitYDelta ) // it is higher than wanted, so x need to be wide a little bitter\r
-                                       deltax = Math.abs(deltax) /2;\r
-                               else if (diffy <  -gBpermitYDelta) // it is shorter than wanted, so x need to be narrow a little bitter\r
-                                       deltax = -Math.abs(deltax) /2;\r
-                               else \r
-                                       // the y is close enough to wanted.\r
-                                       break;\r
-                               if (Math.abs(deltax) < gBpermitXDelta) // the next change is too slight and it can be ignore.\r
-                                       break;\r
-                       }\r
-                       size.x = thisWindow.document.body.scrollWidth; //+ gBscrollWidth;\r
-                       size.y = thisWindow.document.body.scrollHeight;// + gBscrollHeight;     \r
-                       thisWindow.document.body.scroll = 'no';\r
-               }\r
-       }\r
-       else {\r
-               if (thisWindow.document.body.scrollWidth > maxgoldx) {\r
-                       size.x = maxx; \r
-                       size.y = miny;  \r
-                       thisWindow.document.body.scroll = 'yes';\r
-               }\r
-               else {\r
-                       //  downsize from maxgoldx , now I try to using binary divide.\r
-                       x = maxgoldx;\r
-                       deltax = -maxgoldx/2;\r
-                       while (true) {\r
-                               x = x + deltax;\r
-                               thisWindow.resizeTo(x, miny);\r
-                               thisWindow.resizeTo(x, miny);\r
-                               diffy = thisWindow.document.body.scrollHeight + gBscrollHeight - x * gBRateH_W;\r
-                               if (diffy >  gBpermitYDelta ) // it is higher than wanted, so x need to be wide a little bitter\r
-                                       deltax = Math.abs(deltax) /2;\r
-                               else if (diffy <  -gBpermitYDelta) // it is shorter than wanted, so x need to be narrow a little bitter\r
-                                       deltax = -Math.abs(deltax) /2;\r
-                               else \r
-                                       // the y is close enough to wanted.\r
-                                       break;\r
-                               if (Math.abs(deltax) < gBpermitXDelta) // the next change is too slight and it can be ignore.\r
-                                       break;\r
-                       }\r
-                       size.x = thisWindow.document.body.scrollWidth; //+ gBscrollWidth;\r
-                       size.y = thisWindow.document.body.scrollHeight ;\r
-                       thisWindow.document.body.scroll = 'no'; // At this time we do not want to show scroll any more. so it will looks better a little.\r
-                       thisWindow.resizeTo(size.x, size.y);\r
-                       if (thisWindow.document.body.scrollWidth > size.x)\r
-                       {\r
-                               size.x = thisWindow.document.body.scrollWidth;\r
-                       }\r
-                       if (thisWindow.document.body.scrollHeight > size.y)\r
-                       {\r
-                               size.y = thisWindow.document.body.scrollHeight;\r
-                       }\r
-               }\r
-       }\r
-       thisWindow.resizeTo(size.x, size.y);\r
-       thisWindow.resizeTo(size.x, size.y);\r
-       return;\r
-}\r
-\r
-function BSSCPopupParentClicked()\r
-{\r
-       if (!window.gbPopupTimeoutExpired) {\r
-               return false;\r
-       }\r
-       \r
-       document.onmousedown = gbOrignalOnMouseDown;\r
-\r
-       // Simply hide the popup\r
-       hideAll();\r
-\r
-       window.gbPopupTimeoutExpired = false;\r
-\r
-       return true;\r
-}\r
-\r
-function isInsideHyperLink(obj)\r
-{\r
-       if (obj&&obj!=getParentNode(obj))\r
-       {\r
-               if (obj.tagName=="A"||obj.tagName=="IMG")\r
-                       return true;\r
-               else\r
-                       return isInsideHyperLink(getParentNode(obj));\r
-       }\r
-       else\r
-               return false;\r
-}\r
-\r
-function BSSCPopupClicked(e)\r
-{\r
-       if (!window.gbPopupTimeoutExpired) {\r
-               return false;\r
-       }\r
-\r
-       var popupIFrame = getCurrentPopupIFrame();\r
-       if (popupIFrame == null) {\r
-               return true;\r
-       }\r
-\r
-       if (gbBsIE4 && (!((popupIFrame.window.event != null) &&\r
-               (popupIFrame.window.event.srcElement != null) &&\r
-               isInsideHyperLink(popupIFrame.window.event.srcElement)))) {\r
-               document.onmousedown = gbOrignalOnMouseDown;\r
-               \r
-               // Simply hide the popup\r
-               hideAll();\r
-               window.gbPopupTimeoutExpired = false;\r
-               return true;\r
-       }\r
-       else if (gbBsNS6 && (!((e != null) &&\r
-                       (e.target!= null) && isInsideHyperLink(e.target))))\r
-       {\r
-               document.addEventListener("mousedown", gbOrignalOnMouseDown,false);\r
-               // Simply hide the popup\r
-               hideAll();\r
-               window.gbPopupTimeoutExpired = false;\r
-               return true;            \r
-       }\r
-}\r
-\r
-//trace the mouse over's position for hotspot\r
-function  BSPSPopupOnMouseOver(event)\r
-{\r
-       if (gbBsIE4 || gbBsOpera7||gbBsKonqueror3) {\r
-               window.gnPopupClickX = event.clientX + getScrollLeft();\r
-               window.gnPopupClickY = event.clientY + getScrollTop();\r
-               window.gnPopupScreenClickX = event.screenX;\r
-               window.gnPopupScreenClickY = event.screenY;\r
-       } else if (gbBsSafari) {\r
-               window.gnPopupClickX = event.clientX + getScrollLeft();\r
-               window.gnPopupClickY = event.clientY + getScrollTop();\r
-               window.gnPopupScreenClickX = event.screenX + window.screenX;\r
-               window.gnPopupScreenClickY = event.screenY + window.screenY;\r
-       } else if (gbBsNS4) {\r
-               window.gnPopupClickX = event.pageX - window.pageXOffset;\r
-               window.gnPopupClickY = event.pageY - window.pageYOffset;\r
-               window.gnPopupScreenClickX = event.screenX - window.pageXOffset;\r
-               window.gnPopupScreenClickY = event.screenY - window.pageYOffset;\r
-       }\r
-}\r
-\r
-function BSSCHidePopupWindow()\r
-{\r
-       if (window.gPopupWindow != null) {\r
-               if (gbBsNS4) {\r
-                       if ((typeof window.gPopupWindow != "undefined") && (!window.gPopupWindow.closed)) {\r
-                               window.gPopupWindow.close();\r
-                               window.gPopupWindow = null;\r
-                       }\r
-               }\r
-       }\r
-       return;\r
-}\r
-\r
-// Add the PopupOnClick to the onclick array.\r
-if (typeof(BsscRegisterOnClick) != "undefined")\r
-{\r
-       BsscRegisterOnClick(BsPopupOnClick);\r
-}\r
-//End to support previous popup functions\r
-\r
-/// Section End  - Popup (JavaScript 1.0)\r
-\r
-/// Section Begin - Embedded Stub (JavaScript 1.0)\r
-\r
-function BSSCCreatePopupDiv()\r
-{\r
-       return;\r
-}\r
-\r
-function WritePopupMenuLayer()\r
-{\r
-       if (BsscHasExtJs()) {_WritePopupMenuLayer();}\r
-}\r
-\r
-function BSSCPopup(strURL, width, height)\r
-{\r
-       var re = new RegExp("'", 'g');\r
-       strURL = strURL.replace(re, "%27");\r
-\r
-       if (BsscHasExtJs())     { \r
-               _BSSCPopup(strURL, width, height);\r
-       }else{\r
-               //Create a temporary window first to ensure the real popup comes up on top\r
-               var wndTemp = null;\r
-               if (!gbBsNS3) {\r
-                       wndTemp = window.open("", "temp", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=3,width=4");\r
-               }\r
-               // Create the real popup window\r
-               var wndPopup = window.open(strURL, "BSSCPopup", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=300,width=400");\r
-               // Close the temporary\r
-               if (!gbBsNS3) {\r
-                       wndTemp.close();\r
-               } else {\r
-                       wndPopup.focus();\r
-               }\r
-       }\r
-}\r
-\r
-var gbWndTemp = null, gbWndPopupLinks = null;\r
-var gbstrParaTotal = "";\r
-\r
-function PopupMenu_Invoke()\r
-{\r
-       if (typeof(wfRelatedTopic) == 'function' && typeof(IsFlashSupported) == 'function')\r
-       {\r
-               if (Number(gsSkinVersion) > 2 && IsFlashSupported())\r
-               {\r
-                       return wfRelatedTopic(PopupMenu_Invoke.arguments);\r
-               }\r
-       }\r
-       if (BsscHasExtJs()) {\r
-               return _PopupMenu_Invoke(PopupMenu_Invoke.arguments);\r
-       }\r
-       if (gbBsNS3Before || gbBsIE3Before )    {\r
-               var argLen      = PopupMenu_Invoke.arguments.length;\r
-               if (argLen < 5) {\r
-                       window.document.location.href = PopupMenu_Invoke.arguments[3];\r
-                       return false;\r
-               }\r
-               gbWndTemp = null;\r
-               gbWndPopupLinks = null;\r
-               gbstrParaTotal = "";\r
-               for (var i = 0; i < (argLen - 2) / 2; i++) {\r
-                       var strParaLine = "";\r
-                       if (gbBsNS2){\r
-                               strParaLine += "<a href=\"";\r
-                               strParaLine += PopupMenu_Invoke.arguments[2 * i + 3];\r
-                               strParaLine += "\">"\r
-                               strParaLine += PopupMenu_Invoke.arguments[2 * i + 2];\r
-                               strParaLine += "</a>";\r
-                       } else {\r
-                               strParaLine += "<a href=\"javascript:";\r
-                               strParaLine += "gotoUrl(\'";\r
-                               strParaLine += PopupMenu_Invoke.arguments[2 * i + 3];\r
-                               strParaLine += "\');\"";\r
-                               if (PopupMenu_Invoke.arguments[1] != '') {\r
-                                       strParaLine += " TARGET='" + PopupMenu_Invoke.arguments[1] + "'";\r
-                               }\r
-                               strParaLine += ">";\r
-                               strParaLine += PopupMenu_Invoke.arguments[2 * i + 2];\r
-                               strParaLine += "</a>";\r
-                       }\r
-                       strParaLine += "<br>";\r
-                       gbstrParaTotal += strParaLine;\r
-               }\r
-               var nHeight = argLen * 15;\r
-               var nWidth = 400;\r
-               var strParam = "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=auto";\r
-               strParam += ",height=" + nHeight + ",width=200,resizable";\r
-               \r
-               //Create a temporary window first to ensure the real popup comes up on top\r
-               //var wndTemp = null;\r
-               if (!gbBsNS3) {\r
-                       gbWndTemp = window.open("", "temp", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=3,width=4");\r
-               } \r
-               gbWndPopupLinks = window.open("", "popuplinks", strParam);\r
-\r
-               setTimeout("Wait_PopupMenuReady()", 100);\r
-       }\r
-       return true;\r
-}\r
-\r
-function Wait_PopupMenuReady() \r
-{\r
-       if (gbWndPopupLinks != null && "object" == typeof(gbWndPopupLinks.document)) {\r
-               PopupMenu_InvokeReady();\r
-       }\r
-       else \r
-               setTimeout("Wait_PopupMenuReady()", 100);\r
-}\r
-\r
-function PopupMenu_InvokeReady()\r
-{\r
-       if (gbWndPopupLinks != null) {\r
-               gbWndPopupLinks.document.open("text/html");\r
-               gbWndPopupLinks.document.write("<html><head>");\r
-               if (gbBsNS2) {\r
-                       gbWndPopupLinks.document.write("<base href=\"" + location +"\">");\r
-               } else {\r
-                       //YJ: IE301,302 and NS3.x works fine\r
-                       gbWndPopupLinks.document.write("<");\r
-                       gbWndPopupLinks.document.write("script>");\r
-                       gbWndPopupLinks.document.write("function gotoUrl(aUrl) {opener.window.location=aUrl; close();}");\r
-                       gbWndPopupLinks.document.write("<");\r
-                       gbWndPopupLinks.document.write("/script>");\r
-               }\r
-               gbWndPopupLinks.document.write("</head><body onBlur=\'self.focus();\'>");\r
-               gbWndPopupLinks.document.write(gbstrParaTotal);\r
-               gbWndPopupLinks.document.write("</body></html>");\r
-               gbWndPopupLinks.document.close();\r
-\r
-               // Close the temporary\r
-               if (!gbBsNS3 && gbWndTemp != null) {\r
-                       gbWndTemp.close();\r
-               }else {\r
-                       gbWndPopupLinks.focus();\r
-               }\r
-\r
-               return true;\r
-       }\r
-       return false;\r
-}\r
-\r
-/// Section End - Embedded Stub (JavaScript 1.0)\r
-\r
-//// Segment End -- (JavaScript 1.0)\r
-\r
-//// Segment Begin -- (JavaScript 1.2)\r
-/// Section Begin  - kadov DHTM (JavaScript 1.2)\r
-\r
-//Begin to support extended and dropdown text effects.\r
-function kadovIsParagraph(el)\r
-{\r
-       return( el.tagName == "P" || el.tagName.indexOf("H") == 0 ) ? true : false;\r
-}\r
-\r
-function kadovInitEachChild(el)\r
-{      \r
-       for(var i=0; i<getChildNodes(el).length; i++)\r
-       {\r
-               var child = getChildNodes(el)[i];\r
-               if( child.tagName == "SCRIPT" || child.tagName == "!" )\r
-                       continue;\r
-\r
-               if( child.id != "" )\r
-               {\r
-                       // to wipe out the onload effects\r
-                       if (gbBsIE4&&!gbBsMac)\r
-                       {\r
-                               var onLoadEffect = child.style.getAttribute( "x-on-pageload" );\r
-                               if( (onLoadEffect != null) && (onLoadEffect > "") )\r
-                                       child.style.setAttribute( "x-on-pageload", "" );\r
-                       }\r
-                       \r
-                       var href = child.getAttribute("href")\r
-                       if( href != null && href > "" && href.indexOf( "BSSCPopup" ) >= 0 )\r
-                               kadovFilePopupInit(child.id); // Init for Popup\r
-                       else if( child.className == "dropspot" || child.className == "expandspot" || \r
-                                        child.className == "glossterm" )\r
-                               kadovTextPopupInit(child.id);// Init for Expanding/Glossary or DropDown text\r
-                       else if( child.className == "trigger")\r
-                               kadovInitTrigger(child.id);// Init for Trigger\r
-                       else\r
-                       {\r
-                               kadovInitEffects(child.id);// Init for DHTML effects\r
-                               CEngine.SetOneTargetInitialState( child.id );\r
-                       }\r
-               }\r
-               \r
-               if( (child.tagName == "IMG") && (child.getAttribute("dynsrc") > "") )\r
-                       child.start = "mouseover";// to start a AVI file. fileopen doesn't work\r
-\r
-               kadovInitEachChild(child);\r
-       }\r
-}\r
-\r
-function kadovRetrieveTextInner(el)\r
-{      \r
-       var x = "";\r
-       if( (!el) || (el.tagName == "!") || (el.tagName == "SCRIPT" ))\r
-               return x;\r
-\r
-       if( kadovIsParagraph(el) )\r
-       {\r
-               var strNewID = " ";\r
-               if( el.id != "" )\r
-                       strNewID += "id=" + el.id + "_NewSpan ";\r
-               x = "<span" + strNewID + "style='" + el.style.cssText + "'>" + el.innerHTML + "</span>";\r
-       }\r
-       else\r
-       {\r
-               for(var i=0; i<getChildNodes(el).length; i++)\r
-                       x += kadovRetrieveTextInner( getChildNodes(el)[i] );\r
-       }\r
-       return x;\r
-}\r
-\r
-function kadovRetrieveCleanHTML( strRawHTML, strTagOpen, strTagClose, nDistance )\r
-{      \r
-       var nTagOpen = strRawHTML.indexOf( strTagOpen, 0 );\r
-       if( nTagOpen < 0 )\r
-               return strRawHTML;\r
-\r
-       var nTagClose = strRawHTML.indexOf( strTagClose, nTagOpen);\r
-       if( nTagClose < nTagOpen )\r
-               return strRawHTML;\r
-               \r
-       if( typeof(nDistance) == "number" && nDistance > 0 )\r
-               if( (nTagClose - nTagOpen) != nDistance )\r
-                       return strRawHTML;\r
-               \r
-       var strCleanOnce = strRawHTML.substring(0, nTagOpen) + strRawHTML.substr(nTagClose + strTagClose.length) ;\r
-       return  kadovRetrieveCleanHTML( strCleanOnce, strTagOpen, strTagClose );\r
-}\r
-\r
-function kadovAdjustObjectTag(strRawHTML, nStartPos)\r
-{// adjust object tag for related topics HTML control, because innerHTML misses out the item settings\r
-       \r
-       //Is there any DTC?\r
-       var strDTCTagOpen = '<!--Metadata type="DesignerControl" startspan';\r
-       var strDTCTagClose = '<!--Metadata type="DesignerControl" endspan-->';\r
-       var nDTCTagOpen = strRawHTML.indexOf( strDTCTagOpen, nStartPos );\r
-       if( nDTCTagOpen < 0 )\r
-               return strRawHTML;\r
-       var nDTCTagClose = strRawHTML.indexOf( strDTCTagClose, nDTCTagOpen );\r
-       if( nDTCTagClose < nDTCTagOpen)\r
-               return strRawHTML; // no Design Time Controls;\r
-               \r
-       //Is the DTC HTML Help Control?\r
-       var strRTObjTagOpen = 'classid=clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11';\r
-       var strRTObjTagClose = '</OBJECT>';\r
-       var nRTObjTagOpen = strRawHTML.indexOf( strRTObjTagOpen, nDTCTagOpen );\r
-       if( nRTObjTagOpen < nDTCTagOpen )\r
-               return strRawHTML;\r
-       var nRTObjTagClose = strRawHTML.indexOf( strRTObjTagClose, nRTObjTagOpen );\r
-       if( nRTObjTagClose < nRTObjTagOpen )\r
-               return strRawHTML; // is not a HTML help control\r
-               \r
-       // Is it a related Topics html help control?\r
-       var strRTObjLabel = '<PARAM NAME=\"Command\" VALUE=\"Related Topics';\r
-       if( strRawHTML.indexOf(strRTObjLabel, nRTObjTagOpen) < 0 )\r
-               return strRawHTML;\r
-       \r
-       // does the commented object tag contain a items parameters             \r
-       var strRTItemsOpen = '<param name="Items" value="';\r
-       var strRTItemsClose = '$$**$$" >';\r
-       var strRTItemsClose2 = '$$**$$">';\r
-\r
-       var nRTItemsOpen = strRawHTML.indexOf(strRTItemsOpen, nDTCTagOpen);\r
-       if( nRTItemsOpen < nDTCTagOpen )\r
-               return strRawHTML;\r
-       var nRTItemsClose = strRawHTML.indexOf(strRTItemsClose, nRTItemsOpen);\r
-       if (nRTItemsClose == -1)\r
-               nRTItemsClose = strRawHTML.indexOf(strRTItemsClose2, nRTItemsOpen);\r
-       if( nRTItemsClose < nRTItemsOpen )\r
-               return strRawHTML;\r
-               \r
-       // found a items string\r
-       var strItems = strRawHTML.substring( nRTItemsOpen + strRTItemsOpen.length, nRTItemsClose);\r
-       if( strItems.length < 1 )\r
-               return strRawHTML;\r
-       \r
-       // to reconstruct the item(s) param tag(s)\r
-       var strItemsArray = strItems.split('$$**$$');\r
-       if( strItemsArray.length < 1 )\r
-               return strRawHTML;\r
-       var strRunTimeItemParam = "";\r
-       for( var i = 0; i < strItemsArray.length; i++ )\r
-       {\r
-               strRunTimeItemParam += '<PARAM  NAME="Item' + (i+1);\r
-               strRunTimeItemParam += '"' + '  VALUE="';\r
-               strRunTimeItemParam += strItemsArray[i];\r
-               strRunTimeItemParam += '">';\r
-       }\r
-       \r
-       // to insert the reconstructed item params into runtime object tag\r
-       var strAdjustedHTML = strRawHTML.substring(0,nRTObjTagClose) + strRunTimeItemParam + strRawHTML.substring(nRTObjTagClose, strRawHTML.length);\r
-       return kadovAdjustObjectTag(strAdjustedHTML, nDTCTagClose + strDTCTagClose.length);\r
-}\r
-\r
-function kadovTextPopupOnLoad( el )\r
-{\r
-       if( typeof(el) == "string" )\r
-               el = getElement(el);\r
-\r
-       var src = el.getAttribute( "x-use-popup" );\r
-       var bNeedMove=true;\r
-       if(!src&&el.id)\r
-       {\r
-               for (var i=0;i<gPopupData.length;i++)\r
-                       if (gPopupData[i].el==el.id)\r
-                       {\r
-                               src=gPopupData[i].popupId;\r
-                               bNeedMove=false;\r
-                               break;\r
-                       }\r
-       }\r
-       if(!src)\r
-               src = el.style.getAttribute( "x-use-popup" );   \r
-       if (!src)       \r
-               return 0;\r
-\r
-       var name = src;\r
-       if( src.substr(0,1) == "#" ) \r
-               name = src.substr(1, src.length-1);\r
-       var srcDiv = getElement(name);\r
-       if( !srcDiv )\r
-               return 1;\r
-\r
-       if (bNeedMove)\r
-       {\r
-               var type = el.getAttribute( "x-popup-type" );\r
-               if (!type)\r
-                       type = el.style.getAttribute("x-popup-type");\r
-               if (!type)              \r
-                       return 1;               \r
-               var setup = el.getAttribute( "x-tmp-setup" );\r
-               var newId = name;\r
-               if( newId.indexOf( "_tmp") <= 0 )\r
-                       newId += "_tmp";\r
-\r
-               if( !setup)\r
-               {\r
-                       el.setAttribute( "x-tmp-setup", 1 );\r
-\r
-                       if( type == "pulldown"  )\r
-                       {\r
-                               var strAdjust = kadovAdjustObjectTag(srcDiv.innerHTML,0);\r
-                               var strCleanHTML = kadovRetrieveCleanHTML(strAdjust, "<!--", "-->");\r
-                               strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, "<SCRIPT", "/SCRIPT>");\r
-                               \r
-                               //work around the bug in HH.exe that highlight the phrases when use Search tab\r
-                               //this approach is just removing the <FONT...> tag inserted by Microsoft in the runtime\r
-                               strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, "<FONT color=#", "\">", 52);\r
-                               \r
-                               var strStyle = " style='display:none; position:relative;";\r
-                               var newDiv = "<div class=droptext id=" + newId + strStyle + "'>" + strCleanHTML + "</div>";\r
-\r
-                               removeThis(srcDiv); // empty the original DIV tag\r
-                               var elParentPra = kadovFindParentParagraph(el);\r
-                               if( elParentPra )\r
-                                       insertAdjacentHTML(elParentPra, "afterEnd", newDiv );\r
-                       }\r
-                       else if( type == "expanding"  )\r
-                       {\r
-                               var inner = kadovRetrieveTextInner(srcDiv);\r
-                               if( inner == "" )\r
-                                       inner = srcDiv.innerHTML;\r
-                               var strAdjust = kadovAdjustObjectTag(inner,0);\r
-                               var strCleanHTML = kadovRetrieveCleanHTML(strAdjust, "<!--", "-->");\r
-                               strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, "<SCRIPT", "/SCRIPT>");\r
-                               var strClassName = (el.className == "glossterm") ? "glosstext" : "expandtext";\r
-                               var newSpan = "<span class=" + strClassName + " style='display: none;' id=" + newId + ">&nbsp;" + strCleanHTML + "</span>";\r
-                               removeThis(srcDiv); // empty the original DIV tag\r
-                               insertAdjacentHTML(el, "afterEnd", newSpan );\r
-                       }\r
-               }\r
-       }\r
-       else\r
-       {\r
-               srcDiv.style.display = "none";\r
-       }\r
-       return 0;\r
-}\r
-\r
-function getElementsByTag(obj,sTagName)\r
-{\r
-       if(obj.getElementsByTagName)\r
-               return obj.getElementsByTagName(sTagName);\r
-       else if(obj.all)\r
-               return obj.all.tags(sTagName);\r
-       return null;\r
-}\r
-\r
-function getElement(sID)\r
-{\r
-       if(document.getElementById)\r
-               return document.getElementById(sID);\r
-       else if(document.all)\r
-               return document.all(sID);\r
-       return null;\r
-}\r
-\r
-function getParentNode(obj)\r
-{\r
-       if(obj.parentNode)\r
-               return obj.parentNode;\r
-       else if(obj.parentElement)\r
-               return obj.parentElement;\r
-       return null;\r
-}\r
-\r
-function getChildNodes(obj)\r
-{\r
-       if(obj.childNodes)\r
-       {\r
-               var children = new Array();\r
-               for (var i = 0; i < obj.childNodes.length; i++)\r
-               {\r
-                       if (obj.childNodes[i].nodeType == 1)\r
-                               children[children.length] = obj.childNodes[i];\r
-               }\r
-               return children;\r
-       }\r
-       else if(obj.children)\r
-               return obj.children;\r
-       return null;    \r
-}\r
-\r
-function removeThis(obj)\r
-{\r
-       if(obj.parentNode)\r
-               obj.parentNode.removeChild(obj);\r
-       else\r
-               obj.outerHTML="";\r
-}\r
-\r
-function kadovTextPopup( el )\r
-{\r
-       if (!gbBsIE4 && !gbBsOpera7 && !gbBsSafari && !gbBsNS6 && !gbBsKonqueror3 )\r
-               return;\r
-\r
-       var bNeedMove=true;\r
-       \r
-       if (window.event)\r
-               window.event.cancelBubble = true;\r
-\r
-       if( typeof(el) == "string" )\r
-               el = getElement(el);\r
-\r
-       if (!el||el==window)\r
-               return;\r
-       \r
-       var src = el.getAttribute( "x-use-popup" );\r
-       if(!src&&el.id)\r
-       {\r
-               for (var i=0;i<gPopupData.length;i++)\r
-                       if (gPopupData[i].el==el.id)\r
-                       {\r
-                               src=gPopupData[i].popupId;\r
-                               bNeedMove=false;\r
-                               break;\r
-                       }\r
-       }\r
-       if(!src)\r
-               src = el.style.getAttribute( "x-use-popup" );   \r
-       if(!src)\r
-               return;\r
-               \r
-       var name = src;\r
-       if( src.substr(0,1) == "#" ) \r
-       if (bNeedMove)\r
-               name = src.substr(1, src.length-1) + "_tmp";\r
-       else\r
-               name = src.substr(1, src.length-1);\r
-\r
-       var srcDiv = getElement(name);\r
-       if( !srcDiv )\r
-               return;\r
-\r
-       if( srcDiv )\r
-       {\r
-               if( srcDiv.style.display == "" )\r
-                       srcDiv.style.display = "none";\r
-               else\r
-               {\r
-                       srcDiv.style.display = "";\r
-                       if( typeof(srcDiv.bInitialized) == "undefined" )\r
-                       {\r
-                               srcDiv.bInitialized = true;\r
-                               kadovInitEffects(name);\r
-                               kadovInitEachChild(srcDiv);\r
-                       }\r
-               }\r
-       }\r
-       if(gbBsIE4)\r
-               event.returnValue=false;\r
-       return;\r
-}\r
-\r
-function kadovFindParentParagraph( el )\r
-{\r
-       if( typeof(el) == "string" )\r
-               el = getElement(el);\r
-       if( (!el) || el.tagName == "BODY" )\r
-               return null;\r
-       if( kadovIsParagraph(getParentNode(el)) )\r
-               return getParentNode(el);\r
-       else\r
-               return kadovFindParentParagraph( getParentNode(el) );\r
-}\r
-\r
-//Begin HTML code invoked function\r
-function kadovRegisterEventHandler( obj, strEvent, strEventHandler )\r
-{\r
-       if( !gbBsIE4 )\r
-               return;\r
-       CCSSP.RegisterEventHandler( obj, strEvent, strEventHandler );\r
-}\r
-\r
-function textPopupData(el, popupId)\r
-{\r
-       this.el = el;\r
-       this.popupId = "#"+popupId;\r
-}\r
-\r
-var gPopupData = new Array();\r
-\r
-function kadovTextPopupInit( el, popupId)\r
-{\r
-       if (!gbBsIE4 && !gbBsOpera7 && !gbBsSafari && !gbBsNS6 && !gbBsKonqueror3)\r
-               return;\r
-               \r
-       if( typeof(el) == "string" )\r
-       {\r
-               if (popupId)\r
-               {\r
-                       gPopupData[gPopupData.length]=new textPopupData(el, popupId);\r
-               }\r
-               el = getElement(el);\r
-       }\r
-               \r
-       if( el != null )\r
-       {\r
-               CCSSP.RegisterEventHandler( el, "onclick", "kadovTextPopup(\"" + el.id +"\");" );\r
-               CCSSP.RegisterEventHandler( window, "onload", "kadovTextPopupOnLoad(\"" + el.id +"\");" );\r
-       }\r
-}\r
-//End HTML code invoked function\r
-\r
-//End to support extended and dropdown text effects.\r
-\r
-//Begin to convert iWrite format to RoboEditor Format for DHTML effects\r
-function kadovInitTriggersInHead( )\r
-{\r
-  if( Object.xDelayedInitElements )\r
-  {\r
-     var x = Object.xDelayedInitElements;\r
-     for(i=0; i<x.length; i++)\r
-       kadovInitTrigger( x[i] );\r
-  }\r
-}\r
-\r
-//Begin HTML code invoked function\r
-function kadovFilePopupInit( el )\r
-{\r
-       if( typeof(el) == "string" )\r
-               el = getElement(el);\r
-\r
-       if( el != null )\r
-               CCSSP.RegisterEventHandler( el, "onmouseover", "BSPSPopupOnMouseOver(event);" );\r
-}\r
-\r
-function kadovInitTrigger( element )\r
-{\r
-       if( !gbBsIE4 )\r
-               return;\r
-       var srcElement = element;\r
-       if( typeof(srcElement) == "string" )\r
-       {\r
-               srcElement = getElement(element,0);\r
-               if(srcElement == null)\r
-                       return;\r
-       }\r
-       \r
-       if( !kadovIsParentVisible(srcElement) )\r
-               return;\r
-\r
-       var targets = srcElement.getAttribute( "x-targets" );\r
-       if (!targets)\r
-               targets = srcElement.style.getAttribute("x-targets");\r
-       if (!targets)\r
-               return; \r
-       var arrOneTarget = targets.split( "," );\r
-       for( var i = 0; i < arrOneTarget.length; i ++ )\r
-               bsscFXInit( element, arrOneTarget[i], null, null, null, null );\r
-}\r
-\r
-function kadovIsParentVisible( el )\r
-{\r
-       if( typeof(el) == "string" )\r
-               el = getElement(el);\r
-       if( (!el) || el.tagName == "BODY" )\r
-               return true;\r
-       if( el.style.display == 'none' ) //el.visibility == 'hidden' || \r
-               return false;\r
-       else\r
-               return kadovIsParentVisible( getParentNode(el) );\r
-}\r
-\r
-function kadovInitEffects( element )\r
-{\r
-       if( !gbBsIE4 )\r
-               return;\r
-       var srcElement = element;\r
-       if( typeof(srcElement) == "string" )\r
-       {\r
-               srcElement = getElement(element,0);\r
-               if(srcElement == null)\r
-                       return;\r
-       }\r
-       \r
-       if( !kadovIsParentVisible(srcElement) )\r
-               return;\r
-       \r
-       kadovInitEffect( srcElement, "x-on-hover" );\r
-       kadovInitEffect( srcElement, "x-on-pageclick" );\r
-       kadovInitEffect( srcElement, "x-on-pageload" );\r
-       kadovInitEffect( srcElement, "x-on-trigger-1" );\r
-       kadovInitEffect( srcElement, "x-on-trigger-2" );\r
-}\r
-//End HTML code invoked function\r
-\r
-function kadovInitEffect( element, prop )\r
-{\r
-       var values = null;\r
-       if( element.getAttribute( "currentStyle" )  && element.currentStyle.getAttribute)\r
-               values = element.currentStyle.getAttribute( prop );\r
-       else  if (element.style.getAttribute)\r
-               values = element.style.getAttribute( prop );\r
-       if( !values )\r
-               return;\r
-\r
-       var functions = new Array();\r
-       var nIdx = 0, nStart = 0;\r
-       var nNext = values.indexOf( "\)", 0);\r
-       while( nNext >= 0 && nNext < values.length )\r
-       {\r
-               functions[nIdx] = values.substr( nStart, nNext-nStart+1);\r
-               nStart = nNext + 1;\r
-               nIdx++;\r
-               nNext = values.indexOf( "\)", nStart);\r
-       }\r
-               \r
-       for( var i=0; i<functions.length; i++)\r
-       {\r
-               var id = element.getAttribute( "id" );\r
-               var translatedProp = kadovTranslateProp(prop);\r
-\r
-               var lp = functions[i].indexOf( "(" );\r
-               var fnname = functions[i].substring(0, lp);\r
-               var srcargs = functions[i].substring(lp+1, functions[i].length-1);\r
-               \r
-               var nClickTimes = 1;\r
-               var arrForClickCount = srcargs.split( "," );\r
-               for( var j = 0; j < arrForClickCount.length; j++ )\r
-               {// to locate and get the "clicks=99" settings\r
-                       var nPageClick = arrForClickCount[j].indexOf("clicks");\r
-                       if( nPageClick >= 0 )\r
-                       {\r
-                               nPageClick = arrForClickCount[j].indexOf("=");\r
-                               if( nPageClick > 0 )\r
-                               {\r
-                                       nClickTimes = arrForClickCount[j].substring( nPageClick + 1, arrForClickCount[j].length) * 1;\r
-                                       break;\r
-                               }\r
-                       }\r
-               }\r
-               var args = srcargs;\r
-               if( j < arrForClickCount.length )\r
-               {// to strip out the "clicks=99" from the arguments string\r
-                       args = "";\r
-                       for( var k = 0; k < arrForClickCount.length; k ++ )\r
-                       {\r
-                               if( k != j )\r
-                               {\r
-                                       args += arrForClickCount[k];\r
-                                       if( k < arrForClickCount.length - 1 )\r
-                                               args += ",";\r
-                               }\r
-                       }\r
-               }\r
-               bsscFXInit( null, id, translatedProp, fnname, args, nClickTimes );\r
-       }\r
-}\r
-\r
-function kadovTranslateProp( prop )\r
-{\r
-       switch( prop )\r
-       {\r
-       case "x-on-hover" :     return "bsschover";\r
-       case "x-on-pageclick" : return "bsscpageclick";\r
-       case "x-on-pageload" :  return "bsscpageload";\r
-       case "x-on-trigger-1" : return "bssctrigger1";\r
-       case "x-on-trigger-2" : return "bssctrigger2";\r
-       }\r
-       return null;\r
-}\r
-//End to convert iWrite format to RoboEditor Format for DHTML effects\r
-\r
-//Begin the definition of one entry to DHTML effects\r
-function bsscFXInit( trigger_ID, target_ID, event_type, \r
-       action_type, action_setting, event_addional )\r
-{\r
-       if( (!gbBsWindows && !gbBsSunOS  && !(gbBsMac&&gbBsIE5)) || typeof(target_ID) != "string" )//MUST have a target_ID\r
-               return; // we don't support Navigator yet\r
-       \r
-       if( typeof(event_type) == "string" )\r
-               event_type = event_type.toLowerCase();\r
-       if( typeof(action_type) == "string" )\r
-               action_type = action_type.toLowerCase();\r
-       if( typeof(action_setting) == "string" )\r
-                action_setting = action_setting.toLowerCase();\r
-       \r
-       // to get the target element then add it to the target list\r
-       var eleTarget = CCSSP.GetObject( target_ID );\r
-       if( (eleTarget != null) && (event_type != null) && (action_type != null) )\r
-       {\r
-               CEngine.AddOneTarget( target_ID, eleTarget );\r
-               CEngine.BuildTargetObject(target_ID, event_type, action_type, action_setting, event_addional);\r
-       }\r
-       \r
-       // to validate the trigger_ID parameter\r
-       if( typeof(trigger_ID) == "string" && trigger_ID != "" )\r
-               CEngine.BuildTriggerObject( trigger_ID, target_ID );\r
-}      \r
-//End the definition of one entry to DHTML effects\r
-\r
-/// Section End  - kadov DHTM (JavaScript 1.2)\r
-\r
-/// Section Begin  - CCSSP DHTM (JavaScript 1.2)\r
-\r
-//Begin JavaScript libary for cross-platform positioning object.\r
-function CCSSP(){} // constructor of CCSSP class\r
-\r
-CCSSP.GetObject = function( obj )\r
-{//convert object name string or reference into a valid object reference\r
-       if( typeof(obj) == "object" )\r
-               return obj;\r
-       else if( typeof(obj) == "string" && obj != "")\r
-       {\r
-               if( gbBsNS4 )\r
-                       return eval("document." + obj);\r
-               else\r
-                       return eval("document.all(\"" + obj + "\")");\r
-       }\r
-       else\r
-               return null;\r
-}\r
-\r
-CCSSP.MoveObjectTo = function(obj, x, y)\r
-{//positioning an object at a specific pixel coordinate\r
-       if( gbBsNS4 )\r
-               obj.moveTo(x,y);\r
-       else\r
-       {\r
-               obj.style.pixelLeft = x;\r
-               obj.style.pixelTop = y;\r
-       }\r
-}\r
-\r
-CCSSP.MoveObjectBy = function(obj, dx, dy)\r
-{//moveing a object by x and/or y pixel\r
-       if( gbBsNS4 )\r
-               obj.moveBy(dx,dy);\r
-       else\r
-       {\r
-               obj.style.pixelLeft += dx;\r
-               obj.style.pixelTop += dy;\r
-       }\r
-}\r
-\r
-CCSSP.SetObjectBGColor = function(obj, color)\r
-{//set the background color of an object\r
-       if( gbBsNS4 )\r
-               obj.bgColor = color;\r
-       else\r
-               obj.style.backgroundColor = color;\r
-}\r
-\r
-CCSSP.ShowObject = function(obj, bShow)\r
-{// set the object to be visible or invisible\r
-       if( gbBsNS4 )\r
-               obj.visibility = (bShow == true) ? 'show' : 'hide';\r
-       else\r
-               obj.style.visibility = (bShow == true) ? 'visible' : 'hidden';// when hidden, it still occupy some space.\r
-}\r
-\r
-CCSSP.GetObjectLeft = function(obj)\r
-{// retrieve the x coordinate of a posionable object\r
-       if( gbBsNS4 )\r
-               return obj.left;\r
-       else\r
-               return obj.style.pixelLeft;\r
-}\r
-\r
-CCSSP.GetObjectTop = function(obj)\r
-{// retrieve the y coordinate of a posionable object\r
-       if( gbBsNS4 )\r
-               return obj.top;\r
-       else\r
-               return obj.style.pixelTop;\r
-}\r
-\r
-CCSSP.GetObjectContainLeft = function(obj)\r
-{// retrieve the x coordinate of a posionable object relative to it's parent element\r
-       if( gbBsNS4 )\r
-               return obj.pageX;\r
-       else\r
-       {\r
-               if( obj == document.body )\r
-                       return obj.clientLeft;\r
-               else\r
-                       return obj.offsetLeft;\r
-       }\r
-}\r
-\r
-CCSSP.GetObjectWindowLeft = function(obj)\r
-{// retrieve the x coordinate of a posionable object relative to browser window\r
-       if( gbBsNS4 )\r
-               return obj.pageX;\r
-       else\r
-       {\r
-               var nOffsetWindowLeft = 0;\r
-               for(var element = obj; element; element = element.offsetParent)\r
-                       nOffsetWindowLeft += CCSSP.GetObjectContainLeft(element);\r
-               return nOffsetWindowLeft;\r
-       }\r
-}\r
-\r
-CCSSP.GetObjectContainTop = function(obj)\r
-{// retrieve the y coordinate of a posionable object relative to it's parent element\r
-       if( gbBsNS4 )\r
-               return obj.pageY;\r
-       else\r
-       {\r
-               if( obj == document.body )\r
-                       return obj.clientTop;\r
-               else\r
-                       return obj.offsetTop;\r
-       }\r
-}\r
-\r
-CCSSP.GetObjectWindowTop = function(obj)\r
-{// retrieve the y coordinate of a posionable object relative to browser window\r
-       if( gbBsNS4 )\r
-               return obj.pageY;\r
-       else\r
-       {\r
-               var nOffsetWindowTop = 0;\r
-               for(var element = obj; element; element = element.offsetParent)\r
-                       nOffsetWindowTop += CCSSP.GetObjectContainTop(element);\r
-               return nOffsetWindowTop;\r
-       }\r
-}\r
-\r
-CCSSP.GetObjectHeight = function(obj)\r
-{// retrieve the height of a posionable object\r
-       if( gbBsNS4 )\r
-               return obj.clip.height;\r
-       else\r
-               return obj.offsetHeight;\r
-}\r
-\r
-CCSSP.GetObjectWidth = function(obj)\r
-{// retrieve the width of a posionable object\r
-       if( gbBsNS4 )\r
-               return obj.clip.width;\r
-       else\r
-               return obj.offsetWidth;\r
-}\r
-\r
-CCSSP.RegisterEventHandler = function( srcObj, rawEventName, funcHandler )\r
-{ // to add the "funcHandler" as the "rawEventName" 's handler to the "srcObj" object,the original event handler will be combined\r
-       if (gbBsNS4 && !gbBsNS6)\r
-               return ;\r
-               \r
-       var oldHandler = "";\r
-\r
-       if (gbBsMac &&gbBsIE4&&!gbBsIE5)\r
-       {\r
-               if (typeof(srcObj[rawEventName.toLowerCase()])=="unknown")\r
-               { //search for <SCRIPT> tag which define the event handler\r
-                       for( var i = 0; i < document.scripts.length; i++ ) \r
-                       {\r
-                               var script = document.scripts[i];\r
-                               if( (script.htmlFor == srcObj.id || script.htmlFor == srcObj ) && script.event == rawEventName )\r
-                               {\r
-                                       oldHandler = script.innerHTML;\r
-                                       break;\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-       else\r
-       {\r
-               var oldInlineHandler = srcObj[rawEventName.toLowerCase()];\r
-               if( oldInlineHandler != null && typeof(oldInlineHandler) != "undefined")\r
-               {\r
-                       var functionDefinition = oldInlineHandler.toString();\r
-                       var bodyStart = functionDefinition.indexOf( "{" );\r
-                       var bodyEnd = functionDefinition.lastIndexOf( "}" );\r
-                       if( bodyStart > 0 || bodyEnd > bodyStart )\r
-                               oldHandler = functionDefinition.substr( bodyStart + 1, bodyEnd - bodyStart - 2 );\r
-               }\r
-               else if( gbBsIE4 )\r
-               { //search for <SCRIPT> tag which define the event handler\r
-                       for( var i = 0; i < document.scripts.length; i++ ) \r
-                       {\r
-                               var script = document.scripts[i];\r
-                               if( (script.htmlFor == srcObj.id || script.htmlFor == srcObj ) && script.event == rawEventName )\r
-                               {\r
-                                       oldHandler = script.innerHTML;\r
-                                       break;\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-       if( oldHandler.indexOf(funcHandler) >= 0 )\r
-               return;// to prevent register the funtion twice.\r
-\r
-       if( gbBsNS4 ) // only "onload, onresize, onfocus" apply to window\r
-       {// other raw events will apply to layer\r
-               var noOn = rawEventName.substring(2, rawEventName.length);\r
-               if( typeof(noOn) == "string" && noOn.length > 3 ) {\r
-                       if (srcObj.captureEvents)\r
-                               srcObj.captureEvents( Event[noOn.toUpperCase()] );\r
-               }\r
-       }\r
-       \r
-       var newHandler = oldHandler;\r
-       if( newHandler.length == 0 )\r
-               newHandler = funcHandler;\r
-       else\r
-               newHandler += "; " + funcHandler;\r
-       \r
-       srcObj[rawEventName.toLowerCase()] = new Function( newHandler );\r
-}\r
-\r
-CCSSP.GetWindowHeight = function()\r
-{// retrieve the height of available content in browser window\r
-       if( gbBsNS4 )\r
-               return window.innerHeight;\r
-       else\r
-               return document.body.clientHeight;\r
-}\r
-\r
-CCSSP.GetWindowBottom = function()\r
-{// retrieve the bottom postion of browser window\r
-       if( gbBsNS4 )\r
-               return window.outerHeight + window.pageYOffset;\r
-       else\r
-               return document.body.clientHeight + document.body.scrollTop;\r
-}\r
-\r
-CCSSP.GetWindowWidth = function()\r
-{// retrieve the width of available content in browser window\r
-       if( gbBsNS4 )\r
-               return window.innerWidth;\r
-       else\r
-               return document.body.clientWidth;\r
-}\r
-\r
-CCSSP.GetWindowRight = function()\r
-{// retrieve the right postion of browser window\r
-       if( gbBsNS4 )\r
-               return window.outerWidth + window.pageXOffset;\r
-       else\r
-               return document.body.clientWidth + document.body.scrollLeft;\r
-}\r
-\r
-CCSSP.TrimString = function( objString, subtrim )\r
-{// to trim the "subtrim" in the beginning and ending of a string object\r
-       if( typeof(subtrim) != "string" || subtrim == null )\r
-               return objString;\r
-       var strHead = objString.substring(0, 1);\r
-       var strRear = objString.substring(objString.length-1, objString.length);\r
-       if( strHead != subtrim && strRear != subtrim )\r
-               return objString;\r
-       \r
-       var spacePos = objString.indexOf(subtrim);\r
-       if( spacePos < 0 )\r
-               return objString;\r
-       else if( spacePos == objString.length - 1 )\r
-               return objString.substring(0, spacePos);\r
-       else\r
-       {\r
-               var newString = objString.substring( spacePos + 1, objString.length);\r
-               return CCSSP.TrimString( newString, subtrim );\r
-       }\r
-}\r
-\r
-CCSSP.TrimSpace = function( objString )\r
-{\r
-       var Trim1 = CCSSP.TrimString( objString, " ");\r
-       return CCSSP.TrimString( Trim1, "\'");\r
-}\r
-\r
-CCSSP.GetEventElement = function( navEventObject )\r
-{// to get the element who fired the current event\r
-       if(gbBsNS4) \r
-               if (gbBsNS6)\r
-                       return null;\r
-               else\r
-                        navEventObject.target;\r
-       else\r
-               return event.srcElement;\r
-}\r
-\r
-CCSSP.PrepareFilter = function( Obj )\r
-{//to prepare for making the filter work\r
-       Obj.style.filter = "";\r
-       if( Obj.style.width != "" || Obj.style.height != "" || Obj.style.position == "absolute" )\r
-               return;\r
-       Obj.style.height = CCSSP.GetObjectHeight(Obj);\r
-}\r
-\r
-CCSSP.IsDescendant = function( progenitor, progeny )\r
-{\r
-       if( typeof(progeny) == "undefined" || progeny == null )\r
-               return false;\r
-       else if( progeny == progenitor )\r
-               return true; \r
-       else if( progeny.id == progenitor.id ) \r
-               return true; \r
-       else if( getParentNode(progeny) == getParentNode(progenitor))\r
-               return false;\r
-       else\r
-               return CCSSP.IsDescendant( progenitor, getParentNode(progeny));\r
-}\r
-\r
-CCSSP.IsTextTag = function( Obj )\r
-{\r
-       if( typeof( Obj.tagName ) == "undefined" )\r
-               return false;\r
-       return( Obj.tagName.indexOf("H") == 0 || Obj.tagName == "P" || \r
-                       Obj.tagName == "FONT" || Obj.tagName == "SPAN" );\r
-}\r
-\r
-//End JavaScript libary for cross-platform positioning object.\r
-\r
-/// Section End  - CCSSP DHTM (JavaScript 1.2)\r
-\r
-/// Section Begin  - CCSSP DHTM 1 (JavaScript 1.2)\r
-\r
-//Begin the definition of class CTrigger\r
-function CTrigger( TriggerElement )\r
-{\r
-       // object : the trigger element. Never be null. \r
-       this.eleTrigger = TriggerElement;\r
-       \r
-       // number : the click counter number: only 3 values: 0,1,2;\r
-       this.nCounter = 0; \r
-       \r
-       //object as associative array of string:\r
-       // the associate target ID strings; one element at least.                       \r
-       this.objStrTarget = new Object();\r
-       this.eleTrigger.style.cursor = "hand";\r
-       if( this.eleTrigger.tagName == "AREA" && this.eleTrigger.getAttribute("href") == "" )\r
-               this.eleTrigger.setAttribute("href", "#") // to make a hand cursor for image map\r
-}\r
-\r
-CTrigger.prototype.AddTargetID = function( strTargetID )\r
-{// add one target ID string to the objStrTarget\r
-       if( typeof(strTargetID) != "string" )\r
-               return ;\r
-       if( typeof(this.objStrTarget[strTargetID]) != "string" )\r
-               this.objStrTarget[strTargetID] = strTargetID;\r
-}\r
-\r
-CTrigger.prototype.OnTriggerClick = function()\r
-{// to activate all asociated target\r
-       var strEventType = ( (this.nCounter++)% 2 == 0 ) ? \r
-               "bssctrigger1" : "bssctrigger2";\r
-               \r
-       // to enumerate associative target element's ID string\r
-       for( var strTargetID in this.objStrTarget ) \r
-               CEngine.SendEventToOneTarget( strTargetID, strEventType );\r
-}\r
-//End the definition of class CTrigger\r
-\r
-//Begin the definition of class CTarget\r
-function CTarget( TargetElement )\r
-{\r
-       // object : the target element. Never be null.\r
-       this.eleTarget = TargetElement;\r
-       this.objManager = new Object(); // object: the event manager\r
-} \r
-\r
-CTarget.nPageClickCounter = 0;// static class property.\r
-\r
-CTarget.prototype.GetAgencyObject = function(str_action_type,action_setting )\r
-{// return the action agency ( effect )object's refernece \r
-       switch( str_action_type )\r
-       {\r
-       case "show":return new CAgencyShow( this.eleTarget, true ) ;\r
-       case "hide":return new CAgencyShow( this.eleTarget, false ) ;\r
-\r
-    case "flyin" : \r
-       return new CAgencyFly(this.eleTarget, action_setting, true);\r
-    case "flyout" : \r
-       return new CAgencyFly(this.eleTarget, action_setting, false);\r
-    case "spiralin" : \r
-       return new CAgencySpiral(this.eleTarget, action_setting, true);\r
-    case "spiralout" : \r
-       return new CAgencySpiral(this.eleTarget, action_setting, false);\r
-    case "zoomin" :\r
-       return new CAgencyZoom(this.eleTarget, action_setting, true);\r
-    case "zoomout" : \r
-       return new CAgencyZoom(this.eleTarget, action_setting, false);\r
-    case "elastic" : \r
-               return new CAgencyElastic(this.eleTarget, action_setting);\r
-               \r
-    case "fadein" : \r
-       return (gbBsIE4)? new CAgencyAlpha(this.eleTarget, action_setting, true) : null;\r
-    case "fadeout" :\r
-       return (gbBsIE4)? new CAgencyAlpha(this.eleTarget, action_setting, false) : null;\r
-    case "rockrollstatic" :\r
-    case "rockroll" :\r
-       return (gbBsIE4)? new CAgencyWave(this.eleTarget, action_setting, false) : null;\r
\r
-    case "glow":\r
-       return (gbBsIE4)? new CAgencyGlow(this.eleTarget,action_setting) : null;\r
-    case "dropshadow":\r
-       return (gbBsIE4)? new CAgencyDropShadow(this.eleTarget,action_setting) : null;\r
-    case "transition" :\r
-       return (gbBsIE4)? new CAgencyRevealTrans(this.eleTarget,action_setting) : null;\r
-    case "blur" :\r
-       return (gbBsIE4)? new CAgencyBlur(this.eleTarget,action_setting) : null;\r
-\r
-    case "fliph" : // all these 4 do NOT need any parameters\r
-    case "flipv" :\r
-    case "invert":\r
-    case "gray" :\r
-       return (gbBsIE4)? new CAgencyChangeFilter(this.eleTarget, str_action_type) : null;\r
-    \r
-    case "fontchange": // the effects below change the style on the fly, so won't work in Navigator\r
-       return (gbBsIE4)? new CAgencyFontChange(this.eleTarget,action_setting) : null;\r
-    case "boderchange": \r
-    case "stylechange":\r
-       return (gbBsIE4)? new CAgencyChangeStyle(this.eleTarget,action_setting) : null;\r
-\r
-       default: return null;\r
-       }\r
-}\r
-\r
-CTarget.prototype.SetEventManager = function( \r
-       one_event_type,str_action_type,action_setting,event_additional)\r
-{// to set the event manager with specified action \r
-       if( typeof( one_event_type ) != "string" ||     \r
-               typeof( str_action_type ) != "string"||\r
-               typeof( action_setting ) != "string" )\r
-               return false;\r
-       if( typeof(this.objManager[one_event_type]) == "undefined" )\r
-       {\r
-               this.objManager[one_event_type] = new Object();\r
-               this.objManager[one_event_type].length = 0;\r
-       }\r
-       \r
-       var eventAgency = this.GetAgencyObject(str_action_type,action_setting);\r
-       if( eventAgency != null )\r
-       {\r
-               var ct = this.objManager[one_event_type].length ++;\r
-               this.objManager[one_event_type][ct] = eventAgency;\r
-               \r
-               if( one_event_type == "bsscpageclick" )\r
-               {// to deal with the "number of pageclick" stuff\r
-                       if( typeof(event_additional) == "number" )\r
-                               this.objManager[one_event_type][ct].nPageClick = event_additional;\r
-                       else // set the default number \r
-                               this.objManager[one_event_type][ct].nPageClick = 1;\r
-                       \r
-                       if( (typeof(this.objManager.nMinPageClickIndex) == "undefined") ||\r
-                           (this.objManager[one_event_type][ct].nPageClick < \r
-                                       this.objManager[one_event_type][this.objManager.nMinPageClickIndex].nPageClick) )\r
-                               this.objManager.nMinPageClickIndex = ct;\r
-               }\r
-               \r
-               //hide the object blindly,SetState function will take care of the final correct state\r
-               if( ((one_event_type == "bsscpageclick") && \r
-                        (this.objManager[one_event_type][ct].nPageClick == 1)) ||\r
-                       one_event_type == "bsscpageload" ||\r
-                       one_event_type == "bssctrigger1" )\r
-                       CCSSP.ShowObject( this.eleTarget, false );\r
-               \r
-               if( one_event_type == "bssctrigger1" || one_event_type == "bssctrigger2" )\r
-                       if( typeof( this.strTriggerEvent ) == "undefined" )\r
-                               this.strTriggerEvent = ( one_event_type == "bssctrigger1" ) ? "bssctrigger2" : "bssctrigger1";\r
-                       \r
-               return true;\r
-       }\r
-       return false;\r
-}\r
-\r
-CTarget.prototype.OnEvent = function( strBsscEvent )\r
-{// response to the event ( bssc format )\r
-       if( typeof(this.objManager[strBsscEvent]) == "object" )\r
-       { // to get the event agency from the event manager\r
-               var eventAgency = this.objManager[strBsscEvent];\r
-               for( var i = 0; i < eventAgency.length; i++ )\r
-               {\r
-                       if( strBsscEvent == "bsscpageclick" && \r
-                               eventAgency[i].nPageClick != CTarget.nPageClickCounter )\r
-                                continue;\r
-                       else if( strBsscEvent == "bsschover" && event.type == "mouseout" )\r
-                               eventAgency[i].EndEffect();\r
-                       else // to invoke the unified function in effect object \r
-                               eventAgency[i].UpdateEffect(); \r
-               }\r
-       }\r
-}\r
-\r
-CTarget.prototype.SetState = function( strBsscEvent )\r
-{\r
-       if( typeof(this.objManager[strBsscEvent]) != "object" )\r
-               return false;\r
-\r
-       // to get the event agency from the event manager\r
-       var eventAgency = this.objManager[strBsscEvent];\r
-       \r
-       if( strBsscEvent == "bsscpageclick" )\r
-       {// we only set the initial state for the minium number of pageclick \r
-               eventAgency[this.objManager.nMinPageClickIndex].PrepareEffect();\r
-               return true;\r
-       }\r
-       else\r
-       {\r
-               for( var i = 0; i < eventAgency.length; i++ )\r
-                       eventAgency[i].PrepareEffect(); // to invoke the unified function in effect object       \r
-               if( i > 0 )\r
-                       return true;\r
-               else\r
-                       return false;\r
-       }\r
-}\r
-//End the definition of class CTarget\r
-\r
-//Begin the definition of CEngine class\r
-function CEngine(){}// all properities are going be "class" properities\r
-\r
-// object : as associative array of trigger objects\r
-CEngine.objTrigger = new Object();\r
-// object : as associative array of target objects \r
-CEngine.objTarget = new Object(); \r
-\r
-// Array : each element is a CAgencyXXX animation object\r
-CEngine.arrAnimation = new Array();\r
-CEngine.PerformAnimation = function( nIndex )\r
-{// animation : update effects function\r
-       CEngine.arrAnimation[nIndex].UpdateEffect();\r
-}\r
-\r
-CEngine.AddOneTrigger = function(TriggerID,TriggerElement)\r
-{// add one Trigger object into the trigger array\r
-       if( typeof(TriggerID) != "string" || TriggerElement == null ||\r
-           typeof(TriggerElement) != "object" )\r
-               return;\r
-       if( typeof(CEngine.objTrigger[TriggerID] ) != "object" )\r
-               CEngine.objTrigger[TriggerID] = new CTrigger(TriggerElement);\r
-}\r
-       \r
-CEngine.AddOneTarget = function(TargetID, TargetElement)\r
-{// add one Target object into the target array\r
-       if( typeof(TargetID) != "string" || TargetElement == null ||\r
-               typeof(TargetElement) != "object" )\r
-               return;\r
-       if( typeof(CEngine.objTarget[TargetID]) != "object" )\r
-               CEngine.objTarget[TargetID] = new CTarget( TargetElement );\r
-}\r
-\r
-CEngine.SendEventToOneTarget = function(strTargetID, strBsscEvent )\r
-{// to activate one target object\r
-       if( typeof(CEngine.objTarget[strTargetID]) == "object" ) \r
-       {\r
-               if( strBsscEvent == "bssctrigger1" || strBsscEvent == "bssctrigger2" )\r
-               {//now, the "bssctrigger1" and "bssctrigger2" work like a toggle\r
-                       if( strBsscEvent == CEngine.objTarget[strTargetID].strTriggerEvent )\r
-                               strBsscEvent = (strBsscEvent == "bssctrigger1") ? "bssctrigger2" : "bssctrigger1";\r
-                       CEngine.objTarget[strTargetID].strTriggerEvent = strBsscEvent;\r
-               }\r
-               CEngine.objTarget[strTargetID].OnEvent( strBsscEvent );\r
-       }\r
-}\r
-\r
-CEngine.SendEventToAllTarget = function( strBsscEvent )\r
-{ //to activate all target associative to the BSSC event\r
-       for( var strTargetID in CEngine.objTarget ) //to enumerate all target\r
-               CEngine.SendEventToOneTarget( strTargetID, strBsscEvent );\r
-}\r
-\r
-CEngine.SetOneTargetInitialState = function( strTargetID )\r
-{// only invoked after ALL effects for the target have been set\r
-       if( typeof(CEngine.objTarget[strTargetID]) == "object" ) \r
-       {// to get target object\r
-               var objTarget = CEngine.objTarget[strTargetID];\r
-               if( objTarget.SetState( "bsscpageload" ) == false )\r
-               {\r
-                       objTarget.SetState( "bsscpageclick" );\r
-                       objTarget.SetState( "bssctrigger1" );\r
-               }\r
-       }\r
-}\r
-\r
-CEngine.AdjustPageClickCounter = function()\r
-{\r
-       var nAdjustedClickCounter = CTarget.nPageClickCounter;\r
-       var bAdjusted = false;\r
-       for( var strTargetID in CEngine.objTarget ) //to enumerate all target\r
-       {// try to find the minum pageCliclConter greater than CTarget.nPageClickCounter\r
-               var objEventPageClick = CEngine.objTarget[strTargetID].objManager.bsscpageclick;\r
-               if( objEventPageClick != null )\r
-               {\r
-                       for( var i = 0; i < objEventPageClick.length; i++ )\r
-                       {\r
-                               var nOtherPageClick = objEventPageClick[i].nPageClick;\r
-                               if( nOtherPageClick == CTarget.nPageClickCounter )\r
-                                       return;\r
-                               if( nOtherPageClick > CTarget.nPageClickCounter )\r
-                               {\r
-                                       if( !bAdjusted )\r
-                                       {\r
-                                               nAdjustedClickCounter = nOtherPageClick;\r
-                                               bAdjusted = true;\r
-                                       }\r
-                                       else if( nOtherPageClick < nAdjustedClickCounter )\r
-                                               nAdjustedClickCounter = nOtherPageClick;\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-       CTarget.nPageClickCounter = nAdjustedClickCounter;\r
-}\r
-\r
-CEngine.OnPageLoad = function()\r
-{      \r
-       // first, to set all target's initial state\r
-       for( var strTargetID in CEngine.objTarget )\r
-               CEngine.SetOneTargetInitialState( strTargetID );\r
-       \r
-       // to invoke all target's onpageload handler\r
-       CEngine.SendEventToAllTarget( "bsscpageload" );\r
-}\r
-\r
-CEngine.OnPageClick = function()\r
-{ // to invoke all target's onpageclick handler\r
-       var src = CCSSP.GetEventElement( arguments[0] );\r
-       if( src == null )\r
-               return;\r
-               \r
-       var objClickedTrigger = null;\r
-       for( var strTriggerID in CEngine.objTrigger )\r
-       { // to detect which trigger is clicked\r
-               if( CCSSP.IsDescendant( CEngine.objTrigger[strTriggerID].eleTrigger,src) )\r
-               {\r
-                       objClickedTrigger = CEngine.objTrigger[strTriggerID];\r
-                       break;\r
-               }\r
-       }\r
-       \r
-       if( objClickedTrigger != null) // the clicked trigger found\r
-               objClickedTrigger.OnTriggerClick();\r
-       else // no trigger is clicked\r
-       { // to send PageClick event to all target\r
-               CTarget.nPageClickCounter++;\r
-               CEngine.AdjustPageClickCounter();\r
-               CEngine.SendEventToAllTarget( "bsscpageclick" );\r
-       }\r
-}      \r
-\r
-CEngine.OnMouseOver = function()\r
-{ // to invoke all target's onpageload handler\r
-       var src = CCSSP.GetEventElement( arguments[0] );\r
-       if( src == null )\r
-               return;\r
-               \r
-       var strHoveredTargetID = null;\r
-       for( var strTargetID in CEngine.objTarget )\r
-       { // to detect which Target is hovering on\r
-               if( CCSSP.IsDescendant( CEngine.objTarget[strTargetID].eleTarget, src ) )\r
-           {\r
-                       strHoveredTargetID = strTargetID;\r
-                       break;\r
-           }\r
-       }\r
-       \r
-       if( strHoveredTargetID != null ) // the hovered target found\r
-               CEngine.SendEventToOneTarget( strHoveredTargetID, "bsschover" );\r
-}\r
-\r
-CEngine.BuildTargetObject = function(target_ID,event_type,action_type,\r
-                       action_setting, event_additional)\r
-{// to build target object \r
-       // to get the target object\r
-       if( typeof( CEngine.objTarget[target_ID] ) != "object" )\r
-               return false;// the engine's AddOneTarget function might have failed.\r
-       var TargetObject = CEngine.objTarget[target_ID];\r
-       \r
-       // to prepare the parameters for the event manager\r
-       var arrEvent = event_type.split("|"); // to split the combined event_type string\r
-       var arrAction = action_type.split("|");//to split the combined action_type string\r
-       for( var trim = 0; trim < arrEvent.length; trim++ )\r
-               arrEvent[trim] = CCSSP.TrimSpace(arrEvent[trim]);\r
-       \r
-       for( trim = 0; trim < arrAction.length; trim++ )\r
-               arrAction[trim] = CCSSP.TrimSpace(arrAction[trim]);\r
-       \r
-       var arrSetting = new Array(); \r
-       if( typeof(action_setting) == "string" )\r
-               arrSetting = action_setting.split("|");// to split the combined action_setting string\r
-       // to calibrate the arrays\r
-       for( var i = arrSetting.length; i < arrAction.length; i++ )\r
-       {\r
-               if( typeof(arrSetting[i]) != "string" )\r
-                        arrSetting[i] = "";\r
-       }                                \r
-\r
-       // to prepare for dealing with the absolute posioning element\r
-       TargetObject.eleTarget.ABSX = CCSSP.GetObjectLeft( TargetObject.eleTarget );\r
-       TargetObject.eleTarget.ABSY = CCSSP.GetObjectTop( TargetObject.eleTarget );\r
-\r
-       if( arrEvent.length > 1 )\r
-       {// if event is combined, it must be : "bssctrigger1 | bssctrigger2"\r
-               if( arrAction.length != 2 )\r
-                       return false; // if event is combined, there must be 2 actions\r
-               for( i = 0 ; i < 2; i++ )\r
-               {\r
-                       if( TargetObject.SetEventManager(arrEvent[i], arrAction[i], \r
-                               arrSetting[i], event_additional) == false )\r
-                               return false; // the event manager has not been set up\r
-               }\r
-       }\r
-       else // the event_type string is not combined\r
-       {\r
-               for( i = 0 ; i < arrAction.length; i++ )\r
-               {\r
-                       TargetObject.SetEventManager(event_type, arrAction[i], arrSetting[i], event_additional);\r
-                       // to validate the event manager\r
-                       if( typeof(TargetObject.objManager[event_type]) != "object" ||\r
-                                       typeof(TargetObject.objManager[event_type][i]) != "object" )\r
-                               return false; // the event manager has not been set up\r
-               }\r
-       }\r
-       return true;\r
-}\r
-\r
-CEngine.BuildTriggerObject = function(trigger_ID, target_ID)\r
-{// to build the trigger object\r
-       var arrTrigger = trigger_ID.split("|"); // to split the combined trigger_ID string\r
-       for( var i = 0; i < arrTrigger.length; i ++ )\r
-       {// to get the trigger element then add it to the trigger list\r
-               arrTrigger[i] = CCSSP.TrimSpace( arrTrigger[i] );\r
-               var eleTrigger = CCSSP.GetObject( arrTrigger[i] );\r
-               if( eleTrigger == null )\r
-                       continue; // the trigger_ID string in the HTML code maybe wrong\r
-               CEngine.AddOneTrigger( arrTrigger[i], eleTrigger );\r
-\r
-               // to get the target object\r
-               if( typeof( this.objTrigger[arrTrigger[i]] ) != "object" )\r
-                       continue;// the engine's AddOneTarget function might have failed.\r
-               CEngine.objTrigger[arrTrigger[i]].AddTargetID( target_ID );\r
-       }\r
-}\r
-//End the definition of CEngine class\r
-\r
-/// Section End  - CCSSP DHTM 1 (JavaScript 1.2)\r
-\r
-/// Section Begin  - CCSSP DHTM 2 (JavaScript 1.2)\r
-\r
-//Begin the definition of CAgencyXXXX classes\r
-\r
-//Begin of the CAgencyShow definition\r
-function CAgencyShow( element, bIsShow )\r
-{\r
-       this.ele = element;\r
-       this.bIsShow = bIsShow;\r
-}\r
-\r
-CAgencyShow.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.ShowObject( this.ele, !this.bIsShow );\r
-}\r
-\r
-CAgencyShow.prototype.UpdateEffect = function()\r
-{\r
-       CCSSP.ShowObject( this.ele, this.bIsShow );\r
-}\r
-\r
-CAgencyShow.prototype.EndEffect = function()\r
-{\r
-       CCSSP.ShowObject( this.ele, !this.bIsShow );\r
-}\r
-// End of the CAgencyShow definition\r
-\r
-// Begin of CAgencyFly definition\r
-function CAgencyFly( element, settings, bIsIn )\r
-{\r
-       this.ele = element;\r
-       this.bIsIn = bIsIn;\r
-       this.duration = 1000; // default\r
-       this.direction = "right";\r
-\r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {// to retrieve the setting\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
-               case "direction" : this.direction = arrOneSet[1]; break;\r
-               }\r
-       }\r
-               \r
-       if( gbBsIE5 && this.ele.style.position != "absolute" )\r
-               this.ele.style.position = "relative";\r
-       this.timer = null;\r
-       this.aniIndex = CEngine.arrAnimation.length;\r
-       CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencyFly.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.ShowObject(this.ele, !this.bIsIn );\r
-}\r
-\r
-CAgencyFly.prototype.UpdateEffect = function()\r
-{\r
-       if( this.timer == null )\r
-               this.ResetParameters();\r
-\r
-       var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
-       if( percent >= 1.0 )\r
-               this.EndEffect();\r
-       else\r
-       {\r
-               var newX = this.startX*(1.0-percent) +  this.finalX*percent;\r
-               var newY = this.startY*(1.0-percent) +  this.finalY*percent;\r
-               CCSSP.MoveObjectTo(this.ele, newX, newY);\r
-               if( this.timer == null )\r
-                       this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
-       }\r
-}\r
-\r
-CAgencyFly.prototype.EndEffect = function()\r
-{\r
-       clearInterval( this.timer );\r
-       this.timer = null;\r
-\r
-       if( this.bIsIn ) // FlyIn\r
-               CCSSP.MoveObjectTo(this.ele, this.finalX, this.finalY);\r
-       else // FlyOut\r
-               CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
-       CCSSP.ShowObject(this.ele, this.bIsIn );\r
-}\r
-\r
-CAgencyFly.prototype.ResetParameters = function()\r
-{\r
-       this.PrepareEffect();\r
-       CCSSP.ShowObject(this.ele, true );\r
-\r
-       this.startX = 0;\r
-       this.startY = 0;\r
-       this.finalX = 0;\r
-       this.finalY = 0; \r
-       \r
-       var offsetLeft = CCSSP.GetObjectWindowLeft(this.ele) + this.ele.offsetWidth;\r
-       var offsetTop = CCSSP.GetObjectWindowTop(this.ele) + this.ele.offsetHeight;\r
-       var offsetRight = CCSSP.GetWindowRight();\r
-       var offsetBottom = CCSSP.GetWindowBottom();\r
-\r
-       if( this.bIsIn )\r
-       { // FlyIn\r
-               this.finalX = this.ele.ABSX;\r
-               this.finalY = this.ele.ABSY;\r
-\r
-               switch( this.direction )\r
-               {\r
-               case "right": this.startX = offsetRight; this.startY = this.finalY; break;\r
-               case "left": this.startX = -offsetLeft;  this.startY = this.finalY; break;\r
-               case "down": this.startY = offsetBottom; this.startX = this.finalX; break;\r
-               case "up":  this.startY = -offsetTop;    this.startX = this.finalX; break;\r
-               case "downright":\r
-                       this.startX = ( offsetBottom < offsetRight) ? offsetBottom : offsetRight;\r
-                       this.startY = this.startX;              break;\r
-               case "upright":\r
-                       this.startX = (offsetTop < offsetRight)? offsetTop : offsetRight;\r
-                       this.startY = -this.startX;             break;\r
-               case "upleft":\r
-                       this.startX = -((offsetTop < offsetRight)? offsetTop : offsetRight);\r
-                       this.startY = this.startX;              break;\r
-               case "downleft":\r
-                       this.startX = -(( offsetBottom < offsetRight) ? offsetBottom : offsetRight);\r
-                       this.startY = -this.startX;     break;\r
-               }\r
-       }\r
-       else\r
-       { // FlyOut\r
-               this.startX = this.ele.ABSX;\r
-               this.startY = this.ele.ABSY;\r
-\r
-               switch( this.direction )\r
-               {\r
-               case "right": this.finalX = offsetRight;  this.finalY = this.startY; break;\r
-               case "left": this.finalX = -offsetLeft;   this.finalY = this.startY;  break;\r
-               case "down": this.finalY = offsetBottom;  this.finalX = this.startX; break;\r
-               case "up":  this.finalY = -offsetTop;     this.finalX = this.startX; break;\r
-               case "downright":\r
-                       this.finalX = ( offsetBottom < offsetRight) ? offsetBottom : offsetRight;\r
-                       this.finalY = this.finalX;              break;\r
-               case "upright":\r
-                       this.finalX = (offsetTop < offsetRight)? offsetTop : offsetRight;\r
-                       this.finalY = -this.finalX;             break;\r
-               case "upleft":\r
-                       this.finalX = -((offsetTop < offsetRight)? offsetTop : offsetRight);\r
-                       this.finalY = this.finalX;              break;\r
-               case "downleft":\r
-                       this.finalX = -(( offsetBottom < offsetRight) ? offsetBottom : offsetRight);\r
-                       this.finalY = -this.finalX;     break;\r
-               }\r
-       }\r
-       CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
-       this.startTime = (new Date()).getTime();\r
-}\r
-// End of the CAgencyFly definition\r
-\r
-// Begin of CAgencySpiral\r
-function CAgencySpiral( element, settings, bIsIn )\r
-{\r
-       this.ele = element;\r
-       this.bIsIn = bIsIn;\r
-       this.duration = 1000; // default\r
-\r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {// to retrieve the setting\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
-               }\r
-       }\r
-\r
-       if( gbBsIE5 && this.ele.style.position != "absolute" )\r
-               this.ele.style.position = "relative";\r
-       this.timer = null;\r
-       this.aniIndex = CEngine.arrAnimation.length;\r
-       CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencySpiral.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.ShowObject(this.ele, !this.bIsIn );\r
-}\r
-\r
-CAgencySpiral.prototype.UpdateEffect = function()\r
-{\r
-       if( this.timer == null )\r
-               this.ResetParameters();\r
-\r
-       var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
-       if( percent >= 1.0 )\r
-               this.EndEffect();\r
-       else\r
-       {\r
-               var rf = (this.bIsIn)? (1.0 - percent) : percent; \r
-               var t = (1.0-rf) * 4.0 * Math.PI\r
-               var rxP = (this.bIsIn)? this.startX : this.finalX; \r
-               var ryP = (this.bIsIn)? this.startY : this.finalY; \r
-               var rx = (Math.abs(rxP) < 200) ? Math.abs(rxP) : 200;\r
-               var ry = (Math.abs(ryP) < 200) ? Math.abs(ryP) : 200;\r
-\r
-               var newX = Math.ceil(-rf*Math.cos(t)*rx) + this.ele.ABSX;\r
-               var newY = Math.ceil(-rf*Math.sin(t)*ry) + this.ele.ABSY;\r
-               CCSSP.MoveObjectTo(this.ele, newX, newY);\r
-               if( this.timer == null )\r
-                       this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
-       }\r
-}\r
-\r
-CAgencySpiral.prototype.EndEffect = function()\r
-{\r
-       clearInterval( this.timer );\r
-       this.timer = null;\r
-       \r
-       if( this.bIsIn ) // In\r
-               CCSSP.MoveObjectTo(this.ele, this.finalX, this.finalY);\r
-       else // Out\r
-               CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
-       CCSSP.ShowObject(this.ele, this.bIsIn );\r
-}\r
-\r
-CAgencySpiral.prototype.ResetParameters = function()\r
-{\r
-       this.PrepareEffect();\r
-       CCSSP.ShowObject(this.ele, true );\r
-       this.startX = (this.bIsIn)? CCSSP.GetWindowRight() : this.ele.ABSX;\r
-       this.startY = (this.bIsIn)? CCSSP.GetWindowBottom() : this.ele.ABSY;\r
-       this.finalX = (this.bIsIn)? this.ele.ABSX : CCSSP.GetWindowRight();\r
-       this.finalY = (this.bIsIn)? this.ele.ABSY : CCSSP.GetWindowBottom(); \r
-       \r
-       CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
-       this.startTime = (new Date()).getTime();\r
-}\r
-// End of CAgencySpiral\r
-\r
-// Begin of CAgencyElastic\r
-function CAgencyElastic( element, settings)\r
-{\r
-       this.ele = element;\r
-       this.duration = 1000; // default\r
-       this.direction = "right";\r
-\r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {// to retrieve the setting\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
-               case "direction" : this.direction = arrOneSet[1]; break;\r
-               }\r
-       }\r
-               \r
-       if( gbBsIE5 && this.ele.style.position != "absolute" )\r
-               this.ele.style.position = "relative";\r
-       this.timer = null;\r
-       this.aniIndex = CEngine.arrAnimation.length;\r
-       CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencyElastic.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.ShowObject(this.ele, false );\r
-}\r
-\r
-CAgencyElastic.prototype.UpdateEffect = function()\r
-{\r
-       if( this.timer == null )\r
-               this.ResetParameters();\r
-\r
-       var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
-       if( percent >= 1.0 )\r
-               this.EndEffect();\r
-       else\r
-       {\r
-               var newX = this.startX;\r
-               var newY = this.startY;\r
-               var rf = Math.exp(-percent*3);\r
-               var t = percent * 1.5 * Math.PI\r
-               var rx = (Math.abs(this.startX) > Math.abs(this.startY)) ? this.startX : this.startY;\r
-               switch (this.direction )\r
-               {\r
-               case "left":   \r
-               case "right" : newX = rf*Math.cos(t)*rx + this.ele.ABSX; break;\r
-               case "up":         \r
-               case "down" :  newY = rf*Math.cos(t)*rx + this.ele.ABSX; break;\r
-               }\r
-               CCSSP.MoveObjectTo(this.ele, newX, newY);\r
-               if( this.timer == null )\r
-                       this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
-       }\r
-}\r
-\r
-CAgencyElastic.prototype.EndEffect = function()\r
-{\r
-       CCSSP.MoveObjectTo(this.ele, this.finalX, this.finalY);\r
-       clearInterval( this.timer );\r
-       this.timer = null;\r
-}\r
-\r
-CAgencyElastic.prototype.ResetParameters = function()\r
-{\r
-       CCSSP.ShowObject(this.ele, true );\r
-       this.startX = this.ele.ABSX;\r
-       this.finalX = this.ele.ABSX;\r
-       this.startY = this.ele.ABSY;\r
-       this.finalY = this.ele.ABSY;\r
-       \r
-       switch (this.direction)\r
-       { \r
-       case "left":  this.startX = -this.ele.offsetWidth; break;\r
-       case "right": this.startX = this.ele.offsetWidth;  break;\r
-       case "up":    this.startY = -this.ele.offsetHeight;break;\r
-       case "down":  this.startY = this.ele.offsetHeight; break;\r
-       }\r
-       CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
-       this.startTime = (new Date()).getTime();\r
-}\r
-// End of CAgencyElastic\r
-\r
-// Begin of CAgencyZoom\r
-function CAgencyZoom( element, settings, bIsIn)\r
-{\r
-       this.ele = element;\r
-       this.duration = 1000; // default\r
-       \r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {// to retrieve the setting\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
-               }\r
-       }\r
-\r
-       this.bIsIn = bIsIn;\r
-       this.timer = null;\r
-       this.aniIndex = CEngine.arrAnimation.length;\r
-       CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencyZoom.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.ShowObject(this.ele, false);\r
-}\r
-\r
-CAgencyZoom.prototype.UpdateEffect = function()\r
-{\r
-       if( this.timer == null )\r
-               this.ResetParameters();\r
-\r
-       var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
-       if( percent >= 1.0 )\r
-               this.EndEffect();\r
-       else\r
-       {\r
-               var nFactorIn = Math.ceil(50+50*percent);\r
-               var nFactorOut = Math.ceil(100+200*(1-percent));\r
-               var AlterFontsize = ((this.bIsIn)? nFactorIn : nFactorOut) + "%";\r
-               var AlterFactor = ((this.bIsIn)? nFactorIn : nFactorOut) / 100;\r
-               \r
-               this.UpdateEffectAllChildren(this.ele, AlterFontsize, AlterFactor);\r
-               for(var index = 0; index < this.ele.all.length; index++)\r
-                       this.UpdateEffectAllChildren(this.ele.all[index], AlterFontsize, AlterFactor);\r
-                       \r
-               if( this.timer == null )\r
-                       this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
-       }\r
-}\r
-\r
-CAgencyZoom.prototype.UpdateEffectAllChildren = function(child, FontSize, Factor)\r
-{\r
-       if( CCSSP.IsTextTag(child) )\r
-               child.style.fontSize = FontSize;\r
-       else\r
-       {\r
-               if( typeof(child.orgWidth) == "number" )\r
-                       child.style.width = Factor * child.orgWidth;\r
-               if( typeof(child.orgHeight) == "number" )\r
-                       child.style.height = Factor * child.orgHeight;\r
-       }\r
-}\r
-\r
-CAgencyZoom.prototype.EndEffect = function()\r
-{\r
-       this.EndEffectAllChildren(this.ele);\r
-       for(var index = 0; index < this.ele.all.length; index++)\r
-               this.EndEffectAllChildren(this.ele.all[index]);\r
-       \r
-       clearInterval( this.timer );\r
-       this.timer = null;\r
-}\r
-\r
-CAgencyZoom.prototype.EndEffectAllChildren = function( child )\r
-{      \r
-       if( CCSSP.IsTextTag(child) )\r
-               child.style.fontSize = child.orgFontSize;\r
-       else\r
-       {\r
-               if( typeof(child.intactWidth) != "undefined" )\r
-               {\r
-                       child.width = child.intactWidth;\r
-                       child.height = child.intactHeight;\r
-               }\r
-               else if( typeof(child.style.intactPixelWidth) != "undefined" )\r
-               {\r
-                       child.style.pixelWidth = child.style.intactPixelWidth;\r
-                       child.style.pixelHeight = child.style.intactPixelHeight;\r
-               }\r
-       }\r
-}\r
-\r
-CAgencyZoom.prototype.ResetParameters = function()\r
-{\r
-       this.PrepareEffect();\r
-       this.ResetParametersAllChildren( this.ele );\r
-       for(var index = 0; index < this.ele.all.length; index++)\r
-               this.ResetParametersAllChildren(this.ele.all[index]);\r
-               \r
-       this.startTime = (new Date()).getTime();\r
-}\r
-\r
-CAgencyZoom.prototype.ResetParametersAllChildren = function( child )\r
-{\r
-       CCSSP.ShowObject(child, true );\r
-       if( (child.tagName == "DIV") && (getParentNode(child).tagName == "TD") )\r
-               child.width = "100%";// if the div is inside a cell of table, we need the this hack\r
-       \r
-       if( CCSSP.IsTextTag(child) )\r
-               child.orgFontSize = child.style.fontSize;\r
-       else\r
-       {\r
-               if( child.width > "" || child.height > "" )\r
-               {\r
-                       child.orgWidth = child.intactWidth = child.width;\r
-                       child.orgHeight = child.intactHeight = child.height;\r
-               }\r
-               else if( ( typeof(child.orgWidth) != "number" ) && (typeof(child.orgHeight) != "number") )\r
-               {\r
-                       child.orgWidth = child.style.intactPixelWidth = child.style.pixelWidth;\r
-                       child.orgHeight = child.style.intactPixelHeight = child.style.pixelHeight;\r
-               }\r
-       }\r
-}\r
-// End of CAgencyZoom\r
-\r
-//// the following effects will use IE's exclusive "filter" function ////\r
-// Begin of CAgencyAlpha definition\r
-function CAgencyAlpha( element, settings, bIsIn )\r
-{// because of "visual filter" style, this won't work in Navigator\r
-       this.ele = element;\r
-       this.bIsIn = bIsIn;\r
-\r
-       // to set the default value\r
-       this.startOpacity = (this.bIsIn) ? 0 : 100;\r
-       this.endOpacity = (this.bIsIn) ? 100 : 0;\r
-       \r
-       this.duration = 1000; // default\r
-       \r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {// to retrieve the setting\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
-               }\r
-       }\r
-       \r
-       this.timer = null;\r
-       this.aniIndex = CEngine.arrAnimation.length;\r
-       CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencyAlpha.prototype.PrepareEffect = function()\r
-{// to set the visual filter function\r
-       // the visual filter ONLY work when set by "Width and Height" or\r
-       // absolute position for DIV, SPAN and normal tag ( such as p )\r
-       // but, "absolute" cause the following elements overlap, so:\r
-       CCSSP.PrepareFilter( this.ele );\r
-       CCSSP.ShowObject(this.ele, !this.bIsIn );\r
-}\r
-\r
-CAgencyAlpha.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
-       if( this.timer == null )\r
-               this.ResetParameters();\r
-       if( typeof(this.ele.filters.alpha) != "object" )\r
-       {\r
-               this.EndEffect();\r
-               return;\r
-       }\r
-\r
-       var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
-       if( percent >= 1.0 )\r
-               this.EndEffect();\r
-       else if( typeof(this.ele.filters.alpha) == "object" )\r
-       {\r
-               this.ele.filters.alpha.opacity = this.startOpacity*(1.0-percent) + this.endOpacity*percent;\r
-               if( this.timer == null )\r
-                       this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
-       }\r
-}\r
-\r
-CAgencyAlpha.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
-       clearInterval( this.timer );\r
-       this.timer = null;\r
-       this.ele.style.filter = "";\r
-       CCSSP.ShowObject(this.ele, this.bIsIn );\r
-}\r
-\r
-CAgencyAlpha.prototype.ResetParameters = function()\r
-{\r
-       this.PrepareEffect();\r
-       CCSSP.ShowObject(this.ele, true );\r
-       this.ele.style.filter = "alpha(opacity=" + this.startOpacity + ")";\r
-       this.startTime = (new Date()).getTime();\r
-}\r
-// End of the CAgencyAlpha definition\r
-\r
-// Begin of CAgencyWave definition\r
-function CAgencyWave( element, settings )\r
-{// because of "visual filter" style, this won't work in Navigator\r
-       this.ele = element;\r
-\r
-       this.duration = 0; // default\r
-       this.strength = 10;\r
-       this.freq = 1;\r
-       this.lightstrength = 1;\r
-       \r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {// to retrieve the setting\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "duration" : this.duration = 100000/arrOneSet[1]; break;\r
-               case "strength" : this.strength = arrOneSet[1]; break;\r
-               case "freq" : this.freq = arrOneSet[1]; break;\r
-               case "lightstrength" : this.lightstrength = arrOneSet[1]; break;\r
-               }\r
-       }\r
-\r
-       this.timer = null;\r
-       this.aniIndex = CEngine.arrAnimation.length;\r
-       CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencyWave.prototype.PrepareEffect = function()\r
-{// to set the visual filter function\r
-       CCSSP.PrepareFilter(this.ele);\r
-\r
-       CCSSP.ShowObject(this.ele, true );\r
-}\r
-\r
-CAgencyWave.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
-       if( this.timer == null )\r
-               this.ResetParameters();\r
-       if( typeof(this.ele.filters.wave) != "object" )\r
-       {\r
-               this.EndEffect();\r
-               return;\r
-       }\r
-\r
-       if( this.duration > 0 )\r
-       {\r
-               var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
-               if( percent >= 1.0 )\r
-               {\r
-                       this.EndEffect();\r
-                       return;\r
-               }\r
-       }\r
-       \r
-       this.ele.filters.wave.phase += 5;\r
-       this.ele.filters.wave.phase %= 100;\r
-       if( this.timer == null )\r
-               this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 50 );\r
-}\r
-\r
-CAgencyWave.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
-       this.ele.style.filter = "";\r
-       clearInterval( this.timer );\r
-       this.timer = null;\r
-}\r
-\r
-CAgencyWave.prototype.ResetParameters = function()\r
-{\r
-       this.PrepareEffect();\r
-       this.ele.style.filter = "wave(strength=" + this.strength + ",freq=" + \r
-        this.freq +", lightstrength=" + this.lightstrength +",phase=0);";\r
-       this.startTime = (new Date()).getTime();\r
-}\r
-// End of the CAgencyWave definition\r
-\r
-// Begin of CAgencyGlow definition\r
-function CAgencyGlow( element, settings )\r
-{// because of "visual filter" style, this won't work in Navigator\r
-       this.ele = element;\r
-\r
-       // to set the default value\r
-       this.glowColor = "green";\r
-       this.glowStrength = "3";\r
-       \r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "color" : this.glowColor = arrOneSet[1]; break;\r
-               case "strength" : this.glowStrength = arrOneSet[1]; break;\r
-               }\r
-       }\r
-}\r
-\r
-CAgencyGlow.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.PrepareFilter(this.ele);\r
-       CCSSP.ShowObject(this.ele, true );\r
-       if( this.ele.style.backgroundColor != "" )\r
-       {//style.backgroundColor somehow stop the visual filter\r
-               this.ele.intactBackgroundColor = this.ele.style.backgroundColor;\r
-               this.ele.style.backgroundColor = "";\r
-       }\r
-}\r
-\r
-CAgencyGlow.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
-       this.PrepareEffect();\r
-       this.ele.style.filter = "glow(Color=" + this.glowColor + ", Strength=" + \r
-               this.glowStrength + ", enabled=true" +")";\r
-}\r
-\r
-CAgencyGlow.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
-       this.ele.style.filter = "";\r
-       if( typeof(this.ele.intactBackgroundColor) != "undefined" )\r
-               this.ele.style.backgroundColor = this.ele.intactBackgroundColor;\r
-}\r
-// End of the CAgencyGlow definition\r
-\r
-// Begin of CAgencyDropShadow definition\r
-function CAgencyDropShadow( element, settings )\r
-{// because of "visual filter" style, this won't work in Navigator\r
-       this.ele = element;\r
-\r
-       // to set the default value\r
-       this.shadowColor = "black"; \r
-       this.shadowOffx = "1";\r
-       this.shadowOffy = "1";\r
-       \r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "color" : this.shadowColor = arrOneSet[1]; break;\r
-               case "offx" : this.shadowOffx = arrOneSet[1]; break;\r
-               case "offy" : this.shadowOffy = arrOneSet[1]; break;\r
-               }\r
-       }\r
-}\r
-\r
-CAgencyDropShadow.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.PrepareFilter(this.ele);\r
-       CCSSP.ShowObject(this.ele, true );\r
-       \r
-       if( this.ele.style.backgroundColor != "" )\r
-       {//style.backgroundColor somehow stop the visual filter\r
-               this.ele.intactBackgroundColor = this.ele.style.backgroundColor;\r
-               this.ele.style.backgroundColor = "";\r
-       }\r
-}\r
-\r
-CAgencyDropShadow.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
-       this.PrepareEffect();\r
-       this.ele.style.filter = "dropshadow(color=" + this.shadowColor + ", offx=" + \r
-               this.shadowOffx + ", offy=" + this.shadowOffy + ")";\r
-}\r
-\r
-CAgencyDropShadow.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
-       this.ele.style.filter = "";\r
-       if( typeof(this.ele.intactBackgroundColor) != "undefined" )\r
-               this.ele.style.backgroundColor = this.ele.intactBackgroundColor;\r
-}\r
-// End of the CAgencyDropShadow definition\r
-\r
-// Begin of CAgencyRevealTrans definition\r
-function CAgencyRevealTrans( element, settings )\r
-{// because of "visual filter" style, this won't work in Navigator\r
-       this.ele = element;\r
-\r
-       // to set the default value\r
-       this.duration = 1.0; //The value is specified in seconds.milliseconds format (0.0000).\r
-       this.transition = 0;\r
-       \r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "type" : this.transition = arrOneSet[1]; break;\r
-               case "duration" : this.duration = 100/arrOneSet[1];     break;\r
-               }\r
-       }\r
-}\r
-\r
-CAgencyRevealTrans.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.PrepareFilter(this.ele);\r
-       CCSSP.ShowObject( this.ele, false);\r
-}\r
-\r
-CAgencyRevealTrans.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
-       if( typeof( this.ele.filters.RevealTrans ) == "object" )\r
-       {\r
-               if( this.ele.filters.RevealTrans.status == 2 )\r
-                       this.ele.filters.RevealTrans.stop();  \r
-       }\r
-\r
-       this.PrepareEffect();\r
-       \r
-       this.ele.style.filter = "RevealTrans(duration=" + this.duration + \r
-               ", transition=" + this.transition + ")";\r
-       \r
-    if( typeof( this.ele.filters.RevealTrans ) == "object" )\r
-    {\r
-               this.ele.filters.RevealTrans.apply();\r
-               CCSSP.ShowObject( this.ele, true);\r
-               this.ele.filters.RevealTrans.play();  \r
-       }\r
-       else\r
-               CCSSP.ShowObject( this.ele, true);\r
-}\r
-\r
-CAgencyRevealTrans.prototype.EndEffect = function()\r
-{\r
-    if( typeof( this.ele.filters.RevealTrans ) == "object" )\r
-               this.ele.filters.RevealTrans.stop();  \r
-       this.ele.style.filter = "";\r
-}\r
-// End of the CAgencyRevealTrans definition\r
-\r
-// Begin of CAgencyBlur definition\r
-function CAgencyBlur( element, settings )\r
-{// because of "visual filter" style, this won't work in Navigator\r
-       this.ele = element;\r
-\r
-       // to set the default value\r
-       this.strength = "5";\r
-       this.direction = "90";\r
-       \r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "strength" : this.strength = arrOneSet[1]; break;\r
-               case "direction" : this.direction = arrOneSet[1]; break;\r
-               }\r
-       }\r
-}\r
-\r
-CAgencyBlur.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.PrepareFilter(this.ele);\r
-       CCSSP.ShowObject(this.ele, true );\r
-}\r
-\r
-CAgencyBlur.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
-       CCSSP.PrepareFilter(this.ele);\r
-       this.ele.style.filter = "blur(strength=" + this.strength + \r
-               ", direction=" + this.direction + ")";\r
-}\r
-\r
-CAgencyBlur.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
-       this.ele.style.filter = "";\r
-}\r
-// End of the CAgencyBlur definition\r
-\r
-// Begin of CAgencyChangeFilter definition\r
-function CAgencyChangeFilter( element, settings ) // flipH, flipV, invert, grey,\r
-{// because of "visual filter" style, this won't work in Navigator\r
-       this.ele = element;\r
-\r
-       // to set the default value\r
-       this.filterFunction = settings;\r
-}\r
-\r
-CAgencyChangeFilter.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.PrepareFilter(this.ele);\r
-       CCSSP.ShowObject(this.ele, true );\r
-}\r
-\r
-CAgencyChangeFilter.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
-       CCSSP.PrepareFilter(this.ele);\r
-       this.ele.style.filter = this.filterFunction;\r
-}\r
-\r
-CAgencyChangeFilter.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
-       this.ele.style.filter = "";\r
-}\r
-// End of the CAgencyChangeFilter definition\r
-\r
-// The effects below change the style on the fly, so they won't work in Navigator\r
-\r
-// Begin of CAgencyFontChange definition, \r
-function CAgencyFontChange( element, settings )\r
-{//this class can be replace by CAgencyChangeStyle,provided the "settings" is standard CSS string.\r
-       this.ele = element;\r
-       \r
-       // to retrieve the original font style\r
-       this.RetrieveOldFont( this.ele );\r
-       \r
-       // to set the default font to change\r
-       this.newfontFamily = this.ele.oldFontFamily;\r
-       this.newfColor = this.ele.oldColor;\r
-       this.newtextDecoration = this.ele.oldTextDecoration;\r
-       this.newfontWeight = this.ele.oldFontWeight;\r
-       this.newfontStyle = this.ele.oldFontStyle;\r
-       this.newfontSize = this.ele.oldFontSize;\r
-       this.newBackgroundColor = this.ele.oldBackgroundColor;\r
-       \r
-       var arrAllSet = settings.split(",");\r
-       for( var i = 0; i < arrAllSet.length; i ++ )\r
-       {// to retrieve the setting\r
-               arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
-               var arrOneSet = arrAllSet[i].split("=");\r
-               for( var j = 0; j < arrOneSet.length; j++ )\r
-                       arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
-               switch( arrOneSet[0] )\r
-               {\r
-               case "font-family" : this.newfontFamily = arrOneSet[1]; break;\r
-               case "color" : this.newfColor = arrOneSet[1]; break;\r
-               case "underline" : this.newtextDecoration = (arrOneSet[1]=="on")? "underline" : "none"; break;\r
-               case "bold" : this.newfontWeight = (arrOneSet[1]=="on")? "bold" : "normal"; break;\r
-               case "italic" : this.newfontStyle = (arrOneSet[1]=="on")? "italic" : "normal"; break;\r
-               case "size" : this.newfontSize = arrOneSet[1]; break;\r
-               case "background-color" : this.newBackgroundColor = arrOneSet[1]; break;\r
-               }\r
-       }\r
-}\r
-\r
-CAgencyFontChange.prototype.RetrieveOldFont = function(objChild)\r
-{\r
-       if( typeof(objChild.oldFontFamily) == "undefined" )\r
-               objChild.oldFontFamily = objChild.style.fontFamily;\r
-       if( typeof(objChild.oldColor) == "undefined" )\r
-               objChild.oldColor = objChild.style.color;\r
-       if( typeof(objChild.oldTextDecoration) == "undefined" )\r
-               objChild.oldTextDecoration = objChild.style.textDecoration;\r
-       if( typeof(objChild.oldFontWeight) == "undefined" )\r
-               objChild.oldFontWeight = objChild.style.fontWeight;\r
-       if( typeof(objChild.oldFontStyle) == "undefined" )\r
-               objChild.oldFontStyle = objChild.style.fontStyle;\r
-       if( typeof(objChild.oldFontSize) == "undefined" )\r
-               objChild.oldFontSize = objChild.style.fontSize;\r
-       if( typeof(objChild.oldBackgroundColor) == "undefined" )\r
-               objChild.oldBackgroundColor = objChild.style.backgroundColor;\r
-}\r
-\r
-CAgencyFontChange.prototype.PrepareEffect = function()\r
-{\r
-       // as for expanding text, the child is created after the constructor called\r
-       for(var index = 0; index < this.ele.all.length; index++)\r
-               this.RetrieveOldFont(this.ele.all[index]);\r
-       CCSSP.ShowObject(this.ele, true );\r
-}\r
-\r
-CAgencyFontChange.prototype.UpdateEffect = function()\r
-{// to change the font\r
-       this.PrepareEffect();\r
-       this.UpdateEffectAllChildren( this.ele );\r
-       for( var index = 0; index < this.ele.all.length; index++)\r
-               this.UpdateEffectAllChildren(this.ele.all[index]);\r
-}\r
-\r
-CAgencyFontChange.prototype.UpdateEffectAllChildren = function(objChild)\r
-{\r
-       objChild.style.fontFamily = this.newfontFamily;\r
-       objChild.style.color = this.newfColor;\r
-       objChild.style.textDecoration = this.newtextDecoration;\r
-       objChild.style.fontWeight = this.newfontWeight;\r
-       objChild.style.fontStyle = this.newfontStyle;\r
-       objChild.style.fontSize = this.newfontSize;\r
-       objChild.style.backgroundColor = this.newBackgroundColor;\r
-}\r
-\r
-CAgencyFontChange.prototype.EndEffect = function()\r
-{// to reinstate the original font style\r
-       this.EndEffectAllChildren( this.ele );\r
-       for( var index = 0; index < this.ele.all.length; index++)\r
-               this.EndEffectAllChildren(this.ele.all[index]);\r
-}\r
-\r
-CAgencyFontChange.prototype.EndEffectAllChildren = function( objChild )\r
-{\r
-       if( typeof(objChild.oldFontFamily) != "undefined" )\r
-               objChild.style.fontFamily = objChild.oldFontFamily;\r
-       if( typeof(objChild.oldColor) != "undefined" )\r
-               objChild.style.color = objChild.oldColor;\r
-       if( typeof(objChild.oldFontWeight) != "undefined" )\r
-               objChild.style.fontWeight = objChild.oldFontWeight;\r
-       if( typeof(objChild.oldFontStyle) != "undefined" )\r
-               objChild.style.fontStyle = objChild.oldFontStyle;\r
-       if( typeof(objChild.oldFontSize) != "undefined" )\r
-               objChild.style.fontSize = objChild.oldFontSize;\r
-       if( typeof(objChild.oldTextDecoration) != "undefined" )\r
-               objChild.style.textDecoration = objChild.oldTextDecoration;\r
-       if( typeof(objChild.oldBackgroundColor) != "undefined" )\r
-               objChild.style.backgroundColor = objChild.oldBackgroundColor;\r
-}\r
-// End of the CAgencyFontChange definition\r
-\r
-// Begin of the CAgencyChangeStyle definition\r
-function CAgencyChangeStyle( element, settings )\r
-{//this class can be replace by CAgencyChangeStyle,provided the "settings" is standard CSS string.\r
-       this.ele = element;\r
-       \r
-       // to retrieve the original style\r
-       this.oldstyle = this.ele.style.cssText;\r
-       \r
-       // to set the default style\r
-       this.newStyle = this.oldstyle;\r
-       \r
-       if( typeof(settings) == "string" && settings.length > 1 )\r
-               this.newStyle = this.oldstyle + " " + settings;\r
-}\r
-\r
-CAgencyChangeStyle.prototype.PrepareEffect = function()\r
-{\r
-       CCSSP.ShowObject(this.ele, true );\r
-}\r
-\r
-CAgencyChangeStyle.prototype.UpdateEffect = function()\r
-{// to change the style\r
-       this.ele.style.cssText = this.newStyle;\r
-}\r
-\r
-CAgencyChangeStyle.prototype.EndEffect = function()\r
-{// to reinstate the original style\r
-       this.ele.style.cssText = this.oldStyle;\r
-}\r
-// End of the CAgencyChangeStyle definition\r
-\r
-//End the definition of CAgencyXXXX classes\r
-\r
-//Begin to collaborate with other event handler settings \r
-CCSSP.RegisterEventHandler( window, "onload", "CEngine.OnPageLoad();BSSCOnLoad();kadovInitTriggersInHead();");\r
-CCSSP.RegisterEventHandler( document, "onclick", "CEngine.OnPageClick();BSSCOnClick();");\r
-CCSSP.RegisterEventHandler( document, "onmouseover", "CEngine.OnMouseOver();BSSCOnMouseOver();" );\r
-CCSSP.RegisterEventHandler( document, "onmouseout", "CEngine.OnMouseOver();BSSCOnMouseOut();" );\r
-CCSSP.RegisterEventHandler( window, "onunload", "BSSCOnUnload();");\r
-//End to collaborate with other event handler settings\r
-\r
-/// Section End  - CCSSP DHTM 2 (JavaScript 1.2)\r
-\r
-//// Segment End -- (JavaScript 1.2)
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/geom_preferences.htm b/doc/salome/gui/GUI/geom_preferences.htm
deleted file mode 100755 (executable)
index ffdc8e6..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>GEOM preferences</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=topic-check-list content="Ran Smart Index">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1052>\r
-<meta name=layout-width content=1059>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
-<link rel=StyleSheet href=default.css>\r
-\r
-\r
-\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<h1>Geometry preferences</h1>\r
-\r
-<p>In the <span style="font-weight: bold;">Geometry</span> module you can \r
- set preferences for visualisation of geometrical figures which can be \r
- used in later sessions with this module. </p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p style="font-family: 'Times New Roman', serif; margin-left: 40px;"><img \r
- src="pics/pref15.png"\r
-       x-maintain-ratio=TRUE\r
-       style="border: none;\r
-                       width: 752px;\r
-                       height: 588px;\r
-                       float: none;\r
-                       border-style: none;\r
-                       border-style: none;"\r
-       width=752\r
-       height=588\r
-       border=0></p>\r
-\r
-<p style="font-family: 'Times New Roman', serif; margin-left: 40px;">&nbsp;</p>\r
-\r
-<p style="font-family: 'Times New Roman', serif; margin-left: 40px;">For \r
- all color definitions click on the respective line to access to the <span \r
- style="font-weight: bold;"><a href="Select_Color_and_Font.htm">Select \r
- Color</a></span> dialog box. </p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul style="list-style: disc;"\r
-       type=disc>\r
-       \r
-       <li class=kadov-p><p style="font-weight: bold; margin-left: 0px;">General</p></li>\r
-       \r
-       <li class=kadov-p><p style="margin-left: 40px; font-weight: bold;">Default \r
- Display Mode - <span style="font-weight: normal;">allows to choose between</span> \r
- <span style="font-weight: normal;">wireframe or shading.</span></p></li>\r
-       \r
-       <li class=kadov-p><p style="margin-left: 40px;"><span style="font-weight: bold;">Default \r
- Shading Color</span> - allows to select default shading color. </p></li>\r
-       \r
-       <li class=kadov-p><p style="margin-left: 40px;"><span style="font-weight: bold;">Default \r
- Wireframe Color</span> - allows to select default wireframe color (to \r
- be applied to any lines not being free boundaries or isolated lines).</p></li>\r
-       \r
-       <li class=kadov-p><p style="margin-left: 40px;"><span style="font-weight: bold;">Color \r
- of free boundaries</span> - allows to select default color for free boundaries. \r
- </p></li>\r
-       \r
-       <li class=kadov-p><p style="margin-left: 40px; font-weight: bold;">Color \r
- of edges, vectors and wires - <span style="font-weight: normal;">allows \r
- to select default color for edges, vectors and wires (isolated lines).</span></p></li>\r
-       \r
-       <li class=kadov-p><p style="margin-left: 40px; font-weight: bold;">Color \r
- of points - <span style="font-weight: normal;">allows to select default \r
- color for vertices.</span></p></li>\r
-       \r
-       <li class=kadov-p><p style="margin-left: 40px; font-weight: bold;">Color \r
- of isolines - <span style="font-weight: normal;">allows to select default \r
- color for isolines.</span></p></li>\r
-       \r
-       <li class=kadov-p><p style="margin-left: 40px; font-weight: bold;">Step \r
- Value for Spin Boxes - <span style="font-weight: normal;">allows to define \r
- the increment of values set in spin boxes. </span><!--kadov_tag{{<spaces>}}-->&nbsp;<!--kadov_tag{{</spaces>}}--></p></li>\r
-</ul>\r
-\r
-<p style="margin-left: 40px; font-weight: bold;">&nbsp;</p>\r
-\r
-<ul style="list-style: disc;"\r
-       type=disc>\r
-       \r
-       <li class=kadov-p><p style="font-weight: bold; margin-left: 0px;">Marker \r
- of Points</p></li>\r
-       \r
-       <li class=kadov-p><p style="margin-left: 40px; font-weight: bold;">Type \r
- <!--kadov_tag{{<spaces>}}-->&nbsp;<!--kadov_tag{{</spaces>}}-->- <span \r
- style="font-weight: normal;">allows to select the symbol for representation \r
- of points (cross, asterisk, etc.).</span></p></li>\r
-       \r
-       <li class=kadov-p><p style="margin-left: 40px; font-weight: bold;">Size<span \r
- style="font-weight: normal;"> - allows to define the size of the marker \r
- from 1 (smallest) to 7 (largest).</span></p></li>\r
-</ul>\r
-\r
-<p style="font-weight: bold; margin-left: 0px;">&nbsp;</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-</body>\r
-\r
-</html>\r
diff --git a/doc/salome/gui/GUI/i_blue.jpg b/doc/salome/gui/GUI/i_blue.jpg
deleted file mode 100755 (executable)
index ed3acfa..0000000
Binary files a/doc/salome/gui/GUI/i_blue.jpg and /dev/null differ
diff --git a/doc/salome/gui/GUI/image54.jpg b/doc/salome/gui/GUI/image54.jpg
deleted file mode 100755 (executable)
index a67ac4c..0000000
Binary files a/doc/salome/gui/GUI/image54.jpg and /dev/null differ
diff --git a/doc/salome/gui/GUI/image65.gif b/doc/salome/gui/GUI/image65.gif
deleted file mode 100755 (executable)
index fbf6a81..0000000
Binary files a/doc/salome/gui/GUI/image65.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/image67.gif b/doc/salome/gui/GUI/image67.gif
deleted file mode 100755 (executable)
index 4c5d4d6..0000000
Binary files a/doc/salome/gui/GUI/image67.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/image68.gif b/doc/salome/gui/GUI/image68.gif
deleted file mode 100755 (executable)
index f8ea563..0000000
Binary files a/doc/salome/gui/GUI/image68.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/image69.gif b/doc/salome/gui/GUI/image69.gif
deleted file mode 100755 (executable)
index f8ea563..0000000
Binary files a/doc/salome/gui/GUI/image69.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/image70.gif b/doc/salome/gui/GUI/image70.gif
deleted file mode 100755 (executable)
index c88c53e..0000000
Binary files a/doc/salome/gui/GUI/image70.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/image71.gif b/doc/salome/gui/GUI/image71.gif
deleted file mode 100755 (executable)
index 26fcc67..0000000
Binary files a/doc/salome/gui/GUI/image71.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/image72.gif b/doc/salome/gui/GUI/image72.gif
deleted file mode 100755 (executable)
index 77c21bd..0000000
Binary files a/doc/salome/gui/GUI/image72.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/image73.gif b/doc/salome/gui/GUI/image73.gif
deleted file mode 100755 (executable)
index 0ebcf97..0000000
Binary files a/doc/salome/gui/GUI/image73.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/image75.gif b/doc/salome/gui/GUI/image75.gif
deleted file mode 100755 (executable)
index 9fdfbdc..0000000
Binary files a/doc/salome/gui/GUI/image75.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/image94.gif b/doc/salome/gui/GUI/image94.gif
deleted file mode 100755 (executable)
index e2d310c..0000000
Binary files a/doc/salome/gui/GUI/image94.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/images/batchmode.png b/doc/salome/gui/GUI/images/batchmode.png
new file mode 100644 (file)
index 0000000..c439d7e
Binary files /dev/null and b/doc/salome/gui/GUI/images/batchmode.png differ
diff --git a/doc/salome/gui/GUI/images/cataloggenerator.png b/doc/salome/gui/GUI/images/cataloggenerator.png
new file mode 100755 (executable)
index 0000000..51a0f27
Binary files /dev/null and b/doc/salome/gui/GUI/images/cataloggenerator.png differ
diff --git a/doc/salome/gui/GUI/images/choicepage.png b/doc/salome/gui/GUI/images/choicepage.png
new file mode 100644 (file)
index 0000000..e3afcc5
Binary files /dev/null and b/doc/salome/gui/GUI/images/choicepage.png differ
diff --git a/doc/salome/gui/GUI/images/clipping.png b/doc/salome/gui/GUI/images/clipping.png
new file mode 100644 (file)
index 0000000..6d73855
Binary files /dev/null and b/doc/salome/gui/GUI/images/clipping.png differ
diff --git a/doc/salome/gui/GUI/images/closestudy.png b/doc/salome/gui/GUI/images/closestudy.png
new file mode 100755 (executable)
index 0000000..fb7abe1
Binary files /dev/null and b/doc/salome/gui/GUI/images/closestudy.png differ
diff --git a/doc/salome/gui/GUI/images/copy-paste.jpg b/doc/salome/gui/GUI/images/copy-paste.jpg
new file mode 100755 (executable)
index 0000000..e243122
Binary files /dev/null and b/doc/salome/gui/GUI/images/copy-paste.jpg differ
diff --git a/doc/salome/gui/GUI/images/dumpstudy.png b/doc/salome/gui/GUI/images/dumpstudy.png
new file mode 100755 (executable)
index 0000000..f899e77
Binary files /dev/null and b/doc/salome/gui/GUI/images/dumpstudy.png differ
diff --git a/doc/salome/gui/GUI/images/geomview-alt.png b/doc/salome/gui/GUI/images/geomview-alt.png
new file mode 100755 (executable)
index 0000000..e797b08
Binary files /dev/null and b/doc/salome/gui/GUI/images/geomview-alt.png differ
diff --git a/doc/salome/gui/GUI/images/graduatedaxes1.png b/doc/salome/gui/GUI/images/graduatedaxes1.png
new file mode 100644 (file)
index 0000000..cf021ba
Binary files /dev/null and b/doc/salome/gui/GUI/images/graduatedaxes1.png differ
diff --git a/doc/salome/gui/GUI/images/icon_about.png b/doc/salome/gui/GUI/images/icon_about.png
new file mode 100755 (executable)
index 0000000..5ecbe66
Binary files /dev/null and b/doc/salome/gui/GUI/images/icon_about.png differ
diff --git a/doc/salome/gui/GUI/images/image100.gif b/doc/salome/gui/GUI/images/image100.gif
new file mode 100644 (file)
index 0000000..c44d68f
Binary files /dev/null and b/doc/salome/gui/GUI/images/image100.gif differ
diff --git a/doc/salome/gui/GUI/images/image102.gif b/doc/salome/gui/GUI/images/image102.gif
new file mode 100644 (file)
index 0000000..3507814
Binary files /dev/null and b/doc/salome/gui/GUI/images/image102.gif differ
diff --git a/doc/salome/gui/GUI/images/image103.gif b/doc/salome/gui/GUI/images/image103.gif
new file mode 100644 (file)
index 0000000..be534c3
Binary files /dev/null and b/doc/salome/gui/GUI/images/image103.gif differ
diff --git a/doc/salome/gui/GUI/images/image105.gif b/doc/salome/gui/GUI/images/image105.gif
new file mode 100644 (file)
index 0000000..4f6173f
Binary files /dev/null and b/doc/salome/gui/GUI/images/image105.gif differ
diff --git a/doc/salome/gui/GUI/images/image106.gif b/doc/salome/gui/GUI/images/image106.gif
new file mode 100644 (file)
index 0000000..2bbcb4d
Binary files /dev/null and b/doc/salome/gui/GUI/images/image106.gif differ
diff --git a/doc/salome/gui/GUI/images/image108.gif b/doc/salome/gui/GUI/images/image108.gif
new file mode 100644 (file)
index 0000000..bec69e6
Binary files /dev/null and b/doc/salome/gui/GUI/images/image108.gif differ
diff --git a/doc/salome/gui/GUI/images/image109.gif b/doc/salome/gui/GUI/images/image109.gif
new file mode 100644 (file)
index 0000000..5dbba46
Binary files /dev/null and b/doc/salome/gui/GUI/images/image109.gif differ
diff --git a/doc/salome/gui/GUI/images/image157.gif b/doc/salome/gui/GUI/images/image157.gif
new file mode 100644 (file)
index 0000000..2f66e05
Binary files /dev/null and b/doc/salome/gui/GUI/images/image157.gif differ
diff --git a/doc/salome/gui/GUI/images/image54.jpg b/doc/salome/gui/GUI/images/image54.jpg
new file mode 100755 (executable)
index 0000000..a67ac4c
Binary files /dev/null and b/doc/salome/gui/GUI/images/image54.jpg differ
diff --git a/doc/salome/gui/GUI/images/image65.gif b/doc/salome/gui/GUI/images/image65.gif
new file mode 100755 (executable)
index 0000000..fbf6a81
Binary files /dev/null and b/doc/salome/gui/GUI/images/image65.gif differ
diff --git a/doc/salome/gui/GUI/images/image67.gif b/doc/salome/gui/GUI/images/image67.gif
new file mode 100755 (executable)
index 0000000..4c5d4d6
Binary files /dev/null and b/doc/salome/gui/GUI/images/image67.gif differ
diff --git a/doc/salome/gui/GUI/images/image69.gif b/doc/salome/gui/GUI/images/image69.gif
new file mode 100755 (executable)
index 0000000..f8ea563
Binary files /dev/null and b/doc/salome/gui/GUI/images/image69.gif differ
diff --git a/doc/salome/gui/GUI/images/image70.gif b/doc/salome/gui/GUI/images/image70.gif
new file mode 100755 (executable)
index 0000000..c88c53e
Binary files /dev/null and b/doc/salome/gui/GUI/images/image70.gif differ
diff --git a/doc/salome/gui/GUI/images/image72.gif b/doc/salome/gui/GUI/images/image72.gif
new file mode 100755 (executable)
index 0000000..77c21bd
Binary files /dev/null and b/doc/salome/gui/GUI/images/image72.gif differ
diff --git a/doc/salome/gui/GUI/images/image73.gif b/doc/salome/gui/GUI/images/image73.gif
new file mode 100755 (executable)
index 0000000..0ebcf97
Binary files /dev/null and b/doc/salome/gui/GUI/images/image73.gif differ
diff --git a/doc/salome/gui/GUI/images/image75.gif b/doc/salome/gui/GUI/images/image75.gif
new file mode 100755 (executable)
index 0000000..9fdfbdc
Binary files /dev/null and b/doc/salome/gui/GUI/images/image75.gif differ
diff --git a/doc/salome/gui/GUI/images/image77.gif b/doc/salome/gui/GUI/images/image77.gif
new file mode 100644 (file)
index 0000000..ef7a62f
Binary files /dev/null and b/doc/salome/gui/GUI/images/image77.gif differ
diff --git a/doc/salome/gui/GUI/images/image86.gif b/doc/salome/gui/GUI/images/image86.gif
new file mode 100644 (file)
index 0000000..3397331
Binary files /dev/null and b/doc/salome/gui/GUI/images/image86.gif differ
diff --git a/doc/salome/gui/GUI/images/image88.gif b/doc/salome/gui/GUI/images/image88.gif
new file mode 100644 (file)
index 0000000..9466aa6
Binary files /dev/null and b/doc/salome/gui/GUI/images/image88.gif differ
diff --git a/doc/salome/gui/GUI/images/image89.gif b/doc/salome/gui/GUI/images/image89.gif
new file mode 100644 (file)
index 0000000..373a6c0
Binary files /dev/null and b/doc/salome/gui/GUI/images/image89.gif differ
diff --git a/doc/salome/gui/GUI/images/image91.gif b/doc/salome/gui/GUI/images/image91.gif
new file mode 100644 (file)
index 0000000..9e93c1c
Binary files /dev/null and b/doc/salome/gui/GUI/images/image91.gif differ
diff --git a/doc/salome/gui/GUI/images/image94.gif b/doc/salome/gui/GUI/images/image94.gif
new file mode 100755 (executable)
index 0000000..e2d310c
Binary files /dev/null and b/doc/salome/gui/GUI/images/image94.gif differ
diff --git a/doc/salome/gui/GUI/images/image95.gif b/doc/salome/gui/GUI/images/image95.gif
new file mode 100644 (file)
index 0000000..fb293e2
Binary files /dev/null and b/doc/salome/gui/GUI/images/image95.gif differ
diff --git a/doc/salome/gui/GUI/images/image96.gif b/doc/salome/gui/GUI/images/image96.gif
new file mode 100644 (file)
index 0000000..4580d5b
Binary files /dev/null and b/doc/salome/gui/GUI/images/image96.gif differ
diff --git a/doc/salome/gui/GUI/images/image97.gif b/doc/salome/gui/GUI/images/image97.gif
new file mode 100644 (file)
index 0000000..1d78de1
Binary files /dev/null and b/doc/salome/gui/GUI/images/image97.gif differ
diff --git a/doc/salome/gui/GUI/images/image98.gif b/doc/salome/gui/GUI/images/image98.gif
new file mode 100644 (file)
index 0000000..6519dbb
Binary files /dev/null and b/doc/salome/gui/GUI/images/image98.gif differ
diff --git a/doc/salome/gui/GUI/images/image99.gif b/doc/salome/gui/GUI/images/image99.gif
new file mode 100644 (file)
index 0000000..3711be8
Binary files /dev/null and b/doc/salome/gui/GUI/images/image99.gif differ
diff --git a/doc/salome/gui/GUI/images/import.png b/doc/salome/gui/GUI/images/import.png
new file mode 100755 (executable)
index 0000000..093c667
Binary files /dev/null and b/doc/salome/gui/GUI/images/import.png differ
diff --git a/doc/salome/gui/GUI/images/intropage.png b/doc/salome/gui/GUI/images/intropage.png
new file mode 100644 (file)
index 0000000..226793c
Binary files /dev/null and b/doc/salome/gui/GUI/images/intropage.png differ
diff --git a/doc/salome/gui/GUI/images/loadscript.png b/doc/salome/gui/GUI/images/loadscript.png
new file mode 100755 (executable)
index 0000000..e681fc7
Binary files /dev/null and b/doc/salome/gui/GUI/images/loadscript.png differ
diff --git a/doc/salome/gui/GUI/images/loadstudy2.png b/doc/salome/gui/GUI/images/loadstudy2.png
new file mode 100755 (executable)
index 0000000..595ea05
Binary files /dev/null and b/doc/salome/gui/GUI/images/loadstudy2.png differ
diff --git a/doc/salome/gui/GUI/images/lockedstudy.png b/doc/salome/gui/GUI/images/lockedstudy.png
new file mode 100755 (executable)
index 0000000..9ec7e74
Binary files /dev/null and b/doc/salome/gui/GUI/images/lockedstudy.png differ
diff --git a/doc/salome/gui/GUI/images/neo-view2.png b/doc/salome/gui/GUI/images/neo-view2.png
new file mode 100755 (executable)
index 0000000..df1c7fe
Binary files /dev/null and b/doc/salome/gui/GUI/images/neo-view2.png differ
diff --git a/doc/salome/gui/GUI/images/newsticn.jpg b/doc/salome/gui/GUI/images/newsticn.jpg
new file mode 100755 (executable)
index 0000000..94c8ee9
Binary files /dev/null and b/doc/salome/gui/GUI/images/newsticn.jpg differ
diff --git a/doc/salome/gui/GUI/images/note1.gif b/doc/salome/gui/GUI/images/note1.gif
new file mode 100755 (executable)
index 0000000..b53e21d
Binary files /dev/null and b/doc/salome/gui/GUI/images/note1.gif differ
diff --git a/doc/salome/gui/GUI/images/objectbrowser1.png b/doc/salome/gui/GUI/images/objectbrowser1.png
new file mode 100755 (executable)
index 0000000..16ab896
Binary files /dev/null and b/doc/salome/gui/GUI/images/objectbrowser1.png differ
diff --git a/doc/salome/gui/GUI/images/objectbrowser2.png b/doc/salome/gui/GUI/images/objectbrowser2.png
new file mode 100755 (executable)
index 0000000..e010ef2
Binary files /dev/null and b/doc/salome/gui/GUI/images/objectbrowser2.png differ
diff --git a/doc/salome/gui/GUI/images/open.jpg b/doc/salome/gui/GUI/images/open.jpg
new file mode 100755 (executable)
index 0000000..5829aef
Binary files /dev/null and b/doc/salome/gui/GUI/images/open.jpg differ
diff --git a/doc/salome/gui/GUI/images/plot2d_clone.gif b/doc/salome/gui/GUI/images/plot2d_clone.gif
new file mode 100644 (file)
index 0000000..f980a5d
Binary files /dev/null and b/doc/salome/gui/GUI/images/plot2d_clone.gif differ
diff --git a/doc/salome/gui/GUI/images/plot2d_legend.gif b/doc/salome/gui/GUI/images/plot2d_legend.gif
new file mode 100644 (file)
index 0000000..a40211e
Binary files /dev/null and b/doc/salome/gui/GUI/images/plot2d_legend.gif differ
diff --git a/doc/salome/gui/GUI/images/plot2d_lines.gif b/doc/salome/gui/GUI/images/plot2d_lines.gif
new file mode 100644 (file)
index 0000000..8d1dc23
Binary files /dev/null and b/doc/salome/gui/GUI/images/plot2d_lines.gif differ
diff --git a/doc/salome/gui/GUI/images/plot2d_logarithmic_horizontal.gif b/doc/salome/gui/GUI/images/plot2d_logarithmic_horizontal.gif
new file mode 100644 (file)
index 0000000..3473ad9
Binary files /dev/null and b/doc/salome/gui/GUI/images/plot2d_logarithmic_horizontal.gif differ
diff --git a/doc/salome/gui/GUI/images/plot2d_logarithmic_vertical.gif b/doc/salome/gui/GUI/images/plot2d_logarithmic_vertical.gif
new file mode 100644 (file)
index 0000000..0d3b25e
Binary files /dev/null and b/doc/salome/gui/GUI/images/plot2d_logarithmic_vertical.gif differ
diff --git a/doc/salome/gui/GUI/images/plot2d_points.gif b/doc/salome/gui/GUI/images/plot2d_points.gif
new file mode 100644 (file)
index 0000000..6700f00
Binary files /dev/null and b/doc/salome/gui/GUI/images/plot2d_points.gif differ
diff --git a/doc/salome/gui/GUI/images/plot2d_settings.gif b/doc/salome/gui/GUI/images/plot2d_settings.gif
new file mode 100644 (file)
index 0000000..87e1105
Binary files /dev/null and b/doc/salome/gui/GUI/images/plot2d_settings.gif differ
diff --git a/doc/salome/gui/GUI/images/plot2d_splines.gif b/doc/salome/gui/GUI/images/plot2d_splines.gif
new file mode 100644 (file)
index 0000000..1d50b20
Binary files /dev/null and b/doc/salome/gui/GUI/images/plot2d_splines.gif differ
diff --git a/doc/salome/gui/GUI/images/plot2d_view_settings.png b/doc/salome/gui/GUI/images/plot2d_view_settings.png
new file mode 100644 (file)
index 0000000..d4b4d29
Binary files /dev/null and b/doc/salome/gui/GUI/images/plot2d_view_settings.png differ
diff --git a/doc/salome/gui/GUI/images/ppref1.png b/doc/salome/gui/GUI/images/ppref1.png
new file mode 100755 (executable)
index 0000000..dd91013
Binary files /dev/null and b/doc/salome/gui/GUI/images/ppref1.png differ
diff --git a/doc/salome/gui/GUI/images/ppref2.png b/doc/salome/gui/GUI/images/ppref2.png
new file mode 100755 (executable)
index 0000000..5a15f0e
Binary files /dev/null and b/doc/salome/gui/GUI/images/ppref2.png differ
diff --git a/doc/salome/gui/GUI/images/ppref3.png b/doc/salome/gui/GUI/images/ppref3.png
new file mode 100755 (executable)
index 0000000..1ecffe3
Binary files /dev/null and b/doc/salome/gui/GUI/images/ppref3.png differ
diff --git a/doc/salome/gui/GUI/images/pref11.png b/doc/salome/gui/GUI/images/pref11.png
new file mode 100755 (executable)
index 0000000..26ddbe9
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref11.png differ
diff --git a/doc/salome/gui/GUI/images/pref12.png b/doc/salome/gui/GUI/images/pref12.png
new file mode 100755 (executable)
index 0000000..8cafab8
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref12.png differ
diff --git a/doc/salome/gui/GUI/images/pref13.png b/doc/salome/gui/GUI/images/pref13.png
new file mode 100755 (executable)
index 0000000..4cfe950
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref13.png differ
diff --git a/doc/salome/gui/GUI/images/pref14.png b/doc/salome/gui/GUI/images/pref14.png
new file mode 100755 (executable)
index 0000000..2f8bcfb
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref14.png differ
diff --git a/doc/salome/gui/GUI/images/pref15.png b/doc/salome/gui/GUI/images/pref15.png
new file mode 100755 (executable)
index 0000000..10053fb
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref15.png differ
diff --git a/doc/salome/gui/GUI/images/pref21.png b/doc/salome/gui/GUI/images/pref21.png
new file mode 100755 (executable)
index 0000000..8f7ad1d
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref21.png differ
diff --git a/doc/salome/gui/GUI/images/pref22.png b/doc/salome/gui/GUI/images/pref22.png
new file mode 100755 (executable)
index 0000000..26921dc
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref22.png differ
diff --git a/doc/salome/gui/GUI/images/pref23.png b/doc/salome/gui/GUI/images/pref23.png
new file mode 100644 (file)
index 0000000..e1a082a
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref23.png differ
diff --git a/doc/salome/gui/GUI/images/pref24.png b/doc/salome/gui/GUI/images/pref24.png
new file mode 100755 (executable)
index 0000000..c539e9b
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref24.png differ
diff --git a/doc/salome/gui/GUI/images/pref31.png b/doc/salome/gui/GUI/images/pref31.png
new file mode 100755 (executable)
index 0000000..e5606d1
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref31.png differ
diff --git a/doc/salome/gui/GUI/images/pref33.png b/doc/salome/gui/GUI/images/pref33.png
new file mode 100755 (executable)
index 0000000..bdc9b76
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref33.png differ
diff --git a/doc/salome/gui/GUI/images/pref34.png b/doc/salome/gui/GUI/images/pref34.png
new file mode 100755 (executable)
index 0000000..5072c62
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref34.png differ
diff --git a/doc/salome/gui/GUI/images/pref37.png b/doc/salome/gui/GUI/images/pref37.png
new file mode 100755 (executable)
index 0000000..1d4d082
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref37.png differ
diff --git a/doc/salome/gui/GUI/images/pref38.png b/doc/salome/gui/GUI/images/pref38.png
new file mode 100755 (executable)
index 0000000..5c8d31c
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref38.png differ
diff --git a/doc/salome/gui/GUI/images/pref39.png b/doc/salome/gui/GUI/images/pref39.png
new file mode 100755 (executable)
index 0000000..878a526
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref39.png differ
diff --git a/doc/salome/gui/GUI/images/pref40.png b/doc/salome/gui/GUI/images/pref40.png
new file mode 100755 (executable)
index 0000000..e86c1e2
Binary files /dev/null and b/doc/salome/gui/GUI/images/pref40.png differ
diff --git a/doc/salome/gui/GUI/images/productpage.png b/doc/salome/gui/GUI/images/productpage.png
new file mode 100644 (file)
index 0000000..bc05c8b
Binary files /dev/null and b/doc/salome/gui/GUI/images/productpage.png differ
diff --git a/doc/salome/gui/GUI/images/productpage1.png b/doc/salome/gui/GUI/images/productpage1.png
new file mode 100644 (file)
index 0000000..b666166
Binary files /dev/null and b/doc/salome/gui/GUI/images/productpage1.png differ
diff --git a/doc/salome/gui/GUI/images/productpage2.png b/doc/salome/gui/GUI/images/productpage2.png
new file mode 100644 (file)
index 0000000..998d286
Binary files /dev/null and b/doc/salome/gui/GUI/images/productpage2.png differ
diff --git a/doc/salome/gui/GUI/images/progresspage.png b/doc/salome/gui/GUI/images/progresspage.png
new file mode 100644 (file)
index 0000000..0779fcc
Binary files /dev/null and b/doc/salome/gui/GUI/images/progresspage.png differ
diff --git a/doc/salome/gui/GUI/images/progresspage1.png b/doc/salome/gui/GUI/images/progresspage1.png
new file mode 100644 (file)
index 0000000..efaa4d1
Binary files /dev/null and b/doc/salome/gui/GUI/images/progresspage1.png differ
diff --git a/doc/salome/gui/GUI/images/readmepage.png b/doc/salome/gui/GUI/images/readmepage.png
new file mode 100644 (file)
index 0000000..b6aee29
Binary files /dev/null and b/doc/salome/gui/GUI/images/readmepage.png differ
diff --git a/doc/salome/gui/GUI/images/registry1.png b/doc/salome/gui/GUI/images/registry1.png
new file mode 100755 (executable)
index 0000000..b8912c6
Binary files /dev/null and b/doc/salome/gui/GUI/images/registry1.png differ
diff --git a/doc/salome/gui/GUI/images/registry3.png b/doc/salome/gui/GUI/images/registry3.png
new file mode 100755 (executable)
index 0000000..f44e2ec
Binary files /dev/null and b/doc/salome/gui/GUI/images/registry3.png differ
diff --git a/doc/salome/gui/GUI/images/registry4.png b/doc/salome/gui/GUI/images/registry4.png
new file mode 100755 (executable)
index 0000000..98a3772
Binary files /dev/null and b/doc/salome/gui/GUI/images/registry4.png differ
diff --git a/doc/salome/gui/GUI/images/save.jpg b/doc/salome/gui/GUI/images/save.jpg
new file mode 100755 (executable)
index 0000000..90001af
Binary files /dev/null and b/doc/salome/gui/GUI/images/save.jpg differ
diff --git a/doc/salome/gui/GUI/images/selectcolor.png b/doc/salome/gui/GUI/images/selectcolor.png
new file mode 100755 (executable)
index 0000000..70800b2
Binary files /dev/null and b/doc/salome/gui/GUI/images/selectcolor.png differ
diff --git a/doc/salome/gui/GUI/images/selectfont.png b/doc/salome/gui/GUI/images/selectfont.png
new file mode 100755 (executable)
index 0000000..04eff08
Binary files /dev/null and b/doc/salome/gui/GUI/images/selectfont.png differ
diff --git a/doc/salome/gui/GUI/images/set_rotation_point_dialog1.png b/doc/salome/gui/GUI/images/set_rotation_point_dialog1.png
new file mode 100644 (file)
index 0000000..bdab73b
Binary files /dev/null and b/doc/salome/gui/GUI/images/set_rotation_point_dialog1.png differ
diff --git a/doc/salome/gui/GUI/images/set_rotation_point_dialog2.png b/doc/salome/gui/GUI/images/set_rotation_point_dialog2.png
new file mode 100644 (file)
index 0000000..7f3696a
Binary files /dev/null and b/doc/salome/gui/GUI/images/set_rotation_point_dialog2.png differ
diff --git a/doc/salome/gui/GUI/images/studyproperties.png b/doc/salome/gui/GUI/images/studyproperties.png
new file mode 100755 (executable)
index 0000000..af88317
Binary files /dev/null and b/doc/salome/gui/GUI/images/studyproperties.png differ
diff --git a/doc/salome/gui/GUI/images/updaterate.png b/doc/salome/gui/GUI/images/updaterate.png
new file mode 100755 (executable)
index 0000000..4a6c299
Binary files /dev/null and b/doc/salome/gui/GUI/images/updaterate.png differ
diff --git a/doc/salome/gui/GUI/images/urbutton.png b/doc/salome/gui/GUI/images/urbutton.png
new file mode 100755 (executable)
index 0000000..d7c0841
Binary files /dev/null and b/doc/salome/gui/GUI/images/urbutton.png differ
diff --git a/doc/salome/gui/GUI/images/view2.png b/doc/salome/gui/GUI/images/view2.png
new file mode 100755 (executable)
index 0000000..9d48a09
Binary files /dev/null and b/doc/salome/gui/GUI/images/view2.png differ
diff --git a/doc/salome/gui/GUI/images/view_rotation_point.png b/doc/salome/gui/GUI/images/view_rotation_point.png
new file mode 100644 (file)
index 0000000..7fe8f83
Binary files /dev/null and b/doc/salome/gui/GUI/images/view_rotation_point.png differ
diff --git a/doc/salome/gui/GUI/index.htm b/doc/salome/gui/GUI/index.htm
deleted file mode 100755 (executable)
index 774d93c..0000000
+++ /dev/null
@@ -1,180 +0,0 @@
-<html>\r
-<head>\r
-<title>GUI Module Reference Manual</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whstub.js"></script><script language="javascript1.2" src="whstart.js"></script>\r
-<script language="javascript">\r
-<!--\r
-var strDefaultTopic = "about:blank";\r
-var nWebhelpNavPaneMode = 1;                   //1: DHTML 2:Applet 3:PureHTML 4:Noframeset\r
-var bNoApplet  = false;\r
-var strPaneDHTML  = "whd_nvp10.htm";           //whd_nvp10.htm  if tab enabled, whnframe.htm if tab disabled.\r
-var strPaneApplet = "whd_nvp20.htm";\r
-var strPaneList   = "whgdata/whnvp30.htm";\r
-\r
-var strHTML = "";\r
-var strPane = "";\r
-var nViewFrameType = -1;\r
-\r
-function CMRServer()\r
-{\r
-  this.m_cAgents = new Array;\r
-}\r
-var cMRServer = new CMRServer;\r
-\r
-//figure out which mode is the best\r
-if (!window.gAgent)\r
-{\r
-       // low end browser, we don't even try to determine it.\r
-       document.location = "whnjs.htm";\r
-}\r
-else\r
-{\r
-       if (!gbNav4&&!gbIE4&&!gbOpera7&&!gbSafari)\r
-               document.location = "whnjs.htm";\r
-       else if (gbNav4 && !gbNav6 && ((gnVerMinor <= 4.06)))\r
-               document.location = "whnjs.htm";\r
-       else if (gbMac && gbIE4 && !gbIE5)\r
-               document.location = "whnjs.htm";\r
-       //figure out which mode is the best\r
-       else \r
-       {\r
-               nViewFrameType=nWebhelpNavPaneMode;\r
-               if (nWebhelpNavPaneMode==1||nWebhelpNavPaneMode == 2)\r
-               {\r
-                       var gbDHTML=(nWebhelpNavPaneMode==1);\r
-                       if (gbNav4)                                                                             nViewFrameType = 2;\r
-                       if (gbNav4&&(gnVerMinor < 4.1))                                         nViewFrameType = 3;\r
-                       if (gbNav4&&(gnVerMinor == 4.6))                                        nViewFrameType = 3;\r
-                       if (gbIE4&&gbDHTML)                                                                     nViewFrameType = 1;\r
-                       if (gbIE4&&gbSunOS&&nWebhelpNavPaneMode==2)                     nViewFrameType = 3;\r
-                       if (gbNav6&&gbDHTML)                                                            nViewFrameType = 1;\r
-                       if (gbNav6&&!gbNav61&&nWebhelpNavPaneMode == 2)         nViewFrameType = 3;\r
-                       if (gbMac)                                                                                      nViewFrameType = 3;\r
-                       if (gbOpera7&&nViewFrameType == 2)                                      nViewFrameType = 3;\r
-                       if ((bNoApplet)&&(nViewFrameType == 2))                         nViewFrameType = 3;\r
-               }\r
-       }\r
-}\r
-\r
-if (nViewFrameType!=-1)\r
-{\r
-       var gbWindows = ((gAgent.indexOf("win") != -1) || (gAgent.indexOf("16bit") != -1));\r
-       //The colordepth of the 16 color on Windows is 1. \r
-       if ((gbWindows) && (gbNav4) && (window.screen) && (window.screen.colorDepth <= 4))\r
-       {\r
-          alert("WebHelp has detected that your display is set to 16 colors. For full WebHelp support, please set your display to use 256 or more colors.");\r
-          nViewFrameType = 3;\r
-       }\r
-\r
-       //figure out which one is navpane\r
-       if (nViewFrameType == 1)\r
-               strPane = strPaneDHTML;\r
-       else if (nViewFrameType == 2)\r
-               strPane = strPaneApplet;\r
-       else \r
-               strPane = strPaneList;\r
-\r
-       var oParam = new Object();\r
-       oParam.sTopic = "";\r
-       var oMsg = new whMessage(WH_MSG_GETDEFAULTTOPIC, window, 1, oParam);\r
-       if (SendMessage(oMsg) && oParam.sTopic != "")\r
-               strDefaultTopic =  oParam.sTopic;\r
-\r
-\r
-       if (nViewFrameType == 1)\r
-       {\r
-               //DHTML (iframe or xml based)\r
-               strHTML += "<frameset  id=\"whPfset\" cols=\"260,*\" frameborder=\"1\">";\r
-               strHTML += "<frame name=\"bsscleft\" title=\"navigation frame\" src=\"" + strPane + "\" scrolling=\"no\"></frame>";\r
-               strHTML += "<frame name=\"bsscright\" title=\"topic frame\" src=\"" + strDefaultTopic + "\" scrolling=\"auto\"></frame></frameset>";\r
-       }\r
-       else if (nViewFrameType == 2)\r
-       {\r
-               //applet (xml based)\r
-               strHTML += "<frameset  id=\"whPfset\" cols=\"260,*\" framespacing=\"0\" frameborder=\"0\" border=\"0\">";\r
-               strHTML += "<frame name=\"bsscleft\" title=\"navigation frame\" src=\"" + strPane+ "\" scrolling=\"no\" marginwidth=\"0\" marginheight=\"0\"></frame>";\r
-               strHTML += "<frame name=\"bsscright\" title=\"topic frame\" src=\"" + strDefaultTopic + "\" scrolling=\"auto\"></frame></frameset>";\r
-       }\r
-       else if (nViewFrameType == 3)\r
-       {\r
-               //generic html (pure html based)\r
-               strHTML += "<frameset  id=\"whPfset\" cols=\"260,*\">";\r
-               strHTML += "<frame title=\"navigation frame\" src=\"" + strPane + "\" name=\"bsscleft\"  scrolling=\"no\"></frame>";\r
-               strHTML += "<frame title=\"topic frame\" src=\"" + strDefaultTopic + "\" name=\"bsscright\" scrolling=\"auto\"></frame>";\r
-               strHTML += "</frameset>";\r
-       } \r
-       else if (nViewFrameType == 4)\r
-       {\r
-               //no navipane at all\r
-               strHTML += "<frameset  id=\"whPfset\" border=\"0\" cols=\"100%,*\">";\r
-               strHTML += "<frame title=\"topic frame\" src=\"" + strDefaultTopic + "\" name=\"bsscright\" framespacing=\"0\" frameborder=\"0\" border=\"0\" scrolling=\"auto\">";\r
-               strHTML += "</frameset>";\r
-       }\r
-\r
-       document.write(strHTML);\r
-\r
-       RegisterListener2(window, WH_MSG_SHOWPANE);\r
-       RegisterListener2(window, WH_MSG_HIDEPANE);\r
-       RegisterListener2(window, WH_MSG_ISPANEVISIBLE);\r
-       window.onunload = window_unload;\r
-}\r
-\r
-function window_unload()\r
-{\r
-       UnRegisterListener2(window, WH_MSG_SHOWPANE);\r
-       UnRegisterListener2(window, WH_MSG_HIDEPANE);\r
-       UnRegisterListener2(window, WH_MSG_ISPANEVISIBLE);\r
-}\r
-\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       var nMsgId = oMsg.nMessageId;\r
-       if (nMsgId == WH_MSG_SHOWPANE)\r
-       {\r
-               getElement("whPfset").cols = "260,*";\r
-               var onMsg = new whMessage(WH_MSG_PANESTATUE, this, 1, "visible");\r
-               SendMessage(onMsg);\r
-               onMsg = new whMessage(WH_MSG_GETPANEINFO, this, 1, "");\r
-               if (SendMessage(onMsg))\r
-               {\r
-                       onMsg = new whMessage(WH_MSG_PANEINFO, this, 1, onMsg.oParam);\r
-                       SendMessage(onMsg);\r
-               }\r
-               return false;\r
-       }\r
-       else if (nMsgId == WH_MSG_HIDEPANE)\r
-       {\r
-               getElement("whPfset").cols = "0,*";\r
-               var onMsg = new whMessage(WH_MSG_PANESTATUE, this, 1, "invisible");\r
-               SendMessage(onMsg);\r
-               onMsg = new whMessage(WH_MSG_PANEINFO, this, 1, "");\r
-               SendMessage(onMsg);\r
-               return false;\r
-       }\r
-       else if (nMsgId == WH_MSG_ISPANEVISIBLE)\r
-       {\r
-               var n = parseInt(getElement("whPfset").cols);\r
-               if (n > 0)\r
-               {\r
-                       oMsg.oParam.bVisible = true;\r
-               }\r
-               return false;\r
-       }\r
-       return true;\r
-}\r
-//-->\r
-</script>\r
-<body>\r
-<noscript>\r
-       <p> It seems javascript is disabled in your browser, please enable it and reload again, or click <a href="whnjs.htm">here</a> to view without javascript</p>\r
-</noscript>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/index_csh.htm b/doc/salome/gui/GUI/index_csh.htm
deleted file mode 100755 (executable)
index ba099aa..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-<html>\r
-<head>\r
-<title>GUI Module Reference Manual</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<script language="javascript" src="whutils.js"></script>\r
-<script language="javascript">\r
-<!--\r
-var gCSHFileName   = "whc_data.htm";\r
-var gCSHSuffixName1 = "_csh.html";\r
-var gCSHSuffixName2 = "_csh.htm";\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-gCSHFileName="cshdat_webhelp.htm";\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-var gasProj = new Array();\r
-gasProj[0] = _getPath(document.location.href);\r
-var gCurrent = 0;\r
-\r
-function addProject(strProj)\r
-{\r
-       var len  = gasProj.length;\r
-       if (strProj)\r
-       {\r
-               strProj = _replaceSlash(strProj);\r
-               if (strProj.lastIndexOf("/") != strProj.length - 1)\r
-                       strProj += "/";\r
-               var strPPath = _getFullPath(_getPath(document.location.href), strProj);\r
-               var bFound = false;\r
-               for (var i = 0; i < len; i ++)\r
-               {\r
-                       if (isSamePath(gasProj[i], strPPath))\r
-                       {\r
-                               bFound = true;\r
-                               break;\r
-                       }\r
-               }\r
-               if (!bFound)\r
-                       gasProj[len] = strPPath;\r
-       }\r
-}\r
-\r
-function isSamePath(strPath1, strPath2)\r
-{\r
-       return strPath1.toLowerCase() == strPath2.toLowerCase();\r
-}\r
-\r
-function goNext()\r
-{\r
-       gCurrent ++;\r
-       var len = gasProj.length;\r
-       if (gCurrent >= len)\r
-               return getHomePage()\r
-       else\r
-               frames["csh"].location = gasProj[gCurrent] + gCSHFileName;\r
-       return "";\r
-}\r
-\r
-function getRelHomePage(strLocation)\r
-{\r
-       var strCurPPath = _getPath(strLocation);\r
-       var strOriPPath = _getPath(getHomePage());\r
-       var strRelPath = _getRelativeFileName(strOriPPath, strCurPPath);\r
-       var strURL = getHomePage() + "#" + strRelPath;\r
-       return strURL;\r
-}\r
-\r
-function getHomePage()\r
-{\r
-       var strHomePage;\r
-       var strTmp = location.toString();\r
-       var nPos = strTmp.indexOf("#");\r
-       if (nPos != -1)\r
-       {\r
-          strHomePage = strTmp.substring(0, nPos);\r
-       }\r
-       else\r
-       {\r
-          strHomePage = strTmp;\r
-       }\r
-       var nPos1 = strHomePage.indexOf(gCSHSuffixName1);\r
-       var nPos = strHomePage.indexOf(gCSHSuffixName2);\r
-       if (nPos != -1)\r
-       {\r
-          strHomePage = strHomePage.substring(0,nPos);\r
-          if (nPos1 != -1)\r
-            strHomePage += ".html";\r
-          else\r
-            strHomePage += ".htm";\r
-       }\r
-       return strHomePage;\r
-}\r
-//-->\r
-</script>\r
-</head>\r
-<frameset rows="1,*">\r
-<frame name="dumb" src="about:blank"></frame>\r
-<frame name="csh" src="cshdat_webhelp.htm"></frame>            \r
-</frameset>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/index_rhc.htm b/doc/salome/gui/GUI/index_rhc.htm
deleted file mode 100755 (executable)
index 6c22f70..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-<html>\r
-<head>\r
-<title>GUI Module Reference Manual</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<script language="javascript" src="whutils.js"></script>\r
-<script language="javascript">\r
-<!--\r
-var gCSHFileName   = "whc_data.htm";\r
-var gCSHSuffixName1 = "_rhc.html";\r
-var gCSHSuffixName2 = "_rhc.htm";\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-gCSHFileName="cshdat_robohelp.htm";\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-var gasProj = new Array();\r
-gasProj[0] = _getPath(document.location.href);\r
-var gCurrent = 0;\r
-\r
-function addProject(strProj)\r
-{\r
-       var len  = gasProj.length;\r
-       if (strProj)\r
-       {\r
-               strProj = _replaceSlash(strProj);\r
-               if (strProj.lastIndexOf("/") != strProj.length - 1)\r
-                       strProj += "/";\r
-               var strPPath = _getFullPath(_getPath(document.location.href), strProj);\r
-               var bFound = false;\r
-               for (var i = 0; i < len; i ++)\r
-               {\r
-                       if (isSamePath(gasProj[i], strPPath))\r
-                       {\r
-                               bFound = true;\r
-                               break;\r
-                       }\r
-               }\r
-               if (!bFound)\r
-                       gasProj[len] = strPPath;\r
-       }\r
-}\r
-\r
-function isSamePath(strPath1, strPath2)\r
-{\r
-       return strPath1.toLowerCase() == strPath2.toLowerCase();\r
-}\r
-\r
-function goNext()\r
-{\r
-       gCurrent ++;\r
-       var len = gasProj.length;\r
-       if (gCurrent >= len)\r
-               return getHomePage()\r
-       else\r
-               frames["csh"].location = gasProj[gCurrent] + gCSHFileName;\r
-       return "";\r
-}\r
-\r
-function getRelHomePage(strLocation)\r
-{\r
-       var strCurPPath = _getPath(strLocation);\r
-       var strOriPPath = _getPath(getHomePage());\r
-       var strRelPath = _getRelativeFileName(strOriPPath, strCurPPath);\r
-       var strURL = getHomePage() + "#" + strRelPath;\r
-       return strURL;\r
-}\r
-\r
-function getHomePage()\r
-{\r
-       var strHomePage;\r
-       var strTmp = location.toString();\r
-       var nPos = strTmp.indexOf("#");\r
-       if (nPos != -1)\r
-       {\r
-          strHomePage = strTmp.substring(0, nPos);\r
-       }\r
-       else\r
-       {\r
-          strHomePage = strTmp;\r
-       }\r
-       var nPos1 = strHomePage.indexOf(gCSHSuffixName1);\r
-       var nPos = strHomePage.indexOf(gCSHSuffixName2);\r
-       if (nPos != -1)\r
-       {\r
-          strHomePage = strHomePage.substring(0,nPos);\r
-          if (nPos1 != -1)\r
-            strHomePage += ".html";\r
-          else\r
-            strHomePage += ".htm";\r
-       }\r
-       return strHomePage;\r
-}\r
-//-->\r
-</script>\r
-</head>\r
-<frameset rows="1,*">\r
-<frame name="dumb" src="about:blank"></frame>\r
-<frame name="csh" src="cshdat_robohelp.htm"></frame>           \r
-</frameset>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/about_salome.doc b/doc/salome/gui/GUI/input/about_salome.doc
new file mode 100644 (file)
index 0000000..4f132ab
--- /dev/null
@@ -0,0 +1,12 @@
+/*!
+
+\page about_salome_page About SALOME
+
+<ul>
+<li>\subpage intro_to_salome_page</li>
+<li>\subpage salome_architecture_page</li>
+<li>\subpage installing_salome_page "Installing SALOME"</li>
+<li>\subpage running_salome_page</li>
+</ul>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/creating_new_study.doc b/doc/salome/gui/GUI/input/creating_new_study.doc
new file mode 100644 (file)
index 0000000..3c4d0e3
--- /dev/null
@@ -0,0 +1,36 @@
+/*!
+
+\page creating_new_study_page Creating a new study
+
+Study is a document within GUI, an abstraction layer between actual
+document data (probably, remote data available through CORBA) and data
+presentation (in the Object Browser). It contains a tree of Data
+Object instances.
+
+<em>To create a new study:</em>
+
+\par 
+From the main menu select <b>File > New</b> or in the standard toolbar
+click "New document" button.
+
+\image html newsticn.jpg "&quot;New document&quot; button"
+
+Your study will be created with default name \b Study1. In SALOME you
+can create several studies.
+
+In addition to it, you can create several windows with different
+activated viewers (VTK, OCC, Plot2d) for each study.
+
+<em>To create a new window for a definite study:</em>
+<ol>
+<li>Make your study \b active: maximize it (if it minimized) or  click on
+the top control zone of the study window.
+</li>
+<li>\n From the main menu select <b>Window > New Window</b> and from the submenu
+choose the viewer, which will be activated in a new window.
+</li>
+</ol>
+
+The window for your study will be created with a default name \b Study1.
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/displaying_studies.doc b/doc/salome/gui/GUI/input/displaying_studies.doc
new file mode 100644 (file)
index 0000000..b45a8ed
--- /dev/null
@@ -0,0 +1,30 @@
+/*!
+
+\page displaying_studies_page Displaying studies
+
+Starting from SALOME version 3.0.0. you are able to work in a
+multi-desktop environment, which means that you can open as many
+studies as you need, place them wherever you wish on the desktop, in
+brief, work with Salome Platform like with a normal Windows
+application.
+\n Such windows as Object Browser and Python Console are dockable and
+also can be placed at any part of the desktop.
+\n Only one study window in representation area can be active. You can
+change their size and move any windows between representation
+areas. When an area becomes empty, it is not displayed.
+\n All windows are placed inside tabs where you can switch between
+them. If there are several windows (viewers) in your current study and
+you want to display more then one at the same time, you can split
+representation area into two parts, in horizontal or vertical
+direction, to create two representation areas with windows be placed
+in them. To do this, right-click on the tab and select <b>Split
+Vertically</b> or <b>Split Horizontally</b>.
+
+For example, on this screen-shot the active zone has been split
+horizontally to be able to work with OCC and VTK viewers
+simultaneously, the one of the windows was split again, at this time
+vertically to see Plot 2d graphs.
+
+\image html neo-view2.png
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/editing_studies.doc b/doc/salome/gui/GUI/input/editing_studies.doc
new file mode 100644 (file)
index 0000000..cafc03e
--- /dev/null
@@ -0,0 +1,19 @@
+/*!
+
+\page editing_studies_page Editing studies
+
+\b SALOME has \b Copy/Paste functionality allowing to edit your study
+within a definite component:
+
+<em>To copy/paste a definite object:</em>
+\par
+In the main toolbar click "Copy"/"Paste" button or from the main menu
+choose <b>Edit > Copy/Paste</b> option. 
+
+\image html copy-paste.jpg "&quot;Copy&quot; and &quot;Paste&quot; buttons"
+
+\n The availability of \b Copy/Paste operations depends on the module and
+the nature of an operation or an object, so if the module does not
+provide this functionality, it won't be available.
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/geometry_preferences.doc b/doc/salome/gui/GUI/input/geometry_preferences.doc
new file mode 100644 (file)
index 0000000..651ef2e
--- /dev/null
@@ -0,0 +1,47 @@
+/*!
+
+\page geometry_preferences_page Geometry preferences
+
+In the \b Geometry module you can set preferences for visualisation of
+geometrical figures which can be used in later sessions with this
+module.
+
+\image html pref15.png
+
+\par
+For all color definitions click on the respective line to access to
+the \ref select_color_and_font_page "Select Color" dialog box.
+
+<ul>
+<li><b>General</b></li>
+<ul>
+<li><b>Default Display Mode</b> - allows to choose between wireframe
+or shading.<li>
+<li><b>Default Shading Color</b> - allows to select default shading
+color.<li>
+<li><b> Default Wireframe Color</b> - allows to select default
+wireframe color (to be applied to any lines not being free boundaries
+or isolated lines).<li>
+<li><b>Color of free boundaries</b> - allows to select default color for free boundaries.<li>
+<li><b>Color of edges, vectors and wires</b> - allows to select
+default color for edges, vectors and wires (isolated lines).<li>
+<li><b>Color of points</b> - allows to select default color for
+vertices.<li>
+<li><b>Color of isolines</b> - allows to select default color for
+isolines.<li>
+<li><b>Step Value for Spin Boxes</b> - allows to define the increment
+of values set in spin boxes.<li>
+</ul>
+</ul>
+
+<ul>
+<li><b>Marker of Points</b></li>
+<ul>
+<li><b>Type</b> - allows to select the symbol for representation of
+points (cross, asterisk, etc.).</li>
+<li><b>Size</b> - allows to define the size of the marker from 1
+(smallest) to 7 (largest).</li>
+</ul>
+</ul>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/getting_started.doc b/doc/salome/gui/GUI/input/getting_started.doc
new file mode 100644 (file)
index 0000000..a068735
--- /dev/null
@@ -0,0 +1,20 @@
+/*!
+
+\page getting_started_page Getting started
+
+When you start the SALOME Platform, the following initial desktop window appears:
+
+\image html view2.png
+
+&nbsp;&nbsp;&nbsp;&nbsp;In general, the SALOME platform is destined
+for performance of different numerical calculations and  visualization
+of the resulting data. For that purpose, in the SALOME environment the
+following notion is used  - \b Study.
+<br>Study represents a working document in which you can realize all
+operations connected with the SALOME functionality. 
+<br>SALOME is a multi-study platform. It means that simultaneously you can
+work with several studies. 
+
+\note To proceed working in SALOME you should create or open a new study.     
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/gui_module_chapter.doc b/doc/salome/gui/GUI/input/gui_module_chapter.doc
new file mode 100644 (file)
index 0000000..3d4f43c
--- /dev/null
@@ -0,0 +1,39 @@
+/*!
+
+\page gui_module_page GUI module
+
+<ul>
+<li>\subpage introduction_to_gui_page</li>
+<li>\subpage getting_started_page</li>
+<li>\subpage salome_desktop_page</li>
+<li>\subpage study_management_page</li>
+<ul>
+<li>\ref creating_new_study_page</li>
+<li>\ref opening_studies_page</li>
+<li>\ref saving_and_closing_studies_page</li>
+<li>\ref editing_studies_page</li>
+<li>\ref displaying_studies_page</li>
+<li>\ref working_with_python_scripts_page</li>
+<li>\ref setting_study_properties_page</li>
+</ul>
+<li>\subpage using_object_browser_page</li>
+<li>\subpage using_registry_tool_page</li>
+<li>\subpage using_catalog_generator_page "Using Catalog Generator"</li>
+<li>\subpage viewers_page</li>
+<ul>
+<li>\ref occ_3d_viewer_page</li>
+<li>\ref vtk_3d_viewer_page</li>
+<li>\ref plot2d_viewer_page</li>
+</ul>
+<li>\subpage setting_preferences_page</li>
+<ul>
+<li>\ref setting_preferences_subpage</li>
+<li>\ref select_color_and_font_page</li>
+<li>\ref salome_preferences_page</li>
+<li>\ref geometry_preferences_page</li>
+<li>\ref mesh_preferences_page</li>
+<li>\ref postpro_preferences_page</li>
+</ul>
+</ul>
+
+*/
diff --git a/doc/salome/gui/GUI/input/index.doc b/doc/salome/gui/GUI/input/index.doc
new file mode 100644 (file)
index 0000000..1f340a4
--- /dev/null
@@ -0,0 +1,51 @@
+/*!
+
+\mainpage GUI Module Reference Documentation
+
+<ul>
+<li>\subpage introduction_page</li>
+<li>\subpage about_salome_page</li>
+<ul>
+<li>\ref intro_to_salome_page</li>
+<li>\ref salome_architecture_page</li>
+<li>\ref installing_salome_page</li>
+<li>\ref running_salome_page</li>
+</ul>
+<li>\subpage gui_module_page "GUI module"</li>
+<ul>
+<li>\ref introduction_to_gui_page</li>
+<li>\ref getting_started_page</li>
+<li>\ref salome_desktop_page</li>
+<li>\ref study_management_page</li>
+<ul>
+<li>\ref creating_new_study_page</li>
+<li>\ref opening_studies_page</li>
+<li>\ref saving_and_closing_studies_page</li>
+<li>\ref editing_studies_page</li>
+<li>\ref displaying_studies_page</li>
+<li>\ref working_with_python_scripts_page</li>
+<li>\ref setting_study_properties_page</li>
+</ul>
+</ul>
+<li>\ref using_object_browser_page</li>
+<li>\ref using_registry_tool_page</li>
+<li>\ref using_catalog_generator_page "Using Catalog Generator"</li>
+<li>\ref viewers_page</li>
+<ul>
+<li>\ref occ_3d_viewer_page</li>
+<li>\ref vtk_3d_viewer_page</li>
+<li>\ref plot2d_viewer_page</li>
+</ul>
+<li>\ref setting_preferences_page</li>
+<ul>
+<li>\ref setting_preferences_subpage</li>
+<li>\ref select_color_and_font_page</li>
+<li>\ref salome_preferences_page</li>
+<li>\ref geometry_preferences_page</li>
+<li>\ref mesh_preferences_page</li>
+<li>\ref postpro_preferences_page</li>
+</ul>
+</ul>
+
+
+*/
diff --git a/doc/salome/gui/GUI/input/installing_salome.doc b/doc/salome/gui/GUI/input/installing_salome.doc
new file mode 100644 (file)
index 0000000..e0f26af
--- /dev/null
@@ -0,0 +1,961 @@
+/*!
+
+\page installing_salome_page SALOME Installation Wizard Help
+
+<hr>
+<ul>
+<li>\ref installing_products "Installing products with the Installation Wizard"
+<ul>
+<li>\ref gui_mode_install "GUI mode"
+<li>\ref batch_mode_install "Batch mode"
+<li>\ref environment_files "Environment files"
+</ul>
+<li>\ref notes_on_check "Notes on check products version procedure"
+<li>\ref pick_up_env "Pick up the environment"
+<li>\ref modifying_xml "Modifying XML configuration file"
+<li>\ref installation_scripts "Implementing installation scripts for the new products"
+<li>\ref finish_buttons "Customizing Readme page buttons"
+</ul>
+<hr>
+\anchor installing_products 
+<h1>Installing products with the <em>Installation Wizard</em></h1>
+
+The Installation Wizard can be launched in two modes: \b GUI and \b
+batch.
+<br>The root directory of the Installation Wizard contains Python
+script \b runInstall. To run the Installation Wizard just type \b runInstall.
+in the terminal window:
+<br><br>[ python ] \b runInstall [options]
+
+Without options this script will launch the SALOME Installation
+Wizard in the default mode (GUI). \n The default installation settings
+can be overridden by using command line options. Each option has a
+short and a long notation:
+
+<b>-g / --gui</b>
+\par
+Runs the Installation Wizard in the GUI mode (this is the default
+mode).
+
+<b>-b / --batch</b>
+\par
+Runs the Installation Wizard in the terminal mode.
+
+<b>-f FILE / --file=FILE</b>
+\par
+The XML configuration file to be used by the Installation Wizard.  If
+this option is not used then the installation script tries to define
+the \e Linux version and use the corresponding XML file if it exists. For
+examle, for <em>Linux Mandrake 10.1</em>  the <b>config_Mandrake_10.1.xml</b>  file
+will be used by default. If no appropriate file is found, the file
+<b>config.xml</b> will be used. This file refers to the basic target platform 
+which is <em>Linux Mandrake 10.1</em> for SALOME 3.0 and newer. If <b>config.xml</b>
+file is not found either, a warning message box is shown (in GUI mode)
+or printed to the console (in batch mode) and the Installation Wizard 
+quits.
+
+<b>-d DIR / --target=DIR</b>
+\par
+The target directory SALOME platform is to be installed to. 
+If used, this option overrides the default target directory, given in
+the configuration XML file (usually <b>${HOME}/salome_\<version\></b>, 
+see \ref modifying_xml "here" for more details).
+
+<b>-t DIR / --tmp=DIR</b>
+\par
+The directory, which should be used for temporary files. If given,
+this option overrides the default temporary directory, given in the
+configuration xml file (usually \b /tmp, see \ref modifying_xml "here"
+for more information).
+
+<b>-a / --all-from-sources</b>
+\par
+Forces all the products to be installed from sources (including all
+SALOME modules). If this option is used, all default installation
+modes for all products are ignored.
+\n This option is helpful when the user wants to install SALOME on the
+platform which is not officially supported. In this case, the user can
+try to run the SALOME Installation Wizard with the \b -a option in order
+to build all the products from sources.
+\n <b>Note, that this is a time-consuming operation which can take
+more than 24 hours depending on the computer.</b>
+
+<b>-h / --help</b>
+\par
+Prints help information on the Installation Wizard's use.
+
+<b>-v / --version</b>
+\par
+Prints version information (\b Note: this is the Installation Wizard's
+version number, not the number of SALOME platform version).
+
+The installation procedure supports different \em Linux platforms and
+installs various installation 3d-party prerequisite products which are
+required by SALOME platform. As it was mentioned above, the basic
+target platform for SALOME 3.0 and newer is <em>Linux Mandrake 10.1</em>.
+Use of configuration XML files gives a flexible way to modify the list
+of products to be installed by the Installation Wizard without
+changing the program source code. Just create your own XML
+configuration file and implement installation scripts for the
+prerequisite products you need and then use this XML file with the
+Installation Wizard. This can be done, for example, for some Linux
+platform which is not supported directly by the Installation
+Wizard. See \ref modifying_xml "Modifying XML configuration file" and
+\ref installation_scripts "Implementing installation scripts for the new products"
+sections for more information.
+
+<br>
+\anchor gui_mode_install
+<h2>GUI mode</h2>
+
+The <b>Installation Wizard</b> GUI has been developed using
+Trolltech's <b>Qt 3.0.5</b> toolkit. After launching the Installation
+Wizard in the GUI mode the wizard window is shown to the user. This
+wizard guides the user through several subsequent pages. To navigate
+between the pages use \em "Next" and \em "Back" buttons in the lower
+part of the wizard window. The \em "Cancel" button closes the wizard
+window and quits the installation procedure after the user's
+confirmation. The \em "Help" button opens an additional window to show
+help information.
+
+The first \em "Introduction" page is shown in \ref figure_1 "Figure 1". 
+Skip this page by clicking \em "Next":
+
+\anchor figure_1
+\image html intropage.png 
+\n <center><b>Figure 1:</b> "Introduction" page</center>
+
+In the second page you are proposed to enter the target directory
+where the SALOME platform should be installed to. You can also click
+<em>"Browse..."</em> and choose the destination folder using the standard
+browse directory dialog box.
+\n If the directory you want to install products to does not exist you
+are prompted to confirm directory creation. If you type a wrong
+directory path, or if you do not have write permissions 
+for the directory you use, the corresponding message box is shown.
+
+You can also change the temporary directory (which is used to store
+temporary files required for the installation).
+\n In the bottom part of the window the total disk space required for
+the installation and for the temporary files is displayed (see below
+for more details).
+
+In the GUI mode the Installation Wizard provides two different options
+to install the SALOME platform: \b basic (default option) and
+\b advanced. In the \b basic mode the user should enter the target
+installation directory and temporary folder. All other installation
+options are taken from the XML configuration file (see \ref figure_2 "Figure 2"):
+
+\anchor figure_2
+\image html productpage1.png
+\n <center><b>Figure 2:</b> "Installation settings"</center>
+
+In addition, you have a choice to use "Install all products from
+sources" check box. If this option is turned on, all the products will
+be installed from the sources (using their own build procedures). This
+check box corresponds to the <b>--all-from-sources (-a)</b> option of
+the \b runInstall script (see \ref installing_products "here").
+
+\Note <b>Installation of all products from sources is a long-time
+operation.</b>
+
+To switch to the \b advanced option, click <em>"More..."</em> (see 
+\ref figure_3 "Figure 3" ).
+
+In the advanced mode you have a possibility to select products to be
+installed. Each product can have several options of installation: you
+have a possibility to use the native product (provided with Linux
+distribution and installed in the system folders), install already
+precompiled binaries, build the product from sources or not install it
+at all. Available options and default option are taken from the XML
+configuration file. You can mark the products you want to install by
+clicking the corresponding radio-buttons in the list view in the left
+part of the page.
+\n Note, that some products may require some other pre-requisite
+products to be installed (or these prerequisite products should be
+already available on your computer). The installation procedure has a
+special feature to automatically mark these products in the list
+view. For example, in order to install \b PyQt it is necessary to have
+<b>gcc, Python, Qt</b> and \b Sip installed. Therefore all these
+products will also be  turned on when you check on \b PyQt. This
+feature can be switched off by clicking the <em>"Automatic
+dependencies"</em> checkbox. Turn on this checkbox if you want all
+prerequisite products to be automatically checked when you select some
+product to be installed. Turn off this checkbox if you want to disable
+this feature.
+
+\anchor figure_3
+\image html productpage.png
+\n <center><b>Figure 3:</b> "Installation settings" page in the 'advanced' mode</center>
+
+If you want to use native products (like \b gcc, \b tcl, etc.), select <em>"use
+native"</em> option. 
+\n Special button in the right part of the page - <em>"Unselect All"</em> -
+allows to reset quickly all products to the <em>"not install"</em> state.
+<br><br>
+There are also two checkboxes on this page: <em>"SALOME sources"</em>
+and <em>"SALOME binaries"</em>. These three-state checkboxes allow
+quick selecting/unselecting sources/binaries packages of SALOME
+modules for installation.
+<br><br>
+In addition, when some SALOME sources are selected, one more check box
+becomes available: <em>"Build SALOME sources"</em>. If this option is
+turned on, the selected SALOME modules will be built and installed
+from sources.
+
+\note <b>If this check box is turned on, the corresponding SALOME
+module binaries package installation is disabled, because of  SALOME
+module sources and binaries packages conflict</b> (see \ref figure_4 "Figure 4" below).
+
+\anchor figure_4
+\image html productpage2.png
+\n <center><b>Figure 4:</b> "Build SALOME sources" check box
+usage</center>
+
+The box at the right side of the page displays the information about
+currently highlighted product: name, version and short description,
+required disk space, disk space required for temporary files, list of
+prerequisites (this information is provided in the XML file) and
+current user choice.
+<br><br>
+The <em>"Disk space required:"</em> field displays how much disk space
+on the hard drive is required for installation of selected products.
+
+\note <b>Please, take into account that the displayed amount of
+required disk space is approximate and may differ when you install
+products on your hard drive.</b>
+
+The installation procedure uses a special directory to store temporary
+files. The <em>"Space for temporary files:"</em> field shows the information
+about required disk space on the hard drive for extracting and
+compiling the selected products. You can change the temporary
+directory - just type a path to the folder you want to use or click on 
+the corresponding <em>"Browse..."</em> button.
+
+\note Actually, temporary files are not stored directly in the
+directory entered by the user. The Installation Wizard creates an
+additional folder in this directory named something like
+INSTALLWORK<b>XXXXX</b> where XXXXX is a unique number. This allows to launch
+several Installation Wizards simultaneously. This temporary directory
+is removed automatically when the installation finishes.
+
+The installation procedure also checks the available disk space. If
+there is not enough disk space on your hard drive you will see a
+corresponding error message box.
+
+\note <b>You are strongly recommended not to use directory names
+containing spaces</b>. Otherwise you can experience 
+some troubles with the installation.
+
+To proceed further click <em>"Next"</em>. At this moment the program will make
+some tests to check installation settings: if there is enough disk
+space on the hard drive, check for native products installation,
+dependencies (prerequisites) for each product you have selected to be
+installed. If any test fails you will see the corresponding warning
+message box. Otherwise the wizard will proceed to the next page:
+
+\anchor figure_5
+\image html choicepage.png
+\n <center><b>Figure 5:</b> "Check your choice" page</center>
+
+This page summarizes the installation options you've made on the
+previous pages. You can check again your choice and change it if
+necessary by getting back to the previous page.
+\n When you are sure that everything is OK, click <em>"Next"</em> to
+follow to the \ref figure_6 "next page".
+
+\anchor figure_6
+\image html progresspage1.png
+\n <center><b>Figure 6:</b> "Installation progress" page</center>
+
+To start installation of the selected products click "Start". It
+launches the shell installation script and you will be able to see the
+output of the script in the  dialog topmost frame. If any errors occur
+during the installation progress the corresponding messages will be
+printed to the log window in bold red font.
+
+It is possible to break the installation at any time by clicking
+"Stop". Then you can get back to the previous pages if you wish to
+change installation settings or restart installation by pressing again
+"Start" button.
+
+\note <b>In the current implementation it is not possible to resume
+the stopped installation process; it will be re-started from the very
+beginning.</b>
+
+\anchor figure_7
+\image html progresspage.png
+\n <center><b>Figure 7:</b> "Installation progress" page: installation in progress</center>
+
+The <em>"Installation Status"</em> frame window shows you the progress of
+installation. \c "Waiting" status means that installation of this product
+has not been started yet. The product currently being installed is
+marked as \c "Processing". All installed products have \c "Completed"
+status.
+
+You can abort installation and close the installation procedure using
+\em "Cancel" button.
+
+\note <b>This button sends the signal "SIGTERM" to the shell
+script. The script tries to clear all temporary files. The process of
+removing temporary files can take some time, so the installation
+wizard will wait 3 seconds before closing.</b>
+
+At the end of installation (all selected products have been installed
+successfully) you can go back to the previous pages to start a new
+installation or click \em "Next" to go the Readme page:
+
+\anchor figure_8
+\image html readmepage.png
+\n <center><b>Figure 8:</b> "Finish installation" page</center>
+
+In this page you can read important information about the Instalation
+Wizard itself and some tips: how to run and test SALOME or how to
+build SALOME from the sources. This is the contents of the README file
+which you can find in the root directory of the Installation Wizard.
+
+You can also launch SALOME Desktop from this page or read the Release
+Notes file by clicking on the corresponding buttons in the lower part
+of the page (see \ref modifying_xml "here" and \ref finish_buttons
+"here" for more information about customizing these buttons).
+
+<br>
+\anchor batch_mode_install
+<h2>Batch mode</h2>
+
+To launch the Installation Wizard in the batch mode use -\b b (--\b batch)
+parameter.
+\n In this mode the GUI wizard is not shown but all the installation
+status is displayed directly in the console. In the batch mode the
+user does not have a possibility to change installation settings which
+are given in the configuration file, except target and temporary
+directories which can be overridden by the corresponding command line
+options.
+\n The only exception is --\b all-from-sources (-\b a) option which enables
+special installation mode in which all the products (including SALOME
+modules) are installed from sources, ignoring the default mode defined
+in the XML configuration file (see \ref installing_products "here" for details).
+
+\anchor figure_9
+\image html batchmode.png
+\n <center><b>Figure 9:</b> Batch mode</center>
+
+<br>
+\anchor environment_files
+<h2>Environment files</h2>
+
+During the process of installation the script creates some environment
+files to simplify the procedure of launching SALOME. These shell
+scripts set all necessary environment variables for all products you
+have installed. To learn how installation scripts collects the
+environment, see \ref pick_up_env "here". These files are: \b
+salome.csh + \b salome.sh in the <b><em>KERNEL module sources</em></b>
+and <b><em>KERNEL module binaries</em></b> root directories and
+\b env_products.csh + \b env_products.sh and \b env_build.csh + 
+\b env_build.sh in the target installation directory.
+
+\note there is some difference between these files: \b env_build.*
+files are optimized to be used for building SALOME modules from
+sources (see \b README file provided with the installation procedure
+on the CD). The \b env_products.* (and \b salome.*) files are
+optimized for SALOME launching. The behavior is defined by the
+environment variable \b ENV_FOR_LAUNCH which is set to \b 0 in
+env_build.* files and to \b 1 in env_products.* (salome.*) files.
+
+<br>
+<hr>
+\anchor notes_on_check
+<h2>Notes on <em>check products version</em> procedure</h2>
+
+Unfortunately there is no exact algorithm to identify the product
+version under Linux platform. The information in this section gives an
+idea how the version is checked for the native/preinstalled products
+(this information refers to the base platform <em>Linux Mandrake
+10.1</em>; and the same algorithms are used for other platforms).
+
+The general rule for all products is that the path to the binaries
+should be set via the \b PATH environment variable, path to the libraries
+should be set via the \b LD_LIBRARY_PATH variable and the python modules
+should be available via the \b PYTHONPATH variable.
+
+\note the information given in this section refers to the prerequisite
+products for SALOME version 3.2.4.
+
+<ul>
+<li>gcc 3.4.1
+\n\n Version number is checked by <b>gcc -dumpversion</b> command. The \b gcc
+executable should be in the \b PATH environment variable. Version should
+be equal to "3.4.1". It is recommended to use native gcc on Mandrake
+10.1.<br><br>
+</li>
+<li>tcl/tk 8.4.5
+\n\n Version number for \b tcl/tk can be found in tclConfig.sh and
+tkConfig.sh files (\b TCL_VERSION and \b TK_VERSION variables
+correspondingly). Version number should be equal to "8.4" (release
+number is not checked). Set the \b TCLHOME environment variable to the
+root directory of tcl/tk installation. It is recommended to use native
+tcl/tk on Mandrake 10.1.<br><br>
+</li>
+<li>boost 1.31.0
+\n\n Version number is defined by \b version.hpp file which is part of
+the boost distribution. This file defines the \b BOOST_VERSION macro
+which should be equal to "103100". In addition the existence of boost
+libraries is checked. Set the \b BOOSTDIR environment variable if you
+have a preinstalled version of boost.<br><br>
+</li>
+<li>Python 2.3.4
+\n\n Version number is checked by \b python -\b V command. The \b python
+executable should be in the \b PATH environment variable. Version
+number should be equal to "2.3.4". It is recommended to use native
+Python on Mandrake 10.1. Set the \b PYTHONHOME environment variable if
+you have a preinstalled version of Python.<br><br>
+</li>
+<li>Swig 1.3.24
+\n\n Version number is checked by \b swig -\b version command. The \b swig
+executable should be in the \b PATH environment variable. Version number
+should be equal to "1.3.24".
+<br><br>
+</li>
+<li>Qt 3.3.3
+\n\n Version number is defined by \b qglobal.h file which is part of the
+Qt distribution. This file defines \b QT_VERSION_STR macro which should be equal to "3.3.3". It is recommended to use native Qt on Mandrake 10.1.
+\n Set the \b QTDIR environment variable if you have a preinstalled version of qt.<br><br>
+</li>
+<li>msg2qm
+\n\n \b msg2qm is a Qt tool which is used to convert text *.po files
+to *.qm resource files. Unfortunately this tool is not included to the
+Linux distribution and provided only in Qt sources package. This is
+the reason why this tool is supplied with the SALOME Installation
+Wizard. There is no way to check the version number of msg2qm tool. Just set
+\b MSG2QM_ROOT environment variable if you have a preinstalled version
+of msg2qm tool.<br><br>
+</li>
+<li>Open CASCADE 6.1.2a2
+\n\n Version number is defined by \b Standard_Version.hxx file which
+is part of the Open CASCADE distribution. This file defines \b
+OCC_VERSION_MAJOR, \b OCC_VERSION_MINOR and \b OCC_VERSION_MAINTENANCE
+macros which should refer to version 6.1.2. \n Set the CASROOT
+environment variable if you have a preinstalled version of Open
+CASCADE.<br><br>
+</li>
+<li>qwt 4.2.0/0.4.2
+\n\n Version number is defined by \b qwt_global.h file which is part of
+the qwt distribution. This file defines \b QWT_VERSION_STR macro which should be equal to "4.2.0".
+\n Set the \b QWTHOME environment variable if you have a preinstalled version of qwt.<br><br>
+</li>
+<li>hdf 5-1.6.4
+\n\n Version number is defined by \b libhdf5.settings file which is
+part of the \b hdf5 distribution. Version should be equal to 1.6.4.
+\n Set the \b HDF5HOME environment variable if you have a preinstalled
+version of hdf5.<br><br>
+</li>
+<li>med 2.2.3
+\n\n Unfortunately there is no formal way to check med version
+number. We check existence of libmed.so.1.0.2 library on the
+computer. If you have any problem with a preinstalled version of med,
+please, reinstall it.
+\n Set the \b MED2HOME environment variable if you have a preinstalled
+version of med.<br><br>
+</li>
+<li>Vtk 4.2.6
+\n\n Unfortunately there is no formal way to check VTK version
+number. We just check the existence of \b libvtkCommon.so library on
+the computer and hope that it is of version we need. If you have any
+problem with a preinstalled version of Vtk, please, reinstall it.
+\n Set the \b VTKHOME environment variable if you have a preinstalled
+version of Vtk.<br><br>
+</li>
+<li>OmniORB 4.0.5, OmniORBpy 2.5, OmniNotify 2.1
+\n\n We just check existence of some omniORB libraries and executable
+on the computer, like \b libomniORB4.so.0.5, \b _omnipymodule.so.2.4,
+\b libCOSNotify4.so.0.1 and \b notifd. \n Set the \b OMNIORBDIR
+environment variable if you have a preinstalled version of omniORB
+products.<br><br>
+</li>
+<li>sip 4.1
+\n\n Version number is checked by \b sip -\b V command. The \b sip
+executable should be in the \b PATH environment variable. Version number should be equal to "4.1".
+\n Set the \b SIPDIR environment variable to the directory where you
+have sip executable preinstalled.<br><br>
+</li>
+<li>PyQt 3.13
+\n\n Version number is defined by \b pyqtconfig.py Python module file
+which is part of the \b PyQt distribution. Version should be equal to "3.13".
+\n Set the \b PYQTDIR environment variable if you have a preinstalled
+version of PyQt.<br><br>
+</li>
+<li>netgen 4.5
+\n\n Unfortunarely we can't find anything about netgen version. We
+just check if \b NETGENROOT environment variable is set. \n Set the\b
+NETGENROOT environment variable if you have a preinstalled version of
+netgen mesher.<br>
+\note netgen 4.5 provided with the SALOME installation Wizard has been patched to improve its performance.
+</li>
+<li>Numeric 23.7
+\n\n Version number is checked by <b>python -c 'import Numeric; print
+Numeric.__version__'</b> command. The \b python executable should be
+in the \b PATH environment variable and \b Numeric module should be
+available for the Python (for example it should be in the \b PYTHONPATH environment variable). Version number should be equal to "23.7". If you have any problem with a preinstalled version of Numeric 23.7, please, reinstall it.
+\n Add the directory where you have a preinstalled version of Numeric
+package to the the \b PYTHONHOME environment variable.<br><br>
+</li>
+<li>graphviz 2.2.1
+\n\n Version number is checked by \b dot -\b V command. The dot
+executable should be in the \b PATH environment variable. Version
+number should be equal to "2.2.1". \n Add \b graphviz bin directory to
+the the \b PATH environment variable.<br><br>
+</li>
+<li>doxygen 1.4.6
+\n\n Version number is checked by \b doxygen --\b version command. The
+\b doxygen executable should be in the \b PATH environment
+variable. Version number should be equal to "1.4.6".<br><br>
+</li>
+<li>\b SALOME module \b sources (3.2.4).
+\n\n For each SALOME module sources package (KERNEL, GUI, GEOM,
+etc...) the root directory contains file configure.in (configure.ac)
+which defines version information.\n Set the \b \<MODULE\>_SRC_DIR environment variable for each SALOME \b
+MODULE sources package installed (where \b MODULE is KERNEL, GUI,
+GEOM, ...).<br><br>
+</li>
+<li>\b SALOME module \b binaries (3.2.4)
+\n\n For each SALOME module binaries package (KERNEL, GUI, GEOM,
+etc...) the \b bin/salome directory contains file \b VERSION which
+defines version information.\n Set \<MODULE\>_ROOT_DIR environment
+variable for each SALOME \b MODULE binaries package installed (where
+\b MODULE is KERNEL, GUI, GEOM, ...).<br><br>
+</li>
+</ul>
+
+If you have native products installed to directories different from
+default ones (not \b /usr/bin, \b /usr/lib...), it is recommended to follow
+the above mentioned instructions. Or you should properly set \b PATH and
+\b LD_LIBRARY_PATH variables \em before starting the Installation
+Wizard. Otherwise the installation script will fail to find
+preinstalled/native products.
+
+\note for some native products (e.g. gcc, Python) the rules of version
+checking are not so strict as described above. Only major and minor
+version numbers should coincide with the prerequisite. Newer version
+of the product can also be used. If some native product has version
+number larger than that required by the installation procedure, the
+user will be prompted by the warning message like this: "<em>You have
+newer version of gcc installed on your computer than that is required
+(3.4.1). Continue?</em>". You can click "\em Yes" to proceed with the
+installation but in this case you should be aware of what you are
+doing. SALOME binaries (including other products) are compiled with
+the predefined prerequisites and most likely can not be run
+successfully if these products are not found. This can be helpful only
+if you plan to build all products from sources.
+
+<br>
+<hr>
+\anchor pick_up_env
+<h2>Pick up the <em>environment</em></h2>
+
+Please, read the following information carefully . This section
+describes how the installation procedure generates the environment
+scripts for the SALOME platform being installed.
+<br><br>
+After installing each product shell the script creates a special
+environment file for the product in its installation folder. The name
+of the file is generated from the name of product by the following
+scheme: \b env_<product_name>.sh (for example \b env_Vtk.sh for the
+Vtk). This file includes all necessary environment settings. At the
+final step of the installation the script picks up all the settings
+files and generates two common environment files from them: \b salome.sh
+and \b salome.csh for \b bash and \b csh shells correspondingly. Such approach
+helps to save time when reinstalling products and you may not bother
+about setting all environment variables manually to build/launch
+SALOME. What you simply need is to source one of these environment
+files.
+<br><br>
+This also concerns those products which are not being installed. For
+example, you install some SALOME binaries to the directory where you
+have previously installed other products.  The Installation procedure
+tries to collect environment files from the target directory if it
+finds necessary products installed there. If some product is not found
+in the target directory the corresponding section of
+\b salome.sh/salome.csh files will be skipped.
+\n For native products (like \b gcc, \b tcl, etc...) the installation
+procedure tries to find them first using \b PATH / \b LD_LIBRARY_PATH
+variables and then in the system default directories (\b /usr/bin,
+\b /usr/lib etc., depending on the product).
+<br><br>
+In any case you may edit \b salome.* files after the installation
+procedure finishes, if you want.
+
+\note As it was mentioned \ref environment_files "above" there are
+other environment files which are generated by the installation
+procedure: \b env_products.csh + \b env_products.sh and \b env_build.csh +
+\b env_build.sh. These files can be found in the target installation root
+directory.
+
+<br>
+<hr>
+\anchor modifying_xml
+<h2>Modifying <em>XML</em> configuration <em>file</em></h2>
+
+You can create your own XML configuration file. The Installation
+Wizard can then take it as a command line argument to provide a list
+of products you want to install with it. The list of products and some
+other settings for the Installation Wizard are provided in the XML
+file. The default file which Installation Wizard looks for if no
+command line arguments are given, is \b config.xml.
+\n This section describes the structure of the configuration file. 
+\n Optional sections/tags are in brackets.
+
+\code
+<document> 
+    [ <config [ version=<install_wizard_version> ] 
+              [ caption=<install_wizard_caption> ] 
+              [ copyright=<install_wizard_copyright>  ] 
+              [ license=<install_wizard_license_info> ] 
+              [ os=<target_platform> ]
+      /> 
+    ] 
+    [ <path   [ targetdir=<target_directory> ] 
+              [ tempdir=<temp_directory>     ]
+      /> 
+    ] 
+    [ <button   label=<button_label>      
+              [ tooltip=<button_tooltip> ] 
+                script=<button_script>    
+              [ disable=<disable_flag>   ]
+      /> 
+    ] 
+    [ <button ... 
+      />
+    ] 
+    [ <product  name=<product_name> 
+                version=<product_version> 
+              [ context=<product_context>         ]
+              [ description=<product_description> ]
+                install=<installation_mode> 
+                supported=<supported_installation_modes> 
+              [ disable=<disable_flag>            ]
+              [ pickupenv=<pickup_env_flag>       ]
+                dependancies=<list_of_prerequisites> 
+                installdiskspace=<install_disk_space> 
+                temporarydiskspace=<tmp_disk_space> 
+                script=<installation_script_name>
+      /> 
+    ] 
+    [ <product ... 
+      /> 
+    ]
+    ...
+</document>
+\endcode
+
+<b>\<config\> section</b>
+\n\n This is an optional section; it provides general information about
+the Installation Wizard itself.
+<br><br>
+Attributes:
+<ul>
+<li><b>version</b>
+\n\n The application version number to be shown in the caption.<br><br>
+</li>
+<li><b>caption</b>
+\n\n The application main window caption - if this string contains
+'\%1' text the title will contain the version number in this place (see
+above).<br><br>
+</li>
+<li><b>copyright</b>
+\n\n The application copyright information (shown in the first
+page).<br><br>
+</li>
+<li><b>license</b>
+\n\n The application license information (shown in the first
+page).<br><br>
+</li>
+<li><b>os</b>
+\n\n This parameter defines the directory (relative from
+./Products/BINARIES) where the Installation Wizard will search
+precompiled binaries packages. If this tag is not provided, binaries
+packages are looked for in the ./Products/BINARIES directory.<br><br>
+</li>
+</ul>
+
+<b>\<path\> section</b>
+\n\n This is an optional section; it defines default installation
+directories.
+<br><br>
+Attributes:
+<ul>
+<li><b>targetdir</b>
+\n\n The target directory - the path to the directory where products
+should be installed.<br><br>
+</li>
+<li><b>tempdir</b>
+\n\n The temporary directory - the path to the directory for the
+temporary files.<br><br>
+</li>
+</ul>
+
+<b>\<product\> section</b>
+\n\n This section describes product to be installed with the
+Installation Wizard. The XML file should include a \<product\> section
+for each product to be installed. The products appear in the tree view
+and are installed in the order they are described in the configuration
+file. It is recommended (but not obligatory) to define native products
+at the top of the list before all other products.
+<br><br>
+Attributes:
+<ul>
+<li><b>name</b>
+\n\n Product name.<br><br>
+</li>
+<li><b>version</b>
+\n\n Product version.<br><br>
+</li>
+<li><b>description</b>
+\n\n Product description (optional).<br><br>
+</li>
+<li><b>context</b>
+\n\n Context (optional). The possible values are '<b>salome
+sources</b>', '<b>salome binaries</b>' and '<b>prerequisite</b>'
+(several contexts can be given separated by ":" symbol).<br><br>
+</li>
+<li><b>supported</b>
+\n\n Supported modes of installation. Several modes can be separated
+by comma. Possible value are: <em>install sources, install binaries, use
+native</em>. The Installation script should contain the corresponding
+functions for each of the supported installation modes (see
+\ref installation_scripts "here").<br><br>
+</li>
+<li><b>install</b>
+\n\n Default (starting) installation mode.<br><br>
+</li>
+<li><b>disable</b>
+\n\n If this optional flag has 'true' value, the corresponding product
+will not appear in the list of products and will not be
+installed.<br><br>
+</li>
+<li><b>pickupenv</b>
+\n\n This flag points that pickup environment procedure should be
+performed for this product. If this flag equal to 'true',  salome.sh
+and salome.csh files will  be created in the product installation
+directory. Usually this option is set to true for SALOME KERNEL module
+sources and binaries package. This is an optional key, default value
+is 'false'.<br><br>
+</li>
+<li><b>dependancies</b>
+\n\n List of prerequisite products, which are necessary to build this
+product, separated by comma.<br><br>
+</li>
+<li><b>installdiskspace</b>
+\n\n Total amount of space (integer, in Kbytes), which the product
+occupies on the hard drive after the installation.<br><br>
+</li>
+<li><b>temporarydiskspace</b>
+\n\n Disk space (integer, in Kbytes) for temporary files, which is
+necessary to build the product from the sources.<br><br>
+</li>
+<li><b>script</b>
+\n\n The installation script name. This script is in charge of the
+installation of the product. It is called automatically by the
+Installation Wizard when necessary from the main program. 
+See the \ref installation_scripts "next section" for more information.<br><br>
+</li>
+</ul>
+
+<b>\<button\> section</b>
+\n\n This is an optional section. It allows customization of the last
+"Finish installation" page of the Installation Wizard by adding one or
+more buttons in the lower part of the wizard's window. The script
+which is attached to each such button, can perform some specific
+action, for example, launch the application or show the Release Notes
+file by using an external program. See \ref finish_buttons "here" for
+more details about writing scripts.<br><br>
+Attributes:
+<ul>
+<li><b>label</b>
+\n\n This is the button text.<br><br>
+</li>
+<li><b>tooltip</b>
+\n\n The button tooltip (optional).<br><br>
+</li>
+<li><b>script</b>
+\n\n The script attached to the button.<br><br>
+</li>
+<li><b>disable</b>
+\n\n If this optional flag has 'true' value, the corresponding button
+will not appear in the "<em>Finish installation</em>" page - the section of XML
+file is silently ignored.<br><br>
+</li>
+</ul>
+
+\note If you add new products to be installed with Installation
+Wizard, you should also provide installation script for this
+product. See the next section for more details.
+
+<br>
+<hr>
+\anchor installation_scripts
+<h2>Implementing <em>installation scripts</em> for the new products</h2>
+
+When you want some product to be installed with the Installation
+Wizard, you should add its description \ref modifying_xml "to the configuration file"
+and create the installation script, following the rules described in this section.
+
+There are some obligatory functions which should be implemented in
+this installation script. These functions are automatically called by
+the master installation script or/and its GUI shell when it is
+necessary. \n File \b common.sh contains some service functions which can
+be used in your installation script, like \b make_env(), \b make_dir(),
+\b try_existing(), \b sort_path(), \b find_in_path(), etc.
+
+<ul>
+<li><b>check_version()</b>
+\n\n This function allows to check the version of the product already
+installed on the computer. It should try to find the product (native
+or preinstalled in the target directory) and check its version. This
+helps to avoid unnecessary reinstallation. This is an internal
+function and is not called from the master installation
+script.<br><br>
+</li>
+<li><b>try_native()</b>
+\n\n This function is called when the 'use native' installation mode
+is selected by the user. The function should try to find a native
+version of the product and define possibility of its use. It should
+create the environment file for the product in the temporary directory
+(see also the description of \b print_env() function). It is not
+necessary to implement this function if you do not provide native mode
+installation.<br><br>
+</li>
+<li><b>install_source()</b>
+\n\n This function is called when the 'install sources' installation
+mode is selected by the user. The function is responsible for building
+the product from the sources package. It should create the environment
+file for the product in the temporary directory (see also description
+of \b print_env() function). It is not necessary to implement this
+function if you do not provide sources mode installation.<br><br>
+</li>
+<li><b>install_source_and_build()</b>
+\n\n This function is called when SALOME module is installed and the
+--\b all-from-sources (-\b a) option is used (<em>"Build SALOME sources"</em>
+check box in GUI mode). This function should be used to unpack SALOME
+sources package and then call the build/install procedure for it.
+For more details please refer to the \ref installing_products "this"
+and \ref gui_mode_install "this" sections for more details.<br><br>
+</li>
+<li><b>install_binary()</b>
+\n\n This function is called when the <em>'install binaries'</em> installation
+mode is selected by the user. The function is responsible for the
+extracting of the product from the binaries package. It should create
+environment for the product in the temporary directory (see also
+description of \b print_env() function). It is not necessary to implement
+this function if you do not provide binaries mode
+installation.<br><br>
+</li>
+<li><b>try_preinstalled()</b>
+\n\n This function is called when the 'not install' installation mode
+is selected by the user. In this case the script should inspect the
+target directory to try to find an already preinstalled product, pick
+up and check the environment from there. See \ref pick_up_env "here" for more
+details.<br><br>
+</li>
+<li><b>print_env()</b>
+\n\n This function is in charge of creating the environment script. It
+should create a file with name \b env_<product_name>.sh in the temporary
+directory and then copy it into the product installation
+directory. The file should contain all necessary environment variables
+settings for the product. It will be collected during the
+'pick-up-environment' procedure.<br><br>
+</li>
+<li><b>pickup_env()</b>
+\n\n This procedure corresponds to the \b pickupenv tag of the
+configuration xml file (see previous section). It should call the
+\b make_env procedure to perform the pick-up environment procedure for
+the product.<br><br>
+</li>
+</ul>
+
+The calling signature of the product installation script is the following: 
+<b>\<product_script_name\> \<function_name\> \<temp_folder\>
+\<products_directory\> \<target_directory\> \<dependancies\>
+\<product_name\></b>
+\n\n where \n\n
+<b>\<product_script_name\></b> - installation script name (described in the
+configuration xml file);\n
+<b>\<function_name\></b> - the name of function, corresponding to the selected
+installation mode: \em try_native, \em install_source, \em install_binary or
+\em try_preinstalled;\n
+<b>\<temp_folder\></b> - temporary files directory;\n
+<b>\<products_directory\></b> - directory where the sources/binaries package
+can be found. You should provide the sources package in the
+<em>\<Install_Wizard_root_directory\>/Products/SOURCES</em> directory and
+binaries package in the
+<em>\<InstallWizard_root_directory\>/Products/BINARIES/\<os_version\></em>, where
+\<os_version\> is the target platform description, which appears in the
+corresponding section of the \ref modifying_xml "configuration xml file";
+<em>\<target_directory\></em> - root target directory where the product should be installed to; 
+<em>\<dependancies\></em> - single-quoted list of prerequisite products, separated by space; 
+<em>\<product_name\></em> - product name itself.
+
+\b Example:
+\n <em>med-2.2.3.sh install_binary /tmp/work
+./Products/BINARIES/Mandrake10.1 /usr/salome 'gcc Hdf' med</em>
+
+Copy the created script into the
+<em>\<Install_Wizard_root_directory\>/config_files</em> sub-directory where all
+installation scripts are stored. Installation Wizard will
+automatically search and call your script during the installation
+procedure.
+
+<br>
+<hr>
+\anchor finish_buttons
+<h2>Customizing <em>Readme page</em> buttons</h2>
+
+The Installation Wizard allows customizing the look-n-feel of the last
+<em>"Finish installation"</em> page. If you want to add one or more buttons to
+this page in order to perform some specific actions at the end of the
+installation (for example, to show the Release Notes file by using
+Open Office) you can put an additional section to the XML
+configuration file. This is the \b \<button\> section (see 
+\ref modifying_xml "here" for more details).
+
+To implement the action which will be performed when the user clicks
+the button, you need to create a script and put it to the
+<em>\<Install_Wizard_root_directory\>/config_files</em> directory.
+\n There are some obligatory functions which should be implemented in
+this script. These functions are automatically called by the
+Installation Wizard GUI.
+
+<ul>
+<li><b>check_enabled()</b>
+\n\n This procedure is called by the Installation Wizard when the
+<em>"Finish installation"</em> page is displayed and the status of the buttons
+should be modified according to the installation options. This
+procedure should return \b 0 if the corresponding action can be performed
+and, thus, the button should become enabled. Otherwise, it should
+return \b 1 - in this case the corresponding button will be
+disabled.<br><br>
+</li>
+<li><b>execute()</b>
+\n\n This procedure is invoked when the user clicks the button. This
+procedure should return \b 0 if the corresponding action is done
+successfully and \b 1 if any error occurs.<br><br>
+</li>
+</ul>
+
+The calling signature of the script is the following:
+\n <b>\<product_script_name\> \<function_name\> \<target_directory\>
+\<temp_folder\></b>
+\n\n where \n\n
+\b \<product_script_name\> - the script name itself (retrieved from the XML configuration xml file); 
+\n \b \<function_name\> - the name of function; 
+\n \b \<target_directory\> - root target directory where the product is installed to; 
+\n \b \<temp_folder\> - temporary files directory;
+
+\note The standard Installation Wizard buttons "Launch SALOME" and
+"Release Notes" are implemented with this feature. Refer to scripts
+\b start_salome.sh and \b release_notes.sh for sample implementation.
+
+\note Any button (even standard) can be ignored by the Installation
+Wizard if the attribute \b \<disable\> in the XML configuration file is set
+to the "true" value.
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/intro_to_salome.doc b/doc/salome/gui/GUI/input/intro_to_salome.doc
new file mode 100644 (file)
index 0000000..daeca31
--- /dev/null
@@ -0,0 +1,29 @@
+/*!
+
+\page intro_to_salome_page Introduction to SALOME
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+\b SALOME platform represents a generic open source platform for pre-
+and post-processing in numeric simulations. \b SALOME combines several
+software components, which are built in such a way that it allows to
+integrate solvers and existing meshing algorithms along with the
+specification of physical properties for a given domain. The
+originality of this approach is that the various components must
+cooperate dynamically and be 
+configurable.
+
+\image html image54.jpg
+
+<br>SALOME platform integrates a number of modules each having its own function:
+<ul>
+<li>\b KERNEL :  provides a common shell for all components, which can be integrated into the SALOME platform.
+<li>\b GUI : provides visual representation: basic widgets, viewers
+etc. Third party modules optionally can have GUI, but in any case they always connected with KERNEL.
+<li>\b Geometry :  facilitates construction and optimization of geometrical models using a wide range of  CAD functions. 
+<li>\b Mesh :  generates meshes on geometrical models previously created or imported by the Geometry component.
+<li>\b Supervisor :  provides tools for construction of graphs and execution of calculations. 
+<li>\b Post-Pro :  performs data visualization.
+<li>\b MED :  allows to work with MED files.
+</ul>
+
+*/
diff --git a/doc/salome/gui/GUI/input/introduction.doc b/doc/salome/gui/GUI/input/introduction.doc
new file mode 100644 (file)
index 0000000..6d9b76b
--- /dev/null
@@ -0,0 +1,70 @@
+/*!
+
+\image html icon_about.png
+
+\page introduction_page Introduction
+
+<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+Welcome to SALOME Platform! Modern technological products (cars,
+structures, electrical or electronic equipment) are getting more and
+more complex every year and must meet increasingly severe requirements
+in terms of quality and performance. For example, for structures and
+their environment the demands to reduce risks and optimize costs are
+extremely high. It requires particularly refined simulations
+concerning structural behavior and robustness to ensure high
+reliability.
+\n The numeric modeling of a physical problem, the development of
+solutions and their integration into the design process are often
+handled in very specific environments. SALOME represents a generic
+CAD-based application for digital simulation with "high reactivity to
+market evolutions and customer expectations".
+
+SALOME is a free software that provides a generic platform for Pre and
+Post-Processing for numerical simulation. It is based on an open and
+flexible architecture made of reusable components available as free
+software.
+
+SALOME is a CAD/CAE integration platform. It provides reusable
+components for: 
+<ul>
+<li>3D modeling (bottom-up construction, import, healing);
+<li>Visualization;
+<li>Computational schemas management;
+<li>Post-processing.
+</ul>
+
+SALOME is tailored for integration of custom components:
+<ul>
+<li>CAD interfaces;
+<li>Mesh generators;
+<li>Finite Element solvers with specific pre-processors.
+</ul>
+
+The SALOME platform is available in Open Source.
+
+<b>Salome Platform:</b>
+<ul>
+<li>Supports interoperability between CAD modeling and computation software (CAD-CAE link) 
+<li>Makes easier the integration of new components on heterogeneous systems for numerical computation 
+<li>Sets the priority to multi-physics coupling between computation software 
+<li>Provides a generic user interface, user-friendly and efficient, which helps to reduce the costs and delays of carrying out the studies 
+<li>Reduces training time to the specific time for learning the software solution which has been based on this platform 
+<li>All functionalities are accessible through the programmatic
+integrated Python console
+</ul>
+
+\image html image65.gif
+
+<b>What can you do in SALOME? (Some of SALOME main functions)</b>
+<ul>
+<li>Define geometrical models (create/modify geometrical items), import and export them using the BREP, IGES and STEP formats; 
+<li>Define meshing of these geometrical items, import and export them;
+<li>Handle physical properties and quantities attached to geometrical items, import and export them to a reusable format;
+<li>Perform computations using a solver (optionally provided): read input data, configure the solver, and write calculation results);
+<li>Visualize result fields in 3D, 2D and export images of their visualization to an appropriate format;
+<li>Manage study schemes: definition, save/restore;
+<li>Manage computation schemes: definition, execution.
+</ul>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/introduction_to_gui.doc b/doc/salome/gui/GUI/input/introduction_to_gui.doc
new file mode 100644 (file)
index 0000000..0b1d51f
--- /dev/null
@@ -0,0 +1,45 @@
+/*!
+
+\page introduction_to_gui_page Introduction to GUI
+
+\b GUI (Graphical User Interface) provides a common shell for all components, which can be integrated into the SALOME platform.
+
+\b GUI component in SALOME platform provides:
+<ul>
+<li>Common desktop environment (\ref salome_desktop_page "SALOME desktop") for all
+components</li>
+<li>Component integration and management: uploading, switching,
+component menus/toolbars handling</li> 
+<li>Study management (creation, saving, loading, editing studies)</li>
+<li>Multi-window management in the framework of one study</li>
+<li>Management of objects created or imported into the SALOME
+application (\ref using_object_browser_page "Object Browser")</li>
+<li>Integrated Python interpreter</li> 
+<li>Output messages window</li>
+<li>Additional tools : \ref using_catalog_generator_page "Catalogue Generator", 
+\ref using_registry_tool_page "Registry tool"</li>
+<li>Standard viewers for data visualization:</li>
+<ul>
+<li>VTK 3d viewer
+<li>OCC 3d viewer
+<li>Gauss Points viewer
+<li>Plot 2d viewer
+<li>Supervision viewer
+</ul>
+</ul>
+
+
+Since version 3.0.0 SALOME GUI is based on SUIT (Salome User Interface
+Toolkit) that proposes very flexible, powerful and safe mechanisms of
+interaction with SALOME tool components (both CORBA and standalone),
+resources management, viewers and selection handling,
+exception/signals processing, bringing to top multi-desktop
+dockable-windowed user interface which improves the usability of
+SALOME GUI.
+\n All Graphical User Interfaces of standard modules have plug-in
+structure, i.e. each module is placed in a dynamic library which is
+loaded on demand. All modules can create their own menu items, buttons
+in toolbar, windows etc
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/mesh_preferences.doc b/doc/salome/gui/GUI/input/mesh_preferences.doc
new file mode 100644 (file)
index 0000000..047afc6
--- /dev/null
@@ -0,0 +1,119 @@
+/*!
+
+\page mesh_preferences_page Mesh preferences
+
+In the Mesh module you can set mesh preferences, which can be used in
+later sessions with this module.
+
+<h2>General Preferences</h2>
+
+\image html pref21.png
+
+<ul>
+<li><b>Update</b></li>
+<ul>
+<li>If you toggle <b>Automatic Update</b> checkbox, the model in your
+viewer automatically updated whenever you make changes in it.</li>
+</ul>
+<li><b>Quality Controls</b></li>
+<ul>
+<li>If you toggle <b>Display entity</b>, both faces and edges of an
+object will be displayed in the viewer by default.</li>
+<li>If you toggle <b>Use precision</b> checkbox, you can display numbers in
+<b>Quality Control</b> diagrams at the necessary level of precision.</li>
+</ul>
+<li><b>Precision</b> - can be defined by the <b>Number of digits after point</b> in
+the corresponding field. By default, numbers in <b>Quality Control</b>
+diagrams are presented as integers.</li>
+<li><b>Display mode</b> - allows to set Wireframe, Shading, Nodes or Shrink
+presentation mode as default.</li>
+<li><b>Mesh export</b></li>
+<ul>
+<li>If you toggle <b>Automatically create groups for MED export</b> checkbox,
+this operation will be carried out automatically.</li>
+<li>If you toggle <b>Automatic renumbering</b> checkbox, the exported
+mesh will be renumbered automatically</li>
+</ul>
+</ul>
+
+<h2>Mesh Preferences</h2>
+
+\image html pref22.png
+
+<ul>
+<li><b>Nodes</b></li>
+<ul>
+<li><b>Color</b> -  allows to select the color of nodes. Click on the
+colored line to access to the \ref select_color_and_font_page "Select Color" 
+dialog box.</li>
+<li><b>Size</b> - allows to define the size of nodes.</li>
+</ul>
+<li><b>Elements</b></li>
+<ul>
+<li><b>Fill</b>  - allows to select the color of surface of elements
+(seen in Shading mode). Click on the colored line to access to the
+\ref select_color_and_font_page "Select Color" dialog box.</li>
+<li><b>Outline</b> - allows to select the color of borders of
+elements. Click on the colored line to access to the 
+\ref select_color_and_font_page "Select Color" dialog box.</li>
+<li><b>Back Face</b> - allows to select the color of interior surface
+of elements. Click on the colored line to access to the 
+\ref select_color_and_font_page "Select Color" dialog box.</li>
+<li><b>Width</b> - allows to define the width of lines (edges and borders of elements).</li>
+<li><b>Shrink coef.</b> - allows to define relative space of elements
+compared to gaps between them in shrink mode.</li>
+</ul>
+</ul>
+
+<br><h2>Selection Preferences</h2>
+
+\image html pref23.png
+
+<ul>
+<li><b>Selection</b> - performed with mouse-indexing (preselection)
+and left-clicking on an object, whose appearance changes as defined in
+the <b>Preferences</b>.</li>
+<ul>
+<li><b>Object Color</b> -  allows to select the color of mesh (edges and
+borders of meshes) of the selected entity. Click on the colored line
+to access to the \ref select_color_and_font_page "Select Color" dialog
+box.</li>
+<li><b>Element color</b> - allows to select the color of surface of selected
+elements (seen in Shading mode). Click on the colored line to access
+to the \ref select_color_and_font_page "Select Color" dialog box.</li>
+<li><b>Width</b> - allows to define the width of selected edges. </li>
+</ul>
+<li><b>Preselection</b> - performed with mouse-indexing on an object,
+whose appearance changes as defined in the <b>Preferences</b>.</li>
+<ul>
+<li><b>Highlight Color</b> -  allows to select the color of mesh (edges and
+borders of meshes) of the entity . Click on the colored line to access
+to the \ref select_color_and_font_page "Select Color" dialog box.</li>
+<li><b>Width</b> - allows to define the width of preselected edges.</li>
+</ul>
+<li><b>Precision</b> - in this menu you can set the value of precision
+used for <b>Nodes</b>, <b>Elements</b> and <b>Objects</b>.</li>
+</ul>
+
+<br><h2>Scalar Bar Preferences</h2>
+
+\image html pref24.png
+
+<ul>
+<li><b>Font</b> - in this menu you can set type, face and color for
+the font of <b>Title</b> and <b>Labels</b>.</li>
+<li><b>Colors & Labels</b> - in this menu you can set the <b>number of
+colors</b> and the <b>number of labels</b> in use.<li>
+<li><b>Orientation</b> - here you can choose between vertical and
+horizontal orientation of the <b>Scalar Bar</b></li>.
+<li><b>Origin & Size Vertical & Horizontal</b> - allows to define
+placement (<b>X</b> and <b>Y</b>) and lookout (<b>Width</b> and
+<b>Height</b>) of Scalar Bars</li>
+<ul>
+<li><b>X</b>: abscissa of the point of origin (from the left
+side)</li>
+<li><b>Y</b>: ordinate of the origin of the bar (from the bottom)</li>
+</ul>
+</ul>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/occ_3d_viewer.doc b/doc/salome/gui/GUI/input/occ_3d_viewer.doc
new file mode 100644 (file)
index 0000000..6638fac
--- /dev/null
@@ -0,0 +1,125 @@
+/*!
+
+\page occ_3d_viewer_page OCC 3D Viewer
+
+<b>OCC (Open CasCade) 3D viewer</b> has been developed on the basis of Open
+CASCADE Technology. This is the default viewer for Geometry Module,
+providing good representation of construction and transformation of
+geometrical objects. Only this viewer allows to work with groups and
+sub-shapes. This viewer can also work in Mesh module, however, it
+doesn't allow to visualize meshes.
+
+The functionalities of OCC viewer are available via its Viewer
+Toolbar. Buttons marked with small downward triangles have extended
+functionality which can be accessed by locking on them with left mouse
+button.
+
+\image html image95.gif "Viewer Toolbar"
+
+<hr>
+\image html image77.gif
+\n <center><b>Dump View</b> - exports an object from the viewer in bmp, png, jpg
+or jpeg image format.</center>
+<hr>
+
+\image html image88.gif
+\n <center><b>Show/Hide Trihedron</b> - shows or hides coordinate axes.</center>
+<hr>
+
+\image html image96.gif
+\n <center><b>Fit all</b> - allows to select a point to be the center of a
+scene representing all displayed objects in the visible area.</center>
+<hr>
+
+\image html image97.gif
+\n <center><b>Fit area</b> - resizes the view to place in the visible area
+only the contents of a frame drawn with pressed left mouse button.</center>
+<hr>
+
+\image html image98.gif
+\n <center><b>Zoom</b> - allows to zoom in and out.</center>
+<hr>
+
+\image html image99.gif
+\n <center><b>Panning</b> - if the represented objects are greater that the
+visible area and you don't wish to use <b>Fit all</b> functionality, click on
+this button and you'll be able to drag the scene to see its remote
+parts.</center>
+<hr>
+
+\image html image100.gif
+\n <center><b>Global panning</b> - represents all displayed objects in
+the visible area.</center>
+<hr>
+
+\image html view_rotation_point.png
+\n <center><b>Change rotation point</b> - allows to to choose the point around
+which the rotation is performed.</center>
+
+\image html set_rotation_point_dialog1.png
+
+<center>By default the rotation point is located in the Center of the bounding
+box of an object.</center>
+
+\image html set_rotation_point_dialog2.png
+
+<center>Unchecking <b>Use Bounding Box Center</b> checkbox allows you to
+define the coordinates of the rotation point manually.</center>
+
+<b>Set to Origin</b> button restores the default rotation point
+coordinates.\n
+<b>Select Point from View</b> button allows to select the rotation
+point in the 3D Viewer.
+<hr>
+
+\image html image89.gif
+\n <center><b>Rotation</b> - allows to rotate the selected object using the
+mouse.</center>
+
+\image html image102.gif
+
+<center>These buttons orientate the scene strictly about coordinate axes.</center>
+<hr>
+
+\image html image91.gif
+\n <center><b>Reset</b> - restores the default position (isometric) of
+objects in the scene.</center>
+<hr>
+
+\image html image103.gif
+\n <center><b>Memorise view</b> - saves the current position of
+objects in the scene.</center>
+<hr>
+
+\image html image105.gif
+\n <center><b>Restore view</b> - restores the saved position of
+objects in the scene.</center>
+<hr>
+
+\image html image86.gif
+\n <center><b>Clone view</b> - opens a new duplicate scene.</center>
+<hr>
+
+\image html image106.gif
+\n <center><b>Clipping</b> - allows to create cross-section views
+(clipping planes) of geometrical objects.</center>
+
+\image html clipping.png
+
+<ul>
+<li><b>Base point</b> - allows to define the coordinates of the base
+point for the clipping plane.</li>
+<ul>
+<li><b>Reset</b> - returns the base point to coordinate origin.</li>
+</ul>
+<li><b>Direction</b> - allows to define the orientation of the
+clipping plane.</li>
+<ul>
+<li><b>Invert</b> - allows to select which part of the object will be removed
+and which will remain after clipping.</li>
+</ul>
+<li><b>Preview</b> - allows to see the results of clipping in the
+viewer.</li>
+</ul>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/opening_studies.doc b/doc/salome/gui/GUI/input/opening_studies.doc
new file mode 100644 (file)
index 0000000..0c44f27
--- /dev/null
@@ -0,0 +1,31 @@
+/*!
+
+\page opening_studies_page Opening studies
+
+In \b SALOME all studies are stored in a special format *.hdf.
+
+<em>To open an existing study:</em>
+\par
+In the main toolbar click "Open document" button or from the main menu select <b>File > Open</b>
+option. From a standard Search File dialog box choose the required
+*.hdf file and click \b Open button.
+
+\image html open.jpg "&quot;Open document&quot; button"
+
+<em>To load an unloaded study (\ref saving_and_closing_studies_page
+"see also"):</em>
+\par
+From the main menu select <b>File > Connect</b> option. In the following
+dialog box select one of the studies, which has been previously
+created and unloaded and click \b Ok button:
+
+\image html loadstudy2.png
+
+\n\b Tip:  After opening an existing study, you will see its structure
+in the \ref using_object_browser_page "Object Browser". It will contain the objects created with the
+help of different components during the previous study session. If you
+right-click on one of the objects and from the associated pop-up menu
+choose <b>Open With</b> option, which will automatically launch the component
+corresponding to this object.
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/plot2d_viewer.doc b/doc/salome/gui/GUI/input/plot2d_viewer.doc
new file mode 100644 (file)
index 0000000..e6208d6
--- /dev/null
@@ -0,0 +1,94 @@
+/*!
+
+\page plot2d_viewer_page Plot 2D viewer
+
+\n <b>Plot 2d viewer</b> is destined to the representation of  2d
+plots and graphs in Post-Pro module.
+\n Its viewer toolbar gives you fast access to the following
+operations:
+
+\image html image77.gif
+<center><b>Dump View</b> - exports an object from the viewer in bmp,
+png, jpg or jpeg image format.</center>
+
+\image html image96.gif
+<center><b>Fit all</b> - scales the display to show the entire
+scene. Use this to resize the scene so that it could fit within the
+Viewer boundary.</center>
+
+\image html image97.gif
+<center><b>Fit area</b> - resizes the view to place in the visible
+area only the contents of a frame drawn with pressed left mouse
+button.</center>
+
+\image html image98.gif
+<center><b>Zoom</b> - allows to zoom in and out.</center>
+
+\image html image99.gif
+<center>\b Panning - if the represented objects are greater that the
+visible area and you don't wish to use Fit all functionality, click on
+this button and you'll be able to drag the scene to see its remote
+parts.</center>
+
+\image html image100.gif
+<center><b>Global panning</b> - allows to define the center of the
+scene presenting all displayed objects in the visible area.</center>
+
+\image html plot2d_points.gif
+<center><b>Draw Points</b> - represents points on the graph.</center>
+
+\image html plot2d_lines.gif
+<center><b>Draw Lines</b> - represents lines on the graph.</center>
+
+\image html plot2d_splines.gif
+<center><b>Draw Splines</b> - represents splines on the graph.</center>
+
+\image html plot2d_logarithmic_horizontal.gif
+<center><b>Horizontal axis logarithmic</b> - changes the scaling on
+horizontal axis to logarithmic.</center>
+
+\image html plot2d_logarithmic_vertical.gif
+<center><b>Vertical axis logarithmic</b> - changes the scaling on vertical
+axis to logarithmic.</center>
+
+\image html plot2d_legend.gif
+<center><b>Show Legend</b> - reveals all verbal and numerical
+information on the graphs.</center>
+
+\image html plot2d_settings.gif
+<center>\b Settings - calls a menu, in which you can specify advanced
+settings for your Plot 2d Viewer.</center>
+
+\image html plot2d_clone.gif
+<center><b>Clone view</b> - opens a new duplicate scene.</center>
+
+\anchor settings
+\n \image html plot2d_view_settings.png
+
+The options are as follows:
+<ul>
+<li><b>Main title:</b> the title of the XY plot. By default, it will
+consist of the names of the tables, on the basis of which the curve
+lines have been constructed.</li>
+<li><b>Curve type:</b> you can select from \b Points, \b Lines and \b Spline.</li>
+<li><b>Show legend:</b> here you can define the position of the
+description table on the XY plot (to the \b Left, to the \b Right, on
+\b Top or on \b Bottom).</li>
+<li><b>Marker size</b> - size of the points (markers) forming curve lines.</li>
+<li><b>Background color</b> of the XY plot.</li>
+<li><b>Scale mode:</b> here you can select the type of scaling (\b
+Linear or \b Logarithmic) along <b>X (Horizontal)</b> or <b>Y (Vertical)</b> axes.</li>
+</ul>
+
+You can define settings for each axis separately:
+<ul>
+<li>\b Horizontal or \b Vertical axis title.</li>
+<li><b>Grid/Axes marks:</b>  here you can define the maximum number of major
+and minor scale divisions for a specified axis. The real number of
+intervals fits to {1,2,5}*10^N, where N is a natural number, and
+doesn't exceed the maximum.</li>
+<li><b>Save settings as default:</b> If this check box is marked, all
+XY plots will be displayed with these defined properties.</li>
+</ul>
+
+*/
diff --git a/doc/salome/gui/GUI/input/postpro_preferences.doc b/doc/salome/gui/GUI/input/postpro_preferences.doc
new file mode 100644 (file)
index 0000000..37a094a
--- /dev/null
@@ -0,0 +1,375 @@
+/*!
+
+\page postpro_preferences_page Post-Pro Preferences
+
+In the Post-Pro module you can set preferences, default settings,
+which can be used in later sessions with this module.
+
+<h2>MED import Preferences</h2>
+
+\image html ppref1.png
+
+<ul>
+<li><b>MED files import</b></li>
+<ul>
+<li><b>Use Build Progress</b> - when this option is checked you can choose
+all other import MED options at the moment of loading of each file
+using <b>Build Progress</b> menu, otherwise the loading will be done
+according to the <b>Preferences</b> without addressing to the
+user.</li>
+<li><b>Full MED Loading</b> - when this option is checked, the MED file is
+fully loaded in the study, and no additional access to the MED file is
+needed during the session. Reversibly, when unchecked, the MED file is
+loaded on demand. This is the default behaviour in SALOME and
+recommended for big files to optimize memory usage.</li>
+<li><b>Build at once</b> - when this option is checked, you can't
+perform any operations until the MED file is fully loaded and
+processed.</li>
+<li><b>Build fields</b> - when this option is checked, the fields are
+built automatically at loading.</li>
+<li><b>Build min/max</b> - when this option is checked, minimum and
+maximum values of the time stamps are found at loading.</li>
+<li><b>Build groups</b> - when this option is checked, the groups and
+families are built automatically at loading.</li>
+<li><b>Close dialog at finish</b> - when this option is checked, the
+dialog box is closed after loading of the selected MED file. When
+unchecked, it allows loading other MED files.</li>
+</ul>
+</ul>
+
+<br><h2>Scalar Bar Preferences</h2>
+
+\image html pref31.png
+
+<ul>
+<li><b>Scalar Range</b></li>
+<ul>
+<li><b>Scalar Mode</b> - this feature allows refining the value to be
+inspected:</li>
+<ul>
+<li><b>Modulus:</b> value of a scalar or modulus of a vector.</li>
+<li><b>Component N:</b> Nth component of a vector, a tensor or a matrix.</li>
+</ul>
+<li><b>Logarithmic Scaling</b> - this checkbox toggles logarithmic
+scaling.</li>
+<li><b>Ranges to Use</b> - you can use either Field Range or Imposed Range.</li>
+</ul>
+<li><b>Min and Max for Imposed Range</b> - in this menu  you can set
+the limits for your Imposed Range, if you have chosen to use it.</li>
+<li><b>Font</b> - in this menu you can set type, face and color for
+the font of <b>Title</b> and <b>Labels</b>.</li>
+<li><b>Colors & Labels</b> - in this menu you can set the <b>number of
+colors</b> and the <b>number of labels</b> in the Scalar bar.</li>
+<li><b>Orientation</b> - here you can choose between vertical and horizontal
+orientation of the Scalar Bar.</li>
+<li><b>Origin & Size Vertical & Horizontal</b> - allows to define
+placement (<b>X</b> and <b>Y</b>) and lookout (<b>Width</b> and
+<b>Height</b>) of Scalar Bars.</li>
+<ul>
+<li><b>X:</b> abscissa of the point of origin (from the left
+side)</li>
+<li><b>Y:</b> ordinate of the origin of the bar (from the bottom)</li>
+</ul>
+<li><b>Scalar bars default position</b></li>
+<ul>
+<li><b>Arrange Scalar Bars</b> - this option prevents superposition of
+scalar bars during visualisation of several fields in the same
+window. If checked, a separate scalar bar is displayed for each
+presentation.</li>
+</ul>
+</ul>
+
+<br><h2>Cut Lines Preferences</h2>
+
+\image html ppref2.png
+
+<ul>
+<li><b>CutLine Preferences</b></li>
+<ul>
+<li><b>Show preview</b> check box allows to edit the parameters of the
+presentation and simultaneously observe the preview of this
+presentation in the viewer.</li>
+<li><b>Invert all curves</b> check box allows to invert the resulting
+curves.</li>
+<li><b>Use absolute length</b> check box allows to use absolute length
+for curves.</li>
+<li><b>Generate Data Table:</b> If this check box is marked, <b>Post
+Pro</b> will automatically generate a data table on the basis of your
+Cut Lines presentation. This table will be created in the structure of
+the study.</li>
+<li><b>Generate Curves:</b> If this check box is marked, <b>Post Pro</b>  will
+automatically generate curve lines on the basis of values taken from
+the generated data table. These curves will be created in the
+structure of the study and can be visualized in a XY plot.</li>
+</ul>
+</ul>
+
+<br><h2>Sweep Preferences</h2>
+
+\image html ppref3.png
+
+<ul>
+<li><b>Sweeping preferences</b></li>
+<ul>
+<li><b>Mode of the Sweeping</b> - allows to choose between Linear,
+Cosinusoidal and sinusoidal sweeping.</li>
+<li><b>Time step</b> - in this menu you can set the time of
+representation of one step.</li>
+<li><b>Number of cycles</b> - in this menu you can define the number
+of times this animation will be repeated.</li>
+<li><b>Number of steps</b> - in this menu you can define the number of
+steps, which will compose the whole animation.</li>
+<li><b>Parameter varies</b> - allows to choose the range for the
+parameter: from 0 to Pi or from Pi to -Pi.</li>  
+</ul>
+</ul>
+
+<ul>
+<li><b>Animation preferences</b></li>
+<ul>
+<li><b>Speed</b> - allows to define the speed of the animation.</li>
+<li><b>Cycled animation</b> - allows to start a cycled animation of the presentation.</li>
+<li><b>Use proportional timing</b> - allows to render the animation with proportional periods of time between every frame (not depending on the time stamps).</li>
+<li><b>Clean memory at each frame</b> - this option allows to optimize the performance of the operation.</li>
+</ul>
+</ul>
+
+<br><h2>Representation Preferences</h2>
+
+\image html pref33.png
+
+<ul>
+<li><b>Representation properties</b> - these checkboxes allow to
+choose the default representation type for each field presentation.</li>
+<ul>
+<li><b>Use Shading</b> - when this option is checked, the objects will
+be displayed with shading.</li>
+<li><b>Display only on creation</b> - when this option is checked, all
+previously created presentations will be automatically removed from
+the viewer when a new presentation is created and displayed. You can
+restore the previously created presentations using the Object
+Browser.</li>
+</ul>
+</ul>
+
+<br><h2>3D Cache</h2>
+
+\image.html pref40.png
+
+<ul>
+<li><b>3D Cache Preferences</b> - allow to define the mode of usage
+and the size of the 3D Cache, which enables to save in RAM and quickly
+restore the states of field animation.</li>
+<ul>
+<li><b>Memory Mode</b> - allows to define the mode of usage
+of the 3D Cache: <b>Minimal</b> actually disables the Cache,
+<b>Limited</b> Cache size depends on the current system
+configuration.</li>
+<li><b>Memory Limit</b> - allows to define the maximum size of the 3D
+Cache</li> 
+</ul>
+</ul>
+  
+
+<br><h2>Gauss Points Preferences</h2>
+
+\image html pref34.png
+
+<ul>
+<li><b>Primitive</b> - this menu allows user to choose the graphic
+primitive to use to present the results at Gauss points in the
+viewer.</li>
+<ul>
+<li><b>Primitive type</b> - provides choice between <b>Point
+sprites</b>, <b>Open GL points</b> and <b>Geometrical Spheres</b>.</li>
+<li><b>Maximum Size (Clamp)</b> - defines the maximum size of sprite
+points ranging from 1 to 512. By default the value is set to 256
+pixels.</li>
+<li><b>Main Texture</b> -  path to the <b>Main Texture</b> (16x16
+pixels) which defines the shape of the point sprite used for
+rendering.</li>
+<li><b>Alpha Channel Texture (16*16)</b> - path to the <b>Alpha
+Channel Texture</b> which defines the texture of the point
+sprite.</li>
+<li><b>Alpha Channel Threshold</b> - defines the level of transparency
+ranging from 0 to 1.</li>
+<li><b>Geometrical Sphere Resolution</b> - defines the number of faces
+of <b>Geometry Spheres</b>.</li>
+<li><b>Notify when number of faces exceeds</b> - limitation of the
+number of faces; the user will be warned if it exceeds the given
+value.</li>
+</ul>
+</ul>
+
+<ul>
+<li><b>Size</b> - in this menu you can define:</li>
+<ul>
+<li><b>Range value for min and max size</b> - these two parameters
+will be respectively multiplied by a reference length (average size of
+cells of the mesh) to define the range for minimum and maximum size of
+a point during rendering (at magnification = 100%). Default values
+are:</li>
+<ul>
+<li><b>Rainbow</b> scale: <b>min</b> = <b>10%</b>, <b>max</b> =
+<b>33%</b></li>
+<ul>
+<li>Min size is associated to the smallest real value (including
+negative values).</li>
+<li>Max size is associated to the largest real value.</li>
+</ul>
+<li><b>Bicolor</b> scale: <b>min</b> = <b>0</b> (not editable),
+<b>max</b> = <b>33%</b></li>
+<ul>
+<li>Null size is associated to the 0 scalar value.</li>
+<li>Max size is associated to the largest absolute value.</li>
+</ul>
+</ul>
+Both values are dynamically updated by the system according to the
+selected scalar bar. In the case of a Bicolor scale, the minimum value
+is set to 0 in the dialog and the control is disabled.
+<li><b>Magnification (%)</b> corresponds to the change of size of
+results at Gauss point primitives in 2D space. Acceptable values range
+from 0 to N; 100% means no magnification, 50% means half of its size,
+200% mean twice its size and so forth. By default this value is set to
+100%.</li>
+<li><b>+/- Ratio</b> corresponds to the number by which the
+magnification will be respectively multiplied or divided at edition,
+ranging from 0.01 to 10. By default this value is set to 2.</li>
+</ul>
+</ul>
+
+<ul>
+<li><b>Geometry</b></li>
+<ul>
+<li><b>Size of points (%)</b> defines a value that will be multiplied
+by a reference length (representative of the average size of cells of
+the mesh) to define the size of points during rendering (at
+magnification = 100%). Default values 10%.</li>
+<li><b>Color</b> -  allows to select the color of points used for
+presentations. Click on the colored line to access to the \ref
+select_color_and_font_page "Select Color" dialog box.</li>
+</ul>
+</ul>
+
+<ul>
+<li><b>Gauss Points Scalar Bar</b></li>
+<ul>
+<li><b>Active Bar</b> - this option allows to choose <b>Local</b> or
+<b>Global</b> Bar as active.</li>
+<li><b>Display Global Bar</b> - this option allows to visualize or to
+hide the Global Bar.</li>
+<li><b>Scalar Bar Mode</b> - this option allows to choose between
+<b>Bicolor</b> and <b>Rainbow</b> Scalar Bar Mode.</li>
+<li><b>Spacing</b> - allows to define Spacing from 0.01 to 1.</li>
+</ul>
+</ul>
+
+<br><br><b>Inside<b> and </b>Outside Cursor Preferences</b> allow to set
+<b>Primitives</b>, <b>Size</b> and <b>Magnification</b> for the
+respective zones.
+
+<br><h2>Picking Preferences</h2>
+
+\image html pref37.png
+
+<ul>
+<li><b>Cursor</b> - allows to adjust the Size of the cursor used for
+Picking (ranging from 0.1 to 1), the Height of the pyramids (ranging
+from 0 to 10) and the Selection cursor color.</li>
+<li><b>Tolerance</b> - defines at which distance of the cursor from
+the point it becomes selected (ranges from 0.001 to 10).</li>
+<li><b>Information window</b> - allows to define the
+<b>Transparency</b> (from 0% = opaque to 100% = transparent) and
+<b>Position</b> of the window, which can be:</li>
+<ul>
+<li><b>Centred below the point</b>, or</li>
+<li>located at <b>Top-left corner of the 3D view</b></li>
+</ul>
+<li><b>Movement of the Camera</b> can also be define by the user.</li>
+<ul>
+<li><b>Zoom at first selected point</b> - This value is used to define
+the focal distance at the first selected point (at the end of the
+movement of the camera). This value is a ratio that will be multiplied
+by the current zoom value.</li>
+<li><b>Number of steps between two positions</b> - defines the
+smoothness of camera movement at selection by the number of
+iterations. If set to 1 the camera is zoomed and centered at the point
+momentarily. Greater numbers mean very slow camera movement.</li>
+</ul>
+<li><b>Display parent mesh element</b> - allows to visualize or hide
+the patent mesh element of the selected gauss point.</li>
+</ul>
+
+<br><h2>Navigation Preferences</h2>
+
+\image html pref38.png
+
+<br>
+<ul>
+<li><b>Mouse</b></li>
+<ul>
+<li><b>Mouse Behaviour</b> - this option allows to choose one of the
+modes of work with mouse in Gauss Viewer.</li>
+<ul>
+<li><b>Salome Standard Controls</b> - allows to manipulate objects in the
+viewer with the mouse and locked Ctrl button: increase or decrease the
+zoom ratio with the left mouse button, translate object in any
+direction with the central mouse button or rotate it with the right
+mouse button.</li>
+<li><b>Keyboard Free</b> - allows to manipulate objects in the viewer
+with the mouse without locking Ctrl button. In this case the
+operations are assigned to the buttons differently: rotation is made
+with the left button, translation with the right and zoom with both
+pressed in the same time.</li>
+</ul>
+</ul>
+</ul>
+
+<ul>
+<li><b>Keyboard</b></li>
+<ul>
+<li><b>[+]/[-] Speed Increment</b> - defines the number of units by
+which the speed increases or respectively decreases after pressing [+]
+or [-] keyboard buttons.</li>
+</ul>
+</ul>
+
+<ul>
+<li><b>Spacemouse</b> - a mouse-like manipulator device specially designed
+for working with 3D presentations, objects, etc. You can reassign the
+actions listed below to any of its buttons.</li>
+<ul>
+<li><b>Decrease Speed Increment</b> - decreases by 1 the speed increment used for the keyboard (same as [-] key).</li>
+<li><b>Increase Speed Increment</b> - increase by 1 the speed increment used for the keyboard (same as [+] key).</li>
+<li><b>Decrease Gauss Points Magnification</b> - divides the current magnification by the magnification ratio.</li>
+<li><b>Increase Gauss Points Magnification</b> - multiplies the current magnification by the magnification ratio.</li>
+<li><b>Dominant / combined switch</b> - toggles button to switch to dominant or combined movements.</li>
+</ul>
+</ul>
+
+<br><h2>Recorder Preferences</h2>
+
+\image html pref38.png
+
+<ul>
+<li><b>Settings</b></li>
+<ul>
+<li><b>Mode</b> - allows to choose from two recording regimes:</li>
+<ul>
+<li><b>Recording all displayed frames</b> - records exactly at the FPS rate specified by the user.</li>
+<li><b>Recording at a given FPS</b> - records only when the contents
+of the viewer change (some activity is performed).  In the AVI file
+non-recorded images are substituted with the copies of the latest
+recorded image, which produces files with lower quality but requires
+less system resources.   </li>
+</ul>
+<li><b>FPS</b> - allows to define the FPS (frames per second) rate for
+the clip. Set greater value for better quality.</li>
+<li><b>Quality</b> - allows to set the quality of the clip in the
+interval between 0 and 100.</li>
+<li><b>Progressive</b> - allows to record a progressive API
+file.</li>
+</ul>
+</ul>
+
+*/
diff --git a/doc/salome/gui/GUI/input/running_salome.doc b/doc/salome/gui/GUI/input/running_salome.doc
new file mode 100644 (file)
index 0000000..630c5d2
--- /dev/null
@@ -0,0 +1,110 @@
+/*!
+
+\page running_salome_page Running SALOME
+
+<em>To launch SALOME:</em>
+<ol>
+<li>Install the SALOME package into a definite directory (ex. \b SALOME)
+on your hard disk. It is preferable if you use the special
+installation procedure allowing to install the  SALOME platform and
+all corresponding applications.</li>
+<li>The installation shell script will create a special file:
+<b>salome.csh</b> (CShell file) in your SALOME/KERNEL directory. This file
+contains all environment variables necessary for launching SALOME
+platform with other application products provided with SALOME
+installation package. You have a possibility to add one of them into
+your profile if you enter in the command console the following: <br><br>
+<tt>source salome.csh</tt>
+
+<b>Tip:</b> During the installation procedure you have a possibility to set your profile automatically.</li>
+
+<li> Launch SALOME platform, using the following Python script located
+in the <b>SALOME/KERNEL/bin/salome</b> directory:<br><br> 
+<ul>
+<li>\b runSalome.py [command line options]
+</ul>
+</li>
+</ol>
+
+\anchor batch_mode_run
+
+<table>
+<tr>
+<td><h2>Options</h2></td>
+<td><h2>Description</h2></td>
+</tr>
+<tr>
+<td>--\b help or -\b h</td>
+<td>print this help</td>
+</tr>
+<tr>
+<td>--\b gui or -\b g</td>
+<td>launch with GUI</td>
+</tr>
+<tr>
+<td> --\b terminal or -\b t</td>
+<td>launch without GUI in batch mode</td>
+</tr>
+<tr>
+<td>--\b logger or -\b l</td>
+<td>redirects log messages in the file <em>logger.log</em></td>
+</tr>
+<tr>
+<td>--\b file=<b>\<FILE\></b> or -\b f=<b>\<FILE\></b></td>
+<td>redirects  log messages in a custom file</td>
+</tr>
+<tr>
+<td>--\b xterm or -\b x</td>
+<td>the servers open an xterm window and log messages are displayed in this window</td>
+</tr>
+<tr>
+<td>--\b modules=\b module1,\b module2,... or -\b m=\b module1,\b module2,...</td>
+<td>list of SALOME modules which will be loaded into the module catalogue</td>
+</tr>
+<tr>
+<td>--\b embedded=<b>registry,study,moduleCatalog,cppContainer</b>,
+or -\b e=<b>registry,study,moduleCatalog,cppContainer</b></td>
+<td>embedded CORBA servers (default: registry,study,moduleCatalog,cppContainer)
+note that logger,pyContainer,supervContainer can't be embedded</td>
+</tr>
+<tr>
+<td>--\b standalone=<b>registry,study,moduleCatalog,cppContainer,pyContainer,supervContainer</b>, or
+-\b s=<b>registry,study,moduleCatalog,cppContainer,pyContainer,supervContainer</b></td>
+<td>standalone CORBA servers (default: pyContainer,supervContainer)</td>
+</tr>
+<tr>
+<td>--\b containers=<b>cpp,python,superv</b>
+or -\b c=<b>cpp,python,superv</b></td>
+<td>launch of cpp, python and supervision containers</td>
+</tr>
+<tr>
+<td>--\b portkill or -\b p</td>
+<td>kill SALOME launched with the current port</td>
+</tr>
+<tr>
+<td>--\b killall or -\b k</td>
+<td>kill SALOME</td>
+</tr>
+<tr>
+<td>--<b>interp</b>=<b>n</b> or -<b>i</b>=<b>n</b></td>
+<td>number of additional xterm to open, with session environment</td>
+</tr>
+<tr>
+<td>-\b z</td>
+<td>display splash screen</td>
+</tr>
+<tr>
+<td>-\b r</td>
+<td>disable centralized exception handling mechanism</td>
+</tr>
+</table>
+
+<b>Tip:</b> If the \b runSalome.py script is launched without prompting
+any options, they will be taken by default from the file <b>SalomeApp.xml
+(SALOME/GUI/share/salome/resources/SalomeApp.xml)</b>. If you are
+constantly launching SALOME with some specific options which are
+different from the defaults, you can edit this file according to your
+requirements. So the next time you run SALOME, you won't have to enter
+these numerous command console options.
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/salome_architecture.doc b/doc/salome/gui/GUI/input/salome_architecture.doc
new file mode 100644 (file)
index 0000000..8849a83
--- /dev/null
@@ -0,0 +1,95 @@
+/*!
+
+\page salome_architecture_page SALOME architecture
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+\b SALOME architecture is based on \b CORBA technology using
+distributed system model of applications. This architecture takes the
+concept of multitier client/server to its natural conclusion. The
+distributed system model exposes all functionality of the application
+as objects, each of which can use any of the services provided by
+other objects in the system, or even objects in other systems. The
+architecture can also blur the distinction between "client" and
+"server" because the client components can also create objects that
+behave in server-like roles. This architecture provides the ultimate
+in flexibility.
+
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+The distributed system architecture achieves its flexibility by
+encouraging (or enforcing) the definition of specific component
+interfaces. The interface of a component specifies to other components
+what services are offered by that component and how they are used. As
+long as the interface of a component remains constant, that
+component's implementation can change dramatically without affecting
+other components.
+
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+All software components (Post-Pro, Geometry, Mesh...) integrated into
+\b SALOME platform  implement predefined interfaces. Each component
+provides data for the \b SALOME study in a form of links (stored in
+the Study) to the specific data created and stored in the
+component. All components represent \b CORBA servers and it allows to
+run them on different host stations.
+
+\image html image67.gif
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+It is equally possible to create engine-independent modules. These
+modules may not use CORBA at all, and can have internal data structure
+which can be written in pure C++ (or python). Such modules are located
+inside SALOME GUI process and from the point of view of the end user
+have no difference with standard components. Such modules not using
+the standard tools of SALOME platform are defined on a special
+separated level named CAM. CAM component is the basis for new SALOME
+GUI and contains all basic functionality for working with modules
+(loading; saving, closing, customization of toolbar and menu).
+
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+Another fundamental piece of the \b SALOME architecture is the use of
+the Interface Definition Language (IDL). IDL, which specifies
+interfaces between CORBA components, is instrumental in ensuring
+CORBA's language independence. Because interfaces described in IDL can
+be mapped to any programming language, CORBA applications and
+components are thus independent of the language(s) used to implement
+them.
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+Additional information about CORBA technology
+is available at http://www.omg.org
+
+\note In \b SALOME there is a possibility to run
+definite components in the so-called \ref batch_mode_run "batch mode" without GUI provided
+by GUI component. In this case you can work with these components with
+the help of Python commands and scripts.
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+The architecture of this all-inclusive
+platform for numerical components  responds to the following
+objectives:
+<ol>
+<li>\b Flexibility :  the creation and modification of computation
+schemes must be easy. The developer must have easy access to all
+modeling parameters to create domain-specific tools adapted to new
+situations or to test new numerical algorithms. SALOME allows
+integration and implementation of numerical and physical components
+derived from existing code.</li>
+<li>\b Productivity :  the implementation of code is simple for the
+user and the reuse of components (within other environments for
+macro-components) is noticeably facilitated.</li>
+<li> \b Performance :\b  SALOME is able to more finely simulate
+phenomena that is more complex in scale and in physical coupling
+requirements. \b SALOME economically exploits the performance of used
+machines (massively parallel processors, PC clusters, etc).</li>
+<li> \b Expandability:  on the one hand, software technologies and
+physical architectures evolve rapidly compared to the development
+time, validation and use of a scientific application while on the
+other hand, the development of a database model adapted to the
+totality of exchanges between components can be achieved
+incrementally. \b SALOME  is able to easily follow these
+developments.</li>
+</ol>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/salome_desktop.doc b/doc/salome/gui/GUI/input/salome_desktop.doc
new file mode 100644 (file)
index 0000000..101d77f
--- /dev/null
@@ -0,0 +1,74 @@
+/*!
+
+\page salome_desktop_page SALOME desktop
+
+The main SALOME Desktop consists of the following sections and
+toolbars:
+
+\image html geomview-alt.png
+
+<b>Basic parts of the SALOME Desktop:</b>
+<ul>
+<li><b>Main menu</b> - This is a set of context-sensitive menus, which will
+be updated according the functionality of the loaded component. In
+general,  these menus contain all functional options of SALOME
+platform.</li>
+<li><b>Standard Toolbar</b> - This toolbar contains icons allowing
+creating/saving studies, correcting mistakes, copying/pasting
+objects.</li>
+<li><b>Components Toolbar</b> - This toolbar is destined for uploading
+components in SALOME platform.</li>
+<li><b>Module Toolbar</b> - This toolbar contains icons specific to the
+loaded module.</li>
+<li><b>Viewer Toolbar</b> - This is a set of tools destined for visualization
+of the presentations in the viewer.</li>
+</ul>
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;All toolbars in the
+\b SALOME Platform are context-sensitive. Loading of a definite component
+(Geometry, Post-Pro, Mesh etc.) will automatically add some additional
+toolbars specific to this component. To display/hide a definite
+toolbar, in the main menu choose <b>View > Toolbars</b>, and from this
+submenu check or uncheck the toolbar, you would like to display/hide.
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;By default all
+toolbars are located on the top of the SALOME desktop. But you can
+relocate toolbars by dragging with the mouse and dropping it in any
+place of the window.
+
+<b>Parts of  the study window:</b>
+<ul>
+<li><b>Object Browser</b> - Management of objects created or imported into
+SALOME application.</li>
+<li>\b Viewer - This window is destined for visualization of
+presentations.</li>
+<li><b>Python console</b> - Window for Python interpreter. This window
+functions like a standard document: the pop-up menu invoked by
+right-click in this window gives access to
+<b>Copy/Paste/SelectAll/ClearAll</b> options.</li>
+</ul>
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Object Browser, Python
+Console, MenuBar, etc are, in fact, separate dockable windows.
+Dockable windows can be placed in special areas, on the borders of
+desktop like toolbars. You can change the size and the position of
+dockable windows, hide them or even place outside desktop. SALOME
+saves in the same file all positions and sizes of dockable windows. It
+means that the difference in settings of the same windows (for example
+Python console) is possible between different modules (the same window
+can have different size and position when other module is
+activated). Also each module can indicate which common windows are
+necessary for working, and only they will be displayed when this
+module is active.
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Starting from the
+version 3.0.0 Salome uses a <b>Multi-Desktop Approach</b>. Multi-desktop
+Approach means that now there is separate Desktop for each document
+(Study)  and all windows connected to a Study (viewers, dockable
+windows etc) are placed in one container. It is very comfortable,
+because you can't mix up windows from different studies. This approach
+positively differs from the classic multi document interface in case
+if many windows are used, i.e. when one document contains a lot of
+viewers, dialogs, etc. Each desktop also has its own menu and toolbar.
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/salome_preferences.doc b/doc/salome/gui/GUI/input/salome_preferences.doc
new file mode 100644 (file)
index 0000000..6a85158
--- /dev/null
@@ -0,0 +1,140 @@
+/*!
+
+\page salome_preferences_page SALOME preferences
+
+To begin setting preferences for your study, select \b Preferences in the
+main menu, the following dialog box will appear:
+
+\image html pref11.png
+If you've just started your study and haven't yet loaded other
+modules, you'll be able to change only those settings, which refer to
+the whole GUI SALOME session. These settings will be valid for the
+whole study session.
+
+<h2>General Preferences</h2>
+
+<ul>
+<li><b>Study Properties</b></li>
+<ul>
+<li><b>MultiFile Save</b> - if checked in, your study will be saved in
+several HDF files (one file for the data created by each component
+used during the study session).</li>
+<li><b>ASCII Save</b> - if checked in, your study will be saved in
+ASCII format file (or files).</li>
+<li><b>Store positions of windows</b> -  if checked in, positions of windows
+will be saved in a special file at the end of the current session and
+then restored for a new session.</li>
+<li><b>Store/restore last GUI state</b> - if checked in, all GUI settings are
+saved with the rest of the data whenever you save the study. When the
+study is reopened, the GUI state is restored.</li>
+</ul>
+<li><b>External browser</b></li>
+<ul>
+<li>\b Application - this option allows you to set an external browser (IE,
+Netscape) which will be used for viewing SALOME reference manuals. By
+default, Mozilla is used. Press the &quot;<b>...</b>&quot; button(see
+the picture below) to browse for the application you need in the data
+tree of your computer.</li>
+<li>\b Parameters</li>
+</ul>
+<li><b>Python console properties</b> - here you can quickly set the
+parameters (style, size, face) of the font used in your Python
+console.</li>
+</ul>
+\par
+For detailed settings in \ref select_color_and_font_page "Select Font"
+dialog box press the &quot;<b>...</b>&quot; button(see the picture below).
+
+\image html image69.gif "&quot;...&quot; button"
+
+<br><h2>Viewers Preferences</h2>
+
+\image html pref12.png
+
+<ul>
+<li><b>OCC and VTK 3D Viewers</b></li>
+<ul>
+<li><b>Trihedron size</b> - this submenu allows to set the size of
+coordinate axes displayed in the viewer.</li>
+<li><b>Background Color</b> - this submenu allows to select background
+color. Click on the colored line to access to the 
+\ref select_color_and_font_page "Select Color" dialog box.</li>
+<li><b>Number of isolines along U</b> (or <b>V</b>) - this submenu allows to specify
+the number of isolines along the axes of coordinates.</li>
+<li><b>Relative size</b> - if checked in, trihedron axes scale to fit the
+size of the area displayed in 3D Viewer.</li>
+</ul>
+<br>
+<li><b>Plot2d Viewer</b></li>
+<ul>
+<li><b>Legend Position</b> - this submenu allows to set the default position
+of the legend, it can be located to the left, to the right, on top or
+on bottom of the graph.</li>
+<li><b>Curve Type</b> - this allows to set the representation of graphs in
+your presentations. You can see only <b>Points</b>, points connected with
+<b>Lines</b> or points connected with smooth <b>Splines</b>.</li>
+<li><b>Marker Size</b> - this submenu allows you to set the size of
+markers in your graphs</li>
+<li><b>Horizontal & Vertical Axis Scale</b> - this submenu allows you to set
+the scale for vertical and horizontal axes. It can be either <b>Linear</b> or
+<b>Logarithmic</b></li>
+<li>Background Color - this submenu allows to select the background
+color. Click on the colored line to access to the 
+\ref select_color_and_font_page "Select Color" dialog box.</li>
+</ul>
+<br>
+<li><b>Graph Supervisor</b></li>
+<ul>
+<li><b>Background Color</b> - this submenu allows to select background
+color. Click on the colored line to access to the 
+\ref select_color_and_font_page "Select Color" dialog box.</li>
+<li><b>Title Color</b> - this submenu allows to select title color. Click on
+the colored line to access to the 
+\ref select_color_and_font_page "Select Color" dialog box.</li>
+</ul>
+</ul>
+
+<br><h2>Directories Preferences</h2>
+
+\image html pref13.png
+
+<ul>
+<li>
+<b>Quick Directory List</b> - this section allows to create and manage
+a custom quick directory list. To add a directory in the list, press
+the "Add directory" button:
+\image html image70.gif
+
+then the &quot;<b>...</b>&quot; button and browse the data tree for the
+directory you need.
+The "Up" and "Down" buttons(see the picture below) help you to sort
+the directories in the list:
+\image html image73.gif
+
+\image html image75.gif
+To remove the selected directory from the list, press the "Delete"
+button:
+\image html image72.gif
+</li>
+</ul>
+
+<br><h2>Object Browser Preferences</h2>
+
+\image html pref14.png
+
+<ul>
+<li><b>Object browser settings</b></li>
+<ul>
+<li><b>Auto size for the first column</b> - this checkbox enables automatic
+resizing for the first column.</li>
+<li><b>Auto size for other columns</b> - this checkbox enables
+automatic resizing for the other columns.</li>
+</ul>
+</ul>
+
+<ul>
+<li><b>Default columns</b> - these checkboxes allow to display or hide <b>Value</b>,
+<b>Entry</b>, <b>IOR</b> and <b>Reference entry</b> columns in the Object Browser.</li>
+</ul>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/saving_and_closing_studies.doc b/doc/salome/gui/GUI/input/saving_and_closing_studies.doc
new file mode 100644 (file)
index 0000000..c996b09
--- /dev/null
@@ -0,0 +1,81 @@
+/*!
+
+\page saving_and_closing_studies_page Saving and closing studies
+
+In \b SALOME a study can be saved in \b HDF binary (by default) or \b ASCII
+files (see also: \ref salome_preferences_page "Setting ASCII save option").
+
+You can also specify  two options of saving your study:
+<ul>
+<li><b>In one HDF file:</b> in this case all components used during this
+study session will write their data into one common HDF file.
+</li>
+<li>
+<b>In multiple files</b> (see also: \ref salome_preferences_page
+"Setting Multifile save option") : in this
+case SALOME will create one base HDF file which will store the main
+information about the saved study and several other special files with
+particular extensions storing the data written by each component which
+has been used during this study session. Opening of this study
+requires that \b ALL saved files should be stored in the \b SAME directory.
+If you would like to copy your saved study in another directory or
+machine, you should copy all stored files. Otherwise, if you try to
+open this study, some data will be lost and it will lead to invalid
+functioning of the SALOME platform.
+</li>
+</ul>
+
+Saving a study you also save its layout, i.e. all positions and sizes
+of dockable windows. It means that the difference in settings of the
+same windows (for example Python console) is possible between
+different modules (the same window can have different size and
+position when other module is activated). Also each module can
+indicate which common windows are necessary for working, and only they
+will be displayed when this module is active.
+
+<em>To save an existing study:</em>
+\par
+In the main toolbar click "Save document" button or from the main menu
+select <b>File > Save</b> option. Your study will be automatically
+updated.
+
+\image html save.jpg "&quot;Save document&quot; button"
+
+\note If your study hasn't been previously saved, this option will
+call the standard Search File dialog box where you can enter the name
+for your study and save it.
+
+<em>To save a study with a new name:</em>
+\par
+From the main menu select <b>File > Save as</b> option. In the standard
+Search File dialog box enter a new name for your study and click \b Save
+button.
+
+<em>To save the current layout of the GUI:</em>
+\par
+From the main menu select <b>File > Save VISU State</b>. The current
+state of the graphic interface is published in Object Browser in the
+folder GUI states and can be at any time \b Restored, \b Renamed or \b
+Deleted. This operation saves and allows to
+restore almost all GUI settings: names, position, zooming and panning
+of viewers  and all displayed objects (in Post-Pro module only).
+
+<em>To close a study:</em>
+\par
+In the main toolbar click "Close document" button or  from the main menu select <b>File > Close</b>
+option or click on the cross in the upper right corner of the study
+window.
+
+\image html image94.gif "&quot;Close document&quot; button"
+
+\note If your study hasn't been previously saved, this option will
+call the following dialog box with several options:
+
+\image html closestudy.png
+
+\n\b Unload option allows to unload your current study from the SALOME
+Desktop. In the same working session you can  reload it again (see:
+\ref opening_studies_page "Opening studies"). But if you quit the SALOME application, all changes
+in the unloaded study will be lost.
+
+*/
diff --git a/doc/salome/gui/GUI/input/select_color_and_font.doc b/doc/salome/gui/GUI/input/select_color_and_font.doc
new file mode 100644 (file)
index 0000000..96b570a
--- /dev/null
@@ -0,0 +1,30 @@
+/*!
+
+\page select_color_and_font_page Select Color and Font
+
+<b>Select Color</b> and <b>Select Font</b> menus are used in many
+Preferences.
+
+<br><h2>Select color</h2>
+
+\image html selectcolor.png
+
+This menu  allows to choose from either predefined <b>Basic Colors</b>
+grouped in the upper left corner of the window or <b>Custom Colors</b>, which
+you can define yourselves. To define a Custom Color, click on one of
+the Custom Color cells, select the color you need in the field of
+colors or by typing in its numeric parameters in the lower right
+corner of the window, then click <b>Add to Custom Colors</b> button. The
+chosen color will be added to <b>Custom Colors</b> table.
+
+<br><h2>Select font</h2>
+
+\image html selectfont.png
+
+This menu provides a wide choice of \b Fonts, <b>Font Styles</b> and
+\b Sizes. Characters can be underlined or struck out. It is possible to
+preview them in the \b Sample window. \b Script dialog-box gives the
+possibility to use not only Latin and Latin Extended but also
+Cyrillic, Greek, Arabic, Runic and many other subsets.
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/setting_preferences.doc b/doc/salome/gui/GUI/input/setting_preferences.doc
new file mode 100644 (file)
index 0000000..49802ee
--- /dev/null
@@ -0,0 +1,29 @@
+/*!
+
+\page setting_preferences_subpage Setting Preferences
+
+In \b SALOME you can set preferences for each module in the common editor
+of preferences. SALOME preferences refer to the whole GUI SALOME
+session, other preferences are module-specific and are accessible only
+after you load a respective module.
+\n When you change settings (click \b OK or \b Apply button) each module
+receives the notification about what preferences are changed. You can
+also click \b Defaults button to restore default preferences or \b Close
+button to quit the menu without any changes. 
+\n \b Import button allows to load a user file containing preferences
+from your home directory through a standard Import dialog box.
+
+\image html import.png
+
+This file has no extension and by default starts with
+.SalomeApprc. followed by Salome version number. There exists one file
+for each Salome version in use.
+\n The preferences, set during the current study session, are
+automatically saved in this file at the end of the session. Next time
+you launch SALOME application, these preferences will be restored.
+
+\note The preferences you set will be default preferences for all \b new
+objects, but they are not retroactive and do not automatically apply
+to the existing objects.
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/setting_preferences_chapter.doc b/doc/salome/gui/GUI/input/setting_preferences_chapter.doc
new file mode 100644 (file)
index 0000000..b04a761
--- /dev/null
@@ -0,0 +1,14 @@
+/*!
+
+\page setting_preferences_page Setting Preferences
+
+<ul>
+<li>\subpage setting_preferences_subpage</li>
+<li>\subpage select_color_and_font_page</li>
+<li>\subpage salome_preferences_page</li>
+<li>\subpage geometry_preferences_page</li>
+<li>\subpage mesh_preferences_page</li>
+<li>\subpage postpro_preferences_page</li>
+</ul>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/setting_study_properties.doc b/doc/salome/gui/GUI/input/setting_study_properties.doc
new file mode 100644 (file)
index 0000000..2101f43
--- /dev/null
@@ -0,0 +1,36 @@
+/*!
+
+\page setting_study_properties_page Setting study properties
+
+<em>To view the properties of the current study:</em>
+\par
+From the main menu select \b File > \b Properties option. The following
+dialog box will appear:
+
+\image html studyproperties.png
+
+This dialog box gives complete information about your study.
+
+<em>To change the name of the study author:</em>
+\par
+In this dialog box click on the \b Author field and enter a new name.
+
+<em>To view the list of changes made with your study:</em>
+\par
+In this dialog box click on the \b Modifications field and scroll it
+down. Each record contains the following information: date and time of
+modification of the study, name of the user, who has made these
+changes.
+
+<em>To lock your study for modifications:</em>
+\par
+In the dialog box shown on the picture above click on the \b Locked
+field and choose \b Yes item.
+
+In this case your study will be locked for any kind of modifications
+for all users. Next time you try to edit it, you will see the
+following warning message:
+
+\image html lockedstudy.png
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/study_management_chapter.doc b/doc/salome/gui/GUI/input/study_management_chapter.doc
new file mode 100644 (file)
index 0000000..54ffda2
--- /dev/null
@@ -0,0 +1,15 @@
+/*!
+
+\page study_management_page Study management
+
+<ul>
+<li>\subpage creating_new_study_page</li>
+<li>\subpage opening_studies_page</li>
+<li>\subpage saving_and_closing_studies_page</li>
+<li>\subpage editing_studies_page</li>
+<li>\subpage displaying_studies_page</li>
+<li>\subpage working_with_python_scripts_page</li>
+<li>\subpage setting_study_properties_page</li>
+</ul>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/using_catalog_generator.doc b/doc/salome/gui/GUI/input/using_catalog_generator.doc
new file mode 100644 (file)
index 0000000..af50de5
--- /dev/null
@@ -0,0 +1,65 @@
+/*!
+
+\page using_catalog_generator_page Using Catalog Generator (for advanced users)
+
+SALOME platform is an open platform for
+integration of your custom components, which can used in the same way
+as typical modules provided in the standard installed package. The
+<b>Catalog Generator</b> tool serves for implementation of the interface of
+your custom component. It allows to generate from IDL description of
+your component interface its xml description.  The component xml
+description allows SALOME application to know about the component and
+its services and provides the possibility to call the component
+services, for example, inside Supervisor module.
+
+If you have a look at runSalome,
+runSalomeWithPort scripts running SALOME application, which are stored
+in build/bin directory you will see that SALOME_ModuleCatalog_Server
+is started with two xml files as its input parameters:
+\b CatalogModuleGeneral.xml and \b CatalogModulePersonnel.xml. These two
+files store the descriptions of interfaces and services of all
+components, provided with typical SALOME package. To add a new
+component into SALOME platform you should either update one of these
+existing xml files with generated xml description of your component or
+create a new one.
+
+<em>To open the Catalog Generator:</em>
+\par
+From the main menu choose <b>Tools > Catalog Generator</b>, the following
+dialog box will appear:
+
+\image html cataloggenerator.png
+
+<br>In this dialog box you can specify:
+<ul>
+<li>Name and location of the IDL file describing the interface of your
+component (Click the \b Browse button to find it using the data tree).</li>
+<li>Name and location of an existing XML file, which will be updated
+with the interface of you component or name and desired location of a
+new XML file, which will be generated (Click the \b Browse button to find
+it using the data tree).</li>
+<li>Name of the author.</li>
+<li>Name of the component.</li>
+<li>Name of the user.</li>
+<li>Version.</li>
+<li>Capability of multi study support.</li>
+<li>Type of the component.</li>
+<li>Icon of your component (Click the \b Browse button to find it using
+the data tree).</li>
+</ul>
+
+\note If you have chosen to create a new xml file containing the
+description of your component, don't forget to specify it as
+input parameter for SALOME_ModuleCatalog_Server in the file, you are
+using as a running script of SALOME platform (in runSalomeWithPort,
+for example).
+
+When launching SALOME next time you will see your module alongside other components.
+
+\b Tip: You can use the <b>Catalog Generator</b> tool, if you would like to \b
+test the functionality of your new component. After implementation of
+your component interface, launch SUPERVISION module where you can try
+using the services of your new component. (see also: Adding factory
+nodes)
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/using_object_browser.doc b/doc/salome/gui/GUI/input/using_object_browser.doc
new file mode 100644 (file)
index 0000000..5aea269
--- /dev/null
@@ -0,0 +1,46 @@
+/*!
+
+\page using_object_browser_page Using Object Browser
+
+The <b>Object Browser</b> in SALOME is destined for displaying the
+structure of the current study in a tree-like form. It contains:
+
+<ul>
+<li>components, loaded during the current session</li>
+<li>objects created with the help of different components (The objects
+created with the help of a definite component are located in the
+folder having the name of this component)
+</li>
+<li>references to different objects (they are highlighted in red)</li>
+</ul>
+
+\image html objectbrowser1.png
+
+\note The <b>Object Browser</b> is destined to getting quick access to
+different objects created during SALOME session. All pop-up menus
+associated with the objects displayed in the Object Browser are
+context-sensitive. So it depends on a definite currently loaded SALOME
+component what options you will see in the pop-up menu, if you
+right-click on a definite object in the Object Browser.
+
+The Object Browser may contain supplementary attributes of the objects
+displayed in additional columns. By default, these columns are not
+displayed -  displaying/hiding these columns is possible through
+\ref salome_preferences_page "setting study preferences" or
+right-clicking on the attributes bar and toggling the necessary
+attributes.
+
+\image html objectbrowser2.png
+
+<ul>
+<li>\b Entry  - Identification index of the object in the structure of
+the study</li>
+<li>\b IOR -  Interoperable Object Reference</li>
+<li><b>Reference entry</b>  -  Identification index of the references
+to the objects</li>
+<li>\b Value  -  Displays the value of the first object attribute</li>
+</ul>
+
+\note <b>Entry, IOR and Reference entry</b> attributes are displayed for debugging purposes only.
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/using_registry_tool.doc b/doc/salome/gui/GUI/input/using_registry_tool.doc
new file mode 100644 (file)
index 0000000..a652a78
--- /dev/null
@@ -0,0 +1,49 @@
+/*!
+
+\page using_registry_tool_page Using Registry tool
+
+\b Registry tool is in the SALOME platform is destined for providing
+information about the processes (components), which have ever been
+launched in the current study session.
+
+<em>To view the Registry:</em>
+\par
+From the main menu choose <b>Tools > Registry display</b>, the
+following dialog box will appear:
+
+\image html registry1.png
+
+\b Running tab of this dialog box displays a list of the currently
+started processes (components) with supplementary information on each
+of them divided into columns:
+
+<ul>
+<li>\b Component: name of the started component
+<li>\b PID: process identification number
+<li>\b User \b Name: name of the user launching the component
+<li>\b Machine: name of the machine, on which the process has been started
+<li>\b begins: date and time of the starting of the component
+<li>\b hello: date and time of the last call to the component
+</ul>
+
+\b History tab displays a list of all processes, which have ever been
+launched within this study session. It contains the same supplementary
+information on each of the processes (components).
+
+\b Refresh button allows to refresh the current list of processes
+(components).
+
+\b Interval button allows to set an interval for refreshment of the
+current list of processes (components).
+
+\image html registry3.png
+
+<em>To display complete information on a definite process
+(component):</em>
+\par
+Double-click on this process (component). The following window will
+appear:
+
+\image html registry4.png
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/viewers_chapter.doc b/doc/salome/gui/GUI/input/viewers_chapter.doc
new file mode 100644 (file)
index 0000000..44271fc
--- /dev/null
@@ -0,0 +1,11 @@
+/*!
+
+\page viewers_page Viewers
+
+<ul>
+<li>\subpage occ_3d_viewer_page</li>
+<li>\subpage vtk_3d_viewer_page</li>
+<li>\subpage plot2d_viewer_page</li>
+</ul>
+
+*/
diff --git a/doc/salome/gui/GUI/input/vtk_3d_viewer.doc b/doc/salome/gui/GUI/input/vtk_3d_viewer.doc
new file mode 100644 (file)
index 0000000..fe7f91f
--- /dev/null
@@ -0,0 +1,144 @@
+/*!
+
+\page vtk_3d_viewer_page VTK 3D Viewer
+
+<b>VTK 3D viewer</b> is the default viewer for Mesh Module, allowing to
+visualize meshes. It is also used in Post-Pro module for all 3D
+presentations except for Gauss Points.
+
+The functionalities of VTK viewer are available via its Viewer
+Toolbar. Buttons marked with small downward triangles have extended
+functionality which can be accessed by locking on them with left mouse
+button.  
+
+\image html image157.gif "Viewer Toolbar"
+
+<hr>
+\image html image77.gif
+\n <center><b>Dump View</b> - exports an object from the viewer in bmp, png, jpg
+or jpeg image format.</center>
+<hr>
+
+\image html image88.gif
+\n <center><b>Show/Hide Trihedron</b> - shows or hides coordinate axes.</center>
+<hr>
+
+\image html image96.gif
+\n <center><b>Fit all</b> - scales the presentation so that it could
+fit within the Viewer boundaries. </center>
+<hr>
+
+\image html image97.gif
+\n <center><b>Fit area</b> - resizes the view to place in the visible area
+only the contents of a frame drawn with pressed left mouse button.</center>
+<hr>
+
+\image html image98.gif
+\n <center><b>Zoom</b> - allows to zoom in and out.</center>
+<hr>
+
+\image html image99.gif
+\n <center><b>Panning</b> - if the represented objects are greater that the
+visible area and you don't wish to use <b>Fit all</b> functionality, click on
+this button and you'll be able to drag the scene to see its remote
+parts.</center>
+<hr>
+
+\image html image100.gif
+\n <center><b>Global panning</b> - allows to select a point to be the
+center of the presentation showing all displayeed objects in the
+visible ares <center>
+<hr>
+
+\image html view_rotation_point.png
+\n <center><b>Change rotation point</b> - allows to to choose the point around
+which the rotation is performed.</center>
+
+\image html set_rotation_point_dialog1.png
+
+<center>By default the rotation point is located in the Center of the bounding
+box of an object.</center>
+
+\image html set_rotation_point_dialog2.png
+
+<center>Unchecking <b>Use Bounding Box Center</b> checkbox allows you to
+define the coordinates of the rotation point manually.</center>
+
+<b>Set to Origin</b> button restores the default rotation point
+coordinates.\n
+<b>Select Point from View</b> button allows to select the rotation
+point in the 3D Viewer.
+<hr>
+
+\image html image89.gif
+\n <center><b>Rotation</b> - allows to rotate the selected object using the
+mouse.</center>
+
+\image html image102.gif
+
+<center>These buttons orientate the scene strictly about coordinate axes.</center>
+<hr>
+
+\image html image91.gif
+\n <center><b>Reset</b> - restores the default position (isometric) of
+objects in the scene.</center>
+<hr>
+
+\image html urbutton.png
+\n <center><b>Update Rate</b> - allows to define the Update Rate for
+the presentations displayed in the viewer</center>
+
+\image html updaterate.png
+
+<ul>
+<li><b>Desired Update Rate, FPS</b> - allows to set the target Update
+Rate</li>
+<li><b>Still Update Rate, FPS</b> - allows to set the Update Rate for
+the periods when both the user and the application do not perform any
+actions in the viewer</li>
+<li><b>Current Update Rate, FPS</b> - shows the Update Rate currently
+available on your configuration</li>
+<li><b>Number of Cells</b> - shows the number of cells currently in
+display</li> 
+</ul>
+
+\image html image108.gif
+\n <center><b>Scaling</b> - represents objects deformed (stretched or
+stuffed) along the axes of coordinates.</center>
+<hr>
+
+\image html image109.gif
+\n <center><b>Graduated axes</b> - allows to define parameters of axes
+and graduate them.</center>
+
+\image html graduatedaxes1.png
+
+<ul>
+<li><b>Axis name</b></li>
+<ul>
+<li><b>Is visible</b> - if checked the axis name is displayed in the
+viewer.</li>
+<li><b>Name</b> - allows to redefine the name of the axis.</li>
+<li><b>Font</b> - allows to define color and properties of the font of
+axis name.</li>
+</ul>
+<li><b>Labels</b></li>
+<ul>
+<li><b>Is visible</b> - if checked the labels are displayed in the
+viewer.</li>
+<li><b>Number</b> - allows to define the number of labels.</li>
+<li><b>Offset</b> - allows to define the distance between labels.</li>
+<li><b>Font</b> - allows to define color and properties of the font of
+labels names.</li>
+</ul>
+<li><b>Tick marks</b></li>
+<ul>
+<li><b>Is visible</b> - if checked the tick marks are displayed in the
+viewer.</li>
+<li><b>Length</b> - allows to define the length of tick marks.</li>
+</ul>
+<li><b>Is visible</b> - if checked the axis is displayed in the
+viewer. </li>
+</ul>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/input/working_with_python_scripts.doc b/doc/salome/gui/GUI/input/working_with_python_scripts.doc
new file mode 100644 (file)
index 0000000..83bfe3e
--- /dev/null
@@ -0,0 +1,52 @@
+/*!
+
+\page working_with_python_scripts_page Working with Python Scripts
+
+\b SALOME Platform can be launched in the batch mode, without Graphical
+User Interface, and operated with the use of Python scripts, which can
+fulfill most of the necessary tasks, however, the process of scripting
+is quite time consuming and rather error-prone.
+\n This problem has been resolved by the possibility to automatically
+generate a set of Python scripts from data created with SALOME GUI,
+which greatly increases the productivity of using SALOME platform in
+the batch mode. This mechanism can convert a SALOME Study in one or
+several Python scripts, which can be stored and imported later to
+re-create the content of the original study. The first script is a
+SALOME document, which re-creates the SALOME Study, adds the
+stored Salome components to the SALOME and automatically calls
+Python scripts of the second type containing component specific Python
+function calls. This architecture gives great flexibility in manual
+modification of the generated scripts because you can modify only one
+of the component specific Python scripts without touching others, thus
+avoiding expert knowledge of Python API of unused components.
+
+To Dump a  SALOME Study in one or several scripts, in the main menu
+select \b File --> <b>Dump study</b>
+\n The following dialog box allowing to browse for the location and
+define the name for a Python file will appear:
+
+\image html dumpstudy.png
+
+\par
+<ul>
+<li>
+<b>Publish in study</b> - if checked in, the component objects created by
+Python commands will be published in the created Study when the script
+is played, otherwise the objects will not be published in the Study.
+</li>
+<li>
+<b>Save GUI state</b> - if checked in, the current application layout will be
+saved in the Python file.
+</li>
+</ul>
+To confirm your choice click \b Save.
+
+Reversibly it is possible to load a saved Python Script selecting in
+the main menu \b File -> <b>Load Script</b>.
+
+\image html loadscript.png
+
+\par
+To confirm your choice click \b Open.
+
+*/
diff --git a/doc/salome/gui/GUI/introduction_to_gui.htm b/doc/salome/gui/GUI/introduction_to_gui.htm
deleted file mode 100755 (executable)
index 4c0851e..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<head>\r
-<title>Introduction to GUI</title>\r
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<link rel="stylesheet" href="default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{   document.write("<link rel='stylesheet' href='default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-p.whs1 { font-family:'Times New Roman' , serif; }\r
-ul.whs2 { list-style:disc; }\r
-p.whs3 { font-family:'Times New Roman' , serif; margin-left:40px; }\r
-p.whs4 { margin-left:40px; font-family:'Times New Roman' , serif; }\r
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:120px; }\r
-p.whs6 { margin-left:120px; font-family:'Times New Roman' , serif; }\r
-p.whs7 { text-align:justify; }\r
-p.whs8 { margin-left:0px; }\r
--->\r
-</style><script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
-  var strNSS = "<style type='text/css'>";\r
-  strNSS += "p.whs8 {margin-left:1pt; }";\r
-  strNSS +="</style>";\r
-  document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
-  if (innerWidth != origWidth || innerHeight != origHeight)\r
-     location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
-       origWidth = innerWidth;\r
-       origHeight = innerHeight;\r
-       onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }\r
-p.WebHelpNavBar { text-align:right; }\r
--->\r
-</style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
-       if (window.setRelStartPage)\r
-       {\r
-       addTocInfo("GUI module\nIntroduction to GUI");\r
-addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");\r
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");\r
-\r
-       }\r
-\r
-\r
-       if (window.setRelStartPage)\r
-       {\r
-       setRelStartPage("index.htm");\r
-\r
-               autoSync(1);\r
-               sendSyncInfo();\r
-               sendAveInfoOut();\r
-       }\r
-\r
-}\r
-else\r
-       if (window.gbIE4)\r
-               document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(4);\r
-//-->\r
-</script>\r
-<h1>Introduction to GUI</h1>\r
-\r
-<p class="whs1"><span style="font-family: 'Times New Roman', serif;"><span \r
- style="font-weight: bold;"><B>GUI</B></span> (Graphical User Interface) provides \r
- a common shell for all components, which can be integrated into the SALOME \r
- platform.</span></p>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<p class="whs1"><span style="font-weight: bold;"><B>GUI \r
- </B></span>component in SALOME platform provides:</p>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs2">\r
-       \r
-       <li class=kadov-p><p class="whs3">Common \r
- desktop environment (<a href="kernel/salome_pro_desktop.htm">SALOME desktop</a>) \r
- for all components</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs3">Component \r
- integration and management: uploading, switching, component menus/toolbars \r
- handling </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs3">Study \r
- management (creation, saving, loading, editing studies)</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs3">Multi-window \r
- management in the framework of one study</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs3">Management \r
- of objects created or imported into the SALOME application (<a href="kernel/using_object_browser.htm">Object \r
- Browser</a>) </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs3">Integrated \r
- Python interpreter </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs3">Output \r
- messages window</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs3">Additional \r
- tools : <a href="kernel/using_catalog_generator.htm">Catalogue Generator</a>, \r
- <a href="kernel/using_registry.htm">Registry tool</a></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Standard \r
- viewers for data visualization:</p></li>\r
-</ul>\r
-\r
-<p class="whs5">- \r
- VTK 3d viewer,</p>\r
-\r
-<p class="whs5">- \r
- OCC 3d viewer,</p>\r
-\r
-<p class="whs5">- \r
- Gauss Points viewer</p>\r
-\r
-<p class="whs5">- \r
- Plot 2d viewer,</p>\r
-\r
-<p class="whs6">- \r
- Supervision viewer.</p>\r
-\r
-<p class="whs7">&nbsp;</p>\r
-\r
-<p class="whs8">Since version 3.0.0 SALOME GUI is based on \r
- SUIT (Salome User Interface Toolkit) that proposes very flexible, powerful \r
- and safe mechanisms of interaction with SALOME tool components (both CORBA \r
- and standalone), resources management, viewers and selection handling, \r
- exception/signals processing, bringing to top multi-desktop dockable-windowed \r
- user interface which improves the usability of SALOME GUI.</p>\r
-\r
-<p class="whs8">All Graphical User Interfaces of standard \r
- modules have plug-in structure, i.e. each module is placed in a dynamic \r
- library which is loaded on demand. All modules can create their own menu \r
- items, buttons in toolbar, windows etc</p>\r
-\r
-<p class="whs5">&nbsp;</p>\r
-\r
-\r
-\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Introduction to SALOME','Introduction_to_SALOME_PRO.htm','SALOME desktop','SALOME_PRO_desktop.htm');return false;" title="Related Topics"><img src="ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>\r
-\r
-\r
\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
-  WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/kernel.log b/doc/salome/gui/GUI/kernel.log
deleted file mode 100755 (executable)
index 95b94ad..0000000
+++ /dev/null
@@ -1,303 +0,0 @@
-|SourceProjectName:KERNEL.hpr\r
-|DestinationProjectName:index.htm\r
-whhost.js\r
-whmsg.js\r
-whmozemu.js\r
-whproxy.js\r
-whstub.js\r
-whutils.js\r
-whver.js\r
-whform.js\r
-whphost.js\r
-whstart.js\r
-whtopic.js\r
-whframes.js\r
-whlang.js\r
-whskin_info.htm\r
-whskin_blank.htm\r
-whskin_pickup.htm\r
-whskin_homepage.htm\r
-whskin_tw.htm\r
-whnjs.htm\r
-whthost.js\r
-whtdhtml.htm\r
-whihost.js\r
-whibody.htm\r
-whiform.htm\r
-whfhost.js\r
-whfbody.htm\r
-whfform.htm\r
-whghost.js\r
-whgbody.htm\r
-whgdhtml.htm\r
-whgdef.htm\r
-whproj.js\r
-whproj.xml\r
-whproj.htm\r
-whxdata\whtoc.xml\r
-whxdata\whidx.xml\r
-whxdata\whfts.xml\r
-whxdata\whglo.xml\r
-whdata\whtoc.js\r
-whdata\whtoc.htm\r
-whdata\whtdata.js\r
-whdata\whidx.js\r
-whdata\whidx.htm\r
-whdata\whidata.js\r
-whdata\whfts.js\r
-whdata\whfts.htm\r
-whdata\whglo.js\r
-whdata\whglo.htm\r
-whdata\whgdata.js\r
-whdata\whftdata.js\r
-whdata\whfwdata.js\r
-whres.xml\r
-webhelp.jar\r
-webhelp.cab\r
-whgdata\whnvp30.htm\r
-whgdata\whnvp31.htm\r
-whgdata\whnvp32.htm\r
-whgdata\whnvp33.htm\r
-whgdata\whnvt30.htm\r
-whgdata\whnvt31.htm\r
-whgdata\whnvt32.htm\r
-whgdata\whnvt33.htm\r
-whgdata\whnvf30.htm\r
-whgdata\whnvf31.htm\r
-whgdata\whnvf32.htm\r
-whgdata\whnvf33.htm\r
-whgdata\whnvl31.htm\r
-whgdata\whnvl32.htm\r
-whgdata\whnvl33.htm\r
-whgdata\whexpbar.gif\r
-cshdat_webhelp.htm\r
-whcsh_home.htm\r
-whcshdata.htm\r
-cshdat_robohelp.htm\r
-whd_topic.xml\r
-whd_nvp10.htm\r
-whd_nvp20.htm\r
-whd_tabs.htm\r
-whd_dpns.htm\r
-whd_tab0.gif\r
-whd_tab1.gif\r
-whd_tab2.gif\r
-whd_tab3.gif\r
-whd_tab4.gif\r
-whd_tab5.gif\r
-whd_tab6.gif\r
-whd_tab7.gif\r
-whd_tab8.gif\r
-whd_toc1.gif\r
-whd_toc2.gif\r
-whd_toc3.gif\r
-whd_toc4.gif\r
-whd_show0.gif\r
-whd_show1.gif\r
-whd_show2.gif\r
-whd_hide0.gif\r
-whd_hide1.gif\r
-whd_hide2.gif\r
-whd_sync0.gif\r
-whd_sync1.gif\r
-whd_sync2.gif\r
-whd_prev0.gif\r
-whd_prev1.gif\r
-whd_prev2.gif\r
-whd_next0.gif\r
-whd_next1.gif\r
-whd_next2.gif\r
-whd_wbsh0.gif\r
-whd_wbsh1.gif\r
-whd_wbsh2.gif\r
-whidhtml.htm\r
-whfdhtml.htm\r
-index_hha.hhk\r
-index.hhc\r
-index.hhk\r
-dump_study.htm\r
-geom_preferences.htm\r
-introduction_to_gui.htm\r
-kernel\about_salome_pro_architecture.htm\r
-kernel\about_salome_pro_help_system.htm\r
-kernel\creating_a_new_study.htm\r
-kernel\displaying_studies.htm\r
-kernel\editing_studies.htm\r
-kernel\getting_properties_of_the_study.htm\r
-kernel\getting_started2.htm\r
-kernel\introduction.htm\r
-kernel\introduction_to_salome_pro.htm\r
-kernel\navigating_topics.htm\r
-kernel\opening_studies.htm\r
-kernel\readme.html\r
-kernel\running_salome_pro.htm\r
-kernel\salome_pro_desktop.htm\r
-kernel\saving_a_study.htm\r
-kernel\setting_preferences.htm\r
-kernel\using_catalog_generator.htm\r
-kernel\using_left-hand_tabs.htm\r
-kernel\using_object_browser.htm\r
-kernel\using_registry.htm\r
-mesh_preferences.htm\r
-occ_3d_viewer.htm\r
-post-pro_preferences.htm\r
-select_color_and_font.htm\r
-setting_preferences.htm\r
-vtk_3d_viewer.htm\r
-ehelp.xml\r
-robohhre.lng\r
-texture_horiz_ltbluebubbles.jpg\r
-index.glo\r
-default.css\r
-kernel\progresspage.png\r
-pics\set_rotation_point_dialog1.png\r
-kernel\choicepage.png\r
-pics\registry1.png\r
-pics\open.jpg\r
-pics\set_rotation_point_dialog2.png\r
-pics\image91.gif\r
-pics\icon_about.png\r
-pics\registry3.png\r
-pics\studyproperties.png\r
-pics\graduatedaxes1.png\r
-pics\image100.gif\r
-pics\registry4.png\r
-pics\cataloggenerator.png\r
-tip1.gif\r
-kernel\batchmode.png\r
-kernel\readmepage.png\r
-pics\ppref1.png\r
-pics\pref31.png\r
-pics\save.jpg\r
-pics\image157.gif\r
-pics\image102.gif\r
-kernel\productpage1.png\r
-pics\ppref2.png\r
-pics\pref21.png\r
-image70.gif\r
-pics\newsticn.jpg\r
-pics\image103.gif\r
-pics\image95.gif\r
-kernel\productpage2.png\r
-kernel\logocorp.png\r
-pics\ppref3.png\r
-pics\pref33.png\r
-pics\pref22.png\r
-pics\pref11.png\r
-image71.gif\r
-pics\clipping.png\r
-pics\image96.gif\r
-kernel\progresspage1.png\r
-pics\pref34.png\r
-pics\pref23.png\r
-pics\pref12.png\r
-image94.gif\r
-closestudy.png\r
-image72.gif\r
-pics\copy-paste.jpg\r
-pics\image86.gif\r
-pics\image105.gif\r
-pics\image97.gif\r
-pics\pref24.png\r
-pics\pref13.png\r
-pics\selectfont.png\r
-pics\view2.png\r
-image54.jpg\r
-image73.gif\r
-pics\selectcolor.png\r
-pics\image106.gif\r
-pics\view_rotation_point.png\r
-pics\image98.gif\r
-kernel\intropage.png\r
-kernel\application.png\r
-pics\pref14.png\r
-pics\dumpstudy.png\r
-pics\neo-view2.png\r
-pics\image99.gif\r
-pics\image88.gif\r
-pics\image77.gif\r
-pics\pref37.png\r
-pics\pref15.png\r
-image75.gif\r
-i_blue.jpg\r
-pics\image108.gif\r
-pics\image89.gif\r
-pics\pref38.png\r
-image65.gif\r
-note1.gif\r
-pics\image109.gif\r
-pics\pref39.png\r
-pics\import.png\r
-pics\objectbrowser1.png\r
-pics\objectbrowser2.png\r
-image67.gif\r
-kernel\productpage.png\r
-pics\loadscript.png\r
-pics\geomview-alt.png\r
-pics\lockedstudy.png\r
-pics\loadstudy2.png\r
-image68.gif\r
-image69.gif\r
-index.ppf\r
-ehlpdhtm.js\r
-ss_btn_related_topics.gif\r
-default_ns.css\r
-whxdata\whtdata0.xml\r
-whxdata\whftdata0.xml\r
-whxdata\whfwdata0.xml\r
-whxdata\whgdata0.xml\r
-whdata\whtdata0.htm\r
-whdata\whftdata0.htm\r
-whdata\whfwdata0.htm\r
-whdata\whgdata0.htm\r
-whgdata\whlstt0.htm\r
-whgdata\whlstt1.htm\r
-whgdata\whlstt2.htm\r
-whgdata\whlstt3.htm\r
-whgdata\whlstt4.htm\r
-whgdata\whlstt5.htm\r
-whgdata\whlstt6.htm\r
-whgdata\whlsti0.htm\r
-whgdata\whlstfl0.htm\r
-whgdata\whlstfl1.htm\r
-whgdata\whlstfl2.htm\r
-whgdata\whlstfl3.htm\r
-whgdata\whlstfl4.htm\r
-whgdata\whlstfl5.htm\r
-whgdata\whlstfl6.htm\r
-whgdata\whlstfl7.htm\r
-whgdata\whlstfl8.htm\r
-whgdata\whlstfl9.htm\r
-whgdata\whlstfl10.htm\r
-whgdata\whlstfl11.htm\r
-whgdata\whlstfl12.htm\r
-whgdata\whlstfl13.htm\r
-whgdata\whlstfl14.htm\r
-whgdata\whlstfl15.htm\r
-whgdata\whlstfl16.htm\r
-whgdata\whlstfl17.htm\r
-whgdata\whlstfl18.htm\r
-whgdata\whlstfl19.htm\r
-whgdata\whlstfl20.htm\r
-whgdata\whlstfl21.htm\r
-whgdata\whlstfl22.htm\r
-whgdata\whlstfl23.htm\r
-whgdata\whlstfl24.htm\r
-whgdata\whlstfl25.htm\r
-whgdata\whlstfl26.htm\r
-whgdata\whlstf0.htm\r
-whgdata\whlstf1.htm\r
-whgdata\whlstf2.htm\r
-whgdata\whlstf3.htm\r
-whgdata\whlstf4.htm\r
-whgdata\whlstf5.htm\r
-whgdata\whlstf6.htm\r
-whgdata\whlstf7.htm\r
-whgdata\whlstf8.htm\r
-whgdata\whlstf9.htm\r
-whgdata\whlstf10.htm\r
-whgdata\whlstf11.htm\r
-whgdata\whlstg0.htm\r
-index.htm\r
-index_csh.htm\r
-index_rhc.htm\r
diff --git a/doc/salome/gui/GUI/mesh_preferences.htm b/doc/salome/gui/GUI/mesh_preferences.htm
deleted file mode 100755 (executable)
index 024d1a5..0000000
+++ /dev/null
@@ -1,309 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<head>\r
-<title>MESH preferences</title>\r
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<link rel="stylesheet" href="default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{   document.write("<link rel='stylesheet' href='default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-p.whs1 { font-weight:bold; }\r
-img_whs2 { border:none; border-style:none; width:752px; height:646px; float:none; }\r
-ul.whs3 { list-style:disc; }\r
-p.whs4 { margin-left:48px; }\r
-p.whs5 { font-weight:bold; margin-left:0px; }\r
-p.whs6 { margin-left:0px; font-weight:bold; }\r
-p.whs7 { font-weight:bold; margin-left:48px; }\r
-p.whs8 { margin-left:0px; font-weight:normal; }\r
-p.whs9 { margin-left:38px; }\r
-p.whs10 { margin-left:38px; font-weight:bold; }\r
-p.whs11 { font-weight:bold; margin-left:38px; }\r
-p.whs12 { font-weight:normal; }\r
--->\r
-</style><script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
-  var strNSS = "<style type='text/css'>";\r
-  strNSS += "p.whs5 {margin-left:1pt; }";\r
-  strNSS += "p.whs6 {margin-left:1pt; }";\r
-  strNSS += "p.whs8 {margin-left:1pt; }";\r
-  strNSS +="</style>";\r
-  document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
-  if (innerWidth != origWidth || innerHeight != origHeight)\r
-     location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
-       origWidth = innerWidth;\r
-       origHeight = innerHeight;\r
-       onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }\r
-p.WebHelpNavBar { text-align:right; }\r
--->\r
-</style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
-       if (window.setRelStartPage)\r
-       {\r
-       addTocInfo("GUI module\nSetting Preferences\nMesh preferences");\r
-addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");\r
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");\r
-\r
-       }\r
-\r
-\r
-       if (window.setRelStartPage)\r
-       {\r
-       setRelStartPage("index.htm");\r
-\r
-               autoSync(1);\r
-               sendSyncInfo();\r
-               sendAveInfoOut();\r
-       }\r
-\r
-}\r
-else\r
-       if (window.gbIE4)\r
-               document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(4);\r
-//-->\r
-</script>\r
-<h1>Mesh preferences</h1>\r
-\r
-<p>In the Mesh module you can set mesh preferences, which can be used in \r
- later sessions with this module. </p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p class="whs1">General Preferences</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p><img src="pics/pref21.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Update</p></li>\r
-       \r
-       <ul type="disc" class="whs3">\r
-               \r
-               <li class=kadov-p><p class="whs1">&nbsp;<span \r
- style="font-weight: normal;">If you toggle</span> \r
- Automatic Update<span style="font-weight: normal;"> checkbox, the model \r
- in your viewer automatically updated whenever you make changes in it.</span></p></li>\r
-       </ul>\r
-       \r
-       <li class=kadov-p><p class="whs1">Quality Controls.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">If you toggle <span \r
- style="font-weight: bold;"><B>Display entity, </B></span>both faces and edges \r
- of an object will be displayed in the viewer by default .<span style="font-weight: bold;"> \r
- <B></B></span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">If you toggle <span \r
- style="font-weight: bold;"><B>Use precision</B></span> checkbox, you can display \r
- numbers in<span style="font-weight: bold;"><B> Quality Control</B></span> diagrams \r
- at the necessary level of precision.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs5">Precision \r
- - <span style="font-weight: normal;">can be defined by</span> <span style="font-weight: normal;">the \r
- </span>Number of digits after point<span style="font-weight: normal;"> \r
- in the corresponding field. By default, numbers in </span>Quality Control<span \r
- style="font-weight: normal;"> diagrams are presented as integers.</span> \r
- </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs5">Display \r
- mode - <span style="font-weight: normal;">allows to set Wireframe, Shading, \r
- Nodes or Shrink presentation mode as default.</span> </p></li>\r
-</ul>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs6">Mesh \r
- export </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">If you toggle <span \r
- style="font-weight: bold;"><B>Automatically create groups for MED export</B></span> \r
- checkbox, this operation will be carried out automatically.</p></li>\r
-</ul>\r
-\r
-<p class="whs7">&nbsp;</p>\r
-\r
-<p class="whs5">&nbsp;</p>\r
-\r
-<p class="whs6">Mesh Preferences</p>\r
-\r
-<p class="whs8">&nbsp;</p>\r
-\r
-<p class="whs1"><img src="pics/pref22.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Nodes</B></span> \r
- </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs9"><span style="font-weight: bold;"><B>Color</B></span> \r
- - &nbsp;allows \r
- to select the color of nodes. Click on the colored line to access to the \r
- <span style="font-weight: bold;"><B><a href="select_color_and_font.htm">Select \r
- Color</a></B></span> dialog box. </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs10">Size \r
- - <span style="font-weight: normal;">allows to define the size of nodes.</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs1">Elements</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs9"><span style="font-weight: bold;"><B>Fill \r
- </B></span>&nbsp;- \r
- allows to select the color of surface of elements (seen in Shading mode). \r
- Click on the colored line to access to the <span style="font-weight: bold;"><B><a href="select_color_and_font.htm">Select Color</a></B></span> dialog box. </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs9"><span style="font-weight: bold;"><B>Outline</B></span> \r
- - allows to select the color of borders of elements. Click on the colored \r
- line to access to the <span style="font-weight: bold;"><B><a href="select_color_and_font.htm">Select \r
- Color</a></B></span> dialog box. </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs9"><span style="font-weight: bold;"><B>Back \r
- Face</B></span> - allows to select the color of interior surface of elements. \r
- Click on the colored line to access to the <span style="font-weight: bold;"><B><a href="select_color_and_font.htm">Select Color</a></B></span> dialog box. </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs9"><span style="font-weight: bold;"><B>Width</B></span> \r
- - allows to define the width of lines (edges and borders of elements).</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs10">Shrink \r
- coef. - <span style="font-weight: normal;">allows to define relative space \r
- of elements compared to gaps between them in shrink mode</span></p></li>\r
-</ul>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p class="whs1">Selection Preferences</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p><img src="pics/pref23.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Selection - <span style="font-weight: normal;">performed \r
- with mouse-indexing (preselection) and left-clicking on an object, whose \r
- appearance changes as defined in the</span> Preferences.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs11">Object \r
- Color - &nbsp;<span style="font-weight: normal;">allows \r
- to select the color of mesh (edges and borders of meshes) of the selected \r
- entity. Click on the colored line to access to the <a href="select_color_and_font.htm" style="font-weight: bold;">Select \r
- Color</a> dialog box.</span> </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs11">Element \r
- color - <span style="font-weight: normal;">allows to select the color \r
- of surface of selected elements (seen in Shading mode).</span> <span style="font-weight: normal;">Click \r
- on the colored line to access to the <a href="select_color_and_font.htm" style="font-weight: bold;">Select \r
- Color</a> dialog box.</span> </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs9"><span style="font-weight: bold;"><B>Width</B></span> \r
- - allows to define the width of selected edges.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs1">Preselection - <span \r
- style="font-weight: normal;">performed with mouse-indexing on an object, \r
- whose appearance changes as defined in the</span> Preferences.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs11">Highlight \r
- Color - &nbsp;<span style="font-weight: normal;">allows \r
- to select the color of mesh (edges and borders of meshes) of the entity \r
- . Click on the colored line to access to the <a href="select_color_and_font.htm" style="font-weight: bold;">Select \r
- Color</a> dialog box.</span> </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs9"><span style="font-weight: bold;"><B>Width</B></span> \r
- - allows to define the width of preselected edges.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs1">Precision<span style="font-weight: normal;"> \r
- - in this menu you can set the value of precision used for </span>Nodes<span \r
- style="font-weight: normal;"> and </span>Elements<span style="font-weight: normal;">.</span></p></li>\r
-</ul>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<p class="whs1">Scalar Bar Preferences</p>\r
-\r
-<p class="whs12">&nbsp;</p>\r
-\r
-<p class="whs12"><img src="pics/pref24.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Font - </B></span>in \r
- this menu you can set type, face and color for the font of<span style="font-weight: bold;"><B> \r
- Title</B></span> and<span style="font-weight: bold;"><B> Labels.</B></span></p></li>\r
-       \r
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Colors &amp; \r
- Labels - </B></span>in this menu you can set the<span style="font-weight: bold;"><B> \r
- number of colors </B></span>and the<span style="font-weight: bold;"><B> number \r
- of labels</B></span> in use<span style="font-weight: bold;"><B>.</B></span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs1">Orientation - <span \r
- style="font-weight: normal;">here you can choose between vertical and \r
- horizontal orientation of the</span> Scalar Bar.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs5">Origin \r
- &amp; Size Vertical &amp; Horizontal - a<span style="font-weight: normal;">llows \r
- to define placement (</span>X <span style="font-weight: normal;">and</span> \r
- Y<span style="font-weight: normal;">) and lookout (</span>Width and Height) \r
- <span style="font-weight: normal;">of Scalar Bars</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs11">X: \r
- <span style="font-weight: normal;">abscissa of the point of origin (from \r
- the left side)</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs11">Y: \r
- <span style="font-weight: normal;">ordinate of the origin of the bar (from \r
- the bottom)</span></p></li>\r
-</ul>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/note1.gif b/doc/salome/gui/GUI/note1.gif
deleted file mode 100755 (executable)
index b53e21d..0000000
Binary files a/doc/salome/gui/GUI/note1.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/occ_3d_viewer.htm b/doc/salome/gui/GUI/occ_3d_viewer.htm
deleted file mode 100644 (file)
index f57b0af..0000000
+++ /dev/null
@@ -1,258 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<head>\r
-<title>OCC 3D Viewer</title>\r
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<link rel="stylesheet" href="default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{   document.write("<link rel='stylesheet' href='default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 { border:none; border-style:none; width:313px; height:26px; float:none; }\r
-ul.whs2 { list-style:disc; }\r
-img_whs3 { border:none; border-style:none; width:26px; height:25px; float:none; }\r
-img_whs4 { border:none; border-style:none; width:27px; height:25px; float:none; }\r
-img_whs5 { border:none; border-style:none; width:24px; height:23px; float:none; }\r
-img_whs6 { border:none; border-style:none; width:24px; height:24px; float:none; }\r
-img_whs7 { border:none; border-style:none; width:25px; height:24px; float:none; }\r
-img_whs8 { border:none; border-style:none; width:23px; height:23px; float:none; }\r
-p.whs9 { margin-top:0pt; margin-bottom:0pt; }\r
-img_whs10 { border:none; border-style:none; width:20px; height:20px; float:none; }\r
-p.whs11 { margin-left:80px; }\r
-img_whs12 { border:none; border-style:none; width:410px; height:255px; float:none; }\r
-img_whs13 { border:none; border-style:none; width:26px; height:26px; float:none; }\r
-img_whs14 { border:none; border-style:none; width:78px; height:147px; float:none; }\r
-img_whs15 { border:none; border-style:none; width:26px; height:24px; float:none; }\r
-img_whs16 { border:none; border-style:none; width:28px; height:29px; float:none; }\r
-img_whs17 { border:none; border-style:none; width:29px; height:26px; float:none; }\r
-img_whs18 { border:none; border-style:none; width:395px; height:280px; float:none; }\r
-p.whs19 { margin-left:40px; }\r
-p.whs20 { margin-left:84px; }\r
--->\r
-</style><script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
-  var strNSS = "<style type='text/css'>";\r
-  strNSS += "p.whs9 {margin-top:1pt;margin-bottom:1pt; }";\r
-  strNSS +="</style>";\r
-  document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
-  if (innerWidth != origWidth || innerHeight != origHeight)\r
-     location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
-       origWidth = innerWidth;\r
-       origHeight = innerHeight;\r
-       onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }\r
-p.WebHelpNavBar { text-align:right; }\r
--->\r
-</style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
-       if (window.setRelStartPage)\r
-       {\r
-       addTocInfo("GUI module\nViewers\nOCC 3D Viewer");\r
-addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");\r
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");\r
-\r
-       }\r
-\r
-\r
-       if (window.setRelStartPage)\r
-       {\r
-       setRelStartPage("index.htm");\r
-\r
-               autoSync(1);\r
-               sendSyncInfo();\r
-               sendAveInfoOut();\r
-       }\r
-\r
-}\r
-else\r
-       if (window.gbIE4)\r
-               document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(4);\r
-//-->\r
-</script>\r
-<h1>OCC 3D Viewer</h1>\r
-\r
-<p><span style="font-weight: bold;"><B>OCC (Open CasCade) 3D viewer</B></span> \r
- has been developed on the basis of Open CASCADE Technology. This is the \r
- default viewer for Geometry Module, providing good representation of construction \r
- and transformation of geometrical objects. Only this viewer allows to \r
- work with groups and sub-shapes. This viewer can also work in Mesh module, \r
- however, it doesn't allow to visualize meshes. </p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p>The functionalities of OCC viewer are available via its Viewer Toolbar. \r
- Buttons marked with small downward triangles have extended functionality \r
- which can be accessed by locking on them with left mouse button. &nbsp;</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p><img src="pics/image95.gif" x-maintain-ratio="TRUE" width="313px" height="26px" border="0" class="img_whs1"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul type="disc" class="whs2">\r
-       \r
-       <li class=kadov-p><p><img src="pics/image77.gif" x-maintain-ratio="TRUE" width="26px" height="25px" border="0" class="img_whs3"> <span style="font-weight: bold;"><B>Dump \r
- View</B></span> - exports an object from the viewer in bmp, png, jpg or jpeg \r
- image format. </p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image88.gif" x-maintain-ratio="TRUE" width="27px" height="25px" border="0" class="img_whs4"> <span style="font-weight: bold;"><B>Show/Hide \r
- Trihedron</B></span> - shows or hides coordinate axes. </p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image96.gif" x-maintain-ratio="TRUE" width="24px" height="23px" border="0" class="img_whs5"> &nbsp;<span \r
- style="font-weight: bold;"><B>Fit all - </B></span>allows \r
- to select a point to be the center of a scene representing all displayed \r
- objects in the visible area.<span style="font-weight: bold;"> <B></B></span></p></li>\r
-       \r
-       <li class=kadov-p><p>&nbsp;<img src="pics/image97.gif" x-maintain-ratio="TRUE" width="24px" height="24px" border="0" class="img_whs6"> <span style="font-weight: bold;"><B>Fit area</B></span> - resizes \r
- the view to place in the visible area only the contents of a frame drawn \r
- with pressed left mouse button.</p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image98.gif" x-maintain-ratio="TRUE" width="25px" height="24px" border="0" class="img_whs7"> <span style="font-weight: bold;"><B>Zoom</B></span> \r
- - &nbsp;allows \r
- to zoom in and out. </p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image99.gif" x-maintain-ratio="TRUE" width="23px" height="23px" border="0" class="img_whs8"> <span style="font-weight: bold;"><B>Panning</B></span> \r
- - if the represented objects are greater that the visible area and you \r
- don't wish to use <span style="font-weight: bold;"><B>Fit all</B></span> functionality, \r
- click on this button and you'll be able to drag the scene to see its remote \r
- parts. </p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image100.gif" x-maintain-ratio="TRUE" width="24px" height="24px" border="0" class="img_whs6"> <span style="font-weight: bold;"><B>Global \r
- panning</B></span> - represents all displayed objects in the visible area. \r
- </p></li>\r
-</ul>\r
-\r
-<ul type="disc" class="whs2">\r
-       \r
-       <li class=kadov-p><p class="whs9"><img src="pics/view_rotation_point.png" x-maintain-ratio="TRUE" width="20px" height="20px" border="0" class="img_whs10"> <span style="font-weight: bold;"><B>Change rotation point</B></span> \r
- - allows to to choose the point around which the rotation is performed. \r
- </p></li>\r
-</ul>\r
-\r
-<p class="whs11"><img src="pics/set_rotation_point_dialog1.png" x-maintain-ratio="TRUE" width="410px" height="255px" border="0" class="img_whs12"></p>\r
-\r
-<p class="whs11">&nbsp;</p>\r
-\r
-<p class="whs11">By default the rotation point is located \r
- in the Center of the bounding box of an object. </p>\r
-\r
-<p class="whs11">&nbsp;</p>\r
-\r
-<p class="whs11"><img src="pics/set_rotation_point_dialog2.png" x-maintain-ratio="TRUE" width="410px" height="255px" border="0" class="img_whs12"></p>\r
-\r
-<p class="whs11">&nbsp;</p>\r
-\r
-<p class="whs11">Unchecking <span style="font-weight: bold;"><B>Use \r
- Bounding Box Center</B></span> box allows you to define the coordinates of \r
- the rotation point manually. </p>\r
-\r
-<p class="whs11">&nbsp;</p>\r
-\r
-<p class="whs11"><span style="font-weight: bold;"><B>Set to Origin</B></span> \r
- button restores the default rotation point coordinates.</p>\r
-\r
-<p class="whs11"><span style="font-weight: bold;"><B>Select Point \r
- from View</B></span> button allows to select the rotation point in the 3D \r
- Viewer</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul type="disc" class="whs2">\r
-       \r
-       <li class=kadov-p><p><img src="pics/image89.gif" x-maintain-ratio="TRUE" width="26px" height="26px" border="0" class="img_whs13"> <span style="font-weight: bold;"><B>Rotation</B></span> \r
- - allows to rotate the selected object using the mouse. </p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image102.gif" x-maintain-ratio="TRUE" width="78px" height="147px" border="0" class="img_whs14"> These buttons orientate the scene \r
- strictly about coordinate axes.</p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image91.gif" x-maintain-ratio="TRUE" width="26px" height="26px" border="0" class="img_whs13"> <span style="font-weight: bold;"><B>Reset</B></span> \r
- - restores the default position (isometric) of objects in the scene.</p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image103.gif" x-maintain-ratio="TRUE" width="26px" height="24px" border="0" class="img_whs15"> <span style="font-weight: bold;"><B>Memorise \r
- view</B></span> - saves the current position of objects in the scene</p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image105.gif" x-maintain-ratio="TRUE" width="26px" height="25px" border="0" class="img_whs3"> <span style="font-weight: bold;"><B>Restore \r
- view - </B></span>restores the<span style="font-weight: bold;"> <B></B></span>saved \r
- position of objects in the scene</p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image86.gif" x-maintain-ratio="TRUE" width="28px" height="29px" border="0" class="img_whs16"> <span style="font-weight: bold;"><B>Clone \r
- view</B></span> - opens a new duplicate scene.</p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image106.gif" x-maintain-ratio="TRUE" width="29px" height="26px" border="0" class="img_whs17"> <span style="font-weight: bold;"><B>Clipping \r
- -</B></span> allows to create cross-section views (clipping planes) of geometrical \r
- objects.</p></li>\r
-</ul>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p class="whs11"><img src="pics/clipping.png" x-maintain-ratio="TRUE" width="395px" height="280px" border="0" class="img_whs18"></p>\r
-\r
-<p class="whs19">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs2">\r
-       \r
-       <li class=kadov-p><p class="whs19"><span style="font-weight: bold;"><B>Base \r
- point</B></span> - allows to define the coordinates of the base point for \r
- the clipping plane. Click </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs20"><span style="font-weight: bold;"><B>Reset</B></span> \r
- - returns the base point to coordinate origin. </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs19"><span style="font-weight: bold;"><B>Direction</B></span> \r
- - allows to define the orientation of the clipping plane.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs20"><span style="font-weight: bold;"><B>Invert</B></span> \r
- - allows to select which part of the object will be removed and which \r
- will remain after clipping. </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs19"><span style="font-weight: bold;"><B>Preview</B></span> \r
- - allows to see the results of clipping in the viewer.</p></li>\r
-</ul>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/post-pro_preferences.htm b/doc/salome/gui/GUI/post-pro_preferences.htm
deleted file mode 100755 (executable)
index 107abc6..0000000
+++ /dev/null
@@ -1,768 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<head>\r
-<title>Post-Pro Preferences</title>\r
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<link rel="stylesheet" href="default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{   document.write("<link rel='stylesheet' href='default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-p.whs1 { font-weight:bold; }\r
-img_whs2 { border:none; width:752px; height:646px; float:none; border-style:none; }\r
-ul.whs3 { list-style:disc; }\r
-p.whs4 { font-weight:bold; margin-left:38px; }\r
-p.whs5 { margin-left:38px; }\r
-p.whs6 { font-weight:normal; }\r
-p.whs7 { font-weight:bold; margin-left:57px; }\r
-p.whs8 { font-weight:bold; margin-left:0px; }\r
-p.whs9 { margin-left:0px; font-weight:bold; }\r
-p.whs10 { margin-left:38px; font-weight:bold; }\r
-p.whs11 { margin-left:36px; }\r
-p.whs12 { margin-left:0px; text-align:justify; }\r
-ol.whs13 { list-style:disc; }\r
-p.whs14 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:normal; }\r
-p.whs15 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:bold; }\r
-img_whs16 { border:none; width:752px; height:646px; float:none; }\r
-p.whs17 { font-weight:bold; margin-left:36px; }\r
-p.whs18 { margin-left:0px; text-align:justify; font-weight:bold; }\r
-p.whs19 { margin-left:0px; text-align:justify; font-weight:normal; }\r
-p.whs20 { text-align:justify; font-weight:bold; margin-left:38px; }\r
-ul.whs21 { list-style:square; }\r
-p.whs22 { font-style:normal; }\r
-p.whs23 { margin-left:76px; }\r
-p.whs24 { text-align:justify; font-weight:bold; margin-left:0px; }\r
-p.whs25 { margin-left:38px; text-align:justify; font-weight:bold; }\r
-p.whs26 { text-align:justify; font-weight:bold; margin-left:76px; }\r
--->\r
-</style><script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
-  var strNSS = "<style type='text/css'>";\r
-  strNSS += "p.whs8 {margin-left:1pt; }";\r
-  strNSS += "p.whs9 {margin-left:1pt; }";\r
-  strNSS += "p.whs12 {margin-left:1pt; }";\r
-  strNSS += "p.whs14 {margin-left:1pt; }";\r
-  strNSS += "p.whs15 {margin-left:1pt; }";\r
-  strNSS += "p.whs18 {margin-left:1pt; }";\r
-  strNSS += "p.whs19 {margin-left:1pt; }";\r
-  strNSS += "p.whs24 {margin-left:1pt; }";\r
-  strNSS +="</style>";\r
-  document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
-  if (innerWidth != origWidth || innerHeight != origHeight)\r
-     location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
-       origWidth = innerWidth;\r
-       origHeight = innerHeight;\r
-       onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }\r
-p.WebHelpNavBar { text-align:right; }\r
--->\r
-</style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
-       if (window.setRelStartPage)\r
-       {\r
-       addTocInfo("GUI module\nSetting Preferences\nPost-Pro Preferences");\r
-addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");\r
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");\r
-\r
-       }\r
-\r
-\r
-       if (window.setRelStartPage)\r
-       {\r
-       setRelStartPage("index.htm");\r
-\r
-               autoSync(1);\r
-               sendSyncInfo();\r
-               sendAveInfoOut();\r
-       }\r
-\r
-}\r
-else\r
-       if (window.gbIE4)\r
-               document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(4);\r
-//-->\r
-</script>\r
-<h1>Post-Pro Preferences</h1>\r
-\r
-<p>In the Post-Pro module you can set preferences, default settings, which \r
- can be used in later sessions with this module. </p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p class="whs1"><span><B>MED import Preferences</B></span></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p><img src="pics/ppref1.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">MED files import &nbsp;</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Use \r
- Build Progress - <span style="font-weight: normal;">when this option is \r
- checked you can choose all other import MED options at the moment of loading \r
- of each file using </span>Build Progress<span style="font-weight: normal;"> \r
- menu, otherwise the loading will be done according to the </span>Preferences<span \r
- style="font-weight: normal;"> without addressing to the user.</span> </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Full \r
- MED Loading - <span style="font-weight: normal;">when this option is checked, \r
- the MED file is fully loaded in the study, and no additional access to \r
- the MED file is needed during the session. Reversibly, when unchecked, \r
- the MED file is loaded on demand. This is the default behaviour in SALOME \r
- and recommended for big files to optimize memory usage.</span> </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs5"><span style="font-weight: bold;"><B>Build \r
- at once</B></span> - when this option is checked, you can't perform any operations \r
- until the MED file is fully loaded and processed. </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Build \r
- fields - &nbsp;<span style="font-weight: normal;">when \r
- this</span> <span style="font-weight: normal;">option is checked, the \r
- fields are built automatically at loading. </span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Build \r
- min/max - <span style="font-weight: normal;">when this option is checked, \r
- minimum and maximum values of the time stamps are found at loading. </span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Build \r
- groups - <span style="font-weight: normal;">when this</span> <span style="font-weight: normal;">option \r
- is checked, the groups and families are built automatically at loading. \r
- </span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Close \r
- dialog at finish - <span style="font-weight: normal;">when this option \r
- is checked, the dialog box is closed after loading of the selected MED \r
- file. When unchecked, it allows loading other MED files. </span></p></li>\r
-</ul>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p class="whs1">Scalar Bar Preferences</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p><img src="pics/pref31.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Scalar Range </p></li>\r
-       \r
-       <ul type="disc" class="whs3">\r
-               \r
-               <li class=kadov-p><p class="whs6"><span style="font-weight: bold;"><B>Scalar \r
- Mode</B></span> - this feature allows refining the value to be inspected:</p></li>\r
-               \r
-               <li class=kadov-p><p class="whs7">Modulus: \r
- <span style="font-weight: normal;">value of a scalar or modulus of a vector.</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs7">Component \r
- N: <span style="font-weight: normal;">Nth component of a vector, a tensor \r
- or a matrix..</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs6"><span style="font-weight: bold;"><B>Logarithmic \r
- Scaling</B></span> - this checkbox toggles logarithmic scaling.</p></li>\r
-               \r
-               <li class=kadov-p><p class="whs6"><span style="font-weight: bold;"><B>Ranges \r
- to Use</B></span> - you can use either Field Range or Imposed Range.<span \r
- style="margin-left: 0px;"> </span><span style="margin-left: 0px; text-indent: 12px;">.</span></p></li>\r
-       </ul>\r
-</ul>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Min and Max for \r
- Imposed Range</B></span> - in this menu &nbsp;you \r
- can set the limits for your Imposed Range, if you have chosen to use it.</p></li>\r
-       \r
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Font - </B></span>in \r
- this menu you can set type, face and color for the font of<span style="font-weight: bold;"><B> \r
- Title</B></span> and<span style="font-weight: bold;"><B> Labels.</B></span></p></li>\r
-       \r
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Colors &amp; \r
- Labels - </B></span>in this menu you can set the<span style="font-weight: bold;"><B> \r
- number of colors </B></span>and the<span style="font-weight: bold;"><B> number \r
- of labels</B></span> in the Scalar bar<span style="font-weight: bold;"><B>.</B></span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs1">Orientation - <span \r
- style="font-weight: normal;">here you can choose between vertical and \r
- horizontal orientation of the</span> <span style="font-weight: normal;">Scalar \r
- Bar.</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs8">Origin \r
- &amp; Size Vertical &amp; Horizontal - a<span style="font-weight: normal;">llows \r
- to define placement (</span>X <span style="font-weight: normal;">and</span> \r
- Y<span style="font-weight: normal;">) and lookout (</span>Width and Height) \r
- <span style="font-weight: normal;">of Scalar Bars</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">X: \r
- <span style="font-weight: normal;">abscissa of the point of origin (from \r
- the left side)</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Y: \r
- <span style="font-weight: normal;">ordinate of the origin of the bar (from \r
- the bottom)</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs9">Scalar \r
- bars default position</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs10">Arrange \r
- Scalar Bars - <span style="font-weight: normal;">this option prevents \r
- superposition of scalar bars during visualisation of several fields in \r
- the same window. If checked, a separate scalar bar is displayed for each \r
- presentation.</span></p></li>\r
-</ul>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p class="whs1">Cut Lines Preferences</p>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<p class="whs1"><img src="pics/ppref2.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">CutLine Preferences \r
- </p></li>\r
-</ul>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Show \r
- preview </B></span>check box allows to edit the parameters of the presentation \r
- and simultaneously observe the preview of this presentation in the viewer.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Invert \r
- all curves</B></span> check box allows to invert the resulting curves. </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Use \r
- absolute length </B></span>check box allows to use absolute length for curves. \r
- </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Generate \r
- Data Table: </B></span>If this check box is marked, <span style="font-weight: bold;"><B>Post \r
- Pro</B></span> will automatically generate a data table on the basis of your \r
- Cut Lines presentation. This table will be created in the structure of \r
- the study. &nbsp;<span style="font-weight: bold;"><B>&nbsp;</B></span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Generate \r
- Curves: </B></span>If this check box is marked, <span style="font-weight: bold;"><B>Post \r
- Pro</B></span> &nbsp;will \r
- automatically generate curve lines on the basis of values taken from the \r
- generated data table. These curves will be created in the structure of \r
- the study and can be visualized in a XY plot. &nbsp;</p></li>\r
-</ul>\r
-\r
-<p class="whs11">&nbsp;</p>\r
-\r
-<p class="whs1"><span><B>Sweep Preferences</B></span></p>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<p class="whs6"><img src="pics/ppref3.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p class="whs6">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Sweeping preferences</p></li>\r
-       \r
-       <ul type="disc" class="whs3">\r
-               \r
-               <li class=kadov-p><p class="whs12"><span \r
- style="font-weight: bold;"><B>Time step -</B></span> in this menu you can set \r
- the<span style="font-weight: bold;"> <B></B></span>time of representation of \r
- one step.</p></li>\r
-               \r
-               <li class=kadov-p><p class="whs12"><span \r
- style="font-weight: bold;"><B>Number of cycles -</B></span> in this menu you \r
- can define the number of times this animation will be repeated.</p></li>\r
-               \r
-               <li class=kadov-p><p class="whs12"><span \r
- style="font-weight: bold;"><B>Number of steps</B></span> - in this menu you can \r
- define the number of steps, which will compose the whole animation.</p></li>\r
-       </ul>\r
-</ul>\r
-\r
-<p class="whs12">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Animation preferences</p></li>\r
-</ul>\r
-\r
-<ol type="disc" class="whs13">\r
-       \r
-       <ul type="disc" class="whs3">\r
-               \r
-               <li class=kadov-p><p class="whs14"><span style="font-weight: bold;"><B>Speed</B></span> \r
- - allows to define the speed of the animation.</p></li>\r
-               \r
-               <li class=kadov-p><p class="whs14"><span style="font-weight: bold;"><B>Cycled \r
- animation</B></span> - allows to start a cycled animation of the presentation.</p></li>\r
-               \r
-               <li class=kadov-p><p class="whs15">Use proportional \r
- timing -<span style="font-weight: normal;"> allows to render the animation \r
- with proportional periods of time between every frame (not depending on \r
- the time stamps).</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs15">Clean memory at \r
- each frame - <span style="font-weight: normal;">this option allows to \r
- optimize the performance of the operation.</span></p></li>\r
-       </ul>\r
-</ol>\r
-\r
-<p class="whs12">&nbsp;</p>\r
-\r
-<p class="whs4">&nbsp;</p>\r
-\r
-<p class="whs9">Representation Preferences</p>\r
-\r
-<p class="whs9">&nbsp;</p>\r
-\r
-<p class="whs8"><img src="pics/pref33.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs16"></p>\r
-\r
-<p class="whs8">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Representation properties \r
- - <span style="font-weight: normal;">these checkboxes allow to choose \r
- the default representation type for each field presentation.</span><span \r
- style="margin-left: 40px; text-align: justify;"> </span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Use \r
- Shading - <span style="font-weight: normal;">when this</span> <span style="font-weight: normal;">option \r
- is checked, the objects will be displayed with shading.</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Display \r
- only on creation<span style="font-weight: normal;"> - when this option \r
- is checked, all previously created presentations will be automatically \r
- removed from the viewer when a new presentation is created and displayed. \r
- You can restore the previously created presentations using the Object \r
- Browser. </span></p></li>\r
-</ul>\r
-\r
-<p class="whs8">&nbsp;</p>\r
-\r
-<p class="whs8">Gauss Points Preferences</p>\r
-\r
-<p class="whs17">&nbsp;</p>\r
-\r
-<p class="whs8"><img src="pics/pref34.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p class="whs17">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Primitive - <span style="font-weight: normal;">this \r
- menu allows user to choose the graphic primitive to use to present the \r
- results at Gauss points in the viewer.</span><span style="margin-left: 40px; text-align: justify;"> \r
- </span></p></li>\r
-       \r
-       <ul type="disc" class="whs3">\r
-               \r
-               <li class=kadov-p><p class="whs18">Primitive type \r
- - <span style="font-weight: normal;">provides choice between </span>Point \r
- sprites<span style="font-weight: normal;">, </span>Open GL points<span \r
- style="font-weight: normal;"> and </span>Geometrical Spheres<span style="font-weight: normal;">.</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs19"><span style="font-weight: bold;"><B>Maximum \r
- Size</B></span> <span style="font-weight: bold;"><B>(Clamp)</B></span> - defines \r
- the maximum size of sprite points ranging from 1 to 512. By default the \r
- value is set to 256 pixels. </p></li>\r
-               \r
-               <li class=kadov-p><p class="whs18">Main Texture - \r
- &nbsp;<span style="font-weight: normal;">path \r
- to the </span>Main Texture<span style="font-weight: normal;"> (16x16 pixels) \r
- which defines the shape of the point sprite used for rendering.</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs12"><span \r
- style="font-weight: bold;"><B>Alpha Channel Texture (16*16) -</B></span> path \r
- to the <span style="font-weight: bold;"><B>Alpha Channel Texture</B></span> which \r
- defines the transparency of the point sprite.</p></li>\r
-               \r
-               <li class=kadov-p><p class="whs18">Alpha Channel Threshold \r
- - <span style="font-weight: normal;">defines the level of transparency \r
- ranging from 0 to 1.</span> </p></li>\r
-               \r
-               <li class=kadov-p><p class="whs18">Geometrical Sphere \r
- Resolution - <span style="font-weight: normal;">defines the number of \r
- faces of</span> Geometry Spheres.</p></li>\r
-               \r
-               <li class=kadov-p><p class="whs18">Notify when number \r
- of faces exceeds -<span style="font-weight: normal;"> limitation of the \r
- number of faces;</span> <span style="font-weight: normal;">the user will \r
- be warned if it exceeds the given value.</span></p></li>\r
-       </ul>\r
-</ul>\r
-\r
-<p class="whs17">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Size - in this menu \r
- you can define</p></li>\r
-</ul>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs20">Range value for min \r
- and max size - <span style="font-weight: normal;">these two parameters \r
- will be respectively multiplied by a reference length (average size of \r
- cells of the mesh) to define the range for minimum and maximum size of \r
- a point during rendering (at magnification = 100%). Default values are:</span></p></li>\r
-       \r
-       <ul type="disc" class="whs3">\r
-               \r
-               <ul type="disc" class="whs3">\r
-                       \r
-                       <li style="list-style: circle;"\r
-                               type=circle\r
-                               class=kadov-p><p><span style="font-weight: bold;"><B>Rainbow</B></span> \r
- scale: <span style="font-weight: bold;"><B>min = 10%</B></span>, <span style="font-weight: bold;"><B>max \r
- = 33%</B></span></p></li>\r
-                       \r
-                       <ul type="square" class="whs21">\r
-                               \r
-                               <li class=kadov-p><p class="whs22">Min size \r
- is associated to the smallest real value (including negative values).</p></li>\r
-                               \r
-                               <li class=kadov-p><p class="whs22">Max size \r
- is associated to the largest real value.</p></li>\r
-                       </ul>\r
-                       \r
-                       <li style="list-style: circle;"\r
-                               type=circle\r
-                               class=kadov-p><p><span style="font-weight: bold;"><B>Bicolor</B></span> \r
- scale: <span style="font-weight: bold;"><B>min = 0</B></span> (not editable), \r
- <span style="font-weight: bold;"><B>max = 33%</B></span></p></li>\r
-                       \r
-                       <ul type="square" class="whs21">\r
-                               \r
-                               <li class=kadov-p><p class="whs22">Null size \r
- is associated to the 0 scalar value.</p></li>\r
-                               \r
-                               <li class=kadov-p><p class="whs22">Max size \r
- is associated to the largest absolute value.</p></li>\r
-                       </ul>\r
-               </ul>\r
-       </ul>\r
-</ul>\r
-\r
-<p class="whs23">Both values are dynamically updated by the \r
- system according to the selected scalar bar. In the case of a <span style="font-weight: bold;"><B>Bicolor</B></span> \r
- scale, the minimum value is set to 0 in the dialog and the control is \r
- disabled.</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs5"><span style="font-weight: bold;"><B>Magnification \r
- (%)</B></span> corresponds to the change of size of results at Gauss point \r
- primitives in 2D space. Acceptable values range from 0 to N; 100% means \r
- no magnification, 50% means half of its size, 200% mean twice its size \r
- and so forth. By default this value is set to 100%.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs5"><span style="font-weight: bold;"><B>+/- \r
- Ratio</B></span> corresponds to the number by which the magnification will \r
- be respectively multiplied or divided at edition, ranging from 0.01 to \r
- 10. By default this value is set to 2.</p></li>\r
-</ul>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Geometry </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs5"><span style="font-weight: bold;"><B>Size \r
- of points (%) </B></span>defines a value that will be multiplied by a reference \r
- length (representative of the average size of cells of the mesh) to define \r
- the size of points during rendering (at magnification = 100%). Default \r
- values 10%.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs17">Background \r
- Color - <span style="font-weight: normal;">&nbsp;allows \r
- to select the color of points used for presentations. Click on the colored \r
- line to access to the </span><a href="select_color_and_font.htm">Select \r
- Color</a><span style="font-weight: normal;"> dialog box. </span></p></li>\r
-</ul>\r
-\r
-<p class="whs18">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Gauss Points Scalar \r
- Bar</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Active \r
- Bar - <span style="font-weight: normal;">this option allows to choose</span> \r
- Local<span style="font-weight: normal;"> or</span> Global <span style="font-weight: normal;">Bar \r
- as active.</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Display \r
- Global Bar - <span style="font-weight: normal;">this option allows to \r
- visualize or to hide the Global Bar.</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Scalar \r
- Bar Mode - <span style="font-weight: normal;">this option allows to choose</span> \r
- <span style="font-weight: normal;">between</span> Bicolor <span style="font-weight: normal;">and</span> \r
- Rainbow <span style="font-weight: normal;">Scalar Bar Mode.</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs4">Spacing \r
- - <span style="font-weight: normal;">allows to define Spacing from 0.01 \r
- to 1.</span></p></li>\r
-</ul>\r
-\r
-<p class="whs18">&nbsp;</p>\r
-\r
-<p class="whs8">Inside <span style="font-weight: normal;">and</span> \r
- Outside Cursor Preferences<span style="font-weight: normal;"> allow to \r
- set</span> Primitives, Size<span style="font-weight: normal;"> and</span> \r
- Magnification<span style="font-weight: normal;"> for the respective zones.</span> \r
- &nbsp;</p>\r
-\r
-<p class="whs8">&nbsp;</p>\r
-\r
-<p class="whs24">Picking Preferences</p>\r
-\r
-<p class="whs24">&nbsp;</p>\r
-\r
-<p class="whs24"><img src="pics/pref37.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p class="whs7">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Cursor</B></span> \r
- - allows to adjust the Size of the cursor used for Picking (ranging from \r
- 0.1 to 1), the Height of the pyramids (ranging from 0 to 10) and the Selection \r
- cursor color. </p></li>\r
-       \r
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Tolerance</B></span> \r
- - defines at which distance of the cursor from the point it becomes selected \r
- (ranges from 0.001 to 10). </p></li>\r
-       \r
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Information window \r
- -</B></span> allows to define the <span style="font-weight: bold;"><B>Transparency</B></span> \r
- (from 0% = opaque to 100% = transparent) and <span style="font-weight: bold;"><B>Position</B></span> \r
- of the window, which can be: </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs5"><span style="font-weight: bold;"><B>Centred \r
- below the point</B></span>, or</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs5">located at <span style="font-weight: bold;"><B>Top-left \r
- corner of the 3D view</B></span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs9">Movement \r
- of the Camera <span style="font-weight: normal;">can also be define by \r
- the user. </span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs5"><span style="font-weight: bold;"><B>Zoom \r
- at first selected point -</B></span> This value is used to define the focal \r
- distance at the first selected point (at the end of the movement of the \r
- camera). This value is a ratio that will be multiplied by the current \r
- zoom value.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs10">Number \r
- of steps between two positions - <span style="font-weight: normal;">defines \r
- the smoothness of camera movement at selection by the number of iterations. \r
- If set to 1 the camera is zoomed and centered at the point momentarily. \r
- Greater numbers mean very slow camera movement.</span> &nbsp;&nbsp;</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs8">Display \r
- parent mesh element - <span style="font-weight: normal;">allows to visualize \r
- or hide the patent mesh element of the selected gauss point.</span> </p></li>\r
-</ul>\r
-\r
-<p class="whs20">&nbsp;</p>\r
-\r
-<p class="whs24">Navigation Preferences</p>\r
-\r
-<p class="whs20">&nbsp;</p>\r
-\r
-<p class="whs24"><img src="pics/pref38.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p class="whs25">&nbsp;</p>\r
-\r
-<p class="whs17">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Mouse</p></li>\r
-</ul>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs20">Mouse Behaviour - <span \r
- style="font-weight: normal;">this option allows to choose one of the modes \r
- of work with mouse in Gauss Viewer. </span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs26">Salome Standard Controls \r
- - <span style="font-weight: normal;">allows to manipulate objects in the \r
- viewer with the mouse and locked Ctrl button: increase or decrease the \r
- zoom ratio with the left mouse button, translate object in any direction \r
- with the central mouse button or rotate it with the right mouse button. \r
- </span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs26">Keyboard Free - <span \r
- style="font-weight: normal;">allows to manipulate objects in the viewer \r
- with the mouse without locking Ctrl button</span>. <span style="font-weight: normal;">In \r
- this case the operations are assigned to the buttons differently: rotation \r
- is made with the left button, translation with the right and zoom with \r
- both pressed in the same time.</span> &nbsp;&nbsp;</p></li>\r
-</ul>\r
-\r
-<p class="whs17">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Keyboard</p></li>\r
-</ul>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs20">[+]/[-] Speed Increment \r
- - <span style="font-weight: normal;">defines the number of units by which \r
- the speed increases or respectively decreases after pressing [+] or [-] \r
- keyboard buttons.</span></p></li>\r
-</ul>\r
-\r
-<p class="whs17">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Spacemouse -<span style="font-weight: normal;"> \r
- a mouse-like manipulator device specially designed for working with 3D \r
- presentations, objects, etc. You can reassign the actions listed below \r
- to any of its buttons. </span></p></li>\r
-</ul>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs20">Decrease Speed Increment \r
- - <span style="font-weight: normal;">decreases by 1 the speed increment \r
- used for the keyboard (same as [-] key).</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs20">Increase Speed Increment \r
- - <span style="font-weight: normal;">increase by 1 the speed increment \r
- used for the keyboard (same as [+] key).</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs20">Decrease Gauss Points \r
- Magnification - <span style="font-weight: normal;">divides the current \r
- magnification by the magnification ratio.</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs20">Increase Gauss Points \r
- Magnification -<span style="font-weight: normal;"> multiplies the current \r
- magnification by the magnification ratio.</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs20">Dominant / combined \r
- switch -<span style="font-weight: normal;"> toggles button to switch to \r
- dominant or combined movements.</span></p></li>\r
-</ul>\r
-\r
-<p class="whs20">&nbsp;</p>\r
-\r
-<p class="whs20">&nbsp;</p>\r
-\r
-<p class="whs24">Recorder Preferences</p>\r
-\r
-<p class="whs24">&nbsp;</p>\r
-\r
-<p class="whs24"><img src="pics/pref39.png" x-maintain-ratio="TRUE" width="752px" height="646px" border="0" class="img_whs2"></p>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1">Settings</p></li>\r
-</ul>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs20">Mode - <span style="font-weight: normal;">allows \r
- to choose from</span> <span style="font-weight: normal;">two recording \r
- regimes:</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs26">Recording all displayed \r
- frames - <span style="font-weight: normal;">records exactly at the FPS \r
- rate specified by the user.</span> &nbsp;</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs26">Recording at a given \r
- FPS - <span style="font-weight: normal;">records only when the contents \r
- of the viewer change (some activity is performed). &nbsp;In \r
- the AVI file non-recorded images are substituted with the copies of the \r
- latest recorded image, which produces files with lower quality but requires \r
- less system resources.</span> &nbsp;</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs20">FPS - <span style="font-weight: normal;">allows \r
- to define the FPS (frames per second) rate for the clip. Set greater value \r
- for better quality. &nbsp;</span></p></li>\r
-       \r
-       <li class=kadov-p><p class="whs20">Quality - <span style="font-weight: normal;">allows \r
- to set the quality of the clip in the interval between 0 and 100.</span> \r
- </p></li>\r
-       \r
-       <li class=kadov-p><p class="whs20">Progressive - <span \r
- style="font-weight: normal;">allows to record a progressive API file.</span> \r
- </p></li>\r
-</ul>\r
-\r
-<p class="whs20">&nbsp;</p>\r
-\r
-<p class="whs20">&nbsp;</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/robohhre.lng b/doc/salome/gui/GUI/robohhre.lng
deleted file mode 100755 (executable)
index 297538b..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-[GlossaryTab]\r
-TabCaption=&Glossary\r
-TermCaption=&Term\r
-DefinitionCaption=&Definition For:\r
-\r
-[BrowseSequence]\r
-PreCaption=Previous\r
-PreTooltip=Previous Topic\r
-NextCaption=Next\r
-NextTooltip=Next Topic\r
-BlockTooltip=Select Block\r
-\r
-[Common]\r
-Contents=Contents\r
-Index=Index\r
-Search=Search\r
-Glossary=Glossary\r
-Logo/Author=Powered By\r
-Show=Show\r
-Hide=Hide\r
-SyncToc=SyncToc\r
-Prev=<<\r
-Next=>>\r
-Disabled Prev=<<\r
-Disabled Next=>>\r
-Seperate = |\r
-\r
-[WebHelp]\r
-Cancel=Cancel\r
-CantOpenURLorFile=Can't open URL or file\r
-CompletingContents=Completing Contents...\r
-Display=Display\r
-Term=Term:\r
-Definition=Definition:\r
-Done=Done\r
-Find=Find\r
-IndexInputPrompt=Type in the keyword to find:\r
-RelateTopicListPrompt=Click a topic, then click Display.\r
-LoadingData=Loading data, please wait...\r
-LoadingContents=Loading contents, please wait...\r
-LoadingContentsData=Loading, click here to cancel...\r
-LoadingFTS=Reading Search Data...\r
-LoadingIndex=Loading Index...\r
-LoadingTOCItem=Loading Table of Contents:\r
-Searching=Searching...\r
-FtsInputPrompt=Type in the word(s) to search for:\r
-TopicsFound=Topics Found\r
-BrowserLimitedMessage=Your browser does not support frames. We recommend that you update your browser to a version that supports frames.\r
-SuggestViewNoFrameMessage=To view the Help system without frames click on this\r
-SuggestViewNoFrameMsg2=hyperlink.\r
-TopicsNotFound=No Topics Found.\r
-CantSearch=Cannot search for that phrase.\r
-JS_alert_appletNotLoad = Unable to load applet. If you are using an old version of Netscape, the prefs.js file needs to be edited.\r
-JS_alert_colorlimitation=WebHelp has detected that your display is set to 16 colors. For full WebHelp support, please set your display to use 256 or more colors.\r
-Blank_topic_text=This topic was created by WinHelp Project Conversion Wizard, and is the destination of a missing topic or broken hyperlink.\r
-JS_alert_ProjectLoadingFail=Could not load correctly, please click Refresh.\r
-JS_alert_cantLoadProject=Can't load project:\r
-JS_alert_ErrorInLoading=Error in Loading navigation component. Please regenerate WebHelp.\r
-IndexBtnText=Go\r
-FtsBtnText=Go\r
-ToolBarSearchBtnText=Go\r
-InTopicSearchBtnText=Go\r
-SearchLabel=Search\r
-SearchPrompt=- Search -\r
-PreTooltip=Previous Topic\r
-NextTooltip=Next Topic\r
-WebSearch=WebSearch\r
-SyncTocTooltip=Sync TOC\r
-Book=Book\r
-Page=Page\r
-Remote_Page=Remote Page\r
-Show_Navigation_Component=Show Navigation Component\r
-Hide_Navigation_Component=Hide Navigation Component\r
-nls_edit_label=Type in your question:\r
-nls_button_go_hint=Go Search\r
-nls_button_go_text=Go\r
-nls_body_instruction=Enter your question in the text box above, then click GO.\r
-nls_body_empty=Sorry, we were unable to find a good answer for your question.\r
-IndexSelectTopicTitle=Select a Topic\r
-IndexSelectTopicLabel=Select a topic, then click Display\r
-IndexSelectTopicError=Please select a topic.\r
-IndexAlphabetBookmarks=ABCDEFGHIJKLMNOPQRSTUVWXYZ\r
-MergeError1=The merged Help system\r
-MergeError2=is using a different language from the master Help system, which will cause the index and full-text search functionality to be disabled in the merged Help system.\r
-PoweredBy=Powered by\r
-GeneratedBy=Generated by\r
-Author=Author\r
-About=About\r
-Print=Print\r
-\r
-[PrintedDoc]\r
-TableOfContents=Table Of Contents\r
-TitlePage=Title Page\r
-ChapterFileNamePrefix=Chapter_\r
-TitlePageFileName=Chapter__Title_Page.doc\r
-CrossReferencePrefix=See\r
-GlossaryHeadingStyleName=Glossary Heading\r
-GlossaryTermStyleName=Glossary Term\r
-GlossaryDefinitionStyleName=Glossary Definition\r
-TitlePageTitleStyleName=Title Page Title\r
-TocPageTitleStyleName=Table of Contents Page Title\r
diff --git a/doc/salome/gui/GUI/select_color_and_font.htm b/doc/salome/gui/GUI/select_color_and_font.htm
deleted file mode 100755 (executable)
index 33ad83d..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<head>\r
-<title>Select Color and Font</title>\r
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<link rel="stylesheet" href="default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{   document.write("<link rel='stylesheet' href='default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-p.whs1 { margin-left:40px; }\r
-img_whs2 { border:none; width:492px; height:392px; float:none; border-style:none; }\r
-p.whs3 { font-family:'Times New Roman' , serif; }\r
-img_whs4 { border:none; width:510px; height:393px; float:none; border-style:none; }\r
-p.whs5 { font-family:'Times New Roman' , serif; font-weight:bold; }\r
--->\r
-</style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
-  if (innerWidth != origWidth || innerHeight != origHeight)\r
-     location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
-       origWidth = innerWidth;\r
-       origHeight = innerHeight;\r
-       onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }\r
-p.WebHelpNavBar { text-align:right; }\r
--->\r
-</style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
-       if (window.setRelStartPage)\r
-       {\r
-       addTocInfo("GUI module\nSetting Preferences\nSelect Color and Font");\r
-addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");\r
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");\r
-\r
-       }\r
-\r
-\r
-       if (window.setRelStartPage)\r
-       {\r
-       setRelStartPage("index.htm");\r
-\r
-               autoSync(1);\r
-               sendSyncInfo();\r
-               sendAveInfoOut();\r
-       }\r
-\r
-}\r
-else\r
-       if (window.gbIE4)\r
-               document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(4);\r
-//-->\r
-</script>\r
-<h1>Select Color and Font</h1>\r
-\r
-<p><span style="font-weight: bold;"><B>Select Color</B></span> and <span style="font-weight: bold;"><B>Select \r
- Font</B></span> menus are used in many Preferences.</p>\r
-\r
-<h3>Select color</h3>\r
-\r
-<p class="whs1"><img src="pics/selectcolor.png" x-maintain-ratio="TRUE" width="492px" height="392px" border="0" class="img_whs2"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p class="whs3">This menu &nbsp;allows \r
- to choose from either predefined <span style="font-weight: bold;"><B>Basic \r
- Colors </B></span>grouped in the upper left corner of the window or <span \r
- style="font-weight: bold;"><B>Custom Colors,</B></span> which you can define \r
- yourselves. To define a Custom Color, click on one of the Custom Color \r
- cells, select the color you need in the field of colors or by typing in \r
- its numeric parameters in the lower right corner of the window, then click \r
- <span style="font-weight: bold;"><B>Add to Custom Colors</B></span> button. The \r
- chosen color will be added to <span style="font-weight: bold;"><B>Custom \r
- Colors</B></span> table. &nbsp;</p>\r
-\r
-<h3>Select Font</h3>\r
-\r
-<p class="whs1"><img src="pics/selectfont.png" x-maintain-ratio="TRUE" width="510px" height="393px" border="0" class="img_whs4"></p>\r
-\r
-<p class="whs5">&nbsp;</p>\r
-\r
-<p class="whs5"><span \r
- style="font-weight: normal;">This menu provides a wide choice of </span>Fonts, \r
- Font Styles <span style="font-weight: normal;">and</span> Sizes. <span \r
- style="font-weight: normal;">Characters can be underlined or struck out. \r
- It is possible to preview them in the</span> Sample <span style="font-weight: normal;">window.</span> \r
- <span style="font-family: 'Times New Roman', serif; font-weight: bold;"><B>Script</B></span><span \r
- style="font-family: 'Times New Roman', serif; font-weight: normal;"> dialog-box \r
- gives the possibility to use not only Latin and Latin Extended but also \r
- Cyrillic, Greek, Arabic, Runic and many other subsets. &nbsp;</span></p>\r
-\r
-<p class="whs5">&nbsp;</p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/setting_preferences.htm b/doc/salome/gui/GUI/setting_preferences.htm
deleted file mode 100755 (executable)
index bf28eb8..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<head>\r
-<title>Setting Preferences</title>\r
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<link rel="stylesheet" href="default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{   document.write("<link rel='stylesheet' href='default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 { border:none; width:541px; height:309px; float:none; border-style:none; }\r
-p.whs2 { font-family:'Times New Roman' , serif; }\r
-p.whs3 { margin-left:0px; background-image:url('texture_horiz_ltbluebubbles.jpg'); text-align:justify; }\r
-img_whs4 { border:none; float:none; width:36px; height:38px; border-style:none; }\r
-p.whs5 { font-style:italic; color:#ff0000; margin-left:40px; text-align:justify; }\r
--->\r
-</style><script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
-  var strNSS = "<style type='text/css'>";\r
-  strNSS += "p.whs3 {margin-left:1pt; }";\r
-  strNSS +="</style>";\r
-  document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
-  if (innerWidth != origWidth || innerHeight != origHeight)\r
-     location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
-       origWidth = innerWidth;\r
-       origHeight = innerHeight;\r
-       onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }\r
-p.WebHelpNavBar { text-align:right; }\r
--->\r
-</style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
-       if (window.setRelStartPage)\r
-       {\r
-       addTocInfo("GUI module\nSetting Preferences\nSetting Preferences");\r
-addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");\r
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");\r
-\r
-       }\r
-\r
-\r
-       if (window.setRelStartPage)\r
-       {\r
-       setRelStartPage("index.htm");\r
-\r
-               autoSync(1);\r
-               sendSyncInfo();\r
-               sendAveInfoOut();\r
-       }\r
-\r
-}\r
-else\r
-       if (window.gbIE4)\r
-               document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(4);\r
-//-->\r
-</script>\r
-<h1>Setting Preferences</h1>\r
-\r
-<p>In <span style="font-weight: bold;"><B>SALOME </B></span>you can set preferences \r
- for each module in the common editor of preferences. SALOME preferences \r
- refer to the whole GUI SALOME session, other preferences are module-specific \r
- and are accessible only after you load a respective module. </p>\r
-\r
-<p>When you change settings (click <span style="font-weight: bold;"><B>OK</B></span> \r
- or <span style="font-weight: bold;"><B>Apply</B></span> button) each module receives \r
- the notification about what preferences are changed. You can also click \r
- <span style="font-weight: bold;"><B>Defaults</B></span> button to restore default \r
- preferences or <span style="font-weight: bold;"><B>Close</B></span> button to \r
- quit the menu without any changes. </p>\r
-\r
-<p><span style="font-weight: bold;"><B>Import</B></span> button allows to load \r
- a user file containing preferences from your home directory through a \r
- standard Import dialog box.</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p><img src="pics/import.png" x-maintain-ratio="TRUE" width="541px" height="309px" border="0" class="img_whs1"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p>This file has no extension and by default starts with .SalomeApprc. \r
- followed by Salome version number. There exists one file for each Salome \r
- version in use.</p>\r
-\r
-<p>The preferences, set during the current study session, are automatically \r
- saved in this file at the end of the session. Next time you launch SALOME \r
- application, these preferences will be restored.</p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<p class="whs3"><img src="note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs4">The preferences you set \r
- will be default preferences for all <span style="font-weight: bold;"><B>new</B></span> \r
- objects, but they are not retroactive and do not automatically apply to \r
- the existing objects. </p>\r
-\r
-<p class="whs5">&nbsp;</p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/ss_btn_related_topics.gif b/doc/salome/gui/GUI/ss_btn_related_topics.gif
deleted file mode 100755 (executable)
index 5158bc4..0000000
Binary files a/doc/salome/gui/GUI/ss_btn_related_topics.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/static/footer.html b/doc/salome/gui/GUI/static/footer.html
new file mode 100755 (executable)
index 0000000..56d52a6
--- /dev/null
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+</head>
+<body>
+<hr style="width: 100%; height: 2px;">
+<div style="text-align: center;">Copyright &copy; 2003-2007 CEA, EDF<br>
+</div>
+</body>
+</html>
diff --git a/doc/salome/gui/GUI/static/header.html b/doc/salome/gui/GUI/static/header.html
new file mode 100755 (executable)
index 0000000..a70a95e
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head>
+   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+   <title>$title</title>
+   <link href="doxygen.css" rel="stylesheet" type="text/css">
+</head>
+<hr>
+<center>
+SALOME documentation central
+</center>
+<hr>
diff --git a/doc/salome/gui/GUI/texture_horiz_ltbluebubbles.jpg b/doc/salome/gui/GUI/texture_horiz_ltbluebubbles.jpg
deleted file mode 100755 (executable)
index a10d494..0000000
Binary files a/doc/salome/gui/GUI/texture_horiz_ltbluebubbles.jpg and /dev/null differ
diff --git a/doc/salome/gui/GUI/tip1.gif b/doc/salome/gui/GUI/tip1.gif
deleted file mode 100755 (executable)
index bb74c87..0000000
Binary files a/doc/salome/gui/GUI/tip1.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/vtk_3d_viewer.htm b/doc/salome/gui/GUI/vtk_3d_viewer.htm
deleted file mode 100644 (file)
index ce56c18..0000000
+++ /dev/null
@@ -1,279 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<head>\r
-<title>VTK 3D Viewer</title>\r
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<link rel="stylesheet" href="default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{   document.write("<link rel='stylesheet' href='default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-p.whs1 { margin-top:0pt; margin-bottom:0pt; }\r
-img_whs2 { border:none; width:301px; height:26px; float:none; }\r
-ul.whs3 { list-style:disc; }\r
-img_whs4 { border:none; width:26px; height:25px; float:none; border-style:none; }\r
-img_whs5 { border:none; width:27px; height:25px; float:none; border-style:none; }\r
-img_whs6 { border:none; width:24px; height:23px; float:none; border-style:none; }\r
-img_whs7 { border:none; width:24px; height:24px; float:none; border-style:none; }\r
-img_whs8 { border:none; width:25px; height:24px; float:none; border-style:none; }\r
-img_whs9 { border:none; width:23px; height:23px; float:none; border-style:none; }\r
-img_whs10 { border:none; width:20px; height:20px; float:none; border-style:none; }\r
-p.whs11 { margin-left:80px; }\r
-img_whs12 { border:none; width:410px; height:255px; float:none; border-style:none; }\r
-img_whs13 { border:none; width:26px; height:26px; float:none; border-style:none; }\r
-img_whs14 { border:none; width:78px; height:147px; float:none; border-style:none; }\r
-img_whs15 { border:none; border-style:none; width:28px; height:25px; float:none; }\r
-img_whs16 { border:none; border-style:none; width:27px; height:27px; float:none; }\r
-p.whs17 { font-weight:bold; margin-left:88px; }\r
-img_whs18 { border:none; border-style:none; width:350px; height:453px; float:none; }\r
-ol.whs19 { list-style:disc; }\r
-p.whs20 { font-weight:bold; margin-top:0pt; margin-bottom:0pt; }\r
-p.whs21 { font-weight:bold; margin-left:36px; margin-top:0pt; margin-bottom:0pt; }\r
-p.whs22 { font-weight:bold; margin-left:0px; margin-top:0pt; margin-bottom:0pt; }\r
-p.whs23 { margin-left:0px; font-weight:bold; margin-top:0pt; margin-bottom:0pt; }\r
--->\r
-</style><script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
-  var strNSS = "<style type='text/css'>";\r
-  strNSS += "p.whs1 {margin-top:1pt;margin-bottom:1pt; }";\r
-  strNSS += "p.whs20 {margin-top:1pt;margin-bottom:1pt; }";\r
-  strNSS += "p.whs21 {margin-top:1pt;margin-bottom:1pt; }";\r
-  strNSS += "p.whs22 {margin-left:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
-  strNSS += "p.whs23 {margin-left:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
-  strNSS +="</style>";\r
-  document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
-  if (innerWidth != origWidth || innerHeight != origHeight)\r
-     location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
-       origWidth = innerWidth;\r
-       origHeight = innerHeight;\r
-       onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }\r
-p.WebHelpNavBar { text-align:right; }\r
--->\r
-</style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
-       if (window.setRelStartPage)\r
-       {\r
-       addTocInfo("GUI module\nViewers\nVTK 3D Viewer");\r
-addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");\r
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");\r
-\r
-       }\r
-\r
-\r
-       if (window.setRelStartPage)\r
-       {\r
-       setRelStartPage("index.htm");\r
-\r
-               autoSync(1);\r
-               sendSyncInfo();\r
-               sendAveInfoOut();\r
-       }\r
-\r
-}\r
-else\r
-       if (window.gbIE4)\r
-               document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(4);\r
-//-->\r
-</script>\r
-<h1>VTK 3D Viewer</h1>\r
-\r
-<p class="whs1"><span style="font-weight: bold;"><B>VTK \r
- 3D viewer</B></span> is the default viewer for Mesh Module, allowing to visualize \r
- meshes. It is also used in Post-Pro module for all 3D presentations except \r
- for Gauss Points.</p>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<p class="whs1">The functionalities of \r
- VTK viewer are available via its Viewer Toolbar. Buttons marked with small \r
- downward triangles have extended functionality which can be accessed by \r
- locking on them with left mouse button. &nbsp;</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p><img src="pics/image157.gif" x-maintain-ratio="TRUE" width="301px" height="26px" border="0" class="img_whs2"></p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p><img src="pics/image77.gif" x-maintain-ratio="TRUE" width="26px" height="25px" border="0" class="img_whs4"> <span style="font-weight: bold;"><B>Dump \r
- View</B></span> - exports an object from the viewer in bmp, png, jpg or jpeg \r
- image format. </p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image88.gif" x-maintain-ratio="TRUE" width="27px" height="25px" border="0" class="img_whs5"> <span style="font-weight: bold;"><B>Show/Hide \r
- Trihedron</B></span> - shows or hides coordinate axes. </p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image96.gif" x-maintain-ratio="TRUE" width="24px" height="23px" border="0" class="img_whs6"> &nbsp;<span \r
- style="font-weight: bold;"><B>Fit all - </B></span>allows \r
- to select a point to be the center of a scene representing all displayed \r
- objects in the visible area.<span style="font-weight: bold;"> <B></B></span></p></li>\r
-       \r
-       <li class=kadov-p><p>&nbsp;<img src="pics/image97.gif" x-maintain-ratio="TRUE" width="24px" height="24px" border="0" class="img_whs7"> <span style="font-weight: bold;"><B>Fit area</B></span> - resizes \r
- the view to place in the visible area only the contents of a frame drawn \r
- with pressed left mouse button.</p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image98.gif" x-maintain-ratio="TRUE" width="25px" height="24px" border="0" class="img_whs8"> <span style="font-weight: bold;"><B>Zoom</B></span> \r
- - &nbsp;allows \r
- to zoom in and out. </p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image99.gif" x-maintain-ratio="TRUE" width="23px" height="23px" border="0" class="img_whs9"> <span style="font-weight: bold;"><B>Panning</B></span> \r
- - if the represented objects are greater that the visible area and you \r
- don't wish to use <span style="font-weight: bold;"><B>Fit all</B></span> functionality, \r
- click on this button and you'll be able to drag the scene to see its remote \r
- parts. </p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image100.gif" x-maintain-ratio="TRUE" width="24px" height="24px" border="0" class="img_whs7"> <span style="font-weight: bold;"><B>Global \r
- panning</B></span> - represents all displayed objects in the visible area. \r
- </p></li>\r
-</ul>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p class="whs1"><img src="pics/view_rotation_point.png" x-maintain-ratio="TRUE" width="20px" height="20px" border="0" class="img_whs10"> <span style="font-weight: bold;"><B>Change rotation point</B></span> \r
- - allows to to choose the point around which the rotation is performed. \r
- </p></li>\r
-</ul>\r
-\r
-<p class="whs11"><img src="pics/set_rotation_point_dialog1.png" x-maintain-ratio="TRUE" width="410px" height="255px" border="0" class="img_whs12"></p>\r
-\r
-<p class="whs11">&nbsp;</p>\r
-\r
-<p class="whs11">By default the rotation point is located \r
- in the Center of the bounding box of an object. </p>\r
-\r
-<p class="whs11">&nbsp;</p>\r
-\r
-<p class="whs11"><img src="pics/set_rotation_point_dialog2.png" x-maintain-ratio="TRUE" width="410px" height="255px" border="0" class="img_whs12"></p>\r
-\r
-<p class="whs11">&nbsp;</p>\r
-\r
-<p class="whs11">Unchecking <span style="font-weight: bold;"><B>Use \r
- Bounding Box Center</B></span> box allows you to define the coordinates of \r
- the rotation point manually. </p>\r
-\r
-<p class="whs11">&nbsp;</p>\r
-\r
-<p class="whs11"><span style="font-weight: bold;"><B>Set to Origin</B></span> \r
- button restores the default rotation point coordinates.</p>\r
-\r
-<p class="whs11"><span style="font-weight: bold;"><B>Select Point \r
- from View</B></span> button allows to select the rotation point in the 3D \r
- Viewer</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<ul type="disc" class="whs3">\r
-       \r
-       <li class=kadov-p><p><img src="pics/image89.gif" x-maintain-ratio="TRUE" width="26px" height="26px" border="0" class="img_whs13"> <span style="font-weight: bold;"><B>Rotation</B></span> \r
- - allows to rotate the selected object using the mouse. </p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image102.gif" x-maintain-ratio="TRUE" width="78px" height="147px" border="0" class="img_whs14"> These buttons orientate the scene \r
- strictly about coordinate axes.</p></li>\r
-       \r
-       <li class=kadov-p><p><img src="pics/image91.gif" x-maintain-ratio="TRUE" width="26px" height="26px" border="0" class="img_whs13"> <span style="font-weight: bold;"><B>Reset</B></span> \r
- - restores the default position (isometric) of objects in the scene.</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs1"><img src="pics/image108.gif" x-maintain-ratio="TRUE" width="28px" height="25px" border="0" class="img_whs15"> <span style="font-weight: bold;"><B>Scaling</B></span> - represents \r
- objects deformed (stretched or stuffed) along the axes of coordinates</p></li>\r
-       \r
-       <li class=kadov-p><p class="whs1">&nbsp;<span \r
- style="font-weight: bold;"><B><img src="pics/image109.gif" x-maintain-ratio="TRUE" width="27px" height="27px" border="0" class="img_whs16">Graduated axes - </B></span>allows to define parameters of axes \r
- and graduate them.</p></li>\r
-</ul>\r
-\r
-<p class="whs1">&nbsp;</p>\r
-\r
-<p class="whs17"><img src="pics/graduatedaxes1.png" x-maintain-ratio="TRUE" width="350px" height="453px" border="0" class="img_whs18"></p>\r
-\r
-<ol type="disc" class="whs19">\r
-       \r
-       <ul type="disc" class="whs3">\r
-               \r
-               <li class=kadov-p><p class="whs20">Axis name </p></li>\r
-               \r
-               <li class=kadov-p><p class="whs21">Is visible - <span \r
- style="font-weight: normal;">if checked the axis name is displayed in \r
- the viewer.</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs21">Name<span style="font-weight: normal;"> \r
- - allows to redefine the name of the axis.</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs21">Font<span style="font-weight: normal;"> \r
- - allows to define color and properties of the font of axis name. </span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs22">Labels<span style="font-weight: normal;"> \r
- </span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs21">Is visible - <span \r
- style="font-weight: normal;">if checked the labels are displayed in the \r
- viewer.</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs21">Number<span style="font-weight: normal;"> \r
- - allows to define the number of labels.</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs21">Offset<span style="font-weight: normal;"> \r
- - allows to define the distance between labels.</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs21">Font<span style="font-weight: normal;"> \r
- - allows to define color and properties of the font of labels names.</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs23">Tick marks </p></li>\r
-               \r
-               <li class=kadov-p><p class="whs21">Is visible - <span \r
- style="font-weight: normal;">if checked the tick marks are displayed in \r
- the viewer.</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs21">Length<span style="font-weight: normal;"> \r
- - allows to define the length of tick marks</span></p></li>\r
-               \r
-               <li class=kadov-p><p class="whs23">Is visible <span \r
- style="font-weight: normal;">if checked the axis is displayed in the viewer.</span></p></li>\r
-       </ul>\r
-</ol>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/webhelp.cab b/doc/salome/gui/GUI/webhelp.cab
deleted file mode 100755 (executable)
index e4da07f..0000000
Binary files a/doc/salome/gui/GUI/webhelp.cab and /dev/null differ
diff --git a/doc/salome/gui/GUI/webhelp.jar b/doc/salome/gui/GUI/webhelp.jar
deleted file mode 100755 (executable)
index 0aa3ceb..0000000
Binary files a/doc/salome/gui/GUI/webhelp.jar and /dev/null differ
diff --git a/doc/salome/gui/GUI/whcsh_home.htm b/doc/salome/gui/GUI/whcsh_home.htm
deleted file mode 100755 (executable)
index 5a486ba..0000000
+++ /dev/null
@@ -1,600 +0,0 @@
-<html>\r
-<script language="javascript1.2" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-if(gbIE4||gbNav61)\r
-{\r
-       document.write("<body></body>");\r
-}\r
-else\r
-{\r
-       document.write("<frameset rows=\"100%,*\"><frame name=\"data_frm\" src=\"about:blank\"><frame name=\"dumb_frm\" src=\"about:blank\"></frameset>");\r
-}\r
-var gCSHFileName="whcshdata.htm";\r
-\r
-var gHomePage="index.htm";\r
-var gaProj=new Array();\r
-gaProj[0]=new Object();\r
-gaProj[0].sProjPath=_replaceSlash(_getPath(document.location.href));\r
-gaProj[0].nLoadState=0;\r
-var gCurrent=0;\r
-\r
-var gsTopicURL="";\r
-var gnCurProj=0;\r
-var gnCommand=-1;\r
-var CMD_SHOWTOC=1;\r
-var CMD_SHOWINDEX=2;\r
-var CMD_SHOWSEARCH=3;\r
-var CMD_SHOWGLOSSARY=4;\r
-var CMD_SHOWNONE=0;\r
-\r
-var RHWO_LOCATION=0x01;                /*need location bar?*/\r
-var RHWO_MENUBAR=0x02;         /*need menubar?*/               \r
-var RHWO_RESIZABLE=0x04;       /*resizable window?*/\r
-var RHWO_TOOLBAR=0x08;         /*need toolbar?*/\r
-var RHWO_STATUS=0x10;          /*need statusbar?*/\r
-var RHWO_SCROLLBARS=0x20;      /*need scrollbars?*/\r
-\r
-var gsStr="";\r
-var gnId=-1;\r
-var gsWindow="";\r
-var gsJava="false";\r
-var gbUseStr=false;\r
-var gbURLReady=false;\r
-var goWnd=new Object();\r
-goWnd.sName="whCshDefault";\r
-goWnd.nBOptions=RHWO_RESIZABLE|RHWO_SCROLLBARS;\r
-goWnd.sBLeft="49%";\r
-goWnd.sBTop="0";\r
-goWnd.sBWidth="49%";\r
-goWnd.sBHeight="49%";\r
-goWnd.nPanes=1;\r
-var goFullWnd=new Object();\r
-goFullWnd.sName="whDefault";\r
-goFullWnd.nBOptions=RHWO_RESIZABLE|RHWO_SCROLLBARS;\r
-goFullWnd.sBLeft="20%";\r
-goFullWnd.sBTop="0";\r
-goFullWnd.sBWidth="79%";\r
-goFullWnd.sBHeight="79%";\r
-goFullWnd.nPanes=2;\r
-\r
-var goNewWnd=null;\r
-var gbLoadWnd=false;\r
-var gsURL="";\r
-\r
-function showCSH(sParam)\r
-{\r
-       //id=\r
-       //str=\r
-       //url=\r
-       //cmd=\r
-       //with the format #<a=xxx>>b=xxx>>c=xxx...\r
-       parseParam(sParam);\r
-       SwitchURL();\r
-}\r
-\r
-function IsWndReady()\r
-{\r
-       if(gaProj[0].nLoadState==0)\r
-       {\r
-               var sCshFile=_getFullPath(gaProj[0].sProjPath,gCSHFileName);\r
-               gaProj[0].nLoadState=1;\r
-               setTimeout("loadFail("+0+");",3000);\r
-               loadDataCsh(sCshFile);\r
-               gbLoadWnd=true;\r
-               return false;\r
-       }\r
-       else\r
-               return true;\r
-}\r
-\r
-function SwitchURL()\r
-{\r
-       if(gbURLReady)\r
-       {\r
-               var sURL="";\r
-               var oWnd=null;\r
-               if(gsTopicURL)\r
-               {\r
-                       sURL=_getPath(document.location.href)+gHomePage+"#"+gsTopicURL;\r
-                       oWnd=goWnd;\r
-               }\r
-               else\r
-               {\r
-                       if(gnCommand!=-1)\r
-                               sURL=_getPath(document.location.href)+gHomePage+"#>>cmd="+gnCommand;\r
-                       else\r
-                               sURL=_getPath(document.location.href)+gHomePage;\r
-                       oWnd=goFullWnd;\r
-               }\r
-               if(gsWindow)\r
-               {\r
-                       if(!IsWndReady())\r
-                               return false;\r
-                       if(gaProj[gnCurProj].aWnd)\r
-                       {\r
-                               var aWnd=gaProj[gnCurProj].aWnd;\r
-                               var bFound=false;\r
-                               for(var i=0;i<aWnd.length;i++)\r
-                               {\r
-                                       if(aWnd[i].sName.toLowerCase()==gsWindow.toLowerCase())\r
-                                       {\r
-                                               oWnd=aWnd[i];\r
-                                               bFound=true;\r
-                                               break;\r
-                                       }\r
-                               }\r
-                               if(!bFound&&gnCurProj!=0)\r
-                               {\r
-                                       var aWnd=gaProj[0].aWnd;\r
-                                       for(var j=0;j<aWnd.length;j++)\r
-                                       {\r
-                                               if(aWnd[j].sName.toLowerCase()==gsWindow.toLowerCase())\r
-                                               {\r
-                                                       oWnd=aWnd[j];\r
-                                                       break;\r
-                                               }\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-\r
-               if(sURL&&oWnd)\r
-               {\r
-                       strURLOpt="";\r
-                       if(oWnd.sCaption)\r
-                               strURLOpt+=">>cap="+oWnd.sCaption;\r
-                       if(oWnd.nPanes==1)\r
-                               strURLOpt+=">>pan="+oWnd.nPanes;\r
-                       else if(oWnd.nPanes==2)\r
-                       {\r
-                               strURLOpt+=">>pan="+oWnd.nPanes;\r
-                               if(oWnd.nPOptions)\r
-                                       strURLOpt+=">>pot="+oWnd.nPOptions;\r
-                               if(oWnd.sPButtons)\r
-                                       strURLOpt+=">>pbs="+oWnd.sPButtons;\r
-                               if(oWnd.sPDefBtn)\r
-                                       strURLOpt+=">>pdb="+oWnd.sPDefBtn;\r
-                       }\r
-                       if(strURLOpt)\r
-                       {\r
-                               if(sURL.indexOf("#")==-1)\r
-                                       sURL+="#";\r
-                               sURL+=strURLOpt;\r
-                       }\r
-                       if(gsJava=="false")\r
-                       {\r
-                               var strOpt=getBrowserOptionString(oWnd);\r
-                               var sNewName=convertWindowName(oWnd.sName);\r
-                               if(gbNav4)\r
-                               {\r
-                                       if (gbNav6)\r
-                                       {\r
-                                               gsURL = sURL;\r
-                                               goNewWnd=window.open("about:blank",sNewName,strOpt);\r
-                                               setTimeout("postWindowNSOpen();",100);\r
-                                       }\r
-                                       else\r
-                                       {\r
-                                               window.open("about:blank",sNewName,strOpt);\r
-                                               var oNewWnd=window.open(sURL,sNewName);\r
-                                               window.close();\r
-                                               oNewWnd.focus();\r
-                                       }\r
-                               }\r
-                               else\r
-                               {\r
-                                       if(gbIE5)\r
-                                       {\r
-                                               window.open("about:blank",sNewName,strOpt);\r
-                                               goNewWnd=window.open(sURL,sNewName);\r
-                                       }\r
-                                       else\r
-                                       {\r
-                                               gsURL = sURL; // IE4 had hard time to handle bookmark.\r
-                                               goNewWnd=window.open("about:blank",sNewName,strOpt);\r
-                                       }\r
-                                       setTimeout("postWindowOpen();",100);\r
-                               }\r
-                       }\r
-                       else\r
-                               document.location=sURL;\r
-               }\r
-       }\r
-}\r
-\r
-function convertWindowName(strName)\r
-{\r
-       var strNewName = strName;\r
-       var strResultName = "";\r
-       var re=new RegExp("_","g");\r
-       strNewName = strName.replace(re,"__");\r
-       for (var i=0;i<strNewName.length;i++)\r
-               if (!(strNewName[i] == '_' ||\r
-                       (strNewName[i] <= '9' && strNewName[i] >= '0') ||\r
-                       (strNewName[i] <= 'z' && strNewName[i] >= 'a') ||\r
-                       (strNewName[i] <= 'Z' && strNewName[i] >= 'A')))\r
-               {\r
-                       strResultName += "_" + strNewName.charCodeAt(i);\r
-               }\r
-               else\r
-                       strResultName += strNewName[i];\r
-       return strResultName;\r
-}\r
-\r
-function postWindowNSOpen()\r
-{\r
-       if(goNewWnd)\r
-       {\r
-               if (gsURL)\r
-                       goNewWnd.document.location.href=gsURL;\r
-               window.close();\r
-               goNewWnd.focus();\r
-       }\r
-}\r
-\r
-function postWindowOpen()\r
-{\r
-       if(goNewWnd)\r
-       {\r
-               if (gsURL&&!gbIE5&&gbIE4)\r
-                       goNewWnd.document.location.href=gsURL;\r
-               goNewWnd.focus();\r
-       }\r
-}\r
-\r
-function parseParam(sParam)\r
-{\r
-       if(sParam)\r
-       {\r
-               var nBPos=0;\r
-               do\r
-               {\r
-                       var nPos=sParam.indexOf(">>",nBPos);\r
-                       if(nPos!=-1)\r
-                       {\r
-                               if(nPos>0)\r
-                               {\r
-                                       var sPart=sParam.substring(nBPos,nPos);\r
-                                       parsePart(sPart);\r
-                               }\r
-                               nBPos=nPos+2;\r
-                       }\r
-                       else\r
-                       {\r
-                               var sPart=sParam.substring(nBPos);\r
-                               parsePart(sPart);\r
-                               break;\r
-                       }\r
-               }while(nBPos<sParam.length);\r
-       }\r
-}\r
-\r
-function parsePart(sPart)\r
-{\r
-       if(sPart.toLowerCase().indexOf("id=")==0)\r
-       {\r
-               fetchURLById(sPart.substring(3));\r
-               gbURLReady=false;\r
-       }\r
-       else if(sPart.toLowerCase().indexOf("str=")==0)\r
-       {\r
-               fetchURLByStr(sPart.substring(4));\r
-               gbURLReady=false;\r
-       }\r
-       else if(sPart.toLowerCase().indexOf("url=")==0)\r
-       {\r
-               gsTopicURL=sPart.substring(4);\r
-               gbURLReady=true;\r
-       }\r
-       else if(sPart.toLowerCase().indexOf("cmd=")==0)\r
-       {\r
-               var sCmd=sPart.substring(4);\r
-               if(sCmd.toLowerCase()=="toc")\r
-               {\r
-                       gnCommand=CMD_SHOWTOC;\r
-               }\r
-               else if(sCmd.toLowerCase()=="idx")\r
-               {\r
-                       gnCommand=CMD_SHOWINDEX;\r
-               }\r
-               else if(sCmd.toLowerCase()=="fts")\r
-               {\r
-                       gnCommand=CMD_SHOWSEARCH;\r
-               }\r
-               else if(sCmd.toLowerCase()=="glo")\r
-               {\r
-                       gnCommand=CMD_SHOWGLOSSARY;\r
-               }\r
-               else if(sCmd.toLowerCase()=="none")\r
-               {\r
-                       gnCommand=CMD_SHOWNONE;\r
-               }\r
-               gbURLReady=true;\r
-       }\r
-       else if(sPart.toLowerCase().indexOf("wnd=")==0)\r
-       {\r
-               gsWindow=_browserStringToText(sPart.substring(4));\r
-       }\r
-       else if(sPart.toLowerCase().indexOf("java=")==0)\r
-       {\r
-               gsJava=sPart.substring(5);\r
-       }\r
-}\r
-\r
-function fetchURLById(sId)\r
-{\r
-       var nId=parseInt(sId);\r
-       gsTopicURL="";\r
-       fetchURL("",nId,false);\r
-}\r
-\r
-function fetchURLByStr(sStr)\r
-{\r
-       gsTopicURL="";\r
-       fetchURL(sStr,0,true);\r
-}\r
-\r
-function fetchURL(sStr,nId,bUseStr)\r
-{\r
-       var bNeedLoad=false;\r
-       var bFound=false;\r
-       for(var i=0;i<gaProj.length;i++)\r
-       {\r
-               if(gaProj[i].nLoadState==3)\r
-               {\r
-                       if(gaProj[i].aCsh)\r
-                       {\r
-                               for(var j=0;j<gaProj[i].aCsh.length;j++)\r
-                               {\r
-                                       var sTopicURL="";\r
-                                       if(bUseStr)\r
-                                       {\r
-                                               if(gaProj[i].aCsh[j].strAliasId.toLowerCase()==sStr.toLowerCase())\r
-                                                       sTopicURL=gaProj[i].aCsh[j].strUrl;\r
-                                       }\r
-                                       else\r
-                                       {\r
-                                               if(gaProj[i].aCsh[j].nTopicNum==nId)\r
-                                                       sTopicURL=gaProj[i].aCsh[j].strUrl;\r
-                                       }\r
-                                       if(sTopicURL)\r
-                                       {\r
-                                               if(i!=0)\r
-                                               {\r
-                                                       gnCurProj=i;\r
-                                                       if(gaProj[i].sProjPath.indexOf(gaProj[0].sProjPath)==0)\r
-                                                       {\r
-                                                               var sRelPath=gaProj[i].sProjPath.substring(gaProj[0].sProjPath.length);\r
-                                                               gsTopicURL=sRelPath+sTopicURL;\r
-                                                       }\r
-                                                       else\r
-                                                               gsTopicURL=gaProj[i].sProjPath+sTopicURL;\r
-                                               }\r
-                                               else\r
-                                                       gsTopicURL=sTopicURL;\r
-                                               bFound=true;\r
-                                               break;\r
-                                       }\r
-                               }\r
-                       }\r
-                       \r
-               }\r
-               else if(gaProj[i].nLoadState==0)\r
-               {\r
-                       gsStr=sStr;\r
-                       gnId=nId;\r
-                       gbUseStr=bUseStr;\r
-                       var sCshFile=_getFullPath(gaProj[i].sProjPath,gCSHFileName);\r
-                       gaProj[i].nLoadState=1;\r
-                       setTimeout("loadFail("+i+");",3000);\r
-                       loadDataCsh(sCshFile);\r
-                       bNeedLoad=true;\r
-               }\r
-               if(bFound||bNeedLoad)\r
-                       break;\r
-       }\r
-       if(!bNeedLoad)\r
-       {\r
-               gbURLReady=true;\r
-               SwitchURL();\r
-       }\r
-}\r
-\r
-function loadDataCsh(sFile)\r
-{\r
-       if(gbIE4||gbNav61)\r
-               loadData(sFile);\r
-       else\r
-       {\r
-               window.frames[0].location=sFile;\r
-       }\r
-}\r
-\r
-function loadFail(nProj)\r
-{\r
-       if(gaProj[nProj].nLoadState==1)\r
-       {\r
-               gaProj[nProj].nLoadState=2;\r
-               if(!gbLoadWnd)\r
-                       fetchURL(gsStr,gnId,gbUseStr);\r
-               else\r
-                       SwitchURL();\r
-       }\r
-}\r
-\r
-function putCshData(strProj,aCsh,aWnd,aRmtProj)\r
-{\r
-       if(strProj)\r
-       {\r
-               strProj=_replaceSlash(strProj);\r
-               if(strProj.lastIndexOf("/")!=strProj.length-1)\r
-                       strProj+="/";\r
-               for(var i=0;i<gaProj.length;i++)\r
-               {\r
-                       if(gaProj[i].sProjPath)\r
-                       {\r
-                               if(isSamePath(gaProj[i].sProjPath,strProj))\r
-                               {\r
-                                       gaProj[i].nLoadState=3;\r
-                                       gaProj[i].aCsh=aCsh;\r
-                                       gaProj[i].aWnd=aWnd;\r
-                                       break;\r
-                               }\r
-                       }\r
-               }\r
-               if(aRmtProj&&aRmtProj.length)\r
-               {\r
-                       for(var j=0;j<aRmtProj.length;j++)\r
-                       {\r
-                               var strRPath=_getFullPath(strProj,aRmtProj[j]);\r
-                               var bFound=false;\r
-                               for (var k=0;k<gaProj.length;k++)\r
-                               {\r
-                                       if(gaProj[k].sProjPath)\r
-                                       {\r
-                                               if(isSamePath(gaProj[k].sProjPath,strRPath))\r
-                                               {\r
-                                                       bFound=true;\r
-                                                       break;\r
-                                               }\r
-                                       }\r
-                               }\r
-                               if(!bFound)\r
-                               {\r
-                                       var len=gaProj.length;\r
-                                       gaProj[len]=new Object();\r
-                                       gaProj[len].sProjPath=strRPath;\r
-                                       gaProj[len].nLoadState=0;\r
-                               }\r
-                       }\r
-               }\r
-               if(!gbLoadWnd)\r
-                       fetchURL(gsStr,gnId,gbUseStr);\r
-               else\r
-                       SwitchURL();\r
-                       \r
-       }\r
-}\r
-\r
-function isSamePath(strPath1,strPath2)\r
-{\r
-       return strPath1.toLowerCase()==strPath2.toLowerCase();\r
-}\r
-\r
-function getRelHomePage(strLocation)\r
-{\r
-       var strCurPPath=_getPath(strLocation);\r
-       var strOriPPath=_getPath(getHomePage());\r
-       var strRelPath=_getRelativeFileName(strOriPPath,strCurPPath);\r
-       var strURL=getHomePage()+"#"+strRelPath;\r
-       return strURL;\r
-}\r
-\r
-function getHomePage()\r
-{\r
-       var strHomePage;\r
-       var strTmp=location.toString();\r
-       var nPos=strTmp.indexOf("#");\r
-       if(nPos!=-1)\r
-       {\r
-               strHomePage=strTmp.substring(0,nPos);\r
-       }\r
-       else\r
-       {\r
-               strHomePage=strTmp;\r
-       }\r
-       return strHomePage;\r
-}\r
-\r
-function getBrowserOptionString(oWnd)\r
-{\r
-       var strOpts="";\r
-       if(oWnd.bUseDefault)\r
-               return strOpts;\r
-       if(oWnd.nBOptions&RHWO_LOCATION)\r
-               strOpts+="location=yes";\r
-       else\r
-               strOpts+="location=no";\r
-       if(oWnd.nBOptions&RHWO_TOOLBAR)\r
-               strOpts+=",toolbar=yes";                \r
-       else\r
-               strOpts+=",toolbar=no";         \r
-       if(oWnd.nBOptions&RHWO_MENUBAR)\r
-               strOpts+=",menubar=yes";                \r
-       else\r
-               strOpts+=",menubar=no";\r
-       if(oWnd.nBOptions&RHWO_STATUS)\r
-               strOpts+=",status=yes";         \r
-       else\r
-               strOpts+=",status=no";          \r
-       if(oWnd.nBOptions&RHWO_SCROLLBARS)\r
-               strOpts+=",scrollbars=yes";\r
-       else\r
-               strOpts+=",scrollbars=no";      \r
-       if(oWnd.nBOptions&RHWO_RESIZABLE)\r
-               strOpts+=",resizable=yes";\r
-       else\r
-               strOpts+=",resizable=no";\r
-       if(oWnd.sBTop)\r
-       {\r
-               var nTop=getSValue(oWnd.sBTop,screen.height);\r
-               strOpts+=",top="+nTop;\r
-               strOpts+=",screenY="+nTop;\r
-       }\r
-       if(oWnd.sBLeft)\r
-       {\r
-               var nLeft=getSValue(oWnd.sBLeft,screen.width);\r
-               strOpts+=",left="+nLeft;\r
-               strOpts+=",screenX="+nLeft;\r
-       }\r
-       if(oWnd.sBWidth)\r
-       {\r
-               var nWidth=getSValue(oWnd.sBWidth,screen.width);\r
-               strOpts+=",width="+nWidth;\r
-               strOpts+=",outerWidth="+nWidth;\r
-       }\r
-       if(oWnd.sBHeight)\r
-       {\r
-               var nHeight=getSValue(oWnd.sBHeight,screen.height);\r
-               strOpts+=",height="+nHeight;\r
-               strOpts+=",outerHeight="+nHeight;\r
-       }\r
-       return strOpts;\r
-}\r
-\r
-function getSValue(sValue,nLength)\r
-{\r
-       var nValue=0;\r
-       var nPos=sValue.indexOf("%");\r
-       if(nPos!=-1)\r
-       {\r
-               if(nPos>0)\r
-               {\r
-                       var nPart=parseInt(sValue.substring(0,nPos));\r
-                       nValue=nLength*nPart/100;\r
-               }\r
-       }\r
-       else\r
-               nValue=parseInt(sValue);\r
-       return nValue;\r
-}\r
-\r
-\r
-window.onload=window_OnLoad;\r
-\r
-function window_OnLoad()\r
-{\r
-       if(document.location.hash.length>0)\r
-       {\r
-               showCSH(document.location.hash.substring(1));\r
-       }\r
-\r
-       if(gsJava=="false")\r
-               window.moveTo(screen.width,screen.height);\r
-}\r
-//-->\r
-</script>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whcshdata.htm b/doc/salome/gui/GUI/whcshdata.htm
deleted file mode 100755 (executable)
index 2832d87..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-<html>\r
-<head>\r
-<title>GUI Module Reference Manual</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<body>\r
-<script language="javascript1.2" src="whver.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="JavaScript">\r
-<!--\r
-var gaCsh=new Array();\r
-\r
-var gaWindow=new Array();\r
-\r
-var gaRmtProj=new Array();\r
-\r
-var gsProjPath=_getPath(document.location.href);\r
-\r
-function CshEntityItem(strAliasId,nTopicNum,strUrl)\r
-{\r
-       this.strAliasId=strAliasId;\r
-       this.nTopicNum=nTopicNum;\r
-       this.strUrl=strUrl;\r
-}\r
-\r
-function CshWindow(sWName,bBUseDefault,nWBOptions,sWBLeft,sWBTop,sWBWidth,sWBHeight,sWCaption,nWPanes,nWPOptions,sWPButtons,sWPDefBtn)\r
-{\r
-       this.sName=sWName;\r
-       this.bUseDefault=bBUseDefault;\r
-       if(!this.bUseDefault)\r
-       {\r
-               this.nBOptions=nWBOptions;\r
-               this.sBLeft=sWBLeft;\r
-               this.sBTop=sWBTop;\r
-               this.sBWidth=sWBWidth;\r
-               this.sBHeight=sWBHeight;\r
-       }\r
-       this.sCaption=sWCaption;\r
-       this.nPanes=nWPanes;\r
-       if(this.nPanes==2)\r
-       {\r
-               this.nPOptions=nWPOptions;\r
-               this.sPButtons=sWPButtons;\r
-               this.sPDefBtn=sWPDefBtn;\r
-       }\r
-}\r
-\r
-function addRemoteProject(sPath)\r
-{\r
-       if(sPath.length!=0)\r
-       {\r
-               if(sPath.lastIndexOf("/")!=sPath.length-1)\r
-                       sPath+="/";\r
-               gaRmtProj[gaRmtProj.length]=sPath;      \r
-       }\r
-}\r
-\r
-//Set Context-sensitive help entity...\r
-function SetCsh(n,strAliasId,nTopicNum,strUrl)\r
-{\r
-       gaCsh[n]=new CshEntityItem(strAliasId,nTopicNum,strUrl);\r
-}\r
-\r
-function addWindow(sWName,bBUseDefault,nWBOptions,sWBLeft,sWBTop,sWBWidth,sWBHeight,sWCaption,nWPanes,nWPOptions,sWPButtons,sWPDefBtn)\r
-{\r
-       gaWindow[gaWindow.length]=new CshWindow(sWName,bBUseDefault,nWBOptions,sWBLeft,sWBTop,sWBWidth,sWBHeight,sWCaption,nWPanes,nWPOptions,sWPButtons,sWPDefBtn);\r
-}\r
-\r
-\r
-\r
-\r
-\r
-window.onload=window_OnLoad;\r
-\r
-function window_OnLoad()\r
-{\r
-       if(parent&&parent!=this&&parent.putCshData)\r
-       {\r
-               parent.putCshData(gsProjPath,gaCsh,gaWindow,gaRmtProj);\r
-       }\r
-}\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/whd_dpns.htm b/doc/salome/gui/GUI/whd_dpns.htm
deleted file mode 100755 (executable)
index 1bca236..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<html>\r
-<head>\r
-<title>Navigator Pane</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<body border=0 topmargin=0 bottommargin=0 rightmargin=0 leftmargin=0 scroll=no>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whphost.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gsNavReDirect="whgdata/whnvp30.htm";\r
-var gbReDirectThis=false;\r
-  var bPreferXML             = false;\r
-  var strProjectFileXML =  "whproj.xml";\r
-  var strProjectFileHTM =  "whproj.htm";       \r
-if(window.gbWhPHost)\r
-{\r
-         addProject(bPreferXML, strProjectFileXML, strProjectFileHTM);\r
-         addPane("toc","whtdhtml.htm");\r
-  addPane("fts","whfdhtml.htm");\r
-  addPane("glo","whgdhtml.htm");\r
-  setShowPane("toc");\r
-\r
-}\r
-else\r
-       document.location.reload();\r
-\r
-if (window.gbNav6)\r
-{\r
-       var oMsg=new whMessage(WH_MSG_RELOADNS6,this, 1,null);\r
-       SendMessage(oMsg);\r
-}\r
-\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whd_hide0.gif b/doc/salome/gui/GUI/whd_hide0.gif
deleted file mode 100755 (executable)
index 97ea0bb..0000000
Binary files a/doc/salome/gui/GUI/whd_hide0.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_hide1.gif b/doc/salome/gui/GUI/whd_hide1.gif
deleted file mode 100755 (executable)
index 97ea0bb..0000000
Binary files a/doc/salome/gui/GUI/whd_hide1.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_hide2.gif b/doc/salome/gui/GUI/whd_hide2.gif
deleted file mode 100755 (executable)
index 97ea0bb..0000000
Binary files a/doc/salome/gui/GUI/whd_hide2.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_next0.gif b/doc/salome/gui/GUI/whd_next0.gif
deleted file mode 100755 (executable)
index d92dda5..0000000
Binary files a/doc/salome/gui/GUI/whd_next0.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_next1.gif b/doc/salome/gui/GUI/whd_next1.gif
deleted file mode 100755 (executable)
index d92dda5..0000000
Binary files a/doc/salome/gui/GUI/whd_next1.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_next2.gif b/doc/salome/gui/GUI/whd_next2.gif
deleted file mode 100755 (executable)
index d92dda5..0000000
Binary files a/doc/salome/gui/GUI/whd_next2.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_nvp10.htm b/doc/salome/gui/GUI/whd_nvp10.htm
deleted file mode 100755 (executable)
index 30f060c..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<html>\r
-<head>\r
-<title>Navigation Pane</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-</head>\r
-<frameset rows="30, *" border="0" frameborder="0">\r
-       <frame name="navtabs" title="tab selection frame" src="whd_tabs.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
-       <frame name="navpane title="navigation frame" src="whd_dpns.htm" ></frame>\r
-</frameset>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whd_nvp20.htm b/doc/salome/gui/GUI/whd_nvp20.htm
deleted file mode 100755 (executable)
index c5754bc..0000000
+++ /dev/null
@@ -1,334 +0,0 @@
-<html>\r
-<head>\r
-<title>navigation pane</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gsInitPane="toc";\r
-var gsCurrentPane="";\r
-var gbLoading = "unknown";\r
-var gbTryTime = 0;\r
-var gbMaxTryTime = 6;\r
-var gbPassPhase0 = 0;\r
-var gbretried = 0;\r
-var gbmaxretry = 3;\r
-var gbretrytime = new Array();\r
-\r
-var origWidth = 0;\r
-var origHeight = 0;\r
-\r
-gbretrytime[0]= 5000;\r
-gbretrytime[1]= 30000;\r
-gbretrytime[2]= 60000;\r
-\r
-function addPane(sName, sFile)\r
-{\r
-}\r
-\r
-function setShowPane(sName)\r
-{\r
-       gsInitPane=sName;\r
-}\r
-\r
-  addPane("toc","whtdhtml.htm");\r
-  addPane("fts","whfdhtml.htm");\r
-  addPane("glo","whgdhtml.htm");\r
-  setShowPane("toc");\r
-\r
-\r
-function window_unload()\r
-{\r
-       UnRegisterListener2(this, WH_MSG_SHOWTOC);\r
-       UnRegisterListener2(this, WH_MSG_SHOWIDX);\r
-       UnRegisterListener2(this, WH_MSG_SHOWFTS);\r
-       UnRegisterListener2(this, WH_MSG_SHOWGLO);\r
-       UnRegisterListener2(this, WH_MSG_SYNCTOC);\r
-       UnRegisterListener2(this, WH_MSG_SEARCHTHIS);\r
-       UnRegisterListener2(this, WH_MSG_GETPANEINFO);\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
-       var bHidePane=false;\r
-       var oMsg=new whMessage(WH_MSG_GETCMD,this,1,null);\r
-       if (SendMessage(oMsg))\r
-       {\r
-               if(oMsg.oParam>0)\r
-               {\r
-                       if(oMsg.oParam==1)\r
-                               gsInitPane="toc";\r
-                       else if(oMsg.oParam==2)\r
-                               gsInitPane="idx";\r
-                       else if(oMsg.oParam==3)\r
-                               gsInitPane="fts";\r
-                       else if(oMsg.oParam==4)\r
-                               gsInitPane="glo";\r
-               }\r
-               else if(oMsg.oParam==0)\r
-               {\r
-                       bHidePane=true;\r
-               }\r
-       }\r
-       if (bHidePane)\r
-       {\r
-               oMsg=new whMessage(WH_MSG_HIDEPANE,this,1,null)\r
-               SendMessage(oMsg);\r
-       }\r
-       else if (gsInitPane == "toc")\r
-       {\r
-               oMsg=new whMessage(WH_MSG_SHOWTOC,this,1,null)\r
-               SendMessage(oMsg);      \r
-       }\r
-       else if (gsInitPane=="idx")\r
-       {\r
-               oMsg=new whMessage(WH_MSG_SHOWIDX,this,1,null)\r
-               SendMessage(oMsg);      \r
-       }\r
-       else if (gsInitPane=="fts")\r
-       {\r
-               oMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null)\r
-               SendMessage(oMsg);      \r
-       }\r
-       else if (gsInitPane=="glo")\r
-       {\r
-               oMsg=new whMessage(WH_MSG_SHOWGLO,this,1,null)\r
-               SendMessage(oMsg);      \r
-       }\r
-}\r
-\r
-function CheckLoadingPhase0()\r
-{\r
-       if (!gbPassPhase0) {\r
-               setTimeout("CheckLoadingPhase0()", 1000);\r
-               document.applets[0];\r
-               gbPassPhase0 = 1;\r
-       }\r
-       else {\r
-               CheckLoadingPhase1();\r
-       }\r
-}\r
-\r
-function CheckLoadingPhase1()\r
-{\r
-       if (gbNav4) {\r
-               if ("unknown" == gbLoading && document.readystate < 4) {\r
-                       setTimeout("CheckLoadingPhase1()", 1000);\r
-               }\r
-               else if ("unknown" == gbLoading) {\r
-                       CheckLoadingPhase2();\r
-               }\r
-       }\r
-}\r
-\r
-function CheckLoadingPhase2()\r
-{\r
-       if (gbNav4) {\r
-               gbTryTime ++;\r
-               if ("unknown" == gbLoading) {\r
-                       if (gbTryTime <= gbMaxTryTime )\r
-                               setTimeout("CheckLoadingPhase2()", 1000);\r
-                       else {\r
-                               if (gnVerMinor != 4.60) {\r
-                                       alert("Unable to load applet. If you are using an old version of Netscape, the prefs.js file needs to be edited.");\r
-                               }\r
-                       }       \r
-               }\r
-       }\r
-}\r
-\r
-function CheckAppletLoaded()\r
-{\r
-       if (typeof(document.webhelp) == "undefined")\r
-       {\r
-               document.location.reload();\r
-               if (gbretried < gbmaxretry)\r
-               {\r
-                       gbretried ++;\r
-                       setTimeout("CheckAppletLoaded();", gbretrytime[gbretried]);\r
-               }\r
-       }\r
-}\r
-\r
-function reDo() \r
-{\r
-       if (innerWidth != origWidth || innerHeight != origHeight)  \r
-       {\r
-               //reloaded applet if nessary\r
-               gbretried = 0;\r
-\r
-               if (gnVerMinor == 4.60) \r
-               {\r
-                       //reload the applet again.\r
-                       document.location.reload();\r
-                       gbretried ++;\r
-               }\r
-               setTimeout("CheckAppletLoaded();", gbretrytime[gbretried]);\r
-       }\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       if (oMsg)\r
-       {       \r
-               var nMsgId = oMsg.nMessageId;\r
-               var WebHelpApplet = null;\r
-               if (gbNav4)\r
-               {\r
-                       WebHelpApplet = document.applets["WebHelp"];\r
-                       if (!WebHelpApplet.Command)\r
-                               document.location="whgdata/whnvp30.htm";\r
-               }\r
-               else\r
-                       WebHelpApplet = WebHelp;\r
-\r
-               if(nMsgId==WH_MSG_GETPANEINFO)\r
-               {\r
-                       oMsg.oParam=gsCurrentPane;\r
-                       return false;\r
-               }\r
-               else if (gbLoading!="unknown"||gbNav6)\r
-               {\r
-                       if (nMsgId == WH_MSG_SHOWTOC)\r
-                       {\r
-                               gsCurrentPane="toc";\r
-                               WebHelpApplet .Command("Contents", null);\r
-                               var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "toc");\r
-                               SendMessage(onMsg);\r
-                               onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
-                               SendMessage(onMsg);\r
-                       }\r
-                       else if (nMsgId == WH_MSG_SHOWIDX)\r
-                       {\r
-                               gsCurrentPane="idx";\r
-                               WebHelpApplet .Command("Index", null);\r
-                               var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "idx");\r
-                               SendMessage(onMsg);\r
-                               onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
-                               SendMessage(onMsg);\r
-                       }\r
-                       else if (nMsgId == WH_MSG_SHOWFTS)\r
-                       {\r
-                               gsCurrentPane="fts";\r
-                               WebHelpApplet .Command("Search", null);\r
-                               var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "fts");\r
-                               SendMessage(onMsg);\r
-                               onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
-                               SendMessage(onMsg);\r
-                       }\r
-                       else if (nMsgId == WH_MSG_SHOWGLO)\r
-                       {\r
-                               gsCurrentPane="glo";\r
-                               WebHelpApplet .Command("Glossary", null);\r
-                               var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "glo");\r
-                               SendMessage(onMsg);\r
-                               onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
-                               SendMessage(onMsg);\r
-                       }\r
-                       else if (nMsgId == WH_MSG_SYNCTOC)\r
-                       {\r
-                               gsCurrentPane="toc";\r
-                               var oTopicParam = oMsg.oParam;\r
-                               if (oTopicParam && oTopicParam.aPaths && oTopicParam.aPaths.length > 0 && oTopicParam.sPPath)\r
-                               {\r
-                                       var sPPath = _browserStringToText(oTopicParam.sPPath);\r
-                                       var sParam = "";\r
-                                       for (var i = 0; i < oTopicParam.aPaths.length; i ++)\r
-                                       {\r
-                                               sParam += oTopicParam.aPaths[i] + "\r\r";\r
-                                       }\r
-                                       WebHelpApplet.Command("SyncToc", sPPath,  sParam);\r
-                               }\r
-                       }\r
-                       else if(nMsgId==WH_MSG_SEARCHTHIS)\r
-                       {\r
-                               gsCurrentPane="fts";\r
-                               WebHelpApplet .Command("Search", oMsg.oParam);\r
-                               var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "fts");\r
-                               SendMessage(onMsg);\r
-                               onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
-                               SendMessage(onMsg);\r
-                       }\r
-               }\r
-       }\r
-       return true;\r
-}\r
-\r
-function getInitTocInfo()\r
-{\r
-       // send message ask for the first time sync toc info.\r
-       var oParam = new Object();\r
-       oParam.oTocInfo = null;\r
-       var oMsg = new whMessage(WH_MSG_GETTOCPATHS, this, 1, oParam);\r
-       if (SendMessage(oMsg ))\r
-       {\r
-               var oTopicParam = oMsg.oParam.oTocInfo;\r
-               if (oTopicParam && oTopicParam.aPaths && oTopicParam.aPaths.length > 0 && oTopicParam.sPPath)\r
-               {\r
-                       var sPPath = _browserStringToText(oTopicParam.sPPath);\r
-                       var sParam = "";\r
-                       for (var i = 0; i < oTopicParam.aPaths.length; i ++)\r
-                       {\r
-                               sParam += oTopicParam.aPaths[i] + "\r\r";\r
-                       }\r
-                       var WebHelpApplet;\r
-                       if (gbNav4)\r
-                               WebHelpApplet = document.applets["WebHelp"];\r
-                       else\r
-                               WebHelpApplet = WebHelp;\r
-                       WebHelpApplet.Command("SyncToc", sPPath,  sParam);\r
-               }\r
-       }\r
-}\r
-\r
-if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
-{\r
-       RegisterListener2(this, WH_MSG_SHOWTOC);\r
-       RegisterListener2(this, WH_MSG_SHOWIDX);\r
-       RegisterListener2(this, WH_MSG_SHOWFTS);\r
-       RegisterListener2(this, WH_MSG_SHOWGLO);\r
-       RegisterListener2(this, WH_MSG_SYNCTOC);\r
-       RegisterListener2(this, WH_MSG_SEARCHTHIS);\r
-       RegisterListener2(this, WH_MSG_GETPANEINFO);\r
-\r
-       window.onunload = window_unload;\r
-       window.onload=window_OnLoad;\r
-       window.onerror = null;\r
-       var gbWindows = ((gAgent.indexOf("win") != -1) || (gAgent.indexOf("16bit") != -1));\r
-\r
-       if (gbNav4 && !gbNav6 && gbWindows) {\r
-               setTimeout("CheckLoadingPhase0()", 1000);\r
-       }\r
-\r
-       if (gbNav4) \r
-       {\r
-               origWidth = innerWidth;\r
-               origHeight = innerHeight;\r
-               onresize = reDo;\r
-       }\r
-}\r
-else\r
-       document.location.reload();\r
-\r
-if (window.gbNav6)\r
-{\r
-       var oMsg=new whMessage(WH_MSG_RELOADNS6,this, 1,null);\r
-       SendMessage(oMsg);\r
-}\r
-\r
-//-->\r
-</script>\r
-</head>\r
-<body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" bgcolor="c0c0c0">\r
-<applet code=WebHelp.class name=WebHelp  archive=webhelp.jar width=100% height=100% MAYSCRIPT hspace=0 vspace=0>\r
-<PARAM name=ProjectFile value=whproj.xml><PARAM name=ResourceFile value=whres.xml>\r
-<PARAM name=Frame value=bsscright>\r
-<PARAM name=cabbase value=webhelp.cab>\r
-</applet>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/whd_prev0.gif b/doc/salome/gui/GUI/whd_prev0.gif
deleted file mode 100755 (executable)
index 518561a..0000000
Binary files a/doc/salome/gui/GUI/whd_prev0.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_prev1.gif b/doc/salome/gui/GUI/whd_prev1.gif
deleted file mode 100755 (executable)
index 518561a..0000000
Binary files a/doc/salome/gui/GUI/whd_prev1.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_prev2.gif b/doc/salome/gui/GUI/whd_prev2.gif
deleted file mode 100755 (executable)
index 518561a..0000000
Binary files a/doc/salome/gui/GUI/whd_prev2.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_show0.gif b/doc/salome/gui/GUI/whd_show0.gif
deleted file mode 100755 (executable)
index 60e8e68..0000000
Binary files a/doc/salome/gui/GUI/whd_show0.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_show1.gif b/doc/salome/gui/GUI/whd_show1.gif
deleted file mode 100755 (executable)
index 60e8e68..0000000
Binary files a/doc/salome/gui/GUI/whd_show1.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_show2.gif b/doc/salome/gui/GUI/whd_show2.gif
deleted file mode 100755 (executable)
index 60e8e68..0000000
Binary files a/doc/salome/gui/GUI/whd_show2.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_sync0.gif b/doc/salome/gui/GUI/whd_sync0.gif
deleted file mode 100755 (executable)
index 1a9785c..0000000
Binary files a/doc/salome/gui/GUI/whd_sync0.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_sync1.gif b/doc/salome/gui/GUI/whd_sync1.gif
deleted file mode 100755 (executable)
index 1a9785c..0000000
Binary files a/doc/salome/gui/GUI/whd_sync1.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_sync2.gif b/doc/salome/gui/GUI/whd_sync2.gif
deleted file mode 100755 (executable)
index 1a9785c..0000000
Binary files a/doc/salome/gui/GUI/whd_sync2.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_tab0.gif b/doc/salome/gui/GUI/whd_tab0.gif
deleted file mode 100755 (executable)
index 955c42f..0000000
Binary files a/doc/salome/gui/GUI/whd_tab0.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_tab1.gif b/doc/salome/gui/GUI/whd_tab1.gif
deleted file mode 100755 (executable)
index b3ec41d..0000000
Binary files a/doc/salome/gui/GUI/whd_tab1.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_tab2.gif b/doc/salome/gui/GUI/whd_tab2.gif
deleted file mode 100755 (executable)
index 08fb0ce..0000000
Binary files a/doc/salome/gui/GUI/whd_tab2.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_tab3.gif b/doc/salome/gui/GUI/whd_tab3.gif
deleted file mode 100755 (executable)
index 1819c8e..0000000
Binary files a/doc/salome/gui/GUI/whd_tab3.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_tab4.gif b/doc/salome/gui/GUI/whd_tab4.gif
deleted file mode 100755 (executable)
index 1a6fc4f..0000000
Binary files a/doc/salome/gui/GUI/whd_tab4.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_tab5.gif b/doc/salome/gui/GUI/whd_tab5.gif
deleted file mode 100755 (executable)
index 9340192..0000000
Binary files a/doc/salome/gui/GUI/whd_tab5.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_tab6.gif b/doc/salome/gui/GUI/whd_tab6.gif
deleted file mode 100755 (executable)
index fe312d2..0000000
Binary files a/doc/salome/gui/GUI/whd_tab6.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_tab7.gif b/doc/salome/gui/GUI/whd_tab7.gif
deleted file mode 100755 (executable)
index 3b95ae2..0000000
Binary files a/doc/salome/gui/GUI/whd_tab7.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_tab8.gif b/doc/salome/gui/GUI/whd_tab8.gif
deleted file mode 100755 (executable)
index c80acc8..0000000
Binary files a/doc/salome/gui/GUI/whd_tab8.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_tabs.htm b/doc/salome/gui/GUI/whd_tabs.htm
deleted file mode 100755 (executable)
index 1568f57..0000000
+++ /dev/null
@@ -1,533 +0,0 @@
-<HTML>\r
-<HEAD>\r
-<TITLE>WebHelp Tabs Frame in Navigation Pane</TITLE>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<!-- WebHelp version 5.10 -->\r
-</HEAD>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gsBgColor="#c0c0c0"\r
-var gsBgImage="";\r
-var gnCurPane=0;\r
-var gsFirstPane="";\r
-var goTocFont=null;\r
-var goIdxFont=null;\r
-var goFtsFont=null;\r
-var goGloFont=null;\r
-var gPane=new Array();\r
-var gShowFirst=0;\r
-var gnTabType=0;\r
-\r
-function window_unload()\r
-{\r
-       UnRegisterListener2(this,WH_MSG_SHOWTOC);\r
-       UnRegisterListener2(this,WH_MSG_SHOWIDX);\r
-       UnRegisterListener2(this,WH_MSG_SHOWFTS);\r
-       UnRegisterListener2(this,WH_MSG_SHOWGLO);\r
-}\r
-\r
-\r
-function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
-       var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
-       if(sType=="Toc") goTocFont=vFont;\r
-       else if(sType=="Idx") goIdxFont=vFont;\r
-       else if(sType=="Fts") goFtsFont=vFont;\r
-       else if(sType=="Glo") goGloFont=vFont;\r
-}\r
-\r
-function TocWriteClassStyle()\r
-{\r
-       var sStyle="<STYLE TYPE='text/css'>";\r
-       sStyle+=".TextTabToc {"+getFontStyle(goTocFont)+"}";\r
-       sStyle+=".TextTabIdx {"+getFontStyle(goIdxFont)+"}";\r
-       sStyle+=".TextTabFts {"+getFontStyle(goFtsFont)+"}";\r
-       sStyle+=".TextTabGlo {"+getFontStyle(goGloFont)+"}";\r
-       sStyle+="A:hover {text-decoration:underline;}";\r
-       sStyle+="</STYLE>";\r
-       document.write(sStyle);\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
-       if(sBgColor!=null&&sBgColor.length>0)\r
-               gsBgColor=sBgColor;\r
-}\r
-\r
-function setBackground(sBgImage)\r
-{\r
-       if(sBgImage!=null&&sBgImage.length>0)\r
-               gsBgImage=sBgImage;\r
-}\r
-\r
-function selectToc()\r
-{\r
-       var oMessage=new whMessage(WH_MSG_SHOWTOC,this,1,null);\r
-       SendMessage(oMessage);\r
-}\r
-\r
-function selectIdx()\r
-{\r
-       var oMessage=new whMessage(WH_MSG_SHOWIDX,this,1,null);\r
-       SendMessage(oMessage);\r
-}\r
-function selectFts()\r
-{\r
-       var oMessage=new whMessage(WH_MSG_SHOWFTS,this,1,null);\r
-       SendMessage(oMessage);\r
-}\r
-\r
-function selectGlo()\r
-{\r
-       var oMessage=new whMessage(WH_MSG_SHOWGLO,this,1,null);\r
-       SendMessage(oMessage);\r
-}\r
-\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       if(oMsg)\r
-       {\r
-               var nMsgId=oMsg.nMessageId;\r
-               if(nMsgId==WH_MSG_SHOWTOC)\r
-               {\r
-                       setTimeout("showTabByName(\"toc\");",1);\r
-               }\r
-               else if(nMsgId==WH_MSG_SHOWIDX)\r
-               {\r
-                       setTimeout("showTabByName(\"idx\");",1);\r
-               }\r
-               else if(nMsgId==WH_MSG_SHOWFTS)\r
-               {\r
-                       setTimeout("showTabByName(\"fts\");",1);\r
-               }\r
-               else if(nMsgId==WH_MSG_SHOWGLO)\r
-               {\r
-                       setTimeout("showTabByName(\"glo\");",1);\r
-               }\r
-       }\r
-       return true;\r
-}\r
-\r
-function showTabByName(sTabName)\r
-{\r
-       for(var i=0;i<gPane.length;i++)\r
-       {\r
-               if(gPane[i]==sTabName)\r
-               {\r
-                       showTab(i);\r
-                       break;\r
-               }\r
-       }\r
-}\r
-\r
-function showTab(n)\r
-{\r
-       gnCurPane=n;\r
-       if(gnTabType==0)\r
-       {\r
-               if(n<gPane.length)\r
-               {\r
-                       if(document.images["TocTab"]&&document.images["TocTab"]!=null){\r
-                               if(gPane[n]=="toc")\r
-                                       document.images["TocTab"].src=getBtnImage("toc",1);\r
-                               else\r
-                                       document.images["TocTab"].src=getBtnImage("toc",0);\r
-                       }\r
-                       if(document.images["IndexTab"]&&document.images["IndexTab"]!=null){\r
-                               if(gPane[n]=="idx")\r
-                                       document.images["IndexTab"].src=getBtnImage("idx",1);\r
-                               else\r
-                                       document.images["IndexTab"].src=getBtnImage("idx",0);\r
-                       }\r
-                       if(document.images["FtsTab"]&&document.images["FtsTab"]!=null){\r
-                               if(gPane[n]=="fts")\r
-                                       document.images["FtsTab"].src=getBtnImage("fts",1);\r
-                               else\r
-                                       document.images["FtsTab"].src=getBtnImage("fts",0);\r
-                       }\r
-                       if(document.images["GloTab"]&&document.images["GloTab"]!=null){\r
-                               if(gPane[n]=="glo")\r
-                                       document.images["GloTab"].src=getBtnImage("glo",1);\r
-                               else\r
-                                       document.images["GloTab"].src=getBtnImage("glo",0);\r
-                       }\r
-               }\r
-       }\r
-       else if(gnTabType==1)\r
-       {\r
-       }\r
-       else if(gnTabType==2)\r
-       {\r
-               if(n<gPane.length)\r
-               {\r
-                       if(document.images["tabSelection"]!=null)\r
-                               document.images["tabSelection"].src=getMapImage(gPane[n]);\r
-               }\r
-       }\r
-}\r
-\r
-function addPane(sName)\r
-{\r
-       gPane[gPane.length]=sName;\r
-}\r
-\r
-function setShowPane(sName)\r
-{\r
-       if(gsFirstPane!="")\r
-               sName=gsFirstPane;\r
-       for(var i=0;i<gPane.length;i++)\r
-       {\r
-               if(gPane[i]==sName)\r
-                       gShowFirst=i;\r
-       }\r
-}\r
-\r
-function selectDefaultTab()\r
-{\r
-       showTab(gShowFirst);\r
-       if(document.body)\r
-       {\r
-               if(gsBgImage&&gsBgImage.length>0)\r
-               {\r
-                       document.body.background=gsBgImage;\r
-               }\r
-               if(gsBgColor&&gsBgColor.length>0)\r
-               {\r
-                       document.body.bgColor=gsBgColor;\r
-               }\r
-       }\r
-}\r
-\r
-function getTabsHTML()\r
-{\r
-       var sHTML="";\r
-       for(var i=0;i<gPane.length;i++)\r
-       {\r
-               if(gnTabType==0)\r
-                       sHTML+=getTabHTML(gPane[i]);\r
-               else if(gnTabType==1)\r
-               {\r
-                       if(sHTML.length>0)\r
-                       {\r
-                               sHTML+=getSeparator();\r
-                       }\r
-                       sHTML+=getTabHTMLText(gPane[i]);\r
-               }\r
-\r
-       }\r
-       return sHTML;\r
-}\r
-\r
-function getSeparator()\r
-{\r
-       var sSep="";\r
-       \r
-       return sSep;\r
-}\r
-\r
-function getTabHTML(sTabName)\r
-{\r
-       if (sTabName == "toc")\r
-               return "<a title=\"Contents\" href=\"javascript:void(0);\" onclick=\"selectToc();return false;\" onmouseover=\"mouseOverToc();\" onmouseout=\"mouseOutToc();\"><img name=\"TocTab\" src=\"" + getBtnImage(sTabName, 0) + "\" border=\"0\"></a>";\r
-       else if (sTabName =="idx")\r
-               return "<a title=\"Index\" href=\"javascript:void(0);\" onclick=\"selectIdx();return false;\" onmouseover=\"mouseOverIdx();\" onmouseout=\"mouseOutIdx();\"><img name=\"IndexTab\" src=\"" + getBtnImage(sTabName, 0) + "\" border=\"0\"></a>";\r
-       else if (sTabName == "fts")\r
-               return "<a title=\"Search\" href=\"javascript:void(0);\" onclick=\"selectFts();return false;\" onmouseover=\"mouseOverFts();\" onmouseout=\"mouseOutFts();\"><img name=\"FtsTab\" src=\"" + getBtnImage(sTabName, 0) + "\" border=\"0\"></a>";\r
-       else if (sTabName == "glo")\r
-               return "<a title=\"Glossary\" href=\"javascript:void(0);\" onclick=\"selectGlo();return false;\"onmouseover=\"mouseOverGlo();\" onmouseout=\"mouseOutGlo();\"><img name=\"GloTab\" src=\"" + getBtnImage(sTabName, 0) + "\" border=\"0\"></a>";\r
-       return "";\r
-}\r
-\r
-function mouseOverToc()\r
-{\r
-       var sImg = "";\r
-       if (gPane[gnCurPane] == "toc")\r
-       {\r
-               sImg = getBtnImage("toc", 3);\r
-       }\r
-       else\r
-       {\r
-               sImg = getBtnImage("toc", 2);\r
-       }\r
-       if (sImg.length > 0)\r
-               document.images["TocTab"].src = sImg;\r
-}\r
-\r
-function mouseOverIdx()\r
-{\r
-       var sImg = "";\r
-       if (gPane[gnCurPane] == "idx")\r
-       {\r
-               sImg = getBtnImage("idx", 3);\r
-       }\r
-       else\r
-       {\r
-               sImg = getBtnImage("idx", 2);\r
-       }\r
-       if (sImg.length > 0)\r
-               document.images["IndexTab"].src = sImg;\r
-}\r
-\r
-function mouseOverFts()\r
-{\r
-       var sImg = "";\r
-       if (gPane[gnCurPane] == "fts")\r
-       {\r
-               sImg = getBtnImage("fts", 3);\r
-       }\r
-       else\r
-       {\r
-               sImg = getBtnImage("fts", 2);\r
-       }\r
-       if (sImg.length > 0)\r
-               document.images["FtsTab"].src = sImg;\r
-}\r
-\r
-function mouseOverGlo()\r
-{\r
-       var sImg = "";\r
-       if (gPane[gnCurPane] == "glo")\r
-       {\r
-               sImg = getBtnImage("glo", 3);\r
-       }\r
-       else\r
-       {\r
-               sImg = getBtnImage("glo", 2);\r
-       }\r
-       if (sImg.length > 0)\r
-               document.images["GloTab"].src = sImg;\r
-}\r
-\r
-function mouseOutToc()\r
-{\r
-       var sImg = "";\r
-       if (gPane[gnCurPane] == "toc")\r
-       {\r
-               sImg = getBtnImage("toc", 1);\r
-       }\r
-       else\r
-       {\r
-               sImg = getBtnImage("toc", 0);\r
-       }\r
-       if (sImg.length > 0)\r
-               document.images["TocTab"].src = sImg;\r
-}\r
-\r
-function mouseOutIdx()\r
-{\r
-       var sImg = "";\r
-       if (gPane[gnCurPane] == "idx")\r
-       {\r
-               sImg = getBtnImage("idx", 1);\r
-       }\r
-       else\r
-       {\r
-               sImg = getBtnImage("idx", 0);\r
-       }\r
-       if (sImg.length > 0)\r
-               document.images["IndexTab"].src = sImg;\r
-}\r
-\r
-function mouseOutFts()\r
-{\r
-       var sImg = "";\r
-       if (gPane[gnCurPane] == "fts")\r
-       {\r
-               sImg = getBtnImage("fts", 1);\r
-       }\r
-       else\r
-       {\r
-               sImg = getBtnImage("fts", 0);\r
-       }\r
-       if (sImg.length > 0)\r
-               document.images["FtsTab"].src = sImg;\r
-}\r
-\r
-function mouseOutGlo()\r
-{\r
-       var sImg = "";\r
-       if (gPane[gnCurPane] == "glo")\r
-       {\r
-               sImg = getBtnImage("glo", 1);\r
-       }\r
-       else\r
-       {\r
-               sImg = getBtnImage("glo", 0);\r
-       }\r
-       if (sImg.length > 0)\r
-               document.images["GloTab"].src = sImg;\r
-}\r
-\r
-function getTabHTMLText(sTabName)\r
-{\r
-       if (sTabName == "toc")\r
-               return "<a class=\"TextTabToc\" href=\"javascript:void(0);\" onclick=\"selectToc();return false;\">Contents</a>&nbsp;";\r
-       else if (sTabName =="idx")\r
-               return "<a class=\"TextTabIdx\" href=\"javascript:void(0);\" onclick=\"selectIdx();return false;\">Index</a>&nbsp;";\r
-       else if (sTabName == "fts")\r
-               return "<a class=\"TextTabFts\" href=\"javascript:void(0);\" onclick=\"selectFts();return false;\">Search</a>&nbsp;";\r
-       else if (sTabName == "glo")\r
-               return "<a class=\"TextTabGlo\" href=\"javascript:void(0);\" onclick=\"selectGlo();return false;\">Glossary</a>&nbsp;";\r
-       return "";\r
-}\r
-\r
-function getImageMap()\r
-{\r
-       var sHTML = "<map name=\"tabSelectionMap\">";\r
-       for (var i = 0; i < gPane.length; i ++)\r
-       {\r
-               sHTML += getMapArea(gPane[i]);\r
-       }\r
-       sHTML += "</map>";\r
-       return sHTML;\r
-}\r
-\r
-function getMapArea(sTabName)\r
-{\r
-       if (sTabName == "toc")\r
-               return "<area title=\"Contents\" shape=\"\" coords=\"\" href=\"javascript:void(0);\" onclick=\"selectToc();return false;\">";\r
-       else if (sTabName =="idx")\r
-               return "<area title=\"Index\" shape=\"\" coords=\"\" href=\"javascript:void(0);\" onclick=\"selectIdx();return false;\">";\r
-       else if (sTabName == "fts")\r
-               return "<area title=\"Search\" shape=\"\" coords=\"\" href=\"javascript:void(0);\" onclick=\"selectFts();return false;\">";\r
-       else if (sTabName == "glo")\r
-               return "<area title=\"Glossary\" shape=\"\" coords=\"\" href=\"javascript:void(0);\" onclick=\"selectGlo();return false;\">";\r
-       return "";\r
-}\r
-\r
-function getBtnImage(sTabName, nStatus)\r
-{\r
-       if (sTabName == "toc")\r
-       {\r
-               if (nStatus == 0)\r
-                       return "whd_tab2.gif";\r
-               else if (nStatus == 1)\r
-                       return "whd_tab1.gif";\r
-               else if (nStatus == 2)\r
-                       return "";\r
-               else if (nStatus == 3)\r
-                       return "";\r
-       }\r
-       else if (sTabName =="idx")\r
-       {\r
-               if (nStatus == 0)\r
-                       return "whd_tab4.gif";\r
-               else if (nStatus == 1)\r
-                       return "whd_tab3.gif";\r
-               else if (nStatus == 2)\r
-                       return "";\r
-               else if (nStatus == 3)\r
-                       return "";\r
-       }\r
-       else if (sTabName == "fts")\r
-       {\r
-               if (nStatus == 0)\r
-                       return "whd_tab6.gif";\r
-               else if (nStatus == 1)\r
-                       return "whd_tab5.gif";\r
-               else if (nStatus == 2)\r
-                       return "";\r
-               else if (nStatus == 3)\r
-                       return "";\r
-       }\r
-       else if (sTabName == "glo")\r
-       {\r
-               if (nStatus == 0)\r
-                       return "whd_tab8.gif";\r
-               else if (nStatus == 1)\r
-                       return "whd_tab7.gif";\r
-               else if (nStatus == 2)\r
-                       return "";\r
-               else if (nStatus == 3)\r
-                       return "";\r
-       }\r
-       return "";\r
-}\r
-\r
-function getMapImage(sTabName)\r
-{\r
-       if (sTabName == "toc")\r
-               return "";\r
-       else if (sTabName =="idx")\r
-               return "";\r
-       else if (sTabName == "fts")\r
-               return "";\r
-       else if (sTabName == "glo")\r
-               return "";\r
-       return "";\r
-}\r
-\r
-if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
-{\r
-       window.onload = selectDefaultTab;\r
-       RegisterListener2(this, WH_MSG_SHOWTOC);\r
-       RegisterListener2(this, WH_MSG_SHOWIDX);\r
-       RegisterListener2(this, WH_MSG_SHOWFTS);\r
-       RegisterListener2(this, WH_MSG_SHOWGLO);\r
-       window.onunload = window_unload;\r
-       goTocFont=new whFont("Arial","9pt","#000000","normal","normal","none");\r
-       goIdxFont=new whFont("Arial","9pt","#000000","normal","normal","none");\r
-       goFtsFont=new whFont("Arial","9pt","#000000","normal","normal","none");\r
-       goGloFont=new whFont("Arial","9pt","#000000","normal","normal","none");\r
-\r
-       if (navigator.currentNavPen)\r
-               gsFirstPane = navigator.currentNavPen;\r
-\r
-       setBackgroundcolor("");\r
-       setBackground("whd_tab0.gif");\r
-       \r
-       \r
-       \r
-       \r
-         addPane("toc","whtdhtml.htm");\r
-  addPane("fts","whfdhtml.htm");\r
-  addPane("glo","whgdhtml.htm");\r
-  setShowPane("toc");\r
-\r
-\r
-       gnTabType = 0; // 0 button. // 1 text. // 2 image mapping.\r
-       TocWriteClassStyle();\r
-       var sHTML = "<body scroll=\"no\" bgcolor=\"#c0c0c0\"    background=\"whd_tab0.gif\" style=\"margin-top:0;margin-bottom:0;margin-left:0;margin-right:0\">";\r
-       if (gPane.length > 0)\r
-       {\r
-               if (gnTabType == 0 || gnTabType == 1)\r
-               {\r
-                       sHTML += "<table width=\"100%\">";\r
-                       sHTML += "<tr>";\r
-                       sHTML += "<td>";\r
-                       sHTML += "<nobr>";\r
-                       sHTML += getTabsHTML();\r
-                       sHTML += "</nobr></td></tr>";\r
-                       sHTML += " <tr><td height=\"2\"></td></tr>";\r
-                       sHTML += "</table>";\r
-               }\r
-               else if (gnTabType == 2)\r
-               {\r
-                       sHTML += getImageMap();\r
-                       sHTML +="<img name=\"tabSelection\" src=\"" + getMapImage(gPane[0]) + "\" x-maintain-ratio=\"true\" usemap=\"#tabSelectionMap\"";\r
-                       if (gbIE)\r
-                               sHTML +=" style=\"border: none; width:px; height:px; float: none;\"";\r
-                       sHTML +=" width=\"\" height=\"\" border=\"0\">";\r
-               }\r
-       }\r
-       sHTML += "</body>";\r
-       document.write(sHTML);\r
-}\r
-else\r
-       document.location.reload();\r
-\r
-if (window.gbNav6)\r
-{\r
-       var oMsg=new whMessage(WH_MSG_RELOADNS6,this, 1,null);\r
-       SendMessage(oMsg);\r
-}\r
-//-->\r
-</script>\r
-</HTML>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whd_toc1.gif b/doc/salome/gui/GUI/whd_toc1.gif
deleted file mode 100755 (executable)
index 1101725..0000000
Binary files a/doc/salome/gui/GUI/whd_toc1.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_toc2.gif b/doc/salome/gui/GUI/whd_toc2.gif
deleted file mode 100755 (executable)
index 975e5f6..0000000
Binary files a/doc/salome/gui/GUI/whd_toc2.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_toc3.gif b/doc/salome/gui/GUI/whd_toc3.gif
deleted file mode 100755 (executable)
index 4b8122f..0000000
Binary files a/doc/salome/gui/GUI/whd_toc3.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_toc4.gif b/doc/salome/gui/GUI/whd_toc4.gif
deleted file mode 100755 (executable)
index 3f9a036..0000000
Binary files a/doc/salome/gui/GUI/whd_toc4.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_topic.xml b/doc/salome/gui/GUI/whd_topic.xml
deleted file mode 100755 (executable)
index a1b0320..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<topictemplate>\r
- <topic type="normal">\r
-  <add tag="head" pos="endbefore" >\r
-   <![CDATA["<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_MESSAGE_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript\" src=\"";SF_VERSION_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_PROXY_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_UTILS_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_TOPIC_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
-       if (window.setRelStartPage)\r
-       {\r
-       ";\r
-         OutputInTopicNavBarDataToc("addTocInfo(\"%s\");\r\n");\r
-         OutputInTopicNavBarDataBrowse("addAvenueInfo(\"%s\",\"%s\",\"%s\");\r\n");\r
-         OutputInTopicNavBarDataButtons("addButton(\"%s\",%s, \"%s\",\"%s\",\"%s\",\"%s\",\"%s\",\"%s\",\"%s\",\"%s\",\"%s\",%d,%d);\r\n");\r
-       "\r
-       }\r
-\r
-\r
-       if (window.setRelStartPage)\r
-       {\r
-       ";\r
-         OutputInTopicNavBarDataHomePage("setRelStartPage(\"%s\");\r\n");\r
-         OutputInTopicNavBarDataWebSearch.href("addSearchFormHref(\"%s\");\r\n");\r
-       "\r
-               autoSync(";WH_USER_OPTIONS.autosync_toc;");\r
-               sendSyncInfo();\r
-               sendAveInfoOut();\r
-       }\r
-\r
-}\r
-else\r
-       if (window.gbIE4)\r
-               document.location.reload();\r
-//-->\r
-</script>\r
-"]]>\r
-  </add>\r
-  <add tag="body" pos="beginafter">\r
-    <![CDATA["<script type=\"text/javascript\" language=\"javascript1.2\">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(";WH_WEBSKIN.topic.bar.top.pos;");\r
-//-->\r
-</script>"]]>  \r
-  </add>\r
-  <add tag="body" pos="endbefore">\r
-   <![CDATA["<script type=\"text/javascript\" language=\"javascript1.2\">\r
-<!--\r
-if (window.writeIntopicBar)\r
-       writeIntopicBar(";WH_WEBSKIN.topic.bar.bottom.pos;");\r
-//-->\r
-</script>";\r
-OutputInTopicNavBarDataWebSearch.form();]]>    \r
-  </add>\r
- </topic>\r
- <topic type="frameset">\r
-  <add tag="head" pos="endbefore" >\r
-   <![CDATA["<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_MESSAGE_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript\" src=\"";SF_VERSION_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_UTILS_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_FRAMESET_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_TOPIC_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\">\r
-<!--\r
-if (window.setRelStartPage)\r
-{\r
-";\r
-  OutputInTopicNavBarDataHomePage("setRelStartPage(\"%s\");\r\n");\r
-  OutputInTopicNavBarDataToc("addTocInfo(\"%s\");\r\n");\r
-  OutputInTopicNavBarDataBrowse("addAvenueInfo(\"%s\",\"%s\",\"%s\");\r\n");\r
-"\r
-if (window.autoSync)\r
-       autoSync(1);\r
-}\r
-//-->\r
-</script>\r
-"]]>\r
-  </add>\r
- </topic>\r
-</topictemplate>\r
diff --git a/doc/salome/gui/GUI/whd_wbsh0.gif b/doc/salome/gui/GUI/whd_wbsh0.gif
deleted file mode 100755 (executable)
index 383688e..0000000
Binary files a/doc/salome/gui/GUI/whd_wbsh0.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_wbsh1.gif b/doc/salome/gui/GUI/whd_wbsh1.gif
deleted file mode 100755 (executable)
index 383688e..0000000
Binary files a/doc/salome/gui/GUI/whd_wbsh1.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whd_wbsh2.gif b/doc/salome/gui/GUI/whd_wbsh2.gif
deleted file mode 100755 (executable)
index 383688e..0000000
Binary files a/doc/salome/gui/GUI/whd_wbsh2.gif and /dev/null differ
diff --git a/doc/salome/gui/GUI/whfbody.htm b/doc/salome/gui/GUI/whfbody.htm
deleted file mode 100755 (executable)
index 5666e1b..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<html>\r
-<head>\r
-<title>Search Result</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<base target="bsscright">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whlang.js"></script>\r
-<script language="javascript1.2" src="whfhost.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-if(window.gbWhFHost)\r
-{\r
-       \r
-       \r
-       setFont("Normal", "Arial","9pt","#000000","normal","normal","none");\r
-       setFont("Error", "Arial","9pt","#000000","normal","normal","none");\r
-       setFont("Hover", "Arial","9pt","#007f00","normal","normal","underline");\r
-       setActiveBgColor("#cccccc");\r
-       setMargin("0pt");\r
-       setIndent("9pt");\r
-       FtsWriteClassStyle();\r
-}\r
-else\r
-       document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" scroll="auto" bgcolor="white">\r
-</body>\r
-</html>\r
-\r
diff --git a/doc/salome/gui/GUI/whfdhtml.htm b/doc/salome/gui/GUI/whfdhtml.htm
deleted file mode 100755 (executable)
index 3742960..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<html>\r
-<head>\r
-<title>Search Frame</TITLE>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script LANGUAGE="javascript1.2">\r
-<!--\r
-var gbIndexLayerInit = false;\r
-var strWrite="";\r
-if (window.gbWhVer&&window.gbWhProxy&&window.gbWhMsg)\r
-{\r
-       if (gbMac)\r
-               strWrite="<FRAMESET ROWS='45,100%' framespacing=0  frameborder=1>";\r
-       else\r
-               strWrite="<FRAMESET ROWS='60,100%' framespacing=0  frameborder=1>";\r
-       strWrite +="<FRAME SRC='whfform.htm' title='search form frame' name='ftsform' noresize='yes' scrolling='no'>";\r
-       strWrite +="<FRAME SRC='whfbody.htm' title='search result frame' name='ftsbody' scrolling='yes'>";\r
-       strWrite +="</FRAMESET>";\r
-       document.write(strWrite);\r
-}\r
-else\r
-       document.location.reload();\r
-//-->\r
-</script>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/whfform.htm b/doc/salome/gui/GUI/whfform.htm
deleted file mode 100755 (executable)
index 87d754e..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-<html>\r
-<head>\r
-<title>Search Form</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<style>\r
-<!--\r
-body {margin:0;}\r
--->\r
-</style>\r
-<body bgcolor="#c0c0c0">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whform.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gstrInput = "";\r
-function ftsLookup(bCR)\r
-{\r
-       if (bCR)\r
-       {\r
-               var strInput = document.FtsInputForm.keywordField.value.toUpperCase();\r
-               if (strInput != "") {\r
-                       var oMsg = new whMessage(WH_MSG_SEARCHFTSKEY, this, 1, strInput);\r
-                       if (!SendMessage(oMsg))\r
-                       {\r
-                               gstrInput = strInput;\r
-                       }\r
-                       else\r
-                               gstrInput = "";\r
-               }\r
-\r
-               if (gbMac) {\r
-                       document.FtsInputForm.keywordField.focus();\r
-               }\r
-       }\r
-       return;\r
-}\r
-\r
-function beforeInit()\r
-{\r
-       var oParam = new Object();\r
-       oParam.sValue = "";\r
-       var oMsg = new whMessage(WH_MSG_GETSEARCHS, this, 1, oParam);\r
-       if (SendMessage(oMsg))\r
-       {\r
-               if (oParam.sValue != "" && oParam.sValue != "- Search -")\r
-               {\r
-                       document.FtsInputForm.keywordField.value = oParam.sValue;\r
-                       gfunLookUp(true);\r
-               }\r
-       }\r
-       init(); \r
-}\r
-\r
-function window_unload()\r
-{\r
-       UnRegisterListener2(this, WH_MSG_SHOWTOC);\r
-       UnRegisterListener2(this, WH_MSG_SHOWIDX);\r
-       UnRegisterListener2(this, WH_MSG_SHOWFTS);\r
-       UnRegisterListener2(this, WH_MSG_SHOWGLO);\r
-       UnRegisterListener2(this, WH_MSG_SEARCHTHIS);\r
-       UnRegisterListener2(this, WH_MSG_BACKUPSEARCH);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       if (oMsg.nMessageId == WH_MSG_SHOWFTS)\r
-       {\r
-               document.FtsInputForm.keywordField.focus();\r
-       }\r
-       else if (oMsg.nMessageId == WH_MSG_SHOWIDX ||\r
-               oMsg.nMessageId == WH_MSG_SHOWTOC || \r
-               oMsg.nMessageId == WH_MSG_SHOWGLO)\r
-       {\r
-               document.FtsInputForm.keywordField.blur();\r
-       }\r
-       else if (oMsg.nMessageId == WH_MSG_SEARCHTHIS)\r
-       {\r
-               if (oMsg.oParam != "- Search -")\r
-               {\r
-                       document.FtsInputForm.keywordField.value = oMsg.oParam;\r
-                       gfunLookUp(true);\r
-               }\r
-       }\r
-       else if (oMsg.nMessageId == WH_MSG_BACKUPSEARCH)\r
-       {\r
-               if (gstrInput)\r
-               {\r
-                       oMsg.oParam = gstrInput;\r
-                       gstrInput = "";\r
-                       return false;\r
-               }\r
-       }\r
-       return true;\r
-}\r
-\r
-if (window.gbWhForm)\r
-{\r
-       RegisterListener2(this, WH_MSG_SHOWTOC);\r
-       RegisterListener2(this, WH_MSG_SHOWIDX);\r
-       RegisterListener2(this, WH_MSG_SHOWFTS);\r
-       RegisterListener2(this, WH_MSG_SHOWGLO);\r
-       RegisterListener2(this, WH_MSG_SEARCHTHIS);\r
-       RegisterListener2(this, WH_MSG_BACKUPSEARCH);\r
-       gfunLookUp = ftsLookup;\r
-       gfunInit = null;\r
-       gstrFormName = "FtsInputForm"\r
-       gsTitle = "Type in the word(s) to search for:";\r
-       gsTitle = "Type in the word(s) to search for:";\r
-       setGoImage1("");\r
-       \r
-       \r
-       \r
-       \r
-       \r
-       \r
-       setGoText("Go");\r
-       setFont("Title", "Arial","9pt","#000000","normal","normal","none");\r
-       \r
-       \r
-       document.write(getFormHTML());\r
-       writeFormStyle();\r
-       window.onload = beforeInit;\r
-       window.onunload=window_unload;\r
-}\r
-else\r
-       document.location.reload();\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whfhost.js b/doc/salome/gui/GUI/whfhost.js
deleted file mode 100755 (executable)
index 167acc4..0000000
+++ /dev/null
@@ -1,945 +0,0 @@
-//     WebHelp 5.10.003\r
-var gsSK2=null;\r
-var gsSK=null;\r
-var gsFtsBreakChars="\t\r\n\"\\ .,!@#$%^&*()~'`:;<>?/{}[]|+-=\x85\x92\x93\x94\x95\x96\x97\x99\xA9\xAE\xB7";\r
-var gnCLF=0;\r
-var gsHelpCannotSearch="Cannot search for that phrase.";\r
-var gsNoTopics="No Topics Found.";\r
-var gsLoadingDivID="LoadingDiv";\r
-var gsLoadingMsg="Loading data, please wait...";\r
-var gsSearchMsg="Searching...";\r
-var gsResultDivID="ResultDiv";\r
-var gaaFCD=new Array();\r
-var gaaFTCD=new Array();\r
-var goCF=null;\r
-var goCTF=null;\r
-var gaTI=null;\r
-var gnCurrentOp=0;\r
-var gbNot=false;\r
-var gbReady=false;\r
-var gnLoadFts=1;\r
-var gnCacheLimits=5;\r
-var gaCCD=new Array();\r
-var gbXML=false;\r
-var gaData=new Array();\r
-var gsBgColor="#ffffff";\r
-var gsBgImage="";\r
-var gsMargin="0pt";\r
-var gsIndent="0pt";\r
-var gsCheckKey=null;\r
-var gnIndexNum=0;\r
-var gaFtsContentsCon=null;\r
-var gaTopicCheckInfo=null;\r
-var gnTopicCheck=0;\r
-var goFont=null;\r
-var goErrFont=null;\r
-var goHoverFont=null;\r
-var gsABgColor="#cccccc";\r
-var gbWhFHost=false;\r
-var gbFirst=false;\r
-\r
-function setBackground(sBgImage)\r
-{\r
-       gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
-       gsBgColor=sBgColor;\r
-}\r
-\r
-function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
-       var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
-       if(sType=="Normal")\r
-               goFont=vFont;\r
-       else if(sType=="Error")\r
-               goErrFont=vFont;\r
-       else if(sType=="Hover")\r
-               goHoverFont=vFont;\r
-}\r
-\r
-function setActiveBgColor(sBgColor)\r
-{\r
-       gsABgColor=sBgColor;\r
-}\r
-\r
-function setMargin(sMargin)\r
-{\r
-       gsMargin=sMargin;\r
-}\r
-\r
-function setIndent(sIndent)\r
-{\r
-       gsIndent=sIndent;\r
-}\r
-\r
-function updateCache(oCF)\r
-{\r
-       var len=gaCCD.length;\r
-       if(len<gnCacheLimits*gnCLF)\r
-               gaCCD[len]=oCF;\r
-       else{\r
-               gaCCD[0].aTopics=null;\r
-               gaCCD[0].aFtsKeys=null;\r
-               removeItemFromArray(gaCCD,0);\r
-               gaCCD[len-1]=oCF;\r
-       }\r
-}\r
-\r
-function addFtsInfo(sPPath,sDPath,sFtsFile)\r
-{\r
-       gaData[gaData.length]=new ftsInfo(sPPath,sDPath,sFtsFile);\r
-}\r
-\r
-function onLoadXMLError()\r
-{\r
-       if(gnLoadFts==1)\r
-       {\r
-               var aFCD=new Array();\r
-               var aFTCD=new Array();\r
-               ftsReady(aFCD,aFTCD);\r
-       }\r
-       else if(gnLoadFts==3)\r
-       {\r
-               var aTopics=new Array();\r
-               putFtsTData(aTopics);\r
-       }\r
-       else if(gnLoadFts==2)\r
-       {\r
-               putFtsWData(aFtsContents);\r
-               var aFtsContents=new Array();\r
-       }\r
-}\r
-\r
-function putDataXML(xmlDoc,sDocPath)\r
-{\r
-       if(gnLoadFts==1)\r
-       {\r
-               var node=xmlDoc.lastChild;\r
-               if(node)\r
-               {\r
-                       var oChild=node.firstChild;\r
-                       var aFCD=new Array();\r
-                       var aFTCD=new Array();\r
-                       while(oChild)\r
-                       {\r
-                               if(oChild.nodeName=="chunkinfo")\r
-                               {\r
-                                       var sURL=oChild.getAttribute("url");\r
-                                       var sFirst=oChild.getAttribute("first");\r
-                                       var sLast=oChild.getAttribute("last");\r
-                                       if(sURL&&sFirst&&sLast)\r
-                                       {\r
-                                               item=new Object();\r
-                                               item.sStartKey=sFirst;\r
-                                               item.sEndKey=sLast;\r
-                                               item.sFileName=sURL;\r
-                                               aFCD[aFCD.length]=item;\r
-                                       }\r
-                               }\r
-                               else if(oChild.nodeName=="tchunkinfo")\r
-                               {\r
-                                       var sURL=oChild.getAttribute("url");\r
-                                       var nB=parseInt(oChild.getAttribute("first"));\r
-                                       var nE=parseInt(oChild.getAttribute("last"));\r
-                                       if(sURL&&sFirst&&sLast)\r
-                                       {\r
-                                               item=new Object();\r
-                                               item.nBegin=nB;\r
-                                               item.nEnd=nE;\r
-                                               item.sFileName=sURL;\r
-                                               aFTCD[aFTCD.length]=item;\r
-                                       }\r
-\r
-                               }\r
-                               oChild=oChild.nextSibling;\r
-                       }\r
-                       ftsReady(aFCD,aFTCD);\r
-               }\r
-       }\r
-       else if(gnLoadFts==3)\r
-       {\r
-               var node=xmlDoc.lastChild;\r
-               if(node)\r
-               {\r
-                       var oChild=node.firstChild;\r
-                       var aTopics=new Array();\r
-                       while(oChild)\r
-                       {\r
-                               if(oChild.nodeName=="topic")\r
-                               {\r
-                                       var name=oChild.getAttribute("name");\r
-                                       var sURL=oChild.getAttribute("url");\r
-                                       if(name&&name.length>0&&sURL)\r
-                                       {\r
-                                               var topic=new Object();\r
-                                               topic.sTopicTitle=name;\r
-                                               topic.sTopicURL=sURL;\r
-                                               aTopics[aTopics.length]=topic;\r
-                                       }\r
-                               }\r
-                               oChild=oChild.nextSibling;\r
-                       }\r
-                       putFtsTData(aTopics);\r
-               }\r
-       }\r
-       else if(gnLoadFts==2)\r
-       {\r
-               var node=xmlDoc.lastChild;\r
-               if(node)\r
-               {\r
-                       var oChild=node.firstChild;\r
-                       var aFtsContents=new Array();\r
-                       while(oChild)\r
-                       {\r
-                               if(oChild.nodeName=="key")\r
-                               {\r
-                                       var name=oChild.getAttribute("name");\r
-                                       if(name&&name.length>0)\r
-                                       {\r
-                                               var item=new Object();\r
-                                               item.sItemName=name;\r
-                                               aFtsContents[aFtsContents.length]=item;\r
-                                               var oChildChild=oChild.firstChild;\r
-                                               while(oChildChild)\r
-                                               {\r
-                                                       if(oChildChild.nodeName=="#text")\r
-                                                       {\r
-                                                               var sIDs=oChildChild.nodeValue;\r
-                                                               if(sIDs)\r
-                                                               {\r
-                                                                       var nBPos=0;\r
-                                                                       do\r
-                                                                       {\r
-                                                                               var nPos=sIDs.indexOf(",",nBPos);\r
-                                                                               var sID=null;\r
-                                                                               if(nPos!=-1)\r
-                                                                                       sID=sIDs.substring(nBPos,nPos);\r
-                                                                               else\r
-                                                                                       sID=sIDs.substring(nBPos);\r
-\r
-                                                                               if(sID)\r
-                                                                               {\r
-                                                                                       var id=parseInt(sID);\r
-                                                                                       if(!isNaN(id))\r
-                                                                                       {\r
-                                                                                               if(!item.aTopics)\r
-                                                                                                       item.aTopics=new Array();\r
-                                                                                               item.aTopics[item.aTopics.length]=id;\r
-                                                                                       }\r
-                                                                               }\r
-                                                                               nBPos=nPos+1;\r
-                                                                       }while(nBPos!=0&&nBPos<sIDs.length);\r
-                                                               }\r
-                                                       }\r
-                                                       oChildChild=oChildChild.nextSibling;\r
-                                               }\r
-                                       }\r
-                               }\r
-                               oChild=oChild.nextSibling;\r
-                       }\r
-                       putFtsWData(aFtsContents);\r
-               }\r
-       }\r
-}\r
-\r
-function ftsInfo(sPPath,sDPath,sFtsFile)\r
-{\r
-       this.sPPath=sPPath;\r
-       this.sDPath=sDPath;\r
-       this.sFtsFile=sFtsFile;\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
-       if(gsBgImage&&gsBgImage.length>0)\r
-       {\r
-               document.body.background=gsBgImage;\r
-       }\r
-       if(gsBgColor&&gsBgColor.length>0)\r
-       {\r
-               document.body.bgColor=gsBgColor;\r
-       }\r
-       writeResultDiv();\r
-       loadFts();\r
-       var oMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null)\r
-       SendMessage(oMsg);\r
-}\r
-\r
-function writeResultDiv()\r
-{\r
-       var sHTML="<div id=\""+gsResultDivID+"\" style=\"POSITION:absolute;\"></div>";\r
-       document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
-}\r
-\r
-function loadFts()\r
-{\r
-       if(!gbReady)\r
-       {\r
-               var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
-               if(SendMessage(oResMsg)&&oResMsg.oParam)\r
-               {\r
-                       gbReady=true;\r
-                       var oProj=oResMsg.oParam;\r
-                       var aProj=oProj.aProj;\r
-                       gbXML=oProj.bXML;\r
-                       if(aProj.length>0)\r
-                       {\r
-                               var sLangId=aProj[0].sLangId;\r
-                               for(var i=0;i<aProj.length;i++)\r
-                               {\r
-                                       if(aProj[i].sFts&&aProj[i].sLangId==sLangId)\r
-                                       {\r
-                                               addFtsInfo(aProj[i].sPPath,aProj[i].sDPath,aProj[i].sFts);\r
-                                       }\r
-                               }\r
-                       }\r
-                       loadFD();\r
-\r
-               }                               \r
-       }\r
-}\r
-\r
-function loadFD()\r
-{\r
-       if(gnCLF<gaData.length)\r
-       {\r
-               gnLoadFts=1;\r
-               loadData2(gaData[gnCLF].sPPath+gaData[gnCLF].sDPath+gaData[gnCLF].sFtsFile);\r
-       }\r
-       else \r
-       {\r
-               var oMsg = new whMessage(WH_MSG_BACKUPSEARCH, this, 1, null);\r
-               if (SendMessage(oMsg))\r
-               {\r
-                       if (oMsg.oParam)\r
-                       {\r
-                               gsSK=oMsg.oParam.toLowerCase();\r
-                               findFTSKey();\r
-                       }\r
-               }\r
-               RegisterListener2(this, WH_MSG_SEARCHFTSKEY);\r
-       }\r
-}\r
-\r
-function loadData2(sFile)\r
-{\r
-       if(gbXML)\r
-               loadDataXML(sFile);\r
-       else\r
-               loadData(sFile);\r
-}\r
-\r
-function findFTSKey()\r
-{\r
-       gaTI=new Array();\r
-       gnCurrentOp=1;\r
-       gbNot=false;\r
-       displayMsg(gsSearchMsg);\r
-       if(gsSK!="")\r
-       {\r
-               gbFirst=true;\r
-               findOneKey();\r
-       }\r
-}\r
-\r
-function findOneKey()\r
-{\r
-       if(gsSK && gsSK!="")\r
-       {\r
-               var sInput=gsSK;\r
-               var sCW="";\r
-               var nS=-1;\r
-               var nSep=-1;\r
-               for(var nChar=0;nChar<gsFtsBreakChars.length;nChar++){\r
-                       var nFound=sInput.indexOf(gsFtsBreakChars.charAt(nChar));\r
-                       if((nFound!=-1)&&((nS==-1)||(nFound<nS))){\r
-                               nS=nFound;\r
-                               nSep=nChar;\r
-                       }\r
-               }\r
-               if(nS==-1){\r
-                       sCW=sInput;\r
-                       sInput="";\r
-               }else{\r
-                       sCW=sInput.substring(0,nS);\r
-                       sInput=sInput.substring(nS+1);\r
-               }\r
-\r
-               gsSK=sInput;\r
-               \r
-               if((sCW=="or")||((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="|"))){\r
-                       gnCurrentOp=0;\r
-                       gbNot=false;\r
-               }else if((sCW=="and")||((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="&"))){\r
-                       gnCurrentOp=1;\r
-                       gbNot=false;\r
-               }else if((sCW=="not")||\r
-                       ((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="~"))){\r
-                       gbNot=!gbNot;\r
-               }else if(sCW!=""&&!IsStopWord(sCW,gaFtsStop)){\r
-                       var sCurrentStem=GetStem(sCW);\r
-                       gsCW=sCurrentStem;\r
-                       ftsFindKeyword();\r
-                       return;\r
-               }\r
-               findOneKey();\r
-       }\r
-       else{\r
-               displayTopics();\r
-               checkAgain();\r
-       }\r
-}\r
-\r
-function checkAgain()\r
-{\r
-       gsCheckKey = "";\r
-       gnIndexNum = 0;\r
-       gsSK=gsSK2;\r
-       gsSK2=null;\r
-       if(gsSK!=null)\r
-               setTimeout("findFTSKey();",1);\r
-}\r
-\r
-function displayTopics()\r
-{\r
-       var sHTML="";\r
-       var sLine="";\r
-       for(var i=0;i<gaTI.length;i++){\r
-               sLine+="<dt><nobr><a href='"+gaTI[i].sTopicURL+"'>"+_textToHtml(gaTI[i].sTopicTitle)+"</a></nobr></dt>";\r
-               if(i>>4<<4==i)\r
-               {\r
-                       sHTML+=sLine;\r
-                       sLine="";\r
-               }\r
-       }\r
-       if(sLine.length>0)\r
-               sHTML+=sLine;\r
-\r
-       if(sHTML.length==0)\r
-               sHTML="<P>"+gsNoTopics+"</P>"\r
-       else\r
-               sHTML="<dl>"+sHTML+"</dl>";\r
-\r
-       var resultDiv=getElement(gsResultDivID);\r
-       if(resultDiv)\r
-               resultDiv.innerHTML=sHTML;\r
-}\r
-\r
-function displayMsg(sErrorMsg)\r
-{\r
-       var sHTML="<P>"+sErrorMsg+"</P>";\r
-\r
-       var resultDiv=getElement(gsResultDivID);\r
-       if(resultDiv)\r
-               resultDiv.innerHTML=sHTML;\r
-}\r
-\r
-function ftsFindKeyword()\r
-{\r
-       var sKey=gsCW;\r
-       var bNeedLoad=false;\r
-       var aFtsContentsCon=null;\r
-       var s=0;\r
-       if(sKey==null) return;\r
-       if(!gsCheckKey||sKey!=gsCheckKey||gnIndexNum==0)\r
-       {\r
-               aFtsContentsCon=new Array();\r
-               gnCheck=0;\r
-               gsCheckKey=sKey;\r
-               gnTopicCheck=0;\r
-               gaTopicCheckInfo=null;\r
-       }\r
-       else{\r
-               s=gnIndexNum;\r
-               aFtsContentsCon=gaFtsContentsCon;\r
-       }\r
-       for(var i=gnCheck;i<gaaFCD.length;i++)\r
-       {\r
-               var oCF=getChunkedFts(i,sKey);\r
-               if(oCF)\r
-               {\r
-                       if(!oCF.aFtsKeys&&oCF.sFileName!=null)\r
-                       {\r
-                               bNeedLoad=true;\r
-                               oCF.nProjId=i;\r
-                               goCF=oCF;\r
-                               gnIndexNum=s;\r
-                               gnCheck=i;\r
-                               gaFtsContentsCon=aFtsContentsCon;\r
-                               gnLoadFts=2;\r
-                               beginLoading();\r
-                               loadData2(gaData[i].sPPath+gaData[i].sDPath+oCF.sFileName);\r
-                               break;\r
-                       }\r
-                       else{\r
-                               aFtsContentsCon[s++]=oCF;\r
-                       }\r
-               }\r
-       }\r
-       if(!bNeedLoad)\r
-       {\r
-               var aTI=gaTopicCheckInfo;\r
-               for(var m=gnTopicCheck;m<aFtsContentsCon.length;m++)\r
-               {\r
-                       var aTIPart=getTopics(aFtsContentsCon[m],sKey);\r
-                       if(aTIPart==null)\r
-                       {\r
-                               gnCheck=gaaFCD.length;\r
-                               gnTopicCheck=m;\r
-                               gaTopicCheckInfo=aTI;\r
-                               gaFtsContentsCon=aFtsContentsCon;\r
-                               return;\r
-                       }\r
-                       if(m==0)\r
-                               aTI=aTIPart;\r
-                       else\r
-                               aTI=mergeTopics(aTI,aTIPart);\r
-               }\r
-               if(mergewithPreviousResult(aTI))\r
-               {\r
-                       gbFirst=false;\r
-                       findOneKey();\r
-               }\r
-               else\r
-                       checkAgain();\r
-       }\r
-}\r
-\r
-function mergewithPreviousResult(aTI)\r
-{\r
-       if(aTI!=null&&aTI.length!=0)\r
-       {\r
-               var nNumTopics=aTI.length;\r
-               if(gnCurrentOp==0||gbFirst){\r
-                       if(gbNot){\r
-                               displayMsg(gsHelpCannotSearch);\r
-                               return false;\r
-                       }else{\r
-                               var aLS,aSS;\r
-                               if(gaTI.length>=aTI.length)\r
-                               {\r
-                                       aLS=gaTI;\r
-                                       aSS=aTI;\r
-                               }\r
-                               else\r
-                               {\r
-                                       aLS=aTI;\r
-                                       aSS=gaTI;\r
-                               }\r
-                               var s=0;\r
-                               for(var i=0;i<aSS.length;i++)\r
-                               {\r
-                                       var bAlreadyThere=false;\r
-                                       for(var j=s;j<aLS.length;j++)\r
-                                       {\r
-                                               if(aSS[i].equalTo(aLS[j]))\r
-                                               {\r
-                                                       bAlreadyThere=true;\r
-                                                       s=j;\r
-                                                       break;\r
-                                               }\r
-                                       }\r
-                                       if(!bAlreadyThere)\r
-                                       {\r
-                                               insertTopic(aLS,aSS[i]);\r
-                                       }\r
-                               }\r
-                               gaTI=aLS;\r
-                       }\r
-               }else if(gnCurrentOp==1){\r
-                       if(gbNot){\r
-                               var s=0;\r
-                               for(var i=0;i<aTI.length;i++)\r
-                               {\r
-                                       for(var j=s;j<gaTI.length;j++)\r
-                                       {\r
-                                               if(aTI[i].equalTo(gaTI[j]))\r
-                                               {\r
-                                                       removeItemFromArray(gaTI,j);\r
-                                                       s=j;\r
-                                                       break;\r
-                                               }\r
-                                       }\r
-                               }\r
-                       }else{\r
-                               var s=0;\r
-                               for(var i=0;i<gaTI.length;i++)\r
-                               {\r
-                                       var bFound=false;\r
-                                       for(var j=s;j<aTI.length;j++)\r
-                                       {\r
-                                               if(gaTI[i].equalTo(aTI[j]))\r
-                                               {\r
-                                                       bFound=true;\r
-                                                       s=j;\r
-                                               }\r
-                                       }\r
-                                       if(!bFound)\r
-                                       {\r
-                                               removeItemFromArray(gaTI,i);\r
-                                               i--;\r
-                                       }\r
-                               }                               \r
-                       }\r
-               }\r
-       }else{\r
-               if((gnCurrentOp==1)&&(!gbNot)){\r
-                       gaTI.length=0;\r
-               }else if((gnCurrentOp==0)&&(gbNot)){\r
-                       displayMsg(gsHelpCannotSearch);\r
-                       return false;\r
-               }\r
-       }\r
-       return true;\r
-}\r
-\r
-function insertTopic(aTI,oTI)\r
-{\r
-       var nB=0;\r
-       var nE=aTI.length-1;\r
-       if(nE>=0)\r
-       {\r
-               var nM;\r
-               var bFound=false;\r
-               do{\r
-                       nM=(nB+nE)>>1;\r
-                       if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)>0)\r
-                               nE=nM-1;\r
-                       else if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)<0)\r
-                               nB=nM+1;\r
-                       else\r
-                       {\r
-                               bFound=true;\r
-                               break;\r
-                       }\r
-               }while(nB<=nE);\r
-               if(bFound)\r
-                       insertItemIntoArray(aTI,nM,oTI);\r
-               else\r
-               {\r
-                       if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)<0)\r
-                               insertItemIntoArray(aTI,nM+1,oTI);\r
-                       else\r
-                               insertItemIntoArray(aTI,nM,oTI);\r
-               }\r
-       }\r
-       else\r
-               aTI[0]=oTI;\r
-}\r
-\r
-function mergeTopics(aTI1,aTI2)\r
-{\r
-       var i1=0;\r
-       var i2=0;\r
-       var len1=aTI1.length;\r
-       var len2=aTI2.length;\r
-       var aTopicNew=new Array();\r
-       var i=0;\r
-       while(i1<len1||i2<len2)\r
-       {\r
-               if(i1<len1&&i2<len2)\r
-               {\r
-                       if(compare(aTI1[i1].sTopicTitle,aTI2[i2].sTopicTitle)<0)\r
-                               aTopicNew[i++]=aTI1[i1++];\r
-                       else\r
-                               aTopicNew[i++]=aTI2[i2++];\r
-               }\r
-               else if(i1<len1)\r
-                       aTopicNew[i++]=aTI1[i1++];\r
-               else if(i2<len2)\r
-                       aTopicNew[i++]=aTI2[i2++];\r
-       }\r
-       return aTopicNew;\r
-}\r
-\r
-function getTopics(oCF,sKey)\r
-{\r
-       var aTIPart=new Array();\r
-       if(oCF&&oCF.aFtsKeys)\r
-       {\r
-               var keys=oCF.aFtsKeys;\r
-               var nB=0;\r
-               var nE=keys.length-1;\r
-               var nM=-1;\r
-               var bFound=false;\r
-               do{\r
-                       nM=(nB+nE)>>1;\r
-                       if(compare(keys[nM].sItemName,sKey)>0)\r
-                               nE=nM-1;\r
-                       else if(compare(keys[nM].sItemName,sKey)<0)\r
-                               nB=nM+1;\r
-                       else{\r
-                               bFound=true;\r
-                               break;\r
-                       }\r
-               }while(nB<=nE);\r
-               if(bFound)\r
-               {\r
-                       if(keys[nM].aTopics)\r
-                       {\r
-                               for(var i=0;i<keys[nM].aTopics.length;i++)\r
-                               {\r
-                                       var oTC=getTopicChunk(gaaFTCD[oCF.nProjId],keys[nM].aTopics[i]);\r
-                                       if(oTC.aTopics)\r
-                                       {\r
-                                               aTIPart[aTIPart.length]=\r
-                                                       new topicInfo(oTC.aTopics[keys[nM].aTopics[i]-oTC.nBegin].sTopicTitle,\r
-                                                               gaData[oCF.nProjId].sPPath+oTC.aTopics[keys[nM].aTopics[i]-oTC.nBegin].sTopicURL);\r
-                                       }\r
-                                       else{\r
-                                               goCTF=oTC;\r
-                                               gnLoadFts=3;\r
-                                               beginLoading();\r
-                                               loadData2(gaData[oCF.nProjId].sPPath+gaData[oCF.nProjId].sDPath+oTC.sFileName);\r
-                                               return null;\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-       return aTIPart;\r
-}\r
-\r
-function getTopicChunk(aFTCD,nTopicId)\r
-{\r
-       if(aFTCD&&aFTCD.length)\r
-       {\r
-               var nB=0;\r
-               var nE=aFTCD.length-1;\r
-               var nM=-1;\r
-               var bFound=false;\r
-               do{\r
-                       nM=(nB+nE)>>1;\r
-                       if(aFTCD[nM].nBegin>nTopicId)\r
-                               nE=nM-1;\r
-                       else if(aFTCD[nM].nEnd<nTopicId)\r
-                               nB=nM+1;\r
-                       else{\r
-                               bFound=true;\r
-                               break;\r
-                       }\r
-               }while(nB<=nE);\r
-               if(bFound)\r
-                       return aFTCD[nM];\r
-       }\r
-       return null;\r
-}\r
-\r
-function endLoading()\r
-{\r
-       var oDiv=getElement(gsLoadingDivID);\r
-       if(oDiv)\r
-               oDiv.style.visibility="hidden";\r
-}\r
-\r
-function beginLoading()\r
-{\r
-       var oDiv=getElement(gsLoadingDivID);\r
-       if(!oDiv)\r
-       {\r
-               document.body.insertAdjacentHTML("afterBegin",writeLoadingDiv());\r
-               oDiv=getElement(gsLoadingDivID);\r
-       }\r
-       \r
-       if(oDiv)\r
-       {\r
-               oDiv.style.top=document.body.scrollTop;\r
-               oDiv.style.visibility="visible";\r
-       }\r
-}\r
-\r
-function writeLoadingDiv(nIIdx)\r
-{\r
-       return "<div id=\""+gsLoadingDivID+"\" style=\"position:absolute;top:0;left:0;z-index:600;visibility:hidden;padding-left:4px;background-color:ivory;border-width:1;border-style:solid;border-color:black;width:150px;\">"+gsLoadingMsg+"</div>";\r
-}\r
-\r
-function topicInfo(sTopicTitle,sTopicURL)\r
-{\r
-       this.sTopicTitle=sTopicTitle;\r
-       this.sTopicURL=sTopicURL;\r
-       this.equalTo=function(oTI)\r
-       {\r
-               return ((this.sTopicTitle==oTI.sTopicTitle)&&\r
-                       (this.sTopicURL==oTI.sTopicURL));\r
-       }\r
-}\r
-\r
-function getChunkedFts(nIndex,sKey)\r
-{\r
-       var oCF=null;\r
-       if(nIndex<gaaFCD.length)\r
-       {\r
-               var len=gaaFCD[nIndex].length;\r
-               if(len>0)\r
-               {\r
-                       var nB=0;\r
-                       var nE=len-1;\r
-                       var bFound=false;\r
-                       do{\r
-                               var nM=(nB+nE)>>1;\r
-                               if(compare(sKey,gaaFCD[nIndex][nM].sEndKey)>0)\r
-                               {\r
-                                       nB=nM+1;\r
-                               }\r
-                               else if(compare(sKey,gaaFCD[nIndex][nM].sStartKey)<0)\r
-                               {\r
-                                       nE=nM-1;\r
-                               }\r
-                               else{\r
-                                       bFound=true;\r
-                                       break;\r
-                               }\r
-                       }while(nE>=nB);\r
-                       if(bFound)\r
-                               oCF=gaaFCD[nIndex][nM];\r
-               }\r
-       }\r
-       return oCF;\r
-}\r
-\r
-function ftsReady(aFCD,aFTCD)\r
-{\r
-       endLoading();\r
-       gaaFTCD[gnCLF]=aFTCD;\r
-       gaaFCD[gnCLF++]=aFCD;\r
-       setTimeout("loadFD();",1);\r
-}\r
-\r
-function putFtsTData(aTopics)\r
-{\r
-       endLoading();\r
-       var oCTF=goCTF;\r
-       if(oCTF)\r
-       {\r
-               oCTF.aTopics=aTopics;\r
-               setTimeout("ftsFindKeyword();",1);\r
-       }\r
-}\r
-\r
-function putFtsWData(aFtsContents)\r
-{\r
-       endLoading();\r
-       var oCF=goCF;\r
-       if(oCF)\r
-       {\r
-               updateCache(oCF);\r
-               oCF.aFtsKeys=aFtsContents;\r
-               setTimeout("ftsFindKeyword();",1);\r
-       }\r
-}\r
-\r
-function IsStopWord(sCW,aFtsStopArray)\r
-{\r
-       var nStopArrayLen=aFtsStopArray.length;\r
-       var nB=0;\r
-       var nE=nStopArrayLen-1;\r
-       var nM=0;\r
-       var bFound=false;\r
-       var sStopWord="";\r
-       while(nB<=nE){\r
-               nM=(nB+nE);\r
-               nM>>=1;\r
-               sStopWord=aFtsStopArray[nM];\r
-               if(compare(sCW,sStopWord)>0){\r
-                       nB=(nB==nM)?nM+1:nM;\r
-               }else{\r
-                       if(compare(sCW,sStopWord)<0){\r
-                               nE=(nE==nM)?nM-1:nM;\r
-                       }else{\r
-                               bFound=true;\r
-                               break;\r
-                       }\r
-               }\r
-       }\r
-       return bFound;\r
-}\r
-\r
-function GetStem(szWord)\r
-{\r
-       if(gaFtsStem==null||gaFtsStem.length==0)return szWord;\r
-       var aStems=gaFtsStem;\r
-\r
-       var nStemPos=0;\r
-       var csStem="";\r
-       for(var iStem=0;iStem<aStems.length;iStem++){\r
-\r
-               if(aStems[iStem].length>=szWord.length-1)       continue;\r
-               nStemPos=szWord.lastIndexOf(aStems[iStem]);\r
-               if(nStemPos>0){\r
-                       var cssub=szWord.substring(nStemPos);\r
-                       if(cssub==aStems[iStem]){\r
-                               csStem=szWord;\r
-                               if(szWord.charAt(nStemPos-2)==szWord.charAt(nStemPos-1)){\r
-                                       csStem=csStem.substring(0,nStemPos-1);\r
-                               }else{\r
-                                       csStem=csStem.substring(0,nStemPos);\r
-                               }\r
-                               return csStem;\r
-                       }\r
-               }\r
-       }\r
-       return szWord;\r
-}\r
-\r
-function FtsWriteClassStyle()\r
-{\r
-       var sStyle="<STYLE TYPE='text/css'>\n";\r
-       if (gsBgImage)\r
-               sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
-       else\r
-               sStyle+="body {border-top:black 1px solid;}\n";\r
-       sStyle+="P {"+getFontStyle(goErrFont)+"margin-left:"+gsIndent+";margin-top:"+gsMargin+";}\n";\r
-       sStyle+="dl {"+getFontStyle(goFont)+"margin-left:"+gsIndent+";margin-top:"+gsMargin+";}\n";\r
-       sStyle+="A:link {"+getFontStyle(goFont)+"}\n";\r
-       sStyle+="A:visited {"+getFontStyle(goFont)+"}\n";\r
-       sStyle+="A:active {background-color:"+gsABgColor+";}\n";\r
-       sStyle+="A:hover {"+getFontStyle(goHoverFont)+"}\n";\r
-       sStyle+="</STYLE>";\r
-       document.write(sStyle);\r
-}\r
-\r
-function window_Unload()\r
-{\r
-       UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
-       UnRegisterListener2(this, WH_MSG_SEARCHFTSKEY);\r
-}\r
-\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       var nMsgId=oMsg.nMessageId;\r
-       if(nMsgId==WH_MSG_SEARCHFTSKEY)\r
-       {\r
-               if(oMsg.oParam)\r
-               {\r
-                       if(gsSK==null||gsSK=="")\r
-                       {\r
-                               gsSK=oMsg.oParam.toLowerCase();\r
-                               findFTSKey();\r
-                       }\r
-                       else\r
-                               gsSK2=oMsg.oParam.toLowerCase();\r
-               }\r
-       }\r
-       else if(nMsgId==WH_MSG_PROJECTREADY)\r
-       {\r
-               loadFts();\r
-       }\r
-       return true;\r
-}\r
-\r
-if (window.gbWhUtil&&window.gbWhLang&&window.gbWhProxy&&window.gbWhVer&&window.gbWhMsg)\r
-{\r
-       goFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
-       goErrFont=new whFont("Verdana","8pt","#000000","normal","bold","none");\r
-       goHoverFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
-       window.onload=window_OnLoad;\r
-       window.onbeforeunload=window_BUnload;\r
-       window.onunload=window_Unload;\r
-       RegisterListener2(this,WH_MSG_PROJECTREADY);\r
-       gbWhFHost=true;\r
-}\r
-else\r
-       document.location.reload();
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whform.js b/doc/salome/gui/GUI/whform.js
deleted file mode 100755 (executable)
index 323fe8e..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-//     WebHelp 5.10.001\r
-var gfunLookUp;\r
-var gbInputEnable;\r
-var gfunInit;\r
-var gstrFormName= "";\r
-var gbWithButton = false;\r
-var gsTitle="";\r
-var gsOverImage = "";\r
-var gsOutImage = "";\r
-var gsClickImage = "";\r
-var gsText = "";\r
-var gsBgColor = "#c0c0c0";\r
-var gsBgImage = "";\r
-var gbInImage = 0;\r
-var gbInputEnable = 0;\r
-\r
-var goTitleFont=null;\r
-var goInputFont=null;\r
-var goNormalFont=null;\r
-var goHoverFont=null;\r
-var gnType=-1;\r
-var gbWhForm=false;\r
-\r
-function setBackground(sBgImage)\r
-{\r
-       if (sBgImage != null && sBgImage.length > 0)\r
-               gsBgImage = sBgImage;\r
-\r
-       if  (gsBgImage  && gsBgImage .length > 0)\r
-       {\r
-               document.body.background = gsBgImage ;\r
-       }\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
-       if (sBgColor != null && sBgColor.length > 0)\r
-               gsBgColor = sBgColor;\r
-\r
-       if (gsBgColor&& gsBgColor.length > 0)\r
-       {\r
-               document.body.bgColor = gsBgColor;\r
-       }\r
-}\r
-\r
-function setBtnType(sType)\r
-{\r
-       if (sType == "image")\r
-       {\r
-               gnType = 0;\r
-       }\r
-       else if (sType == "text")\r
-       {\r
-               gnType = 1;\r
-       }\r
-}\r
-\r
-function setGoImage1(sImage1)\r
-{\r
-       gsOutImage = sImage1;\r
-       if (gsOutImage && gsOutImage.length > 0)\r
-               gbWithButton = true;\r
-}\r
-\r
-function setGoImage2(sImage2)\r
-{\r
-       gsOverImage = sImage2;\r
-       if (gsOverImage && gsOverImage.length > 0)\r
-               gbWithButton = true;\r
-}\r
-\r
-function setGoImage3(sImage3)\r
-{\r
-       gsClickImage = sImage3;\r
-       if (gsClickImage && gsClickImage.length > 0)\r
-               gbWithButton = true;\r
-}\r
-\r
-function setGoText(sText)\r
-{\r
-       gsText = sText;\r
-       if (gsText.length > 0)\r
-               gbWithButton = true;\r
-}\r
-\r
-function setFont(sType, sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration)\r
-{\r
-       var vFont = new whFont(sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration);\r
-       if (sType == "Title")\r
-       {\r
-               goTitleFont = vFont;\r
-               var vFont1 = new whFont(sFontName, sFontSize, "black", sFontStyle, sFontWeight, sFontDecoration);\r
-               goInputFont=vFont1;             \r
-       }\r
-       else if (sType == "Normal")\r
-               goNormalFont = vFont;\r
-       else if (sType == "Hover")\r
-               goHoverFont = vFont;\r
-}\r
-\r
-function writeFormStyle()\r
-{\r
-       var sStyle = "<style type='text/css'>";\r
-       sStyle += "p.title {" + getFontStyle(goTitleFont) + "margin-top:0;margin-bottom:0}\n";\r
-       sStyle += ".inputfield {" + getFontStyle(goInputFont) +"width:100%; }\n";\r
-       sStyle+="A:link {"+getFontStyle(goNormalFont)+"}\n";\r
-       sStyle+="A:visited {"+getFontStyle(goNormalFont)+"}\n";\r
-       sStyle +="A:hover {"+getFontStyle(goHoverFont)+"}\n";\r
-       sStyle+=".clsFormBackground{\n";\r
-       if (gsBgImage)\r
-               sStyle+="border-top:"+gsBgColor+" 1px solid;}\n";\r
-       else\r
-               sStyle+="border-top:black 1px solid;}\n";\r
-\r
-       sStyle += "</style>";\r
-       document.write(sStyle);\r
-}\r
-\r
-function lookupKeyDown()\r
-{\r
-       if (gbInputEnable)\r
-       {\r
-               if (gbIE4)\r
-               {\r
-                       if (event.keyCode == 13)        //Enter key\r
-                               gfunLookUp(true);\r
-                       else\r
-                               gfunLookUp(false);\r
-               }                       \r
-               else\r
-                       gfunLookUp(false);\r
-       }\r
-}\r
-\r
-function init()\r
-{\r
-       if (gfunInit)\r
-               gfunInit();\r
-       if (!window.Array)  return;\r
-               document.onkeyup = lookupKeyDown;\r
-}\r
-\r
-function inputSubmit()\r
-{\r
-       if ((gbInputEnable && !gbIE4)|| gbInImage)\r
-               gfunLookUp(true);\r
-}\r
-\r
-function inputEnable(bEnable)\r
-{\r
-       gbInputEnable = bEnable;\r
-}\r
-\r
-function inImage(bImage)\r
-{\r
-       gbInImage = bImage;\r
-}\r
-\r
-function getFormHTML()\r
-{\r
-       var sForm = "";\r
-       sForm += "<table class=\"clsFormBackground\" width=\"100%\" cellspacing=\"0\" cellpadding=\"5\" border=\"0\">";\r
-       sForm += "<form name=\"" + gstrFormName + "\" method=\"POST\" action=\"javascript:inputSubmit()\" style=\"width:100%\">";\r
-       sForm += "<tr>";\r
-       sForm += "<td>";\r
-       sForm += "<p class=title><nobr>" + gsTitle + "</nobr><br><table width=\"100%\"><tr valign=\"middle\"><td width=\"100%\"><input class=\"inputfield\" type=\"text\" name=\"keywordField\" onfocus=\"inputEnable(1);\" onblur=\"inputEnable(0);\"></td>";\r
-       if (gbWithButton && gnType >= 0)\r
-       {\r
-               sForm += "<td><a title=\"submit button\" href=\"javascript:void(0);\" onclick=\"" + gstrFormName + ".submit(); return false;\" onfocus=\"inImage(1);\" onblur=\"inImage(0);\" onmouseup=\"onMouseUp();\" onmousedown=\"onMouseDown();\" onmouseover=\"onMouseOver();\" onmouseout=\"onMouseOut();\">"\r
-               if (gnType == 0)\r
-               {\r
-                       if (!gsText)\r
-                               gsText="Go";\r
-                       sForm += "<img alt=\""+gsText+"\" id=\"go\" border=\"0\" src=\"" + gsOutImage + "\">";\r
-               }\r
-               else\r
-                       sForm += gsText ;\r
-               sForm += "</a></td>";\r
-       }\r
-       sForm += "</tr></table></p></td></tr></form></table>";\r
-       return sForm;\r
-}\r
-\r
-function onMouseOver()\r
-{\r
-       if (getElement("go") && gsOverImage)\r
-               getElement("go").src = gsOverImage;\r
-}\r
-\r
-function onMouseDown()\r
-{\r
-       if (getElement("go") && gsClickImage)\r
-               getElement("go").src = gsClickImage;\r
-}\r
-\r
-function onMouseUp()\r
-{\r
-       if (getElement("go") && gsOutImage)\r
-               getElement("go").src = gsOutImage;\r
-}\r
-\r
-function onMouseOut()\r
-{\r
-       if (getElement("go") && gsOutImage)\r
-               getElement("go").src = gsOutImage;\r
-}\r
-\r
-if (window.gbWhUtil&&window.gbWhVer&&window.gbWhProxy&&window.gbWhMsg)\r
-{\r
-       goTitleFont=new whFont("Arial", "9pt", "#000000", "normal", "normal", "none");\r
-       goNormalFont=new whFont("Arial", "9pt", "#000000", "normal", "normal", "none");\r
-       goHoverFont=new whFont("Arial", "9pt", "#000000", "normal", "normal", "underline");\r
-       gbWhForm=true;\r
-}\r
-else\r
-       document.location.reload();
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whframes.js b/doc/salome/gui/GUI/whframes.js
deleted file mode 100755 (executable)
index 2040f33..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-//     WebHelp 5.10.001\r
-// this value should be identical to the value used in whproxy.js\r
-window.whname = "wh_stub";\r
-\r
-// this file will be used by Topic and NavBar and NavPane and other components\r
-// and this file is used in child frame html.\r
-// and the whstub.js will be used in the start page.\r
-// see reference in whstub.js.\r
-// Internal Area\r
-var gbInited = false;\r
-var gWndStubPage = null;\r
-function getStubPage()\r
-{\r
-       if (!gbInited)\r
-       {\r
-               gWndStubPage = getStubPage_inter(window);\r
-               gbInited = true;\r
-       }\r
-       return gWndStubPage;\r
-}\r
-\r
-function getStubPage_inter(wCurrent) {\r
-       if (null == wCurrent.parent || wCurrent.parent == wCurrent)\r
-               return null;\r
-\r
-       if (wCurrent.parent.whname && "wh_stub" == wCurrent.parent.whname) \r
-               return wCurrent.parent;\r
-       else\r
-               if (wCurrent.parent.frames.length != 0 && wCurrent.parent != wCurrent)\r
-                       return getStubPage_inter(wCurrent.parent);\r
-               else \r
-                       return null;\r
-}\r
-\r
-// Public interface begin here................\r
-function RegisterListener(framename, nMessageId)\r
-{\r
-       var wStartPage = getStubPage();\r
-       if (wStartPage && wStartPage != this) {\r
-               return wStartPage.RegisterListener(framename, nMessageId);\r
-       }\r
-       else \r
-               return false;\r
-}\r
-\r
-function RegisterListener2(oframe, nMessageId)\r
-{\r
-       var wStartPage = getStubPage();\r
-       if (wStartPage && wStartPage != this) {\r
-               return wStartPage.RegisterListener2(oframe, nMessageId);\r
-       }\r
-       else \r
-               return false;\r
-}\r
-\r
-function UnRegisterListener2(oframe, nMessageId)\r
-{\r
-       var wStartPage = getStubPage();\r
-       if (wStartPage && wStartPage != this && wStartPage.UnRegisterListener2) {\r
-               return wStartPage.UnRegisterListener2(oframe, nMessageId);\r
-       }\r
-       else \r
-               return false;\r
-}\r
-\r
-function SendMessage(oMessage)\r
-{\r
-       var nMsgId = oMessage.nMessageId;\r
-       if (nMsgId == WH_MSG_ISINFRAMESET && oMessage.wSender != this)\r
-               return true;\r
-       var wStartPage = getStubPage();\r
-       if (wStartPage && wStartPage != this && wStartPage.SendMessage) \r
-       {\r
-               return wStartPage.SendMessage(oMessage);\r
-       }\r
-       else \r
-               return false;\r
-}\r
-var gbWhProxy=true;
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whgbody.htm b/doc/salome/gui/GUI/whgbody.htm
deleted file mode 100755 (executable)
index 4a74388..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<html>\r
-<head>\r
-<title>Glossary Term</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whlang.js"></script>\r
-<script language="javascript1.2" src="whhost.js"></script>\r
-<script language="javascript1.2" src="whghost.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-if(window.gbWhGHost)\r
-{\r
-       \r
-       \r
-       setFont("Normal", "Arial","9pt","#000000","normal","normal","none");\r
-       setFont("Hover", "Arial","9pt","#007f00","normal","normal","underline");\r
-       setActiveBgColor("#cccccc");\r
-       setMargin("0pt");\r
-       setIndent("9pt");\r
-       GloWriteClassStyle();\r
-}\r
-else\r
-       document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" bgcolor="white">\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/whgdef.htm b/doc/salome/gui/GUI/whgdef.htm
deleted file mode 100755 (executable)
index 347e82b..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-<html>\r
-<head>\r
-<title>Glossary Definition</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gsBgColor="#ffffff";\r
-var gsBgImage="";\r
-var goGloFont=null;\r
-\r
-function setBackground(sBgImage)\r
-{\r
-       gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
-       gsBgColor=sBgColor;\r
-}\r
-\r
-function window_Unload()\r
-{\r
-       UnRegisterListener2(this, WH_MSG_SHOWGLODEF);\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
-       if(gsBgImage&&gsBgImage.length>0)\r
-               document.body.background=gsBgImage;\r
-       if(gsBgColor&&gsBgColor.length>0)\r
-               document.body.bgColor=gsBgColor;\r
-}\r
-\r
-function setFont(sType, sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration)\r
-{\r
-       var vFont = new whFont(sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration);\r
-       if (sType == "Normal")\r
-               goGloFont = vFont;\r
-}\r
-\r
-function textToHtml_nbsp_specialcare(sText)\r
-{\r
-       if (sText == null) return null;\r
-       var sHTML= sText;\r
-       var re = new RegExp("  ","g");\r
-       sHTML=  sHTML.replace(re, "&nbsp; ");\r
-       return  sHTML;\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       var nMsgId = oMsg.nMessageId;\r
-       if (nMsgId == WH_MSG_SHOWGLODEF)\r
-       {\r
-               document.body.innerHTML = sDefHead + textToHtml_nbsp_specialcare(oMsg.oParam.sDef) + sDefTail;\r
-               return true;\r
-       }\r
-}\r
-\r
-function GDefWriteClassStyle()\r
-{\r
-       var sStyle="<STYLE TYPE='text/css'>\n";\r
-       if (gsBgImage)\r
-               sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
-       else\r
-               sStyle+="body {border-top:black 1px solid;}\n";\r
-       sStyle+=".definition {"+getFontStyle(goGloFont)+"margin:2;}\n";\r
-       sStyle+="</STYLE>";\r
-       document.write(sStyle);\r
-}\r
-\r
-if (window.gbWhMsg&&window.gbWhUtil&&window.gbWhProxy&&window.gbWhVer)\r
-{\r
-       window.onload=window_OnLoad;\r
-       window.onunload = window_Unload;\r
-       goGloFont=new whFont("Verdana", "8pt", "#000000", "normal", "normal", "none");\r
-       \r
-       \r
-       setFont("Normal", "Arial","9pt","#000000","normal","normal","none");\r
-       GDefWriteClassStyle();\r
-       RegisterListener2(this, WH_MSG_SHOWGLODEF);\r
-       var sDefHead = "<p class=\"definition\">";\r
-       var sDefTail = "</p>";\r
-}\r
-else\r
-       document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body bgproperties="fixed" bgcolor="white">\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/whgdhtml.htm b/doc/salome/gui/GUI/whgdhtml.htm
deleted file mode 100755 (executable)
index 6d36f52..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-<html>\r
-<head>\r
-<title>Glossary</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<body bgcolor=#c0c0c0 scroll=no RIGHTMARGIN=0 BOTTOMMARGIN=0 TOPMARGIN=0 LEFTMARGIN=0>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gsBgImage="";\r
-var    gsBgColor="";\r
-var goTitleFont=null;\r
-\r
-function setBackground(sBgImage)\r
-{\r
-       gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
-       gsBgColor=sBgColor;\r
-}\r
-\r
-function setFont(sType, sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
-       var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
-       if(sType=="Title")\r
-               goTitleFont=vFont;\r
-}\r
-\r
-function getTermText()\r
-{\r
-       var strString="Term:";\r
-strString = "Term:";\r
-       return strString;\r
-}\r
-\r
-function getDefinitionText()\r
-{\r
-       var strString="Definition for:";\r
-strString = "Definition:";\r
-       return strString;\r
-}\r
-\r
-function getHTML()\r
-{\r
-       var sHTML="";\r
-       sHTML+="<P class=title><nobr>&nbsp;" + getTermText() + "</nobr></p>";\r
-       sHTML+="<iframe id=glossaryIFrame title=\"glossary term\" src=\"whgbody.htm\" width=100% height=200 MARGINHEIGHT=0 MARGINWIDTH=0></iframe>";\r
-       sHTML+="<P class=title><nobr>&nbsp;" + getDefinitionText() + "&nbsp;<b id=Name></b></nobr></p>";\r
-       sHTML+="<iframe id=defIFrame title=\"glossary definition\" src=\"whgdef.htm\" width=100% height=100% MARGINHEIGHT=0 MARGINWIDTH=0></iframe>";\r
-       return sHTML;\r
-}\r
-\r
-function writeStyle()\r
-{\r
-       var sStyle="<style type='text/css'>";\r
-       sStyle+="p.title {" + getFontStyle(goTitleFont) + "margin-top:4;margin-bottom:4}\n";\r
-       if (gsBgImage)\r
-               sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
-       else\r
-               sStyle+="body {border-top:black 1px solid;}\n";\r
-       sStyle+="</style>";\r
-       document.write(sStyle);\r
-}\r
-\r
-\r
-function window_OnResize()\r
-{\r
-       setIFrameHeight();\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
-       if(gsBgImage&&gsBgImage.length>0)\r
-               document.body.background=gsBgImage;\r
-       if(gsBgColor&&gsBgColor.length>0)\r
-               document.body.bgColor=gsBgColor;\r
-       setIFrameHeight();\r
-}\r
-\r
-function setIFrameHeight()\r
-{\r
-       var tH=0;\r
-       if(gbNav6)\r
-       {\r
-               tH=parseInt(window.innerHeight)-30;\r
-       }\r
-       else\r
-       {\r
-               tH=parseInt(document.body.clientHeight)-4;\r
-       }\r
-               \r
-       var oEle=getElement("glossaryIFrame");\r
-       if(oEle)\r
-       {\r
-               tH=tH-2*parseInt(oEle.offsetTop);\r
-               if(tH>0)\r
-               {\r
-                       oEle.style.height=Math.floor(tH*.6);\r
-                       var oEleDef=getElement("defIFrame");\r
-                       if(oEleDef)\r
-                       {\r
-                               oEleDef.style.height=tH-parseInt(oEle.style.height);\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-function window_Unload()\r
-{\r
-       UnRegisterListener2(this,WH_MSG_SHOWGLODEF);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       var nMsgId=oMsg.nMessageId;\r
-       if(nMsgId==WH_MSG_SHOWGLODEF)\r
-       {\r
-               if(getElement("Name"))\r
-                       getElement("Name").innerHTML=oMsg.oParam.sName;\r
-               return true;\r
-       }\r
-}\r
-\r
-if(window.gbWhVer&&window.gbWhMsg&&window.gbWhUtil&&window.gbWhProxy)\r
-{\r
-       goTitleFont=new whFont("Arial","9pt","#000000","normal","normal","none");\r
-       setFont("Title", "Arial","9pt","#000000","normal","normal","none");\r
-       \r
-       \r
-       window.onresize=window_OnResize;\r
-       window.onload=window_OnLoad;\r
-       window.onunload=window_Unload;\r
-       RegisterListener2(this,WH_MSG_SHOWGLODEF);\r
-       writeStyle();\r
-       document.write(getHTML());\r
-}\r
-else\r
-       document.location.reload();\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/whghost.js b/doc/salome/gui/GUI/whghost.js
deleted file mode 100755 (executable)
index 56e1d56..0000000
+++ /dev/null
@@ -1,247 +0,0 @@
-//     WebHelp 5.10.004\r
-var gbXML=false;\r
-var gaDef=new Array();\r
-var gsBgColor="#ffffff";\r
-var gsBgImage="";\r
-var goFont=null;\r
-var goHoverFont=null;\r
-var gsMargin="2pt";\r
-var gsIndent="2pt";\r
-var gsActiveBgColor="#cccccc";\r
-var gbWhGHost=false;\r
-var gbShowDef=true;\r
-var gsGloId="Glo_"\r
-\r
-function setBackground(sBgImage)\r
-{\r
-       gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
-       gsBgColor=sBgColor;\r
-}\r
-\r
-function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
-       var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
-       if(sType=="Normal")\r
-               goFont=vFont;\r
-       else if(sType=="Hover")\r
-               goHoverFont=vFont;\r
-}\r
-\r
-function setActiveBgColor(sBgColor)\r
-{\r
-       gsActiveBgColor=sBgColor;\r
-}\r
-\r
-function setMargin(sMargin)\r
-{\r
-       gsMargin=sMargin;\r
-}\r
-\r
-function setIndent(sIndent)\r
-{\r
-       gsIndent=sIndent;\r
-}\r
-\r
-function insertDef(sKName,sDef)\r
-{\r
-       var nLength=gaDef.length\r
-       var oGlo=new nameDefPair(sKName,sDef);\r
-       gaDef[nLength]=oGlo;\r
-       return nLength;\r
-}\r
-\r
-function showDef(nDef)\r
-{\r
-       if(nDef<gaDef.length)\r
-       {       \r
-               HighLight(nDef);\r
-               var oParam=gaDef[nDef];\r
-               var oMsg=new whMessage(WH_MSG_SHOWGLODEF,this,1,oParam);\r
-               SendMessage(oMsg);\r
-       }\r
-}\r
-\r
-function nameDefPair(sName,sDef)\r
-{\r
-       this.sName=sName;\r
-       this.sDef=sDef;\r
-}\r
-\r
-function mergeItems(oHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel)\r
-{\r
-       var sHTML="";\r
-       var nIdxSet=aCurIdxSet[0];\r
-       var nIIdx=aPos[nIdxSet];\r
-       var sRawKName = getItemName(aDataCon,nIdxSet,nIIdx);\r
-       var sKName=_textToHtml(sRawKName);\r
-       var sDText=_textToHtml_nonbsp(getDef(aDataCon,nIdxSet,nIIdx));\r
-       var sDef=sDText;\r
-       for(var i=1;i<nLength;i++)\r
-       {\r
-               var nIdxSeti=aCurIdxSet[i];\r
-               var nIIdxi=aPos[nIdxSeti];\r
-               var sRawKNamei = getItemName(aDataCon,nIdxSeti,nIIdxi);\r
-               var sKNamei=_textToHtml(sRawKNamei);\r
-               var sDTexti=_textToHtml_nonbsp(getDef(aDataCon,nIdxSeti,nIIdxi));\r
-               if (compare(sKNamei,sKName)==0)\r
-               {\r
-                       if (sDText!=sDTexti)\r
-                               sDef+="<br>"+sDTexti;\r
-               }\r
-       }\r
-       var nIndex=insertDef(sKName,sDef);\r
-       if(nLevel==1)\r
-       {\r
-               sHTML+="<p><nobr id=\""+getGloId(nIndex)+"\">";\r
-               sHTML+="<a alt=\""+sKName+"\" href=\"javascript:void(0);\" onfocus=\"HighLight("+nIndex+");\" onclick=\"showDef("+nIndex+");return false;\">"+sKName+"</a></nobr></p>";\r
-               oHTML.addHTML(sHTML,nLength,bDown,true,sRawKName);\r
-               if(gbShowDef)\r
-               {\r
-                       setTimeout("showDef(0);",100);\r
-                       gbShowDef = false;\r
-               }\r
-       }\r
-}\r
-\r
-function HighLight(nIndex)\r
-{\r
-       var oObj=getElement(getGloId(nIndex));\r
-       if(oObj)\r
-               HighLightElement(oObj,gsActiveBgColor,"transparent");\r
-}\r
-\r
-function getGloId(nIndex)\r
-{\r
-       return gsGloId+nIndex;\r
-}\r
-\r
-function adjustPosition(bDown,aDataCon,aCurIdxSet,nLength,aPos)\r
-{\r
-       if(bDown)\r
-       {\r
-               for(var i=0;i<nLength;i++)\r
-                       aPos[aCurIdxSet[i]]++;\r
-       }\r
-       else{\r
-               for(var i=0;i<nLength;i++)\r
-                       aPos[aCurIdxSet[i]]--;\r
-       }\r
-}\r
-\r
-function getDef(aDataCon,nIdxSet,nIIdx)\r
-{\r
-       if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
-               return aDataCon[nIdxSet].aKs[nIIdx].sDef;\r
-       else\r
-               return null;\r
-}\r
-\r
-function getItemName(aDataCon,nIdxSet,nIIdx)\r
-{\r
-       if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
-               return aDataCon[nIdxSet].aKs[nIIdx].sName;\r
-       else\r
-               return null;\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
-       if(gsBgImage&&gsBgImage.length>0)\r
-               document.body.background=gsBgImage;\r
-       if(gsBgColor&&gsBgColor.length>0)\r
-               document.body.bgColor=gsBgColor;\r
-       document.body.insertAdjacentHTML("beforeEnd",writeLoadingDiv());\r
-       loadGlo();\r
-       var oMsg=new whMessage(WH_MSG_SHOWGLO,this,1,null)\r
-       SendMessage(oMsg);\r
-}\r
-\r
-function loadGlo()\r
-{\r
-       if(!gbReady)\r
-       {\r
-               var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
-               if(SendMessage(oResMsg)&&oResMsg.oParam)\r
-               {\r
-                       gbReady=true;\r
-                       var oProj=oResMsg.oParam;\r
-                       var aProj=oProj.aProj;\r
-                       gbXML=oProj.bXML;\r
-                       if(aProj.length>0)\r
-                       {\r
-                               var sLangId=aProj[0].sLangId;\r
-                               for(var i=0;i<aProj.length;i++)\r
-                               {\r
-                                       if(aProj[i].sGlo&&aProj[i].sLangId==sLangId)\r
-                                               addProjInfo(aProj[i].sPPath,aProj[i].sDPath,aProj[i].sGlo);\r
-                               }\r
-                       }\r
-                       writeDataIFrame();\r
-                       enEvt();\r
-               }               \r
-       }\r
-}\r
-\r
-function findCKInDom()\r
-{\r
-       return true;\r
-}\r
-\r
-function GloWriteClassStyle()\r
-{\r
-       var sStyle="<STYLE TYPE='text/css'>\n";\r
-       if (gsBgImage)\r
-               sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
-       else\r
-               sStyle+="body {border-top:black 1px solid;}\n";\r
-       sStyle+="P {"+getFontStyle(goFont)+"margin-top:"+gsMargin+";margin-bottom:"+gsMargin+";margin-left:"+gsIndent+";}\n";\r
-       sStyle+="A:link {"+getFontStyle(goFont)+"}\n";\r
-       sStyle+="A:visited {"+getFontStyle(goFont)+"}\n";\r
-       sStyle+="A:active {background-color:"+gsActiveBgColor+";}\n";\r
-       sStyle+="A:hover {"+getFontStyle(goHoverFont)+"}\n";\r
-       sStyle+="</STYLE>";     \r
-       document.write(sStyle);\r
-}\r
-\r
-function window_Unload()\r
-{\r
-       UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
-       UnRegisterListener2(this,WH_MSG_SHOWGLO);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       if(oMsg)\r
-       {\r
-               var nMsgId=oMsg.nMessageId;\r
-               if(nMsgId==WH_MSG_SHOWGLO)\r
-               {\r
-                       if(!gbNav6)\r
-                               document.body.focus();\r
-               }\r
-               else if(nMsgId==WH_MSG_PROJECTREADY)\r
-               {\r
-                       loadGlo();\r
-               }\r
-       }\r
-       return true;\r
-}\r
-\r
-if (window.gbWhUtil&&window.gbWhProxy&&window.gbWhVer&&window.gbWhLang&&window.gbWhMsg&&window.gbWhHost)\r
-{\r
-       RegisterListener2(this,WH_MSG_PROJECTREADY);\r
-       RegisterListener2(this,WH_MSG_SHOWGLO);\r
-       goFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
-       goHoverFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
-       window.onload=window_OnLoad;\r
-       window.onbeforeunload=window_BUnload;\r
-       window.onunload=window_Unload;\r
-       gbWhGHost=true;\r
-}\r
-else\r
-       document.location.reload();\r
-\r
diff --git a/doc/salome/gui/GUI/whhost.js b/doc/salome/gui/GUI/whhost.js
deleted file mode 100755 (executable)
index 5a02374..0000000
+++ /dev/null
@@ -1,1305 +0,0 @@
-//     WebHelp 5.10.002\r
-var gaChunks=new Array();\r
-var gaFakes=new Array();\r
-var gaDataCon=null;\r
-var gaData=new Array();\r
-\r
-var gbFindCK=false;;\r
-var gbNeedCalc=false;\r
-var gbScrl=false;\r
-var gbProcess=false;\r
-var gbReady=false;\r
-\r
-var gnCheck=0;\r
-var gnNum=0;\r
-var gnIns=-1;\r
-var gnLoad=0;\r
-var gnRef=-1;\r
-var gnMaxItems=0;\r
-var gnMaxMargin=32000;\r
-var gnNeeded=0;\r
-var gnNKI=-1;\r
-var gnRE=0;\r
-var gnScrlMgn=30;\r
-var gnSE=0;\r
-var gnVisible=0;\r
-var gnItems=0;\r
-var gnUHeight=1;\r
-\r
-var gsBCK=null;\r
-var gsChK=null;\r
-var gsCK=null;\r
-var gsLoadingDivID="LoadingDiv";\r
-var gsLoadingMsg="Loading data, please wait...";\r
-var gsSKA=null;\r
-var gsSKB=null;\r
-\r
-var gbLoadInfo=false;\r
-\r
-function onLoadXMLError()\r
-{\r
-       if(gbLoadInfo)\r
-       {\r
-               var aChunk=new Array();\r
-               projReady(aChunk);\r
-       }\r
-       else\r
-       {\r
-               var aData=new Array();\r
-               putData(aData);\r
-       }\r
-}\r
-\r
-function putDataXML(xmlDoc,sDocPath)\r
-{\r
-       if(gbLoadInfo)\r
-       {\r
-               var node=xmlDoc.lastChild;\r
-               if(node)\r
-               {\r
-                       var nTotal=0\r
-                       var aChunk=new Array();\r
-                       var oC=node.firstChild;\r
-                       while(oC)\r
-                       {\r
-                               if(oC.nodeName=="chunkinfo")\r
-                               {\r
-                                       var item=new Object();\r
-                                       item.sBK=oC.getAttribute("first");\r
-                                       item.sEK=oC.getAttribute("last");\r
-                                       item.sFileName=oC.getAttribute("url");\r
-                                       item.nNum=parseInt(oC.getAttribute("num"));\r
-                                       nTotal+=item.nNum;\r
-                                       item.nTotal=nTotal;\r
-                                       aChunk[aChunk.length]=item;\r
-                               }\r
-                               oC=oC.nextSibling;\r
-                       }\r
-                       projReady(aChunk);\r
-               }\r
-       }\r
-       else\r
-       {\r
-               var node=xmlDoc.lastChild;\r
-               if(node)\r
-               {\r
-                       var aData=new Array();\r
-                       var nPrev=0;\r
-                       var nNext=0;\r
-                       var oC=node.firstChild;\r
-                       while(oC)\r
-                       {\r
-                               nPrev=nNext;\r
-                               if(oC.nodeName=="key")\r
-                               {\r
-                                       var sName=oC.getAttribute("name");\r
-                                       if(sName&&sName.length>0)\r
-                                       {\r
-                                               var sTarget=oC.getAttribute("target");\r
-                                               var item=new Object();\r
-                                               item.nType=2;\r
-                                               item.sName=sName;\r
-                                               if(sTarget)\r
-                                                       item.sTarget=sTarget;\r
-                                               item.nPKOff=nPrev;\r
-                                               aData[aData.length]=item;\r
-                                               var nCurIndex=aData.length;\r
-                                               processKey(oC,aData,item);\r
-                                               nNext=aData.length-nCurIndex;\r
-                                               item.nNKOff=nNext;\r
-                                       }\r
-                               }\r
-                               else if(oC.nodeName=="letter")\r
-                               {\r
-                                       var name=oC.getAttribute("name");\r
-                                       if(name&&name.length>0)\r
-                                       {\r
-                                               var item=new Object();\r
-                                               item.nType=1;\r
-                                               item.sName=name;\r
-                                               item.nPKOff=nPrev;\r
-                                               nNext=0;\r
-                                               item.nNKOff=nNext;\r
-                                               aData[aData.length]=item;\r
-                                       }\r
-                               }\r
-                               else if(oC.nodeName=="entry")\r
-                               {\r
-                                       var name=oC.getAttribute("name");\r
-                                       var def=oC.getAttribute("value");\r
-                                       if(name&&name.length>0)\r
-                                       {\r
-                                               var item=new Object();\r
-                                               item.sName=name;\r
-                                               item.sDef=def;\r
-                                               item.nPKOff=nPrev;\r
-                                               nNext=0;\r
-                                               item.nNKOff=nNext;\r
-                                               aData[aData.length]=item;\r
-                                       }\r
-                               }\r
-                               oC=oC.nextSibling;\r
-                       }\r
-                       putData(aData);\r
-               }\r
-       }\r
-}\r
-\r
-function processKey(element,aData,item)\r
-{\r
-       var i=0;\r
-       var nPrev=0;\r
-       var nNext=0;\r
-       var oC=element.firstChild;\r
-       while(oC)\r
-       {\r
-               if(oC.nodeName=="topic")\r
-               {\r
-                       var name=oC.getAttribute("name");\r
-                       var url=oC.getAttribute("url");\r
-                       if(url&&url.length!=0)\r
-                       {\r
-                               if(!name||name.length==0)\r
-                                       name=url;\r
-                               var topic=new Object();\r
-                               topic.sName=name;\r
-                               topic.sURL=url;\r
-                               if(!item.aTopics)\r
-                                       item.aTopics=new Array();\r
-                               item.aTopics[item.aTopics.length]=topic;\r
-                       }\r
-               }\r
-               else if(oC.nodeName=="key")\r
-               {\r
-                       nPrev=nNext;\r
-                       var name=oC.getAttribute("name");\r
-                       if(name&&name.length!=0)\r
-                       {\r
-                               var subItem=new Object();\r
-                               subItem.sName=name;\r
-                               subItem.nType=3;\r
-                               subItem.nPKOff=nPrev;\r
-                               aData[aData.length]=subItem;\r
-                               var nCurIndex=aData.length;\r
-                               processKey(oC,aData,subItem);\r
-                               nNext=aData.length-nCurIndex;\r
-                               subItem.nNKOff=nNext;\r
-                       }\r
-               }\r
-               oC=oC.nextSibling;\r
-       }\r
-}\r
-\r
-function putData(aData)\r
-{\r
-       endLoading();\r
-       var oCData=goCData;\r
-       if(oCData)\r
-       {\r
-               oCData.aKs=aData;\r
-               if(gnNKI==-1)\r
-                       setTimeout("checkReady();",1);\r
-               else\r
-               {\r
-                       gsSKA=getKByIdx(oCData,gnNKI);\r
-                       gbNeedCalc=true;\r
-                       gbScrl=true;\r
-                       gnNKI=-1;\r
-                       if(gsSKA)\r
-                               setTimeout("checkReady();",1);\r
-                       else\r
-                       {\r
-                               markEnd();\r
-                               setTimeout("checkAgain();",50);\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-function markEnd()\r
-{\r
-       if(gbProcess)\r
-               gbProcess=false;\r
-}\r
-\r
-function endLoading()\r
-{\r
-       var oDiv=getElement(gsLoadingDivID);\r
-       if(oDiv)\r
-               oDiv.style.visibility="hidden";\r
-}\r
-\r
-function markBegin()\r
-{\r
-       gbProcess=true;\r
-}\r
-\r
-function beginLoading()\r
-{\r
-       var oDiv=getElement(gsLoadingDivID);\r
-       if(oDiv)\r
-       {\r
-               oDiv.style.top=document.body.scrollTop;\r
-               oDiv.style.visibility="visible";\r
-       }\r
-}\r
-\r
-function indexHTMLPart()\r
-{\r
-       this.sHTML="";\r
-       this.nNeeded=0;\r
-       this.nCurrent=0;\r
-       this.nConsumed=0;\r
-       this.sFK=null;\r
-       this.sLK=null;\r
-       this.addHTML=function(sHTML,nConsumed,bDown,bK,sK){\r
-               if(bDown)\r
-                       this.sHTML+=sHTML;\r
-               else\r
-                       this.sHTML=sHTML+this.sHTML;\r
-               this.nCurrent++;                        \r
-               this.nConsumed+=nConsumed;\r
-               if(bK)\r
-               {\r
-                       if(!this.sFK)\r
-                               this.sFK=sK;\r
-                       if(!this.sLK)\r
-                               this.sLK=sK;\r
-                       if(bDown)\r
-                               this.sLK=sK;\r
-                       else\r
-                               this.sFK=sK;\r
-               }\r
-       }\r
-       this.appendHTML=function(oHTML,bDown){\r
-               this.addSubHTML(oHTML,bDown);\r
-               if(!this.sFK)\r
-                       this.sFK=oHTML.sFK;\r
-               if(!this.sLK)\r
-                       this.sLK=oHTML.sLK;\r
-               if(bDown)\r
-                       this.sLK=oHTML.sLK;\r
-               else\r
-                       this.sFK=oHTML.sFK;\r
-       }       \r
-       \r
-       this.addSubHTML=function(oHTML,bDown){\r
-               if(bDown)\r
-                       this.sHTML+=oHTML.sHTML;\r
-               else\r
-                       this.sHTML=oHTML.sHTML+this.sHTML;\r
-               this.nCurrent+=oHTML.nCurrent;\r
-               this.nConsumed+=oHTML.nConsumed;                        \r
-       }\r
-}\r
-\r
-function getMaxUnits()\r
-{\r
-       return Math.floor(gnMaxMargin/gnUHeight)+1;\r
-}\r
-\r
-function getFakeItemsHTMLbyCount(nB,nCount)\r
-{\r
-       var nMU=getMaxUnits();\r
-       var nNum=Math.floor(nCount/nMU);\r
-       var sHTML="";\r
-       for(var i=0;i<nNum;i++)\r
-               sHTML+=getFakeItemHTML(nB,nMU-1);\r
-               \r
-       var nRest=nCount%nMU;\r
-       sHTML+=getFakeItemHTML(nB,nRest-1);\r
-       return sHTML;\r
-}\r
-\r
-function getFakeItemHTML(nB,nNum)\r
-{\r
-       return "<h6 name=fk"+nB+" id=fk"+nB+" style=\"margin-top:"+gnUHeight*nNum+";margin-bottom:0\">&nbsp;</h6>";\r
-}\r
-\r
-function fakeItemsArea(nB,n,sKA,sKB,obj)\r
-{\r
-       this.nB=nB;\r
-       this.nNum=n;\r
-       this.sKA=sKA;\r
-       this.sKB=sKB;\r
-       this.obj=obj;\r
-       this.nMargin=(n-1)*gnUHeight;\r
-\r
-       this.setNum=function(n)\r
-       {\r
-               var nLastobj=-1;\r
-               var nDelta=this.nMargin;\r
-               this.nMargin=(n-1)*gnUHeight;\r
-               nDelta=nDelta-this.nMargin;\r
-               if(n>0)\r
-               {\r
-                       this.nNum=n;\r
-                       var nMU=getMaxUnits();\r
-                       nLastobj=Math.floor((n-1)/nMU);\r
-                       if(this.obj.length)\r
-                               this.obj[nLastobj].style.marginTop=((n-1)%nMU)*gnUHeight;\r
-                       else\r
-                               this.obj.style.marginTop=((n-1)%nMU)*gnUHeight;\r
-               }\r
-               if(this.obj.length)\r
-               {\r
-                       for(var i=this.obj.length-1;i>nLastobj;i--)\r
-                               removeThis(this.obj[i]);\r
-               }\r
-               else\r
-               {\r
-                       if(nLastobj==-1)\r
-                               removeThis(this.obj);\r
-               }\r
-               return nDelta;\r
-       }\r
-       this.insertAdjacentHTML=function(sWhere,sHTML)\r
-       {\r
-               if(sWhere=="beforeBegin")\r
-               {\r
-                       if(this.obj.length)\r
-                               this.obj[0].insertAdjacentHTML(sWhere,sHTML);\r
-                       else\r
-                               this.obj.insertAdjacentHTML(sWhere,sHTML);\r
-               }\r
-               else if(sWhere=="afterEnd")\r
-               {\r
-                       if(this.obj.length)\r
-                       {\r
-                               if(gbMac&&gbIE5&&this.obj[this.obj.length-1].nextSibling)\r
-                                       this.obj[this.obj.length-1].nextSibling.insertAdjacentHTML("beforeBegin",sHTML);\r
-                               else\r
-                                       this.obj[this.obj.length-1].insertAdjacentHTML(sWhere,sHTML);\r
-                       }\r
-                       else\r
-                       {\r
-                               if(gbMac&&gbIE5&&this.obj.nextSibling)\r
-                                       this.obj.nextSibling.insertAdjacentHTML("beforeBegin",sHTML);\r
-                               else\r
-                                       this.obj.insertAdjacentHTML(sWhere,sHTML);\r
-                       }\r
-               }\r
-       }\r
-       this.getBtm=function()\r
-       {\r
-               if(this.obj.length)\r
-                       return this.obj[this.obj.length-1].offsetTop;\r
-               else\r
-                       return this.obj.offsetTop;\r
-       }\r
-       this.getTop=function()\r
-       {\r
-               return this.getBtm()-this.nMargin;\r
-       }\r
-}\r
-\r
-function usedItems(nB,nE)\r
-{\r
-       this.nB=nB;\r
-       this.nE=nE;\r
-       this.oN=null;\r
-}\r
-\r
-function checkReady()\r
-{\r
-       var len=gaChunks.length;\r
-       var bNeedLoad=false;\r
-       var aDataCon;\r
-       var s=0;\r
-       var bDown=(gsSKB==null);\r
-       var sK=bDown?gsSKA:gsSKB;\r
-       if(sK==null)\r
-       {\r
-               markEnd();\r
-               setTimeout("checkAgain();",50);\r
-               return;\r
-       }\r
-       if(!gsChK||sK!=gsChK||gnNum==0)\r
-       {\r
-               gnCheck=0;\r
-               gsChK=sK;\r
-               aDataCon=new Array();\r
-       }\r
-       else{\r
-               s=gnNum;\r
-               aDataCon=gaDataCon;\r
-       }\r
-       for(var i=gnCheck;i<len;i++)\r
-       {\r
-               var oCData=getChunkedData(i,bDown,sK);\r
-               if(oCData)\r
-               {\r
-                       if(!oCData.aKs&&oCData.sFileName!=null)\r
-                       {\r
-                               bNeedLoad=true;\r
-                               goCData=oCData;\r
-                               gnNum=s;\r
-                               gnCheck=i;\r
-                               gaDataCon=aDataCon;\r
-                               oCData.nProjId=i;\r
-                               gbLoadInfo=false;\r
-                               beginLoading();\r
-                               loadData2(gaData[i].sPPath+gaData[i].sDPath+oCData.sFileName);\r
-                               return;\r
-                       }\r
-                       else{\r
-                               aDataCon[s++]=oCData;\r
-                       }\r
-               }\r
-       }\r
-       if(!bNeedLoad)\r
-       {\r
-               gnNum=0;\r
-               gsSKA=gsSKB=gsShowK=null;\r
-               \r
-               var oHTML=new indexHTMLPart();\r
-               var aPos=new Array();\r
-               var aOriPos=new Array();\r
-               var aMaxPos=new Array();\r
-               var aMinPos=new Array();\r
-               \r
-               if(gbNeedCalc||gbFindCK) gnIns=0;\r
-               for(i=0;i<aDataCon.length;i++)\r
-               {\r
-                       aPos[i]=getIdxPos(aDataCon[i],bDown,sK);\r
-                       if(gbNeedCalc||gbFindCK)\r
-                       {\r
-                               gnIns+=aPos[i]+aDataCon[i].nTotal-aDataCon[i].nNum;\r
-                               if(!bDown)\r
-                               {\r
-                                       if(aPos[i]!=-1)\r
-                                       {\r
-                                               if(aDataCon[i].aKs)\r
-                                                       gnIns+=aDataCon[i].aKs[aPos[i]].nNKOff;\r
-                                               else\r
-                                               {\r
-                                                       var n=aPos[i]+1;\r
-                                                       while(n<aDataCon[i].aKsOnly.length&&!aDataCon[i].aKsOnly[n])\r
-                                                               n++;\r
-                                                       n=n-aPos[i]-1;\r
-                                                       gnIns+=n;\r
-                                               }\r
-                                       }\r
-                               }\r
-                       }\r
-                       aOriPos[i]=aPos[i];\r
-                       getLimit(aDataCon,aPos,aMaxPos,aMinPos,i);\r
-               }\r
-               if((gbNeedCalc||gbFindCK)&&!bDown&&gnIns!=-1)\r
-               {\r
-                       gnIns+=(aDataCon.length-1)\r
-               }\r
-               if(gnIns!=-1||gbFindCK)\r
-               {\r
-                       oHTML.nNeeded=gnNeeded;\r
-                       var bDone=writeItems(oHTML,aDataCon,aPos,aMinPos,aMaxPos,bDown,1);\r
-                       if(oHTML.nConsumed!=0)\r
-                       {\r
-                               var nB;\r
-                               if(!bDown)\r
-                                       nB=gnIns-oHTML.nConsumed+1;\r
-                               else\r
-                                       nB=gnIns;\r
-                                       \r
-                               var oldScrollPos=document.body.scrollTop;\r
-                               if(insertIdxKs(nB,oHTML,gbScrl))\r
-                               {\r
-                                       updateUsedK(aDataCon,aOriPos,aPos,bDown);\r
-                                       if(!gbScrl&&gbMac)\r
-                                       {\r
-                                               while(document.body.scrollTop!=oldScrollPos)\r
-                                                       document.body.scrollTop=oldScrollPos;\r
-                                       }\r
-                                       gbScrl=false;\r
-                               }\r
-                               if(gbFindCK)\r
-                               {\r
-                                       gbFindCK=false;\r
-                                       gbNeedCalc=true;\r
-                                       gsSKB=oHTML.sFK;\r
-                                       gnIns=-1;\r
-                                       setTimeout("checkReady();",50);\r
-                                       return;\r
-                               }\r
-                       }\r
-                       else if(gbFindCK)\r
-                       {\r
-                               gbFindCK=false;\r
-                               gbNeedCalc=true;\r
-                               gsSKB=getFirstKeyFromPos(aDataCon,aPos);\r
-                               gnIns=-1;\r
-                               setTimeout("checkReady();",50);\r
-                               return;\r
-                       }\r
-                       if(!findCKInDom()) return;\r
-\r
-                       gnNeeded=gnNeeded-oHTML.nCurrent;\r
-                       gnIns=-1;\r
-                       markEnd();\r
-                       setTimeout("checkAgain();",50);\r
-                       gbNeedCalc=false;\r
-               }\r
-               else\r
-               {\r
-                       if(!findCKInDom()) return;\r
-                       markEnd();\r
-                       setTimeout("checkAgain();",50);\r
-               }\r
-       }\r
-}\r
-\r
-function getFirstKeyFromPos(aDataCon,aPos)\r
-{\r
-       var sCurrentK=getBiggestChar();\r
-       for(var i=0;i<aPos.length;i++)\r
-       {\r
-               if(aDataCon[i].aKs&&aDataCon[i].aKs.length>0&&aPos[i]>=0&&aPos[i]<aDataCon[i].aKs.length)\r
-               {\r
-                       if(sCurrentK==""||\r
-                               compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)>0)\r
-                       {\r
-                               sCurrentK=aDataCon[i].aKs[aPos[i]].sName;\r
-                       }\r
-               }\r
-       }\r
-       return sCurrentK;\r
-}\r
-\r
-function checkAgain()\r
-{\r
-       if(!gbProcess)\r
-       {\r
-               if(gsBCK!=null)\r
-               {\r
-                       gsCK=gsBCK;\r
-                       gsBCK=null;\r
-                       findCK();\r
-               }\r
-               else\r
-               {\r
-                       markBegin();\r
-                       getUnitIdx(document.body.scrollTop,document.body.clientHeight);\r
-               }\r
-       }\r
-       else\r
-               setTimeout("checkAgain()",50);\r
-}\r
-\r
-function getLimit(aDataCon,aPos,aMaxPos,aMinPos,i)\r
-{\r
-       aMaxPos[i]=aDataCon[i].nNum;\r
-       aMinPos[i]=-1;\r
-       var oPNode=null;\r
-       if(aDataCon[i].oUsedItems)\r
-       {\r
-               var oUsedItems=aDataCon[i].oUsedItems;\r
-               do{\r
-                       if(oUsedItems.nB>aPos[i])\r
-                       {\r
-                               aMaxPos[i]=oUsedItems.nB;\r
-                               break;\r
-                       }\r
-                       oPNode=oUsedItems;\r
-                       oUsedItems=oUsedItems.oN;\r
-               }while(oUsedItems!=null);\r
-               if(oPNode)\r
-                       aMinPos[i]=oPNode.nE;\r
-       }\r
-       else if(aDataCon[i].aKs==null)\r
-       {\r
-               aMaxPos[i]=aMinPos[i]=aPos[i];\r
-       }\r
-       if(aMinPos[i]>=aPos[i]||aMaxPos[i]<=aPos[i])\r
-       {\r
-               aMaxPos[i]=aMinPos[i]=aPos[i];\r
-       }\r
-}\r
-\r
-function getIdxPos(oIdx,bDown,sK)\r
-{\r
-       var aKs=oIdx.aKs;\r
-       var nIdx;\r
-       if(bDown)\r
-               nIdx=oIdx.nNum;\r
-       else\r
-               nIdx=-1;\r
-       if(aKs!=null)\r
-       {\r
-               for(var i=0;i<aKs.length;i++)\r
-               {       \r
-                       if(bDown)\r
-                       {\r
-                               if(compare(aKs[i].sName,sK)>0)\r
-                               {\r
-                                       nIdx=i;\r
-                                       break;\r
-                               }\r
-                       }\r
-                       else\r
-                       {\r
-                               if(compare(aKs[i].sName,sK)<0)\r
-                                       nIdx=i;\r
-                               else\r
-                                       break;\r
-                       }\r
-                       i+=aKs[i].nNKOff;\r
-               }\r
-       }\r
-       else if(oIdx.aKsOnly)\r
-       {\r
-               var aKsOnly=oIdx.aKsOnly;\r
-               for(var i=0;i<aKsOnly.length;i++)\r
-               {       \r
-                       if(aKsOnly[i])\r
-                       {\r
-                               if(bDown)\r
-                               {\r
-                                       if(compare(aKsOnly[i],sK)>0)\r
-                                       {\r
-                                               nIdx=i;\r
-                                               break;\r
-                                       }\r
-                               }\r
-                               else\r
-                               {\r
-                                       if(compare(aKsOnly[i],sK)<0)\r
-                                               nIdx=i;\r
-                                       else\r
-                                               break;\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-       return nIdx;\r
-}\r
-\r
-function writeItems(oHTML,aDataCon,aPos,aMinPos,aMaxPos,bDown,nLevel)\r
-{\r
-       var aOldPos=new Array();\r
-       for(var i=0;i<aPos.length;i++)\r
-       {\r
-               aOldPos[i]=aPos[i];\r
-       }\r
-       var p;\r
-       do{\r
-               var sCurrentK="";\r
-               var aCurIdxSet=new Array();\r
-               p=0;\r
-               for(i=0;i<aDataCon.length;i++)\r
-               {\r
-                       if(aDataCon[i].aKs&&aDataCon[i].aKs.length&&aPos[i]!=-1&&\r
-                               (bDown&&aPos[i]<aMaxPos[i])||(!bDown&&aPos[i]>aMinPos[i]))\r
-                       {\r
-                               if(sCurrentK==""||\r
-                                       (bDown&&compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)>0)||\r
-                                       (!bDown&&compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)<0))\r
-                               {\r
-                                       sCurrentK=aDataCon[i].aKs[aPos[i]].sName;\r
-                                       p=0;\r
-                                       aCurIdxSet[p++]=i;\r
-                               }\r
-                               else if(compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)==0){\r
-                                       aCurIdxSet[p++]=i;\r
-                               }\r
-                       }\r
-                       else if(nLevel==1&&aMaxPos[i]!=aMinPos[i]){\r
-                               if(bDown&&aPos[i]==aMaxPos[i])\r
-                               {\r
-                                       if(aDataCon[i].aKs)\r
-                                       {\r
-                                               gsSKA=aDataCon[i].aKs[aOldPos[i]].sName;\r
-                                               return false;\r
-                                       }\r
-                               }\r
-                               else if(!bDown&&aPos[i]==aMinPos[i])\r
-                               {\r
-                                       if(aDataCon[i].aKs)\r
-                                       {\r
-                                               gsSKB=aDataCon[i].aKs[aOldPos[i]].sName;\r
-                                               return false;\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-               if(p>=1){\r
-                       for(var s=0;s<p;s++)\r
-                       {\r
-                               aOldPos[aCurIdxSet[s]]=aPos[aCurIdxSet[s]];\r
-                       }\r
-                       mergeItems(oHTML,bDown,aDataCon,aCurIdxSet,p,aPos,nLevel);\r
-                       adjustPosition(bDown,aDataCon,aCurIdxSet,p,aPos);\r
-                       \r
-                       if(nLevel==1&&oHTML.nNeeded<=oHTML.nCurrent){\r
-                               return true;\r
-                       }\r
-               }\r
-       }while(p>0);\r
-       return true;\r
-}\r
-\r
-function updateUsedK(aDataCon,aOriPos,aOldPos,bDown)\r
-{\r
-       for(var i=0;i<aDataCon.length;i++)\r
-       {\r
-               if (aOldPos[i]!=aOriPos[i])\r
-               {\r
-                       var nBP=0;\r
-                       var nEP=0;\r
-                       if(bDown)\r
-                       {\r
-                               nBP=aOriPos[i];\r
-                               nEP=aOldPos[i]-1;\r
-                       }\r
-                       else\r
-                       {\r
-                               if (aOldPos[i]!=-1)\r
-                                       nBP=aOldPos[i]+aDataCon[i].aKs[aOldPos[i]].nNKOff+1;\r
-                               else\r
-                                       nBP=0;\r
-                               nEP=aOriPos[i]+aDataCon[i].aKs[aOriPos[i]].nNKOff;\r
-                       }\r
-                       if(nBP<=nEP)\r
-                       {\r
-                               setContentsUsed(aDataCon[i],nBP,nEP);\r
-                               \r
-                               var oFirstPair=aDataCon[i].oUsedItems;\r
-                               if(oFirstPair.oN==null&&oFirstPair.nB==0&&oFirstPair.nE==aDataCon[i].nNum-1)\r
-                               {\r
-                                       storeKeysOnly(aDataCon[i]);\r
-                                       aDataCon[i].oUsedItems=aDataCon[i].aKs=aDataCon[i].sFileName=null;\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-function storeKeysOnly(oCData)\r
-{\r
-       oCData.aKsOnly=new Array();\r
-       for(var i=0;i<oCData.aKs.length;i++)\r
-       {\r
-               oCData.aKsOnly[i]=oCData.aKs[i].sName;\r
-               i+=oCData.aKs[i].nNKOff;\r
-       }\r
-}\r
-\r
-function setContentsUsed(oIdx,nB,nE)\r
-{\r
-       if(!oIdx.oUsedItems)\r
-               oIdx.oUsedItems=new usedItems(nB,nE);\r
-       else\r
-       {\r
-               var oUsedItems=oIdx.oUsedItems;\r
-               var oPNode=null;\r
-               do{\r
-                       if(oUsedItems.nB>nB)\r
-                       {\r
-                               if(oUsedItems.nB==nE+1)\r
-                               {\r
-                                       oUsedItems.nB=nB;\r
-                               }\r
-                               else{\r
-                                       var oNewNode=new usedItems(oUsedItems.nB,oUsedItems.nE);\r
-                                       oNewNode.oN=oUsedItems.oN;\r
-                                       oUsedItems.nB=nB;\r
-                                       oUsedItems.nE=nE;\r
-                                       oUsedItems.oN=oNewNode;\r
-                               }\r
-                               break;\r
-                       }\r
-                       oPNode=oUsedItems;\r
-                       oUsedItems=oUsedItems.oN;\r
-               }while(oUsedItems);\r
-               if(!oUsedItems)\r
-               {\r
-                       if(oPNode!=null)\r
-                               oPNode.oN=new usedItems(nB,nE);\r
-               }\r
-               if(oPNode!=null){\r
-                       if(oPNode.nE==oPNode.oN.nB-1)\r
-                       {\r
-                               oPNode.nE=oPNode.oN.nE;\r
-                               oPNode.oN=oPNode.oN.oN;\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-function projInfo(sPPath,sDPath,sFile)\r
-{\r
-       this.sPPath=sPPath;\r
-       this.sDPath=sDPath;\r
-       this.sFile=sFile;\r
-}\r
-\r
-function addProjInfo(sPPath,sDPath,sFile)\r
-{\r
-       var oIdxInfo=new projInfo(sPPath,sDPath,sFile);\r
-       gaData[gaData.length]=oIdxInfo;\r
-       return oIdxInfo;\r
-}\r
-\r
-function writeDataIFrame()\r
-{\r
-       if(gnLoad<gaData.length)\r
-       {\r
-               gbLoadInfo=true;\r
-               loadData2(gaData[gnLoad].sPPath+gaData[gnLoad].sDPath+gaData[gnLoad].sFile);\r
-       }\r
-       else{\r
-               if(gnItems!=0)\r
-               {\r
-                       markBegin();\r
-                       writeFakeItems();\r
-                       gsSKA="";\r
-                       gnNeeded=gnVisible;\r
-                       gnIns=0;\r
-                       checkReady();\r
-               }\r
-       }\r
-}\r
-\r
-function getH6ById(nPos)\r
-{\r
-       if(document.all)\r
-               return document.all("fk"+nPos);\r
-       else if(document.getElementsByName)\r
-               return document.getElementsByName("fk"+nPos);\r
-       return null;            \r
-}\r
-\r
-function showItemsInEvaluation(nBP)\r
-{\r
-       var bRtn=true;\r
-       var fPer=nBP/gnItems;\r
-       var nB=Math.floor(fPer*gnMaxItems);\r
-       var oCData=getChunkByIdx(gnRef,nB);\r
-       if(oCData)\r
-       {\r
-               if(!oCData.aKs&&oCData.sFileName!=null)\r
-               {\r
-                       gnNKI=nB;\r
-                       goCData=oCData;\r
-                       oCData.nProjId=gnRef;\r
-                       gbLoadInfo=false;\r
-                       beginLoading();\r
-                       loadData2(gaData[gnRef].sPPath+gaData[gnRef].sDPath+oCData.sFileName);\r
-               }\r
-               else{\r
-                       gsSKA=getKByIdx(oCData,nB);\r
-                       if(gsSKA)\r
-                       {\r
-                               gsSKB=null;\r
-                               gbNeedCalc=true;\r
-                               gbScrl=true;\r
-                               checkReady()\r
-                       }\r
-                       else\r
-                       {\r
-                               markEnd();\r
-                               bRtn=false;\r
-                       }\r
-               }\r
-       }\r
-       else\r
-       {\r
-               markEnd();\r
-               bRtn=false;\r
-       }\r
-       return bRtn;\r
-}\r
-\r
-function isUsed(oCData,nPos)\r
-{\r
-       var oUsed=oCData.oUsedItems;\r
-       while(oUsed&&oUsed.nB<=nPos)\r
-       {\r
-               if(oUsed.nE>=nPos) return true;\r
-               oUsed=oUsed.oN;\r
-       }\r
-       return false;\r
-}\r
-\r
-function getKByIdx(oCData,nB)\r
-{\r
-       var nRelPos=nB-(oCData.nTotal-oCData.nNum);\r
-       var aIKs=oCData.aKs;\r
-       if(nRelPos>=0&&aIKs&&nRelPos<aIKs.length)\r
-       {\r
-               var oK=null;\r
-               do{\r
-                       oK=aIKs[nRelPos++];\r
-               }       \r
-               while((oK.nType==3||isUsed(oCData,nRelPos-1))&&nRelPos<aIKs.length);\r
-               if(oK.nType!=3)\r
-               {\r
-                       return oK.sName;\r
-               }\r
-               else{\r
-                       nRelPos=nB-(oCData.nTotal-oCData.nNum)-1;\r
-                       if(nRelPos>=0)\r
-                       {\r
-                               do{\r
-                                       oK=aIKs[nRelPos--];\r
-                               }\r
-                               while((oK.nType==3||isUsed(oCData,nRelPos+1))&&nRelPos>=0);\r
-                       }\r
-                       if(oK.nType!=3)\r
-                       {\r
-                               return oK.sName;\r
-                       }\r
-               }\r
-       }\r
-       return null;\r
-}\r
-\r
-function loadData2(sFileName)\r
-{\r
-       disEvt();\r
-       if(gbXML)\r
-               loadDataXML(sFileName);\r
-       else\r
-               loadData(sFileName);\r
-       enEvt();\r
-}\r
-\r
-function projReady(aChunk)\r
-{\r
-       gaChunks[gnLoad++]=aChunk;\r
-       var len=aChunk.length;\r
-       var nTotal=0;\r
-       if(len>0)\r
-               nTotal=aChunk[len-1].nTotal;\r
-       gnItems+=nTotal;\r
-       if(nTotal>gnMaxItems)\r
-       {\r
-               gnMaxItems=nTotal;\r
-               gnRef=gnLoad-1;\r
-       }\r
-       setTimeout("writeDataIFrame();",1);\r
-}\r
-\r
-function writeFakeItems()\r
-{\r
-       disEvt();\r
-       gnUHeight=15;\r
-       var sHTML=getFakeItemsHTMLbyCount(0,gnItems);\r
-       document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
-       var obj=getH6ById(0);\r
-       if (document.body != null)\r
-       {\r
-               gnVisible=Math.ceil(document.body.clientHeight/gnUHeight);\r
-       }\r
-       gaFakes[0]=new fakeItemsArea(0,gnItems,"",getEndString(),obj);\r
-       enEvt();\r
-}\r
-\r
-function getEndString()\r
-{\r
-       var sBC=getBiggestChar();\r
-       return sBC+sBC+sBC+sBC+sBC+sBC+sBC+sBC;\r
-}\r
-\r
-function getUnitIdx(nScrl,nHeight)\r
-{\r
-       if(gaFakes.length==0)\r
-       {\r
-               markEnd();\r
-               return;\r
-       }\r
-       var nB=0;\r
-       var nE=gaFakes.length-1;\r
-       var nM=-1;\r
-       var nTop=0;\r
-       var nBtm=0;\r
-       var bF=false;\r
-       do{\r
-               nM=(nB+nE)>>1;\r
-               nBtm=gaFakes[nM].getBtm();\r
-               nTop=gaFakes[nM].getTop();\r
-                       \r
-               if(nTop>=nScrl+nHeight)\r
-                       nE=nM-1;\r
-               else if(nBtm<nScrl)\r
-                       nB=nM+1;\r
-               else{\r
-                       bF=true;\r
-                       break;\r
-               }\r
-       }while(nE>=nB);\r
-       if(bF)\r
-       {\r
-               if(nTop>=nScrl){\r
-                       gsSKA=gaFakes[nM].sKA;\r
-                       gsSKB=null;\r
-                       gnNeeded=Math.ceil((nHeight-nTop+nScrl)/gnUHeight);\r
-                       gnIns=gaFakes[nM].nB;\r
-                       checkReady();\r
-               }\r
-               else if(nBtm<=nScrl+nHeight){\r
-                       gsSKB=gaFakes[nM].sKB;\r
-                       gsSKA=null;\r
-                       gnNeeded=Math.ceil((nBtm-nScrl+gnScrlMgn)/gnUHeight);\r
-                       gbNeedCalc=true;\r
-                       checkReady();\r
-               }\r
-               else{\r
-                       gnNeeded=gnVisible;\r
-                       var nUnitIdx=gaFakes[nM].nB+Math.floor((nScrl-nTop)/gnUHeight);\r
-                       if (!showItemsInEvaluation(nUnitIdx))\r
-                       {\r
-                               gsSKA=gaFakes[nM].sKA;\r
-                               gsSKB=null;\r
-                               gnNeeded=Math.ceil(nHeight/gnUHeight);\r
-                               gnIns=gaFakes[nM].nB;\r
-                               checkReady();\r
-                       }\r
-               }\r
-       }\r
-       else\r
-               markEnd();\r
-}\r
-\r
-function disEvt()\r
-{\r
-       window.onscroll=null;\r
-       window.onresize=null;\r
-}\r
-\r
-function enEvt()\r
-{\r
-       window.onscroll=window_OnScroll;\r
-       window.onresize=window_OnResize;\r
-}\r
-\r
-function insertIdxKs(nIns,oHTML,bScrl)\r
-{\r
-       var bRtn=true;\r
-       disEvt();\r
-       var nCount=oHTML.nConsumed;\r
-       var nB=0;\r
-       var nE=gaFakes.length-1;\r
-       var nM=-1;\r
-       var bF=false;\r
-       do{\r
-               nM=(nB+nE)>>1;\r
-               if(gaFakes[nM].nB>nIns)\r
-                       nE=nM-1;\r
-               else if(gaFakes[nM].nB+gaFakes[nM].nNum<=nIns)\r
-                       nB=nM+1;\r
-               else{\r
-                       bF=true;\r
-                       break;\r
-               }\r
-       }while(nE>=nB);\r
-       if(bF)\r
-       {\r
-               var oFIA=gaFakes[nM];\r
-               var nOffsetTop=oFIA.getTop();\r
-               var nOffsetBottom=oFIA.getBtm();\r
-               var nDelta=0;\r
-               var nHDiff=nIns-oFIA.nB;\r
-               var nTDiff=oFIA.nNum+oFIA.nB-(nIns+nCount);\r
-               if(nHDiff>0)\r
-               {\r
-                       nDelta=oFIA.setNum(nHDiff);\r
-                       var sOldKBefore=oFIA.sKB;\r
-                       oFIA.sKB=oHTML.sFK;\r
-                       if(nTDiff>0)\r
-                       {\r
-                               var sHTML=getFakeItemsHTMLbyCount(nIns,nTDiff);\r
-                               oFIA.insertAdjacentHTML("afterEnd",sHTML);\r
-                               var obj=getH6ById(nIns);\r
-                               insertItemIntoArray(gaFakes,nM+1,new fakeItemsArea(nIns+nCount,nTDiff,oHTML.sLK,sOldKBefore,obj));\r
-                       }\r
-                       oFIA.insertAdjacentHTML("afterEnd",oHTML.sHTML);        \r
-                       if(bScrl)\r
-                       {\r
-                               if(gbMac&&gbIE4)\r
-                               {\r
-                                       var nScrollPos=nOffsetBottom-nDelta;\r
-                                       while(document.body.scrollTop!=nScrollPos)\r
-                                               document.body.scrollTop=nScrollPos;\r
-                               }\r
-                               else\r
-                                       window.scrollTo(0,nOffsetBottom-nDelta);\r
-                       }\r
-               }\r
-               else{\r
-                       oFIA.insertAdjacentHTML("beforeBegin",oHTML.sHTML);\r
-                       if(bScrl){\r
-                               if(gbMac&&gbIE4)\r
-                               {\r
-                                       var nScrollPos=nOffsetTop;\r
-                                       while(document.body.scrollTop!=nScrollPos)\r
-                                               document.body.scrollTop=nScrollPos;\r
-                               }\r
-                               else\r
-                                       window.scrollTo(0,nOffsetTop);\r
-                       }\r
-                                       \r
-                       if(nTDiff>0)\r
-                       {\r
-                               oFIA.nB=nIns+nCount;\r
-                               nDelta=oFIA.setNum(nTDiff);\r
-                               oFIA.sKA=oHTML.sLK;\r
-                       }       \r
-                       else{\r
-                               gaFakes[nM].setNum(0);\r
-                               removeItemFromArray(gaFakes,nM);\r
-                       }\r
-               }\r
-       }\r
-       else\r
-               bRtn=false;\r
-       enEvt();\r
-       return bRtn;\r
-}\r
-\r
-function window_OnScroll()\r
-{\r
-       gnSE++;\r
-       setTimeout("procScroll();",50); \r
-}\r
-\r
-function procScroll()\r
-{\r
-       if(gnSE==1&&!gbProcess)\r
-       {\r
-               markBegin();\r
-               getUnitIdx(document.body.scrollTop,document.body.clientHeight);\r
-       }\r
-       gnSE--;\r
-}\r
-\r
-function window_OnResize()\r
-{\r
-       gnRE++;\r
-       setTimeout("procResize();",50);\r
-}\r
-\r
-function procResize()\r
-{\r
-       if(gnRE==1&&!gbProcess)\r
-       {\r
-               markBegin();\r
-               gnVisible=Math.ceil(document.body.clientHeight/gnUHeight);\r
-               if(gnIns==-1)\r
-                       getUnitIdx(document.body.scrollTop,document.body.clientHeight);\r
-       }\r
-       gnRE--;\r
-}\r
-\r
-function getChunkByIdx(nIdx,nPosition)\r
-{\r
-       var oCData=null;\r
-       if(nIdx<gaChunks.length)\r
-       {\r
-               var len=gaChunks[nIdx].length;\r
-               if(len>0)\r
-               {\r
-                       var nB=0;\r
-                       var nE=len-1;\r
-                       var bF=false;\r
-                       do{\r
-                               var nM=(nB+nE)>>1;\r
-                               if(nPosition<gaChunks[nIdx][nM].nTotal)\r
-                               {\r
-                                       bF=true;\r
-                                       nE=nM;\r
-                               }\r
-                               else\r
-                                       nB=nM+1;\r
-                       }while(nE>nB);\r
-                       if(bF)\r
-                               oCData=gaChunks[nIdx][nE];\r
-                       else if(nPosition<gaChunks[nIdx][nB].nTotal)\r
-                               oCData=gaChunks[nIdx][nB];\r
-               }\r
-       }\r
-       return oCData;\r
-}\r
-\r
-function getChunkedData(nIdx,bDown,sK)\r
-{\r
-       var oCData=null;\r
-       var nCandId=-1;\r
-       if(nIdx<gaChunks.length)\r
-       {\r
-               var len=gaChunks[nIdx].length;\r
-               if(len>0)\r
-               {\r
-                       var nB=0;\r
-                       var nE=len-1;\r
-                       var bF=false;\r
-                       do{\r
-                               var nM=(nB+nE+(bDown?0:1))>>1;\r
-                               if(bDown)\r
-                               {\r
-                                       if(compare(sK,gaChunks[nIdx][nM].sEK)<0)\r
-                                       {\r
-                                               bF=true;\r
-                                               nE=nM;\r
-                                       }\r
-                                       else\r
-                                               nB=nM+1;\r
-                               }\r
-                               else\r
-                               {\r
-                                       if(compare(sK,gaChunks[nIdx][nM].sBK)>0)\r
-                                       {\r
-                                               bF=true;\r
-                                               nB=nM;\r
-                                       }\r
-                                       else\r
-                                               nE=nM-1;\r
-                               }\r
-                       }while(nE>nB);\r
-                       if(bF)\r
-                       {\r
-                               if(bDown)\r
-                                       nCandId=nE;\r
-                               else\r
-                                       nCandId=nB;\r
-                       }\r
-                       else\r
-                       {\r
-                               if(bDown)\r
-                               {\r
-                                       if(gaChunks[nIdx].length>nB&&compare(sK,gaChunks[nIdx][nB].sEK)<0)\r
-                                               nCandId=nB;\r
-                                       else\r
-                                               nCandId=gaChunks[nIdx].length-1;\r
-                               }\r
-                               else\r
-                               {\r
-                                       if(0<=nE&&compare(sK,gaChunks[nIdx][nE].sBK)>0)\r
-                                               nCandId=nE;\r
-                                       else\r
-                                               nCandId=0;\r
-                               }\r
-                       }\r
-                       return gaChunks[nIdx][nCandId];\r
-               }\r
-       }\r
-       return null;\r
-}\r
-\r
-function findCK()\r
-{\r
-       if(gsCK!=null)\r
-       {\r
-               gsSKA=gsCK;\r
-               gbFindCK=true;\r
-               gnNeeded=1;\r
-               markBegin();\r
-               checkReady();\r
-       }\r
-}\r
-\r
-function writeLoadingDiv(nIIdx)\r
-{\r
-       return "<div id=\""+gsLoadingDivID+"\" style=\"position:absolute;top:0;left:0;z-index:600;visibility:hidden;padding-left:4px;background-color:ivory;border-width:1;border-style:solid;border-color:black;width:150px;\">"+gsLoadingMsg+"</div>";\r
-}\r
-\r
-var gbWhHost=true;
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whibody.htm b/doc/salome/gui/GUI/whibody.htm
deleted file mode 100755 (executable)
index d95ca0a..0000000
+++ /dev/null
@@ -1,284 +0,0 @@
-<html>\r
-<head>\r
-<title>Index content</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<base target="bsscright">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whlang.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whhost.js"></script>\r
-<script language="javascript1.2" src="whihost.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var goPopup = null;\r
-var gbPopupMenuTimeoutExpired=false;\r
-var gBsClientWidth=640;\r
-var gBsClientHeight=480;\r
-var g_bIsPopupMenuInit=false;\r
-\r
-function WritePopupMenuLayer()\r
-{\r
-       if (!g_bIsPopupMenuInit)\r
-       {\r
-               document.write("<DIV ID='PopupMenu' STYLE='position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;'></DIV>");\r
-               document.write("<STYLE TYPE='text/css'>");\r
-               if (gbMac && gbIE4) {\r
-                       document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:10pt; text-decoration:none;}");\r
-                       document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:10pt; text-decoration:none;}");\r
-               } else {\r
-                       document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:8pt; text-decoration:none;}");\r
-                       document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:8pt; text-decoration:none;}");\r
-               }\r
-               document.write("</STYLE>");\r
-       }\r
-       g_bIsPopupMenuInit = true;\r
-}\r
-\r
-function PopupMenu_Invoke()\r
-{\r
-       if (gbNav6)\r
-               resetHighLight();\r
-       \r
-       if (!gbNav6  && document.readyState != "complete")\r
-               return false;\r
-       var fn_arguments = PopupMenu_Invoke.arguments; \r
-       // Make sure we have reasonable arguments\r
-       var argLen = fn_arguments.length;\r
-       if (argLen < 3) {\r
-               return false;\r
-       }\r
-\r
-       // Check to see if we only have one target\r
-       var strTarget = "";\r
-       \r
-       strTarget = "TARGET='" + fn_arguments[1] + "'";\r
-       \r
-       if (argLen < 5) {\r
-               // Get the place that we will be putting the topic into\r
-               var strURL = fn_arguments[3];\r
-\r
-               if (fn_arguments[1] != null && typeof(fn_arguments[1]) != "undefined")\r
-                       window.open(strURL, fn_arguments[1]);\r
-               else\r
-                       window.open(strURL);\r
-                       \r
-               return false;\r
-       }\r
-       \r
-       var strMenu = '<TABLE STYLE="border:2px outset white;" CELLSPACING=0';\r
-       if (gbMac && gbIE4) {\r
-               strMenu += ' CELLPADDING=4';\r
-       } else {\r
-               strMenu += ' CELLPADDING=2';\r
-       }       \r
-       strMenu += ' BGCOLOR=#c0c0c0>';\r
-\r
-       // Add each of the items\r
-       if (gbIE55)\r
-       {\r
-               var i = 2;\r
-               while (i <= argLen - 1) {\r
-                       strMenu += '<TR><TD><NOBR>'\r
-                       strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A ';\r
-                       strMenu += ' onclick="parent.PopupMenu_2HandleClick(\'' + excapeSingleQuotandSlash(fn_arguments[i + 1]) + '\', \'' + fn_arguments[1] + '\');"';\r
-                       strMenu += ' onmouseover="parent.PopupMenu_Over(event);"';\r
-                       strMenu += ' onmouseout="parent.PopupMenu_Out(event);"';\r
-                       strMenu += '>';\r
-                       strMenu += '<SPAN CLASS="PopupNotOver">' + fn_arguments[i] + '</SPAN>';\r
-                       strMenu += '</A></DIV></NOBR></TD></TR>';\r
-                       i += 2;\r
-               }\r
-       }\r
-       else\r
-       {\r
-               var i = 2;\r
-               while (i <= argLen - 1) {\r
-                       strMenu += '<TR><TD><NOBR>'\r
-                       strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A HREF="' + fn_arguments[i + 1] + '" ' + strTarget;\r
-                       strMenu += ' onclick="PopupMenu_HandleClick(event);"';\r
-                       strMenu += ' onmouseover="PopupMenu_Over(event);"';\r
-                       strMenu += ' onmouseout="PopupMenu_Out(event);"';\r
-                       strMenu += '>';\r
-                       strMenu += '<SPAN CLASS="PopupNotOver">' + excapeSingleQuotandSlash(fn_arguments[i]) + '</SPAN>';\r
-                       strMenu += '</A></DIV></NOBR></TD></TR>';\r
-                       i += 2;\r
-               }\r
-       }\r
-       strMenu += "</TABLE>";\r
-\r
-       if (gbMac && gbIE4) {\r
-       // ie5 in mac need something. </TABLE> is one of them.\r
-               strMenu +="<TABLE></TABLE>";\r
-       }\r
-\r
-       var layerPopup = null;\r
-       var stylePopup = null;\r
-       var nEventX = 0;\r
-       var nEventY = 0;\r
-       var nWindowWidth = 0;\r
-       if (gbIE4||gbOpera7)\r
-       {\r
-               layerPopup = document.all["PopupMenu"];\r
-               layerPopup.innerHTML = strMenu;\r
-               stylePopup = layerPopup.style;\r
-\r
-               _BSPSGetClientSize();\r
-\r
-               // Get the position of the item causing the event (relative to its parent)\r
-               nEventX = window.event.clientX;\r
-               nEventY = window.event.clientY;\r
-               \r
-               if (nEventY + layerPopup.scrollHeight + 10 < gBsClientHeight) {\r
-                       nEventY += document.body.scrollTop + 10;\r
-               } else {\r
-                       nEventY = (document.body.scrollTop + gBsClientHeight) - layerPopup.scrollHeight - 20;\r
-               }\r
-               stylePopup.top = nEventY;\r
-\r
-               if (nEventX + layerPopup.scrollWidth + 20 > gBsClientWidth) {\r
-                       if (gBsClientWidth - layerPopup.scrollWidth < 5) {\r
-                               stylePopup.left = 5;\r
-                       } else {\r
-                               stylePopup.left = gBsClientWidth - layerPopup.scrollWidth - 5;\r
-                       }\r
-               } else {\r
-                       stylePopup.left = nEventX + document.body.scrollLeft + 20;\r
-               }\r
-\r
-               if (gbIE55) {\r
-                       var nPosX = window.event.clientX;\r
-                       var nPosY = window.event.clientY;\r
-                       if (window.event.srcElement)\r
-                       {\r
-                               nPosX = window.event.srcElement.offsetLeft + window.event.srcElement.offsetWidth - document.body.scrollLeft;\r
-                               nPosY = window.event.srcElement.offsetTop + window.event.srcElement.offsetHeight - document.body.scrollTop;\r
-                       }\r
-                       goPopup = window.createPopup();\r
-                       var oPopupBody = goPopup.document.body;\r
-                       goPopup.document.createStyleSheet();\r
-                       goPopup.document.styleSheets[0].addRule(".PopupOver", "{font-family:\"Arial\"; cursor: hand;color:white; background:navy; font-size:8pt; text-decoration:none;}");\r
-                       goPopup.document.styleSheets[0].addRule(".PopupNotOver", "{font-family:\"Arial\"; color:black; background:#c0c0c0; font-size:8pt; text-decoration:none;}");\r
-                       oPopupBody.insertAdjacentHTML("afterBegin", strMenu);\r
-                       goPopup.show(nPosX, nPosY, layerPopup.scrollWidth, layerPopup.scrollHeight, document.body);\r
-               }\r
-               else \r
-               {\r
-                       stylePopup.visibility = "visible";\r
-                       document.onclick = PopupMenu_HandleClick;\r
-               }\r
-       } else if (gbNav6) {\r
-               layerPopup = document.getElementById("PopupMenu");\r
-               layerPopup.style.visibility = "hidden";\r
-       \r
-               var e = fn_arguments[0];\r
-               nEventX = e.pageX;\r
-               nEventY = e.pageY;\r
-               _BSPSGetClientSize();\r
-               layerPopup.innerHTML = strMenu;\r
-\r
-               if (nEventY + layerPopup.offsetHeight + 20  <  window.pageYOffset + gBsClientHeight) {\r
-                       nEventY += 20;\r
-               } else {\r
-                       nEventY = gBsClientHeight + window.pageYOffset - layerPopup.offsetHeight - 20;\r
-               }\r
-\r
-               if (nEventX + layerPopup.offsetWidth + 20 > gBsClientWidth + window.pageXOffset) {\r
-                       if (gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth < 20) {\r
-                               nEventX = 5;\r
-                       } else {\r
-                               nEventX = gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth - 20;\r
-                       }\r
-               } else {\r
-                       nEventX += 20;\r
-               }\r
-               layerPopup.style.top = nEventY;\r
-               layerPopup.style.left = nEventX;\r
-\r
-               // set again to avoid the frash in netscape 6.\r
-               layerPopup.innerHTML = strMenu;\r
-               layerPopup.style.visibility = "visible";\r
-               window.onclick = PopupMenu_HandleClick;\r
-       } \r
-\r
-       window.gbPopupMenuTimeoutExpired = false;\r
-       setTimeout("PopupMenu_Timeout();", 100);\r
-       return false;\r
-}\r
-\r
-function PopupMenu_Timeout()\r
-{\r
-       window.gbPopupMenuTimeoutExpired = true;\r
-}\r
-\r
-function PopupMenu_Over(e)\r
-{\r
-       if (gbIE4||gbOpera7)\r
-               e.srcElement.className = "PopupOver";\r
-       else if (gbNav6)\r
-               e.target.parentNode.className = "PopupOver";\r
-}\r
-\r
-function PopupMenu_Out(e)\r
-{\r
-       if (gbIE4||gbOpera7)\r
-               e.srcElement.className = "PopupNotOver";\r
-       else if (gbNav6)\r
-               e.target.parentNode.className = "PopupNotOver";\r
-}\r
-\r
-function PopupMenu_2HandleClick(surl, starget)\r
-{\r
-       window.open(surl, starget);\r
-       goPopup.hide();\r
-}\r
-\r
-function PopupMenu_HandleClick(e)\r
-{\r
-       if (!window.gbPopupMenuTimeoutExpired) {\r
-               return;\r
-       }\r
-\r
-       var layerPopup = getElement("PopupMenu");\r
-       layerPopup.style.visibility = "hidden";\r
-\r
-       return;\r
-}\r
-\r
-//Get client size info\r
-function _BSPSGetClientSize()\r
-{\r
-       gBsClientWidth  = document.body.clientWidth;\r
-       gBsClientHeight = document.body.clientHeight;\r
-}\r
-\r
-if (window.gbWhIHost)\r
-{\r
-       \r
-       \r
-       setFont("Normal", "Arial","9pt","#000000","normal","normal","none");\r
-       setFont("Empty", "Arial","9pt","#000000","normal","normal","none");\r
-       setFont("Hover", "Arial","9pt","#007f00","normal","normal","underline");\r
-       setActiveBgColor("#cccccc");\r
-       setMargin("0pt");\r
-       setIndent("9pt");\r
-       IndexWriteClassStyle();\r
-}\r
-else\r
-       document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" scroll="auto" bgcolor="white">\r
-<script languageE="JavaScript">\r
-<!--\r
-WritePopupMenuLayer();\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
-\r
diff --git a/doc/salome/gui/GUI/whidhtml.htm b/doc/salome/gui/GUI/whidhtml.htm
deleted file mode 100755 (executable)
index 72400e6..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<html>\r
-<head>\r
-<title>Index</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gbIndexLayerInit = false;\r
-if (window.gbWhProxy&&window.gbWhMsg&&window.gbWhVer)\r
-{\r
-       var strWrite;\r
-       if (gbMac)\r
-               strWrite="<FRAMESET ROWS='45,100%' framespacing=0  frameborder=1>";\r
-       else\r
-               strWrite="<FRAMESET ROWS='60,100%' framespacing=0  frameborder=1>";\r
-       strWrite +="<FRAME SRC='whiform.htm' title='index form frame' name='idxform' noresize='yes' scrolling='no'>";\r
-       strWrite +="<FRAME SRC='whibody.htm' title='index content frame' name='idxbody' scrolling='yes'>";\r
-       strWrite +="</FRAMESET>";\r
-       document.write(strWrite);\r
-}\r
-else\r
-       document.location.reload();\r
-//-->\r
-</script>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/whiform.htm b/doc/salome/gui/GUI/whiform.htm
deleted file mode 100755 (executable)
index 563bc3c..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-<html>\r
-<head>\r
-<title>Index form</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<style>\r
-<!--\r
-body {margin:0;}\r
--->\r
-</style>\r
-<body bgcolor="#c0c0c0">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whform.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-function indexLookup(bCR)\r
-{\r
-       var strInput = document.IndexInputForm.keywordField.value.toUpperCase();\r
-       if (strInput != "") {\r
-               var oParam = new Object();\r
-               oParam.sInput = strInput;\r
-               oParam.bCR = bCR;\r
-               var oMessage = new whMessage(WH_MSG_SEARCHINDEXKEY, this, 1, oParam);\r
-               SendMessage(oMessage);\r
-       }\r
-       if (gbMac) {\r
-               document.IndexInputForm.keywordField.focus();\r
-       }\r
-}\r
-\r
-function window_Unload()\r
-{\r
-       UnRegisterListener2(this, WH_MSG_SHOWTOC);\r
-       UnRegisterListener2(this, WH_MSG_SHOWIDX);\r
-       UnRegisterListener2(this, WH_MSG_SHOWFTS);\r
-       UnRegisterListener2(this, WH_MSG_SHOWGLO);\r
-}\r
-\r
-function onSendMessage(oMessage)\r
-{\r
-       if (oMessage.nMessageId == WH_MSG_SHOWIDX)\r
-       {\r
-               document.IndexInputForm.keywordField.focus();\r
-       }\r
-       else if (oMessage.nMessageId == WH_MSG_SHOWFTS ||\r
-               oMessage.nMessageId == WH_MSG_SHOWTOC || \r
-               oMessage.nMessageId == WH_MSG_SHOWGLO)\r
-       {\r
-               document.IndexInputForm.keywordField.blur();\r
-       }\r
-       return true;\r
-}\r
-\r
-if (window.gbWhForm)\r
-{\r
-       RegisterListener2(this, WH_MSG_SHOWTOC);\r
-       RegisterListener2(this, WH_MSG_SHOWIDX);\r
-       RegisterListener2(this, WH_MSG_SHOWFTS);\r
-       RegisterListener2(this, WH_MSG_SHOWGLO);\r
-       window.onunload=window_Unload;\r
-       window.onload = init;\r
-       gfunLookUp = indexLookup;\r
-       gfunInit = null;\r
-       gstrFormName = "IndexInputForm"\r
-       gsTitle = "Type in the keyword to find:";\r
-       gsTitle = "Type in the keyword to find:";\r
-\r
-       \r
-       \r
-       \r
-       \r
-       \r
-       \r
-       setGoText("Go");\r
-       setFont("Title", "Arial","9pt","#000000","normal","normal","none");\r
-       \r
-       \r
-       document.write(getFormHTML());\r
-       writeFormStyle();\r
-}\r
-else\r
-       document.location.reload();\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whihost.js b/doc/salome/gui/GUI/whihost.js
deleted file mode 100755 (executable)
index 9aaf13a..0000000
+++ /dev/null
@@ -1,424 +0,0 @@
-//     WebHelp 5.10.002\r
-var gsDefaultTarget="bsscright";\r
-var gsBgColor="#ffffff";\r
-var gsBgImage="";\r
-var goIdxFont=null;\r
-var goIdxEmptyFont=null;\r
-var goIdxHoverFont=null;\r
-var gsIdxMargin="0pt";\r
-var gsIdxIndent="8pt";\r
-var gsIdxActiveBgColor="#cccccc";\r
-var gsCK = null;\r
-var gsBCK = null;\r
-var gbCR = false;\r
-var gbBCR = false;\r
-var gbWhIHost=true;\r
-\r
-function myEvent()\r
-{\r
-       this.pageX = 0;\r
-       this.pageY = 0;\r
-}\r
-var _event=new myEvent();\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
-       gsBgColor=sBgColor;\r
-}\r
-\r
-function setBackground(sBgImage)\r
-{\r
-       gsBgImage=sBgImage;\r
-}\r
-\r
-function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
-       var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
-       if(sType=="Normal")\r
-               goIdxFont=vFont;\r
-       else if(sType=="Empty")\r
-               goIdxEmptyFont=vFont;\r
-       else if(sType=="Hover")\r
-               goIdxHoverFont=vFont;\r
-}\r
-\r
-function setActiveBgColor(sBgColor)\r
-{\r
-       gsIdxActiveBgColor=sBgColor;\r
-}\r
-\r
-function setMargin(sMargin)\r
-{\r
-       gsIdxMargin=sMargin;\r
-}\r
-\r
-function setIndent(sIndent)\r
-{\r
-       gsIdxIndent=sIndent;\r
-}\r
-\r
-function writeOneItem(oHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel)\r
-{\r
-       var sHTML="";\r
-       var nIdxSet=aCurIdxSet[0];\r
-       var nIIdx=aPos[nIdxSet];\r
-       var sKOriName=getItemName(aDataCon,nIdxSet,nIIdx);\r
-       var sKName=_textToHtml(sKOriName);\r
-\r
-       var nIdxIndent=parseInt(gsIdxIndent);\r
-       var sTopics="";\r
-       if(nLevel==1){\r
-               if(getItemType(aDataCon,nIdxSet,nIIdx)==1)\r
-               {\r
-                       sHTML+="<H6><nobr>";\r
-                       sHTML+="<b>"+sKName+"</b></nobr></H6>";\r
-               }\r
-               else{\r
-                       for(var i=0;i<nLength;i++)\r
-                               sTopics+=getIdxTopics(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
-                       sHTML+="<p style=\"margin-left:"+gsIdxIndent+"\"><nobr>";\r
-                       sHTML+="<a alt=\"" + sKName + "\" href=\"javascript:void(0);\" onfocus=\"clearHighLight();\" onclick=\"PopupMenu_Invoke(event,'"+excapeSingleQuotandSlash(getTargetName(aDataCon,nIdxSet,nIIdx))+"'";\r
-                       if(sTopics.length>0)\r
-                               sHTML+=sTopics+");return false;\">"+sKName+"</a></nobr></p>";\r
-                       else\r
-                               sHTML+=");return false;\" style=\""+getFontStyle(goIdxEmptyFont)+"\">"+sKName+"</a></nobr></p>";\r
-               }\r
-       }\r
-       else if(nLevel>=2){\r
-               var nIndent=nIdxIndent*nLevel;\r
-               for(var i=0;i<nLength;i++)\r
-                       sTopics+=getIdxTopics(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
-               if (nLevel==2)\r
-                       sHTML+="<h6 class=\"firstsub\" style=\"margin-left:"+nIndent+"pt\"><nobr>";\r
-               else\r
-                       sHTML+="<h6 style=\"margin-left:"+nIndent+"pt\"><nobr>";\r
-               sHTML+="<a alt=\"" + sKName + "\" href=\"javascript:void(0);\" onfocus=\"clearHighLight();\" onclick=\"PopupMenu_Invoke(event,'"+excapeSingleQuotandSlash(getTargetName(aDataCon,nIdxSet,nIIdx))+"'";\r
-               if(sTopics.length>0)\r
-                       sHTML+=sTopics+");return false;\">"+sKName+"</a></nobr></h6>";\r
-               else\r
-                       sHTML+=");return false;\" style=\""+getFontStyle(goIdxEmptyFont)+"\">"+sKName+"</a></nobr></h6>";\r
-       }\r
-       oHTML.addHTML(sHTML,nLength,bDown,(nLevel==1),sKOriName);\r
-}\r
-\r
-function getTargetName(aDataCon,nIdxSet,nIIdx)\r
-{\r
-       if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
-               if(aDataCon[nIdxSet].aKs[nIIdx].sTarget)\r
-                       return aDataCon[nIdxSet].aKs[nIIdx].sTarget;\r
-       return gsDefaultTarget;\r
-}\r
-\r
-function mergeItems(oHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel)\r
-{\r
-       var oLocalHTML=new indexHTMLPart();\r
-       writeOneItem(oLocalHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel);\r
-       \r
-       var aLocalPos=new Array();\r
-       var aMaxPos=new Array();\r
-       for(var i=0;i<aPos.length;i++)\r
-       {\r
-               aLocalPos[i]=aPos[i];\r
-               aMaxPos[i]=-1;\r
-       }\r
-       \r
-       for(i=0;i<nLength;i++)\r
-       {\r
-               var nNKOff=getNKOff(aDataCon,aCurIdxSet[i],aLocalPos[aCurIdxSet[i]]);\r
-               aLocalPos[aCurIdxSet[i]]++;\r
-               if(nNKOff>0)\r
-                       aMaxPos[aCurIdxSet[i]]=aLocalPos[aCurIdxSet[i]]+nNKOff;\r
-       }\r
-       var oSubHTML=new indexHTMLPart();\r
-       writeItems(oSubHTML,aDataCon,aLocalPos,null,aMaxPos,true,nLevel+1);\r
-       oLocalHTML.addSubHTML(oSubHTML,true);\r
-       oHTML.appendHTML(oLocalHTML,bDown);\r
-}\r
-\r
-function adjustPosition(bDown,aDataCon,aCurIdxSet,nLength,aPos)\r
-{\r
-       if(bDown)\r
-       {\r
-               for(var i=0;i<nLength;i++)\r
-               {\r
-                       var nNKOff=getNKOff(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
-                       aPos[aCurIdxSet[i]]+=(1+nNKOff);\r
-               }\r
-       }\r
-       else{\r
-               for(var i=0;i<nLength;i++)\r
-               {\r
-                       var nPKOff=getPKOff(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
-                       aPos[aCurIdxSet[i]]-=(1+nPKOff);\r
-               }\r
-       }\r
-}\r
-\r
-function getItemName(aDataCon,nIdxSet,nIIdx)\r
-{\r
-       if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
-               return aDataCon[nIdxSet].aKs[nIIdx].sName;\r
-       else\r
-               return null;\r
-}\r
-\r
-function getItemType(aDataCon,nIdxSet,nIIdx)\r
-{\r
-       if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
-               return aDataCon[nIdxSet].aKs[nIIdx].nType;\r
-       else\r
-               return 0;\r
-}\r
-\r
-function getNKOff(aDataCon,nIdxSet,nIIdx)\r
-{\r
-       if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
-               return aDataCon[nIdxSet].aKs[nIIdx].nNKOff;\r
-       else\r
-               return null;\r
-}\r
-\r
-function getPKOff(aDataCon,nIdxSet,nIIdx)\r
-{\r
-       if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
-               return aDataCon[nIdxSet].aKs[nIIdx].nPKOff;\r
-       else\r
-               return null;\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
-       if(gsBgImage&&gsBgImage.length>0)\r
-       {\r
-               document.body.background=gsBgImage;\r
-       }\r
-       if(gsBgColor&&gsBgColor.length>0)\r
-       {\r
-               document.body.bgColor=gsBgColor;\r
-       }\r
-       document.body.insertAdjacentHTML("beforeEnd",writeLoadingDiv());\r
-       loadIdx();\r
-       var oMsg=new whMessage(WH_MSG_SHOWIDX,this,1,null)\r
-       SendMessage(oMsg);\r
-}\r
-\r
-function loadIdx()\r
-{\r
-       if(!gbReady)\r
-       {\r
-               var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
-               if(SendMessage(oResMsg)&&oResMsg.oParam)\r
-               {\r
-                       gbReady=true;\r
-                       var oProj=oResMsg.oParam;\r
-                       var aProj=oProj.aProj;\r
-                       gbXML=oProj.bXML;\r
-                       if(aProj.length>0)\r
-                       {\r
-                               var sLangId=aProj[0].sLangId;\r
-                               for(var i=0;i<aProj.length;i++)\r
-                               {\r
-                                       if(aProj[i].sIdx&&aProj[i].sLangId==sLangId)\r
-                                       {\r
-                                               addProjInfo(aProj[i].sPPath,aProj[i].sDPath,aProj[i].sIdx);\r
-                                       }\r
-                               }\r
-                       }\r
-                       writeDataIFrame();\r
-                       enEvt();\r
-               }               \r
-       }\r
-}\r
-\r
-function getIdxTopics(aDataCon,nIdxSet,nIIdx)\r
-{\r
-       var sTopics="";\r
-       if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
-       {\r
-               if(aDataCon[nIdxSet].aKs[nIIdx].aTopics)\r
-               {\r
-                       var nLen=aDataCon[nIdxSet].aKs[nIIdx].aTopics.length;\r
-                       var nProj=aDataCon[nIdxSet].nProjId;\r
-                       var sPath=gaData[nProj].sPPath;\r
-                       for(var i=0;i<nLen;i++)\r
-                       {\r
-                               var sURL=aDataCon[nIdxSet].aKs[nIIdx].aTopics[i].sURL;\r
-                               var sFullPath=_getFullPath(sPath,sURL);\r
-                               sTopics+=",'"+excapeSingleQuotandSlash(_textToHtml(aDataCon[nIdxSet].aKs[nIIdx].aTopics[i].sName))+"','"+excapeSingleQuotandSlash(_textToHtml_nonbsp(sFullPath))+"'";\r
-                       }\r
-               }\r
-       }\r
-       return sTopics;         \r
-}\r
-\r
-function findCKInDom()\r
-{\r
-       if(gsCK!=null)\r
-       {\r
-               var sK=gsCK;\r
-               var oP=getElementsByTag(document,"P");\r
-               if(!oP) return false;\r
-               var len=oP.length;\r
-               var nB=0;\r
-               var nE=len-1;\r
-               var nM=0;\r
-               var sItem="";\r
-               var bF=false;\r
-               while(nB<nE){\r
-                       nM=(nB+nE+1)>>1;\r
-                       sItem=getInnerText(oP[nM]);\r
-                       \r
-                       if(compare(sItem,sK)==0)\r
-                       {\r
-                               bF=true;\r
-                               break;\r
-                       }\r
-                       else if(compare(sItem,sK)>0)\r
-                               nE=nM-1;\r
-                       else if(compare(sItem,sK)<0)\r
-                               nB=nM;\r
-               }\r
-               if(!bF)\r
-               {\r
-                       if(nB==nE) nM=nB;\r
-               \r
-                       if(nM+1<len)\r
-                       {\r
-                               sItem=getInnerText(oP[nM+1]);\r
-                               if(compare(sItem,sK)<=0) nM++;\r
-                       }                       \r
-                       if(nM+1<len)\r
-                       {\r
-                               sItem=getInnerText(oP[nM+1]);\r
-                               if(compare(sItem.substring(0,sK.length),sK)==0) nM++;\r
-                       }                       \r
-               }\r
-       \r
-               var oMatch=oP[nM];\r
-               if(oMatch)\r
-               {\r
-                       window.scrollTo(0,oMatch.offsetTop);\r
-                       var tempColl=getElementsByTag(oMatch,"A");\r
-                       if(tempColl&&tempColl.length>0){\r
-                               var nbTag=getElementsByTag(oMatch,"NOBR");\r
-                               if(nbTag&&nbTag.length>0)\r
-                                       HighLightElement(nbTag[0], gsIdxActiveBgColor, "transparent");\r
-                               if (gbCR)\r
-                               {\r
-                                       if (gbIE4)\r
-                                               tempColl(0).click();\r
-                                       else\r
-                                       {\r
-                                               var strCommand = tempColl[0].getAttribute("onClick");\r
-                                               var nstrCommand = strCommand.indexOf(";");\r
-                                               strCommand = strCommand.substring(0, nstrCommand);\r
-                                               strCommand = strCommand.replace("event", "_event");\r
-                                               window._event.pageX = oMatch.offsetLeft ;\r
-                                               window._event.pageY = oMatch.offsetTop + 20;\r
-                                               window.setTimeout(strCommand, 100);\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-               gsCK=gsBCK;\r
-               gbCR=gbBCR;\r
-               if(gsBCK!=null)\r
-               {\r
-                       gsBCK=null;\r
-                       gbBCR=false;\r
-                       findCK();\r
-                       return false;\r
-               }\r
-               \r
-       }\r
-       return true;\r
-}\r
-\r
-function clearHighLight()\r
-{\r
-       resetHighLight(gsBgColor);\r
-}\r
-\r
-function IndexWriteClassStyle()\r
-{\r
-       var sStyle="";\r
-       sStyle+="<STYLE TYPE='text/css'>";\r
-       if (gsBgImage)\r
-               sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
-       else\r
-               sStyle+="body {border-top:black 1px solid;}\n";\r
-       if(gbIE4&&gbMac&&!gbIE5)\r
-       {\r
-               var nMargin=parseInt(gsIdxMargin);\r
-               nMargin-=10;\r
-               sStyle+="P {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
-               sStyle+="H6 {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
-               sStyle+="H6.firstsub {"+getFontStyle(goIdxFont)+"margin-top:"+nMargin+"pt;margin-bottom:"+gsIdxMargin+";}\n";\r
-       }\r
-       else\r
-       {\r
-               sStyle+="P {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
-               sStyle+="H6 {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
-       }\r
-       sStyle+="DIV {margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
-       sStyle+="A:link {"+getFontStyle(goIdxFont)+"}\n";\r
-       sStyle+="A:visited {"+getFontStyle(goIdxFont)+"}\n";\r
-       sStyle+="A:active {background-color:"+gsIdxActiveBgColor+";}\n";\r
-       sStyle+="A:hover {"+getFontStyle(goIdxHoverFont)+"}\n";\r
-       sStyle+="</STYLE>";     \r
-       document.write(sStyle);\r
-       return;\r
-}\r
-\r
-function window_Unload()\r
-{\r
-       UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
-       UnRegisterListener2(this,WH_MSG_SEARCHINDEXKEY);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       if(oMsg)\r
-       {\r
-               var nMsgId=oMsg.nMessageId;\r
-               if(nMsgId==WH_MSG_SEARCHINDEXKEY)\r
-               {\r
-                       if(oMsg.oParam && oMsg.oParam.sInput)\r
-                       {\r
-                               if(gsCK==null)\r
-                               {\r
-                                       gsCK=oMsg.oParam.sInput;\r
-                                       gbCR = oMsg.oParam.bCR;\r
-                                       findCK();\r
-                               }\r
-                               else\r
-                               {\r
-                                       gsBCK=oMsg.oParam.sInput;\r
-                                       gbBCR = oMsg.oParam.bCR;\r
-                               }\r
-                       }\r
-               }\r
-               else if(nMsgId==WH_MSG_PROJECTREADY)\r
-               {\r
-                       loadIdx();\r
-               }\r
-       }\r
-       return true;\r
-}\r
-\r
-if(window.gbWhVer&&window.gbWhLang&&window.gbWhMsg&&window.gbWhUtil&&window.gbWhHost&&window.gbWhProxy)\r
-{\r
-       RegisterListener2(this,WH_MSG_PROJECTREADY);\r
-       RegisterListener2(this,WH_MSG_SEARCHINDEXKEY);\r
-       goIdxFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
-       goIdxEmptyFont=new whFont("Verdana","8pt","#666666","normal","normal","none");\r
-       goIdxHoverFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
-\r
-       window.onload=window_OnLoad;\r
-       window.onbeforeunload=window_BUnload;\r
-       window.onunload=window_Unload;\r
-       gbWhIHost=true;\r
-}\r
-else\r
-       document.location.reload();\r
-\r
diff --git a/doc/salome/gui/GUI/whlang.js b/doc/salome/gui/GUI/whlang.js
deleted file mode 100755 (executable)
index 870be0e..0000000
+++ /dev/null
@@ -1,453 +0,0 @@
-//     WebHelp 5.10.001\r
-var garrSortChar=new Array();\r
-var gaFtsStop=new Array();\r
-var gaFtsStem=new Array();\r
-var gbWhLang=false;\r
-\r
-garrSortChar[0] = 0;\r
-garrSortChar[1] = 1;\r
-garrSortChar[2] = 2;\r
-garrSortChar[3] = 3;\r
-garrSortChar[4] = 4;\r
-garrSortChar[5] = 5;\r
-garrSortChar[6] = 6;\r
-garrSortChar[7] = 7;\r
-garrSortChar[8] = 8;\r
-garrSortChar[9] = 40;\r
-garrSortChar[10] = 41;\r
-garrSortChar[11] = 42;\r
-garrSortChar[12] = 43;\r
-garrSortChar[13] = 44;\r
-garrSortChar[14] = 9;\r
-garrSortChar[15] = 10;\r
-garrSortChar[16] = 11;\r
-garrSortChar[17] = 12;\r
-garrSortChar[18] = 13;\r
-garrSortChar[19] = 14;\r
-garrSortChar[20] = 15;\r
-garrSortChar[21] = 16;\r
-garrSortChar[22] = 17;\r
-garrSortChar[23] = 18;\r
-garrSortChar[24] = 19;\r
-garrSortChar[25] = 20;\r
-garrSortChar[26] = 21;\r
-garrSortChar[27] = 22;\r
-garrSortChar[28] = 23;\r
-garrSortChar[29] = 24;\r
-garrSortChar[30] = 25;\r
-garrSortChar[31] = 26;\r
-garrSortChar[32] = 38;\r
-garrSortChar[33] = 45;\r
-garrSortChar[34] = 46;\r
-garrSortChar[35] = 47;\r
-garrSortChar[36] = 48;\r
-garrSortChar[37] = 49;\r
-garrSortChar[38] = 50;\r
-garrSortChar[39] = 33;\r
-garrSortChar[40] = 51;\r
-garrSortChar[41] = 52;\r
-garrSortChar[42] = 53;\r
-garrSortChar[43] = 88;\r
-garrSortChar[44] = 54;\r
-garrSortChar[45] = 34;\r
-garrSortChar[46] = 55;\r
-garrSortChar[47] = 56;\r
-garrSortChar[48] = 115;\r
-garrSortChar[49] = 119;\r
-garrSortChar[50] = 121;\r
-garrSortChar[51] = 123;\r
-garrSortChar[52] = 125;\r
-garrSortChar[53] = 126;\r
-garrSortChar[54] = 127;\r
-garrSortChar[55] = 128;\r
-garrSortChar[56] = 129;\r
-garrSortChar[57] = 130;\r
-garrSortChar[58] = 57;\r
-garrSortChar[59] = 58;\r
-garrSortChar[60] = 89;\r
-garrSortChar[61] = 90;\r
-garrSortChar[62] = 91;\r
-garrSortChar[63] = 59;\r
-garrSortChar[64] = 60;\r
-garrSortChar[65] = 131;\r
-garrSortChar[66] = 148;\r
-garrSortChar[67] = 150;\r
-garrSortChar[68] = 154;\r
-garrSortChar[69] = 158;\r
-garrSortChar[70] = 168;\r
-garrSortChar[71] = 171;\r
-garrSortChar[72] = 173;\r
-garrSortChar[73] = 175;\r
-garrSortChar[74] = 185;\r
-garrSortChar[75] = 187;\r
-garrSortChar[76] = 189;\r
-garrSortChar[77] = 191;\r
-garrSortChar[78] = 193;\r
-garrSortChar[79] = 197;\r
-garrSortChar[80] = 214;\r
-garrSortChar[81] = 216;\r
-garrSortChar[82] = 218;\r
-garrSortChar[83] = 220;\r
-garrSortChar[84] = 225;\r
-garrSortChar[85] = 230;\r
-garrSortChar[86] = 240;\r
-garrSortChar[87] = 242;\r
-garrSortChar[88] = 244;\r
-garrSortChar[89] = 246;\r
-garrSortChar[90] = 252;\r
-garrSortChar[91] = 61;\r
-garrSortChar[92] = 62;\r
-garrSortChar[93] = 63;\r
-garrSortChar[94] = 64;\r
-garrSortChar[95] = 66;\r
-garrSortChar[96] = 67;\r
-garrSortChar[97] = 131;\r
-garrSortChar[98] = 148;\r
-garrSortChar[99] = 150;\r
-garrSortChar[100] = 154;\r
-garrSortChar[101] = 158;\r
-garrSortChar[102] = 168;\r
-garrSortChar[103] = 171;\r
-garrSortChar[104] = 173;\r
-garrSortChar[105] = 175;\r
-garrSortChar[106] = 185;\r
-garrSortChar[107] = 187;\r
-garrSortChar[108] = 189;\r
-garrSortChar[109] = 191;\r
-garrSortChar[110] = 193;\r
-garrSortChar[111] = 197;\r
-garrSortChar[112] = 214;\r
-garrSortChar[113] = 216;\r
-garrSortChar[114] = 218;\r
-garrSortChar[115] = 220;\r
-garrSortChar[116] = 225;\r
-garrSortChar[117] = 230;\r
-garrSortChar[118] = 240;\r
-garrSortChar[119] = 242;\r
-garrSortChar[120] = 244;\r
-garrSortChar[121] = 246;\r
-garrSortChar[122] = 252;\r
-garrSortChar[123] = 68;\r
-garrSortChar[124] = 69;\r
-garrSortChar[125] = 70;\r
-garrSortChar[126] = 71;\r
-garrSortChar[127] = 27;\r
-garrSortChar[128] = 114;\r
-garrSortChar[129] = 28;\r
-garrSortChar[130] = 82;\r
-garrSortChar[131] = 170;\r
-garrSortChar[132] = 85;\r
-garrSortChar[133] = 112;\r
-garrSortChar[134] = 109;\r
-garrSortChar[135] = 110;\r
-garrSortChar[136] = 65;\r
-garrSortChar[137] = 113;\r
-garrSortChar[138] = 223;\r
-garrSortChar[139] = 86;\r
-garrSortChar[140] = 213;\r
-garrSortChar[141] = 29;\r
-garrSortChar[142] = 255;\r
-garrSortChar[143] = 30;\r
-garrSortChar[144] = 31;\r
-garrSortChar[145] = 80;\r
-garrSortChar[146] = 81;\r
-garrSortChar[147] = 83;\r
-garrSortChar[148] = 84;\r
-garrSortChar[149] = 111;\r
-garrSortChar[150] = 36;\r
-garrSortChar[151] = 37;\r
-garrSortChar[152] = 79;\r
-garrSortChar[153] = 229;\r
-garrSortChar[154] = 222;\r
-garrSortChar[155] = 87;\r
-garrSortChar[156] = 212;\r
-garrSortChar[157] = 32;\r
-garrSortChar[158] = 254;\r
-garrSortChar[159] = 251;\r
-garrSortChar[160] = 39;\r
-garrSortChar[161] = 72;\r
-garrSortChar[162] = 97;\r
-garrSortChar[163] = 98;\r
-garrSortChar[164] = 99;\r
-garrSortChar[165] = 100;\r
-garrSortChar[166] = 73;\r
-garrSortChar[167] = 101;\r
-garrSortChar[168] = 74;\r
-garrSortChar[169] = 102;\r
-garrSortChar[170] = 133;\r
-garrSortChar[171] = 93;\r
-garrSortChar[172] = 103;\r
-garrSortChar[173] = 35;\r
-garrSortChar[174] = 104;\r
-garrSortChar[175] = 75;\r
-garrSortChar[176] = 105;\r
-garrSortChar[177] = 92;\r
-garrSortChar[178] = 122;\r
-garrSortChar[179] = 124;\r
-garrSortChar[180] = 76;\r
-garrSortChar[181] = 106;\r
-garrSortChar[182] = 107;\r
-garrSortChar[183] = 108;\r
-garrSortChar[184] = 77;\r
-garrSortChar[185] = 120;\r
-garrSortChar[186] = 199;\r
-garrSortChar[187] = 94;\r
-garrSortChar[188] = 116;\r
-garrSortChar[189] = 117;\r
-garrSortChar[190] = 118;\r
-garrSortChar[191] = 78;\r
-garrSortChar[192] = 131;\r
-garrSortChar[193] = 131;\r
-garrSortChar[194] = 131;\r
-garrSortChar[195] = 131;\r
-garrSortChar[196] = 131;\r
-garrSortChar[197] = 131;\r
-garrSortChar[198] = 131;\r
-garrSortChar[199] = 150;\r
-garrSortChar[200] = 158;\r
-garrSortChar[201] = 158;\r
-garrSortChar[202] = 158;\r
-garrSortChar[203] = 158;\r
-garrSortChar[204] = 175;\r
-garrSortChar[205] = 175;\r
-garrSortChar[206] = 175;\r
-garrSortChar[207] = 175;\r
-garrSortChar[208] = 154;\r
-garrSortChar[209] = 193;\r
-garrSortChar[210] = 197;\r
-garrSortChar[211] = 197;\r
-garrSortChar[212] = 197;\r
-garrSortChar[213] = 197;\r
-garrSortChar[214] = 197;\r
-garrSortChar[215] = 95;\r
-garrSortChar[216] = 197;\r
-garrSortChar[217] = 230;\r
-garrSortChar[218] = 230;\r
-garrSortChar[219] = 230;\r
-garrSortChar[220] = 230;\r
-garrSortChar[221] = 246;\r
-garrSortChar[222] = 227;\r
-garrSortChar[223] = 224;\r
-garrSortChar[224] = 131;\r
-garrSortChar[225] = 131;\r
-garrSortChar[226] = 131;\r
-garrSortChar[227] = 131;\r
-garrSortChar[228] = 131;\r
-garrSortChar[229] = 131;\r
-garrSortChar[230] = 131;\r
-garrSortChar[231] = 150;\r
-garrSortChar[232] = 158;\r
-garrSortChar[233] = 158;\r
-garrSortChar[234] = 158;\r
-garrSortChar[235] = 158;\r
-garrSortChar[236] = 175;\r
-garrSortChar[237] = 175;\r
-garrSortChar[238] = 175;\r
-garrSortChar[239] = 175;\r
-garrSortChar[240] = 154;\r
-garrSortChar[241] = 193;\r
-garrSortChar[242] = 197;\r
-garrSortChar[243] = 197;\r
-garrSortChar[244] = 197;\r
-garrSortChar[245] = 197;\r
-garrSortChar[246] = 197;\r
-garrSortChar[247] = 96;\r
-garrSortChar[248] = 197;\r
-garrSortChar[249] = 230;\r
-garrSortChar[250] = 230;\r
-garrSortChar[251] = 230;\r
-garrSortChar[252] = 230;\r
-garrSortChar[253] = 246;\r
-garrSortChar[254] = 227;\r
-garrSortChar[255] = 250;\r
-\r
-gaFtsStop[0] = "a";\r
-gaFtsStop[1] = "about";\r
-gaFtsStop[2] = "after";\r
-gaFtsStop[3] = "against";\r
-gaFtsStop[4] = "all";\r
-gaFtsStop[5] = "also";\r
-gaFtsStop[6] = "among";\r
-gaFtsStop[7] = "an";\r
-gaFtsStop[8] = "and";\r
-gaFtsStop[9] = "are";\r
-gaFtsStop[10] = "as";\r
-gaFtsStop[11] = "at";\r
-gaFtsStop[12] = "be";\r
-gaFtsStop[13] = "became";\r
-gaFtsStop[14] = "because";\r
-gaFtsStop[15] = "been";\r
-gaFtsStop[16] = "between";\r
-gaFtsStop[17] = "but";\r
-gaFtsStop[18] = "by";\r
-gaFtsStop[19] = "can";\r
-gaFtsStop[20] = "come";\r
-gaFtsStop[21] = "do";\r
-gaFtsStop[22] = "during";\r
-gaFtsStop[23] = "each";\r
-gaFtsStop[24] = "early";\r
-gaFtsStop[25] = "for";\r
-gaFtsStop[26] = "form";\r
-gaFtsStop[27] = "found";\r
-gaFtsStop[28] = "from";\r
-gaFtsStop[29] = "had";\r
-gaFtsStop[30] = "has";\r
-gaFtsStop[31] = "have";\r
-gaFtsStop[32] = "he";\r
-gaFtsStop[33] = "her";\r
-gaFtsStop[34] = "his";\r
-gaFtsStop[35] = "however";\r
-gaFtsStop[36] = "in";\r
-gaFtsStop[37] = "include";\r
-gaFtsStop[38] = "into";\r
-gaFtsStop[39] = "is";\r
-gaFtsStop[40] = "it";\r
-gaFtsStop[41] = "its";\r
-gaFtsStop[42] = "late";\r
-gaFtsStop[43] = "later";\r
-gaFtsStop[44] = "made";\r
-gaFtsStop[45] = "many";\r
-gaFtsStop[46] = "may";\r
-gaFtsStop[47] = "me";\r
-gaFtsStop[48] = "med";\r
-gaFtsStop[49] = "more";\r
-gaFtsStop[50] = "most";\r
-gaFtsStop[51] = "near";\r
-gaFtsStop[52] = "no";\r
-gaFtsStop[53] = "non";\r
-gaFtsStop[54] = "not";\r
-gaFtsStop[55] = "of";\r
-gaFtsStop[56] = "on";\r
-gaFtsStop[57] = "only";\r
-gaFtsStop[58] = "or";\r
-gaFtsStop[59] = "other";\r
-gaFtsStop[60] = "over";\r
-gaFtsStop[61] = "several";\r
-gaFtsStop[62] = "she";\r
-gaFtsStop[63] = "some";\r
-gaFtsStop[64] = "such";\r
-gaFtsStop[65] = "than";\r
-gaFtsStop[66] = "that";\r
-gaFtsStop[67] = "the";\r
-gaFtsStop[68] = "their";\r
-gaFtsStop[69] = "then";\r
-gaFtsStop[70] = "there";\r
-gaFtsStop[71] = "these";\r
-gaFtsStop[72] = "they";\r
-gaFtsStop[73] = "this";\r
-gaFtsStop[74] = "through";\r
-gaFtsStop[75] = "to";\r
-gaFtsStop[76] = "under";\r
-gaFtsStop[77] = "until";\r
-gaFtsStop[78] = "use";\r
-gaFtsStop[79] = "was";\r
-gaFtsStop[80] = "we";\r
-gaFtsStop[81] = "were";\r
-gaFtsStop[82] = "when";\r
-gaFtsStop[83] = "where";\r
-gaFtsStop[84] = "which";\r
-gaFtsStop[85] = "who";\r
-gaFtsStop[86] = "with";\r
-gaFtsStop[87] = "you";\r
-\r
-gaFtsStem[0] = "ed";\r
-gaFtsStem[1] = "es";\r
-gaFtsStem[2] = "er";\r
-gaFtsStem[3] = "e";\r
-gaFtsStem[4] = "s";\r
-gaFtsStem[5] = "ingly";\r
-gaFtsStem[6] = "ing";\r
-gaFtsStem[7] = "ly";\r
-\r
-\r
-// as javascript 1.3 support unicode instead of ISO-Latin-1\r
-// need to transfer come code back to ISO-Latin-1 for compare purpose\r
-// Note: Different Language(Code page) maybe need different array:\r
-var gaUToC=new Array();\r
-gaUToC[8364]=128;\r
-gaUToC[8218]=130;\r
-gaUToC[402]=131;\r
-gaUToC[8222]=132;\r
-gaUToC[8230]=133;\r
-gaUToC[8224]=134;\r
-gaUToC[8225]=135;\r
-gaUToC[710]=136;\r
-gaUToC[8240]=137;\r
-gaUToC[352]=138;\r
-gaUToC[8249]=139;\r
-gaUToC[338]=140;\r
-gaUToC[381]=142;\r
-gaUToC[8216]=145;\r
-gaUToC[8217]=146;\r
-gaUToC[8220]=147;\r
-gaUToC[8221]=148;\r
-gaUToC[8226]=149;\r
-gaUToC[8211]=150;\r
-gaUToC[8212]=151;\r
-gaUToC[732]=152;\r
-gaUToC[8482]=153;\r
-gaUToC[353]=154;\r
-gaUToC[8250]=155;\r
-gaUToC[339]=156;\r
-gaUToC[382]=158;\r
-gaUToC[376]=159;\r
-\r
-var gsBiggestChar="";\r
-function getBiggestChar()\r
-{\r
-       if(gsBiggestChar.length==0)\r
-       {\r
-               if(garrSortChar.length<256)\r
-                       gsBiggestChar=String.fromCharCode(255);\r
-               else\r
-               {\r
-                       var nBiggest=0;\r
-                       var nBigChar=0;\r
-                       for(var i=0;i<=255;i++)\r
-                       {\r
-                               if(garrSortChar[i]>nBiggest)\r
-                               {\r
-                                       nBiggest=garrSortChar[i];\r
-                                       nBigChar=i;\r
-                               }\r
-                       }\r
-                       gsBiggestChar=String.fromCharCode(nBigChar);\r
-               }\r
-\r
-       }       \r
-       return gsBiggestChar;\r
-}\r
-\r
-function getCharCode(str,i)\r
-{\r
-       var code=str.charCodeAt(i)\r
-       if(code>256)\r
-       {\r
-               code=gaUToC[code];\r
-       }\r
-       return code;\r
-}\r
-\r
-function compare(strText1,strText2)\r
-{\r
-       if(garrSortChar.length<256)\r
-       {\r
-               var strt1=strText1.toLowerCase();\r
-               var strt2=strText2.toLowerCase();\r
-               if(strt1<strt2) return -1;\r
-               if(strt1>strt2) return 1;\r
-               return 0;\r
-       }\r
-       else\r
-       {\r
-               for(var i=0;i<strText1.length&&i<strText2.length;i++)\r
-               {\r
-                       if(garrSortChar[getCharCode(strText1,i)]<garrSortChar[getCharCode(strText2,i)]) return -1;\r
-                       if(garrSortChar[getCharCode(strText1,i)]>garrSortChar[getCharCode(strText2,i)]) return 1;\r
-               }\r
-               if(strText1.length<strText2.length) return -1;\r
-               if(strText1.length>strText2.length) return 1;\r
-               return 0;\r
-       }\r
-}\r
-gbWhLang=true;
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whmozemu.js b/doc/salome/gui/GUI/whmozemu.js
deleted file mode 100755 (executable)
index 84c6de1..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-//     WebHelp 5.10.002\r
-if (! window.gbIE4 && window.gbNav6 && !document.childNodes[0].insertAdjacentHTML){\r
-\r
-HTMLElement.prototype.insertAdjacentElement = function(where,parsedNode)\r
-{\r
-       switch (where){\r
-       case 'beforeBegin':\r
-               this.parentNode.insertBefore(parsedNode,this);\r
-               break;\r
-       case 'afterBegin':\r
-               this.insertBefore(parsedNode,this.firstChild);\r
-               break;\r
-       case 'beforeEnd':\r
-               this.appendChild(parsedNode);\r
-               break;\r
-       case 'afterEnd':\r
-               if (this.nextSibling){\r
-               this.parentNode.insertBefore(parsedNode,this.nextSibling);\r
-               } else {\r
-               this.parentNode.appendChild(parsedNode);\r
-               }\r
-               break;\r
-       }\r
-}\r
-\r
-HTMLElement.prototype.insertAdjacentHTML = function(where,htmlStr){\r
-\r
-       var r = this.ownerDocument.createRange();\r
-       r.setStartBefore(this);\r
-       var parsedHTML = r.createContextualFragment(htmlStr);\r
-       this.insertAdjacentElement(where,parsedHTML);\r
-}\r
-\r
-\r
-HTMLElement.prototype.insertAdjacentText = function(where,txtStr){\r
-\r
-       var parsedText = document.createTextNode(txtStr);\r
-       this.insertAdjacentElement(where,parsedText);\r
-}\r
-}\r
-\r
-function testScroll() {\r
-       // Initialize scrollbar cache if necessary\r
-       if (window._pageXOffset==null) {\r
-               window._pageXOffset = window.pageXOffset;\r
-               window._pageYOffset = window.pageYOffset;\r
-       }\r
-       // Expose Internet Explorer compatible object model\r
-       document.scrollTop = window.pageYOffset;\r
-       document.scrollLeft = window.pageXOffset;\r
-       window.document.scrollHeight = document.height;\r
-       window.document.scrollWidth = document.width;\r
-       window.document.clientWidth = window.innerWidth;\r
-       window.document.clientHeight = window.innerHeight;\r
-\r
-       // If cache!=current values, call the onscroll event\r
-       if (((window.pageXOffset!=window._pageXOffset) || (window.pageYOffset!=window._pageYOffset)) && (window.onscroll)) \r
-               window.onscroll();\r
-       // Cache new values\r
-       window._pageXOffset = window.pageXOffset;\r
-       window._pageYOffset = window.pageYOffset;\r
-       }\r
-\r
-// Create compatibility layer for Netscape\r
-if (window.gbNav6 && !window.gbNav7) {\r
-       setInterval("testScroll()",50)\r
-}
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whmsg.js b/doc/salome/gui/GUI/whmsg.js
deleted file mode 100755 (executable)
index 52ffcd2..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-//     WebHelp 5.10.002\r
-var WH_MSG_RESIZEPANE          =0x0100;\r
-var WH_MSG_SHOWPANE                    =0x0101;\r
-var WH_MSG_HIDEPANE                    =0x0102;\r
-var WH_MSG_SYNCTOC                     =0x0103;\r
-var WH_MSG_NEXT                                =0x0104;\r
-var WH_MSG_PREV                                =0x0105;\r
-var WH_MSG_NOSEARCHINPUT       =0x0106;\r
-var WH_MSG_NOSYNC                      =0x0107;\r
-var WH_MSG_ENABLEWEBSEARCH     =0x0108;\r
-\r
-var WH_MSG_ISPANEVISIBLE       =0x0109;\r
-var WH_MSG_PANESTATUE          =0x010a;\r
-\r
-var    WH_MSG_SYNCINFO                 =0x010b;\r
-var WH_MSG_PANEINFO                    =0x010c;\r
-var WH_MSG_WEBSEARCH           =0x010d;\r
-\r
-var WH_MSG_SEARCHINDEXKEY      =0x0201;\r
-\r
-var WH_MSG_SEARCHFTSKEY        =0x020a;\r
-\r
-var WH_MSG_PROJECTREADY                =0x0301;\r
-var WH_MSG_GETPROJINFO                 =0x0302;\r
-\r
-var WH_MSG_SHOWTOC                     =0x0401;\r
-var WH_MSG_SHOWIDX                     =0x0402;\r
-var WH_MSG_SHOWFTS                     =0x0403;\r
-var WH_MSG_SHOWGLO                     =0x0404;\r
-\r
-var WH_MSG_SHOWGLODEF          =0x0500;\r
-\r
-var WH_MSG_GETTOCPATHS                 =0x0600;\r
-var WH_MSG_GETAVIAVENUES       =0x0601;\r
-var WH_MSG_GETCURRENTAVENUE =0x0602;\r
-var WH_MSG_GETPANEINFO         =0x0603;\r
-var WH_MSG_AVENUEINFO          =0x0604;\r
-\r
-var WH_MSG_GETSTARTFRAME       =0x0701;\r
-var WH_MSG_GETDEFAULTTOPIC     =0x0702;\r
-\r
-var WH_MSG_SEARCHTHIS          =0x0801;\r
-var WH_MSG_GETSEARCHS          =0x0802;\r
-\r
-var WH_MSG_ISINFRAMESET                =0x0900;\r
-\r
-var WH_MSG_TOOLBARORDER                =0x0a00;\r
-var WH_MSG_MINIBARORDER                =0x0a01;\r
-var WH_MSG_ISSYNCSSUPPORT      =0x0a02;\r
-var WH_MSG_ISSEARCHSUPPORT     =0x0a03;\r
-var WH_MSG_GETPANETYPE         =0x0a04;\r
-var WH_MSG_BACKUPSEARCH                =0x0a05;\r
-var WH_MSG_GETPANES                    =0x0a06;\r
-var WH_MSG_INITSEARCHSTRING =0x0a07;\r
-var WH_MSG_RELOADNS6           =0x0a08;\r
-var WH_MSG_ISAVENUESUPPORT     =0x0a09;\r
-\r
-var WH_MSG_GETCMD                      =0x0b00;\r
-var    WH_MSG_GETPANE                  =0x0b01;\r
-var WH_MSG_GETDEFPANE          =0x0b02;\r
-\r
-function whMessage(nMessageId,wSender,nVersion,oParam)\r
-{\r
-       this.nMessageId=nMessageId;\r
-       this.wSender=wSender;\r
-       this.nVersion=nVersion;\r
-       this.oParam=oParam;\r
-}\r
-var gbWhMsg=true;
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whnjs.htm b/doc/salome/gui/GUI/whnjs.htm
deleted file mode 100755 (executable)
index f65e76c..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-<html>\r
-<head>\r
-<title>GUI Module Reference Manual</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whstub.js"></script>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whstart.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-function window_Onload()\r
-{\r
-       if (window.gsTopic)\r
-               frames["bsscright"].document.location = window.gsTopic;\r
-}\r
-window.onload=window_Onload;\r
-//-->\r
-</script>\r
-</head>\r
-\r
-<frameset id="whPfset" cols="260,*"><noframes><p>Your browser does not support frames. We recommend that you update your browser to a version that supports frames.</p><p>To view the Help system without frames click on this<a href="whgdata/whnvp30.htm">hyperlink.</a></p></noframes><frame src="whgdata/whnvp30.htm" title="navigation pane" name="navigation pane" scrolling="no"><frame src="kernel/introduction.htm" title="topic pane" name="bsscright" scrolling="yes"></frameset>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whphost.js b/doc/salome/gui/GUI/whphost.js
deleted file mode 100755 (executable)
index 9c91b49..0000000
+++ /dev/null
@@ -1,581 +0,0 @@
-//     WebHelp 5.10.005\r
-var gaProj=new Array();\r
-var gnChecked=0;\r
-var gsProjName="";\r
-var gbReady=false;\r
-var goMan=null;\r
-var gbXML=false;\r
-var gsFirstPane="";\r
-var gServerEnabled=false;\r
-var gsPath="";\r
-var gbWhPHost=false;\r
-var goDiv = null;\r
-var gsHTML = "";\r
-\r
-if (navigator.currentNavPen)\r
-       gsFirstPane = navigator.currentNavPen;\r
-\r
-\r
-function delayLoad()\r
-{\r
-       if (goDiv&&gsHTML)\r
-       {\r
-               goDiv.innerHTML=gsHTML;\r
-               goDiv=null;\r
-               gsHTML="";\r
-       }\r
-}\r
-\r
-function whCom(sName,sComFile)\r
-{\r
-       this.msName=sName;\r
-       this.msDivId=sName+"Div";\r
-       this.msIFrameId=sName+"IFrame";\r
-       this.msComFile=sComFile;\r
-       this.mbloaded=false;\r
-       this.mbShow=false;\r
-       this.show=function(bShow)\r
-       {\r
-               if(this.mbShow!=bShow)\r
-               {\r
-                       if(bShow&&!this.mbloaded)\r
-                       {\r
-                               this.load();\r
-                       }\r
-\r
-                       var oDiv=getElement(this.msDivId);\r
-                       if(oDiv)\r
-                       {\r
-                               if(gbIE55||(gbIE5&&gbMac))\r
-                               {\r
-                                       var oIframe=getElement(this.msIFrameId);\r
-                                       if(oIframe)\r
-                                       {\r
-                                               if(bShow)\r
-                                               {\r
-                                                       oDiv.style.zIndex=3;\r
-                                                       if(oIframe!=null)\r
-                                                       {\r
-                                                               oIframe.style.zIndex=3;\r
-                                                               if (!gbIE55)\r
-                                                                       oIframe.style.visibility="visible";\r
-                                                       }\r
-                                               }\r
-                                               else\r
-                                               {\r
-                                                       oDiv.style.zIndex=2;\r
-                                                       if(oIframe!=null)\r
-                                                       {\r
-                                                               oIframe.style.zIndex=2;\r
-                                                               if (!gbIE55)\r
-                                                                       oIframe.style.visibility="hidden";\r
-                                                       }\r
-                                               }\r
-                                       }\r
-                               }\r
-                               if (!gbIE55)\r
-                                       oDiv.style.visibility=(bShow==true)?'visible':'hidden';\r
-                               this.mbShow=bShow;\r
-                       }\r
-\r
-               }\r
-       }\r
-       this.load=function()\r
-       {\r
-               if(!this.mbloaded)\r
-               {\r
-                       if(this.msComFile.length>0){\r
-                               var strFile= _getFullPath(getPath(), this.msComFile);\r
-                               var oDiv=getElement(this.msDivId);\r
-                               if(oDiv){\r
-                                       if(gbIE4||gbOpera7){\r
-                                               var nIFrameHeight=oDiv.style.pixelHeight;\r
-                                               var nIFrameWidth=oDiv.style.pixelWidth;\r
-                                               var sHTML="<IFRAME ID="+this.msIFrameId+" title=\"" + this.msName + "\" SRC=\""+strFile+"\" BORDER=0 FRAMEBORDER=no STYLE=\"width:";\r
-                                               if(gbMac){\r
-                                                       sHTML+=nIFrameWidth+"px;height:"+nIFrameHeight+"px;\"></IFRAME>";\r
-                                               }else{\r
-                                                       sHTML+="100%; height:100%;\"></IFRAME>";\r
-                                               }\r
-                                               oDiv.innerHTML=sHTML;\r
-                                       }else if(gbNav6){\r
-                                               gsHTML="<IFRAME ID="+this.msIFrameId+" title=\"" + this.msName + "\" SRC=\""+strFile+"\" BORDER=0 FRAMEBORDER=no STYLE=\"width:100%;border:0;height:100%;\"></IFRAME>";\r
-                                               goDiv = oDiv;\r
-                                               setTimeout("delayLoad()", 100);\r
-                                       }\r
-                                       this.mbloaded=true;\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-       this.unload=function()\r
-       {\r
-               var oDiv=getElement(this.msDivId);\r
-               if(oDiv)\r
-                       oDiv.innerHTML="";\r
-       }\r
-       this.getDivHTML=function()\r
-       {\r
-               var sHTML="";\r
-               if(gbMac&&gbIE4)\r
-                       sHTML+="<DIV ID="+this.msDivId+" ALIGN=left STYLE=\"position:absolute;z-index:1;left:0;top:0;width:100%;height:100%;margin:0;padding:0;border:0;\">";\r
-               else if(gbIE5)\r
-                       sHTML+="<DIV ID="+this.msDivId+" ALIGN=left STYLE=\"position:absolute;z-index:1;left:0;top:0;width:100%;height:100%;\">";\r
-               else if(gbIE4||gbWindows)\r
-                       sHTML+="<DIV ID="+this.msDivId+" ALIGN=left STYLE=\"position:absolute;z-index:1;left:0;top:0;width:100%;height:100%;visibility:hidden\">";\r
-               else\r
-                       sHTML+="<DIV ID="+this.msDivId+" ALIGN=left STYLE=\"position:absolute;z-index:1;left:0;top:0;width:100%;height:"+parent.height+";visibility:hidden\">";\r
-               sHTML+="</DIV>";\r
-               return sHTML;\r
-       }\r
-}  \r
-\r
-function whComMan()\r
-{\r
-       this.sName="";\r
-       this.maCom=new Array();\r
-       this.addCom=function(sName,sComFile)\r
-       {\r
-               var owhCom=new whCom(sName,sComFile);\r
-               this.maCom[this.maCom.length]=owhCom;\r
-       }\r
-       this.init=function()\r
-       {\r
-               var sHTML="";\r
-               for(var i=0;i<this.maCom.length;i++)\r
-               {\r
-                       sHTML+=this.maCom[i].getDivHTML();\r
-               }\r
-               document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
-\r
-       }\r
-       this.showById=function(nId)\r
-       {\r
-               for(var s=0;s<this.maCom.length;s++)\r
-               {\r
-                       if(s!==nId)\r
-                               this.maCom[s].show(false);\r
-               }\r
-               this.maCom[nId].show(true);\r
-       }\r
-       this.show=function(sName)\r
-       {\r
-               navigator.currentNavPen = sName;\r
-               var bFound=false;\r
-               for(var i=0;i<this.maCom.length;i++)\r
-               {\r
-                       if(sName==this.maCom[i].msName)\r
-                       {\r
-                               bFound=true;\r
-                               break;\r
-                       }\r
-               }\r
-               if(bFound)\r
-               {\r
-                       this.showById(i);\r
-                       this.sName=sName;\r
-               }\r
-       }\r
-       this.unload=function()\r
-       {\r
-               for(var i=0;i<this.maCom.length;i++)\r
-               {\r
-                       this.maCom[i].unload();\r
-               }               \r
-       }\r
-       this.getCurrent=function()\r
-       {\r
-               return this.sName;\r
-       }\r
-}\r
-\r
-function getPath()\r
-{\r
-       if(gsPath=="")\r
-       {\r
-               gsPath=location.href;\r
-               gsPath=_replaceSlash(gsPath);\r
-               var nPosFile=gsPath.lastIndexOf("/");\r
-               gsPath=gsPath.substring(0,nPosFile+1);\r
-       }\r
-       return gsPath;\r
-}\r
-\r
-goMan=new whComMan();\r
-function addPane(sName,sFileName)\r
-{\r
-       var oParam=new Object();\r
-       oParam.sName=sName;\r
-       var oMsg=new whMessage(WH_MSG_GETPANE, this, 1, oParam);\r
-       if (SendMessage(oMsg))\r
-       {\r
-               if (oMsg.oParam.bEnable)\r
-                       goMan.addCom(sName,sFileName);\r
-       }\r
-       else\r
-               goMan.addCom(sName,sFileName);  \r
-}\r
-\r
-function setShowPane(sName, bForce)\r
-{\r
-       if ((gsFirstPane == "") || bForce)\r
-       {\r
-               var oMsg=new whMessage(WH_MSG_GETDEFPANE, this, 1, null);\r
-               if (SendMessage(oMsg))\r
-               {\r
-                       if (oMsg.oParam)\r
-                               gsFirstPane = oMsg.oParam;\r
-                       else\r
-                               gsFirstPane=sName;\r
-               }\r
-               else\r
-                       gsFirstPane=sName;\r
-       }\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
-       var oMsg=new whMessage(WH_MSG_GETCMD,this,1,null);\r
-       var bHidePane=false;\r
-       if (SendMessage(oMsg))\r
-       {\r
-               if(oMsg.oParam>0)\r
-               {\r
-                       if(oMsg.oParam==1)\r
-                               gsFirstPane="toc";\r
-                       else if(oMsg.oParam==2)\r
-                               gsFirstPane="idx";\r
-                       else if(oMsg.oParam==3)\r
-                               gsFirstPane="fts";\r
-                       else if(oMsg.oParam==4)\r
-                               gsFirstPane="glo";\r
-               }\r
-               else if(oMsg.oParam==0)\r
-               {\r
-                       bHidePane=true;\r
-               }\r
-       }\r
-       goMan.init();\r
-       if(gsProjName!="")                      \r
-               loadData2(gsProjName);  \r
-       if (bHidePane)\r
-       {\r
-               gsFirstPane="";\r
-               var oMsg1=new whMessage(WH_MSG_HIDEPANE, this, 1, null)\r
-               SendMessage(oMsg1);\r
-       }\r
-       else\r
-       {\r
-               if(gsFirstPane!="")\r
-                       goMan.show(gsFirstPane);\r
-               else\r
-                       goMan.showById(0);\r
-       }\r
-}\r
-\r
-function setServerEnabled()\r
-{\r
-       gServerEnabled = true;\r
-}\r
-\r
-function loadData2(strFile)\r
-{\r
-       if(gbXML)\r
-               loadDataXML(strFile);\r
-       else\r
-               loadData(strFile);\r
-}\r
-\r
-function addProject(bPreferXML,sXMLName,sHTMLName)\r
-{\r
-       var bLoadXML=bPreferXML;\r
-       if(!gbIE4&&!gbNav6&&!gbOpera7)\r
-               return;\r
-       if(gbIE4&&!gbIE5)\r
-               bLoadXML=false;\r
-       if (gbIE5&&!gbMac)\r
-               bLoadXML=true;\r
-       if(gbIE55||gbNav6)\r
-               bLoadXML=true;\r
-       if(gbOpera7)\r
-               bLoadXML=false;         \r
-       if(bLoadXML)\r
-               addProjectXML(sXMLName);\r
-       else\r
-               addProjectHTML(sHTMLName);\r
-}\r
-\r
-function addProjectHTML(sName)\r
-{\r
-       gbXML=false;\r
-       gsProjName=sName;\r
-}\r
-\r
-function addProjectXML(sName)\r
-{\r
-       gbXML=true;\r
-       gsProjName=sName;\r
-}\r
-\r
-function window_MyBunload()\r
-{\r
-       goMan.unload();\r
-       window_BUnload();\r
-}\r
-\r
-function putDataXML(xmlDoc,sdocPath)\r
-{\r
-       if(xmlDoc!=null)\r
-       {\r
-               var projectNode=xmlDoc.getElementsByTagName("project")[0];\r
-               if(projectNode)\r
-               {\r
-                       var aRProj=new Array();\r
-                       aRProj[0]=new Object();\r
-                       aRProj[0].sPPath=_getPath(sdocPath);\r
-                       var sLangId=projectNode.getAttribute("langid");\r
-                       if(sLangId)\r
-                       {\r
-                               aRProj[0].sLangId=sLangId;\r
-                       }\r
-                       var sDPath=projectNode.getAttribute("datapath");\r
-                       if(sDPath)\r
-                       {\r
-                               if(sDPath.lastIndexOf("/")!=sDPath.length-1)\r
-                                       sDPath+="/";\r
-                               aRProj[0].sDPath=sDPath;\r
-                       }\r
-                       else\r
-                               aRProj[0].sDPath="";\r
-                       aRProj[0].sToc=projectNode.getAttribute("toc");\r
-                       aRProj[0].sIdx=projectNode.getAttribute("index");\r
-                       aRProj[0].sFts=projectNode.getAttribute("fts");\r
-                       aRProj[0].sGlo=projectNode.getAttribute("glossary");\r
-                       var RmtProject=projectNode.getElementsByTagName("remote");\r
-                       var nCount=1;\r
-                       for (var i=0;i<RmtProject.length;i++)\r
-                       {\r
-                               var sURL=RmtProject[i].getAttribute("url");\r
-                               if(sURL)\r
-                               {\r
-                                       if(sURL.lastIndexOf("/")!=sURL.length-1)\r
-                                               sURL+="/";\r
-                                       aRProj[nCount]=new Object();\r
-                                       aRProj[nCount++].sPPath=_getFullPath(aRProj[0].sPPath,sURL);\r
-                               }\r
-                       }\r
-                       putProjectInfo(aRProj);\r
-               }\r
-               else\r
-               {\r
-                       // on Netscape 6.0 under some situation the xml file cannot be loaded.\r
-                       // so we use pure html instead.\r
-                       if (gnChecked == 0)\r
-                               setTimeout("redirectToList();",100);\r
-                       else\r
-                       {\r
-                               gnChecked++;\r
-                               setTimeout("checkRemoteProject();", 1);\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-function onLoadXMLError()\r
-{\r
-       gnChecked++;\r
-       setTimeout("checkRemoteProject();", 1);\r
-}\r
-\r
-function redirectToList()\r
-{\r
-       if(gbReDirectThis)\r
-               document.location=gsNavReDirect;\r
-       else\r
-               parent.document.location=gsNavReDirect;\r
-}\r
-\r
-function putProjectInfo(aRProj)\r
-{\r
-       if(gnChecked==0||isSamePath(gaProj[gnChecked].sPPath,aRProj[0].sPPath))\r
-       {\r
-               if(gnChecked!=0)\r
-               {\r
-                       if(aRProj[0].sLangId!=gaProj[0].sLangId)\r
-                               alert("The merged Help system "+aRProj[0].sPPath+" is using a different language from the master Help system, which will cause the index and full-text search functionality to be disabled in the merged Help system.");\r
-               }\r
-               gaProj[gnChecked]=aRProj[0];\r
-               for(var i=1;i<aRProj.length;i++)\r
-               {\r
-                       var bFound=false;\r
-                       for(var j=0;j<gaProj.length;j++)\r
-                       {\r
-                               if(isSamePath(gaProj[j].sPPath,aRProj[i].sPPath))\r
-                               {\r
-                                       bFound=true;\r
-                                       break;\r
-                               }\r
-                       }\r
-                       if(!bFound)\r
-                       {\r
-                               gaProj[gaProj.length]=aRProj[i];\r
-                       }\r
-               }\r
-               gnChecked++;\r
-               setTimeout("checkRemoteProject();", 1);\r
-       }\r
-       else\r
-               alert("Could not load correctly, please click Refresh.");\r
-}\r
-\r
-function isSamePath(sPath1,sPath2)\r
-{\r
-       return (sPath1.toLowerCase()==sPath2.toLowerCase());\r
-}\r
-\r
-function checkRemoteProject()\r
-{\r
-       if(gaProj.length!=gnChecked)\r
-       {\r
-               setTimeout("cancelProj("+gnChecked+");",10000);\r
-               loadData2(gaProj[gnChecked].sPPath+gsProjName);\r
-       }\r
-       else{\r
-               var oMsg=new whMessage(WH_MSG_PROJECTREADY,this,1,null);\r
-               gbReady=true;\r
-               SendMessage(oMsg);\r
-       }\r
-}\r
-\r
-function cancelProj(i)\r
-{\r
-       if(i==gnChecked)\r
-       {\r
-               gnChecked++;\r
-               setTimeout("checkRemoteProject();", 1);\r
-       }       \r
-}\r
-\r
-function window_resize()\r
-{\r
-       for(var i=0;i<goMan.maCom.length;i++)\r
-       {\r
-               var oFrame=getElement(goMan.maCom[i].msIFrameId);\r
-               if(oFrame)\r
-               {\r
-                       oFrame.style.height=document.body.clientHeight;\r
-                       oFrame.style.width=document.body.clientWidth;\r
-               }\r
-       }\r
-       window_resize2();\r
-}\r
-\r
-function window_resize2()\r
-{\r
-       if(document.body)\r
-       {\r
-               if(document.body.clientWidth > 1 && document.body.clientHeight>1)\r
-               {\r
-                       var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
-                       SendMessage(oMsg);\r
-               }\r
-       }\r
-}\r
-\r
-function window_unload()\r
-{\r
-       UnRegisterListener2(this,WH_MSG_GETPROJINFO);\r
-       UnRegisterListener2(this,WH_MSG_SHOWTOC);\r
-       UnRegisterListener2(this,WH_MSG_SHOWIDX);\r
-       UnRegisterListener2(this,WH_MSG_SHOWFTS);\r
-       UnRegisterListener2(this,WH_MSG_SHOWGLO);\r
-       UnRegisterListener2(this,WH_MSG_GETPANEINFO);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       if(oMsg)\r
-       {\r
-               var nMsgId=oMsg.nMessageId;\r
-               if(nMsgId==WH_MSG_GETPROJINFO)\r
-               {\r
-                       if(gbReady)\r
-                       {\r
-                               var oProj=new Object();\r
-                               oProj.aProj=gaProj;\r
-                               oProj.bXML=gbXML;\r
-                               oMsg.oParam=oProj;\r
-                       }\r
-                       else\r
-                               return false;\r
-               }\r
-               else if(nMsgId==WH_MSG_SHOWTOC)\r
-               {\r
-                       if(goMan)\r
-                               goMan.show("toc");\r
-                       var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "toc");\r
-                       SendMessage(onMsg);\r
-                       onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
-                       SendMessage(onMsg);\r
-               }\r
-               else if(nMsgId==WH_MSG_SHOWIDX)\r
-               {\r
-                       if(goMan)\r
-                               goMan.show("idx");\r
-                       var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "idx");\r
-                       SendMessage(onMsg);\r
-                       onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
-                       SendMessage(onMsg);\r
-               }\r
-               else if(nMsgId==WH_MSG_SHOWFTS)\r
-               {\r
-                       if(goMan)\r
-                               goMan.show("fts");\r
-                       var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "fts");\r
-                       SendMessage(onMsg);\r
-                       onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
-                       SendMessage(onMsg);\r
-               }\r
-               else if(nMsgId==WH_MSG_SHOWGLO)\r
-               {\r
-                       if(goMan)\r
-                               goMan.show("glo");\r
-                       var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "glo");\r
-                       SendMessage(onMsg);\r
-                       onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
-                       SendMessage(onMsg);\r
-               }\r
-               else if(nMsgId==WH_MSG_GETPANEINFO)\r
-               {\r
-                       oMsg.oParam=goMan.getCurrent();\r
-                       return false;\r
-               }\r
-       }\r
-       return true;\r
-}\r
-\r
-if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
-{\r
-       RegisterListener2(this,WH_MSG_GETPROJINFO);\r
-       RegisterListener2(this,WH_MSG_SHOWTOC);\r
-       RegisterListener2(this,WH_MSG_SHOWIDX);\r
-       RegisterListener2(this,WH_MSG_SHOWFTS);\r
-       RegisterListener2(this,WH_MSG_SHOWGLO);\r
-       RegisterListener2(this,WH_MSG_GETPANEINFO);\r
-\r
-       if((gbMac&&gbIE4)||(gbSunOS&&gbIE5)||gbOpera7)\r
-       {\r
-               window.onresize=window_resize;\r
-       }\r
-       else if(gbIE4)\r
-       {\r
-               window.onresize=window_resize2;\r
-       }\r
-       window.onload=window_OnLoad;\r
-       window.onbeforeunload=window_MyBunload;\r
-       window.onunload=window_unload;\r
-       gbWhPHost=true;\r
-}\r
-else\r
-       document.location.reload();\r
-\r
diff --git a/doc/salome/gui/GUI/whproj.htm b/doc/salome/gui/GUI/whproj.htm
deleted file mode 100755 (executable)
index 821daea..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<html>\r
-<head>\r
-<title>project description</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<body>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whproj.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-  setLangId("1033");\r
-  setDataPath("whdata");\r
-  addToc("whtoc.htm");\r
-\r
-  addFts("whfts.htm");\r
-  addGlo("whglo.htm");\r
-\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whproj.js b/doc/salome/gui/GUI/whproj.js
deleted file mode 100755 (executable)
index ae38fa9..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-//     WebHelp 5.10.001\r
-var gaProj=new Array();\r
-\r
-gaProj[0]=new project("");\r
-\r
-function setLangId(sLangId)\r
-{\r
-       gaProj[0].sLangId=sLangId;\r
-}\r
-\r
-function setDataPath(sPath)\r
-{\r
-       if(sPath.length!=0)\r
-       {\r
-               if(sPath.lastIndexOf("/")!=sPath.length-1)\r
-                       sPath+="/";\r
-               gaProj[0].sDPath=sPath; \r
-       }\r
-       else\r
-               gaProj[0].sDPath="";\r
-}\r
-\r
-function addToc(sFile)\r
-{\r
-       gaProj[0].sToc=sFile;\r
-}\r
-\r
-function addIdx(sFile)\r
-{\r
-       gaProj[0].sIdx=sFile;\r
-}\r
-\r
-function addFts(sFile)\r
-{\r
-       gaProj[0].sFts=sFile;\r
-}\r
-\r
-function addGlo(sFile)\r
-{\r
-       gaProj[0].sGlo=sFile;\r
-}\r
-\r
-function addRemoteProject(sProjRelPath)\r
-{\r
-       if(sProjRelPath.lastIndexOf("/")!=sProjRelPath.length-1)\r
-               sProjRelPath+="/";\r
-       gaProj[gaProj.length]=new project(sProjRelPath);\r
-}\r
-\r
-function project(sPPath)\r
-{\r
-       this.sPPath=sPPath;\r
-       this.sLangId="";\r
-       this.sDPath="";\r
-       this.sToc="";\r
-       this.sIdx="";\r
-       this.sFts="";\r
-       this.sGlo="";\r
-}\r
-\r
-window.onload=window_OnLoad;\r
-\r
-function window_OnLoad()\r
-{\r
-       gsName=document.location.href;\r
-       gsName=_replaceSlash(gsName);\r
-       var nPos=gsName.lastIndexOf("/");\r
-       if(nPos!=-1)\r
-               gaProj[0].sPPath=gsName.substring(0,nPos+1);\r
-       else\r
-               alert("Error in Loading navigation component. Please regenerate WebHelp.");\r
-       patchPath(gaProj);\r
-       if(parent&&parent!=this&& typeof(parent.putProjectInfo)=="function")\r
-       {\r
-               parent.putProjectInfo(gaProj);\r
-       }\r
-}\r
-\r
-function patchPath(aProj)\r
-{\r
-       for(var i=1;i<aProj.length;i++)\r
-       {\r
-               aProj[i].sPPath=_getFullPath(gaProj[0].sPPath,aProj[i].sPPath);\r
-       }\r
-}
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whproj.xml b/doc/salome/gui/GUI/whproj.xml
deleted file mode 100755 (executable)
index 4bd4a8d..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version='1.0' encoding='windows-1252' ?>\r
-<project langid="1033" datapath="whxdata" toc="whtoc.xml" fts="whfts.xml" glossary="whglo.xml" >\r
-</project>\r
diff --git a/doc/salome/gui/GUI/whproxy.js b/doc/salome/gui/GUI/whproxy.js
deleted file mode 100755 (executable)
index d0ee298..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-//     WebHelp 5.10.001\r
-var gbInited=false;\r
-var gWndStubPage=null;\r
-function getStubPage()\r
-{\r
-       if(!gbInited)\r
-       {\r
-               gWndStubPage=getStubPage_inter(window);\r
-               gbInited=true;\r
-       }\r
-       return gWndStubPage;\r
-}\r
-\r
-function getStubPage_inter(wCurrent)\r
-{\r
-       if(null==wCurrent.parent||wCurrent.parent==wCurrent)\r
-               return null;\r
-\r
-       if(typeof(wCurrent.parent.whname)=="string"&&"wh_stub"==wCurrent.parent.whname)\r
-               return wCurrent.parent;\r
-       else\r
-               if(wCurrent.parent.frames.length!=0&&wCurrent.parent!=wCurrent)\r
-                       return getStubPage_inter(wCurrent.parent);\r
-               else\r
-                       return null;\r
-}\r
-\r
-function RegisterListener(framename,nMessageId)\r
-{\r
-       var wSP=getStubPage();\r
-       if(wSP&&wSP!=this)\r
-               return wSP.RegisterListener(framename,nMessageId);\r
-       else\r
-               return false;\r
-}\r
-\r
-function RegisterListener2(oframe,nMessageId)\r
-{\r
-       var wSP=getStubPage();\r
-       if(wSP&&wSP!=this)\r
-               return wSP.RegisterListener2(oframe,nMessageId);\r
-       else\r
-               return false;\r
-}\r
-\r
-function UnRegisterListener2(oframe,nMessageId)\r
-{\r
-       var wSP=getStubPage();\r
-       if(wSP&&wSP!=this&&wSP.UnRegisterListener2)\r
-               return wSP.UnRegisterListener2(oframe,nMessageId);\r
-       else\r
-               return false;\r
-}\r
-\r
-function SendMessage(oMessage)\r
-{\r
-       var wSP=getStubPage();\r
-       if(wSP&&wSP!=this&&wSP.SendMessage)\r
-               return wSP.SendMessage(oMessage);\r
-       else\r
-               return false;\r
-}\r
-\r
-var gbWhProxy=true;\r
-\r
-var gbPreview=false;\r
-gbPreview=false; \r
-if (gbPreview)\r
-       document.oncontextmenu=contextMenu;\r
-\r
-function contextMenu()\r
-{\r
-       return false;\r
-}\r
diff --git a/doc/salome/gui/GUI/whres.xml b/doc/salome/gui/GUI/whres.xml
deleted file mode 100755 (executable)
index 89ee8b3..0000000
+++ /dev/null
@@ -1,256 +0,0 @@
-<?xml version='1.0' encoding='windows-1252' ?>\r
-<resource>\r
-<item name="Prev" value="&lt;&lt;" />\r
-<item name="Hide" value="Hide" />\r
-<item name="SyncTocTooltip" value="Sync TOC" />\r
-<item name="InTopicSearchBtnText" value="Go" />\r
-<item name="FtsInputPrompt" value="Type in the word(s) to search for:" />\r
-<item name="Done" value="Done" />\r
-<item name="Logo/Author" value="Powered By" />\r
-<item name="MergeError1" value="The merged Help system" />\r
-<item name="JS_alert_cantLoadProject" value="Can't load project:" />\r
-<item name="Next" value="&gt;&gt;" />\r
-<item name="SyncToc" value="SyncToc" />\r
-<item name="MergeError2" value="is using a different language from the master Help system, which will cause the index and full-text search functionality to be disabled in the merged Help system." />\r
-<item name="nls_body_instruction" value="Enter your question in the text box above, then click GO." />\r
-<item name="ToolBarSearchBtnText" value="Go" />\r
-<item name="SuggestViewNoFrameMessage" value="To view the Help system without frames click on this" />\r
-<item name="Hide_Navigation_Component" value="Hide Navigation Component" />\r
-<item name="FtsBtnText" value="Go" />\r
-<item name="TopicsFound" value="Topics Found" />\r
-<item name="LoadingContentsData" value="Loading, click here to cancel..." />\r
-<item name="Definition" value="Definition:" />\r
-<item name="CompletingContents" value="Completing Contents..." />\r
-<item name="Seperate" value="|" />\r
-<item name="GeneratedBy" value="Generated by" />\r
-<item name="PoweredBy" value="Powered by" />\r
-<item name="IndexAlphabetBookmarks" value="ABCDEFGHIJKLMNOPQRSTUVWXYZ" />\r
-<item name="Contents" value="Contents" />\r
-<item name="IndexSelectTopicLabel" value="Select a topic, then click Display" />\r
-<item name="Disabled Prev" value="&lt;&lt;" />\r
-<item name="Glossary" value="Glossary" />\r
-<item name="Search" value="Search" />\r
-<item name="CantSearch" value="Cannot search for that phrase." />\r
-<item name="LoadingIndex" value="Loading Index..." />\r
-<item name="LoadingData" value="Loading data, please wait..." />\r
-<item name="Show_Navigation_Component" value="Show Navigation Component" />\r
-<item name="Book" value="Book" />\r
-<item name="Disabled Next" value="&gt;&gt;" />\r
-<item name="nls_body_empty" value="Sorry, we were unable to find a good answer for your question." />\r
-<item name="nls_button_go_hint" value="Go Search" />\r
-<item name="Find" value="Find" />\r
-<item name="CantOpenURLorFile" value="Can't open URL or file" />\r
-<item name="Print" value="Print" />\r
-<item name="About" value="About" />\r
-<item name="Author" value="Author" />\r
-<item name="IndexSelectTopicTitle" value="Select a Topic" />\r
-<item name="Blank_topic_text" value="This topic was created by WinHelp Project Conversion Wizard, and is the destination of a missing topic or broken hyperlink." />\r
-<item name="BrowserLimitedMessage" value="Your browser does not support frames. We recommend that you update your browser to a version that supports frames." />\r
-<item name="LoadingTOCItem" value="Loading Table of Contents:" />\r
-<item name="Display" value="Display" />\r
-<item name="Cancel" value="Cancel" />\r
-<item name="IndexSelectTopicError" value="Please select a topic." />\r
-<item name="nls_edit_label" value="Type in your question:" />\r
-<item name="SearchLabel" value="Search" />\r
-<item name="RelateTopicListPrompt" value="Click a topic, then click Display." />\r
-<item name="NextTooltip" value="Next Topic" />\r
-<item name="JS_alert_colorlimitation" value="WebHelp has detected that your display is set to 16 colors. For full WebHelp support, please set your display to use 256 or more colors." />\r
-<item name="TopicsNotFound" value="No Topics Found." />\r
-<item name="Show" value="Show" />\r
-<item name="PreTooltip" value="Previous Topic" />\r
-<item name="SearchPrompt" value="- Search -" />\r
-<item name="IndexBtnText" value="Go" />\r
-<item name="JS_alert_ProjectLoadingFail" value="Could not load correctly, please click Refresh." />\r
-<item name="LoadingContents" value="Loading contents, please wait..." />\r
-<item name="Term" value="Term:" />\r
-<item name="WebSearchButton" value="WebSearch" />\r
-<item name="Remote_Page" value="Remote Page" />\r
-<item name="WebSearch" value="WebSearch" />\r
-<item name="LoadingFTS" value="Reading Search Data..." />\r
-<item name="Index" value="Index" />\r
-<item name="JS_alert_ErrorInLoading" value="Error in Loading navigation component. Please regenerate WebHelp." />\r
-<item name="JS_alert_appletNotLoad" value="Unable to load applet. If you are using an old version of Netscape, the prefs.js file needs to be edited." />\r
-<item name="IndexInputPrompt" value="Type in the keyword to find:" />\r
-<item name="Page" value="Page" />\r
-<item name="SuggestViewNoFrameMsg2" value="hyperlink." />\r
-<item name="nls_button_go_text" value="Go" />\r
-<item name="Searching" value="Searching..." />\r
-\r
-  <item name="English"   value="" />\r
-  <item name="langorder" value="0,1,2,3,4,5,6,7,8,40,41,42,43,44,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,38,45,46,47,48,49,50,33,51,52,53,88,54,34,55,56,115,119,121,123,125,126,127,128,129,130,57,58,89,90,91,59,60,131,148,150,154,158,168,171,173,175,185,187,189,191,193,197,214,216,218,220,225,230,240,242,244,246,252,61,62,63,64,66,67,131,148,150,154,158,168,171,173,175,185,187,189,191,193,197,214,216,218,220,225,230,240,242,244,246,252,68,69,70,71,27,114,28,82,170,85,112,109,110,65,113,223,86,213,29,255,30,31,80,81,83,84,111,36,37,79,229,222,87,212,32,254,251,39,72,97,98,99,100,73,101,74,102,133,93,103,35,104,75,105,92,122,124,76,106,107,108,77,120,199,94,116,117,118,78,131,131,131,131,131,131,131,150,158,158,158,158,175,175,175,175,154,193,197,197,197,197,197,95,197,230,230,230,230,246,227,224,131,131,131,131,131,131,131,150,158,158,158,158,175,175,175,175,154,193,197,197,197,197,197,96,197,230,230,230,230,246,227,250," />\r
-\r
-  <panes show="0">\r
-    <toc />\r
-    <fts />\r
-    <glossary />\r
-  </panes>\r
-\r
-  <stopwords>\r
-    <word name="a" />\r
-    <word name="about" />\r
-    <word name="after" />\r
-    <word name="against" />\r
-    <word name="all" />\r
-    <word name="also" />\r
-    <word name="among" />\r
-    <word name="an" />\r
-    <word name="and" />\r
-    <word name="are" />\r
-    <word name="as" />\r
-    <word name="at" />\r
-    <word name="be" />\r
-    <word name="became" />\r
-    <word name="because" />\r
-    <word name="been" />\r
-    <word name="between" />\r
-    <word name="but" />\r
-    <word name="by" />\r
-    <word name="can" />\r
-    <word name="come" />\r
-    <word name="do" />\r
-    <word name="during" />\r
-    <word name="each" />\r
-    <word name="early" />\r
-    <word name="for" />\r
-    <word name="form" />\r
-    <word name="found" />\r
-    <word name="from" />\r
-    <word name="had" />\r
-    <word name="has" />\r
-    <word name="have" />\r
-    <word name="he" />\r
-    <word name="her" />\r
-    <word name="his" />\r
-    <word name="however" />\r
-    <word name="in" />\r
-    <word name="include" />\r
-    <word name="into" />\r
-    <word name="is" />\r
-    <word name="it" />\r
-    <word name="its" />\r
-    <word name="late" />\r
-    <word name="later" />\r
-    <word name="made" />\r
-    <word name="many" />\r
-    <word name="may" />\r
-    <word name="me" />\r
-    <word name="med" />\r
-    <word name="more" />\r
-    <word name="most" />\r
-    <word name="near" />\r
-    <word name="no" />\r
-    <word name="non" />\r
-    <word name="not" />\r
-    <word name="of" />\r
-    <word name="on" />\r
-    <word name="only" />\r
-    <word name="or" />\r
-    <word name="other" />\r
-    <word name="over" />\r
-    <word name="several" />\r
-    <word name="she" />\r
-    <word name="some" />\r
-    <word name="such" />\r
-    <word name="than" />\r
-    <word name="that" />\r
-    <word name="the" />\r
-    <word name="their" />\r
-    <word name="then" />\r
-    <word name="there" />\r
-    <word name="these" />\r
-    <word name="they" />\r
-    <word name="this" />\r
-    <word name="through" />\r
-    <word name="to" />\r
-    <word name="under" />\r
-    <word name="until" />\r
-    <word name="use" />\r
-    <word name="was" />\r
-    <word name="we" />\r
-    <word name="were" />\r
-    <word name="when" />\r
-    <word name="where" />\r
-    <word name="which" />\r
-    <word name="who" />\r
-    <word name="with" />\r
-    <word name="you" />\r
-  </stopwords>\r
-\r
-  <stems>\r
-    <stem name="ed" />\r
-    <stem name="es" />\r
-    <stem name="er" />\r
-    <stem name="e" />\r
-    <stem name="s" />\r
-    <stem name="ingly" />\r
-    <stem name="ing" />\r
-    <stem name="ly" />\r
-  </stems>\r
-\r
-       <paneskin>\r
-               <background color="" img="" />\r
-               <font name="Arial" size="9pt" color="#000000" style="normal" weight="normal" decoration="none" />\r
-               <toc>\r
-                       <background color="" img="" />\r
-                       <icons>\r
-                               <book open="whd_toc2.gif" close="whd_toc1.gif" />\r
-                               <item  local="whd_toc3.gif" remote="whd_toc4.gif" />\r
-                               <newbook open="whd_toc2.gif" close="whd_toc1.gif" />\r
-                               <newitem  local="whd_toc3.gif" remote="whd_toc4.gif" />\r
-                       </icons>\r
-                       <fonts>\r
-                               <normal name="Arial" size="9pt" color="#000000" style="normal" weight="normal" decoration="none" />\r
-                               <hover name="Arial" size="9pt" color="#007f00" style="normal" weight="normal" decoration="underline" />\r
-                       </fonts>\r
-                       <activebackgroundcolor attr="#cccccc" />\r
-                       <margin attr="0pt" />\r
-                       <indent attr="9pt" />\r
-               </toc>\r
-               <index>\r
-                       <form>\r
-                               <fonts>\r
-                                       <title name="Arial" size="9pt" color="#000000" style="normal" weight="normal" decoration="none" />\r
-                               </fonts>\r
-                               <button normal="" hover="" />\r
-                               <editwith value="28" />\r
-                       </form>\r
-                       <background color="" img="" />\r
-                       <fonts>\r
-                               <normal name="Arial" size="9pt" color="#000000" style="normal" weight="normal" decoration="none" />\r
-                               <hover name="Arial" size="9pt" color="#007f00" style="normal" weight="normal" decoration="underline" />\r
-                               <empty name="Arial" size="9pt" color="#666666" style="normal" weight="normal" decoration="none" />\r
-                       </fonts>\r
-                       <activebackgroundcolor attr="#cccccc" />\r
-                       <margin attr="0pt" />\r
-                       <indent attr="9pt" />\r
-               </index>\r
-               <fts>\r
-                       <form>\r
-                               <fonts>\r
-                                       <title name="Arial" size="9pt" color="#000000" style="normal" weight="normal" decoration="none" />\r
-                               </fonts>\r
-                               <button normal="" hover="" />\r
-                               <editwith value="28" />\r
-                       </form>\r
-                       <background color="" img="" />\r
-                       <fonts>\r
-                               <normal name="Arial" size="9pt" color="#000000" style="normal" weight="normal" decoration="none" />\r
-                               <hover name="Arial" size="9pt" color="#007f00" style="normal" weight="normal" decoration="underline" />\r
-                               <error name="Arial" size="9pt" color="#000000" style="normal" weight="normal" decoration="none" />\r
-                       </fonts>\r
-                       <activebackgroundcolor attr="#cccccc" />\r
-                       <margin attr="0pt" />\r
-                       <indent attr="9pt" />\r
-               </fts>\r
-               <glossary>\r
-                       <background color="" img="" />\r
-                       <fonts>\r
-                               <normal name="Arial" size="9pt" color="#000000" style="normal" weight="normal" decoration="none" />\r
-                               <hover name="Arial" size="9pt" color="#007f00" style="normal" weight="normal" decoration="underline" />\r
-                       </fonts>\r
-                       <activebackgroundcolor attr="#cccccc" />\r
-                       <margin attr="0pt" />\r
-                       <indent attr="9pt" />\r
-               </glossary>\r
-       </paneskin>\r
-</resource>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whskin_blank.htm b/doc/salome/gui/GUI/whskin_blank.htm
deleted file mode 100755 (executable)
index 43439a8..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<html>\r
-<head>\r
-<title>Blank Page</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<body>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/whskin_homepage.htm b/doc/salome/gui/GUI/whskin_homepage.htm
deleted file mode 100755 (executable)
index 774d93c..0000000
+++ /dev/null
@@ -1,180 +0,0 @@
-<html>\r
-<head>\r
-<title>GUI Module Reference Manual</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-</head>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whstub.js"></script><script language="javascript1.2" src="whstart.js"></script>\r
-<script language="javascript">\r
-<!--\r
-var strDefaultTopic = "about:blank";\r
-var nWebhelpNavPaneMode = 1;                   //1: DHTML 2:Applet 3:PureHTML 4:Noframeset\r
-var bNoApplet  = false;\r
-var strPaneDHTML  = "whd_nvp10.htm";           //whd_nvp10.htm  if tab enabled, whnframe.htm if tab disabled.\r
-var strPaneApplet = "whd_nvp20.htm";\r
-var strPaneList   = "whgdata/whnvp30.htm";\r
-\r
-var strHTML = "";\r
-var strPane = "";\r
-var nViewFrameType = -1;\r
-\r
-function CMRServer()\r
-{\r
-  this.m_cAgents = new Array;\r
-}\r
-var cMRServer = new CMRServer;\r
-\r
-//figure out which mode is the best\r
-if (!window.gAgent)\r
-{\r
-       // low end browser, we don't even try to determine it.\r
-       document.location = "whnjs.htm";\r
-}\r
-else\r
-{\r
-       if (!gbNav4&&!gbIE4&&!gbOpera7&&!gbSafari)\r
-               document.location = "whnjs.htm";\r
-       else if (gbNav4 && !gbNav6 && ((gnVerMinor <= 4.06)))\r
-               document.location = "whnjs.htm";\r
-       else if (gbMac && gbIE4 && !gbIE5)\r
-               document.location = "whnjs.htm";\r
-       //figure out which mode is the best\r
-       else \r
-       {\r
-               nViewFrameType=nWebhelpNavPaneMode;\r
-               if (nWebhelpNavPaneMode==1||nWebhelpNavPaneMode == 2)\r
-               {\r
-                       var gbDHTML=(nWebhelpNavPaneMode==1);\r
-                       if (gbNav4)                                                                             nViewFrameType = 2;\r
-                       if (gbNav4&&(gnVerMinor < 4.1))                                         nViewFrameType = 3;\r
-                       if (gbNav4&&(gnVerMinor == 4.6))                                        nViewFrameType = 3;\r
-                       if (gbIE4&&gbDHTML)                                                                     nViewFrameType = 1;\r
-                       if (gbIE4&&gbSunOS&&nWebhelpNavPaneMode==2)                     nViewFrameType = 3;\r
-                       if (gbNav6&&gbDHTML)                                                            nViewFrameType = 1;\r
-                       if (gbNav6&&!gbNav61&&nWebhelpNavPaneMode == 2)         nViewFrameType = 3;\r
-                       if (gbMac)                                                                                      nViewFrameType = 3;\r
-                       if (gbOpera7&&nViewFrameType == 2)                                      nViewFrameType = 3;\r
-                       if ((bNoApplet)&&(nViewFrameType == 2))                         nViewFrameType = 3;\r
-               }\r
-       }\r
-}\r
-\r
-if (nViewFrameType!=-1)\r
-{\r
-       var gbWindows = ((gAgent.indexOf("win") != -1) || (gAgent.indexOf("16bit") != -1));\r
-       //The colordepth of the 16 color on Windows is 1. \r
-       if ((gbWindows) && (gbNav4) && (window.screen) && (window.screen.colorDepth <= 4))\r
-       {\r
-          alert("WebHelp has detected that your display is set to 16 colors. For full WebHelp support, please set your display to use 256 or more colors.");\r
-          nViewFrameType = 3;\r
-       }\r
-\r
-       //figure out which one is navpane\r
-       if (nViewFrameType == 1)\r
-               strPane = strPaneDHTML;\r
-       else if (nViewFrameType == 2)\r
-               strPane = strPaneApplet;\r
-       else \r
-               strPane = strPaneList;\r
-\r
-       var oParam = new Object();\r
-       oParam.sTopic = "";\r
-       var oMsg = new whMessage(WH_MSG_GETDEFAULTTOPIC, window, 1, oParam);\r
-       if (SendMessage(oMsg) && oParam.sTopic != "")\r
-               strDefaultTopic =  oParam.sTopic;\r
-\r
-\r
-       if (nViewFrameType == 1)\r
-       {\r
-               //DHTML (iframe or xml based)\r
-               strHTML += "<frameset  id=\"whPfset\" cols=\"260,*\" frameborder=\"1\">";\r
-               strHTML += "<frame name=\"bsscleft\" title=\"navigation frame\" src=\"" + strPane + "\" scrolling=\"no\"></frame>";\r
-               strHTML += "<frame name=\"bsscright\" title=\"topic frame\" src=\"" + strDefaultTopic + "\" scrolling=\"auto\"></frame></frameset>";\r
-       }\r
-       else if (nViewFrameType == 2)\r
-       {\r
-               //applet (xml based)\r
-               strHTML += "<frameset  id=\"whPfset\" cols=\"260,*\" framespacing=\"0\" frameborder=\"0\" border=\"0\">";\r
-               strHTML += "<frame name=\"bsscleft\" title=\"navigation frame\" src=\"" + strPane+ "\" scrolling=\"no\" marginwidth=\"0\" marginheight=\"0\"></frame>";\r
-               strHTML += "<frame name=\"bsscright\" title=\"topic frame\" src=\"" + strDefaultTopic + "\" scrolling=\"auto\"></frame></frameset>";\r
-       }\r
-       else if (nViewFrameType == 3)\r
-       {\r
-               //generic html (pure html based)\r
-               strHTML += "<frameset  id=\"whPfset\" cols=\"260,*\">";\r
-               strHTML += "<frame title=\"navigation frame\" src=\"" + strPane + "\" name=\"bsscleft\"  scrolling=\"no\"></frame>";\r
-               strHTML += "<frame title=\"topic frame\" src=\"" + strDefaultTopic + "\" name=\"bsscright\" scrolling=\"auto\"></frame>";\r
-               strHTML += "</frameset>";\r
-       } \r
-       else if (nViewFrameType == 4)\r
-       {\r
-               //no navipane at all\r
-               strHTML += "<frameset  id=\"whPfset\" border=\"0\" cols=\"100%,*\">";\r
-               strHTML += "<frame title=\"topic frame\" src=\"" + strDefaultTopic + "\" name=\"bsscright\" framespacing=\"0\" frameborder=\"0\" border=\"0\" scrolling=\"auto\">";\r
-               strHTML += "</frameset>";\r
-       }\r
-\r
-       document.write(strHTML);\r
-\r
-       RegisterListener2(window, WH_MSG_SHOWPANE);\r
-       RegisterListener2(window, WH_MSG_HIDEPANE);\r
-       RegisterListener2(window, WH_MSG_ISPANEVISIBLE);\r
-       window.onunload = window_unload;\r
-}\r
-\r
-function window_unload()\r
-{\r
-       UnRegisterListener2(window, WH_MSG_SHOWPANE);\r
-       UnRegisterListener2(window, WH_MSG_HIDEPANE);\r
-       UnRegisterListener2(window, WH_MSG_ISPANEVISIBLE);\r
-}\r
-\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       var nMsgId = oMsg.nMessageId;\r
-       if (nMsgId == WH_MSG_SHOWPANE)\r
-       {\r
-               getElement("whPfset").cols = "260,*";\r
-               var onMsg = new whMessage(WH_MSG_PANESTATUE, this, 1, "visible");\r
-               SendMessage(onMsg);\r
-               onMsg = new whMessage(WH_MSG_GETPANEINFO, this, 1, "");\r
-               if (SendMessage(onMsg))\r
-               {\r
-                       onMsg = new whMessage(WH_MSG_PANEINFO, this, 1, onMsg.oParam);\r
-                       SendMessage(onMsg);\r
-               }\r
-               return false;\r
-       }\r
-       else if (nMsgId == WH_MSG_HIDEPANE)\r
-       {\r
-               getElement("whPfset").cols = "0,*";\r
-               var onMsg = new whMessage(WH_MSG_PANESTATUE, this, 1, "invisible");\r
-               SendMessage(onMsg);\r
-               onMsg = new whMessage(WH_MSG_PANEINFO, this, 1, "");\r
-               SendMessage(onMsg);\r
-               return false;\r
-       }\r
-       else if (nMsgId == WH_MSG_ISPANEVISIBLE)\r
-       {\r
-               var n = parseInt(getElement("whPfset").cols);\r
-               if (n > 0)\r
-               {\r
-                       oMsg.oParam.bVisible = true;\r
-               }\r
-               return false;\r
-       }\r
-       return true;\r
-}\r
-//-->\r
-</script>\r
-<body>\r
-<noscript>\r
-       <p> It seems javascript is disabled in your browser, please enable it and reload again, or click <a href="whnjs.htm">here</a> to view without javascript</p>\r
-</noscript>\r
-</body>\r
-</html>\r
diff --git a/doc/salome/gui/GUI/whskin_info.htm b/doc/salome/gui/GUI/whskin_info.htm
deleted file mode 100755 (executable)
index d1faf17..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-<html>\r
-<head>\r
-<title>WebHelp 5.50 </title>\r
-<meta name="description" content="output from robohelp">\r
-<meta name="keywords" content="robohelp,webhelp,webhelp enterprise,roboinfo">\r
-</head>\r
-<body>\r
-<h1> WebHelp 5.50 System  Info </h1>\r
-<table>\r
-<tr><td> Start Page </td><td>index.htm</td></tr>\r
-<tr><td> Skin Name </td><td></td></tr>\r
-<tr><td> Generating Time </td><td>12:57 01/22/2007</td></tr>\r
-<tr><td> Language ID </td><td>1033</td></tr>\r
-<tr><td> Compile Script </td><td>webhelp5_compile_script.xml</td></tr>\r
-<tr><td> Compile Build Version </td><td>13.10.801</td></tr>\r
-<tr><td> Product Name </td><td>WebHelp 5.50</td></tr>\r
-<tr><td> Authoring Tool Name </td><td>RoboHelp X5</td></tr>\r
-<table>\r
-</body>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whskin_pickup.htm b/doc/salome/gui/GUI/whskin_pickup.htm
deleted file mode 100755 (executable)
index 816fc70..0000000
+++ /dev/null
@@ -1,229 +0,0 @@
-<html>\r
-<head>\r
-<title>Select a Topic&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</title>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript">\r
-<!--\r
-var gsBgColor = "#c0c0c0";\r
-var gsBgImage = "";\r
-var gsListBgColor = "white";\r
-var gsListBgImage = "";\r
-var gsMargin="0pt";\r
-var gsIndent="0pt";\r
-var gSelectedItem = -1;\r
-\r
-\r
-var goFont=null;\r
-var goHoverFont=null;\r
-var goTableFont=null;\r
-var gsABgColor="#cccccc";\r
-\r
-function setListBackground(sBgImage)\r
-{\r
-       if (sBgImage != null && sBgImage.length > 0)\r
-               gsListBgImage = sBgImage;\r
-}\r
-\r
-function setListBackgroundcolor(sBgColor)\r
-{\r
-       if (sBgColor != null && sBgColor.length > 0)\r
-               gsListBgColor = sBgColor;\r
-}\r
-\r
-function setBackground(sBgImage)\r
-{\r
-       if (sBgImage != null && sBgImage.length > 0)\r
-               gsBgImage = sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
-       if (sBgColor != null && sBgColor.length > 0)\r
-               gsBgColor = sBgColor;\r
-}\r
-\r
-function setActiveBgColor(sBgColor)\r
-{\r
-       gsABgColor=sBgColor;\r
-}\r
-\r
-function setFont(sType, sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
-       var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
-       if (sType == "Normal")\r
-               goFont=vFont;\r
-       if (sType == "Hover")\r
-               goHoverFont=vFont;\r
-       else if (sType == "Table")\r
-               goTableFont=vFont;\r
-}\r
-\r
-function fnOnload()\r
-{\r
-       if( window.dialogArguments != null )\r
-               fnLoadOptions( window.dialogArguments );\r
-       var items = getElementsByTag(document, "a");\r
-       if (items.length > 0)\r
-               items[0].focus();\r
-}\r
-\r
-var gaOpts = new Array();\r
-\r
-function selectOption(index)\r
-{\r
-       gSelectedItem = index;\r
-}\r
-\r
-function displayOption(index)\r
-{\r
-       if (index < gaOpts.length)\r
-       {\r
-               returnValue = new Object();\r
-               returnValue.m_url = gaOpts[index];\r
-       }\r
-       else\r
-               returnValue = null;\r
-\r
-       window.close();\r
-}\r
-\r
-function fnLoadOptions( cList )\r
-{\r
-       var sHTML = "<dl>";\r
-       for( var i=0;i <cList.length; i++)\r
-       {\r
-               sHTML += "<dt><nobr><a href=\"javascript:void(0);\" onclick=\"return false;\" onfocus=\"selectOption(";\r
-               sHTML += gaOpts.length + ");return false;\" ondblclick=\"displayOption(" + gaOpts.length;\r
-               sHTML += ");return false;\">"+ _textToHtml(cList[i].m_sName) + "</a></nobr></dt>";\r
-               gaOpts[gaOpts.length] = cList[i].m_sURL;\r
-       }\r
-       sHTML += "</dl>";\r
-       var oDivCon=getElement("divlist");\r
-       if(oDivCon)\r
-               oDivCon.innerHTML=sHTML;\r
-       return true;\r
-}\r
-\r
-function fnOK()\r
-{\r
-       displayOption(gSelectedItem);\r
-}\r
-\r
-function fnCancel()\r
-{\r
-       returnValue = null;             window.close();\r
-}\r
-\r
-function fnOnKeypress()\r
-{\r
-       switch( event.keyCode )\r
-       {\r
-       case 13:        // enter key\r
-               fnOK();\r
-               break;\r
-       case 27:        // escape key\r
-               fnCancel();\r
-               break;\r
-       }\r
-}\r
-\r
-function writeStyle(bMiniBar)\r
-{\r
-       var sStyle="";\r
-       sStyle+="<style type='text/css'>\n";\r
-       sStyle+="<!--\n";\r
-       sStyle+="body.clsbody\n";\r
-       sStyle+="{\n";\r
-       sStyle+="margin: 4px;\n";\r
-       sStyle+=getFontStyle(goTableFont);\r
-       sStyle+="background-attachment: fixed;\n";\r
-       sStyle+="};\n";\r
-       sStyle+="P.clsNDXTD\n";\r
-       sStyle+="{\n";\r
-       sStyle+="margin:0;\n";\r
-       sStyle+=getFontStyle(goTableFont);\r
-       sStyle+="};\n";\r
-       sStyle+="div.clslist\n";\r
-       sStyle+="{\n";\r
-       if (gsListBgImage)\r
-               sStyle+="background-image:url("+gsListBgImage+");\n";\r
-       else if (gsListBgColor)\r
-               sStyle+="background-color:"+gsListBgColor+";\n";\r
-       sStyle+=getFontStyle(goFont);\r
-       sStyle+="};\n";\r
-       sStyle+="BUTTON.clsNDXButton\n";\r
-       sStyle+="{\n";\r
-       sStyle+=getFontStyle(goTableFont);\r
-       sStyle+="background-color: transparent;\n";\r
-       sStyle+="};\n";\r
-       sStyle+="dl {"+getFontStyle(goFont)+"margin-left:"+gsIndent+";margin-top:"+gsMargin+";}\n";\r
-       sStyle+="A:link {"+getFontStyle(goFont)+"}\n";\r
-       sStyle+="A:visited {"+getFontStyle(goFont)+"}\n";\r
-       sStyle+="A:active {background-color:"+gsABgColor+";}\n";\r
-       sStyle+="A:hover {"+getFontStyle(goHoverFont)+"}\n";\r
-       sStyle+="</style>\n";\r
-       document.write(sStyle);\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
-       if(document.body)\r
-       {\r
-               if(gsBgImage&&gsBgImage.length>0)\r
-               {\r
-                       document.body.background=gsBgImage;\r
-               }\r
-               if(gsBgColor&&gsBgColor.length>0)\r
-               {\r
-                       document.body.bgColor=gsBgColor;\r
-               }\r
-       }\r
-       fnOnload();\r
-       window_onResize();\r
-}\r
-\r
-function window_onResize()\r
-{\r
-       var oDiv = getElement("divlist");\r
-       var oTitle = getElement("p_title");\r
-       var oButton = getElement("tb_button");\r
-       if (oDiv && oTitle && oButton)\r
-       {\r
-               oDiv.style.height = document.body.offsetHeight - oTitle.offsetHeight - oButton.offsetHeight - 8;\r
-       }\r
-}\r
-goTableFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
-goFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
-goHoverFont=new whFont("Verdana","8pt","#666666","normal","normal","none");\r
-\r
-\r
-\r
-\r
-setFont("Table", "Arial","9pt","#000000","normal","normal","none");\r
-\r
-\r
-setFont("Normal", "Arial","9pt","#000000","normal","normal","none");\r
-setFont("Hover", "Arial","9pt","#007f00","normal","normal","underline");\r
-setActiveBgColor("#cccccc");\r
-\r
-window.onload=window_OnLoad;\r
-window.onresize = window_onResize;\r
-writeStyle();\r
-//-->\r
-</script>\r
-</head>\r
-\r
-<body class="clsbody" scroll="no" onkeypress="fnOnKeypress()">\r
-<p id="p_title" class="clsNDXTD"><nobr>Select a topic, then click Display</nobr></p>\r
-<div id="divlist" class="clslist" style="margin:2px;position: relative;overflow:auto;width:100%;border-style:inset;border-width:2">\r
-</div>\r
-<table id="tb_button" width="100%">\r
-  <tr>\r
-    <td width="100%" align="center"><button class="clsNDXButton" name="btnOK" onclick="fnOK()">Display</button>&#32;&#32;&#32;<button class="clsNDXButton" name="btnCancel" onclick="fnCancel()">Cancel</button></td>\r
-  </tr>\r
-</table>\r
-\r
-</body>\r
-\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whskin_tw.htm b/doc/salome/gui/GUI/whskin_tw.htm
deleted file mode 100755 (executable)
index 69737fa..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<html>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gsTopic="";\r
-\r
-if (location.hash.length > 1)\r
-{\r
-       var nPos = location.hash.indexOf(">>");\r
-       if (nPos>1)\r
-       {\r
-               gsTopic = location.hash.substring(1, nPos);\r
-               parseParam(location.hash.substring(nPos+2));\r
-       }\r
-       else\r
-               gsTopic = location.hash.substring(1);\r
-}\r
-\r
-\r
-       var strHtml="";\r
-       strHtml+="<frameset rows=\'100%,*\'>";\r
-       strHtml+="<frame name=\'topicwindow\' src=\'" + gsTopic +"\'></frame>";\r
-       strHtml+="<frame src=\'whskin_blank.htm\' noresize></frame>";\r
-       strHtml+="</frameset>";\r
-       document.write(strHtml);\r
-\r
-function parseParam(sParam)\r
-{\r
-       if (sParam)\r
-       {\r
-               var nBPos=0;\r
-               do \r
-               {\r
-                       var nPos=sParam.indexOf(">>", nBPos);\r
-                       if (nPos!=-1)\r
-                       {\r
-                               if (nPos>0)\r
-                               {\r
-                                       var sPart=sParam.substring(nBPos, nPos);\r
-                                       parsePart(sPart);\r
-                               }\r
-                               nBPos = nPos + 2;\r
-                       }\r
-                       else\r
-                       {\r
-                               var sPart=sParam.substring(nBPos);\r
-                               parsePart(sPart);\r
-                               break;\r
-                       }\r
-               } while(nBPos < sParam.length);\r
-       }       \r
-}\r
-\r
-function parsePart(sPart)\r
-{\r
-       if(sPart.toLowerCase().indexOf("cap=")==0)\r
-       {\r
-               document.title=_browserStringToText(sPart.substring(4));\r
-       }\r
-}\r
-//-->\r
-</script>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whstart.js b/doc/salome/gui/GUI/whstart.js
deleted file mode 100755 (executable)
index ec5af6f..0000000
+++ /dev/null
@@ -1,432 +0,0 @@
-//     WebHelp 5.10.003\r
-RegisterListener2(this, WH_MSG_GETSTARTFRAME);\r
-RegisterListener2(this, WH_MSG_GETDEFAULTTOPIC);\r
-RegisterListener2(this, WH_MSG_MINIBARORDER);\r
-RegisterListener2(this, WH_MSG_TOOLBARORDER);\r
-RegisterListener2(this, WH_MSG_ISSEARCHSUPPORT);\r
-RegisterListener2(this, WH_MSG_ISSYNCSSUPPORT);\r
-RegisterListener2(this, WH_MSG_ISAVENUESUPPORT);\r
-RegisterListener2(this, WH_MSG_GETPANETYPE);\r
-RegisterListener2(this, WH_MSG_GETPANES);\r
-RegisterListener2(this, WH_MSG_RELOADNS6);\r
-RegisterListener2(this, WH_MSG_GETCMD);\r
-RegisterListener2(this, WH_MSG_GETPANE);\r
-RegisterListener2(this, WH_MSG_GETDEFPANE);\r
-\r
-if (gbNav6)\r
-{\r
-       var gnReload=0;\r
-       setTimeout("delayReload();",5000);\r
-}\r
-\r
-function delayReload()\r
-{\r
-       if (!(this.cMRServer && cMRServer.m_strVersion))\r
-       {\r
-               if(gnReload!=2)\r
-               {\r
-                       if(nViewFrameType&&nViewFrameType==1)\r
-                               document.location=document.location;\r
-               }\r
-       }\r
-}\r
-\r
-var gsToolbarOrder = "";\r
-var gsMinibarOrder = "";\r
-\r
-var gsTopic = "kernel/introduction.htm";\r
-var PANE_OPT_SEARCH = 1;\r
-var PANE_OPT_BROWSESEQ = 2;\r
-var gnOpts=-1;\r
-var gnCmd=-1;\r
-var gnPans=2;\r
-var gsBtns="invalid";\r
-var gsDefaultBtn="invalid";\r
-var gbHasTitle=false;\r
-\r
-if (location.hash.length > 1)\r
-{\r
-       var sParam = location.hash;\r
-       if (sParam.indexOf("#<") == 0)\r
-       {\r
-               document.location = "whcsh_home.htm#" + sParam.substring(2);\r
-       }\r
-       else if (sParam.indexOf("#>>") == 0)\r
-       {\r
-               parseParam(sParam.substring(3));\r
-               sParam = "#" + gsTopic + sParam.substring(1);\r
-       }\r
-       else\r
-       {\r
-               var nPos = sParam.indexOf(">>");\r
-               if (nPos>1)\r
-               {\r
-                       gsTopic = sParam.substring(1, nPos);\r
-                       parseParam(sParam.substring(nPos+2));\r
-               }\r
-               else\r
-                       gsTopic = sParam.substring(1);\r
-       }\r
-       if (gnPans == 1 && gsTopic)\r
-       {\r
-               var strURL=location.href;\r
-               if (location.hash)\r
-               {\r
-                       var nPos=location.href.indexOf(location.hash);\r
-                       strURL=strURL.substring(0, nPos);\r
-               }\r
-               if (gbHasTitle)\r
-                       document.location=_getPath(strURL)+ "whskin_tw.htm" + sParam;\r
-               else\r
-                       document.location=_getPath(strURL)+ gsTopic;\r
-       }\r
-}\r
-\r
-function parseParam(sParam)\r
-{\r
-       if (sParam)\r
-       {\r
-               var nBPos=0;\r
-               do \r
-               {\r
-                       var nPos=sParam.indexOf(">>", nBPos);\r
-                       if (nPos!=-1)\r
-                       {\r
-                               if (nPos>0)\r
-                               {\r
-                                       var sPart=sParam.substring(nBPos, nPos);\r
-                                       parsePart(sPart);\r
-                               }\r
-                               nBPos = nPos + 2;\r
-                       }\r
-                       else\r
-                       {\r
-                               var sPart=sParam.substring(nBPos);\r
-                               parsePart(sPart);\r
-                               break;\r
-                       }\r
-               } while(nBPos < sParam.length);\r
-       }       \r
-}\r
-\r
-function parsePart(sPart)\r
-{\r
-       if(sPart.toLowerCase().indexOf("cmd=")==0)\r
-       {\r
-               gnCmd=parseInt(sPart.substring(4));\r
-       }\r
-       else if(sPart.toLowerCase().indexOf("cap=")==0)\r
-       {\r
-               document.title=_browserStringToText(sPart.substring(4));\r
-               gbHasTitle=true;\r
-       }\r
-       else if(sPart.toLowerCase().indexOf("pan=")==0)\r
-       {\r
-               gnPans=parseInt(sPart.substring(4));\r
-       }\r
-       else if(sPart.toLowerCase().indexOf("pot=")==0)\r
-       {\r
-               gnOpts=parseInt(sPart.substring(4));\r
-       }\r
-       else if(sPart.toLowerCase().indexOf("pbs=")==0)\r
-       {\r
-               var sRawBtns = sPart.substring(4);\r
-               var aBtns = sRawBtns.split("|");\r
-               for (var i=0;i<aBtns.length;i++)\r
-               {\r
-                       aBtns[i] = transferAgentNameToPaneName(aBtns[i]);\r
-               }\r
-               gsRawBtns = aBtns.join("|");\r
-       }\r
-       else if(sPart.toLowerCase().indexOf("pdb=")==0)\r
-       {\r
-               gsDefaultBtn=transferAgentNameToPaneName(sPart.substring(4));\r
-       }\r
-}\r
-\r
-function setToolbarOrder(sOrder)\r
-{\r
-       gsToolbarOrder = sOrder;\r
-}\r
-\r
-function setMinibarOrder(sOrder)\r
-{\r
-       gsMinibarOrder = sOrder;\r
-}\r
-\r
-function onSendMessageX(oMsg)\r
-{\r
-       var nMsgId = oMsg.nMessageId;\r
-       if (nMsgId == WH_MSG_GETSTARTFRAME)\r
-       {\r
-               oMsg.oParam.oFrame = this;\r
-               return false;\r
-       }\r
-       else if (nMsgId == WH_MSG_GETDEFAULTTOPIC)\r
-       {\r
-               if (this.cMRServer && cMRServer.m_strVersion)\r
-               {\r
-                       if (cMRServer.m_strURLTopic);\r
-                       {\r
-                               oMsg.oParam.sTopic = cMRServer.m_strURLTopic;\r
-                               return false;\r
-                       }\r
-\r
-               }\r
-               oMsg.oParam.sTopic = gsTopic;\r
-               return false;\r
-       }\r
-       else if (nMsgId == WH_MSG_TOOLBARORDER)\r
-       {\r
-               var oMsg1 = new whMessage(WH_MSG_GETPANES, this, 1, null);\r
-               if (SendMessage(oMsg1))\r
-               {\r
-                       if (oMsg1.oParam)\r
-                       {\r
-                               if (this.cMRServer && cMRServer.m_strVersion)\r
-                               {\r
-                                       var aToolbarOrder=cMRServer.m_strAgentList.split(";");\r
-                                       var i=0;\r
-                                       for (i=0;i<aToolbarOrder.length;i++)\r
-                                               aToolbarOrder[i]=transferANToPN2(aToolbarOrder[i]);\r
-                                       aToolbarOrder[aToolbarOrder.length] = "blankblock";\r
-                                       if (cMRServer.m_bShowSearchInput)\r
-                                       {\r
-                                               aToolbarOrder[aToolbarOrder.length] = "searchform";\r
-                                       }\r
-                                       aToolbarOrder[aToolbarOrder.length] = "banner";\r
-                                       var aToolbarOrderNew = new Array();\r
-                                       for (i=0;i<aToolbarOrder.length;i++)\r
-                                       {\r
-                                               if (isAPane(aToolbarOrder[i]))\r
-                                               {\r
-                                                       if (oMsg1.oParam.aPanes && oMsg1.oParam.aPanes.length)\r
-                                                       {\r
-                                                               for (var j=0;j<oMsg1.oParam.aPanes.length;j++)\r
-                                                               {\r
-                                                                       if (aToolbarOrder[i] == oMsg1.oParam.aPanes[j].sPaneName)\r
-                                                                       {\r
-                                                                               aToolbarOrderNew[aToolbarOrderNew.length] = aToolbarOrder[i];\r
-                                                                               break;\r
-                                                                       }\r
-                                                               }\r
-                                                       }\r
-                                               }\r
-                                               else\r
-                                                       aToolbarOrderNew[aToolbarOrderNew.length] = aToolbarOrder[i];\r
-                                       }\r
-                                       oMsg.oParam = aToolbarOrderNew.join("|");\r
-                                       return false;\r
-                               }\r
-                       }\r
-               }\r
-               var sParam="";\r
-               if (gsBtns!="invalid")\r
-                       sParam=gsBtns+"|blankblock|banner";\r
-               else\r
-                       sParam = gsToolbarOrder;\r
-\r
-               if (gnOpts!=-1)\r
-               {\r
-                       var nPosForm=sParam.indexOf("|searchform|");\r
-                       if (gnOpts&PANE_OPT_SEARCH)\r
-                       {\r
-                               if (nPosForm == -1 && sParam.indexOf("|fts|") != -1)\r
-                               {\r
-                                       var nPos=sParam.indexOf("banner");\r
-                                       if (nPos!=-1)\r
-                                       {\r
-                                               sParam=sParam.substring(0, nPos) + "searchform|" + sParam.substring(nPos);\r
-                                       }\r
-                               }\r
-                       }\r
-                       else\r
-                       {\r
-                               if (nPosForm!=-1)\r
-                               {\r
-                                       sParam=sParam.substring(0,nPosForm) + sParam.substring(nPosForm+11);\r
-                               }\r
-                       }\r
-               }\r
-               oMsg.oParam=sParam;\r
-               return false;\r
-       }\r
-       else if (nMsgId == WH_MSG_MINIBARORDER)\r
-       {\r
-               var sMinParam=gsMinibarOrder;\r
-               if (gnOpts!=-1)\r
-               {\r
-                       var nPosBro=gsMinibarOrder.indexOf("avprev|avnext");\r
-                       if (gnOpts&PANE_OPT_BROWSESEQ)\r
-                       {\r
-                               if (nPosBro==-1)\r
-                               {\r
-                                       sMinParam ="avprev|avnext|" + gsMinibarOrder;\r
-                               }\r
-                       }\r
-                       else\r
-                       {\r
-                               if (nPosBro!=-1)\r
-                               {\r
-                                       if (nPosBro!=0)\r
-                                               sMinParam=gsMinibarOrder.substring(0, nPosBro) + gsMinibarOrder.substring(nPosBro+14);\r
-                                       else\r
-                                               sMinParam=gsMinibarOrder.substring(14);\r
-                               }\r
-                       }\r
-               }\r
-               oMsg.oParam = sMinParam;\r
-               return false;\r
-       }\r
-       else if (nMsgId == WH_MSG_ISSYNCSSUPPORT)\r
-       {\r
-               if (this.cMRServer && cMRServer.m_strVersion)\r
-               {\r
-                       if (cMRServer.m_bShowSync)\r
-                               oMsg.oParam=true;\r
-                       else\r
-                               oMsg.oParam=false;\r
-                       return false;\r
-               }\r
-               else\r
-               {\r
-                       if(typeof(nViewFrameType)!="undefined")\r
-                       {\r
-                               oMsg.oParam= (nViewFrameType < 3);\r
-                               return false;\r
-                       }\r
-               }\r
-       }\r
-       else if (nMsgId == WH_MSG_ISAVENUESUPPORT)\r
-       {\r
-               if (this.cMRServer && cMRServer.m_strVersion)\r
-               {\r
-                       if (cMRServer.m_bShowBrowseSequences)\r
-                               oMsg.oParam=true;\r
-                       else\r
-                               oMsg.oParam=false;\r
-               }\r
-               else\r
-               {\r
-                       oMsg.oParam=true;\r
-               }\r
-               return false;\r
-       }\r
-       else if (nMsgId == WH_MSG_ISSEARCHSUPPORT)\r
-       {\r
-               if(typeof(nViewFrameType)!="undefined")\r
-               {\r
-                       oMsg.oParam= (nViewFrameType < 3);\r
-                       return false;\r
-               }\r
-       }\r
-       else if (nMsgId == WH_MSG_GETPANETYPE)\r
-       {\r
-               if(typeof(nViewFrameType)!="undefined")\r
-               {\r
-                       var oPaneInfo = new Object();\r
-                       oPaneInfo.nType = nViewFrameType;\r
-                       oPaneInfo.sPaneURL = strPane;\r
-                       oMsg.oParam = oPaneInfo;\r
-                       return false;\r
-               }\r
-       }\r
-       else if (nMsgId == WH_MSG_GETPANES)\r
-       {\r
-               if (this.cMRServer && cMRServer.m_strVersion)\r
-               {\r
-                       var oPanes = new Object();\r
-                       var aAgentNames = null;\r
-                       if (cMRServer.m_strDefAgent)\r
-                               oPanes.sDefault = transferAgentNameToPaneName(cMRServer.m_strDefAgent);\r
-\r
-                       aPanes = new Array();\r
-                       for(var i=0; i< cMRServer.m_cAgents.length; i++)\r
-                       {\r
-                               var nCur = aPanes.length;\r
-                               aPanes[nCur] = new Object();\r
-                               aPanes[nCur].sPaneName = transferAgentNameToPaneName(cMRServer.m_cAgents[i].m_strID);\r
-                               aPanes[nCur].sPaneURL = cMRServer.m_cAgents[i].m_strURL;\r
-                       }\r
-                       oPanes.aPanes = aPanes;\r
-                       oMsg.oParam = oPanes;\r
-                       return false;\r
-               }\r
-               else\r
-               {\r
-                       oMsg.oParam = null;\r
-                       return false;\r
-               }\r
-       }\r
-       else if(nMsgId==WH_MSG_RELOADNS6)\r
-       {\r
-               if(gbNav6)\r
-                       gnReload++;\r
-               return false;\r
-       }\r
-       else if(nMsgId==WH_MSG_GETCMD)\r
-       {\r
-               oMsg.oParam=gnCmd;\r
-               return false;\r
-       }\r
-       else if(nMsgId==WH_MSG_GETPANE)\r
-       {\r
-               if (gsBtns!="invalid" && oMsg.oParam.sName)\r
-               {\r
-                       if(gsBtns.indexOf(oMsg.oParam.sName) != -1)\r
-                               oMsg.oParam.bEnable=true;\r
-                       else\r
-                               oMsg.oParam.bEnable=false;\r
-               }\r
-               else\r
-                       oMsg.oParam.bEnable=true;\r
-               return false;\r
-       }\r
-       else if(nMsgId==WH_MSG_GETDEFPANE)\r
-       {\r
-               if (gsDefaultBtn!="invalid")\r
-               {\r
-                       oMsg.oParam=gsDefaultBtn;\r
-               }\r
-               return false;\r
-       }\r
-       return true;\r
-}\r
-\r
-function transferANToPN2(sAN)\r
-{\r
-       if (sAN =="toc")\r
-               return "toc";\r
-       else if (sAN =="ndx")\r
-               return "idx";\r
-       else if (sAN =="nls")\r
-               return "fts";\r
-       else if (sAN =="gls")\r
-               return "glo";\r
-       else if (sAN =="WebSearch")\r
-               return "websearch";\r
-       else if (sAN.indexOf("custom_")==0);\r
-               return "custom" + sAN.substring(7);\r
-       return sAN;\r
-}\r
-\r
-function transferAgentNameToPaneName(sAgentName)\r
-{\r
-       if (sAgentName =="toc")\r
-               return "toc";\r
-       else if (sAgentName =="ndx")\r
-               return "idx";\r
-       else if (sAgentName =="nls")\r
-               return "fts";\r
-       else if (sAgentName =="gls")\r
-               return "glo";\r
-       return "";\r
-}\r
-\r
-function isAPane(sPaneName)\r
-{\r
-       if (sPaneName == "toc" || sPaneName == "idx" || sPaneName == "fts" || sPaneName == "glo")\r
-               return true;\r
-       else\r
-               return false;\r
-}
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whstub.js b/doc/salome/gui/GUI/whstub.js
deleted file mode 100755 (executable)
index a43c6e1..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-//     WebHelp 5.10.002\r
-window.whname="wh_stub";\r
-function getframehandle(frames,framename)\r
-{\r
-       var frame=null;\r
-       if(null==frames) return null;\r
-       for(var i=0;i<frames.length;i++)\r
-       {\r
-               if(typeof(frames[i].name)!="unknown")\r
-               {\r
-                       if(frames[i].name==framename)\r
-                               return frames[i];\r
-               }\r
-               if(frames[i].frames.length>0)\r
-               {\r
-                       frame=getframehandle(frames[i].frames,framename);\r
-                       if(null!=frame)\r
-                               return frame;\r
-               }\r
-       }\r
-       return frame;\r
-}\r
-\r
-function AddToArray(arr,obj)\r
-{\r
-       var bFound=false;\r
-       for(var i=0;i<arr.length;i++){\r
-               if(arr[i]==obj){\r
-                       bFound=true;\r
-                       break;\r
-               }\r
-               else if(arr[i]==null){\r
-                       break;\r
-               }\r
-       }\r
-       if(!bFound) arr[i]=obj;\r
-}\r
-\r
-var gArrayRegistedMessage=new Array();\r
-var gArrayCompoentsArray=new Array();\r
-\r
-function GetComponentsArray(nMessageId)\r
-{\r
-       var len=gArrayRegistedMessage.length;\r
-       for(var i=0;i<len;i++)\r
-       {\r
-               if(gArrayRegistedMessage[i]==nMessageId){\r
-                       if(gArrayCompoentsArray.length>i)\r
-                               return gArrayCompoentsArray[i];\r
-                       else\r
-                               return null;\r
-               }\r
-       }\r
-       return null;\r
-}\r
-\r
-function CreateComponentsArray(nMessageId)\r
-{\r
-       var len=gArrayRegistedMessage.length;\r
-       gArrayRegistedMessage[len]=nMessageId;\r
-       gArrayCompoentsArray[len]=new Array();\r
-       return gArrayCompoentsArray[len];\r
-}\r
-\r
-function listener(sName,oWindow)\r
-{\r
-       this.sName=sName;\r
-       this.oWindow=oWindow;\r
-}\r
-\r
-function RegisterListener(windowName,nMessageId)\r
-{\r
-       var arrayComponents=GetComponentsArray(nMessageId);\r
-       if(arrayComponents==null)\r
-               arrayComponents=CreateComponentsArray(nMessageId);\r
-       \r
-       if(arrayComponents!=null)\r
-       {\r
-               for (var i=0;i<arrayComponents.length;i++)\r
-               {\r
-                       if (arrayComponents[i].sName == windowName)\r
-                               return false;\r
-               }\r
-               var oListener=new listener(windowName,null);\r
-               AddToArray(arrayComponents,oListener);\r
-               return true;\r
-       }\r
-       else\r
-               return false;\r
-}\r
-\r
-function RegisterListener2(oWindow,nMessageId)\r
-{\r
-       var arrayComponents=GetComponentsArray(nMessageId);\r
-       if(arrayComponents==null)\r
-               arrayComponents=CreateComponentsArray(nMessageId);\r
-       \r
-       if(arrayComponents!=null)\r
-       {\r
-               var oListener=new listener("",oWindow);\r
-               AddToArray(arrayComponents,oListener);\r
-               return true;\r
-       }\r
-       else\r
-               return false;\r
-}\r
-\r
-function UnRegisterListener2(oWindow,nMessageId)\r
-{\r
-       var arrayComponents=GetComponentsArray(nMessageId);\r
-       if(arrayComponents!=null)\r
-       {\r
-               for(var i=0;i<arrayComponents.length;i++)\r
-               {\r
-                       if(arrayComponents[i].oWindow==oWindow)\r
-                       {\r
-                               removeItemFromArray(arrayComponents,i);\r
-                               return true;\r
-                       }\r
-               }\r
-       }\r
-       else\r
-               return false;\r
-}\r
-\r
-function SendMessage(oMessage)\r
-{\r
-       var bDelivered=false;\r
-       var arrayComponents=GetComponentsArray(oMessage.nMessageId);\r
-       if(arrayComponents!=null&&arrayComponents.length>0){\r
-               for(var i=0;i<arrayComponents.length;i++)\r
-               {\r
-                       if(null!=arrayComponents[i])\r
-                       {\r
-                               var pFrame;\r
-                               if(arrayComponents[i].oWindow==null)\r
-                                       pFrame=getframehandle(frames,arrayComponents[i].sName);\r
-                               else\r
-                                       pFrame=arrayComponents[i].oWindow;\r
-                               if(null!=pFrame)\r
-                               {\r
-                                       if(pFrame.onSendMessageX)\r
-                                       {\r
-                                               bDelivered=true;\r
-                                               if(!pFrame.onSendMessageX(oMessage))\r
-                                                       break;\r
-                                       }\r
-                                       if(pFrame.onSendMessage)\r
-                                       {\r
-                                               bDelivered=true;\r
-                                               if(!pFrame.onSendMessage(oMessage))\r
-                                                       break;\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-       return bDelivered;\r
-}
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whtdhtml.htm b/doc/salome/gui/GUI/whtdhtml.htm
deleted file mode 100755 (executable)
index 8408b33..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>\r
-<head>\r
-<title>Table of contents</title>\r
-\r
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">\r
-<meta name="description" content="WebHelp 5.50">\r
-<base target="bsscright">\r
-</head>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whthost.js"></script>\r
-<script LANGUAGE="javascript1.2">\r
-<!--\r
-if (window.gbWhTHost)\r
-{\r
-       \r
-       \r
-       setFont("Normal", "Arial","9pt","#000000","normal","normal","none");\r
-       setFont("Hover", "Arial","9pt","#007f00","normal","normal","underline");\r
-       setActiveBgColor("#cccccc");\r
-       setMargin("0pt");\r
-       setIndent("9pt");\r
-       setIcon("BookOpen","whd_toc2.gif");\r
-       setIcon("BookClose","whd_toc1.gif");\r
-       setIcon("Item","whd_toc3.gif");\r
-       setIcon("RemoteItem","whd_toc4.gif");\r
-       setIcon("NewBookOpen","whd_toc2.gif");\r
-       setIcon("NewBookClose","whd_toc1.gif");\r
-       setIcon("NewItem","whd_toc3.gif");\r
-       setIcon("NewRemoteItem","whd_toc4.gif");\r
-       TocWriteClassStyle();\r
-       TocWriteFixedWidth(true,400);\r
-}\r
-else\r
-       document.location.reload();\r
-//-->\r
-</script>\r
-<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" bgcolor="white" scroll="auto">\r
-<script LANGUAGE="javascript1.2">\r
-<!--\r
-TocWriteFixedWidth(false,400);\r
-TocInitPage();\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whthost.js b/doc/salome/gui/GUI/whthost.js
deleted file mode 100755 (executable)
index 54ddc9a..0000000
+++ /dev/null
@@ -1,1504 +0,0 @@
-//     WebHelp 5.10.007\r
-var gaHSLoad=new Array();\r
-var gnMinIdx=0;\r
-var gnInsIdx=-1;\r
-var gsLoadingDivID="LoadingDiv";\r
-var gsLoadingMsg="Loading, click here to cancel...";\r
-var gaProj=null;\r
-var gaTocs=new Array();\r
-var goChunk=null;\r
-var gbReady=false;\r
-var gbToc=false;\r
-var gbXML=false;\r
-var gaRoot=new Array();\r
-var gnCC=-1;\r
-var gsTP="";\r
-var gaBTPs="";\r
-var gsCTPath="";\r
-var gnLT=-1;\r
-var gsPathSplit="\n";\r
-var gsBgColor="#ffffff";\r
-var gsBgImage="";\r
-var goFont=null;\r
-var goHFont=null;\r
-\r
-var gsMargin="0pt";\r
-var gsIndent="15pt";\r
-var gsABgColor="#cccccc";\r
-\r
-var giBookClose="";\r
-var giBookOpen="";\r
-var giBookItem="";\r
-var giURLItem="";\r
-var giNewBookClose="";\r
-var giNewBookOpen="";\r
-var giNewBookItem="";\r
-var giNewURLItem="";\r
-var gnImages=0;\r
-var gnLoadedImages=0;\r
-var gaImgs=new Array();\r
-var gbLoadData=false;\r
-var gobj=null;\r
-var gaTocsNs61Fix=null;\r
-var gbWhTHost=false;\r
-var gBookItems=new Array();\r
-var gInSync=false;\r
-var gbLData=false;\r
-var gbNeedFillStub=false;\r
-var gbLoadToc=false;\r
-\r
-function chunkInfoQueue()\r
-{\r
-       this.aContent=new Array();\r
-       this.inQueue=function(cInfo)\r
-       {\r
-               this.aContent[this.aContent.length]=cInfo;\r
-       }\r
-       this.deQueue=function()\r
-       {\r
-               var cInfo=null;\r
-               if(this.aContent.length>0)\r
-               {\r
-                       cInfo=this.aContent[0];\r
-                       for(var i=1;i<this.aContent.length;i++)\r
-                               this.aContent[i-1]=this.aContent[i];\r
-                       this.aContent.length--;\r
-               }\r
-               return cInfo;\r
-       }\r
-       this.length=function()\r
-       {\r
-               return this.aContent.length;\r
-       }\r
-}\r
-\r
-var gchunkRequestQueue=new chunkInfoQueue();\r
-\r
-function chunkInfo(nIdx, bLocal)\r
-{\r
-       this.nIdx=nIdx;\r
-       this.bLocal=bLocal;\r
-}\r
-\r
-function setBackground(sBgImage)\r
-{\r
-       gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
-       gsBgColor=sBgColor;\r
-}\r
-\r
-function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
-       var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
-       if(sType=="Normal") goFont=vFont;\r
-       else if(sType=="Hover") goHFont=vFont;\r
-}\r
-\r
-function setActiveBgColor(sBgColor){gsABgColor=sBgColor;}\r
-\r
-function setMargin(sMargin){gsMargin=sMargin;}\r
-\r
-function setIndent(sIndent){gsIndent=sIndent;}\r
-\r
-function setIcon(sType,sURL)\r
-{\r
-       if(sType=="BookOpen")\r
-               giBookOpen=sURL;\r
-       else if(sType=="BookClose")\r
-               giBookClose=sURL;\r
-       else if(sType=="Item")\r
-               giBookItem=sURL;\r
-       else if(sType=="RemoteItem")\r
-               giURLItem=sURL;\r
-       else if(sType=="NewBookClose")\r
-               giNewBookClose=sURL;\r
-       else if(sType=="NewBookOpen")\r
-               giNewBookOpen=sURL;\r
-       else if(sType=="NewItem")\r
-               giNewBookItem=sURL;\r
-       else if(sType=="NewRemoteItem")\r
-               giNewURLItem=sURL;              \r
-}\r
-\r
-function bookItem(sTarget,sURL)\r
-{\r
-       if(sTarget)\r
-               this.sTarget=sTarget;\r
-       else\r
-               this.sTarget="bsscright";\r
-       this.sURL=sURL;\r
-}\r
-\r
-function addBookItem(sBookId,sTarget,sURL)\r
-{\r
-       gBookItems[sBookId]=new bookItem(sTarget,sURL);         \r
-}\r
-\r
-function tocChunk(sPPath,sDPath)\r
-{\r
-       this.sPPath=sPPath;\r
-       this.sDPath=sDPath;\r
-       this.nMI=-1;\r
-       this.aTocs=null;\r
-}\r
-\r
-function addTocChunk(sPPath,sDPath)\r
-{\r
-       var oChunk=new tocChunk(sPPath,sDPath);\r
-       gaTocs[gaTocs.length]=oChunk;\r
-       return oChunk;\r
-}\r
-\r
-function isHSLoad(nIdx)\r
-{\r
-       for(var i=0;i<gaHSLoad.length;i++)\r
-               if(gaHSLoad[i]==nIdx)\r
-                       return true;\r
-       return false;\r
-}\r
-\r
-function setHSLoad(nIdx)\r
-{\r
-       if(!isHSLoad(nIdx))\r
-       {\r
-               var len=gaHSLoad.length;\r
-               for(var i=0;i<len;i++)\r
-                       if(gaHSLoad[i]==-1)\r
-                       {\r
-                               gaHSLoad[i]=nIdx;\r
-                               return;\r
-                       }\r
-               gaHSLoad[len]=nIdx;\r
-       }\r
-}\r
-\r
-function setHSUnLoad(nIdx)\r
-{\r
-       if(isHSLoad(nIdx))\r
-       {\r
-               for(var i=0;i<gaHSLoad.length;i++)\r
-                       if(gaHSLoad[i]==nIdx)\r
-                       {\r
-                               gaHSLoad[i]=-1;\r
-                               return;\r
-                       }\r
-       }\r
-}\r
-\r
-function removeLoadingDiv()\r
-{\r
-       var eLoadingDiv=getElement(gsLoadingDivID);\r
-       if(eLoadingDiv)\r
-               removeThis(eLoadingDiv);\r
-}\r
-\r
-function checkBookItem(nIdx)\r
-{\r
-       if(!gInSync)\r
-       {\r
-               var sBookId=getBookId(nIdx);\r
-               if(gBookItems[sBookId])\r
-               {\r
-                       window.open(gBookItems[sBookId].sURL,gBookItems[sBookId].sTarget);\r
-               }\r
-       }\r
-}\r
-\r
-function insertBookItems(nIdx,num)\r
-{\r
-       checkBookItem(nIdx);\r
-       var sChildBookId=getCBId(nIdx);\r
-       var eChildDiv=getElement(sChildBookId);\r
-       if(eChildDiv){\r
-               if((eChildDiv.childNodes&&eChildDiv.childNodes.length==0)||\r
-                       (eChildDiv.all&&eChildDiv.all.length==0)){\r
-                       var sHTML=writeBookItems(nIdx,num);\r
-                       eChildDiv.innerHTML=sHTML;\r
-                       setTimeout("syncInit()",1);\r
-               }\r
-       }\r
-       ExpandIt(nIdx);\r
-}\r
-\r
-function isBookEmpty(nIdx)\r
-{\r
-       var num=getItemContentsNum(nIdx);\r
-       if (num>0)\r
-       {\r
-               var nCIdx=0;\r
-               do {\r
-                       nCIdx++;\r
-                       var i=nIdx+nCIdx;\r
-                       var nItemType=getItemType(i);\r
-                       if(nItemType==1){\r
-                               if (!isBookEmpty(i))\r
-                                       return false;\r
-                       }\r
-                       else if(nItemType==4){\r
-                               var     sSrc=getRefURL(i);\r
-                               var nProj=getProject(sSrc);\r
-                               if(nProj!=-1){\r
-                                       sSrc=gaRoot[nProj].sToc;\r
-                                       if(sSrc)\r
-                                               return false;\r
-                               }\r
-                       }\r
-                       else if(nItemType==2||nItemType==16||nItemType==8)\r
-                               return false;\r
-               } while(nCIdx<num);\r
-       }\r
-       return true;\r
-}\r
-\r
-function writeBook(nIdx)\r
-{\r
-       var sIcon=getBookImage(nIdx,true);\r
-       var sName=_textToHtml(getItemName(nIdx));\r
-       sIcon=_textToHtml_nonbsp(sIcon);\r
-       \r
-       var nType=getItemType(nIdx);\r
-       var bLocal=(nType==1);\r
-       var bLocalProject=(nType!=4);\r
-       \r
-       var sHTML="<div id=\""+getPBId(nIdx)+"\" class=";\r
-       if(bLocal)\r
-       {\r
-               if (!isBookEmpty(nIdx))\r
-               {\r
-                       sHTML+="parent><p><nobr><a id=\""+getBookId(nIdx)+"\" href=\"javascript:void(0);\" onfocus=\"markBook("+nIdx+");\" onclick=\"";\r
-                       sHTML+="insertBookItems("+nIdx+", "+getItemContentsNum(nIdx);\r
-                       sHTML+=");return false;\" title=\""+sName+"\"><img alt=\"Book\" name=\""+getBId(nIdx)+"\" src=\""+sIcon+"\" border=0 align=\"absmiddle\">";\r
-                       sHTML+="&nbsp;"+sName+"</a></nobr></p></div>";\r
-                       var sURL=_textToHtml_nonbsp(getItemURL(nIdx));\r
-                       if(sURL!="")\r
-                               addBookItem(getBookId(nIdx),_textToHtml_nonbsp(getTopicTarget(nIdx)),sURL);\r
-                       sHTML+="<div id=\""+getCBId(nIdx)+"\" class=child></div>";\r
-               }\r
-               else\r
-                       sHTML="";\r
-       }\r
-       else\r
-       {\r
-               sHTML+="stub></div>";\r
-               gbNeedFillStub=true;\r
-               setTimeout("fillStub("+nIdx+","+bLocalProject+");",100);\r
-       }\r
-       return sHTML;\r
-}\r
-\r
-function checkFillStub()\r
-{\r
-       if(!gbLData)\r
-       {\r
-               if(gchunkRequestQueue.length()>0)\r
-               {\r
-                       var cInfo=gchunkRequestQueue.deQueue();\r
-                       if(cInfo)\r
-                       {\r
-                               fillStub(cInfo.nIdx,cInfo.bLocal);\r
-                               return;\r
-                       }\r
-               }\r
-       }\r
-       if(gbNeedFillStub)\r
-       {\r
-               gbNeedFillStub=false;\r
-               setTimeout("syncInit()",1);\r
-       }\r
-}\r
-\r
-function fillStub(nIdx,bLocalProject)\r
-{\r
-       if(!gbLData)\r
-       {\r
-               gbLData=true;\r
-               var sObj=getElement(getPBId(nIdx));\r
-               if(sObj!=null)\r
-               {\r
-                       tocExpandHelpSet(nIdx,bLocalProject);\r
-                       gbNeedFillStub=false;\r
-                       setTimeout("syncInit()",1);\r
-               }\r
-               else\r
-                       setTimeout("fillStub("+nIdx+","+bLocalProject+");",100);\r
-       }\r
-       else\r
-               gchunkRequestQueue.inQueue(new chunkInfo(nIdx,bLocalProject));\r
-}\r
-\r
-function getBookId(nIdx){return "B_"+nIdx;}\r
-\r
-function getItemId(nIdx){return "I_"+nIdx;}\r
-\r
-function markBook(nIdx)\r
-{\r
-       var obj=getElement(getItemId(nIdx));\r
-       if(obj==null)\r
-               obj=getElement(getBookId(nIdx));\r
-       if(gbNav6)\r
-       {\r
-               gobj=obj;\r
-               setTimeout("delayMarkObj();",1);\r
-       }\r
-       else\r
-               markObj(obj);\r
-}\r
-\r
-function delayMarkObj()\r
-{\r
-       if(gobj)\r
-       {\r
-               markObj(gobj);\r
-               gobj=null;\r
-       }\r
-}\r
-\r
-function markObj(obj)\r
-{\r
-       if(obj!=null)\r
-       {\r
-               HighLightElement(obj,gsABgColor,"transparent");\r
-               var sPath=calTocPath(obj);\r
-               if(gsCTPath!=sPath)\r
-                       gsCTPath=sPath;\r
-       }\r
-}\r
-\r
-function markItem(nIdx)\r
-{\r
-       var obj=getElement(getItemId(nIdx));\r
-       if(gbNav6)\r
-       {\r
-               gobj=obj;\r
-               setTimeout("delayMarkObj();",1);\r
-       }\r
-       else\r
-               markObj(getElement(getItemId(nIdx)));\r
-}\r
-\r
-function calTocPath(obj)\r
-{\r
-       var sPath=getInnerText2(obj);\r
-       var pObj=getParentNode(obj);\r
-       do\r
-       {\r
-               while(pObj!=null&&!isCBId(pObj.id)) pObj=getParentNode(pObj);\r
-               if(pObj!=null)\r
-               {\r
-                       var nId=getIdByCBId(pObj.id);\r
-                       var sObj=getElement(getPBId(nId));\r
-                       if(sObj!=null)\r
-                       {\r
-                               var objs=getItemsByBook(sObj);\r
-                               for(var i=0;i<objs.length;i++)\r
-                               {\r
-                                       var sText=getInnerText2(objs[i]);\r
-                                       if(sText.length!=0)\r
-                                       {\r
-                                               sPath=sText+gsPathSplit+sPath;\r
-                                               break;\r
-                                       }\r
-                               }\r
-                       }\r
-                       pObj=getParentNode(pObj);\r
-               }\r
-       }while(pObj!=null);\r
-       return sPath;\r
-}\r
-\r
-function writeAnItem(nIdx)\r
-{\r
-       var sTarget=_textToHtml_nonbsp(getTopicTarget(nIdx));\r
-       var sIcon=getItemIcon(nIdx,0);\r
-       if(sIcon=="")\r
-       {\r
-               var nItemType=getItemType(nIdx);\r
-               if(nItemType&2)\r
-                       sIcon=getItemImage(nIdx,false);\r
-               else\r
-                       sIcon=getItemImage(nIdx,true);\r
-       }\r
-       sIcon=_textToHtml_nonbsp(sIcon);\r
-       var sName=_textToHtml(getItemName(nIdx));\r
-       var sHTML="<p><nobr><a id=\""+getItemId(nIdx)+"\" onfocus=\"markItem("+nIdx+");\""\r
-       var sAltString="";\r
-       if(nItemType&2)\r
-               sAltString="Page";\r
-       else\r
-               sAltString="Remote Page";\r
-       if(sTarget!="")\r
-               sHTML+="target=\""+sTarget+"\" ";\r
-       sHTML+="href=\""+_textToHtml_nonbsp(getItemURL(nIdx))+"\" title=\""+sName+"\"><img alt=\""+sAltString+"\" src=\""+sIcon+"\" border=0 align=\"absmiddle\">&nbsp;"+sName+"</a></nobr></p>";\r
-       return sHTML;\r
-}\r
-\r
-function writeBookItems(nIdx,num)\r
-{\r
-       var sHTML="";\r
-       if(num>0){\r
-               var nCIdx=0;\r
-               do{\r
-                       nCIdx++;\r
-                       var i=nIdx+nCIdx;\r
-                       var nItemType=getItemType(i);\r
-                       if(nItemType==1||nItemType==4||nItemType==8){\r
-                               sHTML+=writeBook(i);    \r
-                               nCIdx+=getItemContentsNum(i);           \r
-                       }\r
-                       else if(nItemType==2||nItemType==16){\r
-                               sHTML+=writeAnItem(i);\r
-                       }\r
-               }\r
-               while(nCIdx<num);\r
-       }\r
-       return sHTML;\r
-}\r
-\r
-function tocExpandHelpSet(nIdx,bLocal)\r
-{\r
-       checkBookItem(nIdx);\r
-       removeLoadingDiv();\r
-       if(!isHSLoad(nIdx))\r
-       {\r
-               setHSLoad(nIdx);\r
-               var sSrc="";\r
-               if(bLocal){\r
-                       var oChunk=getChunk(nIdx);\r
-                       if(oChunk)\r
-                       {\r
-                               goChunk=addTocChunk(oChunk.sPPath,oChunk.sDPath);\r
-                               sSrc=oChunk.aTocs[nIdx-oChunk.nMI].sRefURL;\r
-                       }\r
-               }\r
-               else{\r
-                       sSrc=getRefURL(nIdx);\r
-                       var nProj=getProject(sSrc);\r
-                       if(nProj!=-1)\r
-                       {\r
-                               sSrc=gaRoot[nProj].sToc;\r
-                               if(sSrc)\r
-                                       goChunk=addTocChunk(gaProj[nProj].sPPath,gaProj[nProj].sDPath);\r
-                               else\r
-                                       goChunk=null;\r
-                       }\r
-                       else\r
-                               goChunk=null;\r
-               }\r
-               if(goChunk)\r
-               {\r
-                       PrepareLoading(nIdx);\r
-                       gbToc=false;\r
-                       loadData2(goChunk.sPPath+goChunk.sDPath+sSrc);\r
-               }\r
-               else\r
-               {\r
-                       gbLData=false;\r
-                       checkFillStub();\r
-               }\r
-       }\r
-}\r
-\r
-function getProject(sSrc)\r
-{\r
-       for(var i=0;i<gaProj.length;i++)\r
-               if(isSamePath(getPath(sSrc),gaProj[i].sPPath))\r
-                       return i;\r
-       return -1;\r
-}\r
-\r
-function getPath(sPath)\r
-{\r
-       if(sPath!="")\r
-       {\r
-               sPath=_replaceSlash(sPath);\r
-               var nPosFile=sPath.lastIndexOf("/");\r
-               sPath=sPath.substring(0,nPosFile+1);\r
-       }\r
-       return sPath;\r
-}\r
-\r
-function isSamePath(sPath1,sPath2)\r
-{\r
-       return (sPath1.toLowerCase()==sPath2.toLowerCase());\r
-}\r
-\r
-function PrepareLoading(nIdx)\r
-{\r
-       gnInsIdx=nIdx;\r
-       if(!gsTP)\r
-       {\r
-               var oObj=getElement(getPBId(gnInsIdx));\r
-               if(oObj)\r
-                       oObj.insertAdjacentHTML("afterEnd",writeLoadingDiv(nIdx));\r
-       }\r
-}\r
-\r
-function writeLoadingDiv(nIdx)\r
-{\r
-       return"<div id=\""+gsLoadingDivID+"\" class=parent onclick=\"removeLoadingDiv();\" style=\"padding-left:4px;background-color:ivory;border-width:1;border-style:solid;border-color:black;width:150px;\">"+gsLoadingMsg+"</div>";\r
-}\r
-\r
-function getItemName(nIdx)\r
-{\r
-       var oChunk=getChunk(nIdx);\r
-       if(oChunk)\r
-               return oChunk.aTocs[nIdx-oChunk.nMI].sItemName;\r
-       else\r
-               return null;\r
-}\r
-\r
-function getItemContentsNum(nIdx)\r
-{\r
-       var oChunk=getChunk(nIdx);\r
-       if(oChunk)\r
-               return oChunk.aTocs[nIdx-oChunk.nMI].nContents;\r
-       else\r
-               return null;\r
-}\r
-\r
-function getItemType(nIdx)\r
-{\r
-       var oChunk=getChunk(nIdx);\r
-       if(oChunk)\r
-               return oChunk.aTocs[nIdx-oChunk.nMI].nType;\r
-       else\r
-               return 0;\r
-}\r
-\r
-function getItemURL(nIdx)\r
-{\r
-       var oChunk=getChunk(nIdx);\r
-       if(oChunk)\r
-       {\r
-               var sPath=oChunk.aTocs[nIdx-oChunk.nMI].sItemURL;\r
-               if(!(sPath==null||sPath==""))\r
-               {\r
-                       return _getFullPath(oChunk.sPPath,sPath);\r
-               }\r
-       }\r
-       return "";\r
-}\r
-\r
-function getRefURL(nIdx)\r
-{\r
-       var oChunk=getChunk(nIdx);\r
-       if(oChunk)\r
-       {\r
-               var sPath=oChunk.aTocs[nIdx-oChunk.nMI].sRefURL;\r
-               if(!(sPath==null||sPath==""))\r
-               {\r
-                       return _getFullPath(oChunk.sPPath,sPath)\r
-               }\r
-       }\r
-       return "";\r
-}\r
-\r
-function getTopicTarget(nIdx)\r
-{\r
-       var oChunk=getChunk(nIdx);\r
-       if(oChunk)\r
-       {\r
-               if(typeof(oChunk.aTocs[nIdx-oChunk.nMI].sTarget)!="undefined")\r
-                       return oChunk.aTocs[nIdx-oChunk.nMI].sTarget;\r
-       }\r
-       return "";\r
-}\r
-\r
-function getItemIcon(nIdx,nIconIdx)\r
-{\r
-       var oChunk=getChunk(nIdx);\r
-       if(oChunk)\r
-       {\r
-               if(typeof(oChunk.aTocs[nIdx-oChunk.nMI].sIconRef)!="undefined")\r
-               {\r
-                       var sIconRef=oChunk.aTocs[nIdx-oChunk.nMI].sIconRef;\r
-                       var nIndex=sIconRef.indexOf(";");\r
-                       while(nIconIdx-->0&&nIndex!=-1)\r
-                       {\r
-                               sIconRef=sIconRef.substring(nIndex+1);\r
-                               nIndex=sIconRef.indexOf(";");\r
-                       }\r
-                       if(nIconIdx<0)\r
-                       {\r
-                               if(nIndex!=-1)\r
-                                       sIconRef=sIconRef.substring(0,nIndex);\r
-                               return _getFullPath(oChunk.sPPath,sIconRef)\r
-                       }\r
-               }\r
-       }\r
-       return "";\r
-}\r
-\r
-function TocWriteClassStyle()\r
-{\r
-       var sStyle="<STYLE TYPE='text/css'>\n";\r
-       if(gsBgImage)\r
-               sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
-       else\r
-               sStyle+="body {border-top:black 1px solid;}\n";\r
-       sStyle+="P {"+getFontStyle(goFont)+"margin-top:"+gsMargin+";margin-bottom:"+gsMargin+";}\n";\r
-       sStyle+="DIV {margin-top:"+gsMargin+";margin-bottom:"+gsMargin+";}\n";\r
-       sStyle+=".parent {margin-left:0pt;}\n";\r
-       sStyle+=".stub {margin-left:0pt;display:none}\n";\r
-       sStyle+=".child {display:none;margin-left:"+gsIndent+";}\n";\r
-       sStyle+="A:link {"+getFontStyle(goFont)+"}\n";\r
-       sStyle+="A:visited {"+getFontStyle(goFont)+"}\n";\r
-       sStyle+="A:active {background-color:"+gsABgColor+";}\n";\r
-       sStyle +="A:hover {"+getFontStyle(goHFont)+"}\n";\r
-       sStyle+="</STYLE>";\r
-       document.write(sStyle);\r
-}\r
-\r
-function TocWriteFixedWidth(bBegin,nWidth)\r
-{\r
-       if((gbIE4)&&(gbMac)&&(!gbIE5)){\r
-               if(bBegin)\r
-                       document.write("<table width="+nWidth+" border=0><tr><td>");\r
-               else\r
-                       document.write("</td></tr></table>");\r
-       }\r
-}\r
-\r
-function TocInitPage()\r
-{\r
-       var tempColl=getItemsByBook(document.body);\r
-       if(tempColl.length>0)\r
-               tempColl[0].focus();\r
-}\r
-\r
-function getItemsFromObj(obj)\r
-{\r
-       var aAnchor=new Array();\r
-       var tempColl=getChildrenByTag(obj,"P");\r
-       if(tempColl&&tempColl.length>0)\r
-       {\r
-               var anobr=new Array();\r
-               for(var i=0;i<tempColl.length;i++)\r
-               {\r
-                       var tempNobr=getChildrenByTag(tempColl[i],"NOBR");\r
-                       if(tempNobr&&tempNobr.length>0)\r
-                               for(var j=0;j<tempNobr.length;j++)\r
-                                       anobr[anobr.length]=tempNobr[j];\r
-               }\r
-               for(var s=0;s<anobr.length;s++)\r
-               {\r
-                       var tempAnchor=getChildrenByTag(anobr[s],"A");\r
-                       if(tempAnchor&&tempAnchor.length>0)\r
-                               for(var u=0;u<tempAnchor.length;u++)\r
-                                       aAnchor[aAnchor.length]=tempAnchor[u];\r
-               }\r
-       }\r
-       return aAnchor;\r
-}\r
-\r
-function getItemsByBook(obj)\r
-{\r
-       var aAnchor=new Array();\r
-       var aTAnchor=getItemsFromObj(obj);\r
-       for(var i=0;i<aTAnchor.length;i++)\r
-               aAnchor[aAnchor.length]=aTAnchor[i];\r
-       var tempBook=getChildrenByTag(obj,"DIV");\r
-       if(tempBook&&tempBook.length>0)\r
-               for(var j=0;j<tempBook.length;j++)\r
-               {\r
-                       var aTAnchorDiv=getItemsFromObj(tempBook[j]);\r
-                       for(var s=0;s<aTAnchorDiv.length;s++)\r
-                               aAnchor[aAnchor.length]=aTAnchorDiv[s];\r
-               }\r
-       return aAnchor;\r
-}\r
-\r
-function ExpandIt(nId)\r
-{\r
-       if(!gsTP)\r
-               ExpandIt2(nId,false);\r
-}\r
-\r
-function ExpandIt2(nId,bForceOpen)\r
-{\r
-       var oC=TocExpand(nId,true,bForceOpen);\r
-       var nNewScroll=document.body.scrollTop;\r
-       if(oC.style.display=="block"){\r
-               var nTop=oC.offsetTop;\r
-               var nBottom=nTop+oC.offsetHeight;\r
-               if(document.body.scrollTop+document.body.clientHeight<nBottom){\r
-                       nNewScroll=nBottom-document.body.clientHeight;\r
-               }\r
-               if(nBottom-nTop>document.body.clientHeight){\r
-                       nNewScroll=nTop-20;\r
-               }\r
-       }\r
-       document.body.scrollTop=nNewScroll;\r
-}\r
-\r
-function TocExpand(nId,bChangeImg,bForceOpen)\r
-{\r
-       var oDiv=getElement(getCBId(nId));\r
-       if(oDiv==null) return null;\r
-\r
-       var whichIm=document.images[getBId(nId)];\r
-       if((oDiv.style.display!="block")||bForceOpen){\r
-               oDiv.style.display="block";\r
-               if(bChangeImg){\r
-                       var sPath=getPath(whichIm.src);\r
-                       sPath=_getFullPath(sPath,getBookImage(nId,false));\r
-                       whichIm.src=sPath;              \r
-               }\r
-       }else{\r
-               oDiv.style.display="none";\r
-               if(bChangeImg){\r
-                       var sPath=getPath(whichIm.src);\r
-                       sPath=_getFullPath(sPath,getBookImage(nId,true));\r
-                       whichIm.src=sPath;\r
-               }\r
-               if(gbMac&&gbIE5){\r
-                       this.parent.document.getElementById("tocIFrame").style.width="101%";\r
-                       this.parent.document.getElementById("tocIFrame").style.width="100%";\r
-               }\r
-       }\r
-       return oDiv;\r
-}\r
-\r
-function getChunkId(n)\r
-{\r
-       var nCan=-1;\r
-       for(var i=0;i<gaTocs.length;i++)\r
-               if(gaTocs[i].nMI<=n&&gaTocs[i].nMI!=-1)\r
-               {\r
-                       if(nCan==-1)\r
-                               nCan=i;\r
-                       else\r
-                               if(gaTocs[i].nMI>=gaTocs[nCan].nMI)\r
-                                       nCan=i;\r
-               }\r
-       if(nCan!=-1)\r
-               return nCan;\r
-       else\r
-               return -1;\r
-}\r
-\r
-function getChunk(n)\r
-{\r
-       if(gnCC!=-1&&gaTocs[gnCC].nMI<=n&&(gnCC==gaTocs.length-1||\r
-               gaTocs[gnCC+1].nMI>n))\r
-       {       \r
-               return gaTocs[gnCC];\r
-       }\r
-       else{\r
-               gnCC=getChunkId(n);\r
-               if(gnCC!=-1)\r
-                       return gaTocs[gnCC];\r
-               else\r
-                       return null;\r
-       }\r
-}\r
-\r
-function getBookImage(nIdx,bClosed)\r
-{\r
-       var nIdx=bClosed?0:1;\r
-       var sIcon=getItemIcon(nIdx,nIdx);\r
-       if(sIcon=="")\r
-               if(bClosed)\r
-                       sIcon=giBookClose;\r
-               else\r
-                       sIcon=giBookOpen;\r
-       return _getFullPath(gaProj[0].sPPath,sIcon);\r
-}\r
-\r
-function getItemImage(nIdx,bRemote)\r
-{\r
-       var sIcon=getItemIcon(nIdx,0);\r
-       if(sIcon=="")\r
-               if(bRemote)\r
-                       sIcon=giURLItem;\r
-               else\r
-                       sIcon=giBookItem;\r
-       return _getFullPath(gaProj[0].sPPath,sIcon);\r
-}\r
-\r
-function getInnerText2(obj)\r
-{\r
-       var sText=getInnerText(obj);\r
-       if(sText.length>0&&!gbOpera7)\r
-               sText=sText.substring(1);\r
-       return sText;\r
-}\r
-\r
-function expandToc(oObj,sRest,aIdList)\r
-{\r
-       var len=aIdList.length;\r
-       var nPos=sRest.indexOf(gsPathSplit);\r
-       if(nPos!=-1)\r
-       {\r
-               sPart=sRest.substring(0,nPos);\r
-               sRest=sRest.substring(nPos+1);\r
-       }\r
-       else\r
-       {\r
-               sPart=sRest;\r
-               var aTagAs=getItemsByBook(oObj);\r
-               for(var s=0;s<aTagAs.length;s++)\r
-               {\r
-                       var sText=getInnerText2(aTagAs[s]);\r
-                       if(sText==sPart)\r
-                       {\r
-                               aIdList[len]=aTagAs[s];\r
-                               return 1;\r
-                       }\r
-               }\r
-               return 0;\r
-       }\r
-               \r
-       var aChildren=getChildrenByTag(oObj,"DIV");\r
-       for(var i=0;i<aChildren.length;i++)\r
-       {\r
-               var sPId=aChildren[i].id;\r
-               if(!isPBId(sPId))\r
-                       continue;\r
-               var sText=getInnerText2(aChildren[i]);\r
-               if(sText!=sPart)\r
-                       continue;\r
-               aIdList[len]=getIdByPBId(sPId);\r
-               var sCId=getCBId(aIdList[len]);\r
-               var oCObj=getElement(sCId);\r
-               if(oCObj)\r
-               {\r
-                       if(oCObj.innerHTML=="")\r
-                       {\r
-                               var obj=getItemsByBook(aChildren[i]);\r
-                               if(obj.length>0)\r
-                               {\r
-                                       if(gbNav6)\r
-                                       {\r
-                                               var sCommand=obj[0].getAttribute("onClick");\r
-                                               var nCommand=sCommand.indexOf(";");\r
-                                               sCommand=sCommand.substring(0,nCommand);\r
-                                               setTimeout(sCommand,1);\r
-                                       }\r
-                                       else\r
-                                               obj[0].click();\r
-                               }\r
-                               return -1;\r
-                       }\r
-                       var nRet=expandToc(oCObj,sRest,aIdList);\r
-                       if(nRet)\r
-                               return nRet;\r
-               }\r
-       }\r
-       aIdList.length=len;\r
-       return 0;\r
-}\r
-\r
-function getIdByPBId(sPId)\r
-{\r
-       return parseInt(sPId.substring(2,sPId.length-1));\r
-}\r
-\r
-function getIdByCBId(sCId)\r
-{\r
-       return parseInt(sCId.substring(2,sCId.length-1));\r
-}\r
-\r
-function isPBId(sId)\r
-{\r
-       return (sId&&sId.indexOf("B_")==0&&sId.lastIndexOf("P")==sId.length-1);\r
-}\r
-\r
-function isCBId(sId)\r
-{\r
-       return (sId&&sId.indexOf("B_")==0&&sId.lastIndexOf("C")==sId.length-1);\r
-}\r
-\r
-function getBId(nIdx)\r
-{\r
-       return "B_"+nIdx;\r
-}\r
-\r
-function getPBId(nIdx)\r
-{\r
-       return getBId(nIdx)+"P";\r
-}\r
-\r
-function getCBId(nIdx)\r
-{\r
-       return getBId(nIdx)+"C";\r
-}\r
-\r
-function getClosestTocPath(aPaths)\r
-{\r
-       var nMaxSimilarity=0;\r
-       var nThatIndex=-1;\r
-       var sPath=null;\r
-       if(aPaths.length==0) return sPath;\r
-       for(var i=0;i<aPaths.length;i++)\r
-       {\r
-               var nSimilarity=comparePath(gsCTPath,aPaths[i]);\r
-               if(nSimilarity>nMaxSimilarity)\r
-               {\r
-                       nMaxSimilarity=nSimilarity;\r
-                       nThatIndex=i;\r
-               }\r
-       }\r
-       if(nThatIndex!=-1)\r
-               sPath=aPaths[nThatIndex];\r
-       else\r
-               sPath=aPaths[0];\r
-       return sPath;\r
-}\r
-\r
-function comparePath(sPath1,sPath2)\r
-{\r
-       var nMaxSimilarity=0;\r
-       var nStartPos1=0;\r
-       var nPos1=-1;\r
-       var nStartPos2=0;\r
-       var nPos2=-1;\r
-       do{\r
-               var sCheck1=null;\r
-               var sCheck2=null;\r
-               nPos1=sPath1.indexOf(gsPathSplit,nStartPos1);\r
-               if(nPos1!=-1)\r
-               {\r
-                       sCheck1=sPath1.substring(nStartPos1,nPos1);\r
-                       nStartPos1=nPos1+1;\r
-               }\r
-               else\r
-               {\r
-                       sCheck1=sPath1.substring(nStartPos1);\r
-                       nStartPos1=-1;\r
-               }\r
-               nPos2=sPath2.indexOf(gsPathSplit,nStartPos2);\r
-               if(nPos1!=-1)\r
-               {\r
-                       sCheck2=sPath2.substring(nStartPos2,nPos2);\r
-                       nStartPos2=nPos2+1;\r
-               }\r
-               else\r
-               {\r
-                       sCheck2=sPath2.substring(nStartPos2);\r
-                       nStartPos2=-1;\r
-               }\r
-               if(sCheck1==sCheck2)\r
-                       nMaxSimilarity++;\r
-               else\r
-                       break;\r
-       }while(nStartPos1!=-1&&nStartPos2!=-1);\r
-       return nMaxSimilarity;\r
-}\r
-\r
-function getTocPaths(oTopicParam)\r
-{\r
-       var aRelTocPaths=oTopicParam.aPaths;\r
-       var aPaths=new Array();\r
-       for(var i=0;i<gaProj.length;i++)\r
-               if(isSamePath(gaProj[i].sPPath,oTopicParam.sPPath))\r
-               {\r
-                       for(var j=0;j<aRelTocPaths.length;j++)\r
-                               for (var k=0;k<gaRoot[i].aRPath.length;k++)\r
-                               {\r
-                                       var sPath=gaRoot[i].aRPath[k]+aRelTocPaths[j];\r
-                                       aPaths[aPaths.length]=sPath.substring(1);\r
-                               }\r
-                       break;\r
-               }\r
-       return aPaths;\r
-}\r
-\r
-function syncInit()\r
-{\r
-       if(gsTP&&!gbNeedFillStub)\r
-       {\r
-               gInSync=true;\r
-               var obj=document.body;\r
-               var aIdList=new Array();\r
-               var nRet=expandToc(obj,gsTP,aIdList);\r
-               if(nRet!=-1)\r
-               {\r
-                       if(nRet==1)\r
-                       {\r
-                               if(aIdList.length)\r
-                                       for(var i=0;i<aIdList.length-1;i++)\r
-                                               ExpandIt2(aIdList[i],true);\r
-                               gsCTPath=gsTP;\r
-                               if(!gbIE55)\r
-                                       aIdList[aIdList.length-1].focus();\r
-                               else\r
-                                       HighLightElement(aIdList[aIdList.length-1],gsABgColor,"transparent");\r
-                       }\r
-                       var aPaths=gaBTPs;\r
-                       gsTP=null;\r
-                       gaBTPs=null;\r
-                       if(aPaths!=null)\r
-                       {\r
-                               var sPath=getClosestTocPath(aPaths);\r
-                               if(sPath!=null)\r
-                               {       \r
-                                       gsTP=sPath;             \r
-                                       setTimeout("syncInit()",1);\r
-                               }\r
-                       }\r
-               }\r
-               gInSync=false;\r
-       }\r
-}\r
-\r
-function loadToc()\r
-{\r
-       if(!gbLoadToc)\r
-       {\r
-               var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
-               if(SendMessage(oResMsg)&&oResMsg.oParam)\r
-               {\r
-                       gbLoadToc=true;\r
-                       var oProj=oResMsg.oParam;\r
-                       gaProj=oProj.aProj;\r
-                       gbXML=oProj.bXML;\r
-                       load1B1();\r
-               }\r
-       }\r
-}\r
-\r
-function load1B1()\r
-{\r
-       if(gnLT+1<gaProj.length)\r
-               for(var i=gnLT+1;i<gaProj.length;i++)\r
-                       if(gaProj[i].sToc)\r
-                       {\r
-                               gbToc=true;\r
-                               gnLT=i;\r
-                               setTimeout("loadTocInfo()",1);\r
-                               return true;\r
-                       }\r
-       return false;\r
-}\r
-\r
-function loadTocInfo()\r
-{\r
-       loadData2(gaProj[gnLT].sPPath+gaProj[gnLT].sDPath+gaProj[gnLT].sToc);\r
-}\r
-\r
-function loadData2(sFile)\r
-{\r
-       if(gbXML)\r
-               loadDataXML(sFile);\r
-       else\r
-               loadData(sFile);\r
-}\r
-\r
-function projReady(sRoot,aProj)\r
-{\r
-       if(gaRoot.length<=gnLT||!gaRoot[gnLT])\r
-               gaRoot[gnLT]=new Object();\r
-       gaRoot[gnLT].sToc=sRoot;\r
-       \r
-       if(gnLT==0)\r
-       {\r
-               gaRoot[gnLT].aRPath=new Array();\r
-               gaRoot[gnLT].aRPath[0]=gsPathSplit;\r
-       }\r
-\r
-       updatePTPath(gnLT,aProj);\r
-\r
-       if(!((gnLT+1<gaProj.length)&&load1B1()))\r
-       {\r
-               gbReady=true;\r
-               if(gbIE4)\r
-                       setTimeout("loadImages();",1);\r
-               else\r
-                       setTimeout("loadTData();",1);\r
-       }\r
-}\r
-\r
-function loadTData()\r
-{\r
-       if(gaProj[0].sToc!="")\r
-       {\r
-               gbLData=true;\r
-               goChunk=addTocChunk(gaProj[0].sPPath,gaProj[0].sDPath);\r
-               gbToc=false;\r
-               loadData2(gaProj[0].sPPath+gaProj[0].sDPath+gaRoot[0].sToc);\r
-       }\r
-}\r
-\r
-function updatePTPath(n,aProj)\r
-{\r
-       if(aProj)\r
-               for(var i=0;i<aProj.length;i++)\r
-               {\r
-                       var sFullPath=_getFullPath(gaProj[n].sPPath,aProj[i].sPPath);\r
-                       for(var j=0;j<gaProj.length;j++)\r
-                               if(isSamePath(sFullPath,gaProj[j].sPPath))\r
-                               {\r
-                                       if(gaRoot.length<=j||!gaRoot[j])\r
-                                               gaRoot[j]=new Object();\r
-                                       if(!gaRoot[j].aRPath)\r
-                                               gaRoot[j].aRPath=new Array();\r
-\r
-                                       if(gaRoot[n].aRPath)\r
-                                               for(var k=0;k<gaRoot[n].aRPath.length;k++)\r
-                                               {\r
-                                                       var bDup=false;\r
-                                                       var sTFPath=gaRoot[n].aRPath[k]+aProj[i].sRPath;\r
-                                                       for(var l=0;l<gaRoot[j].aRPath.length;l++)\r
-                                                               if(gaRoot[j].aRPath[l]==sTFPath)\r
-                                                               {\r
-                                                                       bDup=true;\r
-                                                                       break;\r
-                                                               }\r
-                                                       if(!bDup)\r
-                                                               gaRoot[j].aRPath[gaRoot[j].aRPath.length]=sTFPath;\r
-                                               }\r
-                                       else\r
-                                               gaRoot[j].aRPath[gaRoot[j].aRPath.length]=aProj[i].sRPath;\r
-                                       break;\r
-                               }\r
-               }\r
-}\r
-\r
-function onLoadXMLError()\r
-{\r
-       if(gbToc)\r
-       {\r
-               var sRoot="";\r
-               var aRProj=new Array();\r
-               projReady(sRoot,aRProj);\r
-       }\r
-       else\r
-       {\r
-               var aToc=new Array();\r
-               putData(aToc)\r
-       }\r
-}\r
-\r
-function putDataXML(xmlDoc,sDocPath)\r
-{\r
-       if(gbToc)\r
-       {\r
-               var tocNode=xmlDoc.getElementsByTagName("toc")[0];\r
-               if(tocNode)\r
-               {\r
-                       var sRoot=tocNode.getAttribute("root");\r
-                       var rmtProject=tocNode.getElementsByTagName("project");\r
-                       var aRProj=new Array();\r
-                       if(rmtProject.length>0)\r
-                       {\r
-                               for(var i=0;i<rmtProject.length;i++)\r
-                               {\r
-                                       aRProj[i]=new Object();\r
-                                       var sURL=rmtProject[i].getAttribute("url");\r
-                                       if(sURL)\r
-                                       {\r
-                                               if(sURL.lastIndexOf("/")!=sURL.length-1)\r
-                                                       sURL+="/";                                              \r
-                                       }\r
-                                       aRProj[i].sPPath=sURL;\r
-                                       aRProj[i].sRPath = "";\r
-                                       var oSubPath = rmtProject[i].getElementsByTagName("subpath")[0];\r
-                                       if (oSubPath)\r
-                                       {\r
-                                               while (oSubPath)\r
-                                               {\r
-                                                       aRProj[i].sRPath += oSubPath.getAttribute("name") + "\n";\r
-                                                       oSubPath = oSubPath.getElementsByTagName("subpath")[0];\r
-                                               }\r
-                                       }\r
-                                       else\r
-                                               aRProj[i].sRPath=rmtProject[i].getAttribute("path");\r
-                               }\r
-                       }\r
-                       projReady(sRoot,aRProj);\r
-               }\r
-       }\r
-       else\r
-       {\r
-               var chunkNode=xmlDoc.getElementsByTagName("tocdata")[0];\r
-               if(chunkNode)\r
-               {\r
-                       var aToc=new Array();\r
-                       processBook(chunkNode,aToc);\r
-                       putData(aToc);\r
-               }\r
-       }\r
-}\r
-\r
-function processBook(node,aToc)\r
-{\r
-       var i=0;\r
-       var entry=null;\r
-       var prevEntry=null;\r
-       var oChild=node.firstChild;\r
-       do{\r
-               if(oChild)\r
-               {\r
-                       if(oChild.nodeName.indexOf("#")!=0)\r
-                       {\r
-                               var sName=oChild.getAttribute("name");\r
-                               var sURL=oChild.getAttribute("url");\r
-                               var sRef=oChild.getAttribute("ref");\r
-                               var sTarget=oChild.getAttribute("target");\r
-                               var sIcons=oChild.getAttribute("images");\r
-                               var item=new Object();\r
-                               item.sItemName=sName;\r
-                               if(sTarget)\r
-                                       item.sTarget=sTarget;\r
-                               if(sIcons)\r
-                                       item.sIconRef=sIcons;\r
-                               if(sURL==null) sURL="";\r
-\r
-                               item.sItemURL=sURL;\r
-                               \r
-                               if(oChild.nodeName=="book")\r
-                               {\r
-                                       item.nType=1;\r
-                                       aToc[aToc.length]=item;\r
-                                       var nCurrPos=aToc.length;\r
-                                       processBook(oChild,aToc);\r
-                                       item.nContents=aToc.length-nCurrPos;\r
-                               }\r
-                               else if(oChild.nodeName=="item")\r
-                               {\r
-                                       item.nType=2;\r
-                                       item.nContents=0;\r
-                                       aToc[aToc.length]=item;\r
-                               }\r
-                               else if(oChild.nodeName=="remoteitem")\r
-                               {\r
-                                       item.nType=16;\r
-                                       item.nContents=0;\r
-                                       aToc[aToc.length]=item;\r
-                               }\r
-                               else if(oChild.nodeName=="project")\r
-                               {\r
-                                       if(sRef)\r
-                                       {\r
-                                               if(sRef.lastIndexOf("/")!=sRef.length-1)\r
-                                                       sRef+="/";                                              \r
-                                       }\r
-                                       item.nType=4;\r
-                                       item.sRefURL=sRef;\r
-                                       item.nContents=0;\r
-                                       aToc[aToc.length]=item;\r
-                               }\r
-                               else if(oChild.nodeName=="chunk")\r
-                               {\r
-                                       item.nType=8;\r
-                                       item.sRefURL=sRef;\r
-                                       item.nContents=0;\r
-                                       aToc[aToc.length]=item;\r
-                               }\r
-                       }\r
-               }\r
-               else\r
-                       break;\r
-               oChild=oChild.nextSibling;\r
-       }while(true);\r
-}\r
-\r
-function putData(aTocs)\r
-{\r
-       gaTocsNs61Fix=aTocs;\r
-       setTimeout("realPutData();",1);\r
-}\r
-\r
-function realPutData()\r
-{\r
-       removeLoadingDiv();\r
-       var aTocs=gaTocsNs61Fix;\r
-       if(!aTocs) return;\r
-       if(goChunk)\r
-       {\r
-               var n=gnMinIdx;\r
-               goChunk.nMI=gnMinIdx;\r
-               goChunk.aTocs=aTocs;\r
-               gnMinIdx+=aTocs.length;\r
-               if(gnInsIdx!=-1)\r
-               {\r
-                       var oObj=getElement(getPBId(gnInsIdx));\r
-                       if(oObj)\r
-                       {\r
-                               oObj.insertAdjacentHTML("afterEnd",writeBookItems(n-1,aTocs.length));\r
-                               setTimeout("syncInit()",1);\r
-                       }\r
-               }\r
-               else{\r
-                       document.body.insertAdjacentHTML("beforeEnd",writeBookItems(n-1,aTocs.length));\r
-                       var oParam=new Object();\r
-                       oParam.oTocInfo=null;\r
-                       var oMsg=new whMessage(WH_MSG_GETTOCPATHS,this,1,oParam);\r
-                       if(SendMessage(oMsg))\r
-                       {\r
-                               if(oMsg.oParam.oTocInfo)\r
-                                       syncWithPaths(oMsg.oParam.oTocInfo);\r
-                       }\r
-               }       \r
-       }\r
-       gbLData=false;\r
-       checkFillStub();\r
-}\r
-\r
-function syncWithPaths(oTopicParam)\r
-{\r
-       var aPaths=getTocPaths(oTopicParam);\r
-       if(gsTP)\r
-               gaBTPs=aPaths;\r
-       else{\r
-               var sPath=getClosestTocPath(aPaths);\r
-               if(sPath!=null)\r
-               {\r
-                       gsTP=sPath;\r
-                       setTimeout("syncInit()",1);\r
-               }\r
-       }\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
-       if(gsBgImage&&gsBgImage.length>0)\r
-       {\r
-               document.body.background=gsBgImage;\r
-       }\r
-       if(gsBgColor&&gsBgColor.length>0)\r
-       {\r
-               document.body.bgColor=gsBgColor;\r
-       }\r
-       loadToc();\r
-       var oMsg=new whMessage(WH_MSG_SHOWTOC,this,1,null)\r
-       SendMessage(oMsg);\r
-}\r
-\r
-function loadImages()\r
-{\r
-       if(giBookClose)\r
-       {\r
-               gaImgs[gnImages]=giBookClose;\r
-               gnImages++;\r
-       }               \r
-       if(giBookOpen)\r
-       {\r
-               gaImgs[gnImages]=giBookOpen;\r
-               gnImages++;\r
-       }               \r
-       if(giBookItem)\r
-       {\r
-               gaImgs[gnImages]=giBookItem;\r
-               gnImages++;\r
-       }               \r
-       if(giURLItem)\r
-       {\r
-               gaImgs[gnImages]=giURLItem;\r
-               gnImages++;\r
-       }               \r
-       if(giNewBookClose)\r
-       {\r
-               gaImgs[gnImages]=giNewBookClose;\r
-               gnImages++;\r
-       }               \r
-       if(giNewBookOpen)\r
-       {\r
-               gaImgs[gnImages]=giNewBookOpen;\r
-               gnImages++;\r
-       }               \r
-       if(giNewBookItem)\r
-       {\r
-               gaImgs[gnImages]=giNewBookItem;\r
-               gnImages++;\r
-       }               \r
-       if(giNewURLItem)\r
-       {\r
-               gaImgs[gnImages]=giNewURLItem;\r
-               gnImages++;\r
-       }\r
-       if(gnImages>0)\r
-       {\r
-               setTimeout("loadDataAfter();",1000);\r
-               loadImage(gaImgs[0]);\r
-       }\r
-       else\r
-               loadDataAfter();\r
-}\r
-\r
-function loadImage(sURL)\r
-{\r
-       var oImg=new Image();\r
-       oImg.onload=checkImageLoading;\r
-       oImg.onerror=errorImageLoading;\r
-       oImg.src=_getFullPath(gaProj[0].sPPath,sURL);\r
-}\r
-\r
-function loadDataAfter()\r
-{\r
-       if(!gbLoadData)\r
-       {\r
-               gbLoadData=true;\r
-               loadTData();\r
-       }\r
-}\r
-\r
-function errorImageLoading()\r
-{\r
-       gnLoadedImages++;\r
-       if(gnImages==gnLoadedImages)\r
-               loadDataAfter();\r
-       else\r
-               loadImage(gaImgs[gnLoadedImages]);      \r
-}\r
-\r
-function checkImageLoading()\r
-{\r
-       gnLoadedImages++;\r
-       if(gnImages==gnLoadedImages)\r
-               loadDataAfter();\r
-       else\r
-               loadImage(gaImgs[gnLoadedImages]);      \r
-}\r
-\r
-function window_unload()\r
-{\r
-       UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
-       UnRegisterListener2(this,WH_MSG_SYNCTOC);\r
-       UnRegisterListener2(this,WH_MSG_SHOWTOC);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       if(oMsg)\r
-       {\r
-               var nMsgId=oMsg.nMessageId;\r
-               if(nMsgId==WH_MSG_PROJECTREADY)\r
-               {\r
-                       loadToc();\r
-               }\r
-               else if(nMsgId==WH_MSG_SYNCTOC)\r
-               {\r
-                       if(gbReady)\r
-                       {\r
-                               syncWithPaths(oMsg.oParam);\r
-                       }\r
-               }\r
-               else if(nMsgId==WH_MSG_SHOWTOC)\r
-               {\r
-                       if(!gbNav6)\r
-                               document.body.focus();\r
-               }\r
-       }\r
-       return true;\r
-}\r
-\r
-if(window.gbWhUtil&&window.gbWhVer&&window.gbWhMsg&&window.gbWhProxy)\r
-{\r
-       RegisterListener2(this,WH_MSG_PROJECTREADY);\r
-       RegisterListener2(this,WH_MSG_SYNCTOC);\r
-       RegisterListener2(this,WH_MSG_SHOWTOC);\r
-       goFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
-       goHFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
-\r
-       window.onload=window_OnLoad;\r
-       window.onbeforeunload=window_BUnload;\r
-       window.onunload=window_unload;\r
-       gbWhTHost=true;\r
-}\r
-else\r
-       document.location.reload();
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whtopic.js b/doc/salome/gui/GUI/whtopic.js
deleted file mode 100755 (executable)
index 6cd1211..0000000
+++ /dev/null
@@ -1,725 +0,0 @@
-//     WebHelp 5.10.005\r
-var gsPPath="";\r
-var gaPaths=new Array();\r
-var gaAvenues=new Array();\r
-\r
-var goFrame=null;\r
-var gsStartPage="";\r
-var gsRelCurPagePath="";\r
-var gsSearchFormHref="";\r
-var gnTopicOnly=-1;\r
-var gnOutmostTopic=-1;\r
-\r
-var BTN_TEXT=1;\r
-var BTN_IMG=2;\r
-\r
-var goSync=null;\r
-\r
-var goShow=null;\r
-var goHide=null;\r
-\r
-var goPrev=null;\r
-var goNext=null;\r
-var gnForm=0;\r
-var goShowNav=null;\r
-var goHideNav=null;\r
-\r
-var goWebSearch=null;\r
-\r
-var gsBtnStyle="";\r
-var gaButtons=new Array();\r
-var gaTypes=new Array();\r
-var whtopic_foldUnload=null;\r
-var gbWhTopic=false;\r
-var gbCheckSync=false;\r
-var gbSyncEnabled=false;\r
-\r
-function setButtonFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
-       var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
-       gsBtnStyle+=".whtbtn"+sType+"{"+getFontStyle(vFont)+"}";\r
-}\r
-\r
-function writeBtnStyle()\r
-{\r
-       if(gaButtons.length>0)\r
-       {\r
-               if(gsBtnStyle.length>0)\r
-               {\r
-                       var sStyle="<style type='text/css'>";\r
-                       sStyle+=gsBtnStyle+"</style>";\r
-                       document.write(sStyle);\r
-               }\r
-       }\r
-}\r
-\r
-function button(sText,nWidth,nHeight)\r
-{\r
-       this.sText=sText;\r
-       this.nWidth=nWidth;\r
-       this.nHeight=nHeight;\r
-       \r
-       this.aImgs=new Array();\r
-       var i=0;\r
-       while(button.arguments.length>i+3)\r
-       {\r
-               this.aImgs[i]=button.arguments[3+i];\r
-               i++;\r
-       }\r
-}\r
-\r
-//project info\r
-function setRelStartPage(sPath)\r
-{\r
-       if(gsPPath.length==0)\r
-       {\r
-               gsPPath=_getFullPath(_getPath(document.location.href),_getPath(sPath));\r
-               gsStartPage=_getFullPath(_getPath(document.location.href),sPath);\r
-               gsRelCurPagePath=_getRelativeFileName(gsStartPage,document.location.href);\r
-       }\r
-}\r
-\r
-function getImage(oImage,sType)\r
-{\r
-       var sImg="";\r
-       if(oImage&&oImage.aImgs&&(oImage.aImgs.length>0))\r
-       {\r
-               sImg+="<img alt=\""+sType+"\" src=\""+oImage.aImgs[0]+"\"";\r
-               if(oImage.nWidth>0)\r
-                       sImg+=" width="+oImage.nWidth;\r
-               if(oImage.nHeight>0)\r
-                       sImg+=" height="+oImage.nHeight;\r
-               sImg+=" border=0>";\r
-       }\r
-       return sImg;\r
-}\r
-\r
-function addTocInfo(sTocPath)\r
-{\r
-       gaPaths[gaPaths.length]=sTocPath;\r
-}\r
-\r
-function addAvenueInfo(sName,sPrev,sNext)\r
-{\r
-       gaAvenues[gaAvenues.length]=new avenueInfo(sName,sPrev,sNext);  \r
-}\r
-\r
-function addButton(sType,nStyle,sText,sHref,sOnClick,sOnMouseOver,sOnLoad,nWidth,nHeight,sImg1,sImg2,sImg3)\r
-{\r
-       var sButton="";\r
-       var nBtn=gaButtons.length;\r
-       if(sType=="prev")\r
-       {\r
-               if(canGo(false))\r
-               {\r
-                       var sTitle="Previous Topic";\r
-                       goPrev=new button(sText,nWidth,nHeight,sImg1,sImg2,sImg3);\r
-                       sButton="<a title=\""+sTitle+"\" class=\"whtbtnprev\" href=\"javascript:void(0);\" onclick=\"goAvenue(false);return false;\">";\r
-                       if(nStyle==BTN_TEXT)\r
-                               sButton+=goPrev.sText;\r
-                       else\r
-                               sButton+=getImage(goPrev,sTitle);\r
-                       sButton+="</a>";\r
-               }\r
-       }\r
-       else if(sType=="next")\r
-       {\r
-               if(canGo(true))\r
-               {\r
-                       var sTitle="Next Topic";\r
-                       goNext=new button(sText,nWidth,nHeight,sImg1,sImg2,sImg3);\r
-                       sButton="<a title=\""+sTitle+"\" class=\"whtbtnnext\" href=\"javascript:void(0);\" onclick=\"goAvenue(true);return false;\">";\r
-                       if(nStyle==BTN_TEXT)\r
-                               sButton+=goNext.sText;\r
-                       else\r
-                               sButton+=getImage(goNext,sTitle);\r
-                       sButton+="</a>";\r
-               }\r
-       }\r
-       else if(sType=="show")\r
-       {\r
-               if(isTopicOnly()&&(!gbOpera6||gbOpera7))\r
-               {\r
-                       var sTitle="Show Navigation Component";\r
-                       goShow=new button(sText,nWidth,nHeight,sImg1,sImg2,sImg3);\r
-                       sButton="<a title=\""+sTitle+"\" class=\"whtbtnshow\" href=\"javascript:void(0);\" onclick=\"show();return false;\">";\r
-                       if(nStyle==BTN_TEXT)\r
-                               sButton+=goShow.sText;\r
-                       else\r
-                               sButton+=getImage(goShow,sTitle);\r
-                       sButton+="</a>";\r
-               }\r
-       }\r
-       else if(sType=="hide")\r
-       {\r
-               if(!isTopicOnly()&&!gbOpera6)\r
-               {\r
-                       var sTitle="Hide Navigation Component";\r
-                       goHide=new button(sText,nWidth,nHeight,sImg1,sImg2,sImg3);\r
-                       sButton="<a title=\""+sTitle+"\" class=\"whtbtnhide\" href=\"javascript:void(0);\" onclick=\"hide();return false;\">";\r
-                       if(nStyle==BTN_TEXT)\r
-                               sButton+=goHide.sText;\r
-                       else\r
-                               sButton+=getImage(goHide,sTitle);\r
-                       sButton+="</a>";\r
-               }\r
-       }\r
-       else if(sType=="shownav")\r
-       {\r
-               if(isShowHideEnable())\r
-               {\r
-                       var sTitle="Show Navigation Component";\r
-                       goShowNav=new button(sText,nWidth,nHeight,sImg1,sImg2,sImg3);\r
-                       sButton="<a title=\""+sTitle+"\" class=\"whtbtnshownav\" href=\"javascript:void(0);\" onclick=\"showHidePane(true);return false;\">";\r
-                       if(nStyle==BTN_TEXT)\r
-                               sButton+=goShowNav.sText;\r
-                       else\r
-                               sButton+=getImage(goShowNav,sTitle);\r
-                       sButton+="</a>";\r
-               }\r
-       }\r
-       else if(sType=="hidenav")\r
-       {\r
-               if(isShowHideEnable())\r
-               {\r
-                       var sTitle="Hide Navigation Component";\r
-                       goHideNav=new button(sText,nWidth,nHeight,sImg1,sImg2,sImg3);\r
-                       sButton="<a title=\""+sTitle+"\" class=\"whtbtnhidenav\" href=\"javascript:void(0);\" onclick=\"showHidePane(false);return false;\">";\r
-                       if(nStyle==BTN_TEXT)\r
-                               sButton+=goHideNav.sText;\r
-                       else\r
-                               sButton+=getImage(goHideNav,sTitle);\r
-                       sButton+="</a>";\r
-               }\r
-       }\r
-       else if(sType=="synctoc")\r
-       {\r
-               if(gaPaths.length>0)\r
-               {\r
-                       var sTitle="Sync TOC";\r
-                       goSync=new button(sText,nWidth,nHeight,sImg1,sImg2,sImg3);\r
-                       sButton="<a title=\""+sTitle+"\" class=\"whtbtnsynctoc\" href=\"javascript:void(0);\" onclick=\"syncWithShow();return false;\">";\r
-                       if(nStyle==BTN_TEXT)\r
-                               sButton+=goSync.sText;\r
-                       else\r
-                               sButton+=getImage(goSync,sTitle);\r
-                       sButton+="</a>";\r
-               }\r
-       }\r
-       else if(sType=="websearch")\r
-       {\r
-               if(gsSearchFormHref.length>0)\r
-               {\r
-                       var sTitle="WebSearch";\r
-                       goWebSearch=new button(sText,nWidth,nHeight,sImg1,sImg2,sImg3);\r
-                       sButton="<a title=\""+sTitle+"\" class=\"whtbtnwebsearch\" href=\""+gsSearchFormHref+"\">";\r
-                       if(nStyle==BTN_TEXT)\r
-                               sButton+=goWebSearch.sText;\r
-                       else\r
-                               sButton+=getImage(goWebSearch,sTitle);\r
-                       sButton+="</a>";\r
-               }\r
-       }\r
-       else if(sType=="searchform")\r
-       {\r
-               gaButtons[nBtn]="NeedSearchForm";\r
-               gaTypes[nBtn]=sType;\r
-       }\r
-       if(sButton.length!=0)\r
-       {\r
-               if(nStyle==BTN_TEXT)\r
-                       sButton+="&nbsp;";\r
-               gaButtons[nBtn]="<td>"+sButton+"</td>";\r
-               gaTypes[nBtn]=sType;\r
-       }\r
-}\r
-\r
-function isSyncEnabled()\r
-{\r
-       if(!gbCheckSync)\r
-       {\r
-               var oMsg=new whMessage(WH_MSG_ISSYNCSSUPPORT,this,1,null);\r
-               if(SendMessage(oMsg))\r
-               {\r
-                       gbSyncEnabled=oMsg.oParam;\r
-               }\r
-               gbCheckSync=true;\r
-       }\r
-       return gbSyncEnabled;\r
-}\r
-\r
-function isInPopup()\r
-{\r
-       return (window.name.indexOf("BSSCPopup")!=-1);\r
-}\r
-\r
-function getIntopicBar(sAlign)\r
-{\r
-       var sHTML="";\r
-       if(gaButtons.length>0)\r
-       {\r
-               sHTML+="<div align="+sAlign+">";\r
-\r
-               sHTML+="<table cellpadding=\"2\" cellspacing=\"0\" border=\"0\"><tr>";\r
-               for(var i=0;i<gaButtons.length;i++)\r
-               {\r
-                       if(gaTypes[i]!="synctoc"||isSyncEnabled())\r
-                       {\r
-                               if(gaButtons[i]=="NeedSearchForm")\r
-                                       sHTML+=getSearchFormHTML();\r
-                               else\r
-                                       sHTML+=gaButtons[i];\r
-                       }\r
-               }\r
-               sHTML+="</tr></table>";\r
-\r
-               sHTML+="</div>";\r
-       }\r
-       return sHTML;\r
-}\r
-\r
-\r
-function writeIntopicBar(nAligns)\r
-{\r
-       if(isInPopup()) return;\r
-       if(gaButtons.length>0)\r
-       {\r
-               var sHTML="";\r
-               if(nAligns!=0)\r
-               {\r
-                       sHTML+="<table width=100%><tr>"\r
-                       if(nAligns&1)\r
-                               sHTML+="<td width=33%>"+getIntopicBar("left")+"</td>";\r
-                       if(nAligns&2)\r
-                               sHTML+="<td width=34%>"+getIntopicBar("center")+"</td>";\r
-                       if(nAligns&4)\r
-                               sHTML+="<td width=33%>"+getIntopicBar("right")+"</td>";\r
-                       sHTML+="</tr></table>";\r
-                       document.write(sHTML);\r
-               }\r
-       }\r
-}\r
-\r
-function sendAveInfoOut()\r
-{\r
-       if(!isInPopup())\r
-               setTimeout("sendAveInfo();",100);\r
-}\r
-\r
-function sendAveInfo()\r
-{\r
-       var oMsg=new whMessage(WH_MSG_AVENUEINFO,this,1,gaAvenues);\r
-       SendMessage(oMsg);\r
-}\r
-\r
-\r
-function onNext()\r
-{\r
-       var oMsg=new whMessage(WH_MSG_NEXT,this,1,null);\r
-       SendMessage(oMsg);\r
-}\r
-\r
-function onPrev()\r
-{\r
-       var oMsg=new whMessage(WH_MSG_PREV,this,1,null);\r
-       SendMessage(oMsg);\r
-}\r
-\r
-function createSyncInfo()\r
-{\r
-       var oParam=new Object();\r
-       if(gsPPath.length==0)\r
-               gsPPath=_getPath(document.location.href);\r
-       oParam.sPPath=gsPPath;\r
-       oParam.sTPath=document.location.href;\r
-       oParam.aPaths=gaPaths;\r
-       return oParam;\r
-}\r
-\r
-function syncWithShow()\r
-{\r
-       if(isTopicOnly())\r
-               show();\r
-       else\r
-       {\r
-               sync();\r
-               showTocPane();\r
-       }\r
-}\r
-\r
-function showTocPane()\r
-{\r
-       var oMsg=new whMessage(WH_MSG_SHOWTOC,this,1,null);\r
-       SendMessage(oMsg);\r
-}\r
-\r
-function sendSyncInfo()\r
-{\r
-       if(!isInPopup())\r
-       {\r
-               var oParam=null;\r
-               if(gaPaths.length>0)\r
-               {\r
-                       oParam=createSyncInfo();\r
-               }\r
-               var oMsg=new whMessage(WH_MSG_SYNCINFO,this,1,oParam);\r
-               SendMessage(oMsg);\r
-       }\r
-}\r
-\r
-function sendInvalidSyncInfo()\r
-{\r
-       if(!isInPopup())\r
-       {\r
-               var oMsg=new whMessage(WH_MSG_SYNCINFO,this,1,null);\r
-               SendMessage(oMsg);\r
-       }\r
-}\r
-\r
-function enableWebSearch(bEnable)\r
-{\r
-       if(!isInPopup())\r
-       {\r
-               var oMsg=new whMessage(WH_MSG_ENABLEWEBSEARCH,this,1,bEnable);\r
-               SendMessage(oMsg);\r
-       }\r
-}\r
-\r
-function autoSync(nSync)\r
-{\r
-       if(nSync==0) return;\r
-       if(isInPopup()) return;\r
-       if(isOutMostTopic())\r
-               sync();\r
-}\r
-\r
-function isOutMostTopic()\r
-{\r
-       if(gnOutmostTopic==-1)\r
-       {\r
-               var oMessage=new whMessage(WH_MSG_ISINFRAMESET,this,1,null);\r
-               if(SendMessage(oMessage))\r
-                       gnOutmostTopic=0;\r
-               else\r
-                       gnOutmostTopic=1;\r
-       }\r
-       return (gnOutmostTopic==1);\r
-}\r
-\r
-function sync()\r
-{\r
-       if(gaPaths.length>0)\r
-       {\r
-               var oParam=createSyncInfo();\r
-               var oMessage=new whMessage(WH_MSG_SYNCTOC,this,1,oParam);\r
-               SendMessage(oMessage);\r
-       }\r
-}\r
-\r
-\r
-function avenueInfo(sName,sPrev,sNext)\r
-{\r
-       this.sName=sName;\r
-       this.sPrev=sPrev;\r
-       this.sNext=sNext;\r
-}\r
-\r
-function getCurrentAvenue()\r
-{\r
-       var oParam=new Object();\r
-       oParam.sAvenue=null;\r
-       var oMessage=new whMessage(WH_MSG_GETCURRENTAVENUE,this,1,oParam);\r
-       SendMessage(oMessage);\r
-       return oParam.sAvenue;\r
-}\r
-\r
-function unRegisterListener()\r
-{\r
-       sendInvalidSyncInfo();\r
-       enableWebSearch(false);\r
-       if(whtopic_foldUnload)\r
-               whtopic_foldUnload();\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
-       var nMsgId=oMsg.nMessageId;\r
-       if(nMsgId==WH_MSG_GETAVIAVENUES)\r
-       {\r
-               oMsg.oParam.aAvenues=gaAvenues;\r
-               return false;\r
-       }\r
-       else if(nMsgId==WH_MSG_GETTOCPATHS)\r
-       {\r
-               if(isOutMostTopic())\r
-               {\r
-                       oMsg.oParam.oTocInfo=createSyncInfo();\r
-                       return false;           \r
-               }\r
-               else\r
-                       return true;\r
-       }\r
-       else if(nMsgId==WH_MSG_NEXT)\r
-       {\r
-               goAvenue(true);\r
-       }\r
-       else if(nMsgId==WH_MSG_PREV)\r
-       {\r
-               goAvenue(false);\r
-       }\r
-       else if(nMsgId==WH_MSG_WEBSEARCH)\r
-       {\r
-               websearch();\r
-       }\r
-       return true;\r
-}\r
-\r
-function goAvenue(bNext)\r
-{\r
-       var sTopic=null;\r
-       var sAvenue=getCurrentAvenue();\r
-       var nAvenue=-1;\r
-       if(sAvenue!=null&&sAvenue!="")\r
-       {\r
-               for(var i=0;i<gaAvenues.length;i++)\r
-               {\r
-                       if(gaAvenues[i].sName==sAvenue)\r
-                       {\r
-                               nAvenue=i;\r
-                               break;\r
-                       }\r
-               }\r
-               if(nAvenue!=-1)\r
-               {\r
-                       if(bNext)\r
-                               sTopic=gaAvenues[nAvenue].sNext;\r
-                       else\r
-                               sTopic=gaAvenues[nAvenue].sPrev;\r
-               }\r
-       }\r
-       else\r
-       {\r
-               for(var i=0;i<gaAvenues.length;i++)\r
-               {\r
-                       if(gaAvenues[i].sNext!=null&&gaAvenues[i].sNext.length>0&&bNext)\r
-                       {\r
-                               sTopic=gaAvenues[i].sNext;\r
-                               break;\r
-                       }\r
-                       else if(gaAvenues[i].sPrev!=null&&gaAvenues[i].sPrev.length>0&&!bNext)\r
-                       {\r
-                               sTopic=gaAvenues[i].sPrev;\r
-                               break;\r
-                       }\r
-               }\r
-       }\r
-       \r
-       if(sTopic!=null&&sTopic!="")\r
-       {\r
-               if(gsPPath!=null&&gsPPath!="")\r
-               {\r
-                       sFullTopicPath=_getFullPath(gsPPath,sTopic);\r
-                       document.location=sFullTopicPath;\r
-               }\r
-       }\r
-}\r
-\r
-function canGo(bNext)\r
-{\r
-       for(var i=0;i<gaAvenues.length;i++)\r
-       {\r
-               if((gaAvenues[i].sNext!=null&&gaAvenues[i].sNext.length>0&&bNext)||\r
-                       (gaAvenues[i].sPrev!=null&&gaAvenues[i].sPrev.length>0&&!bNext))\r
-                       return true;\r
-       }\r
-       return false;\r
-}\r
-\r
-function show()\r
-{\r
-       if(gsStartPage!="")\r
-               window.location=gsStartPage+"#"+gsRelCurPagePath;\r
-}\r
-\r
-function hide()\r
-{\r
-       if(goFrame!=null)\r
-       {\r
-               goFrame.location=window.location;\r
-       }\r
-}\r
-\r
-function isTopicOnly()\r
-{\r
-       if(gnTopicOnly==-1)\r
-       {\r
-               var oParam=new Object();\r
-               oParam.oFrame=null;\r
-               var oMsg=new whMessage(WH_MSG_GETSTARTFRAME,this,1,oParam);\r
-               if(SendMessage(oMsg))\r
-               {\r
-                       goFrame=oParam.oFrame;\r
-                       gnTopicOnly=0;\r
-               }\r
-               else\r
-                       gnTopicOnly=1;\r
-       }\r
-       if(gnTopicOnly==1)\r
-               return true;\r
-       else\r
-               return false;\r
-}\r
-\r
-function websearch()\r
-{\r
-       if(gbNav4)\r
-       {\r
-               if(document.ehelpform)\r
-                       document.ehelpform.submit();\r
-       }\r
-       else\r
-       {\r
-               if(window.ehelpform)\r
-                       window.ehelpform.submit();\r
-       }\r
-}\r
-\r
-function addSearchFormHref(sHref)\r
-{\r
-       gsSearchFormHref=sHref;\r
-       enableWebSearch(true);\r
-}\r
-\r
-function searchB(nForm)\r
-{\r
-       var sValue=eval("document.searchForm"+nForm+".searchString.value");\r
-       var oMsg=new whMessage(WH_MSG_SEARCHTHIS,this,1,sValue);\r
-       SendMessage(oMsg);\r
-}\r
-\r
-function getSearchFormHTML()\r
-{\r
-       var sHTML="";\r
-       gnForm++;\r
-       var sFormName="searchForm"+gnForm;\r
-       var sButton="<form name=\""+sFormName+"\" method=\"POST\" action=\"javascript:searchB("+gnForm+")\">"\r
-       sButton+="<input type=\"text\" name=\"searchString\" value=\"- Full Text search -\" size=\"20\"/>";\r
-       if(""=="text")\r
-       {\r
-               sButton+="<a class=\"searchbtn\" href=\"javascript:void(0);\" onclick=\""+sFormName+".submit();return false;\"></a>";\r
-       }\r
-       else if(""=="image")\r
-       {\r
-               sButton+="<a class=\"searchbtn\" href=\"javascript:void(0);\" onclick=\""+sFormName+".submit();return false;\">"\r
-               sButton+="<img src=\"\" border=0></a>";\r
-       }\r
-       sButton+="</form>";\r
-       sHTML="<td align=\"center\">"+sButton+"</td>";\r
-       return sHTML;\r
-}\r
-\r
-function showHidePane(bShow)\r
-{\r
-       var oMsg=null;\r
-       if(bShow)\r
-               oMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
-       else\r
-               oMsg=new whMessage(WH_MSG_HIDEPANE,this,1,null);\r
-       SendMessage(oMsg);\r
-}\r
-\r
-function isShowHideEnable()\r
-{\r
-       if(gbIE4)\r
-               return true;\r
-       else\r
-               return false;\r
-}\r
-\r
-\r
-function PickupDialog_Invoke()\r
-{\r
-       if(!gbIE4||gbMac)\r
-       {\r
-               if(typeof(_PopupMenu_Invoke)=="function")\r
-                       return _PopupMenu_Invoke(PickupDialog_Invoke.arguments);\r
-       }\r
-       else\r
-       {\r
-               if(PickupDialog_Invoke.arguments.length>2)\r
-               {\r
-                       var sPickup="whskin_pickup.htm";\r
-                       var sPickupPath=gsPPath+sPickup;\r
-                       if(gbIE4)\r
-                       {\r
-                               var sFrame=PickupDialog_Invoke.arguments[1];\r
-                               var aTopics=new Array();\r
-                               for(var i=2;i<PickupDialog_Invoke.arguments.length;i+=2)\r
-                               {\r
-                                       var j=aTopics.length;\r
-                                       aTopics[j]=new Object();\r
-                                       aTopics[j].m_sName=PickupDialog_Invoke.arguments[i];\r
-                                       aTopics[j].m_sURL=PickupDialog_Invoke.arguments[i+1];\r
-                               }\r
-\r
-                               if(aTopics.length>1)\r
-                               {\r
-                                       var nWidth=300;\r
-                                       var nHeight=180;\r
-                                       var     nScreenWidth=screen.width;\r
-                                       var     nScreenHeight=screen.height;\r
-                                       var nLeft=(nScreenWidth-nWidth)/2;\r
-                                       var nTop=(nScreenHeight-nHeight)/2;\r
-                                       if(gbIE4)\r
-                                       {\r
-                                               var vRet=window.showModalDialog(sPickupPath,aTopics,"dialogHeight:"+nHeight+"px;dialogWidth:"+nWidth+"px;resizable:yes;status:no;scroll:no;help:no;center:yes;");\r
-                                               if(vRet)\r
-                                               {\r
-                                                       var sURL=vRet.m_url;\r
-                                                       if(sFrame)\r
-                                                               window.open(sURL,sFrame);\r
-                                                       else\r
-                                                               window.open(sURL,"_self");\r
-                                               }\r
-                                       }\r
-                               }\r
-                               else if(aTopics.length==1)\r
-                               {\r
-                                       var sURL=aTopics[0].m_sURL\r
-                                       if(sFrame)\r
-                                               window.open(sURL,sFrame);\r
-                                       else\r
-                                               window.open(sURL,"_self");\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
-if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
-{\r
-       RegisterListener("bsscright",WH_MSG_GETAVIAVENUES);\r
-       RegisterListener("bsscright",WH_MSG_GETTOCPATHS);\r
-       RegisterListener("bsscright",WH_MSG_NEXT);\r
-       RegisterListener("bsscright",WH_MSG_PREV);\r
-       RegisterListener("bsscright",WH_MSG_WEBSEARCH);\r
-       if(gbMac&&gbIE4)\r
-       {\r
-               if(typeof(window.onunload)!="unknown")\r
-                       if(window.onunload.toString!=unRegisterListener.toString)\r
-                               whtopic_foldUnload=window.onunload;\r
-       }\r
-       else\r
-       {\r
-               if(window.onunload)\r
-                       if(window.onunload.toString!=unRegisterListener.toString)\r
-                               whtopic_foldUnload=window.onunload;\r
-       }\r
-       window.onunload=unRegisterListener;\r
-       setButtonFont("show","","","","","","");\r
-setButtonFont("hide","","","","","","");\r
-\r
-       gbWhTopic=true;\r
-}\r
-else\r
-       document.location.reload();
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whutils.js b/doc/salome/gui/GUI/whutils.js
deleted file mode 100755 (executable)
index 85fae7e..0000000
+++ /dev/null
@@ -1,527 +0,0 @@
-//     WebHelp 5.10.004\r
-var gsFileName="";\r
-var gsDivName="";\r
-var xmlDoc=null;\r
-var sdocPath=null;\r
-var gsInsertBeforeEndHTML="";\r
-var sReplaceStringsSrc=new Array();\r
-var gsDivName="dataDiv";\r
-var gnLoadDivNum=0;\r
-sReplaceStringsSrc[0]="&amp;";\r
-sReplaceStringsSrc[1]="&gt;";\r
-sReplaceStringsSrc[2]="&lt;";\r
-sReplaceStringsSrc[3]="&quot;";\r
-sReplaceStringsSrc[4]=String.fromCharCode(8364);\r
-sReplaceStringsSrc[5]="&nbsp;";\r
-\r
-var sReplaceStringsDst=new Array();\r
-sReplaceStringsDst[0]="&";\r
-sReplaceStringsDst[1]=">";\r
-sReplaceStringsDst[2]="<";\r
-sReplaceStringsDst[3]="\"";\r
-sReplaceStringsDst[4]=String.fromCharCode(128);\r
-sReplaceStringsDst[5]=" ";\r
-var goHighLighted=null;\r
-\r
-function _getRelativePath(strParentPath,strCurrentPath)\r
-{\r
-       if(_isAbsPath(strCurrentPath)) return _getPath(strCurrentPath);\r
-       strParentPath=_replaceSlash(strParentPath);\r
-       strParentPath=_getPath(strParentPath);\r
-       strCurrentPath=_replaceSlash(strCurrentPath);\r
-       strCurrentPath=_getPath(strCurrentPath);\r
-       for(var i=0;i<strParentPath.length&&i<strCurrentPath.length;i++)\r
-       {\r
-               if(strParentPath.charAt(i)!=strCurrentPath.charAt(i))\r
-                       break;\r
-       }\r
-       \r
-       strParentPath=strParentPath.substring(i);\r
-       strCurrentPath=strCurrentPath.substring(i);     \r
-       \r
-       var nPathPos=0;\r
-       while(nPathPos!=-1)\r
-       {\r
-               nPathPos=strParentPath.indexOf("/");\r
-               if(nPathPos!=-1)\r
-               {\r
-                       strParentPath=strParentPath.substring(nPathPos+1);\r
-                       strCurrentPath="../"+strCurrentPath;\r
-               }\r
-       }\r
-       return strCurrentPath;\r
-}\r
-\r
-function _getRelativeFileName(strParentPath,strCurrentPath)\r
-{\r
-       strParentPath=_replaceSlash(strParentPath);\r
-       strParentPath=_getPath(strParentPath);\r
-       strCurrentPath=_replaceSlash(strCurrentPath);\r
-       for(var i=0;i<strParentPath.length&&i<strCurrentPath.length;i++)\r
-       {\r
-               if(strParentPath.charAt(i)!=strCurrentPath.charAt(i))\r
-                       break;\r
-       }\r
-       \r
-       strParentPath=strParentPath.substring(i);\r
-       strCurrentPath=strCurrentPath.substring(i);     \r
-       \r
-       var nPathPos=0;\r
-       while(nPathPos!=-1)\r
-       {\r
-               nPathPos=strParentPath.indexOf("/");\r
-               if(nPathPos!=-1)\r
-               {\r
-                       strParentPath=strParentPath.substring(nPathPos+1);\r
-                       strCurrentPath="../"+strCurrentPath;\r
-               }\r
-       }\r
-       return strCurrentPath;\r
-}\r
-\r
-function _isAbsPathToHost(sPath)\r
-{\r
-       return (sPath.indexOf("/")==0);\r
-}\r
-\r
-function _getHost(sPath)\r
-{\r
-       var nPos=sPath.indexOf("//");\r
-       if(nPos>0)\r
-       {\r
-               var nPosx=sPath.indexOf("/",nPos+2);\r
-               if(nPosx>0)\r
-                       return sPath.substring(0,nPosx);\r
-               else\r
-                       return sPath;\r
-       }\r
-       return sPath;\r
-}\r
-\r
-function _getFullPath(sPath,sRelPath)\r
-{\r
-       if(_isAbsPath(sRelPath))\r
-               return sRelPath;\r
-       else if(_isAbsPathToHost(sRelPath))\r
-               return _getHost(sPath)+sRelPath;\r
-       else\r
-       {\r
-               var sFullPath=sPath;\r
-               var nPathPos=0;\r
-               while(nPathPos!=-1)\r
-               {\r
-                       var nPathPos=sRelPath.indexOf("../");\r
-                       if(nPathPos!=-1)\r
-                       {\r
-                               sRelPath=sRelPath.substring(nPathPos+3);\r
-                               sFullPath=sFullPath.substring(0,sFullPath.length-1);\r
-                               var nPos2=sFullPath.lastIndexOf("/");\r
-                               if(nPos2!=-1)\r
-                                       sFullPath=sFullPath.substring(0,nPos2+1);\r
-                               else\r
-                                       break;\r
-                       }\r
-               }\r
-               sFullPath+=sRelPath;\r
-               return sFullPath;\r
-       }       \r
-}\r
-\r
-function _isAbsPath(strPath)\r
-{\r
-       var strUpper=strPath.toUpperCase();\r
-       return (strUpper.indexOf(":")!=-1||strUpper.indexOf("\\\\")==0);\r
-}\r
-\r
-function _replaceSlash(strURL)\r
-{      \r
-       var re=new RegExp("\\\\","g");\r
-       var strReplacedURL=strURL.replace(re,"/");\r
-       return strReplacedURL;\r
-}\r
-\r
-function _getPath(strURL)\r
-{\r
-       pathpos=strURL.lastIndexOf("/");\r
-       if(pathpos>0)\r
-               return strURL.substring(0,pathpos+1);\r
-       else\r
-               return "";\r
-}\r
-\r
-function removeItemFromArray(oArray,i)\r
-{\r
-       if(oArray.length&&i>=0&&i<oArray.length)\r
-       {\r
-               var len=oArray.length;\r
-               for(var s=i;s<len-1;s++)\r
-                       oArray[s]=oArray[s+1];\r
-               oArray.length=len-1;\r
-       }\r
-}\r
-\r
-function insertItemIntoArray(oArray,i,obj)\r
-{\r
-       if(oArray.length&&i>=0&&i<=oArray.length)\r
-       {\r
-               var len=oArray.length;\r
-               for(var s=len;s>i;s--)\r
-                       oArray[s]=oArray[s-1];\r
-               oArray[i]=obj;          \r
-       }\r
-}\r
-\r
-function loadData(sFileName)\r
-{\r
-       var i=gnLoadDivNum;\r
-       var sName=gsDivName+gnLoadDivNum++;\r
-       loadData_2(sFileName,sName);\r
-}\r
-\r
-function loadData_2(sFileName,sDivName)\r
-{\r
-       if(!getElement(sDivName))\r
-       {\r
-               if(!insertDataDiv(sDivName))\r
-               {\r
-                       gsFileName=sFileName;\r
-                       gsDivName=sDivName;\r
-                       return;\r
-               }\r
-       }\r
-       var sHTML="";\r
-       if(gbMac)\r
-               sHTML+="<iframe src=\""+sFileName+"\"></iframe>";\r
-       else\r
-               sHTML+="<iframe style=\"visibility:hidden;width:0;height:0\" src=\""+sFileName+"\"></iframe>";\r
-       \r
-       var oDivCon=getElement(sDivName);\r
-       if(oDivCon)\r
-       {\r
-               if(gbNav6)\r
-               {\r
-                       if(oDivCon.getElementsByTagName&&oDivCon.getElementsByTagName("iFrame").length>0)\r
-                       {\r
-                               oDivCon.getElementsByTagName("iFrame")[0].src=sFileName;\r
-                       }\r
-                       else\r
-                               oDivCon.innerHTML=sHTML;\r
-               }\r
-               else\r
-                       oDivCon.innerHTML=sHTML;\r
-       }\r
-}\r
-\r
-function loadDataXML(sFileName)\r
-{\r
-       var sCurrentDocPath=_getPath(document.location.href);\r
-       sdocPath=_getFullPath(sCurrentDocPath,sFileName);\r
-       if(gbIE5)\r
-       {\r
-               xmlDoc=new ActiveXObject("Microsoft.XMLDOM");\r
-               xmlDoc.async=true;\r
-               xmlDoc.onreadystatechange=checkState;\r
-               if(document.body!=null)\r
-                       xmlDoc.load(sdocPath);\r
-       }\r
-       else if(gbNav6)\r
-       {\r
-               xmlDoc=document.implementation.createDocument("","",null);\r
-               xmlDoc.addEventListener("load",initializeData,false);\r
-               xmlDoc.load(sdocPath,"text/xml");\r
-       }\r
-}\r
-\r
-function initializeData()\r
-{\r
-       if(xmlDoc!=null)\r
-               putDataXML(xmlDoc,sdocPath);\r
-}\r
-\r
-function checkState()\r
-{\r
-       if(xmlDoc!=null)\r
-       {\r
-               var state=xmlDoc.readyState;\r
-               if(state==4)\r
-               {\r
-                       var err=xmlDoc.parseError;\r
-                       if(err.errorCode==0)\r
-                               putDataXML(xmlDoc,sdocPath);\r
-                       else\r
-                               onLoadXMLError();\r
-               }\r
-       }\r
-}\r
-\r
-function insertDataDiv(sName)\r
-{\r
-       var sHTML="";\r
-       if(gbMac)\r
-               sHTML+="<div id="+sName+" style=\"display:none;\"></div>";\r
-       else\r
-               sHTML+="<div id="+sName+" style=\"visibility:hidden\"></div>";\r
-       if((gbIE5||gbNav6)&&document.body)\r
-               document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
-       else\r
-       {\r
-               gsInsertBeforeEndHTML=sHTML;\r
-               setTimeout("insertWhenBodyReady();",100);\r
-               return false;\r
-       }\r
-       return true;\r
-}\r
-\r
-function insertWhenBodyReady()\r
-{\r
-       if(gsInsertBeforeEndHTML=="") return;\r
-       if(document.body)\r
-       {\r
-               document.body.insertAdjacentHTML("beforeEnd",gsInsertBeforeEndHTML);\r
-               gsInsertBeforeEndHTML="";\r
-               loadData_2(gsFileName,gsDivName);\r
-       }\r
-       else\r
-       {\r
-               setTimeout("insertWhenBodyReady();",100);\r
-       }\r
-}\r
-\r
-function window_BUnload()\r
-{\r
-       for(var i=0;i<gnLoadDivNum;i++)\r
-       {\r
-               var oDivCon=getElement(gsDivName+i);\r
-               if(oDivCon)\r
-                       oDivCon.innerHTML="";\r
-       }\r
-}\r
-\r
-function removeThis(obj)\r
-{\r
-       if(obj.parentNode)\r
-               obj.parentNode.removeChild(obj);\r
-       else\r
-               obj.outerHTML="";\r
-}\r
-\r
-function getParentNode(obj)\r
-{\r
-       if(obj.parentNode)\r
-               return obj.parentNode;\r
-       else if(obj.parentElement)\r
-               return obj.parentElement;\r
-       return null;\r
-}\r
-\r
-function getElement(sID)\r
-{\r
-       if(document.getElementById)\r
-               return document.getElementById(sID);\r
-       else if(document.all)\r
-               return document.all(sID);\r
-       return null;\r
-}\r
-\r
-function getChildrenByTag(obj,sTagName)\r
-{\r
-       if(obj.getElementsByTagName)\r
-       {\r
-               var aChildren=new Array();\r
-               var aElements=getElementsByTag(obj,sTagName);\r
-               if(aElements!=null)\r
-               {\r
-                       for(var i=0;i<aElements.length;i++)\r
-                       {\r
-                               if(aElements[i].parentNode==obj)\r
-                                       aChildren[aChildren.length]=aElements[i];\r
-                       }\r
-                       return aChildren;\r
-               }\r
-               else\r
-                       return new Array();\r
-       }\r
-       else if(obj.children)\r
-               return obj.children.tags(sTagName);\r
-}\r
-\r
-function getElementsByTag(obj,sTagName)\r
-{\r
-       if(obj.getElementsByTagName)\r
-               return obj.getElementsByTagName(sTagName);\r
-       else if(obj.all)\r
-               return obj.all.tags(sTagName);\r
-       return null;\r
-}\r
-\r
-function _htmlToText(sHTML)\r
-{\r
-       if(sHTML==null) return null;\r
-       var sText=sHTML;\r
-       for(var i=0;i<sReplaceStringsSrc.length;i++)\r
-       {\r
-               var re=new RegExp(sReplaceStringsSrc[i],"g");\r
-               sText=sText.replace(re,sReplaceStringsDst[i]);\r
-       }       \r
-       return sText;\r
-}\r
-\r
-function _textToHtml_nonbsp(sText)\r
-{\r
-       if(sText==null) return null;\r
-       var sHTML=sText;\r
-       for(var i=0;i<sReplaceStringsSrc.length-1;i++)\r
-       {\r
-               var re=new RegExp(sReplaceStringsDst[i],"g");\r
-               sHTML=sHTML.replace(re,sReplaceStringsSrc[i]);\r
-       }       \r
-       return sHTML;\r
-}\r
-\r
-function _textToHtml(sText)\r
-{\r
-       if(sText==null) return null;\r
-       var sHTML=sText;\r
-       for(var i=0;i<sReplaceStringsSrc.length;i++)\r
-       {\r
-               var re=new RegExp(sReplaceStringsDst[i],"g");\r
-               sHTML=sHTML.replace(re,sReplaceStringsSrc[i]);\r
-       }       \r
-       return sHTML;\r
-}\r
-\r
-\r
-function getInnerText(obj)\r
-{\r
-       var renbsp2sp=new RegExp("\xa0","g");\r
-       if(obj.innerText)\r
-       {\r
-               var sText=obj.innerText;\r
-               sText=sText.replace(renbsp2sp," ");\r
-               return sText;\r
-       }\r
-       else\r
-       {\r
-               if(obj.nodeValue)\r
-               {\r
-                       var sValue=obj.nodeValue;\r
-                       sValue=sValue.replace(renbsp2sp," ");\r
-                       return sValue;\r
-               }\r
-               else\r
-               {\r
-                       var sText="";\r
-                       var oChild=obj.firstChild;\r
-                       while(oChild!=null)\r
-                       {\r
-                               sText+=getInnerText(oChild);\r
-                               oChild=oChild.nextSibling;\r
-                       }\r
-                       return sText;\r
-               }\r
-       }\r
-               \r
-}\r
-\r
-function HighLightElement(obj,sHighLightColor,sNormalColor)\r
-{\r
-       if(obj!=null)\r
-       {\r
-               resetHighLight(sNormalColor);\r
-               if (obj.style)\r
-                       obj.style.backgroundColor=sHighLightColor;\r
-               goHighLighted=obj;\r
-       }\r
-}\r
-\r
-function resetHighLight(sNormalColor)\r
-{\r
-       if(goHighLighted!=null)\r
-       {\r
-               if (goHighLighted.style)\r
-                       goHighLighted.style.backgroundColor=sNormalColor;\r
-               goHighLighted=null;\r
-       }\r
-}\r
-\r
-function whFont(sName,sSize,sColor,sStyle,sWeight,sDecoration)\r
-{\r
-       this.sName=sName;\r
-       this.sSize=sSize;\r
-       this.sColor=sColor;\r
-       this.sStyle=sStyle;\r
-       this.sWeight=sWeight;\r
-       this.sDecoration=sDecoration;\r
-}\r
-\r
-function getFontStyle(oFont)\r
-{\r
-       var sStyle="";\r
-       if(oFont)\r
-       {\r
-               sStyle+="font-family:"+oFont.sName+";";\r
-               if(gbMac)\r
-               {\r
-                       var nSize=parseInt(oFont.sSize);\r
-                       if(gbIE5)\r
-                               nSize+=2;\r
-                       else\r
-                               nSize+=4;\r
-                       sStyle+="font-size:"+nSize+"pt;";\r
-               }\r
-               else\r
-                       sStyle+="font-size:"+oFont.sSize+";";\r
-                       \r
-               sStyle+="font-style:"+oFont.sStyle+";";\r
-               sStyle+="font-weight:"+oFont.sWeight+";";\r
-               sStyle+="text-decoration:"+oFont.sDecoration+";";\r
-               sStyle+="color:"+oFont.sColor+";";\r
-       }\r
-       return sStyle;\r
-}\r
-\r
-function _browserStringToText(sBStr)\r
-{\r
-       var sText="";\r
-       // change %xxx back to the real char.\r
-       var nPos=sBStr.indexOf('%');\r
-       while(nPos!=-1)\r
-       {\r
-               sText+=sBStr.substring(0,nPos);\r
-               sBStr=sBStr.substring(nPos+1);\r
-               var sNum="";\r
-               var i=0;\r
-               while(sBStr.charAt(i)>='0'&&sBStr.charAt(i)<='9')\r
-               {\r
-                       sNum+=sBStr.charAt(i++);        \r
-               }\r
-               if(sNum!=""){\r
-                       var nNum=parseInt(sNum,16);\r
-                       sText+=String.fromCharCode(nNum);\r
-                       sBStr=sBStr.substring(i);\r
-               }\r
-               nPos=sBStr.indexOf('%');\r
-       }\r
-       sText+=sBStr;\r
-       return sText;\r
-}\r
-\r
-function excapeSingleQuotandSlash(str)\r
-{\r
-       if(str==null) return null;\r
-       var nPos=0;\r
-       var sRes="";\r
-       var nPosNew=str.indexOf("\\",nPos);\r
-       while(nPosNew!=-1){\r
-               sRes+=str.substring(nPos,nPosNew+1)+"\\";\r
-               nPos=nPosNew+1;\r
-               nPosNew=str.indexOf("\\",nPos);\r
-       }\r
-       if(nPos<str.length)\r
-               sRes+=str.substring(nPos);\r
-       var re=new RegExp("'","g");\r
-       sRes=sRes.replace(re,"\\'");\r
-       return sRes;\r
-}\r
-\r
-var gbWhUtil=true;
\ No newline at end of file
diff --git a/doc/salome/gui/GUI/whver.js b/doc/salome/gui/GUI/whver.js
deleted file mode 100755 (executable)
index ff59763..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-//     WebHelp 5.10.006\r
-var gbNav=false;\r
-var gbNav6=false;\r
-var gbNav61=false;\r
-var gbNav7=false;\r
-var gbNav4=false;\r
-var gbIE4=false;\r
-var gbIE=false;\r
-var gbIE5=false;\r
-var gbIE55=false;\r
-var gbOpera6=false;\r
-var gbOpera7=false;\r
-var gbKonqueror3=false;\r
-\r
-var gAgent=navigator.userAgent.toLowerCase();\r
-var gbMac=(gAgent.indexOf("mac")!=-1);\r
-var gbSunOS=(gAgent.indexOf("sunos")!=-1);\r
-var gbOpera=(gAgent.indexOf("opera")!=-1);\r
-var gbKonqueror=(gAgent.indexOf("konqueror")!= -1);\r
-var gbSafari=(gAgent.indexOf("safari")!= -1);\r
-var gbWindows=((gAgent.indexOf('win')!= -1)||(gAgent.indexOf('16bit')!= -1));\r
-var gbMozilla=((gAgent.indexOf('gecko')!=-1) && (gAgent.indexOf('netscape')==-1));\r
-\r
-\r
-var gVersion=navigator.appVersion.toLowerCase();\r
-\r
-var gnVerMajor=parseInt(gVersion);\r
-var gnVerMinor=parseFloat(gVersion);\r
-\r
-if(!gbOpera&&!gbKonqueror&&!gbSafari) // opera can mimic IE or Netscape by settings.\r
-{\r
-       gbIE=(navigator.appName.indexOf("Microsoft")!=-1);\r
-       gbNav=(gAgent.indexOf('mozilla')!=-1) && ((gAgent.indexOf('spoofer')==-1) && (gAgent.indexOf('compatible')==-1));\r
-       if(gnVerMajor>=4)\r
-       {\r
-               if(navigator.appName=="Netscape")\r
-               {\r
-                       gbNav4=true;\r
-                       if(gnVerMajor>=5)\r
-                               gbNav6=true;\r
-               }\r
-               gbIE4=(navigator.appName.indexOf("Microsoft")!=-1);\r
-       }\r
-       if(gbNav6)\r
-       {\r
-               var nPos=gAgent.indexOf("gecko");\r
-               if(nPos!=-1)\r
-               {\r
-                       var nPos2=gAgent.indexOf("/", nPos);\r
-                       if(nPos2!=-1)\r
-                       {\r
-                               var nVersion=parseFloat(gAgent.substring(nPos2+1));\r
-                               if(nVersion>=20010726)\r
-                               {\r
-                                       gbNav61=true;\r
-                                       if (nVersion>=20020823)\r
-                                               gbNav7=true;\r
-                               }\r
-                       }\r
-               }\r
-       }else if(gbIE4)\r
-       {\r
-               var nPos=gAgent.indexOf("msie");\r
-               if(nPos!=-1)\r
-               {\r
-                       var nVersion=parseFloat(gAgent.substring(nPos+5));\r
-                       if(nVersion>=5)\r
-                       {\r
-                               gbIE5=true;\r
-                               if(nVersion>=5.5)\r
-                                       gbIE55=true;\r
-                       }\r
-               }\r
-       }\r
-}\r
-else if (gbOpera)\r
-{\r
-       var nPos = gAgent.indexOf("opera");\r
-       if(nPos!=-1)\r
-       {\r
-               var nVersion=parseFloat(gAgent.substring(nPos+6));\r
-               if(nVersion>=6)\r
-               {\r
-                       gbOpera6=true;\r
-                       if(nVersion>=7)\r
-                               gbOpera7=true;\r
-               }\r
-       }\r
-}\r
-else if (gbKonqueror)\r
-{\r
-       var nPos = gAgent.indexOf("konqueror");\r
-       if(nPos!=-1)\r
-       {\r
-               var nVersion = parseFloat(gAgent.substring(nPos+10));\r
-               if (nVersion >= 3)\r
-               {\r
-                       gbKonqueror3=true;\r
-               }\r
-       }\r
-}\r
-\r
-var gbWhVer=true;
\ No newline at end of file
index 8471928bef5c3e65efb045022b977507e7e818b9..d3e5b808fc495b9f48113558c5d6183e5ae5c5bd 100644 (file)
@@ -24,15 +24,19 @@ include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 EXTRA_DIST+=GUI
 
+doxygen=@DOXYGEN@
+
 usr_docs:
-       cp -fr $(srcdir)/GUI ./
-       -find $(PWD) -name CVS -prune -exec rm -rf {} \;
+       cd ./GUI; \
+       echo "Running doxygen in directory: "`pwd`; \
+       $(doxygen) ./doxyfile;
 
 docs: usr_docs
 
 clean-local:
-       rm -fr `ls | grep -v "Makefile"`
-       rm -fr GUI
+       cd ./GUI; \
+       rm -fr `ls | grep -v "doxyfile"`
+       rm -fr `ls | grep -vE "Makefile|GUI"`
 
 install-data-local: usr_docs
        mkdir -p $(docdir)/gui
@@ -41,3 +45,9 @@ install-data-local: usr_docs
 
 uninstall-local:
        rm -rf $(docdir)/gui/GUI
+
+docguidir=$(docdir)/gui/GUI
+
+nodist_docgui_DATA= GUI/doxyfile
+GUI/doxyfile: GUI/doxyfile.in
+EXTRA_DIST+= GUI/doxyfile.in
index d0b26bbcef5421eca7111f7acdfc51dedb3be53c..fd092e676d0823ce8d5f28d482aa36764de55a86 100644 (file)
@@ -28,14 +28,14 @@ dev_docs:
        cp -fr $(srcdir)/GUI ./INPUT; \
        cp -f ./GUI/doxyfile ./INPUT; \
        cd INPUT; \
-       sed 's|../../../share/salome|$(root_srcdir)|' ./doxyfile > ./doxyfile1; \
+       sed 's|../../../share/salome|$(top_srcdir)|' ./doxyfile > ./doxyfile1; \
        sed 's|../../build/salome|$(top_builddir)|' ./doxyfile1 > ./doxyfile2; \
        mv -f doxyfile2 doxyfile1; \
        echo "DOXYGEN SUPPORT PYTHON - @DOXYGEN_WITH_PYTHON@"; \
        if( test "x@DOXYGEN_WITH_PYTHON@" = "xyes"); then \
          sed 's|python_extension_must_be_here|*.py|' ./doxyfile1 > ./doxyfile2; \
          mv -f doxyfile2 doxyfile1; \
-         $(doxygen) -u ./doxyfile1; \
+         $(DOXYGEN) -u ./doxyfile1; \
        else \
          sed 's|python_extension_must_be_here||' ./doxyfile1 > ./doxyfile2; \
          mv -f doxyfile2 doxyfile1; \
@@ -46,9 +46,9 @@ dev_docs:
        fi; \
        mv -f doxyfile1 doxyfile; \
        echo "Running doxygen in directory:"`pwd`; \
-       $(doxygen) ./doxyfile; \
+       $(DOXYGEN) ./doxyfile; \
        cd ../; \
-       cp -fr $(srcdir)/GUI/sources/ GUI ; \
+       cp -fr $(srcdir)/GUI/sources/ GUI/ ; \
        rm -fr INPUT
 
 doctuidir=$(docdir)/tui/GUI
diff --git a/src/CASCatch/CASCatch.hxx b/src/CASCatch/CASCatch.hxx
new file mode 100644 (file)
index 0000000..c988ba6
--- /dev/null
@@ -0,0 +1,58 @@
+// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File   : CASCatch.hxx
+// Author : Sergey RUIN, Open CASCADE S.A.S (sergey.ruin@opencascade.com)
+//
+
+#ifndef CASCATCH_HXX
+#define CASCATCH_HXX
+
+#include <Standard_Failure.hxx>
+#include <Standard_ErrorHandler.hxx>
+
+
+#ifdef try
+#  undef try
+#endif
+
+#ifdef catch
+#  undef catch
+#endif
+
+#ifdef NO_CXX_EXCEPTION
+#  if defined(DO_ABORT)
+#    define CASCatch_TRY \
+       Standard_ErrorHandler _Function; \
+       K_SETJMP = 1 ; \
+       if(DoesNotAbort(_Function))
+#   else  // ! DO_ABORT
+#     define CASCatch_TRY \
+        Standard_ErrorHandler _Function; \
+        if(DoesNotAbort(_Function))
+#   endif // DO_ABORT
+#   define CASCatch_CATCH(Error)   \
+      else if(_Function.Catches(STANDARD_TYPE(Error)))
+#else  // ! NO_CXX_EXCEPTION
+#  define CASCatch_TRY try
+#  define CASCatch_CATCH catch
+#endif // NO_CXX_EXCEPTION
+
+
+#endif // CASCATCH_HXX
diff --git a/src/CASCatch/CASCatch_CatchSignals.cxx b/src/CASCatch/CASCatch_CatchSignals.cxx
new file mode 100644 (file)
index 0000000..b15d530
--- /dev/null
@@ -0,0 +1,337 @@
+// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File   : CASCatch_CatchSignals.cxx
+// Author : Sergey RUIN, Open CASCADE S.A.S (sergey.ruin@opencascade.com)
+//
+
+#include "CASCatch_CatchSignals.hxx"
+
+#include "CASCatch_Failure.hxx"  
+#include "CASCatch_ErrorHandler.hxx"
+#include <TCollection_AsciiString.hxx>
+
+#define MAX_HANDLER_NUMBER 6
+
+
+//================================================================================
+/*! Public -
+ * \brief creates a CASCatch_CatchSignals
+ */
+//================================================================================ 
+CASCatch_CatchSignals::CASCatch_CatchSignals() 
+     :myIsActivated(Standard_False)
+{
+
+  Standard_Integer i = 0;
+  for(; i<=MAX_HANDLER_NUMBER; i++)
+    mySigStates[i] = NULL;
+}
+
+#ifndef WNT
+
+//================================ UNIX part ==================================================
+
+#include <OSD.hxx>
+#include <OSD_WhoAmI.hxx>
+#include <OSD_SIGHUP.hxx>
+#include <OSD_SIGINT.hxx>
+#include <OSD_SIGQUIT.hxx>
+#include <OSD_SIGILL.hxx>
+#include <OSD_SIGKILL.hxx>
+#include <OSD_SIGBUS.hxx>
+#include <OSD_SIGSEGV.hxx>
+#include <OSD_SIGSYS.hxx>
+#ifndef LIN
+#include <exception.h>
+#endif
+
+//==============================
+typedef void (ACT_SIGIO_HANDLER)(void) ;
+
+ACT_SIGIO_HANDLER *ADR_ACT_SIGIO_HANDLER = NULL ;
+
+typedef void (* SIG_PFV) (int);
+
+#ifdef SUN
+# include <floatingpoint.h>
+#endif
+
+#ifdef SOLARIS
+# include <floatingpoint.h>
+# include <sys/machsig.h>
+# include <stdlib.h>
+# include <stdio.h>
+#endif
+
+#include <signal.h>
+#include <sys/signal.h>
+
+#ifdef LIN
+# include <stdlib.h>
+# include <stdio.h>
+#else
+# ifdef SA_SIGINFO 
+#   ifndef AIX
+# include <sys/siginfo.h>
+#    endif
+# endif
+#endif
+
+
+#ifdef IRIX
+# include <sigfpe.h>
+# include <sys/siginfo.h>
+#endif 
+
+
+//================================================================================
+/*! Private -
+ * \brief universal handler for signals
+ */
+//================================================================================ 
+static void Handler(const OSD_Signals theSig, const OSD_Signals)
+{
+  sigset_t set;
+  sigemptyset(&set);
+  sigaddset(&set, theSig);
+  sigprocmask(SIG_UNBLOCK, &set, NULL) ;
+
+  TCollection_AsciiString aMessage(theSig);  
+  aMessage+=" signal detected";
+  CASCatch_Failure::Raise(aMessage.ToCString());
+}
+
+
+#ifdef SA_SIGINFO
+//================================================================================
+/*! Private -
+ * \brief  handler for SIGSEGV signal
+ */
+//================================================================================ 
+static void SegvHandler(const OSD_Signals, const Standard_Address, const Standard_Address)
+{
+  sigset_t set;
+  sigemptyset(&set);
+  sigaddset(&set, SIGSEGV);
+  sigprocmask (SIG_UNBLOCK, &set, NULL); 
+
+  CASCatch_Failure::Raise("SIGSEGV detected");
+}
+#endif
+
+
+//================================================================================
+/*! Public -
+ * \brief activates a signals handling
+ */
+//================================================================================ 
+void CASCatch_CatchSignals::Activate() 
+{  
+  if(myIsActivated) return;
+
+  struct sigaction act;
+
+  Standard_Integer i = 0;
+  for(; i<=MAX_HANDLER_NUMBER; i++)  
+    mySigStates[i] = new struct sigaction(); //Initialize structures
+
+  int stat;
+  act.sa_handler =  (SIG_PFV) &Handler ;
+  sigemptyset(&act.sa_mask) ;
+
+
+  stat = sigaction(SIGHUP,&act,(struct sigaction*)mySigStates[0]);    // ...... hangup
+  stat = sigaction(SIGFPE,&act,(struct sigaction*) mySigStates[1]);   // ...... floating point exception
+  stat = sigaction(SIGINT,&act,(struct sigaction*)mySigStates[2]);   // ...... interrupt
+  stat = sigaction(SIGQUIT,&act,(struct sigaction*)mySigStates[3]);  // ...... quit
+  stat = sigaction(SIGBUS,&act,(struct sigaction*)mySigStates[4]);   // ...... bus error
+  stat = sigaction(SIGILL,&act,(struct sigaction*)mySigStates[5]);   // ...... illegal instruction
+
+#ifdef SA_RESTART
+  act.sa_flags   = SA_RESTART ;
+#else
+  act.sa_flags   = 0 ;
+#endif
+  act.sa_handler = (SIG_PFV) &SegvHandler ;
+
+#ifdef SA_SIGINFO      // OSF,SOLARIS,IRIX
+  act.sa_flags = act.sa_flags | SA_SIGINFO ;
+# ifdef SOLARIS
+  act.sa_sigaction = (void(*)(int, siginfo_t *, void*)) &SegvHandler ;
+# endif
+#endif
+
+  stat = sigaction( SIGSEGV , &act , (struct sigaction*)mySigStates[6]);    // ...... segmentation violation
+
+  myIsActivated = Standard_True;
+}
+
+
+//================================================================================
+/*! Public -
+ * \brief deactivates a signals handling
+ */
+//================================================================================
+void CASCatch_CatchSignals::Deactivate() 
+{
+  if(!myIsActivated) return;
+
+  struct sigaction oact;
+  int stat;
+
+  stat = sigaction(SIGHUP,(struct sigaction*)mySigStates[0],&oact);   // ...... hangup
+  stat = sigaction(SIGFPE,(struct sigaction*)mySigStates[1],&oact);   // ...... floating point exception
+  stat = sigaction(SIGINT,(struct sigaction*)mySigStates[2],&oact);   // ...... interrupt
+  stat = sigaction(SIGQUIT,(struct sigaction*)mySigStates[3],&oact);  // ...... quit
+  stat = sigaction(SIGBUS,(struct sigaction*)mySigStates[4],&oact);   // ...... bus error
+  stat = sigaction(SIGILL,(struct sigaction*)mySigStates[5],&oact);   // ...... illegal instruction
+  stat = sigaction(SIGSEGV,(struct sigaction*)mySigStates[6],&oact);  // ...... segmentation violation
+
+
+  Standard_Integer i = 0;
+  for(; i<=MAX_HANDLER_NUMBER; i++)
+    delete (struct sigaction*)mySigStates[i];
+
+  myIsActivated = Standard_False;
+}
+
+
+
+#else
+//====================================== WNT part ====================================================
+#include <OSD_WNT_1.hxx>
+
+#include <process.h>
+#include <signal.h>
+#include <float.h>
+
+#define _OSD_FPX ( _EM_DENORMAL | _EM_INEXACT | _EM_UNDERFLOW | _EM_ZERODIVIDE | _EM_OVERFLOW) //Mask these exceptions
+
+//================================================================================
+/*! Private -
+ * \brief handler for unexpected exceptions
+ */
+//================================================================================
+static Standard_Integer WntHandler(const Standard_Address theExceptionInfo) 
+{
+  LPEXCEPTION_POINTERS lpXP = ( LPEXCEPTION_POINTERS )theExceptionInfo;
+  DWORD                dwExceptionCode = lpXP -> ExceptionRecord -> ExceptionCode;
+
+  TCollection_AsciiString aMessage((Standard_Integer)dwExceptionCode);  
+  aMessage+=" Exception code - unexpected exception";
+
+  CASCatch_Failure::Raise(aMessage.ToCString());
+
+  return EXCEPTION_EXECUTE_HANDLER;
+}
+
+void SIGWntHandler(int , int ) ;
+static void (*SIGWNTHANDLER)(int) = ( void (*)(int) ) ( &SIGWntHandler ) ;
+
+
+//================================================================================
+/*! Private -
+ * \brief handler for signals
+ */
+//================================================================================
+static void SIGWntHandler(const int signum , const int theCode)
+{
+
+  void (*OLDSIGWNTHANDLER)(int) ;  
+  switch( signum ) { 
+  case SIGFPE : 
+    _fpreset() ;
+    _clearfp() ; 
+    _controlfp ( _OSD_FPX, _MCW_EM ); 
+    OLDSIGWNTHANDLER = signal( signum , SIGWNTHANDLER ); 
+
+    if(theCode == _FPE_UNDERFLOW || theCode == _FPE_INEXACT) return;
+    CASCatch_Failure::Raise ("Floating point error"); 
+    break;
+  case SIGSEGV : 
+    OLDSIGWNTHANDLER = signal( signum , SIGWNTHANDLER );
+    CASCatch_Failure::Raise("Access violation"); 
+    break; 
+  case SIGILL : 
+    OLDSIGWNTHANDLER = signal( signum , SIGWNTHANDLER );
+    CASCatch_Failure::Raise("Illegal instruction" ); 
+    break; 
+  }
+}
+
+
+//================================================================================
+/*! Public -
+ * \brief activates a signals handling
+ */
+//================================================================================ 
+void CASCatch_CatchSignals::Activate() 
+{
+  if(myIsActivated) return;
+
+  mySigStates[0] = SetUnhandledExceptionFilter (( LPTOP_LEVEL_EXCEPTION_FILTER )&WntHandler);
+
+  myFloatOpWord = _controlfp(0, 0);
+  _controlfp ( _OSD_FPX, _MCW_EM );  //Enable floating point exceptions
+
+  mySigStates[1] = signal( SIGSEGV , SIGWNTHANDLER );
+  mySigStates[2] = signal( SIGFPE , SIGWNTHANDLER );
+  mySigStates[3] = signal( SIGILL , SIGWNTHANDLER );
+
+  myIsActivated = Standard_True;
+}
+
+//================================================================================
+/*! Public -
+ * \brief deactivates a signals handling
+ */
+//================================================================================
+void CASCatch_CatchSignals::Deactivate() 
+{
+  if(!myIsActivated) return;
+
+  SetUnhandledExceptionFilter (( LPTOP_LEVEL_EXCEPTION_FILTER )mySigStates[0]);
+
+  _controlfp ( myFloatOpWord, _MCW_EM );
+
+  signal( SIGSEGV ,  ( void (*)(int) )mySigStates[1]);
+  signal( SIGFPE , ( void (*)(int) )mySigStates[2]);
+  signal( SIGILL , ( void (*)(int) )mySigStates[3]);
+
+  Standard_Integer i = 0;
+  for(; i<=MAX_HANDLER_NUMBER; i++)
+    mySigStates[i] = NULL;
+  
+  myIsActivated = Standard_False;
+}
+
+#endif
+
+//================================================================================
+/*! Private -
+ * \brief deactivates a signals handling
+ */
+//================================================================================
+void CASCatch_CatchSignals::Destroy() 
+{
+  if(myIsActivated) Deactivate();
+}
+
diff --git a/src/CASCatch/CASCatch_CatchSignals.hxx b/src/CASCatch/CASCatch_CatchSignals.hxx
new file mode 100644 (file)
index 0000000..126cace
--- /dev/null
@@ -0,0 +1,66 @@
+// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File   : CASCatch_CatchSignals.hxx
+// Author : Sergey RUIN, Open CASCADE S.A.S (sergey.ruin@opencascade.com)
+//
+
+#ifndef CASCATCH_CATCHSIGNALS_HXX
+#define CASCATCH_CATCHSIGNALS_HXX
+
+#include <Standard.hxx>
+
+/*!
+ * \class CASCatch_CatchSignals
+ * \brief This class controls an exception handling
+ *
+ */ 
+class CASCatch_CatchSignals  {
+
+public:
+
+ // Methods PUBLIC
+ // 
+Standard_EXPORT CASCatch_CatchSignals();
+Standard_EXPORT void Destroy() ;
+~CASCatch_CatchSignals() { Destroy(); }
+Standard_EXPORT void Activate() ;
+Standard_EXPORT void Deactivate() ;
+
+private:
+
+/*!\var mySigStates[7], private
+ * \brief stores signals' handler functions
+ */ 
+Standard_Address mySigStates[7];
+
+/*!\var myFloatOpWord
+ * \brief stores a float operation word, private
+ */ 
+Standard_Integer myFloatOpWord;
+
+/*!\var myIsActivated
+ * \brief stores a flag whether a catcher is activated, private]
+ */
+Standard_Boolean myIsActivated;
+
+};
+
+
+#endif // CASCATCH_CATCHSIGNALS_HXX
diff --git a/src/CASCatch/CASCatch_ErrorHandler.cxx b/src/CASCatch/CASCatch_ErrorHandler.cxx
new file mode 100644 (file)
index 0000000..e9c8a1b
--- /dev/null
@@ -0,0 +1,125 @@
+// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File   : CASCatch_ErrorHandler.cxx
+// Author : Sergey RUIN, Open CASCADE S.A.S (sergey.ruin@opencascade.com)
+//
+
+#ifdef NO_CXX_EXCEPTION
+
+#include "CASCatch_ErrorHandler.hxx"
+
+// During setjmp()/longjmp() K_SETJMP_CASCatch is non zero (try)
+// So if there is an abort request and if K_SETJMP_CASCatch is non zero, the abort
+// request will be ignored. If the abort request do a raise during a setjmp
+// or a longjmp, there will be a "terminating SEGV" impossible to handle.
+
+
+Standard_EXPORT int K_SETJMP_CASCatch = 0 ; 
+
+static Handle(CASCatch_Failure) GlbError;  //Last caught Error, Null if there is no error
+
+static CASCatch_ErrorHandler*   Top = 0;   //The top of the Errors Stack
+
+//=======================================================================
+//function : CASCatch_ErrorHandler
+//purpose  : Constructor
+//=======================================================================
+CASCatch_ErrorHandler::CASCatch_ErrorHandler ()
+{
+  Previous = Top;
+  Top      = this;
+  CaughtError.Nullify();
+  GlbError.Nullify();
+}
+
+//=======================================================================
+//function : ~CASCatch_ErrorHandler
+//purpose  : Destructor : Delete the ErrorHandler and Abort if there is a 'Error'.
+//=======================================================================
+CASCatch_ErrorHandler::~CASCatch_ErrorHandler()
+{
+  Top = Top->Previous;
+  if( !GlbError.IsNull() ) Abort();
+}
+
+//=======================================================================
+//function : Abort: make a longjmp to the saved Context.
+//purpose  : Abort if there is a non null 'Error'
+//=======================================================================
+void CASCatch_ErrorHandler::Abort ()
+{
+  //==== Check if can do the "longjmp" =======================================
+  if(Top == NULL || Top->Label == NULL) {
+    cout << "*** Abort *** an exception was raised, but no catch was found." << endl;
+    cout << "\t... The exception is:" << GlbError;
+    exit(1);
+  }
+
+#ifdef DO_ABORT
+  if ( K_SETJMP_CASCatch )
+    cout << "Recursive abort ===> Terminating SEGV ..." << endl ;
+  K_SETJMP_CASCatch = 1 ;
+#endif
+
+  longjmp(Top->Label, Standard_True);
+}
+
+//=======================================================================
+//function : Catches
+//purpose  : If there is a 'Error', and it is in good type 
+//           returns True and clean 'Error', else returns False.
+//=======================================================================
+Standard_Boolean CASCatch_ErrorHandler::Catches 
+  (const Handle(Standard_Type)& AType) 
+{
+#ifdef DO_ABORT
+  K_SETJMP_CASCatch = 0 ;
+#endif
+  if(GlbError.IsNull())
+    return Standard_False;
+
+  if(GlbError->IsKind(AType)){
+    CaughtError = GlbError;
+    GlbError.Nullify();
+    return Standard_True;
+  } else {
+    return Standard_False;
+  }
+}
+
+//=======================================================================
+//function : LastCaughtError
+//purpose  : 
+//=======================================================================
+Handle(CASCatch_Failure) CASCatch_ErrorHandler::LastCaughtError()
+{
+  return Top->CaughtError;
+}
+
+//=======================================================================
+//function : Error
+//purpose  : 
+//=======================================================================
+void CASCatch_ErrorHandler::Error(const Handle(CASCatch_Failure)& aError)
+{
+  GlbError = aError;
+}
+
+#endif
diff --git a/src/CASCatch/CASCatch_ErrorHandler.hxx b/src/CASCatch/CASCatch_ErrorHandler.hxx
new file mode 100644 (file)
index 0000000..fefec1e
--- /dev/null
@@ -0,0 +1,95 @@
+// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File   : CASCatch_ErrorHandler.hxx
+// Author : Sergey RUIN, Open CASCADE S.A.S (sergey.ruin@opencascade.com)
+//
+
+#ifndef CASCATCH_ERRORHANDLER_HXX
+#define CASCATCH_ERRORHANDLER_HXX
+
+#include "CASCatch_Failure.hxx"
+
+#include <stdlib.h>
+#include <setjmp.h>
+
+
+extern int K_SETJMP_CASCatch ;
+
+/*!
+ * \class CASCatch_ErrorHandler
+ * \brief This class is an exception handler, private
+ *
+ */ 
+class CASCatch_ErrorHandler 
+{
+  friend class  CASCatch_Failure;     // To execute the raise exception.
+
+ public:
+ Standard_EXPORT CASCatch_ErrorHandler();
+ Standard_EXPORT ~CASCatch_ErrorHandler();
+ Standard_EXPORT Standard_Boolean Catches (const Handle(Standard_Type)&);
+
+ private:
+  Standard_EXPORT static  void Abort();
+  Standard_EXPORT static  void Error(const Handle(CASCatch_Failure)&);
+  Standard_EXPORT static  Handle(CASCatch_Failure)  LastCaughtError();
+
+ //==== The fields ===========================================================
+ private:
+           CASCatch_ErrorHandler*   Previous;
+           Handle(CASCatch_Failure) CaughtError;
+
+ public:
+  jmp_buf      Label;
+
+};
+
+#undef CASCatch_TRY
+#define CASCatch_TRY try
+
+#undef CASCatch_CATCH
+#define CASCatch_CATCH catch
+
+
+#ifdef NO_CXX_EXCEPTION
+# undef CASCatch_TRY
+# undef CASCatch_CATCH
+
+# if defined(DO_ABORT)
+  
+#  define DoesNotAbort_CASCatch(aHandler) !(K_SETJMP_CASCatch = setjmp(aHandler.Label))
+
+#  define CASCatch_TRY        CASCatch_ErrorHandler _Function; \
+                                K_SETJMP_CASCatch = 1 ; \
+                                if(DoesNotAbort_CASCatch(_Function))
+
+# else  // ! DO_ABORT
+#  define DoesNotAbort_CASCatch(aHandler) !setjmp(aHandler.Label)
+
+#  define CASCatch_TRY      CASCatch_ErrorHandler _Function; \
+                              if(DoesNotAbort_CASCatch(_Function))
+# endif // DO_ABORT
+
+
+# define CASCatch_CATCH(Error)   else if(_Function.Catches(STANDARD_TYPE(Error)))
+#endif  // NO_CXX_EXCEPTION
+
+#endif  // CASCATCH_ERRORHANDLER_HXX
diff --git a/src/CASCatch/CASCatch_Failure.cxx b/src/CASCatch/CASCatch_Failure.cxx
new file mode 100644 (file)
index 0000000..54eb73b
--- /dev/null
@@ -0,0 +1,130 @@
+// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File   : CASCatch_Failure.cxx
+// Author : Sergey RUIN, Open CASCADE S.A.S (sergey.ruin@opencascade.com)
+//
+
+#include "CASCatch_Failure.hxx"
+#include "CASCatch_ErrorHandler.hxx"
+#include <Standard_TypeMismatch.hxx>
+#include <Standard_Type.hxx>
+#include <string.h>
+
+IMPLEMENT_STANDARD_HANDLE( CASCatch_Failure, Standard_Transient )
+IMPLEMENT_STANDARD_RTTIEXT( CASCatch_Failure, Standard_Transient ) 
+
+
+#ifndef NO_CXX_EXCEPTION
+static Handle(CASCatch_Failure) RaisedError;
+#endif
+
+//================================================================================
+/*! Public -
+ * \brief creates a CASCatch_Failure
+ */
+//================================================================================ 
+CASCatch_Failure::CASCatch_Failure () { myMessage = "Signal detected";}
+
+
+//================================================================================
+/*! Public -
+ * \brief creates a CASCatch_Failure with a message
+ * \param an exception message
+ */
+//================================================================================ 
+CASCatch_Failure::CASCatch_Failure (const Standard_CString AString) 
+{
+  if(AString) {
+     myMessage = new Standard_Character[strlen(AString) + 1];
+     strcpy(myMessage,AString);
+  }
+}
+
+//================================================================================
+/*! Public -
+ * \brief returns the last caught exception
+ */
+//================================================================================ 
+Handle(CASCatch_Failure) CASCatch_Failure::Caught() 
+{
+#ifdef NO_CXX_EXCEPTION
+  return CASCatch_ErrorHandler::LastCaughtError();
+#else
+  return RaisedError ;
+#endif
+}
+
+//================================================================================
+/*! Public -
+ * \brief raises a CASCatch_Failure exception
+ * \param an exception message
+ */
+//================================================================================ 
+void CASCatch_Failure::Raise (const Standard_CString AString) 
+{ 
+  Handle(CASCatch_Failure) E = new CASCatch_Failure()  ;
+  E->Reraise (AString) ;
+}
+
+
+//================================================================================
+/*! Public -
+ * \brief re-raises a CASCatch_Failure exception
+ * \param an exception message
+ */
+//================================================================================
+void CASCatch_Failure::Reraise (const Standard_CString AString) 
+{
+  if(AString){
+    myMessage = new Standard_Character[strlen(AString) + 1];
+    strcpy(myMessage,AString);
+  }
+
+#ifdef NO_CXX_EXCEPTION
+  CASCatch_ErrorHandler::Error(this) ;
+  CASCatch_ErrorHandler::Abort();
+#else
+  RaisedError = this ;
+  Throw() ;
+#endif
+}
+
+//================================================================================
+/*! Public -
+ * \brief returns an exception message
+ */
+//================================================================================ 
+Standard_CString CASCatch_Failure::GetError() const
+{
+  return myMessage;
+}
+
+//================================================================================
+/*! Public -
+ * \brief Is called when using standard C++ exceptions
+ */
+//================================================================================ 
+void CASCatch_Failure::Throw() const
+{
+#ifndef NO_CXX_EXCEPTION
+  throw CASCatch_Failure() ;
+#endif
+}
+
diff --git a/src/CASCatch/CASCatch_Failure.hxx b/src/CASCatch/CASCatch_Failure.hxx
new file mode 100644 (file)
index 0000000..66e7dcd
--- /dev/null
@@ -0,0 +1,64 @@
+// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File   : CASCatch_Failure.hxx
+// Author : Sergey RUIN, Open CASCADE S.A.S (sergey.ruin@opencascade.com)
+//
+
+#ifndef CASCATCH_FAILURE_HXX
+#define CASCATCH_FAILURE_HXX
+
+#include <Standard_Transient.hxx>
+#include <Standard_DefineHandle.hxx>
+DEFINE_STANDARD_HANDLE( CASCatch_Failure, Standard_Transient )
+
+#include <Standard.hxx>
+
+/*!
+ * \class CASCatch_Failure
+ * \brief This class presents an exception to be thrown
+ *
+ */    
+class CASCatch_Failure :  public Standard_Transient
+{
+
+public:
+
+Standard_EXPORT CASCatch_Failure();
+Standard_EXPORT CASCatch_Failure(const Standard_CString aString);
+Standard_EXPORT void Reraise(const Standard_CString aMessage) ;
+Standard_EXPORT Standard_CString GetError() const;
+Standard_EXPORT static  Handle_CASCatch_Failure Caught() ;
+Standard_EXPORT static  void Raise(const Standard_CString aMessage = "") ;
+Standard_EXPORT virtual  void Throw() const;public:
+
+public:
+
+DEFINE_STANDARD_RTTI( CASCatch_Failure )  
+
+private: 
+/*!\var myMessage
+ * \brief stores an exception message
+ */   
+Standard_CString myMessage;
+
+};
+
+
+#endif // CASCATCH_FAILURE_HXX
diff --git a/src/CASCatch/Makefile.am b/src/CASCatch/Makefile.am
new file mode 100644 (file)
index 0000000..9800bfa
--- /dev/null
@@ -0,0 +1,41 @@
+# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
+#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either 
+# version 2.1 of the License.
+# 
+# This library is distributed in the hope that it will be useful 
+# but WITHOUT ANY WARRANTY; without even the implied warranty of 
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+# Lesser General Public License for more details.
+# 
+# You should have received a copy of the GNU Lesser General Public  
+# License along with this library; if not, write to the Free Software 
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+# 
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+# 
+# File   : Makefile.am
+# Author : Sergey RUIN, Open CASCADE S.A.S (sergey.ruin@opencascade.com)
+#
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+
+salomeinclude_HEADERS = CASCatch.hxx \
+                       CASCatch_CatchSignals.hxx \
+                       CASCatch_ErrorHandler.hxx \
+                       CASCatch_Failure.hxx
+
+lib_LTLIBRARIES         = libCASCatch.la
+libCASCatch_la_SOURCES  = \
+                       CASCatch_CatchSignals.cxx \
+                       CASCatch_ErrorHandler.cxx \
+                       CASCatch_Failure.cxx
+
+COMMON_CPPFLAGS = \
+       @CAS_CPPFLAGS@ @CAS_CXXFLAGS@
+
+libCASCatch_la_CPPFLAGS = $(COMMON_CPPFLAGS)
+libCASCatch_la_LIBADD = $(CAS_KERNEL)
index d9be2ca586e49f62eb0159cd97e52c3075efd107..af93f023e45a11d5d52faf71b4cc64ed58eb8705 100644 (file)
@@ -450,7 +450,7 @@ void LightApp_Application::createActions()
   int id = LightApp_Application::UserID + FIRST_HELP_ID;
   // help for KERNEL and GUI
   QString dir;//QByteArray dir;
-  QString aFileName = "index.htm";
+  QString aFileName = "index.html";
   QString root;
   QAction* a;
   dir = getenv("GUI_ROOT_DIR");
@@ -470,10 +470,9 @@ void LightApp_Application::createActions()
   }
   dir = getenv("KERNEL_ROOT_DIR");
   if ( !dir.isEmpty() ) {
-    QString aFN = "index.html";
     root = Qtx::addSlash( Qtx::addSlash(dir) + Qtx::addSlash("share") + Qtx::addSlash("doc") +
                          Qtx::addSlash("salome") );
-    if ( QFileInfo( root + aFN ).exists() ) {
+    if ( QFileInfo( root + aFileName ).exists() ) {
       a = createAction( id, tr( QString("KERNEL Help").toLatin1().constData() ),
                        resMgr->loadPixmap( "STD", tr( "ICON_HELP" ), false ),
                        tr( QString("KERNEL Help").toLatin1().constData() ),
@@ -906,13 +905,11 @@ public:
        aCommand += "#" + myContext;
 
       QProcess* proc = new QProcess();
-      //myStatus = system(aCommand);
 
-      //if(myStatus != 0)
       proc->start( aCommand );
       if ( proc->waitForStarted() ) {
        SALOME_CustomEvent* ce2000 = new SALOME_CustomEvent( 2000 );
-       QString* msg = new QString( QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").arg(myApp).arg(myHelpFile) );
+       QString* msg = new QString( QObject::tr( "EXTERNAL_BROWSER_CANNOT_SHOW_PAGE" ).arg( myApp, myHelpFile ) );
        ce2000->setData( msg );
        QApplication::postEvent( myLApp, ce2000 );
       }
@@ -936,15 +933,14 @@ void LightApp_Application::onHelpContentsModule()
   const QAction* obj = (QAction*) sender();
 
   QString aComponentName = obj->objectName();
-  QString aFileName = "index.htm";
-  QString aFileNameKernel = "index.html";
+  QString aFileName = "index.html";
 
   QString dir = getenv( (aComponentName + "_ROOT_DIR").toLatin1().constData() );
   QString homeDir = !aComponentName.compare(QString("KERNEL")) ?
     Qtx::addSlash( Qtx::addSlash(dir) + Qtx::addSlash("share") + Qtx::addSlash("doc") + Qtx::addSlash("salome") ) :
     Qtx::addSlash( Qtx::addSlash(dir) + Qtx::addSlash("share") + Qtx::addSlash("doc") + Qtx::addSlash("salome") + Qtx::addSlash("gui") +  Qtx::addSlash(aComponentName) );
 
-  QString helpFile = QFileInfo( homeDir + (!aComponentName.compare(QString("KERNEL")) ? aFileNameKernel : aFileName) ).absoluteFilePath();
+  QString helpFile = QFileInfo( homeDir + aFileName ).absoluteFilePath();
   SUIT_ResourceMgr* resMgr = resourceMgr();
        QString platform;
 #ifdef WIN32
@@ -2627,8 +2623,9 @@ bool LightApp_Application::isLibExists( const QString& moduleTitle ) const
   if ( !isLibFound )
     {
       printf( "****************************************************************\n" );
-      printf( "*    Warning: library %s cannot be found\n", moduleTitle.toLatin1().constData() );
+      printf( "*    Warning: library %s cannot be found\n", lib.toLatin1().constData() );
       printf( "*    Module will not be available\n" );
+      printf( "*    Module %s will not be available in GUI mode\n", moduleTitle.toLatin1().constData() );
       printf( "****************************************************************\n" );
     }
   else if ( !isPythonModule )
index f5e249aa1400766fe2e2695f8566d73a3fba2ab3..1b9e1cf2d8be1faf0b07756517edb1bb38dc750e 100644 (file)
@@ -99,8 +99,7 @@ public:
          PreferencesId, MRUId, ModulesListId, UserID };
 
 protected:
-  enum { NewStudyId = 1,
-        OpenStudyId };
+  enum { NewStudyId = 1, OpenStudyId };
 
 public:
   LightApp_Application();
index 37ba21580b585d5ae4ecd8ae7a8b840ae428cb6f..901ca9bd0b6e8269e0ba35e02f156b01ca74d9b3 100644 (file)
@@ -321,9 +321,9 @@ QtxPopupMgr* LightApp_Module::popupMgr()
     SUIT_Desktop* d = application()->desktop();
     
     QAction 
-      *disp = createAction( -1, tr( "TOP_DISPLAY" ), p, tr( "MEN_DISPLAY" ), tr( "STB_DISPLAY" ),
+      *disp = createAction( -1, tr( "TOP_SHOW" ), p, tr( "MEN_SHOW" ), tr( "STB_SHOW" ),
                            0, d, false, this, SLOT( onShowHide() ) ),
-      *erase = createAction( -1, tr( "TOP_ERASE" ), p, tr( "MEN_ERASE" ), tr( "STB_ERASE" ),
+      *erase = createAction( -1, tr( "TOP_HIDE" ), p, tr( "MEN_HIDE" ), tr( "STB_HIDE" ),
                             0, d, false, this, SLOT( onShowHide() ) ),
       *dispOnly = createAction( -1, tr( "TOP_DISPLAY_ONLY" ), p, tr( "MEN_DISPLAY_ONLY" ), tr( "STB_DISPLAY_ONLY" ),
                                0, d, false, this, SLOT( onShowHide() ) ),
index 29913715d6c47c634e075477d0b4eebdb17ac205..c0654025cbdad035f744c7271fe70d3f3dc5ad6f 100644 (file)
@@ -58,9 +58,10 @@ LightApp_Selection::LightApp_Selection( const QString& client, LightApp_Selectio
     while ( it.hasNext() )
     {
       SUIT_Selector* selector = it.next();
-      if( selector->type()!=client )
+      if( selector->type() != client && selector->isEnabled() )
       {
-       mgr->selected( cur_sel, selector->type() );
+       //mgr->selected( cur_sel, selector->type() );
+        selector->selected( cur_sel );
        SUIT_DataOwnerPtrList::const_iterator aLIt = cur_sel.begin(), aLLast = cur_sel.end();
        for( ; aLIt!=aLLast; aLIt++ )
          sel.append( *aLIt ); //check entry and don't append if such entry is in list already
index 3240a1abe8c819cd5272aa406851f8d97f3b2f44..c466bbe31886f27b9eb2b4b71e24f65f5f1097e9 100644 (file)
@@ -213,23 +213,26 @@ void LightApp_SelectionMgr::GetIndexes( const QString& theEntry, TColStd_Indexed
 /*!
   Add or remove interactive objects from selection manager.
 */
-bool LightApp_SelectionMgr::AddOrRemoveIndex( const Handle(SALOME_InteractiveObject)& IObject, 
-                                              const TColStd_MapOfInteger& theIndexes, 
-                                              bool modeShift)
+//bool LightApp_SelectionMgr::AddOrRemoveIndex( const Handle(SALOME_InteractiveObject)& IObject,
+void LightApp_SelectionMgr::AddOrRemoveIndex( const Handle(SALOME_InteractiveObject)& IObject,
+                                              const TColStd_MapOfInteger& theIndexes,
+                                              bool modeShift)
 {
   SUIT_DataOwnerPtrList remainsOwners;
   
   SUIT_DataOwnerPtrList aList;
   selected( aList );
-
+  
+  QString ioEntry (IObject->getEntry());
+  
   if ( !modeShift ) {
     for ( SUIT_DataOwnerPtrList::const_iterator itr = aList.begin(); itr != aList.end(); ++itr )
     {
       const LightApp_DataOwner* owner = dynamic_cast<const LightApp_DataOwner*>( (*itr).operator->() );
-      if ( owner ) 
+      if ( owner )
       {
-       if ( owner->entry() != QString(IObject->getEntry()) ) 
-       {         
+       if ( owner->entry() != ioEntry )
+       {
          const LightApp_DataSubOwner* subOwner = dynamic_cast<const LightApp_DataSubOwner*>( owner );
          if ( subOwner )
            remainsOwners.append( new LightApp_DataSubOwner( subOwner->entry(), subOwner->index() ) );
@@ -245,17 +248,17 @@ bool LightApp_SelectionMgr::AddOrRemoveIndex( const Handle(SALOME_InteractiveObj
   TColStd_MapIteratorOfMapOfInteger It;
   It.Initialize(theIndexes);
   for(;It.More();It.Next())
-    remainsOwners.append( new LightApp_DataSubOwner( QString(IObject->getEntry()), It.Key() ) );
+    remainsOwners.append( new LightApp_DataSubOwner( ioEntry, It.Key() ) );
   
   bool append = false;
   setSelected( remainsOwners, append );
 
   emit currentSelectionChanged();
 
-  TColStd_IndexedMapOfInteger anIndexes;
-  GetIndexes( IObject, anIndexes );
-  return !anIndexes.IsEmpty();
-
+  // Bug 17269: To avoid calling of selected(aList)
+  //TColStd_IndexedMapOfInteger anIndexes;
+  //GetIndexes( IObject, anIndexes );
+  //return !anIndexes.IsEmpty();
 }
 
 /*!
@@ -317,7 +320,8 @@ void LightApp_SelectionMgr::selectedSubOwners( MapEntryOfMapOfInteger& theMap )
 
   for ( SUIT_DataOwnerPtrList::const_iterator itr = aList.begin(); itr != aList.end(); ++itr )
   {
-    const LightApp_DataSubOwner* subOwner = dynamic_cast<const LightApp_DataSubOwner*>( (*itr).operator->() );
+    const LightApp_DataSubOwner* subOwner =
+      dynamic_cast<const LightApp_DataSubOwner*>( (*itr).operator->() );
     if ( subOwner ) 
     {
 #ifndef WNT
@@ -327,7 +331,17 @@ void LightApp_SelectionMgr::selectedSubOwners( MapEntryOfMapOfInteger& theMap )
 #endif
       {
        anIndexes.Clear();
-       GetIndexes( subOwner->entry(), anIndexes );
+       //Bug 17269: GetIndexes( subOwner->entry(), anIndexes );
+        //Bug 17269: To avoid multiple calling of selected(aList)
+        for ( SUIT_DataOwnerPtrList::const_iterator itr2 = itr; itr2 != aList.end(); ++itr2 )
+        {
+          const LightApp_DataSubOwner* subOwner2 =
+            dynamic_cast<const LightApp_DataSubOwner*>( (*itr2).operator->() );
+          if ( subOwner2 )
+            if ( subOwner2->entry() == subOwner->entry() )
+              anIndexes.Add( subOwner2->index() );
+        }
+        //
        theMap.Bind( subOwner->entry().toLatin1().data(), anIndexes );
       }
     }
index 26934b6d813825d11f08183788d2ce2510e5aed6..b1db5bfe4453adc49f70ac07b3138d29db4b0526 100644 (file)
@@ -64,7 +64,8 @@ public:
   void                   GetIndexes( const QString& theEntry, 
                                     TColStd_IndexedMapOfInteger& theIndex );
 
-  bool                   AddOrRemoveIndex( const Handle(SALOME_InteractiveObject)& IObject, 
+  //bool                   AddOrRemoveIndex( const Handle(SALOME_InteractiveObject)& IObject, 
+  void                   AddOrRemoveIndex( const Handle(SALOME_InteractiveObject)& IObject, 
                                           const TColStd_MapOfInteger& theIndices, 
                                           bool modeShift );
 
index aedc72d64ee28c76ddcbfeea887fd5eb5a57dbb0..6b945667370258096b8123082e14433c9400aedb 100644 (file)
@@ -7,7 +7,7 @@
     </message>
     <message>
         <source>ABOUT_COPYRIGHT</source>
-        <translation>Copyright (C) 2003-2006 OPEN CASCADE, EADS/CCR, LIP6,
+        <translation>Copyright (C) 2003-2008 OPEN CASCADE, EADS/CCR, LIP6,
 CEA/DEN, CEDRAT, EDF R&amp;D, LEG, PRINCIPIA R&amp;D, BUREAU VERITAS</translation>
     </message>
     <message>
@@ -199,6 +199,10 @@ CEA/DEN, CEDRAT, EDF R&amp;D, LEG, PRINCIPIA R&amp;D, BUREAU VERITAS</translatio
     </message>
     <message>
         <source>NEW_WINDOW_3</source>
+        <translation>&amp;QxGraph view</translation>
+    </message>
+    <message>
+        <source>NEW_WINDOW_4</source>
         <translation>VT&amp;K view</translation>
     </message>
     <message>
@@ -333,52 +337,52 @@ CEA/DEN, CEDRAT, EDF R&amp;D, LEG, PRINCIPIA R&amp;D, BUREAU VERITAS</translatio
 <context>
     <name>LightApp_Module</name>
     <message>
-        <source>MEN_ERASE</source>
-        <translation>Erase</translation>
+        <source>MEN_HIDE</source>
+        <translation>Hide</translation>
     </message>
     <message>
         <source>TOP_DISPLAY_ONLY</source>
-        <translation>Display only</translation>
+        <translation>Show only</translation>
     </message>
     <message>
         <source>STB_DISPLAY_ONLY</source>
-        <translation>Display only</translation>
+        <translation>Show only</translation>
     </message>
     <message>
         <source>MEN_DISPLAY_ONLY</source>
-        <translation>Display only</translation>
+        <translation>Show only</translation>
     </message>
     <message>
-        <source>TOP_ERASE</source>
-        <translation>Erase</translation>
+        <source>TOP_HIDE</source>
+        <translation>HIde</translation>
     </message>
     <message>
         <source>MEN_ERASE_ALL</source>
-        <translation>Erase all</translation>
+        <translation>Hide all</translation>
     </message>
     <message>
-        <source>STB_ERASE</source>
-        <translation>Erase</translation>
+        <source>STB_HIDE</source>
+        <translation>Hide</translation>
     </message>
     <message>
-        <source>STB_DISPLAY</source>
-        <translation>Display</translation>
+        <source>STB_SHOW</source>
+        <translation>Show</translation>
     </message>
     <message>
-        <source>TOP_DISPLAY</source>
-        <translation>Display</translation>
+        <source>TOP_SHOW</source>
+        <translation>Show</translation>
     </message>
     <message>
-        <source>MEN_DISPLAY</source>
-        <translation>Display</translation>
+        <source>MEN_SHOW</source>
+        <translation>Show</translation>
     </message>
     <message>
         <source>STB_ERASE_ALL</source>
-        <translation>Erase all</translation>
+        <translation>Hide all</translation>
     </message>
     <message>
         <source>TOP_ERASE_ALL</source>
-        <translation>Erase all</translation>
+        <translation>Hide all</translation>
     </message>
 </context>
 <context>
index b60a92454642d0c6305bb5bd72202956517dc001..91f5dce0a53193b1a6d31a872aef057c4abd7a22 100755 (executable)
@@ -24,7 +24,7 @@
 #  Module : SALOME
 # $Header$
 
-SUBDIRS = Qtx Style DDS QDS ObjBrowser SUIT SUITApp STD CAF CAM LogWindow Prs
+SUBDIRS = CASCatch Qtx Style DDS QDS ObjBrowser SUIT SUITApp STD CAF CAM LogWindow Prs
 
 if ENABLE_SALOMEOBJECT
   SUBDIRS += OBJECT
index 11f10fb86b45060a4c3be9f0490b2c9b9419f0ab..e774d1e692827d03e5f5a131093a92b65e17b954 100755 (executable)
@@ -31,6 +31,7 @@ salomeinclude_HEADERS= \
        OCCViewer_ViewModel.h \
        OCCViewer_ViewPort3d.h \
        OCCViewer_ViewPort.h \
+       OCCViewer_ViewSketcher.h \
        OCCViewer_ViewWindow.h \
        OCCViewer_VService.h \
        OCCViewer_CreateRestoreViewDlg.h \
@@ -44,6 +45,7 @@ dist_libOCCViewer_la_SOURCES= \
        OCCViewer_ViewModel.cxx \
        OCCViewer_ViewPort3d.cxx \
        OCCViewer_ViewPort.cxx \
+       OCCViewer_ViewSketcher.cxx \
        OCCViewer_ViewWindow.cxx \
        OCCViewer_VService.cxx \
        OCCViewer_CreateRestoreViewDlg.cxx \
@@ -55,6 +57,7 @@ MOC_FILES= \
        OCCViewer_ViewModel_moc.cxx \
        OCCViewer_ViewPort3d_moc.cxx \
        OCCViewer_ViewPort_moc.cxx \
+       OCCViewer_ViewSketcher_moc.cxx \
        OCCViewer_ViewWindow_moc.cxx \
        OCCViewer_ViewManager_moc.cxx \
        OCCViewer_CreateRestoreViewDlg_moc.cxx \
index 235ce398364e85e08bb1dbe258329071c83c7b80..828634eec997ae6424937a7a7e036fa429f92ab0 100755 (executable)
@@ -133,6 +133,7 @@ void OCCViewer_Viewer::initView( OCCViewer_ViewWindow* view )
 {
   if ( view ) {
     view->initLayout();
+    view->initSketchers();
     
     OCCViewer_ViewPort3d* vp3d = view->getViewPort();
     if ( vp3d )
index fb1dda253e8485b4178d55afa8eb4872a014f43d..166a7bb34c27ea1ae44423febd608734390ab89b 100755 (executable)
@@ -200,7 +200,7 @@ OCCViewer_ViewPort::~OCCViewer_ViewPort()
 void OCCViewer_ViewPort::initialize()
 {
   myPaintersRedrawing = false;
-  myEnableSketching = false;
+  myEnableSketching = true;
   myEnableTransform = true;
   
   setMouseTracking( true );
diff --git a/src/OCCViewer/OCCViewer_ViewSketcher.cxx b/src/OCCViewer/OCCViewer_ViewSketcher.cxx
new file mode 100755 (executable)
index 0000000..335603d
--- /dev/null
@@ -0,0 +1,540 @@
+// Copyright (C) 2005  OPEN CASCADE, CEA/DEN, EDF R&D, PRINCIPIA R&D
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+
+#include "OCCViewer_ViewSketcher.h"
+#include "OCCViewer_ViewWindow.h"
+#include "OCCViewer_ViewPort3d.h"
+
+#include <QApplication>
+#include <QPainter>
+#include <QPolygon>
+#include <QMouseEvent>
+#include <QKeyEvent>
+
+/****************************************************************
+**  Class: OCCViewer_ViewSketcher
+**  Level: Public
+*****************************************************************/
+
+OCCViewer_ViewSketcher::OCCViewer_ViewSketcher( OCCViewer_ViewWindow* vw, int type )
+: QObject( vw ),
+mySketchButton( Qt::LeftButton ),
+mypViewWindow( vw ),
+myType( type ),
+mypData( 0 ),
+myResult( Neutral ),
+myButtonState( 0 )
+{
+}
+
+OCCViewer_ViewSketcher::~OCCViewer_ViewSketcher()
+{
+}
+
+void OCCViewer_ViewSketcher::activate()
+{
+  OCCViewer_ViewPort3d* avp = mypViewWindow->getViewPort();
+
+  mySavedCursor = avp->cursor();
+  avp->setCursor( Qt::PointingHandCursor );
+  avp->installEventFilter( this );
+  qApp->installEventFilter( this );
+
+  connect( avp, SIGNAL( vpDrawExternal( QPainter* ) ), this, SLOT( onDrawViewPort() ) );
+
+  myStart = QPoint();
+  myResult = Neutral;
+
+  onActivate();
+}
+
+void OCCViewer_ViewSketcher::deactivate()
+{
+  OCCViewer_ViewPort3d* avp = mypViewWindow->getViewPort();
+
+  disconnect( avp, SIGNAL( vpDrawExternal( QPainter* ) ), this, SLOT( onDrawViewPort() ) );
+
+  qApp->removeEventFilter( this );
+  avp->removeEventFilter( this );
+  avp->setCursor( mySavedCursor );
+
+  onDeactivate();
+}
+
+int OCCViewer_ViewSketcher::type() const
+{
+  return myType;
+}
+
+void* OCCViewer_ViewSketcher::data() const
+{
+  return mypData;
+}
+
+int OCCViewer_ViewSketcher::result() const
+{
+  return myResult;
+}
+
+int OCCViewer_ViewSketcher::buttonState() const
+{
+  return myButtonState;
+}
+
+void OCCViewer_ViewSketcher::onActivate()
+{
+}
+
+void OCCViewer_ViewSketcher::onDeactivate()
+{
+}
+
+bool OCCViewer_ViewSketcher::isDefault() const
+{
+  return true;
+}
+
+bool OCCViewer_ViewSketcher::eventFilter( QObject* o, QEvent* e )
+{
+  OCCViewer_ViewPort3d* avp = mypViewWindow->getViewPort();
+
+  SketchState state = EnTrain;
+  bool ignore = false;
+  if ( o == avp )
+  {
+    switch ( e->type() )
+    {
+      case QEvent::MouseMove:
+      case QEvent::MouseButtonPress:
+      case QEvent::MouseButtonRelease:
+      case QEvent::MouseButtonDblClick:
+      {
+        QMouseEvent* me = (QMouseEvent*)e;
+
+        myButtonState = me->buttons();
+        if ( e->type() == QEvent::MouseButtonPress )
+          myButtonState |= me->button();
+
+        if ( myStart.isNull() && ( myButtonState & sketchButton() ) )
+        {
+          state = Debut;
+          myStart = me->pos();
+        }
+
+        myCurr = me->pos();
+
+        onMouse( me );
+
+        if ( myResult != Neutral )
+          state = Fin;
+
+        ignore = true;
+        break;
+      }
+      case QEvent::Hide:
+      case QEvent::HideToParent:
+        myResult = Reject;
+        onSketch( Fin );
+        break;
+      default:
+        break;
+    }
+  }
+  if ( e->type() == QEvent::KeyPress || e->type() == QEvent::KeyRelease )
+  {
+    ignore = onKey( (QKeyEvent*)e );
+    if ( myResult != Neutral )
+      state = Fin;
+  }
+
+  if ( ignore )
+  {
+    onSketch( state );
+    return true;
+  }
+  return QObject::eventFilter( o, e );
+}
+
+void OCCViewer_ViewSketcher::onDrawViewPort()
+{
+  onSketch( Debut );
+}
+
+bool OCCViewer_ViewSketcher::onKey( QKeyEvent* )
+{
+  return false;
+}
+
+void OCCViewer_ViewSketcher::onMouse( QMouseEvent* )
+{
+}
+
+int OCCViewer_ViewSketcher::sketchButton()
+{
+  return mySketchButton;
+}
+
+void OCCViewer_ViewSketcher::setSketchButton( int b )
+{
+  mySketchButton = b;
+}
+
+/****************************************************************
+**  Class: OCCViewer_RectSketcher
+**  Level: Public
+*****************************************************************/
+
+OCCViewer_RectSketcher::OCCViewer_RectSketcher( OCCViewer_ViewWindow* vw, int typ )
+: OCCViewer_ViewSketcher( vw, typ )
+{
+}
+
+OCCViewer_RectSketcher::~OCCViewer_RectSketcher()
+{
+  delete (QRect*)mypData;
+}
+
+void OCCViewer_RectSketcher::onActivate()
+{
+  mypData = new QRect();
+}
+
+void OCCViewer_RectSketcher::onDeactivate()
+{
+  delete (QRect*)mypData;
+  mypData = 0;
+}
+
+bool OCCViewer_RectSketcher::onKey( QKeyEvent* e )
+{
+  if ( e->key() == Qt::Key_Escape )
+    myResult = Reject;
+  else if ( e->key() == Qt::Key_Enter || e->key() == Qt::Key_Return )
+    myResult = Accept;
+
+  return true;
+}
+
+void OCCViewer_RectSketcher::onMouse( QMouseEvent* e )
+{
+  OCCViewer_ViewPort3d* avp = mypViewWindow->getViewPort();
+
+  if ( avp->rect().contains( myCurr ) )
+    avp->setCursor( Qt::PointingHandCursor );
+  else
+    avp->setCursor( Qt::ForbiddenCursor );
+
+  if ( e->type() == QEvent::MouseButtonRelease && e->button() == sketchButton() )
+  {
+    myResult = Accept;
+    QApplication::postEvent( avp, new QMouseEvent( e->type(), e->pos(),
+                                                   e->globalPos(), e->button(), 
+                                                  e->buttons(), e->modifiers() ) );
+  }
+}
+
+void OCCViewer_RectSketcher::onSketch( SketchState state )
+{
+  OCCViewer_ViewPort3d* avp = mypViewWindow->getViewPort();
+
+  QRect* sketchRect = (QRect*)data();
+  if ( myButtonState & sketchButton() )
+  {
+    QRect rect( qMin( myStart.x(), myCurr.x() ), qMin( myStart.y(), myCurr.y() ),
+                qAbs( myStart.x() - myCurr.x() ), qAbs( myStart.y() - myCurr.y() ) );
+    QPainter p( avp );
+    p.setPen( Qt::white );
+    p.setCompositionMode( QPainter::CompositionMode_Xor );
+    if ( state != Debut && !sketchRect->isEmpty() )
+      p.drawRect( *sketchRect );
+    *sketchRect = rect;
+    if ( !rect.isEmpty() && state != Fin )
+      p.drawRect( *sketchRect );
+  }
+
+  if ( state == Fin )
+  {
+    QApplication::syncX();  /* force rectangle redrawing */
+    mypViewWindow->activateSketching( OCCViewer_ViewWindow::NoSketching );
+  }
+}
+
+/****************************************************************
+**  Class: OCCViewer_PolygonSketcher
+**  Level: Public
+*****************************************************************/
+
+OCCViewer_PolygonSketcher::OCCViewer_PolygonSketcher( OCCViewer_ViewWindow* vw, int typ )
+: OCCViewer_ViewSketcher( vw, typ ),
+  myDbl           ( false ),
+  myToler         ( 5, 5 ),
+  mypPoints        ( 0L ),
+  myAddButton     ( 0 ),
+  myDelButton     ( 0 )
+{
+  mySketchButton = Qt::RightButton;
+}
+
+OCCViewer_PolygonSketcher::~OCCViewer_PolygonSketcher()
+{
+  delete mypPoints;
+  delete (QPolygon*)mypData;
+}
+
+void OCCViewer_PolygonSketcher::onActivate()
+{
+  myDbl = false;
+  mypData = new QPolygon( 0 );
+  mypPoints = new QPolygon( 0 );
+
+  switch ( sketchButton() )
+  {
+  case Qt::LeftButton:
+    myAddButton = Qt::RightButton;
+    myDelButton = Qt::MidButton;
+    break;
+  case Qt::MidButton:
+    myAddButton = Qt::LeftButton;
+    myDelButton = Qt::RightButton;
+    break;
+  case Qt::RightButton:
+  default:
+    myAddButton = Qt::LeftButton;
+    myDelButton = Qt::MidButton;
+    break;
+  };
+}
+
+void OCCViewer_PolygonSketcher::onDeactivate()
+{
+  delete mypPoints;
+  mypPoints = 0;
+  delete (QPolygon*)mypData;
+  mypData = 0;
+}
+
+bool OCCViewer_PolygonSketcher::onKey( QKeyEvent* e )
+{
+  if ( e->key() == Qt::Key_Escape )
+  {
+    myResult = Reject;
+    return true;
+  }
+  else if ( e->key() == Qt::Key_Enter || e->key() == Qt::Key_Return )
+  {
+    QPolygon* points = (QPolygon*)data();
+    if ( points->count() )
+    {
+      QPoint last = points->point( points->count() - 1 );
+      if ( last != myCurr )
+      {
+        points->resize( points->count() + 1 );
+        points->setPoint( points->count() - 1, myCurr );
+      }
+    }
+    myResult = Accept;
+    return true;
+  }
+  else if ( e->key() == Qt::Key_Backspace && e->type() == QEvent::KeyRelease )
+  {
+    QPolygon* points = (QPolygon*)data();
+    if ( points->count() > 1 )
+      points->resize( points->count() - 1 );
+    onMouse( 0 );
+    return true;
+  }
+
+  return true;
+}
+
+void OCCViewer_PolygonSketcher::onMouse( QMouseEvent* e )
+{
+  OCCViewer_ViewPort3d* avp = mypViewWindow->getViewPort();
+
+  QPolygon* points = (QPolygon*)data();
+  if ( !points->count() && !myStart.isNull() )
+  {
+    points->resize( points->count() + 1 );
+    points->setPoint( points->count() - 1, myStart );
+  }
+
+  bool closed = false;
+  bool valid = avp->rect().contains( myCurr );
+  if ( !myStart.isNull() )
+  {
+    QRect aRect( myStart.x() - myToler.width(), myStart.y() - myToler.height(),
+                 2 * myToler.width(), 2 * myToler.height() );
+    closed = aRect.contains( myCurr );
+  }
+  valid = valid && isValid( points, myCurr );
+  if ( closed && !valid )
+    closed = false;
+
+  if ( closed )
+    avp->setCursor( Qt::CrossCursor );
+  else if ( valid )
+    avp->setCursor( Qt::PointingHandCursor );
+  else
+    avp->setCursor( Qt::ForbiddenCursor );
+
+  if ( !e )
+    return;
+
+  if ( e->type() == QEvent::MouseButtonRelease && ( e->button() & sketchButton() ) )
+  {
+    myResult = Reject;
+    QApplication::postEvent( avp, new QMouseEvent( e->type(), e->pos(),
+                                                   e->globalPos(), e->button(), 
+                                                  e->buttons(), e->modifiers() ) );
+  }
+  else if ( e->type() == QEvent::MouseButtonRelease && ( e->button() & myAddButton ) )
+  {
+    if ( closed )
+      myResult = Accept;
+    else
+    {
+      if ( myStart.isNull() )
+        myStart = myCurr;
+      else
+      {
+        QPoint last = points->point( points->count() - 1 );
+        if ( last != myCurr && valid )
+        {
+          points->resize( points->count() + 1 );
+          points->setPoint( points->count() - 1, myCurr );
+        }
+        if ( valid && myDbl )
+          myResult = Accept;
+      }
+    }
+  }
+  else if ( ( e->type() == QEvent::MouseButtonRelease && ( e->button() & myDelButton ) ) ||
+            ( e->type() == QEvent::MouseButtonDblClick && ( e->button() & myDelButton ) ) )
+  {
+    if ( points->count() > 1 )
+      points->resize( points->count() - 1 );
+    onMouse( 0 );
+  }
+  myDbl = e->type() == QEvent::MouseButtonDblClick && ( e->button() & myAddButton );
+}
+
+void OCCViewer_PolygonSketcher::onSketch( SketchState state )
+{
+  OCCViewer_ViewPort3d* avp = mypViewWindow->getViewPort();
+
+  QPolygon* points = (QPolygon*)data();
+  QPainter p( avp );
+  p.setPen( Qt::white );
+  p.setCompositionMode( QPainter::CompositionMode_Xor );
+  if ( state != Debut )
+    p.drawPolyline( *mypPoints );
+
+  if ( points->count() )
+  {
+    mypPoints->resize( points->count() + 1 );
+    for ( uint i = 0; i < points->count(); i++ )
+      mypPoints->setPoint( i, points->point( i ) );
+    mypPoints->setPoint( points->count(), myCurr );
+    if ( state != Fin )
+      p.drawPolyline( *mypPoints );
+  }
+
+  if ( state == Fin )
+  {
+    QApplication::syncX();
+    mypViewWindow->activateSketching( OCCViewer_ViewWindow::NoSketching );
+  }
+}
+
+bool OCCViewer_PolygonSketcher::isValid( const QPolygon* aPoints, const QPoint& aCur ) const
+{
+  if ( !aPoints->count() )
+    return true;
+
+  if ( aPoints->count() == 1 && aPoints->point( 0 ) == aCur )
+    return false;
+
+  const QPoint& aLast = aPoints->point( aPoints->count() - 1 );
+
+  if ( aLast == aCur )
+    return true;
+
+  bool res = true;
+  for ( uint i = 0; i < aPoints->count() - 1 && res; i++ )
+  {
+    const QPoint& aStart = aPoints->point( i );
+    const QPoint& anEnd  = aPoints->point( i + 1 );
+    res = !isIntersect( aStart, anEnd, aCur, aLast );
+  }
+
+  return res;
+}
+
+bool OCCViewer_PolygonSketcher::isIntersect( const QPoint& aStart1, const QPoint& anEnd1,
+                                            const QPoint& aStart2, const QPoint& anEnd2 ) const
+{
+  if ( ( aStart1 == aStart2 && anEnd1 == anEnd2 ) ||
+       ( aStart1 == anEnd2 && anEnd1 == aStart2 ) )
+    return true;
+
+  if ( aStart1 == aStart2 || aStart2 == anEnd1 ||
+       aStart1 == anEnd2 || anEnd1 == anEnd2 )
+    return false;
+
+  double x11 = aStart1.x() * 1.0;
+  double x12 = anEnd1.x() * 1.0;
+  double y11 = aStart1.y() * 1.0;
+  double y12 = anEnd1.y() * 1.0;
+
+  double x21 = aStart2.x() * 1.0;
+  double x22 = anEnd2.x() * 1.0;
+  double y21 = aStart2.y() * 1.0;
+  double y22 = anEnd2.y() * 1.0;
+
+  double k1 = x12 == x11 ? 0 : ( y12 - y11 ) / ( x12 - x11 );
+  double k2 = x22 == x21 ? 0 : ( y22 - y21 ) / ( x22 - x21 );
+
+  double b1 = y11 - k1 * x11;
+  double b2 = y21 - k2 * x21;
+
+  if ( k1 == k2 )
+  {
+    if ( b1 != b2 )
+      return false;
+    else
+      return !( ( qMax( x11, x12 ) <= qMin( x21, x22 ) ||
+                  qMin( x11, x12 ) >= qMax( x21, x22 ) ) &&
+                ( qMax( y11, y12 ) <= qMin( y21, y22 ) ||
+                  qMin( y11, y12 ) >= qMax( y21, y22 ) ) );
+  }
+  else
+  {
+    double x0 = ( b2 - b1 ) / ( k1 - k2 );
+    double y0 = ( k1 * b2 - k2 * b1 ) / ( k1 - k2 );
+
+    if ( qMin( x11, x12 ) < x0 && x0 < qMax( x11, x12 ) &&
+         qMin( y11, y12 ) < y0 && y0 < qMax( y11, y12 ) &&
+         qMin( x21, x22 ) < x0 && x0 < qMax( x21, x22 ) &&
+         qMin( y21, y22 ) < y0 && y0 < qMax( y21, y22 ) )
+      return true;
+  }
+  return false;
+}
+
+
diff --git a/src/OCCViewer/OCCViewer_ViewSketcher.h b/src/OCCViewer/OCCViewer_ViewSketcher.h
new file mode 100755 (executable)
index 0000000..55430be
--- /dev/null
@@ -0,0 +1,141 @@
+// Copyright (C) 2005  OPEN CASCADE, CEA/DEN, EDF R&D, PRINCIPIA R&D
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#ifndef OCCVIEWER_VIEWSKETCHER_H
+#define OCCVIEWER_VIEWSKETCHER_H
+
+#include "OCCViewer.h"
+
+#include <QObject>
+#include <QCursor>
+#include <QSize>
+
+class OCCViewer_ViewWindow;
+class QKeyEvent;
+class QMouseEvent;
+class QPolygon;
+
+#ifdef WNT
+#pragma warning ( disable:4251 )
+#endif
+
+/*!
+  \class OCCViewer_ViewSketcher
+*/
+
+class OCCVIEWER_EXPORT OCCViewer_ViewSketcher : public QObject
+{
+  Q_OBJECT
+
+public:
+  enum { Neutral, Accept, Reject };
+
+public:
+  OCCViewer_ViewSketcher( OCCViewer_ViewWindow*, int );
+  virtual ~OCCViewer_ViewSketcher();
+
+public:
+  int                          type() const;
+  int                          result() const;
+  int                          buttonState() const;
+  void*                        data() const;
+
+  void                         activate();
+  void                         deactivate();
+
+  int                          sketchButton();
+  void                         setSketchButton( int );
+
+  virtual bool                 isDefault() const;
+  virtual bool                 eventFilter( QObject*, QEvent* );
+
+private slots:
+  void                         onDrawViewPort();
+
+protected:
+  enum SketchState { Debut, EnTrain, Fin };
+  virtual bool                 onKey( QKeyEvent* );
+  virtual void                 onMouse( QMouseEvent* );
+  virtual void                 onSketch( SketchState ) = 0;
+  virtual void                 onActivate();
+  virtual void                 onDeactivate();
+
+protected:
+  int                          mySketchButton;
+  OCCViewer_ViewWindow*        mypViewWindow;
+  int                          myType;
+  void*                        mypData;
+  int                          myResult;
+  QCursor                      mySavedCursor;
+  QPoint                       myStart, myCurr;
+  int                          myButtonState;
+};
+
+/*!
+  \class OCCViewer_RectSketcher
+*/
+
+class OCCVIEWER_EXPORT OCCViewer_RectSketcher : public OCCViewer_ViewSketcher
+{
+public:
+  OCCViewer_RectSketcher( OCCViewer_ViewWindow*, int );
+  virtual ~OCCViewer_RectSketcher();
+
+protected:
+  virtual bool                 onKey( QKeyEvent* );
+  virtual void                 onMouse( QMouseEvent* );
+  virtual void                 onSketch( SketchState );
+  virtual void                 onActivate();
+  virtual void                 onDeactivate();
+};
+
+/*!
+  \class OCCViewer_PolygonSketcher
+*/
+
+class OCCVIEWER_EXPORT OCCViewer_PolygonSketcher : public OCCViewer_ViewSketcher
+{
+public:
+  OCCViewer_PolygonSketcher( OCCViewer_ViewWindow*, int );
+  virtual ~OCCViewer_PolygonSketcher();
+
+protected:
+  virtual bool                 onKey( QKeyEvent* );
+  virtual void                 onMouse( QMouseEvent* );
+  virtual void                 onSketch( SketchState );
+  virtual void                 onActivate();
+  virtual void                 onDeactivate();
+
+private:
+  bool                         isValid( const QPolygon*, const QPoint& ) const;
+  bool                         isIntersect( const QPoint&, const QPoint&,
+                                            const QPoint&, const QPoint& ) const;
+
+private:
+  bool                         myDbl;
+  QSize                        myToler;
+  QPolygon*                    mypPoints;
+  int                          myAddButton;
+  int                          myDelButton;
+};
+
+#ifdef WNT
+#pragma warning( default:4251 )
+#endif
+
+#endif
index d3c6fc60c3063005c75e1f9f9f9d145230ee272e..bf1f7f8d2c6c748f48004a71b211100cad87cf24 100755 (executable)
@@ -23,6 +23,8 @@
 #include "OCCViewer_ViewWindow.h"
 #include "OCCViewer_ViewModel.h"
 #include "OCCViewer_ViewPort3d.h"
+#include "OCCViewer_ViewManager.h"
+#include "OCCViewer_ViewSketcher.h"
 #include "OCCViewer_CreateRestoreViewDlg.h"
 #include "OCCViewer_ClippingDlg.h"
 #include "OCCViewer_SetRotationPointDlg.h"
 #include <QImage>
 #include <QMouseEvent>
 #include <QRubberBand>
+#include <QApplication>
 
 #include <V3d_Plane.hxx>
 #include <gp_Dir.hxx>
 #include <gp_Pln.hxx>
+#include <TColgp_Array1OfPnt2d.hxx>
 
 #include <AIS_ListOfInteractive.hxx>
 #include <AIS_ListIteratorOfListOfInteractive.hxx>
@@ -60,6 +64,8 @@
 #include <Graphic3d_MapOfStructure.hxx>
 #include <Graphic3d_Structure.hxx>
 
+static QEvent* l_mbPressEvent = 0;
+
 const char* imageZoomCursor[] = { 
 "32 32 3 1",
 ". c None",
@@ -191,6 +197,9 @@ OCCViewer_ViewWindow::OCCViewer_ViewWindow( SUIT_Desktop*     theDesktop,
   myClippingDlg = 0;
   mySetRotationPointDlg = 0;
   myRectBand = 0;
+
+  mypSketcher = 0;
+  myCurSketch = -1;
 }
 
 /*!
@@ -199,6 +208,7 @@ OCCViewer_ViewWindow::OCCViewer_ViewWindow( SUIT_Desktop*     theDesktop,
 OCCViewer_ViewWindow::~OCCViewer_ViewWindow()
 {
   endDrawRect();
+  qDeleteAll( mySketchers );
 }
 
 /*!
@@ -402,6 +412,11 @@ void OCCViewer_ViewWindow::vpMousePressEvent( QMouseEvent* theEvent )
   }
   if ( transformRequested() ) 
     setTransformInProcess( true );              
+
+  /* we may need it for sketching... */
+  if ( l_mbPressEvent )
+    delete l_mbPressEvent;
+  l_mbPressEvent = new QMouseEvent( *theEvent );
 }
 
 
@@ -729,6 +744,33 @@ void OCCViewer_ViewWindow::vpMouseMoveEvent( QMouseEvent* theEvent )
          }
        }
       } 
+      else if ( aButton == Qt::RightButton || 
+               aButton == Qt::RightButton && aState == Qt::ShiftModifier ) {
+       OCCViewer_ViewSketcher* sketcher = 0;
+       QList<OCCViewer_ViewSketcher*>::Iterator it;
+       for ( it = mySketchers.begin(); it != mySketchers.end() && !sketcher; ++it )
+       {
+         OCCViewer_ViewSketcher* sk = (*it);
+         if( sk->isDefault() && sk->sketchButton() & ( aState & Qt::MouseButtonMask ) )
+           sketcher = sk;
+       }
+       if ( sketcher && myCurSketch == -1 )
+       {
+         activateSketching( sketcher->type() );
+         if ( mypSketcher )
+         {
+           myCurSketch = mypSketcher->sketchButton();
+
+           if ( l_mbPressEvent )
+           {
+             QApplication::sendEvent( getViewPort(), l_mbPressEvent );
+             delete l_mbPressEvent;
+             l_mbPressEvent = 0;
+           }
+           QApplication::sendEvent( getViewPort(), theEvent );
+         }
+       }
+      }
       else
        emit mouseMoving( this, theEvent ); 
     }  
@@ -744,8 +786,20 @@ void OCCViewer_ViewWindow::vpMouseReleaseEvent(QMouseEvent* theEvent)
   switch ( myOperation ) {
   case NOTHING:
     {
-      emit mouseReleased(this, theEvent);
+      int prevState = myCurSketch;
       if(theEvent->button() == Qt::RightButton)
+      {
+       QList<OCCViewer_ViewSketcher*>::Iterator it;
+       for ( it = mySketchers.begin(); it != mySketchers.end() && myCurSketch != -1; ++it )
+       {
+         OCCViewer_ViewSketcher* sk = (*it);
+         if( ( sk->sketchButton() & theEvent->button() ) && sk->sketchButton() == myCurSketch )
+           myCurSketch = -1;
+       }
+      }
+
+      emit mouseReleased(this, theEvent);
+      if(theEvent->button() == Qt::RightButton && prevState == -1)
       {
         QContextMenuEvent aEvent( QContextMenuEvent::Mouse,
                                   theEvent->pos(), theEvent->globalPos() );
@@ -793,6 +847,12 @@ void OCCViewer_ViewWindow::vpMouseReleaseEvent(QMouseEvent* theEvent)
     resetState(); 
     myViewPort->update();
   }
+
+  if ( l_mbPressEvent )
+  {
+    delete l_mbPressEvent;
+    l_mbPressEvent = 0;
+  }
 }
 
 /*!
@@ -1442,3 +1502,139 @@ void OCCViewer_ViewWindow::hideEvent( QHideEvent* theEvent )
   emit Hide( theEvent );
 }
 
+
+/*!
+    Creates default sketcher. [ virtual protected ]
+*/
+OCCViewer_ViewSketcher* OCCViewer_ViewWindow::createSketcher( int type )
+{
+  if ( type == Rect )
+    return new OCCViewer_RectSketcher( this, type );
+  if ( type == Polygon )
+    return new OCCViewer_PolygonSketcher( this, type );
+  return 0;
+}
+
+void OCCViewer_ViewWindow::initSketchers()
+{
+  if ( mySketchers.isEmpty() )
+  {
+    mySketchers.append( createSketcher( Rect ) );
+    mySketchers.append( createSketcher( Polygon ) );
+  }
+}
+
+OCCViewer_ViewSketcher* OCCViewer_ViewWindow::getSketcher( const int typ )
+{
+  OCCViewer_ViewSketcher* sketcher = 0;
+  QList<OCCViewer_ViewSketcher*>::Iterator it;
+  for ( it = mySketchers.begin(); it != mySketchers.end() && !sketcher; ++it )
+  {
+    OCCViewer_ViewSketcher* sk = (*it);
+    if ( sk->type() == typ )
+      sketcher = sk;
+  }
+  return sketcher;
+}
+
+/*!
+    Handles requests for sketching in the active view. [ virtual public ]
+*/
+void OCCViewer_ViewWindow::activateSketching( int type )
+{
+  OCCViewer_ViewPort3d* vp = getViewPort();
+  if ( !vp )
+    return;
+
+  if ( !vp->isSketchingEnabled() )
+    return;
+
+  /* Finish current sketching */
+  if ( type == NoSketching )
+  {
+    if ( mypSketcher )
+    {
+      onSketchingFinished();
+      mypSketcher->deactivate();
+      mypSketcher = 0;
+    }
+  }
+  /* Activate new sketching */
+  else
+  {
+    activateSketching( NoSketching );  /* concurrency not suported */
+    mypSketcher = getSketcher( type );
+    if ( mypSketcher )
+    {
+      mypSketcher->activate();
+      onSketchingStarted();
+    }
+  }
+}
+
+/*!
+    Unhilights detected entities. [ virtual protected ]
+*/
+void OCCViewer_ViewWindow::onSketchingStarted()
+{
+}
+
+/*!
+    Selection by rectangle or polygon. [ virtual protected ]
+*/
+void OCCViewer_ViewWindow::onSketchingFinished()
+{
+  if ( mypSketcher && mypSketcher->result() == OCCViewer_ViewSketcher::Accept )
+  {
+    Handle(AIS_InteractiveContext) ic = myModel->getAISContext();
+    bool append = bool( mypSketcher->buttonState() & Qt::ShiftModifier );
+    switch( mypSketcher->type() )
+    {
+    case Rect:
+      {
+       QRect* aRect = (QRect*)mypSketcher->data();
+       if( aRect )
+       {
+         int aLeft = aRect->left();
+         int aRight = aRect->right();
+         int aTop = aRect->top();
+         int aBottom = aRect->bottom();
+
+         if( append )
+           ic->ShiftSelect( aLeft, aBottom, aRight, aTop, getViewPort()->getView(), Standard_False );
+         else
+           ic->Select( aLeft, aBottom, aRight, aTop, getViewPort()->getView(), Standard_False );
+       }
+      }
+      break;
+    case Polygon:
+      {
+        QPolygon* aPolygon = (QPolygon*)mypSketcher->data();
+        if( aPolygon )
+        {
+         int size = aPolygon->size();
+         TColgp_Array1OfPnt2d anArray( 1, size );
+
+         QPolygon::Iterator it = aPolygon->begin();
+         QPolygon::Iterator itEnd = aPolygon->end();
+         for( int index = 1; it != itEnd; ++it, index++ )
+         {
+           QPoint aPoint = *it;
+           anArray.SetValue( index, gp_Pnt2d( aPoint.x(), aPoint.y() ) );
+         }
+
+         if( append )
+           ic->ShiftSelect( anArray, getViewPort()->getView(), Standard_False );
+         else
+           ic->Select( anArray, getViewPort()->getView(), Standard_False );
+        }
+      }
+      break;
+    default:
+      break;
+    }
+
+    OCCViewer_ViewManager* aViewMgr = ( OCCViewer_ViewManager* )getViewManager();
+    aViewMgr->getOCCViewer()->performSelectionChanged();
+  }
+}
index d5b7a9a5a1a4b2c7ff22c8a8cf6e896029705dd5..6861820209b3c8b7365bbd9758934ab07db47c12 100755 (executable)
 #include "QtxAction.h"
 
 #include <QCursor>
+#include <QList>
 
 class QRubberBand;
 
 class SUIT_Desktop;
 class OCCViewer_ViewPort3d;
+class OCCViewer_ViewSketcher;
 
 class OCCViewer_ClippingDlg;
 class OCCViewer_SetRotationPointDlg;
@@ -50,6 +52,8 @@ public:
 
   enum RotationPointType{ GRAVITY, SELECTED };
 
+  enum SketchingType { NoSketching, Rect, Polygon };
+
   OCCViewer_ViewWindow(SUIT_Desktop* theDesktop, OCCViewer_Viewer* theModel);
   virtual ~OCCViewer_ViewWindow();
 
@@ -72,6 +76,11 @@ public:
 
   virtual QString   getVisualParameters();
   virtual void      setVisualParameters( const QString& parameters );
+
+  virtual void            initSketchers();
+  OCCViewer_ViewSketcher* getSketcher( const int );
+
+  void                    activateSketching( int );
  
 public slots:
   void onFrontView();
@@ -147,6 +156,16 @@ protected:
 
   bool computeGravityCenter( double& theX, double& theY, double& theZ );
 
+  virtual void                          onSketchingStarted();
+  virtual void                          onSketchingFinished();
+
+  virtual OCCViewer_ViewSketcher*       createSketcher( int );
+
+  OCCViewer_ViewSketcher*               mypSketcher;
+  QList<OCCViewer_ViewSketcher*>        mySketchers;
+
+  int                                   myCurSketch;
+
   OperationType         myOperation;
   OCCViewer_Viewer*     myModel;
   OCCViewer_ViewPort3d* myViewPort;
index add4a56d0df070a98138ecd1237b06287cc7f869..8b8c5ae7b1d39c776da48af6d651c72797409176 100755 (executable)
@@ -22,6 +22,8 @@
 
 #include "Plot2d_SetupViewDlg.h"
 
+#include <SUIT_Session.h>
+#include <SUIT_Application.h>
 #include <QtxColorButton.h>
 
 #include <QCheckBox>
@@ -305,10 +307,13 @@ Plot2d_SetupViewDlg::Plot2d_SetupViewDlg( QWidget* parent,
   myOkBtn->setDefault( TRUE );
   myCancelBtn = new QPushButton( tr( "BUT_CANCEL" ), this );
   myCancelBtn->setAutoDefault( TRUE );
+  myHelpBtn = new QPushButton( tr( "BUT_HELP" ), this );
+  myHelpBtn->setAutoDefault( TRUE );
   QHBoxLayout* btnLayout = new QHBoxLayout;
   btnLayout->addWidget( myOkBtn );
   btnLayout->addStretch();
   btnLayout->addWidget( myCancelBtn );
+  btnLayout->addWidget( myHelpBtn );
   
   // layout widgets
   topLayout->addWidget( myTitleCheck,  0,    0    );
@@ -344,6 +349,7 @@ Plot2d_SetupViewDlg::Plot2d_SetupViewDlg( QWidget* parent,
 
   connect( myOkBtn,         SIGNAL( clicked() ), this, SLOT( accept() ) );
   connect( myCancelBtn,     SIGNAL( clicked() ), this, SLOT( reject() ) );
+  connect( myHelpBtn,       SIGNAL( clicked() ), this, SLOT( onHelp() ) );
   
   if ( mySecondAxisY ) {
     connect( myTitleY2Check,   SIGNAL( clicked() ), this, SLOT( onY2TitleChecked() ) );
@@ -838,3 +844,13 @@ bool Plot2d_SetupViewDlg::isSetAsDefault()
 {
   return myDefCheck->isChecked();
 }
+
+/*!
+  Slot, called when user clicks "Help" button
+*/
+void Plot2d_SetupViewDlg::onHelp()
+{
+  SUIT_Application* app = SUIT_Session::session()->activeApplication();
+  if ( app )
+    app->onHelpContextModule( "GUI", "plot2d_viewer_page.html", "settings" );
+}
index dc75f4daa74f0e3b27bbc2be2526453c3e9d9db5..923dd5f40bac50ac7e4e1bde69857bb91dacaf10 100755 (executable)
@@ -93,6 +93,7 @@ protected slots:
   void            onXGridMinorChecked();
   void            onYGridMinorChecked();
   void            onY2GridMinorChecked();
+  void            onHelp();
 
 private:
   QCheckBox*      myTitleCheck;
@@ -126,6 +127,7 @@ private:
   QCheckBox*      myDefCheck;
   QPushButton*    myOkBtn;
   QPushButton*    myCancelBtn;
+  QPushButton*    myHelpBtn;
   bool            mySecondAxisY;
 };
 
index 29db60017e7acee077086c63ff39ed3af36f0c6a..5a40031789f96cae42b324db6bd58d79462b6524 100644 (file)
@@ -115,8 +115,10 @@ static QString DOTS_PROMPT  = "... ";
 
 /*!
   \class ExecCommand
-  \brief Python command execution request [internal].
- */
+  \brief Python command execution request.
+  \internal
+*/
+
 class ExecCommand : public PyInterp_LockRequest
 {
 public:
@@ -148,17 +150,10 @@ protected:
     {
       int ret = getInterp()->run( myCommand.toLatin1() );
       if ( ret < 0 )
-             myState = PyInterp_Event::ERROR;
+       myState = PyInterp_Event::ERROR;
       else if ( ret > 0 )
-             myState = PyInterp_Event::INCOMPLETE;
-      myError  = getInterp()->getverr().c_str();
-      myOutput = getInterp()->getvout().c_str();
+       myState = PyInterp_Event::INCOMPLETE;
     } 
-    else
-    {
-      myError = "";
-      myOutput = "";
-    }
   }
 
   /*!
@@ -170,15 +165,42 @@ protected:
     return new PyInterp_Event( myState, (PyInterp_Request*)this );    
   }
 
-public:
-  QString myError;     //!< Python command error message
-  QString myOutput;    //!< Python command output log
-
 private:
   QString myCommand;   //!< Python command
   int     myState;     //!< Python command execution status
 };
 
+/*!
+  \class PrintEvent
+  \brief Python command output backend event.
+  \internal
+*/
+
+#define PRINT_EVENT 65432
+
+class PrintEvent : public QEvent
+{
+public:
+  /*!
+    \brief Constructor
+    \param c message text (python trace)
+  */
+  PrintEvent( const char* c ) : QEvent( (QEvent::Type)PRINT_EVENT ), myText( c ) {}
+  /*!
+    \brief Get message
+    \return message text (python trace)
+  */
+  QString text() const { return myText; }
+
+private:
+  QString myText; //!< Event message (python trace)
+};
+
+void staticCallback( void* data, char* c )
+{
+  QApplication::postEvent( (PyConsole_Editor*)data, new PrintEvent( c ) ); 
+}
+
 /*!
   \brief Constructor. 
   
@@ -200,10 +222,13 @@ PyConsole_Editor::PyConsole_Editor( PyConsole_Interp* theInterp,
   setUndoRedoEnabled( false );
 
   myPrompt = READY_PROMPT;
-  setLineWrapMode( QTextEdit::NoWrap );
-  setWordWrapMode( QTextOption::NoWrap );
+  setLineWrapMode( QTextEdit::WidgetWidth );
+  setWordWrapMode( QTextOption::WrapAnywhere );
   setAcceptRichText( false );
 
+  theInterp->setvoutcb( staticCallback, this );
+  theInterp->setverrcb( staticCallback, this );
+
   // san - This is necessary for troubleless initialization
   onPyInterpChanged( theInterp );
 }
@@ -870,25 +895,23 @@ void PyConsole_Editor::customEvent( QEvent* event )
 {
   switch( event->type() )
   {
+  case PRINT_EVENT:
+    {
+      PrintEvent* pe=(PrintEvent*)event;
+      addText( pe->text() );
+      return;
+    }
   case PyInterp_Event::OK:
   case PyInterp_Event::ERROR:
   {
-    PyInterp_Event* pe = dynamic_cast<PyInterp_Event*>( event );
-    if ( pe )
-    {
-      ExecCommand* ec = dynamic_cast<ExecCommand*>( pe->GetRequest() );
-      if ( ec )
-      {
-       // The next line has appeared dangerous in case if
-       // Python command execution has produced very large output.
-       // A more clever approach is needed...
-       // print python output
-       addText( ec->myOutput, true );
-       addText( ec->myError );
-      }
-    }
     // clear command buffer
     myCommandBuffer.truncate( 0 );
+    // add caret return line if necessary
+    QTextBlock par = document()->end().previous();
+    QString txt = par.text();
+    txt.truncate( txt.length() - 1 );
+    if ( !txt.isEmpty() )
+      addText( "", true );
     // set "ready" prompt
     myPrompt = READY_PROMPT;
     addText( myPrompt );
@@ -903,6 +926,12 @@ void PyConsole_Editor::customEvent( QEvent* event )
   {
     // extend command buffer (multi-line command)
     myCommandBuffer.append( "\n" );
+    // add caret return line if necessary
+    QTextBlock par = document()->end().previous();
+    QString txt = par.text();
+    txt.truncate( txt.length() - 1 );
+    if ( !txt.isEmpty() )
+      addText( "", true );
     // set "dot" prompt
     myPrompt = DOTS_PROMPT;
     addText( myPrompt, true );
index 75503c3b3c547107a8d608d2cc32148676933e29..891d0290875fd1f886421bd55a2d2bb8ef95e727 100644 (file)
 #include "PyInterp_Interp.h"  // !!! WARNING !!! THIS INCLUDE MUST BE THE VERY FIRST !!!
 
 #include <cStringIO.h>
+#include <structmember.h>
 
 #include <string>
 #include <vector>
-
-using namespace std;
+#include <iostream>
 
 #define TOP_HISTORY_PY   "--- top of history ---"
 #define BEGIN_HISTORY_PY "--- begin of history ---"
 
+/*!
+  \class PyLockWrapper
+  \brief Python GIL wrapper.
+*/
+
+/*!
+  \brief Constructor. Automatically acquires GIL.
+  \param theThreadState python thread state
+*/
 PyLockWrapper::PyLockWrapper(PyThreadState* theThreadState): 
   myThreadState(theThreadState),
   mySaveThreadState(0)
@@ -42,6 +51,9 @@ PyLockWrapper::PyLockWrapper(PyThreadState* theThreadState):
     PyEval_AcquireThread(myThreadState);
 }
 
+/*!
+  \brief Desstructor. Automatically releases GIL.
+*/
 PyLockWrapper::~PyLockWrapper()
 {
   if (myThreadState->interp == PyInterp_Interp::_interp)
@@ -50,11 +62,120 @@ PyLockWrapper::~PyLockWrapper()
     PyEval_ReleaseThread(myThreadState);
 }
 
+/*!
+  \brief Get Python GIL wrapper.
+  \return GIL lock wrapper (GIL is automatically acquired here)
+*/
 PyLockWrapper PyInterp_Interp::GetLockWrapper()
 {
   return _tstate;
 }
 
+/*
+  The following functions are used to hook the Python 
+  interpreter output.
+*/
+
+static void
+PyStdOut_dealloc(PyStdOut *self)
+{
+  PyObject_Del(self);
+}
+
+static PyObject*
+PyStdOut_write(PyStdOut *self, PyObject *args)
+{
+  char *c;
+  int l;
+  if (!PyArg_ParseTuple(args, "t#:write",&c, &l))
+    return NULL;
+  if(self->_cb==NULL) {
+    if ( self->_iscerr )
+      std::cerr << c ;
+    else
+      std::cout << c ;
+  }
+  else {
+    self->_cb(self->_data,c);
+  }
+  Py_INCREF(Py_None);
+  return Py_None;
+}
+
+static PyMethodDef PyStdOut_methods[] = {
+  {"write",  (PyCFunction)PyStdOut_write,  METH_VARARGS,
+    PyDoc_STR("write(string) -> None")},
+  {NULL,    NULL}   /* sentinel */
+};
+
+static PyMemberDef PyStdOut_memberlist[] = {
+  {"softspace", T_INT,  offsetof(PyStdOut, softspace), 0,
+   "flag indicating that a space needs to be printed; used by print"},
+  {NULL} /* Sentinel */
+};
+
+static PyTypeObject PyStdOut_Type = {
+  /* The ob_type field must be initialized in the module init function
+   * to be portable to Windows without using C++. */
+  PyObject_HEAD_INIT(NULL)
+  0,                            /*ob_size*/
+  "PyOut",                      /*tp_name*/
+  sizeof(PyStdOut),             /*tp_basicsize*/
+  0,                            /*tp_itemsize*/
+  /* methods */
+  (destructor)PyStdOut_dealloc, /*tp_dealloc*/
+  0,                            /*tp_print*/
+  0,                            /*tp_getattr*/
+  0,                            /*tp_setattr*/
+  0,                            /*tp_compare*/
+  0,                            /*tp_repr*/
+  0,                            /*tp_as_number*/
+  0,                            /*tp_as_sequence*/
+  0,                            /*tp_as_mapping*/
+  0,                            /*tp_hash*/
+  0,                            /*tp_call*/
+  0,                            /*tp_str*/
+  PyObject_GenericGetAttr,      /*tp_getattro*/
+  /* softspace is writable:  we must supply tp_setattro */
+  PyObject_GenericSetAttr,      /* tp_setattro */
+  0,                            /*tp_as_buffer*/
+  Py_TPFLAGS_DEFAULT,           /*tp_flags*/
+  0,                            /*tp_doc*/
+  0,                            /*tp_traverse*/
+  0,                            /*tp_clear*/
+  0,                            /*tp_richcompare*/
+  0,                            /*tp_weaklistoffset*/
+  0,                            /*tp_iter*/
+  0,                            /*tp_iternext*/
+  PyStdOut_methods,             /*tp_methods*/
+  PyStdOut_memberlist,          /*tp_members*/
+  0,                            /*tp_getset*/
+  0,                            /*tp_base*/
+  0,                            /*tp_dict*/
+  0,                            /*tp_descr_get*/
+  0,                            /*tp_descr_set*/
+  0,                            /*tp_dictoffset*/
+  0,                            /*tp_init*/
+  0,                            /*tp_alloc*/
+  0,                            /*tp_new*/
+  0,                            /*tp_free*/
+  0,                            /*tp_is_gc*/
+};
+
+#define PyStdOut_Check(v)  ((v)->ob_type == &PyStdOut_Type)
+
+static PyStdOut* newPyStdOut( bool iscerr )
+{
+  PyStdOut *self;
+  self = PyObject_New(PyStdOut, &PyStdOut_Type);
+  if (self == NULL)
+    return NULL;
+  self->softspace = 0;
+  self->_cb = NULL;
+  self->_iscerr = iscerr;
+  return self;
+}
+
 /*!
   \class PyInterp_Interp
   \brief Generic embedded Python interpreter.
@@ -117,12 +238,9 @@ void PyInterp_Interp::initialize()
     return;
   }
 
-  // Create cStringIO to capture stdout and stderr
-  PycString_IMPORT;
-  if (PycStringIO) { // CTH11627 : additional check
-    _vout = PycStringIO->NewOutput(128);
-    _verr = PycStringIO->NewOutput(128);
-  }
+  // Create python objects to capture stdout and stderr
+  _vout=(PyObject*)newPyStdOut( false ); // stdout 
+  _verr=(PyObject*)newPyStdOut( true );  // stderr
 
   // All the initRun outputs are redirected to the standard output (console)
   initRun();
@@ -145,6 +263,9 @@ void PyInterp_Interp::initPython()
   PySys_SetArgv(_argc, _argv);
   PyEval_InitThreads(); // Create (and acquire) the interpreter lock
   _interp = PyThreadState_Get()->interp;
+  if (PyType_Ready(&PyStdOut_Type) < 0) {
+    PyErr_Print();
+  }
   _gtstate = PyEval_SaveThread(); // Release global thread state
 }
 
@@ -152,11 +273,11 @@ void PyInterp_Interp::initPython()
   \brief Get embedded Python interpreter banner.
   \return banner string
  */
-string PyInterp_Interp::getbanner()
+std::string PyInterp_Interp::getbanner()
 {
  // Should we take the lock ?
  // PyEval_RestoreThread(_tstate);
-  string aBanner("Python ");
+  std::string aBanner("Python ");
   aBanner = aBanner + Py_GetVersion() + " on " + Py_GetPlatform() ;
   aBanner = aBanner + "\ntype help to get general information on environment\n";
   //PyEval_SaveThread();
@@ -173,17 +294,18 @@ string PyInterp_Interp::getbanner()
 */
 bool PyInterp_Interp::initRun()
 {
+  // 
+  // probably all below code isn't required
+  //
+  /*
   PySys_SetObject("stderr",_verr);
   PySys_SetObject("stdout",_vout);
 
-  PyObjWrapper verr(PyObject_CallMethod(_verr,"reset",""));
-  PyObjWrapper vout(PyObject_CallMethod(_vout,"reset",""));
-
   //PyObject *m = PyImport_GetModuleDict();
   
   PySys_SetObject("stdout",PySys_GetObject("__stdout__"));
   PySys_SetObject("stderr",PySys_GetObject("__stderr__"));
-
+  */
   return true;
 }
 
@@ -266,9 +388,6 @@ int PyInterp_Interp::simpleRun(const char *command, const bool addToHistory)
   PySys_SetObject("stderr",_verr);
   PySys_SetObject("stdout",_vout);
 
-  PyObjWrapper verr(PyObject_CallMethod(_verr,"reset",""));
-  PyObjWrapper vout(PyObject_CallMethod(_vout,"reset",""));
-
   int ier = compile_command(command,_g);
 
   // Outputs are redirected on standards outputs (console)
@@ -308,23 +427,23 @@ const char * PyInterp_Interp::getNext()
 }
 
 /*!
-  \brief Get standard error output.
-  \return standard error output
+  \brief Set Python standard output device hook.
+  \param cb callback function
+  \param data callback function parameters
 */
-string PyInterp_Interp::getverr(){ 
-  //PyLockWrapper aLock(_tstate);
-  PyObjWrapper v(PycStringIO->cgetvalue(_verr));
-  string aRet(PyString_AsString(v));
-  return aRet;
+void PyInterp_Interp::setvoutcb(PyOutChanged* cb, void* data)
+{  
+  ((PyStdOut*)_vout)->_cb=cb;
+  ((PyStdOut*)_vout)->_data=data;
 }
 
 /*!
-  \brief Get standard output.
-  \return standard output
+  \brief Set Python standard error device hook.
+  \param cb callback function
+  \param data callback function parameters
 */
-string PyInterp_Interp::getvout(){  
-  //PyLockWrapper aLock(_tstate);
-  PyObjWrapper v(PycStringIO->cgetvalue(_vout));
-  string aRet(PyString_AsString(v));
-  return aRet;
+void PyInterp_Interp::setverrcb(PyOutChanged* cb, void* data)
+{  
+  ((PyStdOut*)_verr)->_cb=cb;
+  ((PyStdOut*)_verr)->_data=data;
 }
index e68d0d909c671e9df4a4468a109a758d86cc6896..397a7916775e4368c21026e78c63c1bdcac0bfb7 100644 (file)
@@ -38,6 +38,8 @@ public:
   ~PyLockWrapper();
 };
 
+typedef void PyOutChanged(void* data,char * c);
+
 class PYINTERP_EXPORT PyInterp_Interp
 {
 public:
@@ -57,8 +59,8 @@ public:
   PyLockWrapper GetLockWrapper();
 
   std::string getbanner(); 
-  std::string getverr();
-  std::string getvout();  
+  void setverrcb(PyOutChanged*,void*);
+  void setvoutcb(PyOutChanged*,void*);
 
   const char * getPrevious();
   const char * getNext();    
@@ -103,4 +105,12 @@ public:
   }
 };
 
+typedef struct {
+  PyObject_HEAD
+  int softspace;
+  PyOutChanged* _cb;
+  void* _data;
+  bool _iscerr;
+} PyStdOut;
+
 #endif // PYINTERP_INTERP_H
index 8eb1afe632746635d69273c2a7b909ff1d938ca0..f39c5f6b43461b2e44edaf49424ce55133f0258b 100644 (file)
@@ -27,6 +27,7 @@
 #include <SUIT_ResourceMgr.h>
 
 #include <qobjectlist.h>
+#include <QxGraph_CanvasView.h>
 
 /*!
   Constructor
@@ -67,8 +68,33 @@ QxGraph_Canvas::~QxGraph_Canvas()
 */
 void QxGraph_Canvas::addView(QCanvasView* theView)
 {
+  myViews.append( theView );
   QCanvas::addView(theView);
-  theView->setPaletteBackgroundColor(backgroundColor().light(120));
+  theView->setPaletteBackgroundColor(backgroundColor().light(120)); 
+}
+
+/*!
+  Remove view
+*/
+void QxGraph_Canvas::removeView( QCanvasView* theView )
+{
+  myViews.remove( theView );
+}
+
+/*!
+  Remove item
+*/
+void QxGraph_Canvas::removeItem( QCanvasItem* theItem )
+{
+  QValueList< QCanvasView* >::iterator anIter;
+  for ( anIter = myViews.begin(); anIter != myViews.end(); ++anIter )
+  {
+    QxGraph_CanvasView* aView = dynamic_cast<QxGraph_CanvasView*>( *anIter );
+    if ( aView )
+      aView->itemRemoved( theItem );
+  }
+
+  QCanvas::removeItem( theItem );
 }
 
 /*!
index a41ea829e16c49c53fd16127693e79768b7883ef..9dd6e2c10e818f144ebbe30e80c05283b77fadee 100644 (file)
@@ -38,13 +38,18 @@ class QXGRAPH_EXPORT QxGraph_Canvas : public QCanvas {
   QxGraph_Canvas(SUIT_ResourceMgr*);
   virtual ~QxGraph_Canvas();
 
-  void addView(QCanvasView* theView);
+  virtual void addView(QCanvasView* theView);
+  virtual void removeView(QCanvasView*);
 
   QPtrList<QxGraph_Prs> getPrsList() const { return myPrsList; }
   QxGraph_Prs*          getPrs(int theIndex = 0);
   void                  addPrs(QxGraph_Prs* thePrs) { myPrsList.append(thePrs); }
 
- private:
+  virtual void removeItem( QCanvasItem* );
+
+private:
+
+  QValueList< QCanvasView* > myViews;
   QPtrList<QxGraph_Prs> myPrsList;
 
 };
index 4e0f848a8581a3f50d0047e6e3ec5b509f11836a..d3873b8fb3085c79ca543264dccbbd4ea4b77861 100644 (file)
@@ -365,6 +365,35 @@ void QxGraph_CanvasView::contentsMouseMoveEvent(QMouseEvent* theEvent)
   }
 }
 
+/*!
+  This method is called by QxGraph_Canvas when item is removed. 
+  QxGraph_CanvasView updates its own data accordingly
+*/
+void QxGraph_CanvasView::itemRemoved( QCanvasItem* theItem )
+{
+  if ( myCurrentItem == theItem )
+    myCurrentItem = 0;
+
+  QxGraph_ActiveItem* anActiveItem = dynamic_cast<QxGraph_ActiveItem*>( theItem );
+  if ( anActiveItem )
+  {
+    if ( myHilightedItem == anActiveItem )
+      myHilightedItem = 0;
+    if ( mySelectedItem == anActiveItem )
+      mySelectedItem = 0;
+  }
+}
+
+void QxGraph_CanvasView::setSelectedItem( QxGraph_ActiveItem* theItem )
+{
+  mySelectedItem = theItem;
+}
+
+QxGraph_ActiveItem* QxGraph_CanvasView::getSelectedItem() const
+{
+  return mySelectedItem;
+}
+
 void QxGraph_CanvasView::contentsMouseReleaseEvent(QMouseEvent* theEvent)
 {
   QPoint aPoint = inverseWorldMatrix().map(theEvent->pos());
@@ -678,3 +707,6 @@ void QxGraph_ToolTip::maybeTip(const QPoint& theMousePos) {
       }
   }
 }
+
+
+
index 5bd14f7404f1dc120c4c24e56df9b07323da1da2..36cac2201c058d2e887fe83a3aafdb475adbfae4 100644 (file)
@@ -53,6 +53,11 @@ class QXGRAPH_EXPORT QxGraph_CanvasView : public QCanvasView {
   void activateGlobalPanning();
   void activateReset();
 
+  void itemRemoved( QCanvasItem* );
+
+  void setSelectedItem( QxGraph_ActiveItem* theItem );
+  QxGraph_ActiveItem* getSelectedItem() const;
+
  public slots:
   void onTimeout();
    //void changeBackground();
index 1480b202c5476f45116c54b61586a13ea7a64d58..3709afc7e5d668511245feac9d442e74070aba7a 100644 (file)
@@ -18,8 +18,6 @@
 //
 #include "QxGraph_ViewManager.h"
 
-int QxGraph_ViewManager::myMaxId = 0;
-
 /*!
   Constructor
 */
@@ -28,7 +26,6 @@ QxGraph_ViewManager::QxGraph_ViewManager( SUIT_Study* theStudy,
                                          SUIT_ViewModel* theViewModel )
   : SUIT_ViewManager( theStudy, theDesktop, theViewModel )
 {
-  myId = ++myMaxId;
 }
 
 /*!
index db3ed539eb1b8199a2d3e8eb1e3f4a8bc6572fa0..2e45cc3a641f2a06cfdf4efc1630f94c9c827773 100644 (file)
@@ -39,10 +39,6 @@ public:
 protected:
   void              setViewName(SUIT_ViewWindow* theView);
 
-private:
-  static int        myMaxId;
-  int               myId;
-
 };
 
 #endif
index 3cc14b5d8e4885c19162997139febfa34713278d..1e64a8b064ce0539c22135561d9f941c8bde24fd 100644 (file)
@@ -27,8 +27,7 @@
 
 #include <SUIT_ResourceMgr.h>
 #include <SUIT_Session.h>
-
-#include <QtxMultiAction.h>
+#include <SUIT_ToolButton.h>
 
 //QT Include
 #include <qlayout.h>
@@ -172,18 +171,16 @@ void QxGraph_ViewWindow::createActions()
 */
 void QxGraph_ViewWindow::createToolBar()
 {
-  QtxMultiAction* aScaleAction = new QtxMultiAction( this );
-  aScaleAction->insertAction( myActionsMap[FitAllId] );
-  aScaleAction->insertAction( myActionsMap[FitRectId] );
-  aScaleAction->insertAction( myActionsMap[ZoomId] );
-  myToolBar->addAction( aScaleAction );
-
-  QtxMultiAction* aPanningAction = new QtxMultiAction( this );
-  aPanningAction->insertAction( myActionsMap[PanId] );
-  aPanningAction->insertAction( myActionsMap[GlobalPanId] );
-  myToolBar->addAction( aPanningAction );
-
-  myToolBar->addAction( myActionsMap[ResetId] );
+  SUIT_ToolButton* aScaleBtn = new SUIT_ToolButton(myToolBar, "scale");
+  aScaleBtn->AddAction(myActionsMap[FitAllId]);
+  aScaleBtn->AddAction(myActionsMap[FitRectId]);
+  aScaleBtn->AddAction(myActionsMap[ZoomId]);
+
+  SUIT_ToolButton* aPanningBtn = new SUIT_ToolButton(myToolBar, "pan");
+  aPanningBtn->AddAction(myActionsMap[PanId]);
+  aPanningBtn->AddAction(myActionsMap[GlobalPanId]);
+
+  myActionsMap[ResetId]->addTo(myToolBar);
 }
 
 /*!
index 81d76a9f1230377f5df213a37a63a755be689d94..c647eba5ab0d6a734aa50cc2bcc738bd82a0120c 100644 (file)
 %Import QtGuimod.sip
 %Import QtXmlmod.sip
 
+%ExportedHeaderCode
+#include <SalomePyQt.h>
+%End
+
 class SALOME_Selection : QObject
 {
 %TypeHeaderCode
index e19ae9f3e3d83134474734f8e67cb977ed598dc3..e2298b803fdcae7051845a78f8eecb27ab156815 100644 (file)
@@ -27,7 +27,7 @@
 #include "SALOMEGUI_Swig.hxx"
 %}
 
-%include "pointer.i"
+%include "cpointer.i"
 
 /* Exception handler for all functions */
 %exception {
index cc889eec697c14a02dde75c4201170e0ffc4e58d..4708a666ed45bb00d416d24d5fec43ae7a4d5b05 100755 (executable)
@@ -589,6 +589,8 @@ void STD_Application::updateDesktopTitle()
 /*!Update commands status.*/
 void STD_Application::updateCommandsStatus()
 {
+  SUIT_Application::updateCommandsStatus();
+
   bool aHasStudy = activeStudy() != 0;
   bool aIsNeedToSave = false;
   if ( aHasStudy )
index 73cbacfc08b63376b7dcc03f3de9733f0a3f60d0..50a1efbda592911538edb3cc40ddac4f884d8a64 100755 (executable)
@@ -50,12 +50,10 @@ class STD_EXPORT STD_Application : public SUIT_Application
 
 public:
   enum { FileNewId, FileOpenId, FileCloseId, FileSaveId, FileSaveAsId, FileExitId,
-              ViewWindowsId, ViewToolBarsId, ViewStatusBarId, NewWindowId,
+        ViewWindowsId, ViewToolBarsId, ViewStatusBarId, NewWindowId,
          EditCutId, EditCopyId, EditPasteId, HelpAboutId, UserID };
 
-  enum { CloseSave, CloseDiscard, CloseCancel };
-
-public:
+ public:
   STD_Application();
   virtual ~STD_Application();
 
@@ -137,6 +135,8 @@ protected:
           MenuHelpId = 7
        };
 
+  enum { CloseCancel, CloseSave, CloseDiscard };
+
 protected:
   virtual void          createActions();
   virtual void          updateDesktopTitle();
index 0360eae2839532639afa3cf129cee3965b7e9daa..e619c05e17194cb48d671b6646fa13a0d1c43405 100644 (file)
@@ -63,7 +63,7 @@
     </message>
     <message>
         <source>QUE_DESK_EXIT</source>
-        <translation>Do you really want to quit ?</translation>
+        <translation>Are you sure you want to quit?</translation>
     </message>
     <message>
         <source>INF_INFO</source>
@@ -455,5 +455,13 @@ Try to use another file name.</translation>
         <translation>Document &quot;%1&quot; has been modified.
 Do you want to save changes?</translation>
     </message>
+    <message>
+        <source>CLOSE_STUDY</source>
+        <translation>Close active study</translation>
+    </message>
+    <message>
+        <source>CLOSE_QUESTION</source>
+        <translation>Do you want to save study before closing?</translation>
+    </message>
 </context>
 </TS>
index f8e0d9e9c6defe8ef72a29f5c2b8c25b5c7d4b3b..19a68e935a657cdad4a6e4d1d4227d15324c7bc4 100755 (executable)
@@ -26,6 +26,7 @@
 #include <QTimer>
 #include <QLabel>
 #include <QStatusBar>
+#include <QApplication>
 
 #include <QtxAction.h>
 #include <QtxActionMenuMgr.h>
@@ -36,9 +37,9 @@
 */
 SUIT_Application::SUIT_Application()
 : QObject( 0 ),
-myStudy( 0 ),
-myDesktop( 0 ),
-myStatusLabel( 0 )
+  myStudy( 0 ),
+  myDesktop( 0 ),
+  myStatusLabel( 0 )
 {
   if ( SUIT_Session::session() )
     SUIT_Session::session()->insertApplication( this );
@@ -49,8 +50,9 @@ myStatusLabel( 0 )
 */
 SUIT_Application::~SUIT_Application() 
 {
-  delete myStudy;
-  myStudy = 0;
+  SUIT_Study* s = myStudy;
+  setActiveStudy( 0 );
+  delete s;
 
   setDesktop( 0 );
 }
@@ -198,6 +200,13 @@ void SUIT_Application::onInfoClear()
     emit infoChanged( QString() );
 }
 
+/*!
+  Update status of the registerd actions
+*/
+void SUIT_Application::updateCommandsStatus()
+{
+}
+
 /*!
   Initialize with application arguments
   \param argc - number of application arguments
@@ -234,8 +243,11 @@ void SUIT_Application::setDesktop( SUIT_Desktop* desk )
 
   delete myDesktop;
   myDesktop = desk;
-  if ( myDesktop )
+  if ( myDesktop ) {
     connect( myDesktop, SIGNAL( activated() ), this, SLOT( onDesktopActivated() ) );
+    // Force desktop activation (NPAL16628)
+    QApplication::postEvent(myDesktop, new QEvent(QEvent::WindowActivate));
+  }
 }
 
 /*!
@@ -257,6 +269,13 @@ void SUIT_Application::setActiveStudy( SUIT_Study* study )
   if ( myStudy == study )
     return;
 
+  if ( myStudy )
+    disconnect( myStudy, SIGNAL( studyModified( SUIT_Study* ) ), 
+               this, SLOT( updateCommandsStatus() ) );
+  if ( study )
+    connect( study, SIGNAL( studyModified( SUIT_Study* ) ), 
+            this, SLOT( updateCommandsStatus() ) );
+           
   myStudy = study;
 }
 
@@ -631,3 +650,12 @@ void SUIT_Application::onDesktopActivated()
 {
   emit activated( this );
 }
+
+/*!
+  SLOT: is used for Help browsing
+*/
+void SUIT_Application::onHelpContextModule( const QString& /*theComponentName*/,
+                                            const QString& /*theFileName*/,
+                                           const QString& /*theContext*/ )
+{
+}
index 7d7827076699b3b90bb7c3a610e5855cc07351a3..f20dc56330d901e26552e2e12a4dd84c2e3df7f6 100755 (executable)
@@ -108,6 +108,10 @@ signals:
   void                  activated( SUIT_Application* );
   void                  infoChanged( QString );
 
+public slots:
+  virtual void          updateCommandsStatus();
+  virtual void          onHelpContextModule( const QString&, const QString&, const QString& = QString() );
+
 private slots:
   void                  onInfoClear();
 
index 891c20b8fbab38fa2ad5ffbd391400ce63142a94..6ca03d964b2078331379060b2c6ed5178f61bb23 100755 (executable)
@@ -38,10 +38,11 @@ SUIT_Session* SUIT_Session::mySession = 0;
 
 SUIT_Session::SUIT_Session()
 : QObject(),
-myResMgr( 0 ),
-myActiveApp( 0 ),
-myHandler( 0 ),
-myExitStatus( FROM_GUI )
+  myResMgr( 0 ),
+  myActiveApp( 0 ),
+  myHandler( 0 ),
+  myExitStatus( NORMAL ),
+  myExitFlags ( 0 )
 {
   SUIT_ASSERT( !mySession )
 
@@ -237,7 +238,7 @@ void SUIT_Session::onApplicationClosed( SUIT_Application* theApp )
 /*!
   Destroys session by closing all applications.
 */
-void SUIT_Session::closeSession( int mode )
+void SUIT_Session::closeSession( int mode, int flags )
 {
   AppList apps = myAppList;
   for ( AppList::const_iterator it = apps.begin(); it != apps.end(); ++it )
@@ -254,12 +255,27 @@ void SUIT_Session::closeSession( int mode )
     }
     else if ( mode == DONT_SAVE )
     {
-      myExitStatus = FROM_CORBA_SESSION;
-      //....
+      myExitStatus = FORCED;
     }
 
     app->closeApplication();
   }
+
+  myExitFlags = flags;
+}
+
+/*!
+  Get session exit flags.
+
+  By default, exit flags are set to 0. You can use pass any flags to the
+  closeSession() method if you need to process them later on application
+  quiting.
+
+  \return exit flags
+*/
+int SUIT_Session::exitFlags() const
+{
+  return myExitFlags;
 }
 
 /*! \retval return myHandler*/
index f62d697c1f1020542f7e8de496efaeaf5beeeac1..e6ece73e3447a46e9b2311c80962d6d6d38dd4ed 100755 (executable)
@@ -56,7 +56,7 @@ public:
   typedef LIB_HANDLE AppLib;
 
   enum { ASK = 0, SAVE, DONT_SAVE } CloseMode;
-  enum { FROM_GUI = 0, FROM_CORBA_SESSION } ExitStatus;
+  enum { NORMAL = 0, FORCED } ExitStatus;
 
 public:
   SUIT_Session();
@@ -71,7 +71,8 @@ public:
 
   SUIT_ResourceMgr*            resourceMgr() const;
 
-  void                         closeSession( int mode = ASK );
+  void                         closeSession( int mode = ASK, int flags = 0 );
+  int                          exitFlags() const;
 
   SUIT_ExceptionHandler*       handler() const;
 
@@ -106,6 +107,7 @@ private:
   static SUIT_Session*         mySession;
 
   int                          myExitStatus;
+  int                          myExitFlags;
 };
 
 #endif
index 8fc4f71ce5d438d82ed434017ed1307ccc92aba5..cc0531a807439957efe6b0ead218a8b06384b9f6 100755 (executable)
@@ -198,6 +198,15 @@ void SUIT_Study::setIsModified( const bool on )
   myIsModified = on;
 }
 
+/*!
+  Set study modified to \a on.
+ */
+void SUIT_Study::Modified()
+{
+  setIsModified( true );
+  sendChangesNotification();
+}
+
 /*!
   Set root object.
  */
@@ -512,16 +521,8 @@ bool SUIT_Study::hasTransaction() const
 }
 
 /*!
- * \brief Stores the study state
-*/
-int SUIT_Study::storeState()
-{
-  return -1;
-}
-/*!
- * \brief Restores the study state
-*/
+ * \brief Restores the study state.
+ */
 void SUIT_Study::restoreState(int /*savePoint*/)
 {
 }
index 97e12f493e4ba6bd104b01798ba37cfed14ef97f..4128bd7fe46aef188ad52508f809bdaf7e1d7703 100755 (executable)
@@ -48,6 +48,7 @@ public:
 
   virtual bool      isSaved()  const;
   virtual bool      isModified() const;
+  virtual void      Modified();
 
   virtual void      closeDocument( bool = true );
   virtual bool      openDocument( const QString& );
@@ -73,7 +74,6 @@ public:
   bool              suspend( SUIT_Operation* );
   bool              resume( SUIT_Operation* );
 
-  virtual int       storeState();
   virtual void      restoreState(int savePoint);
 
 signals:
@@ -85,10 +85,10 @@ protected:
   virtual void      setRoot( SUIT_DataObject* );
   virtual void      setStudyName( const QString& );
 
-       virtual void      operationStarted( SUIT_Operation* );
-       virtual void      operationAborted( SUIT_Operation* );
-       virtual void      operationStopped( SUIT_Operation* );
-       virtual void      operationCommited( SUIT_Operation* );
+  virtual void      operationStarted( SUIT_Operation* );
+  virtual void      operationAborted( SUIT_Operation* );
+  virtual void      operationStopped( SUIT_Operation* );
+  virtual void      operationCommited( SUIT_Operation* );
 
   virtual bool      openTransaction();
   virtual bool      abortTransaction();
index 61db632b68bdeb2ec467f615fb6b95c425983a0d..34ee0c10ca3ae191fa068dc2af8b5045e560de83 100755 (executable)
@@ -165,6 +165,12 @@ SUIT_ViewWindow* SUIT_ViewManager::createViewWindow()
   return aView;
 }
 
+/*! Get identifier */
+int SUIT_ViewManager::getId() const
+{
+  return myId;
+}
+
 /*!Create view window.*/
 void SUIT_ViewManager::createView()
 {
index cc6735d07b61d9e2f7e55c743b20959a0c321330..220c824f59bf6808733952a3d8cfd5b7d80de40c 100755 (executable)
@@ -77,6 +77,8 @@ public:
   virtual void     setShown( const bool );
   virtual void     setDestructiveClose( const bool );
 
+  int              getId() const;
+
 public slots:
   void             createView();
   void             closeAllViews();
index 868d194ba023e0433c8bded4deff181f45da217c..5f151f3b6edd6d4ff5a43710dc3d10d6fcc381ea 100755 (executable)
@@ -119,9 +119,9 @@ libSVTK_la_CPPFLAGS= \
        -I$(srcdir)/../VTKViewer
 
 libSVTK_la_LDFLAGS= \
+       $(VTK_LIBS) \
        $(QT_MT_LIBS) \
-       $(OCC_LIBS) \
-       $(VTK_LIBS)
+       $(CAS_KERNEL) $(CAS_VIEWER)
 
 libSVTK_la_LIBADD= ../Qtx/libqtx.la ../SUIT/libsuit.la ../OBJECT/libSalomeObject.la \
                   ../Prs/libSalomePrs.la ../VTKViewer/libVTKViewer.la
index e9032bdcdbf7d7d4939cb50d9f2570a932b842a9..fdfc6fec900cb0db71ead80a4ed0848ce486089e 100644 (file)
@@ -49,7 +49,6 @@
 #include <vtkCommand.h>
 #include <vtkCamera.h>
 #include <vtkRenderer.h>
-#include <vtkPicker.h>
 #include <vtkPointPicker.h>
 #include <vtkRenderWindow.h>
 #include <vtkRenderWindowInteractor.h>
@@ -79,38 +78,18 @@ namespace
     theInteractor->GetEventPosition(theX,theY);
     theY = theInteractor->GetSize()[1] - theY - 1;
   }
-
-  //==================================================================
-  // function : GetFirstSALOMEActor
-  // purpose  :
-  //==================================================================
-  struct THaveIO
-  {
-    bool
-    operator()(SALOME_Actor* theActor)
-    {
-      return theActor->hasIO();
-    }
-  };
-
-  inline
-  SALOME_Actor* 
-  GetFirstSALOMEActor(vtkPicker *thePicker)
-  {
-    return VTK::Find<SALOME_Actor>(thePicker->GetActors(),THaveIO());
-  }
 }
 
 
 vtkStandardNewMacro(SVTK_InteractorStyle);
 
+
 /*!
   Constructor
 */
 SVTK_InteractorStyle
 ::SVTK_InteractorStyle():
   mySelectionEvent(new SVTK_SelectionEvent()),
-  myPicker(vtkPicker::New()),
   myPointPicker(vtkPointPicker::New()),
   myLastHighlitedActor(NULL),
   myLastPreHighlitedActor(NULL),
@@ -119,7 +98,6 @@ SVTK_InteractorStyle
   myHighlightRotationPointActor(SVTK_Actor::New()),
   myRectBand(0)
 {
-  myPicker->Delete();
   myPointPicker->Delete();
 
   myPointPicker->SetTolerance(0.025);
@@ -514,11 +492,10 @@ SVTK_InteractorStyle
     else if ( myCurrRotationPointType == SVTK::StartPointSelection )
     {
       SVTK_SelectionEvent* aSelectionEvent = GetSelectionEventFlipY();
-      myPicker->Pick(aSelectionEvent->myX, 
-                    aSelectionEvent->myY, 
-                    0.0, 
-                    GetCurrentRenderer());
-      if ( SALOME_Actor* anActor = GetFirstSALOMEActor(myPicker.GetPointer()) )
+
+      SALOME_Actor* anActor = GetSelector()->Pick(aSelectionEvent, GetCurrentRenderer());
+      
+      if ( anActor )
       {
        myPointPicker->Pick( aSelectionEvent->myX,
                             aSelectionEvent->myY, 
@@ -1090,12 +1067,8 @@ SVTK_InteractorStyle
            this->FindPokedRenderer(aSelectionEvent->myX, aSelectionEvent->myY);
            Interactor->StartPickCallback();
            
-           myPicker->Pick(aSelectionEvent->myX, 
-                          aSelectionEvent->myY, 
-                          0.0, 
-                          GetCurrentRenderer());
-           //
-           SALOME_Actor* anActor = GetFirstSALOMEActor(myPicker.GetPointer());
+           SALOME_Actor* anActor = GetSelector()->Pick(aSelectionEvent, GetCurrentRenderer());
+
            aSelectionEvent->myIsRectangle = false;
 
            if(!myShiftState)
@@ -1228,12 +1201,7 @@ SVTK_InteractorStyle
 
   bool anIsChanged = false;
 
-  myPicker->Pick(aSelectionEvent->myX, 
-                aSelectionEvent->myY, 
-                0.0, 
-                GetCurrentRenderer());
-  
-  SALOME_Actor *anActor = GetFirstSALOMEActor(myPicker.GetPointer());
+  SALOME_Actor *anActor = GetSelector()->Pick(aSelectionEvent, GetCurrentRenderer());
 
   if ( myCurrRotationPointType == SVTK::StartPointSelection )
   {
index 60dbf4fe6ca0e86802b47e377765428c70c75007..b02941bfb72d25a64e02092d26dc6248d925338b 100644 (file)
@@ -102,7 +102,6 @@ class SVTK_EXPORT SVTK_ControllerOnKeyDown : public vtkObject{
   void operator=(const SVTK_ControllerOnKeyDown&);          //Not implemented
 };
 
-class vtkPicker;
 class vtkPointPicker;
 
 class SALOME_Actor;
@@ -334,8 +333,6 @@ class SVTK_EXPORT SVTK_InteractorStyle: public vtkInteractorStyle
 
   PSelectionEvent mySelectionEvent;
 
-  vtkSmartPointer<vtkPicker> myPicker;
-
   unsigned long                   myCurrRotationPointType;
   unsigned long                   myPrevRotationPointType;
 
index 9aaad409eeb3d19dc660ec8b3f1f176c99b17b14..fb5ced7f2d69f69b7189c30c00af63869f90ff85 100644 (file)
@@ -115,22 +115,29 @@ namespace
     // WorldToView() is called.  This is expensive, so we get the matrix once
     // and handle the transformation ourselves.
     vtkMatrix4x4 *aMatrix = vtkMatrix4x4::New();
-    aMatrix->DeepCopy(theRenderer->GetActiveCamera()->
-                     GetCompositePerspectiveTransformMatrix(1,0,1));
+    aMatrix->DeepCopy( theRenderer->GetActiveCamera()->
+                      GetCompositePerspectiveTransformMatrix( theRenderer->GetTiledAspectRatio(), 0, 1 ) );
 
     // We grab the z-buffer for the selection region all at once and probe the resulting array.
     float *aZPtr = theRenderer->GetRenderWindow()->
       GetZbufferData(theSelection[0], theSelection[1], theSelection[2], theSelection[3]);
 
     //cout<<"theSelection = {"<<theSelection[0]<<", "<<theSelection[1]<<", "<<theSelection[2]<<", "<<theSelection[3]<<"}\n";
-    /*
+
+    //cout<<"\t";
+    for(int iX = theSelection[0]; iX <= theSelection[2];  iX++){
+      //cout<<iX<<"\t";
+    }
+    //cout<<endl;
+
     for(int iY = theSelection[1]; iY <= theSelection[3];  iY++){
+      //cout<<iY<<"\t";
       for(int iX = theSelection[0]; iX <= theSelection[2];  iX++){
-       cout<<GetZ(aZPtr,theSelection,iX,iY)<<" ";
+       //cout<<std::setprecision(4)<<GetZ(aZPtr,theSelection,iX,iY)<<"\t";
       }
-      cout<<endl;
+      //cout<<endl;
     }
-    */
+
     for(vtkIdType aPntId = 0; aPntId < aNumPts; aPntId++){
       // perform conversion
       vtkFloatingPointType aX[4] = {1.0, 1.0, 1.0, 1.0};
index 9dd784fb10c1c74c68ee93032bb5168b51e21316..cab5ca695e67649dce67d9cff6276d5d3f4bd29f 100644 (file)
@@ -81,8 +81,6 @@ SVTK_Renderer
   myDevice->Delete();
   myTransform->Delete();
 
-  SetSelectionTolerance();
-
   myPointPicker->Delete();
   myCellPicker->Delete();
 
@@ -225,6 +223,7 @@ SVTK_Renderer
 {
   myInteractor = theInteractor;
   mySelector = theSelector;
+  SetSelectionTolerance();
 }
 
 /*!
@@ -348,13 +347,16 @@ SVTK_Renderer
 void
 SVTK_Renderer
 ::SetSelectionTolerance(const double& theTolNodes, 
-                       const double& theTolCell)
+                       const double& theTolCell,
+                       const double& theTolObjects)
 {
   myPointPicker->SetTolerance( theTolNodes );
   myCellPicker->SetTolerance( theTolCell );
 
   myPointRectPicker->SetTolerance( theTolNodes );
   myCellRectPicker->SetTolerance( theTolCell );
+
+  mySelector->SetTolerance( theTolObjects );
 }
 
 
index 3e44d5fe4d5f779fec6b3b8d6a2da2c5e0c84188..5c24cefa13b315a4a25202a2deaa174d9bd751c5 100644 (file)
@@ -122,7 +122,8 @@ class SVTK_EXPORT SVTK_Renderer : public vtkObject
   //! Setup requested tolerance for the picking
   void
   SetSelectionTolerance(const double& theTolNodes = 0.025, 
-                       const double& theTolCell = 0.001);
+                       const double& theTolCell = 0.001,
+                       const double& theTolObjects = 0.025);
 
   //----------------------------------------------------------------------------
   //! Adjust all intenal actors (trihedron and graduated rules) to the scene
index 86e9bc3358f8ab569524895942353ce1bd75867f..0f54789d67e52740246d5beda6afcb899ddb5af7 100644 (file)
 #include <TColStd_IndexedMapOfInteger.hxx>
 
 #include <vtkCallbackCommand.h>
+#include <vtkActorCollection.h>
+#include <vtkCellPicker.h>
+
+
+/*!
+  Find first SALOME_Actor from the end of actors collection
+*/
+inline
+SALOME_Actor* 
+GetLastSALOMEActor(vtkActorCollection* theCollection)
+{
+  if (theCollection) {
+    for (int i = theCollection->GetNumberOfItems() - 1; i >= 0; i--) {
+      if (SALOME_Actor* anActor = dynamic_cast<SALOME_Actor*>(theCollection->GetItemAsObject(i)))
+       if (anActor->hasIO())
+         return anActor;
+    }
+  }
+  return NULL;
+}
+
 
 /*!
   \return new SVTK_Selector
@@ -52,9 +73,14 @@ SVTK_Selector
   Default constructor
 */
 SVTK_SelectorDef
-::SVTK_SelectorDef()
+::SVTK_SelectorDef():
+  myPicker(vtkPicker::New()),
+  myCellPicker(vtkCellPicker::New())
 {
   mySelectionMode = ActorSelection;
+
+  myPicker->Delete();
+  myCellPicker->Delete();
 }
 
 /*!
@@ -517,3 +543,34 @@ SVTK_SelectorDef
   return Handle(VTKViewer_Filter)();
 }
 
+SALOME_Actor*
+SVTK_SelectorDef
+::Pick(const SVTK_SelectionEvent* theEvent, vtkRenderer* theRenderer) const
+{
+  myCellPicker->Pick(theEvent->myX,
+                    theEvent->myY, 
+                    0.0,
+                    theRenderer);
+  
+  vtkActorCollection* aListActors = myCellPicker->GetActors();
+  SALOME_Actor* anActor = GetLastSALOMEActor(aListActors);
+  
+  if (! anActor) {
+    myPicker->Pick(theEvent->myX,
+                  theEvent->myY, 
+                  0.0,
+                  theRenderer);
+    aListActors = myPicker->GetActors();
+    anActor = GetLastSALOMEActor(aListActors);
+  }
+  
+  return anActor;
+}
+
+void
+SVTK_SelectorDef
+::SetTolerance(const double& theTolerance) 
+{
+  myPicker->SetTolerance(theTolerance);        
+  myCellPicker->SetTolerance(theTolerance);
+}
index 17ab9be70df9d1a1c501ebdaea5169e5a5a25cab..0d65de7e3fcacd3e70feee2ed72e2424735de2f4 100644 (file)
@@ -41,6 +41,8 @@
 class Handle(VTKViewer_Filter);
 
 class SALOME_Actor;
+class SVTK_SelectionEvent;
+class vtkRenderer;
 class Handle(SALOME_InteractiveObject);
 
 //! Define an abstract interface for selection in SVTK package
@@ -206,6 +208,15 @@ public:
   virtual
   void 
   EndPickCallback() = 0;
+
+  //----------------------------------------------------------------------------
+  virtual
+  SALOME_Actor*
+  Pick(const SVTK_SelectionEvent* theEvent, vtkRenderer* theRenderer) const = 0;
+
+  virtual
+  void
+  SetTolerance(const double& theTolerance) = 0;
 };
 
 
index 6515a187b73b116b224a813e7e0b51afc74a80f7..70b95775636d3ed84719326f6c99c57347dd8390 100644 (file)
@@ -44,6 +44,8 @@ class SALOME_Actor;
 
 class SVTK_Viewer;
 class SVTK_ViewWindow;
+class vtkPicker;
+class vtkCellPicker;
 
 class SVTK_SelectorDef: public SVTK_Selector
 {
@@ -167,6 +169,15 @@ public:
   void 
   EndPickCallback();
 
+  //----------------------------------------------------------------------------
+  virtual
+  SALOME_Actor*
+  Pick(const SVTK_SelectionEvent* theEvent, vtkRenderer* theRenderer) const;
+
+  virtual
+  void
+  SetTolerance(const double& theTolerance);
+
 private:
   int mySelectionMode;
 
@@ -208,6 +219,9 @@ private:
 
   typedef std::map<TFilterID,Handle(VTKViewer_Filter)> TFilters;
   TFilters myFilters;
+
+  vtkSmartPointer<vtkPicker> myPicker;
+  vtkSmartPointer<vtkCellPicker> myCellPicker;
 };
 
 #endif
index e056d6d7783ed4122331dcdbb727bfc3054eb193..57e6e49eb3dd27fc82f03e32c86860f0e35209ea 100644 (file)
@@ -259,9 +259,10 @@ SVTK_View
 void
 SVTK_View
 ::SetSelectionTolerance(const double& theTolNodes, 
-                       const double& theTolCell)
+                       const double& theTolCell,
+                       const double& theTolObjects)
 {
-  GetRenderer()->SetSelectionTolerance(theTolNodes,theTolCell);
+  GetRenderer()->SetSelectionTolerance(theTolNodes, theTolCell, theTolObjects);
 }
 
 /*!
index af25bf5ea1944f5cfbe569f9349f8836d2398016..ff463ab5e8b7897ec2102a5bf29776d4639fed79 100644 (file)
@@ -258,7 +258,8 @@ public:
   //! Redirect the request to #SVTK_Renderer::SetPreselectionProp
   void
   SetSelectionTolerance(const double& theTolNodes = 0.025, 
-                       const double& theTolCell = 0.001);
+                       const double& theTolCell = 0.001,
+                       const double& theTolObjects = 0.025);
 
  protected:  
   int myDisplayMode;
index 9dee3827dddcc2cf7971f1d2e5805f9fa92f4807..be2e4468ffa250d7b2ff1823bbb085dc39e5fc86 100755 (executable)
 #include <vtkPointPicker.h>
 #include <vtkCellPicker.h>
 #include <vtkAxisActor2D.h>
+#include <vtkGL2PSExporter.h>
 
 #include "QtxAction.h"
 
 #include "SUIT_Session.h"
 #include "SUIT_MessageBox.h"
 #include "SUIT_Accel.h"
-
 #include "SUIT_Tools.h"
 #include "SUIT_ResourceMgr.h"
 #include "SUIT_Accel.h"
+#include "SUIT_OverrideCursor.h"
 
 #include "VTKViewer_Utilities.h"
 
@@ -719,6 +720,45 @@ SVTK_ViewWindow
   return myDumpImage;
 }
 
+QString SVTK_ViewWindow::filter() const
+{
+  return tr( "SVTK_IMAGE_FILES" );
+}
+
+bool SVTK_ViewWindow::dumpViewToFormat( const QImage& img, const QString& fileName, const QString& format )
+{
+  if ( format != "PS" && format != "EPS" && format != "PDF" )
+    return SUIT_ViewWindow::dumpViewToFormat( img, fileName, format );
+
+  SUIT_OverrideCursor wc;
+
+  vtkGL2PSExporter *anExporter = vtkGL2PSExporter::New();
+  anExporter->SetRenderWindow(getRenderWindow());
+
+  if ( format == "PS" ) {
+    anExporter->SetFileFormatToPS();
+    anExporter->CompressOff();
+  }
+
+  if ( format == "EPS" ) {
+    anExporter->SetFileFormatToEPS();
+    anExporter->CompressOff();
+  }
+
+  if ( format == "PDF" ) {
+    anExporter->SetFileFormatToPDF();
+  }
+
+  QString aFilePrefix(fileName);
+  QString anExtension(SUIT_Tools::extension(fileName));
+  aFilePrefix.truncate(aFilePrefix.length() - 1 - anExtension.length());
+  anExporter->SetFilePrefix(aFilePrefix.toLatin1().data());
+  anExporter->Write();
+  anExporter->Delete();
+
+  return true;
+}
+
 /*!
   \refresh QImage, containing all scene rendering in window
 */
@@ -759,9 +799,10 @@ SVTK_ViewWindow
 void
 SVTK_ViewWindow
 ::SetSelectionTolerance(const double& theTolNodes, 
-                       const double& theTolItems)
+                       const double& theTolItems,
+                       const double& theTolObjects)
 {
-  myView->SetSelectionTolerance(theTolNodes,theTolItems);
+  myView->SetSelectionTolerance(theTolNodes, theTolItems, theTolObjects);
 }
 
 /*!
index 86c46a116355e42be07425343e0b9610929fc971..811752c972fcd231f6268aee7948f9a228ebe2b0 100755 (executable)
@@ -65,6 +65,8 @@ class SVTK_EXPORT SVTK_ViewWindow : public SUIT_ViewWindow
   virtual
   ~SVTK_ViewWindow();
   
+  virtual QImage dumpView();
+
   //! To initialize #SVTK_ViewWindow instance
   virtual
   void
@@ -246,7 +248,8 @@ class SVTK_EXPORT SVTK_ViewWindow : public SUIT_ViewWindow
   virtual
   void
   SetSelectionTolerance(const double& theTolNodes = 0.025, 
-                       const double& theTolCell = 0.001);
+                       const double& theTolCell = 0.001,
+                       const double& theTolObjects = 0.025);
 
   //! Methods to save/restore visual parameters of a view (pan, zoom, etc.)
   virtual 
@@ -350,7 +353,9 @@ protected:
   void
   doSetVisualParameters( const QString& );
 
-  QImage dumpView();
+  virtual QString filter() const;
+  virtual bool dumpViewToFormat( const QImage& img, const QString& fileName, const QString& format );
+  
   virtual bool action( const int );
   
   SVTK_View* myView;
index e04b91df4450c7c22154b21a911f6253dfdaacb1..dad1d0226b45caa75c31f3edfe7323db438b278a 100644 (file)
         <source>DSC_BACK_VIEW</source>
         <translation>Back View</translation>
     </message>
+    <message>
+        <source>SVTK_IMAGE_FILES</source>
+        <translation>Images Files (*.bmp *.png *.jpg *.jpeg *.pdf *.ps *.eps)</translation>
+    </message>
 </context>
 <context>
     <name>SVTK_AxisWidget</name>
index 2ea76451500e1d5b586eb21a74e53a989496ccec..8ac9d21fd551869eb16a312301a4a3c505128c6e 100755 (executable)
@@ -47,7 +47,8 @@ salomeinclude_HEADERS= \
        SalomeApp_TypeFilter.h \
        SalomeApp_StudyPropertiesDlg.h \
        SalomeApp_CheckFileDlg.h \
-       SalomeApp_VisualState.h
+       SalomeApp_VisualState.h \
+       SalomeApp_ExitDlg.h
 
 dist_libSalomeApp_la_SOURCES= \
        SalomeApp_Module.cxx \
@@ -66,7 +67,8 @@ dist_libSalomeApp_la_SOURCES= \
        SalomeApp_StudyPropertiesDlg.cxx \
        SalomeApp_ListView.cxx \
        SalomeApp_CheckFileDlg.cxx \
-       SalomeApp_VisualState.cxx
+       SalomeApp_VisualState.cxx \
+       SalomeApp_ExitDlg.cxx
 
 MOC_FILES= \
        SalomeApp_Application_moc.cxx \
@@ -76,7 +78,9 @@ MOC_FILES= \
        SalomeApp_Study_moc.cxx \
        SalomeApp_StudyPropertiesDlg_moc.cxx \
        SalomeApp_ListView_moc.cxx \
-       SalomeApp_CheckFileDlg_moc.cxx
+       SalomeApp_CheckFileDlg_moc.cxx \
+       SalomeApp_ExitDlg_moc.cxx
+
 nodist_libSalomeApp_la_SOURCES= $(MOC_FILES)
 
 dist_salomeres_DATA= \
@@ -95,18 +99,16 @@ libSalomeApp_la_CPPFLAGS=$(PYTHON_INCLUDES) $(QT_INCLUDES) $(QWT_INCLUDES) \
        -I$(srcdir)/../PyConsole -I$(srcdir)/../TOOLSGUI \
        -I$(srcdir)/../PyInterp -I$(srcdir)/../Session -I$(top_builddir)/idl \
        -I$(srcdir)/../Event \
-       -I$(top_builddir)/salome_adm/unix @CORBA_CXXFLAGS@ @CORBA_INCLUDES@
+       -I$(srcdir)/../CASCatch \
+       -I$(top_builddir)/salome_adm/unix @CORBA_CXXFLAGS@ @CORBA_INCLUDES@ @LIBXML_INCLUDES@
 libSalomeApp_la_LDFLAGS=$(PYTHON_LIBS) $(QT_MT_LIBS) 
 libSalomeApp_la_LIBADD= $(KERNEL_LDFLAGS) -lOpUtil -lSALOMELocalTrace -lSalomeDSClient \
-       ../SUIT/libsuit.la ../STD/libstd.la ../CAM/libCAM.la \
+       ../SUIT/libsuit.la ../STD/libstd.la ../CAM/libCAM.la ../ObjBrowser/libObjBrowser.la \
        ../Prs/libSalomePrs.la ../SPlot2d/libSPlot2d.la ../GLViewer/libGLViewer.la \
        ../OCCViewer/libOCCViewer.la ../VTKViewer/libVTKViewer.la ../OBJECT/libSalomeObject.la \
        ../SVTK/libSVTK.la ../SOCC/libSOCC.la ../PyInterp/libPyInterp.la \
        ../PyConsole/libPyConsole.la ../LogWindow/libLogWindow.la \
        ../LightApp/libLightApp.la ../TOOLSGUI/libToolsGUI.la ../Session/libSalomeSession.la \
-       $(CAS_KERNEL)
-
-# QT 4 PORTING TODO
-#../ObjBrowser/libObjBrowser.la
+       ../CASCatch/libCASCatch.la $(CAS_KERNEL)
 
 EXTRA_DIST+=SalomeApp_PyInterp.h
index d1dda6abcaec4c891a2693fee2835585a9f3132a..e857a65af99bb8e8be23924bcbe29d0016188608 100644 (file)
@@ -30,6 +30,7 @@
 #include "SalomeApp_VisualState.h"
 #include "SalomeApp_StudyPropertiesDlg.h"
 #include "SalomeApp_LoadStudiesDlg.h"
+#include "SalomeApp_ExitDlg.h"
 
 #include <LightApp_Application.h>
 #include <LightApp_Preferences.h>
@@ -193,7 +194,7 @@ void SalomeApp_Application::start()
            PyConsole_Console* pyConsole = pythonConsole();
            if ( pyConsole ) {
               QString extension = fi.suffix().toLower();
-              if ( extension == "py" && fi.exists() ) {
+              if ( fi.exists() ) {
                 // execute python script
                 QString command = QString( "execfile(\"%1\")" ).arg( fi.absoluteFilePath() );
                 pyConsole->exec( command );
@@ -201,7 +202,8 @@ void SalomeApp_Application::start()
               else {
                 // import python module
                 QString command = QString( "import %1" ).arg( pyfiles[j] );
-                //QString command = QString( "import %1" ).arg( fi.baseName( true ) );
+               if ( extension == "py" )
+                 command = QString( "import %1" ).arg( fi.completeBaseName() );
                 pyConsole->exec( command );
               }
             }
@@ -378,6 +380,24 @@ bool SalomeApp_Application::onOpenDoc( const QString& aName )
   return res;
 }
 
+/*!
+  \brief Close application.
+*/
+void SalomeApp_Application::onExit()
+{
+  bool killServers = false;
+  bool result = true;
+
+  if ( exitConfirmation() ) {
+    SalomeApp_ExitDlg dlg( desktop() );
+    result = dlg.exec() == QDialog::Accepted;
+    killServers = dlg.isServersShutdown();
+  }
+  
+  if ( result )
+    SUIT_Session::session()->closeSession( SUIT_Session::ASK, killServers );
+}
+
 /*!SLOT. Load document.*/
 void SalomeApp_Application::onLoadDoc()
 {
index 5ed7e0fb9901bf50b54e2a2066f482ad8882922c..a965a652c6bca867bf8e0a0cf9be468193be3fa8 100644 (file)
@@ -33,7 +33,7 @@
 
 #include <CORBA.h>
 
-#include <SALOMEconfig.h>
+//#include <SALOMEconfig.h>
 //#include CORBA_CLIENT_HEADER(SALOMEDS)
 #include <SALOME_NamingService.hxx>
 
@@ -63,9 +63,9 @@ public:
   enum { MenuToolsId = 5 };
   enum { DumpStudyId = LightApp_Application::UserID, LoadScriptId, PropertiesId,
          CatalogGenId, RegDisplayId, SaveGUIStateId, FileLoadId, UserID };
-  enum { CloseUnload = STD_Application::CloseCancel+1 };
 
 protected:
+  enum { CloseUnload = CloseDiscard + 1 };
   enum { LoadStudyId = OpenStudyId + 1 };
 
 public:
@@ -99,6 +99,7 @@ public slots:
   virtual bool                        onOpenDoc( const QString& );
   virtual void                        onLoadDoc();
   virtual bool                        onLoadDoc( const QString& );
+  virtual void                        onExit();
   virtual void                        onCopy();
   virtual void                        onPaste();
   void                                onSaveGUIState();// called from VISU
index e1b8712747e4c5acc0faf7e67206f6f02757f143..77fd55627f13cddcad662bd0126a399d49ed51c2 100644 (file)
@@ -104,7 +104,7 @@ extern "C" SALOMEAPP_EXPORT SUIT_ExceptionHandler* getExceptionHandler()
   // We disable FPE signal as it was in earlier versions of SALOME. It is enabled
   // only in debug mode if the environment variable DISABLE_FPE is not set to 1.
   bool raiseFPE;
-#ifdef _DEBUG_
+#if defined(_DEBUG_) | defined(_DEBUG) //the Last for WNT default settings
   raiseFPE = true;
   char* envDisableFPE = getenv("DISABLE_FPE");
   if (envDisableFPE && atoi(envDisableFPE))
diff --git a/src/SalomeApp/SalomeApp_ExitDlg.cxx b/src/SalomeApp/SalomeApp_ExitDlg.cxx
new file mode 100644 (file)
index 0000000..bac5b2d
--- /dev/null
@@ -0,0 +1,106 @@
+// Copyright (C) 2005  OPEN CASCADE, CEA/DEN, EDF R&D, PRINCIPIA R&D
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File:      SalomeApp_ExitDlg.cxx
+// Author:    Margarita KARPUNINA, Open CASCADE S.A.S.
+//
+
+#include "SalomeApp_ExitDlg.h"
+
+#include <QLabel> 
+#include <QVBoxLayout> 
+#include <QHBoxLayout> 
+#include <QGridLayout> 
+#include <QPushButton>
+#include <QMessageBox>
+#include <QCheckBox>
+
+/*!
+ * \brief creates a Exit dialog box
+ * \param parent a parent widget
+ * \param modal bool argument, if true the dialog box is a modal dialog box
+ * \param f style flags
+ */
+SalomeApp_ExitDlg::SalomeApp_ExitDlg( QWidget* parent )
+  : QDialog( parent )
+{
+  setModal( true );
+  setWindowTitle( tr( "INF_DESK_EXIT" ) );
+
+  QVBoxLayout* m_vbL = new QVBoxLayout( this );
+  m_vbL->setMargin( 11 );
+  m_vbL->setSpacing( 6 );
+
+  QLabel* m_lIcon = new QLabel( this );
+  QPixmap pm = QMessageBox::standardIcon( QMessageBox::Question );
+  m_lIcon->setPixmap( pm );
+  m_lIcon->setScaledContents( false );
+  m_lIcon->setAlignment( Qt::AlignCenter );
+
+  QLabel* m_lDescr = new QLabel( this );
+  m_lDescr->setText( tr( "QUE_DESK_EXIT" ) );
+  m_lDescr->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) );
+
+  myServersShutdown = new QCheckBox( tr( "SHUTDOWN_SERVERS" ), this );
+  myServersShutdown->setChecked( true );
+  
+  QVBoxLayout* m_vl1 = new QVBoxLayout();
+  m_vl1->setMargin( 10 ); m_vl1->setSpacing( 16 );
+  m_vl1->addWidget( m_lDescr );
+  m_vl1->addWidget( myServersShutdown );
+
+  QHBoxLayout* m_hl1 = new QHBoxLayout();
+  m_hl1->setMargin( 0 ); m_hl1->setSpacing( 6 );
+  m_hl1->addWidget( m_lIcon );
+  m_hl1->addStretch(); 
+  m_hl1->addLayout( m_vl1 );
+  m_hl1->addStretch();
+
+  QPushButton* m_pbOk     = new QPushButton( tr( "BUT_OK" ),     this );
+  QPushButton* m_pbCancel = new QPushButton( tr( "BUT_CANCEL" ), this );
+
+  QGridLayout* m_hl2 = new QGridLayout();
+  m_hl2->setMargin( 0 ); m_hl2->setSpacing( 6 );
+  m_hl2->addWidget( m_pbOk, 0, 0 );
+  m_hl2->setColumnStretch( 1, 5 );
+  m_hl2->addWidget( m_pbCancel, 0, 2 );
+  
+  m_vbL->addStretch();
+  m_vbL->addLayout( m_hl1 );
+  m_vbL->addStretch();
+  m_vbL->addLayout( m_hl2 );
+
+  connect( m_pbOk,     SIGNAL( clicked() ), this, SLOT( accept() ) );
+  connect( m_pbCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
+}
+
+/*!
+ * \brief Destructor
+ */
+SalomeApp_ExitDlg::~SalomeApp_ExitDlg()
+{
+}
+
+/*!
+ * \brief get the check box status
+ */
+bool SalomeApp_ExitDlg::isServersShutdown()
+{
+  return myServersShutdown->isChecked();
+}
diff --git a/src/SalomeApp/SalomeApp_ExitDlg.h b/src/SalomeApp/SalomeApp_ExitDlg.h
new file mode 100644 (file)
index 0000000..3724e83
--- /dev/null
@@ -0,0 +1,48 @@
+// Copyright (C) 2005  OPEN CASCADE, CEA/DEN, EDF R&D, PRINCIPIA R&D
+// 
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either 
+// version 2.1 of the License.
+// 
+// This library is distributed in the hope that it will be useful 
+// but WITHOUT ANY WARRANTY; without even the implied warranty of 
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public  
+// License along with this library; if not, write to the Free Software 
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File:      SalomeApp_ExitDlg.h
+// Author:    Margarita KARPUNINA, Open CASCADE S.A.S.
+//
+
+#ifndef SALOMEAPP_EXITDLG_H
+#define SALOMEAPP_EXITDLG_H
+
+#include <QDialog> 
+
+class QCheckBox;
+
+/*!\class SalomeApp_ExitDlg
+ * \brief Describes a dialog box shown on question about quit application
+ */
+class SalomeApp_ExitDlg: public QDialog
+{
+  Q_OBJECT
+
+public:
+  SalomeApp_ExitDlg( QWidget* ) ;
+  ~SalomeApp_ExitDlg();
+
+  bool isServersShutdown();
+
+private:
+  QCheckBox* myServersShutdown;
+};
+
+#endif // SALOMEAPP_EXITDLG_H
+
index b37291fe7a3d32100f47f3da0159805885222803..840e44247392e807b9db7a64653f910d634b52d5 100644 (file)
@@ -305,6 +305,16 @@ bool SalomeApp_Study::isModified() const
   return isAnyChanged; 
 }
 
+/*!
+  Set study modified to \a on.
+ */
+void SalomeApp_Study::Modified()
+{
+  if(_PTR(Study) aStudy = studyDS())
+    aStudy->Modified();
+  LightApp_Study::Modified();
+}
+
 /*!
   \return if data model is saved
 */
@@ -725,6 +735,15 @@ std::string SalomeApp_Study::getVisualComponentName()
   return "Interface Applicative";
 }
 
+/*!
+ * \brief Restores the study state
+ */
+void SalomeApp_Study::restoreState(int savePoint)
+{
+  SalomeApp_VisualState((SalomeApp_Application*)application()).restoreState(savePoint);
+}
+
+
 /*!
   Slot: called on change of a root of a data model. Redefined from CAM_Study
 */
index 8de53b5f87e4f2e21ee914b0eb3a5dc5cb552a3b..cd2df276214423c3297562ce0201a40a44ac2c43 100644 (file)
@@ -50,6 +50,7 @@ public:
 
   virtual bool        isSaved()  const;
   virtual bool        isModified() const;
+  virtual void        Modified();
 
   virtual void        addComponent   ( const CAM_DataModel* dm);
 
@@ -72,6 +73,8 @@ public:
   void                setNameOfSavePoint(int savePoint, const QString& nameOfSavePoint);
   virtual std::string getVisualComponentName();
 
+  virtual void        restoreState(int savePoint);
+
 protected:
   virtual void        saveModuleData ( QString theModuleName, QStringList theListOfFiles );
   virtual void        openModuleData ( QString theModuleName, QStringList& theListOfFiles );
index 4596bb20a15ff47d12d191a78e3522f991be9d68..1ae7b2c3fed139836740f37b0dbb45ed9401c92a 100644 (file)
@@ -10,6 +10,7 @@
     <parameter name="xterm"      value="no"/>
     <parameter name="portkill"   value="no"/>
     <parameter name="killall"    value="no"/>
+    <parameter name="pinter"     value="no"/>
     <parameter name="noexcepthandler"  value="no"/>
     <parameter name="modules"    value="GEOM,SMESH,VISU,SUPERV,MED,COMPONENT,PYCALCULATOR"/>
     <parameter name="pyModules"  value=""/>
index 44eb9d3eec1de1ec64156ba661c642d5196fd25e..b8cd23a0d5498cb453cca20a633068377319fcf7 100644 (file)
@@ -94,7 +94,7 @@
     </message>
     <message>
         <source>APPCLOSE_SAVE</source>
-        <translation>&amp;Save&amp;&amp;Close</translation>
+        <translation>&amp;Save &amp;&amp; Close</translation>
     </message>
     <message>
         <source>TOT_DESK_FILE_LOAD_SCRIPT</source>
@@ -159,7 +159,7 @@ Do you want to reload it ?</translation>
     </message>
     <message>
         <source>APPCLOSE_DESCRIPTION</source>
-        <translation>Do you want to close or only unload the study</translation>
+        <translation>Do you want to close or unload study before closing?</translation>
     </message>
     <message>
         <source>PRP_DESK_PROPERTIES</source>
@@ -317,4 +317,11 @@ Do you want to reload it ?</translation>
         <translation>Study Properties</translation>
     </message>
 </context>
+<context>
+    <name>SalomeApp_ExitDlg</name>
+    <message>
+        <source>SHUTDOWN_SERVERS</source>
+        <translation>Shutdown standalone servers</translation>
+    </message>
+</context>
 </TS>
index 82ff8d1314b88b8691ff5180a4a9dd537cc66e01..6de26cbfa236567513effbe5e32535b89d2444b1 100755 (executable)
@@ -51,7 +51,7 @@ libSalomeSession_la_CPPFLAGS= $(QT_MT_INCLUDES) $(PYTHON_INCLUDES) \
        @CORBA_CXXFLAGS@ @CORBA_INCLUDES@ \
        -I$(top_builddir)/salome_adm/unix -I$(top_builddir)/idl \
        -I$(srcdir)/../Qtx -I$(srcdir)/../SUIT -I$(srcdir)/../Event \
-       -I$(srcdir)/../Style
+       -I$(srcdir)/../Style @LIBXML_INCLUDES@
 
 libSalomeSession_la_LDFLAGS= $(QT_MT_LIBS) $(KERNEL_LDFLAGS) -lSalomeNS \
        -lSalomeLifeCycleCORBA -lOpUtil -lSALOMELocalTrace -lSalomeCatalog \
@@ -68,7 +68,7 @@ SALOME_Session_Server_CPPFLAGS= $(libSalomeSession_la_CPPFLAGS)
 SALOME_Session_Server_LDADD= $(libSalomeSession_la_LDFLAGS) $(OMNIORB_LIBS) \
        $(HDF5_LIBS) -lSalomeContainer -lSalomeResourcesManager -lTOOLSDS \
        -lSalomeHDFPersist -lSalomeDSImpl -lSalomeGenericObj -lRegistry \
-       -lSalomeNotification -lSALOMEBasics ../Qtx/libqtx.la \
+       -lSalomeNotification -lSALOMEBasics -lSalomeLauncher ../Qtx/libqtx.la \
        $(top_builddir)/idl/libSalomeIDLGUI.la \
        libSalomeSession.la
 
index 243abbdd4affb38161eba2ea753be9a1fb0ee8f5..59893a5af26dd97a328f8a19a72e447bb3a85df7 100755 (executable)
 #include <Utils_ORB_INIT.hxx>
 #include <Utils_SINGLETON.hxx>
 #include <SALOME_NamingService.hxx>
+#include <SALOME_ModuleCatalog_impl.hxx>
+#include <OpUtil.hxx>
+#include <RegistryService.hxx>
+#include <ConnectionManager_i.hxx>
 
 #include <QDir>
 #include <QFile>
@@ -36,6 +40,7 @@
 #include <QMutex>
 #include <QWaitCondition>
 #include <QRegExp>
+#include <QTextStream>
 
 #include <Utils_SALOME_Exception.hxx>
 #include <Utils_CorbaException.hxx>
@@ -298,6 +303,101 @@ bool isFound( const char* str, int argc, char** argv )
   return false;
 }
 
+// shutdown standalone servers
+void shutdownServers( SALOME_NamingService* theNS )
+{
+  // get each Container from NamingService => shutdown it
+  // (the order is inverse to the order of servers initialization)
+  
+  CORBA::Object_var objS = theNS->Resolve("/Kernel/Session");
+  SALOME::Session_var session = SALOME::Session::_narrow(objS);
+  if (!CORBA::is_nil(session)) {
+    session->ping();
+    
+    string hostname = GetHostname();
+    //string containerName = "/Containers/" + hostname;
+    
+    // 1) SuperVisionContainer
+    //string containerNameSV = containerName + "/SuperVisionContainer";
+    //CORBA::Object_var objSV = theNS->Resolve(containerNameSV.c_str());
+    //Engines::Container_var SVcontainer = Engines::Container::_narrow(objSV) ;
+    //if ( !CORBA::is_nil(SVcontainer) && ( session->getPID() != SVcontainer->getPID() ) )
+    //  SVcontainer->Shutdown();
+    
+    // 2) FactoryServerPy
+    //string containerNameFSP = containerName + "/FactoryServerPy";
+    //CORBA::Object_var objFSP = theNS->Resolve(containerNameFSP.c_str());
+    //Engines::Container_var FSPcontainer = Engines::Container::_narrow(objFSP) ;
+    //if ( !CORBA::is_nil(FSPcontainer) && ( session->getPID() != FSPcontainer->getPID() ) )
+    //  FSPcontainer->Shutdown();
+    
+    // 3) FactoryServer
+    //string containerNameFS = containerName + "/FactoryServer";
+    //CORBA::Object_var objFS = theNS->Resolve(containerNameFS.c_str());
+    //Engines::Container_var FScontainer = Engines::Container::_narrow(objFS) ;
+    //if ( !CORBA::is_nil(FScontainer) && ( session->getPID() != FScontainer->getPID() ) )
+    //  FScontainer->Shutdown();
+    
+    // 4) ContainerManager
+    //CORBA::Object_var objCM=theNS->Resolve("/ContainerManager");
+    //Engines::ContainerManager_var contMan=Engines::ContainerManager::_narrow(objCM);
+    //if ( !CORBA::is_nil(contMan) && ( session->getPID() != contMan->getPID() ) )
+    //  contMan->ShutdownWithExit();
+
+    // 4) SalomeLauncher
+    CORBA::Object_var objSL = theNS->Resolve("/SalomeLauncher");
+    Engines::SalomeLauncher_var launcher = Engines::SalomeLauncher::_narrow(objSL);
+    if (!CORBA::is_nil(launcher) && (session->getPID() != launcher->getPID()))
+      launcher->Shutdown();
+
+    // 5) ConnectionManager
+    CORBA::Object_var objCnM=theNS->Resolve("/ConnectionManager");
+    Engines::ConnectionManager_var connMan=Engines::ConnectionManager::_narrow(objCnM);
+    if ( !CORBA::is_nil(connMan) && ( session->getPID() != connMan->getPID() ) )
+      connMan->ShutdownWithExit();
+    
+    // 6) SALOMEDS
+    CORBA::Object_var objSDS = theNS->Resolve("/myStudyManager");
+    SALOMEDS::StudyManager_var studyManager = SALOMEDS::StudyManager::_narrow(objSDS) ;
+    if ( !CORBA::is_nil(studyManager) && ( session->getPID() != studyManager->getPID() ) )
+      studyManager->ShutdownWithExit();
+    
+    // 7) ModuleCatalog
+    CORBA::Object_var objMC=theNS->Resolve("/Kernel/ModulCatalog");
+    SALOME_ModuleCatalog::ModuleCatalog_var catalog = SALOME_ModuleCatalog::ModuleCatalog::_narrow(objMC);
+    if ( !CORBA::is_nil(catalog) && ( session->getPID() != catalog->getPID() ) )
+      catalog->ShutdownWithExit();
+    
+    // 8) Registry
+    CORBA::Object_var objR = theNS->Resolve("/Registry");
+    Registry::Components_var registry = Registry::Components::_narrow(objR);
+    if ( !CORBA::is_nil(registry) && ( session->getPID() != registry->getPID() ) )
+      registry->end();
+    
+    // 9) Kill OmniNames
+    QString fileName( ::getenv ("OMNIORB_CONFIG") );
+    QString portNumber;
+    if ( !fileName.isEmpty() ) {
+      QFile aFile( fileName );
+      if ( aFile.open(QIODevice::ReadOnly) ) {
+       QRegExp re("InitRef = .*:([0-9]+)$");
+       QTextStream stream ( &aFile );
+       while ( !stream.atEnd() ) {
+         QString textLine = stream.readLine();
+         if ( re.indexIn( textLine ) > -1 )
+           portNumber = re.cap(1);
+       }
+       aFile.close();
+      }
+    }
+    if ( !portNumber.isEmpty() ) {
+      QString cmd = QString( "ps -eo pid,command | grep -v grep | grep -E \"omniNames.*%1\" | awk '{cmd=sprintf(\"kill -9 %s\",$1); system(cmd)}'" ).arg( portNumber );
+      system ( cmd.toLatin1().data() );
+    } 
+
+  }
+}
+
 // ---------------------------- MAIN -----------------------
 int main( int argc, char **argv )
 {
@@ -514,8 +614,11 @@ int main( int argc, char **argv )
        delete splash;
        splash = 0;
 
-       if ( result == SUIT_Session::FROM_GUI ) // desktop is closed by user from GUI
+       if ( result == SUIT_Session::NORMAL ) { // desktop is closed by user from GUI
+         if ( aGUISession->exitFlags() )
+           shutdownServers( _NS );
          break;
+       }
       }
 
       delete aGUISession;
index 5bf7be1562655f708ceee78abf7741027d8b96fe..93f09494405a6510040e5a9f39d4648a6e1a625f 100755 (executable)
 
 #include "Session_ServerThread.hxx"
 
-#include "SALOME_NamingService.hxx"
-#include "SALOME_Container_i.hxx"
-#include "SALOME_ContainerManager.hxx"
+#include <SALOME_NamingService.hxx>
+#include <SALOME_Container_i.hxx>
+#include <SALOME_Launcher.hxx>
 #include <SALOMEDSClient_ClientFactory.hxx>
-#include "SALOME_ModuleCatalog_impl.hxx"
-#include "RegistryService.hxx"
+#include <SALOME_ModuleCatalog_impl.hxx>
+#include <RegistryService.hxx>
+
 #include "Session_Session_i.hxx"
 #include "SalomeApp_Engine_i.hxx"
 
-#include "Utils_ORB_INIT.hxx"
-#include "Utils_SINGLETON.hxx"
-#include "Utils_SALOME_Exception.hxx"
-#include "OpUtil.hxx"
-#include "NamingService_WaitForServerReadiness.hxx"
-#include "utilities.h"
+#include <Utils_ORB_INIT.hxx>
+#include <Utils_SINGLETON.hxx>
+#include <Utils_SALOME_Exception.hxx>
+#include <OpUtil.hxx>
+#include <NamingService_WaitForServerReadiness.hxx>
+#include <utilities.h>
 
 #include <cstdlib>
 #include <ctime>
@@ -115,144 +116,131 @@ void Session_ServerThread::Init()
 {
   MESSAGE("Session_ServerThread::Init "<< _argv[0]); 
 
-  for (int i=0; i<_argc; i++) SCRUTE(_argv[i]);
-#ifndef WIN32
-  for (int i=0; i<NB_SRV_TYP; i++)
-#else
-  for (i=0; i<NB_SRV_TYP; i++)
-#endif
-    if (strcmp(_argv[0],_serverTypes[i])==0)
-      {
-       _servType = i;
-       MESSAGE("Server Thread type : "<<_serverTypes[i]);
-       switch (_servType)
-         {
-         case 0:  // Container
-           {
-             NamingService_WaitForServerReadiness(_NS,"/Registry");
-             NamingService_WaitForServerReadiness(_NS,"/ContainerManager");
-             ActivateContainer(_argc, _argv);
-             break;
-           }
-         case 1:  // ModuleCatalog
-           {
-             NamingService_WaitForServerReadiness(_NS,"/Registry");
-             ActivateModuleCatalog(_argc, _argv);
-             break;
-           }
-         case 2:  // Registry
-           {
-             NamingService_WaitForServerReadiness(_NS,"");
-             ActivateRegistry(_argc, _argv);
-             break;
-           }
-         case 3:  // SALOMEDS
-           {
-             NamingService_WaitForServerReadiness(_NS,"/Kernel/ModulCatalog");
-             ActivateSALOMEDS(_argc, _argv);
-             break;
-           }
-         case 4:  // Session
-           {
-             NamingService_WaitForServerReadiness(_NS,"/myStudyManager");
-             string containerName = "/Containers/";
-             containerName = containerName + GetHostname();
-             containerName = containerName + "/FactoryServer";
-             NamingService_WaitForServerReadiness(_NS,containerName);
-             ActivateSession(_argc, _argv);
-             break;
-           }
-         case 5: // SalomeApp_Engine
-           {
-             NamingService_WaitForServerReadiness(_NS,"/myStudyManager");
-             ActivateEngine(_argc, _argv);
-             break;
-           }
-         case 6: // Container Manager
-           {
-             NamingService_WaitForServerReadiness(_NS,"");
-             ActivateContainerManager(_argc, _argv);
-             break;
-           }
-         default:
-           {
-             ASSERT(0);
-             break;
-           }
-         }
+  int i;
+  for (i=0; i<_argc; i++) SCRUTE(_argv[i]);
+
+  for (i=0; i<NB_SRV_TYP; i++) {
+    if (strcmp(_argv[0],_serverTypes[i])==0) {
+      _servType = i;
+      MESSAGE("Server Thread type : "<<_serverTypes[i]);
+      switch (_servType) {
+      case 0:  // Container
+       {
+         NamingService_WaitForServerReadiness(_NS,"/Registry");
+         NamingService_WaitForServerReadiness(_NS,"/ContainerManager");
+         ActivateContainer(_argc, _argv);
+         break;
+       }
+      case 1:  // ModuleCatalog
+       {
+         NamingService_WaitForServerReadiness(_NS,"/Registry");
+         ActivateModuleCatalog(_argc, _argv);
+         break;
+       }
+      case 2:  // Registry
+       {
+         NamingService_WaitForServerReadiness(_NS,"");
+         ActivateRegistry(_argc, _argv);
+         break;
+       }
+      case 3:  // SALOMEDS
+       {
+         NamingService_WaitForServerReadiness(_NS,"/Kernel/ModulCatalog");
+         ActivateSALOMEDS(_argc, _argv);
+         break;
+       }
+      case 4:  // Session
+       {
+         NamingService_WaitForServerReadiness(_NS,"/myStudyManager");
+         string containerName = "/Containers/";
+         containerName = containerName + GetHostname();
+         containerName = containerName + "/FactoryServer";
+         NamingService_WaitForServerReadiness(_NS,containerName);
+         ActivateSession(_argc, _argv);
+         break;
+       }
+      case 5: // SalomeApp_Engine
+       {
+         NamingService_WaitForServerReadiness(_NS,"/myStudyManager");
+         ActivateEngine(_argc, _argv);
+         break;
+       }
+      case 6: // Container Manager
+       {
+         NamingService_WaitForServerReadiness(_NS,"");
+         ActivateContainerManager(_argc, _argv);
+         break;
+       }
+      default:
+       {
+         ASSERT(0);
+         break;
+       }
       }
+    }
+  }
 }
 
 void Session_ServerThread::ActivateModuleCatalog(int argc,
                                                 char ** argv)
 {
-  try
-    {
-      MESSAGE("ModuleCatalog thread started");
-      // allocation on heap to allow destruction by POA
-
-      SALOME_ModuleCatalogImpl* Catalogue_i
-       = new SALOME_ModuleCatalogImpl(argc, argv);
-
-      // Tell the POA that the objects are ready to accept requests.
-
-      _root_poa->activate_object (Catalogue_i);
-
-      CORBA::Object_ptr myCata = Catalogue_i->_this();
-      _NS->Register(myCata ,"/Kernel/ModulCatalog");
-    }
-  catch(CORBA::SystemException&)
-    {
-      INFOS( "Caught CORBA::SystemException." );
-    }
-  catch(CORBA::Exception&)
-    {
-      INFOS( "Caught CORBA::Exception." );
-    }
-  catch(omniORB::fatalException& fe)
-    {
-      INFOS( "Caught omniORB::fatalException:" );
-      INFOS( "  file: " << fe.file() );
-      INFOS( "  line: " << fe.line() );
-      INFOS( "  mesg: " << fe.errmsg() );
-    }
-  catch(...) 
-    {
-      INFOS( "Caught unknown exception." );
-    }
+  try {
+    MESSAGE("ModuleCatalog thread started");
+    // allocation on heap to allow destruction by POA
+    
+    SALOME_ModuleCatalogImpl* Catalogue_i
+      = new SALOME_ModuleCatalogImpl(argc, argv);
+    
+    // Tell the POA that the objects are ready to accept requests.
+    
+    _root_poa->activate_object (Catalogue_i);
+    
+    CORBA::Object_ptr myCata = Catalogue_i->_this();
+    _NS->Register(myCata ,"/Kernel/ModulCatalog");
+  }
+  catch(CORBA::SystemException&) {
+    INFOS( "Caught CORBA::SystemException." );
+  }
+  catch(CORBA::Exception&) {
+    INFOS( "Caught CORBA::Exception." );
+  }
+  catch(omniORB::fatalException& fe) {
+    INFOS( "Caught omniORB::fatalException:" );
+    INFOS( "  file: " << fe.file() );
+    INFOS( "  line: " << fe.line() );
+    INFOS( "  mesg: " << fe.errmsg() );
+  }
+  catch(...) {
+    INFOS( "Caught unknown exception." );
+  }
 }
 
 void Session_ServerThread::ActivateSALOMEDS(int argc,
                                            char ** argv)
 {
-  try
-    {
-      MESSAGE("SALOMEDS thread started");
-      // We allocate the objects on the heap.  Since these are reference
-      // counted objects, they will be deleted by the POA when they are no
-      // longer needed.    
-
-      ClientFactory::createStudyManager(_orb,_root_poa);
-    }
-  catch(CORBA::SystemException&)
-    {
-      INFOS( "Caught CORBA::SystemException." );
-    }
-  catch(CORBA::Exception&)
-    {
-      INFOS( "Caught CORBA::Exception." );
-    }
-  catch(omniORB::fatalException& fe)
-    {
-      INFOS( "Caught omniORB::fatalException:" );
-      INFOS( "  file: " << fe.file() );
-      INFOS( "  line: " << fe.line() );
-      INFOS( "  mesg: " << fe.errmsg() );
-    }
-  catch(...) 
-    {
-      INFOS( "Caught unknown exception." );
-    }
+  try {
+    MESSAGE("SALOMEDS thread started");
+    // We allocate the objects on the heap.  Since these are reference
+    // counted objects, they will be deleted by the POA when they are no
+    // longer needed.    
+    
+    ClientFactory::createStudyManager(_orb,_root_poa);
+  }
+  catch(CORBA::SystemException&) {
+    INFOS( "Caught CORBA::SystemException." );
+  }
+  catch(CORBA::Exception&) {
+    INFOS( "Caught CORBA::Exception." );
+  }
+  catch(omniORB::fatalException& fe) {
+    INFOS( "Caught omniORB::fatalException:" );
+    INFOS( "  file: " << fe.file() );
+    INFOS( "  line: " << fe.line() );
+    INFOS( "  mesg: " << fe.errmsg() );
+  }
+  catch(...) {
+    INFOS( "Caught unknown exception." );
+  }
 }
 
 void Session_ServerThread::ActivateRegistry(int argc,
@@ -260,198 +248,169 @@ void Session_ServerThread::ActivateRegistry(int argc,
 {
   MESSAGE("Registry thread started");
   SCRUTE(argc); 
-  if( argc<3 )
-    {
-      INFOS("you must provide the Salome session name when you call SALOME_Registry_Server");
-      throw CommException("you must provide the Salome session name when you call SALOME_Registry_Server");
-    }
+  if ( argc<3 ) {
+    INFOS("you must provide the Salome session name when you call SALOME_Registry_Server");
+    throw CommException("you must provide the Salome session name when you call SALOME_Registry_Server");
+  }
   const char *ptrSessionName=0;
 
   int k=0 ;
-  for ( k=1 ; k<argc ; k++ )
-    {
-      if( strcmp(argv[k],"--salome_session")==0 )
-       {
-         ptrSessionName=argv[k+1];
-         break;
-       }
+  for ( k=1 ; k<argc ; k++ ) {
+    if ( strcmp(argv[k],"--salome_session")==0 ) {
+      ptrSessionName=argv[k+1];
+      break;
     }
+  }
   ASSERT(ptrSessionName) ;
   ASSERT(strlen( ptrSessionName )>0);
   const char *registryName = "Registry";
   Registry::Components_var varComponents;
-  try
-    {
-      RegistryService *ptrRegistry = SINGLETON_<RegistryService>::Instance();
-      ptrRegistry->SessionName( ptrSessionName );
-      varComponents = ptrRegistry->_this();
-      // The RegistryService must not already exist.
-           
-      try
-       {
-         CORBA::Object_var pipo = _NS->Resolve( registryName );
-         if (CORBA::is_nil(pipo) )  throw ServiceUnreachable();
-         INFOS("RegistryService servant already existing" );
-         ASSERT(0);
-       }
-      catch( const ServiceUnreachable &/*ex*/ )
-       {
-       }
-      catch( const CORBA::Exception &/*exx*/ )
-       {
-       }
-      string absoluteName = string("/") + registryName;
-      _NS->Register( varComponents , absoluteName.c_str() );
-      MESSAGE("On attend les requetes des clients");
-    }
-  catch( const SALOME_Exception &ex )
-    {
-      INFOS( "Communication Error : " << ex.what() );
+  try {
+    RegistryService *ptrRegistry = SINGLETON_<RegistryService>::Instance();
+    ptrRegistry->SessionName( ptrSessionName );
+    ptrRegistry->SetOrb(_orb);
+    varComponents = ptrRegistry->_this();
+    // The RegistryService must not already exist.
+    
+    try {
+      CORBA::Object_var pipo = _NS->Resolve( registryName );
+      if (CORBA::is_nil(pipo) )  throw ServiceUnreachable();
+      INFOS("RegistryService servant already existing" );
       ASSERT(0);
     }
+    catch( const ServiceUnreachable &/*ex*/ ) {
+    }
+    catch( const CORBA::Exception &/*exx*/ ) {
+    }
+    string absoluteName = string("/") + registryName;
+    _NS->Register( varComponents , absoluteName.c_str() );
+    MESSAGE("On attend les requetes des clients");
+  }
+  catch( const SALOME_Exception &ex ) {
+    INFOS( "Communication Error : " << ex.what() );
+    ASSERT(0);
+  }
 }
 
 void Session_ServerThread::ActivateContainerManager(int argc,
                                             char ** argv)
 {
-  try
-    {
-      PortableServer::POA_var root_poa=PortableServer::POA::_the_root_poa();
-      cout << "ActivateContainerManager ......!!!! " << endl;
-      SALOME_ContainerManager * myContainer 
-       = new SALOME_ContainerManager(_orb);
-    }
-  catch(CORBA::SystemException&)
-    {
-      INFOS("Caught CORBA::SystemException.");
-    }
-  catch(PortableServer::POA::WrongPolicy&)
-    {
-      INFOS("Caught CORBA::WrongPolicyException.");
-    }
-  catch(PortableServer::POA::ServantAlreadyActive&)
-    {
-      INFOS("Caught CORBA::ServantAlreadyActiveException");
-    }
-  catch(CORBA::Exception&)
-    {
-      INFOS("Caught CORBA::Exception.");
-    }
-  catch(...)
-    {
-      INFOS("Caught unknown exception.");
-    }
+  try {
+    PortableServer::POA_var root_poa=PortableServer::POA::_the_root_poa();
+    cout << "Activate SalomeLauncher ......!!!! " << endl;
+    SALOME_Launcher * myContainer = new SALOME_Launcher(_orb,root_poa);
+  }
+  catch(CORBA::SystemException&) {
+    INFOS("Caught CORBA::SystemException.");
+  }
+  catch(PortableServer::POA::WrongPolicy&) {
+    INFOS("Caught CORBA::WrongPolicyException.");
+  }
+  catch(PortableServer::POA::ServantAlreadyActive&) {
+    INFOS("Caught CORBA::ServantAlreadyActiveException");
+  }
+  catch(CORBA::Exception&) {
+    INFOS("Caught CORBA::Exception.");
+  }
+  catch(...) {
+    INFOS("Caught unknown exception.");
+  }
 }
 
 void Session_ServerThread::ActivateContainer(int argc,
                                             char ** argv)
 {
-  try
-    {
-      MESSAGE("Container thread started");
-
-      // get or create the child POA
-
-      PortableServer::POA_var factory_poa;
-      try
-       {
-         factory_poa = _root_poa->find_POA("factory_poa",0);
-         // 0 = no activation (already done if exists)
-       }
-      catch (PortableServer::POA::AdapterNonExistent&)
-       {
-         MESSAGE("factory_poa does not exists, create...");
-         // define policy objects     
-         PortableServer::ImplicitActivationPolicy_var implicitActivation =
-           _root_poa->create_implicit_activation_policy(
-                               PortableServer::NO_IMPLICIT_ACTIVATION);
-         // default = NO_IMPLICIT_ACTIVATION
-         PortableServer::ThreadPolicy_var threadPolicy =
-           _root_poa->create_thread_policy(PortableServer::ORB_CTRL_MODEL);
-         // default = ORB_CTRL_MODEL, other choice SINGLE_THREAD_MODEL
+  try {
+    MESSAGE("Container thread started");
+    
+    // get or create the child POA
+    
+    PortableServer::POA_var factory_poa;
+    try {
+      factory_poa = _root_poa->find_POA("factory_poa",0);
+      // 0 = no activation (already done if exists)
+    }
+    catch (PortableServer::POA::AdapterNonExistent&) {
+      MESSAGE("factory_poa does not exists, create...");
+      // define policy objects     
+      PortableServer::ImplicitActivationPolicy_var implicitActivation =
+       _root_poa->create_implicit_activation_policy(PortableServer::NO_IMPLICIT_ACTIVATION);
+      // default = NO_IMPLICIT_ACTIVATION
+      PortableServer::ThreadPolicy_var threadPolicy =
+       _root_poa->create_thread_policy(PortableServer::ORB_CTRL_MODEL);
+      // default = ORB_CTRL_MODEL, other choice SINGLE_THREAD_MODEL
       
-         // create policy list
-         CORBA::PolicyList policyList;
-         policyList.length(2);
-         policyList[0] = PortableServer::ImplicitActivationPolicy::
-           _duplicate(implicitActivation);
-         policyList[1] = PortableServer::ThreadPolicy::
-           _duplicate(threadPolicy);
+      // create policy list
+      CORBA::PolicyList policyList;
+      policyList.length(2);
+      policyList[0] = PortableServer::ImplicitActivationPolicy::
+       _duplicate(implicitActivation);
+      policyList[1] = PortableServer::ThreadPolicy::
+       _duplicate(threadPolicy);
       
-         PortableServer::POAManager_var nil_mgr
-           = PortableServer::POAManager::_nil();
-         factory_poa = _root_poa->create_POA("factory_poa",
-                                             nil_mgr,
-                                             policyList);
-         //with nil_mgr instead of pman,
-         //a new POA manager is created with the new POA
+      PortableServer::POAManager_var nil_mgr
+       = PortableServer::POAManager::_nil();
+      factory_poa = _root_poa->create_POA("factory_poa",
+                                         nil_mgr,
+                                         policyList);
+      //with nil_mgr instead of pman,
+      //a new POA manager is created with the new POA
       
-         // destroy policy objects
-         implicitActivation->destroy();
-         threadPolicy->destroy();
-
-         // obtain the factory poa manager
-         PortableServer::POAManager_var pmanfac = factory_poa->the_POAManager();
-         pmanfac->activate();
-         MESSAGE("pmanfac->activate()");
-       }
+      // destroy policy objects
+      implicitActivation->destroy();
+      threadPolicy->destroy();
       
-      char *containerName = "";
-      if (argc >1) 
-       {
-         containerName = argv[1];
-       }
-      
-      Engines_Container_i * myContainer 
-       = new Engines_Container_i(_orb, _root_poa, containerName , argc , argv , true , false);
-    }
-  catch(CORBA::SystemException&)
-    {
-      INFOS("Caught CORBA::SystemException.");
-    }
-  catch(PortableServer::POA::WrongPolicy&)
-    {
-      INFOS("Caught CORBA::WrongPolicyException.");
-    }
-  catch(PortableServer::POA::ServantAlreadyActive&)
-    {
-      INFOS("Caught CORBA::ServantAlreadyActiveException");
+      // obtain the factory poa manager
+      PortableServer::POAManager_var pmanfac = factory_poa->the_POAManager();
+      pmanfac->activate();
+      MESSAGE("pmanfac->activate()");
     }
-  catch(CORBA::Exception&)
-    {
-      INFOS("Caught CORBA::Exception.");
-    }
-  catch(...)
-    {
-      INFOS("Caught unknown exception.");
+    
+    char *containerName = "";
+    if (argc >1) {
+      containerName = argv[1];
     }
+    
+    Engines_Container_i * myContainer 
+      = new Engines_Container_i(_orb, _root_poa, containerName , argc , argv , true , false);
+  }
+  catch(CORBA::SystemException&) {
+    INFOS("Caught CORBA::SystemException.");
+  }
+  catch(PortableServer::POA::WrongPolicy&) {
+    INFOS("Caught CORBA::WrongPolicyException.");
+  }
+  catch(PortableServer::POA::ServantAlreadyActive&) {
+    INFOS("Caught CORBA::ServantAlreadyActiveException");
+  }
+  catch(CORBA::Exception&) {
+    INFOS("Caught CORBA::Exception.");
+  }
+  catch(...) {
+    INFOS("Caught unknown exception.");
+  }
 }
 
 void Session_ServerThread::ActivateEngine(int /*argc*/, char ** /*argv*/)
 {
-    try
-      {
-       MESSAGE("SalomeApp_Engine thread started");
-       SalomeApp_Engine_i* anEngine = new SalomeApp_Engine_i();
-       /*PortableServer::ObjectId_var id = */_root_poa->activate_object( anEngine );
-       MESSAGE("poa->activate_object( SalomeApp_Engine )");
-      
-       CORBA::Object_var obj = anEngine->_this();
-       _NS->Register( obj ,"/SalomeAppEngine");
-
-      }
-    catch (CORBA::SystemException&)
-      {
-       INFOS("Caught CORBA::SystemException.");
-      }
-    catch (CORBA::Exception&)
-      {
-       INFOS("Caught CORBA::Exception.");
-      }
-    catch (...)
-      {
-       INFOS("Caught unknown exception.");
-      }  
+  try {
+    MESSAGE("SalomeApp_Engine thread started");
+    SalomeApp_Engine_i* anEngine = new SalomeApp_Engine_i();
+    /*PortableServer::ObjectId_var id = */_root_poa->activate_object( anEngine );
+    MESSAGE("poa->activate_object( SalomeApp_Engine )");
+
+    CORBA::Object_var obj = anEngine->_this();
+    _NS->Register( obj ,"/SalomeAppEngine");
+  }
+  catch (CORBA::SystemException&) {
+    INFOS("Caught CORBA::SystemException.");
+  }
+  catch (CORBA::Exception&) {
+    INFOS("Caught CORBA::Exception.");
+  }
+  catch (...) {
+    INFOS("Caught unknown exception.");
+  }
 }
 
 void Session_ServerThread::ActivateSession(int argc,
@@ -485,30 +444,26 @@ Session_SessionThread::~Session_SessionThread()
 void Session_SessionThread::ActivateSession(int argc,
                                            char ** argv)
 {
-    try
-      {
-       MESSAGE("Session thread started");
-       SALOME_Session_i * mySALOME_Session
-         = new SALOME_Session_i(argc, argv, _orb, _root_poa, _GUIMutex, _GUILauncher) ;
-       PortableServer::ObjectId_var mySALOME_Sessionid
-         = _root_poa->activate_object(mySALOME_Session);
-       MESSAGE("poa->activate_object(mySALOME_Session)");
-      
-       CORBA::Object_var obj = mySALOME_Session->_this();
-       CORBA::String_var sior(_orb->object_to_string(obj));
-      
-       mySALOME_Session->NSregister();
-         }
-    catch (CORBA::SystemException&)
-      {
-       INFOS("Caught CORBA::SystemException.");
-      }
-    catch (CORBA::Exception&)
-      {
-       INFOS("Caught CORBA::Exception.");
-      }
-    catch (...)
-      {
-       INFOS("Caught unknown exception.");
-      }  
+  try {
+    MESSAGE("Session thread started");
+    SALOME_Session_i * mySALOME_Session
+      = new SALOME_Session_i(argc, argv, _orb, _root_poa, _GUIMutex, _GUILauncher) ;
+    PortableServer::ObjectId_var mySALOME_Sessionid
+      = _root_poa->activate_object(mySALOME_Session);
+    MESSAGE("poa->activate_object(mySALOME_Session)");
+    
+    CORBA::Object_var obj = mySALOME_Session->_this();
+    CORBA::String_var sior(_orb->object_to_string(obj));
+    
+    mySALOME_Session->NSregister();
+  }
+  catch (CORBA::SystemException&) {
+    INFOS("Caught CORBA::SystemException.");
+  }
+  catch (CORBA::Exception&) {
+    INFOS("Caught CORBA::Exception.");
+  }
+  catch (...) {
+    INFOS("Caught unknown exception.");
+  }
 }
index fa7a224e41c0c4cedb20993a17b9315117d07198..efef52f60a3fda705e0e88c56a9af9bb68644eea 100755 (executable)
@@ -69,6 +69,7 @@ public:
   CORBA::Long GetActiveStudyId();
 
   void ping(){};
+  CORBA::Long getPID() { return (CORBA::Long)getpid(); };
 
   //! Restors a visual state of the study at theSavePoint
   bool restoreVisualState(CORBA::Long theSavePoint);
index 9dfa3b47f3a8db449fd5fd0a437e420508948730..0689ab67aef41c6bebcae46b0758a824725c86e8 100644 (file)
@@ -47,6 +47,9 @@
 #include <vtkCell.h>
 #include <vtkPlane.h>
 #include <vtkMath.h>
+#include <vtkCellArray.h>
+#include <vtkTriangle.h>
+#include <vtkOrderedTriangulator.h>
 
 #ifdef _DEBUG_
 static int DEBUG_TRIA_EXECUTE = 0;
@@ -81,31 +84,117 @@ namespace
   typedef std::vector<TPolygon> TPolygons;
 }
 
-/*!
-  Constructor
-*/
+
+//----------------------------------------------------------------------------
 VTKViewer_Triangulator
 ::VTKViewer_Triangulator():
-  myInput(NULL),
-  myCellId(-1),
-  myShowInside(-1),
-  myAllVisible(-1),
-  myCellsVisibility(NULL),
-  myCellIds(vtkIdList::New())
+  myCellIds(vtkIdList::New()),
+  myFaceIds(vtkIdList::New()),
+  myPoints(vtkPoints::New()),
+  myPointIds(NULL)
 {}
 
 
-/*!
-  Destructor
-*/
+//----------------------------------------------------------------------------
 VTKViewer_Triangulator
 ::~VTKViewer_Triangulator()
 {
   myCellIds->Delete();
+  myFaceIds->Delete();
+  myPoints->Delete();
+}
+
+
+//----------------------------------------------------------------------------
+vtkPoints*
+VTKViewer_Triangulator
+::InitPoints(vtkUnstructuredGrid *theInput,
+            vtkIdType theCellId)
+{
+  myPoints->Reset();
+  myPoints->Modified(); // the VTK bug
+
+  vtkIdType aNumPts;
+  theInput->GetCellPoints(theCellId, aNumPts, myPointIds); 
+  if ( aNumPts > 0 ) {
+    vtkFloatingPointType anAbsoluteCoord[3];
+    myPoints->SetNumberOfPoints(aNumPts);
+    vtkPoints *anInputPoints = theInput->GetPoints();
+    for (int aPntId = 0; aPntId < aNumPts; aPntId++) {
+      anInputPoints->GetPoint(myPointIds[aPntId], anAbsoluteCoord);
+      myPoints->SetPoint(aPntId, anAbsoluteCoord);
+    }
+  }
+
+  return myPoints;
+}
+
+
+//----------------------------------------------------------------------------
+vtkIdType 
+VTKViewer_Triangulator
+::GetNbOfPoints()
+{
+  return myPoints->GetNumberOfPoints();
 }
 
 
+//----------------------------------------------------------------------------
+vtkIdType 
+VTKViewer_Triangulator
+::GetPointId(vtkIdType thePointId)
+{
+  return thePointId;
+}
 
+
+//----------------------------------------------------------------------------
+vtkFloatingPointType 
+VTKViewer_Triangulator
+::GetCellLength()
+{
+  vtkFloatingPointType aBounds[6];
+  myPoints->GetBounds(aBounds);
+
+  vtkFloatingPointType aCoordDiff[3];
+  aCoordDiff[0] = (aBounds[1] - aBounds[0]);
+  aCoordDiff[1] = (aBounds[3] - aBounds[2]);
+  aCoordDiff[2] = (aBounds[5] - aBounds[4]);
+
+  return sqrt(aCoordDiff[0]*aCoordDiff[0] + 
+             aCoordDiff[1]*aCoordDiff[1] + 
+             aCoordDiff[2]*aCoordDiff[2]);
+}
+
+
+//----------------------------------------------------------------------------
+void 
+VTKViewer_Triangulator
+::GetCellNeighbors(vtkUnstructuredGrid *theInput,
+                  vtkIdType theCellId,
+                  vtkCell* theFace,
+                  vtkIdList* theCellIds)
+{
+  myFaceIds->Reset();
+  vtkIdList *anIdList = theFace->PointIds;  
+  myFaceIds->InsertNextId(myPointIds[anIdList->GetId(0)]);
+  myFaceIds->InsertNextId(myPointIds[anIdList->GetId(1)]);
+  myFaceIds->InsertNextId(myPointIds[anIdList->GetId(2)]);
+
+  theInput->GetCellNeighbors(theCellId, myFaceIds, theCellIds);
+}
+
+
+//----------------------------------------------------------------------------
+vtkIdType 
+VTKViewer_Triangulator
+::GetConnectivity(vtkIdType thePntId)
+{
+  return myPointIds[thePntId];
+}
+
+
+//----------------------------------------------------------------------------
 bool 
 VTKViewer_Triangulator
 ::Execute(vtkUnstructuredGrid *theInput,
@@ -120,13 +209,7 @@ VTKViewer_Triangulator
          std::vector<vtkIdType>& theVTK2ObjIds,
          bool theIsCheckConvex)
 {
-  myInput = theInput;
-  myCellId = theCellId;
-  myShowInside = theShowInside;
-  myAllVisible = theAllVisible;
-  myCellsVisibility = theCellsVisibility;
-
-  vtkPoints *aPoints = InitPoints();
+  vtkPoints *aPoints = InitPoints(theInput, theCellId);
   vtkIdType aNumPts = GetNbOfPoints();
   if(DEBUG_TRIA_EXECUTE) cout<<"Triangulator - aNumPts = "<<aNumPts<<"\n";
 
@@ -154,7 +237,7 @@ VTKViewer_Triangulator
 
   static vtkFloatingPointType EPS = 1.0E-2;
   vtkFloatingPointType aDistEps = aCellLength/3.0 * EPS;
-  if(DEBUG_TRIA_EXECUTE) cout<<"\taCellLength = "<<aCellLength<<"; aDistEps = "<<aDistEps<<"\n";
+  if(DEBUG_TRIA_EXECUTE) cout<<"\taNumFaces = "<<aNumFaces<<"; aCellLength = "<<aCellLength<<"; aDistEps = "<<aDistEps<<"\n";
 
   // To initialize set of points that belong to the cell
   typedef std::set<vtkIdType> TPointIds;
@@ -172,9 +255,9 @@ VTKViewer_Triangulator
   for (int aFaceId = 0; aFaceId < aNumFaces; aFaceId++) {
     vtkCell* aFace = GetFace(aFaceId);
     
-    GetCellNeighbors(theCellId, aFace, myCellIds);
-    if((!myAllVisible && !myCellsVisibility[myCellIds->GetId(0)]) || 
-       myCellIds->GetNumberOfIds() <= 0 || myShowInside)
+    GetCellNeighbors(theInput, theCellId, aFace, myCellIds);
+    if((!theAllVisible && !theCellsVisibility[myCellIds->GetId(0)]) || 
+       myCellIds->GetNumberOfIds() <= 0 || theShowInside)
     {
       TPointIds aPointIds;
       vtkIdList *anIdList = aFace->PointIds;  
@@ -320,9 +403,9 @@ VTKViewer_Triangulator
            aCenter[0] += aPntCoord[0];
            aCenter[1] += aPntCoord[1];
            aCenter[2] += aPntCoord[2];
-           if(DEBUG_TRIA_EXECUTE) cout  << "Added = TRUE" << endl;
+           if(DEBUG_TRIA_EXECUTE) cout  << "Added = TRUE" << endl;
          } else {
-           if(DEBUG_TRIA_EXECUTE) cout  << "Added = FALSE" << endl;
+           if(DEBUG_TRIA_EXECUTE) cout  << "Added = FALSE" << endl;
          }
        }
        int aNbPoints = aPointIds.size();
@@ -512,171 +595,144 @@ VTKViewer_Triangulator
   return true;
 }
 
-/*!
-  Constructor
-*/
+
+//----------------------------------------------------------------------------
 VTKViewer_OrderedTriangulator
 ::VTKViewer_OrderedTriangulator():
-  myCell(vtkGenericCell::New())
-{}
+  myTriangulator(vtkOrderedTriangulator::New()),
+  myBoundaryTris(vtkCellArray::New()),
+  myTriangle(vtkTriangle::New())
+{
+  myBoundaryTris->Allocate(VTK_CELL_SIZE);
+  myTriangulator->PreSortedOff();
+}
 
-/*!
-  Destructor
-*/
+
+//----------------------------------------------------------------------------
 VTKViewer_OrderedTriangulator
 ::~VTKViewer_OrderedTriangulator()
 {
-  myCell->Delete();
+  myTriangle->Delete();
+  myBoundaryTris->Delete();
+  myTriangulator->Delete();
 }
 
+
+//----------------------------------------------------------------------------
 vtkPoints*
 VTKViewer_OrderedTriangulator
-::InitPoints()
+::InitPoints(vtkUnstructuredGrid *theInput,
+            vtkIdType theCellId)
 {
-  myInput->GetCell(myCellId,myCell);
-  return myInput->GetPoints();
-}
+  myBoundaryTris->Reset();
 
-vtkIdType 
-VTKViewer_OrderedTriangulator
-::GetNbOfPoints()
-{
-  return myCell->GetNumberOfPoints();
-}
+  vtkPoints* aPoints = VTKViewer_Triangulator::InitPoints(theInput, theCellId);
+  vtkIdType aNumPts = myPoints->GetNumberOfPoints();
+  if ( aNumPts > 0 ) {
+    myTriangulator->InitTriangulation(0.0, 1.0, 0.0, 1.0, 0.0, 1.0, aNumPts);
 
-vtkIdType 
-VTKViewer_OrderedTriangulator
-::GetPointId(vtkIdType thePointId)
-{
-  return myCell->GetPointId(thePointId);
-}
+    vtkFloatingPointType aBounds[6];
+    myPoints->GetBounds(aBounds);
 
-vtkFloatingPointType 
-VTKViewer_OrderedTriangulator
-::GetCellLength()
-{
-  return sqrt(myCell->GetLength2());
+    vtkFloatingPointType anAbsoluteCoord[3];
+    vtkFloatingPointType aParamentrucCoord[3];
+    for (int aPntId = 0; aPntId < aNumPts; aPntId++) {
+      myPoints->GetPoint(aPntId, anAbsoluteCoord);
+      aParamentrucCoord[0] = (anAbsoluteCoord[0] - aBounds[0]) / (aBounds[1] - aBounds[0]);
+      aParamentrucCoord[1] = (anAbsoluteCoord[1] - aBounds[2]) / (aBounds[3] - aBounds[2]);
+      aParamentrucCoord[2] = (anAbsoluteCoord[2] - aBounds[4]) / (aBounds[5] - aBounds[4]);
+      myTriangulator->InsertPoint(aPntId, anAbsoluteCoord, aParamentrucCoord, 0);
+    }
+
+    myTriangulator->Triangulate();
+    myTriangulator->AddTriangles(myBoundaryTris);
+  }
+
+  return aPoints;
 }
 
+
+//----------------------------------------------------------------------------
 vtkIdType 
 VTKViewer_OrderedTriangulator
 ::GetNumFaces()
 {
-  return myCell->GetNumberOfFaces();
+  return myBoundaryTris->GetNumberOfCells();
 }
 
+
+//----------------------------------------------------------------------------
 vtkCell*
 VTKViewer_OrderedTriangulator
 ::GetFace(vtkIdType theFaceId)
 {
-  return myCell->GetFace(theFaceId);
-}
+  vtkIdType aNumCells = myBoundaryTris->GetNumberOfCells();
+  if ( theFaceId < 0 || theFaceId >= aNumCells ) 
+    return NULL;
 
-void 
-VTKViewer_OrderedTriangulator
-::GetCellNeighbors(vtkIdType theCellId,
-                  vtkCell* theFace,
-                  vtkIdList* theCellIds)
-{
-  vtkIdList *anIdList = theFace->PointIds;  
-  myInput->GetCellNeighbors(theCellId, anIdList, theCellIds);
-}
+  vtkIdType *aCells = myBoundaryTris->GetPointer();
 
-vtkIdType 
-VTKViewer_OrderedTriangulator
-::GetConnectivity(vtkIdType thePntId)
-{
-  return thePntId;
+  // Each triangle has three points plus number of points
+  vtkIdType *aCellPtr = aCells + 4*theFaceId;
+  
+  myTriangle->PointIds->SetId(0, aCellPtr[1]);
+  myTriangle->Points->SetPoint(0, myPoints->GetPoint(aCellPtr[1]));
+
+  myTriangle->PointIds->SetId(1, aCellPtr[2]);
+  myTriangle->Points->SetPoint(1, myPoints->GetPoint(aCellPtr[2]));
+
+  myTriangle->PointIds->SetId(2, aCellPtr[3]);
+  myTriangle->Points->SetPoint(2, myPoints->GetPoint(aCellPtr[3]));
+
+  return myTriangle;
 }
 
-/*!
-  Constructor
-*/
+
+//----------------------------------------------------------------------------
 VTKViewer_DelaunayTriangulator
 ::VTKViewer_DelaunayTriangulator():
   myUnstructuredGrid(vtkUnstructuredGrid::New()),
   myGeometryFilter(vtkGeometryFilter::New()),
   myDelaunay3D(vtkDelaunay3D::New()),
-  myFaceIds(vtkIdList::New()),
-  myPoints(vtkPoints::New()),
-  myPolyData(NULL),
-  myPointIds(NULL)
+  myPolyData(NULL)
 {
+  myUnstructuredGrid->Initialize();
+  myUnstructuredGrid->Allocate();
+  myUnstructuredGrid->SetPoints(myPoints);
+
   myDelaunay3D->SetInput(myUnstructuredGrid);
   myGeometryFilter->SetInput(myDelaunay3D->GetOutput());
+  myPolyData = myGeometryFilter->GetOutput();
 }
 
 
-
-/*!
-  Destructor
-*/
+//----------------------------------------------------------------------------
 VTKViewer_DelaunayTriangulator
 ::~VTKViewer_DelaunayTriangulator()
 {
   myUnstructuredGrid->Delete();
   myGeometryFilter->Delete();
   myDelaunay3D->Delete();
-  myFaceIds->Delete();
-  myPoints->Delete();
 }
 
 
+//----------------------------------------------------------------------------
 vtkPoints* 
 VTKViewer_DelaunayTriangulator
-::InitPoints()
+::InitPoints(vtkUnstructuredGrid *theInput,
+            vtkIdType theCellId)
 {
-  myPoints->Reset();
-  myUnstructuredGrid->Initialize();
-  myUnstructuredGrid->Allocate();
-  myUnstructuredGrid->SetPoints(myPoints);
-
-  vtkIdType aNumPts;
-  myInput->GetCellPoints(myCellId,aNumPts,myPointIds); 
-  
-  if ( aNumPts < myPoints->GetNumberOfPoints() )
-    myPoints->Reset();
-  
-  {
-    vtkFloatingPointType aPntCoord[3];
-    myPoints->SetNumberOfPoints(aNumPts);
-    vtkPoints *anInputPoints = myInput->GetPoints();
-    for (int aPntId = 0; aPntId < aNumPts; aPntId++) {
-      anInputPoints->GetPoint(myPointIds[aPntId],aPntCoord);
-      myPoints->SetPoint(aPntId,aPntCoord);
-    }
-  }
+  vtkPoints* aPoints = VTKViewer_Triangulator::InitPoints(theInput, theCellId);
 
   myPoints->Modified();
   myUnstructuredGrid->Modified();
-
   myGeometryFilter->Update();
-  myPolyData = myGeometryFilter->GetOutput();
   
-  return myPoints;
-}
-
-vtkIdType 
-VTKViewer_DelaunayTriangulator
-::GetNbOfPoints()
-{
-  return myPoints->GetNumberOfPoints();
+  return aPoints;
 }
 
-vtkIdType 
-VTKViewer_DelaunayTriangulator
-::GetPointId(vtkIdType thePointId)
-{
-  return thePointId;
-}
-
-vtkFloatingPointType 
-VTKViewer_DelaunayTriangulator
-::GetCellLength()
-{
-  return myPolyData->GetLength();
-}
 
+//----------------------------------------------------------------------------
 vtkIdType 
 VTKViewer_DelaunayTriangulator
 ::GetNumFaces()
@@ -684,32 +740,11 @@ VTKViewer_DelaunayTriangulator
   return myPolyData->GetNumberOfCells();
 }
 
+
+//----------------------------------------------------------------------------
 vtkCell*
 VTKViewer_DelaunayTriangulator
 ::GetFace(vtkIdType theFaceId)
 {
   return myPolyData->GetCell(theFaceId);
 }
-
-void 
-VTKViewer_DelaunayTriangulator
-::GetCellNeighbors(vtkIdType theCellId,
-                  vtkCell* theFace,
-                  vtkIdList* theCellIds)
-{
-  myFaceIds->Reset();
-  vtkIdList *anIdList = theFace->PointIds;  
-  myFaceIds->InsertNextId(myPointIds[anIdList->GetId(0)]);
-  myFaceIds->InsertNextId(myPointIds[anIdList->GetId(1)]);
-  myFaceIds->InsertNextId(myPointIds[anIdList->GetId(2)]);
-
-  myInput->GetCellNeighbors(theCellId, myFaceIds, theCellIds);
-}
-
-
-vtkIdType 
-VTKViewer_DelaunayTriangulator
-::GetConnectivity(vtkIdType thePntId)
-{
-  return myPointIds[thePntId];
-}
index 2bf024d5e0fc1d1a7bd86b948ab215259e59e2dd..5e391d976af4cc0667d687c10e8f5a82ac4cc132 100644 (file)
@@ -36,7 +36,12 @@ class vtkCellData;
 class vtkPoints;
 class vtkIdList;
 class vtkCell;
+class vtkCellArray;
+class vtkTriangle;
+class vtkOrderedTriangulator;
 
+
+//----------------------------------------------------------------------------
 class VTKVIEWER_EXPORT VTKViewer_Triangulator
 {
  public:
@@ -57,51 +62,48 @@ class VTKVIEWER_EXPORT VTKViewer_Triangulator
          std::vector<vtkIdType>& theVTK2ObjIds,
          bool theIsCheckConvex);
 
- protected:
+ private:
   vtkIdList* myCellIds;
 
-  vtkUnstructuredGrid *myInput;
-  vtkIdType myCellId;
-  int myShowInside;
-  int myAllVisible;
-  const char* myCellsVisibility;
+ protected:
+  vtkIdType *myPointIds;
+  vtkIdList* myFaceIds;
+  vtkPoints* myPoints;
 
   virtual
   vtkPoints* 
-  InitPoints() = 0;
+  InitPoints(vtkUnstructuredGrid *theInput,
+            vtkIdType theCellId);
 
   virtual
   vtkIdType 
-  GetNbOfPoints() = 0;
+  GetNumFaces() = 0;
 
   virtual
-  vtkIdType 
-  GetPointId(vtkIdType thePointId) = 0;
+  vtkCell* 
+  GetFace(vtkIdType theFaceId) = 0;
 
-  virtual
-  vtkFloatingPointType 
-  GetCellLength() = 0;
+  vtkIdType 
+  GetNbOfPoints();
 
-  virtual
   vtkIdType 
-  GetNumFaces() = 0;
+  GetPointId(vtkIdType thePointId);
 
-  virtual
-  vtkCell* 
-  GetFace(vtkIdType theFaceId) = 0;
+  vtkFloatingPointType 
+  GetCellLength();
 
-  virtual
   void 
-  GetCellNeighbors(vtkIdType theCellId,
+  GetCellNeighbors(vtkUnstructuredGrid *theInput,
+                  vtkIdType theCellId,
                   vtkCell* theFace,
-                  vtkIdList* theCellIds) = 0;
+                  vtkIdList* theCellIds);
 
-  virtual
   vtkIdType 
-  GetConnectivity(vtkIdType thePntId) = 0;
+  GetConnectivity(vtkIdType thePntId);
 };
 
 
+//----------------------------------------------------------------------------
 class VTKVIEWER_EXPORT VTKViewer_OrderedTriangulator : public VTKViewer_Triangulator
 {
  public:
@@ -111,22 +113,14 @@ class VTKVIEWER_EXPORT VTKViewer_OrderedTriangulator : public VTKViewer_Triangul
   ~VTKViewer_OrderedTriangulator();
 
  protected:
-  vtkGenericCell *myCell;
+  vtkOrderedTriangulator *myTriangulator;
+  vtkCellArray *myBoundaryTris;
+  vtkTriangle  *myTriangle;
 
   virtual
   vtkPoints* 
-  InitPoints();
-
-  virtual
-  vtkIdType 
-  GetNbOfPoints();
-
-  vtkIdType 
-  GetPointId(vtkIdType thePointId);
-
-  virtual
-  vtkFloatingPointType 
-  GetCellLength();
+  InitPoints(vtkUnstructuredGrid *theInput,
+            vtkIdType theCellId);
 
   virtual
   vtkIdType 
@@ -135,19 +129,10 @@ class VTKVIEWER_EXPORT VTKViewer_OrderedTriangulator : public VTKViewer_Triangul
   virtual
   vtkCell* 
   GetFace(vtkIdType theFaceId);
-
-  virtual
-  void 
-  GetCellNeighbors(vtkIdType theCellId,
-                  vtkCell* theFace,
-                  vtkIdList* theCellIds);
-
-  virtual
-  vtkIdType 
-  GetConnectivity(vtkIdType thePntId);
 };
 
 
+//----------------------------------------------------------------------------
 class VTKVIEWER_EXPORT VTKViewer_DelaunayTriangulator : public VTKViewer_Triangulator
 {
  public:
@@ -161,24 +146,11 @@ class VTKVIEWER_EXPORT VTKViewer_DelaunayTriangulator : public VTKViewer_Triangu
   vtkGeometryFilter* myGeometryFilter;
   vtkDelaunay3D* myDelaunay3D;
   vtkPolyData* myPolyData;
-  vtkIdType *myPointIds;
-  vtkIdList* myFaceIds;
-  vtkPoints* myPoints;
 
   virtual
   vtkPoints* 
-  InitPoints();
-
-  virtual
-  vtkIdType 
-  GetNbOfPoints();
-
-  vtkIdType 
-  GetPointId(vtkIdType thePointId);
-
-  virtual
-  vtkFloatingPointType 
-  GetCellLength();
+  InitPoints(vtkUnstructuredGrid *theInput,
+            vtkIdType theCellId);
 
   virtual
   vtkIdType 
@@ -187,16 +159,6 @@ class VTKVIEWER_EXPORT VTKViewer_DelaunayTriangulator : public VTKViewer_Triangu
   virtual
   vtkCell* 
   GetFace(vtkIdType theFaceId);
-
-  virtual
-  void 
-  GetCellNeighbors(vtkIdType theCellId,
-                  vtkCell* theFace,
-                  vtkIdList* theCellIds);
-
-  virtual
-  vtkIdType 
-  GetConnectivity(vtkIdType thePntId);
 };
 
 
index 50cade3f124768c3c37afaf018742f4c93401cc2..5d2590de63e9f337ee114d020decbc90bd4c1333 100755 (executable)
@@ -771,6 +771,8 @@ VTKViewer_GeometryFilter
     {
     delete [] cellVis;
     }
+
+  return 0;
 }