Recent

Author Topic: Tabbed document interface  (Read 36138 times)

TurboRascal

  • Hero Member
  • *****
  • Posts: 672
  • "Good sysadmin. Bad programmer."™
Tabbed document interface
« on: May 17, 2010, 06:28:07 pm »
I've seen this topic has been addressed by several people before, but not to resurrect very old threads, I'll start a new one.

It would be nice to have a MDI-like tabbed interface controls, interface that all modern browsers and editors have. As far as I'm concerned, I wouldn't even care to see "real" MDI at all, and I guess most people too would benefit more from the tabbed document interface then the windowed MDI. IMHO, having the subwindows is a real benefit only in graphics programs.

So I guess it might be wise to incorporate a tabbed document interface into the LCL, and that even isn't so hard to accomplish, at least compared to MDI...
Regards, ArNy the Turbo Rascal
-
"The secret is to give them what they need, not what they want." - Scotty, STTNG:Relics

Troodon

  • Sr. Member
  • ****
  • Posts: 484
Re: Tabbed document interface
« Reply #1 on: May 17, 2010, 06:38:58 pm »
Like a TNotebook?
Lazarus/FPC on Linux

Silvio Clécio

  • Guest
Re: Tabbed document interface
« Reply #2 on: May 17, 2010, 07:00:07 pm »

iPasha

  • Newbie
  • Posts: 3
Re: Tabbed document interface
« Reply #3 on: May 18, 2010, 06:25:32 am »
Nice sample
Thanks

theo

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1927
Re: Tabbed document interface
« Reply #4 on: May 18, 2010, 06:39:09 am »
Could somebody explain the difference of a TDI to a TPageControl?

TurboRascal

  • Hero Member
  • *****
  • Posts: 672
  • "Good sysadmin. Bad programmer."™
Re: Tabbed document interface
« Reply #5 on: May 18, 2010, 11:25:07 am »
@both Troodon and Theo:
TDI is not just a tabbed component like the two you mentioned, it is a multi-document paradigm, similar to MDI. Probably the most popular example of TDI are most modern web browsers, where you get an interface containing several different documents, each shown within the same window and selected using tabs. Modern text editors have it too. Moreover, similar to MDI, those documents are dynamic, i.e. you create and destroy them during the program's execution. Also, each created tab can already contain controls to show or edit content, whatever the purpose of the program is.

The main difference between MDI ant TDI is that TDI content uses all the main window space, while in MDI can be contained in windows within the main window, and can be similarly viewed.

From what I can see, TDI has become very popular, while MDI use is dropping, remaining only in the programs that benefit from that. I believe most programs don't need MDI, but TDI instead. Having a possibility to create TDI programs similar to the option for creating MDI in Delphi would be great. If TDI becomes part of Lazarus, I for sure won't hold my breath waiting for MDI...

@silvioprog: thanks for the effort!
Regards, ArNy the Turbo Rascal
-
"The secret is to give them what they need, not what they want." - Scotty, STTNG:Relics

theo

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1927
Re: Tabbed document interface
« Reply #6 on: May 18, 2010, 11:49:21 am »
Having a possibility to create TDI programs similar to the option for creating MDI in Delphi would be great.

It's still not clear to me what that should be in addition to what TPageControl/TNotebook already do? Can you explain?

Silvio Clécio

  • Guest
Re: Tabbed document interface
« Reply #7 on: May 18, 2010, 12:45:12 pm »
More samples with TDI (the application not is my), but with Delphi+Jedi (I think):

http://imagebin.org/97333
http://imagebin.org/97334
http://imagebin.org/97335

theo

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1927
Re: Tabbed document interface
« Reply #8 on: May 18, 2010, 12:58:39 pm »
More samples with TDI (the application not is my), but with Delphi+Jedi (I think):

Yes, it's great. But I still can't see the difference to what I can do with TPageControl in two minutes:


TurboRascal

  • Hero Member
  • *****
  • Posts: 672
  • "Good sysadmin. Bad programmer."™
Re: Tabbed document interface
« Reply #9 on: May 18, 2010, 01:16:13 pm »
Yes, it's great. But I still can't see the difference to what I can do with TPageControl in two minutes:

Well... yes, exactly that. Congratulations, you just made a TDI ;)

However, for some more complex stuff it would be useful to have some support for it already in Lazarus, similar to MDI support in other IDEs...
« Last Edit: May 18, 2010, 01:18:35 pm by Turbo Rascal »
Regards, ArNy the Turbo Rascal
-
"The secret is to give them what they need, not what they want." - Scotty, STTNG:Relics

Silvio Clécio

  • Guest
Re: Tabbed document interface
« Reply #10 on: May 18, 2010, 01:35:50 pm »
theo, I also do, even with TPanel ;D. But the guys need it native in IDE, with a component. :) (TLazTDI? :o)

theo

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1927
Re: Tabbed document interface
« Reply #11 on: May 18, 2010, 01:56:23 pm »
Can you please define more precisely what you would like to see?

How is TPageControl not integrated in the IDE?
Just right click on the control at design-time and add a page.
Place whatever you want on this page.

Can you explain what more is desirable?

Silvio Clécio

  • Guest
Re: Tabbed document interface
« Reply #12 on: May 18, 2010, 02:07:54 pm »
Turbo Rascal, the application (with Jedi, I think) is not mine, it's of a guy here in Brazil. I think in to do a nice themed interface(cross), something like this:

(buy)
http://www.devexpress.com/Products/VCL/ExLayoutControl/

(open source)
http://blog.silvioprog.com.br/search/label/Skins

I invited some guys in Brazil to help me to create one from scratch, but only one guy was interested, and a component with this size, need at least a 4 guys working.

Troodon

  • Sr. Member
  • ****
  • Posts: 484
Re: Tabbed document interface
« Reply #13 on: May 18, 2010, 02:24:40 pm »
about.com has the following description for TDI:

TDI application, similar to MDI, displays child windows under a single parent window. Unlike the floating child windows of MDI, in TDI each child is displayed in its own tab... Browsers like IE8, Chrome or Firefox use tabbed user interface.

I am looking at FF right now and frankly, what is about it that one cannot do with an autoresizing TNotebook, as the one shown in the attachment? The only distinction is semantic: "child window in a tab".
« Last Edit: May 18, 2010, 05:30:44 pm by Troodon »
Lazarus/FPC on Linux

TurboRascal

  • Hero Member
  • *****
  • Posts: 672
  • "Good sysadmin. Bad programmer."™
Re: Tabbed document interface
« Reply #14 on: May 18, 2010, 04:32:38 pm »
...
The only distinction is semantic: "child window in a tab".

Of course, and that distinction is actually the topic here. Just as in MDI components...
Regards, ArNy the Turbo Rascal
-
"The secret is to give them what they need, not what they want." - Scotty, STTNG:Relics

 

TinyPortal © 2005-2018