Prefs: add a function preferences()
[scilab.git] / scilab / modules / preferences / sci_gateway / c / gw_preferences.c
1 /*
2  *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  *  Copyright (C) 2011 - DIGITEO - Calixte DENIZET
4  *
5  *  This file must be used under the terms of the CeCILL.
6  *  This source file is licensed as described in the file COPYING, which
7  *  you should have received as part of this distribution.  The terms
8  *  are also available at
9  *  http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
10  *
11  */
12 /*--------------------------------------------------------------------------*/
13 #include "gw_preferences.h"
14 #include "api_scilab.h"
15 #include "callFunctionFromGateway.h"
16 #include "BOOL.h"
17 #include "scilabmode.h"
18 #include "localization.h"
19 #include "Scierror.h"
20 #include "BOOL.h"
21 #include "loadOnUseClassPath.h"
22 /*--------------------------------------------------------------------------*/
23 static BOOL loadedDep = FALSE;
24 /*--------------------------------------------------------------------------*/
25 static gw_generic_table Tab[] =
26 {
27     {sci_addModulePreferences, "addModulePreferences"},
28     {sci_removeModulePreferences, "removeModulePreferences"},
29     {sci_preferences, "preferences"}
30 };
31 /*--------------------------------------------------------------------------*/
32 int gw_preferences(void)
33 {
34     Rhs = Max(0, Rhs);
35
36     if ( getScilabMode() == SCILAB_NWNI)
37     {
38         Scierror(999, _("Scilab '%s' module disabled in -nogui or -nwni mode.\n"), "preferences");
39         return 0;
40     }
41
42     if (!loadedDep)
43     {
44         loadOnUseClassPath("preferences");
45         loadedDep = TRUE;
46     }
47     callFunctionFromGateway(Tab, SIZE_CURRENT_GENERIC_TABLE(Tab));
48     return 0;
49 }
50 /*--------------------------------------------------------------------------*/