code: def set_e(self):
          if self.ui.combobox_decodings.count() < 1:  # Empty list
              return
  
          self.e = copy.deepcopy(self.decodings[self.ui.combobox_decodings.currentIndex()])
          
          chain = self.e.get_chain()
          self.ui.decoderchain.clear()
          self.chainoptions.clear()
          last_i = ""
          for i in chain:
              if i in [constants.DECODING_INVERT, constants.DECODING_ENOCEAN, constants.DECODING_DIFFERENTIAL,
                       constants.DECODING_REDUNDANCY, constants.DECODING_CARRIER, constants.DECODING_BITORDER,
                       constants.DECODING_EDGE, constants.DECODING_DATAWHITENING, constants.DECODING_SUBSTITUTION,
                       constants.DECODING_EXTERNAL, constants.DECODING_CUT, constants.DECODING_MORSE,
                       constants.DECODING_DISABLED_PREFIX]:
                  self.ui.decoderchain.addItem(i)
                  self.decoderchainUpdate()
                  last_i = self.ui.decoderchain.item(self.ui.decoderchain.count() - 1).text()
              else:
                  if any(x in last_i for x in [constants.DECODING_REDUNDANCY, constants.DECODING_CARRIER,
                                               constants.DECODING_SUBSTITUTION, constants.DECODING_EXTERNAL,
                                               constants.DECODING_DATAWHITENING, constants.DECODING_CUT,
                                               constants.DECODING_MORSE]):
                      self.chainoptions[last_i] = i
  
          self.decoderchainUpdate()
          self.decoder_update()
          self.ui.saveas.setVisible(False)
docs: :type: encoding