My guess is that the message stream that [receivecanvas] taps into would let you listen to the edit-mode state changes, but not query its state. But you should be able to simulate a query by applying the following logic:
--When a patch is opened, assume that edit mode is on (is this a safe assumption to make??)