3 .\" (C) 2007 Novell, Inc.
5 .\" Miguel de Icaza (miguel@gnu.org)
7 .de Sp \" Vertical space (when we can't use .PP)
11 .TH mopen "Mono 1.2, Moonlight 1.0"
13 mopen, mopen1 \- Application launcher (including Mono, Moonlight and Silverlight).
16 .B mopen [options] file [arguments...]
18 The \fImopen\fP command is a tool to open applications, XAML files or
19 packages that contains executables, images and other resources in a
20 directory, it is designed to launch Silverligh 2.0 applications. For
21 testing only 1.0 applications use the \fImopen1\fP command.
23 In addition to launching these applications, it is possible to run
24 multiple applications using the same Mono virtual machine. This is
25 useful for example if you want to run a collection of small
26 applications, gadgets or widgets and do not want to pay the price of
27 memory consumption of running one entire virtual machine for every
28 application. This is achieved by using Mono Application Domains: the
29 equivalent to processes within a Mono virtual machine, and it is the
30 same infrastructure used by ASP.NET applications to run multiple
31 isolated applications in the same virtual machine.
33 In its simplest incarnation, you can open a XAP file like this:
36 $ mopen /opt/myapp/test.xap
39 This will load the test.xap file which is a self-contained Silverlight
42 It is possible to also load 1.0-style Silverlight applications
43 by passing it a XAML file and using the \fImopen1\FP command instead:
45 $ mopen1 /opt/myapp/test.xaml
47 This will laod the xaml file and all of the dependencies it might have
48 from the directory where test.xaml is located.
50 mopen also supports launching these applications if they are contained
51 in a directory thta is on the PATH and such directory contains a file
52 called "default.xaml" or "main.exe".
54 In the case of applications that start up from XAML, the default
55 size of the window will be the one specified for the Canvas unless the
56 --geometry option has been used
58 With this configuration it is possible to have entire applications
59 that are packaged in a directory and can be deployed and copied by
60 copying the entire directory (drag and dropping the directory, using
61 cp -a, or any other mechanism to copy a directory).
63 The following options are available:
66 Passes the flag --debug to the Mono runtime, enabling a line numbers
67 and a couple of other debugging features.
70 This starts up Mono with gdb and prints out the command that you
71 should use to debug mopen. This is useful when debugging XAML files
72 that cause problems with Moonlight.
75 Turns on desklet mode. In this mode the window decoration is not
76 shown and the default rendering mode will enable alpha transparency.
77 This means that anything painted with an alpha channel will be
81 Makes the toplevel window fixed, prevents the user from resizing it.
83 .I "--geometry=GEO", "-g GEO"
84 Sets the geometry of the window to be GEO, the format for this is
85 WIDTHxHEIGH where WIDTH and HEIGHT are integers, for example:
93 Loads the application into the host identified by NAME. If no host
94 is specified this application is loaded into its own virtual machine
95 and can not be shared with others.
98 Triggers one by one all the named Storyboards in the given XAML file
99 when you click on the canvas surface.
101 .I "--parseonly", "--parse-only"
102 Parse the XAML file but does not open a window. Useful for testing.
105 Runs the storyboard named N1 when the mouse is clicked (this is the
106 x:Name property on the XAML file). The storyboard playback will cycle
107 if you keep clicking. You can use it like this:
110 mopen --story FadeIn demo.xaml
111 mopen --story FadeIn,FadeOut demo.xaml
112 mopen --story FadeIn --story FadeOut demo.xaml
114 .I "--transparent", "-t"
115 Enables the alpha channel on the rendering surface. Any areas that
116 are rendered with non-opaque values will be properly composited
117 against the underlying background by the system compositing manager.
120 Close the mopen window after X seconds. Useful for testing.
121 .SH SHARING A VIRTUAL MACHINE
123 To load multiple independent applications into a single virtual
124 machine (the virtual machine will isolate each application from each
125 other using Application Domains, or AppDomains) you use the --host
126 option with the name of the domain where you want to load your
129 For example, if you wanted to load various desktop gadgets on a single
130 process, you would load them like this:
133 mopen --host desktop calendar
134 mopen --host desktop stocktracker
135 mopen --host desktop flicker-best-images
136 mopen --host desktop cute-clock
139 You could load a separate set of programs on another VM, for example
140 while developing code that might be unstable:
143 mopen --host devel mytestapp
147 To load a desklet, you would use:
150 mopen --desklet mydesklet
154 When a file is specified, if it exists on the current directory, that
155 one is loaded, otherwise directories on the PATH are searched and if
156 they contain the file
160 Those are loaded and launched
162 Mailing lists are listed at the
163 http://www.mono-project.com/Mailing_Lists
165 In addition Moonlight is discussed in the "Olive" group:
166 http://groups.google.com/group/mono-olive
168 http://www.mono-project.com