1 /* a rowview in a workspace ... part of a tallycolumn, not a separate widget 2 */ 3 4 /* 5 6 Copyright (C) 1991-2003 The National Gallery 7 8 This program is free software; you can redistribute it and/or modify 9 it under the terms of the GNU General Public License as published by 10 the Free Software Foundation; either version 2 of the License, or 11 (at your option) any later version. 12 13 This program is distributed in the hope that it will be useful, 14 but WITHOUT ANY WARRANTY; without even the implied warranty of 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 GNU General Public License for more details. 17 18 You should have received a copy of the GNU General Public License along 19 with this program; if not, write to the Free Software Foundation, Inc., 20 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 21 22 */ 23 24 /* 25 26 These files are distributed with VIPS - http://www.vips.ecs.soton.ac.uk 27 28 */ 29 30 #define TYPE_ROWVIEW (rowview_get_type()) 31 #define ROWVIEW( obj ) \ 32 (GTK_CHECK_CAST( (obj), TYPE_ROWVIEW, Rowview )) 33 #define ROWVIEW_CLASS( klass ) \ 34 (GTK_CHECK_CLASS_CAST( (klass), TYPE_ROWVIEW, RowviewClass )) 35 #define IS_ROWVIEW( obj ) (GTK_CHECK_TYPE( (obj), TYPE_ROWVIEW )) 36 #define IS_ROWVIEW_CLASS( klass ) \ 37 (GTK_CHECK_CLASS_TYPE( (klass), TYPE_ROWVIEW )) 38 39 struct _Rowview { 40 View view; 41 42 Subcolumnview *sview; /* Enclosing subcolumnview */ 43 44 Rhsview *rhsview; /* Our rhs */ 45 46 gboolean visible; /* Currently visible */ 47 int rnum; /* Row of tallycolumn we are in */ 48 49 GtkWidget *spin; /* Class display open/close widgets */ 50 GtkWidget *but; /* Name button */ 51 GtkWidget *led; /* Indicators */ 52 GtkWidget *label; /* Name label */ 53 54 char *last_tooltip; /* Last tooltip we set */ 55 }; 56 57 typedef struct _RowviewClass { 58 ViewClass parent_class; 59 60 /* My methods. 61 */ 62 } RowviewClass; 63 64 guint rowview_menu_attach( Rowview *rview, GtkWidget *widget ); 65 66 GtkType rowview_get_type( void ); 67 View *rowview_new( void ); 68 69 void rowview_get_position( Rowview *rview, int *x, int *y, int *w, int *h ); 70 void rowview_set_visible( Rowview *rview, gboolean visible ); 71 gboolean rowview_get_visible( Rowview *rview ); 72