From: caremoli Date: Thu, 8 Apr 2010 08:24:02 +0000 (+0000) Subject: CCAR: update with changes from V5_1_main X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=1ce1116cf7af75080d65f86f0333036a9e0f2a8a;p=modules%2Fgeom.git CCAR: update with changes from V5_1_main --- diff --git a/configure.ac b/configure.ac index 8959c38df..4241570ac 100644 --- a/configure.ac +++ b/configure.ac @@ -389,8 +389,10 @@ AC_OUTPUT([ \ doc/salome/gui/GEOM/doxyfile \ doc/salome/gui/GEOM/doxyfile_py \ doc/salome/gui/GEOM/doxyfile_tui \ + doc/salome/gui/GEOM/static/header.html \ doc/salome/tui/Makefile \ doc/salome/tui/doxyfile \ + doc/salome/tui/static/header.html \ src/Makefile \ src/AdvancedGUI/Makefile \ src/ARCHIMEDE/Makefile \ diff --git a/doc/salome/gui/GEOM/Makefile.am b/doc/salome/gui/GEOM/Makefile.am index 88bb9710f..7acc86edb 100755 --- a/doc/salome/gui/GEOM/Makefile.am +++ b/doc/salome/gui/GEOM/Makefile.am @@ -26,9 +26,12 @@ # include $(top_srcdir)/adm_local/unix/make_common_starter.am -EXTRA_DIST += images input static +EXTRA_DIST += images input static/footer.html static/doxygen.css -usr_docs: doxyfile_tui doxyfile_py doxyfile +guidocdir = $(docdir)/gui/GEOM +guidoc_DATA = images/head.png + +usr_docs: doxyfile_tui doxyfile_py doxyfile echo "===========================================" ; \ echo "Replacing geompyDC by geompy" ; \ echo "===========================================" ; \ @@ -46,13 +49,13 @@ usr_docs: doxyfile_tui doxyfile_py doxyfile echo "===========================================" ; \ echo "Generating GUI documentation" ; \ echo "===========================================" ; \ - $(DOXYGEN) doxyfile ; \ + $(DOXYGEN) doxyfile ; \ rm -f $(top_builddir)/src/GEOM_SWIG/geompy.py docs: usr_docs clean-local: - @for filen in `find . -maxdepth 1` ; do \ + @for filen in `find . -maxdepth 1` ; do \ case $${filen} in \ ./Makefile | ./doxyfile | ./doxyfile_py | ./doxyfile_tui ) ;; \ . | .. ) ;; \ @@ -62,7 +65,7 @@ clean-local: install-data-local: usr_docs $(INSTALL) -d $(DESTDIR)$(docdir)/gui/GEOM - @for filen in `find . -maxdepth 1` ; do \ + @for filen in `find . -maxdepth 1` ; do \ case $${filen} in \ ./Makefile | ./doxyfile | ./doxyfile_py | ./doxyfile_tui ) ;; \ ./doxyfile.bak | ./doxyfile_py.bak | ./doxyfile_tui.bak ) ;; \ diff --git a/doc/salome/gui/GEOM/doxyfile.in b/doc/salome/gui/GEOM/doxyfile.in index cc7de8625..2f49e2434 100755 --- a/doc/salome/gui/GEOM/doxyfile.in +++ b/doc/salome/gui/GEOM/doxyfile.in @@ -23,7 +23,7 @@ #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- -PROJECT_NAME = "Geometry Module Reference Manual v.@VERSION@" +PROJECT_NAME = "SALOME Geometry User's Guide" OUTPUT_DIRECTORY = . CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English @@ -49,9 +49,9 @@ EXAMPLE_PATH = @top_srcdir@/src/GEOM_SWIG #--------------------------------------------------------------------------- GENERATE_HTML = YES HTML_OUTPUT = . -HTML_HEADER = @srcdir@/static/header.html +HTML_HEADER = @builddir@/static/header.html HTML_FOOTER = @srcdir@/static/footer.html -#HTML_STYLESHEET = @srcdir@/static/doxygen.css +HTML_STYLESHEET = @srcdir@/static/doxygen.css TOC_EXPAND = YES DISABLE_INDEX = NO GENERATE_TREEVIEW = YES diff --git a/doc/salome/gui/GEOM/doxyfile_py.in b/doc/salome/gui/GEOM/doxyfile_py.in index c3b0a156d..a573c3d1e 100755 --- a/doc/salome/gui/GEOM/doxyfile_py.in +++ b/doc/salome/gui/GEOM/doxyfile_py.in @@ -23,7 +23,7 @@ #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- -PROJECT_NAME = "Geometry Module Reference Manual v.@VERSION@" +PROJECT_NAME = "SALOME Geometry User's Guide" OUTPUT_DIRECTORY = . CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English @@ -110,9 +110,9 @@ RECURSIVE = NO #--------------------------------------------------------------------------- GENERATE_HTML = YES HTML_OUTPUT = geompy_doc -HTML_HEADER = @srcdir@/static/header.html +HTML_HEADER = @builddir@/static/header.html HTML_FOOTER = @srcdir@/static/footer.html -#HTML_STYLESHEET = @srcdir@/static/doxygen.css +HTML_STYLESHEET = @srcdir@/static/doxygen.css TOC_EXPAND = YES DISABLE_INDEX = YES GENERATE_TREEVIEW = NO diff --git a/doc/salome/gui/GEOM/doxyfile_tui.in b/doc/salome/gui/GEOM/doxyfile_tui.in index e324105c0..bc081776f 100755 --- a/doc/salome/gui/GEOM/doxyfile_tui.in +++ b/doc/salome/gui/GEOM/doxyfile_tui.in @@ -23,7 +23,7 @@ #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- -PROJECT_NAME = "Geometry Module Reference Manual v.@VERSION@" +PROJECT_NAME = "SALOME Geometry User's Guide" OUTPUT_DIRECTORY = . CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English @@ -48,9 +48,9 @@ EXAMPLE_PATH = @top_srcdir@/src/GEOM_SWIG #--------------------------------------------------------------------------- GENERATE_HTML = YES HTML_OUTPUT = . -HTML_HEADER = @srcdir@/static/header.html +HTML_HEADER = @builddir@/static/header.html HTML_FOOTER = @srcdir@/static/footer.html -#HTML_STYLESHEET = @srcdir@/static/doxygen.css +HTML_STYLESHEET = @srcdir@/static/doxygen.css TOC_EXPAND = YES DISABLE_INDEX = NO GENERATE_TREEVIEW = YES diff --git a/doc/salome/gui/GEOM/images/box3.png b/doc/salome/gui/GEOM/images/box3.png index b64fdf983..a53e05d1a 100755 Binary files a/doc/salome/gui/GEOM/images/box3.png and b/doc/salome/gui/GEOM/images/box3.png differ diff --git a/doc/salome/gui/GEOM/images/geomscreen.png b/doc/salome/gui/GEOM/images/geomscreen.png index a8df645d2..58908a742 100755 Binary files a/doc/salome/gui/GEOM/images/geomscreen.png and b/doc/salome/gui/GEOM/images/geomscreen.png differ diff --git a/doc/salome/gui/GEOM/images/head.png b/doc/salome/gui/GEOM/images/head.png new file mode 100755 index 000000000..307d9ef9a Binary files /dev/null and b/doc/salome/gui/GEOM/images/head.png differ diff --git a/doc/salome/gui/GEOM/images/iges_unit.png b/doc/salome/gui/GEOM/images/iges_unit.png index b2deb1ccc..60aba603a 100644 Binary files a/doc/salome/gui/GEOM/images/iges_unit.png and b/doc/salome/gui/GEOM/images/iges_unit.png differ diff --git a/doc/salome/gui/GEOM/images/sat_named_shapes.png b/doc/salome/gui/GEOM/images/sat_named_shapes.png index e9a2e8bed..cb3bca660 100644 Binary files a/doc/salome/gui/GEOM/images/sat_named_shapes.png and b/doc/salome/gui/GEOM/images/sat_named_shapes.png differ diff --git a/doc/salome/gui/GEOM/images/using_notebook_geom.png b/doc/salome/gui/GEOM/images/using_notebook_geom.png index d73a43f90..79de77f12 100644 Binary files a/doc/salome/gui/GEOM/images/using_notebook_geom.png and b/doc/salome/gui/GEOM/images/using_notebook_geom.png differ diff --git a/doc/salome/gui/GEOM/input/geometrical_object_properties.doc b/doc/salome/gui/GEOM/input/geometrical_object_properties.doc index 4a21f715e..78de472cd 100644 --- a/doc/salome/gui/GEOM/input/geometrical_object_properties.doc +++ b/doc/salome/gui/GEOM/input/geometrical_object_properties.doc @@ -67,7 +67,6 @@ The possible values of the geometrical objects are listed in the table below: 443DSKETCHER 45FILLET_2D 46FILLET_1D - &nbps;&nbps; Also geompy.py module provides a helper function ShapeIdToType() diff --git a/doc/salome/gui/GEOM/static/doxygen.css b/doc/salome/gui/GEOM/static/doxygen.css index 88e613d23..bb90bee98 100755 --- a/doc/salome/gui/GEOM/static/doxygen.css +++ b/doc/salome/gui/GEOM/static/doxygen.css @@ -1,5 +1,35 @@ -H1 { +body { + font-family: Arial, Helvetica, sans-serif; + background-color: #ffffff; +} + +h1 { text-align: center; + text-decoration: none; + border: none; + line-height: 25px; + text-align: center; +// text-transform:uppercase; + background: #D9f4fd; + font-size: 12pt; + font-weight: bold; + border: 1px solid #CCCCCC; + -moz-border-radius: 8px; + -moz-box-shadow:5px 5px 5px rgba(0, 0, 0, 0.15); +/* background-color: rgb(75, 140, 185); + color: #ffffff; + text-align: center; + height: 25px;*/ + +} + +h2 { + font-size: 12pt; + font-weight: bold; +} + +table { + font-size: 10pt; } CAPTION { @@ -11,16 +41,6 @@ A.qindex {} A.qindexRef {} -/* Link to any cross-referenced Doxygen element */ -A.el { - text-decoration: none; - font-weight: bold -} - -A.elRef { - font-weight: bold -} - /* Link to any cross-referenced Doxygen element inside a code section (ex: header) */ @@ -37,7 +57,49 @@ A.codeRef { A:hover { text-decoration: none; - background-color: lightblue + background-color: lightblue; +} + +div.contents { + font-family: Arial, Helvetica, sans-serif; + font-size: 10pt; +} + +div.navpath { + font-size: 11pt; +} + +div.version { + background-color:#ffffde; + border:1px solid #cccccc; + font-family: Arial, Helvetica, sans-serif; + font-size: 9pt; + text-align: center; + width:100px; + -moz-border-radius: 8px; +// -moz-box-shadow:5px 5px 5px rgba(0, 0, 0, 0.15); +} + +div.header { + background: url("head.png"); + background-color: #175783; + border: 1px solid; + height: 80px; + background-repeat: no-repeat; + margin-bottom: 10px; +} + +div.tabs { + display: none; +} + +div.footer { + background-color: #D9f4fd; + border: 1px solid #AAAAAA; + font-family: Arial, Helvetica, sans-serif; + font-size: 11px; + padding: 10px; + margin-top: 15px; } DL.el { @@ -45,10 +107,8 @@ DL.el { } /* A code fragment (ex: header) */ -DIV.fragment { - width: 100%; +div.fragment { border: none; - background-color: #CCCCCC } /* In the alpha list (coumpound index), style of an alphabetical index letter */ @@ -94,10 +154,6 @@ DIV.groupText { font-size: smaller } -BODY { - background: #FFFFFF; -} - /*div.div-page { background-color: #FFFFFF; margin-left: 1em; @@ -168,3 +224,104 @@ span.comment { color: #800000 } span.preprocessor { color: #806020 } span.stringliteral { color: #002080 } span.charliteral { color: #008080 } + +/* @group Code Colorization */ + +.fragment { + font-family: monospace, fixed; + font-size: 10pt; +} + +pre.fragment { + width: 95%; + border: 1px solid #CCCCCC; + -moz-border-radius: 8px; + -moz-box-shadow:5px 5px 5px rgba(0, 0, 0, 0.15); + background-color:#EEF3F5; + padding: 4px 6px; + margin: 4px 1px 4px 1px; +} + +/* Top Navigation style */ + +div.navigation { + margin-bottom:20px; +} + +/* Left navigation panel style */ + +body.ftvtree { + background-color: #D9f4fd; + margin: 10px; +} + +div.directory { + margin: 0; +} + +div.directory.p { + margin: 0; +} + +h3.swap { + font-size: 10pt; + margin-bottom: 0; +} + +/* Link to any cross-referenced Doxygen element */ +a.el { + text-decoration: none; + font-family: Arial, Helvetica, sans-serif; + font-weight: bold; + font-size: 9pt; + color: #551a8b; +} + +a.el:hover { + background-color: transparent; +} + +a.elRef { + font-weight: normal; +} + + +#MSearchBox { + -moz-border-radius:8px 8px 8px 8px; + background-color:white; + border:1px solid #84B0C7; + margin:0; + padding:0; + white-space:nowrap; +} + +div.directory img { + vertical-align:-30%; +} + +div.directory p { + white-space:nowrap; + margin: 0; +} + +div.directory-alt div { + display: none; + margin: 0px; +} + + +div.directory div { + display: none; + margin: 0px; +} + +div.version { + background-color:#ffffde; + border:1px solid #cccccc; + font-family: Arial, Helvetica, sans-serif; + font-size: 9pt; + text-align: center; + width:100px; + -moz-border-radius: 8px; +// -moz-box-shadow:5px 5px 5px rgba(0, 0, 0, 0.15); +} diff --git a/doc/salome/gui/GEOM/static/footer.html b/doc/salome/gui/GEOM/static/footer.html index 6eab03cf2..012833eac 100755 --- a/doc/salome/gui/GEOM/static/footer.html +++ b/doc/salome/gui/GEOM/static/footer.html @@ -3,10 +3,11 @@ -
+ diff --git a/doc/salome/gui/GEOM/static/header.html b/doc/salome/gui/GEOM/static/header.html deleted file mode 100755 index a70a95e30..000000000 --- a/doc/salome/gui/GEOM/static/header.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - $title - - -
-
-SALOME documentation central -
-
diff --git a/doc/salome/gui/GEOM/static/header.html.in b/doc/salome/gui/GEOM/static/header.html.in new file mode 100755 index 000000000..6795e96eb --- /dev/null +++ b/doc/salome/gui/GEOM/static/header.html.in @@ -0,0 +1,10 @@ + + + + + $title + + +
+
Version: @VERSION@
+ diff --git a/doc/salome/tui/Makefile.am b/doc/salome/tui/Makefile.am index 3bdc1b46b..391029408 100644 --- a/doc/salome/tui/Makefile.am +++ b/doc/salome/tui/Makefile.am @@ -25,7 +25,10 @@ # include $(top_srcdir)/adm_local/unix/make_common_starter.am -EXTRA_DIST += images static +EXTRA_DIST += images input static/footer.html static/doxygen.css + +tuidocdir = $(docdir)/tui/GEOM +tuidoc_DATA = images/head.png images/geomscreen.png dev_docs: doxyfile echo "===========================================" ; \ diff --git a/doc/salome/tui/doxyfile.in b/doc/salome/tui/doxyfile.in index ad1ea5a7d..6534ebc07 100755 --- a/doc/salome/tui/doxyfile.in +++ b/doc/salome/tui/doxyfile.in @@ -25,7 +25,7 @@ #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- -PROJECT_NAME = "Geometry Module Programming Guide v.@VERSION@" +PROJECT_NAME = "SALOME Geometry Developer" PROJECT_NUMBER = OUTPUT_DIRECTORY = GEOM CREATE_SUBDIRS = NO @@ -101,8 +101,9 @@ INPUT = @top_srcdir@/src \ @top_builddir@/src/GEOM_SWIG/geompy.py \ @top_srcdir@/bin \ @top_srcdir@/idl \ - @top_builddir@/bin -FILE_PATTERNS = *.idl *.hxx *.cxx *.h *.c *.hh *.cc @DOXYGEN_PYTHON_EXTENSION@ + @top_builddir@/bin \ + @srcdir@/input +FILE_PATTERNS = *.idl *.hxx *.cxx *.h *.c *.hh *.cc @DOXYGEN_PYTHON_EXTENSION@ *.doc RECURSIVE = YES EXCLUDE = @top_srcdir@/src/GEOM_SWIG/geompy.py \ @top_srcdir@/src/GEOM_SWIG/geompyDC.py @@ -140,7 +141,7 @@ IGNORE_PREFIX = GENERATE_HTML = YES HTML_OUTPUT = . HTML_FILE_EXTENSION = .html -HTML_HEADER = @srcdir@/static/myheader.html +HTML_HEADER = @builddir@/static/header.html HTML_FOOTER = @srcdir@/static/footer.html HTML_STYLESHEET = @srcdir@/static/doxygen.css HTML_ALIGN_MEMBERS = YES diff --git a/doc/salome/tui/images/geomscreen.png b/doc/salome/tui/images/geomscreen.png new file mode 100644 index 000000000..58908a742 Binary files /dev/null and b/doc/salome/tui/images/geomscreen.png differ diff --git a/doc/salome/tui/images/head.png b/doc/salome/tui/images/head.png new file mode 100755 index 000000000..307d9ef9a Binary files /dev/null and b/doc/salome/tui/images/head.png differ diff --git a/doc/salome/tui/images/occ.gif b/doc/salome/tui/images/occ.gif deleted file mode 100755 index ce017c8ae..000000000 Binary files a/doc/salome/tui/images/occ.gif and /dev/null differ diff --git a/doc/salome/tui/static/doxygen.css b/doc/salome/tui/static/doxygen.css index 88e613d23..22dcbdc31 100755 --- a/doc/salome/tui/static/doxygen.css +++ b/doc/salome/tui/static/doxygen.css @@ -1,5 +1,32 @@ -H1 { +body { + font-family: Arial, Helvetica, sans-serif; + background-color: #ffffff; +} + +h1 { text-align: center; + text-decoration: none; + border: none; + line-height: 25px; + text-align: center; +// text-transform:uppercase; + background: #D9f4fd; + font-size: 12pt; + font-weight: bold; + border: 1px solid #CCCCCC; + margin-top: 50px; + -moz-border-radius: 8px; + -moz-box-shadow:5px 5px 5px rgba(0, 0, 0, 0.15); +} + +h2 { + font-size: 12pt; + font-weight: bold; +} + +table { + font-size: 10pt; + padding-left: 20px; } CAPTION { @@ -11,16 +38,6 @@ A.qindex {} A.qindexRef {} -/* Link to any cross-referenced Doxygen element */ -A.el { - text-decoration: none; - font-weight: bold -} - -A.elRef { - font-weight: bold -} - /* Link to any cross-referenced Doxygen element inside a code section (ex: header) */ @@ -37,7 +54,53 @@ A.codeRef { A:hover { text-decoration: none; - background-color: lightblue + background-color: lightblue; +} + +div.contents { + font-family: Arial, Helvetica, sans-serif; + font-size: 10pt; + padding: 20px; +} + +div.navpath { + font-size: 11pt; +} + +div.header { + background: url("head.png"); + background-color: #175783; + border: 1px solid; + height: 80px; + background-repeat: no-repeat; + margin-bottom:20px; +} + +div.tabs { + text-align: justify; + margin-left : 2px; + margin-right : 2px; + margin-top : 2px; + margin-bottom : 2px + font-weight: bold; + color: #FFFFFF; +} + +div.footer { + background-color: #D9f4fd; + border: 1px solid #AAAAAA; + font-family: Arial, Helvetica, sans-serif; + font-size: 11px; + padding: 10px; +} + +div.div-footer { + background-color: #D9f4fd; + border: 1px solid #AAAAAA; + font-family: Arial, Helvetica, sans-serif; + font-size: 11px; + padding: 10px; + text-align: center; } DL.el { @@ -45,10 +108,8 @@ DL.el { } /* A code fragment (ex: header) */ -DIV.fragment { - width: 100%; +div.fragment { border: none; - background-color: #CCCCCC } /* In the alpha list (coumpound index), style of an alphabetical index letter */ @@ -94,10 +155,6 @@ DIV.groupText { font-size: smaller } -BODY { - background: #FFFFFF; -} - /*div.div-page { background-color: #FFFFFF; margin-left: 1em; @@ -125,17 +182,9 @@ div.tabs { color: #FFFFFF; } -DIV.div-footer { - margin-left: 1em; - margin-right: 1em; - margin-bottom: 0.2em; - text-align: right; - font-size: 9pt; -} - /* In File List, Coumpound List, etc, 1st column of the index */ TD.indexkey { - background-color: #CCCCCC; + background-color: #DDDDEE; font-weight: bold; padding-right : 10px; padding-top : 2px; @@ -149,7 +198,7 @@ TD.indexkey { /* In File List, Coumpound List, etc, 2nd column of the index */ TD.indexvalue { - background-color: #CCCCCC; + background-color: #EEEEFF; font-style: italic; padding-right : 10px; padding-top : 2px; @@ -168,3 +217,118 @@ span.comment { color: #800000 } span.preprocessor { color: #806020 } span.stringliteral { color: #002080 } span.charliteral { color: #008080 } + +/* @group Code Colorization */ + +.fragment { + font-family: monospace, fixed; + font-size: 10pt; +} + +pre.fragment { + width: 95%; + border: 1px solid #CCCCCC; + -moz-border-radius: 8px; + -moz-box-shadow:5px 5px 5px rgba(0, 0, 0, 0.15); + background-color:#EEF3F5; + padding: 4px 6px; + margin: 20px; +} + +/* Top Navigation style */ + +div.navigation { + margin-bottom:20px; +} + +/* Left navigation panel style */ + +body.ftvtree { + background-color: #D9f4fd; + margin: 10px; +} + +div.directory { + margin: 0; +} + +div.directory.p { + margin: 0; +} + +h3.swap { + font-size: 10pt; + margin-bottom: 0; +} + +/* Link to any cross-referenced Doxygen element */ +a.el { + text-decoration: none; + font-family: Arial, Helvetica, sans-serif; + font-weight: bold; + font-size: 10pt; + color: #551a8b; +} + +a.el:hover { + background-color: transparent; + color: #551acc; +} + +a { +// text-decoration: none; + font-family: Arial, Helvetica, sans-serif; + font-weight: bold; + font-size: 10pt; + color: #551a8b; +} + +a:hover { + background-color: transparent; + color: #551acc; +} + +a.elRef { + font-weight: normal; +} + + +#MSearchBox { + -moz-border-radius:8px 8px 8px 8px; + background-color:white; + border:1px solid #84B0C7; + margin:0; + padding:0; + white-space:nowrap; +} + +div.directory img { + vertical-align:-30%; +} + +div.directory p { + white-space:nowrap; + margin: 0; +} + +div.directory-alt div { + display: none; + margin: 0px; +} + + +div.directory div { + display: none; + margin: 0px; +} + +div.version { + background-color:#ffffde; + border:1px solid #cccccc; + font-family: Arial, Helvetica, sans-serif; + font-size: 9pt; + text-align: center; + width:100px; + -moz-border-radius: 8px; + // -moz-box-shadow:5px 5px 5px rgba(0, 0, 0, 0.15); +} \ No newline at end of file diff --git a/doc/salome/tui/static/footer.html b/doc/salome/tui/static/footer.html index cb55f397a..512db61fa 100755 --- a/doc/salome/tui/static/footer.html +++ b/doc/salome/tui/static/footer.html @@ -1,5 +1,14 @@ - - - - + + + + + + + + diff --git a/doc/salome/tui/static/header.html.in b/doc/salome/tui/static/header.html.in new file mode 100755 index 000000000..1c5ad03b6 --- /dev/null +++ b/doc/salome/tui/static/header.html.in @@ -0,0 +1,14 @@ + + + + + + SALOME Geometry Developer Guide + + + + +
+
Version: @VERSION@
+ + diff --git a/doc/salome/tui/static/myheader.html b/doc/salome/tui/static/myheader.html deleted file mode 100755 index d2efb75fa..000000000 --- a/doc/salome/tui/static/myheader.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - Main Page - - - - -  - - diff --git a/idl/GEOM_Gen.idl b/idl/GEOM_Gen.idl index 6ae925f61..c42150987 100644 --- a/idl/GEOM_Gen.idl +++ b/idl/GEOM_Gen.idl @@ -2850,7 +2850,9 @@ module GEOM SEGMENT, // segment EDGE, // other edge // VERTEX - VERTEX + VERTEX, + // ADVANCED shapes + ADVANCED // all advanced shapes (temporary implementation) }; }; diff --git a/resources/SalomeApp.xml b/resources/SalomeApp.xml index ec01447a9..52ccef7a7 100644 --- a/resources/SalomeApp.xml +++ b/resources/SalomeApp.xml @@ -50,5 +50,15 @@ + + + + + + + + + + diff --git a/src/BasicGUI/BasicGUI_CircleDlg.cxx b/src/BasicGUI/BasicGUI_CircleDlg.cxx index e92e92374..00e331c2a 100644 --- a/src/BasicGUI/BasicGUI_CircleDlg.cxx +++ b/src/BasicGUI/BasicGUI_CircleDlg.cxx @@ -158,7 +158,7 @@ void BasicGUI_CircleDlg::Init() double aStep = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); /* min, max, step and decimals for spin boxes & initial values */ - initSpinBox( GroupPntVecR->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPntVecR->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); GroupPntVecR->SpinBox_DX->setValue( 100 ); /* signals and slots connections */ diff --git a/src/BasicGUI/BasicGUI_EllipseDlg.cxx b/src/BasicGUI/BasicGUI_EllipseDlg.cxx index 549074327..8d7ebe2e2 100644 --- a/src/BasicGUI/BasicGUI_EllipseDlg.cxx +++ b/src/BasicGUI/BasicGUI_EllipseDlg.cxx @@ -127,8 +127,8 @@ void BasicGUI_EllipseDlg::Init() double aMajorR( 200. ), aMinorR( 100. ); /* min, max, step and decimals for spin boxes & initial values */ - initSpinBox( GroupPoints->SpinBox_DX, 0.000001, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( GroupPoints->SpinBox_DY, 0.000001, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPoints->SpinBox_DX, 0.000001, COORD_MAX, step, "length_precision" ); + initSpinBox( GroupPoints->SpinBox_DY, 0.000001, COORD_MAX, step, "length_precision" ); GroupPoints->SpinBox_DX->setValue( aMajorR ); GroupPoints->SpinBox_DY->setValue( aMinorR ); diff --git a/src/BasicGUI/BasicGUI_MarkerDlg.cxx b/src/BasicGUI/BasicGUI_MarkerDlg.cxx index 75c490a49..99fbd9251 100644 --- a/src/BasicGUI/BasicGUI_MarkerDlg.cxx +++ b/src/BasicGUI/BasicGUI_MarkerDlg.cxx @@ -206,7 +206,7 @@ void BasicGUI_MarkerDlg::Init() double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); for ( DataMap::iterator anIter = myData.begin(); anIter != myData.end(); ++anIter ) { - initSpinBox( anIter.value(), COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( anIter.value(), COORD_MIN, COORD_MAX, step, "length_precision" ); connect( anIter.value(), SIGNAL( valueChanged( double ) ), this, SLOT( onValueChanged( double ) ) ); } diff --git a/src/BasicGUI/BasicGUI_PlaneDlg.cxx b/src/BasicGUI/BasicGUI_PlaneDlg.cxx index 075a0c86b..35fc70532 100644 --- a/src/BasicGUI/BasicGUI_PlaneDlg.cxx +++ b/src/BasicGUI/BasicGUI_PlaneDlg.cxx @@ -184,15 +184,15 @@ void BasicGUI_PlaneDlg::Init() double aTrimSize = 2000.0; /* min, max, step and decimals for spin boxes */ - initSpinBox( GroupPntDir->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPntDir->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); GroupPntDir->SpinBox_DX->setValue( aTrimSize ); - initSpinBox( Group3Pnts->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Pnts->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); Group3Pnts->SpinBox_DX->setValue( aTrimSize ); - initSpinBox( GroupFace->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupFace->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); GroupFace->SpinBox_DX->setValue( aTrimSize ); - initSpinBox( Group2Vec->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Vec->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); Group2Vec->SpinBox_DX->setValue( aTrimSize ); - initSpinBox( GroupLCS->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupLCS->SpinBox_DX, 0.000001, COORD_MAX, aStep, "length_precision" ); GroupLCS->SpinBox_DX->setValue( aTrimSize ); /* signals and slots connections */ diff --git a/src/BasicGUI/BasicGUI_PointDlg.cxx b/src/BasicGUI/BasicGUI_PointDlg.cxx index 45ca5e8fa..88e0dff6e 100644 --- a/src/BasicGUI/BasicGUI_PointDlg.cxx +++ b/src/BasicGUI/BasicGUI_PointDlg.cxx @@ -231,28 +231,28 @@ void BasicGUI_PointDlg::Init() double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); /* min, max, step and decimals for spin boxes */ - initSpinBox( GroupXYZ->SpinBox_DX, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( GroupXYZ->SpinBox_DY, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( GroupXYZ->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupXYZ->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( GroupXYZ->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( GroupXYZ->SpinBox_DZ, COORD_MIN, COORD_MAX, step, "length_precision" ); GroupXYZ->SpinBox_DX->setValue( 0.0 ); GroupXYZ->SpinBox_DY->setValue( 0.0 ); GroupXYZ->SpinBox_DZ->setValue( 0.0 ); - initSpinBox( GroupRefPoint->SpinBox_DX, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( GroupRefPoint->SpinBox_DY, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( GroupRefPoint->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupRefPoint->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( GroupRefPoint->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( GroupRefPoint->SpinBox_DZ, COORD_MIN, COORD_MAX, step, "length_precision" ); GroupRefPoint->SpinBox_DX->setValue( 0.0 ); GroupRefPoint->SpinBox_DY->setValue( 0.0 ); GroupRefPoint->SpinBox_DZ->setValue( 0.0 ); step = 0.1; - initSpinBox( GroupOnCurve->SpinBox_DX, 0., 1., step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY + initSpinBox( GroupOnCurve->SpinBox_DX, 0., 1., step, "parametric_precision" ); GroupOnCurve->SpinBox_DX->setValue( 0.5 ); - initSpinBox( GroupOnSurface->SpinBox_DX, 0., 1., step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY + initSpinBox( GroupOnSurface->SpinBox_DX, 0., 1., step, "parametric_precision" ); GroupOnSurface->SpinBox_DX->setValue( 0.5 ); - initSpinBox( GroupOnSurface->SpinBox_DY, 0., 1., step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY + initSpinBox( GroupOnSurface->SpinBox_DY, 0., 1., step, "parametric_precision" ); GroupOnSurface->SpinBox_DY->setValue( 0.5 ); /* signals and slots connections */ @@ -310,8 +310,6 @@ void BasicGUI_PointDlg::SetDoubleSpinBoxStep( double step ) GroupRefPoint->SpinBox_DX->setSingleStep(step); GroupRefPoint->SpinBox_DY->setSingleStep(step); GroupRefPoint->SpinBox_DZ->setSingleStep(step); - GroupOnSurface->SpinBox_DX->setSingleStep(step); - GroupOnSurface->SpinBox_DY->setSingleStep(step); } diff --git a/src/BasicGUI/BasicGUI_VectorDlg.cxx b/src/BasicGUI/BasicGUI_VectorDlg.cxx index ff085f0fb..9b86c9ecf 100644 --- a/src/BasicGUI/BasicGUI_VectorDlg.cxx +++ b/src/BasicGUI/BasicGUI_VectorDlg.cxx @@ -126,9 +126,9 @@ void BasicGUI_VectorDlg::Init() double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); /* min, max, step and decimals for spin boxes */ - initSpinBox( GroupDimensions->SpinBox_DX, COORD_MIN, COORD_MAX, step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY - initSpinBox( GroupDimensions->SpinBox_DY, COORD_MIN, COORD_MAX, step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY - initSpinBox( GroupDimensions->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY + initSpinBox( GroupDimensions->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( GroupDimensions->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( GroupDimensions->SpinBox_DZ, COORD_MIN, COORD_MAX, step, "length_precision" ); double dx( 0. ), dy( 0. ), dz( 200. ); GroupDimensions->SpinBox_DX->setValue( dx ); diff --git a/src/BlocksGUI/BlocksGUI_TrsfDlg.cxx b/src/BlocksGUI/BlocksGUI_TrsfDlg.cxx index 27143ade1..2fa2ae849 100644 --- a/src/BlocksGUI/BlocksGUI_TrsfDlg.cxx +++ b/src/BlocksGUI/BlocksGUI_TrsfDlg.cxx @@ -114,7 +114,6 @@ void BlocksGUI_TrsfDlg::Init() int SpecificStep = 1; QMap::iterator anIter; for (anIter = mySpinBox.begin(); anIter != mySpinBox.end(); ++anIter) { - //anIter.data()->RangeStepAndValidator(1, 999, SpecificStep); initSpinBox(anIter.value(), 1, 999, SpecificStep); } diff --git a/src/BuildGUI/BuildGUI_WireDlg.cxx b/src/BuildGUI/BuildGUI_WireDlg.cxx index 29f54f671..4f8641e43 100644 --- a/src/BuildGUI/BuildGUI_WireDlg.cxx +++ b/src/BuildGUI/BuildGUI_WireDlg.cxx @@ -72,7 +72,7 @@ BuildGUI_WireDlg::BuildGUI_WireDlg( GeometryGUI* theGeometryGUI, QWidget* parent GroupArgs->TextLabel2->setText( tr( "GEOM_TOLERANCE" ) ); double SpecificStep = 0.0001; double prec = Precision::Confusion(); - initSpinBox(GroupArgs->SpinBox_DX, prec, MAX_NUMBER, SpecificStep, 9); + initSpinBox(GroupArgs->SpinBox_DX, prec, MAX_NUMBER, SpecificStep, "len_tol_precision" ); GroupArgs->SpinBox_DX->setValue(prec); QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); diff --git a/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.ui b/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.ui index da4fd5062..39c97be4f 100644 --- a/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.ui +++ b/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.ui @@ -96,9 +96,6 @@ - - - @@ -134,9 +131,6 @@ - - - @@ -172,9 +166,6 @@ - - - @@ -182,6 +173,15 @@ + + + + + + + + + @@ -195,6 +195,11 @@ QDoubleSpinBox
SalomeApp_DoubleSpinBox.h
+ + SalomeApp_IntSpinBox + QSpinBox +
SalomeApp_IntSpinBox.h
+
PushButton1 diff --git a/src/EntityGUI/EntityGUI_3DSketcherDlg.cxx b/src/EntityGUI/EntityGUI_3DSketcherDlg.cxx index 33df3ac4e..a3171f10a 100755 --- a/src/EntityGUI/EntityGUI_3DSketcherDlg.cxx +++ b/src/EntityGUI/EntityGUI_3DSketcherDlg.cxx @@ -146,9 +146,9 @@ void EntityGUI_3DSketcherDlg::Init() double step = SUIT_Session::session()->resourceMgr()->doubleValue( "Geometry", "SettingsGeomStep", 100.0 ); /* min, max, step and decimals for spin boxes */ - initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, "length_precision" ); Group3Spin->SpinBox_DX->setValue(0.0); Group3Spin->SpinBox_DY->setValue(0.0); @@ -465,20 +465,6 @@ bool EntityGUI_3DSketcherDlg::execute( ObjectList& objects ) return true; } -//================================================================================= -// function : initSpinBox() -// purpose : -//================================================================================= - -void EntityGUI_3DSketcherDlg::initSpinBox( QDoubleSpinBox* spinBox, - double min, double max, - double step, int decimals ) -{ - spinBox->setDecimals( decimals ); - spinBox->setRange( min, max ); - spinBox->setSingleStep( step ); -} - //================================================================================= // function : SetDoubleSpinBoxStep() // purpose : Double spin box management diff --git a/src/EntityGUI/EntityGUI_3DSketcherDlg.h b/src/EntityGUI/EntityGUI_3DSketcherDlg.h index 2bda30ac1..6f7839689 100755 --- a/src/EntityGUI/EntityGUI_3DSketcherDlg.h +++ b/src/EntityGUI/EntityGUI_3DSketcherDlg.h @@ -61,10 +61,7 @@ public: ~EntityGUI_3DSketcherDlg(); protected: - void initSpinBox( QDoubleSpinBox*, - double, double, double = 0.1, - int = 3 ); - + // redefined from GEOMBase_Helper virtual GEOM::GEOM_IOperations_ptr createOperation(); virtual bool isValid( QString& ); diff --git a/src/EntityGUI/EntityGUI_SketcherDlg.cxx b/src/EntityGUI/EntityGUI_SketcherDlg.cxx index c5f1fdc8b..000461777 100644 --- a/src/EntityGUI/EntityGUI_SketcherDlg.cxx +++ b/src/EntityGUI/EntityGUI_SketcherDlg.cxx @@ -326,16 +326,17 @@ void EntityGUI_SketcherDlg::Init() double step = SUIT_Session::session()->resourceMgr()->doubleValue( "Geometry", "SettingsGeomStep", 100.0 ); /* min, max, step and decimals for spin boxes */ - initSpinBox( Group1Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group4Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 0.1, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group4Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 0.1, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group4Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group4Spin->SpinBox_DS, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group1Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group4Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, "length_precision" ); + // san: Note specific step values below! + initSpinBox( Group4Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 0.1, "length_precision" ); + initSpinBox( Group4Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 0.1, "length_precision" ); + initSpinBox( Group4Spin->SpinBox_DS, COORD_MIN, COORD_MAX, 5., "length_precision" ); /* displays Dialog */ MainWidget->GroupConstructors->setEnabled( false ); @@ -433,8 +434,8 @@ void EntityGUI_SketcherDlg::PointClicked( int constructorId ) if ( myConstructorId == 0 ) { // SEGMENT if ( constructorId == 1 ) { // XY mySketchType = PT_ABS; - initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); Group2Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_X2" ) ); Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_Y2" ) ); myX = 0.0; @@ -448,8 +449,8 @@ void EntityGUI_SketcherDlg::PointClicked( int constructorId ) } else if ( constructorId == 0 ) { // DXDY mySketchType = PT_RELATIVE; - initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); Group2Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_DX2" ) ); Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_DY2" ) ); myDX = 0.0; @@ -503,8 +504,7 @@ void EntityGUI_SketcherDlg::Dir2Clicked( int constructorId ) myY = 0.0; myLength = 100.0; if ( myConstructorDirId == 2 ) { // Angle - initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 5., "length_precision" ); Group2Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_ANGLE2" ) ); Group2Spin->SpinBox_DX->setValue( myAngle ); Group2Spin->buttonApply->setFocus(); @@ -512,16 +512,19 @@ void EntityGUI_SketcherDlg::Dir2Clicked( int constructorId ) if ( constructorId == 2 ) { // Length mySketchType = DIR_ANGLE_LENGTH; + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_LENGTH2" ) ); Group2Spin->SpinBox_DY->setValue( myLength ); } else if ( constructorId == 0 ) { // X mySketchType = DIR_ANGLE_X; + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "angle_precision" ); Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_X3" ) ); Group2Spin->SpinBox_DY->setValue( myX ); } else if ( constructorId == 1 ) { // Y mySketchType = DIR_ANGLE_Y; + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "angle_precision" ); Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_Y3" ) ); Group2Spin->SpinBox_DY->setValue( myY ); } @@ -567,9 +570,9 @@ void EntityGUI_SketcherDlg::Dir2Clicked( int constructorId ) } } else if ( myConstructorDirId == 3 ) { // DXDY - initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 0.1, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 0.1, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 0.1, "length_precision" ); + initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 0.1, "length_precision" ); + initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, "length_precision" ); Group3Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_VX2" ) ); Group3Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_VY2" ) ); myDX = 0.0; @@ -600,9 +603,9 @@ void EntityGUI_SketcherDlg::Dir2Clicked( int constructorId ) if ( myConstructorDirId == 2 ) { // Angle if ( constructorId == 2 ) { // Length mySketchType = DIR_ANGLE_LENGTH; - initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 5., "angle_precision" ); + initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, 5., "angle_precision" ); Group3Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_ANGLE2" ) ); Group3Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_RADIUS2" ) ); Group3Spin->TextLabel3->setText( tr( "GEOM_SKETCHER_ANGLE2" )); @@ -618,8 +621,8 @@ void EntityGUI_SketcherDlg::Dir2Clicked( int constructorId ) else if ( myConstructorDirId == 0 ) { // Perpendicular if ( constructorId == 2 ) { // Length mySketchType = DIR_PER_LENGTH; - initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 5., "angle_precision" ); Group2Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_RADIUS2" ) ); Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_ANGLE2" ) ); myRadius = 100.0; @@ -633,8 +636,8 @@ void EntityGUI_SketcherDlg::Dir2Clicked( int constructorId ) else if ( myConstructorDirId == 1 ) { // Tangent if ( constructorId == 2 ) { // Length mySketchType = DIR_TAN_LENGTH; - initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 5., "angle_precision" ); Group2Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_RADIUS2" ) ); Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_ANGLE2" ) ); myRadius = 100.0; @@ -1601,13 +1604,31 @@ void EntityGUI_SketcherDlg::keyPressEvent( QKeyEvent* e ) } } +//================================================================================= +// function : initSpinBox() +// purpose : +//================================================================================= void EntityGUI_SketcherDlg::initSpinBox( SalomeApp_DoubleSpinBox* spinBox, double min, double max, - double step, int decimals ) + double step, const char* quantity ) { - spinBox->setDecimals( decimals ); + // The same stuff as in GEOMBase_Skeleton::initSpinBox()! + // TODO: Think how to keep the single piece of code... + + // Obtain precision from preferences + SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); + int aPrecision = resMgr->integerValue( "Geometry", quantity, 6 ); + + spinBox->setPrecision( aPrecision ); + spinBox->setDecimals( aPrecision ); // it's necessary to set decimals before the range setting, + // by default Qt rounds boundaries to 2 decimals at setRange spinBox->setRange( min, max ); spinBox->setSingleStep( step ); + + // Add a hint for the user saying how to tune precision + QString userPropName = QObject::tr( QString( "PREF_%1" ).arg( quantity ).toLatin1().constData() ); + spinBox->setProperty( "validity_tune_hint", + QVariant( QObject::tr( "PRECISION_HINT" ).arg( userPropName ) ) ); } //================================================================================= @@ -1622,10 +1643,13 @@ void EntityGUI_SketcherDlg::SetDoubleSpinBoxStep( double step ) Group3Spin->SpinBox_DX->setSingleStep(step); Group3Spin->SpinBox_DY->setSingleStep(step); Group3Spin->SpinBox_DZ->setSingleStep(step); - Group4Spin->SpinBox_DX->setSingleStep(step); - Group4Spin->SpinBox_DY->setSingleStep(step); Group4Spin->SpinBox_DZ->setSingleStep(step); - Group4Spin->SpinBox_DS->setSingleStep(step); + + // san: Do NOT override the step when a speicifc step value is used + // in some input fields! + //Group4Spin->SpinBox_DX->setSingleStep(step); + //Group4Spin->SpinBox_DY->setSingleStep(step); + //Group4Spin->SpinBox_DS->setSingleStep(step); } //================================================================================= diff --git a/src/EntityGUI/EntityGUI_SketcherDlg.h b/src/EntityGUI/EntityGUI_SketcherDlg.h index 13d2a880e..11f12eefd 100644 --- a/src/EntityGUI/EntityGUI_SketcherDlg.h +++ b/src/EntityGUI/EntityGUI_SketcherDlg.h @@ -72,7 +72,7 @@ public: protected: void initSpinBox( SalomeApp_DoubleSpinBox*, double, double, double = 0.1, - int = 3 ); + const char* quantity = "length_precision" ); // redefined from GEOMBase_Helper virtual GEOM::GEOM_IOperations_ptr createOperation(); diff --git a/src/GEOM/GEOM_Object.cxx b/src/GEOM/GEOM_Object.cxx index 965081b29..8d1e7f300 100644 --- a/src/GEOM/GEOM_Object.cxx +++ b/src/GEOM/GEOM_Object.cxx @@ -149,6 +149,7 @@ Handle(GEOM_Object) GEOM_Object::GetReferencedObject(TDF_Label& theLabel) GEOM_Object::GEOM_Object(TDF_Label& theEntry) : _label(theEntry), _ior(""), _docID(-1) { + std::cerr << "GEOM_Object::GEOM_Object(TDF_Label& theEntry)" << std::endl; Handle(TDocStd_Document) aDoc = TDocStd_Owner::GetDocument(_label.Data()); if(!aDoc.IsNull()) { Handle(TDataStd_Integer) anID; @@ -167,6 +168,7 @@ GEOM_Object::GEOM_Object(TDF_Label& theEntry) GEOM_Object::GEOM_Object(TDF_Label& theEntry, int theType) : _label(theEntry), _ior(""), _docID(-1) { + std::cerr << "GEOM_Object::GEOM_Object(TDF_Label& theEntry, int theType)" << std::endl; Handle(TDocStd_Document) aDoc = TDocStd_Owner::GetDocument(_label.Data()); if(!aDoc.IsNull()) { Handle(TDataStd_Integer) anID; @@ -190,6 +192,7 @@ GEOM_Object::GEOM_Object(TDF_Label& theEntry, int theType) //============================================================================= GEOM_Object::~GEOM_Object() { + std::cerr << "GEOM_Object::~GEOM_Object()" << std::endl; MESSAGE("GEOM_Object::~GEOM_Object()"); } diff --git a/src/GEOMBase/GEOMBase_Skeleton.cxx b/src/GEOMBase/GEOMBase_Skeleton.cxx index c04840fe6..9785264e3 100644 --- a/src/GEOMBase/GEOMBase_Skeleton.cxx +++ b/src/GEOMBase/GEOMBase_Skeleton.cxx @@ -151,13 +151,22 @@ void GEOMBase_Skeleton::initSpinBox( QSpinBox* spinBox, //================================================================================= void GEOMBase_Skeleton::initSpinBox( SalomeApp_DoubleSpinBox* spinBox, double min, double max, - double step, int decimals ) + double step, const char* quantity ) { - spinBox->setPrecision( decimals ); - spinBox->setDecimals( decimals ); // it's necessary to set decimals before the range setting, + // Obtain precision from preferences + SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); + int aPrecision = resMgr->integerValue( "Geometry", quantity, 6 ); + + spinBox->setPrecision( aPrecision ); + spinBox->setDecimals( qAbs( aPrecision ) ); // it's necessary to set decimals before the range setting, // by default Qt rounds boundaries to 2 decimals at setRange spinBox->setRange( min, max ); spinBox->setSingleStep( step ); + + // Add a hint for the user saying how to tune precision + QString userPropName = QObject::tr( QString( "GEOM_PREF_%1" ).arg( quantity ).toLatin1().constData() ); + spinBox->setProperty( "validity_tune_hint", + QVariant( QObject::tr( "GEOM_PRECISION_HINT" ).arg( userPropName ) ) ); } //================================================================================= diff --git a/src/GEOMBase/GEOMBase_Skeleton.h b/src/GEOMBase/GEOMBase_Skeleton.h index 1d267ffc2..c1b39791b 100644 --- a/src/GEOMBase/GEOMBase_Skeleton.h +++ b/src/GEOMBase/GEOMBase_Skeleton.h @@ -60,7 +60,7 @@ private: protected: void initSpinBox( QSpinBox*, int, int, int = 1 ); - void initSpinBox( SalomeApp_DoubleSpinBox*, double, double, double = 0.1, int = 3 ); + void initSpinBox( SalomeApp_DoubleSpinBox*, double, double, double = 0.1, const char* = "length_precision" ); void updateAttributes( GEOM::GEOM_Object_ptr, const QStringList& ); diff --git a/src/GEOMGUI/GEOM_Displayer.cxx b/src/GEOMGUI/GEOM_Displayer.cxx index ab52189af..c809f1917 100644 --- a/src/GEOMGUI/GEOM_Displayer.cxx +++ b/src/GEOMGUI/GEOM_Displayer.cxx @@ -550,7 +550,7 @@ void GEOM_Displayer::Update( SALOME_OCCPrs* prs ) AISShape = new GEOM_AISShape (myShape, ""); } // Temporary staff: vertex must be infinite for correct visualization - AISShape->SetInfiniteState( myShape.Infinite() || myShape.ShapeType() == TopAbs_VERTEX ); + AISShape->SetInfiniteState( myShape.Infinite() ); // || myShape.ShapeType() == TopAbs_VERTEX // VSR: 05/04/2010: Fix 20668 (Fit All for points & lines) // Setup shape properties here ..., e.g. display mode, color, transparency, etc AISShape->SetDisplayMode( myDisplayMode ); diff --git a/src/GEOMGUI/GEOM_msg_en.ts b/src/GEOMGUI/GEOM_msg_en.ts index 05feaa709..bb8bb1b34 100644 --- a/src/GEOMGUI/GEOM_msg_en.ts +++ b/src/GEOMGUI/GEOM_msg_en.ts @@ -2599,6 +2599,42 @@ Please, select face, shell or solid and try again PREF_DEFLECTION Deflection coefficient + + GEOM_PREF_def_precision + Default precision + + + GEOM_PREF_length_precision + Length precision + + + GEOM_PREF_angle_precision + Angular precision + + + GEOM_PREF_len_tol_precision + Length tolerance precision + + + GEOM_PREF_ang_tol_precision + Angular tolerance precision + + + GEOM_PREF_weight_precision + Weight precision + + + GEOM_PREF_density_precision + Density precision + + + GEOM_PREF_parametric_precision + Parametric precision + + + GEOM_PREF_param_tol_precision + Parametric tolerance precision + PREF_DISPLAY_MODE Default display mode @@ -2615,6 +2651,10 @@ Please, select face, shell or solid and try again PREF_GROUP_OCCVIEWER OCC Viewer 3d + + GEOM_PREF_GROUP_PRECISION + Input fields precision + PREF_GROUP_VERTEX Marker of Points @@ -3984,6 +4024,16 @@ Please, select face, shell or solid and try again Would you like to take into account the units? Otherwise the dimensions will be kept without modifications. + + GEOM_ADVANCED + Advanced shape: type %1 + + + GEOM_PRECISION_HINT + +Input value precision can be adjusted using +'%1' parameter in Geometry module preferences. + BasicGUI_CurveDlg diff --git a/src/GEOMGUI/GeometryGUI.cxx b/src/GEOMGUI/GeometryGUI.cxx index e9014be60..bd04b4191 100644 --- a/src/GEOMGUI/GeometryGUI.cxx +++ b/src/GEOMGUI/GeometryGUI.cxx @@ -1421,6 +1421,36 @@ void GeometryGUI::createPreferences() int defl = addPreference( tr( "PREF_DEFLECTION" ), genGroup, LightApp_Preferences::DblSpin, "Geometry", "deflection_coeff" ); + + // Quantities with individual precision settings + int precGroup = addPreference( tr( "GEOM_PREF_GROUP_PRECISION" ), tabId ); + setPreferenceProperty( precGroup, "columns", 2 ); + + const int nbQuantities = 8; + int prec[nbQuantities], ii = 0; + prec[ii++] = addPreference( tr( "GEOM_PREF_length_precision" ), precGroup, + LightApp_Preferences::IntSpin, "Geometry", "length_precision" ); + prec[ii++] = addPreference( tr( "GEOM_PREF_angle_precision" ), precGroup, + LightApp_Preferences::IntSpin, "Geometry", "angle_precision" ); + prec[ii++] = addPreference( tr( "GEOM_PREF_len_tol_precision" ), precGroup, + LightApp_Preferences::IntSpin, "Geometry", "len_tol_precision" ); + prec[ii++] = addPreference( tr( "GEOM_PREF_ang_tol_precision" ), precGroup, + LightApp_Preferences::IntSpin, "Geometry", "ang_tol_precision" ); + prec[ii++] = addPreference( tr( "GEOM_PREF_weight_precision" ), precGroup, + LightApp_Preferences::IntSpin, "Geometry", "weight_precision" ); + prec[ii++] = addPreference( tr( "GEOM_PREF_density_precision" ), precGroup, + LightApp_Preferences::IntSpin, "Geometry", "density_precision" ); + prec[ii++] = addPreference( tr( "GEOM_PREF_parametric_precision" ), precGroup, + LightApp_Preferences::IntSpin, "Geometry", "parametric_precision" ); + prec[ii ] = addPreference( tr( "GEOM_PREF_param_tol_precision" ), precGroup, + LightApp_Preferences::IntSpin, "Geometry", "param_tol_precision" ); + + // Set property for precision value for spinboxes + for ( ii = 0; ii < nbQuantities; ii++ ){ + setPreferenceProperty( prec[ii], "min", -10 ); + setPreferenceProperty( prec[ii], "max", 10 ); + setPreferenceProperty( prec[ii], "precision", 2 ); + } int VertexGroup = addPreference( tr( "PREF_GROUP_VERTEX" ), tabId ); setPreferenceProperty( VertexGroup, "columns", 2 ); @@ -1473,9 +1503,9 @@ void GeometryGUI::createPreferences() QList aMarkerScaleIndicesList; QStringList aMarkerScaleValuesList; - for ( int i = GEOM::MS_10; i <= GEOM::MS_70; i++ ) { - aMarkerScaleIndicesList << i; - aMarkerScaleValuesList << QString::number( (i-(int)GEOM::MS_10)*0.5 + 1.0 ); + for ( int iii = GEOM::MS_10; iii <= GEOM::MS_70; iii++ ) { + aMarkerScaleIndicesList << iii; + aMarkerScaleValuesList << QString::number( (iii-(int)GEOM::MS_10)*0.5 + 1.0 ); } setPreferenceProperty( markerScale, "strings", aMarkerScaleValuesList ); diff --git a/src/GEOMGUI/geom_pluginsmanager.py b/src/GEOMGUI/geom_pluginsmanager.py index 714dae31a..7120fcd65 100644 --- a/src/GEOMGUI/geom_pluginsmanager.py +++ b/src/GEOMGUI/geom_pluginsmanager.py @@ -44,6 +44,8 @@ from PyQt4 import QtCore import salome SEP=":" +if sys.platform == "win32": + SEP = ";" # Get SALOME PyQt interface import SalomePyQt @@ -119,10 +121,10 @@ class Plugins: plugins_files=[] for directory in self.plugindirs: - geom_plugins_file = os.path.join(directory,"geom_plugins.py") - if os.path.isfile(geom_plugins_file): - plugins_files.append((directory,geom_plugins_file)) - lasttime=max(lasttime,os.path.getmtime(geom_plugins_file)) + plugins_file = os.path.join(directory,"geom_plugins.py") + if os.path.isfile(plugins_file): + plugins_files.append((directory,plugins_file)) + lasttime=max(lasttime,os.path.getmtime(plugins_file)) plugins_files.sort() diff --git a/src/GEOMImpl/GEOMImpl_HealingDriver.cxx b/src/GEOMImpl/GEOMImpl_HealingDriver.cxx index 6dd8160f6..c4876744a 100644 --- a/src/GEOMImpl/GEOMImpl_HealingDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_HealingDriver.cxx @@ -226,7 +226,8 @@ void SuppressFacesRec (const TopTools_SequenceOfShape& theShapesFaces, if (isFound) { TopoDS_Shape anOutSh_i; SuppressFacesRec(theShapesFaces, aShape_i, anOutSh_i); - BB.Add(CC, anOutSh_i); + if ( !anOutSh_i.IsNull() ) + BB.Add(CC, anOutSh_i); } else { // nothing to do diff --git a/src/GEOMImpl/GEOMImpl_IHealingOperations.cxx b/src/GEOMImpl/GEOMImpl_IHealingOperations.cxx index 7c90d1e2c..4e0cad45f 100644 --- a/src/GEOMImpl/GEOMImpl_IHealingOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_IHealingOperations.cxx @@ -54,6 +54,12 @@ #include #include // CAREFUL ! position of this file is critic : see Lucien PIGNOLONI / OCC +#ifdef OCC_VERSION_SERVICEPACK +#if (OCC_VERSION_MAJOR << 24 | OCC_VERSION_MINOR << 16 | OCC_VERSION_MAINTENANCE << 8 | OCC_VERSION_SERVICEPACK) > 0x06030008 +#define OCCT_6_3_0_sp_9 +#endif +#endif + //============================================================================= /*! @@ -729,7 +735,13 @@ bool GEOMImpl_IHealingOperations::GetFreeBoundary (Handle(GEOM_Object) theObject return false; // get free boundary shapes - ShapeAnalysis_FreeBounds anAnalizer( aShape ); + +#ifdef OCCT_6_3_0_sp_9 + ShapeAnalysis_FreeBounds anAnalizer(aShape, Standard_False, + Standard_True, Standard_True); +#else + ShapeAnalysis_FreeBounds anAnalizer(aShape); +#endif TopoDS_Compound aClosed = anAnalizer.GetClosedWires(); TopoDS_Compound anOpen = anAnalizer.GetOpenWires(); diff --git a/src/GEOMImpl/GEOMImpl_IMeasureOperations.cxx b/src/GEOMImpl/GEOMImpl_IMeasureOperations.cxx index cb04f5776..3c6aabbc9 100644 --- a/src/GEOMImpl/GEOMImpl_IMeasureOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_IMeasureOperations.cxx @@ -155,6 +155,14 @@ GEOMImpl_IMeasureOperations::ShapeKind GEOMImpl_IMeasureOperations::KindOfShape TopoDS_Shape aShape = aRefShape->GetValue(); if (aShape.IsNull()) return aKind; + int geom_type = theShape->GetType(); + + // check if it's advanced shape + if ( geom_type > ADVANCED_BASE ) { + SetErrorCode(OK); + return SK_ADVANCED; + } + // Call algorithm GEOMAlgo_ShapeInfoFiller aSF; aSF.SetShape(aShape); diff --git a/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx b/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx index 286c83423..56f68e61b 100644 --- a/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx @@ -78,7 +78,9 @@ class GEOMImpl_IMeasureOperations : public GEOM_IOperations { SK_SEGMENT, // segment SK_EDGE, // other edge // VERTEX - SK_VERTEX + SK_VERTEX, + // ADVANCED shapes + SK_ADVANCED, // all advanced shapes (temporary implementation) }; Standard_EXPORT ShapeKind KindOfShape (Handle(GEOM_Object) theShape, diff --git a/src/GEOMImpl/GEOMImpl_LineDriver.cxx b/src/GEOMImpl/GEOMImpl_LineDriver.cxx index 03ebeb56d..97001a90c 100644 --- a/src/GEOMImpl/GEOMImpl_LineDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_LineDriver.cxx @@ -163,7 +163,7 @@ Standard_Integer GEOMImpl_LineDriver::Execute(TFunction_Logbook& log) const } if (aShape.IsNull()) return 0; - aShape.Infinite(true); + //aShape.Infinite(true); // VSR: 05/04/2010: Fix 20668 (Fit All for points & lines) aFunction->SetValue(aShape); diff --git a/src/GEOMImpl/GEOMImpl_PointDriver.cxx b/src/GEOMImpl/GEOMImpl_PointDriver.cxx index 2c780cd3f..2164fc72c 100644 --- a/src/GEOMImpl/GEOMImpl_PointDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_PointDriver.cxx @@ -223,7 +223,7 @@ Standard_Integer GEOMImpl_PointDriver::Execute(TFunction_Logbook& log) const aShape = mkVertex.Shape(); } - aShape.Infinite(Standard_True); + //aShape.Infinite(Standard_True); // VSR: 05/04/2010: Fix 20668 (Fit All for points & lines) aFunction->SetValue(aShape); log.SetTouched(Label()); diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_DeflectionDlg.cxx b/src/GEOMToolsGUI/GEOMToolsGUI_DeflectionDlg.cxx index d36b4f0c5..4277f21f4 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI_DeflectionDlg.cxx +++ b/src/GEOMToolsGUI/GEOMToolsGUI_DeflectionDlg.cxx @@ -72,13 +72,13 @@ GEOMToolsGUI_DeflectionDlg::GEOMToolsGUI_DeflectionDlg (QWidget* parent) GroupC1Layout->addWidget(TextLabel1, 0, 0); SpinBox = new QtxDoubleSpinBox (GroupC1); - SpinBox->setPrecision( 6 ); - SpinBox->setDecimals( 6 ); + // Obtain precision from preferences + SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); + int aPrecision = resMgr->integerValue( "Geometry", "parametric_precision", 6 ); + SpinBox->setPrecision( aPrecision ); + SpinBox->setDecimals( aPrecision ); SpinBox->setRange( DEFLECTION_MIN, 1.0 ); SpinBox->setSingleStep( 1.0e-04 ); - //SpinBox->setMinimum(1.0e-07); - //SpinBox->setMaximum(1.0); - //SpinBox->setStep(1.0e-04); SpinBox->setObjectName("SpinBoxU"); SpinBox->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed)); SpinBox->setValue(1.0e-04); diff --git a/src/GEOM_I/GEOM_Gen_i.cc b/src/GEOM_I/GEOM_Gen_i.cc index cbc893579..cafe21c6e 100644 --- a/src/GEOM_I/GEOM_Gen_i.cc +++ b/src/GEOM_I/GEOM_Gen_i.cc @@ -231,6 +231,12 @@ SALOMEDS::SObject_ptr GEOM_Gen_i::PublishInStudy(SALOMEDS::Study_ptr theStudy, } else if ( aShape->GetType() == GEOM_MARKER ) { aPixmap->SetPixMap( "ICON_OBJBROWSER_LCS" ); aShapeName = "LocalCS_"; + } else if ( aShape->GetType() > ADVANCED_BASE ) { + char buf[20]; + sprintf( buf, "%d", aShape->GetType() ); + std::string advId = "ICON_OBJBROWSER_ADVANCED_"; advId += buf; + aPixmap->SetPixMap( advId.c_str() ); + aShapeName = "Advanced_"; } else if ( aShape->GetShapeType() == GEOM::COMPOUND ) { aPixmap->SetPixMap( "ICON_OBJBROWSER_COMPOUND" ); aShapeName = "Compound_"; diff --git a/src/GEOM_I/GEOM_Object_i.cc b/src/GEOM_I/GEOM_Object_i.cc index c1ba2a172..1dd516cc4 100644 --- a/src/GEOM_I/GEOM_Object_i.cc +++ b/src/GEOM_I/GEOM_Object_i.cc @@ -54,6 +54,7 @@ GEOM_Object_i::GEOM_Object_i (PortableServer::POA_ptr thePOA, GEOM::GEOM_Gen_ptr Handle(GEOM_Object) theImpl) : SALOME::GenericObj_i( thePOA ), _engine(theEngine), _impl(theImpl) { + std::cerr << "GEOM_Object_i::GEOM_Object_i " << std::endl; } //============================================================================= @@ -64,6 +65,7 @@ GEOM_Object_i::GEOM_Object_i (PortableServer::POA_ptr thePOA, GEOM::GEOM_Gen_ptr GEOM_Object_i::~GEOM_Object_i() { + std::cerr << "GEOM_Object_i::~GEOM_Object_i " << std::endl; MESSAGE("GEOM_Object_i::~GEOM_Object_i"); GEOM_Engine::GetEngine()->RemoveObject(_impl); } diff --git a/src/GenerationGUI/GenerationGUI_FillingDlg.cxx b/src/GenerationGUI/GenerationGUI_FillingDlg.cxx index 38ccb0933..4a28fe4fb 100644 --- a/src/GenerationGUI/GenerationGUI_FillingDlg.cxx +++ b/src/GenerationGUI/GenerationGUI_FillingDlg.cxx @@ -115,14 +115,14 @@ void GenerationGUI_FillingDlg::Init() globalSelection( GEOM_COMPOUND ); - double SpecificStep1 = 1; + int SpecificStep1 = 1; double SpecificStep2 = 0.0001; /* min, max, step and decimals for spin boxes & initial values */ - initSpinBox( GroupPoints->SpinBox1, 2.0, MAX_NUMBER, SpecificStep1, 3 ); - initSpinBox( GroupPoints->SpinBox2, 0.00001, 10000.0, SpecificStep2, 5 ); - initSpinBox( GroupPoints->SpinBox3, 0.0, MAX_NUMBER, SpecificStep1, 3 ); - initSpinBox( GroupPoints->SpinBox4, 1.0, MAX_NUMBER, SpecificStep1, 3 ); - initSpinBox( GroupPoints->SpinBox5, 0.00001, 10000.0, SpecificStep2, 5 ); + initSpinBox( GroupPoints->SpinBox1, 2, MAX_NUMBER, SpecificStep1 ); + initSpinBox( GroupPoints->SpinBox2, 0.00001, 10000.0, SpecificStep2, "len_tol_precision" ); + initSpinBox( GroupPoints->SpinBox3, 0, MAX_NUMBER, SpecificStep1 ); + initSpinBox( GroupPoints->SpinBox4, 1, MAX_NUMBER, SpecificStep1 ); + initSpinBox( GroupPoints->SpinBox5, 0.00001, 10000.0, SpecificStep2, "len_tol_precision" ); GroupPoints->SpinBox1->setValue( myMinDeg ); GroupPoints->SpinBox2->setValue( myTol2D ); @@ -152,7 +152,8 @@ void GenerationGUI_FillingDlg::Init() connect( GroupPoints->CheckBox1, SIGNAL( stateChanged( int ) ), this, SLOT( ApproxChanged() ) ); - connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); + // san: Commented, as all spin boxes here either are integer or use specific non-default step value + //connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); @@ -167,10 +168,7 @@ void GenerationGUI_FillingDlg::Init() //================================================================================= void GenerationGUI_FillingDlg::SetDoubleSpinBoxStep( double step ) { - GroupPoints->SpinBox1->setSingleStep(step); GroupPoints->SpinBox2->setSingleStep(step); - GroupPoints->SpinBox3->setSingleStep(step); - GroupPoints->SpinBox4->setSingleStep(step); GroupPoints->SpinBox5->setSingleStep(step); } diff --git a/src/GenerationGUI/GenerationGUI_PrismDlg.cxx b/src/GenerationGUI/GenerationGUI_PrismDlg.cxx index 46171cbfd..7fa7446dc 100644 --- a/src/GenerationGUI/GenerationGUI_PrismDlg.cxx +++ b/src/GenerationGUI/GenerationGUI_PrismDlg.cxx @@ -139,14 +139,14 @@ void GenerationGUI_PrismDlg::Init() double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); // min, max, step and decimals for spin boxes & initial values - initSpinBox(GroupPoints3->SpinBox_DX, COORD_MIN, COORD_MAX, step, 6); // VSR:TODO : DBL_DIGITS_DISPLAY - initSpinBox(GroupPoints3->SpinBox_DY, COORD_MIN, COORD_MAX, step, 6); // VSR:TODO : DBL_DIGITS_DISPLAY - initSpinBox(GroupPoints3->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 6); // VSR:TODO : DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints3->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupPoints3->SpinBox_DY, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupPoints3->SpinBox_DZ, COORD_MIN, COORD_MAX, step, "length_precision" ); GroupPoints3->SpinBox_DX->setValue(0.0); GroupPoints3->SpinBox_DY->setValue(0.0); GroupPoints3->SpinBox_DZ->setValue(0.0); - initSpinBox(GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); GroupPoints->SpinBox_DX->setValue(100.0); // init variables diff --git a/src/GenerationGUI/GenerationGUI_RevolDlg.cxx b/src/GenerationGUI/GenerationGUI_RevolDlg.cxx index 8024e38cb..d4cda0644 100644 --- a/src/GenerationGUI/GenerationGUI_RevolDlg.cxx +++ b/src/GenerationGUI/GenerationGUI_RevolDlg.cxx @@ -109,7 +109,7 @@ void GenerationGUI_RevolDlg::Init() { // min, max, step and decimals for spin boxes & initial values double SpecificStep = 5; - initSpinBox(GroupPoints->SpinBox_DX, -360.0, 360.0, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DX, -360.0, 360.0, SpecificStep, "angle_precision" ); GroupPoints->SpinBox_DX->setValue(45.0); // init variables @@ -135,7 +135,8 @@ void GenerationGUI_RevolDlg::Init() connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(onBothway())); connect(GroupPoints->CheckButton2, SIGNAL(toggled(bool)), this, SLOT(onReverse())); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); + // san: We don't need this, as the default step value is not used in this dialog box + //connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); initName(tr("GEOM_REVOLUTION")); resize(100,100); diff --git a/src/MeasureGUI/MeasureGUI_WhatisDlg.cxx b/src/MeasureGUI/MeasureGUI_WhatisDlg.cxx index 64faf036b..2c77dce21 100644 --- a/src/MeasureGUI/MeasureGUI_WhatisDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_WhatisDlg.cxx @@ -587,6 +587,14 @@ QString MeasureGUI_WhatisDlg::getKindOfShape( QString& theParameters ) "\n" + tr( "GEOM_Y" ) + PRINT_DOUBLE( aDbls[1] ) + "\n" + tr( "GEOM_Z" ) + PRINT_DOUBLE( aDbls[2] ); break; + case GEOM::GEOM_IKindOfShape::ADVANCED: + { + QString strid = QString( "GEOM_ADVANCED_%1" ).arg( myObj->GetType() ); + aKindStr = tr( strid.toLatin1().constData() ) == strid ? + tr( "GEOM_ADVANCED" ).arg( myObj->GetType() ) : + tr( strid.toLatin1().constData() ); + break; + } default: break; } diff --git a/src/NMTTools/NMTTools_PaveFiller_2.cxx b/src/NMTTools/NMTTools_PaveFiller_2.cxx index 2430025f4..31985690c 100644 --- a/src/NMTTools/NMTTools_PaveFiller_2.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_2.cxx @@ -19,11 +19,11 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// File: NMTTools_PaveFiller_2.cxx -// Created: Mon Dec 8 12:02:56 2003 -// Author: Peter KURNEV -// -// +// File: NMTTools_PaveFiller_2.cxx +// Created: Mon Dec 8 12:02:56 2003 +// Author: Peter KURNEV +// + #include #include @@ -48,33 +48,47 @@ #include #include + #include #include #include -// -// Modified Thu Sep 14 14:35:18 2006 + +#include + +// Modified Thu Sep 14 14:35:18 2006 // Contribution of Samtech www.samcef.com BEGIN #include #include #include - static Standard_Boolean Contains(const TopoDS_Edge& aE, const TopoDS_Vertex& aV); // Contribution of Samtech www.samcef.com END +// In OCCT6.3.0sp9 is changed a signature of IntTools_Context::ComputeVE() method +#ifdef OCC_VERSION_SERVICEPACK +#if (OCC_VERSION_MAJOR << 24 | OCC_VERSION_MINOR << 16 | OCC_VERSION_MAINTENANCE << 8 | OCC_VERSION_SERVICEPACK) > 0x06030008 +#define OCCT_6_3_0_sp_9 +#endif +#endif + //======================================================================= // function: PerformVE -// purpose: +// purpose: //======================================================================= - void NMTTools_PaveFiller::PerformVE() +void NMTTools_PaveFiller::PerformVE() { myIsDone=Standard_False; // Standard_Boolean bJustAdd; - Standard_Integer n1, n2, anIndexIn, aFlag, aWhat, aWith, aNbVEs, aBlockLength, iSDV, nV1; + Standard_Integer n1, n2, anIndexIn, aFlag, aWhat; + Standard_Integer aWith, aNbVEs, aBlockLength, iSDV, nV1; Standard_Real aT; +#ifdef OCCT_6_3_0_sp_9 + Standard_Boolean bToUpdateVertex; + Standard_Real aDist; +#endif TopoDS_Vertex aV1; TopoDS_Edge aE2; BOPTools_IndexedMapOfCoupleOfInteger aSnareMap; @@ -103,7 +117,6 @@ static } // if(bJustAdd) { - //myIntrPool->AddInterference(aWhat, aWith, BooleanOperations_VertexEdge, anIndexIn); continue; } // Edge @@ -119,7 +132,7 @@ static if (iSDV) { nV1=iSDV; aV1=TopoDS::Vertex(myDS->Shape(nV1)); - // Modified to find same domain vertex Thu Sep 14 14:35:18 2006 + // Modified to find same domain vertex Thu Sep 14 14:35:18 2006 // Contribution of Samtech www.samcef.com BEGIN Standard_Integer nVE, iSDVE, iRet; // @@ -145,7 +158,13 @@ static // Contribution of Samtech www.samcef.com END } // + //modified by NIZNHY-PKV Mon Dec 28 08:58:05 2009f +#ifdef OCCT_6_3_0_sp_9 + aFlag=myContext.ComputeVE (aV1, aE2, aT, bToUpdateVertex, aDist); +#else aFlag=myContext.ComputeVE (aV1, aE2, aT); +#endif + //modified by NIZNHY-PKV Mon Dec 28 08:58:13 2009t // if (!aFlag) { // Add Interference to the Pool @@ -168,22 +187,30 @@ static // Insert Vertex in Interference Object BOPTools_VEInterference& aVE=aVEs(anIndexIn); aVE.SetNewShape(aWhat); - // qqf - { - myIP->Add(aWhat, aWith, Standard_True, NMTDS_TI_VE); - } - // qqt - } - //myIntrPool->AddInterference(aWhat, aWith, BooleanOperations_VertexEdge, anIndexIn); + // + myIP->Add(aWhat, aWith, Standard_True, NMTDS_TI_VE); + // + //modified by NIZNHY-PKV Mon Dec 28 09:00:54 2009f +#ifdef OCCT_6_3_0_sp_9 + if (bToUpdateVertex) { + BRep_Builder aBB; + // + aBB.UpdateVertex(aV1, aDist); + } +#endif + //modified by NIZNHY-PKV Mon Dec 28 09:00:57 2009t + // + } //if (!aFlag) { } } myIsDone=Standard_True; } + //======================================================================= // function: PrepareEdges -// purpose: +// purpose: //======================================================================= - void NMTTools_PaveFiller::PrepareEdges() +void NMTTools_PaveFiller::PrepareEdges() { Standard_Integer i, nV, ii, aNBSuc, ip, aNbShapesObject; Standard_Real aT; @@ -214,22 +241,22 @@ static ip=FindSDVertex(nV); if (ip) { aV=TopoDS::Vertex(myDS->Shape(ip)); - aV.Orientation(anOr);// XX ? if the edge is closed it'll be amazing result + aV.Orientation(anOr);// XX ? if the edge is closed it'll be amazing result nV=ip; } // - BOPTools_Pave aPave(nV, aT); + BOPTools_Pave aPave(nV, aT); aPaveSet.Append (aPave); } } } } -// Modified Thu Sep 14 14:35:18 2006 +// Modified Thu Sep 14 14:35:18 2006 // Contribution of Samtech www.samcef.com BEGIN //======================================================================= //function : Contains -//purpose : +//purpose : //======================================================================= Standard_Boolean Contains(const TopoDS_Edge& aE, const TopoDS_Vertex& aV) diff --git a/src/OperationGUI/OperationGUI_ArchimedeDlg.cxx b/src/OperationGUI/OperationGUI_ArchimedeDlg.cxx index 3da8378c8..ce36bad6c 100644 --- a/src/OperationGUI/OperationGUI_ArchimedeDlg.cxx +++ b/src/OperationGUI/OperationGUI_ArchimedeDlg.cxx @@ -106,9 +106,9 @@ void OperationGUI_ArchimedeDlg::Init() double SpecificStep1 = 0.1; double SpecificStep2 = 0.01; /* min, max, myStep and decimals for spin boxes & initial values */ - initSpinBox( GroupPoints->SpinBox_DX, 0.001, COORD_MAX, myStep, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( GroupPoints->SpinBox_DY, 0.001, COORD_MAX, SpecificStep1, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( GroupPoints->SpinBox_DZ, 0.001, COORD_MAX, SpecificStep2, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPoints->SpinBox_DX, 0.001, COORD_MAX, myStep, "weight_precision" ); + initSpinBox( GroupPoints->SpinBox_DY, 0.001, COORD_MAX, SpecificStep1, "density_precision" ); + initSpinBox( GroupPoints->SpinBox_DZ, 0.001, COORD_MAX, SpecificStep2, "parametric_precision" ); GroupPoints->SpinBox_DX->setValue( 100.0 ); GroupPoints->SpinBox_DY->setValue( 1.0 ); @@ -141,8 +141,10 @@ void OperationGUI_ArchimedeDlg::Init() void OperationGUI_ArchimedeDlg::SetDoubleSpinBoxStep( double step ) { GroupPoints->SpinBox_DX->setSingleStep(step); - GroupPoints->SpinBox_DY->setSingleStep(step); - GroupPoints->SpinBox_DZ->setSingleStep(step); + + // san: Commented so as not to override specific step settings + //GroupPoints->SpinBox_DY->setSingleStep(step); + //GroupPoints->SpinBox_DZ->setSingleStep(step); } //================================================================================= diff --git a/src/OperationGUI/OperationGUI_ChamferDlg.cxx b/src/OperationGUI/OperationGUI_ChamferDlg.cxx index 68192ab25..dd1409e16 100644 --- a/src/OperationGUI/OperationGUI_ChamferDlg.cxx +++ b/src/OperationGUI/OperationGUI_ChamferDlg.cxx @@ -149,9 +149,9 @@ OperationGUI_ChamferDlg::OperationGUI_ChamferDlg (GeometryGUI* theGeometryGUI, Q QMap< int, SalomeApp_DoubleSpinBox* >::iterator anIter; for (anIter = mySpinBox.begin(); anIter != mySpinBox.end(); ++anIter) { if (anIter.key() == SpinBox44 || anIter.key() == SpinBox34 || anIter.key() == SpinBox24) - initSpinBox(anIter.value(), 0.001, 89.999, 5, 0); + initSpinBox(anIter.value(), 0.001, 89.999, 5, "angle_precision" ); else - initSpinBox(anIter.value(), 0.001, COORD_MAX, SpecificStep, 3); + initSpinBox(anIter.value(), 0.001, COORD_MAX, SpecificStep, "length_precision" ); } setHelpFileName("chamfer_operation_page.html"); diff --git a/src/OperationGUI/OperationGUI_ClippingDlg.cxx b/src/OperationGUI/OperationGUI_ClippingDlg.cxx index 7bdc0d6e4..d79a897dd 100644 --- a/src/OperationGUI/OperationGUI_ClippingDlg.cxx +++ b/src/OperationGUI/OperationGUI_ClippingDlg.cxx @@ -74,13 +74,15 @@ OperationGUI_ClippingDlg::OperationGUI_ClippingDlg( GeometryGUI* theGeometryGUI, TextLabelNear = new QLabel( tr( "Near" ), GroupArguments ); GroupArgumentsLayout->addWidget( TextLabelNear, 0, 0 ); - SpinBox_Near = new SalomeApp_DoubleSpinBox( COORD_MIN, COORD_MAX, 10.0, 3, 10, GroupArguments ); + SpinBox_Near = new SalomeApp_DoubleSpinBox( GroupArguments ); + initSpinBox( SpinBox_Near, COORD_MIN, COORD_MAX, 10.0, "length_precision" ); GroupArgumentsLayout->addWidget( SpinBox_Near, 0, 1 ); TextLabelFar = new QLabel( tr( "Far" ), GroupArguments ); GroupArgumentsLayout->addWidget( TextLabelFar, 0, 2 ); - SpinBox_Far = new SalomeApp_DoubleSpinBox( COORD_MIN, COORD_MAX, 10.0, 3, 10, GroupArguments ); + SpinBox_Far = new SalomeApp_DoubleSpinBox( GroupArguments ); + initSpinBox( SpinBox_Far, COORD_MIN, COORD_MAX, 10.0, "length_precision" ); GroupArgumentsLayout->addWidget( SpinBox_Far, 0, 3 ); resetButton = new QPushButton( tr( "Reset" ), GroupArguments ); diff --git a/src/OperationGUI/OperationGUI_Fillet1d2dDlg.cxx b/src/OperationGUI/OperationGUI_Fillet1d2dDlg.cxx index c713a5ddd..d78fdf60c 100644 --- a/src/OperationGUI/OperationGUI_Fillet1d2dDlg.cxx +++ b/src/OperationGUI/OperationGUI_Fillet1d2dDlg.cxx @@ -88,7 +88,7 @@ OperationGUI_Fillet1d2dDlg::OperationGUI_Fillet1d2dDlg (GeometryGUI* theGeometry // Set range of spinboxes double SpecificStep = 10.0; - initSpinBox(GroupVertexes->SpinBox_DX, 0.00001, COORD_MAX, SpecificStep, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupVertexes->SpinBox_DX, 0.00001, COORD_MAX, SpecificStep, "length_precision" ); setHelpFileName(myIs1D ? "fillet1d_operation_page.html" : "fillet2d_operation_page.html"); diff --git a/src/OperationGUI/OperationGUI_FilletDlg.cxx b/src/OperationGUI/OperationGUI_FilletDlg.cxx index 242a03173..ca21c0daf 100644 --- a/src/OperationGUI/OperationGUI_FilletDlg.cxx +++ b/src/OperationGUI/OperationGUI_FilletDlg.cxx @@ -110,13 +110,13 @@ OperationGUI_FilletDlg::OperationGUI_FilletDlg (GeometryGUI* theGeometryGUI, QWi // Set range of spinboxes double SpecificStep = 10.0; - initSpinBox(Group1->SpinBox_DX, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(Group2->SpinBox_DX, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(Group2->SpinBox_DY, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(Group2->SpinBox_DZ, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(Group3->SpinBox_DX, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(Group3->SpinBox_DY, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(Group3->SpinBox_DZ, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(Group1->SpinBox_DX, 0.001, COORD_MAX, SpecificStep, "length_precision" ); + initSpinBox(Group2->SpinBox_DX, 0.001, COORD_MAX, SpecificStep, "length_precision" ); + initSpinBox(Group2->SpinBox_DY, 0.001, COORD_MAX, SpecificStep, "length_precision" ); + initSpinBox(Group2->SpinBox_DZ, 0.001, COORD_MAX, SpecificStep, "length_precision" ); + initSpinBox(Group3->SpinBox_DX, 0.001, COORD_MAX, SpecificStep, "length_precision" ); + initSpinBox(Group3->SpinBox_DY, 0.001, COORD_MAX, SpecificStep, "length_precision" ); + initSpinBox(Group3->SpinBox_DZ, 0.001, COORD_MAX, SpecificStep, "length_precision" ); setHelpFileName("fillet_operation_page.html"); diff --git a/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.cxx index 5dcbdc41e..103cbdc97 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.cxx @@ -113,9 +113,9 @@ void PrimitiveGUI_BoxDlg::Init() double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); // min, max, step and decimals for spin boxes - initSpinBox(GroupDimensions->SpinBox_DX, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupDimensions->SpinBox_DY, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupDimensions->SpinBox_DZ, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DX, 0.000001, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupDimensions->SpinBox_DY, 0.000001, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupDimensions->SpinBox_DZ, 0.000001, COORD_MAX, step, "length_precision" ); // init variables GroupPoints->LineEdit1->setReadOnly(true); diff --git a/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.cxx index 0c434b2a6..f4823c0c1 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.cxx @@ -116,12 +116,12 @@ void PrimitiveGUI_ConeDlg::Init() double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); // min, max, step and decimals for spin boxes & initial values - initSpinBox(GroupPoints->SpinBox_DX, 0.0, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupPoints->SpinBox_DY, 0.0, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupPoints->SpinBox_DZ, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupDimensions->SpinBox_DX, 0.0, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupDimensions->SpinBox_DY, 0.0, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupDimensions->SpinBox_DZ, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DX, 0.0, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupPoints->SpinBox_DY, 0.0, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupPoints->SpinBox_DZ, 0.00001, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupDimensions->SpinBox_DX, 0.0, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupDimensions->SpinBox_DY, 0.0, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupDimensions->SpinBox_DZ, 0.00001, COORD_MAX, step, "length_precision" ); // init variables GroupPoints->LineEdit1->setReadOnly(true); diff --git a/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.cxx index a316c5ddc..661543577 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.cxx @@ -114,10 +114,10 @@ void PrimitiveGUI_CylinderDlg::Init() double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); // min, max, step and decimals for spin boxes & initial values - initSpinBox(GroupPoints->SpinBox_DX, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupPoints->SpinBox_DY, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupDimensions->SpinBox_DX, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupDimensions->SpinBox_DY, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DX, 0.00001, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupPoints->SpinBox_DY, 0.00001, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupDimensions->SpinBox_DX, 0.00001, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupDimensions->SpinBox_DY, 0.00001, COORD_MAX, step, "length_precision" ); // init variables myEditCurrentArgument = GroupPoints->LineEdit1; diff --git a/src/PrimitiveGUI/PrimitiveGUI_DiskDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_DiskDlg.cxx index 9bffe1132..80a2b60f1 100755 --- a/src/PrimitiveGUI/PrimitiveGUI_DiskDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_DiskDlg.cxx @@ -132,8 +132,8 @@ void PrimitiveGUI_DiskDlg::Init() double aStep = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); // min, max, step and decimals for spin boxes & initial values - initSpinBox(GroupPntVecR->SpinBox_DX, 0.00001, COORD_MAX, aStep, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupDimensions->SpinBox_DX, 0.00001, COORD_MAX, aStep, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPntVecR->SpinBox_DX, 0.00001, COORD_MAX, aStep, "length_precision" ); + initSpinBox(GroupDimensions->SpinBox_DX, 0.00001, COORD_MAX, aStep, "length_precision" ); // init variables myEditCurrentArgument = GroupPntVecR->LineEdit1; diff --git a/src/PrimitiveGUI/PrimitiveGUI_FaceDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_FaceDlg.cxx index bd26bbd69..bbc909ff1 100755 --- a/src/PrimitiveGUI/PrimitiveGUI_FaceDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_FaceDlg.cxx @@ -139,14 +139,14 @@ void PrimitiveGUI_FaceDlg::Init() double aDefaultSize = 100.0; /* min, max, step and decimals for spin boxes */ - initSpinBox( GroupPlane->SpinBox_DX, 0.00001, COORD_MAX, aStep, 5 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPlane->SpinBox_DX, 0.00001, COORD_MAX, aStep, "length_precision" ); GroupPlane->SpinBox_DX->setValue( aDefaultSize ); - initSpinBox( GroupPlane->SpinBox_DY, 0.00001, COORD_MAX, aStep, 5 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPlane->SpinBox_DY, 0.00001, COORD_MAX, aStep, "length_precision" ); GroupPlane->SpinBox_DY->setValue( aDefaultSize ); - initSpinBox( GroupDimensions->SpinBox_DX, 0.00001, COORD_MAX, aStep, 5 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupDimensions->SpinBox_DX, 0.00001, COORD_MAX, aStep, "length_precision" ); GroupDimensions->SpinBox_DX->setValue( aDefaultSize ); - initSpinBox( GroupDimensions->SpinBox_DY, 0.00001, COORD_MAX, aStep, 5 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupDimensions->SpinBox_DY, 0.00001, COORD_MAX, aStep, "length_precision" ); GroupDimensions->SpinBox_DY->setValue( aDefaultSize ); @@ -191,6 +191,8 @@ void PrimitiveGUI_FaceDlg::SetDoubleSpinBoxStep( double step ) { GroupPlane->SpinBox_DX->setSingleStep(step); GroupPlane->SpinBox_DY->setSingleStep(step); + GroupDimensions->SpinBox_DX->setSingleStep(step); + GroupDimensions->SpinBox_DY->setSingleStep(step); } //================================================================================= diff --git a/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.cxx index 506e8b33d..709946adf 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.cxx @@ -115,8 +115,8 @@ void PrimitiveGUI_SphereDlg::Init() double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); /* min, max, step and decimals for spin boxes */ - initSpinBox( GroupPoints->SpinBox_DX, 0.000001, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox( GroupDimensions->SpinBox_DX, 0.000001, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPoints->SpinBox_DX, 0.000001, COORD_MAX, step, "length_precision" ); + initSpinBox( GroupDimensions->SpinBox_DX, 0.000001, COORD_MAX, step, "length_precision" ); GroupPoints->SpinBox_DX->setValue( 100.0 ); GroupDimensions->SpinBox_DX->setValue( 100.0 ); diff --git a/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.cxx index 0a532e75c..48953a55d 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.cxx @@ -115,10 +115,10 @@ void PrimitiveGUI_TorusDlg::Init() double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); // min, max, step and decimals for spin boxes & initial values - initSpinBox(GroupPoints->SpinBox_DX, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupPoints->SpinBox_DY, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupDimensions->SpinBox_DX, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupDimensions->SpinBox_DY, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DX, 0.000001, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupPoints->SpinBox_DY, 0.000001, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupDimensions->SpinBox_DX, 0.000001, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupDimensions->SpinBox_DY, 0.000001, COORD_MAX, step, "length_precision" ); // init variables GroupPoints->LineEdit1->setReadOnly(true); diff --git a/src/RepairGUI/RepairGUI_DivideEdgeDlg.cxx b/src/RepairGUI/RepairGUI_DivideEdgeDlg.cxx index 8622ff784..9829ad24e 100644 --- a/src/RepairGUI/RepairGUI_DivideEdgeDlg.cxx +++ b/src/RepairGUI/RepairGUI_DivideEdgeDlg.cxx @@ -86,7 +86,8 @@ RepairGUI_DivideEdgeDlg::RepairGUI_DivideEdgeDlg( GeometryGUI* theGeometryGUI, Q myIsParameterGr->addButton( rb2, 1 ); rb1->setChecked( true ); - myValEdt = new SalomeApp_DoubleSpinBox( 0., 1., 0.1, 3, 32, GroupPoints->Box ); + myValEdt = new SalomeApp_DoubleSpinBox( GroupPoints->Box ); + initSpinBox( myValEdt, 0., 1., 0.1, "parametric_precision" ); myValEdt->setValue( 0.5 ); QLabel* aLbl1 = new QLabel( tr( "GEOM_VALUE" ), GroupPoints->Box ); diff --git a/src/RepairGUI/RepairGUI_GlueDlg.cxx b/src/RepairGUI/RepairGUI_GlueDlg.cxx index 17a43d098..58daf586e 100644 --- a/src/RepairGUI/RepairGUI_GlueDlg.cxx +++ b/src/RepairGUI/RepairGUI_GlueDlg.cxx @@ -82,7 +82,8 @@ RepairGUI_GlueDlg::RepairGUI_GlueDlg( GeometryGUI* theGeometryGUI, QWidget* pare GroupPoints->LineEdit1->setReadOnly( true ); QLabel* aTolLab = new QLabel( tr( "GEOM_TOLERANCE" ), GroupPoints->Box ); - myTolEdt = new SalomeApp_DoubleSpinBox( 0.0, 100.0, DEFAULT_TOLERANCE_VALUE, 7, 7, GroupPoints->Box ); + myTolEdt = new SalomeApp_DoubleSpinBox( GroupPoints->Box ); + initSpinBox( myTolEdt, 0., 100., DEFAULT_TOLERANCE_VALUE, "len_tol_precision" ); myTolEdt->setValue( DEFAULT_TOLERANCE_VALUE ); QGridLayout* boxLayout = new QGridLayout( GroupPoints->Box ); @@ -99,7 +100,7 @@ RepairGUI_GlueDlg::RepairGUI_GlueDlg( GeometryGUI* theGeometryGUI, QWidget* pare QLabel* aTolLab2 = new QLabel( tr( "GEOM_TOLERANCE" ), GroupPoints2->Box ); myTolEdt2 = new SalomeApp_DoubleSpinBox( GroupPoints2->Box ); - initSpinBox( myTolEdt2, 0, 100, 1e-7, 7 ); + initSpinBox( myTolEdt2, 0., 100., DEFAULT_TOLERANCE_VALUE, "len_tol_precision" ); myTolEdt2->setValue( DEFAULT_TOLERANCE_VALUE ); myDetectBtn = new QPushButton( tr( "GEOM_DETECT" ) + QString( " [%1]" ).arg( tr( "GLUE_FACES" ) ), diff --git a/src/RepairGUI/RepairGUI_SewingDlg.cxx b/src/RepairGUI/RepairGUI_SewingDlg.cxx index a2f39ae3d..f0e13e85e 100644 --- a/src/RepairGUI/RepairGUI_SewingDlg.cxx +++ b/src/RepairGUI/RepairGUI_SewingDlg.cxx @@ -75,7 +75,8 @@ RepairGUI_SewingDlg::RepairGUI_SewingDlg( GeometryGUI* theGeometryGUI, QWidget* QGridLayout* aLay = new QGridLayout( GroupPoints->Box ); aLay->setMargin( 0 ); aLay->setSpacing( 6 ); - myTolEdt = new SalomeApp_DoubleSpinBox( 0.0, 100.0, DEFAULT_TOLERANCE_VALUE, 7, 10, GroupPoints->Box ); + myTolEdt = new SalomeApp_DoubleSpinBox( GroupPoints->Box ); + initSpinBox( myTolEdt, 0.0, 100.0, DEFAULT_TOLERANCE_VALUE, "len_tol_precision" ); myTolEdt->setValue( DEFAULT_TOLERANCE_VALUE ); QLabel* aLbl1 = new QLabel( tr( "GEOM_TOLERANCE" ), GroupPoints->Box ); myFreeBoundBtn = new QPushButton( tr( "GEOM_DETECT" ) + QString( " [%1]" ).arg( tr( "GEOM_FREE_BOUNDARIES" ) ), diff --git a/src/RepairGUI/RepairGUI_ShapeProcessDlg.cxx b/src/RepairGUI/RepairGUI_ShapeProcessDlg.cxx index ffe7f6596..6073f4cbd 100755 --- a/src/RepairGUI/RepairGUI_ShapeProcessDlg.cxx +++ b/src/RepairGUI/RepairGUI_ShapeProcessDlg.cxx @@ -126,8 +126,10 @@ void RepairGUI_ShapeProcessDlg::init() QGridLayout* aLay = new QGridLayout( w ); aLay->setMargin( 9 ); aLay->setSpacing( 6 ); - myFixShapeTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); - myFixShapeMaxTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + myFixShapeTol3D = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( myFixShapeTol3D, 0., 100., 1e-7, "len_tol_precision" ); + myFixShapeMaxTol3D = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( myFixShapeMaxTol3D, 0., 100., 1e-7, "len_tol_precision" ); aLay->addWidget( new QLabel( tr( "GEOM_3D_TOLERANCE" ), w ), 0, 0 ); aLay->addWidget( myFixShapeTol3D, 0, 1 ); @@ -141,7 +143,8 @@ void RepairGUI_ShapeProcessDlg::init() QGridLayout* aLay = new QGridLayout( w ); aLay->setMargin( 9 ); aLay->setSpacing( 6 ); - myFixFaceSizeTol = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + myFixFaceSizeTol = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( myFixFaceSizeTol, 0., 100., 1e-7, "len_tol_precision" ); aLay->addWidget( new QLabel( tr( "GEOM_TOLERANCE" ), w ), 0, 0 ); aLay->addWidget( myFixFaceSizeTol, 0, 1 ); @@ -153,7 +156,8 @@ void RepairGUI_ShapeProcessDlg::init() QGridLayout* aLay = new QGridLayout( w ); aLay->setMargin( 9 ); aLay->setSpacing( 6 ); - myDropSmallEdgesTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + myDropSmallEdgesTol3D = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( myDropSmallEdgesTol3D, 0., 100., 1e-7, "len_tol_precision" ); aLay->addWidget( new QLabel( tr( "GEOM_3D_TOLERANCE" ), w ), 0, 0 ); aLay->addWidget( myDropSmallEdgesTol3D, 0, 1 ); @@ -165,8 +169,10 @@ void RepairGUI_ShapeProcessDlg::init() QGridLayout* aLay = new QGridLayout( w ); aLay->setMargin( 9 ); aLay->setSpacing( 6 ); - mySplitAngleAngle = new SalomeApp_DoubleSpinBox( 0, 360, 1, 10, 10, w ); - mySplitAngleMaxTol = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + mySplitAngleAngle = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( mySplitAngleAngle, 0, 360, 1, "angle_precision" ); + mySplitAngleMaxTol = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( mySplitAngleMaxTol, 0., 100., 1e-7, "ang_tol_precision" ); aLay->addWidget( new QLabel( tr( "GEOM_ANGLE_1" ), w ), 0, 0 ); aLay->addWidget( mySplitAngleAngle, 0, 1 ); @@ -192,7 +198,8 @@ void RepairGUI_ShapeProcessDlg::init() QGridLayout* aLay = new QGridLayout( w ); aLay->setMargin( 9 ); aLay->setSpacing( 6 ); - mySplitContTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + mySplitContTol3D = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( mySplitContTol3D, 0., 100., 1e-7, "len_tol_precision" ); mySplitContSurfCont = new QComboBox( w ); mySplitContSurfCont->addItems( aContinueties ); mySplitContCurvCont = new QComboBox( w ); @@ -216,9 +223,11 @@ void RepairGUI_ShapeProcessDlg::init() myBSpline3DCurveChk = new QCheckBox( tr("GEOM_3D_CURVE_MODE"), w ); myBSpline2DCurveChk = new QCheckBox( tr("GEOM_2D_CURVE_MODE"), w ); - myBSplineTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + myBSplineTol3D = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( mySplitContTol3D, 0., 100., 1e-7, "len_tol_precision" ); - myBSplineTol2D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + myBSplineTol2D = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( myBSplineTol2D, 0., 100., 1e-7, "param_tol_precision" ); myBSplineDegree = new SalomeApp_IntSpinBox( w ); myBSplineSegments = new SalomeApp_IntSpinBox( w ); @@ -258,7 +267,8 @@ void RepairGUI_ShapeProcessDlg::init() myToBezier3DCurveChk = new QCheckBox( tr("GEOM_3D_CURVE_MODE"), w ); myToBezier2DCurveChk = new QCheckBox( tr("GEOM_2D_CURVE_MODE"), w ); - myToBezierMaxTol = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + myToBezierMaxTol = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( myToBezierMaxTol, 0., 100., 1e-7, "len_tol_precision" ); aLay->addWidget( myToBezierSurfModeChk, 0, 0 ); aLay->addWidget( myToBezier3DCurveChk, 1, 0 ); @@ -273,7 +283,8 @@ void RepairGUI_ShapeProcessDlg::init() QGridLayout* aLay = new QGridLayout( w ); aLay->setMargin( 9 ); aLay->setSpacing( 6 ); - mySameParameterTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + mySameParameterTol3D = new SalomeApp_DoubleSpinBox( w ); + initSpinBox( mySameParameterTol3D, 0., 100., 1e-7, "len_tol_precision" ); aLay->addWidget( new QLabel( tr( "GEOM_3D_TOLERANCE" ), w ), 0, 0 ); aLay->addWidget( mySameParameterTol3D, 0, 1 ); diff --git a/src/TransformationGUI/TransformationGUI_MultiRotationDlg.cxx b/src/TransformationGUI/TransformationGUI_MultiRotationDlg.cxx index 3516b050e..027160dfa 100644 --- a/src/TransformationGUI/TransformationGUI_MultiRotationDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_MultiRotationDlg.cxx @@ -130,9 +130,9 @@ void TransformationGUI_MultiRotationDlg::Init() initSpinBox(GroupPoints->SpinBox_DX, 1, 999, SpecificStep2); GroupPoints->SpinBox_DX->setValue(myNbTimes1); - initSpinBox(GroupDimensions->SpinBox_DX1, COORD_MIN, COORD_MAX, SpecificStep1, 10); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DX1, COORD_MIN, COORD_MAX, SpecificStep1, "angle_precision" ); initSpinBox(GroupDimensions->SpinBox_DY1, 1, 999, SpecificStep2); - initSpinBox(GroupDimensions->SpinBox_DX2, COORD_MIN, COORD_MAX, step, 10); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DX2, COORD_MIN, COORD_MAX, step,"length_precision" ); initSpinBox(GroupDimensions->SpinBox_DY2, 1, 999, SpecificStep2); GroupDimensions->SpinBox_DX1->setValue(myAng); GroupDimensions->SpinBox_DY1->setValue(myNbTimes1); @@ -192,11 +192,13 @@ void TransformationGUI_MultiRotationDlg::Init() //================================================================================= void TransformationGUI_MultiRotationDlg::SetDoubleSpinBoxStep (double step) { - GroupPoints->SpinBox_DX->setSingleStep((int)step); - GroupDimensions->SpinBox_DX1->setSingleStep(step); - GroupDimensions->SpinBox_DY1->setSingleStep((int)step); GroupDimensions->SpinBox_DX2->setSingleStep(step); - GroupDimensions->SpinBox_DY2->setSingleStep((int)step); + + // san: Commented so as not to override specific step settings + //GroupPoints->SpinBox_DX->setSingleStep((int)step); + //GroupDimensions->SpinBox_DX1->setSingleStep(step); + //GroupDimensions->SpinBox_DY1->setSingleStep((int)step); + //GroupDimensions->SpinBox_DY2->setSingleStep((int)step); } //================================================================================= diff --git a/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.cxx b/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.cxx index c41e0a12f..e6d3a3433 100644 --- a/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.cxx @@ -132,14 +132,14 @@ void TransformationGUI_MultiTranslationDlg::Init() int SpecificStep = 1; // min, max, step and decimals for spin boxes & initial values - initSpinBox(GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, step, 10); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); initSpinBox(GroupPoints->SpinBox_DY, 1, 999, SpecificStep); GroupPoints->SpinBox_DX->setValue(myStepU); GroupPoints->SpinBox_DY->setValue(myNbTimesU); - initSpinBox(GroupDimensions->SpinBox_DX1, COORD_MIN, COORD_MAX, step, 10); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DX1, COORD_MIN, COORD_MAX, step, "length_precision" ); initSpinBox(GroupDimensions->SpinBox_DY1, 1, 999, SpecificStep); - initSpinBox(GroupDimensions->SpinBox_DX2, COORD_MIN, COORD_MAX, step, 10); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DX2, COORD_MIN, COORD_MAX, step, "length_precision" ); initSpinBox(GroupDimensions->SpinBox_DY2, 1, 999, SpecificStep); GroupDimensions->SpinBox_DX1->setValue(myStepU); GroupDimensions->SpinBox_DY1->setValue(myNbTimesU); @@ -209,11 +209,13 @@ void TransformationGUI_MultiTranslationDlg::Init() void TransformationGUI_MultiTranslationDlg::SetDoubleSpinBoxStep (double step) { GroupPoints->SpinBox_DX->setSingleStep(step); - GroupPoints->SpinBox_DY->setSingleStep((int)step); - GroupDimensions->SpinBox_DX1->setSingleStep(step); - GroupDimensions->SpinBox_DY1->setSingleStep((int)step); + GroupDimensions->SpinBox_DX1->setSingleStep(step); GroupDimensions->SpinBox_DX2->setSingleStep(step); - GroupDimensions->SpinBox_DY2->setSingleStep((int)step); + + // san : Commented so as not to override specific step settings + //GroupPoints->SpinBox_DY->setSingleStep((int)step); + //GroupDimensions->SpinBox_DY1->setSingleStep((int)step); + //GroupDimensions->SpinBox_DY2->setSingleStep((int)step); } //================================================================================= diff --git a/src/TransformationGUI/TransformationGUI_OffsetDlg.cxx b/src/TransformationGUI/TransformationGUI_OffsetDlg.cxx index e57986a3f..6786429a6 100644 --- a/src/TransformationGUI/TransformationGUI_OffsetDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_OffsetDlg.cxx @@ -105,7 +105,7 @@ void TransformationGUI_OffsetDlg::Init() double step = 1; /* min, max, step and decimals for spin boxes & initial values */ - initSpinBox( GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); GroupPoints->SpinBox_DX->setValue( 1e-05 ); // Activate Create a Copy mode diff --git a/src/TransformationGUI/TransformationGUI_PositionDlg.cxx b/src/TransformationGUI/TransformationGUI_PositionDlg.cxx index 9d36c8dc7..5cce08340 100644 --- a/src/TransformationGUI/TransformationGUI_PositionDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_PositionDlg.cxx @@ -122,7 +122,7 @@ void TransformationGUI_PositionDlg::Init() Group1->LineEdit4->setText(""); Group1->LineEdit5->setText(""); - initSpinBox(Group1->SpinBox_DX, 0, 1, 0.05, 6); // VSR:TODO : DBL_DIGITS_DISPLAY + initSpinBox(Group1->SpinBox_DX, 0, 1, 0.05, "parametric_precision" ); Group1->SpinBox_DX->setValue(0); Group1->CheckButton2->setEnabled(false); diff --git a/src/TransformationGUI/TransformationGUI_RotationDlg.cxx b/src/TransformationGUI/TransformationGUI_RotationDlg.cxx index e8767f4de..d83755e6d 100644 --- a/src/TransformationGUI/TransformationGUI_RotationDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_RotationDlg.cxx @@ -122,7 +122,7 @@ void TransformationGUI_RotationDlg::Init() double SpecificStep = 5; // min, max, step and decimals for spin boxes & initial values - initSpinBox(GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, SpecificStep, "angle_precision" ); GroupPoints->SpinBox_DX->setValue(anAngle); // init variables diff --git a/src/TransformationGUI/TransformationGUI_ScaleDlg.cxx b/src/TransformationGUI/TransformationGUI_ScaleDlg.cxx index 31b9cf243..624d7db29 100644 --- a/src/TransformationGUI/TransformationGUI_ScaleDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_ScaleDlg.cxx @@ -155,9 +155,9 @@ void TransformationGUI_ScaleDlg::Init() double aFactor = 2.0; double SpecificStep = 0.5; - initSpinBox(SpinBox_FX, COORD_MIN, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - initSpinBox(SpinBox_FY, COORD_MIN, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - initSpinBox(SpinBox_FZ, COORD_MIN, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); + initSpinBox(SpinBox_FX, COORD_MIN, COORD_MAX, SpecificStep, "parametric_precision" ); + initSpinBox(SpinBox_FY, COORD_MIN, COORD_MAX, SpecificStep, "parametric_precision" ); + initSpinBox(SpinBox_FZ, COORD_MIN, COORD_MAX, SpecificStep, "parametric_precision" ); SpinBox_FX->setValue(aFactor); SpinBox_FY->setValue(aFactor); SpinBox_FZ->setValue(aFactor); @@ -182,8 +182,9 @@ void TransformationGUI_ScaleDlg::Init() connect(SpinBox_FX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(SpinBox_FY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(SpinBox_FZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); + + // san : Commented so as not to override specific step settings + //connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); connect(CheckBoxCopy, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); diff --git a/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx b/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx index 7772b68d9..2b9bc4459 100644 --- a/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx @@ -118,9 +118,9 @@ void TransformationGUI_TranslationDlg::Init() double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); // min, max, step and decimals for spin boxes & initial values - initSpinBox(GroupPoints->SpinBox1, COORD_MIN, COORD_MAX, step, 3); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupPoints->SpinBox2, COORD_MIN, COORD_MAX, step, 3); // VSR: TODO: DBL_DIGITS_DISPLAY - initSpinBox(GroupPoints->SpinBox3, COORD_MIN, COORD_MAX, step, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox1, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupPoints->SpinBox2, COORD_MIN, COORD_MAX, step, "length_precision" ); + initSpinBox(GroupPoints->SpinBox3, COORD_MIN, COORD_MAX, step, "length_precision" ); GroupPoints->SpinBox1->setValue(0.0); GroupPoints->SpinBox2->setValue(0.0);