ASPiK SDK
platform_macos.h
1 // This file is part of VSTGUI. It is subject to the license terms
2 // in the LICENSE file found in the top-level directory of this
3 // distribution and at http://github.com/steinbergmedia/vstgui/LICENSE
4 
5 #pragma once
6 
7 #include "iplatformframe.h"
8 
9 #if MAC_COCOA
10 
11 #ifdef __OBJC__
12 @class NSView, CALayer;
13 #else
14 struct NSView;
15 struct CALayer;
16 #endif
17 
18 //-----------------------------------------------------------------------------
19 namespace VSTGUI {
20 
21 //-----------------------------------------------------------------------------
22 class CocoaFrameConfig : public IPlatformFrameConfig
23 {
24 public:
25  enum Flags {
26  kNoCALayer = 1 << 0,
27  };
28  uint32_t flags {0};
29 };
30 
31 //-----------------------------------------------------------------------------
32 // extens IPlatformFrame on macOS
33 class ICocoaPlatformFrame
34 {
35 public:
36  virtual NSView* getNSView () const = 0;
37 };
38 
39 //-----------------------------------------------------------------------------
40 // extens IPlatformViewLayer on macOS
41 class ICocoaViewLayer
42 {
43 public:
44  virtual CALayer* getCALayer () const = 0;
45 };
46 
47 //-----------------------------------------------------------------------------
48 } // VSTGUI
49 
50 #endif // MAC_COCOA
51 
Definition: customcontrols.cpp:8