diff options
Diffstat (limited to 'print/XPSDrvSmpl/src/common')
79 files changed, 0 insertions, 16091 deletions
diff --git a/print/XPSDrvSmpl/src/common/bkdata.h b/print/XPSDrvSmpl/src/common/bkdata.h deleted file mode 100644 index dae29cf2..00000000 --- a/print/XPSDrvSmpl/src/common/bkdata.h +++ /dev/null @@ -1,46 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - bkdata.h - -Abstract: - - Booklet data structure definition. This provides a convenient description - of the PrintSchema JobBindAllDocuments and DcoumentBinding features. - ---*/ - -#pragma once - -#include "bkschema.h" - -namespace XDPrintSchema -{ - namespace Binding - { - struct BindingData - { - BindingData() : - bindFeature(JobBindAllDocuments), - bindOption(None), - bindGutter(0) - { - } - - EBinding bindFeature; - EBindingOption bindOption; - INT bindGutter; - }; - } -} - diff --git a/print/XPSDrvSmpl/src/common/bkpchndlr.cpp b/print/XPSDrvSmpl/src/common/bkpchndlr.cpp deleted file mode 100644 index 1ce57acf..00000000 --- a/print/XPSDrvSmpl/src/common/bkpchndlr.cpp +++ /dev/null @@ -1,201 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - bkpchndlr.cpp - -Abstract: - - Booklet PrintCapabilities handling implementation. The booklet PC handler - is used to set booklet settings in a PrintCapabilities document. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "xdexcept.h" -#include "bkpchndlr.h" -#include "globals.h" -#include "privatedefs.h" - -using XDPrintSchema::PRINTCAPABILITIES_NAME; - -using XDPrintSchema::Binding::EBinding; -using XDPrintSchema::Binding::EBindingMin; -using XDPrintSchema::Binding::EBindingMax; -using XDPrintSchema::Binding::EBindingOption; -using XDPrintSchema::Binding::EBindingOptionMin; -using XDPrintSchema::Binding::EBindingOptionMax; -using XDPrintSchema::Binding::BIND_FEATURES; -using XDPrintSchema::Binding::BIND_OPTIONS; - -/*++ - -Routine Name: - - CBookPCHandler::CBookPCHandler - -Routine Description: - - CBookPCHandler class constructor - -Arguments: - - pPrintCapabilities - Pointer to the DOM document representation of the PrintCapabilities - -Return Value: - - None - ---*/ -CBookPCHandler::CBookPCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ) : - CPCHandler(pPrintCapabilities) -{ -} - -/*++ - -Routine Name: - - CBookPCHandler::~CBookPCHandler - -Routine Description: - - CBookPCHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CBookPCHandler::~CBookPCHandler() -{ -} - -/*++ - -Routine Name: - - CBookPCHandler::SetCapabilities - -Routine Description: - - This routine sets booklet capabilities in the PrintCapabilities passed to the - class constructor. - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CBookPCHandler::SetCapabilities( - VOID - ) -{ - HRESULT hr = S_OK; - - try - { - // - // Retrieve the PrintTicket root - // - CComPtr<IXMLDOMNode> pPTRoot(NULL); - - CComBSTR bstrPTQuery(m_bstrFrameworkPrefix); - bstrPTQuery += PRINTCAPABILITIES_NAME; - - if (SUCCEEDED(hr = GetNode(bstrPTQuery, &pPTRoot))) - { - for (EBinding bindFeatures = EBindingMin; - bindFeatures < EBindingMax && SUCCEEDED(hr); - bindFeatures = static_cast<EBinding>(bindFeatures + 1)) - { - CComPtr<IXMLDOMElement> pFeatureElement(NULL); - - if (SUCCEEDED(hr = CreateFeatureSelection(CComBSTR(BIND_FEATURES[bindFeatures]), NULL, &pFeatureElement))) - { - PTDOMElementVector optionList; - - for (EBindingOption bindOption = EBindingOptionMin; - bindOption < EBindingOptionMax && SUCCEEDED(hr); - bindOption = static_cast<EBindingOption>(bindOption + 1)) - { - // - // Create the booklet options - // - CComPtr<IXMLDOMElement> pOptionProperty(NULL); - - if (SUCCEEDED(hr = CreateOption(CComBSTR(BIND_OPTIONS[bindOption]), NULL, &pOptionProperty))) - { - optionList.push_back(pOptionProperty); - } - } - - // - // Add the options into the booklet feature - // - PTDOMElementVector::iterator iterOptionList = optionList.begin(); - - for (;iterOptionList != optionList.end() && SUCCEEDED(hr); iterOptionList++) - { - hr = pFeatureElement->appendChild(*iterOptionList, NULL); - } - } - - if (SUCCEEDED(hr)) - { - hr = pPTRoot->appendChild(pFeatureElement, NULL); - } - } - - for (UINT cIndex = 0; cIndex < numof(bkParamDefIntegers); cIndex++) - { - CComPtr<IXMLDOMElement> pParameterDef(NULL); - - if (SUCCEEDED(hr = CreateIntParameterDef(CComBSTR(bkParamDefIntegers[cIndex].property_name), // Paramater Name - bkParamDefIntegers[cIndex].is_public, // Is Print Schema keyword? - CComBSTR(bkParamDefIntegers[cIndex].display_name), // Display Text - bkParamDefIntegers[cIndex].default_value, // Default - bkParamDefIntegers[cIndex].min_length, // Min Length - bkParamDefIntegers[cIndex].max_length, // Max Length - bkParamDefIntegers[cIndex].multiple, // Multiple - CComBSTR(bkParamDefIntegers[cIndex].unit_type), // Unit Type - &pParameterDef))) // Parameter Def - { - hr = pPTRoot->appendChild(pParameterDef, NULL); - } - } - } - } - catch (exception& DBG_ONLY(e)) - { - ERR(e.what()); - hr = E_FAIL; - } - - ERR_ON_HR(hr); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/bkpchndlr.h b/print/XPSDrvSmpl/src/common/bkpchndlr.h deleted file mode 100644 index 46d65138..00000000 --- a/print/XPSDrvSmpl/src/common/bkpchndlr.h +++ /dev/null @@ -1,41 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - bkpchndlr.h - -Abstract: - - Booklet PrintCapabilities handling definition. The booklet PC handler - is used to set booklet settings in a PrintCapabilities. - ---*/ - -#pragma once - -#include "pchndlr.h" -#include "bkdata.h" - -class CBookPCHandler : public CPCHandler -{ -public: - CBookPCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ); - - virtual ~CBookPCHandler(); - - HRESULT - SetCapabilities( - VOID - ); -}; diff --git a/print/XPSDrvSmpl/src/common/bkpthndlr.cpp b/print/XPSDrvSmpl/src/common/bkpthndlr.cpp deleted file mode 100644 index 46fb54b6..00000000 --- a/print/XPSDrvSmpl/src/common/bkpthndlr.cpp +++ /dev/null @@ -1,318 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - bkpthndlr.cpp - -Abstract: - - Booklet PrintTicket handling implementation. The booklet PT handler - is used to extract booklet settings from a PrintTicket and populate - the booklet data structure with the retrieved settings. The class also - defines a method for setting the feature in the PrintTicket given the - data structure. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "bkpthndlr.h" - -using XDPrintSchema::PRINTTICKET_NAME; - -using XDPrintSchema::Binding::BindingData; -using XDPrintSchema::Binding::EBinding; -using XDPrintSchema::Binding::EBindingMin; -using XDPrintSchema::Binding::EBindingMax; -using XDPrintSchema::Binding::EBindingOption; -using XDPrintSchema::Binding::EBindingOptionMin; -using XDPrintSchema::Binding::EBindingOptionMax; -using XDPrintSchema::Binding::BIND_FEATURES; -using XDPrintSchema::Binding::BIND_OPTIONS; -using XDPrintSchema::Binding::BIND_PROP; -using XDPrintSchema::Binding::BIND_PROP_REF_SUFFIX; - -/*++ - -Routine Name: - - CBookPTHandler::CBookPTHandler - -Routine Description: - - CBookPTHandler class constructor - -Arguments: - - pPrintTicket - Pointer to the DOM document representation of the PrintTicket - -Return Value: - - None - ---*/ -CBookPTHandler::CBookPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ) : - CPTHandler(pPrintTicket) -{ -} - -/*++ - -Routine Name: - - CBookPTHandler::~CBookPTHandler - -Routine Description: - - CBookPTHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CBookPTHandler::~CBookPTHandler() -{ -} - -/*++ - -Routine Name: - - CBookPTHandler::GetData - -Routine Description: - - The routine fills the data structure passed in with binding data retrieved from - the PrintTicket passed to the class constructor. - -Arguments: - - pBindData - Pointer to the binding data structure to be filled in - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - Feature not present in PrintTicket - E_* - On error - ---*/ -HRESULT -CBookPTHandler::GetData( - _Out_ BindingData* pBindData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pBindData, E_POINTER))) - { - for (EBinding bindFeature = EBindingMin; - bindFeature < EBindingMax; - bindFeature = static_cast<EBinding>(bindFeature + 1)) - { - CComBSTR bstrBindOption; - CComBSTR bstrFeature(BIND_FEATURES[bindFeature]); - - if (SUCCEEDED(hr = GetFeatureOption(bstrFeature, &bstrBindOption))) - { - pBindData->bindFeature = bindFeature; - - // - // Identify the option - // - for (EBindingOption bindOption = EBindingOptionMin; - bindOption < EBindingOptionMax; - bindOption = static_cast<EBindingOption>(bindOption + 1)) - { - if (bstrBindOption == BIND_OPTIONS[bindOption]) - { - pBindData->bindOption = bindOption; - break; - } - } - - // - // Get the gutter value if one exists otherwise use a default - // - if (FAILED(GetScoredPropertyValue(bstrFeature, CComBSTR(BIND_PROP), &pBindData->bindGutter))) - { - pBindData->bindGutter = 0; - } - - break; - } - else if (hr != E_ELEMENT_NOT_FOUND) - { - // - // We have an error other than the element is not present - // so we break and let the result return - // - break; - } - } - } - - // - // Validate the data - // - if (SUCCEEDED(hr)) - { - if (pBindData->bindFeature < EBindingMin || - pBindData->bindFeature >= EBindingMax || - pBindData->bindOption < EBindingOptionMin || - pBindData->bindOption >= EBindingOptionMax) - { - hr = E_FAIL; - } - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CBookPTHandler::SetData - -Routine Description: - - This routine sets the binding data in the PrintTicket passed to the - class constructor. - -Arguments: - - pBindData - Pointer to the binding data to be set in the PrintTicket - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CBookPTHandler::SetData( - _In_ CONST BindingData* pBindData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pBindData, E_POINTER))) - { - if (pBindData->bindFeature < EBindingMin || - pBindData->bindFeature >= EBindingMax || - pBindData->bindOption < EBindingOptionMin || - pBindData->bindOption >= EBindingOptionMax) - { - hr = E_INVALIDARG; - } - } - - // - // Delete any exsting NUp settings as JobNUpAllDocumentsContiguously and DocumentNUp are mutually exclusive - // - if (SUCCEEDED(hr) && - pBindData->bindOption != XDPrintSchema::Binding::None) - { - // - // Create the following elements - // Feature and Option - // Parameter Ref and Parameter Init - // ScoredProperty - // - // Then append the scored property to the option node and the feature - // and parameter init nodes to the root PrintTicket node. Note: the - // scored poperty is created passing the parameter ref so it is already - // appended - // - CComPtr<IXMLDOMElement> pFeature(NULL); - CComPtr<IXMLDOMElement> pOption(NULL); - CComPtr<IXMLDOMElement> pParamRef(NULL); - CComPtr<IXMLDOMElement> pParamInit(NULL); - CComPtr<IXMLDOMElement> pScoredProp(NULL); - - CComBSTR bstrFeature(BIND_FEATURES[pBindData->bindFeature]); - - if (SUCCEEDED(DeleteFeature(bstrFeature))) - { - CComBSTR bstrPropName(BIND_PROP_REF_SUFFIX); - CComBSTR bstrParamRefName(bstrFeature); - bstrParamRefName += bstrPropName; - - if (SUCCEEDED(hr = CreateFeatureOptionPair(bstrFeature, - CComBSTR(BIND_OPTIONS[pBindData->bindOption]), - &pFeature, - &pOption)) && - SUCCEEDED(hr = CreateParamRefInitPair(bstrParamRefName, pBindData->bindGutter, &pParamRef, &pParamInit)) && - SUCCEEDED(hr = CreateScoredProperty(CComBSTR(BIND_PROP), pParamRef, &pScoredProp)) && - SUCCEEDED(hr = pOption->appendChild(pScoredProp, NULL)) && - SUCCEEDED(hr = AppendToElement(CComBSTR(PRINTTICKET_NAME), pFeature))) - { - hr = AppendToElement(CComBSTR(PRINTTICKET_NAME), pParamInit); - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CBookPTHandler::Delete - -Routine Description: - - This routine deletes the binding feature from the PrintTicket passed to the - class constructor - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CBookPTHandler::Delete( - VOID - ) -{ - HRESULT hr = S_OK; - - for (EBinding bindFeature = EBindingMin; - bindFeature < EBindingMax && SUCCEEDED(hr); - bindFeature = static_cast<EBinding>(bindFeature + 1)) - { - hr = DeleteFeature(CComBSTR(BIND_FEATURES[bindFeature])); - } - - ERR_ON_HR(hr); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/bkpthndlr.h b/print/XPSDrvSmpl/src/common/bkpthndlr.h deleted file mode 100644 index abd5ef9d..00000000 --- a/print/XPSDrvSmpl/src/common/bkpthndlr.h +++ /dev/null @@ -1,55 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - bkpthndlr.h - -Abstract: - - Booklet PrintTicket handling definition. The booklet PT handler - is used to extract booklet settings from a PrintTicket and populate - the booklet data structure with the retrieved settings. The class also - defines a method for setting the feature in the PrintTicket given the - data structure. - ---*/ - -#pragma once - -#include "pthndlr.h" -#include "bkdata.h" - -class CBookPTHandler : public CPTHandler -{ -public: - CBookPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ); - - virtual ~CBookPTHandler(); - - HRESULT - GetData( - _Out_ XDPrintSchema::Binding::BindingData* pBindData - ); - - HRESULT - SetData( - _In_ CONST XDPrintSchema::Binding::BindingData* pBindData - ); - - HRESULT - Delete( - VOID - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/bkschema.cpp b/print/XPSDrvSmpl/src/common/bkschema.cpp deleted file mode 100644 index daa26254..00000000 --- a/print/XPSDrvSmpl/src/common/bkschema.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - bkschema.cpp - -Abstract: - - Binding (booklet) PrintSchema implementation. This implements the features, - options and enumerations that describe the PrintSchema JobBindAllDocuments and - DocumentBinding features. - ---*/ - -#include "precomp.h" -#include "bkschema.h" - -LPCWSTR XDPrintSchema::Binding::BIND_FEATURES[] = { - L"JobBindAllDocuments", - L"DocumentBinding" -}; - -LPCWSTR XDPrintSchema::Binding::BIND_OPTIONS[] = { - L"Bale", - L"BindBottom", - L"BindLeft", - L"BindRight", - L"BindTop", - L"Booklet", - L"EdgeStitchBottom", - L"EdgeStitchLeft", - L"EdgeStitchRight", - L"EdgeStitchTop", - L"Fold", - L"JogOffset", - L"Trim", - L"None" -}; - -LPCWSTR XDPrintSchema::Binding::BIND_PROP = L"BindingGutter"; -LPCWSTR XDPrintSchema::Binding::BIND_PROP_REF_SUFFIX = L"Gutter"; - diff --git a/print/XPSDrvSmpl/src/common/bkschema.h b/print/XPSDrvSmpl/src/common/bkschema.h deleted file mode 100644 index bcf68df2..00000000 --- a/print/XPSDrvSmpl/src/common/bkschema.h +++ /dev/null @@ -1,77 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - bkschema.h - -Abstract: - - Binding (booklet) PrintSchema definition. This defines the features, - options and enumerations that describe the PrintSchema JobBindAllDocuments and - DocumentBinding features within a XDPrintSchema::Binding namespace. - ---*/ - -#pragma once - -#include "schema.h" - -namespace XDPrintSchema -{ - // - // Binding elements described as Printschema keywords - // - namespace Binding - { - // - // Job and Document share identical options so we define two - // features within the Binding namespace. - // - enum EBinding - { - JobBindAllDocuments = 0, EBindingMin = 0, - DocumentBinding, - EBindingMax - }; - - extern LPCWSTR BIND_FEATURES[EBindingMax]; - - // - // Option names - // - enum EBindingOption - { - Bale = 0, EBindingOptionMin = 0, - BindBottom, - BindLeft, - BindRight, - BindTop, - Booklet, - EdgeStitchBottom, - EdgeStitchLeft, - EdgeStitchRight, - EdgeStitchTop, - Fold, - JogOffset, - Trim, - None, - EBindingOptionMax - }; - - extern LPCWSTR BIND_OPTIONS[EBindingOptionMax]; - - extern LPCWSTR BIND_PROP; - - extern LPCWSTR BIND_PROP_REF_SUFFIX; - } -} - diff --git a/print/XPSDrvSmpl/src/common/cmdata.h b/print/XPSDrvSmpl/src/common/cmdata.h deleted file mode 100644 index 7b2dcb7f..00000000 --- a/print/XPSDrvSmpl/src/common/cmdata.h +++ /dev/null @@ -1,42 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmdata.h - -Abstract: - - PageColorManagement data structure definition. This provides a convenient - description of the PrintSchema PageColorManagement feature. - ---*/ - -#pragma once - -#include "cmschema.h" - -namespace XDPrintSchema -{ - namespace PageColorManagement - { - struct ColorManagementData - { - ColorManagementData() : - cmOption(None) - { - } - - EPCMOption cmOption; - }; - } -} - diff --git a/print/XPSDrvSmpl/src/common/cmintentsdata.h b/print/XPSDrvSmpl/src/common/cmintentsdata.h deleted file mode 100644 index f9fa2c20..00000000 --- a/print/XPSDrvSmpl/src/common/cmintentsdata.h +++ /dev/null @@ -1,42 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmintentsdata.h - -Abstract: - - PageICMRenderingIntent data structure definition. This provides a more - convenient description of the PrintSchema PageICMRenderingIntent feature. - ---*/ - -#pragma once - -#include "cmintentsschema.h" - -namespace XDPrintSchema -{ - namespace PageICMRenderingIntent - { - struct PageICMRenderingIntentData - { - PageICMRenderingIntentData() : - cmOption(AbsoluteColorimetric) - { - } - - EICMIntentOption cmOption; - }; - } -} - diff --git a/print/XPSDrvSmpl/src/common/cmintentsschema.cpp b/print/XPSDrvSmpl/src/common/cmintentsschema.cpp deleted file mode 100644 index 1b68de7b..00000000 --- a/print/XPSDrvSmpl/src/common/cmintentsschema.cpp +++ /dev/null @@ -1,34 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmintentsschema.cpp - -Abstract: - - PageICMRenderingIntent PrintSchema implementation. This implements the features, - options and enumerations that describe the PrintSchema PageICMRenderingIntent feature. - ---*/ - -#include "precomp.h" -#include "cmintentsschema.h" - -LPCWSTR XDPrintSchema::PageICMRenderingIntent::ICMINTENT_FEATURE = L"PageICMRenderingIntent"; - -LPCWSTR XDPrintSchema::PageICMRenderingIntent::ICMINTENT_OPTIONS[] = { - L"AbsoluteColorimetric", - L"RelativeColorimetric", - L"Photographs", - L"BusinessGraphics" -}; - diff --git a/print/XPSDrvSmpl/src/common/cmintentsschema.h b/print/XPSDrvSmpl/src/common/cmintentsschema.h deleted file mode 100644 index 73203876..00000000 --- a/print/XPSDrvSmpl/src/common/cmintentsschema.h +++ /dev/null @@ -1,55 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmintentsschema.h - -Abstract: - - PageICMRenderingIntent PrintSchema definition. This defines the features, - options and enumerations that describe the PrintSchema PageICMRenderingIntent feature - within a XDPrintSchema::PageICMRenderingIntent namespace. - ---*/ - -#pragma once - -#include "schema.h" - -namespace XDPrintSchema -{ - // - // PageColorManagementIntents elements described as Printschema keywords - // - namespace PageICMRenderingIntent - { - // - // Feature name - // - extern LPCWSTR ICMINTENT_FEATURE; - - // - // Who specified the profile to use - // - enum EICMIntentOption - { - AbsoluteColorimetric = 0, EICMIntentOptionMin = 0, - RelativeColorimetric, - Photographs, - BusinessGraphics, - EICMIntentOptionMax - }; - - extern LPCWSTR ICMINTENT_OPTIONS[EICMIntentOptionMax]; - } -} - diff --git a/print/XPSDrvSmpl/src/common/cmintpthndlr.cpp b/print/XPSDrvSmpl/src/common/cmintpthndlr.cpp deleted file mode 100644 index d23fffb6..00000000 --- a/print/XPSDrvSmpl/src/common/cmintpthndlr.cpp +++ /dev/null @@ -1,156 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmintpthndlr.cpp - -Abstract: - - PageICMRenderingIntent PrintTicket handler implementation. Derived from - CPTHandler, this provides PageICMRenderingIntent specific Get and Set methods - acting on the PrintTicket (as a DOM document) passed. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "cmintpthndlr.h" - -using XDPrintSchema::PageICMRenderingIntent::PageICMRenderingIntentData; -using XDPrintSchema::PageICMRenderingIntent::EICMIntentOption; -using XDPrintSchema::PageICMRenderingIntent::EICMIntentOptionMin; -using XDPrintSchema::PageICMRenderingIntent::BusinessGraphics; -using XDPrintSchema::PageICMRenderingIntent::EICMIntentOptionMax; -using XDPrintSchema::PageICMRenderingIntent::ICMINTENT_FEATURE; -using XDPrintSchema::PageICMRenderingIntent::ICMINTENT_OPTIONS; - -/*++ - -Routine Name: - - CColorManageIntentsPTHandler::CColorManageIntentsPTHandler - -Routine Description: - - CColorManageIntentsPTHandler class constructor - -Arguments: - - pPrintTicket - Pointer to the DOM document representation of the PrintTicket - -Return Value: - - None - ---*/ -CColorManageIntentsPTHandler::CColorManageIntentsPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ) : - CPTHandler(pPrintTicket) -{ -} - -/*++ - -Routine Name: - - CColorManageIntentsPTHandler::~CColorManageIntentsPTHandler - -Routine Description: - - CColorManageIntentsPTHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CColorManageIntentsPTHandler::~CColorManageIntentsPTHandler() -{ -} - -/*++ - -Routine Name: - - CColorManageIntentsPTHandler::GetData - -Routine Description: - - The routine fills the data structure passed in with color intent data retrieved - from the PrintTicket passed to the class constructor. - -Arguments: - - pCmData - Pointer to the color intent data structure to be filled in - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - Feature not present in PrintTicket - E_* - On error - ---*/ -HRESULT -CColorManageIntentsPTHandler::GetData( - _Inout_ PageICMRenderingIntentData* pCmData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pCmData, E_POINTER))) - { - CComBSTR bstrCMOption; - - if (SUCCEEDED(hr = GetFeatureOption(CComBSTR(ICMINTENT_FEATURE), &bstrCMOption))) - { - // - // Get the profile type - // - for (EICMIntentOption cmOption = EICMIntentOptionMin; - cmOption < EICMIntentOptionMax; - cmOption = static_cast<EICMIntentOption>(cmOption + 1)) - { - if (bstrCMOption == ICMINTENT_OPTIONS[cmOption]) - { - pCmData->cmOption = cmOption; - break; - } - } - - if (SUCCEEDED(hr)) - { - if (pCmData->cmOption < EICMIntentOptionMin || - pCmData->cmOption >= EICMIntentOptionMax) - { - hr = E_FAIL; - } - } - } - else - { - pCmData->cmOption = BusinessGraphics; - hr = S_OK; - } - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/cmintpthndlr.h b/print/XPSDrvSmpl/src/common/cmintpthndlr.h deleted file mode 100644 index 19e5b4bc..00000000 --- a/print/XPSDrvSmpl/src/common/cmintpthndlr.h +++ /dev/null @@ -1,43 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmintpthndlr.h - -Abstract: - - PageICMRenderingIntent PrintTicket handler definition. Derived from - CPTHandler, this provides PageICMRenderingIntent specific Get and Set methods - acting on the PrintTicket (as a DOM document) passed. - ---*/ - -#pragma once - -#include "pthndlr.h" -#include "cmintentsdata.h" - -class CColorManageIntentsPTHandler : public CPTHandler -{ -public: - CColorManageIntentsPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ); - - virtual ~CColorManageIntentsPTHandler(); - - HRESULT - GetData( - _Inout_ XDPrintSchema::PageICMRenderingIntent::PageICMRenderingIntentData* pCmData - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/cmprofiledata.h b/print/XPSDrvSmpl/src/common/cmprofiledata.h deleted file mode 100644 index 29048ea3..00000000 --- a/print/XPSDrvSmpl/src/common/cmprofiledata.h +++ /dev/null @@ -1,44 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmprofiledata.h - -Abstract: - - PageSourceColorProfileData data structure definition. This provides - a convenient description of the PrintSchema PageSourceColorProfileData - feature. - ---*/ - -#pragma once - -#include "cmprofileschema.h" - -namespace XDPrintSchema -{ - namespace PageSourceColorProfile - { - struct PageSourceColorProfileData - { - PageSourceColorProfileData() : - cmProfile(RGB) - { - } - - EProfileOption cmProfile; - CComBSTR cmProfileName; - }; - } -} - diff --git a/print/XPSDrvSmpl/src/common/cmprofileschema.cpp b/print/XPSDrvSmpl/src/common/cmprofileschema.cpp deleted file mode 100644 index 5f74fa51..00000000 --- a/print/XPSDrvSmpl/src/common/cmprofileschema.cpp +++ /dev/null @@ -1,49 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmprofileschema.cpp - -Abstract: - - PageSourceColorProfile PrintSchema implementation. This implements the - features, options and enumerations that describe the PrintSchema - PageSourceColorProfile feature. - ---*/ - -#include "precomp.h" -#include "globals.h" -#include "privatedefs.h" -#include "cmprofileschema.h" - -LPCWSTR XDPrintSchema::PageSourceColorProfile::PROFILE_FEATURE = L"PageSourceColorProfile"; - -LPCWSTR XDPrintSchema::PageSourceColorProfile::PROFILE_OPTIONS[] = { - L"RGB", - L"CMYK" -}; - -LPCWSTR XDPrintSchema::PageSourceColorProfile::PROFILE_URI_PROP = L"SourceColorProfileURI"; -LPCWSTR XDPrintSchema::PageSourceColorProfile::PROFILE_URI_REF = L"PageSourceColorProfileURI"; - -PRIVATE_DEF_STRINGS XDPrintSchema::PageSourceColorProfile::PROFILE_PARAM_DEF = { - "PageSourceColorProfileURI", - NULL, - "xdCMYKPrinter.icc", - 0, - 65536, - "characters" -}; - - - diff --git a/print/XPSDrvSmpl/src/common/cmprofileschema.h b/print/XPSDrvSmpl/src/common/cmprofileschema.h deleted file mode 100644 index 659d42c5..00000000 --- a/print/XPSDrvSmpl/src/common/cmprofileschema.h +++ /dev/null @@ -1,60 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmintentsschema.h - -Abstract: - - PageSourceColorProfile PrintSchema definition. This defines the features, - options and enumerations that describe the PrintSchema PageSourceColorProfile - feature within a XDPrintSchema::PageSourceColorProfile namespace. - - ---*/ - -#pragma once - -#include "schema.h" -#include "globals.h" -#include "privatedefs.h" - -namespace XDPrintSchema -{ - // - // PageColorManagement elements described as Printschema keywords - // - namespace PageSourceColorProfile - { - // - // Feature name - // - extern LPCWSTR PROFILE_FEATURE; - - // - // Who specified the profile to use - // - enum EProfileOption - { - RGB = 0, EProfileOptionMin = 0, - CMYK, - EProfileOptionMax - }; - - extern LPCWSTR PROFILE_OPTIONS[EProfileOptionMax]; - - extern LPCWSTR PROFILE_URI_PROP; - extern LPCWSTR PROFILE_URI_REF; - extern PRIVATE_DEF_STRINGS PROFILE_PARAM_DEF; - } -} - diff --git a/print/XPSDrvSmpl/src/common/cmprofpchndlr.cpp b/print/XPSDrvSmpl/src/common/cmprofpchndlr.cpp deleted file mode 100644 index a8f5bb9c..00000000 --- a/print/XPSDrvSmpl/src/common/cmprofpchndlr.cpp +++ /dev/null @@ -1,179 +0,0 @@ -/*++ - -Copyright (c) 2008 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmprofpchndlr.cpp - -Abstract: - - PageSourceColorProfile PrintCapabilities handling implementation. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "ptquerybld.h" -#include "cmprofpchndlr.h" - -using XDPrintSchema::PRINTCAPABILITIES_NAME; - -using XDPrintSchema::PageSourceColorProfile::PROFILE_FEATURE; -using XDPrintSchema::PageSourceColorProfile::PROFILE_OPTIONS; -using XDPrintSchema::PageSourceColorProfile::PROFILE_URI_PROP; -using XDPrintSchema::PageSourceColorProfile::PROFILE_URI_REF; -using XDPrintSchema::PageSourceColorProfile::PROFILE_PARAM_DEF; -using XDPrintSchema::PageSourceColorProfile::EProfileOption; -using XDPrintSchema::PageSourceColorProfile::EProfileOptionMax; -using XDPrintSchema::PageSourceColorProfile::EProfileOptionMin; -using XDPrintSchema::PageSourceColorProfile::RGB; -using XDPrintSchema::PageSourceColorProfile::CMYK; - -/*++ - -Routine Name: - - CColorManageProfilePCHandler::CColorManageProfilePCHandler - -Routine Description: - - CColorManageProfilePCHandler class constructor - -Arguments: - - pPrintCapabilities - Pointer to the DOM document representation of the PrintCapabilities - -Return Value: - - None - ---*/ -CColorManageProfilePCHandler::CColorManageProfilePCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ) : - CPCHandler(pPrintCapabilities) -{ -} - -/*++ - -Routine Name: - - CColorManageProfilePCHandler::~CColorManageProfilePCHandler - -Routine Description: - - CColorManageProfilePCHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CColorManageProfilePCHandler::~CColorManageProfilePCHandler() -{ -} - -/*++ - -Routine Name: - - CColorManageProfilePCHandler::SetCapabilities - -Routine Description: - - This routine sets color profile capabilities in the PrintCapabilities passed to the - class constructor. - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CColorManageProfilePCHandler::SetCapabilities( - VOID - ) -{ - HRESULT hr = S_OK; - - try - { - // - // Retrieve the PrintTicket root - // - CComPtr<IXMLDOMNode> pPCRoot(NULL); - CComPtr<IXMLDOMElement> pFeatureElement(NULL); - - CComBSTR bstrPTQuery(m_bstrFrameworkPrefix); - bstrPTQuery += PRINTCAPABILITIES_NAME; - - if (SUCCEEDED(hr = GetNode(bstrPTQuery, &pPCRoot)) && - SUCCEEDED(hr = CreateFeatureSelection(CComBSTR(PROFILE_FEATURE), NULL, &pFeatureElement))) - { - for ( EProfileOption option = EProfileOptionMin; - option < EProfileOptionMax && SUCCEEDED(hr); - option = static_cast<EProfileOption>(option + 1)) - { - CComPtr<IXMLDOMElement> pOptionElement(NULL); - CComPtr<IXMLDOMElement> pScoredPropElement(NULL); - CComPtr<IXMLDOMElement> pPropRefElement(NULL); - - if (SUCCEEDED(hr = CreateOption(CComBSTR(PROFILE_OPTIONS[option]), NULL, &pOptionElement)) && - SUCCEEDED(hr = CreateScoredProperty(CComBSTR(PROFILE_URI_PROP), &pScoredPropElement)) && - SUCCEEDED(hr = CreateParameterRef(CComBSTR(PROFILE_URI_REF), &pPropRefElement)) && - SUCCEEDED(hr = pScoredPropElement->appendChild(pPropRefElement, NULL)) && - SUCCEEDED(hr = pOptionElement->appendChild(pScoredPropElement, NULL))) - { - hr = pFeatureElement->appendChild(pOptionElement, NULL); - } - } - - CComPtr<IXMLDOMElement> pParameterDef(NULL); - - if (SUCCEEDED(hr = pPCRoot->appendChild(pFeatureElement, NULL)) && - SUCCEEDED(hr = CreateStringParameterDef( CComBSTR(PROFILE_PARAM_DEF.property_name), // Paramater Name - TRUE, // Is Print Schema Keyword? - CComBSTR(PROFILE_PARAM_DEF.display_name), // Display Text - CComBSTR(PROFILE_PARAM_DEF.default_value), // Default - PROFILE_PARAM_DEF.min_length, // Min Length - PROFILE_PARAM_DEF.max_length, // Max Length - CComBSTR(PROFILE_PARAM_DEF.unit_type), // Unit Type - &pParameterDef))) // Parameter Def - { - hr = pPCRoot->appendChild(pParameterDef, NULL); - } - } - - - } - catch (exception& DBG_ONLY(e)) - { - ERR(e.what()); - hr = E_FAIL; - } - - ERR_ON_HR(hr); - - return S_OK; -} diff --git a/print/XPSDrvSmpl/src/common/cmprofpchndlr.h b/print/XPSDrvSmpl/src/common/cmprofpchndlr.h deleted file mode 100644 index 059ca831..00000000 --- a/print/XPSDrvSmpl/src/common/cmprofpchndlr.h +++ /dev/null @@ -1,42 +0,0 @@ -/*++ - -Copyright (c) 2008 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmprofpthndlr.h - -Abstract: - - PageSourceColorProfile PrintCapabilities handling definition. - ---*/ - -#pragma once - -#include "pchndlr.h" -#include "cmprofiledata.h" - -class CColorManageProfilePCHandler : public CPCHandler -{ -public: - - CColorManageProfilePCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ); - - virtual ~CColorManageProfilePCHandler(); - - HRESULT - SetCapabilities( - VOID - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/cmprofpthndlr.cpp b/print/XPSDrvSmpl/src/common/cmprofpthndlr.cpp deleted file mode 100644 index ee074fdb..00000000 --- a/print/XPSDrvSmpl/src/common/cmprofpthndlr.cpp +++ /dev/null @@ -1,206 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmprofpthndlr.cpp - -Abstract: - - PageSourceColorProfile PrintTicket handling implementation. - The PageSourceColorProfile PT handler is used to extract - PageSourceColorProfile settings from a PrintTicket and populate - the PageSourceColorProfile data structure with the retrieved - settings. The class also defines a method for setting the feature in - the PrintTicket given the data structure. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "ptquerybld.h" -#include "cmprofpthndlr.h" - -using XDPrintSchema::SCHEMA_STRING; -using XDPrintSchema::PRINTTICKET_NAME; - -using XDPrintSchema::PageSourceColorProfile::PageSourceColorProfileData; -using XDPrintSchema::PageSourceColorProfile::EProfileOption; -using XDPrintSchema::PageSourceColorProfile::EProfileOptionMin; -using XDPrintSchema::PageSourceColorProfile::EProfileOptionMax; -using XDPrintSchema::PageSourceColorProfile::PROFILE_FEATURE; -using XDPrintSchema::PageSourceColorProfile::PROFILE_OPTIONS; -using XDPrintSchema::PageSourceColorProfile::PROFILE_URI_PROP; -using XDPrintSchema::PageSourceColorProfile::PROFILE_URI_REF; -using XDPrintSchema::PageSourceColorProfile::RGB; -using XDPrintSchema::PageSourceColorProfile::CMYK; - -/*++ - -Routine Name: - - CColorManageProfilePTHandler::CColorManageProfilePTHandler - -Routine Description: - - CColorManageProfilePTHandler class constructor - -Arguments: - - pPrintTicket - Pointer to the DOM document representation of the PrintTicket - -Return Value: - - None - ---*/ -CColorManageProfilePTHandler::CColorManageProfilePTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ) : - CPTHandler(pPrintTicket) -{ -} - -/*++ - -Routine Name: - - CColorManageProfilePTHandler::~CColorManageProfilePTHandler - -Routine Description: - - CColorManageProfilePTHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CColorManageProfilePTHandler::~CColorManageProfilePTHandler() -{ -} - -/*++ - -Routine Name: - - CColorManageProfilePTHandler::GetData - -Routine Description: - - The routine fills the data structure passed in with color profile data - retrieved from the PrintTicket passed to the class constructor. - -Arguments: - - pCmData - Pointer to the color profile data structure to be filled in - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - Feature not present in PrintTicket - E_* - On error - ---*/ -HRESULT -CColorManageProfilePTHandler::GetData( - _Inout_ PageSourceColorProfileData* pCmData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pCmData, E_POINTER))) - { - CComBSTR option; - if (SUCCEEDED(hr = GetFeatureOption(CComBSTR(PROFILE_FEATURE), &option)) && - SUCCEEDED(GetScoredPropertyValue(CComBSTR(PROFILE_FEATURE), CComBSTR(PROFILE_URI_PROP), &pCmData->cmProfileName)) - ) - { - pCmData->cmProfile = CMYK; // default to CMYK - - for (EProfileOption cmOption = EProfileOptionMin; - cmOption < EProfileOptionMax; - cmOption = static_cast<EProfileOption>(cmOption + 1)) - { - if (option == CComBSTR(PROFILE_OPTIONS[cmOption])) - { - pCmData->cmProfile = cmOption; - } - } - } - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CColorManageProfilePTHandler::SetData - -Routine Description: - - This routine sets the color profile data in the PrintTicket - passed to the class constructor. - -Arguments: - - pCmData - Pointer to the color profile data to be set in the PrintTicket - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CColorManageProfilePTHandler::SetData( - _In_ CONST PageSourceColorProfileData* pCmData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pCmData, E_POINTER))) - { - CComPtr<IXMLDOMElement> pFeature(NULL); - CComPtr<IXMLDOMElement> pOption(NULL); - CComPtr<IXMLDOMElement> pUriProperty(NULL); - CComPtr<IXMLDOMElement> pRef(NULL); - CComPtr<IXMLDOMElement> pInit(NULL); - - - CComBSTR bstrFeature(PROFILE_FEATURE); - - if (SUCCEEDED(hr = DeleteFeature(bstrFeature)) && - SUCCEEDED(hr = CreateFeatureOptionPair(bstrFeature, CComBSTR(PROFILE_OPTIONS[pCmData->cmProfile]), &pFeature, &pOption)) && - SUCCEEDED(hr = CreateParamRefInitPair(CComBSTR(PROFILE_URI_REF), CComBSTR(SCHEMA_STRING), pCmData->cmProfileName, &pRef, &pInit)) && - SUCCEEDED(hr = CreateScoredProperty(CComBSTR(PROFILE_URI_PROP), pRef, &pUriProperty)) && - SUCCEEDED(hr = pOption->appendChild(pUriProperty, NULL)) && - SUCCEEDED(hr = AppendToElement(CComBSTR(PRINTTICKET_NAME), pInit))) - { - SUCCEEDED(hr = AppendToElement(CComBSTR(PRINTTICKET_NAME), pFeature)); - } - } - - ERR_ON_HR(hr); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/cmprofpthndlr.h b/print/XPSDrvSmpl/src/common/cmprofpthndlr.h deleted file mode 100644 index fb002a45..00000000 --- a/print/XPSDrvSmpl/src/common/cmprofpthndlr.h +++ /dev/null @@ -1,51 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmprofpthndlr.h - -Abstract: - - PageSourceColorProfile PrintTicket handling definition. - The PageSourceColorProfile PT handler is used to extract - PageSourceColorProfile settings from a PrintTicket and populate - the PageSourceColorProfile data structure with the retrieved - settings. The class also defines a method for setting the feature in - the PrintTicket given the data structure. - ---*/ - -#pragma once - -#include "pthndlr.h" -#include "cmprofiledata.h" - -class CColorManageProfilePTHandler : public CPTHandler -{ -public: - CColorManageProfilePTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ); - - virtual ~CColorManageProfilePTHandler(); - - HRESULT - GetData( - _Inout_ XDPrintSchema::PageSourceColorProfile::PageSourceColorProfileData* pCmData - ); - - HRESULT - SetData( - _In_ CONST XDPrintSchema::PageSourceColorProfile::PageSourceColorProfileData* pCmData - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/cmpthndlr.cpp b/print/XPSDrvSmpl/src/common/cmpthndlr.cpp deleted file mode 100644 index cdd20311..00000000 --- a/print/XPSDrvSmpl/src/common/cmpthndlr.cpp +++ /dev/null @@ -1,154 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmpthndlr.cpp - -Abstract: - - PageColorManagement PrintTicket handling implementation. The - PageColorManagement PT handler is used to extract booklet settings - from a PrintTicket and populate the PageColorManagement data - structure with the retrieved settings. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "cmpthndlr.h" - -using XDPrintSchema::PageColorManagement::ColorManagementData; -using XDPrintSchema::PageColorManagement::EPCMOption; -using XDPrintSchema::PageColorManagement::EPCMOptionMin; -using XDPrintSchema::PageColorManagement::EPCMOptionMax; -using XDPrintSchema::PageColorManagement::PCM_FEATURE; -using XDPrintSchema::PageColorManagement::PCM_OPTIONS; - -/*++ - -Routine Name: - - CColorManagePTHandler::CColorManagePTHandler - -Routine Description: - - CColorManagePTHandler class constructor - -Arguments: - - pPrintTicket - Pointer to the DOM document representation of the PrintTicket - -Return Value: - - None - ---*/ -CColorManagePTHandler::CColorManagePTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ) : - CPTHandler(pPrintTicket) -{ -} - -/*++ - -Routine Name: - - CColorManagePTHandler::~CColorManagePTHandler - -Routine Description: - - CColorManagePTHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CColorManagePTHandler::~CColorManagePTHandler() -{ -} - -/*++ - -Routine Name: - - CColorManagePTHandler::GetData - -Routine Description: - - The routine fills the data structure passed in with color management data - retrieved from the PrintTicket passed to the class constructor. - -Arguments: - - pCmData - Pointer to the color management data structure to be filled in - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - Feature not present in PrintTicket - E_* - On error - ---*/ -HRESULT -CColorManagePTHandler::GetData( - _Inout_ ColorManagementData* pCmData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pCmData, E_POINTER))) - { - CComBSTR bstrCMOption; - - // - // Check whether to use driver or device color matching - // - if (SUCCEEDED(hr = GetFeatureOption(CComBSTR(PCM_FEATURE), &bstrCMOption))) - { - for (EPCMOption cmOpt = EPCMOptionMin; - cmOpt < EPCMOptionMax; - cmOpt = static_cast<EPCMOption>(cmOpt + 1)) - { - if (bstrCMOption == PCM_OPTIONS[cmOpt]) - { - pCmData->cmOption = cmOpt; - break; - } - } - } - - // - // Validate the data - // - if (SUCCEEDED(hr)) - { - if (pCmData->cmOption < EPCMOptionMin || - pCmData->cmOption >= EPCMOptionMax) - { - hr = E_FAIL; - } - } - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/cmpthndlr.h b/print/XPSDrvSmpl/src/common/cmpthndlr.h deleted file mode 100644 index 17faf30e..00000000 --- a/print/XPSDrvSmpl/src/common/cmpthndlr.h +++ /dev/null @@ -1,46 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmpthndlr.h - -Abstract: - - PageColorManagement PrintTicket handling definition. The - PageColorManagement PT handler is used to extract booklet settings - from a PrintTicket and populate the PageColorManagement data - structure with the retrieved settings. The class also - defines a method for setting the feature in the PrintTicket given the - data structure. - ---*/ - -#pragma once - -#include "pthndlr.h" -#include "cmdata.h" - -class CColorManagePTHandler : public CPTHandler -{ -public: - CColorManagePTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ); - - virtual ~CColorManagePTHandler(); - - HRESULT - GetData( - _Inout_ XDPrintSchema::PageColorManagement::ColorManagementData* pCmData - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/cmschema.cpp b/print/XPSDrvSmpl/src/common/cmschema.cpp deleted file mode 100644 index f047f8fa..00000000 --- a/print/XPSDrvSmpl/src/common/cmschema.cpp +++ /dev/null @@ -1,34 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmschema.cpp - -Abstract: - - PageColorManagement PrintSchema implementation. This implements the features, - options and enumerations that describe the PrintSchema PageColorManagement feature. - ---*/ - -#include "precomp.h" -#include "cmschema.h" - -LPCWSTR XDPrintSchema::PageColorManagement::PCM_FEATURE = L"PageColorManagement"; - -LPCWSTR XDPrintSchema::PageColorManagement::PCM_OPTIONS[] = { - L"None", - L"Device", - L"Driver", - L"System" -}; - diff --git a/print/XPSDrvSmpl/src/common/cmschema.h b/print/XPSDrvSmpl/src/common/cmschema.h deleted file mode 100644 index 6f4a30a6..00000000 --- a/print/XPSDrvSmpl/src/common/cmschema.h +++ /dev/null @@ -1,55 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - cmschema.h - -Abstract: - - PageColorManagement PrintSchema definition. This defines the features, options - and enumerations that describe the PrintSchema PageColorManagement feature - within a XDPrintSchema::PageColorManagement namespace. - ---*/ - -#pragma once - -#include "schema.h" - -namespace XDPrintSchema -{ - // - // PageColorManagement elements described as Printschema keywords - // - namespace PageColorManagement - { - // - // Feature name - // - extern LPCWSTR PCM_FEATURE; - - // - // Option names - // - enum EPCMOption - { - None = 0, EPCMOptionMin = 0, - Device, - Driver, - System, - EPCMOptionMax - }; - - extern LPCWSTR PCM_OPTIONS[EPCMOptionMax]; - } -} - diff --git a/print/XPSDrvSmpl/src/common/globals.cpp b/print/XPSDrvSmpl/src/common/globals.cpp deleted file mode 100644 index 28cf17a5..00000000 --- a/print/XPSDrvSmpl/src/common/globals.cpp +++ /dev/null @@ -1,237 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - globals.cpp - -Abstract: - - Stores function implementations and variable instances global to the filter - module. This is shared between all filters. - ---*/ - -#include "precomp.h" -#include <VersionHelpers.h> - -// -// Module's Instance handle from DLLEntry of process. -// -HINSTANCE g_hInstance = NULL; - -// -// Server lock count -// -LONG g_cServerLocks = 0; - -/*++ - -Routine Name: - - GetLastErrorAsHResult - -Routine Description: - - Converts the Win32 last error to an HRESULT - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -GetLastErrorAsHResult( - void - ) -{ - DWORD error = GetLastError(); - - return HRESULT_FROM_WIN32(error); -} - -/*++ - -Routine Name: - - GetLastErrorAsHResult - -Routine Description: - - Converts a GDI status error to an HRESULT - -Arguments: - - gdiPStatus - The GDI plus status value to be converted to an HRESULT - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -GetGDIStatusErrorAsHResult( - _In_ Status gdiPStatus - ) -{ - HRESULT hr = E_FAIL; - - switch (gdiPStatus) - { - case Ok: - { - hr = S_OK; - } - break; - - case GenericError: - { - hr = E_FAIL; - } - break; - - case InvalidParameter: - { - hr = E_INVALIDARG; - } - break; - - case OutOfMemory: - { - hr = E_OUTOFMEMORY; - } - break; - - case ObjectBusy: - { - hr = E_PENDING; - } - break; - - case InsufficientBuffer: - { - hr = E_OUTOFMEMORY; - } - break; - - case NotImplemented: - { - hr = E_NOTIMPL; - } - break; - - case Win32Error: - { - hr = GetLastErrorAsHResult(); - } - break; - - case FileNotFound: - { - hr = HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND); - } - break; - - case AccessDenied: - { - hr = HRESULT_FROM_WIN32(ERROR_ACCESS_DENIED); - } - break; - - // - // Default to E_FAIL - // - case UnknownImageFormat: - case FontFamilyNotFound: - case FontStyleNotFound: - case NotTrueTypeFont: - case UnsupportedGdiplusVersion: - case GdiplusNotInitialized: - case PropertyNotFound: - case PropertyNotSupported: - case ValueOverflow: - case Aborted: - case WrongState: - default: - break; - }; - - return hr; -} - -/*++ - -Routine Name: - - IsVista - -Routine Description: - - Checks if we are running under Vista - -Arguments: - - None - -Return Value: - - TRUE if we are under Vista - FALSE otherwise - ---*/ - -BOOL -IsVista( - VOID - ) -{ - BOOL bIsVista = FALSE; - bIsVista = IsWindowsVistaOrGreater(); - return bIsVista; -} - -/*++ - -Routine Name: - - GetUniqueNumber - -Routine Description: - - Returns a unique number. - -Arguments: - - None - -Return Value: - - A unique DWORD. - ---*/ - -DWORD -GetUniqueNumber( - VOID - ) -{ - static volatile DWORD number = 0; - - return InterlockedIncrement(&number); -} diff --git a/print/XPSDrvSmpl/src/common/globals.h b/print/XPSDrvSmpl/src/common/globals.h deleted file mode 100644 index e4992c03..00000000 --- a/print/XPSDrvSmpl/src/common/globals.h +++ /dev/null @@ -1,102 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - globals.cpp - -Abstract: - - Stores function definitions, variable declerations and pre-processor macros - global to the filter module. This is shared between all filters. - ---*/ - -#pragma once - -// -// Module's Instance handle from DLLEntry of process. -// -extern HINSTANCE g_hInstance; - -// -// Server lock count -// -extern LONG g_cServerLocks; - -// -// Global defines -// -#define CB_COPY_BUFFER 0x10000 -#define MAX_UISTRING_LEN 256 -#define OEM_SIGNATURE 'XDSM' -#define OEM_VERSION 0x00000001L - -// -// Conversion functions for Microns to 1/100th of Inch (and visa versa) -// -#define HUNDREDTH_OFINCH_TO_MICRON(x) MulDiv(x, 25400, 100) -#define MICRON_TO_HUNDREDTH_OFINCH(x) MulDiv(x, 100, 25400) - -// -// Macros for checking pointers and handles. -// -#define CHECK_POINTER(p, hr) ((p) == NULL ? hr : S_OK) -#define CHECK_HANDLE(h, hr) ((h) == NULL ? hr : S_OK) - -static const FLOAT kMaxByteAsFloat = 255.0f; -static const FLOAT kMaxWordAsFloat = 65535.0f; - -static const WORD kS2Dot13Neg = 0x8000; -static const WORD kS2Dot13One = 0x2000; -static const WORD kS2Dot13Min = 0xFFFF; -static const WORD kS2Dot13Max = 0x7FFF; - -static const FLOAT k96thInchAsMicrons = 264.58f; - -// -// countof macro -// -#ifndef countof -#define countof(ary) (sizeof(ary) / sizeof((ary)[0])) -#endif - -// -// Converts the Win32 last error to an HRESULT -// -HRESULT -GetLastErrorAsHResult( - void - ); - -// -// Converts a GDI status error to an HRESULT -// -HRESULT -GetGDIStatusErrorAsHResult( - _In_ Status gdiPStatus - ); - -// -// Check if we are running under Vista -// -BOOL -IsVista( - VOID - ); - -// -// Returns a unique number -// -DWORD -GetUniqueNumber( - VOID - ); diff --git a/print/XPSDrvSmpl/src/common/nupchndlr.cpp b/print/XPSDrvSmpl/src/common/nupchndlr.cpp deleted file mode 100644 index e2374eb9..00000000 --- a/print/XPSDrvSmpl/src/common/nupchndlr.cpp +++ /dev/null @@ -1,196 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - nuppchndlr.cpp - -Abstract: - - NUp PrintCapabilities handling implementation. The NUp PC handler - is used to set NUp settings in a PrintCapabilities. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "xdexcept.h" -#include "nupchndlr.h" -#include "ptquerybld.h" - -using XDPrintSchema::NUp::NUpData; -using XDPrintSchema::NUp::ENUpFeature; -using XDPrintSchema::NUp::ENUpFeatureMin; -using XDPrintSchema::NUp::DocumentNUp; -using XDPrintSchema::NUp::JobNUpAllDocumentsContiguously; -using XDPrintSchema::NUp::ENUpFeatureMax; -using XDPrintSchema::NUp::NUP_FEATURES; -using XDPrintSchema::NUp::NUP_PROP; - -using XDPrintSchema::NUp::PresentationDirection::ENUpDirectionOption; -using XDPrintSchema::NUp::PresentationDirection::ENUpDirectionOptionMin; -using XDPrintSchema::NUp::PresentationDirection::ENUpDirectionOptionMax; -using XDPrintSchema::NUp::PresentationDirection::NUP_DIRECTION_FEATURE; -using XDPrintSchema::NUp::PresentationDirection::NUP_DIRECTION_OPTIONS; - -/*++ - -Routine Name: - - CNUpPCHandler::CNUpPCHandler - -Routine Description: - - CNUpPCHandler class constructor - -Arguments: - - pPrintCapabilities - Pointer to the DOM document representation of the PrintCapabilities - -Return Value: - - None - ---*/ -CNUpPCHandler::CNUpPCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ) : - CPCHandler(pPrintCapabilities) -{ -} - -/*++ - -Routine Name: - - CNUpPCHandler::~CNUpPCHandler - -Routine Description: - - CNUpPCHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CNUpPCHandler::~CNUpPCHandler() -{ -} - -/*++ - -Routine Name: - - CNUpPCHandler::SetCapabilities - -Routine Description: - - This routine sets NUp capabilities in the PrintCapabilities passed to the - class constructor. - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CNUpPCHandler::SetCapabilities( - VOID - ) -{ - HRESULT hr = S_OK; - - try - { - for (ENUpFeature nupFeatures = ENUpFeatureMin; - nupFeatures < ENUpFeatureMax && SUCCEEDED(hr); - nupFeatures = static_cast<ENUpFeature>(nupFeatures + 1)) - { - // - // Find the existing NUp feature node - // - CPTQueryBuilder propertyQuery(m_bstrFrameworkPrefix); - CComPtr<IXMLDOMNode> pFeatureNode(NULL); - CComBSTR bstrFeatureQuery; - - if (SUCCEEDED(hr = propertyQuery.AddFeature(m_bstrKeywordsPrefix, CComBSTR(NUP_FEATURES[nupFeatures]))) && - SUCCEEDED(hr = propertyQuery.GetQuery(&bstrFeatureQuery)) && - SUCCEEDED(hr = GetNode(bstrFeatureQuery, &pFeatureNode)) && - hr != S_FALSE) - { - CComPtr<IXMLDOMElement> pPresentationFeature(NULL); - - // - // Create the presentation feature options - // - if (SUCCEEDED(hr = CreateFeature(CComBSTR(NUP_DIRECTION_FEATURE), - NULL, - &pPresentationFeature))) - { - PTDOMElementVector optionList; - - for (ENUpDirectionOption presentationOption = ENUpDirectionOptionMin; - presentationOption < ENUpDirectionOptionMax && SUCCEEDED(hr); - presentationOption = static_cast<ENUpDirectionOption>(presentationOption + 1)) - { - // - // Create the presentation options property element - // - CComPtr<IXMLDOMElement> pOptionProperty(NULL); - - if (SUCCEEDED(hr = CreateOption(CComBSTR(NUP_DIRECTION_OPTIONS[presentationOption]), NULL, &pOptionProperty))) - { - optionList.push_back(pOptionProperty); - } - } - - // - // Add the options into the presentation feature - // - PTDOMElementVector::iterator iterOptionList = optionList.begin(); - - for (;iterOptionList != optionList.end() && SUCCEEDED(hr); iterOptionList++) - { - hr = pPresentationFeature->appendChild(*iterOptionList, NULL); - } - - // - // Add the presentation feature into the existing NUp feature - // - if (SUCCEEDED(hr)) - { - hr = pFeatureNode->appendChild(pPresentationFeature, NULL); - } - } - } - } - } - catch (exception& DBG_ONLY(e)) - { - ERR(e.what()); - hr = E_FAIL; - } - - ERR_ON_HR(hr); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/nupchndlr.h b/print/XPSDrvSmpl/src/common/nupchndlr.h deleted file mode 100644 index f829d739..00000000 --- a/print/XPSDrvSmpl/src/common/nupchndlr.h +++ /dev/null @@ -1,41 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - nupchndlr.h - -Abstract: - - NUp PrintCapabilities handling definition. The NUp PC handler - is used to set NUp settings in a PrintCapabilities. - ---*/ - -#pragma once - -#include "pchndlr.h" -#include "nupdata.h" - -class CNUpPCHandler : public CPCHandler -{ -public: - CNUpPCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ); - - virtual ~CNUpPCHandler(); - - HRESULT - SetCapabilities( - VOID - ); -}; diff --git a/print/XPSDrvSmpl/src/common/nupdata.h b/print/XPSDrvSmpl/src/common/nupdata.h deleted file mode 100644 index bf76500a..00000000 --- a/print/XPSDrvSmpl/src/common/nupdata.h +++ /dev/null @@ -1,46 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - nupdata.h - -Abstract: - - NUp data structure definition. This provides a convenient description - of the PrintSchema JobNUpAllDocumentsContiguously and DocumentNUp features. - ---*/ - -#pragma once - -#include "nupschema.h" - -namespace XDPrintSchema -{ - namespace NUp - { - struct NUpData - { - NUpData() : - nUpFeature(JobNUpAllDocumentsContiguously), - cNUp(1), - nUpPresentDir(PresentationDirection::RightBottom) - { - } - - ENUpFeature nUpFeature; - INT cNUp; - PresentationDirection::ENUpDirectionOption nUpPresentDir; - }; - } -} - diff --git a/print/XPSDrvSmpl/src/common/nupschema.cpp b/print/XPSDrvSmpl/src/common/nupschema.cpp deleted file mode 100644 index 7ae67391..00000000 --- a/print/XPSDrvSmpl/src/common/nupschema.cpp +++ /dev/null @@ -1,46 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - nupschema.cpp - -Abstract: - - NUp PrintSchema implementation. This implements the features, - options and enumerations that describe the PrintSchema JobNUpAllDocumentsContiguously - and DocumentNUp features. - ---*/ - -#include "precomp.h" -#include "nupschema.h" - -LPCWSTR XDPrintSchema::NUp::NUP_FEATURES[] = { - L"JobNUpAllDocumentsContiguously", - L"DocumentNUp" -}; - -LPCWSTR XDPrintSchema::NUp::NUP_PROP = L"PagesPerSheet"; - -LPCWSTR XDPrintSchema::NUp::PresentationDirection::NUP_DIRECTION_FEATURE = L"PresentationDirection"; - -LPCWSTR XDPrintSchema::NUp::PresentationDirection::NUP_DIRECTION_OPTIONS[] = { - L"RightBottom", - L"BottomRight", - L"LeftBottom", - L"BottomLeft", - L"RightTop", - L"TopRight", - L"LeftTop", - L"TopLeft" -}; - diff --git a/print/XPSDrvSmpl/src/common/nupschema.h b/print/XPSDrvSmpl/src/common/nupschema.h deleted file mode 100644 index 4c10451d..00000000 --- a/print/XPSDrvSmpl/src/common/nupschema.h +++ /dev/null @@ -1,77 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - nupschema.h - -Abstract: - - NUp PrintSchema definition. This defines the features, options and - enumerations that describe the PrintSchema JobNUpAllDocumentsContiguously and DocumentNUp - features within a XDPrintSchema::NUp namespace. - ---*/ - -#pragma once - -#include "schema.h" - -namespace XDPrintSchema -{ - // - // NUp elements described as Printschema keywords - // - namespace NUp - { - // - // JobNUpAllDocumentsContiguously and DocumentNUp share identical options so we define two - // features within the NUp namespace. - // - enum ENUpFeature - { - JobNUpAllDocumentsContiguously = 0, ENUpFeatureMin = 0, - DocumentNUp, - ENUpFeatureMax - }; - - extern LPCWSTR NUP_FEATURES[ENUpFeatureMax]; - - extern LPCWSTR NUP_PROP; - - namespace PresentationDirection - { - // - // Feature name - // - extern LPCWSTR NUP_DIRECTION_FEATURE; - - // - // Option names - // - enum ENUpDirectionOption - { - RightBottom = 0, ENUpDirectionOptionMin = 0, - BottomRight, - LeftBottom, - BottomLeft, - RightTop, - TopRight, - LeftTop, - TopLeft, - ENUpDirectionOptionMax - }; - - extern LPCWSTR NUP_DIRECTION_OPTIONS[ENUpDirectionOptionMax]; - } - } -} - diff --git a/print/XPSDrvSmpl/src/common/nupthndlr.cpp b/print/XPSDrvSmpl/src/common/nupthndlr.cpp deleted file mode 100644 index be836bcc..00000000 --- a/print/XPSDrvSmpl/src/common/nupthndlr.cpp +++ /dev/null @@ -1,309 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - nupthndlr.cpp - -Abstract: - - NUp PrintTicket handling implementation. The nup PT handler - is used to extract nup settings from a PrintTicket and populate - the nup properties class with the retrieved settings. The class also - defines a method for setting the feature in the PrintTicket given the - data structure. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "nupthndlr.h" - -using XDPrintSchema::NUp::NUpData; -using XDPrintSchema::NUp::ENUpFeature; -using XDPrintSchema::NUp::ENUpFeatureMin; -using XDPrintSchema::NUp::ENUpFeatureMax; -using XDPrintSchema::NUp::NUP_FEATURES; -using XDPrintSchema::NUp::NUP_PROP; - -using XDPrintSchema::NUp::PresentationDirection::ENUpDirectionOption; -using XDPrintSchema::NUp::PresentationDirection::ENUpDirectionOptionMin; -using XDPrintSchema::NUp::PresentationDirection::ENUpDirectionOptionMax; -using XDPrintSchema::NUp::PresentationDirection::NUP_DIRECTION_FEATURE; -using XDPrintSchema::NUp::PresentationDirection::NUP_DIRECTION_OPTIONS; - -/*++ - -Routine Name: - - CNUpPTHandler::CNUpPTHandler - -Routine Description: - - CNUpPTHandler class constructor - -Arguments: - - pPrintTicket - Pointer to the DOM document representation of the PrintTicket - -Return Value: - - None - ---*/ -CNUpPTHandler::CNUpPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ) : - CPTHandler(pPrintTicket) -{ -} - -/*++ - -Routine Name: - - CNUpPTHandler::~CNUpPTHandler - -Routine Description: - - CNUpPTHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CNUpPTHandler::~CNUpPTHandler() -{ -} - -/*++ - -Routine Name: - - CNUpPTHandler::GetData - -Routine Description: - - The routine fills the data structure passed in with NUp data retrieved from - the PrintTicket passed to the class constructor. - -Arguments: - - pNUpData - Pointer to the NUp data structure to be filled in - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - Feature not present in PrintTicket - E_* - On error - ---*/ -HRESULT -CNUpPTHandler::GetData( - _Out_ NUpData* pNUpData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pNUpData, E_POINTER))) - { - for (ENUpFeature nUpFeature = ENUpFeatureMin; - nUpFeature < ENUpFeatureMax; - nUpFeature = static_cast<ENUpFeature>(nUpFeature + 1)) - { - CComBSTR bstrPresentOption; - CComBSTR bstrFeature(NUP_FEATURES[nUpFeature]); - - if (SUCCEEDED(hr = FeaturePresent(bstrFeature, NULL)) && - SUCCEEDED(hr = GetSubFeatureOption(bstrFeature, - CComBSTR(NUP_DIRECTION_FEATURE), - &bstrPresentOption)) && - SUCCEEDED(hr = GetScoredPropertyValue(bstrFeature, CComBSTR(NUP_PROP), &pNUpData->cNUp))) - { - // - // We may be set to 1-up. If so treat as though the feature is not present - // - if (pNUpData->cNUp > 1) - { - pNUpData->nUpFeature = nUpFeature; - - // - // Convert the presentation direction string to our enumeration - // - for (ENUpDirectionOption presDir = ENUpDirectionOptionMin; - presDir < ENUpDirectionOptionMax; - presDir = static_cast<ENUpDirectionOption>(presDir + 1)) - { - if (bstrPresentOption == NUP_DIRECTION_OPTIONS[presDir]) - { - pNUpData->nUpPresentDir = presDir; - break; - } - } - - // - // We have found and initialised the feature - break out the feature loop - // - break; - } - else - { - hr = E_ELEMENT_NOT_FOUND; - } - } - else if (hr != E_ELEMENT_NOT_FOUND) - { - // - // We have an error other than the element is not present - // so we break and let the result return - // - break; - } - } - } - - // - // Validate the data - // - if (SUCCEEDED(hr)) - { - if (pNUpData->nUpFeature < ENUpFeatureMin || - pNUpData->nUpFeature >= ENUpFeatureMax || - pNUpData->nUpPresentDir < ENUpDirectionOptionMin || - pNUpData->nUpPresentDir >= ENUpDirectionOptionMax) - { - hr = E_FAIL; - } - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CNUpPTHandler::SetData - -Routine Description: - - This routine sets the NUp data in the PrintTicket passed to the - class constructor. Note: The GPD handles the NUp count option and - scored properties so we only have to add the presentation direction - sub-feature. - -Arguments: - - pNUpData - Pointer to the NUp data to be set in the PrintTicket - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CNUpPTHandler::SetData( - _In_ CONST NUpData* pNUpData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pNUpData, E_POINTER))) - { - if (pNUpData->nUpFeature < ENUpFeatureMin || - pNUpData->nUpFeature >= ENUpFeatureMax || - pNUpData->nUpPresentDir < ENUpDirectionOptionMin || - pNUpData->nUpPresentDir >= ENUpDirectionOptionMax) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - // - // Check the appropriate NUp option is set in the PT - // - CComPtr<IXMLDOMNode> pNUpFeature(NULL); - CComBSTR bstrFeature(NUP_FEATURES[pNUpData->nUpFeature]); - - if (SUCCEEDED(hr = FeaturePresent(bstrFeature, &pNUpFeature))) - { - // - // The NUp feature is present. Create the presentation direction sub-feature - // and ensure it is set in the PrintTicket. - // - CComPtr<IXMLDOMElement> pPresDirFeature(NULL); - CComPtr<IXMLDOMElement> pPresDirOption(NULL); - - if (SUCCEEDED(hr = DeleteFeature(CComBSTR(NUP_DIRECTION_FEATURE))) && - SUCCEEDED(hr = CreateFeatureOptionPair(CComBSTR(NUP_DIRECTION_FEATURE), - CComBSTR(NUP_DIRECTION_OPTIONS[pNUpData->nUpPresentDir]), - &pPresDirFeature, - &pPresDirOption))) - { - hr = pNUpFeature->appendChild(pPresDirFeature, NULL); - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CNUpPTHandler::Delete - -Routine Description: - - This routine deletes the NUp feature from the PrintTicket passed to the - class constructor - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CNUpPTHandler::Delete() -{ - HRESULT hr = S_OK; - - for (ENUpFeature nUpFeature = ENUpFeatureMin; - nUpFeature < ENUpFeatureMax && SUCCEEDED(hr); - nUpFeature = static_cast<ENUpFeature>(nUpFeature + 1)) - { - hr = DeleteFeature(CComBSTR(NUP_FEATURES[nUpFeature])); - } - - ERR_ON_HR(hr); - return hr; -} diff --git a/print/XPSDrvSmpl/src/common/nupthndlr.h b/print/XPSDrvSmpl/src/common/nupthndlr.h deleted file mode 100644 index eaeb22a6..00000000 --- a/print/XPSDrvSmpl/src/common/nupthndlr.h +++ /dev/null @@ -1,53 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - nupthndlr.h - -Abstract: - - NUp properties class implementation. The NUp properties class - is responsible for holding and controling NUp properties. - ---*/ - -#pragma once - - -#include "pthndlr.h" -#include "nupdata.h" - -class CNUpPTHandler : public CPTHandler -{ -public: - CNUpPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ); - - virtual ~CNUpPTHandler(); - - HRESULT - GetData( - _Out_ XDPrintSchema::NUp::NUpData* pNUpData - ); - - HRESULT - SetData( - _In_ CONST XDPrintSchema::NUp::NUpData* pNUpData - ); - - HRESULT - Delete( - VOID - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/pchndlr.cpp b/print/XPSDrvSmpl/src/common/pchndlr.cpp deleted file mode 100644 index c480ac52..00000000 --- a/print/XPSDrvSmpl/src/common/pchndlr.cpp +++ /dev/null @@ -1,640 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -File Name: - - pchndlr.cpp - -Abstract: - - Base PrintCapabilities handler class implementation. This class provides common - PrintCapabilities handling functionality for any feature that requires - PrintCapabilities handling. A feature specific handler can derive from - this class to get feature unspecific XML handling functionality. - ---*/ - - -// -// Note on handling missing DOM nodes: -// -// Convert MSXML's S_FALSE to E_ELEMENT_NOT_FOUND. This allows clients to -// use the SUCCEEDED macro more effectively. -// -// E_ELEMENT_NOT_FOUND should not be propogated as an error to the -// filter pipeline or config module - treat as though the requested feature -// has not been enabled. -// - -#include "precomp.h" -#include "debug.h" -#include "xdstring.h" -#include "pchndlr.h" - -using XDPrintSchema::PRINTCAPABILITIES_NAME; -using XDPrintSchema::PARAM_DEF_ELEMENT_NAME; -using XDPrintSchema::NAME_ATTRIBUTE_NAME; -using XDPrintSchema::SCHEMA_CONDITIONAL; -using XDPrintSchema::SCHEMA_INTEGER; -using XDPrintSchema::DATATYPE_VALUE_NAME; -using XDPrintSchema::SCHEMA_QNAME; -using XDPrintSchema::DEFAULTVAL_VALUE_NAME; -using XDPrintSchema::SCHEMA_STRING; -using XDPrintSchema::MAX_VALUE_NAME; -using XDPrintSchema::MIN_VALUE_NAME; -using XDPrintSchema::MAX_LENGTH_NAME; -using XDPrintSchema::MIN_LENGTH_NAME; -using XDPrintSchema::MANDATORY_VALUE_NAME; -using XDPrintSchema::UNITTYPE_VALUE_NAME; -using XDPrintSchema::MULTIPLE_VALUE_NAME; -using XDPrintSchema::DISPLAYNAME_VALUE_NAME; -using XDPrintSchema::SCHEMA_DECIMAL; -using XDPrintSchema::FEATURE_ELEMENT_NAME; -using XDPrintSchema::PICKONE_VALUE_NAME; -using XDPrintSchema::SELECTIONTYPE_VALUE_NAME; -using XDPrintSchema::OPTION_ELEMENT_NAME; -using XDPrintSchema::PARAM_REF_ELEMENT_NAME; -using XDPrintSchema::FRAMEWORK_URI; -using XDPrintSchema::KEYWORDS_URI; - -/*++ - -Routine Name: - - CPCHandler::CPCHandler - -Routine Description: - - CPCHandler class constructor - -Arguments: - - pPrintCapabilities - Pointer to the DOM document representation of the PrintCapabilities - -Return Value: - - None - - Note: Base Class (CPSHandler) - Throws CXDException(HRESULT) on an error - ---*/ -CPCHandler::CPCHandler( - _In_ IXMLDOMDocument2 *pDOMDocument - ) : - CPSHandler(CComBSTR(PRINTCAPABILITIES_NAME), pDOMDocument) -{ -} - -/*++ - -Routine Name: - - CPCHandler::~CPCHandler - -Routine Description: - - CPCHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CPCHandler::~CPCHandler() -{ -} - - -/*++ - -Routine Name: - - CPCHandler::CreateStringParameterDef - -Routine Description: - - Creates a String type ParameterDef Element. - -Arguments: - - bstrParamName - Keyword value name for the parameter - bstrDisplayName - Optional string containing a description of the parameter definition. - defaultValue - Default value of the parameter. - minLength - Minimium valid value. - maxLength - Maximium valid value. - multiple - value can be increased or decreased in multiples of. - bstrUnitType - String containing a description of the unit type of the parameter value. - ppParameterDef - Pointer to an IXMLDOMElement that recieves the new element. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPCHandler::CreateStringParameterDef( - _In_z_ CONST BSTR bstrParamName, - _In_ CONST BOOL bIsPublicKeyword, - _In_opt_z_ CONST BSTR bstrDisplayName, - _In_ CONST BSTR defaultValue, - _In_ CONST INT minLength, - _In_ CONST INT maxLength, - _In_z_ CONST BSTR bstrUnitType, - _Outptr_ IXMLDOMElement** ppParameterDef - ) -{ - HRESULT hr = S_OK; - - // - // Create the parameterDef - // - CComBSTR bstrParameter(m_bstrFrameworkPrefix); - bstrParameter += PARAM_DEF_ELEMENT_NAME; - - // - // PageWatermarkSizeWidth and PageWatermarkSizeHeight are non-standard - // parameter names so need to be accessed using a user defined namespace - // - CComBSTR bstrParameterAttrib; - if (bIsPublicKeyword) - { - hr = bstrParameterAttrib.Append(m_bstrKeywordsPrefix); - } - else - { - hr = bstrParameterAttrib.Append(m_bstrUserKeywordsPrefix); - } - - if (SUCCEEDED(hr)) - { - bstrParameterAttrib += bstrParamName; - } - - if(SUCCEEDED(hr)) - { - hr = CreateXMLElement(bstrParameter, FRAMEWORK_URI, ppParameterDef); - } - - if(SUCCEEDED(hr)) - { - if(SUCCEEDED(hr = CreateXMLAttribute(*ppParameterDef, NAME_ATTRIBUTE_NAME, NULL, bstrParameterAttrib ))) - { - CComPtr<IXMLDOMElement> pDataTypeProp(NULL); - CComPtr<IXMLDOMElement> pDefValProp(NULL); - CComPtr<IXMLDOMElement> pMaxLengthProp(NULL); - CComPtr<IXMLDOMElement> pMinLengthProp(NULL); - CComPtr<IXMLDOMElement> pMandatoryProp(NULL); - CComPtr<IXMLDOMElement> pUnitTypeProp(NULL); - - CComBSTR bstrMandatory(m_bstrKeywordsPrefix); - bstrMandatory += SCHEMA_CONDITIONAL; - - CStringXDW cstrMaxLength; - cstrMaxLength.Format(L"%i", maxLength); - - CStringXDW cstrMinLength; - cstrMinLength.Format(L"%i", minLength); - - CComBSTR bstrStringType(m_bstrSchemaPrefix); - bstrStringType += SCHEMA_STRING; - - if (SUCCEEDED(hr = CreateProperty(CComBSTR(DATATYPE_VALUE_NAME), CComBSTR(SCHEMA_QNAME), bstrStringType, &pDataTypeProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(DEFAULTVAL_VALUE_NAME), CComBSTR(SCHEMA_STRING), defaultValue, &pDefValProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(MAX_LENGTH_NAME), CComBSTR(SCHEMA_INTEGER), CComBSTR(cstrMaxLength), &pMaxLengthProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(MIN_LENGTH_NAME), CComBSTR(SCHEMA_INTEGER), CComBSTR(cstrMinLength), &pMinLengthProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(MANDATORY_VALUE_NAME), CComBSTR(SCHEMA_QNAME), bstrMandatory, &pMandatoryProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(UNITTYPE_VALUE_NAME), CComBSTR(SCHEMA_STRING), bstrUnitType, &pUnitTypeProp)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pDataTypeProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pDefValProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pMaxLengthProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pMinLengthProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pMandatoryProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pUnitTypeProp, NULL))) - { - if (SUCCEEDED(hr) && - SysStringLen(bstrDisplayName) > 0) - { - CComPtr<IXMLDOMElement> pDisplayProp(NULL); - - if (SUCCEEDED(hr = CreateProperty(CComBSTR(DISPLAYNAME_VALUE_NAME), CComBSTR(SCHEMA_STRING), bstrDisplayName, &pDisplayProp))) - { - hr = (*ppParameterDef)->appendChild(pDisplayProp, NULL); - } - } - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPCHandler::CreateIntParameterDef - -Routine Description: - - Creates a Integer type ParameterDef Element. - -Arguments: - - bstrParamName - Keyword value name for the parameter - bstrDisplayName - Optional string containing a description of the parameter definition. - defaultValue - Default value of the parameter. - minValue - Minimium valid value. - maxLength - Maximium valid value. - multiple - value can be increased or decreased in multiples of. - bstrUnitType - String containing a description of the unit type of the parameter value. - ppParameterDef - Pointer to an IXMLDOMElement that recieves the new element. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPCHandler::CreateIntParameterDef( - _In_z_ CONST BSTR bstrParamName, - _In_ CONST BOOL bIsPublicKeyword, - _In_opt_z_ CONST BSTR bstrDisplayName, - _In_ CONST INT defaultValue, - _In_ CONST INT minValue, - _In_ CONST INT maxValue, - _In_ CONST INT multiple, - _In_z_ CONST BSTR bstrUnitType, - _Outptr_ IXMLDOMElement** ppParameterDef - ) -{ - HRESULT hr = S_OK; - - // - // Create the parameterDef - // - CComBSTR bstrParameter(m_bstrFrameworkPrefix); - bstrParameter += PARAM_DEF_ELEMENT_NAME; - - CComBSTR bstrParameterAttrib; - if (bIsPublicKeyword) - { - hr = bstrParameterAttrib.Append(m_bstrKeywordsPrefix); - } - else - { - hr = bstrParameterAttrib.Append(m_bstrUserKeywordsPrefix); - } - - if (SUCCEEDED(hr)) - { - bstrParameterAttrib += bstrParamName; - } - - if(SUCCEEDED(hr)) - { - hr = CreateXMLElement(bstrParameter, FRAMEWORK_URI, ppParameterDef); - } - - if(SUCCEEDED(hr)) - { - if(SUCCEEDED(hr = CreateXMLAttribute(*ppParameterDef, NAME_ATTRIBUTE_NAME, NULL, bstrParameterAttrib ))) - { - CComPtr<IXMLDOMElement> pDataTypeProp(NULL); - CComPtr<IXMLDOMElement> pDefValProp(NULL); - CComPtr<IXMLDOMElement> pMaxValueProp(NULL); - CComPtr<IXMLDOMElement> pMinValueProp(NULL); - CComPtr<IXMLDOMElement> pMandatoryProp(NULL); - CComPtr<IXMLDOMElement> pUnitTypeProp(NULL); - CComPtr<IXMLDOMElement> pMultipleProp(NULL); - - CStringXDW cstrMultiple; - cstrMultiple.Format(L"%i", multiple); - - CComBSTR bstrMandatory(m_bstrKeywordsPrefix); - bstrMandatory += SCHEMA_CONDITIONAL; - - CStringXDW cstrDefaultValue; - cstrDefaultValue.Format(L"%i", defaultValue); - - CStringXDW cstrMaxValue; - cstrMaxValue.Format(L"%i", maxValue); - - CStringXDW cstrMinValue; - cstrMinValue.Format(L"%i", minValue); - - CComBSTR bstrIntegerType(m_bstrSchemaPrefix); - bstrIntegerType += SCHEMA_INTEGER; - - if (SUCCEEDED(hr = CreateProperty(CComBSTR(DATATYPE_VALUE_NAME), CComBSTR(SCHEMA_QNAME), bstrIntegerType, &pDataTypeProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(DEFAULTVAL_VALUE_NAME), CComBSTR(SCHEMA_INTEGER), CComBSTR(cstrDefaultValue), &pDefValProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(MAX_VALUE_NAME), CComBSTR(SCHEMA_INTEGER), CComBSTR(cstrMaxValue), &pMaxValueProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(MIN_VALUE_NAME), CComBSTR(SCHEMA_INTEGER), CComBSTR(cstrMinValue), &pMinValueProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(MANDATORY_VALUE_NAME), CComBSTR(SCHEMA_QNAME), bstrMandatory, &pMandatoryProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(UNITTYPE_VALUE_NAME), CComBSTR(SCHEMA_STRING), bstrUnitType, &pUnitTypeProp)) && - SUCCEEDED(hr = CreateProperty(CComBSTR(MULTIPLE_VALUE_NAME), CComBSTR(SCHEMA_INTEGER), CComBSTR(cstrMultiple), &pMultipleProp)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pDataTypeProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pDefValProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pMaxValueProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pMinValueProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pMandatoryProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pUnitTypeProp, NULL)) && - SUCCEEDED(hr = (*ppParameterDef)->appendChild(pMultipleProp, NULL))) - { - if (SysStringLen(bstrDisplayName) > 0) - { - CComPtr<IXMLDOMElement> pDisplayProp(NULL); - - if (SUCCEEDED(hr = CreateProperty(CComBSTR(DISPLAYNAME_VALUE_NAME), CComBSTR(SCHEMA_STRING), bstrDisplayName, &pDisplayProp))) - { - hr = (*ppParameterDef)->appendChild(pDisplayProp, NULL); - } - } - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPCHandler::CreateFeature - -Routine Description: - - Creates a Feature Element. - -Arguments: - - bstrFeatureName - Keyword value name for the feature. - bstrDisplayName - Optional string containing a description of the feature. - ppFeatureElement - Pointer to an IXMLDOMElement that recieves the new element. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPCHandler::CreateFeature( - _In_z_ CONST BSTR bstrFeatureName, - _In_opt_z_ CONST BSTR bstrDisplayName, - _Outptr_ IXMLDOMElement** ppFeatureElement - ) -{ - HRESULT hr = S_OK; - - // - // Create the base feature node - // - CComBSTR bstrFeature(m_bstrFrameworkPrefix); - bstrFeature += FEATURE_ELEMENT_NAME; - - CComBSTR bstrFeatureAttrib(m_bstrKeywordsPrefix); - bstrFeatureAttrib += bstrFeatureName; - - if(SUCCEEDED(hr)) - { - hr = CreateXMLElement(bstrFeature, FRAMEWORK_URI, ppFeatureElement); - } - - if (SUCCEEDED(hr)) - { - hr = CreateXMLAttribute(*ppFeatureElement, NAME_ATTRIBUTE_NAME, NULL, bstrFeatureAttrib ); - } - - // - // Append the Display Name property type - // - if (SUCCEEDED(hr) && - SysStringLen(bstrDisplayName) > 0) - { - CComPtr<IXMLDOMElement> pDisplayProp(NULL); - - if (SUCCEEDED(hr = CreateProperty(CComBSTR(DISPLAYNAME_VALUE_NAME), CComBSTR(SCHEMA_STRING), bstrDisplayName, &pDisplayProp))) - { - hr = (*ppFeatureElement)->appendChild(pDisplayProp, NULL); - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPCHandler::CreateFeatureSelection - -Routine Description: - - Creates a Selection Feature Element. - -Arguments: - - bstrFeatureName - Keyword value name for the feature. - bstrDisplayName - Optional string containing a description of the feature. - ppFeatureElement - Pointer to an IXMLDOMElement that recieves the new element. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPCHandler::CreateFeatureSelection( - _In_z_ CONST BSTR bstrFeatureName, - _In_opt_z_ CONST BSTR bstrDisplayName, - _Outptr_ IXMLDOMElement** ppFeatureElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CreateFeature(bstrFeatureName, bstrDisplayName, ppFeatureElement))) - { - // - // Append the property type - // - CComPtr<IXMLDOMElement> pPropertyTypeElement(NULL); - - // - // Create the keyname - // - CComBSTR bstrPickOne(m_bstrKeywordsPrefix); - bstrPickOne += PICKONE_VALUE_NAME; - - if (SUCCEEDED(hr = CreateFWProperty(CComBSTR(SELECTIONTYPE_VALUE_NAME), CComBSTR(SCHEMA_QNAME), bstrPickOne, &pPropertyTypeElement))) - { - hr = (*ppFeatureElement)->appendChild(pPropertyTypeElement, NULL); - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPCHandler::CreateOption - -Routine Description: - - Creates an Option Type Element. - -Arguments: - - bstrOptionName - Keyword value name for the option. - bstrDisplayName - Optional string containing a description of the feature. - ppOptionElement - Pointer to an IXMLDOMElement that recieves the new element. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPCHandler::CreateOption( - _In_z_ CONST BSTR bstrOptionName, - _In_opt_z_ CONST BSTR bstrDisplayName, - _Outptr_ IXMLDOMElement** ppOptionElement - ) -{ - HRESULT hr = S_OK; - - // - // Create the base feature node - // - CComBSTR bstrOption(m_bstrFrameworkPrefix); - bstrOption += OPTION_ELEMENT_NAME; - - CComBSTR bstrOptionAttrib(m_bstrKeywordsPrefix); - bstrOptionAttrib += bstrOptionName; - - if(SUCCEEDED(hr)) - { - hr = CreateXMLElement(bstrOption, FRAMEWORK_URI, ppOptionElement); - } - - if (SUCCEEDED(hr)) - { - hr = CreateXMLAttribute(*ppOptionElement, NAME_ATTRIBUTE_NAME, NULL, bstrOptionAttrib ); - } - - // - // Append the Display Name property type - // - if (SUCCEEDED(hr) && - SysStringLen(bstrDisplayName) > 0) - { - CComPtr<IXMLDOMElement> pDisplayProp(NULL); - - if (SUCCEEDED(hr = CreateProperty(CComBSTR(DISPLAYNAME_VALUE_NAME), CComBSTR(SCHEMA_STRING), bstrDisplayName, &pDisplayProp))) - { - hr = (*ppOptionElement)->appendChild(pDisplayProp, NULL); - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPCHandler::CreateParameterRef - -Routine Description: - - Creates a Reference to a ParameterDef Element. - -Arguments: - - bstrParamRefName - Keyword value name for the parameter reference. - ppParamRefElement - Pointer to an IXMLDOMElement that recieves the new element. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPCHandler::CreateParameterRef( - _In_z_ CONST BSTR bstrParamRefName, - _Outptr_ IXMLDOMElement** ppParamRefElement - ) -{ - HRESULT hr = S_OK; - - // - // Create the base feature node - // - CComBSTR bstrParameterRef(m_bstrFrameworkPrefix); - bstrParameterRef += PARAM_REF_ELEMENT_NAME; - - - // - // PageWatermarkSizeWidth and PageWatermarkSizeHeight are non-standard - // parameter names so need to be accessed using a user defined namespace - // - CComBSTR bstrParamRefAttrib; - if (wcscmp(bstrParamRefName, L"PageWatermarkSizeWidth") == 0 || - wcscmp(bstrParamRefName, L"PageWatermarkSizeHeight") == 0) - { - hr = bstrParamRefAttrib.Append(m_bstrUserKeywordsPrefix); - } - else - { - hr = bstrParamRefAttrib.Append(m_bstrKeywordsPrefix); - } - - if (SUCCEEDED(hr)) - { - bstrParamRefAttrib += bstrParamRefName; - } - - // - //Create the IXMLDOMNode for ParameterRef - // - CComPtr<IXMLDOMNode> pParameterRefNode(NULL); - - if(SUCCEEDED(hr)) - { - hr = CreateXMLElement(bstrParameterRef, FRAMEWORK_URI, ppParamRefElement); - } - - if (SUCCEEDED(hr)) - { - hr = CreateXMLAttribute(*ppParamRefElement, NAME_ATTRIBUTE_NAME, NULL, bstrParamRefAttrib ); - } - - ERR_ON_HR(hr); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/pchndlr.h b/print/XPSDrvSmpl/src/common/pchndlr.h deleted file mode 100644 index df958354..00000000 --- a/print/XPSDrvSmpl/src/common/pchndlr.h +++ /dev/null @@ -1,91 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -File Name: - - pchndlr.h - -Abstract: - - Base PrintCapabilities handler class definition. This class provides common - PrintCapabilities handling functionality for any feature that requires - PrintCapabilities handling. A feature specific handler can inherit from - this class to get feature unspecific XML handling functionality. - ---*/ - -#pragma once - -#include "schema.h" -#include "pshndlr.h" - -class CPCHandler : public CPSHandler -{ -public: - // - // Constructors and destructors - // - CPCHandler( - _In_ IXMLDOMDocument2 *pPrintCapabilities - ); - - virtual ~CPCHandler(); - -protected: - - HRESULT - CreateStringParameterDef( - _In_z_ CONST BSTR bstrParamName, - _In_ CONST BOOL bIsPublicKeyword, - _In_opt_z_ CONST BSTR bstrDisplayName, - _In_ CONST BSTR bstrDefaultValue, - _In_ CONST INT minLength, - _In_ CONST INT maxLength, - _In_z_ CONST BSTR bstrUnitType, - _Outptr_ IXMLDOMElement** ppParameterDef - ); - - HRESULT - CreateIntParameterDef( - _In_z_ CONST BSTR bstrParamName, - _In_ CONST BOOL bIsPublicKeyword, - _In_opt_z_ CONST BSTR bstrDisplayName, - _In_ CONST INT defaultValue, - _In_ CONST INT minValue, - _In_ CONST INT maxValue, - _In_ CONST INT multiple, - _In_z_ CONST BSTR bstrUnitType, - _Outptr_ IXMLDOMElement** ppParameterDef - ); - - HRESULT - CreateFeature( - _In_z_ CONST BSTR bstrFeatureName, - _In_opt_z_ CONST BSTR bstrDisplayName, - _Outptr_ IXMLDOMElement** ppFeatureElement - ); - - HRESULT - CreateOption( - _In_z_ CONST BSTR bstrOptionName, - _In_opt_z_ CONST BSTR bstrDisplayName, - _Outptr_ IXMLDOMElement** ppOptionElement - ); - - HRESULT - CreateFeatureSelection( - _In_z_ CONST BSTR bstrFeatureName, - _In_opt_z_ CONST BSTR bstrDisplayName, - _Outptr_ IXMLDOMElement** ppFeatureElement - ); - - HRESULT - CreateParameterRef( - _In_z_ CONST BSTR bstrParamRefName, - _Outptr_ IXMLDOMElement** ppParamRefElement - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/pgscdata.h b/print/XPSDrvSmpl/src/common/pgscdata.h deleted file mode 100644 index 7a06ce24..00000000 --- a/print/XPSDrvSmpl/src/common/pgscdata.h +++ /dev/null @@ -1,52 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pgscdata.h - -Abstract: - - PageScaling data structure definition. This provides a convenient - description of the PrintSchema PageScaling feature. - ---*/ - -#pragma once - -#include "pgscschema.h" - -namespace XDPrintSchema -{ - namespace PageScaling - { - struct PageScalingData - { - PageScalingData() : - pgscOption(None), - offWidth(0), - offHeight(0), - scaleWidth(100), - scaleHeight(100), - offsetOption(OffsetAlignment::Center) - { - } - - EScaleOption pgscOption; - INT offWidth; - INT offHeight; - INT scaleWidth; - INT scaleHeight; - OffsetAlignment::EScaleOffsetOption offsetOption; - }; - } -} - diff --git a/print/XPSDrvSmpl/src/common/pgscpchndlr.cpp b/print/XPSDrvSmpl/src/common/pgscpchndlr.cpp deleted file mode 100644 index 12883a69..00000000 --- a/print/XPSDrvSmpl/src/common/pgscpchndlr.cpp +++ /dev/null @@ -1,349 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pgscpchndlr.cpp - -Abstract: - - Pagescale PrintCapabilities handling implementation. The pagescale PC handler - is used to set page scaling settings in a PrintCapabilities. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "pgscpchndlr.h" -#include "privatedefs.h" - -using XDPrintSchema::PRINTCAPABILITIES_NAME; - -using XDPrintSchema::PageScaling::EScaleOption; -using XDPrintSchema::PageScaling::FitBleedToImageable; -using XDPrintSchema::PageScaling::FitMediaToMedia; -using XDPrintSchema::PageScaling::Custom; -using XDPrintSchema::PageScaling::CustomSquare; -using XDPrintSchema::PageScaling::ECustomScaleProps; -using XDPrintSchema::PageScaling::ECustomScalePropsMin; -using XDPrintSchema::PageScaling::ECustomScalePropsMax; -using XDPrintSchema::PageScaling::ECustomSquareScaleProps; -using XDPrintSchema::PageScaling::ECustomSquareScalePropsMin; -using XDPrintSchema::PageScaling::ECustomSquareScalePropsMax; -using XDPrintSchema::PageScaling::SCALE_FEATURE; -using XDPrintSchema::PageScaling::SCALE_OPTIONS; -using XDPrintSchema::PageScaling::CUST_SCALE_PROPS; -using XDPrintSchema::PageScaling::CUST_SQR_SCALE_PROPS; - -using XDPrintSchema::PageScaling::OffsetAlignment::EScaleOffsetOption; -using XDPrintSchema::PageScaling::OffsetAlignment::EScaleOffsetOptionMin; -using XDPrintSchema::PageScaling::OffsetAlignment::EScaleOffsetOptionMax; -using XDPrintSchema::PageScaling::OffsetAlignment::SCALE_OFFSET_FEATURE; -using XDPrintSchema::PageScaling::OffsetAlignment::SCALE_OFFSET_OPTIONS; - -/*++ - -Routine Name: - - CPageScalingPCHandler::CPageScalingPCHandler - -Routine Description: - - CPageScalingPCHandler class constructor - -Arguments: - - pPrintCapabilities - Pointer to the DOM document representation of the PrintCapabilities - -Return Value: - - None - ---*/ -CPageScalingPCHandler::CPageScalingPCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ) : - CPCHandler(pPrintCapabilities) -{ -} - -/*++ - -Routine Name: - - CPageScalingPCHandler::~CPageScalingPCHandler - -Routine Description: - - CPageScalingPCHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CPageScalingPCHandler::~CPageScalingPCHandler() -{ -} - -/*++ - -Routine Name: - - CPageScalingPCHandler::SetCapabilities - -Routine Description: - - This routine sets page scaling capabilities in the PrintCapabilities passed to the - class constructor. - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPageScalingPCHandler::SetCapabilities( - VOID - ) -{ - HRESULT hr = S_OK; - - try - { - // - // Retrieve the PrintTicket root - // - CComPtr<IXMLDOMNode> pPTRoot(NULL); - - CComBSTR bstrPTQuery(m_bstrFrameworkPrefix); - bstrPTQuery += PRINTCAPABILITIES_NAME; - - if (SUCCEEDED(hr = GetNode(bstrPTQuery, &pPTRoot))) - { - CComPtr<IXMLDOMElement> pFeatureElement(NULL); - - if (SUCCEEDED(hr = CreateFeatureSelection(CComBSTR(SCALE_FEATURE), NULL, &pFeatureElement))) - { - CComPtr<IXMLDOMElement> pCustomOption(NULL); - - // - // Create the Custom Options - // - if (SUCCEEDED(hr = CreateOption(CComBSTR(SCALE_OPTIONS[Custom]), NULL, &pCustomOption))) - { - PTDOMElementVector propertList; - - for (ECustomScaleProps customProps = ECustomScalePropsMin; - customProps < ECustomScalePropsMax && SUCCEEDED(hr); - customProps = static_cast<ECustomScaleProps>(customProps + 1)) - { - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - // - // Create the scored property list - // - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(CUST_SCALE_PROPS[customProps]), &pScoredProperty))) - { - CComPtr<IXMLDOMElement> pParamRef(NULL); - - // - // Construct the parameter reference elements - // - CComBSTR bstrPRefName(SCALE_FEATURE); - bstrPRefName += CUST_SCALE_PROPS[customProps]; - - if (SUCCEEDED(hr = CreateParameterRef(bstrPRefName, &pParamRef))) - { - hr = pScoredProperty->appendChild(pParamRef, NULL); - } - - propertList.push_back(pScoredProperty); - } - } - - // - // Add the properties to the custom option - // - PTDOMElementVector::iterator iterPropertList = propertList.begin(); - - for (;iterPropertList != propertList.end() && SUCCEEDED(hr); iterPropertList++) - { - hr = pCustomOption->appendChild(*iterPropertList, NULL); - } - - if (SUCCEEDED(hr)) - { - hr = pFeatureElement->appendChild(pCustomOption, NULL); - } - } - - CComPtr<IXMLDOMElement> pCustomSquareOption(NULL); - - // - // Create the Custom Square - // - if (SUCCEEDED(hr) && - SUCCEEDED(hr = CreateOption(CComBSTR(SCALE_OPTIONS[CustomSquare]), NULL, &pCustomSquareOption))) - { - PTDOMElementVector propertList; - - for (ECustomSquareScaleProps customSquareProps = ECustomSquareScalePropsMin; - customSquareProps < ECustomSquareScalePropsMax && SUCCEEDED(hr); - customSquareProps = static_cast<ECustomSquareScaleProps>(customSquareProps + 1)) - { - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - // - // Create the scored property list - // - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(CUST_SQR_SCALE_PROPS[customSquareProps]), &pScoredProperty))) - { - CComPtr<IXMLDOMElement> pParamRef(NULL); - - // - // Construct the parameter reference elements - // - CComBSTR bstrPRefName(SCALE_FEATURE); - bstrPRefName += CUST_SQR_SCALE_PROPS[customSquareProps]; - - if (SUCCEEDED(hr = CreateParameterRef(bstrPRefName, &pParamRef))) - { - hr = pScoredProperty->appendChild(pParamRef, NULL); - } - - propertList.push_back(pScoredProperty); - } - } - - // - // Add the properties to the custom square option - // - PTDOMElementVector::iterator iterPropertList = propertList.begin(); - - for (;iterPropertList != propertList.end() && SUCCEEDED(hr); iterPropertList++) - { - hr = pCustomSquareOption->appendChild(*iterPropertList, NULL); - } - - if (SUCCEEDED(hr)) - { - hr = pFeatureElement->appendChild(pCustomSquareOption, NULL); - } - } - - // - // Create the remaining scaling options: Fit To ... - // - for (EScaleOption fitToOptions = FitBleedToImageable; - fitToOptions <= FitMediaToMedia && SUCCEEDED(hr); - fitToOptions = static_cast<EScaleOption>(fitToOptions + 1)) - { - CComPtr<IXMLDOMElement> pFitToOption(NULL); - - // - // Create the fit to page option - // - if (SUCCEEDED(hr = CreateOption(CComBSTR(SCALE_OPTIONS[fitToOptions]), NULL, &pFitToOption))) - { - hr = pFeatureElement->appendChild(pFitToOption, NULL); - } - } - - // - // Create the offset options - // - if (SUCCEEDED(hr)) - { - CComPtr<IXMLDOMElement> pOffsetFeature(NULL); - if (SUCCEEDED(hr = CreateFeature(CComBSTR(SCALE_OFFSET_FEATURE), - NULL, - &pOffsetFeature))) - { - PTDOMElementVector optionList; - - for (EScaleOffsetOption offsetOption = EScaleOffsetOptionMin; - offsetOption < EScaleOffsetOptionMax && SUCCEEDED(hr); - offsetOption = static_cast<EScaleOffsetOption>(offsetOption + 1)) - { - CComPtr<IXMLDOMElement> pOptionProperty(NULL); - - if (SUCCEEDED(hr = CreateOption(CComBSTR(SCALE_OFFSET_OPTIONS[offsetOption]), NULL, &pOptionProperty))) - { - optionList.push_back(pOptionProperty); - } - } - - // - // Add the options to the offset feature - // - PTDOMElementVector::iterator iterOptionList = optionList.begin(); - - for (;iterOptionList != optionList.end() && SUCCEEDED(hr); iterOptionList++) - { - hr = pOffsetFeature->appendChild(*iterOptionList, NULL); - } - } - - if (SUCCEEDED(hr)) - { - hr = pFeatureElement->appendChild(pOffsetFeature, NULL); - } - } - - if (SUCCEEDED(hr)) - { - hr = pPTRoot->appendChild(pFeatureElement, NULL); - } - } - - for (UINT cIndex = 0; cIndex < numof(pgscParamDefIntegers); cIndex++) - { - CComPtr<IXMLDOMElement> pParameterDef(NULL); - - if (SUCCEEDED(hr = CreateIntParameterDef(CComBSTR(pgscParamDefIntegers[cIndex].property_name), // Paramater Name - pgscParamDefIntegers[cIndex].is_public, // Is Print Schema Keyword? - CComBSTR(pgscParamDefIntegers[cIndex].display_name), // Display Text - pgscParamDefIntegers[cIndex].default_value, // Default - pgscParamDefIntegers[cIndex].min_length, // Min Length - pgscParamDefIntegers[cIndex].max_length, // Max Length - pgscParamDefIntegers[cIndex].multiple, // Multiple - CComBSTR(pgscParamDefIntegers[cIndex].unit_type), // Unit Type - &pParameterDef))) // Parameter Def - { - hr = pPTRoot->appendChild(pParameterDef, NULL); - } - } - } - } - catch (exception& DBG_ONLY(e)) - { - ERR(e.what()); - hr = E_FAIL; - } - - ERR_ON_HR(hr); - return hr; -} - - diff --git a/print/XPSDrvSmpl/src/common/pgscpchndlr.h b/print/XPSDrvSmpl/src/common/pgscpchndlr.h deleted file mode 100644 index 3d30583f..00000000 --- a/print/XPSDrvSmpl/src/common/pgscpchndlr.h +++ /dev/null @@ -1,41 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pgscpchndlr.h - -Abstract: - - Page Scaling PrintCapabilities handling definition. The page scaling PC handler - is used to set page scaling settings in a PrintCapabilities. - ---*/ - -#pragma once - -#include "pchndlr.h" -#include "pgscdata.h" - -class CPageScalingPCHandler : public CPCHandler -{ -public: - CPageScalingPCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ); - - virtual ~CPageScalingPCHandler(); - - HRESULT - SetCapabilities( - VOID - ); -}; diff --git a/print/XPSDrvSmpl/src/common/pgscpthndlr.cpp b/print/XPSDrvSmpl/src/common/pgscpthndlr.cpp deleted file mode 100644 index beffe034..00000000 --- a/print/XPSDrvSmpl/src/common/pgscpthndlr.cpp +++ /dev/null @@ -1,479 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pgscpthndlr.cpp - -Abstract: - - PageScaling PrintTicket handler implementation. Derived from CPTHandler, - this provides PageScaling specific Get and Set methods acting on the - PrintTicket (as a DOM document) passed. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "pgscpthndlr.h" - -using XDPrintSchema::PRINTTICKET_NAME; -using XDPrintSchema::NAME_ATTRIBUTE_NAME; - -using XDPrintSchema::PageScaling::PageScalingData; -using XDPrintSchema::PageScaling::EScaleOption; -using XDPrintSchema::PageScaling::EScaleOptionMin; -using XDPrintSchema::PageScaling::Custom; -using XDPrintSchema::PageScaling::CustomSquare; -using XDPrintSchema::PageScaling::FitBleedToImageable; -using XDPrintSchema::PageScaling::FitContentToImageable; -using XDPrintSchema::PageScaling::FitMediaToImageable; -using XDPrintSchema::PageScaling::FitMediaToMedia; -using XDPrintSchema::PageScaling::None; -using XDPrintSchema::PageScaling::EScaleOptionMax; -using XDPrintSchema::PageScaling::ECustomScaleProps; -using XDPrintSchema::PageScaling::ECustomScalePropsMin; -using XDPrintSchema::PageScaling::CstOffsetWidth; -using XDPrintSchema::PageScaling::CstOffsetHeight; -using XDPrintSchema::PageScaling::CstScaleWidth; -using XDPrintSchema::PageScaling::CstScaleHeight; -using XDPrintSchema::PageScaling::ECustomScalePropsMax; -using XDPrintSchema::PageScaling::ECustomSquareScaleProps; -using XDPrintSchema::PageScaling::ECustomSquareScalePropsMin; -using XDPrintSchema::PageScaling::CstSqOffsetWidth; -using XDPrintSchema::PageScaling::CstSqOffsetHeight; -using XDPrintSchema::PageScaling::CstSqScale; -using XDPrintSchema::PageScaling::ECustomSquareScalePropsMax; -using XDPrintSchema::PageScaling::SCALE_FEATURE; -using XDPrintSchema::PageScaling::SCALE_OPTIONS; -using XDPrintSchema::PageScaling::CUST_SCALE_PROPS; -using XDPrintSchema::PageScaling::CUST_SQR_SCALE_PROPS; - -using XDPrintSchema::PageScaling::OffsetAlignment::EScaleOffsetOption; -using XDPrintSchema::PageScaling::OffsetAlignment::EScaleOffsetOptionMin; -using XDPrintSchema::PageScaling::OffsetAlignment::EScaleOffsetOptionMax; -using XDPrintSchema::PageScaling::OffsetAlignment::SCALE_OFFSET_FEATURE; -using XDPrintSchema::PageScaling::OffsetAlignment::SCALE_OFFSET_OPTIONS; - -/*++ - -Routine Name: - - CPageScalingPTHandler::CPageScalingPTHandler - -Routine Description: - - CPageScalingPTHandler class constructor - -Arguments: - - pPrintTicket - Pointer to the DOM document representation of the PrintTicket - -Return Value: - - None - ---*/ -CPageScalingPTHandler::CPageScalingPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ) : - CPTHandler(pPrintTicket) -{ -} - -/*++ - -Routine Name: - - CPageScalingPTHandler::~CPageScalingPTHandler - -Routine Description: - - CPageScalingPTHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CPageScalingPTHandler::~CPageScalingPTHandler() -{ -} - -/*++ - -Routine Name: - - CPageScalingPTHandler::GetData - -Routine Description: - - The routine fills the data structure passed in with page scaling data - retrieved from the PrintTicket passed to the class constructor. - -Arguments: - - pPageScaleData - Pointer to the page scaling data structure to be filled in - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - Feature not present in PrintTicket - E_* - On error - ---*/ -HRESULT -CPageScalingPTHandler::GetData( - _Out_ PageScalingData* pPageScaleData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pPageScaleData, E_POINTER))) - { - CComBSTR bstrPgScOption; - - if (SUCCEEDED(hr = GetFeatureOption(CComBSTR(SCALE_FEATURE), &bstrPgScOption))) - { - if (bstrPgScOption == SCALE_OPTIONS[Custom]) - { - pPageScaleData->pgscOption = Custom; - - if (SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(SCALE_FEATURE), - CComBSTR(CUST_SCALE_PROPS[CstOffsetWidth]), - &pPageScaleData->offWidth)) && - SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(SCALE_FEATURE), - CComBSTR(CUST_SCALE_PROPS[CstOffsetHeight]), - &pPageScaleData->offHeight)) && - SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(SCALE_FEATURE), - CComBSTR(CUST_SCALE_PROPS[CstScaleWidth]), - &pPageScaleData->scaleWidth))) - { - hr = GetScoredPropertyValue(CComBSTR(SCALE_FEATURE), - CComBSTR(CUST_SCALE_PROPS[CstScaleHeight]), - &pPageScaleData->scaleHeight); - } - } - else if (bstrPgScOption == SCALE_OPTIONS[CustomSquare]) - { - pPageScaleData->pgscOption = CustomSquare; - - if (SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(SCALE_FEATURE), - CComBSTR(CUST_SQR_SCALE_PROPS[CstSqOffsetWidth]), - &pPageScaleData->offWidth)) && - SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(SCALE_FEATURE), - CComBSTR(CUST_SQR_SCALE_PROPS[CstSqOffsetHeight]), - &pPageScaleData->offHeight)) && - SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(SCALE_FEATURE), - CComBSTR(CUST_SQR_SCALE_PROPS[CstSqScale]), - &pPageScaleData->scaleWidth))) - { - pPageScaleData->scaleHeight = pPageScaleData->scaleWidth; - } - } - else if (bstrPgScOption == SCALE_OPTIONS[None]) - { - // - // No scaling - return as if no element is present - // - hr = E_ELEMENT_NOT_FOUND; - } - else - { - // - // Identify the option - // - for (EScaleOption pgScOption = FitBleedToImageable; - pgScOption < EScaleOptionMax; - pgScOption = static_cast<EScaleOption>(pgScOption + 1)) - { - if (bstrPgScOption == SCALE_OPTIONS[pgScOption]) - { - pPageScaleData->pgscOption = pgScOption; - - // - // Get the offset alignment - // - CComBSTR bstrOffsetAlignment; - - hr = GetSubFeatureOption(CComBSTR(SCALE_FEATURE), - CComBSTR(SCALE_OFFSET_FEATURE), - &bstrOffsetAlignment); - - // - // Identify the Alignment - // - for (EScaleOffsetOption offOption = EScaleOffsetOptionMin; - offOption < EScaleOffsetOptionMax; - offOption = static_cast<EScaleOffsetOption>(offOption + 1)) - { - if (bstrOffsetAlignment == SCALE_OFFSET_OPTIONS[offOption]) - { - pPageScaleData->offsetOption = offOption; - - break; - } - } - - break; - } - } - } - } - } - - // - // Validate the data - // - if (SUCCEEDED(hr)) - { - if (pPageScaleData->pgscOption < EScaleOptionMin || - pPageScaleData->pgscOption >= EScaleOptionMax) - { - hr = E_FAIL; - } - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPageScalingPTHandler::SetData - -Routine Description: - - This routine sets the page scaling data in the PrintTicket passed to the - class constructor. - -Arguments: - - pPageScaleData - Pointer to the page scale data to be set in the PrintTicket - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPageScalingPTHandler::SetData( - _In_ CONST PageScalingData* pPageScaleData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pPageScaleData, E_POINTER))) - { - if (pPageScaleData->pgscOption < EScaleOptionMin || - pPageScaleData->pgscOption >= EScaleOptionMax || - pPageScaleData->offsetOption < EScaleOffsetOptionMin || - pPageScaleData->offsetOption >= EScaleOffsetOptionMax) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - // - // Remove any existing page scaling feature node - // - CComPtr<IXMLDOMElement> pFeature(NULL); - CComPtr<IXMLDOMElement> pOption(NULL); - - CComBSTR bstrFeature(SCALE_FEATURE); - CComBSTR bstrAttribName(m_bstrKeywordsPrefix); - - if (SUCCEEDED(hr = DeleteFeature(bstrFeature)) && - pPageScaleData->pgscOption != None && - SUCCEEDED(hr = CreateFeatureOptionPair(bstrFeature, &pFeature, &pOption))) - { - // - // Retrieve the PrintTicket root - // - CComPtr<IXMLDOMNode> pPTRoot(NULL); - - CComBSTR bstrPTQuery(m_bstrFrameworkPrefix); - bstrPTQuery += PRINTTICKET_NAME; - - if (SUCCEEDED(hr = GetNode(bstrPTQuery, &pPTRoot))) - { - // - // Append the feature node to the PrintTicket root element - // - hr = pPTRoot->appendChild(pFeature, NULL); - } - - // - // Set the option value - // - bstrAttribName += SCALE_OPTIONS[pPageScaleData->pgscOption]; - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = CreateXMLAttribute(pOption, NAME_ATTRIBUTE_NAME, NULL, bstrAttribName ))) - { - switch (pPageScaleData->pgscOption) - { - case Custom: - { - // - // Create the width offset, height offset, width scale and height scale - // parameter ref/init pairs. Create the relevant scored properties passing the - // paramater refs. Append the scored properties to the option element and the - // paramter init values to the PrintTicket element - // - CONST INT* pValue = &pPageScaleData->offWidth; - for (ECustomScaleProps props = ECustomScalePropsMin; - props < ECustomScalePropsMax && SUCCEEDED(hr); - props = static_cast<ECustomScaleProps>(props + 1), pValue++) - { - CComPtr<IXMLDOMElement> pParamRef(NULL); - CComPtr<IXMLDOMElement> pParamInit(NULL); - CComPtr<IXMLDOMElement> pScoredProp(NULL); - - CComBSTR bstrParamRefName(SCALE_FEATURE); - bstrParamRefName += CUST_SCALE_PROPS[props]; - - if (SUCCEEDED(hr = CreateParamRefInitPair(bstrParamRefName, - *pValue, - &pParamRef,&pParamInit)) && - SUCCEEDED(hr = CreateScoredProperty(CComBSTR(CUST_SCALE_PROPS[props]), - pParamRef, - &pScoredProp)) && - SUCCEEDED(hr = pOption->appendChild(pScoredProp, NULL))) - { - hr = pPTRoot->appendChild(pParamInit, NULL); - } - } - } - break; - - case CustomSquare: - { - // - // Create the width offset, height offset and scale parameter ref/init pairs. - // Create the relevant scored properties passing the paramater refs. Append - // the scored properties to the option element and the paramter init values - // to the PrintTicket element. - // - CONST INT* pValue = &pPageScaleData->offWidth; - for (ECustomSquareScaleProps props = ECustomSquareScalePropsMin; - props < ECustomSquareScalePropsMax && SUCCEEDED(hr); - props = static_cast<ECustomSquareScaleProps>(props + 1), pValue++) - { - CComPtr<IXMLDOMElement> pParamRef(NULL); - CComPtr<IXMLDOMElement> pParamInit(NULL); - CComPtr<IXMLDOMElement> pScoredProp(NULL); - - CComBSTR bstrParamRefName(SCALE_FEATURE); - bstrParamRefName += CUST_SQR_SCALE_PROPS[props]; - - if (SUCCEEDED(hr = CreateParamRefInitPair(bstrParamRefName, - *pValue, - &pParamRef, - &pParamInit)) && - SUCCEEDED(hr = CreateScoredProperty(CComBSTR(CUST_SQR_SCALE_PROPS[props]), - pParamRef, - &pScoredProp)) && - SUCCEEDED(hr = pOption->appendChild(pScoredProp, NULL))) - { - hr = pPTRoot->appendChild(pParamInit, NULL); - } - } - } - break; - - case FitBleedToImageable: - case FitContentToImageable: - case FitMediaToImageable: - case FitMediaToMedia: - { - // - // Create the ScaleOffsetAlignement feature and append to the option node - // - CComPtr<IXMLDOMElement> pSubFeature(NULL); - CComPtr<IXMLDOMElement> pSubOption(NULL); - - CComBSTR bstrOffsetFeature(SCALE_OFFSET_FEATURE); - CComBSTR bstrOffsetOption(SCALE_OFFSET_OPTIONS[pPageScaleData->offsetOption]); - - if (SUCCEEDED(hr = CreateFeatureOptionPair(bstrOffsetFeature, - bstrOffsetOption, - &pSubFeature, - &pSubOption))) - { - hr = pFeature->appendChild(pSubFeature, NULL); - } - } - break; - - case None: - default: - { - } - break; - } - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPageScalingPTHandler::Delete - -Routine Description: - - This routine deletes the page scaling feature from the PrintTicket passed to the - class constructor - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPageScalingPTHandler::Delete( - VOID - ) -{ - // - // Remove any existing page scaling feature node - // - HRESULT hr = DeleteFeature(CComBSTR(SCALE_FEATURE)); - - ERR_ON_HR(hr); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/pgscpthndlr.h b/print/XPSDrvSmpl/src/common/pgscpthndlr.h deleted file mode 100644 index 08c52e7d..00000000 --- a/print/XPSDrvSmpl/src/common/pgscpthndlr.h +++ /dev/null @@ -1,55 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pgscpthndlr.h - -Abstract: - - PageScaling PrintTicket handling definition. The PageScaling PT handler - is used to extract PageScaling settings from a PrintTicket and populate - the PageScaling data structure with the retrieved settings. The class also - defines a method for setting the feature in the PrintTicket given the - data structure. - ---*/ - -#pragma once - -#include "pthndlr.h" -#include "pgscdata.h" - -class CPageScalingPTHandler : public CPTHandler -{ -public: - CPageScalingPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ); - - virtual ~CPageScalingPTHandler(); - - HRESULT - GetData( - _Out_ XDPrintSchema::PageScaling::PageScalingData* pPageScaleData - ); - - HRESULT - SetData( - _In_ CONST XDPrintSchema::PageScaling::PageScalingData* pPageScaleData - ); - - HRESULT - Delete( - void - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/pgscschema.cpp b/print/XPSDrvSmpl/src/common/pgscschema.cpp deleted file mode 100644 index a8ada487..00000000 --- a/print/XPSDrvSmpl/src/common/pgscschema.cpp +++ /dev/null @@ -1,64 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pgscschema.cpp - -Abstract: - - PageScaling PrintSchema implementation. This implements the features, - options and enumerations that describe the PrintSchema PageScaling feature. - ---*/ - -#include "precomp.h" -#include "pgscschema.h" - -LPCWSTR XDPrintSchema::PageScaling::SCALE_FEATURE = L"PageScaling"; - -LPCWSTR XDPrintSchema::PageScaling::SCALE_OPTIONS[EScaleOptionMax] = { - L"Custom", - L"CustomSquare", - L"FitApplicationBleedSizeToPageImageableSize", - L"FitApplicationContentSizeToPageImageableSize", - L"FitApplicationMediaSizeToPageImageableSize", - L"FitApplicationMediaSizeToPageMediaSize", - L"None" -}; - -LPCWSTR XDPrintSchema::PageScaling::CUST_SCALE_PROPS[] = { - L"OffsetWidth", - L"OffsetHeight", - L"ScaleWidth", - L"ScaleHeight" -}; - -LPCWSTR XDPrintSchema::PageScaling::CUST_SQR_SCALE_PROPS[] = { - L"OffsetWidth", - L"OffsetHeight", - L"Scale" -}; - -LPCWSTR XDPrintSchema::PageScaling::OffsetAlignment::SCALE_OFFSET_FEATURE = L"ScaleOffsetAlignment"; - -LPCWSTR XDPrintSchema::PageScaling::OffsetAlignment::SCALE_OFFSET_OPTIONS[] = { - L"BottomCenter", - L"BottomLeft", - L"BottomRight", - L"Center", - L"LeftCenter", - L"RightCenter", - L"TopCenter", - L"TopLeft", - L"TopRight" -}; - diff --git a/print/XPSDrvSmpl/src/common/pgscschema.h b/print/XPSDrvSmpl/src/common/pgscschema.h deleted file mode 100644 index d30c9c92..00000000 --- a/print/XPSDrvSmpl/src/common/pgscschema.h +++ /dev/null @@ -1,112 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pgscschema.h - -Abstract: - - PageScaling PrintSchema definition. This defines the features, options - and enumerations that describe the PrintSchema PageScaling feature within - a XDPrintSchema::PageScaling namespace. - ---*/ - -#pragma once - -#include "schema.h" - -namespace XDPrintSchema -{ - // - // PageScaling elements described as Printschema keywords - // - namespace PageScaling - { - // - // The feature name - // - extern LPCWSTR SCALE_FEATURE; - - // - // Option names - // - enum EScaleOption - { - Custom = 0, EScaleOptionMin = 0, - CustomSquare, - FitBleedToImageable, - FitContentToImageable, - FitMediaToImageable, - FitMediaToMedia, - None, - EScaleOptionMax - }; - - extern LPCWSTR SCALE_OPTIONS[EScaleOptionMax]; - - // - // Custom scaling properties - // - enum ECustomScaleProps - { - CstOffsetWidth = 0, ECustomScalePropsMin = 0, - CstOffsetHeight, - CstScaleWidth, - CstScaleHeight, - ECustomScalePropsMax - }; - - extern LPCWSTR CUST_SCALE_PROPS[ECustomScalePropsMax]; - - // - // Custom square scaling properties - // - enum ECustomSquareScaleProps - { - CstSqOffsetWidth = 0, ECustomSquareScalePropsMin = 0, - CstSqOffsetHeight, - CstSqScale, - ECustomSquareScalePropsMax - }; - - extern LPCWSTR CUST_SQR_SCALE_PROPS[ECustomSquareScalePropsMax]; - - namespace OffsetAlignment - { - // - // The feature name - // - extern LPCWSTR SCALE_OFFSET_FEATURE; - - // - // Option names - // - enum EScaleOffsetOption - { - BottomCenter = 0, EScaleOffsetOptionMin = 0, - BottomLeft, - BottomRight, - Center, - LeftCenter, - RightCenter, - TopCenter, - TopLeft, - TopRight, - EScaleOffsetOptionMax - }; - - extern LPCWSTR SCALE_OFFSET_OPTIONS[EScaleOffsetOptionMax]; - } - } -} - diff --git a/print/XPSDrvSmpl/src/common/pimagedata.h b/print/XPSDrvSmpl/src/common/pimagedata.h deleted file mode 100644 index fc9a36c7..00000000 --- a/print/XPSDrvSmpl/src/common/pimagedata.h +++ /dev/null @@ -1,52 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pimagedata.h - -Abstract: - - PageImageableSize data structure definition. This provides a convenient - description of the PrintSchema PageImageableSize feature. - ---*/ - -#pragma once - -#include "pimageschema.h" - -namespace XDPrintSchema -{ - namespace PageImageableSize - { - struct PageImageableData - { - PageImageableData() : - imageableSizeWidth(0), - imageableSizeHeight(0), - originWidth(0), - originHeight(0), - extentWidth(0), - extentHeight(0) - { - } - - INT imageableSizeWidth; - INT imageableSizeHeight; - INT originWidth; - INT originHeight; - INT extentWidth; - INT extentHeight; - }; - } -} - diff --git a/print/XPSDrvSmpl/src/common/pimagepthndlr.cpp b/print/XPSDrvSmpl/src/common/pimagepthndlr.cpp deleted file mode 100644 index 23013810..00000000 --- a/print/XPSDrvSmpl/src/common/pimagepthndlr.cpp +++ /dev/null @@ -1,171 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pimagepthndlr.cpp - -Abstract: - - This class is responsible for retrieving the PageImageableSize properties from a - PrintCapabilities document. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "ptquerybld.h" -#include "pimagepthndlr.h" - -using XDPrintSchema::PageImageableSize::PageImageableData; -using XDPrintSchema::PageImageableSize::ImageableSizeWidth; -using XDPrintSchema::PageImageableSize::ImageableSizeHeight; -using XDPrintSchema::PageImageableSize::ImageableArea; -using XDPrintSchema::PageImageableSize::EPageImageablePropsMax; -using XDPrintSchema::PageImageableSize::OriginWidth; -using XDPrintSchema::PageImageableSize::OriginHeight; -using XDPrintSchema::PageImageableSize::ExtentWidth; -using XDPrintSchema::PageImageableSize::ExtentHeight; -using XDPrintSchema::PageImageableSize::PAGE_IMAGEABLE_PROPERTY; -using XDPrintSchema::PageImageableSize::PAGE_IMAGEABLE_PROPS; -using XDPrintSchema::PageImageableSize::PAGE_IMAGEABLE_PROPS_AREA; - -/*++ - -Routine Name: - - CPageImageablePCHandler::CPageImageablePCHandler - -Routine Description: - - CPageImageablePCHandler class constructor - -Arguments: - - pPrintCapabilities - Pointer to the DOM document representation of the PrintCapabilities - -Return Value: - - None - ---*/ -CPageImageablePCHandler::CPageImageablePCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ) : - CPCHandler(pPrintCapabilities) -{ -} - -/*++ - -Routine Name: - - CPageImageablePCHandler::~CPageImageablePCHandler - -Routine Description: - - CPageImageablePCHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CPageImageablePCHandler::~CPageImageablePCHandler() -{ -} - -/*++ - -Routine Name: - - CPageImageablePCHandler::GetData - -Routine Description: - - The routine fills the data structure passed in with page imageable size - data retrieved from the PrintCapabilities passed to the class constructor. - -Arguments: - - pPageImageableData - Pointer to the page imageable size data structure to be filled in - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - Feature not present in PrintCapabilities - E_* - On error - ---*/ -HRESULT -CPageImageablePCHandler::GetData( - _Inout_ PageImageableData* pPageImageableData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pPageImageableData, E_POINTER))) - { - CComBSTR bstrQuery; - CPTQueryBuilder queryImageableArea(m_bstrFrameworkPrefix); - - if (SUCCEEDED(hr = queryImageableArea.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPERTY))) && - SUCCEEDED(hr = queryImageableArea.GetQuery(&bstrQuery)) && - SUCCEEDED(hr = QueryNode(bstrQuery))) - { - CPTQueryBuilder queryImageableSizeWidth(queryImageableArea); - CPTQueryBuilder queryImageableSizeHeight(queryImageableArea); - - if (SUCCEEDED(hr = queryImageableSizeWidth.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPS[ImageableSizeWidth]))) && - SUCCEEDED(hr = queryImageableSizeHeight.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPS[ImageableSizeHeight]))) && - SUCCEEDED(hr = queryImageableSizeWidth.GetQuery(&bstrQuery)) && - SUCCEEDED(hr = QueryNodeValue(bstrQuery, &pPageImageableData->imageableSizeWidth)) && - SUCCEEDED(hr = queryImageableSizeHeight.GetQuery(&bstrQuery)) && - SUCCEEDED(hr = QueryNodeValue(bstrQuery, &pPageImageableData->imageableSizeHeight))) - { - CPTQueryBuilder queryOriginWidth(queryImageableArea); - CPTQueryBuilder queryOriginHeight(queryImageableArea); - CPTQueryBuilder queryExtentWidth(queryImageableArea); - CPTQueryBuilder queryExtentHeight(queryImageableArea); - - if (SUCCEEDED(hr = queryOriginWidth.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPS[ImageableArea]))) && - SUCCEEDED(hr = queryOriginWidth.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPS_AREA[OriginWidth]))) && - SUCCEEDED(hr = queryOriginHeight.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPS[ImageableArea]))) && - SUCCEEDED(hr = queryOriginHeight.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPS_AREA[OriginHeight]))) && - SUCCEEDED(hr = queryExtentWidth.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPS[ImageableArea]))) && - SUCCEEDED(hr = queryExtentWidth.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPS_AREA[ExtentWidth]))) && - SUCCEEDED(hr = queryExtentHeight.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPS[ImageableArea]))) && - SUCCEEDED(hr = queryExtentHeight.AddProperty(m_bstrKeywordsPrefix, CComBSTR(PAGE_IMAGEABLE_PROPS_AREA[ExtentHeight]))) && - SUCCEEDED(hr = queryOriginWidth.GetQuery(&bstrQuery)) && - SUCCEEDED(hr = QueryNodeValue(bstrQuery, &pPageImageableData->originWidth)) && - SUCCEEDED(hr = queryOriginHeight.GetQuery(&bstrQuery)) && - SUCCEEDED(hr = QueryNodeValue(bstrQuery, &pPageImageableData->originHeight)) && - SUCCEEDED(hr = queryExtentWidth.GetQuery(&bstrQuery)) && - SUCCEEDED(hr = QueryNodeValue(bstrQuery, &pPageImageableData->extentWidth)) && - SUCCEEDED(hr = queryExtentHeight.GetQuery(&bstrQuery))) - { - hr = QueryNodeValue(bstrQuery, &pPageImageableData->extentHeight); - } - } - } - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/pimagepthndlr.h b/print/XPSDrvSmpl/src/common/pimagepthndlr.h deleted file mode 100644 index 99d5025e..00000000 --- a/print/XPSDrvSmpl/src/common/pimagepthndlr.h +++ /dev/null @@ -1,42 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pimagepthndlr.h - -Abstract: - - This class is responsible for retrieving the PageImageableSize properties from a - PrintCapabilities document. - ---*/ - -#pragma once - -#include "pchndlr.h" -#include "pimagedata.h" - -class CPageImageablePCHandler : public CPCHandler -{ -public: - CPageImageablePCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ); - - virtual ~CPageImageablePCHandler(); - - HRESULT - GetData( - _Inout_ XDPrintSchema::PageImageableSize::PageImageableData* pPageImageableData - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/pimageschema.cpp b/print/XPSDrvSmpl/src/common/pimageschema.cpp deleted file mode 100644 index bd9dd484..00000000 --- a/print/XPSDrvSmpl/src/common/pimageschema.cpp +++ /dev/null @@ -1,40 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pimageschema.cpp - -Abstract: - - PageImageableSize PrintSchema implementation. This implements the features, - options and enumerations that describe the PrintSchema PageImageableSize feature. - ---*/ - -#include "precomp.h" -#include "pimageschema.h" - -LPCWSTR XDPrintSchema::PageImageableSize::PAGE_IMAGEABLE_PROPERTY = L"PageImageableSize"; - -LPCWSTR XDPrintSchema::PageImageableSize::PAGE_IMAGEABLE_PROPS[] = { - L"ImageableSizeWidth", - L"ImageableSizeHeight", - L"ImageableArea" -}; - -LPCWSTR XDPrintSchema::PageImageableSize::PAGE_IMAGEABLE_PROPS_AREA[] = { - L"OriginWidth", - L"OriginHeight", - L"ExtentWidth", - L"ExtentHeight" -}; - diff --git a/print/XPSDrvSmpl/src/common/pimageschema.h b/print/XPSDrvSmpl/src/common/pimageschema.h deleted file mode 100644 index 760b1d2b..00000000 --- a/print/XPSDrvSmpl/src/common/pimageschema.h +++ /dev/null @@ -1,62 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - pimageschema.h - -Abstract: - - PageImageableSize PrintSchema definition. This defines the features, options - and enumerations that describe the PrintSchema PageImageableSize feature within - a XDPrintSchema::PageImageableSize namespace. - ---*/ - -#pragma once - -#include "schema.h" - -namespace XDPrintSchema -{ - // - // PageImageSize elements described as Printschema keywords - // - namespace PageImageableSize - { - // - // The property name - // - extern LPCWSTR PAGE_IMAGEABLE_PROPERTY; - - enum EPageImageableProps - { - ImageableSizeWidth = 0, EPageImageablePropsMin = 0, - ImageableSizeHeight, - ImageableArea, - EPageImageablePropsMax - }; - - extern LPCWSTR PAGE_IMAGEABLE_PROPS[EPageImageablePropsMax]; - - enum EPageImageablePropsArea - { - OriginWidth = 0, EPageImageablePropsAreaMin = 0, - OriginHeight, - ExtentWidth, - ExtentHeight, - EPageImageablePropsAreaMax - }; - - extern LPCWSTR PAGE_IMAGEABLE_PROPS_AREA[EPageImageablePropsAreaMax]; - } -} - diff --git a/print/XPSDrvSmpl/src/common/porientdata.h b/print/XPSDrvSmpl/src/common/porientdata.h deleted file mode 100644 index 4e3a181d..00000000 --- a/print/XPSDrvSmpl/src/common/porientdata.h +++ /dev/null @@ -1,42 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - porientdata.h - -Abstract: - - PageOrientation data structure definition. This provides a convenient - description of the PrintSchema PageOrientation feature. - ---*/ - -#pragma once - -#include "porientschema.h" - -namespace XDPrintSchema -{ - namespace PageOrientation - { - struct PageOrientationData - { - PageOrientationData() : - orientation(Landscape) - { - } - - EOrientationOption orientation; - }; - } -} - diff --git a/print/XPSDrvSmpl/src/common/porientpthndlr.cpp b/print/XPSDrvSmpl/src/common/porientpthndlr.cpp deleted file mode 100644 index 52e3e7ed..00000000 --- a/print/XPSDrvSmpl/src/common/porientpthndlr.cpp +++ /dev/null @@ -1,150 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - porientpthndlr.cpp - -Abstract: - - PageOrientation PrintTicket handler implementation. Derived from CPTHandler, - this provides a PageOrientation specific Get methods acting on the passed in - PrintTicket (as a DOM document). - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "porientpthndlr.h" - -using XDPrintSchema::PageOrientation::PageOrientationData; -using XDPrintSchema::PageOrientation::EOrientationOption; -using XDPrintSchema::PageOrientation::EOrientationOptionMin; -using XDPrintSchema::PageOrientation::EOrientationOptionMax; -using XDPrintSchema::PageOrientation::ORIENTATION_FEATURE; -using XDPrintSchema::PageOrientation::ORIENTATION_OPTIONS; - -/*++ - -Routine Name: - - CPageOrientationPTHandler::CPageOrientationPTHandler - -Routine Description: - - CPageOrientationPTHandler class constructor - -Arguments: - - pPrintTicket - Pointer to the DOM document representation of the PrintTicket - -Return Value: - - None - ---*/ -CPageOrientationPTHandler::CPageOrientationPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ) : - CPTHandler(pPrintTicket) -{ -} - -/*++ - -Routine Name: - - CPageOrientationPTHandler::~CPageOrientationPTHandler - -Routine Description: - - CPageOrientationPTHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CPageOrientationPTHandler::~CPageOrientationPTHandler() -{ -} - -/*++ - -Routine Name: - - CPageOrientationPTHandler::GetData - -Routine Description: - - The routine fills the data structure passed in with page orientation data retrieved from - the PrintTicket passed to the class constructor. - -Arguments: - - pPageOrientationData - Pointer to the page orientation data structure to be filled in - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - Feature not present in PrintTicket - E_* - On error - ---*/ -HRESULT -CPageOrientationPTHandler::GetData( - _Inout_ PageOrientationData* pPageOrientationData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pPageOrientationData, E_POINTER))) - { - CComBSTR bstrPOOption; - - if (SUCCEEDED(hr = GetFeatureOption(CComBSTR(ORIENTATION_FEATURE), &bstrPOOption))) - { - for (EOrientationOption poOpt = EOrientationOptionMin; - poOpt < EOrientationOptionMax; - poOpt = static_cast<EOrientationOption>(poOpt + 1)) - { - if (bstrPOOption == ORIENTATION_OPTIONS[poOpt]) - { - pPageOrientationData->orientation = poOpt; - break; - } - } - } - } - - // - // Validate the data - // - if (SUCCEEDED(hr)) - { - if (pPageOrientationData->orientation < EOrientationOptionMin || - pPageOrientationData->orientation >= EOrientationOptionMax) - { - hr = E_FAIL; - } - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/porientpthndlr.h b/print/XPSDrvSmpl/src/common/porientpthndlr.h deleted file mode 100644 index 138bbc0c..00000000 --- a/print/XPSDrvSmpl/src/common/porientpthndlr.h +++ /dev/null @@ -1,45 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - porientpthndlr.h - -Abstract: - - PageOrientation PrintTicket handling definition. The PageOrientation PT handler - is used to extract PageOrientation settings from a PrintTicket and populate - the PageOrientation data structure with the retrieved settings. The class also - defines a method for setting the feature in the PrintTicket given the - data structure. - ---*/ - -#pragma once - -#include "pthndlr.h" -#include "porientdata.h" - -class CPageOrientationPTHandler : public CPTHandler -{ -public: - CPageOrientationPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ); - - virtual ~CPageOrientationPTHandler(); - - HRESULT - GetData( - _Inout_ XDPrintSchema::PageOrientation::PageOrientationData* pPageOrientationData - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/porientschema.cpp b/print/XPSDrvSmpl/src/common/porientschema.cpp deleted file mode 100644 index 524001c1..00000000 --- a/print/XPSDrvSmpl/src/common/porientschema.cpp +++ /dev/null @@ -1,34 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - porientschema.cpp - -Abstract: - - PageOrientation PrintSchema implementation. This implements the features, - options and enumerations that describe the PrintSchema PageOrientation feature. - ---*/ - -#include "precomp.h" -#include "porientschema.h" - -LPCWSTR XDPrintSchema::PageOrientation::ORIENTATION_FEATURE = L"PageOrientation"; - -LPCWSTR XDPrintSchema::PageOrientation::ORIENTATION_OPTIONS[EOrientationOptionMax] = { - L"Landscape", - L"Portrait", - L"ReverseLandscape", - L"ReversePortrait" -}; - diff --git a/print/XPSDrvSmpl/src/common/porientschema.h b/print/XPSDrvSmpl/src/common/porientschema.h deleted file mode 100644 index 2fdca11c..00000000 --- a/print/XPSDrvSmpl/src/common/porientschema.h +++ /dev/null @@ -1,55 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - porientschema.h - -Abstract: - - PageOrientation PrintSchema definition. This defines the features, options - and enumerations that describe the PrintSchema PageOrientation feature within - a XDPrintSchema::PageOrientation namespace. - ---*/ - -#pragma once - -#include "schema.h" - -namespace XDPrintSchema -{ - // - // PageOrientation elements described as Printschema keywords - // - namespace PageOrientation - { - // - // The feature name - // - extern LPCWSTR ORIENTATION_FEATURE; - - // - // Paper orientation options - // - enum EOrientationOption - { - Landscape = 0, EOrientationOptionMin = 0, - Portrait, - ReverseLandscape, - ReversePortrait, - EOrientationOptionMax - }; - - extern LPCWSTR ORIENTATION_OPTIONS[EOrientationOptionMax]; - } -} - diff --git a/print/XPSDrvSmpl/src/common/precomp.h b/print/XPSDrvSmpl/src/common/precomp.h deleted file mode 100644 index d871a9fd..00000000 --- a/print/XPSDrvSmpl/src/common/precomp.h +++ /dev/null @@ -1,102 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - precomp.h - -Abstract: - - Precompiled header for all filters - ---*/ - -#pragma once - -// -// Annotate this as a usermode driver for static analysis -// -#include <DriverSpecs.h> -_Analysis_mode_(_Analysis_code_type_user_driver_) - -// -// Standard Annotation Language include -// -#include <sal.h> - -// -// Windows includes -// -#ifndef WIN32_LEAN_AND_MEAN -#define WIN32_LEAN_AND_MEAN -#endif // WIN32_LEAN_AND_MEAN -#include <windows.h> -#include <limits.h> - -// -// COM includes -// -#include <objbase.h> -#include <oleauto.h> - -// -// ATL Includes -// -#include <atlbase.h> - - -#pragma warning (push) -#pragma warning (disable:4458) -// -// GDIPlus includes -// -#include <GDIPlus.h> -#pragma warning (pop) - -// -// MSXML includes -// -#include <msxml6.h> - -// -// WCS Includes -// -#include <icm.h> - -// -// Filter pipeline includes -// -#include <winspool.h> -#include <filterpipeline.h> -#include <filterpipelineutil.h> -#include <prntvpt.h> - -// -// Standard library includes -// -#include <new> -#include <math.h> -#include <vector> -#include <deque> -#include <map> - -// -// Commonly used namespaces -// -using namespace std; -using namespace Gdiplus; - -// -// String safe includes - included last to prevent build warnings -// -#include <strsafe.h> - -#include "common.ver" diff --git a/print/XPSDrvSmpl/src/common/precompsrc.cpp b/print/XPSDrvSmpl/src/common/precompsrc.cpp deleted file mode 100644 index 5944cf51..00000000 --- a/print/XPSDrvSmpl/src/common/precompsrc.cpp +++ /dev/null @@ -1 +0,0 @@ -#include "precomp.h"
\ No newline at end of file diff --git a/print/XPSDrvSmpl/src/common/privatedefs.h b/print/XPSDrvSmpl/src/common/privatedefs.h deleted file mode 100644 index 0c8cb96d..00000000 --- a/print/XPSDrvSmpl/src/common/privatedefs.h +++ /dev/null @@ -1,300 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - privatedefs.h - -Abstract: - - Definitions for private PrintTicket/PrintCapabilities properties for watermark and page scaling features. - ---*/ - -#pragma once - -// -// Macro to return the number of elements in an array -// -#define numof(n) (sizeof(n) / sizeof(n[0])) - -// -// Structure definition for the Private Parameter Defs (Integer Type) -// -typedef struct _PRIVATE_DEF_INTS -{ - PCSTR property_name; - BOOL is_public; - PCSTR display_name; - INT default_value; - INT min_length; - INT max_length; - INT multiple; - PCSTR unit_type; -}PRIVATE_DEF_INTEGERS; - -// -// Structure definition for the Private Parameter Defs (String Type) -// -typedef struct _PRIVATE_DEF_STRS -{ - PCSTR property_name; - PCSTR display_name; - PCSTR default_value; - INT min_length; - INT max_length; - PCSTR unit_type; -}PRIVATE_DEF_STRINGS; - -// -// Structure definition for the Private Parameter Defs (Decimal Type) -// -typedef struct _PRIVATE_DEF_DECS -{ - PCSTR property_name; - PCSTR display_name; - REAL default_value; - REAL min_length; - REAL max_length; - REAL multiple; - PCSTR unit_type; -}PRIVATE_DEF_DECIMALS; - -// -// Table of values for private integer watermark properties. -// -CONST PRIVATE_DEF_INTEGERS wmParamDefIntegers[] = -{ - { - "PageWatermarkTextAngle", - TRUE, - NULL, - 0, - 0, - 360, - 1, - "Degrees" - }, - { - "PageWatermarkOriginWidth", - TRUE, - NULL, - 0, - -INT_MAX, - INT_MAX, - 1, - "Microns" - }, - { - "PageWatermarkOriginHeight", - TRUE, - NULL, - HUNDREDTH_OFINCH_TO_MICRON(100), - -INT_MAX, - INT_MAX, - 1, - "Microns" - }, - { - "PageWatermarkSizeWidth", - FALSE, - NULL, - HUNDREDTH_OFINCH_TO_MICRON(100), - 0, - INT_MAX, - 1, - "Microns" - }, - { - "PageWatermarkSizeHeight", - FALSE, - NULL, - HUNDREDTH_OFINCH_TO_MICRON(100), - 0, - INT_MAX, - 1, - "Microns" - }, - { - "PageWatermarkTextFontSize", - TRUE, - NULL, - 72, - 1, - INT_MAX, - 1, - "Points Per Inch" - }, - { - "PageWatermarkTextColor", - TRUE, - NULL, - (INT) 0xFFFF0000, - 0, - (INT) 0xFFFFFFFF, - 1, - "sRGB" - }, - { - "PageWatermarkTransparency", - TRUE, - NULL, - 50, - 0, - 100, - 1, - "Transparency" - }, -}; - -// -// enum lookup into above table -// -enum eWMParamDefIntegers -{ - ePageWatermarkAngle = 0, - ePageWatermarkOriginWidth, - ePageWatermarkOriginHeight, - ePageWatermarkSizeWidth, - ePageWatermarkSizeHeight, - ePageWatermarkTextFontSize, - ePageWatermarkTextColor, - ePageWatermarkTransparency, -}; - -// -// Table of values for private string watermark properties. -// -CONST PRIVATE_DEF_STRINGS wmParamDefStrings[] = -{ - { - "PageWatermarkTextText", - NULL, - "CONFIDENTIAL", - 0, - 20, - "characters" - } -}; - -// -// enum lookup into above table -// -enum eWMParamDefStrings -{ - ePageWatermarkTextText = 0 -}; - -// -// Table of values for private integer page scaling properties. -// -CONST PRIVATE_DEF_INTEGERS pgscParamDefIntegers[] = -{ - { - "PageScalingScaleWidth", - TRUE, - NULL, - 100, - 1, - 1000, - 1, - "Percent" - }, - { - "PageScalingScaleHeight", - TRUE, - NULL, - 100, - 1, - 1000, - 1, - "Percent" - }, - { - "PageScalingScale", - TRUE, - NULL, - 100, - 1, - 1000, - 1, - "Percent" - }, - { - "PageScalingOffsetWidth", - TRUE, - NULL, - 0, - -INT_MAX, - INT_MAX, - 1, - "Microns" - }, - { - "PageScalingOffsetHeight", - TRUE, - NULL, - 0, - -INT_MAX, - INT_MAX, - 1, - "Microns" - }, -}; - -// -// enum lookup into above table -// -enum ePGSCParamDefIntegers -{ - ePageScalingScaleWidth = 0, - ePageScalingScaleHeight, - ePageScalingScale, - ePageScalingOffsetWidth, - ePageScalingOffsetHeight, -}; - -// -// Table of values for private integer booklet gutter properties. -// -CONST PRIVATE_DEF_INTEGERS bkParamDefIntegers[] = -{ - { - "JobBindAllDocumentsGutter", - TRUE, - NULL, - 0, - -INT_MAX, - INT_MAX, - 0, - "Microns" - }, - { - "DocumentBindingGutter", - TRUE, - NULL, - 0, - -INT_MAX, - INT_MAX, - 0, - "Microns" - } -}; - -// -// enum lookup into above table -// -enum eBindingParamDefIntegers -{ - eJobBindAllDocumentsGutter = 0, - eDocumentBindingGutter, -}; - diff --git a/print/XPSDrvSmpl/src/common/pshndlr.cpp b/print/XPSDrvSmpl/src/common/pshndlr.cpp deleted file mode 100644 index 90acda70..00000000 --- a/print/XPSDrvSmpl/src/common/pshndlr.cpp +++ /dev/null @@ -1,1836 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -File Name: - - pshndlr.cpp - -Abstract: - - Base PrintSchema Document handler class implementation. - This class provides common PrintTicket / PrintCapabilities handling functionality. - A class can derive from this base class to get PrintTicket/PrintCapabilities - unspecific XML handling functionality. - - Note: The PrintSchema handler code is only intended to work with the sdtandard - public PrintSchema keywords. - ---*/ - - -// -// Note on handling missing DOM nodes: -// -// Convert MSXML's S_FALSE to E_ELEMENT_NOT_FOUND. This allows clients to -// use the SUCCEEDED macro more effectively. -// -// E_ELEMENT_NOT_FOUND should not be propogated as an error to the -// filter pipeline or config module - treat as though the requested feature -// has not been enabled. -// - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdstring.h" -#include "pshndlr.h" - -using XDPrintSchema::FRAMEWORK_URI; -using XDPrintSchema::KEYWORDS_URI; -using XDPrintSchema::SCHEMA_INST_URI; -using XDPrintSchema::SCHEMA_DEF_URI; -using XDPrintSchema::PROPERTY_ELEMENT_NAME; -using XDPrintSchema::NAME_ATTRIBUTE_NAME; -using XDPrintSchema::VALUE_ELEMENT_NAME; -using XDPrintSchema::SCHEMA_TYPE; -using XDPrintSchema::SCORED_PROP_ELEMENT_NAME; -using XDPrintSchema::SCHEMA_STRING; -using XDPrintSchema::SCHEMA_INTEGER; -using XDPrintSchema::SCHEMA_DECIMAL; -using XDPrintSchema::PARAM_REF_ELEMENT_NAME; -using XDPrintSchema::PARAM_INIT_ELEMENT_NAME; -using XDPrintSchema::SCHEMA_INST_URI; - -static LPCWSTR szSelectNS = L"SelectionNamespaces"; -static LPCWSTR szTmpNS = L"psf"; -static LPCWSTR szNSSelection = L"xmlns:%s='%s'"; -static LPCWSTR szSelectLang = L"SelectionLanguage"; -static LPCWSTR szLangSection = L"XPath"; - -static LPCWSTR szPTRootQuery = L"//%s:%s"; - -/*++ - -Routine Name: - - CPSHandler::CPSHandler - -Routine Description: - - CPSHandler class constructor - -Arguments: - - pDOMDocument - Pointer to the DOM document representation of the PrintTicket/PrintCapabilities - -Return Value: - - None - Throws CXDException(HRESULT) on an error - ---*/ -CPSHandler::CPSHandler( - _In_z_ BSTR bstrDocumentType, - _In_ IXMLDOMDocument2 *pPrintDocument - ) : - m_bstrDocumentType(bstrDocumentType), - m_pPrintDocument(pPrintDocument) -{ - ASSERTMSG(m_pPrintDocument != NULL, "NULL PrintDocument passed to PS manager.\n"); - - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(m_pPrintDocument, E_PENDING))) - { - try - { - // - // Make sure XPath selection language is set - // - if (SUCCEEDED(hr = m_pPrintDocument->setProperty(CComBSTR(szSelectLang), CComVariant(szLangSection)))) - { - // - // Construct the alias namespace string - // - CStringXDW cstrNamespaces; - cstrNamespaces.Format(szNSSelection, szTmpNS, FRAMEWORK_URI); - - // - // Specify an alias PrintSchema namespace prefix to allow us to find the real ones - // - if (SUCCEEDED(hr = m_pPrintDocument->setProperty(CComBSTR(szSelectNS), CComVariant(cstrNamespaces)))) - { - if (SUCCEEDED(hr = GetPrefixFromURI(CComBSTR(FRAMEWORK_URI), &m_bstrFrameworkPrefix)) && - SUCCEEDED(hr = GetPrefixFromURI(CComBSTR(KEYWORDS_URI), &m_bstrKeywordsPrefix)) && - SUCCEEDED(hr = GetPrefixFromURI(CComBSTR(SCHEMA_INST_URI), &m_bstrSchemaInstPrefix)) && - SUCCEEDED(hr = GetPrefixFromURI(CComBSTR(SCHEMA_DEF_URI), &m_bstrSchemaPrefix))) - { - CStringXDW cstrNSUserPrefix(L"ns0000:"); - m_bstrUserKeywordsPrefix.Empty(); - m_bstrUserKeywordsPrefix.Attach(cstrNSUserPrefix.AllocSysString()); - - // - // Restore the original namespace prefix for the PrintSchema framework - // - CComBSTR bstrOrgNamespaces; - CStringXDW cstrNSPrefix(m_bstrFrameworkPrefix); - - INT iIndex = cstrNSPrefix.Find(L":"); - if (iIndex != -1 && - cstrNSPrefix.Delete(iIndex, 1) > 0) - { - CStringXDW cstrOrgNamespaces; - cstrOrgNamespaces.Format(szNSSelection, static_cast<LPCWSTR>(cstrNSPrefix), FRAMEWORK_URI); - - hr = m_pPrintDocument->setProperty(CComBSTR(szSelectNS), CComVariant(cstrOrgNamespaces)); - } - else - { - RIP("Could not create namespace prefix correctly\n"); - hr = E_FAIL; - } - } - } - else - { - ERR("Failed to set SelectionNamespaces.\n"); - } - } - else - { - RIP("Failed to set SelectionLanguage.\n"); - } - } - catch (CXDException& e) - { - hr = e; - } - } - - if (FAILED(hr)) - { - throw CXDException(hr); - } -} - -/*++ - -Routine Name: - - CPSHandler::~CPSHandler - -Routine Description: - - CPSHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CPSHandler::~CPSHandler() -{ -} - -/*++ - -Routine Name: - - CPSHandler::DeleteNode - -Routine Description: - - This routine deletes the given node from the PrintDocument - -Arguments: - - pNode - Pointer to the DOM node to be deleted - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::DeleteNode( - _In_ IXMLDOMNode* pNode - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pNode, E_POINTER))) - { - CComPtr<IXMLDOMNode> pParentNode(NULL); - CComPtr<IXMLDOMNode> pDeletedNode(NULL); - - if (SUCCEEDED(hr = pNode->get_parentNode(&pParentNode)) && - hr != S_FALSE && - SUCCEEDED(hr = pParentNode->removeChild(pNode, &pDeletedNode)) && - pDeletedNode == NULL) - { - hr = E_FAIL; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::GetNode - -Routine Description: - - This routine retrieves a node given an XPath query - -Arguments: - - bstrNodeQuery - The XPath query for a node - ppNode - Pointer to an IXMLDOMNode pointer that recieves the node retrieved - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::GetNode( - _In_z_ BSTR bstrNodeQuery, - _Outptr_ IXMLDOMNode** ppNode - ) -{ - // - // We should have the PrintDocment in place - // - ASSERTMSG(m_pPrintDocument != NULL, "NULL PS detected whilst retrieving node.\n"); - - // - // Method which takes a query string and returns the first node that matches - // - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppNode, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(m_pPrintDocument, E_PENDING))) - { - *ppNode = NULL; - if (SysStringLen(bstrNodeQuery) == 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - // - // Get the node from the PrintDocument - // - hr = m_pPrintDocument->selectSingleNode(bstrNodeQuery, ppNode); - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::DeletePrivateFeatures - -Routine Description: - - This routine finds and deletes features with values defined in the - private namespace passed in - -Arguments: - - bstrPrivateNS - the private namespace - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::DeletePrivateFeatures( - _In_z_ BSTR bstrPrivateNS - ) -{ - HRESULT hr = S_OK; - - if (SysStringLen(bstrPrivateNS) > 0) - { - CComBSTR bstrNSPrefix; - if (SUCCEEDED(hr = GetPrefixFromURI(bstrPrivateNS, &bstrNSPrefix))) - { - // - // Find all root feature elements in the namespace - // - CComPtr<IXMLDOMNodeList> pNodeList(NULL); - - CComBSTR bstrFeatureQuery(L"//"); - bstrFeatureQuery += m_bstrFrameworkPrefix; - bstrFeatureQuery += L"Feature"; - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = m_pPrintDocument->selectNodes(bstrFeatureQuery, &pNodeList)) && - SUCCEEDED(hr = pNodeList->reset())) - { - // - // Delete all the feature with name attributes using the private namespace - // - CComPtr<IXMLDOMNode> pDeleteNode(NULL); - - while (SUCCEEDED(hr) && - SUCCEEDED(hr = pNodeList->nextNode(&pDeleteNode)) && - hr != S_FALSE) - { - CComPtr<IXMLDOMNamedNodeMap> pDeleteNodeAtts(NULL); - CComPtr<IXMLDOMNode> pNameNode(NULL); - CComVariant varNameValue; - - if (SUCCEEDED(hr = pDeleteNode->get_attributes(&pDeleteNodeAtts)) && - hr != S_FALSE && - SUCCEEDED(hr = pDeleteNodeAtts->getNamedItem(CComBSTR(L"name"), &pNameNode)) && - hr != S_FALSE && - SUCCEEDED(hr = pNameNode->get_nodeValue(&varNameValue)) && - hr != S_FALSE) - { - try - { - CStringXDW cstrNameValue(varNameValue.bstrVal); - - if (cstrNameValue.Find(bstrNSPrefix) == 0) - { - hr = DeleteNode(pDeleteNode); - } - } - catch (CXDException& e) - { - hr = e; - } - } - - pDeleteNode = NULL; - } - } - } - } - else - { - hr = E_INVALIDARG; - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::CreateProperty - -Routine Description: - - This routine creates a property element of the given name. Note: this - method only creates the property element; it is up to the caller to - set the property value - -Arguments: - - bstrPropName - The name of the property - ppPropElement - Pointer to a IXMLDOMElement pointer that recieves the newly created Property element - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::CreateProperty( - _In_ CONST BSTR bstrPropName, - _Outptr_ IXMLDOMElement** ppPropElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppPropElement, E_POINTER))) - { - *ppPropElement = NULL; - - if (SysStringLen(bstrPropName) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - CComBSTR bstrTagName(m_bstrFrameworkPrefix); - bstrTagName += PROPERTY_ELEMENT_NAME; - - CComBSTR bstrAttribName(szTmpNS); - bstrAttribName += L":"; - bstrAttribName += bstrPropName; - - hr = CreateXMLElement(bstrTagName, FRAMEWORK_URI, ppPropElement); - - if (SUCCEEDED(hr)) - { - if (*ppPropElement != NULL) - { - hr = CreateXMLAttribute(*ppPropElement, NAME_ATTRIBUTE_NAME, NULL, bstrAttribName ); - } - else - { - hr = E_FAIL; - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::CreateProperty - -Routine Description: - - This routine creates a property element of the given name. - -Arguments: - - bstrPropName - The name of the property to be created - bstrType - The type of the property value (integer, string etc.) - bstrValue - The value of the property - ppPropElement - Pointer to an IXMLDOMElement pointer that recieves the new element - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::CreateProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST BSTR bstrType, - _In_ CONST BSTR bstrValue, - _Outptr_ IXMLDOMElement** ppPropElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppPropElement, E_POINTER))) - { - if (SysStringLen(bstrPropName) <= 0 || - SysStringLen(bstrType) <= 0 || - SysStringLen(bstrValue) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - // - // Create the scored property and value node - // - if (SUCCEEDED(hr = CreateProperty(bstrPropName, ppPropElement))) - { - CComPtr<IXMLDOMElement> pValue(NULL); - - CComBSTR bstrValueElement(m_bstrFrameworkPrefix); - bstrValueElement += VALUE_ELEMENT_NAME; - - CComBSTR bstrTypeAttribName(m_bstrSchemaInstPrefix); - bstrTypeAttribName += SCHEMA_TYPE; - - CComBSTR bstrTypeAttribValue(m_bstrSchemaPrefix); - bstrTypeAttribValue += bstrType; - - hr = CreateXMLElement(bstrValueElement, FRAMEWORK_URI, &pValue); - - if(SUCCEEDED(hr)) - { - if (SUCCEEDED(hr = CreateXMLAttribute(pValue, bstrTypeAttribName, SCHEMA_INST_URI, bstrTypeAttribValue )) && - SUCCEEDED(hr = pValue->put_text(bstrValue))) - { - hr = (*ppPropElement)->appendChild(pValue, NULL); - } - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::CreateFWProperty - -Routine Description: - - This routine creates a property element of the given name. Note: this - method only creates the property element; it is up to the caller to - set the property value - -Arguments: - - bstrPropName - The name of the property - ppPropElement - Pointer to a IXMLDOMElement pointer that recieves the newly created Property element - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::CreateFWProperty( - _In_ CONST BSTR bstrPropName, - _Outptr_ IXMLDOMElement** ppPropElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppPropElement, E_POINTER))) - { - *ppPropElement = NULL; - - if (SysStringLen(bstrPropName) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - CComBSTR bstrTagName(m_bstrFrameworkPrefix); - bstrTagName += PROPERTY_ELEMENT_NAME; - - CComBSTR bstrAttribName(m_bstrFrameworkPrefix); - bstrAttribName += bstrPropName; - - hr = CreateXMLElement(bstrTagName, FRAMEWORK_URI, ppPropElement); - - if (SUCCEEDED(hr)) - { - if (*ppPropElement != NULL) - { - hr = CreateXMLAttribute(*ppPropElement, NAME_ATTRIBUTE_NAME, NULL, bstrAttribName ); - } - else - { - hr = E_FAIL; - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::CreateFWProperty - -Routine Description: - - This routine creates a property element of the given name. - -Arguments: - - bstrPropName - The name of the property to be created - bstrType - The type of the property value (integer, string etc.) - bstrValue - The value of the property - ppPropElement - Pointer to an IXMLDOMElement pointer that recieves the new element - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::CreateFWProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST BSTR bstrType, - _In_ CONST BSTR bstrValue, - _Outptr_ IXMLDOMElement** ppPropElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppPropElement, E_POINTER))) - { - if (SysStringLen(bstrPropName) <= 0 || - SysStringLen(bstrType) <= 0 || - SysStringLen(bstrValue) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - // - // Create the scored property and value node - // - if (SUCCEEDED(hr = CreateFWProperty(bstrPropName, ppPropElement))) - { - CComPtr<IXMLDOMElement> pValue(NULL); - - CComBSTR bstrValueElement(m_bstrFrameworkPrefix); - bstrValueElement += VALUE_ELEMENT_NAME; - - CComBSTR bstrTypeAttribName(m_bstrSchemaInstPrefix); - bstrTypeAttribName += SCHEMA_TYPE; - - CComBSTR bstrTypeAttribValue(m_bstrSchemaPrefix); - bstrTypeAttribValue += bstrType; - - hr = CreateXMLElement(bstrValueElement, FRAMEWORK_URI, &pValue); - - if(SUCCEEDED(hr)) - { - if (SUCCEEDED(hr = CreateXMLAttribute(pValue, bstrTypeAttribName, SCHEMA_INST_URI, bstrTypeAttribValue )) && - SUCCEEDED(hr = pValue->put_text(bstrValue))) - { - hr = (*ppPropElement)->appendChild(pValue, NULL); - } - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::CreateScoredProperty - -Routine Description: - - This routine creates a scored property. Note: this does not intialise - the scored property value - this is the responsibility of the caller - -Arguments: - - bstrPropName - The name of the property element to be created - ppScoredPropElement - Pointer to an IXMLDOMElement that recieves the new element - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppScoredPropElement, E_POINTER))) - { - *ppScoredPropElement = NULL; - - if (SysStringLen(bstrPropName) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - CComBSTR bstrTagName(m_bstrFrameworkPrefix); - bstrTagName += SCORED_PROP_ELEMENT_NAME; - - CComBSTR bstrAttribName(m_bstrKeywordsPrefix); - bstrAttribName += bstrPropName; - - hr = CreateXMLElement(bstrTagName, FRAMEWORK_URI, ppScoredPropElement); - - if (SUCCEEDED(hr)) - { - if (*ppScoredPropElement != NULL) - { - hr = CreateXMLAttribute(*ppScoredPropElement, NAME_ATTRIBUTE_NAME, NULL, bstrAttribName ); - } - else - { - hr = E_FAIL; - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::CreateScoredProperty - -Routine Description: - - This routine creates a scored property. - -Arguments: - - bstrPropName - The name of the property element to be created - bstrType - The type of the value to be created (integer, string etc.) - bstrValue - The value to be set as a string - ppScoredPropElement - Pointer to an IXMLDOMElement that recieves the new element - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST BSTR bstrType, - _In_ CONST BSTR bstrValue, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppScoredPropElement, E_POINTER))) - { - if (SysStringLen(bstrPropName) <= 0 || - SysStringLen(bstrType) <= 0 || - SysStringLen(bstrValue) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - // - // Create the scored property and value node - // - if (SUCCEEDED(hr = CreateScoredProperty(bstrPropName, ppScoredPropElement))) - { - CComPtr<IXMLDOMElement> pValue(NULL); - - CComBSTR bstrValueElement(m_bstrFrameworkPrefix); - bstrValueElement += VALUE_ELEMENT_NAME; - - CComBSTR bstrTypeAttribName(m_bstrSchemaInstPrefix); - bstrTypeAttribName += SCHEMA_TYPE; - - CComBSTR bstrTypeAttribValue(m_bstrSchemaPrefix); - bstrTypeAttribValue += bstrType; - - hr = CreateXMLElement(bstrValueElement, FRAMEWORK_URI, &pValue); - - if(SUCCEEDED(hr)) - { - if (SUCCEEDED(hr = CreateXMLAttribute(pValue, bstrTypeAttribName, SCHEMA_INST_URI, bstrTypeAttribValue )) && - SUCCEEDED(hr = pValue->put_text(bstrValue))) - { - hr = (*ppScoredPropElement)->appendChild(pValue, NULL); - } - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::CreateScoredProperty - -Routine Description: - - This routine creates a scored property of type string. - -Arguments: - - bstrPropName - The name of the property element to be created - bstrValue - The string value to be set - ppScoredPropElement - Pointer to an IXMLDOMElement that recieves the new element - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST BSTR bstrValue, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppScoredPropElement, E_POINTER))) - { - if (SysStringLen(bstrPropName) > 0 && - SysStringLen(bstrValue) > 0) - { - // - // Create the scored property and value node - // - hr = CreateScoredProperty(bstrPropName, CComBSTR(SCHEMA_STRING), bstrValue, ppScoredPropElement); - } - else - { - hr = E_INVALIDARG; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::CreateScoredProperty - -Routine Description: - - This routine creates a scored property of type INT. - -Arguments: - - bstrPropName - The name of the property element to be created - intValue - The INT value to be set - ppScoredPropElement - Pointer to an IXMLDOMElement that recieves the new element - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST INT intValue, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppScoredPropElement, E_POINTER))) - { - if (SysStringLen(bstrPropName) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - try - { - // - // Construct the value string - // - CStringXDW cstrValue; - cstrValue.Format(L"%i", intValue); - - // - // Create the scored property and value node - // - hr = CreateScoredProperty(bstrPropName, - CComBSTR(SCHEMA_INTEGER), - CComBSTR(cstrValue.AllocSysString()), - ppScoredPropElement); - } - catch (CXDException& e) - { - hr = e; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::CreateScoredProperty - -Routine Description: - - This routine creates a scored property of type REAL. - -Arguments: - - bstrPropName - The name of the property element to be created - realValue - The REAL value to be set - ppScoredPropElement - Pointer to an IXMLDOMElement that recieves the new element - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST REAL realValue, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppScoredPropElement, E_POINTER))) - { - if (SysStringLen(bstrPropName) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - try - { - // - // Construct the value string - // - CStringXDW cstrValue; - cstrValue.Format(L"%.2f", realValue); - - // - // Create the scored property and value node - // - hr = CreateScoredProperty(bstrPropName, - CComBSTR(SCHEMA_DECIMAL), - CComBSTR(cstrValue.AllocSysString()), - ppScoredPropElement); - } - catch (CXDException& e) - { - hr = e; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::QueryNode - -Routine Description: - - This routine checks for the existence of a node given the XPath - query passed in - -Arguments: - - bstrQuery - The XPath query defining the node or nodes to be located - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - If node does not exist - E_* - On error - ---*/ -HRESULT -CPSHandler::QueryNode( - _In_z_ BSTR bstrQuery - ) -{ - HRESULT hr = S_OK; - - // - // Validate input parameters - // - if (SysStringLen(bstrQuery) > 0) - { - CComPtr<IXMLDOMNode> pNode(NULL); - - hr = GetNode(bstrQuery, &pNode); - } - else - { - hr = E_INVALIDARG; - } - - if (hr == S_FALSE) - { - hr = E_ELEMENT_NOT_FOUND; - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::QueryNodeValue - -Routine Description: - - This routine locates the node specified by the XPath query passed in and - returns the value of the "value" attribute as a string. - -Arguments: - - bstrQuery - The XPath query locating the node to retrieve the value for - pbstrOption - Pointer to a BSTR to recieve the value string - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - If node does not exist - E_* - On error - ---*/ -HRESULT -CPSHandler::QueryNodeValue( - _In_z_ BSTR bstrQuery, - _Outptr_ BSTR* pbstrValue - ) -{ - HRESULT hr = S_OK; - - // - // Validate input parameters - // - if (SUCCEEDED(hr = CHECK_POINTER(pbstrValue, E_POINTER))) - { - *pbstrValue = NULL; - - if (SysStringLen(bstrQuery) > 0) - { - hr = GetNodeValue(bstrQuery, pbstrValue); - } - else - { - hr = E_INVALIDARG; - } - } - - if (hr == S_FALSE) - { - hr = E_ELEMENT_NOT_FOUND; - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::QueryNodeValue - -Routine Description: - - This routine locates the node specified by the XPath query passed in and - returns the value of the "value" attribute as an INT. - -Arguments: - - bstrQuery - The XPath query locating the node to retrieve the value for - pValue - Pointer to an INT to recieve the value - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::QueryNodeValue( - _In_z_ BSTR bstrQuery, - _Out_ INT* pValue - ) -{ - HRESULT hr = S_OK; - - CComBSTR bstrValue; - if (SUCCEEDED(hr = CHECK_POINTER(pValue, E_POINTER))) - { - if (SysStringLen(bstrQuery) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = QueryNodeValue(bstrQuery, &bstrValue))) - { - *pValue = static_cast<INT>(_wtoi(bstrValue)); - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::QueryNodeValue - -Routine Description: - - This routine locates the node specified by the XPath query passed in and - returns the value of the "value" attribute as a REAL. - -Arguments: - - bstrQuery - The XPath query locating the node to retrieve the value for - pValue - Pointer to a REAL to recieve the value - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::QueryNodeValue( - _In_z_ BSTR bstrQuery, - _Out_ REAL* pValue - ) -{ - HRESULT hr = S_OK; - - CComBSTR bstrValue; - if (SUCCEEDED(hr = CHECK_POINTER(pValue, E_POINTER))) - { - if (SysStringLen(bstrQuery) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = QueryNodeValue(bstrQuery, &bstrValue))) - { - *pValue = static_cast<REAL>(_wtof(bstrValue)); - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::GetNodeValue - -Routine Description: - - This routine retrieves the value of a node given the XPath query to the node - -Arguments: - - bstrNodeQuery - The XPath query for the node from which the value should be retrieved - pbstrValue - Pointer to ta BSTR that recieves the value of the node - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - -Note: - - The annotation for pbstrValue is intended to express that the BSTR may - be NULL when S_FALSE is returned, but not when S_OK is returned. - - In any case, when a failure HRESULT is returned, all out parameter - annotations are ignored. - ---*/ -HRESULT -CPSHandler::GetNodeValue( - _In_z_ BSTR bstrNodeQuery, - _Inout_ _At_(*pbstrValue, _Pre_maybenull_) - _When_(return == S_FALSE, _At_(*pbstrValue, _Post_maybenull_)) - _When_(return != S_FALSE, _At_(*pbstrValue, _Post_valid_)) - BSTR* pbstrValue - ) -{ - HRESULT hr = S_OK; - - CComPtr<IXMLDOMNode> pFeatureNode(NULL); - - if (SUCCEEDED(hr = CHECK_POINTER(pbstrValue, E_POINTER))) - { - SysFreeString(*pbstrValue); - *pbstrValue = NULL; - if (SysStringLen(bstrNodeQuery) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = GetNode(bstrNodeQuery, &pFeatureNode)) && - hr != S_FALSE) - { - // - // Scored properties can either be defined as "Value" or "ParameterRef" - // Find out which of these applies to this property and handle accordingly - // - CComBSTR bstrValue(m_bstrFrameworkPrefix); - bstrValue += VALUE_ELEMENT_NAME; - - CComBSTR bstrParamRef(m_bstrFrameworkPrefix); - bstrParamRef += PARAM_REF_ELEMENT_NAME; - - CComVariant varValue; - - CComPtr<IXMLDOMNode> pPropertyNode(NULL); - if (SUCCEEDED(hr = pFeatureNode->selectSingleNode(bstrValue, &pPropertyNode)) && - hr != S_FALSE) - { - // - // Value node. Just retrieve the node value - // - hr = pPropertyNode->get_nodeTypedValue(&varValue); - } - else if (SUCCEEDED(hr = pFeatureNode->selectSingleNode(bstrParamRef, &pPropertyNode)) && - hr != S_FALSE) - { - // - // Property defined by parameter ref. Retrieve the name and look up the value - // from the parameter init elements - // - CComPtr<IXMLDOMNodeList> pParamInitList(NULL); - CComBSTR bstrParamRefValue; - - if (SUCCEEDED(hr = GetAttributeValue(pPropertyNode, CComBSTR(NAME_ATTRIBUTE_NAME), &bstrParamRefValue)) && - hr != S_FALSE && - SUCCEEDED(hr = GetNodes(CComBSTR(PARAM_INIT_ELEMENT_NAME), &pParamInitList)) && - hr != S_FALSE) - { - CComBSTR bstrParamInit; - CComPtr<IXMLDOMNode> pInitNode(NULL); - - hr = pParamInitList->reset(); - - while (SUCCEEDED(hr) && - hr != S_FALSE) - { - if (SUCCEEDED(hr = pParamInitList->nextNode(&pInitNode)) && hr != S_FALSE && pInitNode != NULL) - { - hr = GetAttributeValue(pInitNode, CComBSTR(NAME_ATTRIBUTE_NAME), &bstrParamInit); - if (SUCCEEDED(hr) && bstrParamInit == bstrParamRefValue) - { - hr = pInitNode->get_nodeTypedValue(&varValue); - break; - } - } - - - // - // Release the node and name before getting the next - // - pInitNode = NULL; - bstrParamInit.Empty(); - } - } - } - - if (SUCCEEDED(hr) && - hr != S_FALSE && - SysStringLen(varValue.bstrVal) > 0) - { - *pbstrValue = ::SysAllocString(varValue.bstrVal); - - if (*pbstrValue == NULL) - { - hr = E_OUTOFMEMORY; - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::GetAttributeValue - -Routine Description: - - This routine retrieves the value of a named attribute as a string from a DOM node - -Arguments: - - pNode - Pointer to the DOM node to retrieve the attribute value from - bstrAttribName - The name of the attribute - pbstrResult - Pointer to a BSTR that recieves the attribute value - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::GetAttributeValue( - _In_ CONST IXMLDOMNode* pNode, - _In_z_ BSTR bstrAttribName, - _Outptr_result_maybenull_ BSTR* pbstrResult - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pNode, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pbstrResult, E_POINTER))) - { - if (SysStringLen(bstrAttribName) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - *pbstrResult = NULL; - - // - // Map the associated attributes and get the string result - // - CComPtr<IXMLDOMNamedNodeMap> pIXMLDOMNamedNodeMap(NULL); - CComPtr<IXMLDOMNode> pSubNode(NULL); - - if (SUCCEEDED(hr = const_cast<IXMLDOMNode*>(pNode)->get_attributes(&pIXMLDOMNamedNodeMap)) && - hr != S_FALSE && - SUCCEEDED(hr = pIXMLDOMNamedNodeMap->getNamedItem(bstrAttribName, &pSubNode)) && - hr != S_FALSE) - { - hr = pSubNode->get_text(pbstrResult); - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::GetNodes - -Routine Description: - - This routine returns a list of all the nodes in the PrintTicket with the - specified element name - -Arguments: - - ppParamInit - Pointer to an IXMLDOMNodeList pointer that recieves the node list - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::GetNodes( - _In_ BSTR bstrElementName, - _Outptr_ IXMLDOMNodeList** ppNodeList - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppNodeList, E_POINTER))) - { - if (SysStringLen(bstrElementName) > 0) - { - *ppNodeList = NULL; - - // - // Retrieve all psf:ParameterInit nodes in the PrintTicket - // - CComBSTR bstrParamInitQuery(L"//"); - bstrParamInitQuery += m_bstrFrameworkPrefix; - bstrParamInitQuery += bstrElementName; - - hr = m_pPrintDocument->selectNodes(bstrParamInitQuery, ppNodeList); - } - else - { - hr = E_FAIL; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::CreateScoredProperty - -Routine Description: - - This routine creates a scored property using the value node passed in. - -Arguments: - - bstrPropName - The name of the property element to be created - pValueNode - Pointer to the IXMLDOMNode that represents the scored property value - ppScoredPropElement - Pointer to an IXMLDOMElement that recieves the new element - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _In_ IXMLDOMNode* pValueNode, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ) -{ - HRESULT hr = S_OK; - - // - // Validate parameters then create the scored property and value node - // - if (SUCCEEDED(hr = CHECK_POINTER(pValueNode, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(ppScoredPropElement, E_POINTER))) - { - if (SysStringLen(bstrPropName) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = CreateScoredProperty(bstrPropName, ppScoredPropElement))) - { - hr = (*ppScoredPropElement)->appendChild(pValueNode, NULL); - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPSHandler::GetPrefixFromURI - -Routine Description: - - Obtains the Prefix associated with a Namespace URI from an XML PrintSchema Document. - -Arguments: - - bstrNamespaceURI - Namespace URI to be used in look-up. - bstrNamespacePrefix - Namespace Prefix to be returned. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPSHandler::GetPrefixFromURI( - _In_z_ BSTR bstrNamespaceURI, - _Outptr_result_maybenull_ BSTR* bstrNamespacePrefix - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(bstrNamespacePrefix, E_POINTER))) - { - if (SysStringLen(bstrNamespaceURI) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - *bstrNamespacePrefix = NULL; - - try - { - // - // Construct the Root Query string - // - CStringXDW cstrRootQuery; - cstrRootQuery.Format(szPTRootQuery, szTmpNS, static_cast<LPCWSTR>(m_bstrDocumentType)); - - // - // Find the PrintSchema element so we can retrieve the private namespace prefix - // - CComPtr<IXMLDOMNode> pPTNode(NULL); - CComPtr<IXMLDOMNamedNodeMap> pPTAtts(NULL); - - if (SUCCEEDED(hr = GetNode(CComBSTR(cstrRootQuery), &pPTNode)) && - hr != S_FALSE && - SUCCEEDED(hr = pPTNode->get_attributes(&pPTAtts)) && - SUCCEEDED(hr = pPTAtts->reset())) - { - // - // Iterate over all attributes and match the node value against - // the namespace URI - // - BOOL bMatched = FALSE; - CComPtr<IXMLDOMNode> pAttNode(NULL); - - while (SUCCEEDED(hr) && - !bMatched && - SUCCEEDED(hr = pPTAtts->nextNode(&pAttNode)) && - hr != S_FALSE) - { - CComVariant varValue; - - if (SUCCEEDED(hr = pAttNode->get_nodeValue(&varValue))) - { - if (CComBSTR(varValue.bstrVal) == bstrNamespaceURI) - { - bMatched = TRUE; - } - } - - if (!bMatched) - { - // - // No match - free the attribute node before retrieving the next - // - pAttNode = NULL; - } - } - - if (SUCCEEDED(hr) && - bMatched) - { - // - // If we match then get the node name and strip xmlns: to derive - // the private namespace prefix - // - CStringXDW cstrNSPrefix; - CComBSTR bstrNodeName; - - if (SUCCEEDED(hr = pAttNode->get_nodeName(&bstrNodeName))) - { - cstrNSPrefix = bstrNodeName; - CStringXDW cstrXMLNS(L"xmlns:"); - - if (cstrNSPrefix.Find(cstrXMLNS) != 0 || - cstrNSPrefix.Delete(0, cstrXMLNS.GetLength()) <= 0) - { - ERR("Could not create private namespace prefix correctly\n"); - - hr = E_FAIL; - } - else - { - cstrNSPrefix += L":"; - - SysFreeString(*bstrNamespacePrefix); - *bstrNamespacePrefix = cstrNSPrefix.AllocSysString(); - } - } - } - } - else - { - ERR("Failed to find the PC root element.\n"); - } - } - catch (CXDException& e) - { - hr = e; - } - } - - ERR_ON_HR(hr); - return hr; -} - -HRESULT -CPSHandler::CreateXMLAttribute( - _Inout_ IXMLDOMElement *pTarget, - _In_ PCWSTR pszName, - _In_opt_ PCWSTR pszTargetURI, - _In_ PCWSTR pszValue - ) -/*++ - -Routine Description: - - This routine adds a new attribute to the given XML element. The URI - parameter must be present, but may be an empty string. - - If this routine fails, the document being constructed should be - considered invalid, and be thrown out in its entirity. - - The newly created attribute will be appended to the list of attributes on the element - -Arguments: - - pTarget - the element to which the attribute is to be added - pszName - the name of the attribtue - pszTargetURI - the URI in which the attribute should reside - pszValue - the value to put in the attribute - -Returns: - - S_OK on success, else - E_* on failure - ---*/ -{ - HRESULT hr = S_OK; - CComPtr<IXMLDOMAttribute> pCurrentAttr; - CComPtr<IXMLDOMNode> pCurrentNode; - - if( !( pTarget && pszName && pszValue ) ) - { - hr = E_INVALIDARG; - } - - if(SUCCEEDED(hr)) - { - VARIANT type; - VariantInit( &type ); - V_VT(&type) = VT_I4; - V_I4(&type) = NODE_ATTRIBUTE; - - hr = m_pPrintDocument->createNode(type, const_cast<BSTR>(pszName), const_cast<BSTR>(pszTargetURI), &pCurrentNode); - - VariantClear( &type ); - } - - if( SUCCEEDED(hr) ) - { - hr = pCurrentNode->QueryInterface( IID_IXMLDOMAttribute, (void**)&pCurrentAttr ); - } - - if( SUCCEEDED(hr) ) - { - VARIANT attrVal; - BSTR bstrValue = SysAllocString(pszValue); - - if( bstrValue ) - { - VariantInit(&attrVal); - V_VT(&attrVal) = VT_BSTR; - V_BSTR(&attrVal) = bstrValue; - hr = pCurrentAttr->put_value(attrVal); - - if( SUCCEEDED(hr) ) - { - hr = VariantClear(&attrVal); - } - else - { - VariantClear(&attrVal); - } - } - else - { - hr = E_OUTOFMEMORY; - } - } - - if( SUCCEEDED(hr) ) - { - hr = pTarget->setAttributeNode( pCurrentAttr, NULL ); - } - - return hr; -} - -HRESULT -CPSHandler::CreateXMLElement( - _In_ PCWSTR pszName, - _In_ PCWSTR pszTargetURI, - _Out_opt_ IXMLDOMElement **ppEl - ) -/*++ - -Routine Description: - - Create a new DOM element using the given QName and URI. Implemented using DOMDocument->CreateNode. - -Arguments: - - pszName - The QName of the element to be created - pszTargetUri - The namespace in which the created element lives. The - caller does not have control over the prefix... just the URI - ppEl - If the caller needs a pointer to the newly created node, this should - be a non-null - -Return Value: - - S_OK on success, - E_* on failure. Common values that would be expected - include E_OUTOFMEMORY, and E_INVALIDARG. - ---*/ -{ - HRESULT hr = S_OK; - CComPtr<IXMLDOMNode> pCurrentNode; - - if( !( pszName && pszTargetURI ) ) - { - hr = E_INVALIDARG; - } - - if(SUCCEEDED(hr)) - { - VARIANT type; - VariantInit( &type ); - V_VT(&type) = VT_I4; - V_I4(&type) = NODE_ELEMENT; - hr = m_pPrintDocument->createNode( type, const_cast<BSTR>(pszName), const_cast<BSTR>(pszTargetURI), &pCurrentNode ); - VariantClear( &type ); - } - - // - // Only give the client back the new value element if we succeed. - // - if( SUCCEEDED(hr) && ppEl ) - { - hr = pCurrentNode->QueryInterface( IID_IXMLDOMElement, (void**)ppEl ); - } - - return hr; -} diff --git a/print/XPSDrvSmpl/src/common/pshndlr.h b/print/XPSDrvSmpl/src/common/pshndlr.h deleted file mode 100644 index 22d76863..00000000 --- a/print/XPSDrvSmpl/src/common/pshndlr.h +++ /dev/null @@ -1,218 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -File Name: - - pshndlr.h - -Abstract: - - Base PrintSchema Document handler class definition. - This class provides common PrintTicket / PrintCapabilities handling functionality. - A class can derive from this base class to get PrintTicket/PrintCapabilities - unspecific XML handling functionality. - - Note: The PrintSchema handler code is only intended to work with the sdtandard - public PrintSchema keywords. - ---*/ - -#pragma once - -#include "schema.h" - -typedef vector< CComPtr<IXMLDOMElement> > PTDOMElementVector; - -class CPSHandler -{ -public: - // - // Constructors and destructors - // - CPSHandler( - _In_z_ BSTR bstrDocumentType, - _In_ IXMLDOMDocument2 *pPrintDocument - ); - - virtual ~CPSHandler(); - -public: - HRESULT - DeleteNode( - _In_ IXMLDOMNode* pNode - ); - - HRESULT - DeletePrivateFeatures( - _In_z_ BSTR bstrPrivateNS - ); - -protected: - HRESULT - QueryNode( - _In_z_ BSTR bstrQuery - ); - - HRESULT - QueryNodeValue( - _In_z_ BSTR bstrQuery, - _Outptr_ BSTR* pbstrValue - ); - - HRESULT - QueryNodeValue( - _In_z_ BSTR bstrQuery, - _Out_ REAL* pValue - ); - - HRESULT - QueryNodeValue( - _In_z_ BSTR bstrQuery, - _Out_ INT* pValue - ); - - HRESULT - GetNodeValue( - _In_z_ BSTR bstrNodeQuery, - _Inout_ _At_(*pbstrValue, _Pre_maybenull_) - _When_(return == S_FALSE, _At_(*pbstrValue, _Post_maybenull_)) - _When_(return != S_FALSE, _At_(*pbstrValue, _Post_valid_)) - BSTR* pbstrValue - ); - - HRESULT - GetAttributeValue( - _In_ CONST IXMLDOMNode* pNode, - _In_z_ BSTR bstrAttribName, - _Outptr_result_maybenull_ BSTR* pbstrResult - ); - - HRESULT - GetNodes( - _In_ BSTR bstrElementName, - _Outptr_ IXMLDOMNodeList** ppNodeList - ); - - HRESULT - CreateProperty( - _In_ CONST BSTR bstrPropName, - _Outptr_ IXMLDOMElement** ppPropElement - ); - - HRESULT - CreateProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST BSTR bstrType, - _In_ CONST BSTR bstrValue, - _Outptr_ IXMLDOMElement** ppPropElement - ); - - HRESULT - CreateFWProperty( - _In_ CONST BSTR bstrPropName, - _Outptr_ IXMLDOMElement** ppPropElement - ); - - HRESULT - CreateFWProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST BSTR bstrType, - _In_ CONST BSTR bstrValue, - _Outptr_ IXMLDOMElement** ppPropElement - ); - - HRESULT - CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ); - - HRESULT - CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST BSTR bstrType, - _In_ CONST BSTR bstrValue, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ); - - HRESULT - CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST BSTR bstrValue, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ); - - HRESULT - CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST INT intValue, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ); - - HRESULT - CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _In_ CONST REAL realValue, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ); - - HRESULT - CreateScoredProperty( - _In_ CONST BSTR bstrPropName, - _In_ IXMLDOMNode* pValueNode, - _Outptr_ IXMLDOMElement** ppScoredPropElement - ); - - HRESULT - GetNode( - _In_z_ BSTR bstrNodeQuery, - _Outptr_ IXMLDOMNode** ppNode - ); - - HRESULT - CreateXMLAttribute( - _Inout_ IXMLDOMElement *pTarget, - _In_ PCWSTR pszName, - _In_opt_ PCWSTR pszTargetURI, - _In_ PCWSTR pszValue - ); - - HRESULT - CreateXMLElement( - _In_ PCWSTR pszName, - _In_ PCWSTR pszTargetURI, - _Out_opt_ IXMLDOMElement **ppEl - ); - -private: - - HRESULT - GetPrefixFromURI( - _In_z_ BSTR bstrNSURI, - _Outptr_result_maybenull_ BSTR* bstrNSPrefix - ); - -protected: - // - // Document and Type - // - CComPtr<IXMLDOMDocument2> m_pPrintDocument; - CComBSTR m_bstrDocumentType; - - // - // W3 namespace prefixes - // - CComBSTR m_bstrSchemaPrefix; - CComBSTR m_bstrSchemaInstPrefix; - - // - // Namespace abbreviations - // - CComBSTR m_bstrFrameworkPrefix; - CComBSTR m_bstrKeywordsPrefix; - CComBSTR m_bstrUserKeywordsPrefix; -}; - diff --git a/print/XPSDrvSmpl/src/common/psizedata.h b/print/XPSDrvSmpl/src/common/psizedata.h deleted file mode 100644 index aad375a4..00000000 --- a/print/XPSDrvSmpl/src/common/psizedata.h +++ /dev/null @@ -1,44 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - psizedata.h - -Abstract: - - PageMediaSize data structure definition. This provides a convenient - description of the PrintSchema PageMediaSize feature. - ---*/ - -#pragma once - -#include "psizeschema.h" - -namespace XDPrintSchema -{ - namespace PageMediaSize - { - struct PageMediaSizeData - { - PageMediaSizeData() : - pageWidth(215900), - pageHeight(279400) - { - } - - INT pageWidth; - INT pageHeight; - }; - } -} - diff --git a/print/XPSDrvSmpl/src/common/psizepthndlr.cpp b/print/XPSDrvSmpl/src/common/psizepthndlr.cpp deleted file mode 100644 index 893c16df..00000000 --- a/print/XPSDrvSmpl/src/common/psizepthndlr.cpp +++ /dev/null @@ -1,136 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - psizepthndlr.cpp - -Abstract: - - PageMediaSize PrintTicket handler implementation. Derived from CPTHandler, - this provides PageMediaSize specific Get method acting on the passed in - PrintTicket (as a DOM document). - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "psizepthndlr.h" - -using XDPrintSchema::PageMediaSize::PageMediaSizeData; -using XDPrintSchema::PageMediaSize::MediaSizeHeight; -using XDPrintSchema::PageMediaSize::MediaSizeWidth; -using XDPrintSchema::PageMediaSize::PAGESIZE_FEATURE; -using XDPrintSchema::PageMediaSize::PAGESIZE_PROPS; - -/*++ - -Routine Name: - - CPageSizePTHandler::CPageSizePTHandler - -Routine Description: - - CPageSizePTHandler class constructor - -Arguments: - - pPrintTicket - Pointer to the DOM document representation of the PrintTicket - -Return Value: - - None - ---*/ -CPageSizePTHandler::CPageSizePTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ) : - CPTHandler(pPrintTicket) -{ -} - -/*++ - -Routine Name: - - CPageSizePTHandler::~CPageSizePTHandler - -Routine Description: - - CPageSizePTHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CPageSizePTHandler::~CPageSizePTHandler() -{ -} - -/*++ - -Routine Name: - - CPageSizePTHandler::GetData - -Routine Description: - - The routine fills the data structure passed in with page size data retrieved from - the PrintTicket passed to the class constructor. - -Arguments: - - pPageMediaSizeData - Pointer to the page size data structure to be filled in - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - Feature not present in PrintTicket - E_* - On error - ---*/ -HRESULT -CPageSizePTHandler::GetData( - _Out_ PageMediaSizeData* pPageMediaSizeData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pPageMediaSizeData, E_POINTER))) - { - CComBSTR bstrPageSizeOption; - - // - // We don't actually need the pages size option name, just the dimensions - // - if (SUCCEEDED(hr = GetFeatureOption(CComBSTR(PAGESIZE_FEATURE), &bstrPageSizeOption)) && - SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(PAGESIZE_FEATURE), - CComBSTR(PAGESIZE_PROPS[MediaSizeWidth]), - &pPageMediaSizeData->pageWidth))) - { - hr = GetScoredPropertyValue(CComBSTR(PAGESIZE_FEATURE), - CComBSTR(PAGESIZE_PROPS[MediaSizeHeight]), - &pPageMediaSizeData->pageHeight); - } - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/psizepthndlr.h b/print/XPSDrvSmpl/src/common/psizepthndlr.h deleted file mode 100644 index 68e77fdb..00000000 --- a/print/XPSDrvSmpl/src/common/psizepthndlr.h +++ /dev/null @@ -1,45 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - psizepthndlr.h - -Abstract: - - PageMediaSize PrintTicket handling definition. The PageMediaSize PT handler - is used to extract PageMediaSize settings from a PrintTicket and populate - the PageMediaSize data structure with the retrieved settings. The class also - defines a method for setting the feature in the PrintTicket given the - data structure. - ---*/ - -#pragma once - -#include "pthndlr.h" -#include "psizedata.h" - -class CPageSizePTHandler : public CPTHandler -{ -public: - CPageSizePTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ); - - virtual ~CPageSizePTHandler(); - - HRESULT - GetData( - _Out_ XDPrintSchema::PageMediaSize::PageMediaSizeData* pPageMediaSizeData - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/psizeschema.cpp b/print/XPSDrvSmpl/src/common/psizeschema.cpp deleted file mode 100644 index 448ccb2c..00000000 --- a/print/XPSDrvSmpl/src/common/psizeschema.cpp +++ /dev/null @@ -1,32 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - psizeschema.cpp - -Abstract: - - PageMediaSize PrintSchema implementation. This implements the features, - options and enumerations that describe the PrintSchema PageMediaSize feature. - ---*/ - -#include "precomp.h" -#include "psizeschema.h" - -LPCWSTR XDPrintSchema::PageMediaSize::PAGESIZE_FEATURE = L"PageMediaSize"; - -LPCWSTR XDPrintSchema::PageMediaSize::PAGESIZE_PROPS[] = { - L"MediaSizeWidth", - L"MediaSizeHeight" -}; - diff --git a/print/XPSDrvSmpl/src/common/psizeschema.h b/print/XPSDrvSmpl/src/common/psizeschema.h deleted file mode 100644 index 253846c7..00000000 --- a/print/XPSDrvSmpl/src/common/psizeschema.h +++ /dev/null @@ -1,55 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - psizeschema.h - -Abstract: - - PageMediaSize PrintSchema definition. This defines the features, options - and enumerations that describe the PrintSchema PageMediaSize feature within - a XDPrintSchema::PageMediaSize namespace. - ---*/ - -#pragma once - -#include "schema.h" - -namespace XDPrintSchema -{ - // - // PageMediaSize elements described as Printschema keywords - // - namespace PageMediaSize - { - // - // The feature name - // - extern LPCWSTR PAGESIZE_FEATURE; - - // - // We don't actually ever use the page size option names so they are - // omitted for brevity as there are many of them. - // - - enum EPageSizeProps - { - MediaSizeWidth = 0, EPageSizePropsMin = 0, - MediaSizeHeight, - EPageSizePropsMax - }; - - extern LPCWSTR PAGESIZE_PROPS[EPageSizePropsMax]; - } -} - diff --git a/print/XPSDrvSmpl/src/common/pthndlr.cpp b/print/XPSDrvSmpl/src/common/pthndlr.cpp deleted file mode 100644 index 61158c1f..00000000 --- a/print/XPSDrvSmpl/src/common/pthndlr.cpp +++ /dev/null @@ -1,1385 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -File Name: - - pthndlr.cpp - -Abstract: - - Base PrintTicket handler class implementation. This class provides common - PrintTicket handling functionality for any filter that requires print - ticket handling. A feature specific handler can derive from - this class to get feature unspecific XML handling functionality. - ---*/ - - -// -// Note on handling missing DOM nodes: -// -// Convert MSXML's S_FALSE to E_ELEMENT_NOT_FOUND. This allows clients to -// use the SUCCEEDED macro more effectively. -// -// E_ELEMENT_NOT_FOUND should not be propogated as an error to the -// filter pipeline or config module - treat as though the requested feature -// has not been enabled. -// - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdstring.h" -#include "pthndlr.h" -#include "ptquerybld.h" - -using XDPrintSchema::PRINTTICKET_NAME; -using XDPrintSchema::PARAM_INIT_ELEMENT_NAME; -using XDPrintSchema::PARAM_REF_ELEMENT_NAME; -using XDPrintSchema::NAME_ATTRIBUTE_NAME; -using XDPrintSchema::VALUE_ELEMENT_NAME; -using XDPrintSchema::SCHEMA_TYPE; -using XDPrintSchema::SCHEMA_INTEGER; -using XDPrintSchema::FEATURE_ELEMENT_NAME; -using XDPrintSchema::OPTION_ELEMENT_NAME; -using XDPrintSchema::FRAMEWORK_URI; -using XDPrintSchema::SCHEMA_INST_URI; - -/*++ - -Routine Name: - - CPTHandler::CPTHandler - -Routine Description: - - CPTHandler class constructor - -Arguments: - - pPrintTicket - Pointer to the DOM document representation of the PrintTicket - -Return Value: - - None - - Note: Base Class (CPSHandler) - Throws CXDException(HRESULT) on an error - ---*/ -CPTHandler::CPTHandler( - _In_ IXMLDOMDocument2 *pDOMDocument - ) : - CPSHandler(CComBSTR(PRINTTICKET_NAME), pDOMDocument) -{ -} - -/*++ - -Routine Name: - - CPTHandler::~CPTHandler - -Routine Description: - - CPTHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CPTHandler::~CPTHandler() -{ -} - -/*++ - -Routine Name: - - CPTHandler::DeleteFeature - -Routine Description: - - This routine finds and deletes the named feature - -Arguments: - - bstrFeature - the feature name to be deleted - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::DeleteFeature( - _In_z_ BSTR bstrFeature - ) -{ - HRESULT hr = S_OK; - - if (SysStringLen(bstrFeature) > 0) - { - // - // Find the feature node - // - CPTQueryBuilder propertyQuery(m_bstrFrameworkPrefix); - CComBSTR bstrQuery; - - CComPtr<IXMLDOMNode> pFeatureNode(NULL); - - if (SUCCEEDED(hr = propertyQuery.AddFeature(m_bstrKeywordsPrefix, bstrFeature)) && - SUCCEEDED(hr = propertyQuery.GetQuery(&bstrQuery))) - { - // - // Keep querying and deleting till all instances of the feature are - // removed - generally this should be a single instance - // - while (SUCCEEDED(hr) && - SUCCEEDED(hr = GetNode(bstrQuery, &pFeatureNode)) && - hr != S_FALSE) - { - // - // Delete the feature node and all children, then locate and delete - // all orphaned parameter init nodes - // - if (SUCCEEDED(hr = DeleteNode(pFeatureNode))) - { - // - // We need to delete all orphaned paramater init elements. Construct a - // list of parameter ref nodes and parameter init nodes and delete parameter - // init nodes that do not have a corresponding reference. - // - CComPtr<IXMLDOMNodeList> pInitList(NULL); - CComPtr<IXMLDOMNodeList> pRefList(NULL); - - if (SUCCEEDED(hr = GetNodes(CComBSTR(PARAM_INIT_ELEMENT_NAME), &pInitList)) && - hr != S_FALSE && - SUCCEEDED(hr = GetNodes(CComBSTR(PARAM_REF_ELEMENT_NAME), &pRefList)) && - hr != S_FALSE) - { - hr = DeleteParamInitOrphans(pRefList, pInitList); - } - } - - // - // Release the feature node for the next pass - // - pFeatureNode = NULL; - } - } - } - else - { - hr = E_INVALIDARG; - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::DeleteParamInitOrphans - -Routine Description: - - When a feature is deleted it may orphan a set of parameter init nodes. - This routine takes a list of parameter init nodes and a list of parameter - ref nodes and deletes the init nodes with no corresponding ref node. - -Arguments: - - pRefList - pointer to a node list containined the ref nodes - pInitList - pointer to a node list containined the init nodes - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::DeleteParamInitOrphans( - _In_ IXMLDOMNodeList* pRefList, - _Inout_ IXMLDOMNodeList* pInitList - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pRefList, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pInitList, E_POINTER))) - { - LONG cRefNodes = 0; - - if (SUCCEEDED(hr = pRefList->get_length(&cRefNodes)) && - cRefNodes == 0) - { - // - // There are no ref nodes - delete all init nodes - // - hr = DeleteNodeList(pInitList); - } - else - { - // - // Iterate over init list and search for a corresponding ref node - // - LONG cInitNodes = 0; - hr = pInitList->get_length(&cInitNodes); - - for (LONG cInitNode = 0; cInitNode < cInitNodes && SUCCEEDED(hr); cInitNode++) - { - CComPtr<IXMLDOMNode> pInitNode(NULL); - CComBSTR bstrInitName; - - if (SUCCEEDED(hr = pInitList->get_item(cInitNode, &pInitNode)) && - hr != S_FALSE && - SUCCEEDED(hr = GetAttributeValue(pInitNode, - CComBSTR(NAME_ATTRIBUTE_NAME), - &bstrInitName)) && - hr != S_FALSE && - SUCCEEDED(hr = pRefList->reset())) - { - // - // Iterate over the ref list tring to match - // - BOOL bMatched = FALSE; - - for (LONG cRefNode = 0; cRefNode < cRefNodes && SUCCEEDED(hr) && !bMatched; cRefNode++) - { - CComPtr<IXMLDOMNode> pRefNode(NULL); - CComBSTR bstrRefName; - if (SUCCEEDED(hr = pRefList->get_item(cRefNode, &pRefNode)) && - hr != S_FALSE && - SUCCEEDED(hr = GetAttributeValue(pRefNode, - CComBSTR(NAME_ATTRIBUTE_NAME), - &bstrRefName)) && - hr != S_FALSE) - { - if (bstrRefName == bstrInitName) - { - bMatched = TRUE; - } - } - } - - if (!bMatched) - { - // - // There were no matches - delete the init node - // - hr = DeleteNode(pInitNode); - } - } - } - } - } - - ERR_ON_HR(hr); - return hr; -} - - -/*++ - -Routine Name: - - CPTHandler::DeleteNodeList - -Routine Description: - - This routine deletes all nodes in a node list - -Arguments: - - pNodeList - the node list containing the nodes to be deleted - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::DeleteNodeList( - _Inout_ IXMLDOMNodeList* pNodeList - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pNodeList, E_POINTER))) - { - LONG cNodes = 0; - - hr = pNodeList->get_length(&cNodes); - - for (LONG cNode = 0; cNode < cNodes && SUCCEEDED(hr); cNode++) - { - CComPtr<IXMLDOMNode> pNode(NULL); - if (SUCCEEDED(hr = pNodeList->get_item(cNode, &pNode)) && - hr != S_FALSE) - { - hr = DeleteNode(pNode); - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::DeleteProperty - -Routine Description: - - This routine finds and deletes the named property - -Arguments: - - bstrProperty - the property name to be deleted - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::DeleteProperty( - _In_z_ BSTR bstrProperty - ) -{ - HRESULT hr = S_OK; - - if (SysStringLen(bstrProperty) > 0) - { - // - // Find the property node - // - CPTQueryBuilder propertyQuery(m_bstrFrameworkPrefix); - CComBSTR bstrQuery; - - CComPtr<IXMLDOMNode> pPropertyNode(NULL); - - if (SUCCEEDED(hr = propertyQuery.AddProperty(m_bstrFrameworkPrefix, bstrProperty)) && - SUCCEEDED(hr = propertyQuery.GetQuery(&bstrQuery)) && - SUCCEEDED(hr = GetNode(bstrQuery, &pPropertyNode)) && - hr != S_FALSE) - { - // - // Delete the property node and all children - // - hr = DeleteNode(pPropertyNode); - } - } - else - { - hr = E_INVALIDARG; - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::QueryNodeOption - -Routine Description: - - This routine locates the node specified by the XPath query passed in and - returns the value of the "name" attribute as a string. The PrintSchema - keyword prefix is stripped from the result. - -Arguments: - - bstrQuery - The XPath query locating the node to retrieve the value for - pbstrOption - Pointer to a BSTR to recieve the option string - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - If node does not exist - E_* - On error - ---*/ -HRESULT -CPTHandler::QueryNodeOption( - _In_z_ BSTR bstrQuery, - _Outptr_result_maybenull_z_ BSTR* pbstrOption - ) -{ - HRESULT hr = S_OK; - - // - // Validate input parameters - // - if (SUCCEEDED(hr = CHECK_POINTER(pbstrOption, E_POINTER))) - { - *pbstrOption = NULL; - - if (SysStringLen(bstrQuery) <= 0) - { - hr = E_INVALIDARG; - } - } - - // - // Given a bare PrintSchema query, retrieve the selected option - // - if (SUCCEEDED(hr)) - { - CComPtr<IXMLDOMNode> pQueryNode(NULL); - - if (SUCCEEDED(hr = GetNode(bstrQuery, &pQueryNode)) && - hr != S_FALSE && - SUCCEEDED(hr = GetAttributeValue(pQueryNode, CComBSTR(NAME_ATTRIBUTE_NAME), pbstrOption)) && - hr != S_FALSE) - { - hr = StripKeywordNamespace(pbstrOption); - } - } - - if (hr == S_FALSE) - { - hr = E_ELEMENT_NOT_FOUND; - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::FeaturePresent - -Routine Description: - - This routine checks if the named feature is present in the PrintTicket - and optionally returns that node - -Arguments: - - bstrFeature - The feature name to be located - ppFeatureNode - optional paramter that recieves the node - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - If node does not exist - E_* - On error - ---*/ -HRESULT -CPTHandler::FeaturePresent( - _In_z_ BSTR bstrFeature, - _Outptr_opt_ IXMLDOMNode** ppFeatureNode - ) -{ - HRESULT hr = S_OK; - - // - // Validate input parameters - // - if (SysStringLen(bstrFeature) > 0) - { - // - // Find the feature node - // - CPTQueryBuilder propertyQuery(m_bstrFrameworkPrefix); - CComBSTR bstrQuery; - - CComPtr<IXMLDOMNode> pFeatureNode(NULL); - - if (SUCCEEDED(hr = propertyQuery.AddFeature(m_bstrKeywordsPrefix, bstrFeature)) && - SUCCEEDED(hr = propertyQuery.GetQuery(&bstrQuery))) - { - if (ppFeatureNode == NULL) - { - hr = GetNode(bstrQuery, &pFeatureNode); - } - else - { - hr = GetNode(bstrQuery, ppFeatureNode); - } - } - } - else - { - hr = E_INVALIDARG; - } - - if (hr == S_FALSE) - { - hr = E_ELEMENT_NOT_FOUND; - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::GetFeatureOption - -Routine Description: - - This routine retrieves the option set for the named feature passed in. - -Arguments: - - bstrFeature - The feature name to retrieve the option for - pbstrOption - Pointer to a BSTR to recieve the option - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - If node does not exist - E_* - On error - ---*/ -HRESULT -CPTHandler::GetFeatureOption( - _In_z_ BSTR bstrFeature, - _Outptr_result_maybenull_z_ BSTR* pbstrOption - ) -{ - HRESULT hr = S_OK; - - // - // Validate input parameters - // - if (SUCCEEDED(hr = CHECK_POINTER(pbstrOption, E_POINTER))) - { - if (SysStringLen(bstrFeature) <= 0) - { - hr = E_INVALIDARG; - } - } - - // - // Given a bare PrintSchema feature name, retrieve the selected option - // - if (SUCCEEDED(hr)) - { - // - // Find the feature option node - // - CPTQueryBuilder propertyQuery(m_bstrFrameworkPrefix); - CComBSTR bstrQuery; - - CComPtr<IXMLDOMNode> pOptionNode(NULL); - - if (SUCCEEDED(hr = propertyQuery.AddFeature(m_bstrKeywordsPrefix, bstrFeature)) && - SUCCEEDED(hr = propertyQuery.AddOption(m_bstrKeywordsPrefix)) && - SUCCEEDED(hr = propertyQuery.GetQuery(&bstrQuery)) && - SUCCEEDED(hr = GetNode(bstrQuery, &pOptionNode)) && - hr != S_FALSE) - { - // - // If this is a shorthand option then the option is stored in the "name" attribute - // - hr = GetAttributeValue(pOptionNode, CComBSTR(NAME_ATTRIBUTE_NAME), pbstrOption); - - if (hr == S_FALSE) - { - // - // This might be a longhand option in which case the node we have retrieved - // is pointing at a scored property the value of which is the option - // - CComVariant varValue; - if (SUCCEEDED(hr = pOptionNode->get_nodeTypedValue(&varValue)) && - hr != S_FALSE) - { - *pbstrOption = ::SysAllocString(varValue.bstrVal); - - if (*pbstrOption == NULL) - { - hr = E_OUTOFMEMORY; - } - } - } - - if (SUCCEEDED(hr) && - hr != S_FALSE) - { - hr = StripKeywordNamespace(pbstrOption); - } - } - } - - if (hr == S_FALSE) - { - hr = E_ELEMENT_NOT_FOUND; - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::GetSubFeatureOption - -Routine Description: - - This routine retrieves the current option for a sub feature. The routine - finds the named parent feature, then the sub-feature and retrieves the - option that is set. - -Arguments: - - bstrParentFeature - The parent feature name - bstrFeature - The sub-feature name - pbstrOption - Pointer to a BSTR to recieve the option - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - If node does not exist - E_* - On error - ---*/ -HRESULT -CPTHandler::GetSubFeatureOption( - _In_z_ BSTR bstrParentFeature, - _In_z_ BSTR bstrFeature, - _Outptr_result_maybenull_z_ BSTR* pbstrOption - ) -{ - HRESULT hr = S_OK; - - // - // Validate input parameters - // - if (SUCCEEDED(hr = CHECK_POINTER(pbstrOption, E_POINTER))) - { - *pbstrOption = NULL; - - if (SysStringLen(bstrFeature) <= 0 || - SysStringLen(bstrParentFeature) <= 0) - { - hr = E_INVALIDARG; - } - } - - // - // Given a bare PrintSchema feature name, retrieve the selected option - // - if (SUCCEEDED(hr)) - { - // - // Find the sub feature option node - // - CPTQueryBuilder propertyQuery(m_bstrFrameworkPrefix); - CComBSTR bstrQuery; - - CComPtr<IXMLDOMNode> pFeatureNode(NULL); - - if (SUCCEEDED(hr = propertyQuery.AddFeature(m_bstrKeywordsPrefix, bstrParentFeature)) && - SUCCEEDED(hr = propertyQuery.AddFeature(m_bstrKeywordsPrefix, bstrFeature)) && - SUCCEEDED(hr = propertyQuery.AddOption(m_bstrKeywordsPrefix)) && - SUCCEEDED(hr = propertyQuery.GetQuery(&bstrQuery)) && - SUCCEEDED(hr = GetNode(bstrQuery, &pFeatureNode)) && - hr != S_FALSE && - SUCCEEDED(hr = GetAttributeValue(pFeatureNode, CComBSTR(NAME_ATTRIBUTE_NAME), pbstrOption)) && - hr != S_FALSE) - { - hr = StripKeywordNamespace(pbstrOption); - } - } - - if (hr == S_FALSE) - { - hr = E_ELEMENT_NOT_FOUND; - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::GetScoredPropertyValue - -Routine Description: - - This routine retrieves the scored property value as a string for a given feature. - -Arguments: - - bstrParentFeature - The parent feature name - bstrProperty - The scored property name - pbstrValue - Pointer to a BSTR to recieve the scored property value - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::GetScoredPropertyValue( - _In_z_ BSTR bstrParentFeature, - _In_z_ BSTR bstrProperty, - _Outptr_result_maybenull_ BSTR* pbstrValue - ) -{ - HRESULT hr = S_OK; - - // - // Validate input parameters - // - if (SUCCEEDED(hr = CHECK_POINTER(pbstrValue, E_POINTER))) - { - *pbstrValue = NULL; - - if (SysStringLen(bstrProperty) <= 0 || - SysStringLen(bstrParentFeature) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - // - // Get the scored property value - // - CPTQueryBuilder propertyQuery(m_bstrFrameworkPrefix); - CComBSTR bstrQuery; - - if (SUCCEEDED(hr = propertyQuery.AddFeature(m_bstrKeywordsPrefix, bstrParentFeature)) && - SUCCEEDED(hr = propertyQuery.AddScoredProperty(m_bstrKeywordsPrefix, bstrProperty)) && - SUCCEEDED(hr = propertyQuery.GetQuery(&bstrQuery))) - { - hr = GetNodeValue(bstrQuery, pbstrValue); - } - } - - if (hr == S_FALSE) - { - hr = E_ELEMENT_NOT_FOUND; - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::GetScoredPropertyValue - -Routine Description: - - This routine retrieves the integer value of a scored property from a named - feature - -Arguments: - - bstrParentFeature - The name of the parent feature - bstrProperty - The name of the scored property to retrieve the value of - pValue - Pointer to an INT that recieves the property value - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::GetScoredPropertyValue( - _In_z_ BSTR bstrParentFeature, - _In_z_ BSTR bstrProperty, - _Out_ INT* pValue - ) -{ - HRESULT hr = S_OK; - - CComBSTR bstrValue; - if (SUCCEEDED(hr = CHECK_POINTER(pValue, E_POINTER))) - { - if (SysStringLen(bstrParentFeature) <= 0 || - SysStringLen(bstrProperty) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = GetScoredPropertyValue(bstrParentFeature, bstrProperty, &bstrValue))) - { - *pValue = static_cast<INT>(_wtoi(bstrValue)); - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::GetScoredPropertyValue - -Routine Description: - - This routine retrieves the REAL value of a scored property from a named - feature - -Arguments: - - bstrParentFeature - The name of the parent feature - bstrProperty - The name of the scored property to retrieve the value of - pValue - Pointer to a REAL that recieves the property value - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::GetScoredPropertyValue( - _In_z_ BSTR bstrParentFeature, - _In_z_ BSTR bstrProperty, - _Out_ REAL* pValue - ) -{ - HRESULT hr = S_OK; - - CComBSTR bstrValue; - if (SUCCEEDED(hr = CHECK_POINTER(pValue, E_POINTER))) - { - if (SysStringLen(bstrParentFeature) <= 0 || - SysStringLen(bstrProperty) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = GetScoredPropertyValue(bstrParentFeature, bstrProperty, &bstrValue))) - { - *pValue = static_cast<REAL>(_wtof(bstrValue)); - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::StripKeywordNamespace - -Routine Description: - - This routine strips the PrintSchema keyword namespace prefix from a value - -Arguments: - - pbstrValue - Pointer to the value string to have the prefix stripped - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::StripKeywordNamespace( - _Inout_ BSTR* pbstrValue - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pbstrValue, E_POINTER))) - { - if (SysStringLen(*pbstrValue) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - try - { - CStringXDW cstrStrippedName(*pbstrValue); - - INT cchStringStart = cstrStrippedName.Find(m_bstrKeywordsPrefix); - size_t cchKWPrefix = 0; - if (cchStringStart != -1 && - SUCCEEDED(hr = StringCchLength(m_bstrKeywordsPrefix, STRSAFE_MAX_CCH, &cchKWPrefix))) - { - cstrStrippedName.Delete(cchStringStart, static_cast<INT>(cchKWPrefix)); - SysFreeString(*pbstrValue); - *pbstrValue = cstrStrippedName.AllocSysString(); - } - } - catch (CXDException& e) - { - hr = e; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::CreateParamRefInitPair - -Routine Description: - - This routine create a pair of DOM elements corresponding to the ParameterRef and - the ParameterInit that describe a ScoredProperty value. - -Arguments: - - bstrParam - The name of the property - bstrType - The type of the value (string, integer etc.) - bstrValue - The value of the property - ppParamRef - Pointer to a IXMLDOMElement pointer that recives the new ParameterRef - ppParamInit - Pointer to a IXMLDOMElement pointer that recives the new ParameterInit - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::CreateParamRefInitPair( - _In_ CONST BSTR bstrParam, - _In_ CONST BSTR bstrType, - _In_ CONST BSTR bstrValue, - _Outptr_ IXMLDOMElement** ppParamRef, - _Outptr_ IXMLDOMElement** ppParamInit - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppParamRef, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(ppParamInit, E_POINTER))) - { - *ppParamRef = NULL; - *ppParamInit = NULL; - - if (SysStringLen(bstrParam) <= 0 || - SysStringLen(bstrType) <= 0 || - SysStringLen(bstrValue) <= 0) - { - hr = E_INVALIDARG; - } - } - - CComPtr<IXMLDOMElement> pParamInit(NULL); - CComPtr<IXMLDOMElement> pParamRef(NULL); - - if (SUCCEEDED(hr)) - { - CComBSTR bstrPRefName; - if (wcscmp(bstrParam, L"PageWatermarkSizeWidth") == 0 || - wcscmp(bstrParam, L"PageWatermarkSizeHeight") == 0) - { - bstrPRefName += m_bstrUserKeywordsPrefix; - } - else - { - bstrPRefName += m_bstrKeywordsPrefix; - } - - bstrPRefName += bstrParam; - - // - // Create the parameter ref element - // - CComBSTR bstrTagName(m_bstrFrameworkPrefix); - bstrTagName += PARAM_REF_ELEMENT_NAME; - - if(SUCCEEDED(hr)) - { - hr = CreateXMLElement(bstrTagName, FRAMEWORK_URI, &pParamRef); - } - - if (SUCCEEDED(hr)) - { - hr = CreateXMLAttribute(pParamRef, NAME_ATTRIBUTE_NAME, NULL, bstrPRefName ); - } - - // - // Create the parameter init element - // - bstrTagName.Empty(); - bstrTagName += m_bstrFrameworkPrefix; - bstrTagName += PARAM_INIT_ELEMENT_NAME; - - if(SUCCEEDED(hr)) - { - hr = CreateXMLElement(bstrTagName, FRAMEWORK_URI, &pParamInit); - } - - if (SUCCEEDED(hr)) - { - hr = CreateXMLAttribute(pParamInit, NAME_ATTRIBUTE_NAME, NULL, bstrPRefName ); - } - - // - // Create the parameter init value and add to the parameter init element - // - CComPtr<IXMLDOMElement> pValue(NULL); - - bstrTagName.Empty(); - bstrTagName += m_bstrFrameworkPrefix; - bstrTagName += VALUE_ELEMENT_NAME; - - CComBSTR bstrAttrib(m_bstrSchemaInstPrefix); - bstrAttrib += SCHEMA_TYPE; - - CComBSTR bstrAttribValue(m_bstrSchemaPrefix); - bstrAttribValue += bstrType; - - if(SUCCEEDED(hr)) - { - hr = CreateXMLElement(bstrTagName, FRAMEWORK_URI, &pValue); - } - - if (SUCCEEDED(hr)) - { - if( SUCCEEDED(hr = CreateXMLAttribute(pValue, bstrAttrib, SCHEMA_INST_URI, bstrAttribValue )) && - SUCCEEDED(hr = pValue->put_text(bstrValue))) - { - hr = pParamInit->appendChild(pValue, NULL); - } - } - } - - if (SUCCEEDED(hr)) - { - // - // Assign the outgoing element pointers - detach from CComPtr to release ownership - // - *ppParamRef = pParamRef.Detach(); - *ppParamInit = pParamInit.Detach(); - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::CreateParamRefInitPair - -Routine Description: - - This routine create a pair of DOM elements corresponding to the ParameterRef and - the ParameterInit that describe a ScoredProperty value. This overload is INT specific - -Arguments: - - bstrParam - The name of the property - intValue - The integer value of the scored property - ppParamRef - Pointer to a IXMLDOMElement pointer that recives the new ParameterRef - ppParamInit - Pointer to a IXMLDOMElement pointer that recives the new ParameterInit - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::CreateParamRefInitPair( - _In_ CONST BSTR bstrParam, - _In_ CONST INT intValue, - _Outptr_ IXMLDOMElement** ppParamRef, - _Outptr_ IXMLDOMElement** ppParamInit - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppParamRef, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(ppParamInit, E_POINTER))) - { - if (SysStringLen(bstrParam) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - try - { - CStringXDW cstrValue; - cstrValue.Format(L"%i", intValue); - - hr = CreateParamRefInitPair(bstrParam, - CComBSTR(SCHEMA_INTEGER), - CComBSTR(cstrValue.AllocSysString()), - ppParamRef, - ppParamInit); - } - catch (CXDException& e) - { - hr = e; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::CreateFeatureOptionPair - -Routine Description: - - This routine create a pair of DOM elements corresponding to Feature and Option. - Note this method does not intialise the option element, it merely creates an Option - node appended to the Feature element. It is up to the caller to set the option value. - -Arguments: - - bstrFeatureName - The name of the feature - ppFeatureElement - Pointer to a IXMLDOMElement pointer that recives the new Feature - ppOptionElement - Pointer to a IXMLDOMElement pointer that recives the new Option - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::CreateFeatureOptionPair( - _In_ CONST BSTR bstrFeatureName, - _Outptr_ IXMLDOMElement** ppFeatureElement, - _Outptr_ IXMLDOMElement** ppOptionElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppFeatureElement, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(ppOptionElement, E_POINTER))) - { - *ppFeatureElement = NULL; - *ppOptionElement = NULL; - - if (SysStringLen(bstrFeatureName) <= 0) - { - hr = E_INVALIDARG; - } - } - else - { - hr = E_POINTER; - } - - if (SUCCEEDED(hr)) - { - CComBSTR bstrFeature(m_bstrFrameworkPrefix); - bstrFeature += FEATURE_ELEMENT_NAME; - - CComBSTR bstrAttribName(m_bstrKeywordsPrefix); - bstrAttribName += bstrFeatureName; - - CComBSTR bstrOption(m_bstrFrameworkPrefix); - bstrOption += OPTION_ELEMENT_NAME; - - if(SUCCEEDED(hr)) - { - hr = CreateXMLElement(bstrFeature, FRAMEWORK_URI, ppFeatureElement); - } - - if(SUCCEEDED(hr)) - { - hr = CreateXMLElement(bstrOption, FRAMEWORK_URI, ppOptionElement); - } - - if(SUCCEEDED(hr)) - { - if (SUCCEEDED(hr = CreateXMLAttribute(*ppFeatureElement, NAME_ATTRIBUTE_NAME, NULL, bstrAttribName ))) - { - hr = (*ppFeatureElement)->appendChild(*ppOptionElement, NULL); - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::CreateFeatureOptionPair - -Routine Description: - - This routine create a pair of DOM elements corresponding to Feature and Option. - -Arguments: - - bstrFeatureName - The name of the feature - bstrOptionName - The name of the option - ppFeatureElement - Pointer to a IXMLDOMElement pointer that recives the new Feature - ppOptionElement - Pointer to a IXMLDOMElement pointer that recives the new Option - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::CreateFeatureOptionPair( - _In_ CONST BSTR bstrFeatureName, - _In_ CONST BSTR bstrOptionName, - _Outptr_ IXMLDOMElement** ppFeatureElement, - _Outptr_ IXMLDOMElement** ppOptionElement - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppFeatureElement, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(ppOptionElement, E_POINTER))) - { - if (SysStringLen(bstrFeatureName) <= 0 || - SysStringLen(bstrOptionName) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - if (SUCCEEDED(hr = CreateFeatureOptionPair(bstrFeatureName, ppFeatureElement, ppOptionElement))) - { - // - // Set the option name attribute - // - CComBSTR bstrAttribValue(m_bstrKeywordsPrefix); - bstrAttribValue += bstrOptionName; - - hr = CreateXMLAttribute(*ppOptionElement, NAME_ATTRIBUTE_NAME, NULL, bstrAttribValue ); - - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTHandler::AppendToElement - -Routine Description: - - This routine uses the passed element name to locate the node to which - it will append the DOM node passed in. - -Arguments: - - bstrElementName - The name of the element to append to - pAppendNode - The node to append - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTHandler::AppendToElement( - _In_ CONST BSTR bstrElementName, - _In_ IXMLDOMNode* pAppendNode - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pAppendNode, E_POINTER))) - { - if (SysStringLen(bstrElementName) <= 0) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - CComPtr<IXMLDOMNode> pNode(NULL); - - CComBSTR bstrQuery(m_bstrFrameworkPrefix); - bstrQuery += bstrElementName; - - if (SUCCEEDED(hr = GetNode(bstrQuery, &pNode))) - { - hr = pNode->appendChild(pAppendNode, NULL); - } - } - - ERR_ON_HR(hr); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/pthndlr.h b/print/XPSDrvSmpl/src/common/pthndlr.h deleted file mode 100644 index e8bd8a08..00000000 --- a/print/XPSDrvSmpl/src/common/pthndlr.h +++ /dev/null @@ -1,178 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -File Name: - - pthndlr.h - -Abstract: - - Base PrintTicket handler class definition. This class provides common - PrintTicket handling functionality for any filter that requires print - ticket handling. A filter can from this class to get feature unspecific - XML handling functionality. - ---*/ - -#pragma once - -#include "schema.h" -#include "pshndlr.h" - -class CPTHandler : public CPSHandler -{ -public: - // - // Constructors and destructors - // - CPTHandler( - _In_ IXMLDOMDocument2 *pPrintTicket - ); - - virtual ~CPTHandler(); - -public: - HRESULT - DeleteFeature( - _In_z_ BSTR bstrFeature - ); - - HRESULT - DeleteProperty( - _In_z_ BSTR bstrProperty - ); - -protected: - HRESULT - QueryNodeOption( - _In_z_ BSTR bstrQuery, - _Outptr_result_maybenull_z_ BSTR* pbstrOption - ); - - HRESULT - FeaturePresent( - _In_z_ BSTR bstrFeature, - _Outptr_opt_ IXMLDOMNode** ppFeatureNode = NULL - ); - - HRESULT - GetFeatureOption( - _In_z_ BSTR bstrFeature, - _Outptr_result_maybenull_z_ BSTR* pbstrOption - ); - - HRESULT - GetSubFeatureOption( - _In_z_ BSTR bstrParentFeature, - _In_z_ BSTR bstrFeature, - _Outptr_result_maybenull_z_ BSTR* pbstrOption - ); - - HRESULT - GetScoredPropertyValue( - _In_z_ BSTR bstrParentFeature, - _In_z_ BSTR bstrProperty, - _Outptr_result_maybenull_ BSTR* pbstrValue - ); - - HRESULT - GetScoredPropertyValue( - _In_z_ BSTR bstrParentFeature, - _In_z_ BSTR bstrProperty, - _Out_ INT* pValue - ); - - HRESULT - GetScoredPropertyValue( - _In_z_ BSTR bstrParentFeature, - _In_z_ BSTR bstrProperty, - _Out_ REAL* pValue - ); - - HRESULT - SetFeatureOption( - _In_z_ BSTR bstrFeature, - _In_z_ BSTR bstrOption - ); - - HRESULT - SetSubFeatureOption( - _In_z_ BSTR bstrParentFeature, - _In_z_ BSTR bstrFeature, - _In_z_ BSTR bstrOption - ); - - HRESULT - SetPropertyAsValue( - _In_z_ BSTR bstrFeature, - _In_z_ BSTR bstrProperty, - _In_z_ BSTR bstrValue - ); - - HRESULT - SetPropertyAsParameterRef( - _In_z_ BSTR bstrFeature, - _In_z_ BSTR bstrProperty, - _In_z_ BSTR bstrParameterRef, - _In_z_ BSTR bstrValue - ); - - HRESULT - CreateParamRefInitPair( - _In_ CONST BSTR bstrParam, - _In_ CONST BSTR bstrType, - _In_ CONST BSTR bstrValue, - _Outptr_ IXMLDOMElement** ppParamRef, - _Outptr_ IXMLDOMElement** ppParamInit - ); - - HRESULT - CreateParamRefInitPair( - _In_ CONST BSTR bstrParam, - _In_ CONST INT intValue, - _Outptr_ IXMLDOMElement** ppParamRef, - _Outptr_ IXMLDOMElement** ppParamInit - ); - - HRESULT - CreateFeatureOptionPair( - _In_ CONST BSTR bstrFeatureName, - _Outptr_ IXMLDOMElement** ppFeatureElement, - _Outptr_ IXMLDOMElement** ppOptionElement - ); - - HRESULT - CreateFeatureOptionPair( - _In_ CONST BSTR bstrFeatureName, - _In_ CONST BSTR bstrOptionName, - _Outptr_ IXMLDOMElement** ppFeatureElement, - _Outptr_ IXMLDOMElement** ppOptionElement - ); - - HRESULT - AppendToElement( - _In_ CONST BSTR bstrElementName, - _In_ IXMLDOMNode* pAppendNode - ); - -private: - HRESULT - StripKeywordNamespace( - _Inout_ BSTR* pbstrValue - ); - - HRESULT - DeleteNodeList( - _Inout_ IXMLDOMNodeList* pNodeList - ); - - HRESULT - DeleteParamInitOrphans( - _In_ IXMLDOMNodeList* pRefList, - _Inout_ IXMLDOMNodeList* pInitList - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/ptquerybld.cpp b/print/XPSDrvSmpl/src/common/ptquerybld.cpp deleted file mode 100644 index cc7faa8a..00000000 --- a/print/XPSDrvSmpl/src/common/ptquerybld.cpp +++ /dev/null @@ -1,516 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - ptquerybld.cpp - -Abstract: - - PrintTicket XPath query builder implementation. The CPTQueryBuilder class - provides a means of constructing PrintTicket specific XPath queries for - retrieving nodes from within the DOM document describing the PrintTicket. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdstring.h" -#include "ptquerybld.h" - -// -// XML PrintTicket Query Builder Format Strings -// -static PCWSTR szPTQFeature = L"//%sFeature[@name = \"%s\"]"; -static PCWSTR szPTQProperty = L"//%sProperty[@name = \"%s\"]"; -static PCWSTR szPTQScoredProperty = L"//%sScoredProperty[@name = \"%s\"]"; -static PCWSTR szPTQParamRef = L"//%sParameterRef[@name = \"%s\"]"; -static PCWSTR szPTQOptionSH = L"/%sOption"; -static PCWSTR szPTQOptionLH = L"/%sScoredProperty[@name = \"%sOptionName\"]/%sValue"; -static PCWSTR szPTQOrNodes = L" | "; - -/*++ - -Routine Name: - - CPTQueryBuilder::CPTQueryBuilder - -Routine Description: - - CPTQueryBuilder class default constructor - -Arguments: - - bstrFrameworkNS - PrintTicket framework namespace prefix - -Return Value: - - None - ---*/ -CPTQueryBuilder::CPTQueryBuilder( - _In_z_ BSTR bstrFrameworkNS - ) : - m_bstrFrameworkNS(bstrFrameworkNS) -{ -} - -/*++ - -Routine Name: - - CPTQueryBuilder::CPTQueryBuilder - -Routine Description: - - CPTQueryBuilder class constructor - -Arguments: - - bstrFrameworkNS - PrintTicket framework namespace prefix - bstrQuery - String containing base query to use on construction. - -Return Value: - - None - ---*/ -CPTQueryBuilder::CPTQueryBuilder( - _In_z_ BSTR bstrFrameworkNS, - _In_z_ BSTR bstrQuery - ) : - m_bstrFrameworkNS(bstrFrameworkNS), - m_bstrQuery(bstrQuery) -{ -} - -/*++ - -Routine Name: - - CPTQueryBuilder::~CPTQueryBuilder - -Routine Description: - - CPTQueryBuilder class destructor. - -Arguments: - - None - -Return Value: - - None - ---*/ -CPTQueryBuilder::~CPTQueryBuilder( - ) -{ -} - -/*++ - -Routine Name: - - CPTQueryBuilder::Clear - -Routine Description: - - Clears the current query string. - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTQueryBuilder::Clear( - VOID - ) -{ - m_bstrQuery.Empty(); - - return S_OK; -} - -/*++ - -Routine Name: - - CPTQueryBuilder::GetQuery - -Routine Description: - - Makes a copy of the current query string and returns it to the caller. - -Arguments: - - bstrQuery - Address of a pointer that will be modified to point to a string - that is filled out with a copy of the current query. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTQueryBuilder::GetQuery( - _Inout_ _At_(*pbstrQuery, _Pre_maybenull_ _Post_valid_) BSTR* pbstrQuery - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pbstrQuery, E_POINTER))) - { - SysFreeString(*pbstrQuery); - hr = m_bstrQuery.CopyTo(pbstrQuery); - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTQueryBuilder::AddFeature - -Routine Description: - - Appends a feature query to the query builder class. - -Arguments: - - bstrKeywordNS - Optional parameter defining the keyword namespace to prefix. - bstrFeature - Pointer to a string defining the feature name to be appended. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTQueryBuilder::AddFeature( - _In_opt_z_ BSTR bstrKeywordNS, - _In_z_ BSTR bstrFeature - ) -{ - HRESULT hr = S_OK; - - if (m_bstrFrameworkNS.Length() > 0) - { - try - { - CComBSTR bstrKeyword; - - if (SysStringLen(bstrKeywordNS) > 0) - { - hr = bstrKeyword.Append(bstrKeywordNS); - } - - if (SUCCEEDED(hr)) - { - hr = bstrKeyword.Append(bstrFeature); - } - - if (SUCCEEDED(hr)) - { - CStringXDW cstrFeatureQuery; - cstrFeatureQuery.Format(szPTQFeature, static_cast<LPCWSTR>(m_bstrFrameworkNS), static_cast<LPCWSTR>(bstrKeyword)); - - hr = m_bstrQuery.Append(cstrFeatureQuery); - } - } - catch (CXDException& e) - { - hr = e; - } - } - else - { - hr = E_FAIL; - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTQueryBuilder::AddProperty - -Routine Description: - - Appends a property query to the query builder class. - -Arguments: - - bstrKeywordNS - Optional parameter defining the keyword namespace to prefix. - bstrProperty - Pointer to a string defining the property name to be appended. - - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTQueryBuilder::AddProperty( - _In_opt_z_ BSTR bstrKeywordNS, - _In_z_ BSTR bstrProperty - ) -{ - HRESULT hr = S_OK; - - if (m_bstrFrameworkNS.Length() > 0) - { - try - { - CComBSTR bstrKeyword; - - if (SysStringLen(bstrKeywordNS) > 0) - { - hr = bstrKeyword.Append(bstrKeywordNS); - } - - if (SUCCEEDED(hr)) - { - hr = bstrKeyword.Append(bstrProperty); - } - - if (SUCCEEDED(hr)) - { - CStringXDW cstrPropertyQuery; - cstrPropertyQuery.Format(szPTQProperty, static_cast<LPCWSTR>(m_bstrFrameworkNS), static_cast<LPCWSTR>(bstrKeyword)); - - hr = m_bstrQuery.Append(cstrPropertyQuery); - } - } - catch (CXDException& e) - { - hr = e; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTQueryBuilder::AddScoredProperty - -Routine Description: - - Appends a scored property query to the query builder class. - -Arguments: - - bstrKeywordNS - Optional parameter defining the keyword namespace to prefix. - bstrScoredProperty - Pointer to a string defining the scored property name to be appended. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTQueryBuilder::AddScoredProperty( - _In_opt_z_ BSTR bstrKeywordNS, - _In_z_ BSTR bstrScoredProperty - ) -{ - HRESULT hr = S_OK; - - if (m_bstrFrameworkNS.Length() > 0) - { - try - { - CComBSTR bstrKeyword; - - if (SysStringLen(bstrKeywordNS) > 0) - { - hr = bstrKeyword.Append(bstrKeywordNS); - } - - if (SUCCEEDED(hr)) - { - hr = bstrKeyword.Append(bstrScoredProperty); - } - - if (SUCCEEDED(hr)) - { - CStringXDW cstrScoredPropertyQuery; - cstrScoredPropertyQuery.Format(szPTQScoredProperty, static_cast<LPCWSTR>(m_bstrFrameworkNS), static_cast<LPCWSTR>(bstrKeyword)); - - hr = m_bstrQuery.Append(cstrScoredPropertyQuery); - } - } - catch (CXDException& e) - { - hr = e; - } - } - else - { - hr = E_FAIL; - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTQueryBuilder::AddScoredProperty - -Routine Description: - - Appends a Parameter Reference query to the query builder class. - -Arguments: - - bstrKeywordNS - Optional parameter defining the keyword namespace to prefix. - bstrScoredProperty - Pointer to a string defining the scored property name to be appended. - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTQueryBuilder::AddParamRef( - _In_opt_z_ BSTR bstrKeywordNS, - _In_z_ BSTR bstrParameterRef - ) -{ - HRESULT hr = S_OK; - - if (m_bstrFrameworkNS.Length() > 0) - { - try - { - CComBSTR bstrKeyword; - - if (SysStringLen(bstrKeywordNS) > 0) - { - hr = bstrKeyword.Append(bstrKeywordNS); - } - - if (SUCCEEDED(hr)) - { - hr = bstrKeyword.Append(bstrParameterRef); - } - - if (SUCCEEDED(hr)) - { - CStringXDW cstrParamRefQuery; - cstrParamRefQuery.Format(szPTQParamRef, static_cast<LPCWSTR>(m_bstrFrameworkNS), static_cast<LPCWSTR>(bstrKeyword)); - - hr = m_bstrQuery.Append(cstrParamRefQuery); - } - } - catch (CXDException& e) - { - hr = e; - } - } - else - { - hr = E_FAIL; - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CPTQueryBuilder::AddOption - -Routine Description: - - Appends the option query to the query builder class. - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CPTQueryBuilder::AddOption( - _In_opt_z_ BSTR bstrKeywordNS - ) -{ - HRESULT hr = S_OK; - - if (m_bstrFrameworkNS.Length() > 0) - { - try - { - CStringXDW cstrQueryRoot(m_bstrQuery); - CStringXDW cstrOptionQuery; - cstrOptionQuery.Format(szPTQOptionSH, static_cast<LPCWSTR>(m_bstrFrameworkNS)); - - if (SUCCEEDED(hr = m_bstrQuery.Append(cstrOptionQuery)) && - SUCCEEDED(hr = m_bstrQuery.Append(szPTQOrNodes)) && - SUCCEEDED(hr = m_bstrQuery.Append(cstrQueryRoot))) - { - cstrOptionQuery.Format(szPTQOptionLH, static_cast<LPCWSTR>(m_bstrFrameworkNS), - static_cast<LPCWSTR>(bstrKeywordNS), static_cast<LPCWSTR>(m_bstrFrameworkNS)); - hr = m_bstrQuery.Append(cstrOptionQuery); - } - } - catch (CXDException& e) - { - hr = e; - } - } - else - { - hr = E_FAIL; - } - - ERR_ON_HR(hr); - return hr; -} diff --git a/print/XPSDrvSmpl/src/common/ptquerybld.h b/print/XPSDrvSmpl/src/common/ptquerybld.h deleted file mode 100644 index a82172ea..00000000 --- a/print/XPSDrvSmpl/src/common/ptquerybld.h +++ /dev/null @@ -1,84 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - ptquerybld.h - -Abstract: - - PrintTicket XPath query builder definition. The CPTQueryBuilder class - provides a means of constructing PrintTicket specific XPath queries for - retrieving nodes from within the DOM document describing the PrintTicket. - ---*/ - -#pragma once - -class CPTQueryBuilder -{ -public: - CPTQueryBuilder( - _In_z_ BSTR bstrFrameworkNS - ); - - CPTQueryBuilder( - _In_z_ BSTR bstrFrameworkNS, - _In_z_ BSTR bstrQuery - ); - - virtual ~CPTQueryBuilder(); - - HRESULT - Clear( - VOID - ); - - HRESULT - GetQuery( - _Inout_ _At_(*pbstrQuery, _Pre_maybenull_ _Post_valid_) BSTR* pbstrQuery - ); - - HRESULT - AddFeature( - _In_opt_z_ BSTR bstrKeywordNS, - _In_z_ BSTR bstrPropertyName - ); - - HRESULT - AddProperty( - _In_opt_z_ BSTR bstrKeywordNS, - _In_z_ BSTR bstrPropertyName - ); - - HRESULT - AddScoredProperty( - _In_opt_z_ BSTR bstrKeywordNS, - _In_z_ BSTR bstrPropertyName - ); - - HRESULT - AddParamRef( - _In_opt_z_ BSTR bstrKeywordNS, - _In_z_ BSTR bstrParameterRef - ); - - HRESULT - AddOption( - _In_opt_z_ BSTR bstrKeywordNS - ); - -private: - CComBSTR m_bstrQuery; - - CComBSTR m_bstrFrameworkNS; -}; - diff --git a/print/XPSDrvSmpl/src/common/schema.cpp b/print/XPSDrvSmpl/src/common/schema.cpp deleted file mode 100644 index ce2aa2c2..00000000 --- a/print/XPSDrvSmpl/src/common/schema.cpp +++ /dev/null @@ -1,70 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - schema.cpp - -Abstract: - - PrintSchema implementation. This provides the definition of keywords common - to all features within the PrintSchema. - ---*/ - -#include "precomp.h" -#include "schema.h" - -LPCWSTR XDPrintSchema::SCHEMA_INST_URI = - L"http://www.w3.org/2001/XMLSchema-instance"; - -LPCWSTR XDPrintSchema::SCHEMA_DEF_URI = - L"http://www.w3.org/2001/XMLSchema"; - -LPCWSTR XDPrintSchema::SCHEMA_TYPE = L"type"; -LPCWSTR XDPrintSchema::SCHEMA_INTEGER = L"integer"; -LPCWSTR XDPrintSchema::SCHEMA_DECIMAL = L"decimal"; -LPCWSTR XDPrintSchema::SCHEMA_STRING = L"string"; -LPCWSTR XDPrintSchema::SCHEMA_QNAME = L"QName"; -LPCWSTR XDPrintSchema::SCHEMA_CONDITIONAL = L"Conditional"; - -LPCWSTR XDPrintSchema::FRAMEWORK_URI = - L"http://schemas.microsoft.com/windows/2003/08/printing/printschemaframework"; - -LPCWSTR XDPrintSchema::KEYWORDS_URI = - L"http://schemas.microsoft.com/windows/2003/08/printing/printschemakeywords"; - -LPCWSTR XDPrintSchema::FEATURE_ELEMENT_NAME = L"Feature"; -LPCWSTR XDPrintSchema::OPTION_ELEMENT_NAME = L"Option"; -LPCWSTR XDPrintSchema::PARAM_INIT_ELEMENT_NAME = L"ParameterInit"; -LPCWSTR XDPrintSchema::PARAM_REF_ELEMENT_NAME = L"ParameterRef"; -LPCWSTR XDPrintSchema::PARAM_DEF_ELEMENT_NAME = L"ParameterDef"; -LPCWSTR XDPrintSchema::SCORED_PROP_ELEMENT_NAME = L"ScoredProperty"; -LPCWSTR XDPrintSchema::PROPERTY_ELEMENT_NAME = L"Property"; -LPCWSTR XDPrintSchema::VALUE_ELEMENT_NAME = L"Value"; -LPCWSTR XDPrintSchema::NAME_ATTRIBUTE_NAME = L"name"; - - -LPCWSTR XDPrintSchema::PICKONE_VALUE_NAME = L"PickOne"; -LPCWSTR XDPrintSchema::SELECTIONTYPE_VALUE_NAME = L"SelectionType"; -LPCWSTR XDPrintSchema::DATATYPE_VALUE_NAME = L"DataType"; -LPCWSTR XDPrintSchema::DEFAULTVAL_VALUE_NAME = L"DefaultValue"; -LPCWSTR XDPrintSchema::MAX_VALUE_NAME = L"MaxValue"; -LPCWSTR XDPrintSchema::MIN_VALUE_NAME = L"MinValue"; -LPCWSTR XDPrintSchema::MAX_LENGTH_NAME = L"MaxLength"; -LPCWSTR XDPrintSchema::MIN_LENGTH_NAME = L"MinLength"; -LPCWSTR XDPrintSchema::MULTIPLE_VALUE_NAME = L"Multiple"; -LPCWSTR XDPrintSchema::MANDATORY_VALUE_NAME = L"Mandatory"; -LPCWSTR XDPrintSchema::UNITTYPE_VALUE_NAME = L"UnitType"; -LPCWSTR XDPrintSchema::DISPLAYNAME_VALUE_NAME = L"DisplayName"; - -LPCWSTR XDPrintSchema::PRINTTICKET_NAME = L"PrintTicket"; -LPCWSTR XDPrintSchema::PRINTCAPABILITIES_NAME = L"PrintCapabilities"; diff --git a/print/XPSDrvSmpl/src/common/schema.h b/print/XPSDrvSmpl/src/common/schema.h deleted file mode 100644 index 540de949..00000000 --- a/print/XPSDrvSmpl/src/common/schema.h +++ /dev/null @@ -1,94 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - schema.h - -Abstract: - - PrintSchema definition. This provides the definition of keywords common - to all features within the PrintSchema. The description is placed within a - XDPrintSchema namespace. - ---*/ - -#pragma once - -enum EPrintschemaVersion -{ - PRINTSCHEMA_VERSION_NUMBER = 1 -}; - -namespace XDPrintSchema -{ - // - // W3 namespaces - // - extern LPCWSTR SCHEMA_INST_URI; - extern LPCWSTR SCHEMA_DEF_URI; - - // - // W3 type prefixes - // - extern LPCWSTR SCHEMA_TYPE; - extern LPCWSTR SCHEMA_INTEGER; - extern LPCWSTR SCHEMA_DECIMAL; - extern LPCWSTR SCHEMA_STRING; - extern LPCWSTR SCHEMA_QNAME; - extern LPCWSTR SCHEMA_CONDITIONAL; - - // - // Namespaces - // - extern LPCWSTR FRAMEWORK_URI; - extern LPCWSTR KEYWORDS_URI; - - // - // Element and attribute types defined in Printschema framework - // - extern LPCWSTR FEATURE_ELEMENT_NAME; - extern LPCWSTR OPTION_ELEMENT_NAME; - extern LPCWSTR PARAM_INIT_ELEMENT_NAME; - extern LPCWSTR PARAM_REF_ELEMENT_NAME; - extern LPCWSTR PARAM_DEF_ELEMENT_NAME; - extern LPCWSTR SCORED_PROP_ELEMENT_NAME; - extern LPCWSTR VALUE_ELEMENT_NAME; - extern LPCWSTR NAME_ATTRIBUTE_NAME; - extern LPCWSTR PROPERTY_ELEMENT_NAME; - - // - // Value types defined in the PrintSchema Keywords - // - extern LPCWSTR PICKONE_VALUE_NAME; - extern LPCWSTR SELECTIONTYPE_VALUE_NAME; - extern LPCWSTR DATATYPE_VALUE_NAME; - extern LPCWSTR DEFAULTVAL_VALUE_NAME; - extern LPCWSTR MAX_VALUE_NAME; - extern LPCWSTR MIN_VALUE_NAME; - extern LPCWSTR MAX_LENGTH_NAME; - extern LPCWSTR MIN_LENGTH_NAME; - extern LPCWSTR MULTIPLE_VALUE_NAME; - extern LPCWSTR MANDATORY_VALUE_NAME; - extern LPCWSTR UNITTYPE_VALUE_NAME; - extern LPCWSTR DISPLAYNAME_VALUE_NAME; - - // - // Root PrintTicket element - // - extern LPCWSTR PRINTTICKET_NAME; - - // - // Root PrintCapabilities element - // - extern LPCWSTR PRINTCAPABILITIES_NAME; -} - diff --git a/print/XPSDrvSmpl/src/common/wmdata.h b/print/XPSDrvSmpl/src/common/wmdata.h deleted file mode 100644 index effe32a5..00000000 --- a/print/XPSDrvSmpl/src/common/wmdata.h +++ /dev/null @@ -1,71 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - wmdata.h - -Abstract: - - PageWatermark data structure definition. This provides a convenient - description of the PrintSchema PageWatermark feature. - ---*/ - -#pragma once - -#include "wmschema.h" - -namespace XDPrintSchema -{ - namespace PageWatermark - { - struct WMTextData - { - WMTextData() : - bstrFontColor(L"#FFFFFF"), - fontSize(12), - bstrText(L"Undefined") - { - } - - CComBSTR bstrFontColor; - INT fontSize; - CComBSTR bstrText; - }; - - struct WatermarkData - { - WatermarkData() : - type(TextWatermark), - widthOrigin(0), - heightOrigin(0), - widthExtent(215900), - heightExtent(279400), - transparency(0), - angle(0), - layering(Layering::Overlay) - { - } - - EWatermarkOption type; - INT widthOrigin; - INT heightOrigin; - INT widthExtent; - INT heightExtent; - INT transparency; - INT angle; - WMTextData txtData; - Layering::ELayeringOption layering; - }; - } -} - diff --git a/print/XPSDrvSmpl/src/common/wmpchndlr.cpp b/print/XPSDrvSmpl/src/common/wmpchndlr.cpp deleted file mode 100644 index bab943b8..00000000 --- a/print/XPSDrvSmpl/src/common/wmpchndlr.cpp +++ /dev/null @@ -1,555 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - wmpchndlr.cpp - -Abstract: - - Page watermark PrintCapabilities handling implementation. The watermark PC handler - is used to set Page Watermark settings in a PrintCapabilities. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdexcept.h" -#include "xdexcept.h" -#include "wmpchndlr.h" -#include "privatedefs.h" - -using XDPrintSchema::PRINTCAPABILITIES_NAME; - -using XDPrintSchema::PageWatermark::TextWatermark; -using XDPrintSchema::PageWatermark::BitmapWatermark; -using XDPrintSchema::PageWatermark::VectorWatermark; -using XDPrintSchema::PageWatermark::ECommonWatermarkProps; -using XDPrintSchema::PageWatermark::ECommonWatermarkPropsMin; -using XDPrintSchema::PageWatermark::ECommonWatermarkPropsMax; -using XDPrintSchema::PageWatermark::ETextWatermarkProps; -using XDPrintSchema::PageWatermark::ETextWatermarkPropsMin; -using XDPrintSchema::PageWatermark::ETextWatermarkPropsMax; -using XDPrintSchema::PageWatermark::EVectBmpWatermarkProps; -using XDPrintSchema::PageWatermark::EVectBmpWatermarkPropsMin; -using XDPrintSchema::PageWatermark::EVectBmpWatermarkPropsMax; -using XDPrintSchema::PageWatermark::WATERMARK_FEATURE; -using XDPrintSchema::PageWatermark::WATERMARK_OPTIONS; -using XDPrintSchema::PageWatermark::CMN_WATERMARK_PROPS; -using XDPrintSchema::PageWatermark::TXT_WATERMARK_PROPS; -using XDPrintSchema::PageWatermark::VECTBMP_WATERMARK_PROPS; - -using XDPrintSchema::PageWatermark::Layering::ELayeringOption; -using XDPrintSchema::PageWatermark::Layering::ELayeringOptionMin; -using XDPrintSchema::PageWatermark::Layering::ELayeringOptionMax; -using XDPrintSchema::PageWatermark::Layering::LAYERING_FEATURE; -using XDPrintSchema::PageWatermark::Layering::LAYERING_OPTIONS; - -/*++ - -Routine Name: - - CWMPCHandler::CWMPCHandler - -Routine Description: - - CWMPCHandler class constructor - -Arguments: - - pPrintCapabilities - Pointer to the DOM document representation of the PrintCapabilities - -Return Value: - - None - ---*/ -CWMPCHandler::CWMPCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ) : - CPCHandler(pPrintCapabilities) -{ -} - -/*++ - -Routine Name: - - CWMPCHandler::~CWMPCHandler - -Routine Description: - - CWMPCHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CWMPCHandler::~CWMPCHandler() -{ -} - -/*++ - -Routine Name: - - CWMPCHandler::SetCapabilities - -Routine Description: - - This routine sets watermark capabilities in the PrintCapabilities passed to the - class constructor. - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPCHandler::SetCapabilities( - VOID - ) -{ - HRESULT hr = S_OK; - - try - { - // - // Retrieve the PrintTicket root - // - CComPtr<IXMLDOMNode> pPTRoot(NULL); - - CComBSTR bstrPTQuery(m_bstrFrameworkPrefix); - bstrPTQuery += PRINTCAPABILITIES_NAME; - - if (SUCCEEDED(hr = GetNode(bstrPTQuery, &pPTRoot))) - { - CComPtr<IXMLDOMElement> pFeatureElement(NULL); - - if (SUCCEEDED(hr = CreateFeatureSelection(CComBSTR(WATERMARK_FEATURE), NULL, &pFeatureElement))) - { - CComPtr<IXMLDOMElement> pTextOption(NULL); - - // - // Create the Text Watermark Options - // - if (SUCCEEDED(hr = CreateOption(CComBSTR(WATERMARK_OPTIONS[TextWatermark]), NULL, &pTextOption))) - { - PTDOMElementVector propertList; - - // - // Create the common scored property list - // - for (ECommonWatermarkProps cmnProps = ECommonWatermarkPropsMin; - cmnProps < ECommonWatermarkPropsMax && SUCCEEDED(hr); - cmnProps = static_cast<ECommonWatermarkProps>(cmnProps + 1)) - { - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(CMN_WATERMARK_PROPS[cmnProps]), &pScoredProperty))) - { - CComPtr<IXMLDOMElement> pParamRef(NULL); - - // - // Construct the parameter reference elements - // - CComBSTR bstrPRefName(WATERMARK_FEATURE); - - if (wcscmp(CMN_WATERMARK_PROPS[cmnProps], L"Angle") == 0) - { - hr = bstrPRefName.Append(L"Text"); - } - - bstrPRefName += CMN_WATERMARK_PROPS[cmnProps]; - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = CreateParameterRef(bstrPRefName, &pParamRef))) - { - hr = pScoredProperty->appendChild(pParamRef, NULL); - } - - propertList.push_back(pScoredProperty); - } - } - - // - // Create the text specific scored property list - // - for (ETextWatermarkProps txtProps = ETextWatermarkPropsMin; - txtProps < ETextWatermarkPropsMax && SUCCEEDED(hr); - txtProps = static_cast<ETextWatermarkProps>(txtProps + 1)) - { - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(TXT_WATERMARK_PROPS[txtProps]), &pScoredProperty))) - { - CComPtr<IXMLDOMElement> pParamRef(NULL); - - // - // Construct the parameter reference elements - // - CComBSTR bstrPRefName(WATERMARK_FEATURE); - bstrPRefName += TXT_WATERMARK_PROPS[txtProps]; - - if (SUCCEEDED(hr = CreateParameterRef(bstrPRefName, &pParamRef))) - { - hr = pScoredProperty->appendChild(pParamRef, NULL); - } - - propertList.push_back(pScoredProperty); - } - } - - // - // Add the properties to the text option - // - PTDOMElementVector::iterator iterPropertList = propertList.begin(); - - for (;iterPropertList != propertList.end() && SUCCEEDED(hr); iterPropertList++) - { - hr = pTextOption->appendChild(*iterPropertList, NULL); - } - - if (SUCCEEDED(hr)) - { - hr = pFeatureElement->appendChild(pTextOption, NULL); - } - } - - CComPtr<IXMLDOMElement> pVectorOption(NULL); - - // - // Create the Vector Watermark Options - // - if (SUCCEEDED(hr) && - SUCCEEDED(hr = CreateOption(CComBSTR(WATERMARK_OPTIONS[VectorWatermark]), NULL, &pVectorOption))) - { - PTDOMElementVector propertList; - - // - // Create the common scored property list - // - for (ECommonWatermarkProps cmnProps = ECommonWatermarkPropsMin; - cmnProps < ECommonWatermarkPropsMax && SUCCEEDED(hr); - cmnProps = static_cast<ECommonWatermarkProps>(cmnProps + 1)) - { - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(CMN_WATERMARK_PROPS[cmnProps]), &pScoredProperty))) - { - CComPtr<IXMLDOMElement> pParamRef(NULL); - - // - // Construct the parameter reference elements - // - CComBSTR bstrPRefName(WATERMARK_FEATURE); - - if (wcscmp(CMN_WATERMARK_PROPS[cmnProps], L"Angle") == 0) - { - bstrPRefName += WATERMARK_OPTIONS[TextWatermark]; - } - - bstrPRefName += CMN_WATERMARK_PROPS[cmnProps]; - - if (SUCCEEDED(hr = CreateParameterRef(bstrPRefName, &pParamRef))) - { - hr = pScoredProperty->appendChild(pParamRef, NULL); - } - - propertList.push_back(pScoredProperty); - } - } - - // - // Create the vector specific property list - // - for (EVectBmpWatermarkProps vectProps = EVectBmpWatermarkPropsMin; - vectProps < EVectBmpWatermarkPropsMax && SUCCEEDED(hr); - vectProps = static_cast<EVectBmpWatermarkProps>(vectProps + 1)) - { - // - // Create the scored property element - // - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(VECTBMP_WATERMARK_PROPS[vectProps]), &pScoredProperty))) - { - CComPtr<IXMLDOMElement> pParamRef(NULL); - - // - // Construct the parameter reference elements - // - CComBSTR bstrPRefName(WATERMARK_FEATURE); - bstrPRefName += VECTBMP_WATERMARK_PROPS[vectProps]; - - if (SUCCEEDED(hr = CreateParameterRef(bstrPRefName, &pParamRef))) - { - hr = pScoredProperty->appendChild(pParamRef, NULL); - } - - propertList.push_back(pScoredProperty); - } - } - - // - // Add the properties to the vector option - // - PTDOMElementVector::iterator iterPropertList = propertList.begin(); - - for (;iterPropertList != propertList.end() && SUCCEEDED(hr); iterPropertList++) - { - hr = pVectorOption->appendChild(*iterPropertList, NULL); - } - - if (SUCCEEDED(hr)) - { - hr = pFeatureElement->appendChild(pVectorOption, NULL); - } - } - - CComPtr<IXMLDOMElement> pBitmapOption(NULL); - - // - // Create the Bitmap Watermark Options - // - if (SUCCEEDED(hr) && - SUCCEEDED(hr = CreateOption(CComBSTR(WATERMARK_OPTIONS[BitmapWatermark]), NULL, &pBitmapOption))) - { - PTDOMElementVector propertList; - - // - // Create the common scored property list - // - for (ECommonWatermarkProps cmnProps = ECommonWatermarkPropsMin; - cmnProps < ECommonWatermarkPropsMax && SUCCEEDED(hr); - cmnProps = static_cast<ECommonWatermarkProps>(cmnProps + 1)) - { - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(CMN_WATERMARK_PROPS[cmnProps]), &pScoredProperty))) - { - CComPtr<IXMLDOMElement> pParamRef(NULL); - - // - // Construct the parameter reference elements - // - CComBSTR bstrPRefName(WATERMARK_FEATURE); - - if (wcscmp(CMN_WATERMARK_PROPS[cmnProps], L"Angle") == 0) - { - hr = bstrPRefName.Append(L"Text"); - } - - bstrPRefName += CMN_WATERMARK_PROPS[cmnProps]; - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = CreateParameterRef(bstrPRefName, &pParamRef))) - { - hr = pScoredProperty->appendChild(pParamRef, NULL); - } - - propertList.push_back(pScoredProperty); - } - } - - // - // Create the bitmap specific property list - // - for (EVectBmpWatermarkProps bmpProps = EVectBmpWatermarkPropsMin; - bmpProps < EVectBmpWatermarkPropsMax && SUCCEEDED(hr); - bmpProps = static_cast<EVectBmpWatermarkProps>(bmpProps + 1)) - { - // - // Create the scored property element - // - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(VECTBMP_WATERMARK_PROPS[bmpProps]), &pScoredProperty))) - { - CComPtr<IXMLDOMElement> pParamRef(NULL); - - // - // Construct the parameter reference elements - // - CComBSTR bstrPRefName(WATERMARK_FEATURE); - bstrPRefName += VECTBMP_WATERMARK_PROPS[bmpProps]; - - if (SUCCEEDED(hr = CreateParameterRef(bstrPRefName, &pParamRef))) - { - hr = pScoredProperty->appendChild(pParamRef, NULL); - } - - propertList.push_back(pScoredProperty); - } - } - - // - // Add the properties to the bitmap option - // - PTDOMElementVector::iterator iterPropertList = propertList.begin(); - - for (;iterPropertList != propertList.end() && SUCCEEDED(hr); iterPropertList++) - { - hr = pBitmapOption->appendChild(*iterPropertList, NULL); - } - - if (SUCCEEDED(hr)) - { - hr = pFeatureElement->appendChild(pBitmapOption, NULL); - } - } - - CComPtr<IXMLDOMElement> pLayeringFeature(NULL); - - // - // Create the layering feature options - // - if (SUCCEEDED(hr) && - SUCCEEDED(hr = CreateFeature(CComBSTR(LAYERING_FEATURE), NULL, &pLayeringFeature))) - { - PTDOMElementVector optionList; - - // - // Create the layering option list - // - for (ELayeringOption wmLayering = ELayeringOptionMin; - wmLayering < ELayeringOptionMax && SUCCEEDED(hr); - wmLayering = static_cast<ELayeringOption>(wmLayering + 1)) - { - CComPtr<IXMLDOMElement> pOptionProperty(NULL); - - if (SUCCEEDED(hr = CreateOption(CComBSTR(LAYERING_OPTIONS[wmLayering]), NULL, &pOptionProperty))) - { - optionList.push_back(pOptionProperty); - } - } - - // - // Add the options to the layering feature - // - PTDOMElementVector::iterator iterOptionList = optionList.begin(); - - for (;iterOptionList != optionList.end() && SUCCEEDED(hr); iterOptionList++) - { - hr = pLayeringFeature->appendChild(*iterOptionList, NULL); - } - - if (SUCCEEDED(hr)) - { - hr = pFeatureElement->appendChild(pLayeringFeature, NULL); - } - } - - if (SUCCEEDED(hr)) - { - hr = pPTRoot->appendChild(pFeatureElement, NULL); - } - } - - // - // Create the integer parameter defs - // - for (UINT cIndex = 0; SUCCEEDED(hr) && cIndex < numof(wmParamDefIntegers); cIndex++) - { - CComPtr<IXMLDOMElement> pParameterDef(NULL); - - // - // PageWatermarkTextColor has no associated multiple value - // - INT multiple; - if (wcscmp(CComBSTR(wmParamDefIntegers[cIndex].property_name), L"PageWatermarkTextColor") == 0) - { - // - // convert integer representation into a string parameter in the - // PrintCapabilities. This is a special case because it's treated - // as an int in the DEVMODE & a string in the PrintTicket - // - CComBSTR bstrDefault(L"#AARRGGBB"); - hr = StringCchPrintf(bstrDefault, SysStringLen(bstrDefault)+1, TEXT("#%.8X"), wmParamDefIntegers[cIndex].default_value); - - if (SUCCEEDED(hr)) - { - hr = CreateStringParameterDef(CComBSTR(wmParamDefIntegers[cIndex].property_name), // Paramater Name - TRUE, // Is Print Schema keyword? - CComBSTR(wmParamDefIntegers[cIndex].display_name), // Display Text - bstrDefault, // Default - 9, // Min Length: - // table contains min value, which is different - 9, // Max Length: - // table contains min value, which is different - CComBSTR(wmParamDefIntegers[cIndex].unit_type), // Unit Type - &pParameterDef); // Parameter Def - } - } - else - { - multiple = wmParamDefIntegers[cIndex].multiple; - - hr = CreateIntParameterDef(CComBSTR(wmParamDefIntegers[cIndex].property_name), // Paramater Name - wmParamDefIntegers[cIndex].is_public, // Is Print Schema keyword? - CComBSTR(wmParamDefIntegers[cIndex].display_name), // Display Text - wmParamDefIntegers[cIndex].default_value, // Default - wmParamDefIntegers[cIndex].min_length, // Min value - wmParamDefIntegers[cIndex].max_length, // Max value - multiple, // Multiple - CComBSTR(wmParamDefIntegers[cIndex].unit_type), // Unit Type - &pParameterDef); // Parameter Def - } - - if (SUCCEEDED(hr)) - { - hr = pPTRoot->appendChild(pParameterDef, NULL); - } - } - - // - // Create the string parameter defs - // - for (UINT cIndex = 0; SUCCEEDED(hr) && cIndex < numof(wmParamDefStrings); cIndex++) - { - CComPtr<IXMLDOMElement> pParameterDef(NULL); - - if (SUCCEEDED(hr = CreateStringParameterDef(CComBSTR(wmParamDefStrings[cIndex].property_name), // Paramater Name - TRUE, // Is Print Schema keyword? - CComBSTR(wmParamDefStrings[cIndex].display_name), // Display Text - CComBSTR(wmParamDefStrings[cIndex].default_value), // Default - wmParamDefStrings[cIndex].min_length, // Min Length - wmParamDefStrings[cIndex].max_length, // Max Length - CComBSTR(wmParamDefStrings[cIndex].unit_type), // Unit Type - &pParameterDef))) // Parameter Def - { - hr = pPTRoot->appendChild(pParameterDef, NULL); - } - } - } - } - catch (exception& DBG_ONLY(e)) - { - ERR(e.what()); - hr = E_FAIL; - } - - ERR_ON_HR(hr); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/wmpchndlr.h b/print/XPSDrvSmpl/src/common/wmpchndlr.h deleted file mode 100644 index 2ffcaada..00000000 --- a/print/XPSDrvSmpl/src/common/wmpchndlr.h +++ /dev/null @@ -1,41 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - wmpchndlr.h - -Abstract: - - Page Watermark PrintCapabilities handling definition. The booklet PC handler - is used to set booklet settings in a PrintCapabilities. - ---*/ - -#pragma once - -#include "pchndlr.h" -#include "wmdata.h" - -class CWMPCHandler : public CPCHandler -{ -public: - CWMPCHandler( - _In_ IXMLDOMDocument2* pPrintCapabilities - ); - - virtual ~CWMPCHandler(); - - HRESULT - SetCapabilities( - VOID - ); -}; diff --git a/print/XPSDrvSmpl/src/common/wmpthndlr.cpp b/print/XPSDrvSmpl/src/common/wmpthndlr.cpp deleted file mode 100644 index 49792d6a..00000000 --- a/print/XPSDrvSmpl/src/common/wmpthndlr.cpp +++ /dev/null @@ -1,1167 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - wmpthndlr.cpp - -Abstract: - - PageWatermark PrintTicket handler implementation. Derived from CPTHandler, - this provides PageWatermark specific Get and Set methods acting on the - PrintTicket passed (as a DOM document). - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdstring.h" -#include "xdexcept.h" -#include "wmpthndlr.h" - -using XDPrintSchema::PRINTTICKET_NAME; -using XDPrintSchema::NAME_ATTRIBUTE_NAME; -using XDPrintSchema::SCHEMA_DECIMAL; -using XDPrintSchema::SCHEMA_INTEGER; -using XDPrintSchema::SCHEMA_STRING; - -using XDPrintSchema::PageWatermark::WatermarkData; - -using XDPrintSchema::PageWatermark::EWatermarkOption; -using XDPrintSchema::PageWatermark::EWatermarkOptionMin; -using XDPrintSchema::PageWatermark::NoWatermark; -using XDPrintSchema::PageWatermark::TextWatermark; -using XDPrintSchema::PageWatermark::BitmapWatermark; -using XDPrintSchema::PageWatermark::VectorWatermark; -using XDPrintSchema::PageWatermark::EWatermarkOptionMax; - -using XDPrintSchema::PageWatermark::ECommonWatermarkProps; -using XDPrintSchema::PageWatermark::ECommonWatermarkPropsMin; -using XDPrintSchema::PageWatermark::WidthOrigin; -using XDPrintSchema::PageWatermark::HeightOrigin; -using XDPrintSchema::PageWatermark::Transparency; -using XDPrintSchema::PageWatermark::Angle; -using XDPrintSchema::PageWatermark::ECommonWatermarkPropsMax; - -using XDPrintSchema::PageWatermark::ETextWatermarkProps; -using XDPrintSchema::PageWatermark::ETextWatermarkPropsMin; -using XDPrintSchema::PageWatermark::FontColor; -using XDPrintSchema::PageWatermark::FontSize; -using XDPrintSchema::PageWatermark::Text; -using XDPrintSchema::PageWatermark::ETextWatermarkPropsMax; - -using XDPrintSchema::PageWatermark::EVectBmpWatermarkProps; -using XDPrintSchema::PageWatermark::EVectBmpWatermarkPropsMin; -using XDPrintSchema::PageWatermark::WidthExtent; -using XDPrintSchema::PageWatermark::HeightExtent; -using XDPrintSchema::PageWatermark::EVectBmpWatermarkPropsMax; - -using XDPrintSchema::PageWatermark::WATERMARK_FEATURE; -using XDPrintSchema::PageWatermark::WATERMARK_OPTIONS; -using XDPrintSchema::PageWatermark::CMN_WATERMARK_PROPS; -using XDPrintSchema::PageWatermark::TXT_WATERMARK_PROPS; -using XDPrintSchema::PageWatermark::VECTBMP_WATERMARK_PROPS; - -using XDPrintSchema::PageWatermark::Layering::ELayeringOption; - -using XDPrintSchema::PageWatermark::Layering::ELayeringOptionMin; -using XDPrintSchema::PageWatermark::Layering::Overlay; -using XDPrintSchema::PageWatermark::Layering::Underlay; -using XDPrintSchema::PageWatermark::Layering::ELayeringOptionMax; - -using XDPrintSchema::PageWatermark::Layering::LAYERING_FEATURE; -using XDPrintSchema::PageWatermark::Layering::LAYERING_OPTIONS; - -/*++ - -Routine Name: - - CWMPTHandler::CWMPTHandler - -Routine Description: - - CWMPTHandler class constructor - -Arguments: - - pPrintTicket - Pointer to the DOM document representation of the PrintTicket - -Return Value: - - None - ---*/ -CWMPTHandler::CWMPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ) : - CPTHandler(pPrintTicket) -{ -} - -/*++ - -Routine Name: - - CWMPTHandler::~CWMPTHandler - -Routine Description: - - CWMPTHandler class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CWMPTHandler::~CWMPTHandler() -{ -} - -/*++ - -Routine Name: - - CWMPTHandler::GetData - -Routine Description: - - The routine fills the data structure passed in with watermark data retrieved from - the PrintTicket passed to the class constructor. - -Arguments: - - pWmData - Pointer to the watermark data structure to be filled in - -Return Value: - - HRESULT - S_OK - On success - E_ELEMENT_NOT_FOUND - Feature not present in PrintTicket - E_* - On error - ---*/ -HRESULT -CWMPTHandler::GetData( - _Out_ WatermarkData* pWmData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pWmData, E_POINTER))) - { - CComBSTR bstrWMOption; - CComBSTR bstrLayerOption; - - if (SUCCEEDED(hr = GetFeatureOption(CComBSTR(WATERMARK_FEATURE), &bstrWMOption)) && - SUCCEEDED(hr = GetSubFeatureOption(CComBSTR(WATERMARK_FEATURE), - CComBSTR(LAYERING_FEATURE), - &bstrLayerOption)) && - SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(CMN_WATERMARK_PROPS[WidthOrigin]), - &pWmData->widthOrigin)) && - SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(CMN_WATERMARK_PROPS[HeightOrigin]), - &pWmData->heightOrigin)) && - SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(CMN_WATERMARK_PROPS[Transparency]), - &pWmData->transparency)) && - SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(CMN_WATERMARK_PROPS[Angle]), - &pWmData->angle))) - { - if (bstrWMOption == WATERMARK_OPTIONS[BitmapWatermark]) - { - pWmData->type = BitmapWatermark; - - if (SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(VECTBMP_WATERMARK_PROPS[WidthExtent]), - &pWmData->widthExtent))) - { - hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(VECTBMP_WATERMARK_PROPS[HeightExtent]), - &pWmData->heightExtent); - } - - } - else if (bstrWMOption == WATERMARK_OPTIONS[TextWatermark]) - { - pWmData->type = TextWatermark; - if (SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(TXT_WATERMARK_PROPS[FontColor]), - &pWmData->txtData.bstrFontColor)) && - SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(TXT_WATERMARK_PROPS[FontSize]), - &pWmData->txtData.fontSize))) - { - hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(TXT_WATERMARK_PROPS[Text]), - &pWmData->txtData.bstrText); - } - } - else if (bstrWMOption == WATERMARK_OPTIONS[VectorWatermark]) - { - pWmData->type = VectorWatermark; - - if (SUCCEEDED(hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(VECTBMP_WATERMARK_PROPS[WidthExtent]), - &pWmData->widthExtent))) - { - hr = GetScoredPropertyValue(CComBSTR(WATERMARK_FEATURE), - CComBSTR(VECTBMP_WATERMARK_PROPS[HeightExtent]), - &pWmData->heightExtent); - } - } - else - { - hr = E_FAIL; - } - - if (SUCCEEDED(hr)) - { - if (bstrLayerOption == LAYERING_OPTIONS[Underlay]) - { - pWmData->layering = Underlay; - } - else if (bstrLayerOption == LAYERING_OPTIONS[Overlay]) - { - pWmData->layering = Overlay; - } - else - { - hr = E_FAIL; - } - } - } - - if (hr == E_ELEMENT_NOT_FOUND) - { - pWmData->type = NoWatermark; - } - } - - // - // Validate the data - // - if (SUCCEEDED(hr)) - { - if (pWmData->type < EWatermarkOptionMin || - pWmData->type >= EWatermarkOptionMax || - pWmData->layering < ELayeringOptionMin || - pWmData->layering >= ELayeringOptionMax) - { - hr = E_FAIL; - } - } - - ERR_ON_HR_EXC(hr, E_ELEMENT_NOT_FOUND); - return hr; -} - -/*++ - -Routine Name: - - CWMPTHandler::SetData - -Routine Description: - - This routine sets the watermark data in the PrintTicket passed to the - class constructor. - -Arguments: - - pWmData - Pointer to the watermark data to be set in the PrintTicket - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPTHandler::SetData( - _In_ CONST WatermarkData* pWmData - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pWmData, E_POINTER))) - { - try - { - // - // Remove any existing watermark feature node - // - if (SUCCEEDED(hr = Delete()) && - pWmData->type != NoWatermark) - { - // - // Construct the appropriate watermark element - // - CComPtr<IXMLDOMElement> pWMDataElem(NULL); - PTDOMElementVector paramInitList; - - switch (pWmData->type) - { - case TextWatermark: - { - hr = CreateTextWMElements(pWmData, &pWMDataElem, ¶mInitList); - } - break; - - case BitmapWatermark: - { - hr = CreateBitmapWMElements(pWmData, &pWMDataElem, ¶mInitList); - } - break; - - case VectorWatermark: - { - hr = CreateVectorWMElements(pWmData, &pWMDataElem, ¶mInitList); - } - break; - - default: - { - hr = E_FAIL; - } - break; - } - - // - // Insert the watermark and paramater init nodes - // - CComPtr<IXMLDOMNode> pPTRoot(NULL); - - CComBSTR bstrPTQuery(m_bstrFrameworkPrefix); - bstrPTQuery += PRINTTICKET_NAME; - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = GetNode(bstrPTQuery, &pPTRoot))) - { - hr = pPTRoot->appendChild(pWMDataElem, NULL); - - PTDOMElementVector::iterator iterParamInit = paramInitList.begin(); - - for (;iterParamInit != paramInitList.end() && SUCCEEDED(hr); iterParamInit++) - { - hr = pPTRoot->appendChild(*iterParamInit, NULL); - } - } - } - } - catch (exception& DBG_ONLY(e)) - { - ERR(e.what()); - hr = E_FAIL; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CWMPTHandler::Delete - -Routine Description: - - This routine deletes the watermark feature from the PrintTicket passed to the - class constructor - -Arguments: - - None - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPTHandler::Delete( - VOID - ) -{ - // - // Remove any existing watermark feature node - // - HRESULT hr = DeleteFeature(CComBSTR(WATERMARK_FEATURE)); - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CWMPTHandler::CreateCommonWMElements - -Routine Description: - - This routine creates all the DOM elements common to all Watermark types. Note that - this routine also returns the option element seperately (so the caller can specify the - watermark type) and a list of the ParameterInit elements (so the caller can append them - to the root PrintTicket element) - -Arguments: - - pWmData - Pointer to the watermark data structure - ppWMDataElem - Pointer to an IXMLDOMElement pointer that recieves feature element - ppOptionElem - Pointer to an IXMLDOMElement pointer that recieves option element - pParamInitList - Pointer to a vector of DOM element pointers that recieves the parameter init elements - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPTHandler::CreateCommonWMElements( - _In_ CONST WatermarkData* pWmData, - _Outptr_ IXMLDOMElement** ppWMDataElem, - _Outptr_ IXMLDOMElement** ppOptionElem, - _Out_ PTDOMElementVector* pParamInitList - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pWmData, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(ppWMDataElem, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(ppOptionElem, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pParamInitList, E_POINTER))) - { - *ppWMDataElem = NULL; - - if (pWmData->layering < ELayeringOptionMin || - pWmData->layering >= ELayeringOptionMax) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - // - // Create the feature option pair - CreateFeatureOptionPair does not - // set the option name, this is done in the calling function - // - if (SUCCEEDED(hr = CreateFeatureOptionPair(CComBSTR(WATERMARK_FEATURE), ppWMDataElem, ppOptionElem))) - { - // - // Over all common properties, create and insert the element - // - for (ECommonWatermarkProps cmnProps = ECommonWatermarkPropsMin; - cmnProps < ECommonWatermarkPropsMax && SUCCEEDED(hr); - cmnProps = static_cast<ECommonWatermarkProps>(cmnProps + 1)) - { - // - // Create the scored property element - // - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(CMN_WATERMARK_PROPS[cmnProps]), &pScoredProperty))) - { - // - // Construct the param ref and param init elements - // - CComBSTR bstrPRefName(WATERMARK_FEATURE); - - if (wcscmp(CMN_WATERMARK_PROPS[cmnProps], L"Angle") == 0) - { - bstrPRefName += L"Text"; - } - - bstrPRefName += CMN_WATERMARK_PROPS[cmnProps]; - - CComPtr<IXMLDOMElement> pParamRef(NULL); - CComPtr<IXMLDOMElement> pParamInit(NULL); - - CComBSTR bstrType; - CComBSTR bstrValue; - - if (SUCCEEDED(hr = GetCmnPropTypeAndValue(pWmData, cmnProps, &bstrType, &bstrValue)) && - SUCCEEDED(hr = CreateParamRefInitPair(bstrPRefName, bstrType, bstrValue, &pParamRef, &pParamInit))) - { - // - // Append the parameter ref element to the scored property, append the - // scored property to the option element and add the parameter init - // element to the vector - // - CComPtr<IXMLDOMNode> pPRInserted(NULL); - CComPtr<IXMLDOMNode> pSPInserted(NULL); - - if (SUCCEEDED(hr = pScoredProperty->appendChild(pParamRef, &pPRInserted)) && - SUCCEEDED(hr = (*ppOptionElem)->appendChild(pScoredProperty, &pSPInserted))) - { - try - { - pParamInitList->push_back(pParamInit); - } - catch (exception& DBG_ONLY(e)) - { - ERR(e.what()); - hr = E_FAIL; - } - } - } - } - } - } - - // - // Create the layering feature - // - CComPtr<IXMLDOMElement> pLayeringElement(NULL); - CComPtr<IXMLDOMElement> pLayeringOptionElement(NULL); - - CComBSTR bstrAttribName(m_bstrKeywordsPrefix); - bstrAttribName += LAYERING_OPTIONS[pWmData->layering]; - - if (SUCCEEDED(hr) && - SUCCEEDED(hr = CreateFeatureOptionPair(CComBSTR(LAYERING_FEATURE), - CComBSTR(LAYERING_OPTIONS[pWmData->layering]), - &pLayeringElement, - &pLayeringOptionElement))) - { - // - // Append the layering feature to the watermark feature node - // - hr = (*ppWMDataElem)->appendChild(pLayeringElement, NULL); - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CWMPTHandler::CreateCommonVectBmpWMElements - -Routine Description: - - This routine creates all the DOM elements common to all the vector and bitmap Watermark types. - -Arguments: - - pWmData - Pointer to the watermark data structure - pOptionElem - Pointer to an IXMLDOMElement to append the elements to - pParamInitList - Pointer to a vector of DOM element pointers that recieves the parameter init elements - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPTHandler::CreateCommonVectBmpWMElements( - _In_ CONST WatermarkData* pWmData, - _In_ IXMLDOMElement* pOptionElem, - _Out_ PTDOMElementVector* pParamInitList - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pWmData, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pOptionElem, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pParamInitList, E_POINTER))) - { - // - // Over all common properties, create and insert the element - // - for (EVectBmpWatermarkProps vectBmpProps = EVectBmpWatermarkPropsMin; - vectBmpProps < EVectBmpWatermarkPropsMax && SUCCEEDED(hr); - vectBmpProps = static_cast<EVectBmpWatermarkProps>(vectBmpProps + 1)) - { - // - // Create the scored property element - // - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(VECTBMP_WATERMARK_PROPS[vectBmpProps]), &pScoredProperty))) - { - // - // Construct the param ref and param init elements - // - CComBSTR bstrPRefName(WATERMARK_FEATURE); - bstrPRefName += VECTBMP_WATERMARK_PROPS[vectBmpProps]; - - CComPtr<IXMLDOMElement> pParamRef(NULL); - CComPtr<IXMLDOMElement> pParamInit(NULL); - - CComBSTR bstrType; - CComBSTR bstrValue; - - if (SUCCEEDED(hr = GetCmnVectBmpPropTypeAndValue(pWmData, vectBmpProps, &bstrType, &bstrValue)) && - SUCCEEDED(hr = CreateParamRefInitPair(bstrPRefName, bstrType, bstrValue, &pParamRef, &pParamInit))) - { - // - // Append the parameter ref element to the scored property, append the - // scored property to the option element and add the parameter init - // element to the vector - // - CComPtr<IXMLDOMNode> pPRInserted(NULL); - CComPtr<IXMLDOMNode> pSPInserted(NULL); - - if (SUCCEEDED(hr = pScoredProperty->appendChild(pParamRef, &pPRInserted)) && - SUCCEEDED(hr = pOptionElem->appendChild(pScoredProperty, &pSPInserted))) - { - try - { - pParamInitList->push_back(pParamInit); - } - catch (exception& DBG_ONLY(e)) - { - ERR(e.what()); - hr = E_FAIL; - } - } - } - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CWMPTHandler::CreateTextWMElements - -Routine Description: - - This routine creates a text watermark feature in the PrintTicket - -Arguments: - - pWmData - Pointer to the watermark data structure - ppWMDataElem - Pointer to an IXMLDOMElement pointer that recieves feature element - pParamInitList - P:ointer to a vector of DOM element pointers that recieves the parameter init elements - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPTHandler::CreateTextWMElements( - _In_ CONST WatermarkData* pWmData, - _Outptr_ IXMLDOMElement** ppWMDataElem, - _Out_ PTDOMElementVector* pParamInitList - ) -{ - HRESULT hr = S_OK; - - CComPtr<IXMLDOMElement> pOptionElem(NULL); - - if (SUCCEEDED(hr = CHECK_POINTER(pWmData, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(ppWMDataElem, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pParamInitList, E_POINTER)) && - SUCCEEDED(hr = CreateCommonWMElements(pWmData, ppWMDataElem, &pOptionElem, pParamInitList))) - { - // - // Set the option node name attribute - // - CComBSTR bstrAttribName(m_bstrKeywordsPrefix); - bstrAttribName += WATERMARK_OPTIONS[TextWatermark]; - - hr = CreateXMLAttribute(pOptionElem, NAME_ATTRIBUTE_NAME, NULL, bstrAttribName ); - } - - // - // Write out the text specific options - // - if (SUCCEEDED(hr)) - { - for (ETextWatermarkProps txtProps = ETextWatermarkPropsMin; - txtProps < ETextWatermarkPropsMax && SUCCEEDED(hr); - txtProps = static_cast<ETextWatermarkProps>(txtProps + 1)) - { - // - // Create the scored property element - // - CComPtr<IXMLDOMElement> pScoredProperty(NULL); - - if (SUCCEEDED(hr = CreateScoredProperty(CComBSTR(TXT_WATERMARK_PROPS[txtProps]), &pScoredProperty))) - { - // - // Construct the param ref and param init elements - // - CComBSTR bstrPRefName(WATERMARK_FEATURE); - bstrPRefName += TXT_WATERMARK_PROPS[txtProps]; - - CComPtr<IXMLDOMElement> pParamRef(NULL); - CComPtr<IXMLDOMElement> pParamInit(NULL); - - CComBSTR bstrType; - CComBSTR bstrValue; - - if (SUCCEEDED(hr = GetTxtPropTypeAndValue(pWmData, txtProps, &bstrType, &bstrValue)) && - SUCCEEDED(hr = CreateParamRefInitPair(bstrPRefName, bstrType, bstrValue, &pParamRef, &pParamInit))) - { - // - // Append the parameter ref element to the scored property, append the - // scored property to the option element and add the parameter init - // element to the param init list - // - CComPtr<IXMLDOMNode> pPRInserted(NULL); - CComPtr<IXMLDOMNode> pSPInserted(NULL); - - if (SUCCEEDED(hr = pScoredProperty->appendChild(pParamRef, &pPRInserted)) && - SUCCEEDED(hr = pOptionElem->appendChild(pScoredProperty, &pSPInserted))) - { - try - { - pParamInitList->push_back(pParamInit); - } - catch (exception& DBG_ONLY(e)) - { - ERR(e.what()); - hr = E_FAIL; - } - } - } - } - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CWMPTHandler::CreateBitmapWMElements - -Routine Description: - - This routine creates a bitmap watermark feature in the PrintTicket - -Arguments: - - pWmData - Pointer to the watermark data structure - ppWMDataElem - Pointer to an IXMLDOMElement pointer that recieves feature element - pParamInitList - P:ointer to a vector of DOM element pointers that recieves the parameter init elements - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPTHandler::CreateBitmapWMElements( - _In_ CONST WatermarkData* pWmData, - _Outptr_ IXMLDOMElement** ppWMDataElem, - _Out_ PTDOMElementVector* pParamInitList - ) -{ - HRESULT hr = S_OK; - - CComPtr<IXMLDOMElement> pOptionElem(NULL); - - if (SUCCEEDED(hr = CHECK_POINTER(pWmData, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(ppWMDataElem, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pParamInitList, E_POINTER)) && - SUCCEEDED(hr = CreateCommonWMElements(pWmData, ppWMDataElem, &pOptionElem, pParamInitList)) && - SUCCEEDED(hr = CreateCommonVectBmpWMElements(pWmData, pOptionElem, pParamInitList))) - { - // - // Set the option node name attribute - // - CComBSTR bstrAttribName(m_bstrKeywordsPrefix); - bstrAttribName += WATERMARK_OPTIONS[BitmapWatermark]; - - hr = CreateXMLAttribute(pOptionElem, NAME_ATTRIBUTE_NAME, NULL, bstrAttribName ); - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CWMPTHandler::CreateVectorWMElements - -Routine Description: - - This routine creates a vector watermark feature in the PrintTicket - -Arguments: - - pWmData - Pointer to the watermark data structure - ppWMDataElem - Pointer to an IXMLDOMElement pointer that recieves feature element - pParamInitList - P:ointer to a vector of DOM element pointers that recieves the parameter init elements - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPTHandler::CreateVectorWMElements( - _In_ CONST WatermarkData* pWmData, - _Outptr_ IXMLDOMElement** ppWMDataElem, - _Out_ PTDOMElementVector* pParamInitList - ) -{ - HRESULT hr = S_OK; - - CComPtr<IXMLDOMElement> pOptionElem(NULL); - - if (SUCCEEDED(hr = CHECK_POINTER(pWmData, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(ppWMDataElem, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pParamInitList, E_POINTER)) && - SUCCEEDED(hr = CreateCommonWMElements(pWmData, ppWMDataElem, &pOptionElem, pParamInitList)) && - SUCCEEDED(hr = CreateCommonVectBmpWMElements(pWmData, pOptionElem, pParamInitList))) - { - // - // Set the option node name attribute - // - CComBSTR bstrAttribName(m_bstrKeywordsPrefix); - bstrAttribName += WATERMARK_OPTIONS[VectorWatermark]; - - hr = CreateXMLAttribute(pOptionElem, NAME_ATTRIBUTE_NAME, NULL, bstrAttribName ); - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CWMPTHandler::GetCmnPropTypeAndValue - -Routine Description: - - This routine initalises the type and value strings for a given common watermark property - -Arguments: - - pWmData - Pointer to a watermark data structure with the watermark settings - cmnProps - The watermark setting to retrieve the type and value for - pbstrType - Pointer to a BSTR that recieves the type of the value - pbstrValue - Pointer to a BSTR that recieves the value as a string - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPTHandler::GetCmnPropTypeAndValue( - _In_ CONST WatermarkData* pWmData, - _In_ CONST ECommonWatermarkProps cmnProps, - _Outptr_ BSTR* pbstrType, - _Outptr_ BSTR* pbstrValue - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pWmData, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pbstrType, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pbstrValue, E_POINTER))) - { - if (cmnProps < ECommonWatermarkPropsMin || - cmnProps >= ECommonWatermarkPropsMax) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - try - { - CStringXDW cstrType; - CStringXDW cstrValue; - - switch (cmnProps) - { - case WidthOrigin: - { - cstrType = SCHEMA_INTEGER; - cstrValue.Format(L"%i", pWmData->widthOrigin); - } - break; - - case HeightOrigin: - { - cstrType = SCHEMA_INTEGER; - cstrValue.Format(L"%i", pWmData->heightOrigin); - } - break; - - case Transparency: - { - cstrType = SCHEMA_INTEGER; - cstrValue.Format(L"%i", pWmData->transparency); - } - break; - - case Angle: - { - cstrType = SCHEMA_INTEGER; - cstrValue.Format(L"%i", pWmData->angle); - } - break; - - default: - { - hr = E_FAIL; - ERR("Unknown common watermark property\n"); - } - break; - } - - if (SUCCEEDED(hr)) - { - *pbstrType = cstrType.AllocSysString(); - *pbstrValue = cstrValue.AllocSysString(); - } - } - catch (CXDException& e) - { - hr = e; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CWMPTHandler::GetCmnVectBmpPropTypeAndValue - -Routine Description: - - This routine initalises the type and value strings for a common vector and bitmap - watermark properties - -Arguments: - - pWmData - Pointer to a watermark data structure with the watermark settings - cmnProps - The setting to retrieve the type and value for - pbstrType - Pointer to a BSTR that recieves the type of the value - pbstrValue - Pointer to a BSTR that recieves the value as a string - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPTHandler::GetCmnVectBmpPropTypeAndValue( - _In_ CONST WatermarkData* pWmData, - _In_ CONST EVectBmpWatermarkProps cmnProps, - _Outptr_ BSTR* pbstrType, - _Outptr_ BSTR* pbstrValue - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pWmData, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pbstrType, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pbstrValue, E_POINTER))) - { - if (cmnProps < EVectBmpWatermarkPropsMin || - cmnProps >= EVectBmpWatermarkPropsMax) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - try - { - CStringXDW cstrType; - CStringXDW cstrValue; - - switch (cmnProps) - { - case WidthExtent: - { - cstrType = SCHEMA_INTEGER; - cstrValue.Format(L"%i", pWmData->widthExtent); - } - break; - - case HeightExtent: - { - cstrType = SCHEMA_INTEGER; - cstrValue.Format(L"%i", pWmData->heightExtent); - } - break; - - default: - { - hr = E_FAIL; - ERR("Unknown common watermark property\n"); - } - break; - } - - if (SUCCEEDED(hr)) - { - *pbstrType = cstrType.AllocSysString(); - *pbstrValue = cstrValue.AllocSysString(); - } - } - catch (CXDException& e) - { - hr = e; - } - } - - ERR_ON_HR(hr); - return hr; -} - -/*++ - -Routine Name: - - CWMPTHandler::GetTxtPropTypeAndValue - -Routine Description: - - This routine initalises the type and value strings for a given text watermark property - -Arguments: - - pWmData - Pointer to a watermark data structure with the watermark settings - txtProps - The text watermark setting to retrieve the type and value for - pbstrType - Pointer to a BSTR that recieves the type of the value - pbstrValue - Pointer to a BSTR that recieves the value as a string - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWMPTHandler::GetTxtPropTypeAndValue( - _In_ CONST WatermarkData* pWmData, - _In_ CONST ETextWatermarkProps txtProps, - _Outptr_ BSTR* pbstrType, - _Outptr_ BSTR* pbstrValue - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(pWmData, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pbstrType, E_POINTER)) && - SUCCEEDED(hr = CHECK_POINTER(pbstrValue, E_POINTER))) - { - if (txtProps < ETextWatermarkPropsMin || - txtProps >= ETextWatermarkPropsMax) - { - hr = E_INVALIDARG; - } - } - - if (SUCCEEDED(hr)) - { - try - { - CStringXDW cstrType; - CStringXDW cstrValue; - - switch (txtProps) - { - case FontColor: - { - cstrType = SCHEMA_STRING; - cstrValue.Format(L"%s", static_cast<LPCWSTR>(pWmData->txtData.bstrFontColor)); - } - break; - - case FontSize: - { - cstrType = SCHEMA_INTEGER; - cstrValue.Format(L"%i", pWmData->txtData.fontSize); - } - break; - - case Text: - { - cstrType = SCHEMA_STRING; - cstrValue.Format(L"%s", static_cast<LPCWSTR>(pWmData->txtData.bstrText)); - } - break; - - default: - { - hr = E_FAIL; - ERR("Unknown text watermark property\n"); - } - break; - } - - if (SUCCEEDED(hr)) - { - *pbstrType = cstrType.AllocSysString(); - *pbstrValue = cstrValue.AllocSysString(); - } - } - catch (CXDException& e) - { - hr = e; - } - } - - ERR_ON_HR(hr); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/wmpthndlr.h b/print/XPSDrvSmpl/src/common/wmpthndlr.h deleted file mode 100644 index 0cfd24e8..00000000 --- a/print/XPSDrvSmpl/src/common/wmpthndlr.h +++ /dev/null @@ -1,116 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - wmpthnlr.h - -Abstract: - - PageWatermark PrintTicket handling definition. The watermark PT handler - is used to extract watermark settings from a PrintTicket and populate - the watermark properties class with the retrieved settings. The class also - defines a method for setting the feature in the PrintTicket given the - data structure. - ---*/ - -#pragma once - -#include "pthndlr.h" -#include "wmdata.h" - -class CWMPTHandler : public CPTHandler -{ -public: - CWMPTHandler( - _In_ IXMLDOMDocument2* pPrintTicket - ); - - virtual ~CWMPTHandler(); - - HRESULT - GetData( - _Out_ XDPrintSchema::PageWatermark::WatermarkData* pWmData - ); - - HRESULT - SetData( - _In_ CONST XDPrintSchema::PageWatermark::WatermarkData* pWmData - ); - - HRESULT - Delete( - VOID - ); - -private: - HRESULT - CreateCommonWMElements( - _In_ CONST XDPrintSchema::PageWatermark::WatermarkData* pWmData, - _Outptr_ IXMLDOMElement** ppWMDataElem, - _Outptr_ IXMLDOMElement** ppOptionElem, - _Out_ PTDOMElementVector* pParamInitList - ); - - HRESULT - CreateCommonVectBmpWMElements( - _In_ CONST XDPrintSchema::PageWatermark::WatermarkData* pWmData, - _In_ IXMLDOMElement* pOptionElem, - _Out_ PTDOMElementVector* pParamInitList - ); - - HRESULT - CreateTextWMElements( - _In_ CONST XDPrintSchema::PageWatermark::WatermarkData* pWmData, - _Outptr_ IXMLDOMElement** ppWMDataElem, - _Out_ PTDOMElementVector* pParamInitList - ); - - HRESULT - CreateBitmapWMElements( - _In_ CONST XDPrintSchema::PageWatermark::WatermarkData* pWmData, - _Outptr_ IXMLDOMElement** ppWMDataElem, - _Out_ PTDOMElementVector* pParamInitList - ); - - HRESULT - CreateVectorWMElements( - _In_ CONST XDPrintSchema::PageWatermark::WatermarkData* pWmData, - _Outptr_ IXMLDOMElement** ppWMDataElem, - _Out_ PTDOMElementVector* pParamInitList - ); - - HRESULT - GetCmnPropTypeAndValue( - _In_ CONST XDPrintSchema::PageWatermark::WatermarkData* pWmData, - _In_ CONST XDPrintSchema::PageWatermark::ECommonWatermarkProps cmnProps, - _Outptr_ BSTR* pbstrType, - _Outptr_ BSTR* pbstrValue - ); - - HRESULT - GetCmnVectBmpPropTypeAndValue( - _In_ CONST XDPrintSchema::PageWatermark::WatermarkData* pWmData, - _In_ CONST XDPrintSchema::PageWatermark::EVectBmpWatermarkProps cmnProps, - _Outptr_ BSTR* pbstrType, - _Outptr_ BSTR* pbstrValue - ); - - HRESULT - GetTxtPropTypeAndValue( - _In_ CONST XDPrintSchema::PageWatermark::WatermarkData* pWmData, - _In_ CONST XDPrintSchema::PageWatermark::ETextWatermarkProps txtProps, - _Outptr_ BSTR* pbstrType, - _Outptr_ BSTR* pbstrValue - ); -}; - diff --git a/print/XPSDrvSmpl/src/common/wmschema.cpp b/print/XPSDrvSmpl/src/common/wmschema.cpp deleted file mode 100644 index 286e33db..00000000 --- a/print/XPSDrvSmpl/src/common/wmschema.cpp +++ /dev/null @@ -1,60 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - wmschema.cpp - -Abstract: - - PageWatermark PrintSchema implementation. This implements the features, - options and enumerations that describe the PrintSchema PageWatermark feature. - ---*/ - -#include "precomp.h" -#include "wmschema.h" - -LPCWSTR XDPrintSchema::PageWatermark::WATERMARK_FEATURE = L"PageWatermark"; - -LPCWSTR XDPrintSchema::PageWatermark::WATERMARK_OPTIONS[] = { - L"None", - L"Text", - L"BitmapGraphic", - L"VectorGraphic" -}; - -LPCWSTR XDPrintSchema::PageWatermark::CMN_WATERMARK_PROPS[] = { - L"OriginWidth", - L"OriginHeight", - L"Transparency", - L"Angle" -}; - -LPCWSTR XDPrintSchema::PageWatermark::TXT_WATERMARK_PROPS[] = { - L"TextColor", - L"TextFontSize", - L"TextText" -}; - -LPCWSTR XDPrintSchema::PageWatermark::VECTBMP_WATERMARK_PROPS[] = { - L"SizeWidth", - L"SizeHeight" -}; - -LPCWSTR XDPrintSchema::PageWatermark::Layering::LAYERING_FEATURE = L"Layering"; - -LPCWSTR XDPrintSchema::PageWatermark::Layering::LAYERING_OPTIONS[] = { - L"Underlay", - L"Overlay" -}; - - diff --git a/print/XPSDrvSmpl/src/common/wmschema.h b/print/XPSDrvSmpl/src/common/wmschema.h deleted file mode 100644 index 734a99df..00000000 --- a/print/XPSDrvSmpl/src/common/wmschema.h +++ /dev/null @@ -1,114 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - wmschema.h - -Abstract: - - PageWatermark PrintSchema definition. This defines the features, options - and enumerations that describe the PrintSchema PageWatermark feature within - a XDPrintSchema::PageWatermark namespace. - ---*/ - -#pragma once - -#include "schema.h" - -namespace XDPrintSchema -{ - // - // PageWatermark elements described as Printschema keywords - // - namespace PageWatermark - { - // - // Feature name - // - extern LPCWSTR WATERMARK_FEATURE; - - // - // Option names - // - enum EWatermarkOption - { - NoWatermark = 0, EWatermarkOptionMin = 0, - TextWatermark, - BitmapWatermark, - VectorWatermark, - EWatermarkOptionMax - }; - - extern LPCWSTR WATERMARK_OPTIONS[EWatermarkOptionMax]; - - // - // Common watermark properties - // - enum ECommonWatermarkProps - { - WidthOrigin = 0, ECommonWatermarkPropsMin = 0, - HeightOrigin, - Transparency, - Angle, - ECommonWatermarkPropsMax - }; - - extern LPCWSTR CMN_WATERMARK_PROPS[ECommonWatermarkPropsMax]; - - // - // Text watermark properties - // - enum ETextWatermarkProps - { - FontColor = 0, ETextWatermarkPropsMin = 0, - FontSize, - Text, - ETextWatermarkPropsMax - }; - - extern LPCWSTR TXT_WATERMARK_PROPS[ETextWatermarkPropsMax]; - - // - // Vector / Bitmap common properties - // - enum EVectBmpWatermarkProps - { - WidthExtent = 0, EVectBmpWatermarkPropsMin = 0, - HeightExtent, - EVectBmpWatermarkPropsMax - }; - - extern LPCWSTR VECTBMP_WATERMARK_PROPS[EVectBmpWatermarkPropsMax]; - - // - // Layering sub feature - // - namespace Layering - { - extern LPCWSTR LAYERING_FEATURE; - - // - // Layering options - // - enum ELayeringOption - { - Underlay = 0, ELayeringOptionMin = 0, - Overlay, - ELayeringOptionMax - }; - - extern LPCWSTR LAYERING_OPTIONS[ELayeringOptionMax]; - } - } -} - diff --git a/print/XPSDrvSmpl/src/common/workbuff.cpp b/print/XPSDrvSmpl/src/common/workbuff.cpp deleted file mode 100644 index efa5fcc8..00000000 --- a/print/XPSDrvSmpl/src/common/workbuff.cpp +++ /dev/null @@ -1,233 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - workbuff.cpp - -Abstract: - - CWorkingBuffer class implementation. This class provides a means of working - with a local buffer by defining a simple interface that allows the retrieval - of a buffer of an appropriate size, handling reallocation as necessary. - ---*/ - -#include "precomp.h" -#include "debug.h" -#include "globals.h" -#include "xdstring.h" -#include "workbuff.h" - -/*++ - -Routine Name: - - CWorkingBuffer::CWorkingBuffer - -Routine Description: - - CWorkingBuffer class constructor - -Arguments: - - None - -Return Value: - - None - Throws CXDException(HRESULT) on an error - ---*/ -CWorkingBuffer::CWorkingBuffer() : - m_pBuffer(NULL), - m_cbSize(CB_COPY_BUFFER) -{ - m_pBuffer = HeapAlloc(GetProcessHeap(), 0, m_cbSize); - - if (m_pBuffer == NULL) - { - m_cbSize = 0; - throw CXDException(E_OUTOFMEMORY); - } -} - -/*++ - -Routine Name: - - CWorkingBuffer::~CWorkingBuffer - -Routine Description: - - CWorkingBuffer class destructor - -Arguments: - - None - -Return Value: - - None - ---*/ -CWorkingBuffer::~CWorkingBuffer() -{ - if (m_pBuffer != NULL) - { - HeapFree(GetProcessHeap(), 0, m_pBuffer); - m_pBuffer = NULL; - m_cbSize = 0; - } -} - -/*++ - -Routine Name: - - CWorkingBuffer::GetBuffer - -Routine Description: - - This routine returns a pointer to a buffer of at least the requested size. If the internal - buffer is not large enough it will be resized accordingly. - -Arguments: - - cbSize - Requested size of the buffer - ppBuffer - Pointer to a VOID pointer that recieves the buffer - -Return Value: - - HRESULT - S_OK - On success - E_* - On error - ---*/ -HRESULT -CWorkingBuffer::GetBuffer( - _In_ CONST ULONGLONG cbSize, - _Outptr_result_bytebuffer_(cbSize) PVOID* ppBuffer - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppBuffer, E_POINTER))) - { - *ppBuffer = NULL; - - if (cbSize == 0) - { - hr = E_INVALIDARG; - } - - if (m_cbSize == 0) - { - // - // We have no existing buffer - we should have one - // - hr = E_FAIL; - } - } - - if (SUCCEEDED(hr)) - { - if (m_cbSize >= cbSize) - { - *ppBuffer = m_pBuffer; - } - else - { - // - // Double the buffer size till it is greater than the requested size - // - SIZE_T cbNewSize = m_cbSize; - while (cbNewSize < cbSize) - { - cbNewSize *= 2; - }; - - _Analysis_assume_(cbNewSize >= 1); - - // - // Reallocate the buffer - // - PVOID pNewBuffer = HeapReAlloc(GetProcessHeap(), 0, m_pBuffer, cbNewSize); - - if (pNewBuffer != NULL) - { - m_cbSize = cbNewSize; - m_pBuffer = pNewBuffer; - *ppBuffer = m_pBuffer; - } - else - { - hr = E_OUTOFMEMORY; - } - } - } - - ERR_ON_HR(hr); - return hr; -}; - -/*++ - -Routine Name: - - CWorkingBuffer::GetBufferAt - -Routine Description: - - This routine returns a pointer into the internal buffer at the requested offset. This will - not grow the size of the buffer. - -Arguments: - - cbOffset - Offset into the internal buffer - cbSize - Size of the requested buffer - ppBuffer - Pointer to a VOID pointer that recieves the buffer - -Return Value: - - HRESULT - S_OK - On success - HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) - If the internal buffer is not large enough - E_* - On error - ---*/ -HRESULT -CWorkingBuffer::GetBufferAt( - _In_ ULONG cbOffset, - _In_ CONST ULONGLONG cbSize, - _Outptr_result_bytebuffer_(cbSize) PVOID* ppBuffer - ) -{ - HRESULT hr = S_OK; - - if (SUCCEEDED(hr = CHECK_POINTER(ppBuffer, E_POINTER))) - { - *ppBuffer = NULL; - - if (cbSize + cbOffset < m_cbSize) - { - *ppBuffer = reinterpret_cast<PBYTE>(m_pBuffer) + cbOffset; - } - else - { - hr = HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER); - } - } - - ERR_ON_HR(hr); - return hr; -} - diff --git a/print/XPSDrvSmpl/src/common/workbuff.h b/print/XPSDrvSmpl/src/common/workbuff.h deleted file mode 100644 index 263e97d3..00000000 --- a/print/XPSDrvSmpl/src/common/workbuff.h +++ /dev/null @@ -1,51 +0,0 @@ -/*++ - -Copyright (c) 2005 Microsoft Corporation - -All rights reserved. - -THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF -ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A -PARTICULAR PURPOSE. - -File Name: - - workbuff.h - -Abstract: - - CWorkingBuffer class definition. This class provides a means of working - with a local buffer by defining a simple interface that allows the retrieval - of a buffer of an appropriate size, handling reallocation as necessary. - ---*/ - -#pragma once - -class CWorkingBuffer -{ -public: - CWorkingBuffer(); - - virtual ~CWorkingBuffer(); - - HRESULT - GetBuffer( - _In_ CONST ULONGLONG cbSize, - _Outptr_result_bytebuffer_(cbSize) PVOID* ppBuffer - ); - - HRESULT - GetBufferAt( - _In_ ULONG cbOffset, - _In_ CONST ULONGLONG cbSize, - _Outptr_result_bytebuffer_(cbSize) PVOID* ppBuffer - ); - -private: - _Field_size_bytes_(m_cbSize) PVOID m_pBuffer; - - SIZE_T m_cbSize; -}; - diff --git a/print/XPSDrvSmpl/src/common/xdsmplcmn.vcxproj b/print/XPSDrvSmpl/src/common/xdsmplcmn.vcxproj deleted file mode 100644 index 7cd9846d..00000000 --- a/print/XPSDrvSmpl/src/common/xdsmplcmn.vcxproj +++ /dev/null @@ -1,593 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup Label="ProjectConfigurations"> - <ProjectConfiguration Include="Debug|ARM"> - <Configuration>Debug</Configuration> - <Platform>ARM</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Debug|ARM64"> - <Configuration>Debug</Configuration> - <Platform>ARM64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Debug|Win32"> - <Configuration>Debug</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|ARM"> - <Configuration>Release</Configuration> - <Platform>ARM</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|ARM64"> - <Configuration>Release</Configuration> - <Platform>ARM64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|Win32"> - <Configuration>Release</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Debug|x64"> - <Configuration>Debug</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|x64"> - <Configuration>Release</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - </ItemGroup> - <PropertyGroup Label="Globals"> - <ProjectGuid>{42677515-C196-4C0F-99A2-F11E2FB55BF6}</ProjectGuid> - <RootNamespace>$(MSBuildProjectName)</RootNamespace> - <SupportsPackaging>false</SupportsPackaging> - <RequiresPackageProject>true</RequiresPackageProject> - <Configuration Condition="'$(Configuration)' == ''">Debug</Configuration> - <Platform Condition="'$(Platform)' == ''">Win32</Platform> - <SampleGuid>{D1077168-B333-455C-93E8-E83066110321}</SampleGuid> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <TargetVersion>Windows10</TargetVersion> - <UseDebugLibraries>False</UseDebugLibraries> - <DriverTargetPlatform>Desktop</DriverTargetPlatform> - <DriverType /> - <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> - <ConfigurationType>StaticLibrary</ConfigurationType> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration"> - <TargetVersion>Windows10</TargetVersion> - <UseDebugLibraries>False</UseDebugLibraries> - <DriverTargetPlatform>Desktop</DriverTargetPlatform> - <DriverType /> - <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> - <ConfigurationType>StaticLibrary</ConfigurationType> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration"> - <TargetVersion>Windows10</TargetVersion> - <UseDebugLibraries>False</UseDebugLibraries> - <DriverTargetPlatform>Desktop</DriverTargetPlatform> - <DriverType /> - <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> - <ConfigurationType>StaticLibrary</ConfigurationType> - </PropertyGroup> - <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <TargetVersion>Windows10</TargetVersion> - <UseDebugLibraries>True</UseDebugLibraries> - <DriverTargetPlatform>Desktop</DriverTargetPlatform> - <DriverType /> - <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> - <ConfigurationType>StaticLibrary</ConfigurationType> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration"> - <TargetVersion>Windows10</TargetVersion> - <UseDebugLibraries>True</UseDebugLibraries> - <DriverTargetPlatform>Desktop</DriverTargetPlatform> - <DriverType /> - <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> - <ConfigurationType>StaticLibrary</ConfigurationType> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration"> - <TargetVersion>Windows10</TargetVersion> - <UseDebugLibraries>True</UseDebugLibraries> - <DriverTargetPlatform>Desktop</DriverTargetPlatform> - <DriverType /> - <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> - <ConfigurationType>StaticLibrary</ConfigurationType> - </PropertyGroup> - <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> - <TargetVersion>Windows10</TargetVersion> - <UseDebugLibraries>False</UseDebugLibraries> - <DriverTargetPlatform>Desktop</DriverTargetPlatform> - <DriverType /> - <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> - <ConfigurationType>StaticLibrary</ConfigurationType> - </PropertyGroup> - <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> - <TargetVersion>Windows10</TargetVersion> - <UseDebugLibraries>True</UseDebugLibraries> - <DriverTargetPlatform>Desktop</DriverTargetPlatform> - <DriverType /> - <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> - <ConfigurationType>StaticLibrary</ConfigurationType> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <PropertyGroup> - <OutDir>$(IntDir)</OutDir> - </PropertyGroup> - <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" /> - </ImportGroup> - <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" /> - </ImportGroup> - <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" /> - </ImportGroup> - <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" /> - </ImportGroup> - <ItemGroup Label="WrappedTaskItems" /> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <ResourceCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </ResourceCompile> - <ClCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - <TreatWarningAsError>true</TreatWarningAsError> - <WarningLevel>Level4</WarningLevel> - <ExceptionHandling>Sync</ExceptionHandling> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary> - </ClCompile> - <Midl> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </Midl> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'"> - <ResourceCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </ResourceCompile> - <ClCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - <TreatWarningAsError>true</TreatWarningAsError> - <WarningLevel>Level4</WarningLevel> - <ExceptionHandling>Sync</ExceptionHandling> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary> - </ClCompile> - <Midl> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </Midl> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'"> - <ResourceCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </ResourceCompile> - <ClCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - <TreatWarningAsError>true</TreatWarningAsError> - <WarningLevel>Level4</WarningLevel> - <ExceptionHandling>Sync</ExceptionHandling> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary> - </ClCompile> - <Midl> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </Midl> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <ResourceCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </ResourceCompile> - <ClCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - <TreatWarningAsError>true</TreatWarningAsError> - <WarningLevel>Level4</WarningLevel> - <ExceptionHandling>Sync</ExceptionHandling> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary> - </ClCompile> - <Midl> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </Midl> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'"> - <ResourceCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </ResourceCompile> - <ClCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - <TreatWarningAsError>true</TreatWarningAsError> - <WarningLevel>Level4</WarningLevel> - <ExceptionHandling>Sync</ExceptionHandling> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary> - </ClCompile> - <Midl> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </Midl> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'"> - <ResourceCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </ResourceCompile> - <ClCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - <TreatWarningAsError>true</TreatWarningAsError> - <WarningLevel>Level4</WarningLevel> - <ExceptionHandling>Sync</ExceptionHandling> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary> - </ClCompile> - <Midl> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </Midl> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> - <ResourceCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </ResourceCompile> - <ClCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - <TreatWarningAsError>true</TreatWarningAsError> - <WarningLevel>Level4</WarningLevel> - <ExceptionHandling>Sync</ExceptionHandling> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary> - </ClCompile> - <Midl> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </Midl> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> - <ResourceCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </ResourceCompile> - <ClCompile> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - <TreatWarningAsError>true</TreatWarningAsError> - <WarningLevel>Level4</WarningLevel> - <ExceptionHandling>Sync</ExceptionHandling> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary> - <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary> - </ClCompile> - <Midl> - <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);.\;.\..\inc;.\..\debug;$(DDK_INC_PATH);$(SDK_INC_PATH)\gdiplus</AdditionalIncludeDirectories> - </Midl> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ClCompile> - <Midl> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </Midl> - <ResourceCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ResourceCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ClCompile> - <Midl> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </Midl> - <ResourceCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ResourceCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ClCompile> - <Midl> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </Midl> - <ResourceCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ResourceCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ClCompile> - <Midl> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </Midl> - <ResourceCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ResourceCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ClCompile> - <Midl> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </Midl> - <ResourceCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ResourceCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ClCompile> - <Midl> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </Midl> - <ResourceCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ResourceCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ClCompile> - <Midl> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </Midl> - <ResourceCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ResourceCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> - <ClCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ClCompile> - <Midl> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </Midl> - <ResourceCompile> - <PreprocessorDefinitions>%(PreprocessorDefinitions);_UNICODE;UNICODE</PreprocessorDefinitions> - </ResourceCompile> - </ItemDefinitionGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> - <TargetName>xdsmplcmn</TargetName> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'"> - <TargetName>xdsmplcmn</TargetName> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'"> - <TargetName>xdsmplcmn</TargetName> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> - <TargetName>xdsmplcmn</TargetName> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'"> - <TargetName>xdsmplcmn</TargetName> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'"> - <TargetName>xdsmplcmn</TargetName> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> - <TargetName>xdsmplcmn</TargetName> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> - <TargetName>xdsmplcmn</TargetName> - </PropertyGroup> - <ItemGroup> - <ClCompile Include="bkpchndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="bkpthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="bkschema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="cmintentsschema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="cmintpthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="cmprofileschema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="cmprofpchndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="cmprofpthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="cmpthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="cmschema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="globals.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="nupchndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="nupschema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="nupthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="pchndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="pgscpchndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="pgscpthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="pgscschema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="pimagepthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="pimageschema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="porientpthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="porientschema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="precompsrc.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Create</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="pshndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="psizepthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="psizeschema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="pthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="ptquerybld.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="schema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="wmpchndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="wmpthndlr.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="wmschema.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - <ClCompile Include="workbuff.cpp"> - <AdditionalIncludeDirectories>;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreCompiledHeaderFile>precomp.h</PreCompiledHeaderFile> - <PreCompiledHeader>Use</PreCompiledHeader> - <PreCompiledHeaderOutputFile>$(IntDir)\precomp.h.pch</PreCompiledHeaderOutputFile> - </ClCompile> - </ItemGroup> - <ItemGroup> - <Inf Exclude="@(Inf)" Include="*.inf" /> - <FilesToPackage Include="$(TargetPath)" Condition="'$(ConfigurationType)'=='Driver' or '$(ConfigurationType)'=='DynamicLibrary'" /> - </ItemGroup> - <ItemGroup> - <None Exclude="@(None)" Include="*.txt;*.htm;*.html" /> - <None Exclude="@(None)" Include="*.ico;*.cur;*.bmp;*.dlg;*.rct;*.gif;*.jpg;*.jpeg;*.wav;*.jpe;*.tiff;*.tif;*.png;*.rc2" /> - <None Exclude="@(None)" Include="*.def;*.bat;*.hpj;*.asmx" /> - </ItemGroup> - <ItemGroup> - <ClInclude Exclude="@(ClInclude)" Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd" /> - </ItemGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> -</Project>
\ No newline at end of file diff --git a/print/XPSDrvSmpl/src/common/xdsmplcmn.vcxproj.Filters b/print/XPSDrvSmpl/src/common/xdsmplcmn.vcxproj.Filters deleted file mode 100644 index b9b2d859..00000000 --- a/print/XPSDrvSmpl/src/common/xdsmplcmn.vcxproj.Filters +++ /dev/null @@ -1,2230 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <ItemGroup> - <Filter Include="Source Files"> - <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx;*</Extensions> - <UniqueIdentifier>{75E1F153-C8D9-48CA-BE6B-826ECD1DB3AD}</UniqueIdentifier> - </Filter> - <Filter Include="Header Files"> - <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> - <UniqueIdentifier>{C230151A-AC0B-49BB-801B-E64449458C5F}</UniqueIdentifier> - </Filter> - <Filter Include="Resource Files"> - <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms;man;xml</Extensions> - <UniqueIdentifier>{DAF0D217-1F43-40AB-871C-801F743FDFC9}</UniqueIdentifier> - </Filter> - </ItemGroup> - <ItemGroup> - <ClCompile Include="bkpchndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="bkpthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="bkschema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="cmintentsschema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="cmintpthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="cmprofileschema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="cmprofpchndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="cmprofpthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="cmpthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="cmschema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="globals.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="nupchndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="nupschema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="nupthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="pchndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="pgscpchndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="pgscpthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="pgscschema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="pimagepthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="pimageschema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="porientpthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="porientschema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="precompsrc.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="pshndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="psizepthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="psizeschema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="pthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="ptquerybld.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="schema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="wmpchndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="wmpthndlr.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="wmschema.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - <ClCompile Include="workbuff.cpp"> - <Filter>Source Files</Filter> - </ClCompile> - </ItemGroup> - <ItemGroup> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="bkdata.h"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="bkpchndlr.h" /> - <ClInclude Include="bkpthndlr.h" /> - <ClInclude Include="bkschema.h" /> - <ClInclude Include="cmdata.h" /> - <ClInclude Include="cmintentsdata.h" /> - <ClInclude Include="cmintentsschema.h" /> - <ClInclude Include="cmintpthndlr.h" /> - <ClInclude Include="cmprofiledata.h" /> - <ClInclude Include="cmprofileschema.h" /> - <ClInclude Include="cmprofpchndlr.h" /> - <ClInclude Include="cmprofpthndlr.h" /> - <ClInclude Include="cmpthndlr.h" /> - <ClInclude Include="cmschema.h" /> - <ClInclude Include="globals.h" /> - <ClInclude Include="nupchndlr.h" /> - <ClInclude Include="nupdata.h" /> - <ClInclude Include="nupschema.h" /> - <ClInclude Include="nupthndlr.h" /> - <ClInclude Include="pchndlr.h" /> - <ClInclude Include="pgscdata.h" /> - <ClInclude Include="pgscpchndlr.h" /> - <ClInclude Include="pgscpthndlr.h" /> - <ClInclude Include="pgscschema.h" /> - <ClInclude Include="pimagedata.h" /> - <ClInclude Include="pimagepthndlr.h" /> - <ClInclude Include="pimageschema.h" /> - <ClInclude Include="porientdata.h" /> - <ClInclude Include="porientpthndlr.h" /> - <ClInclude Include="porientschema.h" /> - <ClInclude Include="precomp.h" /> - <ClInclude Include="privatedefs.h" /> - <ClInclude Include="pshndlr.h" /> - <ClInclude Include="psizedata.h" /> - <ClInclude Include="psizepthndlr.h" /> - <ClInclude Include="psizeschema.h" /> - <ClInclude Include="pthndlr.h" /> - <ClInclude Include="ptquerybld.h" /> - <ClInclude Include="schema.h" /> - <ClInclude Include="wmdata.h" /> - <ClInclude Include="wmpchndlr.h" /> - <ClInclude Include="wmpthndlr.h" /> - <ClInclude Include="wmschema.h" /> - <ClInclude Include="workbuff.h" /> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - <ClInclude Include="*.h;*.hpp;*.hxx;*.hm;*.inl;*.xsd"> - <Filter>Header Files</Filter> - </ClInclude> - </ItemGroup> -</Project>
\ No newline at end of file |
