docs: def on_change_dir_button(self, event):
          """
          create change directory frame
          """
          currentDirectory = self.WD #os.getcwd()
          change_dir_dialog = wx.DirDialog(self.panel,
                                           "Choose your working directory to create or edit a MagIC contribution:",
                                           defaultPath=currentDirectory,
                                           style=wx.DD_DEFAULT_STYLE | wx.DD_NEW_DIR_BUTTON | wx.DD_CHANGE_DIR)
          result = change_dir_dialog.ShowModal()
          if result == wx.ID_CANCEL:
              return
          if result == wx.ID_OK:
              self.WD = change_dir_dialog.GetPath()
              self.dir_path.SetValue(self.WD)
          change_dir_dialog.Destroy()
          wait = wx.BusyInfo('Initializing data object in new directory, please wait...')
          wx.SafeYield()
          print('-I- Initializing magic data object')
          # make new builder object, but reuse old data_model
          self.er_magic = builder.ErMagicBuilder(self.WD, self.er_magic.data_model)
          print('-I- Read in any available data from working directory')
          self.er_magic.get_all_magic_info()
          print('-I- Initializing headers')
          self.er_magic.init_default_headers()
          self.er_magic.init_actual_headers()
          del wait