My approach. The core is the engine. - page 132

 
Реter Konow:

Yes, it looks cool. But it's not a builder yet. It's a long way from a constructor...

and knows everything for everyone)))

 

This is actually what happens to the table when you insert the names of other elements into it.

GROUP,"Orders table", IS_TABLE,  

__,     T_HEADER, "#",W,20,_,H,30, C_HEADER, "Order",     C_HEADER, "Opening Time",W,90, C_HEADER, "Type", W,90,  C_HEADER, "Volume", W,90,  C_HEADER, "Symbol", W,90, 
                               C_HEADER, "Price",       W,90,    
                               C_HEADER, "Comission",   W,90, C_HEADER, "Swap", W,90,  C_HEADER, "PnL",    W,90,  C_HEADER, "Close",  W,40,

__,     R_HEADER,"1", CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A,     
__,     R_HEADER,"2",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"3",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"4",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"5",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"6",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"7",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"8",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"9",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"10",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"11",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"12",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"13",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"14",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"15",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"16",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"17",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"18",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"19",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"20",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"21",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
 
END_GROUP,
//------------------------------------


 

Softly, slowly and inconspicuously, adequacy goes far, far over the horizon. This 21-column limit bullshit should not have been shown at all. Even knowing that the result will be obtained with such a limit, it would not be worth even approaching to development, because the result is only for humor branch or annals of the month.

But this comrade still manages to stand in a position that everything is mega-cool with him and everyone else sucks.

 

In theory, if you include this property i, IS_DINAMIC

then this table should become dynamic and work properly with all its elements. I haven't tested it yet. I'm curious myself...

 
Реter Konow:

In theory, if you include this property i, IS_DINAMIC

then this table should become dynamic and work properly with all its elements. I haven't tested it yet. I'm curious myself...

This is the kind of experimental programming :-) you write a kernel-engine and then try to figure out the properties and options
 
Реter Konow:

The next dynamic table will be even more interesting. The cells will have input fields, pop-up lists, checkboxes, buttons, radio buttons, progress bars, and input fields with +/- buttons.

The tricky part is the dynamism of such a table. It's not connected with specific parameters, it depends on row mage.

Nikolai Semko:
That's why I wanted you to do everything yourself, not to give you ready-made solutions, which hit the wall.
And you imagine, Peter, there's also such a feature, as a pointer to a function, thanks to which you can organizecalls of functions, simply taking these pointers from an array of such pointers. I think this would be very useful in your task. Only trouble is, you have to mess with classes again.

I told you about it 5 days ago.
Eh, you were not heard again...

 
Maxim Kuznetsov:
this is experimental programming :-) you write a kernel-engine and then try to figure out the properties and options

hmm, didn't expect it, but googled "Experimental programming":

Darwinian programming/Experimental programming

Changing code (usually randomly) without understanding the meaning of the changes until it works. For example, replacing increment with decrement.

On the subjecthttps://habr.com/company/mailru/blog/191998/

 
Nikolai Semko:

Talked about it 5 days ago.
Eh, again remained unheard...

But your Unions came in handy. I switched to communication via resources)) (although MT objects could also be used, but still decided that resources are more promising and easier).

 
Реter Konow:

But your Unions came in handy. I switched to communication via resources)) (although MT objects could also be used, but still decided that resources are more promising and easier).

You're not hearing me again! And not only me...

Read it at last:

https://www.mql5.com/ru/docs/basis/types/object_pointers

https://www.mql5.com/ru/docs/basis/types/typedef

 

Yes, I can hear you, I just don't understand. Where do you apply it?