Author: danw
Date: 2005-04-01 09:54:12 -0500 (Fri, 01 Apr 2005)
New Revision: 42463
Added:
trunk/gtk-sharp/gdk/PixbufAnimation.custom
Modified:
trunk/gtk-sharp/ChangeLog
trunk/gtk-sharp/doc/ChangeLog
trunk/gtk-sharp/doc/en/Gdk/Pixbuf.xml
trunk/gtk-sharp/doc/en/Gdk/PixbufAnimation.xml
trunk/gtk-sharp/doc/en/Gdk/PixbufLoader.xml
trunk/gtk-sharp/doc/en/Gtk/Image.xml
trunk/gtk-sharp/gdk/Makefile.am
trunk/gtk-sharp/gdk/Pixbuf.custom
trunk/gtk-sharp/gdk/PixbufLoader.custom
trunk/gtk-sharp/gtk/Image.custom
Log:
* gdk/PixbufLoader.custom: Implement System.IO.Stream and
resource-file constructors (using code formerly in Pixbuf.custom)
* gdk/Pixbuf.custom: Redo the stream and resource ctors in terms
of the PixbufLoader ones.
* gdk/PixbufAnimation.custom: Add stream and resource ctors
* gtk/Image.custom: Add stream and resource ctors
Modified: trunk/gtk-sharp/ChangeLog
===================================================================
--- trunk/gtk-sharp/ChangeLog 2005-04-01 14:27:58 UTC (rev 42462)
+++ trunk/gtk-sharp/ChangeLog 2005-04-01 14:54:12 UTC (rev 42463)
@@ -1,3 +1,15 @@
+2005-03-31 Dan Winship <[EMAIL PROTECTED]>
+
+ * gdk/PixbufLoader.custom: Implement System.IO.Stream and
+ resource-file constructors (using code formerly in Pixbuf.custom)
+
+ * gdk/Pixbuf.custom: Redo the stream and resource ctors in terms
+ of the PixbufLoader ones.
+
+ * gdk/PixbufAnimation.custom: Add stream and resource ctors
+
+ * gtk/Image.custom: Add stream and resource ctors
+
2005-03-31 Mike Kestner <[EMAIL PROTECTED]>
* glib/ManagedValue.cs : add null/NULL guarding to Copy, Free,
Modified: trunk/gtk-sharp/doc/ChangeLog
===================================================================
--- trunk/gtk-sharp/doc/ChangeLog 2005-04-01 14:27:58 UTC (rev 42462)
+++ trunk/gtk-sharp/doc/ChangeLog 2005-04-01 14:54:12 UTC (rev 42463)
@@ -1,3 +1,10 @@
+2005-04-01 Dan Winship <[EMAIL PROTECTED]>
+
+ * en/Gdk/Pixbuf.xml:
+ * en/Gdk/PixbufAnimation.xml:
+ * en/Gdk/PixbufLoader.xml:
+ * en/Gtk/Image.xml: document new/updated stream/resource constructors
+
2005-03-15 Dan Winship <[EMAIL PROTECTED]>
* en/Gtk/NodeStore.xml (AddNode):
Modified: trunk/gtk-sharp/doc/en/Gdk/Pixbuf.xml
===================================================================
--- trunk/gtk-sharp/doc/en/Gdk/Pixbuf.xml 2005-04-01 14:27:58 UTC (rev
42462)
+++ trunk/gtk-sharp/doc/en/Gdk/Pixbuf.xml 2005-04-01 14:54:12 UTC (rev
42463)
@@ -1215,10 +1215,14 @@
<Parameter Name="resource" Type="System.String" />
</Parameters>
<Docs>
- <summary>Loads a pixbuf from a resource string.</summary>
- <param name="resource">a <see cref="T:System.String" /></param>
+ <summary>Loads a pixbuf from a resource file.</summary>
+ <param name="resource">the name of the resource</param>
<returns>a <see cref="T:Gdk.Pixbuf" /></returns>
- <remarks>TODO: Clarify.</remarks>
+ <remarks>
+ This loads a pixbuf from a resource in the calling assembly. This
is equivalent to
+ using the <see cref="C:Gdk.Pixbuf(System.Reflection.Assembly,
System.String)" />
+ constructor with a <see langword="null" /> assembly.
+ </remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
Modified: trunk/gtk-sharp/doc/en/Gdk/PixbufAnimation.xml
===================================================================
--- trunk/gtk-sharp/doc/en/Gdk/PixbufAnimation.xml 2005-04-01 14:27:58 UTC
(rev 42462)
+++ trunk/gtk-sharp/doc/en/Gdk/PixbufAnimation.xml 2005-04-01 14:54:12 UTC
(rev 42463)
@@ -245,5 +245,90 @@
<remarks>To be added</remarks>
</Docs>
</Member>
+ <Member MemberName="LoadFromResource">
+ <MemberSignature Language="C#" Value="public static Gdk.PixbufAnimation
LoadFromResource (string resource);" />
+ <MemberType>Method</MemberType>
+ <ReturnValue>
+ <ReturnType>Gdk.PixbufAnimation</ReturnType>
+ </ReturnValue>
+ <Parameters>
+ <Parameter Name="resource" Type="System.String" />
+ </Parameters>
+ <Docs>
+ <summary>Loads a pixbuf from a resource file.</summary>
+ <param name="resource">the name of the resource</param>
+ <returns>a <see cref="T:Gdk.PixbufAnimation" /></returns>
+ <remarks>
+ This loads an animation from a resource in the calling assembly.
This is equivalent to
+ using the <see
cref="C:Gdk.PixbufAnimation(System.Reflection.Assembly, System.String)" />
+ constructor with a <see langword="null" /> assembly.
+ </remarks>
+ </Docs>
+ </Member>
+ <Member MemberName=".ctor">
+ <MemberSignature Language="C#" Value="public PixbufAnimation
(System.IO.Stream stream);" />
+ <MemberType>Constructor</MemberType>
+ <ReturnValue />
+ <Parameters>
+ <Parameter Name="stream" Type="System.IO.Stream" />
+ </Parameters>
+ <Docs>
+ <summary>Makes a new animation object from a <see
cref="T:System.IO.Stream" />.</summary>
+ <param name="stream">a <see cref="T:System.IO.Stream" /></param>
+ <returns>a <see cref="T:Gdk.PixbufAnimation" /></returns>
+ <remarks>Useful for creating an animation from an image file that
resides in memory.
+
+<example>
+ <code lang="C#">
+/* buffer containing an image */
+System.Byte[] buffer = new System.Byte[256];
+
+/* create a memory stream to the buffer */
+System.IO.MemoryStream memorystream = new System.IO.MemoryStream(buffer);
+
+/* create an animation from the stream as if it was a file */
+Gdk.PixbufAnimation pba = new Gdk.PixbufAnimation(memorystream);
+ </code>
+ </example></remarks>
+ </Docs>
+ </Member>
+ <Member MemberName=".ctor">
+ <MemberSignature Language="C#" Value="public PixbufAnimation
(System.Reflection.Assembly assembly, string resource);" />
+ <MemberType>Constructor</MemberType>
+ <ReturnValue />
+ <Parameters>
+ <Parameter Name="assembly" Type="System.Reflection.Assembly" />
+ <Parameter Name="resource" Type="System.String" />
+ </Parameters>
+ <Docs>
+ <summary>Constructor for images embedded in an assembly</summary>
+ <param name="assembly">The <see cref="T:System.Reflection.Assembly" />
that contains the image.
+<para>
+If the value is <see langword="null" />, the image will be looked up on the
calling assembly.</para></param>
+ <param name="resource">The name given as the resource in the
assembly</param>
+ <returns>The <see cref="T:Gdk.PixbufAnimation" /> created from the
resource stream</returns>
+ <remarks>
+ <para>
+ This method is used to construct a <see cref="T:Gdk.PixbufAnimation" />
from an embedded resource in an assembly.
+</para>
+ <para>
+ Typically this is used when application developers want to distribute
images in a single executable.
+</para>
+
+If the assembly parameter is <see langword="null" />, the image will be
looked up on the calling assembly.
+
+<para>
+For example:
+</para><example>
+ <code lang="C#">
+Gdk.PixbufAnimation p = new PixbufAnimation (null, "anim.gif");
+ </code>
+ </example><para>Compile with:</para><example>
+ <code lang="Compilation">
+mcs -resource:anim.gif sample.cs
+ </code>
+ </example></remarks>
+ </Docs>
+ </Member>
</Members>
</Type>
\ No newline at end of file
Modified: trunk/gtk-sharp/doc/en/Gdk/PixbufLoader.xml
===================================================================
--- trunk/gtk-sharp/doc/en/Gdk/PixbufLoader.xml 2005-04-01 14:27:58 UTC (rev
42462)
+++ trunk/gtk-sharp/doc/en/Gdk/PixbufLoader.xml 2005-04-01 14:54:12 UTC (rev
42463)
@@ -450,5 +450,58 @@
<remarks>To be added</remarks>
</Docs>
</Member>
+ <Member MemberName="LoadFromResource">
+ <MemberSignature Language="C#" Value="public static Gdk.PixbufLoader
LoadFromResource (string resource);" />
+ <MemberType>Method</MemberType>
+ <ReturnValue>
+ <ReturnType>Gdk.PixbufLoader</ReturnType>
+ </ReturnValue>
+ <Parameters>
+ <Parameter Name="resource" Type="System.String" />
+ </Parameters>
+ <Docs>
+ <summary>Loads a pixbuf from a resource file.</summary>
+ <param name="resource">the name of the resource</param>
+ <returns>a <see cref="T:Gdk.PixbufLoader" /></returns>
+ <remarks>
+ This creates a pixbuf loader to load from a resource in the calling
assembly.
+ This is equivalent to using the
+ <see cref="C:Gdk.PixbufLoader(System.Reflection.Assembly,
System.String)" />
+ constructor with a <see langword="null" /> assembly.
+ </remarks>
+ </Docs>
+ </Member>
+ <Member MemberName=".ctor">
+ <MemberSignature Language="C#" Value="public PixbufLoader
(System.IO.Stream stream);" />
+ <MemberType>Constructor</MemberType>
+ <ReturnValue />
+ <Parameters>
+ <Parameter Name="stream" Type="System.IO.Stream" />
+ </Parameters>
+ <Docs>
+ <summary>Loads a Pixbuf from a <see cref="T:System.IO.Stream"
/>.</summary>
+ <param name="stream">a <see cref="T:System.IO.Stream" /></param>
+ <returns>a <see cref="T:Gdk.PixbufLoader" /></returns>
+ <remarks>See also <see cref="C:Gdk.Pixbuf(System.IO.Stream)"
/></remarks>
+ </Docs>
+ </Member>
+ <Member MemberName=".ctor">
+ <MemberSignature Language="C#" Value="public PixbufLoader
(System.Reflection.Assembly assembly, string resource);" />
+ <MemberType>Constructor</MemberType>
+ <ReturnValue />
+ <Parameters>
+ <Parameter Name="assembly" Type="System.Reflection.Assembly" />
+ <Parameter Name="resource" Type="System.String" />
+ </Parameters>
+ <Docs>
+ <summary>Loads a Pixbuf embedded in an assembly</summary>
+ <param name="assembly">The <see cref="T:System.Reflection.Assembly" />
that contains the image.
+<para>
+If the value is <see langword="null" />, the image will be looked up on the
calling assembly.</para></param>
+ <param name="resource">The name given as the resource in the
assembly</param>
+ <returns>a <see cref="T:Gdk.PixbufLoader" /> for the resource
stream</returns>
+ <remarks>See also <see
cref="C:Gdk.Pixbuf(System.Reflection.Assembly,System.String)" /></remarks>
+ </Docs>
+ </Member>
</Members>
-</Type>
+</Type>
\ No newline at end of file
Modified: trunk/gtk-sharp/doc/en/Gtk/Image.xml
===================================================================
--- trunk/gtk-sharp/doc/en/Gtk/Image.xml 2005-04-01 14:27:58 UTC (rev
42462)
+++ trunk/gtk-sharp/doc/en/Gtk/Image.xml 2005-04-01 14:54:12 UTC (rev
42463)
@@ -445,7 +445,7 @@
</ReturnValue>
<Docs>
<summary>The type of representation being used by the
- <see cref="T:Gtk.Image"/>
+ <see cref="T:Gtk.Image" />
to store image data. If the Image has no image data,
the return value will be <see cref="P:Gtk.ImageType.Empty" />.
</summary>
@@ -580,10 +580,11 @@
<Parameter Name="mask" Type="Gdk.Pixmap" />
</Parameters>
<Docs>
- <summary>Same functionality as <see
cref="M:Gtk.Image.SetFromImage"/>.</summary>
+ <summary>Same functionality as <see cref="M:Gtk.Image.SetFromImage"
/>.</summary>
<param name="val">a <see cref="T:Gdk.Image" /></param>
<param name="mask">a <see cref="T:Gdk.Pixmap" /></param>
- <remarks></remarks>
+ <remarks>
+ </remarks>
</Docs>
</Member>
<Member MemberName="Get">
@@ -598,15 +599,15 @@
</Parameters>
<Docs>
<summary>
- Gets the <see cref="T:Gdk.Image"/> and mask being
- displayed by the <see cref="T:Gtk.Image"/>.
+ Gets the <see cref="T:Gdk.Image" /> and mask being
+ displayed by the <see cref="T:Gtk.Image" />.
</summary>
<param name="val">a <see cref="T:Gdk.Image" /></param>
<param name="mask">a <see cref="T:Gdk.Pixmap" /></param>
<remarks>
The storage type of the image must be
- <see cref="T:Gtk.ImageType.Empty"/>.
- or <see cref="T:Gtk.ImageType.Image"/>.
+ <see cref="T:Gtk.ImageType.Empty" />.
+ or <see cref="T:Gtk.ImageType.Image" />.
(see <see cref="P:Gtk.Image.StorageType" />).
</remarks>
</Docs>
@@ -683,5 +684,67 @@
</remarks>
</Docs>
</Member>
+ <Member MemberName="LoadFromResource">
+ <MemberSignature Language="C#" Value="public static Gtk.Image
LoadFromResource (string resource);" />
+ <MemberType>Method</MemberType>
+ <ReturnValue>
+ <ReturnType>Gtk.Image</ReturnType>
+ </ReturnValue>
+ <Parameters>
+ <Parameter Name="resource" Type="System.String" />
+ </Parameters>
+ <Docs>
+ <summary>Loads an image from a resource file.</summary>
+ <param name="resource">the name of the resource</param>
+ <returns>a <see cref="T:Gtk.Image" /></returns>
+ <remarks>
+ This load an image from a resource in the calling assembly. This is
+ equivalent to using the
+ <see cref="C:Gtk.Image(System.Reflection.Assembly, System.String)"
/>
+ constructor with a <see langword="null" /> assembly.
+ </remarks>
+ </Docs>
+ </Member>
+ <Member MemberName=".ctor">
+ <MemberSignature Language="C#" Value="public Image (System.IO.Stream
stream);" />
+ <MemberType>Constructor</MemberType>
+ <ReturnValue />
+ <Parameters>
+ <Parameter Name="stream" Type="System.IO.Stream" />
+ </Parameters>
+ <Docs>
+ <summary>Loads an image from a <see cref="T:System.IO.Stream"
/>.</summary>
+ <param name="stream">a <see cref="T:System.IO.Stream" /></param>
+ <returns>a <see cref="T:Gtk.Image" /></returns>
+ <remarks>
+ This is equivalent to calling <see
cref="C:Gdk.Pixbuf(System.IO.Stream)" />
+ or <see cref="C:Gdk.PixbufAnimation(System.IO.Stream)" /> and then
creating
+ an <see cref="T:Gtk.Image" /> from the resulting pixbuf.
+ </remarks>
+ </Docs>
+ </Member>
+ <Member MemberName=".ctor">
+ <MemberSignature Language="C#" Value="public Image
(System.Reflection.Assembly assembly, string resource);" />
+ <MemberType>Constructor</MemberType>
+ <ReturnValue />
+ <Parameters>
+ <Parameter Name="assembly" Type="System.Reflection.Assembly" />
+ <Parameter Name="resource" Type="System.String" />
+ </Parameters>
+ <Docs>
+ <summary>Loads an image embedded in an assembly</summary>
+ <param name="assembly">The <see cref="T:System.Reflection.Assembly" />
that contains the image.
+<para>
+If the value is <see langword="null" />, the image will be looked up on the
calling assembly.</para></param>
+ <param name="resource">The name given as the resource in the
assembly</param>
+ <returns>a <see cref="T:Gtk.Image" /></returns>
+ <remarks>
+ This is equivalent to calling
+ <see cref="C:Gdk.Pixbuf(System.Reflection.Assembly,System.String)"
/> or
+ <see
cref="C:Gdk.PixbufAnimation(System.Reflection.Assembly,System.String)" />
+ and then creating an <see cref="T:Gtk.Image" /> from the resulting
pixbuf.
+ </remarks>
+ </Docs>
+ </Member>
</Members>
-</Type>
+</Type>
\ No newline at end of file
Modified: trunk/gtk-sharp/gdk/Makefile.am
===================================================================
--- trunk/gtk-sharp/gdk/Makefile.am 2005-04-01 14:27:58 UTC (rev 42462)
+++ trunk/gtk-sharp/gdk/Makefile.am 2005-04-01 14:54:12 UTC (rev 42463)
@@ -41,6 +41,7 @@
Keymap.custom \
Pixmap.custom \
Pixbuf.custom \
+ PixbufAnimation.custom \
PixbufLoader.custom \
Pixdata.custom \
Point.custom \
Modified: trunk/gtk-sharp/gdk/Pixbuf.custom
===================================================================
--- trunk/gtk-sharp/gdk/Pixbuf.custom 2005-04-01 14:27:58 UTC (rev 42462)
+++ trunk/gtk-sharp/gdk/Pixbuf.custom 2005-04-01 14:54:12 UTC (rev 42463)
@@ -92,54 +92,20 @@
gdk_pixbuf_render_to_drawable_alpha(Handle,
drawable.Handle, src_x, src_y, dest_x, dest_y, width, height, (int) alpha_mode,
alpha_threshold, (int) dither, x_dither, y_dither);
}
- [DllImport("libgobject-2.0-0.dll")]
- static extern void g_object_ref (IntPtr handle);
+ public Pixbuf (System.IO.Stream stream) : base (new
PixbufLoader (stream).PixbufHandle) {}
- private void LoadFromStream (System.IO.Stream input)
- {
- PixbufLoader loader = new PixbufLoader ();
- byte [] buffer = new byte [8192];
- int n;
-
- while ((n = input.Read (buffer, 0, 8192)) != 0)
- loader.Write (buffer, (uint) n);
-
- loader.Close ();
- Raw = loader.PixbufHandle;
- if (Raw == IntPtr.Zero)
- throw new ArgumentException ("Unable to load
pixbuf from stream");
- g_object_ref (Raw);
- }
-
- public Pixbuf (System.IO.Stream stream) : base (IntPtr.Zero)
- {
- LoadFromStream (stream);
- }
-
public Pixbuf (System.Reflection.Assembly assembly, string
resource) : base (IntPtr.Zero)
{
if (assembly == null)
assembly =
System.Reflection.Assembly.GetCallingAssembly ();
-
- if (resource == null)
- throw new ArgumentNullException ("resource");
-
- System.IO.Stream s = assembly.GetManifestResourceStream
(resource);
- if (s == null)
- throw new ArgumentException ("resource must be
a valid resource name of 'assembly'.");
-
- LoadFromStream (s);
+ Raw = new PixbufLoader (assembly,
resource).PixbufHandle;
}
static public Pixbuf LoadFromResource (string resource)
{
- if (resource == null)
- throw new ArgumentNullException ("resource");
-
return new Pixbuf
(System.Reflection.Assembly.GetCallingAssembly (), resource);
}
-
[DllImport("libgdk_pixbuf-2.0-0.dll")]
static extern IntPtr gdk_pixbuf_scale_simple(IntPtr raw, int
dest_width, int dest_height, int interp_type);
Added: trunk/gtk-sharp/gdk/PixbufAnimation.custom
===================================================================
--- trunk/gtk-sharp/gdk/PixbufAnimation.custom 2005-04-01 14:27:58 UTC (rev
42462)
+++ trunk/gtk-sharp/gdk/PixbufAnimation.custom 2005-04-01 14:54:12 UTC (rev
42463)
@@ -0,0 +1,33 @@
+// PixbufAnimation.custom - GdkPixbufAnimation class customizations
+//
+// Copyright (c) 2005 Novell, Inc.
+//
+// This code is inserted after the automatically generated code.
+//
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of version 2 of the Lesser GNU General
+// Public License as published by the Free Software Foundation.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this program; if not, write to the
+// Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+// Boston, MA 02111-1307, USA.
+
+ public PixbufAnimation (System.IO.Stream stream) : base (new
PixbufLoader (stream).AnimationHandle) {}
+
+ public PixbufAnimation (System.Reflection.Assembly assembly,
string resource) : base (IntPtr.Zero)
+ {
+ if (assembly == null)
+ assembly =
System.Reflection.Assembly.GetCallingAssembly ();
+ Raw = new PixbufLoader (assembly,
resource).AnimationHandle;
+ }
+
+ static public PixbufAnimation LoadFromResource (string resource)
+ {
+ return new PixbufAnimation
(System.Reflection.Assembly.GetCallingAssembly (), resource);
+ }
Modified: trunk/gtk-sharp/gdk/PixbufLoader.custom
===================================================================
--- trunk/gtk-sharp/gdk/PixbufLoader.custom 2005-04-01 14:27:58 UTC (rev
42462)
+++ trunk/gtk-sharp/gdk/PixbufLoader.custom 2005-04-01 14:54:12 UTC (rev
42463)
@@ -21,14 +21,60 @@
// Free Software Foundation, Inc., 59 Temple Place - Suite 330,
// Boston, MA 02111-1307, USA.
+ [DllImport("libgobject-2.0-0.dll")]
+ static extern IntPtr g_object_ref (IntPtr handle);
+
internal IntPtr PixbufHandle {
get {
- return gdk_pixbuf_loader_get_pixbuf (Handle);
+ return g_object_ref
(gdk_pixbuf_loader_get_pixbuf (Handle));
}
}
+ internal IntPtr AnimationHandle {
+ get {
+ return g_object_ref
(gdk_pixbuf_loader_get_animation (Handle));
+ }
+ }
+
public bool Write (byte[] bytes)
{
return this.Write (bytes, (uint) bytes.Length);
}
+ private void LoadFromStream (System.IO.Stream input)
+ {
+ byte [] buffer = new byte [8192];
+ int n;
+
+ while ((n = input.Read (buffer, 0, 8192)) != 0)
+ Write (buffer, (uint) n);
+ Close ();
+ }
+
+ public PixbufLoader (System.IO.Stream stream) : this ()
+ {
+ LoadFromStream (stream);
+ }
+
+ public PixbufLoader (System.Reflection.Assembly assembly,
string resource) : this ()
+ {
+ if (assembly == null)
+ assembly =
System.Reflection.Assembly.GetCallingAssembly ();
+
+ if (resource == null)
+ throw new ArgumentNullException ("resource");
+
+ System.IO.Stream s = assembly.GetManifestResourceStream
(resource);
+ if (s == null)
+ throw new ArgumentException ("'" + resource +
"' is not a valid resource name of assembly '" + assembly + "'.");
+
+ LoadFromStream (s);
+ }
+
+ static public PixbufLoader LoadFromResource (string resource)
+ {
+ if (resource == null)
+ throw new ArgumentNullException ("resource");
+
+ return new PixbufLoader
(System.Reflection.Assembly.GetCallingAssembly (), resource);
+ }
Modified: trunk/gtk-sharp/gtk/Image.custom
===================================================================
--- trunk/gtk-sharp/gtk/Image.custom 2005-04-01 14:27:58 UTC (rev 42462)
+++ trunk/gtk-sharp/gtk/Image.custom 2005-04-01 14:54:12 UTC (rev 42463)
@@ -54,3 +54,37 @@
GLib.Marshaller.Free (native);
}
+ void LoadFromStream (System.IO.Stream stream)
+ {
+ try {
+ Gdk.PixbufAnimation anim = new
Gdk.PixbufAnimation (stream);
+ if (anim.IsStaticImage)
+ Pixbuf = anim.StaticImage;
+ else
+ PixbufAnimation = anim;
+ } catch {
+ Stock = Gtk.Stock.MissingImage;
+ }
+ }
+
+ public Image (System.IO.Stream stream) : this ()
+ {
+ LoadFromStream (stream);
+ }
+
+ public Image (System.Reflection.Assembly assembly, string
resource) : this ()
+ {
+ if (assembly == null)
+ assembly =
System.Reflection.Assembly.GetCallingAssembly ();
+
+ System.IO.Stream s = assembly.GetManifestResourceStream
(resource);
+ if (s == null)
+ throw new ArgumentException ("'" + resource +
"' is not a valid resource name of assembly '" + assembly + "'.");
+
+ LoadFromStream (s);
+ }
+
+ static public Image LoadFromResource (string resource)
+ {
+ return new Image
(System.Reflection.Assembly.GetCallingAssembly (), resource);
+ }
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches