Hi Sebastien! > Very cool proposal, happy to see people interested in this project!
:) > So do you plan to expose the XMMS2 connection(s) to the scripts as a > QtScript object? > Alternatively, you could just write your own wrapper > code around either libxmmsclient++ or the qt4 clientlib. I am currently considering wrapping a QObject around libxmmsclient++ and expose _some_ of the functionality directly to the scripts (Q_INVOKE) and some through the various plugin APIs. For instance there is probably no need to expose the Fourier transform data through the _main_ connection object but it may possibly be exposed through the visualization API. > Any ideas regarding communicating between plugins. > e.g. drag and drop of data, links to other bits of the app (click on > artist and it goes to a panel with the list of albums, etc), actions > on objects exposed in another context (right click and send to another > plugin), etc. Something that immediately comes to mind is to have a global QtScript object (I have made provisions for such a thing in the framework I'm working upon) which exposes methods to add, read and remove information from a global registry (essentially a map). Informing (poking) other plugins can then be implemented by connecting a slot in each plugin with a signal like 'void poke (int pluginID)'. So, if plugin 0xFFDEAD wishes to ask plugin 0xDEADFF (the plugin which, say, logs information onto a remote server) to log 'Foo Bar', it invokes 'poke (0xDEADFF)' after setting a pre-decided key in the common registry to 'Foo Bar'. 0xDEADFF's slot is executed which checks if the signal is for it (pluginID == 0xDEADFF) and reacts accordingly. Another approach might involve having a global stack and push the parameters and a method name onto the stack and then invoke a signal which then resolves the method and executes it, much like calling a procedure. I'm sure both these methods may be further refined and improved. > Can you share a bit more of your developer background, such as what > projects you've taken part in in the past, GUI experience and other > relevant bits? If you're looking for a past Qt project, you can have a look at http://github.com/sanjoy/Xants-Simulator-Log-Player-Qt4, though it probably won't make much sense outside its context. I haven't done anything larger than this in Qt. As far as open source involvement is concerned, I've contributed few patches to the mono project. For more details you can always check out my resume at http://playingwithpointers.com/custom/resume.pdf > Also I don't know if you saw my reply on IRC, but I suggested you have > a peek at the series of posts I did about the new GUI client: > http://bytes.inso.cc/wp/tag/xmms2/ I did. You must be theefer. :) > I think it's often useful to think of this project both from the > conceptual POV and the more hands-on, sample mock ups POV. I was thinking on the same lines - parallelly working on both the plugin framework and getting an idea of what the final GUI should look like seems to be a good idea. I'll get back to you soon on this. What do you suggest I use to create sample mock-ups? I generally use Inkscape - is that good enough? > Thanks for sharing and we're looking forward to hearing more of your > plans for this project! Thanks! -- Regards, Sanjoy Das http://playingwithpointers.com http://playingwithpointers.com/custom/public_key.txt
signature.asc
Description: This is a digitally signed message part
-- _______________________________________________ Xmms2-devel mailing list Xmms2-devel@lists.xmms.se http://lists.xmms.se/cgi-bin/mailman/listinfo/xmms2-devel