1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CONTENT_RENDERER_RENDERER_DATE_TIME_PICKER_H_ 6 #define CONTENT_RENDERER_RENDERER_DATE_TIME_PICKER_H_ 7 8 #include "base/basictypes.h" 9 #include "content/public/renderer/render_view_observer.h" 10 #include "third_party/WebKit/public/web/WebDateTimeChooserParams.h" 11 12 struct ViewHostMsg_DateTimeDialogValue_Params; 13 14 namespace blink { 15 class WebDateTimeChooserCompletion; 16 } // namespace blink 17 18 namespace content { 19 class RenderViewImpl; 20 21 class RendererDateTimePicker : public RenderViewObserver { 22 public: 23 RendererDateTimePicker( 24 RenderViewImpl* sender, 25 const blink::WebDateTimeChooserParams& params, 26 blink::WebDateTimeChooserCompletion* completion); 27 virtual ~RendererDateTimePicker(); 28 29 bool Open(); 30 31 private: 32 void OnReplaceDateTime(double value); 33 void OnCancel(); 34 35 // RenderViewObserver 36 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; 37 38 blink::WebDateTimeChooserParams chooser_params_; 39 blink::WebDateTimeChooserCompletion* chooser_completion_; // Not owned by us 40 41 DISALLOW_COPY_AND_ASSIGN(RendererDateTimePicker); 42 }; 43 44 } // namespace content 45 46 #endif // CONTENT_RENDERER_RENDERER_DATE_TIME_PICKER_H_ 47