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

 

Peter, you have to understand one thing. You will be able to find users of your engine if you implement their ideas for free. In other words, you make everything there, connect it properly, configure it, and they use it. They may even thank you for it. They will not open MetaEditor anyway. They do not really care how it works, even if you have a devil in a snuffbox. The main thing is that the toolbar works, that is all. But do not confuse this situation with general acceptance. They will see it as a freebie, nothing more. As soon as they need to make something from GUI and you are not around, they will hire a progreger, who will not use your samovar, and his developments. You will get the same panel, the user will use it and won't even remember your engine. And if he does, he will remember something like this: "Yes, there was some weirdo who offered to make a panel for free. Then disappeared. I ordered it from someone else. The panel works - satisfied.

You will only get general recognition when those who create your panels start using your work. But this will not happen because your original approach to programming is little different from the modern code obfuscator. That's how it is, Peter.

 
Vasiliy Sokolov:

Peter, you have to understand one thing. You'll be able to find users of your engine if you implement their ideas for free...

That's where I suspect you're right.

 
Peter, think of this thread as a kind of technical examination of your "engine". So far the expertise has failed miserably. Without the recognition of the professional community, your engine will not be in demand. All you can do with it yourself is persuade users to let you implement their fantasies, of course for free.
 
Vasiliy Sokolov:

Peter, you have to understand one thing. You will be able to find users of your engine if you implement their ideas for free. In other words, you make everything there, connect it properly, configure it, and they use it. They may even thank you for it. They will not open MetaEditor anyway. They do not really care how it works, even if you have a devil in a snuffbox. The main thing is that the toolbar works, that is all. But do not confuse this situation with general acceptance. They will see it as a freebie, nothing more. As soon as they need to make something from GUI and you are not around, they will hire a progreger, who will not use your samovar, and his developments. You will get the same panel, the user will use it and won't even remember your engine. And if he does, he will remember something like this: "Yes, there was some weirdo who offered to make a panel for free. Then disappeared. I ordered it from someone else. The panel works - satisfied.

You will only get general recognition when people who make custom-made panels start using your work. But this will not happen because your original approach to programming is little different from the modern code obfuscator. That's how it is, Pyotr.

Can you give me an example of an obfuscator? I cannot fully understand this definition. Everything is clear with Pyotr.

fxsaber is an example of an obfuscator to me. Or am I misunderstanding?

 
Vasiliy Sokolov:

Are you really asking, or are you just kidding? You have some hellish string of hundreds of variable definitions that you want to pass off as some kind of table. The pseudo-table itself is crooked, with no structure, containing obscure acronyms.

And that's what it is:

Did you come up with this formatting yourself? Good for you, you have every chance of taking first place in ioccc.org.

But mate, you don't write like that. AT ALL. No one can use this code.

void Sync_params(int ID){for(int a1 = 0; a1 < All_params; a1++){if((int)P_CORE[a1][_SYNC_ID] == ID){P_CORE[a1][_LAST_VALUE]    = P_CORE[a1][_CURRENT_VALUE];P_CORE[a1][_CURRENT_VALUE] = P_CORE[a1][_NEW_VALUE];}}}
void Sync_P_CORE(){for(int a1 = 0; a1 < All_params; a1++){if(P_CORE[a1][_CURRENT_VALUE] != P_CORE[a1][_NEW_VALUE]){P_CORE[a1][_LAST_VALUE]    = P_CORE[a1][_CURRENT_VALUE];P_CORE[a1][_CURRENT_VALUE] = P_CORE[a1][_NEW_VALUE];if(P_CORE[a1][_SYNC_ID] != NULL)Sync_params((int)P_CORE[a1][_SYNC_ID]);EventChartCustom(0,_SYNC_P_CORE,(int)P_CORE[a1][_ELEMENT],0,P_CORE[a1][_CURRENT_VALUE]);}}}

