summaryrefslogtreecommitdiff
path: root/docs/Xamarin.Forms.Core/Xamarin.Forms/OpenGLView.xml
diff options
context:
space:
mode:
Diffstat (limited to 'docs/Xamarin.Forms.Core/Xamarin.Forms/OpenGLView.xml')
-rw-r--r--docs/Xamarin.Forms.Core/Xamarin.Forms/OpenGLView.xml221
1 files changed, 221 insertions, 0 deletions
diff --git a/docs/Xamarin.Forms.Core/Xamarin.Forms/OpenGLView.xml b/docs/Xamarin.Forms.Core/Xamarin.Forms/OpenGLView.xml
new file mode 100644
index 00000000..303a1565
--- /dev/null
+++ b/docs/Xamarin.Forms.Core/Xamarin.Forms/OpenGLView.xml
@@ -0,0 +1,221 @@
+<Type Name="OpenGLView" FullName="Xamarin.Forms.OpenGLView">
+ <TypeSignature Language="C#" Value="public sealed class OpenGLView : Xamarin.Forms.View, Xamarin.Forms.IOpenGLViewController" />
+ <TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit OpenGLView extends Xamarin.Forms.View implements class Xamarin.Forms.IElementController, class Xamarin.Forms.IOpenGLViewController, class Xamarin.Forms.IViewController, class Xamarin.Forms.IVisualElementController" />
+ <AssemblyInfo>
+ <AssemblyName>Xamarin.Forms.Core</AssemblyName>
+ <AssemblyVersion>1.0.0.0</AssemblyVersion>
+ <AssemblyVersion>1.1.0.0</AssemblyVersion>
+ <AssemblyVersion>1.2.0.0</AssemblyVersion>
+ <AssemblyVersion>1.3.0.0</AssemblyVersion>
+ <AssemblyVersion>1.4.0.0</AssemblyVersion>
+ <AssemblyVersion>1.5.0.0</AssemblyVersion>
+ <AssemblyVersion>2.0.0.0</AssemblyVersion>
+ </AssemblyInfo>
+ <Base>
+ <BaseTypeName>Xamarin.Forms.View</BaseTypeName>
+ </Base>
+ <Interfaces>
+ <Interface>
+ <InterfaceName>Xamarin.Forms.IOpenGLViewController</InterfaceName>
+ </Interface>
+ </Interfaces>
+ <Attributes>
+ <Attribute>
+ <AttributeName>Xamarin.Forms.RenderWith(typeof(Xamarin.Forms.Platform._OpenGLViewRenderer))</AttributeName>
+ </Attribute>
+ </Attributes>
+ <Docs>
+ <summary>A <see cref="T:Xamarin.Forms.View" /> that displays OpenGL content.</summary>
+ <remarks>
+ <para>
+ <see cref="T:Xamarin.Forms.OpenGLView" />s are easiest to program using Shared Projects, in which case the reference to OpenTK is straightforward. The following example shows a simple OpenGL app with a render loop:</para>
+ <example>
+ <code lang="C#"><![CDATA[
+using Xamarin.Forms;
+using OpenTK.Graphics.ES30;
+
+namespace opengl
+{
+ public class OpenGLPage : ContentPage
+ {
+ float red, green, blue;
+
+ public OpenGLPage ()
+ {
+ Title = "OpenGL";
+ var view = new OpenGLView { HasRenderLoop = true };
+ var toggle = new Switch { IsToggled = true };
+ var button = new Button { Text = "Display" };
+
+ view.HeightRequest = 300;
+ view.WidthRequest = 300;
+
+ view.OnDisplay = r => {
+
+ GL.ClearColor (red, green, blue, 1.0f);
+ GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit));
+
+ red += 0.01f;
+ if (red >= 1.0f)
+ red -= 1.0f;
+ green += 0.02f;
+ if (green >= 1.0f)
+ green -= 1.0f;
+ blue += 0.03f;
+ if (blue >= 1.0f)
+ blue -= 1.0f;
+ };
+
+ toggle.Toggled += (s, a) => {
+ view.HasRenderLoop = toggle.IsToggled;
+ };
+ button.Clicked += (s, a) => view.Display ();
+
+ var stack = new StackLayout {
+ Padding = new Size (20, 20),
+ Children = {view, toggle, button}
+ };
+
+ Content = stack;
+ }
+ }
+}
+
+ ]]></code>
+ </example>
+ <para>
+ <img href="OpenGL.Example.png" />
+ </para>
+ </remarks>
+ </Docs>
+ <Members>
+ <Member MemberName=".ctor">
+ <MemberSignature Language="C#" Value="public OpenGLView ();" />
+ <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
+ <MemberType>Constructor</MemberType>
+ <AssemblyInfo>
+ <AssemblyVersion>1.0.0.0</AssemblyVersion>
+ <AssemblyVersion>1.1.0.0</AssemblyVersion>
+ <AssemblyVersion>1.2.0.0</AssemblyVersion>
+ <AssemblyVersion>1.3.0.0</AssemblyVersion>
+ <AssemblyVersion>1.4.0.0</AssemblyVersion>
+ <AssemblyVersion>1.5.0.0</AssemblyVersion>
+ <AssemblyVersion>2.0.0.0</AssemblyVersion>
+ </AssemblyInfo>
+ <Parameters />
+ <Docs>
+ <summary>Creates a new <see cref="T:Xamarin.Forms.OpenGLView" /> object with default values.</summary>
+ <remarks>To be added.</remarks>
+ </Docs>
+ </Member>
+ <Member MemberName="Display">
+ <MemberSignature Language="C#" Value="public void Display ();" />
+ <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Display() cil managed" />
+ <MemberType>Method</MemberType>
+ <AssemblyInfo>
+ <AssemblyVersion>1.0.0.0</AssemblyVersion>
+ <AssemblyVersion>1.1.0.0</AssemblyVersion>
+ <AssemblyVersion>1.2.0.0</AssemblyVersion>
+ <AssemblyVersion>1.3.0.0</AssemblyVersion>
+ <AssemblyVersion>1.4.0.0</AssemblyVersion>
+ <AssemblyVersion>1.5.0.0</AssemblyVersion>
+ <AssemblyVersion>2.0.0.0</AssemblyVersion>
+ </AssemblyInfo>
+ <ReturnValue>
+ <ReturnType>System.Void</ReturnType>
+ </ReturnValue>
+ <Parameters />
+ <Docs>
+ <summary>Called prior to rendering.</summary>
+ <remarks>To be added.</remarks>
+ </Docs>
+ </Member>
+ <Member MemberName="HasRenderLoop">
+ <MemberSignature Language="C#" Value="public bool HasRenderLoop { get; set; }" />
+ <MemberSignature Language="ILAsm" Value=".property instance bool HasRenderLoop" />
+ <MemberType>Property</MemberType>
+ <AssemblyInfo>
+ <AssemblyVersion>1.0.0.0</AssemblyVersion>
+ <AssemblyVersion>1.1.0.0</AssemblyVersion>
+ <AssemblyVersion>1.2.0.0</AssemblyVersion>
+ <AssemblyVersion>1.3.0.0</AssemblyVersion>
+ <AssemblyVersion>1.4.0.0</AssemblyVersion>
+ <AssemblyVersion>1.5.0.0</AssemblyVersion>
+ <AssemblyVersion>2.0.0.0</AssemblyVersion>
+ </AssemblyInfo>
+ <ReturnValue>
+ <ReturnType>System.Boolean</ReturnType>
+ </ReturnValue>
+ <Docs>
+ <summary>Whether this <see cref="T:Xamarin.Forms.OpenGLView" /> has a custom rendering loop.</summary>
+ <value>To be added.</value>
+ <remarks>To be added.</remarks>
+ </Docs>
+ </Member>
+ <Member MemberName="HasRenderLoopProperty">
+ <MemberSignature Language="C#" Value="public static readonly Xamarin.Forms.BindableProperty HasRenderLoopProperty;" />
+ <MemberSignature Language="ILAsm" Value=".field public static initonly class Xamarin.Forms.BindableProperty HasRenderLoopProperty" />
+ <MemberType>Field</MemberType>
+ <AssemblyInfo>
+ <AssemblyVersion>1.0.0.0</AssemblyVersion>
+ <AssemblyVersion>1.1.0.0</AssemblyVersion>
+ <AssemblyVersion>1.2.0.0</AssemblyVersion>
+ <AssemblyVersion>1.3.0.0</AssemblyVersion>
+ <AssemblyVersion>1.4.0.0</AssemblyVersion>
+ <AssemblyVersion>1.5.0.0</AssemblyVersion>
+ <AssemblyVersion>2.0.0.0</AssemblyVersion>
+ </AssemblyInfo>
+ <ReturnValue>
+ <ReturnType>Xamarin.Forms.BindableProperty</ReturnType>
+ </ReturnValue>
+ <Docs>
+ <summary>Identifies the <see cref="P:Xamarin.Forms.OpenGLView.HasRenderLoop" /> bindable property.</summary>
+ <remarks>To be added.</remarks>
+ </Docs>
+ </Member>
+ <Member MemberName="OnDisplay">
+ <MemberSignature Language="C#" Value="public Action&lt;Xamarin.Forms.Rectangle&gt; OnDisplay { get; set; }" />
+ <MemberSignature Language="ILAsm" Value=".property instance class System.Action`1&lt;valuetype Xamarin.Forms.Rectangle&gt; OnDisplay" />
+ <MemberType>Property</MemberType>
+ <AssemblyInfo>
+ <AssemblyVersion>1.0.0.0</AssemblyVersion>
+ <AssemblyVersion>1.1.0.0</AssemblyVersion>
+ <AssemblyVersion>1.2.0.0</AssemblyVersion>
+ <AssemblyVersion>1.3.0.0</AssemblyVersion>
+ <AssemblyVersion>1.4.0.0</AssemblyVersion>
+ <AssemblyVersion>1.5.0.0</AssemblyVersion>
+ <AssemblyVersion>2.0.0.0</AssemblyVersion>
+ </AssemblyInfo>
+ <ReturnValue>
+ <ReturnType>System.Action&lt;Xamarin.Forms.Rectangle&gt;</ReturnType>
+ </ReturnValue>
+ <Docs>
+ <summary>Overridden to create a custom rendering loop.</summary>
+ <value>To be added.</value>
+ <remarks>
+ <para>When overridden, creates a custom renderer: </para>
+ <example>
+ <code lang="C#"><![CDATA[
+ var view = new OpenGLView { HasRenderLoop = true };
+ view.OnDisplay = r => {
+
+ GL.ClearColor (red, green, blue, 1.0f);
+ GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit));
+
+ red += 0.01f;
+ if (red >= 1.0f)
+ red -= 1.0f;
+ green += 0.02f;
+ if (green >= 1.0f)
+ green -= 1.0f;
+ blue += 0.03f;
+ if (blue >= 1.0f)
+ blue -= 1.0f;
+ };
+ ]]></code>
+ </example>
+ </remarks>
+ </Docs>
+ </Member>
+ </Members>
+</Type>