> This is called a multiple-document interface, and it's been Microsoft's preferred method of nesting documents/subwindows within a single application window for a long time
Microsoft moved away from MDI in most of their flag ship products (bar Visual Studio) a long time ago. Eg MS Office was last MDI back in '95. Office 97 was SDI from what I recall.
IIRC Office 97 was fully MDI. Office 2000 then used weird hybrid mode where it was still MDI, but each document had it's own taskbar button.
(It's somewhat telling that major new feature of taskbar in Windows XP is that it is capable of grouping windows by application and thus undoing this hack :))
I don't think you can use MDI in Visual Studio anymore, the tabbed interface seems to be the only one available. Although i do remember an IDE (was it Visual Studio?) that could do both MDI and tabs at the same time.
Do you consider tabbed interfaces as MDI? I've seen some people do that but i think MDI and tabbed interfaces are too different in terms of functionality to be considered equal.
MDI and tabbed interfaces aren't mutually exclusive but if the master window does not embed resizable child windows (like a traditional MDI interface) then it's not MDI regardless of tabs.
I think VS used to be MDI tabbed. It definitely used to be MDI. But I have to admit it's been years since I've last used it. In fact thinking about it now, it's been even longer than I realised (I switched away from Windows development around the time of XP getting released so we're probaby talking close on 15 years. It's scary how fast time flies).
Visual C++ 6 was certainly MDI, but i'm not sure about the rest. I think i have 2008 Express Edition stored somewhere but... i feel a bit lazy to install it to check it out :-P. 2010 and later was only tabbed though.
But, FWIW, yes, i agree with you that the resizable child windows is what defines the MDI and tabs are orthogonal to that.
Even nowadays Excel is not fully SDI - if you do VBA or work with 3rd party add ins, there is a whole bunch of stuff that goes wrong since Excel is a SDI interface put on top of a MDI program.
This is actually weirder than that. Most MS Office programs are still MDI, but emulate being SDI. If you open up two different Excel files there is still only one copy of Excel actually running. This can cause all sorts of headaches for some addins when weird things happen. Notoriously if an error happens in a VBA addin a COM addin will stop responding to hooks.
This isn't MDI, it is just using the same process for multiple toplevel windows. The defining characteristic of MDI is that the toplevel windows has subwindows inside that you can move and resize around (almost) like toplevel windows.
Visual Studio's MFC wizard actually has an option for this behavior called "Multiple top-level documents" (which is separate from "Single document" - aka SDI - and "Multiple documents" - aka MDI).
Microsoft moved away from MDI in most of their flag ship products (bar Visual Studio) a long time ago. Eg MS Office was last MDI back in '95. Office 97 was SDI from what I recall.