summaryrefslogtreecommitdiff
path: root/xfa_test/FormFiller_Test/ReaderVCDoc.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'xfa_test/FormFiller_Test/ReaderVCDoc.cpp')
-rw-r--r--xfa_test/FormFiller_Test/ReaderVCDoc.cpp113
1 files changed, 113 insertions, 0 deletions
diff --git a/xfa_test/FormFiller_Test/ReaderVCDoc.cpp b/xfa_test/FormFiller_Test/ReaderVCDoc.cpp
new file mode 100644
index 0000000000..e06515d67e
--- /dev/null
+++ b/xfa_test/FormFiller_Test/ReaderVCDoc.cpp
@@ -0,0 +1,113 @@
+// ReaderVCDoc.cpp : implementation of the CReaderVCDoc class
+//
+
+#include "stdafx.h"
+#include "ReaderVC.h"
+
+#include "MainFrm.h"
+#include "ChildFrm.h"
+#include "ReaderVCDoc.h"
+#include "ReaderVCView.h"
+#ifdef _DEBUG
+#define new DEBUG_NEW
+#undef THIS_FILE
+static char THIS_FILE[] = __FILE__;
+#endif
+
+/////////////////////////////////////////////////////////////////////////////
+// CReaderVCDoc
+
+IMPLEMENT_DYNCREATE(CReaderVCDoc, CDocument)
+
+BEGIN_MESSAGE_MAP(CReaderVCDoc, CDocument)
+ //{{AFX_MSG_MAP(CReaderVCDoc)
+ // NOTE - the ClassWizard will add and remove mapping macros here.
+ // DO NOT EDIT what you see in these blocks of generated code!
+ //}}AFX_MSG_MAP
+END_MESSAGE_MAP()
+
+/////////////////////////////////////////////////////////////////////////////
+// CReaderVCDoc construction/destruction
+
+CReaderVCDoc::CReaderVCDoc()
+{
+ // TODO: add one-time construction code here
+
+}
+
+CReaderVCDoc::~CReaderVCDoc()
+{
+}
+
+BOOL CReaderVCDoc::OnNewDocument()
+{
+ if (!CDocument::OnNewDocument())
+ return FALSE;
+
+ // TODO: add reinitialization code here
+ // (SDI documents will reuse this document)
+
+ return TRUE;
+}
+
+
+
+/////////////////////////////////////////////////////////////////////////////
+// CReaderVCDoc serialization
+
+void CReaderVCDoc::Serialize(CArchive& ar)
+{
+ if (ar.IsStoring())
+ {
+ // TODO: add storing code here
+ }
+ else
+ {
+ // TODO: add loading code here
+ }
+}
+
+/////////////////////////////////////////////////////////////////////////////
+// CReaderVCDoc diagnostics
+
+#ifdef _DEBUG
+void CReaderVCDoc::AssertValid() const
+{
+ CDocument::AssertValid();
+}
+
+void CReaderVCDoc::Dump(CDumpContext& dc) const
+{
+ CDocument::Dump(dc);
+}
+#endif //_DEBUG
+
+/////////////////////////////////////////////////////////////////////////////
+// CReaderVCDoc commands
+
+BOOL CReaderVCDoc::OnOpenDocument(LPCTSTR lpszPathName)
+{
+ if (!CDocument::OnOpenDocument(lpszPathName))
+ return FALSE;
+
+ // TODO: Add your specialized creation code here
+ void* pDoc = FPDF_LoadDocument(lpszPathName, NULL);
+
+ m_strPDFName=lpszPathName;
+ if(NULL == pDoc) return FALSE;
+ POSITION pos = GetFirstViewPosition();
+ int nCount = FPDF_GetPageCount(pDoc);
+ while (pos != NULL)
+ {
+ CView* pView = GetNextView(pos);
+ if(pView->IsKindOf(RUNTIME_CLASS(CReaderVCView)))
+ {
+ CMainFrame* pMFrm = (CMainFrame*)AfxGetMainWnd();
+ CChildFrame* pChildFrm =(CChildFrame*) pMFrm->GetActiveFrame();
+ pChildFrm->SetActiveView(pView, TRUE);
+// FPDFApp_SetDocument(((CReaderVCView*)pView)->GetFPDFApp(), (FPDF_DOCUMENT)pDoc);
+ ((CReaderVCView*)pView)->SetPDFDocument(pDoc, nCount);
+ }
+ }
+ return TRUE;
+}