* Bug #8060 fixed - Improve the display of a list in the variable browser.
[scilab.git] / scilab / modules / types / src / java / org / scilab / modules / types / ScilabTypeEnumDescription.java
1 /*
2  *  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  *  Copyright (C) 2011-2011 - DIGITEO - Sylvestre LEDRU
4  *  Copyright (C) 2012 - Scilab Enterprises - Sylvestre LEDRU
5  *
6  *  This file must be used under the terms of the CeCILL.
7  *  This source file is licensed as described in the file COPYING, which
8  *  you should have received as part of this distribution.  The terms
9  *  are also available at
10  *  http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
11  *
12  */
13
14 package org.scilab.modules.types;
15
16 import org.scilab.modules.localization.Messages;
17
18 public class ScilabTypeEnumDescription {
19
20     public static String getTypeDescriptionFromId(int type) {
21         try {
22             switch (ScilabTypeEnum.swigToEnum(type)) {
23                 case sci_matrix:
24                     return Messages.gettext("Double");
25                 case sci_poly:
26                     return Messages.gettext("Polynomial");
27                 case sci_boolean:
28                     return Messages.gettext("Boolean");
29                 case sci_sparse:
30                     return Messages.gettext("Sparse");
31                 case sci_boolean_sparse:
32                     return Messages.gettext("Boolean Sparse");
33                 case sci_matlab_sparse:
34                     return Messages.gettext("Matlab Sparse");
35                 case sci_ints:
36                     return Messages.gettext("Integer");
37                 case sci_handles:
38                     return Messages.gettext("Graphic handle");
39                 case sci_strings:
40                     return Messages.gettext("String");
41                 case sci_u_function:
42                     return Messages.gettext("User function");
43                 case sci_c_function:
44                     return Messages.gettext("Compiled function");
45                 case sci_lib:
46                     return Messages.gettext("Function library");
47                 case sci_list:
48                     return Messages.gettext("List");
49                 case sci_tlist:
50                     return Messages.gettext("Tlist");
51                 case sci_mlist:
52                     return Messages.gettext("Mlist");
53                 case sci_pointer:
54                     return Messages.gettext("Pointer");
55                 case sci_implicit_poly:
56                     return Messages.gettext("Implicit polynomial");
57                 case sci_intrinsic_function:
58                     return Messages.gettext("Intrinsic function");
59             }
60             return Messages.gettext("Unknown datatype");
61
62         } catch (IllegalArgumentException e) {
63             return Messages.gettext("Unknown datatype");
64         }
65     }
66
67     /*
68      * Return the description of the mlist code ('ce' => 'cell', 'st => 'struct', etc)
69      * @param shortCode the short code
70      * @return the full description
71      */
72     public static String getListTypeDescription (String shortCode) {
73         // Once we switch to Java 7, we can replace that by a String switch
74         if (shortCode.equals("ce")) {
75             shortCode = "cell";
76         } else {
77             if (shortCode.equals("st")) {
78                 shortCode = "struct";
79             } else {
80                 if (shortCode.equals("fptr")) {
81                     shortCode = "built-in";
82                 }
83             }
84         }
85         return shortCode;
86     }
87 }