Duplicating Publishers and Subscribers
Duplicating Publishers and Subscribers
Whenever a user clicks a publisher or subscriber border, you should change
the contents of the section to a selected state. You should discourage users from
making multiple copies of a publisher and pasting them in the same or other
documents, because the contents of the edition would be difficult or impossible
to predict. Multiple copies of the same publisher also contain the same control
block value.
When a user attempts to create a copy of a publisher that already exists, you
should display an alert box such as the one shown in The Figure below.
Creating multiple publishers alert box
When a user attempts to save a document that contains multiple copies of the
same publisher, display an alert box such as the one shown in The Figure
below.
Saving multiple publishers alert box
If a user decides to ignore your alert box, your application should still save
the document, but you should continue to display this error message every
time the user saves this document.
A user can modify the contents of any duplicate publisher, but the contents of
the edition will be whichever publisher was the last to write.
When a user chooses to copy and paste or duplicate a section, use the
HandToHand function to duplicate the section record and alias record. Put
the alias field of the cloned section record with the handle to the cloned
alias record and generate a unique section identification number for it. When
exporting your Clipboard to the scrap, you should also place the section data,
section record, and alias record in the scrap.
Use the RegisterSection function to register the cloned section's
section record.
A user can select the contents of a publisher without selecting the border and
copy just the data to a new location. In this case, the user has simply copied
data (and not the publisher). Do not create a border for this data in the new
location.