summaryrefslogtreecommitdiffstats
path: root/chrome/utility
diff options
context:
space:
mode:
authorvandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-22 06:36:58 +0000
committervandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-22 06:36:58 +0000
commit481edc5493d2a5bd85ee882b3cf1a21f487a2a94 (patch)
treeb35c073123e217e8306d0d96467a7297bc7e6991 /chrome/utility
parent12b251a3514d18fc598766a1277bb3ca36bc9448 (diff)
downloadchromium_src-481edc5493d2a5bd85ee882b3cf1a21f487a2a94.zip
chromium_src-481edc5493d2a5bd85ee882b3cf1a21f487a2a94.tar.gz
chromium_src-481edc5493d2a5bd85ee882b3cf1a21f487a2a94.tar.bz2
Cleanup NativeMetafile (win) interface and EMF class.
- Rename CreateDc to Init() and remove unused argument (all non-test calls were CreateDc(NULL, NULL). [This matches cross platform interface.] - Remove CreateFileBackedDc from the NativeMetafile interface and make InitToFile() in the EMF class. - Remove CreateFromFile from the NativeMetafile interface and make it InitFromFile() in the EMF class. - Move the CloseEmf method into the destructor, making the Emf class a use once class (matches actual use). BUG=NONE TEST=NONE Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78666 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=78669 Review URL: http://codereview.chromium.org/6695013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78969 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/utility')
-rw-r--r--chrome/utility/utility_thread.cc20
1 files changed, 9 insertions, 11 deletions
diff --git a/chrome/utility/utility_thread.cc b/chrome/utility/utility_thread.cc
index cca4b34..bf312f7 100644
--- a/chrome/utility/utility_thread.cc
+++ b/chrome/utility/utility_thread.cc
@@ -32,8 +32,7 @@
#include "app/win/iat_patch_function.h"
#include "base/scoped_ptr.h"
#include "base/win/scoped_handle.h"
-#include "printing/native_metafile_factory.h"
-#include "printing/native_metafile.h"
+#include "printing/emf_win.h"
#endif
namespace {
@@ -259,18 +258,17 @@ bool UtilityThread::RenderPDFToWinMetafile(
if (!get_info_proc(&buffer.front(), buffer.size(), &total_page_count, NULL))
return false;
- scoped_ptr<printing::NativeMetafile> metafile(
- printing::NativeMetafileFactory::Create());
- metafile->CreateFileBackedDc(NULL, NULL, metafile_path);
+ printing::Emf metafile;
+ metafile.InitToFile(metafile_path);
// Since we created the metafile using the screen DPI (but we actually want
// the PDF DLL to print using the passed in render_dpi, we apply the following
// transformation.
- SetGraphicsMode(metafile->context(), GM_ADVANCED);
+ SetGraphicsMode(metafile.context(), GM_ADVANCED);
XFORM xform = {0};
int screen_dpi = GetDeviceCaps(GetDC(NULL), LOGPIXELSX);
xform.eM11 = xform.eM22 =
static_cast<float>(screen_dpi) / static_cast<float>(render_dpi);
- ModifyWorldTransform(metafile->context(), &xform, MWT_LEFTMULTIPLY);
+ ModifyWorldTransform(metafile.context(), &xform, MWT_LEFTMULTIPLY);
bool ret = false;
std::vector<printing::PageRange>::const_iterator iter;
@@ -280,18 +278,18 @@ bool UtilityThread::RenderPDFToWinMetafile(
break;
// The underlying metafile is of type Emf and ignores the arguments passed
// to StartPage.
- metafile->StartPage(gfx::Size(), gfx::Point(), 1);
+ metafile.StartPage(gfx::Size(), gfx::Point(), 1);
if (render_proc(&buffer.front(), buffer.size(), page_number,
- metafile->context(), render_dpi, render_dpi,
+ metafile.context(), render_dpi, render_dpi,
render_area.x(), render_area.y(), render_area.width(),
render_area.height(), true, false, true, true))
if (*highest_rendered_page_number < page_number)
*highest_rendered_page_number = page_number;
ret = true;
- metafile->FinishPage();
+ metafile.FinishPage();
}
}
- metafile->FinishDocument();
+ metafile.FinishDocument();
return ret;
}
#endif // defined(OS_WIN)