UNPKG

afterwriting

Version:

Post-processing tools for Fountain screenplays

73 lines (55 loc) 2.28 kB
define(function(require) { var template = require('text!plugin/preview/view/preview.hbs'), $ = require('jquery'), Protoplast = require('protoplast'), BaseComponent = require('core/view/base-component'), SectionViewMixin = require('theme/aw-bubble/view/section-view-mixin'), PreviewViewPresenter = require('plugin/preview/view/preview-view-presenter'), pdfjs_viewer = require('utils/pdfjsviewer'); return BaseComponent.extend([SectionViewMixin], { hbs: template, $meta: { presenter: PreviewViewPresenter }, $zoomIn: null, $zoomOut: null, pdf: null, usePDFJSViewer: false, addBindings: function() { Protoplast.utils.bind(this, 'pdf', this._renderPdf); }, addInteractions: function() { this.root.style.height = '100%'; this.$zoomIn.click(pdfjs_viewer.zoomin); this.$zoomOut.click(pdfjs_viewer.zoomout); pdfjs_viewer.set_container(document.getElementById('pdfjs-viewer')); }, _renderPdf: function(result) { if (result) { $("#pdf-preview-iframe-container p").remove(); if (this.usePDFJSViewer) { pdfjs_viewer.from_blob(result.blob); } else { $("#pdf-preview-iframe").attr('src', result.url).css('display', 'block'); } } else { $("#pdf-preview-iframe").remove(); } }, show: function() { if (this.usePDFJSViewer) { $('#pdf-preview-iframe-container').hide(); $('#pdf-preview-pdfjs-container').show(); } else { $('#pdf-preview-iframe-container').show(); $('#pdf-preview-pdfjs-container').hide(); } $('#pdf-preview-iframe-container').html('<p>Loading preview...</p><embed id="pdf-preview-iframe" style="height: 100%; width: 100%; display:none" type="application/pdf"></embed>'); }, hide: function() { this.pdf = null; } }); });