[Ironruby-core] using custom controls with gestalt

Jimmy Schementi
Tue, 26 Jan 2010 05:32:01 -0000

Mark,

Putting the dlls in the XAP is one way to do it. You could also put them into a
ZIP file, and in your app download the zip file and use Silverlight''s
Application.GetResourceStream API to extract the DLLs from the file, and call
Assembly.Load on them. However, this is a bit annoying, so we support doing
this:

<script type="application/zip"
src="foo.zip">
require
''foo.zip/foo.dll''

This lets you put files in a zip, and then access them like they were part of
the "filesystem". However, I just tried this and I found a bug, so
I''ll check in a fix and let you know when it''s fixed.

~Jimmy

> -----Original Message-----
> From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-
> bounces at rubyforge.org] On Behalf Of Mark Ryall
> Sent: Monday, January 25, 2010 7:12 PM
> To: ironruby-core at rubyforge.org
> Subject: Re: [Ironruby-core] using custom controls with gestalt
>
> In case anyone is curious - I got this to work by putting the
> Microsoft.Maps.MapControl.dll and Microsoft.Maps.MapControl.Common.dll
> assemblies directly into the DLR.xap file.
>
> This doesn''t seem ideal - the slvx approach ensures that
silverlight
> applications can avoid downloading command dependencies such as IronRuby,
> IronPython etc. once for every application.
>
> It''s functional enough to show how easily silverlight applications
can be
> created without needing an ide or a compiler.
>
> Mark.
>
> On Mon, Jan 25, 2010 at 7:17 PM, Mark Ryall <mark.ryall at gmail.com>
wrote:
> > I''m preparing some demos of using silverlight+ironruby with
gestalt.
> >
> > It''s really impressive but i''d like to show an
example using the bing
> > map control but can''t work out how to make external controls
> > available.
> >
> > Here''s what I thought I should do:
> >
> > * Created a Microsoft.Maps.slvx containing the
> > Microsoft.Maps.MapControl.dll and Microsoft.Maps.MapControl.Common.dll
> > * Cracked open the dlr.xap file and added <ExtensionPart
> > Source="Microsoft.Maps.slvx" /> to the manifest and
packaged it up
> > again
> >
> > The browser had cached dlr.xap which confused me for a while but I can
> > now see the Microsoft.Maps.slvx is getting downloaded (i''m
using my
> > own little webserver tool - http://bitbucket.org/markryall/webshare/)
> > but none of the classes seem to be available.
> >
> > Can anyone see what''s missing?
> >
> > I''d also like to demo using silverlight 4 - does anyone know
if
> > changes are required to the gestalt dlr.js, dlr.xap etc. to use the
> > new features (camera control etc.)?
> >
> > Mark.
> >