In a large heavy saucepan over a gentle heat, sweat the onion in the olive oil for about 15 minutes unti soft and caramelized.
Increase the heat and add the mushrooms, sautéeing for 3–4 minutes until browned. Add the rice and cook, stirring, for a further minute until the grains are coated in oil.
Pour in the white wine and simmer, stirring constantly, until the liquid has been almost completely absorbed.
Meanwhile, keep a pan of the vegetable stock simmering on the stove. Add a ladleful of vegetable stock to the rice. Simmer, stirring, until the liquid has been absorbed. Continue adding the stock in this way, stirring continuously, until all the stock has been used and the rice is tender.
Remove from the heat, stir in the butter and Parmesan, and serve hot.