anchor.diff:  interface
   
   uses
  -  Classes, SysUtils, FileUtil,
  -  GL, OpenGLContext, LCLType, Forms, Controls,
  +  Classes, SysUtils, FileUtil, GL, OpenGLContext, LCLType, Forms, Controls,
     Graphics, GraphType, Dialogs, ExtCtrls, Menus, ActnList, StdCtrls, ComCtrls,
  -  Buttons, Map, terrain, editor_types, undo_base, map_actions, objects, editor_graphics,
  -  minimap, filesystem, filesystem_base, lists_manager, zlib_stream, types;
  +  Buttons, Map, terrain, editor_types, undo_base, map_actions, objects,
  +  editor_graphics, minimap, filesystem, filesystem_base, lists_manager,
  +  zlib_stream, gpriorityqueue, types;
   
   type
     TAxisKind = (Vertical,Horizontal);
   
  +  TDragSubject = (MapObject, MapTemplate);
  +
     { TDragProxy }
   
  -  TDragProxy = class
  +  TDragProxy = class(TDragObject)
     public
       procedure Drop; virtual; abstract;
       procedure Render(x,y: integer); virtual; abstract;
  
positive.code: constructor TTemplateDragProxy.Create(ADraggingTemplate: TObjTemplate);
  begin
    FDraggingTemplate := ADraggingTemplate;
  end;
  
  procedure TTemplateDragProxy.Drop;
  
negative.code:     FSelectedObject: TMapObject;
  
      FMapDragging: boolean;
      FNextDragSubject: TDragSubject;
      FSelectedTemplate: TObjTemplate;
  
      FCurrentPlayer: TPlayer;
  
  