SOL9 2.0 Class: WordDocuments

 SOL9 C++ Class Library  SOL9 Samples  SOL9 Tutorial  SOL9 FAQ  SOL9 ClassTree 

Source code

/*
 * WordDocuments.h 
 * Copyright (c) 2012 Antillia.com TOSHIYUKI ARAI. ALL RIGHTS RESERVED. 
 */


//2010/05/05

#pragma once

#include <sol/office/WordDocument.h>

namespace SOL {

class WordDocuments :public Object {
private:
    Word::DocumentsPtr documents;

public:
    WordDocuments(Word::DocumentsPtr docs)
    :documents(docs)
    {
    }

public:
    ~WordDocuments()
    {
        documents = NULL;
    }

public:

    IUnknownPtr getNewEnum ( )
    {
        return documents->Get_NewEnum ( );
    }

    long getCount ( )
    {
        return documents->GetCount ( );
    }
    
    Word::_ApplicationPtr getApplication ( )
    {
        return documents->GetApplication ( );
    }
    
    long getCreator ( )
    {
        return documents->GetCreator ( );
    }
    
    IDispatchPtr getParent ( )
    {
        return documents->GetParent ( );
    }
    
    Word::_DocumentPtr item (
            VARIANT * index )
    {
        return documents->Item (
                index );
    }
    
    HRESULT close (
            VARIANT * saveChanges = &vtMissing,
            VARIANT * originalFormat = &vtMissing,
            VARIANT * routeDocument = &vtMissing )
    {
        HRESULT hr = S_OK;
        if (FAILED (hr = documents->Close (
                saveChanges,
                originalFormat,
                routeDocument )) ) {
            throw hr;
        }
        return hr;
    }
    
    Word::_DocumentPtr addOld (
            VARIANT * vtemplate = &vtMissing,
            VARIANT * newTemplate = &vtMissing )
    {
        return documents->AddOld (
                vtemplate,
                newTemplate );
    }
    
    Word::_DocumentPtr openOld (
            VARIANT * fileName,
            VARIANT * confirmConversions = &vtMissing,
            VARIANT * readOnly = &vtMissing,
            VARIANT * addToRecentFiles = &vtMissing,
            VARIANT * passwordDocument = &vtMissing,
            VARIANT * passwordTemplate = &vtMissing,
            VARIANT * revert = &vtMissing,
            VARIANT * writePasswordDocument = &vtMissing,
            VARIANT * writePasswordTemplate = &vtMissing,
            VARIANT * format = &vtMissing )
    {
        return documents->OpenOld (
                fileName,
                confirmConversions,
                readOnly,
                addToRecentFiles,
                passwordDocument,
                passwordTemplate,
                revert,
                writePasswordDocument,
                writePasswordTemplate,
                format );
    }
    
    HRESULT save (
            VARIANT * noPrompt = &vtMissing,
            VARIANT * originalFormat = &vtMissing )
    {
        HRESULT hr = S_OK;
        if (FAILED (hr = documents->Save (
                noPrompt,
                originalFormat )) ) {
            throw hr;
        }
        return hr;
    }
    
    Word::_DocumentPtr add (
            VARIANT * vtemplate = &vtMissing,
            VARIANT * newTemplate = &vtMissing,
            VARIANT * documentType = &vtMissing,
            VARIANT * visible = &vtMissing )
    {
        return documents->Add (
                vtemplate,
                newTemplate,
                documentType,
                visible );
    }
    
    Word::_DocumentPtr open2000 (
            VARIANT * fileName,
               VARIANT * confirmConversions = &vtMissing,
            VARIANT * readOnly = &vtMissing,
            VARIANT * addToRecentFiles = &vtMissing,
            VARIANT * passwordDocument = &vtMissing,
            VARIANT * passwordTemplate = &vtMissing,
            VARIANT * revert = &vtMissing,
            VARIANT * writePasswordDocument = &vtMissing,
            VARIANT * writePasswordTemplate = &vtMissing,
            VARIANT * format = &vtMissing,
            VARIANT * encoding = &vtMissing,
            VARIANT * visible = &vtMissing )
    {
        return documents->Open2000 (
                fileName,
                   confirmConversions,
                readOnly,
                addToRecentFiles,
                passwordDocument,
                passwordTemplate,
                revert,
                writePasswordDocument,
                writePasswordTemplate,
                format,
                encoding,
                visible );
    }
    
