Mercurial > emacs
comparison src/textprop.c @ 13779:5abcd2653057
(add_properties, remove_properties, set_properties):
Call signal_after_change.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Thu, 21 Dec 1995 17:14:30 +0000 |
parents | dc00b7be6593 |
children | 621a575db6f7 |
comparison
equal
deleted
inserted
replaced
13778:7b2f71009e4c | 13779:5abcd2653057 |
---|---|
302 make_number (interval->position), | 302 make_number (interval->position), |
303 make_number (interval->position + LENGTH (interval))); | 303 make_number (interval->position + LENGTH (interval))); |
304 record_property_change (interval->position, LENGTH (interval), | 304 record_property_change (interval->position, LENGTH (interval), |
305 XCONS (sym)->car, XCONS (value)->car, | 305 XCONS (sym)->car, XCONS (value)->car, |
306 object); | 306 object); |
307 signal_after_change (interval->position, LENGTH (interval), | |
308 LENGTH (interval)); | |
307 } | 309 } |
308 | 310 |
309 /* For each new property that has no value at all in the old plist, | 311 /* For each new property that has no value at all in the old plist, |
310 make an undo record binding it to nil, so it will be removed. */ | 312 make an undo record binding it to nil, so it will be removed. */ |
311 for (sym = properties; | 313 for (sym = properties; |
317 make_number (interval->position), | 319 make_number (interval->position), |
318 make_number (interval->position + LENGTH (interval))); | 320 make_number (interval->position + LENGTH (interval))); |
319 record_property_change (interval->position, LENGTH (interval), | 321 record_property_change (interval->position, LENGTH (interval), |
320 XCONS (sym)->car, Qnil, | 322 XCONS (sym)->car, Qnil, |
321 object); | 323 object); |
324 signal_after_change (interval->position, LENGTH (interval), | |
325 LENGTH (interval)); | |
322 } | 326 } |
323 } | 327 } |
324 | 328 |
325 /* Store new properties. */ | 329 /* Store new properties. */ |
326 interval->plist = Fcopy_sequence (properties); | 330 interval->plist = Fcopy_sequence (properties); |
384 modify_region (XBUFFER (object), | 388 modify_region (XBUFFER (object), |
385 make_number (i->position), | 389 make_number (i->position), |
386 make_number (i->position + LENGTH (i))); | 390 make_number (i->position + LENGTH (i))); |
387 record_property_change (i->position, LENGTH (i), | 391 record_property_change (i->position, LENGTH (i), |
388 sym1, Fcar (this_cdr), object); | 392 sym1, Fcar (this_cdr), object); |
393 signal_after_change (i->position, LENGTH (i), LENGTH (i)); | |
389 } | 394 } |
390 | 395 |
391 /* I's property has a different value -- change it */ | 396 /* I's property has a different value -- change it */ |
392 Fsetcar (this_cdr, val1); | 397 Fsetcar (this_cdr, val1); |
393 changed++; | 398 changed++; |
402 modify_region (XBUFFER (object), | 407 modify_region (XBUFFER (object), |
403 make_number (i->position), | 408 make_number (i->position), |
404 make_number (i->position + LENGTH (i))); | 409 make_number (i->position + LENGTH (i))); |
405 record_property_change (i->position, LENGTH (i), | 410 record_property_change (i->position, LENGTH (i), |
406 sym1, Qnil, object); | 411 sym1, Qnil, object); |
412 signal_after_change (i->position, LENGTH (i), LENGTH (i)); | |
407 } | 413 } |
408 i->plist = Fcons (sym1, Fcons (val1, i->plist)); | 414 i->plist = Fcons (sym1, Fcons (val1, i->plist)); |
409 changed++; | 415 changed++; |
410 } | 416 } |
411 } | 417 } |
443 make_number (i->position), | 449 make_number (i->position), |
444 make_number (i->position + LENGTH (i))); | 450 make_number (i->position + LENGTH (i))); |
445 record_property_change (i->position, LENGTH (i), | 451 record_property_change (i->position, LENGTH (i), |
446 sym, Fcar (Fcdr (current_plist)), | 452 sym, Fcar (Fcdr (current_plist)), |
447 object); | 453 object); |
454 signal_after_change (i->position, LENGTH (i), LENGTH (i)); | |
448 } | 455 } |
449 | 456 |
450 current_plist = Fcdr (Fcdr (current_plist)); | 457 current_plist = Fcdr (Fcdr (current_plist)); |
451 changed++; | 458 changed++; |
452 } | 459 } |
464 modify_region (XBUFFER (object), | 471 modify_region (XBUFFER (object), |
465 make_number (i->position), | 472 make_number (i->position), |
466 make_number (i->position + LENGTH (i))); | 473 make_number (i->position + LENGTH (i))); |
467 record_property_change (i->position, LENGTH (i), | 474 record_property_change (i->position, LENGTH (i), |
468 sym, Fcar (Fcdr (this)), object); | 475 sym, Fcar (Fcdr (this)), object); |
476 signal_after_change (i->position, LENGTH (i), LENGTH (i)); | |
469 } | 477 } |
470 | 478 |
471 Fsetcdr (Fcdr (tail2), Fcdr (Fcdr (this))); | 479 Fsetcdr (Fcdr (tail2), Fcdr (Fcdr (this))); |
472 changed++; | 480 changed++; |
473 } | 481 } |