Lines Matching refs:string

59     char *string;		/* a copy of the last-processed string */  member
64 #define SAME_CACHE(c,s,l) (c->string != 0 && memcmp(c->string,s,l) == 0)
108 DLG_TRACE(("# cache %p %p:%s\n", p, p->string, p->string));
138 find_cache(int cache_num, const char *string) in find_cache() argument
148 find.string_at = string; in find_cache()
157 if (p->string_at == string) { in find_cache()
166 make_cache(int cache_num, const char *string) in make_cache() argument
176 p->string_at = string; in make_cache()
185 load_cache(int cache_num, const char *string) in load_cache() argument
189 if ((p = find_cache(cache_num, string)) == 0) { in load_cache()
190 p = make_cache(cache_num, string); in load_cache()
196 #define SAME_CACHE(c,s,l) (c->string != 0)
197 #define load_cache(cache, string) &my_cache argument
205 same_cache2(CACHE * cache, const char *string, unsigned i_len) in same_cache2() argument
207 size_t s_len = strlen(string); in same_cache2()
213 || !SAME_CACHE(cache, string, (size_t) s_len)) { in same_cache2()
224 if (cache->s_len >= s_len && cache->string != 0) { in same_cache2()
225 strcpy(cache->string, string); in same_cache2()
227 if (cache->string != 0) in same_cache2()
228 free(cache->string); in same_cache2()
229 cache->string = dlg_strclone(string); in same_cache2()
244 same_cache1(CACHE * cache, const char *string, size_t i_len) in same_cache1() argument
246 size_t s_len = strlen(string); in same_cache1()
250 || !SAME_CACHE(cache, string, (size_t) s_len)) { in same_cache1()
252 if (cache->s_len >= s_len && cache->string != 0) { in same_cache1()
253 strcpy(cache->string, string); in same_cache1()
255 if (cache->string != 0) in same_cache1()
256 free(cache->string); in same_cache1()
257 cache->string = dlg_strclone(string); in same_cache1()
274 dlg_count_wcbytes(const char *string, size_t len) in dlg_count_wcbytes() argument
279 CACHE *cache = load_cache(cCntWideBytes, string); in dlg_count_wcbytes()
280 if (!same_cache1(cache, string, len)) { in dlg_count_wcbytes()
283 const char *src = cache->string; in dlg_count_wcbytes()
285 char save = cache->string[len]; in dlg_count_wcbytes()
287 cache->string[len] = '\0'; in dlg_count_wcbytes()
290 cache->string[len] = save; in dlg_count_wcbytes()
310 dlg_count_wchars(const char *string) in dlg_count_wchars() argument
316 size_t len = strlen(string); in dlg_count_wchars()
317 CACHE *cache = load_cache(cCntWideChars, string); in dlg_count_wchars()
319 if (!same_cache1(cache, string, len)) { in dlg_count_wchars()
320 const char *src = cache->string; in dlg_count_wchars()
322 int part = dlg_count_wcbytes(cache->string, len); in dlg_count_wchars()
323 char save = cache->string[part]; in dlg_count_wchars()
329 cache->string[part] = '\0'; in dlg_count_wchars()
333 cache->string[part] = save; in dlg_count_wchars()
343 result = (int) strlen(string); in dlg_count_wchars()
353 dlg_index_wchars(const char *string) in dlg_index_wchars() argument
355 unsigned len = (unsigned) dlg_count_wchars(string); in dlg_index_wchars()
356 CACHE *cache = load_cache(cInxWideChars, string); in dlg_index_wchars()
358 if (!same_cache2(cache, string, len)) { in dlg_index_wchars()
359 const char *current = string; in dlg_index_wchars()
407 dlg_index_columns(const char *string) in dlg_index_columns() argument
409 unsigned len = (unsigned) dlg_count_wchars(string); in dlg_index_columns()
410 CACHE *cache = load_cache(cInxCols, string); in dlg_index_columns()
412 if (!same_cache2(cache, string, len)) { in dlg_index_columns()
418 size_t num_bytes = strlen(string); in dlg_index_columns()
419 const int *inx_wchars = dlg_index_wchars(string); in dlg_index_columns()
425 if (string[inx_wchars[inx]] == TAB) { in dlg_index_columns()
434 string + inx_wchars[inx], in dlg_index_columns()
460 chtype ch = UCH(string[inx]); in dlg_index_columns()
487 dlg_count_columns(const char *string) in dlg_count_columns() argument
490 int limit = dlg_count_wchars(string); in dlg_count_columns()
492 const int *cols = dlg_index_columns(string); in dlg_count_columns()
495 result = (int) strlen(string); in dlg_count_columns()
497 dlg_finish_string(string); in dlg_count_columns()
507 dlg_limit_columns(const char *string, int limit, int offset) in dlg_limit_columns() argument
509 const int *cols = dlg_index_columns(string); in dlg_limit_columns()
510 int result = dlg_count_wchars(string); in dlg_limit_columns()
522 dlg_edit_string(char *string, int *chr_offset, int key, int fkey, bool force) in dlg_edit_string() argument
525 int len = (int) strlen(string); in dlg_edit_string()
526 int limit = dlg_count_wchars(string); in dlg_edit_string()
527 const int *indx = dlg_index_wchars(string); in dlg_edit_string()
575 (string[i] = string[i + gap]) != '\0'; in dlg_edit_string()
585 string[*chr_offset = 0] = '\0'; in dlg_edit_string()
592 (string[i] = string[i + gap]) != '\0'; in dlg_edit_string()
597 string[indx[offset - 1]] = '\0'; in dlg_edit_string()
605 string[*chr_offset = 0] = '\0'; in dlg_edit_string()
634 string[i] = string[i - 1]; in dlg_edit_string()
635 string[*chr_offset] = (char) key; in dlg_edit_string()
646 compute_edit_offset(const char *string, in compute_edit_offset() argument
652 const int *cols = dlg_index_columns(string); in compute_edit_offset()
653 const int *indx = dlg_index_wchars(string); in compute_edit_offset()
654 int limit = dlg_count_wchars(string); in compute_edit_offset()
681 dlg_edit_offset(char *string, int chr_offset, int x_last) in dlg_edit_offset() argument
685 compute_edit_offset(string, chr_offset, x_last, &result, 0); in dlg_edit_offset()
696 const char *string, /* string to display (may be multibyte) */ in dlg_show_string() argument
713 const int *cols = dlg_index_columns(string); in dlg_show_string()
714 const int *indx = dlg_index_wchars(string); in dlg_show_string()
715 int limit = dlg_count_wchars(string); in dlg_show_string()
721 compute_edit_offset(string, chr_offset, x_last, &input_x, &scrollamt); in dlg_show_string()
729 chtype ch = UCH(string[j]); in dlg_show_string()
756 dlg_finish_string(const char *string) in dlg_finish_string() argument
759 if ((string != 0) && dialog_state.finish_string) { in dlg_finish_string()
765 if (p->string_at == string) { in dlg_finish_string()
772 if (p->string != 0) in dlg_finish_string()
773 free(p->string); in dlg_finish_string()
792 (void) string; in dlg_finish_string()