Discussion of article "Graphical Interfaces X: Text selection in the Multiline Text box (build 13)" - page 10

 
Konstantin:
Probably it is not necessary to create two main windows on the chart, dialogue windows like in your example are enough ))
Yes. For correct work only one main window should be there now. The rest are dialogue windows.
 
Anatoli Kazharski:
Yes. To work properly, there should only be one main window now. The rest are dialogue windows.
I was talking about changes in future builds of the library, that it is probably not necessary to make these changes, because the program should still have one main window, the rest all go as dialogue windows ))
 

The CTabs class lacks tab scrolling, not with a scroll bar as in lists and tables, but by clicking (left/right and/or top/bottom) button elements:

 
Konstantin:

The CTabs class lacks tab scrolling, but not with a scroll bar as in lists and tables, but by clicking (left / right and (or) top / bottom) button elements:

Perhaps, for cases when you need a lot of tabs, a variant with a tree list, whose items can work in the "Tabs" mode, will work.

For examples, see this article: GUIs VIII: Tree List Element (Chapter 2).

Section:

The tab items of the "Advisors" and "Indicators" lists will have such elements as checkboxes (CCheckBox) and tables of the CTable type. Let's leave the tab items of the "Scripts" list empty so that you can practice quickly. We won't give you the whole code. It is worth noting only the key modes and properties that will be used for this variant: (1) item-tabbed mode is enabled, (2) item content display is disabled, and (3) the third item-tab is highlighted.


 
Anatoli Kazharski:

Perhaps for cases where you need a lot of tabs, a tree-list variant, whose items can work in "Tabs" mode, is a good option.

For examples, see this article: GUIs VIII: Tree List Element (Chapter 2).

Section:



A tree list is useful when there are branches, but in the tab system there are no branches, it's basically a list, you have it represented by CTabs class, but the essence is the same )) On my screen you can see the standard scrolling for tabs, which is used in various frameworks describing GUI - .NET, Qt, MFC, etc. I think that in your library this mechanism will also be useful.
 
Konstantin:

A tree list is useful when there are branches, but in the tabs system there are no branches, it is essentially a list, you have it represented by the CTabs class, but the essence is the same )) On my screen you can see the standard scrolling for tabs, which is used in various frameworks describing GUI - .NET, Qt, MFC, etc. I think that in your library this mechanism will not hurt either.

But until it is not available, you can use a variant of the list with items-tabs. It can be organised without branching.

P.S. I know that a lot of things are implemented in other libraries.

Now we are in the process of total code optimisation. Many similar elements will be combined in one element to exclude multiple repetitions. The same applies to element properties. And after that we will see in what direction to develop the library further. Without fanaticism, of course.

 
Anatoli Kazharski:

But until you have it, you can use a list with tab items. It can be organised without branching.

P.S. I know that a lot of things are implemented in other libraries myself.

Now we are in the process of total code optimisation. Many similar elements will be combined in one element to exclude multiple repetitions. The same applies to element properties. And after that we will see in what direction to develop the library further. Without fanaticism, of course.

by the way, how to delete an element in an object of CTabs class, because I found the addition, but I can't find the deletion or at least the method of clearing from tabs.
 
Konstantin:
By the way, how to delete an element in an object of CTabs class, because I found the addition, but I can't find the deletion or at least the method of clearing from tabs.
There is no such method yet. Perhaps, it will be in one article.
 
Why in the CTabs class object, after adding a tab with the AddTab method, it does not appear, although the TabsTotal method shows that the number of tabs has increased?
 
Konstantin:
Why in an object of class CTabs, after adding a tab using the AddTab method, it does not appear, although the TabsTotal method shows that the number of tabs has increased?

Add tabs before creating the element. Refer to examples from articles about this or that element. If something is not mentioned, it means that this feature does not exist yet.

Adding and deleting after an element is created works now only in lists and tables.