Added some missing headers reported by /usr/lib/build/checks-data/check_gcc_output
[scilab.git] / scilab / modules / graphics / src / c / getHandleProperty / get_axes_reverse_property.c
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) 2004-2006 - INRIA - Fabrice Leray
4  * Copyright (C) 2006 - INRIA - Allan Cornet
5  * Copyright (C) 2006 - INRIA - Jean-Baptiste Silvy
6  * 
7  * This file must be used under the terms of the CeCILL.
8  * This source file is licensed as described in the file COPYING, which
9  * you should have received as part of this distribution.  The terms
10  * are also available at    
11  * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
12  *
13  */
14
15 /*------------------------------------------------------------------------*/
16 /* file: get_axes_reverse_property.c                                      */
17 /* desc : function to retrieve in Scilab the axes_reverse field of        */
18 /*        a handle                                                        */
19 /*------------------------------------------------------------------------*/
20 #include <string.h>
21 #include "getHandleProperty.h"
22 #include "GetProperty.h"
23 #include "returnProperty.h"
24 #include "Scierror.h"
25 #include "localization.h"
26 #include "MALLOC.h"
27
28 /*------------------------------------------------------------------------*/
29 int get_axes_reverse_property( sciPointObj * pobj )
30 {
31
32   char * axes_reverse[3]  = { NULL, NULL, NULL } ;
33   int i ;
34   int status = -1 ;
35
36   if ( sciGetEntityType (pobj) != SCI_SUBWIN )
37   {
38     Scierror(999, _("'%s' property does not exist for this handle.\n"),"axes_reverse") ;
39     return -1 ;
40   }
41
42   for ( i = 0 ; i < 3 ; i++ )
43   {
44     axes_reverse[i] = MALLOC( 4 * sizeof(char) ) ;
45     if ( axes_reverse[i] == NULL )
46     {
47       int j ;
48       for ( j = 0 ; j < i ; j++ )
49       {
50         FREE( axes_reverse[j] ) ;
51                                 Scierror(999, _("%s: No more memory.\n"),"get_axes_reverse_property");
52         return -1 ;
53       }
54     }
55     if ( pSUBWIN_FEATURE (pobj)->axes.reverse[i] )
56     {
57       strcpy( axes_reverse[i], "on" ) ;
58     }
59     else
60     {
61       strcpy( axes_reverse[i], "off" ) ;
62     }
63   }
64
65   status = sciReturnRowStringVector( axes_reverse, 3 ) ;
66
67   for ( i = 0 ; i < 3 ; i++ )
68   {
69     FREE( axes_reverse[i] ) ;
70   }
71
72   return status ;
73 }
74 /*------------------------------------------------------------------------*/