Input and output sockets do not work the same way. The picture seen sockets input and output node "ObjectProps". The socket input button is drawn, while the output socket - no. Who knows the reason? How to make a button in the output socket?
This is a missing feature of the node API. There is a patch for this ready and waiting, but since it changes the way node sockets look i want to wait for green light from scripters before committing to trunk.
UPDATE: This feature has been added in trunk now (r60661). Socket draw functions are responsible for drawing only labels if that is the desired behavior, otherwise inputs and outputs draw the same way. See the API changes wiki page.