Merge remote-tracking branch 'origin/6.0' 46/19146/2
Antoine ELIAS [Fri, 3 Mar 2017 15:54:34 +0000 (16:54 +0100)]
Change-Id: Id17896d24f2b6cb0f9b8345188f6d75f42a4ede8

224 files changed:
scilab/CHANGES.md
scilab/modules/api_scilab/src/cpp/api_stack_common.cpp
scilab/modules/api_scilab/src/cpp/api_stack_list.cpp
scilab/modules/api_scilab/src/cpp/template/api_common.hpp
scilab/modules/ast/src/cpp/operations/types_and.cpp
scilab/modules/ast/src/cpp/operations/types_or.cpp
scilab/modules/ast/tests/unit_tests/Sand.tst [new file with mode: 0644]
scilab/modules/ast/tests/unit_tests/Sor.tst [new file with mode: 0644]
scilab/modules/cacsd/macros/csim.sci
scilab/modules/commons/src/java/org/scilab/modules/commons/ScilabCommons.java
scilab/modules/commons/src/java/org/scilab/modules/commons/ScilabCommonsJNI.java
scilab/modules/commons/src/jni/ScilabCommons.i
scilab/modules/commons/src/jni/ScilabCommons_wrap.c
scilab/modules/compatibility_functions/macros/mtlb.sci
scilab/modules/compatibility_functions/macros/mtlb_exist.sci
scilab/modules/core/sci_gateway/core_gateway.xml
scilab/modules/core/sci_gateway/cpp/sci_type.cpp
scilab/modules/data_structures/help/en_US/cells/cell.xml [moved from scilab/modules/data_structures/help/en_US/cell.xml with 100% similarity]
scilab/modules/data_structures/help/en_US/cells/cell2mat.xml [moved from scilab/modules/data_structures/help/en_US/cell2mat.xml with 100% similarity]
scilab/modules/data_structures/help/en_US/cells/cellstr.xml [moved from scilab/modules/data_structures/help/en_US/cellstr.xml with 100% similarity]
scilab/modules/data_structures/help/en_US/cells/iscell.xml [moved from scilab/modules/data_structures/help/en_US/iscell.xml with 100% similarity]
scilab/modules/data_structures/help/en_US/cells/iscellstr.xml [moved from scilab/modules/data_structures/help/en_US/iscellstr.xml with 100% similarity]
scilab/modules/data_structures/help/en_US/cells/makecell.xml [moved from scilab/modules/data_structures/help/en_US/makecell.xml with 100% similarity]
scilab/modules/data_structures/help/en_US/cells/num2cell.xml [moved from scilab/modules/data_structures/help/en_US/num2cell.xml with 100% similarity]
scilab/modules/data_structures/help/fr_FR/cells/iscellstr.xml [moved from scilab/modules/data_structures/help/fr_FR/iscellstr.xml with 100% similarity]
scilab/modules/data_structures/help/ja_JP/cells/cell.xml [moved from scilab/modules/data_structures/help/ja_JP/cell.xml with 100% similarity]
scilab/modules/data_structures/help/ja_JP/cells/cell2mat.xml [moved from scilab/modules/data_structures/help/ja_JP/cell2mat.xml with 100% similarity]
scilab/modules/data_structures/help/ja_JP/cells/cellstr.xml [moved from scilab/modules/data_structures/help/ja_JP/cellstr.xml with 100% similarity]
scilab/modules/data_structures/help/ja_JP/cells/iscell.xml [moved from scilab/modules/data_structures/help/ja_JP/iscell.xml with 100% similarity]
scilab/modules/data_structures/help/ja_JP/cells/iscellstr.xml [moved from scilab/modules/data_structures/help/ja_JP/iscellstr.xml with 100% similarity]
scilab/modules/data_structures/help/ja_JP/cells/makecell.xml [moved from scilab/modules/data_structures/help/ja_JP/makecell.xml with 100% similarity]
scilab/modules/data_structures/help/ja_JP/cells/num2cell.xml [moved from scilab/modules/data_structures/help/ja_JP/num2cell.xml with 100% similarity]
scilab/modules/data_structures/help/pt_BR/cells/cell.xml [moved from scilab/modules/data_structures/help/pt_BR/cell.xml with 100% similarity]
scilab/modules/data_structures/help/pt_BR/cells/cell2mat.xml [moved from scilab/modules/data_structures/help/pt_BR/cell2mat.xml with 100% similarity]
scilab/modules/data_structures/help/pt_BR/cells/cellstr.xml [moved from scilab/modules/data_structures/help/pt_BR/cellstr.xml with 100% similarity]
scilab/modules/data_structures/help/pt_BR/cells/iscell.xml [moved from scilab/modules/data_structures/help/pt_BR/iscell.xml with 100% similarity]
scilab/modules/data_structures/help/pt_BR/cells/iscellstr.xml [moved from scilab/modules/data_structures/help/pt_BR/iscellstr.xml with 100% similarity]
scilab/modules/data_structures/help/ru_RU/cells/cell.xml [moved from scilab/modules/data_structures/help/ru_RU/cell.xml with 100% similarity]
scilab/modules/data_structures/help/ru_RU/cells/cell2mat.xml [moved from scilab/modules/data_structures/help/ru_RU/cell2mat.xml with 100% similarity]
scilab/modules/data_structures/help/ru_RU/cells/cellstr.xml [moved from scilab/modules/data_structures/help/ru_RU/cellstr.xml with 100% similarity]
scilab/modules/data_structures/help/ru_RU/cells/iscell.xml [moved from scilab/modules/data_structures/help/ru_RU/iscell.xml with 100% similarity]
scilab/modules/data_structures/help/ru_RU/cells/iscellstr.xml [moved from scilab/modules/data_structures/help/ru_RU/iscellstr.xml with 100% similarity]
scilab/modules/differential_equations/demos/flow/blackhole.sci
scilab/modules/differential_equations/demos/flow/cylinder.sci
scilab/modules/differential_equations/demos/flow/sphere.sci
scilab/modules/differential_equations/demos/ode/ode_chstiff/ode_chstiff.dem.sce
scilab/modules/differential_equations/help/en_US/numderivative.xml [moved from scilab/modules/optimization/help/en_US/numderivative.xml with 100% similarity]
scilab/modules/differential_equations/help/en_US/ode.xml
scilab/modules/differential_equations/help/en_US/ode_roots.xml [moved from scilab/modules/differential_equations/help/en_US/ode_root.xml with 95% similarity]
scilab/modules/differential_equations/help/fr_FR/numderivative.xml [moved from scilab/modules/optimization/help/fr_FR/numderivative.xml with 100% similarity]
scilab/modules/differential_equations/help/fr_FR/ode.xml
scilab/modules/differential_equations/help/ja_JP/ode.xml
scilab/modules/differential_equations/help/ja_JP/ode_roots.xml [moved from scilab/modules/differential_equations/help/ja_JP/ode_root.xml with 95% similarity]
scilab/modules/differential_equations/help/pt_BR/ode.xml
scilab/modules/differential_equations/help/pt_BR/ode_roots.xml [moved from scilab/modules/differential_equations/help/pt_BR/ode_root.xml with 94% similarity]
scilab/modules/differential_equations/help/ru_RU/ode.xml
scilab/modules/differential_equations/help/ru_RU/ode_roots.xml [moved from scilab/modules/differential_equations/help/ru_RU/ode_root.xml with 93% similarity]
scilab/modules/differential_equations/macros/intc.sci
scilab/modules/differential_equations/macros/intl.sci
scilab/modules/differential_equations/macros/numderivative.sci [moved from scilab/modules/optimization/macros/numderivative.sci with 98% similarity]
scilab/modules/differential_equations/sci_gateway/cpp/sci_ode.cpp
scilab/modules/differential_equations/tests/nonreg_tests/bug_4083.tst [moved from scilab/modules/optimization/tests/nonreg_tests/bug_4083.tst with 98% similarity]
scilab/modules/differential_equations/tests/unit_tests/numderivative.tst [moved from scilab/modules/optimization/tests/unit_tests/numderivative.tst with 99% similarity]
scilab/modules/functions/macros/head_comments.sci
scilab/modules/functions/sci_gateway/cpp/sci_whereis.cpp
scilab/modules/functions/tests/nonreg_tests/bug_14992.tst [new file with mode: 0644]
scilab/modules/functions/tests/unit_tests/whereis.dia.ref [deleted file]
scilab/modules/functions/tests/unit_tests/whereis.tst
scilab/modules/graphics/demos/2d_3d_plots/geom3d.dem.sce
scilab/modules/graphics/demos/cmplxfunc/MacCmplx.sci
scilab/modules/graphics/demos/cmplxfunc/cmplxfunc.dem.gateway.sce
scilab/modules/graphics/demos/cmplxfunc/demo_acos.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_acosh.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_asin.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_asinh.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_atan.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_atanh.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_cos.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_cosh.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_custom.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_exp.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_log.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_sin.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_sinh.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_tan.dem.sce
scilab/modules/graphics/demos/cmplxfunc/demo_tanh.dem.sce
scilab/modules/graphics/help/en_US/figure_operations/clf.xml
scilab/modules/graphics/help/en_US/xget.xml
scilab/modules/graphics/help/en_US/xset.xml
scilab/modules/graphics/help/fr_FR/xset.xml
scilab/modules/graphics/help/ja_JP/2d_plot/Matplot.xml
scilab/modules/graphics/help/ja_JP/xget.xml
scilab/modules/graphics/help/ja_JP/xset.xml
scilab/modules/graphics/help/pt_BR/2d_plot/Matplot.xml
scilab/modules/graphics/help/pt_BR/xget.xml
scilab/modules/graphics/help/pt_BR/xset.xml
scilab/modules/graphics/macros/Sfgrayplot.sci
scilab/modules/graphics/macros/clf.sci
scilab/modules/graphics/macros/colorbar.sci
scilab/modules/graphics/macros/comet.sci
scilab/modules/graphics/macros/comet3d.sci
scilab/modules/graphics/macros/contour.sci
scilab/modules/graphics/macros/contour2d.sci
scilab/modules/graphics/macros/fchamp.sci
scilab/modules/graphics/macros/fgrayplot.sci
scilab/modules/graphics/macros/fplot3d.sci
scilab/modules/graphics/macros/fplot3d1.sci
scilab/modules/graphics/sci_gateway/cpp/sci_xget.cpp
scilab/modules/graphics/sci_gateway/cpp/sci_xset.cpp
scilab/modules/graphics/tests/nonreg_tests/bug_14711.tst [new file with mode: 0644]
scilab/modules/graphics/tests/unit_tests/clf.dia.ref [new file with mode: 0644]
scilab/modules/graphics/tests/unit_tests/clf.tst [new file with mode: 0644]
scilab/modules/graphics/tests/unit_tests/xset_xget.dia.ref [deleted file]
scilab/modules/graphics/tests/unit_tests/xset_xget.tst
scilab/modules/gui/Makefile.am
scilab/modules/gui/Makefile.in
scilab/modules/gui/etc/main_menubar.xml
scilab/modules/gui/includes/gw_gui.h
scilab/modules/gui/sci_gateway/cpp/sci_xchoicesi.cpp [moved from scilab/modules/gui/sci_gateway/cpp/sci_x_choice.cpp with 99% similarity]
scilab/modules/gui/src/c/gui.vcxproj
scilab/modules/gui/src/c/gui.vcxproj.filters
scilab/modules/helptools/Makefile.am
scilab/modules/helptools/Makefile.in
scilab/modules/helptools/data/pages/CHANGES.html
scilab/modules/helptools/etc/images_md5.txt
scilab/modules/helptools/images/CLKINV_f_1.png
scilab/modules/helptools/images/CLKINV_f_en_US.zcos.png
scilab/modules/helptools/images/CLKINV_f_fr_FR.zcos.png
scilab/modules/helptools/images/CLKINV_f_fr_FR_1.png
scilab/modules/helptools/images/SELF_SWITCH_on_off_Example.zcos.png
scilab/modules/helptools/images/SHIFT_en_US.zcos.png
scilab/modules/helptools/images/SHIFT_fr_FR.zcos.png
scilab/modules/helptools/images/batch_simulation.zcos.png
scilab/modules/helptools/images/zgrid_1.png
scilab/modules/helptools/images/zgrid_en_US_2.png
scilab/modules/helptools/images/zgrid_fr_FR_2.png
scilab/modules/helptools/images/zgrid_ja_JP_2.png
scilab/modules/helptools/images/zgrid_pt_BR_2.png
scilab/modules/helptools/images/zgrid_ru_RU_2.png
scilab/modules/io/sci_gateway/cpp/sci_read.cpp
scilab/modules/io/tests/nonreg_tests/bug_14636.tst [new file with mode: 0644]
scilab/modules/linear_algebra/help/en_US/linear/aff2ab.xml
scilab/modules/linear_algebra/help/en_US/linear/linsolve.xml
scilab/modules/linear_algebra/help/fr_FR/linear/linsolve.xml
scilab/modules/linear_algebra/help/ja_JP/linear/aff2ab.xml
scilab/modules/linear_algebra/help/ja_JP/linear/linsolve.xml
scilab/modules/linear_algebra/help/pt_BR/linear/aff2ab.xml
scilab/modules/linear_algebra/help/pt_BR/linear/linsolve.xml
scilab/modules/m2sci/macros/kernel/lst_funcall.sci
scilab/modules/matio/macros/savematfile.sci
scilab/modules/optimization/demos/icse/lqv.sce
scilab/modules/optimization/demos/icse/navet.sce
scilab/modules/optimization/demos/icse/seros.sce
scilab/modules/optimization/macros/bvodeS.sci
scilab/modules/optimization/macros/datafit.sci
scilab/modules/optimization/macros/leastsq.sci
scilab/modules/optimization/macros/neldermead/fminsearch.sci
scilab/modules/optimization/tests/nonreg_tests/bug_4083.dia.ref [deleted file]
scilab/modules/optimization/tests/unit_tests/numderivative.dia.ref [deleted file]
scilab/modules/parameters/macros/get_param.sci
scilab/modules/scicos/macros/scicos_scicos/create_modelica.sci
scilab/modules/scicos/macros/scicos_scicos/do_eval.sci
scilab/modules/scicos/macros/scicos_scicos/do_version.sci
scilab/modules/scicos/macros/scicos_scicos/script2var.sci
scilab/modules/scicos_blocks/macros/Sinks/WFILE_f.sci [deleted file]
scilab/modules/slint/src/cpp/DeprecatedChecker.cpp
scilab/modules/spreadsheet/help/en_US/csvRead.xml
scilab/modules/spreadsheet/help/ja_JP/csvRead.xml
scilab/modules/string/includes/pcre_private.h
scilab/modules/string/macros/sci2exp.sci
scilab/modules/string/src/c/pcre_private.c
scilab/modules/string/src/c/strsubst.c
scilab/modules/string/tests/nonreg_tests/bug_4276.tst [new file with mode: 0644]
scilab/modules/string/tests/unit_tests/strsubst.dia.ref [deleted file]
scilab/modules/string/tests/unit_tests/strsubst.tst
scilab/modules/windows_tools/src/c/scilab_windows/splashScreen.cpp
scilab/modules/xcos/demos/Lorenz.zcos
scilab/modules/xcos/demos/batch_simulation.zcos
scilab/modules/xcos/examples/integer_pal/en_US/SHIFT_en_US.zcos
scilab/modules/xcos/examples/integer_pal/fr_FR/SHIFT_fr_FR.zcos
scilab/modules/xcos/examples/portaction_pal/en_US/CLKINV_f_en_US.zcos
scilab/modules/xcos/examples/signalrouting_pal/SELF_SWITCH_on_off_Example.zcos
scilab/modules/xcos/examples/sinks_pal/en_US/wfile_f_en_US.zcos [deleted file]
scilab/modules/xcos/help/en_US/scilab_utilities_functions/xcosUpdateBlock.xml
scilab/modules/xcos/help/en_US/solvers/0-LSodar.xml
scilab/modules/xcos/help/en_US/solvers/1-CVode.xml
scilab/modules/xcos/help/en_US/solvers/2-Runge-Kutta.xml
scilab/modules/xcos/help/en_US/solvers/3-Dormand-Prince.xml
scilab/modules/xcos/help/en_US/solvers/4-ImplicitRK.xml
scilab/modules/xcos/help/en_US/solvers/5-CrankNicolson.xml
scilab/modules/xcos/help/en_US/solvers/6-IDA.xml
scilab/modules/xcos/help/en_US/solvers/7-DDaskr.xml
scilab/modules/xcos/help/en_US/solvers/8-Rootfinding.xml
scilab/modules/xcos/help/en_US/solvers/9-Comparisons.xml
scilab/modules/xcos/help/fr_FR/scilab_utilities_functions/xcosUpdateBlock.xml
scilab/modules/xcos/help/fr_FR/solvers/0-LSodar.xml
scilab/modules/xcos/help/fr_FR/solvers/1-CVode.xml
scilab/modules/xcos/help/fr_FR/solvers/2-Runge-Kutta.xml
scilab/modules/xcos/help/fr_FR/solvers/3-Dormand-Prince.xml
scilab/modules/xcos/help/fr_FR/solvers/4-ImplicitRK.xml
scilab/modules/xcos/help/fr_FR/solvers/5-CrankNicolson.xml
scilab/modules/xcos/help/fr_FR/solvers/6-IDA.xml
scilab/modules/xcos/help/fr_FR/solvers/7-DDaskr.xml
scilab/modules/xcos/help/fr_FR/solvers/8-Racines.xml
scilab/modules/xcos/help/fr_FR/solvers/9-Comparaisons.xml
scilab/modules/xcos/sci_gateway/cpp/sci_xcosDiagramToScilab.cpp
scilab/modules/xcos/src/java/org/scilab/modules/xcos/Xcos.java
scilab/modules/xcos/src/java/org/scilab/modules/xcos/XcosTab.java
scilab/modules/xcos/src/java/org/scilab/modules/xcos/configuration/ConfigurationManager.java
scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/sax/LinkHandler.java
scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/scicos/BasicBlockInfo.java
scilab/modules/xcos/tests/nonreg_tests/bug_14637.tst [new file with mode: 0644]
scilab/modules/xcos/tests/nonreg_tests/bug_14637_1.zcos [new file with mode: 0644]
scilab/modules/xcos/tests/nonreg_tests/bug_14637_2.zcos [new file with mode: 0644]
scilab/modules/xcos/tests/nonreg_tests/bug_6797.dia.ref
scilab/modules/xcos/tests/nonreg_tests/bug_6797.tst
scilab/modules/xcos/tests/nonreg_tests/bug_7953.dia.ref
scilab/modules/xcos/tests/nonreg_tests/bug_7953.tst
scilab/modules/xcos/tests/nonreg_tests/bug_8798.dia.ref
scilab/modules/xcos/tests/nonreg_tests/bug_8798.tst
scilab/modules/xcos/tests/nonreg_tests/bug_9810.dia.ref
scilab/modules/xcos/tests/nonreg_tests/bug_9810.tst
scilab/modules/xcos/tests/unit_tests/block_tests/CLOCK_c.dia.ref [new file with mode: 0644]
scilab/modules/xcos/tests/unit_tests/xcos_simulate.tst

index f1c8bb4..ef86b90 100644 (file)
@@ -1,7 +1,7 @@
 Welcome to Scilab 6.1.X
 =======================
 
-This file details the changes between Scilab 6.1.X (this development branch), and the previous release 6.0.0.
+This file details the changes between Scilab 6.1.X (this development branch), and the previous release 6.0.X.
 For changelogs of earlier releases, please see [Scilab 6.0.0](https://help.scilab.org/docs/6.0.0/en_US/CHANGES.html).
 
 This file is intended for the specific needs of advanced users, and describes:
@@ -105,6 +105,15 @@ Bug Fixes
 
 ### Bugs fixed in 6.1.0:
 * [#14604](http://bugzilla.scilab.org/show_bug.cgi?id=14604): `emptystr()` is 40x slower with 6.0.0 wrt 5.5.2
-* [#14605](http://bugzilla.scilab.org/show_bug.cgi?id=14605) fixed - `bench_run` was too strict about the specification of tests names.
+* [#14605](http://bugzilla.scilab.org/show_bug.cgi?id=14605): fixed - `bench_run` was too strict about the specification of tests names.
 * [#14812](http://bugzilla.scilab.org/show_bug.cgi?id=14812): Minor typos in messages.
 
+### Bugs fixed in 6.0.1:
+* [#4276](http://bugzilla.scilab.org/show_bug.cgi?id=4276): `strsubst` replaced the first occurence in regex mode.
+* [#5278](http://bugzilla.scilab.org/show_bug.cgi?id=5278): obsolete `xset()` was still used in scripts, macros, tests and help pages.
+* [#14636](http://bugzilla.scilab.org/show_bug.cgi?id=14636): Xcos model with modelica electrical blocks (created in 5.5.2) crashed Scilab 6.
+* [#14637](http://bugzilla.scilab.org/show_bug.cgi?id=14367): Some Scilab 5.5.2 diagrams didn't simulate properly in Xcos.
+* [#14978](http://bugzilla.scilab.org/show_bug.cgi?id=15006): ode help page still contained 'root' which has been replaced by 'roots'.
+* [#15010](http://bugzilla.scilab.org/show_bug.cgi?id=15010): Coselica did not simulate on Scilab 6.
+* [#15023](http://bugzilla.scilab.org/show_bug.cgi?id=15023): `clf()` wrongly reset `figure_id`.
+
index ff7b928..95ff87d 100644 (file)
@@ -519,8 +519,6 @@ SciErr getVarType(void *_pvCtx, int *_piAddress, int *_piType)
             *_piType = sci_strings;
             break;
         case types::InternalType::ScilabMacroFile :
-            *_piType = sci_u_function;
-            break;
         case types::InternalType::ScilabMacro :
             *_piType = sci_c_function;
             break;
index f56c363..6d50ef5 100644 (file)
@@ -23,6 +23,7 @@
 #include "listundefined.hxx"
 #include "tlist.hxx"
 #include "mlist.hxx"
+#include "struct.hxx"
 #include "pointer.hxx"
 #include "polynom.hxx"
 #include "gatewaystruct.hxx"
@@ -102,13 +103,23 @@ SciErr getListItemNumber(void* _pvCtx, int* _piAddress, int* _piNbItem)
         return sciErr;
     }
 
+    types::InternalType* pIT = (types::InternalType*)_piAddress;
     types::List* pL = (types::List*)_piAddress;
     switch (iType)
     {
         case sci_list :
-        case sci_mlist :
         case sci_tlist :
             *_piNbItem = pL->getSize();
+        case sci_mlist :
+            // an mlist can also be a struct in Scilab 5 do not manage it in this API
+            if (pIT->isStruct())
+            {
+                *_piNbItem = 0;
+            }
+            else
+            {
+                *_piNbItem = pL->getSize();
+            }
             break;
         default :
             addErrorMessage(&sciErr, API_ERROR_INVALID_LIST_TYPE, _("%s: Invalid argument type, %s expected"), "getListItemNumber", _("list"));
index ed42ef9..be3069a 100644 (file)
@@ -84,8 +84,6 @@ int API_PROTO(getType)(scilabEnv env, scilabVar var)
             return sci_strings;
             break;
         case types::InternalType::ScilabMacroFile:
-            return sci_u_function;
-            break;
         case types::InternalType::ScilabMacro:
             return sci_c_function;
             break;
index d44d21c..e5474be 100644 (file)
@@ -413,28 +413,28 @@ InternalType* GenericShortcutAnd(InternalType* _pL)
             isValueFalse(_pL->getAs<Int8>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabUInt8 :
-            isValueFalse(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueFalse(_pL->getAs<UInt8>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabInt16 :
-            isValueFalse(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueFalse(_pL->getAs<Int16>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabUInt16 :
-            isValueFalse(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueFalse(_pL->getAs<UInt16>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabInt32 :
-            isValueFalse(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueFalse(_pL->getAs<Int32>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabUInt32 :
-            isValueFalse(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueFalse(_pL->getAs<UInt32>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabInt64 :
-            isValueFalse(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueFalse(_pL->getAs<Int64>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabUInt64 :
-            isValueFalse(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueFalse(_pL->getAs<UInt64>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabSparse :
-            isValueFalse(_pL->getAs<SparseBool>(), (Bool**)&pResult);
+            isValueFalse(_pL->getAs<Sparse>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabSparseBool :
             isValueFalse(_pL->getAs<SparseBool>(), (Bool**)&pResult);
@@ -473,7 +473,7 @@ void isValueFalse(Double* _pL, Bool** _pOut)
     if (_pL->isEmpty())
     {
         //call non shorcut operation
-        *_pOut = NULL;
+        *_pOut = new Bool(0); //[] && something -> false
         return;
     }
 
index 8e86915..0e15fa6 100644 (file)
@@ -415,28 +415,28 @@ InternalType* GenericShortcutOr(InternalType* _pL)
             isValueTrue(_pL->getAs<Int8>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabUInt8 :
-            isValueTrue(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueTrue(_pL->getAs<UInt8>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabInt16 :
-            isValueTrue(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueTrue(_pL->getAs<Int16>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabUInt16 :
-            isValueTrue(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueTrue(_pL->getAs<UInt16>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabInt32 :
-            isValueTrue(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueTrue(_pL->getAs<Int32>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabUInt32 :
-            isValueTrue(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueTrue(_pL->getAs<UInt32>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabInt64 :
-            isValueTrue(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueTrue(_pL->getAs<Int64>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabUInt64 :
-            isValueTrue(_pL->getAs<Int8>(), (Bool**)&pResult);
+            isValueTrue(_pL->getAs<UInt64>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabSparse :
-            isValueTrue(_pL->getAs<SparseBool>(), (Bool**)&pResult);
+            isValueTrue(_pL->getAs<Sparse>(), (Bool**)&pResult);
             break;
         case InternalType::ScilabSparseBool :
             isValueTrue(_pL->getAs<SparseBool>(), (Bool**)&pResult);
diff --git a/scilab/modules/ast/tests/unit_tests/Sand.tst b/scilab/modules/ast/tests/unit_tests/Sand.tst
new file mode 100644 (file)
index 0000000..41c7020
--- /dev/null
@@ -0,0 +1,253 @@
+// ============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2014 - Scilab Enterprises - Antoine ELIAS
+// Copyright (C) 2017 - Scilab Enterprises - Clement DAVID
+//
+//  This file is distributed under the same license as the Scilab package.
+// ============================================================================
+//
+// <-- CLI SHELL MODE -->
+
+empty = [];
+r = 2;
+R = [1,2;3,4];
+R3(:,:,1) = R;
+R3(:,:,2) = R';
+c = 1 + 2*%i;
+C = [1+2*%i,2+4*%i;3+6*%i,4+8*%i];
+C3(:,:,1) = C;
+C3(:,:,2) = C';
+e = eye();
+ec = (5+%i) * eye();
+p = 1 + %s - %s**2;
+pc = 1 + %s - %s**2 + ( 2 - 3 * %s + 4 * %s**2 ) * %i;
+P = [2*p, -3*p;4*p,-5*p];
+PC = [2*pc, -3*pc;4*pc,-5*pc];
+SP = sparse([1,2;4,5;3,10],[1,2,3]);
+SPC = sparse([1,2;4,5;3,10],[1,2,3]) * ( 1 + 4*%i);
+SPB = sparse([1,2;2,1],[%t;%t],[2,2]);
+
+i8 = int8(-8);
+ui8 = uint8(8);
+I8 = int8([-8 -16 ; -24 -32]);
+UI8 = uint8([8 16 ; 24 32]);
+
+I16 = int16([-16 -32 ; -48 -64]);
+UI16 = uint16([16 32 ; 48 64]);
+i16 = int16(-16);
+ui16 = uint16(16);
+
+i32 = int32(-32);
+ui32 = uint32(32);
+I32 = int32([-32 -64 ; -96 -128]);
+UI32 = uint32([32 64 ; 96 128]);
+
+str = "string";
+STR = ["string1" "string2";"string3" "string4"];
+
+b = %f;
+B = [%t %f;%f %t];
+
+assert_checkequal(empty && empty, %f);
+assert_checkequal(empty && r, %f);
+assert_checkequal(empty && R, %f);
+assert_checkequal(empty && e, %f);
+assert_checkequal(empty && b, %f);
+assert_checkequal(empty && B, %f);
+
+assert_checkequal(r && empty, %f);
+assert_checkequal(r && r, %t);
+assert_checkequal(r && R, %t);
+assert_checkequal(r && e, %t);
+assert_checkequal(r && b, %f);
+assert_checkequal(r && B, %f);
+
+assert_checkequal(R && empty, %f);
+assert_checkequal(R && r, %t);
+assert_checkequal(R && R, %t);
+assert_checkequal(R && e, %t);
+assert_checkequal(R && b, %f);
+assert_checkequal(R && B, %f);
+
+assert_checkequal(e && empty, %f);
+assert_checkequal(e && r, %t);
+assert_checkequal(e && R, %t);
+assert_checkequal(e && b, %f);
+assert_checkequal(e && B, %f);
+
+assert_checkequal(b && empty, %f);
+assert_checkequal(b && r, %f);
+assert_checkequal(b && R, %f);
+assert_checkequal(b && e, %f);
+assert_checkequal(b && b, %f);
+assert_checkequal(b && B, %f);
+assert_checkequal(b && SPB, %f);
+
+assert_checkequal(B && empty, %f);
+assert_checkequal(B && r, %f);
+assert_checkequal(B && R, %f);
+assert_checkequal(B && e, %f);
+assert_checkequal(B && b, %f);
+assert_checkequal(B && B, %f);
+assert_checkequal(B && SPB, %f);
+
+assert_checkequal(SPB && b, %f);
+assert_checkequal(SPB && B, %f);
+assert_checkequal(SPB && SPB, %f);
+
+assert_checkequal(i8 && i8, %t);
+assert_checkequal(i8 && I8, %t);
+assert_checkequal(i8 && ui8, %t);
+assert_checkequal(i8 && UI8, %t);
+assert_checkequal(i8 && i16, %t);
+assert_checkequal(i8 && I16, %t);
+assert_checkequal(i8 && ui16, %t);
+assert_checkequal(i8 && UI16, %t);
+assert_checkequal(i8 && i32, %t);
+assert_checkequal(i8 && I32, %t);
+assert_checkequal(i8 && ui32, %t);
+assert_checkequal(i8 && UI32, %t);
+
+assert_checkequal(I8 && i8, %t);
+assert_checkequal(I8 && I8, %t);
+assert_checkequal(I8 && ui8, %f);
+assert_checkequal(I8 && UI8, %t);
+assert_checkequal(I8 && i16, %t);
+assert_checkequal(I8 && I16, %t);
+assert_checkequal(I8 && ui16, %f);
+assert_checkequal(I8 && UI16, %t);
+assert_checkequal(I8 && i32, %t);
+assert_checkequal(I8 && I32, %t);
+assert_checkequal(I8 && ui32, %t);
+assert_checkequal(I8 && UI32, %t);
+
+assert_checkequal(ui8 && i8, %t);
+assert_checkequal(ui8 && I8, %f);
+assert_checkequal(ui8 && ui8, %t);
+assert_checkequal(ui8 && UI8, %f);
+assert_checkequal(ui8 && i16, %f);
+assert_checkequal(ui8 && I16, %f);
+assert_checkequal(ui8 && ui16, %f);
+assert_checkequal(ui8 && UI16, %f);
+assert_checkequal(ui8 && i32, %f);
+assert_checkequal(ui8 && I32, %f);
+assert_checkequal(ui8 && ui32, %f);
+assert_checkequal(ui8 && UI32, %f);
+
+assert_checkequal(UI8 && i8, %t);
+assert_checkequal(UI8 && I8, %t);
+assert_checkequal(UI8 && ui8, %f);
+assert_checkequal(UI8 && UI8, %t);
+assert_checkequal(UI8 && i16, %f);
+assert_checkequal(UI8 && I16, %f);
+assert_checkequal(UI8 && ui16, %f);
+assert_checkequal(UI8 && UI16, %f);
+assert_checkequal(UI8 && i32, %f);
+assert_checkequal(UI8 && I32, %f);
+assert_checkequal(UI8 && ui32, %f);
+assert_checkequal(UI8 && UI32, %f);
+
+assert_checkequal(i16 && i8, %t);
+assert_checkequal(i16 && I8, %t);
+assert_checkequal(i16 && ui8, %f);
+assert_checkequal(i16 && UI8, %f);
+assert_checkequal(i16 && i16, %t);
+assert_checkequal(i16 && I16, %t);
+assert_checkequal(i16 && ui16, %t);
+assert_checkequal(i16 && UI16, %t);
+assert_checkequal(i16 && i32, %t);
+assert_checkequal(i16 && I32, %t);
+assert_checkequal(i16 && ui32, %t);
+assert_checkequal(i16 && UI32, %t);
+
+assert_checkequal(I16 && i8, %t);
+assert_checkequal(I16 && I8, %t);
+assert_checkequal(I16 && ui8, %f);
+assert_checkequal(I16 && UI8, %f);
+assert_checkequal(I16 && i16, %t);
+assert_checkequal(I16 && I16, %t);
+assert_checkequal(I16 && ui16, %f);
+assert_checkequal(I16 && UI16, %t);
+assert_checkequal(I16 && i32, %t);
+assert_checkequal(I16 && I32, %t);
+assert_checkequal(I16 && ui32, %f);
+assert_checkequal(I16 && UI32, %t);
+
+assert_checkequal(ui16 && i8, %t);
+assert_checkequal(ui16 && I8, %f);
+assert_checkequal(ui16 && ui8, %f);
+assert_checkequal(ui16 && UI8, %f);
+assert_checkequal(ui16 && i16, %t);
+assert_checkequal(ui16 && I16, %f);
+assert_checkequal(ui16 && ui16, %t);
+assert_checkequal(ui16 && UI16, %f);
+assert_checkequal(ui16 && i32, %f);
+assert_checkequal(ui16 && I32, %f);
+assert_checkequal(ui16 && ui32, %f);
+assert_checkequal(ui16 && UI32, %f);
+
+assert_checkequal(UI16 && i8, %t);
+assert_checkequal(UI16 && I8, %t);
+assert_checkequal(UI16 && ui8, %f);
+assert_checkequal(UI16 && UI8, %f);
+assert_checkequal(UI16 && i16, %t);
+assert_checkequal(UI16 && I16, %t);
+assert_checkequal(UI16 && ui16, %f);
+assert_checkequal(UI16 && UI16, %t);
+assert_checkequal(UI16 && i32, %f);
+assert_checkequal(UI16 && I32, %f);
+assert_checkequal(UI16 && ui32, %f);
+assert_checkequal(UI16 && UI32, %f);
+
+assert_checkequal(i32 && i8, %t);
+assert_checkequal(i32 && I8, %t);
+assert_checkequal(i32 && ui8, %f);
+assert_checkequal(i32 && UI8, %f);
+assert_checkequal(i32 && i16, %t);
+assert_checkequal(i32 && I16, %t);
+assert_checkequal(i32 && ui16, %f);
+assert_checkequal(i32 && UI16, %f);
+assert_checkequal(i32 && i32, %t);
+assert_checkequal(i32 && I32, %t);
+assert_checkequal(i32 && ui32, %t);
+assert_checkequal(i32 && UI32, %t);
+
+assert_checkequal(I32 && i8, %t);
+assert_checkequal(I32 && I8, %t);
+assert_checkequal(I32 && ui8, %f);
+assert_checkequal(I32 && UI8, %f);
+assert_checkequal(I32 && i16, %t);
+assert_checkequal(I32 && I16, %t);
+assert_checkequal(I32 && ui16, %f);
+assert_checkequal(I32 && UI16, %f);
+assert_checkequal(I32 && i32, %t);
+assert_checkequal(I32 && I32, %t);
+assert_checkequal(I32 && ui32, %f);
+assert_checkequal(I32 && UI32, %t);
+
+assert_checkequal(ui32 && i8, %t);
+assert_checkequal(ui32 && I8, %t);
+assert_checkequal(ui32 && ui8, %f);
+assert_checkequal(ui32 && UI8, %f);
+assert_checkequal(ui32 && i16, %t);
+assert_checkequal(ui32 && I16, %f);
+assert_checkequal(ui32 && ui16, %f);
+assert_checkequal(ui32 && UI16, %f);
+assert_checkequal(ui32 && i32, %t);
+assert_checkequal(ui32 && I32, %f);
+assert_checkequal(ui32 && ui32, %t);
+assert_checkequal(ui32 && UI32, %f);
+
+assert_checkequal(UI32 && i8, %t);
+assert_checkequal(UI32 && I8, %t);
+assert_checkequal(UI32 && ui8, %f);
+assert_checkequal(UI32 && UI8, %f);
+assert_checkequal(UI32 && i16, %t);
+assert_checkequal(UI32 && I16, %t);
+assert_checkequal(UI32 && ui16, %f);
+assert_checkequal(UI32 && UI16, %f);
+assert_checkequal(UI32 && i32, %t);
+assert_checkequal(UI32 && I32, %t);
+assert_checkequal(UI32 && ui32, %f);
+assert_checkequal(UI32 && UI32, %t);
+
diff --git a/scilab/modules/ast/tests/unit_tests/Sor.tst b/scilab/modules/ast/tests/unit_tests/Sor.tst
new file mode 100644 (file)
index 0000000..de9c4a3
--- /dev/null
@@ -0,0 +1,98 @@
+// ============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2014 - Scilab Enterprises - Antoine ELIAS
+// Copyright (C) 2016 - Scilab Enterprises - Clement DAVID
+//
+//  This file is distributed under the same license as the Scilab package.
+// ============================================================================
+//
+// <-- CLI SHELL MODE -->
+
+empty = [];
+r = 2;
+R = [1,2;3,4];
+R3(:,:,1) = R;
+R3(:,:,2) = R';
+c = 1 + 2*%i;
+C = [1+2*%i,2+4*%i;3+6*%i,4+8*%i];
+C3(:,:,1) = C;
+C3(:,:,2) = C';
+e = eye();
+ec = (5+%i) * eye();
+p = 1 + %s - %s**2;
+pc = 1 + %s - %s**2 + ( 2 - 3 * %s + 4 * %s**2 ) * %i;
+P = [2*p, -3*p;4*p,-5*p];
+PC = [2*pc, -3*pc;4*pc,-5*pc];
+SP = sparse([1,2;4,5;3,10],[1,2,3]);
+SPC = sparse([1,2;4,5;3,10],[1,2,3]) * ( 1 + 4*%i);
+SPB = sparse([1,2;2,1],[%t;%t],[2,2]);
+
+i8 = int8(-8);
+ui8 = uint8(8);
+I8 = int8([-8 -16 ; -24 -32]);
+UI8 = uint8([8 16 ; 24 32]);
+
+I16 = int16([-16 -32 ; -48 -64]);
+UI16 = uint16([16 32 ; 48 64]);
+i16 = int16(-16);
+ui16 = uint16(16);
+
+i32 = int32(-32);
+ui32 = uint32(32);
+I32 = int32([-32 -64 ; -96 -128]);
+UI32 = uint32([32 64 ; 96 128]);
+
+str = "string";
+STR = ["string1" "string2";"string3" "string4"];
+
+b = %f;
+B = [%t %f;%f %t];
+
+
+assert_checkequal(empty || empty, %f);
+assert_checkequal(empty || r, %f);
+assert_checkequal(empty || R, %f);
+assert_checkequal(empty || e, %f);
+assert_checkequal(empty || b, %t);
+assert_checkequal(empty || B, %t);
+
+assert_checkequal(r || empty, %t);
+assert_checkequal(r || r, %t);
+assert_checkequal(r || R, %t);
+assert_checkequal(r || e, %t);
+assert_checkequal(r || b, %t);
+assert_checkequal(r || B, %t);
+
+assert_checkequal(R || empty, %t);
+assert_checkequal(R || r, %t);
+assert_checkequal(R || R, %t);
+assert_checkequal(R || e, %t);
+assert_checkequal(R || b, %t);
+assert_checkequal(R || B, %t);
+
+assert_checkequal(e || empty, %t);
+assert_checkequal(e || r, %t);
+assert_checkequal(e || R, %t);
+assert_checkequal(e || b, %t);
+assert_checkequal(e || B, %t);
+
+assert_checkequal(b || empty, %t);
+assert_checkequal(b || r, %t);
+assert_checkequal(b || R, %t);
+assert_checkequal(b || e, %t);
+assert_checkequal(b || b, %f);
+assert_checkequal(b || B, %f);
+assert_checkequal(b || SPB, %f);
+
+assert_checkequal(B || empty, %t);
+assert_checkequal(B || r, %t);
+assert_checkequal(B || R, %t);
+assert_checkequal(B || e, %t);
+assert_checkequal(B || b, %f);
+assert_checkequal(B || B, %f);
+assert_checkequal(B || SPB, %t);
+
+assert_checkequal(SPB || b, %f);
+assert_checkequal(SPB || B, %t);
+assert_checkequal(SPB || SPB, %f);
+
index c57dc7a..50df1e5 100644 (file)
@@ -91,8 +91,6 @@ function [y,x]=csim(u,dt,sl,x0,tol)
             error(msprintf(gettext("%s: Wrong value for input argument #%d: Must be in the set {%s}.\n"),"csim",1,"""step"",""impuls"""))
         end;
         deff("[y]=u(t)",text);
-    case 11 then //input given by a function of time
-        comp(u)
     case 13 then //input given by a function of time
     case 1 then //input given by a vector of data
         [mbu,ntu]=size(u);
@@ -101,10 +99,6 @@ function [y,x]=csim(u,dt,sl,x0,tol)
         end
     case 15 then  //input given by a list: function of time with parameters
         uu=u(1),
-        if type(uu)==11 then
-            comp(uu),
-            u(1)=uu,
-        end
     else error(msprintf(gettext("%s: Wrong type for input argument #%d: Function expected"), "csim", 2));
     end;
     //
index 945c4b9..dd4a587 100644 (file)
@@ -1,6 +1,6 @@
 /* ----------------------------------------------------------------------------
  * This file was automatically generated by SWIG (http://www.swig.org).
- * Version 3.0.7
+ * Version 3.0.11
  *
  * Do not make changes to this file unless you know what you are doing--modify
  * the SWIG interface file instead.
 package org.scilab.modules.commons;
 
 
- /**
-   * Some commons values from Scilab engine to Java
-   * @author Sylvestre LEDRU
-   * @copyright DIGITEO 2010
-   */
+/**
+  * Some commons values from Scilab engine to Java
+  * @author Sylvestre LEDRU
+  * @copyright DIGITEO 2010
+  */
 public class ScilabCommons {
 
- /**
-   * Constructor
-   */
- protected ScilabCommons() {
-    throw new UnsupportedOperationException();
- }
-  
- /**
-   * Get SCIHOME variable from Scilab
-   * @return SCIHOME value
-   */
-public static String getSCIHOME() {
-    return ScilabCommonsJNI.getSCIHOME();
-  }
-
-  public static String getTMPDIR() {
-    return ScilabCommonsJNI.getTMPDIR();
-  }
-
-  public static String getlanguage() {
-    return ScilabCommonsJNI.getlanguage();
-  }
-
-  public static String createtempfilename(String prefix, int bShortFormat) {
-    return ScilabCommonsJNI.createtempfilename(prefix, bShortFormat);
-  }
-
-  public static int getieee() {
-    return ScilabCommonsJNI.getieee();
-  }
-
-  public static void setieee(int arg0) {
-    ScilabCommonsJNI.setieee(arg0);
-  }
-
-  
- /**
-   * Set the Scilab ieee mode
-   */
-public static void setformat(String format, int width) {
-    ScilabCommonsJNI.setformat(format, width);
-  }
-
-  
- /**
-   * returns the Scilab format ("v" or "e")
-   * @return format
-   */
-public static String getformat() {
-    return ScilabCommonsJNI.getformat();
-  }
-
-  
- /**
-   * returns the Scilab format width
-   * @return format
-   */
-public static int getformatwidth() {
-    return ScilabCommonsJNI.getformatwidth();
-  }
-
-  
- /**
-   * returns the Scilab version major number
-   * @return version major
-   */
-public static int getScilabVersionMajor() {
-    return ScilabCommonsJNI.getScilabVersionMajor();
-  }
-
-  
- /**
-   * returns the Scilab version minor number
-   * @return version minor
-   */
-public static int getScilabVersionMinor() {
-    return ScilabCommonsJNI.getScilabVersionMinor();
-  }
-
-  
- /**
-   * returns the Scilab version maintenance number
-   * @return version maintenance
-   */
-public static int getScilabVersionMaintenance() {
-    return ScilabCommonsJNI.getScilabVersionMaintenance();
-  }
-
-  
- /**
-   * returns the Scilab version timestamp number
-   * @return version timestamp
-   */
-public static int getScilabVersionTimestamp() {
-    return ScilabCommonsJNI.getScilabVersionTimestamp();
-  }
-
-  
- /**
-   * returns the Scilab version as string
-   * @return version Scilab version as a string
-   */
-public static String getScilabVersionAsString() {
-    return ScilabCommonsJNI.getScilabVersionAsString();
-  }
-
-  public static int setRecursionLimit(int arg0) {
-    return ScilabCommonsJNI.setRecursionLimit(arg0);
-  }
+    /**
+      * Constructor
+      */
+    protected ScilabCommons() {
+        throw new UnsupportedOperationException();
+    }
+
+    /**
+      * Get SCIHOME variable from Scilab
+      * @return SCIHOME value
+      */
+    public static String getSCIHOME() {
+        return ScilabCommonsJNI.getSCIHOME();
+    }
+
+    public static String getTMPDIR() {
+        return ScilabCommonsJNI.getTMPDIR();
+    }
+
+    public static String getlanguage() {
+        return ScilabCommonsJNI.getlanguage();
+    }
+
+    public static String createtempfilename(String prefix, int bShortFormat) {
+        return ScilabCommonsJNI.createtempfilename(prefix, bShortFormat);
+    }
+
+    public static int getieee() {
+        return ScilabCommonsJNI.getieee();
+    }
+
+    public static void setieee(int arg0) {
+        ScilabCommonsJNI.setieee(arg0);
+    }
+
+
+    /**
+      * Set the Scilab ieee mode
+      */
+    public static void setformat(String format, int width) {
+        ScilabCommonsJNI.setformat(format, width);
+    }
+
+
+    /**
+      * returns the Scilab format ("v" or "e")
+      * @return format
+      */
+    public static String getformat() {
+        return ScilabCommonsJNI.getformat();
+    }
+
+
+    /**
+      * returns the Scilab format width
+      * @return format
+      */
+    public static int getformatwidth() {
+        return ScilabCommonsJNI.getformatwidth();
+    }
+
+
+    /**
+      * returns the Scilab version major number
+      * @return version major
+      */
+    public static int getScilabVersionMajor() {
+        return ScilabCommonsJNI.getScilabVersionMajor();
+    }
+
+
+    /**
+      * returns the Scilab version minor number
+      * @return version minor
+      */
+    public static int getScilabVersionMinor() {
+        return ScilabCommonsJNI.getScilabVersionMinor();
+    }
+
+
+    /**
+      * returns the Scilab version maintenance number
+      * @return version maintenance
+      */
+    public static int getScilabVersionMaintenance() {
+        return ScilabCommonsJNI.getScilabVersionMaintenance();
+    }
+
+
+    /**
+      * returns the Scilab version timestamp number
+      * @return version timestamp
+      */
+    public static int getScilabVersionTimestamp() {
+        return ScilabCommonsJNI.getScilabVersionTimestamp();
+    }
+
+
+    /**
+      * returns the Scilab version as string
+      * @return version Scilab version as a string
+      */
+    public static String getScilabVersionAsString() {
+        return ScilabCommonsJNI.getScilabVersionAsString();
+    }
+
+    public static int setRecursionLimit(int arg0) {
+        return ScilabCommonsJNI.setRecursionLimit(arg0);
+    }
+
+
+    /**
+      * returns the Scilab initialization status
+      * @return 1 if Scilab is being started, 0 if up and running
+      */
+    public static int getStartProcessing() {
+        return ScilabCommonsJNI.getStartProcessing();
+    }
 
 }
index 502fd59..af0e4d2 100644 (file)
@@ -1,6 +1,6 @@
 /* ----------------------------------------------------------------------------
  * This file was automatically generated by SWIG (http://www.swig.org).
- * Version 3.0.7
+ * Version 3.0.11
  *
  * Do not make changes to this file unless you know what you are doing--modify
  * the SWIG interface file instead.
@@ -11,52 +11,53 @@ package org.scilab.modules.commons;
 
 /* It is generated code. Disable checkstyle */
 //CHECKSTYLE:OFF
- /**
-   * Some commons values from Scilab engine to Java
-   * @author Sylvestre LEDRU
-   * @copyright DIGITEO 2010
-   */
+/**
+  * Some commons values from Scilab engine to Java
+  * @author Sylvestre LEDRU
+  * @copyright DIGITEO 2010
+  */
 public class ScilabCommonsJNI {
 
-  /**
-    * Constructor
-    */
-  protected ScilabCommonsJNI() {
-    throw new UnsupportedOperationException();
-  }
+    /**
+      * Constructor
+      */
+    protected ScilabCommonsJNI() {
+        throw new UnsupportedOperationException();
+    }
 
-  static {
-    try {
-        System.loadLibrary("scicommons");
-    } catch (SecurityException e) {
-        System.err.println("A security manager exists and does not allow the loading of the specified dynamic library.");
-        System.err.println(e.getLocalizedMessage());
-        System.exit(-1);
-    } catch (UnsatisfiedLinkError e)    {
-           System.err.println("The native library scicommons does not exist or cannot be found.");
-        if (System.getenv("CONTINUE_ON_JNI_ERROR") == null) {
-           System.err.println(e.getLocalizedMessage());
-           System.err.println("Current java.library.path is : "+System.getProperty("java.library.path"));
-           System.exit(-1);
-        }else{
-           System.err.println("Continuing anyway because of CONTINUE_ON_JNI_ERROR");
+    static {
+        try {
+            System.loadLibrary("scicommons");
+        } catch (SecurityException e) {
+            System.err.println("A security manager exists and does not allow the loading of the specified dynamic library.");
+            System.err.println(e.getLocalizedMessage());
+            System.exit(-1);
+        } catch (UnsatisfiedLinkError e)    {
+            System.err.println("The native library scicommons does not exist or cannot be found.");
+            if (System.getenv("CONTINUE_ON_JNI_ERROR") == null) {
+                System.err.println(e.getLocalizedMessage());
+                System.err.println("Current java.library.path is : " + System.getProperty("java.library.path"));
+                System.exit(-1);
+            } else {
+                System.err.println("Continuing anyway because of CONTINUE_ON_JNI_ERROR");
+            }
         }
     }
-  }
 
-  public final static native String getSCIHOME();
-  public final static native String getTMPDIR();
-  public final static native String getlanguage();
-  public final static native String createtempfilename(String jarg1, int jarg2);
-  public final static native int getieee();
-  public final static native void setieee(int jarg1);
-  public final static native void setformat(String jarg1, int jarg2);
-  public final static native String getformat();
-  public final static native int getformatwidth();
-  public final static native int getScilabVersionMajor();
-  public final static native int getScilabVersionMinor();
-  public final static native int getScilabVersionMaintenance();
-  public final static native int getScilabVersionTimestamp();
-  public final static native String getScilabVersionAsString();
-  public final static native int setRecursionLimit(int jarg1);
+    public final static native String getSCIHOME();
+    public final static native String getTMPDIR();
+    public final static native String getlanguage();
+    public final static native String createtempfilename(String jarg1, int jarg2);
+    public final static native int getieee();
+    public final static native void setieee(int jarg1);
+    public final static native void setformat(String jarg1, int jarg2);
+    public final static native String getformat();
+    public final static native int getformatwidth();
+    public final static native int getScilabVersionMajor();
+    public final static native int getScilabVersionMinor();
+    public final static native int getScilabVersionMaintenance();
+    public final static native int getScilabVersionTimestamp();
+    public final static native String getScilabVersionAsString();
+    public final static native int setRecursionLimit(int jarg1);
+    public final static native int getStartProcessing();
 }
index c124cb2..a5f1d5e 100644 (file)
@@ -234,3 +234,12 @@ char* getScilabVersionAsString();
    */
 public";
 int setRecursionLimit(int);
+/* JavaDoc */
+%javamethodmodifiers getStartProcessing() "
+ /**
+   * returns the Scilab initialization status
+   * @return 1 if Scilab is being started, 0 if up and running
+   */
+public";
+int getStartProcessing();
+
index fb12cac..77e9182 100644 (file)
@@ -1,6 +1,6 @@
 /* ----------------------------------------------------------------------------
  * This file was automatically generated by SWIG (http://www.swig.org).
- * Version 3.0.7
+ * Version 3.0.11
  *
  * This file is not intended to be easily readable and contains a number of
  * coding conventions designed to improve portability and efficiency. Do not make
@@ -8,7 +8,11 @@
  * interface file instead.
  * ----------------------------------------------------------------------------- */
 
+
+#ifndef SWIGJAVA
 #define SWIGJAVA
+#endif
+
 
 /* -----------------------------------------------------------------------------
  *  This section contains generic SWIG labels for method/variable
 #endif
 
 /* exporting methods */
-#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
-#  ifndef GCC_HASCLASSVISIBILITY
-#    define GCC_HASCLASSVISIBILITY
+#if defined(__GNUC__)
+#  if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
+#    ifndef GCC_HASCLASSVISIBILITY
+#      define GCC_HASCLASSVISIBILITY
+#    endif
 #  endif
 #endif
 
@@ -432,6 +438,18 @@ SWIGEXPORT jint JNICALL Java_org_scilab_modules_commons_ScilabCommonsJNI_setRecu
 }
 
 
+SWIGEXPORT jint JNICALL Java_org_scilab_modules_commons_ScilabCommonsJNI_getStartProcessing(JNIEnv *jenv, jclass jcls) {
+  jint jresult = 0 ;
+  int result;
+  
+  (void)jenv;
+  (void)jcls;
+  result = (int)getStartProcessing();
+  jresult = (jint)result; 
+  return jresult;
+}
+
+
 #ifdef __cplusplus
 }
 #endif
index ac4e724..0f3c390 100644 (file)
@@ -11,7 +11,7 @@
 // along with this program.
 
 function x=mtlb(a)
-    if type(a)==13|type(a)==11 then
+    if type(a)==13 then
         x=a()
     else
         x=a
index 6f1cb46..2e4fee2 100644 (file)
@@ -25,7 +25,7 @@ function r=mtlb_exist(nam,wh)
                 r=3
             end
         elseif exists(nam)==1 then
-            if type(nam)==11|type(nam)==13 then
+            if type(nam)==13 then
                 r=2
             else
                 r=1
index 35c7c67..29977ab 100644 (file)
@@ -36,7 +36,6 @@
     <PRIMITIVE gatewayId="13" primitiveId="3" primitiveName="warning" />
     <PRIMITIVE gatewayId="13" primitiveId="4" primitiveName="argn" />
     <PRIMITIVE gatewayId="13" primitiveId="5" primitiveName="getvariablesonstack" />
-    <PRIMITIVE gatewayId="13" primitiveId="6" primitiveName="comp" />
     <PRIMITIVE gatewayId="13" primitiveId="7" primitiveName="getscilabmode" />
     <PRIMITIVE gatewayId="13" primitiveId="8" primitiveName="mode" />
     <PRIMITIVE gatewayId="13" primitiveId="9" primitiveName="type" />
@@ -77,7 +76,6 @@
     <PRIMITIVE gatewayId="13" primitiveId="44" primitiveName="getmodules" />
     <PRIMITIVE gatewayId="13" primitiveId="45" primitiveName="with_module" />
     <PRIMITIVE gatewayId="13" primitiveId="46" primitiveName="getdebuginfo" />
-    <PRIMITIVE gatewayId="13" primitiveId="47" primitiveName="readgateway" />
     <PRIMITIVE gatewayId="13" primitiveId="48" primitiveName="exit" />
     <PRIMITIVE gatewayId="13" primitiveId="49" primitiveName="oldEmptyBehaviour" />
 
index 1cdc3c5..ed8715b 100644 (file)
@@ -73,8 +73,6 @@ types::Function::ReturnValue sci_type(types::typed_list &in, int _iRetCount, typ
             type = sci_strings;
             break;
         case types::InternalType::ScilabMacroFile :
-            type = sci_u_function;
-            break;
         case types::InternalType::ScilabMacro :
             type = sci_c_function;
             break;
index b084976..a3ccdf3 100644 (file)
@@ -64,7 +64,7 @@ function Y = calculate_traj(g_r, g_t, g_V, g_Vdir, t)
     Y0(3) = g_r*sin(g_t*%pi/180);      // y
     Y0(4) = g_V*sin(g_Vdir*%pi/180);   // v_y
 
-    Y     = ode("root", Y0, t(1), t, 1d-10, 1.D-10, list(traj, blackhole), 5, blackholelim); //traj d'ecoulement
+    Y     = ode("roots", Y0, t(1), t, 1d-10, 1.D-10, list(traj, blackhole), 5, blackholelim); //traj d'ecoulement
 
 endfunction
 
index 952c818..ba29664 100644 (file)
@@ -47,7 +47,7 @@ function Y = calculate_traj(g_x, g_y, g_V, g_Vdir, t, gravity, slope)
     Y0(2) = g_V*cos(g_Vdir*%pi/180);//v_x
     Y0(3) = g_y;//y
     Y0(4) = g_V*sin(g_Vdir*%pi/180);//v_y
-    Y     = ode("root", Y0, t(1), t, 1d-10, 1.D-10, list(traj, SlantedCylinder), 4, cyllim);//traj d'ecoulement
+    Y     = ode("roots", Y0, t(1), t, 1d-10, 1.D-10, list(traj, SlantedCylinder), 4, cyllim);//traj d'ecoulement
 endfunction
 
 // draw_bille
index 7888161..9999e20 100644 (file)
@@ -54,7 +54,7 @@ function Y = calculate_traj(g_r, g_t, g_V, g_Vdir, t)
     Y0(2) = g_V*cos(g_Vdir*%pi/180);  // v_x
     Y0(3) = g_r*sin(g_t*%pi/180);     // y
     Y0(4) = g_V*sin(g_Vdir*%pi/180);  // v_z
-    Y     = ode("root", Y0, t(1), t, 1d-10, 1.D-10, list(traj, sphere), 1, sphlim);//traj d'ecoulement
+    Y     = ode("roots", Y0, t(1), t, 1d-10, 1.D-10, list(traj, sphere), 1, sphlim);//traj d'ecoulement
 endfunction
 
 
index f73491e..09fbcf7 100644 (file)
@@ -40,7 +40,7 @@ function demo_ode_chstiff()
     deff("[y]=Surf(t,x)","y=[x(1)-1.e-4;x(3)-1.e-2]");
 
     // First root
-    [y,rd,w,iw] = ode("root",[1;0;0],0,t,rtol,atol,chem,2,Surf);rd;
+    [y,rd,w,iw] = ode("roots",[1;0;0],0,t,rtol,atol,chem,2,Surf);rd;
 
     while rd<>[] then
 
@@ -52,7 +52,7 @@ function demo_ode_chstiff()
         plot2d("ln", rd(1), (diag([1 10000 1])*y(:,ny))',style=[-3,-3,-3]);
 
         // Next root
-        [y,rd,w,iw]=ode("root",[1;0;0],rd(1),t(k+1:nt),rtol,atol,chem,2,Surf,w,iw);
+        [y,rd,w,iw]=ode("roots",[1;0;0],rd(1),t(k+1:nt),rtol,atol,chem,2,Surf,w,iw);
     end
 
 endfunction
index 4b9734e..1f2ceac 100644 (file)
@@ -25,7 +25,7 @@
         <synopsis>
             y = ode(y0, t0, t, f)
             [y, w, iw] = ode([type,] y0, t0, t [,rtol [,atol]], f [,jac] [,w, iw])
-            [y, rd, w, iw] = ode("root", y0, t0, t [,rtol [,atol]], f [,jac],ng, g [,w,iw])
+            [y, rd, w, iw] = ode("roots", y0, t0, t [,rtol [,atol]], f [,jac],ng, g [,w,iw])
             y = ode("discrete", y0, k0, kvect, f)
         </synopsis>
     </refsynopsisdiv>
@@ -402,13 +402,13 @@ void fex(int *n,double *t,double *y,int *ml,int *mu,double *J,int *nrpd,)
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>"root":</term>
+                <term>"roots":</term>
                 <listitem>
                     <para>
                         ODE solver with rootfinding capabilities. The
                         <literal>lsodar</literal> solver of package ODEPACK is used. It is a
                         variant of the <literal>lsoda</literal> solver where it finds the
-                        roots of a given vector function. See help on <link linkend="ode_root">ode_root</link> for more
+                        roots of a given vector function. See help on <link linkend="ode_roots">ode_roots</link> for more
                         details.
                     </para>
                 </listitem>
@@ -567,7 +567,7 @@ y = ode(y0,t0,t,'myode');
                 <link linkend="ode_optional_output">ode_optional_output</link>
             </member>
             <member>
-                <link linkend="ode_root">ode_root</link>
+                <link linkend="ode_roots">ode_roots</link>
             </member>
             <member>
                 <link linkend="ode_discrete">ode_discrete</link>
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="ode_root" xml:lang="en">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="ode_roots" xml:lang="en">
     <refnamediv>
-        <refname>ode_root</refname>
-        <refpurpose>ordinary differential equation solver with root
+        <refname>ode_roots</refname>
+        <refpurpose>ordinary differential equation solver with roots
             finding
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Syntax</title>
-        <synopsis>[y, rd, w, iw] = ode("root", y0, t0, t [,rtol [,atol]], f [,jac], ng, g [,w,iw])</synopsis>
+        <synopsis>[y, rd, w, iw] = ode("roots", y0, t0, t [,rtol [,atol]], f [,jac], ng, g [,w,iw])</synopsis>
     </refsynopsisdiv>
     <refsection role="parameters">
         <title>Arguments</title>
@@ -95,7 +95,8 @@
                 <term>w, iw</term>
                 <listitem>
                     <para>vectors of real numbers.
-                    See <link linkend="ode_optional_output">ode() optional output</link></para>
+                        See <link linkend="ode_optional_output">ode() optional output</link>
+                    </para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection role="description">
         <title>Description</title>
         <para>
-            With this syntax (first argument equal to <literal>"root"</literal>)
+            With this syntax (first argument equal to <literal>"roots"</literal>)
             <literal>ode</literal> computes the solution of the differential equation
             <literal>dy/dt=f(t,y)</literal> until the state <literal>y(t)</literal>
             crosses the surface <literal>g(t,y)=0</literal>.
index dc86497..b86a0f6 100644 (file)
@@ -8,7 +8,7 @@
         <title>Syntaxe</title>
         <synopsis>y=ode(y0,t0,t,f)
             [y,w,iw]=ode([type],y0,t0,t [,rtol [,atol]],f [,jac] [,w,iw])
-            [y,rd,w,iw]=ode("root",y0,t0,t [,rtol [,atol]],f [,jac],ng,g [,w,iw])
+            [y,rd,w,iw]=ode("roots",y0,t0,t [,rtol [,atol]],f [,jac],ng,g [,w,iw])
             y=ode("discrete",y0,k0,kvect,f)
         </synopsis>
     </refsynopsisdiv>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>"root":</term>
+                <term>"roots":</term>
                 <listitem>
                     <para>Solveur d'EDO avec recherche de racines. Le solveur
                         <literal>lsodar</literal> du package ODEPACK est utilisé. C'est une
                         variante de <literal>lsoda</literal> permettant la recherche d'une
-                        racine d'une fonction vectorielle donnée. Voir <link linkend="ode_root">ode_root</link> pour plus de
+                        racine d'une fonction vectorielle donnée. Voir <link linkend="ode_roots">ode_roots</link> pour plus de
                         détails.
                     </para>
                 </listitem>
@@ -439,7 +439,7 @@ ode("stiff",[0;1],0,1,f,Jacobian)
                 <link linkend="ode_optional_output">ode_optional_output</link>
             </member>
             <member>
-                <link linkend="ode_root">ode_root</link>
+                <link linkend="ode_roots">ode_roots</link>
             </member>
             <member>
                 <link linkend="ode_discrete">ode_discrete</link>
index 67322bf..de014be 100644 (file)
@@ -9,7 +9,7 @@
         <synopsis>
             y = ode(y0, t0, t, f)
             [y, w, iw] = ode([type,] y0, t0, t [,rtol [,atol]], f [,jac] [,w, iw])
-            [y, rd, w, iw] = ode("root", y0, t0, t [,rtol [,atol]], f [,jac],ng, g [,w,iw])
+            [y, rd, w, iw] = ode("roots", y0, t0, t [,rtol [,atol]], f [,jac],ng, g [,w,iw])
             y = ode("discrete", y0, k0, kvect, f)
         </synopsis>
     </refsynopsisdiv>
@@ -396,14 +396,14 @@ void fex(int *n,double *t,double *y,int *ml,int *mu,double *J,int *nrpd,)
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>"root":</term>
+                <term>"roots":</term>
                 <listitem>
                     <para>
                         解を得る機能を有するODE ソルバ. ODEPACKパッケージの
                         <literal>lsodar</literal> ソルバが使用されます.
                         使用されているのは<literal>lsoda</literal> ソルバを改変したもので,
                         指定したベクトル関数の根を見つけることができます.
-                        詳細は <link linkend="ode_root">ode_root</link> のヘルプを参照してください.
+                        詳細は <link linkend="ode_roots">ode_roots</link> のヘルプを参照してください.
                     </para>
                 </listitem>
             </varlistentry>
@@ -563,7 +563,7 @@ y = ode(y0,t0,t,'myode');
                 <link linkend="ode_optional_output">ode_optional_output</link>
             </member>
             <member>
-                <link linkend="ode_root">ode_root</link>
+                <link linkend="ode_roots">ode_roots</link>
             </member>
             <member>
                 <link linkend="ode_discrete">ode_discrete</link>
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="ode_root" xml:lang="ja">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="ode_roots" xml:lang="ja">
     <refnamediv>
-        <refname>ode_root</refname>
+        <refname>ode_roots</refname>
         <refpurpose>求解付きの常微分方程式ソルバ</refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>呼び出し手順</title>
         <synopsis>
-            [y, rd, w, iw] = ode("root", y0, t0, t [,rtol [,atol]], f [,jac], ng, g [,w,iw])
+            [y, rd, w, iw] = ode("roots", y0, t0, t [,rtol [,atol]], f [,jac], ng, g [,w,iw])
         </synopsis>
     </refsynopsisdiv>
     <refsection role="parameters">
@@ -94,7 +94,8 @@
                 <term>w, iw</term>
                 <listitem>
                     <para>実数ベクトル.(入力/出力).
-                    See <link linkend="ode_optional_output">ode() optional output</link></para>
+                        See <link linkend="ode_optional_output">ode() optional output</link>
+                    </para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection role="description">
         <title>説明</title>
         <para>
-            この構文により (最初の引数が<literal>"root"</literal>)
+            この構文により (最初の引数が<literal>"roots"</literal>)
             <literal>ode</literal> は, 状態量<literal>y(t)</literal>が
             面<literal>g(t,y)=0</literal>と交差するまで
             微分方程式<literal>dy/dt=f(t,y)</literal>
@@ -182,4 +183,4 @@ deff("[z]=g(t,y)","z=y-[2;2;33]")
             </member>
         </simplelist>
     </refsection>
-</refentry>
\ No newline at end of file
+</refentry>
index ac1fee6..8392491 100644 (file)
@@ -23,7 +23,7 @@
         <title>Seqüência de Chamamento</title>
         <synopsis>y = ode(y0,t0,t,f)
             [y,w,iw] = ode([type],y0,t0,t [,rtol [,atol]],f [,jac] [,w,iw])
-            [y,rd,w,iw] = ode("root",y0,t0,t [,rtol [,atol]],f [,jac],ng,g [,w,iw])
+            [y,rd,w,iw] = ode("roots",y0,t0,t [,rtol [,atol]],f [,jac],ng,g [,w,iw])
             y = ode("discrete",y0,k0,kvect,f)
         </synopsis>
     </refsynopsisdiv>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>"root":</term>
+                <term>"roots":</term>
                 <listitem>
                     <para>Solucionador de EDOs com capacidade de encontrar raízes. O
                         solucionador <literal>lsodar</literal> do pacote ODEPACK é
                         utilizado. É uma variante do solucionador <literal>lsoda</literal>
                         onde se acha raízes de uma dada função vetorial. Ver ajuda em
-                        <link linkend="ode_root">ode_root</link> para mais detalhes.
+                        <link linkend="ode_roots">ode_roots</link> para mais detalhes.
                     </para>
                 </listitem>
             </varlistentry>
@@ -448,7 +448,7 @@ ode("stiff",[0;1],0,1,f,Jacobian)
                 <link linkend="ode_optional_output">ode_optional_output</link>
             </member>
             <member>
-                <link linkend="ode_root">ode_root</link>
+                <link linkend="ode_roots">ode_roots</link>
             </member>
             <member>
                 <link linkend="ode_discrete">ode_discrete</link>
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="ode_root" xml:lang="pt">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="ode_roots" xml:lang="pt">
     <refnamediv>
-        <refname>ode_root</refname>
+        <refname>ode_roots</refname>
         <refpurpose>solucionador de EDOs com busca de raízes</refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Seqüência de Chamamento</title>
-        <synopsis>[y,rd,w,iw]=ode("root",y0,t0,t [,rtol [,atol]],f [,jac],ng,g [,w,iw])</synopsis>
+        <synopsis>[y,rd,w,iw]=ode("roots",y0,t0,t [,rtol [,atol]],f [,jac],ng,g [,w,iw])</synopsis>
     </refsynopsisdiv>
     <refsection role="parameters">
         <title>Parâmemtros</title>
@@ -94,7 +94,7 @@
                 <term>w, iw</term>
                 <listitem>
                     <para>vetores de reais.
-                    See <link linkend="ode_optional_output">ode() optional output</link>
+                        See <link linkend="ode_optional_output">ode() optional output</link>
                     </para>
                 </listitem>
             </varlistentry>
     <refsection role="description">
         <title>Descrição</title>
         <para>Com esta sintaxe (primeiro argumento igual a
-            <literal>"root"</literal>) <literal>ode</literal> computa a solução da EDO
+            <literal>"roots"</literal>) <literal>ode</literal> computa a solução da EDO
             <literal>dy/dt=f(t,y)</literal> até que o estado <literal>y(t)</literal>
             cruze a superfície <literal>g(t,y)=0</literal>.
         </para>
index f674d32..399f2d7 100644 (file)
@@ -27,7 +27,7 @@
         <synopsis>
             y = ode(y0, t0, t, f)
             [y, w, iw] = ode([type,]y0, t0, t [,rtol [,atol]],f [,jac] [,w, iw])
-            [y, rd, w, iw] = ode("root", y0, t0, t [,rtol [,atol]], f [,jac], ng, g [, w, iw])
+            [y, rd, w, iw] = ode("roots", y0, t0, t [,rtol [,atol]], f [,jac], ng, g [, w, iw])
             y = ode("discrete", y0, k0, kvect, f)
         </synopsis>
     </refsynopsisdiv>
@@ -412,14 +412,14 @@ void fex(int *n,double *t,double *y,int *ml,int *mu,double *J,int *nrpd,)
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>"root":</term>
+                <term>"roots":</term>
                 <listitem>
                     <para>
                         Программа решения ОДУ с возможностью нахождения корней.
                         Используется программа решения <literal>lsodar</literal> из пакета
                         ODEPACK. Она является вариантом программы
                         решения <literal>lsoda</literal>, где она ищет корни заданной
-                        векторной функции. См. справку по <link linkend="ode_root">ode_root</link>.
+                        векторной функции. См. справку по <link linkend="ode_roots">ode_roots</link>.
                     </para>
                 </listitem>
             </varlistentry>
@@ -566,7 +566,7 @@ y = ode(y0,t0,t,'myode');
                 <link linkend="ode_optional_output">ode_optional_output</link>
             </member>
             <member>
-                <link linkend="ode_root">ode_root</link>
+                <link linkend="ode_roots">ode_roots</link>
             </member>
             <member>
                 <link linkend="ode_discrete">ode_discrete</link>
  * along with this program.
 *
 -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="ode_root" xml:lang="ru">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="ode_roots" xml:lang="ru">
     <refnamediv>
-        <refname>ode_root</refname>
+        <refname>ode_roots</refname>
         <refpurpose>
             программа решения обыкновенных дифференциальных уравнений с поиском корней
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Синтаксис</title>
-        <synopsis>[y, rd, w, iw] = ode("root", y0, t0, t [,rtol [,atol]], f [,jac], ng, g [,w, iw])</synopsis>
+        <synopsis>[y, rd, w, iw] = ode("roots", y0, t0, t [,rtol [,atol]], f [,jac], ng, g [,w, iw])</synopsis>
     </refsynopsisdiv>
     <refsection role="parameters">
         <title>Аргументы</title>
     <refsection role="description">
         <title>Описание</title>
         <para>
-            С таким синтаксисом (первый аргумент равен <literal>"root"</literal>) <literal>ode</literal> вычисляет решение дифференциального уравнения  <literal>dy/dt=f(t,y)</literal> до тех пор, пока состояние <literal>y(t)</literal> не пересечёт поверхность <literal>g(t,y)=0</literal>.
+            С таким синтаксисом (первый аргумент равен <literal>"roots"</literal>) <literal>ode</literal> вычисляет решение дифференциального уравнения  <literal>dy/dt=f(t,y)</literal> до тех пор, пока состояние <literal>y(t)</literal> не пересечёт поверхность <literal>g(t,y)=0</literal>.
         </para>
         <para>
             <literal>g</literal> должно задавать уравнение поверхности. Это внешняя функция, то есть функция с определённым синтаксисом или имя процедуры Fortran или функции C (символьная строка) с определённой последовательностью вызова или список.
index 218ee9f..6c38ae8 100644 (file)
@@ -51,14 +51,10 @@ function [r, err] = intc(a, b, f, abserr, relerr)
         end
     end
 
-    if and(type(f) <> [11 13 130]) then
+    if and(type(f) <> [13 130]) then
         error(msprintf(_("%s: Wrong type for input argument #%d: Scilab function expected.\n"), "intc", 3));
     end
 
-    // Compile f if necessary:
-    if type(f) == 11 then
-        comp(f);
-    end
     // Define two functions which define the real part and
     // imaginary part of f(g(t))*g'(t) where g(t) is a
     // parametrization of the line a-b.
index a2fb92e..0942d29 100644 (file)
@@ -28,9 +28,6 @@ function r=intl(a,b,z0,r,f,ea,er)
         ea=1.d-12;
     end
 
-    if type(f)==11 then
-        comp(f)
-    end;
     //Define two functions for the real part and
     //imaginary part of f(g(t))*g'(t) where g(t) is a
     //parametrization of the circle.
@@ -26,14 +26,14 @@ function [J, H] = numderivative(varargin)
     //
     // Get input arguments
     __numderivative_f__ = varargin(1)
-    if and(type(__numderivative_f__) <> [11 13 15 130]) then
+    if and(type(__numderivative_f__) <> [13 15 130]) then
         // Must be a function (uncompiled or compiled) or a list
         error(msprintf(gettext("%s: Wrong type for argument #%d: Function or list expected.\n"), "numderivative", 1));
     end
     if type(__numderivative_f__) == 15 then
         // List case
         // Check that the first element in the list is a function
-        if and(type(__numderivative_f__(1)) <> [11 13]) then
+        if type(__numderivative_f__(1)) <> 13 then
             error(msprintf(gettext("%s: Wrong type for argument #%d: Function expected in first element of list.\n"), "numderivative", 1));
         end
         if length(__numderivative_f__) < 2 then
@@ -341,7 +341,7 @@ function y = numderivative_evalf(__numderivative_f__, x)
         // List case
         __numderivative_fun__ = __numderivative_f__(1);
         instr = "y = __numderivative_fun__(x, __numderivative_f__(2:$))";
-    elseif or(type(__numderivative_f__) == [11 13 130]) then
+    elseif or(type(__numderivative_f__) == [13 130]) then
         // Function case
         instr = "y = __numderivative_f__(x)";
     else
index 2efc32a..f29f511 100644 (file)
@@ -117,7 +117,7 @@ types::Function::ReturnValue sci_ode(types::typed_list &in, int _iRetCount, type
         {
             meth = 2;
         }
-        else if (wcscmp(wcsType, L"root") == 0)
+        else if (wcscmp(wcsType, L"roots") == 0)
         {
             meth = 3;
         }
@@ -139,7 +139,7 @@ types::Function::ReturnValue sci_ode(types::typed_list &in, int _iRetCount, type
         }
         else
         {
-            Scierror(999, _("%s: Wrong value for input argument #%d: It must be one of the following strings: adams, stiff, rk, rkf, fix, root or discrete.\n"), "ode", 1);
+            Scierror(999, _("%s: Wrong value for input argument #%d: It must be one of the following strings: adams, stiff, rk, rkf, fix, roots or discrete.\n"), "ode", 1);
             return types::Function::Error;
         }
     }
index 3bd121f..c1e5137 100644 (file)
@@ -25,7 +25,7 @@ function head_comments(name, %paths)
         error(msprintf(gettext("%s: Undefined variable %s.\n"),"head_comments",name )),
     end
 
-    if and(type(var) <> [11 13]) then
+    if type(var) <> 13 then
         error(msprintf(gettext("%s: Wrong value for input argument #%d: Name of a Scilab function expected.\n"),"head_comments",1))
     end
     t = macr2tree(var);
index 308ada6..58a5844 100644 (file)
@@ -51,8 +51,20 @@ types::Function::ReturnValue sci_whereis(types::typed_list &in, int _iRetCount,
             return types::Function::Error;
         }
 
+        std::wstring sym(pS->get()[0]);
+        types::InternalType* pIT = symbol::Context::getInstance()->get(symbol::Symbol(sym));
+        if (pIT)
+        {
+            switch (pIT->getType())
+            {
+                case types::InternalType::ScilabFunction:
+                    out.push_back(new types::String(pIT->getAs<types::Callable>()->getModule().c_str()));
+                    return types::Function::OK;
+            }
+        }
+
         std::list<std::wstring> lst;
-        int size = symbol::Context::getInstance()->getWhereIs(lst, pS->get(0));
+        int size = symbol::Context::getInstance()->getWhereIs(lst, pS->get()[0]);
         if (lst.empty())
         {
             out.push_back(types::Double::Empty());
@@ -70,7 +82,6 @@ types::Function::ReturnValue sci_whereis(types::typed_list &in, int _iRetCount,
     }
     else
     {
-        std::wstring stModule;
         switch (in[0]->getType())
         {
             case types::InternalType::ScilabFunction:
diff --git a/scilab/modules/functions/tests/nonreg_tests/bug_14992.tst b/scilab/modules/functions/tests/nonreg_tests/bug_14992.tst
new file mode 100644 (file)
index 0000000..8d249f0
--- /dev/null
@@ -0,0 +1,22 @@
+// =============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2017 - Scilab Enterprises - Antoine ELIAS
+//
+//  This file is distributed under the same license as the Scilab package.
+// =============================================================================
+
+// <-- Non-regression test for bug 14992 -->
+
+// <-- CLI SHELL MODE -->
+// <-- NO CHECK REF -->
+
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/14992
+
+// <-- Short Description -->
+// readgateway function was removeed, use whereis instead
+
+assert_checkequal(whereis("cos"), "elementary_functions");
+assert_checkequal(whereis(cos), "elementary_functions");
+assert_checkequal(whereis("acosd"), "elementary_functionslib");
+assert_checkequal(whereis(acosd), "elementary_functionslib");
diff --git a/scilab/modules/functions/tests/unit_tests/whereis.dia.ref b/scilab/modules/functions/tests/unit_tests/whereis.dia.ref
deleted file mode 100644 (file)
index 33a2f4b..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-//<-- CLI SHELL MODE -->
-// =============================================================================
-// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
-// Copyright (C) 2008 - INRIA
-//
-//  This file is distributed under the same license as the Scilab package.
-// =============================================================================
-//whereis
-assert_checkequal(whereis("sci2exp"), "stringlib");
-assert_checkequal(whereis("aaa"), []);
-assert_checkequal(whereis("with_tk"), "corelib");
-a = corelib;
-assert_checkequal(whereis("with_tk"), ["a" ; "corelib"]);
index 189d0f2..15e78d0 100644 (file)
@@ -6,13 +6,24 @@
 //  This file is distributed under the same license as the Scilab package.
 // =============================================================================
 
+// <-- CLI SHELL MODE -->
+// <-- NO CHECK REF -->
+
 //whereis
 
-assert_checkequal(whereis("sci2exp"), "stringlib");
 assert_checkequal(whereis("aaa"), []);
 
+//macros
+assert_checkequal(whereis("sci2exp"), "stringlib");
+assert_checkequal(whereis(sci2exp), "stringlib");
 assert_checkequal(whereis("with_tk"), "corelib");
+assert_checkequal(whereis(with_tk), "corelib");
+
 a = corelib;
 assert_checkequal(whereis("with_tk"), ["a" ; "corelib"]);
 
-
+//builtin
+assert_checkequal(whereis("exit"), "core");
+assert_checkequal(whereis(exit), "core");
+assert_checkequal(whereis("length"), "string");
+assert_checkequal(whereis(length), "string");
index 2da47e0..0c67849 100644 (file)
@@ -4,6 +4,11 @@
 //
 // This file is released under the 3-clause BSD license. See COPYING-BSD.
 
+function str=mydisplay(h)
+    pt = h.data;
+    str = msprintf('The point\n (%0.2g,%0.2g,%0.2g)', pt(1), pt(2), pt(3))
+endfunction
+
 function demo_geom3d()
 
     my_handle             = scf(100001);
@@ -44,10 +49,6 @@ function demo_geom3d()
     param3d(0, 0, 0);
     e = gce();
     dt = datatipCreate(e, 0);
-    function str=mydisplay(h)
-        pt = h.data;
-        str = msprintf('The point\n (%0.2g,%0.2g,%0.2g)', pt(1), pt(2), pt(3))
-    endfunction
     datatipSetDisplay(dt,"mydisplay")
 
     a = gca();
index bd6d33f..b6f95d4 100644 (file)
@@ -84,6 +84,7 @@ function []=PlotCmplxFunc(R,e,TypeDomain,TypeCut,n,StrFunc,theta,alpha,DomReal)
 
     current_figure_hdl = scf(100001);
     clf(current_figure_hdl,"reset");
+    current_figure_hdl.rotation_style = "multiple";
 
     drawlater();
 
index c65a15f..d99c676 100644 (file)
@@ -12,6 +12,7 @@ subdemolist = ["log"       ,"demo_log.dem.sce"    ; ..
 "sin"       ,"demo_sin.dem.sce"    ; ..
 "asin"      ,"demo_asin.dem.sce"   ; ..
 "cos"       ,"demo_cos.dem.sce"    ; ..
+"acos"      ,"demo_acos.dem.sce"  ; ..
 "sinh"      ,"demo_sinh.dem.sce"   ; ..
 "asinh"     ,"demo_asinh.dem.sce"  ; ..
 "cosh"      ,"demo_cosh.dem.sce"   ; ..
index c61549e..f6e90ea 100644 (file)
@@ -13,9 +13,6 @@ function demo_acos()
     theta = -110;
     alpha = 75;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(2,%eps,"Square","Ox",41,"acos",theta,alpha,[-1,1]);
     demo_viewCode("demo_acos.dem.sce");
 
index 6c64f41..10df504 100644 (file)
@@ -15,9 +15,6 @@ function demo_acosh()
     theta = -110;
     alpha = 75;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,e,"Square","Ox",41,"acosh",theta,alpha,[1,R]);
     demo_viewCode("demo_acosh.dem.sce");
 
index b24dd69..1d651dd 100644 (file)
@@ -13,9 +13,6 @@ function demo_asin()
     theta = -110;
     alpha = 75;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(2,%eps,"Square","Ox",41,"asin",theta,alpha,[-1,1]);
     demo_viewCode("demo_asin.dem.sce");
 
index 89517aa..9330caa 100644 (file)
@@ -15,9 +15,6 @@ function demo_asinh()
     theta = -110;
     alpha = 75;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,e,"Square","Oy",41,"asinh",theta,alpha,[-R,R]);
     demo_viewCode("demo_asinh.dem.sce");
 
index 9e54dea..0bf3d3f 100644 (file)
@@ -14,9 +14,6 @@ function demo_atan()
     theta = -110;
     alpha = 75;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,0.001,"Square","Oy",41,"atan",theta,alpha,[-R,R]);
     demo_viewCode("demo_atan.dem.sce");
 
index 65cd55d..1b5ebf4 100644 (file)
@@ -15,9 +15,6 @@ function demo_atanh()
     theta = -110;
     alpha = 75;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,e,"Square","Ox",41,"atanh",theta,alpha,[-0.99,0.99]);
     demo_viewCode("demo_atanh.dem.sce");
 
index 92dda89..25537ea 100644 (file)
@@ -14,9 +14,6 @@ function demo_cos()
     theta = 18;
     alpha = 43;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,0,"Disk","Ox",[40 20],"cos",theta,alpha,[-R,R]);
     demo_viewCode("demo_cos.dem.sce");
 
index e2fdfb8..6aa1ab4 100644 (file)
@@ -15,9 +15,6 @@ function demo_cosh()
     theta = -130;
     alpha = 56;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,e,"Disk","Ox",[40 20],"cosh",theta,alpha,[-R,R]);
     demo_viewCode("demo_cosh.dem.sce");
 endfunction
index 9fe93a1..38e5581 100644 (file)
@@ -39,6 +39,7 @@ function demo_custom()
     "background", -2, ...
     "figure_position", [0 0], ...
     "axes_size", [axes_w axes_h], ...
+    "rotation_style", "multiple", ...
     "figure_name", _("Customize your complex function"));
 
     // The plot will be in the right 2/3 of the figure
index ea58d90..f4485f8 100644 (file)
@@ -15,9 +15,6 @@ function demo_exp()
     theta = -130;
     alpha = 73;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,0,"Disk","Ox",[40 20],"exp",theta,alpha,[-R,R]);
     demo_viewCode("demo_exp.dem.sce");
 
index cadc42e..5b36ba5 100644 (file)
@@ -16,9 +16,6 @@ function demo_log()
     theta = 30;
     alpha = 60;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,e,"Disk","Ox",[40 20],"log",theta,alpha,[e,R]);
     demo_viewCode("demo_log.dem.sce");
 
index 3bbdbe3..fff545a 100644 (file)
@@ -16,9 +16,6 @@ function demo_sin()
     alpha = 73;
     e     = 0.001;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,e,"Disk","Ox",[40 20],"sin",theta,alpha,[-R,R]);
     demo_viewCode("demo_sin.dem.sce");
 
index 754790f..f95b1c5 100644 (file)
@@ -16,9 +16,6 @@ function demo_sinh()
     theta = -148;
     alpha = 60;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,0,"Disk","Ox",[40 20],"sinh",theta,alpha,[-R,R]);
     demo_viewCode("demo_sinh.dem.sce");
 
index d3bb7ff..214cbb7 100644 (file)
@@ -14,9 +14,6 @@ function demo_tan()
     theta = -130;
     alpha = 73;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,0,"Square","Ox",41,"tan",theta,alpha,[-R,R]);
     demo_viewCode("demo_tan.dem.sce");
 
index 403f0c8..92e89f2 100644 (file)
@@ -16,9 +16,6 @@ function demo_tanh()
     theta = -130;
     alpha = 73;
 
-    my_handle = scf(100001);
-    clf(my_handle,"reset");
-
     PlotCmplxFunc(R,e,"Square","Ox",41,"tanh",theta,alpha,[-R,R]);
     demo_viewCode("demo_tanh.dem.sce");
 
index 025b1be..4de9da3 100644 (file)
@@ -39,7 +39,8 @@
                 <term>numFig</term>
                 <listitem>
                     <para>
-                        Vector of indices of figures to clear or reset (<literal>.figure_id</literal> values). By default, the current figure is targeted.
+                        Vector of indices of figures to clear or reset (<literal>.figure_id</literal>
+                        values). By default, the current figure is targeted.
                     </para>
                 </listitem>
             </varlistentry>
                 <term>figFrameHandle</term>
                 <listitem>
                     <para>
-                        Vector of handles of figures or frame uicontrol to clear or reset. Mixing figures and frames is possible. By default, the current figure is targeted.
+                        Vector of handles of figures or frame uicontrol to clear or reset. Mixing
+                        figures and frames is possible. By default, the current figure is targeted.
                     </para>
                 </listitem>
             </varlistentry>
             <varlistentry>
                 <term>"reset"</term>
                 <listitem>
-                    Provide this option keyword to reset properties of chosen figures to their default values, in addition to deleting the figures contents.
+                    Provide this option keyword to reset properties of chosen figures to their
+                    default values, in addition to deleting the figures contents.
                 </listitem>
             </varlistentry>
         </variablelist>
@@ -62,8 +65,9 @@
     <refsection>
         <title>Description</title>
         <para>
-            The <literal>clf</literal> command can be used to delete all children of a given graphic window, hence clearing it.
-            If the <literal>"reset"</literal> keyword is used, in addition most of the figure properties are reset to their default values.
+            The <literal>clf</literal> command can be used to delete all children of a given
+            graphic window, hence clearing it. If the <literal>"reset"</literal> keyword is used,
+            in addition most of the figure properties are reset to their default values.
             The detailled changes are now described:
         </para>
         <para>
                     <para>
                     <itemizedlist>
                         <listitem>
-                                All visible and invisible axes of each targeted figure or frame are deleted.
+                            All visible and invisible axes of each targeted figure or frame are
+                            deleted.
                         </listitem>
                         <listitem>
-                                All menus whose figure.children handles are not hidden are deleted. It is possible to protect them with <literal>set(get(0), "ShowHiddenHandles", "off")</literal>. This then applies to all opened figures and forthcoming ones. See <link linkend="console_properties">ShowHiddenHandles</link>.
+                            All menus whose figure.children handles are not hidden are deleted.
+                            It is possible to protect them with
+                            <literal>set(get(0), "ShowHiddenHandles", "off")</literal>.
+                            This then applies to all opened figures and forthcoming ones.
+                            See <link linkend="console_properties">ShowHiddenHandles</link>.
                         </listitem>
                         <listitem>
-                                The message in the status bar of each figure is cleared.
+                            The message in the status bar of each figure is cleared.
                         </listitem>
                         <listitem>
-                                The event handler of each figure is disabled, but their references are kept .
+                            The event handler of each figure is disabled, but their references are kept .
                         </listitem>
                     </itemizedlist>
                     </para>
                     <para>
-                        Values of all <link linkend="figure_properties">figures properties</link> are unchanged, except <literal>.info_message=""</literal> and <literal>.event_handler_enable="off"</literal> that are forced.
+                        Values of all <link linkend="figure_properties">figures properties</link>
+                        are unchanged, except <literal>.info_message=""</literal> and
+                        <literal>.event_handler_enable="off"</literal> that are forced.
                     </para>
                 </listitem>
                 <listitem>
                     <para>
-                        <literal>"reset"</literal>: in addition to default actions, <literal>"reset"</literal> resets most of figures properties to their default values, as specified by <function>gdf()</function>. This applies only to figures.
+                        <literal>"reset"</literal>: in addition to default actions,
+                        <literal>"reset"</literal> resets most of figures properties to their
+                        default values, as specified by <function>gdf()</function>.
+                        This applies only to figures.
                     </para>
                     <warning>
                         <itemizedlist>
                             <listitem>
-                                <emphasis role="italic">Some properties are never reset</emphasis>: <literal>.toolbar</literal>,  <literal>.menubar</literal>, <literal>.layout</literal>,  <literal>.layout_options</literal>, and <literal>.dockable</literal> can be set only once and so are never resettable.
+                                <emphasis role="italic">Some properties are never reset</emphasis>:
+                                The figure's number <literal>.figure_id</literal> is kept as is.
+                                <literal>.toolbar</literal>,  <literal>.menubar</literal>,
+                                <literal>.layout</literal>,  <literal>.layout_options</literal>,
+                                and <literal>.dockable</literal> can be set only once and so are
+                                never resettable.
                             </listitem>
                             <listitem>
-                                <emphasis role="italic">For docked figures</emphasis>: <literal>.figure_position</literal>, <literal>.figure_size</literal>, and <literal>.axes_size</literal> are unchanged if the parent figure is docked to the Scilab's desktop or to another Scilab interface. Changing their value would change the position or size of the whole block of docked interfaces, not only the targeted figure.
+                                <emphasis role="italic">For docked figures</emphasis>:
+                                <literal>.figure_position</literal>, <literal>.figure_size</literal>,
+                                and <literal>.axes_size</literal> are unchanged if the parent figure
+                                is docked to the Scilab's desktop or to another Scilab interface.
+                                Changing their value would change the position or size of the whole
+                                block of docked interfaces, not only the targeted figure.
                             </listitem>
                         </itemizedlist>
                     </warning>
             <title>Clearing specific parts of a figure</title>
             <itemizedlist>
                 <listitem>
-                    <literal>xname("")</literal> or <literal>gcf().name = ""</literal> clears the name of the window, displayed at its very top left corner.
+                    <literal>xname("")</literal> or <literal>gcf().name = ""</literal> clears the
+                    name of the window, displayed at its very top left corner.
                 </listitem>
                 <listitem>
-                    <literal>xinfo("")</literal> or <literal>gcf().info_message = ""</literal> clears the message displayed in the status bar of the current figure.
+                    <literal>xinfo("")</literal> or <literal>gcf().info_message = ""</literal>
+                    clears the message displayed in the status bar of the current figure.
                 </listitem>
                 <listitem>
-                    <literal>delete(gca())</literal> deletes the current axes in the current window. All other components of the window are kept: other axes (if any), menus, interactive components, figure properties, etc.
+                    <literal>delete(gca())</literal> deletes the current axes in the current window.
+                    All other components of the window are kept: other axes (if any), menus,
+                    interactive components, figure properties, etc.
                 </listitem>
                 <listitem>
-                    Deleting only all axes of a figure may be done with <literal>c=gcf().children; delete(c(c.type=="Axes"))</literal>. This keeps all its other components: menus, interactive components, etc.
+                    Deleting only all axes of a figure may be done with
+                    <literal>c=gcf().children; delete(c(c.type=="Axes"))</literal>. This keeps all
+                    its other components: menus, interactive components, etc.
                 </listitem>
                 <listitem>
-                    Deleting only menus: <literal>c=gcf().children; delete(c(c.type=="uimenu"))</literal>. This assumes that <literal>get(get(0), "ShowHiddenHandles")</literal> is <literal>"on"</literal>.
+                    Deleting only menus: <literal>c=gcf().children; delete(c(c.type=="uimenu"))</literal>.
+                    This assumes that <literal>get(get(0), "ShowHiddenHandles")</literal> is
+                    <literal>"on"</literal>.
                 </listitem>
             </itemizedlist>
         </refsect2>
                     <literal>clf</literal> now clears frames as well.
                 </revremark>
             </revision>
+            <revision>
+                <revnumber>6.0.0</revnumber>
+                <revremark>
+                    <literal>clf('reset')</literal> no longer resizes nor moves docked figures.
+                </revremark>
+            </revision>
         </revhistory>
     </refsection>
 </refentry>
index 1589b86..720694d 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) ENPC - Jean-Philippe Chancelier
+ * Copyright (C) 2017 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns3="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"  xml:id="xget" xml:lang="en">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+    xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns3="http://www.w3.org/1999/xhtml"
+    xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
+    xmlns:scilab="http://www.scilab.org"  xml:id="xget" xml:lang="en">
     <refnamediv>
         <refname>xget</refname>
         <refpurpose>
-            get current values of the graphics context. <emphasis role="bold">This function is obsolete.</emphasis>
+            gets current values of the graphics context. <emphasis role="bold">This function is obsolete.</emphasis>
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Syntax</title>
         <synopsis>
-            [x1] = xget(str,[flag])
-            xget()
+            value = xget(query)
         </synopsis>
     </refsynopsisdiv>
     <refsection>
-        <title>Arguments</title>
-        <variablelist>
-            <varlistentry>
-                <term>str</term>
-                <listitem>
-                    <para>string.</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>flag</term>
-                <listitem>
-                    <para>optional. Set to 1 gives a verbose mode.</para>
-                </listitem>
-            </varlistentry>
-        </variablelist>
-    </refsection>
-    <refsection>
         <title>Description</title>
+        <warning>
+            <emphasis role="bold">This function is obsolete</emphasis>. Use the
+            <link linkend="graphics_entities">graphics properties</link> of objects instead.
+        </warning>
         <para>
-            <warning>
-                This function is obsolete.
-            </warning>
-            Use the Scilab graphic objects representation instead (see the <link
-            linkend="set">set</link> and <link linkend="get">get</link>
-            functions as well as the <link linkend="graphics_entities">graphics
-                entities
-            </link>
-            help page).
-        </para>
-        <para>
-            This function is used to get values from the graphics context on the
-            topic specified by the string <varname>str</varname>. When called
-            with no argument, a choice menu is created showing the current
-            values and changes can be performed through toggle buttons.
+            This function is used to get values from the graphics context on the topic specified
+            by the string <varname>query</varname>.
         </para>
         <variablelist>
             <varlistentry>
-                <term>str = xget("auto clear")</term>
-                <listitem>
-                    <para>
-                        Get the auto clear status (<literal>"on"</literal> or
-                        <literal>"off"</literal>).
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>color = xget("background")</term>
-                <listitem>
-                    <para>
-                        Get the background color of the current
-                        <literal>Axes</literal> object. The result is a colormap
-                        index corresponding to the color.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>rect = xget("clipping")</term>
-                <listitem>
-                    <para>
-                        Get the clipping zone as a rectangle <literal>rect =
-                            [x,y,w,h]
-                        </literal>
-                        (Upper-Left point, Width, Height).
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>c = xget("color")</term>
-                <listitem>
-                    <para>
-                        Get the default color for filling, line or text drawing
-                        functions. <literal>c</literal> is an integer projected
-                        in the interval <literal>[0,whiteid]</literal>. 0 stands
-                        for black filling and <literal>whiteid</literal> for
-                        white. The value of <literal>whiteid</literal> can be
-                        obtained with <code>xget("white")</code>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>cmap = xget("colormap")</term>
-                <listitem>
-                    <para>
-                        Get the colormap used for the current graphics window as
-                        a <literal>m x 3</literal> RGB matrix.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>dash = xget("dashes")</term>
-                <listitem>
-                    <para>
-                        Get the dash style <literal>dash = [dash_number]</literal>
-                        where <literal>dash_number</literal> is the id of the
-                        dash.
-                        <warning>
-                            This keyword is obsolete, please use
-                            <literal>xget("color")</literal> or
-                            <literal>xget("line style")</literal> instead.
-                        </warning>
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>font = xget("font")</term>
-                <listitem>
-                    <para>
-                        Get <literal>font = [fontid, fontsize]</literal>, the
-                        default font and the default value of font size.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>fontsize = xget("font size")</term>
-                <listitem>
-                    <para>Get the default value of font size.</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>color = xget("foreground")</term>
-                <listitem>
-                    <para>
-                        Get the foreground color of the current
-                        <literal>Axes</literal> object. The result is a colormap index corresponding to the color.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>str = xget("fpf")</term>
-                <listitem>
-                    <para>
-                        Get the floating point format for number display in
-                        contour functions. Note that <literal>str</literal> is <literal>""</literal> when default format is used.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>color = xget("hidden3d")</term>
-                <listitem>
-                    <para>
-                        Get the color number for hidden faces in <function>plot3d</function>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>pat = xget("lastpattern")</term>
-                <listitem>
-                    <para>
-                        Get the id of the last available pattern or color, with
-                        the current colormap of the current window. In fact
-                        <literal>pat+1</literal> and <literal>pat+2</literal>
-                        are also available and stand respectively for black and
-                        white pattern.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>type = xget("line mode")</term>
-                <listitem>
-                    <para>
-                        Get the line drawing mode. <literal>type = 1</literal>
-                        is absolute mode and <literal>type = 0</literal> is
-                        relative mode.
-                        <warning>
-                            The mode <literal>type = 0</literal> has bugs.
-                        </warning>
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xget("line style")</term>
-                <listitem>
-                    <para>
-                        Get the default line style (1 for solid line, &gt;1 for
-                        dashed lines).
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>mark = xget("mark")</term>
-                <listitem>
-                    <para>
-                        Get the default mark id and the default mark size.
-                        <literal>mark=[markid, marksize]</literal>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>marksize = xget("mark size")</term>
-                <listitem>
-                    <para>Get the default mark size.</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>pat = xget("pattern")</term>
-                <listitem>
-                    <para>
-                        Get the current pattern or the current color.
-                        <literal>pat</literal> is an integer in the range
-                        <literal>[1, last]</literal>. When one uses black and
-                        white, 0 is used for black filling and
-                        <literal>last</literal> for white. The value of
-                        <literal>last</literal> can be obtained with
-                        <code>xget("lastpattern")</code>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>value = xget("thickness")</term>
-                <listitem>
-                    <para>
-                        Get the thickness of lines in pixel (0 and 1 have the same meaning: 1 pixel thick).
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>flag = xget("use color")</term>
-                <listitem>
-                    <para>
-                        Get the flag 0 (use black and white) or 1 (use colors).
-                        See <function>xset</function>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>[x, y] = xget("viewport")</term>
+                <term>value = xget("fpf")</term>
                 <listitem>
                     <para>
-                        Get the current position of the visible part of graphics
-                        in the panner.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>dim = xget("wdim")</term>
-                <listitem>
-                    <para>
-                        Get the width and the height of the current graphics
-                        window <literal>dim = [width, height]</literal>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>win = xget("window")</term>
-                <listitem>
-                    <para>
-                        Get the current window number <literal>win</literal>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>pos = xget("wpos")</term>
-                <listitem>
-                    <para>
-                        Get the position of the upper left point of the graphics
-                        window <literal>pos = [x, y]</literal>.
+                        Gets as a string the floating point format for number display in contour
+                        functions. Note that <literal>value</literal> is <literal>""</literal>
+                        when the default format is used.
                     </para>
                 </listitem>
             </varlistentry>
         </variablelist>
+        <refsect2>
+            <title>Replacements</title>
+        <screen><![CDATA[
+// SCILAB 3 & 4           SCILAB N > 4
+// ------------           ------------
+xget("window")            gcf().figure_id
+xget("figure")            gcf().figure_id
+xget("wpos")              gcf().figure_position
+xget("wdim")              gcf().figure_size
+xget("wpdim")             gcf().figure_size
+xget("viewport")          gcf().viewport
+xget("wresize")           gcf().auto_resize
+xget("auto clear")        gcf().auto_clear
+
+xget("hidden3d")          gca().hiddencolor
+xget("clipgrf")           bool2s(gca().clip_state=="clipgrf")
+xget("clipoff")           bool2s(gca().clip_state=="off")
+xget("clipping")          gca().clip_box
+xget("background")        gca().background
+xget("foreground")        gca().foreground
+xget("pattern")           gca().foreground
+xget("lastpattern")       size(gcf().color_map,1)
+xget("color")             gca().foreground
+xget("white")             color("white")
+xget("font")              [gca().font_style gca().font_size]
+xget("font size")         gca().font_size
+xget("dashes")            gca().line_style
+xget("line mode")         gca().line_mode
+]]></screen>
+        </refsect2>
     </refsection>
     <refsection role="see also">
         <title>See also</title>
                 <link linkend="xset">xset</link>
             </member>
             <member>
-                <link linkend="getcolor">getcolor</link>
+                <link linkend="get">get</link>
             </member>
             <member>
-                <link linkend="ged">ged</link>
+                <link linkend="graphics_entities">graphics entities</link>
             </member>
             <member>
-                <link linkend="set">set</link>
+                <link linkend="gcf">gcf</link>
             </member>
             <member>
-                <link linkend="graphics_entities">graphics entities</link>
+                <link linkend="gdf">gdf</link>
+            </member>
+            <member>
+                <link linkend="gca">gca</link>
+            </member>
+            <member>
+                <link linkend="gda">gda</link>
+            </member>
+            <member>
+                <link linkend="ged">ged</link>
+            </member>
+            <member>
+                <link linkend="getcolor">getcolor</link>
             </member>
         </simplelist>
     </refsection>
         <title>History</title>
         <revhistory>
             <revision>
+                <revnumber>5.0.1</revnumber>
+                <revremark>
+                    The <literal>"alufunction"</literal> property is obsolete. It is no longer
+                    taken into account for graphical renderings. It is replaced with
+                    <literal>gcf().pixel_drawing_mode</literal>.
+                </revremark>
+            </revision>
+            <revision>
                 <revnumber>5.4.0</revnumber>
                 <revremark>
-                    The "alufunction" property is no more supported, this property was no more used for rendering since Scilab 5.0.1.
+                    The <literal>"alufunction"</literal> is no longer supported..
+                </revremark>
+            </revision>
+            <revision>
+                <revnumber>6.0.0</revnumber>
+                <revremark>
+                    Only the <literal>xget("fpf")</literal> syntax is now supported.
                 </revremark>
             </revision>
         </revhistory>
index 2220f0b..55b1a14 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) ENPC - Jean-Philippe Chancelier
+ * Copyright (C) 2017 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"  xml:lang="en" xml:id="xset">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+        xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+        xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+        xml:lang="en" xml:id="xset">
     <refnamediv>
         <refname>xset</refname>
         <refpurpose>
@@ -24,7 +28,6 @@
         <title>Syntax</title>
         <synopsis>
             xset(choice_name, x1, x2, x3, x4, x5)
-            xset()
         </synopsis>
     </refsynopsisdiv>
     <refsection>
     </refsection>
     <refsection>
         <title>Description</title>
-        <para>
             <warning>
-                This function is obsolete.
+                This function is obsolete. Use the Scilab graphic objects representation instead:
+                See equivalences here-below.
             </warning>
-            Use the Scilab graphic objects representation instead (see the
-            <link linkend="set">set</link> and <link linkend="get">get</link>
-            functions as well as the <link linkend="graphics_entities">graphics
-                entities
-            </link>
-            help page).
-        </para>
-        <para>
-            <function>xset</function> is used to set default values of the
-            current window graphic context.
-        </para>
-        <para>
-            When called no argument, a choice menu is created showing the
-            current values and changes can be performed through toggle buttons.
-        </para>
-        <para>
-            Use <code>xset()</code> to display or set the current color, mark
-            and fonts used.
-        </para>
-        <para/>
         <variablelist>
             <varlistentry>
-                <term>xset("auto clear","on"|"off")</term>
-                <listitem>
-                    <para>
-                        Switch <literal>"on"</literal> or <literal>"off"</literal>
-                        the auto clear mode for graphics. When the auto clear
-                        mode is <literal>"on"</literal>, successive plots are
-                        not superposed, i.e. a <code>clf()</code> operation (the
-                        graphics window is cleared and the associated recorded
-                        graphics is erased) is performed before each high
-                        level graphics function. Default value is <literal>"off"</literal>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("background",color)</term>
-                <listitem>
-                    <para>
-                        Set the background color of the current <literal>Axes</literal>
-                        object. The <literal>color</literal> argument is the
-                        colormap index of the color to use.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("clipping", x, y, w, h)</term>
-                <listitem>
-                    <para>
-                        Set the clipping zone (the zone of the graphics window
-                        where plots can be drawn) to the rectangle
-                        <literal>(x,y,w,h)</literal> (Upper-Left point, Width,
-                        Height). This function uses the current coordinates of
-                        the plot.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("color",value)</term>
-                <listitem>
-                    <para>
-                        Set the default color for filling, line or text drawing
-                        functions. <literal>value</literal> is an integer
-                        projected in the interval <literal>[0,whiteid]</literal>.
-                        0 is used for black filling and <literal>whiteid</literal> for white. The
-                        value of <literal>whiteid</literal> can be obtained with <code>xget("white")</code>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("colormap",cmap)</term>
-                <listitem>
-                    <para>
-                        Set the colormap as a <literal>m x 3</literal> matrix,
-                        where <literal>m</literal> is the number of colors.
-                        Color number <literal>i</literal> is given as a 3-uple
-                        <literal>cmap(i,1)</literal>, <literal>cmap(i,2)</literal>,
-                        <literal>cmap(i,3)</literal>  corresponding respectively
-                        to red, green and blue intensity between 0 and 1.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("dashes",i)</term>
-                <listitem>
-                    <para>
-                        In black and white mode (<code>xset("use color",0)</code>),
-                        set the dash style to style <literal>i</literal> (0 for
-                        solid line). In color mode (<code>xset("use color",1)</code>)
-                        this is used to set line, mark and text color.
-                        <warning>
-                            This keyword is obsolete, please use
-                            <literal>xset('color',i)</literal> or
-                            <literal>xset('line style',i)</literal> instead.
-                        </warning>
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("default")</term>
-                <listitem>
-                    <para>
-                        Reset the graphics context to default values.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("font", fontid, fontsize):</term>
-                <listitem>
-                    <para>
-                        Set the current font and its current size. Note that
-                        <literal>fontsize</literal> applies to all fonts not
-                        only <literal>fontid</literal>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("font size", fontsize)</term>
-                <listitem>
-                    <para>Set the fonts size.</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("foreground",color)</term>
-                <listitem>
-                    <para>
-                        Set the foreground color of the current <literal>Axes</literal>
-                        object. The <literal>color</literal> argument is the
-                        colormap index of the color to use.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
                 <term>xset("fpf", string)</term>
                 <listitem>
                     <para>
                     </para>
                 </listitem>
             </varlistentry>
-            <varlistentry>
-                <term>xset("hidden3d", colorid): </term>
-                <listitem>
-                    <para>
-                        Set the color number for backward facing faces in
-                        <function>plot3d</function>. <literal>colorid=0</literal>
-                        zero suppress the drawing of backward facing faces of 3d
-                        objects. This is technically called 'culling' and speeds
-                        up the rendering of closed surfaces.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("line mode", type)</term>
-                <listitem>
-                    <para>
-                        This function is used to set the line drawing mode.
-                        Absolute mode is set with <literal>type=1</literal> and
-                        relative mode with type=0.
-                        <warning>The mode type=0 has bugs.</warning>
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("line style", value)</term>
-                <listitem>
-                    <para>
-                        Set the current line style (1 for solid, &gt;1 for
-                        dashed lines).
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("mark", markid, marksize)</term>
-                <listitem>
-                    <para>
-                        Set the current mark and the current mark size. Use
-                        <code>xset()</code> to see the marks. Note that
-                        <literal>marksize</literal> applies to all marks not
-                        only <literal>markid</literal>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("mark size", marksize)</term>
-                <listitem>
-                    <para>Set the mark size.</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("pattern", value)</term>
-                <listitem>
-                    <para>
-                        Set the current pattern for filling functions. value is
-                        an integer projected in the interval
-                        <literal>[0,whiteid]</literal>. 0 is used for black
-                        filling and <literal>whiteid</literal> for white. The
-                        value of <literal>whiteid</literal> can be obtained
-                        with <code>xget("white")</code>.
-                        <literal>"pattern"</literal> is equivalent to
-                        <literal>"color"</literal>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("thickness", value)</term>
-                <listitem>
-                    <para>
-                        Set the thickness of lines in pixel (0 and 1 have the
-                        same meaning: 1 pixel thick).
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("use color", flag)</term>
-                <listitem>
-                    <para>
-                        If <literal>flag=1</literal> then <code>xset("pattern", 1)</code> or
-                        <code>xset("dashes", 1)</code> will be used so as to
-                        change the default color for drawing or for filling
-                        patterns. If <literal>flag=0</literal> then we switch
-                        back to the gray and dashes mode.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("viewport", x, y)</term>
-                <listitem>
-                    <para>Set the position of the panner.</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("wdim", width, height)</term>
-                <listitem>
-                    <para>
-                        Set the width and the height of the current graphics
-                        window. This option is not used by the postscript
-                        driver.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("wpdim", width, height)</term>
-                <listitem>
-                    <para>
-                        Sets the width and the height of the current physical
-                        graphic window (which can be different from the actual
-                        size in mode <literal>wresize</literal> 1). This option
-                        is not used by the postscript driver.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("window", window_number)</term>
-                <listitem>
-                    <para>
-                        Set the current window to the window <literal>window_number</literal>
-                        and creates the window if it does not exist.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("wpos", [x, y])</term>
-                <listitem>
-                    <para>
-                        Set the position of the upper left point of the graphics
-                        window.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("wresize",flag)</term>
-                <listitem>
-                    <para>
-                        If <literal>flag=1</literal> then the graphic is
-                        automatically resized to fill the graphics window.
-                    </para>
-                    <programlisting role=""><![CDATA[
-xdel();
-xset("wresize",1);
-plot2d();
-xset("wdim",1000,500)
- ]]></programlisting>
-                    <para>
-                        If flag=0 the scale of the graphic is left unchanged
-                        when the graphics window is resized. Top left panner or
-                        keyboard arrows may be used to scroll over the graphic.
-                    </para>
-                    <programlisting role=""><![CDATA[
-xdel();
-plot2d();
-xset("wresize",0);
-xset("wdim",1000,500)
- ]]></programlisting>
-                </listitem>
-            </varlistentry>
         </variablelist>
+        <refsect2>
+            <title>Replacements</title>
+            <para>
+            <literal>xset(..)</literal> returned nothing. Please take care appending a semi-colon
+            after replacement instructions in order to cancel the display of their output.
+            </para>
+        <screen><![CDATA[
+// SCILAB 3 & 4                 SCILAB N>4
+// ------------                 ----------
+xset("default")                 clf("reset")
+
+xset("wpos", [x y])             gcf().figure_position = [x y];
+xset("wpdim", w, h)             gcf().figure_size = [w h];
+xset("wdim", w, h)              gcf().figure_size = [w h];
+xset("wresize", 0|1)  HS        gcf().auto_resize = "off"|"on";
+xset("colormap", CM)            gcf().color_map = CM;
+xset("figure", i)               scf(i);
+xset("window", i)               scf(i);
+xset("viewport", xp,yp)         gcf().viewport = [xp yp];
+
+xset("auto clear","on"|"off")   gca().auto_clear = "on"|"off";
+xset("line mode", 0|1)          gca().line_mode = "off"|"on";
+xset("line style", n)           gca().line_style = n;
+xset("dashes", n)               gca().line_style = n;
+xset("thickness", n)            gca().thickness = n;
+xset("font size", s)            gca().font_size = s;
+xset("font", id, fsize)         set(gca(), "font_style", id, "font_size", fsize);
+xset("mark size", msize)        set(gca(), "mark_size_unit", "tabulated", "mark_size", msize);
+xset("mark", id, msize)         set(gca(), "mark_style", id, "mark_size_unit", "tabulated", "mark_size", msize);
+xset("color", icol)             gca().foreground = icol;
+xset("color", 0)                gca().foreground = -1;
+xset("pattern", icol)           gca().foreground = icol;
+xset("pattern", 0)              gca().foreground = -1;
+xset("foreground", icol)        gca().foreground = icol;
+xset("background", icol)        gca().background = icol;
+xset("hidden3d", icol)          gca().hiddencolor = icol;
+
+xset("clipping", rect)          set(gca(), "clip_box", rect, "clip_state", "on");
+xset("clipgrf")                 gca().clip_state = "clipgrf";
+xset("clipoff")                 gca().clip_state = "off";
+
+xset("alufunction",i)           gcf().pixel_drawing_mode = str(i);
+                                #i   str(i)
+                                --   ------
+                                0 => "clear"
+                                1 => "and"
+                                2 => "andReverse"
+                                3 => "copy"
+                                4 => "andInverted"
+                                5 => "noop"
+                                6 => "xor"
+                                7 => "or"
+                                8 => "nor"
+                                9 => "equiv"
+                                10 => "invert"
+                                11 => "orReverse"
+                                12 => "copyInverted"
+                                13 => "orInverted"
+                                14 => "nand"
+                                15 => "set"
+]]></screen>
+        </refsect2>
     </refsection>
     <refsection role="see also">
         <title>See also</title>
@@ -361,16 +139,28 @@ xset("wdim",1000,500)
                 <link linkend="xget">xget</link>
             </member>
             <member>
-                <link linkend="getcolor">getcolor</link>
+                <link linkend="set">set</link>
             </member>
             <member>
-                <link linkend="ged">ged</link>
+                <link linkend="graphics_entities">graphics entities</link>
             </member>
             <member>
-                <link linkend="set">set</link>
+                <link linkend="gcf">gcf</link>
             </member>
             <member>
-                <link linkend="graphics_entities">graphics entities</link>
+                <link linkend="gdf">gdf</link>
+            </member>
+            <member>
+                <link linkend="gca">gca</link>
+            </member>
+            <member>
+                <link linkend="gda">gda</link>
+            </member>
+            <member>
+                <link linkend="ged">ged</link>
+            </member>
+            <member>
+                <link linkend="getcolor">getcolor</link>
             </member>
         </simplelist>
     </refsection>
@@ -378,9 +168,23 @@ xset("wdim",1000,500)
         <title>History</title>
         <revhistory>
             <revision>
+                <revnumber>5.0.1</revnumber>
+                <revremark>
+                    The <literal>.alufunction</literal> property is obsolete. It is no longer
+                    taken into account for graphical renderings. It is replaced with
+                    <literal>gcf().pixel_drawing_mode</literal>.
+                </revremark>
+            </revision>
+            <revision>
                 <revnumber>5.4.0</revnumber>
                 <revremark>
-                    The "alufunction" property is no more supported, this property was no more used for rendering since Scilab 5.0.1.
+                    The <literal>"alufunction"</literal> is no longer supported..
+                </revremark>
+            </revision>
+            <revision>
+                <revnumber>6.0.0</revnumber>
+                <revremark>
+                    The only <literal>xset("fpf", format)</literal> syntax is now supported.
                 </revremark>
             </revision>
         </revhistory>
index 1d89cae..9ac386f 100644 (file)
@@ -1,15 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns3="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="xset" xml:lang="fr">
+<!--
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) ENPC - Jean-Philippe Chancelier
+ * Copyright (C) 2017 - Samuel GOUGEON
+ *
+ * Copyright (C) 2012 - 2016 - Scilab Enterprises
+ *
+ * This file is hereby licensed under the terms of the GNU GPL v2.0,
+ * pursuant to article 5.3.4 of the CeCILL v.2.1.
+ * This file was originally licensed under the terms of the CeCILL v2.1,
+ * and continues to be available under such terms.
+ * For more information, see the COPYING file which you should have received
+ * along with this program.
+ *
+ -->
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+    xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns3="http://www.w3.org/1999/xhtml"
+    xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
+    xmlns:scilab="http://www.scilab.org" xml:id="xset" xml:lang="fr">
     <refnamediv>
         <refname>xset</refname>
         <refpurpose>
-            change des valeurs du contexte graphique. <emphasis role="bold">Fonction obsolete</emphasis>
+            change des valeurs du contexte graphique. <emphasis role="bold">Fonction obsolète</emphasis>
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Séquence d'appel</title>
-        <synopsis>xset(choice-name,x1,x2,x3,x4,x5)
-            xset()
+        <synopsis>
+            xset(choice-name, x1, x2, x3, x4, x5)
         </synopsis>
     </refsynopsisdiv>
     <refsection>
             <varlistentry>
                 <term>choice-name</term>
                 <listitem>
-                    <para>chaîne de caractères</para>
+                    chaîne de caractères
                 </listitem>
             </varlistentry>
             <varlistentry>
                 <term>x1,...,x5</term>
                 <listitem>
-                    <para>
                         dépend de <literal>choice-name</literal>
-                    </para>
                 </listitem>
             </varlistentry>
         </variablelist>
     </refsection>
     <refsection>
         <title>Description</title>
-        <para>
-            <emphasis role="bold">
-                <literal>Remarque Importante : </literal>Cette
-                fonction est obsolète
-            </emphasis>
-            .Utilisez de préférence la représentation
-            objet des graphiques Scilab.voir les fonctions <link linkend="set">set</link> et <link linkend="get">get</link> ainsi que la
-            page d'aide <link linkend="graphics_entities">graphics_entities</link>.
-        </para>
+        <warning>
+            <emphasis role="bold">Cette fonction est obsolète</emphasis>. Utilisez
+            désormais la représentation objet des graphiques Scilab. Voir les syntaxes équivalentes
+                       listées ci-dessous.
+        </warning>
         <para>
             <literal>xset</literal> est utilisée pour changer des valeurs du
             contexte graphique de la fenêtre graphique courante.
         </para>
-        <para>Quand elle est appelée sans argument, une boîte de dialogue est
-            affichée avec les valeurs courantes et des changements peuvent être
-            effectués à   l'aide de boutons.
-        </para>
-        <para>
-            Utiliser <literal>xset()</literal> pour afficher ou changer la
-            couleur courante, le marqueur ou la police.
-        </para>
         <variablelist>
             <varlistentry>
-                <term>xset("alufunction",number)</term>
-                <listitem>
-                    <para>utilisé pour changer l'opérateur logique de dessin L'opérateur
-                        est choisi avec <literal>x1</literal>. Les valeurs habituelles sont
-                        : 3 pour la copie (par défaut), 6 pour le ou exclusif (pour faire
-                        des animations) et 0 pour effacer. Voir
-                        <literal>alufunctions</literal> pour plus de détails.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("auto clear","on"|"off")</term>
-                <listitem>
-                    <para>Met "on" ou "off" le mode d'effacement automatique des
-                        graphiques. Quand le mode est "on", les dessins successifs ne sont
-                        pas superposés, i.e. la commande <literal>clf()</literal>
-                        (effacement de la fenêtre graphique et effacement des graphiques
-                        enregistrés) est exécutée avant chaque commande graphique de haut
-                        niveau (plot2d par exemple). La valeur par défaut est "off".
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("background",color)</term>
-                <listitem>
-                    <para>Change la couleur d'arrière plan du système d'axes courant.
-                        L'argument <literal>color</literal> correspond a un indice de la table de couleur.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("clipping",x,y,w,h)</term>
-                <listitem>
-                    <para>Définit la zone de clipping (la zone de la fenêtre graphique
-                        où les dessins peuvent être dessinés) comme le rectangle (x,y,w,h)
-                        (point en haut à   gauche, largeur, hauteur). Cette fonction utilise
-                        l'échelle courante de la fenêtre graphique.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("color",value)</term>
-                <listitem>
-                    <para>Définit la couleur par défaut de tracé de ligne, de
-                        remplissage, de texte, pour toutes les fonctions de dessin.
-                        <literal>value</literal> est un entier projeté sur l'intervalle
-                        [0,whiteid]. 0 est utilisé pour le noir et whiteid pour le blanc. La
-                        valeur de whiteid peut être obtenue avec
-                        <literal>xget("white")</literal>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("colormap",cmap)</term>
-                <listitem>
-                    <para>Définit la table des couleurs à   partir d'une matrice m x 3.
-                        m est le nombre de couleurs. La couleur numéro i est donnée comme le
-                        triplet cmap(i,1), cmap(i,2), cmap(i,3) correspondant respectivement
-                        aux intensités de rouge, vert et bleu, comprises entre 0 et
-                        1.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("dashes",i)</term>
-                <listitem>
-                    <para>
-                        en mode noir et blanc (<literal>xset("use
-                            color",0)
-                        </literal>
-                        ), choisit le style de pointillé numéro i (0 pour
-                        une ligne continue). En mode couleur (<literal>xset("use
-                            color",1)
-                        </literal>
-                        )cette commande est utilisée pour choisir la
-                        couleur du marqueur, des lignes et du texte. Ce mot-clé est
-                        obsolète, utiliser <literal>xset('color',i)</literal> et
-                        <literal>xset('line style',i)</literal> à   la place.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("default")</term>
-                <listitem>
-                    <para>Réinitialise le contexte graphiques aux valeurs par
-                        défaut.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("font",fontid,fontsize)</term>
-                <listitem>
-                    <para>
-                        Choisit la police courante et sa taille.
-                        Noter que <literal>fontsize</literal> s'applique aussi à
-                        toutes les polices autres que <literal>fontid</literal> .
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("font size",fontsize)</term>
-                <listitem>
-                    <para>Choisit la taille des polices.</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("foreground",color)</term>
-                <listitem>
-                    <para>Choisit la couleur de premier plan du système d'axes courant.
-                        L'argument <literal>color</literal> correspond a un indice de la table de couleur.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
                 <term>xset("fpf",string)</term>
                 <listitem>
                     <para>Change le format des nombres affichés sur les courbes de
                     </para>
                 </listitem>
             </varlistentry>
-            <varlistentry>
-                <term>xset("hidden3d",colorid)</term>
-                <listitem>
-                    <para>
-                        Choisit la couleur des parties arrières dans la fonction plot3d.
-                        <literal>colorid=0</literal> supprime l'affichage des parties
-                        arrières des objets 3D. Il s'agit d'une technique dénommée 'culling'
-                        et permet d'accélérer le rendu des surfaces fermées.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("line mode",type)</term>
-                <listitem>
-                    <para>Cette fonction est utilisée pour changer le mode de dessin des
-                        lignes. Mode absolu pour type=1 et relatif avec type=0. (attention :
-                        le mode type=0 est buggé)
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("line style",value)</term>
-                <listitem>
-                    <para>Choisit le style de ligne (1: continu, &gt;1 pour les
-                        pointillés).
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("mark",markid,marksize)</term>
-                <listitem>
-                    <para>Choisit le marqueur ainsi que sa taille. Utiliser
-                        <literal>xset()</literal> pour voir les marqueurs. Noter que
-                        <literal>marksize</literal> s'applique aussi à   tous les marqueurs
-                        autres que <literal>markid</literal>.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("mark size",marksize)</term>
-                <listitem>
-                    <para>Choisit la taille de marqueur</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("pattern",value)</term>
-                <listitem>
-                    <para>Choisit le motif pour les fonctions de remplissage.
-                        <literal>value</literal> est un entier projeté sur l'intervalle
-                        [0,whiteid]. 0 est utilisé pour le noir et whiteid pour le blanc. La
-                        valeur de whiteid peut être obtenue avec
-                        <literal>xget("white")</literal>. "pattern" est équivalent à  
-                        "color".
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("thickness",value)</term>
-                <listitem>
-                    <para>Choisit l'épaisseur des lignes en pixels (0 et 1 = épaisseur
-                        de 1 pixel).
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("use color",flag)</term>
-                <listitem>
-                    <para>
-                        Si flag=1 alors <literal>xset("pattern",.)</literal> ou
-                        <literal>xset("dashes",.)</literal> changent la couleur de dessin ou
-                        de remplissage. Si flag=0 on passe en mode pointillés et noir et
-                        blanc.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("viewport",x,y)</term>
-                <listitem>
-                    <para>Choisit la position de la fenêtre glissante.</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("wdim",width,height)</term>
-                <listitem>
-                    <para>Choisit la largeur et la hauteur de la fenêtre graphique
-                        courante. Cette option n'est pas prise en compte par le pilote
-                        PostScript.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("wpdim",width,height)</term>
-                <listitem>
-                    <para>Choisit (en pixels) la largeur et la hauteur de la fenêtre
-                        graphique courante physique (qui peut être différente de la taille
-                        réelle en mode wresize=1). Cette option n'est pas prise en compte
-                        par le pilote PostScript.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("window",window-number)</term>
-                <listitem>
-                    <para>
-                        Choisit la fenêtre <literal>window-number</literal> comme
-                        fenêtre graphique par défaut et crée cette fenêtre si elle n'existe
-                        pas.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("wpos",[x,y])</term>
-                <listitem>
-                    <para>Choisit la position (en pixels) du point en haut à gauche de
-                        la fenêtre graphique.
-                    </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>xset("wresize",flag)</term>
-                <listitem>
-                    <para>Si flag=1 alors les graphiques sont automatiquement
-                        redimensionnés de manière à   remplir la fenêtre graphique.
-                    </para>
-                    <programlisting role=""><![CDATA[
-xdel();
-xset("wresize",1);
-plot2d();
-xset("wdim",1000,500)
- ]]></programlisting>
-                    <para>Si flag=0 l'échelle des graphiques est inchangée quand la
-                        fenêtre est redimensionnée. Le "panner" en haut à   gauche de la
-                        fenêtre ou les flèches du clavier peuvent être utilisées pour faire
-                        glisser le contenu de la fenêtre.
-                    </para>
-                    <programlisting role=""><![CDATA[
-xdel();
-plot2d();
-xset("wresize",0);
-xset("wdim",1000,500)
- ]]></programlisting>
-                </listitem>
-            </varlistentry>
         </variablelist>
+        <refsect2>
+            <title>Equivalences à substituer</title>
+            <para>
+            <literal>xset(..)</literal> ne répondait rien. SVP prendre soin d'ajouter un
+             point-virgule après les instructions utilisées en remplacement et listées ci-dessous,
+             afin de neutraliser l'affichage des résultats que celles-ci fournissent.
+            </para>
+        <screen><![CDATA[
+// SCILAB 3 & 4                 SCILAB N>4
+// ------------                 ----------
+xset("default")                 clf("reset")
+
+xset("wpos", [x y])             gcf().figure_position = [x y];
+xset("wpdim", w, h)             gcf().figure_size = [w h];
+xset("wdim", w, h)              gcf().figure_size = [w h];
+xset("wresize", 0|1)  HS        gcf().auto_resize = "off"|"on";
+xset("colormap", CM)            gcf().color_map = CM;
+xset("figure", i)               scf(i);
+xset("window", i)               scf(i);
+xset("viewport", xp,yp)         gcf().viewport = [xp yp];
+
+xset("auto clear","on"|"off")   gca().auto_clear = "on"|"off";
+xset("line mode", 0|1)          gca().line_mode = "off"|"on";
+xset("line style", n)           gca().line_style = n;
+xset("dashes", n)               gca().line_style = n;
+xset("thickness", n)            gca().thickness = n;
+xset("font size", s)            gca().font_size = s;
+xset("font", id, fsize)         set(gca(), "font_style", id, "font_size", fsize);
+xset("mark size", msize)        set(gca(), "mark_size_unit", "tabulated", "mark_size", msize);
+xset("mark", id, msize)         set(gca(), "mark_style", id, "mark_size_unit", "tabulated", "mark_size", msize);
+xset("color", icol)             gca().foreground = icol;
+xset("color", 0)                gca().foreground = -1;
+xset("pattern", icol)           gca().foreground = icol;
+xset("pattern", 0)              gca().foreground = -1;
+xset("foreground", icol)        gca().foreground = icol;
+xset("background", icol)        gca().background = icol;
+xset("hidden3d", icol)          gca().hiddencolor = icol;
+
+xset("clipping", rect)          set(gca(), "clip_box", rect, "clip_state", "on");
+xset("clipgrf")                 gca().clip_state = "clipgrf";
+xset("clipoff")                 gca().clip_state = "off";
+
+xset("alufunction",i)           gcf().pixel_drawing_mode = str(i);
+                                #i   str(i)
+                                --   ------
+                                0 => "clear"
+                                1 => "and"
+                                2 => "andReverse"
+                                3 => "copy"
+                                4 => "andInverted"
+                                5 => "noop"
+                                6 => "xor"
+                                7 => "or"
+                                8 => "nor"
+                                9 => "equiv"
+                                10 => "invert"
+                                11 => "orReverse"
+                                12 => "copyInverted"
+                                13 => "orInverted"
+                                14 => "nand"
+                                15 => "set"
+]]></screen>
+        </refsect2>
     </refsection>
     <refsection role="see also">
         <title>Voir aussi</title>
@@ -332,17 +142,54 @@ xset("wdim",1000,500)
                 <link linkend="xget">xget</link>
             </member>
             <member>
-                <link linkend="getcolor">getcolor</link>
+                <link linkend="set">set</link>
             </member>
             <member>
-                <link linkend="ged">ged</link>
+                <link linkend="graphics_entities">graphics entities</link>
             </member>
             <member>
-                <link linkend="set">set</link>
+                <link linkend="gcf">gcf</link>
+            </member>
+            <member>
+                <link linkend="gdf">gdf</link>
+            </member>
+            <member>
+                <link linkend="gca">gca</link>
             </member>
             <member>
-                <link linkend="graphics_entities">graphics_entities</link>
+                <link linkend="gda">gda</link>
+            </member>
+            <member>
+                <link linkend="ged">ged</link>
+            </member>
+            <member>
+                <link linkend="getcolor">getcolor</link>
             </member>
         </simplelist>
     </refsection>
+    <refsection>
+        <title>Historique</title>
+        <revhistory>
+            <revision>
+                <revnumber>5.0.1</revnumber>
+                <revremark>
+                    La propriété <literal>"alufunction"</literal> est obsolète et n'est plus
+                    prise en compte pour les affichages graphiques. Elle est remplacée par
+                    <literal>gcf().pixel_drawing_mode</literal>.
+                </revremark>
+            </revision>
+            <revision>
+                <revnumber>5.4.0</revnumber>
+                <revremark>
+                    La propriété <literal>"alufunction"</literal> n'est plus admise.
+                </revremark>
+            </revision>
+            <revision>
+                <revnumber>6.0.0</revnumber>
+                <revremark>
+                    Seule l'instruction <literal>xset("fpf", format)</literal> est désormais admise.
+                </revremark>
+            </revision>
+        </revhistory>
+    </refsection>
 </refentry>
index 0651270..7442ed3 100644 (file)
@@ -1,14 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-
 <!--
-
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
-
  * Copyright (C) ENPC - Jean-Philippe Chancelier
-
  *
-
-
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * This file is hereby licensed under the terms of the GNU GPL v2.0,
  * and continues to be available under such terms.
  * For more information, see the COPYING file which you should have received
  * along with this program.
-
  *
-
  -->
-
 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"  xml:lang="ja" xml:id="Matplot">
-
     <refnamediv>
-
         <refname>Matplot</refname>
-
         <refpurpose>行列のカラー二次元プロット</refpurpose>
-
     </refnamediv>
-
     <refsynopsisdiv>
-
         <title>呼び出し手順</title>
-
         <synopsis>
-
             Matplot(a,[strf,rect,nax])
-
             Matplot(a,&lt;opt_args&gt;)
-
         </synopsis>
-
     </refsynopsisdiv>
-
     <refsection>
-
         <title>引数</title>
-
         <variablelist>
-
             <varlistentry>
-
                 <term>a</term>
-
                 <listitem>
-
                     <para>
-
                         大きさ (<literal>n1</literal>, <literal>n2</literal>)
-
                         の実数行列.
-
                     </para>
-
                 </listitem>
-
             </varlistentry>
-
             <varlistentry>
-
                 <term>&lt;opt_args&gt;</term>
-
                 <listitem>
-
                     <para>
-
                         一連の命令<literal>key1=value1,
-
                             key2=value2
-
                         </literal>
-
                         ,... を表し,<literal>key1</literal>,
-
                         <literal>key2,...</literal> には以下のどれかを指定できます:
-
                     </para>
-
                     <variablelist>
-
                         <varlistentry>
-
                             <term>rect</term>
-
                             <listitem>
-
                                 <para>
-
                                     プロットの境界を設定します.
-
                                     このキーが指定され,<literal>frameflag</literal> および <literal>strf</literal>
-
                                     のどちらも指定されない場合,<literal>strf</literal> の文字<literal>y</literal>
-
                                     は<literal>7</literal>に設定されます.
-
                                     値については以下を参照ください.
-
                                 </para>
-
                             </listitem>
-
                         </varlistentry>
-
                         <varlistentry>
-
                             <term>nax</term>
-
                             <listitem>
-
                                 <para>グリッドの定義を設定します.このキーが指定され,
-
                                     <literal>axesflag</literal>および<literal>strf</literal>のどちらも指定されない場合,
-
                                     <literal>strf</literal>の文字 <literal>z</literal>が
-
                                     <literal>1</literal>に設定されます.値については以下を参照ください.
-
                                 </para>
-
                             </listitem>
-
                         </varlistentry>
-
                         <varlistentry>
-
                             <term>frameflag</term>
-
                             <listitem>
-
                                 <para>プロットのフレームの計算方法を指定します.
-
                                     この値は 0 から 8の整数です.<literal>strf</literal>の文字
-
                                     <literal>y</literal>に対応します.以下を参照ください.
-
                                 </para>
-
                             </listitem>
-
                         </varlistentry>
-
                         <varlistentry>
-
                             <term>axesflag</term>
-
                             <listitem>
-
                                 <para>プロットの周囲に描画される軸の種類を指定します.
-
                                     この値は 0 から 5の整数です.<literal>strf</literal>の文字
-
                                     <literal>z</literal>に対応します.以下を参照ください.
-
                                 </para>
-
                             </listitem>
-
                         </varlistentry>
-
                     </variablelist>
-
                 </listitem>
-
             </varlistentry>
-
             <varlistentry>
-
                 <term>strf</term>
-
                 <listitem>
-
                     <para>
-
                         長さ3の文字列 <literal>"xyz"</literal>です.
-
                     </para>
-
                     <variablelist>
-
                         <varlistentry>
-
                             <term>default</term>
-
                             <listitem>
-
                                 <para>
-
                                     デフォルトは <literal>"081"</literal>です.
-
                                 </para>
-
                             </listitem>
-
                         </varlistentry>
-
                         <varlistentry>
-
                             <term>x</term>
-
                             <listitem>
-
                                 <para>キャプションの表示を制御します.</para>
-
                                 <variablelist>
-
                                     <varlistentry>
-
                                         <term>x=0</term>
-
                                         <listitem>
-
                                             <para>キャプションなし.</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>x=1</term>
-
                                         <listitem>
-
                                             <para>キャプションが表示されます.
-
                                                 これらはオプションの引数<literal>leg</literal>で指定されます.
-
                                             </para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                 </variablelist>
-
                             </listitem>
-
                         </varlistentry>
-
                         <varlistentry>
-
                             <term>y</term>
-
                             <listitem>
-
                                 <para>
-
                                     指定された値に関する最小限の範囲をカバーする実際の座標を
-
                                     計算する手法を制御します.
-
                                     実際の範囲は必要最小限の値よりも大きくすることができます.
-
                                 </para>
-
                                 <variablelist>
-
                                     <varlistentry>
-
                                         <term>y=0</term>
-
                                         <listitem>
-
                                             <para>計算せずにプロットは前(またはデフォルト)のスケールを使用します</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>y=1</term>
-
                                         <listitem>
-
                                             <para>rect引数による</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>y=2</term>
-
                                         <listitem>
-
                                             <para>x, yデータの最小値/最大値による</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>y=3</term>
-
                                         <listitem>
-
                                             <para>rect引数に基づき等軸スケールで設定</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>y=4</term>
-
                                         <listitem>
-
                                             <para>x, yデータの最小値/最大値に基づき等軸スケールで設定</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>y=5</term>
-
                                         <listitem>
-
                                             <para>rect引数の設定値から見栄えが良くなるよう軸を拡大</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>y=6</term>
-
                                         <listitem>
-
                                             <para>x, yデータの最小値/最大値に基づく設定から見栄えが良くなるよう
-
                                                 軸を拡大
-
                                             </para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>y=7</term>
-
                                         <listitem>
-
                                             <para>y=1 と似ていますが, 前のプロットは新しいスケールを使用して
-
                                                 再描画させます
-
                                             </para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>y=8</term>
-
                                         <listitem>
-
                                             <para>y=2と似ていますが,前のプロットが新しいスケールを
-
                                                 用いて再描画されます.
-
                                             </para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                 </variablelist>
-
                             </listitem>
-
                         </varlistentry>
-
                         <varlistentry>
-
                             <term>z</term>
-
                             <listitem>
-
                                 <para>プロットの周囲のフレームへの情報の表示を制御します.
-
                                     軸が指定された場合,目盛の数をオプションの引数
-
                                     <literal>nax</literal>により指定できます.
-
                                 </para>
-
                                 <variablelist>
-
                                     <varlistentry>
-
                                         <term>z=0</term>
-
                                         <listitem>
-
                                             <para>プロットの周囲に何も描画されません.</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>z=1</term>
-
                                         <listitem>
-
                                             <para>軸が描画され, y軸が左に表示されます.</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>z=2</term>
-
                                         <listitem>
-
                                             <para>プロットが目盛のない箱で囲われます.</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>z=3</term>
-
                                         <listitem>
-
                                             <para>軸が描画され,y軸が右側に表示されます.</para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>z=4</term>
-
                                         <listitem>
-
                                             <para>
-
                                                 フレームボックスの中央に軸が描画され,ボックスは無効になります.
-
                                             </para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                     <varlistentry>
-
                                         <term>z=5</term>
-
                                         <listitem>
-
                                             <para>
-
                                                 フレームボックスの中央に軸が描画され,ボックスは有効となります.
-
                                             </para>
-
                                         </listitem>
-
                                     </varlistentry>
-
                                 </variablelist>
-
                             </listitem>
-
                         </varlistentry>
-
                     </variablelist>
-
                 </listitem>
-
             </varlistentry>
-
             <varlistentry>
-
                 <term>rect</term>
-
                 <listitem>
-
                     <para>
-
                         この引数は引数<literal>strf</literal>の2文字目のyが1, 3または5の時に
-
                         使用されます.
-
                         この値は大きさ4の行ベクトルで,フレームの次元を指定します:
-
                         <literal>rect=[xmin,ymin,xmax,ymax]</literal>.
-
                     </para>
-
                 </listitem>
-
             </varlistentry>
-
             <varlistentry>
-
                 <term>nax</term>
-
                 <listitem>
-
                     <para>
-
                         この引数は引数<literal>strf</literal>の3文字目のzが1の場合に
-
                         使用されます.
-
                         この値は4つのエントリ<literal>[nx,Nx,ny,Ny]</literal>を有する
-
                         行ベクトルです.
-
                         ただし,<literal>nx</literal> (<literal>ny</literal>)
-
                         は x (y) 軸のサブグラデーションの数,
-
                         <literal>Nx</literal> (<literal>Ny</literal>) はx (y) 軸のグラデーションの数です.
-
                     </para>
-
                 </listitem>
-
             </varlistentry>
-
         </variablelist>
-
     </refsection>
-
     <refsection>
-
         <title>説明</title>
-
         <para>
-
             行列のエントリ<literal>int(a)</literal>がカレントのカラーマップにおける
-
             カラーマップのエントリとして使用されます.
-
             <literal>a(i,j)</literal>が指す色が位置<literal>(x=j,y=(n1-i+1))</literal>
-
             を中心とする大きさ1の小さな正方領域を描画する際に使用されます.
-
             行列のエントリがカラーマップの外側の場合,
-
             対応する矩形は表示されません.
-
         </para>
-
         <para>
-
             <warning>
-
                 Matplotデータを更新する際には, 対応するハンドルの
-
                 <literal>data</literal> フィールドを使用します.
-
             </warning>
-
             <literal>data</literal> は行列(またはハイパー行列)で,
-
             RGB, RGBA, ... データを有します
-
             (<link linkend="Matplot_properties">Matplot_properties</link>参照).
-
         </para>
-
         <para>
-
             コマンド <literal>Matplot()</literal> を入力するとデモが表示されます.
-
         </para>
-
     </refsection>
-
     <refsection>
-
         <title>例</title>
-
         <programlisting role="example"><![CDATA[
 Matplot([1 2 3 ; 4 5 6])
  ]]></programlisting>
-
         <scilab:image>
-
             Matplot([1 2 3;4 5 6])
-
         </scilab:image>
-
         <programlisting role="example"><![CDATA[
 clf()
 // カレントのカラーマップを描画
@@ -630,66 +324,33 @@ Matplot(1:nbcol)
         </scilab:image>
     </refsection>
     <refsection role="see also">
-
         <title>参照</title>
-
         <simplelist type="inline">
-
             <member>
-
                 <link linkend="colormap">colormap</link>
-
             </member>
-
             <member>
-
                 <link linkend="plot2d">plot2d</link>
-
             </member>
-
             <member>
-
                 <link linkend="Matplot1">Matplot1</link>
-
             </member>
-
             <member>
-
                 <link linkend="Matplot_properties">Matplot_properties</link>
-
             </member>
-
         </simplelist>
-
     </refsection>
-
     <refsection>
-
         <title>履歴</title>
-
         <revhistory>
-
             <revision>
-
                 <revnumber>5.5.0</revnumber>
-
                 <revremark>
-
                     <literal>data</literal> は行列(またはハイパー行列)となり,
-
                     RGB, RGBA, ... データを有するようになりました
-
                     (<link linkend="Matplot_properties">Matplot_properties</link>参照).
-
                 </revremark>
-
             </revision>
-
         </revhistory>
-
     </refsection>
-
 </refentry>
-
-
-
index bbfca78..16b80cb 100644 (file)
@@ -1,14 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
-
 <!--
-
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
-
  * Copyright (C) ENPC - Jean-Philippe Chancelier
-
- *
-
-
+* Copyright (C) 2017 - Samuel GOUGEON
+  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * This file is hereby licensed under the terms of the GNU GPL v2.0,
  * and continues to be available under such terms.
  * For more information, see the COPYING file which you should have received
  * along with this program.
-
  *
-
  -->
-
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns3="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="xget" xml:lang="ja">
-
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+        xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns3="http://www.w3.org/1999/xhtml"
+        xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
+        xmlns:scilab="http://www.scilab.org" xml:id="xget" xml:lang="ja">
     <refnamediv>
-
         <refname>xget</refname>
-
         <refpurpose>
-
-            グラフィックコンテキストのカレントの値を取得.
-
-            <emphasis role="bold">この関数は廃止されました.</emphasis>
-
+            グラフィックコンテキストのカレントの値を取得. <emphasis role="bold">この関数は廃止されました.</emphasis>
         </refpurpose>
-
     </refnamediv>
-
     <refsynopsisdiv>
-
         <title>呼び出し手順</title>
-
-        <synopsis>[x1]=xget(str,[flag])
-
-            xget()
-
+        <synopsis>
+            value = xget(query)
         </synopsis>
-
     </refsynopsisdiv>
-
-    <refsection>
-
-        <title>パラメータ</title>
-
-        <variablelist>
-
-            <varlistentry>
-
-                <term>str</term>
-
-                <listitem>
-
-                    <para>文字列.</para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>flag</term>
-
-                <listitem>
-
-                    <para>オプション. 1を指定すると冗長モード.</para>
-
-                </listitem>
-
-            </varlistentry>
-
-        </variablelist>
-
-    </refsection>
-
     <refsection>
-
         <title>説明</title>
-
-        <para>
-
-            <warning>
-
-                この関数は廃止されました.
-
-            </warning>
-
+        <warning>
+            <emphasis role="bold">この関数は廃止されました</emphasis>.
             代わりにScilabグラフィックオブジェクト表現を使用してください
-
             (<link linkend="set">set</link>および <link linkend="get">get</link>関数
-
             および<link linkend="graphics_entities">graphicsエンティティ</link>を参照).
-
-        </para>
-
+        </warning>
         <para>
-
             This function is used to get values from the graphics context on the
-
-            topic specified by the string <literal>str</literal>. When called with no
-
-            argument, a choice menu is created showing the current values and changes
-
-            can be performed through toggle buttons.
-
+            topic specified by the input string <varname>query</varname>.
         </para>
-
         <variablelist>
-
-            <varlistentry>
-
-                <term>str = xget("auto clear")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the auto clear status (<literal>"on"</literal> or
-
-                        <literal>"off"</literal>).
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>color = xget("background")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the background color of the current
-
-                        <literal>Axes</literal> object. The result is a colormap
-
-                        index corresponding to the color.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>rect = xget("clipping")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the clipping zone as a rectangle <literal>rect =
-
-                            [x,y,w,h]
-
-                        </literal>
-
-                        (Upper-Left point, Width, Height).
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>c = xget("color")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the default color for filling, line or text drawing
-
-                        functions. <literal>c</literal> is an integer projected
-
-                        in the interval <literal>[0,whiteid]</literal>. 0 stands
-
-                        for black filling and <literal>whiteid</literal> for
-
-                        white. The value of <literal>whiteid</literal> can be
-
-                        obtained with <code>xget("white")</code>.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>cmap = xget("colormap")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the colormap used for the current graphics window as
-
-                        a <literal>m x 3</literal> RGB matrix.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>dash = xget("dashes")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the dash style <literal>dash = [dash_number]</literal>
-
-                        where <literal>dash_number</literal> is the id of the
-
-                        dash.
-
-                        <warning>
-
-                            This keyword is obsolete, please use
-
-                            <literal>xget("color")</literal> or
-
-                            <literal>xget("line style")</literal> instead.
-
-                        </warning>
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>font = xget("font")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get <literal>font = [fontid, fontsize]</literal>, the
-
-                        default font and the default value of font size.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>fontsize = xget("font size")</term>
-
-                <listitem>
-
-                    <para>Get the default value of font size.</para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>color = xget("foreground")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the foreground color of the current
-
-                        <literal>Axes</literal> object. The result is a colormap index corresponding to the color.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>str = xget("fpf")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the floating point format for number display in
-
-                        contour functions. Note that <literal>str</literal> is <literal>""</literal> when default format is used.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>color = xget("hidden3d")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the color number for hidden faces in <function>plot3d</function>.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>pat = xget("lastpattern")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the id of the last available pattern or color, with
-
-                        the current colormap of the current window. In fact
-
-                        <literal>pat+1</literal> and <literal>pat+2</literal>
-
-                        are also available and stand respectively for black and
-
-                        white pattern.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>type = xget("line mode")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the line drawing mode. <literal>type = 1</literal>
-
-                        is absolute mode and <literal>type = 0</literal> is
-
-                        relative mode.
-
-                        <warning>
-
-                            The mode <literal>type = 0</literal> has bugs.
-
-                        </warning>
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xget("line style")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the default line style (1 for solid line, &gt;1 for
-
-                        dashed lines).
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>mark = xget("mark")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the default mark id and the default mark size.
-
-                        <literal>mark=[markid, marksize]</literal>.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>marksize = xget("mark size")</term>
-
-                <listitem>
-
-                    <para>Get the default mark size.</para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>pat = xget("pattern")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the current pattern or the current color.
-
-                        <literal>pat</literal> is an integer in the range
-
-                        <literal>[1, last]</literal>. When one uses black and
-
-                        white, 0 is used for black filling and
-
-                        <literal>last</literal> for white. The value of
-
-                        <literal>last</literal> can be obtained with
-
-                        <code>xget("lastpattern")</code>.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>value = xget("thickness")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the thickness of lines in pixel (0 and 1 have the same meaning: 1 pixel thick).
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>flag = xget("use color")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the flag 0 (use black and white) or 1 (use colors).
-
-                        See <function>xset</function>.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>[x, y] = xget("viewport")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the current position of the visible part of graphics
-
-                        in the panner.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>dim = xget("wdim")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the width and the height of the current graphics
-
-                        window <literal>dim = [width, height]</literal>.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>win = xget("window")</term>
-
-                <listitem>
-
-                    <para>
-
-                        Get the current window number <literal>win</literal>.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
             <varlistentry>
-
-                <term>pos = xget("wpos")</term>
-
+                <term>value = xget("fpf")</term>
                 <listitem>
-
                     <para>
-
-                        Get the position of the upper left point of the graphics
-
-                        window <literal>pos = [x, y]</literal>.
-
+                        Get as a string the floating point format for number display in contour
+                        functions. Note that <literal>value</literal> is <literal>""</literal> when
+                        the default format is used.
                     </para>
-
                 </listitem>
-
             </varlistentry>
-
         </variablelist>
-
+        <refsect2>
+            <title>Replacements</title>
+        <screen><![CDATA[
+// SCILAB 3 & 4           SCILAB N > 4
+// ------------           ------------
+xget("window")            gcf().figure_id
+xget("figure")            gcf().figure_id
+xget("wpos")              gcf().figure_position
+xget("wdim")              gcf().figure_size
+xget("wpdim")             gcf().figure_size
+xget("viewport")          gcf().viewport
+xget("wresize")           gcf().auto_resize
+xget("auto clear")        gcf().auto_clear
+
+xget("hidden3d")          gca().hiddencolor
+xget("clipgrf")           bool2s(gca().clip_state=="clipgrf")
+xget("clipoff")           bool2s(gca().clip_state=="off")
+xget("clipping")          gca().clip_box
+xget("background")        gca().background
+xget("foreground")        gca().foreground
+xget("pattern")           gca().foreground
+xget("lastpattern")       size(gcf().color_map,1)
+xget("color")             gca().foreground
+xget("white")             color("white")
+xget("font")              [gca().font_style gca().font_size]
+xget("font size")         gca().font_size
+xget("dashes")            gca().line_style
+xget("line mode")         gca().line_mode
+]]></screen>
+        </refsect2>
     </refsection>
-
     <refsection role="see also">
-
         <title>参照</title>
-
         <simplelist type="inline">
-
             <member>
-
                 <link linkend="xset">xset</link>
-
             </member>
-
             <member>
-
-                <link linkend="getcolor">getcolor</link>
-
+                <link linkend="get">get</link>
             </member>
-
             <member>
-
-                <link linkend="ged">ged</link>
-
+                <link linkend="graphics_entities">graphics entities</link>
             </member>
-
             <member>
-
-                <link linkend="set">set</link>
-
+                <link linkend="gcf">gcf</link>
             </member>
-
             <member>
-
-                <link linkend="graphics_entities">graphics_entities</link>
-
+                <link linkend="gdf">gdf</link>
+            </member>
+            <member>
+                <link linkend="gca">gca</link>
+            </member>
+            <member>
+                <link linkend="gda">gda</link>
+            </member>
+            <member>
+                <link linkend="ged">ged</link>
+            </member>
+            <member>
+                <link linkend="getcolor">getcolor</link>
             </member>
-
         </simplelist>
-
     </refsection>
-
     <refsection>
-
         <title>履歴</title>
-
         <revhistory>
-
             <revision>
-
+                <revnumber>5.0.1</revnumber>
+                <revremark>
+                    The <literal>"alufunction"</literal> property is obsolete. It is no longer
+                    taken into account for graphical renderings. It is replaced with
+                    <literal>gcf().pixel_drawing_mode</literal>.
+                </revremark>
+            </revision>
+            <revision>
                 <revnumber>5.4.0</revnumber>
-
                 <revremark>
-
-                    "alufunction" プロパティはもはやサポートされておらず,
-
-                    このプロパティは Scilab 5.0.1の描画では使用されいません.
-
+                    The <literal>"alufunction"</literal> is no longer supported..
+                </revremark>
+            </revision>
+            <revision>
+                <revnumber>6.0.0</revnumber>
+                <revremark>
+                    Only the <literal>xget("fpf")</literal> syntax is now supported.
                 </revremark>
-
             </revision>
-
         </revhistory>
-
     </refsection>
-
-</refentry>
-
-
-
+</refentry>
\ No newline at end of file
index 1337f2e..2a1fc17 100644 (file)
@@ -1,14 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
-
 <!--
-
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
-
  * Copyright (C) ENPC - Jean-Philippe Chancelier
-
+ * Copyright (C) 2017 - Samuel GOUGEON
  *
-
-
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * This file is hereby licensed under the terms of the GNU GPL v2.0,
  * and continues to be available under such terms.
  * For more information, see the COPYING file which you should have received
  * along with this program.
-
  *
-
  -->
-
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="ja" xml:id="xset">
-
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+    xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+    xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+    xml:lang="ja" xml:id="xset">
     <refnamediv>
-
         <refname>xset</refname>
-
         <refpurpose>
-
-            グラフィックコンテキストの値を設定.
-
-            <emphasis role="bold">この関数は廃止されました.</emphasis>
-
+            グラフィックコンテキストの値を設定. <emphasis role="bold">この関数は廃止されました.</emphasis>
         </refpurpose>
-
     </refnamediv>
-
     <refsynopsisdiv>
-
         <title>呼び出し手順</title>
-
-        <synopsis>xset(choice-name,x1,x2,x3,x4,x5)
-
-            xset()
-
+        <synopsis>
+            xset(choice-name,x1,x2,x3,x4,x5)
         </synopsis>
-
     </refsynopsisdiv>
-
     <refsection>
-
         <title>引数</title>
-
         <variablelist>
-
             <varlistentry>
-
                 <term>choice-name</term>
-
                 <listitem>
-
                     <para>string</para>
-
                 </listitem>
-
             </varlistentry>
-
             <varlistentry>
-
                 <term>x1,...,x5</term>
-
                 <listitem>
-
                     <para>
-
                         <literal>choice-name</literal>に依存
-
                     </para>
-
                 </listitem>
-
             </varlistentry>
-
         </variablelist>
-
     </refsection>
-
     <refsection>
-
         <title>説明</title>
-
-        <para>
-
-            <warning>
-
-                この関数は廃止されました.
-
-            </warning>
-
+        <warning>
+            <emphasis role="bold">この関数は廃止されました</emphasis>.
             替わりにScilabグラフィックオブジェクトの記法を使用してください
-
             (<link linkend="set">set</link> および <link linkend="get">get</link>
-
             関数および<link linkend="graphics_entities">graphics_entities</link>
-
             のヘルプページを参照ください).
-
-        </para>
-
+        </warning>
         <para>
-
             <literal>xset</literal> は現在のウインドウグラフィックコンテキストの
-
             デフォルト値を設定する際に使用されます.
-
-        </para>
-
-        <para>
-
-            引数を指定せずにコールした場合,
-
-            現在の値を表示する選択メニューが作成され,
-
-            トグルボタンにより変更が可能です.
-
-        </para>
-
-        <para>
-
-            現在の色,マーカ,使用するフォントを表示または設定する際には
-
-            <literal>xset()</literal> を使用してください.
-
         </para>
-
-        <para/>
-
         <variablelist>
-
-            <varlistentry>
-
-                <term>xset("auto clear","on"|"off")</term>
-
-                <listitem>
-
-                    <para>
-
-                        グラフィックの自動消去モードの "on" または "off"を切替ます.
-
-                        自動消去モードが"on"の場合,
-
-                        連続的なプロットは重ねて表示されません.
-
-                        つまり,各高レベルグラフィック関数の前に
-
-                        <literal>clf()</literal>処理
-
-                        (グラフィックウインドウが消去され,
-
-                        関連する記録されたグラフィックが消去される)
-
-                        が実行されます.
-
-                        デフォルト値は "off" です.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("background",color)</term>
-
-                <listitem>
-
-                    <para>
-
-                        現在の軸オブジェクトの背景色を設定します.
-
-                        <literal>color</literal>引数は使用する色の
-
-                        カラーマップ添字です.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("clipping",x,y,w,h)</term>
-
-                <listitem>
-
-                    <para>
-
-                        クリッピング領域を設定(プロットが描画される
-
-                        グラフィックウインドウの領域)を
-
-                        矩形(x,y,w,h) (左上の点 幅 高さ)に設定します.
-
-                        この関数は現在のプロットの座標系を使用します.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("color",value)</term>
-
-                <listitem>
-
-                    <para>
-
-                        塗るつぶし用, 線またはテキスト描画関数用のデフォルト色を
-
-                        設定します.
-
-                        <literal>value</literal> は,範囲 [0,whiteid]に
-
-                        投影された整数です.
-
-                        黒塗りつぶしの場合は0,白の場合はwhiteidが使用されます.
-
-                        whiteidの値は
-
-                        <literal>xget("white")</literal>で取得できます.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("colormap",cmap)</term>
-
-                <listitem>
-
-                    <para>
-
-                        Set the colormap as a m x 3 matrix. m is the number of colors.
-
-                        Color number i is given as a 3-uple cmap(i,1), cmap(i,2), cmap(i,3)
-
-                        corresponding respectively to red, green and blue intensity between 0
-
-                        and 1.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("dashes",i)</term>
-
-                <listitem>
-
-                    <para>
-
-                        In black and white mode (<literal>xset("use color",0)</literal>), set
-
-                        the dash style to style i (0 for solid line). In color mode
-
-                        (<literal>xset("use color",1 )</literal>) this is used to set line, mark and
-
-                        text color. This keyword is obsolete, please use
-
-                        <literal>xset('color',i)</literal> or <literal>xset('line style',i)</literal>
-
-                        instead.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("default")</term>
-
-                <listitem>
-
-                    <para>Reset the graphics context to default values.</para>
-
-                </listitem>
-
-            </varlistentry>
-
             <varlistentry>
-
-                <term>xset("font",fontid,fontsize)</term>
-                <listitem>
-                    <para>
-                        Set the current font and its current size.
-                        Note that <literal>fontsize</literal> applies to all fonts not
-                        only <literal>fontid</literal> .
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("font size",fontsize)</term>
-
-                <listitem>
-
-                    <para>Set the fonts size.</para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("foreground",color)</term>
-
-                <listitem>
-
-                    <para>Set the foreground color of the current Axes object.
-
-                        The <literal>color</literal> argument is the colormap index of the color to use.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
                 <term>xset("fpf",string)</term>
-
                 <listitem>
-
                     <para>Set the floating point format for number display in contour
-
                         functions. <literal>string</literal> is a string giving the format in C
-
                         format syntax (for example <literal>string="%.3f"</literal>). Use
-
                         <literal>string=""</literal> to switch back to default format.
-
                     </para>
-
                 </listitem>
-
             </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("hidden3d",colorid)</term>
-                <listitem>
-                    <para>
-                        Set the color number for backward facing faces in
-                        <literal>plot3d</literal>. <literal>colorid=0</literal> zero suppress the
-                        drawing of backward facing faces of 3d objects. This is technically
-                        called 'culling' and speeds up the rendering of closed surfaces.
-                    </para>
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("line mode",type)</term>
-
-                <listitem>
-
-                    <para>This function is used to set the line drawing mode. Absolute
-
-                        mode is set with type=1 and relative mode with type=0. (Warning: the
-
-                        mode type=0 has bugs)
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("line style",value)</term>
-
-                <listitem>
-
-                    <para>Set the current line style (1: solid, &gt;1 for dashed
-
-                        lines).
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("mark",markid,marksize)</term>
-
-                <listitem>
-
-                    <para>Set the current mark and the current mark size. Use
-
-                        <literal>xset()</literal> to see the marks. Note that <literal>marksize</literal>
-
-                        applies to all marks not only <literal>markid</literal> .
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("mark size",marksize)</term>
-
-                <listitem>
-
-                    <para>Set the marks size.</para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("pattern",value)</term>
-
-                <listitem>
-
-                    <para>Set the current pattern for filling functions. value is an
-
-                        integer projected in the interval [0,whiteid]. 0 is used for black
-
-                        filling and whiteid for white. The value of whiteid can be obtained
-
-                        with <literal>xget("white")</literal>. "pattern" is equivalent to
-
-                        "color".
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("thickness",value)</term>
-
-                <listitem>
-
-                    <para>Set the thickness of lines in pixel (0 and 1 have the same
-
-                        meaning: 1 pixel thick).
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("use color",flag)</term>
-
-                <listitem>
-
-                    <para>
-
-                        If flag=1 then <literal>xset("pattern",.)</literal> or
-
-                        <literal>xset("dashes",.)</literal> will be used so as to change the default
-
-                        color for drawing or for filling patterns. If flag=0 then we switch
-
-                        back to the gray and dashes mode.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("viewport",x,y)</term>
-
-                <listitem>
-
-                    <para>Set the position of the panner.</para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("wdim",width,height)</term>
-
-                <listitem>
-
-                    <para>Set the width and the height of the current graphics window.
-
-                        This option is not used by the postscript driver.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("wpdim",width,height)</term>
-
-                <listitem>
-
-                    <para>Sets the width and the height of the current physical graphic
-
-                        window (which can be different from the actual size in mode wresize
-
-                        1). This option is not used by the postscript driver.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("window",window-number)</term>
-
-                <listitem>
-
-                    <para>
-
-                        Set the current window to the window <literal>window-number</literal>
-
-                        and creates the window if it does not exist.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("wpos",x,y)</term>
-
-                <listitem>
-
-                    <para>Set the position of the upper left point of the graphics
-
-                        window.
-
-                    </para>
-
-                </listitem>
-
-            </varlistentry>
-
-            <varlistentry>
-
-                <term>xset("wresize",flag)</term>
-
-                <listitem>
-
-                    <para>If flag=1 then the graphic is automatically resized to fill the
-
-                        graphics window.
-
-                    </para>
-
-                    <programlisting role=""><![CDATA[
-xdel();
-xset("wresize",1);
-plot2d();
-xset("wdim",1000,500)
- ]]></programlisting>
-
-                    <para>If flag=0 the scale of the graphic is left unchanged when the
-
-                        graphics window is resized. Top left panner or keyboard arrows may be
-
-                        used to scroll over the graphic.
-
-                    </para>
-
-                    <programlisting role=""><![CDATA[
-xdel();
-plot2d();
-xset("wresize",0);
-xset("wdim",1000,500)
- ]]></programlisting>
-
-                </listitem>
-
-            </varlistentry>
-
         </variablelist>
-
+        <refsect2>
+            <title>Replacements</title>
+            <para>
+            <literal>xset(..)</literal> returned nothing. Please take care appending a semi-colon
+            after replacement instructions in order to cancel the display of their output.
+            </para>
+        <screen><![CDATA[
+// SCILAB 3 & 4                 SCILAB N>4
+// ------------                 ----------
+xset("default")                 clf("reset")
+
+xset("wpos", [x y])             gcf().figure_position = [x y];
+xset("wpdim", w, h)             gcf().figure_size = [w h];
+xset("wdim", w, h)              gcf().figure_size = [w h];
+xset("wresize", 0|1)  HS        gcf().auto_resize = "off"|"on";
+xset("colormap", CM)            gcf().color_map = CM;
+xset("figure", i)               scf(i);
+xset("window", i)               scf(i);
+xset("viewport", xp,yp)         gcf().viewport = [xp yp];
+
+xset("auto clear","on"|"off")   gca().auto_clear = "on"|"off";
+xset("line mode", 0|1)          gca().line_mode = "off"|"on";
+xset("line style", n)           gca().line_style = n;
+xset("dashes", n)               gca().line_style = n;
+xset("thickness", n)            gca().thickness = n;
+xset("font size", s)            gca().font_size = s;
+xset("font", id, fsize)         set(gca(), "font_style", id, "font_size", fsize);
+xset("mark size", msize)        set(gca(), "mark_size_unit", "tabulated", "mark_size", msize);
+xset("mark", id, msize)         set(gca(), "mark_style", id, "mark_size_unit", "tabulated", "mark_size", msize);
+xset("color", icol)             gca().foreground = icol;
+xset("color", 0)                gca().foreground = -1;
+xset("pattern", icol)           gca().foreground = icol;
+xset("pattern", 0)              gca().foreground = -1;
+xset("foreground", icol)        gca().foreground = icol;
+xset("background", icol)        gca().background = icol;
+xset("hidden3d", icol)          gca().hiddencolor = icol;
+
+xset("clipping", rect)          set(gca(), "clip_box", rect, "clip_state", "on");
+xset("clipgrf")                 gca().clip_state = "clipgrf";
+xset("clipoff")                 gca().clip_state = "off";
+
+xset("alufunction",i)           gcf().pixel_drawing_mode = str(i);
+                                #i   str(i)
+                                --   ------
+                                0 => "clear"
+                                1 => "and"
+                                2 => "andReverse"
+                                3 => "copy"
+                                4 => "andInverted"
+                                5 => "noop"
+                                6 => "xor"
+                                7 => "or"
+                                8 => "nor"
+                                9 => "equiv"
+                                10 => "invert"
+                                11 => "orReverse"
+                                12 => "copyInverted"
+                                13 => "orInverted"
+                                14 => "nand"
+                                15 => "set"
+]]></screen>
+        </refsect2>
     </refsection>
-
-    <refsection>
-
-        <title>参照</title>
-
+    <refsection role="see also">
+        <title>See also</title>
         <simplelist type="inline">
-
             <member>
-
                 <link linkend="xget">xget</link>
-
             </member>
-
             <member>
-
-                <link linkend="getcolor">getcolor</link>
-
+                <link linkend="set">set</link>
             </member>
-
             <member>
-
-                <link linkend="ged">ged</link>
-
+                <link linkend="graphics_entities">graphics entities</link>
             </member>