CPDFReaderWidgetController constructor
CPDFReaderWidgetController(
- int id, {
- CPDFPageChangedCallback? onPageChanged,
- CPDFDocumentSaveCallback? saveCallback,
- CPDFPageEditDialogBackPressCallback? onPageEditBackPress,
- CPDFFillScreenChangedCallback? onFillScreenChanged,
- CPDFIOSClickBackPressedCallback? onIOSClickBackPressed,
- CPDFOnTapMainDocAreaCallback? onTapMainDocArea,
Implementation
CPDFReaderWidgetController(int id,
{CPDFPageChangedCallback? onPageChanged,
CPDFDocumentSaveCallback? saveCallback,
CPDFPageEditDialogBackPressCallback? onPageEditBackPress,
CPDFFillScreenChangedCallback? onFillScreenChanged,
CPDFIOSClickBackPressedCallback? onIOSClickBackPressed,
CPDFOnTapMainDocAreaCallback? onTapMainDocArea}) {
_channel = MethodChannel('com.compdfkit.flutter.ui.pdfviewer.$id');
_annotationHistoryManager = CPDFAnnotationHistoryManager(_channel);
_editManager = CPDFEditManager(_channel);
_channel.setMethodCallHandler((call) async {
switch (call.method) {
case 'onPageChanged':
var pageIndex = call.arguments['pageIndex'];
onPageChanged?.call(pageIndex);
break;
case 'saveDocument':
saveCallback?.call();
break;
case 'onPageEditDialogBackPress':
onPageEditBackPress?.call();
break;
case 'onFullScreenChanged':
bool isFillScreen = call.arguments;
onFillScreenChanged?.call(isFillScreen);
break;
case 'onIOSClickBackPressed':
onIOSClickBackPressed?.call();
break;
case 'onDocumentIsReady':
_readyCompleter.complete();
break;
case 'onAnnotationHistoryChanged':
_annotationHistoryManager.handleMethodCall(call);
break;
case 'onTapMainDocArea':
onTapMainDocArea?.call();
break;
case 'onContentEditorHistoryChanged':
_editManager.historyManager.handleMethodCall(call);
break;
}
});
_document = CPDFDocument.withController(id);
}