1 // Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights 2 // reserved. Use of this source code is governed by a BSD-style license that 3 // can be found in the LICENSE file. 4 // 5 // --------------------------------------------------------------------------- 6 // 7 // This file was generated by the CEF translator tool. If making changes by 8 // hand only do so within the body of existing method and function 9 // implementations. See the translator.README.txt file in the tools directory 10 // for more information. 11 // 12 // $hash=e61d67d8295c9fcc3e801bf61f4381434924940c$ 13 // 14 15 #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_WINDOW_DELEGATE_CTOCPP_H_ 16 #define CEF_LIBCEF_DLL_CTOCPP_VIEWS_WINDOW_DELEGATE_CTOCPP_H_ 17 #pragma once 18 19 #if !defined(BUILDING_CEF_SHARED) 20 #error This file can be included DLL-side only 21 #endif 22 23 #include "include/capi/views/cef_window_capi.h" 24 #include "include/capi/views/cef_window_delegate_capi.h" 25 #include "include/views/cef_window.h" 26 #include "include/views/cef_window_delegate.h" 27 #include "libcef_dll/ctocpp/ctocpp_ref_counted.h" 28 29 // Wrap a C structure with a C++ class. 30 // This class may be instantiated and accessed DLL-side only. 31 class CefWindowDelegateCToCpp 32 : public CefCToCppRefCounted<CefWindowDelegateCToCpp, 33 CefWindowDelegate, 34 cef_window_delegate_t> { 35 public: 36 CefWindowDelegateCToCpp(); 37 virtual ~CefWindowDelegateCToCpp(); 38 39 // CefWindowDelegate methods. 40 void OnWindowCreated(CefRefPtr<CefWindow> window) override; 41 void OnWindowDestroyed(CefRefPtr<CefWindow> window) override; 42 CefRefPtr<CefWindow> GetParentWindow(CefRefPtr<CefWindow> window, 43 bool* is_menu, 44 bool* can_activate_menu) override; 45 CefRect GetInitialBounds(CefRefPtr<CefWindow> window) override; 46 cef_show_state_t GetInitialShowState(CefRefPtr<CefWindow> window) override; 47 bool IsFrameless(CefRefPtr<CefWindow> window) override; 48 bool CanResize(CefRefPtr<CefWindow> window) override; 49 bool CanMaximize(CefRefPtr<CefWindow> window) override; 50 bool CanMinimize(CefRefPtr<CefWindow> window) override; 51 bool CanClose(CefRefPtr<CefWindow> window) override; 52 bool OnAccelerator(CefRefPtr<CefWindow> window, int command_id) override; 53 bool OnKeyEvent(CefRefPtr<CefWindow> window, 54 const CefKeyEvent& event) override; 55 56 // CefPanelDelegate methods. 57 58 // CefViewDelegate methods. 59 CefSize GetPreferredSize(CefRefPtr<CefView> view) override; 60 CefSize GetMinimumSize(CefRefPtr<CefView> view) override; 61 CefSize GetMaximumSize(CefRefPtr<CefView> view) override; 62 int GetHeightForWidth(CefRefPtr<CefView> view, int width) override; 63 void OnParentViewChanged(CefRefPtr<CefView> view, 64 bool added, 65 CefRefPtr<CefView> parent) override; 66 void OnChildViewChanged(CefRefPtr<CefView> view, 67 bool added, 68 CefRefPtr<CefView> child) override; 69 void OnWindowChanged(CefRefPtr<CefView> view, bool added) override; 70 void OnLayoutChanged(CefRefPtr<CefView> view, 71 const CefRect& new_bounds) override; 72 void OnFocus(CefRefPtr<CefView> view) override; 73 void OnBlur(CefRefPtr<CefView> view) override; 74 }; 75 76 #endif // CEF_LIBCEF_DLL_CTOCPP_VIEWS_WINDOW_DELEGATE_CTOCPP_H_ 77