picoe / Eto

Cross platform GUI framework for desktop and mobile applications in .NET
Other
3.52k stars 319 forks source link

Add MDI child window support. #1408

Open Shadowblitz16 opened 5 years ago

Shadowblitz16 commented 5 years ago

Is there a way to do mdi child windows? what I mean by this is having a area where I can have multiple child windows open at once?

here is a example of it in a program called smbx38a image

cwensley commented 5 years ago

No, there is no MDI functionality in Eto, but you could probably do this using a Drawable and PixelLayout if you want something that works like that. It is complicated as there is no concept of MDI (in this way) on macOS, it uses tabs and/or multiple windows. I have put thought into how to map MDI but it just hasn't been requested enough for me to look any further at this point.

An option is to use the DocumentControl which allows for closable tabs, but no child windows like you describe.

Thanks for submitting the issue! I'll rename this to MDI support and use it to keep track of this feature request if others are looking for the same thing.

cwensley commented 5 years ago

This feature should add full native MDI to the platforms that support it. For example, on macOS it should map to the NSDocument infrastructure so it can take advantage of native capabilities.

Shadowblitz16 commented 5 years ago

awesome I am looking forward to this :D

Shadowblitz16 commented 5 years ago

@cwensley I think mdi forms should be just be a mdi container in which you can add user controls to it. I dislike the idea of having to put the user control inside a mdi child inside a mdi container.

removing the mdi child step make it easier.

Shadowblitz16 commented 3 years ago

@cwensley is this going to be implimented?

Shadowblitz16 commented 2 years ago

@cwensley found this for linux... https://github.com/thomasfuhringer/gtkmdi