[Mono-osx] How to hide mono and windows form in Mac Dock
d_v
dan.vandermolen at figpsoft.com
Thu Feb 5 10:53:46 EST 2009
d_v wrote:
>
>
>
> Sandy Armstrong wrote:
>>
>> On 02/05/2009 05:29 AM, d_v wrote:
>>>
>>>
>>> Sandy Armstrong wrote:
>>>> On 02/04/2009 01:16 PM, d_v wrote:
>>>>> Hi there,
>>>>>
>>>>> I figure I can not run my C# 2.0 .NET Windows Service on mono, so I am
>>>>> running the equivalent Windows Form (application) on mono.
>>>>>
>>>>> However the script editor, mono, and sometiimes the form (windows
>>>>> state
>>>>> is
>>>>> set to minimized) are all visible in the Dock. I use a script to
>>>>> launch
>>>>> mono and the .exe.
>>>>>
>>>>> What do you advise is the best way to hide these programs from the
>>>>> Dock?
>>>>> I am hoping for a manual way to do this and maybe a way to do it in
>>>>> setup/or
>>>>> code so I do not have to bother the user with setting this up.
>>>> Make a Mac app bundle. Download the OS X versions of MonoDevelop,
>>>> Banshee, or Tomboy for examples of how this is done. These are all
>>>> gtk#
>>>> apps, but I don't see why it wouldn't work with winforms apps.
>>>>
>>>> By the way, there's a mono-osx list that might be more helpful with
>>>> future Mac questions.
>>>>
>>>> Best,
>>>> Sandy
>>>> _______________________________________________
>>>> Mono-osx mailing list
>>>> Mono-osx at lists.ximian.com
>>>> http://lists.ximian.com/mailman/listinfo/mono-osx
>>>>
>>>>
>>>
>>>
>>> Thanks for the tip.
>>> So I started looking up "Mac bundles" and I found this link:
>>> http://www.mono-project.com/Guide:Running_Mono_Applications and a
>>> section at
>>> the very end called "Macpack, Mac OS X only"
>>>
>>> Is this the way I do it? But I am not using cocoa sharp...
>>
>> I don't personally know. Banshee has some stuff integrated in their
>> makefiles. When I make my bundles for Tomboy and Tasque I use a little
>> script:
>>
>> http://svn.gnome.org/viewvc/tomboy/trunk/bundle-mac-app.sh?view=markup
>>
>> Notice that in SVN I keep a "skeleton" of the .app hierarchy (in a
>> directory called "osx"). Then I just copy the skeleton and the binaries
>> to the right folder.
>>
>> You can right-click any app and "Show Package Contents" to get an idea
>> of how things are laid out, too.
>>
>> Sandy
>> _______________________________________________
>> Mono-osx mailing list
>> Mono-osx at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-osx
>>
>>
>
>
> Thanks Sandy,
>
> This creates a bundle for me nicley (Now it hides the apple script form
> the Dock, but I still can't hide mono and my application from the Mac OS X
> 10.5.6 dock).
>
> http://code.google.com/p/cocoa-sharp-dev/wiki/WinFormsTutorial (macpack
> tutorial)
>
> Terminal command to build a Mac OS X bundle with Macpack:
> macpack -n:MyApp -a: MyApp.exe -o:. -m:1
>
> This will create a Mac bundle and optionally (-r) copy your DLLs and
> support files to the Resources subfolder in the package. The new bundle
> can be launched by double-clicking on it in the finder. The finder reads
> the directory tree and realizes that it is really an App and treats the
> bundle like a single file. If you want to explore the subdirectory, you
> need to right click (or Ctrl-click for single button mice) and select
> "Show Package Contents".
>
> Ensure all DLLs and support files (.exe.config) are in the Resources
> folder. Note: that if you are using
> System.Reflection.Assembly.GetExecutingAssembly().Location code in C#
> code, it will now point to the bundle name by default, not the .exe name,
> so save the bundle with the same root name as the .exe (you can rename the
> bundle later or try the Info.plist file).
>
>
> This is what my Info.plist file looks like:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
> "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
> <plist version="1.0">
> <dict>
> <key>CFBundleIdentifier</key>
> <string>MyApp</string>
> <key>CFBundleExecutable</key>
> <string>MyApp</string>
> <key>CFBundleIconFile</key>
> <string></string>
> <key>NSUIElement</key>
> <string>1</string>
> </dict>
> </plist>
>
>
I also can not set the icon for mono or my application either with this
Info.plist setup.
I copied an existing Mac icon to the Resources folder in my bundle, but no
luck. I figure if I can't hide the icons in the dock I may as well show a
useful icon.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleIdentifier</key>
<string>MyApp</string>
<key>CFBundleExecutable</key>
<string>MyApp</string>
<key>CFBundleIconFile</key>
<string>iDVD.icns</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>NSUIElement</key>
<string>1</string>
</dict>
</plist>
--
View this message in context: http://www.nabble.com/How-to-hide-mono-and-windows-form-in-Mac-Dock-tp21839765p21854209.html
Sent from the Mono - OSX mailing list archive at Nabble.com.
More information about the Mono-osx
mailing list