this is how you shouldve worked it:
1) Sat and had a chat with her about your school, you said you had a few hear to hearts, this is where you shouldve laid down your intentions
2) Given her a promisory ring or something to show your future commitment to her. Screw what her parents or your parents think, they have already married and live their lives, it is your life, you need to take charge of it. IF this girl was so important to you then you shouldve made that move when she was egging you for it at the start.
3) Reassured her that she needs to be on your side and not push her away by cutting contact or telling her to go date other guys. Biggest mistake ever!
4) Like some one else suggested Moved in with her and drawn some boundries, yes i know you mention your parents would frown upon it and so would hers, well to hell with it, are you going to live your life according to your rules or their rules. Yes you have to respect your parents, but you have to draw a line some where, they cant dictate the way you live your life.
Honestly i think you took her for granted, you thought she would go out and see that the other guys are all crap compared to you or she would wait around for ever just cuz she was with you for 7 years, sorry to burst your bubble, but there are good guys out there who are smart, successful and going to give a woman what she wants, care for her and hold her in her time of need. Also realize women are not going to stick around for ever, they may for sometime, but everyones patience runs out.
She obviously found some one who was ready to settle down and move in with her, and masqueraded it off as "I think he is a geek" in front of you. Obviously she knew you were not taking her seriously and just putting her off, her patience ran out, and she moved on with some one else. End Game.
Now you need to start the healing process slowly, it is going to be a painful road, but sorry to say you put yourself there. Atleast you were honest about it and gave us a clear representation of events.