protected boolean setFile(String fpath)
   {
      if(cur_file_loader != null)
      {
         cur_file_loader.die();
         cur_file_loader = null;
      }

      if (fpath == null)
      {
         frame.setTitle(UIStrings.APPNAME + " - no file loaded");
         return false;
      }

      // grab the filename and extension while we're at it.
      String[] parts = fpath.split("\\.(?=[^\\.]+$)");

      file_pre = parts[0];
      file_ext = parts[1];

      if (frame != null)
      {
         frame.setTitle(UIStrings.APPNAME + " - " + file_pre);
      }

      cur_file_loader = new TextFileLoader(fpath, this);
      cur_file_loader.start();

      return true;
   }