~ubuntu-branches/debian/stretch/alarm-clock-applet/stretch

« back to all changes in this revision

Viewing changes to src/util.c

  • Committer: Bazaar Package Importer
  • Author(s): Chow Loong Jin
  • Date: 2010-03-17 09:02:44 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20100317090244-ni0ye04mva2hxe10
Tags: 0.3.0-1
* New upstream release
* debian/control:
  + No change bump of Standards-Version to 3.8.4
  + Update build-deps:
    - Drop libglade, libpanel-applet, libgnomevfs2, libgnome{2,ui}
    - Add libxml2-dev and libunique-dev, intltool
* debian/patches/01_update-alarms-eta,patch:
  + Dropped, applied upstream
* debian/(alarm-clock-applet.1, alarm-clock-applet.manpages):
  + Add manpage for alarm-clock-applet, now that the binary is moved to
    /usr/bin.

Show diffs side-by-side

added added

removed removed

Lines of Context:
121
121
    return FALSE;
122
122
}
123
123
 
 
124
 
 
125
/*
 
126
 * Get full path to a data file
 
127
 */
 
128
char *
 
129
alarm_applet_get_data_path (const char *name)
 
130
{
 
131
    char *filename;
 
132
 
 
133
#ifdef ALARM_CLOCK_RUN_IN_SOURCE_TREE
 
134
    /* Try the file in the source tree first */
 
135
    filename = g_build_filename ("..", "data", name, NULL);
 
136
    g_debug("filename: %s", filename);
 
137
    if (g_file_test (filename, G_FILE_TEST_EXISTS) == FALSE)
 
138
    {
 
139
        g_free (filename);
 
140
        /* Try the local file */
 
141
        filename = g_build_filename (ALARM_CLOCK_PKGDATADIR, name, NULL);
 
142
 
 
143
        if (g_file_test (filename, G_FILE_TEST_EXISTS) == FALSE)
 
144
        {
 
145
            g_free (filename);
 
146
            return NULL;
 
147
        }
 
148
    }
 
149
#else
 
150
    filename = g_build_filename (ALARM_CLOCK_PKGDATADIR, name, NULL);
 
151
#endif
 
152
 
 
153
    return filename;
 
154
}
 
155
 
 
156
/**
 
157
 * Block signal handlers by signal name
 
158
 */
 
159
guint
 
160
block_signal_handlers_by_name (gpointer instance, const gchar *signal_name)
 
161
{
 
162
    guint signal_id;
 
163
 
 
164
    signal_id = g_signal_lookup (signal_name, G_OBJECT_TYPE (instance));
 
165
 
 
166
    g_warn_if_fail (signal_id);
 
167
    g_return_val_if_fail (signal_id, 0);
 
168
 
 
169
    return g_signal_handlers_block_matched (instance, G_SIGNAL_MATCH_ID,
 
170
        signal_id, 0, NULL, NULL, NULL);
 
171
}
 
172
 
 
173
/**
 
174
 * Unblock signal handlers by signal name
 
175
 */
 
176
guint
 
177
unblock_signal_handlers_by_name (gpointer instance, const gchar *signal_name)
 
178
{
 
179
    guint signal_id;
 
180
 
 
181
    signal_id = g_signal_lookup (signal_name, G_OBJECT_TYPE (instance));
 
182
 
 
183
    g_warn_if_fail (signal_id);
 
184
    g_return_val_if_fail (signal_id, 0);
 
185
 
 
186
    return g_signal_handlers_unblock_matched (instance, G_SIGNAL_MATCH_ID,
 
187
        signal_id, 0, NULL, NULL, NULL);
 
188
}
 
189
 
 
190
guint
 
191
block_list (GList *instances, gpointer func)
 
192
{
 
193
    guint blocked = 0;
 
194
    GList *l = NULL;
 
195
 
 
196
    for (l = instances; l != NULL; l = l->next) {
 
197
        blocked += BLOCK (l->data, func);
 
198
    }
 
199
 
 
200
    return blocked;
 
201
}
 
202
 
 
203
guint
 
204
unblock_list (GList *instances, gpointer func)
 
205
{
 
206
    guint unblocked = 0;
 
207
    GList *l = NULL;
 
208
 
 
209
    for (l = instances; l != NULL; l = l->next) {
 
210
        unblocked += UNBLOCK (l->data, func);
 
211
    }
 
212
 
 
213
    return unblocked;
 
214
}