anchor.diff:  
   { TForm1 }
   procedure TForm1.FormCreate(Sender: TObject);
  +var
  +  logsPath: string;
   begin
     Caption := 'KaM Remake Translation Manager (' + GAME_REVISION + ')';
   
  +  ExeDir := ExtractFilePath(ParamStr(0));
  +  logsPath := ExeDir + 'Logs' + PathDelim;
  +  CreateDir(logsPath);
  +
  +  gLog := TKMLog.Create(logsPath + 'TranslationManager.log');
  +
     fWorkDir := GetWorkDir;
  -
  -  gResLocales := TKMResLocales.Create(fWorkDir + 'data\locales.txt', DEFAULT_LOCALE);
  +  gResLocales := TKMResLocales.Create(fWorkDir + 'data' + PathDelim + 'locales.txt', DEFAULT_LOCALE);
   
     InitLocalesList;
   
  
positive.code: //Sort the items by TextID
  procedure TForm1.btnSortByIndexClick(Sender: TObject);
  begin
    fTextManager.SortByIndex;
    RefreshList;
    mnuSave.Enabled := True;
  end;
  
  
  //Sort TextIDs by Index
  procedure TForm1.btnSortByNameClick(Sender: TObject);
  begin
    fTextManager.SortByName;
    //Compact Indexes
    RefreshList;
    mnuSave.Enabled := True;
  end;
  
  
  procedure TForm1.btnCompactIndexesClick(Sender: TObject);
  begin
    fTextManager.CompactIndexes;
    RefreshList;
    mnuSave.Enabled := True;
  end;
  
  
  procedure TForm1.FilterChanged(Sender: TObject);
  begin
    RefreshFilter;
    RefreshList;
  end;
  
  
  
negative.code: implementation
  uses
    TranslationManagerUtils,
    KM_CommonTypes, KM_CommonUtils,
    KM_Log;
  
  {$R *.dfm}
  
  