1

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?

luiscubal
  • 24,773
  • 9
  • 57
  • 83
  • How did this project turn out for you? Did you end up using GTK#? Myself, I got stuck trying to size floating forms with QuickSharp: http://stackoverflow.com/questions/16290541/quicksharp-set-floating-form-size. GTK# looks interesting - was it easy to implement? – bgmCoder Apr 30 '13 at 21:12

3 Answers3

3

It is possible to disable all PInvoke to Win32 API when running on Mono. The price you pay is to lose drag and drop support on Mono/Linux, which may be acceptable in some cases.

Edited: http://www.lextm.com/2012/05/a-call-to-the-community-dockpanel-suite-history-and-future-2/ A fork of DPS is now hosted on GitHub, http://github.com/dockpanelsuite/dockpanelsuite

Lex Li
  • 60,503
  • 9
  • 116
  • 147
1

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
  • 750
  • 3
  • 6
  • 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 Jan 29 '09 at 11:17
  • 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 Jan 29 '09 at 22:02
0

GTK# looks nice, but involving, and there is a learning curve. Myself, I tried QuickSharp, but couldn't find support anywhere, and the weifenluo docking system lacked a few features and was difficult to implement form sizes.

I ended up going with [dockDotNet][1] which allows for a minimumsize parameter, and is very easy to work with. You can set nearly all the floated form properties right there with the property manager - even setting the form icon!

bgmCoder
  • 6,205
  • 8
  • 58
  • 105