comparison plugins/spellchk.c @ 1081:efcacae6acdb

[gaim-migrate @ 1091] libfaim connects non-blocking committer: Tailor Script <tailor@pidgin.im>
author Eric Warmenhoven <eric@warmenhoven.org>
date Fri, 10 Nov 2000 22:49:02 +0000
parents ece2d1543b20
children 72a30a73f689
comparison
equal deleted inserted replaced
1080:e6637ff33957 1081:efcacae6acdb
24 char *good; 24 char *good;
25 }; 25 };
26 26
27 GList *words = NULL; 27 GList *words = NULL;
28 28
29 int num_words(char *); 29 static int num_words(char *);
30 int get_word(char *, int); 30 static int get_word(char *, int);
31 char *have_word(char *, int); 31 static char *have_word(char *, int);
32 void substitute(char **, int, int, char *); 32 static void substitute(char **, int, int, char *);
33 33
34 void substitute_words(struct gaim_connection *gc, char *who, char **message, void *m) { 34 static void substitute_words(struct gaim_connection *gc, char *who, char **message, void *m) {
35 int i, l; 35 int i, l;
36 int word; 36 int word;
37 GList *w; 37 GList *w;
38 char *tmp; 38 char *tmp;
39 39
58 w = w->next; 58 w = w->next;
59 } 59 }
60 } 60 }
61 } 61 }
62 62
63 int buf_get_line(char *ibuf, char **buf, int *position, int len) { 63 static int buf_get_line(char *ibuf, char **buf, int *position, int len) {
64 int pos = *position, spos = pos; 64 int pos = *position, spos = pos;
65 65
66 if (pos == len) 66 if (pos == len)
67 return 0; 67 return 0;
68 68
76 pos++; 76 pos++;
77 *position = pos; 77 *position = pos;
78 return 1; 78 return 1;
79 } 79 }
80 80
81 void load_conf() { 81 static void load_conf() {
82 char *defaultconf = "BAD r\nGOOD are\n\n" 82 char *defaultconf = "BAD r\nGOOD are\n\n"
83 "BAD u\nGOOD you\n\n" 83 "BAD u\nGOOD you\n\n"
84 "BAD teh\nGOOD the\n\n"; 84 "BAD teh\nGOOD the\n\n";
85 char *buf, *ibuf; 85 char *buf, *ibuf;
86 char name[82]; 86 char name[82];
153 153
154 char *description() { 154 char *description() {
155 return "Watches outgoing IM text and corrects common spelling errors."; 155 return "Watches outgoing IM text and corrects common spelling errors.";
156 } 156 }
157 157
158 int num_words(char *m) { 158 static int num_words(char *m) {
159 int count = 0; 159 int count = 0;
160 int pos; 160 int pos;
161 int state = 0; 161 int state = 0;
162 162
163 for (pos = 0; pos < strlen(m); pos++) { 163 for (pos = 0; pos < strlen(m); pos++) {
182 } 182 }
183 } 183 }
184 return count; 184 return count;
185 } 185 }
186 186
187 int get_word(char *m, int word) { 187 static int get_word(char *m, int word) {
188 int count = 0; 188 int count = 0;
189 int pos = 0; 189 int pos = 0;
190 int state = 0; 190 int state = 0;
191 191
192 for (pos = 0; pos < strlen(m) && count <= word; pos++) { 192 for (pos = 0; pos < strlen(m) && count <= word; pos++) {
211 } 211 }
212 } 212 }
213 return pos - 1; 213 return pos - 1;
214 } 214 }
215 215
216 char *have_word(char *m, int pos) { 216 static char *have_word(char *m, int pos) {
217 char *tmp = strpbrk(&m[pos], "' \t\f\r\n\".?!-,"); 217 char *tmp = strpbrk(&m[pos], "' \t\f\r\n\".?!-,");
218 int len = (int)(tmp - &m[pos]); 218 int len = (int)(tmp - &m[pos]);
219 219
220 if (tmp == NULL) { 220 if (tmp == NULL) {
221 tmp = strdup(&m[pos]); 221 tmp = strdup(&m[pos]);
227 strncat(tmp, &m[pos], len); 227 strncat(tmp, &m[pos], len);
228 228
229 return tmp; 229 return tmp;
230 } 230 }
231 231
232 void substitute(char **mes, int pos, int m, char *text) { 232 static void substitute(char **mes, int pos, int m, char *text) {
233 char *new = g_malloc(strlen(*mes) + strlen(text) + 1); 233 char *new = g_malloc(strlen(*mes) + strlen(text) + 1);
234 char *tmp; 234 char *tmp;
235 new[0] = 0; 235 new[0] = 0;
236 236
237 strncat(new, *mes, pos); 237 strncat(new, *mes, pos);
241 tmp = *mes; 241 tmp = *mes;
242 *mes = new; 242 *mes = new;
243 g_free(tmp); 243 g_free(tmp);
244 } 244 }
245 245
246 GtkWidget *configwin = NULL; 246 static GtkWidget *configwin = NULL;
247 GtkWidget *list; 247 static GtkWidget *list;
248 GtkWidget *bad_entry; 248 static GtkWidget *bad_entry;
249 GtkWidget *good_entry; 249 static GtkWidget *good_entry;
250 250
251 void row_unselect() { 251 static void row_unselect() {
252 gtk_entry_set_text(GTK_ENTRY(bad_entry), ""); 252 gtk_entry_set_text(GTK_ENTRY(bad_entry), "");
253 gtk_entry_set_text(GTK_ENTRY(good_entry), ""); 253 gtk_entry_set_text(GTK_ENTRY(good_entry), "");
254 } 254 }
255 255
256 void row_select() { 256 static void row_select() {
257 char *badwrd, *goodwrd; 257 char *badwrd, *goodwrd;
258 int row; 258 int row;
259 259
260 if (GTK_CLIST(list)->selection) 260 if (GTK_CLIST(list)->selection)
261 row = (int) GTK_CLIST (list)->selection->data; 261 row = (int) GTK_CLIST (list)->selection->data;
269 } else { 269 } else {
270 row_unselect(); 270 row_unselect();
271 } 271 }
272 } 272 }
273 273
274 void list_add_new() { 274 static void list_add_new() {
275 int i; 275 int i;
276 gchar *item[2] = {"*NEW*", "EDIT ME"}; 276 gchar *item[2] = {"*NEW*", "EDIT ME"};
277 277
278 i = gtk_clist_append(GTK_CLIST(list), item); 278 i = gtk_clist_append(GTK_CLIST(list), item);
279 gtk_clist_select_row(GTK_CLIST(list), i, 0); 279 gtk_clist_select_row(GTK_CLIST(list), i, 0);
280 gtk_clist_moveto(GTK_CLIST(list), i, 0, 0.5, 0); 280 gtk_clist_moveto(GTK_CLIST(list), i, 0, 0.5, 0);
281 } 281 }
282 282
283 void list_delete() { 283 static void list_delete() {
284 int row; 284 int row;
285 285
286 if (GTK_CLIST(list)->selection) 286 if (GTK_CLIST(list)->selection)
287 row = (int) GTK_CLIST (list)->selection->data; 287 row = (int) GTK_CLIST (list)->selection->data;
288 else 288 else
291 gtk_clist_unselect_all(GTK_CLIST(list)); 291 gtk_clist_unselect_all(GTK_CLIST(list));
292 gtk_clist_remove(GTK_CLIST(list), row); 292 gtk_clist_remove(GTK_CLIST(list), row);
293 } 293 }
294 } 294 }
295 295
296 void close_config() { 296 static void close_config() {
297 if (configwin) 297 if (configwin)
298 gtk_widget_destroy(configwin); 298 gtk_widget_destroy(configwin);
299 configwin = NULL; 299 configwin = NULL;
300 } 300 }
301 301
302 void save_list() { 302 static void save_list() {
303 int fh, i = 0; 303 int fh, i = 0;
304 char buf[512]; 304 char buf[512];
305 char *a, *b; 305 char *a, *b;
306 306
307 snprintf(buf, sizeof buf, "%s/.gaim/dict", getenv("HOME")); 307 snprintf(buf, sizeof buf, "%s/.gaim/dict", getenv("HOME"));
317 } 317 }
318 close_config(); 318 close_config();
319 load_conf(); 319 load_conf();
320 } 320 }
321 321
322 void bad_changed() { 322 static void bad_changed() {
323 int row; 323 int row;
324 char *m; 324 char *m;
325 325
326 if (GTK_CLIST(list)->selection) 326 if (GTK_CLIST(list)->selection)
327 row = (int) GTK_CLIST (list)->selection->data; 327 row = (int) GTK_CLIST (list)->selection->data;
331 m = gtk_entry_get_text(GTK_ENTRY(bad_entry)); 331 m = gtk_entry_get_text(GTK_ENTRY(bad_entry));
332 gtk_clist_set_text(GTK_CLIST(list), row, 0, m); 332 gtk_clist_set_text(GTK_CLIST(list), row, 0, m);
333 } 333 }
334 } 334 }
335 335
336 void good_changed() { 336 static void good_changed() {
337 int row; 337 int row;
338 char *m; 338 char *m;
339 339
340 if (GTK_CLIST(list)->selection) 340 if (GTK_CLIST(list)->selection)
341 row = (int) GTK_CLIST (list)->selection->data; 341 row = (int) GTK_CLIST (list)->selection->data;