Should MDI be implemented on Linux?

Do you have a typical platform dependent issue you're battling with ? Ask it here. Make sure you mention your platform, compiler, and wxWidgets version.

Should MDI be implemented on Linux?

Yes
21
66%
No
11
34%
 
Total votes: 32

chadman
Experienced Solver
Experienced Solver
Posts: 70
Joined: Wed Mar 23, 2005 8:28 am

Should MDI be implemented on Linux?

Post by chadman »

I really feel (and I'm sure that many others feel the same way) that MDI is here to stay, and that it's good to have. Microsoft has a real advantage there. It's nice to be able to look at two windows in the same program at the same time.

What do you people think - should/could someone implement MDI with wxWidgets for Linux? I think it would be great if someone did...
leio
Can't get richer than this
Can't get richer than this
Posts: 802
Joined: Mon Dec 27, 2004 10:46 am
Location: Estonia, Tallinn
Contact:

Re: Should MDI be implemented on Linux?

Post by leio »

chadman wrote:I really feel (and I'm sure that many others feel the same way) that MDI is here to stay, and that it's good to have. Microsoft has a real advantage there. It's nice to be able to look at two windows in the same program at the same time.
MDI is here to leave. Microsoft itself has deprecated it (yet it sort-of uses it still).
MDI as in Mac is a different thing, and a good thing. It doesn't enforce document windows to be inside a parent frame, and that's good.
chadman wrote:What do you people think - should/could someone implement MDI with wxWidgets for Linux? I think it would be great if someone did...
Good luck with that. I tried it a bit on the X11 level, without much success.
Here I have in mind having frames inside another frame.
Mac alike MDI would of course be quite possible.
But wx's MDI framework is quite M$ MDI centric iirc.
Compilers: gcc-3.3.6, gcc-3.4.5, gcc-4.0.2, gcc-4.1.0 and MSVC6
OS's: Gentoo Linux, WinXP; WX: CVS HEAD

Project Manager of wxMUD - http://wxmud.sf.net/
Developer of wxGTK;
gtk+ port maintainer of OMGUI - http://www.omgui.org/
AkiraDev
Knows some wx things
Knows some wx things
Posts: 48
Joined: Tue May 24, 2005 9:13 am

Post by AkiraDev »

I disagree, and actually think that wxWidgets should implement quite the opposite by making tabbed document interface - the wxGTK way - a cross-platform MDI replacement standard also for wxMSW. Taking wxMDIBook a step further, now that would be something nice...

Just my 0,02 E...
Back, just not as often

Windows Vista SP1, Ubuntu 8.04
MinGW 3.4.5, GCC 4.2.1
Code::Blocks
wxWidgets 2.8.9
User avatar
Ryan Norton
wxWorld Domination!
wxWorld Domination!
Posts: 1319
Joined: Mon Aug 30, 2004 6:01 pm

Post by Ryan Norton »

I said no simply because of time restrictions the devs face in doing so
[Mostly retired moderator, still check in to clean up some stuff]
chadman
Experienced Solver
Experienced Solver
Posts: 70
Joined: Wed Mar 23, 2005 8:28 am

Post by chadman »

But what if you want to see two documents at once in your program?
leio
Can't get richer than this
Can't get richer than this
Posts: 802
Joined: Mon Dec 27, 2004 10:46 am
Location: Estonia, Tallinn
Contact:

Post by leio »

chadman wrote:But what if you want to see two documents at once in your program?
Two toplevel windows.
Compilers: gcc-3.3.6, gcc-3.4.5, gcc-4.0.2, gcc-4.1.0 and MSVC6
OS's: Gentoo Linux, WinXP; WX: CVS HEAD

Project Manager of wxMUD - http://wxmud.sf.net/
Developer of wxGTK;
gtk+ port maintainer of OMGUI - http://www.omgui.org/
chadman
Experienced Solver
Experienced Solver
Posts: 70
Joined: Wed Mar 23, 2005 8:28 am

Post by chadman »

But see, then you have windows just floating around your desktop, and a whole bunch of buttons on your taskbar.
upCASE
Moderator
Moderator
Posts: 3176
Joined: Mon Aug 30, 2004 6:55 am
Location: Germany, Cologne

Post by upCASE »

Hi!
Quite suprisingly when thinking about it, I voted yes.

Even if MS abandoned MDI a while ago (although they're not quite strict when enforcing it), I think that it might be quite usefull on Linux.

The problem would be which approach would be better, Mac or Windows. I suppose the Windows approach of having a parent window that "embeds" other child windows would be more fitting, as the general layout of windows on Linux (X11 and GTK) is quite comparable to the Windows approach. Mac does things in a different way because it's standard and simply looks better on that platform. I had an app once that used the Mac approach on Windows and it looked like s**t and wasn't usable. To be honest: While on the Mac this gives me no problem, I get confused if I don't have a parent window on Windows.

I like having it like this:
Mac -> Toolwindows are floating, documents are "toplevel" windows, the menubar is the standard one.
Windows -> Parent window with docked or floating toolwindows, documents are childs of the parent window. The parent has its own menubar.

I'm a bit selfish here as I'd like MDI for Linux for wxRapid :D
OS: OpenSuSE, Ubuntu, Win XP Pro
wx: svn
Compiler: gcc 4.5.1, VC 2008, eVC 4

"If it was hard to write it should be hard to read..." - the unknown coder
"Try not! Do. Or do not. There is no try." - Yoda
leio
Can't get richer than this
Can't get richer than this
Posts: 802
Joined: Mon Dec 27, 2004 10:46 am
Location: Estonia, Tallinn
Contact:

Post by leio »

chadman wrote:But see, then you have windows just floating around your desktop, and a whole bunch of buttons on your taskbar.
That's why you have your taskbar group things, and your minimizing capabilities and such.
upCASE wrote:I suppose the Windows approach of having a parent window that "embeds" other child windows would be more fitting, as the general layout of windows on Linux (X11 and GTK) is quite comparable to the Windows approach.
Good luck instructing X11 with ICCCM/EWMH to have a toplevel inside another. If you succeed, you can let me know and I might do the rest ;)
I look at it currently as being impossible (for a good reason).
Compilers: gcc-3.3.6, gcc-3.4.5, gcc-4.0.2, gcc-4.1.0 and MSVC6
OS's: Gentoo Linux, WinXP; WX: CVS HEAD

Project Manager of wxMUD - http://wxmud.sf.net/
Developer of wxGTK;
gtk+ port maintainer of OMGUI - http://www.omgui.org/
chadman
Experienced Solver
Experienced Solver
Posts: 70
Joined: Wed Mar 23, 2005 8:28 am

Post by chadman »

Well doesn't Linux already use some MDI? How does it work right now and why can't there be a wrapper for this in wxWidgets?

I do respect your opinions and I think you guys have great ideas, but I'd like you to have a look at my program at http://aletheia.sourceforge.net and describe to me how it would be with your MDI idea in place. If I did it the way you described, when the user opens a new window, should it open a completely new top-level window that is identical to the original main window (menubar, toolbar and all)? Or, should it just open a simple window just containing a text box with no menubar or toolbar?
User avatar
ABX
Can't get richer than this
Can't get richer than this
Posts: 810
Joined: Mon Sep 06, 2004 1:43 pm
Location: Poznan, Poland
Contact:

Post by ABX »

chadman wrote:Well doesn't Linux already use some MDI? How does it work right now and why can't there be a wrapper for this in wxWidgets?
Some use tabbed interface, others:
http://doc.trolltech.com/3.3/qworkspace.html#details
http://www.x.org/contrib/widgets/motif/MDI-1.0.1-README

ABX
CVS Head, 2.8.X
wxMSW, wxWinCE, wxPalmOS, wxOS2, wxMGL, bakefile
gcc 3.2.3, bcc 5.51, dmc 8.48, ow 1.6, vc 7.1, evc 3/4, pods 1.2
leio
Can't get richer than this
Can't get richer than this
Posts: 802
Joined: Mon Dec 27, 2004 10:46 am
Location: Estonia, Tallinn
Contact:

Post by leio »

Interesting. I wonder how do they work internally. The window manager support and so on didn't really work for me... I'll take a look hopefully soon.
Thanks for the link!
Compilers: gcc-3.3.6, gcc-3.4.5, gcc-4.0.2, gcc-4.1.0 and MSVC6
OS's: Gentoo Linux, WinXP; WX: CVS HEAD

Project Manager of wxMUD - http://wxmud.sf.net/
Developer of wxGTK;
gtk+ port maintainer of OMGUI - http://www.omgui.org/
geon
I live to help wx-kind
I live to help wx-kind
Posts: 189
Joined: Tue Sep 07, 2004 4:10 pm
Location: Sweden, Uppsala

Post by geon »

MDI is here to leave. Microsoft itself has deprecated it (yet it sort-of uses it still).
MDI as in Mac is a different thing, and a good thing. It doesn't enforce document windows to be inside a parent frame, and that's good.

I find the MS MDI approach ideal. It is one of the reasons I would never switch to GIMP in favour of Photoshop. Having multiple documents open at the same time and easily hiding them all when you minimize the parent window is invaluable.

I have had some frightening experiences of the Mac approach also. It is useless. just a few windows open and the desktop is totally cluttered.
daddydave
Filthy Rich wx Solver
Filthy Rich wx Solver
Posts: 214
Joined: Wed Jun 15, 2005 3:31 am
Location: United States
Contact:

Post by daddydave »

Consider the case of dragging and dropping something from one window to another. Example the shareware program VTrain where you can drag a flashcard from one card pack to another. It uses an MDI interface in Windows. You can see an animated screen shot here under An advanced editor

This would a bit harder to pull off in a tabbed interface. How exactly would you drag data from one tab and drop it on another? Perhaps you could drag the data over the destination tab, then drop after the contents of the tab appears. This would be similar to dragging files to programs minimized on the Windows taskbar, but doing the same with tabs might be hard for the user to discover without reading the help file.

Or imagine an archiving program like Winzip, where each window is a different zip file. You have the same issue, it's easy to drag and drop to another Explorer-like window, but not as clear what to do if each window has to be on a tab.
Chr
Earned some good credits
Earned some good credits
Posts: 115
Joined: Tue May 31, 2005 2:17 pm

Post by Chr »

geon wrote: I find the MS MDI approach ideal. It is one of the reasons I would never switch to GIMP in favour of Photoshop. Having multiple documents open at the same time and easily hiding them all when you minimize the parent window is invaluable.
I don't like the gimp UI also.
Gimps interface is terrible, yes, but look at other GTK applications: They use tabs. Gimp don't uses tabs which is very confusing (--if you have gimp openend, with some pics, look at your taskbar---???)
wxWidgets is nice
Post Reply