anchor.diff:      // if we get here, we didn't find a match
       FocusItem := -1;
     end;
  +end;
  +
  +procedure TfpgBaseEditCombo.ShowDefaultPopupMenu(const x, y: integer;
  +  const shiftstate: TShiftState);
  +var
  +  itm: TfpgMenuItem;
  +begin
  +  if not Assigned(FDefaultPopupMenu) then
  +  begin
  +    FDefaultPopupMenu := TfpgPopupMenu.Create(nil);
  +    //itm := FDefaultPopupMenu.AddMenuItem(rsCut, '', @DefaultPopupCut);
  +    //itm.Name := ipmCut;
  +    //itm := FDefaultPopupMenu.AddMenuItem(rsCopy, '', @DefaultPopupCopy);
  +    //itm.Name := ipmCopy;
  +    //itm := FDefaultPopupMenu.AddMenuItem(rsPaste, '', @DefaultPopupPaste);
  +    //itm.Name := ipmPaste;
  +    //itm := FDefaultPopupMenu.AddMenuItem(rsDelete, '', @DefaultPopupClearAll);
  +    //itm.Name := ipmClearAll;
  +    //itm := FDefaultPopupMenu.AddMenuItem('-', '', nil);
  +    //itm.Name := 'N1';
  +    itm := FDefaultPopupMenu.AddMenuItem(rsInsertFromCharacterMap, '', @DefaultPopupInsertFromCharmap);
  +    itm.Name := ipmCharmap;
  +  end;
  +
  +  SetDefaultPopupMenuItemsState;
  +  FDefaultPopupMenu.ShowAt(self, x, y);
   end;
   
   procedure TfpgBaseEditCombo.HandleResize(AWidth, AHeight: TfpgCoord);
  
positive.code:   PaintInternalButton;
  end;
  
  procedure TfpgBaseEditCombo.HandlePaint;
  var
    r: TfpgRect;
  
negative.code:   fpg_main,
    fpg_widget,
    fpg_popupwindow,
    fpg_menu,
    fpg_combobox;
  
  type
  