Code Duplication    Length = 46-46 lines in 2 locations

public/js/tinymce/themes/inlite/theme.js 1 location

@@ 8802-8847 (lines=46) @@
8799
    });
8800
8801
    var ListBox = MenuButton.extend({
8802
      init: function (settings) {
8803
        var self = this;
8804
        var values, selected, selectedText, lastItemCtrl;
8805
        function setSelected(menuValues) {
8806
          for (var i = 0; i < menuValues.length; i++) {
8807
            selected = menuValues[i].selected || settings.value === menuValues[i].value;
8808
            if (selected) {
8809
              selectedText = selectedText || menuValues[i].text;
8810
              self.state.set('value', menuValues[i].value);
8811
              return true;
8812
            }
8813
            if (menuValues[i].menu) {
8814
              if (setSelected(menuValues[i].menu)) {
8815
                return true;
8816
              }
8817
            }
8818
          }
8819
        }
8820
        self._super(settings);
8821
        settings = self.settings;
8822
        self._values = values = settings.values;
8823
        if (values) {
8824
          if (typeof settings.value !== 'undefined') {
8825
            setSelected(values);
8826
          }
8827
          if (!selected && values.length > 0) {
8828
            selectedText = values[0].text;
8829
            self.state.set('value', values[0].value);
8830
          }
8831
          self.state.set('menu', values);
8832
        }
8833
        self.state.set('text', settings.text || selectedText);
8834
        self.classes.add('listbox');
8835
        self.on('select', function (e) {
8836
          var ctrl = e.control;
8837
          if (lastItemCtrl) {
8838
            e.lastControl = lastItemCtrl;
8839
          }
8840
          if (settings.multiple) {
8841
            ctrl.active(!ctrl.active());
8842
          } else {
8843
            self.value(e.control.value());
8844
          }
8845
          lastItemCtrl = ctrl;
8846
        });
8847
      },
8848
      value: function (value) {
8849
        if (arguments.length === 0) {
8850
          return this.state.get('value');

public/js/tinymce/themes/modern/theme.js 1 location

@@ 8610-8655 (lines=46) @@
8607
    });
8608
8609
    var ListBox = MenuButton.extend({
8610
      init: function (settings) {
8611
        var self = this;
8612
        var values, selected, selectedText, lastItemCtrl;
8613
        function setSelected(menuValues) {
8614
          for (var i = 0; i < menuValues.length; i++) {
8615
            selected = menuValues[i].selected || settings.value === menuValues[i].value;
8616
            if (selected) {
8617
              selectedText = selectedText || menuValues[i].text;
8618
              self.state.set('value', menuValues[i].value);
8619
              return true;
8620
            }
8621
            if (menuValues[i].menu) {
8622
              if (setSelected(menuValues[i].menu)) {
8623
                return true;
8624
              }
8625
            }
8626
          }
8627
        }
8628
        self._super(settings);
8629
        settings = self.settings;
8630
        self._values = values = settings.values;
8631
        if (values) {
8632
          if (typeof settings.value !== 'undefined') {
8633
            setSelected(values);
8634
          }
8635
          if (!selected && values.length > 0) {
8636
            selectedText = values[0].text;
8637
            self.state.set('value', values[0].value);
8638
          }
8639
          self.state.set('menu', values);
8640
        }
8641
        self.state.set('text', settings.text || selectedText);
8642
        self.classes.add('listbox');
8643
        self.on('select', function (e) {
8644
          var ctrl = e.control;
8645
          if (lastItemCtrl) {
8646
            e.lastControl = lastItemCtrl;
8647
          }
8648
          if (settings.multiple) {
8649
            ctrl.active(!ctrl.active());
8650
          } else {
8651
            self.value(e.control.value());
8652
          }
8653
          lastItemCtrl = ctrl;
8654
        });
8655
      },
8656
      value: function (value) {
8657
        if (arguments.length === 0) {
8658
          return this.state.get('value');