    HRESULT checkOut (
            _bstr_t fileName )
    {
        HRESULT hr = S_OK;
        if (FAILED (hr = documents->CheckOut (
                fileName )) ) {
            throw hr;
        }
        return hr;
    }
    
    VARIANT_BOOL canCheckOut (
            _bstr_t fileName )
    {
        return documents->CanCheckOut (
                fileName );
    }
    
    Word::_DocumentPtr open2002 (
            VARIANT * fileName,
            VARIANT * confirmConversions = &vtMissing,
            VARIANT * readOnly = &vtMissing,
            VARIANT * addToRecentFiles = &vtMissing,
            VARIANT * passwordDocument = &vtMissing,
            VARIANT * passwordTemplate = &vtMissing,
            VARIANT * revert = &vtMissing,
            VARIANT * writePasswordDocument = &vtMissing,
            VARIANT * writePasswordTemplate = &vtMissing,
            VARIANT * format = &vtMissing,
            VARIANT * encoding = &vtMissing,
            VARIANT * visible = &vtMissing,
            VARIANT * openAndRepair = &vtMissing,
            VARIANT * documentDirection = &vtMissing,
            VARIANT * noEncodingDialog = &vtMissing )
    {
        return documents->Open2002 (
                fileName,
                confirmConversions,
                readOnly,
                addToRecentFiles,
                passwordDocument,
                passwordTemplate,
                revert,
                writePasswordDocument,
                writePasswordTemplate,
                format,
                encoding,
                visible,
                openAndRepair,
                documentDirection,
                noEncodingDialog );
    }
    

    Word::_DocumentPtr open (
            VARIANT * fileName,
            VARIANT * confirmConversions = &vtMissing,
            VARIANT * readOnly = &vtMissing,
            VARIANT * addToRecentFiles = &vtMissing,
            VARIANT * passwordDocument = &vtMissing,
            VARIANT * passwordTemplate = &vtMissing,
            VARIANT * revert = &vtMissing,
            VARIANT * writePasswordDocument = &vtMissing,
            VARIANT * writePasswordTemplate = &vtMissing,
            VARIANT * format = &vtMissing,
            VARIANT * encoding = &vtMissing,
            VARIANT * visible = &vtMissing,
            VARIANT * openAndRepair = &vtMissing,
            VARIANT * documentDirection = &vtMissing,
            VARIANT * noEncodingDialog = &vtMissing,
            VARIANT * xmlTransform = &vtMissing )
    {
        return documents->Open (
                fileName,
                confirmConversions,
                readOnly,
                addToRecentFiles,
                passwordDocument,
                passwordTemplate,
                revert,
                writePasswordDocument,
                writePasswordTemplate,
                format,
                encoding,
                visible,
                openAndRepair,
                documentDirection,
                noEncodingDialog,
                xmlTransform );
    }
    
    Word::_DocumentPtr OpenNoRepairDialog (
            VARIANT * fileName,
            VARIANT * confirmConversions = &vtMissing,
            VARIANT * readOnly = &vtMissing,
            VARIANT * addToRecentFiles = &vtMissing,
            VARIANT * passwordDocument = &vtMissing,
            VARIANT * passwordTemplate = &vtMissing,
            VARIANT * revert = &vtMissing,
            VARIANT * writePasswordDocument = &vtMissing,
            VARIANT * writePasswordTemplate = &vtMissing,
            VARIANT * format = &vtMissing,
            VARIANT * encoding = &vtMissing,
            VARIANT * visible = &vtMissing,
            VARIANT * openAndRepair = &vtMissing,
            VARIANT * documentDirection = &vtMissing,
            VARIANT * noEncodingDialog = &vtMissing,
            VARIANT * xmlTransform = &vtMissing )
    {
        return documents->OpenNoRepairDialog (
                fileName,
                confirmConversions,
                readOnly,
                addToRecentFiles,
                passwordDocument,
                passwordTemplate,
                revert,
                writePasswordDocument,
                writePasswordTemplate,
                format,
                encoding,
                visible,
                openAndRepair,
                documentDirection,
                noEncodingDialog,
                xmlTransform );
    }
    
    Word::_DocumentPtr addBlogDocument (
            _bstr_t providerID,
            _bstr_t postURL,
            _bstr_t blogName,
            _bstr_t postID )
    {
        return documents->AddBlogDocument (
                providerID,
                postURL,
                blogName,
                postID );
    }

};

}

Last modified: 16 May 2012

Copyright (c) 2009-2012 Antillia.com ALL RIGHTS RESERVED.