1 /* the rhs of a row ... group together everything to the right of the 2 * button 3 */ 4 5 /* 6 7 Copyright (C) 1991-2003 The National Gallery 8 9 This program is free software; you can redistribute it and/or modify 10 it under the terms of the GNU General Public License as published by 11 the Free Software Foundation; either version 2 of the License, or 12 (at your option) any later version. 13 14 This program is distributed in the hope that it will be useful, 15 but WITHOUT ANY WARRANTY; without even the implied warranty of 16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 GNU General Public License for more details. 18 19 You should have received a copy of the GNU General Public License along 20 with this program; if not, write to the Free Software Foundation, Inc., 21 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 22 23 */ 24 25 /* 26 27 These files are distributed with VIPS - http://www.vips.ecs.soton.ac.uk 28 29 */ 30 31 #define TYPE_RHS (rhs_get_type()) 32 #define RHS( obj ) \ 33 (G_TYPE_CHECK_INSTANCE_CAST( (obj), TYPE_RHS, Rhs )) 34 #define RHS_CLASS( klass ) \ 35 (G_TYPE_CHECK_CLASS_CAST( (klass), TYPE_RHS, RhsClass)) 36 #define IS_RHS( obj ) \ 37 (G_TYPE_CHECK_INSTANCE_TYPE( (obj), TYPE_RHS )) 38 #define IS_RHS_CLASS( klass ) \ 39 (G_TYPE_CHECK_CLASS_TYPE( (klass), TYPE_RHS )) 40 #define RHS_GET_CLASS( obj ) \ 41 (G_TYPE_INSTANCE_GET_CLASS( (obj), TYPE_RHS, RhsClass )) 42 43 /* Which children are visible. 44 */ 45 typedef enum { 46 RHS_GRAPHIC = 1, /* Graphical display */ 47 RHS_SCOL = 2, /* Class browser display */ 48 RHS_ITEXT = 4 /* Textual display */ 49 } RhsFlags; 50 51 struct _Rhs { 52 Heapmodel parent_class; 53 54 int vislevel; /* Visibility level */ 55 RhsFlags flags; /* Which children we want visible */ 56 57 Model *graphic; /* Graphic display ... toggle/slider/etc */ 58 Model *scol; /* Class display */ 59 Model *itext; /* Text display */ 60 }; 61 62 typedef struct _RhsClass { 63 HeapmodelClass parent_class; 64 65 /* My methods. 66 */ 67 } RhsClass; 68 69 GType rhs_get_type( void ); 70 Rhs *rhs_new( Row *row ); 71 72 void rhs_set_vislevel( Rhs *rhs, int vislevel ); 73 void rhs_vislevel_up( Rhs *rhs ); 74 void rhs_vislevel_down( Rhs *rhs ); 75 76 gboolean rhs_child_edited( Rhs *rhs ); 77