Code Monkey home page Code Monkey logo

Comments (6)

cwensley avatar cwensley commented on July 20, 2024

Eto.Forms actually targets more than just one API - it targets GTK#, Windows Forms, WPF, iOS, and like the above project(s), MonoMac.. I believe the goal of MonoMac.Windows.Form is to bridge the Windows Forms API to MonoMac alone.

There's also mono's xwt project which is pretty much a complete duplicate of what Eto.Forms already does, but it is not currently usable.

from eto.

mojo2012 avatar mojo2012 commented on July 20, 2024

Why not merge both projects? Did you try to contact the mono xwt maintainer? (miguel de icaza?)

from eto.

cwensley avatar cwensley commented on July 20, 2024

I've talked with Miguel a bit about this - they seem to be on their own (irreversible) path, nor thinking about things like mobile development.. I can't say what's going to happen in the future, but at the moment Eto.Forms is the only one that's currently usable on the big three platforms (GTK#, WinForms, MonoMac), and now very usable and almost complete with WPF.

from eto.

mojo2012 avatar mojo2012 commented on July 20, 2024

What's the status on the MonoMac implementation?

Currently I'm exploring the potential of a "raw" MonoMac driven project and I have to admit, that - though at the beginning I was very excited - it is far from being usable from a Windows Forms (and even GTK+) programmer's view.

So many things that are already provided by WinForms are missing Cocoa and MonoMac (by design).

I think I'll check out this project - maybe it's what I need. Btw, do you always want to provide the smallest common denominator, or would it be ok, if the mac port would have more or different features as the other ports?
If I go for Eto.forms then most certainly I will make my own modifications, e.g. Header Cells in NSOutlineView (SectionList?)

I'd provide the changes if you want.

from eto.

cwensley avatar cwensley commented on July 20, 2024

The MonoMac implementation is just as complete as GTK# and WinForms implementation(s). I currently sell my MonoMac version of PabloDraw on the Mac App Store, so that might give you an indication of it's completeness.

That's not to say that you won't run into a few issues or something that is missing that you are looking for, but it is typically a very quick turnaround to get those fixed or added (if it isn't a major feature).

If you want to do your own modifications specific to your app, you can already do that in your own source to supplement the Eto.Forms code (via Styles, or write your own custom widget/handler combo). Given the lowest common denominator 'problem', I wanted to ensure that you can still take advantage of each platform's capabilities if you so choose.

If you are mainly interested in the MonoMac port and want to add more functionality to it, that would be extremely helpful. I can port to the other platforms. If it can't be ported, we can at least add that functionality as a sample in the Eto.Test application of what you can do to enhance a specific platform.

from eto.

mojo2012 avatar mojo2012 commented on July 20, 2024

I keep you informed about my progress and possible changes/change requests.

from eto.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.