[python] Why Eto and not WinForms or WPF?

Hi @eric.bunn,

Do you really need a modeless dialog? Or would a modal dialog work?

– Dale

I need to interact with items in the Rhino Window. For example selecting something. I’ve set up a userform using ShowModal and it locks me out of Rhino. The modeless UF allows me to do what I need to do but I have to close the form with the X. Any suggestions would be greatly appreciated.

Eric

@eric.bunn - have you seen this sample?

– Dale

1 Like

Dale,

I am not aware of this example. I downloaded it and this may work for me. I tried it with a GetObject and it worked fine. I’ll experiment with it, thank you so much.

Eric

Dale

Quick question.

The call: Rhino.UI.EtoExtensions.PushPickButton(self, self.OnPickPoint) calls the function OnPickPoint. It appears that the function allows you to run commands involving interaction with Rhino. That’s great. I’m curious though, can the function call a single command without it being wrapped within another function?

Eric

I’m sorry, but I don’t understand the question. Can you clarify what you want to do, or provide some code sample?

– Dale

I believe a lot of confusion is because:

  • Eto is an exotic framework

  • IronPython is an exotic framework

  • GUI creation on a scripting level is exotic

  • Mixing “Model” with “View” Logic is actually very bad practise

  • WPF and so Eto has a steep learning curve

  • Insufficent Code Editor

On the other hand, if you know how to create WPF or Forms Apps (or any other Win GUI Framework), then you will see that the Rhino part is much simpler to master, because the actual API interaction required, is small. But this means, I would start the other way around. Create an GUI within an own app/library and just learn how to invoke this from Rhino or any other Win32 App.( All you need for this is the App window handle, the dispatcher of the actual GUI Thread and some methods to interact with the apps model logic).

1 Like