Libraries: EasyAndFastGUI library for creating graphical interfaces - page 8

Anatoli Kazharski  

New version published (v2.15):

  • Automatic scaling of the graphical interface depending on the settings in your operating system (DPI).
  • Several minor fixes.

What is the difference between the second version of the library and the first

  1. All images for GUI elements have been digitized and now there is no need for a folder with images. You can download the archive of pictures from the old version if you need a custom set of pictures for work.
  2. Significant improvement in event stream handling. In the previous version, there was a noticeable delay if there were a lot of elements. Now everything works very fast with any number of elements.
  3. Added the ability to change the color scheme of the GUI. In this version, it is possible to quickly switch between light and dark themes while a ready-made MQL application is running.
  4. Integrated a new element (C3DBase) from the standard library (CCanvas3D) for working with three-dimensional graphics.
  5. The TimeRanges element for visualizing time trading ranges.
  6. Multi-window mode. Now you can choose between free switching and modal mode.
  7. Automatic scaling of the graphical interface depending on the settings in your operating system (DPI).
  8. The structure of folders and library files has changed. Now all files are categorized.
  9. The second version comes with a ready-to-use MT4 version.
  10. All elements have methods for quick creation. Almost all elements with default parameters can now be created in just one line of code.

The screenshots below show the difference at 100% and 125% scale (in the operating system settings):


//---

Images in high resolution. That is, even at a scale of 400% (8K UHD), they will look great.

Facundo Laje  

Hello Anatoli, 

Thanks por the update!!

Please could you share how to use these GUI ditized images? 

For explame for these EA, 

In which resources were use pointing to Imaga folder.. How could be resolved? 


Thanks!

Facundo Laje  

Othe issue that I have is that I can not change Button Y size when I working with a Group of Button ( works ok with single button)

V 2.14  Example 001

  //--- Buttons group 1

  string text1[] = {"BUTTON 1", "BUTTON 2"};

  CCoreCreate::CreateButtonsGroup(m_buttons1, m_frame1, 0, 10, 40, text1);

  m_buttons1.SelectButton(1);

  m_buttons1.ButtonYSize(80); //Added by me! 

This last line of code has not effect.

I also tried 

m_buttons1.YSize(80)


Thanks for your help!

Anatoli Kazharski  
Facundo Laje #:

...

When I update to the new 2.15 version, no Image folder was download.

Could you help me?

Thanks

For users of the EasyAndFastGUI 2.0 library, I send an archive with high-resolution images upon their request in private messages.

For controls, they are not needed, as they are digitized and built into the library code. But they can be used in custom elements, as shown in the code examples that come with the library.

I will send you an archive with images in private messages.

Anatoli Kazharski  
Facundo Laje #:

Othe issue that I have is that I can not change Button Y size when I working with a Group of Button ( works ok with single button)

...

Thanks for your help!

Thank you for message!

The fix will be in the next update.

In order to make the necessary changes yourself in this file:

MQL5\Include\EasyAndFastGUI\Core\Create\Include\Buttons\ButtonsGroup.mqh

remove this line (height for default button):

  //--- Button properties
  static void SetDefaultButtonParams(CButton &obj, const color label_clr, const color border_clr) {
    
    obj.YSize(20);
    obj.LabelColor(label_clr);
    obj.LabelColorHover(label_clr);
    obj.LabelColorPressed(label_clr);
    obj.BorderColor(border_clr);
    obj.BorderColorHover(border_clr);
    obj.BorderColorPressed(border_clr);
  }

//---

Then it will be possible to set the height of all buttons in the group like this:

  //--- Buttons group 1
  string text1[] = {"BUTTON 1", "BUTTON 2"};
  m_buttons1.ButtonYSize(25);
  CCoreCreate::CreateButtonsGroup(m_buttons1, m_frame1, 0, 10, 40, text1);
  m_buttons1.SelectButton(1);
Meelis Hynninen  

Hi, also bought this, but cannot run examples, no images


#define CUSTOM_RESOURCE_PATH "Images\\EasyAndFastGUI\\Icons\\"

#resource "\\" CUSTOM_RESOURCE_PATH "s400_server_off_1.bmp"
Anatoli Kazharski  
Meelis Hynninen #:

Hi, also bought this, but cannot run examples, no images

Hi!

I sent you an archive of high resolution images in private messages.