Retrieving the current presenter is done with:
self.presenter.getMainControl().getMainAreaPanel().getCurrentPresenter()
If it is a DocPagePresenter (usual case) you can use getWikiWord() on it.
Some more technical details:
When hitting Ctrl-V then this is initially handled in PersonalWikiFrame by a
call to _OnRoundTripEvent() with an event having the command id
GUI_ID.CMD_CLIPBOARD_PASTE.
_OnRoundtripEvent is called to send this wxCommandEvent to the window currently
having focus (first try). Command events in wxPython automatically "bubble up"
to the parent window if they were not handled by the window receiving the event.
If the parent window didn't handle it either it goes to the grandparent and so
on until it arrives at PersonalWikiFrame again if no window took care.
In the second try the current DocPagePresenter (if any) gets the event (if it
wasn't the focused window from first try). Once again the event is either
handled or bubbles up until it reaches PersonalWikiFrame again. In this case it
is discarded then.
It may be helpful to log also which window has focus when paste occurs and
compare it to the WikiTxtCtrl on which Paste() was called.
repr(wx.Window.FindFocus()) and repr(self) return a representation of these
windows with a class name and a hexadecimal id.
Michael