/[pcsx2_0.9.7]/branch/debug/0.X/0.9.X/0.9.7/r3113/plugins/CDVDiso/src/Linux/support.c
ViewVC logotype

Annotation of /branch/debug/0.X/0.9.X/0.9.7/r3113/plugins/CDVDiso/src/Linux/support.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 59 - (hide annotations) (download)
Tue Sep 7 06:17:51 2010 UTC (10 years, 9 months ago) by william
File MIME type: text/plain
File size: 3671 byte(s)
create working branch for pcsx2-0.9.7-r3113-debug
1 william 31 /*
2     * DO NOT EDIT THIS FILE - it is generated by Glade.
3     */
4    
5     #ifdef HAVE_CONFIG_H
6     # include <config.h>
7     #endif
8    
9     #include <sys/types.h>
10     #include <sys/stat.h>
11     #include <unistd.h>
12     #include <string.h>
13     #include <stdio.h>
14    
15     #include <gtk/gtk.h>
16    
17     #include "support.h"
18    
19     GtkWidget*
20     lookup_widget (GtkWidget *widget,
21     const gchar *widget_name)
22     {
23     GtkWidget *parent, *found_widget;
24    
25     for (;;)
26     {
27     if (GTK_IS_MENU (widget))
28     parent = gtk_menu_get_attach_widget (GTK_MENU (widget));
29     else
30     parent = widget->parent;
31     if (!parent)
32     parent = (GtkWidget*) g_object_get_data (G_OBJECT (widget), "GladeParentKey");
33     if (parent == NULL)
34     break;
35     widget = parent;
36     }
37    
38     found_widget = (GtkWidget*) g_object_get_data (G_OBJECT (widget),
39     widget_name);
40     if (!found_widget)
41     g_warning ("Widget not found: %s", widget_name);
42     return found_widget;
43     }
44    
45     static GList *pixmaps_directories = NULL;
46    
47     /* Use this function to set the directory containing installed pixmaps. */
48     void
49     add_pixmap_directory (const gchar *directory)
50     {
51     pixmaps_directories = g_list_prepend (pixmaps_directories,
52     g_strdup (directory));
53     }
54    
55     /* This is an internally used function to find pixmap files. */
56     static gchar*
57     find_pixmap_file (const gchar *filename)
58     {
59     GList *elem;
60    
61     /* We step through each of the pixmaps directory to find it. */
62     elem = pixmaps_directories;
63     while (elem)
64     {
65     gchar *pathname = g_strdup_printf ("%s%s%s", (gchar*)elem->data,
66     G_DIR_SEPARATOR_S, filename);
67     if (g_file_test (pathname, G_FILE_TEST_EXISTS))
68     return pathname;
69     g_free (pathname);
70     elem = elem->next;
71     }
72     return NULL;
73     }
74    
75     /* This is an internally used function to create pixmaps. */
76     GtkWidget*
77     create_pixmap (GtkWidget *widget,
78     const gchar *filename)
79     {
80     gchar *pathname = NULL;
81     GtkWidget *pixmap;
82    
83     if (!filename || !filename[0])
84     return gtk_image_new ();
85    
86     pathname = find_pixmap_file (filename);
87    
88     if (!pathname)
89     {
90     g_warning (_("Couldn't find pixmap file: %s"), filename);
91     return gtk_image_new ();
92     }
93    
94     pixmap = gtk_image_new_from_file (pathname);
95     g_free (pathname);
96     return pixmap;
97     }
98    
99     /* This is an internally used function to create pixmaps. */
100     GdkPixbuf*
101     create_pixbuf (const gchar *filename)
102     {
103     gchar *pathname = NULL;
104     GdkPixbuf *pixbuf;
105     GError *error = NULL;
106    
107     if (!filename || !filename[0])
108     return NULL;
109    
110     pathname = find_pixmap_file (filename);
111    
112     if (!pathname)
113     {
114     g_warning (_("Couldn't find pixmap file: %s"), filename);
115     return NULL;
116     }
117    
118     pixbuf = gdk_pixbuf_new_from_file (pathname, &error);
119     if (!pixbuf)
120     {
121     fprintf (stderr, "Failed to load pixbuf file: %s: %s\n",
122     pathname, error->message);
123     g_error_free (error);
124     }
125     g_free (pathname);
126     return pixbuf;
127     }
128    
129     /* This is used to set ATK action descriptions. */
130     void
131     glade_set_atk_action_description (AtkAction *action,
132     const gchar *action_name,
133     const gchar *description)
134     {
135     gint n_actions, i;
136    
137     n_actions = atk_action_get_n_actions (action);
138     for (i = 0; i < n_actions; i++)
139     {
140     if (!strcmp (atk_action_get_name (action, i), action_name))
141     atk_action_set_description (action, i, description);
142     }
143     }
144    

  ViewVC Help
Powered by ViewVC 1.1.22