You can eat as much nuts as you want, it just depends on how much calories you want to be in the form of nuts. You got to remember something, nuts are very calories dense. If you want to have more of those, then have less of something else.
I would recommend 20-25g of protein before and after you work out. Have carbs before and after to.
Salad isn't a good snack, very poor in calories and nuitrition. Have dark green veggies instead. Brocolli, spinach, etc and not corn. Or have a salad with those mixed inside.
I don't know anything about the muchrooms.
Try protein/power bars, they have good protein and vitamins. Get the myoplex bars.
http://exrx.net/forum/viewtopic.php?t=4616
Read it, it will give good ideas