Новая версия платформы MetaTrader 5 build 5100: Переход на Git и хаб разработчиков MQL5 Algo Forge, темная тема и улучшения интерфейса - страница 6

 
Renat Fatkhullin #:

Видно, что стоит нестандартная тема оформления.

Какая версия операционки, используется ли Wine?

2025.05.31 08:26:45.228 Terminal        MetaTrader 5 x64 build 5050 started for MetaQuotes Ltd.
2025.05.31 08:26:45.228 Terminal        Windows 10 build 19045, 12 x AMD Ryzen 5 8400F 6-Core, AVX2, 60 / 63 Gb memory, 169 / 198 Gb disk, admin, GMT+3
2025.05.31 08:26:45.228 Terminal        G:\MT5 Demo MQ

Никакого Wine.

А что Вы имеете ввиду «…тема оформления»? В общем-то да. Я поменял отступ с 3 символов на 2.

остальное вроде-бы не трогал. Да и сделано это гораздо раньше, чем началась проблема.

Добавлено: И на этих настройках так-же не видно что отмечено, а что нет. На видео в первые 15-17 секунд заметна подсветка текущей строки, а в настройках отметку не видно.

Почему то в МЕ 4 всё нормально.


 
Всем привет. Позвольте мне вставить свои "5 копеек" в ваш диалог. 
Редактор кода меня устраивает вполне. Тёмная тема вообще бомба. Возможность стерилизовать код в стиле java (и других стилях) для меня просто супер. 
Но не хватает ТРИ основные вещи для полнофункционального редактора
1. Вертикальная линия - направляющая отступа.
2. Свёртывание блоков. 
3. Карта файла. (Её очень не хватает, особенно когда в коде уже больше тысячи строк) 
Если реализовать эти три вещи остальное всё, это уже мелкие доработки, которые будут улучшать суперредактор 😊
 
Alexey Viktorov #:

Я так понимаю, такое только у меня творится? У вас всё нормально? Может кто-то предположить причину? Куда копать? Может ли быть связано с SSD М.2?

Я сижу на проверенной 4410.

В анонсах обновлений не вижу ничего для себя актуального (а по тестовой установке некоторых даже вижу ухудшения), рисковать стабильной работой боевых счетов не хочу, роботы пашут круглосуточно.

От нестандартной темы оформления подобные вещи, думаю, могут быть.

У меня под Wine'ом с xfce есть некоторые "особенности" отображения, а с IceWM эти особенности делали работу почти невозможной, пришлось отказаться.

 
Robert Sadamon #:
Но не хватает ТРИ основные вещи для полнофункционального редактора
1. Вертикальная линия - направляющая отступа.
2. Свёртывание блоков. 
3. Карта файла. (Её очень не хватает, особенно когда в коде уже больше тысячи строк) 
Если реализовать эти три вещи остальное всё, это уже мелкие доработки, которые будут улучшать суперредактор 😊

Поддерживаю, плюс к этому ещё очень хотелось бы прокрутку (при наведении) колесом мыши строки вкладок, как в браузере.

 
Возможно ли в редакторе сделать шаблоны кодов, типа набрал fori нажал Tab или Enter, а в код вставились строки из пользовательского шаблона, где вертикальная палочка  |  будет отмечать положение курсора после вставки: 
Файлы:
 
Ruslan Khasanov #:
Из пожеланий: Хотелось бы иметь возможность управлять цветовыми темами из MQL. Думаю, разработчики панелей и интерфейсов поддержат такой запрос. 
как минимум программное определение какая тема включена - светлая или тёмная.
 
Aleksander #:
Возможно ли в редакторе сделать шаблоны кодов, типа набрал fori нажал Tab или Enter, а в код вставились строки из пользовательского шаблона, где вертикальная палочка  |  будет отмечать положение курсора после вставки: 

Сейчас только стандартные шаблоны можно вставлять.
Набери for появится стрелка после курсора мигающая в такт курсору, жми Tab, в код вставится скелет.
Так же и с if, do, while, switch.

По поводу пользовательских сниппетов давно это предлагал, учитывая многословность языка и повторяющихся конструкций кода.

 

Билд 5051

Стандартный \MQL5\Include\Canvas\Canvas.mqh не компилируется:

'm_width' - parameter conversion not allowed    Canvas.mqh      362     44
   built-in: bool ResourceReadImage(const string,uint&,uint&,uint&)     Canvas.mqh      362     44

Ссылается сюда:

//+------------------------------------------------------------------+
//| Attach new object with bitmap resource                           |
//+------------------------------------------------------------------+
bool CCanvas::Attach(const long chart_id,const string objname,ENUM_COLOR_FORMAT clrfmt=COLOR_FORMAT_XRGB_NOALPHA)
  {
   if(OBJ_BITMAP_LABEL==ObjectGetInteger(chart_id,objname,OBJPROP_TYPE))
     {
      string rcname=ObjectGetString(chart_id,objname,OBJPROP_BMPFILE);
      rcname=StringSubstr(rcname,StringFind(rcname,"::"));
      if(ResourceReadImage(rcname,m_pixels,m_width,m_height))
        {
         m_chart_id=chart_id;
         m_objname=objname;
         m_rcname=rcname;
         m_format=clrfmt;
         m_objtype=OBJ_BITMAP_LABEL;
         //--- success
         return(true);
        }
     }
//--- failed
   return(false);
  }

Т.е. ResourceReadImage() требует параметр с типом uint, а в классе переменная объявлена как int:

protected:
   long              m_chart_id;               // chart ID
   string            m_objname;                // object name
   ENUM_OBJECT       m_objtype;                // object type
   string            m_rcname;                 // resource name
   int               m_width;                  // canvas width
   int               m_height;                 // canvas height
   ENUM_COLOR_FORMAT m_format;                 // method of color processing
  1. Компилятор теперь не пропускает такое?
  2. Это ошибка, или закручивание гаек до более строгой типизации?
  3. Как быть с канвасом?
 
А можно уже заменить в журналах применение шрифта моноширного с засечками на моноширный без засечек? Плохо читается, неудобно.
 
Artyom Trishkin #:
CCanvas::Attach

У вас видимо не обновилась библиотека.У меня эта функция в канвасе выглядит сейчас так

//+------------------------------------------------------------------+
//| Attach new object with bitmap resource                           |
//+------------------------------------------------------------------+
bool CCanvas::Attach(const long chart_id,const string objname,ENUM_COLOR_FORMAT clrfmt=COLOR_FORMAT_XRGB_NOALPHA)
  {
   if(OBJ_BITMAP_LABEL==ObjectGetInteger(chart_id,objname,OBJPROP_TYPE))
     {
      string rcname=ObjectGetString(chart_id,objname,OBJPROP_BMPFILE);
      rcname=StringSubstr(rcname,StringFind(rcname,"::"));
      if(ResourceReadImage(rcname,m_pixels,(uint&)m_width,(uint&)m_height))
        {
         m_chart_id=chart_id;
         m_objname=objname;
         m_rcname=rcname;
         m_format=clrfmt;
         m_objtype=OBJ_BITMAP_LABEL;
         //--- success
         return(true);
        }
     }
//--- failed
   return(false);
  }
//+------------------------------------------------------------------+
Судя по тому, что разработчики правили файлы библиотеки, то да, гайки подзакручены.