Re: [Lazarus] debug windows layout
Flávio Etrusco wrote: Graeme, we understand what you mean, (but) we just don't think there's an authoritative definition. On the contrary, Waldo Kitty hit the nail on the head. IBM and Microsoft defined the definition when they invented the idea of MDI for OS/2 and early Windows. So I would say the behaviour of MDI under Windows (and as I described) would be an accurate definition of what MDI is and how it should work. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys wrote: Flávio Etrusco wrote: Graeme, we understand what you mean, (but) we just don't think there's an authoritative definition. On the contrary, Waldo Kitty hit the nail on the head. IBM and Microsoft defined the definition when they invented the idea of MDI for OS/2 and early Windows. So I would say the behaviour of MDI under Windows (and as I described) would be an accurate definition of what MDI is and how it should work. Regards, - Graeme - The trouble with this whole messy thread is that SDI and MDI are single / multiple DOCUMENT interfaces (not single / multiple windows). When a single file is a single document displayed in a single form(eg a word processor file) then it is all pretty straight forward, much like Graeme has described. When you try to apply it to something like a development IDE, the first thing you have to define is what the document is - is it a source file (unit) or the whole project ? And all the extra windows (inspectors, watches, messages, etc) just don't fit either model. in a normal MDI, you can open multiple documents, but it usually assumes they all open exactly the same way, eg another instance of the same class of editor. (Consider the old Delphi MDI application template). If you consider the document to be a project, then Deplhi (= 6) and lazarus are SDIs - you only have one project open at once, (unless you have multiple Delphi/Lazs open). If you think of the units as the documents, you can only relate the models to the source editor window, and it doesn't follow either model. (Is that what TDI is ? Tabbed doc interface ?) For the record, in Deplhi 4* where I have docking, I usually have all the source files in one tabbed set, form design windows separate, and all the other stuff - inspectors, watches, messages, etc, docked into another tabbed set. If the docking problems are to do with synedit, then even if we could dock all the Lazarus windows except the source editor and design forms into a tabbed set, that would be a great step forward. But I would not like to be be FORCED to have anything as a tabbed set (as in Graeme's original proposal), as you never know when you want to look at two things at the same time. cheers, John Sunderland * Last version of Delphi that I have access to that does databases. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
The trouble with this whole messy thread is that SDI and MDI are single / multiple DOCUMENT interfaces (not single / multiple windows). When a single file is a single document displayed in a single form(eg a word processor file) then it is all pretty straight forward, much like Graeme has described. When you try to apply it to something like a development IDE, the first thing you have to define is what the document is - is it a source file (unit) or the whole project ? And all the extra windows (inspectors, watches, messages, etc) just don't fit either model. in a normal MDI, you can open multiple documents, but it usually assumes they all open exactly the same way, eg another instance of the same class of editor. (Consider the old Delphi MDI application template). If you consider the document to be a project, then Deplhi (= 6) and lazarus are SDIs - you only have one project open at once, (unless you have multiple Delphi/Lazs open). If you think of the units as the documents, you can only relate the models to the source editor window, and it doesn't follow either model. (Is that what TDI is ? Tabbed doc interface ?) For the record, in Deplhi 4* where I have docking, I usually have all the source files in one tabbed set, form design windows separate, and all the other stuff - inspectors, watches, messages, etc, docked into another tabbed set. If the docking problems are to do with synedit, then even if we could dock all the Lazarus windows except the source editor and design forms into a tabbed set, that would be a great step forward. But I would not like to be be FORCED to have anything as a tabbed set (as in Graeme's original proposal), as you never know when you want to look at two things at the same time. cheers, John Sunderland * Last version of Delphi that I have access to that does databases. Nicely said. Well, back to another discussion. what about a poll (you see I like them :-P ) to make Lazarus a single-parent-window app regardless of fixing/finishing drag'n'dock? Best regards, Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
John schrieb: If you think of the units as the documents, you can only relate the models to the source editor window, and it doesn't follow either model. Count the editor windows, that implement the user interface (access) to the documents. (Is that what TDI is ? Tabbed doc interface ?) Right. I also found mentioned IDE-style interface in the wikipedia. The obvious need for terms for models that are neither pure SDI nor MDI leads to more confusion than clearness. For the record, in Deplhi 4* where I have docking, I usually have all the source files in one tabbed set, form design windows separate, and all the other stuff - inspectors, watches, messages, etc, docked into another tabbed set. If the docking problems are to do with synedit, then even if we could dock all the Lazarus windows except the source editor and design forms into a tabbed set, that would be a great step forward. But I would not like to be be FORCED to have anything as a tabbed set (as in Graeme's original proposal), as you never know when you want to look at two things at the same time. With dockable windows every user can create his own layout, from fully undocked until monolithic (everything docked to the IDE main bar). In my docking model the SynEdits should be dockable as well, i.e. the editor notebook is under control of the DockManager; this way one can have any number of concurrently visible documents. The IDE sends keystrokes and commands to the currently active SynEdit, and opens new files in the currently active editor notebook; code explorers also should be created for every editor notebook, when the user decided to dock one to the editor window; otherwise single global instances could be used for all source code navigation tools. These aspects IMO make the big difference between single and multiple document INTERFACEs, from the technical viewpoint. Optionally, as a replacement or extension of the MDI window menu, different layouts can be activated for distinct IDE states (edit, debug...), with possibly further distinction between form design (using OI and component palette), and normal source code editing. The component palette can be presented both in classic (horizontal) or new (vertical) arrangement, possibly depending on the width/height of its dock zone. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Flávio Etrusco schrieb: Well, back to another discussion. what about a poll (you see I like them :-P ) to make Lazarus a single-parent-window app regardless of fixing/finishing drag'n'dock? I don't like it, so I won't vote for it :-] DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys schrieb: In true MDI style, each document (represented by embedded child window) can be minimized, maximized, tiled, stacked and moved around inside the parent form. This is what Delphi allows since long - except for the parent window restriction. The MDI menu is not a requirement to make an application MDI - it also is somewhat useless in a virtual desktop, populated also with other (non-document) windows. Also Delphi 7 IDE does allow each unit to be opened in a separate Source Editor window - NOT part of the Main Form (form with component palette). This is another tell tail sign of SDI style application - there is no virtual desktop managed by the Main form. This clearly makes the IDE MDI - multiple document views managed by a single application, controlled by a single menu. An SDI application requires to start a new instance for every document view/window. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Hans-Peter Diettrich wrote: This clearly makes the IDE MDI - multiple document views managed by a single application, controlled by a single menu. An SDI application requires to start a new instance for every document view/window. MDI child windows MUST live inside the bounds of the Main Form! That is NOT the case with Delphi 7 IDE. The document (source editor) windows and all other windows are completely separated from the Main Form and lives outside the bounds of the main form - that is SDI. See my ASCII art images again. Other than this, I think I give up trying to explain this. :-) Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Hans-Peter Diettrich wrote: Also Delphi 7 IDE does allow each unit to be opened in a separate Source Editor window - NOT part of the Main Form (form with component palette). This is another tell tail sign of SDI style application - there is no virtual desktop managed by the Main form. Attached is an example MDI applications. One top level window which encapsulates the WHOLE application. Yet has multiple document windows open, but they can ONLY live inside the bounds of the main window. There is also one document window iconified (bottom left). All those document windows can be tiled vertically or horizontally. After doing that, they will still only be in the bounds of the main form. Delphi 7 IDE is *not* like that, hence SDI interface. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ inline: Screenshot-MDI_test.png-- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
2010/3/1 Graeme Geldenhuys graemeg.li...@gmail.com: Hans-Peter Diettrich wrote: Also Delphi 7 IDE does allow each unit to be opened in a separate Source Editor window - NOT part of the Main Form (form with component palette). This is another tell tail sign of SDI style application - there is no virtual desktop managed by the Main form. Attached is an example MDI applications. One top level window which encapsulates the WHOLE application. Yet has multiple document windows open, but they can ONLY live inside the bounds of the main window. There is also one document window iconified (bottom left). All those document windows can be tiled vertically or horizontally. After doing that, they will still only be in the bounds of the main form. Delphi 7 IDE is *not* like that, hence SDI interface. Regards, - Graeme - Graeme, we understand what you mean, (but) we just don't think there's an authoritative definition. Best regards, Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On Mon, 1 Mar 2010 12:20:05 -0300, Flávio Etrusco wrote about Re: [Lazarus] debug windows layout: we understand what you mean, (but) we just don't think there's an authoritative definition. The jointly produced documentation from IBM and Microsoft, about 20 years ago, provides *THE* authoritative definition. You can probably obtain copies of this in some rather old books by Charles Petzold, on programming Windows and/or OS/2 Presentation Manager. You might also be able to find this documentation on the MSDN Web site, BICBW. -- Regards, Dave [RLU #314465] === david.w.n...@ntlworld.com (David W Noon) === -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On 3/1/2010 6:38 AM, Hans-Peter Diettrich wrote: An SDI application requires to start a new instance for every document view/window. No it does not. One runnning application instance can manage multiple, independent SDI windows, each with a different document context. That's still SDI. It seems that various hybrid implementations have caused confusion over the years. Classic Delphi IDE is one such example. Borland added logic to make the SDI model work more like the MDI one for the editing window. The early MDI implementations in Windows were quite lame and inflexible. I think that's why MS abandoned their early MDI attempts and made Word/Excel/etc into SDI. So, enough of this. -- Doug C. - A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys schrieb: MDI child windows MUST live inside the bounds of the Main Form! That's a matter of taste, and I do not expect everybody to agree with my viewpoint. MDI windows and menus are specific to the Windows platform, so that other criteria must be found for other platforms. Other than this, I think I give up trying to explain this. :-) You explained your viewpoint very clearly, no need to refrain :-) My viewpoint in short: SDI: only one document per process TDI: multiple documents per process, accessible in different tabs MDI: multiple documents per process, accessible in different windows We only differ in the location of the documents. Your model requires that they reside in a dedicated MDI window, my model only requires that they are part of one process/instance of an application. WRT Lazarus, I have to start multiple instances when I want to see multiple source units at the same time. This restriction brought me to docking first, and now (finally) to the implementation of multiple edit windows. I do not bother whether somebody calls it MDI or SDI, my only desire are multiple edit windows in one process. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Hans-Peter Diettrich escreveu: (...) WRT Lazarus, I have to start multiple instances when I want to see multiple source units at the same time. This restriction brought me to docking first, and now (finally) to the implementation of multiple edit windows. I do not bother whether somebody calls it MDI or SDI, my only desire are multiple edit windows in one process. DoDi I just needed to remove the various buttons on the taskbar, and Flavio has shown that this is possible. IMHO, It would be also interesting a version in Delphi2006/2007/2009/2010 style, with a single Form, and the options surrounding this form. (especially for those who only use Linux, like me;)) -- []'s Silvio Clécio -- programmer ObjectPascal - Blog: http://blog.silvioprog.com.br programmer ObjectPascal - Site: http://www.silvioprog.com.br programmer ObjectPascal - Twitter: http://twitter.com/silvioprog -- grupo Lazarus-BR no Google - http://groups.google.com/group/lazarus-br/ -- °oO[ Mensagem assinada digitalmente ]Oo° -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On 3/1/2010 15:42, Hans-Peter Diettrich wrote: Graeme Geldenhuys schrieb: MDI child windows MUST live inside the bounds of the Main Form! That's a matter of taste, and I do not expect everybody to agree with my viewpoint. MDI windows and menus are specific to the Windows platform, so that other criteria must be found for other platforms. FWIW: as David Noon pointed out, the definitive definitions are in the books written by IBM and M$ when they developed and documented the MDI and SDI interfaces back in the early days of OS/2 (at least) ;) Other than this, I think I give up trying to explain this. :-) You explained your viewpoint very clearly, no need to refrain :-) My viewpoint in short: SDI: only one document per process TDI: multiple documents per process, accessible in different tabs MDI: multiple documents per process, accessible in different windows We only differ in the location of the documents. Your model requires that they reside in a dedicated MDI window, my model only requires that they are part of one process/instance of an application. WRT Lazarus, I have to start multiple instances when I want to see multiple source units at the same time. This restriction brought me to docking first, and now (finally) to the implementation of multiple edit windows. I do not bother whether somebody calls it MDI or SDI, my only desire are multiple edit windows in one process. that's a fine goal and i, for one, look forward to seeing and using your work in this aspect... i feel that it will be a big improvment to Laz's IDE and will enable more productivity in the same way that multiple document capabilities helped back in the days of Borland's Turbo and Borland Pascal IDEs :) -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On 27 February 2010 07:18, Hans-Peter Diettrich drdiettri...@aol.com wrote: I think you meant other way round. :-) Old Delphi 7 and earlier used SDI interface by default. No, that's neither MDI nor SDI. Nope, it's SDI. :-) 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. SDI and MDI have nothing to do with docking. Both can support docking, but my major difference is how the main form manages the child forms. In a MDI interface, the child forms are encapsulated into a mini virtual desktop environment. They can move around only in this virtual desktop, can be iconified, minimized, maximized. SDI interfaces, the main form and the child forms are completely separated and when iconified, it is iconified to the OS desktop or taskbar, NOT to the main form. The following ASCII art requires a mono font to view correctly. MDI interface +---+ | Main window | | | | +---+ | | | window 1 | | | | +---+ | | +---| window 2 | | | |+---+ | | +| window 3 | | || | | |+---+ | | +4-+ | | +--+ | +---+ SDI interface +---+ | Main window | +---+ +---++-+ | window 1 || 4 | | +---++-+ +---| window 2 || | |+---+ | 5 | +| window 3 | | | | | +-+ +---+ In the MDI interface above, Window 4 is iconified, but the icon is still inside the Main Form. In the SDI interface, Window 4 and Window 5 are docked. Also all child windows are separate (outside) from the Main Window. example of MDI applications: Adobe Photoshop, MS Access examples of SDI applications: Lazarus IDE, Delphi 7 IDE, GIMP -- Regards, - Graeme - ___ fpGUI - a cross-platform Free Pascal GUI toolkit http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On 27 February 2010 08:12, Martin Schreiber fp...@bluewin.ch wrote: Does your desktop not offer a Group similar tasks option? On KDE one can set it to Always which groups windows of the same application into one taskbar button. Another possibility is to use virtual desktops. Yes, Gnome's taskbar can group icons, but it simply stacks then in a submenu of a single button on the taskbar. When you click that taskbar button, it shows a popup window listing each window related to that task. Still useless. -- Regards, - Graeme - ___ fpGUI - a cross-platform Free Pascal GUI toolkit http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys escreveu: The following ASCII art requires a mono font to view correctly. MDI interface +---+ | Main window | | | | +---+ | | | window 1 | | | | +---+ | | +---| window 2 | | | |+---+ | | +| window 3 | | || | | |+---+ | | +4-+ | | +--+ | +---+ SDI interface +---+ | Main window | +---+ +---++-+ | window 1 || 4 | | +---++-+ +---| window 2 || | |+---+ | 5 | +| window 3 | | | | | +-+ +---+ TDI interface +---+ | Main window | +---+ | window 1 [x]| window 2 [x]| window 3[x]| | +---+ | | | | | window 1 | | | | | +---+ [x] = Close button; The pattern with TDI is also very good ;) example of TDI applications: Firefox, NetBeans, Aptana, Eclipse, KDESvn. -- []'s Silvio Clécio -- programmer ObjectPascal - Blog: http://blog.silvioprog.com.br programmer ObjectPascal - Site: http://www.silvioprog.com.br programmer ObjectPascal - Twitter: http://twitter.com/silvioprog -- grupo Lazarus-BR no Google - http://groups.google.com/group/lazarus-br/ -- °oO[ Mensagem assinada digitalmente ]Oo° -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys schrieb: Yes, Gnome's taskbar can group icons, but it simply stacks then in a submenu of a single button on the taskbar. When you click that taskbar button, it shows a popup window listing each window related to that task. Still useless. The same for KDE :-( BTW, Delphi uses a dedicated and invisible application window, in addition to the application main window, that shows up in the Windows task bar. It may be a matter of window classes or styles, so that all user-defined forms are treated as child windows of the application window, and as such never go into the taskbar. Other application windows are minimized to the screen, not to the taskbar, like MDI child windows. I'd assume that other window managers offer similar features. For KDE it's sufficient to *hide* all forms (but the main form), when the application is minimized. When only the main form really is *minimized*, also only this form appears in the KDE taskbar. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On Sun, Feb 28, 2010 at 5:37 AM, Graeme Geldenhuys graemeg.li...@gmail.com wrote: On 27 February 2010 08:12, Martin Schreiber fp...@bluewin.ch wrote: Does your desktop not offer a Group similar tasks option? On KDE one can set it to Always which groups windows of the same application into one taskbar button. Another possibility is to use virtual desktops. Yes, Gnome's taskbar can group icons, but it simply stacks then in a submenu of a single button on the taskbar. When you click that taskbar button, it shows a popup window listing each window related to that task. Still useless. -- Regards, - Graeme - If only there was a taskbar implementation that offered the feature to just group windows of the same process. I tried virtually every taskbar/dock implementation in existence and not a single one offer this. On a - now - side note, this whole SDI vs MDI discussion is useless. If you read articles about MDI vs SDI vs TDI (TDI? what a silly name differentiation!) they are very confusing/confused regarding the criterion that characterize them. BTW I've certainly seem some Borland dev call the old Delphi IDE a MDI. -Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Flávio Etrusco schrieb: If only there was a taskbar implementation that offered the feature to just group windows of the same process. I tried virtually every taskbar/dock implementation in existence and not a single one offer this. As already noted, I suspect that the application windows should have the proper attributes (main/child). A *task*bar should deal with tasks, not with windows. On a - now - side note, this whole SDI vs MDI discussion is useless. Right. But I found it interesting to hear the opinions of others. If you read articles about MDI vs SDI vs TDI (TDI? what a silly name differentiation!) they are very confusing/confused regarding the criterion that characterize them. Right. While TDI IMO correctly describes the handling of *documents*, it also only applies to a specific window, not necessarily to an application itself. BTW I've certainly seem some Borland dev call the old Delphi IDE a MDI. This was my impression, too. The old (undocked) IDE allowed to view *multiple* documents (units) in multiple editor windows *at the same time*, while the new IDE only allows to view a *single* unit at the same time. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Hans-Peter Diettrich wrote: This was my impression, too. The old (undocked) IDE allowed to view *multiple* documents (units) in multiple editor windows *at the same time*, while the new IDE only allows to view a *single* unit at the same time. :-) Delphi 7 IDE is a mixed bag, but still SDI. It's not only about being able to view multiple units in a same window, it's how those embedded documents are managed too, and how the end-user can interact with those documents. In true MDI style, each document (represented by embedded child window) can be minimized, maximized, tiled, stacked and moved around inside the parent form. In Delphi 7 IDE it only allows viewing multiple units in a Source Editor window via a tab interface (this is what seems to confuse you guys), but you cannot move each unit window around inside the main form's virtual desktop, you can't tile them, you can't iconify them etc.. That is why Delphi 7 IDE is a SDI design - MDI apps can do all those. Also Delphi 7 IDE does allow each unit to be opened in a separate Source Editor window - NOT part of the Main Form (form with component palette). This is another tell tail sign of SDI style application - there is no virtual desktop managed by the Main form. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On 2/27/2010 12:18 AM, Hans-Peter Diettrich wrote: 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. DoDi- You have that exactly backwards. One big window with child windows all contained inside it is MDI. An program with several seemingly independent windows that act in a coordinated way while appearing separate from each other is SDI. -- Doug C. - A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
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. ... :-( -- Regards, Dave [RLU #314465] === david.w.n...@ntlworld.com (David W Noon) === -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
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.-- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
David W Noon 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. Perhaps we should distinguish between windows and applications. When an application opens multiple windows, every window can be SDI or MDI. At the *window* (technology) level we can determine whether MDI client windows exist. So far Delphi or Lazarus *never* have been MDI applications. At the *application* level IMO SDI indicates one single application window, like implemented by most IDE's (RS, VS...). An IDE can contain multiple projects (solutions...), and a project can consist of multiple source files, but only one of them is accessible at the same time. 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.] AFAIR that was like RadStudio now can be switched between new standard and classic undocked views, and the new (monolithic) view is called SDI. 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. ... :-( You seem to associate MDI with a single application window. IMO this view neglects both the document and interface aspects. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On Sat, 27 Feb 2010 14:32:57 +0100 (CET), Michael Van Canneyt wrote about Re: [Lazarus] debug windows layout: On Sat, 27 Feb 2010, David W Noon wrote: [snip] 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'... If your SDI windows are organized properly, you should only need to minimize one of them to get to the part of the desktop you want. This dates back to the time when programs were launched from desktop icons (in the manner of OS/2 and PROGMAN.EXE): provided you know where your desired icon is, you can get to it losing sight of only one document. The world of GUI desktops has moved on. Programs are now launched from pop-up panels, etc., mostly based on the design of the Lotus SmartBar. This makes the desktop itself simply a platform for decoration. 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. Perhaps they should have offered a switchable option. -- Regards, Dave [RLU #314465] === david.w.n...@ntlworld.com (David W Noon) === -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys wrote: Hans-Peter Diettrich wrote: I badly miss a "hide designer windows on Run" option. Isn't that the same as "Environment Options Environment Windows 'Hide IDE windows on run'" checkbox..??? Regards, - Graeme - No, that hides EVERYTHING. in Dephi, there is an option to only hide the form design windows. You still see the inspector(s) and code. Much easier for debugging. An you don't click on what you thought was the active (nunning) form only to find it has been covered by the design version of the same window. cheers, John -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys schrieb: Other simple things that could help is automatically hide windows when not needed. eg: When you compile your project, show the Messages window. If no compiler errors, auto hide the window. If errors occur, keep showing the window. If you wanted to see what hints or warnings occurred during compiling and after a successful compile, simply go View - Messages. When docking has been made work, you can put the views into tabs on a notebook. I don't like too many automatisms, except for hiding the designer windows on Run. From the other replies by Mattias, Flavio and Hans-Peter, it seems docking support in Lazarus IDE is still far into the future. Not so far, I hope. Some windows can be docked already. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys schrieb: I badly miss a hide designer windows on Run option. Isn't that the same as Environment Options Environment Windows 'Hide IDE windows on run' checkbox..??? No. Form designer windows should be hidden on Run, because on a breakpoint the IDE (editor) becomes active again, and then the designer windows hide the runtime forms. Optionally we can have different layouts, for normal and debug operation. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Hans-Peter Diettrich wrote: Not so far, I hope. Some windows can be docked already. What do I need to install to try this out. And where do I get the patches for this? [sorry, I haven't been following Docking conversations] Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys escreveu: My taskbar looks the same - totally useless. :-( I'm normally a big fan of SDI layouts, but when it comes to Lazarus IDE, there are just to many forms. Maybe I need one of those 2x2 rack mount LCD monitor setups - so I can use 4 desktops to layout my IDE windows. ;-) I did it, but not much has changed. Other simple things that could help is automatically hide windows when not needed. eg: When you compile your project, show the Messages window. If no compiler errors, auto hide the window. If errors occur, keep showing the window. If you wanted to see what hints or warnings occurred during compiling and after a successful compile, simply go View - Messages. That would be interesting. There is this option in Lazarus-0.9.29 (FPC-2.2.4-3)? From the other replies by Mattias, Flavio and Hans-Peter, it seems docking support in Lazarus IDE is still far into the future. So yes, I'll continue and make the modification for now. If anybody wants to use the patch, I'll post it in Mantis. Please, what is the link for me to follow the changes? Regards, - Graeme - []'s Silvio Clécio -- programmer ObjectPascal - Blog: http://blog.silvioprog.com.br programmer ObjectPascal - Site: http://www.silvioprog.com.br programmer ObjectPascal - Twitter: http://twitter.com/silvioprog -- grupo Lazarus-BR no Google - http://groups.google.com/group/lazarus-br/ -- °oO[ Mensagem assinada digitalmente ]Oo° -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys escreveu: By the way, do you know about the following option? Environment Options Environment Windows 'IDE title starts with project name' So if you have slightly less windows open, it will be easier to spot the Main form in the taskbar. Yes :) Now I did it, but what I wanted was a unique button, and the other options would be in a tab (perhaps not needed of tabs). Here's how I wanted to do: http://imagebin.org/86641 Is it only I like unique button(of the lazarus) in the task bar? D: Thanks Graeme ;) Regards, - Graeme - -- []'s Silvio Clécio -- programmer ObjectPascal - Blog: http://blog.silvioprog.com.br programmer ObjectPascal - Site: http://www.silvioprog.com.br programmer ObjectPascal - Twitter: http://twitter.com/silvioprog -- grupo Lazarus-BR no Google - http://groups.google.com/group/lazarus-br/ -- °oO[ Mensagem assinada digitalmente ]Oo° -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On 26 February 2010 23:44, Silvio Clecio silviop...@gmail.com wrote: http://imagebin.org/86641 Is it only I like unique button(of the lazarus) in the task bar? D: I would like that too. In Windows (and I think I saw it in some Linux apps) it is possible to have SDI windows layout and a single button in the taskbar. This make a lot more sense than having 10-15 buttons in the taskbar for a single application. With MSEide, if you dock windows together, it reduces the taskbar buttons - I sure hope Lazarus IDE does the same when docking is implemented. -- Regards, - Graeme - ___ fpGUI - a cross-platform Free Pascal GUI toolkit http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On Fri, Feb 26, 2010 at 7:09 PM, Graeme Geldenhuys graemeg.li...@gmail.com wrote: On 26 February 2010 23:44, Silvio Clecio silviop...@gmail.com wrote: http://imagebin.org/86641 Is it only I like unique button(of the lazarus) in the task bar? D: I would like that too. In Windows (and I think I saw it in some Linux apps) it is possible to have SDI windows layout and a single button in the taskbar. This make a lot more sense than having 10-15 buttons in the taskbar for a single application. With MSEide, if you dock windows together, it reduces the taskbar buttons - I sure hope Lazarus IDE does the same when docking is implemented. -- Regards, - Graeme - LCL is already capable of this. I've just sent a patch in mantis which makes this a little better: http://bugs.freepascal.org/file_download.php?file_id=10889type=bug Issue: http://bugs.freepascal.org/view.php?id=15055 However, there are some issues to deal with yet, like activating the application (bring the other windows to front) and moving between desktops. Actually it's much easier than I thought, I must have done something wrong ;-) 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... BTW, back to the drag windows in gtk2 part of the discussion, I've just realized gtk has explicit calls for it, it most certainly have some events/notifications/callbacks too? Best regards, Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
2010/2/27 Flávio Etrusco flavio.etru...@gmail.com: 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. 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. My problem with MDI is the form designer. In such IDE's you can only see the code, or only the Form Designer - not both. :-( For this single reason I prefer SDI layout, but then the IDE must support some form of docking to minimize the amount of windows the developer needs to manage - and reduce the taskbar item count. -- Regards, - Graeme - ___ fpGUI - a cross-platform Free Pascal GUI toolkit http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys escreveu: I would like that too. In Windows (and I think I saw it in some Linux apps) it is possible to have SDI windows layout and a single button in the taskbar. This make a lot more sense than having 10-15 buttons in the taskbar for a single application. With MSEide, if you dock windows together, it reduces the taskbar buttons - I sure hope Lazarus IDE does the same when docking is implemented. Thanks again Graeme, but I want to do in my Lazarus. Let's see if this it's possible ... :/ -- []'s Silvio Clécio -- programmer ObjectPascal - Blog: http://blog.silvioprog.com.br programmer ObjectPascal - Site: http://www.silvioprog.com.br programmer ObjectPascal - Twitter: http://twitter.com/silvioprog -- grupo Lazarus-BR no Google - http://groups.google.com/group/lazarus-br/ -- °oO[ Mensagem assinada digitalmente ]Oo° -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Flávio Etrusco escreveu: LCL is already capable of this. I've just sent a patch in mantis which makes this a little better: http://bugs.freepascal.org/file_download.php?file_id=10889type=bug Issue: http://bugs.freepascal.org/view.php?id=15055 However, there are some issues to deal with yet, like activating the application (bring the other windows to front) and moving between desktops. Actually it's much easier than I thought, I must have done something wrong ;-) 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... BTW, back to the drag windows in gtk2 part of the discussion, I've just realized gtk has explicit calls for it, it most certainly have some events/notifications/callbacks too? Best regards, Flávio Thanks Flávio, worked perfectly \o/... See: http://imagebin.org/86665 The windows are minimizing with MainWindow, except Form1 and OI, it's possible other windows minimize too (OI, Form1, LeakView...)? See: http://imagebin.org/86668 Please don't notice my bad english :P -- []'s Silvio Clécio -- programmer ObjectPascal - Blog: http://blog.silvioprog.com.br programmer ObjectPascal - Site: http://www.silvioprog.com.br programmer ObjectPascal - Twitter: http://twitter.com/silvioprog -- grupo Lazarus-BR no Google - http://groups.google.com/group/lazarus-br/ -- °oO[ Mensagem assinada digitalmente ]Oo° -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On Friday 26 February 2010 08:18:28 Graeme Geldenhuys wrote: Silvio Clecio wrote: Notice how hard it is to work with many windows scattered: http://imagebin.org/86466 My taskbar looks the same - totally useless. :-( I'm normally a big fan of SDI layouts, but when it comes to Lazarus IDE, there are just to many forms. Maybe I need one of those 2x2 rack mount LCD monitor setups - so I can use 4 desktops to layout my IDE windows. ;-) Does your desktop not offer a Group similar tasks option? On KDE one can set it to Always which groups windows of the same application into one taskbar button. Another possibility is to use virtual desktops. Martin -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys schrieb: Not so far, I hope. Some windows can be docked already. What do I need to install to try this out. And where do I get the patches for this? See feature request 15242. I couldn't supply new patches yet, my system still suffers from several problems :-( DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys schrieb: I would like that too. In Windows (and I think I saw it in some Linux apps) it is possible to have SDI windows layout and a single button in the taskbar. This make a lot more sense than having 10-15 buttons in the taskbar for a single application. See issue 13919, 15055 (with patches). On Linux an application seems not to receive a message when the main form is minimized. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
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. 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. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On Friday 26 February 2010 23:09:49 Graeme Geldenhuys wrote: With MSEide, if you dock windows together, it reduces the taskbar buttons - I sure hope Lazarus IDE does the same when docking is implemented. An screenshot of such a MSEide dock panel is here: http://developer.berlios.de/dbimage.php?id=4661 Martin -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On Sat, Feb 27, 2010 at 1:53 AM, Hans-Peter Diettrich drdiettri...@aol.com wrote: Graeme Geldenhuys schrieb: I would like that too. In Windows (and I think I saw it in some Linux apps) it is possible to have SDI windows layout and a single button in the taskbar. This make a lot more sense than having 10-15 buttons in the taskbar for a single application. See issue 13919, 15055 (with patches). On Linux an application seems not to receive a message when the main form is minimized. DoDi Notice that DoDi is probably talking about uminirestore.pas. I've put some patches there yesterday; it was not my intention to steal the mantis issue but... seems like I did it :-$ Best regards, Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
El 25/02/2010 10:12, Graeme Geldenhuys escribió: Hi, [..] So what's your thoughts on this? Yes/No... Good/Bad... Looks perfect for me :) Regards, - Graeme - -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Asm listings are usually very long. It's pain to use them in such narrow window. thanks, dmitry -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Zitat von Graeme Geldenhuys graemeg.li...@gmail.com: Hi, Playing around with debugging from inside the IDE (anybody that knows me will know this is very unusual smile) I immediately noticed something regarding the UI of the IDE. Using all the various debugging windows available very quickly clutters up the desktop. I just can't find a easy way of showing all windows and still seeing my source code. I'm using a 1440x900 resolution LCD monitor. I guess this is where docking windows within the IDE will be very useful. Alternatively and maybe even better, is to rather use a tabbed window approach. Instead of having multiple loose windows, have one Debug window with various tabs. See attached (animated) screenshot showing a mock-up of that idea. Yes, that is the goal of DoDis Docking. So what's your thoughts on this? Yes/No... Good/Bad... Good, when done properly. Bad if implemented with fixed layout (without proper docking manager). Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
dmitry boyarintsev wrote: Asm listings are usually very long. It's pain to use them in such narrow window. The window itself will be resizeable - so that should be a problem at all. The screenshot I posted was just a random size window I worked with to create the mock-up. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Mattias Gärtner wrote: Zitat von Graeme Geldenhuys graemeg.li...@gmail.com: [..] So what's your thoughts on this? Yes/No... Good/Bad... Good, when done properly. Bad if implemented with fixed layout (without proper docking manager). +1 (since I want locals and watches separated from the others) Marc -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On 25 February 2010 09:42, Juha Manninen juha.manni...@phnet.fi wrote: BTW, nice mockup. You actually created a program with page control using Lazarus, right? This looks like fpgui to me. Henry -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Mattias Gärtner wrote: Yes, that is the goal of DoDis Docking. So what's your thoughts on this? Yes/No... Good/Bad... Good, when done properly. Bad if implemented with fixed layout (without proper docking manager). At the moment the only choice I know of is to use fixed layout because docking doesn't exist in the IDE yet. One window with various TFrames embedded in a PageControl. So I guess then the idea is bad for you and a patch will not be accepted? What is the progress on docking support inside the IDE? Sorry, I haven't followed all message threads in the mailing list. If docking support is not even near completion, I would still suggest the tabbed window idea, until such time when the IDE has docking support. Then we can simply move each TFrame back onto a separate dockable window. BTW: Will the IDE support docking in the centre of another window, creating Tabs at runtime? Delphi 7 used to have that. You can doc certain windows on each of the four sides, or in the centre. The latter created tabs at runtime. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Juha Manninen wrote: Yes, Good! I guess tabbed windows is one option when docking windows. At least it should be. It allows to still keep the windows separate when needed. But I don't know the state of docking support in the IDE. If docking support is still months or years away, then I would still suggest merging all debug windows into a single tabbed window. The current debug windows could be changed to live inside a TFrame, and placed inside a PageControl. Then when docking support actually arrives, we can simply move each TFrame back into a dockable window so users can decide their desired layout. But currently the multiple loose windows is a nightmare. Debug windows keep being hidden under other windows. BTW, nice mockup. You actually created a program with page control using Lazarus, right? Oops no. It's my fpGUI version of Lazarus IDE. ;-) Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Henry Vermaak wrote: This looks like fpgui to me. The window icon should have given it away. :-) Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Hi, But I don't know the state of docking support in the IDE. If docking support is still months or years away, then I would still suggest merging all debug windows into a single tabbed window. Yes, it would be good as a temporary solution, and as an alternative to separate windows. I would need it, too. BTW, nice mockup. You actually created a program with page control using Lazarus, right? Oops no. It's my fpGUI version of Lazarus IDE. ;-) Ah yes, now I noticed the window icon. Juha -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
dmitry boyarintsev wrote: On Thu, Feb 25, 2010 at 12:37 PM, Marc Weustink marc.weust...@cuperus.nl wrote: +1 (since I want locals and watches separated from the others) Is it possible to get debugger's TForms from IDE in anyway? ??? Marc -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On Thu, Feb 25, 2010 at 4:09 PM, Marc Weustink marc.weust...@cuperus.nl wrote: Is it possible to get debugger's TForms from IDE in anyway? ??? If debugger forms would be available as classes for IDE extensions (via IDEIntf, for example), i could add them to the Manual Docker, as well :) thanks, dmitry -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys schrieb: I guess this is where docking windows within the IDE will be very useful. Alternatively and maybe even better, is to rather use a tabbed window approach. Instead of having multiple loose windows, have one Debug window with various tabs. Notebook-docking is included in the EasyDock manager. I use it with Delphi, to overlay the designtime and runtime windows in different tabs. See attached (animated) screenshot showing a mock-up of that idea. So what's your thoughts on this? Yes/No... Good/Bad... It's all a matter of the IDE window management. Currently only a few windows can be made dockable at all, the other ones refuse any attempt to make them dockable. Mattias? DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Zitat von Hans-Peter Diettrich drdiettri...@aol.com: [...] It's all a matter of the IDE window management. Currently only a few windows can be made dockable at all, the other ones refuse any attempt to make them dockable. Mattias? All non modal windows should be dockable. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
2010/2/25 Mattias Gärtner nc-gaert...@netcologne.de: Zitat von Hans-Peter Diettrich drdiettri...@aol.com: [...] It's all a matter of the IDE window management. Currently only a few windows can be made dockable at all, the other ones refuse any attempt to make them dockable. Mattias? All non modal windows should be dockable. Mattias BTW, is there any intentation to make the form editor be a page like is later Delphis? I not exactly a fan of it, but I must admit it fits better in some situations... Best regards, Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Graeme Geldenhuys escreveu: Hi, Playing around with debugging from inside the IDE (anybody that knows me will know this is very unusual smile) I immediately noticed something regarding the UI of the IDE. Using all the various debugging windows available very quickly clutters up the desktop. I just can't find a easy way of showing all windows and still seeing my source code. I'm using a 1440x900 resolution LCD monitor. I guess this is where docking windows within the IDE will be very useful. Alternatively and maybe even better, is to rather use a tabbed window approach. Instead of having multiple loose windows, have one Debug window with various tabs. See attached (animated) screenshot showing a mock-up of that idea. So what's your thoughts on this? Yes/No... Good/Bad... Regards, - Graeme - This is very good. Perfect! Notice how hard it is to work with many windows scattered: http://imagebin.org/86466 Graeme, if you have any updates please send a copy to me in PVT. -- []'s Silvio Clécio -- programmer ObjectPascal - Blog: http://blog.silvioprog.com.br programmer ObjectPascal - Site: http://www.silvioprog.com.br programmer ObjectPascal - Twitter: http://twitter.com/silvioprog -- grupo Lazarus-BR no Google - http://groups.google.com/group/lazarus-br/ -- °oO[ Mensagem assinada digitalmente ]Oo° -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On Thu, Feb 25, 2010 at 1:48 PM, Hans-Peter Diettrich drdiettri...@aol.com wrote: Mattias Gärtner schrieb: It's all a matter of the IDE window management. Currently only a few windows can be made dockable at all, the other ones refuse any attempt to make them dockable. Mattias? All non modal windows should be dockable. Should be, but they are not. Even if I try on Win32, where entire forms are dockable, only a few forms really can be docked. Well, AFAICS most of them lack DragKind=dkDock and DragMode=dmAutomatic? Best regards, Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Flávio Etrusco schrieb: Well, AFAICS most of them lack DragKind=dkDock and DragMode=dmAutomatic? Setting these properties in code seems not to help. But I'm not sure where to place that code, so that it would configure *all* IDE forms. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
On Thu, Feb 25, 2010 at 5:27 PM, Hans-Peter Diettrich drdiettri...@aol.com wrote: Flávio Etrusco schrieb: Well, AFAICS most of them lack DragKind=dkDock and DragMode=dmAutomatic? Setting these properties in code seems not to help. But I'm not sure where to place that code, so that it would configure *all* IDE forms. DoDi I was/am trying to work on IDE docking (as you might know ;-) I'm sure we should add code to make all IDE forms dockable automatically. If that's the case we could add some property or event to TApplication. My main development platform is Linux/gtk2, so I can't really say about Windows. I am playing with the idea of using WMMove events with some conditionals to trigger the drag/dock start, but for starters the reason parameter isn't interface in all situations I expected... -Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Silvio Clecio wrote: Notice how hard it is to work with many windows scattered: http://imagebin.org/86466 My taskbar looks the same - totally useless. :-( I'm normally a big fan of SDI layouts, but when it comes to Lazarus IDE, there are just to many forms. Maybe I need one of those 2x2 rack mount LCD monitor setups - so I can use 4 desktops to layout my IDE windows. ;-) Other simple things that could help is automatically hide windows when not needed. eg: When you compile your project, show the Messages window. If no compiler errors, auto hide the window. If errors occur, keep showing the window. If you wanted to see what hints or warnings occurred during compiling and after a successful compile, simply go View - Messages. Graeme, if you have any updates please send a copy to me in PVT. From the other replies by Mattias, Flavio and Hans-Peter, it seems docking support in Lazarus IDE is still far into the future. So yes, I'll continue and make the modification for now. If anybody wants to use the patch, I'll post it in Mantis. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Hans-Peter Diettrich wrote: I badly miss a hide designer windows on Run option. Isn't that the same as Environment Options Environment Windows 'Hide IDE windows on run' checkbox..??? Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] debug windows layout
Silvio Clecio wrote: Notice how hard it is to work with many windows scattered: http://imagebin.org/86466 By the way, do you know about the following option? Environment Options Environment Windows 'IDE title starts with project name' So if you have slightly less windows open, it will be easier to spot the Main form in the taskbar. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus