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

Side by Side Diff: chrome/browser/printing/printer_query.h

Issue 6533006: Print Preview: Hook up the print button to initiate printing without displaying a print dialog. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Addressed review comments. Created 9 years, 9 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/browser/printing/print_job_worker.cc ('k') | chrome/browser/printing/printer_query.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_PRINTING_PRINTER_QUERY_H_ 5 #ifndef CHROME_BROWSER_PRINTING_PRINTER_QUERY_H_
6 #define CHROME_BROWSER_PRINTING_PRINTER_QUERY_H_ 6 #define CHROME_BROWSER_PRINTING_PRINTER_QUERY_H_
7 #pragma once 7 #pragma once
8 8
9 #include "base/scoped_ptr.h" 9 #include "base/scoped_ptr.h"
10 #include "chrome/browser/printing/print_job_worker_owner.h" 10 #include "chrome/browser/printing/print_job_worker_owner.h"
11 #include "ui/gfx/native_widget_types.h" 11 #include "ui/gfx/native_widget_types.h"
12 12
13 class CancelableTask; 13 class CancelableTask;
14 class DictionaryValue;
14 class MessageLoop; 15 class MessageLoop;
15 16
16 namespace base { 17 namespace base {
17 class Thread; 18 class Thread;
18 } 19 }
19 20
20 namespace printing { 21 namespace printing {
21 22
22 class PrintJobWorker; 23 class PrintJobWorker;
23 24
(...skipping 20 matching lines...) Expand all
44 // times to reinitialize the settings. |parent_view| parameter's window will 45 // times to reinitialize the settings. |parent_view| parameter's window will
45 // be the owner of the print setting dialog box. It is unused when 46 // be the owner of the print setting dialog box. It is unused when
46 // |ask_for_user_settings| is DEFAULTS. 47 // |ask_for_user_settings| is DEFAULTS.
47 void GetSettings(GetSettingsAskParam ask_user_for_settings, 48 void GetSettings(GetSettingsAskParam ask_user_for_settings,
48 gfx::NativeView parent_view, 49 gfx::NativeView parent_view,
49 int expected_page_count, 50 int expected_page_count,
50 bool has_selection, 51 bool has_selection,
51 bool use_overlays, 52 bool use_overlays,
52 CancelableTask* callback); 53 CancelableTask* callback);
53 54
55 // Updates the current settings with |new_settings| dictionary values.
56 void SetSettings(const DictionaryValue& new_settings,
57 CancelableTask* callback);
58
54 // Stops the worker thread since the client is done with this object. 59 // Stops the worker thread since the client is done with this object.
55 void StopWorker(); 60 void StopWorker();
56 61
57 // Returns true if a GetSettings() call is pending completion. 62 // Returns true if a GetSettings() call is pending completion.
58 bool is_callback_pending() const; 63 bool is_callback_pending() const;
59 64
60 PrintingContext::Result last_status() const { return last_status_; } 65 PrintingContext::Result last_status() const { return last_status_; }
61 66
62 // Returns if a worker thread is still associated to this instance. 67 // Returns if a worker thread is still associated to this instance.
63 bool is_valid() const; 68 bool is_valid() const;
64 69
65 private: 70 private:
66 virtual ~PrinterQuery(); 71 virtual ~PrinterQuery();
67 72
73 // Lazy create the worker thread. There is one worker thread per print job.
74 // Returns true, if worker thread exists or has been created.
75 bool StartWorker(CancelableTask* callback);
76
68 // Main message loop reference. Used to send notifications in the right 77 // Main message loop reference. Used to send notifications in the right
69 // thread. 78 // thread.
70 MessageLoop* const io_message_loop_; 79 MessageLoop* const io_message_loop_;
71 80
72 // All the UI is done in a worker thread because many Win32 print functions 81 // All the UI is done in a worker thread because many Win32 print functions
73 // are blocking and enters a message loop without your consent. There is one 82 // are blocking and enters a message loop without your consent. There is one
74 // worker thread per print job. 83 // worker thread per print job.
75 scoped_ptr<PrintJobWorker> worker_; 84 scoped_ptr<PrintJobWorker> worker_;
76 85
77 // Cache of the print context settings for access in the UI thread. 86 // Cache of the print context settings for access in the UI thread.
(...skipping 10 matching lines...) Expand all
88 97
89 // Task waiting to be executed. 98 // Task waiting to be executed.
90 scoped_ptr<CancelableTask> callback_; 99 scoped_ptr<CancelableTask> callback_;
91 100
92 DISALLOW_COPY_AND_ASSIGN(PrinterQuery); 101 DISALLOW_COPY_AND_ASSIGN(PrinterQuery);
93 }; 102 };
94 103
95 } // namespace printing 104 } // namespace printing
96 105
97 #endif // CHROME_BROWSER_PRINTING_PRINTER_QUERY_H_ 106 #endif // CHROME_BROWSER_PRINTING_PRINTER_QUERY_H_
OLDNEW
« no previous file with comments | « chrome/browser/printing/print_job_worker.cc ('k') | chrome/browser/printing/printer_query.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698