Bring a large pot of water to boil. Cut center core out of cabbage and place, core side down, in boiling water. Cover and simmer for 10 minutes.
While cabbage simmers, heat oil in pan over med-high heat and sauté onion and garlic 3-5 minutes until browned. Add mushrooms and cook another 2 minutes. Transfer mixture to a large bowl to cool.
Remove cabbage to a rimmed baking sheet, keeping water in the pot. Gently remove leaves from cabbage, cutting away from the core with a small knife. Set aside the best 16 unbroken leaves and cut off the thick spine in the center for easier rolling. Set all remaining broken or small cabbage leaves aside. (If the core is too firm, return it to boiling water for a few minutes to soften)
Preheat oven to 350° F.
To cooled onion mixture, add meat, uncooked rice, parsley, tomato, salt & pepper. Combine well.
Place about ¼ cup of filling in each leaf, roll, and place seam side down in a 13 by 9-inch pan. Pour liquid over rolls and lay some leftover leaves on top. Cover pan tightly with foil, and bake for 1 ½ hours. (Place pan on a cookie sheet in case it drips)
Remove from oven and let rest 30 minutes or better still, let cool and refrigerate overnight. (They freeze well.)