code: def _grid_widgets(self):
          
          orient = str(self._scale.cget('orient'))
          self._scale.grid(row=2, column=2, sticky='ew' if orient == tk.HORIZONTAL else 'ns',
                           padx=(0, self.__entryscalepad) if self.__compound is tk.RIGHT else
                                (self.__entryscalepad, 0) if self.__compound is tk.LEFT else 0,
                           pady=(0, self.__entryscalepad) if self.__compound is tk.BOTTOM else
                                (self.__entryscalepad, 0) if self.__compound is tk.TOP else 0)
          self._entry.grid(row=1 if self.__compound is tk.TOP else 3 if self.__compound is tk.BOTTOM else 2,
                           column=1 if self.__compound is tk.LEFT else 3 if self.__compound is tk.RIGHT else 2)
  
          if orient == tk.HORIZONTAL:
              self.columnconfigure(0, weight=0)
              self.columnconfigure(2, weight=1)
              self.columnconfigure(4, weight=0)
              self.rowconfigure(0, weight=1)
              self.rowconfigure(2, weight=0)
              self.rowconfigure(4, weight=1)
  
          else:
              self.rowconfigure(0, weight=0)
              self.rowconfigure(2, weight=1)
              self.rowconfigure(4, weight=0)
              self.columnconfigure(0, weight=1)
              self.columnconfigure(2, weight=0)
              self.columnconfigure(4, weight=1)
docs: Put the widgets in the correct position based on self.__compound.