ASPiK SDK
iviewfactory.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 #ifndef __iviewfactory__
6 #define __iviewfactory__
7 
8 #include "../lib/vstguifwd.h"
9 
10 namespace VSTGUI {
11 class UIAttributes;
12 class IUIDescription;
13 
14 //-----------------------------------------------------------------------------
16 {
17 public:
18  virtual ~IViewFactory () noexcept = default;
19 
20  virtual CView* createView (const UIAttributes& attributes, const IUIDescription* description) const = 0;
21  virtual bool applyAttributeValues (CView* view, const UIAttributes& attributes, const IUIDescription* desc) const = 0;
22  virtual IdStringPtr getViewName (CView* view) const = 0;
23  virtual bool applyCustomViewAttributeValues (CView* customView, IdStringPtr baseViewName, const UIAttributes& attributes, const IUIDescription* desc) const = 0;
24 };
25 
26 } // namespace VSTGUI
27 
28 
29 #endif // __iviewfactory__
Definition: iuidescription.h:19
Definition: iviewfactory.h:15
Definition: customcontrols.cpp:8
Definition: uiattributes.h:21
Base Class of all view objects.
Definition: cview.h:44