These functions are part of the engine's connection mechanism. You don't need to look at them or open Connection Properties.mqh file.

This file is not for users.

The External Connection.mqh file is for users.


Vasily, you don't open the lid of your new TV to find out if it is made correctly inside. The main thing for you is to make it work. So it's the same here.

Connection Properties.mqh only needs to be connected. It doesn't matter what's in it.

 
Vasiliy Sokolov:

Peter, you have to understand one thing. You will be able to find users of your engine if you implement their ideas for free. In other words, you make everything there, connect it properly, configure it, and they use it. They may even thank you for it. They will not open MetaEditor anyway. They do not really care how it works, even if you have a devil in a snuffbox. The main thing is that the toolbar works, that is all. But do not confuse this situation with general acceptance. They will see it as a freebie, nothing more. As soon as they need to make something from GUI and you are not around, they will hire a progreger, who will not use your samovar, and his developments. You will get the same panel, the user will use it and won't even remember your engine. And if he does, he will remember something like this: "Yes, there was some weirdo who offered to make a panel for free. Then disappeared. I ordered it from someone else. The panel works - satisfied.

You will only get general recognition when people who make custom-made panels start using your work. But this won't happen because your original approach to programming is little different from the modern code obfuscator. That's the way it is, Peter.

This constructor (markup language) and the Engine (GUI indicator) are intended for everyone who writes or wants to learn to write in MQL.

Markup language is extremely simple. You can learn it in 2 days. + You can use codes of elements and windows of other people. Just paste it to yourself and do not get bogged down.

The builder generates a digital shell, which is loaded into the Engine, which plays the use of the GUI. GUI and executes the mechanics.

The user only needs to connect their EA via theExternal Connection.mqh file

//----------------------------------------------------------------------------------------------------------------------

The user is thus required to:

  1. Compile or copy the code of windows in the markup language.
  2. Compile it.
  3. Get a digital core of their GUI in a file.
  4. Load the Engine.
  5. Connect the generatedExternal Connection.mqh and Connection Properties.mqh files to the EA.
  6. Fill External Connection.mqh file.
This will give you a working GUI that communicates with your program.

 

Ok. How to make a window with checkboxes and a table for an indicator with this gui? Please get a full example from the developer.

Start the indicator or press the button - the window has appeared. Pressed the cross - the window is closed, the state of checkboxes at the subsequent opening is not changed.

Window of 10 checkboxes and a table of 12 rows|5 columns, first column and the first row text value cells, the other cells double (eg filling OHLC last 10 bars formed line by line).

Thanks in advance!

 
Реter Konow:

Thus, the user is required to

Peter, I'm talking about Thomas, and you're talking about Yeremia again. Find at least one dummy user, who will fulfill your points "the user is required to...". Then we'll see how "easy and simple" it is to work with your engine. For example, hire that humanoid watcher to try and do something with your samovar. Then we'll see.

 
Unicornis:

Ok. How to make a window with checkboxes and a table for an indicator with this gui? Please get a full example from the developer.

Start the indicator or press the button - the window has appeared. Pressed the cross - the window is closed, the state of checkboxes at the subsequent opening is not changed.

Window of 10 checkboxes and a table of 12 rows|5 columns, first column and the first row text value cells, the other cells double (eg filling OHLC last 10 bars formed line by line).

Thanks in advance!

Will do tomorrow.

I will post the engine and connection files. Then, under my guidance, we will connect together.

 
Vasiliy Sokolov:

Peter, I'm talking about Thomas and you're talking about Jeremiah again. Find at least one dummy user who will fulfill your points "the user is required to...". Then we'll see how "easy and simple" it is to work with your engine. For example, hire that humanoid watcher to try and do something with your samovar. Then we'll see.

Whatever we're arguing about, you can't insult another human being. I hope that's clear.

Oleg Papkov has long been working with my engine. And judging by his statements, he is completely satisfied.
Reason: