
.. _toolkits-page:

#######################
UI Toolkit Integrations
#######################


|ProductName| can be easily integrated into most UI toolkits. We provide examples for

-   **Qt:** Qt4, Qt5 and Qt6 are supported in our examples. 
-   **wxWidgets:** wxWidgets 3.0 and later are supported in our examples.
-   **.NET:** We provide C# examples for both WinForms and WPF.
-   **MFC:** We provide a MinimalMfc example app to get you started with MFC.
-   **Win32:** We provide both a MinimalWin32 and a MultiView example for Win32 users.


**For C++ Users:**

In order to render with OpenGL and |ProductName| in your application, you will have to provide a Viewer that derives 
from :class:`ViewerUIFramework <cee::vis::ViewerUIFramework>`. If you are using Qt or wxWidgets, we have provided 
examples on how to do this. 
See :ref:`qt-page` and :ref:`wxwidgets-page` for more information.

If you are using MFC or native Win32, you can use the built-in Viewers in the 
:class:`Win component <cee::win::WinComponent>`.  
See :ref:`mfc-page` and :ref:`win32-page` for more information.

If you are using any other UI toolkit, please see the documentation of 
:class:`ViewerUIFramework <cee::vis::ViewerUIFramework>` in order 
to create your own wrapper. If you have any problems with this, do not hesitate to contact :ref:`contact-us-page`.


**For .NET Users:**

For Windows Forms, you need to use the :class:`Win component <cee::win::WinComponent>` (CeetronEnvision.Win) and create 
a user control for the 3D rendering. Examples on how to do this are provided in the WinFormsMinimal and WinFormsDemoApp. 
See :ref:`winforms-page` for more information.

The Windows Presentation Foundation can also integrate towards this user control. See :ref:`wpf-page` for more 
information. A couple of minimal apps for this support is provided (WpfMinimal/WpfWindowsFormsHostMinimal).

.. toctree::
    :maxdepth: 1
    :caption: Toolkits

    Qt <qt>
    Win32 <win32>
    MFC <mfc>
    Windows Forms <winforms>
    WPF <wpf>
    wxWidgets <wxwidgets>
