как я могу добавить ui.ColorPalette в ui.Halo - PullRequest
0 голосов
/ 09 января 2019

Как я могу добавить ui.ColorPalette к настроенному дескриптору ui.Halo? Значок гало должен отображать первый цвет из ColorPalette.

Я использую Rappid.

Спасибо

1 Ответ

0 голосов
/ 24 января 2019

Я нашел решение. Может быть, кто-то может посмотреть на код и сказать, является ли решение правильным, и дать лучшее решение о том, как получить дескриптор гало (l_target). Спасибо Дитер

 //this is my halo handle
  var l_target  = document.getElementsByClassName('handle mycolor se');
  var l_fill = cellView.model.attr ('rect/fill');
  var l_content = [
     {content: '#ccff99'},
     {content: '#B3B3B3'},
     {content: '#808080'},
     {content: '#4D4D4D'},
     {content: '#E6E6E6'},
     {content: '#FFC7C9'},
     {content: '#FFA0A4'},
     {content: '#E3686D'}
   ];
  var l_selected = l_content.findIndex (c => c.content === l_fill);

  m_colorPalette = new joint.ui.ColorPalette({
    options: l_content,
    selected: l_selected
  });

  m_colorPalette.on ('option:select', function (element) {

    cellView.model.attr ('rect/fill', element.content);

  });
  m_colorPalette.render().el;

  l_target [0].appendChild (m_colorPalette.render().el);

гало с цветовой палитрой

...