Mercurial > pidgin
diff src/util.c @ 1117:f3e0f41beddb
[gaim-migrate @ 1127]
Removed the old, crappy spellchecker code; replaced to use gtkspell. works much better. got gtkspell.[ch] out of gtkspell's cvs repository.
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Tue, 21 Nov 2000 09:50:31 +0000 |
parents | f168625b63fe |
children | 201ec77f3a60 |
line wrap: on
line diff
--- a/src/util.c Tue Nov 21 01:11:27 2000 +0000 +++ b/src/util.c Tue Nov 21 09:50:31 2000 +0000 @@ -730,81 +730,6 @@ return NULL; } -/* - -This function was taken from EveryBuddy and was written by -Torrey Searle. tsearle@valhalla.marko.net - -http://www.everybuddy.com - -*/ - -void spell_checker(GtkWidget * text) -{ - int start = 0; - int end = 0; - static GdkColor * color = NULL; - int ignore = 0; - int point = gtk_editable_get_position(GTK_EDITABLE(text)); - - GString * string; - - if( color == NULL ) - { - GdkColormap * gc = gtk_widget_get_colormap( text ); - color = g_new0(GdkColor, 1); - color->red = 255 * 256; - gdk_colormap_alloc_color(gc, color, FALSE, TRUE); - } - - - - end = point-1; - for( start = end-1; start >= 0; start-- ) - { - if((isspace(GTK_TEXT_INDEX(GTK_TEXT(text), start)) || start == 0) - && !ignore) - { - char * word; - FILE * file; - char buff[1024]; - word = gtk_editable_get_chars( GTK_EDITABLE(text), start, end ); - g_snprintf(buff, 1024, "echo \"%s\" | ispell -l", word ); - file = popen(buff, "r"); - - buff[0] = 0; - fgets(buff, 255, file); - - if(strlen(buff) > 0 ) - { - string = g_string_new(word); - gtk_text_set_point(GTK_TEXT(text), end); - gtk_text_backward_delete(GTK_TEXT(text), end-start); - gtk_text_insert( GTK_TEXT(text), NULL, color, NULL, - string->str, string->len ); - g_string_free( string, TRUE ); - } - else - { - string = g_string_new(word); - gtk_text_set_point(GTK_TEXT(text), end); - gtk_text_backward_delete(GTK_TEXT(text), end-start); - gtk_text_insert( GTK_TEXT(text), NULL, &(text->style->fg[0]), NULL, - string->str, string->len ); - g_string_free( string, TRUE ); - } - pclose( file); - g_free(word); - break; - } - else if(!isalpha(GTK_TEXT_INDEX(GTK_TEXT(text), start))) - { - ignore = 1; - } - } - gtk_text_set_point(GTK_TEXT(text), point); - -} /* Look for %n, %d, or %t in msg, and replace with the sender's name, date, or time */