xcos_toolbox_skeleton: loadXcosLibs at startup
[scilab.git] / scilab / contrib / xcos_toolbox_skeleton / etc / xcos_toolbox_skeleton.start
1 // Copyright (C) 2011 - DIGITEO
2
3 // This file is released under the 3-clause BSD license. See COPYING-BSD.
4
5 function xcos_skeletonlib = startModule()
6
7   mprintf("Start Xcos toolbox skeleton\n");
8
9   if isdef("xcos_toolbox_skeletonlib") then
10     warning("Xcos toolbox skeleton library is already loaded");
11     return;
12   end
13
14 // check minimal version (xcosPal required)
15 // =============================================================================
16   if ~isdef('xcosPal') then
17     // and xcos features required
18     error(gettext('Scilab 5.3.2 or more is required.'));
19   end
20 // =============================================================================
21 // force to load some libraries (dependancies)
22   loadXcosLibs(); loadScicos();
23 // =============================================================================
24   etc_tlbx  = get_absolute_file_path("xcos_toolbox_skeleton.start");
25   etc_tlbx  = getshortpathname(etc_tlbx);
26   root_tlbx = strncpy( etc_tlbx, length(etc_tlbx)-length("\etc\") );
27
28 // Load functions library
29 // =============================================================================
30   mprintf("\tLoad macros\n");
31   pathmacros = pathconvert( root_tlbx ) + "macros" + filesep();
32   xcos_skeletonlib = lib(pathmacros);
33
34 // Add blocks to the Xcos palette
35 // =============================================================================
36   mprintf("\tLoad palette\n");
37   exec(pathconvert(root_tlbx+"/macros/loader_pal.sce", %f));
38
39 // Load simulation functions
40 // =============================================================================
41   mprintf("\tLoad simulations functions\n");
42   verboseMode = ilib_verbose();
43   ilib_verbose(0);
44   exec(pathconvert(root_tlbx+"/src/c/loader.sce", %f));
45   ilib_verbose(verboseMode);
46
47 // load gateways
48 // =============================================================================
49   mprintf("\tLoad gateways\n");
50   verboseMode = ilib_verbose();
51   ilib_verbose(0);
52   exec(pathconvert(root_tlbx+"/sci_gateway/loader_gateway.sce", %f));
53   ilib_verbose(verboseMode);
54
55 // Load and add help chapter
56 // =============================================================================
57   if or(getscilabmode() == ["NW";"STD"]) then
58     mprintf("\tLoad help\n");
59     path_addchapter = pathconvert(root_tlbx+"/jar");
60     if ( isdir(path_addchapter) <> [] ) then
61         add_help_chapter("Xcos toolbox skeleton", path_addchapter, %F);
62     end
63   end
64
65 // Load demos
66 // =============================================================================
67   if or(getscilabmode() == ["NW";"STD"]) then
68     mprintf("\tLoad demos\n");
69     pathdemos = pathconvert(root_tlbx+"/demos/xcos_toolbox_skeleton.dem.gateway.sce", %F, %T);
70     add_demo("Xcos toolbox skeleton", pathdemos);
71   end
72
73 endfunction
74
75 if with_module('xcos') then
76   xcos_skeletonlib = startModule();
77   clear startModule; // remove startModule on stack
78 end