namespace Paroxe.PdfRenderer
{
///
/// Implement this class to provide a custom action handling stategy. For example, PDFViewer.BookmarksActionHandler
/// and PDFViewer.LinksActionHandler both refer to a default implementation of this interface.
///
public interface IPDFDeviceActionHandler
{
///
/// Called when a goto action is triggered.
///
///
///
void HandleGotoAction(IPDFDevice device, int pageIndex);
///
/// Called when a launch action is triggered.
///
///
///
void HandleLaunchAction(IPDFDevice device, string filePath);
///
/// Implement the function if you want to provide password. This method received the resolved path
/// returned by the previous method (HandleRemoteGotoActionPathResolving)
///
///
///
///
string HandleRemoteGotoActionPasswordResolving(IPDFDevice device, string resolvedFilePath);
///
/// Implement the function if you want custom path resolving before PDF Viewer open other pdf file.
/// The method must return the modified filePath or just return the original filePath.
/// See PDFViewerDefaultActionHandler class for the default implementation.
///
///
///
///
string HandleRemoteGotoActionPathResolving(IPDFDevice device, string filePath);
///
/// This method is called after the new pdf document is loaded but not yet opened in the pdfViewer.
/// See PDFViewerDefaultActionHandler class for the default implementation.
///
///
///
///
void HandleRemoteGotoActionResolved(IPDFDevice device, PDFDocument document, int pageIndex);
///
/// This method is called when the pdf pdf file at filePath doesn't exists or is invalid.
///
///
///
void HandleRemoteGotoActionUnresolved(IPDFDevice device, string resolvedFilePath);
///
/// Called when the action is unsuported
///
///
void HandleUnsuportedAction(IPDFDevice device);
///
/// Called for action that point to an Uri (Universal Resource Identifier)
///
///
///
void HandleUriAction(IPDFDevice device, string uri);
}
}