ASPxClientRichEdit.FloatingObjectMoved Event
In This Article
Fires after a floating object has been moved and allows you to change the object’s new position.
#Declaration
TypeScript
FloatingObjectMoved: ASPxClientEvent<ASPxClientRichEditFloatingObjectMovedEventHandler>
#Event Data
The FloatingObjectMoved event's data class is ASPxClientRichEditFloatingObjectMovedEventArgs. The following properties provide information specific to this event:
Property | Description |
---|---|
new |
The floating object’s new position. |
object |
The x-coordinate (in pixels) of the upper-left corner of the floating object relative to the page. |
object |
The y-coordinate (in pixels) of the upper-left corner of the floating object relative to the page. |
page |
Returns an index of a page where a floating object has been moved. |
page |
Returns an array of intervals that are belongs to the current page (page |
sub |
Returns the active sub-document’s identifier. |
#Remarks
The code sample below demonstrates how to change a position of a floating object if is has been moved inside a field result.
function FloatingObjectMoved(s, e) {
var subDoc = s.document.subDocuments[e.subDocumentId];
var pos = e.newPosition;
var fields = subDoc.findFields(pos);
if (fields.length > 0) {
var posInsideCurrentPage = function (pos) {
for (var i = 0, pi; pi = e.pageIntervals[i]; i++) {
if (pos >= pi.start && pos < pi.start + pi.length)
return true;
}
return false;
};
var fieldInterval = fields[0].interval;
var fieldStart = fieldInterval.start;
if (pos > fieldStart) {
if (posInsideCurrentPage(fieldStart)) {
e.newPosition = fieldStart;
}
else {
var fieldEnd = fieldInterval.start + fieldInterval.length;
if (posInsideCurrentPage(fieldEnd)) {
e.newPosition = fieldEnd;
}
else {
// if it is impossible to move the floating object outside a field and on the current page (e.g. if the field occupies the entire page)
e.newPosition = fieldStart;
e.objectX = 200;
e.objectY = 200;
}
}
}
}
}
<dx:ASPxRichEdit ID="DemoRichEdit" runat="server" ActiveTabIndex="0" ShowConfirmOnLosingChanges="false">
<ClientSideEvents FloatingObjectMoved="FloatingObjectMoved" />
</dx:ASPxRichEdit>
Refer to the following section for more information about client-side events: Client API.
See Also