summaryrefslogtreecommitdiffstats
path: root/printing
diff options
context:
space:
mode:
authoraayushkumar@chromium.org <aayushkumar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-17 22:25:33 +0000
committeraayushkumar@chromium.org <aayushkumar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-08-17 22:25:33 +0000
commit0a2f3737c59387775e369264d6effbd1ca56630a (patch)
treeef42e69918ac96a19f4b8e87a741db13429f3713 /printing
parentcdea65da32fead5a53aa2152adb381017e693a92 (diff)
downloadchromium_src-0a2f3737c59387775e369264d6effbd1ca56630a.zip
chromium_src-0a2f3737c59387775e369264d6effbd1ca56630a.tar.gz
chromium_src-0a2f3737c59387775e369264d6effbd1ca56630a.tar.bz2
Revert 97219 - Added Header and Footer support in Linux, Windows and Mac for Skia
BUG=67514 TEST= In the preview tab, note added options for printing headers and footers. Toggle with the checkbox and ensure that the correct headers and footers are displayed. Review URL: http://codereview.chromium.org/7348010 TBR=aayushkumar@chromium.org Review URL: http://codereview.chromium.org/7670045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97226 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'printing')
-rw-r--r--printing/print_job_constants.cc31
-rw-r--r--printing/print_job_constants.h22
-rw-r--r--printing/print_settings.h10
-rw-r--r--printing/print_settings_initializer.cc72
-rw-r--r--printing/print_settings_initializer.h34
-rw-r--r--printing/printing.gyp2
-rw-r--r--printing/printing_context.cc10
-rw-r--r--printing/printing_context.h14
-rw-r--r--printing/printing_context_cairo.cc2
-rw-r--r--printing/printing_context_cairo.h5
-rw-r--r--printing/printing_context_mac.h5
-rw-r--r--printing/printing_context_mac.mm2
-rw-r--r--printing/printing_context_win.cc2
-rw-r--r--printing/printing_context_win.h5
-rw-r--r--printing/units.cc15
-rw-r--r--printing/units.h7
16 files changed, 13 insertions, 225 deletions
diff --git a/printing/print_job_constants.cc b/printing/print_job_constants.cc
index 436d656..e5c67ec 100644
--- a/printing/print_job_constants.cc
+++ b/printing/print_job_constants.cc
@@ -30,37 +30,6 @@ const char kSettingDeviceName[] = "deviceName";
// Print job duplex mode.
const char kSettingDuplexMode[] = "duplex";
-// Option to print headers and Footers: true if selected, false if not.
-const char kSettingHeaderFooterEnabled[] = "headerFooterEnabled";
-
-// Default font family name for printing the headers and footers.
-const char kSettingHeaderFooterFontFamilyName[] = "sans";
-
-// Default font name for printing the headers and footers.
-const char kSettingHeaderFooterFontName[] = "Helvetica";
-
-// Default font size for printing the headers and footers.
-const int kSettingHeaderFooterFontSize = 8;
-
-// Number of horizontal regions for headers and footers.
-const float kSettingHeaderFooterHorizontalRegions = 3;
-
-// Interstice or gap between different header footer components.
-// Hardcoded to 0.25cm = 1/10" = 7.2points.
-const float kSettingHeaderFooterInterstice = 7.2f;
-
-// Key that specifies the date of the page that will be printed in the headers
-// and footers.
-const char kSettingHeaderFooterDate[] = "date";
-
-// Key that specifies the title of the page that will be printed in the headers
-// and footers.
-const char kSettingHeaderFooterTitle[] = "title";
-
-// Key that specifies the URL of the page that will be printed in the headers
-// and footers.
-const char kSettingHeaderFooterURL[] = "url";
-
// Page orientation: true for landscape, false for portrait.
const char kSettingLandscape[] = "landscape";
diff --git a/printing/print_job_constants.h b/printing/print_job_constants.h
index 89a6e64..1997673 100644
--- a/printing/print_job_constants.h
+++ b/printing/print_job_constants.h
@@ -15,15 +15,6 @@ extern const char kSettingColor[];
extern const char kSettingCopies[];
extern const char kSettingDeviceName[];
extern const char kSettingDuplexMode[];
-extern const char kSettingHeaderFooterEnabled[];
-extern const char kSettingHeaderFooterFontFamilyName[];
-extern const char kSettingHeaderFooterFontName[];
-extern const int kSettingHeaderFooterFontSize;
-extern const float kSettingHeaderFooterHorizontalRegions;
-extern const float kSettingHeaderFooterInterstice;
-extern const char kSettingHeaderFooterDate[];
-extern const char kSettingHeaderFooterTitle[];
-extern const char kSettingHeaderFooterURL[];
extern const char kSettingLandscape[];
extern const char kSettingPageRange[];
extern const char kSettingPageRangeFrom[];
@@ -42,19 +33,6 @@ enum DuplexMode {
SHORT_EDGE,
};
-// Specifies the horizontal alignment of the headers and footers.
-enum HorizontalHeaderFooterPosition {
- LEFT,
- CENTER,
- RIGHT
-};
-
-// Specifies the vertical alignment of the Headers and Footers.
-enum VerticalHeaderFooterPosition {
- TOP,
- BOTTOM
-};
-
} // namespace printing
#endif // PRINTING_PRINT_JOB_CONSTANTS_H_
diff --git a/printing/print_settings.h b/printing/print_settings.h
index 8fea6dd..ee78556 100644
--- a/printing/print_settings.h
+++ b/printing/print_settings.h
@@ -7,8 +7,6 @@
#include <string>
-#include "base/memory/scoped_ptr.h"
-#include "base/string16.h"
#include "printing/page_range.h"
#include "printing/page_setup.h"
#include "ui/gfx/rect.h"
@@ -97,14 +95,6 @@ class PrintSettings {
// Updates the orientation and flip the page if needed.
void SetOrientation(bool landscape);
- // Strings to be printed as headers and footers if requested by the user.
- string16 date;
- string16 title;
- string16 url;
-
- // True if the user wants headers and footers to be displayed.
- bool display_header_footer;
-
private:
//////////////////////////////////////////////////////////////////////////////
// Settings that can't be changed without side-effects.
diff --git a/printing/print_settings_initializer.cc b/printing/print_settings_initializer.cc
deleted file mode 100644
index 82d6955..0000000
--- a/printing/print_settings_initializer.cc
+++ /dev/null
@@ -1,72 +0,0 @@
-// Copyright (c) 2011 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/print_settings_initializer.h"
-
-#include <algorithm>
-#include <cmath>
-
-#include "base/i18n/time_formatting.h"
-#include "base/string_number_conversions.h"
-#include "base/time.h"
-#include "base/utf_string_conversions.h"
-#include "base/values.h"
-#include "googleurl/src/gurl.h"
-#include "printing/print_job_constants.h"
-#include "printing/print_settings.h"
-#include "printing/units.h"
-#include "ui/base/text/text_elider.h"
-
-using base::DictionaryValue;
-using base::Time;
-using printing::ConvertPointsToPixelDouble;
-using printing::ConvertUnitDouble;
-using printing::GetHeaderFooterSegmentWidth;
-
-namespace printing {
-
-void PrintSettingsInitializer::InitHeaderFooterStrings(
- const DictionaryValue& job_settings,
- PrintSettings* print_settings) {
- if (!job_settings.GetBoolean(printing::kSettingHeaderFooterEnabled,
- &print_settings->display_header_footer)) {
- NOTREACHED();
- }
- if (!print_settings->display_header_footer)
- return;
-
- string16 date = base::TimeFormatShortDateNumeric(Time::Now());
- string16 title;
- std::string url;
- if (!job_settings.GetString(printing::kSettingHeaderFooterTitle, &title) ||
- !job_settings.GetString(printing::kSettingHeaderFooterURL, &url)) {
- NOTREACHED();
- }
-
- gfx::Font font(UTF8ToUTF16(printing::kSettingHeaderFooterFontName),
- ceil(ConvertPointsToPixelDouble(
- printing::kSettingHeaderFooterFontSize)));
- double segment_width = GetHeaderFooterSegmentWidth(ConvertUnitDouble(
- print_settings->page_setup_device_units().physical_size().width(),
- print_settings->device_units_per_inch(),
- printing::kPixelsPerInch));
- date = ui::ElideText(date, font, segment_width, false);
- print_settings->date = date;
-
- // Calculate the available title width. If the date string is not long
- // enough, increase the available space for the title.
- // Assumes there is no header text to RIGHT of title.
- double date_width = font.GetStringWidth(date);
- double max_title_width = std::min(2 * segment_width,
- 2 * (segment_width - date_width) +
- segment_width);
- print_settings->title = ui::ElideText(title, font, max_title_width, false);
-
- double max_url_width = 2 * segment_width;
- GURL gurl(url);
- print_settings->url = ui::ElideUrl(gurl, font, max_url_width, std::string());
-}
-
-} // namespace printing
-
diff --git a/printing/print_settings_initializer.h b/printing/print_settings_initializer.h
deleted file mode 100644
index de2e3cd..0000000
--- a/printing/print_settings_initializer.h
+++ /dev/null
@@ -1,34 +0,0 @@
-// Copyright (c) 2011 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.
-
-#ifndef PRINTING_PRINT_SETTINGS_INITIALIZER_H_
-#define PRINTING_PRINT_SETTINGS_INITIALIZER_H_
-
-#include "base/basictypes.h"
-#include "base/logging.h"
-
-namespace base {
-class DictionaryValue;
-}
-
-namespace printing {
-
-class PrintSettings;
-
-// Initializes the header footer strings in the PrintSettings object from the
-// provided |job_settings|.
-class PrintSettingsInitializer {
- public:
- static void InitHeaderFooterStrings(
- const base::DictionaryValue& job_settings,
- PrintSettings* print_settings);
-
- private:
- DISALLOW_IMPLICIT_CONSTRUCTORS(PrintSettingsInitializer);
-};
-
-} // namespace printing
-
-#endif // PRINTING_PRINT_SETTINGS_INITIALIZER_H_
-
diff --git a/printing/printing.gyp b/printing/printing.gyp
index 4f5483f..eacf333 100644
--- a/printing/printing.gyp
+++ b/printing/printing.gyp
@@ -73,8 +73,6 @@
'print_job_constants.h',
'print_settings.cc',
'print_settings.h',
- 'print_settings_initializer.cc',
- 'print_settings_initializer.h',
'print_settings_initializer_gtk.cc',
'print_settings_initializer_gtk.h',
'print_settings_initializer_mac.cc',
diff --git a/printing/printing_context.cc b/printing/printing_context.cc
index 4e9d03a..fb554e7 100644
--- a/printing/printing_context.cc
+++ b/printing/printing_context.cc
@@ -5,7 +5,6 @@
#include "printing/printing_context.h"
#include "base/values.h"
-#include "printing/print_settings_initializer.h"
namespace printing {
@@ -34,13 +33,4 @@ PrintingContext::Result PrintingContext::OnError() {
return abort_printing_ ? CANCEL : FAILED;
}
-PrintingContext::Result PrintingContext::UpdatePrintSettings(
- const base::DictionaryValue& job_settings,
- const PageRanges& ranges) {
- PrintingContext::Result result = UpdatePrinterSettings(job_settings, ranges);
- printing::PrintSettingsInitializer::InitHeaderFooterStrings(job_settings,
- &settings_);
- return result;
-}
-
} // namespace printing
diff --git a/printing/printing_context.h b/printing/printing_context.h
index c7184e7..dd7e058 100644
--- a/printing/printing_context.h
+++ b/printing/printing_context.h
@@ -51,16 +51,10 @@ class PrintingContext {
// default device settings.
virtual Result UseDefaultSettings() = 0;
- // Updates printer related settings. |job_settings| contains all print job
- // settings information. |ranges| has the new page range settings.
- virtual Result UpdatePrinterSettings(
- const base::DictionaryValue& job_settings,
- const PageRanges& ranges) = 0;
-
- // Updates Print Settings. |job_settings| contains all print job
- // settings information. |ranges| has the new page range settings.
- Result UpdatePrintSettings(const base::DictionaryValue& job_settings,
- const PageRanges& ranges);
+ // Updates print settings. |job_settings| contains all print job settings
+ // information. |ranges| has the new page range settings.
+ virtual Result UpdatePrintSettings(const base::DictionaryValue& job_settings,
+ const PageRanges& ranges) = 0;
// Initializes with predefined settings.
virtual Result InitWithSettings(const PrintSettings& settings) = 0;
diff --git a/printing/printing_context_cairo.cc b/printing/printing_context_cairo.cc
index 16eb837..3da44a1 100644
--- a/printing/printing_context_cairo.cc
+++ b/printing/printing_context_cairo.cc
@@ -140,7 +140,7 @@ PrintingContext::Result PrintingContextCairo::UseDefaultSettings() {
return OK;
}
-PrintingContext::Result PrintingContextCairo::UpdatePrinterSettings(
+PrintingContext::Result PrintingContextCairo::UpdatePrintSettings(
const DictionaryValue& job_settings, const PageRanges& ranges) {
#if defined(OS_CHROMEOS)
bool landscape = false;
diff --git a/printing/printing_context_cairo.h b/printing/printing_context_cairo.h
index 20c3b8c..49d72b5 100644
--- a/printing/printing_context_cairo.h
+++ b/printing/printing_context_cairo.h
@@ -39,9 +39,8 @@ class PrintingContextCairo : public PrintingContext {
bool has_selection,
PrintSettingsCallback* callback);
virtual Result UseDefaultSettings();
- virtual Result UpdatePrinterSettings(
- const base::DictionaryValue& job_settings,
- const PageRanges& ranges);
+ virtual Result UpdatePrintSettings(const base::DictionaryValue& job_settings,
+ const PageRanges& ranges);
virtual Result InitWithSettings(const PrintSettings& settings);
virtual Result NewDocument(const string16& document_name);
virtual Result NewPage();
diff --git a/printing/printing_context_mac.h b/printing/printing_context_mac.h
index 655ef6a..cb3e0e2 100644
--- a/printing/printing_context_mac.h
+++ b/printing/printing_context_mac.h
@@ -30,9 +30,8 @@ class PrintingContextMac : public PrintingContext {
bool has_selection,
PrintSettingsCallback* callback);
virtual Result UseDefaultSettings();
- virtual Result UpdatePrinterSettings(
- const base::DictionaryValue& job_settings,
- const PageRanges& ranges);
+ virtual Result UpdatePrintSettings(const base::DictionaryValue& job_settings,
+ const PageRanges& ranges);
virtual Result InitWithSettings(const PrintSettings& settings);
virtual Result NewDocument(const string16& document_name);
virtual Result NewPage();
diff --git a/printing/printing_context_mac.mm b/printing/printing_context_mac.mm
index f839802..90654e2 100644
--- a/printing/printing_context_mac.mm
+++ b/printing/printing_context_mac.mm
@@ -98,7 +98,7 @@ PrintingContext::Result PrintingContextMac::UseDefaultSettings() {
return OK;
}
-PrintingContext::Result PrintingContextMac::UpdatePrinterSettings(
+PrintingContext::Result PrintingContextMac::UpdatePrintSettings(
const DictionaryValue& job_settings, const PageRanges& ranges) {
DCHECK(!in_print_job_);
diff --git a/printing/printing_context_win.cc b/printing/printing_context_win.cc
index ef45060..17e5890 100644
--- a/printing/printing_context_win.cc
+++ b/printing/printing_context_win.cc
@@ -302,7 +302,7 @@ PrintingContext::Result PrintingContextWin::UseDefaultSettings() {
return FAILED;
}
-PrintingContext::Result PrintingContextWin::UpdatePrinterSettings(
+PrintingContext::Result PrintingContextWin::UpdatePrintSettings(
const DictionaryValue& job_settings,
const PageRanges& ranges) {
DCHECK(!in_print_job_);
diff --git a/printing/printing_context_win.h b/printing/printing_context_win.h
index c830736..81a61c3 100644
--- a/printing/printing_context_win.h
+++ b/printing/printing_context_win.h
@@ -28,9 +28,8 @@ class PrintingContextWin : public PrintingContext {
bool has_selection,
PrintSettingsCallback* callback);
virtual Result UseDefaultSettings();
- virtual Result UpdatePrinterSettings(
- const base::DictionaryValue& job_settings,
- const PageRanges& ranges);
+ virtual Result UpdatePrintSettings(const base::DictionaryValue& job_settings,
+ const PageRanges& ranges);
virtual Result InitWithSettings(const PrintSettings& settings);
virtual Result NewDocument(const string16& document_name);
virtual Result NewPage();
diff --git a/printing/units.cc b/printing/units.cc
index 84d78bb..976fa80 100644
--- a/printing/units.cc
+++ b/printing/units.cc
@@ -5,7 +5,6 @@
#include "printing/units.h"
#include "base/logging.h"
-#include "printing/print_job_constants.h"
namespace printing {
@@ -48,18 +47,4 @@ double ConvertPixelsToPointDouble(double pixels) {
return ConvertUnitDouble(pixels, kPixelsPerInch, kPointsPerInch);
}
-double ConvertPointsToPixelDouble(double points) {
- return ConvertUnitDouble(points, kPointsPerInch, kPixelsPerInch);
-}
-
-double GetHeaderFooterSegmentWidth(double page_width) {
- // Interstice is left at both ends of the page as well as between
- // each region, so 1 is added.
- double total_interstice_width =
- (printing::kSettingHeaderFooterHorizontalRegions + 1) *
- printing::kSettingHeaderFooterInterstice;
- return (page_width - total_interstice_width) /
- printing::kSettingHeaderFooterHorizontalRegions;
-}
-
} // namespace printing
diff --git a/printing/units.h b/printing/units.h
index bd6d67a..cc61241 100644
--- a/printing/units.h
+++ b/printing/units.h
@@ -36,13 +36,6 @@ int ConvertPixelsToPoint(int pixels);
// Converts from 1 pixel to 1 point using doubles.
double ConvertPixelsToPointDouble(double pixels);
-// Converts from 1 point to 1 pixel using doubles.
-double ConvertPointsToPixelDouble(double points);
-
-// Splits the horizontal width equally into segments with an interstice
-// between each segment. Returns the width of a segment.
-double GetHeaderFooterSegmentWidth(double page_width);
-
} // namespace printing
#endif // PRINTING_UNITS_H_