code: def _validate(self):
          
          checker = (self._check0, self._check1, self._check2, self._check3,
                     self._check4, self._check5)
          if not 0 <= self.field_type <= 5:
              raise NotImplementedError("unsupported widget type")
          if type(self.rect) is not Rect:
              raise ValueError("invalid rect")
          if self.rect.isInfinite or self.rect.isEmpty:
              raise ValueError("rect must be finite and not empty")
          if not self.field_name:
              raise ValueError("field name missing")
  
          if self.border_color:
              if not len(self.border_color) in range(1,5) or \
                 type(self.border_color) not in (list, tuple):
                 raise ValueError("border_color must be 1 - 4 floats")
  
          if self.fill_color:
              if not len(self.fill_color) in range(1,5) or \
                 type(self.fill_color) not in (list, tuple):
                 raise ValueError("fill_color must be 1 - 4 floats")
  
          if not self.text_color:
              self.text_color = (0, 0, 0)
          if not len(self.text_color) in range(1,5) or \
              type(self.text_color) not in (list, tuple):
              raise ValueError("text_color must be 1 - 4 floats")
  
          if not self.border_width:
              self.border_width = 0
  
          if not self.text_fontsize:
              self.text_fontsize = 0
  
          checker[self.field_type]()
docs: Validate the class entries.