Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(260)

Unified Diff: printing/backend/win_helper.h

Issue 6523040: Added support to the Windows cloud print proxy to print XPS documents directl... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Code review changes Created 9 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/service/cloud_print/printer_job_handler.cc ('k') | printing/backend/win_helper.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: printing/backend/win_helper.h
===================================================================
--- printing/backend/win_helper.h (revision 74874)
+++ printing/backend/win_helper.h (working copy)
@@ -9,6 +9,7 @@
#include <objidl.h>
#include <winspool.h>
#include <prntvpt.h>
+#include <xpsprint.h>
#include "base/string16.h"
@@ -70,6 +71,30 @@
bool initialized_;
};
+// Wrapper class to wrap the XPS Print APIs (these are different from the PTxxx
+// which deal with the XML Print Schema). This is needed because these
+// APIs are only available on Windows 7 and higher.
+class XPSPrintModule {
+ public:
+ // All the other methods can ONLY be called after a successful call to Init.
+ // Init can be called many times and by multiple threads.
+ static bool Init();
+ static HRESULT StartXpsPrintJob(
+ const LPCWSTR printer_name,
+ const LPCWSTR job_name,
+ const LPCWSTR output_file_name,
+ HANDLE progress_event,
+ HANDLE completion_event,
+ UINT8 *printable_pages_on,
+ UINT32 printable_pages_on_count,
+ IXpsPrintJob **xps_print_job,
+ IXpsPrintJobStream **document_stream,
+ IXpsPrintJobStream **print_ticket_stream);
+ private:
+ XPSPrintModule() { }
+ static bool InitImpl();
+};
+
} // namespace printing
#endif // PRINTING_BACKEND_WIN_HELPER_H_
« no previous file with comments | « chrome/service/cloud_print/printer_job_handler.cc ('k') | printing/backend/win_helper.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698