[Lazarus] debug windows layout

Michael Van Canneyt michael at freepascal.org
Sat Feb 27 14:32:57 CET 2010



On Sat, 27 Feb 2010, David W Noon wrote:

> On Sat, 27 Feb 2010 06:18:09 +0100, Hans-Peter Diettrich wrote about
> Re: [Lazarus] debug windows layout:
>
>> Graeme Geldenhuys schrieb:
>> 
>> >> All this docking talk is nice and everything, but sometimes I ask
>> >> if shouldn't just go SDI for Lazarus IDE. I found it odd at the
>> >> beginning, but after using several other SDI IDEs now I can't find
>> >> reasoning in Delphi-old MDI...
>> > 
>> > I think you meant other way round. :-) Old Delphi 7 and earlier used
>> > SDI interface by default.
>> 
>> No, that's neither MDI nor SDI.
>
> Actually, Graeme is correct.
>
> Each of the discrete windows contains a single "document", so it is
> called a Single Document Interface.
>
>> > MDI (multi-document interface) is one big
>> > outer window with multiple other windows embedded inside that parent
>> > window. Most IDE's seem to go the MDI route.
>> 
>> That's called SDI, not MDI. A single window contains frames, filling
>> the entire window. It's like everything docked into a single
>> application window, and some IDEs actually allows to undock some
>> frames.
>
> Again, Graeme is correct.
>
> The outer container window contains multiple documents, each managed
> by an inner window -- hence Multiple Document Interface.  Each inner
> window is called an "MDI child", and the container window is the "MDI
> parent".  The MDI children can be maximized (within the MDI parent) and
> minimized independently; they can also be either tiled or cascaded.
> Your term "docked" seems to be a reference to tiled MDI children.
>
> If you have a copy of Visual BASIC 6 handy, you can switch that IDE
> between MDI and SDI to see this effect. [Earlier versions of VB were
> SDI only for the IDE, but could easily produce MDI or SDI apps.]
>
> Back in the late 1980s, when IBM and Microsoft were both involved with
> OS/2 development, both companies came to the conclusion that MDI
> sucked.  This was because one cannot get through to one's desktop
> without minimizing, or at least shrinking, the MDI parent, thus losing
> display of all documents simultaneously.  More than 20 years on, this
> problem remains with MDI, but software companies still produce MDI
> applications.  Plus ça change, plus c'est la même chose. ... :-(


The problem you mention exists with SDI in a worse form. Now I must
click away N windows before I get to the desktop. Which is why most 
task-panels have a button 'Show the desktop'...

So I think this is largely a matter of preference. I much prefer MDI over SDI.

I use a database product. One day it switched from MDI to SDI, 
using a tabbed window approach as in browsers: "a more modern look". 
The product simply became unusable. And the whole company here feels 
like that.

So I wrote my own.

Michael.


More information about the Lazarus mailing list