302 |
{ |
{ |
303 |
preferences.viewb4 = 0; |
preferences.viewb4 = 0; |
304 |
preferences.b4x = 10; |
preferences.b4x = 10; |
305 |
preferences.b4y = 30; |
preferences.b4y = 30; |
306 |
preferences.b4width = 500; |
preferences.b4width = 500; |
307 |
preferences.b4height = 300; |
preferences.b4height = 300; |
308 |
} |
} |
309 |
|
|
310 |
hpaned = lookup_widget (mainwindow, "hpaned"); |
hpaned = lookup_widget (mainwindow, "hpaned"); |
752 |
return (FALSE); |
return (FALSE); |
753 |
} |
} |
754 |
|
|
|
static gchar * |
|
|
strshift (gchar * str, size_t shift) |
|
|
{ |
|
|
gchar *start, *stop; |
|
|
|
|
|
start = str; |
|
|
stop = str + strlen (str); |
|
|
memmove (start + shift, start, stop - start + 1); |
|
|
|
|
|
return (str + shift); |
|
|
} |
|
|
|
|
|
|
|
755 |
gchar * |
gchar * |
756 |
my_strreplace (gchar * str, const gchar * from, const gchar * to) |
my_strreplace(const char *str, const char *delimiter, const char *replacement) |
757 |
{ |
{ |
758 |
gint tolen, fromlen, shift; |
gchar **split; |
759 |
gchar *start, *stop, *p; |
gchar *ret; |
760 |
|
|
761 |
|
g_return_val_if_fail (str != NULL, NULL); |
762 |
|
g_return_val_if_fail (delimiter != NULL, NULL); |
763 |
|
g_return_val_if_fail (replacement != NULL, NULL); |
764 |
|
|
765 |
tolen = strlen (to); |
split = g_strsplit (str, delimiter, 0); |
766 |
fromlen = strlen (from); |
ret = g_strjoinv (replacement, split); |
767 |
shift = tolen - fromlen; |
g_strfreev (split); |
|
start = str; |
|
|
stop = str + strlen (str); |
|
|
|
|
|
while (NULL != (p = strstr (start, from))) |
|
|
{ |
|
|
start = strshift (p + fromlen, shift); |
|
|
stop = stop + shift; |
|
|
memmove (p, to, tolen); |
|
|
} |
|
768 |
|
|
769 |
return str; |
return ret; |
770 |
} |
} |