Mercurial > audlegacy-plugins
annotate src/skins/ui_skinned_monostereo.h @ 2836:fbb17b57229a
fix possible segfault on cleanup
author | Tomasz Mon <desowin@gmail.com> |
---|---|
date | Mon, 14 Jul 2008 11:54:07 +0200 |
parents | 792db8ee6d0a |
children | 963796db51ea |
rev | line source |
---|---|
2587
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
1 /* |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
2 * Audacious - a cross-platform multimedia player |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
3 * Copyright (c) 2007 Tomasz Moń |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
4 * |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
5 * Based on: |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
6 * BMP - Cross-platform multimedia player |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
7 * Copyright (C) 2003-2004 BMP development team. |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
8 * XMMS: |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
9 * Copyright (C) 1998-2003 XMMS development team. |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
10 * |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
11 * This program is free software; you can redistribute it and/or modify |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
12 * it under the terms of the GNU General Public License as published by |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
13 * the Free Software Foundation; under version 3 of the License. |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
14 * |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
15 * This program is distributed in the hope that it will be useful, |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
18 * GNU General Public License for more details. |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
19 * |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
20 * You should have received a copy of the GNU General Public License |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
21 * along with this program. If not, see <http://www.gnu.org/licenses>. |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
22 * |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
23 * The Audacious team does not consider modular code linking to |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
24 * Audacious or using our public API to be a derived work. |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
25 */ |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
26 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
27 #ifndef AUDACIOUS_UI_SKINNED_MONOSTEREO_H |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
28 #define AUDACIOUS_UI_SKINNED_MONOSTEREO_H |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
29 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
30 #include <gtk/gtk.h> |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
31 #include "ui_skin.h" |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
32 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
33 #ifdef __cplusplus |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
34 extern "C" { |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
35 #endif |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
36 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
37 #define UI_SKINNED_MONOSTEREO(obj) GTK_CHECK_CAST (obj, ui_skinned_monostereo_get_type (), UiSkinnedMonoStereo) |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
38 #define UI_SKINNED_MONOSTEREO_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, ui_skinned_monostereo_get_type (), UiSkinnedMonoStereoClass) |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
39 #define UI_SKINNED_IS_MONOSTEREO(obj) GTK_CHECK_TYPE (obj, ui_skinned_monostereo_get_type ()) |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
40 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
41 typedef struct _UiSkinnedMonoStereo UiSkinnedMonoStereo; |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
42 typedef struct _UiSkinnedMonoStereoClass UiSkinnedMonoStereoClass; |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
43 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
44 struct _UiSkinnedMonoStereo { |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
45 GtkWidget widget; |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
46 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
47 gint x, y, width, height; |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
48 gint num_channels; |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
49 SkinPixmapId skin_index; |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
50 gboolean scaled; |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
51 }; |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
52 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
53 struct _UiSkinnedMonoStereoClass { |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
54 GtkWidgetClass parent_class; |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
55 void (* scaled) (UiSkinnedMonoStereo *menurow); |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
56 }; |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
57 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
58 GtkWidget* ui_skinned_monostereo_new (GtkWidget *fixed, gint x, gint y, SkinPixmapId si); |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
59 GtkType ui_skinned_monostereo_get_type(void); |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
60 void ui_skinned_monostereo_set_num_channels(GtkWidget *widget, gint nch); |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
61 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
62 #ifdef __cplusplus |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
63 } |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
64 #endif |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
65 |
792db8ee6d0a
add ui_skinned_monostereo and ui_skinned_playstatus
Tomasz Mon <desowin@gmail.com>
parents:
diff
changeset
|
66 #endif /* AUDACIOUS_UI_SKINNED_MONOSTEREO_H */ |