1 /* 2 * Copyright (C) 2002 2003 2004, Magnus Hjorth 3 * 4 * This file is part of mhWaveEdit. 5 * 6 * mhWaveEdit is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2 of the License, or 9 * (at your option) any later version. 10 * 11 * mhWaveEdit is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 * GNU General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with mhWaveEdit; if not, write to the Free Software 18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 19 */ 20 21 22 #ifndef VU_METER_H_INCLUDED 23 #define VU_METER_H_INCLUDED 24 25 #include <gtk/gtk.h> 26 27 #define VU_METER(obj) GTK_CHECK_CAST(obj,vu_meter_get_type(),VuMeter) 28 #define VU_METER_CLASS(klass) GTK_CHECK_CLASS_CAST(klass,vu_meter_get_type(),VuMeterClass) 29 #define IS_VU_METER(obj) GTK_CHECK_TYPE(obj,vu_meter_get_type()) 30 31 typedef struct { 32 GtkDrawingArea da; 33 gfloat value; /* Between 0 and 1 */ 34 gfloat goal; 35 GTimeVal valuetime; 36 } VuMeter; 37 38 typedef struct { 39 GtkDrawingAreaClass dac; 40 } VuMeterClass; 41 42 GtkType vu_meter_get_type(void); 43 GtkWidget *vu_meter_new(gfloat value); 44 void vu_meter_set_value(VuMeter *v, gfloat value); 45 void vu_meter_update(VuMeter *v); 46 47 #endif 48