digitalmars.D.learn - Scintilla pair programming over the net
- BLS (32/32) Oct 04 2006 Hi, I need some ideas....
- Lars Ivar Igesund (8/51) Oct 04 2006 No idea how you should do it, but maybe Gobby can give some hints?
- BLS (4/4) Oct 04 2006 Thanks Lars,
Hi, I need some ideas.... Pair programming over the net is an important, if not the most impotant feature, my Groupware D IDE should have. Preleminaries : 1) Due to the fact that I choose wxD as GUI I have to use scintilla resprectice STC. 2) Pair programming means that person *A* is active/editing a source while person *B* (somewhere in the world) is passive/observing the same source. (Communication between A and B (to exchange ideas) through developer2developer chat, or dev2dev video-conferencing,...) 3) The IDE uses a database to manage sources/projects instead of SVN/CVS... hosted on an dedicated server, accessable through the IP address. Okay, now the idea I would like to discuss... Ide login ask for pw and id, automaticly connects to the db server/internet, get your *current IP address* and saves these information into a simple db-table. "WhoIsOnline" (transmission and database are strongly encrypted) These informations are needed to communicate over the net. The IDE acts as threaded socket-server *and* socket-client. Person *A* opens a project/source and invites a project member who is online just by querying the project-member and WhoIsOnline tables. Person *A* opens a D sourcefile and starts editing. (The adequate record is locked and write protected.) Person *B* is passive and watches the modification in realtime or "WhatYouEditIsWhatISee" How : Actually I am a bit helpless. The only idea I actually have is to use scintilla idle events to send (captured) mouse and keyboard events via socket to person *B*. ???????? Probabely the Observer Pattern has some value ?????? Any feedback, hint, tip, link is welcome! Björn
Oct 04 2006
BLS wrote:Hi, I need some ideas.... Pair programming over the net is an important, if not the most impotant feature, my Groupware D IDE should have. Preleminaries : 1) Due to the fact that I choose wxD as GUI I have to use scintilla resprectice STC. 2) Pair programming means that person *A* is active/editing a source while person *B* (somewhere in the world) is passive/observing the same source. (Communication between A and B (to exchange ideas) through developer2developer chat, or dev2dev video-conferencing,...) 3) The IDE uses a database to manage sources/projects instead of SVN/CVS... hosted on an dedicated server, accessable through the IP address. Okay, now the idea I would like to discuss... Ide login ask for pw and id, automaticly connects to the db server/internet, get your *current IP address* and saves these information into a simple db-table. "WhoIsOnline" (transmission and database are strongly encrypted) These informations are needed to communicate over the net. The IDE acts as threaded socket-server *and* socket-client. Person *A* opens a project/source and invites a project member who is online just by querying the project-member and WhoIsOnline tables. Person *A* opens a D sourcefile and starts editing. (The adequate record is locked and write protected.) Person *B* is passive and watches the modification in realtime or "WhatYouEditIsWhatISee" How : Actually I am a bit helpless. The only idea I actually have is to use scintilla idle events to send (captured) mouse and keyboard events via socket to person *B*. ???????? Probabely the Observer Pattern has some value ?????? Any feedback, hint, tip, link is welcome! BjörnNo idea how you should do it, but maybe Gobby can give some hints? http://darcs.0x539.de/trac/obby/cgi-bin/trac.cgi It's a collaborative editor, with chat, etc -- Lars Ivar Igesund blog at http://larsivi.net DSource & #D: larsivi
Oct 04 2006
Thanks Lars, just reading the "How Gobby works ..." was an inspiration and also shows me that my idea was not that bad. At least a beginning.... Björn
Oct 04 2006