Crowdsourced GUI. Open beta testing. - page 47

 
Реter Konow:

Good luck! I will follow your progress.

I don't plan on completing this course, just the basics ..... considering we are starting from scratch, and the code will be overly commented, I think we will start. Here?

Alexei barbashin:

Sasha, believe me, Peter does not need it ;( You'll see very soon. :)

Well, you're in the know.

 
Алексей Барбашин:

Firstly, I think it's better to develop objects based on the basic objects of the standard library, it will make things much easier in the future.

Yes, of course we will partially rely on.... although it's not all smooth sailing.

From all of this I see one correct approach: each individual form must be created as a whole on one canvas. As a result, when you move will be one single solid object.

And the system of attaching objects, as well as event subscriptions, should better be used by developers, i.e. using MFC technology.

MFC technology - that's how)

I don't really care, but it may be easier to do everything in objects (logic) then their graphical reflection. And one convas or many is not so important.

I just started with the coordinates

It's a crude idea.

enum EX{};
enum EY{};

class CCoordPBase
   {
   bool flag;
   CCoordPBase *base;
   public:
 //  bool chek(CCoorPDdX &x) {return CheckPointer() }
   EX X_,W_;
   EY Y_,H_;
   CCoordPBase (){Init();}
   void Init() {X_=Y_=W_=H_=0; flag=0;}
   void Init(CCoordPBase &a) {base=GetPointer(a);};
   
   EX GetX() {return flag ? X_  +  ;}
   EY GetY() {return Y_;}
   EX GetW() {return W_;}
   EY GetH() {return H_;}
   operator
   bool MouseOn(CMouse &mouse)//px
      {
      return GetX()<=mouse.X && GetX()+GetW()>=mouse.X && GetY()<=mouse.Y && GetY()+GetH()>=mouse.Y;
      }
   };  

Not yet finished ... ie just started vrobshche, if you have any thoughts of interaction, please ...

 
Guys, all due respect, but you should create your own branch. It would be more convenient there. It's not what we're discussing here.
 
Алексей Барбашин:

"but maybe it's easier to do everything in objects" - that's more than logical

"Yes, of course we'll lean on some of it." - then let's get right to it:

CObject is the base class of all objects in the developers' library. Made by analogy with C++ and C#. The base object (type) in Sharp is Object.

Coordinates and dimensions are properties of the control, as well as border colour, colour and thickness, radiuses of roundings, icons and text.

We first have to define what kind of control we will assume is elementary and then describe the basic properties.

Of course, some of the properties we defined before can be left out for descendants, it's not a problem, but it's better to make the basic one the most versatile.

To avoid searching far away, here is an example of a simple universal control:

Contains background, border, radius, icon, text

If you need a Label, you don't specify background, border and icon; if you need a Panel, the contents are not specified; if you need a picture button, only icon is specified; if you need a button with an image, the background, border and image are specified.

So, this composition is quite universal for most controls.

Come on!!!!!

and I was thinking about making a simple interaction

where we'll put positionings like to the left of the previous object in case of lining up a line or a column

So we write a universal control
 
Реter Konow:
Guys, all due respect, but you should create your own thread. It would be more convenient there. It's not what we're discussing here.

ok.... I kept hoping the moderators would help

 
Alexandr Andreev:

ok.... I was hoping the moderators would help.

Of course they will, if we're fighting over turf here.)) Open your own thread and develop it. I'll read it with interest.))

 
Реter Konow:
Guys, all due respect, but you should create your own thread. It would be more convenient there. Otherwise we discuss other things here.

Is there really a discussion?

Peter, you are not even ready to accept the truth.

Everyone who has encountered your development has told you: Peter, it's cool, but tweak here, change there.... Note: NO ONE said it was bad. That was purely your perception!

And what's the answer? And Peter replies: you are wrong, I have my own way, my own standards and my own view of molecules...

At that point the discussion ceased, and people walked away.

That's understandable: how can you continue to interact with someone who is doing something solely for himself, so in his own way.

You claim that you are doing it for "everyone", but you don't even try to follow the standards of this "everyone", so "everyone" walks away from the discussion and testing after your first "stand".

 
Алексей Барбашин:

Is there really a discussion?

Peter, you're not even willing to accept the truth.

....

I need users in the thread. Traders who will test my product and use it. I don't intend to conduct scholarly arguments here. You can find out who's right in private.

Here we test the product the community offers free of charge. Full stop.

 
Алексей Барбашин:

Is there really a discussion?

Peter, you are not even ready to accept the truth.

Everyone who has encountered your development has told you: Peter, it's cool, but tweak here, change there.... Note: NO ONE said it was bad. That was purely your perception!

And what's the answer? And Peter replies: you are wrong, I have my own way, my own standards and my own view of molecules...

At that point the discussion would stop, and people would move on.

That's understandable: how can you continue to interact with someone who is doing something solely for himself, so in his own way.

You claim that you do it for "everyone", but you don't even try to follow the standards of this "everyone", so "everyone" walks away from the discussion and testing after your first "stand".

https://www.mql5.com/ru/forum/334431

Создание графической библиотеки с нуля
Создание графической библиотеки с нуля
  • 2020.03.07
  • www.mql5.com
Общее обсуждение: Создание графической библиотеки с нуля
 
Alexandr Andreev:

https://www.mql5.com/ru/forum/334431

+