I have created the Hidden Service plugin. Currently, the plugin loads the list of hidden services from the torrc file and displays it in a custom widget consisting of line-edits and spinbox inside a groupbox. This is then displayed in a vertical layout in the container widget's scroll-area.
The values of HiddenServiceDir and HiddenServicePort are displayed in line-edits. If the Hidden Service had been activated previously, the hostname string is fetched from the file and displayed inside the plugin.
The user can remove a service by selecting the corresponding checkbox and clicking the "-" button. The user can also edit a service by changing the values in line-edit and clicking the Apply button. This would change the values in the torrc file.
I'm behind schedule by a few days. By this week, I will implement adding new hidden services to the plugin. The UI needs more work. I had originally alloted Week 7 for code cleanup.
I have linked to a screenshot of the existing UI below. The "-" button is grayed out until a checkbox is selected. The Apply button is enabled only if any text has been edited. The stray TextLabel will be removed. I'm just using it for testing.
[1] http://i.imgur.com/SG6ea.png
[2] https://github.com/feroze/vidalia-plugins/tree/hiddenservice
[3] http://feroze.in/gsoc12.html