ProtPainter: Draw or Drag Protein via Topology-guided Diffusion