Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / ui / cocoa / about_ipc_dialog.h
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
3 // found in the LICENSE file.
4
5 #ifndef CHROME_BROWSER_UI_COCOA_ABOUT_IPC_DIALOG_H_
6 #define CHROME_BROWSER_UI_COCOA_ABOUT_IPC_DIALOG_H_
7
8 #include "ipc/ipc_logging.h"
9 #include "ipc/ipc_message_utils.h"
10
11 #if defined(IPC_MESSAGE_LOG_ENABLED)
12
13 #ifdef __OBJC__
14 @class AboutIPCController;
15 #else
16 class AboutIPCController;
17 #endif
18
19
20 // On Windows, the AboutIPCDialog is a views::View.  On Mac we have a
21 // Cocoa dialog.  This class bridges from C++ to ObjC.
22 class AboutIPCBridge : public IPC::Logging::Consumer {
23  public:
24   AboutIPCBridge(AboutIPCController* controller) : controller_(controller) { }
25   ~AboutIPCBridge() override {}
26
27   // IPC::Logging::Consumer implementation.
28   void Log(const IPC::LogData& data) override;
29
30  private:
31   AboutIPCController* controller_;  // weak; owns me
32   DISALLOW_COPY_AND_ASSIGN(AboutIPCBridge);
33 };
34
35 #endif  // IPC_MESSAGE_LOG_ENABLED
36
37 #endif  // CHROME_BROWSER_UI_COCOA_ABOUT_IPC_DIALOG_H_