Mercurial > emacs
comparison lwlib/lwlib.c @ 14879:70f79ccb9875
(merge_widget_value): Set the this_one_change field.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 25 Mar 1996 01:47:33 +0000 |
parents | d9cafe0ebb7d |
children | d0d30042bdc4 |
comparison
equal
deleted
inserted
replaced
14878:487b03096cc5 | 14879:70f79ccb9875 |
---|---|
236 copy->key = safe_strdup (val->key); | 236 copy->key = safe_strdup (val->key); |
237 copy->enabled = val->enabled; | 237 copy->enabled = val->enabled; |
238 copy->selected = val->selected; | 238 copy->selected = val->selected; |
239 copy->edited = False; | 239 copy->edited = False; |
240 copy->change = change; | 240 copy->change = change; |
241 copy->this_one_change = change; | |
241 copy->contents = copy_widget_value_tree (val->contents, change); | 242 copy->contents = copy_widget_value_tree (val->contents, change); |
242 copy->call_data = val->call_data; | 243 copy->call_data = val->call_data; |
243 copy->next = copy_widget_value_tree (val->next, change); | 244 copy->next = copy_widget_value_tree (val->next, change); |
244 copy->toolkit_data = NULL; | 245 copy->toolkit_data = NULL; |
245 copy->free_toolkit_data = False; | 246 copy->free_toolkit_data = False; |
437 merge_widget_value (val1, val2, level) | 438 merge_widget_value (val1, val2, level) |
438 widget_value* val1; | 439 widget_value* val1; |
439 widget_value* val2; | 440 widget_value* val2; |
440 int level; | 441 int level; |
441 { | 442 { |
442 change_type change; | 443 change_type change, this_one_change; |
443 widget_value* merged_next; | 444 widget_value* merged_next; |
444 widget_value* merged_contents; | 445 widget_value* merged_contents; |
445 | 446 |
446 if (!val1) | 447 if (!val1) |
447 { | 448 { |
528 } | 529 } |
529 | 530 |
530 val1->contents = merged_contents; | 531 val1->contents = merged_contents; |
531 } | 532 } |
532 | 533 |
534 this_one_change = change; | |
535 | |
533 merged_next = merge_widget_value (val1->next, val2->next, level); | 536 merged_next = merge_widget_value (val1->next, val2->next, level); |
534 | 537 |
535 if (val1->next && !merged_next) | 538 if (val1->next && !merged_next) |
536 { | 539 { |
537 EXPLAIN (val1->name, change, STRUCTURAL_CHANGE, "(following gone)", | 540 EXPLAIN (val1->name, change, STRUCTURAL_CHANGE, "(following gone)", |
546 change = max (change, merged_next->change); | 549 change = max (change, merged_next->change); |
547 } | 550 } |
548 | 551 |
549 val1->next = merged_next; | 552 val1->next = merged_next; |
550 | 553 |
554 val1->this_one_change = this_one_change; | |
551 val1->change = change; | 555 val1->change = change; |
552 | 556 |
553 if (change > NO_CHANGE && val1->toolkit_data) | 557 if (change > NO_CHANGE && val1->toolkit_data) |
554 { | 558 { |
555 if (val1->free_toolkit_data) | 559 if (val1->free_toolkit_data) |