summaryrefslogtreecommitdiffstats
path: root/chrome/service/service_utility_process_host.cc
diff options
context:
space:
mode:
authordpapad@chromium.org <dpapad@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-02 19:25:17 +0000
committerdpapad@chromium.org <dpapad@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-02 19:25:17 +0000
commit5ad7617cd93b48a67395f532b8483b8ace445ca2 (patch)
treeef6ec65870ccdea737de7e0fdcf1d89e2d887511 /chrome/service/service_utility_process_host.cc
parentf83773f72845ed180a23dcbbfa9afbc3c295f758 (diff)
downloadchromium_src-5ad7617cd93b48a67395f532b8483b8ace445ca2.zip
chromium_src-5ad7617cd93b48a67395f532b8483b8ace445ca2.tar.gz
chromium_src-5ad7617cd93b48a67395f532b8483b8ace445ca2.tar.bz2
Applying factory pattern (through NativeMetafileFactory class). It is used to retrieve different printing contexts (based on the platform and user preferences).
BUG=NONE TEST=NONE Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=76553 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=76555 Review URL: http://codereview.chromium.org/6544028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76581 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/service/service_utility_process_host.cc')
-rw-r--r--chrome/service/service_utility_process_host.cc14
1 files changed, 9 insertions, 5 deletions
diff --git a/chrome/service/service_utility_process_host.cc b/chrome/service/service_utility_process_host.cc
index b63e27f..a340d8d 100644
--- a/chrome/service/service_utility_process_host.cc
+++ b/chrome/service/service_utility_process_host.cc
@@ -13,13 +13,15 @@
#include "chrome/common/chrome_switches.h"
#include "chrome/common/utility_messages.h"
#include "ipc/ipc_switches.h"
-#include "printing/native_metafile.h"
#include "printing/page_range.h"
#include "ui/base/ui_base_switches.h"
#include "ui/gfx/rect.h"
#if defined(OS_WIN)
+#include "base/scoped_ptr.h"
#include "base/win/scoped_handle.h"
+#include "printing/native_metafile_factory.h"
+#include "printing/native_metafile.h"
#endif
ServiceUtilityProcessHost::ServiceUtilityProcessHost(
@@ -202,13 +204,15 @@ void ServiceUtilityProcessHost::Client::MetafileAvailable(
if (!scratch_metafile_dir.Set(metafile_path.DirName()))
LOG(WARNING) << "Unable to set scratch metafile directory";
#if defined(OS_WIN)
- printing::NativeMetafile metafile;
- if (!metafile.CreateFromFile(metafile_path)) {
+ scoped_ptr<printing::NativeMetafile> metafile(
+ printing::NativeMetafileFactory::CreateMetafile());
+ if (!metafile->CreateFromFile(metafile_path)) {
OnRenderPDFPagesToMetafileFailed();
} else {
- OnRenderPDFPagesToMetafileSucceeded(metafile, highest_rendered_page_number);
+ OnRenderPDFPagesToMetafileSucceeded(*metafile,
+ highest_rendered_page_number);
// Close it so that ScopedTempDir can delete the folder.
- metafile.CloseEmf();
+ metafile->CloseEmf();
}
#endif // defined(OS_WIN)
}