From: D. M. M. <mic...@ro...> - 2008-01-27 21:34:49
|
On Sunday 27 January 2008, Philippe Macaire wrote: > I wanted to challenge myself into doing an implementation, feeling > such a feature would be a good way for a former C++ programmer to know > better Rosegarden from the inside, and contribute to it. You can't imagine how much I like the sound of that. :) > 1. is this a good place to store this data? I wouldn't have stored it there, but whoever actually gets into coding something first gets a lot of leeway to determine things like this. It's probably fine. > 2. since the transport mode is an enum (TimeDisplayMode) it may not be > robust enough to store the value as an Int, since this value depend on > its position in the definition of the enum (e.g. BarMode happens to be > equals to 2 only because it is the third of the list...). Do you think > it is better to store a string description instead, to be mapped at > load time to an Int? (e.g. a string "BarMode") Depending on the position in an enum like that is easy to break down the road, so it would be best to avoid that, but probably not a deal breaker I wouldn't say. I'm pretty sure I've done something similarly evil at least once, if not more than once, so I probably live in a glass house. > Now to my actual problem: everything works fine... except that I can't > manage to load the transportmode value from the file. I modified class > DocumentConfiguration to store the value into the XML, and this works. > But when I try to load it (in class RosegardenGUIApp.cpp, just like > ZoomLevel) I get a NoData exception. > > Is there anything to declare somewhere to have the a value loaded from > the XML file? I tried to delve into class RoseXmlHandler but couldn't > find anything specific to parameter loading. My memory of how all of this works is too vague to guess what's going wrong without looking at your patch. I know I managed to do that with the track parameters stuff, so I can probably figure out the piece you're missing if I can look at it. -- D. Michael McIntyre |