Adds/changes to rmk36--Tedit-fifth-round to accommodate Notecards property list editor #1915
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
@rmkaplan This is a pull request on top of your rmk--Tedit-5th-round branch. It incorporates two changes:
Notecards needs to be able to delete tedit-menu Fields. So I modified MB.DELETE to be able to delete fields by temporarily setting (using RESETSAVE) the WHENDELETEDFN for the field objects to NILL (instead of MB.DON'T). I used a fairly inefficient way to find the field suffix object that corresponds to the field prefix object - but it works. Maybe you have a better way to do this. Also this is probably not thread-safe - since I think the imagefns object is shared across all MB.FIELD instances, so it will have to be hardened a bit once I can get the other pieces in place.
The MB.BUTTONEVENTINFN/CUSTOMBUTTONEVENTFN changes I proposed the other day didn't quite handle the 'Don't return from CUSTOMBUTTONEVENTFN correctly. These changes fix that.
Not part of this PR, but I did notice that the code that moves the insert cursor when the user clicks on a Field pre/post label is duplicated in the MB.FIELD.BUTTONEVENTINFN and the MB.FIELD.WHENOPERATEDONFN. Is this necessary? Wouldn't the code in MB.FIELD.WHENOPERATEDONFN be sufficient to handle all cases?