From 8ff1d42631e79e842669dc3051d91ed7db80f1dc Mon Sep 17 00:00:00 2001 From: "sverrir@google.com" Date: Tue, 7 Jul 2009 21:31:39 +0000 Subject: Move printing related stuff to the root printing project from the browser project. This simplifies further refactoring and eases understanding of the printing part of Chrome. Also renamed win_printing_context to printing_context_win (correct naming convention) and added stub implementations for _linux and mac. Now all but one file is compiling on all platforms. TEST=none (no functional change). BUG=none Review URL: http://codereview.chromium.org/149212 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20086 0039d316-1c4b-4281-b951-d872f2087c98 --- printing/printing_context_linux.cc | 117 +++++++++++++++++++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 printing/printing_context_linux.cc (limited to 'printing/printing_context_linux.cc') diff --git a/printing/printing_context_linux.cc b/printing/printing_context_linux.cc new file mode 100644 index 0000000..fcc51f7 --- /dev/null +++ b/printing/printing_context_linux.cc @@ -0,0 +1,117 @@ +// Copyright (c) 2009 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "printing/printing_context.h" + +#include "base/logging.h" + +namespace printing { + +PrintingContext::PrintingContext() + : +#ifndef NDEBUG + page_number_(-1), +#endif + dialog_box_dismissed_(false), + in_print_job_(false), + abort_printing_(false) { +} + +PrintingContext::~PrintingContext() { + ResetSettings(); +} + + +PrintingContext::Result PrintingContext::UseDefaultSettings() { + DCHECK(!in_print_job_); + + NOTIMPLEMENTED(); + + return FAILED; +} + +PrintingContext::Result PrintingContext::InitWithSettings( + const PrintSettings& settings) { + DCHECK(!in_print_job_); + settings_ = settings; + + NOTIMPLEMENTED(); + + return FAILED; +} + +void PrintingContext::ResetSettings() { +#ifndef NDEBUG + page_number_ = -1; +#endif + dialog_box_dismissed_ = false; + abort_printing_ = false; + in_print_job_ = false; +} + +PrintingContext::Result PrintingContext::NewDocument( + const std::wstring& document_name) { + DCHECK(!in_print_job_); + + NOTIMPLEMENTED(); + +#ifndef NDEBUG + page_number_ = 0; +#endif + + return FAILED; +} + +PrintingContext::Result PrintingContext::NewPage() { + if (abort_printing_) + return CANCEL; + DCHECK(in_print_job_); + + NOTIMPLEMENTED(); + +#ifndef NDEBUG + ++page_number_; +#endif + + return FAILED; +} + +PrintingContext::Result PrintingContext::PageDone() { + if (abort_printing_) + return CANCEL; + DCHECK(in_print_job_); + + NOTIMPLEMENTED(); + + return FAILED; +} + +PrintingContext::Result PrintingContext::DocumentDone() { + if (abort_printing_) + return CANCEL; + DCHECK(in_print_job_); + + NOTIMPLEMENTED(); + + ResetSettings(); + return FAILED; +} + +void PrintingContext::Cancel() { + abort_printing_ = true; + in_print_job_ = false; + + NOTIMPLEMENTED(); +} + +void PrintingContext::DismissDialog() { + NOTIMPLEMENTED(); +} + +PrintingContext::Result PrintingContext::OnError() { + ResetSettings(); + return abort_printing_ ? CANCEL : FAILED; +} + +} // namespace printing -- cgit v1.1