code: def edit_button_clicked(self, edit_button, exposure_combo_box, exposure):
          
          # Note(IS): Do not change the text of edit button for now until we
          # have better behaviour.
          classification = self.get_classification(exposure_combo_box)
  
          if self.mode == CHOOSE_MODE:
              # Change mode
              self.mode = EDIT_MODE
              # Set active exposure
              self.active_exposure = exposure
              # Disable all edit button
              for exposure_edit_button in self.exposure_edit_buttons:
                  exposure_edit_button.setEnabled(False)
              # Except one that was clicked
              # edit_button.setEnabled(True)
              # Disable all combo box
              for exposure_combo_box in self.exposure_combo_boxes:
                  exposure_combo_box.setEnabled(False)
              # Change the edit button to cancel
              # edit_button.setText(tr('Cancel'))
  
              # Clear right panel
              clear_layout(self.right_layout)
              # Show edit threshold or value mapping
              if self.layer_mode == layer_mode_continuous:
                  self.setup_thresholds_panel(classification)
              else:
                  self.setup_value_mapping_panels(classification)
              self.add_buttons(classification)
  
          elif self.mode == EDIT_MODE:
              # Behave the same as cancel button clicked.
              self.cancel_button_clicked()
  
          self.parent.pbnNext.setEnabled(self.is_ready_to_next_step())
docs: Method to handle when an edit button is clicked.
  
          :param edit_button: The edit button.
          :type edit_button: QPushButton
  
          :param exposure_combo_box: The combo box of the exposure, contains
              list of classifications.
          :type exposure_combo_box: QComboBox
  
          :param exposure: Exposure definition.
          :type exposure: dict