Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
On 21/12/2013 at 07:37, xxxxxxxx wrote:
Hey
Is it possible to get the right click in a dialog and replace the default menu with an own or an function ?
I try the this without success
def Command(self, id_, msg) : print msg[c4d.BFM_ACTION_DP_MENUCLICK]
Thanks
On 25/12/2013 at 09:30, xxxxxxxx wrote:
Hi, Command(...) is called for gadgets. For everything else take a look at Message(...).
import c4d from c4d import gui class MyDialog(c4d.gui.GeDialog) : def Message(self, msg, result) : if msg.GetId() == c4d.BFM_INPUT: if msg.GetLong(c4d.BFM_INPUT_CHANNEL)==c4d.BFM_INPUT_MOUSERIGHT: # put in your code which will be executed on right mouse click menu = c4d.BaseContainer() menu.SetString(1000, 'Item 1') menu.SetString(1001, 'Item 2') menu.SetString(0, "") # Append separator menu.SetString(1003, 'Item 2') result = c4d.gui.ShowPopupDialog(cd=None, bc=menu, x=c4d.MOUSEPOS, y=c4d.MOUSEPOS) return True # don't route message to window parents return c4d.gui.GeDialog.Message(self, msg, msg)
import c4d from c4d import gui
class MyDialog(c4d.gui.GeDialog) : def Message(self, msg, result) : if msg.GetId() == c4d.BFM_INPUT: if msg.GetLong(c4d.BFM_INPUT_CHANNEL)==c4d.BFM_INPUT_MOUSERIGHT: # put in your code which will be executed on right mouse click menu = c4d.BaseContainer() menu.SetString(1000, 'Item 1') menu.SetString(1001, 'Item 2') menu.SetString(0, "") # Append separator menu.SetString(1003, 'Item 2') result = c4d.gui.ShowPopupDialog(cd=None, bc=menu, x=c4d.MOUSEPOS, y=c4d.MOUSEPOS) return True # don't route message to window parents return c4d.gui.GeDialog.Message(self, msg, msg)
Cheers, s_rath