anchor.diff:  
     with TKMHouse(fPlayers.Selected) do begin
       BuildingRepair := not BuildingRepair;
  -    if BuildingRepair then KMButton_House_Repair.TexID:=39
  -                      else KMButton_House_Repair.TexID:=40;
  +    if BuildingRepair then Button_House_Repair.TexID:=39
  +                      else Button_House_Repair.TexID:=40;
       if BuildingRepair then EnableRepair
                         else DisableRepair;
     end;
  
positive.code: begin
    if fGame.fGameSettings.IsMusic then
    begin
      KMLabel_Menu_Track.Caption := fMusicLib.GetTrackTitle;
      KMLabel_Menu_Track.Enabled := true;
      KMButton_Menu_TrackUp.Enabled := true;
      KMButton_Menu_TrackDown.Enabled := true;
    end
    else begin
      KMLabel_Menu_Track.Caption := '-';
      KMLabel_Menu_Track.Enabled := false;
      KMButton_Menu_TrackUp.Enabled := false;
      KMButton_Menu_TrackDown.Enabled := false;
    end;
  end;
  
  
negative.code: {Pause overlay page}
  procedure TKMGamePlayInterface.Create_Pause_Page;
  begin
    Panel_Pause:=MyControls.AddPanel(Panel_Main,0,0,fRender.GetRenderAreaSize.X,fRender.GetRenderAreaSize.Y);
      Bevel_Pause:=MyControls.AddBevel(Panel_Pause,-1,-1,fRender.GetRenderAreaSize.X+2,fRender.GetRenderAreaSize.Y+2);
      Image_Pause:=MyControls.AddImage(Panel_Pause,(fRender.GetRenderAreaSize.X div 2),(fRender.GetRenderAreaSize.Y div 2)-40,0,0,556);
      Image_Pause.Center;
      Label_Pause1:=MyControls.AddLabel(Panel_Pause,(fRender.GetRenderAreaSize.X div 2),(fRender.GetRenderAreaSize.Y div 2),64,16,fTextLibrary.GetTextString(308),fnt_Antiqua,kaCenter);
      Label_Pause2:=MyControls.AddLabel(Panel_Pause,(fRender.GetRenderAreaSize.X div 2),(fRender.GetRenderAreaSize.Y div 2)+20,64,16,'Press ''P'' to resume the game',fnt_Grey,kaCenter);
      Panel_Pause.Hide
  end;
  
  
  {Message page}
  procedure TKMGamePlayInterface.Create_Message_Page;
  begin
    Panel_Message:=MyControls.AddPanel(Panel_Main, TOOLBARWIDTH, fRender.GetRenderAreaSize.Y - 190, fRender.GetRenderAreaSize.X - TOOLBARWIDTH, 190);
      Image_MessageBG:=MyControls.AddImage(Panel_Message,0,20,600,170,409);
      Image_MessageBG.Anchors := Image_MessageBG.Anchors + [anRight];
      Image_MessageBGTop:=MyControls.AddImage(Panel_Message,0,0,600,20,551);
      Image_MessageBGTop.Anchors := Image_MessageBGTop.Anchors + [anRight];
      Label_MessageText:=MyControls.AddLabel(Panel_Message,47,67,432,122,'',fnt_Antiqua,kaLeft);
      Label_MessageText.AutoWrap := true;
      Button_MessageGoTo:=MyControls.AddButton(Panel_Message,490,74,100,24,fTextLibrary.GetTextString(280),fnt_Antiqua);
      Button_MessageGoTo.Hint := fTextLibrary.GetTextString(281);
      Button_MessageGoTo.OnClick := GoToMessage;
      Button_MessageGoTo.MakesSound := false;
      Button_MessageDelete:=MyControls.AddButton(Panel_Message,490,104,100,24,fTextLibrary.GetTextString(276),fnt_Antiqua);
      Button_MessageDelete.Hint := fTextLibrary.GetTextString(277);
      Button_MessageDelete.OnClick := DeleteMessage;
      Button_MessageDelete.MakesSound := false;
      Button_MessageClose:=MyControls.AddButton(Panel_Message,490,134,100,24,fTextLibrary.GetTextString(282),fnt_Antiqua);
      Button_MessageClose.Hint := fTextLibrary.GetTextString(283);
      Button_MessageClose.OnClick := CloseMessage;
      Button_MessageClose.MakesSound := false;
    Panel_Message.Hide; //Hide it now because it doesn't get hidden by SwitchPage
  end;
  
  {Build page}
  procedure TKMGamePlayInterface.Create_Build_Page;
  var i:integer;
  begin
    Panel_Build:=MyControls.AddPanel(Panel_Main,0,412,196,400);
      Label_Build:=MyControls.AddLabel(Panel_Build,100,10,100,30,'',fnt_Outline,kaCenter);
      Image_Build_Selected:=MyControls.AddImage(Panel_Build,8,40,32,32,335);
      Image_Build_Selected.Center;
      Image_BuildCost_WoodPic:=MyControls.AddImage(Panel_Build,75,40,32,32,353);
      Image_BuildCost_WoodPic.Center;
      Image_BuildCost_StonePic:=MyControls.AddImage(Panel_Build,130,40,32,32,352);
      Image_BuildCost_StonePic.Center;
      Label_BuildCost_Wood:=MyControls.AddLabel(Panel_Build,105,50,10,30,'',fnt_Outline,kaLeft);
      Label_BuildCost_Stone:=MyControls.AddLabel(Panel_Build,160,50,10,30,'',fnt_Outline,kaLeft);
      Button_BuildRoad   := MyControls.AddButtonFlat(Panel_Build,  8,80,33,33,335);
      Button_BuildField  := MyControls.AddButtonFlat(Panel_Build, 45,80,33,33,337);
      Button_BuildWine   := MyControls.AddButtonFlat(Panel_Build, 82,80,33,33,336);
  //    Button_BuildWall   := MyControls.AddButtonFlat(Panel_Build,119,80,33,33,339);
      Button_BuildCancel := MyControls.AddButtonFlat(Panel_Build,156,80,33,33,340);
      Button_BuildRoad.OnClick:=Build_ButtonClick;
      Button_BuildField.OnClick:=Build_ButtonClick;
      Button_BuildWine.OnClick:=Build_ButtonClick;
  //    Button_BuildWall.OnClick:=Build_ButtonClick;
      Button_BuildCancel.OnClick:=Build_ButtonClick;
      Button_BuildRoad.Hint:=fTextLibrary.GetTextString(213);
      Button_BuildField.Hint:=fTextLibrary.GetTextString(215);
      Button_BuildWine.Hint:=fTextLibrary.GetTextString(219);
  //    Button_BuildWall.Hint:='Build a wall';
      Button_BuildCancel.Hint:=fTextLibrary.GetTextString(211);
  
      for i:=1 to HOUSE_COUNT do
        if GUIHouseOrder[i] <> ht_None then begin
          Button_Build[i]:=MyControls.AddButtonFlat(Panel_Build, 8+((i-1) mod 5)*37,120+((i-1) div 5)*37,33,33,
          GUIBuildIcons[byte(GUIHouseOrder[i])]);
  
          Button_Build[i].OnClick:=Build_ButtonClick;
          Button_Build[i].Hint:=fTextLibrary.GetTextString(GUIBuildIcons[byte(GUIHouseOrder[i])]-300);
        end;
  end;
  
  