views:

1983

answers:

3

I need a WeifenLuo replacement that'll run on both .NET and Mono, on Windows, Linux and Mac, preferrably licensed under the MIT license. I'd appreciate if the API was similar to WeifenLuo's, but I understand that such may not be available.

Also, since I couldn't find anything on Google, I believe this might not exist. In this case, I'd like some hints regarding how to implement this.

I have some(not much) Windows.Forms experience, and I must not use any P/Invoke. I already know out how to detect window motion and how to create a borderless translucent window on a given position and with a given size.

So here are some problems I am facing:

  1. WeifenLuo supports multiple left/right/top/bottom panes, allowing them to be resized and contain more than one panel.
  2. It also supports splittable tabs.

Is there anything else I should be aware of before starting? Are there similar open-source projects available?

+1  A: 

I have been wanting the same thing. I have been testing a basic layout system for win forms and found that the mono Mac version of WinForms is not 100% complete like drag and drop has not been implemented and is slow.

From my own searching GTK# has the best support across all platforms. The other way is to split the UI for each platform i.e. WinFoms, GTK# (linux) and Cocoa (cocoa#/monobjc).

Ben Martin
That brings another problem. Is there any docking library available for GTK# and Cocoa#? I know MonoDevelop has a docking system, but I had no luck making it standalone...
luiscubal
I haven't found anything yet. For the Mac it is not the way to do things. Check out MonoMate that uses the monobjc lib and has a basic tabbed document interface. I haven't used GTK# that much.
Ben Martin
A: 

hello, I would guide me in the process of how to install the DockPanel suite and with that version of Visual Studio supports ... Download the DockPanel DockPanel Suite 231 and Suite 231 source bin .. thanks

Carmen Serrano
+1  A: 

If you could afford some features removed from DPS, then we can use a lite version,

  1. Download catpaw_5.0_b2_bin.zip from http://sharpsnmplib.codeplex.com/releases/view/43006
  2. Extract and find the DPS assembly.
  3. In your project that use DPS, make sure that
this.dockPanel1.AllowEndUserDocking = false;
this.dockPanel1.AllowEndUserNestedDocking = false;

Such features require PInvoke to Win32 API, so it is not easy to port them to Mono/Linux.

Lex Li
http://www.lextm.com/2010/05/dockpanel-suite-tip-4-we-could-go-mono.html
Lex Li
Thanks. I'll investigate this a little further.
luiscubal