From: Seb J. <se...@hy...> - 2004-03-30 21:57:03
|
On Mon, 2004-03-29 at 19:40, Chris Cannam wrote: > On Monday 29 Mar 2004 11:17 am, Seb James wrote: > > On Mon, 2004-03-29 at 09:25, Chris Cannam wrote: > > > Actually that's the sort of stand-alone dialog anyone could do -- > > > wouldn't take much knowledge of RG internals. Any takers? > > > > I'll do it. Will need to get CVS RG and you'll need to point me at > > the right source file and a similar dialog that I can crib from. > > Well, let's see. The dialog would probably want to be invoked from > RosegardenGUIApp::slotFileNew() in gui/rosegardengui.cpp, in the > makeNew branch that currently just creates a new document. > > I imagine it would pop up the dialog before doing that, so as to > abandon in time if the user hit cancel, and then based on the result > of the dialog it would add a few segments to the composition in the > document, fill them with rests (with Segment::fillWithRests), insert > some clef and key events, set up the composition's tempo and time > signatures (using the Composition API) etc. Where is the Composition API coded? > As for the dialog itself, I'm not sure that there is a great example > of a similar one already. There are a few dialogs in gui/dialogs. > {h,cpp}, and some of those (e.g. quantization dialog, although that's > largely defined in a separate frame widget in widgets.{h,cpp}) have a > similar idea of offering a broad selection of possibilities with > options for each -- or the event filter dialog (gui/eventfilter.h) > might be helpful. Other apps like KWord have a File->New dialog that > does something similar too, although I'm not particularly keen on the > one in KWord. Most of our dialogs are hand-coded as classes derived > from KDialogBase because we generally find it easier and more > maintainable, but there's no law against using Qt Designer. Doesn't > matter much either whether you stick it in an existing file like > dialogs.cpp or in a new file. These should be enough. I'll have a look at a really simple kde program too, to get started with dialogs. > Also, don't be disappointed if you come up with a first draft and find > that everyone hates it and you have to completely rework it -- these > things seldom come out right first time. I do think a dialog like > this is a necessary thing though and I'd be grateful if you did find > the time and energy to have a shot at it. Heh, I'll be pleased to come up with something that works at all! Anyway. I've got cvs version compiled and installed, but curiously not making any noises. However, I shall save that problem for the morning. Looking forward to getting my teeth into this. Seb |