Hi @Ling, the snap popup is a built-in menu, so you can't easily reproduce it however it's possible to build such a kind of menu but not with ShowPopupDialog.
If you want all features you mentioned you will need to create a CommanData plugin (registered with the c4d.PLUGINFLAG_COMMAND_STICKY flags).
Then a c4d.gui.GeDialog opened with the flags DLG_TYPE_ASYNC_POPUPEDIT to have a popup like dialog. To have the ability to dock it, you should use GeDialog.AddGadget with the c4d.DIALOG_PIN flags.
Finally to build the menu, you will need to draw it manually with a GeUserArea.
If you want more detail, please let met know,
@m_adam thanks, i would have a try
Hi I did try using the PLUGINFLAG_COMMAND_STICKY Unfortually this does not work as expected, I would need to dig a bit into it to see if there is any workaround to it. I will let you know.
@m_adam is it possible to add a gadget like the top controller of a palette ？but not a window gadget like object manager window on the right-top corner.
think you very much!
@m_adam I know the PLUGINFLAG_COMMAND_STICKY, but i do not know how can I judge the key down and key up in execute() called back function of the command data. Do you know a way to do this？