anchor.diff:  begin
     if Assigned(OnClose) then
       OnClose(self);
  +end;
  +
  +procedure TfpgPopupWindow.DoOnShow;
  +begin
  +  if Assigned(FOnShow) then
  +    FOnShow(self);
   end;
   
   constructor TfpgPopupWindow.Create(AOwner: TComponent);
  
positive.code:   private
      FDontCloseWidget: TfpgWidget;
      FOnClose: TNotifyEvent;
      FPopupFrame: boolean;
      procedure   SetPopupFrame(const AValue: boolean);
    protected
      procedure   MsgClose(var msg: TfpgMessageRec); message FPGM_CLOSE;
      procedure   AdjustWindowStyle; override;
      procedure   HandleClose; virtual;
      procedure   ProcessPopupFrame; virtual;
      procedure   DoPaintPopupFrame; virtual;
      procedure   DoOnClose; virtual;
    public
      constructor Create(AOwner: TComponent); override;
      procedure   ShowAt(AWidget: TfpgWidget; x, y: TfpgCoord); overload;
  
negative.code:   HandleHide;
  end;
  
  procedure TfpgPopupWindow.HandleShow;
  begin
    inherited HandleShow;
    DoOnShow;
  end;
  
  procedure TfpgPopupWindow.ProcessPopupFrame;
  var
    i: integer;
  