~ubuntu-branches/ubuntu/vivid/ekiga/vivid-proposed

« back to all changes in this revision

Viewing changes to lib/gui/gmlevelmeter.h

  • Committer: Bazaar Package Importer
  • Author(s): Kilian Krause
  • Date: 2011-07-17 00:24:50 UTC
  • mfrom: (5.1.5 upstream) (7.1.7 sid)
  • Revision ID: james.westby@ubuntu.com-20110717002450-ytg3wsrc1ptd3153
Tags: 3.3.1-1
* New upstream release.
 - Required libpt-dev 2.10 and libopal-dev 3.10
* Fix debian/watch to catch new version
* Remove libnotify0.7.patch - included upstream
* Add libboost-dev and libboost-signals-dev to Build-Depends
* debian/rules: Don't install *.la files for new internal shared libs
* Fix Vcs URIs to point to correct desktop/experimental/ekiga tree

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
 
2
2
/* Ekiga -- A VoIP and Video-Conferencing application
3
 
 * Copyright (C) 2000-2006 Damien Sandras
 
3
 * Copyright (C) 2000-2009 Damien Sandras <dsandras@seconix.com>
4
4
 *
5
5
 * This program is free software; you can redistribute it and/or modify
6
6
 * it under the terms of the GNU General Public License as published by
36
36
 */
37
37
 
38
38
 
39
 
#ifndef __GTK_LEVELMETER_H__
40
 
#define __GTK_LEVELMETER_H__
41
 
 
42
 
#include <gdk/gdk.h>
43
 
#include <gtk/gtkwidget.h>
44
 
 
45
 
#include <stdlib.h>
46
 
 
 
39
#ifndef __GM_LEVEL_METER_H__
 
40
#define __GM_LEVEL_METER_H__
 
41
 
 
42
#include <gtk/gtk.h>
47
43
 
48
44
G_BEGIN_DECLS
49
45
 
50
 
#define GTK_LEVELMETER(obj) GTK_CHECK_CAST (obj, gtk_levelmeter_get_type (), GtkLevelMeter)
51
 
#define GTK_LEVELMETER_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, gtk_levelmeter_get_type (), GtkLevelMeterClass)
52
 
#define GTK_IS_LEVELMETER(obj) GTK_CHECK_TYPE (obj, gtk_levelmeter_get_type ())
53
 
 
54
 
 
55
 
typedef struct _GtkLevelMeter GtkLevelMeter;
56
 
typedef struct _GtkLevelMeterClass GtkLevelMeterClass;
57
 
 
58
 
 
59
 
typedef enum
60
 
{
61
 
  GTK_METER_LEFT_TO_RIGHT,
62
 
  GTK_METER_BOTTOM_TO_TOP
63
 
} GtkLevelMeterOrientation;
64
 
 
65
 
 
66
 
struct _GtkLevelMeter
 
46
typedef struct _GmLevelMeter GmLevelMeter;
 
47
typedef struct _GmLevelMeterPrivate GmLevelMeterPrivate;
 
48
typedef struct _GmLevelMeterClass GmLevelMeterClass;
 
49
 
 
50
 
 
51
struct _GmLevelMeter
67
52
{
68
53
  GtkWidget widget;
69
54
 
70
 
  /* Orientation of the level meter */
71
 
  GtkLevelMeterOrientation orientation;
72
 
 
73
 
  /* show a peak indicator */
74
 
  gboolean showPeak;
75
 
 
76
 
  /* show a continous or a segmented (LED like) display */
77
 
  gboolean isSegmented;
78
 
 
79
 
  /* The ranges of different color of the display */
80
 
  GArray* colorEntries;
81
 
 
82
 
  /* The pixmap for double buffering */
83
 
  GdkPixmap* offscreen_image;
84
 
 
85
 
  /* The pixmap with the highlighted bar */
86
 
  GdkPixmap* offscreen_image_hl;
87
 
 
88
 
  /* The pixmap with the dark bar */
89
 
  GdkPixmap* offscreen_image_dark;
90
 
 
91
 
  /* The levels */
92
 
  gfloat level, peak;
 
55
  GmLevelMeterPrivate* priv;
93
56
};
94
57
 
95
58
 
96
 
struct _GtkLevelMeterClass
 
59
struct _GmLevelMeterClass
97
60
{
98
61
  GtkWidgetClass parent_class;
99
62
};
100
63
 
101
64
 
102
 
struct _GtkLevelMeterColorEntry
 
65
typedef struct _GmLevelMeterColorEntry GmLevelMeterColorEntry;
 
66
 
 
67
struct _GmLevelMeterColorEntry
103
68
{
104
69
  GdkColor color;
105
70
  gfloat stopvalue;
107
72
};
108
73
 
109
74
 
110
 
typedef struct _GtkLevelMeterColorEntry GtkLevelMeterColorEntry;
111
 
 
112
75
/* DESCRIPTION  :  /
113
76
 * BEHAVIOR     :  Creates a new VU meter
114
77
 * PRE          :  /
115
78
 */
116
 
GtkWidget *gtk_levelmeter_new (void);
117
 
 
118
 
/* DESCRIPTION  :  /
119
 
 * BEHAVIOR     :  Get the GType 
120
 
 * PRE          :  /
121
 
 */
122
 
GType gtk_levelmeter_get_type (void);
 
79
GtkWidget *gm_level_meter_new (void);
123
80
 
124
81
/* DESCRIPTION  :  /
125
82
 * BEHAVIOR     :  Set new values for level.
126
83
 * PRE          :  Level should be between 0.0 and 1.0,
127
84
 *                 lower/higher values are clamped.
128
85
 */
129
 
void gtk_levelmeter_set_level (GtkLevelMeter *, 
130
 
                               gfloat);
131
 
 
 
86
void gm_level_meter_set_level (GmLevelMeter *meter,
 
87
                               gfloat level);
132
88
 
133
89
/* DESCRIPTION  :  /
134
90
 * BEHAVIOR     :  Clear the GtkLevelMeter.
135
91
 * PRE          :  /
136
92
 */
137
 
void gtk_levelmeter_clear (GtkLevelMeter *);
 
93
void gm_level_meter_clear (GmLevelMeter *meter);
138
94
 
139
95
 
140
96
/* DESCRIPTION  :  /
146
102
 *                 of the array is stored, so the array given as an argument
147
103
 *                 can be deleted after the function call.
148
104
 */
149
 
void gtk_levelmeter_set_colors (GtkLevelMeter *,
150
 
                                GArray *);
 
105
void gm_levelmeter_set_colors (GmLevelMeter *meter,
 
106
                               GArray *colors);
 
107
 
 
108
/* GObject boilerplate */
 
109
 
 
110
GType gm_level_meter_get_type (void);
 
111
 
 
112
#define GM_TYPE_LEVEL_METER         (gm_level_meter_get_type ())
 
113
#define GM_LEVEL_METER(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), GM_TYPE_LEVEL_METER, GmLevelMeter))
 
114
#define GM_LEVEL_METER_CLASS(k)     (G_TYPE_CHECK_CLASS_CAST((k), GM_TYPE_LEVEL_METER, GmLevelMeterClass))
 
115
#define GM_IS_LEVEL_METER(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), GM_TYPE_LEVEL_METER))
 
116
#define GM_IS_LEVEL_METER_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), GM_TYPE_LEVEL_METER))
 
117
#define GM_LEVEL_METER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GM_TYPE_LEVEL_METER, GmLevelMeterClass))
151
118
 
152
119
G_END_DECLS
153
120
 
154
 
#endif /* __GTK_LEVELMETER_H__ */
 
121
#endif