Замена иконок в treetable

Доброго времени суток.
Изучив https://ru.docs.webix.com/datatree__node_templates.html пытаюсь тоже самое сделать для treetable:

      view:"treetable",
       columns: [
          {  id:"id:, header: "test", template:"{common.icon()} {common.my_folder()} #value#"  } 
      ],
      type:{
        my_folder: function(obj){
          if(obj.$level == 1)
            return "<span class='webix_icon mdi mdi-folder-open'></span>";
          if (obj.$level == 2)
            return "<span class='webix_icon mdi mdi-video'></span>";
          return  "<span class='webix_icon mdi mdi-file-video'></span>";
        }
      }

иконки меняются, но пропадает отступ для подчиненных элементов, если сделать так

 template: "{common.treetable()} {common.my_folder()} #value#"} 

отступы появляются, но сохраняются стандартные иконки (за ними рисуются новые).
Как заменить стандартные иконки в treetable?

1

Добрый день, @pnk!

Пресет “treetable” (один из встроенных общих элементов шаблона Treetable) состоит из трех элементов, которые можно использовать по отдельности: Code Snippet
Отступ на основе уровня задается {common.space()}, поэтому было бы правильно объединить только «space» и «icon» (без «folder»).

Посмотрите пожалуйста решение в сниппете.

Огромное спасибо, отображается как надо. Добавьте, пожалуйста, информацию о темплейте common.space() в Документацию.

Еще вопрос. Можно ли совместить замену иконок в tree/treedata с отображением линий, соединяющих узлы дерева (type:“lineTree”)?

Добрый день, @pnk!

Для tree необходимо задать новый тип на базе существующего, указав свойство baseType: type of common helpers, Methods Webix Docs

В новом типе создается новый элемент (itemIcon), в котором задаются новые иконки для template. И уже в template обычный common.folder заменяется на common.itemIcon: snippet.webix.com/znrrrhos

Отрисовка линий в этом типе реализована также в common.icon(), поэтому замену иконок common.icon() лучше осуществлять через css.

Treetable, к сожалению, не поддерживает тип lineTree

Спасибо! Но вся прелесть Вашего фреймворка как раз в отсутствии необходимости пользоваться CSS, да и в принципе HTML
, Что несомненно является как и плюсом, так и минусом.
Придется мудрить с CSS/