Boil water, add a pinch of salt, vinegar and vegetable oil. Add spinach and cook for a minute. Strain and keep aside to cool.
Now make puree of boiled spinach. Keep aside.
Drain tofu and mash it lightly.
Combine egg whites, all purpose flour, corn flour, 1/4 cup chopped onions, chili, cilantro and salt to make small balls. You can adjust the quantity of flour so that it's easy to form balls.
Heat oil in skillet and deep fry small balls. Set aside on paper towel.
Grind 3/4 cup of onions into paste.
Heat oil, add fenugreek leaves, cloves, cinnamon, cardamoms and mace. Then add onion paste and cook for 3-4 minutes.
Add ginger paste, garlic paste, black (or white) pepper and tomato puree. Cook for 3-4 minutes. Add cream.
Add spinach puree, red chili powder and enough water to make thick gravy. Cook for 4 -5 minutes. Add tofu balls, sugar and salt as required, cook for 3-4 minutes again.